import Data.List

main :: IO ()
main = mapM_ putStrLn $ solve

solve :: [String]
solve = foldr ff [] $ zip a b
    where
        a = foldr (\x acc -> replicate 9 x ++ acc) [] [1..9]
        b = cycle [1..9]

ff :: (Int, Int) -> [String] -> [String]
ff (a, b) acc = (show a ++ "x" ++ show b ++ "=" ++ show (a * b)) : acc