first stage refactoring events module
Second stage refactoring events