h, w = map(int, input().split()) S = [input() for _ in range(h)] X = [] Y = [] dic = {} for i in range(h): for j in range(w): if S[i][j] == "#": dic[i * 100 + j] = len(X) X.append(i) Y.append(j) l = len(X) if l % 2 == 1: print("NO") exit() i = 0 for j in range(i + 1, l): di = X[j] - X[i] dj = Y[j] - Y[i] used = [False] * l for k in range(l): if used[k]: continue ni = X[k] + di nj = Y[k] + dj if ni * 100 + nj not in dic: break x = dic[ni * 100 + nj] used[x] = True else: print("YES") exit() print("NO")