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

if __name__ == "__main__":
    x, y = list(map(int, input().split()))
    print(gcd(x, y)) def gcd(x, y):
    if x < y:
        x, y = y, x
    while y != 0:
        x, y = y, x % y
    return x gcd if x < y:
        x, y = y, x
     x < y x y x, y = y, x x y y x while y != 0:
        x, y = y, x % y
     y != 0 y 0 x, y = y, x % y x y y x % y x y return x x x x y y if __name__ == "__main__":
    x, y = list(map(int, input().split()))
    print(gcd(x, y)) __name__ == "__main__" __name__ "__main__" x, y = list(map(int, input().split())) x list(map(int, input().split())) list map(int, input().split()) map int input().split() ().split () input split y print(gcd(x, y)) print gcd(x, y) gcd x y x, y = list(map(int, input().split())) list(map(int, input().split())) x y = list(map(int, input().split())) list(map(int, input().split())) y def gcd(x, y):
    if x < y:
        x, y = y, x
    while y != 0:
        x, y = y, x % y
    return x def gcd(x, y):
    if x < y:
        x, y = y, x
    while y != 0:
        x, y = y, x % y
    return x gcd
def gcd(x, y):
    if x < y:
        x, y = y, x
    while y != 0:
        x, y = y, x % y
    return x

if __name__ == "__main__":
    x, y = list(map(int, input().split()))
    print(gcd(x, y))