ull z; ull R(){ z^=z<<13; z^=z>>7; z^=z<<17; return z>>33; } ull N,Q,A[2d5+1],C[2d6]={}; ull query(ull x){ ull p=C[x>>11]; while(A[p]>11)+1]++; rep(i,1<<20) C[i+1]+=C[i]; ull ans=0; rep(i,Q) ans^=query(R())*i; wt(ans); }