#include <bits/stdc++.h>
using namespace std;
bool dp[50][51];
int main() {
  int r, c;
  cin >> r >> c;
  memset(dp, 0, sizeof(dp));
  for (int i = 0; i < r; ++i)
    for (int j = 0; j < c; ++j) {
      char ch;
      cin >> ch;
      if (ch == '#') dp[i][j] = 1;
    }
  bool ans = 1;
  for (int i = 0; i < r; ++i)
    for (int j = 0; j < c; ++j) {
      if (dp[i][j]) {
        if (i - 1 >= 0 && dp[i - 1][j]) continue;
        if (i + 1 < r && dp[i + 1][j]) continue;
        if (j - 1 > -0 && dp[i][j - 1]) continue;
        if (j + 1 < c && dp[i][j + 1]) continue;
        ans = 0;
        break;
      }
    }
  if (ans)
    cout << "Yes" << endl;
  else
    cout << "No" << endl;
  return 0;
}
