#include<bits/stdc++.h>
#define N 10000005
using namespace std;
bool v[N] ;
int sp[N] ;
void primeset(){
for(long long int i = 2; i < N; i += 2)
sp[i] = 2 ;
for(long long int i = 3; i < N; i += 2)
if (!v[i]){
sp[i] = i ;
if(i<=3617) for(int j = i * i; j < N; j += 2 * i)
if (!v[j]){
sp[j] = i ;
v[j] = 1 ;
}
}
}
long long int factor (long long int n) {
long long int k = 1 ;
int count;
while(n > 1){
count = 0 ;
long long int s= sp[n] ;
while(n % s == 0){
n /= s ;
count++ ;
}
k *= (pow(s,2*count+1) + 1) / (s + 1) ;
}
return k ;
}
int main(){
primeset() ;
long long int t;
long long int n ,c ;
scanf("%llu",&t);
while(t--)
{
scanf("%llu",&n);
c=factor(n);
printf("%llu\n",c);
}
return 0 ;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBOIDEwMDAwMDA1CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmJvb2wgdltOXSA7CmludCBzcFtOXQk7CnZvaWQgcHJpbWVzZXQoKXsKICAgZm9yKGxvbmcgbG9uZyBpbnQgaSA9IDI7IGkgPCBOOyBpICs9IDIpCnNwW2ldID0gMiA7CiAgIGZvcihsb25nIGxvbmcgaW50IGkgPSAzOyBpIDwgTjsgaSArPSAyKQogICAgICAgICAgIGlmICghdltpXSl7CiAgICAgICAgICAgICAgIHNwW2ldID0gaSAgIDsKICAgICAgICAgICAgICAgaWYoaTw9MzYxNykgZm9yKGludCBqID0gaSAqIGk7IGogPCBOOyBqICs9IDIgKiBpKQogICAgICAgICAgICAgICAgICAgaWYgKCF2W2pdKXsKICAgICAgICAgICAgICAgICAgICAgICBzcFtqXSA9IGkgOwogICAgICAgICAgICAgICAgICAgICAgdltqXSA9IDEgOwogCiAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgfQp9CiAKbG9uZyBsb25nIGludCBmYWN0b3IgKGxvbmcgbG9uZyBpbnQgbikgIHsKICAgbG9uZyBsb25nIGludCBrID0gMSAgOwogICBpbnQgY291bnQ7CiAgIHdoaWxlKG4gPiAxKXsKICAgICAgIGNvdW50ID0gMCAgIDsKICAgICBsb25nIGxvbmcgIGludCBzPSBzcFtuXSAgICA7CiAgICAgICB3aGlsZShuICUgcyA9PSAwKXsKICAgICAgICAgICBuIC89IHMgIDsKICAgICAgICAgICBjb3VudCsrIDsKICAgICAgIH0KICAgICAgIGsgKj0gKHBvdyhzLDIqY291bnQrMSkgKyAxKSAgLyAocyArIDEpICA7CiAgIH0KICAgcmV0dXJuIGsgIDsKfQppbnQgbWFpbigpewogCiAgIHByaW1lc2V0KCkgICAgOwogIGxvbmcgbG9uZyAgaW50IHQ7CiAgIGxvbmcgbG9uZyBpbnQgICBuICAsYyA7CiAgIHNjYW5mKCIlbGx1IiwmdCk7CiAgIHdoaWxlKHQtLSkKICAgewogICBzY2FuZigiJWxsdSIsJm4pOwpjPWZhY3RvcihuKTsKcHJpbnRmKCIlbGx1XG4iLGMpOwogICB9CiAgIHJldHVybiAwICAgIDsKfSA=