MAYBE 2.2 d x y d y x gcd x y gcd y x + x y + y x * x y * y x gcd x y gcd y x * x y * y x d x y d y x + x y + y x gt s N s M gt N M u_11 True N NzM gt N NzM * s N s M + N + M * N M quot N NzM u_21 is_NzNat NzM NzM N gt NzN 0 u_4 is_NzNat NzN gcd NzN NzM is_NzNat NzN gcd NzN NzM u_31 is_NzNat NzN is_NzNat NzM NzN NzM gt NzN 0 is_NzNat NzN quot N NzM u_11 is_NzNat NzM N NzM * s N s M + M * N M + s N s M + N M gcd NzN NzM is_NzNat NzM u_1 True N NzM quot d N NzM NzM d s N s M d N M quot N NzM is_NzNat NzM quot NzM NzM u_01 is_NzNat NzM lt N M gt M N u_11 True N NzM u_1 gt N NzM N NzM quot NzM NzM is_NzNat NzM u_21 True NzM N gt NzM N u_3 True NzN NzM d NzN NzM quot N NzM is_NzNat NzM u_31 True True NzN NzM gt NzN NzM u_21 True NzM N u_2 gt NzM N u_1 True N NzM d N NzM u_3 True NzN NzM gcd d NzN NzM NzM gcd NzM NzM u_02 is_NzNat NzM NzM * s N s M * N M gcd NzM NzM is_NzNat NzM u_31 True True NzN NzM u_3 gt NzN NzM NzN NzM u_31 True True NzN NzM u_3 gt NzN NzM NzN NzM gcd NzN NzM u_31 is_NzNat NzN is_NzNat NzM NzN NzM u_3 True NzN NzM gcd d NzN NzM NzM gcd x y gcd y x true Failed! NaTT 1.7