import java.io.*;
import java.util.*;

public class Main {

	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	public static int nextInt() throws IOException {
		return Integer.parseInt(br.readLine());
	}

	public static long nextLong() throws IOException {
		return Long.parseLong(br.readLine());
	}

	public static String next() throws IOException {
		return br.readLine();
	}

	public static int[] sortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a);

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] desortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a, Collections.reverseOrder());

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] nextArr() throws IOException {
		String elements[] = br.readLine().split(" ");
		int arr[] = new int[elements.length];
		for (int j = 0; j < elements.length; j++)
			arr[j] = Integer.parseInt(elements[j]);
		return arr;
	}

	public static void printArr(char arr[]) {
		for (int i = 0; i < arr.length; i++)
			System.out.print(arr[i] + " ");
	}

	public static void main(String[] args) throws IOException {

		int T = 1;
	
		while (T-- > 0) {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		}
	}

} import java.io.*; io.* java import java.util.*; util.* java public class Main {

	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	public static int nextInt() throws IOException {
		return Integer.parseInt(br.readLine());
	}

	public static long nextLong() throws IOException {
		return Long.parseLong(br.readLine());
	}

	public static String next() throws IOException {
		return br.readLine();
	}

	public static int[] sortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a);

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] desortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a, Collections.reverseOrder());

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] nextArr() throws IOException {
		String elements[] = br.readLine().split(" ");
		int arr[] = new int[elements.length];
		for (int j = 0; j < elements.length; j++)
			arr[j] = Integer.parseInt(elements[j]);
		return arr;
	}

	public static void printArr(char arr[]) {
		for (int i = 0; i < arr.length; i++)
			System.out.print(arr[i] + " ");
	}

	public static void main(String[] args) throws IOException {

		int T = 1;
	
		while (T-- > 0) {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		}
	}

} Main static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); br new BufferedReader(new InputStreamReader(System.in)) public static int nextInt() throws IOException {
		return Integer.parseInt(br.readLine());
	} nextInt {
		return Integer.parseInt(br.readLine());
	} return Integer.parseInt(br.readLine()); Integer.parseInt(br.readLine()) Integer.parseInt Integer br.readLine() br.readLine br public static long nextLong() throws IOException {
		return Long.parseLong(br.readLine());
	} nextLong {
		return Long.parseLong(br.readLine());
	} return Long.parseLong(br.readLine()); Long.parseLong(br.readLine()) Long.parseLong Long br.readLine() br.readLine br public static String next() throws IOException {
		return br.readLine();
	} next {
		return br.readLine();
	} return br.readLine(); br.readLine() br.readLine br public static int[] sortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a);

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	} sortArr {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a);

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	} ArrayList<Integer> a = new ArrayList<Integer>(); a new ArrayList<Integer>() for (int i : arr)
			a.add(i); int i arr a.add(i); a.add(i) a.add a i Collections.sort(a) Collections.sort Collections a for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i); int i = 0; int i = 0; i 0 i < a.size() i a.size() a.size a i++ i++ i arr[i] = a.get(i); arr[i] = a.get(i) arr[i] arr i a.get(i) a.get a i return arr; arr int arr[] arr public static int[] desortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a, Collections.reverseOrder());

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	} desortArr {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a, Collections.reverseOrder());

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	} ArrayList<Integer> a = new ArrayList<Integer>(); a new ArrayList<Integer>() for (int i : arr)
			a.add(i); int i arr a.add(i); a.add(i) a.add a i Collections.sort(a, Collections.reverseOrder()) Collections.sort Collections a Collections.reverseOrder() Collections.reverseOrder Collections for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i); int i = 0; int i = 0; i 0 i < a.size() i a.size() a.size a i++ i++ i arr[i] = a.get(i); arr[i] = a.get(i) arr[i] arr i a.get(i) a.get a i return arr; arr int arr[] arr public static int[] nextArr() throws IOException {
		String elements[] = br.readLine().split(" ");
		int arr[] = new int[elements.length];
		for (int j = 0; j < elements.length; j++)
			arr[j] = Integer.parseInt(elements[j]);
		return arr;
	} nextArr {
		String elements[] = br.readLine().split(" ");
		int arr[] = new int[elements.length];
		for (int j = 0; j < elements.length; j++)
			arr[j] = Integer.parseInt(elements[j]);
		return arr;
	} String elements[] = br.readLine().split(" "); elements br.readLine().split(" ") br.readLine().split br.readLine() br.readLine br " " int arr[] = new int[elements.length]; arr new int[elements.length] elements.length elements elements.length for (int j = 0; j < elements.length; j++)
			arr[j] = Integer.parseInt(elements[j]); int j = 0; int j = 0; j 0 j < elements.length j elements.length elements elements.length j++ j++ j arr[j] = Integer.parseInt(elements[j]); arr[j] = Integer.parseInt(elements[j]) arr[j] arr j Integer.parseInt(elements[j]) Integer.parseInt Integer elements[j] elements j return arr; arr public static void printArr(char arr[]) {
		for (int i = 0; i < arr.length; i++)
			System.out.print(arr[i] + " ");
	} printArr {
		for (int i = 0; i < arr.length; i++)
			System.out.print(arr[i] + " ");
	} for (int i = 0; i < arr.length; i++)
			System.out.print(arr[i] + " "); int i = 0; int i = 0; i 0 i < arr.length i arr.length arr arr.length i++ i++ i System.out.print(arr[i] + " "); System.out.print(arr[i] + " ") System.out.print System.out System System.out arr[i] + " " arr[i] arr i " " char arr[] arr public static void main(String[] args) throws IOException {

		int T = 1;
	
		while (T-- > 0) {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		}
	} main {

		int T = 1;
	
		while (T-- > 0) {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		}
	} int T = 1; T 1 while (T-- > 0) {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		} T-- > 0 T-- T 0 {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		} long n = Long.parseLong(next()); n Long.parseLong(next()) Long.parseLong Long next() next String s = ""; s "" while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			} n > 0 n 0 {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			} n -= 1 n 1 s += (char) (97 + n % 26) s (char) (97 + n % 26) 97 n % 26 n 26 n = n / 26 n n / 26 n 26 System.out.println(new StringBuilder(s).reverse()) System.out.println System.out System System.out new StringBuilder(s).reverse() new StringBuilder(s).reverse new StringBuilder(s) String[] args args public class Main {

	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	public static int nextInt() throws IOException {
		return Integer.parseInt(br.readLine());
	}

	public static long nextLong() throws IOException {
		return Long.parseLong(br.readLine());
	}

	public static String next() throws IOException {
		return br.readLine();
	}

	public static int[] sortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a);

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] desortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a, Collections.reverseOrder());

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] nextArr() throws IOException {
		String elements[] = br.readLine().split(" ");
		int arr[] = new int[elements.length];
		for (int j = 0; j < elements.length; j++)
			arr[j] = Integer.parseInt(elements[j]);
		return arr;
	}

	public static void printArr(char arr[]) {
		for (int i = 0; i < arr.length; i++)
			System.out.print(arr[i] + " ");
	}

	public static void main(String[] args) throws IOException {

		int T = 1;
	
		while (T-- > 0) {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		}
	}

} public class Main {

	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	public static int nextInt() throws IOException {
		return Integer.parseInt(br.readLine());
	}

	public static long nextLong() throws IOException {
		return Long.parseLong(br.readLine());
	}

	public static String next() throws IOException {
		return br.readLine();
	}

	public static int[] sortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a);

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] desortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a, Collections.reverseOrder());

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] nextArr() throws IOException {
		String elements[] = br.readLine().split(" ");
		int arr[] = new int[elements.length];
		for (int j = 0; j < elements.length; j++)
			arr[j] = Integer.parseInt(elements[j]);
		return arr;
	}

	public static void printArr(char arr[]) {
		for (int i = 0; i < arr.length; i++)
			System.out.print(arr[i] + " ");
	}

	public static void main(String[] args) throws IOException {

		int T = 1;
	
		while (T-- > 0) {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		}
	}

} Main
import java.io.*;
import java.util.*;

public class Main {

	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	public static int nextInt() throws IOException {
		return Integer.parseInt(br.readLine());
	}

	public static long nextLong() throws IOException {
		return Long.parseLong(br.readLine());
	}

	public static String next() throws IOException {
		return br.readLine();
	}

	public static int[] sortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a);

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] desortArr(int arr[]) throws IOException {
		ArrayList<Integer> a = new ArrayList<Integer>();
		for (int i : arr)
			a.add(i);

		Collections.sort(a, Collections.reverseOrder());

		for (int i = 0; i < a.size(); i++)
			arr[i] = a.get(i);
		return arr;
	}

	public static int[] nextArr() throws IOException {
		String elements[] = br.readLine().split(" ");
		int arr[] = new int[elements.length];
		for (int j = 0; j < elements.length; j++)
			arr[j] = Integer.parseInt(elements[j]);
		return arr;
	}

	public static void printArr(char arr[]) {
		for (int i = 0; i < arr.length; i++)
			System.out.print(arr[i] + " ");
	}

	public static void main(String[] args) throws IOException {

		int T = 1;
	
		while (T-- > 0) {
			long n = Long.parseLong(next());
			
			String s = "";

			while (n > 0) {
				n -= 1;
				s += (char) (97 + n % 26);
				n = n / 26;
			}
			System.out.println(new StringBuilder(s).reverse());
		}
	}

}
