explicit exception check