> lines' :: String -> [String] > lines' [] = [] > lines' (x:xs) = > case x of > '\n' -> "" : (lines' xs) > _ -> case (lines' xs) of > [] -> [[x]] > (ys:yss) -> (x:ys) : yss > main = interact (unlines . lines')