doesn't crash on uncaught exceptions