x=input().split()
h=int(x[0])
w=int(x[1])
s=['']*h*w
for i in range(h):
    row=input()
    for j in range(w):
        s[i*w+j]=row[j]
i=0
if '#' in s:
    boo=True
else:
    boo=False

while i<h*w:
    if i<w:
        if i==0:
            if s[i]=='#' and s[i+1]!='#' and s[i+w]!='#':
                boo=False
                break
        elif i==w-1:
            if s[i]=='#' and s[i-1]!='#' and s[i+w]!='#':
                boo=False
                break
        else:
            if s[i]=='#' and s[i+1]!='#' and s[i+w]!='#' and s[i-1]!='#':
                boo=False
                break
    elif i%w==0:
        if i==w*(h-1):
            if s[i]=='#' and s[i+1]!='#' and s[i-w]!='#':
                boo=False
                break
        else:
            if s[i]=='#' and s[i+1]!='#' and s[i+w]!='#' and s[i-w]!='#':
                boo=False
                break
    elif i%w==w-1:
        if i==h*w-1:
            if s[i]=='#' and s[i-1]!='#' and s[i-w]!='#':
                boo=False
                break
        else:
            if s[i]=='#' and s[i-1]!='#' and s[i+w]!='#' and s[i-w]!='#':
                boo=False
                break
    elif i>w*(h-1):
        if s[i]=='#' and s[i-1]!='#' and s[i+1]!='#' and s[i-w]!='#':
            boo=False
            break
    else:
        if s[i]=='#' and s[i-1]!='#' and s[i+1]!='#' and s[i-w]!='#' and s[i+w]!='#':
            boo=False
            break
    i+=1
if boo:
    print('Yes')
else:
    print('No')