9 5
.....
#....
..#..
.....
.#..#
...#.
.#...
....#
.....
 4 10
..#......#
.....##...
#.........
.#.......#
 50 2
..
..
#.
..
.#
..
..
..
.#
..
..
.#
##
..
..
..
.#
..
..
.#
..
..
.#
..
..
.#
..
.#
..
.#
..
.#
.#
.#
..
..
..
.#
.#
.#
..
..
.#
.#
..
..
..
..
..
..
 2 50
...#.##.###...#.#..##....##..........#.#..#.#####.
...#.##.###...#.#..##....##..........#.#..#.#####.
 1 1
#
 3 3
.##
#.#
##.
 50 8
.....#..
........
........
.....#..
.....#..
........
........
........
........
...#....
...#....
........
...#....
#.#.#...
...#....
...#....
........
...#....
...#....
...#....
........
#.#.#...
.....#..
........
#.#.#...
#.#.#...
#.#.#...
...#....
........
........
........
#.#.#...
........
.....#..
........
........
........
........
........
........
.....#..
........
........
........
.....#..
#.#.#...
...#....
........
........
........
 1 1
.
 25 16
.............#..
.............#..
.......#...#....
............#...
.....#..........
.....#..........
#...............
................
........#.......
................
................
.#..............
#...............
.....#..........
.#..............
............#...
................
................
................
........#.......
..#.............
..........#.....
.......#...#....
.............#..
..........#.....
 25 16
..............#.
................
...#...#........
........#.#.....
..............##
..............#.
.......#........
......#.........
............#...
.........#.....#
..............#.
.......#........
#...........#...
...#.#..........
.#..............
................
......#.....#...
.......#........
........#.....#.
................
......#.........
..#.............
................
...#.#..........
.#..............
 10 15
.......#.......
.....#.........
....#..........
....#..........
.....#.........
.....#.........
#.............#
...#..#........
...............
.............#.
 4 10
###..#..##
...##..#..
.##..#..#.
.........#
 2 5
.####
#..##
 5 2
##
##
..
##
..
 2 2
##
#.
 50 1
.
.
#
.
#
.
#
.
.
#
#
#
.
#
#
#
#
.
.
.
.
.
.
.
.
.
#
#
#
#
.
.
.
.
.
#
.
.
.
#
#
.
.
#
#
.
.
#
#
.
 5 2
#.
##
##
#.
..
 2 3
#.#
###
 2 1
.
#
 2 3
#.#
##.
 10 10
..........
..........
..........
..........
.#.......#
#.........
......#...
..........
..........
#.....#...
 4 4
###.
##.#
#.##
.###

No
 No
 No
 Yes
 Yes
 No
 Yes
 Yes
 Yes
 No
 Yes
 No
 No
 Yes
 No
 Yes
 No
 No
 Yes
 No
 No
 No

import java.io.File;
import java.io.FileNotFoundException;
import java.util.*;

public class cf924 {
    public boolean solve2(char[][] grid) {
        Set<Long> rowSet = new LinkedHashSet<>();
        for (char[] row : grid) {
            long mask = 0L;
            for (int col = 0; col < row.length; col++) {
                if (row[col] == '#') {
                    mask += 1L << col;
                }
            }
            if (mask > 0) {
                rowSet.add(mask);
            }
        }

        long mask = 0L;
        for (long rowMask : rowSet) {
            if ((mask & rowMask) > 0) {
                return false;
            }
            mask += rowMask;
        }

        return true;
    }
    public static void solve3() {
        Scanner scan = new Scanner(System.in);
        int R = scan.nextInt();
        int C = scan.nextInt();
        scan.nextLine();
        Set<Long> rowSet = new LinkedHashSet<>();
        for (int i = 0; i < R; i++) {
            String row = scan.nextLine();
            long mask = 0L;
            for (int col = 0; col < row.length(); col++) {
                if (row.charAt(col) == '#') {
                    mask += 1L << col;
                }
            }
            if (mask > 0) {
                rowSet.add(mask);
            }
        }

        long mask = 0L;
        for (long rowMask : rowSet) {
            if ((mask & rowMask) > 0) {
                System.out.println("No");
                return;
            }
            mask += rowMask;
        }

        System.out.println("Yes");
    }

    public String solve(char[][] grid) {
//        for (char[] row : grid) {
//            System.out.println(Arrays.toString(row));
//        }
        Set<Integer> validRow = new HashSet<>();
        Set<Integer> validCol = new HashSet<>();
        for (int row = 0; row < grid.length; row++) {
            for (int col = 0; col < grid[0].length; col++) {
                if (grid[row][col] == '#') {
                    validRow.add(row);
                    validCol.add(col);
                }
            }
        }

        for (int row = 0; row < grid.length; row++) {
            if (!validRow.contains(row)) {
                continue;
            }
            validRow.remove(row);
            for (int matchingRow = row + 1; matchingRow < grid.length; matchingRow++) {
                if (rowMathces(grid, row, matchingRow)) {
                    if (validRow.contains(matchingRow)) {
                        validRow.remove(matchingRow);
                    } else {
                        return "No";
                    }
                }
            }

            for (int col = 0; col < grid[row].length; col++) {
                if (grid[row][col] == '#') {
                    if (validCol.contains(col)) {
                        validCol.remove(col);
                    } else {
                        return "No";
                    }
                }
            }
        }
        return "Yes";
    }

    private boolean rowMathces(char[][] grid, int row, int matchingRow) {
        for (int col = 0; col < grid[row].length; col++) {
            if (grid[row][col] != grid[matchingRow][col]) {
                return false;
            }
        }
        return true;
    }


    public static void main(String[] args) throws FileNotFoundException {
//        Scanner scan = new Scanner(System.in);
//        int R = scan.nextInt();
//        int C = scan.nextInt();
//        scan.nextLine();
//        char[][] grid = new char[R][C];
//        for (int i = 0; i < R; i++) {
//            grid[i] = scan.nextLine().toCharArray();
//        }
//
//        cf924 sol = new cf924();
//        System.out.println(sol.solve(grid));
        solve3();

    }
}
