AT_abc460_d [ABC460D] Repeatedly Repainting
Description
$ H $ 行 $ W $ 列のマス目があります。このマス目の上から $ i $ 行目、左から $ j $ 列目のマスをマス $ (i, j) $ と呼びます。
すべてのマスは白または黒で塗られています。マス目の情報は $ H $ 個の長さ $ W $ の文字列 $ S_1, S_2, \ldots, S_H $ によって与えられ、 $ S_i $ の $ j $ 文字目が `.` のときマス $ (i, j) $ は白で、 $ S_i $ の $ j $ 文字目が `#` のときマス $ (i, j) $ は黒で塗られています。
あなたは、以下の操作を $ 10^{100} $ 回行います。
- すべてのマスに対して同時に以下の規則で色の塗り替えを行う。
- 操作前に白く塗られているマスは、そのマスに隣接する黒く塗られているマスが存在するとき、またそのときに限り黒く塗り替える。ただし、マス $ (x, y) $ とマス $ (x', y') $ が隣接しているとは、片方のマスがもう片方のマスの $ 8 $ 近傍にある、すなわち $ \max(|x-x'|, |y-y'|) = 1 $ であることを指す。
- 操作前に黒く塗られているマスは、白く塗り替える。
操作を終えた後に各マスが何色で塗られているか求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ H $ $ W $ $ S_1 $ $ S_2 $ $ \vdots $ $ S_H $
Output Format
$ H $ 行出力せよ。
各行に `.`, `#` からなる長さ $ W $ の文字列を $ 1 $ つずつ出力せよ。
$ i $ 行目の文字列の $ j $ 文字目は $ 10^{100} $ 回の操作を行った後にマス $ (i, j) $ が白で塗られているとき `.` に、黒で塗られているとき `#` になるようにせよ。
Explanation/Hint
### Sample Explanation 1
はじめ、マス目は以下のようになっています。

$ 1 $ 回操作を行うと、マス目は以下のようになります。

$ 10^{100} $ 回操作を行うと、マス目は以下のようになります。

### Constraints
- $ 1 \leq H \times W \leq 10^6 $
- $ H, W $ は正整数
- $ S_i $ は `.`, `#` からなる長さ $ W $ の文字列