给定 $N$ 个字符串 $S_1, \dots, S_N$,每个字符串均由小写英文字母组成,长度均为 $M$。
初始时,令 $X = S_1$,并执行 $N - 1$ 次以下操作。
在第 $i$ 次操作中,令 $Y$ 为 $X$ 与 $S_{i+1}$ 按此顺序拼接而成的字符串。然后,选择 $Y$ 的任意一个长度为 $M$ 的连续子串,并将 $X$ 替换为该子串。
输出 $X$ 最终可能得到的字典序最小的字符串。
输入格式
第一行包含整数 $N, M$。($2 \le N \le 2000, 1 \le M \le 2000$)
接下来 $N$ 行,每行包含一个长度为 $M$ 的字符串 $S_i$,由小写英文字母组成。
输出格式
输出答案。
样例
输入格式 1
2 3 cat cut
输出格式 1
atc
说明
在第一个样例中,初始时 $X = \text{cat}$。 在第一次操作中,$Y = \text{catcut}$。如果我们选择从第 2 个字符到第 4 个字符的连续子串,则 $X = \text{atc}$,这是字典序最小的结果。
输入格式 2
2 1 a b
输出格式 2
a
输入格式 3
3 8 jastaway tatesoto soryuusi
输出格式 3
asoryuus