Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- inline void ifswap(int &a,int&b)
- {
- if (a>b) std::swap(a,b);
- }
- void sort_net(int *tabl,int first,int last)
- {
- int *t=tabl+first;
- switch(last-first + 1)
- {
- case 1:
- break;
- case 2:
- ifswap(t[0],t[1]);
- break;
- case 3:
- ifswap(t[1],t[2]);ifswap(t[0],t[2]);ifswap(t[0],t[1]);
- break;
- case 4:
- ifswap(t[0],t[1]);ifswap(t[2],t[3]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[1],t[2]);
- break;
- case 5:
- ifswap(t[0],t[1]);ifswap(t[3],t[4]);ifswap(t[2],t[4]);ifswap(t[2],t[3]);ifswap(t[1],t[4]);ifswap(t[0],t[3]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[1],t[2]);
- break;
- case 6:
- ifswap(t[1],t[2]);ifswap(t[4],t[5]);ifswap(t[0],t[2]);ifswap(t[3],t[5]);ifswap(t[0],t[1]);ifswap(t[3],t[4]);ifswap(t[2],t[5]);ifswap(t[0],t[3]);ifswap(t[1],t[4]);ifswap(t[2],t[4]);ifswap(t[1],t[3]);ifswap(t[2],t[3]);
- break;
- case 7:
- ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[0],t[2]);ifswap(t[3],t[5]);ifswap(t[4],t[6]);ifswap(t[0],t[1]);ifswap(t[4],t[5]);ifswap(t[2],t[6]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[0],t[3]);ifswap(t[2],t[5]);ifswap(t[1],t[3]);ifswap(t[2],t[4]);ifswap(t[2],t[3]);
- break;
- case 8:
- ifswap(t[0],t[1]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[1],t[2]);ifswap(t[5],t[6]);ifswap(t[0],t[4]);ifswap(t[3],t[7]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[3],t[4]);
- break;
- case 9:
- ifswap(t[0],t[1]);ifswap(t[3],t[4]);ifswap(t[6],t[7]);ifswap(t[1],t[2]);ifswap(t[4],t[5]);ifswap(t[7],t[8]);ifswap(t[0],t[1]);ifswap(t[3],t[4]);ifswap(t[6],t[7]);ifswap(t[2],t[5]);ifswap(t[0],t[3]);ifswap(t[1],t[4]);ifswap(t[5],t[8]);ifswap(t[3],t[6]);ifswap(t[4],t[7]);ifswap(t[2],t[5]);ifswap(t[0],t[3]);ifswap(t[1],t[4]);ifswap(t[5],t[7]);ifswap(t[2],t[6]);ifswap(t[1],t[3]);ifswap(t[4],t[6]);ifswap(t[2],t[4]);ifswap(t[5],t[6]);ifswap(t[2],t[3]);
- break;
- case 10:
- ifswap(t[4],t[9]);ifswap(t[3],t[8]);ifswap(t[2],t[7]);ifswap(t[1],t[6]);ifswap(t[0],t[5]);ifswap(t[1],t[4]);ifswap(t[6],t[9]);ifswap(t[0],t[3]);ifswap(t[5],t[8]);ifswap(t[0],t[2]);ifswap(t[3],t[6]);ifswap(t[7],t[9]);ifswap(t[0],t[1]);ifswap(t[2],t[4]);ifswap(t[5],t[7]);ifswap(t[8],t[9]);ifswap(t[1],t[2]);ifswap(t[4],t[6]);ifswap(t[7],t[8]);ifswap(t[3],t[5]);ifswap(t[2],t[5]);ifswap(t[6],t[8]);ifswap(t[1],t[3]);ifswap(t[4],t[7]);ifswap(t[2],t[3]);ifswap(t[6],t[7]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[4],t[5]);
- break;
- case 11:
- ifswap(t[0],t[1]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[1],t[3]);ifswap(t[5],t[7]);ifswap(t[0],t[2]);ifswap(t[4],t[6]);ifswap(t[8],t[10]);ifswap(t[1],t[2]);ifswap(t[5],t[6]);ifswap(t[9],t[10]);ifswap(t[0],t[4]);ifswap(t[3],t[7]);ifswap(t[1],t[5]);ifswap(t[6],t[10]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[2],t[6]);ifswap(t[0],t[4]);ifswap(t[3],t[8]);ifswap(t[1],t[5]);ifswap(t[6],t[10]);ifswap(t[2],t[3]);ifswap(t[8],t[9]);ifswap(t[1],t[4]);ifswap(t[7],t[10]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[2],t[4]);ifswap(t[7],t[9]);ifswap(t[5],t[6]);ifswap(t[3],t[4]);ifswap(t[7],t[8]);
- break;
- case 12:
- ifswap(t[0],t[1]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[1],t[3]);ifswap(t[5],t[7]);ifswap(t[9],t[11]);ifswap(t[0],t[2]);ifswap(t[4],t[6]);ifswap(t[8],t[10]);ifswap(t[1],t[2]);ifswap(t[5],t[6]);ifswap(t[9],t[10]);ifswap(t[0],t[4]);ifswap(t[7],t[11]);ifswap(t[1],t[5]);ifswap(t[6],t[10]);ifswap(t[3],t[7]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[2],t[6]);ifswap(t[0],t[4]);ifswap(t[7],t[11]);ifswap(t[3],t[8]);ifswap(t[1],t[5]);ifswap(t[6],t[10]);ifswap(t[2],t[3]);ifswap(t[8],t[9]);ifswap(t[1],t[4]);ifswap(t[7],t[10]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[2],t[4]);ifswap(t[7],t[9]);ifswap(t[5],t[6]);ifswap(t[3],t[4]);ifswap(t[7],t[8]);
- break;
- case 13:
- ifswap(t[1],t[7]);ifswap(t[9],t[11]);ifswap(t[3],t[4]);ifswap(t[5],t[8]);ifswap(t[0],t[12]);ifswap(t[2],t[6]);ifswap(t[0],t[1]);ifswap(t[2],t[3]);ifswap(t[4],t[6]);ifswap(t[8],t[11]);ifswap(t[7],t[12]);ifswap(t[5],t[9]);ifswap(t[0],t[2]);ifswap(t[3],t[7]);ifswap(t[10],t[11]);ifswap(t[1],t[4]);ifswap(t[6],t[12]);ifswap(t[7],t[8]);ifswap(t[11],t[12]);ifswap(t[4],t[9]);ifswap(t[6],t[10]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[1],t[7]);ifswap(t[2],t[6]);ifswap(t[9],t[11]);ifswap(t[1],t[3]);ifswap(t[4],t[7]);ifswap(t[8],t[10]);ifswap(t[0],t[5]);ifswap(t[2],t[5]);ifswap(t[6],t[8]);ifswap(t[9],t[10]);ifswap(t[1],t[2]);ifswap(t[3],t[5]);ifswap(t[7],t[8]);ifswap(t[4],t[6]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);
- break;
- case 14:
- ifswap(t[0],t[1]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[0],t[2]);ifswap(t[4],t[6]);ifswap(t[8],t[10]);ifswap(t[1],t[3]);ifswap(t[5],t[7]);ifswap(t[9],t[11]);ifswap(t[0],t[4]);ifswap(t[8],t[12]);ifswap(t[1],t[5]);ifswap(t[9],t[13]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[5],t[10]);ifswap(t[6],t[9]);ifswap(t[3],t[12]);ifswap(t[7],t[11]);ifswap(t[1],t[2]);ifswap(t[4],t[8]);ifswap(t[1],t[4]);ifswap(t[7],t[13]);ifswap(t[2],t[8]);ifswap(t[5],t[6]);ifswap(t[9],t[10]);ifswap(t[2],t[4]);ifswap(t[11],t[13]);ifswap(t[3],t[8]);ifswap(t[7],t[12]);ifswap(t[6],t[8]);ifswap(t[10],t[12]);ifswap(t[3],t[5]);ifswap(t[7],t[9]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);
- break;
- case 15:
- ifswap(t[0],t[1]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[0],t[2]);ifswap(t[4],t[6]);ifswap(t[8],t[10]);ifswap(t[12],t[14]);ifswap(t[1],t[3]);ifswap(t[5],t[7]);ifswap(t[9],t[11]);ifswap(t[0],t[4]);ifswap(t[8],t[12]);ifswap(t[1],t[5]);ifswap(t[9],t[13]);ifswap(t[2],t[6]);ifswap(t[10],t[14]);ifswap(t[3],t[7]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[5],t[10]);ifswap(t[6],t[9]);ifswap(t[3],t[12]);ifswap(t[13],t[14]);ifswap(t[7],t[11]);ifswap(t[1],t[2]);ifswap(t[4],t[8]);ifswap(t[1],t[4]);ifswap(t[7],t[13]);ifswap(t[2],t[8]);ifswap(t[11],t[14]);ifswap(t[5],t[6]);ifswap(t[9],t[10]);ifswap(t[2],t[4]);ifswap(t[11],t[13]);ifswap(t[3],t[8]);ifswap(t[7],t[12]);ifswap(t[6],t[8]);ifswap(t[10],t[12]);ifswap(t[3],t[5]);ifswap(t[7],t[9]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);
- break;
- case 16:
- ifswap(t[0],t[1]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[0],t[2]);ifswap(t[4],t[6]);ifswap(t[8],t[10]);ifswap(t[12],t[14]);ifswap(t[1],t[3]);ifswap(t[5],t[7]);ifswap(t[9],t[11]);ifswap(t[13],t[15]);ifswap(t[0],t[4]);ifswap(t[8],t[12]);ifswap(t[1],t[5]);ifswap(t[9],t[13]);ifswap(t[2],t[6]);ifswap(t[10],t[14]);ifswap(t[3],t[7]);ifswap(t[11],t[15]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[5],t[10]);ifswap(t[6],t[9]);ifswap(t[3],t[12]);ifswap(t[13],t[14]);ifswap(t[7],t[11]);ifswap(t[1],t[2]);ifswap(t[4],t[8]);ifswap(t[1],t[4]);ifswap(t[7],t[13]);ifswap(t[2],t[8]);ifswap(t[11],t[14]);ifswap(t[5],t[6]);ifswap(t[9],t[10]);ifswap(t[2],t[4]);ifswap(t[11],t[13]);ifswap(t[3],t[8]);ifswap(t[7],t[12]);ifswap(t[6],t[8]);ifswap(t[10],t[12]);ifswap(t[3],t[5]);ifswap(t[7],t[9]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);
- break;
- case 17:
- ifswap(t[0],t[16]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[0],t[8]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[8],t[16]);ifswap(t[0],t[4]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[1],t[3]);ifswap(t[13],t[15]);ifswap(t[8],t[12]);ifswap(t[4],t[16]);ifswap(t[0],t[2]);ifswap(t[5],t[7]);ifswap(t[9],t[11]);ifswap(t[4],t[8]);ifswap(t[12],t[16]);ifswap(t[3],t[9]);ifswap(t[7],t[13]);ifswap(t[0],t[1]);ifswap(t[4],t[6]);ifswap(t[8],t[10]);ifswap(t[12],t[14]);ifswap(t[2],t[16]);ifswap(t[3],t[5]);ifswap(t[7],t[9]);ifswap(t[11],t[13]);ifswap(t[2],t[8]);ifswap(t[6],t[12]);ifswap(t[10],t[16]);ifswap(t[2],t[4]);ifswap(t[6],t[8]);ifswap(t[10],t[12]);ifswap(t[14],t[16]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[1],t[16]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);
- break;
- case 18:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[0],t[1]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[1],t[16]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[1],t[8]);ifswap(t[9],t[16]);ifswap(t[3],t[6]);ifswap(t[7],t[10]);ifswap(t[11],t[14]);ifswap(t[1],t[4]);ifswap(t[5],t[8]);ifswap(t[9],t[12]);ifswap(t[13],t[16]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);
- break;
- case 19:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[7]);ifswap(t[11],t[15]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[7],t[11]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[0],t[1]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[3],t[17]);ifswap(t[2],t[16]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[11],t[17]);ifswap(t[2],t[8]);ifswap(t[10],t[16]);ifswap(t[3],t[5]);ifswap(t[7],t[9]);ifswap(t[11],t[13]);ifswap(t[15],t[17]);ifswap(t[2],t[4]);ifswap(t[6],t[8]);ifswap(t[10],t[12]);ifswap(t[14],t[16]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);
- break;
- case 20:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[0],t[1]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[18],t[19]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);
- break;
- case 21:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[12],t[16]);ifswap(t[5],t[7]);ifswap(t[9],t[11]);ifswap(t[13],t[15]);ifswap(t[17],t[19]);ifswap(t[4],t[6]);ifswap(t[8],t[10]);ifswap(t[12],t[14]);ifswap(t[16],t[18]);ifswap(t[3],t[17]);ifswap(t[7],t[13]);ifswap(t[2],t[16]);ifswap(t[6],t[20]);ifswap(t[3],t[9]);ifswap(t[11],t[17]);ifswap(t[2],t[8]);ifswap(t[6],t[12]);ifswap(t[10],t[16]);ifswap(t[14],t[20]);ifswap(t[3],t[5]);ifswap(t[7],t[9]);ifswap(t[11],t[13]);ifswap(t[15],t[17]);ifswap(t[2],t[4]);ifswap(t[6],t[8]);ifswap(t[10],t[12]);ifswap(t[14],t[16]);ifswap(t[18],t[20]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[14]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);
- break;
- case 22:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[14]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);
- break;
- case 23:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[15]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[7],t[19]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[11]);ifswap(t[15],t[19]);ifswap(t[20],t[22]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);
- break;
- case 24:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[20],t[22]);ifswap(t[21],t[23]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[22],t[23]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);
- break;
- case 25:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[8],t[24]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[16],t[24]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[12],t[24]);ifswap(t[21],t[23]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[20],t[24]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[20],t[22]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[10],t[24]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[18],t[24]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[22],t[24]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[22],t[23]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[9],t[24]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[17],t[24]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[21],t[24]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);ifswap(t[23],t[24]);
- break;
- case 26:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[8],t[24]);ifswap(t[9],t[25]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[16],t[24]);ifswap(t[17],t[25]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[12],t[24]);ifswap(t[13],t[25]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[20],t[24]);ifswap(t[21],t[25]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[20],t[22]);ifswap(t[21],t[23]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[10],t[24]);ifswap(t[11],t[25]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[18],t[24]);ifswap(t[19],t[25]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[22],t[24]);ifswap(t[23],t[25]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[22],t[23]);ifswap(t[24],t[25]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[9],t[24]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[17],t[24]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[21],t[24]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);ifswap(t[23],t[24]);
- break;
- case 27:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[8],t[24]);ifswap(t[9],t[25]);ifswap(t[10],t[26]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[16],t[24]);ifswap(t[17],t[25]);ifswap(t[18],t[26]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[12],t[24]);ifswap(t[13],t[25]);ifswap(t[14],t[26]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[20],t[24]);ifswap(t[21],t[25]);ifswap(t[22],t[26]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[20],t[22]);ifswap(t[21],t[23]);ifswap(t[24],t[26]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[10],t[24]);ifswap(t[11],t[25]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[18],t[24]);ifswap(t[19],t[25]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[22],t[24]);ifswap(t[23],t[25]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[22],t[23]);ifswap(t[24],t[25]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[9],t[24]);ifswap(t[11],t[26]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[17],t[24]);ifswap(t[19],t[26]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[21],t[24]);ifswap(t[23],t[26]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);ifswap(t[23],t[24]);ifswap(t[25],t[26]);
- break;
- case 28:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[8],t[24]);ifswap(t[9],t[25]);ifswap(t[10],t[26]);ifswap(t[11],t[27]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[16],t[24]);ifswap(t[17],t[25]);ifswap(t[18],t[26]);ifswap(t[19],t[27]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[12],t[24]);ifswap(t[13],t[25]);ifswap(t[14],t[26]);ifswap(t[15],t[27]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[20],t[24]);ifswap(t[21],t[25]);ifswap(t[22],t[26]);ifswap(t[23],t[27]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[20],t[22]);ifswap(t[21],t[23]);ifswap(t[24],t[26]);ifswap(t[25],t[27]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[10],t[24]);ifswap(t[11],t[25]);ifswap(t[26],t[27]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[18],t[24]);ifswap(t[19],t[25]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[22],t[24]);ifswap(t[23],t[25]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[22],t[23]);ifswap(t[24],t[25]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[9],t[24]);ifswap(t[11],t[26]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[17],t[24]);ifswap(t[19],t[26]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[21],t[24]);ifswap(t[23],t[26]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);ifswap(t[23],t[24]);ifswap(t[25],t[26]);
- break;
- case 29:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[8],t[24]);ifswap(t[9],t[25]);ifswap(t[10],t[26]);ifswap(t[11],t[27]);ifswap(t[12],t[28]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[16],t[24]);ifswap(t[17],t[25]);ifswap(t[18],t[26]);ifswap(t[19],t[27]);ifswap(t[20],t[28]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[24],t[28]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[12],t[24]);ifswap(t[13],t[25]);ifswap(t[14],t[26]);ifswap(t[15],t[27]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[20],t[24]);ifswap(t[21],t[25]);ifswap(t[22],t[26]);ifswap(t[23],t[27]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[20],t[22]);ifswap(t[21],t[23]);ifswap(t[24],t[26]);ifswap(t[25],t[27]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[10],t[24]);ifswap(t[11],t[25]);ifswap(t[14],t[28]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[18],t[24]);ifswap(t[19],t[25]);ifswap(t[22],t[28]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[22],t[24]);ifswap(t[23],t[25]);ifswap(t[26],t[28]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[22],t[23]);ifswap(t[24],t[25]);ifswap(t[26],t[27]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[9],t[24]);ifswap(t[11],t[26]);ifswap(t[13],t[28]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[17],t[24]);ifswap(t[19],t[26]);ifswap(t[21],t[28]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[21],t[24]);ifswap(t[23],t[26]);ifswap(t[25],t[28]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);ifswap(t[23],t[24]);ifswap(t[25],t[26]);ifswap(t[27],t[28]);
- break;
- case 30:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[8],t[24]);ifswap(t[9],t[25]);ifswap(t[10],t[26]);ifswap(t[11],t[27]);ifswap(t[12],t[28]);ifswap(t[13],t[29]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[16],t[24]);ifswap(t[17],t[25]);ifswap(t[18],t[26]);ifswap(t[19],t[27]);ifswap(t[20],t[28]);ifswap(t[21],t[29]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[24],t[28]);ifswap(t[25],t[29]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[12],t[24]);ifswap(t[13],t[25]);ifswap(t[14],t[26]);ifswap(t[15],t[27]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[20],t[24]);ifswap(t[21],t[25]);ifswap(t[22],t[26]);ifswap(t[23],t[27]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[20],t[22]);ifswap(t[21],t[23]);ifswap(t[24],t[26]);ifswap(t[25],t[27]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[10],t[24]);ifswap(t[11],t[25]);ifswap(t[14],t[28]);ifswap(t[15],t[29]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[18],t[24]);ifswap(t[19],t[25]);ifswap(t[22],t[28]);ifswap(t[23],t[29]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[22],t[24]);ifswap(t[23],t[25]);ifswap(t[26],t[28]);ifswap(t[27],t[29]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[22],t[23]);ifswap(t[24],t[25]);ifswap(t[26],t[27]);ifswap(t[28],t[29]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[9],t[24]);ifswap(t[11],t[26]);ifswap(t[13],t[28]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[17],t[24]);ifswap(t[19],t[26]);ifswap(t[21],t[28]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[21],t[24]);ifswap(t[23],t[26]);ifswap(t[25],t[28]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);ifswap(t[23],t[24]);ifswap(t[25],t[26]);ifswap(t[27],t[28]);
- break;
- case 31:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[8],t[24]);ifswap(t[9],t[25]);ifswap(t[10],t[26]);ifswap(t[11],t[27]);ifswap(t[12],t[28]);ifswap(t[13],t[29]);ifswap(t[14],t[30]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[16],t[24]);ifswap(t[17],t[25]);ifswap(t[18],t[26]);ifswap(t[19],t[27]);ifswap(t[20],t[28]);ifswap(t[21],t[29]);ifswap(t[22],t[30]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[24],t[28]);ifswap(t[25],t[29]);ifswap(t[26],t[30]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[28],t[30]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[12],t[24]);ifswap(t[13],t[25]);ifswap(t[14],t[26]);ifswap(t[15],t[27]);ifswap(t[0],t[1]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[20],t[24]);ifswap(t[21],t[25]);ifswap(t[22],t[26]);ifswap(t[23],t[27]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[20],t[22]);ifswap(t[21],t[23]);ifswap(t[24],t[26]);ifswap(t[25],t[27]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[10],t[24]);ifswap(t[11],t[25]);ifswap(t[14],t[28]);ifswap(t[15],t[29]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[18],t[24]);ifswap(t[19],t[25]);ifswap(t[22],t[28]);ifswap(t[23],t[29]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[22],t[24]);ifswap(t[23],t[25]);ifswap(t[26],t[28]);ifswap(t[27],t[29]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[22],t[23]);ifswap(t[24],t[25]);ifswap(t[26],t[27]);ifswap(t[28],t[29]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[9],t[24]);ifswap(t[11],t[26]);ifswap(t[13],t[28]);ifswap(t[15],t[30]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[17],t[24]);ifswap(t[19],t[26]);ifswap(t[21],t[28]);ifswap(t[23],t[30]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[21],t[24]);ifswap(t[23],t[26]);ifswap(t[25],t[28]);ifswap(t[27],t[30]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);ifswap(t[23],t[24]);ifswap(t[25],t[26]);ifswap(t[27],t[28]);ifswap(t[29],t[30]);
- break;
- case 32:
- ifswap(t[0],t[16]);ifswap(t[1],t[17]);ifswap(t[2],t[18]);ifswap(t[3],t[19]);ifswap(t[4],t[20]);ifswap(t[5],t[21]);ifswap(t[6],t[22]);ifswap(t[7],t[23]);ifswap(t[8],t[24]);ifswap(t[9],t[25]);ifswap(t[10],t[26]);ifswap(t[11],t[27]);ifswap(t[12],t[28]);ifswap(t[13],t[29]);ifswap(t[14],t[30]);ifswap(t[15],t[31]);ifswap(t[0],t[8]);ifswap(t[1],t[9]);ifswap(t[2],t[10]);ifswap(t[3],t[11]);ifswap(t[4],t[12]);ifswap(t[5],t[13]);ifswap(t[6],t[14]);ifswap(t[7],t[15]);ifswap(t[16],t[24]);ifswap(t[17],t[25]);ifswap(t[18],t[26]);ifswap(t[19],t[27]);ifswap(t[20],t[28]);ifswap(t[21],t[29]);ifswap(t[22],t[30]);ifswap(t[23],t[31]);ifswap(t[8],t[16]);ifswap(t[9],t[17]);ifswap(t[10],t[18]);ifswap(t[11],t[19]);ifswap(t[12],t[20]);ifswap(t[13],t[21]);ifswap(t[14],t[22]);ifswap(t[15],t[23]);ifswap(t[0],t[4]);ifswap(t[1],t[5]);ifswap(t[2],t[6]);ifswap(t[3],t[7]);ifswap(t[24],t[28]);ifswap(t[25],t[29]);ifswap(t[26],t[30]);ifswap(t[27],t[31]);ifswap(t[8],t[12]);ifswap(t[9],t[13]);ifswap(t[10],t[14]);ifswap(t[11],t[15]);ifswap(t[16],t[20]);ifswap(t[17],t[21]);ifswap(t[18],t[22]);ifswap(t[19],t[23]);ifswap(t[0],t[2]);ifswap(t[1],t[3]);ifswap(t[28],t[30]);ifswap(t[29],t[31]);ifswap(t[4],t[16]);ifswap(t[5],t[17]);ifswap(t[6],t[18]);ifswap(t[7],t[19]);ifswap(t[12],t[24]);ifswap(t[13],t[25]);ifswap(t[14],t[26]);ifswap(t[15],t[27]);ifswap(t[0],t[1]);ifswap(t[30],t[31]);ifswap(t[4],t[8]);ifswap(t[5],t[9]);ifswap(t[6],t[10]);ifswap(t[7],t[11]);ifswap(t[12],t[16]);ifswap(t[13],t[17]);ifswap(t[14],t[18]);ifswap(t[15],t[19]);ifswap(t[20],t[24]);ifswap(t[21],t[25]);ifswap(t[22],t[26]);ifswap(t[23],t[27]);ifswap(t[4],t[6]);ifswap(t[5],t[7]);ifswap(t[8],t[10]);ifswap(t[9],t[11]);ifswap(t[12],t[14]);ifswap(t[13],t[15]);ifswap(t[16],t[18]);ifswap(t[17],t[19]);ifswap(t[20],t[22]);ifswap(t[21],t[23]);ifswap(t[24],t[26]);ifswap(t[25],t[27]);ifswap(t[2],t[16]);ifswap(t[3],t[17]);ifswap(t[6],t[20]);ifswap(t[7],t[21]);ifswap(t[10],t[24]);ifswap(t[11],t[25]);ifswap(t[14],t[28]);ifswap(t[15],t[29]);ifswap(t[2],t[8]);ifswap(t[3],t[9]);ifswap(t[6],t[12]);ifswap(t[7],t[13]);ifswap(t[10],t[16]);ifswap(t[11],t[17]);ifswap(t[14],t[20]);ifswap(t[15],t[21]);ifswap(t[18],t[24]);ifswap(t[19],t[25]);ifswap(t[22],t[28]);ifswap(t[23],t[29]);ifswap(t[2],t[4]);ifswap(t[3],t[5]);ifswap(t[6],t[8]);ifswap(t[7],t[9]);ifswap(t[10],t[12]);ifswap(t[11],t[13]);ifswap(t[14],t[16]);ifswap(t[15],t[17]);ifswap(t[18],t[20]);ifswap(t[19],t[21]);ifswap(t[22],t[24]);ifswap(t[23],t[25]);ifswap(t[26],t[28]);ifswap(t[27],t[29]);ifswap(t[2],t[3]);ifswap(t[4],t[5]);ifswap(t[6],t[7]);ifswap(t[8],t[9]);ifswap(t[10],t[11]);ifswap(t[12],t[13]);ifswap(t[14],t[15]);ifswap(t[16],t[17]);ifswap(t[18],t[19]);ifswap(t[20],t[21]);ifswap(t[22],t[23]);ifswap(t[24],t[25]);ifswap(t[26],t[27]);ifswap(t[28],t[29]);ifswap(t[1],t[16]);ifswap(t[3],t[18]);ifswap(t[5],t[20]);ifswap(t[7],t[22]);ifswap(t[9],t[24]);ifswap(t[11],t[26]);ifswap(t[13],t[28]);ifswap(t[15],t[30]);ifswap(t[1],t[8]);ifswap(t[3],t[10]);ifswap(t[5],t[12]);ifswap(t[7],t[14]);ifswap(t[9],t[16]);ifswap(t[11],t[18]);ifswap(t[13],t[20]);ifswap(t[15],t[22]);ifswap(t[17],t[24]);ifswap(t[19],t[26]);ifswap(t[21],t[28]);ifswap(t[23],t[30]);ifswap(t[1],t[4]);ifswap(t[3],t[6]);ifswap(t[5],t[8]);ifswap(t[7],t[10]);ifswap(t[9],t[12]);ifswap(t[11],t[14]);ifswap(t[13],t[16]);ifswap(t[15],t[18]);ifswap(t[17],t[20]);ifswap(t[19],t[22]);ifswap(t[21],t[24]);ifswap(t[23],t[26]);ifswap(t[25],t[28]);ifswap(t[27],t[30]);ifswap(t[1],t[2]);ifswap(t[3],t[4]);ifswap(t[5],t[6]);ifswap(t[7],t[8]);ifswap(t[9],t[10]);ifswap(t[11],t[12]);ifswap(t[13],t[14]);ifswap(t[15],t[16]);ifswap(t[17],t[18]);ifswap(t[19],t[20]);ifswap(t[21],t[22]);ifswap(t[23],t[24]);ifswap(t[25],t[26]);ifswap(t[27],t[28]);ifswap(t[29],t[30]);
- break;
- default:
- printf("switch aaaaaa");
- break;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement