code: def wsgi_simple_responder(
          result: Union[str, bytes],
          handler: Callable[[Union[str, bytes]], WSGI_TUPLE_TYPE],
          start_response: TYPE_WSGI_START_RESPONSE,
          status: str = '200 OK',
          extraheaders: TYPE_WSGI_RESPONSE_HEADERS = None) \
          -> TYPE_WSGI_APP_RESULT:
      
      extraheaders = extraheaders or []
      (contenttype, extraheaders2, output) = handler(result)
      response_headers = [('Content-Type', contenttype),
                          ('Content-Length', str(len(output)))]
      response_headers.extend(extraheaders)
      if extraheaders2 is not None:
          response_headers.extend(extraheaders2)
      # noinspection PyArgumentList
      start_response(status, response_headers)
      return [output]
docs: Simple WSGI app.
  
      Args:
          result: the data to be processed by ``handler``
          handler: a function returning a ``(contenttype, extraheaders, data)``
              tuple, e.g. ``text_result``, ``html_result``
          start_response: standard WSGI ``start_response`` function
          status: status code (default ``"200 OK"``)
          extraheaders: optional extra HTTP headers
  
      Returns:
          WSGI application result