import Control.Applicative
import Data.List

main = do hws <- (map read) . (concatMap words) . lines <$> getContents
          putStr . unlines $ map unlines (solve hws)

solve :: [Int] -> [[String]]
solve (h:w:res) | h == 0 && w == 0 = []
                | otherwise = makeBoard 1 h w : solve res

makeBoard :: Int -> Int -> Int -> [String]
makeBoard l h w | l == (h+1) = []
                | l `mod` 2 == 1 = (take w . concat $ repeat "#.") : makeBoard (l+1) h w
                | l `mod` 2 == 0 = (take w . concat $ repeat ".#") : makeBoard (l+1) h w