#include <bits/stdc++.h>
using namespace std;
int N;
signed long long P[603030];
int X[603030];
int las[303030];
const signed long long mo = 1000000007;
int id[606060];
pair<int, int> S[606060];
signed long long p2[603030];
signed long long r2[603030];
int rev2 = (mo + 1) / 2;
const int NV = 1 << 20;
vector<signed long long> val[NV * 2];
int Q;
void comp(vector<signed long long>& A, vector<signed long long>& B,
          vector<signed long long>& C) {
  if (A[3] == 0) {
    C = B;
  } else if (B[3] == 0) {
    C = A;
  } else {
    C[3] = A[3] + B[3];
    C[0] = (A[0] + B[0] + A[2] * B[1]) % mo;
    C[1] = (A[1] + B[1] * r2[A[3]]) % mo;
    C[2] = (B[2] + A[2] * r2[B[3]]) % mo;
  }
}
void update(int entry, vector<signed long long> v) {
  entry += NV;
  val[entry] = v;
  while (entry > 1)
    entry >>= 1, comp(val[entry * 2], val[entry * 2 + 1], val[entry]);
}
void solve() {
  int i, j, k, l, r, x, y;
  string s;
  p2[0] = r2[0] = 1;
  for (i = 0; i < (601010); i++) p2[i + 1] = p2[i] * 2 % mo;
  for (i = 0; i < (601010); i++) r2[i + 1] = r2[i] * rev2 % mo;
  memset(las, 0xff, sizeof(las));
  for (i = 0; i < (NV * 2); i++) val[i] = {0, 0, 0, 0};
  scanf("%d", &N);
  for (i = 0; i < (N); i++) {
    scanf("%d", &x);
    X[i] = i;
    P[i] = x;
  }
  scanf("%d", &Q);
  for (i = 0; i < (Q); i++) {
    scanf("%d%d", &x, &y);
    X[N + i] = x - 1;
    P[N + i] = y;
  }
  for (i = 0; i < (N + Q); i++) S[i] = {P[i], i};
  sort(S, S + N + Q);
  for (i = 0; i < (N + Q); i++) id[S[i].second] = i;
  for (i = 0; i < (N + Q); i++) {
    x = X[i];
    y = las[x];
    if (y >= 0) update(y, {0, 0, 0, 0});
    y = las[x] = id[i];
    update(y, {0, P[i] * rev2 % mo, P[i] * rev2 % mo, 1});
    if (i >= N - 1) (void)printf("%d\n", (int)(val[1][0]));
  }
}
int main(int argc, char** argv) {
  string s;
  int i;
  if (argc == 1) ios::sync_with_stdio(false), cin.tie(0);
  for (i = 0; i < (argc - 1); i++) s += argv[i + 1], s += '\n';
  for (i = 0; i < (s.size()); i++) ungetc(s[s.size() - 1 - i], stdin);
  cout.tie(0);
  solve();
  return 0;
}
