code: def _from_binary_ea_entry(cls, binary_stream):
      
      ''' Offset to the next EA  - 4
          Flags - 1
          Name length - 1
          Value length - 2
      '''
      offset_next_ea, flags, name_len, value_len = cls._REPR.unpack(binary_stream[:cls._REPR.size])
  
      name = binary_stream[cls._REPR.size:cls._REPR.size + name_len].tobytes().decode("ascii")
      #it looks like the value is 8 byte aligned, do some math to compensate
      #TODO confirm if this is true
      value_alignment = (_ceil((cls._REPR.size + name_len) / 8) * 8)
      value = binary_stream[value_alignment:value_alignment + value_len].tobytes()
  
      nw_obj = cls((offset_next_ea, EAFlags(flags), name, value))
  
      _MOD_LOGGER.debug("Attempted to unpack EA entry from \"%s\"\nResult: %s", binary_stream.tobytes(), nw_obj)
  
      return nw_obj
docs: See base class.