#include <bits/stdc++.h>
using namespace std;
int direct;
stack<int> stk;
int main(){
int n,m;
cin>>n>>m;
direct = pow(26,n) - m;//二十六进制数字
//我想把二十六进制转化为十进制
//首先对整个数取26的模,接着对商依次取模。并且每次对余数取模后要记录它的值
while(direct){//当商取余后不为零就接着取余数
stk.push(direct % 26);//把每次取余的结果放到一个栈中,退出循环后依次弹出栈顶
direct = direct/26 ;//把商不断放到里面取余数
}
while(!stk.empty()){
//将栈顶转为char
printf("%c",(char)stk.top()+'a');//将栈顶转为char再做整体转化
stk.pop();
}
return 0;
}