import Control.Monad xs = do a <- [1..10] b <- [1..10] guard (even (a * b)) return ((a, b), a * b) main = mapM print xs