#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int h, w, cnt;
string s[50];
int dx[4] = {1, 0, -1, 0};
int dy[4] = {0, 1, 0, -1};
bool ans = 1;
int main() {
  cin >> h >> w;
  for (int i = 0; i < (int)(h); i++) cin >> s[i];
  for (int i = 0; i < (int)(h); i++)
    for (int j = 0; j < (int)(w); j++) {
      if (s[i][j] == '.') continue;
      cnt = 1;
      for (int dir = 0; dir < (int)(4); dir++) {
        if (i + dx[dir] >= 0 && j + dy[dir] >= 0) {
          if (s[i + dx[dir]][j + dy[dir]] == '#') cnt++;
        }
      }
      if (cnt < 2) ans = 0;
    }
  cout << ((ans) ? "Yes" : "No") << endl;
}
