import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.math.BigInteger;
class Main {
public static void main(String[] args) throws IOException {
new Main().begin();
}
void begin() throws IOException {
BufferedReader reader = null;
try {
reader = new BufferedReader(new InputStreamReader(System.in));
int test = Integer.parseInt(reader.readLine().trim());
StringBuilder strB = new StringBuilder();
while (test <= 10 && test-- > 0) {
String[] str = reader.readLine().trim().split(" ");
int min = Integer.parseInt(str[0]);
int max = Integer.parseInt(str[1]);
if (!(min >= 0 && min <= max && max <= 1000000000 && max - min <= 10000)) {
continue;
}
BigInteger big;
for (int i = min - 1; i <= max;) {
big = new BigInteger("" + i);
int prime = big.nextProbablePrime().intValue();
if (prime <= max) {
strB.append(prime).append("\n");
i = prime;
} else {
i++;
}
}
if (test > 0) {
strB.append("\n");
}
}
System.out.print(strB.toString());
} catch (Exception r) {
} finally {
try {
reader.close();
} catch (Exception e) {
}
}
}
}