add onEventArrived