sig
  type 'a t
  val create : '-> 'Union_find.t
  val get : 'Union_find.t -> 'a
  val set : 'Union_find.t -> '-> unit
  val same_class : 'Union_find.t -> 'Union_find.t -> bool
  val union : 'Union_find.t -> 'Union_find.t -> unit
end