sig
  type t = private (int * int) list
  val of_list : (int * int) list -> Cset.t
  val to_list : Cset.t -> (int * int) list
  val min_code : int
  val max_code : int
  val empty : Cset.t
  val any : Cset.t
  val union : Cset.t -> Cset.t -> Cset.t
  val union_list : Cset.t list -> Cset.t
  val difference : Cset.t -> Cset.t -> Cset.t
  val intersection : Cset.t -> Cset.t -> Cset.t
  val is_empty : Cset.t -> bool
  val eof : Cset.t
  val singleton : int -> Cset.t
  val interval : int -> int -> Cset.t
  val to_seq : Cset.t -> int Stdlib.Seq.t
end