taking exceptions into account