6343: 生成字符串

Memory Limit:256 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:5 Solved:3

Description

给定一个长度为n的字符串(每个字符都是小写字母),使用其中的字符生成新的字符串
比如aabac能够生成aaabc,aabca以此类推
问你能一共生成多少不同的字符串,按照字典序输出。



n≤8

Input

一行,读入一个字符串

Output

第一行一个数,表示能够生成的字符串个数。
接下来若干行,每行一个字符串,字符串按照字典序排序。

Sample Input Copy

aabac

Sample Output Copy

20
aaabc
aaacb
aabac
aabca
aacab
aacba
abaac
abaca
abcaa
acaab
acaba
acbaa
baaac
baaca
bacaa
bcaaa
caaab
caaba
cabaa
cbaaa