Reworked the event class