#include <bits/stdc++.h>
using namespace std;
int n;
int solve(vector<int> v) {
  int res = v[0] ^ v[1];
  vector<int> st;
  for (int i = 0; i < n; i++) {
    while (!st.empty() && st.back() < v[i]) st.pop_back();
    st.push_back(v[i]);
    if (st.size() >= 2) res = max(res, st[st.size() - 1] ^ st[st.size() - 2]);
  }
  return res;
}
int main() {
  scanf("%d", &n);
  vector<int> v(n);
  for (int i = 0; i < n; i++) scanf("%d", &v[i]);
  int res = solve(v);
  reverse(v.begin(), v.end());
  cout << max(res, solve(v));
  return 0;
}
