let make_switch: type a. (bool t * unit t) list -> default: unit t -> unit t =     fun conds ~default ->       List.fold_right conds ~init:default ~f:(fun (x, body) prev ->           if_then_else x body prev)