#include <bits/stdc++.h>
using namespace std;
using P = pair<int, int>;
int main() {
  int h, w;
  cin >> h >> w;
  vector<vector<string>> vec(h + 2, vector<string>(w + 2));
  for (int i = 0; i < h + 2; i++) {
    for (int j = 0; j < w + 2; j++) {
      vec.at(i).at(j) = "*";
    }
  }
  string s;
  for (int i = 1; i < h + 1; i++) {
    cin >> s;
    for (int j = 1; j < w + 1; j++) {
      vec.at(i).at(j) = s[j - 1];
    }
  }
  for (int i = 1; i < h + 1; i++) {
    for (int j = 1; j < w + 1; j++) {
      if (vec.at(i).at(j) == "#") {
        bool flag = true;
        if (vec.at(i - 1).at(j) == "#") break;
        if (vec.at(i).at(j - 1) == "#") break;
        if (vec.at(i).at(j + 1) == "#") break;
        if (vec.at(i + 1).at(j) == "#") break;
        cout << "No" << endl;
        return 0;
      }
    }
  }
  cout << "Yes" << endl;
  return 0;
}
