import java.util.*;

public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);

        long n = sc.nextLong();

        System.out.println(base26(n));

    }

    static String base26(long n) {
        StringBuilder buf = new StringBuilder();
        while (n != 0) {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        }
        return buf.reverse().toString();
    }

} import java.util.*; util.* java public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);

        long n = sc.nextLong();

        System.out.println(base26(n));

    }

    static String base26(long n) {
        StringBuilder buf = new StringBuilder();
        while (n != 0) {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        }
        return buf.reverse().toString();
    }

} Main public static void main(String[] args){
        Scanner sc = new Scanner(System.in);

        long n = sc.nextLong();

        System.out.println(base26(n));

    } main {
        Scanner sc = new Scanner(System.in);

        long n = sc.nextLong();

        System.out.println(base26(n));

    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) long n = sc.nextLong(); n sc.nextLong() sc.nextLong sc System.out.println(base26(n)) System.out.println System.out System System.out base26(n) base26 n String[] args args static String base26(long n) {
        StringBuilder buf = new StringBuilder();
        while (n != 0) {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        }
        return buf.reverse().toString();
    } base26 {
        StringBuilder buf = new StringBuilder();
        while (n != 0) {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        }
        return buf.reverse().toString();
    } StringBuilder buf = new StringBuilder(); buf new StringBuilder() while (n != 0) {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        } n != 0 n 0 {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        } buf.append((char) ((n - 1) % 26 + 'a')) buf.append buf (char) ((n - 1) % 26 + 'a') (n - 1) % 26 (n - 1) n 1 26 'a' n = (n - 1) / 26 n (n - 1) / 26 (n - 1) n 1 26 return buf.reverse().toString(); buf.reverse().toString() buf.reverse().toString buf.reverse() buf.reverse buf long n n public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);

        long n = sc.nextLong();

        System.out.println(base26(n));

    }

    static String base26(long n) {
        StringBuilder buf = new StringBuilder();
        while (n != 0) {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        }
        return buf.reverse().toString();
    }

} public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);

        long n = sc.nextLong();

        System.out.println(base26(n));

    }

    static String base26(long n) {
        StringBuilder buf = new StringBuilder();
        while (n != 0) {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        }
        return buf.reverse().toString();
    }

} Main
import java.util.*;

public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);

        long n = sc.nextLong();

        System.out.println(base26(n));

    }

    static String base26(long n) {
        StringBuilder buf = new StringBuilder();
        while (n != 0) {
            buf.append((char) ((n - 1) % 26 + 'a'));
            n = (n - 1) / 26;
        }
        return buf.reverse().toString();
    }

}
