#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
const int N=1000000;
const int M=100000;
int main()
{
	vector<bool> mark(N+8,false);
	vector<int> prime;
	vector<int> ans(M+10);
	for(int i=2;i<=N;++i)
	{
		if(mark[i]==false)
		{
			int b=i+i;
			while(b<=N)
			{
				mark[b]=true;
				b+=i;
			}
		}
	}
	for(int i=2;i<=N;++i)
		if(!mark[i])
			prime.push_back(i);
	mark[1]=true;
	for(int i=1;i<=M ; ++i)
		{
			int x=i*(i+1);
			int num=1;
			x/=2;
			int to=ceil(sqrt(static_cast<double>(x)));
			for(int j=0;prime[j]<=to ; ++j)
			{
				int y=0;
				while(x%prime[j]==0)
				{
					x/=prime[j];
					++y;
				}
				if(y!=0)
					num*=y+1;
			}
			if( x!=1)
				num*=2;
			ans[i]=num;
		}
	int t;
	cin>>t;
	for(int k=1;k<=t;++k)
	{
		int n;
		cin>>n;
		for(int i=1;i<=M;++i)
			if(ans[i]>n)
			{
				cout<< (i*(i+1))/2<<endl;
				break;
			}
	}

}