func:swap(p,q){let:t;t=*p;*p=*q;*q=t;}func:qsort(begin,end){if(end-begin<=1){return;}if(end-begin==2){end-=1;if(*begin>*(end)){swap(begin,end);}return;}let:pv(begin),it(begin+1);let:t;swap(begin,(begin+end)/2);while(it=*it){t=*(pv+1);*(pv+1)=*it;*it=t;t=*pv;*pv=*(pv+=1);*(pv)=t;}it+=1;}qsort(begin,pv);qsort(pv+1,end);}func:pow(x,p){let:a(1);while(1<=p){a*=x;p-=1;}return:a;}func:main(){let:n;let:stk[399],cnt(0);n=__geti();let:i(0),j(0);while(i<=n){j=0;while(j<=n){stk[cnt]=pow(2,i)*pow(5,j);cnt+=1;j+=1;}i+=1;}stk[cnt]=0;qsort(&stk,&stk+cnt);i=0;cnt-=1;while(i<=cnt){__puti(stk[i]);__putc('\n');i+=1;}}