check 0 zero check s 0 odd check s s 0 even check s s s x check s x half 0 0 half s 0 0 half s s x s half x plus 0 y y plus s x y s plus x y times x y timesIter x y 0 timesIter x y z if check x x y z plus z y p s x x p 0 0 if zero x y z u z if odd x y z u timesIter p x y u if even x y z u plus timesIter half x y half z timesIter half x y half s z 2.2 timesIter x y z if check x x y z plus z y times x y timesIter x y 0 if even x y z u half s z if even x y z u half x if even x y z u timesIter half x y half s z if even x y z u half x if odd x y z u timesIter p x y u if even x y z u plus timesIter half x y half z timesIter half x y half s z if even x y z u half z half s s x half x check s s s x check s x timesIter x y z check x plus s x y plus x y if even x y z u timesIter half x y half z if odd x y z u p x timesIter x y z plus z y true times x y timesIter x y 0 false if odd x y z u timesIter p x y u if even x y z u timesIter half x y half z if even x y z u timesIter half x y half s z timesIter x y z if check x x y z plus z y true Failed! NaTT certifiable-1.6