H, W = map(int, input().split()) grid = [input() for i in range(H)] cnt = sum([grid[i].count("#") for i in range(H)]) if cnt < 2: print("NO") exit() for tatehoukounoshift in range(-(H - 1), H): for yokohoukounoshift in range(-(W - 1), W): if tatehoukounoshift == yokohoukounoshift == 0: continue can = True used = [[False] * W for i in range(H)] for i in range(H): for j in range(W): if used[i][j] or grid[i][j] == ".": continue if not (0 <= i + tatehoukounoshift < H and 0 <= j + yokohoukounoshift < W): can = False break if grid[i + tatehoukounoshift][j + yokohoukounoshift] == ".": can = False used[i][j] = True used[i + tatehoukounoshift][j + yokohoukounoshift] = True if can: print("YES") exit() print("NO")