sig
  type elt
  type t
  val empty : Extlib.ExtSet.Set.S.t
  val is_empty : Extlib.ExtSet.Set.S.t -> bool
  val mem : Extlib.ExtSet.Set.S.elt -> Extlib.ExtSet.Set.S.t -> bool
  val add :
    Extlib.ExtSet.Set.S.elt -> Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
  val singleton : Extlib.ExtSet.Set.S.elt -> Extlib.ExtSet.Set.S.t
  val remove :
    Extlib.ExtSet.Set.S.elt -> Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
  val union :
    Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
  val inter :
    Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
  val diff :
    Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
  val compare : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t -> int
  val equal : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t -> bool
  val subset : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t -> bool
  val iter :
    (Extlib.ExtSet.Set.S.elt -> unit) -> Extlib.ExtSet.Set.S.t -> unit
  val map :
    (Extlib.ExtSet.Set.S.elt -> Extlib.ExtSet.Set.S.elt) ->
    Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
  val filter :
    (Extlib.ExtSet.Set.S.elt -> bool) ->
    Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
  val filter_map :
    (Extlib.ExtSet.Set.S.elt -> Extlib.ExtSet.Set.S.elt option) ->
    Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
  val fold :
    (Extlib.ExtSet.Set.S.elt -> '-> 'a) ->
    Extlib.ExtSet.Set.S.t -> '-> 'a
  val for_all :
    (Extlib.ExtSet.Set.S.elt -> bool) -> Extlib.ExtSet.Set.S.t -> bool
  val exists :
    (Extlib.ExtSet.Set.S.elt -> bool) -> Extlib.ExtSet.Set.S.t -> bool
  val partition :
    (Extlib.ExtSet.Set.S.elt -> bool) ->
    Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t * Extlib.ExtSet.Set.S.t
  val cardinal : Extlib.ExtSet.Set.S.t -> int
  val elements : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt list
  val min_elt : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt
  val max_elt : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt
  val choose : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt
  val split :
    Extlib.ExtSet.Set.S.elt ->
    Extlib.ExtSet.Set.S.t ->
    Extlib.ExtSet.Set.S.t * bool * Extlib.ExtSet.Set.S.t
  val enum : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt Extlib.Enum.t
  val backwards :
    Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt Extlib.Enum.t
  val of_enum :
    Extlib.ExtSet.Set.S.elt Extlib.Enum.t -> Extlib.ExtSet.Set.S.t
  val t_of_sexp :
    (Sexplib.Sexp.t -> Extlib.ExtSet.Set.S.elt) ->
    Sexplib.Sexp.t -> Extlib.ExtSet.Set.S.t
  val sexp_of_t :
    (Extlib.ExtSet.Set.S.elt -> Sexplib.Sexp.t) ->
    Extlib.ExtSet.Set.S.t -> Sexplib.Sexp.t
  val print :
    ?first:string ->
    ?last:string ->
    ?sep:string ->
    ('Extlib.InnerIO.output -> Extlib.ExtSet.Set.S.elt -> unit) ->
    'Extlib.InnerIO.output -> Extlib.ExtSet.Set.S.t -> unit
  module Exceptionless :
    sig
      val min_elt : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt option
      val max_elt : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt option
      val choose : Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.elt option
    end
  module Labels :
    sig
      val iter :
        f:(Extlib.ExtSet.Set.S.elt -> unit) -> Extlib.ExtSet.Set.S.t -> unit
      val fold :
        f:(Extlib.ExtSet.Set.S.elt -> '-> 'a) ->
        Extlib.ExtSet.Set.S.t -> init:'-> 'a
      val for_all :
        f:(Extlib.ExtSet.Set.S.elt -> bool) -> Extlib.ExtSet.Set.S.t -> bool
      val exists :
        f:(Extlib.ExtSet.Set.S.elt -> bool) -> Extlib.ExtSet.Set.S.t -> bool
      val map :
        f:(Extlib.ExtSet.Set.S.elt -> Extlib.ExtSet.Set.S.elt) ->
        Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
      val filter :
        f:(Extlib.ExtSet.Set.S.elt -> bool) ->
        Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
      val filter_map :
        f:(Extlib.ExtSet.Set.S.elt -> Extlib.ExtSet.Set.S.elt option) ->
        Extlib.ExtSet.Set.S.t -> Extlib.ExtSet.Set.S.t
      val partition :
        f:(Extlib.ExtSet.Set.S.elt -> bool) ->
        Extlib.ExtSet.Set.S.t ->
        Extlib.ExtSet.Set.S.t * Extlib.ExtSet.Set.S.t
    end
end