sig   val empty : 'a map   val is_empty : 'a map -> bool   val mem : string -> 'a map -> bool   val add : string -> '-> 'a map -> 'a map   val singleton : string -> '-> 'a map   val remove : string -> 'a map -> 'a map   val merge :     (string -> 'a option -> 'b option -> 'c option) ->     'a map -> 'b map -> 'c map   val union : (string -> '-> '-> 'a option) -> 'a map -> 'a map -> 'a map   val compare : ('-> '-> int) -> 'a map -> 'a map -> int   val equal : ('-> '-> bool) -> 'a map -> 'a map -> bool   val iter : (string -> '-> unit) -> 'a map -> unit   val fold : (string -> '-> '-> 'b) -> 'a map -> '-> 'b   val for_all : (string -> '-> bool) -> 'a map -> bool   val exists : (string -> '-> bool) -> 'a map -> bool   val filter : (string -> '-> bool) -> 'a map -> 'a map   val partition : (string -> '-> bool) -> 'a map -> 'a map * 'a map   val cardinal : 'a map -> int   val bindings : 'a map -> (string * 'a) list   val split : string -> 'a map -> 'a map * 'a option * 'a map   val map : ('-> 'b) -> 'a map -> 'b map   val mapi : (string -> '-> 'b) -> 'a map -> 'b map   type 'a t = 'Astring.String.map   val min_binding : 'Astring.String.map -> (string * 'a) option   val get_min_binding : 'Astring.String.map -> string * 'a   val max_binding : 'Astring.String.map -> (string * 'a) option   val get_max_binding : 'Astring.String.map -> string * 'a   val choose : 'Astring.String.map -> (string * 'a) option   val get_any_binding : 'Astring.String.map -> string * 'a   val find : string -> 'Astring.String.map -> 'a option   val get : string -> 'Astring.String.map -> 'a   val dom : 'Astring.String.map -> Astring.String.set   val of_list : (string * 'a) list -> 'Astring.String.map   val pp :     ?sep:(Format.formatter -> unit -> unit) ->     (Format.formatter -> string * '-> unit) ->     Format.formatter -> 'Astring.String.map -> unit   val dump :     (Format.formatter -> '-> unit) ->     Format.formatter -> 'Astring.String.map -> unit   val dump_string_map : Format.formatter -> string Astring.String.map -> unit end