#include <bits/stdc++.h>
using namespace std;
inline namespace FastIO {
const long long BSZ = 1 << 15;
char ibuf[BSZ];
long long ipos, ilen;
char nc() {
  if (ipos == ilen) {
    ipos = 0;
    ilen = fread(ibuf, 1, BSZ, stdin);
    if (!ilen) return EOF;
  }
  return ibuf[ipos++];
}
template <class T>
void init(T& x) {
  char ch;
  long long sgn = 1;
  while (!isdigit(ch = nc()))
    if (ch == '-') sgn *= -1;
  x = ch - '0';
  while (isdigit(ch = nc())) x = x * 10 + (ch - '0');
  x *= sgn;
}
}  // namespace FastIO
using namespace FastIO;
signed main(void) {
  ios::sync_with_stdio(false);
  cin.tie(0);
  long long t;
  cin >> t;
  while (t--) {
    long long n;
    cin >> n;
    long long ans = 1;
    n--;
    while (n > 0) {
      if (ans % 3 == 0 || ans % 10 == 3)
        ans++;
      else {
        ans++;
        n--;
      }
    }
    if (ans % 3 == 0 || ans % 10 == 3) {
      while (true) {
        ans++;
        if (ans % 3 != 0 && ans % 10 != 3) break;
      }
    }
    cout << ans << endl;
  }
  return 'm' - 109;
}

### Prompt

Create a solution in Cpp for 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;
inline namespace FastIO {
const long long BSZ = 1 << 15;
char ibuf[BSZ];
long long ipos, ilen;
char nc() {
  if (ipos == ilen) {
    ipos = 0;
    ilen = fread(ibuf, 1, BSZ, stdin);
    if (!ilen) return EOF;
  }
  return ibuf[ipos++];
}
template <class T>
void init(T& x) {
  char ch;
  long long sgn = 1;
  while (!isdigit(ch = nc()))
    if (ch == '-') sgn *= -1;
  x = ch - '0';
  while (isdigit(ch = nc())) x = x * 10 + (ch - '0');
  x *= sgn;
}
}  // namespace FastIO
using namespace FastIO;
signed main(void) {
  ios::sync_with_stdio(false);
  cin.tie(0);
  long long t;
  cin >> t;
  while (t--) {
    long long n;
    cin >> n;
    long long ans = 1;
    n--;
    while (n > 0) {
      if (ans % 3 == 0 || ans % 10 == 3)
        ans++;
      else {
        ans++;
        n--;
      }
    }
    if (ans % 3 == 0 || ans % 10 == 3) {
      while (true) {
        ans++;
        if (ans % 3 != 0 && ans % 10 != 3) break;
      }
    }
    cout << ans << endl;
  }
  return 'm' - 109;
}

```