#include <bits/stdc++.h>
using namespace std;
int n, m;
char c[100][100];
bool col[100];
int main() {
  cin >> n >> m;
  for (int i = 1; i <= n; ++i)
    for (int j = 1; j <= m; ++j) cin >> c[i][j];
  bool good = true;
  for (int j = 1; j <= m && good; ++j)
    for (int i = 1; i <= n && good; ++i)
      if (c[i][j] == '#') {
        for (int k = j + 1; k <= m; ++k)
          if (c[i][k] == '#' && !col[k]) {
            for (int t = 1; t <= n; ++t)
              if (c[t][j] != c[t][k]) {
                good = false;
                break;
              }
          }
        if (!good) break;
      }
  if (good)
    cout << "Yes";
  else
    cout << "No";
  return 0;
}
