#include<iostream>
#include<algorithm>
#include<string>
using namespace std;

int main(){
    int H,W;
    cin >> H >> W;
    char s[100][100];
    for(int i = 0; i < H; i++){
        for(int j = 0; j < W; j++){
            cin >> s[i][j];
        }
    }

    bool ans = true;
    for(int i=0; i<H; i++){
        if(!ans) break;
        int up = i - 1;
        int down = i + 1;
        for(int j = 0; j < W; j++){
            int right = j + 1;
            int left = j - 1;
            if(s[i][j] == '#'){
                check = true;
                if(up >= 0){
                    if(s[up][j] == '#') break;
                }
            
                if(left >= 0){
                    if(s[i][left] == '#') break;
                }
               
                if(down <= H){
                    if(s[down][j] == '#') break;
                }
                
                if(right <= W){
                    if(s[i][right] == '#') break;
                }
                
                ans = false;
            }
        }
    }
    if(ans) cout << "Yes" << endl;
    else cout << "No" << endl;
}


