Refactor of SEvents