#Lutece3060. 双端字符串

双端字符串

Migrated from Lutece 3060 双端字符串

All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.

Description

Natsuzora 有一个字符串 SS,还有一个空串 TT。Natsuzora 每次会从 SS 的左端或右端去取出一个字符,并插入到 TT 的尾部,直到 SS 中的字符被取完。

Natsuzora 想知道,他能够得到的字典序最小的 TT 是什么。

Input

本题包含多组数据。第一行一个整数 nn (1n5×104)(1\le n\le 5\times 10^4),表示数据组数。每组数据的格式如下:

一行一个字符串 SS (1S3×105)(1\le |S|\le 3\times 10^5),保证 SS 中只出现小写英文字母。

数据保证 S3×105\sum |S|\le 3\times 10^5

Output

对于每组数据,输出一行一个字符串,表示能够得到的字典序最小的字符串 TT

Samples

1
bacbab
bababc

Note

SS 串初始为 bacbab\text{bacbab}

首先从 SS 右端取出字符,于是 S=bacbaS=\text{bacba}T=bT=\text{b}

然后从 SS 右端取出字符,于是 S=bacbS=\text{bacb}T=baT=\text{ba}

接着从 SS 左端取出字符,于是 S=acbS=\text{acb}T=babT=\text{bab}

再从 SS 左端取出字符,于是 S=cbS=\text{cb}T=babaT=\text{baba}

最后从 SS 右端取出所有字符,T=bababcT=\text{bababc}

可以证明没有更优的方案。

Resources

2023 UESTC ICPC Training for String