rationalize exceptions