(defun get-input-array-string (n)
  (let ((input-array (make-array n)))
    (dotimes (i n)
      (setf (aref input-array i) (read-line)))
    input-array))

(defun main (h w)
  (let* ((rst 0)
         (result "Yes")
         (input-array (get-input-array-string h))
         (search-points '((-1 0) (1 0)
                          (0 -1) (0 1))))
    (loop for x from 0 to (- h 1)
          do (loop for y from 0 to (- w 1)
                   do (setf rst 0)
                   if (string= (aref (aref input-array x) y) #\#)
                   do (progn (loop for sp in search-points
                                   for dx = (car sp)
                                   for dy = (cadr sp)
                                   if (and (>= dx 0) (<= dx (- h 1))
                                           (>= dy 0) (<= dy (- w 1))
                                           (string= (aref (aref input-array dx) dy) #\#))
                                   do (incf rst))
                        (if (= rst 0)
                            (setf result "No")))))
    result))

(format t "~A~%" (main (read) (read)))
