(n,q),a,*e=[[*map(int,s.split())]for s in open(0)] bt=[[0]for _ in range(26)] for t in range(26): for i in a: bt[t]+=bt[t][-1]+(i>>t&1), def Add(k): global res # for j in range(L,R+1): for t in range(26): nt=bt[t][R+1]-bt[t][L] if a[k]>>t&1: res+=(R-L+1-nt)*(1<>t&1: res-=(R-L+1-nt)*(1<l:L-=1;Add(L) while R>r:Del(R);R-=1 while L