f :: Int f x | x <- Just x , x <- Just x = case x of Just x -> e | otherwise = do e where x = y g x = case x of a -> x where foo = case x of _ -> do launchMissiles where y = 2