code: def event(self, **kwargs):
          
          if self.callback.noargs and self.streams == []:
              self.param.warning(
                  'No streams declared. To update a DynamicMaps using '
                  'generators (or callables without arguments) use streams=[Next()]')
              return
          if self.streams == []:
              self.param.warning('No streams on DynamicMap, calling event '
                                 'will have no effect')
              return
  
          stream_params = set(util.stream_parameters(self.streams))
          invalid = [k for k in kwargs.keys() if k not in stream_params]
          if invalid:
              msg = 'Key(s) {invalid} do not correspond to stream parameters'
              raise KeyError(msg.format(invalid = ', '.join('%r' % i for i in invalid)))
  
          streams = []
          for stream in self.streams:
              contents = stream.contents
              applicable_kws = {k:v for k,v in kwargs.items()
                                if k in set(contents.keys())}
              if not applicable_kws and contents:
                  continue
              streams.append(stream)
              rkwargs = util.rename_stream_kwargs(stream, applicable_kws, reverse=True)
              stream.update(**rkwargs)
  
          Stream.trigger(streams)
docs: Updates attached streams and triggers events
  
          Automatically find streams matching the supplied kwargs to
          update and trigger events on them.
  
          Args:
              **kwargs: Events to update streams with