import java.util.*;
import java.io.*;

public class Main {
    public static void main (String[]args)throws Exception{
        
        BufferedReader read = new BufferedReader(new InputStreamReader(System.in));
        
        long []Primes=new long[(int)Math.sqrt(1000000002)];
        Primes[0] = 2;
        int i = 0,q=0,sum=0,t = Integer.parseInt(read.readLine());
        boolean flag = true;
        long start, end,c=2,tester,n,m,holder;
        double root,root2;
        long counter = 1;
        String[] string;
        
while (counter<=t){
     string = read.readLine().split(" ");
     n = Long.parseLong(string[0]);
     m = Long.parseLong(string[1]);
     start = System.currentTimeMillis();

     
     holder = n;
     q = 0;
     i = 0;
     Primes[0] = 2;
     c = 2;
     flag = true;
        
        n = (int)Math.sqrt(1000000000);
        if (holder == 1){
            c++;
            n = 2;
            holder = 2;
        }
          
         
                   
                 
        while (c <= n){
            root = (int)Math.sqrt(c);
            while ( q <= i && Primes[q] <= root){
                tester = c % Primes[q];
                if (tester == 0){
                    flag = false;
                    break;   
                }
                q++;
            }
            if ( flag == true){
                Primes[i+1] = c;
                i++;
            }
            c++;
            q = 0;
            flag = true;   
        }
        
        c = holder;
        q = 0;
        flag = true;
        root = 0;
        
       
        
     while ( c < m){
            root = Math.sqrt(c);
            q = 0;
        while (n <= root){
                while ( q <= i){
                tester = n % Primes[q];
                if (tester == 0){
                    flag = false;
                    break;   
                }
                q++;
            }
                
            if ( flag == true){
                Primes[i+1] = n;
                i++;
            }
            q = 0;
            flag = true;   
            n++;
        }
        n = holder;
        q = 0;
           while ( q <= i && Primes[q] <= root){
               if ( c == 2){
                   System.out.println(c);
                   sum++;
                   flag = false;
               }/*else if(c%2==0 || c%3==0||c%5==0){
                   flag=false;
                   break;
               }
                
                * 
                */
               else if ( c % Primes[q] == 0){
                    flag = false;
                    break;
                }
                q++;
            }
            if (flag == true){
            System.out.println(c);
            sum++;          
            }
            c++;
            flag = true;
            q = 0;
            }
            end = System.currentTimeMillis();
            System.out.println("\nExecution time: " + (end-start) + " milliseconds.\n" + sum);
    counter++;
    
    
     

    
}
}
}
