#include <bits/stdc++.h>
using namespace std;
long long gcd(long long a, long long b) {
  if (b == 0) return a;
  return gcd(b, a % b);
}
long long lcm(long long a, long long b) { return a * b / gcd(a, b); }
bool cmp(pair<long long, long long> p1, pair<long long, long long> p2) {
  if (p1.second == p2.second) return p1.first < p2.first;
  return p1.second < p2.second;
}
long long solve(long long a, long long b, long long k) {
  if (a % k == 0) return (b / k - a / k + 1);
  return b / k - a / k;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long t = 1;
  cin >> t;
  long long ar[1001];
  long long i = 1, j = 1;
  while (j < 1001) {
    if (((i % 3) != 0) && ((i % 10) != 3)) ar[j++] = i;
    i++;
  }
  while (t--) {
    long long k;
    cin >> k;
    cout << ar[k] << "\n";
  }
  return 0;
}

### Prompt

Please provide a cpp coded solution to the problem described below:

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;
long long gcd(long long a, long long b) {
  if (b == 0) return a;
  return gcd(b, a % b);
}
long long lcm(long long a, long long b) { return a * b / gcd(a, b); }
bool cmp(pair<long long, long long> p1, pair<long long, long long> p2) {
  if (p1.second == p2.second) return p1.first < p2.first;
  return p1.second < p2.second;
}
long long solve(long long a, long long b, long long k) {
  if (a % k == 0) return (b / k - a / k + 1);
  return b / k - a / k;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long t = 1;
  cin >> t;
  long long ar[1001];
  long long i = 1, j = 1;
  while (j < 1001) {
    if (((i % 3) != 0) && ((i % 10) != 3)) ar[j++] = i;
    i++;
  }
  while (t--) {
    long long k;
    cin >> k;
    cout << ar[k] << "\n";
  }
  return 0;
}

```