val is_empty : 'a t -> boolval mem : key -> 'a t -> boolval add : key -> 'a -> 'a t -> 'a tval remove : key -> 'a t -> 'a tval find : key -> 'a t -> 'aval max_binding : 'a t -> key * 'aval find_first_opt : (key -> bool) -> 'a t -> (key * 'a) option