docs: def read_value(self, dtype='uint64', count=1, advance=True):
          """
          Read one or more scalars of the indicated dtype. Count specifies the number of
          scalars to be read in.
          """
          data = np.frombuffer(self._blob, dtype=dtype, count=count, offset=self.pos)
          if advance:
              # probably the same thing as data.nbytes * 8
              self._pos += data.dtype.itemsize * data.size
          if count == 1:
              data = data[0]
          return data