#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 < (long long)(h); i++) {
    string s_;
    cin >> s_;
    for (long long j = 0; j < (long long)(w); j++) {
      s.at(i).at(j) = s_[j];
    }
  }
  string ans = "No";
  int white = 0;
  for (long long i = 0; i < (long long)(h); i++) {
    for (long long j = 0; j < (long long)(w); j++) {
      if (s.at(i).at(j) == '.') {
        white++;
      } else {
        if (i == 0) {
          if (j == 0) {
            if (s.at(i + 1).at(j) == '#' || s.at(i).at(j + 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          } else if (j == w - 1) {
            if (s.at(i + 1).at(j) == '#' || s.at(i).at(j - 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          } else {
            if (s.at(i + 1).at(j) == '#' || s.at(i).at(j - 1) == '#' ||
                s.at(i).at(j + 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          }
        } else if (i == h - 1) {
          if (j == 0) {
            if (s.at(i - 1).at(j) == '#' || s.at(i).at(j + 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          } else if (j == w - 1) {
            if (s.at(i - 1).at(j) == '#' || s.at(i).at(j - 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          } else {
            if (s.at(i - 1).at(j) == '#' || s.at(i).at(j - 1) == '#' ||
                s.at(i).at(j + 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          }
        } else {
          if (j == 0) {
            if (s.at(i - 1).at(j) == '#' || s.at(i + 1).at(j) == '#' ||
                s.at(i).at(j + 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          } else if (j == w - 1) {
            if (s.at(i - 1).at(j) == '#' || s.at(i + 1).at(j) == '#' ||
                s.at(i).at(j - 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          } else {
            if (s.at(i - 1).at(j) == '#' || s.at(i + 1).at(j) == '#' ||
                s.at(i).at(j - 1) == '#' || s.at(i).at(j + 1) == '#')
              ans = "Yes";
            else {
              ans = "No";
              break;
            }
          }
        }
      }
    }
  }
  if (white == h * w) ans = "Yes";
  cout << ans << endl;
  return 0;
}
