#include <iostream>
#include <cmath>
#include <vector>
#include <algorithm>
int main() {
int T;
int m, n;
int const MAX = 1000000000;
std::vector<bool> flags((MAX + 1)/2, true);
double halfMax = std::ceil(std::sqrt(MAX));
for (int i = 3; i <= halfMax; i+=2) {
if (flags[i/2]) {
for (int j = i * i; j <= MAX; j += i*2) {
flags[j/2] = false;
}
}
}
std::cin >> T;
while (T--) {
std::cin >> m >> n;
if (m < 3) {
std::cout << "2 ";
}
for (int k = std::max(m&1, 3); k <= n; k+=2) {
if (flags[k/2]) {
std::cout << k << ' ';
}
}
std::cout << '\n';
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDx2ZWN0b3I+CiNpbmNsdWRlIDxhbGdvcml0aG0+CgppbnQgbWFpbigpIHsKICAgIGludCBUOwogICAgaW50IG0sIG47CiAgICBpbnQgY29uc3QgTUFYID0gMTAwMDAwMDAwMDsKCiAgICBzdGQ6OnZlY3Rvcjxib29sPiBmbGFncygoTUFYICsgMSkvMiwgdHJ1ZSk7CgogICAgZG91YmxlIGhhbGZNYXggPSBzdGQ6OmNlaWwoc3RkOjpzcXJ0KE1BWCkpOwogICAgZm9yIChpbnQgaSA9IDM7IGkgPD0gaGFsZk1heDsgaSs9MikgewogICAgICAgIGlmIChmbGFnc1tpLzJdKSB7CiAgICAgICAgICAgIGZvciAoaW50IGogPSBpICogaTsgaiA8PSBNQVg7IGogKz0gaSoyKSB7CiAgICAgICAgICAgICAgICBmbGFnc1tqLzJdID0gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgc3RkOjpjaW4gPj4gVDsKICAgIHdoaWxlIChULS0pIHsKICAgICAgICBzdGQ6OmNpbiA+PiBtID4+IG47CiAgICAgICAgaWYgKG0gPCAzKSB7CiAgICAgICAgCXN0ZDo6Y291dCA8PCAiMiAiOwogICAgICAgIH0KICAgICAgICBmb3IgKGludCBrID0gc3RkOjptYXgobSYxLCAzKTsgayA8PSBuOyBrKz0yKSB7CiAgICAgICAgICAgIGlmIChmbGFnc1trLzJdKSB7CiAgICAgICAgICAgICAgICBzdGQ6OmNvdXQgPDwgayA8PCAnICc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3RkOjpjb3V0IDw8ICdcbic7CiAgICB9Cn0=