#include <bits/stdc++.h>
using namespace std;
int main() {
  int H, W;
  cin >> H >> W;
  char s[H][W];
  for (int i = 0; i < H; ++i) {
    for (int j = 0; j < W; ++j) {
      cin >> s[i][j];
    }
  }
  int flag = 0;
  bool can = false;
  int deltaX[4] = {1, 0, -1, 0};
  int deltaY[4] = {0, 1, 0, -1};
  for (int i = 0; i < H; ++i) {
    for (int j = 0; j < W; ++j) {
      if (s[i][j] == '#') {
        flag = 1;
        for (int k = 0; k < 4; ++k) {
          int dx = i + deltaX[k];
          int dy = j + deltaX[k];
          if ((dx < 0) || (dy > H - 1) || (dy < 0) || (dx > W - 1)) {
            continue;
          }
          if (s[dx][dy] == '#') {
            can = true;
            break;
          }
        }
      }
      if ((flag == 1) && (can = false)) {
        cout << "No\n";
        return 0;
      }
      flag = 0;
      can = false;
    }
  }
  cout << "Yes\n";
  return 0;
}
