code: async def on_raw(self, message):
          
          self.logger.debug('<< %s', message._raw)
          if not message._valid:
              self.logger.warning('Encountered strictly invalid IRC message from server: %s',
                                  message._raw)
  
          if isinstance(message.command, int):
              cmd = str(message.command).zfill(3)
          else:
              cmd = message.command
  
          # Invoke dispatcher, if we have one.
          method = 'on_raw_' + cmd.lower()
          try:
              # Set _top_level so __getattr__() can decide whether to return on_unknown or _ignored for unknown handlers.
              # The reason for this is that features can always call super().on_raw_* safely and thus don't need to care for other features,
              # while unknown messages for which no handlers exist at all are still logged.
              self._handler_top_level = True
              handler = getattr(self, method)
              self._handler_top_level = False
  
              await handler(message)
          except:
              self.logger.exception('Failed to execute %s handler.', method)
docs: Handle a single message.