#include <bits/stdc++.h>
using namespace std;
int main() {
  int h, w;
  cin >> h >> w;
  vector<vector<char>> s(h, vector<char>(w));
  for (int i = 0; i < h; i++) {
    for (int j = 0; j < w; j++) {
      cin >> s.at(i).at(j);
    }
  }
  for (int i = 0; i < h; i++) {
    for (int j = 0; j < w - 1; j++) {
      if (s.at(i).at(j) == '#' && s.at(i).at(j + 1) == '#') {
        s.at(i).at(j) = '$';
        s.at(i).at(j + 1) = '$';
        j += 2;
        while (j < w - 1 && s.at(i).at(j) == '#') {
          s.at(i).at(j) = '$';
          j++;
        }
      }
    }
  }
  for (int i = 0; i < h; i++) {
    for (int j = 0; j < w; j++) {
      if (s.at(i).at(j) == '#') {
        if (i != 0 && i != h - 1) {
          if (s.at(i + 1).at(j) == '.' && s.at(i - 1).at(j) == '.') {
            cout << "No" << endl;
            return 0;
          }
        } else if (i == 0) {
          if (s.at(i + 1).at(j) == '.') {
            cout << "No" << endl;
            return 0;
          }
        } else if (i == h - 1) {
          if (s.at(i - 1).at(j) == '.') {
            cout << "No" << endl;
            return 0;
          }
        }
      }
    }
  }
  cout << "Yes" << endl;
}
