#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> P;
#define rep(i,n) for(int i = 0; i < (n); ++i)
int h, w;
vector<vector<bool>> flg(51, vector<bool>(51));
vector<vector<char>> hw(51, vector<char>(51));
int cnt = 0;
void dfs ( int x, int y ) {
    if ( x < 0 || x >= w || y < 0 || y >= h ) return;
    if ( flg[y][x] ) return;
    if ( hw[y][x] == '.' ) return;
    flg[y][x] = true;
    ++cnt;
    dfs(x+1, y);
    dfs(x-1, y);
    dfs(x, y+1);
    dfs(x, y-1);
    return;
}
int main() {
    cin >> h >> w;
    if ( h == 1 && w == 1 ) {
        if ( h[0][0] == '.' ) cout << "Yes" << endl;
        else                  cout << "No" << endl;
        return 0;
    }
    rep(i, h) rep(j, w) cin >> hw[i][j];
    rep(i, h) rep(j, w) {
        if ( !flg[i][j] && hw[i][j] == '#' ) {
            cnt = 0;
            dfs(i, j);
            if ( cnt == 1 ) {
                cout << "No" << endl;
                return 0;
            }
        }
    }
    cout << "Yes" << endl;
}
