MAJOR REFACTOR IN EVENT MODEL