
import java.math.BigInteger;
import java.util.Scanner;

public class Main {

	private static long n;
	private static String[] numeralSystem;

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
//		n = BigInteger
		BigInteger bigInteger = new BigInteger(scanner.next());
		n = bigInteger.longValue();
		fillNumeralSystem();
//		translateNumber();
		System.out.println(translateNumber());
	}

	private static void fillNumeralSystem() {
		numeralSystem = new String[27];
		numeralSystem[0] = "z";
		int delta = (int) 'a';
		for (int i = 1; i < numeralSystem.length; i++) {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		}
	}

	public static String translateNumber() {

		String res = "";

		while (n > 26) {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		}

		res = numeralSystem[(int) n].concat(res);

		return res;
	}
} import java.math.BigInteger; BigInteger java.math import java.util.Scanner; Scanner java.util public class Main {

	private static long n;
	private static String[] numeralSystem;

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
//		n = BigInteger
		BigInteger bigInteger = new BigInteger(scanner.next());
		n = bigInteger.longValue();
		fillNumeralSystem();
//		translateNumber();
		System.out.println(translateNumber());
	}

	private static void fillNumeralSystem() {
		numeralSystem = new String[27];
		numeralSystem[0] = "z";
		int delta = (int) 'a';
		for (int i = 1; i < numeralSystem.length; i++) {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		}
	}

	public static String translateNumber() {

		String res = "";

		while (n > 26) {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		}

		res = numeralSystem[(int) n].concat(res);

		return res;
	}
} Main private static long n; n private static String[] numeralSystem; numeralSystem public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
//		n = BigInteger
		BigInteger bigInteger = new BigInteger(scanner.next());
		n = bigInteger.longValue();
		fillNumeralSystem();
//		translateNumber();
		System.out.println(translateNumber());
	} main {
		Scanner scanner = new Scanner(System.in);
//		n = BigInteger
		BigInteger bigInteger = new BigInteger(scanner.next());
		n = bigInteger.longValue();
		fillNumeralSystem();
//		translateNumber();
		System.out.println(translateNumber());
	} Scanner scanner = new Scanner(System.in); scanner new Scanner(System.in) BigInteger bigInteger = new BigInteger(scanner.next()); bigInteger new BigInteger(scanner.next()) n = bigInteger.longValue() n bigInteger.longValue() bigInteger.longValue bigInteger fillNumeralSystem() fillNumeralSystem System.out.println(translateNumber()) System.out.println System.out System System.out translateNumber() translateNumber String[] args args private static void fillNumeralSystem() {
		numeralSystem = new String[27];
		numeralSystem[0] = "z";
		int delta = (int) 'a';
		for (int i = 1; i < numeralSystem.length; i++) {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		}
	} fillNumeralSystem {
		numeralSystem = new String[27];
		numeralSystem[0] = "z";
		int delta = (int) 'a';
		for (int i = 1; i < numeralSystem.length; i++) {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		}
	} numeralSystem = new String[27] numeralSystem new String[27] 27 numeralSystem[0] = "z" numeralSystem[0] numeralSystem 0 "z" int delta = (int) 'a'; delta (int) 'a' for (int i = 1; i < numeralSystem.length; i++) {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		} int i = 1; int i = 1; i 1 i < numeralSystem.length i numeralSystem.length numeralSystem numeralSystem.length i++ i++ i {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		} {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		} numeralSystem[i] = Character.toString(i - 1 + delta) numeralSystem[i] numeralSystem i Character.toString(i - 1 + delta) Character.toString Character i - 1 + delta i - 1 i 1 delta public static String translateNumber() {

		String res = "";

		while (n > 26) {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		}

		res = numeralSystem[(int) n].concat(res);

		return res;
	} translateNumber {

		String res = "";

		while (n > 26) {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		}

		res = numeralSystem[(int) n].concat(res);

		return res;
	} String res = ""; res "" while (n > 26) {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		} n > 26 n 26 {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		} res = numeralSystem[(int) (n % 26)].concat(res) res numeralSystem[(int) (n % 26)].concat(res) numeralSystem[(int) (n % 26)].concat numeralSystem[(int) (n % 26)] numeralSystem (int) (n % 26) n 26 res n-- n n /= 26 n 26 res = numeralSystem[(int) n].concat(res) res numeralSystem[(int) n].concat(res) numeralSystem[(int) n].concat numeralSystem[(int) n] numeralSystem (int) n res return res; res public class Main {

	private static long n;
	private static String[] numeralSystem;

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
//		n = BigInteger
		BigInteger bigInteger = new BigInteger(scanner.next());
		n = bigInteger.longValue();
		fillNumeralSystem();
//		translateNumber();
		System.out.println(translateNumber());
	}

	private static void fillNumeralSystem() {
		numeralSystem = new String[27];
		numeralSystem[0] = "z";
		int delta = (int) 'a';
		for (int i = 1; i < numeralSystem.length; i++) {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		}
	}

	public static String translateNumber() {

		String res = "";

		while (n > 26) {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		}

		res = numeralSystem[(int) n].concat(res);

		return res;
	}
} public class Main {

	private static long n;
	private static String[] numeralSystem;

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
//		n = BigInteger
		BigInteger bigInteger = new BigInteger(scanner.next());
		n = bigInteger.longValue();
		fillNumeralSystem();
//		translateNumber();
		System.out.println(translateNumber());
	}

	private static void fillNumeralSystem() {
		numeralSystem = new String[27];
		numeralSystem[0] = "z";
		int delta = (int) 'a';
		for (int i = 1; i < numeralSystem.length; i++) {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		}
	}

	public static String translateNumber() {

		String res = "";

		while (n > 26) {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		}

		res = numeralSystem[(int) n].concat(res);

		return res;
	}
} Main

import java.math.BigInteger;
import java.util.Scanner;

public class Main {

	private static long n;
	private static String[] numeralSystem;

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
//		n = BigInteger
		BigInteger bigInteger = new BigInteger(scanner.next());
		n = bigInteger.longValue();
		fillNumeralSystem();
//		translateNumber();
		System.out.println(translateNumber());
	}

	private static void fillNumeralSystem() {
		numeralSystem = new String[27];
		numeralSystem[0] = "z";
		int delta = (int) 'a';
		for (int i = 1; i < numeralSystem.length; i++) {
			numeralSystem[i] = Character.toString(i - 1 + delta);
		}
	}

	public static String translateNumber() {

		String res = "";

		while (n > 26) {
			res = numeralSystem[(int) (n % 26)].concat(res);
			n--;
			n /= 26;
		}

		res = numeralSystem[(int) n].concat(res);

		return res;
	}
}
