import sys L, R = map(int, input().split()) ans, maxP = 0, 0 sqrt = int(R**0.5) N = sqrt + 10 isprime = [1] * N for i in range(2, N): if isprime[i]: for b in range(i + i, N, i): isprime[b] = 0 primes = [p for p in range(2, N) if isprime[p]] smaller = list(primes) for p in reversed(primes): smaller.pop() for x in reversed(range(max(p * p, (L + p - 1) // p * p), R + 1, p)): if all(x % b != 0 for b in smaller): print(x) sys.exit()