import Data.Char (ord, chr) unUsa :: String -> String unUsa = zipWith leftShift [1 ..] where ai = ord 'A' leftShift n c = chr $ (+) ai $ flip mod 26 $ ord c - ai + 26 - n main :: IO () main = putStrLn . unUsa =<< getLine