def gcd(x, y):
    if x < y:
        tmp = x
        x = y
        y = tmp

    while y > 0:
        r = x % y
        x = y
        y = r

    return x

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

    while y > 0:
        r = x % y
        x = y
        y = r

    return x 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 while y > 0:
        r = x % y
        x = y
        y = r

     y > 0 y 0 r = x % y r x % y x y x = y x y y = r y r return x x x x y y if __name__ == "__main__":
    x, y = map(int, input().split())
    print(gcd(x, y)) __name__ == "__main__" __name__ "__main__" 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

    while y > 0:
        r = x % y
        x = y
        y = r

    return x def gcd(x, y):
    if x < y:
        tmp = x
        x = y
        y = tmp

    while y > 0:
        r = x % y
        x = y
        y = r

    return x 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

    while y > 0:
        r = x % y
        x = y
        y = r

    return x

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