code: def unpack(self, buff, offset=0):
          
          begin = offset
          hexas = []
          while begin < offset + 8:
              number = struct.unpack("!B", buff[begin:begin+1])[0]
              hexas.append("%.2x" % number)
              begin += 1
          self._value = ':'.join(hexas)
docs: Unpack a binary message into this object's attributes.
  
          Unpack the binary value *buff* and update this object attributes based
          on the results.
  
          Args:
              buff (bytes): Binary data package to be unpacked.
              offset (int): Where to begin unpacking.
  
          Raises:
              Exception: If there is a struct unpacking error.