@u="0335443554366887798866555766"=~/./g;sub n{@p=(Thir,Four,Fif,Six,Seven,Eigh,Nine);@n=("",One,Two,Three,Four,Five,@p[3..6],Ten,Eleven,Twelve,map($_.teen,@p),map$_.ty,Twen,@p);$n[22]=~s/u//;$n[8].=t;shift()?$_<20?$n[$_]:$n[$_/10+18].$n[$_%10]:Zero}$_=pop;print$z=n($_)," is ",$_=$_-4?length$z:magic,".\n"while/\d/