General comment: don't catch unrecoverable unchecked exceptions, re-throw unrecoverable checked exceptions