docs: def decode(self, bytes, raw=False):
          """decode(bytearray, raw=False) -> value
  
          Decodes the given bytearray containing the elapsed time in
          seconds plus 1/256 subseconds since the GPS epoch returns the
          corresponding Python :class:`datetime`.
  
          If the optional parameter ``raw`` is ``True``, the number of
          seconds and subseconds will be returned as a floating-point
          number instead.
          """
          coarse = Time32Type().decode(bytes[:4], raw)
          fine   = Time8Type() .decode(bytes[4:])
  
          if not raw:
              fine = datetime.timedelta(microseconds=fine * 1e6)
  
          return coarse + fine