ll@N,@M,@(A,L--,R)[N],@Q,P[N],r=0; fenwicka,b;a.walloc(M+1,1),b.walloc(M,1); rep(i,N)b.add(i,A[i]); rep(i,N)P[i]=i,r+=A[i]*(R[i]-L[i])-b.range(L[i],R[i]-1),a.add(L[i],1),a.add(R[i],-1); rep(i,Q) { ll s=0; ll@(x--,y--,u--,v); s-=A[x]*(R[x]-L[x]); s+=b.range(L[x],R[x]-1); a.add(L[x],-1),a.add(R[x],1); s+=a.range(0,P[x])*A[x]; b.add(P[x],-A[x]); P[x]=y,L[x]=u,R[x]=v; b.add(y,A[x]); s+=A[x]*(v-u); s-=b.range(u,v-1); s-=a.range(0,y)*A[x]; a.add(u,1),a.add(v,-1); r+=s; wt(r); }