namespace Gcd { public struct PairWithGcdVI : PairWithGcdV { private int p, q; public int P {get {return p;}} public int Q {get {return q;}} public void Set (int p, int q) { this.p = p; this.q = q; } public int Gcd () { int r; p = System.Math.Abs(p); q = System.Math.Abs(q); while (q > 0) { r = p % q; p = q; q = r; } return p; } } }