sig
  type key
  type 'a t
  val create : int -> 'CCFlatHashtbl.S.t
  val mem : 'CCFlatHashtbl.S.t -> CCFlatHashtbl.S.key -> bool
  val find : 'CCFlatHashtbl.S.t -> CCFlatHashtbl.S.key -> 'a option
  val find_exn : 'CCFlatHashtbl.S.t -> CCFlatHashtbl.S.key -> 'a
  val get : CCFlatHashtbl.S.key -> 'CCFlatHashtbl.S.t -> 'a option
  val get_exn : CCFlatHashtbl.S.key -> 'CCFlatHashtbl.S.t -> 'a
  val add : 'CCFlatHashtbl.S.t -> CCFlatHashtbl.S.key -> '-> unit
  val remove : 'CCFlatHashtbl.S.t -> CCFlatHashtbl.S.key -> unit
  val size : 'CCFlatHashtbl.S.t -> int
  val of_list : (CCFlatHashtbl.S.key * 'a) list -> 'CCFlatHashtbl.S.t
  val to_list : 'CCFlatHashtbl.S.t -> (CCFlatHashtbl.S.key * 'a) list
  val of_seq :
    (CCFlatHashtbl.S.key * 'a) CCFlatHashtbl.sequence -> 'CCFlatHashtbl.S.t
  val to_seq :
    'CCFlatHashtbl.S.t -> (CCFlatHashtbl.S.key * 'a) CCFlatHashtbl.sequence
  val keys :
    'CCFlatHashtbl.S.t -> CCFlatHashtbl.S.key CCFlatHashtbl.sequence
  val values : 'CCFlatHashtbl.S.t -> 'CCFlatHashtbl.sequence
end