#include <iostream>
#include <cmath>
using namespace std;
bool is_prime(int m){
if (m <= 1) return false;
if (m <= 3) return true;
if (m % 2 == 0 || m % 3 == 0) return false;
int limit = sqrt(m);
for (int i = 5; i <= limit; i += 6){
if (m % i == 0) return false;
if (m % (i+2) == 0) return false;
}
return true;
}
int prime_count(int k){
if (k <= 1) return 0;
if (k == 2) return 1;
int p_c = 1;
for (int i = 3; i <= k; i += 2){
p_c = p_c + is_prime(i);
}
return p_c;
}
int main() {
int n;
cin >> n;
int t [2*n];
for (int i = 0; i < n * 2; i++){
cin >> t[i];
}
for (int j = 0; j < 2 * n; j += 2){
int a = t[j];
int b = t[j + 1];
int k = prime_count(b) - prime_count(a - 1);
cout << k << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpib29sIGlzX3ByaW1lKGludCBtKXsKCWlmIChtIDw9IDEpIHJldHVybiBmYWxzZTsKCWlmIChtIDw9IDMpIHJldHVybiB0cnVlOwoJaWYgKG0gJSAyID09IDAgfHwgbSAlIDMgPT0gMCkgcmV0dXJuIGZhbHNlOwoJaW50IGxpbWl0ID0gc3FydChtKTsKCWZvciAoaW50IGkgPSA1OyBpIDw9IGxpbWl0OyBpICs9IDYpewoJCWlmIChtICUgaSA9PSAwKSByZXR1cm4gZmFsc2U7CgkJaWYgKG0gJSAoaSsyKSA9PSAwKSByZXR1cm4gZmFsc2U7Cgl9CglyZXR1cm4gdHJ1ZTsKfQoJCmludCBwcmltZV9jb3VudChpbnQgayl7CglpZiAoayA8PSAxKSByZXR1cm4gMDsKCWlmIChrID09IDIpIHJldHVybiAxOwoJaW50IHBfYyA9IDE7Cglmb3IgKGludCBpID0gMzsgaSA8PSBrOyBpICs9IDIpewoJCXBfYyA9IHBfYyArIGlzX3ByaW1lKGkpOwoJfQoJcmV0dXJuIHBfYzsKfQoKaW50IG1haW4oKSB7CglpbnQgbjsKCWNpbiA+PiBuOwoJaW50IHQgWzIqbl07Cglmb3IgKGludCBpID0gMDsgaSA8IG4gKiAyOyBpKyspewoJCWNpbiA+PiB0W2ldOwoJfQoJZm9yIChpbnQgaiA9IDA7IGogPCAyICogbjsgaiArPSAyKXsKCWludCBhID0gdFtqXTsKCWludCBiID0gdFtqICsgMV07CglpbnQgayA9IHByaW1lX2NvdW50KGIpIC0gcHJpbWVfY291bnQoYSAtIDEpOwoJY291dCA8PCBrIDw8IGVuZGw7Cn0KCXJldHVybiAwOwp9