Bike loves looking for the second maximum element in the sequence. The second maximum element in the sequence of distinct numbers *x*<sub class="lower-index">1</sub>, *x*<sub class="lower-index">2</sub>, ..., *x*<sub class="lower-index">*k*</sub> (*k* &gt; 1) is such maximum element *x*<sub class="lower-index">*j*</sub>, that the following inequality holds: <img align="middle" class="tex-formula" src="https://espresso.codeforces.com/41e9a774451aa769280692592b29103e0a6ecf97.png" style="max-width: 100.0%;max-height: 100.0%;"/>.

The lucky number of the sequence of distinct positive integers *x*<sub class="lower-index">1</sub>, *x*<sub class="lower-index">2</sub>, ..., *x*<sub class="lower-index">*k*</sub> (*k* &gt; 1) is the number that is equal to the bitwise excluding OR of the maximum element of the sequence and the second maximum element of the sequence.

You've got a sequence of distinct positive integers *s*<sub class="lower-index">1</sub>, *s*<sub class="lower-index">2</sub>, ..., *s*<sub class="lower-index">*n*</sub> (*n* &gt; 1). Let's denote sequence *s*<sub class="lower-index">*l*</sub>, *s*<sub class="lower-index">*l* + 1</sub>, ..., *s*<sub class="lower-index">*r*</sub> as *s*[*l*..*r*] (1 ≤ *l* &lt; *r* ≤ *n*). Your task is to find the maximum number among all lucky numbers of sequences *s*[*l*..*r*].

Note that as all numbers in sequence *s* are distinct, all the given definitions make sence.
The first line contains integer *n* (1 &lt; *n* ≤ 10<sup class="upper-index">5</sup>). The second line contains *n* distinct integers *s*<sub class="lower-index">1</sub>, *s*<sub class="lower-index">2</sub>, ..., *s*<sub class="lower-index">*n*</sub> (1 ≤ *s*<sub class="lower-index">*i*</sub> ≤ 10<sup class="upper-index">9</sup>).
'''
    Auther: ghoshashis545 Ashis Ghosh
    College: Jalpaiguri Govt Enggineering College
'''
from os import path
import sys
from functools import cmp_to_key as ctk
from collections import deque,defaultdict as dd 
from bisect import bisect,bisect_left,bisect_right,insort,insort_left,insort_right
from itertools import permutations
from datetime import datetime
from math import ceil,sqrt,log,gcd
def ii():return int(input())
def si():return input()
def mi():return map(int,input().split())
def li():return list(mi())
abc='abcdefghijklmnopqrstuvwxyz'
abd={'a': 0, 'b': 1, 'c': 2, 'd': 3, 'e': 4, 'f': 5, 'g': 6, 'h': 7, 'i': 8, 'j': 9, 'k': 10, 'l': 11, 'm': 12, 'n': 13, 'o': 14, 'p': 15, 'q': 16, 'r': 17, 's': 18, 't': 19, 'u': 20, 'v': 21, 'w': 22, 'x': 23, 'y': 24, 'z': 25}
mod=1000000007
#mod=998244353
inf = float("inf")
vow=['a','e','i','o','u']
dx,dy=[-1,1,0,0],[0,0,1,-1]

def bo(i):
    return ord(i)-ord('a')



def solve():
    
    
    n=ii()
    a=li()
    b=[]
    for j in range(31,-1,-1):
        for i in range(n):
            if (a[i]>>j)&1:
                b.append(i)
        if(len(b)<n and len(b)>0):
            break
        b=[]
        
    
        
    if len(b)==n or len(b)==0:
        print(0)
        exit(0)
        
    ans=0
    x=0
    
    for j in range(len(b)-1):
        
        mx=0
        x1=a[b[j]]
        for i in range(b[j]-1,x-1,-1):
            mx=max(mx,a[i])
            ans=max(ans,x1^mx)
        mx=0
        for i in range(b[j]+1,b[j+1]):
            mx=max(mx,a[i])
            ans=max(ans,x1^mx)
        x=b[j]+1
    
    
       
    mx=0
    x1=a[b[len(b)-1]]
    for i in range(b[len(b)-1]-1,x-1,-1):
        mx=max(mx,a[i])
        ans=max(ans,x1^mx)
    
    mx=0
    for i in range(b[len(b)-1]+1,n):
            mx=max(mx,a[i])
            ans=max(ans,x1^mx)
            
    print(ans)
    
    
    
    
    
    
    
    
if __name__ =="__main__":
    
    solve()
    
