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

 public class Main{
// taking inputs
static BufferedReader s1;
static BufferedWriter out;
static String read() throws IOException{String line="";while(line.length()==0){line=s1.readLine();continue;}return line;}
static int int_v (String s1){return Integer.parseInt(s1);}
static long long_v(String s1){return Long.parseLong(s1);}
static int[] int_arr() throws IOException{String[] a=read().split(" ");int[] b=new int[a.length];for(int i=0;i<a.length;i++){b[i]=int_v(a[i]);}return b;}
static long[] long_arr() throws IOException{String[] a=read().split(" ");long[] b=new long[a.length];for(int i=0;i<a.length;i++){b[i]=long_v(a[i]);}return b;}
static void assign(){s1=new BufferedReader(new InputStreamReader(System.in));out=new BufferedWriter(new OutputStreamWriter(System.out));}

//......................................@uthor_Alx..............................................
 static List<Character> l;
 static void rec(long n,String s){
 	if(n<=0l) return;
 	if(n>0)n--;
 	long k=n/26l;int r=(int)(n%26l);
 	
 	 l.add(s.charAt(r));
 	rec(k,s);
 }
   public static void main(String[] args) throws  IOException{
	        		  assign();
	        		  	long n=long_v(read());
	        		  	l=new ArrayList<>();
	        		  	String s="abcdefghijklmnopqrstuvwxyz";
	        		  	rec(n,s);
	        		  	for(int i=l.size()-1;i>=0;i--){
	        		  		out.write(l.get(i));
	        		  	}
	        		  	
	        		  	//out.write(res+"");
                      	out.flush();
	        		 
	}
}
	        import java.util.*; util.* java import java.io.*; io.* java public class Main{
// taking inputs
static BufferedReader s1;
static BufferedWriter out;
static String read() throws IOException{String line="";while(line.length()==0){line=s1.readLine();continue;}return line;}
static int int_v (String s1){return Integer.parseInt(s1);}
static long long_v(String s1){return Long.parseLong(s1);}
static int[] int_arr() throws IOException{String[] a=read().split(" ");int[] b=new int[a.length];for(int i=0;i<a.length;i++){b[i]=int_v(a[i]);}return b;}
static long[] long_arr() throws IOException{String[] a=read().split(" ");long[] b=new long[a.length];for(int i=0;i<a.length;i++){b[i]=long_v(a[i]);}return b;}
static void assign(){s1=new BufferedReader(new InputStreamReader(System.in));out=new BufferedWriter(new OutputStreamWriter(System.out));}

//......................................@uthor_Alx..............................................
 static List<Character> l;
 static void rec(long n,String s){
 	if(n<=0l) return;
 	if(n>0)n--;
 	long k=n/26l;int r=(int)(n%26l);
 	
 	 l.add(s.charAt(r));
 	rec(k,s);
 }
   public static void main(String[] args) throws  IOException{
	        		  assign();
	        		  	long n=long_v(read());
	        		  	l=new ArrayList<>();
	        		  	String s="abcdefghijklmnopqrstuvwxyz";
	        		  	rec(n,s);
	        		  	for(int i=l.size()-1;i>=0;i--){
	        		  		out.write(l.get(i));
	        		  	}
	        		  	
	        		  	//out.write(res+"");
                      	out.flush();
	        		 
	}
} Main // taking inputs
static BufferedReader s1; s1 static BufferedWriter out; out //......................................@uthor_Alx..............................................
 static List<Character> l; l static String read() throws IOException{String line="";while(line.length()==0){line=s1.readLine();continue;}return line;} read {String line="";while(line.length()==0){line=s1.readLine();continue;}return line;} String line=""; line "" while(line.length()==0){line=s1.readLine();continue;} line.length()==0 line.length() line.length line 0 {line=s1.readLine();continue;} line=s1.readLine() line s1.readLine() s1.readLine s1 continue; return line; line static int int_v (String s1){return Integer.parseInt(s1);} int_v {return Integer.parseInt(s1);} return Integer.parseInt(s1); Integer.parseInt(s1) Integer.parseInt Integer s1 String s1 s1 static long long_v(String s1){return Long.parseLong(s1);} long_v {return Long.parseLong(s1);} return Long.parseLong(s1); Long.parseLong(s1) Long.parseLong Long s1 String s1 s1 static int[] int_arr() throws IOException{String[] a=read().split(" ");int[] b=new int[a.length];for(int i=0;i<a.length;i++){b[i]=int_v(a[i]);}return b;} int_arr {String[] a=read().split(" ");int[] b=new int[a.length];for(int i=0;i<a.length;i++){b[i]=int_v(a[i]);}return b;} String[] a=read().split(" "); a read().split(" ") read().split read() read " " int[] b=new int[a.length]; b new int[a.length] a.length a a.length for(int i=0;i<a.length;i++){b[i]=int_v(a[i]);} int i=0; int i=0; i 0 i<a.length i a.length a a.length i++ i++ i {b[i]=int_v(a[i]);} {b[i]=int_v(a[i]);} b[i]=int_v(a[i]) b[i] b i int_v(a[i]) int_v a[i] a i return b; b static long[] long_arr() throws IOException{String[] a=read().split(" ");long[] b=new long[a.length];for(int i=0;i<a.length;i++){b[i]=long_v(a[i]);}return b;} long_arr {String[] a=read().split(" ");long[] b=new long[a.length];for(int i=0;i<a.length;i++){b[i]=long_v(a[i]);}return b;} String[] a=read().split(" "); a read().split(" ") read().split read() read " " long[] b=new long[a.length]; b new long[a.length] a.length a a.length for(int i=0;i<a.length;i++){b[i]=long_v(a[i]);} int i=0; int i=0; i 0 i<a.length i a.length a a.length i++ i++ i {b[i]=long_v(a[i]);} {b[i]=long_v(a[i]);} b[i]=long_v(a[i]) b[i] b i long_v(a[i]) long_v a[i] a i return b; b static void assign(){s1=new BufferedReader(new InputStreamReader(System.in));out=new BufferedWriter(new OutputStreamWriter(System.out));} assign {s1=new BufferedReader(new InputStreamReader(System.in));out=new BufferedWriter(new OutputStreamWriter(System.out));} s1=new BufferedReader(new InputStreamReader(System.in)) s1 new BufferedReader(new InputStreamReader(System.in)) out=new BufferedWriter(new OutputStreamWriter(System.out)) out new BufferedWriter(new OutputStreamWriter(System.out)) static void rec(long n,String s){
 	if(n<=0l) return;
 	if(n>0)n--;
 	long k=n/26l;int r=(int)(n%26l);
 	
 	 l.add(s.charAt(r));
 	rec(k,s);
 } rec {
 	if(n<=0l) return;
 	if(n>0)n--;
 	long k=n/26l;int r=(int)(n%26l);
 	
 	 l.add(s.charAt(r));
 	rec(k,s);
 } if(n<=0l) return; n<=0l n 0l return; if(n>0)n--; n>0 n 0 n-- n long k=n/26l; k n/26l n 26l int r=(int)(n%26l); r (int)(n%26l) n 26l l.add(s.charAt(r)) l.add l s.charAt(r) s.charAt s r rec(k,s) rec k s long n n String s s public static void main(String[] args) throws  IOException{
	        		  assign();
	        		  	long n=long_v(read());
	        		  	l=new ArrayList<>();
	        		  	String s="abcdefghijklmnopqrstuvwxyz";
	        		  	rec(n,s);
	        		  	for(int i=l.size()-1;i>=0;i--){
	        		  		out.write(l.get(i));
	        		  	}
	        		  	
	        		  	//out.write(res+"");
                      	out.flush();
	        		 
	} main {
	        		  assign();
	        		  	long n=long_v(read());
	        		  	l=new ArrayList<>();
	        		  	String s="abcdefghijklmnopqrstuvwxyz";
	        		  	rec(n,s);
	        		  	for(int i=l.size()-1;i>=0;i--){
	        		  		out.write(l.get(i));
	        		  	}
	        		  	
	        		  	//out.write(res+"");
                      	out.flush();
	        		 
	} assign() assign long n=long_v(read()); n long_v(read()) long_v read() read l=new ArrayList<>() l new ArrayList<>() String s="abcdefghijklmnopqrstuvwxyz"; s "abcdefghijklmnopqrstuvwxyz" rec(n,s) rec n s for(int i=l.size()-1;i>=0;i--){
	        		  		out.write(l.get(i));
	        		  	} int i=l.size()-1; int i=l.size()-1; i l.size()-1 l.size() l.size l 1 i>=0 i 0 i-- i-- i {
	        		  		out.write(l.get(i));
	        		  	} {
	        		  		out.write(l.get(i));
	        		  	} out.write(l.get(i)) out.write out l.get(i) l.get l i out.flush() out.flush out String[] args args public class Main{
// taking inputs
static BufferedReader s1;
static BufferedWriter out;
static String read() throws IOException{String line="";while(line.length()==0){line=s1.readLine();continue;}return line;}
static int int_v (String s1){return Integer.parseInt(s1);}
static long long_v(String s1){return Long.parseLong(s1);}
static int[] int_arr() throws IOException{String[] a=read().split(" ");int[] b=new int[a.length];for(int i=0;i<a.length;i++){b[i]=int_v(a[i]);}return b;}
static long[] long_arr() throws IOException{String[] a=read().split(" ");long[] b=new long[a.length];for(int i=0;i<a.length;i++){b[i]=long_v(a[i]);}return b;}
static void assign(){s1=new BufferedReader(new InputStreamReader(System.in));out=new BufferedWriter(new OutputStreamWriter(System.out));}

//......................................@uthor_Alx..............................................
 static List<Character> l;
 static void rec(long n,String s){
 	if(n<=0l) return;
 	if(n>0)n--;
 	long k=n/26l;int r=(int)(n%26l);
 	
 	 l.add(s.charAt(r));
 	rec(k,s);
 }
   public static void main(String[] args) throws  IOException{
	        		  assign();
	        		  	long n=long_v(read());
	        		  	l=new ArrayList<>();
	        		  	String s="abcdefghijklmnopqrstuvwxyz";
	        		  	rec(n,s);
	        		  	for(int i=l.size()-1;i>=0;i--){
	        		  		out.write(l.get(i));
	        		  	}
	        		  	
	        		  	//out.write(res+"");
                      	out.flush();
	        		 
	}
} public class Main{
// taking inputs
static BufferedReader s1;
static BufferedWriter out;
static String read() throws IOException{String line="";while(line.length()==0){line=s1.readLine();continue;}return line;}
static int int_v (String s1){return Integer.parseInt(s1);}
static long long_v(String s1){return Long.parseLong(s1);}
static int[] int_arr() throws IOException{String[] a=read().split(" ");int[] b=new int[a.length];for(int i=0;i<a.length;i++){b[i]=int_v(a[i]);}return b;}
static long[] long_arr() throws IOException{String[] a=read().split(" ");long[] b=new long[a.length];for(int i=0;i<a.length;i++){b[i]=long_v(a[i]);}return b;}
static void assign(){s1=new BufferedReader(new InputStreamReader(System.in));out=new BufferedWriter(new OutputStreamWriter(System.out));}

//......................................@uthor_Alx..............................................
 static List<Character> l;
 static void rec(long n,String s){
 	if(n<=0l) return;
 	if(n>0)n--;
 	long k=n/26l;int r=(int)(n%26l);
 	
 	 l.add(s.charAt(r));
 	rec(k,s);
 }
   public static void main(String[] args) throws  IOException{
	        		  assign();
	        		  	long n=long_v(read());
	        		  	l=new ArrayList<>();
	        		  	String s="abcdefghijklmnopqrstuvwxyz";
	        		  	rec(n,s);
	        		  	for(int i=l.size()-1;i>=0;i--){
	        		  		out.write(l.get(i));
	        		  	}
	        		  	
	        		  	//out.write(res+"");
                      	out.flush();
	        		 
	}
} Main
import java.util.*;
import java.io.*;

 public class Main{
// taking inputs
static BufferedReader s1;
static BufferedWriter out;
static String read() throws IOException{String line="";while(line.length()==0){line=s1.readLine();continue;}return line;}
static int int_v (String s1){return Integer.parseInt(s1);}
static long long_v(String s1){return Long.parseLong(s1);}
static int[] int_arr() throws IOException{String[] a=read().split(" ");int[] b=new int[a.length];for(int i=0;i<a.length;i++){b[i]=int_v(a[i]);}return b;}
static long[] long_arr() throws IOException{String[] a=read().split(" ");long[] b=new long[a.length];for(int i=0;i<a.length;i++){b[i]=long_v(a[i]);}return b;}
static void assign(){s1=new BufferedReader(new InputStreamReader(System.in));out=new BufferedWriter(new OutputStreamWriter(System.out));}

//......................................@uthor_Alx..............................................
 static List<Character> l;
 static void rec(long n,String s){
 	if(n<=0l) return;
 	if(n>0)n--;
 	long k=n/26l;int r=(int)(n%26l);
 	
 	 l.add(s.charAt(r));
 	rec(k,s);
 }
   public static void main(String[] args) throws  IOException{
	        		  assign();
	        		  	long n=long_v(read());
	        		  	l=new ArrayList<>();
	        		  	String s="abcdefghijklmnopqrstuvwxyz";
	        		  	rec(n,s);
	        		  	for(int i=l.size()-1;i>=0;i--){
	        		  		out.write(l.get(i));
	        		  	}
	        		  	
	        		  	//out.write(res+"");
                      	out.flush();
	        		 
	}
}
	       
