#include <bits/stdc++.h>
using namespace std;
int main() {
  int h, w;
  cin >> h >> w;
  vector<vector<char> > s(h, vector<char>(w, '#'));
  for (long long i = 0; i < h; i++) {
    string tmp;
    cin >> tmp;
    for (long long j = 0; j < w; j++) {
      s[i][j] = tmp[j];
    }
  }
  int dx[4] = {0, 1, 0, -1};
  int dy[4] = {-1, 0, 1, 0};
  for (long long i = 0; i < h; i++) {
    for (long long j = 0; j < w; j++) {
      for (long long k = 0; k < 4; k++) {
        if (i + dy[k] > -1 && i + dx[k] > -1 && i + dy[k] < h &&
            i + dx[k] < w) {
          if ((s[i + dy[k]][j + dx[k]] == '#' && s[i][j] == '#') ||
              (s[i + dy[k]][j + dx[k]] == '1' && s[i][j] == '#') ||
              (s[i + dy[k]][j + dx[k]] == '#' && s[i][j] == '1')) {
            s[i + dy[k]][j + dx[k]] = '1';
            s[i][j] = '1';
          }
        }
      }
    }
  }
  for (long long i = 0; i < h; i++) {
    for (long long j = 0; j < w; j++) {
      if (s[i][j] != '.') {
        cout << "No" << endl;
        return 0;
      }
    }
  }
  cout << "Yes" << endl;
  return 0;
}
