def isPrime(n): if n==2 or n==3: return True if n%2==0 or n<2: return False for i in range(3,int(n**0.5)+1,2): if n%i==0: return False return True def gcd(a, b): while b: a, b = b, a % b return a def lcm(a, b): return a * b // gcd(a, b) a, b = sorted(map(int, raw_input().split())) if(a == b or a == 0): print 1 elif(a == 1 or (a < b-a)): if(isPrime(a) or isPrime(b)): n = 1 while n < b: an = a + n bn = b + n if(bn % an == 0): print n break n = n + 1 else: print (b-a) % a else: print b-a - a%(b-a)