Refactor shared events in abstract module.