AT_abc422_b [ABC422B] Looped Rope
Description
縦 $ H $ マス、横 $ W $ マスのマス目があります。 上から $ i $ 行目 $ (1\le i\le H) $ 、左から $ j $ 列目 $ (1\le j\le W) $ のマスをマス $ (i,j) $ と呼ぶことにします。
それぞれのマスは白もしくは黒のどちらか $ 1 $ 色で塗られています。 マスに塗られている色は $ H $ 個の文字列 $ S _ 1,S _ 2,\ldots,S _ H $ で表され、 $ S _ i\ (1\le i\le H) $ の $ j $ 文字目 $ (1\le j\le W) $ が `.` のとき、マス $ (i,j) $ は白で塗られており、 $ S _ i\ (1\le i\le H) $ の $ j $ 文字目 $ (1\le j\le W) $ が `#` のとき、マス $ (i,j) $ は黒で塗られています。
マス目が以下の条件を満たすか判定してください。
- どの黒で塗られたマスについても、上下左右で隣り合うマスのうち黒く塗られているものは $ 2 $ つもしくは $ 4 $ つである。
ただし、マス $ (i,j)\ (1\le i\le H,1\le j\le W) $ とマス $ (k,l)\ (1\le k\le H,1\le l\le W) $ は、 $ |i-k|+|j-l|=1 $ であるとき、かつそのときに限り上下左右で隣り合っているとします。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ H $ $ W $ $ S _ 1 $ $ S _ 2 $ $ \vdots $ $ S _ H $
Output Format
与えられたマス目が条件を満たしているとき `Yes` を、条件を満たしていないとき `No` を出力せよ。
Explanation/Hint
### Sample Explanation 1
例えば、マス $ (6,3) $ は黒で塗られており、隣り合っているマス $ (5,3),(6,2),(6,4),(7,3) $ のうち、マス $ (5,3) $ およびマス $ (6,4) $ の $ 2 $ マスが黒で塗られているため、条件を満たしています。
他の黒で塗られたどのマスについても条件を満たしているため、`Yes` を出力してください。
### Sample Explanation 2
マス $ (1,1) $ は黒で塗られていますが、隣り合っているマスは $ 1 $ つしかないため、条件を満たしていません。
よって、`No` を出力して下さい。
### Sample Explanation 3
黒で塗られているマスがないため、条件を満たしています。
よって、`Yes` を出力してください。
### Constraints
- $ 1\le H\le 20 $
- $ 1\le W\le 20 $
- $ H,W $ は整数
- $ S _ i $ は `.` および `#` からなる長さ $ W $ の文字列 $ (1\le i\le H) $