#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll N, Q, S, T;
ll data[200006];
ll sa[200005] = {};
ll sum = 0;
 
inline ll calc(ll x, ll y)
{
    if(x > 0) {
        if(y > 0) return ((x - y) * S);
        else return (x * S - y * T);
    } else {
        if(y > 0) return (x * T - y * S);
        else return ((x - y) * T);
    }
}
int main()
{
    scanf("%lld %lld %lld %lld", &N, &Q, &S, &T);
     
    for(int i = 0; i <= N; i++) {
        scanf("%lld", &data[i]);
    }
    for(int i = 0; i < N; i++) {
        sa[i] = data[i + 1] - data[i];
        if(sa[i] > 0) {
            sum -= S * sa[i];
        } else {
            sum -= T * sa[i];
        }
    }
    while(Q--) {
        ll l, r, x;
        scanf("%lld %lld %lld", &l, &r, &x); l--;
        sum += calc(sa[l], sa[l] + x);
        sa[l] += x;
        if(r < N) {
            sum += calc(sa[r], sa[r] - x);
            sa[r] -= x;
        }
        printf("%lld\n", sum);
    }
    return (0);
}