AT_abc419_f [ABC419F] All Included

Description

$ N $ 個の英小文字列 $ S_1,S_2,\ldots,S_N $ および整数 $ L $ が与えられます。 長さ $ L $ の英小文字列であって、 $ S_1,S_2,\ldots,S_N $ をすべて部分文字列として含むものの個数を $ 998244353 $ で割った余りを求めてください。 部分文字列とは $ S $ の**部分文字列**とは、 $ S $ の先頭から $ 0 $ 文字以上、末尾から $ 0 $ 文字以上削除して得られる文字列のことをいいます。 例えば、`ab`, `bc`, `bcd` は `abcd` の部分文字列ですが、`ac`, `dc`, `e` は `abcd` の部分文字列ではありません。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ L $ $ S_1 $ $ S_2 $ $ \vdots $ $ S_N $

Output Format

答えを出力せよ。

Explanation/Hint

### Sample Explanation 1 条件を満たす文字列として、たとえば `abcz` や `cabc` があります。`acbd` は `ab` を部分文字列として含まないため条件を満たしません。 ### Constraints - $ 1\leq N\leq 8 $ - $ 1\leq L\leq 100 $ - $ N,L $ は整数 - $ S_i $ は長さが $ 1 $ 以上 $ 10 $ 以下の英小文字からなる文字列 - $ S_i\neq S_j\ (i\neq j) $