let pp_map p fmt = Map.iter (fun x y -> pp fmt x; Format.fprintf fmt " |-> "; p fmt y; Format.fprintf fmt "\n")