renamed bodySwitch to bodyCases to avoid conflict with keyword