slight change to event source API