#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vi = vector<int>;
using pii = pair<int, int>;
const int MAXN = 55;
int n, m;
string s[MAXN];
bool read() {
  if (!(cin >> n >> m)) {
    return 0;
  }
  for (int i = 0; i < int(n); ++i) {
    cin >> s[i];
  }
  return 1;
}
bool solve() {
  sort(s, s + n);
  n = unique(s, s + n) - s;
  vi used(m, 0);
  for (int i = 0; i < int(n); ++i) {
    for (int j = 0; j < int(m); ++j) {
      if (s[i][j] == '#') {
        if (used[j]) {
          return 0;
        }
        used[j] = 1;
      }
    }
  }
  return 1;
}
int main() {
  while (read()) {
    cout << (solve() ? "Yes" : "No") << '\n';
  }
  return 0;
}
