#include <bits/stdc++.h>
using namespace std;
long long n;
long long a[200005];
long long s[200005],vis[200005],k=0;
int main(){
cin >> n;
memset(vis,0,sizeof(vis));
for(long long i=1;i<=n;i++){
cin >> a[i];
for(long long j=1;j<i;j++){
long long c=a[j]%a[i];
long long d=a[i]%a[j];
if(!vis[c]){
vis[c]=1;
s[k++]=c;
}
if(!vis[d]){
vis[d]=1;
s[k++]=d;
}
}
}
if(k==1 || k==0){
cout << "-1";
return 0;
}
sort(s,s+k);
cout << s[k-2];
return 0;
}