switch to using queue and add toString that sorts by time of the first event.