def gcd(x, y):
    if x < y:
        tmp = x
        x = y
        y = tmp
    
    r = x % y
    while r != 0:
        x = y
        y = r
        r = x % y

    return y


x, y = map(int, input().split())
print(gcd(x, y)) def gcd(x, y):
    if x < y:
        tmp = x
        x = y
        y = tmp
    
    r = x % y
    while r != 0:
        x = y
        y = r
        r = x % y

    return y gcd if x < y:
        tmp = x
        x = y
        y = tmp
    
     x < y x y tmp = x tmp x x = y x y y = tmp y tmp r = x % y r x % y x y while r != 0:
        x = y
        y = r
        r = x % y

     r != 0 r 0 x = y x y y = r y r r = x % y r x % y x y return y y x x y y x, y = map(int, input().split()) x map(int, input().split()) map int input().split() ().split () input split y print(gcd(x, y)) print gcd(x, y) gcd x y y = map(int, input().split()) map(int, input().split()) y def gcd(x, y):
    if x < y:
        tmp = x
        x = y
        y = tmp
    
    r = x % y
    while r != 0:
        x = y
        y = r
        r = x % y

    return y def gcd(x, y):
    if x < y:
        tmp = x
        x = y
        y = tmp
    
    r = x % y
    while r != 0:
        x = y
        y = r
        r = x % y

    return y gcd x, y = map(int, input().split()) map(int, input().split()) x
def gcd(x, y):
    if x < y:
        tmp = x
        x = y
        y = tmp
    
    r = x % y
    while r != 0:
        x = y
        y = r
        r = x % y

    return y


x, y = map(int, input().split())
print(gcd(x, y))
