code: def send_error(self, code, message=None):
          
  
          try:
              shortmsg, longmsg = self.responses[code]
          except KeyError:
              shortmsg, longmsg = '???', '???'
          if message is None:
              message = shortmsg
          explain = longmsg
          self.log_error("code %d, message %s", code, message)
          # using _quote_html to prevent Cross Site Scripting attacks (see bug #1100201)
          content = (self.error_message_format %
                     {'code': code, 'message': _quote_html(message), 'explain': explain})
          self.send_response(code, message)
          self.send_header("Content-Type", self.error_content_type)
          self.send_header('Connection', 'close')
          self.end_headers()
          if self.command != 'HEAD' and code >= 200 and code not in (204, 304):
              self.wfile.write(content.encode('UTF-8', 'replace'))
docs: Send and log an error reply.
  
          Arguments are the error code, and a detailed message.
          The detailed message defaults to the short entry matching the
          response code.
  
          This sends an error response (so it must be called before any
          output has been generated), logs the error, and finally sends
          a piece of HTML explaining the error to the user.