#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
int m1=-1;
int m2=-1;
int m3=-1;
for(int i=0;i<n;i++){
int d;
cin>>d;
if(m1 == -1){
m1 = d;
}else if(m2 == -1){
if(d!=m1){
m2 = min(m1,d);
m1 = max(m1,d);
}
}else{
if(d>m1){
m3 = m2;
m2 = m1;
m1 = d;
}else if (d<m1 && d > m2){
m3 = m2;
m2 = d;
}else if(d<m1 && d < m2){
m3 = d;
}
}
}
if(m1 == -1 || m2 == -1){
cout<<-1<<endl;
}else{
if(m3!=-1){
cout<<max(m3,m1%m2)<<endl;
}else{
cout<<m1%m2<<endl;
}
}
return 0;
}