from collections import * from itertools import * from functools import * from heapq import * import sys,math input = sys.stdin.readline def floor_sqrt(n,m): y = n+1 def is_smaller(x): if x**m <= n: return True return False x = 0 while y-x>1: mid = (y+x)//2 if is_smaller(mid): x = mid else: y = mid return x def answer(): K = int(input()) def is_ok(x): dp = [0]*101 for i in range(100,1,-1): dp[i] = floor_sqrt(x,i)-1 for j in range(2*i,101,i): dp[i] -= dp[j] # print(x,dp) return sum(dp[2:]) + 1>=K y = K**2 x = 0 while y-x>1: mid = (y+x)//2 if is_ok(mid): y = mid else: x = mid print(y) # print() for _ in range(int(input())): answer()