conditional on switch

untested