code: def read1(self, size=-1):
          
          self._check_readable()
          chunk = self._buffer.get_chunk(size)
          if not chunk and not self._buffer.eof and self._buffer.error:
              raise compat.saved_exc(self._buffer.error)
          return chunk
docs: Read up to *size* bytes.
  
          This function reads from the buffer only once. It is useful in case you
          need to read a large input, and want to do so efficiently. If *size* is
          big enough, then this method will return the chunks passed into the
          memory buffer verbatim without any copying or slicing.