#include using namespace std; #ifdef LOCAL #include "settings/debug.cpp" #else #define Debug(...) void(0) #endif #define rep(i, n) for (int i = 0; i < (n); ++i) using ll = long long; using ull = unsigned long long; int main() { ll a, b; cin >> a >> b; // a = g a', b = g b' // -> GCD(a + b, ab) = GCD(g(a' + b'), g^2 a'b') = g GCD(a' + b', g a' b') // GCD(a' + b', a' b') = 1 -> g GCD(a' + b', g a' b') = g GCD(a' + b', g) ll g = gcd(a, b); cout << g * gcd((a / g + b / g), g) << endl; return 0; }