+ Added switch and elseif (ifelse refactored)