H, W = map(int, input().split())
ls = []
for i in range(H):
    ls.append([i for i in input().split()[0]])

dx = [0, 1, 0,-1]
dy = [1, 0,-1, 0]

def dfs(x, y):
    flg = 0
    for ii in range(4):
        nx = x + dx[ii]
        ny = y + dy[ii]
        if nx < 0 or nx >= H or ny < 0 or ny >= W:
            continue
        if ls[nx][ny] == '#':
            flg = 1
    return flg

flg2 = 0
for i in range(H):
    for j in range(W):
        if ls[i][j] == '#':
            if dfs(i, j) == 0:
                flg2 = -1
                break
        else:
            continue
        break

if flg2 == 0:
    print('Yes')
else:
    print('No')