A helluva damn lot of people appear to be asking this question lately. I wonder where all these folks come down from, eh...
Anyway, if you want code:
Code:
#include <stdlib.h>
#include <stdio.h>
#define s(a,b) (a-b)
#define p(x) putchar(n[s(0[v][s(-c/2,3)],48)*5+x]+1)
const char*n="ydqn\37nmd\37\37svn\37\37sgqddentq\37ehud\37rhw\37\37rdudmdhfgsmh"
"md\37sdm\37\37";int main(int c,char**v){return c>0?main(-1,v),0:c==-1?v=malloc(
sizeof(char*)<<1),v[0]=malloc(60),fgets(v[0],40,stdin),sscanf(v[0],"%d",(int*)v[
0]+10)?main(-6,v),0:puts("Illegal argument!"),getchar(),0:c%2?c<-4?main(c+2,v),0
:0:v[0][s(s(,c)/2,3)]>=48&&v[0][s(s(,c)/2,3)]<=57?p(0),p(1),p(2),p(3),p(4),puts(
""),main(s(c,2),v),0:main(++c,v),0;}
Good luck.