#include <bits/stdc++.h>
using namespace std;
vector<vector<int>> t(55);
vector<int> cols(55);
vector<int> taken(55);
int main() {
  int m, n;
  cin >> n >> m;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
      char c;
      cin >> c;
      if (c == '.') {
        t[i].push_back(0);
      } else {
        t[i].push_back(1);
      }
    }
  }
  for (int i = 0; i < n; i++) {
    if (taken[i]) continue;
    for (int j = 0; j < m; j++) {
      if (t[i][j]) {
        if (cols[j]) {
          cout << "NO";
          return 0;
        } else {
          cols[j] = 1;
        }
      }
    }
    for (int j = i + 1; j < n; j++) {
      if (t[i] == t[j]) taken[j] = 1;
    }
  }
  cout << "YES";
  return 0;
}
