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;
 
 
char ans[13];
int T,x;
 
int main(){
	scanf("%d",&T);
	while(T--){
		scanf("%d",&x);
		int l = 0;
		for(int i=9;i>0;i--){
			if(x>=i) x-=i, ans[l++] = '0'+i;
		}
		sort(ans,ans+l);
		ans[l] = 0;
		x==0?printf("%s\n",ans):printf("-1\n");
	}
}