i'm not sure if this is happen near the beginning of the computation, but otherwise, it'd be better to perform the check as earlier as possible