ll a[maxn];
__int128 ans;
__int128 Mod=9223372036854775807;
int main() {
++Mod;
Mod*=2;
read(n);
for(int i(1);i<=n;++i)read(a[i]);
ll lst_v=0;
ll N=(1<<n);
for(ll i(1);i<N;++i){
ll num=(i^(i/2));
int x=__builtin_ffs(i);
lst_v^=a[x];
ans^=((__int128)lst_v*num%Mod);
}
write(ans);
return 0;
}