sig   type 'a injection   val create_inj : unit -> 'CCMixmap.injection   module type S =     sig       type key       type t       val empty : CCMixmap.S.t       val get :         inj:'CCMixmap.injection ->         CCMixmap.S.key -> CCMixmap.S.t -> 'a option       val add :         inj:'CCMixmap.injection ->         CCMixmap.S.key -> '-> CCMixmap.S.t -> CCMixmap.S.t       val find :         inj:'CCMixmap.injection -> CCMixmap.S.key -> CCMixmap.S.t -> 'a       val cardinal : CCMixmap.S.t -> int       val remove : CCMixmap.S.key -> CCMixmap.S.t -> CCMixmap.S.t       val mem :         inj:'CCMixmap.injection -> CCMixmap.S.key -> CCMixmap.S.t -> bool       val iter_keys : f:(CCMixmap.S.key -> unit) -> CCMixmap.S.t -> unit       val fold_keys :         f:('-> CCMixmap.S.key -> 'a) -> x:'-> CCMixmap.S.t -> 'a       type 'a sequence = ('-> unit) -> unit       val keys_seq : CCMixmap.S.t -> CCMixmap.S.key CCMixmap.S.sequence       val bindings_of :         inj:'CCMixmap.injection ->         CCMixmap.S.t -> (CCMixmap.S.key * 'a) CCMixmap.S.sequence       type value =           Value : ('CCMixmap.injection -> 'a option) -> CCMixmap.S.value       val bindings :         CCMixmap.S.t ->         (CCMixmap.S.key * CCMixmap.S.value) CCMixmap.S.sequence     end   module type ORD =     sig type t val compare : CCMixmap.ORD.t -> CCMixmap.ORD.t -> int end   module Make :     functor (X : ORD->       sig         type key = X.t         type t         val empty : t         val get : inj:'a injection -> key -> t -> 'a option         val add : inj:'a injection -> key -> '-> t -> t         val find : inj:'a injection -> key -> t -> 'a         val cardinal : t -> int         val remove : key -> t -> t         val mem : inj:'a injection -> key -> t -> bool         val iter_keys : f:(key -> unit) -> t -> unit         val fold_keys : f:('-> key -> 'a) -> x:'-> t -> 'a         type 'a sequence = ('-> unit) -> unit         val keys_seq : t -> key sequence         val bindings_of : inj:'a injection -> t -> (key * 'a) sequence         type value = Value : ('a injection -> 'a option) -> value         val bindings : t -> (key * value) sequence       end end