import           Data.Char (chr)
import           Data.List (unfoldr)

readInt  = readLn :: IO Int

main :: IO ()
main = do
  n <- readInt
  putStrLn $ reverse $ solve n

solve :: Int -> String
solve n = unfoldr twoSix n
  where
    twoSix k | k == 0    = Nothing
             | otherwise = Just (f (k `mod` 26), k `div` 26)
    f x | x == 0    = 'z'
        | otherwise = chr (96 + x)
