#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int t;
  cin >> t;
  while (t--) {
    long long n;
    cin >> n;
    int bit = -1;
    for (int i = 0; i < 30; i++) {
      long long cnt = 3ll * (1ll << (i + i));
      if (cnt < n) {
        n -= cnt;
      } else {
        bit = i;
        break;
      }
    }
    assert(~bit);
    long long base = (1ll << (bit + bit));
    long long ans[] = {base, base * 2, base * 3};
    int pat[] = {1, 2, 3};
    for (int i = bit - 1; i >= 0; i--) {
      for (int j = 0; j < 4; j++) {
        long long cnt = (3ll << (i + i));
        if (cnt < n) {
          n -= cnt;
        } else {
          if (j == 0) {
            break;
          } else {
            int k = j - 1;
            int c = 0;
            do {
              ans[c] += (1ll * pat[k] * (1ll << (i + i)));
              k++;
              c++;
              k %= 3;
            } while (c < 3);
          }
          break;
        }
      }
    }
    cout << ans[n - 1] << "\n";
  }
}
