minusXsYpredminusXYminusX0XpredsXXlesXsYleXYlesX0falsele0Ytruegcd0Y0gcdsX0sXgcdsXsYifleYXsXsYiftruesXsYgcdminusXYsYiffalsesXsYgcdminusYXsXminusXsYpredminusXYminusXsYminusXYlesXsYleXYgcdsXsYifleYXsXsYgcdsXsYleYXiftruesXsYgcdminusXYsYiftruesXsYminusXYiffalsesXsYgcdminusYXsXiffalsesXsYminusYXtrueiftruesXsYgcdminusXYsYgcdsXsYifleYXsXsYiffalsesXsYgcdminusYXsXtrue1234561if31213true00s1111gcd21112minus211le20false00pred111000gcd211112if31213gcdsXsYifleYXsXsYgcdsXsYifleYXsXsYfalseiftruesXsYminusXYfalse24iffalsesXsYminusYXfalse13minusXsYminusXYtrue2minus22minusXsYpredminusXYfalse2gcdsXsYleYXfalselesXsYleXYtruele22