code: def read(self, n):
          
          pos = self._read_pos
          self._read_pos = min(len(self.raw), pos + n)
          return self.raw[pos:self._read_pos]
docs: Read n bytes.
          Returns exactly n bytes of data unless the underlying raw IO
          stream reaches EOF.