#include <bits/stdc++.h>
using namespace std;
int main() {
  int H, W;
  cin >> H >> W;
  bool flag;
  vector<string> board(H);
  for (int i = 0; i < (int)(H); i++) cin >> board[i];
  int di[2] = {-1, 1};
  int dj[2] = {-1, 1};
  for (int i = 0; i < (int)(H); i++) {
    for (int j = 0; j < (int)(W); j++) {
      if (board[i][j] == '.') continue;
      flag = false;
      for (int d = 0; d < 2; d++) {
        int ni = i + di[d];
        int nj = j + dj[d];
        if (ni < 0 || H <= ni) continue;
        if (nj < 0 || W <= nj) continue;
        if (board[i][j] = '#') {
          flag = true;
          break;
        }
      }
      if (flag == false) break;
    }
    if (flag == false) break;
  }
  if (flag)
    cout << "Yes" << endl;
  else
    cout << "No" << endl;
  return 0;
}
