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 JAVA):

Solution:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;

public class C690 {
	
	static class FastScanner {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer("");

		String next() {
			while (!st.hasMoreTokens())
				try {
					st = new StringTokenizer(br.readLine());
				} catch (IOException e) {
				}
			return st.nextToken();
		}

		int nextInt() {
			return Integer.parseInt(next());
		}

		long nextLong() {
			return Long.parseLong(next());
		}
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		FastScanner sc=new FastScanner();
		int t=sc.nextInt();
		while(t-->0) {
			int n=sc.nextInt();
			if(n>45) {
				System.out.println("-1");
			}else {
				List<Integer>res=new ArrayList<>();
				int num=9;
				while(n>0) {
					if(n>=num) {
						n=n-num;
						res.add(num);
					}
					num--;
				}
				Collections.sort(res);
				for(int i=0;i<res.size();i++) {
					System.out.print(res.get(i));
				}
				System.out.println();
			}
		}

	}

}