#include <iostream>
using namespace std;
 
unsigned long long f(unsigned long long n, unsigned long long m) {
    if (n % m == 0) return m;
    if (m % n == 0) return n;
    if (m > n) f(m % n, n);
    else  f(n % m , m);
}
 
int main() {
    unsigned long long n, m, t;
    cin >> m >> n;
    t = f(m, n);
    cout << t;
    return 0;
}