#include<bits/stdc++.h>
using namespace std;
const int N=2e6+5;
long long a[N],b[N];
inline long long read()
{
int x=0,y=1;char c=getchar();
while (c<'0'||c>'9') {if (c=='-') y=-1;c=getchar();}
while (c>='0'&&c<='9') x=x*10+c-'0',c=getchar();
return x*y;
}
int main()
{
long long n,q,s,t,l,r,c,B=0;
n=read(),q=read(),s=read(),t=read();
for(int i=0;i<=n;i++)
{
a[i]=read();
b[i]=a[i]-a[i-1];
}
while(q--)
{
B=0;
l=read(),r=read(),c=read();
b[l]+=c;b[r+1]-=c;
for(int i=1;i<=n;i++)a[i]=a[i-1]+b[i];
for(int i=1;i<=n;i++)
{
if(b[i]>0)B-=s*abs(b[i]);
else if(b[i]<0)B+=+t*abs(b[i]);
}
printf("%d\n",B);
}
}