let [| h; w; |] = stdin.ReadLine().Split() |> Array.map int
let cells :char[,] = 
    let cells = Array2D.zeroCreate h w
    for i in 0..h-1 do
        stdin.ReadLine().ToCharArray() |> Seq.mapi (fun j x -> (j,x)) |> Seq.iter( fun (j, x) -> cells.[i,j] <- x)
    cells

// 数が少ないので単なる全探査で
let canColor (y,x) =
    if cells.[y,x]='.' then true
    else
    let height =
        if y = 0 then [y+1]
        elif y = h-1 then [y-1]
        else [y-1; y+1]
    let width =
        if x = 0 then [x+1]
        elif x = w-1 then [x-1]
        else [x-1; x+1]

    [for x2 in width -> (y,x2)
     for y2 in height -> (y2,x)]
    |> Seq.exists(fun (y,x) -> cells.[y,x]='#')
    

Seq.allPairs ([0..h-1]) ([0..w-1])
|> Seq.forall canColor
|>function
| true -> "Yes"
| false -> "No"
|> stdout.WriteLine
