More events refactoring