#CF2003C. 乌龟与好对

乌龟与好对

C. 乌龟与好对
单点时间限制:22
单点内存限制:256256 兆字节

乌龟给你一个由小写拉丁字母组成的字符串 ss

如果存在一个整数 kk,满足 ik<ji \le k < j,并且以下两个条件同时成立:

  • sksk+1s_k \neq s_{k+1}
  • sksis_k \neq s_i sk+1sjs_{k+1} \neq s_j

那么乌龟认为整数对 (i,j)(i,j)1i<jn1 \le i < j \le n)是一个 “令人愉快的对”

此外,如果 si=sjs_i = s_j 或者 (i,j)(i,j) 是一个令人愉快的对,那么乌龟认为 (i,j)(i,j) 是一个 “好对”

乌龟希望重新排列字符串 ss,使得好对的数量最多。请你帮助他!


输入
每个测试点包含多个测试用例。第一行包含测试用例的数量 tt1t1041 \le t \le 10^4)。
每个测试用例的描述如下:

  • 第一行包含一个整数 nn2n21052 \le n \le 2 \cdot 10^5)—— 字符串的长度。
  • 第二行包含一个长度为 nn 的字符串 ss,由小写拉丁字母组成。

保证所有测试用例的 nn 之和不超过 21052 \cdot 10^5


输出
对于每个测试用例,输出重新排列后的字符串 ss,使得好对的数量最大。如果有多个答案,输出任意一个即可。


样例

输入

5
3
abc
5
edddf
6
turtle
8
pppppppp
10
codeforces

输出

acb
ddedf
urtlet
pppppppp
codeforces

注释

  • 第一个测试用例中,重排后的字符串中 (1,3)(1,3) 是一个好对。可以看到,我们无法重排字符串使得好对数量大于 11baccab 也可以是答案。

  • 第二个测试用例中,重排后的字符串中 (1,2)(1,2)(1,4)(1,4)(1,5)(1,5)(2,4)(2,4)(2,5)(2,5)(3,5)(3,5) 是好对。efddd 也可以是答案。