let pp_map pp_key pp_val ppf m =
let l = M.fold (fun k v l -> (k,v)::l) m [] in
Format.fprintf ppf "@[%a@]"
(Pp.lst "@\n"
(fun ppf (k,v) ->
Format.fprintf ppf "@[<2>%a@ |->@ %a@]"
pp_key k
pp_val v))
(List.rev l)