using System;
using System.Text;
using System.Collections.Generic;
using System.Linq;
using E = System.Linq.Enumerable;
 
class Program
 {
  static string[] map;
  static int H;
  static int W;
        static void Main(string[] args)
        {
          //入力を受け取る
          var HW = Console.ReadLine().Split(' ').Select(x => int.Parse(x)).ToArray();
          H = HW[0];
          W = HW[1];
          map = new string[H];
          
          //キャンバスの情報を登録
          for(int i = 0; i < H ; i++){
            map[i] = Console.ReadLine();
          }
          
          bool flag = true;
          //全数探索で絵を描けるかどうかを調べる
          for(int i = 0; i < H ; i++){
            for(int j = 0; j < W ; j++){
              //4方向を調べる
              if(map[i][j] == '#' && !PossibleDraw(i,j)){
                flag = false;
                break;
              }
            }
            if(flag){
              break;
            }
          }
          if(H == 1 && W == 1){
            if(map[0][0] == '#'){
              Console.WriteLine("Yes");
            }else{
              Console.WriteLine("No");
            }
          }
          else if(flag){
            Console.WriteLine("Yes");
          }else{
            Console.WriteLine("No");
          }
        }
  
  static bool PossibleDraw(int i,int j){
    //左を見る
    if(j > 0 &&map[i][j-1] == '#'){
      return true;
    }
    //右を見る
    if(j < W-1 &&map[i][j+1] == '#'){
      return true;
    }
    //上を見る
    if(i > 0 &&map[i-1][j] == '#'){
      return true;
    }
    //下を見る
    if(i < H-1 &&map[i+1][j] == '#'){
      return true;
    }
    return false;
  }
}
