#include <bits/stdc++.h>
using namespace std;
const long long mox = 1e5 + 9;
long long seg[4 * mox][30];
long long lazi[4 * mox][30];
long long na[mox];
void shift(long long, long long, long long, long long);
void add(long long t, long long s, long long e, long long indx, long long l,
         long long r) {
  if (s >= r || e <= l) {
    return;
  }
  if (s <= l && e >= r) {
    seg[indx][t] = r - l - seg[indx][t];
    lazi[indx][t] ^= 1;
    return;
  }
  shift(t, indx, l, r);
  long long mid = (l + r) / 2;
  add(t, s, e, 2 * indx, l, mid);
  add(t, s, e, (2 * indx) + 1, mid, r);
  seg[indx][t] = (seg[(2 * indx)][t] + seg[(2 * indx) + 1][t]);
}
void shift(long long t, long long indx, long long l, long long r) {
  if (lazi[indx][t] == 0) {
    return;
  }
  long long mid = (l + r) / 2;
  add(t, l, mid, 2 * indx, l, mid);
  add(t, mid, r, (2 * indx) + 1, mid, r);
  lazi[indx][t] = 0;
}
long long get(long long t, long long s, long long e, long long indx,
              long long l, long long r) {
  if (s >= r || e <= l) {
    return 0;
  }
  if (s <= l && e >= r) {
    return seg[indx][t];
  }
  shift(t, indx, l, r);
  long long mid = (l + r) / 2;
  return (get(t, s, e, 2 * indx, l, mid) +
          get(t, s, e, (2 * indx) + 1, mid, r));
}
int32_t main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long n;
  cin >> n;
  for (long long i = 0; i < n; i++) {
    cin >> na[i];
    for (long long j = 0; j < 30; j++) {
      if (((1 << j) & na[i]) != 0) {
        add(j, i, i + 1, 1, 0, n);
      }
    }
  }
  long long m;
  cin >> m;
  while (m--) {
    long long q;
    cin >> q;
    if (q == 1) {
      long long l, r;
      cin >> l >> r;
      long long ans = 0;
      for (long long i = 0; i < 30; i++) {
        ans += (1 << i) * get(i, l - 1, r, 1, 0, n);
      }
      cout << ans << '\n';
    } else {
      long long l, r, x;
      cin >> l >> r >> x;
      for (long long i = 0; i < 30; i++) {
        if (((1 << i) & x) != 0) {
          add(i, l - 1, r, 1, 0, n);
        }
      }
    }
  }
}
