{
    // Your code here!
    int b,c,ans=0,preans=0;
    cin>>b>>c;
    char a[b+1][c+1];
    for(int i=0;i<b;i++){
        a[0][i]=='+';
    }
    for(int i=0;i<c;i++){
        a[i][0]=='+';
    }
    for(int i=1;i<b+1;i++){
        for(int j=1;j<c+1;j++){
            cin>>a[i][j];
            if(a[i][j]=='#'){
                preans++;
            }
        }
    }
    for(int i=1;i<b+1;i++){
        for(int j=1;j<c+1;j++){
            if(a[i][j]!='.' && (a[i-1][j]=='#'||a[i][j-1]=='#'||a[i][j+1]=='#' ||a[i+1][j]=='#') ){
                ans++;
            }        
        }

    }
    if(preans==ans){
        cout<<"Yes"<<endl;
    }else{
        cout<<"No"<<endl;
    }
    
}