sig   type ('a, 'b) t   val empty : ('a, 'b) PMap.t   val is_empty : ('a, 'b) PMap.t -> bool   val create : ('-> '-> int) -> ('a, 'b) PMap.t   val add : '-> '-> ('a, 'b) PMap.t -> ('a, 'b) PMap.t   val find : '-> ('a, 'b) PMap.t -> 'b   val remove : '-> ('a, 'b) PMap.t -> ('a, 'b) PMap.t   val mem : '-> ('a, 'b) PMap.t -> bool   val exists : '-> ('a, 'b) PMap.t -> bool   val iter : ('-> '-> unit) -> ('a, 'b) PMap.t -> unit   val map : ('-> 'c) -> ('a, 'b) PMap.t -> ('a, 'c) PMap.t   val mapi : ('-> '-> 'c) -> ('a, 'b) PMap.t -> ('a, 'c) PMap.t   val fold : ('-> '-> 'c) -> ('a, 'b) PMap.t -> '-> 'c   val foldi : ('-> '-> '-> 'c) -> ('a, 'b) PMap.t -> '-> 'c   val enum : ('a, 'b) PMap.t -> ('a * 'b) Enum.t   val of_enum : ?cmp:('-> '-> int) -> ('a * 'b) Enum.t -> ('a, 'b) PMap.t end