#include <bits/stdc++.h>
using namespace std;
void merge(long long int arr[], long long int l, long long int m,
           long long int r) {
  long long int n1 = m - l + 1;
  long long int n2 = r - m;
  long long int L[n1], R[n2];
  for (long long int i = 0; i < n1; i++) L[i] = arr[l + i];
  for (long long int j = 0; j < n2; j++) R[j] = arr[m + 1 + j];
  long long int i = 0;
  long long int j = 0;
  long long int k = l;
  while (i < n1 && j < n2) {
    if (L[i] <= R[j]) {
      arr[k] = L[i];
      i++;
    } else {
      arr[k] = R[j];
      j++;
    }
    k++;
  }
  while (i < n1) {
    arr[k] = L[i];
    i++;
    k++;
  }
  while (j < n2) {
    arr[k] = R[j];
    j++;
    k++;
  }
}
void mergeSort(long long int arr[], long long int l, long long int r) {
  if (l >= r) {
    return;
  }
  long long int m = (l + r - 1) / 2;
  mergeSort(arr, l, m);
  mergeSort(arr, m + 1, r);
  merge(arr, l, m, r);
}
int main() {
  long long int t;
  cin >> t;
  while (t--) {
    long long int n, x, total = 0;
    cin >> n;
    x = n;
    while (1) {
      total += x - (x % 10);
      x = (x / 10) + (x % 10);
      if (x < 10) {
        total += x;
        break;
      }
    }
    cout << total << endl;
  }
  return 0;
}

### Prompt

Construct a CPP code solution to the problem outlined:

Mishka wants to buy some food in the nearby shop. Initially, he has s burles on his card. 

Mishka can perform the following operation any number of times (possibly, zero): choose some positive integer number 1 ≤ x ≤ s, buy food that costs exactly x burles and obtain ⌊x/10⌋ burles as a cashback (in other words, Mishka spends x burles and obtains ⌊x/10⌋ back). The operation ⌊a/b⌋ means a divided by b rounded down.

It is guaranteed that you can always buy some food that costs x for any possible value of x.

Your task is to say the maximum number of burles Mishka can spend if he buys food optimally.

For example, if Mishka has s=19 burles then the maximum number of burles he can spend is 21. Firstly, he can spend x=10 burles, obtain 1 burle as a cashback. Now he has s=10 burles, so can spend x=10 burles, obtain 1 burle as a cashback and spend it too.

You have to answer t independent test cases.

Input

The first line of the input contains one integer t (1 ≤ t ≤ 10^4) — the number of test cases.

The next t lines describe test cases. Each test case is given on a separate line and consists of one integer s (1 ≤ s ≤ 10^9) — the number of burles Mishka initially has.

Output

For each test case print the answer on it — the maximum number of burles Mishka can spend if he buys food optimally.

Example

Input


6
1
10
19
9876
12345
1000000000


Output


1
11
21
10973
13716
1111111111

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
void merge(long long int arr[], long long int l, long long int m,
           long long int r) {
  long long int n1 = m - l + 1;
  long long int n2 = r - m;
  long long int L[n1], R[n2];
  for (long long int i = 0; i < n1; i++) L[i] = arr[l + i];
  for (long long int j = 0; j < n2; j++) R[j] = arr[m + 1 + j];
  long long int i = 0;
  long long int j = 0;
  long long int k = l;
  while (i < n1 && j < n2) {
    if (L[i] <= R[j]) {
      arr[k] = L[i];
      i++;
    } else {
      arr[k] = R[j];
      j++;
    }
    k++;
  }
  while (i < n1) {
    arr[k] = L[i];
    i++;
    k++;
  }
  while (j < n2) {
    arr[k] = R[j];
    j++;
    k++;
  }
}
void mergeSort(long long int arr[], long long int l, long long int r) {
  if (l >= r) {
    return;
  }
  long long int m = (l + r - 1) / 2;
  mergeSort(arr, l, m);
  mergeSort(arr, m + 1, r);
  merge(arr, l, m, r);
}
int main() {
  long long int t;
  cin >> t;
  while (t--) {
    long long int n, x, total = 0;
    cin >> n;
    x = n;
    while (1) {
      total += x - (x % 10);
      x = (x / 10) + (x % 10);
      if (x < 10) {
        total += x;
        break;
      }
    }
    cout << total << endl;
  }
  return 0;
}

```