import std.conv, std.stdio;
import std.algorithm, std.array, std.range, std.string;
enum p = 26;

void main()
{
    (readln.chomp.to!ulong - 1).solve.writeln;
}

private:

auto solve(ulong n)
{
    long a = p;
    auto i = 1;
    while (a <= n)
    {
        n -= a;
        a *= p;
        i += 1;
    }
    return n.to26ary(i);
}

unittest
{
    foreach (i; 0..1000)
        i.solve.write(" ");
    foreach (i; 999_9999_9999_9000..1000_0000_0000_0002)
        i.solve.write(" ");
}

auto to26ary(ulong n, int i)
{
    string ret;
    foreach (_; 0..i)
    {
        ret = cast(char)('a' + (n % p)) ~ ret;
        n /= p;
    }
    return ret;
}
