import java.util.*;
public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		String dogName = "";
		while(n>26){
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		}
		dogName += numberToAlphabet(n-1);
		StringBuffer ans = new StringBuffer(dogName);
		System.out.println(ans.reverse().toString());
    }
  	
  	public static String numberToAlphabet(long num){
		switch ((int)num){
  	case 0:
    	return("a");
  case 1:
    return("b");
  case 2:
    return("c");
  case 3:
    return("d");
  case 4:
    return("e");
  case 5:
    return("f");
  case 6:
    return("g");
  case 7:
    return("h");
  case 8:
    return("i");
  case 9:
    return("j");
  case 10:
    return("k");
  case 11:
    return("l");
  case 12:
    return("m");
  case 13:
    return("n");
  case 14:
    return("o");
  case 15:
    return("p");
  case 16:
    return("q");
  case 17:
    return("r");
  case 18:
    return("s");
  case 19:
    return("t");
  case 20:
    return("u");
  case 21:
    return("v");
  case 22:
    return("w");
  case 23:
    return("x");
  case 24:
    return("y");
  case 25:
    return("z");
}
      return("");
    }
  
} import java.util.*; util.* java public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		String dogName = "";
		while(n>26){
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		}
		dogName += numberToAlphabet(n-1);
		StringBuffer ans = new StringBuffer(dogName);
		System.out.println(ans.reverse().toString());
    }
  	
  	public static String numberToAlphabet(long num){
		switch ((int)num){
  	case 0:
    	return("a");
  case 1:
    return("b");
  case 2:
    return("c");
  case 3:
    return("d");
  case 4:
    return("e");
  case 5:
    return("f");
  case 6:
    return("g");
  case 7:
    return("h");
  case 8:
    return("i");
  case 9:
    return("j");
  case 10:
    return("k");
  case 11:
    return("l");
  case 12:
    return("m");
  case 13:
    return("n");
  case 14:
    return("o");
  case 15:
    return("p");
  case 16:
    return("q");
  case 17:
    return("r");
  case 18:
    return("s");
  case 19:
    return("t");
  case 20:
    return("u");
  case 21:
    return("v");
  case 22:
    return("w");
  case 23:
    return("x");
  case 24:
    return("y");
  case 25:
    return("z");
}
      return("");
    }
  
} Main public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		String dogName = "";
		while(n>26){
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		}
		dogName += numberToAlphabet(n-1);
		StringBuffer ans = new StringBuffer(dogName);
		System.out.println(ans.reverse().toString());
    } main {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		String dogName = "";
		while(n>26){
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		}
		dogName += numberToAlphabet(n-1);
		StringBuffer ans = new StringBuffer(dogName);
		System.out.println(ans.reverse().toString());
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) long n = sc.nextLong(); n sc.nextLong() sc.nextLong sc String dogName = ""; dogName "" while(n>26){
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		} n>26 n 26 {
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		} dogName += numberToAlphabet((n-1)%26) dogName numberToAlphabet((n-1)%26) numberToAlphabet (n-1)%26 (n-1) n 1 26 n=(n-1)/26 n (n-1)/26 (n-1) n 1 26 dogName += numberToAlphabet(n-1) dogName numberToAlphabet(n-1) numberToAlphabet n-1 n 1 StringBuffer ans = new StringBuffer(dogName); ans new StringBuffer(dogName) System.out.println(ans.reverse().toString()) System.out.println System.out System System.out ans.reverse().toString() ans.reverse().toString ans.reverse() ans.reverse ans String[] args args public static String numberToAlphabet(long num){
		switch ((int)num){
  	case 0:
    	return("a");
  case 1:
    return("b");
  case 2:
    return("c");
  case 3:
    return("d");
  case 4:
    return("e");
  case 5:
    return("f");
  case 6:
    return("g");
  case 7:
    return("h");
  case 8:
    return("i");
  case 9:
    return("j");
  case 10:
    return("k");
  case 11:
    return("l");
  case 12:
    return("m");
  case 13:
    return("n");
  case 14:
    return("o");
  case 15:
    return("p");
  case 16:
    return("q");
  case 17:
    return("r");
  case 18:
    return("s");
  case 19:
    return("t");
  case 20:
    return("u");
  case 21:
    return("v");
  case 22:
    return("w");
  case 23:
    return("x");
  case 24:
    return("y");
  case 25:
    return("z");
}
      return("");
    } numberToAlphabet {
		switch ((int)num){
  	case 0:
    	return("a");
  case 1:
    return("b");
  case 2:
    return("c");
  case 3:
    return("d");
  case 4:
    return("e");
  case 5:
    return("f");
  case 6:
    return("g");
  case 7:
    return("h");
  case 8:
    return("i");
  case 9:
    return("j");
  case 10:
    return("k");
  case 11:
    return("l");
  case 12:
    return("m");
  case 13:
    return("n");
  case 14:
    return("o");
  case 15:
    return("p");
  case 16:
    return("q");
  case 17:
    return("r");
  case 18:
    return("s");
  case 19:
    return("t");
  case 20:
    return("u");
  case 21:
    return("v");
  case 22:
    return("w");
  case 23:
    return("x");
  case 24:
    return("y");
  case 25:
    return("z");
}
      return("");
    } switch ((int)num){
  	case 0:
    	return("a");
  case 1:
    return("b");
  case 2:
    return("c");
  case 3:
    return("d");
  case 4:
    return("e");
  case 5:
    return("f");
  case 6:
    return("g");
  case 7:
    return("h");
  case 8:
    return("i");
  case 9:
    return("j");
  case 10:
    return("k");
  case 11:
    return("l");
  case 12:
    return("m");
  case 13:
    return("n");
  case 14:
    return("o");
  case 15:
    return("p");
  case 16:
    return("q");
  case 17:
    return("r");
  case 18:
    return("s");
  case 19:
    return("t");
  case 20:
    return("u");
  case 21:
    return("v");
  case 22:
    return("w");
  case 23:
    return("x");
  case 24:
    return("y");
  case 25:
    return("z");
} (int)num case 0: 0 case 0: return("a"); ("a") case 1: 1 case 1: return("b"); ("b") case 2: 2 case 2: return("c"); ("c") case 3: 3 case 3: return("d"); ("d") case 4: 4 case 4: return("e"); ("e") case 5: 5 case 5: return("f"); ("f") case 6: 6 case 6: return("g"); ("g") case 7: 7 case 7: return("h"); ("h") case 8: 8 case 8: return("i"); ("i") case 9: 9 case 9: return("j"); ("j") case 10: 10 case 10: return("k"); ("k") case 11: 11 case 11: return("l"); ("l") case 12: 12 case 12: return("m"); ("m") case 13: 13 case 13: return("n"); ("n") case 14: 14 case 14: return("o"); ("o") case 15: 15 case 15: return("p"); ("p") case 16: 16 case 16: return("q"); ("q") case 17: 17 case 17: return("r"); ("r") case 18: 18 case 18: return("s"); ("s") case 19: 19 case 19: return("t"); ("t") case 20: 20 case 20: return("u"); ("u") case 21: 21 case 21: return("v"); ("v") case 22: 22 case 22: return("w"); ("w") case 23: 23 case 23: return("x"); ("x") case 24: 24 case 24: return("y"); ("y") case 25: 25 case 25: return("z"); ("z") return(""); ("") long num num public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		String dogName = "";
		while(n>26){
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		}
		dogName += numberToAlphabet(n-1);
		StringBuffer ans = new StringBuffer(dogName);
		System.out.println(ans.reverse().toString());
    }
  	
  	public static String numberToAlphabet(long num){
		switch ((int)num){
  	case 0:
    	return("a");
  case 1:
    return("b");
  case 2:
    return("c");
  case 3:
    return("d");
  case 4:
    return("e");
  case 5:
    return("f");
  case 6:
    return("g");
  case 7:
    return("h");
  case 8:
    return("i");
  case 9:
    return("j");
  case 10:
    return("k");
  case 11:
    return("l");
  case 12:
    return("m");
  case 13:
    return("n");
  case 14:
    return("o");
  case 15:
    return("p");
  case 16:
    return("q");
  case 17:
    return("r");
  case 18:
    return("s");
  case 19:
    return("t");
  case 20:
    return("u");
  case 21:
    return("v");
  case 22:
    return("w");
  case 23:
    return("x");
  case 24:
    return("y");
  case 25:
    return("z");
}
      return("");
    }
  
} public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		String dogName = "";
		while(n>26){
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		}
		dogName += numberToAlphabet(n-1);
		StringBuffer ans = new StringBuffer(dogName);
		System.out.println(ans.reverse().toString());
    }
  	
  	public static String numberToAlphabet(long num){
		switch ((int)num){
  	case 0:
    	return("a");
  case 1:
    return("b");
  case 2:
    return("c");
  case 3:
    return("d");
  case 4:
    return("e");
  case 5:
    return("f");
  case 6:
    return("g");
  case 7:
    return("h");
  case 8:
    return("i");
  case 9:
    return("j");
  case 10:
    return("k");
  case 11:
    return("l");
  case 12:
    return("m");
  case 13:
    return("n");
  case 14:
    return("o");
  case 15:
    return("p");
  case 16:
    return("q");
  case 17:
    return("r");
  case 18:
    return("s");
  case 19:
    return("t");
  case 20:
    return("u");
  case 21:
    return("v");
  case 22:
    return("w");
  case 23:
    return("x");
  case 24:
    return("y");
  case 25:
    return("z");
}
      return("");
    }
  
} Main
import java.util.*;
public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		String dogName = "";
		while(n>26){
	 		dogName += numberToAlphabet((n-1)%26);
			n=(n-1)/26;
		}
		dogName += numberToAlphabet(n-1);
		StringBuffer ans = new StringBuffer(dogName);
		System.out.println(ans.reverse().toString());
    }
  	
  	public static String numberToAlphabet(long num){
		switch ((int)num){
  	case 0:
    	return("a");
  case 1:
    return("b");
  case 2:
    return("c");
  case 3:
    return("d");
  case 4:
    return("e");
  case 5:
    return("f");
  case 6:
    return("g");
  case 7:
    return("h");
  case 8:
    return("i");
  case 9:
    return("j");
  case 10:
    return("k");
  case 11:
    return("l");
  case 12:
    return("m");
  case 13:
    return("n");
  case 14:
    return("o");
  case 15:
    return("p");
  case 16:
    return("q");
  case 17:
    return("r");
  case 18:
    return("s");
  case 19:
    return("t");
  case 20:
    return("u");
  case 21:
    return("v");
  case 22:
    return("w");
  case 23:
    return("x");
  case 24:
    return("y");
  case 25:
    return("z");
}
      return("");
    }
  
}