#include <bits/stdc++.h>
using namespace std;
const double PI = acos(-1.0);
int dx[4] = {1, -1, 0, 0};
int dy[4] = {0, 0, 1, -1};
int main() {
  int h, w;
  cin >> h >> w;
  string s[50];
  for (int(i) = 0; (i) < (h); (i)++) cin >> s[i];
  for (int(i) = 0; (i) < (h); (i)++) {
    for (int(j) = 0; (j) < (w); (j)++) {
      if (s[i][j] == '.') continue;
      bool find = false;
      for (int(d) = 0; (d) < (4); (d)++) {
        int ni = i + dy[d];
        int nj = j + dx[d];
        if (s[ni][nj] == '#') find = true;
      }
      if (!find) {
        cout << "No" << endl;
        return 0;
      }
    }
  }
  cout << "Yes" << endl;
  return 0;
}
