ll@N,@A[N];rep(i,1,N)A[i]=A[i]^A[i-1];mapL;mint dp[N]{},ps[N+1]{};ps[N]=-1;rep(i,N-1){dp[i]=ps[i]-ps[L.count(A[i])?L[A[i]]:N];ps[i+1]=ps[i]+dp[i];L[A[i]]=i;}wt(ps[N-1]+1);