#include <bits/stdc++.h>
using namespace std;
int main() {
  int h, w;
  int dx[] = {-1, 0, 0, 1};
  int dy[] = {0, -1, 1, 0};
  cin >> h >> w;
  string map[h], r = "Yes";
  for (int i = 0; i < (h); ++i) cin >> map[i];
  for (int i = 0; i < (h); ++i) {
    for (int j = 0; j < (w); ++j) {
      int match = 0, cnt = 0;
      if (map[i][j] == '#') {
        for (int k = 0; k < (4); ++k) {
          int x = i + dx[k];
          int y = j + dx[k];
          if (x >= 0 && x < h && y >= 0 && y < w) match++;
          if (x >= 0 && x < h && y >= 0 && y < w && map[i][j] == '.') cnt++;
        }
        if (match == cnt) r = "No";
      }
    }
  }
  cout << r << endl;
  return 0;
}
