#include <iostream>
using namespace std;
#include <string>
#include <stdio.h>
#include <string.h>
string digital[10] = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};
string wei[3] = {"Shi", "Bai", "Qian"};
void ge(string num , bool isprint)
{
int len = num.size();
bool zero = false;
for (int i=0; i<len; i++)
{
if (!(num[i] - '0')) zero = true;
if ((num[i] - '0'))
{
if(zero && isprint)
{
cout<<" ling";
zero = false;
}
if (isprint) cout<<" "<<digital[num[i] - '0'];
else cout<<digital[num[i] - '0'];
isprint = true;
if (i != len - 1) cout<<" "<<wei[len-i-2];
}
//if (!zero && (num[i+1] - '0') && i != len-1) cout<<" ";
}
}
void wan(string num)
{
int len = num.size();
char wanwei[5] = {'0', '0', '0', '0','\0'}, gewei[5];
gewei[4] = '\0';
for (int i=0, j=8-len; i<len-4;j++,i++) wanwei[j] = num[i];
for (int i=len-4, j=0; i<len; i++, j++) gewei[j] = num[i];
string a(wanwei);
string b(gewei);
//cout<<"wanwei = "<<a.size()<<" gewei = "<<b.size()<<endl;
//cout<<"wanwei = "<<a<<" gewei = "<<b<<endl;
if (!(wanwei[0] == '0' && wanwei[1] == '0' && wanwei[2] == '0' && wanwei[3] == '0'))
{
ge(a, false);
cout<<" Wan";
}
//if (!(gewei[0] == '0' && gewei[1] == '0' && gewei[2] == '0' && gewei[3] == '0')) cout<<" ";
else {cout<<"ling "; ge(b, false); return;}
ge(b, true);
}
void yi(string num)
{
char wange[8];
cout<<digital[num[0] - '0']<<" Yi";
for (int i=1, j=0; i<9; i++, j++) wange[j] = num[i];
if (!(wange[0] == '0' && wange[1] == '0' && wange[2] == '0' && wange[3] == '0' && wange[4] == '0' && wange[6] == '0' && wange[5] == '0' && wange[7] == '0')) cout<<" ";
else return;
string a(wange);
wan(a);
}
int main()
{
string numTemp, num;
cin>>numTemp;
getchar();
int lenTemp = numTemp.size();
if (numTemp == "0" || numTemp == "-0")
{
cout<<"ling";
return 0;
}
if (numTemp[0] == '-') {
cout<<"Fu ";
char numT[10];
memset(numT, '\0', sizeof(numT));
for (int i=1; i<lenTemp; i++) numT[i-1] = numTemp[i];
string a(numT);
cout<<"a:"<<a<<" a.size()="<<a.size()<<endl;
num = a;
}
else num = numTemp;
int len = num.size();
//cout<<"len="<<len<<endl;
if (len == 9) yi(num);
else if (len >= 5) wan(num);
else ge(num, false);
return 0;
}
//还没有编译过,第一个点段错误,花了好多时间调,脑子都大了,以后有精力了再看吧