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) $