start to refactor the event form