'condp =' -> 'case'
Taking the optional arguments as an explicit map