code: def encode(self):
          
          # Call body before fist_line in case the query is changes.
          first_line = self.first_line()
          if self.body and self.wait_continue:
              self.headers['expect'] = '100-continue'
          headers = self.headers
          if self.unredirected_headers:
              headers = self.unredirected_headers.copy()
              headers.update(self.headers)
          buffer = [first_line.encode('ascii'), b'\r\n']
          buffer.extend((('%s: %s\r\n' % (name, value)).encode(CHARSET)
                        for name, value in headers.items()))
          buffer.append(b'\r\n')
          return b''.join(buffer)
docs: The bytes representation of this :class:`HttpRequest`.
  
          Called by :class:`HttpResponse` when it needs to encode this
          :class:`HttpRequest` before sending it to the HTTP resource.