#include <iostream>
#include <map>
#include <string>
#include<vector>
using namespace std;
void PodzialLiczbyNaGrupy(vector<string> &GrupyCyfr,string liczba)
{
int dlugosc=liczba.length();
string TrzyCyfry;
while(dlugosc>3)
{
TrzyCyfry=liczba.substr(dlugosc-3,dlugosc-1);
liczba.erase(dlugosc-3,dlugosc-1);
GrupyCyfr.push_back(TrzyCyfry);
dlugosc=dlugosc-3;
}
GrupyCyfr.push_back(liczba);
}
int main()
{
map <string,string> jednostki;
map<string,string> nastki;
map<string,string> dziesiatki;
map<string,string> setki;
jednostki["1"]="jeden";
jednostki["2"]="dwa";
jednostki["3"]="trzy";
jednostki["4"]="cztery";
jednostki["5"]="piec";
jednostki["6"]="szesc";
jednostki["7"]="siedem";
jednostki["8"]="osiem";
jednostki["9"]="dziewiec";
nastki["10"]="dziesiec";
nastki["11"]="jedenascie";
nastki["12"]="dwanascie";
nastki["13"]="trzynascie";
nastki["14"]="czternascie";
nastki["15"]="pietnascie";
nastki["16"]="szesnascie";
nastki["17"]="siedemnascie";
nastki["18"]="osiemnascie";
nastki["19"]="dziewietnascie";
dziesiatki["2"]="dwadziescia";
dziesiatki["3"]="trzydziesci";
dziesiatki["4"]="czterdziesci";
dziesiatki["5"]="piecdziesiat";
dziesiatki["6"]="szescdziesiat";
dziesiatki["7"]="siedemdziesiat";
dziesiatki["8"]="osiemdziesiat";
dziesiatki["9"]="dziewiecdziesiat";
setki["1"]="sto";
setki["2"]="dwiescie";
setki["3"]="trzysta";
setki["4"]="czterysta";
setki["5"]="piecset";
setki["6"]="szescset";
setki["7"]="siedemset";
setki["8"]="osiemset";
setki["9"]="dziewiecset";
map<int,string> rzedy;
rzedy[1]="tys.";
rzedy[2]="mln.";
rzedy[3]="mld.";
rzedy[4]="bln.";
int t;
cin>>t;
for(int z=0; z<t; z++)
{
string liczba;
cin>>liczba;
int dlugosc=liczba.length();
vector<string> GrupyCyfr;
vector<string>::iterator poczatek=GrupyCyfr.begin();
PodzialLiczbyNaGrupy(GrupyCyfr,liczba);
string cyfry;
string PojedynczaCyfra;
int rozmiar=GrupyCyfr.size();
int x=1;
for(int i=rozmiar-1; i>=0; i--)
{
cyfry=GrupyCyfr.at(i);
int iteracja=cyfry.length();
int j=0;
while(iteracja>0)
{
if(iteracja==3)
{
PojedynczaCyfra=cyfry[j];
if(PojedynczaCyfra=="0")
{
j++;
iteracja--;
}
else
{
cout<<setki.find(PojedynczaCyfra)->second<<" ";
iteracja--;
j++;
}
}
if(iteracja==2)
{
PojedynczaCyfra=cyfry[j];
if(PojedynczaCyfra=="1")
{
PojedynczaCyfra=PojedynczaCyfra+cyfry[j+1];
cout<<nastki.find(PojedynczaCyfra)->second<<" ";
iteracja=0;
}
else if(PojedynczaCyfra=="0")
{
j++;
iteracja--;
}
else
{
cout<<dziesiatki.find(PojedynczaCyfra)->second<<" ";
iteracja--;
j++;
}
}
if(iteracja==1)
{
PojedynczaCyfra=cyfry[j];
if(PojedynczaCyfra=="0")
{
iteracja=0;
}
else
{
cout<<jednostki.find(PojedynczaCyfra)->second<<" ";
iteracja=0;
}
}
}
if(cyfry!="000")
{
cout<<rzedy.find(rozmiar-x)->second<<" ";
}
x++;
}
cout<<endl;
}
}