sig
  type ('a, 'b) t
  val create : int -> ('a, 'b) Hashnlist.t
  val clear : ('a, 'b) Hashnlist.t -> unit
  val add : ('a, 'b) Hashnlist.t -> '-> '-> unit
  val remove : ('a, 'b) Hashnlist.t -> '-> '-> unit
  val find : ('a, 'b) Hashnlist.t -> '-> 'b list
  val indexlist : ('a, 'b) Hashnlist.t -> 'a list
  val mem : ('a, 'b) Hashnlist.t -> '-> bool
end