<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _ParseDLSPageHeader(self, file_object, page_offset):
 """Parses a DLS page header from a file-like object. Args: file_object (file):
 file-like object to read the header from. page_offset (int):
 offset of the start of the page header, relative to the start of the file. Returns: tuple: containing: dls_page_header: parsed record structure. int: header size. Raises: ParseError: when the header cannot be parsed. """

    page_header_map = self._GetDataTypeMap('dls_page_header')

    try:
      page_header, page_size = self._ReadStructureFromFileObject(
          file_object, page_offset, page_header_map)
    except (ValueError, errors.ParseError) as exception:
      raise errors.ParseError(
          'Unable to parse page header at offset: 0x{0:08x} '
          'with error: {1!s}'.format(page_offset, exception))

    if page_header.signature not in self._DLS_SIGNATURES:
      raise errors.UnableToParseFile(
          'Unsupported page header signature at offset: 0x{0:08x}'.format(
              page_offset))

    return page_header, page_size