import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class Divisors { public static void main(String[] args) throws IOException { BufferedReader r = new BufferedReader(new InputStreamReader(System.in)); String[] s = r.readLine().split(" "); int I = Integer.parseInt(s[0]); int J = Integer.parseInt(s[1]); List[] divs = div(J); double minTriv = Double.POSITIVE_INFINITY; int min = -1; for(int i = I; i <= J; i++) { int sum = 0; @SuppressWarnings("unchecked") List d = divs[i]; for(int di : d) { sum += di; } double triv = sum / i; if(triv < minTriv) { minTriv = triv; min = i; } } System.out.println(min); } @SuppressWarnings("unchecked") private static List[] div(int j) { List[] divisors = new List[j + 1]; for(int d = 1; d <= j; d++) { int c = 2; int mul; while((mul = c * d) <= j) { if(divisors[mul] == null) { divisors[mul] = new ArrayList(); } divisors[mul].add(d); c++; } } return divisors; } }