code: def _make_pmap_field_type(key_type, value_type):
      """Create a subclass of CheckedPMap with the given key and value types."""
      type_ = _pmap_field_types.get((key_type, value_type))
      if type_ is not None:
          return type_
  
      class TheMap(CheckedPMap):
          __key_type__ = key_type
          __value_type__ = value_type
  
          def __reduce__(self):
              return (
                  _restore_pmap_field_pickle,
                  (self.__key_type__, self.__value_type__, dict(self)),
              )
  
      TheMap.__name__ = "{0}To{1}PMap".format(
          _types_to_names(TheMap._checked_key_types),
          _types_to_names(TheMap._checked_value_types),
      )
      _pmap_field_types[key_type, value_type] = TheMap
      return TheMap
  
imports: from pyrsistent._checked_types import CheckedPMap, CheckedPSet, CheckedPVector, CheckedType, InvariantException, _restore_pickle, get_type, maybe_parse_user_type, maybe_parse_many_user_types
  from pyrsistent._checked_types import optional
  from pyrsistent._checked_types import wrap_invariant
  import inspect
label_desc: Use image node_id 16 for calling a global function with example usage: _make_pmap_field_type(key_type, value_type) and returns: TheMap, type_, _restore_pmap_field_pickle,  self,  self,  dict