Refactor Event model