AT_abc096_c [ABC096C] Grid Repainting 2
Description
[problemUrl]: https://atcoder.jp/contests/abc096/tasks/abc096_c
$ H $ 行 $ W $ 列のマス目で表されるキャンバスがあります. 上から $ i $ 番目, 左から $ j $ 番目のマスを $ (i,\ j) $ と表します.
最初, すべてのマス目は白色です. square1001 君は, 黒い絵の具を使って絵を描きたいと思いました. 具体的には, square1001 君の目標は, $ s_{i,\ j}= $ `#` のときマス $ (i,\ j) $ を黒色, $ s_{i,\ j}= $ `.` のときマス $ (i,\ j) $ を白色にすることです.
しかし, 彼は絵を描くことが得意ではないので, 何回か ($ 0 $ 回でもよい)「上下左右に隣接する $ 2 $ つのマスを選び, 両方黒く塗る」ことしかできません. ただし, すでに黒く塗られているマスを選ぶこともでき, この場合マスの色は黒のまま変わりません.
square1001 君が目標を達成することができるか判定してください.
Input Format
入力は以下の形式で標準入力から与えられる.
> $ H $ $ W $ $ s_{1,\ 1}\ s_{1,\ 2}\ s_{1,\ 3}\ ...\ s_{1,\ W} $ $ s_{2,\ 1}\ s_{2,\ 2}\ s_{2,\ 3}\ ...\ s_{2,\ W} $ $ : $ $ : $ $ s_{H,\ 1}\ s_{H,\ 2}\ s_{H,\ 3}\ ...\ s_{H,\ W} $
Output Format
square1001 君が目標を達成することができるならば `Yes`、達成できないならば `No` と出力しなさい.
Explanation/Hint
### 制約
- $ H $ は $ 1 $ 以上 $ 50 $ 以下の整数
- $ W $ は $ 1 $ 以上 $ 50 $ 以下の整数
- すべての $ (i,\ j)\ (1\ \leq\ i\ \leq\ H,\ 1\ \leq\ j\ \leq\ W) $ に対して, $ s_{i,\ j} $ は `#` または `.`
### Sample Explanation 1
目標を達成する手順の一例として, 下の図の方法が挙げられます. この図では, 「次に黒く塗るマス」を「☆」で表しています. !\[ \](https://img.atcoder.jp/abc096/18f94b6627ec5dc8aa4f6d99ae1c8fca.png)
### Sample Explanation 2
square1001 君は目標を達成することができません.