sig type 'a t val equal : 'a t -> 'a t -> bool val hash : 'a t -> int end