#include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("O3")
#pragma GCC Optimization("unroll-loops")
#pragma GCC target("avx2")
const long long int MOD = 1e9 + 7;
void begin() {
  long long int x;
  cin >> x;
  int count = 0;
  int i = 1;
  while (true) {
    if ((i % 3 != 0 && i % 10 != 3)) {
      count++;
      if (count == x) {
        cout << i << "\n";
        return;
      }
    }
    i++;
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  ;
  long long int tc = 1;
  cin >> tc;
  while (tc--) {
    begin();
  }
  return 0;
}

### Prompt

Your task is to create a cpp solution to the following problem:

Polycarp doesn't like integers that are divisible by 3 or end with the digit 3 in their decimal representation. Integers that meet both conditions are disliked by Polycarp, too.

Polycarp starts to write out the positive (greater than 0) integers which he likes: 1, 2, 4, 5, 7, 8, 10, 11, 14, 16, .... Output the k-th element of this sequence (the elements are numbered from 1).

Input

The first line contains one integer t (1 ≤ t ≤ 100) — the number of test cases. Then t test cases follow.

Each test case consists of one line containing one integer k (1 ≤ k ≤ 1000).

Output

For each test case, output in a separate line one integer x — the k-th element of the sequence that was written out by Polycarp.

Example

Input


10
1
2
3
4
5
6
7
8
9
1000


Output


1
2
4
5
7
8
10
11
14
1666

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("O3")
#pragma GCC Optimization("unroll-loops")
#pragma GCC target("avx2")
const long long int MOD = 1e9 + 7;
void begin() {
  long long int x;
  cin >> x;
  int count = 0;
  int i = 1;
  while (true) {
    if ((i % 3 != 0 && i % 10 != 3)) {
      count++;
      if (count == x) {
        cout << i << "\n";
        return;
      }
    }
    i++;
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  ;
  long long int tc = 1;
  cin >> tc;
  while (tc--) {
    begin();
  }
  return 0;
}

```