#Grid Repainting 2

#初期化
S = []
p = []
flag = True

#入力
H,W = map(int, input().split())
for i in range(W):
	s = input()
	s_list = list(s)
	S.append(s_list)

#枠外を白に塗りつぶす
for  i in range(H+2):
	p.append(".")

S.insert(0,p)
S.insert(W+1,p)

for i in range(1,W+1,1):
	S[i].insert(0,".")
	S[i].insert(H+2,".")

#計算
for i in range(1, W+1, 1):
	for j in range(1, H+1, 1):
		if S[i][j] == "#" and S[i+1][j] == "." and S[i][j+1] == "." and S[i+1][j+1] == "." and S[i-1][j] == "." and S[i][j-1] == "." and S[i-1][j-1] == ".":
			flag = False

#出力
if flag == True:
	print("Yes")

else:
	print("No")