import java.util.*;
import java.lang.*;
class Main
{
{
Scanner sc
=new Scanner
(System.
in); int inp=sc.nextInt();
long m=1000000007;
for(int i=0;i<inp;i++){
int inp1=sc.nextInt();
long ans=0;
for(int j
=1;j
<=Math.
sqrt(inp1
);j
++){ ans+=((j%m)*((inp1%m/j)))%m;
}
for(int j
=1;j
<Math.
sqrt(inp1
);j
++){ long end=(inp1%m)/j;
long start=(inp1%m)/(j+1);
ans+=j*((end%m*(end+1)%m)/2-(start%m*(start+1)%m)/2);
ans=ans%m;
}
}
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CgpjbGFzcyBNYWluCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCVNjYW5uZXIgc2M9bmV3IFNjYW5uZXIoU3lzdGVtLmluKTsKICAgICAgICBpbnQgaW5wPXNjLm5leHRJbnQoKTsKICAgICAgICBsb25nIG09MTAwMDAwMDAwNzsKICAgICAgICBmb3IoaW50IGk9MDtpPGlucDtpKyspewogICAgICAgICAgICBpbnQgaW5wMT1zYy5uZXh0SW50KCk7CiAgICAgICAgICAgIGxvbmcgYW5zPTA7CiAgICAgICAgICAgIGZvcihpbnQgaj0xO2o8PU1hdGguc3FydChpbnAxKTtqKyspewogICAgICAgICAgICAgICAgYW5zKz0oKGolbSkqKChpbnAxJW0vaikpKSVtOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZvcihpbnQgaj0xO2o8TWF0aC5zcXJ0KGlucDEpO2orKyl7CiAgICAgICAgICAgICAgICBsb25nIGVuZD0oaW5wMSVtKS9qOwogICAgICAgICAgICAgICAgbG9uZyBzdGFydD0oaW5wMSVtKS8oaisxKTsKICAgICAgICAgICAgICAgIGFucys9aiooKGVuZCVtKihlbmQrMSklbSkvMi0oc3RhcnQlbSooc3RhcnQrMSklbSkvMik7CiAgICAgICAgICAgICAgICBhbnM9YW5zJW07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGFucyk7CiAgICAgICAgfQkKCX0KfQ==