#include <iostream>
#include<cmath>
using namespace std;
int factor(int num) {
if (num <= 2)return num;
int max_factor = -1;
while(num%2==0){
max_factor=2;
num=num/2;
}
for (int i = 3; i <= sqrt(num); i = i + 2) {
while (num % i == 0 ) {
max_factor=i;
num=num/i;
}
}
if(num>max_factor)max_factor=num;
return max_factor;
}
int main() {
int a, b;
while (cin >> a) { // 注意 while 处理多个 case
string s;
cin.ignore();
for (int i = 0; i < a; i++) {
b = 0;
getline(cin, s);
for (int i = 0; i < s.length(); i++) {
if (s[i] >= '0' && s[i] <= '9')b = b * 10 + s[i] - '0';
}
// cout<<b<<endl;
if (b == 0)cout << 0 << endl;
else cout << factor(b) << endl;
}
}
}
// 64 位输出请用 printf("%lld")