We want to check the return value here and do the ThrowException dance as well