#9 Add event module