#include<bits/stdc++.h>
using namespace std;
const int N=100005;
int n,ans,f[N],t[32*N][2],idx;
int get(int x,int k){
return (x>>(31-k))&1;
}
void ins(int x){
int p=0;
for(int i=1; i<=31; i++){
int u=get(x,i);
if(!t[p][u]) t[p][u]=++idx;
p=t[p][u];
}
}
int que(int x){
int p=0,res=0;
for(int i=1; i<=31; i++){
int u=get(x,i);
if(t[p][!u]){
p=t[p][!u];
res=res*2+!u;
}
else{
p=t[p][u];
res=res*2+u;
}
}
return res;
}
int main(){
cin>>n;
for(int i=1; i<=n; i++){
cin>>f[i];
ins(f[i]);
int x=que(f[i]);
ans=max(ans,x^f[i]);
}
cout<<ans;
return 0;
}
//这里填你的代码^^
//注意代码要放在两组三个点之间,才可以正确显示代码高亮哦~