import Data.List.Split main :: IO () main = do getLine a <- map parse . lines <$> getContents let (i, p) = (sum $ map fst a, sum $ map snd a) let s = show(10^10 * i + p) putStrLn s parse :: String -> (Integer, Integer) parse = zipInt . splitWhen (== '.') zipInt :: [String] -> (Integer, Integer) zipInt [a, b] = (read a, readPoint b) zipInt [a] = (read a, 0) readPoint :: String -> Integer readPoint = read . take 10 . (++ repeat '0')