def primes(n): is_prime = [True] * (n + 1) is_prime[0] = False is_prime[1] = False for i in range(2, int(n**0.5) + 1): if not is_prime[i]: continue for j in range(i * 2, n + 1, i): is_prime[j] = False return [i for i in range(n + 1) if is_prime[i]] pr = primes(200) t = int(input()) for _ in range(t): x = int(input()) ans = 10 ** 18 for p in pr: if x % p > 0: ans = min(ans, x * p) break cnt = 1 t = x while t % p == 0: t //= p cnt += 1 ans = min(ans, x * p * cnt) print(ans)