#include <bits/stdc++.h>
using namespace std;
int main() {
  int h, w;
  int starth, startw;
  cin >> h >> w;
  int** array = new int*[h];
  for (int i = 0; i < h; i++) {
    array[i] = new int[w];
  }
  for (int i = 0; i < h; i++)
    for (int j = 0; j < w; j++) {
      char tmp;
      cin >> tmp;
      if (tmp == '#')
        array[i][j] = 1;
      else
        array[i][j] = 0;
    }
  for (int i = 0; i < h; i++) {
    for (int j = 0; j < w; j++) {
      bool flag = false;
      if (array[i][j] == 1) {
        if ((i == 0) || (i == h - 1) || (j == 0) || (j == w - 1)) {
          if (i == 0) {
            if (array[1][j] == 1) flag = true;
          }
          if (i == h - 1) {
            if (array[h - 2][j] == 1) flag = true;
          }
          if (j == 0) {
            if (array[i][1] == 1) flag = true;
          }
          if (j == w - 1) {
            if (array[i][w - 2] == 1) flag = true;
          }
        } else if ((array[i][j + 1] == 1) || (array[i][j + 1] == 1) ||
                   (array[i - 1][j] == 1) || (array[i + 1][j] == 1))
          flag = true;
        if (flag == false) {
          cout << "NO";
          return 0;
        }
      }
    }
  }
  cout << "Yes" << endl;
  return 0;
}
