code: def pack(self, value=None):
          
          if isinstance(value, type(self)):
              return value.pack()
          if value is None:
              value = self._value
          return struct.pack('!8B', *[int(v, 16) for v in value.split(':')])
docs: Pack the value as a binary representation.
  
          Returns:
              bytes: The binary representation.
  
          Raises:
              struct.error: If the value does not fit the binary format.