Added custom exception types, don't catch unexpected exceptions during backtracking