#D186. Maximize the Remaining String

    ID: 149 Type: Default 2500ms 256MiB

Maximize the Remaining String

Maximize the Remaining String

You are given a string s, consisting of lowercase Latin letters. While there is at least one character in the string s that is repeated at least twice, you perform the following operation:

  • you choose the index i (1 ≤ i ≤ |s|) such that the character at position i occurs at least two times in the string s, and delete the character at position i, that is, replace s with s_1 s_2 … s_{i-1} s_{i+1} s_{i+2} … s_n.

For example, if s="codeforces", then you can apply the following sequence of operations:

  • i=6 ⇒ s="codefrces";
  • i=1 ⇒ s="odefrces";
  • i=7 ⇒ s="odefrcs";

Given a given string s, find the lexicographically maximum string that can be obtained after applying a certain sequence of operations after which all characters in the string become unique.

A string a of length n is lexicographically less than a string b of length m, if:

  • there is an index i (1 ≤ i ≤ min(n, m)) such that the first i-1 characters of the strings a and b are the same, and the i-th character of the string a is less than i-th character of string b;
  • or the first min(n, m) characters in the strings a and b are the same and n < m.

For example, the string a="aezakmi" is lexicographically less than the string b="aezus".

Input

The first line contains one integer t (1 ≤ t ≤ 10^4). Then t test cases follow.

Each test case is characterized by a string s, consisting of lowercase Latin letters (1 ≤ |s| ≤ 2 ⋅ 10^5).

It is guaranteed that the sum of the lengths of the strings in all test cases does not exceed 2 ⋅ 10^5.

Output

For each test case, output the lexicographically maximum string that can be obtained after applying a certain sequence of operations after which all characters in the string become unique.

Example

Input

6 codeforces aezakmi abacaba convexhull swflldjgpaxs myneeocktxpqjpz

Output

odfrces ezakmi cba convexhul wfldjgpaxs myneocktxqjpz

inputFormat

Input

The first line contains one integer t (1 ≤ t ≤ 10^4). Then t test cases follow.

Each test case is characterized by a string s, consisting of lowercase Latin letters (1 ≤ |s| ≤ 2 ⋅ 10^5).

It is guaranteed that the sum of the lengths of the strings in all test cases does not exceed 2 ⋅ 10^5.

outputFormat

Output

For each test case, output the lexicographically maximum string that can be obtained after applying a certain sequence of operations after which all characters in the string become unique.

Example

Input

6 codeforces aezakmi abacaba convexhull swflldjgpaxs myneeocktxpqjpz

Output

odfrces ezakmi cba convexhul wfldjgpaxs myneocktxqjpz

样例

6
codeforces
aezakmi
abacaba
convexhull
swflldjgpaxs
myneeocktxpqjpz

odfrces ezakmi cba convexhul wfldjgpaxs myneocktxqjpz

</p>