defining it with a macro so that unhandled exceptions don’t mess the report