#include <bits/stdc++.h>
using namespace std;
long long int gcd(long long int a,long long int b){
   if(a>b){
        if(a%b==0){
            return b;
        }else{
            return gcd(b,a%b);
        }   
   }else{
       if(b%a==0){
            return a;
        }else{
            return gcd(a,b%a);
        } 
   }
}
void find(long long int n){
    long long int count=n;
    long long int res=0;
    long long int mul=1;
    long long int mod=1e9+7;
   for(long long int i=1;i<=1e16;i++){
        long long int tmp=n/((mul*i)/gcd(mul,i));
        //cout<<mul<<"   "<<((mul*i)/gcd(mul,i))<<" "<<gcd(mul,i)<<"\n";
        mul=((mul*i)/gcd(mul,i));
        //mul=mul%mod;
        res=res+(count-tmp)*i;
        res=res%mod;
        count=tmp;
        if(count==0){
            break;
        }
    }
    cout<<res<<"\n";
    return;
}
int main()
{
   int t;
   cin>>t;
   for(int i=0;i<t;i++){
       long long int n;
       cin>>n;
       find(n);
   }
   return 0;
}