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