/*****************************************************************************/
/* */
/* 2048/32 BIT DIVIDE (UNSIGNED) */
/* 02/08/12 (dkc) */
/* */
/*****************************************************************************/
unsigned int carry(unsigned int a, unsigned int b, unsigned int sum);
unsigned int lmbd(unsigned int mode, unsigned int a);
void div2048_32(unsigned int a0, unsigned int a1, unsigned int a2,
unsigned int a3, unsigned int a4, unsigned int a5,
unsigned int a6, unsigned int a7, unsigned int a8,
unsigned int a9, unsigned int a10, unsigned int a11,
unsigned int a12, unsigned int a13, unsigned int a14,
unsigned int a15, unsigned int a16, unsigned int a17,
unsigned int a18, unsigned int a19, unsigned int a20,
unsigned int a21, unsigned int a22, unsigned int a23,
unsigned int a24, unsigned int a25, unsigned int a26,
unsigned int a27, unsigned int a28, unsigned int a29,
unsigned int a30, unsigned int a31, unsigned int a32,
unsigned int a33, unsigned int a34, unsigned int a35,
unsigned int a36, unsigned int a37, unsigned int a38,
unsigned int a39, unsigned int a40, unsigned int a41,
unsigned int a42, unsigned int a43, unsigned int a44,
unsigned int a45, unsigned int a46, unsigned int a47,
unsigned int a48, unsigned int a49, unsigned int a50,
unsigned int a51, unsigned int a52, unsigned int a53,
unsigned int a54, unsigned int a55, unsigned int a56,
unsigned int a57, unsigned int a58, unsigned int a59,
unsigned int a60, unsigned int a61, unsigned int a62,
unsigned int a63, unsigned int *quotient, unsigned int d63) {
unsigned int i,d0,d1,d2,d3,d4,d5,d6,dshift,ashift,count,flag;
unsigned int shift,c,c0,c1,c2,c3,c4,c5,c6,temp,temp0,temp1,temp2,temp3;
unsigned int temp4,temp5,temp6,temp7;
unsigned int d7,d8,d9,d10,d11,d12,d13,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23;
unsigned int d24,d25,d26,d27,d28,d29,d30,d31,d32,d33,d34,d35,d36,d37,d38,d39;
unsigned int d40,d41,d42,d43,d44,d45,d46,d47,d48,d49,d50,d51,d52,d53,d54,d55;
unsigned int d56,d57,d58,d59,d60,d61,d62;
unsigned int c7,c8,c9,c10,c11,c12,c13,c14,c15,c16,c17,c18,c19,c20,c21,c22,c23;
unsigned int c24,c25,c26,c27,c28,c29,c30,c31,c32,c33,c34,c35,c36,c37,c38,c39;
unsigned int c40,c41,c42,c43,c44,c45,c46,c47,c48,c49,c50,c51,c52,c53,c54,c55;
unsigned int c56,c57,c58,c59,c60,c61,c62;
unsigned int temp8,temp9,temp10,temp11,temp12,temp13,temp14,temp15;
unsigned int temp16,temp17,temp18,temp19,temp20,temp21,temp22,temp23;
unsigned int temp24,temp25,temp26,temp27,temp28,temp29,temp30,temp31;
unsigned int temp32,temp33,temp34,temp35,temp36,temp37,temp38,temp39;
unsigned int temp40,temp41,temp42,temp43,temp44,temp45,temp46,temp47;
unsigned int temp48,temp49,temp50,temp51,temp52,temp53,temp54,temp55;
unsigned int temp56,temp57,temp58,temp59,temp60,temp61,temp62,temp63;
if (a0!=0)
ashift=lmbd(1,a0);
else
if (a1!=0)
ashift=32+lmbd(1,a1);
else
if (a2!=0)
ashift=64+lmbd(1,a2);
else
if (a3!=0)
ashift=96+lmbd(1,a3);
else
if (a4!=0)
ashift=128+lmbd(1,a4);
else
if (a5!=0)
ashift=160+lmbd(1,a5);
else
if (a6!=0)
ashift=192+lmbd(1,a6);
else
if (a7!=0)
ashift=224+lmbd(1,a7);
else
if (a8!=0)
ashift=256+lmbd(1,a8);
else
if (a9!=0)
ashift=288+lmbd(1,a9);
else
if (a10!=0)
ashift=320+lmbd(1,a10);
else
if (a11!=0)
ashift=352+lmbd(1,a11);
else
if (a12!=0)
ashift=384+lmbd(1,a12);
else
if (a13!=0)
ashift=416+lmbd(1,a13);
else
if (a14!=0)
ashift=448+lmbd(1,a14);
else
if (a15!=0)
ashift=480+lmbd(1,a15);
else
if (a16!=0)
ashift=512+lmbd(1,a16);
else
if (a17!=0)
ashift=544+lmbd(1,a17);
else
if (a18!=0)
ashift=576+lmbd(1,a18);
else
if (a19!=0)
ashift=608+lmbd(1,a19);
else
if (a20!=0)
ashift=640+lmbd(1,a20);
else
if (a21!=0)
ashift=672+lmbd(1,a21);
else
if (a22!=0)
ashift=704+lmbd(1,a22);
else
if (a23!=0)
ashift=736+lmbd(1,a23);
else
if (a24!=0)
ashift=768+lmbd(1,a24);
else
if (a25!=0)
ashift=800+lmbd(1,a25);
else
if (a26!=0)
ashift=832+lmbd(1,a26);
else
if (a27!=0)
ashift=864+lmbd(1,a27);
else
if (a28!=0)
ashift=896+lmbd(1,a28);
else
if (a29!=0)
ashift=928+lmbd(1,a29);
else
if (a30!=0)
ashift=960+lmbd(1,a30);
else
if (a31!=0)
ashift=992+lmbd(1,a31);
else
if (a32!=0)
ashift=1024+lmbd(1,a32);
else
if (a33!=0)
ashift=1056+lmbd(1,a33);
else
if (a34!=0)
ashift=1088+lmbd(1,a34);
else
if (a35!=0)
ashift=1120+lmbd(1,a35);
else
if (a36!=0)
ashift=1152+lmbd(1,a36);
else
if (a37!=0)
ashift=1184+lmbd(1,a37);
else
if (a38!=0)
ashift=1216+lmbd(1,a38);
else
if (a39!=0)
ashift=1248+lmbd(1,a39);
else
if (a40!=0)
ashift=1280+lmbd(1,a40);
else
if (a41!=0)
ashift=1312+lmbd(1,a41);
else
if (a42!=0)
ashift=1344+lmbd(1,a42);
else
if (a43!=0)
ashift=1376+lmbd(1,a43);
else
if (a44!=0)
ashift=1408+lmbd(1,a44);
else
if (a45!=0)
ashift=1440+lmbd(1,a45);
else
if (a46!=0)
ashift=1472+lmbd(1,a46);
else
if (a47!=0)
ashift=1504+lmbd(1,a47);
else
if (a48!=0)
ashift=1536+lmbd(1,a48);
else
if (a49!=0)
ashift=1568+lmbd(1,a49);
else
if (a50!=0)
ashift=1600+lmbd(1,a50);
else
if (a51!=0)
ashift=1632+lmbd(1,a51);
else
if (a52!=0)
ashift=1664+lmbd(1,a52);
else
if (a53!=0)
ashift=1696+lmbd(1,a53);
else
if (a54!=0)
ashift=1728+lmbd(1,a54);
else
if (a55!=0)
ashift=1760+lmbd(1,a55);
else
if (a56!=0)
ashift=1792+lmbd(1,a56);
else
if (a57!=0)
ashift=1824+lmbd(1,a57);
else
if (a58!=0)
ashift=1856+lmbd(1,a58);
else
if (a59!=0)
ashift=1888+lmbd(1,a59);
else
if (a60!=0)
ashift=1920+lmbd(1,a60);
else
if (a61!=0)
ashift=1952+lmbd(1,a61);
else
if (a62!=0)
ashift=1984+lmbd(1,a62);
else {
if (a63>=d63)
ashift=2016+lmbd(1,a63);
else {
a63=0;
goto zskip;
}
}
dshift=lmbd(1,d63);
dshift+=2016;
shift=dshift-ashift;
count=shift+1;
d0=0;
d1=0;
d2=0;
d3=0;
d4=0;
d5=0;
d6=0;
d7=0;
d8=0;
d9=0;
d10=0;
d11=0;
d12=0;
d13=0;
d14=0;
d15=0;
d16=0;
d17=0;
d18=0;
d19=0;
d20=0;
d21=0;
d22=0;
d23=0;
d24=0;
d25=0;
d26=0;
d27=0;
d28=0;
d29=0;
d30=0;
d31=0;
d32=0;
d33=0;
d34=0;
d35=0;
d36=0;
d37=0;
d38=0;
d39=0;
d40=0;
d41=0;
d42=0;
d43=0;
d44=0;
d45=0;
d46=0;
d47=0;
d48=0;
d49=0;
d50=0;
d51=0;
d52=0;
d53=0;
d54=0;
d55=0;
d56=0;
d57=0;
d58=0;
d59=0;
d60=0;
d61=0;
d62=0;
if (shift<32) {
if (shift!=0) {
d62=d63>>(32-shift);
d63=d63<<shift;
}
flag=63;
shift=32-shift;
}
else {
shift=shift-32;
d62=d63;
d63=0;
if (shift<32) {
if (shift!=0) {
d61=d62>>(32-shift);
d62=d62<<shift;
}
flag=62;
shift=32-shift;
}
else {
shift=shift-32;
d61=d62;
d62=0;
if (shift<32) {
if (shift!=0) {
d60=d61>>(32-shift);
d61=d61<<shift;
}
flag=61;
shift=32-shift;
}
else {
shift=shift-32;
d60=d61;
d61=0;
if (shift<32) {
if (shift!=0) {
d59=d60>>(32-shift);
d60=d60<<shift;
}
flag=60;
shift=32-shift;
}
else {
shift=shift-32;
d59=d60;
d60=0;
if (shift<32) {
if (shift!=0) {
d58=d59>>(32-shift);
d59=d59<<shift;
}
flag=59;
shift=32-shift;
}
else {
shift=shift-32;
d58=d59;
d59=0;
if (shift<32) {
if (shift!=0) {
d57=d58>>(32-shift);
d58=d58<<shift;
}
flag=58;
shift=32-shift;
}
else {
shift=shift-32;
d57=d58;
d58=0;
if (shift<32) {
if (shift!=0) {
d56=d57>>(32-shift);
d57=d57<<shift;
}
flag=57;
shift=32-shift;
}
else {
shift=shift-32;
d56=d57;
d57=0;
if (shift<32) {
if (shift!=0) {
d55=d56>>(32-shift);
d56=d56<<shift;
}
flag=56;
shift=32-shift;
}
else {
shift=shift-32;
d55=d56;
d56=0;
if (shift<32) {
if (shift!=0) {
d54=d55>>(32-shift);
d55=d55<<shift;
}
flag=55;
shift=32-shift;
}
else {
shift=shift-32;
d54=d55;
d55=0;
if (shift<32) {
if (shift!=0) {
d53=d54>>(32-shift);
d54=d54<<shift;
}
flag=54;
shift=32-shift;
}
else {
shift=shift-32;
d53=d54;
d54=0;
if (shift<32) {
if (shift!=0) {
d52=d53>>(32-shift);
d53=d53<<shift;
}
flag=53;
shift=32-shift;
}
else {
shift=shift-32;
d52=d53;
d53=0;
if (shift<32) {
if (shift!=0) {
d51=d52>>(32-shift);
d52=d52<<shift;
}
flag=52;
shift=32-shift;
}
else {
shift=shift-32;
d51=d52;
d52=0;
if (shift<32) {
if (shift!=0) {
d50=d51>>(32-shift);
d51=d51<<shift;
}
flag=51;
shift=32-shift;
}
else {
shift=shift-32;
d50=d51;
d51=0;
if (shift<32) {
if (shift!=0) {
d49=d50>>(32-shift);
d50=d50<<shift;
}
flag=50;
shift=32-shift;
}
else {
shift=shift-32;
d49=d50;
d50=0;
if (shift<32) {
if (shift!=0) {
d48=d49>>(32-shift);
d49=d49<<shift;
}
flag=49;
shift=32-shift;
}
else {
shift=shift-32;
d48=d49;
d49=0;
if (shift<32) {
if (shift!=0) {
d47=d48>>(32-shift);
d48=d48<<shift;
}
flag=48;
shift=32-shift;
}
else {
shift=shift-32;
d47=d48;
d48=0;
if (shift<32) {
if (shift!=0) {
d46=d47>>(32-shift);
d47=d47<<shift;
}
flag=47;
shift=32-shift;
}
else {
shift=shift-32;
d46=d47;
d47=0;
if (shift<32) {
if (shift!=0) {
d45=d46>>(32-shift);
d46=d46<<shift;
}
flag=46;
shift=32-shift;
}
else {
shift=shift-32;
d45=d46;
d46=0;
if (shift<32) {
if (shift!=0) {
d44=d45>>(32-shift);
d45=d45<<shift;
}
flag=45;
shift=32-shift;
}
else {
shift=shift-32;
d44=d45;
d45=0;
if (shift<32) {
if (shift!=0) {
d43=d44>>(32-shift);
d44=d44<<shift;
}
flag=44;
shift=32-shift;
}
else {
shift=shift-32;
d43=d44;
d44=0;
if (shift<32) {
if (shift!=0) {
d42=d43>>(32-shift);
d43=d43<<shift;
}
flag=43;
shift=32-shift;
}
else {
shift=shift-32;
d42=d43;
d43=0;
if (shift<32) {
if (shift!=0) {
d41=d42>>(32-shift);
d42=d42<<shift;
}
flag=42;
shift=32-shift;
}
else {
shift=shift-32;
d41=d42;
d42=0;
if (shift<32) {
if (shift!=0) {
d40=d41>>(32-shift);
d41=d41<<shift;
}
flag=41;
shift=32-shift;
}
else {
shift=shift-32;
d40=d41;
d41=0;
if (shift<32) {
if (shift!=0) {
d39=d40>>(32-shift);
d40=d40<<shift;
}
flag=40;
shift=32-shift;
}
else {
shift=shift-32;
d39=d40;
d40=0;
if (shift<32) {
if (shift!=0) {
d38=d39>>(32-shift);
d39=d39<<shift;
}
flag=39;
shift=32-shift;
}
else {
shift=shift-32;
d38=d39;
d39=0;
if (shift<32) {
if (shift!=0) {
d37=d38>>(32-shift);
d38=d38<<shift;
}
flag=38;
shift=32-shift;
}
else {
shift=shift-32;
d37=d38;
d38=0;
if (shift<32) {
if (shift!=0) {
d36=d37>>(32-shift);
d37=d37<<shift;
}
flag=37;
shift=32-shift;
}
else {
shift=shift-32;
d36=d37;
d37=0;
if (shift<32) {
if (shift!=0) {
d35=d36>>(32-shift);
d36=d36<<shift;
}
flag=36;
shift=32-shift;
}
else {
shift=shift-32;
d35=d36;
d36=0;
if (shift<32) {
if (shift!=0) {
d34=d35>>(32-shift);
d35=d35<<shift;
}
flag=35;
shift=32-shift;
}
else {
shift=shift-32;
d34=d35;
d35=0;
if (shift<32) {
if (shift!=0) {
d33=d34>>(32-shift);
d34=d34<<shift;
}
flag=34;
shift=32-shift;
}
else {
shift=shift-32;
d33=d34;
d34=0;
if (shift<32) {
if (shift!=0) {
d32=d33>>(32-shift);
d33=d33<<shift;
}
flag=33;
shift=32-shift;
}
else {
shift=shift-32;
d32=d33;
d33=0;
if (shift<32) {
if (shift!=0) {
d31=d32>>(32-shift);
d32=d32<<shift;
}
flag=32;
shift=32-shift;
}
else {
shift=shift-32;
d31=d32;
d32=0;
if (shift<32) {
if (shift!=0) {
d30=d31>>(32-shift);
d31=d31<<shift;
}
flag=31;
shift=32-shift;
}
else {
shift=shift-32;
d30=d31;
d31=0;
if (shift<32) {
if (shift!=0) {
d29=d30>>(32-shift);
d30=d30<<shift;
}
flag=30;
shift=32-shift;
}
else {
shift=shift-32;
d29=d30;
d30=0;
if (shift<32) {
if (shift!=0) {
d28=d29>>(32-shift);
d29=d29<<shift;
}
flag=29;
shift=32-shift;
}
else {
shift=shift-32;
d28=d29;
d29=0;
if (shift<32) {
if (shift!=0) {
d27=d28>>(32-shift);
d28=d28<<shift;
}
flag=28;
shift=32-shift;
}
else {
shift=shift-32;
d27=d28;
d28=0;
if (shift<32) {
if (shift!=0) {
d26=d27>>(32-shift);
d27=d27<<shift;
}
flag=27;
shift=32-shift;
}
else {
shift=shift-32;
d26=d27;
d27=0;
if (shift<32) {
if (shift!=0) {
d25=d26>>(32-shift);
d26=d26<<shift;
}
flag=26;
shift=32-shift;
}
else {
shift=shift-32;
d25=d26;
d26=0;
if (shift<32) {
if (shift!=0) {
d24=d25>>(32-shift);
d25=d25<<shift;
}
flag=25;
shift=32-shift;
}
else {
shift=shift-32;
d24=d25;
d25=0;
if (shift<32) {
if (shift!=0) {
d23=d24>>(32-shift);
d24=d24<<shift;
}
flag=24;
shift=32-shift;
}
else {
shift=shift-32;
d23=d24;
d24=0;
if (shift<32) {
if (shift!=0) {
d22=d23>>(32-shift);
d23=d23<<shift;
}
flag=23;
shift=32-shift;
}
else {
shift=shift-32;
d22=d23;
d23=0;
if (shift<32) {
if (shift!=0) {
d21=d22>>(32-shift);
d22=d22<<shift;
}
flag=22;
shift=32-shift;
}
else {
shift=shift-32;
d21=d22;
d22=0;
if (shift<32) {
if (shift!=0) {
d20=d21>>(32-shift);
d21=d21<<shift;
}
flag=21;
shift=32-shift;
}
else {
shift=shift-32;
d20=d21;
d21=0;
if (shift<32) {
if (shift!=0) {
d19=d20>>(32-shift);
d20=d20<<shift;
}
flag=20;
shift=32-shift;
}
else {
shift=shift-32;
d19=d20;
d20=0;
if (shift<32) {
if (shift!=0) {
d18=d19>>(32-shift);
d19=d19<<shift;
}
flag=19;
shift=32-shift;
}
else {
shift=shift-32;
d18=d19;
d19=0;
if (shift<32) {
if (shift!=0) {
d17=d18>>(32-shift);
d18=d18<<shift;
}
flag=18;
shift=32-shift;
}
else {
shift=shift-32;
d17=d18;
d18=0;
if (shift<32) {
if (shift!=0) {
d16=d17>>(32-shift);
d17=d17<<shift;
}
flag=17;
shift=32-shift;
}
else {
shift=shift-32;
d16=d17;
d17=0;
if (shift<32) {
if (shift!=0) {
d15=d16>>(32-shift);
d16=d16<<shift;
}
flag=16;
shift=32-shift;
}
else {
shift=shift-32;
d15=d16;
d16=0;
if (shift<32) {
if (shift!=0) {
d14=d15>>(32-shift);
d15=d15<<shift;
}
flag=15;
shift=32-shift;
}
else {
shift=shift-32;
d14=d15;
d15=0;
if (shift<32) {
if (shift!=0) {
d13=d14>>(32-shift);
d14=d14<<shift;
}
flag=14;
shift=32-shift;
}
else {
shift=shift-32;
d13=d14;
d14=0;
if (shift<32) {
if (shift!=0) {
d12=d13>>(32-shift);
d13=d13<<shift;
}
flag=13;
shift=32-shift;
}
else {
shift=shift-32;
d12=d13;
d13=0;
if (shift<32) {
if (shift!=0) {
d11=d12>>(32-shift);
d12=d12<<shift;
}
flag=12;
shift=32-shift;
}
else {
shift=shift-32;
d11=d12;
d12=0;
if (shift<32) {
if (shift!=0) {
d10=d11>>(32-shift);
d11=d11<<shift;
}
flag=11;
shift=32-shift;
}
else {
shift=shift-32;
d10=d11;
d11=0;
if (shift<32) {
if (shift!=0) {
d9=d10>>(32-shift);
d10=d10<<shift;
}
flag=10;
shift=32-shift;
}
else {
shift=shift-32;
d9=d10;
d10=0;
if (shift<32) {
if (shift!=0) {
d8=d9>>(32-shift);
d9=d9<<shift;
}
flag=9;
shift=32-shift;
}
else {
shift=shift-32;
d8=d9;
d9=0;
if (shift<32) {
if (shift!=0) {
d7=d8>>(32-shift);
d8=d8<<shift;
}
flag=8;
shift=32-shift;
}
else {
shift=shift-32;
d7=d8;
d8=0;
if (shift<32) {
if (shift!=0) {
d6=d7>>(32-shift);
d7=d7<<shift;
}
flag=7;
shift=32-shift;
}
else {
shift=shift-32;
d6=d7;
d7=0;
if (shift<32) {
if (shift!=0) {
d5=d6>>(32-shift);
d6=d6<<shift;
}
flag=6;
shift=32-shift;
}
else {
shift=shift-32;
d5=d6;
d6=0;
if (shift<32) {
if (shift!=0) {
d4=d5>>(32-shift);
d5=d5<<shift;
}
flag=5;
shift=32-shift;
}
else {
shift=shift-32;
d4=d5;
d5=0;
if (shift<32) {
if (shift!=0) {
d3=d4>>(32-shift);
d4=d4<<shift;
}
flag=4;
shift=32-shift;
}
else {
shift=shift-32;
d3=d4;
d4=0;
if (shift<32) {
if (shift!=0) {
d2=d3>>(32-shift);
d3=d3<<shift;
}
flag=3;
shift=32-shift;
}
else {
shift=shift-32;
d2=d3;
d3=0;
if (shift<32) {
if (shift!=0) {
d1=d2>>(32-shift);
d2=d2<<shift;
}
flag=2;
shift=32-shift;
}
else {
shift=shift-32;
d1=d2;
d2=0;
if (shift<32) {
if (shift!=0) {
d0=d1>>(32-shift);
d1=d1<<shift;
}
flag=1;
shift=32-shift;
}
else {
shift=shift-32;
d0=d1;
d1=0;
if (shift<32) {
if (shift!=0) {
d0=d0<<shift;
}
flag=0;
shift=32-shift;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
d0=~d0;
d1=~d1;
d2=~d2;
d3=~d3;
d4=~d4;
d5=~d5;
d6=~d6;
d7=~d7;
d8=~d8;
d9=~d9;
d10=~d10;
d11=~d11;
d12=~d12;
d13=~d13;
d14=~d14;
d15=~d15;
d16=~d16;
d17=~d17;
d18=~d18;
d19=~d19;
d20=~d20;
d21=~d21;
d22=~d22;
d23=~d23;
d24=~d24;
d25=~d25;
d26=~d26;
d27=~d27;
d28=~d28;
d29=~d29;
d30=~d30;
d31=~d31;
d32=~d32;
d33=~d33;
d34=~d34;
d35=~d35;
d36=~d36;
d37=~d37;
d38=~d38;
d39=~d39;
d40=~d40;
d41=~d41;
d42=~d42;
d43=~d43;
d44=~d44;
d45=~d45;
d46=~d46;
d47=~d47;
d48=~d48;
d49=~d49;
d50=~d50;
d51=~d51;
d52=~d52;
d53=~d53;
d54=~d54;
d55=~d55;
d56=~d56;
d57=~d57;
d58=~d58;
d59=~d59;
d60=~d60;
d61=~d61;
d62=~d62;
d63=~d63;
temp=d63+1;
c=carry(d63,1,temp);
d63=temp;
temp=d62+c;
c=carry(d62,1,temp);
d62=temp;
temp=d61+c;
c=carry(d61,1,temp);
d61=temp;
temp=d60+c;
c=carry(d60,1,temp);
d60=temp;
temp=d59+c;
c=carry(d59,1,temp);
d59=temp;
temp=d58+c;
c=carry(d58,1,temp);
d58=temp;
temp=d57+c;
c=carry(d57,1,temp);
d57=temp;
temp=d56+c;
c=carry(d56,1,temp);
d56=temp;
temp=d55+c;
c=carry(d55,1,temp);
d55=temp;
temp=d54+c;
c=carry(d54,1,temp);
d54=temp;
temp=d53+c;
c=carry(d53,1,temp);
d53=temp;
temp=d52+c;
c=carry(d52,1,temp);
d52=temp;
temp=d51+c;
c=carry(d51,1,temp);
d51=temp;
temp=d50+c;
c=carry(d50,1,temp);
d50=temp;
temp=d49+c;
c=carry(d49,1,temp);
d49=temp;
temp=d48+c;
c=carry(d48,1,temp);
d48=temp;
temp=d47+c;
c=carry(d47,1,temp);
d47=temp;
temp=d46+c;
c=carry(d46,1,temp);
d46=temp;
temp=d45+c;
c=carry(d45,1,temp);
d45=temp;
temp=d44+c;
c=carry(d44,1,temp);
d44=temp;
temp=d43+c;
c=carry(d43,1,temp);
d43=temp;
temp=d42+c;
c=carry(d42,1,temp);
d42=temp;
temp=d41+c;
c=carry(d41,1,temp);
d41=temp;
temp=d40+c;
c=carry(d40,1,temp);
d40=temp;
temp=d39+c;
c=carry(d39,1,temp);
d39=temp;
temp=d38+c;
c=carry(d38,1,temp);
d38=temp;
temp=d37+c;
c=carry(d37,1,temp);
d37=temp;
temp=d36+c;
c=carry(d36,1,temp);
d36=temp;
temp=d35+c;
c=carry(d35,1,temp);
d35=temp;
temp=d34+c;
c=carry(d34,1,temp);
d34=temp;
temp=d33+c;
c=carry(d33,1,temp);
d33=temp;
temp=d32+c;
c=carry(d32,1,temp);
d32=temp;
temp=d31+c;
c=carry(d31,1,temp);
d31=temp;
temp=d30+c;
c=carry(d30,1,temp);
d30=temp;
temp=d29+c;
c=carry(d29,1,temp);
d29=temp;
temp=d28+c;
c=carry(d28,1,temp);
d28=temp;
temp=d27+c;
c=carry(d27,1,temp);
d27=temp;
temp=d26+c;
c=carry(d26,1,temp);
d26=temp;
temp=d25+c;
c=carry(d25,1,temp);
d25=temp;
temp=d24+c;
c=carry(d24,1,temp);
d24=temp;
temp=d23+c;
c=carry(d23,1,temp);
d23=temp;
temp=d22+c;
c=carry(d22,1,temp);
d22=temp;
temp=d21+c;
c=carry(d21,1,temp);
d21=temp;
temp=d20+c;
c=carry(d20,1,temp);
d20=temp;
temp=d19+c;
c=carry(d19,1,temp);
d19=temp;
temp=d18+c;
c=carry(d18,1,temp);
d18=temp;
temp=d17+c;
c=carry(d17,1,temp);
d17=temp;
temp=d16+c;
c=carry(d16,1,temp);
d16=temp;
temp=d15+c;
c=carry(d15,1,temp);
d15=temp;
temp=d14+c;
c=carry(d14,1,temp);
d14=temp;
temp=d13+c;
c=carry(d13,1,temp);
d13=temp;
temp=d12+c;
c=carry(d12,1,temp);
d12=temp;
temp=d11+c;
c=carry(d11,1,temp);
d11=temp;
temp=d10+c;
c=carry(d10,1,temp);
d10=temp;
temp=d9+c;
c=carry(d9,1,temp);
d9=temp;
temp=d8+c;
c=carry(d8,1,temp);
d8=temp;
temp=d7+c;
c=carry(d7,1,temp);
d7=temp;
temp=d6+c;
c=carry(d6,1,temp);
d6=temp;
temp=d5+c;
c=carry(d5,1,temp);
d5=temp;
temp=d4+c;
c=carry(d4,1,temp);
d4=temp;
temp=d3+c;
c=carry(d3,1,temp);
d3=temp;
temp=d2+c;
c=carry(d2,c,temp);
d2=temp;
temp=d1+c;
c=carry(d1,c,temp);
d1=temp;
d0=d0+c;
for (i=0; i<count; i++) {
temp63=a63+d63;
c62=carry(a63,d63,temp63);
temp=a62+c62;
c61=carry(a62,c62,temp);
temp62=temp+d62;
c61+=carry(temp,d62,temp62);
temp=a61+c61;
c60=carry(a61,c61,temp);
temp61=temp+d61;
c60+=carry(temp,d61,temp61);
temp=a60+c60;
c59=carry(a60,c60,temp);
temp60=temp+d60;
c59+=carry(temp,d60,temp60);
temp=a59+c59;
c58=carry(a59,c59,temp);
temp59=temp+d59;
c58+=carry(temp,d59,temp59);
temp=a58+c58;
c57=carry(a58,c58,temp);
temp58=temp+d58;
c57+=carry(temp,d58,temp58);
temp=a57+c57;
c56=carry(a57,c57,temp);
temp57=temp+d57;
c56+=carry(temp,d57,temp57);
temp=a56+c56;
c55=carry(a56,c56,temp);
temp56=temp+d56;
c55+=carry(temp,d56,temp56);
temp=a55+c55;
c54=carry(a55,c55,temp);
temp55=temp+d55;
c54+=carry(temp,d55,temp55);
temp=a54+c54;
c53=carry(a54,c54,temp);
temp54=temp+d54;
c53+=carry(temp,d54,temp54);
temp=a53+c53;
c52=carry(a53,c53,temp);
temp53=temp+d53;
c52+=carry(temp,d53,temp53);
temp=a52+c52;
c51=carry(a52,c52,temp);
temp52=temp+d52;
c51+=carry(temp,d52,temp52);
temp=a51+c51;
c50=carry(a51,c51,temp);
temp51=temp+d51;
c50+=carry(temp,d51,temp51);
temp=a50+c50;
c49=carry(a50,c50,temp);
temp50=temp+d50;
c49+=carry(temp,d50,temp50);
temp=a49+c49;
c48=carry(a49,c49,temp);
temp49=temp+d49;
c48+=carry(temp,d49,temp49);
temp=a48+c48;
c47=carry(a48,c48,temp);
temp48=temp+d48;
c47+=carry(temp,d48,temp48);
temp=a47+c47;
c46=carry(a47,c47,temp);
temp47=temp+d47;
c46+=carry(temp,d47,temp47);
temp=a46+c46;
c45=carry(a46,c46,temp);
temp46=temp+d46;
c45+=carry(temp,d46,temp46);
temp=a45+c45;
c44=carry(a45,c45,temp);
temp45=temp+d45;
c44+=carry(temp,d45,temp45);
temp=a44+c44;
c43=carry(a44,c44,temp);
temp44=temp+d44;
c43+=carry(temp,d44,temp44);
temp=a43+c43;
c42=carry(a43,c43,temp);
temp43=temp+d43;
c42+=carry(temp,d43,temp43);
temp=a42+c42;
c41=carry(a42,c42,temp);
temp42=temp+d42;
c41+=carry(temp,d42,temp42);
temp=a41+c41;
c40=carry(a41,c41,temp);
temp41=temp+d41;
c40+=carry(temp,d41,temp41);
temp=a40+c40;
c39=carry(a40,c40,temp);
temp40=temp+d40;
c39+=carry(temp,d40,temp40);
temp=a39+c39;
c38=carry(a39,c39,temp);
temp39=temp+d39;
c38+=carry(temp,d39,temp39);
temp=a38+c38;
c37=carry(a38,c38,temp);
temp38=temp+d38;
c37+=carry(temp,d38,temp38);
temp=a37+c37;
c36=carry(a37,c37,temp);
temp37=temp+d37;
c36+=carry(temp,d37,temp37);
temp=a36+c36;
c35=carry(a36,c36,temp);
temp36=temp+d36;
c35+=carry(temp,d36,temp36);
temp=a35+c35;
c34=carry(a35,c35,temp);
temp35=temp+d35;
c34+=carry(temp,d35,temp35);
temp=a34+c34;
c33=carry(a34,c34,temp);
temp34=temp+d34;
c33+=carry(temp,d34,temp34);
temp=a33+c33;
c32=carry(a33,c33,temp);
temp33=temp+d33;
c32+=carry(temp,d33,temp33);
temp=a32+c32;
c31=carry(a32,c32,temp);
temp32=temp+d32;
c31+=carry(temp,d32,temp32);
temp=a31+c31;
c30=carry(a31,c31,temp);
temp31=temp+d31;
c30+=carry(temp,d31,temp31);
temp=a30+c30;
c29=carry(a30,c30,temp);
temp30=temp+d30;
c29+=carry(temp,d30,temp30);
temp=a29+c29;
c28=carry(a29,c29,temp);
temp29=temp+d29;
c28+=carry(temp,d29,temp29);
temp=a28+c28;
c27=carry(a28,c28,temp);
temp28=temp+d28;
c27+=carry(temp,d28,temp28);
temp=a27+c27;
c26=carry(a27,c27,temp);
temp27=temp+d27;
c26+=carry(temp,d27,temp27);
temp=a26+c26;
c25=carry(a26,c26,temp);
temp26=temp+d26;
c25+=carry(temp,d26,temp26);
temp=a25+c25;
c24=carry(a25,c25,temp);
temp25=temp+d25;
c24+=carry(temp,d25,temp25);
temp=a24+c24;
c23=carry(a24,c24,temp);
temp24=temp+d24;
c23+=carry(temp,d24,temp24);
temp=a23+c23;
c22=carry(a23,c23,temp);
temp23=temp+d23;
c22+=carry(temp,d23,temp23);
temp=a22+c22;
c21=carry(a22,c22,temp);
temp22=temp+d22;
c21+=carry(temp,d22,temp22);
temp=a21+c21;
c20=carry(a21,c21,temp);
temp21=temp+d21;
c20+=carry(temp,d21,temp21);
temp=a20+c20;
c19=carry(a20,c20,temp);
temp20=temp+d20;
c19+=carry(temp,d20,temp20);
temp=a19+c19;
c18=carry(a19,c19,temp);
temp19=temp+d19;
c18+=carry(temp,d19,temp19);
temp=a18+c18;
c17=carry(a18,c18,temp);
temp18=temp+d18;
c17+=carry(temp,d18,temp18);
temp=a17+c17;
c16=carry(a17,c17,temp);
temp17=temp+d17;
c16+=carry(temp,d17,temp17);
temp=a16+c16;
c15=carry(a16,c16,temp);
temp16=temp+d16;
c15+=carry(temp,d16,temp16);
temp=a15+c15;
c14=carry(a15,c15,temp);
temp15=temp+d15;
c14+=carry(temp,d15,temp15);
temp=a14+c14;
c13=carry(a14,c14,temp);
temp14=temp+d14;
c13+=carry(temp,d14,temp14);
temp=a13+c13;
c12=carry(a13,c13,temp);
temp13=temp+d13;
c12+=carry(temp,d13,temp13);
temp=a12+c12;
c11=carry(a12,c12,temp);
temp12=temp+d12;
c11+=carry(temp,d12,temp12);
temp=a11+c11;
c10=carry(a11,c11,temp);
temp11=temp+d11;
c10+=carry(temp,d11,temp11);
temp=a10+c10;
c9=carry(a10,c10,temp);
temp10=temp+d10;
c9+=carry(temp,d10,temp10);
temp=a9+c9;
c8=carry(a9,c9,temp);
temp9=temp+d9;
c8+=carry(temp,d9,temp9);
temp=a8+c8;
c7=carry(a8,c8,temp);
temp8=temp+d8;
c7+=carry(temp,d8,temp8);
temp=a7+c7;
c6=carry(a7,c7,temp);
temp7=temp+d7;
c6+=carry(temp,d7,temp7);
temp=a6+c6;
c5=carry(a6,c6,temp);
temp6=temp+d6;
c5+=carry(temp,d6,temp6);
temp=a5+c5;
c4=carry(a5,c5,temp);
temp5=temp+d5;
c4+=carry(temp,d5,temp5);
temp=a4+c4;
c3=carry(a4,c4,temp);
temp4=temp+d4;
c3+=carry(temp,d4,temp4);
temp=a3+c3;
c2=carry(a3,c3,temp);
temp3=temp+d3;
c2+=carry(temp,d3,temp3);
temp=a2+c2;
c1=carry(a2,c2,temp);
temp2=temp+d2;
c1+=carry(temp,d2,temp2);
temp=a1+c1;
c0=carry(a1,c1,temp);
temp1=temp+d1;
c0+=carry(temp,d1,temp1);
temp0=a0+d0+c0;
if ((temp0>>31)==0) {
a0=temp0<<1;
if ((temp1>>31)!=0)
c=1;
else
c=0;
a0=a0+c;
a1=temp1<<1;
if ((temp2>>31)!=0)
c=1;
else
c=0;
a1=a1+c;
a2=temp2<<1;
if ((temp3>>31)!=0)
c=1;
else
c=0;
a2=a2+c;
a3=temp3<<1;
if ((temp4>>31)!=0)
c=1;
else
c=0;
a3=a3+c;
a4=temp4<<1;
if ((temp5>>31)!=0)
c=1;
else
c=0;
a4=a4+c;
a5=temp5<<1;
if ((temp6>>31)!=0)
c=1;
else
c=0;
a5=a5+c;
a6=temp6<<1;
if ((temp7>>31)!=0)
c=1;
else
c=0;
a6=a6+c;
a7=temp7<<1;
if ((temp8>>31)!=0)
c=1;
else
c=0;
a7=a7+c;
a8=temp8<<1;
if ((temp9>>31)!=0)
c=1;
else
c=0;
a8=a8+c;
a9=temp9<<1;
if ((temp10>>31)!=0)
c=1;
else
c=0;
a9=a9+c;
a10=temp10<<1;
if ((temp11>>31)!=0)
c=1;
else
c=0;
a10=a10+c;
a11=temp11<<1;
if ((temp12>>31)!=0)
c=1;
else
c=0;
a11=a11+c;
a12=temp12<<1;
if ((temp13>>31)!=0)
c=1;
else
c=0;
a12=a12+c;
a13=temp13<<1;
if ((temp14>>31)!=0)
c=1;
else
c=0;
a13=a13+c;
a14=temp14<<1;
if ((temp15>>31)!=0)
c=1;
else
c=0;
a14=a14+c;
a15=temp15<<1;
if ((temp16>>31)!=0)
c=1;
else
c=0;
a15=a15+c;
a16=temp16<<1;
if ((temp17>>31)!=0)
c=1;
else
c=0;
a16=a16+c;
a17=temp17<<1;
if ((temp18>>31)!=0)
c=1;
else
c=0;
a17=a17+c;
a18=temp18<<1;
if ((temp19>>31)!=0)
c=1;
else
c=0;
a18=a18+c;
a19=temp19<<1;
if ((temp20>>31)!=0)
c=1;
else
c=0;
a19=a19+c;
a20=temp20<<1;
if ((temp21>>31)!=0)
c=1;
else
c=0;
a20=a20+c;
a21=temp21<<1;
if ((temp22>>31)!=0)
c=1;
else
c=0;
a21=a21+c;
a22=temp22<<1;
if ((temp23>>31)!=0)
c=1;
else
c=0;
a22=a22+c;
a23=temp23<<1;
if ((temp24>>31)!=0)
c=1;
else
c=0;
a23=a23+c;
a24=temp24<<1;
if ((temp25>>31)!=0)
c=1;
else
c=0;
a24=a24+c;
a25=temp25<<1;
if ((temp26>>31)!=0)
c=1;
else
c=0;
a25=a25+c;
a26=temp26<<1;
if ((temp27>>31)!=0)
c=1;
else
c=0;
a26=a26+c;
a27=temp27<<1;
if ((temp28>>31)!=0)
c=1;
else
c=0;
a27=a27+c;
a28=temp28<<1;
if ((temp29>>31)!=0)
c=1;
else
c=0;
a28=a28+c;
a29=temp29<<1;
if ((temp30>>31)!=0)
c=1;
else
c=0;
a29=a29+c;
a30=temp30<<1;
if ((temp31>>31)!=0)
c=1;
else
c=0;
a30=a30+c;
a31=temp31<<1;
if ((temp32>>31)!=0)
c=1;
else
c=0;
a31=a31+c;
a32=temp32<<1;
if ((temp33>>31)!=0)
c=1;
else
c=0;
a32=a32+c;
a33=temp33<<1;
if ((temp34>>31)!=0)
c=1;
else
c=0;
a33=a33+c;
a34=temp34<<1;
if ((temp35>>31)!=0)
c=1;
else
c=0;
a34=a34+c;
a35=temp35<<1;
if ((temp36>>31)!=0)
c=1;
else
c=0;
a35=a35+c;
a36=temp36<<1;
if ((temp37>>31)!=0)
c=1;
else
c=0;
a36=a36+c;
a37=temp37<<1;
if ((temp38>>31)!=0)
c=1;
else
c=0;
a37=a37+c;
a38=temp38<<1;
if ((temp39>>31)!=0)
c=1;
else
c=0;
a38=a38+c;
a39=temp39<<1;
if ((temp40>>31)!=0)
c=1;
else
c=0;
a39=a39+c;
a40=temp40<<1;
if ((temp41>>31)!=0)
c=1;
else
c=0;
a40=a40+c;
a41=temp41<<1;
if ((temp42>>31)!=0)
c=1;
else
c=0;
a41=a41+c;
a42=temp42<<1;
if ((temp43>>31)!=0)
c=1;
else
c=0;
a42=a42+c;
a43=temp43<<1;
if ((temp44>>31)!=0)
c=1;
else
c=0;
a43=a43+c;
a44=temp44<<1;
if ((temp45>>31)!=0)
c=1;
else
c=0;
a44=a44+c;
a45=temp45<<1;
if ((temp46>>31)!=0)
c=1;
else
c=0;
a45=a45+c;
a46=temp46<<1;
if ((temp47>>31)!=0)
c=1;
else
c=0;
a46=a46+c;
a47=temp47<<1;
if ((temp48>>31)!=0)
c=1;
else
c=0;
a47=a47+c;
a48=temp48<<1;
if ((temp49>>31)!=0)
c=1;
else
c=0;
a48=a48+c;
a49=temp49<<1;
if ((temp50>>31)!=0)
c=1;
else
c=0;
a49=a49+c;
a50=temp50<<1;
if ((temp51>>31)!=0)
c=1;
else
c=0;
a50=a50+c;
a51=temp51<<1;
if ((temp52>>31)!=0)
c=1;
else
c=0;
a51=a51+c;
a52=temp52<<1;
if ((temp53>>31)!=0)
c=1;
else
c=0;
a52=a52+c;
a53=temp53<<1;
if ((temp54>>31)!=0)
c=1;
else
c=0;
a53=a53+c;
a54=temp54<<1;
if ((temp55>>31)!=0)
c=1;
else
c=0;
a54=a54+c;
a55=temp55<<1;
if ((temp56>>31)!=0)
c=1;
else
c=0;
a55=a55+c;
a56=temp56<<1;
if ((temp57>>31)!=0)
c=1;
else
c=0;
a56=a56+c;
a57=temp57<<1;
if ((temp58>>31)!=0)
c=1;
else
c=0;
a57=a57+c;
a58=temp58<<1;
if ((temp59>>31)!=0)
c=1;
else
c=0;
a58=a58+c;
a59=temp59<<1;
if ((temp60>>31)!=0)
c=1;
else
c=0;
a59=a59+c;
a60=temp60<<1;
if ((temp61>>31)!=0)
c=1;
else
c=0;
a60=a60+c;
a61=temp61<<1;
if ((temp62>>31)!=0)
c=1;
else
c=0;
a61=a61+c;
a62=temp62<<1;
if ((temp63>>31)!=0)
c=1;
else
c=0;
a62=a62+c;
a63=temp63<<1;
a63=a63+1;
}
else {
a0=a0<<1;
if ((a1>>31)!=0)
c=1;
else
c=0;
a0=a0+c;
a1=a1<<1;
if ((a2>>31)!=0)
c=1;
else
c=0;
a1=a1+c;
a2=a2<<1;
if ((a3>>31)!=0)
c=1;
else
c=0;
a2=a2+c;
a3=a3<<1;
if ((a4>>31)!=0)
c=1;
else
c=0;
a3=a3+c;
a4=a4<<1;
if ((a5>>31)!=0)
c=1;
else
c=0;
a4=a4+c;
a5=a5<<1;
if ((a6>>31)!=0)
c=1;
else
c=0;
a5=a5+c;
a6=a6<<1;
if ((a7>>31)!=0)
c=1;
else
c=0;
a6=a6+c;
a7=a7<<1;
if ((a8>>31)!=0)
c=1;
else
c=0;
a7=a7+c;
a8=a8<<1;
if ((a9>>31)!=0)
c=1;
else
c=0;
a8=a8+c;
a9=a9<<1;
if ((a10>>31)!=0)
c=1;
else
c=0;
a9=a9+c;
a10=a10<<1;
if ((a11>>31)!=0)
c=1;
else
c=0;
a10=a10+c;
a11=a11<<1;
if ((a12>>31)!=0)
c=1;
else
c=0;
a11=a11+c;
a12=a12<<1;
if ((a13>>31)!=0)
c=1;
else
c=0;
a12=a12+c;
a13=a13<<1;
if ((a14>>31)!=0)
c=1;
else
c=0;
a13=a13+c;
a14=a14<<1;
if ((a15>>31)!=0)
c=1;
else
c=0;
a14=a14+c;
a15=a15<<1;
if ((a16>>31)!=0)
c=1;
else
c=0;
a15=a15+c;
a16=a16<<1;
if ((a17>>31)!=0)
c=1;
else
c=0;
a16=a16+c;
a17=a17<<1;
if ((a18>>31)!=0)
c=1;
else
c=0;
a17=a17+c;
a18=a18<<1;
if ((a19>>31)!=0)
c=1;
else
c=0;
a18=a18+c;
a19=a19<<1;
if ((a20>>31)!=0)
c=1;
else
c=0;
a19=a19+c;
a20=a20<<1;
if ((a21>>31)!=0)
c=1;
else
c=0;
a20=a20+c;
a21=a21<<1;
if ((a22>>31)!=0)
c=1;
else
c=0;
a21=a21+c;
a22=a22<<1;
if ((a23>>31)!=0)
c=1;
else
c=0;
a22=a22+c;
a23=a23<<1;
if ((a24>>31)!=0)
c=1;
else
c=0;
a23=a23+c;
a24=a24<<1;
if ((a25>>31)!=0)
c=1;
else
c=0;
a24=a24+c;
a25=a25<<1;
if ((a26>>31)!=0)
c=1;
else
c=0;
a25=a25+c;
a26=a26<<1;
if ((a27>>31)!=0)
c=1;
else
c=0;
a26=a26+c;
a27=a27<<1;
if ((a28>>31)!=0)
c=1;
else
c=0;
a27=a27+c;
a28=a28<<1;
if ((a29>>31)!=0)
c=1;
else
c=0;
a28=a28+c;
a29=a29<<1;
if ((a30>>31)!=0)
c=1;
else
c=0;
a29=a29+c;
a30=a30<<1;
if ((a31>>31)!=0)
c=1;
else
c=0;
a30=a30+c;
a31=a31<<1;
if ((a32>>31)!=0)
c=1;
else
c=0;
a31=a31+c;
a32=a32<<1;
if ((a33>>31)!=0)
c=1;
else
c=0;
a32=a32+c;
a33=a33<<1;
if ((a34>>31)!=0)
c=1;
else
c=0;
a33=a33+c;
a34=a34<<1;
if ((a35>>31)!=0)
c=1;
else
c=0;
a34=a34+c;
a35=a35<<1;
if ((a36>>31)!=0)
c=1;
else
c=0;
a35=a35+c;
a36=a36<<1;
if ((a37>>31)!=0)
c=1;
else
c=0;
a36=a36+c;
a37=a37<<1;
if ((a38>>31)!=0)
c=1;
else
c=0;
a37=a37+c;
a38=a38<<1;
if ((a39>>31)!=0)
c=1;
else
c=0;
a38=a38+c;
a39=a39<<1;
if ((a40>>31)!=0)
c=1;
else
c=0;
a39=a39+c;
a40=a40<<1;
if ((a41>>31)!=0)
c=1;
else
c=0;
a40=a40+c;
a41=a41<<1;
if ((a42>>31)!=0)
c=1;
else
c=0;
a41=a41+c;
a42=a42<<1;
if ((a43>>31)!=0)
c=1;
else
c=0;
a42=a42+c;
a43=a43<<1;
if ((a44>>31)!=0)
c=1;
else
c=0;
a43=a43+c;
a44=a44<<1;
if ((a45>>31)!=0)
c=1;
else
c=0;
a44=a44+c;
a45=a45<<1;
if ((a46>>31)!=0)
c=1;
else
c=0;
a45=a45+c;
a46=a46<<1;
if ((a47>>31)!=0)
c=1;
else
c=0;
a46=a46+c;
a47=a47<<1;
if ((a48>>31)!=0)
c=1;
else
c=0;
a47=a47+c;
a48=a48<<1;
if ((a49>>31)!=0)
c=1;
else
c=0;
a48=a48+c;
a49=a49<<1;
if ((a50>>31)!=0)
c=1;
else
c=0;
a49=a49+c;
a50=a50<<1;
if ((a51>>31)!=0)
c=1;
else
c=0;
a50=a50+c;
a51=a51<<1;
if ((a52>>31)!=0)
c=1;
else
c=0;
a51=a51+c;
a52=a52<<1;
if ((a53>>31)!=0)
c=1;
else
c=0;
a52=a52+c;
a53=a53<<1;
if ((a54>>31)!=0)
c=1;
else
c=0;
a53=a53+c;
a54=a54<<1;
if ((a55>>31)!=0)
c=1;
else
c=0;
a54=a54+c;
a55=a55<<1;
if ((a56>>31)!=0)
c=1;
else
c=0;
a55=a55+c;
a56=a56<<1;
if ((a57>>31)!=0)
c=1;
else
c=0;
a56=a56+c;
a57=a57<<1;
if ((a58>>31)!=0)
c=1;
else
c=0;
a57=a57+c;
a58=a58<<1;
if ((a59>>31)!=0)
c=1;
else
c=0;
a58=a58+c;
a59=a59<<1;
if ((a60>>31)!=0)
c=1;
else
c=0;
a59=a59+c;
a60=a60<<1;
if ((a61>>31)!=0)
c=1;
else
c=0;
a60=a60+c;
a61=a61<<1;
if ((a62>>31)!=0)
c=1;
else
c=0;
a61=a61+c;
a62=a62<<1;
if ((a63>>31)!=0)
c=1;
else
c=0;
a62=a62+c;
a63=a63<<1;
}
}
shift=shift-1;
if (flag==63) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=0;
a56=0;
a57=0;
a58=0;
a59=0;
a60=0;
a61=0;
a62=0;
a63=a63<<shift;
a63=a63>>shift;
} else
if (flag==62) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=0;
a56=0;
a57=0;
a58=0;
a59=0;
a60=0;
a61=0;
a62=a62<<shift;
a62=a62>>shift;
} else
if (flag==61) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=0;
a56=0;
a57=0;
a58=0;
a59=0;
a60=0;
a61=a61<<shift;
a61=a61>>shift;
} else
if (flag==60) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=0;
a56=0;
a57=0;
a58=0;
a59=0;
a60=a60<<shift;
a60=a60>>shift;
} else
if (flag==59) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=0;
a56=0;
a57=0;
a58=0;
a59=a59<<shift;
a59=a59>>shift;
} else
if (flag==58) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=0;
a56=0;
a57=0;
a58=a58<<shift;
a58=a58>>shift;
} else
if (flag==57) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=0;
a56=0;
a57=a57<<shift;
a57=a57>>shift;
} else
if (flag==56) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=0;
a56=a56<<shift;
a56=a56>>shift;
} else
if (flag==55) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=0;
a55=a55<<shift;
a55=a55>>shift;
} else
if (flag==54) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=0;
a54=a54<<shift;
a54=a54>>shift;
} else
if (flag==53) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=0;
a53=a53<<shift;
a53=a53>>shift;
} else
if (flag==52) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=0;
a52=a52<<shift;
a52=a52>>shift;
} else
if (flag==51) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=0;
a51=a51<<shift;
a51=a51>>shift;
} else
if (flag==50) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=0;
a50=a50<<shift;
a50=a50>>shift;
} else
if (flag==49) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=0;
a49=a49<<shift;
a49=a49>>shift;
} else
if (flag==48) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=0;
a48=a48<<shift;
a48=a48>>shift;
} else
if (flag==47) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=0;
a47=a47<<shift;
a47=a47>>shift;
} else
if (flag==46) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=0;
a46=a46<<shift;
a46=a46>>shift;
} else
if (flag==45) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=0;
a45=a45<<shift;
a45=a45>>shift;
} else
if (flag==44) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=0;
a44=a44<<shift;
a44=a44>>shift;
} else
if (flag==43) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=0;
a43=a43<<shift;
a43=a43>>shift;
} else
if (flag==42) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=0;
a42=a42<<shift;
a42=a42>>shift;
} else
if (flag==41) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=0;
a41=a41<<shift;
a41=a41>>shift;
} else
if (flag==40) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=0;
a40=a40<<shift;
a40=a40>>shift;
} else
if (flag==39) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=0;
a39=a39<<shift;
a39=a39>>shift;
} else
if (flag==38) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=0;
a38=a38<<shift;
a38=a38>>shift;
} else
if (flag==37) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=0;
a37=a37<<shift;
a37=a37>>shift;
} else
if (flag==36) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=0;
a36=a36<<shift;
a36=a36>>shift;
} else
if (flag==35) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=0;
a35=a35<<shift;
a35=a35>>shift;
} else
if (flag==34) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=0;
a34=a34<<shift;
a34=a34>>shift;
} else
if (flag==33) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=0;
a33=a33<<shift;
a33=a33>>shift;
} else
if (flag==32) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=0;
a32=a32<<shift;
a32=a32>>shift;
} else
if (flag==31) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=0;
a31=a31<<shift;
a31=a31>>shift;
} else
if (flag==30) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=0;
a30=a30<<shift;
a30=a30>>shift;
} else
if (flag==29) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=0;
a29=a29<<shift;
a29=a29>>shift;
} else
if (flag==28) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=0;
a28=a28<<shift;
a28=a28>>shift;
} else
if (flag==27) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=0;
a27=a27<<shift;
a27=a27>>shift;
} else
if (flag==26) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=0;
a26=a26<<shift;
a26=a26>>shift;
} else
if (flag==25) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=0;
a25=a25<<shift;
a25=a25>>shift;
} else
if (flag==24) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=0;
a24=a24<<shift;
a24=a24>>shift;
} else
if (flag==23) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=0;
a23=a23<<shift;
a23=a23>>shift;
} else
if (flag==22) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=0;
a22=a22<<shift;
a22=a22>>shift;
} else
if (flag==21) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=0;
a21=a21<<shift;
a21=a21>>shift;
} else
if (flag==20) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=0;
a20=a20<<shift;
a20=a20>>shift;
} else
if (flag==19) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=0;
a19=a19<<shift;
a19=a19>>shift;
} else
if (flag==18) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=0;
a18=a18<<shift;
a18=a18>>shift;
} else
if (flag==17) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=0;
a17=a17<<shift;
a17=a17>>shift;
} else
if (flag==16) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=0;
a16=a16<<shift;
a16=a16>>shift;
} else
if (flag==15) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=0;
a15=a15<<shift;
a15=a15>>shift;
} else
if (flag==14) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=0;
a14=a14<<shift;
a14=a14>>shift;
} else
if (flag==13) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=0;
a13=a13<<shift;
a13=a13>>shift;
} else
if (flag==12) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=0;
a12=a12<<shift;
a12=a12>>shift;
} else
if (flag==11) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=0;
a11=a11<<shift;
a11=a11>>shift;
} else
if (flag==10) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=0;
a10=a10<<shift;
a10=a10>>shift;
} else
if (flag==9) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=0;
a9=a9<<shift;
a9=a9>>shift;
} else
if (flag==8) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=0;
a8=a8<<shift;
a8=a8>>shift;
} else
if (flag==7) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=0;
a7=a7<<shift;
a7=a7>>shift;
} else
if (flag==6) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=0;
a6=a6<<shift;
a6=a6>>shift;
} else
if (flag==5) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=0;
a5=a5<<shift;
a5=a5>>shift;
} else
if (flag==4) {
a0=0;
a1=0;
a2=0;
a3=0;
a4=a4<<shift;
a4=a4>>shift;
} else
if (flag==3) {
a0=0;
a1=0;
a2=0;
a3=a3<<shift;
a3=a3>>shift;
}
else {
if (flag==2) {
a0=0;
a1=0;
a2=a2<<shift;
a2=a2>>shift;
}
else {
if (flag==1) {
a0=0;
a1=a1<<shift;
a1=a1>>shift;
}
else {
a0=a0<<shift;
a0=a0>>shift;
}
}
}
zskip:
*quotient=a0;
*(quotient+1)=a1;
*(quotient+2)=a2;
*(quotient+3)=a3;
*(quotient+4)=a4;
*(quotient+5)=a5;
*(quotient+6)=a6;
*(quotient+7)=a7;
*(quotient+8)=a8;
*(quotient+9)=a9;
*(quotient+10)=a10;
*(quotient+11)=a11;
*(quotient+12)=a12;
*(quotient+13)=a13;
*(quotient+14)=a14;
*(quotient+15)=a15;
*(quotient+16)=a16;
*(quotient+17)=a17;
*(quotient+18)=a18;
*(quotient+19)=a19;
*(quotient+20)=a20;
*(quotient+21)=a21;
*(quotient+22)=a22;
*(quotient+23)=a23;
*(quotient+24)=a24;
*(quotient+25)=a25;
*(quotient+26)=a26;
*(quotient+27)=a27;
*(quotient+28)=a28;
*(quotient+29)=a29;
*(quotient+30)=a30;
*(quotient+31)=a31;
*(quotient+32)=a32;
*(quotient+33)=a33;
*(quotient+34)=a34;
*(quotient+35)=a35;
*(quotient+36)=a36;
*(quotient+37)=a37;
*(quotient+38)=a38;
*(quotient+39)=a39;
*(quotient+40)=a40;
*(quotient+41)=a41;
*(quotient+42)=a42;
*(quotient+43)=a43;
*(quotient+44)=a44;
*(quotient+45)=a45;
*(quotient+46)=a46;
*(quotient+47)=a47;
*(quotient+48)=a48;
*(quotient+49)=a49;
*(quotient+50)=a50;
*(quotient+51)=a51;
*(quotient+52)=a52;
*(quotient+53)=a53;
*(quotient+54)=a54;
*(quotient+55)=a55;
*(quotient+56)=a56;
*(quotient+57)=a57;
*(quotient+58)=a58;
*(quotient+59)=a59;
*(quotient+60)=a60;
*(quotient+61)=a61;
*(quotient+62)=a62;
*(quotient+63)=a63;
return;
}