sig   type key   type value   type t   val empty : CCMultiMap.S.t   val is_empty : CCMultiMap.S.t -> bool   val add :     CCMultiMap.S.t ->     CCMultiMap.S.key -> CCMultiMap.S.value -> CCMultiMap.S.t   val remove :     CCMultiMap.S.t ->     CCMultiMap.S.key -> CCMultiMap.S.value -> CCMultiMap.S.t   val remove_all : CCMultiMap.S.t -> CCMultiMap.S.key -> CCMultiMap.S.t   val mem : CCMultiMap.S.t -> CCMultiMap.S.key -> bool   val find : CCMultiMap.S.t -> CCMultiMap.S.key -> CCMultiMap.S.value list   val find_iter :     CCMultiMap.S.t ->     CCMultiMap.S.key -> (CCMultiMap.S.value -> unit) -> unit   val count : CCMultiMap.S.t -> CCMultiMap.S.key -> int   val iter :     CCMultiMap.S.t ->     (CCMultiMap.S.key -> CCMultiMap.S.value -> unit) -> unit   val fold :     CCMultiMap.S.t ->     '-> ('-> CCMultiMap.S.key -> CCMultiMap.S.value -> 'a) -> 'a   val size : CCMultiMap.S.t -> int   val union : CCMultiMap.S.t -> CCMultiMap.S.t -> CCMultiMap.S.t   val inter : CCMultiMap.S.t -> CCMultiMap.S.t -> CCMultiMap.S.t   val diff : CCMultiMap.S.t -> CCMultiMap.S.t -> CCMultiMap.S.t   val equal : CCMultiMap.S.t -> CCMultiMap.S.t -> bool   val compare : CCMultiMap.S.t -> CCMultiMap.S.t -> int   val submap : CCMultiMap.S.t -> CCMultiMap.S.t -> bool   val to_seq :     CCMultiMap.S.t ->     (CCMultiMap.S.key * CCMultiMap.S.value) CCMultiMap.sequence   val of_seq :     ?init:CCMultiMap.S.t ->     (CCMultiMap.S.key * CCMultiMap.S.value) CCMultiMap.sequence ->     CCMultiMap.S.t   val keys : CCMultiMap.S.t -> CCMultiMap.S.key CCMultiMap.sequence   val values : CCMultiMap.S.t -> CCMultiMap.S.value CCMultiMap.sequence end