import std.stdio, std.string, std.string;

void main()
{
  long h, w;
  readf("%d %d\n", &h, &w);
  string[] s;
  foreach (_; 0..h) {
    s ~= readln.strip();
  }
  foreach (y; 0..h) {
    foreach (x; 0..w) {
      if (s[y][x] == '.') {
        continue;
      }
      auto dx = [0, -1, 1, 0];
      auto dy = [-1, 0, 0, 1];

      bool flag = false;
      foreach (i; 0..4) {
        auto x2 = x + dx[i], y2 = y + dy[i];
        if (x2 < 0 || y2 < 0 || w <= x2 || h <= y2) {
          continue;
        }
        if (s[y2][x2] == '#') {
          flag = true;
          break;
        }
      }

      if (!flag) {
        writeln("No");
        return;
      }

    }
  }
  writeln("Yes");
}
