对于一个字符串 $s_1 \dots s_n$ ($n \ge 4$),其 $i18n$ 压缩形式为字符串 $s_1 + \text{to\_string}(n - 2) + s_n$,其中 $\text{to\_string}(k)$ 是表示数字 $k$ 的十进制字符串。例如,$i18n(\text{abxcd}) = \text{a3d}$。
你的任务是通过对某些单词进行 $i18n$ 压缩来最小化给定文本的长度(其余单词保持不变)。你压缩单词的方式必须满足:对于每个被压缩的单词 $x$,在 $x$ 之前必须恰好有一个未压缩的单词 $y$,满足 $i18n(y) = i18n(x)$ 且 $y$ 必须与 $x$ 相等。
输入格式
输入只有一行,包含由空格分隔的单词,单词由小写英文字母组成。输入文件的长度不超过 $10^5$ 个字符。
输出格式
输出一行,包含由空格分隔的压缩后的文本。
样例
输入样例 1
internationalization bla bla bla abcd acbd bcda abcd internationalization internationalization
输出样例 1
internationalization bla bla bla abcd acbd bcda abcd i18n i18n
输入样例 2
a bb ccc dddd ccc bb a
输出样例 2
a bb ccc dddd ccc bb a
说明
在第一个样例中:
bla没有被压缩,因为它的长度小于 4。acbd没有被压缩,因为在它之前有abcd,$i18n(\text{abcd}) = i18n(\text{acdb})$,但 $\text{abcd} \ne \text{acbd}$。- 第二个
abcd没有被压缩,因为在它之前有两个具有相同 $i18n$ 压缩形式的未压缩单词:abcd和acbd。