#include <cstdio>
#include <vector>
#include <algorithm>
#include <unordered_map>
#include <string>
#include <cstdlib>
#include <iostream>
#include <cmath>

using namespace std;

int main() {
  int h,w;
  cin>>h>>w;
  string ss[50];
  for(int i=0;i<h;++i) {
    cin>>ss[i];
  }
  for(int j=0;j<h;++j) {
    for(int i=0;i<w;++i) {
      bool f=
        (ss[j][i]=='.')
        || (i>0&&ss[j][i-1]=='#')
        || (j>0&&ss[j-1][i]=='#')
        || (i<w-1&&ss[j][i+1]=='#')
        || (j<h-1&&ss[j+1][i]=='#');
      if(!f) {
        cout<<"No"<<endl;
        return;
      }
    }
  }
  cout<<"Yes"<<endl;
}
