#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, m;
  char a[55][55];
  memset(a, 0, sizeof(a));
  scanf("%d%d", &n, &m);
  for (int i = 1; i <= n; i++) {
    for (int j = 1; j <= m; j++) {
      cin >> a[i][j];
    }
  }
  cout << a[1] << endl;
  int r[55], c[55], rn = 0, cn = 0;
  bool rr[55];
  memset(rr, 0, sizeof(rr));
  for (int i = 1; i <= n; i++) {
    rr[i] = 1;
    memset(r, 0, sizeof(r));
    memset(c, 0, sizeof(c));
    rn = cn = 0;
    for (int j = 1; j <= m; j++) {
      if (a[i][j] == '#') {
        c[++cn] = j;
        for (int k = i + 1; k <= n; k++) {
          if (a[k][j] == '#' && !rr[k]) {
            rr[k] = 1;
            r[++rn] = k;
          }
        }
      }
    }
    for (int j = 1; j <= rn; j++) {
      for (int k = 1; k <= cn; k++) {
        if (a[r[j]][c[k]] != '#') {
          cout << "No\n";
          return 0;
        }
      }
      int num = 0;
      for (int k = 1; k <= m; k++) {
        if (a[r[j]][k] == '#') {
          num++;
        }
      }
      if (num != cn) {
        cout << "No\n";
        return 0;
      }
    }
  }
  cout << "Yes\n";
  return 0;
}
