func_code_string: #include <bits/stdc++.h>   #pragma GCC target( avx2 )   #pragma GCC optimization( O3 )   #pragma GCC optimization( unroll-loops )   const long long INF = 0x3f3f3f3f3f3f3f3f;   const long long llinf = (1LL << 62);   const int inf = (1 << 30);   const long long nmax = 3e5 + 50;   const int mod = 1e9 + 7;   const int lim = 1e6;   using namespace std;   int n, m, a[nmax], b[nmax], st[4 * lim + 50], i, t, x, lzy[4 * lim + 50], q;   void push(int nod, int l, int r) {     if (l > r) return;     if (!lzy[nod]) return;     st[nod] += lzy[nod];     if (l != r) {       lzy[nod * 2] += lzy[nod];       lzy[nod * 2 + 1] += lzy[nod];     }     lzy[nod] = 0;   }   void upd(int nod, int l, int r, int tl, int tr, int v) {     push(nod, l, r);     if (tl <= l && r <= tr) {       lzy[nod] += v;       push(nod, l, r);       return;     }     int mid = (l + r) / 2;     if (tl <= mid) upd(nod * 2, l, mid, tl, tr, v);     if (mid < tr) upd(nod * 2 + 1, mid + 1, r, tl, tr, v);     push(nod * 2, l, mid);     push(nod * 2 + 1, mid + 1, r);     st[nod] = max(st[nod * 2], st[nod * 2 + 1]);   }   int qry(int nod, int l, int r) {     push(nod, l, r);     if (l == r) return l;     int mid = (l + r) / 2;     push(2 * nod, l, mid);     push(2 * nod + 1, mid + 1, r);     if (st[2 * nod + 1] > 0) return qry(2 * nod + 1, mid + 1, r);     return qry(2 * nod, l, mid);   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(0);     cerr.tie(0);     cout.tie(0);     cin >> n >> m;     for (i = 1; i <= n; i++) {       cin >> a[i];       upd(1, 1, lim, 1, a[i], 1);     }     for (i = 1; i <= m; i++) {       cin >> b[i];       upd(1, 1, lim, 1, b[i], -1);     }     cin >> q;     while (q--) {       cin >> t >> i >> x;       if (t == 1) {         upd(1, 1, lim, 1, a[i], -1);         a[i] = x;         upd(1, 1, lim, 1, a[i], 1);       } else {         upd(1, 1, lim, 1, b[i], 1);         b[i] = x;         upd(1, 1, lim, 1, b[i], -1);       }       if (st[1] <= 0)         cout << -1 <<   n ;       else         cout << qry(1, 1, lim) <<   n ;     }     return 0;   }   