import Control.Applicative ((<$>)) import Data.List (unfoldr) import Data.Char (ord, chr) main :: IO () main = solve <$> readLn >>= putStrLn solve :: Int -> String solve n = reverse $ unfoldr f (n+1) where f x | x == 0 = Nothing | r == 0 = Just ('Z', q-1) | otherwise = Just (chr (ord 'A' - 1 + r), q) where (q, r) = divMod x 26