#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include<set>
#include<map>
using namespace std;
#define int long long
typedef pair<int, int> P;
int a[200005], dif[200005];
signed main() {
	int n, q, s, t;
	cin >> n >> q >> s >> t;
	int tpw = 0;
	for (int i = 0; i <= n; i++) cin >> a[i];
	for (int i = 0; i < n; i++) {
		dif[i] = a[i + 1] - a[i];
		if (dif[i] > 0)tpw -= dif[i] * s;
		else tpw -= dif[i] * t;
	}
	
	for (int i = 0; i < q; i++) {
		int l, r, x;
		cin >> l >> r >> x;
		if (dif[l - 1] > 0) tpw += dif[l - 1] * s;
		else tpw += dif[l - 1] * t;
		if (r != n) {
			if (dif[r] > 0)tpw += dif[r] * s;
			else tpw += dif[r] * t;
		}
		dif[l - 1] += x;
		dif[r] -= x;
		if (dif[l-1] > 0)tpw -= dif[l-1] * s;
		else tpw -= dif[l-1] * t;
		if (r != n) {
			if (dif[r] > 0)tpw -= dif[r] * s;
			else tpw -= dif[r] * t;
		}
		cout << tpw << endl;
	}
}