h, w = map(int, input().split())
s_list = []
for i in range(h):
    s_list.append(input())

for i in range(h):
    for j in range(w):
        if s_list[i][j] == '#':
            flag = True
            for dy in range(-1, 2):
                for dx in range(-1, 2):
                    # 自分自身は無視
                    if dy == 0 and dx == 0:
                        continue
                    ny = dy + i
                    nx = dx + j
                    # 端っこは無視
                    if ny < 0 or nx < 0 or ny >= h or nx >= w:
                        continue
                    # 上下左右(斜めは無視)のどれかで#かどうか
                    if (dy == 0 or dx == 0) and s_list[ny][nx] == '#':
                        flag = False
                        break
                if not flag:
                    break
            if not flag:
                break
            if flag:
                print('No')
                exit()
print('Yes')
