docs: def next_chunk(self):
          """
          Read a chunk of arbitrary size from the underlying iterator. To get a
          chunk of an specific size, use read()
          """
          if self._unconsumed:
              data = self._unconsumed.pop()
          else:
              data = self._iterator.next()  # Might raise StopIteration
          self._pos += len(data)
          return data