need to surround each `fn(event)` call with try-catch and forward all errors to `ExceptionHandler`