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

def search(arr, x, y):
    dif = ((-1, -1), (-1, 0), (-1, 1), (0, -1), (0, 1), (1, -1), (1, 0), (1, 1))
    flag = 0
    try:
        for dx, dy in dif:
            if (x+dx) >= 0 and (y+dy) >= 0 and arr[x + dx][y + dy] == '#':
                flag = 1
                break
    except:
        pass
    return flag

for i in range(h):
    for j in range(w):
        if s[i][j] == '#':
            if not search(s, i, j):
                print("No")
                exit(0)
print("Yes")