#include
#include
using namespace std;
using ll =long long;
bool primes[100005]; // i have all primes till 100004(more than sqrt(10^9)–>required for (10^9).
void sieve(){
int n = 100005;
for(int i=0;i<n;i++){
primes[i] = true;
}
primes[0] = false;
primes[1] = false;
for(int i=2;i*i<n;i++){
if(primes[i]){
for(int j=i*i;j<n;j+=i){
primes[j] = false;
}
}
}
}
void print_primes(ll m, ll n){
ll maxi, mini;
if(m>n){
maxi = m;
mini = n;
}else{
maxi = n;
mini = m;
}
int outputSize = maxi - mini + 1;
bool* output = new bool[outputSize];
for(int i = 0;i<outputSize;i++){
output[i] = true;
}
if(mini==1){
output[0] = false;
}
for(ll i = 2; i*i <= maxi; i++){
if(primes[i]){
for(ll j = 0; j < outputSize; j++){
if( ((j + mini) % i) == 0 && (j+mini)!= i){
output[j] = false;
}
}
}
}
for(ll i=0;i<outputSize;i++){
if(output[i]){
cout<<(i+mini)<<endl;
}
}
delete [] output;
}
int main() {
// cout<<“Heinto World!”;
int t;
cin>>t;
sieve();
while(t–){
ll m;
ll n;
cin >> m >> n;
print_primes(m,n);
cout<<endl;
}
}
last test case is showing TLE i dont know why can u help @O17LPOLC0033