code: @Override
    public boolean hasNext() {
      for (int i = 0; i < _events.length; ++i)
        if (_events[i] != null && (!_events[i].isEmpty() || _events[i].next())) {
          assert (_events[i] == null)
            || ((_events[i]._eventIdx < TimeLine.MAX_EVENTS) && !_events[i].isEmpty());
          return true;
        } else {
          assert (_events[i] == null)
            || ((_events[i]._eventIdx < TimeLine.MAX_EVENTS) && !_events[i].isEmpty());
          _events[i] = null;
        }
      return false;
    }
docs: Just check if there is any non null non-issued event.