import Control.Applicative
import Control.Monad

oddRow :: Int -> Int -> [String]
oddRow 0 _ = []
oddRow h w =
  if odd w
    then (concat (replicate (w `div` 2) "#.") ++ "#") : evenRow (h-1) w
  else
    concat (replicate (w `div` 2) "#.") : evenRow (h-1) w

evenRow :: Int -> Int -> [String]
evenRow 0 _ = []
evenRow h w =
  if odd w
    then (concat (replicate (w `div` 2) ".#") ++ ".") : oddRow (h-1) w
  else
    concat (replicate (w `div` 2) ".#") : oddRow (h-1) w


solver :: Int -> Int -> [String]
solver = oddRow

main :: IO()
main = do
  (h:w:_) <- map (read :: String -> Int) . words <$> getLine
  unless (h == 0 && w == 0) $ do
    mapM_ putStrLn $ solver h w
    putStrLn ""
    main