#include <iostream>
#include <math.h>
using namespace std;
bool soNguyenTo(int so) {
if (so < 2) {
return false;
}
for (int i = 2; i <= sqrt(so); i++) {
if (so % i == 0) {
return false;
}
}
return true;
}
int soNTLNvaBeHonN(int arrN[], int i) {
int soNguyenToMax = 0;
for (int j = 0; j <= arrN[i]; j++)
{
if (soNguyenTo(j))
{
soNguyenToMax = j;
}
}
return soNguyenToMax;
}
void output(int SoLuongTest, int arrN[]) {
int arrSoNTsltN[SoLuongTest];
for (int i = 0; i < SoLuongTest; i++)
{
arrSoNTsltN[i] = soNTLNvaBeHonN(arrN, i);
cout << arrSoNTsltN[i] << endl;
}
}
void Test() {
int SoLuongTest = 0;
cin >> SoLuongTest;
int arrN[SoLuongTest];
for (int i = 0; i < SoLuongTest; i++)
{
cin >> arrN[i];
}
output(SoLuongTest, arrN);
}
int main() {
Test();
return 0;
}