强哥历险记——强哥背单词
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
说明
众所周知,强哥的英语很差,但是因为《狗屁不通文章大全》太过精彩,导致强哥看的过于入迷,不知不觉就到了深夜。突然,强哥想起来,还有英语老师布置的英语单词背诵任务没有完成。
想到这里,强哥垂死病中惊坐起,打开了英语课本。

英语课本上有 个由小写英文字母组成的单词,现在强哥有一个烦恼,自己该怎么背这些英语单词呢。
聪明的强哥很快的就想到了一个办法,他想通过重新安排背单词的顺序,使得对于每个由小写英文字母组成的单词,在其前面背诵的单词都是其子字符串(完全相等的两个串也是各自的子字符串)。 比如单词"for"是"forces", "for"和 "jijdiaofor"的子串,但是它不是"four", "ffrr"和"rof"的子串。 。
这样强哥背完一个单词之后,就只需要再背少数字母,就又可以背出下一个单词了。
强哥不禁感叹自己真是个大聪明,欢快地拍起了肚皮。
输入格式
输入第一行为 ,表示有 组数据。
每组数据第一行包括一个整数 ——表示强哥要背的单词的数量。
接下来输入 行,每行的单词的字母数量是从1到100的,并且每个单词都是由小写英文字母组成。
(有的单词可能相等。)
输出格式
如果无法按照给定的要求安排背单词的顺序,输出"NO"(不带引号)。表示强哥觉得肯定背不完单词了,直接摆烂。
否则输出"YES"(不带引号),并且输出安排好顺序的 个单词。
样例
1
5
b
aba
abacaba
ab
aba
YES
b
ab
aba
aba
abacaba
2
5
a
abacaba
ba
aba
abab
3
aaa
aaa
aaa
NO
YES
aaa
aaa
aaa