using the exception on top