#include <bits/stdc++.h>
using namespace std;
const int sz = 2e5 + 9;
int n, q, a[sz], t, p, x;
int query[sz];
int idx[sz];
int mx[sz];
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%d", &a[i]);
  for (int i = 1; i <= n; i++) idx[i] = -1;
  scanf("%d", &q);
  for (int i = 0; i < q; i++) {
    scanf("%d", &t);
    if (t == 1) {
      scanf("%d %d", &p, &x);
      a[p] = x;
      query[i] = -1;
      idx[p] = i;
    } else {
      scanf("%d", &x);
      query[i] = x;
    }
  }
  mx[q - 1] = query[q - 1];
  for (int i = q - 2; i >= 0; i--) mx[i] = max(mx[i + 1], query[i]);
  for (int i = 1; i <= n; i++) {
    if (idx[i] == -1)
      printf("%d ", max(mx[0], a[i]));
    else if (mx[idx[i]] == -1 || a[i] >= mx[idx[i]])
      printf("%d ", a[i]);
    else
      printf("%d ", mx[idx[i]]);
  }
  return 0;
}
