#include <stdio.h>
#define rep(i, n) for(int i = 0; i < n; ++i)
#define repi(i, n) for(int i = 1; i <= n; ++i)

typedef long long ll;

int main(void) {
  ll n, m, i, j, k, q, s, t;
  scanf("%lld%lld%lld%lld", &n, &q, &s, &t);
  ll a[n + 1], d[n + 1], now = 0;
  d[0] = 0;
  scanf("%lld", &a[0]);
  repi(i, n) {
    scanf("%lld", &a[i]);
    d[i] = a[i] - a[i - 1];
    if(d[i] > 0) now -= d[i] * s;
    else now -= d[i] * t;
  }
  rep(i, q) {
    ll l, r, x;
    scanf("%lld%lld%lld", &l, &r, &x);
    r++;
    if(d[l] > 0) now += d[l] * s;
    else now += d[l] * t;
    if(r != n + 1) {
      if(d[r] > 0) now += d[r] * s;
      else now += d[r] * t;
      d[r] -= x;
    }
    d[l] += x;
    if(d[l] > 0) now -= d[l] * s;
    else now -= d[l] * t;
    if(r != n + 1) {
      if(d[r] > 0) now -= d[r] * s;
      else now -= d[r] * t;
    }
    printf("%lld\n", now);
  }
  return 0;
}
