better recipe for exceptions in events