Now uses Enums in the switch statements