h,w=map(int,input().split()) g=[input() for i in range(h)] cnt=0 for i in range(h): for j in range(w): if g[i][j] == '#': cnt+=1 if cnt ==0: print('NO') exit() for zure in range(1,w): f=[[0]*w for i in range(h)] ff=0 for i in range(h): for j in range(w): if g[i][j] == '#' and f[i][j] == 0: if j+zure >= w: ff = 1 break if g[i][j+zure] != '#': ff = 1 break f[i][j+zure] = 1 f[i][j] = 1 if ff == 1: break if ff == 0: print('YES') exit() for zure in range(1,h): f=[[0]*w for i in range(h)] ff=0 for i in range(h): for j in range(w): if g[i][j] == '#' and f[i][j] == 0: if i+zure >= h: ff = 1 break if g[i+zure][j] != '#': ff= 1 break f[i+zure][j] = 1 f[i][j] = 1 if ff == 1: break if ff == 0: print('YES') exit() for zure in range(1,min(h,w)): f=[[0]*w for i in range(h)] ff=0 for i in range(h): for j in range(w): if g[i][j] == '#' and f[i][j] == 0: if i+zure >= h or j + zure >=w: ff = 1 break if g[i+zure][j+zure] != '#': ff = 1 break f[i+zure][j+zure] = 1 f[i][j] = 1 if ff == 1: break if ff == 0: print('YES') exit() print('NO')