문제
GS국에서는 항상 바람이 바다에서 육지 방향으로 분다.
GS국에는 0부터 N까지의 번호가 붙여진 N+1개의 지점이 있는데, 바람은 0번 지점에서 N+1번 지점 방향으로 분다.
준혁이는 N번 지점에 산다. 0번 지점의 높이는 A_0 = 0이며, i(1 <= i <= n)번 지점의 높이는 A_i이다.
바람은 지표면에서 분다. 바람의 온도는 지표면의 고도에 따라 달라진다.
고도가 0인 0번 지점에서의 바람의 온도는 0이다.
또한, 각 i(0 <= i <= N-1)에 대해, 바람의 온도는 A_i와 A_i+1의 값에 대해서 변화한다.
- A_i < A_i+1인 경우, 바람의 온도는 (A_i+1 - A_i)*S 만큼 감소한다.
- A_i >= A_i+1인 경우, 바람의 온도는 (A_i - A_i+1)*T 만큼 증가한다.
GS국에서는 지각변동이 지금도 활발하여, 땅의 고도가 계속 변화하고 있다.
당신은 Q일 동안의 지각변동에 대한 데이터를 가지고 있다.
j(1 <= j <= Q)일차에는, L_j <= k <= R_j인 모든 k에 대하여 k번 지점에 대한 고도의 변화가 X_j로 나타내어진다.
당신은 난방비를 걱정하는 준혁이를 도와,
각 지각변동이 일어난 이후 준혁이의 집이 위치한 N번 지점에 도착하는 바람의 온도를 구해주어야 한다.
입력
첫 번째 줄에는 네 개의 숫자 N, Q, S, T가 공백으로 구분되어 주어진다.
이는 N번 지점에 준혁이가 살며, 총 Q개의 지각변동이 일어난다는 뜻이다.
S와 T는 온도 변화에 대한 상수이다. (1 <= N, Q <= 200000, 1 <= S, T <= 1000000)
이후 N+1개의 줄 중에 i번째 줄에는 i-1번째 지점의 초기 높이를 나타내는 A_i-1이 주어진다.
(A_0 = 0, -1000000 <= A_i <= 1000000)
이후 Q개의 줄 중에 i번째 줄에는 L_i, R_i, X_i가 공백으로 구분되어 주어진다.
이는 j번째 지각변동에 대한 정보이다. (1 <= L_i <= R_i <= N, -1000000 <= X_i <= 1000000)
출력
Q개의 줄에 걸쳐, i번째 줄에는 i번째 지각변동이 일어난 이후 준혁이의 집에 도달하는 바람의 온도를 출력하여라.
예제
3 5 1 2
0
4
1
8
1 2 2
1 1 -2
2 3 5
1 2 -1
1 3 5
-5
-7
-13
-13
-18