code: def parse(self, data):
          '''
          Parse the passed in data into a UDF Partition Header Descriptor.
          Parameters:
           data - The data to parse.
          Returns:
           Nothing.
          '''
          if self._initialized:
              raise pycdlibexception.PyCdlibInternalError('UDF Partition Header Descriptor already initialized')
          (unalloc_table_length, unalloc_table_pos, unalloc_bitmap_length,
           unalloc_bitmap_pos, part_integrity_table_length,
           part_integrity_table_pos, freed_table_length, freed_table_pos,
           freed_bitmap_length, freed_bitmap_pos,
           reserved_unused) = struct.unpack_from(self.FMT, data, 0)
          if unalloc_table_length != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header unallocated table length not 0')
          if unalloc_table_pos != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header unallocated table position not 0')
          if unalloc_bitmap_length != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header unallocated bitmap length not 0')
          if unalloc_bitmap_pos != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header unallocated bitmap position not 0')
          if part_integrity_table_length != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header partition integrity length not 0')
          if part_integrity_table_pos != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header partition integrity position not 0')
          if freed_table_length != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header freed table length not 0')
          if freed_table_pos != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header freed table position not 0')
          if freed_bitmap_length != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header freed bitmap length not 0')
          if freed_bitmap_pos != 0:
              raise pycdlibexception.PyCdlibInvalidISO('Partition Header freed bitmap position not 0')
          self._initialized = True