code: def parse_object(self, stream):
          
          self.expect_in(stream, self.begin_object_tokens)
  
          self.ensure_assignment(stream)
          name = self.next_token(stream)
  
          self.skip_statement_delimiter(stream)
          statements = self.parse_block(stream, self.has_end_object)
  
          self.expect_in(stream, self.end_object_tokens)
          self.parse_end_assignment(stream, name)
          self.skip_statement_delimiter(stream)
  
          return name.decode('utf-8'), PVLObject(statements)
docs: Block Name must match Block Name in paired End Object Statement
          if Block Name is present in End Object Statement StatementDelim.
  
          BeginObjectStmt ::=
              BeginObjectKeywd WSC AssignmentSymbol WSC BlockName StatementDelim