extends ControlThrowable? Or is this a true "exceptional case"?