#include<bits/stdc++.h>
using namespace std;
const int maxn=1e7+5;
bool prime[maxn];
int p[maxn];
int tot;
void findprime()
{for(int i = 2; i < maxn; i ++) prime[i] = true;for(int i = 2; i < maxn; i ++){if(prime[i]) p[++tot]=i;for(int j=1;j<=tot && i*p[j]<maxn; j++){prime[i*p[j]]=false;if(i%p[j]== 0) break;}}
}
int ans[maxn];
int main()
{// freopen("g4.in","r",stdin);// freopen("g4.out","w",stdout);findprime();for(int i=2;i<=maxn;i++){if(prime[i]==1) ans[i]=ans[i-1]+1;else{if(i%2==0) ans[i]=ans[i-1]+2;else{if(prime[i-2]==1) ans[i]=ans[i-1]+2;else ans[i]=ans[i-1]+3;}}}int t;cin>>t;while(t--){int n; cin>>n; cout<<ans[n]<<endl;}
}