#include <bits/stdc++.h>
using namespace std;
int n, a[1111];
void PushUp(int rt) { a[rt] = a[rt << 1] ^ a[rt << 1 | 1]; }
void Build(int l, int r, int rt) {
  if (l == r)
    scanf("%d", &a[rt]);
  else {
    int mid = (l + r) >> 1;
    Build(l, mid, rt << 1);
    Build(mid + 1, r, rt << 1 | 1);
    PushUp(rt);
  }
}
int Query(int L, int R, int l, int r, int rt) {
  if (L <= l && r <= R) return a[rt];
  int mid = (l + r) >> 1;
  int ans = 0;
  if (mid >= L) ans ^= Query(L, R, l, mid, rt << 1);
  if (mid < R) ans ^= Query(L, R, mid + 1, r, rt << 1 | 1);
  return ans;
}
int main() {
  scanf("%d", &n);
  Build(1, n, 1);
  int ans = 0;
  for (int i = 1; i <= (n); i++)
    for (int j = i; j <= n; j++) {
      int tmp = Query(i, j, 1, n, 1);
      if (tmp > ans) ans = tmp;
    }
  printf("%d\n", ans);
  return 0;
}
