added 2 events and 1 listener