Resolve SWITCH with polymorphic behavior