/*********************************************************
Creator: Nishant Kumar
Date : 8/1/2014
Problem: SPOJ Prime Number Generator between given range.
**********************************************************/
#include <iostream>
#include <math.h>
using namespace std;
int generatePrime(int, int);
int main(){

  int testCase,*arrayTestCase, index = 0, testCaseLen = 0;

  // Keep test cases
  cin >> testCase;

  if(testCase && testCase <= 10){
    // Allocate memory for keep number of testCases
    arrayTestCase = new int[testCase*2];
    testCaseLen = testCase;

    // Store all range in array
    while(testCaseLen){
        cin >> arrayTestCase[index] >> arrayTestCase[index+1];
        index += 2;
        --testCaseLen;
    }

    testCaseLen = testCase;
    index = 0;
    while(testCaseLen){
        generatePrime(arrayTestCase[index], arrayTestCase[index+1]);
        cout << "\n";
        index = index+2;
        --testCaseLen;
    }

  }else{
     cout << "Test case should be lesser then 10.";
  }
  return 0;
}

// List of prime number between given range
int generatePrime(int start, int end){
    long int diviser, *rangeList;
    int count;
    if(start <= end){
        while(start <= end){
            count = 0;
            if((start != 2 && start%2 == 0 )|| (start != 3 && start%3 == 0) || (start!= 5 && start%5 == 0 )|| (start != 7 && start%7 == 0) ){
                 count = 1;
            }
            if(!count && start != 1){
                cout << start << "\n";
            }
            start++;
        }
    }
    return 0;
}

