#include<iostream>
#include<algorithm>
//#define Elemtype int
using namespace std;
int N, MAN_N;
int a[20001], max_prime[20001], a_max[5001];
int largest_prime_factor(int n) //求最大质因数算法
{
int max_prime = -1;
while (n % 2 == 0) {
max_prime = 2;
n /= 2;
}
for (int i = 3; i <= sqrt(n); i += 2) {
while (n % i == 0) {
max_prime = i;
n /= i;
}
}
if (n > 1)
max_prime = n;
return max_prime;
}
int main()
{
cin >> N;
for (int i = 2; i <= 20001; i++) {
max_prime[i] = largest_prime_factor(i);
}
for (int i = 0; i < N; i++)
{
cin >> a[i];
a_max[i] = largest_prime_factor(a[i]);
}
//for (int i = 0; i < N; i++) cout << a_max[i] << endl;
for (int i = 0; i < N; i++) //求最大值
if (a_max[i] >= a_max[i + 1]) {
swap(a_max[i], a_max[i + 1]);
swap(a[i], a[i + 1]);
}
cout << a[N];// a[N-1]==0,a[N]==MAX
return 0;
}