#include <bits/stdc++.h>
using namespace std;
int k, t;
int a[1000003], sol[100003];
void find_dislikes_numbers_of_Poly(int n) {
  for (int i = 1; i <= n; i++) {
    if (i % 3 == 0 or i % 10 == 3) {
      a[i] = 1;
    }
  }
}
void citire() {
  cin >> t;
  for (int i = 1; i <= t; i++) {
    cin >> k;
    int j = 1;
    int number = 1;
    while (j < k) {
      if (a[number] == 0) {
        j++;
      }
      number++;
    }
    while (a[number] == 1) number++;
    sol[i] = number;
  }
}
void afisare() {
  for (int i = 1; i <= t; i++) {
    cout << sol[i] << "\n";
  }
}
int main() {
  find_dislikes_numbers_of_Poly(100000);
  citire();
  afisare();
  return 0;
}

### Prompt

Please formulate 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;
int k, t;
int a[1000003], sol[100003];
void find_dislikes_numbers_of_Poly(int n) {
  for (int i = 1; i <= n; i++) {
    if (i % 3 == 0 or i % 10 == 3) {
      a[i] = 1;
    }
  }
}
void citire() {
  cin >> t;
  for (int i = 1; i <= t; i++) {
    cin >> k;
    int j = 1;
    int number = 1;
    while (j < k) {
      if (a[number] == 0) {
        j++;
      }
      number++;
    }
    while (a[number] == 1) number++;
    sol[i] = number;
  }
}
void afisare() {
  for (int i = 1; i <= t; i++) {
    cout << sol[i] << "\n";
  }
}
int main() {
  find_dislikes_numbers_of_Poly(100000);
  citire();
  afisare();
  return 0;
}

```