package main

import (
	"fmt"
)

type pair struct {
	x, y int
}

func grid(h, w int, input []string) string {
	for i := range input {
		for j := range input[i] {
			var valid bool
			for _, p := range []pair{{-1, 0}, {1, 0}, {0, 1}, {0, -1}} {
				x := i + p.x
				y := j + p.y
				if x < 0 || h <= x || y < 0 || w <= y {
					continue
				}
				if input[x][y] == '#' {
					valid = true
				}
			}
			if valid != true {
				return "No"
			}
		}
	}
	return "Yes"
}

func main() {
	var h, w int
	fmt.Scan(&h, &w)
	input := make([]string, h)
	for i := range input {
		fmt.Scan(&input[i])
	}
	fmt.Println(grid(h, w, input))
}
