#include long gcd(long a, long b) { return b == 0 ? a : gcd(b, a % b); } long mul(long a, long b, long m) { long res = 0; while( b != 0LL ) { if( b & 1 ) res = (res + a) % m; b >>= 1; a = (a << 1) % m; } return res; } int main() { long a, b; scanf("%ld %ld", &a, &b); long x = a + b; long y = mul(a, b, a + b); printf("%ld\n", gcd(x, y)); return 0; }