h, w = map(int, input().split())
grid = [list(input()) for _ in range(h)]

achievable = True

for i in range(h):
    for j in range(w):
        x = grid[i][j]
        
        if x == '#':
            count = 0
            if i - 1 > 0 and grid[i - 1][j] == '#':
                count += 1
            if i + 1 < h and grid[i + 1][j] == '#':
                count += 1
            if j - 1 > 0 and grid[i][j - 1] == '#':
                count += 1
            if j + 1 < w and grid[i][j + 1] == '#':
                count += 1
            
            if count == 0:
                achievable = False
                
print('Yes' if achievable else 'No')