#include <bits/stdc++.h>
using namespace std;
ofstream out("output.txt");
const long long OO = 0x3f3f3f3f;
void c_sum(vector<long long> &a) {
  for (int i = 0; i < (int)(((int)a.size()) - 1); ++i) a[i + 1] += a[i];
}
int main() {
  (ios_base::sync_with_stdio(false), cin.tie(NULL));
  int n, m, k;
  cin >> n >> m >> k;
  vector<long long> a(n + 2);
  for (int i = 0; i < (int)(n); ++i) cin >> a[i + 1];
  vector<pair<pair<int, int>, int>> op(m);
  for (int i = 0; i < (int)(m); ++i)
    cin >> op[i].first.first >> op[i].first.second >> op[i].second;
  vector<long long> ta(n + 2), tops(m + 2);
  for (int i = 0; i < (int)(k); ++i) {
    int l, r;
    cin >> l >> r;
    ++tops[l];
    --tops[r + 1];
  }
  c_sum(tops);
  for (int i = 0; i < (int)(m); ++i) {
    long long op_cnt = tops[i + 1];
    long long l = op[i].first.first, r = op[i].first.second, inc = op[i].second;
    ta[l] += inc * op_cnt;
    ta[r + 1] -= inc * op_cnt;
  }
  c_sum(ta);
  for (int i = 0; i < (int)(n); ++i) cout << a[i + 1] + ta[i + 1] << " ";
  return 0;
}
