sig
  type t
  val equal : t -> t -> bool
  val hash_fun : t -> CCHash.state -> CCHash.state
  val hash : t -> int
end