let find_exclusive k m =
match m with
| Top _ -> raise Not_exclusive
| Map m ->
let v = find_or_bottom k m in
let map_without = M.remove k m in
if M.is_empty map_without
then v
else raise Not_exclusive