AT_keyence2020_f Monochromization
Description
[problemUrl]: https://atcoder.jp/contests/keyence2020/tasks/keyence2020_f
$ H\ \times\ W $ のマス目があり、各マスは初期状態で白または黒に塗られています。 初期状態における各マスの塗られ方を表す文字列 $ A_1,\ A_2,\ ...,\ A_H $ が与えられます。 これらの文字列は、各 $ (i,\ j) $ ($ 1\ \leq\ i\ \leq\ H $, $ 1\ \leq\ j\ \leq\ W $) について、 文字列 $ A_i $ の $ j $ 文字目が `.` ならば $ i $ 行 $ j $ 列のマスは白に、 `#` ならば $ i $ 行 $ j $ 列のマスは黒に塗られていることを表します。
このマス目の各マスの白または黒による塗られ方 (全部で $ 2^{HW} $ 個あります) であって、 初期状態から以下の操作を好きな順番で好きな回数 ($ 0 $ 回以上) 繰り返して得られるものの個数を $ 998 $ $ 244 $ $ 353 $ で割ったあまりを求めてください。
- ある行を一つ選び、その行に含まれるすべてのマスを白く塗る。
- ある行を一つ選び、その行に含まれるすべてのマスを黒く塗る。
- ある列を一つ選び、その列に含まれるすべてのマスを白く塗る。
- ある列を一つ選び、その列に含まれるすべてのマスを黒く塗る。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ H $ $ W $ $ A_1 $ $ A_2 $ $ \vdots $ $ A_H $
Output Format
答えを出力せよ。
Explanation/Hint
### 制約
- $ 1\ \leq\ H,\ W\ \leq\ 10 $
- $ |A_i|\ =\ W $ ($ 1\ \leq\ i\ \leq\ H $)
- すべての $ A_i $ は文字 `.` と文字 `#` だけからなる。
- $ H $ および $ W $ は整数である。
### Sample Explanation 1
たとえば、$ 2 $ 行目を黒く塗って得られるマス目は以下のとおりです。 ``` #. ## ```