`sig type ('a, 'b) t val empty : ('a, 'b) Tbl.t val add : 'a -> 'b -> ('a, 'b) Tbl.t -> ('a, 'b) Tbl.t val find : 'a -> ('a, 'b) Tbl.t -> 'b val mem : 'a -> ('a, 'b) Tbl.t -> bool val remove : 'a -> ('a, 'b) Tbl.t -> ('a, 'b) Tbl.t val iter : ('a -> 'b -> unit) -> ('a, 'b) Tbl.t -> unit val map : ('a -> 'b -> 'c) -> ('a, 'b) Tbl.t -> ('a, 'c) Tbl.t val fold : ('a -> 'b -> 'c -> 'c) -> ('a, 'b) Tbl.t -> 'c -> 'c val print : (Format.formatter -> 'a -> unit) -> (Format.formatter -> 'b -> unit) -> Format.formatter -> ('a, 'b) Tbl.t -> unit end`