#include <bits/stdc++.h>
using namespace std;
int main() {
  stack<long long> s;
  int N, i;
  cin >> N;
  long long a[N], max = 0;
  for (i = 0; i < N; i++) cin >> a[i];
  i = 0;
  while (i < N) {
    if (s.empty() || a[i] < s.top()) {
      if (!s.empty() && max < (a[i] xor s.top())) max = (a[i] xor s.top());
      s.push(a[i++]);
    } else {
      if (max < (a[i] xor s.top())) max = (a[i] xor s.top());
      s.pop();
    }
  }
  cout << max;
}
