import sys from itertools import product H, W = map(int, input().split()) S = [input() for _ in range(H)] def solve(h0, w0, dh, dw): color = [[None] * W for _ in range(H)] color[h0][w0] = 'R' color[h0 + dh][w0 + dw] = 'B' for h, w in product(range(h0, H), range(W)): if h == h0 and w <= w0: continue if S[h][w] == '#' and color[h][w] == None: if h + dh < H and w + dw < W and S[h + dh][ w + dw] == '#' and color[h + dh][w + dw] == None: color[h][w] = 'R' color[h + dh][w + dw] = 'B' else: return False for h, w in product(range(H), range(W)): if S[h][w] == '#' and color[h][w] == None: return False return True h0 = w0 = -1 for h, w in product(range(H), range(W)): if S[h][w] == '#': h0, w0 = h, w break else: print('NO') sys.exit() yes = False for h, w in product(range(h0, H), range(W)): if h == h0 and w <= w0: continue if S[h][w] == '#': dh, dw = h - h0, w - w0 if (solve(h0, w0, dh, dw)): yes = True break print('YES' if yes else 'NO')