sig
  type ('k, 'v, 'cmp) t
  type ('k, 'v, 'cmp) tree
  type 'k key
  type ('a, 'cmp, 'z) options
  val empty :
    ('k, 'cmp, ('k, 'a, 'cmp) Core_map_intf.Creators_generic.t)
    Core_map_intf.Creators_generic.options
  val singleton :
    ('k, 'cmp,
     'Core_map_intf.Creators_generic.key ->
     '-> ('k, 'v, 'cmp) Core_map_intf.Creators_generic.t)
    Core_map_intf.Creators_generic.options
  val of_sorted_array :
    ('k, 'cmp,
     ('Core_map_intf.Creators_generic.key * 'v) array ->
     ('k, 'v, 'cmp) Core_map_intf.Creators_generic.t Or_error.t)
    Core_map_intf.Creators_generic.options
  val of_sorted_array_unchecked :
    ('k, 'cmp,
     ('Core_map_intf.Creators_generic.key * 'v) array ->
     ('k, 'v, 'cmp) Core_map_intf.Creators_generic.t)
    Core_map_intf.Creators_generic.options
  val of_alist :
    ('k, 'cmp,
     ('Core_map_intf.Creators_generic.key * 'v) list ->
     [ `Duplicate_key of 'Core_map_intf.Creators_generic.key
     | `Ok of ('k, 'v, 'cmp) Core_map_intf.Creators_generic.t ])
    Core_map_intf.Creators_generic.options
  val of_alist_exn :
    ('k, 'cmp,
     ('Core_map_intf.Creators_generic.key * 'v) list ->
     ('k, 'v, 'cmp) Core_map_intf.Creators_generic.t)
    Core_map_intf.Creators_generic.options
  val of_alist_multi :
    ('k, 'cmp,
     ('Core_map_intf.Creators_generic.key * 'v) list ->
     ('k, 'v list, 'cmp) Core_map_intf.Creators_generic.t)
    Core_map_intf.Creators_generic.options
  val of_alist_fold :
    ('k, 'cmp,
     ('Core_map_intf.Creators_generic.key * 'v1) list ->
     init:'v2 ->
     f:('v2 -> 'v1 -> 'v2) ->
     ('k, 'v2, 'cmp) Core_map_intf.Creators_generic.t)
    Core_map_intf.Creators_generic.options
  val of_tree :
    ('k, 'cmp,
     ('Core_map_intf.Creators_generic.key, 'v, 'cmp)
     Core_map_intf.Creators_generic.tree ->
     ('k, 'v, 'cmp) Core_map_intf.Creators_generic.t)
    Core_map_intf.Creators_generic.options
end