code: def _parse_plt_segment(self, fptr):
          
          offset = fptr.tell() - 2
  
          read_buffer = fptr.read(3)
          length, zplt = struct.unpack('>HB', read_buffer)
  
          numbytes = length - 3
          read_buffer = fptr.read(numbytes)
          iplt = np.frombuffer(read_buffer, dtype=np.uint8)
  
          packet_len = []
          plen = 0
          for byte in iplt:
              plen |= (byte & 0x7f)
              if byte & 0x80:
                  # Continue by or-ing in the next byte.
                  plen <<= 7
              else:
                  packet_len.append(plen)
                  plen = 0
  
          iplt = packet_len
  
          return PLTsegment(zplt, iplt, length, offset)
docs: Parse the PLT segment.
  
          The packet headers are not parsed, i.e. they remain uninterpreted raw
          data buffers.
  
          Parameters
          ----------
          fptr : file
              Open file object.
  
          Returns
          -------
          PLTSegment
              The current PLT segment.