minusXsYpredminusXYminusX0XpredsXXlesXsYleXYlesX0falsele0Ytruegcd0Y0gcdsX0sXgcdsXsYifleYXsXsYiftruesXsYgcdminusXYsYiffalsesXsYgcdminusYXsXminusXsYminusXYminusXsYpredminusXYlesXsYleXYgcdsXsYleYXgcdsXsYifleYXsXsYiftruesXsYminusXYiftruesXsYgcdminusXYsYiffalsesXsYminusYXiffalsesXsYgcdminusYXsXtrueiftruesXsYgcdminusXYsYgcdsXsYifleYXsXsYiffalsesXsYgcdminusYXsXtrue1if32112030gcd221020true02false03le21132001pred1010minus20122s1310iftruesXsYgcdminusXYsYgcdsXsYifleYXsXsYminusXsYpredminusXYminusX0XpredsXXlesXsYleXYlesX0falsele0Ytrueif33gcd25true02false00le23003pred10minus21s14s11minus21pred1100le22false0true0gcd21if32gcdsXsYifleYXsXsYminusXsYpredminusXYminusX0XpredsXXgcdsXsYifleYXsXsYfalseiffalsesXsYminusYXfalseiftruesXsYminusXYfalseminusXsYminusXYtrueminus22minusXsYpredminusXYfalsegcdsXsYleYXfalselesXsYleXYtruele22