code: function processQueue( self, queuedEvents ) {
     return queuedEvents.map( eventItem => {
        const meta = eventItem.meta;
        self.currentCycle_ = meta.cycleId;
  
        const subscribers = findSubscribers( self, meta.name );
        if( subscribers.length === 0 ) {
           self.currentCycle_ = -1;
           return eventItem.resolvePublish;
        }
  
        let serializedEvent = null;
        if( subscribers.length > 1 ) {
           serializedEvent = JSON.stringify( eventItem.event );
        }
  
        const senderName = meta.sender;
        const options = meta.options;
  
        subscribers.forEach( subscriberItem => {
           const subscriberName = subscriberItem.subscriberName;
           if( !options.deliverToSender && senderName && senderName === subscriberName ) {
              return;
           }
  
           try {
              let event;
              if( subscriberItem.options.clone ) {
                 event = serializedEvent ? JSON.parse( serializedEvent ) : eventItem.event;
              }
              else {
                 event = eventItem.event;
              }
              subscriberItem.subscriber( event, meta );
           }
           catch( e ) {
              const message = `error while calling subscriber "${subscriberName}"` +
                 ` for event ${meta.name}` +
                 ` published by "${senderName}" (subscribed to: ${subscriberItem.name})`;
              self.errorHandler_( message, {
                 'Exception': e,
                 'Published event': eventItem.event,
                 'Event meta information': meta,
                 'Caused by Subscriber': subscriberItem
              } );
           }
  
           notifyInspectors( self, {
              action: 'deliver',
              source: senderName,
              target: subscriberName,
              event: meta.name,
              eventObject: eventItem.event,
              subscribedTo: subscriberItem.name,
              cycleId: meta.cycleId
           } );
        } );
  
        self.currentCycle_ = -1;
  
        return eventItem.resolvePublish;
     } );
  }
docs: ////////////////////////////////////////////////////////////////////////////////////////////////////////////