#include<iostream>
using namespace std;
static int lt[5001],rt[5001],cnt[5001];
int main()
{
int n;
cin >>n;
int A[n];
fill(lt,lt+5001,-1);
fill(rt,rt+5001,-1);
for(int i=0;i<n;i++)
{
cin >>A[i];
if(lt[A[i]]==-1)
lt[A[i]]=i;
cnt[A[i]]++;
}
for(int i=n-1;i>=0;i--)
if(rt[A[i]]==-1)
rt[A[i]]=i;
int dp[n];
dp[0]=0;
if(rt[A[0]]==0)
dp[0]=A[0];
int count[5000];
for(int i=1;i<n;i++)
{
fill(count,count+5000,0);
bool poss=true;
int xors=0;
for(int j=i;j>=lt[A[i]];j--)
{
if(not(rt[A[j]]<=i and lt[A[j]]>=lt[A[i]]))
poss=false;
if(count[A[j]]==0)
xors^=A[j];
count[A[j]]++;
}
dp[i]=dp[i-1];
if (poss==true)
{
dp[i]=max(dp[lt[A[i]]-1] + xors,dp[i-1]);
}
//cout<<dp[i]<<" ";
}
//cout<<endl;
cout<<dp[n-1];
}
I2luY2x1ZGU8aW9zdHJlYW0+CgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCgpzdGF0aWMgaW50IGx0WzUwMDFdLHJ0WzUwMDFdLGNudFs1MDAxXTsKaW50IG1haW4oKQp7CglpbnQgbjsKCWNpbiA+Pm47CglpbnQgQVtuXTsKCWZpbGwobHQsbHQrNTAwMSwtMSk7CglmaWxsKHJ0LHJ0KzUwMDEsLTEpOwoJZm9yKGludCBpPTA7aTxuO2krKykKCXsKCQljaW4gPj5BW2ldOwoJCWlmKGx0W0FbaV1dPT0tMSkKCQkJbHRbQVtpXV09aTsKCQljbnRbQVtpXV0rKzsKCX0KCWZvcihpbnQgaT1uLTE7aT49MDtpLS0pCgkJaWYocnRbQVtpXV09PS0xKQoJCQlydFtBW2ldXT1pOwoJCglpbnQgZHBbbl07CglkcFswXT0wOwoJaWYocnRbQVswXV09PTApCgkJZHBbMF09QVswXTsKCWludCBjb3VudFs1MDAwXTsKCQoJZm9yKGludCBpPTE7aTxuO2krKykKCXsKCQlmaWxsKGNvdW50LGNvdW50KzUwMDAsMCk7CgkJYm9vbCBwb3NzPXRydWU7CgkJaW50IHhvcnM9MDsKCQlmb3IoaW50IGo9aTtqPj1sdFtBW2ldXTtqLS0pCgkJewoJCQlpZihub3QocnRbQVtqXV08PWkgYW5kIGx0W0Fbal1dPj1sdFtBW2ldXSkpCgkJCQlwb3NzPWZhbHNlOwoJCQkKCQkJaWYoY291bnRbQVtqXV09PTApCgkJCQl4b3JzXj1BW2pdOwoJCQljb3VudFtBW2pdXSsrOwoJCX0KCQlkcFtpXT1kcFtpLTFdOwoJCWlmIChwb3NzPT10cnVlKQoJCXsKCQkJZHBbaV09bWF4KGRwW2x0W0FbaV1dLTFdICsgeG9ycyxkcFtpLTFdKTsKCQl9CgkJLy9jb3V0PDxkcFtpXTw8IiAiOwoJCQkKCX0KCS8vY291dDw8ZW5kbDsKCWNvdXQ8PGRwW24tMV07Cn0=