{-# htermination liftM3 :: (a -> b -> c -> d) -> (IO a -> IO b -> IO c -> IO d) #-} import Monad