#include <bits/stdc++.h>
using namespace std;
int main() {
  int h, w, i, j, flag;
  char map[50][50];
  cin >> h >> w;
  for (i = 0; i < w; i++)
    for (j = 0; j < h; j++) {
      cin >> map[j][i];
    }
  for (i = 0; i < w; i++)
    for (j = 0; j < h; j++) {
      flag = 0;
      if (i == 0 && map[j][i] == '#') {
        if (map[j - 1][i] == '.' && map[j + 1][i] == '.' &&
            map[j][i + 1] == '.') {
          flag = 1;
          break;
        }
      } else if (i == h - 1 && map[j][i] == '#') {
        if (map[j][i - 1] == '.' && map[j - 1][i] == '.' &&
            map[j + 1][i] == '.') {
          flag = 1;
          break;
        }
      } else if (j == 0 && map[j][i] == '#') {
        if (map[j][i - 1] == '.' && map[j + 1][i] == '.' &&
            map[j][i + 1] == '.') {
          flag = 1;
          break;
        }
      } else if (j == w && map[j][i] == '#') {
        if (map[j][i - 1] == '.' && map[j - 1][i] == '.' &&
            map[j][i + 1] == '.') {
          flag = 1;
          break;
        }
      } else {
        if (map[j][i - 1] == '.' && map[j - 1][i] == '.' &&
            map[j + 1][i] == '.' && map[j][i + 1] == '.') {
          flag = 1;
          break;
        }
      }
    }
  if (flag)
    cout << "No";
  else
    cout << "Yes";
  return 0;
}
