{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE BangPatterns #-} import Control.Applicative import Control.Monad import Control.Arrow import Data.List import Data.Maybe import Data.Char import qualified Data.ByteString.Char8 as B import Text.Printf import Debug.Trace --import Network.CGI.Protocol ????????? replace' _ _ [] = [] replace' a b (x:xs) | x == a = b : replace' a b xs | otherwise = x : replace' a b xs readInt = ( readLn :: IO Int ) readInts = map ( read :: String -> Int ) . words <$> getLine getList = map ( fst . fromJust . B.readInt ) . B.words <$> B.getLine which a b f = if f then a else b mp [ a, b ] = ( a, b ) main = getLine >>= putStrLn . foldl1 (.) ( ( ( $ '1' ) <$> map replace' "Il" ) ++ ( ( $ '0' ) <$> map replace' "Oo" ) )