code: def construct_mapping(self, node, deep=False):
      if not isinstance(node, MappingNode):
          raise ConstructorError(
              None,
              None,
              "expected a mapping node, but found %s" % node.id,
              node.start_mark,
          )
      mapping = {}
      for key_node, value_node in node.value:
          key = self.construct_object(key_node, deep=deep)
          if not isinstance(key, collections.abc.Hashable):
              raise ConstructorError(
                  "while constructing a mapping",
                  node.start_mark,
                  "found unhashable key",
                  key_node.start_mark,
              )
          value = self.construct_object(value_node, deep=deep)
          mapping[key] = value
      return mapping
  
imports: from .error import *
  from .nodes import *
  import collections.abc, datetime, base64, binascii, re, sys, types
label_desc: Use image node_id 10 for calling the BaseConstructor obj's underlying member method code with example usage: obj.construct_mapping(node, deep) and returns: mapping