enum & string switchs