add event with sort