#include<bits/stdc++.h>
#define endl '\n'
#define ll long long 
#define ld long double
#define ull unsigned long long
using namespace std;
struct _IO{_IO(){ios::sync_with_stdio(0);cin.tie(0);}}_io;
const ll mod=10;
int g=0;
int a[100000][2];

ld cmp(ld a,ld b){
    return a>b;
}

ll qpow(ll a,ll b){
    ll ans=1,x=a,y=b;
    while(y!=0){
        if(y%2==1){
            ans*=x;
        }
        ans%=mod;
        y/=2;
        x%=mod;
        x*=x;
        x%=mod;
    }
    return ans;
}

int main(){
    int n;
    cin>>n;
    int a[n];
    int maxn=0;
    for(int i=0;i<n;i++){
        cin>>a[i];
        maxn=max(maxn,a[i]);
    }
    int ans=1,anss=0;
    for(int i=2;i<=maxn;i++){
        int g=0;
        for(int j=0;j<n;j++){
            if(a[j]%i==0&&a[j]/i>=1){
                g++;
            }
        }
        if(g>=anss){
            ans=i;
            anss=g;
        }
    }
    cout<<ans<<endl;
}
///ShzFahad
#include<bits/stdc++.h>
using namespace std;
#define ll long long int
#define ld long double
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    ll n;
    cin >> n;
    map<string,ll>mp;
    while(n--)
    {
        string s;
        cin >> s;
        mp[s]++;
    }
    for(auto it=mp.begin();it!=mp.end();it++)
    {
        string k = it->first;
        if(k[0]=='!')
        {
            string x = k.substr(1,k.size()-1);
            auto it2 = mp.find(x);
            if(it2!=mp.end())
            {
                cout << x << endl;
                return 0;
            }
        }
    }
    cout << "satisfiable" << endl;

}
