import java.util.Scanner;
/**
* @author 林圣烨
* @version 1.0
*/
public class Main {
public static void main(String[] args) {
Scanner ip = new Scanner(System.in);
String s=ip.nextLine();
char[] digits = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'};
char[] units={'Y','Q', 'B', 'S', 'W', 'Q', 'B', 'S',' '};
char[] xxx={' ','S','B','Q','W','S','B','Q','Y'};
ip.close();
if(s.charAt(0)=='0'){System.out.print('a');System.exit(0);}
int len=s.length();
for(int i=0;i<len;i++)
{
if(s.charAt(i)=='0')
{
if(i==len-5){System.out.print('W');}
if(i<len-1&&s.charAt(i+1)=='0'||i==len-1){continue;}
else{System.out.print('a');}
}
else{
if(i!=len-1)System.out.printf(String.format("%c%c",s.charAt(i)+'a'-'0',xxx[len-i-1]));
else System.out.printf(String.format("%c",s.charAt(i)+'a'-'0'));
//最后一位不输出空格,即xxx[0]
}
}
}
}
#include <stdio.h>
#include <string.h>
int main()
{
int i,n;
char a[15];
scanf("%s",&a);
char b[9]={'\n','S','B','Q','W','S','B','Q','Y'};
if(a[0]=='0') {printf("a\n"); return 0;}
n=strlen(a);
for(i=0;i<n;i++){
if(a[i]=='0'){
if(i==n-5) printf("W");
//600009 6-5=1 a[1]='0' 亿位一定有数 万位可能为0
if(i<n-1&&a[i+1]=='0'||i==n-1)continue;
//最后一位为0不输出a 中间位为0但下一位还是0不输出a
//中间位为0但下一位不是0即可输出a
else printf("a");
}else printf("%c%c",a[i]+'a'-'0',b[n-i-1]);
//n-i-1是因为从高位开始做
}
return 0;
}
//690006
//100000001