import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) throws Exception {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		sc.close();

		List<Long> b = new ArrayList<>();
		long base = 1;
		while (true) {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		}

		int a = 0;
		for (int i = 0; i < b.size(); i++) {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		}

		int[] c = new int[a];
		int i = 0;
		n--;
		while (n > 0) {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		}

		for (i = a - 1; i >= 0; i--) {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		}
		System.out.println();
	}
} import java.util.ArrayList; ArrayList java.util import java.util.List; List java.util import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) throws Exception {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		sc.close();

		List<Long> b = new ArrayList<>();
		long base = 1;
		while (true) {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		}

		int a = 0;
		for (int i = 0; i < b.size(); i++) {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		}

		int[] c = new int[a];
		int i = 0;
		n--;
		while (n > 0) {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		}

		for (i = a - 1; i >= 0; i--) {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		}
		System.out.println();
	}
} Main public static void main(String[] args) throws Exception {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		sc.close();

		List<Long> b = new ArrayList<>();
		long base = 1;
		while (true) {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		}

		int a = 0;
		for (int i = 0; i < b.size(); i++) {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		}

		int[] c = new int[a];
		int i = 0;
		n--;
		while (n > 0) {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		}

		for (i = a - 1; i >= 0; i--) {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		}
		System.out.println();
	} main {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		sc.close();

		List<Long> b = new ArrayList<>();
		long base = 1;
		while (true) {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		}

		int a = 0;
		for (int i = 0; i < b.size(); i++) {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		}

		int[] c = new int[a];
		int i = 0;
		n--;
		while (n > 0) {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		}

		for (i = a - 1; i >= 0; i--) {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		}
		System.out.println();
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) long n = sc.nextLong(); n sc.nextLong() sc.nextLong sc sc.close() sc.close sc List<Long> b = new ArrayList<>(); b new ArrayList<>() long base = 1; base 1 while (true) {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		} true {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		} base *= 26 base 26 b.add(base) b.add b base if (base > 1000000000000001L) {
				break;
			} base > 1000000000000001L base 1000000000000001L {
				break;
			} break; int a = 0; a 0 for (int i = 0; i < b.size(); i++) {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		} int i = 0; int i = 0; i 0 i < b.size() i b.size() b.size b i++ i++ i {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		} {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		} if (n <= b.get(i)) {
				a = i + 1;
				break;
			} n <= b.get(i) n b.get(i) b.get b i {
				a = i + 1;
				break;
			} a = i + 1 a i + 1 i 1 break; n -= b.get(i) n b.get(i) b.get b i int[] c = new int[a]; c new int[a] a int i = 0; i 0 n-- n while (n > 0) {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		} n > 0 n 0 {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		} c[i] = (int) (n % 26) c[i] c i (int) (n % 26) n 26 n /= 26 n 26 i++ i for (i = a - 1; i >= 0; i--) {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		} i = a - 1; i = a - 1 i a - 1 a 1 i >= 0 i 0 i-- i-- i {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		} {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		} char d = (char) ('a' + c[i]); d (char) ('a' + c[i]) 'a' c[i] c i System.out.print(d) System.out.print System.out System System.out d System.out.println() System.out.println System.out System System.out String[] args args public class Main {
	public static void main(String[] args) throws Exception {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		sc.close();

		List<Long> b = new ArrayList<>();
		long base = 1;
		while (true) {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		}

		int a = 0;
		for (int i = 0; i < b.size(); i++) {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		}

		int[] c = new int[a];
		int i = 0;
		n--;
		while (n > 0) {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		}

		for (i = a - 1; i >= 0; i--) {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		}
		System.out.println();
	}
} public class Main {
	public static void main(String[] args) throws Exception {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		sc.close();

		List<Long> b = new ArrayList<>();
		long base = 1;
		while (true) {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		}

		int a = 0;
		for (int i = 0; i < b.size(); i++) {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		}

		int[] c = new int[a];
		int i = 0;
		n--;
		while (n > 0) {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		}

		for (i = a - 1; i >= 0; i--) {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		}
		System.out.println();
	}
} Main
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) throws Exception {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		sc.close();

		List<Long> b = new ArrayList<>();
		long base = 1;
		while (true) {
			base *= 26;
			b.add(base);
			if (base > 1000000000000001L) {
				break;
			}
		}

		int a = 0;
		for (int i = 0; i < b.size(); i++) {
			if (n <= b.get(i)) {
				a = i + 1;
				break;
			}
			n -= b.get(i);
		}

		int[] c = new int[a];
		int i = 0;
		n--;
		while (n > 0) {
			c[i] = (int) (n % 26);
			n /= 26;
			i++;
		}

		for (i = a - 1; i >= 0; i--) {
			char d = (char) ('a' + c[i]);
			System.out.print(d);
		}
		System.out.println();
	}
}
