code: def pack(self, value=None):
          
          if value is None:
              value = self._value
  
          if hasattr(value, 'pack') and callable(value.pack):
              return value.pack()
          elif isinstance(value, bytes):
              return value
          elif value is None:
              return b''
          else:
              raise ValueError(f"BinaryData can't be {type(value)} = '{value}'")
docs: Pack the value as a binary representation.
  
          Returns:
              bytes: The binary representation.
  
          Raises:
              ValueError: If value can't be represented with bytes