try catch rethrow