code: def expect_block_mapping_key(self, first=False):
      if not first and isinstance(self.event, MappingEndEvent):
          self.indent = self.indents.pop()
          self.state = self.states.pop()
      else:
          self.write_indent()
          if self.check_simple_key():
              self.states.append(self.expect_block_mapping_simple_value)
              self.expect_node(mapping=True, simple_key=True)
          else:
              self.write_indicator("?", True, indention=True)
              self.states.append(self.expect_block_mapping_value)
              self.expect_node(mapping=True)
  
imports: from .error import YAMLError
  from .events import *
label_desc: Use image node_id 29 for calling the Emitter obj's underlying member method code with example usage: obj.expect_block_mapping_key(first) without return types