Refactored: the Alias code is in one place, and uses a "goto"