#include <bits/stdc++.h>
using namespace std;
int d[5] = {0, -1, 0, 1, 0};
int main() {
  int h, w;
  cin >> h >> w;
  vector<string> b(50);
  for (int i = 0; i < h; i++) {
    cin >> b[i];
  }
  for (int i = 0; i < h; i++) {
    for (int j = 0; j < w; j++) {
      int c = 0;
      if (b[i][j] != '#') continue;
      for (int k = 0; k < 4; k++) {
        if (i + d[k] < 0 || i + d[k] >= h) continue;
        if (j + d[k + 1] < 0 || j + d[k + 1] >= w) continue;
        if (b[i + d[k]][j + d[k + 1]] != '#') {
          cout << "No" << endl;
          return 0;
        }
      }
    }
  }
  cout << "Yes" << endl;
  return 0;
}
