code: def broadcast(self, response):
          '''Broadcast ``message`` to all :attr:`clients`.'''
          remove = set()
          channel = to_string(response[0])
          message = response[1]
          if self.protocol:
              try:
                  message = self.protocol.decode(message)
              except ProtocolError:
                  self.logger.exception('Could not decode message')
                  return
          for client in self._clients:
              try:
                  client(channel, message)
              except IOError:
                  remove.add(client)
              except Exception:
                  self._loop.logger.exception(
                      'Exception while processing pub/sub client. Removing it.')
                  remove.add(client)
          self._clients.difference_update(removef broadcast(self, response):
          '''Broadcast ``message`` to all :attr:`clients`.'''
          remove = set()
          channel = to_string(response[0])
          message = response[1]
          if self.protocol:
              try:
                  message = self.protocol.decode(message)
              except ProtocolError:
                  self.logger.exception('Could not decode message')
                  return
          for client in self._clients:
              try:
                  client(channel, message)
              except IOError:
                  remove.add(client)
              except Exception:
                  self._loop.logger.exception(
                      'Exception while processing pub/sub client. Removing it.')
                  remove.add(client)
          self._clients.difference_update(remove)
docs: Broadcast ``message`` to all :attr:`clients`.