#abc302c. [abc302_c]Almost Equal

[abc302_c]Almost Equal

問題文

英小文字からなる長さ MM の文字列 NNS1,S2,dots,SNS_1,S_2,\\dots,S_N が与えられます。ここで、SiS_i は互いに異なります。

これらを並び替えた文字列の列 T1,T2,dots,TNT_1,T_2,\\dots,T_N であって、以下の条件を満たすものが存在するか判定してください。

  • 1leileN11 \\le i \\le N-1 を満たす全ての整数 ii に対して、TiT_i11 文字だけ別の英小文字に変えて Ti+1T_{i+1} にすることが出来る。

制約

  • 2leNle82 \\le N \\le 8
  • 1leMle51 \\le M \\le 5
  • SiS_i は英小文字からなる長さ MM の文字列である。(1leileN)(1 \\le i \\le N)
  • SiS_i は互いに異なる。

入力

入力は以下の形式で標準入力から与えられる。

NN MM S1S_1 S2S_2 vdots\\vdots SNS_N

出力

問題文の条件を満たす列が存在するならば Yes を、そうでないならば No を出力せよ。


入力例 1

4 4
bbed
abcd
abed
fbed

出力例 1

Yes

abcd , abed , bbed , fbed の順に並び替えると条件を満たします。


入力例 2

2 5
abcde
abced

出力例 2

No

どのように並び替えても条件を満たすことは出来ません。


入力例 3

8 4
fast
face
cast
race
fact
rice
nice
case

出力例 3

Yes