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