#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
int n;
cin >> n;
const int MAXA = 1e6;
vector<int> cnt(MAXA+1, 0);
for(int i = 0; i < n; i++){
int x;
cin >> x;
cnt[x]++;
}
// duyệt từ giá trị lớn nhất xuống
for(int g = MAXA; g >= 1; g--){
int c = 0;
for(int multiple = g; multiple <= MAXA; multiple += g){
c += cnt[multiple];
}
if(c >= 2){
cout << g;
return 0;
}
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUoMCk7CgogICAgaW50IG47CiAgICBjaW4gPj4gbjsKICAgIGNvbnN0IGludCBNQVhBID0gMWU2OwogICAgdmVjdG9yPGludD4gY250KE1BWEErMSwgMCk7CgogICAgZm9yKGludCBpID0gMDsgaSA8IG47IGkrKyl7CiAgICAgICAgaW50IHg7CiAgICAgICAgY2luID4+IHg7CiAgICAgICAgY250W3hdKys7CiAgICB9CgogICAgLy8gZHV54buHdCB04burIGdpw6EgdHLhu4sgbOG7m24gbmjhuqV0IHh14buRbmcKICAgIGZvcihpbnQgZyA9IE1BWEE7IGcgPj0gMTsgZy0tKXsKICAgICAgICBpbnQgYyA9IDA7CiAgICAgICAgZm9yKGludCBtdWx0aXBsZSA9IGc7IG11bHRpcGxlIDw9IE1BWEE7IG11bHRpcGxlICs9IGcpewogICAgICAgICAgICBjICs9IGNudFttdWx0aXBsZV07CiAgICAgICAgfQogICAgICAgIGlmKGMgPj0gMil7CiAgICAgICAgICAgIGNvdXQgPDwgZzsKICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgfQogICAgfQoKICAgIHJldHVybiAwOwp9Cg==