Problem: You are given a positive number x. Find the smallest positive integer number that has the sum of digits equal to x and all digits are distinct (unique).

Input

The first line contains a single positive integer t (1 ≤ t ≤ 50) — the number of test cases in the test. Then t test cases follow.

Each test case consists of a single integer number x (1 ≤ x ≤ 50).

Output

Output t answers to the test cases:

  * if a positive integer number with the sum of digits equal to x and all digits are different exists, print the smallest such number; 
  * otherwise print -1. 

Example

Input


4
1
5
15
50


Output


1
5
69
-1

Solution (in CPP):

Solution:
#include<bits/stdc++.h>
using namespace std;

int main()
{ 
    int t;
    cin>>t;
    while(t--){ 
        int n;
        cin>>n;
        string st="";
        
        if(n>=9){ st = "9" + st; n-=9;}
        if(n>=8){ st = "8" + st; n-=8;}
        if(n>=7){ st = "7" + st; n-=7;}
        if(n>=6){ st = "6" + st; n-=6;}
        if(n>=5){ st = "5" + st; n-=5;}
        if(n>=4){ st = "4" + st; n-=4;}
        if(n>=3){ st = "3" + st; n-=3;}
        if(n>=2){ st = "2" + st; n-=2;}
        if(n>=1){ st = "1" + st; n-=1;}
        if(n!=0)cout<<"-1\n";
        else{
             cout<<st<<endl;
        }
        
       
    }
}