code: def _parse_and_store_headers(self):
          
  
          header_storage = self._store_header()
          header_storage.send(None)
  
          for header_line in self._next_header_line():
              if header_line is None:
                  self._buffer += yield
                  continue
              else:
                  header_storage.send(header_line)
  
          self.headers = header_storage.send(None)
docs: Coroutine used retrieve header data and parse each header until
          the body is found.