#include <bits/stdc++.h>
using namespace std;
int main() {
  int H, W;
  cin >> H >> W;
  vector<vector<char>> S(H, vector<char>(W));
  for (int i = 0; i < H; i++) {
    for (int j = 0; j < W; j++) {
      cin >> S.at(i).at(j);
    }
  }
  bool a = 1;
  for (int i = 0; i < H; i++) {
    for (int j = 0; j < W; j++) {
      if (S.at(i).at(j) == '#') {
        if (i == 0 && j == 0) {
          if (H > 1 && W > 1) {
            if (S.at(i + 1).at(j) == '.' && S.at(i).at(j + 1) == '.') {
              a = 0;
            }
          }
          if (H = 1 && W > 1) {
            if (S.at(i).at(j + 1) == '.') {
              a = 0;
            }
          }
          if (H > 1 && W == 1) {
            if (S.at(i + 1).at(j) == '.') {
              a = 0;
            }
          }
        } else if (i == 0 && j == W - 1) {
          if (H > 1) {
            if (S.at(i + 1).at(j) == '.' && S.at(i).at(j - 1) == '.') {
              a = 0;
            }
          }
          if (H = 1) {
            if (S.at(i).at(j - 1) == '.') {
              a = 0;
            }
          }
        } else if (i == H - 1 && j == 0) {
          if (W > 1) {
            if (S.at(i - 1).at(j) == '.' && S.at(i).at(j + 1) == '.') {
              a = 0;
            }
          }
          if (W = 1) {
            if (S.at(i - 1).at(j) == '.') {
              a = 0;
            }
          }
        } else if (i == H - 1 && j == W - 1) {
          if (S.at(i - 1).at(j) == '.' && S.at(i).at(j - 1) == '.') {
            a = 0;
          }
        } else if (i == 0) {
          if (H > 1) {
            if (S.at(i).at(j - 1) == '.' && S.at(i).at(j + 1) == '.' &&
                S.at(i + 1).at(j) == '.') {
              a = 0;
            }
          }
          if (H == 1) {
            if (S.at(i).at(j - 1) == '.' && S.at(i).at(j + 1) == '.') {
              a = 0;
            }
          }
        } else if (i == H - 1) {
          if (S.at(i).at(j - 1) == '.' && S.at(i).at(j + 1) == '.' &&
              S.at(i - 1).at(j) == '.') {
            a = 0;
          }
        } else if (j == 0) {
          if (W > 1) {
            if (S.at(i - 1).at(j) == '.' && S.at(i + 1).at(j) == '.' &&
                S.at(i).at(j + 1) == '.') {
              a = 0;
            }
          }
          if (W == 1) {
            if (S.at(i - 1).at(j) == '.' && S.at(i + 1).at(j) == '.') {
              a = 0;
            }
          }
        } else if (j == W - 1) {
          if (S.at(i - 1).at(j) == '.' && S.at(i + 1).at(j) == '.' &&
              S.at(i).at(j - 1) == '.') {
            a = 0;
          }
        } 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) == '.') {
            a = 0;
          }
        }
      }
    }
  }
  if (a) {
    cout << "Yes" << endl;
  } else {
    cout << "No" << endl;
  }
}
