#include <bits/stdc++.h>
using namespace std;
long long int a[1000000];
struct cr {
  int l;
  int r;
  int d;
} op[1000000];
long long int kt[1000000];
long long int ktt[1000000];
long long int fiop[1000000];
long long int vp[1000000];
long long int vpp[1000000];
long long int mba[1000000];
int main() {
  int n, m, k, b, c, i, j;
  long long int uv;
  cin >> n >> m >> k;
  for (i = 1; i <= n; i++) {
    scanf("%d", &a[i]);
  }
  for (i = 1; i <= m; i++) {
    cin >> op[i].l >> op[i].r >> op[i].d;
  }
  for (i = 0; i < k; i++) {
    cin >> b >> c;
    kt[b]++;
    ktt[c]--;
  }
  b = 0;
  for (i = 1; i <= m; i++) {
    b += kt[i];
    fiop[i] += b;
    b += ktt[i];
  }
  uv = 0;
  for (i = 1; i <= m; i++) {
    uv = (op[i].d * fiop[i]);
    vp[op[i].l] += uv;
    vpp[op[i].r] -= uv;
  }
  uv = 0;
  for (i = 0; i <= 100010; i++) {
    uv += vp[i];
    mba[i] += uv;
    uv += vpp[i];
  }
  for (i = 1; i <= n; i++) {
    a[i] += mba[i];
    cout << a[i] << ' ';
  }
  cout << endl;
}
