even more work on events