Added the IEvent contstraint to the event publisher