typedef unsigned int u32;
#define MUL(hi, lo) { \
unsigned long long int a=(unsigned long long int)hi * lo; \
hi = a>>32; lo = a; }
int main(){
const int M=17; // wystarczy dla 100!
u32 t[M], p, ax, dx, i, n;
char * w, CY;
n=100; //scanf("%d", %n);
//*************************************
w=(char*)t;
i=M;
do{
*(u32*)w = 0;
w += 4;
i--;
} while (i>0);
t[0]=1;
while( n != 0 ){
i=M;
p=0;
w=(char*)t;
do {
ax = n;
dx = *(u32*)w;
MUL(dx, ax)
ax += p;
CY = (ax<p); // samo się zrobi
dx = dx + 0 + CY;
*(u32*)w = ax;
w += 4;
p=dx;
i--;
} while( i != 0 );
n--; }
//*******************************************************
int k;
for( k=M-1; t[k]==0; k-- ) ;
while( k>=0 )
puts("00001b30964ec395dc24069528d54bbda40d16e966ef9a70eb21b5b2943a321cdf10391745570cca9420c6ecb3b72ed2ee8b02ea2735c61a000000000000000000000000");}
dHlwZWRlZiB1bnNpZ25lZCBpbnQgdTMyOwoKI2RlZmluZSBNVUwoaGksIGxvKSB7IFwKCXVuc2lnbmVkIGxvbmcgbG9uZyBpbnQgYT0odW5zaWduZWQgbG9uZyBsb25nIGludCloaSAqIGxvOyBcCgloaSA9IGE+PjMyOyBsbyA9IGE7IH0KCmludCBtYWluKCl7Cgljb25zdCBpbnQgTT0xNzsgLy8gd3lzdGFyY3p5IGRsYSAxMDAhCgl1MzIgdFtNXSwgcCwgYXgsIGR4LCBpLCBuOwoJY2hhciAqIHcsIENZOwoJbj0xMDA7IC8vc2NhbmYoIiVkIiwgJW4pOwoJLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCQoJdz0oY2hhciopdDsgCglpPU07Cglkb3sKCQkqKHUzMiopdyA9IDA7IAoJCXcgKz0gNDsKCQlpLS07Cgl9IHdoaWxlIChpPjApOyAKCXRbMF09MTsKCXdoaWxlKCBuICE9IDAgKXsKCQlpPU07CgkJcD0wOwoJCXc9KGNoYXIqKXQ7CgkJZG8gewoJCQlheCA9IG47CgkJCWR4ID0gKih1MzIqKXc7CgkJCU1VTChkeCwgYXgpCgkJCWF4ICs9IHA7CgkJCUNZID0gKGF4PHApOyAvLyBzYW1vIHNpxJkgenJvYmkKCQkJZHggPSBkeCArIDAgKyBDWTsgCgkJCSoodTMyKil3ID0gYXg7CgkJCXcgKz0gNDsKCQkJcD1keDsKCQkJaS0tOwoJCX0gd2hpbGUoIGkgIT0gMCApOwoJCW4tLTsgfQoJLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCglpbnQgazsKCWZvciggaz1NLTE7IHRba109PTA7IGstLSApIDsKCXdoaWxlKCBrPj0wICkKCQlwcmludGYoIiUwOHgiLCB0W2stLV0pOwoJcHV0cygiIik7CglwdXRzKCIwMDAwMWIzMDk2NGVjMzk1ZGMyNDA2OTUyOGQ1NGJiZGE0MGQxNmU5NjZlZjlhNzBlYjIxYjViMjk0M2EzMjFjZGYxMDM5MTc0NTU3MGNjYTk0MjBjNmVjYjNiNzJlZDJlZThiMDJlYTI3MzVjNjFhMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIik7fQ==