object Main {
  def main(args: Array[String]): Unit = {
    import scala.io.StdIn.readLine
    val Array(datH, datW) = readLine.split(" ").map(_.toInt)
    val board = for(i <- 1 to datH) yield readLine.split("").filterNot(_ == "").map(_(0))

    def searchGrid(x: Int, y: Int): Boolean = {
      if (board(y)(x) == '.') true
      else {
        val checkN = if (y <= 0       ) false else (board(y - 1)(x    ) == '#')
        val checkS = if (y >= datH - 1) false else (board(y + 1)(x    ) == '#')
        val checkW = if (x <= 0       ) false else (board(y    )(x - 1) == '#')
        val checkE = if (x >= datW - 1) false else (board(y    )(x + 1) == '#')
        (checkN || checkS || checkW || checkE)
      }
    }
    val checker = for(x <- 0 until datW; y <- 0 until datH) yield searchGrid(x, y)
    //checker.grouped( datW ).foreach(a => println (a.mkString))
    val ans = checker.forall(a => a)
    println(if (ans) "Yes" else "No")
  }
}
