--fromEnum c
-- | c == 'a'  = 97
-- | c == 'z'  = 122
-- | c == 'A'  = 65
-- | c == 'Z'  = 90
-- | c == '.'  = 46
-- | c == ' '  = 32
-- | c == '\n' = 10

rotate :: Int -> Char -> Char
rotate i c
  | fromEnum c == 46 = c  -- c == '.'
--  | fromEnum c == 10 = c  -- c == '\n'
  | otherwise        = toEnum $ (fromEnum c - 65 + i) `mod` 26 + 65

caesar :: Int -> String -> String
caesar _ [] = []
caesar i (x:xs) = rotate i x : caesar i xs

main :: IO()
main = do
  line <- getLine
  putStrLn $ caesar (-3) line