code: def stringify(self, use_bytes=False):
          
          def _str_value(value):
              if isinstance(value, (list, tuple)):
                  value = (self.EOL + '\t').join(map(_str_value, value))
              elif callable(value):
                  value = _str_value(value())
              return value
  
          s = self.EOL.join(("{key}: {value}".format(key=key,
                                                     value=_str_value(value))
                             for key, value in self._header_data.values()
                             if value is not None))
          return s + (self.EOL * 2)
docs: Returns representation of headers as a valid HTTP header string. This
          is called by __str__.
  
          Args:
              use_bytes (bool): Returns a bytes object instead of a str.