code: func (s *Simulator) AddTrigger(delay time.Duration, t ...internal.Trigger) {
  	s.AdvanceTime(delay)
  
  	if s.seenTriggers == nil {
  		s.seenTriggers = stringset.New(0)
  	}
  
  	ts := google.NewTimestamp(s.Now)
  	for _, tr := range t {
  		tr := proto.Clone(&tr).(*internal.Trigger)
  		tr.Created = ts
  		if s.seenTriggers.Add(tr.Id) {
  			s.PendingTriggers = append(s.PendingTriggers, tr)
  		}
  	}
  
  	s.triage()
  }
docs: // AddTrigger submits a trigger (one or many) to the pending trigger set.
  //
  // This causes the execution of the policy function to decide what to do with
  // the new triggers.
  //
  // 'delay' is time interval from the previously submitted trigger. It is used to
  // advance time. The current simulation time will be used to populate trigger's
  // Created field.