import Data.Char

main :: IO ()
main = do
    n <- readLn 
    let res = stack n []
    putStrLn res
        where
            numToChar n = chr $ n + (ord 'a') - 1
            stack n xs
                | n == 0 = xs
                | n <= 26 = (numToChar n) : xs
                | otherwise = 
                    let q = (n - 1) `div` 26
                        r = n `mod` 26
                        c = numToChar $ if r == 0 then 26 else r
                    in  stack q (c : xs)