#include <stdlib.h> #include <math.h> #include <stdio.h> #include <string.h> #include <types.h> int encode_parity_check_part(unsigned char *c,unsigned char *d, short BG,short Zc,short Kb) { //short *Gen_shift_values; int i2, i5; uint16_t temp; unsigned char *c2; //offset matrix if (BG==1) { switch (Zc) { case 2: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[1]^c[1]^c[1]^c[0]^c[2]^c[2]^c[2]^c[5]^c[4]^c[4]^c[6]^c[6]^c[7]^c[9]^c[8]^c[9]^c[11]^c[10]^c[10]^c[13]^c[12]^c[13]^c[15]^c[14]^c[14]^c[17]^c[16]^c[16]^c[18]^c[18]^c[18]^c[20]^c[20]^c[21]^c[23]^c[23]^c[23]^c[24]^c[25]^c[25]^c[26]^c[27]^c[26]^c[28]^c[28]^c[28]^c[30]^c[31]^c[30]^c[32]^c[33]^c[33]^c[34]^c[34]^c[35]^c[37]^c[36]^c[37]^c[38]^c[38]^c[38]^c[40]^c[40]^c[41]^c[42]^c[43]^c[43]; //row: 1 d[i2+1*Zc]=c[1]^c[0]^c[0]^c[0]^c[1]^c[2]^c[3]^c[3]^c[3]^c[5]^c[4]^c[5]^c[5]^c[6]^c[7]^c[7]^c[6]^c[8]^c[9]^c[8]^c[11]^c[10]^c[11]^c[11]^c[13]^c[12]^c[13]^c[12]^c[14]^c[15]^c[15]^c[16]^c[17]^c[17]^c[18]^c[19]^c[19]^c[19]^c[20]^c[21]^c[21]^c[20]^c[23]^c[22]^c[22]^c[22]^c[24]^c[25]^c[24]^c[24]^c[26]^c[27]^c[26]^c[27]^c[29]^c[29]^c[29]^c[30]^c[31]^c[30]^c[31]^c[32]^c[33]^c[32]^c[32]^c[35]^c[35]^c[34]^c[37]^c[36]^c[37]^c[36]^c[38]^c[39]^c[39]^c[39]^c[40]^c[41]^c[41]^c[40]^c[42]^c[43]^c[42]^c[42]; //row: 2 d[i2+2*Zc]=c[0]^c[0]^c[1]^c[0]^c[0]^c[1]^c[3]^c[2]^c[3]^c[2]^c[3]^c[4]^c[5]^c[4]^c[5]^c[7]^c[7]^c[7]^c[6]^c[8]^c[8]^c[9]^c[9]^c[8]^c[10]^c[11]^c[10]^c[11]^c[12]^c[12]^c[13]^c[13]^c[12]^c[14]^c[14]^c[15]^c[14]^c[15]^c[16]^c[16]^c[17]^c[16]^c[17]^c[19]^c[19]^c[18]^c[19]^c[21]^c[20]^c[21]^c[21]^c[20]^c[22]^c[22]^c[23]^c[22]^c[25]^c[24]^c[25]^c[24]^c[27]^c[27]^c[26]^c[26]^c[27]^c[29]^c[28]^c[29]^c[28]^c[29]^c[31]^c[30]^c[30]^c[31]^c[33]^c[32]^c[33]^c[32]^c[35]^c[34]^c[35]^c[35]^c[34]^c[36]^c[36]^c[37]^c[37]^c[36]^c[39]^c[39]^c[38]^c[39]^c[41]^c[40]^c[41]^c[41]^c[40]^c[43]^c[42]^c[43]^c[42]; //row: 3 d[i2+3*Zc]=c[0]^c[0]^c[0]^c[0]^c[1]^c[3]^c[3]^c[2]^c[3]^c[4]^c[5]^c[5]^c[7]^c[7]^c[7]^c[6]^c[8]^c[9]^c[9]^c[8]^c[10]^c[11]^c[11]^c[12]^c[13]^c[13]^c[12]^c[14]^c[15]^c[14]^c[15]^c[16]^c[17]^c[16]^c[17]^c[19]^c[19]^c[19]^c[21]^c[21]^c[21]^c[20]^c[22]^c[22]^c[23]^c[22]^c[25]^c[24]^c[25]^c[24]^c[27]^c[26]^c[26]^c[27]^c[29]^c[29]^c[28]^c[29]^c[31]^c[30]^c[31]^c[33]^c[32]^c[33]^c[32]^c[35]^c[35]^c[35]^c[34]^c[36]^c[37]^c[37]^c[36]^c[39]^c[39]^c[39]^c[41]^c[41]^c[41]^c[40]^c[43]^c[42]^c[43]^c[42]; //row: 4 d[i2+4*Zc]=c[0]^c[3]; //row: 5 d[i2+5*Zc]=c[0]^c[0]^c[0]^c[1]^c[0]^c[3]^c[3]^c[3]^c[3]^c[4]^c[5]^c[5]^c[7]^c[7]^c[6]^c[7]^c[8]^c[9]^c[8]^c[10]^c[11]^c[11]^c[12]^c[13]^c[12]^c[14]^c[15]^c[15]^c[16]^c[17]^c[17]^c[19]^c[19]^c[19]^c[21]^c[21]^c[20]^c[22]^c[22]^c[22]^c[25]^c[24]^c[24]^c[24]^c[27]^c[26]^c[27]^c[29]^c[29]^c[29]^c[31]^c[30]^c[31]^c[33]^c[32]^c[32]^c[33]^c[35]^c[35]^c[34]^c[36]^c[37]^c[36]^c[39]^c[39]^c[39]^c[41]^c[41]^c[40]^c[43]^c[42]^c[42]^c[42]; //row: 6 d[i2+6*Zc]=c[0]^c[13]^c[21]^c[22]^c[27]^c[34]^c[36]^c[40]; //row: 7 d[i2+7*Zc]=c[1]^c[3]^c[8]^c[14]^c[16]^c[29]; //row: 8 d[i2+8*Zc]=c[0]^c[0]^c[0]^c[0]^c[0]^c[1]^c[0]^c[1]^c[0]^c[1]^c[1]^c[3]^c[3]^c[3]^c[2]^c[3]^c[3]^c[2]^c[3]^c[3]^c[4]^c[4]^c[5]^c[5]^c[5]^c[4]^c[5]^c[7]^c[7]^c[7]^c[7]^c[6]^c[7]^c[6]^c[6]^c[8]^c[8]^c[9]^c[8]^c[9]^c[8]^c[9]^c[8]^c[10]^c[10]^c[11]^c[11]^c[11]^c[10]^c[11]^c[12]^c[12]^c[13]^c[12]^c[13]^c[12]^c[13]^c[12]^c[14]^c[14]^c[15]^c[14]^c[15]^c[15]^c[14]^c[15]^c[16]^c[16]^c[17]^c[16]^c[17]^c[17]^c[16]^c[17]^c[19]^c[19]^c[19]^c[19]^c[19]^c[18]^c[19]^c[21]^c[21]^c[21]^c[20]^c[21]^c[20]^c[21]^c[20]^c[22]^c[22]^c[22]^c[22]^c[22]^c[23]^c[22]^c[25]^c[25]^c[24]^c[24]^c[24]^c[25]^c[24]^c[24]^c[27]^c[27]^c[26]^c[27]^c[26]^c[27]^c[26]^c[27]^c[29]^c[29]^c[29]^c[28]^c[29]^c[29]^c[28]^c[29]^c[31]^c[31]^c[30]^c[30]^c[31]^c[30]^c[31]^c[33]^c[33]^c[32]^c[32]^c[32]^c[33]^c[32]^c[33]^c[35]^c[35]^c[35]^c[34]^c[35]^c[34]^c[35]^c[34]^c[36]^c[36]^c[37]^c[36]^c[37]^c[36]^c[37]^c[36]^c[39]^c[39]^c[39]^c[39]^c[39]^c[38]^c[39]^c[39]^c[41]^c[41]^c[41]^c[40]^c[41]^c[40]^c[41]^c[40]^c[43]^c[43]^c[42]^c[42]^c[42]^c[43]^c[42]^c[42]; //row: 9 d[i2+9*Zc]=c[0]^c[3]^c[20]^c[22]^c[27]^c[35]^c[36]^c[41]; //row: 10 d[i2+10*Zc]=c[3]^c[4]^c[8]^c[15]^c[16]^c[29]; //row: 11 d[i2+11*Zc]=c[1]^c[1]^c[0]^c[1]^c[0]^c[1]^c[0]^c[0]^c[1]^c[0]^c[2]^c[2]^c[3]^c[2]^c[3]^c[2]^c[3]^c[2]^c[5]^c[5]^c[4]^c[4]^c[5]^c[4]^c[5]^c[6]^c[6]^c[7]^c[6]^c[7]^c[7]^c[6]^c[9]^c[8]^c[8]^c[9]^c[9]^c[8]^c[11]^c[11]^c[10]^c[10]^c[11]^c[10]^c[11]^c[13]^c[13]^c[12]^c[12]^c[13]^c[13]^c[12]^c[15]^c[14]^c[14]^c[15]^c[14]^c[15]^c[17]^c[16]^c[16]^c[17]^c[16]^c[17]^c[18]^c[18]^c[19]^c[18]^c[19]^c[18]^c[19]^c[20]^c[20]^c[21]^c[20]^c[21]^c[21]^c[20]^c[23]^c[23]^c[22]^c[23]^c[22]^c[23]^c[22]^c[24]^c[24]^c[25]^c[25]^c[24]^c[25]^c[24]^c[24]^c[26]^c[26]^c[27]^c[27]^c[26]^c[26]^c[27]^c[28]^c[29]^c[28]^c[29]^c[28]^c[29]^c[30]^c[30]^c[31]^c[31]^c[30]^c[30]^c[31]^c[32]^c[32]^c[33]^c[33]^c[32]^c[33]^c[32]^c[33]^c[34]^c[35]^c[34]^c[35]^c[35]^c[34]^c[37]^c[37]^c[36]^c[36]^c[37]^c[37]^c[36]^c[38]^c[38]^c[39]^c[38]^c[39]^c[38]^c[39]^c[40]^c[40]^c[41]^c[40]^c[41]^c[41]^c[40]^c[42]^c[42]^c[43]^c[43]^c[42]^c[43]^c[42]^c[43]; //row: 12 d[i2+12*Zc]=c[1]^c[3]^c[20]^c[23]^c[27]^c[36]; //row: 13 d[i2+13*Zc]=c[1]^c[0]^c[0]^c[0]^c[1]^c[0]^c[2]^c[3]^c[3]^c[3]^c[5]^c[4]^c[5]^c[5]^c[6]^c[7]^c[7]^c[6]^c[7]^c[8]^c[9]^c[8]^c[11]^c[10]^c[11]^c[11]^c[13]^c[12]^c[13]^c[12]^c[14]^c[15]^c[15]^c[14]^c[16]^c[17]^c[17]^c[18]^c[19]^c[19]^c[19]^c[20]^c[21]^c[21]^c[20]^c[23]^c[22]^c[22]^c[22]^c[24]^c[25]^c[24]^c[24]^c[26]^c[27]^c[26]^c[27]^c[29]^c[29]^c[29]^c[30]^c[31]^c[30]^c[31]^c[32]^c[33]^c[32]^c[32]^c[35]^c[35]^c[34]^c[37]^c[36]^c[37]^c[36]^c[38]^c[39]^c[39]^c[39]^c[40]^c[41]^c[41]^c[40]^c[40]^c[42]^c[43]^c[42]^c[42]; //row: 14 d[i2+14*Zc]=c[1]^c[24]^c[31]^c[32]^c[35]^c[42]; //row: 15 d[i2+15*Zc]=c[1]^c[1]^c[1]^c[1]^c[0]^c[1]^c[2]^c[2]^c[3]^c[2]^c[3]^c[5]^c[4]^c[4]^c[6]^c[6]^c[6]^c[7]^c[9]^c[8]^c[8]^c[9]^c[11]^c[10]^c[10]^c[13]^c[12]^c[12]^c[13]^c[15]^c[14]^c[15]^c[14]^c[17]^c[16]^c[17]^c[16]^c[18]^c[18]^c[18]^c[20]^c[20]^c[20]^c[21]^c[20]^c[23]^c[23]^c[22]^c[23]^c[24]^c[25]^c[24]^c[25]^c[26]^c[27]^c[27]^c[26]^c[26]^c[28]^c[28]^c[29]^c[28]^c[30]^c[31]^c[30]^c[32]^c[33]^c[32]^c[33]^c[34]^c[34]^c[34]^c[35]^c[37]^c[36]^c[36]^c[37]^c[36]^c[38]^c[38]^c[38]^c[40]^c[40]^c[40]^c[41]^c[42]^c[43]^c[42]^c[43]; //row: 16 d[i2+16*Zc]=c[1]^c[1]^c[1]^c[0]^c[2]^c[2]^c[2]^c[3]^c[5]^c[4]^c[4]^c[6]^c[6]^c[7]^c[6]^c[9]^c[8]^c[9]^c[11]^c[10]^c[10]^c[13]^c[12]^c[13]^c[15]^c[14]^c[14]^c[17]^c[16]^c[16]^c[18]^c[18]^c[18]^c[20]^c[20]^c[21]^c[23]^c[23]^c[23]^c[22]^c[24]^c[25]^c[25]^c[26]^c[27]^c[26]^c[28]^c[28]^c[28]^c[30]^c[31]^c[30]^c[32]^c[33]^c[33]^c[34]^c[34]^c[35]^c[37]^c[36]^c[37]^c[38]^c[38]^c[38]^c[40]^c[40]^c[41]^c[40]^c[42]^c[43]^c[43]; //row: 17 d[i2+17*Zc]=c[0]^c[29]^c[32]^c[34]^c[43]; //row: 18 d[i2+18*Zc]=c[3]^c[24]^c[27]^c[36]^c[38]; //row: 19 d[i2+19*Zc]=c[1]^c[2]^c[15]^c[16]^c[21]; //row: 20 d[i2+20*Zc]=c[1]^c[1]^c[1]^c[0]^c[0]^c[2]^c[2]^c[2]^c[5]^c[4]^c[4]^c[6]^c[6]^c[7]^c[7]^c[9]^c[8]^c[9]^c[11]^c[10]^c[10]^c[13]^c[12]^c[13]^c[15]^c[14]^c[14]^c[17]^c[16]^c[16]^c[18]^c[18]^c[18]^c[18]^c[20]^c[20]^c[21]^c[23]^c[23]^c[23]^c[22]^c[24]^c[25]^c[25]^c[26]^c[27]^c[26]^c[28]^c[28]^c[28]^c[30]^c[31]^c[30]^c[32]^c[33]^c[33]^c[34]^c[34]^c[35]^c[37]^c[36]^c[37]^c[38]^c[38]^c[38]^c[40]^c[40]^c[41]^c[42]^c[43]^c[43]; //row: 21 d[i2+21*Zc]=c[2]^c[10]^c[32]^c[40]^c[42]; //row: 22 d[i2+22*Zc]=c[1]^c[25]^c[27]^c[35]; //row: 23 d[i2+23*Zc]=c[3]^c[4]^c[21]^c[37]; //row: 24 d[i2+24*Zc]=c[1]^c[1]^c[1]^c[0]^c[1]^c[2]^c[2]^c[2]^c[5]^c[4]^c[4]^c[6]^c[6]^c[7]^c[7]^c[9]^c[8]^c[9]^c[9]^c[11]^c[10]^c[10]^c[13]^c[12]^c[13]^c[15]^c[14]^c[14]^c[17]^c[16]^c[16]^c[18]^c[18]^c[18]^c[20]^c[20]^c[21]^c[23]^c[23]^c[23]^c[23]^c[24]^c[25]^c[25]^c[26]^c[27]^c[26]^c[28]^c[28]^c[28]^c[30]^c[31]^c[30]^c[32]^c[33]^c[33]^c[34]^c[34]^c[35]^c[37]^c[36]^c[37]^c[38]^c[38]^c[38]^c[40]^c[40]^c[41]^c[42]^c[43]^c[43]; //row: 25 d[i2+25*Zc]=c[2]^c[13]^c[15]^c[29]; //row: 26 d[i2+26*Zc]=c[0]^c[4]^c[8]^c[30]; //row: 27 d[i2+27*Zc]=c[2]^c[13]^c[17]; //row: 28 d[i2+28*Zc]=c[1]^c[8]^c[38]^c[42]; //row: 29 d[i2+29*Zc]=c[0]^c[0]^c[0]^c[0]^c[1]^c[3]^c[3]^c[2]^c[3]^c[3]^c[4]^c[5]^c[5]^c[7]^c[7]^c[7]^c[6]^c[8]^c[9]^c[9]^c[8]^c[10]^c[11]^c[11]^c[12]^c[13]^c[13]^c[12]^c[14]^c[15]^c[14]^c[15]^c[16]^c[17]^c[16]^c[17]^c[19]^c[19]^c[19]^c[21]^c[21]^c[21]^c[20]^c[22]^c[22]^c[23]^c[22]^c[25]^c[24]^c[25]^c[24]^c[27]^c[26]^c[26]^c[27]^c[29]^c[29]^c[28]^c[29]^c[29]^c[31]^c[30]^c[31]^c[33]^c[32]^c[33]^c[32]^c[35]^c[35]^c[35]^c[34]^c[36]^c[37]^c[37]^c[36]^c[37]^c[39]^c[39]^c[39]^c[41]^c[41]^c[41]^c[40]^c[43]^c[42]^c[43]^c[42]; //row: 30 d[i2+30*Zc]=c[1]^c[1]^c[0]^c[1]^c[1]^c[0]^c[1]^c[2]^c[3]^c[2]^c[3]^c[2]^c[5]^c[4]^c[5]^c[4]^c[6]^c[6]^c[6]^c[7]^c[9]^c[9]^c[8]^c[8]^c[9]^c[11]^c[10]^c[11]^c[10]^c[13]^c[13]^c[12]^c[12]^c[13]^c[15]^c[15]^c[14]^c[15]^c[14]^c[17]^c[17]^c[16]^c[17]^c[16]^c[18]^c[18]^c[19]^c[18]^c[20]^c[21]^c[20]^c[20]^c[21]^c[20]^c[23]^c[23]^c[22]^c[23]^c[24]^c[25]^c[24]^c[25]^c[26]^c[26]^c[27]^c[27]^c[26]^c[27]^c[28]^c[29]^c[28]^c[29]^c[28]^c[30]^c[31]^c[31]^c[30]^c[32]^c[33]^c[32]^c[33]^c[34]^c[35]^c[34]^c[34]^c[35]^c[37]^c[37]^c[36]^c[36]^c[37]^c[38]^c[38]^c[39]^c[38]^c[40]^c[41]^c[40]^c[40]^c[41]^c[42]^c[43]^c[42]^c[43]; //row: 31 d[i2+31*Zc]=c[1]^c[1]^c[1]^c[1]^c[1]^c[1]^c[0]^c[1]^c[0]^c[2]^c[2]^c[2]^c[2]^c[2]^c[3]^c[2]^c[2]^c[5]^c[5]^c[4]^c[4]^c[4]^c[4]^c[6]^c[6]^c[6]^c[6]^c[7]^c[6]^c[7]^c[9]^c[9]^c[8]^c[8]^c[9]^c[8]^c[9]^c[11]^c[11]^c[10]^c[10]^c[10]^c[10]^c[13]^c[13]^c[12]^c[12]^c[13]^c[12]^c[13]^c[15]^c[15]^c[14]^c[14]^c[14]^c[15]^c[14]^c[14]^c[17]^c[17]^c[16]^c[16]^c[16]^c[17]^c[16]^c[18]^c[18]^c[18]^c[18]^c[18]^c[18]^c[20]^c[20]^c[20]^c[20]^c[21]^c[20]^c[21]^c[23]^c[23]^c[23]^c[23]^c[23]^c[22]^c[23]^c[24]^c[24]^c[25]^c[25]^c[25]^c[24]^c[25]^c[26]^c[26]^c[27]^c[27]^c[26]^c[27]^c[26]^c[28]^c[28]^c[28]^c[28]^c[28]^c[29]^c[28]^c[30]^c[30]^c[31]^c[31]^c[30]^c[30]^c[32]^c[32]^c[33]^c[33]^c[33]^c[32]^c[33]^c[34]^c[34]^c[34]^c[34]^c[35]^c[34]^c[35]^c[37]^c[37]^c[36]^c[36]^c[37]^c[36]^c[37]^c[38]^c[38]^c[38]^c[38]^c[38]^c[38]^c[40]^c[40]^c[40]^c[40]^c[41]^c[40]^c[41]^c[42]^c[42]^c[43]^c[43]^c[43]^c[42]^c[43]; //row: 32 d[i2+32*Zc]=c[1]^c[1]^c[0]^c[1]^c[1]^c[0]^c[0]^c[2]^c[3]^c[2]^c[3]^c[2]^c[5]^c[4]^c[5]^c[4]^c[6]^c[6]^c[6]^c[7]^c[9]^c[9]^c[8]^c[8]^c[9]^c[11]^c[10]^c[11]^c[10]^c[13]^c[13]^c[12]^c[12]^c[13]^c[15]^c[15]^c[14]^c[15]^c[14]^c[17]^c[17]^c[16]^c[17]^c[16]^c[18]^c[18]^c[19]^c[18]^c[20]^c[21]^c[20]^c[20]^c[21]^c[23]^c[23]^c[22]^c[23]^c[24]^c[25]^c[24]^c[25]^c[25]^c[26]^c[26]^c[27]^c[27]^c[26]^c[28]^c[29]^c[28]^c[29]^c[28]^c[28]^c[30]^c[31]^c[31]^c[30]^c[32]^c[33]^c[32]^c[33]^c[34]^c[35]^c[34]^c[34]^c[35]^c[37]^c[37]^c[36]^c[36]^c[37]^c[38]^c[38]^c[39]^c[38]^c[40]^c[41]^c[40]^c[40]^c[41]^c[42]^c[43]^c[42]^c[43]; //row: 33 d[i2+33*Zc]=c[3]^c[4]^c[22]^c[42]; //row: 34 d[i2+34*Zc]=c[0]^c[14]^c[31]^c[34]; //row: 35 d[i2+35*Zc]=c[0]^c[0]^c[0]^c[1]^c[3]^c[3]^c[3]^c[2]^c[4]^c[5]^c[5]^c[7]^c[7]^c[6]^c[8]^c[9]^c[8]^c[10]^c[11]^c[11]^c[12]^c[13]^c[12]^c[12]^c[14]^c[15]^c[15]^c[16]^c[17]^c[17]^c[19]^c[19]^c[19]^c[21]^c[21]^c[20]^c[22]^c[22]^c[22]^c[25]^c[24]^c[24]^c[24]^c[27]^c[26]^c[27]^c[29]^c[29]^c[29]^c[31]^c[30]^c[31]^c[33]^c[32]^c[32]^c[35]^c[35]^c[34]^c[36]^c[37]^c[36]^c[39]^c[39]^c[39]^c[41]^c[41]^c[40]^c[43]^c[42]^c[42]; //row: 36 d[i2+36*Zc]=c[0]^c[28]^c[30]^c[37]; //row: 37 d[i2+37*Zc]=c[1]^c[0]^c[0]^c[0]^c[1]^c[2]^c[3]^c[3]^c[3]^c[3]^c[5]^c[4]^c[5]^c[5]^c[6]^c[7]^c[7]^c[6]^c[8]^c[9]^c[8]^c[11]^c[10]^c[11]^c[11]^c[13]^c[12]^c[13]^c[12]^c[14]^c[15]^c[15]^c[16]^c[17]^c[17]^c[18]^c[19]^c[19]^c[19]^c[20]^c[21]^c[21]^c[20]^c[23]^c[22]^c[22]^c[22]^c[24]^c[25]^c[24]^c[24]^c[26]^c[27]^c[26]^c[27]^c[27]^c[29]^c[29]^c[29]^c[30]^c[31]^c[30]^c[31]^c[32]^c[33]^c[32]^c[32]^c[35]^c[35]^c[34]^c[37]^c[36]^c[37]^c[36]^c[38]^c[39]^c[39]^c[39]^c[40]^c[41]^c[41]^c[40]^c[42]^c[43]^c[42]^c[42]; //row: 38 d[i2+38*Zc]=c[0]^c[18]^c[20]^c[24]; //row: 39 d[i2+39*Zc]=c[2]^c[6]^c[14]^c[39]; //row: 40 d[i2+40*Zc]=c[0]^c[16]^c[34]; //row: 41 d[i2+41*Zc]=c[2]^c[6]^c[18]^c[36]; //row: 42 d[i2+42*Zc]=c[1]^c[1]^c[0]^c[1]^c[1]^c[0]^c[0]^c[2]^c[3]^c[2]^c[3]^c[2]^c[5]^c[4]^c[5]^c[4]^c[6]^c[6]^c[6]^c[7]^c[9]^c[9]^c[8]^c[8]^c[9]^c[8]^c[11]^c[10]^c[11]^c[10]^c[13]^c[13]^c[12]^c[12]^c[13]^c[15]^c[15]^c[14]^c[15]^c[14]^c[17]^c[17]^c[16]^c[17]^c[16]^c[18]^c[18]^c[19]^c[18]^c[20]^c[21]^c[20]^c[20]^c[21]^c[23]^c[23]^c[22]^c[23]^c[24]^c[25]^c[24]^c[25]^c[26]^c[26]^c[27]^c[27]^c[26]^c[28]^c[29]^c[28]^c[29]^c[28]^c[30]^c[31]^c[31]^c[30]^c[32]^c[33]^c[32]^c[33]^c[34]^c[35]^c[34]^c[34]^c[35]^c[37]^c[37]^c[36]^c[36]^c[37]^c[38]^c[38]^c[39]^c[38]^c[40]^c[41]^c[40]^c[40]^c[41]^c[42]^c[43]^c[42]^c[43]; //row: 43 d[i2+43*Zc]=c[1]^c[1]^c[1]^c[1]^c[0]^c[2]^c[2]^c[3]^c[2]^c[2]^c[5]^c[4]^c[4]^c[6]^c[6]^c[6]^c[7]^c[9]^c[8]^c[8]^c[9]^c[11]^c[10]^c[10]^c[13]^c[12]^c[12]^c[13]^c[15]^c[14]^c[15]^c[14]^c[17]^c[16]^c[17]^c[16]^c[18]^c[18]^c[18]^c[20]^c[20]^c[20]^c[21]^c[23]^c[23]^c[22]^c[23]^c[24]^c[25]^c[24]^c[25]^c[26]^c[27]^c[27]^c[26]^c[28]^c[28]^c[29]^c[28]^c[30]^c[31]^c[30]^c[32]^c[33]^c[32]^c[33]^c[32]^c[34]^c[34]^c[34]^c[35]^c[37]^c[36]^c[36]^c[37]^c[36]^c[38]^c[38]^c[38]^c[40]^c[40]^c[40]^c[41]^c[42]^c[43]^c[42]^c[43]; //row: 44 d[i2+44*Zc]=c[0]^c[0]^c[0]^c[1]^c[0]^c[3]^c[3]^c[3]^c[4]^c[5]^c[5]^c[7]^c[7]^c[6]^c[8]^c[9]^c[8]^c[10]^c[11]^c[11]^c[12]^c[13]^c[12]^c[14]^c[15]^c[15]^c[14]^c[16]^c[17]^c[17]^c[19]^c[19]^c[19]^c[18]^c[21]^c[21]^c[20]^c[22]^c[22]^c[22]^c[25]^c[24]^c[24]^c[27]^c[26]^c[27]^c[29]^c[29]^c[29]^c[31]^c[30]^c[31]^c[33]^c[32]^c[32]^c[35]^c[35]^c[34]^c[36]^c[37]^c[36]^c[39]^c[39]^c[39]^c[41]^c[41]^c[40]^c[43]^c[42]^c[42]; //row: 45 d[i2+45*Zc]=c[2]^c[12]^c[20]; } break; case 3: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[0]^c[0]^c[0]^c[2]^c[3]^c[3]^c[5]^c[7]^c[6]^c[6]^c[11]^c[9]^c[11]^c[14]^c[13]^c[13]^c[15]^c[17]^c[15]^c[20]^c[19]^c[18]^c[21]^c[23]^c[23]^c[24]^c[24]^c[25]^c[28]^c[27]^c[29]^c[32]^c[32]^c[32]^c[33]^c[33]^c[34]^c[37]^c[38]^c[38]^c[41]^c[40]^c[40]^c[42]^c[42]^c[43]^c[46]^c[47]^c[46]^c[48]^c[50]^c[48]^c[53]^c[52]^c[53]^c[55]^c[56]^c[54]^c[59]^c[57]^c[57]^c[62]^c[60]^c[62]^c[63]^c[63]^c[65]; //row: 1 d[i2+1*Zc]=c[0]^c[1]^c[1]^c[1]^c[0]^c[3]^c[4]^c[4]^c[3]^c[7]^c[8]^c[7]^c[7]^c[11]^c[9]^c[10]^c[9]^c[12]^c[14]^c[14]^c[15]^c[16]^c[15]^c[16]^c[20]^c[18]^c[20]^c[19]^c[22]^c[21]^c[21]^c[25]^c[25]^c[26]^c[28]^c[29]^c[28]^c[27]^c[32]^c[30]^c[30]^c[30]^c[33]^c[34]^c[34]^c[35]^c[37]^c[38]^c[36]^c[36]^c[41]^c[39]^c[41]^c[41]^c[43]^c[43]^c[44]^c[46]^c[47]^c[45]^c[47]^c[48]^c[49]^c[48]^c[49]^c[51]^c[53]^c[51]^c[55]^c[56]^c[54]^c[55]^c[59]^c[57]^c[58]^c[58]^c[62]^c[60]^c[61]^c[60]^c[63]^c[64]^c[64]^c[63]; //row: 2 d[i2+2*Zc]=c[1]^c[1]^c[0]^c[1]^c[2]^c[0]^c[4]^c[3]^c[4]^c[5]^c[3]^c[8]^c[7]^c[6]^c[7]^c[9]^c[10]^c[11]^c[9]^c[12]^c[13]^c[14]^c[13]^c[14]^c[16]^c[15]^c[15]^c[16]^c[18]^c[19]^c[20]^c[18]^c[19]^c[22]^c[23]^c[21]^c[23]^c[21]^c[25]^c[24]^c[25]^c[25]^c[26]^c[29]^c[28]^c[29]^c[27]^c[30]^c[32]^c[30]^c[32]^c[30]^c[34]^c[34]^c[34]^c[35]^c[38]^c[36]^c[38]^c[36]^c[39]^c[40]^c[41]^c[40]^c[41]^c[43]^c[42]^c[43]^c[43]^c[44]^c[47]^c[45]^c[46]^c[47]^c[49]^c[48]^c[48]^c[49]^c[51]^c[52]^c[53]^c[53]^c[51]^c[56]^c[56]^c[54]^c[54]^c[55]^c[57]^c[58]^c[57]^c[58]^c[60]^c[60]^c[61]^c[62]^c[60]^c[64]^c[64]^c[65]^c[63]; //row: 3 d[i2+3*Zc]=c[1]^c[1]^c[1]^c[2]^c[0]^c[4]^c[4]^c[5]^c[3]^c[8]^c[7]^c[7]^c[9]^c[10]^c[11]^c[9]^c[12]^c[14]^c[13]^c[14]^c[16]^c[15]^c[16]^c[18]^c[20]^c[18]^c[19]^c[22]^c[21]^c[23]^c[21]^c[25]^c[25]^c[25]^c[26]^c[29]^c[28]^c[27]^c[30]^c[30]^c[32]^c[30]^c[34]^c[34]^c[34]^c[35]^c[38]^c[36]^c[38]^c[36]^c[39]^c[41]^c[40]^c[41]^c[43]^c[43]^c[43]^c[44]^c[47]^c[45]^c[47]^c[49]^c[48]^c[48]^c[49]^c[51]^c[53]^c[53]^c[51]^c[56]^c[54]^c[54]^c[55]^c[57]^c[58]^c[58]^c[60]^c[61]^c[62]^c[60]^c[64]^c[64]^c[65]^c[63]; //row: 4 d[i2+4*Zc]=c[1]^c[3]; //row: 5 d[i2+5*Zc]=c[1]^c[1]^c[1]^c[0]^c[2]^c[4]^c[4]^c[3]^c[4]^c[8]^c[7]^c[7]^c[9]^c[10]^c[9]^c[9]^c[12]^c[14]^c[14]^c[16]^c[15]^c[16]^c[18]^c[20]^c[19]^c[22]^c[21]^c[21]^c[25]^c[25]^c[26]^c[29]^c[28]^c[27]^c[30]^c[30]^c[30]^c[34]^c[34]^c[35]^c[38]^c[36]^c[36]^c[36]^c[39]^c[41]^c[41]^c[43]^c[43]^c[44]^c[47]^c[45]^c[47]^c[49]^c[48]^c[49]^c[48]^c[51]^c[53]^c[51]^c[56]^c[54]^c[55]^c[57]^c[58]^c[58]^c[60]^c[61]^c[60]^c[64]^c[64]^c[63]^c[65]; //row: 6 d[i2+6*Zc]=c[1]^c[19]^c[30]^c[35]^c[40]^c[51]^c[56]^c[62]; //row: 7 d[i2+7*Zc]=c[2]^c[4]^c[12]^c[23]^c[25]^c[44]; //row: 8 d[i2+8*Zc]=c[1]^c[0]^c[1]^c[0]^c[1]^c[2]^c[0]^c[0]^c[1]^c[2]^c[0]^c[4]^c[3]^c[4]^c[5]^c[3]^c[3]^c[4]^c[5]^c[4]^c[8]^c[7]^c[7]^c[6]^c[7]^c[8]^c[6]^c[9]^c[11]^c[10]^c[9]^c[9]^c[10]^c[11]^c[11]^c[12]^c[14]^c[14]^c[12]^c[13]^c[14]^c[12]^c[13]^c[16]^c[15]^c[15]^c[17]^c[16]^c[17]^c[15]^c[18]^c[20]^c[20]^c[18]^c[19]^c[19]^c[20]^c[18]^c[22]^c[21]^c[21]^c[22]^c[23]^c[21]^c[22]^c[23]^c[25]^c[24]^c[25]^c[26]^c[24]^c[26]^c[24]^c[25]^c[29]^c[28]^c[28]^c[27]^c[27]^c[28]^c[29]^c[30]^c[32]^c[30]^c[31]^c[32]^c[30]^c[31]^c[32]^c[34]^c[33]^c[34]^c[33]^c[35]^c[33]^c[34]^c[38]^c[37]^c[36]^c[38]^c[36]^c[37]^c[38]^c[38]^c[39]^c[41]^c[41]^c[39]^c[40]^c[41]^c[39]^c[40]^c[43]^c[42]^c[43]^c[44]^c[42]^c[44]^c[42]^c[43]^c[47]^c[46]^c[45]^c[47]^c[47]^c[45]^c[46]^c[49]^c[48]^c[48]^c[50]^c[49]^c[50]^c[48]^c[50]^c[51]^c[53]^c[53]^c[51]^c[52]^c[51]^c[52]^c[53]^c[56]^c[55]^c[54]^c[55]^c[56]^c[55]^c[56]^c[54]^c[57]^c[59]^c[58]^c[57]^c[58]^c[59]^c[57]^c[58]^c[60]^c[62]^c[61]^c[62]^c[60]^c[60]^c[61]^c[62]^c[64]^c[63]^c[64]^c[63]^c[63]^c[64]^c[65]^c[64]; //row: 9 d[i2+9*Zc]=c[2]^c[3]^c[32]^c[33]^c[41]^c[53]^c[56]^c[60]; //row: 10 d[i2+10*Zc]=c[4]^c[8]^c[12]^c[23]^c[25]^c[44]; //row: 11 d[i2+11*Zc]=c[1]^c[1]^c[2]^c[1]^c[2]^c[1]^c[2]^c[0]^c[1]^c[2]^c[4]^c[4]^c[5]^c[4]^c[5]^c[3]^c[4]^c[5]^c[8]^c[8]^c[6]^c[7]^c[8]^c[7]^c[8]^c[9]^c[9]^c[10]^c[10]^c[11]^c[9]^c[10]^c[12]^c[13]^c[14]^c[12]^c[14]^c[12]^c[16]^c[16]^c[17]^c[15]^c[16]^c[16]^c[17]^c[18]^c[18]^c[19]^c[20]^c[18]^c[19]^c[20]^c[22]^c[23]^c[21]^c[22]^c[21]^c[22]^c[25]^c[26]^c[25]^c[26]^c[26]^c[24]^c[29]^c[29]^c[27]^c[28]^c[29]^c[27]^c[28]^c[30]^c[30]^c[31]^c[30]^c[31]^c[30]^c[31]^c[34]^c[34]^c[35]^c[34]^c[35]^c[35]^c[33]^c[38]^c[38]^c[36]^c[36]^c[37]^c[36]^c[37]^c[37]^c[39]^c[39]^c[40]^c[41]^c[39]^c[41]^c[39]^c[43]^c[44]^c[43]^c[44]^c[44]^c[42]^c[47]^c[47]^c[45]^c[45]^c[46]^c[47]^c[45]^c[49]^c[49]^c[50]^c[48]^c[49]^c[49]^c[50]^c[49]^c[51]^c[52]^c[53]^c[51]^c[51]^c[52]^c[56]^c[56]^c[54]^c[54]^c[55]^c[55]^c[56]^c[57]^c[57]^c[58]^c[58]^c[59]^c[58]^c[59]^c[60]^c[60]^c[61]^c[61]^c[62]^c[60]^c[61]^c[64]^c[64]^c[65]^c[64]^c[65]^c[63]^c[64]^c[64]; //row: 12 d[i2+12*Zc]=c[1]^c[5]^c[32]^c[33]^c[40]^c[55]; //row: 13 d[i2+13*Zc]=c[1]^c[2]^c[2]^c[2]^c[1]^c[0]^c[4]^c[5]^c[5]^c[4]^c[8]^c[6]^c[8]^c[8]^c[9]^c[10]^c[11]^c[10]^c[11]^c[13]^c[12]^c[12]^c[16]^c[17]^c[16]^c[17]^c[18]^c[19]^c[18]^c[20]^c[23]^c[22]^c[22]^c[22]^c[26]^c[26]^c[24]^c[29]^c[27]^c[29]^c[28]^c[30]^c[31]^c[31]^c[31]^c[34]^c[35]^c[35]^c[33]^c[38]^c[36]^c[37]^c[37]^c[39]^c[40]^c[39]^c[39]^c[44]^c[44]^c[42]^c[47]^c[45]^c[46]^c[45]^c[49]^c[50]^c[49]^c[50]^c[52]^c[51]^c[52]^c[56]^c[54]^c[55]^c[56]^c[57]^c[58]^c[59]^c[59]^c[60]^c[61]^c[62]^c[61]^c[60]^c[64]^c[65]^c[65]^c[64]; //row: 14 d[i2+14*Zc]=c[0]^c[37]^c[46]^c[49]^c[52]^c[65]; //row: 15 d[i2+15*Zc]=c[0]^c[0]^c[0]^c[1]^c[2]^c[0]^c[3]^c[3]^c[4]^c[5]^c[4]^c[7]^c[6]^c[6]^c[11]^c[9]^c[10]^c[11]^c[14]^c[13]^c[12]^c[13]^c[15]^c[17]^c[15]^c[20]^c[19]^c[20]^c[18]^c[21]^c[23]^c[22]^c[23]^c[24]^c[24]^c[24]^c[25]^c[28]^c[27]^c[29]^c[32]^c[32]^c[31]^c[32]^c[32]^c[33]^c[33]^c[33]^c[34]^c[37]^c[38]^c[37]^c[38]^c[41]^c[40]^c[39]^c[40]^c[41]^c[42]^c[42]^c[42]^c[43]^c[46]^c[47]^c[46]^c[48]^c[50]^c[50]^c[48]^c[53]^c[52]^c[52]^c[53]^c[55]^c[56]^c[56]^c[54]^c[54]^c[59]^c[57]^c[57]^c[62]^c[60]^c[61]^c[62]^c[63]^c[63]^c[64]^c[65]; //row: 16 d[i2+16*Zc]=c[0]^c[0]^c[0]^c[2]^c[3]^c[3]^c[5]^c[3]^c[7]^c[6]^c[6]^c[11]^c[9]^c[11]^c[10]^c[14]^c[13]^c[13]^c[15]^c[17]^c[15]^c[20]^c[19]^c[18]^c[21]^c[23]^c[23]^c[24]^c[24]^c[25]^c[28]^c[27]^c[29]^c[32]^c[32]^c[32]^c[33]^c[33]^c[34]^c[35]^c[37]^c[38]^c[38]^c[41]^c[40]^c[40]^c[42]^c[42]^c[43]^c[46]^c[47]^c[46]^c[48]^c[50]^c[48]^c[53]^c[52]^c[53]^c[55]^c[56]^c[54]^c[59]^c[57]^c[57]^c[62]^c[60]^c[62]^c[60]^c[63]^c[63]^c[65]; //row: 17 d[i2+17*Zc]=c[1]^c[44]^c[50]^c[51]^c[65]; //row: 18 d[i2+18*Zc]=c[3]^c[36]^c[39]^c[56]^c[57]; //row: 19 d[i2+19*Zc]=c[0]^c[5]^c[22]^c[25]^c[31]; //row: 20 d[i2+20*Zc]=c[2]^c[2]^c[2]^c[1]^c[0]^c[5]^c[5]^c[4]^c[6]^c[8]^c[8]^c[10]^c[11]^c[10]^c[10]^c[13]^c[12]^c[12]^c[17]^c[16]^c[17]^c[19]^c[18]^c[20]^c[23]^c[22]^c[22]^c[26]^c[26]^c[24]^c[27]^c[29]^c[28]^c[29]^c[31]^c[31]^c[31]^c[35]^c[35]^c[33]^c[34]^c[36]^c[37]^c[37]^c[40]^c[39]^c[39]^c[44]^c[44]^c[42]^c[45]^c[46]^c[45]^c[50]^c[49]^c[50]^c[52]^c[51]^c[52]^c[54]^c[55]^c[56]^c[58]^c[59]^c[59]^c[61]^c[62]^c[61]^c[65]^c[65]^c[64]; //row: 21 d[i2+21*Zc]=c[3]^c[17]^c[48]^c[62]^c[63]; //row: 22 d[i2+22*Zc]=c[2]^c[37]^c[40]^c[51]; //row: 23 d[i2+23*Zc]=c[5]^c[7]^c[30]^c[56]; //row: 24 d[i2+24*Zc]=c[0]^c[0]^c[0]^c[2]^c[0]^c[3]^c[3]^c[5]^c[7]^c[6]^c[6]^c[11]^c[9]^c[11]^c[10]^c[14]^c[13]^c[13]^c[12]^c[15]^c[17]^c[15]^c[20]^c[19]^c[18]^c[21]^c[23]^c[23]^c[24]^c[24]^c[25]^c[28]^c[27]^c[29]^c[32]^c[32]^c[32]^c[33]^c[33]^c[34]^c[35]^c[37]^c[38]^c[38]^c[41]^c[40]^c[40]^c[42]^c[42]^c[43]^c[46]^c[47]^c[46]^c[48]^c[50]^c[48]^c[53]^c[52]^c[53]^c[55]^c[56]^c[54]^c[59]^c[57]^c[57]^c[62]^c[60]^c[62]^c[63]^c[63]^c[65]; //row: 25 d[i2+25*Zc]=c[5]^c[19]^c[22]^c[44]; //row: 26 d[i2+26*Zc]=c[1]^c[8]^c[12]^c[45]; //row: 27 d[i2+27*Zc]=c[4]^c[19]^c[25]; //row: 28 d[i2+28*Zc]=c[2]^c[12]^c[57]^c[63]; //row: 29 d[i2+29*Zc]=c[1]^c[1]^c[1]^c[2]^c[0]^c[4]^c[4]^c[5]^c[3]^c[5]^c[8]^c[7]^c[7]^c[9]^c[10]^c[11]^c[9]^c[12]^c[14]^c[13]^c[14]^c[16]^c[15]^c[16]^c[18]^c[20]^c[18]^c[19]^c[22]^c[21]^c[23]^c[21]^c[25]^c[25]^c[25]^c[26]^c[29]^c[28]^c[27]^c[30]^c[30]^c[32]^c[30]^c[34]^c[34]^c[34]^c[35]^c[38]^c[36]^c[38]^c[36]^c[39]^c[41]^c[40]^c[41]^c[43]^c[43]^c[43]^c[44]^c[43]^c[47]^c[45]^c[47]^c[49]^c[48]^c[48]^c[49]^c[51]^c[53]^c[53]^c[51]^c[56]^c[54]^c[54]^c[55]^c[56]^c[57]^c[58]^c[58]^c[60]^c[61]^c[62]^c[60]^c[64]^c[64]^c[65]^c[63]; //row: 30 d[i2+30*Zc]=c[1]^c[1]^c[0]^c[1]^c[2]^c[0]^c[2]^c[4]^c[3]^c[4]^c[5]^c[3]^c[8]^c[7]^c[6]^c[7]^c[9]^c[10]^c[11]^c[9]^c[12]^c[13]^c[14]^c[13]^c[14]^c[16]^c[15]^c[15]^c[16]^c[18]^c[19]^c[20]^c[18]^c[19]^c[22]^c[23]^c[21]^c[23]^c[21]^c[25]^c[24]^c[25]^c[25]^c[26]^c[29]^c[28]^c[29]^c[27]^c[30]^c[32]^c[30]^c[32]^c[30]^c[30]^c[34]^c[34]^c[34]^c[35]^c[38]^c[36]^c[38]^c[36]^c[39]^c[40]^c[41]^c[40]^c[41]^c[40]^c[43]^c[42]^c[43]^c[43]^c[44]^c[47]^c[45]^c[46]^c[47]^c[49]^c[48]^c[48]^c[49]^c[51]^c[52]^c[53]^c[53]^c[51]^c[56]^c[56]^c[54]^c[54]^c[55]^c[57]^c[58]^c[57]^c[58]^c[60]^c[60]^c[61]^c[62]^c[60]^c[64]^c[64]^c[65]^c[63]; //row: 31 d[i2+31*Zc]=c[0]^c[2]^c[0]^c[2]^c[0]^c[2]^c[2]^c[0]^c[1]^c[3]^c[5]^c[3]^c[5]^c[5]^c[3]^c[4]^c[3]^c[7]^c[6]^c[6]^c[8]^c[6]^c[8]^c[11]^c[10]^c[9]^c[11]^c[11]^c[9]^c[10]^c[14]^c[13]^c[13]^c[12]^c[13]^c[14]^c[12]^c[15]^c[17]^c[17]^c[16]^c[15]^c[17]^c[20]^c[19]^c[19]^c[18]^c[18]^c[19]^c[20]^c[21]^c[23]^c[23]^c[22]^c[23]^c[21]^c[22]^c[22]^c[24]^c[26]^c[24]^c[26]^c[25]^c[26]^c[24]^c[28]^c[27]^c[27]^c[29]^c[29]^c[28]^c[32]^c[31]^c[32]^c[31]^c[32]^c[30]^c[31]^c[33]^c[35]^c[33]^c[35]^c[34]^c[35]^c[33]^c[37]^c[36]^c[38]^c[37]^c[38]^c[36]^c[37]^c[41]^c[40]^c[40]^c[39]^c[40]^c[41]^c[39]^c[42]^c[44]^c[42]^c[44]^c[43]^c[44]^c[42]^c[46]^c[45]^c[47]^c[46]^c[46]^c[45]^c[48]^c[50]^c[50]^c[49]^c[48]^c[49]^c[50]^c[53]^c[52]^c[52]^c[51]^c[53]^c[51]^c[52]^c[55]^c[54]^c[56]^c[55]^c[54]^c[55]^c[56]^c[59]^c[58]^c[57]^c[59]^c[57]^c[59]^c[62]^c[61]^c[60]^c[62]^c[62]^c[60]^c[61]^c[63]^c[65]^c[63]^c[65]^c[65]^c[63]^c[64]; //row: 32 d[i2+32*Zc]=c[0]^c[0]^c[2]^c[0]^c[1]^c[2]^c[2]^c[3]^c[5]^c[3]^c[4]^c[5]^c[7]^c[6]^c[8]^c[6]^c[11]^c[9]^c[10]^c[11]^c[14]^c[12]^c[13]^c[12]^c[13]^c[15]^c[17]^c[17]^c[15]^c[20]^c[18]^c[19]^c[20]^c[18]^c[21]^c[22]^c[23]^c[22]^c[23]^c[24]^c[26]^c[24]^c[24]^c[25]^c[28]^c[27]^c[28]^c[29]^c[32]^c[31]^c[32]^c[31]^c[32]^c[33]^c[33]^c[33]^c[34]^c[37]^c[38]^c[37]^c[38]^c[38]^c[41]^c[39]^c[40]^c[39]^c[40]^c[42]^c[44]^c[42]^c[42]^c[43]^c[42]^c[46]^c[47]^c[45]^c[46]^c[48]^c[50]^c[50]^c[48]^c[53]^c[51]^c[52]^c[52]^c[53]^c[55]^c[55]^c[56]^c[56]^c[54]^c[59]^c[57]^c[59]^c[57]^c[62]^c[62]^c[60]^c[61]^c[62]^c[63]^c[63]^c[64]^c[65]; //row: 33 d[i2+33*Zc]=c[4]^c[7]^c[33]^c[65]; //row: 34 d[i2+34*Zc]=c[1]^c[21]^c[45]^c[53]; //row: 35 d[i2+35*Zc]=c[2]^c[2]^c[2]^c[1]^c[5]^c[5]^c[4]^c[4]^c[6]^c[8]^c[8]^c[10]^c[11]^c[10]^c[13]^c[12]^c[12]^c[17]^c[16]^c[17]^c[19]^c[18]^c[20]^c[19]^c[23]^c[22]^c[22]^c[26]^c[26]^c[24]^c[27]^c[29]^c[28]^c[31]^c[31]^c[31]^c[35]^c[35]^c[33]^c[36]^c[37]^c[37]^c[37]^c[40]^c[39]^c[39]^c[44]^c[44]^c[42]^c[45]^c[46]^c[45]^c[50]^c[49]^c[50]^c[52]^c[51]^c[52]^c[54]^c[55]^c[56]^c[58]^c[59]^c[59]^c[61]^c[62]^c[61]^c[65]^c[65]^c[64]; //row: 36 d[i2+36*Zc]=c[2]^c[42]^c[47]^c[56]; //row: 37 d[i2+37*Zc]=c[1]^c[2]^c[2]^c[2]^c[1]^c[4]^c[5]^c[5]^c[4]^c[4]^c[8]^c[6]^c[8]^c[8]^c[9]^c[10]^c[11]^c[10]^c[13]^c[12]^c[12]^c[16]^c[17]^c[16]^c[17]^c[18]^c[19]^c[18]^c[20]^c[23]^c[22]^c[22]^c[26]^c[26]^c[24]^c[29]^c[27]^c[29]^c[28]^c[30]^c[31]^c[31]^c[31]^c[34]^c[35]^c[35]^c[33]^c[38]^c[36]^c[37]^c[37]^c[39]^c[40]^c[39]^c[39]^c[39]^c[44]^c[44]^c[42]^c[47]^c[45]^c[46]^c[45]^c[49]^c[50]^c[49]^c[50]^c[52]^c[51]^c[52]^c[56]^c[54]^c[55]^c[56]^c[57]^c[58]^c[59]^c[59]^c[60]^c[61]^c[62]^c[61]^c[64]^c[65]^c[65]^c[64]; //row: 38 d[i2+38*Zc]=c[1]^c[29]^c[30]^c[36]; //row: 39 d[i2+39*Zc]=c[5]^c[11]^c[21]^c[59]; //row: 40 d[i2+40*Zc]=c[0]^c[24]^c[53]; //row: 41 d[i2+41*Zc]=c[3]^c[10]^c[27]^c[56]; //row: 42 d[i2+42*Zc]=c[0]^c[0]^c[2]^c[0]^c[1]^c[2]^c[1]^c[3]^c[5]^c[3]^c[4]^c[5]^c[7]^c[6]^c[8]^c[6]^c[11]^c[9]^c[10]^c[11]^c[14]^c[12]^c[13]^c[12]^c[13]^c[13]^c[15]^c[17]^c[17]^c[15]^c[20]^c[18]^c[19]^c[20]^c[18]^c[21]^c[22]^c[23]^c[22]^c[23]^c[24]^c[26]^c[24]^c[24]^c[25]^c[28]^c[27]^c[28]^c[29]^c[32]^c[31]^c[32]^c[31]^c[32]^c[33]^c[33]^c[33]^c[34]^c[37]^c[38]^c[37]^c[38]^c[41]^c[39]^c[40]^c[39]^c[40]^c[42]^c[44]^c[42]^c[42]^c[43]^c[46]^c[47]^c[45]^c[46]^c[48]^c[50]^c[50]^c[48]^c[53]^c[51]^c[52]^c[52]^c[53]^c[55]^c[55]^c[56]^c[56]^c[54]^c[59]^c[57]^c[59]^c[57]^c[62]^c[62]^c[60]^c[61]^c[62]^c[63]^c[63]^c[64]^c[65]; //row: 43 d[i2+43*Zc]=c[1]^c[1]^c[1]^c[2]^c[0]^c[4]^c[4]^c[5]^c[3]^c[4]^c[8]^c[7]^c[7]^c[9]^c[10]^c[11]^c[9]^c[12]^c[14]^c[13]^c[14]^c[16]^c[15]^c[16]^c[18]^c[20]^c[18]^c[19]^c[22]^c[21]^c[23]^c[21]^c[25]^c[25]^c[25]^c[26]^c[29]^c[28]^c[27]^c[30]^c[30]^c[32]^c[30]^c[34]^c[34]^c[34]^c[35]^c[38]^c[36]^c[38]^c[36]^c[39]^c[41]^c[40]^c[41]^c[43]^c[43]^c[43]^c[44]^c[47]^c[45]^c[47]^c[49]^c[48]^c[48]^c[49]^c[50]^c[51]^c[53]^c[53]^c[51]^c[56]^c[54]^c[54]^c[55]^c[56]^c[57]^c[58]^c[58]^c[60]^c[61]^c[62]^c[60]^c[64]^c[64]^c[65]^c[63]; //row: 44 d[i2+44*Zc]=c[1]^c[1]^c[1]^c[0]^c[1]^c[4]^c[4]^c[3]^c[8]^c[7]^c[7]^c[9]^c[10]^c[9]^c[12]^c[14]^c[14]^c[16]^c[15]^c[16]^c[18]^c[20]^c[19]^c[22]^c[21]^c[21]^c[23]^c[25]^c[25]^c[26]^c[29]^c[28]^c[27]^c[27]^c[30]^c[30]^c[30]^c[34]^c[34]^c[35]^c[38]^c[36]^c[36]^c[39]^c[41]^c[41]^c[43]^c[43]^c[44]^c[47]^c[45]^c[47]^c[49]^c[48]^c[49]^c[51]^c[53]^c[51]^c[56]^c[54]^c[55]^c[57]^c[58]^c[58]^c[60]^c[61]^c[60]^c[64]^c[64]^c[63]; //row: 45 d[i2+45*Zc]=c[5]^c[19]^c[32]; } break; case 4: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[1]^c[1]^c[1]^c[0]^c[4]^c[6]^c[4]^c[9]^c[10]^c[8]^c[14]^c[12]^c[15]^c[19]^c[18]^c[19]^c[23]^c[22]^c[20]^c[25]^c[24]^c[25]^c[29]^c[28]^c[30]^c[35]^c[32]^c[34]^c[38]^c[36]^c[38]^c[40]^c[42]^c[43]^c[45]^c[47]^c[45]^c[50]^c[49]^c[49]^c[52]^c[53]^c[54]^c[56]^c[56]^c[58]^c[62]^c[63]^c[60]^c[66]^c[65]^c[67]^c[70]^c[68]^c[71]^c[73]^c[72]^c[75]^c[78]^c[78]^c[78]^c[82]^c[80]^c[83]^c[86]^c[87]^c[87]; //row: 1 d[i2+1*Zc]=c[1]^c[2]^c[2]^c[2]^c[1]^c[4]^c[5]^c[7]^c[5]^c[9]^c[10]^c[11]^c[9]^c[14]^c[15]^c[13]^c[12]^c[16]^c[19]^c[16]^c[23]^c[20]^c[23]^c[21]^c[25]^c[26]^c[25]^c[26]^c[30]^c[29]^c[31]^c[32]^c[33]^c[35]^c[38]^c[39]^c[37]^c[39]^c[40]^c[41]^c[43]^c[40]^c[45]^c[46]^c[44]^c[46]^c[50]^c[51]^c[50]^c[50]^c[52]^c[53]^c[54]^c[55]^c[57]^c[57]^c[59]^c[62]^c[63]^c[60]^c[61]^c[66]^c[67]^c[66]^c[64]^c[71]^c[69]^c[68]^c[73]^c[74]^c[73]^c[72]^c[78]^c[79]^c[79]^c[79]^c[82]^c[83]^c[81]^c[80]^c[86]^c[87]^c[84]^c[84]; //row: 2 d[i2+2*Zc]=c[2]^c[2]^c[1]^c[2]^c[0]^c[1]^c[5]^c[6]^c[7]^c[4]^c[5]^c[10]^c[11]^c[8]^c[9]^c[15]^c[13]^c[15]^c[12]^c[16]^c[18]^c[19]^c[19]^c[16]^c[20]^c[23]^c[20]^c[21]^c[26]^c[24]^c[25]^c[25]^c[26]^c[30]^c[28]^c[29]^c[30]^c[31]^c[32]^c[32]^c[33]^c[34]^c[35]^c[39]^c[37]^c[38]^c[39]^c[41]^c[42]^c[43]^c[43]^c[40]^c[46]^c[44]^c[45]^c[46]^c[51]^c[50]^c[49]^c[50]^c[53]^c[53]^c[54]^c[54]^c[55]^c[57]^c[56]^c[57]^c[58]^c[59]^c[63]^c[60]^c[60]^c[61]^c[67]^c[66]^c[67]^c[64]^c[71]^c[68]^c[69]^c[71]^c[68]^c[74]^c[72]^c[73]^c[75]^c[72]^c[79]^c[79]^c[78]^c[79]^c[83]^c[80]^c[81]^c[83]^c[80]^c[87]^c[84]^c[87]^c[84]; //row: 3 d[i2+3*Zc]=c[2]^c[2]^c[2]^c[0]^c[1]^c[5]^c[7]^c[4]^c[5]^c[10]^c[11]^c[9]^c[15]^c[13]^c[15]^c[12]^c[16]^c[19]^c[19]^c[16]^c[20]^c[23]^c[21]^c[26]^c[25]^c[25]^c[26]^c[30]^c[29]^c[30]^c[31]^c[32]^c[33]^c[34]^c[35]^c[39]^c[37]^c[39]^c[41]^c[43]^c[43]^c[40]^c[46]^c[44]^c[45]^c[46]^c[51]^c[50]^c[49]^c[50]^c[53]^c[54]^c[54]^c[55]^c[57]^c[57]^c[58]^c[59]^c[63]^c[60]^c[61]^c[67]^c[66]^c[67]^c[64]^c[71]^c[69]^c[71]^c[68]^c[74]^c[73]^c[75]^c[72]^c[79]^c[79]^c[79]^c[83]^c[81]^c[83]^c[80]^c[87]^c[84]^c[87]^c[84]; //row: 4 d[i2+4*Zc]=c[0]^c[5]; //row: 5 d[i2+5*Zc]=c[0]^c[0]^c[0]^c[3]^c[0]^c[7]^c[5]^c[7]^c[7]^c[8]^c[9]^c[11]^c[13]^c[15]^c[14]^c[13]^c[18]^c[17]^c[18]^c[22]^c[21]^c[23]^c[24]^c[27]^c[24]^c[28]^c[31]^c[29]^c[34]^c[35]^c[33]^c[37]^c[39]^c[37]^c[43]^c[41]^c[42]^c[44]^c[46]^c[44]^c[49]^c[48]^c[48]^c[50]^c[55]^c[52]^c[53]^c[59]^c[59]^c[57]^c[61]^c[62]^c[63]^c[65]^c[64]^c[66]^c[67]^c[69]^c[71]^c[70]^c[72]^c[75]^c[74]^c[77]^c[77]^c[77]^c[81]^c[83]^c[82]^c[85]^c[86]^c[86]^c[86]; //row: 6 d[i2+6*Zc]=c[2]^c[25]^c[43]^c[46]^c[55]^c[70]^c[72]^c[82]; //row: 7 d[i2+7*Zc]=c[3]^c[7]^c[18]^c[30]^c[34]^c[59]; //row: 8 d[i2+8*Zc]=c[2]^c[0]^c[2]^c[0]^c[2]^c[3]^c[0]^c[1]^c[2]^c[3]^c[3]^c[5]^c[7]^c[7]^c[4]^c[5]^c[5]^c[6]^c[7]^c[7]^c[10]^c[8]^c[11]^c[9]^c[9]^c[10]^c[11]^c[15]^c[13]^c[13]^c[15]^c[12]^c[13]^c[14]^c[14]^c[16]^c[18]^c[19]^c[16]^c[17]^c[16]^c[17]^c[18]^c[20]^c[22]^c[23]^c[21]^c[21]^c[22]^c[23]^c[26]^c[24]^c[25]^c[26]^c[27]^c[26]^c[27]^c[24]^c[30]^c[28]^c[29]^c[30]^c[31]^c[31]^c[28]^c[29]^c[32]^c[34]^c[33]^c[34]^c[35]^c[35]^c[32]^c[33]^c[39]^c[37]^c[37]^c[39]^c[39]^c[36]^c[37]^c[41]^c[43]^c[43]^c[40]^c[41]^c[40]^c[41]^c[42]^c[46]^c[44]^c[44]^c[46]^c[46]^c[47]^c[44]^c[51]^c[49]^c[50]^c[48]^c[50]^c[51]^c[48]^c[50]^c[53]^c[55]^c[54]^c[55]^c[52]^c[55]^c[52]^c[53]^c[57]^c[59]^c[57]^c[58]^c[59]^c[59]^c[56]^c[57]^c[63]^c[61]^c[60]^c[62]^c[61]^c[62]^c[63]^c[67]^c[65]^c[66]^c[64]^c[64]^c[65]^c[66]^c[65]^c[71]^c[69]^c[69]^c[70]^c[71]^c[68]^c[69]^c[70]^c[74]^c[72]^c[73]^c[74]^c[75]^c[72]^c[73]^c[74]^c[79]^c[77]^c[79]^c[77]^c[79]^c[76]^c[77]^c[79]^c[83]^c[81]^c[81]^c[82]^c[83]^c[80]^c[81]^c[82]^c[87]^c[85]^c[84]^c[86]^c[84]^c[85]^c[86]^c[84]; //row: 9 d[i2+9*Zc]=c[2]^c[5]^c[40]^c[44]^c[53]^c[69]^c[72]^c[83]; //row: 10 d[i2+10*Zc]=c[5]^c[8]^c[18]^c[31]^c[32]^c[57]; //row: 11 d[i2+11*Zc]=c[1]^c[3]^c[0]^c[1]^c[0]^c[1]^c[0]^c[0]^c[3]^c[0]^c[4]^c[6]^c[7]^c[6]^c[5]^c[4]^c[7]^c[4]^c[9]^c[11]^c[8]^c[10]^c[9]^c[8]^c[11]^c[14]^c[12]^c[13]^c[12]^c[15]^c[15]^c[14]^c[19]^c[18]^c[18]^c[17]^c[19]^c[18]^c[23]^c[21]^c[22]^c[22]^c[21]^c[20]^c[23]^c[25]^c[27]^c[24]^c[24]^c[27]^c[25]^c[24]^c[29]^c[28]^c[28]^c[31]^c[30]^c[29]^c[35]^c[34]^c[32]^c[35]^c[34]^c[33]^c[38]^c[36]^c[37]^c[36]^c[39]^c[38]^c[37]^c[40]^c[42]^c[43]^c[42]^c[41]^c[43]^c[42]^c[45]^c[47]^c[44]^c[47]^c[46]^c[45]^c[44]^c[50]^c[48]^c[49]^c[49]^c[48]^c[49]^c[48]^c[50]^c[52]^c[54]^c[55]^c[53]^c[52]^c[54]^c[53]^c[56]^c[59]^c[56]^c[59]^c[58]^c[57]^c[62]^c[60]^c[61]^c[63]^c[62]^c[60]^c[63]^c[66]^c[64]^c[65]^c[65]^c[64]^c[67]^c[66]^c[65]^c[70]^c[69]^c[68]^c[71]^c[71]^c[70]^c[73]^c[75]^c[72]^c[72]^c[75]^c[75]^c[74]^c[78]^c[76]^c[77]^c[78]^c[77]^c[78]^c[77]^c[82]^c[80]^c[81]^c[80]^c[83]^c[83]^c[82]^c[86]^c[84]^c[85]^c[87]^c[86]^c[87]^c[86]^c[85]; //row: 12 d[i2+12*Zc]=c[3]^c[5]^c[40]^c[47]^c[53]^c[74]; //row: 13 d[i2+13*Zc]=c[3]^c[0]^c[0]^c[0]^c[3]^c[0]^c[6]^c[7]^c[5]^c[7]^c[11]^c[8]^c[9]^c[11]^c[12]^c[13]^c[15]^c[14]^c[15]^c[18]^c[17]^c[18]^c[21]^c[22]^c[21]^c[23]^c[27]^c[24]^c[27]^c[24]^c[28]^c[31]^c[29]^c[30]^c[34]^c[35]^c[33]^c[36]^c[37]^c[39]^c[37]^c[42]^c[43]^c[41]^c[42]^c[47]^c[44]^c[46]^c[44]^c[48]^c[49]^c[48]^c[48]^c[54]^c[55]^c[52]^c[53]^c[59]^c[59]^c[57]^c[60]^c[61]^c[62]^c[63]^c[64]^c[65]^c[64]^c[66]^c[69]^c[71]^c[70]^c[75]^c[72]^c[75]^c[74]^c[76]^c[77]^c[77]^c[77]^c[80]^c[81]^c[83]^c[82]^c[80]^c[84]^c[85]^c[86]^c[86]; //row: 14 d[i2+14*Zc]=c[1]^c[50]^c[61]^c[66]^c[71]^c[84]; //row: 15 d[i2+15*Zc]=c[1]^c[1]^c[1]^c[3]^c[0]^c[3]^c[4]^c[6]^c[7]^c[4]^c[7]^c[9]^c[10]^c[8]^c[14]^c[12]^c[14]^c[15]^c[19]^c[18]^c[18]^c[19]^c[23]^c[22]^c[20]^c[25]^c[24]^c[24]^c[25]^c[29]^c[28]^c[29]^c[30]^c[35]^c[32]^c[33]^c[34]^c[38]^c[36]^c[38]^c[40]^c[42]^c[42]^c[43]^c[40]^c[45]^c[47]^c[44]^c[45]^c[50]^c[49]^c[48]^c[49]^c[52]^c[53]^c[53]^c[54]^c[54]^c[56]^c[56]^c[57]^c[58]^c[62]^c[63]^c[60]^c[66]^c[65]^c[66]^c[67]^c[70]^c[68]^c[70]^c[71]^c[73]^c[72]^c[74]^c[75]^c[74]^c[78]^c[78]^c[78]^c[82]^c[80]^c[82]^c[83]^c[86]^c[87]^c[86]^c[87]; //row: 16 d[i2+16*Zc]=c[3]^c[3]^c[3]^c[2]^c[6]^c[4]^c[6]^c[7]^c[11]^c[8]^c[10]^c[12]^c[14]^c[13]^c[12]^c[17]^c[16]^c[17]^c[21]^c[20]^c[22]^c[27]^c[26]^c[27]^c[31]^c[30]^c[28]^c[33]^c[34]^c[32]^c[36]^c[38]^c[36]^c[42]^c[40]^c[41]^c[47]^c[45]^c[47]^c[44]^c[48]^c[51]^c[51]^c[54]^c[55]^c[52]^c[58]^c[58]^c[56]^c[60]^c[61]^c[62]^c[64]^c[67]^c[65]^c[68]^c[70]^c[69]^c[75]^c[74]^c[73]^c[76]^c[76]^c[76]^c[80]^c[82]^c[81]^c[82]^c[84]^c[85]^c[85]; //row: 17 d[i2+17*Zc]=c[2]^c[59]^c[66]^c[68]^c[87]; //row: 18 d[i2+18*Zc]=c[5]^c[48]^c[55]^c[74]^c[78]; //row: 19 d[i2+19*Zc]=c[3]^c[4]^c[31]^c[34]^c[43]; //row: 20 d[i2+20*Zc]=c[1]^c[1]^c[1]^c[0]^c[2]^c[4]^c[6]^c[4]^c[9]^c[10]^c[8]^c[14]^c[12]^c[15]^c[13]^c[19]^c[18]^c[19]^c[23]^c[22]^c[20]^c[25]^c[24]^c[25]^c[29]^c[28]^c[30]^c[35]^c[32]^c[34]^c[38]^c[36]^c[38]^c[36]^c[40]^c[42]^c[43]^c[45]^c[47]^c[45]^c[46]^c[50]^c[49]^c[49]^c[52]^c[53]^c[54]^c[56]^c[56]^c[58]^c[62]^c[63]^c[60]^c[66]^c[65]^c[67]^c[70]^c[68]^c[71]^c[73]^c[72]^c[75]^c[78]^c[78]^c[78]^c[82]^c[80]^c[83]^c[86]^c[87]^c[87]; //row: 21 d[i2+21*Zc]=c[4]^c[20]^c[64]^c[82]^c[86]; //row: 22 d[i2+22*Zc]=c[3]^c[49]^c[55]^c[69]; //row: 23 d[i2+23*Zc]=c[7]^c[10]^c[41]^c[75]; //row: 24 d[i2+24*Zc]=c[3]^c[3]^c[3]^c[2]^c[3]^c[6]^c[4]^c[6]^c[11]^c[8]^c[10]^c[12]^c[14]^c[13]^c[13]^c[17]^c[16]^c[17]^c[19]^c[21]^c[20]^c[22]^c[27]^c[26]^c[27]^c[31]^c[30]^c[28]^c[33]^c[34]^c[32]^c[36]^c[38]^c[36]^c[42]^c[40]^c[41]^c[47]^c[45]^c[47]^c[47]^c[48]^c[51]^c[51]^c[54]^c[55]^c[52]^c[58]^c[58]^c[56]^c[60]^c[61]^c[62]^c[64]^c[67]^c[65]^c[68]^c[70]^c[69]^c[75]^c[74]^c[73]^c[76]^c[76]^c[76]^c[80]^c[82]^c[81]^c[84]^c[85]^c[85]; //row: 25 d[i2+25*Zc]=c[6]^c[27]^c[31]^c[57]; //row: 26 d[i2+26*Zc]=c[2]^c[10]^c[18]^c[60]; //row: 27 d[i2+27*Zc]=c[4]^c[27]^c[33]; //row: 28 d[i2+28*Zc]=c[3]^c[16]^c[76]^c[86]; //row: 29 d[i2+29*Zc]=c[0]^c[0]^c[0]^c[2]^c[3]^c[7]^c[5]^c[6]^c[7]^c[5]^c[8]^c[9]^c[11]^c[13]^c[15]^c[13]^c[14]^c[18]^c[17]^c[17]^c[18]^c[22]^c[21]^c[23]^c[24]^c[27]^c[27]^c[24]^c[28]^c[31]^c[28]^c[29]^c[34]^c[35]^c[32]^c[33]^c[37]^c[39]^c[37]^c[43]^c[41]^c[41]^c[42]^c[44]^c[46]^c[47]^c[44]^c[49]^c[48]^c[51]^c[48]^c[55]^c[52]^c[52]^c[53]^c[59]^c[59]^c[56]^c[57]^c[59]^c[61]^c[62]^c[63]^c[65]^c[64]^c[65]^c[66]^c[69]^c[71]^c[69]^c[70]^c[72]^c[75]^c[73]^c[74]^c[75]^c[77]^c[77]^c[77]^c[81]^c[83]^c[81]^c[82]^c[85]^c[86]^c[85]^c[86]; //row: 30 d[i2+30*Zc]=c[3]^c[3]^c[2]^c[3]^c[1]^c[2]^c[3]^c[6]^c[7]^c[4]^c[5]^c[6]^c[11]^c[8]^c[9]^c[10]^c[12]^c[14]^c[12]^c[13]^c[17]^c[19]^c[16]^c[16]^c[17]^c[21]^c[20]^c[21]^c[22]^c[27]^c[25]^c[26]^c[26]^c[27]^c[31]^c[29]^c[30]^c[31]^c[28]^c[33]^c[33]^c[34]^c[35]^c[32]^c[36]^c[38]^c[39]^c[36]^c[42]^c[43]^c[40]^c[40]^c[41]^c[40]^c[47]^c[45]^c[46]^c[47]^c[48]^c[51]^c[50]^c[51]^c[54]^c[54]^c[55]^c[55]^c[52]^c[55]^c[58]^c[57]^c[58]^c[59]^c[56]^c[60]^c[61]^c[61]^c[62]^c[64]^c[67]^c[64]^c[65]^c[68]^c[69]^c[70]^c[68]^c[69]^c[75]^c[73]^c[74]^c[72]^c[73]^c[76]^c[76]^c[79]^c[76]^c[80]^c[81]^c[82]^c[80]^c[81]^c[84]^c[85]^c[84]^c[85]; //row: 31 d[i2+31*Zc]=c[1]^c[3]^c[1]^c[3]^c[1]^c[3]^c[0]^c[1]^c[2]^c[4]^c[6]^c[6]^c[4]^c[4]^c[5]^c[6]^c[6]^c[9]^c[11]^c[10]^c[8]^c[8]^c[10]^c[14]^c[12]^c[12]^c[14]^c[15]^c[12]^c[13]^c[19]^c[17]^c[18]^c[16]^c[19]^c[16]^c[17]^c[23]^c[21]^c[22]^c[20]^c[20]^c[22]^c[25]^c[27]^c[24]^c[26]^c[25]^c[26]^c[27]^c[29]^c[31]^c[28]^c[30]^c[30]^c[31]^c[28]^c[28]^c[35]^c[33]^c[32]^c[34]^c[34]^c[35]^c[32]^c[38]^c[36]^c[36]^c[38]^c[38]^c[36]^c[40]^c[42]^c[42]^c[40]^c[43]^c[40]^c[41]^c[45]^c[47]^c[47]^c[45]^c[45]^c[46]^c[47]^c[50]^c[48]^c[49]^c[51]^c[49]^c[50]^c[51]^c[52]^c[54]^c[53]^c[55]^c[54]^c[55]^c[52]^c[56]^c[58]^c[56]^c[58]^c[58]^c[59]^c[56]^c[62]^c[60]^c[63]^c[61]^c[60]^c[62]^c[66]^c[64]^c[65]^c[67]^c[67]^c[64]^c[65]^c[70]^c[68]^c[68]^c[70]^c[71]^c[68]^c[69]^c[73]^c[75]^c[72]^c[74]^c[75]^c[72]^c[73]^c[78]^c[76]^c[78]^c[76]^c[78]^c[76]^c[82]^c[80]^c[80]^c[82]^c[83]^c[80]^c[81]^c[86]^c[84]^c[87]^c[85]^c[87]^c[84]^c[85]; //row: 32 d[i2+32*Zc]=c[3]^c[3]^c[2]^c[3]^c[1]^c[2]^c[0]^c[6]^c[7]^c[4]^c[5]^c[6]^c[11]^c[8]^c[9]^c[10]^c[12]^c[14]^c[12]^c[13]^c[17]^c[19]^c[16]^c[16]^c[17]^c[21]^c[20]^c[21]^c[22]^c[27]^c[25]^c[26]^c[26]^c[27]^c[31]^c[29]^c[30]^c[31]^c[28]^c[33]^c[33]^c[34]^c[35]^c[32]^c[36]^c[38]^c[39]^c[36]^c[42]^c[43]^c[40]^c[40]^c[41]^c[47]^c[45]^c[46]^c[47]^c[48]^c[51]^c[50]^c[51]^c[51]^c[54]^c[54]^c[55]^c[55]^c[52]^c[58]^c[57]^c[58]^c[59]^c[56]^c[58]^c[60]^c[61]^c[61]^c[62]^c[64]^c[67]^c[64]^c[65]^c[68]^c[69]^c[70]^c[68]^c[69]^c[75]^c[73]^c[74]^c[72]^c[73]^c[76]^c[76]^c[79]^c[76]^c[80]^c[81]^c[82]^c[80]^c[81]^c[84]^c[85]^c[84]^c[85]; //row: 33 d[i2+33*Zc]=c[5]^c[10]^c[44]^c[86]; //row: 34 d[i2+34*Zc]=c[2]^c[30]^c[63]^c[70]; //row: 35 d[i2+35*Zc]=c[0]^c[0]^c[0]^c[3]^c[7]^c[5]^c[7]^c[4]^c[8]^c[9]^c[11]^c[13]^c[15]^c[14]^c[18]^c[17]^c[18]^c[22]^c[21]^c[23]^c[24]^c[27]^c[24]^c[24]^c[28]^c[31]^c[29]^c[34]^c[35]^c[33]^c[37]^c[39]^c[37]^c[43]^c[41]^c[42]^c[44]^c[46]^c[44]^c[49]^c[48]^c[48]^c[50]^c[55]^c[52]^c[53]^c[59]^c[59]^c[57]^c[61]^c[62]^c[63]^c[65]^c[64]^c[66]^c[69]^c[71]^c[70]^c[72]^c[75]^c[74]^c[77]^c[77]^c[77]^c[81]^c[83]^c[82]^c[85]^c[86]^c[86]; //row: 36 d[i2+36*Zc]=c[0]^c[56]^c[62]^c[75]; //row: 37 d[i2+37*Zc]=c[3]^c[0]^c[0]^c[0]^c[3]^c[6]^c[7]^c[5]^c[7]^c[5]^c[11]^c[8]^c[9]^c[11]^c[12]^c[13]^c[15]^c[14]^c[18]^c[17]^c[18]^c[21]^c[22]^c[21]^c[23]^c[27]^c[24]^c[27]^c[24]^c[28]^c[31]^c[29]^c[34]^c[35]^c[33]^c[36]^c[37]^c[39]^c[37]^c[42]^c[43]^c[41]^c[42]^c[47]^c[44]^c[46]^c[44]^c[48]^c[49]^c[48]^c[48]^c[54]^c[55]^c[52]^c[53]^c[55]^c[59]^c[59]^c[57]^c[60]^c[61]^c[62]^c[63]^c[64]^c[65]^c[64]^c[66]^c[69]^c[71]^c[70]^c[75]^c[72]^c[75]^c[74]^c[76]^c[77]^c[77]^c[77]^c[80]^c[81]^c[83]^c[82]^c[84]^c[85]^c[86]^c[86]; //row: 38 d[i2+38*Zc]=c[2]^c[38]^c[40]^c[50]; //row: 39 d[i2+39*Zc]=c[4]^c[14]^c[28]^c[79]; //row: 40 d[i2+40*Zc]=c[0]^c[32]^c[68]; //row: 41 d[i2+41*Zc]=c[6]^c[12]^c[38]^c[74]; //row: 42 d[i2+42*Zc]=c[3]^c[3]^c[2]^c[3]^c[1]^c[2]^c[0]^c[6]^c[7]^c[4]^c[5]^c[6]^c[11]^c[8]^c[9]^c[10]^c[12]^c[14]^c[12]^c[13]^c[17]^c[19]^c[16]^c[16]^c[17]^c[16]^c[21]^c[20]^c[21]^c[22]^c[27]^c[25]^c[26]^c[26]^c[27]^c[31]^c[29]^c[30]^c[31]^c[28]^c[33]^c[33]^c[34]^c[35]^c[32]^c[36]^c[38]^c[39]^c[36]^c[42]^c[43]^c[40]^c[40]^c[41]^c[47]^c[45]^c[46]^c[47]^c[48]^c[51]^c[50]^c[51]^c[54]^c[54]^c[55]^c[55]^c[52]^c[58]^c[57]^c[58]^c[59]^c[56]^c[60]^c[61]^c[61]^c[62]^c[64]^c[67]^c[64]^c[65]^c[68]^c[69]^c[70]^c[68]^c[69]^c[75]^c[73]^c[74]^c[72]^c[73]^c[76]^c[76]^c[79]^c[76]^c[80]^c[81]^c[82]^c[80]^c[81]^c[84]^c[85]^c[84]^c[85]; //row: 43 d[i2+43*Zc]=c[1]^c[1]^c[1]^c[3]^c[0]^c[4]^c[6]^c[7]^c[4]^c[6]^c[9]^c[10]^c[8]^c[14]^c[12]^c[14]^c[15]^c[19]^c[18]^c[18]^c[19]^c[23]^c[22]^c[20]^c[25]^c[24]^c[24]^c[25]^c[29]^c[28]^c[29]^c[30]^c[35]^c[32]^c[33]^c[34]^c[38]^c[36]^c[38]^c[40]^c[42]^c[42]^c[43]^c[45]^c[47]^c[44]^c[45]^c[50]^c[49]^c[48]^c[49]^c[52]^c[53]^c[53]^c[54]^c[56]^c[56]^c[57]^c[58]^c[62]^c[63]^c[60]^c[66]^c[65]^c[66]^c[67]^c[66]^c[70]^c[68]^c[70]^c[71]^c[73]^c[72]^c[74]^c[75]^c[72]^c[78]^c[78]^c[78]^c[82]^c[80]^c[82]^c[83]^c[86]^c[87]^c[86]^c[87]; //row: 44 d[i2+44*Zc]=c[2]^c[2]^c[2]^c[1]^c[2]^c[5]^c[7]^c[5]^c[10]^c[11]^c[9]^c[15]^c[13]^c[12]^c[16]^c[19]^c[16]^c[20]^c[23]^c[21]^c[26]^c[25]^c[26]^c[30]^c[29]^c[31]^c[28]^c[32]^c[33]^c[35]^c[39]^c[37]^c[39]^c[38]^c[41]^c[43]^c[40]^c[46]^c[44]^c[46]^c[51]^c[50]^c[50]^c[53]^c[54]^c[55]^c[57]^c[57]^c[59]^c[63]^c[60]^c[61]^c[67]^c[66]^c[64]^c[71]^c[69]^c[68]^c[74]^c[73]^c[72]^c[79]^c[79]^c[79]^c[83]^c[81]^c[80]^c[87]^c[84]^c[84]; //row: 45 d[i2+45*Zc]=c[4]^c[26]^c[42]; } break; case 5: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[2]^c[2]^c[2]^c[4]^c[9]^c[6]^c[7]^c[12]^c[13]^c[14]^c[18]^c[16]^c[19]^c[20]^c[24]^c[21]^c[29]^c[25]^c[27]^c[33]^c[31]^c[30]^c[37]^c[36]^c[39]^c[43]^c[44]^c[43]^c[49]^c[49]^c[45]^c[51]^c[50]^c[50]^c[59]^c[58]^c[57]^c[63]^c[64]^c[62]^c[67]^c[69]^c[68]^c[70]^c[72]^c[72]^c[77]^c[75]^c[75]^c[84]^c[81]^c[83]^c[87]^c[88]^c[87]^c[92]^c[90]^c[91]^c[95]^c[99]^c[99]^c[103]^c[100]^c[103]^c[106]^c[105]^c[107]; //row: 1 d[i2+1*Zc]=c[2]^c[3]^c[3]^c[3]^c[0]^c[9]^c[5]^c[7]^c[8]^c[12]^c[13]^c[14]^c[10]^c[18]^c[19]^c[17]^c[15]^c[21]^c[20]^c[22]^c[29]^c[25]^c[26]^c[28]^c[33]^c[34]^c[32]^c[31]^c[38]^c[37]^c[35]^c[44]^c[40]^c[44]^c[49]^c[45]^c[45]^c[46]^c[51]^c[52]^c[51]^c[51]^c[59]^c[55]^c[59]^c[58]^c[63]^c[64]^c[60]^c[63]^c[67]^c[68]^c[65]^c[69]^c[71]^c[73]^c[73]^c[77]^c[78]^c[76]^c[76]^c[84]^c[80]^c[82]^c[84]^c[88]^c[89]^c[88]^c[92]^c[93]^c[91]^c[92]^c[95]^c[96]^c[95]^c[95]^c[103]^c[104]^c[101]^c[104]^c[106]^c[107]^c[106]^c[108]; //row: 2 d[i2+2*Zc]=c[3]^c[3]^c[2]^c[3]^c[4]^c[0]^c[5]^c[6]^c[7]^c[7]^c[8]^c[13]^c[14]^c[14]^c[10]^c[19]^c[17]^c[19]^c[15]^c[21]^c[24]^c[20]^c[21]^c[22]^c[25]^c[26]^c[27]^c[28]^c[34]^c[31]^c[32]^c[30]^c[31]^c[38]^c[36]^c[37]^c[39]^c[35]^c[44]^c[44]^c[40]^c[43]^c[44]^c[45]^c[45]^c[45]^c[46]^c[52]^c[50]^c[51]^c[50]^c[51]^c[55]^c[59]^c[57]^c[58]^c[64]^c[60]^c[62]^c[63]^c[68]^c[69]^c[65]^c[68]^c[69]^c[71]^c[72]^c[73]^c[72]^c[73]^c[78]^c[76]^c[75]^c[76]^c[80]^c[82]^c[83]^c[84]^c[88]^c[88]^c[89]^c[87]^c[88]^c[93]^c[90]^c[91]^c[91]^c[92]^c[96]^c[95]^c[99]^c[95]^c[104]^c[100]^c[101]^c[103]^c[104]^c[107]^c[106]^c[107]^c[108]; //row: 3 d[i2+3*Zc]=c[3]^c[3]^c[3]^c[4]^c[0]^c[5]^c[7]^c[7]^c[8]^c[13]^c[14]^c[10]^c[19]^c[17]^c[19]^c[15]^c[21]^c[20]^c[21]^c[22]^c[25]^c[26]^c[28]^c[34]^c[32]^c[30]^c[31]^c[38]^c[37]^c[39]^c[35]^c[44]^c[40]^c[43]^c[44]^c[45]^c[45]^c[46]^c[52]^c[51]^c[50]^c[51]^c[55]^c[59]^c[57]^c[58]^c[64]^c[60]^c[62]^c[63]^c[68]^c[65]^c[68]^c[69]^c[71]^c[73]^c[72]^c[73]^c[78]^c[76]^c[76]^c[80]^c[82]^c[83]^c[84]^c[88]^c[89]^c[87]^c[88]^c[93]^c[91]^c[91]^c[92]^c[96]^c[95]^c[95]^c[104]^c[101]^c[103]^c[104]^c[107]^c[106]^c[107]^c[108]; //row: 4 d[i2+4*Zc]=c[2]^c[9]; //row: 5 d[i2+5*Zc]=c[1]^c[1]^c[1]^c[3]^c[2]^c[8]^c[5]^c[6]^c[6]^c[11]^c[12]^c[13]^c[17]^c[15]^c[18]^c[19]^c[24]^c[23]^c[20]^c[28]^c[29]^c[26]^c[32]^c[30]^c[34]^c[36]^c[35]^c[38]^c[42]^c[43]^c[42]^c[48]^c[48]^c[49]^c[50]^c[54]^c[54]^c[58]^c[57]^c[56]^c[62]^c[63]^c[61]^c[62]^c[66]^c[68]^c[67]^c[74]^c[71]^c[71]^c[76]^c[79]^c[79]^c[83]^c[80]^c[82]^c[80]^c[86]^c[87]^c[86]^c[91]^c[94]^c[90]^c[99]^c[98]^c[98]^c[102]^c[104]^c[102]^c[105]^c[109]^c[106]^c[106]; //row: 6 d[i2+6*Zc]=c[3]^c[30]^c[52]^c[57]^c[66]^c[86]^c[92]^c[104]; //row: 7 d[i2+7*Zc]=c[1]^c[7]^c[21]^c[39]^c[44]^c[70]; //row: 8 d[i2+8*Zc]=c[2]^c[2]^c[2]^c[2]^c[2]^c[1]^c[2]^c[4]^c[3]^c[4]^c[4]^c[9]^c[9]^c[6]^c[5]^c[6]^c[7]^c[6]^c[7]^c[7]^c[12]^c[12]^c[13]^c[13]^c[14]^c[13]^c[14]^c[18]^c[18]^c[16]^c[16]^c[19]^c[18]^c[19]^c[19]^c[20]^c[20]^c[24]^c[23]^c[24]^c[21]^c[20]^c[21]^c[29]^c[29]^c[25]^c[25]^c[27]^c[26]^c[27]^c[33]^c[33]^c[31]^c[30]^c[31]^c[30]^c[34]^c[30]^c[37]^c[37]^c[36]^c[35]^c[36]^c[39]^c[38]^c[39]^c[43]^c[43]^c[44]^c[43]^c[44]^c[43]^c[42]^c[43]^c[49]^c[49]^c[49]^c[49]^c[45]^c[49]^c[45]^c[51]^c[51]^c[50]^c[54]^c[50]^c[50]^c[54]^c[50]^c[59]^c[59]^c[58]^c[58]^c[57]^c[56]^c[57]^c[63]^c[63]^c[64]^c[64]^c[62]^c[61]^c[62]^c[60]^c[67]^c[67]^c[69]^c[68]^c[69]^c[68]^c[67]^c[68]^c[70]^c[70]^c[72]^c[71]^c[72]^c[72]^c[71]^c[72]^c[77]^c[77]^c[75]^c[75]^c[75]^c[79]^c[75]^c[84]^c[84]^c[81]^c[81]^c[83]^c[82]^c[83]^c[80]^c[87]^c[87]^c[88]^c[87]^c[88]^c[87]^c[86]^c[87]^c[92]^c[92]^c[90]^c[94]^c[90]^c[91]^c[90]^c[91]^c[95]^c[95]^c[99]^c[99]^c[99]^c[98]^c[99]^c[99]^c[103]^c[103]^c[100]^c[104]^c[100]^c[103]^c[102]^c[103]^c[106]^c[106]^c[105]^c[105]^c[107]^c[106]^c[107]^c[108]; //row: 9 d[i2+9*Zc]=c[3]^c[8]^c[50]^c[55]^c[65]^c[86]^c[94]^c[103]; //row: 10 d[i2+10*Zc]=c[8]^c[14]^c[20]^c[39]^c[40]^c[70]; //row: 11 d[i2+11*Zc]=c[0]^c[2]^c[3]^c[0]^c[3]^c[0]^c[3]^c[2]^c[0]^c[0]^c[7]^c[9]^c[5]^c[9]^c[7]^c[5]^c[8]^c[6]^c[10]^c[12]^c[13]^c[11]^c[14]^c[12]^c[10]^c[16]^c[18]^c[19]^c[19]^c[17]^c[17]^c[15]^c[23]^c[21]^c[22]^c[20]^c[24]^c[22]^c[27]^c[29]^c[25]^c[28]^c[26]^c[25]^c[28]^c[31]^c[33]^c[34]^c[34]^c[32]^c[33]^c[31]^c[35]^c[38]^c[39]^c[37]^c[37]^c[35]^c[41]^c[44]^c[42]^c[40]^c[41]^c[44]^c[47]^c[49]^c[45]^c[47]^c[45]^c[48]^c[46]^c[54]^c[51]^c[52]^c[53]^c[51]^c[53]^c[51]^c[57]^c[59]^c[55]^c[56]^c[59]^c[55]^c[58]^c[61]^c[63]^c[64]^c[62]^c[60]^c[60]^c[63]^c[64]^c[65]^c[67]^c[68]^c[67]^c[65]^c[66]^c[69]^c[73]^c[71]^c[70]^c[73]^c[70]^c[73]^c[75]^c[77]^c[78]^c[78]^c[76]^c[78]^c[76]^c[82]^c[84]^c[80]^c[84]^c[82]^c[81]^c[84]^c[83]^c[85]^c[88]^c[86]^c[89]^c[85]^c[88]^c[90]^c[92]^c[93]^c[93]^c[91]^c[94]^c[92]^c[98]^c[95]^c[96]^c[97]^c[95]^c[97]^c[95]^c[101]^c[103]^c[104]^c[103]^c[101]^c[101]^c[104]^c[109]^c[106]^c[107]^c[108]^c[106]^c[105]^c[108]^c[106]; //row: 12 d[i2+12*Zc]=c[3]^c[9]^c[53]^c[57]^c[69]^c[91]; //row: 13 d[i2+13*Zc]=c[4]^c[0]^c[0]^c[0]^c[2]^c[3]^c[6]^c[7]^c[9]^c[5]^c[14]^c[10]^c[11]^c[12]^c[15]^c[16]^c[19]^c[17]^c[16]^c[23]^c[22]^c[24]^c[26]^c[27]^c[28]^c[25]^c[30]^c[31]^c[34]^c[33]^c[35]^c[39]^c[37]^c[37]^c[41]^c[42]^c[41]^c[46]^c[47]^c[47]^c[48]^c[53]^c[54]^c[53]^c[53]^c[56]^c[57]^c[56]^c[55]^c[60]^c[61]^c[62]^c[60]^c[69]^c[65]^c[67]^c[66]^c[73]^c[70]^c[70]^c[79]^c[75]^c[78]^c[78]^c[81]^c[82]^c[84]^c[81]^c[85]^c[86]^c[85]^c[94]^c[90]^c[93]^c[94]^c[97]^c[98]^c[97]^c[97]^c[100]^c[101]^c[103]^c[101]^c[104]^c[108]^c[109]^c[108]^c[105]; //row: 14 d[i2+14*Zc]=c[2]^c[63]^c[78]^c[80]^c[88]^c[107]; //row: 15 d[i2+15*Zc]=c[4]^c[4]^c[4]^c[0]^c[1]^c[3]^c[6]^c[8]^c[8]^c[9]^c[9]^c[14]^c[10]^c[11]^c[15]^c[18]^c[15]^c[16]^c[22]^c[21]^c[22]^c[23]^c[26]^c[27]^c[29]^c[30]^c[33]^c[31]^c[32]^c[39]^c[38]^c[35]^c[36]^c[40]^c[41]^c[44]^c[40]^c[46]^c[46]^c[47]^c[53]^c[52]^c[51]^c[52]^c[54]^c[56]^c[55]^c[58]^c[59]^c[60]^c[61]^c[63]^c[64]^c[69]^c[66]^c[69]^c[65]^c[69]^c[72]^c[74]^c[73]^c[74]^c[79]^c[77]^c[77]^c[81]^c[83]^c[84]^c[80]^c[89]^c[85]^c[88]^c[89]^c[94]^c[92]^c[92]^c[93]^c[93]^c[97]^c[96]^c[96]^c[100]^c[102]^c[104]^c[100]^c[108]^c[107]^c[108]^c[109]; //row: 16 d[i2+16*Zc]=c[2]^c[2]^c[2]^c[4]^c[9]^c[6]^c[7]^c[8]^c[12]^c[13]^c[14]^c[18]^c[16]^c[19]^c[19]^c[20]^c[24]^c[21]^c[29]^c[25]^c[27]^c[33]^c[31]^c[30]^c[37]^c[36]^c[39]^c[43]^c[44]^c[43]^c[49]^c[49]^c[45]^c[51]^c[50]^c[50]^c[59]^c[58]^c[57]^c[59]^c[63]^c[64]^c[62]^c[67]^c[69]^c[68]^c[70]^c[72]^c[72]^c[77]^c[75]^c[75]^c[84]^c[81]^c[83]^c[87]^c[88]^c[87]^c[92]^c[90]^c[91]^c[95]^c[99]^c[99]^c[103]^c[100]^c[103]^c[104]^c[106]^c[105]^c[107]; //row: 17 d[i2+17*Zc]=c[1]^c[71]^c[82]^c[85]^c[107]; //row: 18 d[i2+18*Zc]=c[9]^c[63]^c[65]^c[90]^c[99]; //row: 19 d[i2+19*Zc]=c[3]^c[5]^c[35]^c[44]^c[50]; //row: 20 d[i2+20*Zc]=c[2]^c[2]^c[2]^c[4]^c[0]^c[9]^c[6]^c[7]^c[12]^c[13]^c[14]^c[18]^c[16]^c[19]^c[16]^c[20]^c[24]^c[21]^c[29]^c[25]^c[27]^c[33]^c[31]^c[30]^c[37]^c[36]^c[39]^c[43]^c[44]^c[43]^c[49]^c[49]^c[45]^c[49]^c[51]^c[50]^c[50]^c[59]^c[58]^c[57]^c[59]^c[63]^c[64]^c[62]^c[67]^c[69]^c[68]^c[70]^c[72]^c[72]^c[77]^c[75]^c[75]^c[84]^c[81]^c[83]^c[87]^c[88]^c[87]^c[92]^c[90]^c[91]^c[95]^c[99]^c[99]^c[103]^c[100]^c[103]^c[106]^c[105]^c[107]; //row: 21 d[i2+21*Zc]=c[8]^c[29]^c[81]^c[102]^c[107]; //row: 22 d[i2+22*Zc]=c[1]^c[64]^c[69]^c[85]; //row: 23 d[i2+23*Zc]=c[8]^c[14]^c[52]^c[94]; //row: 24 d[i2+24*Zc]=c[3]^c[3]^c[3]^c[0]^c[3]^c[5]^c[7]^c[8]^c[13]^c[14]^c[10]^c[19]^c[17]^c[15]^c[19]^c[21]^c[20]^c[22]^c[24]^c[25]^c[26]^c[28]^c[34]^c[32]^c[31]^c[38]^c[37]^c[35]^c[44]^c[40]^c[44]^c[45]^c[45]^c[46]^c[52]^c[51]^c[51]^c[55]^c[59]^c[58]^c[56]^c[64]^c[60]^c[63]^c[68]^c[65]^c[69]^c[71]^c[73]^c[73]^c[78]^c[76]^c[76]^c[80]^c[82]^c[84]^c[88]^c[89]^c[88]^c[93]^c[91]^c[92]^c[96]^c[95]^c[95]^c[104]^c[101]^c[104]^c[107]^c[106]^c[108]; //row: 25 d[i2+25*Zc]=c[6]^c[34]^c[35]^c[70]; //row: 26 d[i2+26*Zc]=c[4]^c[14]^c[22]^c[76]; //row: 27 d[i2+27*Zc]=c[9]^c[33]^c[43]; //row: 28 d[i2+28*Zc]=c[0]^c[22]^c[99]^c[108]; //row: 29 d[i2+29*Zc]=c[2]^c[2]^c[2]^c[3]^c[4]^c[9]^c[6]^c[6]^c[7]^c[6]^c[12]^c[13]^c[14]^c[18]^c[16]^c[18]^c[19]^c[20]^c[24]^c[20]^c[21]^c[29]^c[25]^c[27]^c[33]^c[31]^c[34]^c[30]^c[37]^c[36]^c[38]^c[39]^c[43]^c[44]^c[42]^c[43]^c[49]^c[49]^c[45]^c[51]^c[50]^c[54]^c[50]^c[59]^c[58]^c[56]^c[57]^c[63]^c[64]^c[61]^c[62]^c[67]^c[69]^c[67]^c[68]^c[70]^c[72]^c[71]^c[72]^c[72]^c[77]^c[75]^c[75]^c[84]^c[81]^c[82]^c[83]^c[87]^c[88]^c[86]^c[87]^c[92]^c[90]^c[90]^c[91]^c[91]^c[95]^c[99]^c[99]^c[103]^c[100]^c[102]^c[103]^c[106]^c[105]^c[106]^c[107]; //row: 30 d[i2+30*Zc]=c[3]^c[3]^c[2]^c[3]^c[4]^c[0]^c[0]^c[5]^c[6]^c[7]^c[7]^c[8]^c[13]^c[14]^c[14]^c[10]^c[19]^c[17]^c[19]^c[15]^c[21]^c[24]^c[20]^c[21]^c[22]^c[25]^c[26]^c[27]^c[28]^c[34]^c[31]^c[32]^c[30]^c[31]^c[38]^c[36]^c[37]^c[39]^c[35]^c[44]^c[44]^c[40]^c[43]^c[44]^c[45]^c[45]^c[45]^c[46]^c[52]^c[50]^c[51]^c[50]^c[51]^c[52]^c[55]^c[59]^c[57]^c[58]^c[64]^c[60]^c[62]^c[63]^c[68]^c[69]^c[65]^c[68]^c[69]^c[69]^c[71]^c[72]^c[73]^c[72]^c[73]^c[78]^c[76]^c[75]^c[76]^c[80]^c[82]^c[83]^c[84]^c[88]^c[88]^c[89]^c[87]^c[88]^c[93]^c[90]^c[91]^c[91]^c[92]^c[96]^c[95]^c[99]^c[95]^c[104]^c[100]^c[101]^c[103]^c[104]^c[107]^c[106]^c[107]^c[108]; //row: 31 d[i2+31*Zc]=c[3]^c[0]^c[3]^c[0]^c[3]^c[0]^c[0]^c[1]^c[2]^c[5]^c[7]^c[7]^c[9]^c[8]^c[9]^c[5]^c[6]^c[13]^c[10]^c[14]^c[11]^c[10]^c[12]^c[19]^c[16]^c[17]^c[19]^c[15]^c[16]^c[17]^c[21]^c[23]^c[20]^c[22]^c[22]^c[23]^c[24]^c[25]^c[27]^c[26]^c[28]^c[28]^c[25]^c[34]^c[31]^c[32]^c[34]^c[31]^c[32]^c[33]^c[38]^c[35]^c[37]^c[39]^c[35]^c[36]^c[37]^c[37]^c[44]^c[41]^c[40]^c[42]^c[44]^c[40]^c[41]^c[45]^c[47]^c[45]^c[47]^c[46]^c[48]^c[52]^c[54]^c[51]^c[53]^c[51]^c[52]^c[53]^c[55]^c[57]^c[59]^c[56]^c[58]^c[59]^c[55]^c[64]^c[61]^c[60]^c[62]^c[63]^c[64]^c[60]^c[68]^c[65]^c[65]^c[67]^c[69]^c[65]^c[66]^c[71]^c[73]^c[73]^c[70]^c[73]^c[74]^c[70]^c[78]^c[75]^c[76]^c[78]^c[76]^c[78]^c[80]^c[82]^c[82]^c[84]^c[84]^c[80]^c[81]^c[88]^c[85]^c[89]^c[86]^c[88]^c[89]^c[85]^c[93]^c[90]^c[91]^c[93]^c[92]^c[93]^c[94]^c[96]^c[98]^c[95]^c[97]^c[95]^c[97]^c[104]^c[101]^c[101]^c[103]^c[104]^c[100]^c[101]^c[107]^c[109]^c[106]^c[108]^c[108]^c[109]^c[105]; //row: 32 d[i2+32*Zc]=c[0]^c[0]^c[4]^c[0]^c[1]^c[2]^c[4]^c[7]^c[8]^c[9]^c[9]^c[5]^c[10]^c[11]^c[11]^c[12]^c[16]^c[19]^c[16]^c[17]^c[23]^c[21]^c[22]^c[23]^c[24]^c[27]^c[28]^c[29]^c[25]^c[31]^c[33]^c[34]^c[32]^c[33]^c[35]^c[38]^c[39]^c[36]^c[37]^c[41]^c[41]^c[42]^c[40]^c[41]^c[47]^c[47]^c[47]^c[48]^c[54]^c[52]^c[53]^c[52]^c[53]^c[57]^c[56]^c[59]^c[55]^c[61]^c[62]^c[64]^c[60]^c[61]^c[65]^c[66]^c[67]^c[65]^c[66]^c[73]^c[74]^c[70]^c[74]^c[70]^c[70]^c[75]^c[78]^c[77]^c[78]^c[82]^c[84]^c[80]^c[81]^c[85]^c[85]^c[86]^c[89]^c[85]^c[90]^c[92]^c[93]^c[93]^c[94]^c[98]^c[97]^c[96]^c[97]^c[101]^c[102]^c[103]^c[100]^c[101]^c[109]^c[108]^c[109]^c[105]; //row: 33 d[i2+33*Zc]=c[9]^c[14]^c[59]^c[107]; //row: 34 d[i2+34*Zc]=c[1]^c[35]^c[79]^c[88]; //row: 35 d[i2+35*Zc]=c[2]^c[2]^c[2]^c[4]^c[9]^c[6]^c[7]^c[6]^c[12]^c[13]^c[14]^c[18]^c[16]^c[19]^c[20]^c[24]^c[21]^c[29]^c[25]^c[27]^c[33]^c[31]^c[30]^c[32]^c[37]^c[36]^c[39]^c[43]^c[44]^c[43]^c[49]^c[49]^c[45]^c[51]^c[50]^c[50]^c[59]^c[58]^c[57]^c[63]^c[64]^c[62]^c[64]^c[67]^c[69]^c[68]^c[70]^c[72]^c[72]^c[77]^c[75]^c[75]^c[84]^c[81]^c[83]^c[87]^c[88]^c[87]^c[92]^c[90]^c[91]^c[95]^c[99]^c[99]^c[103]^c[100]^c[103]^c[106]^c[105]^c[107]; //row: 36 d[i2+36*Zc]=c[3]^c[73]^c[77]^c[94]; //row: 37 d[i2+37*Zc]=c[2]^c[3]^c[3]^c[3]^c[0]^c[9]^c[5]^c[7]^c[8]^c[7]^c[12]^c[13]^c[14]^c[10]^c[18]^c[19]^c[17]^c[15]^c[21]^c[20]^c[22]^c[29]^c[25]^c[26]^c[28]^c[33]^c[34]^c[32]^c[31]^c[38]^c[37]^c[35]^c[44]^c[40]^c[44]^c[49]^c[45]^c[45]^c[46]^c[51]^c[52]^c[51]^c[51]^c[59]^c[55]^c[59]^c[58]^c[63]^c[64]^c[60]^c[63]^c[67]^c[68]^c[65]^c[69]^c[69]^c[71]^c[73]^c[73]^c[77]^c[78]^c[76]^c[76]^c[84]^c[80]^c[82]^c[84]^c[88]^c[89]^c[88]^c[92]^c[93]^c[91]^c[92]^c[95]^c[96]^c[95]^c[95]^c[103]^c[104]^c[101]^c[104]^c[106]^c[107]^c[106]^c[108]; //row: 38 d[i2+38*Zc]=c[0]^c[48]^c[53]^c[60]; //row: 39 d[i2+39*Zc]=c[6]^c[16]^c[36]^c[97]; //row: 40 d[i2+40*Zc]=c[1]^c[44]^c[86]; //row: 41 d[i2+41*Zc]=c[8]^c[16]^c[48]^c[91]; //row: 42 d[i2+42*Zc]=c[4]^c[4]^c[3]^c[4]^c[0]^c[1]^c[0]^c[6]^c[7]^c[8]^c[8]^c[9]^c[14]^c[10]^c[10]^c[11]^c[15]^c[18]^c[15]^c[16]^c[22]^c[20]^c[21]^c[22]^c[23]^c[24]^c[26]^c[27]^c[28]^c[29]^c[30]^c[32]^c[33]^c[31]^c[32]^c[39]^c[37]^c[38]^c[35]^c[36]^c[40]^c[40]^c[41]^c[44]^c[40]^c[46]^c[46]^c[46]^c[47]^c[53]^c[51]^c[52]^c[51]^c[52]^c[56]^c[55]^c[58]^c[59]^c[60]^c[61]^c[63]^c[64]^c[69]^c[65]^c[66]^c[69]^c[65]^c[72]^c[73]^c[74]^c[73]^c[74]^c[79]^c[77]^c[76]^c[77]^c[81]^c[83]^c[84]^c[80]^c[89]^c[89]^c[85]^c[88]^c[89]^c[94]^c[91]^c[92]^c[92]^c[93]^c[97]^c[96]^c[95]^c[96]^c[100]^c[101]^c[102]^c[104]^c[100]^c[108]^c[107]^c[108]^c[109]; //row: 43 d[i2+43*Zc]=c[0]^c[0]^c[0]^c[1]^c[2]^c[7]^c[9]^c[9]^c[5]^c[7]^c[10]^c[11]^c[12]^c[16]^c[19]^c[16]^c[17]^c[23]^c[22]^c[23]^c[24]^c[27]^c[28]^c[25]^c[31]^c[34]^c[32]^c[33]^c[35]^c[39]^c[36]^c[37]^c[41]^c[42]^c[40]^c[41]^c[47]^c[47]^c[48]^c[54]^c[53]^c[52]^c[53]^c[57]^c[56]^c[59]^c[55]^c[61]^c[62]^c[64]^c[60]^c[65]^c[67]^c[65]^c[66]^c[73]^c[70]^c[74]^c[70]^c[75]^c[78]^c[78]^c[82]^c[84]^c[80]^c[81]^c[83]^c[85]^c[86]^c[89]^c[85]^c[90]^c[93]^c[93]^c[94]^c[90]^c[98]^c[97]^c[97]^c[101]^c[103]^c[100]^c[101]^c[109]^c[108]^c[109]^c[105]; //row: 44 d[i2+44*Zc]=c[2]^c[2]^c[2]^c[4]^c[3]^c[9]^c[6]^c[7]^c[12]^c[13]^c[14]^c[18]^c[16]^c[19]^c[20]^c[24]^c[21]^c[29]^c[25]^c[27]^c[33]^c[31]^c[30]^c[37]^c[36]^c[39]^c[36]^c[43]^c[44]^c[43]^c[49]^c[49]^c[45]^c[48]^c[51]^c[50]^c[50]^c[59]^c[58]^c[57]^c[63]^c[64]^c[62]^c[67]^c[69]^c[68]^c[70]^c[72]^c[72]^c[77]^c[75]^c[75]^c[84]^c[81]^c[83]^c[87]^c[88]^c[87]^c[92]^c[90]^c[91]^c[95]^c[99]^c[99]^c[103]^c[100]^c[103]^c[106]^c[105]^c[107]; //row: 45 d[i2+45*Zc]=c[5]^c[32]^c[50]; } break; case 6: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[0]^c[3]^c[0]^c[5]^c[6]^c[9]^c[8]^c[13]^c[15]^c[15]^c[20]^c[18]^c[23]^c[29]^c[25]^c[28]^c[30]^c[35]^c[33]^c[41]^c[40]^c[36]^c[42]^c[44]^c[44]^c[48]^c[51]^c[49]^c[58]^c[57]^c[56]^c[65]^c[62]^c[65]^c[66]^c[66]^c[70]^c[76]^c[77]^c[74]^c[80]^c[79]^c[82]^c[84]^c[87]^c[85]^c[94]^c[92]^c[94]^c[99]^c[101]^c[99]^c[107]^c[106]^c[107]^c[109]^c[113]^c[108]^c[119]^c[114]^c[114]^c[125]^c[120]^c[122]^c[129]^c[129]^c[128]; //row: 1 d[i2+1*Zc]=c[0]^c[1]^c[4]^c[1]^c[0]^c[6]^c[7]^c[10]^c[9]^c[13]^c[14]^c[16]^c[16]^c[20]^c[21]^c[19]^c[18]^c[24]^c[26]^c[29]^c[30]^c[31]^c[30]^c[34]^c[41]^c[36]^c[41]^c[37]^c[43]^c[45]^c[45]^c[49]^c[52]^c[50]^c[58]^c[59]^c[58]^c[57]^c[65]^c[60]^c[63]^c[60]^c[66]^c[67]^c[67]^c[71]^c[76]^c[77]^c[72]^c[75]^c[80]^c[81]^c[80]^c[83]^c[85]^c[88]^c[86]^c[94]^c[95]^c[93]^c[95]^c[99]^c[100]^c[96]^c[100]^c[102]^c[107]^c[102]^c[109]^c[110]^c[108]^c[109]^c[119]^c[114]^c[115]^c[115]^c[125]^c[120]^c[121]^c[123]^c[129]^c[130]^c[130]^c[129]; //row: 2 d[i2+2*Zc]=c[1]^c[4]^c[0]^c[1]^c[5]^c[0]^c[7]^c[9]^c[10]^c[8]^c[9]^c[14]^c[16]^c[15]^c[16]^c[21]^c[19]^c[23]^c[18]^c[24]^c[25]^c[26]^c[28]^c[29]^c[31]^c[30]^c[33]^c[34]^c[36]^c[40]^c[41]^c[36]^c[37]^c[43]^c[44]^c[45]^c[44]^c[45]^c[49]^c[51]^c[52]^c[49]^c[50]^c[59]^c[58]^c[56]^c[57]^c[60]^c[62]^c[63]^c[65]^c[60]^c[67]^c[67]^c[70]^c[71]^c[77]^c[72]^c[74]^c[75]^c[81]^c[79]^c[80]^c[82]^c[83]^c[85]^c[87]^c[88]^c[85]^c[86]^c[95]^c[93]^c[94]^c[95]^c[100]^c[96]^c[99]^c[100]^c[102]^c[106]^c[107]^c[107]^c[102]^c[110]^c[113]^c[108]^c[108]^c[109]^c[114]^c[115]^c[114]^c[115]^c[120]^c[120]^c[121]^c[122]^c[123]^c[130]^c[130]^c[128]^c[129]; //row: 3 d[i2+3*Zc]=c[1]^c[4]^c[1]^c[5]^c[0]^c[7]^c[10]^c[8]^c[9]^c[14]^c[16]^c[16]^c[21]^c[19]^c[23]^c[18]^c[24]^c[26]^c[28]^c[29]^c[31]^c[30]^c[34]^c[36]^c[41]^c[36]^c[37]^c[43]^c[45]^c[44]^c[45]^c[49]^c[52]^c[49]^c[50]^c[59]^c[58]^c[57]^c[60]^c[63]^c[65]^c[60]^c[67]^c[67]^c[70]^c[71]^c[77]^c[72]^c[74]^c[75]^c[81]^c[80]^c[82]^c[83]^c[85]^c[88]^c[85]^c[86]^c[95]^c[93]^c[95]^c[100]^c[96]^c[99]^c[100]^c[102]^c[107]^c[107]^c[102]^c[110]^c[108]^c[108]^c[109]^c[114]^c[115]^c[115]^c[120]^c[121]^c[122]^c[123]^c[130]^c[130]^c[128]^c[129]; //row: 4 d[i2+4*Zc]=c[1]^c[6]; //row: 5 d[i2+5*Zc]=c[1]^c[4]^c[1]^c[0]^c[2]^c[7]^c[10]^c[9]^c[7]^c[14]^c[16]^c[16]^c[21]^c[19]^c[18]^c[18]^c[24]^c[26]^c[29]^c[31]^c[30]^c[34]^c[36]^c[41]^c[37]^c[43]^c[45]^c[45]^c[49]^c[52]^c[50]^c[59]^c[58]^c[57]^c[60]^c[63]^c[60]^c[67]^c[67]^c[71]^c[77]^c[72]^c[75]^c[75]^c[81]^c[80]^c[83]^c[85]^c[88]^c[86]^c[95]^c[93]^c[95]^c[100]^c[96]^c[100]^c[96]^c[102]^c[107]^c[102]^c[110]^c[108]^c[109]^c[114]^c[115]^c[115]^c[120]^c[121]^c[123]^c[130]^c[130]^c[129]^c[128]; //row: 6 d[i2+6*Zc]=c[1]^c[40]^c[60]^c[68]^c[79]^c[102]^c[113]^c[122]; //row: 7 d[i2+7*Zc]=c[2]^c[7]^c[27]^c[44]^c[49]^c[89]; //row: 8 d[i2+8*Zc]=c[1]^c[3]^c[4]^c[0]^c[1]^c[2]^c[3]^c[0]^c[1]^c[2]^c[0]^c[7]^c[9]^c[10]^c[11]^c[6]^c[9]^c[10]^c[11]^c[10]^c[14]^c[16]^c[16]^c[12]^c[16]^c[17]^c[12]^c[21]^c[23]^c[19]^c[21]^c[18]^c[19]^c[20]^c[20]^c[24]^c[26]^c[26]^c[27]^c[28]^c[29]^c[24]^c[25]^c[31]^c[33]^c[30]^c[32]^c[34]^c[35]^c[30]^c[36]^c[38]^c[41]^c[36]^c[37]^c[37]^c[38]^c[39]^c[43]^c[45]^c[45]^c[46]^c[47]^c[45]^c[46]^c[47]^c[49]^c[51]^c[52]^c[53]^c[48]^c[50]^c[51]^c[52]^c[59]^c[55]^c[58]^c[54]^c[57]^c[58]^c[59]^c[60]^c[62]^c[63]^c[64]^c[65]^c[60]^c[61]^c[62]^c[67]^c[69]^c[67]^c[69]^c[71]^c[66]^c[67]^c[77]^c[73]^c[72]^c[74]^c[75]^c[76]^c[77]^c[77]^c[81]^c[83]^c[80]^c[81]^c[82]^c[83]^c[78]^c[79]^c[85]^c[87]^c[88]^c[89]^c[84]^c[86]^c[87]^c[88]^c[95]^c[91]^c[93]^c[95]^c[95]^c[90]^c[91]^c[100]^c[96]^c[96]^c[98]^c[100]^c[101]^c[96]^c[98]^c[102]^c[104]^c[107]^c[102]^c[103]^c[102]^c[103]^c[104]^c[110]^c[112]^c[108]^c[109]^c[110]^c[109]^c[110]^c[111]^c[114]^c[116]^c[115]^c[117]^c[115]^c[116]^c[117]^c[115]^c[120]^c[122]^c[121]^c[122]^c[123]^c[123]^c[124]^c[125]^c[130]^c[126]^c[130]^c[126]^c[129]^c[130]^c[131]^c[127]; //row: 9 d[i2+9*Zc]=c[5]^c[9]^c[62]^c[66]^c[80]^c[104]^c[110]^c[123]; //row: 10 d[i2+10*Zc]=c[10]^c[14]^c[27]^c[44]^c[52]^c[89]; //row: 11 d[i2+11*Zc]=c[4]^c[1]^c[2]^c[1]^c[5]^c[4]^c[2]^c[3]^c[1]^c[5]^c[10]^c[7]^c[8]^c[7]^c[11]^c[6]^c[10]^c[11]^c[17]^c[14]^c[15]^c[13]^c[17]^c[13]^c[17]^c[18]^c[21]^c[22]^c[22]^c[20]^c[21]^c[19]^c[27]^c[25]^c[29]^c[27]^c[26]^c[24]^c[34]^c[31]^c[32]^c[33]^c[31]^c[31]^c[35]^c[39]^c[36]^c[37]^c[38]^c[36]^c[40]^c[38]^c[46]^c[44]^c[42]^c[46]^c[42]^c[46]^c[52]^c[50]^c[49]^c[53]^c[53]^c[51]^c[56]^c[59]^c[54]^c[55]^c[59]^c[54]^c[58]^c[63]^c[60]^c[61]^c[60]^c[64]^c[63]^c[61]^c[70]^c[67]^c[68]^c[70]^c[68]^c[68]^c[66]^c[74]^c[77]^c[72]^c[75]^c[73]^c[72]^c[76]^c[73]^c[78]^c[81]^c[82]^c[83]^c[81]^c[80]^c[78]^c[88]^c[86]^c[85]^c[89]^c[89]^c[87]^c[92]^c[95]^c[90]^c[90]^c[94]^c[92]^c[90]^c[97]^c[100]^c[101]^c[99]^c[97]^c[97]^c[101]^c[100]^c[105]^c[103]^c[104]^c[102]^c[105]^c[103]^c[113]^c[110]^c[111]^c[111]^c[109]^c[112]^c[110]^c[117]^c[114]^c[115]^c[118]^c[116]^c[118]^c[116]^c[123]^c[120]^c[121]^c[124]^c[122]^c[120]^c[124]^c[127]^c[130]^c[131]^c[127]^c[131]^c[126]^c[130]^c[127]; //row: 12 d[i2+12*Zc]=c[4]^c[11]^c[65]^c[69]^c[79]^c[109]; //row: 13 d[i2+13*Zc]=c[4]^c[5]^c[2]^c[5]^c[4]^c[0]^c[10]^c[11]^c[8]^c[7]^c[17]^c[12]^c[14]^c[14]^c[18]^c[19]^c[23]^c[22]^c[20]^c[28]^c[24]^c[27]^c[34]^c[35]^c[34]^c[32]^c[39]^c[40]^c[39]^c[41]^c[47]^c[43]^c[43]^c[43]^c[53]^c[50]^c[48]^c[56]^c[57]^c[56]^c[55]^c[63]^c[64]^c[61]^c[64]^c[70]^c[71]^c[71]^c[69]^c[74]^c[75]^c[76]^c[73]^c[78]^c[79]^c[78]^c[81]^c[89]^c[86]^c[84]^c[92]^c[93]^c[91]^c[93]^c[97]^c[98]^c[100]^c[98]^c[106]^c[105]^c[106]^c[113]^c[108]^c[112]^c[113]^c[117]^c[118]^c[119]^c[119]^c[123]^c[124]^c[125]^c[121]^c[120]^c[127]^c[128]^c[128]^c[127]; //row: 14 d[i2+14*Zc]=c[3]^c[73]^c[94]^c[100]^c[106]^c[131]; //row: 15 d[i2+15*Zc]=c[0]^c[3]^c[0]^c[4]^c[5]^c[0]^c[6]^c[9]^c[7]^c[8]^c[7]^c[13]^c[15]^c[15]^c[20]^c[18]^c[22]^c[23]^c[29]^c[25]^c[27]^c[28]^c[30]^c[35]^c[33]^c[41]^c[40]^c[41]^c[36]^c[42]^c[44]^c[43]^c[44]^c[48]^c[51]^c[48]^c[49]^c[58]^c[57]^c[56]^c[65]^c[62]^c[64]^c[65]^c[65]^c[66]^c[66]^c[69]^c[70]^c[76]^c[77]^c[73]^c[74]^c[80]^c[79]^c[81]^c[82]^c[83]^c[84]^c[87]^c[84]^c[85]^c[94]^c[92]^c[94]^c[99]^c[101]^c[98]^c[99]^c[107]^c[106]^c[106]^c[107]^c[109]^c[113]^c[113]^c[108]^c[108]^c[119]^c[114]^c[114]^c[125]^c[120]^c[121]^c[122]^c[129]^c[129]^c[127]^c[128]; //row: 16 d[i2+16*Zc]=c[3]^c[0]^c[3]^c[2]^c[9]^c[6]^c[11]^c[6]^c[16]^c[12]^c[12]^c[23]^c[21]^c[20]^c[19]^c[26]^c[28]^c[25]^c[33]^c[32]^c[30]^c[38]^c[37]^c[39]^c[45]^c[47]^c[47]^c[51]^c[48]^c[52]^c[55]^c[54]^c[59]^c[62]^c[65]^c[62]^c[69]^c[69]^c[67]^c[68]^c[73]^c[74]^c[77]^c[83]^c[82]^c[79]^c[87]^c[84]^c[88]^c[91]^c[95]^c[91]^c[96]^c[98]^c[96]^c[104]^c[103]^c[104]^c[112]^c[110]^c[111]^c[116]^c[117]^c[117]^c[122]^c[123]^c[125]^c[120]^c[126]^c[126]^c[131]; //row: 17 d[i2+17*Zc]=c[1]^c[86]^c[98]^c[105]^c[128]; //row: 18 d[i2+18*Zc]=c[9]^c[72]^c[81]^c[113]^c[117]; //row: 19 d[i2+19*Zc]=c[0]^c[8]^c[43]^c[49]^c[64]; //row: 20 d[i2+20*Zc]=c[5]^c[2]^c[5]^c[4]^c[0]^c[11]^c[8]^c[7]^c[12]^c[14]^c[14]^c[19]^c[23]^c[22]^c[19]^c[28]^c[24]^c[27]^c[35]^c[34]^c[32]^c[40]^c[39]^c[41]^c[47]^c[43]^c[43]^c[53]^c[50]^c[48]^c[57]^c[56]^c[55]^c[59]^c[64]^c[61]^c[64]^c[71]^c[71]^c[69]^c[70]^c[75]^c[76]^c[73]^c[79]^c[78]^c[81]^c[89]^c[86]^c[84]^c[93]^c[91]^c[93]^c[98]^c[100]^c[98]^c[106]^c[105]^c[106]^c[108]^c[112]^c[113]^c[118]^c[119]^c[119]^c[124]^c[125]^c[121]^c[128]^c[128]^c[127]; //row: 21 d[i2+21*Zc]=c[6]^c[35]^c[99]^c[122]^c[126]; //row: 22 d[i2+22*Zc]=c[5]^c[76]^c[82]^c[105]; //row: 23 d[i2+23*Zc]=c[11]^c[16]^c[60]^c[110]; //row: 24 d[i2+24*Zc]=c[0]^c[3]^c[0]^c[5]^c[3]^c[6]^c[9]^c[8]^c[13]^c[15]^c[15]^c[20]^c[18]^c[23]^c[19]^c[29]^c[25]^c[28]^c[24]^c[30]^c[35]^c[33]^c[41]^c[40]^c[36]^c[42]^c[44]^c[44]^c[48]^c[51]^c[49]^c[58]^c[57]^c[56]^c[65]^c[62]^c[65]^c[66]^c[66]^c[70]^c[68]^c[76]^c[77]^c[74]^c[80]^c[79]^c[82]^c[84]^c[87]^c[85]^c[94]^c[92]^c[94]^c[99]^c[101]^c[99]^c[107]^c[106]^c[107]^c[109]^c[113]^c[108]^c[119]^c[114]^c[114]^c[125]^c[120]^c[122]^c[129]^c[129]^c[128]; //row: 25 d[i2+25*Zc]=c[11]^c[40]^c[46]^c[89]; //row: 26 d[i2+26*Zc]=c[4]^c[14]^c[27]^c[93]; //row: 27 d[i2+27*Zc]=c[7]^c[37]^c[52]; //row: 28 d[i2+28*Zc]=c[5]^c[24]^c[117]^c[129]; //row: 29 d[i2+29*Zc]=c[1]^c[4]^c[1]^c[5]^c[0]^c[7]^c[10]^c[8]^c[9]^c[11]^c[14]^c[16]^c[16]^c[21]^c[19]^c[23]^c[18]^c[24]^c[26]^c[28]^c[29]^c[31]^c[30]^c[34]^c[36]^c[41]^c[36]^c[37]^c[43]^c[45]^c[44]^c[45]^c[49]^c[52]^c[49]^c[50]^c[59]^c[58]^c[57]^c[60]^c[63]^c[65]^c[60]^c[67]^c[67]^c[70]^c[71]^c[77]^c[72]^c[74]^c[75]^c[81]^c[80]^c[82]^c[83]^c[85]^c[88]^c[85]^c[86]^c[88]^c[95]^c[93]^c[95]^c[100]^c[96]^c[99]^c[100]^c[102]^c[107]^c[107]^c[102]^c[110]^c[108]^c[108]^c[109]^c[110]^c[114]^c[115]^c[115]^c[120]^c[121]^c[122]^c[123]^c[130]^c[130]^c[128]^c[129]; //row: 30 d[i2+30*Zc]=c[1]^c[4]^c[0]^c[1]^c[5]^c[0]^c[2]^c[7]^c[9]^c[10]^c[8]^c[9]^c[14]^c[16]^c[15]^c[16]^c[21]^c[19]^c[23]^c[18]^c[24]^c[25]^c[26]^c[28]^c[29]^c[31]^c[30]^c[33]^c[34]^c[36]^c[40]^c[41]^c[36]^c[37]^c[43]^c[44]^c[45]^c[44]^c[45]^c[49]^c[51]^c[52]^c[49]^c[50]^c[59]^c[58]^c[56]^c[57]^c[60]^c[62]^c[63]^c[65]^c[60]^c[60]^c[67]^c[67]^c[70]^c[71]^c[77]^c[72]^c[74]^c[75]^c[81]^c[79]^c[80]^c[82]^c[83]^c[79]^c[85]^c[87]^c[88]^c[85]^c[86]^c[95]^c[93]^c[94]^c[95]^c[100]^c[96]^c[99]^c[100]^c[102]^c[106]^c[107]^c[107]^c[102]^c[110]^c[113]^c[108]^c[108]^c[109]^c[114]^c[115]^c[114]^c[115]^c[120]^c[120]^c[121]^c[122]^c[123]^c[130]^c[130]^c[128]^c[129]; //row: 31 d[i2+31*Zc]=c[0]^c[5]^c[3]^c[2]^c[0]^c[5]^c[5]^c[3]^c[4]^c[6]^c[11]^c[9]^c[8]^c[8]^c[6]^c[7]^c[9]^c[13]^c[12]^c[15]^c[14]^c[15]^c[14]^c[20]^c[19]^c[18]^c[23]^c[23]^c[21]^c[22]^c[29]^c[28]^c[25]^c[24]^c[28]^c[26]^c[27]^c[30]^c[35]^c[35]^c[34]^c[33]^c[32]^c[41]^c[40]^c[40]^c[39]^c[36]^c[40]^c[41]^c[42]^c[47]^c[44]^c[43]^c[44]^c[42]^c[43]^c[46]^c[48]^c[53]^c[51]^c[50]^c[49]^c[53]^c[48]^c[58]^c[57]^c[57]^c[56]^c[56]^c[55]^c[65]^c[64]^c[62]^c[61]^c[65]^c[63]^c[64]^c[66]^c[71]^c[66]^c[71]^c[70]^c[68]^c[69]^c[76]^c[75]^c[77]^c[76]^c[74]^c[72]^c[73]^c[80]^c[79]^c[79]^c[78]^c[82]^c[80]^c[81]^c[84]^c[89]^c[87]^c[86]^c[85]^c[89]^c[84]^c[94]^c[93]^c[92]^c[91]^c[94]^c[93]^c[99]^c[98]^c[101]^c[100]^c[99]^c[97]^c[98]^c[107]^c[106]^c[106]^c[105]^c[107]^c[105]^c[106]^c[109]^c[108]^c[113]^c[112]^c[108]^c[112]^c[113]^c[119]^c[118]^c[114]^c[119]^c[114]^c[119]^c[125]^c[124]^c[120]^c[125]^c[122]^c[120]^c[121]^c[129]^c[128]^c[129]^c[128]^c[128]^c[126]^c[127]; //row: 32 d[i2+32*Zc]=c[0]^c[3]^c[5]^c[0]^c[4]^c[5]^c[5]^c[6]^c[8]^c[9]^c[7]^c[8]^c[13]^c[15]^c[14]^c[15]^c[20]^c[18]^c[22]^c[23]^c[29]^c[24]^c[25]^c[27]^c[28]^c[30]^c[35]^c[32]^c[33]^c[41]^c[39]^c[40]^c[41]^c[36]^c[42]^c[43]^c[44]^c[43]^c[44]^c[48]^c[50]^c[51]^c[48]^c[49]^c[58]^c[57]^c[55]^c[56]^c[65]^c[61]^c[62]^c[64]^c[65]^c[66]^c[66]^c[69]^c[70]^c[76]^c[77]^c[73]^c[74]^c[74]^c[80]^c[78]^c[79]^c[81]^c[82]^c[84]^c[86]^c[87]^c[84]^c[85]^c[84]^c[94]^c[92]^c[93]^c[94]^c[99]^c[101]^c[98]^c[99]^c[107]^c[105]^c[106]^c[106]^c[107]^c[109]^c[112]^c[113]^c[113]^c[108]^c[119]^c[114]^c[119]^c[114]^c[125]^c[125]^c[120]^c[121]^c[122]^c[129]^c[129]^c[127]^c[128]; //row: 33 d[i2+33*Zc]=c[10]^c[13]^c[66]^c[128]; //row: 34 d[i2+34*Zc]=c[1]^c[45]^c[93]^c[107]; //row: 35 d[i2+35*Zc]=c[2]^c[5]^c[2]^c[1]^c[8]^c[11]^c[10]^c[7]^c[15]^c[17]^c[17]^c[22]^c[20]^c[19]^c[25]^c[27]^c[24]^c[32]^c[31]^c[35]^c[37]^c[36]^c[38]^c[40]^c[44]^c[46]^c[46]^c[50]^c[53]^c[51]^c[54]^c[59]^c[58]^c[61]^c[64]^c[61]^c[68]^c[68]^c[66]^c[72]^c[73]^c[76]^c[73]^c[82]^c[81]^c[78]^c[86]^c[89]^c[87]^c[90]^c[94]^c[90]^c[101]^c[97]^c[101]^c[103]^c[102]^c[103]^c[111]^c[109]^c[110]^c[115]^c[116]^c[116]^c[121]^c[122]^c[124]^c[131]^c[131]^c[130]; //row: 36 d[i2+36*Zc]=c[5]^c[84]^c[92]^c[110]; //row: 37 d[i2+37*Zc]=c[1]^c[2]^c[5]^c[2]^c[1]^c[7]^c[8]^c[11]^c[10]^c[10]^c[14]^c[15]^c[17]^c[17]^c[21]^c[22]^c[20]^c[19]^c[25]^c[27]^c[24]^c[31]^c[32]^c[31]^c[35]^c[36]^c[37]^c[36]^c[38]^c[44]^c[46]^c[46]^c[50]^c[53]^c[51]^c[59]^c[54]^c[59]^c[58]^c[60]^c[61]^c[64]^c[61]^c[67]^c[68]^c[68]^c[66]^c[77]^c[72]^c[73]^c[76]^c[81]^c[82]^c[81]^c[78]^c[81]^c[86]^c[89]^c[87]^c[95]^c[90]^c[94]^c[90]^c[100]^c[101]^c[97]^c[101]^c[103]^c[102]^c[103]^c[110]^c[111]^c[109]^c[110]^c[114]^c[115]^c[116]^c[116]^c[120]^c[121]^c[122]^c[124]^c[130]^c[131]^c[131]^c[130]; //row: 38 d[i2+38*Zc]=c[4]^c[56]^c[60]^c[75]; //row: 39 d[i2+39*Zc]=c[11]^c[20]^c[45]^c[116]; //row: 40 d[i2+40*Zc]=c[0]^c[48]^c[107]; //row: 41 d[i2+41*Zc]=c[9]^c[19]^c[54]^c[113]; //row: 42 d[i2+42*Zc]=c[3]^c[0]^c[2]^c[3]^c[1]^c[2]^c[4]^c[9]^c[11]^c[6]^c[10]^c[11]^c[16]^c[12]^c[17]^c[12]^c[23]^c[21]^c[19]^c[20]^c[26]^c[27]^c[28]^c[24]^c[25]^c[25]^c[33]^c[32]^c[35]^c[30]^c[38]^c[36]^c[37]^c[38]^c[39]^c[45]^c[46]^c[47]^c[46]^c[47]^c[51]^c[53]^c[48]^c[51]^c[52]^c[55]^c[54]^c[58]^c[59]^c[62]^c[64]^c[65]^c[61]^c[62]^c[69]^c[69]^c[66]^c[67]^c[73]^c[74]^c[76]^c[77]^c[83]^c[81]^c[82]^c[78]^c[79]^c[87]^c[89]^c[84]^c[87]^c[88]^c[91]^c[95]^c[90]^c[91]^c[96]^c[98]^c[101]^c[96]^c[104]^c[102]^c[103]^c[103]^c[104]^c[112]^c[109]^c[110]^c[110]^c[111]^c[116]^c[117]^c[116]^c[117]^c[122]^c[122]^c[123]^c[124]^c[125]^c[126]^c[126]^c[130]^c[131]; //row: 43 d[i2+43*Zc]=c[1]^c[4]^c[1]^c[5]^c[0]^c[7]^c[10]^c[8]^c[9]^c[10]^c[14]^c[16]^c[16]^c[21]^c[19]^c[23]^c[18]^c[24]^c[26]^c[28]^c[29]^c[31]^c[30]^c[34]^c[36]^c[41]^c[36]^c[37]^c[43]^c[45]^c[44]^c[45]^c[49]^c[52]^c[49]^c[50]^c[59]^c[58]^c[57]^c[60]^c[63]^c[65]^c[60]^c[67]^c[67]^c[70]^c[71]^c[77]^c[72]^c[74]^c[75]^c[81]^c[80]^c[82]^c[83]^c[85]^c[88]^c[85]^c[86]^c[95]^c[93]^c[95]^c[100]^c[96]^c[99]^c[100]^c[101]^c[102]^c[107]^c[107]^c[102]^c[110]^c[108]^c[108]^c[109]^c[113]^c[114]^c[115]^c[115]^c[120]^c[121]^c[122]^c[123]^c[130]^c[130]^c[128]^c[129]; //row: 44 d[i2+44*Zc]=c[4]^c[1]^c[4]^c[3]^c[1]^c[10]^c[7]^c[6]^c[17]^c[13]^c[13]^c[18]^c[22]^c[21]^c[27]^c[29]^c[26]^c[34]^c[33]^c[31]^c[39]^c[38]^c[40]^c[46]^c[42]^c[42]^c[47]^c[52]^c[49]^c[53]^c[56]^c[55]^c[54]^c[54]^c[63]^c[60]^c[63]^c[70]^c[70]^c[68]^c[74]^c[75]^c[72]^c[78]^c[83]^c[80]^c[88]^c[85]^c[89]^c[92]^c[90]^c[92]^c[97]^c[99]^c[97]^c[105]^c[104]^c[105]^c[113]^c[111]^c[112]^c[117]^c[118]^c[118]^c[123]^c[124]^c[120]^c[127]^c[127]^c[126]; //row: 45 d[i2+45*Zc]=c[8]^c[40]^c[62]; } break; case 7: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[5]^c[0]^c[3]^c[4]^c[8]^c[13]^c[10]^c[16]^c[16]^c[16]^c[27]^c[24]^c[24]^c[31]^c[28]^c[32]^c[38]^c[41]^c[39]^c[44]^c[45]^c[44]^c[51]^c[52]^c[50]^c[62]^c[61]^c[57]^c[69]^c[65]^c[64]^c[71]^c[76]^c[75]^c[82]^c[79]^c[77]^c[90]^c[85]^c[86]^c[95]^c[97]^c[97]^c[99]^c[101]^c[103]^c[111]^c[106]^c[111]^c[118]^c[117]^c[116]^c[123]^c[120]^c[122]^c[126]^c[130]^c[126]^c[134]^c[135]^c[138]^c[145]^c[145]^c[141]^c[150]^c[151]^c[150]; //row: 1 d[i2+1*Zc]=c[5]^c[6]^c[1]^c[4]^c[5]^c[8]^c[9]^c[7]^c[11]^c[16]^c[17]^c[17]^c[17]^c[27]^c[21]^c[25]^c[25]^c[32]^c[29]^c[33]^c[38]^c[39]^c[35]^c[40]^c[44]^c[45]^c[46]^c[45]^c[52]^c[53]^c[51]^c[56]^c[62]^c[58]^c[69]^c[63]^c[66]^c[65]^c[71]^c[72]^c[70]^c[76]^c[82]^c[83]^c[80]^c[78]^c[90]^c[84]^c[86]^c[87]^c[95]^c[96]^c[91]^c[91]^c[100]^c[102]^c[104]^c[111]^c[105]^c[107]^c[105]^c[118]^c[112]^c[118]^c[117]^c[124]^c[121]^c[123]^c[126]^c[127]^c[131]^c[127]^c[134]^c[135]^c[136]^c[139]^c[145]^c[146]^c[146]^c[142]^c[150]^c[151]^c[152]^c[151]; //row: 2 d[i2+2*Zc]=c[6]^c[1]^c[3]^c[4]^c[4]^c[5]^c[9]^c[13]^c[7]^c[10]^c[11]^c[17]^c[17]^c[16]^c[17]^c[21]^c[25]^c[24]^c[25]^c[32]^c[28]^c[29]^c[32]^c[33]^c[39]^c[35]^c[39]^c[40]^c[45]^c[45]^c[46]^c[44]^c[45]^c[52]^c[52]^c[53]^c[50]^c[51]^c[56]^c[61]^c[62]^c[57]^c[58]^c[63]^c[66]^c[64]^c[65]^c[72]^c[76]^c[70]^c[75]^c[76]^c[83]^c[80]^c[77]^c[78]^c[84]^c[86]^c[86]^c[87]^c[96]^c[97]^c[91]^c[97]^c[91]^c[100]^c[101]^c[102]^c[103]^c[104]^c[105]^c[107]^c[111]^c[105]^c[112]^c[118]^c[116]^c[117]^c[124]^c[120]^c[121]^c[122]^c[123]^c[127]^c[130]^c[131]^c[126]^c[127]^c[135]^c[136]^c[138]^c[139]^c[146]^c[145]^c[146]^c[141]^c[142]^c[151]^c[152]^c[150]^c[151]; //row: 3 d[i2+3*Zc]=c[6]^c[1]^c[4]^c[4]^c[5]^c[9]^c[7]^c[10]^c[11]^c[17]^c[17]^c[17]^c[21]^c[25]^c[24]^c[25]^c[32]^c[29]^c[32]^c[33]^c[39]^c[35]^c[40]^c[45]^c[46]^c[44]^c[45]^c[52]^c[53]^c[50]^c[51]^c[56]^c[62]^c[57]^c[58]^c[63]^c[66]^c[65]^c[72]^c[70]^c[75]^c[76]^c[83]^c[80]^c[77]^c[78]^c[84]^c[86]^c[86]^c[87]^c[96]^c[91]^c[97]^c[91]^c[100]^c[102]^c[103]^c[104]^c[105]^c[107]^c[105]^c[112]^c[118]^c[116]^c[117]^c[124]^c[121]^c[122]^c[123]^c[127]^c[131]^c[126]^c[127]^c[135]^c[136]^c[139]^c[146]^c[146]^c[141]^c[142]^c[151]^c[152]^c[150]^c[151]; //row: 4 d[i2+4*Zc]=c[1]^c[9]; //row: 5 d[i2+5*Zc]=c[4]^c[6]^c[2]^c[3]^c[2]^c[7]^c[12]^c[9]^c[9]^c[15]^c[15]^c[15]^c[26]^c[23]^c[23]^c[22]^c[30]^c[34]^c[31]^c[37]^c[40]^c[38]^c[43]^c[44]^c[43]^c[50]^c[51]^c[49]^c[61]^c[60]^c[56]^c[68]^c[64]^c[63]^c[70]^c[75]^c[74]^c[81]^c[78]^c[83]^c[89]^c[84]^c[85]^c[86]^c[94]^c[96]^c[96]^c[98]^c[100]^c[102]^c[110]^c[105]^c[110]^c[117]^c[116]^c[115]^c[118]^c[122]^c[119]^c[121]^c[132]^c[129]^c[132]^c[133]^c[134]^c[137]^c[144]^c[144]^c[140]^c[149]^c[150]^c[149]^c[150]; //row: 6 d[i2+6*Zc]=c[3]^c[48]^c[70]^c[83]^c[97]^c[120]^c[128]^c[143]; //row: 7 d[i2+7*Zc]=c[2]^c[12]^c[33]^c[50]^c[58]^c[101]; //row: 8 d[i2+8*Zc]=c[0]^c[4]^c[2]^c[6]^c[5]^c[1]^c[2]^c[6]^c[2]^c[3]^c[4]^c[10]^c[7]^c[8]^c[11]^c[12]^c[12]^c[8]^c[9]^c[10]^c[18]^c[15]^c[18]^c[15]^c[18]^c[14]^c[15]^c[22]^c[26]^c[26]^c[23]^c[26]^c[22]^c[23]^c[24]^c[33]^c[30]^c[30]^c[33]^c[34]^c[34]^c[30]^c[31]^c[40]^c[37]^c[36]^c[40]^c[41]^c[37]^c[38]^c[46]^c[43]^c[47]^c[43]^c[44]^c[46]^c[42]^c[43]^c[53]^c[50]^c[54]^c[50]^c[51]^c[52]^c[55]^c[49]^c[57]^c[61]^c[56]^c[59]^c[60]^c[59]^c[62]^c[56]^c[64]^c[68]^c[67]^c[64]^c[66]^c[69]^c[63]^c[73]^c[70]^c[71]^c[74]^c[75]^c[70]^c[73]^c[74]^c[77]^c[81]^c[81]^c[78]^c[79]^c[82]^c[83]^c[85]^c[89]^c[87]^c[84]^c[88]^c[84]^c[85]^c[90]^c[97]^c[94]^c[92]^c[95]^c[96]^c[92]^c[95]^c[96]^c[101]^c[98]^c[103]^c[99]^c[100]^c[98]^c[101]^c[102]^c[106]^c[110]^c[108]^c[105]^c[106]^c[109]^c[110]^c[113]^c[117]^c[112]^c[116]^c[118]^c[114]^c[115]^c[112]^c[125]^c[122]^c[122]^c[125]^c[119]^c[124]^c[120]^c[121]^c[128]^c[132]^c[132]^c[128]^c[129]^c[128]^c[131]^c[132]^c[136]^c[133]^c[137]^c[134]^c[133]^c[136]^c[137]^c[136]^c[140]^c[144]^c[140]^c[143]^c[144]^c[143]^c[146]^c[140]^c[152]^c[149]^c[153]^c[150]^c[152]^c[148]^c[149]^c[148]; //row: 9 d[i2+9*Zc]=c[1]^c[8]^c[72]^c[83]^c[95]^c[121]^c[129]^c[140]; //row: 10 d[i2+10*Zc]=c[11]^c[17]^c[33]^c[53]^c[60]^c[102]; //row: 11 d[i2+11*Zc]=c[5]^c[3]^c[4]^c[0]^c[6]^c[3]^c[2]^c[4]^c[3]^c[2]^c[8]^c[13]^c[7]^c[13]^c[12]^c[10]^c[9]^c[10]^c[16]^c[14]^c[15]^c[16]^c[15]^c[16]^c[15]^c[27]^c[25]^c[26]^c[24]^c[23]^c[24]^c[23]^c[31]^c[30]^c[28]^c[34]^c[32]^c[31]^c[38]^c[36]^c[37]^c[41]^c[40]^c[39]^c[38]^c[44]^c[42]^c[43]^c[45]^c[44]^c[44]^c[43]^c[51]^c[50]^c[52]^c[51]^c[50]^c[49]^c[62]^c[61]^c[61]^c[60]^c[57]^c[56]^c[69]^c[67]^c[68]^c[65]^c[64]^c[64]^c[63]^c[71]^c[76]^c[70]^c[76]^c[75]^c[75]^c[74]^c[82]^c[80]^c[81]^c[79]^c[78]^c[77]^c[83]^c[90]^c[88]^c[89]^c[85]^c[84]^c[86]^c[85]^c[85]^c[95]^c[93]^c[94]^c[97]^c[96]^c[97]^c[96]^c[99]^c[98]^c[101]^c[100]^c[103]^c[102]^c[111]^c[109]^c[110]^c[106]^c[105]^c[111]^c[110]^c[118]^c[116]^c[117]^c[117]^c[116]^c[116]^c[115]^c[118]^c[123]^c[122]^c[120]^c[119]^c[122]^c[121]^c[126]^c[131]^c[132]^c[130]^c[129]^c[126]^c[132]^c[134]^c[139]^c[133]^c[135]^c[134]^c[138]^c[137]^c[145]^c[143]^c[144]^c[145]^c[144]^c[141]^c[140]^c[150]^c[148]^c[149]^c[151]^c[150]^c[150]^c[149]^c[150]; //row: 12 d[i2+12*Zc]=c[1]^c[13]^c[72]^c[79]^c[97]^c[132]; //row: 13 d[i2+13*Zc]=c[6]^c[0]^c[2]^c[5]^c[6]^c[3]^c[9]^c[10]^c[8]^c[12]^c[17]^c[18]^c[18]^c[18]^c[21]^c[22]^c[26]^c[26]^c[27]^c[33]^c[30]^c[34]^c[39]^c[40]^c[36]^c[41]^c[45]^c[46]^c[47]^c[46]^c[53]^c[54]^c[52]^c[50]^c[57]^c[56]^c[59]^c[63]^c[64]^c[67]^c[66]^c[72]^c[73]^c[71]^c[70]^c[83]^c[77]^c[81]^c[79]^c[84]^c[85]^c[87]^c[88]^c[96]^c[97]^c[92]^c[92]^c[101]^c[103]^c[98]^c[105]^c[106]^c[108]^c[106]^c[112]^c[113]^c[112]^c[118]^c[125]^c[122]^c[124]^c[127]^c[128]^c[132]^c[128]^c[135]^c[136]^c[137]^c[133]^c[146]^c[140]^c[140]^c[143]^c[146]^c[151]^c[152]^c[153]^c[152]; //row: 14 d[i2+14*Zc]=c[6]^c[90]^c[105]^c[113]^c[120]^c[147]; //row: 15 d[i2+15*Zc]=c[3]^c[5]^c[1]^c[1]^c[2]^c[5]^c[13]^c[11]^c[7]^c[8]^c[7]^c[14]^c[14]^c[14]^c[25]^c[22]^c[21]^c[22]^c[29]^c[33]^c[29]^c[30]^c[36]^c[39]^c[37]^c[42]^c[43]^c[48]^c[42]^c[49]^c[50]^c[54]^c[55]^c[60]^c[59]^c[61]^c[62]^c[67]^c[63]^c[69]^c[76]^c[74]^c[72]^c[73]^c[74]^c[80]^c[77]^c[81]^c[82]^c[88]^c[90]^c[90]^c[84]^c[93]^c[95]^c[94]^c[95]^c[96]^c[104]^c[99]^c[100]^c[101]^c[109]^c[111]^c[109]^c[116]^c[115]^c[113]^c[114]^c[121]^c[125]^c[119]^c[120]^c[131]^c[128]^c[130]^c[131]^c[131]^c[139]^c[133]^c[136]^c[143]^c[143]^c[145]^c[146]^c[148]^c[149]^c[147]^c[148]; //row: 16 d[i2+16*Zc]=c[1]^c[3]^c[6]^c[0]^c[11]^c[9]^c[13]^c[13]^c[19]^c[19]^c[19]^c[23]^c[27]^c[27]^c[23]^c[34]^c[31]^c[28]^c[41]^c[37]^c[35]^c[47]^c[48]^c[47]^c[54]^c[55]^c[53]^c[58]^c[57]^c[60]^c[65]^c[68]^c[67]^c[74]^c[72]^c[71]^c[78]^c[82]^c[80]^c[77]^c[86]^c[88]^c[89]^c[91]^c[93]^c[93]^c[102]^c[104]^c[99]^c[107]^c[109]^c[107]^c[114]^c[113]^c[112]^c[119]^c[123]^c[125]^c[129]^c[126]^c[129]^c[137]^c[138]^c[134]^c[141]^c[141]^c[144]^c[146]^c[153]^c[147]^c[153]; //row: 17 d[i2+17*Zc]=c[6]^c[102]^c[115]^c[125]^c[150]; //row: 18 d[i2+18*Zc]=c[9]^c[88]^c[94]^c[128]^c[136]; //row: 19 d[i2+19*Zc]=c[0]^c[12]^c[53]^c[57]^c[70]; //row: 20 d[i2+20*Zc]=c[6]^c[1]^c[4]^c[5]^c[6]^c[9]^c[7]^c[11]^c[17]^c[17]^c[17]^c[21]^c[25]^c[25]^c[27]^c[32]^c[29]^c[33]^c[39]^c[35]^c[40]^c[45]^c[46]^c[45]^c[52]^c[53]^c[51]^c[56]^c[62]^c[58]^c[63]^c[66]^c[65]^c[64]^c[72]^c[70]^c[76]^c[83]^c[80]^c[78]^c[80]^c[84]^c[86]^c[87]^c[96]^c[91]^c[91]^c[100]^c[102]^c[104]^c[105]^c[107]^c[105]^c[112]^c[118]^c[117]^c[124]^c[121]^c[123]^c[127]^c[131]^c[127]^c[135]^c[136]^c[139]^c[146]^c[146]^c[142]^c[151]^c[152]^c[151]; //row: 21 d[i2+21*Zc]=c[9]^c[39]^c[114]^c[140]^c[147]; //row: 22 d[i2+22*Zc]=c[3]^c[90]^c[93]^c[119]; //row: 23 d[i2+23*Zc]=c[10]^c[20]^c[76]^c[128]; //row: 24 d[i2+24*Zc]=c[3]^c[5]^c[1]^c[2]^c[6]^c[13]^c[11]^c[8]^c[14]^c[14]^c[14]^c[25]^c[22]^c[22]^c[23]^c[29]^c[33]^c[30]^c[28]^c[36]^c[39]^c[37]^c[42]^c[43]^c[42]^c[49]^c[50]^c[55]^c[60]^c[59]^c[62]^c[67]^c[63]^c[69]^c[76]^c[74]^c[73]^c[80]^c[77]^c[82]^c[80]^c[88]^c[90]^c[84]^c[93]^c[95]^c[95]^c[104]^c[99]^c[101]^c[109]^c[111]^c[109]^c[116]^c[115]^c[114]^c[121]^c[125]^c[120]^c[131]^c[128]^c[131]^c[139]^c[133]^c[136]^c[143]^c[143]^c[146]^c[148]^c[149]^c[148]; //row: 25 d[i2+25*Zc]=c[7]^c[46]^c[50]^c[101]; //row: 26 d[i2+26*Zc]=c[1]^c[14]^c[29]^c[105]; //row: 27 d[i2+27*Zc]=c[11]^c[42]^c[61]; //row: 28 d[i2+28*Zc]=c[5]^c[33]^c[139]^c[148]; //row: 29 d[i2+29*Zc]=c[4]^c[6]^c[2]^c[2]^c[3]^c[7]^c[12]^c[8]^c[9]^c[9]^c[15]^c[15]^c[15]^c[26]^c[23]^c[22]^c[23]^c[30]^c[34]^c[30]^c[31]^c[37]^c[40]^c[38]^c[43]^c[44]^c[42]^c[43]^c[50]^c[51]^c[55]^c[49]^c[61]^c[60]^c[62]^c[56]^c[68]^c[64]^c[63]^c[70]^c[75]^c[73]^c[74]^c[81]^c[78]^c[82]^c[83]^c[89]^c[84]^c[84]^c[85]^c[94]^c[96]^c[95]^c[96]^c[98]^c[100]^c[101]^c[102]^c[101]^c[110]^c[105]^c[110]^c[117]^c[116]^c[114]^c[115]^c[122]^c[119]^c[120]^c[121]^c[132]^c[129]^c[131]^c[132]^c[129]^c[133]^c[134]^c[137]^c[144]^c[144]^c[146]^c[140]^c[149]^c[150]^c[148]^c[149]; //row: 30 d[i2+30*Zc]=c[3]^c[5]^c[0]^c[1]^c[1]^c[2]^c[5]^c[13]^c[10]^c[11]^c[7]^c[8]^c[14]^c[14]^c[20]^c[14]^c[25]^c[22]^c[21]^c[22]^c[29]^c[32]^c[33]^c[29]^c[30]^c[36]^c[39]^c[36]^c[37]^c[42]^c[42]^c[43]^c[48]^c[42]^c[49]^c[49]^c[50]^c[54]^c[55]^c[60]^c[58]^c[59]^c[61]^c[62]^c[67]^c[63]^c[68]^c[69]^c[76]^c[73]^c[74]^c[72]^c[73]^c[73]^c[80]^c[77]^c[81]^c[82]^c[88]^c[90]^c[90]^c[84]^c[93]^c[94]^c[95]^c[94]^c[95]^c[97]^c[104]^c[98]^c[99]^c[100]^c[101]^c[109]^c[111]^c[108]^c[109]^c[116]^c[115]^c[113]^c[114]^c[121]^c[124]^c[125]^c[119]^c[120]^c[131]^c[127]^c[128]^c[130]^c[131]^c[139]^c[133]^c[135]^c[136]^c[143]^c[142]^c[143]^c[145]^c[146]^c[148]^c[149]^c[147]^c[148]; //row: 31 d[i2+31*Zc]=c[0]^c[1]^c[2]^c[3]^c[5]^c[6]^c[6]^c[6]^c[0]^c[10]^c[11]^c[8]^c[9]^c[12]^c[12]^c[13]^c[13]^c[18]^c[19]^c[18]^c[19]^c[18]^c[19]^c[22]^c[23]^c[26]^c[27]^c[26]^c[26]^c[27]^c[33]^c[34]^c[30]^c[31]^c[34]^c[34]^c[28]^c[40]^c[41]^c[36]^c[37]^c[41]^c[35]^c[46]^c[47]^c[47]^c[48]^c[46]^c[46]^c[47]^c[53]^c[54]^c[54]^c[55]^c[52]^c[52]^c[53]^c[55]^c[57]^c[58]^c[56]^c[57]^c[59]^c[59]^c[60]^c[64]^c[65]^c[67]^c[68]^c[66]^c[67]^c[73]^c[74]^c[71]^c[72]^c[70]^c[70]^c[71]^c[77]^c[78]^c[81]^c[82]^c[79]^c[79]^c[80]^c[85]^c[86]^c[87]^c[88]^c[88]^c[88]^c[89]^c[97]^c[91]^c[92]^c[93]^c[92]^c[92]^c[93]^c[101]^c[102]^c[103]^c[104]^c[98]^c[98]^c[99]^c[106]^c[107]^c[108]^c[109]^c[106]^c[107]^c[113]^c[114]^c[112]^c[113]^c[118]^c[118]^c[112]^c[125]^c[119]^c[122]^c[123]^c[124]^c[124]^c[125]^c[128]^c[129]^c[132]^c[126]^c[128]^c[128]^c[129]^c[136]^c[137]^c[137]^c[138]^c[133]^c[134]^c[140]^c[141]^c[140]^c[141]^c[143]^c[143]^c[144]^c[152]^c[153]^c[153]^c[147]^c[152]^c[152]^c[153]; //row: 32 d[i2+32*Zc]=c[1]^c[3]^c[5]^c[6]^c[6]^c[0]^c[2]^c[11]^c[8]^c[9]^c[12]^c[13]^c[19]^c[19]^c[18]^c[19]^c[23]^c[27]^c[26]^c[27]^c[34]^c[30]^c[31]^c[34]^c[28]^c[41]^c[37]^c[41]^c[35]^c[47]^c[47]^c[48]^c[46]^c[47]^c[54]^c[54]^c[55]^c[52]^c[53]^c[58]^c[56]^c[57]^c[59]^c[60]^c[65]^c[68]^c[66]^c[67]^c[74]^c[71]^c[72]^c[70]^c[71]^c[78]^c[82]^c[79]^c[80]^c[86]^c[88]^c[88]^c[89]^c[89]^c[91]^c[92]^c[93]^c[92]^c[93]^c[102]^c[103]^c[104]^c[98]^c[99]^c[99]^c[107]^c[109]^c[106]^c[107]^c[114]^c[113]^c[118]^c[112]^c[119]^c[122]^c[123]^c[124]^c[125]^c[129]^c[132]^c[126]^c[128]^c[129]^c[137]^c[138]^c[133]^c[134]^c[141]^c[140]^c[141]^c[143]^c[144]^c[153]^c[147]^c[152]^c[153]; //row: 33 d[i2+33*Zc]=c[8]^c[20]^c[83]^c[150]; //row: 34 d[i2+34*Zc]=c[4]^c[52]^c[109]^c[121]; //row: 35 d[i2+35*Zc]=c[3]^c[5]^c[1]^c[2]^c[13]^c[11]^c[8]^c[9]^c[14]^c[14]^c[14]^c[25]^c[22]^c[22]^c[29]^c[33]^c[30]^c[36]^c[39]^c[37]^c[42]^c[43]^c[42]^c[46]^c[49]^c[50]^c[55]^c[60]^c[59]^c[62]^c[67]^c[63]^c[69]^c[76]^c[74]^c[73]^c[80]^c[77]^c[82]^c[88]^c[90]^c[84]^c[88]^c[93]^c[95]^c[95]^c[104]^c[99]^c[101]^c[109]^c[111]^c[109]^c[116]^c[115]^c[114]^c[121]^c[125]^c[120]^c[131]^c[128]^c[131]^c[139]^c[133]^c[136]^c[143]^c[143]^c[146]^c[148]^c[149]^c[148]; //row: 36 d[i2+36*Zc]=c[4]^c[100]^c[111]^c[131]; //row: 37 d[i2+37*Zc]=c[3]^c[4]^c[6]^c[2]^c[3]^c[13]^c[7]^c[12]^c[9]^c[10]^c[14]^c[15]^c[15]^c[15]^c[25]^c[26]^c[23]^c[23]^c[30]^c[34]^c[31]^c[36]^c[37]^c[40]^c[38]^c[42]^c[43]^c[44]^c[43]^c[50]^c[51]^c[49]^c[61]^c[60]^c[56]^c[67]^c[68]^c[64]^c[63]^c[76]^c[70]^c[75]^c[74]^c[80]^c[81]^c[78]^c[83]^c[88]^c[89]^c[84]^c[85]^c[93]^c[94]^c[96]^c[96]^c[96]^c[98]^c[100]^c[102]^c[109]^c[110]^c[105]^c[110]^c[116]^c[117]^c[116]^c[115]^c[122]^c[119]^c[121]^c[131]^c[132]^c[129]^c[132]^c[139]^c[133]^c[134]^c[137]^c[143]^c[144]^c[144]^c[140]^c[148]^c[149]^c[150]^c[149]; //row: 38 d[i2+38*Zc]=c[3]^c[68]^c[72]^c[86]; //row: 39 d[i2+39*Zc]=c[11]^c[27]^c[55]^c[134]; //row: 40 d[i2+40*Zc]=c[3]^c[58]^c[123]; //row: 41 d[i2+41*Zc]=c[8]^c[25]^c[66]^c[131]; //row: 42 d[i2+42*Zc]=c[0]^c[2]^c[4]^c[5]^c[5]^c[6]^c[1]^c[10]^c[7]^c[8]^c[11]^c[12]^c[18]^c[18]^c[17]^c[18]^c[22]^c[26]^c[25]^c[26]^c[33]^c[29]^c[30]^c[33]^c[34]^c[34]^c[40]^c[36]^c[40]^c[41]^c[46]^c[46]^c[47]^c[45]^c[46]^c[53]^c[53]^c[54]^c[51]^c[52]^c[57]^c[62]^c[56]^c[58]^c[59]^c[64]^c[67]^c[65]^c[66]^c[73]^c[70]^c[71]^c[76]^c[70]^c[77]^c[81]^c[78]^c[79]^c[85]^c[87]^c[87]^c[88]^c[97]^c[91]^c[92]^c[91]^c[92]^c[101]^c[102]^c[103]^c[104]^c[98]^c[106]^c[108]^c[105]^c[106]^c[113]^c[112]^c[117]^c[118]^c[125]^c[121]^c[122]^c[123]^c[124]^c[128]^c[131]^c[132]^c[127]^c[128]^c[136]^c[137]^c[139]^c[133]^c[140]^c[146]^c[140]^c[142]^c[143]^c[152]^c[153]^c[151]^c[152]; //row: 43 d[i2+43*Zc]=c[6]^c[1]^c[4]^c[4]^c[5]^c[9]^c[7]^c[10]^c[11]^c[9]^c[17]^c[17]^c[17]^c[21]^c[25]^c[24]^c[25]^c[32]^c[29]^c[32]^c[33]^c[39]^c[35]^c[40]^c[45]^c[46]^c[44]^c[45]^c[52]^c[53]^c[50]^c[51]^c[56]^c[62]^c[57]^c[58]^c[63]^c[66]^c[65]^c[72]^c[70]^c[75]^c[76]^c[83]^c[80]^c[77]^c[78]^c[84]^c[86]^c[86]^c[87]^c[96]^c[91]^c[97]^c[91]^c[100]^c[102]^c[103]^c[104]^c[105]^c[107]^c[105]^c[112]^c[118]^c[116]^c[117]^c[112]^c[124]^c[121]^c[122]^c[123]^c[127]^c[131]^c[126]^c[127]^c[126]^c[135]^c[136]^c[139]^c[146]^c[146]^c[141]^c[142]^c[151]^c[152]^c[150]^c[151]; //row: 44 d[i2+44*Zc]=c[3]^c[5]^c[1]^c[2]^c[6]^c[13]^c[11]^c[8]^c[14]^c[14]^c[14]^c[25]^c[22]^c[22]^c[29]^c[33]^c[30]^c[36]^c[39]^c[37]^c[42]^c[43]^c[42]^c[49]^c[50]^c[55]^c[52]^c[60]^c[59]^c[62]^c[67]^c[63]^c[69]^c[64]^c[76]^c[74]^c[73]^c[80]^c[77]^c[82]^c[88]^c[90]^c[84]^c[93]^c[95]^c[95]^c[104]^c[99]^c[101]^c[109]^c[111]^c[109]^c[116]^c[115]^c[114]^c[121]^c[125]^c[120]^c[131]^c[128]^c[131]^c[139]^c[133]^c[136]^c[143]^c[143]^c[146]^c[148]^c[149]^c[148]; //row: 45 d[i2+45*Zc]=c[8]^c[43]^c[70]; } break; case 8: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[1]^c[1]^c[1]^c[0]^c[12]^c[14]^c[8]^c[17]^c[22]^c[16]^c[30]^c[28]^c[27]^c[35]^c[38]^c[35]^c[43]^c[46]^c[44]^c[49]^c[52]^c[53]^c[61]^c[60]^c[58]^c[71]^c[64]^c[66]^c[74]^c[76]^c[78]^c[84]^c[86]^c[87]^c[93]^c[91]^c[93]^c[102]^c[101]^c[101]^c[104]^c[109]^c[106]^c[116]^c[112]^c[114]^c[122]^c[123]^c[120]^c[134]^c[133]^c[135]^c[138]^c[140]^c[139]^c[149]^c[148]^c[147]^c[154]^c[158]^c[154]^c[166]^c[164]^c[167]^c[174]^c[171]^c[171]; //row: 1 d[i2+1*Zc]=c[1]^c[2]^c[2]^c[2]^c[1]^c[12]^c[13]^c[15]^c[9]^c[17]^c[18]^c[23]^c[17]^c[30]^c[31]^c[29]^c[28]^c[36]^c[39]^c[36]^c[43]^c[44]^c[47]^c[45]^c[49]^c[50]^c[53]^c[54]^c[62]^c[61]^c[59]^c[64]^c[65]^c[67]^c[74]^c[75]^c[77]^c[79]^c[84]^c[85]^c[87]^c[80]^c[93]^c[94]^c[92]^c[94]^c[102]^c[103]^c[102]^c[102]^c[104]^c[105]^c[110]^c[107]^c[117]^c[113]^c[115]^c[122]^c[123]^c[124]^c[121]^c[134]^c[135]^c[134]^c[128]^c[139]^c[141]^c[140]^c[149]^c[150]^c[149]^c[148]^c[154]^c[155]^c[159]^c[155]^c[166]^c[167]^c[165]^c[160]^c[174]^c[175]^c[172]^c[172]; //row: 2 d[i2+2*Zc]=c[2]^c[2]^c[1]^c[2]^c[0]^c[1]^c[13]^c[14]^c[15]^c[8]^c[9]^c[18]^c[23]^c[16]^c[17]^c[31]^c[29]^c[27]^c[28]^c[36]^c[38]^c[39]^c[35]^c[36]^c[44]^c[47]^c[44]^c[45]^c[50]^c[52]^c[53]^c[53]^c[54]^c[62]^c[60]^c[61]^c[58]^c[59]^c[64]^c[64]^c[65]^c[66]^c[67]^c[75]^c[77]^c[78]^c[79]^c[85]^c[86]^c[87]^c[87]^c[80]^c[94]^c[92]^c[93]^c[94]^c[103]^c[102]^c[101]^c[102]^c[105]^c[109]^c[110]^c[106]^c[107]^c[117]^c[112]^c[113]^c[114]^c[115]^c[123]^c[124]^c[120]^c[121]^c[135]^c[134]^c[135]^c[128]^c[139]^c[140]^c[141]^c[139]^c[140]^c[150]^c[148]^c[149]^c[147]^c[148]^c[155]^c[159]^c[154]^c[155]^c[167]^c[164]^c[165]^c[167]^c[160]^c[175]^c[172]^c[171]^c[172]; //row: 3 d[i2+3*Zc]=c[2]^c[2]^c[2]^c[0]^c[1]^c[13]^c[15]^c[8]^c[9]^c[18]^c[23]^c[17]^c[31]^c[29]^c[27]^c[28]^c[36]^c[39]^c[35]^c[36]^c[44]^c[47]^c[45]^c[50]^c[53]^c[53]^c[54]^c[62]^c[61]^c[58]^c[59]^c[64]^c[65]^c[66]^c[67]^c[75]^c[77]^c[79]^c[85]^c[87]^c[87]^c[80]^c[94]^c[92]^c[93]^c[94]^c[103]^c[102]^c[101]^c[102]^c[105]^c[110]^c[106]^c[107]^c[117]^c[113]^c[114]^c[115]^c[123]^c[124]^c[121]^c[135]^c[134]^c[135]^c[128]^c[139]^c[141]^c[139]^c[140]^c[150]^c[149]^c[147]^c[148]^c[155]^c[159]^c[155]^c[167]^c[165]^c[167]^c[160]^c[175]^c[172]^c[171]^c[172]; //row: 4 d[i2+4*Zc]=c[4]^c[13]; //row: 5 d[i2+5*Zc]=c[4]^c[4]^c[4]^c[3]^c[4]^c[15]^c[9]^c[11]^c[11]^c[20]^c[17]^c[19]^c[25]^c[31]^c[30]^c[25]^c[38]^c[33]^c[38]^c[46]^c[41]^c[47]^c[52]^c[55]^c[48]^c[56]^c[63]^c[61]^c[66]^c[67]^c[69]^c[77]^c[79]^c[73]^c[87]^c[81]^c[82]^c[88]^c[94]^c[88]^c[97]^c[96]^c[96]^c[102]^c[107]^c[104]^c[109]^c[119]^c[115]^c[117]^c[125]^c[126]^c[123]^c[129]^c[128]^c[130]^c[131]^c[141]^c[143]^c[142]^c[144]^c[151]^c[150]^c[157]^c[153]^c[157]^c[161]^c[167]^c[162]^c[169]^c[174]^c[174]^c[170]; //row: 6 d[i2+6*Zc]=c[6]^c[53]^c[83]^c[90]^c[107]^c[138]^c[148]^c[162]; //row: 7 d[i2+7*Zc]=c[3]^c[11]^c[38]^c[62]^c[70]^c[119]; //row: 8 d[i2+8*Zc]=c[2]^c[4]^c[2]^c[4]^c[2]^c[3]^c[4]^c[1]^c[2]^c[3]^c[7]^c[13]^c[15]^c[15]^c[8]^c[9]^c[9]^c[10]^c[11]^c[11]^c[18]^c[20]^c[23]^c[17]^c[17]^c[18]^c[19]^c[31]^c[25]^c[29]^c[31]^c[28]^c[29]^c[30]^c[30]^c[36]^c[38]^c[39]^c[32]^c[33]^c[36]^c[37]^c[38]^c[44]^c[46]^c[47]^c[41]^c[45]^c[46]^c[47]^c[50]^c[52]^c[53]^c[54]^c[55]^c[54]^c[55]^c[48]^c[62]^c[56]^c[61]^c[62]^c[63]^c[59]^c[60]^c[61]^c[64]^c[66]^c[65]^c[66]^c[67]^c[67]^c[68]^c[69]^c[75]^c[77]^c[77]^c[79]^c[79]^c[72]^c[73]^c[85]^c[87]^c[87]^c[80]^c[81]^c[80]^c[81]^c[82]^c[94]^c[88]^c[92]^c[94]^c[94]^c[95]^c[88]^c[103]^c[97]^c[102]^c[96]^c[102]^c[103]^c[96]^c[98]^c[105]^c[107]^c[110]^c[111]^c[104]^c[107]^c[108]^c[109]^c[117]^c[119]^c[113]^c[114]^c[115]^c[115]^c[116]^c[117]^c[123]^c[125]^c[124]^c[126]^c[121]^c[122]^c[123]^c[135]^c[129]^c[134]^c[128]^c[128]^c[129]^c[130]^c[133]^c[139]^c[141]^c[141]^c[142]^c[143]^c[140]^c[141]^c[142]^c[150]^c[144]^c[149]^c[150]^c[151]^c[148]^c[149]^c[150]^c[155]^c[157]^c[159]^c[153]^c[155]^c[156]^c[157]^c[155]^c[167]^c[161]^c[165]^c[166]^c[167]^c[160]^c[161]^c[162]^c[175]^c[169]^c[172]^c[174]^c[172]^c[173]^c[174]^c[172]; //row: 9 d[i2+9*Zc]=c[6]^c[13]^c[84]^c[92]^c[109]^c[141]^c[148]^c[167]; //row: 10 d[i2+10*Zc]=c[9]^c[20]^c[38]^c[63]^c[64]^c[113]; //row: 11 d[i2+11*Zc]=c[5]^c[7]^c[0]^c[5]^c[0]^c[5]^c[0]^c[4]^c[7]^c[4]^c[8]^c[10]^c[11]^c[10]^c[13]^c[12]^c[15]^c[8]^c[21]^c[23]^c[16]^c[18]^c[21]^c[20]^c[23]^c[26]^c[28]^c[29]^c[24]^c[27]^c[31]^c[26]^c[39]^c[34]^c[34]^c[37]^c[39]^c[34]^c[47]^c[41]^c[42]^c[42]^c[45]^c[40]^c[43]^c[53]^c[55]^c[48]^c[48]^c[51]^c[49]^c[52]^c[57]^c[60]^c[56]^c[59]^c[62]^c[57]^c[67]^c[70]^c[68]^c[71]^c[70]^c[65]^c[78]^c[72]^c[73]^c[72]^c[75]^c[74]^c[77]^c[80]^c[82]^c[83]^c[82]^c[85]^c[83]^c[86]^c[89]^c[91]^c[92]^c[95]^c[90]^c[89]^c[92]^c[98]^c[100]^c[101]^c[97]^c[100]^c[97]^c[100]^c[98]^c[108]^c[110]^c[111]^c[105]^c[108]^c[110]^c[105]^c[112]^c[115]^c[116]^c[119]^c[118]^c[113]^c[126]^c[120]^c[121]^c[127]^c[122]^c[124]^c[127]^c[130]^c[132]^c[133]^c[129]^c[132]^c[131]^c[134]^c[133]^c[142]^c[137]^c[136]^c[139]^c[143]^c[138]^c[145]^c[147]^c[148]^c[144]^c[147]^c[151]^c[146]^c[158]^c[152]^c[153]^c[154]^c[157]^c[158]^c[153]^c[162]^c[164]^c[165]^c[160]^c[163]^c[163]^c[166]^c[170]^c[172]^c[173]^c[175]^c[170]^c[175]^c[170]^c[173]; //row: 12 d[i2+12*Zc]=c[7]^c[9]^c[84]^c[95]^c[105]^c[150]; //row: 13 d[i2+13*Zc]=c[7]^c[0]^c[0]^c[0]^c[7]^c[0]^c[10]^c[11]^c[13]^c[15]^c[23]^c[16]^c[21]^c[23]^c[28]^c[29]^c[27]^c[26]^c[31]^c[34]^c[37]^c[34]^c[41]^c[42]^c[45]^c[43]^c[55]^c[48]^c[51]^c[52]^c[60]^c[59]^c[57]^c[62]^c[70]^c[71]^c[65]^c[72]^c[73]^c[75]^c[77]^c[82]^c[83]^c[85]^c[86]^c[91]^c[92]^c[90]^c[92]^c[100]^c[101]^c[100]^c[100]^c[110]^c[111]^c[108]^c[105]^c[115]^c[119]^c[113]^c[120]^c[121]^c[122]^c[127]^c[132]^c[133]^c[132]^c[134]^c[137]^c[139]^c[138]^c[147]^c[148]^c[147]^c[146]^c[152]^c[153]^c[157]^c[153]^c[164]^c[165]^c[163]^c[166]^c[160]^c[172]^c[173]^c[170]^c[170]; //row: 14 d[i2+14*Zc]=c[5]^c[102]^c[125]^c[134]^c[143]^c[172]; //row: 15 d[i2+15*Zc]=c[5]^c[5]^c[5]^c[3]^c[4]^c[7]^c[8]^c[10]^c[11]^c[12]^c[15]^c[21]^c[18]^c[20]^c[26]^c[24]^c[30]^c[31]^c[39]^c[34]^c[38]^c[39]^c[47]^c[42]^c[40]^c[53]^c[48]^c[48]^c[49]^c[57]^c[56]^c[61]^c[62]^c[67]^c[68]^c[69]^c[70]^c[78]^c[72]^c[74]^c[80]^c[82]^c[82]^c[83]^c[80]^c[89]^c[95]^c[88]^c[89]^c[98]^c[97]^c[96]^c[97]^c[108]^c[105]^c[109]^c[110]^c[110]^c[112]^c[116]^c[117]^c[118]^c[126]^c[127]^c[124]^c[130]^c[129]^c[130]^c[131]^c[142]^c[136]^c[142]^c[143]^c[145]^c[144]^c[150]^c[151]^c[146]^c[158]^c[154]^c[158]^c[162]^c[160]^c[162]^c[163]^c[170]^c[175]^c[174]^c[175]; //row: 16 d[i2+16*Zc]=c[3]^c[3]^c[3]^c[2]^c[14]^c[8]^c[10]^c[15]^c[19]^c[16]^c[18]^c[24]^c[30]^c[29]^c[24]^c[37]^c[32]^c[37]^c[45]^c[40]^c[46]^c[51]^c[54]^c[55]^c[63]^c[62]^c[60]^c[65]^c[66]^c[68]^c[76]^c[78]^c[72]^c[86]^c[80]^c[81]^c[95]^c[93]^c[95]^c[88]^c[96]^c[103]^c[103]^c[106]^c[111]^c[108]^c[118]^c[114]^c[116]^c[124]^c[125]^c[122]^c[128]^c[135]^c[129]^c[140]^c[142]^c[141]^c[151]^c[150]^c[149]^c[156]^c[152]^c[156]^c[160]^c[166]^c[161]^c[162]^c[168]^c[173]^c[173]; //row: 17 d[i2+17*Zc]=c[6]^c[115]^c[130]^c[136]^c[175]; //row: 18 d[i2+18*Zc]=c[9]^c[96]^c[111]^c[146]^c[154]; //row: 19 d[i2+19*Zc]=c[3]^c[8]^c[63]^c[70]^c[87]; //row: 20 d[i2+20*Zc]=c[1]^c[1]^c[1]^c[0]^c[6]^c[12]^c[14]^c[8]^c[17]^c[22]^c[16]^c[30]^c[28]^c[27]^c[25]^c[35]^c[38]^c[35]^c[43]^c[46]^c[44]^c[49]^c[52]^c[53]^c[61]^c[60]^c[58]^c[71]^c[64]^c[66]^c[74]^c[76]^c[78]^c[72]^c[84]^c[86]^c[87]^c[93]^c[91]^c[93]^c[94]^c[102]^c[101]^c[101]^c[104]^c[109]^c[106]^c[116]^c[112]^c[114]^c[122]^c[123]^c[120]^c[134]^c[133]^c[135]^c[138]^c[140]^c[139]^c[149]^c[148]^c[147]^c[154]^c[158]^c[154]^c[166]^c[164]^c[167]^c[174]^c[171]^c[171]; //row: 21 d[i2+21*Zc]=c[8]^c[40]^c[132]^c[162]^c[170]; //row: 22 d[i2+22*Zc]=c[7]^c[101]^c[107]^c[141]; //row: 23 d[i2+23*Zc]=c[11]^c[18]^c[81]^c[151]; //row: 24 d[i2+24*Zc]=c[7]^c[7]^c[7]^c[6]^c[7]^c[10]^c[12]^c[14]^c[23]^c[20]^c[22]^c[28]^c[26]^c[25]^c[29]^c[33]^c[36]^c[33]^c[35]^c[41]^c[44]^c[42]^c[55]^c[50]^c[51]^c[59]^c[58]^c[56]^c[69]^c[70]^c[64]^c[72]^c[74]^c[76]^c[82]^c[84]^c[85]^c[91]^c[89]^c[91]^c[91]^c[100]^c[99]^c[99]^c[110]^c[107]^c[104]^c[114]^c[118]^c[112]^c[120]^c[121]^c[126]^c[132]^c[131]^c[133]^c[136]^c[138]^c[137]^c[147]^c[146]^c[145]^c[152]^c[156]^c[152]^c[164]^c[162]^c[165]^c[172]^c[169]^c[169]; //row: 25 d[i2+25*Zc]=c[14]^c[55]^c[59]^c[117]; //row: 26 d[i2+26*Zc]=c[2]^c[18]^c[38]^c[124]; //row: 27 d[i2+27*Zc]=c[8]^c[55]^c[65]; //row: 28 d[i2+28*Zc]=c[7]^c[36]^c[156]^c[174]; //row: 29 d[i2+29*Zc]=c[0]^c[0]^c[0]^c[6]^c[7]^c[11]^c[13]^c[14]^c[15]^c[13]^c[16]^c[21]^c[23]^c[29]^c[27]^c[25]^c[26]^c[34]^c[37]^c[33]^c[34]^c[42]^c[45]^c[43]^c[48]^c[51]^c[51]^c[52]^c[60]^c[59]^c[56]^c[57]^c[70]^c[71]^c[64]^c[65]^c[73]^c[75]^c[77]^c[83]^c[85]^c[85]^c[86]^c[92]^c[90]^c[91]^c[92]^c[101]^c[100]^c[99]^c[100]^c[111]^c[108]^c[104]^c[105]^c[115]^c[119]^c[112]^c[113]^c[115]^c[121]^c[122]^c[127]^c[133]^c[132]^c[133]^c[134]^c[137]^c[139]^c[137]^c[138]^c[148]^c[147]^c[145]^c[146]^c[147]^c[153]^c[157]^c[153]^c[165]^c[163]^c[165]^c[166]^c[173]^c[170]^c[169]^c[170]; //row: 30 d[i2+30*Zc]=c[3]^c[3]^c[2]^c[3]^c[1]^c[2]^c[7]^c[14]^c[15]^c[8]^c[9]^c[10]^c[19]^c[16]^c[17]^c[18]^c[24]^c[30]^c[28]^c[29]^c[37]^c[39]^c[32]^c[36]^c[37]^c[45]^c[40]^c[45]^c[46]^c[51]^c[53]^c[54]^c[54]^c[55]^c[63]^c[61]^c[62]^c[59]^c[60]^c[65]^c[65]^c[66]^c[67]^c[68]^c[76]^c[78]^c[79]^c[72]^c[86]^c[87]^c[80]^c[80]^c[81]^c[80]^c[95]^c[93]^c[94]^c[95]^c[96]^c[103]^c[102]^c[103]^c[106]^c[110]^c[111]^c[107]^c[108]^c[111]^c[118]^c[113]^c[114]^c[115]^c[116]^c[124]^c[125]^c[121]^c[122]^c[128]^c[135]^c[128]^c[129]^c[140]^c[141]^c[142]^c[140]^c[141]^c[151]^c[149]^c[150]^c[148]^c[149]^c[156]^c[152]^c[155]^c[156]^c[160]^c[165]^c[166]^c[160]^c[161]^c[168]^c[173]^c[172]^c[173]; //row: 31 d[i2+31*Zc]=c[5]^c[7]^c[5]^c[7]^c[5]^c[7]^c[4]^c[5]^c[6]^c[8]^c[10]^c[10]^c[12]^c[12]^c[13]^c[14]^c[14]^c[21]^c[23]^c[18]^c[20]^c[20]^c[22]^c[26]^c[28]^c[24]^c[26]^c[31]^c[24]^c[25]^c[39]^c[33]^c[34]^c[36]^c[39]^c[32]^c[33]^c[47]^c[41]^c[42]^c[44]^c[40]^c[42]^c[53]^c[55]^c[48]^c[50]^c[49]^c[50]^c[51]^c[57]^c[59]^c[56]^c[58]^c[62]^c[63]^c[56]^c[56]^c[67]^c[69]^c[68]^c[70]^c[70]^c[71]^c[64]^c[78]^c[72]^c[72]^c[74]^c[74]^c[76]^c[80]^c[82]^c[82]^c[84]^c[83]^c[84]^c[85]^c[89]^c[91]^c[95]^c[89]^c[89]^c[90]^c[91]^c[98]^c[100]^c[97]^c[99]^c[97]^c[98]^c[99]^c[108]^c[110]^c[105]^c[107]^c[110]^c[111]^c[104]^c[112]^c[114]^c[116]^c[118]^c[118]^c[119]^c[112]^c[126]^c[120]^c[127]^c[121]^c[124]^c[126]^c[130]^c[132]^c[129]^c[131]^c[131]^c[132]^c[133]^c[142]^c[136]^c[136]^c[138]^c[143]^c[136]^c[137]^c[145]^c[147]^c[144]^c[146]^c[151]^c[144]^c[145]^c[158]^c[152]^c[154]^c[156]^c[158]^c[152]^c[162]^c[164]^c[160]^c[162]^c[163]^c[164]^c[165]^c[170]^c[172]^c[175]^c[169]^c[175]^c[168]^c[169]; //row: 32 d[i2+32*Zc]=c[3]^c[3]^c[2]^c[3]^c[1]^c[2]^c[4]^c[14]^c[15]^c[8]^c[9]^c[10]^c[19]^c[16]^c[17]^c[18]^c[24]^c[30]^c[28]^c[29]^c[37]^c[39]^c[32]^c[36]^c[37]^c[45]^c[40]^c[45]^c[46]^c[51]^c[53]^c[54]^c[54]^c[55]^c[63]^c[61]^c[62]^c[59]^c[60]^c[65]^c[65]^c[66]^c[67]^c[68]^c[76]^c[78]^c[79]^c[72]^c[86]^c[87]^c[80]^c[80]^c[81]^c[95]^c[93]^c[94]^c[95]^c[96]^c[103]^c[102]^c[103]^c[103]^c[106]^c[110]^c[111]^c[107]^c[108]^c[118]^c[113]^c[114]^c[115]^c[116]^c[118]^c[124]^c[125]^c[121]^c[122]^c[128]^c[135]^c[128]^c[129]^c[140]^c[141]^c[142]^c[140]^c[141]^c[151]^c[149]^c[150]^c[148]^c[149]^c[156]^c[152]^c[155]^c[156]^c[160]^c[165]^c[166]^c[160]^c[161]^c[168]^c[173]^c[172]^c[173]; //row: 33 d[i2+33*Zc]=c[9]^c[18]^c[88]^c[170]; //row: 34 d[i2+34*Zc]=c[6]^c[62]^c[123]^c[142]; //row: 35 d[i2+35*Zc]=c[0]^c[0]^c[0]^c[7]^c[11]^c[13]^c[15]^c[8]^c[16]^c[21]^c[23]^c[29]^c[27]^c[26]^c[34]^c[37]^c[34]^c[42]^c[45]^c[43]^c[48]^c[51]^c[52]^c[52]^c[60]^c[59]^c[57]^c[70]^c[71]^c[65]^c[73]^c[75]^c[77]^c[83]^c[85]^c[86]^c[92]^c[90]^c[92]^c[101]^c[100]^c[100]^c[102]^c[111]^c[108]^c[105]^c[115]^c[119]^c[113]^c[121]^c[122]^c[127]^c[133]^c[132]^c[134]^c[137]^c[139]^c[138]^c[148]^c[147]^c[146]^c[153]^c[157]^c[153]^c[165]^c[163]^c[166]^c[173]^c[170]^c[170]; //row: 36 d[i2+36*Zc]=c[4]^c[112]^c[122]^c[151]; //row: 37 d[i2+37*Zc]=c[3]^c[4]^c[4]^c[4]^c[3]^c[14]^c[15]^c[9]^c[11]^c[13]^c[19]^c[20]^c[17]^c[19]^c[24]^c[25]^c[31]^c[30]^c[38]^c[33]^c[38]^c[45]^c[46]^c[41]^c[47]^c[51]^c[52]^c[55]^c[48]^c[56]^c[63]^c[61]^c[66]^c[67]^c[69]^c[76]^c[77]^c[79]^c[73]^c[86]^c[87]^c[81]^c[82]^c[95]^c[88]^c[94]^c[88]^c[96]^c[97]^c[96]^c[96]^c[106]^c[107]^c[104]^c[109]^c[107]^c[119]^c[115]^c[117]^c[124]^c[125]^c[126]^c[123]^c[128]^c[129]^c[128]^c[130]^c[141]^c[143]^c[142]^c[151]^c[144]^c[151]^c[150]^c[156]^c[157]^c[153]^c[157]^c[160]^c[161]^c[167]^c[162]^c[168]^c[169]^c[174]^c[174]; //row: 38 d[i2+38*Zc]=c[6]^c[78]^c[84]^c[98]; //row: 39 d[i2+39*Zc]=c[12]^c[26]^c[60]^c[159]; //row: 40 d[i2+40*Zc]=c[4]^c[64]^c[140]; //row: 41 d[i2+41*Zc]=c[14]^c[28]^c[74]^c[150]; //row: 42 d[i2+42*Zc]=c[3]^c[3]^c[2]^c[3]^c[1]^c[2]^c[4]^c[14]^c[15]^c[8]^c[9]^c[10]^c[19]^c[16]^c[17]^c[18]^c[24]^c[30]^c[28]^c[29]^c[37]^c[39]^c[32]^c[36]^c[37]^c[36]^c[45]^c[40]^c[45]^c[46]^c[51]^c[53]^c[54]^c[54]^c[55]^c[63]^c[61]^c[62]^c[59]^c[60]^c[65]^c[65]^c[66]^c[67]^c[68]^c[76]^c[78]^c[79]^c[72]^c[86]^c[87]^c[80]^c[80]^c[81]^c[95]^c[93]^c[94]^c[95]^c[96]^c[103]^c[102]^c[103]^c[106]^c[110]^c[111]^c[107]^c[108]^c[118]^c[113]^c[114]^c[115]^c[116]^c[124]^c[125]^c[121]^c[122]^c[128]^c[135]^c[128]^c[129]^c[140]^c[141]^c[142]^c[140]^c[141]^c[151]^c[149]^c[150]^c[148]^c[149]^c[156]^c[152]^c[155]^c[156]^c[160]^c[165]^c[166]^c[160]^c[161]^c[168]^c[173]^c[172]^c[173]; //row: 43 d[i2+43*Zc]=c[5]^c[5]^c[5]^c[3]^c[4]^c[8]^c[10]^c[11]^c[12]^c[14]^c[21]^c[18]^c[20]^c[26]^c[24]^c[30]^c[31]^c[39]^c[34]^c[38]^c[39]^c[47]^c[42]^c[40]^c[53]^c[48]^c[48]^c[49]^c[57]^c[56]^c[61]^c[62]^c[67]^c[68]^c[69]^c[70]^c[78]^c[72]^c[74]^c[80]^c[82]^c[82]^c[83]^c[89]^c[95]^c[88]^c[89]^c[98]^c[97]^c[96]^c[97]^c[108]^c[105]^c[109]^c[110]^c[112]^c[116]^c[117]^c[118]^c[126]^c[127]^c[124]^c[130]^c[129]^c[130]^c[131]^c[130]^c[142]^c[136]^c[142]^c[143]^c[145]^c[144]^c[150]^c[151]^c[148]^c[158]^c[154]^c[158]^c[162]^c[160]^c[162]^c[163]^c[170]^c[175]^c[174]^c[175]; //row: 44 d[i2+44*Zc]=c[6]^c[6]^c[6]^c[5]^c[2]^c[9]^c[11]^c[13]^c[22]^c[19]^c[21]^c[27]^c[25]^c[24]^c[32]^c[35]^c[32]^c[40]^c[43]^c[41]^c[54]^c[49]^c[50]^c[58]^c[57]^c[63]^c[60]^c[68]^c[69]^c[71]^c[79]^c[73]^c[75]^c[74]^c[81]^c[83]^c[84]^c[90]^c[88]^c[90]^c[99]^c[98]^c[98]^c[109]^c[106]^c[111]^c[113]^c[117]^c[119]^c[127]^c[120]^c[125]^c[131]^c[130]^c[132]^c[143]^c[137]^c[136]^c[146]^c[145]^c[144]^c[159]^c[155]^c[159]^c[163]^c[161]^c[164]^c[171]^c[168]^c[168]; //row: 45 d[i2+45*Zc]=c[12]^c[54]^c[86]; } break; case 9: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[3]^c[7]^c[5]^c[6]^c[17]^c[13]^c[9]^c[25]^c[26]^c[21]^c[32]^c[33]^c[30]^c[39]^c[42]^c[44]^c[47]^c[51]^c[53]^c[57]^c[57]^c[54]^c[66]^c[64]^c[68]^c[75]^c[80]^c[79]^c[82]^c[89]^c[89]^c[98]^c[92]^c[94]^c[106]^c[99]^c[107]^c[116]^c[113]^c[110]^c[123]^c[118]^c[125]^c[134]^c[129]^c[132]^c[142]^c[142]^c[143]^c[152]^c[148]^c[151]^c[155]^c[161]^c[155]^c[166]^c[169]^c[170]^c[179]^c[173]^c[172]^c[180]^c[188]^c[184]^c[197]^c[190]^c[197]; //row: 1 d[i2+1*Zc]=c[3]^c[4]^c[8]^c[6]^c[7]^c[17]^c[9]^c[14]^c[10]^c[25]^c[26]^c[18]^c[22]^c[32]^c[33]^c[34]^c[31]^c[40]^c[43]^c[36]^c[47]^c[48]^c[52]^c[45]^c[57]^c[58]^c[58]^c[55]^c[67]^c[65]^c[69]^c[76]^c[72]^c[80]^c[82]^c[83]^c[81]^c[81]^c[98]^c[90]^c[93]^c[95]^c[106]^c[107]^c[100]^c[99]^c[116]^c[108]^c[114]^c[111]^c[123]^c[124]^c[119]^c[117]^c[126]^c[130]^c[133]^c[142]^c[143]^c[143]^c[135]^c[152]^c[144]^c[149]^c[152]^c[156]^c[153]^c[156]^c[166]^c[167]^c[170]^c[162]^c[179]^c[171]^c[174]^c[173]^c[180]^c[181]^c[180]^c[185]^c[197]^c[189]^c[191]^c[189]; //row: 2 d[i2+2*Zc]=c[4]^c[8]^c[5]^c[6]^c[6]^c[7]^c[9]^c[13]^c[14]^c[9]^c[10]^c[26]^c[18]^c[21]^c[22]^c[33]^c[34]^c[30]^c[31]^c[40]^c[42]^c[43]^c[44]^c[36]^c[48]^c[52]^c[53]^c[45]^c[58]^c[57]^c[58]^c[54]^c[55]^c[67]^c[64]^c[65]^c[68]^c[69]^c[76]^c[80]^c[72]^c[79]^c[80]^c[83]^c[81]^c[89]^c[81]^c[90]^c[92]^c[93]^c[94]^c[95]^c[107]^c[100]^c[107]^c[99]^c[108]^c[114]^c[110]^c[111]^c[124]^c[118]^c[119]^c[125]^c[117]^c[126]^c[129]^c[130]^c[132]^c[133]^c[143]^c[143]^c[143]^c[135]^c[144]^c[149]^c[151]^c[152]^c[156]^c[161]^c[153]^c[155]^c[156]^c[167]^c[169]^c[170]^c[170]^c[162]^c[171]^c[174]^c[172]^c[173]^c[181]^c[188]^c[180]^c[184]^c[185]^c[189]^c[191]^c[197]^c[189]; //row: 3 d[i2+3*Zc]=c[4]^c[8]^c[6]^c[6]^c[7]^c[9]^c[14]^c[9]^c[10]^c[26]^c[18]^c[22]^c[33]^c[34]^c[30]^c[31]^c[40]^c[43]^c[44]^c[36]^c[48]^c[52]^c[45]^c[58]^c[58]^c[54]^c[55]^c[67]^c[65]^c[68]^c[69]^c[76]^c[72]^c[79]^c[80]^c[83]^c[81]^c[81]^c[90]^c[93]^c[94]^c[95]^c[107]^c[100]^c[107]^c[99]^c[108]^c[114]^c[110]^c[111]^c[124]^c[119]^c[125]^c[117]^c[126]^c[130]^c[132]^c[133]^c[143]^c[143]^c[135]^c[144]^c[149]^c[151]^c[152]^c[156]^c[153]^c[155]^c[156]^c[167]^c[170]^c[170]^c[162]^c[171]^c[174]^c[173]^c[181]^c[180]^c[184]^c[185]^c[189]^c[191]^c[197]^c[189]; //row: 4 d[i2+4*Zc]=c[2]^c[9]; //row: 5 d[i2+5*Zc]=c[3]^c[7]^c[5]^c[6]^c[8]^c[17]^c[13]^c[9]^c[9]^c[25]^c[26]^c[21]^c[32]^c[33]^c[30]^c[35]^c[39]^c[42]^c[44]^c[47]^c[51]^c[53]^c[57]^c[57]^c[54]^c[66]^c[64]^c[68]^c[75]^c[80]^c[79]^c[82]^c[89]^c[89]^c[98]^c[92]^c[94]^c[106]^c[99]^c[107]^c[116]^c[113]^c[110]^c[111]^c[123]^c[118]^c[125]^c[134]^c[129]^c[132]^c[142]^c[142]^c[143]^c[152]^c[148]^c[151]^c[145]^c[155]^c[161]^c[155]^c[166]^c[169]^c[170]^c[179]^c[173]^c[172]^c[180]^c[188]^c[184]^c[197]^c[190]^c[197]^c[195]; //row: 6 d[i2+6*Zc]=c[7]^c[62]^c[96]^c[107]^c[121]^c[158]^c[168]^c[188]; //row: 7 d[i2+7*Zc]=c[6]^c[17]^c[36]^c[66]^c[76]^c[127]; //row: 8 d[i2+8*Zc]=c[8]^c[4]^c[3]^c[8]^c[1]^c[5]^c[6]^c[2]^c[6]^c[7]^c[8]^c[13]^c[9]^c[9]^c[13]^c[14]^c[14]^c[9]^c[10]^c[17]^c[21]^c[26]^c[22]^c[18]^c[26]^c[21]^c[22]^c[28]^c[33]^c[29]^c[34]^c[35]^c[30]^c[31]^c[35]^c[44]^c[40]^c[38]^c[42]^c[43]^c[40]^c[44]^c[36]^c[52]^c[48]^c[47]^c[52]^c[49]^c[53]^c[45]^c[62]^c[58]^c[62]^c[57]^c[58]^c[59]^c[54]^c[55]^c[71]^c[67]^c[69]^c[64]^c[65]^c[64]^c[68]^c[69]^c[80]^c[76]^c[76]^c[80]^c[72]^c[75]^c[79]^c[80]^c[87]^c[83]^c[85]^c[81]^c[85]^c[89]^c[81]^c[94]^c[90]^c[97]^c[92]^c[93]^c[90]^c[94]^c[95]^c[102]^c[107]^c[104]^c[100]^c[103]^c[107]^c[99]^c[112]^c[108]^c[109]^c[114]^c[115]^c[110]^c[111]^c[112]^c[119]^c[124]^c[123]^c[118]^c[119]^c[121]^c[125]^c[117]^c[130]^c[126]^c[134]^c[129]^c[130]^c[128]^c[132]^c[133]^c[138]^c[143]^c[138]^c[143]^c[139]^c[143]^c[135]^c[148]^c[144]^c[144]^c[149]^c[147]^c[151]^c[152]^c[151]^c[160]^c[156]^c[157]^c[161]^c[153]^c[160]^c[155]^c[156]^c[162]^c[167]^c[165]^c[169]^c[170]^c[166]^c[170]^c[162]^c[175]^c[171]^c[178]^c[174]^c[177]^c[172]^c[173]^c[171]^c[185]^c[181]^c[184]^c[188]^c[180]^c[180]^c[184]^c[185]^c[193]^c[189]^c[195]^c[191]^c[193]^c[197]^c[189]^c[194]; //row: 9 d[i2+9*Zc]=c[8]^c[14]^c[92]^c[106]^c[125]^c[158]^c[165]^c[181]; //row: 10 d[i2+10*Zc]=c[15]^c[18]^c[36]^c[68]^c[80]^c[128]; //row: 11 d[i2+11*Zc]=c[6]^c[2]^c[3]^c[1]^c[7]^c[8]^c[5]^c[0]^c[6]^c[0]^c[11]^c[16]^c[17]^c[16]^c[13]^c[12]^c[9]^c[13]^c[19]^c[24]^c[25]^c[20]^c[26]^c[24]^c[21]^c[35]^c[31]^c[32]^c[27]^c[33]^c[33]^c[30]^c[42]^c[39]^c[36]^c[42]^c[38]^c[44]^c[50]^c[46]^c[47]^c[45]^c[51]^c[47]^c[53]^c[60]^c[56]^c[57]^c[60]^c[57]^c[57]^c[54]^c[69]^c[66]^c[67]^c[64]^c[71]^c[68]^c[78]^c[75]^c[74]^c[80]^c[73]^c[79]^c[85]^c[81]^c[82]^c[83]^c[89]^c[83]^c[89]^c[92]^c[97]^c[98]^c[95]^c[92]^c[97]^c[94]^c[100]^c[105]^c[106]^c[102]^c[99]^c[101]^c[107]^c[110]^c[115]^c[116]^c[116]^c[113]^c[113]^c[110]^c[111]^c[117]^c[122]^c[123]^c[121]^c[118]^c[119]^c[125]^c[128]^c[134]^c[132]^c[129]^c[126]^c[132]^c[136]^c[141]^c[142]^c[136]^c[142]^c[137]^c[143]^c[146]^c[151]^c[152]^c[151]^c[148]^c[145]^c[151]^c[144]^c[158]^c[155]^c[155]^c[161]^c[158]^c[155]^c[169]^c[165]^c[166]^c[163]^c[169]^c[164]^c[170]^c[173]^c[178]^c[179]^c[176]^c[173]^c[175]^c[172]^c[183]^c[188]^c[180]^c[182]^c[188]^c[187]^c[184]^c[191]^c[196]^c[197]^c[193]^c[190]^c[191]^c[197]^c[191]; //row: 12 d[i2+12*Zc]=c[8]^c[17]^c[90]^c[105]^c[120]^c[170]; //row: 13 d[i2+13*Zc]=c[3]^c[4]^c[8]^c[6]^c[7]^c[5]^c[17]^c[9]^c[14]^c[10]^c[25]^c[26]^c[18]^c[22]^c[32]^c[33]^c[34]^c[31]^c[35]^c[40]^c[43]^c[36]^c[47]^c[48]^c[52]^c[45]^c[57]^c[58]^c[58]^c[55]^c[67]^c[65]^c[69]^c[71]^c[76]^c[72]^c[80]^c[82]^c[83]^c[81]^c[81]^c[98]^c[90]^c[93]^c[95]^c[106]^c[107]^c[100]^c[99]^c[116]^c[108]^c[114]^c[111]^c[123]^c[124]^c[119]^c[117]^c[126]^c[130]^c[133]^c[142]^c[143]^c[143]^c[135]^c[152]^c[144]^c[149]^c[152]^c[156]^c[153]^c[156]^c[166]^c[167]^c[170]^c[162]^c[179]^c[171]^c[174]^c[173]^c[180]^c[181]^c[180]^c[185]^c[181]^c[197]^c[189]^c[191]^c[189]; //row: 14 d[i2+14*Zc]=c[8]^c[113]^c[135]^c[150]^c[161]^c[195]; //row: 15 d[i2+15*Zc]=c[5]^c[0]^c[7]^c[7]^c[8]^c[7]^c[10]^c[15]^c[10]^c[11]^c[17]^c[18]^c[19]^c[23]^c[34]^c[35]^c[31]^c[32]^c[41]^c[44]^c[36]^c[37]^c[49]^c[53]^c[46]^c[59]^c[59]^c[55]^c[56]^c[68]^c[66]^c[69]^c[70]^c[77]^c[73]^c[80]^c[72]^c[84]^c[82]^c[82]^c[91]^c[94]^c[95]^c[96]^c[92]^c[99]^c[101]^c[99]^c[100]^c[109]^c[115]^c[111]^c[112]^c[125]^c[120]^c[117]^c[118]^c[125]^c[127]^c[131]^c[133]^c[134]^c[135]^c[135]^c[136]^c[145]^c[150]^c[152]^c[144]^c[157]^c[154]^c[156]^c[157]^c[168]^c[162]^c[162]^c[163]^c[166]^c[172]^c[175]^c[174]^c[182]^c[181]^c[185]^c[186]^c[190]^c[192]^c[189]^c[190]; //row: 16 d[i2+16*Zc]=c[3]^c[7]^c[5]^c[6]^c[17]^c[13]^c[9]^c[17]^c[25]^c[26]^c[21]^c[32]^c[33]^c[30]^c[30]^c[39]^c[42]^c[44]^c[47]^c[51]^c[53]^c[57]^c[57]^c[54]^c[66]^c[64]^c[68]^c[75]^c[80]^c[79]^c[82]^c[89]^c[89]^c[98]^c[92]^c[94]^c[106]^c[99]^c[107]^c[107]^c[116]^c[113]^c[110]^c[123]^c[118]^c[125]^c[134]^c[129]^c[132]^c[142]^c[142]^c[143]^c[152]^c[148]^c[151]^c[155]^c[161]^c[155]^c[166]^c[169]^c[170]^c[179]^c[173]^c[172]^c[180]^c[188]^c[184]^c[188]^c[197]^c[190]^c[197]; //row: 17 d[i2+17*Zc]=c[8]^c[127]^c[152]^c[161]^c[197]; //row: 18 d[i2+18*Zc]=c[16]^c[114]^c[125]^c[168]^c[179]; //row: 19 d[i2+19*Zc]=c[8]^c[17]^c[63]^c[80]^c[98]; //row: 20 d[i2+20*Zc]=c[6]^c[1]^c[8]^c[0]^c[3]^c[11]^c[16]^c[12]^c[19]^c[20]^c[24]^c[35]^c[27]^c[33]^c[35]^c[42]^c[36]^c[38]^c[50]^c[45]^c[47]^c[60]^c[60]^c[57]^c[69]^c[67]^c[71]^c[78]^c[74]^c[73]^c[85]^c[83]^c[83]^c[89]^c[92]^c[95]^c[97]^c[100]^c[102]^c[101]^c[107]^c[110]^c[116]^c[113]^c[117]^c[121]^c[119]^c[128]^c[132]^c[126]^c[136]^c[136]^c[137]^c[146]^c[151]^c[145]^c[158]^c[155]^c[158]^c[169]^c[163]^c[164]^c[173]^c[176]^c[175]^c[183]^c[182]^c[187]^c[191]^c[193]^c[191]; //row: 21 d[i2+21*Zc]=c[9]^c[45]^c[148]^c[188]^c[197]; //row: 22 d[i2+22*Zc]=c[8]^c[116]^c[125]^c[157]; //row: 23 d[i2+23*Zc]=c[17]^c[26]^c[98]^c[164]; //row: 24 d[i2+24*Zc]=c[3]^c[7]^c[5]^c[6]^c[1]^c[17]^c[13]^c[9]^c[25]^c[26]^c[21]^c[32]^c[33]^c[30]^c[27]^c[39]^c[42]^c[44]^c[44]^c[47]^c[51]^c[53]^c[57]^c[57]^c[54]^c[66]^c[64]^c[68]^c[75]^c[80]^c[79]^c[82]^c[89]^c[89]^c[98]^c[92]^c[94]^c[106]^c[99]^c[107]^c[103]^c[116]^c[113]^c[110]^c[123]^c[118]^c[125]^c[134]^c[129]^c[132]^c[142]^c[142]^c[143]^c[152]^c[148]^c[151]^c[155]^c[161]^c[155]^c[166]^c[169]^c[170]^c[179]^c[173]^c[172]^c[180]^c[188]^c[184]^c[197]^c[190]^c[197]; //row: 25 d[i2+25*Zc]=c[15]^c[62]^c[71]^c[128]; //row: 26 d[i2+26*Zc]=c[8]^c[26]^c[44]^c[141]; //row: 27 d[i2+27*Zc]=c[17]^c[62]^c[80]; //row: 28 d[i2+28*Zc]=c[4]^c[44]^c[172]^c[196]; //row: 29 d[i2+29*Zc]=c[1]^c[5]^c[3]^c[3]^c[4]^c[15]^c[11]^c[15]^c[16]^c[17]^c[23]^c[24]^c[19]^c[30]^c[31]^c[27]^c[28]^c[37]^c[40]^c[41]^c[42]^c[45]^c[49]^c[51]^c[55]^c[55]^c[60]^c[61]^c[64]^c[71]^c[65]^c[66]^c[73]^c[78]^c[76]^c[77]^c[89]^c[87]^c[87]^c[96]^c[90]^c[91]^c[92]^c[104]^c[106]^c[104]^c[105]^c[114]^c[111]^c[116]^c[108]^c[121]^c[125]^c[122]^c[123]^c[132]^c[127]^c[129]^c[130]^c[134]^c[140]^c[140]^c[141]^c[150]^c[146]^c[148]^c[149]^c[153]^c[159]^c[161]^c[153]^c[164]^c[167]^c[167]^c[168]^c[170]^c[177]^c[171]^c[179]^c[187]^c[186]^c[181]^c[182]^c[195]^c[197]^c[194]^c[195]; //row: 30 d[i2+30*Zc]=c[6]^c[1]^c[7]^c[8]^c[8]^c[0]^c[8]^c[11]^c[15]^c[16]^c[11]^c[12]^c[19]^c[20]^c[23]^c[24]^c[35]^c[27]^c[32]^c[33]^c[42]^c[44]^c[36]^c[37]^c[38]^c[50]^c[45]^c[46]^c[47]^c[60]^c[59]^c[60]^c[56]^c[57]^c[69]^c[66]^c[67]^c[70]^c[71]^c[78]^c[73]^c[74]^c[72]^c[73]^c[85]^c[83]^c[82]^c[83]^c[92]^c[94]^c[95]^c[96]^c[97]^c[98]^c[100]^c[102]^c[100]^c[101]^c[110]^c[116]^c[112]^c[113]^c[117]^c[120]^c[121]^c[118]^c[119]^c[125]^c[128]^c[131]^c[132]^c[134]^c[126]^c[136]^c[136]^c[136]^c[137]^c[146]^c[151]^c[144]^c[145]^c[158]^c[154]^c[155]^c[157]^c[158]^c[169]^c[162]^c[163]^c[163]^c[164]^c[173]^c[176]^c[174]^c[175]^c[183]^c[181]^c[182]^c[186]^c[187]^c[191]^c[193]^c[190]^c[191]; //row: 31 d[i2+31*Zc]=c[7]^c[5]^c[2]^c[0]^c[0]^c[7]^c[1]^c[7]^c[8]^c[12]^c[10]^c[17]^c[15]^c[13]^c[10]^c[11]^c[17]^c[20]^c[18]^c[21]^c[19]^c[25]^c[23]^c[27]^c[34]^c[28]^c[35]^c[34]^c[31]^c[32]^c[43]^c[41]^c[37]^c[44]^c[39]^c[36]^c[37]^c[51]^c[49]^c[46]^c[53]^c[48]^c[46]^c[61]^c[59]^c[61]^c[59]^c[58]^c[55]^c[56]^c[70]^c[68]^c[68]^c[66]^c[63]^c[69]^c[70]^c[71]^c[79]^c[77]^c[75]^c[73]^c[74]^c[80]^c[72]^c[86]^c[84]^c[84]^c[82]^c[84]^c[82]^c[93]^c[91]^c[96]^c[94]^c[98]^c[95]^c[96]^c[101]^c[99]^c[103]^c[101]^c[102]^c[99]^c[100]^c[111]^c[109]^c[108]^c[115]^c[114]^c[111]^c[112]^c[118]^c[125]^c[122]^c[120]^c[120]^c[117]^c[118]^c[129]^c[127]^c[133]^c[131]^c[127]^c[133]^c[134]^c[137]^c[135]^c[137]^c[135]^c[138]^c[136]^c[147]^c[145]^c[152]^c[150]^c[146]^c[152]^c[144]^c[159]^c[157]^c[156]^c[154]^c[159]^c[156]^c[157]^c[170]^c[168]^c[164]^c[162]^c[165]^c[162]^c[163]^c[174]^c[172]^c[177]^c[175]^c[176]^c[174]^c[184]^c[182]^c[183]^c[181]^c[188]^c[185]^c[186]^c[192]^c[190]^c[194]^c[192]^c[192]^c[189]^c[190]; //row: 32 d[i2+32*Zc]=c[4]^c[8]^c[5]^c[6]^c[6]^c[7]^c[8]^c[9]^c[13]^c[14]^c[9]^c[10]^c[26]^c[18]^c[21]^c[22]^c[33]^c[34]^c[30]^c[31]^c[40]^c[42]^c[43]^c[44]^c[36]^c[48]^c[52]^c[53]^c[45]^c[58]^c[57]^c[58]^c[54]^c[55]^c[67]^c[64]^c[65]^c[68]^c[69]^c[76]^c[80]^c[72]^c[79]^c[80]^c[83]^c[81]^c[89]^c[81]^c[90]^c[92]^c[93]^c[94]^c[95]^c[107]^c[100]^c[107]^c[99]^c[108]^c[114]^c[110]^c[111]^c[111]^c[124]^c[118]^c[119]^c[125]^c[117]^c[126]^c[129]^c[130]^c[132]^c[133]^c[134]^c[143]^c[143]^c[143]^c[135]^c[144]^c[149]^c[151]^c[152]^c[156]^c[161]^c[153]^c[155]^c[156]^c[167]^c[169]^c[170]^c[170]^c[162]^c[171]^c[174]^c[172]^c[173]^c[181]^c[188]^c[180]^c[184]^c[185]^c[189]^c[191]^c[197]^c[189]; //row: 33 d[i2+33*Zc]=c[17]^c[26]^c[102]^c[197]; //row: 34 d[i2+34*Zc]=c[7]^c[71]^c[143]^c[161]; //row: 35 d[i2+35*Zc]=c[1]^c[5]^c[3]^c[4]^c[15]^c[11]^c[16]^c[9]^c[23]^c[24]^c[19]^c[30]^c[31]^c[28]^c[37]^c[40]^c[42]^c[45]^c[49]^c[51]^c[55]^c[55]^c[61]^c[61]^c[64]^c[71]^c[66]^c[73]^c[78]^c[77]^c[89]^c[87]^c[87]^c[96]^c[90]^c[92]^c[104]^c[106]^c[105]^c[114]^c[111]^c[108]^c[116]^c[121]^c[125]^c[123]^c[132]^c[127]^c[130]^c[140]^c[140]^c[141]^c[150]^c[146]^c[149]^c[153]^c[159]^c[153]^c[164]^c[167]^c[168]^c[177]^c[171]^c[179]^c[187]^c[186]^c[182]^c[195]^c[197]^c[195]; //row: 36 d[i2+36*Zc]=c[8]^c[132]^c[143]^c[170]; //row: 37 d[i2+37*Zc]=c[3]^c[4]^c[8]^c[6]^c[7]^c[17]^c[9]^c[14]^c[10]^c[17]^c[25]^c[26]^c[18]^c[22]^c[32]^c[33]^c[34]^c[31]^c[40]^c[43]^c[36]^c[47]^c[48]^c[52]^c[45]^c[57]^c[58]^c[58]^c[55]^c[67]^c[65]^c[69]^c[76]^c[72]^c[80]^c[82]^c[83]^c[81]^c[81]^c[98]^c[90]^c[93]^c[95]^c[106]^c[107]^c[100]^c[99]^c[116]^c[108]^c[114]^c[111]^c[123]^c[124]^c[119]^c[117]^c[125]^c[126]^c[130]^c[133]^c[142]^c[143]^c[143]^c[135]^c[152]^c[144]^c[149]^c[152]^c[156]^c[153]^c[156]^c[166]^c[167]^c[170]^c[162]^c[179]^c[171]^c[174]^c[173]^c[180]^c[181]^c[180]^c[185]^c[197]^c[189]^c[191]^c[189]; //row: 38 d[i2+38*Zc]=c[0]^c[89]^c[98]^c[116]; //row: 39 d[i2+39*Zc]=c[17]^c[35]^c[65]^c[179]; //row: 40 d[i2+40*Zc]=c[8]^c[80]^c[154]; //row: 41 d[i2+41*Zc]=c[17]^c[35]^c[89]^c[164]; //row: 42 d[i2+42*Zc]=c[3]^c[7]^c[4]^c[5]^c[5]^c[6]^c[8]^c[17]^c[12]^c[13]^c[17]^c[9]^c[25]^c[26]^c[20]^c[21]^c[32]^c[33]^c[29]^c[30]^c[39]^c[41]^c[42]^c[43]^c[44]^c[44]^c[47]^c[51]^c[52]^c[53]^c[57]^c[56]^c[57]^c[62]^c[54]^c[66]^c[63]^c[64]^c[67]^c[68]^c[75]^c[79]^c[80]^c[78]^c[79]^c[82]^c[89]^c[88]^c[89]^c[98]^c[91]^c[92]^c[93]^c[94]^c[106]^c[99]^c[106]^c[107]^c[116]^c[113]^c[109]^c[110]^c[123]^c[117]^c[118]^c[124]^c[125]^c[134]^c[128]^c[129]^c[131]^c[132]^c[142]^c[142]^c[142]^c[143]^c[152]^c[148]^c[150]^c[151]^c[155]^c[160]^c[161]^c[154]^c[155]^c[166]^c[168]^c[169]^c[169]^c[170]^c[179]^c[173]^c[171]^c[172]^c[180]^c[187]^c[188]^c[183]^c[184]^c[197]^c[190]^c[196]^c[197]; //row: 43 d[i2+43*Zc]=c[4]^c[8]^c[6]^c[6]^c[7]^c[9]^c[14]^c[9]^c[10]^c[15]^c[26]^c[18]^c[22]^c[33]^c[34]^c[30]^c[31]^c[40]^c[43]^c[44]^c[36]^c[48]^c[52]^c[45]^c[58]^c[58]^c[54]^c[55]^c[67]^c[65]^c[68]^c[69]^c[76]^c[72]^c[79]^c[80]^c[83]^c[81]^c[81]^c[90]^c[93]^c[94]^c[95]^c[107]^c[100]^c[107]^c[99]^c[108]^c[114]^c[110]^c[111]^c[124]^c[119]^c[125]^c[117]^c[126]^c[130]^c[132]^c[133]^c[143]^c[143]^c[135]^c[144]^c[149]^c[151]^c[152]^c[152]^c[156]^c[153]^c[155]^c[156]^c[167]^c[170]^c[170]^c[162]^c[170]^c[171]^c[174]^c[173]^c[181]^c[180]^c[184]^c[185]^c[189]^c[191]^c[197]^c[189]; //row: 44 d[i2+44*Zc]=c[6]^c[1]^c[8]^c[0]^c[8]^c[11]^c[16]^c[12]^c[19]^c[20]^c[24]^c[35]^c[27]^c[33]^c[42]^c[36]^c[38]^c[50]^c[45]^c[47]^c[60]^c[60]^c[57]^c[69]^c[67]^c[71]^c[71]^c[78]^c[74]^c[73]^c[85]^c[83]^c[83]^c[89]^c[92]^c[95]^c[97]^c[100]^c[102]^c[101]^c[110]^c[116]^c[113]^c[117]^c[121]^c[119]^c[128]^c[132]^c[126]^c[136]^c[136]^c[137]^c[146]^c[151]^c[145]^c[158]^c[155]^c[158]^c[169]^c[163]^c[164]^c[173]^c[176]^c[175]^c[183]^c[182]^c[187]^c[191]^c[193]^c[191]; //row: 45 d[i2+45*Zc]=c[14]^c[62]^c[98]; } break; case 10: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[2]^c[2]^c[7]^c[9]^c[14]^c[16]^c[17]^c[22]^c[23]^c[29]^c[38]^c[36]^c[39]^c[40]^c[49]^c[46]^c[59]^c[50]^c[57]^c[68]^c[66]^c[60]^c[72]^c[71]^c[74]^c[83]^c[89]^c[88]^c[94]^c[99]^c[90]^c[101]^c[105]^c[100]^c[114]^c[118]^c[112]^c[123]^c[129]^c[122]^c[132]^c[134]^c[133]^c[145]^c[142]^c[142]^c[157]^c[155]^c[150]^c[169]^c[161]^c[163]^c[172]^c[173]^c[177]^c[182]^c[185]^c[186]^c[195]^c[199]^c[199]^c[208]^c[205]^c[208]^c[211]^c[210]^c[217]; //row: 1 d[i2+1*Zc]=c[2]^c[3]^c[3]^c[8]^c[0]^c[14]^c[15]^c[17]^c[18]^c[22]^c[23]^c[24]^c[20]^c[38]^c[39]^c[37]^c[30]^c[41]^c[40]^c[47]^c[59]^c[50]^c[51]^c[58]^c[68]^c[69]^c[67]^c[61]^c[73]^c[72]^c[75]^c[84]^c[80]^c[89]^c[94]^c[95]^c[90]^c[91]^c[101]^c[102]^c[106]^c[101]^c[114]^c[115]^c[119]^c[113]^c[123]^c[124]^c[120]^c[123]^c[132]^c[133]^c[135]^c[134]^c[146]^c[143]^c[143]^c[157]^c[158]^c[156]^c[151]^c[169]^c[160]^c[162]^c[164]^c[173]^c[174]^c[178]^c[182]^c[183]^c[186]^c[187]^c[195]^c[196]^c[190]^c[190]^c[208]^c[209]^c[206]^c[209]^c[211]^c[212]^c[211]^c[218]; //row: 2 d[i2+2*Zc]=c[3]^c[3]^c[7]^c[8]^c[9]^c[0]^c[15]^c[16]^c[17]^c[17]^c[18]^c[23]^c[24]^c[29]^c[20]^c[39]^c[37]^c[39]^c[30]^c[41]^c[49]^c[40]^c[46]^c[47]^c[50]^c[51]^c[57]^c[58]^c[69]^c[66]^c[67]^c[60]^c[61]^c[73]^c[71]^c[72]^c[74]^c[75]^c[84]^c[89]^c[80]^c[88]^c[89]^c[95]^c[90]^c[90]^c[91]^c[102]^c[105]^c[106]^c[100]^c[101]^c[115]^c[119]^c[112]^c[113]^c[124]^c[120]^c[122]^c[123]^c[133]^c[134]^c[135]^c[133]^c[134]^c[146]^c[142]^c[143]^c[142]^c[143]^c[158]^c[156]^c[150]^c[151]^c[160]^c[162]^c[163]^c[164]^c[173]^c[173]^c[174]^c[177]^c[178]^c[183]^c[185]^c[186]^c[186]^c[187]^c[196]^c[190]^c[199]^c[190]^c[209]^c[205]^c[206]^c[208]^c[209]^c[212]^c[211]^c[217]^c[218]; //row: 3 d[i2+3*Zc]=c[3]^c[3]^c[8]^c[9]^c[0]^c[15]^c[17]^c[17]^c[18]^c[23]^c[24]^c[20]^c[39]^c[37]^c[39]^c[30]^c[41]^c[40]^c[46]^c[47]^c[50]^c[51]^c[58]^c[69]^c[67]^c[60]^c[61]^c[73]^c[72]^c[74]^c[75]^c[84]^c[80]^c[88]^c[89]^c[95]^c[90]^c[91]^c[102]^c[106]^c[100]^c[101]^c[115]^c[119]^c[112]^c[113]^c[124]^c[120]^c[122]^c[123]^c[133]^c[135]^c[133]^c[134]^c[146]^c[143]^c[142]^c[143]^c[158]^c[156]^c[151]^c[160]^c[162]^c[163]^c[164]^c[173]^c[174]^c[177]^c[178]^c[183]^c[186]^c[186]^c[187]^c[196]^c[190]^c[190]^c[209]^c[206]^c[208]^c[209]^c[212]^c[211]^c[217]^c[218]; //row: 4 d[i2+4*Zc]=c[2]^c[14]; //row: 5 d[i2+5*Zc]=c[1]^c[1]^c[6]^c[8]^c[2]^c[13]^c[15]^c[16]^c[11]^c[21]^c[22]^c[28]^c[37]^c[35]^c[38]^c[39]^c[49]^c[48]^c[45]^c[58]^c[59]^c[56]^c[67]^c[65]^c[69]^c[71]^c[70]^c[73]^c[82]^c[88]^c[87]^c[93]^c[98]^c[99]^c[100]^c[104]^c[109]^c[113]^c[117]^c[111]^c[122]^c[128]^c[121]^c[127]^c[131]^c[133]^c[132]^c[144]^c[141]^c[141]^c[156]^c[154]^c[159]^c[168]^c[160]^c[162]^c[160]^c[171]^c[172]^c[176]^c[181]^c[184]^c[185]^c[194]^c[198]^c[198]^c[207]^c[204]^c[207]^c[210]^c[219]^c[216]^c[216]; //row: 6 d[i2+6*Zc]=c[8]^c[60]^c[102]^c[112]^c[131]^c[171]^c[187]^c[204]; //row: 7 d[i2+7*Zc]=c[1]^c[17]^c[46]^c[79]^c[84]^c[145]; //row: 8 d[i2+8*Zc]=c[7]^c[7]^c[7]^c[7]^c[2]^c[1]^c[2]^c[4]^c[3]^c[4]^c[4]^c[19]^c[19]^c[11]^c[10]^c[11]^c[12]^c[11]^c[12]^c[12]^c[27]^c[27]^c[28]^c[28]^c[24]^c[23]^c[24]^c[33]^c[33]^c[31]^c[31]^c[34]^c[33]^c[34]^c[39]^c[45]^c[45]^c[44]^c[43]^c[44]^c[41]^c[40]^c[41]^c[54]^c[54]^c[55]^c[55]^c[52]^c[51]^c[52]^c[63]^c[63]^c[61]^c[60]^c[61]^c[65]^c[64]^c[65]^c[77]^c[77]^c[76]^c[75]^c[76]^c[79]^c[78]^c[79]^c[88]^c[88]^c[84]^c[83]^c[84]^c[83]^c[82]^c[83]^c[99]^c[99]^c[94]^c[94]^c[95]^c[94]^c[95]^c[106]^c[106]^c[100]^c[109]^c[100]^c[105]^c[104]^c[105]^c[119]^c[119]^c[113]^c[113]^c[117]^c[116]^c[117]^c[128]^c[128]^c[124]^c[124]^c[127]^c[126]^c[127]^c[120]^c[137]^c[137]^c[139]^c[138]^c[139]^c[138]^c[137]^c[138]^c[140]^c[140]^c[147]^c[146]^c[147]^c[147]^c[146]^c[147]^c[152]^c[152]^c[150]^c[150]^c[155]^c[154]^c[155]^c[164]^c[164]^c[166]^c[166]^c[168]^c[167]^c[168]^c[165]^c[177]^c[177]^c[178]^c[177]^c[178]^c[172]^c[171]^c[172]^c[187]^c[187]^c[180]^c[189]^c[180]^c[181]^c[180]^c[181]^c[190]^c[190]^c[194]^c[194]^c[194]^c[193]^c[194]^c[199]^c[203]^c[203]^c[200]^c[209]^c[200]^c[203]^c[202]^c[203]^c[216]^c[216]^c[215]^c[215]^c[212]^c[211]^c[212]^c[218]; //row: 9 d[i2+9*Zc]=c[8]^c[13]^c[105]^c[115]^c[130]^c[176]^c[184]^c[208]; //row: 10 d[i2+10*Zc]=c[13]^c[29]^c[40]^c[74]^c[80]^c[140]; //row: 11 d[i2+11*Zc]=c[5]^c[2]^c[3]^c[5]^c[3]^c[0]^c[8]^c[2]^c[0]^c[5]^c[17]^c[14]^c[15]^c[19]^c[17]^c[10]^c[18]^c[16]^c[25]^c[22]^c[23]^c[26]^c[24]^c[22]^c[20]^c[31]^c[38]^c[39]^c[39]^c[37]^c[32]^c[30]^c[43]^c[41]^c[42]^c[40]^c[49]^c[47]^c[52]^c[59]^c[50]^c[53]^c[51]^c[50]^c[58]^c[61]^c[68]^c[69]^c[69]^c[67]^c[63]^c[61]^c[75]^c[73]^c[74]^c[72]^c[77]^c[75]^c[86]^c[84]^c[82]^c[80]^c[81]^c[89]^c[97]^c[94]^c[95]^c[92]^c[90]^c[93]^c[91]^c[104]^c[101]^c[102]^c[108]^c[106]^c[103]^c[101]^c[117]^c[114]^c[115]^c[111]^c[119]^c[115]^c[113]^c[126]^c[123]^c[124]^c[122]^c[120]^c[125]^c[123]^c[129]^c[135]^c[132]^c[133]^c[137]^c[135]^c[136]^c[134]^c[148]^c[146]^c[145]^c[143]^c[145]^c[143]^c[150]^c[157]^c[158]^c[158]^c[156]^c[153]^c[151]^c[162]^c[169]^c[160]^c[164]^c[162]^c[166]^c[164]^c[168]^c[175]^c[173]^c[176]^c[174]^c[170]^c[178]^c[185]^c[182]^c[183]^c[188]^c[186]^c[189]^c[187]^c[198]^c[195]^c[196]^c[192]^c[190]^c[192]^c[190]^c[201]^c[208]^c[209]^c[208]^c[206]^c[201]^c[209]^c[214]^c[211]^c[212]^c[213]^c[211]^c[210]^c[218]^c[216]; //row: 12 d[i2+12*Zc]=c[8]^c[14]^c[108]^c[117]^c[134]^c[181]; //row: 13 d[i2+13*Zc]=c[9]^c[0]^c[0]^c[5]^c[7]^c[8]^c[11]^c[12]^c[14]^c[15]^c[29]^c[20]^c[21]^c[27]^c[35]^c[36]^c[34]^c[37]^c[31]^c[48]^c[47]^c[44]^c[56]^c[57]^c[58]^c[55]^c[65]^c[66]^c[64]^c[68]^c[70]^c[79]^c[72]^c[72]^c[81]^c[87]^c[86]^c[91]^c[92]^c[97]^c[98]^c[108]^c[109]^c[103]^c[108]^c[111]^c[112]^c[116]^c[110]^c[120]^c[121]^c[127]^c[120]^c[139]^c[130]^c[132]^c[131]^c[143]^c[140]^c[140]^c[154]^c[155]^c[153]^c[158]^c[166]^c[167]^c[169]^c[161]^c[170]^c[171]^c[175]^c[189]^c[180]^c[183]^c[184]^c[192]^c[193]^c[197]^c[197]^c[205]^c[206]^c[203]^c[206]^c[209]^c[218]^c[219]^c[218]^c[215]; //row: 14 d[i2+14*Zc]=c[7]^c[128]^c[153]^c[160]^c[178]^c[217]; //row: 15 d[i2+15*Zc]=c[4]^c[4]^c[9]^c[0]^c[1]^c[8]^c[16]^c[18]^c[18]^c[19]^c[19]^c[24]^c[25]^c[21]^c[30]^c[38]^c[30]^c[31]^c[42]^c[41]^c[47]^c[48]^c[51]^c[52]^c[59]^c[60]^c[68]^c[61]^c[62]^c[74]^c[73]^c[75]^c[76]^c[85]^c[81]^c[89]^c[80]^c[96]^c[91]^c[92]^c[103]^c[107]^c[101]^c[102]^c[109]^c[116]^c[110]^c[113]^c[114]^c[125]^c[121]^c[123]^c[124]^c[134]^c[136]^c[134]^c[135]^c[139]^c[147]^c[144]^c[143]^c[144]^c[159]^c[157]^c[152]^c[161]^c[163]^c[164]^c[165]^c[174]^c[175]^c[178]^c[179]^c[184]^c[187]^c[187]^c[188]^c[183]^c[197]^c[191]^c[191]^c[200]^c[207]^c[209]^c[200]^c[213]^c[212]^c[218]^c[219]; //row: 16 d[i2+16*Zc]=c[2]^c[2]^c[7]^c[9]^c[14]^c[16]^c[17]^c[18]^c[22]^c[23]^c[29]^c[38]^c[36]^c[39]^c[39]^c[40]^c[49]^c[46]^c[59]^c[50]^c[57]^c[68]^c[66]^c[60]^c[72]^c[71]^c[74]^c[83]^c[89]^c[88]^c[94]^c[99]^c[90]^c[101]^c[105]^c[100]^c[114]^c[118]^c[112]^c[114]^c[123]^c[129]^c[122]^c[132]^c[134]^c[133]^c[145]^c[142]^c[142]^c[157]^c[155]^c[150]^c[169]^c[161]^c[163]^c[172]^c[173]^c[177]^c[182]^c[185]^c[186]^c[195]^c[199]^c[199]^c[208]^c[205]^c[208]^c[204]^c[211]^c[210]^c[217]; //row: 17 d[i2+17*Zc]=c[6]^c[146]^c[167]^c[170]^c[217]; //row: 18 d[i2+18*Zc]=c[19]^c[123]^c[130]^c[180]^c[194]; //row: 19 d[i2+19*Zc]=c[3]^c[10]^c[70]^c[89]^c[100]; //row: 20 d[i2+20*Zc]=c[2]^c[2]^c[7]^c[9]^c[0]^c[14]^c[16]^c[17]^c[22]^c[23]^c[29]^c[38]^c[36]^c[39]^c[31]^c[40]^c[49]^c[46]^c[59]^c[50]^c[57]^c[68]^c[66]^c[60]^c[72]^c[71]^c[74]^c[83]^c[89]^c[88]^c[94]^c[99]^c[90]^c[99]^c[101]^c[105]^c[100]^c[114]^c[118]^c[112]^c[119]^c[123]^c[129]^c[122]^c[132]^c[134]^c[133]^c[145]^c[142]^c[142]^c[157]^c[155]^c[150]^c[169]^c[161]^c[163]^c[172]^c[173]^c[177]^c[182]^c[185]^c[186]^c[195]^c[199]^c[199]^c[208]^c[205]^c[208]^c[211]^c[210]^c[217]; //row: 21 d[i2+21*Zc]=c[18]^c[54]^c[161]^c[202]^c[212]; //row: 22 d[i2+22*Zc]=c[6]^c[129]^c[134]^c[175]; //row: 23 d[i2+23*Zc]=c[18]^c[29]^c[102]^c[184]; //row: 24 d[i2+24*Zc]=c[3]^c[3]^c[8]^c[0]^c[8]^c[15]^c[17]^c[18]^c[23]^c[24]^c[20]^c[39]^c[37]^c[30]^c[39]^c[41]^c[40]^c[47]^c[49]^c[50]^c[51]^c[58]^c[69]^c[67]^c[61]^c[73]^c[72]^c[75]^c[84]^c[80]^c[89]^c[95]^c[90]^c[91]^c[102]^c[106]^c[101]^c[115]^c[119]^c[113]^c[116]^c[124]^c[120]^c[123]^c[133]^c[135]^c[134]^c[146]^c[143]^c[143]^c[158]^c[156]^c[151]^c[160]^c[162]^c[164]^c[173]^c[174]^c[178]^c[183]^c[186]^c[187]^c[196]^c[190]^c[190]^c[209]^c[206]^c[209]^c[212]^c[211]^c[218]; //row: 25 d[i2+25*Zc]=c[11]^c[64]^c[75]^c[145]; //row: 26 d[i2+26*Zc]=c[9]^c[29]^c[47]^c[156]; //row: 27 d[i2+27*Zc]=c[19]^c[68]^c[83]; //row: 28 d[i2+28*Zc]=c[0]^c[42]^c[199]^c[213]; //row: 29 d[i2+29*Zc]=c[2]^c[2]^c[7]^c[8]^c[9]^c[14]^c[16]^c[16]^c[17]^c[16]^c[22]^c[23]^c[29]^c[38]^c[36]^c[38]^c[39]^c[40]^c[49]^c[45]^c[46]^c[59]^c[50]^c[57]^c[68]^c[66]^c[69]^c[60]^c[72]^c[71]^c[73]^c[74]^c[83]^c[89]^c[87]^c[88]^c[94]^c[99]^c[90]^c[101]^c[105]^c[109]^c[100]^c[114]^c[118]^c[111]^c[112]^c[123]^c[129]^c[121]^c[122]^c[132]^c[134]^c[132]^c[133]^c[145]^c[142]^c[141]^c[142]^c[147]^c[157]^c[155]^c[150]^c[169]^c[161]^c[162]^c[163]^c[172]^c[173]^c[176]^c[177]^c[182]^c[185]^c[185]^c[186]^c[186]^c[195]^c[199]^c[199]^c[208]^c[205]^c[207]^c[208]^c[211]^c[210]^c[216]^c[217]; //row: 30 d[i2+30*Zc]=c[8]^c[8]^c[2]^c[3]^c[4]^c[5]^c[0]^c[10]^c[11]^c[12]^c[12]^c[13]^c[28]^c[29]^c[24]^c[25]^c[34]^c[32]^c[34]^c[35]^c[46]^c[44]^c[45]^c[41]^c[42]^c[55]^c[56]^c[52]^c[53]^c[64]^c[61]^c[62]^c[65]^c[66]^c[78]^c[76]^c[77]^c[79]^c[70]^c[89]^c[84]^c[85]^c[83]^c[84]^c[90]^c[95]^c[95]^c[96]^c[107]^c[100]^c[101]^c[105]^c[106]^c[102]^c[110]^c[114]^c[117]^c[118]^c[129]^c[125]^c[127]^c[128]^c[138]^c[139]^c[130]^c[138]^c[139]^c[134]^c[141]^c[147]^c[148]^c[147]^c[148]^c[153]^c[151]^c[155]^c[156]^c[165]^c[167]^c[168]^c[169]^c[178]^c[178]^c[179]^c[172]^c[173]^c[188]^c[180]^c[181]^c[181]^c[182]^c[191]^c[195]^c[194]^c[195]^c[204]^c[200]^c[201]^c[203]^c[204]^c[217]^c[216]^c[212]^c[213]; //row: 31 d[i2+31*Zc]=c[8]^c[5]^c[8]^c[5]^c[3]^c[0]^c[5]^c[1]^c[2]^c[10]^c[17]^c[12]^c[19]^c[13]^c[19]^c[10]^c[11]^c[28]^c[25]^c[29]^c[26]^c[25]^c[22]^c[34]^c[31]^c[32]^c[39]^c[35]^c[31]^c[32]^c[46]^c[43]^c[45]^c[42]^c[42]^c[48]^c[49]^c[55]^c[52]^c[56]^c[53]^c[53]^c[50]^c[64]^c[61]^c[62]^c[69]^c[66]^c[62]^c[63]^c[78]^c[75]^c[77]^c[74]^c[70]^c[76]^c[77]^c[77]^c[89]^c[86]^c[85]^c[82]^c[84]^c[80]^c[81]^c[90]^c[97]^c[95]^c[92]^c[96]^c[93]^c[107]^c[104]^c[101]^c[108]^c[106]^c[102]^c[103]^c[110]^c[117]^c[114]^c[111]^c[118]^c[114]^c[115]^c[129]^c[126]^c[125]^c[122]^c[128]^c[124]^c[125]^c[138]^c[135]^c[130]^c[137]^c[139]^c[135]^c[136]^c[141]^c[148]^c[148]^c[145]^c[148]^c[144]^c[145]^c[153]^c[150]^c[151]^c[158]^c[156]^c[153]^c[165]^c[162]^c[167]^c[164]^c[169]^c[165]^c[166]^c[178]^c[175]^c[179]^c[176]^c[173]^c[179]^c[170]^c[188]^c[185]^c[181]^c[188]^c[182]^c[188]^c[189]^c[191]^c[198]^c[195]^c[192]^c[195]^c[192]^c[204]^c[201]^c[201]^c[208]^c[204]^c[200]^c[201]^c[217]^c[214]^c[216]^c[213]^c[213]^c[219]^c[210]; //row: 32 d[i2+32*Zc]=c[0]^c[0]^c[4]^c[5]^c[6]^c[7]^c[9]^c[12]^c[13]^c[14]^c[14]^c[15]^c[20]^c[21]^c[26]^c[27]^c[36]^c[34]^c[36]^c[37]^c[48]^c[46]^c[47]^c[43]^c[44]^c[57]^c[58]^c[54]^c[55]^c[66]^c[63]^c[64]^c[67]^c[68]^c[70]^c[78]^c[79]^c[71]^c[72]^c[81]^c[86]^c[87]^c[85]^c[86]^c[92]^c[97]^c[97]^c[98]^c[109]^c[102]^c[103]^c[107]^c[108]^c[112]^c[116]^c[119]^c[110]^c[121]^c[127]^c[129]^c[120]^c[121]^c[130]^c[131]^c[132]^c[130]^c[131]^c[143]^c[149]^c[140]^c[149]^c[140]^c[140]^c[155]^c[153]^c[157]^c[158]^c[167]^c[169]^c[160]^c[161]^c[170]^c[170]^c[171]^c[174]^c[175]^c[180]^c[182]^c[183]^c[183]^c[184]^c[193]^c[197]^c[196]^c[197]^c[206]^c[202]^c[203]^c[205]^c[206]^c[219]^c[218]^c[214]^c[215]; //row: 33 d[i2+33*Zc]=c[19]^c[29]^c[119]^c[212]; //row: 34 d[i2+34*Zc]=c[6]^c[75]^c[154]^c[173]; //row: 35 d[i2+35*Zc]=c[7]^c[7]^c[2]^c[4]^c[19]^c[11]^c[12]^c[16]^c[27]^c[28]^c[24]^c[33]^c[31]^c[34]^c[45]^c[44]^c[41]^c[54]^c[55]^c[52]^c[63]^c[61]^c[65]^c[67]^c[77]^c[76]^c[79]^c[88]^c[84]^c[83]^c[99]^c[94]^c[95]^c[106]^c[100]^c[105]^c[119]^c[113]^c[117]^c[128]^c[124]^c[127]^c[124]^c[137]^c[139]^c[138]^c[140]^c[147]^c[147]^c[152]^c[150]^c[155]^c[164]^c[166]^c[168]^c[177]^c[178]^c[172]^c[187]^c[180]^c[181]^c[190]^c[194]^c[194]^c[203]^c[200]^c[203]^c[216]^c[215]^c[212]; //row: 36 d[i2+36*Zc]=c[8]^c[148]^c[157]^c[189]; //row: 37 d[i2+37*Zc]=c[7]^c[8]^c[8]^c[3]^c[5]^c[19]^c[10]^c[12]^c[13]^c[17]^c[27]^c[28]^c[29]^c[25]^c[33]^c[34]^c[32]^c[35]^c[46]^c[45]^c[42]^c[54]^c[55]^c[56]^c[53]^c[63]^c[64]^c[62]^c[66]^c[78]^c[77]^c[70]^c[89]^c[85]^c[84]^c[99]^c[90]^c[95]^c[96]^c[106]^c[107]^c[101]^c[106]^c[119]^c[110]^c[114]^c[118]^c[128]^c[129]^c[125]^c[128]^c[137]^c[138]^c[130]^c[139]^c[134]^c[141]^c[148]^c[148]^c[152]^c[153]^c[151]^c[156]^c[164]^c[165]^c[167]^c[169]^c[178]^c[179]^c[173]^c[187]^c[188]^c[181]^c[182]^c[190]^c[191]^c[195]^c[195]^c[203]^c[204]^c[201]^c[204]^c[216]^c[217]^c[216]^c[213]; //row: 38 d[i2+38*Zc]=c[0]^c[98]^c[103]^c[120]; //row: 39 d[i2+39*Zc]=c[11]^c[36]^c[71]^c[197]; //row: 40 d[i2+40*Zc]=c[1]^c[89]^c[176]; //row: 41 d[i2+41*Zc]=c[13]^c[36]^c[93]^c[186]; //row: 42 d[i2+42*Zc]=c[9]^c[9]^c[3]^c[4]^c[5]^c[6]^c[5]^c[11]^c[12]^c[13]^c[13]^c[14]^c[29]^c[20]^c[25]^c[26]^c[35]^c[33]^c[35]^c[36]^c[47]^c[45]^c[46]^c[42]^c[43]^c[44]^c[56]^c[57]^c[53]^c[54]^c[65]^c[62]^c[63]^c[66]^c[67]^c[79]^c[77]^c[78]^c[70]^c[71]^c[80]^c[85]^c[86]^c[84]^c[85]^c[91]^c[96]^c[96]^c[97]^c[108]^c[101]^c[102]^c[106]^c[107]^c[111]^c[115]^c[118]^c[119]^c[120]^c[126]^c[128]^c[129]^c[139]^c[130]^c[131]^c[139]^c[130]^c[142]^c[148]^c[149]^c[148]^c[149]^c[154]^c[152]^c[156]^c[157]^c[166]^c[168]^c[169]^c[160]^c[179]^c[179]^c[170]^c[173]^c[174]^c[189]^c[181]^c[182]^c[182]^c[183]^c[192]^c[196]^c[195]^c[196]^c[205]^c[201]^c[202]^c[204]^c[205]^c[218]^c[217]^c[213]^c[214]; //row: 43 d[i2+43*Zc]=c[5]^c[5]^c[0]^c[1]^c[2]^c[17]^c[19]^c[19]^c[10]^c[17]^c[25]^c[26]^c[22]^c[31]^c[39]^c[31]^c[32]^c[43]^c[42]^c[48]^c[49]^c[52]^c[53]^c[50]^c[61]^c[69]^c[62]^c[63]^c[75]^c[74]^c[76]^c[77]^c[86]^c[82]^c[80]^c[81]^c[97]^c[92]^c[93]^c[104]^c[108]^c[102]^c[103]^c[117]^c[111]^c[114]^c[115]^c[126]^c[122]^c[124]^c[125]^c[135]^c[137]^c[135]^c[136]^c[148]^c[145]^c[144]^c[145]^c[150]^c[158]^c[153]^c[162]^c[164]^c[165]^c[166]^c[168]^c[175]^c[176]^c[179]^c[170]^c[185]^c[188]^c[188]^c[189]^c[185]^c[198]^c[192]^c[192]^c[201]^c[208]^c[200]^c[201]^c[214]^c[213]^c[219]^c[210]; //row: 44 d[i2+44*Zc]=c[2]^c[2]^c[7]^c[9]^c[3]^c[14]^c[16]^c[17]^c[22]^c[23]^c[29]^c[38]^c[36]^c[39]^c[40]^c[49]^c[46]^c[59]^c[50]^c[57]^c[68]^c[66]^c[60]^c[72]^c[71]^c[74]^c[76]^c[83]^c[89]^c[88]^c[94]^c[99]^c[90]^c[98]^c[101]^c[105]^c[100]^c[114]^c[118]^c[112]^c[123]^c[129]^c[122]^c[132]^c[134]^c[133]^c[145]^c[142]^c[142]^c[157]^c[155]^c[150]^c[169]^c[161]^c[163]^c[172]^c[173]^c[177]^c[182]^c[185]^c[186]^c[195]^c[199]^c[199]^c[208]^c[205]^c[208]^c[211]^c[210]^c[217]; //row: 45 d[i2+45*Zc]=c[10]^c[67]^c[105]; } break; case 11: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[7]^c[10]^c[5]^c[8]^c[18]^c[12]^c[16]^c[23]^c[26]^c[25]^c[43]^c[40]^c[37]^c[51]^c[48]^c[47]^c[63]^c[58]^c[55]^c[76]^c[66]^c[72]^c[78]^c[83]^c[77]^c[92]^c[93]^c[90]^c[99]^c[104]^c[106]^c[117]^c[115]^c[116]^c[121]^c[122]^c[124]^c[140]^c[142]^c[135]^c[145]^c[153]^c[147]^c[157]^c[164]^c[162]^c[173]^c[175]^c[168]^c[181]^c[179]^c[182]^c[187]^c[196]^c[192]^c[204]^c[206]^c[208]^c[210]^c[217]^c[209]^c[222]^c[226]^c[230]^c[231]^c[235]^c[241]; //row: 1 d[i2+1*Zc]=c[7]^c[8]^c[0]^c[6]^c[9]^c[18]^c[19]^c[13]^c[17]^c[23]^c[24]^c[27]^c[26]^c[43]^c[33]^c[41]^c[38]^c[52]^c[49]^c[48]^c[63]^c[64]^c[59]^c[56]^c[76]^c[66]^c[67]^c[73]^c[79]^c[84]^c[78]^c[93]^c[94]^c[91]^c[99]^c[100]^c[105]^c[107]^c[117]^c[118]^c[116]^c[117]^c[121]^c[122]^c[123]^c[125]^c[140]^c[141]^c[132]^c[136]^c[145]^c[146]^c[143]^c[148]^c[158]^c[154]^c[163]^c[173]^c[174]^c[165]^c[169]^c[181]^c[182]^c[180]^c[183]^c[188]^c[197]^c[193]^c[204]^c[205]^c[207]^c[198]^c[210]^c[211]^c[218]^c[210]^c[222]^c[223]^c[227]^c[220]^c[231]^c[232]^c[236]^c[231]; //row: 2 d[i2+2*Zc]=c[8]^c[0]^c[5]^c[6]^c[8]^c[9]^c[19]^c[12]^c[13]^c[16]^c[17]^c[24]^c[27]^c[25]^c[26]^c[33]^c[41]^c[37]^c[38]^c[52]^c[48]^c[49]^c[47]^c[48]^c[64]^c[59]^c[55]^c[56]^c[66]^c[66]^c[67]^c[72]^c[73]^c[79]^c[83]^c[84]^c[77]^c[78]^c[93]^c[93]^c[94]^c[90]^c[91]^c[100]^c[105]^c[106]^c[107]^c[118]^c[115]^c[116]^c[116]^c[117]^c[122]^c[123]^c[124]^c[125]^c[141]^c[132]^c[135]^c[136]^c[146]^c[153]^c[143]^c[147]^c[148]^c[158]^c[164]^c[154]^c[162]^c[163]^c[174]^c[165]^c[168]^c[169]^c[182]^c[180]^c[182]^c[183]^c[188]^c[196]^c[197]^c[192]^c[193]^c[205]^c[206]^c[207]^c[208]^c[198]^c[211]^c[218]^c[209]^c[210]^c[223]^c[226]^c[227]^c[230]^c[220]^c[232]^c[236]^c[241]^c[231]; //row: 3 d[i2+3*Zc]=c[8]^c[0]^c[6]^c[8]^c[9]^c[19]^c[13]^c[16]^c[17]^c[24]^c[27]^c[26]^c[33]^c[41]^c[37]^c[38]^c[52]^c[49]^c[47]^c[48]^c[64]^c[59]^c[56]^c[66]^c[67]^c[72]^c[73]^c[79]^c[84]^c[77]^c[78]^c[93]^c[94]^c[90]^c[91]^c[100]^c[105]^c[107]^c[118]^c[116]^c[116]^c[117]^c[122]^c[123]^c[124]^c[125]^c[141]^c[132]^c[135]^c[136]^c[146]^c[143]^c[147]^c[148]^c[158]^c[154]^c[162]^c[163]^c[174]^c[165]^c[169]^c[182]^c[180]^c[182]^c[183]^c[188]^c[197]^c[192]^c[193]^c[205]^c[207]^c[208]^c[198]^c[211]^c[218]^c[210]^c[223]^c[227]^c[230]^c[220]^c[232]^c[236]^c[241]^c[231]; //row: 4 d[i2+4*Zc]=c[8]^c[13]; //row: 5 d[i2+5*Zc]=c[4]^c[7]^c[2]^c[5]^c[9]^c[15]^c[20]^c[13]^c[19]^c[31]^c[23]^c[22]^c[40]^c[37]^c[34]^c[41]^c[48]^c[45]^c[44]^c[60]^c[55]^c[63]^c[73]^c[74]^c[69]^c[86]^c[80]^c[85]^c[89]^c[90]^c[98]^c[107]^c[101]^c[103]^c[114]^c[112]^c[113]^c[129]^c[130]^c[121]^c[137]^c[139]^c[132]^c[134]^c[153]^c[150]^c[144]^c[154]^c[161]^c[159]^c[170]^c[172]^c[165]^c[178]^c[176]^c[179]^c[184]^c[195]^c[193]^c[189]^c[201]^c[203]^c[205]^c[218]^c[214]^c[217]^c[230]^c[223]^c[227]^c[239]^c[232]^c[238]^c[235]; //row: 6 d[i2+6*Zc]=c[7]^c[72]^c[120]^c[131]^c[149]^c[193]^c[206]^c[227]; //row: 7 d[i2+7*Zc]=c[2]^c[14]^c[47]^c[87]^c[93]^c[159]; //row: 8 d[i2+8*Zc]=c[2]^c[10]^c[5]^c[2]^c[0]^c[7]^c[8]^c[3]^c[10]^c[0]^c[6]^c[13]^c[21]^c[18]^c[14]^c[15]^c[11]^c[18]^c[19]^c[19]^c[29]^c[26]^c[32]^c[29]^c[31]^c[27]^c[28]^c[38]^c[35]^c[35]^c[43]^c[43]^c[39]^c[40]^c[43]^c[46]^c[54]^c[54]^c[50]^c[51]^c[53]^c[49]^c[50]^c[58]^c[55]^c[64]^c[61]^c[61]^c[57]^c[58]^c[71]^c[68]^c[72]^c[68]^c[69]^c[67]^c[74]^c[75]^c[84]^c[81]^c[78]^c[85]^c[86]^c[83]^c[79]^c[80]^c[98]^c[95]^c[88]^c[95]^c[96]^c[96]^c[92]^c[93]^c[105]^c[102]^c[99]^c[107]^c[101]^c[108]^c[109]^c[112]^c[120]^c[110]^c[117]^c[118]^c[111]^c[118]^c[119]^c[127]^c[124]^c[128]^c[125]^c[130]^c[126]^c[127]^c[135]^c[132]^c[137]^c[134]^c[141]^c[137]^c[138]^c[135]^c[151]^c[148]^c[148]^c[144]^c[145]^c[153]^c[149]^c[150]^c[163]^c[160]^c[159]^c[155]^c[156]^c[157]^c[164]^c[154]^c[168]^c[165]^c[170]^c[167]^c[174]^c[170]^c[171]^c[176]^c[184]^c[185]^c[182]^c[177]^c[184]^c[185]^c[179]^c[193]^c[190]^c[191]^c[187]^c[188]^c[187]^c[194]^c[195]^c[199]^c[207]^c[201]^c[208]^c[198]^c[203]^c[199]^c[200]^c[216]^c[213]^c[212]^c[209]^c[215]^c[211]^c[212]^c[214]^c[228]^c[225]^c[221]^c[228]^c[229]^c[225]^c[221]^c[222]^c[237]^c[234]^c[241]^c[238]^c[236]^c[232]^c[233]^c[234]; //row: 9 d[i2+9*Zc]=c[1]^c[21]^c[116]^c[121]^c[146]^c[195]^c[198]^c[226]; //row: 10 d[i2+10*Zc]=c[20]^c[32]^c[48]^c[87]^c[92]^c[156]; //row: 11 d[i2+11*Zc]=c[4]^c[1]^c[2]^c[7]^c[5]^c[2]^c[0]^c[5]^c[3]^c[2]^c[15]^c[12]^c[13]^c[20]^c[18]^c[13]^c[11]^c[13]^c[31]^c[28]^c[29]^c[23]^c[32]^c[22]^c[31]^c[40]^c[37]^c[38]^c[37]^c[35]^c[34]^c[43]^c[48]^c[46]^c[45]^c[54]^c[44]^c[53]^c[60]^c[57]^c[58]^c[55]^c[64]^c[63]^c[61]^c[73]^c[70]^c[71]^c[74]^c[72]^c[69]^c[67]^c[86]^c[84]^c[80]^c[78]^c[85]^c[83]^c[89]^c[98]^c[90]^c[88]^c[98]^c[96]^c[107]^c[104]^c[105]^c[101]^c[99]^c[103]^c[101]^c[114]^c[111]^c[112]^c[112]^c[110]^c[113]^c[111]^c[129]^c[126]^c[127]^c[130]^c[128]^c[121]^c[130]^c[137]^c[134]^c[135]^c[139]^c[137]^c[132]^c[141]^c[133]^c[153]^c[150]^c[151]^c[150]^c[148]^c[144]^c[153]^c[154]^c[163]^c[161]^c[159]^c[159]^c[157]^c[170]^c[167]^c[168]^c[172]^c[170]^c[165]^c[174]^c[178]^c[186]^c[176]^c[176]^c[185]^c[179]^c[177]^c[185]^c[195]^c[193]^c[193]^c[191]^c[189]^c[187]^c[201]^c[198]^c[199]^c[203]^c[201]^c[205]^c[203]^c[218]^c[215]^c[216]^c[214]^c[212]^c[217]^c[215]^c[230]^c[227]^c[228]^c[223]^c[221]^c[227]^c[225]^c[239]^c[236]^c[237]^c[232]^c[241]^c[238]^c[236]^c[231]; //row: 12 d[i2+12*Zc]=c[1]^c[18]^c[119]^c[131]^c[153]^c[207]; //row: 13 d[i2+13*Zc]=c[0]^c[1]^c[4]^c[10]^c[2]^c[2]^c[11]^c[12]^c[17]^c[21]^c[27]^c[28]^c[31]^c[30]^c[36]^c[37]^c[34]^c[42]^c[41]^c[45]^c[53]^c[52]^c[56]^c[57]^c[63]^c[60]^c[69]^c[70]^c[71]^c[66]^c[83]^c[77]^c[82]^c[77]^c[97]^c[98]^c[95]^c[103]^c[104]^c[109]^c[100]^c[110]^c[111]^c[120]^c[110]^c[125]^c[126]^c[127]^c[129]^c[133]^c[134]^c[136]^c[140]^c[149]^c[150]^c[147]^c[152]^c[162]^c[158]^c[156]^c[166]^c[167]^c[169]^c[173]^c[185]^c[186]^c[184]^c[176]^c[192]^c[190]^c[197]^c[208]^c[198]^c[200]^c[202]^c[214]^c[215]^c[211]^c[214]^c[226]^c[227]^c[220]^c[224]^c[225]^c[235]^c[236]^c[240]^c[235]; //row: 14 d[i2+14*Zc]=c[10]^c[134]^c[166]^c[177]^c[197]^c[231]; //row: 15 d[i2+15*Zc]=c[0]^c[3]^c[9]^c[0]^c[1]^c[10]^c[11]^c[16]^c[19]^c[20]^c[17]^c[27]^c[30]^c[29]^c[36]^c[33]^c[40]^c[41]^c[44]^c[52]^c[50]^c[51]^c[56]^c[62]^c[59]^c[69]^c[70]^c[75]^c[76]^c[82]^c[87]^c[80]^c[81]^c[96]^c[97]^c[93]^c[94]^c[103]^c[108]^c[99]^c[110]^c[119]^c[119]^c[120]^c[113]^c[125]^c[126]^c[127]^c[128]^c[133]^c[135]^c[138]^c[139]^c[149]^c[146]^c[150]^c[151]^c[146]^c[161]^c[157]^c[154]^c[155]^c[166]^c[168]^c[172]^c[185]^c[183]^c[185]^c[186]^c[191]^c[189]^c[195]^c[196]^c[208]^c[199]^c[200]^c[201]^c[208]^c[214]^c[210]^c[213]^c[226]^c[230]^c[222]^c[223]^c[235]^c[239]^c[233]^c[234]; //row: 16 d[i2+16*Zc]=c[0]^c[3]^c[9]^c[1]^c[11]^c[16]^c[20]^c[13]^c[27]^c[30]^c[29]^c[36]^c[33]^c[41]^c[39]^c[44]^c[52]^c[51]^c[56]^c[62]^c[59]^c[69]^c[70]^c[76]^c[82]^c[87]^c[81]^c[96]^c[97]^c[94]^c[103]^c[108]^c[99]^c[110]^c[119]^c[120]^c[125]^c[126]^c[128]^c[122]^c[133]^c[135]^c[139]^c[149]^c[146]^c[151]^c[161]^c[157]^c[155]^c[166]^c[168]^c[172]^c[185]^c[183]^c[186]^c[191]^c[189]^c[196]^c[208]^c[199]^c[201]^c[214]^c[210]^c[213]^c[226]^c[230]^c[223]^c[220]^c[235]^c[239]^c[234]; //row: 17 d[i2+17*Zc]=c[10]^c[161]^c[180]^c[192]^c[233]; //row: 18 d[i2+18*Zc]=c[13]^c[142]^c[146]^c[202]^c[215]; //row: 19 d[i2+19*Zc]=c[9]^c[21]^c[80]^c[92]^c[115]; //row: 20 d[i2+20*Zc]=c[4]^c[7]^c[2]^c[5]^c[0]^c[15]^c[20]^c[13]^c[31]^c[23]^c[22]^c[40]^c[37]^c[34]^c[42]^c[48]^c[45]^c[44]^c[60]^c[55]^c[63]^c[73]^c[74]^c[69]^c[86]^c[80]^c[85]^c[89]^c[90]^c[98]^c[107]^c[101]^c[103]^c[99]^c[114]^c[112]^c[113]^c[129]^c[130]^c[121]^c[122]^c[137]^c[139]^c[132]^c[153]^c[150]^c[144]^c[154]^c[161]^c[159]^c[170]^c[172]^c[165]^c[178]^c[176]^c[179]^c[195]^c[193]^c[189]^c[201]^c[203]^c[205]^c[218]^c[214]^c[217]^c[230]^c[223]^c[227]^c[239]^c[232]^c[238]; //row: 21 d[i2+21*Zc]=c[18]^c[65]^c[180]^c[230]^c[240]; //row: 22 d[i2+22*Zc]=c[4]^c[134]^c[147]^c[189]; //row: 23 d[i2+23*Zc]=c[17]^c[27]^c[114]^c[204]; //row: 24 d[i2+24*Zc]=c[3]^c[6]^c[1]^c[4]^c[4]^c[14]^c[19]^c[12]^c[30]^c[22]^c[32]^c[39]^c[36]^c[33]^c[37]^c[47]^c[44]^c[54]^c[50]^c[59]^c[65]^c[62]^c[72]^c[73]^c[68]^c[85]^c[79]^c[84]^c[88]^c[89]^c[97]^c[106]^c[100]^c[102]^c[113]^c[111]^c[112]^c[128]^c[129]^c[131]^c[122]^c[136]^c[138]^c[142]^c[152]^c[149]^c[143]^c[164]^c[160]^c[158]^c[169]^c[171]^c[175]^c[177]^c[186]^c[178]^c[194]^c[192]^c[188]^c[200]^c[202]^c[204]^c[217]^c[213]^c[216]^c[229]^c[222]^c[226]^c[238]^c[231]^c[237]; //row: 25 d[i2+25*Zc]=c[14]^c[67]^c[77]^c[163]; //row: 26 d[i2+26*Zc]=c[5]^c[28]^c[49]^c[175]; //row: 27 d[i2+27*Zc]=c[13]^c[72]^c[91]; //row: 28 d[i2+28*Zc]=c[2]^c[44]^c[215]^c[232]; //row: 29 d[i2+29*Zc]=c[5]^c[8]^c[3]^c[5]^c[6]^c[16]^c[21]^c[13]^c[14]^c[19]^c[32]^c[24]^c[23]^c[41]^c[38]^c[34]^c[35]^c[49]^c[46]^c[44]^c[45]^c[61]^c[56]^c[64]^c[74]^c[75]^c[69]^c[70]^c[87]^c[81]^c[85]^c[86]^c[90]^c[91]^c[98]^c[88]^c[108]^c[102]^c[104]^c[115]^c[113]^c[113]^c[114]^c[130]^c[131]^c[121]^c[122]^c[138]^c[140]^c[132]^c[133]^c[143]^c[151]^c[144]^c[145]^c[155]^c[162]^c[159]^c[160]^c[158]^c[171]^c[173]^c[166]^c[179]^c[177]^c[179]^c[180]^c[196]^c[194]^c[189]^c[190]^c[202]^c[204]^c[205]^c[206]^c[198]^c[219]^c[215]^c[218]^c[220]^c[224]^c[227]^c[228]^c[240]^c[233]^c[238]^c[239]; //row: 30 d[i2+30*Zc]=c[0]^c[3]^c[8]^c[9]^c[0]^c[1]^c[5]^c[11]^c[15]^c[16]^c[19]^c[20]^c[27]^c[30]^c[28]^c[29]^c[36]^c[33]^c[40]^c[41]^c[44]^c[51]^c[52]^c[50]^c[51]^c[56]^c[62]^c[58]^c[59]^c[69]^c[69]^c[70]^c[75]^c[76]^c[82]^c[86]^c[87]^c[80]^c[81]^c[96]^c[96]^c[97]^c[93]^c[94]^c[103]^c[108]^c[109]^c[99]^c[110]^c[118]^c[119]^c[119]^c[120]^c[114]^c[125]^c[126]^c[127]^c[128]^c[133]^c[135]^c[138]^c[139]^c[149]^c[145]^c[146]^c[150]^c[151]^c[149]^c[161]^c[156]^c[157]^c[154]^c[155]^c[166]^c[168]^c[171]^c[172]^c[185]^c[183]^c[185]^c[186]^c[191]^c[188]^c[189]^c[195]^c[196]^c[208]^c[198]^c[199]^c[200]^c[201]^c[214]^c[210]^c[212]^c[213]^c[226]^c[229]^c[230]^c[222]^c[223]^c[235]^c[239]^c[233]^c[234]; //row: 31 d[i2+31*Zc]=c[0]^c[10]^c[3]^c[2]^c[9]^c[8]^c[1]^c[10]^c[0]^c[11]^c[21]^c[16]^c[15]^c[20]^c[18]^c[19]^c[12]^c[27]^c[26]^c[30]^c[29]^c[29]^c[28]^c[36]^c[35]^c[33]^c[43]^c[41]^c[39]^c[40]^c[44]^c[54]^c[52]^c[51]^c[51]^c[49]^c[50]^c[56]^c[55]^c[62]^c[61]^c[59]^c[58]^c[69]^c[68]^c[70]^c[69]^c[76]^c[74]^c[75]^c[82]^c[81]^c[87]^c[86]^c[81]^c[79]^c[80]^c[87]^c[96]^c[95]^c[97]^c[96]^c[94]^c[92]^c[93]^c[103]^c[102]^c[108]^c[107]^c[99]^c[109]^c[110]^c[120]^c[119]^c[118]^c[120]^c[118]^c[119]^c[125]^c[124]^c[126]^c[125]^c[128]^c[126]^c[127]^c[133]^c[132]^c[135]^c[134]^c[139]^c[137]^c[138]^c[149]^c[148]^c[146]^c[145]^c[151]^c[149]^c[150]^c[161]^c[160]^c[157]^c[156]^c[155]^c[164]^c[154]^c[166]^c[165]^c[168]^c[167]^c[172]^c[171]^c[185]^c[184]^c[183]^c[182]^c[186]^c[184]^c[185]^c[191]^c[190]^c[189]^c[188]^c[196]^c[194]^c[195]^c[208]^c[207]^c[199]^c[198]^c[201]^c[199]^c[200]^c[214]^c[213]^c[210]^c[209]^c[213]^c[212]^c[226]^c[225]^c[230]^c[229]^c[223]^c[221]^c[222]^c[235]^c[234]^c[239]^c[238]^c[234]^c[232]^c[233]; //row: 32 d[i2+32*Zc]=c[3]^c[6]^c[0]^c[1]^c[3]^c[4]^c[9]^c[14]^c[18]^c[19]^c[11]^c[12]^c[30]^c[22]^c[31]^c[32]^c[39]^c[36]^c[43]^c[33]^c[47]^c[54]^c[44]^c[53]^c[54]^c[59]^c[65]^c[61]^c[62]^c[72]^c[72]^c[73]^c[67]^c[68]^c[85]^c[78]^c[79]^c[83]^c[84]^c[88]^c[88]^c[89]^c[96]^c[97]^c[106]^c[100]^c[101]^c[102]^c[113]^c[110]^c[111]^c[111]^c[112]^c[128]^c[129]^c[130]^c[131]^c[136]^c[138]^c[141]^c[142]^c[132]^c[152]^c[148]^c[149]^c[153]^c[143]^c[164]^c[159]^c[160]^c[157]^c[158]^c[161]^c[169]^c[171]^c[174]^c[175]^c[177]^c[186]^c[177]^c[178]^c[194]^c[191]^c[192]^c[187]^c[188]^c[200]^c[201]^c[202]^c[203]^c[204]^c[217]^c[213]^c[215]^c[216]^c[229]^c[221]^c[222]^c[225]^c[226]^c[238]^c[231]^c[236]^c[237]; //row: 33 d[i2+33*Zc]=c[11]^c[28]^c[129]^c[232]; //row: 34 d[i2+34*Zc]=c[4]^c[77]^c[166]^c[196]; //row: 35 d[i2+35*Zc]=c[0]^c[3]^c[9]^c[1]^c[11]^c[16]^c[20]^c[11]^c[27]^c[30]^c[29]^c[36]^c[33]^c[41]^c[44]^c[52]^c[51]^c[56]^c[62]^c[59]^c[69]^c[70]^c[76]^c[66]^c[82]^c[87]^c[81]^c[96]^c[97]^c[94]^c[103]^c[108]^c[99]^c[110]^c[119]^c[120]^c[125]^c[126]^c[128]^c[133]^c[135]^c[139]^c[139]^c[149]^c[146]^c[151]^c[161]^c[157]^c[155]^c[166]^c[168]^c[172]^c[185]^c[183]^c[186]^c[191]^c[189]^c[196]^c[208]^c[199]^c[201]^c[214]^c[210]^c[213]^c[226]^c[230]^c[223]^c[235]^c[239]^c[234]; //row: 36 d[i2+36*Zc]=c[2]^c[157]^c[166]^c[198]; //row: 37 d[i2+37*Zc]=c[4]^c[5]^c[8]^c[3]^c[6]^c[15]^c[16]^c[21]^c[14]^c[21]^c[31]^c[32]^c[24]^c[23]^c[40]^c[41]^c[38]^c[35]^c[49]^c[46]^c[45]^c[60]^c[61]^c[56]^c[64]^c[73]^c[74]^c[75]^c[70]^c[87]^c[81]^c[86]^c[90]^c[91]^c[88]^c[107]^c[108]^c[102]^c[104]^c[114]^c[115]^c[113]^c[114]^c[129]^c[130]^c[131]^c[122]^c[137]^c[138]^c[140]^c[133]^c[153]^c[143]^c[151]^c[145]^c[147]^c[155]^c[162]^c[160]^c[170]^c[171]^c[173]^c[166]^c[178]^c[179]^c[177]^c[180]^c[196]^c[194]^c[190]^c[201]^c[202]^c[204]^c[206]^c[218]^c[219]^c[215]^c[218]^c[230]^c[220]^c[224]^c[228]^c[239]^c[240]^c[233]^c[239]; //row: 38 d[i2+38*Zc]=c[9]^c[107]^c[120]^c[135]; //row: 39 d[i2+39*Zc]=c[15]^c[43]^c[80]^c[216]; //row: 40 d[i2+40*Zc]=c[6]^c[93]^c[189]; //row: 41 d[i2+41*Zc]=c[12]^c[43]^c[101]^c[205]; //row: 42 d[i2+42*Zc]=c[3]^c[6]^c[0]^c[1]^c[3]^c[4]^c[1]^c[14]^c[18]^c[19]^c[11]^c[12]^c[30]^c[22]^c[31]^c[32]^c[39]^c[36]^c[43]^c[33]^c[47]^c[54]^c[44]^c[53]^c[54]^c[49]^c[59]^c[65]^c[61]^c[62]^c[72]^c[72]^c[73]^c[67]^c[68]^c[85]^c[78]^c[79]^c[83]^c[84]^c[88]^c[88]^c[89]^c[96]^c[97]^c[106]^c[100]^c[101]^c[102]^c[113]^c[110]^c[111]^c[111]^c[112]^c[128]^c[129]^c[130]^c[131]^c[136]^c[138]^c[141]^c[142]^c[152]^c[148]^c[149]^c[153]^c[143]^c[164]^c[159]^c[160]^c[157]^c[158]^c[169]^c[171]^c[174]^c[175]^c[177]^c[186]^c[177]^c[178]^c[194]^c[191]^c[192]^c[187]^c[188]^c[200]^c[201]^c[202]^c[203]^c[204]^c[217]^c[213]^c[215]^c[216]^c[229]^c[221]^c[222]^c[225]^c[226]^c[238]^c[231]^c[236]^c[237]; //row: 43 d[i2+43*Zc]=c[10]^c[2]^c[8]^c[10]^c[0]^c[21]^c[15]^c[18]^c[19]^c[11]^c[26]^c[29]^c[28]^c[35]^c[43]^c[39]^c[40]^c[54]^c[51]^c[49]^c[50]^c[55]^c[61]^c[58]^c[68]^c[69]^c[74]^c[75]^c[81]^c[86]^c[79]^c[80]^c[95]^c[96]^c[92]^c[93]^c[102]^c[107]^c[109]^c[120]^c[118]^c[118]^c[119]^c[124]^c[125]^c[126]^c[127]^c[132]^c[134]^c[137]^c[138]^c[148]^c[145]^c[149]^c[150]^c[160]^c[156]^c[164]^c[154]^c[165]^c[167]^c[171]^c[184]^c[182]^c[184]^c[185]^c[178]^c[190]^c[188]^c[194]^c[195]^c[207]^c[198]^c[199]^c[200]^c[206]^c[213]^c[209]^c[212]^c[225]^c[229]^c[221]^c[222]^c[234]^c[238]^c[232]^c[233]; //row: 44 d[i2+44*Zc]=c[4]^c[7]^c[2]^c[5]^c[1]^c[15]^c[20]^c[13]^c[31]^c[23]^c[22]^c[40]^c[37]^c[34]^c[48]^c[45]^c[44]^c[60]^c[55]^c[63]^c[73]^c[74]^c[69]^c[86]^c[80]^c[85]^c[78]^c[89]^c[90]^c[98]^c[107]^c[101]^c[103]^c[105]^c[114]^c[112]^c[113]^c[129]^c[130]^c[121]^c[137]^c[139]^c[132]^c[153]^c[150]^c[144]^c[154]^c[161]^c[159]^c[170]^c[172]^c[165]^c[178]^c[176]^c[179]^c[195]^c[193]^c[189]^c[201]^c[203]^c[205]^c[218]^c[214]^c[217]^c[230]^c[223]^c[227]^c[239]^c[232]^c[238]; //row: 45 d[i2+45*Zc]=c[15]^c[66]^c[113]; } break; case 12: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[6]^c[3]^c[0]^c[11]^c[18]^c[21]^c[14]^c[25]^c[27]^c[27]^c[44]^c[36]^c[47]^c[59]^c[55]^c[58]^c[60]^c[71]^c[63]^c[83]^c[76]^c[78]^c[90]^c[86]^c[92]^c[102]^c[99]^c[103]^c[112]^c[117]^c[110]^c[131]^c[128]^c[131]^c[132]^c[138]^c[136]^c[148]^c[149]^c[146]^c[164]^c[163]^c[160]^c[168]^c[171]^c[175]^c[190]^c[182]^c[184]^c[201]^c[197]^c[195]^c[209]^c[214]^c[215]^c[217]^c[227]^c[222]^c[239]^c[234]^c[228]^c[245]^c[240]^c[242]^c[261]^c[255]^c[260]; //row: 1 d[i2+1*Zc]=c[6]^c[7]^c[4]^c[1]^c[0]^c[18]^c[19]^c[22]^c[15]^c[25]^c[26]^c[28]^c[28]^c[44]^c[45]^c[37]^c[36]^c[48]^c[56]^c[59]^c[60]^c[61]^c[60]^c[64]^c[83]^c[72]^c[77]^c[79]^c[91]^c[87]^c[93]^c[103]^c[100]^c[104]^c[112]^c[113]^c[118]^c[111]^c[131]^c[120]^c[129]^c[120]^c[132]^c[133]^c[139]^c[137]^c[148]^c[149]^c[150]^c[147]^c[164]^c[165]^c[164]^c[161]^c[169]^c[172]^c[176]^c[190]^c[191]^c[183]^c[185]^c[201]^c[202]^c[198]^c[196]^c[210]^c[215]^c[204]^c[217]^c[218]^c[216]^c[223]^c[239]^c[228]^c[235]^c[229]^c[245]^c[246]^c[241]^c[243]^c[261]^c[262]^c[256]^c[261]; //row: 2 d[i2+2*Zc]=c[7]^c[4]^c[0]^c[1]^c[11]^c[0]^c[19]^c[21]^c[22]^c[14]^c[15]^c[26]^c[28]^c[27]^c[28]^c[45]^c[37]^c[47]^c[36]^c[48]^c[55]^c[56]^c[58]^c[59]^c[61]^c[60]^c[63]^c[64]^c[72]^c[76]^c[77]^c[78]^c[79]^c[91]^c[86]^c[87]^c[92]^c[93]^c[103]^c[99]^c[100]^c[103]^c[104]^c[113]^c[118]^c[110]^c[111]^c[120]^c[128]^c[129]^c[131]^c[120]^c[133]^c[139]^c[136]^c[137]^c[149]^c[150]^c[146]^c[147]^c[165]^c[163]^c[164]^c[160]^c[161]^c[169]^c[171]^c[172]^c[175]^c[176]^c[191]^c[183]^c[184]^c[185]^c[202]^c[198]^c[195]^c[196]^c[210]^c[214]^c[215]^c[215]^c[204]^c[218]^c[227]^c[216]^c[222]^c[223]^c[228]^c[235]^c[228]^c[229]^c[246]^c[240]^c[241]^c[242]^c[243]^c[262]^c[256]^c[260]^c[261]; //row: 3 d[i2+3*Zc]=c[7]^c[4]^c[1]^c[11]^c[0]^c[19]^c[22]^c[14]^c[15]^c[26]^c[28]^c[28]^c[45]^c[37]^c[47]^c[36]^c[48]^c[56]^c[58]^c[59]^c[61]^c[60]^c[64]^c[72]^c[77]^c[78]^c[79]^c[91]^c[87]^c[92]^c[93]^c[103]^c[100]^c[103]^c[104]^c[113]^c[118]^c[111]^c[120]^c[129]^c[131]^c[120]^c[133]^c[139]^c[136]^c[137]^c[149]^c[150]^c[146]^c[147]^c[165]^c[164]^c[160]^c[161]^c[169]^c[172]^c[175]^c[176]^c[191]^c[183]^c[185]^c[202]^c[198]^c[195]^c[196]^c[210]^c[215]^c[215]^c[204]^c[218]^c[216]^c[222]^c[223]^c[228]^c[235]^c[229]^c[246]^c[241]^c[242]^c[243]^c[262]^c[256]^c[260]^c[261]; //row: 4 d[i2+4*Zc]=c[7]^c[12]; //row: 5 d[i2+5*Zc]=c[7]^c[4]^c[1]^c[0]^c[2]^c[19]^c[22]^c[15]^c[13]^c[26]^c[28]^c[28]^c[45]^c[37]^c[36]^c[42]^c[48]^c[56]^c[59]^c[61]^c[60]^c[64]^c[72]^c[77]^c[79]^c[91]^c[87]^c[93]^c[103]^c[100]^c[104]^c[113]^c[118]^c[111]^c[120]^c[129]^c[120]^c[133]^c[139]^c[137]^c[149]^c[150]^c[147]^c[153]^c[165]^c[164]^c[161]^c[169]^c[172]^c[176]^c[191]^c[183]^c[185]^c[202]^c[198]^c[196]^c[192]^c[210]^c[215]^c[204]^c[218]^c[216]^c[223]^c[228]^c[235]^c[229]^c[246]^c[241]^c[243]^c[262]^c[256]^c[261]^c[254]; //row: 6 d[i2+6*Zc]=c[1]^c[76]^c[120]^c[134]^c[163]^c[204]^c[221]^c[248]; //row: 7 d[i2+7*Zc]=c[8]^c[13]^c[51]^c[92]^c[97]^c[173]; //row: 8 d[i2+8*Zc]=c[1]^c[9]^c[10]^c[6]^c[7]^c[2]^c[3]^c[6]^c[1]^c[2]^c[6]^c[13]^c[21]^c[16]^c[23]^c[12]^c[21]^c[16]^c[17]^c[22]^c[32]^c[28]^c[34]^c[30]^c[34]^c[29]^c[30]^c[39]^c[47]^c[43]^c[39]^c[42]^c[37]^c[38]^c[44]^c[54]^c[50]^c[50]^c[57]^c[58]^c[53]^c[48]^c[49]^c[67]^c[63]^c[66]^c[62]^c[70]^c[65]^c[66]^c[78]^c[74]^c[83]^c[78]^c[79]^c[73]^c[80]^c[81]^c[85]^c[93]^c[93]^c[88]^c[89]^c[87]^c[94]^c[95]^c[97]^c[105]^c[106]^c[101]^c[102]^c[98]^c[105]^c[106]^c[119]^c[115]^c[112]^c[108]^c[117]^c[112]^c[113]^c[126]^c[122]^c[123]^c[130]^c[131]^c[126]^c[121]^c[122]^c[139]^c[135]^c[133]^c[141]^c[143]^c[138]^c[139]^c[155]^c[151]^c[144]^c[152]^c[153]^c[148]^c[149]^c[149]^c[159]^c[167]^c[158]^c[165]^c[166]^c[167]^c[162]^c[163]^c[175]^c[171]^c[178]^c[173]^c[174]^c[170]^c[177]^c[178]^c[185]^c[181]^c[189]^c[185]^c[191]^c[186]^c[187]^c[196]^c[192]^c[192]^c[200]^c[202]^c[197]^c[198]^c[194]^c[204]^c[212]^c[209]^c[204]^c[205]^c[210]^c[205]^c[206]^c[224]^c[220]^c[222]^c[217]^c[218]^c[217]^c[224]^c[225]^c[234]^c[230]^c[229]^c[237]^c[235]^c[230]^c[231]^c[235]^c[240]^c[248]^c[247]^c[242]^c[243]^c[249]^c[244]^c[245]^c[256]^c[252]^c[262]^c[258]^c[255]^c[262]^c[263]^c[259]; //row: 9 d[i2+9*Zc]=c[5]^c[15]^c[128]^c[132]^c[164]^c[206]^c[218]^c[249]; //row: 10 d[i2+10*Zc]=c[16]^c[26]^c[57]^c[86]^c[106]^c[173]; //row: 11 d[i2+11*Zc]=c[4]^c[1]^c[2]^c[1]^c[11]^c[10]^c[8]^c[9]^c[7]^c[11]^c[16]^c[13]^c[14]^c[19]^c[17]^c[12]^c[22]^c[17]^c[35]^c[32]^c[33]^c[25]^c[35]^c[25]^c[35]^c[42]^c[39]^c[40]^c[46]^c[44]^c[45]^c[43]^c[57]^c[55]^c[53]^c[51]^c[56]^c[54]^c[70]^c[67]^c[68]^c[69]^c[67]^c[61]^c[71]^c[81]^c[78]^c[79]^c[74]^c[72]^c[76]^c[74]^c[88]^c[86]^c[84]^c[94]^c[90]^c[88]^c[100]^c[98]^c[97]^c[107]^c[101]^c[99]^c[110]^c[119]^c[108]^c[115]^c[113]^c[108]^c[118]^c[129]^c[126]^c[127]^c[126]^c[124]^c[129]^c[127]^c[142]^c[139]^c[140]^c[136]^c[134]^c[134]^c[132]^c[146]^c[155]^c[144]^c[147]^c[145]^c[144]^c[154]^c[151]^c[162]^c[159]^c[160]^c[161]^c[159]^c[158]^c[156]^c[178]^c[176]^c[169]^c[179]^c[173]^c[171]^c[188]^c[185]^c[186]^c[180]^c[190]^c[182]^c[180]^c[199]^c[196]^c[197]^c[195]^c[193]^c[193]^c[203]^c[202]^c[207]^c[205]^c[212]^c[210]^c[213]^c[211]^c[227]^c[224]^c[225]^c[225]^c[223]^c[220]^c[218]^c[237]^c[234]^c[235]^c[232]^c[230]^c[238]^c[236]^c[243]^c[240]^c[241]^c[250]^c[248]^c[240]^c[250]^c[259]^c[256]^c[257]^c[253]^c[263]^c[258]^c[256]^c[259]; //row: 12 d[i2+12*Zc]=c[4]^c[17]^c[125]^c[135]^c[157]^c[217]; //row: 13 d[i2+13*Zc]=c[4]^c[5]^c[2]^c[11]^c[10]^c[0]^c[16]^c[17]^c[20]^c[13]^c[35]^c[24]^c[26]^c[26]^c[42]^c[43]^c[47]^c[46]^c[44]^c[58]^c[54]^c[57]^c[70]^c[71]^c[70]^c[62]^c[81]^c[82]^c[75]^c[77]^c[89]^c[85]^c[91]^c[85]^c[101]^c[98]^c[102]^c[110]^c[111]^c[116]^c[109]^c[129]^c[130]^c[127]^c[130]^c[142]^c[143]^c[137]^c[135]^c[146]^c[147]^c[148]^c[145]^c[162]^c[163]^c[162]^c[159]^c[179]^c[170]^c[174]^c[188]^c[189]^c[181]^c[183]^c[199]^c[200]^c[196]^c[194]^c[208]^c[213]^c[214]^c[227]^c[216]^c[226]^c[221]^c[237]^c[238]^c[233]^c[239]^c[243]^c[244]^c[251]^c[241]^c[246]^c[259]^c[260]^c[254]^c[259]; //row: 14 d[i2+14*Zc]=c[9]^c[151]^c[184]^c[196]^c[214]^c[263]; //row: 15 d[i2+15*Zc]=c[0]^c[9]^c[6]^c[4]^c[5]^c[0]^c[12]^c[15]^c[19]^c[20]^c[13]^c[31]^c[33]^c[33]^c[38]^c[42]^c[40]^c[41]^c[53]^c[49]^c[51]^c[52]^c[66]^c[65]^c[69]^c[77]^c[82]^c[83]^c[72]^c[84]^c[92]^c[85]^c[86]^c[96]^c[105]^c[96]^c[97]^c[118]^c[111]^c[116]^c[125]^c[122]^c[124]^c[125]^c[125]^c[138]^c[132]^c[141]^c[142]^c[154]^c[155]^c[151]^c[152]^c[158]^c[157]^c[165]^c[166]^c[161]^c[174]^c[177]^c[168]^c[169]^c[184]^c[188]^c[190]^c[195]^c[203]^c[200]^c[201]^c[215]^c[208]^c[208]^c[209]^c[223]^c[221]^c[227]^c[216]^c[222]^c[233]^c[228]^c[234]^c[251]^c[246]^c[247]^c[248]^c[255]^c[261]^c[253]^c[254]; //row: 16 d[i2+16*Zc]=c[3]^c[0]^c[9]^c[8]^c[15]^c[18]^c[23]^c[12]^c[34]^c[24]^c[24]^c[41]^c[45]^c[44]^c[37]^c[56]^c[52]^c[55]^c[69]^c[68]^c[60]^c[80]^c[73]^c[75]^c[87]^c[95]^c[89]^c[99]^c[96]^c[100]^c[109]^c[114]^c[119]^c[128]^c[125]^c[128]^c[141]^c[135]^c[133]^c[140]^c[145]^c[146]^c[155]^c[161]^c[160]^c[157]^c[177]^c[168]^c[172]^c[187]^c[191]^c[181]^c[198]^c[194]^c[192]^c[206]^c[211]^c[212]^c[226]^c[224]^c[219]^c[236]^c[231]^c[237]^c[242]^c[249]^c[251]^c[240]^c[258]^c[252]^c[257]; //row: 17 d[i2+17*Zc]=c[7]^c[170]^c[200]^c[213]^c[254]; //row: 18 d[i2+18*Zc]=c[21]^c[150]^c[159]^c[227]^c[231]; //row: 19 d[i2+19*Zc]=c[0]^c[20]^c[91]^c[97]^c[124]; //row: 20 d[i2+20*Zc]=c[5]^c[2]^c[11]^c[10]^c[6]^c[17]^c[20]^c[13]^c[24]^c[26]^c[26]^c[43]^c[47]^c[46]^c[37]^c[58]^c[54]^c[57]^c[71]^c[70]^c[62]^c[82]^c[75]^c[77]^c[89]^c[85]^c[91]^c[101]^c[98]^c[102]^c[111]^c[116]^c[109]^c[119]^c[130]^c[127]^c[130]^c[143]^c[137]^c[135]^c[136]^c[147]^c[148]^c[145]^c[163]^c[162]^c[159]^c[179]^c[170]^c[174]^c[189]^c[181]^c[183]^c[200]^c[196]^c[194]^c[208]^c[213]^c[214]^c[216]^c[226]^c[221]^c[238]^c[233]^c[239]^c[244]^c[251]^c[241]^c[260]^c[254]^c[259]; //row: 21 d[i2+21*Zc]=c[12]^c[65]^c[195]^c[248]^c[252]; //row: 22 d[i2+22*Zc]=c[5]^c[154]^c[160]^c[213]; //row: 23 d[i2+23*Zc]=c[23]^c[28]^c[120]^c[218]; //row: 24 d[i2+24*Zc]=c[0]^c[9]^c[6]^c[5]^c[9]^c[12]^c[15]^c[20]^c[31]^c[33]^c[33]^c[38]^c[42]^c[41]^c[37]^c[53]^c[49]^c[52]^c[54]^c[66]^c[65]^c[69]^c[77]^c[82]^c[72]^c[84]^c[92]^c[86]^c[96]^c[105]^c[97]^c[118]^c[111]^c[116]^c[125]^c[122]^c[125]^c[138]^c[132]^c[142]^c[134]^c[154]^c[155]^c[152]^c[158]^c[157]^c[166]^c[174]^c[177]^c[169]^c[184]^c[188]^c[190]^c[195]^c[203]^c[201]^c[215]^c[208]^c[209]^c[223]^c[221]^c[216]^c[233]^c[228]^c[234]^c[251]^c[246]^c[248]^c[255]^c[261]^c[254]; //row: 25 d[i2+25*Zc]=c[23]^c[76]^c[94]^c[179]; //row: 26 d[i2+26*Zc]=c[10]^c[32]^c[51]^c[183]; //row: 27 d[i2+27*Zc]=c[13]^c[73]^c[100]; //row: 28 d[i2+28*Zc]=c[5]^c[54]^c[231]^c[261]; //row: 29 d[i2+29*Zc]=c[1]^c[10]^c[7]^c[5]^c[6]^c[13]^c[16]^c[20]^c[21]^c[23]^c[32]^c[34]^c[34]^c[39]^c[43]^c[41]^c[42]^c[54]^c[50]^c[52]^c[53]^c[67]^c[66]^c[70]^c[78]^c[83]^c[72]^c[73]^c[85]^c[93]^c[86]^c[87]^c[97]^c[106]^c[97]^c[98]^c[119]^c[112]^c[117]^c[126]^c[123]^c[125]^c[126]^c[139]^c[133]^c[142]^c[143]^c[155]^c[144]^c[152]^c[153]^c[159]^c[158]^c[166]^c[167]^c[175]^c[178]^c[169]^c[170]^c[172]^c[185]^c[189]^c[191]^c[196]^c[192]^c[201]^c[202]^c[204]^c[209]^c[209]^c[210]^c[224]^c[222]^c[216]^c[217]^c[218]^c[234]^c[229]^c[235]^c[240]^c[247]^c[248]^c[249]^c[256]^c[262]^c[254]^c[255]; //row: 30 d[i2+30*Zc]=c[1]^c[10]^c[6]^c[7]^c[5]^c[6]^c[2]^c[13]^c[15]^c[16]^c[20]^c[21]^c[32]^c[34]^c[33]^c[34]^c[39]^c[43]^c[41]^c[42]^c[54]^c[49]^c[50]^c[52]^c[53]^c[67]^c[66]^c[69]^c[70]^c[78]^c[82]^c[83]^c[72]^c[73]^c[85]^c[92]^c[93]^c[86]^c[87]^c[97]^c[105]^c[106]^c[97]^c[98]^c[119]^c[112]^c[116]^c[117]^c[126]^c[122]^c[123]^c[125]^c[126]^c[120]^c[139]^c[133]^c[142]^c[143]^c[155]^c[144]^c[152]^c[153]^c[159]^c[157]^c[158]^c[166]^c[167]^c[163]^c[175]^c[177]^c[178]^c[169]^c[170]^c[185]^c[189]^c[190]^c[191]^c[196]^c[192]^c[201]^c[202]^c[204]^c[208]^c[209]^c[209]^c[210]^c[224]^c[221]^c[222]^c[216]^c[217]^c[234]^c[229]^c[234]^c[235]^c[240]^c[246]^c[247]^c[248]^c[249]^c[256]^c[262]^c[254]^c[255]; //row: 31 d[i2+31*Zc]=c[0]^c[11]^c[9]^c[8]^c[6]^c[5]^c[5]^c[3]^c[4]^c[12]^c[23]^c[15]^c[14]^c[20]^c[18]^c[19]^c[15]^c[31]^c[30]^c[33]^c[32]^c[33]^c[32]^c[38]^c[37]^c[42]^c[41]^c[41]^c[39]^c[40]^c[53]^c[52]^c[49]^c[48]^c[52]^c[50]^c[51]^c[66]^c[65]^c[65]^c[64]^c[69]^c[68]^c[77]^c[76]^c[82]^c[81]^c[72]^c[82]^c[83]^c[84]^c[95]^c[92]^c[91]^c[86]^c[84]^c[85]^c[94]^c[96]^c[107]^c[105]^c[104]^c[97]^c[107]^c[96]^c[118]^c[117]^c[111]^c[110]^c[116]^c[115]^c[125]^c[124]^c[122]^c[121]^c[125]^c[123]^c[124]^c[138]^c[137]^c[132]^c[143]^c[142]^c[140]^c[141]^c[154]^c[153]^c[155]^c[154]^c[152]^c[150]^c[151]^c[158]^c[157]^c[157]^c[156]^c[166]^c[164]^c[165]^c[174]^c[173]^c[177]^c[176]^c[169]^c[179]^c[168]^c[184]^c[183]^c[188]^c[187]^c[190]^c[189]^c[195]^c[194]^c[203]^c[202]^c[201]^c[199]^c[200]^c[215]^c[214]^c[208]^c[207]^c[209]^c[207]^c[208]^c[223]^c[222]^c[221]^c[220]^c[216]^c[226]^c[227]^c[233]^c[232]^c[228]^c[239]^c[234]^c[233]^c[251]^c[250]^c[246]^c[245]^c[248]^c[246]^c[247]^c[255]^c[254]^c[261]^c[260]^c[254]^c[252]^c[253]; //row: 32 d[i2+32*Zc]=c[6]^c[3]^c[11]^c[0]^c[10]^c[11]^c[5]^c[18]^c[20]^c[21]^c[13]^c[14]^c[25]^c[27]^c[26]^c[27]^c[44]^c[36]^c[46]^c[47]^c[59]^c[54]^c[55]^c[57]^c[58]^c[60]^c[71]^c[62]^c[63]^c[83]^c[75]^c[76]^c[77]^c[78]^c[90]^c[85]^c[86]^c[91]^c[92]^c[102]^c[98]^c[99]^c[102]^c[103]^c[112]^c[117]^c[109]^c[110]^c[131]^c[127]^c[128]^c[130]^c[131]^c[132]^c[138]^c[135]^c[136]^c[148]^c[149]^c[145]^c[146]^c[152]^c[164]^c[162]^c[163]^c[159]^c[160]^c[168]^c[170]^c[171]^c[174]^c[175]^c[174]^c[190]^c[182]^c[183]^c[184]^c[201]^c[197]^c[194]^c[195]^c[209]^c[213]^c[214]^c[214]^c[215]^c[217]^c[226]^c[227]^c[221]^c[222]^c[239]^c[234]^c[239]^c[228]^c[245]^c[251]^c[240]^c[241]^c[242]^c[261]^c[255]^c[259]^c[260]; //row: 33 d[i2+33*Zc]=c[22]^c[31]^c[132]^c[260]; //row: 34 d[i2+34*Zc]=c[1]^c[87]^c[189]^c[215]; //row: 35 d[i2+35*Zc]=c[8]^c[5]^c[2]^c[1]^c[20]^c[23]^c[16]^c[19]^c[27]^c[29]^c[29]^c[46]^c[38]^c[37]^c[49]^c[57]^c[48]^c[62]^c[61]^c[65]^c[73]^c[78]^c[80]^c[82]^c[92]^c[88]^c[94]^c[104]^c[101]^c[105]^c[114]^c[119]^c[112]^c[121]^c[130]^c[121]^c[134]^c[140]^c[138]^c[150]^c[151]^c[148]^c[145]^c[166]^c[165]^c[162]^c[170]^c[173]^c[177]^c[180]^c[184]^c[186]^c[203]^c[199]^c[197]^c[211]^c[204]^c[205]^c[219]^c[217]^c[224]^c[229]^c[236]^c[230]^c[247]^c[242]^c[244]^c[263]^c[257]^c[262]; //row: 36 d[i2+36*Zc]=c[5]^c[168]^c[188]^c[224]; //row: 37 d[i2+37*Zc]=c[1]^c[2]^c[11]^c[8]^c[7]^c[13]^c[14]^c[17]^c[22]^c[16]^c[32]^c[33]^c[35]^c[35]^c[39]^c[40]^c[44]^c[43]^c[55]^c[51]^c[54]^c[67]^c[68]^c[67]^c[71]^c[78]^c[79]^c[72]^c[74]^c[86]^c[94]^c[88]^c[98]^c[107]^c[99]^c[119]^c[108]^c[113]^c[118]^c[126]^c[127]^c[124]^c[127]^c[139]^c[140]^c[134]^c[132]^c[155]^c[144]^c[145]^c[154]^c[159]^c[160]^c[159]^c[156]^c[165]^c[176]^c[179]^c[171]^c[185]^c[186]^c[190]^c[180]^c[196]^c[197]^c[193]^c[203]^c[205]^c[210]^c[211]^c[224]^c[225]^c[223]^c[218]^c[234]^c[235]^c[230]^c[236]^c[240]^c[241]^c[248]^c[250]^c[256]^c[257]^c[263]^c[256]; //row: 38 d[i2+38*Zc]=c[4]^c[116]^c[120]^c[153]; //row: 39 d[i2+39*Zc]=c[17]^c[44]^c[93]^c[236]; //row: 40 d[i2+40*Zc]=c[6]^c[96]^c[215]; //row: 41 d[i2+41*Zc]=c[15]^c[37]^c[114]^c[227]; //row: 42 d[i2+42*Zc]=c[9]^c[6]^c[2]^c[3]^c[1]^c[2]^c[4]^c[21]^c[23]^c[12]^c[16]^c[17]^c[28]^c[30]^c[29]^c[30]^c[47]^c[39]^c[37]^c[38]^c[50]^c[57]^c[58]^c[48]^c[49]^c[49]^c[63]^c[62]^c[65]^c[66]^c[74]^c[78]^c[79]^c[80]^c[81]^c[93]^c[88]^c[89]^c[94]^c[95]^c[105]^c[101]^c[102]^c[105]^c[106]^c[115]^c[108]^c[112]^c[113]^c[122]^c[130]^c[131]^c[121]^c[122]^c[135]^c[141]^c[138]^c[139]^c[151]^c[152]^c[148]^c[149]^c[167]^c[165]^c[166]^c[162]^c[163]^c[171]^c[173]^c[174]^c[177]^c[178]^c[181]^c[185]^c[186]^c[187]^c[192]^c[200]^c[197]^c[198]^c[212]^c[204]^c[205]^c[205]^c[206]^c[220]^c[217]^c[218]^c[224]^c[225]^c[230]^c[237]^c[230]^c[231]^c[248]^c[242]^c[243]^c[244]^c[245]^c[252]^c[258]^c[262]^c[263]; //row: 43 d[i2+43*Zc]=c[7]^c[4]^c[1]^c[11]^c[0]^c[19]^c[22]^c[14]^c[15]^c[16]^c[26]^c[28]^c[28]^c[45]^c[37]^c[47]^c[36]^c[48]^c[56]^c[58]^c[59]^c[61]^c[60]^c[64]^c[72]^c[77]^c[78]^c[79]^c[91]^c[87]^c[92]^c[93]^c[103]^c[100]^c[103]^c[104]^c[113]^c[118]^c[111]^c[120]^c[129]^c[131]^c[120]^c[133]^c[139]^c[136]^c[137]^c[149]^c[150]^c[146]^c[147]^c[165]^c[164]^c[160]^c[161]^c[169]^c[172]^c[175]^c[176]^c[191]^c[183]^c[185]^c[202]^c[198]^c[195]^c[196]^c[203]^c[210]^c[215]^c[215]^c[204]^c[218]^c[216]^c[222]^c[223]^c[221]^c[228]^c[235]^c[229]^c[246]^c[241]^c[242]^c[243]^c[262]^c[256]^c[260]^c[261]; //row: 44 d[i2+44*Zc]=c[4]^c[1]^c[10]^c[9]^c[7]^c[16]^c[19]^c[12]^c[35]^c[25]^c[25]^c[42]^c[46]^c[45]^c[57]^c[53]^c[56]^c[70]^c[69]^c[61]^c[81]^c[74]^c[76]^c[88]^c[84]^c[90]^c[89]^c[100]^c[97]^c[101]^c[110]^c[115]^c[108]^c[114]^c[129]^c[126]^c[129]^c[142]^c[136]^c[134]^c[146]^c[147]^c[144]^c[162]^c[161]^c[158]^c[178]^c[169]^c[173]^c[188]^c[180]^c[182]^c[199]^c[195]^c[193]^c[207]^c[212]^c[213]^c[227]^c[225]^c[220]^c[237]^c[232]^c[238]^c[243]^c[250]^c[240]^c[259]^c[253]^c[258]; //row: 45 d[i2+45*Zc]=c[14]^c[76]^c[122]; } break; case 13: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[11]^c[7]^c[0]^c[2]^c[24]^c[22]^c[17]^c[37]^c[35]^c[32]^c[50]^c[44]^c[44]^c[63]^c[61]^c[59]^c[76]^c[73]^c[67]^c[89]^c[82]^c[86]^c[102]^c[98]^c[97]^c[115]^c[114]^c[108]^c[128]^c[117]^c[120]^c[141]^c[141]^c[136]^c[154]^c[144]^c[146]^c[167]^c[162]^c[165]^c[180]^c[179]^c[176]^c[193]^c[182]^c[185]^c[206]^c[199]^c[200]^c[219]^c[210]^c[220]^c[232]^c[227]^c[223]^c[245]^c[242]^c[235]^c[258]^c[257]^c[248]^c[271]^c[272]^c[260]^c[284]^c[276]^c[283]; //row: 1 d[i2+1*Zc]=c[12]^c[11]^c[7]^c[0]^c[2]^c[25]^c[24]^c[22]^c[17]^c[38]^c[37]^c[35]^c[32]^c[51]^c[50]^c[44]^c[44]^c[63]^c[61]^c[59]^c[77]^c[76]^c[73]^c[67]^c[90]^c[89]^c[82]^c[86]^c[102]^c[98]^c[97]^c[115]^c[114]^c[108]^c[129]^c[128]^c[117]^c[120]^c[142]^c[141]^c[141]^c[136]^c[155]^c[154]^c[144]^c[146]^c[168]^c[167]^c[162]^c[165]^c[181]^c[180]^c[179]^c[176]^c[193]^c[182]^c[185]^c[207]^c[206]^c[199]^c[200]^c[220]^c[219]^c[210]^c[220]^c[232]^c[227]^c[223]^c[246]^c[245]^c[242]^c[235]^c[259]^c[258]^c[257]^c[248]^c[272]^c[271]^c[272]^c[260]^c[285]^c[284]^c[276]^c[283]; //row: 2 d[i2+2*Zc]=c[11]^c[7]^c[1]^c[0]^c[3]^c[2]^c[24]^c[23]^c[22]^c[18]^c[17]^c[37]^c[35]^c[33]^c[32]^c[50]^c[44]^c[45]^c[44]^c[63]^c[62]^c[61]^c[60]^c[59]^c[76]^c[73]^c[68]^c[67]^c[89]^c[83]^c[82]^c[87]^c[86]^c[102]^c[99]^c[98]^c[98]^c[97]^c[115]^c[115]^c[114]^c[109]^c[108]^c[128]^c[117]^c[121]^c[120]^c[141]^c[142]^c[141]^c[137]^c[136]^c[154]^c[144]^c[147]^c[146]^c[167]^c[162]^c[166]^c[165]^c[180]^c[180]^c[179]^c[177]^c[176]^c[193]^c[183]^c[182]^c[186]^c[185]^c[206]^c[199]^c[201]^c[200]^c[219]^c[210]^c[208]^c[220]^c[232]^c[228]^c[227]^c[224]^c[223]^c[245]^c[243]^c[242]^c[236]^c[235]^c[258]^c[257]^c[249]^c[248]^c[271]^c[260]^c[272]^c[261]^c[260]^c[284]^c[276]^c[284]^c[283]; //row: 3 d[i2+3*Zc]=c[11]^c[7]^c[0]^c[3]^c[2]^c[24]^c[22]^c[18]^c[17]^c[37]^c[35]^c[32]^c[50]^c[44]^c[45]^c[44]^c[63]^c[61]^c[60]^c[59]^c[76]^c[73]^c[67]^c[89]^c[82]^c[87]^c[86]^c[102]^c[98]^c[98]^c[97]^c[115]^c[114]^c[109]^c[108]^c[128]^c[117]^c[120]^c[141]^c[141]^c[137]^c[136]^c[154]^c[144]^c[147]^c[146]^c[167]^c[162]^c[166]^c[165]^c[180]^c[179]^c[177]^c[176]^c[193]^c[182]^c[186]^c[185]^c[206]^c[199]^c[200]^c[219]^c[210]^c[208]^c[220]^c[232]^c[227]^c[224]^c[223]^c[245]^c[242]^c[236]^c[235]^c[258]^c[257]^c[248]^c[271]^c[272]^c[261]^c[260]^c[284]^c[276]^c[284]^c[283]; //row: 4 d[i2+4*Zc]=c[10]^c[21]; //row: 5 d[i2+5*Zc]=c[5]^c[1]^c[7]^c[9]^c[2]^c[18]^c[16]^c[24]^c[21]^c[31]^c[29]^c[26]^c[44]^c[51]^c[51]^c[49]^c[57]^c[55]^c[53]^c[70]^c[67]^c[74]^c[83]^c[89]^c[80]^c[96]^c[92]^c[91]^c[109]^c[108]^c[115]^c[122]^c[124]^c[127]^c[135]^c[135]^c[130]^c[148]^c[151]^c[153]^c[161]^c[156]^c[159]^c[168]^c[174]^c[173]^c[170]^c[187]^c[189]^c[192]^c[200]^c[206]^c[207]^c[213]^c[217]^c[214]^c[219]^c[226]^c[221]^c[230]^c[239]^c[236]^c[242]^c[252]^c[251]^c[255]^c[265]^c[266]^c[267]^c[278]^c[283]^c[277]^c[277]; //row: 6 d[i2+6*Zc]=c[5]^c[78]^c[136]^c[153]^c[177]^c[231]^c[245]^c[272]; //row: 7 d[i2+7*Zc]=c[1]^c[22]^c[59]^c[100]^c[106]^c[192]; //row: 8 d[i2+8*Zc]=c[7]^c[10]^c[3]^c[6]^c[9]^c[0]^c[12]^c[11]^c[2]^c[1]^c[2]^c[20]^c[23]^c[18]^c[22]^c[21]^c[13]^c[17]^c[16]^c[14]^c[33]^c[36]^c[31]^c[34]^c[28]^c[32]^c[31]^c[46]^c[49]^c[40]^c[43]^c[40]^c[44]^c[43]^c[39]^c[59]^c[62]^c[57]^c[61]^c[60]^c[55]^c[59]^c[58]^c[72]^c[75]^c[69]^c[72]^c[76]^c[67]^c[66]^c[85]^c[88]^c[78]^c[82]^c[81]^c[82]^c[86]^c[85]^c[98]^c[101]^c[94]^c[98]^c[97]^c[93]^c[97]^c[96]^c[111]^c[114]^c[110]^c[114]^c[113]^c[104]^c[108]^c[107]^c[124]^c[127]^c[126]^c[129]^c[129]^c[120]^c[119]^c[137]^c[140]^c[137]^c[141]^c[140]^c[132]^c[136]^c[135]^c[150]^c[153]^c[153]^c[143]^c[155]^c[146]^c[145]^c[163]^c[166]^c[158]^c[161]^c[161]^c[165]^c[164]^c[166]^c[176]^c[179]^c[175]^c[179]^c[178]^c[172]^c[176]^c[175]^c[189]^c[192]^c[191]^c[182]^c[194]^c[194]^c[185]^c[184]^c[202]^c[205]^c[195]^c[198]^c[196]^c[200]^c[199]^c[215]^c[218]^c[219]^c[209]^c[216]^c[220]^c[219]^c[212]^c[228]^c[231]^c[223]^c[227]^c[226]^c[232]^c[223]^c[222]^c[241]^c[244]^c[238]^c[242]^c[241]^c[244]^c[235]^c[234]^c[254]^c[257]^c[253]^c[256]^c[257]^c[248]^c[247]^c[254]^c[267]^c[270]^c[268]^c[272]^c[271]^c[269]^c[260]^c[272]^c[280]^c[283]^c[285]^c[275]^c[279]^c[283]^c[282]^c[282]; //row: 9 d[i2+9*Zc]=c[5]^c[22]^c[131]^c[143]^c[174]^c[224]^c[241]^c[263]; //row: 10 d[i2+10*Zc]=c[21]^c[37]^c[64]^c[93]^c[115]^c[186]; //row: 11 d[i2+11*Zc]=c[3]^c[6]^c[5]^c[12]^c[1]^c[5]^c[7]^c[7]^c[9]^c[1]^c[16]^c[19]^c[18]^c[14]^c[16]^c[22]^c[24]^c[24]^c[29]^c[32]^c[31]^c[27]^c[29]^c[37]^c[26]^c[42]^c[45]^c[44]^c[49]^c[51]^c[49]^c[51]^c[55]^c[57]^c[53]^c[55]^c[64]^c[53]^c[68]^c[71]^c[70]^c[65]^c[67]^c[72]^c[74]^c[81]^c[84]^c[83]^c[87]^c[89]^c[78]^c[80]^c[94]^c[96]^c[103]^c[92]^c[102]^c[91]^c[107]^c[109]^c[106]^c[108]^c[113]^c[115]^c[120]^c[123]^c[122]^c[122]^c[124]^c[125]^c[127]^c[133]^c[136]^c[135]^c[133]^c[135]^c[141]^c[130]^c[146]^c[149]^c[148]^c[149]^c[151]^c[151]^c[153]^c[159]^c[162]^c[161]^c[167]^c[156]^c[157]^c[159]^c[161]^c[172]^c[175]^c[174]^c[171]^c[173]^c[181]^c[170]^c[185]^c[187]^c[187]^c[189]^c[190]^c[192]^c[198]^c[201]^c[200]^c[204]^c[206]^c[205]^c[207]^c[211]^c[214]^c[213]^c[215]^c[217]^c[212]^c[214]^c[210]^c[224]^c[226]^c[232]^c[221]^c[228]^c[230]^c[237]^c[240]^c[239]^c[234]^c[236]^c[240]^c[242]^c[250]^c[253]^c[252]^c[249]^c[251]^c[253]^c[255]^c[263]^c[266]^c[265]^c[264]^c[266]^c[265]^c[267]^c[276]^c[279]^c[278]^c[281]^c[283]^c[275]^c[277]^c[285]; //row: 12 d[i2+12*Zc]=c[5]^c[19]^c[137]^c[152]^c[181]^c[245]; //row: 13 d[i2+13*Zc]=c[6]^c[5]^c[1]^c[7]^c[9]^c[12]^c[19]^c[18]^c[16]^c[24]^c[32]^c[31]^c[29]^c[26]^c[45]^c[44]^c[51]^c[51]^c[42]^c[57]^c[55]^c[53]^c[71]^c[70]^c[67]^c[74]^c[84]^c[83]^c[89]^c[80]^c[96]^c[92]^c[91]^c[91]^c[109]^c[108]^c[115]^c[123]^c[122]^c[124]^c[127]^c[136]^c[135]^c[135]^c[130]^c[149]^c[148]^c[151]^c[153]^c[162]^c[161]^c[156]^c[159]^c[175]^c[174]^c[173]^c[170]^c[187]^c[189]^c[192]^c[201]^c[200]^c[206]^c[207]^c[214]^c[213]^c[217]^c[214]^c[226]^c[221]^c[230]^c[240]^c[239]^c[236]^c[242]^c[253]^c[252]^c[251]^c[255]^c[266]^c[265]^c[266]^c[267]^c[262]^c[279]^c[278]^c[283]^c[277]; //row: 14 d[i2+14*Zc]=c[0]^c[162]^c[195]^c[220]^c[221]^c[274]; //row: 15 d[i2+15*Zc]=c[5]^c[1]^c[7]^c[10]^c[9]^c[3]^c[18]^c[16]^c[25]^c[24]^c[18]^c[31]^c[29]^c[26]^c[44]^c[51]^c[39]^c[51]^c[57]^c[55]^c[54]^c[53]^c[70]^c[67]^c[74]^c[83]^c[89]^c[81]^c[80]^c[96]^c[92]^c[92]^c[91]^c[109]^c[108]^c[116]^c[115]^c[122]^c[124]^c[127]^c[135]^c[135]^c[131]^c[130]^c[132]^c[148]^c[151]^c[154]^c[153]^c[161]^c[156]^c[160]^c[159]^c[174]^c[173]^c[171]^c[170]^c[181]^c[187]^c[189]^c[193]^c[192]^c[200]^c[206]^c[207]^c[213]^c[217]^c[215]^c[214]^c[226]^c[221]^c[231]^c[230]^c[239]^c[236]^c[243]^c[242]^c[234]^c[252]^c[251]^c[255]^c[265]^c[266]^c[268]^c[267]^c[278]^c[283]^c[278]^c[277]; //row: 16 d[i2+16*Zc]=c[11]^c[7]^c[0]^c[2]^c[24]^c[22]^c[17]^c[22]^c[37]^c[35]^c[32]^c[50]^c[44]^c[44]^c[41]^c[63]^c[61]^c[59]^c[76]^c[73]^c[67]^c[89]^c[82]^c[86]^c[102]^c[98]^c[97]^c[115]^c[114]^c[108]^c[128]^c[117]^c[120]^c[141]^c[141]^c[136]^c[154]^c[144]^c[146]^c[146]^c[167]^c[162]^c[165]^c[180]^c[179]^c[176]^c[193]^c[182]^c[185]^c[206]^c[199]^c[200]^c[219]^c[210]^c[220]^c[232]^c[227]^c[223]^c[245]^c[242]^c[235]^c[258]^c[257]^c[248]^c[271]^c[272]^c[260]^c[264]^c[284]^c[276]^c[283]; //row: 17 d[i2+17*Zc]=c[12]^c[183]^c[211]^c[223]^c[284]; //row: 18 d[i2+18*Zc]=c[13]^c[157]^c[179]^c[236]^c[251]; //row: 19 d[i2+19*Zc]=c[11]^c[18]^c[100]^c[105]^c[138]; //row: 20 d[i2+20*Zc]=c[2]^c[11]^c[4]^c[6]^c[5]^c[15]^c[13]^c[21]^c[28]^c[26]^c[36]^c[41]^c[48]^c[48]^c[50]^c[54]^c[52]^c[63]^c[67]^c[77]^c[71]^c[80]^c[86]^c[90]^c[93]^c[102]^c[101]^c[106]^c[105]^c[112]^c[119]^c[121]^c[124]^c[118]^c[132]^c[132]^c[140]^c[145]^c[148]^c[150]^c[147]^c[158]^c[166]^c[156]^c[171]^c[170]^c[180]^c[184]^c[186]^c[189]^c[197]^c[203]^c[204]^c[210]^c[214]^c[211]^c[223]^c[231]^c[227]^c[236]^c[246]^c[239]^c[249]^c[248]^c[252]^c[262]^c[263]^c[264]^c[275]^c[280]^c[274]; //row: 21 d[i2+21*Zc]=c[18]^c[72]^c[212]^c[262]^c[276]; //row: 22 d[i2+22*Zc]=c[4]^c[161]^c[181]^c[221]; //row: 23 d[i2+23*Zc]=c[18]^c[30]^c[131]^c[242]; //row: 24 d[i2+24*Zc]=c[4]^c[0]^c[6]^c[8]^c[8]^c[17]^c[15]^c[23]^c[30]^c[28]^c[38]^c[43]^c[50]^c[50]^c[46]^c[56]^c[54]^c[52]^c[60]^c[69]^c[66]^c[73]^c[82]^c[88]^c[79]^c[95]^c[91]^c[103]^c[108]^c[107]^c[114]^c[121]^c[123]^c[126]^c[134]^c[134]^c[142]^c[147]^c[150]^c[152]^c[144]^c[160]^c[168]^c[158]^c[173]^c[172]^c[169]^c[186]^c[188]^c[191]^c[199]^c[205]^c[206]^c[212]^c[216]^c[213]^c[225]^c[233]^c[229]^c[238]^c[235]^c[241]^c[251]^c[250]^c[254]^c[264]^c[265]^c[266]^c[277]^c[282]^c[276]; //row: 25 d[i2+25*Zc]=c[16]^c[86]^c[93]^c[183]; //row: 26 d[i2+26*Zc]=c[7]^c[37]^c[61]^c[196]; //row: 27 d[i2+27*Zc]=c[19]^c[87]^c[112]; //row: 28 d[i2+28*Zc]=c[3]^c[52]^c[247]^c[274]; //row: 29 d[i2+29*Zc]=c[4]^c[0]^c[6]^c[9]^c[8]^c[17]^c[15]^c[24]^c[23]^c[13]^c[30]^c[28]^c[38]^c[43]^c[50]^c[51]^c[50]^c[56]^c[54]^c[53]^c[52]^c[69]^c[66]^c[73]^c[82]^c[88]^c[80]^c[79]^c[95]^c[91]^c[91]^c[103]^c[108]^c[107]^c[115]^c[114]^c[121]^c[123]^c[126]^c[134]^c[134]^c[130]^c[142]^c[147]^c[150]^c[153]^c[152]^c[160]^c[168]^c[159]^c[158]^c[173]^c[172]^c[170]^c[169]^c[186]^c[188]^c[192]^c[191]^c[187]^c[199]^c[205]^c[206]^c[212]^c[216]^c[214]^c[213]^c[225]^c[233]^c[230]^c[229]^c[238]^c[235]^c[242]^c[241]^c[235]^c[251]^c[250]^c[254]^c[264]^c[265]^c[267]^c[266]^c[277]^c[282]^c[277]^c[276]; //row: 30 d[i2+30*Zc]=c[5]^c[1]^c[8]^c[7]^c[10]^c[9]^c[1]^c[18]^c[17]^c[16]^c[25]^c[24]^c[31]^c[29]^c[27]^c[26]^c[44]^c[51]^c[39]^c[51]^c[57]^c[56]^c[55]^c[54]^c[53]^c[70]^c[67]^c[75]^c[74]^c[83]^c[90]^c[89]^c[81]^c[80]^c[96]^c[93]^c[92]^c[92]^c[91]^c[109]^c[109]^c[108]^c[116]^c[115]^c[122]^c[124]^c[128]^c[127]^c[135]^c[136]^c[135]^c[131]^c[130]^c[139]^c[148]^c[151]^c[154]^c[153]^c[161]^c[156]^c[160]^c[159]^c[174]^c[174]^c[173]^c[171]^c[170]^c[176]^c[187]^c[190]^c[189]^c[193]^c[192]^c[200]^c[206]^c[195]^c[207]^c[213]^c[217]^c[215]^c[214]^c[226]^c[222]^c[221]^c[231]^c[230]^c[239]^c[237]^c[236]^c[243]^c[242]^c[252]^c[251]^c[256]^c[255]^c[265]^c[267]^c[266]^c[268]^c[267]^c[278]^c[283]^c[278]^c[277]; //row: 31 d[i2+31*Zc]=c[6]^c[10]^c[2]^c[6]^c[8]^c[12]^c[10]^c[2]^c[1]^c[19]^c[23]^c[17]^c[21]^c[25]^c[17]^c[16]^c[16]^c[32]^c[36]^c[30]^c[34]^c[27]^c[31]^c[45]^c[49]^c[39]^c[43]^c[39]^c[44]^c[43]^c[58]^c[62]^c[56]^c[60]^c[54]^c[59]^c[58]^c[71]^c[75]^c[68]^c[72]^c[75]^c[66]^c[84]^c[88]^c[90]^c[81]^c[81]^c[86]^c[85]^c[97]^c[101]^c[93]^c[97]^c[92]^c[97]^c[96]^c[100]^c[110]^c[114]^c[109]^c[113]^c[116]^c[108]^c[107]^c[123]^c[127]^c[125]^c[129]^c[128]^c[119]^c[136]^c[140]^c[136]^c[140]^c[131]^c[136]^c[135]^c[149]^c[153]^c[152]^c[143]^c[154]^c[146]^c[145]^c[162]^c[166]^c[157]^c[161]^c[160]^c[165]^c[164]^c[175]^c[179]^c[174]^c[178]^c[171]^c[176]^c[175]^c[188]^c[192]^c[190]^c[194]^c[193]^c[185]^c[184]^c[201]^c[205]^c[207]^c[198]^c[195]^c[199]^c[214]^c[218]^c[218]^c[209]^c[215]^c[220]^c[219]^c[227]^c[231]^c[222]^c[226]^c[231]^c[223]^c[222]^c[240]^c[244]^c[237]^c[241]^c[243]^c[235]^c[234]^c[253]^c[257]^c[252]^c[256]^c[256]^c[247]^c[266]^c[270]^c[267]^c[271]^c[268]^c[260]^c[272]^c[279]^c[283]^c[284]^c[275]^c[278]^c[283]^c[282]; //row: 32 d[i2+32*Zc]=c[5]^c[1]^c[8]^c[7]^c[10]^c[9]^c[5]^c[18]^c[17]^c[16]^c[25]^c[24]^c[31]^c[29]^c[27]^c[26]^c[44]^c[51]^c[39]^c[51]^c[57]^c[56]^c[55]^c[54]^c[53]^c[70]^c[67]^c[75]^c[74]^c[83]^c[90]^c[89]^c[81]^c[80]^c[96]^c[93]^c[92]^c[92]^c[91]^c[109]^c[109]^c[108]^c[116]^c[115]^c[122]^c[124]^c[128]^c[127]^c[135]^c[136]^c[135]^c[131]^c[130]^c[148]^c[151]^c[154]^c[153]^c[161]^c[156]^c[160]^c[159]^c[164]^c[174]^c[174]^c[173]^c[171]^c[170]^c[187]^c[190]^c[189]^c[193]^c[192]^c[192]^c[200]^c[206]^c[195]^c[207]^c[213]^c[217]^c[215]^c[214]^c[226]^c[222]^c[221]^c[231]^c[230]^c[239]^c[237]^c[236]^c[243]^c[242]^c[252]^c[251]^c[256]^c[255]^c[265]^c[267]^c[266]^c[268]^c[267]^c[278]^c[283]^c[278]^c[277]; //row: 33 d[i2+33*Zc]=c[22]^c[29]^c[148]^c[273]; //row: 34 d[i2+34*Zc]=c[3]^c[100]^c[196]^c[232]; //row: 35 d[i2+35*Zc]=c[1]^c[10]^c[3]^c[5]^c[14]^c[25]^c[20]^c[16]^c[27]^c[38]^c[35]^c[40]^c[47]^c[47]^c[53]^c[64]^c[62]^c[66]^c[76]^c[70]^c[79]^c[85]^c[89]^c[83]^c[92]^c[101]^c[100]^c[105]^c[104]^c[111]^c[118]^c[120]^c[123]^c[131]^c[131]^c[139]^c[144]^c[147]^c[149]^c[157]^c[165]^c[168]^c[167]^c[170]^c[169]^c[179]^c[183]^c[185]^c[188]^c[196]^c[202]^c[203]^c[209]^c[213]^c[210]^c[222]^c[230]^c[226]^c[235]^c[245]^c[238]^c[248]^c[247]^c[251]^c[261]^c[262]^c[263]^c[274]^c[279]^c[273]; //row: 36 d[i2+36*Zc]=c[5]^c[186]^c[202]^c[237]; //row: 37 d[i2+37*Zc]=c[4]^c[3]^c[12]^c[5]^c[7]^c[17]^c[16]^c[14]^c[22]^c[16]^c[30]^c[29]^c[27]^c[37]^c[43]^c[42]^c[49]^c[49]^c[55]^c[53]^c[64]^c[69]^c[68]^c[65]^c[72]^c[82]^c[81]^c[87]^c[78]^c[94]^c[103]^c[102]^c[107]^c[106]^c[113]^c[121]^c[120]^c[122]^c[125]^c[134]^c[133]^c[133]^c[141]^c[147]^c[146]^c[149]^c[151]^c[160]^c[159]^c[167]^c[157]^c[173]^c[172]^c[171]^c[181]^c[170]^c[185]^c[187]^c[190]^c[199]^c[198]^c[204]^c[205]^c[212]^c[211]^c[215]^c[212]^c[224]^c[232]^c[228]^c[238]^c[237]^c[234]^c[240]^c[251]^c[250]^c[249]^c[253]^c[264]^c[263]^c[264]^c[265]^c[277]^c[276]^c[281]^c[275]; //row: 38 d[i2+38*Zc]=c[12]^c[128]^c[132]^c[164]; //row: 39 d[i2+39*Zc]=c[16]^c[40]^c[95]^c[252]; //row: 40 d[i2+40*Zc]=c[9]^c[109]^c[232]; //row: 41 d[i2+41*Zc]=c[14]^c[48]^c[128]^c[244]; //row: 42 d[i2+42*Zc]=c[4]^c[0]^c[7]^c[6]^c[9]^c[8]^c[6]^c[17]^c[16]^c[15]^c[24]^c[23]^c[30]^c[28]^c[26]^c[38]^c[43]^c[50]^c[51]^c[50]^c[56]^c[55]^c[54]^c[53]^c[52]^c[61]^c[69]^c[66]^c[74]^c[73]^c[82]^c[89]^c[88]^c[80]^c[79]^c[95]^c[92]^c[91]^c[91]^c[103]^c[108]^c[108]^c[107]^c[115]^c[114]^c[121]^c[123]^c[127]^c[126]^c[134]^c[135]^c[134]^c[130]^c[142]^c[147]^c[150]^c[153]^c[152]^c[160]^c[168]^c[159]^c[158]^c[173]^c[173]^c[172]^c[170]^c[169]^c[186]^c[189]^c[188]^c[192]^c[191]^c[199]^c[205]^c[207]^c[206]^c[212]^c[216]^c[214]^c[213]^c[225]^c[221]^c[233]^c[230]^c[229]^c[238]^c[236]^c[235]^c[242]^c[241]^c[251]^c[250]^c[255]^c[254]^c[264]^c[266]^c[265]^c[267]^c[266]^c[277]^c[282]^c[277]^c[276]; //row: 43 d[i2+43*Zc]=c[5]^c[1]^c[7]^c[10]^c[9]^c[18]^c[16]^c[25]^c[24]^c[13]^c[31]^c[29]^c[26]^c[44]^c[51]^c[39]^c[51]^c[57]^c[55]^c[54]^c[53]^c[70]^c[67]^c[74]^c[83]^c[89]^c[81]^c[80]^c[96]^c[92]^c[92]^c[91]^c[109]^c[108]^c[116]^c[115]^c[122]^c[124]^c[127]^c[135]^c[135]^c[131]^c[130]^c[148]^c[151]^c[154]^c[153]^c[161]^c[156]^c[160]^c[159]^c[174]^c[173]^c[171]^c[170]^c[187]^c[189]^c[193]^c[192]^c[200]^c[206]^c[207]^c[213]^c[217]^c[215]^c[214]^c[214]^c[226]^c[221]^c[231]^c[230]^c[239]^c[236]^c[243]^c[242]^c[241]^c[252]^c[251]^c[255]^c[265]^c[266]^c[268]^c[267]^c[278]^c[283]^c[278]^c[277]; //row: 44 d[i2+44*Zc]=c[1]^c[10]^c[3]^c[5]^c[3]^c[14]^c[25]^c[20]^c[27]^c[38]^c[35]^c[40]^c[47]^c[47]^c[53]^c[64]^c[62]^c[66]^c[76]^c[70]^c[79]^c[85]^c[89]^c[92]^c[101]^c[100]^c[96]^c[105]^c[104]^c[111]^c[118]^c[120]^c[123]^c[128]^c[131]^c[131]^c[139]^c[144]^c[147]^c[149]^c[157]^c[165]^c[168]^c[170]^c[169]^c[179]^c[183]^c[185]^c[188]^c[196]^c[202]^c[203]^c[209]^c[213]^c[210]^c[222]^c[230]^c[226]^c[235]^c[245]^c[238]^c[248]^c[247]^c[251]^c[261]^c[262]^c[263]^c[274]^c[279]^c[273]; //row: 45 d[i2+45*Zc]=c[24]^c[83]^c[139]; } break; case 14: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[12]^c[0]^c[10]^c[4]^c[15]^c[20]^c[17]^c[37]^c[30]^c[30]^c[48]^c[52]^c[52]^c[59]^c[63]^c[60]^c[73]^c[76]^c[81]^c[93]^c[87]^c[86]^c[100]^c[108]^c[99]^c[118]^c[124]^c[113]^c[139]^c[128]^c[134]^c[148]^c[153]^c[145]^c[159]^c[163]^c[154]^c[174]^c[176]^c[170]^c[186]^c[188]^c[188]^c[204]^c[199]^c[208]^c[223]^c[218]^c[216]^c[237]^c[229]^c[235]^c[249]^c[239]^c[241]^c[252]^c[256]^c[252]^c[267]^c[268]^c[278]^c[285]^c[285]^c[281]^c[304]^c[298]^c[297]; //row: 1 d[i2+1*Zc]=c[12]^c[13]^c[1]^c[11]^c[5]^c[15]^c[16]^c[21]^c[18]^c[37]^c[38]^c[31]^c[31]^c[48]^c[49]^c[53]^c[53]^c[60]^c[64]^c[61]^c[73]^c[74]^c[77]^c[82]^c[93]^c[94]^c[88]^c[87]^c[101]^c[109]^c[100]^c[119]^c[125]^c[114]^c[139]^c[126]^c[129]^c[135]^c[148]^c[149]^c[140]^c[146]^c[159]^c[160]^c[164]^c[155]^c[174]^c[175]^c[177]^c[171]^c[186]^c[187]^c[189]^c[189]^c[205]^c[200]^c[209]^c[223]^c[210]^c[219]^c[217]^c[237]^c[224]^c[230]^c[236]^c[250]^c[240]^c[242]^c[252]^c[253]^c[257]^c[253]^c[267]^c[268]^c[269]^c[279]^c[285]^c[286]^c[286]^c[282]^c[304]^c[305]^c[299]^c[298]; //row: 2 d[i2+2*Zc]=c[13]^c[1]^c[10]^c[11]^c[4]^c[5]^c[16]^c[20]^c[21]^c[17]^c[18]^c[38]^c[31]^c[30]^c[31]^c[49]^c[53]^c[52]^c[53]^c[60]^c[63]^c[64]^c[60]^c[61]^c[74]^c[77]^c[81]^c[82]^c[94]^c[87]^c[88]^c[86]^c[87]^c[101]^c[108]^c[109]^c[99]^c[100]^c[119]^c[124]^c[125]^c[113]^c[114]^c[126]^c[129]^c[134]^c[135]^c[149]^c[153]^c[140]^c[145]^c[146]^c[160]^c[164]^c[154]^c[155]^c[175]^c[177]^c[170]^c[171]^c[187]^c[188]^c[189]^c[188]^c[189]^c[205]^c[199]^c[200]^c[208]^c[209]^c[210]^c[219]^c[216]^c[217]^c[224]^c[230]^c[235]^c[236]^c[250]^c[239]^c[240]^c[241]^c[242]^c[253]^c[256]^c[257]^c[252]^c[253]^c[268]^c[269]^c[278]^c[279]^c[286]^c[285]^c[286]^c[281]^c[282]^c[305]^c[299]^c[297]^c[298]; //row: 3 d[i2+3*Zc]=c[13]^c[1]^c[11]^c[4]^c[5]^c[16]^c[21]^c[17]^c[18]^c[38]^c[31]^c[31]^c[49]^c[53]^c[52]^c[53]^c[60]^c[64]^c[60]^c[61]^c[74]^c[77]^c[82]^c[94]^c[88]^c[86]^c[87]^c[101]^c[109]^c[99]^c[100]^c[119]^c[125]^c[113]^c[114]^c[126]^c[129]^c[135]^c[149]^c[140]^c[145]^c[146]^c[160]^c[164]^c[154]^c[155]^c[175]^c[177]^c[170]^c[171]^c[187]^c[189]^c[188]^c[189]^c[205]^c[200]^c[208]^c[209]^c[210]^c[219]^c[217]^c[224]^c[230]^c[235]^c[236]^c[250]^c[240]^c[241]^c[242]^c[253]^c[257]^c[252]^c[253]^c[268]^c[269]^c[279]^c[286]^c[286]^c[281]^c[282]^c[305]^c[299]^c[297]^c[298]; //row: 4 d[i2+4*Zc]=c[1]^c[23]; //row: 5 d[i2+5*Zc]=c[11]^c[13]^c[9]^c[3]^c[9]^c[14]^c[19]^c[16]^c[16]^c[36]^c[29]^c[29]^c[47]^c[51]^c[51]^c[43]^c[58]^c[62]^c[59]^c[72]^c[75]^c[80]^c[92]^c[86]^c[85]^c[99]^c[107]^c[98]^c[117]^c[123]^c[112]^c[138]^c[127]^c[133]^c[147]^c[152]^c[144]^c[158]^c[162]^c[167]^c[173]^c[175]^c[169]^c[177]^c[185]^c[187]^c[187]^c[203]^c[198]^c[207]^c[222]^c[217]^c[215]^c[236]^c[228]^c[234]^c[237]^c[248]^c[238]^c[240]^c[265]^c[255]^c[265]^c[266]^c[267]^c[277]^c[284]^c[284]^c[280]^c[303]^c[297]^c[296]^c[297]; //row: 6 d[i2+6*Zc]=c[3]^c[90]^c[140]^c[160]^c[188]^c[246]^c[261]^c[283]; //row: 7 d[i2+7*Zc]=c[2]^c[19]^c[61]^c[99]^c[121]^c[199]; //row: 8 d[i2+8*Zc]=c[0]^c[4]^c[2]^c[6]^c[12]^c[1]^c[2]^c[6]^c[9]^c[10]^c[4]^c[17]^c[21]^c[22]^c[25]^c[26]^c[19]^c[22]^c[23]^c[24]^c[39]^c[29]^c[32]^c[36]^c[32]^c[35]^c[36]^c[50]^c[54]^c[54]^c[44]^c[54]^c[43]^c[44]^c[45]^c[61]^c[65]^c[65]^c[68]^c[69]^c[62]^c[65]^c[66]^c[75]^c[79]^c[78]^c[82]^c[83]^c[72]^c[73]^c[95]^c[85]^c[89]^c[92]^c[93]^c[88]^c[91]^c[92]^c[102]^c[106]^c[110]^c[99]^c[100]^c[101]^c[104]^c[105]^c[120]^c[124]^c[112]^c[115]^c[116]^c[115]^c[118]^c[119]^c[127]^c[131]^c[130]^c[134]^c[136]^c[139]^c[126]^c[150]^c[140]^c[141]^c[144]^c[145]^c[147]^c[150]^c[151]^c[161]^c[165]^c[165]^c[155]^c[156]^c[159]^c[160]^c[176]^c[180]^c[178]^c[168]^c[172]^c[175]^c[176]^c[174]^c[188]^c[192]^c[190]^c[193]^c[194]^c[190]^c[193]^c[194]^c[206]^c[196]^c[201]^c[204]^c[205]^c[196]^c[199]^c[200]^c[211]^c[215]^c[220]^c[210]^c[218]^c[221]^c[222]^c[225]^c[229]^c[231]^c[235]^c[237]^c[226]^c[227]^c[231]^c[251]^c[241]^c[241]^c[244]^c[245]^c[243]^c[246]^c[247]^c[254]^c[258]^c[258]^c[261]^c[262]^c[254]^c[257]^c[258]^c[269]^c[273]^c[270]^c[274]^c[266]^c[269]^c[270]^c[276]^c[287]^c[291]^c[287]^c[290]^c[291]^c[283]^c[286]^c[287]^c[306]^c[296]^c[300]^c[304]^c[299]^c[302]^c[303]^c[295]; //row: 9 d[i2+9*Zc]=c[8]^c[22]^c[142]^c[160]^c[186]^c[240]^c[262]^c[287]; //row: 10 d[i2+10*Zc]=c[25]^c[38]^c[61]^c[102]^c[123]^c[200]; //row: 11 d[i2+11*Zc]=c[12]^c[3]^c[4]^c[0]^c[6]^c[10]^c[2]^c[4]^c[10]^c[9]^c[15]^c[20]^c[21]^c[20]^c[26]^c[17]^c[23]^c[24]^c[37]^c[28]^c[29]^c[30]^c[36]^c[30]^c[36]^c[48]^c[53]^c[54]^c[52]^c[44]^c[52]^c[44]^c[59]^c[65]^c[63]^c[69]^c[60]^c[66]^c[73]^c[78]^c[79]^c[76]^c[82]^c[81]^c[73]^c[93]^c[84]^c[85]^c[87]^c[93]^c[86]^c[92]^c[100]^c[106]^c[108]^c[100]^c[99]^c[105]^c[118]^c[124]^c[124]^c[116]^c[113]^c[119]^c[139]^c[130]^c[131]^c[128]^c[134]^c[134]^c[126]^c[148]^c[153]^c[140]^c[153]^c[145]^c[145]^c[151]^c[159]^c[164]^c[165]^c[163]^c[155]^c[154]^c[160]^c[174]^c[179]^c[180]^c[176]^c[168]^c[170]^c[176]^c[169]^c[186]^c[191]^c[192]^c[188]^c[194]^c[188]^c[194]^c[204]^c[196]^c[199]^c[205]^c[208]^c[200]^c[223]^c[214]^c[215]^c[218]^c[210]^c[216]^c[222]^c[237]^c[228]^c[229]^c[229]^c[235]^c[235]^c[227]^c[230]^c[249]^c[241]^c[239]^c[245]^c[241]^c[247]^c[252]^c[257]^c[258]^c[256]^c[262]^c[252]^c[258]^c[267]^c[272]^c[273]^c[268]^c[274]^c[278]^c[270]^c[285]^c[290]^c[291]^c[285]^c[291]^c[281]^c[287]^c[304]^c[295]^c[296]^c[298]^c[304]^c[297]^c[303]^c[297]; //row: 12 d[i2+12*Zc]=c[1]^c[20]^c[149]^c[156]^c[195]^c[265]; //row: 13 d[i2+13*Zc]=c[6]^c[7]^c[9]^c[5]^c[13]^c[10]^c[23]^c[24]^c[15]^c[26]^c[31]^c[32]^c[39]^c[39]^c[42]^c[43]^c[47]^c[47]^c[55]^c[68]^c[58]^c[69]^c[81]^c[82]^c[71]^c[76]^c[87]^c[88]^c[96]^c[95]^c[109]^c[103]^c[108]^c[99]^c[113]^c[119]^c[122]^c[133]^c[134]^c[137]^c[129]^c[142]^c[143]^c[148]^c[140]^c[167]^c[154]^c[158]^c[163]^c[168]^c[169]^c[171]^c[179]^c[194]^c[195]^c[183]^c[183]^c[199]^c[208]^c[203]^c[217]^c[218]^c[213]^c[211]^c[231]^c[232]^c[224]^c[230]^c[244]^c[248]^c[250]^c[260]^c[261]^c[265]^c[261]^c[275]^c[276]^c[277]^c[273]^c[293]^c[280]^c[280]^c[290]^c[286]^c[298]^c[299]^c[307]^c[306]; //row: 14 d[i2+14*Zc]=c[13]^c[174]^c[210]^c[232]^c[246]^c[294]; //row: 15 d[i2+15*Zc]=c[10]^c[12]^c[8]^c[1]^c[2]^c[5]^c[27]^c[18]^c[14]^c[15]^c[21]^c[35]^c[28]^c[28]^c[46]^c[50]^c[49]^c[50]^c[57]^c[61]^c[57]^c[58]^c[71]^c[74]^c[79]^c[91]^c[85]^c[97]^c[84]^c[98]^c[106]^c[110]^c[111]^c[116]^c[122]^c[124]^c[125]^c[137]^c[126]^c[132]^c[146]^c[151]^c[142]^c[143]^c[144]^c[157]^c[161]^c[165]^c[166]^c[172]^c[174]^c[181]^c[168]^c[184]^c[186]^c[185]^c[186]^c[194]^c[202]^c[197]^c[205]^c[206]^c[221]^c[216]^c[214]^c[235]^c[227]^c[232]^c[233]^c[247]^c[251]^c[238]^c[239]^c[264]^c[254]^c[263]^c[264]^c[264]^c[279]^c[266]^c[276]^c[283]^c[283]^c[292]^c[293]^c[302]^c[296]^c[294]^c[295]; //row: 16 d[i2+16*Zc]=c[1]^c[3]^c[13]^c[7]^c[18]^c[23]^c[20]^c[27]^c[40]^c[33]^c[33]^c[51]^c[55]^c[55]^c[51]^c[62]^c[66]^c[63]^c[76]^c[79]^c[70]^c[96]^c[90]^c[89]^c[103]^c[111]^c[102]^c[121]^c[113]^c[116]^c[128]^c[131]^c[137]^c[151]^c[142]^c[148]^c[162]^c[166]^c[157]^c[154]^c[177]^c[179]^c[173]^c[189]^c[191]^c[191]^c[207]^c[202]^c[197]^c[212]^c[221]^c[219]^c[226]^c[232]^c[224]^c[238]^c[242]^c[244]^c[255]^c[259]^c[255]^c[270]^c[271]^c[267]^c[288]^c[288]^c[284]^c[286]^c[307]^c[301]^c[300]; //row: 17 d[i2+17*Zc]=c[13]^c[207]^c[227]^c[244]^c[297]; //row: 18 d[i2+18*Zc]=c[16]^c[179]^c[185]^c[254]^c[269]; //row: 19 d[i2+19*Zc]=c[7]^c[19]^c[102]^c[113]^c[147]; //row: 20 d[i2+20*Zc]=c[13]^c[1]^c[11]^c[5]^c[6]^c[16]^c[21]^c[18]^c[38]^c[31]^c[31]^c[49]^c[53]^c[53]^c[55]^c[60]^c[64]^c[61]^c[74]^c[77]^c[82]^c[94]^c[88]^c[87]^c[101]^c[109]^c[100]^c[119]^c[125]^c[114]^c[126]^c[129]^c[135]^c[134]^c[149]^c[140]^c[146]^c[160]^c[164]^c[155]^c[157]^c[175]^c[177]^c[171]^c[187]^c[189]^c[189]^c[205]^c[200]^c[209]^c[210]^c[219]^c[217]^c[224]^c[230]^c[236]^c[250]^c[240]^c[242]^c[253]^c[257]^c[253]^c[268]^c[269]^c[279]^c[286]^c[286]^c[282]^c[305]^c[299]^c[298]; //row: 21 d[i2+21*Zc]=c[23]^c[74]^c[233]^c[287]^c[301]; //row: 22 d[i2+22*Zc]=c[10]^c[181]^c[184]^c[245]; //row: 23 d[i2+23*Zc]=c[17]^c[34]^c[153]^c[261]; //row: 24 d[i2+24*Zc]=c[10]^c[12]^c[8]^c[2]^c[6]^c[27]^c[18]^c[15]^c[35]^c[28]^c[28]^c[46]^c[50]^c[50]^c[44]^c[57]^c[61]^c[58]^c[63]^c[71]^c[74]^c[79]^c[91]^c[85]^c[84]^c[98]^c[106]^c[111]^c[116]^c[122]^c[125]^c[137]^c[126]^c[132]^c[146]^c[151]^c[143]^c[157]^c[161]^c[166]^c[164]^c[172]^c[174]^c[168]^c[184]^c[186]^c[186]^c[202]^c[197]^c[206]^c[221]^c[216]^c[214]^c[235]^c[227]^c[233]^c[247]^c[251]^c[239]^c[264]^c[254]^c[264]^c[279]^c[266]^c[276]^c[283]^c[283]^c[293]^c[302]^c[296]^c[295]; //row: 25 d[i2+25*Zc]=c[14]^c[95]^c[106]^c[206]; //row: 26 d[i2+26*Zc]=c[8]^c[35]^c[57]^c[210]; //row: 27 d[i2+27*Zc]=c[25]^c[84]^c[117]; //row: 28 d[i2+28*Zc]=c[5]^c[68]^c[272]^c[295]; //row: 29 d[i2+29*Zc]=c[11]^c[13]^c[9]^c[2]^c[3]^c[14]^c[19]^c[15]^c[16]^c[23]^c[36]^c[29]^c[29]^c[47]^c[51]^c[50]^c[51]^c[58]^c[62]^c[58]^c[59]^c[72]^c[75]^c[80]^c[92]^c[86]^c[84]^c[85]^c[99]^c[107]^c[111]^c[98]^c[117]^c[123]^c[125]^c[112]^c[138]^c[127]^c[133]^c[147]^c[152]^c[143]^c[144]^c[158]^c[162]^c[166]^c[167]^c[173]^c[175]^c[168]^c[169]^c[185]^c[187]^c[186]^c[187]^c[203]^c[198]^c[206]^c[207]^c[206]^c[222]^c[217]^c[215]^c[236]^c[228]^c[233]^c[234]^c[248]^c[238]^c[239]^c[240]^c[265]^c[255]^c[264]^c[265]^c[262]^c[266]^c[267]^c[277]^c[284]^c[284]^c[293]^c[280]^c[303]^c[297]^c[295]^c[296]; //row: 30 d[i2+30*Zc]=c[10]^c[12]^c[7]^c[8]^c[1]^c[2]^c[5]^c[27]^c[17]^c[18]^c[14]^c[15]^c[35]^c[28]^c[41]^c[28]^c[46]^c[50]^c[49]^c[50]^c[57]^c[60]^c[61]^c[57]^c[58]^c[71]^c[74]^c[78]^c[79]^c[91]^c[84]^c[85]^c[97]^c[84]^c[98]^c[105]^c[106]^c[110]^c[111]^c[116]^c[121]^c[122]^c[124]^c[125]^c[137]^c[126]^c[131]^c[132]^c[146]^c[150]^c[151]^c[142]^c[143]^c[143]^c[157]^c[161]^c[165]^c[166]^c[172]^c[174]^c[181]^c[168]^c[184]^c[185]^c[186]^c[185]^c[186]^c[195]^c[202]^c[196]^c[197]^c[205]^c[206]^c[221]^c[216]^c[213]^c[214]^c[235]^c[227]^c[232]^c[233]^c[247]^c[250]^c[251]^c[238]^c[239]^c[264]^c[253]^c[254]^c[263]^c[264]^c[279]^c[266]^c[275]^c[276]^c[283]^c[282]^c[283]^c[292]^c[293]^c[302]^c[296]^c[294]^c[295]; //row: 31 d[i2+31*Zc]=c[7]^c[1]^c[9]^c[3]^c[5]^c[13]^c[13]^c[6]^c[7]^c[24]^c[18]^c[15]^c[23]^c[26]^c[19]^c[20]^c[20]^c[32]^c[40]^c[39]^c[33]^c[39]^c[33]^c[43]^c[51]^c[47]^c[55]^c[47]^c[54]^c[55]^c[68]^c[62]^c[58]^c[66]^c[69]^c[62]^c[63]^c[82]^c[76]^c[71]^c[79]^c[76]^c[70]^c[88]^c[96]^c[96]^c[90]^c[95]^c[88]^c[89]^c[109]^c[103]^c[103]^c[111]^c[108]^c[101]^c[102]^c[104]^c[113]^c[121]^c[119]^c[113]^c[122]^c[115]^c[116]^c[134]^c[128]^c[137]^c[131]^c[129]^c[137]^c[143]^c[151]^c[148]^c[142]^c[140]^c[147]^c[148]^c[154]^c[162]^c[158]^c[166]^c[163]^c[156]^c[157]^c[169]^c[177]^c[171]^c[179]^c[179]^c[172]^c[173]^c[195]^c[189]^c[183]^c[191]^c[183]^c[190]^c[191]^c[199]^c[207]^c[208]^c[202]^c[203]^c[196]^c[197]^c[218]^c[212]^c[213]^c[221]^c[211]^c[219]^c[232]^c[226]^c[224]^c[232]^c[230]^c[237]^c[224]^c[244]^c[238]^c[248]^c[242]^c[250]^c[243]^c[244]^c[261]^c[255]^c[265]^c[259]^c[261]^c[254]^c[255]^c[276]^c[270]^c[277]^c[271]^c[273]^c[267]^c[280]^c[288]^c[280]^c[288]^c[290]^c[283]^c[284]^c[299]^c[307]^c[307]^c[301]^c[306]^c[299]^c[300]; //row: 32 d[i2+32*Zc]=c[1]^c[3]^c[12]^c[13]^c[6]^c[7]^c[9]^c[18]^c[22]^c[23]^c[19]^c[20]^c[40]^c[33]^c[32]^c[33]^c[51]^c[55]^c[54]^c[55]^c[62]^c[65]^c[66]^c[62]^c[63]^c[76]^c[79]^c[83]^c[70]^c[96]^c[89]^c[90]^c[88]^c[89]^c[103]^c[110]^c[111]^c[101]^c[102]^c[121]^c[112]^c[113]^c[115]^c[116]^c[128]^c[131]^c[136]^c[137]^c[151]^c[141]^c[142]^c[147]^c[148]^c[162]^c[166]^c[156]^c[157]^c[177]^c[179]^c[172]^c[173]^c[180]^c[189]^c[190]^c[191]^c[190]^c[191]^c[207]^c[201]^c[202]^c[196]^c[197]^c[197]^c[212]^c[221]^c[218]^c[219]^c[226]^c[232]^c[237]^c[224]^c[238]^c[241]^c[242]^c[243]^c[244]^c[255]^c[258]^c[259]^c[254]^c[255]^c[270]^c[271]^c[266]^c[267]^c[288]^c[287]^c[288]^c[283]^c[284]^c[307]^c[301]^c[299]^c[300]; //row: 33 d[i2+33*Zc]=c[15]^c[34]^c[160]^c[304]; //row: 34 d[i2+34*Zc]=c[11]^c[101]^c[221]^c[247]; //row: 35 d[i2+35*Zc]=c[3]^c[5]^c[1]^c[9]^c[20]^c[25]^c[22]^c[23]^c[28]^c[35]^c[35]^c[53]^c[43]^c[43]^c[64]^c[68]^c[65]^c[78]^c[81]^c[72]^c[84]^c[92]^c[91]^c[88]^c[105]^c[99]^c[104]^c[123]^c[115]^c[118]^c[130]^c[133]^c[139]^c[153]^c[144]^c[150]^c[164]^c[154]^c[159]^c[179]^c[181]^c[175]^c[179]^c[191]^c[193]^c[193]^c[209]^c[204]^c[199]^c[214]^c[223]^c[221]^c[228]^c[234]^c[226]^c[240]^c[244]^c[246]^c[257]^c[261]^c[257]^c[272]^c[273]^c[269]^c[290]^c[290]^c[286]^c[295]^c[303]^c[302]; //row: 36 d[i2+36*Zc]=c[11]^c[198]^c[223]^c[257]; //row: 37 d[i2+37*Zc]=c[10]^c[11]^c[13]^c[9]^c[3]^c[27]^c[14]^c[19]^c[16]^c[24]^c[35]^c[36]^c[29]^c[29]^c[46]^c[47]^c[51]^c[51]^c[58]^c[62]^c[59]^c[71]^c[72]^c[75]^c[80]^c[91]^c[92]^c[86]^c[85]^c[99]^c[107]^c[98]^c[117]^c[123]^c[112]^c[137]^c[138]^c[127]^c[133]^c[146]^c[147]^c[152]^c[144]^c[157]^c[158]^c[162]^c[167]^c[172]^c[173]^c[175]^c[169]^c[184]^c[185]^c[187]^c[187]^c[194]^c[203]^c[198]^c[207]^c[221]^c[222]^c[217]^c[215]^c[235]^c[236]^c[228]^c[234]^c[248]^c[238]^c[240]^c[264]^c[265]^c[255]^c[265]^c[279]^c[266]^c[267]^c[277]^c[283]^c[284]^c[284]^c[280]^c[302]^c[303]^c[297]^c[296]; //row: 38 d[i2+38*Zc]=c[10]^c[131]^c[142]^c[177]; //row: 39 d[i2+39*Zc]=c[25]^c[48]^c[104]^c[267]; //row: 40 d[i2+40*Zc]=c[10]^c[114]^c[249]; //row: 41 d[i2+41*Zc]=c[22]^c[46]^c[129]^c[264]; //row: 42 d[i2+42*Zc]=c[7]^c[9]^c[4]^c[5]^c[12]^c[13]^c[1]^c[24]^c[14]^c[15]^c[25]^c[26]^c[32]^c[39]^c[38]^c[39]^c[43]^c[47]^c[46]^c[47]^c[68]^c[57]^c[58]^c[68]^c[69]^c[62]^c[82]^c[71]^c[75]^c[76]^c[88]^c[95]^c[96]^c[94]^c[95]^c[109]^c[102]^c[103]^c[107]^c[108]^c[113]^c[118]^c[119]^c[121]^c[122]^c[134]^c[137]^c[128]^c[129]^c[143]^c[147]^c[148]^c[153]^c[140]^c[154]^c[158]^c[162]^c[163]^c[169]^c[171]^c[178]^c[179]^c[195]^c[182]^c[183]^c[182]^c[183]^c[199]^c[207]^c[208]^c[202]^c[203]^c[218]^c[213]^c[210]^c[211]^c[232]^c[224]^c[229]^c[230]^c[244]^c[247]^c[248]^c[249]^c[250]^c[261]^c[264]^c[265]^c[260]^c[261]^c[276]^c[277]^c[272]^c[273]^c[280]^c[293]^c[280]^c[289]^c[290]^c[299]^c[307]^c[305]^c[306]; //row: 43 d[i2+43*Zc]=c[6]^c[8]^c[4]^c[11]^c[12]^c[23]^c[14]^c[24]^c[25]^c[23]^c[31]^c[38]^c[38]^c[42]^c[46]^c[45]^c[46]^c[67]^c[57]^c[67]^c[68]^c[81]^c[70]^c[75]^c[87]^c[95]^c[93]^c[94]^c[108]^c[102]^c[106]^c[107]^c[112]^c[118]^c[120]^c[121]^c[133]^c[136]^c[128]^c[142]^c[147]^c[152]^c[153]^c[167]^c[157]^c[161]^c[162]^c[168]^c[170]^c[177]^c[178]^c[194]^c[182]^c[195]^c[182]^c[198]^c[207]^c[201]^c[202]^c[217]^c[212]^c[210]^c[231]^c[237]^c[228]^c[229]^c[231]^c[243]^c[247]^c[248]^c[249]^c[260]^c[264]^c[259]^c[260]^c[259]^c[275]^c[276]^c[272]^c[293]^c[293]^c[288]^c[289]^c[298]^c[306]^c[304]^c[305]; //row: 44 d[i2+44*Zc]=c[10]^c[12]^c[8]^c[2]^c[13]^c[27]^c[18]^c[15]^c[35]^c[28]^c[28]^c[46]^c[50]^c[50]^c[57]^c[61]^c[58]^c[71]^c[74]^c[79]^c[91]^c[85]^c[84]^c[98]^c[106]^c[111]^c[101]^c[116]^c[122]^c[125]^c[137]^c[126]^c[132]^c[134]^c[146]^c[151]^c[143]^c[157]^c[161]^c[166]^c[172]^c[174]^c[168]^c[184]^c[186]^c[186]^c[202]^c[197]^c[206]^c[221]^c[216]^c[214]^c[235]^c[227]^c[233]^c[247]^c[251]^c[239]^c[264]^c[254]^c[264]^c[279]^c[266]^c[276]^c[283]^c[283]^c[293]^c[302]^c[296]^c[295]; //row: 45 d[i2+45*Zc]=c[15]^c[92]^c[140]; } break; case 15: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[14]^c[5]^c[8]^c[7]^c[16]^c[18]^c[22]^c[35]^c[40]^c[44]^c[58]^c[45]^c[56]^c[70]^c[60]^c[69]^c[83]^c[82]^c[85]^c[97]^c[101]^c[102]^c[106]^c[118]^c[110]^c[126]^c[121]^c[125]^c[142]^c[145]^c[143]^c[164]^c[157]^c[150]^c[174]^c[175]^c[170]^c[187]^c[188]^c[186]^c[209]^c[200]^c[203]^c[214]^c[220]^c[211]^c[239]^c[234]^c[227]^c[246]^c[242]^c[244]^c[266]^c[260]^c[256]^c[279]^c[274]^c[279]^c[299]^c[297]^c[291]^c[314]^c[304]^c[306]^c[316]^c[320]^c[323]; //row: 1 d[i2+1*Zc]=c[14]^c[0]^c[6]^c[9]^c[8]^c[16]^c[17]^c[19]^c[23]^c[35]^c[36]^c[41]^c[30]^c[58]^c[59]^c[46]^c[57]^c[71]^c[61]^c[70]^c[83]^c[84]^c[83]^c[86]^c[97]^c[98]^c[102]^c[103]^c[107]^c[119]^c[111]^c[127]^c[122]^c[126]^c[142]^c[143]^c[146]^c[144]^c[164]^c[150]^c[158]^c[151]^c[174]^c[175]^c[176]^c[171]^c[187]^c[188]^c[189]^c[187]^c[209]^c[195]^c[201]^c[204]^c[215]^c[221]^c[212]^c[239]^c[225]^c[235]^c[228]^c[246]^c[247]^c[243]^c[245]^c[267]^c[261]^c[257]^c[279]^c[280]^c[275]^c[280]^c[299]^c[285]^c[298]^c[292]^c[314]^c[300]^c[305]^c[307]^c[316]^c[317]^c[321]^c[324]; //row: 2 d[i2+2*Zc]=c[0]^c[6]^c[8]^c[9]^c[7]^c[8]^c[17]^c[18]^c[19]^c[22]^c[23]^c[36]^c[41]^c[44]^c[30]^c[59]^c[46]^c[56]^c[57]^c[71]^c[60]^c[61]^c[69]^c[70]^c[84]^c[83]^c[85]^c[86]^c[98]^c[101]^c[102]^c[102]^c[103]^c[107]^c[118]^c[119]^c[110]^c[111]^c[127]^c[121]^c[122]^c[125]^c[126]^c[143]^c[146]^c[143]^c[144]^c[150]^c[157]^c[158]^c[150]^c[151]^c[175]^c[176]^c[170]^c[171]^c[188]^c[189]^c[186]^c[187]^c[195]^c[200]^c[201]^c[203]^c[204]^c[215]^c[220]^c[221]^c[211]^c[212]^c[225]^c[235]^c[227]^c[228]^c[247]^c[243]^c[244]^c[245]^c[267]^c[260]^c[261]^c[256]^c[257]^c[280]^c[274]^c[275]^c[279]^c[280]^c[285]^c[298]^c[291]^c[292]^c[300]^c[304]^c[305]^c[306]^c[307]^c[317]^c[321]^c[323]^c[324]; //row: 3 d[i2+3*Zc]=c[0]^c[6]^c[9]^c[7]^c[8]^c[17]^c[19]^c[22]^c[23]^c[36]^c[41]^c[30]^c[59]^c[46]^c[56]^c[57]^c[71]^c[61]^c[69]^c[70]^c[84]^c[83]^c[86]^c[98]^c[102]^c[102]^c[103]^c[107]^c[119]^c[110]^c[111]^c[127]^c[122]^c[125]^c[126]^c[143]^c[146]^c[144]^c[150]^c[158]^c[150]^c[151]^c[175]^c[176]^c[170]^c[171]^c[188]^c[189]^c[186]^c[187]^c[195]^c[201]^c[203]^c[204]^c[215]^c[221]^c[211]^c[212]^c[225]^c[235]^c[228]^c[247]^c[243]^c[244]^c[245]^c[267]^c[261]^c[256]^c[257]^c[280]^c[275]^c[279]^c[280]^c[285]^c[298]^c[292]^c[300]^c[305]^c[306]^c[307]^c[317]^c[321]^c[323]^c[324]; //row: 4 d[i2+4*Zc]=c[3]^c[15]; //row: 5 d[i2+5*Zc]=c[14]^c[5]^c[8]^c[7]^c[1]^c[16]^c[18]^c[22]^c[20]^c[35]^c[40]^c[44]^c[58]^c[45]^c[56]^c[46]^c[70]^c[60]^c[69]^c[83]^c[82]^c[85]^c[97]^c[101]^c[102]^c[106]^c[118]^c[110]^c[126]^c[121]^c[125]^c[142]^c[145]^c[143]^c[164]^c[157]^c[150]^c[174]^c[175]^c[170]^c[187]^c[188]^c[186]^c[187]^c[209]^c[200]^c[203]^c[214]^c[220]^c[211]^c[239]^c[234]^c[227]^c[246]^c[242]^c[244]^c[254]^c[266]^c[260]^c[256]^c[279]^c[274]^c[279]^c[299]^c[297]^c[291]^c[314]^c[304]^c[306]^c[316]^c[320]^c[323]^c[329]; //row: 6 d[i2+6*Zc]=c[3]^c[96]^c[157]^c[174]^c[196]^c[266]^c[276]^c[312]; //row: 7 d[i2+7*Zc]=c[1]^c[25]^c[73]^c[106]^c[120]^c[212]; //row: 8 d[i2+8*Zc]=c[2]^c[8]^c[8]^c[14]^c[11]^c[1]^c[2]^c[10]^c[0]^c[1]^c[0]^c[19]^c[25]^c[21]^c[26]^c[27]^c[25]^c[15]^c[16]^c[29]^c[38]^c[44]^c[43]^c[34]^c[32]^c[37]^c[38]^c[46]^c[52]^c[48]^c[54]^c[59]^c[49]^c[50]^c[50]^c[73]^c[64]^c[63]^c[68]^c[69]^c[72]^c[62]^c[63]^c[86]^c[77]^c[85]^c[76]^c[88]^c[78]^c[79]^c[100]^c[91]^c[104]^c[94]^c[95]^c[90]^c[95]^c[96]^c[109]^c[115]^c[106]^c[111]^c[112]^c[113]^c[118]^c[119]^c[129]^c[120]^c[124]^c[129]^c[130]^c[128]^c[133]^c[134]^c[145]^c[136]^c[148]^c[139]^c[146]^c[136]^c[137]^c[152]^c[158]^c[160]^c[150]^c[151]^c[153]^c[158]^c[159]^c[177]^c[168]^c[178]^c[169]^c[173]^c[178]^c[179]^c[190]^c[181]^c[191]^c[182]^c[189]^c[194]^c[180]^c[192]^c[197]^c[203]^c[203]^c[208]^c[209]^c[206]^c[196]^c[197]^c[217]^c[223]^c[223]^c[213]^c[214]^c[214]^c[219]^c[220]^c[227]^c[233]^c[237]^c[228]^c[230]^c[235]^c[236]^c[249]^c[240]^c[245]^c[251]^c[247]^c[252]^c[253]^c[251]^c[269]^c[260]^c[263]^c[268]^c[269]^c[259]^c[264]^c[265]^c[282]^c[273]^c[277]^c[282]^c[283]^c[282]^c[272]^c[273]^c[287]^c[293]^c[285]^c[291]^c[294]^c[299]^c[285]^c[294]^c[302]^c[308]^c[307]^c[312]^c[313]^c[309]^c[314]^c[300]^c[319]^c[325]^c[323]^c[329]^c[326]^c[316]^c[317]^c[318]; //row: 9 d[i2+9*Zc]=c[3]^c[26]^c[160]^c[175]^c[196]^c[256]^c[271]^c[309]; //row: 10 d[i2+10*Zc]=c[25]^c[30]^c[69]^c[109]^c[129]^c[218]; //row: 11 d[i2+11*Zc]=c[14]^c[1]^c[2]^c[5]^c[8]^c[8]^c[11]^c[7]^c[10]^c[14]^c[16]^c[18]^c[19]^c[18]^c[21]^c[22]^c[25]^c[24]^c[35]^c[37]^c[38]^c[40]^c[43]^c[44]^c[32]^c[58]^c[45]^c[46]^c[45]^c[48]^c[56]^c[59]^c[70]^c[73]^c[60]^c[63]^c[69]^c[72]^c[83]^c[85]^c[86]^c[82]^c[85]^c[85]^c[88]^c[97]^c[99]^c[100]^c[101]^c[104]^c[102]^c[90]^c[106]^c[109]^c[118]^c[106]^c[110]^c[113]^c[126]^c[129]^c[121]^c[124]^c[125]^c[128]^c[142]^c[144]^c[145]^c[145]^c[148]^c[143]^c[146]^c[164]^c[151]^c[152]^c[157]^c[160]^c[150]^c[153]^c[174]^c[176]^c[177]^c[175]^c[178]^c[170]^c[173]^c[187]^c[189]^c[190]^c[188]^c[191]^c[186]^c[189]^c[193]^c[209]^c[196]^c[197]^c[200]^c[203]^c[203]^c[206]^c[214]^c[217]^c[220]^c[223]^c[211]^c[214]^c[239]^c[226]^c[227]^c[234]^c[237]^c[227]^c[230]^c[246]^c[248]^c[249]^c[242]^c[245]^c[244]^c[247]^c[240]^c[266]^c[269]^c[260]^c[263]^c[256]^c[259]^c[279]^c[281]^c[282]^c[274]^c[277]^c[279]^c[282]^c[299]^c[286]^c[287]^c[297]^c[285]^c[291]^c[294]^c[314]^c[301]^c[302]^c[304]^c[307]^c[306]^c[309]^c[316]^c[318]^c[319]^c[320]^c[323]^c[323]^c[326]^c[316]; //row: 12 d[i2+12*Zc]=c[5]^c[19]^c[153]^c[179]^c[202]^c[274]; //row: 13 d[i2+13*Zc]=c[14]^c[0]^c[6]^c[9]^c[8]^c[9]^c[16]^c[17]^c[19]^c[23]^c[35]^c[36]^c[41]^c[30]^c[58]^c[59]^c[46]^c[57]^c[49]^c[71]^c[61]^c[70]^c[83]^c[84]^c[83]^c[86]^c[97]^c[98]^c[102]^c[103]^c[107]^c[119]^c[111]^c[108]^c[127]^c[122]^c[126]^c[142]^c[143]^c[146]^c[144]^c[164]^c[150]^c[158]^c[151]^c[174]^c[175]^c[176]^c[171]^c[187]^c[188]^c[189]^c[187]^c[209]^c[195]^c[201]^c[204]^c[215]^c[221]^c[212]^c[239]^c[225]^c[235]^c[228]^c[246]^c[247]^c[243]^c[245]^c[267]^c[261]^c[257]^c[279]^c[280]^c[275]^c[280]^c[299]^c[285]^c[298]^c[292]^c[314]^c[300]^c[305]^c[307]^c[312]^c[316]^c[317]^c[321]^c[324]; //row: 14 d[i2+14*Zc]=c[3]^c[188]^c[226]^c[244]^c[266]^c[315]; //row: 15 d[i2+15*Zc]=c[4]^c[10]^c[13]^c[11]^c[12]^c[8]^c[21]^c[23]^c[26]^c[27]^c[17]^c[40]^c[30]^c[34]^c[48]^c[50]^c[45]^c[46]^c[60]^c[65]^c[73]^c[74]^c[88]^c[87]^c[75]^c[102]^c[91]^c[91]^c[92]^c[111]^c[108]^c[114]^c[115]^c[131]^c[126]^c[129]^c[130]^c[147]^c[135]^c[148]^c[154]^c[162]^c[154]^c[155]^c[159]^c[179]^c[165]^c[174]^c[175]^c[192]^c[193]^c[190]^c[191]^c[199]^c[205]^c[207]^c[208]^c[202]^c[219]^c[210]^c[215]^c[216]^c[229]^c[239]^c[232]^c[251]^c[247]^c[248]^c[249]^c[256]^c[265]^c[260]^c[261]^c[284]^c[279]^c[283]^c[284]^c[276]^c[289]^c[287]^c[296]^c[304]^c[309]^c[310]^c[311]^c[321]^c[325]^c[327]^c[328]; //row: 16 d[i2+16*Zc]=c[9]^c[0]^c[3]^c[2]^c[26]^c[28]^c[17]^c[17]^c[30]^c[35]^c[39]^c[53]^c[55]^c[51]^c[46]^c[65]^c[70]^c[64]^c[78]^c[77]^c[80]^c[92]^c[96]^c[97]^c[116]^c[113]^c[105]^c[121]^c[131]^c[120]^c[137]^c[140]^c[138]^c[159]^c[152]^c[160]^c[169]^c[170]^c[165]^c[173]^c[182]^c[183]^c[181]^c[204]^c[195]^c[198]^c[224]^c[215]^c[221]^c[234]^c[229]^c[237]^c[241]^c[252]^c[254]^c[261]^c[255]^c[266]^c[274]^c[284]^c[274]^c[294]^c[292]^c[286]^c[309]^c[314]^c[301]^c[304]^c[326]^c[315]^c[318]; //row: 17 d[i2+17*Zc]=c[2]^c[216]^c[240]^c[263]^c[323]; //row: 18 d[i2+18*Zc]=c[17]^c[184]^c[209]^c[277]^c[298]; //row: 19 d[i2+19*Zc]=c[13]^c[17]^c[113]^c[122]^c[150]; //row: 20 d[i2+20*Zc]=c[9]^c[0]^c[3]^c[2]^c[1]^c[26]^c[28]^c[17]^c[30]^c[35]^c[39]^c[53]^c[55]^c[51]^c[51]^c[65]^c[70]^c[64]^c[78]^c[77]^c[80]^c[92]^c[96]^c[97]^c[116]^c[113]^c[105]^c[121]^c[131]^c[120]^c[137]^c[140]^c[138]^c[142]^c[159]^c[152]^c[160]^c[169]^c[170]^c[165]^c[166]^c[182]^c[183]^c[181]^c[204]^c[195]^c[198]^c[224]^c[215]^c[221]^c[234]^c[229]^c[237]^c[241]^c[252]^c[254]^c[261]^c[255]^c[266]^c[274]^c[284]^c[274]^c[294]^c[292]^c[286]^c[309]^c[314]^c[301]^c[326]^c[315]^c[318]; //row: 21 d[i2+21*Zc]=c[16]^c[76]^c[244]^c[304]^c[320]; //row: 22 d[i2+22*Zc]=c[9]^c[181]^c[200]^c[267]; //row: 23 d[i2+23*Zc]=c[19]^c[36]^c[161]^c[273]; //row: 24 d[i2+24*Zc]=c[12]^c[3]^c[6]^c[5]^c[1]^c[29]^c[16]^c[20]^c[33]^c[38]^c[42]^c[56]^c[58]^c[54]^c[57]^c[68]^c[73]^c[67]^c[61]^c[81]^c[80]^c[83]^c[95]^c[99]^c[100]^c[119]^c[116]^c[108]^c[124]^c[134]^c[123]^c[140]^c[143]^c[141]^c[162]^c[155]^c[163]^c[172]^c[173]^c[168]^c[170]^c[185]^c[186]^c[184]^c[207]^c[198]^c[201]^c[212]^c[218]^c[224]^c[237]^c[232]^c[225]^c[244]^c[240]^c[242]^c[264]^c[258]^c[269]^c[277]^c[272]^c[277]^c[297]^c[295]^c[289]^c[312]^c[302]^c[304]^c[329]^c[318]^c[321]; //row: 25 d[i2+25*Zc]=c[26]^c[95]^c[115]^c[210]; //row: 26 d[i2+26*Zc]=c[12]^c[40]^c[63]^c[232]; //row: 27 d[i2+27*Zc]=c[29]^c[96]^c[128]; //row: 28 d[i2+28*Zc]=c[1]^c[72]^c[289]^c[324]; //row: 29 d[i2+29*Zc]=c[13]^c[4]^c[7]^c[5]^c[6]^c[15]^c[17]^c[20]^c[21]^c[21]^c[34]^c[39]^c[43]^c[57]^c[59]^c[54]^c[55]^c[69]^c[74]^c[67]^c[68]^c[82]^c[81]^c[84]^c[96]^c[100]^c[100]^c[101]^c[105]^c[117]^c[108]^c[109]^c[125]^c[120]^c[123]^c[124]^c[141]^c[144]^c[142]^c[163]^c[156]^c[163]^c[164]^c[173]^c[174]^c[168]^c[169]^c[186]^c[187]^c[184]^c[185]^c[208]^c[199]^c[201]^c[202]^c[213]^c[219]^c[224]^c[210]^c[211]^c[238]^c[233]^c[226]^c[245]^c[241]^c[242]^c[243]^c[265]^c[259]^c[269]^c[255]^c[278]^c[273]^c[277]^c[278]^c[282]^c[298]^c[296]^c[290]^c[313]^c[303]^c[304]^c[305]^c[315]^c[319]^c[321]^c[322]; //row: 30 d[i2+30*Zc]=c[0]^c[6]^c[8]^c[9]^c[7]^c[8]^c[4]^c[17]^c[18]^c[19]^c[22]^c[23]^c[36]^c[41]^c[44]^c[30]^c[59]^c[46]^c[56]^c[57]^c[71]^c[60]^c[61]^c[69]^c[70]^c[84]^c[83]^c[85]^c[86]^c[98]^c[101]^c[102]^c[102]^c[103]^c[107]^c[118]^c[119]^c[110]^c[111]^c[127]^c[121]^c[122]^c[125]^c[126]^c[143]^c[146]^c[143]^c[144]^c[150]^c[157]^c[158]^c[150]^c[151]^c[153]^c[175]^c[176]^c[170]^c[171]^c[188]^c[189]^c[186]^c[187]^c[195]^c[200]^c[201]^c[203]^c[204]^c[205]^c[215]^c[220]^c[221]^c[211]^c[212]^c[225]^c[235]^c[227]^c[228]^c[247]^c[243]^c[244]^c[245]^c[267]^c[260]^c[261]^c[256]^c[257]^c[280]^c[274]^c[275]^c[279]^c[280]^c[285]^c[298]^c[291]^c[292]^c[300]^c[304]^c[305]^c[306]^c[307]^c[317]^c[321]^c[323]^c[324]; //row: 31 d[i2+31*Zc]=c[9]^c[3]^c[0]^c[9]^c[3]^c[12]^c[2]^c[10]^c[11]^c[26]^c[20]^c[28]^c[22]^c[17]^c[25]^c[26]^c[27]^c[30]^c[39]^c[35]^c[44]^c[39]^c[33]^c[53]^c[47]^c[55]^c[49]^c[51]^c[59]^c[45]^c[65]^c[74]^c[70]^c[64]^c[64]^c[72]^c[73]^c[78]^c[87]^c[77]^c[86]^c[80]^c[89]^c[92]^c[101]^c[96]^c[90]^c[97]^c[90]^c[91]^c[116]^c[110]^c[113]^c[107]^c[105]^c[113]^c[114]^c[118]^c[121]^c[130]^c[131]^c[125]^c[120]^c[128]^c[129]^c[137]^c[146]^c[140]^c[149]^c[138]^c[147]^c[159]^c[153]^c[152]^c[161]^c[160]^c[153]^c[154]^c[169]^c[178]^c[170]^c[179]^c[165]^c[173]^c[174]^c[182]^c[191]^c[183]^c[192]^c[181]^c[189]^c[190]^c[204]^c[198]^c[195]^c[204]^c[198]^c[206]^c[207]^c[224]^c[218]^c[215]^c[224]^c[221]^c[214]^c[215]^c[234]^c[228]^c[229]^c[238]^c[237]^c[231]^c[241]^c[250]^c[252]^c[246]^c[254]^c[247]^c[248]^c[261]^c[255]^c[255]^c[264]^c[266]^c[259]^c[260]^c[274]^c[283]^c[284]^c[278]^c[274]^c[282]^c[283]^c[294]^c[288]^c[292]^c[286]^c[286]^c[295]^c[309]^c[303]^c[314]^c[308]^c[301]^c[309]^c[310]^c[326]^c[320]^c[315]^c[324]^c[318]^c[326]^c[327]; //row: 32 d[i2+32*Zc]=c[1]^c[7]^c[9]^c[10]^c[8]^c[9]^c[12]^c[18]^c[19]^c[20]^c[23]^c[24]^c[37]^c[42]^c[30]^c[31]^c[45]^c[47]^c[57]^c[58]^c[72]^c[61]^c[62]^c[70]^c[71]^c[85]^c[84]^c[86]^c[87]^c[99]^c[102]^c[103]^c[103]^c[104]^c[108]^c[119]^c[105]^c[111]^c[112]^c[128]^c[122]^c[123]^c[126]^c[127]^c[144]^c[147]^c[144]^c[145]^c[151]^c[158]^c[159]^c[151]^c[152]^c[176]^c[177]^c[171]^c[172]^c[189]^c[190]^c[187]^c[188]^c[184]^c[196]^c[201]^c[202]^c[204]^c[205]^c[216]^c[221]^c[222]^c[212]^c[213]^c[210]^c[226]^c[236]^c[228]^c[229]^c[248]^c[244]^c[245]^c[246]^c[268]^c[261]^c[262]^c[257]^c[258]^c[281]^c[275]^c[276]^c[280]^c[281]^c[286]^c[299]^c[292]^c[293]^c[301]^c[305]^c[306]^c[307]^c[308]^c[318]^c[322]^c[324]^c[325]; //row: 33 d[i2+33*Zc]=c[18]^c[41]^c[171]^c[319]; //row: 34 d[i2+34*Zc]=c[10]^c[116]^c[231]^c[269]; //row: 35 d[i2+35*Zc]=c[9]^c[0]^c[3]^c[2]^c[26]^c[28]^c[17]^c[20]^c[30]^c[35]^c[39]^c[53]^c[55]^c[51]^c[65]^c[70]^c[64]^c[78]^c[77]^c[80]^c[92]^c[96]^c[97]^c[98]^c[116]^c[113]^c[105]^c[121]^c[131]^c[120]^c[137]^c[140]^c[138]^c[159]^c[152]^c[160]^c[169]^c[170]^c[165]^c[182]^c[183]^c[181]^c[189]^c[204]^c[195]^c[198]^c[224]^c[215]^c[221]^c[234]^c[229]^c[237]^c[241]^c[252]^c[254]^c[261]^c[255]^c[266]^c[274]^c[284]^c[274]^c[294]^c[292]^c[286]^c[309]^c[314]^c[301]^c[326]^c[315]^c[318]; //row: 36 d[i2+36*Zc]=c[10]^c[221]^c[236]^c[279]; //row: 37 d[i2+37*Zc]=c[10]^c[11]^c[2]^c[5]^c[4]^c[27]^c[28]^c[15]^c[19]^c[28]^c[31]^c[32]^c[37]^c[41]^c[54]^c[55]^c[57]^c[53]^c[67]^c[72]^c[66]^c[79]^c[80]^c[79]^c[82]^c[93]^c[94]^c[98]^c[99]^c[118]^c[115]^c[107]^c[123]^c[133]^c[122]^c[138]^c[139]^c[142]^c[140]^c[160]^c[161]^c[154]^c[162]^c[170]^c[171]^c[172]^c[167]^c[183]^c[184]^c[185]^c[183]^c[205]^c[206]^c[197]^c[200]^c[203]^c[211]^c[217]^c[223]^c[235]^c[236]^c[231]^c[239]^c[242]^c[243]^c[254]^c[241]^c[263]^c[257]^c[268]^c[275]^c[276]^c[271]^c[276]^c[295]^c[296]^c[294]^c[288]^c[310]^c[311]^c[301]^c[303]^c[327]^c[328]^c[317]^c[320]; //row: 38 d[i2+38*Zc]=c[0]^c[149]^c[160]^c[184]; //row: 39 d[i2+39*Zc]=c[24]^c[52]^c[107]^c[291]; //row: 40 d[i2+40*Zc]=c[3]^c[132]^c[269]; //row: 41 d[i2+41*Zc]=c[22]^c[53]^c[139]^c[278]; //row: 42 d[i2+42*Zc]=c[11]^c[2]^c[4]^c[5]^c[3]^c[4]^c[11]^c[28]^c[29]^c[15]^c[18]^c[19]^c[32]^c[37]^c[40]^c[41]^c[55]^c[57]^c[52]^c[53]^c[67]^c[71]^c[72]^c[65]^c[66]^c[64]^c[80]^c[79]^c[81]^c[82]^c[94]^c[97]^c[98]^c[98]^c[99]^c[118]^c[114]^c[115]^c[106]^c[107]^c[123]^c[132]^c[133]^c[121]^c[122]^c[139]^c[142]^c[139]^c[140]^c[161]^c[153]^c[154]^c[161]^c[162]^c[171]^c[172]^c[166]^c[167]^c[184]^c[185]^c[182]^c[183]^c[206]^c[196]^c[197]^c[199]^c[200]^c[211]^c[216]^c[217]^c[222]^c[223]^c[236]^c[231]^c[238]^c[239]^c[243]^c[254]^c[240]^c[241]^c[263]^c[256]^c[257]^c[267]^c[268]^c[276]^c[270]^c[271]^c[275]^c[276]^c[296]^c[294]^c[287]^c[288]^c[311]^c[300]^c[301]^c[302]^c[303]^c[328]^c[317]^c[319]^c[320]; //row: 43 d[i2+43*Zc]=c[5]^c[11]^c[14]^c[12]^c[13]^c[22]^c[24]^c[27]^c[28]^c[21]^c[41]^c[31]^c[35]^c[49]^c[51]^c[46]^c[47]^c[61]^c[66]^c[74]^c[60]^c[89]^c[88]^c[76]^c[103]^c[92]^c[92]^c[93]^c[112]^c[109]^c[115]^c[116]^c[132]^c[127]^c[130]^c[131]^c[148]^c[136]^c[149]^c[155]^c[163]^c[155]^c[156]^c[165]^c[166]^c[175]^c[176]^c[193]^c[194]^c[191]^c[192]^c[200]^c[206]^c[208]^c[209]^c[220]^c[211]^c[216]^c[217]^c[230]^c[225]^c[233]^c[252]^c[248]^c[249]^c[250]^c[246]^c[257]^c[266]^c[261]^c[262]^c[270]^c[280]^c[284]^c[270]^c[273]^c[290]^c[288]^c[297]^c[305]^c[310]^c[311]^c[312]^c[322]^c[326]^c[328]^c[329]; //row: 44 d[i2+44*Zc]=c[12]^c[3]^c[6]^c[5]^c[10]^c[29]^c[16]^c[20]^c[33]^c[38]^c[42]^c[56]^c[58]^c[54]^c[68]^c[73]^c[67]^c[81]^c[80]^c[83]^c[95]^c[99]^c[100]^c[119]^c[116]^c[108]^c[105]^c[124]^c[134]^c[123]^c[140]^c[143]^c[141]^c[141]^c[162]^c[155]^c[163]^c[172]^c[173]^c[168]^c[185]^c[186]^c[184]^c[207]^c[198]^c[201]^c[212]^c[218]^c[224]^c[237]^c[232]^c[225]^c[244]^c[240]^c[242]^c[264]^c[258]^c[269]^c[277]^c[272]^c[277]^c[297]^c[295]^c[289]^c[312]^c[302]^c[304]^c[329]^c[318]^c[321]; //row: 45 d[i2+45*Zc]=c[26]^c[98]^c[152]; } break; case 16: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[9]^c[1]^c[9]^c[8]^c[20]^c[30]^c[24]^c[33]^c[46]^c[40]^c[62]^c[52]^c[51]^c[75]^c[78]^c[67]^c[83]^c[86]^c[84]^c[105]^c[108]^c[101]^c[125]^c[116]^c[114]^c[135]^c[128]^c[130]^c[154]^c[156]^c[158]^c[164]^c[166]^c[167]^c[189]^c[187]^c[181]^c[206]^c[197]^c[197]^c[216]^c[221]^c[218]^c[236]^c[224]^c[226]^c[242]^c[243]^c[240]^c[262]^c[269]^c[271]^c[282]^c[276]^c[283]^c[301]^c[300]^c[291]^c[306]^c[318]^c[314]^c[334]^c[324]^c[335]^c[350]^c[347]^c[347]; //row: 1 d[i2+1*Zc]=c[9]^c[10]^c[2]^c[10]^c[9]^c[20]^c[21]^c[31]^c[25]^c[33]^c[34]^c[47]^c[41]^c[62]^c[63]^c[53]^c[52]^c[76]^c[79]^c[68]^c[83]^c[84]^c[87]^c[85]^c[105]^c[106]^c[109]^c[102]^c[126]^c[117]^c[115]^c[136]^c[129]^c[131]^c[154]^c[155]^c[157]^c[159]^c[164]^c[165]^c[167]^c[168]^c[189]^c[190]^c[188]^c[182]^c[206]^c[207]^c[198]^c[198]^c[216]^c[217]^c[222]^c[219]^c[237]^c[225]^c[227]^c[242]^c[243]^c[244]^c[241]^c[262]^c[263]^c[270]^c[256]^c[283]^c[277]^c[284]^c[301]^c[302]^c[301]^c[292]^c[306]^c[307]^c[319]^c[315]^c[334]^c[335]^c[325]^c[320]^c[350]^c[351]^c[348]^c[348]; //row: 2 d[i2+2*Zc]=c[10]^c[2]^c[9]^c[10]^c[8]^c[9]^c[21]^c[30]^c[31]^c[24]^c[25]^c[34]^c[47]^c[40]^c[41]^c[63]^c[53]^c[51]^c[52]^c[76]^c[78]^c[79]^c[67]^c[68]^c[84]^c[87]^c[84]^c[85]^c[106]^c[108]^c[109]^c[101]^c[102]^c[126]^c[116]^c[117]^c[114]^c[115]^c[136]^c[128]^c[129]^c[130]^c[131]^c[155]^c[157]^c[158]^c[159]^c[165]^c[166]^c[167]^c[167]^c[168]^c[190]^c[188]^c[181]^c[182]^c[207]^c[198]^c[197]^c[198]^c[217]^c[221]^c[222]^c[218]^c[219]^c[237]^c[224]^c[225]^c[226]^c[227]^c[243]^c[244]^c[240]^c[241]^c[263]^c[270]^c[271]^c[256]^c[283]^c[276]^c[277]^c[283]^c[284]^c[302]^c[300]^c[301]^c[291]^c[292]^c[307]^c[319]^c[314]^c[315]^c[335]^c[324]^c[325]^c[335]^c[320]^c[351]^c[348]^c[347]^c[348]; //row: 3 d[i2+3*Zc]=c[10]^c[2]^c[10]^c[8]^c[9]^c[21]^c[31]^c[24]^c[25]^c[34]^c[47]^c[41]^c[63]^c[53]^c[51]^c[52]^c[76]^c[79]^c[67]^c[68]^c[84]^c[87]^c[85]^c[106]^c[109]^c[101]^c[102]^c[126]^c[117]^c[114]^c[115]^c[136]^c[129]^c[130]^c[131]^c[155]^c[157]^c[159]^c[165]^c[167]^c[167]^c[168]^c[190]^c[188]^c[181]^c[182]^c[207]^c[198]^c[197]^c[198]^c[217]^c[222]^c[218]^c[219]^c[237]^c[225]^c[226]^c[227]^c[243]^c[244]^c[241]^c[263]^c[270]^c[271]^c[256]^c[283]^c[277]^c[283]^c[284]^c[302]^c[301]^c[291]^c[292]^c[307]^c[319]^c[315]^c[335]^c[325]^c[335]^c[320]^c[351]^c[348]^c[347]^c[348]; //row: 4 d[i2+4*Zc]=c[12]^c[21]; //row: 5 d[i2+5*Zc]=c[12]^c[4]^c[12]^c[11]^c[12]^c[23]^c[17]^c[27]^c[27]^c[36]^c[33]^c[43]^c[49]^c[55]^c[54]^c[49]^c[78]^c[65]^c[70]^c[86]^c[89]^c[87]^c[108]^c[111]^c[104]^c[112]^c[119]^c[117]^c[138]^c[131]^c[133]^c[157]^c[159]^c[145]^c[167]^c[169]^c[170]^c[176]^c[190]^c[184]^c[193]^c[200]^c[200]^c[198]^c[219]^c[208]^c[221]^c[239]^c[227]^c[229]^c[245]^c[246]^c[243]^c[265]^c[256]^c[258]^c[267]^c[285]^c[279]^c[286]^c[288]^c[303]^c[294]^c[309]^c[305]^c[317]^c[321]^c[327]^c[322]^c[337]^c[350]^c[350]^c[346]; //row: 6 d[i2+6*Zc]=c[6]^c[101]^c[171]^c[178]^c[211]^c[282]^c[300]^c[322]; //row: 7 d[i2+7*Zc]=c[11]^c[27]^c[78]^c[126]^c[134]^c[231]; //row: 8 d[i2+8*Zc]=c[10]^c[4]^c[2]^c[12]^c[10]^c[3]^c[4]^c[9]^c[2]^c[3]^c[15]^c[21]^c[31]^c[31]^c[24]^c[25]^c[25]^c[18]^c[19]^c[19]^c[34]^c[44]^c[47]^c[41]^c[41]^c[34]^c[35]^c[63]^c[57]^c[53]^c[63]^c[52]^c[61]^c[62]^c[54]^c[76]^c[70]^c[79]^c[72]^c[73]^c[68]^c[77]^c[78]^c[84]^c[94]^c[87]^c[81]^c[85]^c[94]^c[95]^c[106]^c[100]^c[109]^c[102]^c[103]^c[102]^c[111]^c[96]^c[126]^c[120]^c[117]^c[126]^c[127]^c[115]^c[124]^c[125]^c[136]^c[130]^c[129]^c[138]^c[139]^c[131]^c[140]^c[141]^c[155]^c[149]^c[157]^c[151]^c[159]^c[152]^c[153]^c[165]^c[175]^c[167]^c[160]^c[161]^c[168]^c[161]^c[162]^c[190]^c[184]^c[188]^c[182]^c[182]^c[191]^c[176]^c[207]^c[201]^c[198]^c[192]^c[198]^c[207]^c[192]^c[194]^c[217]^c[211]^c[222]^c[215]^c[216]^c[219]^c[212]^c[213]^c[237]^c[231]^c[225]^c[234]^c[235]^c[227]^c[236]^c[237]^c[243]^c[253]^c[244]^c[254]^c[241]^c[250]^c[251]^c[263]^c[257]^c[270]^c[264]^c[256]^c[265]^c[266]^c[261]^c[283]^c[277]^c[277]^c[286]^c[287]^c[284]^c[277]^c[278]^c[302]^c[296]^c[301]^c[294]^c[295]^c[292]^c[301]^c[302]^c[307]^c[317]^c[319]^c[313]^c[315]^c[308]^c[309]^c[307]^c[335]^c[329]^c[325]^c[334]^c[335]^c[320]^c[329]^c[330]^c[351]^c[345]^c[348]^c[342]^c[348]^c[341]^c[342]^c[348]; //row: 9 d[i2+9*Zc]=c[6]^c[21]^c[172]^c[180]^c[221]^c[285]^c[300]^c[327]; //row: 10 d[i2+10*Zc]=c[17]^c[36]^c[70]^c[127]^c[128]^c[233]; //row: 11 d[i2+11*Zc]=c[5]^c[15]^c[0]^c[13]^c[8]^c[5]^c[0]^c[4]^c[15]^c[12]^c[16]^c[26]^c[27]^c[26]^c[21]^c[20]^c[31]^c[24]^c[45]^c[39]^c[40]^c[42]^c[37]^c[36]^c[47]^c[58]^c[52]^c[53]^c[48]^c[59]^c[63]^c[58]^c[71]^c[66]^c[74]^c[69]^c[79]^c[74]^c[95]^c[89]^c[90]^c[82]^c[93]^c[80]^c[91]^c[101]^c[111]^c[96]^c[104]^c[99]^c[97]^c[108]^c[121]^c[116]^c[112]^c[123]^c[126]^c[121]^c[131]^c[142]^c[140]^c[135]^c[142]^c[137]^c[150]^c[144]^c[145]^c[152]^c[147]^c[154]^c[149]^c[160]^c[170]^c[171]^c[162]^c[173]^c[163]^c[174]^c[185]^c[179]^c[180]^c[183]^c[178]^c[177]^c[188]^c[202]^c[196]^c[197]^c[193]^c[204]^c[193]^c[204]^c[194]^c[212]^c[222]^c[223]^c[217]^c[212]^c[214]^c[209]^c[232]^c[227]^c[236]^c[231]^c[238]^c[233]^c[254]^c[248]^c[249]^c[255]^c[250]^c[252]^c[247]^c[258]^c[268]^c[269]^c[265]^c[260]^c[267]^c[262]^c[261]^c[278]^c[273]^c[272]^c[283]^c[279]^c[274]^c[297]^c[291]^c[292]^c[296]^c[291]^c[303]^c[298]^c[318]^c[312]^c[313]^c[314]^c[309]^c[310]^c[305]^c[330]^c[324]^c[325]^c[320]^c[331]^c[331]^c[326]^c[346]^c[340]^c[341]^c[343]^c[338]^c[343]^c[338]^c[349]; //row: 12 d[i2+12*Zc]=c[15]^c[25]^c[164]^c[191]^c[217]^c[294]; //row: 13 d[i2+13*Zc]=c[7]^c[8]^c[0]^c[8]^c[7]^c[0]^c[18]^c[19]^c[29]^c[23]^c[47]^c[32]^c[45]^c[39]^c[60]^c[61]^c[51]^c[50]^c[55]^c[74]^c[77]^c[66]^c[81]^c[82]^c[85]^c[83]^c[103]^c[104]^c[107]^c[100]^c[124]^c[115]^c[113]^c[118]^c[134]^c[143]^c[129]^c[152]^c[153]^c[155]^c[157]^c[162]^c[163]^c[165]^c[166]^c[187]^c[188]^c[186]^c[180]^c[204]^c[205]^c[196]^c[196]^c[214]^c[215]^c[220]^c[217]^c[235]^c[239]^c[225]^c[240]^c[241]^c[242]^c[255]^c[260]^c[261]^c[268]^c[270]^c[281]^c[275]^c[282]^c[299]^c[300]^c[299]^c[290]^c[304]^c[305]^c[317]^c[313]^c[332]^c[333]^c[323]^c[334]^c[328]^c[348]^c[349]^c[346]^c[346]; //row: 14 d[i2+14*Zc]=c[13]^c[198]^c[253]^c[270]^c[287]^c[340]; //row: 15 d[i2+15*Zc]=c[13]^c[5]^c[13]^c[11]^c[12]^c[7]^c[24]^c[18]^c[27]^c[28]^c[31]^c[37]^c[34]^c[44]^c[50]^c[56]^c[54]^c[55]^c[79]^c[66]^c[70]^c[71]^c[87]^c[90]^c[88]^c[109]^c[96]^c[104]^c[105]^c[113]^c[120]^c[117]^c[118]^c[139]^c[132]^c[133]^c[134]^c[158]^c[144]^c[146]^c[168]^c[170]^c[170]^c[171]^c[160]^c[177]^c[191]^c[184]^c[185]^c[194]^c[201]^c[200]^c[201]^c[220]^c[209]^c[221]^c[222]^c[222]^c[224]^c[228]^c[229]^c[230]^c[246]^c[247]^c[244]^c[266]^c[257]^c[258]^c[259]^c[286]^c[280]^c[286]^c[287]^c[289]^c[288]^c[294]^c[295]^c[298]^c[310]^c[306]^c[318]^c[322]^c[328]^c[322]^c[323]^c[338]^c[351]^c[350]^c[351]; //row: 16 d[i2+16*Zc]=c[3]^c[11]^c[3]^c[2]^c[30]^c[24]^c[18]^c[31]^c[43]^c[40]^c[34]^c[56]^c[62]^c[61]^c[48]^c[69]^c[72]^c[77]^c[93]^c[80]^c[94]^c[99]^c[102]^c[111]^c[119]^c[126]^c[124]^c[129]^c[138]^c[140]^c[148]^c[150]^c[152]^c[174]^c[160]^c[161]^c[183]^c[181]^c[191]^c[176]^c[200]^c[207]^c[207]^c[210]^c[215]^c[212]^c[230]^c[234]^c[236]^c[252]^c[253]^c[250]^c[256]^c[263]^c[265]^c[276]^c[286]^c[277]^c[295]^c[294]^c[301]^c[316]^c[312]^c[308]^c[328]^c[334]^c[329]^c[322]^c[344]^c[341]^c[341]; //row: 17 d[i2+17*Zc]=c[6]^c[227]^c[266]^c[272]^c[351]; //row: 18 d[i2+18*Zc]=c[25]^c[200]^c[215]^c[298]^c[306]; //row: 19 d[i2+19*Zc]=c[11]^c[24]^c[119]^c[142]^c[175]; //row: 20 d[i2+20*Zc]=c[9]^c[1]^c[9]^c[8]^c[6]^c[20]^c[30]^c[24]^c[33]^c[46]^c[40]^c[62]^c[52]^c[51]^c[57]^c[75]^c[78]^c[67]^c[83]^c[86]^c[84]^c[105]^c[108]^c[101]^c[125]^c[116]^c[114]^c[135]^c[128]^c[130]^c[154]^c[156]^c[158]^c[152]^c[164]^c[166]^c[167]^c[189]^c[187]^c[181]^c[190]^c[206]^c[197]^c[197]^c[216]^c[221]^c[218]^c[236]^c[224]^c[226]^c[242]^c[243]^c[240]^c[262]^c[269]^c[271]^c[282]^c[276]^c[283]^c[301]^c[300]^c[291]^c[306]^c[318]^c[314]^c[334]^c[324]^c[335]^c[350]^c[347]^c[347]; //row: 21 d[i2+21*Zc]=c[24]^c[88]^c[268]^c[322]^c[346]; //row: 22 d[i2+22*Zc]=c[15]^c[205]^c[219]^c[285]; //row: 23 d[i2+23*Zc]=c[27]^c[34]^c[169]^c[295]; //row: 24 d[i2+24*Zc]=c[7]^c[15]^c[7]^c[6]^c[15]^c[18]^c[28]^c[22]^c[47]^c[44]^c[38]^c[60]^c[50]^c[49]^c[53]^c[73]^c[76]^c[65]^c[75]^c[81]^c[84]^c[82]^c[103]^c[106]^c[99]^c[123]^c[114]^c[112]^c[133]^c[142]^c[128]^c[152]^c[154]^c[156]^c[162]^c[164]^c[165]^c[187]^c[185]^c[179]^c[179]^c[204]^c[195]^c[195]^c[214]^c[219]^c[216]^c[234]^c[238]^c[224]^c[240]^c[241]^c[254]^c[260]^c[267]^c[269]^c[280]^c[274]^c[281]^c[299]^c[298]^c[289]^c[304]^c[316]^c[312]^c[332]^c[322]^c[333]^c[348]^c[345]^c[345]; //row: 25 d[i2+25*Zc]=c[22]^c[103]^c[115]^c[229]; //row: 26 d[i2+26*Zc]=c[2]^c[34]^c[70]^c[252]; //row: 27 d[i2+27*Zc]=c[24]^c[103]^c[129]; //row: 28 d[i2+28*Zc]=c[15]^c[68]^c[308]^c[350]; //row: 29 d[i2+29*Zc]=c[0]^c[8]^c[0]^c[14]^c[15]^c[27]^c[21]^c[30]^c[31]^c[21]^c[40]^c[37]^c[47]^c[53]^c[59]^c[57]^c[58]^c[66]^c[69]^c[73]^c[74]^c[90]^c[93]^c[91]^c[96]^c[99]^c[107]^c[108]^c[116]^c[123]^c[120]^c[121]^c[142]^c[135]^c[136]^c[137]^c[145]^c[147]^c[149]^c[171]^c[173]^c[173]^c[174]^c[180]^c[178]^c[187]^c[188]^c[197]^c[204]^c[203]^c[204]^c[223]^c[212]^c[208]^c[209]^c[227]^c[231]^c[232]^c[233]^c[235]^c[249]^c[250]^c[247]^c[269]^c[260]^c[261]^c[262]^c[273]^c[283]^c[273]^c[274]^c[292]^c[291]^c[297]^c[298]^c[291]^c[313]^c[309]^c[305]^c[325]^c[331]^c[325]^c[326]^c[341]^c[338]^c[337]^c[338]; //row: 30 d[i2+30*Zc]=c[3]^c[11]^c[2]^c[3]^c[1]^c[2]^c[7]^c[30]^c[23]^c[24]^c[17]^c[18]^c[43]^c[40]^c[33]^c[34]^c[56]^c[62]^c[60]^c[61]^c[69]^c[71]^c[72]^c[76]^c[77]^c[93]^c[80]^c[93]^c[94]^c[99]^c[101]^c[102]^c[110]^c[111]^c[119]^c[125]^c[126]^c[123]^c[124]^c[129]^c[137]^c[138]^c[139]^c[140]^c[148]^c[150]^c[151]^c[152]^c[174]^c[175]^c[160]^c[160]^c[161]^c[168]^c[183]^c[181]^c[190]^c[191]^c[200]^c[207]^c[206]^c[207]^c[210]^c[214]^c[215]^c[211]^c[212]^c[215]^c[230]^c[233]^c[234]^c[235]^c[236]^c[252]^c[253]^c[249]^c[250]^c[256]^c[263]^c[264]^c[265]^c[276]^c[285]^c[286]^c[276]^c[277]^c[295]^c[293]^c[294]^c[300]^c[301]^c[316]^c[312]^c[307]^c[308]^c[328]^c[333]^c[334]^c[328]^c[329]^c[344]^c[341]^c[340]^c[341]; //row: 31 d[i2+31*Zc]=c[5]^c[7]^c[13]^c[15]^c[5]^c[7]^c[4]^c[5]^c[6]^c[16]^c[18]^c[26]^c[28]^c[20]^c[21]^c[22]^c[30]^c[45]^c[47]^c[42]^c[44]^c[36]^c[38]^c[58]^c[60]^c[48]^c[50]^c[63]^c[48]^c[49]^c[71]^c[73]^c[74]^c[76]^c[79]^c[64]^c[65]^c[95]^c[81]^c[82]^c[84]^c[80]^c[82]^c[101]^c[103]^c[104]^c[106]^c[97]^c[98]^c[99]^c[121]^c[123]^c[112]^c[114]^c[126]^c[127]^c[112]^c[112]^c[131]^c[133]^c[140]^c[142]^c[142]^c[143]^c[128]^c[150]^c[152]^c[152]^c[154]^c[154]^c[156]^c[160]^c[162]^c[162]^c[164]^c[163]^c[164]^c[165]^c[185]^c[187]^c[183]^c[185]^c[177]^c[178]^c[179]^c[202]^c[204]^c[193]^c[195]^c[193]^c[194]^c[195]^c[212]^c[214]^c[217]^c[219]^c[214]^c[215]^c[216]^c[232]^c[234]^c[236]^c[238]^c[238]^c[239]^c[224]^c[254]^c[240]^c[255]^c[241]^c[252]^c[254]^c[258]^c[260]^c[265]^c[267]^c[267]^c[268]^c[269]^c[278]^c[280]^c[272]^c[274]^c[279]^c[280]^c[281]^c[297]^c[299]^c[296]^c[298]^c[303]^c[288]^c[289]^c[318]^c[304]^c[314]^c[316]^c[310]^c[312]^c[330]^c[332]^c[320]^c[322]^c[331]^c[332]^c[333]^c[346]^c[348]^c[343]^c[345]^c[343]^c[344]^c[345]; //row: 32 d[i2+32*Zc]=c[3]^c[11]^c[2]^c[3]^c[1]^c[2]^c[12]^c[30]^c[23]^c[24]^c[17]^c[18]^c[43]^c[40]^c[33]^c[34]^c[56]^c[62]^c[60]^c[61]^c[69]^c[71]^c[72]^c[76]^c[77]^c[93]^c[80]^c[93]^c[94]^c[99]^c[101]^c[102]^c[110]^c[111]^c[119]^c[125]^c[126]^c[123]^c[124]^c[129]^c[137]^c[138]^c[139]^c[140]^c[148]^c[150]^c[151]^c[152]^c[174]^c[175]^c[160]^c[160]^c[161]^c[183]^c[181]^c[190]^c[191]^c[200]^c[207]^c[206]^c[207]^c[207]^c[210]^c[214]^c[215]^c[211]^c[212]^c[230]^c[233]^c[234]^c[235]^c[236]^c[230]^c[252]^c[253]^c[249]^c[250]^c[256]^c[263]^c[264]^c[265]^c[276]^c[285]^c[286]^c[276]^c[277]^c[295]^c[293]^c[294]^c[300]^c[301]^c[316]^c[312]^c[307]^c[308]^c[328]^c[333]^c[334]^c[328]^c[329]^c[344]^c[341]^c[340]^c[341]; //row: 33 d[i2+33*Zc]=c[17]^c[42]^c[184]^c[338]; //row: 34 d[i2+34*Zc]=c[14]^c[118]^c[243]^c[286]; //row: 35 d[i2+35*Zc]=c[0]^c[8]^c[0]^c[15]^c[27]^c[21]^c[31]^c[16]^c[40]^c[37]^c[47]^c[53]^c[59]^c[58]^c[66]^c[69]^c[74]^c[90]^c[93]^c[91]^c[96]^c[99]^c[108]^c[100]^c[116]^c[123]^c[121]^c[142]^c[135]^c[137]^c[145]^c[147]^c[149]^c[171]^c[173]^c[174]^c[180]^c[178]^c[188]^c[197]^c[204]^c[204]^c[206]^c[223]^c[212]^c[209]^c[227]^c[231]^c[233]^c[249]^c[250]^c[247]^c[269]^c[260]^c[262]^c[273]^c[283]^c[274]^c[292]^c[291]^c[298]^c[313]^c[309]^c[305]^c[325]^c[331]^c[326]^c[341]^c[338]^c[338]; //row: 36 d[i2+36*Zc]=c[4]^c[232]^c[242]^c[295]; //row: 37 d[i2+37*Zc]=c[3]^c[4]^c[12]^c[4]^c[3]^c[30]^c[31]^c[25]^c[19]^c[21]^c[43]^c[44]^c[41]^c[35]^c[56]^c[57]^c[63]^c[62]^c[70]^c[73]^c[78]^c[93]^c[94]^c[81]^c[95]^c[99]^c[100]^c[103]^c[96]^c[120]^c[127]^c[125]^c[130]^c[139]^c[141]^c[148]^c[149]^c[151]^c[153]^c[174]^c[175]^c[161]^c[162]^c[183]^c[184]^c[182]^c[176]^c[200]^c[201]^c[192]^c[192]^c[210]^c[211]^c[216]^c[213]^c[219]^c[231]^c[235]^c[237]^c[252]^c[253]^c[254]^c[251]^c[256]^c[257]^c[264]^c[266]^c[277]^c[287]^c[278]^c[295]^c[296]^c[295]^c[302]^c[316]^c[317]^c[313]^c[309]^c[328]^c[329]^c[335]^c[330]^c[344]^c[345]^c[342]^c[342]; //row: 38 d[i2+38*Zc]=c[6]^c[150]^c[172]^c[194]; //row: 39 d[i2+39*Zc]=c[28]^c[58]^c[116]^c[319]; //row: 40 d[i2+40*Zc]=c[12]^c[136]^c[276]; //row: 41 d[i2+41*Zc]=c[22]^c[60]^c[154]^c[294]; //row: 42 d[i2+42*Zc]=c[3]^c[11]^c[2]^c[3]^c[1]^c[2]^c[4]^c[30]^c[23]^c[24]^c[17]^c[18]^c[43]^c[40]^c[33]^c[34]^c[56]^c[62]^c[60]^c[61]^c[69]^c[71]^c[72]^c[76]^c[77]^c[76]^c[93]^c[80]^c[93]^c[94]^c[99]^c[101]^c[102]^c[110]^c[111]^c[119]^c[125]^c[126]^c[123]^c[124]^c[129]^c[137]^c[138]^c[139]^c[140]^c[148]^c[150]^c[151]^c[152]^c[174]^c[175]^c[160]^c[160]^c[161]^c[183]^c[181]^c[190]^c[191]^c[200]^c[207]^c[206]^c[207]^c[210]^c[214]^c[215]^c[211]^c[212]^c[230]^c[233]^c[234]^c[235]^c[236]^c[252]^c[253]^c[249]^c[250]^c[256]^c[263]^c[264]^c[265]^c[276]^c[285]^c[286]^c[276]^c[277]^c[295]^c[293]^c[294]^c[300]^c[301]^c[316]^c[312]^c[307]^c[308]^c[328]^c[333]^c[334]^c[328]^c[329]^c[344]^c[341]^c[340]^c[341]; //row: 43 d[i2+43*Zc]=c[5]^c[13]^c[5]^c[3]^c[4]^c[16]^c[26]^c[19]^c[20]^c[22]^c[45]^c[42]^c[36]^c[58]^c[48]^c[62]^c[63]^c[71]^c[74]^c[78]^c[79]^c[95]^c[82]^c[80]^c[101]^c[104]^c[96]^c[97]^c[121]^c[112]^c[125]^c[126]^c[131]^c[140]^c[141]^c[142]^c[150]^c[152]^c[154]^c[160]^c[162]^c[162]^c[163]^c[185]^c[183]^c[176]^c[177]^c[202]^c[193]^c[192]^c[193]^c[212]^c[217]^c[213]^c[214]^c[232]^c[236]^c[237]^c[238]^c[254]^c[255]^c[252]^c[258]^c[265]^c[266]^c[267]^c[258]^c[278]^c[272]^c[278]^c[279]^c[297]^c[296]^c[302]^c[303]^c[300]^c[318]^c[314]^c[310]^c[330]^c[320]^c[330]^c[331]^c[346]^c[343]^c[342]^c[343]; //row: 44 d[i2+44*Zc]=c[6]^c[14]^c[6]^c[5]^c[10]^c[17]^c[27]^c[21]^c[46]^c[43]^c[37]^c[59]^c[49]^c[48]^c[72]^c[75]^c[64]^c[80]^c[83]^c[81]^c[102]^c[105]^c[98]^c[122]^c[113]^c[127]^c[124]^c[132]^c[141]^c[143]^c[151]^c[153]^c[155]^c[146]^c[161]^c[163]^c[164]^c[186]^c[184]^c[178]^c[203]^c[194]^c[194]^c[213]^c[218]^c[215]^c[233]^c[237]^c[239]^c[255]^c[240]^c[253]^c[259]^c[266]^c[268]^c[279]^c[273]^c[280]^c[298]^c[297]^c[288]^c[319]^c[315]^c[311]^c[331]^c[321]^c[332]^c[347]^c[344]^c[344]; //row: 45 d[i2+45*Zc]=c[20]^c[102]^c[166]; } break; case 18: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[12]^c[16]^c[5]^c[6]^c[35]^c[22]^c[18]^c[43]^c[53]^c[39]^c[59]^c[60]^c[57]^c[75]^c[78]^c[89]^c[92]^c[105]^c[98]^c[111]^c[111]^c[117]^c[129]^c[127]^c[131]^c[147]^c[152]^c[160]^c[172]^c[170]^c[179]^c[197]^c[182]^c[184]^c[205]^c[198]^c[215]^c[233]^c[230]^c[218]^c[240]^c[235]^c[251]^c[269]^c[264]^c[258]^c[286]^c[277]^c[287]^c[305]^c[301]^c[295]^c[308]^c[323]^c[308]^c[328]^c[340]^c[341]^c[359]^c[353]^c[343]^c[360]^c[377]^c[364]^c[386]^c[388]^c[395]; //row: 1 d[i2+1*Zc]=c[12]^c[13]^c[17]^c[6]^c[7]^c[35]^c[18]^c[23]^c[19]^c[43]^c[44]^c[36]^c[40]^c[59]^c[60]^c[61]^c[58]^c[76]^c[79]^c[72]^c[92]^c[93]^c[106]^c[99]^c[111]^c[112]^c[112]^c[118]^c[130]^c[128]^c[132]^c[148]^c[153]^c[161]^c[172]^c[173]^c[171]^c[162]^c[197]^c[180]^c[183]^c[185]^c[205]^c[206]^c[199]^c[198]^c[233]^c[216]^c[231]^c[219]^c[240]^c[241]^c[236]^c[234]^c[252]^c[265]^c[259]^c[286]^c[287]^c[278]^c[270]^c[305]^c[288]^c[302]^c[296]^c[309]^c[306]^c[309]^c[328]^c[329]^c[341]^c[324]^c[359]^c[342]^c[354]^c[344]^c[360]^c[361]^c[360]^c[365]^c[386]^c[387]^c[389]^c[378]; //row: 2 d[i2+2*Zc]=c[13]^c[17]^c[5]^c[6]^c[6]^c[7]^c[18]^c[22]^c[23]^c[18]^c[19]^c[44]^c[36]^c[39]^c[40]^c[60]^c[61]^c[57]^c[58]^c[76]^c[78]^c[79]^c[89]^c[72]^c[93]^c[106]^c[98]^c[99]^c[112]^c[111]^c[112]^c[117]^c[118]^c[130]^c[127]^c[128]^c[131]^c[132]^c[148]^c[152]^c[153]^c[160]^c[161]^c[173]^c[171]^c[179]^c[162]^c[180]^c[182]^c[183]^c[184]^c[185]^c[206]^c[199]^c[215]^c[198]^c[216]^c[231]^c[218]^c[219]^c[241]^c[235]^c[236]^c[251]^c[234]^c[252]^c[264]^c[265]^c[258]^c[259]^c[287]^c[278]^c[287]^c[270]^c[288]^c[302]^c[295]^c[296]^c[309]^c[323]^c[306]^c[308]^c[309]^c[329]^c[340]^c[341]^c[341]^c[324]^c[342]^c[354]^c[343]^c[344]^c[361]^c[377]^c[360]^c[364]^c[365]^c[387]^c[389]^c[395]^c[378]; //row: 3 d[i2+3*Zc]=c[13]^c[17]^c[6]^c[6]^c[7]^c[18]^c[23]^c[18]^c[19]^c[44]^c[36]^c[40]^c[60]^c[61]^c[57]^c[58]^c[76]^c[79]^c[89]^c[72]^c[93]^c[106]^c[99]^c[112]^c[112]^c[117]^c[118]^c[130]^c[128]^c[131]^c[132]^c[148]^c[153]^c[160]^c[161]^c[173]^c[171]^c[162]^c[180]^c[183]^c[184]^c[185]^c[206]^c[199]^c[215]^c[198]^c[216]^c[231]^c[218]^c[219]^c[241]^c[236]^c[251]^c[234]^c[252]^c[265]^c[258]^c[259]^c[287]^c[278]^c[270]^c[288]^c[302]^c[295]^c[296]^c[309]^c[306]^c[308]^c[309]^c[329]^c[341]^c[341]^c[324]^c[342]^c[354]^c[344]^c[361]^c[360]^c[364]^c[365]^c[387]^c[389]^c[395]^c[378]; //row: 4 d[i2+4*Zc]=c[11]^c[18]; //row: 5 d[i2+5*Zc]=c[12]^c[16]^c[5]^c[6]^c[8]^c[35]^c[22]^c[18]^c[18]^c[43]^c[53]^c[39]^c[59]^c[60]^c[57]^c[71]^c[75]^c[78]^c[89]^c[92]^c[105]^c[98]^c[111]^c[111]^c[117]^c[129]^c[127]^c[131]^c[147]^c[152]^c[160]^c[172]^c[170]^c[179]^c[197]^c[182]^c[184]^c[205]^c[198]^c[215]^c[233]^c[230]^c[218]^c[228]^c[240]^c[235]^c[251]^c[269]^c[264]^c[258]^c[286]^c[277]^c[287]^c[305]^c[301]^c[295]^c[289]^c[308]^c[323]^c[308]^c[328]^c[340]^c[341]^c[359]^c[353]^c[343]^c[360]^c[377]^c[364]^c[386]^c[388]^c[395]^c[384]; //row: 6 d[i2+6*Zc]=c[7]^c[125]^c[186]^c[215]^c[238]^c[320]^c[330]^c[377]; //row: 7 d[i2+7*Zc]=c[6]^c[26]^c[81]^c[129]^c[157]^c[253]; //row: 8 d[i2+8*Zc]=c[8]^c[13]^c[12]^c[17]^c[1]^c[5]^c[6]^c[2]^c[6]^c[7]^c[17]^c[31]^c[18]^c[18]^c[22]^c[23]^c[32]^c[18]^c[19]^c[35]^c[39]^c[44]^c[49]^c[36]^c[53]^c[39]^c[40]^c[55]^c[60]^c[56]^c[61]^c[71]^c[57]^c[58]^c[71]^c[89]^c[76]^c[74]^c[78]^c[79]^c[85]^c[89]^c[72]^c[106]^c[93]^c[101]^c[106]^c[94]^c[98]^c[99]^c[125]^c[112]^c[125]^c[111]^c[112]^c[113]^c[117]^c[118]^c[143]^c[130]^c[141]^c[127]^c[128]^c[127]^c[131]^c[132]^c[161]^c[148]^c[148]^c[152]^c[153]^c[156]^c[160]^c[161]^c[168]^c[173]^c[166]^c[171]^c[175]^c[179]^c[162]^c[193]^c[180]^c[196]^c[182]^c[183]^c[180]^c[184]^c[185]^c[201]^c[206]^c[212]^c[199]^c[211]^c[215]^c[198]^c[229]^c[216]^c[226]^c[231]^c[232]^c[218]^c[219]^c[220]^c[236]^c[241]^c[249]^c[235]^c[236]^c[247]^c[251]^c[234]^c[265]^c[252]^c[260]^c[264]^c[265]^c[254]^c[258]^c[259]^c[282]^c[287]^c[273]^c[278]^c[283]^c[287]^c[270]^c[301]^c[288]^c[297]^c[302]^c[291]^c[295]^c[296]^c[295]^c[322]^c[309]^c[319]^c[323]^c[306]^c[322]^c[308]^c[309]^c[324]^c[329]^c[336]^c[340]^c[341]^c[337]^c[341]^c[324]^c[355]^c[342]^c[349]^c[354]^c[357]^c[343]^c[344]^c[351]^c[374]^c[361]^c[373]^c[377]^c[360]^c[360]^c[364]^c[365]^c[382]^c[387]^c[384]^c[389]^c[391]^c[395]^c[378]^c[392]; //row: 9 d[i2+9*Zc]=c[17]^c[32]^c[182]^c[205]^c[242]^c[311]^c[327]^c[370]; //row: 10 d[i2+10*Zc]=c[33]^c[36]^c[81]^c[140]^c[161]^c[254]; //row: 11 d[i2+11*Zc]=c[15]^c[2]^c[3]^c[1]^c[7]^c[8]^c[14]^c[9]^c[15]^c[0]^c[20]^c[25]^c[26]^c[25]^c[31]^c[21]^c[27]^c[22]^c[46]^c[51]^c[52]^c[38]^c[44]^c[42]^c[48]^c[62]^c[67]^c[68]^c[63]^c[69]^c[60]^c[66]^c[78]^c[84]^c[81]^c[87]^c[74]^c[80]^c[95]^c[100]^c[101]^c[90]^c[96]^c[101]^c[107]^c[114]^c[119]^c[120]^c[114]^c[120]^c[120]^c[108]^c[132]^c[138]^c[130]^c[136]^c[134]^c[140]^c[150]^c[156]^c[155]^c[161]^c[145]^c[151]^c[175]^c[162]^c[163]^c[173]^c[179]^c[164]^c[170]^c[182]^c[187]^c[188]^c[185]^c[191]^c[187]^c[193]^c[208]^c[213]^c[214]^c[201]^c[207]^c[200]^c[206]^c[218]^c[223]^c[224]^c[233]^c[221]^c[221]^c[227]^c[219]^c[243]^c[248]^c[249]^c[238]^c[244]^c[236]^c[242]^c[254]^c[260]^c[267]^c[255]^c[261]^c[267]^c[271]^c[276]^c[277]^c[280]^c[286]^c[272]^c[278]^c[290]^c[295]^c[296]^c[304]^c[292]^c[298]^c[304]^c[288]^c[311]^c[317]^c[308]^c[314]^c[311]^c[317]^c[331]^c[336]^c[337]^c[325]^c[331]^c[326]^c[332]^c[344]^c[349]^c[350]^c[356]^c[344]^c[346]^c[352]^c[363]^c[368]^c[369]^c[362]^c[368]^c[367]^c[373]^c[389]^c[394]^c[395]^c[391]^c[379]^c[380]^c[386]^c[380]; //row: 12 d[i2+12*Zc]=c[8]^c[35]^c[189]^c[204]^c[237]^c[332]; //row: 13 d[i2+13*Zc]=c[12]^c[13]^c[17]^c[6]^c[7]^c[14]^c[35]^c[18]^c[23]^c[19]^c[43]^c[44]^c[36]^c[40]^c[59]^c[60]^c[61]^c[58]^c[71]^c[76]^c[79]^c[72]^c[92]^c[93]^c[106]^c[99]^c[111]^c[112]^c[112]^c[118]^c[130]^c[128]^c[132]^c[143]^c[148]^c[153]^c[161]^c[172]^c[173]^c[171]^c[162]^c[197]^c[180]^c[183]^c[185]^c[205]^c[206]^c[199]^c[198]^c[233]^c[216]^c[231]^c[219]^c[240]^c[241]^c[236]^c[234]^c[252]^c[265]^c[259]^c[286]^c[287]^c[278]^c[270]^c[305]^c[288]^c[302]^c[296]^c[309]^c[306]^c[309]^c[328]^c[329]^c[341]^c[324]^c[359]^c[342]^c[354]^c[344]^c[360]^c[361]^c[360]^c[365]^c[370]^c[386]^c[387]^c[389]^c[378]; //row: 14 d[i2+14*Zc]=c[17]^c[221]^c[270]^c[303]^c[323]^c[384]; //row: 15 d[i2+15*Zc]=c[5]^c[9]^c[16]^c[16]^c[17]^c[7]^c[28]^c[33]^c[28]^c[29]^c[35]^c[36]^c[46]^c[50]^c[70]^c[71]^c[67]^c[68]^c[86]^c[89]^c[81]^c[82]^c[103]^c[98]^c[91]^c[122]^c[122]^c[109]^c[110]^c[140]^c[138]^c[141]^c[142]^c[158]^c[145]^c[152]^c[153]^c[165]^c[163]^c[172]^c[190]^c[193]^c[194]^c[195]^c[182]^c[198]^c[209]^c[207]^c[208]^c[226]^c[223]^c[228]^c[229]^c[251]^c[246]^c[243]^c[244]^c[251]^c[262]^c[257]^c[268]^c[269]^c[279]^c[270]^c[280]^c[298]^c[294]^c[305]^c[288]^c[319]^c[316]^c[318]^c[319]^c[339]^c[333]^c[333]^c[334]^c[337]^c[352]^c[346]^c[354]^c[371]^c[370]^c[374]^c[375]^c[379]^c[381]^c[387]^c[388]; //row: 16 d[i2+16*Zc]=c[12]^c[16]^c[5]^c[6]^c[35]^c[22]^c[18]^c[35]^c[43]^c[53]^c[39]^c[59]^c[60]^c[57]^c[66]^c[75]^c[78]^c[89]^c[92]^c[105]^c[98]^c[111]^c[111]^c[117]^c[129]^c[127]^c[131]^c[147]^c[152]^c[160]^c[172]^c[170]^c[179]^c[197]^c[182]^c[184]^c[205]^c[198]^c[215]^c[206]^c[233]^c[230]^c[218]^c[240]^c[235]^c[251]^c[269]^c[264]^c[258]^c[286]^c[277]^c[287]^c[305]^c[301]^c[295]^c[308]^c[323]^c[308]^c[328]^c[340]^c[341]^c[359]^c[353]^c[343]^c[360]^c[377]^c[364]^c[377]^c[386]^c[388]^c[395]; //row: 17 d[i2+17*Zc]=c[8]^c[262]^c[305]^c[323]^c[395]; //row: 18 d[i2+18*Zc]=c[34]^c[222]^c[251]^c[330]^c[359]; //row: 19 d[i2+19*Zc]=c[17]^c[35]^c[135]^c[161]^c[197]; //row: 20 d[i2+20*Zc]=c[6]^c[10]^c[17]^c[0]^c[12]^c[29]^c[34]^c[30]^c[37]^c[47]^c[51]^c[71]^c[54]^c[69]^c[62]^c[87]^c[72]^c[83]^c[104]^c[99]^c[92]^c[123]^c[123]^c[111]^c[141]^c[139]^c[143]^c[159]^c[146]^c[154]^c[166]^c[164]^c[173]^c[179]^c[191]^c[194]^c[196]^c[199]^c[210]^c[209]^c[215]^c[227]^c[224]^c[230]^c[234]^c[247]^c[245]^c[263]^c[258]^c[252]^c[280]^c[271]^c[281]^c[299]^c[295]^c[289]^c[320]^c[317]^c[320]^c[340]^c[334]^c[335]^c[353]^c[347]^c[355]^c[372]^c[371]^c[376]^c[380]^c[382]^c[389]; //row: 21 d[i2+21*Zc]=c[27]^c[99]^c[301]^c[368]^c[395]; //row: 22 d[i2+22*Zc]=c[17]^c[224]^c[251]^c[310]; //row: 23 d[i2+23*Zc]=c[35]^c[53]^c[197]^c[326]; //row: 24 d[i2+24*Zc]=c[12]^c[16]^c[5]^c[6]^c[1]^c[35]^c[22]^c[18]^c[43]^c[53]^c[39]^c[59]^c[60]^c[57]^c[54]^c[75]^c[78]^c[89]^c[89]^c[92]^c[105]^c[98]^c[111]^c[111]^c[117]^c[129]^c[127]^c[131]^c[147]^c[152]^c[160]^c[172]^c[170]^c[179]^c[197]^c[182]^c[184]^c[205]^c[198]^c[215]^c[211]^c[233]^c[230]^c[218]^c[240]^c[235]^c[251]^c[269]^c[264]^c[258]^c[286]^c[277]^c[287]^c[305]^c[301]^c[295]^c[308]^c[323]^c[308]^c[328]^c[340]^c[341]^c[359]^c[353]^c[343]^c[360]^c[377]^c[364]^c[386]^c[388]^c[395]; //row: 25 d[i2+25*Zc]=c[24]^c[125]^c[143]^c[254]; //row: 26 d[i2+26*Zc]=c[17]^c[53]^c[89]^c[276]; //row: 27 d[i2+27*Zc]=c[26]^c[125]^c[161]; //row: 28 d[i2+28*Zc]=c[4]^c[89]^c[352]^c[385]; //row: 29 d[i2+29*Zc]=c[1]^c[5]^c[12]^c[12]^c[13]^c[24]^c[29]^c[24]^c[25]^c[35]^c[50]^c[42]^c[46]^c[66]^c[67]^c[63]^c[64]^c[82]^c[85]^c[77]^c[78]^c[99]^c[94]^c[105]^c[118]^c[118]^c[123]^c[124]^c[136]^c[134]^c[137]^c[138]^c[154]^c[159]^c[148]^c[149]^c[179]^c[177]^c[168]^c[186]^c[189]^c[190]^c[191]^c[212]^c[205]^c[203]^c[204]^c[222]^c[219]^c[224]^c[225]^c[247]^c[242]^c[239]^c[240]^c[258]^c[253]^c[264]^c[265]^c[269]^c[275]^c[284]^c[276]^c[294]^c[290]^c[301]^c[302]^c[315]^c[312]^c[314]^c[315]^c[335]^c[329]^c[329]^c[330]^c[341]^c[348]^c[342]^c[350]^c[367]^c[366]^c[370]^c[371]^c[393]^c[395]^c[383]^c[384]; //row: 30 d[i2+30*Zc]=c[6]^c[10]^c[16]^c[17]^c[17]^c[0]^c[17]^c[29]^c[33]^c[34]^c[29]^c[30]^c[37]^c[47]^c[50]^c[51]^c[71]^c[54]^c[68]^c[69]^c[87]^c[89]^c[72]^c[82]^c[83]^c[104]^c[99]^c[91]^c[92]^c[123]^c[122]^c[123]^c[110]^c[111]^c[141]^c[138]^c[139]^c[142]^c[143]^c[159]^c[145]^c[146]^c[153]^c[154]^c[166]^c[164]^c[172]^c[173]^c[191]^c[193]^c[194]^c[195]^c[196]^c[197]^c[199]^c[210]^c[208]^c[209]^c[227]^c[224]^c[229]^c[230]^c[234]^c[246]^c[247]^c[244]^c[245]^c[251]^c[263]^c[257]^c[258]^c[269]^c[252]^c[280]^c[271]^c[280]^c[281]^c[299]^c[295]^c[288]^c[289]^c[320]^c[316]^c[317]^c[319]^c[320]^c[340]^c[333]^c[334]^c[334]^c[335]^c[353]^c[347]^c[354]^c[355]^c[372]^c[370]^c[371]^c[375]^c[376]^c[380]^c[382]^c[388]^c[389]; //row: 31 d[i2+31*Zc]=c[16]^c[14]^c[2]^c[0]^c[9]^c[7]^c[10]^c[7]^c[8]^c[21]^c[19]^c[26]^c[24]^c[22]^c[19]^c[20]^c[35]^c[47]^c[45]^c[39]^c[37]^c[43]^c[41]^c[63]^c[61]^c[64]^c[62]^c[61]^c[58]^c[59]^c[79]^c[77]^c[82]^c[80]^c[75]^c[72]^c[73]^c[96]^c[94]^c[91]^c[107]^c[102]^c[100]^c[115]^c[113]^c[115]^c[113]^c[121]^c[118]^c[119]^c[133]^c[131]^c[131]^c[129]^c[135]^c[132]^c[133]^c[143]^c[151]^c[149]^c[156]^c[154]^c[146]^c[161]^c[144]^c[176]^c[174]^c[174]^c[172]^c[165]^c[163]^c[183]^c[181]^c[186]^c[184]^c[188]^c[185]^c[186]^c[209]^c[207]^c[202]^c[200]^c[201]^c[198]^c[199]^c[219]^c[217]^c[216]^c[232]^c[222]^c[219]^c[220]^c[244]^c[242]^c[239]^c[237]^c[237]^c[234]^c[235]^c[255]^c[253]^c[268]^c[266]^c[262]^c[259]^c[260]^c[272]^c[270]^c[281]^c[279]^c[273]^c[271]^c[291]^c[289]^c[305]^c[303]^c[299]^c[296]^c[297]^c[312]^c[310]^c[309]^c[307]^c[312]^c[309]^c[310]^c[332]^c[330]^c[326]^c[324]^c[327]^c[324]^c[325]^c[345]^c[343]^c[357]^c[355]^c[347]^c[345]^c[364]^c[362]^c[363]^c[361]^c[368]^c[365]^c[366]^c[390]^c[388]^c[392]^c[390]^c[381]^c[378]^c[379]; //row: 32 d[i2+32*Zc]=c[13]^c[17]^c[5]^c[6]^c[6]^c[7]^c[17]^c[18]^c[22]^c[23]^c[18]^c[19]^c[44]^c[36]^c[39]^c[40]^c[60]^c[61]^c[57]^c[58]^c[76]^c[78]^c[79]^c[89]^c[72]^c[93]^c[106]^c[98]^c[99]^c[112]^c[111]^c[112]^c[117]^c[118]^c[130]^c[127]^c[128]^c[131]^c[132]^c[148]^c[152]^c[153]^c[160]^c[161]^c[173]^c[171]^c[179]^c[162]^c[180]^c[182]^c[183]^c[184]^c[185]^c[206]^c[199]^c[215]^c[198]^c[216]^c[231]^c[218]^c[219]^c[228]^c[241]^c[235]^c[236]^c[251]^c[234]^c[252]^c[264]^c[265]^c[258]^c[259]^c[269]^c[287]^c[278]^c[287]^c[270]^c[288]^c[302]^c[295]^c[296]^c[309]^c[323]^c[306]^c[308]^c[309]^c[329]^c[340]^c[341]^c[341]^c[324]^c[342]^c[354]^c[343]^c[344]^c[361]^c[377]^c[360]^c[364]^c[365]^c[387]^c[389]^c[395]^c[378]; //row: 33 d[i2+33*Zc]=c[35]^c[53]^c[201]^c[395]; //row: 34 d[i2+34*Zc]=c[16]^c[143]^c[287]^c[323]; //row: 35 d[i2+35*Zc]=c[1]^c[5]^c[12]^c[13]^c[24]^c[29]^c[25]^c[18]^c[50]^c[42]^c[46]^c[66]^c[67]^c[64]^c[82]^c[85]^c[78]^c[99]^c[94]^c[105]^c[118]^c[118]^c[124]^c[115]^c[136]^c[134]^c[138]^c[154]^c[159]^c[149]^c[179]^c[177]^c[168]^c[186]^c[189]^c[191]^c[212]^c[205]^c[204]^c[222]^c[219]^c[225]^c[233]^c[247]^c[242]^c[240]^c[258]^c[253]^c[265]^c[275]^c[284]^c[276]^c[294]^c[290]^c[302]^c[315]^c[312]^c[315]^c[335]^c[329]^c[330]^c[348]^c[342]^c[350]^c[367]^c[366]^c[371]^c[393]^c[395]^c[384]; //row: 36 d[i2+36*Zc]=c[17]^c[267]^c[287]^c[341]; //row: 37 d[i2+37*Zc]=c[12]^c[13]^c[17]^c[6]^c[7]^c[35]^c[18]^c[23]^c[19]^c[35]^c[43]^c[44]^c[36]^c[40]^c[59]^c[60]^c[61]^c[58]^c[76]^c[79]^c[72]^c[92]^c[93]^c[106]^c[99]^c[111]^c[112]^c[112]^c[118]^c[130]^c[128]^c[132]^c[148]^c[153]^c[161]^c[172]^c[173]^c[171]^c[162]^c[197]^c[180]^c[183]^c[185]^c[205]^c[206]^c[199]^c[198]^c[233]^c[216]^c[231]^c[219]^c[240]^c[241]^c[236]^c[234]^c[251]^c[252]^c[265]^c[259]^c[286]^c[287]^c[278]^c[270]^c[305]^c[288]^c[302]^c[296]^c[309]^c[306]^c[309]^c[328]^c[329]^c[341]^c[324]^c[359]^c[342]^c[354]^c[344]^c[360]^c[361]^c[360]^c[365]^c[386]^c[387]^c[389]^c[378]; //row: 38 d[i2+38*Zc]=c[9]^c[179]^c[197]^c[233]; //row: 39 d[i2+39*Zc]=c[26]^c[71]^c[128]^c[350]; //row: 40 d[i2+40*Zc]=c[17]^c[161]^c[307]; //row: 41 d[i2+41*Zc]=c[35]^c[71]^c[179]^c[326]; //row: 42 d[i2+42*Zc]=c[12]^c[16]^c[4]^c[5]^c[5]^c[6]^c[8]^c[35]^c[21]^c[22]^c[35]^c[18]^c[43]^c[53]^c[38]^c[39]^c[59]^c[60]^c[56]^c[57]^c[75]^c[77]^c[78]^c[88]^c[89]^c[89]^c[92]^c[105]^c[97]^c[98]^c[111]^c[110]^c[111]^c[116]^c[117]^c[129]^c[126]^c[127]^c[130]^c[131]^c[147]^c[151]^c[152]^c[159]^c[160]^c[172]^c[170]^c[178]^c[179]^c[197]^c[181]^c[182]^c[183]^c[184]^c[205]^c[198]^c[214]^c[215]^c[233]^c[230]^c[217]^c[218]^c[240]^c[234]^c[235]^c[250]^c[251]^c[269]^c[263]^c[264]^c[257]^c[258]^c[286]^c[277]^c[286]^c[287]^c[305]^c[301]^c[294]^c[295]^c[308]^c[322]^c[323]^c[307]^c[308]^c[328]^c[339]^c[340]^c[340]^c[341]^c[359]^c[353]^c[342]^c[343]^c[360]^c[376]^c[377]^c[363]^c[364]^c[386]^c[388]^c[394]^c[395]; //row: 43 d[i2+43*Zc]=c[13]^c[17]^c[6]^c[6]^c[7]^c[18]^c[23]^c[18]^c[19]^c[33]^c[44]^c[36]^c[40]^c[60]^c[61]^c[57]^c[58]^c[76]^c[79]^c[89]^c[72]^c[93]^c[106]^c[99]^c[112]^c[112]^c[117]^c[118]^c[130]^c[128]^c[131]^c[132]^c[148]^c[153]^c[160]^c[161]^c[173]^c[171]^c[162]^c[180]^c[183]^c[184]^c[185]^c[206]^c[199]^c[215]^c[198]^c[216]^c[231]^c[218]^c[219]^c[241]^c[236]^c[251]^c[234]^c[252]^c[265]^c[258]^c[259]^c[287]^c[278]^c[270]^c[288]^c[302]^c[295]^c[296]^c[296]^c[309]^c[306]^c[308]^c[309]^c[329]^c[341]^c[341]^c[324]^c[341]^c[342]^c[354]^c[344]^c[361]^c[360]^c[364]^c[365]^c[387]^c[389]^c[395]^c[378]; //row: 44 d[i2+44*Zc]=c[15]^c[1]^c[8]^c[9]^c[17]^c[20]^c[25]^c[21]^c[46]^c[38]^c[42]^c[62]^c[63]^c[60]^c[78]^c[81]^c[74]^c[95]^c[90]^c[101]^c[114]^c[114]^c[120]^c[132]^c[130]^c[134]^c[143]^c[150]^c[155]^c[145]^c[175]^c[173]^c[164]^c[179]^c[182]^c[185]^c[187]^c[208]^c[201]^c[200]^c[218]^c[233]^c[221]^c[243]^c[238]^c[236]^c[254]^c[267]^c[261]^c[271]^c[280]^c[272]^c[290]^c[304]^c[298]^c[311]^c[308]^c[311]^c[331]^c[325]^c[326]^c[344]^c[356]^c[346]^c[363]^c[362]^c[367]^c[389]^c[391]^c[380]; //row: 45 d[i2+45*Zc]=c[23]^c[125]^c[197]; } break; case 20: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[12]^c[2]^c[7]^c[19]^c[34]^c[26]^c[27]^c[42]^c[53]^c[59]^c[68]^c[66]^c[69]^c[80]^c[99]^c[96]^c[119]^c[100]^c[117]^c[138]^c[126]^c[120]^c[152]^c[141]^c[154]^c[163]^c[179]^c[178]^c[194]^c[199]^c[190]^c[201]^c[205]^c[200]^c[234]^c[228]^c[222]^c[243]^c[259]^c[252]^c[272]^c[274]^c[263]^c[295]^c[282]^c[292]^c[317]^c[305]^c[300]^c[329]^c[331]^c[323]^c[342]^c[343]^c[347]^c[372]^c[365]^c[376]^c[395]^c[399]^c[389]^c[408]^c[415]^c[418]^c[431]^c[420]^c[427]; //row: 1 d[i2+1*Zc]=c[12]^c[13]^c[3]^c[8]^c[0]^c[34]^c[35]^c[27]^c[28]^c[42]^c[43]^c[54]^c[40]^c[68]^c[69]^c[67]^c[70]^c[81]^c[80]^c[97]^c[119]^c[100]^c[101]^c[118]^c[138]^c[139]^c[127]^c[121]^c[153]^c[142]^c[155]^c[164]^c[160]^c[179]^c[194]^c[195]^c[180]^c[191]^c[201]^c[202]^c[206]^c[201]^c[234]^c[235]^c[229]^c[223]^c[243]^c[244]^c[240]^c[253]^c[272]^c[273]^c[275]^c[264]^c[296]^c[283]^c[293]^c[317]^c[318]^c[306]^c[301]^c[329]^c[330]^c[332]^c[324]^c[343]^c[344]^c[348]^c[372]^c[373]^c[366]^c[377]^c[395]^c[396]^c[380]^c[390]^c[408]^c[409]^c[416]^c[419]^c[431]^c[432]^c[421]^c[428]; //row: 2 d[i2+2*Zc]=c[13]^c[3]^c[7]^c[8]^c[19]^c[0]^c[35]^c[26]^c[27]^c[27]^c[28]^c[43]^c[54]^c[59]^c[40]^c[69]^c[67]^c[69]^c[70]^c[81]^c[99]^c[80]^c[96]^c[97]^c[100]^c[101]^c[117]^c[118]^c[139]^c[126]^c[127]^c[120]^c[121]^c[153]^c[141]^c[142]^c[154]^c[155]^c[164]^c[179]^c[160]^c[178]^c[179]^c[195]^c[180]^c[190]^c[191]^c[202]^c[205]^c[206]^c[200]^c[201]^c[235]^c[229]^c[222]^c[223]^c[244]^c[240]^c[252]^c[253]^c[273]^c[274]^c[275]^c[263]^c[264]^c[296]^c[282]^c[283]^c[292]^c[293]^c[318]^c[306]^c[300]^c[301]^c[330]^c[332]^c[323]^c[324]^c[343]^c[343]^c[344]^c[347]^c[348]^c[373]^c[365]^c[366]^c[376]^c[377]^c[396]^c[380]^c[389]^c[390]^c[409]^c[415]^c[416]^c[418]^c[419]^c[432]^c[421]^c[427]^c[428]; //row: 3 d[i2+3*Zc]=c[13]^c[3]^c[8]^c[19]^c[0]^c[35]^c[27]^c[27]^c[28]^c[43]^c[54]^c[40]^c[69]^c[67]^c[69]^c[70]^c[81]^c[80]^c[96]^c[97]^c[100]^c[101]^c[118]^c[139]^c[127]^c[120]^c[121]^c[153]^c[142]^c[154]^c[155]^c[164]^c[160]^c[178]^c[179]^c[195]^c[180]^c[191]^c[202]^c[206]^c[200]^c[201]^c[235]^c[229]^c[222]^c[223]^c[244]^c[240]^c[252]^c[253]^c[273]^c[275]^c[263]^c[264]^c[296]^c[283]^c[292]^c[293]^c[318]^c[306]^c[301]^c[330]^c[332]^c[323]^c[324]^c[343]^c[344]^c[347]^c[348]^c[373]^c[366]^c[376]^c[377]^c[396]^c[380]^c[390]^c[409]^c[416]^c[418]^c[419]^c[432]^c[421]^c[427]^c[428]; //row: 4 d[i2+4*Zc]=c[12]^c[24]; //row: 5 d[i2+5*Zc]=c[11]^c[1]^c[6]^c[18]^c[2]^c[33]^c[25]^c[26]^c[31]^c[41]^c[52]^c[58]^c[67]^c[65]^c[68]^c[69]^c[99]^c[98]^c[95]^c[118]^c[119]^c[116]^c[137]^c[125]^c[139]^c[151]^c[140]^c[153]^c[162]^c[178]^c[177]^c[193]^c[198]^c[189]^c[200]^c[204]^c[219]^c[233]^c[227]^c[221]^c[242]^c[258]^c[251]^c[257]^c[271]^c[273]^c[262]^c[294]^c[281]^c[291]^c[316]^c[304]^c[319]^c[328]^c[330]^c[322]^c[320]^c[341]^c[342]^c[346]^c[371]^c[364]^c[375]^c[394]^c[398]^c[388]^c[407]^c[414]^c[417]^c[430]^c[439]^c[426]^c[426]; //row: 6 d[i2+6*Zc]=c[8]^c[120]^c[212]^c[232]^c[271]^c[341]^c[377]^c[414]; //row: 7 d[i2+7*Zc]=c[11]^c[27]^c[86]^c[149]^c[164]^c[295]; //row: 8 d[i2+8*Zc]=c[17]^c[7]^c[7]^c[17]^c[12]^c[1]^c[2]^c[4]^c[13]^c[14]^c[14]^c[39]^c[29]^c[31]^c[20]^c[21]^c[32]^c[21]^c[22]^c[32]^c[47]^c[57]^c[58]^c[48]^c[44]^c[53]^c[54]^c[73]^c[63]^c[71]^c[61]^c[74]^c[63]^c[64]^c[69]^c[85]^c[95]^c[84]^c[93]^c[94]^c[81]^c[90]^c[91]^c[104]^c[114]^c[105]^c[115]^c[102]^c[111]^c[112]^c[123]^c[133]^c[131]^c[120]^c[121]^c[125]^c[134]^c[135]^c[157]^c[147]^c[146]^c[155]^c[156]^c[159]^c[148]^c[149]^c[168]^c[178]^c[164]^c[173]^c[174]^c[163]^c[172]^c[173]^c[199]^c[189]^c[184]^c[194]^c[195]^c[184]^c[185]^c[206]^c[216]^c[210]^c[219]^c[200]^c[205]^c[214]^c[215]^c[239]^c[229]^c[233]^c[223]^c[227]^c[236]^c[237]^c[248]^c[258]^c[244]^c[254]^c[257]^c[246]^c[247]^c[250]^c[277]^c[267]^c[279]^c[268]^c[269]^c[268]^c[277]^c[278]^c[280]^c[290]^c[287]^c[296]^c[297]^c[297]^c[286]^c[287]^c[302]^c[312]^c[310]^c[300]^c[305]^c[314]^c[315]^c[334]^c[324]^c[336]^c[326]^c[328]^c[337]^c[338]^c[335]^c[347]^c[357]^c[348]^c[357]^c[358]^c[352]^c[341]^c[342]^c[377]^c[367]^c[370]^c[379]^c[360]^c[361]^c[370]^c[371]^c[380]^c[390]^c[384]^c[394]^c[394]^c[383]^c[384]^c[389]^c[413]^c[403]^c[400]^c[409]^c[410]^c[403]^c[412]^c[413]^c[436]^c[426]^c[425]^c[435]^c[432]^c[421]^c[422]^c[428]; //row: 9 d[i2+9*Zc]=c[8]^c[23]^c[215]^c[225]^c[270]^c[346]^c[374]^c[408]; //row: 10 d[i2+10*Zc]=c[33]^c[59]^c[90]^c[154]^c[160]^c[290]; //row: 11 d[i2+11*Zc]=c[15]^c[12]^c[13]^c[5]^c[3]^c[10]^c[8]^c[2]^c[0]^c[15]^c[37]^c[34]^c[35]^c[29]^c[27]^c[30]^c[28]^c[26]^c[45]^c[42]^c[43]^c[56]^c[54]^c[42]^c[40]^c[71]^c[68]^c[69]^c[69]^c[67]^c[72]^c[70]^c[83]^c[81]^c[82]^c[80]^c[99]^c[97]^c[102]^c[119]^c[100]^c[103]^c[101]^c[100]^c[118]^c[121]^c[138]^c[139]^c[129]^c[127]^c[123]^c[121]^c[155]^c[153]^c[144]^c[142]^c[157]^c[155]^c[166]^c[164]^c[162]^c[160]^c[161]^c[179]^c[197]^c[194]^c[195]^c[182]^c[180]^c[193]^c[191]^c[204]^c[201]^c[202]^c[208]^c[206]^c[203]^c[201]^c[237]^c[234]^c[235]^c[231]^c[229]^c[225]^c[223]^c[246]^c[243]^c[244]^c[242]^c[240]^c[255]^c[253]^c[249]^c[275]^c[272]^c[273]^c[277]^c[275]^c[266]^c[264]^c[298]^c[296]^c[285]^c[283]^c[295]^c[293]^c[300]^c[317]^c[318]^c[308]^c[306]^c[303]^c[301]^c[332]^c[329]^c[330]^c[334]^c[332]^c[326]^c[324]^c[328]^c[345]^c[343]^c[346]^c[344]^c[350]^c[348]^c[375]^c[372]^c[373]^c[368]^c[366]^c[379]^c[377]^c[398]^c[395]^c[396]^c[382]^c[380]^c[392]^c[390]^c[411]^c[408]^c[409]^c[418]^c[416]^c[401]^c[419]^c[434]^c[431]^c[432]^c[423]^c[421]^c[430]^c[428]^c[436]; //row: 12 d[i2+12*Zc]=c[8]^c[34]^c[208]^c[227]^c[264]^c[371]; //row: 13 d[i2+13*Zc]=c[9]^c[10]^c[0]^c[5]^c[17]^c[18]^c[31]^c[32]^c[24]^c[25]^c[59]^c[40]^c[51]^c[57]^c[65]^c[66]^c[64]^c[67]^c[61]^c[98]^c[97]^c[94]^c[116]^c[117]^c[118]^c[115]^c[135]^c[136]^c[124]^c[138]^c[150]^c[159]^c[152]^c[142]^c[161]^c[177]^c[176]^c[191]^c[192]^c[197]^c[188]^c[218]^c[219]^c[203]^c[218]^c[231]^c[232]^c[226]^c[220]^c[240]^c[241]^c[257]^c[250]^c[269]^c[270]^c[272]^c[261]^c[293]^c[280]^c[290]^c[314]^c[315]^c[303]^c[318]^c[326]^c[327]^c[329]^c[321]^c[340]^c[341]^c[345]^c[369]^c[370]^c[363]^c[374]^c[392]^c[393]^c[397]^c[387]^c[405]^c[406]^c[413]^c[416]^c[419]^c[428]^c[429]^c[438]^c[425]; //row: 14 d[i2+14*Zc]=c[17]^c[258]^c[313]^c[320]^c[358]^c[437]; //row: 15 d[i2+15*Zc]=c[4]^c[14]^c[19]^c[10]^c[11]^c[8]^c[26]^c[38]^c[38]^c[39]^c[29]^c[54]^c[45]^c[51]^c[60]^c[78]^c[60]^c[61]^c[92]^c[91]^c[87]^c[88]^c[111]^c[112]^c[109]^c[130]^c[138]^c[131]^c[132]^c[144]^c[153]^c[145]^c[146]^c[175]^c[171]^c[169]^c[170]^c[186]^c[191]^c[182]^c[213]^c[217]^c[211]^c[212]^c[219]^c[226]^c[220]^c[233]^c[234]^c[255]^c[251]^c[243]^c[244]^c[264]^c[266]^c[274]^c[275]^c[269]^c[287]^c[294]^c[283]^c[284]^c[309]^c[317]^c[312]^c[321]^c[323]^c[334]^c[335]^c[354]^c[355]^c[358]^c[359]^c[364]^c[377]^c[367]^c[368]^c[363]^c[387]^c[391]^c[381]^c[400]^c[407]^c[409]^c[410]^c[423]^c[432]^c[438]^c[439]; //row: 16 d[i2+16*Zc]=c[12]^c[2]^c[7]^c[19]^c[34]^c[26]^c[27]^c[28]^c[42]^c[53]^c[59]^c[68]^c[66]^c[69]^c[79]^c[80]^c[99]^c[96]^c[119]^c[100]^c[117]^c[138]^c[126]^c[120]^c[152]^c[141]^c[154]^c[163]^c[179]^c[178]^c[194]^c[199]^c[190]^c[201]^c[205]^c[200]^c[234]^c[228]^c[222]^c[224]^c[243]^c[259]^c[252]^c[272]^c[274]^c[263]^c[295]^c[282]^c[292]^c[317]^c[305]^c[300]^c[329]^c[331]^c[323]^c[342]^c[343]^c[347]^c[372]^c[365]^c[376]^c[395]^c[399]^c[389]^c[408]^c[415]^c[418]^c[414]^c[431]^c[420]^c[427]; //row: 17 d[i2+17*Zc]=c[16]^c[286]^c[327]^c[350]^c[427]; //row: 18 d[i2+18*Zc]=c[39]^c[253]^c[270]^c[360]^c[394]; //row: 19 d[i2+19*Zc]=c[3]^c[20]^c[140]^c[169]^c[200]; //row: 20 d[i2+20*Zc]=c[2]^c[12]^c[17]^c[9]^c[0]^c[24]^c[36]^c[37]^c[52]^c[43]^c[49]^c[78]^c[76]^c[79]^c[61]^c[90]^c[89]^c[86]^c[109]^c[110]^c[107]^c[128]^c[136]^c[130]^c[142]^c[151]^c[144]^c[173]^c[169]^c[168]^c[184]^c[189]^c[180]^c[199]^c[211]^c[215]^c[210]^c[224]^c[238]^c[232]^c[229]^c[253]^c[249]^c[242]^c[262]^c[264]^c[273]^c[285]^c[292]^c[282]^c[307]^c[315]^c[310]^c[339]^c[321]^c[333]^c[352]^c[353]^c[357]^c[362]^c[375]^c[366]^c[385]^c[389]^c[399]^c[418]^c[405]^c[408]^c[421]^c[430]^c[437]; //row: 21 d[i2+21*Zc]=c[38]^c[114]^c[331]^c[402]^c[422]; //row: 22 d[i2+22*Zc]=c[16]^c[259]^c[274]^c[355]; //row: 23 d[i2+23*Zc]=c[28]^c[49]^c[212]^c[364]; //row: 24 d[i2+24*Zc]=c[13]^c[3]^c[8]^c[0]^c[8]^c[35]^c[27]^c[28]^c[43]^c[54]^c[40]^c[69]^c[67]^c[70]^c[79]^c[81]^c[80]^c[97]^c[89]^c[100]^c[101]^c[118]^c[139]^c[127]^c[121]^c[153]^c[142]^c[155]^c[164]^c[160]^c[179]^c[195]^c[180]^c[191]^c[202]^c[206]^c[201]^c[235]^c[229]^c[223]^c[226]^c[244]^c[240]^c[253]^c[273]^c[275]^c[264]^c[296]^c[283]^c[293]^c[318]^c[306]^c[301]^c[330]^c[332]^c[324]^c[343]^c[344]^c[348]^c[373]^c[366]^c[377]^c[396]^c[380]^c[390]^c[409]^c[416]^c[419]^c[432]^c[421]^c[428]; //row: 25 d[i2+25*Zc]=c[31]^c[134]^c[155]^c[285]; //row: 26 d[i2+26*Zc]=c[9]^c[49]^c[97]^c[306]; //row: 27 d[i2+27*Zc]=c[29]^c[128]^c[163]; //row: 28 d[i2+28*Zc]=c[10]^c[92]^c[389]^c[433]; //row: 29 d[i2+29*Zc]=c[2]^c[12]^c[17]^c[8]^c[9]^c[24]^c[36]^c[36]^c[37]^c[26]^c[52]^c[43]^c[49]^c[78]^c[76]^c[78]^c[79]^c[90]^c[89]^c[85]^c[86]^c[109]^c[110]^c[107]^c[128]^c[136]^c[129]^c[130]^c[142]^c[151]^c[143]^c[144]^c[173]^c[169]^c[167]^c[168]^c[184]^c[189]^c[180]^c[211]^c[215]^c[209]^c[210]^c[224]^c[238]^c[231]^c[232]^c[253]^c[249]^c[241]^c[242]^c[262]^c[264]^c[272]^c[273]^c[285]^c[292]^c[281]^c[282]^c[287]^c[307]^c[315]^c[310]^c[339]^c[321]^c[332]^c[333]^c[352]^c[353]^c[356]^c[357]^c[362]^c[375]^c[365]^c[366]^c[376]^c[385]^c[389]^c[399]^c[418]^c[405]^c[407]^c[408]^c[421]^c[430]^c[436]^c[437]; //row: 30 d[i2+30*Zc]=c[8]^c[18]^c[2]^c[3]^c[14]^c[15]^c[10]^c[30]^c[21]^c[22]^c[22]^c[23]^c[58]^c[49]^c[54]^c[55]^c[64]^c[62]^c[64]^c[65]^c[96]^c[94]^c[95]^c[91]^c[92]^c[115]^c[116]^c[112]^c[113]^c[134]^c[121]^c[122]^c[135]^c[136]^c[148]^c[156]^c[157]^c[149]^c[150]^c[179]^c[174]^c[175]^c[173]^c[174]^c[190]^c[195]^c[185]^c[186]^c[217]^c[200]^c[201]^c[215]^c[216]^c[202]^c[230]^c[224]^c[237]^c[238]^c[259]^c[255]^c[247]^c[248]^c[268]^c[269]^c[270]^c[278]^c[279]^c[264]^c[291]^c[297]^c[298]^c[287]^c[288]^c[313]^c[301]^c[315]^c[316]^c[325]^c[327]^c[338]^c[339]^c[358]^c[358]^c[359]^c[342]^c[343]^c[368]^c[360]^c[361]^c[371]^c[372]^c[391]^c[395]^c[384]^c[385]^c[404]^c[410]^c[411]^c[413]^c[414]^c[427]^c[436]^c[422]^c[423]; //row: 31 d[i2+31*Zc]=c[18]^c[15]^c[8]^c[5]^c[13]^c[10]^c[5]^c[1]^c[2]^c[20]^c[37]^c[32]^c[29]^c[33]^c[29]^c[30]^c[21]^c[48]^c[45]^c[59]^c[56]^c[45]^c[42]^c[74]^c[71]^c[72]^c[69]^c[75]^c[71]^c[72]^c[86]^c[83]^c[85]^c[82]^c[82]^c[98]^c[99]^c[105]^c[102]^c[106]^c[103]^c[103]^c[100]^c[124]^c[121]^c[132]^c[129]^c[126]^c[122]^c[123]^c[158]^c[155]^c[147]^c[144]^c[140]^c[156]^c[157]^c[147]^c[169]^c[166]^c[165]^c[162]^c[164]^c[160]^c[161]^c[180]^c[197]^c[185]^c[182]^c[196]^c[193]^c[207]^c[204]^c[211]^c[208]^c[206]^c[202]^c[203]^c[220]^c[237]^c[234]^c[231]^c[228]^c[224]^c[225]^c[249]^c[246]^c[245]^c[242]^c[258]^c[254]^c[255]^c[278]^c[275]^c[260]^c[277]^c[269]^c[265]^c[266]^c[281]^c[298]^c[288]^c[285]^c[298]^c[294]^c[295]^c[303]^c[300]^c[311]^c[308]^c[306]^c[303]^c[335]^c[332]^c[337]^c[334]^c[329]^c[325]^c[326]^c[348]^c[345]^c[349]^c[346]^c[353]^c[349]^c[350]^c[378]^c[375]^c[371]^c[368]^c[362]^c[378]^c[379]^c[381]^c[398]^c[385]^c[382]^c[395]^c[392]^c[414]^c[411]^c[401]^c[418]^c[404]^c[400]^c[401]^c[437]^c[434]^c[426]^c[423]^c[433]^c[429]^c[430]; //row: 32 d[i2+32*Zc]=c[10]^c[0]^c[4]^c[5]^c[16]^c[17]^c[9]^c[32]^c[23]^c[24]^c[24]^c[25]^c[40]^c[51]^c[56]^c[57]^c[66]^c[64]^c[66]^c[67]^c[98]^c[96]^c[97]^c[93]^c[94]^c[117]^c[118]^c[114]^c[115]^c[136]^c[123]^c[124]^c[137]^c[138]^c[150]^c[158]^c[159]^c[151]^c[152]^c[161]^c[176]^c[177]^c[175]^c[176]^c[192]^c[197]^c[187]^c[188]^c[219]^c[202]^c[203]^c[217]^c[218]^c[232]^c[226]^c[239]^c[220]^c[241]^c[257]^c[249]^c[250]^c[241]^c[270]^c[271]^c[272]^c[260]^c[261]^c[293]^c[299]^c[280]^c[289]^c[290]^c[290]^c[315]^c[303]^c[317]^c[318]^c[327]^c[329]^c[320]^c[321]^c[340]^c[340]^c[341]^c[344]^c[345]^c[370]^c[362]^c[363]^c[373]^c[374]^c[393]^c[397]^c[386]^c[387]^c[406]^c[412]^c[413]^c[415]^c[416]^c[429]^c[438]^c[424]^c[425]; //row: 33 d[i2+33*Zc]=c[29]^c[59]^c[239]^c[432]; //row: 34 d[i2+34*Zc]=c[6]^c[155]^c[304]^c[343]; //row: 35 d[i2+35*Zc]=c[17]^c[7]^c[12]^c[4]^c[39]^c[31]^c[32]^c[26]^c[47]^c[58]^c[44]^c[73]^c[71]^c[74]^c[85]^c[84]^c[81]^c[104]^c[105]^c[102]^c[123]^c[131]^c[125]^c[137]^c[157]^c[146]^c[159]^c[168]^c[164]^c[163]^c[199]^c[184]^c[195]^c[206]^c[210]^c[205]^c[239]^c[233]^c[227]^c[248]^c[244]^c[257]^c[254]^c[277]^c[279]^c[268]^c[280]^c[287]^c[297]^c[302]^c[310]^c[305]^c[334]^c[336]^c[328]^c[347]^c[348]^c[352]^c[377]^c[370]^c[361]^c[380]^c[384]^c[394]^c[413]^c[400]^c[403]^c[436]^c[425]^c[432]; //row: 36 d[i2+36*Zc]=c[18]^c[298]^c[317]^c[379]; //row: 37 d[i2+37*Zc]=c[7]^c[8]^c[18]^c[3]^c[15]^c[29]^c[30]^c[22]^c[23]^c[37]^c[57]^c[58]^c[49]^c[55]^c[63]^c[64]^c[62]^c[65]^c[96]^c[95]^c[92]^c[114]^c[115]^c[116]^c[113]^c[133]^c[134]^c[122]^c[136]^c[148]^c[157]^c[150]^c[179]^c[175]^c[174]^c[189]^c[190]^c[195]^c[186]^c[216]^c[217]^c[201]^c[216]^c[229]^c[230]^c[224]^c[238]^c[258]^c[259]^c[255]^c[248]^c[267]^c[268]^c[270]^c[279]^c[274]^c[291]^c[298]^c[288]^c[312]^c[313]^c[301]^c[316]^c[324]^c[325]^c[327]^c[339]^c[358]^c[359]^c[343]^c[367]^c[368]^c[361]^c[372]^c[390]^c[391]^c[395]^c[385]^c[403]^c[404]^c[411]^c[414]^c[426]^c[427]^c[436]^c[423]; //row: 38 d[i2+38*Zc]=c[10]^c[198]^c[203]^c[240]; //row: 39 d[i2+39*Zc]=c[21]^c[76]^c[151]^c[387]; //row: 40 d[i2+40*Zc]=c[11]^c[179]^c[356]; //row: 41 d[i2+41*Zc]=c[33]^c[66]^c[183]^c[366]; //row: 42 d[i2+42*Zc]=c[19]^c[9]^c[13]^c[14]^c[5]^c[6]^c[5]^c[21]^c[32]^c[33]^c[33]^c[34]^c[49]^c[40]^c[45]^c[46]^c[75]^c[73]^c[75]^c[76]^c[87]^c[85]^c[86]^c[82]^c[83]^c[84]^c[106]^c[107]^c[103]^c[104]^c[125]^c[132]^c[133]^c[126]^c[127]^c[159]^c[147]^c[148]^c[140]^c[141]^c[170]^c[165]^c[166]^c[164]^c[165]^c[181]^c[186]^c[196]^c[197]^c[208]^c[211]^c[212]^c[206]^c[207]^c[221]^c[235]^c[228]^c[229]^c[250]^c[246]^c[258]^c[259]^c[279]^c[260]^c[261]^c[269]^c[270]^c[282]^c[288]^c[289]^c[298]^c[299]^c[304]^c[312]^c[306]^c[307]^c[336]^c[338]^c[329]^c[330]^c[349]^c[349]^c[350]^c[353]^c[354]^c[379]^c[371]^c[372]^c[362]^c[363]^c[382]^c[386]^c[395]^c[396]^c[415]^c[401]^c[402]^c[404]^c[405]^c[438]^c[427]^c[433]^c[434]; //row: 43 d[i2+43*Zc]=c[15]^c[5]^c[10]^c[1]^c[2]^c[37]^c[29]^c[29]^c[30]^c[27]^c[45]^c[56]^c[42]^c[71]^c[69]^c[71]^c[72]^c[83]^c[82]^c[98]^c[99]^c[102]^c[103]^c[100]^c[121]^c[129]^c[122]^c[123]^c[155]^c[144]^c[156]^c[157]^c[166]^c[162]^c[160]^c[161]^c[197]^c[182]^c[193]^c[204]^c[208]^c[202]^c[203]^c[237]^c[231]^c[224]^c[225]^c[246]^c[242]^c[254]^c[255]^c[275]^c[277]^c[265]^c[266]^c[298]^c[285]^c[294]^c[295]^c[300]^c[308]^c[303]^c[332]^c[334]^c[325]^c[326]^c[328]^c[345]^c[346]^c[349]^c[350]^c[375]^c[368]^c[378]^c[379]^c[375]^c[398]^c[382]^c[392]^c[411]^c[418]^c[400]^c[401]^c[434]^c[423]^c[429]^c[430]; //row: 44 d[i2+44*Zc]=c[12]^c[2]^c[7]^c[19]^c[13]^c[34]^c[26]^c[27]^c[42]^c[53]^c[59]^c[68]^c[66]^c[69]^c[80]^c[99]^c[96]^c[119]^c[100]^c[117]^c[138]^c[126]^c[120]^c[152]^c[141]^c[154]^c[146]^c[163]^c[179]^c[178]^c[194]^c[199]^c[190]^c[198]^c[201]^c[205]^c[200]^c[234]^c[228]^c[222]^c[243]^c[259]^c[252]^c[272]^c[274]^c[263]^c[295]^c[282]^c[292]^c[317]^c[305]^c[300]^c[329]^c[331]^c[323]^c[342]^c[343]^c[347]^c[372]^c[365]^c[376]^c[395]^c[399]^c[389]^c[408]^c[415]^c[418]^c[431]^c[420]^c[427]; //row: 45 d[i2+45*Zc]=c[20]^c[127]^c[205]; } break; case 22: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[7]^c[10]^c[5]^c[8]^c[29]^c[34]^c[27]^c[56]^c[48]^c[58]^c[87]^c[73]^c[70]^c[95]^c[103]^c[102]^c[118]^c[113]^c[110]^c[142]^c[132]^c[138]^c[155]^c[171]^c[165]^c[191]^c[192]^c[178]^c[198]^c[203]^c[205]^c[227]^c[236]^c[237]^c[242]^c[254]^c[245]^c[272]^c[274]^c[278]^c[288]^c[307]^c[290]^c[311]^c[329]^c[316]^c[338]^c[351]^c[344]^c[368]^c[366]^c[358]^c[374]^c[394]^c[390]^c[413]^c[404]^c[406]^c[430]^c[426]^c[429]^c[442]^c[446]^c[450]^c[473]^c[477]^c[472]; //row: 1 d[i2+1*Zc]=c[7]^c[8]^c[11]^c[6]^c[9]^c[29]^c[30]^c[35]^c[28]^c[56]^c[57]^c[49]^c[59]^c[87]^c[66]^c[74]^c[71]^c[96]^c[104]^c[103]^c[118]^c[119]^c[114]^c[111]^c[142]^c[143]^c[133]^c[139]^c[156]^c[172]^c[166]^c[192]^c[193]^c[179]^c[198]^c[199]^c[204]^c[206]^c[227]^c[228]^c[237]^c[238]^c[242]^c[243]^c[255]^c[246]^c[272]^c[273]^c[275]^c[279]^c[288]^c[289]^c[286]^c[291]^c[312]^c[308]^c[317]^c[338]^c[339]^c[330]^c[345]^c[368]^c[369]^c[367]^c[359]^c[375]^c[395]^c[391]^c[413]^c[414]^c[405]^c[407]^c[430]^c[431]^c[427]^c[430]^c[442]^c[443]^c[447]^c[451]^c[473]^c[474]^c[478]^c[473]; //row: 2 d[i2+2*Zc]=c[8]^c[11]^c[5]^c[6]^c[8]^c[9]^c[30]^c[34]^c[35]^c[27]^c[28]^c[57]^c[49]^c[58]^c[59]^c[66]^c[74]^c[70]^c[71]^c[96]^c[103]^c[104]^c[102]^c[103]^c[119]^c[114]^c[110]^c[111]^c[143]^c[132]^c[133]^c[138]^c[139]^c[156]^c[171]^c[172]^c[165]^c[166]^c[192]^c[192]^c[193]^c[178]^c[179]^c[199]^c[204]^c[205]^c[206]^c[228]^c[236]^c[237]^c[237]^c[238]^c[243]^c[255]^c[245]^c[246]^c[273]^c[275]^c[278]^c[279]^c[289]^c[307]^c[286]^c[290]^c[291]^c[312]^c[329]^c[308]^c[316]^c[317]^c[339]^c[330]^c[344]^c[345]^c[369]^c[367]^c[358]^c[359]^c[375]^c[394]^c[395]^c[390]^c[391]^c[414]^c[404]^c[405]^c[406]^c[407]^c[431]^c[427]^c[429]^c[430]^c[443]^c[446]^c[447]^c[450]^c[451]^c[474]^c[478]^c[472]^c[473]; //row: 3 d[i2+3*Zc]=c[8]^c[11]^c[6]^c[8]^c[9]^c[30]^c[35]^c[27]^c[28]^c[57]^c[49]^c[59]^c[66]^c[74]^c[70]^c[71]^c[96]^c[104]^c[102]^c[103]^c[119]^c[114]^c[111]^c[143]^c[133]^c[138]^c[139]^c[156]^c[172]^c[165]^c[166]^c[192]^c[193]^c[178]^c[179]^c[199]^c[204]^c[206]^c[228]^c[237]^c[237]^c[238]^c[243]^c[255]^c[245]^c[246]^c[273]^c[275]^c[278]^c[279]^c[289]^c[286]^c[290]^c[291]^c[312]^c[308]^c[316]^c[317]^c[339]^c[330]^c[345]^c[369]^c[367]^c[358]^c[359]^c[375]^c[395]^c[390]^c[391]^c[414]^c[405]^c[406]^c[407]^c[431]^c[427]^c[430]^c[443]^c[447]^c[450]^c[451]^c[474]^c[478]^c[472]^c[473]; //row: 4 d[i2+4*Zc]=c[19]^c[35]; //row: 5 d[i2+5*Zc]=c[4]^c[7]^c[2]^c[5]^c[20]^c[26]^c[31]^c[24]^c[41]^c[53]^c[45]^c[55]^c[84]^c[70]^c[67]^c[74]^c[92]^c[100]^c[99]^c[115]^c[110]^c[129]^c[139]^c[151]^c[135]^c[174]^c[168]^c[162]^c[188]^c[189]^c[197]^c[217]^c[200]^c[202]^c[224]^c[233]^c[234]^c[261]^c[251]^c[242]^c[269]^c[271]^c[275]^c[277]^c[307]^c[304]^c[287]^c[308]^c[326]^c[313]^c[335]^c[348]^c[341]^c[365]^c[363]^c[355]^c[360]^c[393]^c[391]^c[387]^c[410]^c[401]^c[403]^c[427]^c[423]^c[426]^c[461]^c[443]^c[447]^c[470]^c[474]^c[469]^c[477]; //row: 6 d[i2+6*Zc]=c[7]^c[138]^c[241]^c[252]^c[303]^c[391]^c[415]^c[458]; //row: 7 d[i2+7*Zc]=c[2]^c[36]^c[91]^c[164]^c[192]^c[324]; //row: 8 d[i2+8*Zc]=c[13]^c[10]^c[16]^c[13]^c[11]^c[7]^c[8]^c[14]^c[10]^c[11]^c[17]^c[35]^c[32]^c[40]^c[36]^c[37]^c[33]^c[29]^c[30]^c[30]^c[62]^c[59]^c[54]^c[51]^c[64]^c[60]^c[61]^c[71]^c[68]^c[79]^c[76]^c[76]^c[72]^c[73]^c[87]^c[101]^c[98]^c[109]^c[105]^c[106]^c[108]^c[104]^c[105]^c[124]^c[121]^c[119]^c[116]^c[116]^c[112]^c[113]^c[148]^c[145]^c[138]^c[134]^c[135]^c[144]^c[140]^c[141]^c[161]^c[158]^c[155]^c[173]^c[174]^c[171]^c[167]^c[168]^c[197]^c[194]^c[176]^c[194]^c[195]^c[184]^c[180]^c[181]^c[204]^c[201]^c[209]^c[206]^c[211]^c[207]^c[208]^c[233]^c[230]^c[220]^c[238]^c[239]^c[221]^c[239]^c[240]^c[248]^c[245]^c[260]^c[257]^c[251]^c[247]^c[248]^c[278]^c[275]^c[280]^c[277]^c[284]^c[280]^c[281]^c[267]^c[294]^c[291]^c[291]^c[287]^c[288]^c[296]^c[292]^c[293]^c[317]^c[314]^c[313]^c[309]^c[310]^c[322]^c[318]^c[319]^c[344]^c[341]^c[335]^c[332]^c[350]^c[346]^c[347]^c[352]^c[371]^c[372]^c[369]^c[364]^c[360]^c[361]^c[355]^c[380]^c[377]^c[378]^c[374]^c[375]^c[374]^c[392]^c[393]^c[397]^c[416]^c[410]^c[406]^c[407]^c[412]^c[408]^c[409]^c[436]^c[433]^c[432]^c[429]^c[435]^c[431]^c[432]^c[434]^c[448]^c[445]^c[452]^c[448]^c[449]^c[456]^c[452]^c[453]^c[479]^c[476]^c[483]^c[480]^c[478]^c[474]^c[475]^c[476]; //row: 9 d[i2+9*Zc]=c[1]^c[43]^c[226]^c[242]^c[289]^c[393]^c[396]^c[446]; //row: 10 d[i2+10*Zc]=c[42]^c[54]^c[92]^c[164]^c[180]^c[310]; //row: 11 d[i2+11*Zc]=c[15]^c[1]^c[2]^c[18]^c[5]^c[13]^c[0]^c[16]^c[3]^c[2]^c[37]^c[23]^c[24]^c[42]^c[29]^c[35]^c[22]^c[35]^c[64]^c[50]^c[51]^c[56]^c[65]^c[44]^c[53]^c[73]^c[81]^c[82]^c[81]^c[68]^c[78]^c[87]^c[103]^c[90]^c[89]^c[98]^c[88]^c[97]^c[126]^c[112]^c[113]^c[121]^c[130]^c[118]^c[127]^c[150]^c[136]^c[137]^c[140]^c[149]^c[146]^c[133]^c[163]^c[172]^c[157]^c[166]^c[173]^c[160]^c[177]^c[186]^c[178]^c[187]^c[186]^c[195]^c[206]^c[214]^c[215]^c[211]^c[198]^c[213]^c[200]^c[235]^c[221]^c[222]^c[222]^c[231]^c[223]^c[232]^c[250]^c[258]^c[259]^c[262]^c[249]^c[253]^c[262]^c[280]^c[266]^c[267]^c[282]^c[269]^c[264]^c[273]^c[265]^c[296]^c[304]^c[305]^c[293]^c[302]^c[298]^c[307]^c[319]^c[328]^c[315]^c[324]^c[324]^c[311]^c[346]^c[332]^c[333]^c[337]^c[346]^c[330]^c[339]^c[354]^c[362]^c[363]^c[352]^c[361]^c[366]^c[353]^c[372]^c[382]^c[391]^c[380]^c[389]^c[376]^c[385]^c[399]^c[407]^c[408]^c[412]^c[399]^c[414]^c[401]^c[438]^c[424]^c[425]^c[434]^c[421]^c[437]^c[424]^c[450]^c[458]^c[459]^c[454]^c[441]^c[458]^c[445]^c[481]^c[467]^c[468]^c[463]^c[472]^c[480]^c[467]^c[473]; //row: 12 d[i2+12*Zc]=c[12]^c[40]^c[229]^c[263]^c[307]^c[405]; //row: 13 d[i2+13*Zc]=c[0]^c[1]^c[4]^c[21]^c[2]^c[2]^c[22]^c[23]^c[28]^c[43]^c[49]^c[50]^c[64]^c[52]^c[80]^c[81]^c[67]^c[86]^c[74]^c[89]^c[97]^c[96]^c[111]^c[112]^c[129]^c[126]^c[135]^c[136]^c[148]^c[132]^c[171]^c[165]^c[159]^c[154]^c[185]^c[186]^c[194]^c[213]^c[214]^c[219]^c[199]^c[220]^c[221]^c[230]^c[231]^c[257]^c[258]^c[248]^c[261]^c[265]^c[266]^c[268]^c[272]^c[303]^c[304]^c[301]^c[306]^c[327]^c[323]^c[310]^c[331]^c[332]^c[345]^c[338]^c[361]^c[362]^c[360]^c[352]^c[390]^c[388]^c[384]^c[406]^c[407]^c[398]^c[400]^c[423]^c[424]^c[420]^c[423]^c[457]^c[458]^c[440]^c[444]^c[445]^c[466]^c[467]^c[471]^c[466]; //row: 14 d[i2+14*Zc]=c[21]^c[277]^c[342]^c[353]^c[395]^c[473]; //row: 15 d[i2+15*Zc]=c[11]^c[14]^c[9]^c[11]^c[12]^c[21]^c[33]^c[38]^c[30]^c[31]^c[39]^c[60]^c[52]^c[62]^c[69]^c[77]^c[73]^c[74]^c[99]^c[107]^c[105]^c[106]^c[122]^c[117]^c[114]^c[146]^c[136]^c[141]^c[142]^c[159]^c[175]^c[168]^c[169]^c[195]^c[196]^c[181]^c[182]^c[202]^c[207]^c[209]^c[231]^c[240]^c[240]^c[241]^c[234]^c[246]^c[258]^c[248]^c[249]^c[276]^c[278]^c[281]^c[282]^c[292]^c[289]^c[293]^c[294]^c[300]^c[315]^c[311]^c[319]^c[320]^c[342]^c[333]^c[348]^c[372]^c[370]^c[361]^c[362]^c[378]^c[376]^c[393]^c[394]^c[417]^c[408]^c[409]^c[410]^c[417]^c[434]^c[430]^c[433]^c[446]^c[450]^c[453]^c[454]^c[477]^c[481]^c[475]^c[476]; //row: 16 d[i2+16*Zc]=c[11]^c[14]^c[9]^c[12]^c[33]^c[38]^c[31]^c[35]^c[60]^c[52]^c[62]^c[69]^c[77]^c[74]^c[72]^c[99]^c[107]^c[106]^c[122]^c[117]^c[114]^c[146]^c[136]^c[142]^c[159]^c[175]^c[169]^c[195]^c[196]^c[182]^c[202]^c[207]^c[209]^c[231]^c[240]^c[241]^c[246]^c[258]^c[249]^c[243]^c[276]^c[278]^c[282]^c[292]^c[289]^c[294]^c[315]^c[311]^c[320]^c[342]^c[333]^c[348]^c[372]^c[370]^c[362]^c[378]^c[376]^c[394]^c[417]^c[408]^c[410]^c[434]^c[430]^c[433]^c[446]^c[450]^c[454]^c[440]^c[477]^c[481]^c[476]; //row: 17 d[i2+17*Zc]=c[21]^c[315]^c[356]^c[379]^c[475]; //row: 18 d[i2+18*Zc]=c[24]^c[285]^c[289]^c[400]^c[424]; //row: 19 d[i2+19*Zc]=c[20]^c[43]^c[168]^c[191]^c[225]; //row: 20 d[i2+20*Zc]=c[15]^c[18]^c[13]^c[16]^c[0]^c[37]^c[42]^c[35]^c[64]^c[56]^c[44]^c[73]^c[81]^c[78]^c[86]^c[103]^c[89]^c[88]^c[126]^c[121]^c[118]^c[150]^c[140]^c[146]^c[163]^c[157]^c[173]^c[177]^c[178]^c[186]^c[206]^c[211]^c[213]^c[198]^c[235]^c[222]^c[223]^c[250]^c[262]^c[253]^c[243]^c[280]^c[282]^c[264]^c[296]^c[293]^c[298]^c[319]^c[315]^c[324]^c[346]^c[337]^c[330]^c[354]^c[352]^c[366]^c[382]^c[380]^c[376]^c[399]^c[412]^c[414]^c[438]^c[434]^c[437]^c[450]^c[454]^c[458]^c[481]^c[463]^c[480]; //row: 21 d[i2+21*Zc]=c[29]^c[131]^c[367]^c[450]^c[482]; //row: 22 d[i2+22*Zc]=c[15]^c[266]^c[301]^c[376]; //row: 23 d[i2+23*Zc]=c[39]^c[49]^c[224]^c[413]; //row: 24 d[i2+24*Zc]=c[3]^c[6]^c[1]^c[4]^c[15]^c[25]^c[30]^c[23]^c[52]^c[44]^c[54]^c[83]^c[69]^c[66]^c[81]^c[91]^c[99]^c[98]^c[94]^c[114]^c[131]^c[128]^c[138]^c[150]^c[134]^c[173]^c[167]^c[161]^c[187]^c[188]^c[196]^c[216]^c[199]^c[201]^c[223]^c[232]^c[233]^c[260]^c[250]^c[263]^c[243]^c[268]^c[270]^c[274]^c[306]^c[303]^c[286]^c[329]^c[325]^c[312]^c[334]^c[347]^c[340]^c[364]^c[362]^c[354]^c[392]^c[390]^c[386]^c[409]^c[400]^c[402]^c[426]^c[422]^c[425]^c[460]^c[442]^c[446]^c[469]^c[473]^c[468]; //row: 25 d[i2+25*Zc]=c[36]^c[144]^c[154]^c[317]; //row: 26 d[i2+26*Zc]=c[16]^c[61]^c[93]^c[340]; //row: 27 d[i2+27*Zc]=c[24]^c[149]^c[179]; //row: 28 d[i2+28*Zc]=c[13]^c[88]^c[435]^c[474]; //row: 29 d[i2+29*Zc]=c[5]^c[8]^c[3]^c[5]^c[6]^c[27]^c[32]^c[24]^c[25]^c[30]^c[54]^c[46]^c[56]^c[85]^c[71]^c[67]^c[68]^c[93]^c[101]^c[99]^c[100]^c[116]^c[111]^c[130]^c[140]^c[152]^c[135]^c[136]^c[175]^c[169]^c[162]^c[163]^c[189]^c[190]^c[197]^c[176]^c[218]^c[201]^c[203]^c[225]^c[234]^c[234]^c[235]^c[262]^c[252]^c[242]^c[243]^c[270]^c[272]^c[275]^c[276]^c[286]^c[305]^c[287]^c[288]^c[309]^c[327]^c[313]^c[314]^c[323]^c[336]^c[349]^c[342]^c[366]^c[364]^c[355]^c[356]^c[394]^c[392]^c[387]^c[388]^c[411]^c[402]^c[403]^c[404]^c[396]^c[428]^c[424]^c[427]^c[440]^c[444]^c[447]^c[448]^c[471]^c[475]^c[469]^c[470]; //row: 30 d[i2+30*Zc]=c[0]^c[3]^c[19]^c[20]^c[0]^c[1]^c[16]^c[22]^c[26]^c[27]^c[41]^c[42]^c[49]^c[63]^c[50]^c[51]^c[80]^c[66]^c[84]^c[85]^c[88]^c[95]^c[96]^c[94]^c[95]^c[111]^c[128]^c[124]^c[125]^c[135]^c[146]^c[147]^c[152]^c[153]^c[170]^c[163]^c[164]^c[157]^c[158]^c[184]^c[184]^c[185]^c[192]^c[193]^c[213]^c[218]^c[219]^c[198]^c[220]^c[228]^c[229]^c[229]^c[230]^c[235]^c[257]^c[247]^c[259]^c[260]^c[265]^c[267]^c[270]^c[271]^c[303]^c[299]^c[300]^c[304]^c[305]^c[292]^c[326]^c[321]^c[322]^c[308]^c[309]^c[331]^c[344]^c[336]^c[337]^c[361]^c[359]^c[372]^c[373]^c[389]^c[386]^c[387]^c[382]^c[383]^c[406]^c[396]^c[397]^c[398]^c[399]^c[423]^c[419]^c[421]^c[422]^c[457]^c[460]^c[461]^c[442]^c[443]^c[466]^c[470]^c[464]^c[465]; //row: 31 d[i2+31*Zc]=c[0]^c[10]^c[3]^c[13]^c[20]^c[8]^c[1]^c[10]^c[11]^c[22]^c[32]^c[27]^c[37]^c[42]^c[29]^c[30]^c[34]^c[49]^c[59]^c[63]^c[51]^c[51]^c[61]^c[80]^c[68]^c[66]^c[76]^c[85]^c[72]^c[73]^c[88]^c[98]^c[96]^c[106]^c[95]^c[104]^c[105]^c[111]^c[121]^c[128]^c[116]^c[125]^c[113]^c[135]^c[145]^c[147]^c[135]^c[153]^c[140]^c[141]^c[170]^c[158]^c[164]^c[174]^c[158]^c[167]^c[168]^c[164]^c[184]^c[194]^c[185]^c[195]^c[193]^c[180]^c[181]^c[213]^c[201]^c[218]^c[206]^c[198]^c[208]^c[220]^c[230]^c[229]^c[239]^c[230]^c[239]^c[240]^c[257]^c[245]^c[247]^c[257]^c[260]^c[247]^c[248]^c[265]^c[275]^c[267]^c[277]^c[271]^c[280]^c[281]^c[303]^c[291]^c[300]^c[288]^c[305]^c[292]^c[293]^c[326]^c[314]^c[322]^c[310]^c[309]^c[318]^c[319]^c[331]^c[341]^c[344]^c[332]^c[337]^c[347]^c[361]^c[371]^c[359]^c[369]^c[373]^c[360]^c[361]^c[389]^c[377]^c[387]^c[375]^c[383]^c[392]^c[393]^c[406]^c[416]^c[397]^c[407]^c[399]^c[408]^c[409]^c[423]^c[433]^c[419]^c[429]^c[422]^c[432]^c[457]^c[445]^c[461]^c[449]^c[443]^c[452]^c[453]^c[466]^c[476]^c[470]^c[480]^c[465]^c[474]^c[475]; //row: 32 d[i2+32*Zc]=c[3]^c[6]^c[0]^c[1]^c[3]^c[4]^c[20]^c[25]^c[29]^c[30]^c[22]^c[23]^c[52]^c[44]^c[53]^c[54]^c[83]^c[69]^c[87]^c[66]^c[91]^c[98]^c[99]^c[97]^c[98]^c[114]^c[131]^c[127]^c[128]^c[138]^c[149]^c[150]^c[133]^c[134]^c[173]^c[166]^c[167]^c[160]^c[161]^c[187]^c[187]^c[188]^c[195]^c[196]^c[216]^c[199]^c[200]^c[201]^c[223]^c[231]^c[232]^c[232]^c[233]^c[260]^c[250]^c[262]^c[263]^c[268]^c[270]^c[273]^c[274]^c[264]^c[306]^c[302]^c[303]^c[307]^c[286]^c[329]^c[324]^c[325]^c[311]^c[312]^c[315]^c[334]^c[347]^c[339]^c[340]^c[364]^c[362]^c[353]^c[354]^c[392]^c[389]^c[390]^c[385]^c[386]^c[409]^c[399]^c[400]^c[401]^c[402]^c[426]^c[422]^c[424]^c[425]^c[460]^c[441]^c[442]^c[445]^c[446]^c[469]^c[473]^c[467]^c[468]; //row: 33 d[i2+33*Zc]=c[33]^c[61]^c[250]^c[474]; //row: 34 d[i2+34*Zc]=c[15]^c[165]^c[331]^c[383]; //row: 35 d[i2+35*Zc]=c[11]^c[14]^c[9]^c[12]^c[33]^c[38]^c[31]^c[33]^c[60]^c[52]^c[62]^c[69]^c[77]^c[74]^c[99]^c[107]^c[106]^c[122]^c[117]^c[114]^c[146]^c[136]^c[142]^c[143]^c[159]^c[175]^c[169]^c[195]^c[196]^c[182]^c[202]^c[207]^c[209]^c[231]^c[240]^c[241]^c[246]^c[258]^c[249]^c[276]^c[278]^c[282]^c[282]^c[292]^c[289]^c[294]^c[315]^c[311]^c[320]^c[342]^c[333]^c[348]^c[372]^c[370]^c[362]^c[378]^c[376]^c[394]^c[417]^c[408]^c[410]^c[434]^c[430]^c[433]^c[446]^c[450]^c[454]^c[477]^c[481]^c[476]; //row: 36 d[i2+36*Zc]=c[2]^c[322]^c[342]^c[407]; //row: 37 d[i2+37*Zc]=c[4]^c[5]^c[8]^c[3]^c[6]^c[26]^c[27]^c[32]^c[25]^c[32]^c[53]^c[54]^c[46]^c[56]^c[84]^c[85]^c[71]^c[68]^c[93]^c[101]^c[100]^c[115]^c[116]^c[111]^c[130]^c[139]^c[140]^c[152]^c[136]^c[175]^c[169]^c[163]^c[189]^c[190]^c[176]^c[217]^c[218]^c[201]^c[203]^c[224]^c[225]^c[234]^c[235]^c[261]^c[262]^c[252]^c[243]^c[269]^c[270]^c[272]^c[276]^c[307]^c[286]^c[305]^c[288]^c[301]^c[309]^c[327]^c[314]^c[335]^c[336]^c[349]^c[342]^c[365]^c[366]^c[364]^c[356]^c[394]^c[392]^c[388]^c[410]^c[411]^c[402]^c[404]^c[427]^c[428]^c[424]^c[427]^c[461]^c[440]^c[444]^c[448]^c[470]^c[471]^c[475]^c[470]; //row: 38 d[i2+38*Zc]=c[9]^c[217]^c[230]^c[267]; //row: 39 d[i2+39*Zc]=c[37]^c[87]^c[168]^c[425]; //row: 40 d[i2+40*Zc]=c[17]^c[192]^c[376]; //row: 41 d[i2+41*Zc]=c[34]^c[76]^c[200]^c[403]; //row: 42 d[i2+42*Zc]=c[3]^c[6]^c[0]^c[1]^c[3]^c[4]^c[1]^c[25]^c[29]^c[30]^c[22]^c[23]^c[52]^c[44]^c[53]^c[54]^c[83]^c[69]^c[87]^c[66]^c[91]^c[98]^c[99]^c[97]^c[98]^c[104]^c[114]^c[131]^c[127]^c[128]^c[138]^c[149]^c[150]^c[133]^c[134]^c[173]^c[166]^c[167]^c[160]^c[161]^c[187]^c[187]^c[188]^c[195]^c[196]^c[216]^c[199]^c[200]^c[201]^c[223]^c[231]^c[232]^c[232]^c[233]^c[260]^c[250]^c[262]^c[263]^c[268]^c[270]^c[273]^c[274]^c[306]^c[302]^c[303]^c[307]^c[286]^c[329]^c[324]^c[325]^c[311]^c[312]^c[334]^c[347]^c[339]^c[340]^c[364]^c[362]^c[353]^c[354]^c[392]^c[389]^c[390]^c[385]^c[386]^c[409]^c[399]^c[400]^c[401]^c[402]^c[426]^c[422]^c[424]^c[425]^c[460]^c[441]^c[442]^c[445]^c[446]^c[469]^c[473]^c[467]^c[468]; //row: 43 d[i2+43*Zc]=c[21]^c[2]^c[19]^c[21]^c[0]^c[43]^c[26]^c[40]^c[41]^c[33]^c[48]^c[62]^c[50]^c[79]^c[87]^c[83]^c[84]^c[109]^c[95]^c[93]^c[94]^c[110]^c[127]^c[124]^c[134]^c[146]^c[151]^c[152]^c[169]^c[163]^c[156]^c[157]^c[183]^c[184]^c[191]^c[192]^c[212]^c[217]^c[219]^c[241]^c[228]^c[228]^c[229]^c[256]^c[246]^c[258]^c[259]^c[264]^c[266]^c[269]^c[270]^c[302]^c[299]^c[303]^c[304]^c[325]^c[321]^c[329]^c[308]^c[330]^c[343]^c[336]^c[360]^c[358]^c[371]^c[372]^c[354]^c[388]^c[386]^c[381]^c[382]^c[405]^c[396]^c[397]^c[398]^c[404]^c[422]^c[418]^c[421]^c[456]^c[460]^c[441]^c[442]^c[465]^c[469]^c[463]^c[464]; //row: 44 d[i2+44*Zc]=c[15]^c[18]^c[13]^c[16]^c[12]^c[37]^c[42]^c[35]^c[64]^c[56]^c[44]^c[73]^c[81]^c[78]^c[103]^c[89]^c[88]^c[126]^c[121]^c[118]^c[150]^c[140]^c[146]^c[163]^c[157]^c[173]^c[155]^c[177]^c[178]^c[186]^c[206]^c[211]^c[213]^c[204]^c[235]^c[222]^c[223]^c[250]^c[262]^c[253]^c[280]^c[282]^c[264]^c[296]^c[293]^c[298]^c[319]^c[315]^c[324]^c[346]^c[337]^c[330]^c[354]^c[352]^c[366]^c[382]^c[380]^c[376]^c[399]^c[412]^c[414]^c[438]^c[434]^c[437]^c[450]^c[454]^c[458]^c[481]^c[463]^c[480]; //row: 45 d[i2+45*Zc]=c[37]^c[132]^c[234]; } break; case 24: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[18]^c[3]^c[12]^c[11]^c[42]^c[33]^c[38]^c[49]^c[51]^c[63]^c[80]^c[72]^c[95]^c[119]^c[115]^c[106]^c[132]^c[143]^c[135]^c[167]^c[160]^c[150]^c[186]^c[170]^c[176]^c[210]^c[207]^c[199]^c[220]^c[225]^c[230]^c[263]^c[248]^c[251]^c[276]^c[270]^c[280]^c[304]^c[293]^c[302]^c[332]^c[319]^c[316]^c[336]^c[351]^c[355]^c[382]^c[362]^c[364]^c[393]^c[401]^c[399]^c[425]^c[418]^c[419]^c[433]^c[455]^c[438]^c[467]^c[474]^c[468]^c[497]^c[492]^c[494]^c[513]^c[519]^c[524]; //row: 1 d[i2+1*Zc]=c[18]^c[19]^c[4]^c[13]^c[12]^c[42]^c[43]^c[34]^c[39]^c[49]^c[50]^c[52]^c[64]^c[80]^c[81]^c[73]^c[72]^c[96]^c[116]^c[107]^c[132]^c[133]^c[120]^c[136]^c[167]^c[144]^c[161]^c[151]^c[187]^c[171]^c[177]^c[211]^c[208]^c[200]^c[220]^c[221]^c[226]^c[231]^c[263]^c[240]^c[249]^c[252]^c[276]^c[277]^c[271]^c[281]^c[304]^c[305]^c[294]^c[303]^c[332]^c[333]^c[320]^c[317]^c[337]^c[352]^c[356]^c[382]^c[383]^c[363]^c[365]^c[393]^c[394]^c[402]^c[400]^c[426]^c[419]^c[420]^c[433]^c[434]^c[432]^c[439]^c[467]^c[468]^c[475]^c[469]^c[497]^c[498]^c[493]^c[495]^c[513]^c[514]^c[520]^c[525]; //row: 2 d[i2+2*Zc]=c[19]^c[4]^c[12]^c[13]^c[11]^c[12]^c[43]^c[33]^c[34]^c[38]^c[39]^c[50]^c[52]^c[63]^c[64]^c[81]^c[73]^c[95]^c[72]^c[96]^c[115]^c[116]^c[106]^c[107]^c[133]^c[120]^c[135]^c[136]^c[144]^c[160]^c[161]^c[150]^c[151]^c[187]^c[170]^c[171]^c[176]^c[177]^c[211]^c[207]^c[208]^c[199]^c[200]^c[221]^c[226]^c[230]^c[231]^c[240]^c[248]^c[249]^c[251]^c[252]^c[277]^c[271]^c[280]^c[281]^c[305]^c[294]^c[302]^c[303]^c[333]^c[319]^c[320]^c[316]^c[317]^c[337]^c[351]^c[352]^c[355]^c[356]^c[383]^c[363]^c[364]^c[365]^c[394]^c[402]^c[399]^c[400]^c[426]^c[418]^c[419]^c[419]^c[420]^c[434]^c[455]^c[432]^c[438]^c[439]^c[468]^c[475]^c[468]^c[469]^c[498]^c[492]^c[493]^c[494]^c[495]^c[514]^c[520]^c[524]^c[525]; //row: 3 d[i2+3*Zc]=c[19]^c[4]^c[13]^c[11]^c[12]^c[43]^c[34]^c[38]^c[39]^c[50]^c[52]^c[64]^c[81]^c[73]^c[95]^c[72]^c[96]^c[116]^c[106]^c[107]^c[133]^c[120]^c[136]^c[144]^c[161]^c[150]^c[151]^c[187]^c[171]^c[176]^c[177]^c[211]^c[208]^c[199]^c[200]^c[221]^c[226]^c[231]^c[240]^c[249]^c[251]^c[252]^c[277]^c[271]^c[280]^c[281]^c[305]^c[294]^c[302]^c[303]^c[333]^c[320]^c[316]^c[317]^c[337]^c[352]^c[355]^c[356]^c[383]^c[363]^c[365]^c[394]^c[402]^c[399]^c[400]^c[426]^c[419]^c[419]^c[420]^c[434]^c[432]^c[438]^c[439]^c[468]^c[475]^c[469]^c[498]^c[493]^c[494]^c[495]^c[514]^c[520]^c[524]^c[525]; //row: 4 d[i2+4*Zc]=c[19]^c[36]; //row: 5 d[i2+5*Zc]=c[7]^c[16]^c[1]^c[0]^c[2]^c[31]^c[46]^c[27]^c[37]^c[62]^c[64]^c[52]^c[93]^c[85]^c[84]^c[90]^c[108]^c[104]^c[119]^c[121]^c[132]^c[124]^c[156]^c[149]^c[163]^c[175]^c[183]^c[189]^c[199]^c[196]^c[212]^c[233]^c[238]^c[219]^c[252]^c[261]^c[240]^c[265]^c[283]^c[269]^c[293]^c[306]^c[291]^c[309]^c[321]^c[332]^c[329]^c[349]^c[340]^c[344]^c[371]^c[375]^c[377]^c[406]^c[390]^c[388]^c[384]^c[414]^c[431]^c[408]^c[446]^c[444]^c[451]^c[456]^c[463]^c[457]^c[486]^c[481]^c[483]^c[526]^c[508]^c[513]^c[506]; //row: 6 d[i2+6*Zc]=c[13]^c[160]^c[240]^c[278]^c[331]^c[420]^c[449]^c[488]; //row: 7 d[i2+7*Zc]=c[8]^c[37]^c[99]^c[188]^c[193]^c[353]; //row: 8 d[i2+8*Zc]=c[13]^c[21]^c[22]^c[6]^c[7]^c[14]^c[15]^c[6]^c[13]^c[14]^c[18]^c[37]^c[45]^c[28]^c[35]^c[36]^c[33]^c[40]^c[41]^c[34]^c[68]^c[52]^c[70]^c[54]^c[58]^c[65]^c[66]^c[75]^c[83]^c[91]^c[75]^c[90]^c[73]^c[74]^c[92]^c[114]^c[98]^c[110]^c[117]^c[118]^c[101]^c[108]^c[109]^c[127]^c[135]^c[138]^c[122]^c[130]^c[137]^c[138]^c[162]^c[146]^c[155]^c[162]^c[163]^c[145]^c[152]^c[153]^c[181]^c[189]^c[189]^c[172]^c[173]^c[171]^c[178]^c[179]^c[205]^c[213]^c[202]^c[209]^c[210]^c[194]^c[201]^c[202]^c[239]^c[223]^c[220]^c[228]^c[225]^c[232]^c[233]^c[258]^c[242]^c[243]^c[250]^c[251]^c[246]^c[253]^c[254]^c[271]^c[279]^c[265]^c[273]^c[275]^c[282]^c[283]^c[299]^c[307]^c[288]^c[296]^c[297]^c[304]^c[305]^c[305]^c[327]^c[335]^c[314]^c[321]^c[322]^c[335]^c[318]^c[319]^c[355]^c[339]^c[346]^c[353]^c[354]^c[350]^c[357]^c[358]^c[377]^c[361]^c[381]^c[365]^c[383]^c[366]^c[367]^c[388]^c[396]^c[396]^c[404]^c[394]^c[401]^c[402]^c[398]^c[420]^c[428]^c[413]^c[420]^c[421]^c[414]^c[421]^c[422]^c[452]^c[436]^c[450]^c[433]^c[434]^c[433]^c[440]^c[441]^c[462]^c[470]^c[469]^c[477]^c[463]^c[470]^c[471]^c[463]^c[492]^c[500]^c[487]^c[494]^c[495]^c[489]^c[496]^c[497]^c[508]^c[516]^c[514]^c[522]^c[519]^c[526]^c[527]^c[511]; //row: 9 d[i2+9*Zc]=c[5]^c[39]^c[248]^c[276]^c[320]^c[422]^c[446]^c[489]; //row: 10 d[i2+10*Zc]=c[28]^c[50]^c[105]^c[182]^c[214]^c[353]; //row: 11 d[i2+11*Zc]=c[16]^c[13]^c[14]^c[1]^c[23]^c[10]^c[8]^c[9]^c[7]^c[23]^c[40]^c[37]^c[38]^c[31]^c[29]^c[36]^c[34]^c[29]^c[71]^c[68]^c[69]^c[49]^c[71]^c[61]^c[59]^c[78]^c[75]^c[76]^c[94]^c[92]^c[93]^c[91]^c[117]^c[115]^c[113]^c[111]^c[104]^c[102]^c[130]^c[127]^c[128]^c[141]^c[139]^c[133]^c[131]^c[165]^c[162]^c[163]^c[158]^c[156]^c[148]^c[146]^c[184]^c[182]^c[168]^c[190]^c[174]^c[172]^c[208]^c[206]^c[205]^c[203]^c[197]^c[195]^c[218]^c[239]^c[216]^c[223]^c[221]^c[228]^c[226]^c[261]^c[258]^c[259]^c[246]^c[244]^c[249]^c[247]^c[274]^c[271]^c[272]^c[268]^c[266]^c[278]^c[276]^c[302]^c[299]^c[300]^c[291]^c[289]^c[300]^c[298]^c[295]^c[330]^c[327]^c[328]^c[317]^c[315]^c[314]^c[312]^c[358]^c[356]^c[349]^c[347]^c[353]^c[351]^c[380]^c[377]^c[378]^c[360]^c[382]^c[362]^c[360]^c[391]^c[388]^c[389]^c[399]^c[397]^c[397]^c[395]^c[406]^c[423]^c[421]^c[416]^c[414]^c[417]^c[415]^c[455]^c[452]^c[453]^c[453]^c[451]^c[436]^c[434]^c[465]^c[462]^c[463]^c[472]^c[470]^c[466]^c[464]^c[495]^c[492]^c[493]^c[490]^c[488]^c[492]^c[490]^c[511]^c[508]^c[509]^c[517]^c[515]^c[522]^c[520]^c[523]; //row: 12 d[i2+12*Zc]=c[4]^c[41]^c[245]^c[279]^c[313]^c[433]; //row: 13 d[i2+13*Zc]=c[4]^c[5]^c[14]^c[23]^c[22]^c[0]^c[28]^c[29]^c[44]^c[25]^c[59]^c[60]^c[62]^c[50]^c[90]^c[91]^c[83]^c[82]^c[80]^c[106]^c[102]^c[117]^c[142]^c[143]^c[130]^c[122]^c[153]^c[154]^c[147]^c[161]^c[173]^c[181]^c[187]^c[169]^c[197]^c[194]^c[210]^c[230]^c[231]^c[236]^c[217]^c[249]^c[250]^c[259]^c[262]^c[286]^c[287]^c[281]^c[267]^c[290]^c[291]^c[304]^c[289]^c[318]^c[319]^c[330]^c[327]^c[347]^c[338]^c[342]^c[368]^c[369]^c[373]^c[375]^c[403]^c[404]^c[388]^c[386]^c[412]^c[429]^c[430]^c[443]^c[444]^c[442]^c[449]^c[477]^c[478]^c[461]^c[479]^c[483]^c[484]^c[503]^c[481]^c[498]^c[523]^c[524]^c[506]^c[511]; //row: 14 d[i2+14*Zc]=c[21]^c[295]^c[376]^c[400]^c[418]^c[515]; //row: 15 d[i2+15*Zc]=c[0]^c[9]^c[18]^c[16]^c[17]^c[0]^c[24]^c[39]^c[43]^c[44]^c[25]^c[55]^c[57]^c[69]^c[86]^c[78]^c[76]^c[77]^c[101]^c[97]^c[111]^c[112]^c[138]^c[125]^c[141]^c[149]^c[166]^c[155]^c[156]^c[168]^c[176]^c[181]^c[182]^c[192]^c[213]^c[204]^c[205]^c[226]^c[231]^c[236]^c[245]^c[254]^c[256]^c[257]^c[257]^c[282]^c[276]^c[285]^c[286]^c[310]^c[299]^c[307]^c[308]^c[314]^c[325]^c[321]^c[322]^c[317]^c[342]^c[357]^c[336]^c[337]^c[364]^c[368]^c[370]^c[399]^c[407]^c[404]^c[405]^c[431]^c[424]^c[424]^c[425]^c[439]^c[437]^c[443]^c[444]^c[438]^c[473]^c[456]^c[474]^c[503]^c[498]^c[499]^c[500]^c[519]^c[525]^c[505]^c[506]; //row: 16 d[i2+16*Zc]=c[3]^c[12]^c[21]^c[20]^c[27]^c[42]^c[47]^c[36]^c[58]^c[60]^c[48]^c[89]^c[81]^c[80]^c[73]^c[104]^c[100]^c[115]^c[141]^c[128]^c[120]^c[152]^c[145]^c[159]^c[171]^c[179]^c[185]^c[195]^c[192]^c[208]^c[229]^c[234]^c[239]^c[248]^c[257]^c[260]^c[285]^c[279]^c[265]^c[272]^c[289]^c[302]^c[311]^c[317]^c[328]^c[325]^c[345]^c[336]^c[340]^c[367]^c[371]^c[373]^c[402]^c[386]^c[384]^c[410]^c[427]^c[428]^c[442]^c[440]^c[447]^c[476]^c[459]^c[477]^c[482]^c[501]^c[503]^c[480]^c[522]^c[504]^c[509]; //row: 17 d[i2+17*Zc]=c[19]^c[350]^c[392]^c[429]^c[518]; //row: 18 d[i2+18*Zc]=c[33]^c[306]^c[327]^c[443]^c[459]; //row: 19 d[i2+19*Zc]=c[0]^c[44]^c[175]^c[193]^c[244]; //row: 20 d[i2+20*Zc]=c[5]^c[14]^c[23]^c[22]^c[18]^c[29]^c[44]^c[25]^c[60]^c[62]^c[50]^c[91]^c[83]^c[82]^c[85]^c[106]^c[102]^c[117]^c[143]^c[130]^c[122]^c[154]^c[147]^c[161]^c[173]^c[181]^c[187]^c[197]^c[194]^c[210]^c[231]^c[236]^c[217]^c[239]^c[250]^c[259]^c[262]^c[287]^c[281]^c[267]^c[268]^c[291]^c[304]^c[289]^c[319]^c[330]^c[327]^c[347]^c[338]^c[342]^c[369]^c[373]^c[375]^c[404]^c[388]^c[386]^c[412]^c[429]^c[430]^c[444]^c[442]^c[449]^c[478]^c[461]^c[479]^c[484]^c[503]^c[481]^c[524]^c[506]^c[511]; //row: 21 d[i2+21*Zc]=c[36]^c[125]^c[399]^c[500]^c[504]; //row: 22 d[i2+22*Zc]=c[5]^c[298]^c[328]^c[429]; //row: 23 d[i2+23*Zc]=c[47]^c[64]^c[252]^c[434]; //row: 24 d[i2+24*Zc]=c[12]^c[21]^c[6]^c[5]^c[9]^c[36]^c[27]^c[32]^c[67]^c[69]^c[57]^c[74]^c[90]^c[89]^c[85]^c[113]^c[109]^c[100]^c[114]^c[126]^c[137]^c[129]^c[161]^c[154]^c[144]^c[180]^c[188]^c[170]^c[204]^c[201]^c[193]^c[238]^c[219]^c[224]^c[257]^c[242]^c[245]^c[270]^c[264]^c[274]^c[266]^c[298]^c[311]^c[296]^c[326]^c[313]^c[334]^c[354]^c[345]^c[349]^c[376]^c[380]^c[382]^c[387]^c[395]^c[393]^c[419]^c[412]^c[413]^c[451]^c[449]^c[432]^c[461]^c[468]^c[462]^c[491]^c[486]^c[488]^c[507]^c[513]^c[518]; //row: 25 d[i2+25*Zc]=c[47]^c[160]^c[190]^c[359]; //row: 26 d[i2+26*Zc]=c[22]^c[56]^c[99]^c[375]; //row: 27 d[i2+27*Zc]=c[25]^c[145]^c[196]; //row: 28 d[i2+28*Zc]=c[5]^c[114]^c[459]^c[513]; //row: 29 d[i2+29*Zc]=c[1]^c[10]^c[19]^c[17]^c[18]^c[25]^c[40]^c[44]^c[45]^c[35]^c[56]^c[58]^c[70]^c[87]^c[79]^c[77]^c[78]^c[102]^c[98]^c[112]^c[113]^c[139]^c[126]^c[142]^c[150]^c[167]^c[156]^c[157]^c[169]^c[177]^c[182]^c[183]^c[193]^c[214]^c[205]^c[206]^c[227]^c[232]^c[237]^c[246]^c[255]^c[257]^c[258]^c[283]^c[277]^c[286]^c[287]^c[311]^c[300]^c[308]^c[309]^c[315]^c[326]^c[322]^c[323]^c[343]^c[358]^c[337]^c[338]^c[340]^c[365]^c[369]^c[371]^c[400]^c[384]^c[405]^c[406]^c[408]^c[425]^c[425]^c[426]^c[440]^c[438]^c[444]^c[445]^c[434]^c[474]^c[457]^c[475]^c[480]^c[499]^c[500]^c[501]^c[520]^c[526]^c[506]^c[507]; //row: 30 d[i2+30*Zc]=c[13]^c[22]^c[6]^c[7]^c[5]^c[6]^c[14]^c[37]^c[27]^c[28]^c[32]^c[33]^c[68]^c[70]^c[57]^c[58]^c[75]^c[91]^c[89]^c[90]^c[114]^c[109]^c[110]^c[100]^c[101]^c[127]^c[138]^c[129]^c[130]^c[162]^c[154]^c[155]^c[144]^c[145]^c[181]^c[188]^c[189]^c[170]^c[171]^c[205]^c[201]^c[202]^c[193]^c[194]^c[239]^c[220]^c[224]^c[225]^c[258]^c[242]^c[243]^c[245]^c[246]^c[252]^c[271]^c[265]^c[274]^c[275]^c[299]^c[288]^c[296]^c[297]^c[327]^c[313]^c[314]^c[334]^c[335]^c[331]^c[355]^c[345]^c[346]^c[349]^c[350]^c[377]^c[381]^c[382]^c[383]^c[388]^c[396]^c[393]^c[394]^c[420]^c[412]^c[413]^c[413]^c[414]^c[452]^c[449]^c[450]^c[432]^c[433]^c[462]^c[469]^c[462]^c[463]^c[492]^c[486]^c[487]^c[488]^c[489]^c[508]^c[514]^c[518]^c[519]; //row: 31 d[i2+31*Zc]=c[12]^c[11]^c[21]^c[20]^c[6]^c[5]^c[5]^c[3]^c[4]^c[36]^c[35]^c[27]^c[26]^c[32]^c[30]^c[31]^c[27]^c[67]^c[66]^c[69]^c[68]^c[57]^c[56]^c[74]^c[73]^c[90]^c[89]^c[89]^c[87]^c[88]^c[113]^c[112]^c[109]^c[108]^c[100]^c[98]^c[99]^c[126]^c[125]^c[137]^c[136]^c[129]^c[128]^c[161]^c[160]^c[154]^c[153]^c[144]^c[166]^c[167]^c[180]^c[179]^c[188]^c[187]^c[170]^c[168]^c[169]^c[190]^c[204]^c[203]^c[201]^c[200]^c[193]^c[215]^c[192]^c[238]^c[237]^c[219]^c[218]^c[224]^c[223]^c[257]^c[256]^c[242]^c[241]^c[245]^c[243]^c[244]^c[270]^c[269]^c[264]^c[287]^c[274]^c[272]^c[273]^c[298]^c[297]^c[311]^c[310]^c[296]^c[294]^c[295]^c[326]^c[325]^c[313]^c[312]^c[334]^c[332]^c[333]^c[354]^c[353]^c[345]^c[344]^c[349]^c[347]^c[348]^c[376]^c[375]^c[380]^c[379]^c[382]^c[381]^c[387]^c[386]^c[395]^c[394]^c[393]^c[391]^c[392]^c[419]^c[418]^c[412]^c[411]^c[413]^c[411]^c[412]^c[451]^c[450]^c[449]^c[448]^c[432]^c[454]^c[455]^c[461]^c[460]^c[468]^c[467]^c[462]^c[461]^c[491]^c[490]^c[486]^c[485]^c[488]^c[486]^c[487]^c[507]^c[506]^c[513]^c[512]^c[518]^c[516]^c[517]; //row: 32 d[i2+32*Zc]=c[18]^c[3]^c[11]^c[12]^c[10]^c[11]^c[5]^c[42]^c[32]^c[33]^c[37]^c[38]^c[49]^c[51]^c[62]^c[63]^c[80]^c[72]^c[94]^c[95]^c[119]^c[114]^c[115]^c[105]^c[106]^c[132]^c[143]^c[134]^c[135]^c[167]^c[159]^c[160]^c[149]^c[150]^c[186]^c[169]^c[170]^c[175]^c[176]^c[210]^c[206]^c[207]^c[198]^c[199]^c[220]^c[225]^c[229]^c[230]^c[263]^c[247]^c[248]^c[250]^c[251]^c[276]^c[270]^c[279]^c[280]^c[304]^c[293]^c[301]^c[302]^c[296]^c[332]^c[318]^c[319]^c[315]^c[316]^c[336]^c[350]^c[351]^c[354]^c[355]^c[342]^c[382]^c[362]^c[363]^c[364]^c[393]^c[401]^c[398]^c[399]^c[425]^c[417]^c[418]^c[418]^c[419]^c[433]^c[454]^c[455]^c[437]^c[438]^c[467]^c[474]^c[467]^c[468]^c[497]^c[491]^c[492]^c[493]^c[494]^c[513]^c[519]^c[523]^c[524]; //row: 33 d[i2+33*Zc]=c[34]^c[55]^c[264]^c[512]; //row: 34 d[i2+34*Zc]=c[13]^c[171]^c[369]^c[431]; //row: 35 d[i2+35*Zc]=c[20]^c[5]^c[14]^c[13]^c[44]^c[35]^c[40]^c[31]^c[51]^c[53]^c[65]^c[82]^c[74]^c[73]^c[97]^c[117]^c[108]^c[134]^c[121]^c[137]^c[145]^c[162]^c[152]^c[166]^c[188]^c[172]^c[178]^c[212]^c[209]^c[201]^c[222]^c[227]^c[232]^c[241]^c[250]^c[253]^c[278]^c[272]^c[282]^c[306]^c[295]^c[304]^c[289]^c[334]^c[321]^c[318]^c[338]^c[353]^c[357]^c[360]^c[364]^c[366]^c[395]^c[403]^c[401]^c[427]^c[420]^c[421]^c[435]^c[433]^c[440]^c[469]^c[476]^c[470]^c[499]^c[494]^c[496]^c[515]^c[521]^c[526]; //row: 36 d[i2+36*Zc]=c[17]^c[336]^c[368]^c[452]; //row: 37 d[i2+37*Zc]=c[13]^c[14]^c[23]^c[8]^c[7]^c[37]^c[38]^c[29]^c[34]^c[28]^c[68]^c[69]^c[71]^c[59]^c[75]^c[76]^c[92]^c[91]^c[115]^c[111]^c[102]^c[127]^c[128]^c[139]^c[131]^c[162]^c[163]^c[156]^c[146]^c[182]^c[190]^c[172]^c[206]^c[203]^c[195]^c[239]^c[216]^c[221]^c[226]^c[258]^c[259]^c[244]^c[247]^c[271]^c[272]^c[266]^c[276]^c[299]^c[300]^c[289]^c[298]^c[327]^c[328]^c[315]^c[312]^c[321]^c[356]^c[347]^c[351]^c[377]^c[378]^c[382]^c[360]^c[388]^c[389]^c[397]^c[395]^c[421]^c[414]^c[415]^c[452]^c[453]^c[451]^c[434]^c[462]^c[463]^c[470]^c[464]^c[492]^c[493]^c[488]^c[490]^c[508]^c[509]^c[515]^c[520]; //row: 38 d[i2+38*Zc]=c[16]^c[224]^c[240]^c[309]; //row: 39 d[i2+39*Zc]=c[41]^c[92]^c[177]^c[464]; //row: 40 d[i2+40*Zc]=c[6]^c[204]^c[431]; //row: 41 d[i2+41*Zc]=c[27]^c[73]^c[234]^c[455]; //row: 42 d[i2+42*Zc]=c[21]^c[6]^c[14]^c[15]^c[13]^c[14]^c[16]^c[45]^c[35]^c[36]^c[40]^c[41]^c[52]^c[54]^c[65]^c[66]^c[83]^c[75]^c[73]^c[74]^c[98]^c[117]^c[118]^c[108]^c[109]^c[109]^c[135]^c[122]^c[137]^c[138]^c[146]^c[162]^c[163]^c[152]^c[153]^c[189]^c[172]^c[173]^c[178]^c[179]^c[213]^c[209]^c[210]^c[201]^c[202]^c[223]^c[228]^c[232]^c[233]^c[242]^c[250]^c[251]^c[253]^c[254]^c[279]^c[273]^c[282]^c[283]^c[307]^c[296]^c[304]^c[305]^c[335]^c[321]^c[322]^c[318]^c[319]^c[339]^c[353]^c[354]^c[357]^c[358]^c[361]^c[365]^c[366]^c[367]^c[396]^c[404]^c[401]^c[402]^c[428]^c[420]^c[421]^c[421]^c[422]^c[436]^c[433]^c[434]^c[440]^c[441]^c[470]^c[477]^c[470]^c[471]^c[500]^c[494]^c[495]^c[496]^c[497]^c[516]^c[522]^c[526]^c[527]; //row: 43 d[i2+43*Zc]=c[19]^c[4]^c[13]^c[11]^c[12]^c[43]^c[34]^c[38]^c[39]^c[40]^c[50]^c[52]^c[64]^c[81]^c[73]^c[95]^c[72]^c[96]^c[116]^c[106]^c[107]^c[133]^c[120]^c[136]^c[144]^c[161]^c[150]^c[151]^c[187]^c[171]^c[176]^c[177]^c[211]^c[208]^c[199]^c[200]^c[221]^c[226]^c[231]^c[240]^c[249]^c[251]^c[252]^c[277]^c[271]^c[280]^c[281]^c[305]^c[294]^c[302]^c[303]^c[333]^c[320]^c[316]^c[317]^c[337]^c[352]^c[355]^c[356]^c[383]^c[363]^c[365]^c[394]^c[402]^c[399]^c[400]^c[395]^c[426]^c[419]^c[419]^c[420]^c[434]^c[432]^c[438]^c[439]^c[449]^c[468]^c[475]^c[469]^c[498]^c[493]^c[494]^c[495]^c[514]^c[520]^c[524]^c[525]; //row: 44 d[i2+44*Zc]=c[4]^c[13]^c[22]^c[21]^c[7]^c[28]^c[43]^c[24]^c[59]^c[61]^c[49]^c[90]^c[82]^c[81]^c[105]^c[101]^c[116]^c[142]^c[129]^c[121]^c[153]^c[146]^c[160]^c[172]^c[180]^c[186]^c[173]^c[196]^c[193]^c[209]^c[230]^c[235]^c[216]^c[234]^c[249]^c[258]^c[261]^c[286]^c[280]^c[266]^c[290]^c[303]^c[288]^c[318]^c[329]^c[326]^c[346]^c[337]^c[341]^c[368]^c[372]^c[374]^c[403]^c[387]^c[385]^c[411]^c[428]^c[429]^c[443]^c[441]^c[448]^c[477]^c[460]^c[478]^c[483]^c[502]^c[480]^c[523]^c[505]^c[510]; //row: 45 d[i2+45*Zc]=c[38]^c[148]^c[254]; } break; case 26: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[24]^c[20]^c[0]^c[2]^c[50]^c[35]^c[30]^c[76]^c[61]^c[71]^c[102]^c[96]^c[83]^c[128]^c[126]^c[111]^c[154]^c[138]^c[132]^c[180]^c[173]^c[177]^c[206]^c[202]^c[201]^c[232]^c[218]^c[212]^c[258]^c[234]^c[250]^c[284]^c[271]^c[279]^c[310]^c[300]^c[289]^c[336]^c[318]^c[334]^c[362]^c[361]^c[345]^c[388]^c[364]^c[367]^c[414]^c[394]^c[395]^c[440]^c[418]^c[428]^c[466]^c[461]^c[457]^c[492]^c[489]^c[482]^c[518]^c[504]^c[508]^c[544]^c[532]^c[520]^c[570]^c[549]^c[556]; //row: 1 d[i2+1*Zc]=c[25]^c[24]^c[20]^c[0]^c[2]^c[51]^c[50]^c[35]^c[30]^c[77]^c[76]^c[61]^c[71]^c[103]^c[102]^c[96]^c[83]^c[128]^c[126]^c[111]^c[155]^c[154]^c[138]^c[132]^c[181]^c[180]^c[173]^c[177]^c[206]^c[202]^c[201]^c[232]^c[218]^c[212]^c[259]^c[258]^c[234]^c[250]^c[285]^c[284]^c[271]^c[279]^c[311]^c[310]^c[300]^c[289]^c[337]^c[336]^c[318]^c[334]^c[363]^c[362]^c[361]^c[345]^c[388]^c[364]^c[367]^c[415]^c[414]^c[394]^c[395]^c[441]^c[440]^c[418]^c[428]^c[466]^c[461]^c[457]^c[493]^c[492]^c[489]^c[482]^c[519]^c[518]^c[504]^c[508]^c[545]^c[544]^c[532]^c[520]^c[571]^c[570]^c[549]^c[556]; //row: 2 d[i2+2*Zc]=c[24]^c[20]^c[1]^c[0]^c[3]^c[2]^c[50]^c[36]^c[35]^c[31]^c[30]^c[76]^c[61]^c[72]^c[71]^c[102]^c[96]^c[84]^c[83]^c[128]^c[127]^c[126]^c[112]^c[111]^c[154]^c[138]^c[133]^c[132]^c[180]^c[174]^c[173]^c[178]^c[177]^c[206]^c[203]^c[202]^c[202]^c[201]^c[232]^c[219]^c[218]^c[213]^c[212]^c[258]^c[234]^c[251]^c[250]^c[284]^c[272]^c[271]^c[280]^c[279]^c[310]^c[300]^c[290]^c[289]^c[336]^c[318]^c[335]^c[334]^c[362]^c[362]^c[361]^c[346]^c[345]^c[388]^c[365]^c[364]^c[368]^c[367]^c[414]^c[394]^c[396]^c[395]^c[440]^c[418]^c[429]^c[428]^c[466]^c[462]^c[461]^c[458]^c[457]^c[492]^c[490]^c[489]^c[483]^c[482]^c[518]^c[504]^c[509]^c[508]^c[544]^c[533]^c[532]^c[521]^c[520]^c[570]^c[549]^c[557]^c[556]; //row: 3 d[i2+3*Zc]=c[24]^c[20]^c[0]^c[3]^c[2]^c[50]^c[35]^c[31]^c[30]^c[76]^c[61]^c[71]^c[102]^c[96]^c[84]^c[83]^c[128]^c[126]^c[112]^c[111]^c[154]^c[138]^c[132]^c[180]^c[173]^c[178]^c[177]^c[206]^c[202]^c[202]^c[201]^c[232]^c[218]^c[213]^c[212]^c[258]^c[234]^c[250]^c[284]^c[271]^c[280]^c[279]^c[310]^c[300]^c[290]^c[289]^c[336]^c[318]^c[335]^c[334]^c[362]^c[361]^c[346]^c[345]^c[388]^c[364]^c[368]^c[367]^c[414]^c[394]^c[395]^c[440]^c[418]^c[429]^c[428]^c[466]^c[461]^c[458]^c[457]^c[492]^c[489]^c[483]^c[482]^c[518]^c[504]^c[508]^c[544]^c[532]^c[521]^c[520]^c[570]^c[549]^c[557]^c[556]; //row: 4 d[i2+4*Zc]=c[23]^c[47]; //row: 5 d[i2+5*Zc]=c[18]^c[14]^c[20]^c[22]^c[2]^c[44]^c[29]^c[50]^c[47]^c[70]^c[55]^c[65]^c[96]^c[90]^c[103]^c[101]^c[122]^c[120]^c[105]^c[148]^c[132]^c[152]^c[174]^c[167]^c[171]^c[200]^c[196]^c[195]^c[226]^c[212]^c[232]^c[252]^c[254]^c[244]^c[278]^c[265]^c[273]^c[304]^c[294]^c[309]^c[330]^c[312]^c[328]^c[324]^c[356]^c[355]^c[339]^c[382]^c[384]^c[387]^c[408]^c[414]^c[415]^c[434]^c[438]^c[422]^c[440]^c[460]^c[455]^c[451]^c[486]^c[483]^c[476]^c[512]^c[498]^c[502]^c[538]^c[526]^c[540]^c[564]^c[569]^c[550]^c[550]; //row: 6 d[i2+6*Zc]=c[5]^c[156]^c[266]^c[309]^c[359]^c[465]^c[479]^c[532]; //row: 7 d[i2+7*Zc]=c[14]^c[35]^c[111]^c[204]^c[210]^c[387]; //row: 8 d[i2+8*Zc]=c[7]^c[10]^c[3]^c[6]^c[9]^c[13]^c[12]^c[11]^c[15]^c[14]^c[15]^c[33]^c[36]^c[44]^c[48]^c[47]^c[39]^c[43]^c[42]^c[27]^c[59]^c[62]^c[70]^c[73]^c[54]^c[58]^c[57]^c[85]^c[88]^c[79]^c[82]^c[92]^c[96]^c[95]^c[78]^c[111]^c[114]^c[109]^c[113]^c[112]^c[120]^c[124]^c[123]^c[137]^c[140]^c[147]^c[150]^c[141]^c[145]^c[144]^c[163]^c[166]^c[156]^c[160]^c[159]^c[160]^c[164]^c[163]^c[189]^c[192]^c[185]^c[189]^c[188]^c[184]^c[188]^c[187]^c[215]^c[218]^c[227]^c[231]^c[230]^c[221]^c[225]^c[224]^c[241]^c[244]^c[243]^c[246]^c[259]^c[237]^c[236]^c[267]^c[270]^c[280]^c[284]^c[283]^c[262]^c[266]^c[265]^c[293]^c[296]^c[309]^c[286]^c[298]^c[302]^c[301]^c[319]^c[322]^c[327]^c[330]^c[317]^c[321]^c[320]^c[322]^c[345]^c[348]^c[344]^c[348]^c[347]^c[354]^c[358]^c[357]^c[371]^c[374]^c[373]^c[377]^c[376]^c[376]^c[380]^c[379]^c[397]^c[400]^c[403]^c[406]^c[404]^c[408]^c[407]^c[423]^c[426]^c[427]^c[430]^c[437]^c[441]^c[440]^c[433]^c[449]^c[452]^c[444]^c[448]^c[447]^c[466]^c[444]^c[443]^c[475]^c[478]^c[472]^c[476]^c[475]^c[491]^c[469]^c[468]^c[501]^c[504]^c[513]^c[516]^c[517]^c[495]^c[494]^c[514]^c[527]^c[530]^c[541]^c[545]^c[544]^c[529]^c[533]^c[532]^c[553]^c[556]^c[558]^c[561]^c[565]^c[569]^c[568]^c[568]; //row: 9 d[i2+9*Zc]=c[5]^c[35]^c[274]^c[286]^c[356]^c[445]^c[475]^c[536]; //row: 10 d[i2+10*Zc]=c[47]^c[76]^c[129]^c[197]^c[219]^c[381]; //row: 11 d[i2+11*Zc]=c[3]^c[19]^c[18]^c[25]^c[14]^c[5]^c[20]^c[7]^c[22]^c[1]^c[29]^c[45]^c[44]^c[40]^c[29]^c[35]^c[50]^c[37]^c[55]^c[71]^c[70]^c[66]^c[55]^c[76]^c[65]^c[81]^c[97]^c[96]^c[101]^c[90]^c[88]^c[103]^c[107]^c[122]^c[105]^c[120]^c[116]^c[105]^c[133]^c[149]^c[148]^c[143]^c[132]^c[137]^c[152]^c[159]^c[175]^c[174]^c[178]^c[167]^c[156]^c[171]^c[185]^c[200]^c[207]^c[196]^c[206]^c[195]^c[211]^c[226]^c[223]^c[212]^c[217]^c[232]^c[237]^c[253]^c[252]^c[239]^c[254]^c[255]^c[244]^c[263]^c[279]^c[278]^c[276]^c[265]^c[284]^c[273]^c[289]^c[305]^c[304]^c[305]^c[294]^c[294]^c[309]^c[315]^c[331]^c[330]^c[323]^c[312]^c[313]^c[328]^c[330]^c[341]^c[357]^c[356]^c[340]^c[355]^c[350]^c[339]^c[367]^c[382]^c[369]^c[384]^c[372]^c[387]^c[393]^c[409]^c[408]^c[399]^c[414]^c[400]^c[415]^c[419]^c[435]^c[434]^c[423]^c[438]^c[433]^c[422]^c[431]^c[445]^c[460]^c[466]^c[455]^c[462]^c[451]^c[471]^c[487]^c[486]^c[468]^c[483]^c[487]^c[476]^c[497]^c[513]^c[512]^c[509]^c[498]^c[513]^c[502]^c[523]^c[539]^c[538]^c[537]^c[526]^c[525]^c[540]^c[549]^c[565]^c[564]^c[554]^c[569]^c[561]^c[550]^c[571]; //row: 12 d[i2+12*Zc]=c[5]^c[45]^c[280]^c[308]^c[363]^c[492]; //row: 13 d[i2+13*Zc]=c[19]^c[18]^c[14]^c[20]^c[22]^c[25]^c[45]^c[44]^c[29]^c[50]^c[71]^c[70]^c[55]^c[65]^c[97]^c[96]^c[90]^c[103]^c[94]^c[122]^c[120]^c[105]^c[149]^c[148]^c[132]^c[152]^c[175]^c[174]^c[167]^c[171]^c[200]^c[196]^c[195]^c[182]^c[226]^c[212]^c[232]^c[253]^c[252]^c[254]^c[244]^c[279]^c[278]^c[265]^c[273]^c[305]^c[304]^c[294]^c[309]^c[331]^c[330]^c[312]^c[328]^c[357]^c[356]^c[355]^c[339]^c[382]^c[384]^c[387]^c[409]^c[408]^c[414]^c[415]^c[435]^c[434]^c[438]^c[422]^c[460]^c[455]^c[451]^c[487]^c[486]^c[483]^c[476]^c[513]^c[512]^c[498]^c[502]^c[539]^c[538]^c[526]^c[540]^c[535]^c[565]^c[564]^c[569]^c[550]; //row: 14 d[i2+14*Zc]=c[0]^c[331]^c[403]^c[441]^c[442]^c[547]; //row: 15 d[i2+15*Zc]=c[18]^c[14]^c[20]^c[23]^c[22]^c[16]^c[44]^c[29]^c[51]^c[50]^c[31]^c[70]^c[55]^c[65]^c[96]^c[90]^c[78]^c[103]^c[122]^c[120]^c[106]^c[105]^c[148]^c[132]^c[152]^c[174]^c[167]^c[172]^c[171]^c[200]^c[196]^c[196]^c[195]^c[226]^c[212]^c[233]^c[232]^c[252]^c[254]^c[244]^c[278]^c[265]^c[274]^c[273]^c[262]^c[304]^c[294]^c[310]^c[309]^c[330]^c[312]^c[329]^c[328]^c[356]^c[355]^c[340]^c[339]^c[363]^c[382]^c[384]^c[388]^c[387]^c[408]^c[414]^c[415]^c[434]^c[438]^c[423]^c[422]^c[460]^c[455]^c[452]^c[451]^c[486]^c[483]^c[477]^c[476]^c[468]^c[512]^c[498]^c[502]^c[538]^c[526]^c[541]^c[540]^c[564]^c[569]^c[551]^c[550]; //row: 16 d[i2+16*Zc]=c[24]^c[20]^c[0]^c[2]^c[50]^c[35]^c[30]^c[35]^c[76]^c[61]^c[71]^c[102]^c[96]^c[83]^c[93]^c[128]^c[126]^c[111]^c[154]^c[138]^c[132]^c[180]^c[173]^c[177]^c[206]^c[202]^c[201]^c[232]^c[218]^c[212]^c[258]^c[234]^c[250]^c[284]^c[271]^c[279]^c[310]^c[300]^c[289]^c[289]^c[336]^c[318]^c[334]^c[362]^c[361]^c[345]^c[388]^c[364]^c[367]^c[414]^c[394]^c[395]^c[440]^c[418]^c[428]^c[466]^c[461]^c[457]^c[492]^c[489]^c[482]^c[518]^c[504]^c[508]^c[544]^c[532]^c[520]^c[537]^c[570]^c[549]^c[556]; //row: 17 d[i2+17*Zc]=c[12]^c[365]^c[419]^c[444]^c[570]; //row: 18 d[i2+18*Zc]=c[26]^c[326]^c[348]^c[483]^c[511]; //row: 19 d[i2+19*Zc]=c[11]^c[31]^c[191]^c[209]^c[268]; //row: 20 d[i2+20*Zc]=c[2]^c[24]^c[4]^c[6]^c[5]^c[28]^c[39]^c[34]^c[54]^c[65]^c[75]^c[80]^c[100]^c[87]^c[89]^c[106]^c[104]^c[115]^c[132]^c[142]^c[136]^c[158]^c[177]^c[181]^c[184]^c[206]^c[205]^c[210]^c[222]^c[216]^c[236]^c[238]^c[254]^c[248]^c[262]^c[275]^c[283]^c[288]^c[304]^c[293]^c[290]^c[314]^c[322]^c[312]^c[340]^c[339]^c[349]^c[366]^c[368]^c[371]^c[392]^c[398]^c[399]^c[418]^c[422]^c[432]^c[444]^c[465]^c[461]^c[470]^c[493]^c[486]^c[496]^c[508]^c[512]^c[522]^c[536]^c[524]^c[548]^c[553]^c[560]; //row: 21 d[i2+21*Zc]=c[31]^c[137]^c[433]^c[535]^c[562]; //row: 22 d[i2+22*Zc]=c[17]^c[317]^c[363]^c[442]; //row: 23 d[i2+23*Zc]=c[44]^c[69]^c[261]^c[489]; //row: 24 d[i2+24*Zc]=c[4]^c[0]^c[6]^c[8]^c[8]^c[30]^c[41]^c[36]^c[56]^c[67]^c[77]^c[82]^c[102]^c[89]^c[98]^c[108]^c[106]^c[117]^c[112]^c[134]^c[144]^c[138]^c[160]^c[179]^c[157]^c[186]^c[182]^c[207]^c[212]^c[224]^c[218]^c[238]^c[240]^c[256]^c[264]^c[277]^c[285]^c[290]^c[306]^c[295]^c[287]^c[316]^c[324]^c[314]^c[342]^c[341]^c[351]^c[368]^c[370]^c[373]^c[394]^c[400]^c[401]^c[420]^c[424]^c[434]^c[446]^c[467]^c[463]^c[472]^c[469]^c[488]^c[498]^c[510]^c[514]^c[524]^c[538]^c[526]^c[550]^c[555]^c[562]; //row: 25 d[i2+25*Zc]=c[29]^c[177]^c[197]^c[365]; //row: 26 d[i2+26*Zc]=c[20]^c[63]^c[113]^c[404]; //row: 27 d[i2+27*Zc]=c[45]^c[165]^c[229]; //row: 28 d[i2+28*Zc]=c[3]^c[104]^c[507]^c[560]; //row: 29 d[i2+29*Zc]=c[4]^c[0]^c[6]^c[9]^c[8]^c[30]^c[41]^c[37]^c[36]^c[39]^c[56]^c[67]^c[77]^c[82]^c[102]^c[90]^c[89]^c[108]^c[106]^c[118]^c[117]^c[134]^c[144]^c[138]^c[160]^c[179]^c[158]^c[157]^c[186]^c[182]^c[182]^c[207]^c[212]^c[224]^c[219]^c[218]^c[238]^c[240]^c[256]^c[264]^c[277]^c[260]^c[285]^c[290]^c[306]^c[296]^c[295]^c[316]^c[324]^c[315]^c[314]^c[342]^c[341]^c[352]^c[351]^c[368]^c[370]^c[374]^c[373]^c[369]^c[394]^c[400]^c[401]^c[420]^c[424]^c[435]^c[434]^c[446]^c[467]^c[464]^c[463]^c[472]^c[469]^c[489]^c[488]^c[469]^c[498]^c[510]^c[514]^c[524]^c[538]^c[527]^c[526]^c[550]^c[555]^c[563]^c[562]; //row: 30 d[i2+30*Zc]=c[18]^c[14]^c[21]^c[20]^c[23]^c[22]^c[1]^c[44]^c[30]^c[29]^c[51]^c[50]^c[70]^c[55]^c[66]^c[65]^c[96]^c[90]^c[78]^c[103]^c[122]^c[121]^c[120]^c[106]^c[105]^c[148]^c[132]^c[153]^c[152]^c[174]^c[168]^c[167]^c[172]^c[171]^c[200]^c[197]^c[196]^c[196]^c[195]^c[226]^c[213]^c[212]^c[233]^c[232]^c[252]^c[254]^c[245]^c[244]^c[278]^c[266]^c[265]^c[274]^c[273]^c[269]^c[304]^c[294]^c[310]^c[309]^c[330]^c[312]^c[329]^c[328]^c[356]^c[356]^c[355]^c[340]^c[339]^c[345]^c[382]^c[385]^c[384]^c[388]^c[387]^c[408]^c[414]^c[390]^c[415]^c[434]^c[438]^c[423]^c[422]^c[460]^c[456]^c[455]^c[452]^c[451]^c[486]^c[484]^c[483]^c[477]^c[476]^c[512]^c[498]^c[503]^c[502]^c[538]^c[527]^c[526]^c[541]^c[540]^c[564]^c[569]^c[551]^c[550]; //row: 31 d[i2+31*Zc]=c[19]^c[10]^c[15]^c[6]^c[21]^c[12]^c[23]^c[15]^c[14]^c[45]^c[36]^c[30]^c[47]^c[51]^c[43]^c[42]^c[29]^c[71]^c[62]^c[56]^c[73]^c[66]^c[57]^c[97]^c[88]^c[91]^c[82]^c[78]^c[96]^c[95]^c[123]^c[114]^c[121]^c[112]^c[106]^c[124]^c[123]^c[149]^c[140]^c[133]^c[150]^c[153]^c[144]^c[175]^c[166]^c[168]^c[159]^c[172]^c[164]^c[163]^c[201]^c[192]^c[197]^c[188]^c[196]^c[188]^c[187]^c[204]^c[227]^c[218]^c[213]^c[230]^c[233]^c[225]^c[224]^c[253]^c[244]^c[255]^c[246]^c[245]^c[236]^c[279]^c[270]^c[266]^c[283]^c[274]^c[266]^c[265]^c[305]^c[296]^c[295]^c[286]^c[310]^c[302]^c[301]^c[331]^c[322]^c[313]^c[330]^c[329]^c[321]^c[320]^c[357]^c[348]^c[356]^c[347]^c[340]^c[358]^c[357]^c[383]^c[374]^c[385]^c[376]^c[388]^c[380]^c[379]^c[409]^c[400]^c[415]^c[406]^c[390]^c[407]^c[435]^c[426]^c[439]^c[430]^c[423]^c[441]^c[440]^c[461]^c[452]^c[456]^c[447]^c[452]^c[444]^c[443]^c[487]^c[478]^c[484]^c[475]^c[477]^c[469]^c[468]^c[513]^c[504]^c[499]^c[516]^c[503]^c[494]^c[539]^c[530]^c[527]^c[544]^c[541]^c[533]^c[532]^c[565]^c[556]^c[570]^c[561]^c[551]^c[569]^c[568]; //row: 32 d[i2+32*Zc]=c[18]^c[14]^c[21]^c[20]^c[23]^c[22]^c[5]^c[44]^c[30]^c[29]^c[51]^c[50]^c[70]^c[55]^c[66]^c[65]^c[96]^c[90]^c[78]^c[103]^c[122]^c[121]^c[120]^c[106]^c[105]^c[148]^c[132]^c[153]^c[152]^c[174]^c[168]^c[167]^c[172]^c[171]^c[200]^c[197]^c[196]^c[196]^c[195]^c[226]^c[213]^c[212]^c[233]^c[232]^c[252]^c[254]^c[245]^c[244]^c[278]^c[266]^c[265]^c[274]^c[273]^c[304]^c[294]^c[310]^c[309]^c[330]^c[312]^c[329]^c[328]^c[333]^c[356]^c[356]^c[355]^c[340]^c[339]^c[382]^c[385]^c[384]^c[388]^c[387]^c[374]^c[408]^c[414]^c[390]^c[415]^c[434]^c[438]^c[423]^c[422]^c[460]^c[456]^c[455]^c[452]^c[451]^c[486]^c[484]^c[483]^c[477]^c[476]^c[512]^c[498]^c[503]^c[502]^c[538]^c[527]^c[526]^c[541]^c[540]^c[564]^c[569]^c[551]^c[550]; //row: 33 d[i2+33*Zc]=c[35]^c[55]^c[291]^c[559]; //row: 34 d[i2+34*Zc]=c[3]^c[204]^c[404]^c[466]; //row: 35 d[i2+35*Zc]=c[1]^c[23]^c[3]^c[5]^c[27]^c[38]^c[33]^c[29]^c[53]^c[64]^c[74]^c[79]^c[99]^c[86]^c[105]^c[129]^c[114]^c[131]^c[141]^c[135]^c[157]^c[176]^c[180]^c[174]^c[183]^c[205]^c[204]^c[209]^c[221]^c[215]^c[235]^c[237]^c[253]^c[261]^c[274]^c[282]^c[287]^c[303]^c[292]^c[313]^c[321]^c[337]^c[323]^c[339]^c[338]^c[348]^c[365]^c[367]^c[370]^c[391]^c[397]^c[398]^c[417]^c[421]^c[431]^c[443]^c[464]^c[460]^c[469]^c[492]^c[485]^c[495]^c[507]^c[511]^c[521]^c[535]^c[523]^c[547]^c[552]^c[559]; //row: 36 d[i2+36*Zc]=c[5]^c[381]^c[410]^c[484]; //row: 37 d[i2+37*Zc]=c[4]^c[3]^c[25]^c[5]^c[7]^c[30]^c[29]^c[40]^c[35]^c[29]^c[56]^c[55]^c[66]^c[76]^c[82]^c[81]^c[101]^c[88]^c[107]^c[105]^c[116]^c[134]^c[133]^c[143]^c[137]^c[160]^c[159]^c[178]^c[156]^c[185]^c[207]^c[206]^c[211]^c[223]^c[217]^c[238]^c[237]^c[239]^c[255]^c[264]^c[263]^c[276]^c[284]^c[290]^c[289]^c[305]^c[294]^c[316]^c[315]^c[323]^c[313]^c[342]^c[341]^c[340]^c[350]^c[339]^c[367]^c[369]^c[372]^c[394]^c[393]^c[399]^c[400]^c[420]^c[419]^c[423]^c[433]^c[445]^c[466]^c[462]^c[472]^c[471]^c[468]^c[487]^c[498]^c[497]^c[509]^c[513]^c[524]^c[523]^c[537]^c[525]^c[550]^c[549]^c[554]^c[561]; //row: 38 d[i2+38*Zc]=c[12]^c[245]^c[275]^c[333]; //row: 39 d[i2+39*Zc]=c[29]^c[79]^c[186]^c[499]; //row: 40 d[i2+40*Zc]=c[9]^c[213]^c[453]; //row: 41 d[i2+41*Zc]=c[27]^c[100]^c[245]^c[491]; //row: 42 d[i2+42*Zc]=c[4]^c[0]^c[7]^c[6]^c[9]^c[8]^c[6]^c[30]^c[42]^c[41]^c[37]^c[36]^c[56]^c[67]^c[52]^c[77]^c[82]^c[102]^c[90]^c[89]^c[108]^c[107]^c[106]^c[118]^c[117]^c[113]^c[134]^c[144]^c[139]^c[138]^c[160]^c[180]^c[179]^c[158]^c[157]^c[186]^c[183]^c[182]^c[182]^c[207]^c[212]^c[225]^c[224]^c[219]^c[218]^c[238]^c[240]^c[257]^c[256]^c[264]^c[278]^c[277]^c[260]^c[285]^c[290]^c[306]^c[296]^c[295]^c[316]^c[324]^c[315]^c[314]^c[342]^c[342]^c[341]^c[352]^c[351]^c[368]^c[371]^c[370]^c[374]^c[373]^c[394]^c[400]^c[402]^c[401]^c[420]^c[424]^c[435]^c[434]^c[446]^c[442]^c[467]^c[464]^c[463]^c[472]^c[470]^c[469]^c[489]^c[488]^c[498]^c[510]^c[515]^c[514]^c[524]^c[539]^c[538]^c[527]^c[526]^c[550]^c[555]^c[563]^c[562]; //row: 43 d[i2+43*Zc]=c[18]^c[14]^c[20]^c[23]^c[22]^c[44]^c[29]^c[51]^c[50]^c[26]^c[70]^c[55]^c[65]^c[96]^c[90]^c[78]^c[103]^c[122]^c[120]^c[106]^c[105]^c[148]^c[132]^c[152]^c[174]^c[167]^c[172]^c[171]^c[200]^c[196]^c[196]^c[195]^c[226]^c[212]^c[233]^c[232]^c[252]^c[254]^c[244]^c[278]^c[265]^c[274]^c[273]^c[304]^c[294]^c[310]^c[309]^c[330]^c[312]^c[329]^c[328]^c[356]^c[355]^c[340]^c[339]^c[382]^c[384]^c[388]^c[387]^c[408]^c[414]^c[415]^c[434]^c[438]^c[423]^c[422]^c[422]^c[460]^c[455]^c[452]^c[451]^c[486]^c[483]^c[477]^c[476]^c[488]^c[512]^c[498]^c[502]^c[538]^c[526]^c[541]^c[540]^c[564]^c[569]^c[551]^c[550]; //row: 44 d[i2+44*Zc]=c[1]^c[23]^c[3]^c[5]^c[3]^c[27]^c[38]^c[33]^c[53]^c[64]^c[74]^c[79]^c[99]^c[86]^c[105]^c[129]^c[114]^c[131]^c[141]^c[135]^c[157]^c[176]^c[180]^c[183]^c[205]^c[204]^c[187]^c[209]^c[221]^c[215]^c[235]^c[237]^c[253]^c[245]^c[261]^c[274]^c[282]^c[287]^c[303]^c[292]^c[313]^c[321]^c[337]^c[339]^c[338]^c[348]^c[365]^c[367]^c[370]^c[391]^c[397]^c[398]^c[417]^c[421]^c[431]^c[443]^c[464]^c[460]^c[469]^c[492]^c[485]^c[495]^c[507]^c[511]^c[521]^c[535]^c[523]^c[547]^c[552]^c[559]; //row: 45 d[i2+45*Zc]=c[50]^c[174]^c[282]; } break; case 28: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[26]^c[0]^c[10]^c[4]^c[43]^c[34]^c[45]^c[65]^c[72]^c[58]^c[90]^c[94]^c[108]^c[129]^c[119]^c[116]^c[157]^c[146]^c[151]^c[177]^c[185]^c[184]^c[212]^c[206]^c[197]^c[244]^c[236]^c[239]^c[279]^c[254]^c[260]^c[288]^c[293]^c[285]^c[327]^c[317]^c[322]^c[356]^c[344]^c[352]^c[382]^c[384]^c[370]^c[414]^c[409]^c[404]^c[433]^c[428]^c[440]^c[461]^c[453]^c[459]^c[501]^c[477]^c[493]^c[504]^c[508]^c[518]^c[533]^c[534]^c[558]^c[579]^c[565]^c[561]^c[612]^c[606]^c[605]; //row: 1 d[i2+1*Zc]=c[26]^c[27]^c[1]^c[11]^c[5]^c[43]^c[44]^c[35]^c[46]^c[65]^c[66]^c[73]^c[59]^c[90]^c[91]^c[95]^c[109]^c[130]^c[120]^c[117]^c[157]^c[158]^c[147]^c[152]^c[177]^c[178]^c[186]^c[185]^c[213]^c[207]^c[198]^c[245]^c[237]^c[240]^c[279]^c[252]^c[255]^c[261]^c[288]^c[289]^c[294]^c[286]^c[327]^c[328]^c[318]^c[323]^c[356]^c[357]^c[345]^c[353]^c[382]^c[383]^c[385]^c[371]^c[415]^c[410]^c[405]^c[433]^c[434]^c[429]^c[441]^c[461]^c[462]^c[454]^c[460]^c[502]^c[478]^c[494]^c[504]^c[505]^c[509]^c[519]^c[533]^c[534]^c[535]^c[559]^c[579]^c[580]^c[566]^c[562]^c[612]^c[613]^c[607]^c[606]; //row: 2 d[i2+2*Zc]=c[27]^c[1]^c[10]^c[11]^c[4]^c[5]^c[44]^c[34]^c[35]^c[45]^c[46]^c[66]^c[73]^c[58]^c[59]^c[91]^c[95]^c[108]^c[109]^c[130]^c[119]^c[120]^c[116]^c[117]^c[158]^c[147]^c[151]^c[152]^c[178]^c[185]^c[186]^c[184]^c[185]^c[213]^c[206]^c[207]^c[197]^c[198]^c[245]^c[236]^c[237]^c[239]^c[240]^c[252]^c[255]^c[260]^c[261]^c[289]^c[293]^c[294]^c[285]^c[286]^c[328]^c[318]^c[322]^c[323]^c[357]^c[345]^c[352]^c[353]^c[383]^c[384]^c[385]^c[370]^c[371]^c[415]^c[409]^c[410]^c[404]^c[405]^c[434]^c[429]^c[440]^c[441]^c[462]^c[454]^c[459]^c[460]^c[502]^c[477]^c[478]^c[493]^c[494]^c[505]^c[508]^c[509]^c[518]^c[519]^c[534]^c[535]^c[558]^c[559]^c[580]^c[565]^c[566]^c[561]^c[562]^c[613]^c[607]^c[605]^c[606]; //row: 3 d[i2+3*Zc]=c[27]^c[1]^c[11]^c[4]^c[5]^c[44]^c[35]^c[45]^c[46]^c[66]^c[73]^c[59]^c[91]^c[95]^c[108]^c[109]^c[130]^c[120]^c[116]^c[117]^c[158]^c[147]^c[152]^c[178]^c[186]^c[184]^c[185]^c[213]^c[207]^c[197]^c[198]^c[245]^c[237]^c[239]^c[240]^c[252]^c[255]^c[261]^c[289]^c[294]^c[285]^c[286]^c[328]^c[318]^c[322]^c[323]^c[357]^c[345]^c[352]^c[353]^c[383]^c[385]^c[370]^c[371]^c[415]^c[410]^c[404]^c[405]^c[434]^c[429]^c[441]^c[462]^c[454]^c[459]^c[460]^c[502]^c[478]^c[493]^c[494]^c[505]^c[509]^c[518]^c[519]^c[534]^c[535]^c[559]^c[580]^c[566]^c[561]^c[562]^c[613]^c[607]^c[605]^c[606]; //row: 4 d[i2+4*Zc]=c[1]^c[37]; //row: 5 d[i2+5*Zc]=c[11]^c[13]^c[23]^c[17]^c[23]^c[28]^c[47]^c[30]^c[30]^c[78]^c[57]^c[71]^c[103]^c[107]^c[93]^c[85]^c[114]^c[132]^c[129]^c[142]^c[159]^c[164]^c[190]^c[170]^c[169]^c[197]^c[219]^c[210]^c[229]^c[249]^c[224]^c[264]^c[267]^c[273]^c[301]^c[306]^c[298]^c[312]^c[330]^c[335]^c[341]^c[357]^c[337]^c[359]^c[367]^c[369]^c[383]^c[399]^c[394]^c[417]^c[446]^c[441]^c[425]^c[474]^c[466]^c[472]^c[461]^c[486]^c[490]^c[478]^c[517]^c[521]^c[531]^c[546]^c[547]^c[543]^c[564]^c[578]^c[574]^c[597]^c[591]^c[590]^c[605]; //row: 6 d[i2+6*Zc]=c[17]^c[174]^c[280]^c[328]^c[370]^c[498]^c[527]^c[563]; //row: 7 d[i2+7*Zc]=c[16]^c[47]^c[131]^c[211]^c[233]^c[409]; //row: 8 d[i2+8*Zc]=c[14]^c[4]^c[16]^c[6]^c[26]^c[15]^c[16]^c[20]^c[9]^c[10]^c[4]^c[31]^c[49]^c[50]^c[39]^c[40]^c[33]^c[50]^c[51]^c[38]^c[81]^c[71]^c[60]^c[78]^c[74]^c[63]^c[64]^c[106]^c[96]^c[110]^c[100]^c[96]^c[85]^c[86]^c[87]^c[117]^c[135]^c[135]^c[124]^c[125]^c[132]^c[121]^c[122]^c[145]^c[163]^c[162]^c[152]^c[167]^c[156]^c[157]^c[193]^c[183]^c[173]^c[190]^c[191]^c[172]^c[189]^c[190]^c[200]^c[218]^c[222]^c[211]^c[212]^c[213]^c[202]^c[203]^c[232]^c[250]^c[224]^c[241]^c[242]^c[227]^c[244]^c[245]^c[267]^c[257]^c[270]^c[260]^c[276]^c[265]^c[266]^c[304]^c[294]^c[281]^c[298]^c[299]^c[301]^c[290]^c[291]^c[315]^c[333]^c[333]^c[323]^c[310]^c[327]^c[328]^c[344]^c[362]^c[360]^c[350]^c[340]^c[357]^c[358]^c[356]^c[370]^c[388]^c[372]^c[389]^c[390]^c[386]^c[375]^c[376]^c[402]^c[392]^c[397]^c[414]^c[415]^c[392]^c[409]^c[410]^c[421]^c[439]^c[444]^c[434]^c[428]^c[445]^c[446]^c[449]^c[467]^c[469]^c[459]^c[475]^c[464]^c[465]^c[455]^c[489]^c[479]^c[493]^c[482]^c[483]^c[481]^c[498]^c[499]^c[520]^c[510]^c[524]^c[513]^c[514]^c[506]^c[523]^c[524]^c[549]^c[539]^c[550]^c[540]^c[546]^c[535]^c[536]^c[542]^c[567]^c[585]^c[581]^c[570]^c[571]^c[577]^c[566]^c[567]^c[600]^c[590]^c[594]^c[612]^c[593]^c[610]^c[611]^c[589]; //row: 9 d[i2+9*Zc]=c[8]^c[36]^c[296]^c[328]^c[368]^c[492]^c[528]^c[581]; //row: 10 d[i2+10*Zc]=c[53]^c[80]^c[117]^c[214]^c[249]^c[410]; //row: 11 d[i2+11*Zc]=c[26]^c[3]^c[4]^c[0]^c[6]^c[10]^c[16]^c[4]^c[10]^c[23]^c[43]^c[48]^c[49]^c[34]^c[40]^c[45]^c[51]^c[38]^c[65]^c[70]^c[71]^c[72]^c[78]^c[58]^c[64]^c[90]^c[95]^c[96]^c[94]^c[100]^c[108]^c[86]^c[129]^c[135]^c[119]^c[125]^c[116]^c[122]^c[157]^c[162]^c[163]^c[146]^c[152]^c[151]^c[157]^c[177]^c[182]^c[183]^c[185]^c[191]^c[184]^c[190]^c[212]^c[218]^c[206]^c[212]^c[197]^c[203]^c[244]^c[250]^c[236]^c[242]^c[239]^c[245]^c[279]^c[256]^c[257]^c[254]^c[260]^c[260]^c[266]^c[288]^c[293]^c[294]^c[293]^c[299]^c[285]^c[291]^c[327]^c[332]^c[333]^c[317]^c[323]^c[322]^c[328]^c[356]^c[361]^c[362]^c[344]^c[350]^c[352]^c[358]^c[337]^c[382]^c[387]^c[388]^c[384]^c[390]^c[370]^c[376]^c[414]^c[392]^c[409]^c[415]^c[404]^c[410]^c[433]^c[438]^c[439]^c[428]^c[434]^c[440]^c[446]^c[461]^c[466]^c[467]^c[453]^c[459]^c[459]^c[465]^c[454]^c[501]^c[479]^c[477]^c[483]^c[493]^c[499]^c[504]^c[509]^c[510]^c[508]^c[514]^c[518]^c[524]^c[533]^c[538]^c[539]^c[534]^c[540]^c[558]^c[536]^c[579]^c[584]^c[585]^c[565]^c[571]^c[561]^c[567]^c[612]^c[589]^c[590]^c[606]^c[612]^c[605]^c[611]^c[591]; //row: 12 d[i2+12*Zc]=c[1]^c[34]^c[303]^c[310]^c[391]^c[517]; //row: 13 d[i2+13*Zc]=c[20]^c[21]^c[23]^c[5]^c[27]^c[24]^c[37]^c[38]^c[29]^c[40]^c[59]^c[60]^c[67]^c[81]^c[84]^c[85]^c[89]^c[103]^c[111]^c[124]^c[114]^c[139]^c[151]^c[152]^c[141]^c[146]^c[171]^c[172]^c[180]^c[179]^c[207]^c[201]^c[220]^c[211]^c[239]^c[231]^c[234]^c[273]^c[274]^c[277]^c[255]^c[282]^c[283]^c[288]^c[280]^c[321]^c[322]^c[312]^c[317]^c[350]^c[351]^c[339]^c[347]^c[376]^c[377]^c[379]^c[365]^c[409]^c[404]^c[399]^c[427]^c[428]^c[423]^c[435]^c[455]^c[456]^c[448]^c[454]^c[496]^c[500]^c[488]^c[526]^c[527]^c[531]^c[513]^c[555]^c[556]^c[557]^c[553]^c[573]^c[574]^c[560]^c[584]^c[580]^c[606]^c[607]^c[601]^c[600]; //row: 14 d[i2+14*Zc]=c[13]^c[342]^c[434]^c[470]^c[498]^c[602]; //row: 15 d[i2+15*Zc]=c[24]^c[26]^c[8]^c[1]^c[2]^c[5]^c[41]^c[32]^c[42]^c[43]^c[35]^c[63]^c[70]^c[56]^c[88]^c[92]^c[105]^c[106]^c[127]^c[117]^c[113]^c[114]^c[155]^c[144]^c[149]^c[175]^c[183]^c[181]^c[182]^c[210]^c[204]^c[222]^c[223]^c[242]^c[234]^c[236]^c[237]^c[277]^c[252]^c[258]^c[286]^c[291]^c[282]^c[283]^c[298]^c[325]^c[315]^c[319]^c[320]^c[354]^c[342]^c[349]^c[350]^c[380]^c[382]^c[367]^c[368]^c[376]^c[412]^c[407]^c[401]^c[402]^c[431]^c[426]^c[438]^c[459]^c[451]^c[456]^c[457]^c[499]^c[503]^c[490]^c[491]^c[530]^c[506]^c[515]^c[516]^c[516]^c[559]^c[532]^c[556]^c[577]^c[563]^c[586]^c[587]^c[610]^c[604]^c[602]^c[603]; //row: 16 d[i2+16*Zc]=c[15]^c[17]^c[27]^c[21]^c[32]^c[51]^c[34]^c[41]^c[82]^c[61]^c[75]^c[107]^c[111]^c[97]^c[107]^c[118]^c[136]^c[133]^c[146]^c[163]^c[140]^c[194]^c[174]^c[173]^c[201]^c[223]^c[214]^c[233]^c[225]^c[228]^c[268]^c[271]^c[277]^c[305]^c[282]^c[302]^c[316]^c[334]^c[311]^c[322]^c[345]^c[361]^c[341]^c[371]^c[373]^c[387]^c[403]^c[398]^c[393]^c[422]^c[445]^c[429]^c[450]^c[470]^c[448]^c[490]^c[494]^c[482]^c[521]^c[525]^c[507]^c[550]^c[551]^c[547]^c[568]^c[582]^c[578]^c[580]^c[601]^c[595]^c[594]; //row: 17 d[i2+17*Zc]=c[27]^c[417]^c[451]^c[482]^c[591]; //row: 18 d[i2+18*Zc]=c[30]^c[361]^c[367]^c[506]^c[549]; //row: 19 d[i2+19*Zc]=c[7]^c[33]^c[214]^c[225]^c[287]; //row: 20 d[i2+20*Zc]=c[13]^c[15]^c[25]^c[19]^c[20]^c[30]^c[49]^c[32]^c[80]^c[59]^c[73]^c[105]^c[109]^c[95]^c[97]^c[116]^c[134]^c[131]^c[144]^c[161]^c[166]^c[192]^c[172]^c[171]^c[199]^c[221]^c[212]^c[231]^c[251]^c[226]^c[266]^c[269]^c[275]^c[260]^c[303]^c[280]^c[300]^c[314]^c[332]^c[309]^c[325]^c[343]^c[359]^c[339]^c[369]^c[371]^c[385]^c[401]^c[396]^c[419]^c[420]^c[443]^c[427]^c[448]^c[468]^c[474]^c[488]^c[492]^c[480]^c[519]^c[523]^c[505]^c[548]^c[549]^c[545]^c[566]^c[580]^c[576]^c[599]^c[593]^c[592]; //row: 21 d[i2+21*Zc]=c[51]^c[158]^c[471]^c[581]^c[609]; //row: 22 d[i2+22*Zc]=c[24]^c[363]^c[366]^c[483]; //row: 23 d[i2+23*Zc]=c[31]^c[62]^c[307]^c[513]; //row: 24 d[i2+24*Zc]=c[10]^c[12]^c[22]^c[16]^c[20]^c[55]^c[46]^c[29]^c[77]^c[56]^c[70]^c[102]^c[106]^c[92]^c[100]^c[113]^c[131]^c[128]^c[119]^c[141]^c[158]^c[163]^c[189]^c[169]^c[168]^c[196]^c[218]^c[209]^c[228]^c[248]^c[251]^c[263]^c[266]^c[272]^c[300]^c[305]^c[297]^c[311]^c[329]^c[334]^c[332]^c[340]^c[356]^c[336]^c[366]^c[368]^c[382]^c[398]^c[393]^c[416]^c[445]^c[440]^c[424]^c[473]^c[465]^c[471]^c[485]^c[489]^c[477]^c[516]^c[520]^c[530]^c[545]^c[546]^c[542]^c[563]^c[577]^c[573]^c[596]^c[590]^c[589]; //row: 25 d[i2+25*Zc]=c[28]^c[193]^c[204]^c[416]; //row: 26 d[i2+26*Zc]=c[22]^c[63]^c[127]^c[434]; //row: 27 d[i2+27*Zc]=c[39]^c[168]^c[229]; //row: 28 d[i2+28*Zc]=c[5]^c[124]^c[552]^c[589]; //row: 29 d[i2+29*Zc]=c[11]^c[13]^c[23]^c[16]^c[17]^c[28]^c[47]^c[29]^c[30]^c[37]^c[78]^c[57]^c[71]^c[103]^c[107]^c[92]^c[93]^c[114]^c[132]^c[128]^c[129]^c[142]^c[159]^c[164]^c[190]^c[170]^c[168]^c[169]^c[197]^c[219]^c[209]^c[210]^c[229]^c[249]^c[251]^c[224]^c[264]^c[267]^c[273]^c[301]^c[306]^c[297]^c[298]^c[312]^c[330]^c[334]^c[335]^c[341]^c[357]^c[336]^c[337]^c[367]^c[369]^c[382]^c[383]^c[399]^c[394]^c[416]^c[417]^c[402]^c[446]^c[441]^c[425]^c[474]^c[466]^c[471]^c[472]^c[486]^c[490]^c[477]^c[478]^c[517]^c[521]^c[530]^c[531]^c[528]^c[546]^c[547]^c[543]^c[564]^c[578]^c[573]^c[574]^c[597]^c[591]^c[589]^c[590]; //row: 30 d[i2+30*Zc]=c[10]^c[12]^c[21]^c[22]^c[15]^c[16]^c[5]^c[55]^c[45]^c[46]^c[28]^c[29]^c[77]^c[56]^c[69]^c[70]^c[102]^c[106]^c[91]^c[92]^c[113]^c[130]^c[131]^c[127]^c[128]^c[141]^c[158]^c[162]^c[163]^c[189]^c[168]^c[169]^c[195]^c[168]^c[196]^c[217]^c[218]^c[208]^c[209]^c[228]^c[247]^c[248]^c[250]^c[251]^c[263]^c[266]^c[271]^c[272]^c[300]^c[304]^c[305]^c[296]^c[297]^c[297]^c[311]^c[329]^c[333]^c[334]^c[340]^c[356]^c[363]^c[336]^c[366]^c[367]^c[368]^c[381]^c[382]^c[377]^c[398]^c[392]^c[393]^c[415]^c[416]^c[445]^c[440]^c[423]^c[424]^c[473]^c[465]^c[470]^c[471]^c[485]^c[488]^c[489]^c[476]^c[477]^c[516]^c[519]^c[520]^c[529]^c[530]^c[545]^c[546]^c[541]^c[542]^c[563]^c[576]^c[577]^c[572]^c[573]^c[596]^c[590]^c[588]^c[589]; //row: 31 d[i2+31*Zc]=c[7]^c[15]^c[9]^c[17]^c[19]^c[27]^c[13]^c[20]^c[21]^c[52]^c[32]^c[43]^c[51]^c[54]^c[33]^c[34]^c[34]^c[74]^c[82]^c[81]^c[61]^c[67]^c[75]^c[99]^c[107]^c[103]^c[111]^c[89]^c[96]^c[97]^c[138]^c[118]^c[128]^c[136]^c[125]^c[132]^c[133]^c[166]^c[146]^c[155]^c[163]^c[160]^c[140]^c[186]^c[194]^c[194]^c[174]^c[193]^c[172]^c[173]^c[221]^c[201]^c[215]^c[223]^c[206]^c[213]^c[214]^c[216]^c[225]^c[233]^c[245]^c[225]^c[248]^c[227]^c[228]^c[260]^c[268]^c[263]^c[271]^c[269]^c[277]^c[297]^c[305]^c[302]^c[282]^c[294]^c[301]^c[302]^c[308]^c[316]^c[326]^c[334]^c[331]^c[310]^c[311]^c[337]^c[345]^c[353]^c[361]^c[361]^c[340]^c[341]^c[391]^c[371]^c[365]^c[373]^c[379]^c[386]^c[387]^c[395]^c[403]^c[418]^c[398]^c[413]^c[392]^c[393]^c[442]^c[422]^c[437]^c[445]^c[421]^c[429]^c[470]^c[450]^c[462]^c[470]^c[468]^c[475]^c[448]^c[482]^c[490]^c[486]^c[494]^c[502]^c[481]^c[482]^c[513]^c[521]^c[517]^c[525]^c[527]^c[506]^c[507]^c[542]^c[550]^c[543]^c[551]^c[539]^c[547]^c[560]^c[568]^c[574]^c[582]^c[570]^c[577]^c[578]^c[593]^c[601]^c[615]^c[595]^c[614]^c[593]^c[594]; //row: 32 d[i2+32*Zc]=c[1]^c[3]^c[12]^c[13]^c[6]^c[7]^c[23]^c[46]^c[36]^c[37]^c[47]^c[48]^c[68]^c[75]^c[60]^c[61]^c[93]^c[97]^c[110]^c[111]^c[132]^c[121]^c[122]^c[118]^c[119]^c[160]^c[149]^c[153]^c[154]^c[180]^c[187]^c[188]^c[186]^c[187]^c[215]^c[208]^c[209]^c[199]^c[200]^c[247]^c[238]^c[239]^c[241]^c[242]^c[254]^c[257]^c[262]^c[263]^c[291]^c[295]^c[296]^c[287]^c[288]^c[330]^c[320]^c[324]^c[325]^c[359]^c[347]^c[354]^c[355]^c[348]^c[385]^c[386]^c[387]^c[372]^c[373]^c[417]^c[411]^c[412]^c[406]^c[407]^c[393]^c[436]^c[431]^c[442]^c[443]^c[464]^c[456]^c[461]^c[462]^c[476]^c[479]^c[480]^c[495]^c[496]^c[507]^c[510]^c[511]^c[520]^c[521]^c[536]^c[537]^c[532]^c[533]^c[582]^c[567]^c[568]^c[563]^c[564]^c[615]^c[609]^c[607]^c[608]; //row: 33 d[i2+33*Zc]=c[29]^c[76]^c[328]^c[612]; //row: 34 d[i2+34*Zc]=c[25]^c[213]^c[431]^c[485]; //row: 35 d[i2+35*Zc]=c[17]^c[19]^c[1]^c[23]^c[34]^c[53]^c[36]^c[51]^c[56]^c[63]^c[77]^c[109]^c[85]^c[99]^c[120]^c[138]^c[135]^c[148]^c[165]^c[142]^c[168]^c[176]^c[175]^c[172]^c[203]^c[197]^c[216]^c[235]^c[227]^c[230]^c[270]^c[273]^c[279]^c[307]^c[284]^c[304]^c[318]^c[308]^c[313]^c[347]^c[363]^c[343]^c[361]^c[373]^c[375]^c[389]^c[405]^c[400]^c[395]^c[424]^c[447]^c[431]^c[452]^c[472]^c[450]^c[492]^c[496]^c[484]^c[523]^c[527]^c[509]^c[552]^c[553]^c[549]^c[570]^c[584]^c[580]^c[603]^c[597]^c[596]; //row: 36 d[i2+36*Zc]=c[25]^c[408]^c[447]^c[509]; //row: 37 d[i2+37*Zc]=c[24]^c[25]^c[27]^c[9]^c[3]^c[41]^c[42]^c[33]^c[44]^c[52]^c[63]^c[64]^c[71]^c[57]^c[88]^c[89]^c[93]^c[107]^c[128]^c[118]^c[115]^c[155]^c[156]^c[145]^c[150]^c[175]^c[176]^c[184]^c[183]^c[211]^c[205]^c[196]^c[243]^c[235]^c[238]^c[277]^c[278]^c[253]^c[259]^c[286]^c[287]^c[292]^c[284]^c[325]^c[326]^c[316]^c[321]^c[354]^c[355]^c[343]^c[351]^c[380]^c[381]^c[383]^c[369]^c[390]^c[413]^c[408]^c[403]^c[431]^c[432]^c[427]^c[439]^c[459]^c[460]^c[452]^c[458]^c[500]^c[476]^c[492]^c[530]^c[531]^c[507]^c[517]^c[559]^c[532]^c[533]^c[557]^c[577]^c[578]^c[564]^c[560]^c[610]^c[611]^c[605]^c[604]; //row: 38 d[i2+38*Zc]=c[10]^c[257]^c[296]^c[345]; //row: 39 d[i2+39*Zc]=c[39]^c[104]^c[216]^c[533]; //row: 40 d[i2+40*Zc]=c[10]^c[240]^c[487]; //row: 41 d[i2+41*Zc]=c[50]^c[102]^c[255]^c[530]; //row: 42 d[i2+42*Zc]=c[21]^c[23]^c[4]^c[5]^c[26]^c[27]^c[1]^c[38]^c[28]^c[29]^c[39]^c[40]^c[60]^c[67]^c[80]^c[81]^c[85]^c[89]^c[102]^c[103]^c[124]^c[113]^c[114]^c[138]^c[139]^c[118]^c[152]^c[141]^c[145]^c[146]^c[172]^c[179]^c[180]^c[178]^c[179]^c[207]^c[200]^c[201]^c[219]^c[220]^c[239]^c[230]^c[231]^c[233]^c[234]^c[274]^c[277]^c[254]^c[255]^c[283]^c[287]^c[288]^c[307]^c[280]^c[322]^c[312]^c[316]^c[317]^c[351]^c[339]^c[346]^c[347]^c[377]^c[378]^c[379]^c[364]^c[365]^c[409]^c[403]^c[404]^c[398]^c[399]^c[428]^c[423]^c[434]^c[435]^c[456]^c[448]^c[453]^c[454]^c[496]^c[499]^c[500]^c[487]^c[488]^c[527]^c[530]^c[531]^c[512]^c[513]^c[556]^c[557]^c[552]^c[553]^c[574]^c[587]^c[560]^c[583]^c[584]^c[607]^c[601]^c[599]^c[600]; //row: 43 d[i2+43*Zc]=c[20]^c[22]^c[4]^c[25]^c[26]^c[37]^c[28]^c[38]^c[39]^c[37]^c[59]^c[66]^c[80]^c[84]^c[88]^c[101]^c[102]^c[123]^c[113]^c[137]^c[138]^c[151]^c[140]^c[145]^c[171]^c[179]^c[177]^c[178]^c[206]^c[200]^c[218]^c[219]^c[238]^c[230]^c[232]^c[233]^c[273]^c[276]^c[254]^c[282]^c[287]^c[306]^c[307]^c[321]^c[311]^c[315]^c[316]^c[350]^c[338]^c[345]^c[346]^c[376]^c[378]^c[391]^c[364]^c[408]^c[403]^c[397]^c[398]^c[427]^c[422]^c[434]^c[455]^c[475]^c[452]^c[453]^c[469]^c[495]^c[499]^c[486]^c[487]^c[526]^c[530]^c[511]^c[512]^c[525]^c[555]^c[556]^c[552]^c[573]^c[587]^c[582]^c[583]^c[606]^c[600]^c[598]^c[599]; //row: 44 d[i2+44*Zc]=c[10]^c[12]^c[22]^c[16]^c[27]^c[55]^c[46]^c[29]^c[77]^c[56]^c[70]^c[102]^c[106]^c[92]^c[113]^c[131]^c[128]^c[141]^c[158]^c[163]^c[189]^c[169]^c[168]^c[196]^c[218]^c[209]^c[199]^c[228]^c[248]^c[251]^c[263]^c[266]^c[272]^c[260]^c[300]^c[305]^c[297]^c[311]^c[329]^c[334]^c[340]^c[356]^c[336]^c[366]^c[368]^c[382]^c[398]^c[393]^c[416]^c[445]^c[440]^c[424]^c[473]^c[465]^c[471]^c[485]^c[489]^c[477]^c[516]^c[520]^c[530]^c[545]^c[546]^c[542]^c[563]^c[577]^c[573]^c[596]^c[590]^c[589]; //row: 45 d[i2+45*Zc]=c[43]^c[176]^c[280]; } break; case 30: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[14]^c[5]^c[8]^c[7]^c[46]^c[33]^c[52]^c[65]^c[85]^c[74]^c[103]^c[105]^c[101]^c[130]^c[120]^c[129]^c[173]^c[157]^c[175]^c[202]^c[206]^c[192]^c[211]^c[238]^c[215]^c[261]^c[241]^c[245]^c[292]^c[295]^c[293]^c[314]^c[307]^c[300]^c[354]^c[340]^c[335]^c[367]^c[368]^c[381]^c[404]^c[395]^c[413]^c[424]^c[430]^c[436]^c[464]^c[474]^c[452]^c[486]^c[482]^c[499]^c[536]^c[515]^c[511]^c[549]^c[544]^c[564]^c[599]^c[582]^c[576]^c[614]^c[619]^c[621]^c[646]^c[635]^c[638]; //row: 1 d[i2+1*Zc]=c[14]^c[15]^c[6]^c[9]^c[8]^c[46]^c[47]^c[34]^c[53]^c[65]^c[66]^c[86]^c[75]^c[103]^c[104]^c[106]^c[102]^c[131]^c[121]^c[130]^c[173]^c[174]^c[158]^c[176]^c[202]^c[203]^c[207]^c[193]^c[212]^c[239]^c[216]^c[262]^c[242]^c[246]^c[292]^c[293]^c[296]^c[294]^c[314]^c[315]^c[308]^c[301]^c[354]^c[355]^c[341]^c[336]^c[367]^c[368]^c[369]^c[382]^c[404]^c[405]^c[396]^c[414]^c[425]^c[431]^c[437]^c[464]^c[465]^c[475]^c[453]^c[486]^c[487]^c[483]^c[500]^c[537]^c[516]^c[512]^c[549]^c[550]^c[545]^c[565]^c[599]^c[570]^c[583]^c[577]^c[614]^c[615]^c[620]^c[622]^c[646]^c[647]^c[636]^c[639]; //row: 2 d[i2+2*Zc]=c[15]^c[6]^c[8]^c[9]^c[7]^c[8]^c[47]^c[33]^c[34]^c[52]^c[53]^c[66]^c[86]^c[74]^c[75]^c[104]^c[106]^c[101]^c[102]^c[131]^c[120]^c[121]^c[129]^c[130]^c[174]^c[158]^c[175]^c[176]^c[203]^c[206]^c[207]^c[192]^c[193]^c[212]^c[238]^c[239]^c[215]^c[216]^c[262]^c[241]^c[242]^c[245]^c[246]^c[293]^c[296]^c[293]^c[294]^c[315]^c[307]^c[308]^c[300]^c[301]^c[355]^c[341]^c[335]^c[336]^c[368]^c[369]^c[381]^c[382]^c[405]^c[395]^c[396]^c[413]^c[414]^c[425]^c[430]^c[431]^c[436]^c[437]^c[465]^c[475]^c[452]^c[453]^c[487]^c[483]^c[499]^c[500]^c[537]^c[515]^c[516]^c[511]^c[512]^c[550]^c[544]^c[545]^c[564]^c[565]^c[570]^c[583]^c[576]^c[577]^c[615]^c[619]^c[620]^c[621]^c[622]^c[647]^c[636]^c[638]^c[639]; //row: 3 d[i2+3*Zc]=c[15]^c[6]^c[9]^c[7]^c[8]^c[47]^c[34]^c[52]^c[53]^c[66]^c[86]^c[75]^c[104]^c[106]^c[101]^c[102]^c[131]^c[121]^c[129]^c[130]^c[174]^c[158]^c[176]^c[203]^c[207]^c[192]^c[193]^c[212]^c[239]^c[215]^c[216]^c[262]^c[242]^c[245]^c[246]^c[293]^c[296]^c[294]^c[315]^c[308]^c[300]^c[301]^c[355]^c[341]^c[335]^c[336]^c[368]^c[369]^c[381]^c[382]^c[405]^c[396]^c[413]^c[414]^c[425]^c[431]^c[436]^c[437]^c[465]^c[475]^c[453]^c[487]^c[483]^c[499]^c[500]^c[537]^c[516]^c[511]^c[512]^c[550]^c[545]^c[564]^c[565]^c[570]^c[583]^c[577]^c[615]^c[620]^c[621]^c[622]^c[647]^c[636]^c[638]^c[639]; //row: 4 d[i2+4*Zc]=c[3]^c[30]; //row: 5 d[i2+5*Zc]=c[14]^c[5]^c[8]^c[7]^c[1]^c[46]^c[33]^c[52]^c[50]^c[65]^c[85]^c[74]^c[103]^c[105]^c[101]^c[106]^c[130]^c[120]^c[129]^c[173]^c[157]^c[175]^c[202]^c[206]^c[192]^c[211]^c[238]^c[215]^c[261]^c[241]^c[245]^c[292]^c[295]^c[293]^c[314]^c[307]^c[300]^c[354]^c[340]^c[335]^c[367]^c[368]^c[381]^c[382]^c[404]^c[395]^c[413]^c[424]^c[430]^c[436]^c[464]^c[474]^c[452]^c[486]^c[482]^c[499]^c[509]^c[536]^c[515]^c[511]^c[549]^c[544]^c[564]^c[599]^c[582]^c[576]^c[614]^c[619]^c[621]^c[646]^c[635]^c[638]^c[659]; //row: 6 d[i2+6*Zc]=c[18]^c[201]^c[322]^c[339]^c[391]^c[536]^c[561]^c[612]; //row: 7 d[i2+7*Zc]=c[16]^c[55]^c[148]^c[211]^c[255]^c[437]; //row: 8 d[i2+8*Zc]=c[17]^c[23]^c[8]^c[14]^c[11]^c[16]^c[17]^c[10]^c[15]^c[16]^c[0]^c[49]^c[55]^c[36]^c[41]^c[42]^c[55]^c[30]^c[31]^c[44]^c[68]^c[74]^c[88]^c[64]^c[77]^c[82]^c[83]^c[106]^c[112]^c[108]^c[114]^c[104]^c[109]^c[110]^c[110]^c[133]^c[139]^c[123]^c[128]^c[129]^c[132]^c[137]^c[138]^c[176]^c[152]^c[160]^c[166]^c[178]^c[153]^c[154]^c[205]^c[181]^c[209]^c[184]^c[185]^c[195]^c[200]^c[201]^c[214]^c[220]^c[211]^c[216]^c[217]^c[218]^c[223]^c[224]^c[264]^c[240]^c[244]^c[249]^c[250]^c[248]^c[253]^c[254]^c[295]^c[271]^c[298]^c[274]^c[296]^c[271]^c[272]^c[317]^c[323]^c[310]^c[315]^c[316]^c[303]^c[308]^c[309]^c[357]^c[333]^c[343]^c[349]^c[338]^c[343]^c[344]^c[370]^c[376]^c[371]^c[377]^c[384]^c[389]^c[360]^c[372]^c[407]^c[413]^c[398]^c[403]^c[404]^c[416]^c[391]^c[392]^c[427]^c[433]^c[433]^c[438]^c[439]^c[439]^c[444]^c[445]^c[467]^c[473]^c[477]^c[453]^c[455]^c[460]^c[461]^c[489]^c[495]^c[485]^c[491]^c[502]^c[507]^c[508]^c[506]^c[539]^c[515]^c[518]^c[523]^c[524]^c[514]^c[519]^c[520]^c[552]^c[558]^c[547]^c[552]^c[553]^c[567]^c[542]^c[543]^c[572]^c[578]^c[585]^c[591]^c[579]^c[584]^c[585]^c[594]^c[617]^c[623]^c[622]^c[627]^c[628]^c[624]^c[629]^c[600]^c[649]^c[655]^c[638]^c[644]^c[641]^c[646]^c[647]^c[648]; //row: 9 d[i2+9*Zc]=c[18]^c[41]^c[325]^c[340]^c[406]^c[511]^c[541]^c[624]; //row: 10 d[i2+10*Zc]=c[55]^c[60]^c[129]^c[229]^c[264]^c[443]; //row: 11 d[i2+11*Zc]=c[29]^c[1]^c[2]^c[20]^c[23]^c[23]^c[26]^c[22]^c[25]^c[14]^c[31]^c[33]^c[34]^c[48]^c[51]^c[37]^c[40]^c[54]^c[80]^c[82]^c[83]^c[70]^c[73]^c[89]^c[62]^c[118]^c[90]^c[91]^c[90]^c[93]^c[116]^c[119]^c[145]^c[148]^c[135]^c[138]^c[144]^c[147]^c[158]^c[160]^c[161]^c[172]^c[175]^c[160]^c[163]^c[187]^c[189]^c[190]^c[191]^c[194]^c[207]^c[180]^c[226]^c[229]^c[223]^c[226]^c[230]^c[233]^c[246]^c[249]^c[256]^c[259]^c[260]^c[263]^c[277]^c[279]^c[280]^c[280]^c[283]^c[278]^c[281]^c[329]^c[301]^c[302]^c[322]^c[325]^c[315]^c[318]^c[339]^c[341]^c[342]^c[355]^c[358]^c[350]^c[353]^c[382]^c[384]^c[385]^c[383]^c[386]^c[366]^c[369]^c[373]^c[419]^c[391]^c[392]^c[410]^c[413]^c[398]^c[401]^c[439]^c[442]^c[445]^c[448]^c[421]^c[424]^c[479]^c[451]^c[452]^c[459]^c[462]^c[467]^c[470]^c[501]^c[503]^c[504]^c[497]^c[500]^c[484]^c[487]^c[480]^c[521]^c[524]^c[530]^c[533]^c[526]^c[529]^c[564]^c[566]^c[567]^c[559]^c[562]^c[549]^c[552]^c[584]^c[586]^c[587]^c[597]^c[570]^c[591]^c[594]^c[629]^c[601]^c[602]^c[604]^c[607]^c[606]^c[609]^c[631]^c[633]^c[634]^c[650]^c[653]^c[653]^c[656]^c[631]; //row: 12 d[i2+12*Zc]=c[5]^c[34]^c[303]^c[359]^c[397]^c[559]; //row: 13 d[i2+13*Zc]=c[14]^c[15]^c[6]^c[9]^c[8]^c[9]^c[46]^c[47]^c[34]^c[53]^c[65]^c[66]^c[86]^c[75]^c[103]^c[104]^c[106]^c[102]^c[94]^c[131]^c[121]^c[130]^c[173]^c[174]^c[158]^c[176]^c[202]^c[203]^c[207]^c[193]^c[212]^c[239]^c[216]^c[213]^c[262]^c[242]^c[246]^c[292]^c[293]^c[296]^c[294]^c[314]^c[315]^c[308]^c[301]^c[354]^c[355]^c[341]^c[336]^c[367]^c[368]^c[369]^c[382]^c[404]^c[405]^c[396]^c[414]^c[425]^c[431]^c[437]^c[464]^c[465]^c[475]^c[453]^c[486]^c[487]^c[483]^c[500]^c[537]^c[516]^c[512]^c[549]^c[550]^c[545]^c[565]^c[599]^c[570]^c[583]^c[577]^c[614]^c[615]^c[620]^c[622]^c[627]^c[646]^c[647]^c[636]^c[639]; //row: 14 d[i2+14*Zc]=c[3]^c[383]^c[451]^c[484]^c[521]^c[645]; //row: 15 d[i2+15*Zc]=c[4]^c[25]^c[28]^c[26]^c[27]^c[8]^c[36]^c[53]^c[41]^c[42]^c[47]^c[85]^c[75]^c[64]^c[93]^c[95]^c[90]^c[91]^c[120]^c[140]^c[148]^c[149]^c[163]^c[177]^c[165]^c[192]^c[196]^c[181]^c[182]^c[231]^c[228]^c[234]^c[235]^c[251]^c[261]^c[264]^c[265]^c[282]^c[285]^c[283]^c[304]^c[327]^c[319]^c[320]^c[309]^c[344]^c[330]^c[354]^c[355]^c[387]^c[388]^c[370]^c[371]^c[394]^c[415]^c[402]^c[403]^c[412]^c[444]^c[420]^c[425]^c[426]^c[454]^c[464]^c[472]^c[506]^c[502]^c[488]^c[489]^c[526]^c[535]^c[530]^c[531]^c[569]^c[564]^c[553]^c[554]^c[561]^c[589]^c[572]^c[596]^c[604]^c[609]^c[610]^c[611]^c[636]^c[655]^c[657]^c[658]; //row: 16 d[i2+16*Zc]=c[9]^c[0]^c[3]^c[2]^c[41]^c[58]^c[47]^c[47]^c[60]^c[80]^c[69]^c[98]^c[100]^c[96]^c[91]^c[125]^c[145]^c[124]^c[168]^c[152]^c[170]^c[197]^c[201]^c[187]^c[236]^c[233]^c[210]^c[256]^c[266]^c[240]^c[287]^c[290]^c[288]^c[309]^c[302]^c[325]^c[349]^c[335]^c[330]^c[353]^c[362]^c[363]^c[376]^c[399]^c[390]^c[408]^c[449]^c[425]^c[431]^c[459]^c[469]^c[477]^c[481]^c[507]^c[494]^c[531]^c[510]^c[536]^c[544]^c[569]^c[559]^c[594]^c[577]^c[571]^c[609]^c[614]^c[616]^c[604]^c[641]^c[630]^c[633]; //row: 17 d[i2+17*Zc]=c[2]^c[441]^c[495]^c[518]^c[638]; //row: 18 d[i2+18*Zc]=c[32]^c[364]^c[419]^c[562]^c[583]; //row: 19 d[i2+19*Zc]=c[28]^c[47]^c[218]^c[257]^c[315]; //row: 20 d[i2+20*Zc]=c[24]^c[15]^c[18]^c[17]^c[16]^c[56]^c[43]^c[32]^c[75]^c[65]^c[84]^c[113]^c[115]^c[111]^c[96]^c[140]^c[130]^c[139]^c[153]^c[167]^c[155]^c[182]^c[186]^c[202]^c[221]^c[218]^c[225]^c[241]^c[251]^c[255]^c[272]^c[275]^c[273]^c[292]^c[324]^c[317]^c[310]^c[334]^c[350]^c[345]^c[346]^c[377]^c[378]^c[361]^c[414]^c[405]^c[393]^c[434]^c[440]^c[446]^c[474]^c[454]^c[462]^c[496]^c[492]^c[509]^c[516]^c[525]^c[521]^c[559]^c[554]^c[544]^c[579]^c[592]^c[586]^c[624]^c[629]^c[601]^c[656]^c[645]^c[648]; //row: 21 d[i2+21*Zc]=c[46]^c[151]^c[484]^c[604]^c[635]; //row: 22 d[i2+22*Zc]=c[24]^c[376]^c[395]^c[537]; //row: 23 d[i2+23*Zc]=c[34]^c[66]^c[326]^c[558]; //row: 24 d[i2+24*Zc]=c[12]^c[3]^c[6]^c[5]^c[1]^c[44]^c[31]^c[50]^c[63]^c[83]^c[72]^c[101]^c[103]^c[99]^c[117]^c[128]^c[148]^c[127]^c[121]^c[171]^c[155]^c[173]^c[200]^c[204]^c[190]^c[239]^c[236]^c[213]^c[259]^c[269]^c[243]^c[290]^c[293]^c[291]^c[312]^c[305]^c[328]^c[352]^c[338]^c[333]^c[335]^c[365]^c[366]^c[379]^c[402]^c[393]^c[411]^c[422]^c[428]^c[434]^c[462]^c[472]^c[450]^c[484]^c[480]^c[497]^c[534]^c[513]^c[539]^c[547]^c[542]^c[562]^c[597]^c[580]^c[574]^c[612]^c[617]^c[619]^c[644]^c[633]^c[636]; //row: 25 d[i2+25*Zc]=c[56]^c[200]^c[220]^c[420]; //row: 26 d[i2+26*Zc]=c[12]^c[70]^c[138]^c[457]; //row: 27 d[i2+27*Zc]=c[44]^c[201]^c[248]; //row: 28 d[i2+28*Zc]=c[1]^c[132]^c[589]^c[654]; //row: 29 d[i2+29*Zc]=c[28]^c[19]^c[22]^c[20]^c[21]^c[30]^c[47]^c[35]^c[36]^c[51]^c[79]^c[69]^c[88]^c[117]^c[119]^c[114]^c[115]^c[144]^c[134]^c[142]^c[143]^c[157]^c[171]^c[159]^c[186]^c[190]^c[205]^c[206]^c[225]^c[222]^c[228]^c[229]^c[245]^c[255]^c[258]^c[259]^c[276]^c[279]^c[277]^c[328]^c[321]^c[313]^c[314]^c[338]^c[354]^c[348]^c[349]^c[381]^c[382]^c[364]^c[365]^c[418]^c[409]^c[396]^c[397]^c[438]^c[444]^c[449]^c[420]^c[421]^c[478]^c[458]^c[466]^c[500]^c[496]^c[482]^c[483]^c[520]^c[529]^c[524]^c[525]^c[563]^c[558]^c[547]^c[548]^c[567]^c[583]^c[596]^c[590]^c[628]^c[603]^c[604]^c[605]^c[630]^c[649]^c[651]^c[652]; //row: 30 d[i2+30*Zc]=c[0]^c[21]^c[23]^c[24]^c[22]^c[23]^c[19]^c[32]^c[48]^c[49]^c[37]^c[38]^c[81]^c[71]^c[89]^c[60]^c[119]^c[91]^c[116]^c[117]^c[146]^c[135]^c[136]^c[144]^c[145]^c[159]^c[173]^c[160]^c[161]^c[188]^c[191]^c[192]^c[207]^c[208]^c[227]^c[223]^c[224]^c[230]^c[231]^c[247]^c[256]^c[257]^c[260]^c[261]^c[278]^c[281]^c[278]^c[279]^c[300]^c[322]^c[323]^c[315]^c[316]^c[318]^c[340]^c[356]^c[350]^c[351]^c[383]^c[384]^c[366]^c[367]^c[390]^c[410]^c[411]^c[398]^c[399]^c[415]^c[440]^c[445]^c[446]^c[421]^c[422]^c[450]^c[460]^c[467]^c[468]^c[502]^c[498]^c[484]^c[485]^c[522]^c[530]^c[531]^c[526]^c[527]^c[565]^c[559]^c[560]^c[549]^c[550]^c[585]^c[598]^c[591]^c[592]^c[600]^c[604]^c[605]^c[606]^c[607]^c[632]^c[651]^c[653]^c[654]; //row: 31 d[i2+31*Zc]=c[9]^c[3]^c[0]^c[24]^c[3]^c[27]^c[2]^c[25]^c[26]^c[41]^c[35]^c[58]^c[52]^c[47]^c[40]^c[41]^c[42]^c[60]^c[84]^c[80]^c[74]^c[69]^c[63]^c[98]^c[92]^c[100]^c[94]^c[96]^c[119]^c[90]^c[125]^c[149]^c[145]^c[139]^c[124]^c[147]^c[148]^c[168]^c[162]^c[152]^c[176]^c[170]^c[164]^c[197]^c[191]^c[201]^c[195]^c[187]^c[180]^c[181]^c[236]^c[230]^c[233]^c[227]^c[210]^c[233]^c[234]^c[238]^c[256]^c[250]^c[266]^c[260]^c[240]^c[263]^c[264]^c[287]^c[281]^c[290]^c[284]^c[288]^c[282]^c[309]^c[303]^c[302]^c[326]^c[325]^c[318]^c[319]^c[349]^c[343]^c[335]^c[359]^c[330]^c[353]^c[354]^c[362]^c[386]^c[363]^c[387]^c[376]^c[369]^c[370]^c[399]^c[393]^c[390]^c[414]^c[408]^c[401]^c[402]^c[449]^c[443]^c[425]^c[449]^c[431]^c[424]^c[425]^c[459]^c[453]^c[469]^c[463]^c[477]^c[471]^c[481]^c[505]^c[507]^c[501]^c[494]^c[487]^c[488]^c[531]^c[525]^c[510]^c[534]^c[536]^c[529]^c[530]^c[544]^c[568]^c[569]^c[563]^c[559]^c[552]^c[553]^c[594]^c[588]^c[577]^c[571]^c[571]^c[595]^c[609]^c[603]^c[614]^c[608]^c[616]^c[609]^c[610]^c[641]^c[635]^c[630]^c[654]^c[633]^c[656]^c[657]; //row: 32 d[i2+32*Zc]=c[16]^c[7]^c[9]^c[10]^c[8]^c[9]^c[12]^c[48]^c[34]^c[35]^c[53]^c[54]^c[67]^c[87]^c[75]^c[76]^c[105]^c[107]^c[102]^c[103]^c[132]^c[121]^c[122]^c[130]^c[131]^c[175]^c[159]^c[176]^c[177]^c[204]^c[207]^c[208]^c[193]^c[194]^c[213]^c[239]^c[210]^c[216]^c[217]^c[263]^c[242]^c[243]^c[246]^c[247]^c[294]^c[297]^c[294]^c[295]^c[316]^c[308]^c[309]^c[301]^c[302]^c[356]^c[342]^c[336]^c[337]^c[369]^c[370]^c[382]^c[383]^c[379]^c[406]^c[396]^c[397]^c[414]^c[415]^c[426]^c[431]^c[432]^c[437]^c[438]^c[420]^c[466]^c[476]^c[453]^c[454]^c[488]^c[484]^c[500]^c[501]^c[538]^c[516]^c[517]^c[512]^c[513]^c[551]^c[545]^c[546]^c[565]^c[566]^c[571]^c[584]^c[577]^c[578]^c[616]^c[620]^c[621]^c[622]^c[623]^c[648]^c[637]^c[639]^c[640]; //row: 33 d[i2+33*Zc]=c[48]^c[71]^c[351]^c[634]; //row: 34 d[i2+34*Zc]=c[10]^c[236]^c[471]^c[539]; //row: 35 d[i2+35*Zc]=c[24]^c[15]^c[18]^c[17]^c[56]^c[43]^c[32]^c[50]^c[75]^c[65]^c[84]^c[113]^c[115]^c[111]^c[140]^c[130]^c[139]^c[153]^c[167]^c[155]^c[182]^c[186]^c[202]^c[203]^c[221]^c[218]^c[225]^c[241]^c[251]^c[255]^c[272]^c[275]^c[273]^c[324]^c[317]^c[310]^c[334]^c[350]^c[345]^c[377]^c[378]^c[361]^c[384]^c[414]^c[405]^c[393]^c[434]^c[440]^c[446]^c[474]^c[454]^c[462]^c[496]^c[492]^c[509]^c[516]^c[525]^c[521]^c[559]^c[554]^c[544]^c[579]^c[592]^c[586]^c[624]^c[629]^c[601]^c[656]^c[645]^c[648]; //row: 36 d[i2+36*Zc]=c[10]^c[446]^c[461]^c[549]; //row: 37 d[i2+37*Zc]=c[25]^c[26]^c[17]^c[20]^c[19]^c[57]^c[58]^c[45]^c[34]^c[58]^c[76]^c[77]^c[67]^c[86]^c[114]^c[115]^c[117]^c[113]^c[142]^c[132]^c[141]^c[154]^c[155]^c[169]^c[157]^c[183]^c[184]^c[188]^c[204]^c[223]^c[220]^c[227]^c[243]^c[253]^c[257]^c[273]^c[274]^c[277]^c[275]^c[325]^c[326]^c[319]^c[312]^c[335]^c[336]^c[352]^c[347]^c[378]^c[379]^c[380]^c[363]^c[415]^c[416]^c[407]^c[395]^c[413]^c[436]^c[442]^c[448]^c[475]^c[476]^c[456]^c[464]^c[497]^c[498]^c[494]^c[481]^c[518]^c[527]^c[523]^c[560]^c[561]^c[556]^c[546]^c[580]^c[581]^c[594]^c[588]^c[625]^c[626]^c[601]^c[603]^c[657]^c[658]^c[647]^c[650]; //row: 38 d[i2+38*Zc]=c[0]^c[299]^c[325]^c[379]; //row: 39 d[i2+39*Zc]=c[54]^c[97]^c[227]^c[591]; //row: 40 d[i2+40*Zc]=c[3]^c[252]^c[539]; //row: 41 d[i2+41*Zc]=c[52]^c[98]^c[274]^c[563]; //row: 42 d[i2+42*Zc]=c[26]^c[17]^c[19]^c[20]^c[18]^c[19]^c[11]^c[58]^c[44]^c[45]^c[33]^c[34]^c[77]^c[67]^c[85]^c[86]^c[115]^c[117]^c[112]^c[113]^c[142]^c[131]^c[132]^c[140]^c[141]^c[139]^c[155]^c[169]^c[156]^c[157]^c[184]^c[187]^c[188]^c[203]^c[204]^c[223]^c[219]^c[220]^c[226]^c[227]^c[243]^c[252]^c[253]^c[256]^c[257]^c[274]^c[277]^c[274]^c[275]^c[326]^c[318]^c[319]^c[311]^c[312]^c[336]^c[352]^c[346]^c[347]^c[379]^c[380]^c[362]^c[363]^c[416]^c[406]^c[407]^c[394]^c[395]^c[436]^c[441]^c[442]^c[447]^c[448]^c[476]^c[456]^c[463]^c[464]^c[498]^c[494]^c[480]^c[481]^c[518]^c[526]^c[527]^c[522]^c[523]^c[561]^c[555]^c[556]^c[545]^c[546]^c[581]^c[594]^c[587]^c[588]^c[626]^c[600]^c[601]^c[602]^c[603]^c[658]^c[647]^c[649]^c[650]; //row: 43 d[i2+43*Zc]=c[20]^c[11]^c[14]^c[12]^c[13]^c[52]^c[39]^c[57]^c[58]^c[51]^c[71]^c[61]^c[80]^c[109]^c[111]^c[106]^c[107]^c[136]^c[126]^c[134]^c[135]^c[179]^c[163]^c[151]^c[208]^c[182]^c[197]^c[198]^c[217]^c[214]^c[220]^c[221]^c[267]^c[247]^c[250]^c[251]^c[298]^c[271]^c[299]^c[320]^c[313]^c[305]^c[306]^c[330]^c[346]^c[340]^c[341]^c[373]^c[374]^c[386]^c[387]^c[410]^c[401]^c[418]^c[419]^c[430]^c[436]^c[441]^c[442]^c[470]^c[450]^c[458]^c[492]^c[488]^c[504]^c[505]^c[486]^c[512]^c[521]^c[516]^c[517]^c[555]^c[550]^c[569]^c[540]^c[558]^c[575]^c[588]^c[582]^c[620]^c[625]^c[626]^c[627]^c[652]^c[641]^c[643]^c[644]; //row: 44 d[i2+44*Zc]=c[12]^c[3]^c[6]^c[5]^c[10]^c[44]^c[31]^c[50]^c[63]^c[83]^c[72]^c[101]^c[103]^c[99]^c[128]^c[148]^c[127]^c[171]^c[155]^c[173]^c[200]^c[204]^c[190]^c[239]^c[236]^c[213]^c[210]^c[259]^c[269]^c[243]^c[290]^c[293]^c[291]^c[276]^c[312]^c[305]^c[328]^c[352]^c[338]^c[333]^c[365]^c[366]^c[379]^c[402]^c[393]^c[411]^c[422]^c[428]^c[434]^c[462]^c[472]^c[450]^c[484]^c[480]^c[497]^c[534]^c[513]^c[539]^c[547]^c[542]^c[562]^c[597]^c[580]^c[574]^c[612]^c[617]^c[619]^c[644]^c[633]^c[636]; //row: 45 d[i2+45*Zc]=c[56]^c[203]^c[302]; } break; case 32: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[25]^c[1]^c[9]^c[24]^c[36]^c[46]^c[56]^c[65]^c[78]^c[88]^c[126]^c[116]^c[115]^c[155]^c[158]^c[147]^c[163]^c[166]^c[180]^c[201]^c[220]^c[213]^c[253]^c[228]^c[226]^c[263]^c[272]^c[274]^c[314]^c[300]^c[318]^c[324]^c[326]^c[327]^c[365]^c[379]^c[373]^c[414]^c[389]^c[405]^c[424]^c[429]^c[442]^c[460]^c[448]^c[466]^c[482]^c[483]^c[480]^c[534]^c[525]^c[527]^c[570]^c[564]^c[555]^c[605]^c[588]^c[595]^c[610]^c[638]^c[634]^c[654]^c[660]^c[655]^c[702]^c[699]^c[683]; //row: 1 d[i2+1*Zc]=c[25]^c[26]^c[2]^c[10]^c[25]^c[36]^c[37]^c[47]^c[57]^c[65]^c[66]^c[79]^c[89]^c[126]^c[127]^c[117]^c[116]^c[156]^c[159]^c[148]^c[163]^c[164]^c[167]^c[181]^c[201]^c[202]^c[221]^c[214]^c[254]^c[229]^c[227]^c[264]^c[273]^c[275]^c[314]^c[315]^c[301]^c[319]^c[324]^c[325]^c[327]^c[328]^c[365]^c[366]^c[380]^c[374]^c[414]^c[415]^c[390]^c[406]^c[424]^c[425]^c[430]^c[443]^c[461]^c[449]^c[467]^c[482]^c[483]^c[484]^c[481]^c[534]^c[535]^c[526]^c[528]^c[571]^c[565]^c[556]^c[605]^c[606]^c[589]^c[596]^c[610]^c[611]^c[639]^c[635]^c[654]^c[655]^c[661]^c[656]^c[702]^c[703]^c[700]^c[684]; //row: 2 d[i2+2*Zc]=c[26]^c[2]^c[9]^c[10]^c[24]^c[25]^c[37]^c[46]^c[47]^c[56]^c[57]^c[66]^c[79]^c[88]^c[89]^c[127]^c[117]^c[115]^c[116]^c[156]^c[158]^c[159]^c[147]^c[148]^c[164]^c[167]^c[180]^c[181]^c[202]^c[220]^c[221]^c[213]^c[214]^c[254]^c[228]^c[229]^c[226]^c[227]^c[264]^c[272]^c[273]^c[274]^c[275]^c[315]^c[301]^c[318]^c[319]^c[325]^c[326]^c[327]^c[327]^c[328]^c[366]^c[380]^c[373]^c[374]^c[415]^c[390]^c[405]^c[406]^c[425]^c[429]^c[430]^c[442]^c[443]^c[461]^c[448]^c[449]^c[466]^c[467]^c[483]^c[484]^c[480]^c[481]^c[535]^c[526]^c[527]^c[528]^c[571]^c[564]^c[565]^c[555]^c[556]^c[606]^c[588]^c[589]^c[595]^c[596]^c[611]^c[639]^c[634]^c[635]^c[655]^c[660]^c[661]^c[655]^c[656]^c[703]^c[700]^c[683]^c[684]; //row: 3 d[i2+3*Zc]=c[26]^c[2]^c[10]^c[24]^c[25]^c[37]^c[47]^c[56]^c[57]^c[66]^c[79]^c[89]^c[127]^c[117]^c[115]^c[116]^c[156]^c[159]^c[147]^c[148]^c[164]^c[167]^c[181]^c[202]^c[221]^c[213]^c[214]^c[254]^c[229]^c[226]^c[227]^c[264]^c[273]^c[274]^c[275]^c[315]^c[301]^c[319]^c[325]^c[327]^c[327]^c[328]^c[366]^c[380]^c[373]^c[374]^c[415]^c[390]^c[405]^c[406]^c[425]^c[430]^c[442]^c[443]^c[461]^c[449]^c[466]^c[467]^c[483]^c[484]^c[481]^c[535]^c[526]^c[527]^c[528]^c[571]^c[565]^c[555]^c[556]^c[606]^c[589]^c[595]^c[596]^c[611]^c[639]^c[635]^c[655]^c[661]^c[655]^c[656]^c[703]^c[700]^c[683]^c[684]; //row: 4 d[i2+4*Zc]=c[28]^c[37]; //row: 5 d[i2+5*Zc]=c[12]^c[20]^c[28]^c[11]^c[12]^c[55]^c[33]^c[43]^c[43]^c[84]^c[65]^c[75]^c[113]^c[103]^c[102]^c[97]^c[142]^c[145]^c[134]^c[182]^c[185]^c[167]^c[220]^c[207]^c[200]^c[240]^c[247]^c[245]^c[282]^c[259]^c[261]^c[301]^c[319]^c[305]^c[343]^c[345]^c[346]^c[352]^c[366]^c[360]^c[401]^c[408]^c[392]^c[390]^c[443]^c[416]^c[429]^c[479]^c[467]^c[453]^c[501]^c[502]^c[499]^c[521]^c[512]^c[514]^c[539]^c[557]^c[551]^c[574]^c[592]^c[607]^c[582]^c[629]^c[625]^c[621]^c[641]^c[647]^c[642]^c[689]^c[686]^c[702]^c[698]; //row: 6 d[i2+6*Zc]=c[22]^c[213]^c[347]^c[354]^c[435]^c[554]^c[604]^c[658]; //row: 7 d[i2+7*Zc]=c[27]^c[43]^c[158]^c[254]^c[262]^c[455]; //row: 8 d[i2+8*Zc]=c[10]^c[20]^c[18]^c[28]^c[26]^c[3]^c[4]^c[9]^c[18]^c[19]^c[15]^c[53]^c[63]^c[63]^c[40]^c[41]^c[41]^c[50]^c[51]^c[35]^c[82]^c[92]^c[95]^c[73]^c[73]^c[82]^c[83]^c[111]^c[121]^c[101]^c[111]^c[100]^c[109]^c[110]^c[102]^c[140]^c[150]^c[143]^c[152]^c[153]^c[132]^c[141]^c[142]^c[180]^c[190]^c[183]^c[161]^c[165]^c[174]^c[175]^c[218]^c[196]^c[205]^c[214]^c[215]^c[198]^c[207]^c[208]^c[238]^c[248]^c[245]^c[254]^c[255]^c[243]^c[252]^c[253]^c[280]^c[258]^c[257]^c[266]^c[267]^c[259]^c[268]^c[269]^c[299]^c[309]^c[317]^c[295]^c[303]^c[312]^c[313]^c[341]^c[351]^c[343]^c[320]^c[321]^c[344]^c[321]^c[322]^c[382]^c[360]^c[364]^c[374]^c[358]^c[367]^c[368]^c[399]^c[409]^c[406]^c[384]^c[390]^c[399]^c[400]^c[402]^c[441]^c[419]^c[446]^c[423]^c[424]^c[427]^c[436]^c[437]^c[477]^c[455]^c[465]^c[474]^c[475]^c[451]^c[460]^c[461]^c[499]^c[509]^c[500]^c[510]^c[497]^c[506]^c[507]^c[519]^c[529]^c[542]^c[520]^c[512]^c[521]^c[522]^c[517]^c[555]^c[565]^c[549]^c[558]^c[559]^c[572]^c[549]^c[550]^c[590]^c[600]^c[605]^c[582]^c[583]^c[580]^c[589]^c[590]^c[627]^c[637]^c[623]^c[633]^c[619]^c[628]^c[629]^c[611]^c[671]^c[649]^c[645]^c[654]^c[655]^c[640]^c[649]^c[650]^c[687]^c[697]^c[684]^c[694]^c[700]^c[677]^c[678]^c[684]; //row: 9 d[i2+9*Zc]=c[6]^c[53]^c[332]^c[372]^c[429]^c[557]^c[604]^c[663]; //row: 10 d[i2+10*Zc]=c[33]^c[84]^c[134]^c[255]^c[272]^c[473]; //row: 11 d[i2+11*Zc]=c[21]^c[15]^c[16]^c[29]^c[24]^c[5]^c[0]^c[20]^c[15]^c[12]^c[32]^c[58]^c[59]^c[42]^c[37]^c[52]^c[47]^c[40]^c[93]^c[87]^c[88]^c[74]^c[69]^c[84]^c[79]^c[122]^c[116]^c[117]^c[112]^c[107]^c[111]^c[106]^c[151]^c[146]^c[154]^c[149]^c[143]^c[138]^c[191]^c[185]^c[186]^c[162]^c[189]^c[176]^c[171]^c[197]^c[223]^c[192]^c[216]^c[211]^c[209]^c[204]^c[249]^c[244]^c[224]^c[251]^c[254]^c[249]^c[259]^c[286]^c[268]^c[263]^c[270]^c[265]^c[310]^c[304]^c[305]^c[296]^c[291]^c[314]^c[309]^c[320]^c[346]^c[347]^c[322]^c[349]^c[323]^c[350]^c[361]^c[355]^c[356]^c[375]^c[370]^c[369]^c[364]^c[410]^c[404]^c[405]^c[385]^c[412]^c[401]^c[396]^c[402]^c[420]^c[446]^c[447]^c[425]^c[420]^c[438]^c[433]^c[456]^c[451]^c[476]^c[471]^c[462]^c[457]^c[510]^c[504]^c[505]^c[511]^c[506]^c[508]^c[503]^c[530]^c[524]^c[525]^c[521]^c[516]^c[523]^c[518]^c[533]^c[566]^c[561]^c[560]^c[555]^c[551]^c[546]^c[601]^c[595]^c[596]^c[584]^c[579]^c[591]^c[586]^c[638]^c[632]^c[633]^c[634]^c[629]^c[630]^c[625]^c[650]^c[644]^c[645]^c[656]^c[651]^c[651]^c[646]^c[698]^c[692]^c[693]^c[695]^c[690]^c[679]^c[674]^c[685]; //row: 12 d[i2+12*Zc]=c[31]^c[41]^c[340]^c[383]^c[425]^c[582]; //row: 13 d[i2+13*Zc]=c[23]^c[24]^c[0]^c[8]^c[23]^c[16]^c[34]^c[35]^c[45]^c[55]^c[95]^c[64]^c[77]^c[87]^c[124]^c[125]^c[115]^c[114]^c[119]^c[154]^c[157]^c[146]^c[161]^c[162]^c[165]^c[179]^c[199]^c[200]^c[219]^c[212]^c[252]^c[227]^c[225]^c[246]^c[262]^c[271]^c[273]^c[312]^c[313]^c[299]^c[317]^c[322]^c[323]^c[325]^c[326]^c[363]^c[364]^c[378]^c[372]^c[412]^c[413]^c[388]^c[404]^c[422]^c[423]^c[428]^c[441]^c[459]^c[479]^c[465]^c[480]^c[481]^c[482]^c[511]^c[532]^c[533]^c[524]^c[526]^c[569]^c[563]^c[554]^c[603]^c[604]^c[587]^c[594]^c[608]^c[609]^c[637]^c[633]^c[652]^c[653]^c[659]^c[654]^c[664]^c[700]^c[701]^c[698]^c[682]; //row: 14 d[i2+14*Zc]=c[13]^c[406]^c[493]^c[542]^c[559]^c[676]; //row: 15 d[i2+15*Zc]=c[13]^c[21]^c[29]^c[11]^c[12]^c[7]^c[56]^c[34]^c[43]^c[44]^c[63]^c[85]^c[66]^c[76]^c[114]^c[104]^c[102]^c[103]^c[143]^c[146]^c[134]^c[135]^c[183]^c[186]^c[168]^c[221]^c[208]^c[200]^c[201]^c[241]^c[248]^c[245]^c[246]^c[283]^c[260]^c[261]^c[262]^c[302]^c[288]^c[306]^c[344]^c[346]^c[346]^c[347]^c[320]^c[353]^c[367]^c[360]^c[361]^c[402]^c[409]^c[392]^c[393]^c[444]^c[417]^c[429]^c[430]^c[446]^c[448]^c[468]^c[453]^c[454]^c[502]^c[503]^c[500]^c[522]^c[513]^c[514]^c[515]^c[558]^c[552]^c[574]^c[575]^c[593]^c[576]^c[582]^c[583]^c[586]^c[630]^c[626]^c[622]^c[642]^c[648]^c[642]^c[643]^c[690]^c[687]^c[702]^c[703]; //row: 16 d[i2+16*Zc]=c[19]^c[27]^c[3]^c[18]^c[62]^c[40]^c[50]^c[63]^c[91]^c[72]^c[82]^c[120]^c[110]^c[109]^c[112]^c[149]^c[152]^c[141]^c[189]^c[160]^c[174]^c[195]^c[214]^c[207]^c[247]^c[254]^c[252]^c[257]^c[266]^c[268]^c[308]^c[294]^c[312]^c[350]^c[320]^c[321]^c[359]^c[373]^c[367]^c[368]^c[408]^c[415]^c[399]^c[418]^c[423]^c[436]^c[454]^c[474]^c[460]^c[508]^c[509]^c[506]^c[528]^c[519]^c[521]^c[564]^c[558]^c[549]^c[599]^c[582]^c[589]^c[636]^c[632]^c[628]^c[648]^c[654]^c[649]^c[658]^c[696]^c[693]^c[677]; //row: 17 d[i2+17*Zc]=c[6]^c[451]^c[538]^c[544]^c[687]; //row: 18 d[i2+18*Zc]=c[41]^c[392]^c[423]^c[602]^c[626]; //row: 19 d[i2+19*Zc]=c[27]^c[40]^c[231]^c[286]^c[351]; //row: 20 d[i2+20*Zc]=c[25]^c[1]^c[9]^c[24]^c[22]^c[36]^c[46]^c[56]^c[65]^c[78]^c[88]^c[126]^c[116]^c[115]^c[121]^c[155]^c[158]^c[147]^c[163]^c[166]^c[180]^c[201]^c[220]^c[213]^c[253]^c[228]^c[226]^c[263]^c[272]^c[274]^c[314]^c[300]^c[318]^c[312]^c[324]^c[326]^c[327]^c[365]^c[379]^c[373]^c[366]^c[414]^c[389]^c[405]^c[424]^c[429]^c[442]^c[460]^c[448]^c[466]^c[482]^c[483]^c[480]^c[534]^c[525]^c[527]^c[570]^c[564]^c[555]^c[605]^c[588]^c[595]^c[610]^c[638]^c[634]^c[654]^c[660]^c[655]^c[702]^c[699]^c[683]; //row: 21 d[i2+21*Zc]=c[56]^c[184]^c[524]^c[642]^c[682]; //row: 22 d[i2+22*Zc]=c[31]^c[397]^c[443]^c[573]; //row: 23 d[i2+23*Zc]=c[59]^c[82]^c[329]^c[599]; //row: 24 d[i2+24*Zc]=c[23]^c[31]^c[7]^c[22]^c[15]^c[34]^c[44]^c[54]^c[95]^c[76]^c[86]^c[124]^c[114]^c[113]^c[117]^c[153]^c[156]^c[145]^c[139]^c[161]^c[164]^c[178]^c[199]^c[218]^c[211]^c[251]^c[226]^c[224]^c[261]^c[270]^c[272]^c[312]^c[298]^c[316]^c[322]^c[324]^c[325]^c[363]^c[377]^c[371]^c[371]^c[412]^c[387]^c[403]^c[422]^c[427]^c[440]^c[458]^c[478]^c[464]^c[480]^c[481]^c[510]^c[532]^c[523]^c[525]^c[568]^c[562]^c[553]^c[603]^c[586]^c[593]^c[608]^c[636]^c[632]^c[652]^c[658]^c[653]^c[700]^c[697]^c[681]; //row: 25 d[i2+25*Zc]=c[54]^c[199]^c[243]^c[469]; //row: 26 d[i2+26*Zc]=c[2]^c[82]^c[150]^c[508]; //row: 27 d[i2+27*Zc]=c[56]^c[199]^c[257]; //row: 28 d[i2+28*Zc]=c[31]^c[132]^c[628]^c[702]; //row: 29 d[i2+29*Zc]=c[0]^c[8]^c[16]^c[30]^c[31]^c[43]^c[53]^c[62]^c[63]^c[53]^c[72]^c[85]^c[95]^c[101]^c[123]^c[121]^c[122]^c[130]^c[133]^c[153]^c[154]^c[170]^c[173]^c[187]^c[208]^c[195]^c[219]^c[220]^c[228]^c[235]^c[232]^c[233]^c[270]^c[279]^c[280]^c[281]^c[289]^c[307]^c[293]^c[331]^c[333]^c[333]^c[334]^c[372]^c[354]^c[379]^c[380]^c[389]^c[396]^c[411]^c[412]^c[431]^c[436]^c[416]^c[417]^c[467]^c[455]^c[472]^c[473]^c[459]^c[489]^c[490]^c[487]^c[541]^c[532]^c[533]^c[534]^c[545]^c[571]^c[561]^c[562]^c[580]^c[595]^c[601]^c[602]^c[595]^c[617]^c[613]^c[609]^c[661]^c[667]^c[661]^c[662]^c[677]^c[674]^c[689]^c[690]; //row: 30 d[i2+30*Zc]=c[3]^c[11]^c[18]^c[19]^c[1]^c[2]^c[23]^c[46]^c[55]^c[56]^c[33]^c[34]^c[75]^c[88]^c[65]^c[66]^c[104]^c[126]^c[124]^c[125]^c[133]^c[135]^c[136]^c[156]^c[157]^c[173]^c[176]^c[189]^c[190]^c[211]^c[197]^c[198]^c[222]^c[223]^c[231]^c[237]^c[238]^c[235]^c[236]^c[273]^c[281]^c[282]^c[283]^c[284]^c[292]^c[310]^c[295]^c[296]^c[334]^c[335]^c[336]^c[336]^c[337]^c[328]^c[375]^c[357]^c[382]^c[383]^c[392]^c[399]^c[414]^c[415]^c[434]^c[438]^c[439]^c[419]^c[420]^c[439]^c[470]^c[457]^c[458]^c[475]^c[476]^c[492]^c[493]^c[489]^c[490]^c[512]^c[535]^c[536]^c[537]^c[548]^c[573]^c[574]^c[564]^c[565]^c[583]^c[597]^c[598]^c[604]^c[605]^c[620]^c[616]^c[611]^c[612]^c[664]^c[669]^c[670]^c[664]^c[665]^c[680]^c[677]^c[692]^c[693]; //row: 31 d[i2+31*Zc]=c[5]^c[23]^c[13]^c[31]^c[21]^c[7]^c[4]^c[21]^c[22]^c[48]^c[34]^c[58]^c[44]^c[36]^c[53]^c[54]^c[62]^c[77]^c[95]^c[90]^c[76]^c[68]^c[86]^c[106]^c[124]^c[96]^c[114]^c[127]^c[112]^c[113]^c[135]^c[153]^c[138]^c[156]^c[159]^c[144]^c[145]^c[175]^c[161]^c[178]^c[164]^c[160]^c[178]^c[213]^c[199]^c[200]^c[218]^c[193]^c[210]^c[211]^c[233]^c[251]^c[240]^c[226]^c[238]^c[255]^c[224]^c[240]^c[275]^c[261]^c[284]^c[270]^c[286]^c[271]^c[272]^c[294]^c[312]^c[312]^c[298]^c[298]^c[316]^c[336]^c[322]^c[338]^c[324]^c[339]^c[324]^c[325]^c[377]^c[363]^c[359]^c[377]^c[353]^c[370]^c[371]^c[394]^c[412]^c[401]^c[387]^c[385]^c[402]^c[403]^c[436]^c[422]^c[441]^c[427]^c[422]^c[439]^c[440]^c[472]^c[458]^c[460]^c[478]^c[478]^c[463]^c[464]^c[494]^c[480]^c[495]^c[481]^c[492]^c[510]^c[514]^c[532]^c[537]^c[523]^c[539]^c[524]^c[525]^c[550]^c[568]^c[544]^c[562]^c[567]^c[552]^c[553]^c[585]^c[603]^c[600]^c[586]^c[607]^c[592]^c[593]^c[622]^c[608]^c[618]^c[636]^c[614]^c[632]^c[666]^c[652]^c[640]^c[658]^c[667]^c[652]^c[653]^c[682]^c[700]^c[679]^c[697]^c[695]^c[680]^c[681]; //row: 32 d[i2+32*Zc]=c[19]^c[27]^c[2]^c[3]^c[17]^c[18]^c[28]^c[62]^c[39]^c[40]^c[49]^c[50]^c[91]^c[72]^c[81]^c[82]^c[120]^c[110]^c[108]^c[109]^c[149]^c[151]^c[152]^c[140]^c[141]^c[189]^c[160]^c[173]^c[174]^c[195]^c[213]^c[214]^c[206]^c[207]^c[247]^c[253]^c[254]^c[251]^c[252]^c[257]^c[265]^c[266]^c[267]^c[268]^c[308]^c[294]^c[311]^c[312]^c[350]^c[351]^c[320]^c[320]^c[321]^c[359]^c[373]^c[366]^c[367]^c[408]^c[415]^c[398]^c[399]^c[399]^c[418]^c[422]^c[423]^c[435]^c[436]^c[454]^c[473]^c[474]^c[459]^c[460]^c[454]^c[508]^c[509]^c[505]^c[506]^c[528]^c[519]^c[520]^c[521]^c[564]^c[557]^c[558]^c[548]^c[549]^c[599]^c[581]^c[582]^c[588]^c[589]^c[636]^c[632]^c[627]^c[628]^c[648]^c[653]^c[654]^c[648]^c[649]^c[696]^c[693]^c[676]^c[677]; //row: 33 d[i2+33*Zc]=c[33]^c[90]^c[360]^c[690]; //row: 34 d[i2+34*Zc]=c[30]^c[230]^c[483]^c[574]; //row: 35 d[i2+35*Zc]=c[0]^c[8]^c[16]^c[31]^c[43]^c[53]^c[63]^c[32]^c[72]^c[85]^c[95]^c[101]^c[123]^c[122]^c[130]^c[133]^c[154]^c[170]^c[173]^c[187]^c[208]^c[195]^c[220]^c[196]^c[228]^c[235]^c[233]^c[270]^c[279]^c[281]^c[289]^c[307]^c[293]^c[331]^c[333]^c[334]^c[372]^c[354]^c[380]^c[389]^c[396]^c[412]^c[398]^c[431]^c[436]^c[417]^c[467]^c[455]^c[473]^c[489]^c[490]^c[487]^c[541]^c[532]^c[534]^c[545]^c[571]^c[562]^c[580]^c[595]^c[602]^c[617]^c[613]^c[609]^c[661]^c[667]^c[662]^c[677]^c[674]^c[690]; //row: 36 d[i2+36*Zc]=c[4]^c[456]^c[498]^c[599]; //row: 37 d[i2+37*Zc]=c[19]^c[20]^c[28]^c[4]^c[19]^c[62]^c[63]^c[41]^c[51]^c[37]^c[91]^c[92]^c[73]^c[83]^c[120]^c[121]^c[111]^c[110]^c[150]^c[153]^c[142]^c[189]^c[190]^c[161]^c[175]^c[195]^c[196]^c[215]^c[208]^c[248]^c[255]^c[253]^c[258]^c[267]^c[269]^c[308]^c[309]^c[295]^c[313]^c[350]^c[351]^c[321]^c[322]^c[359]^c[360]^c[374]^c[368]^c[408]^c[409]^c[384]^c[400]^c[418]^c[419]^c[424]^c[437]^c[443]^c[455]^c[475]^c[461]^c[508]^c[509]^c[510]^c[507]^c[528]^c[529]^c[520]^c[522]^c[565]^c[559]^c[550]^c[599]^c[600]^c[583]^c[590]^c[636]^c[637]^c[633]^c[629]^c[648]^c[649]^c[655]^c[650]^c[696]^c[697]^c[694]^c[678]; //row: 38 d[i2+38*Zc]=c[6]^c[310]^c[348]^c[386]; //row: 39 d[i2+39*Zc]=c[44]^c[106]^c[244]^c[639]; //row: 40 d[i2+40*Zc]=c[28]^c[264]^c[564]; //row: 41 d[i2+41*Zc]=c[38]^c[108]^c[298]^c[598]; //row: 42 d[i2+42*Zc]=c[3]^c[11]^c[18]^c[19]^c[1]^c[2]^c[20]^c[46]^c[55]^c[56]^c[33]^c[34]^c[75]^c[88]^c[65]^c[66]^c[104]^c[126]^c[124]^c[125]^c[133]^c[135]^c[136]^c[156]^c[157]^c[156]^c[173]^c[176]^c[189]^c[190]^c[211]^c[197]^c[198]^c[222]^c[223]^c[231]^c[237]^c[238]^c[235]^c[236]^c[273]^c[281]^c[282]^c[283]^c[284]^c[292]^c[310]^c[295]^c[296]^c[334]^c[335]^c[336]^c[336]^c[337]^c[375]^c[357]^c[382]^c[383]^c[392]^c[399]^c[414]^c[415]^c[434]^c[438]^c[439]^c[419]^c[420]^c[470]^c[457]^c[458]^c[475]^c[476]^c[492]^c[493]^c[489]^c[490]^c[512]^c[535]^c[536]^c[537]^c[548]^c[573]^c[574]^c[564]^c[565]^c[583]^c[597]^c[598]^c[604]^c[605]^c[620]^c[616]^c[611]^c[612]^c[664]^c[669]^c[670]^c[664]^c[665]^c[680]^c[677]^c[692]^c[693]; //row: 43 d[i2+43*Zc]=c[5]^c[13]^c[21]^c[3]^c[4]^c[48]^c[58]^c[35]^c[36]^c[54]^c[77]^c[90]^c[68]^c[106]^c[96]^c[126]^c[127]^c[135]^c[138]^c[158]^c[159]^c[175]^c[178]^c[160]^c[213]^c[200]^c[192]^c[193]^c[233]^c[240]^c[237]^c[238]^c[275]^c[284]^c[285]^c[286]^c[294]^c[312]^c[298]^c[336]^c[338]^c[338]^c[339]^c[377]^c[359]^c[352]^c[353]^c[394]^c[401]^c[384]^c[385]^c[436]^c[441]^c[421]^c[422]^c[472]^c[460]^c[477]^c[478]^c[494]^c[495]^c[492]^c[514]^c[537]^c[538]^c[539]^c[514]^c[550]^c[544]^c[566]^c[567]^c[585]^c[600]^c[606]^c[607]^c[588]^c[622]^c[618]^c[614]^c[666]^c[640]^c[666]^c[667]^c[682]^c[679]^c[694]^c[695]; //row: 44 d[i2+44*Zc]=c[6]^c[14]^c[22]^c[5]^c[10]^c[49]^c[59]^c[37]^c[78]^c[91]^c[69]^c[107]^c[97]^c[96]^c[136]^c[139]^c[128]^c[176]^c[179]^c[161]^c[214]^c[201]^c[194]^c[234]^c[241]^c[239]^c[252]^c[276]^c[285]^c[287]^c[295]^c[313]^c[299]^c[290]^c[337]^c[339]^c[340]^c[378]^c[360]^c[354]^c[395]^c[402]^c[386]^c[437]^c[442]^c[423]^c[473]^c[461]^c[479]^c[495]^c[496]^c[493]^c[515]^c[538]^c[540]^c[551]^c[545]^c[568]^c[586]^c[601]^c[576]^c[623]^c[619]^c[615]^c[667]^c[641]^c[668]^c[683]^c[680]^c[696]; //row: 45 d[i2+45*Zc]=c[52]^c[214]^c[326]; } break; case 36: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[30]^c[34]^c[5]^c[6]^c[53]^c[58]^c[36]^c[79]^c[89]^c[75]^c[113]^c[114]^c[129]^c[147]^c[168]^c[179]^c[182]^c[195]^c[206]^c[219]^c[237]^c[225]^c[255]^c[253]^c[275]^c[309]^c[314]^c[304]^c[352]^c[332]^c[359]^c[395]^c[362]^c[364]^c[403]^c[396]^c[413]^c[467]^c[446]^c[452]^c[474]^c[469]^c[503]^c[539]^c[516]^c[510]^c[556]^c[547]^c[575]^c[611]^c[589]^c[601]^c[614]^c[647]^c[632]^c[670]^c[664]^c[683]^c[719]^c[695]^c[703]^c[720]^c[737]^c[724]^c[764]^c[766]^c[791]; //row: 1 d[i2+1*Zc]=c[30]^c[31]^c[35]^c[6]^c[7]^c[53]^c[54]^c[59]^c[37]^c[79]^c[80]^c[90]^c[76]^c[113]^c[114]^c[115]^c[130]^c[148]^c[169]^c[144]^c[182]^c[183]^c[196]^c[207]^c[219]^c[220]^c[238]^c[226]^c[256]^c[254]^c[276]^c[310]^c[315]^c[305]^c[352]^c[353]^c[333]^c[324]^c[395]^c[360]^c[363]^c[365]^c[403]^c[404]^c[397]^c[414]^c[467]^c[432]^c[447]^c[453]^c[474]^c[475]^c[470]^c[468]^c[504]^c[517]^c[511]^c[556]^c[557]^c[548]^c[540]^c[611]^c[576]^c[590]^c[602]^c[615]^c[612]^c[633]^c[670]^c[671]^c[665]^c[648]^c[719]^c[684]^c[696]^c[704]^c[720]^c[721]^c[738]^c[725]^c[764]^c[765]^c[767]^c[756]; //row: 2 d[i2+2*Zc]=c[31]^c[35]^c[5]^c[6]^c[6]^c[7]^c[54]^c[58]^c[59]^c[36]^c[37]^c[80]^c[90]^c[75]^c[76]^c[114]^c[115]^c[129]^c[130]^c[148]^c[168]^c[169]^c[179]^c[144]^c[183]^c[196]^c[206]^c[207]^c[220]^c[237]^c[238]^c[225]^c[226]^c[256]^c[253]^c[254]^c[275]^c[276]^c[310]^c[314]^c[315]^c[304]^c[305]^c[353]^c[333]^c[359]^c[324]^c[360]^c[362]^c[363]^c[364]^c[365]^c[404]^c[397]^c[413]^c[414]^c[432]^c[447]^c[452]^c[453]^c[475]^c[469]^c[470]^c[503]^c[468]^c[504]^c[516]^c[517]^c[510]^c[511]^c[557]^c[548]^c[575]^c[540]^c[576]^c[590]^c[601]^c[602]^c[615]^c[647]^c[612]^c[632]^c[633]^c[671]^c[664]^c[665]^c[683]^c[648]^c[684]^c[696]^c[703]^c[704]^c[721]^c[737]^c[738]^c[724]^c[725]^c[765]^c[767]^c[791]^c[756]; //row: 3 d[i2+3*Zc]=c[31]^c[35]^c[6]^c[6]^c[7]^c[54]^c[59]^c[36]^c[37]^c[80]^c[90]^c[76]^c[114]^c[115]^c[129]^c[130]^c[148]^c[169]^c[179]^c[144]^c[183]^c[196]^c[207]^c[220]^c[238]^c[225]^c[226]^c[256]^c[254]^c[275]^c[276]^c[310]^c[315]^c[304]^c[305]^c[353]^c[333]^c[324]^c[360]^c[363]^c[364]^c[365]^c[404]^c[397]^c[413]^c[414]^c[432]^c[447]^c[452]^c[453]^c[475]^c[470]^c[503]^c[468]^c[504]^c[517]^c[510]^c[511]^c[557]^c[548]^c[540]^c[576]^c[590]^c[601]^c[602]^c[615]^c[612]^c[632]^c[633]^c[671]^c[665]^c[683]^c[648]^c[684]^c[696]^c[704]^c[721]^c[738]^c[724]^c[725]^c[765]^c[767]^c[791]^c[756]; //row: 4 d[i2+4*Zc]=c[29]^c[54]; //row: 5 d[i2+5*Zc]=c[30]^c[34]^c[5]^c[6]^c[8]^c[53]^c[58]^c[36]^c[36]^c[79]^c[89]^c[75]^c[113]^c[114]^c[129]^c[143]^c[147]^c[168]^c[179]^c[182]^c[195]^c[206]^c[219]^c[237]^c[225]^c[255]^c[253]^c[275]^c[309]^c[314]^c[304]^c[352]^c[332]^c[359]^c[395]^c[362]^c[364]^c[403]^c[396]^c[413]^c[467]^c[446]^c[452]^c[462]^c[474]^c[469]^c[503]^c[539]^c[516]^c[510]^c[556]^c[547]^c[575]^c[611]^c[589]^c[601]^c[577]^c[614]^c[647]^c[632]^c[670]^c[664]^c[683]^c[719]^c[695]^c[703]^c[720]^c[737]^c[724]^c[764]^c[766]^c[791]^c[762]; //row: 6 d[i2+6*Zc]=c[7]^c[251]^c[384]^c[413]^c[490]^c[644]^c[654]^c[755]; //row: 7 d[i2+7*Zc]=c[24]^c[44]^c[153]^c[255]^c[319]^c[523]; //row: 8 d[i2+8*Zc]=c[8]^c[13]^c[12]^c[17]^c[19]^c[23]^c[24]^c[20]^c[24]^c[25]^c[17]^c[67]^c[36]^c[36]^c[40]^c[41]^c[50]^c[54]^c[55]^c[71]^c[93]^c[98]^c[103]^c[72]^c[89]^c[93]^c[94]^c[127]^c[132]^c[128]^c[133]^c[143]^c[111]^c[112]^c[143]^c[161]^c[166]^c[146]^c[150]^c[151]^c[157]^c[161]^c[162]^c[196]^c[201]^c[209]^c[214]^c[184]^c[188]^c[189]^c[233]^c[238]^c[251]^c[219]^c[220]^c[239]^c[243]^c[244]^c[269]^c[274]^c[267]^c[271]^c[272]^c[253]^c[257]^c[258]^c[323]^c[292]^c[292]^c[296]^c[297]^c[318]^c[322]^c[323]^c[330]^c[335]^c[346]^c[351]^c[337]^c[341]^c[342]^c[373]^c[378]^c[376]^c[380]^c[381]^c[378]^c[382]^c[383]^c[417]^c[422]^c[410]^c[415]^c[427]^c[431]^c[396]^c[445]^c[450]^c[460]^c[465]^c[466]^c[434]^c[435]^c[436]^c[488]^c[493]^c[483]^c[487]^c[488]^c[481]^c[485]^c[486]^c[517]^c[522]^c[530]^c[534]^c[535]^c[524]^c[528]^c[529]^c[570]^c[575]^c[561]^c[566]^c[553]^c[557]^c[558]^c[589]^c[594]^c[603]^c[608]^c[579]^c[583]^c[584]^c[601]^c[628]^c[633]^c[625]^c[629]^c[630]^c[646]^c[614]^c[615]^c[648]^c[653]^c[678]^c[682]^c[683]^c[661]^c[665]^c[666]^c[697]^c[702]^c[709]^c[714]^c[717]^c[685]^c[686]^c[693]^c[734]^c[739]^c[751]^c[755]^c[720]^c[738]^c[742]^c[743]^c[778]^c[783]^c[780]^c[785]^c[769]^c[773]^c[774]^c[770]; //row: 9 d[i2+9*Zc]=c[17]^c[50]^c[380]^c[421]^c[476]^c[635]^c[651]^c[748]; //row: 10 d[i2+10*Zc]=c[69]^c[72]^c[171]^c[266]^c[305]^c[524]; //row: 11 d[i2+11*Zc]=c[33]^c[20]^c[21]^c[1]^c[25]^c[8]^c[32]^c[9]^c[33]^c[18]^c[56]^c[43]^c[44]^c[61]^c[49]^c[39]^c[63]^c[58]^c[82]^c[105]^c[106]^c[92]^c[80]^c[78]^c[102]^c[116]^c[139]^c[140]^c[117]^c[141]^c[132]^c[120]^c[150]^c[174]^c[171]^c[159]^c[146]^c[170]^c[185]^c[208]^c[209]^c[198]^c[186]^c[209]^c[197]^c[222]^c[245]^c[246]^c[240]^c[228]^c[228]^c[216]^c[258]^c[282]^c[256]^c[280]^c[278]^c[266]^c[312]^c[300]^c[317]^c[305]^c[307]^c[295]^c[355]^c[342]^c[343]^c[335]^c[359]^c[326]^c[350]^c[362]^c[385]^c[386]^c[365]^c[389]^c[367]^c[391]^c[406]^c[429]^c[430]^c[399]^c[423]^c[416]^c[404]^c[434]^c[457]^c[458]^c[449]^c[437]^c[455]^c[443]^c[453]^c[477]^c[500]^c[501]^c[472]^c[496]^c[470]^c[494]^c[506]^c[530]^c[519]^c[507]^c[513]^c[537]^c[559]^c[546]^c[547]^c[550]^c[574]^c[542]^c[566]^c[578]^c[601]^c[602]^c[592]^c[580]^c[604]^c[592]^c[576]^c[617]^c[641]^c[614]^c[638]^c[635]^c[623]^c[673]^c[660]^c[661]^c[667]^c[655]^c[650]^c[674]^c[686]^c[709]^c[710]^c[698]^c[686]^c[706]^c[694]^c[723]^c[746]^c[747]^c[740]^c[728]^c[727]^c[751]^c[767]^c[790]^c[791]^c[769]^c[757]^c[758]^c[782]^c[776]; //row: 12 d[i2+12*Zc]=c[8]^c[53]^c[387]^c[402]^c[489]^c[674]; //row: 13 d[i2+13*Zc]=c[30]^c[31]^c[35]^c[6]^c[7]^c[14]^c[53]^c[54]^c[59]^c[37]^c[79]^c[80]^c[90]^c[76]^c[113]^c[114]^c[115]^c[130]^c[143]^c[148]^c[169]^c[144]^c[182]^c[183]^c[196]^c[207]^c[219]^c[220]^c[238]^c[226]^c[256]^c[254]^c[276]^c[287]^c[310]^c[315]^c[305]^c[352]^c[353]^c[333]^c[324]^c[395]^c[360]^c[363]^c[365]^c[403]^c[404]^c[397]^c[414]^c[467]^c[432]^c[447]^c[453]^c[474]^c[475]^c[470]^c[468]^c[504]^c[517]^c[511]^c[556]^c[557]^c[548]^c[540]^c[611]^c[576]^c[590]^c[602]^c[615]^c[612]^c[633]^c[670]^c[671]^c[665]^c[648]^c[719]^c[684]^c[696]^c[704]^c[720]^c[721]^c[738]^c[725]^c[730]^c[764]^c[765]^c[767]^c[756]; //row: 14 d[i2+14*Zc]=c[35]^c[437]^c[540]^c[591]^c[647]^c[762]; //row: 15 d[i2+15*Zc]=c[23]^c[27]^c[34]^c[34]^c[35]^c[25]^c[46]^c[51]^c[64]^c[65]^c[71]^c[72]^c[82]^c[104]^c[142]^c[143]^c[121]^c[122]^c[176]^c[161]^c[171]^c[172]^c[211]^c[188]^c[199]^c[248]^c[230]^c[217]^c[218]^c[284]^c[282]^c[267]^c[268]^c[302]^c[307]^c[296]^c[297]^c[345]^c[325]^c[352]^c[388]^c[391]^c[392]^c[393]^c[362]^c[396]^c[425]^c[405]^c[406]^c[460]^c[439]^c[444]^c[445]^c[503]^c[498]^c[495]^c[496]^c[503]^c[532]^c[509]^c[538]^c[539]^c[549]^c[540]^c[568]^c[604]^c[582]^c[593]^c[594]^c[643]^c[640]^c[624]^c[625]^c[663]^c[657]^c[675]^c[676]^c[679]^c[712]^c[688]^c[696]^c[749]^c[730]^c[752]^c[753]^c[757]^c[759]^c[783]^c[784]; //row: 16 d[i2+16*Zc]=c[30]^c[34]^c[5]^c[6]^c[53]^c[58]^c[36]^c[53]^c[79]^c[89]^c[75]^c[113]^c[114]^c[129]^c[120]^c[147]^c[168]^c[179]^c[182]^c[195]^c[206]^c[219]^c[237]^c[225]^c[255]^c[253]^c[275]^c[309]^c[314]^c[304]^c[352]^c[332]^c[359]^c[395]^c[362]^c[364]^c[403]^c[396]^c[413]^c[422]^c[467]^c[446]^c[452]^c[474]^c[469]^c[503]^c[539]^c[516]^c[510]^c[556]^c[547]^c[575]^c[611]^c[589]^c[601]^c[614]^c[647]^c[632]^c[670]^c[664]^c[683]^c[719]^c[695]^c[703]^c[720]^c[737]^c[724]^c[737]^c[764]^c[766]^c[791]; //row: 17 d[i2+17*Zc]=c[8]^c[532]^c[611]^c[647]^c[773]; //row: 18 d[i2+18*Zc]=c[52]^c[438]^c[503]^c[672]^c[719]; //row: 19 d[i2+19*Zc]=c[35]^c[71]^c[261]^c[323]^c[395]; //row: 20 d[i2+20*Zc]=c[6]^c[10]^c[17]^c[18]^c[12]^c[65]^c[70]^c[48]^c[91]^c[101]^c[87]^c[125]^c[126]^c[141]^c[116]^c[159]^c[144]^c[155]^c[194]^c[207]^c[182]^c[231]^c[249]^c[237]^c[267]^c[265]^c[287]^c[321]^c[290]^c[316]^c[328]^c[344]^c[335]^c[341]^c[371]^c[374]^c[376]^c[415]^c[408]^c[425]^c[431]^c[443]^c[458]^c[464]^c[486]^c[481]^c[479]^c[515]^c[528]^c[522]^c[568]^c[559]^c[551]^c[587]^c[601]^c[577]^c[626]^c[623]^c[644]^c[682]^c[676]^c[659]^c[695]^c[707]^c[715]^c[732]^c[749]^c[736]^c[776]^c[778]^c[767]; //row: 21 d[i2+21*Zc]=c[63]^c[189]^c[589]^c[728]^c[773]; //row: 22 d[i2+22*Zc]=c[35]^c[440]^c[503]^c[616]; //row: 23 d[i2+23*Zc]=c[71]^c[107]^c[395]^c[668]; //row: 24 d[i2+24*Zc]=c[30]^c[34]^c[5]^c[6]^c[19]^c[53]^c[58]^c[36]^c[79]^c[89]^c[75]^c[113]^c[114]^c[129]^c[126]^c[147]^c[168]^c[179]^c[179]^c[182]^c[195]^c[206]^c[219]^c[237]^c[225]^c[255]^c[253]^c[275]^c[309]^c[314]^c[304]^c[352]^c[332]^c[359]^c[395]^c[362]^c[364]^c[403]^c[396]^c[413]^c[409]^c[467]^c[446]^c[452]^c[474]^c[469]^c[503]^c[539]^c[516]^c[510]^c[556]^c[547]^c[575]^c[611]^c[589]^c[601]^c[614]^c[647]^c[632]^c[670]^c[664]^c[683]^c[719]^c[695]^c[703]^c[720]^c[737]^c[724]^c[764]^c[766]^c[791]; //row: 25 d[i2+25*Zc]=c[60]^c[251]^c[287]^c[506]; //row: 26 d[i2+26*Zc]=c[35]^c[107]^c[179]^c[564]; //row: 27 d[i2+27*Zc]=c[44]^c[251]^c[323]; //row: 28 d[i2+28*Zc]=c[22]^c[179]^c[694]^c[781]; //row: 29 d[i2+29*Zc]=c[1]^c[5]^c[12]^c[12]^c[13]^c[60]^c[65]^c[42]^c[43]^c[71]^c[86]^c[96]^c[82]^c[120]^c[121]^c[135]^c[136]^c[154]^c[175]^c[149]^c[150]^c[189]^c[202]^c[213]^c[226]^c[244]^c[231]^c[232]^c[262]^c[260]^c[281]^c[282]^c[316]^c[321]^c[310]^c[311]^c[359]^c[339]^c[330]^c[366]^c[369]^c[370]^c[371]^c[410]^c[403]^c[419]^c[420]^c[438]^c[453]^c[458]^c[459]^c[481]^c[476]^c[473]^c[474]^c[510]^c[523]^c[516]^c[517]^c[539]^c[563]^c[554]^c[546]^c[582]^c[596]^c[607]^c[608]^c[621]^c[618]^c[638]^c[639]^c[677]^c[671]^c[653]^c[654]^c[683]^c[690]^c[702]^c[710]^c[727]^c[744]^c[730]^c[731]^c[771]^c[773]^c[761]^c[762]; //row: 30 d[i2+30*Zc]=c[24]^c[28]^c[34]^c[35]^c[35]^c[0]^c[35]^c[47]^c[51]^c[52]^c[65]^c[66]^c[73]^c[83]^c[104]^c[105]^c[143]^c[108]^c[122]^c[123]^c[177]^c[161]^c[162]^c[172]^c[173]^c[212]^c[189]^c[199]^c[200]^c[249]^c[230]^c[231]^c[218]^c[219]^c[285]^c[282]^c[283]^c[268]^c[269]^c[303]^c[307]^c[308]^c[297]^c[298]^c[346]^c[326]^c[352]^c[353]^c[389]^c[391]^c[392]^c[393]^c[394]^c[377]^c[397]^c[426]^c[406]^c[407]^c[461]^c[440]^c[445]^c[446]^c[468]^c[498]^c[499]^c[496]^c[497]^c[503]^c[533]^c[509]^c[510]^c[539]^c[504]^c[550]^c[541]^c[568]^c[569]^c[605]^c[583]^c[594]^c[595]^c[644]^c[640]^c[641]^c[625]^c[626]^c[664]^c[657]^c[658]^c[676]^c[677]^c[713]^c[689]^c[696]^c[697]^c[750]^c[730]^c[731]^c[753]^c[754]^c[758]^c[760]^c[784]^c[785]; //row: 31 d[i2+31*Zc]=c[16]^c[14]^c[20]^c[18]^c[27]^c[25]^c[28]^c[25]^c[26]^c[39]^c[37]^c[44]^c[42]^c[58]^c[55]^c[56]^c[71]^c[101]^c[99]^c[75]^c[73]^c[97]^c[95]^c[135]^c[133]^c[136]^c[134]^c[115]^c[112]^c[113]^c[169]^c[167]^c[154]^c[152]^c[165]^c[162]^c[163]^c[204]^c[202]^c[181]^c[215]^c[192]^c[190]^c[241]^c[239]^c[223]^c[221]^c[247]^c[244]^c[245]^c[277]^c[275]^c[275]^c[273]^c[261]^c[258]^c[259]^c[287]^c[295]^c[293]^c[300]^c[298]^c[290]^c[323]^c[288]^c[338]^c[336]^c[354]^c[352]^c[345]^c[343]^c[381]^c[379]^c[384]^c[382]^c[386]^c[383]^c[384]^c[425]^c[423]^c[418]^c[416]^c[399]^c[396]^c[397]^c[453]^c[451]^c[432]^c[466]^c[438]^c[435]^c[436]^c[496]^c[494]^c[491]^c[489]^c[489]^c[486]^c[487]^c[525]^c[523]^c[538]^c[536]^c[532]^c[529]^c[530]^c[542]^c[540]^c[569]^c[567]^c[561]^c[559]^c[597]^c[595]^c[611]^c[609]^c[587]^c[584]^c[585]^c[636]^c[634]^c[633]^c[631]^c[618]^c[615]^c[616]^c[656]^c[654]^c[650]^c[648]^c[669]^c[666]^c[667]^c[705]^c[703]^c[717]^c[715]^c[689]^c[687]^c[742]^c[740]^c[723]^c[721]^c[746]^c[743]^c[744]^c[786]^c[784]^c[788]^c[786]^c[777]^c[774]^c[775]; //row: 32 d[i2+32*Zc]=c[13]^c[17]^c[23]^c[24]^c[24]^c[25]^c[35]^c[36]^c[40]^c[41]^c[54]^c[55]^c[98]^c[72]^c[93]^c[94]^c[132]^c[133]^c[111]^c[112]^c[166]^c[150]^c[151]^c[161]^c[162]^c[201]^c[214]^c[188]^c[189]^c[238]^c[219]^c[220]^c[243]^c[244]^c[274]^c[271]^c[272]^c[257]^c[258]^c[292]^c[296]^c[297]^c[322]^c[323]^c[335]^c[351]^c[341]^c[342]^c[378]^c[380]^c[381]^c[382]^c[383]^c[422]^c[415]^c[431]^c[396]^c[450]^c[465]^c[434]^c[435]^c[462]^c[493]^c[487]^c[488]^c[485]^c[486]^c[522]^c[534]^c[535]^c[528]^c[529]^c[539]^c[575]^c[566]^c[557]^c[558]^c[594]^c[608]^c[583]^c[584]^c[633]^c[629]^c[630]^c[614]^c[615]^c[653]^c[682]^c[683]^c[665]^c[666]^c[702]^c[714]^c[685]^c[686]^c[739]^c[755]^c[720]^c[742]^c[743]^c[783]^c[785]^c[773]^c[774]; //row: 33 d[i2+33*Zc]=c[71]^c[107]^c[399]^c[773]; //row: 34 d[i2+34*Zc]=c[16]^c[287]^c[575]^c[647]; //row: 35 d[i2+35*Zc]=c[19]^c[23]^c[30]^c[31]^c[42]^c[47]^c[61]^c[54]^c[104]^c[78]^c[100]^c[138]^c[139]^c[118]^c[172]^c[157]^c[168]^c[207]^c[184]^c[195]^c[244]^c[226]^c[250]^c[241]^c[280]^c[278]^c[264]^c[298]^c[303]^c[293]^c[341]^c[357]^c[348]^c[384]^c[387]^c[389]^c[428]^c[421]^c[402]^c[456]^c[435]^c[441]^c[467]^c[499]^c[494]^c[492]^c[528]^c[505]^c[535]^c[545]^c[572]^c[564]^c[600]^c[578]^c[590]^c[639]^c[636]^c[621]^c[659]^c[653]^c[672]^c[708]^c[684]^c[692]^c[745]^c[726]^c[749]^c[789]^c[791]^c[780]; //row: 36 d[i2+36*Zc]=c[35]^c[519]^c[575]^c[683]; //row: 37 d[i2+37*Zc]=c[30]^c[31]^c[35]^c[6]^c[7]^c[53]^c[54]^c[59]^c[37]^c[71]^c[79]^c[80]^c[90]^c[76]^c[113]^c[114]^c[115]^c[130]^c[148]^c[169]^c[144]^c[182]^c[183]^c[196]^c[207]^c[219]^c[220]^c[238]^c[226]^c[256]^c[254]^c[276]^c[310]^c[315]^c[305]^c[352]^c[353]^c[333]^c[324]^c[395]^c[360]^c[363]^c[365]^c[403]^c[404]^c[397]^c[414]^c[467]^c[432]^c[447]^c[453]^c[474]^c[475]^c[470]^c[468]^c[503]^c[504]^c[517]^c[511]^c[556]^c[557]^c[548]^c[540]^c[611]^c[576]^c[590]^c[602]^c[615]^c[612]^c[633]^c[670]^c[671]^c[665]^c[648]^c[719]^c[684]^c[696]^c[704]^c[720]^c[721]^c[738]^c[725]^c[764]^c[765]^c[767]^c[756]; //row: 38 d[i2+38*Zc]=c[9]^c[359]^c[395]^c[467]; //row: 39 d[i2+39*Zc]=c[44]^c[143]^c[272]^c[692]; //row: 40 d[i2+40*Zc]=c[35]^c[323]^c[613]; //row: 41 d[i2+41*Zc]=c[71]^c[143]^c[359]^c[650]; //row: 42 d[i2+42*Zc]=c[30]^c[34]^c[4]^c[5]^c[5]^c[6]^c[26]^c[53]^c[57]^c[58]^c[71]^c[36]^c[79]^c[89]^c[74]^c[75]^c[113]^c[114]^c[128]^c[129]^c[147]^c[167]^c[168]^c[178]^c[179]^c[179]^c[182]^c[195]^c[205]^c[206]^c[219]^c[236]^c[237]^c[224]^c[225]^c[255]^c[252]^c[253]^c[274]^c[275]^c[309]^c[313]^c[314]^c[303]^c[304]^c[352]^c[332]^c[358]^c[359]^c[395]^c[361]^c[362]^c[363]^c[364]^c[403]^c[396]^c[412]^c[413]^c[467]^c[446]^c[451]^c[452]^c[474]^c[468]^c[469]^c[502]^c[503]^c[539]^c[515]^c[516]^c[509]^c[510]^c[556]^c[547]^c[574]^c[575]^c[611]^c[589]^c[600]^c[601]^c[614]^c[646]^c[647]^c[631]^c[632]^c[670]^c[663]^c[664]^c[682]^c[683]^c[719]^c[695]^c[702]^c[703]^c[720]^c[736]^c[737]^c[723]^c[724]^c[764]^c[766]^c[790]^c[791]; //row: 43 d[i2+43*Zc]=c[13]^c[17]^c[24]^c[24]^c[25]^c[36]^c[41]^c[54]^c[55]^c[51]^c[98]^c[72]^c[94]^c[132]^c[133]^c[111]^c[112]^c[166]^c[151]^c[161]^c[162]^c[201]^c[214]^c[189]^c[238]^c[220]^c[243]^c[244]^c[274]^c[272]^c[257]^c[258]^c[292]^c[297]^c[322]^c[323]^c[335]^c[351]^c[342]^c[378]^c[381]^c[382]^c[383]^c[422]^c[415]^c[431]^c[396]^c[450]^c[465]^c[434]^c[435]^c[493]^c[488]^c[485]^c[486]^c[522]^c[535]^c[528]^c[529]^c[575]^c[566]^c[558]^c[594]^c[608]^c[583]^c[584]^c[602]^c[633]^c[630]^c[614]^c[615]^c[653]^c[683]^c[665]^c[666]^c[683]^c[702]^c[714]^c[686]^c[739]^c[720]^c[742]^c[743]^c[783]^c[785]^c[773]^c[774]; //row: 44 d[i2+44*Zc]=c[15]^c[19]^c[26]^c[27]^c[17]^c[38]^c[43]^c[57]^c[100]^c[74]^c[96]^c[134]^c[135]^c[114]^c[168]^c[153]^c[164]^c[203]^c[180]^c[191]^c[240]^c[222]^c[246]^c[276]^c[274]^c[260]^c[287]^c[294]^c[299]^c[289]^c[337]^c[353]^c[344]^c[359]^c[380]^c[383]^c[385]^c[424]^c[417]^c[398]^c[452]^c[467]^c[437]^c[495]^c[490]^c[488]^c[524]^c[537]^c[531]^c[541]^c[568]^c[560]^c[596]^c[610]^c[586]^c[635]^c[632]^c[617]^c[655]^c[649]^c[668]^c[704]^c[716]^c[688]^c[741]^c[722]^c[745]^c[785]^c[787]^c[776]; //row: 45 d[i2+45*Zc]=c[59]^c[251]^c[395]; } break; case 40: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[32]^c[22]^c[27]^c[19]^c[54]^c[46]^c[47]^c[102]^c[93]^c[119]^c[128]^c[146]^c[149]^c[180]^c[199]^c[196]^c[239]^c[200]^c[237]^c[278]^c[266]^c[260]^c[292]^c[281]^c[294]^c[323]^c[359]^c[358]^c[374]^c[399]^c[390]^c[401]^c[425]^c[400]^c[454]^c[448]^c[462]^c[483]^c[499]^c[492]^c[532]^c[534]^c[523]^c[595]^c[562]^c[572]^c[617]^c[625]^c[620]^c[669]^c[671]^c[643]^c[682]^c[703]^c[707]^c[752]^c[725]^c[756]^c[775]^c[779]^c[789]^c[828]^c[835]^c[838]^c[871]^c[860]^c[867]; //row: 1 d[i2+1*Zc]=c[32]^c[33]^c[23]^c[28]^c[20]^c[54]^c[55]^c[47]^c[48]^c[102]^c[103]^c[94]^c[80]^c[128]^c[129]^c[147]^c[150]^c[181]^c[160]^c[197]^c[239]^c[200]^c[201]^c[238]^c[278]^c[279]^c[267]^c[261]^c[293]^c[282]^c[295]^c[324]^c[320]^c[359]^c[374]^c[375]^c[360]^c[391]^c[401]^c[402]^c[426]^c[401]^c[454]^c[455]^c[449]^c[463]^c[483]^c[484]^c[500]^c[493]^c[532]^c[533]^c[535]^c[524]^c[596]^c[563]^c[573]^c[617]^c[618]^c[626]^c[621]^c[669]^c[670]^c[672]^c[644]^c[683]^c[704]^c[708]^c[752]^c[753]^c[726]^c[757]^c[775]^c[776]^c[780]^c[790]^c[828]^c[829]^c[836]^c[839]^c[871]^c[872]^c[861]^c[868]; //row: 2 d[i2+2*Zc]=c[33]^c[23]^c[27]^c[28]^c[19]^c[20]^c[55]^c[46]^c[47]^c[47]^c[48]^c[103]^c[94]^c[119]^c[80]^c[129]^c[147]^c[149]^c[150]^c[181]^c[199]^c[160]^c[196]^c[197]^c[200]^c[201]^c[237]^c[238]^c[279]^c[266]^c[267]^c[260]^c[261]^c[293]^c[281]^c[282]^c[294]^c[295]^c[324]^c[359]^c[320]^c[358]^c[359]^c[375]^c[360]^c[390]^c[391]^c[402]^c[425]^c[426]^c[400]^c[401]^c[455]^c[449]^c[462]^c[463]^c[484]^c[500]^c[492]^c[493]^c[533]^c[534]^c[535]^c[523]^c[524]^c[596]^c[562]^c[563]^c[572]^c[573]^c[618]^c[626]^c[620]^c[621]^c[670]^c[672]^c[643]^c[644]^c[683]^c[703]^c[704]^c[707]^c[708]^c[753]^c[725]^c[726]^c[756]^c[757]^c[776]^c[780]^c[789]^c[790]^c[829]^c[835]^c[836]^c[838]^c[839]^c[872]^c[861]^c[867]^c[868]; //row: 3 d[i2+3*Zc]=c[33]^c[23]^c[28]^c[19]^c[20]^c[55]^c[47]^c[47]^c[48]^c[103]^c[94]^c[80]^c[129]^c[147]^c[149]^c[150]^c[181]^c[160]^c[196]^c[197]^c[200]^c[201]^c[238]^c[279]^c[267]^c[260]^c[261]^c[293]^c[282]^c[294]^c[295]^c[324]^c[320]^c[358]^c[359]^c[375]^c[360]^c[391]^c[402]^c[426]^c[400]^c[401]^c[455]^c[449]^c[462]^c[463]^c[484]^c[500]^c[492]^c[493]^c[533]^c[535]^c[523]^c[524]^c[596]^c[563]^c[572]^c[573]^c[618]^c[626]^c[621]^c[670]^c[672]^c[643]^c[644]^c[683]^c[704]^c[707]^c[708]^c[753]^c[726]^c[756]^c[757]^c[776]^c[780]^c[790]^c[829]^c[836]^c[838]^c[839]^c[872]^c[861]^c[867]^c[868]; //row: 4 d[i2+4*Zc]=c[32]^c[44]; //row: 5 d[i2+5*Zc]=c[31]^c[21]^c[26]^c[18]^c[2]^c[53]^c[45]^c[46]^c[51]^c[101]^c[92]^c[118]^c[127]^c[145]^c[148]^c[129]^c[179]^c[198]^c[195]^c[238]^c[239]^c[236]^c[277]^c[265]^c[259]^c[291]^c[280]^c[293]^c[322]^c[358]^c[357]^c[373]^c[398]^c[389]^c[400]^c[424]^c[439]^c[453]^c[447]^c[461]^c[482]^c[498]^c[491]^c[517]^c[531]^c[533]^c[522]^c[594]^c[561]^c[571]^c[616]^c[624]^c[619]^c[668]^c[670]^c[642]^c[640]^c[681]^c[702]^c[706]^c[751]^c[724]^c[755]^c[774]^c[778]^c[788]^c[827]^c[834]^c[837]^c[870]^c[859]^c[866]^c[866]; //row: 6 d[i2+6*Zc]=c[8]^c[260]^c[412]^c[452]^c[551]^c[701]^c[737]^c[834]; //row: 7 d[i2+7*Zc]=c[11]^c[47]^c[166]^c[289]^c[344]^c[595]; //row: 8 d[i2+8*Zc]=c[37]^c[27]^c[27]^c[17]^c[32]^c[21]^c[22]^c[24]^c[13]^c[14]^c[14]^c[59]^c[49]^c[51]^c[40]^c[41]^c[52]^c[41]^c[42]^c[52]^c[107]^c[97]^c[98]^c[88]^c[84]^c[113]^c[114]^c[133]^c[123]^c[151]^c[141]^c[154]^c[143]^c[144]^c[129]^c[185]^c[175]^c[164]^c[193]^c[194]^c[161]^c[190]^c[191]^c[204]^c[234]^c[205]^c[235]^c[202]^c[231]^c[232]^c[243]^c[273]^c[271]^c[260]^c[261]^c[265]^c[254]^c[255]^c[297]^c[287]^c[286]^c[315]^c[316]^c[299]^c[288]^c[289]^c[328]^c[358]^c[324]^c[353]^c[354]^c[323]^c[352]^c[353]^c[379]^c[369]^c[364]^c[394]^c[395]^c[384]^c[385]^c[406]^c[436]^c[430]^c[419]^c[420]^c[405]^c[434]^c[435]^c[459]^c[449]^c[453]^c[443]^c[467]^c[456]^c[457]^c[488]^c[518]^c[504]^c[494]^c[497]^c[486]^c[487]^c[510]^c[537]^c[527]^c[539]^c[528]^c[529]^c[528]^c[557]^c[558]^c[560]^c[590]^c[567]^c[596]^c[597]^c[577]^c[566]^c[567]^c[622]^c[612]^c[630]^c[620]^c[625]^c[614]^c[615]^c[674]^c[664]^c[676]^c[666]^c[648]^c[677]^c[678]^c[655]^c[687]^c[717]^c[708]^c[697]^c[698]^c[712]^c[701]^c[702]^c[757]^c[747]^c[730]^c[759]^c[720]^c[721]^c[750]^c[751]^c[780]^c[770]^c[784]^c[774]^c[794]^c[783]^c[784]^c[789]^c[833]^c[823]^c[800]^c[829]^c[830]^c[803]^c[832]^c[833]^c[876]^c[866]^c[865]^c[855]^c[872]^c[861]^c[862]^c[868]; //row: 9 d[i2+9*Zc]=c[28]^c[43]^c[435]^c[445]^c[550]^c[706]^c[734]^c[808]; //row: 10 d[i2+10*Zc]=c[53]^c[119]^c[170]^c[314]^c[320]^c[590]; //row: 11 d[i2+11*Zc]=c[35]^c[32]^c[33]^c[25]^c[23]^c[30]^c[28]^c[22]^c[20]^c[15]^c[57]^c[54]^c[55]^c[49]^c[47]^c[50]^c[48]^c[66]^c[105]^c[102]^c[103]^c[96]^c[94]^c[82]^c[80]^c[131]^c[128]^c[129]^c[149]^c[147]^c[152]^c[150]^c[183]^c[181]^c[162]^c[160]^c[199]^c[197]^c[202]^c[239]^c[200]^c[203]^c[201]^c[200]^c[238]^c[241]^c[278]^c[279]^c[269]^c[267]^c[263]^c[261]^c[295]^c[293]^c[284]^c[282]^c[297]^c[295]^c[326]^c[324]^c[322]^c[320]^c[321]^c[359]^c[377]^c[374]^c[375]^c[362]^c[360]^c[393]^c[391]^c[404]^c[401]^c[402]^c[428]^c[426]^c[403]^c[401]^c[457]^c[454]^c[455]^c[451]^c[449]^c[465]^c[463]^c[486]^c[483]^c[484]^c[502]^c[500]^c[495]^c[493]^c[489]^c[535]^c[532]^c[533]^c[537]^c[535]^c[526]^c[524]^c[598]^c[596]^c[565]^c[563]^c[575]^c[573]^c[620]^c[617]^c[618]^c[628]^c[626]^c[623]^c[621]^c[672]^c[669]^c[670]^c[674]^c[672]^c[646]^c[644]^c[648]^c[685]^c[683]^c[706]^c[704]^c[710]^c[708]^c[755]^c[752]^c[753]^c[728]^c[726]^c[759]^c[757]^c[778]^c[775]^c[776]^c[782]^c[780]^c[792]^c[790]^c[831]^c[828]^c[829]^c[838]^c[836]^c[801]^c[839]^c[874]^c[871]^c[872]^c[863]^c[861]^c[870]^c[868]^c[856]; //row: 12 d[i2+12*Zc]=c[28]^c[74]^c[408]^c[447]^c[544]^c[731]; //row: 13 d[i2+13*Zc]=c[29]^c[30]^c[20]^c[25]^c[17]^c[38]^c[51]^c[52]^c[44]^c[45]^c[99]^c[100]^c[91]^c[117]^c[125]^c[126]^c[144]^c[147]^c[141]^c[178]^c[197]^c[194]^c[236]^c[237]^c[238]^c[235]^c[275]^c[276]^c[264]^c[258]^c[290]^c[319]^c[292]^c[302]^c[321]^c[357]^c[356]^c[371]^c[372]^c[397]^c[388]^c[438]^c[439]^c[423]^c[438]^c[451]^c[452]^c[446]^c[460]^c[480]^c[481]^c[497]^c[490]^c[529]^c[530]^c[532]^c[521]^c[593]^c[560]^c[570]^c[614]^c[615]^c[623]^c[618]^c[666]^c[667]^c[669]^c[641]^c[680]^c[701]^c[705]^c[749]^c[750]^c[723]^c[754]^c[772]^c[773]^c[777]^c[787]^c[825]^c[826]^c[833]^c[836]^c[839]^c[868]^c[869]^c[858]^c[865]; //row: 14 d[i2+14*Zc]=c[37]^c[498]^c[613]^c[660]^c[698]^c[857]; //row: 15 d[i2+15*Zc]=c[4]^c[34]^c[39]^c[30]^c[31]^c[28]^c[66]^c[58]^c[58]^c[59]^c[49]^c[114]^c[105]^c[91]^c[140]^c[158]^c[120]^c[121]^c[192]^c[171]^c[167]^c[168]^c[211]^c[212]^c[209]^c[250]^c[278]^c[271]^c[272]^c[304]^c[293]^c[305]^c[306]^c[335]^c[331]^c[329]^c[330]^c[386]^c[371]^c[362]^c[413]^c[437]^c[411]^c[412]^c[419]^c[466]^c[460]^c[473]^c[474]^c[495]^c[511]^c[503]^c[504]^c[544]^c[546]^c[534]^c[535]^c[529]^c[567]^c[574]^c[583]^c[584]^c[629]^c[637]^c[632]^c[641]^c[643]^c[654]^c[655]^c[694]^c[715]^c[718]^c[719]^c[724]^c[737]^c[727]^c[728]^c[743]^c[787]^c[791]^c[761]^c[800]^c[807]^c[809]^c[810]^c[843]^c[872]^c[878]^c[879]; //row: 16 d[i2+16*Zc]=c[12]^c[2]^c[7]^c[39]^c[74]^c[66]^c[67]^c[68]^c[82]^c[113]^c[99]^c[148]^c[126]^c[129]^c[139]^c[160]^c[179]^c[176]^c[219]^c[220]^c[217]^c[258]^c[246]^c[240]^c[312]^c[301]^c[314]^c[343]^c[339]^c[338]^c[394]^c[379]^c[370]^c[421]^c[405]^c[420]^c[474]^c[468]^c[442]^c[444]^c[503]^c[519]^c[512]^c[552]^c[554]^c[543]^c[575]^c[582]^c[592]^c[637]^c[605]^c[600]^c[649]^c[651]^c[663]^c[702]^c[683]^c[687]^c[732]^c[745]^c[736]^c[795]^c[799]^c[769]^c[808]^c[815]^c[818]^c[834]^c[851]^c[840]^c[847]; //row: 17 d[i2+17*Zc]=c[16]^c[586]^c[647]^c[690]^c[867]; //row: 18 d[i2+18*Zc]=c[59]^c[493]^c[530]^c[740]^c[774]; //row: 19 d[i2+19*Zc]=c[23]^c[60]^c[300]^c[349]^c[400]; //row: 20 d[i2+20*Zc]=c[2]^c[32]^c[37]^c[29]^c[20]^c[64]^c[56]^c[57]^c[112]^c[103]^c[89]^c[138]^c[156]^c[159]^c[121]^c[190]^c[169]^c[166]^c[209]^c[210]^c[207]^c[248]^c[276]^c[270]^c[302]^c[291]^c[304]^c[333]^c[329]^c[328]^c[384]^c[369]^c[360]^c[399]^c[411]^c[435]^c[410]^c[464]^c[458]^c[472]^c[449]^c[493]^c[509]^c[502]^c[542]^c[544]^c[533]^c[565]^c[572]^c[582]^c[627]^c[635]^c[630]^c[679]^c[641]^c[653]^c[692]^c[713]^c[717]^c[722]^c[735]^c[726]^c[785]^c[789]^c[799]^c[838]^c[805]^c[808]^c[841]^c[870]^c[877]; //row: 21 d[i2+21*Zc]=c[78]^c[214]^c[651]^c[802]^c[862]; //row: 22 d[i2+22*Zc]=c[16]^c[499]^c[534]^c[715]; //row: 23 d[i2+23*Zc]=c[48]^c[89]^c[412]^c[744]; //row: 24 d[i2+24*Zc]=c[33]^c[23]^c[28]^c[20]^c[8]^c[55]^c[47]^c[48]^c[103]^c[94]^c[80]^c[129]^c[147]^c[150]^c[159]^c[181]^c[160]^c[197]^c[189]^c[200]^c[201]^c[238]^c[279]^c[267]^c[261]^c[293]^c[282]^c[295]^c[324]^c[320]^c[359]^c[375]^c[360]^c[391]^c[402]^c[426]^c[401]^c[455]^c[449]^c[463]^c[466]^c[484]^c[500]^c[493]^c[533]^c[535]^c[524]^c[596]^c[563]^c[573]^c[618]^c[626]^c[621]^c[670]^c[672]^c[644]^c[683]^c[704]^c[708]^c[753]^c[726]^c[757]^c[776]^c[780]^c[790]^c[829]^c[836]^c[839]^c[872]^c[861]^c[868]; //row: 25 d[i2+25*Zc]=c[51]^c[254]^c[295]^c[565]; //row: 26 d[i2+26*Zc]=c[29]^c[109]^c[197]^c[626]; //row: 27 d[i2+27*Zc]=c[49]^c[268]^c[343]; //row: 28 d[i2+28*Zc]=c[10]^c[172]^c[769]^c[873]; //row: 29 d[i2+29*Zc]=c[22]^c[12]^c[17]^c[8]^c[9]^c[44]^c[76]^c[76]^c[77]^c[66]^c[92]^c[83]^c[109]^c[158]^c[136]^c[138]^c[139]^c[170]^c[189]^c[185]^c[186]^c[229]^c[230]^c[227]^c[268]^c[256]^c[249]^c[250]^c[282]^c[311]^c[283]^c[284]^c[353]^c[349]^c[347]^c[348]^c[364]^c[389]^c[380]^c[431]^c[415]^c[429]^c[430]^c[444]^c[478]^c[451]^c[452]^c[513]^c[489]^c[481]^c[482]^c[522]^c[524]^c[552]^c[553]^c[585]^c[592]^c[561]^c[562]^c[587]^c[607]^c[615]^c[610]^c[659]^c[661]^c[672]^c[673]^c[712]^c[693]^c[696]^c[697]^c[742]^c[755]^c[745]^c[746]^c[756]^c[765]^c[769]^c[779]^c[818]^c[825]^c[827]^c[828]^c[861]^c[850]^c[856]^c[857]; //row: 30 d[i2+30*Zc]=c[8]^c[38]^c[2]^c[3]^c[34]^c[35]^c[10]^c[70]^c[61]^c[62]^c[62]^c[63]^c[118]^c[109]^c[94]^c[95]^c[144]^c[122]^c[124]^c[125]^c[196]^c[174]^c[175]^c[171]^c[172]^c[215]^c[216]^c[212]^c[213]^c[254]^c[241]^c[242]^c[275]^c[276]^c[308]^c[296]^c[297]^c[309]^c[310]^c[339]^c[334]^c[335]^c[333]^c[334]^c[390]^c[375]^c[365]^c[366]^c[417]^c[400]^c[401]^c[415]^c[416]^c[422]^c[470]^c[464]^c[477]^c[478]^c[499]^c[515]^c[507]^c[508]^c[548]^c[549]^c[550]^c[538]^c[539]^c[544]^c[571]^c[577]^c[578]^c[587]^c[588]^c[633]^c[601]^c[635]^c[636]^c[645]^c[647]^c[658]^c[659]^c[698]^c[718]^c[719]^c[682]^c[683]^c[728]^c[740]^c[741]^c[731]^c[732]^c[791]^c[795]^c[764]^c[765]^c[804]^c[810]^c[811]^c[813]^c[814]^c[847]^c[876]^c[842]^c[843]; //row: 31 d[i2+31*Zc]=c[18]^c[35]^c[8]^c[25]^c[13]^c[30]^c[5]^c[21]^c[22]^c[40]^c[57]^c[72]^c[49]^c[73]^c[49]^c[50]^c[61]^c[88]^c[105]^c[119]^c[96]^c[105]^c[82]^c[154]^c[131]^c[132]^c[149]^c[135]^c[151]^c[152]^c[166]^c[183]^c[185]^c[162]^c[182]^c[198]^c[199]^c[225]^c[202]^c[226]^c[203]^c[223]^c[200]^c[264]^c[241]^c[252]^c[269]^c[246]^c[262]^c[263]^c[318]^c[295]^c[307]^c[284]^c[280]^c[296]^c[297]^c[307]^c[349]^c[326]^c[345]^c[322]^c[344]^c[320]^c[321]^c[360]^c[377]^c[385]^c[362]^c[376]^c[393]^c[427]^c[404]^c[411]^c[428]^c[426]^c[402]^c[403]^c[440]^c[457]^c[474]^c[451]^c[448]^c[464]^c[465]^c[509]^c[486]^c[485]^c[502]^c[518]^c[494]^c[495]^c[558]^c[535]^c[520]^c[537]^c[549]^c[525]^c[526]^c[581]^c[598]^c[588]^c[565]^c[598]^c[574]^c[575]^c[603]^c[620]^c[611]^c[628]^c[606]^c[623]^c[655]^c[672]^c[657]^c[674]^c[669]^c[645]^c[646]^c[708]^c[685]^c[689]^c[706]^c[693]^c[709]^c[710]^c[738]^c[755]^c[751]^c[728]^c[742]^c[758]^c[759]^c[761]^c[778]^c[765]^c[782]^c[775]^c[792]^c[814]^c[831]^c[821]^c[838]^c[824]^c[800]^c[801]^c[857]^c[874]^c[846]^c[863]^c[853]^c[869]^c[870]; //row: 32 d[i2+32*Zc]=c[10]^c[0]^c[4]^c[5]^c[36]^c[37]^c[9]^c[72]^c[63]^c[64]^c[64]^c[65]^c[80]^c[111]^c[96]^c[97]^c[146]^c[124]^c[126]^c[127]^c[198]^c[176]^c[177]^c[173]^c[174]^c[217]^c[218]^c[214]^c[215]^c[256]^c[243]^c[244]^c[277]^c[278]^c[310]^c[298]^c[299]^c[311]^c[312]^c[341]^c[336]^c[337]^c[335]^c[336]^c[392]^c[377]^c[367]^c[368]^c[419]^c[402]^c[403]^c[417]^c[418]^c[472]^c[466]^c[479]^c[440]^c[501]^c[517]^c[509]^c[510]^c[501]^c[550]^c[551]^c[552]^c[540]^c[541]^c[573]^c[579]^c[580]^c[589]^c[590]^c[590]^c[635]^c[603]^c[637]^c[638]^c[647]^c[649]^c[660]^c[661]^c[700]^c[680]^c[681]^c[684]^c[685]^c[730]^c[742]^c[743]^c[733]^c[734]^c[793]^c[797]^c[766]^c[767]^c[806]^c[812]^c[813]^c[815]^c[816]^c[849]^c[878]^c[844]^c[845]; //row: 33 d[i2+33*Zc]=c[49]^c[99]^c[459]^c[872]; //row: 34 d[i2+34*Zc]=c[26]^c[295]^c[604]^c[683]; //row: 35 d[i2+35*Zc]=c[37]^c[27]^c[32]^c[24]^c[59]^c[51]^c[52]^c[46]^c[107]^c[98]^c[84]^c[133]^c[151]^c[154]^c[185]^c[164]^c[161]^c[204]^c[205]^c[202]^c[243]^c[271]^c[265]^c[277]^c[297]^c[286]^c[299]^c[328]^c[324]^c[323]^c[379]^c[364]^c[395]^c[406]^c[430]^c[405]^c[459]^c[453]^c[467]^c[488]^c[504]^c[497]^c[494]^c[537]^c[539]^c[528]^c[560]^c[567]^c[577]^c[622]^c[630]^c[625]^c[674]^c[676]^c[648]^c[687]^c[708]^c[712]^c[757]^c[730]^c[721]^c[780]^c[784]^c[794]^c[833]^c[800]^c[803]^c[876]^c[865]^c[872]; //row: 36 d[i2+36*Zc]=c[18]^c[578]^c[617]^c[759]; //row: 37 d[i2+37*Zc]=c[27]^c[28]^c[18]^c[23]^c[15]^c[49]^c[50]^c[42]^c[43]^c[57]^c[97]^c[98]^c[89]^c[115]^c[123]^c[124]^c[142]^c[145]^c[176]^c[195]^c[192]^c[234]^c[235]^c[236]^c[233]^c[273]^c[274]^c[262]^c[256]^c[288]^c[317]^c[290]^c[359]^c[355]^c[354]^c[369]^c[370]^c[395]^c[386]^c[436]^c[437]^c[421]^c[436]^c[449]^c[450]^c[444]^c[458]^c[518]^c[519]^c[495]^c[488]^c[527]^c[528]^c[530]^c[559]^c[534]^c[591]^c[598]^c[568]^c[612]^c[613]^c[621]^c[616]^c[664]^c[665]^c[667]^c[679]^c[718]^c[699]^c[703]^c[747]^c[748]^c[721]^c[752]^c[770]^c[771]^c[775]^c[785]^c[823]^c[824]^c[831]^c[834]^c[866]^c[867]^c[856]^c[863]; //row: 38 d[i2+38*Zc]=c[30]^c[378]^c[423]^c[500]; //row: 39 d[i2+39*Zc]=c[61]^c[156]^c[311]^c[767]; //row: 40 d[i2+40*Zc]=c[31]^c[359]^c[716]; //row: 41 d[i2+41*Zc]=c[73]^c[126]^c[363]^c[726]; //row: 42 d[i2+42*Zc]=c[39]^c[29]^c[33]^c[34]^c[25]^c[26]^c[25]^c[61]^c[52]^c[53]^c[53]^c[54]^c[109]^c[100]^c[85]^c[86]^c[135]^c[153]^c[155]^c[156]^c[187]^c[165]^c[166]^c[162]^c[163]^c[184]^c[206]^c[207]^c[203]^c[204]^c[245]^c[272]^c[273]^c[266]^c[267]^c[299]^c[287]^c[288]^c[300]^c[301]^c[330]^c[325]^c[326]^c[324]^c[325]^c[381]^c[366]^c[396]^c[397]^c[408]^c[431]^c[432]^c[406]^c[407]^c[461]^c[455]^c[468]^c[469]^c[490]^c[506]^c[498]^c[499]^c[539]^c[540]^c[541]^c[529]^c[530]^c[562]^c[568]^c[569]^c[578]^c[579]^c[624]^c[632]^c[626]^c[627]^c[676]^c[678]^c[649]^c[650]^c[689]^c[709]^c[710]^c[713]^c[714]^c[759]^c[731]^c[732]^c[722]^c[723]^c[782]^c[786]^c[795]^c[796]^c[835]^c[801]^c[802]^c[804]^c[805]^c[878]^c[867]^c[873]^c[874]; //row: 43 d[i2+43*Zc]=c[15]^c[5]^c[10]^c[1]^c[2]^c[77]^c[69]^c[69]^c[70]^c[67]^c[85]^c[116]^c[102]^c[151]^c[129]^c[131]^c[132]^c[163]^c[182]^c[178]^c[179]^c[222]^c[223]^c[220]^c[261]^c[249]^c[242]^c[243]^c[315]^c[304]^c[316]^c[317]^c[346]^c[342]^c[340]^c[341]^c[397]^c[382]^c[373]^c[424]^c[408]^c[422]^c[423]^c[477]^c[471]^c[444]^c[445]^c[506]^c[482]^c[514]^c[515]^c[555]^c[557]^c[545]^c[546]^c[578]^c[585]^c[594]^c[595]^c[600]^c[608]^c[603]^c[652]^c[654]^c[665]^c[666]^c[668]^c[705]^c[686]^c[689]^c[690]^c[735]^c[748]^c[738]^c[739]^c[735]^c[798]^c[762]^c[772]^c[811]^c[818]^c[820]^c[821]^c[854]^c[843]^c[849]^c[850]; //row: 44 d[i2+44*Zc]=c[12]^c[2]^c[7]^c[39]^c[33]^c[74]^c[66]^c[67]^c[82]^c[113]^c[99]^c[148]^c[126]^c[129]^c[160]^c[179]^c[176]^c[219]^c[220]^c[217]^c[258]^c[246]^c[240]^c[312]^c[301]^c[314]^c[306]^c[343]^c[339]^c[338]^c[394]^c[379]^c[370]^c[378]^c[421]^c[405]^c[420]^c[474]^c[468]^c[442]^c[503]^c[519]^c[512]^c[552]^c[554]^c[543]^c[575]^c[582]^c[592]^c[637]^c[605]^c[600]^c[649]^c[651]^c[663]^c[702]^c[683]^c[687]^c[732]^c[745]^c[736]^c[795]^c[799]^c[769]^c[808]^c[815]^c[818]^c[851]^c[840]^c[847]; //row: 45 d[i2+45*Zc]=c[60]^c[267]^c[405]; } break; case 44: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[29]^c[32]^c[5]^c[8]^c[73]^c[78]^c[49]^c[122]^c[92]^c[124]^c[153]^c[139]^c[136]^c[205]^c[213]^c[190]^c[250]^c[223]^c[242]^c[296]^c[264]^c[270]^c[331]^c[347]^c[341]^c[389]^c[368]^c[354]^c[418]^c[401]^c[425]^c[469]^c[478]^c[457]^c[484]^c[518]^c[509]^c[558]^c[560]^c[564]^c[596]^c[593]^c[576]^c[641]^c[637]^c[624]^c[668]^c[681]^c[696]^c[742]^c[740]^c[732]^c[748]^c[790]^c[786]^c[831]^c[822]^c[802]^c[870]^c[844]^c[869]^c[882]^c[886]^c[912]^c[935]^c[961]^c[956]; //row: 1 d[i2+1*Zc]=c[29]^c[30]^c[33]^c[6]^c[9]^c[73]^c[74]^c[79]^c[50]^c[122]^c[123]^c[93]^c[125]^c[153]^c[154]^c[140]^c[137]^c[206]^c[214]^c[191]^c[250]^c[251]^c[224]^c[243]^c[296]^c[297]^c[265]^c[271]^c[332]^c[348]^c[342]^c[390]^c[369]^c[355]^c[418]^c[419]^c[402]^c[426]^c[469]^c[470]^c[479]^c[458]^c[484]^c[485]^c[519]^c[510]^c[558]^c[559]^c[561]^c[565]^c[596]^c[597]^c[594]^c[577]^c[642]^c[638]^c[625]^c[668]^c[669]^c[682]^c[697]^c[742]^c[743]^c[741]^c[733]^c[749]^c[791]^c[787]^c[831]^c[832]^c[823]^c[803]^c[870]^c[871]^c[845]^c[870]^c[882]^c[883]^c[887]^c[913]^c[935]^c[936]^c[962]^c[957]; //row: 2 d[i2+2*Zc]=c[30]^c[33]^c[5]^c[6]^c[8]^c[9]^c[74]^c[78]^c[79]^c[49]^c[50]^c[123]^c[93]^c[124]^c[125]^c[154]^c[140]^c[136]^c[137]^c[206]^c[213]^c[214]^c[190]^c[191]^c[251]^c[224]^c[242]^c[243]^c[297]^c[264]^c[265]^c[270]^c[271]^c[332]^c[347]^c[348]^c[341]^c[342]^c[390]^c[368]^c[369]^c[354]^c[355]^c[419]^c[402]^c[425]^c[426]^c[470]^c[478]^c[479]^c[457]^c[458]^c[485]^c[519]^c[509]^c[510]^c[559]^c[561]^c[564]^c[565]^c[597]^c[593]^c[594]^c[576]^c[577]^c[642]^c[637]^c[638]^c[624]^c[625]^c[669]^c[682]^c[696]^c[697]^c[743]^c[741]^c[732]^c[733]^c[749]^c[790]^c[791]^c[786]^c[787]^c[832]^c[822]^c[823]^c[802]^c[803]^c[871]^c[845]^c[869]^c[870]^c[883]^c[886]^c[887]^c[912]^c[913]^c[936]^c[962]^c[956]^c[957]; //row: 3 d[i2+3*Zc]=c[30]^c[33]^c[6]^c[8]^c[9]^c[74]^c[79]^c[49]^c[50]^c[123]^c[93]^c[125]^c[154]^c[140]^c[136]^c[137]^c[206]^c[214]^c[190]^c[191]^c[251]^c[224]^c[243]^c[297]^c[265]^c[270]^c[271]^c[332]^c[348]^c[341]^c[342]^c[390]^c[369]^c[354]^c[355]^c[419]^c[402]^c[426]^c[470]^c[479]^c[457]^c[458]^c[485]^c[519]^c[509]^c[510]^c[559]^c[561]^c[564]^c[565]^c[597]^c[594]^c[576]^c[577]^c[642]^c[638]^c[624]^c[625]^c[669]^c[682]^c[697]^c[743]^c[741]^c[732]^c[733]^c[749]^c[791]^c[786]^c[787]^c[832]^c[823]^c[802]^c[803]^c[871]^c[845]^c[870]^c[883]^c[887]^c[912]^c[913]^c[936]^c[962]^c[956]^c[957]; //row: 4 d[i2+4*Zc]=c[41]^c[79]; //row: 5 d[i2+5*Zc]=c[4]^c[7]^c[24]^c[27]^c[42]^c[48]^c[53]^c[68]^c[85]^c[97]^c[111]^c[99]^c[172]^c[158]^c[155]^c[162]^c[180]^c[188]^c[209]^c[225]^c[242]^c[261]^c[271]^c[283]^c[289]^c[350]^c[322]^c[316]^c[364]^c[387]^c[373]^c[437]^c[420]^c[400]^c[444]^c[453]^c[476]^c[503]^c[493]^c[484]^c[533]^c[535]^c[539]^c[541]^c[615]^c[612]^c[595]^c[616]^c[656]^c[643]^c[687]^c[700]^c[671]^c[717]^c[715]^c[707]^c[734]^c[767]^c[765]^c[761]^c[806]^c[797]^c[821]^c[845]^c[863]^c[844]^c[901]^c[905]^c[887]^c[954]^c[936]^c[931]^c[961]; //row: 6 d[i2+6*Zc]=c[29]^c[292]^c[461]^c[494]^c[611]^c[765]^c[811]^c[920]; //row: 7 d[i2+7*Zc]=c[2]^c[58]^c[179]^c[340]^c[390]^c[654]; //row: 8 d[i2+8*Zc]=c[35]^c[10]^c[38]^c[13]^c[11]^c[29]^c[30]^c[14]^c[32]^c[33]^c[39]^c[79]^c[54]^c[84]^c[58]^c[59]^c[55]^c[73]^c[74]^c[74]^c[128]^c[103]^c[98]^c[117]^c[130]^c[104]^c[105]^c[159]^c[134]^c[145]^c[164]^c[142]^c[160]^c[161]^c[153]^c[211]^c[186]^c[219]^c[193]^c[194]^c[196]^c[214]^c[215]^c[256]^c[231]^c[229]^c[248]^c[248]^c[222]^c[223]^c[302]^c[277]^c[270]^c[288]^c[289]^c[276]^c[294]^c[295]^c[337]^c[312]^c[309]^c[327]^c[328]^c[347]^c[321]^c[322]^c[395]^c[370]^c[374]^c[392]^c[393]^c[360]^c[378]^c[379]^c[424]^c[399]^c[407]^c[426]^c[431]^c[405]^c[406]^c[475]^c[450]^c[440]^c[458]^c[459]^c[463]^c[481]^c[482]^c[490]^c[509]^c[524]^c[499]^c[515]^c[489]^c[490]^c[564]^c[539]^c[566]^c[541]^c[570]^c[544]^c[545]^c[531]^c[602]^c[577]^c[599]^c[573]^c[574]^c[582]^c[600]^c[601]^c[647]^c[622]^c[643]^c[617]^c[618]^c[630]^c[648]^c[649]^c[674]^c[693]^c[687]^c[662]^c[702]^c[676]^c[677]^c[704]^c[723]^c[746]^c[721]^c[738]^c[712]^c[713]^c[707]^c[754]^c[773]^c[752]^c[770]^c[771]^c[748]^c[766]^c[767]^c[793]^c[812]^c[828]^c[802]^c[803]^c[808]^c[826]^c[827]^c[876]^c[851]^c[850]^c[869]^c[875]^c[849]^c[850]^c[852]^c[888]^c[907]^c[892]^c[910]^c[911]^c[918]^c[892]^c[893]^c[941]^c[960]^c[967]^c[942]^c[962]^c[936]^c[937]^c[938]; //row: 9 d[i2+9*Zc]=c[23]^c[87]^c[468]^c[506]^c[575]^c[767]^c[814]^c[908]; //row: 10 d[i2+10*Zc]=c[86]^c[120]^c[202]^c[318]^c[356]^c[618]; //row: 11 d[i2+11*Zc]=c[15]^c[1]^c[2]^c[18]^c[5]^c[35]^c[22]^c[38]^c[25]^c[24]^c[59]^c[45]^c[46]^c[64]^c[51]^c[79]^c[66]^c[57]^c[108]^c[94]^c[95]^c[122]^c[109]^c[110]^c[97]^c[139]^c[169]^c[170]^c[169]^c[156]^c[166]^c[153]^c[191]^c[178]^c[199]^c[186]^c[176]^c[207]^c[236]^c[222]^c[223]^c[253]^c[240]^c[228]^c[259]^c[282]^c[268]^c[269]^c[294]^c[281]^c[300]^c[287]^c[317]^c[348]^c[333]^c[320]^c[327]^c[314]^c[375]^c[362]^c[354]^c[385]^c[384]^c[371]^c[404]^c[434]^c[435]^c[431]^c[418]^c[411]^c[398]^c[455]^c[441]^c[442]^c[464]^c[451]^c[443]^c[474]^c[514]^c[500]^c[501]^c[504]^c[491]^c[495]^c[526]^c[544]^c[530]^c[531]^c[546]^c[533]^c[550]^c[537]^c[551]^c[582]^c[612]^c[613]^c[579]^c[610]^c[606]^c[593]^c[627]^c[658]^c[623]^c[654]^c[654]^c[641]^c[698]^c[684]^c[685]^c[667]^c[698]^c[682]^c[669]^c[728]^c[714]^c[715]^c[726]^c[713]^c[718]^c[705]^c[746]^c[778]^c[765]^c[776]^c[763]^c[772]^c[759]^c[817]^c[803]^c[804]^c[808]^c[795]^c[832]^c[819]^c[856]^c[842]^c[843]^c[874]^c[861]^c[855]^c[842]^c[912]^c[898]^c[899]^c[916]^c[903]^c[898]^c[885]^c[965]^c[951]^c[952]^c[947]^c[934]^c[942]^c[929]^c[957]; //row: 12 d[i2+12*Zc]=c[34]^c[84]^c[449]^c[505]^c[615]^c[823]; //row: 13 d[i2+13*Zc]=c[22]^c[23]^c[26]^c[43]^c[2]^c[2]^c[66]^c[67]^c[72]^c[87]^c[115]^c[116]^c[130]^c[118]^c[146]^c[147]^c[133]^c[174]^c[162]^c[199]^c[207]^c[184]^c[243]^c[244]^c[261]^c[236]^c[289]^c[290]^c[302]^c[264]^c[325]^c[341]^c[335]^c[308]^c[383]^c[362]^c[392]^c[411]^c[412]^c[439]^c[419]^c[462]^c[463]^c[472]^c[451]^c[521]^c[522]^c[512]^c[503]^c[551]^c[552]^c[554]^c[558]^c[589]^c[590]^c[587]^c[614]^c[635]^c[631]^c[618]^c[661]^c[662]^c[675]^c[690]^c[735]^c[736]^c[734]^c[726]^c[786]^c[784]^c[780]^c[824]^c[825]^c[816]^c[796]^c[863]^c[864]^c[838]^c[863]^c[919]^c[920]^c[880]^c[906]^c[885]^c[928]^c[929]^c[955]^c[950]; //row: 14 d[i2+14*Zc]=c[21]^c[541]^c[672]^c[727]^c[769]^c[957]; //row: 15 d[i2+15*Zc]=c[11]^c[14]^c[31]^c[33]^c[34]^c[43]^c[55]^c[60]^c[74]^c[75]^c[83]^c[104]^c[118]^c[106]^c[135]^c[165]^c[161]^c[162]^c[187]^c[195]^c[215]^c[216]^c[232]^c[249]^c[224]^c[278]^c[290]^c[295]^c[296]^c[313]^c[329]^c[322]^c[323]^c[371]^c[394]^c[379]^c[380]^c[400]^c[427]^c[407]^c[451]^c[460]^c[482]^c[483]^c[454]^c[510]^c[500]^c[490]^c[491]^c[540]^c[542]^c[545]^c[546]^c[578]^c[575]^c[601]^c[602]^c[608]^c[623]^c[619]^c[649]^c[650]^c[694]^c[663]^c[678]^c[724]^c[722]^c[713]^c[714]^c[774]^c[772]^c[767]^c[768]^c[813]^c[804]^c[827]^c[828]^c[835]^c[852]^c[870]^c[851]^c[908]^c[912]^c[893]^c[894]^c[961]^c[943]^c[937]^c[938]; //row: 16 d[i2+16*Zc]=c[11]^c[14]^c[31]^c[34]^c[55]^c[60]^c[75]^c[57]^c[104]^c[118]^c[106]^c[135]^c[165]^c[162]^c[160]^c[187]^c[195]^c[216]^c[232]^c[249]^c[224]^c[278]^c[290]^c[296]^c[313]^c[329]^c[323]^c[371]^c[394]^c[380]^c[400]^c[427]^c[407]^c[451]^c[460]^c[483]^c[510]^c[500]^c[491]^c[507]^c[540]^c[542]^c[546]^c[578]^c[575]^c[602]^c[623]^c[619]^c[650]^c[694]^c[663]^c[678]^c[724]^c[722]^c[714]^c[774]^c[772]^c[768]^c[813]^c[804]^c[828]^c[852]^c[870]^c[851]^c[908]^c[912]^c[894]^c[902]^c[961]^c[943]^c[938]; //row: 17 d[i2+17*Zc]=c[21]^c[623]^c[730]^c[775]^c[937]; //row: 18 d[i2+18*Zc]=c[46]^c[549]^c[597]^c[796]^c[864]; //row: 19 d[i2+19*Zc]=c[42]^c[65]^c[322]^c[389]^c[467]; //row: 20 d[i2+20*Zc]=c[15]^c[18]^c[35]^c[38]^c[0]^c[59]^c[64]^c[79]^c[108]^c[122]^c[110]^c[139]^c[169]^c[166]^c[152]^c[191]^c[199]^c[176]^c[236]^c[253]^c[228]^c[282]^c[294]^c[300]^c[317]^c[333]^c[327]^c[375]^c[354]^c[384]^c[404]^c[431]^c[411]^c[418]^c[455]^c[464]^c[443]^c[514]^c[504]^c[495]^c[507]^c[544]^c[546]^c[550]^c[582]^c[579]^c[606]^c[627]^c[623]^c[654]^c[698]^c[667]^c[682]^c[728]^c[726]^c[718]^c[778]^c[776]^c[772]^c[817]^c[808]^c[832]^c[856]^c[874]^c[855]^c[912]^c[916]^c[898]^c[965]^c[947]^c[942]; //row: 21 d[i2+21*Zc]=c[73]^c[263]^c[741]^c[890]^c[944]; //row: 22 d[i2+22*Zc]=c[15]^c[552]^c[587]^c[772]; //row: 23 d[i2+23*Zc]=c[61]^c[93]^c[444]^c[831]; //row: 24 d[i2+24*Zc]=c[3]^c[6]^c[23]^c[26]^c[37]^c[47]^c[52]^c[67]^c[96]^c[110]^c[98]^c[171]^c[157]^c[154]^c[169]^c[179]^c[187]^c[208]^c[204]^c[224]^c[241]^c[260]^c[270]^c[282]^c[288]^c[349]^c[321]^c[315]^c[363]^c[386]^c[372]^c[436]^c[419]^c[399]^c[443]^c[452]^c[475]^c[502]^c[492]^c[527]^c[507]^c[532]^c[534]^c[538]^c[614]^c[611]^c[594]^c[659]^c[655]^c[642]^c[686]^c[699]^c[670]^c[716]^c[714]^c[706]^c[766]^c[764]^c[760]^c[805]^c[796]^c[820]^c[844]^c[862]^c[843]^c[900]^c[904]^c[886]^c[953]^c[935]^c[930]; //row: 25 d[i2+25*Zc]=c[58]^c[298]^c[330]^c[625]; //row: 26 d[i2+26*Zc]=c[16]^c[105]^c[181]^c[670]; //row: 27 d[i2+27*Zc]=c[46]^c[281]^c[355]; //row: 28 d[i2+28*Zc]=c[13]^c[176]^c[875]^c[958]; //row: 29 d[i2+29*Zc]=c[5]^c[8]^c[25]^c[27]^c[28]^c[49]^c[54]^c[68]^c[69]^c[52]^c[98]^c[112]^c[100]^c[173]^c[159]^c[155]^c[156]^c[181]^c[189]^c[209]^c[210]^c[226]^c[243]^c[262]^c[272]^c[284]^c[289]^c[290]^c[351]^c[323]^c[316]^c[317]^c[365]^c[388]^c[373]^c[374]^c[438]^c[421]^c[401]^c[445]^c[454]^c[476]^c[477]^c[504]^c[494]^c[484]^c[485]^c[534]^c[536]^c[539]^c[540]^c[572]^c[613]^c[595]^c[596]^c[617]^c[657]^c[643]^c[644]^c[631]^c[688]^c[701]^c[672]^c[718]^c[716]^c[707]^c[708]^c[768]^c[766]^c[761]^c[762]^c[807]^c[798]^c[821]^c[822]^c[814]^c[846]^c[864]^c[845]^c[902]^c[906]^c[887]^c[888]^c[955]^c[937]^c[931]^c[932]; //row: 30 d[i2+30*Zc]=c[22]^c[25]^c[41]^c[42]^c[0]^c[1]^c[38]^c[66]^c[70]^c[71]^c[85]^c[86]^c[115]^c[129]^c[116]^c[117]^c[146]^c[132]^c[172]^c[173]^c[198]^c[205]^c[206]^c[182]^c[183]^c[243]^c[260]^c[234]^c[235]^c[289]^c[300]^c[301]^c[306]^c[307]^c[324]^c[339]^c[340]^c[333]^c[334]^c[382]^c[360]^c[361]^c[390]^c[391]^c[411]^c[438]^c[417]^c[418]^c[462]^c[470]^c[471]^c[449]^c[450]^c[455]^c[521]^c[511]^c[501]^c[502]^c[551]^c[553]^c[556]^c[557]^c[589]^c[585]^c[586]^c[612]^c[613]^c[578]^c[634]^c[629]^c[630]^c[616]^c[617]^c[661]^c[674]^c[688]^c[689]^c[735]^c[733]^c[724]^c[725]^c[785]^c[782]^c[783]^c[778]^c[779]^c[824]^c[814]^c[815]^c[794]^c[795]^c[863]^c[837]^c[861]^c[862]^c[919]^c[922]^c[923]^c[904]^c[905]^c[928]^c[954]^c[948]^c[949]; //row: 31 d[i2+31*Zc]=c[0]^c[32]^c[3]^c[35]^c[20]^c[8]^c[23]^c[10]^c[11]^c[44]^c[76]^c[49]^c[81]^c[64]^c[51]^c[52]^c[56]^c[93]^c[125]^c[107]^c[95]^c[95]^c[127]^c[168]^c[156]^c[154]^c[142]^c[151]^c[138]^c[139]^c[176]^c[208]^c[184]^c[216]^c[205]^c[192]^c[193]^c[221]^c[253]^c[238]^c[226]^c[257]^c[245]^c[267]^c[299]^c[279]^c[267]^c[285]^c[272]^c[273]^c[346]^c[334]^c[318]^c[350]^c[312]^c[343]^c[344]^c[340]^c[360]^c[392]^c[383]^c[371]^c[369]^c[356]^c[357]^c[433]^c[421]^c[416]^c[404]^c[396]^c[428]^c[440]^c[472]^c[449]^c[481]^c[472]^c[459]^c[460]^c[499]^c[487]^c[489]^c[521]^c[524]^c[511]^c[512]^c[529]^c[561]^c[531]^c[563]^c[535]^c[566]^c[567]^c[611]^c[599]^c[608]^c[596]^c[591]^c[578]^c[579]^c[656]^c[644]^c[652]^c[640]^c[639]^c[626]^c[627]^c[683]^c[671]^c[696]^c[684]^c[667]^c[699]^c[713]^c[745]^c[711]^c[743]^c[747]^c[734]^c[735]^c[763]^c[751]^c[761]^c[749]^c[757]^c[788]^c[789]^c[802]^c[834]^c[793]^c[825]^c[817]^c[804]^c[805]^c[841]^c[873]^c[859]^c[847]^c[840]^c[872]^c[897]^c[885]^c[901]^c[889]^c[883]^c[914]^c[915]^c[950]^c[938]^c[932]^c[964]^c[927]^c[958]^c[959]; //row: 32 d[i2+32*Zc]=c[25]^c[28]^c[0]^c[1]^c[3]^c[4]^c[42]^c[69]^c[73]^c[74]^c[44]^c[45]^c[118]^c[88]^c[119]^c[120]^c[149]^c[135]^c[175]^c[132]^c[201]^c[208]^c[209]^c[185]^c[186]^c[246]^c[263]^c[237]^c[238]^c[292]^c[303]^c[304]^c[265]^c[266]^c[327]^c[342]^c[343]^c[336]^c[337]^c[385]^c[363]^c[364]^c[393]^c[394]^c[414]^c[397]^c[420]^c[421]^c[465]^c[473]^c[474]^c[452]^c[453]^c[524]^c[514]^c[504]^c[505]^c[554]^c[556]^c[559]^c[560]^c[528]^c[592]^c[588]^c[589]^c[615]^c[572]^c[637]^c[632]^c[633]^c[619]^c[620]^c[645]^c[664]^c[677]^c[691]^c[692]^c[738]^c[736]^c[727]^c[728]^c[788]^c[785]^c[786]^c[781]^c[782]^c[827]^c[817]^c[818]^c[797]^c[798]^c[866]^c[840]^c[864]^c[865]^c[922]^c[881]^c[882]^c[907]^c[908]^c[931]^c[957]^c[951]^c[952]; //row: 33 d[i2+33*Zc]=c[55]^c[127]^c[492]^c[936]; //row: 34 d[i2+34*Zc]=c[15]^c[319]^c[683]^c[757]; //row: 35 d[i2+35*Zc]=c[33]^c[36]^c[9]^c[12]^c[77]^c[82]^c[53]^c[55]^c[126]^c[96]^c[128]^c[157]^c[143]^c[140]^c[209]^c[217]^c[194]^c[254]^c[227]^c[246]^c[300]^c[268]^c[274]^c[297]^c[335]^c[351]^c[345]^c[393]^c[372]^c[358]^c[422]^c[405]^c[429]^c[473]^c[482]^c[461]^c[488]^c[522]^c[513]^c[562]^c[564]^c[568]^c[546]^c[600]^c[597]^c[580]^c[645]^c[641]^c[628]^c[672]^c[685]^c[700]^c[746]^c[744]^c[736]^c[752]^c[750]^c[790]^c[835]^c[826]^c[806]^c[874]^c[848]^c[873]^c[886]^c[890]^c[916]^c[939]^c[965]^c[960]; //row: 36 d[i2+36*Zc]=c[2]^c[630]^c[694]^c[803]; //row: 37 d[i2+37*Zc]=c[26]^c[27]^c[30]^c[3]^c[6]^c[70]^c[71]^c[76]^c[47]^c[54]^c[119]^c[120]^c[90]^c[122]^c[150]^c[151]^c[137]^c[134]^c[203]^c[211]^c[188]^c[247]^c[248]^c[221]^c[240]^c[293]^c[294]^c[306]^c[268]^c[329]^c[345]^c[339]^c[387]^c[366]^c[352]^c[415]^c[416]^c[399]^c[423]^c[466]^c[467]^c[476]^c[455]^c[525]^c[526]^c[516]^c[507]^c[555]^c[556]^c[558]^c[562]^c[593]^c[594]^c[591]^c[574]^c[587]^c[639]^c[635]^c[622]^c[665]^c[666]^c[679]^c[694]^c[739]^c[740]^c[738]^c[730]^c[790]^c[788]^c[784]^c[828]^c[829]^c[820]^c[800]^c[867]^c[868]^c[842]^c[867]^c[923]^c[880]^c[884]^c[910]^c[932]^c[933]^c[959]^c[954]; //row: 38 d[i2+38*Zc]=c[31]^c[415]^c[472]^c[553]; //row: 39 d[i2+39*Zc]=c[59]^c[175]^c[344]^c[843]; //row: 40 d[i2+40*Zc]=c[39]^c[368]^c[750]; //row: 41 d[i2+41*Zc]=c[78]^c[164]^c[420]^c[799]; //row: 42 d[i2+42*Zc]=c[3]^c[6]^c[22]^c[23]^c[25]^c[26]^c[23]^c[47]^c[51]^c[52]^c[66]^c[67]^c[96]^c[110]^c[97]^c[98]^c[171]^c[157]^c[153]^c[154]^c[179]^c[186]^c[187]^c[207]^c[208]^c[214]^c[224]^c[241]^c[259]^c[260]^c[270]^c[281]^c[282]^c[287]^c[288]^c[349]^c[320]^c[321]^c[314]^c[315]^c[363]^c[385]^c[386]^c[371]^c[372]^c[436]^c[419]^c[398]^c[399]^c[443]^c[451]^c[452]^c[474]^c[475]^c[502]^c[492]^c[526]^c[527]^c[532]^c[534]^c[537]^c[538]^c[614]^c[610]^c[611]^c[593]^c[594]^c[659]^c[654]^c[655]^c[641]^c[642]^c[686]^c[699]^c[669]^c[670]^c[716]^c[714]^c[705]^c[706]^c[766]^c[763]^c[764]^c[759]^c[760]^c[805]^c[795]^c[796]^c[819]^c[820]^c[844]^c[862]^c[842]^c[843]^c[900]^c[903]^c[904]^c[885]^c[886]^c[953]^c[935]^c[929]^c[930]; //row: 43 d[i2+43*Zc]=c[21]^c[24]^c[41]^c[43]^c[0]^c[65]^c[70]^c[84]^c[85]^c[77]^c[114]^c[128]^c[116]^c[145]^c[175]^c[171]^c[172]^c[197]^c[205]^c[181]^c[182]^c[242]^c[259]^c[234]^c[288]^c[300]^c[305]^c[306]^c[323]^c[339]^c[332]^c[333]^c[381]^c[360]^c[389]^c[390]^c[410]^c[437]^c[417]^c[461]^c[470]^c[448]^c[449]^c[520]^c[510]^c[500]^c[501]^c[550]^c[552]^c[555]^c[556]^c[588]^c[585]^c[611]^c[612]^c[633]^c[629]^c[659]^c[616]^c[660]^c[673]^c[688]^c[734]^c[732]^c[723]^c[724]^c[706]^c[784]^c[782]^c[777]^c[778]^c[823]^c[814]^c[793]^c[794]^c[800]^c[862]^c[836]^c[861]^c[918]^c[922]^c[903]^c[904]^c[927]^c[953]^c[947]^c[948]; //row: 44 d[i2+44*Zc]=c[37]^c[40]^c[13]^c[16]^c[34]^c[81]^c[86]^c[57]^c[130]^c[100]^c[88]^c[161]^c[147]^c[144]^c[213]^c[177]^c[198]^c[258]^c[231]^c[250]^c[304]^c[272]^c[278]^c[339]^c[311]^c[349]^c[331]^c[353]^c[376]^c[362]^c[426]^c[409]^c[433]^c[424]^c[477]^c[442]^c[465]^c[492]^c[526]^c[517]^c[566]^c[568]^c[528]^c[604]^c[601]^c[584]^c[649]^c[645]^c[632]^c[676]^c[689]^c[660]^c[706]^c[704]^c[740]^c[756]^c[754]^c[750]^c[795]^c[830]^c[810]^c[878]^c[852]^c[877]^c[890]^c[894]^c[920]^c[943]^c[925]^c[964]; //row: 45 d[i2+45*Zc]=c[81]^c[286]^c[454]; } break; case 48: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[18]^c[27]^c[12]^c[35]^c[66]^c[57]^c[86]^c[97]^c[123]^c[135]^c[176]^c[168]^c[191]^c[239]^c[235]^c[226]^c[276]^c[287]^c[255]^c[311]^c[304]^c[294]^c[378]^c[362]^c[344]^c[426]^c[399]^c[391]^c[460]^c[465]^c[446]^c[527]^c[512]^c[515]^c[540]^c[534]^c[544]^c[592]^c[581]^c[614]^c[644]^c[631]^c[628]^c[696]^c[711]^c[691]^c[742]^c[722]^c[724]^c[777]^c[785]^c[783]^c[833]^c[850]^c[827]^c[865]^c[911]^c[894]^c[947]^c[954]^c[924]^c[1001]^c[972]^c[998]^c[1017]^c[1023]^c[1028]; //row: 1 d[i2+1*Zc]=c[18]^c[19]^c[28]^c[13]^c[36]^c[66]^c[67]^c[58]^c[87]^c[97]^c[98]^c[124]^c[136]^c[176]^c[177]^c[169]^c[144]^c[192]^c[236]^c[227]^c[276]^c[277]^c[240]^c[256]^c[311]^c[312]^c[305]^c[295]^c[379]^c[363]^c[345]^c[427]^c[400]^c[392]^c[460]^c[461]^c[466]^c[447]^c[527]^c[480]^c[513]^c[516]^c[540]^c[541]^c[535]^c[545]^c[592]^c[593]^c[582]^c[615]^c[644]^c[645]^c[632]^c[629]^c[697]^c[712]^c[692]^c[742]^c[743]^c[723]^c[725]^c[777]^c[778]^c[786]^c[784]^c[834]^c[851]^c[828]^c[865]^c[866]^c[864]^c[895]^c[947]^c[948]^c[955]^c[925]^c[1001]^c[1002]^c[973]^c[999]^c[1017]^c[1018]^c[1024]^c[1029]; //row: 2 d[i2+2*Zc]=c[19]^c[28]^c[12]^c[13]^c[35]^c[36]^c[67]^c[57]^c[58]^c[86]^c[87]^c[98]^c[124]^c[135]^c[136]^c[177]^c[169]^c[191]^c[144]^c[192]^c[235]^c[236]^c[226]^c[227]^c[277]^c[240]^c[255]^c[256]^c[312]^c[304]^c[305]^c[294]^c[295]^c[379]^c[362]^c[363]^c[344]^c[345]^c[427]^c[399]^c[400]^c[391]^c[392]^c[461]^c[466]^c[446]^c[447]^c[480]^c[512]^c[513]^c[515]^c[516]^c[541]^c[535]^c[544]^c[545]^c[593]^c[582]^c[614]^c[615]^c[645]^c[631]^c[632]^c[628]^c[629]^c[697]^c[711]^c[712]^c[691]^c[692]^c[743]^c[723]^c[724]^c[725]^c[778]^c[786]^c[783]^c[784]^c[834]^c[850]^c[851]^c[827]^c[828]^c[866]^c[911]^c[864]^c[894]^c[895]^c[948]^c[955]^c[924]^c[925]^c[1002]^c[972]^c[973]^c[998]^c[999]^c[1018]^c[1024]^c[1028]^c[1029]; //row: 3 d[i2+3*Zc]=c[19]^c[28]^c[13]^c[35]^c[36]^c[67]^c[58]^c[86]^c[87]^c[98]^c[124]^c[136]^c[177]^c[169]^c[191]^c[144]^c[192]^c[236]^c[226]^c[227]^c[277]^c[240]^c[256]^c[312]^c[305]^c[294]^c[295]^c[379]^c[363]^c[344]^c[345]^c[427]^c[400]^c[391]^c[392]^c[461]^c[466]^c[447]^c[480]^c[513]^c[515]^c[516]^c[541]^c[535]^c[544]^c[545]^c[593]^c[582]^c[614]^c[615]^c[645]^c[632]^c[628]^c[629]^c[697]^c[712]^c[691]^c[692]^c[743]^c[723]^c[725]^c[778]^c[786]^c[783]^c[784]^c[834]^c[851]^c[827]^c[828]^c[866]^c[864]^c[894]^c[895]^c[948]^c[955]^c[925]^c[1002]^c[973]^c[998]^c[999]^c[1018]^c[1024]^c[1028]^c[1029]; //row: 4 d[i2+4*Zc]=c[43]^c[84]; //row: 5 d[i2+5*Zc]=c[31]^c[40]^c[25]^c[0]^c[2]^c[79]^c[70]^c[51]^c[61]^c[110]^c[136]^c[100]^c[189]^c[181]^c[156]^c[162]^c[204]^c[200]^c[239]^c[241]^c[252]^c[268]^c[324]^c[317]^c[307]^c[343]^c[375]^c[357]^c[391]^c[412]^c[404]^c[473]^c[478]^c[459]^c[492]^c[525]^c[480]^c[553]^c[547]^c[557]^c[605]^c[594]^c[579]^c[597]^c[657]^c[644]^c[641]^c[709]^c[676]^c[704]^c[755]^c[735]^c[737]^c[790]^c[798]^c[796]^c[768]^c[846]^c[863]^c[840]^c[878]^c[876]^c[907]^c[912]^c[919]^c[937]^c[966]^c[985]^c[963]^c[1030]^c[1036]^c[1041]^c[1010]; //row: 6 d[i2+6*Zc]=c[37]^c[304]^c[480]^c[542]^c[667]^c[828]^c[881]^c[992]; //row: 7 d[i2+7*Zc]=c[8]^c[61]^c[219]^c[380]^c[385]^c[689]; //row: 8 d[i2+8*Zc]=c[37]^c[45]^c[46]^c[6]^c[31]^c[38]^c[39]^c[6]^c[13]^c[14]^c[18]^c[85]^c[93]^c[76]^c[83]^c[84]^c[57]^c[64]^c[65]^c[82]^c[116]^c[124]^c[142]^c[102]^c[106]^c[113]^c[114]^c[147]^c[155]^c[187]^c[147]^c[162]^c[169]^c[170]^c[164]^c[210]^c[218]^c[206]^c[213]^c[214]^c[197]^c[204]^c[205]^c[247]^c[255]^c[258]^c[266]^c[274]^c[281]^c[282]^c[330]^c[290]^c[323]^c[330]^c[331]^c[313]^c[320]^c[321]^c[349]^c[357]^c[381]^c[340]^c[341]^c[363]^c[370]^c[371]^c[397]^c[405]^c[418]^c[425]^c[426]^c[410]^c[417]^c[418]^c[479]^c[439]^c[436]^c[444]^c[465]^c[472]^c[473]^c[498]^c[506]^c[483]^c[490]^c[491]^c[486]^c[493]^c[494]^c[559]^c[567]^c[553]^c[561]^c[563]^c[570]^c[571]^c[611]^c[619]^c[600]^c[608]^c[585]^c[592]^c[593]^c[593]^c[663]^c[671]^c[650]^c[657]^c[658]^c[647]^c[654]^c[655]^c[715]^c[675]^c[682]^c[689]^c[690]^c[710]^c[717]^c[718]^c[761]^c[721]^c[741]^c[749]^c[743]^c[750]^c[751]^c[796]^c[804]^c[804]^c[812]^c[802]^c[809]^c[810]^c[806]^c[852]^c[860]^c[821]^c[828]^c[829]^c[846]^c[853]^c[854]^c[884]^c[892]^c[882]^c[889]^c[890]^c[865]^c[872]^c[873]^c[918]^c[926]^c[925]^c[933]^c[943]^c[950]^c[951]^c[943]^c[972]^c[980]^c[991]^c[998]^c[999]^c[969]^c[976]^c[977]^c[1036]^c[1044]^c[1042]^c[1050]^c[1047]^c[1054]^c[1055]^c[1039]; //row: 9 d[i2+9*Zc]=c[29]^c[87]^c[512]^c[564]^c[632]^c[830]^c[878]^c[993]; //row: 10 d[i2+10*Zc]=c[52]^c[98]^c[225]^c[350]^c[430]^c[689]; //row: 11 d[i2+11*Zc]=c[16]^c[37]^c[38]^c[25]^c[47]^c[10]^c[32]^c[33]^c[7]^c[47]^c[64]^c[85]^c[86]^c[55]^c[77]^c[84]^c[58]^c[53]^c[143]^c[116]^c[117]^c[121]^c[143]^c[133]^c[107]^c[174]^c[147]^c[148]^c[166]^c[188]^c[189]^c[163]^c[237]^c[211]^c[233]^c[207]^c[224]^c[198]^c[274]^c[247]^c[248]^c[285]^c[259]^c[253]^c[275]^c[309]^c[330]^c[331]^c[302]^c[324]^c[292]^c[314]^c[376]^c[350]^c[360]^c[382]^c[342]^c[364]^c[424]^c[398]^c[397]^c[419]^c[389]^c[411]^c[458]^c[479]^c[432]^c[463]^c[437]^c[444]^c[466]^c[525]^c[498]^c[499]^c[510]^c[484]^c[513]^c[487]^c[538]^c[559]^c[560]^c[532]^c[554]^c[542]^c[564]^c[590]^c[611]^c[612]^c[579]^c[601]^c[612]^c[586]^c[583]^c[642]^c[663]^c[664]^c[629]^c[651]^c[626]^c[648]^c[694]^c[716]^c[709]^c[683]^c[689]^c[711]^c[740]^c[761]^c[762]^c[720]^c[742]^c[722]^c[744]^c[775]^c[796]^c[797]^c[783]^c[805]^c[781]^c[803]^c[814]^c[831]^c[853]^c[848]^c[822]^c[825]^c[847]^c[911]^c[884]^c[885]^c[909]^c[883]^c[892]^c[866]^c[945]^c[918]^c[919]^c[952]^c[926]^c[922]^c[944]^c[999]^c[972]^c[973]^c[970]^c[992]^c[996]^c[970]^c[1015]^c[1036]^c[1037]^c[1021]^c[1043]^c[1026]^c[1048]^c[1051]; //row: 12 d[i2+12*Zc]=c[28]^c[89]^c[509]^c[567]^c[625]^c[889]; //row: 13 d[i2+13*Zc]=c[4]^c[5]^c[14]^c[47]^c[22]^c[24]^c[52]^c[53]^c[92]^c[73]^c[131]^c[132]^c[110]^c[122]^c[162]^c[163]^c[155]^c[178]^c[176]^c[226]^c[222]^c[213]^c[262]^c[263]^c[274]^c[242]^c[297]^c[298]^c[291]^c[329]^c[365]^c[349]^c[379]^c[361]^c[413]^c[386]^c[426]^c[446]^c[447]^c[452]^c[433]^c[513]^c[514]^c[499]^c[502]^c[574]^c[575]^c[569]^c[531]^c[578]^c[579]^c[616]^c[601]^c[630]^c[631]^c[666]^c[663]^c[683]^c[698]^c[678]^c[728]^c[729]^c[757]^c[759]^c[811]^c[812]^c[772]^c[770]^c[820]^c[837]^c[862]^c[899]^c[900]^c[898]^c[881]^c[933]^c[934]^c[941]^c[959]^c[987]^c[988]^c[1007]^c[985]^c[978]^c[1051]^c[1052]^c[1010]^c[1015]; //row: 14 d[i2+14*Zc]=c[45]^c[583]^c[760]^c[808]^c[826]^c[1019]; //row: 15 d[i2+15*Zc]=c[0]^c[9]^c[42]^c[16]^c[17]^c[0]^c[48]^c[87]^c[67]^c[68]^c[49]^c[127]^c[105]^c[117]^c[158]^c[150]^c[172]^c[173]^c[221]^c[217]^c[207]^c[208]^c[258]^c[269]^c[285]^c[293]^c[334]^c[323]^c[324]^c[360]^c[344]^c[373]^c[374]^c[408]^c[429]^c[420]^c[421]^c[442]^c[447]^c[476]^c[509]^c[494]^c[496]^c[497]^c[497]^c[570]^c[564]^c[573]^c[574]^c[622]^c[611]^c[595]^c[596]^c[626]^c[661]^c[657]^c[658]^c[653]^c[678]^c[693]^c[672]^c[673]^c[724]^c[752]^c[754]^c[807]^c[815]^c[812]^c[813]^c[863]^c[832]^c[856]^c[857]^c[895]^c[893]^c[875]^c[876]^c[870]^c[929]^c[936]^c[954]^c[983]^c[1002]^c[979]^c[980]^c[1047]^c[1053]^c[1009]^c[1010]; //row: 16 d[i2+16*Zc]=c[27]^c[36]^c[21]^c[44]^c[75]^c[66]^c[95]^c[60]^c[106]^c[132]^c[96]^c[185]^c[177]^c[152]^c[145]^c[200]^c[196]^c[235]^c[285]^c[248]^c[264]^c[320]^c[313]^c[303]^c[339]^c[371]^c[353]^c[387]^c[408]^c[400]^c[469]^c[474]^c[455]^c[488]^c[521]^c[524]^c[549]^c[543]^c[553]^c[536]^c[601]^c[590]^c[623]^c[653]^c[640]^c[637]^c[705]^c[672]^c[700]^c[751]^c[731]^c[733]^c[786]^c[794]^c[792]^c[842]^c[859]^c[836]^c[874]^c[872]^c[903]^c[956]^c[915]^c[933]^c[962]^c[981]^c[1007]^c[960]^c[1026]^c[1032]^c[1037]; //row: 17 d[i2+17*Zc]=c[19]^c[686]^c[800]^c[837]^c[1046]; //row: 18 d[i2+18*Zc]=c[81]^c[594]^c[663]^c[899]^c[915]; //row: 19 d[i2+19*Zc]=c[0]^c[68]^c[343]^c[385]^c[484]; //row: 20 d[i2+20*Zc]=c[29]^c[38]^c[23]^c[46]^c[42]^c[77]^c[68]^c[49]^c[108]^c[134]^c[98]^c[187]^c[179]^c[154]^c[157]^c[202]^c[198]^c[237]^c[287]^c[250]^c[266]^c[322]^c[315]^c[305]^c[341]^c[373]^c[355]^c[389]^c[410]^c[402]^c[471]^c[476]^c[457]^c[455]^c[490]^c[523]^c[526]^c[551]^c[545]^c[555]^c[532]^c[603]^c[592]^c[577]^c[655]^c[642]^c[639]^c[707]^c[674]^c[702]^c[753]^c[733]^c[735]^c[788]^c[796]^c[794]^c[844]^c[861]^c[838]^c[876]^c[874]^c[905]^c[958]^c[917]^c[935]^c[964]^c[983]^c[961]^c[1028]^c[1034]^c[1039]; //row: 21 d[i2+21*Zc]=c[60]^c[245]^c[807]^c[980]^c[1008]; //row: 22 d[i2+22*Zc]=c[29]^c[586]^c[664]^c[837]; //row: 23 d[i2+23*Zc]=c[71]^c[136]^c[492]^c[890]; //row: 24 d[i2+24*Zc]=c[12]^c[21]^c[6]^c[29]^c[9]^c[60]^c[51]^c[80]^c[139]^c[117]^c[129]^c[170]^c[162]^c[185]^c[157]^c[233]^c[229]^c[220]^c[234]^c[270]^c[281]^c[249]^c[305]^c[298]^c[288]^c[372]^c[356]^c[338]^c[420]^c[393]^c[385]^c[454]^c[459]^c[440]^c[521]^c[506]^c[509]^c[534]^c[528]^c[538]^c[530]^c[586]^c[623]^c[608]^c[638]^c[625]^c[670]^c[690]^c[705]^c[685]^c[736]^c[764]^c[766]^c[771]^c[779]^c[777]^c[827]^c[844]^c[821]^c[907]^c[905]^c[888]^c[941]^c[948]^c[918]^c[995]^c[966]^c[992]^c[1011]^c[1017]^c[1022]; //row: 25 d[i2+25*Zc]=c[71]^c[304]^c[382]^c[695]; //row: 26 d[i2+26*Zc]=c[22]^c[128]^c[219]^c[759]; //row: 27 d[i2+27*Zc]=c[49]^c[289]^c[388]; //row: 28 d[i2+28*Zc]=c[29]^c[210]^c[915]^c[1041]; //row: 29 d[i2+29*Zc]=c[1]^c[10]^c[43]^c[17]^c[18]^c[49]^c[88]^c[68]^c[69]^c[59]^c[128]^c[106]^c[118]^c[159]^c[151]^c[173]^c[174]^c[222]^c[218]^c[208]^c[209]^c[259]^c[270]^c[286]^c[294]^c[335]^c[324]^c[325]^c[361]^c[345]^c[374]^c[375]^c[409]^c[430]^c[421]^c[422]^c[443]^c[448]^c[477]^c[510]^c[495]^c[497]^c[498]^c[571]^c[565]^c[574]^c[575]^c[623]^c[612]^c[596]^c[597]^c[627]^c[662]^c[658]^c[659]^c[679]^c[694]^c[673]^c[674]^c[676]^c[725]^c[753]^c[755]^c[808]^c[768]^c[813]^c[814]^c[816]^c[833]^c[857]^c[858]^c[896]^c[894]^c[876]^c[877]^c[866]^c[930]^c[937]^c[955]^c[984]^c[1003]^c[980]^c[981]^c[1048]^c[1054]^c[1010]^c[1011]; //row: 30 d[i2+30*Zc]=c[13]^c[22]^c[6]^c[7]^c[29]^c[30]^c[14]^c[61]^c[51]^c[52]^c[80]^c[81]^c[140]^c[118]^c[129]^c[130]^c[171]^c[163]^c[185]^c[186]^c[234]^c[229]^c[230]^c[220]^c[221]^c[271]^c[282]^c[249]^c[250]^c[306]^c[298]^c[299]^c[288]^c[289]^c[373]^c[356]^c[357]^c[338]^c[339]^c[421]^c[393]^c[394]^c[385]^c[386]^c[455]^c[460]^c[440]^c[441]^c[522]^c[506]^c[507]^c[509]^c[510]^c[516]^c[535]^c[529]^c[538]^c[539]^c[587]^c[576]^c[608]^c[609]^c[639]^c[625]^c[626]^c[670]^c[671]^c[643]^c[691]^c[705]^c[706]^c[685]^c[686]^c[737]^c[765]^c[766]^c[767]^c[772]^c[780]^c[777]^c[778]^c[828]^c[844]^c[845]^c[821]^c[822]^c[908]^c[905]^c[906]^c[888]^c[889]^c[942]^c[949]^c[918]^c[919]^c[996]^c[966]^c[967]^c[992]^c[993]^c[1012]^c[1018]^c[1022]^c[1023]; //row: 31 d[i2+31*Zc]=c[36]^c[35]^c[45]^c[44]^c[30]^c[29]^c[5]^c[3]^c[4]^c[84]^c[83]^c[75]^c[74]^c[56]^c[54]^c[55]^c[51]^c[115]^c[114]^c[141]^c[140]^c[105]^c[104]^c[146]^c[145]^c[186]^c[185]^c[161]^c[159]^c[160]^c[209]^c[208]^c[205]^c[204]^c[196]^c[194]^c[195]^c[246]^c[245]^c[257]^c[256]^c[273]^c[272]^c[329]^c[328]^c[322]^c[321]^c[312]^c[310]^c[311]^c[348]^c[347]^c[380]^c[379]^c[362]^c[360]^c[361]^c[358]^c[396]^c[395]^c[417]^c[416]^c[409]^c[407]^c[408]^c[478]^c[477]^c[435]^c[434]^c[464]^c[463]^c[497]^c[496]^c[482]^c[481]^c[485]^c[483]^c[484]^c[558]^c[557]^c[552]^c[551]^c[562]^c[560]^c[561]^c[610]^c[609]^c[599]^c[598]^c[584]^c[582]^c[583]^c[662]^c[661]^c[649]^c[648]^c[646]^c[644]^c[645]^c[714]^c[713]^c[681]^c[680]^c[709]^c[707]^c[708]^c[760]^c[759]^c[740]^c[739]^c[742]^c[741]^c[795]^c[794]^c[803]^c[802]^c[801]^c[799]^c[800]^c[851]^c[850]^c[820]^c[819]^c[845]^c[843]^c[844]^c[883]^c[882]^c[881]^c[880]^c[864]^c[910]^c[911]^c[917]^c[916]^c[924]^c[923]^c[942]^c[941]^c[971]^c[970]^c[990]^c[989]^c[968]^c[966]^c[967]^c[1035]^c[1034]^c[1041]^c[1040]^c[1046]^c[1044]^c[1045]; //row: 32 d[i2+32*Zc]=c[18]^c[27]^c[11]^c[12]^c[34]^c[35]^c[5]^c[66]^c[56]^c[57]^c[85]^c[86]^c[97]^c[123]^c[134]^c[135]^c[176]^c[168]^c[190]^c[191]^c[239]^c[234]^c[235]^c[225]^c[226]^c[276]^c[287]^c[254]^c[255]^c[311]^c[303]^c[304]^c[293]^c[294]^c[378]^c[361]^c[362]^c[343]^c[344]^c[426]^c[398]^c[399]^c[390]^c[391]^c[460]^c[465]^c[445]^c[446]^c[527]^c[511]^c[512]^c[514]^c[515]^c[540]^c[534]^c[543]^c[544]^c[592]^c[581]^c[613]^c[614]^c[584]^c[644]^c[630]^c[631]^c[627]^c[628]^c[696]^c[710]^c[711]^c[690]^c[691]^c[702]^c[742]^c[722]^c[723]^c[724]^c[777]^c[785]^c[782]^c[783]^c[833]^c[849]^c[850]^c[826]^c[827]^c[865]^c[910]^c[911]^c[893]^c[894]^c[947]^c[954]^c[923]^c[924]^c[1001]^c[971]^c[972]^c[997]^c[998]^c[1017]^c[1023]^c[1027]^c[1028]; //row: 33 d[i2+33*Zc]=c[82]^c[103]^c[552]^c[1016]; //row: 34 d[i2+34*Zc]=c[37]^c[339]^c[729]^c[839]; //row: 35 d[i2+35*Zc]=c[44]^c[5]^c[38]^c[13]^c[92]^c[83]^c[64]^c[79]^c[123]^c[101]^c[113]^c[154]^c[146]^c[169]^c[217]^c[213]^c[204]^c[254]^c[265]^c[281]^c[289]^c[330]^c[320]^c[334]^c[356]^c[340]^c[370]^c[404]^c[425]^c[417]^c[438]^c[443]^c[472]^c[505]^c[490]^c[493]^c[566]^c[560]^c[570]^c[618]^c[607]^c[592]^c[577]^c[670]^c[657]^c[654]^c[674]^c[689]^c[717]^c[720]^c[748]^c[750]^c[803]^c[811]^c[809]^c[859]^c[828]^c[853]^c[891]^c[889]^c[872]^c[925]^c[932]^c[950]^c[979]^c[998]^c[976]^c[1043]^c[1049]^c[1054]; //row: 36 d[i2+36*Zc]=c[17]^c[696]^c[728]^c[884]; //row: 37 d[i2+37*Zc]=c[37]^c[38]^c[47]^c[32]^c[7]^c[85]^c[86]^c[77]^c[58]^c[76]^c[116]^c[117]^c[143]^c[107]^c[147]^c[148]^c[188]^c[163]^c[211]^c[207]^c[198]^c[247]^c[248]^c[259]^c[275]^c[330]^c[331]^c[324]^c[314]^c[350]^c[382]^c[364]^c[398]^c[419]^c[411]^c[479]^c[432]^c[437]^c[466]^c[498]^c[499]^c[484]^c[487]^c[559]^c[560]^c[554]^c[564]^c[611]^c[612]^c[601]^c[586]^c[663]^c[664]^c[651]^c[648]^c[657]^c[716]^c[683]^c[711]^c[761]^c[762]^c[742]^c[744]^c[796]^c[797]^c[805]^c[803]^c[853]^c[822]^c[847]^c[884]^c[885]^c[883]^c[866]^c[918]^c[919]^c[926]^c[944]^c[972]^c[973]^c[992]^c[970]^c[1036]^c[1037]^c[1043]^c[1048]; //row: 38 d[i2+38*Zc]=c[40]^c[464]^c[480]^c[597]; //row: 39 d[i2+39*Zc]=c[65]^c[188]^c[345]^c[920]; //row: 40 d[i2+40*Zc]=c[30]^c[420]^c[839]; //row: 41 d[i2+41*Zc]=c[51]^c[169]^c[474]^c[911]; //row: 42 d[i2+42*Zc]=c[45]^c[6]^c[38]^c[39]^c[13]^c[14]^c[16]^c[93]^c[83]^c[84]^c[64]^c[65]^c[124]^c[102]^c[113]^c[114]^c[155]^c[147]^c[169]^c[170]^c[218]^c[213]^c[214]^c[204]^c[205]^c[205]^c[255]^c[266]^c[281]^c[282]^c[290]^c[330]^c[331]^c[320]^c[321]^c[357]^c[340]^c[341]^c[370]^c[371]^c[405]^c[425]^c[426]^c[417]^c[418]^c[439]^c[444]^c[472]^c[473]^c[506]^c[490]^c[491]^c[493]^c[494]^c[567]^c[561]^c[570]^c[571]^c[619]^c[608]^c[592]^c[593]^c[671]^c[657]^c[658]^c[654]^c[655]^c[675]^c[689]^c[690]^c[717]^c[718]^c[721]^c[749]^c[750]^c[751]^c[804]^c[812]^c[809]^c[810]^c[860]^c[828]^c[829]^c[853]^c[854]^c[892]^c[889]^c[890]^c[872]^c[873]^c[926]^c[933]^c[950]^c[951]^c[980]^c[998]^c[999]^c[976]^c[977]^c[1044]^c[1050]^c[1054]^c[1055]; //row: 43 d[i2+43*Zc]=c[43]^c[4]^c[37]^c[11]^c[12]^c[91]^c[82]^c[62]^c[63]^c[64]^c[122]^c[100]^c[112]^c[153]^c[145]^c[167]^c[168]^c[216]^c[212]^c[202]^c[203]^c[253]^c[264]^c[280]^c[288]^c[329]^c[318]^c[319]^c[355]^c[339]^c[368]^c[369]^c[403]^c[424]^c[415]^c[416]^c[437]^c[442]^c[471]^c[504]^c[489]^c[491]^c[492]^c[565]^c[559]^c[568]^c[569]^c[617]^c[606]^c[590]^c[591]^c[669]^c[656]^c[652]^c[653]^c[673]^c[688]^c[715]^c[716]^c[767]^c[747]^c[749]^c[802]^c[810]^c[807]^c[808]^c[803]^c[858]^c[827]^c[851]^c[852]^c[890]^c[888]^c[870]^c[871]^c[881]^c[924]^c[931]^c[949]^c[978]^c[997]^c[974]^c[975]^c[1042]^c[1048]^c[1052]^c[1053]; //row: 44 d[i2+44*Zc]=c[4]^c[13]^c[46]^c[21]^c[31]^c[52]^c[91]^c[72]^c[131]^c[109]^c[121]^c[162]^c[154]^c[177]^c[225]^c[221]^c[212]^c[262]^c[273]^c[241]^c[297]^c[290]^c[328]^c[364]^c[348]^c[378]^c[365]^c[412]^c[385]^c[425]^c[446]^c[451]^c[432]^c[450]^c[513]^c[498]^c[501]^c[574]^c[568]^c[530]^c[578]^c[615]^c[600]^c[630]^c[665]^c[662]^c[682]^c[697]^c[677]^c[728]^c[756]^c[758]^c[811]^c[771]^c[769]^c[819]^c[836]^c[861]^c[899]^c[897]^c[880]^c[933]^c[940]^c[958]^c[987]^c[1006]^c[984]^c[1051]^c[1009]^c[1014]; //row: 45 d[i2+45*Zc]=c[86]^c[292]^c[494]; } break; case 52: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[50]^c[20]^c[26]^c[2]^c[102]^c[87]^c[56]^c[154]^c[113]^c[123]^c[206]^c[174]^c[187]^c[258]^c[230]^c[215]^c[310]^c[268]^c[262]^c[362]^c[355]^c[359]^c[414]^c[410]^c[383]^c[466]^c[452]^c[420]^c[518]^c[468]^c[484]^c[570]^c[557]^c[565]^c[622]^c[586]^c[601]^c[674]^c[630]^c[672]^c[726]^c[725]^c[709]^c[778]^c[754]^c[731]^c[830]^c[784]^c[811]^c[882]^c[860]^c[870]^c[934]^c[929]^c[899]^c[986]^c[957]^c[950]^c[1038]^c[998]^c[1028]^c[1090]^c[1052]^c[1040]^c[1142]^c[1121]^c[1128]; //row: 1 d[i2+1*Zc]=c[51]^c[50]^c[20]^c[26]^c[2]^c[103]^c[102]^c[87]^c[56]^c[155]^c[154]^c[113]^c[123]^c[207]^c[206]^c[174]^c[187]^c[258]^c[230]^c[215]^c[311]^c[310]^c[268]^c[262]^c[363]^c[362]^c[355]^c[359]^c[414]^c[410]^c[383]^c[466]^c[452]^c[420]^c[519]^c[518]^c[468]^c[484]^c[571]^c[570]^c[557]^c[565]^c[623]^c[622]^c[586]^c[601]^c[675]^c[674]^c[630]^c[672]^c[727]^c[726]^c[725]^c[709]^c[778]^c[754]^c[731]^c[831]^c[830]^c[784]^c[811]^c[883]^c[882]^c[860]^c[870]^c[934]^c[929]^c[899]^c[987]^c[986]^c[957]^c[950]^c[1039]^c[1038]^c[998]^c[1028]^c[1091]^c[1090]^c[1052]^c[1040]^c[1143]^c[1142]^c[1121]^c[1128]; //row: 2 d[i2+2*Zc]=c[50]^c[20]^c[27]^c[26]^c[3]^c[2]^c[102]^c[88]^c[87]^c[57]^c[56]^c[154]^c[113]^c[124]^c[123]^c[206]^c[174]^c[188]^c[187]^c[258]^c[231]^c[230]^c[216]^c[215]^c[310]^c[268]^c[263]^c[262]^c[362]^c[356]^c[355]^c[360]^c[359]^c[414]^c[411]^c[410]^c[384]^c[383]^c[466]^c[453]^c[452]^c[421]^c[420]^c[518]^c[468]^c[485]^c[484]^c[570]^c[558]^c[557]^c[566]^c[565]^c[622]^c[586]^c[602]^c[601]^c[674]^c[630]^c[673]^c[672]^c[726]^c[726]^c[725]^c[710]^c[709]^c[778]^c[755]^c[754]^c[732]^c[731]^c[830]^c[784]^c[812]^c[811]^c[882]^c[860]^c[871]^c[870]^c[934]^c[930]^c[929]^c[900]^c[899]^c[986]^c[958]^c[957]^c[951]^c[950]^c[1038]^c[998]^c[1029]^c[1028]^c[1090]^c[1053]^c[1052]^c[1041]^c[1040]^c[1142]^c[1121]^c[1129]^c[1128]; //row: 3 d[i2+3*Zc]=c[50]^c[20]^c[26]^c[3]^c[2]^c[102]^c[87]^c[57]^c[56]^c[154]^c[113]^c[123]^c[206]^c[174]^c[188]^c[187]^c[258]^c[230]^c[216]^c[215]^c[310]^c[268]^c[262]^c[362]^c[355]^c[360]^c[359]^c[414]^c[410]^c[384]^c[383]^c[466]^c[452]^c[421]^c[420]^c[518]^c[468]^c[484]^c[570]^c[557]^c[566]^c[565]^c[622]^c[586]^c[602]^c[601]^c[674]^c[630]^c[673]^c[672]^c[726]^c[725]^c[710]^c[709]^c[778]^c[754]^c[732]^c[731]^c[830]^c[784]^c[811]^c[882]^c[860]^c[871]^c[870]^c[934]^c[929]^c[900]^c[899]^c[986]^c[957]^c[951]^c[950]^c[1038]^c[998]^c[1028]^c[1090]^c[1052]^c[1041]^c[1040]^c[1142]^c[1121]^c[1129]^c[1128]; //row: 4 d[i2+4*Zc]=c[23]^c[99]; //row: 5 d[i2+5*Zc]=c[18]^c[40]^c[46]^c[22]^c[28]^c[70]^c[55]^c[76]^c[99]^c[122]^c[133]^c[143]^c[174]^c[194]^c[207]^c[179]^c[226]^c[250]^c[235]^c[278]^c[288]^c[282]^c[330]^c[323]^c[327]^c[382]^c[378]^c[403]^c[434]^c[420]^c[440]^c[486]^c[488]^c[504]^c[538]^c[525]^c[533]^c[590]^c[606]^c[621]^c[642]^c[650]^c[640]^c[636]^c[694]^c[693]^c[677]^c[746]^c[774]^c[751]^c[798]^c[804]^c[831]^c[850]^c[880]^c[838]^c[882]^c[902]^c[897]^c[919]^c[954]^c[977]^c[970]^c[1006]^c[1018]^c[996]^c[1058]^c[1072]^c[1060]^c[1110]^c[1141]^c[1096]^c[1096]; //row: 6 d[i2+6*Zc]=c[5]^c[338]^c[526]^c[621]^c[723]^c[907]^c[973]^c[1078]; //row: 7 d[i2+7*Zc]=c[40]^c[87]^c[215]^c[412]^c[418]^c[751]; //row: 8 d[i2+8*Zc]=c[33]^c[10]^c[3]^c[32]^c[9]^c[39]^c[38]^c[37]^c[15]^c[14]^c[15]^c[85]^c[62]^c[70]^c[100]^c[99]^c[91]^c[69]^c[68]^c[53]^c[137]^c[114]^c[148]^c[125]^c[106]^c[136]^c[135]^c[189]^c[166]^c[157]^c[186]^c[170]^c[200]^c[199]^c[182]^c[241]^c[218]^c[213]^c[243]^c[242]^c[250]^c[228]^c[227]^c[293]^c[270]^c[303]^c[280]^c[297]^c[275]^c[274]^c[345]^c[322]^c[338]^c[316]^c[315]^c[342]^c[320]^c[319]^c[397]^c[374]^c[393]^c[371]^c[370]^c[366]^c[396]^c[395]^c[449]^c[426]^c[435]^c[465]^c[464]^c[455]^c[433]^c[432]^c[501]^c[478]^c[503]^c[480]^c[519]^c[497]^c[496]^c[553]^c[530]^c[540]^c[570]^c[569]^c[548]^c[526]^c[525]^c[605]^c[582]^c[621]^c[598]^c[584]^c[614]^c[613]^c[657]^c[634]^c[665]^c[642]^c[655]^c[633]^c[632]^c[660]^c[709]^c[686]^c[708]^c[686]^c[685]^c[692]^c[722]^c[721]^c[761]^c[738]^c[737]^c[767]^c[766]^c[766]^c[744]^c[743]^c[813]^c[790]^c[819]^c[796]^c[794]^c[824]^c[823]^c[865]^c[842]^c[843]^c[872]^c[853]^c[883]^c[882]^c[875]^c[917]^c[894]^c[912]^c[890]^c[889]^c[934]^c[912]^c[911]^c[969]^c[946]^c[940]^c[970]^c[969]^c[985]^c[963]^c[962]^c[1021]^c[998]^c[1033]^c[1010]^c[1011]^c[989]^c[988]^c[1034]^c[1073]^c[1050]^c[1087]^c[1065]^c[1064]^c[1075]^c[1053]^c[1052]^c[1125]^c[1102]^c[1104]^c[1133]^c[1111]^c[1141]^c[1140]^c[1140]; //row: 9 d[i2+9*Zc]=c[5]^c[61]^c[560]^c[572]^c[720]^c[887]^c[943]^c[1056]; //row: 10 d[i2+10*Zc]=c[73]^c[128]^c[259]^c[379]^c[427]^c[745]; //row: 11 d[i2+11*Zc]=c[3]^c[19]^c[18]^c[25]^c[40]^c[31]^c[46]^c[7]^c[22]^c[27]^c[55]^c[71]^c[70]^c[92]^c[55]^c[61]^c[76]^c[89]^c[107]^c[123]^c[122]^c[118]^c[133]^c[128]^c[143]^c[159]^c[175]^c[174]^c[179]^c[194]^c[192]^c[207]^c[211]^c[226]^c[235]^c[250]^c[220]^c[235]^c[263]^c[279]^c[278]^c[273]^c[288]^c[267]^c[282]^c[315]^c[331]^c[330]^c[360]^c[323]^c[312]^c[327]^c[367]^c[382]^c[415]^c[378]^c[388]^c[403]^c[419]^c[434]^c[457]^c[420]^c[425]^c[440]^c[471]^c[487]^c[486]^c[473]^c[488]^c[489]^c[504]^c[523]^c[539]^c[538]^c[562]^c[525]^c[570]^c[533]^c[575]^c[591]^c[590]^c[591]^c[606]^c[606]^c[621]^c[627]^c[643]^c[642]^c[635]^c[650]^c[625]^c[640]^c[642]^c[679]^c[695]^c[694]^c[678]^c[693]^c[714]^c[677]^c[731]^c[746]^c[759]^c[774]^c[736]^c[751]^c[783]^c[799]^c[798]^c[789]^c[804]^c[816]^c[831]^c[835]^c[851]^c[850]^c[865]^c[880]^c[875]^c[838]^c[847]^c[887]^c[902]^c[934]^c[897]^c[904]^c[919]^c[939]^c[955]^c[954]^c[962]^c[977]^c[955]^c[970]^c[991]^c[1007]^c[1006]^c[1003]^c[1018]^c[1033]^c[996]^c[1043]^c[1059]^c[1058]^c[1057]^c[1072]^c[1045]^c[1060]^c[1095]^c[1111]^c[1110]^c[1126]^c[1141]^c[1133]^c[1096]^c[1143]; //row: 12 d[i2+12*Zc]=c[5]^c[71]^c[566]^c[620]^c[727]^c[986]; //row: 13 d[i2+13*Zc]=c[45]^c[44]^c[14]^c[20]^c[48]^c[51]^c[97]^c[96]^c[81]^c[102]^c[149]^c[148]^c[107]^c[117]^c[201]^c[200]^c[168]^c[181]^c[198]^c[252]^c[224]^c[209]^c[305]^c[304]^c[262]^c[308]^c[357]^c[356]^c[349]^c[353]^c[408]^c[404]^c[377]^c[364]^c[460]^c[446]^c[466]^c[513]^c[512]^c[514]^c[478]^c[565]^c[564]^c[551]^c[559]^c[617]^c[616]^c[580]^c[595]^c[669]^c[668]^c[624]^c[666]^c[721]^c[720]^c[719]^c[703]^c[772]^c[748]^c[777]^c[825]^c[824]^c[830]^c[805]^c[877]^c[876]^c[854]^c[864]^c[928]^c[923]^c[893]^c[981]^c[980]^c[951]^c[944]^c[1033]^c[1032]^c[992]^c[1022]^c[1085]^c[1084]^c[1046]^c[1086]^c[1055]^c[1137]^c[1136]^c[1115]^c[1122]; //row: 14 d[i2+14*Zc]=c[0]^c[669]^c[793]^c[857]^c[884]^c[1093]; //row: 15 d[i2+15*Zc]=c[44]^c[14]^c[20]^c[49]^c[48]^c[16]^c[96]^c[81]^c[103]^c[102]^c[57]^c[148]^c[107]^c[117]^c[200]^c[168]^c[182]^c[181]^c[252]^c[224]^c[210]^c[209]^c[304]^c[262]^c[308]^c[356]^c[349]^c[354]^c[353]^c[408]^c[404]^c[378]^c[377]^c[460]^c[446]^c[467]^c[466]^c[512]^c[514]^c[478]^c[564]^c[551]^c[560]^c[559]^c[548]^c[616]^c[580]^c[596]^c[595]^c[668]^c[624]^c[667]^c[666]^c[720]^c[719]^c[704]^c[703]^c[701]^c[772]^c[748]^c[778]^c[777]^c[824]^c[830]^c[805]^c[876]^c[854]^c[865]^c[864]^c[928]^c[923]^c[894]^c[893]^c[980]^c[951]^c[945]^c[944]^c[936]^c[1032]^c[992]^c[1022]^c[1084]^c[1046]^c[1087]^c[1086]^c[1136]^c[1115]^c[1123]^c[1122]; //row: 16 d[i2+16*Zc]=c[24]^c[46]^c[0]^c[28]^c[76]^c[61]^c[82]^c[87]^c[128]^c[139]^c[149]^c[180]^c[200]^c[161]^c[197]^c[232]^c[256]^c[241]^c[284]^c[294]^c[288]^c[336]^c[329]^c[333]^c[388]^c[384]^c[409]^c[440]^c[426]^c[446]^c[492]^c[494]^c[510]^c[544]^c[531]^c[539]^c[596]^c[612]^c[575]^c[575]^c[648]^c[656]^c[646]^c[700]^c[699]^c[683]^c[752]^c[728]^c[757]^c[804]^c[810]^c[785]^c[856]^c[834]^c[844]^c[908]^c[903]^c[925]^c[960]^c[983]^c[976]^c[1012]^c[1024]^c[1002]^c[1064]^c[1078]^c[1066]^c[1057]^c[1116]^c[1095]^c[1102]; //row: 17 d[i2+17*Zc]=c[38]^c[755]^c[861]^c[886]^c[1142]; //row: 18 d[i2+18*Zc]=c[52]^c[664]^c[686]^c[951]^c[1031]; //row: 19 d[i2+19*Zc]=c[11]^c[57]^c[373]^c[443]^c[554]; //row: 20 d[i2+20*Zc]=c[28]^c[50]^c[4]^c[32]^c[5]^c[80]^c[65]^c[86]^c[132]^c[143]^c[153]^c[184]^c[204]^c[165]^c[167]^c[236]^c[208]^c[245]^c[288]^c[298]^c[292]^c[340]^c[333]^c[337]^c[392]^c[388]^c[413]^c[444]^c[430]^c[450]^c[496]^c[498]^c[514]^c[482]^c[548]^c[535]^c[543]^c[600]^c[616]^c[579]^c[576]^c[652]^c[660]^c[650]^c[704]^c[703]^c[687]^c[756]^c[732]^c[761]^c[808]^c[814]^c[789]^c[860]^c[838]^c[848]^c[912]^c[907]^c[929]^c[964]^c[987]^c[980]^c[1016]^c[1028]^c[1006]^c[1068]^c[1082]^c[1070]^c[1120]^c[1099]^c[1106]; //row: 21 d[i2+21*Zc]=c[57]^c[293]^c[875]^c[1081]^c[1134]; //row: 22 d[i2+22*Zc]=c[43]^c[629]^c[701]^c[910]; //row: 23 d[i2+23*Zc]=c[96]^c[121]^c[547]^c[983]; //row: 24 d[i2+24*Zc]=c[4]^c[26]^c[32]^c[8]^c[8]^c[56]^c[93]^c[62]^c[108]^c[119]^c[129]^c[160]^c[180]^c[193]^c[176]^c[212]^c[236]^c[221]^c[242]^c[264]^c[274]^c[268]^c[316]^c[361]^c[313]^c[368]^c[364]^c[389]^c[420]^c[458]^c[426]^c[472]^c[474]^c[490]^c[524]^c[563]^c[571]^c[576]^c[592]^c[607]^c[599]^c[628]^c[636]^c[626]^c[680]^c[679]^c[715]^c[732]^c[760]^c[737]^c[784]^c[790]^c[817]^c[836]^c[866]^c[876]^c[888]^c[935]^c[905]^c[940]^c[963]^c[956]^c[992]^c[1004]^c[1034]^c[1044]^c[1058]^c[1046]^c[1096]^c[1127]^c[1134]; //row: 25 d[i2+25*Zc]=c[55]^c[333]^c[379]^c[755]; //row: 26 d[i2+26*Zc]=c[20]^c[141]^c[243]^c[820]; //row: 27 d[i2+27*Zc]=c[97]^c[347]^c[437]; //row: 28 d[i2+28*Zc]=c[3]^c[208]^c[1027]^c[1132]; //row: 29 d[i2+29*Zc]=c[4]^c[26]^c[32]^c[9]^c[8]^c[56]^c[93]^c[63]^c[62]^c[91]^c[108]^c[119]^c[129]^c[160]^c[180]^c[194]^c[193]^c[212]^c[236]^c[222]^c[221]^c[264]^c[274]^c[268]^c[316]^c[361]^c[314]^c[313]^c[368]^c[364]^c[390]^c[389]^c[420]^c[458]^c[427]^c[426]^c[472]^c[474]^c[490]^c[524]^c[563]^c[520]^c[571]^c[576]^c[592]^c[608]^c[607]^c[628]^c[636]^c[627]^c[626]^c[680]^c[679]^c[716]^c[715]^c[732]^c[760]^c[738]^c[737]^c[759]^c[784]^c[790]^c[817]^c[836]^c[866]^c[877]^c[876]^c[888]^c[935]^c[906]^c[905]^c[940]^c[963]^c[957]^c[956]^c[937]^c[992]^c[1004]^c[1034]^c[1044]^c[1058]^c[1047]^c[1046]^c[1096]^c[1127]^c[1135]^c[1134]; //row: 30 d[i2+30*Zc]=c[18]^c[40]^c[47]^c[46]^c[23]^c[22]^c[1]^c[70]^c[56]^c[55]^c[77]^c[76]^c[122]^c[133]^c[144]^c[143]^c[174]^c[194]^c[156]^c[207]^c[226]^c[251]^c[250]^c[236]^c[235]^c[278]^c[288]^c[283]^c[282]^c[330]^c[324]^c[323]^c[328]^c[327]^c[382]^c[379]^c[378]^c[404]^c[403]^c[434]^c[421]^c[420]^c[441]^c[440]^c[486]^c[488]^c[505]^c[504]^c[538]^c[526]^c[525]^c[534]^c[533]^c[555]^c[590]^c[606]^c[622]^c[621]^c[642]^c[650]^c[641]^c[640]^c[694]^c[694]^c[693]^c[678]^c[677]^c[683]^c[746]^c[775]^c[774]^c[752]^c[751]^c[798]^c[804]^c[780]^c[831]^c[850]^c[880]^c[839]^c[838]^c[902]^c[898]^c[897]^c[920]^c[919]^c[954]^c[978]^c[977]^c[971]^c[970]^c[1006]^c[1018]^c[997]^c[996]^c[1058]^c[1073]^c[1072]^c[1061]^c[1060]^c[1110]^c[1141]^c[1097]^c[1096]; //row: 31 d[i2+31*Zc]=c[19]^c[36]^c[41]^c[6]^c[47]^c[12]^c[23]^c[41]^c[40]^c[71]^c[88]^c[56]^c[73]^c[77]^c[95]^c[94]^c[55]^c[123]^c[140]^c[134]^c[151]^c[144]^c[109]^c[175]^c[192]^c[195]^c[160]^c[156]^c[174]^c[173]^c[227]^c[244]^c[251]^c[216]^c[236]^c[254]^c[253]^c[279]^c[296]^c[289]^c[306]^c[283]^c[300]^c[331]^c[348]^c[324]^c[341]^c[328]^c[346]^c[345]^c[383]^c[400]^c[379]^c[396]^c[404]^c[370]^c[369]^c[412]^c[435]^c[452]^c[421]^c[438]^c[441]^c[459]^c[458]^c[487]^c[504]^c[489]^c[506]^c[505]^c[470]^c[539]^c[556]^c[526]^c[543]^c[534]^c[552]^c[551]^c[591]^c[608]^c[607]^c[572]^c[622]^c[588]^c[587]^c[643]^c[660]^c[651]^c[668]^c[641]^c[659]^c[658]^c[695]^c[712]^c[694]^c[711]^c[678]^c[696]^c[695]^c[747]^c[764]^c[775]^c[740]^c[752]^c[770]^c[769]^c[799]^c[816]^c[805]^c[822]^c[780]^c[797]^c[851]^c[868]^c[881]^c[846]^c[839]^c[857]^c[856]^c[903]^c[920]^c[898]^c[915]^c[920]^c[886]^c[885]^c[955]^c[972]^c[978]^c[943]^c[971]^c[937]^c[936]^c[1007]^c[1024]^c[1019]^c[1036]^c[997]^c[1014]^c[1059]^c[1076]^c[1073]^c[1090]^c[1061]^c[1079]^c[1078]^c[1111]^c[1128]^c[1142]^c[1107]^c[1097]^c[1115]^c[1114]; //row: 32 d[i2+32*Zc]=c[18]^c[40]^c[47]^c[46]^c[23]^c[22]^c[5]^c[70]^c[56]^c[55]^c[77]^c[76]^c[122]^c[133]^c[144]^c[143]^c[174]^c[194]^c[156]^c[207]^c[226]^c[251]^c[250]^c[236]^c[235]^c[278]^c[288]^c[283]^c[282]^c[330]^c[324]^c[323]^c[328]^c[327]^c[382]^c[379]^c[378]^c[404]^c[403]^c[434]^c[421]^c[420]^c[441]^c[440]^c[486]^c[488]^c[505]^c[504]^c[538]^c[526]^c[525]^c[534]^c[533]^c[590]^c[606]^c[622]^c[621]^c[642]^c[650]^c[641]^c[640]^c[645]^c[694]^c[694]^c[693]^c[678]^c[677]^c[746]^c[775]^c[774]^c[752]^c[751]^c[738]^c[798]^c[804]^c[780]^c[831]^c[850]^c[880]^c[839]^c[838]^c[902]^c[898]^c[897]^c[920]^c[919]^c[954]^c[978]^c[977]^c[971]^c[970]^c[1006]^c[1018]^c[997]^c[996]^c[1058]^c[1073]^c[1072]^c[1061]^c[1060]^c[1110]^c[1141]^c[1097]^c[1096]; //row: 33 d[i2+33*Zc]=c[61]^c[133]^c[577]^c[1131]; //row: 34 d[i2+34*Zc]=c[3]^c[412]^c[820]^c[934]; //row: 35 d[i2+35*Zc]=c[27]^c[49]^c[3]^c[31]^c[79]^c[64]^c[85]^c[55]^c[131]^c[142]^c[152]^c[183]^c[203]^c[164]^c[235]^c[259]^c[244]^c[287]^c[297]^c[291]^c[339]^c[332]^c[336]^c[356]^c[391]^c[387]^c[412]^c[443]^c[429]^c[449]^c[495]^c[497]^c[513]^c[547]^c[534]^c[542]^c[599]^c[615]^c[578]^c[651]^c[659]^c[649]^c[635]^c[703]^c[702]^c[686]^c[755]^c[731]^c[760]^c[807]^c[813]^c[788]^c[859]^c[837]^c[847]^c[911]^c[906]^c[928]^c[963]^c[986]^c[979]^c[1015]^c[1027]^c[1005]^c[1067]^c[1081]^c[1069]^c[1119]^c[1098]^c[1105]; //row: 36 d[i2+36*Zc]=c[5]^c[771]^c[800]^c[978]; //row: 37 d[i2+37*Zc]=c[30]^c[29]^c[51]^c[5]^c[33]^c[82]^c[81]^c[66]^c[87]^c[81]^c[134]^c[133]^c[144]^c[154]^c[186]^c[185]^c[205]^c[166]^c[237]^c[209]^c[246]^c[290]^c[289]^c[299]^c[293]^c[342]^c[341]^c[334]^c[338]^c[393]^c[389]^c[414]^c[445]^c[431]^c[451]^c[498]^c[497]^c[499]^c[515]^c[550]^c[549]^c[536]^c[544]^c[602]^c[601]^c[617]^c[580]^c[654]^c[653]^c[661]^c[651]^c[706]^c[705]^c[704]^c[688]^c[677]^c[757]^c[733]^c[762]^c[810]^c[809]^c[815]^c[790]^c[862]^c[861]^c[839]^c[849]^c[913]^c[908]^c[930]^c[966]^c[965]^c[936]^c[981]^c[1018]^c[1017]^c[1029]^c[1007]^c[1070]^c[1069]^c[1083]^c[1071]^c[1122]^c[1121]^c[1100]^c[1107]; //row: 38 d[i2+38*Zc]=c[38]^c[479]^c[561]^c[671]; //row: 39 d[i2+39*Zc]=c[55]^c[183]^c[368]^c[1019]; //row: 40 d[i2+40*Zc]=c[9]^c[447]^c[895]; //row: 41 d[i2+41*Zc]=c[53]^c[178]^c[505]^c[959]; //row: 42 d[i2+42*Zc]=c[4]^c[26]^c[33]^c[32]^c[9]^c[8]^c[6]^c[56]^c[94]^c[93]^c[63]^c[62]^c[108]^c[119]^c[130]^c[129]^c[160]^c[180]^c[194]^c[193]^c[212]^c[237]^c[236]^c[222]^c[221]^c[217]^c[264]^c[274]^c[269]^c[268]^c[316]^c[362]^c[361]^c[314]^c[313]^c[368]^c[365]^c[364]^c[390]^c[389]^c[420]^c[459]^c[458]^c[427]^c[426]^c[472]^c[474]^c[491]^c[490]^c[524]^c[564]^c[563]^c[520]^c[571]^c[576]^c[592]^c[608]^c[607]^c[628]^c[636]^c[627]^c[626]^c[680]^c[680]^c[679]^c[716]^c[715]^c[732]^c[761]^c[760]^c[738]^c[737]^c[784]^c[790]^c[818]^c[817]^c[836]^c[866]^c[877]^c[876]^c[888]^c[884]^c[935]^c[906]^c[905]^c[940]^c[964]^c[963]^c[957]^c[956]^c[992]^c[1004]^c[1035]^c[1034]^c[1044]^c[1059]^c[1058]^c[1047]^c[1046]^c[1096]^c[1127]^c[1135]^c[1134]; //row: 43 d[i2+43*Zc]=c[44]^c[14]^c[20]^c[49]^c[48]^c[96]^c[81]^c[103]^c[102]^c[52]^c[148]^c[107]^c[117]^c[200]^c[168]^c[182]^c[181]^c[252]^c[224]^c[210]^c[209]^c[304]^c[262]^c[308]^c[356]^c[349]^c[354]^c[353]^c[408]^c[404]^c[378]^c[377]^c[460]^c[446]^c[467]^c[466]^c[512]^c[514]^c[478]^c[564]^c[551]^c[560]^c[559]^c[616]^c[580]^c[596]^c[595]^c[668]^c[624]^c[667]^c[666]^c[720]^c[719]^c[704]^c[703]^c[772]^c[748]^c[778]^c[777]^c[824]^c[830]^c[805]^c[876]^c[854]^c[865]^c[864]^c[838]^c[928]^c[923]^c[894]^c[893]^c[980]^c[951]^c[945]^c[944]^c[982]^c[1032]^c[992]^c[1022]^c[1084]^c[1046]^c[1087]^c[1086]^c[1136]^c[1115]^c[1123]^c[1122]; //row: 44 d[i2+44*Zc]=c[1]^c[23]^c[29]^c[5]^c[3]^c[53]^c[90]^c[59]^c[105]^c[116]^c[126]^c[157]^c[177]^c[190]^c[209]^c[233]^c[218]^c[261]^c[271]^c[265]^c[313]^c[358]^c[362]^c[365]^c[413]^c[386]^c[369]^c[417]^c[455]^c[423]^c[469]^c[471]^c[487]^c[505]^c[521]^c[560]^c[568]^c[573]^c[589]^c[604]^c[625]^c[633]^c[675]^c[677]^c[676]^c[712]^c[729]^c[757]^c[734]^c[781]^c[787]^c[814]^c[833]^c[863]^c[873]^c[885]^c[932]^c[902]^c[937]^c[960]^c[953]^c[989]^c[1001]^c[1031]^c[1041]^c[1055]^c[1043]^c[1093]^c[1124]^c[1131]; //row: 45 d[i2+45*Zc]=c[76]^c[356]^c[568]; } break; case 56: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[54]^c[28]^c[38]^c[32]^c[71]^c[90]^c[73]^c[149]^c[156]^c[142]^c[202]^c[206]^c[220]^c[269]^c[231]^c[228]^c[297]^c[286]^c[291]^c[345]^c[353]^c[380]^c[436]^c[430]^c[421]^c[468]^c[488]^c[463]^c[559]^c[534]^c[512]^c[596]^c[573]^c[593]^c[663]^c[653]^c[658]^c[692]^c[708]^c[716]^c[774]^c[748]^c[762]^c[806]^c[829]^c[796]^c[853]^c[848]^c[860]^c[909]^c[901]^c[935]^c[977]^c[981]^c[969]^c[1036]^c[1012]^c[1050]^c[1093]^c[1094]^c[1118]^c[1167]^c[1153]^c[1149]^c[1200]^c[1194]^c[1221]; //row: 1 d[i2+1*Zc]=c[54]^c[55]^c[29]^c[39]^c[33]^c[71]^c[72]^c[91]^c[74]^c[149]^c[150]^c[157]^c[143]^c[202]^c[203]^c[207]^c[221]^c[270]^c[232]^c[229]^c[297]^c[298]^c[287]^c[292]^c[345]^c[346]^c[354]^c[381]^c[437]^c[431]^c[422]^c[469]^c[489]^c[464]^c[559]^c[504]^c[535]^c[513]^c[596]^c[597]^c[574]^c[594]^c[663]^c[664]^c[654]^c[659]^c[692]^c[693]^c[709]^c[717]^c[774]^c[775]^c[749]^c[763]^c[807]^c[830]^c[797]^c[853]^c[854]^c[849]^c[861]^c[909]^c[910]^c[902]^c[936]^c[978]^c[982]^c[970]^c[1036]^c[1037]^c[1013]^c[1051]^c[1093]^c[1094]^c[1095]^c[1119]^c[1167]^c[1168]^c[1154]^c[1150]^c[1200]^c[1201]^c[1195]^c[1222]; //row: 2 d[i2+2*Zc]=c[55]^c[29]^c[38]^c[39]^c[32]^c[33]^c[72]^c[90]^c[91]^c[73]^c[74]^c[150]^c[157]^c[142]^c[143]^c[203]^c[207]^c[220]^c[221]^c[270]^c[231]^c[232]^c[228]^c[229]^c[298]^c[287]^c[291]^c[292]^c[346]^c[353]^c[354]^c[380]^c[381]^c[437]^c[430]^c[431]^c[421]^c[422]^c[469]^c[488]^c[489]^c[463]^c[464]^c[504]^c[535]^c[512]^c[513]^c[597]^c[573]^c[574]^c[593]^c[594]^c[664]^c[654]^c[658]^c[659]^c[693]^c[709]^c[716]^c[717]^c[775]^c[748]^c[749]^c[762]^c[763]^c[807]^c[829]^c[830]^c[796]^c[797]^c[854]^c[849]^c[860]^c[861]^c[910]^c[902]^c[935]^c[936]^c[978]^c[981]^c[982]^c[969]^c[970]^c[1037]^c[1012]^c[1013]^c[1050]^c[1051]^c[1094]^c[1095]^c[1118]^c[1119]^c[1168]^c[1153]^c[1154]^c[1149]^c[1150]^c[1201]^c[1195]^c[1221]^c[1222]; //row: 3 d[i2+3*Zc]=c[55]^c[29]^c[39]^c[32]^c[33]^c[72]^c[91]^c[73]^c[74]^c[150]^c[157]^c[143]^c[203]^c[207]^c[220]^c[221]^c[270]^c[232]^c[228]^c[229]^c[298]^c[287]^c[292]^c[346]^c[354]^c[380]^c[381]^c[437]^c[431]^c[421]^c[422]^c[469]^c[489]^c[463]^c[464]^c[504]^c[535]^c[513]^c[597]^c[574]^c[593]^c[594]^c[664]^c[654]^c[658]^c[659]^c[693]^c[709]^c[716]^c[717]^c[775]^c[749]^c[762]^c[763]^c[807]^c[830]^c[796]^c[797]^c[854]^c[849]^c[861]^c[910]^c[902]^c[935]^c[936]^c[978]^c[982]^c[969]^c[970]^c[1037]^c[1013]^c[1050]^c[1051]^c[1094]^c[1095]^c[1119]^c[1168]^c[1154]^c[1149]^c[1150]^c[1201]^c[1195]^c[1221]^c[1222]; //row: 4 d[i2+4*Zc]=c[1]^c[65]; //row: 5 d[i2+5*Zc]=c[39]^c[13]^c[23]^c[17]^c[51]^c[56]^c[75]^c[58]^c[58]^c[134]^c[141]^c[127]^c[187]^c[191]^c[205]^c[197]^c[254]^c[272]^c[269]^c[282]^c[327]^c[332]^c[386]^c[338]^c[365]^c[421]^c[415]^c[406]^c[453]^c[473]^c[448]^c[544]^c[519]^c[553]^c[581]^c[614]^c[578]^c[648]^c[638]^c[643]^c[677]^c[693]^c[701]^c[695]^c[759]^c[733]^c[747]^c[791]^c[814]^c[837]^c[894]^c[889]^c[845]^c[950]^c[942]^c[920]^c[909]^c[962]^c[966]^c[954]^c[1021]^c[1053]^c[1035]^c[1078]^c[1079]^c[1103]^c[1152]^c[1138]^c[1134]^c[1185]^c[1179]^c[1206]^c[1193]; //row: 6 d[i2+6*Zc]=c[45]^c[342]^c[560]^c[636]^c[734]^c[1002]^c[1031]^c[1123]; //row: 7 d[i2+7*Zc]=c[16]^c[75]^c[271]^c[435]^c[485]^c[829]; //row: 8 d[i2+8*Zc]=c[42]^c[32]^c[16]^c[6]^c[26]^c[15]^c[16]^c[20]^c[9]^c[10]^c[32]^c[59]^c[105]^c[78]^c[67]^c[68]^c[61]^c[106]^c[107]^c[94]^c[137]^c[127]^c[144]^c[134]^c[130]^c[119]^c[120]^c[190]^c[180]^c[194]^c[184]^c[208]^c[197]^c[198]^c[171]^c[257]^c[247]^c[275]^c[264]^c[265]^c[272]^c[261]^c[262]^c[285]^c[331]^c[330]^c[320]^c[335]^c[324]^c[325]^c[389]^c[379]^c[341]^c[386]^c[387]^c[368]^c[357]^c[358]^c[424]^c[414]^c[418]^c[407]^c[408]^c[409]^c[398]^c[399]^c[456]^c[502]^c[476]^c[465]^c[466]^c[451]^c[496]^c[497]^c[547]^c[537]^c[522]^c[512]^c[556]^c[545]^c[546]^c[584]^c[574]^c[561]^c[606]^c[607]^c[581]^c[570]^c[571]^c[651]^c[641]^c[641]^c[631]^c[646]^c[635]^c[636]^c[680]^c[726]^c[696]^c[686]^c[704]^c[693]^c[694]^c[720]^c[762]^c[752]^c[736]^c[781]^c[782]^c[750]^c[739]^c[740]^c[794]^c[784]^c[817]^c[806]^c[807]^c[784]^c[829]^c[830]^c[841]^c[887]^c[892]^c[882]^c[848]^c[893]^c[894]^c[897]^c[943]^c[945]^c[935]^c[923]^c[912]^c[913]^c[931]^c[965]^c[955]^c[969]^c[958]^c[959]^c[957]^c[1002]^c[1003]^c[1024]^c[1014]^c[1056]^c[1045]^c[1046]^c[1038]^c[1027]^c[1028]^c[1081]^c[1071]^c[1082]^c[1072]^c[1106]^c[1095]^c[1096]^c[1102]^c[1155]^c[1145]^c[1141]^c[1130]^c[1131]^c[1137]^c[1126]^c[1127]^c[1188]^c[1178]^c[1182]^c[1228]^c[1209]^c[1198]^c[1199]^c[1177]; //row: 9 d[i2+9*Zc]=c[8]^c[92]^c[604]^c[664]^c[760]^c[968]^c[1060]^c[1169]; //row: 10 d[i2+10*Zc]=c[81]^c[164]^c[229]^c[410]^c[473]^c[830]; //row: 11 d[i2+11*Zc]=c[26]^c[31]^c[32]^c[0]^c[6]^c[10]^c[16]^c[4]^c[10]^c[51]^c[99]^c[104]^c[105]^c[62]^c[68]^c[101]^c[107]^c[66]^c[121]^c[126]^c[127]^c[128]^c[134]^c[114]^c[120]^c[174]^c[179]^c[180]^c[178]^c[184]^c[192]^c[198]^c[241]^c[247]^c[259]^c[265]^c[256]^c[262]^c[325]^c[330]^c[331]^c[314]^c[320]^c[319]^c[325]^c[373]^c[378]^c[379]^c[381]^c[387]^c[352]^c[358]^c[408]^c[414]^c[402]^c[408]^c[393]^c[399]^c[496]^c[502]^c[460]^c[466]^c[491]^c[497]^c[531]^c[536]^c[537]^c[506]^c[512]^c[540]^c[546]^c[568]^c[573]^c[574]^c[601]^c[607]^c[565]^c[571]^c[635]^c[640]^c[641]^c[625]^c[631]^c[630]^c[636]^c[720]^c[725]^c[726]^c[680]^c[686]^c[688]^c[694]^c[673]^c[746]^c[751]^c[752]^c[776]^c[782]^c[734]^c[740]^c[834]^c[784]^c[801]^c[807]^c[824]^c[830]^c[881]^c[886]^c[887]^c[876]^c[882]^c[888]^c[894]^c[937]^c[942]^c[943]^c[929]^c[935]^c[907]^c[913]^c[930]^c[1005]^c[955]^c[953]^c[959]^c[997]^c[1003]^c[1008]^c[1013]^c[1014]^c[1040]^c[1046]^c[1022]^c[1028]^c[1065]^c[1070]^c[1071]^c[1066]^c[1072]^c[1090]^c[1096]^c[1139]^c[1144]^c[1145]^c[1125]^c[1131]^c[1121]^c[1127]^c[1228]^c[1177]^c[1178]^c[1222]^c[1228]^c[1193]^c[1199]^c[1207]; //row: 12 d[i2+12*Zc]=c[29]^c[62]^c[583]^c[618]^c[755]^c[1021]; //row: 13 d[i2+13*Zc]=c[20]^c[21]^c[51]^c[5]^c[55]^c[24]^c[93]^c[94]^c[57]^c[96]^c[115]^c[116]^c[123]^c[165]^c[168]^c[169]^c[173]^c[187]^c[223]^c[236]^c[254]^c[251]^c[319]^c[320]^c[309]^c[314]^c[367]^c[368]^c[376]^c[347]^c[403]^c[397]^c[444]^c[407]^c[491]^c[455]^c[486]^c[525]^c[526]^c[557]^c[535]^c[562]^c[563]^c[596]^c[560]^c[629]^c[630]^c[620]^c[625]^c[714]^c[715]^c[675]^c[683]^c[740]^c[741]^c[771]^c[729]^c[829]^c[796]^c[819]^c[875]^c[876]^c[871]^c[883]^c[931]^c[932]^c[924]^c[902]^c[1000]^c[1004]^c[992]^c[1058]^c[1059]^c[1035]^c[1017]^c[1115]^c[1116]^c[1117]^c[1085]^c[1133]^c[1134]^c[1120]^c[1172]^c[1168]^c[1222]^c[1223]^c[1217]^c[1188]; //row: 14 d[i2+14*Zc]=c[13]^c[678]^c[882]^c[918]^c[1002]^c[1218]; //row: 15 d[i2+15*Zc]=c[24]^c[54]^c[8]^c[1]^c[2]^c[33]^c[97]^c[60]^c[98]^c[99]^c[63]^c[119]^c[126]^c[112]^c[172]^c[176]^c[189]^c[190]^c[239]^c[257]^c[253]^c[254]^c[323]^c[312]^c[317]^c[371]^c[379]^c[349]^c[350]^c[406]^c[400]^c[446]^c[447]^c[494]^c[458]^c[488]^c[489]^c[529]^c[504]^c[538]^c[566]^c[599]^c[562]^c[563]^c[578]^c[633]^c[623]^c[627]^c[628]^c[718]^c[678]^c[685]^c[686]^c[744]^c[774]^c[731]^c[732]^c[768]^c[832]^c[799]^c[821]^c[822]^c[879]^c[874]^c[886]^c[935]^c[927]^c[904]^c[905]^c[1003]^c[1007]^c[994]^c[995]^c[1062]^c[1038]^c[1019]^c[1020]^c[1048]^c[1119]^c[1064]^c[1088]^c[1137]^c[1123]^c[1174]^c[1175]^c[1226]^c[1220]^c[1190]^c[1191]; //row: 16 d[i2+16*Zc]=c[43]^c[17]^c[27]^c[21]^c[60]^c[79]^c[62]^c[97]^c[138]^c[145]^c[131]^c[191]^c[195]^c[209]^c[219]^c[258]^c[276]^c[273]^c[286]^c[331]^c[280]^c[390]^c[342]^c[369]^c[425]^c[419]^c[410]^c[457]^c[477]^c[452]^c[548]^c[523]^c[557]^c[585]^c[562]^c[582]^c[652]^c[642]^c[647]^c[658]^c[681]^c[697]^c[705]^c[763]^c[737]^c[751]^c[795]^c[818]^c[785]^c[842]^c[893]^c[849]^c[898]^c[946]^c[924]^c[966]^c[970]^c[958]^c[1025]^c[1057]^c[1039]^c[1082]^c[1083]^c[1107]^c[1156]^c[1142]^c[1138]^c[1140]^c[1189]^c[1183]^c[1210]; //row: 17 d[i2+17*Zc]=c[55]^c[837]^c[927]^c[958]^c[1179]; //row: 18 d[i2+18*Zc]=c[86]^c[725]^c[759]^c[1038]^c[1081]; //row: 19 d[i2+19*Zc]=c[7]^c[61]^c[438]^c[477]^c[567]; //row: 20 d[i2+20*Zc]=c[13]^c[43]^c[53]^c[47]^c[48]^c[86]^c[105]^c[88]^c[164]^c[115]^c[157]^c[217]^c[221]^c[179]^c[209]^c[228]^c[246]^c[243]^c[312]^c[301]^c[306]^c[360]^c[368]^c[339]^c[395]^c[445]^c[436]^c[483]^c[503]^c[478]^c[518]^c[549]^c[527]^c[512]^c[611]^c[588]^c[608]^c[622]^c[668]^c[617]^c[661]^c[707]^c[723]^c[675]^c[733]^c[763]^c[777]^c[821]^c[788]^c[811]^c[868]^c[863]^c[875]^c[924]^c[916]^c[950]^c[992]^c[996]^c[984]^c[1051]^c[1027]^c[1009]^c[1108]^c[1109]^c[1077]^c[1126]^c[1168]^c[1164]^c[1215]^c[1209]^c[1180]; //row: 21 d[i2+21*Zc]=c[79]^c[298]^c[947]^c[1169]^c[1225]; //row: 22 d[i2+22*Zc]=c[52]^c[727]^c[730]^c[987]; //row: 23 d[i2+23*Zc]=c[87]^c[146]^c[615]^c[1017]; //row: 24 d[i2+24*Zc]=c[10]^c[40]^c[50]^c[44]^c[48]^c[83]^c[102]^c[85]^c[161]^c[112]^c[154]^c[214]^c[218]^c[176]^c[212]^c[225]^c[243]^c[240]^c[231]^c[309]^c[298]^c[303]^c[357]^c[365]^c[336]^c[392]^c[442]^c[433]^c[480]^c[500]^c[475]^c[515]^c[546]^c[524]^c[608]^c[585]^c[605]^c[619]^c[665]^c[670]^c[640]^c[704]^c[720]^c[672]^c[730]^c[760]^c[774]^c[818]^c[785]^c[808]^c[865]^c[860]^c[872]^c[921]^c[913]^c[947]^c[989]^c[993]^c[981]^c[1048]^c[1024]^c[1062]^c[1105]^c[1106]^c[1074]^c[1123]^c[1165]^c[1161]^c[1212]^c[1206]^c[1177]; //row: 25 d[i2+25*Zc]=c[56]^c[389]^c[400]^c[808]; //row: 26 d[i2+26*Zc]=c[50]^c[119]^c[267]^c[854]; //row: 27 d[i2+27*Zc]=c[95]^c[364]^c[453]; //row: 28 d[i2+28*Zc]=c[33]^c[264]^c[1112]^c[1177]; //row: 29 d[i2+29*Zc]=c[11]^c[41]^c[51]^c[44]^c[45]^c[84]^c[103]^c[85]^c[86]^c[93]^c[162]^c[113]^c[155]^c[215]^c[219]^c[176]^c[177]^c[226]^c[244]^c[240]^c[241]^c[310]^c[299]^c[304]^c[358]^c[366]^c[336]^c[337]^c[393]^c[443]^c[433]^c[434]^c[481]^c[501]^c[475]^c[476]^c[516]^c[547]^c[525]^c[609]^c[586]^c[605]^c[606]^c[620]^c[666]^c[670]^c[671]^c[705]^c[721]^c[672]^c[673]^c[731]^c[761]^c[774]^c[775]^c[819]^c[786]^c[808]^c[809]^c[794]^c[866]^c[861]^c[873]^c[922]^c[914]^c[947]^c[948]^c[990]^c[994]^c[981]^c[982]^c[1049]^c[1025]^c[1062]^c[1063]^c[1060]^c[1106]^c[1107]^c[1075]^c[1124]^c[1166]^c[1161]^c[1162]^c[1213]^c[1207]^c[1177]^c[1178]; //row: 30 d[i2+30*Zc]=c[10]^c[40]^c[49]^c[50]^c[43]^c[44]^c[33]^c[83]^c[101]^c[102]^c[84]^c[85]^c[161]^c[112]^c[153]^c[154]^c[214]^c[218]^c[175]^c[176]^c[225]^c[242]^c[243]^c[239]^c[240]^c[309]^c[298]^c[302]^c[303]^c[357]^c[364]^c[365]^c[391]^c[336]^c[392]^c[441]^c[442]^c[432]^c[433]^c[480]^c[499]^c[500]^c[474]^c[475]^c[515]^c[546]^c[523]^c[524]^c[608]^c[584]^c[585]^c[604]^c[605]^c[577]^c[619]^c[665]^c[669]^c[670]^c[704]^c[720]^c[727]^c[672]^c[730]^c[759]^c[760]^c[773]^c[774]^c[769]^c[818]^c[784]^c[785]^c[807]^c[808]^c[865]^c[860]^c[871]^c[872]^c[921]^c[913]^c[946]^c[947]^c[989]^c[992]^c[993]^c[980]^c[981]^c[1048]^c[1023]^c[1024]^c[1061]^c[1062]^c[1105]^c[1106]^c[1073]^c[1074]^c[1123]^c[1164]^c[1165]^c[1160]^c[1161]^c[1212]^c[1206]^c[1176]^c[1177]; //row: 31 d[i2+31*Zc]=c[7]^c[15]^c[37]^c[45]^c[47]^c[55]^c[41]^c[48]^c[49]^c[80]^c[88]^c[99]^c[107]^c[82]^c[89]^c[90]^c[62]^c[158]^c[166]^c[165]^c[117]^c[151]^c[159]^c[211]^c[219]^c[215]^c[223]^c[173]^c[180]^c[181]^c[278]^c[230]^c[240]^c[248]^c[237]^c[244]^c[245]^c[306]^c[314]^c[295]^c[303]^c[300]^c[308]^c[354]^c[362]^c[362]^c[370]^c[389]^c[340]^c[341]^c[445]^c[397]^c[439]^c[447]^c[430]^c[437]^c[438]^c[440]^c[477]^c[485]^c[497]^c[449]^c[472]^c[479]^c[480]^c[512]^c[520]^c[543]^c[551]^c[521]^c[529]^c[605]^c[613]^c[582]^c[590]^c[602]^c[609]^c[610]^c[616]^c[624]^c[662]^c[670]^c[667]^c[618]^c[619]^c[701]^c[709]^c[717]^c[725]^c[725]^c[676]^c[677]^c[783]^c[735]^c[757]^c[765]^c[771]^c[778]^c[779]^c[815]^c[823]^c[838]^c[790]^c[805]^c[812]^c[813]^c[862]^c[870]^c[857]^c[865]^c[869]^c[877]^c[918]^c[926]^c[910]^c[918]^c[944]^c[951]^c[896]^c[986]^c[994]^c[990]^c[998]^c[978]^c[985]^c[986]^c[1045]^c[1053]^c[1021]^c[1029]^c[1059]^c[1010]^c[1011]^c[1102]^c[1110]^c[1103]^c[1111]^c[1071]^c[1079]^c[1120]^c[1128]^c[1162]^c[1170]^c[1158]^c[1165]^c[1166]^c[1209]^c[1217]^c[1203]^c[1211]^c[1230]^c[1181]^c[1182]; //row: 32 d[i2+32*Zc]=c[29]^c[3]^c[12]^c[13]^c[6]^c[7]^c[23]^c[102]^c[64]^c[65]^c[103]^c[104]^c[124]^c[131]^c[116]^c[117]^c[177]^c[181]^c[194]^c[195]^c[244]^c[261]^c[262]^c[258]^c[259]^c[328]^c[317]^c[321]^c[322]^c[376]^c[383]^c[384]^c[354]^c[355]^c[411]^c[404]^c[405]^c[395]^c[396]^c[499]^c[462]^c[463]^c[493]^c[494]^c[534]^c[509]^c[542]^c[543]^c[571]^c[603]^c[604]^c[567]^c[568]^c[638]^c[628]^c[632]^c[633]^c[723]^c[683]^c[690]^c[691]^c[712]^c[749]^c[778]^c[779]^c[736]^c[737]^c[837]^c[803]^c[804]^c[826]^c[827]^c[785]^c[884]^c[879]^c[890]^c[891]^c[940]^c[932]^c[909]^c[910]^c[952]^c[955]^c[956]^c[999]^c[1000]^c[1011]^c[1042]^c[1043]^c[1024]^c[1025]^c[1068]^c[1069]^c[1092]^c[1093]^c[1142]^c[1127]^c[1128]^c[1123]^c[1124]^c[1231]^c[1225]^c[1195]^c[1196]; //row: 33 d[i2+33*Zc]=c[57]^c[160]^c[664]^c[1200]; //row: 34 d[i2+34*Zc]=c[25]^c[409]^c[851]^c[989]; //row: 35 d[i2+35*Zc]=c[17]^c[47]^c[1]^c[51]^c[90]^c[109]^c[92]^c[79]^c[112]^c[119]^c[161]^c[221]^c[169]^c[183]^c[232]^c[250]^c[247]^c[316]^c[305]^c[310]^c[364]^c[372]^c[343]^c[340]^c[399]^c[393]^c[440]^c[487]^c[451]^c[482]^c[522]^c[553]^c[531]^c[615]^c[592]^c[612]^c[626]^c[616]^c[621]^c[711]^c[727]^c[679]^c[697]^c[737]^c[767]^c[781]^c[825]^c[792]^c[815]^c[872]^c[867]^c[879]^c[928]^c[920]^c[898]^c[996]^c[1000]^c[988]^c[1055]^c[1031]^c[1013]^c[1112]^c[1113]^c[1081]^c[1130]^c[1172]^c[1168]^c[1219]^c[1213]^c[1184]; //row: 36 d[i2+36*Zc]=c[53]^c[828]^c[895]^c[1013]; //row: 37 d[i2+37*Zc]=c[24]^c[25]^c[55]^c[9]^c[3]^c[97]^c[98]^c[61]^c[100]^c[80]^c[119]^c[120]^c[127]^c[113]^c[172]^c[173]^c[177]^c[191]^c[240]^c[258]^c[255]^c[323]^c[324]^c[313]^c[318]^c[371]^c[372]^c[380]^c[351]^c[407]^c[401]^c[392]^c[495]^c[459]^c[490]^c[529]^c[530]^c[505]^c[539]^c[566]^c[567]^c[600]^c[564]^c[633]^c[634]^c[624]^c[629]^c[718]^c[719]^c[679]^c[687]^c[744]^c[745]^c[775]^c[733]^c[754]^c[833]^c[800]^c[823]^c[879]^c[880]^c[875]^c[887]^c[935]^c[936]^c[928]^c[906]^c[1004]^c[952]^c[996]^c[1062]^c[1063]^c[1039]^c[1021]^c[1119]^c[1064]^c[1065]^c[1089]^c[1137]^c[1138]^c[1124]^c[1120]^c[1226]^c[1227]^c[1221]^c[1192]; //row: 38 d[i2+38*Zc]=c[10]^c[537]^c[576]^c[681]; //row: 39 d[i2+39*Zc]=c[67]^c[188]^c[440]^c[1065]; //row: 40 d[i2+40*Zc]=c[10]^c[492]^c[991]; //row: 41 d[i2+41*Zc]=c[78]^c[214]^c[507]^c[1062]; //row: 42 d[i2+42*Zc]=c[21]^c[51]^c[4]^c[5]^c[54]^c[55]^c[1]^c[94]^c[56]^c[57]^c[95]^c[96]^c[116]^c[123]^c[164]^c[165]^c[169]^c[173]^c[186]^c[187]^c[236]^c[253]^c[254]^c[250]^c[251]^c[258]^c[320]^c[309]^c[313]^c[314]^c[368]^c[375]^c[376]^c[346]^c[347]^c[403]^c[396]^c[397]^c[443]^c[444]^c[491]^c[454]^c[455]^c[485]^c[486]^c[526]^c[557]^c[534]^c[535]^c[563]^c[595]^c[596]^c[615]^c[560]^c[630]^c[620]^c[624]^c[625]^c[715]^c[675]^c[682]^c[683]^c[741]^c[770]^c[771]^c[728]^c[729]^c[829]^c[795]^c[796]^c[818]^c[819]^c[876]^c[871]^c[882]^c[883]^c[932]^c[924]^c[901]^c[902]^c[1000]^c[1003]^c[1004]^c[991]^c[992]^c[1059]^c[1034]^c[1035]^c[1016]^c[1017]^c[1116]^c[1117]^c[1084]^c[1085]^c[1134]^c[1175]^c[1120]^c[1171]^c[1172]^c[1223]^c[1217]^c[1187]^c[1188]; //row: 43 d[i2+43*Zc]=c[48]^c[22]^c[32]^c[25]^c[26]^c[65]^c[84]^c[66]^c[67]^c[93]^c[143]^c[150]^c[136]^c[196]^c[200]^c[213]^c[214]^c[263]^c[225]^c[277]^c[278]^c[291]^c[280]^c[285]^c[339]^c[347]^c[373]^c[374]^c[430]^c[424]^c[414]^c[415]^c[462]^c[482]^c[456]^c[457]^c[553]^c[528]^c[506]^c[590]^c[567]^c[586]^c[587]^c[657]^c[647]^c[651]^c[652]^c[686]^c[702]^c[709]^c[710]^c[768]^c[742]^c[755]^c[756]^c[800]^c[823]^c[789]^c[790]^c[847]^c[842]^c[854]^c[903]^c[951]^c[928]^c[929]^c[917]^c[971]^c[975]^c[962]^c[963]^c[1030]^c[1062]^c[1043]^c[1044]^c[1029]^c[1087]^c[1088]^c[1112]^c[1161]^c[1147]^c[1142]^c[1143]^c[1194]^c[1188]^c[1214]^c[1215]; //row: 44 d[i2+44*Zc]=c[10]^c[40]^c[50]^c[44]^c[27]^c[83]^c[102]^c[85]^c[161]^c[112]^c[154]^c[214]^c[218]^c[176]^c[225]^c[243]^c[240]^c[309]^c[298]^c[303]^c[357]^c[365]^c[336]^c[392]^c[442]^c[433]^c[395]^c[480]^c[500]^c[475]^c[515]^c[546]^c[524]^c[512]^c[608]^c[585]^c[605]^c[619]^c[665]^c[670]^c[704]^c[720]^c[672]^c[730]^c[760]^c[774]^c[818]^c[785]^c[808]^c[865]^c[860]^c[872]^c[921]^c[913]^c[947]^c[989]^c[993]^c[981]^c[1048]^c[1024]^c[1062]^c[1105]^c[1106]^c[1074]^c[1123]^c[1165]^c[1161]^c[1212]^c[1206]^c[1177]; //row: 45 d[i2+45*Zc]=c[71]^c[344]^c[588]; } break; case 60: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[14]^c[35]^c[8]^c[7]^c[106]^c[63]^c[82]^c[125]^c[175]^c[164]^c[193]^c[195]^c[221]^c[280]^c[270]^c[279]^c[323]^c[307]^c[355]^c[382]^c[416]^c[402]^c[451]^c[478]^c[425]^c[531]^c[511]^c[515]^c[592]^c[595]^c[563]^c[644]^c[607]^c[600]^c[684]^c[670]^c[695]^c[727]^c[728]^c[741]^c[794]^c[785]^c[803]^c[874]^c[880]^c[886]^c[914]^c[924]^c[932]^c[996]^c[992]^c[979]^c[1046]^c[1055]^c[1051]^c[1119]^c[1084]^c[1134]^c[1169]^c[1182]^c[1146]^c[1244]^c[1249]^c[1251]^c[1276]^c[1295]^c[1298]; //row: 1 d[i2+1*Zc]=c[14]^c[15]^c[36]^c[9]^c[8]^c[106]^c[107]^c[64]^c[83]^c[125]^c[126]^c[176]^c[165]^c[193]^c[194]^c[196]^c[222]^c[281]^c[271]^c[280]^c[323]^c[324]^c[308]^c[356]^c[382]^c[383]^c[417]^c[403]^c[452]^c[479]^c[426]^c[532]^c[512]^c[516]^c[592]^c[593]^c[596]^c[564]^c[644]^c[645]^c[608]^c[601]^c[684]^c[685]^c[671]^c[696]^c[727]^c[728]^c[729]^c[742]^c[794]^c[795]^c[786]^c[804]^c[875]^c[881]^c[887]^c[914]^c[915]^c[925]^c[933]^c[996]^c[997]^c[993]^c[980]^c[1047]^c[1056]^c[1052]^c[1119]^c[1120]^c[1085]^c[1135]^c[1169]^c[1170]^c[1183]^c[1147]^c[1244]^c[1245]^c[1250]^c[1252]^c[1276]^c[1277]^c[1296]^c[1299]; //row: 2 d[i2+2*Zc]=c[15]^c[36]^c[8]^c[9]^c[7]^c[8]^c[107]^c[63]^c[64]^c[82]^c[83]^c[126]^c[176]^c[164]^c[165]^c[194]^c[196]^c[221]^c[222]^c[281]^c[270]^c[271]^c[279]^c[280]^c[324]^c[308]^c[355]^c[356]^c[383]^c[416]^c[417]^c[402]^c[403]^c[452]^c[478]^c[479]^c[425]^c[426]^c[532]^c[511]^c[512]^c[515]^c[516]^c[593]^c[596]^c[563]^c[564]^c[645]^c[607]^c[608]^c[600]^c[601]^c[685]^c[671]^c[695]^c[696]^c[728]^c[729]^c[741]^c[742]^c[795]^c[785]^c[786]^c[803]^c[804]^c[875]^c[880]^c[881]^c[886]^c[887]^c[915]^c[925]^c[932]^c[933]^c[997]^c[993]^c[979]^c[980]^c[1047]^c[1055]^c[1056]^c[1051]^c[1052]^c[1120]^c[1084]^c[1085]^c[1134]^c[1135]^c[1170]^c[1183]^c[1146]^c[1147]^c[1245]^c[1249]^c[1250]^c[1251]^c[1252]^c[1277]^c[1296]^c[1298]^c[1299]; //row: 3 d[i2+3*Zc]=c[15]^c[36]^c[9]^c[7]^c[8]^c[107]^c[64]^c[82]^c[83]^c[126]^c[176]^c[165]^c[194]^c[196]^c[221]^c[222]^c[281]^c[271]^c[279]^c[280]^c[324]^c[308]^c[356]^c[383]^c[417]^c[402]^c[403]^c[452]^c[479]^c[425]^c[426]^c[532]^c[512]^c[515]^c[516]^c[593]^c[596]^c[564]^c[645]^c[608]^c[600]^c[601]^c[685]^c[671]^c[695]^c[696]^c[728]^c[729]^c[741]^c[742]^c[795]^c[786]^c[803]^c[804]^c[875]^c[881]^c[886]^c[887]^c[915]^c[925]^c[933]^c[997]^c[993]^c[979]^c[980]^c[1047]^c[1056]^c[1051]^c[1052]^c[1120]^c[1085]^c[1134]^c[1135]^c[1170]^c[1183]^c[1147]^c[1245]^c[1250]^c[1251]^c[1252]^c[1277]^c[1296]^c[1298]^c[1299]; //row: 4 d[i2+4*Zc]=c[3]^c[90]; //row: 5 d[i2+5*Zc]=c[14]^c[35]^c[8]^c[7]^c[1]^c[106]^c[63]^c[82]^c[110]^c[125]^c[175]^c[164]^c[193]^c[195]^c[221]^c[226]^c[280]^c[270]^c[279]^c[323]^c[307]^c[355]^c[382]^c[416]^c[402]^c[451]^c[478]^c[425]^c[531]^c[511]^c[515]^c[592]^c[595]^c[563]^c[644]^c[607]^c[600]^c[684]^c[670]^c[695]^c[727]^c[728]^c[741]^c[742]^c[794]^c[785]^c[803]^c[874]^c[880]^c[886]^c[914]^c[924]^c[932]^c[996]^c[992]^c[979]^c[989]^c[1046]^c[1055]^c[1051]^c[1119]^c[1084]^c[1134]^c[1169]^c[1182]^c[1146]^c[1244]^c[1249]^c[1251]^c[1276]^c[1295]^c[1298]^c[1319]; //row: 6 d[i2+6*Zc]=c[18]^c[381]^c[622]^c[699]^c[811]^c[1046]^c[1131]^c[1212]; //row: 7 d[i2+7*Zc]=c[16]^c[85]^c[268]^c[451]^c[525]^c[857]; //row: 8 d[i2+8*Zc]=c[47]^c[53]^c[8]^c[14]^c[41]^c[46]^c[47]^c[40]^c[45]^c[46]^c[0]^c[79]^c[85]^c[96]^c[101]^c[102]^c[115]^c[60]^c[61]^c[104]^c[158]^c[164]^c[148]^c[154]^c[137]^c[142]^c[143]^c[226]^c[232]^c[228]^c[234]^c[194]^c[199]^c[200]^c[200]^c[253]^c[259]^c[243]^c[248]^c[249]^c[252]^c[257]^c[258]^c[356]^c[302]^c[340]^c[346]^c[328]^c[333]^c[334]^c[415]^c[361]^c[389]^c[394]^c[395]^c[375]^c[380]^c[381]^c[424]^c[430]^c[451]^c[456]^c[457]^c[458]^c[463]^c[464]^c[504]^c[510]^c[484]^c[489]^c[490]^c[488]^c[493]^c[494]^c[565]^c[571]^c[568]^c[574]^c[596]^c[541]^c[542]^c[617]^c[623]^c[640]^c[645]^c[646]^c[633]^c[638]^c[639]^c[717]^c[663]^c[703]^c[709]^c[668]^c[673]^c[674]^c[760]^c[766]^c[761]^c[767]^c[774]^c[779]^c[720]^c[762]^c[827]^c[833]^c[818]^c[823]^c[824]^c[836]^c[781]^c[782]^c[847]^c[853]^c[853]^c[858]^c[859]^c[859]^c[864]^c[865]^c[947]^c[953]^c[957]^c[903]^c[905]^c[910]^c[911]^c[969]^c[975]^c[965]^c[971]^c[1012]^c[1017]^c[1018]^c[1016]^c[1079]^c[1025]^c[1028]^c[1033]^c[1034]^c[1024]^c[1029]^c[1030]^c[1092]^c[1098]^c[1117]^c[1122]^c[1123]^c[1107]^c[1112]^c[1113]^c[1142]^c[1148]^c[1155]^c[1161]^c[1179]^c[1184]^c[1185]^c[1164]^c[1217]^c[1223]^c[1222]^c[1227]^c[1228]^c[1224]^c[1229]^c[1230]^c[1309]^c[1315]^c[1268]^c[1274]^c[1271]^c[1276]^c[1277]^c[1278]; //row: 9 d[i2+9*Zc]=c[48]^c[71]^c[625]^c[700]^c[796]^c[1051]^c[1111]^c[1224]; //row: 10 d[i2+10*Zc]=c[115]^c[150]^c[249]^c[469]^c[534]^c[863]; //row: 11 d[i2+11*Zc]=c[59]^c[1]^c[2]^c[20]^c[23]^c[53]^c[56]^c[52]^c[55]^c[44]^c[91]^c[93]^c[94]^c[108]^c[111]^c[67]^c[70]^c[114]^c[170]^c[172]^c[173]^c[160]^c[163]^c[149]^c[152]^c[238]^c[180]^c[181]^c[180]^c[183]^c[206]^c[209]^c[265]^c[268]^c[255]^c[258]^c[264]^c[267]^c[308]^c[310]^c[311]^c[352]^c[355]^c[340]^c[343]^c[367]^c[369]^c[370]^c[401]^c[404]^c[387]^c[390]^c[436]^c[439]^c[463]^c[466]^c[470]^c[473]^c[516]^c[519]^c[496]^c[499]^c[500]^c[503]^c[577]^c[579]^c[580]^c[580]^c[583]^c[548]^c[551]^c[629]^c[631]^c[632]^c[652]^c[655]^c[645]^c[648]^c[669]^c[671]^c[672]^c[715]^c[718]^c[680]^c[683]^c[772]^c[774]^c[775]^c[773]^c[776]^c[726]^c[729]^c[733]^c[839]^c[781]^c[782]^c[830]^c[833]^c[788]^c[791]^c[859]^c[862]^c[865]^c[868]^c[871]^c[874]^c[959]^c[901]^c[902]^c[909]^c[912]^c[917]^c[920]^c[981]^c[983]^c[984]^c[977]^c[980]^c[964]^c[967]^c[960]^c[1031]^c[1034]^c[1040]^c[1043]^c[1036]^c[1039]^c[1104]^c[1106]^c[1107]^c[1129]^c[1132]^c[1119]^c[1122]^c[1154]^c[1156]^c[1157]^c[1167]^c[1170]^c[1191]^c[1194]^c[1229]^c[1231]^c[1232]^c[1234]^c[1237]^c[1236]^c[1239]^c[1261]^c[1263]^c[1264]^c[1280]^c[1283]^c[1283]^c[1286]^c[1291]; //row: 12 d[i2+12*Zc]=c[5]^c[94]^c[603]^c[719]^c[817]^c[1099]; //row: 13 d[i2+13*Zc]=c[44]^c[45]^c[6]^c[39]^c[38]^c[39]^c[76]^c[77]^c[94]^c[113]^c[155]^c[156]^c[146]^c[135]^c[223]^c[224]^c[226]^c[192]^c[184]^c[251]^c[241]^c[250]^c[353]^c[354]^c[338]^c[326]^c[412]^c[413]^c[387]^c[373]^c[422]^c[449]^c[456]^c[453]^c[502]^c[482]^c[486]^c[562]^c[563]^c[566]^c[594]^c[614]^c[615]^c[638]^c[631]^c[714]^c[715]^c[701]^c[666]^c[757]^c[758]^c[759]^c[772]^c[824]^c[825]^c[816]^c[834]^c[845]^c[851]^c[857]^c[944]^c[945]^c[955]^c[903]^c[966]^c[967]^c[963]^c[1010]^c[1077]^c[1026]^c[1022]^c[1089]^c[1090]^c[1115]^c[1105]^c[1199]^c[1140]^c[1153]^c[1177]^c[1214]^c[1215]^c[1220]^c[1222]^c[1257]^c[1306]^c[1307]^c[1266]^c[1269]; //row: 14 d[i2+14*Zc]=c[3]^c[743]^c[901]^c[994]^c[1031]^c[1275]; //row: 15 d[i2+15*Zc]=c[4]^c[25]^c[58]^c[56]^c[57]^c[38]^c[96]^c[113]^c[71]^c[72]^c[77]^c[175]^c[165]^c[154]^c[183]^c[185]^c[210]^c[211]^c[270]^c[260]^c[268]^c[269]^c[313]^c[357]^c[345]^c[372]^c[406]^c[391]^c[392]^c[441]^c[468]^c[474]^c[475]^c[521]^c[501]^c[504]^c[505]^c[582]^c[585]^c[553]^c[634]^c[657]^c[649]^c[650]^c[639]^c[674]^c[660]^c[684]^c[685]^c[777]^c[778]^c[730]^c[731]^c[784]^c[835]^c[792]^c[793]^c[832]^c[864]^c[870]^c[875]^c[876]^c[904]^c[914]^c[922]^c[986]^c[982]^c[968]^c[969]^c[1036]^c[1045]^c[1040]^c[1041]^c[1109]^c[1134]^c[1123]^c[1124]^c[1101]^c[1159]^c[1172]^c[1196]^c[1234]^c[1239]^c[1240]^c[1241]^c[1266]^c[1285]^c[1287]^c[1288]; //row: 16 d[i2+16*Zc]=c[39]^c[0]^c[33]^c[32]^c[71]^c[88]^c[107]^c[77]^c[150]^c[140]^c[129]^c[218]^c[220]^c[186]^c[211]^c[245]^c[295]^c[244]^c[348]^c[332]^c[320]^c[407]^c[381]^c[367]^c[476]^c[443]^c[450]^c[496]^c[536]^c[480]^c[557]^c[560]^c[588]^c[609]^c[632]^c[625]^c[709]^c[695]^c[660]^c[683]^c[752]^c[753]^c[766]^c[819]^c[810]^c[828]^c[899]^c[845]^c[851]^c[939]^c[949]^c[957]^c[961]^c[1017]^c[1004]^c[1071]^c[1020]^c[1076]^c[1084]^c[1109]^c[1099]^c[1194]^c[1147]^c[1171]^c[1209]^c[1214]^c[1216]^c[1204]^c[1301]^c[1260]^c[1263]; //row: 17 d[i2+17*Zc]=c[2]^c[891]^c[1005]^c[1058]^c[1268]; //row: 18 d[i2+18*Zc]=c[62]^c[754]^c[839]^c[1102]^c[1153]; //row: 19 d[i2+19*Zc]=c[58]^c[107]^c[458]^c[497]^c[615]; //row: 20 d[i2+20*Zc]=c[24]^c[45]^c[18]^c[17]^c[16]^c[116]^c[73]^c[92]^c[135]^c[125]^c[174]^c[203]^c[205]^c[231]^c[186]^c[290]^c[280]^c[289]^c[333]^c[317]^c[305]^c[392]^c[366]^c[412]^c[461]^c[428]^c[435]^c[481]^c[521]^c[525]^c[542]^c[545]^c[573]^c[562]^c[654]^c[617]^c[610]^c[694]^c[680]^c[705]^c[706]^c[737]^c[738]^c[751]^c[804]^c[795]^c[813]^c[884]^c[890]^c[896]^c[924]^c[934]^c[942]^c[1006]^c[1002]^c[989]^c[1056]^c[1065]^c[1061]^c[1129]^c[1094]^c[1084]^c[1179]^c[1192]^c[1156]^c[1254]^c[1259]^c[1201]^c[1286]^c[1305]^c[1308]; //row: 21 d[i2+21*Zc]=c[76]^c[301]^c[994]^c[1204]^c[1295]; //row: 22 d[i2+22*Zc]=c[24]^c[766]^c[785]^c[1077]; //row: 23 d[i2+23*Zc]=c[64]^c[126]^c[656]^c[1098]; //row: 24 d[i2+24*Zc]=c[12]^c[33]^c[6]^c[5]^c[31]^c[104]^c[61]^c[80]^c[123]^c[173]^c[162]^c[191]^c[193]^c[219]^c[237]^c[278]^c[268]^c[277]^c[241]^c[321]^c[305]^c[353]^c[380]^c[414]^c[400]^c[449]^c[476]^c[423]^c[529]^c[509]^c[513]^c[590]^c[593]^c[561]^c[642]^c[605]^c[658]^c[682]^c[668]^c[693]^c[695]^c[725]^c[726]^c[739]^c[792]^c[783]^c[801]^c[872]^c[878]^c[884]^c[912]^c[922]^c[930]^c[994]^c[990]^c[977]^c[1044]^c[1053]^c[1049]^c[1117]^c[1082]^c[1132]^c[1167]^c[1180]^c[1144]^c[1242]^c[1247]^c[1249]^c[1274]^c[1293]^c[1296]; //row: 25 d[i2+25*Zc]=c[86]^c[380]^c[430]^c[840]; //row: 26 d[i2+26*Zc]=c[42]^c[130]^c[288]^c[937]; //row: 27 d[i2+27*Zc]=c[104]^c[411]^c[488]; //row: 28 d[i2+28*Zc]=c[31]^c[282]^c[1159]^c[1284]; //row: 29 d[i2+29*Zc]=c[58]^c[19]^c[52]^c[50]^c[51]^c[90]^c[107]^c[65]^c[66]^c[111]^c[169]^c[159]^c[148]^c[237]^c[239]^c[204]^c[205]^c[264]^c[254]^c[262]^c[263]^c[307]^c[351]^c[339]^c[366]^c[400]^c[385]^c[386]^c[435]^c[462]^c[468]^c[469]^c[515]^c[495]^c[498]^c[499]^c[576]^c[579]^c[547]^c[628]^c[651]^c[643]^c[644]^c[668]^c[714]^c[678]^c[679]^c[771]^c[772]^c[724]^c[725]^c[838]^c[829]^c[786]^c[787]^c[858]^c[864]^c[869]^c[870]^c[871]^c[958]^c[908]^c[916]^c[980]^c[976]^c[962]^c[963]^c[1030]^c[1039]^c[1034]^c[1035]^c[1103]^c[1128]^c[1117]^c[1118]^c[1137]^c[1153]^c[1166]^c[1190]^c[1228]^c[1233]^c[1234]^c[1235]^c[1260]^c[1279]^c[1281]^c[1282]; //row: 30 d[i2+30*Zc]=c[0]^c[21]^c[53]^c[54]^c[52]^c[53]^c[49]^c[92]^c[108]^c[109]^c[67]^c[68]^c[171]^c[161]^c[149]^c[150]^c[239]^c[181]^c[206]^c[207]^c[266]^c[255]^c[256]^c[264]^c[265]^c[309]^c[353]^c[340]^c[341]^c[368]^c[401]^c[402]^c[387]^c[388]^c[437]^c[463]^c[464]^c[470]^c[471]^c[517]^c[496]^c[497]^c[500]^c[501]^c[578]^c[581]^c[548]^c[549]^c[630]^c[652]^c[653]^c[645]^c[646]^c[618]^c[670]^c[716]^c[680]^c[681]^c[773]^c[774]^c[726]^c[727]^c[780]^c[830]^c[831]^c[788]^c[789]^c[805]^c[860]^c[865]^c[866]^c[871]^c[872]^c[900]^c[910]^c[917]^c[918]^c[982]^c[978]^c[964]^c[965]^c[1032]^c[1040]^c[1041]^c[1036]^c[1037]^c[1105]^c[1129]^c[1130]^c[1119]^c[1120]^c[1155]^c[1168]^c[1191]^c[1192]^c[1230]^c[1234]^c[1235]^c[1236]^c[1237]^c[1262]^c[1281]^c[1283]^c[1284]; //row: 31 d[i2+31*Zc]=c[9]^c[3]^c[30]^c[24]^c[3]^c[57]^c[2]^c[55]^c[56]^c[101]^c[95]^c[118]^c[112]^c[77]^c[70]^c[71]^c[72]^c[120]^c[174]^c[170]^c[164]^c[159]^c[153]^c[188]^c[182]^c[190]^c[184]^c[216]^c[209]^c[210]^c[275]^c[269]^c[265]^c[259]^c[274]^c[267]^c[268]^c[318]^c[312]^c[302]^c[356]^c[350]^c[344]^c[377]^c[371]^c[411]^c[405]^c[397]^c[390]^c[391]^c[446]^c[440]^c[473]^c[467]^c[420]^c[473]^c[474]^c[448]^c[526]^c[520]^c[506]^c[500]^c[510]^c[503]^c[504]^c[587]^c[581]^c[590]^c[584]^c[558]^c[552]^c[639]^c[633]^c[602]^c[656]^c[655]^c[648]^c[649]^c[679]^c[673]^c[665]^c[719]^c[690]^c[683]^c[684]^c[722]^c[776]^c[723]^c[777]^c[736]^c[729]^c[730]^c[789]^c[783]^c[780]^c[834]^c[798]^c[791]^c[792]^c[869]^c[863]^c[875]^c[869]^c[881]^c[874]^c[875]^c[909]^c[903]^c[919]^c[913]^c[927]^c[921]^c[991]^c[985]^c[987]^c[981]^c[974]^c[967]^c[968]^c[1041]^c[1035]^c[1050]^c[1044]^c[1046]^c[1039]^c[1040]^c[1114]^c[1108]^c[1139]^c[1133]^c[1129]^c[1122]^c[1123]^c[1164]^c[1158]^c[1177]^c[1171]^c[1141]^c[1195]^c[1239]^c[1233]^c[1244]^c[1238]^c[1246]^c[1239]^c[1240]^c[1271]^c[1265]^c[1290]^c[1284]^c[1293]^c[1286]^c[1287]; //row: 32 d[i2+32*Zc]=c[46]^c[7]^c[39]^c[40]^c[38]^c[39]^c[42]^c[78]^c[94]^c[95]^c[113]^c[114]^c[157]^c[147]^c[135]^c[136]^c[225]^c[227]^c[192]^c[193]^c[252]^c[241]^c[242]^c[250]^c[251]^c[355]^c[339]^c[326]^c[327]^c[414]^c[387]^c[388]^c[373]^c[374]^c[423]^c[449]^c[450]^c[456]^c[457]^c[503]^c[482]^c[483]^c[486]^c[487]^c[564]^c[567]^c[594]^c[595]^c[616]^c[638]^c[639]^c[631]^c[632]^c[716]^c[702]^c[666]^c[667]^c[759]^c[760]^c[772]^c[773]^c[769]^c[826]^c[816]^c[817]^c[834]^c[835]^c[846]^c[851]^c[852]^c[857]^c[858]^c[870]^c[946]^c[956]^c[903]^c[904]^c[968]^c[964]^c[1010]^c[1011]^c[1078]^c[1026]^c[1027]^c[1022]^c[1023]^c[1091]^c[1115]^c[1116]^c[1105]^c[1106]^c[1141]^c[1154]^c[1177]^c[1178]^c[1216]^c[1220]^c[1221]^c[1222]^c[1223]^c[1308]^c[1267]^c[1269]^c[1270]; //row: 33 d[i2+33*Zc]=c[78]^c[131]^c[711]^c[1264]; //row: 34 d[i2+34*Zc]=c[40]^c[476]^c[921]^c[1079]; //row: 35 d[i2+35*Zc]=c[54]^c[15]^c[48]^c[47]^c[86]^c[103]^c[62]^c[110]^c[165]^c[155]^c[144]^c[233]^c[235]^c[201]^c[260]^c[250]^c[259]^c[303]^c[347]^c[335]^c[362]^c[396]^c[382]^c[413]^c[431]^c[458]^c[465]^c[511]^c[491]^c[495]^c[572]^c[575]^c[543]^c[624]^c[647]^c[640]^c[664]^c[710]^c[675]^c[767]^c[768]^c[721]^c[744]^c[834]^c[825]^c[783]^c[854]^c[860]^c[866]^c[954]^c[904]^c[912]^c[976]^c[972]^c[1019]^c[1026]^c[1035]^c[1031]^c[1099]^c[1124]^c[1114]^c[1149]^c[1162]^c[1186]^c[1224]^c[1229]^c[1231]^c[1316]^c[1275]^c[1278]; //row: 36 d[i2+36*Zc]=c[10]^c[866]^c[941]^c[1119]; //row: 37 d[i2+37*Zc]=c[55]^c[56]^c[17]^c[50]^c[49]^c[87]^c[88]^c[105]^c[64]^c[118]^c[166]^c[167]^c[157]^c[146]^c[234]^c[235]^c[237]^c[203]^c[262]^c[252]^c[261]^c[304]^c[305]^c[349]^c[337]^c[363]^c[364]^c[398]^c[384]^c[433]^c[460]^c[467]^c[513]^c[493]^c[497]^c[573]^c[574]^c[577]^c[545]^c[625]^c[626]^c[649]^c[642]^c[665]^c[666]^c[712]^c[677]^c[768]^c[769]^c[770]^c[723]^c[835]^c[836]^c[827]^c[785]^c[803]^c[856]^c[862]^c[868]^c[955]^c[956]^c[906]^c[914]^c[977]^c[978]^c[974]^c[961]^c[1028]^c[1037]^c[1033]^c[1100]^c[1101]^c[1126]^c[1116]^c[1150]^c[1151]^c[1164]^c[1188]^c[1225]^c[1226]^c[1231]^c[1233]^c[1317]^c[1318]^c[1277]^c[1280]; //row: 38 d[i2+38*Zc]=c[0]^c[569]^c[625]^c[739]; //row: 39 d[i2+39*Zc]=c[114]^c[187]^c[467]^c[1191]; //row: 40 d[i2+40*Zc]=c[3]^c[522]^c[1049]; //row: 41 d[i2+41*Zc]=c[112]^c[188]^c[574]^c[1103]; //row: 42 d[i2+42*Zc]=c[26]^c[47]^c[19]^c[20]^c[18]^c[19]^c[41]^c[118]^c[74]^c[75]^c[93]^c[94]^c[137]^c[127]^c[175]^c[176]^c[205]^c[207]^c[232]^c[233]^c[292]^c[281]^c[282]^c[290]^c[291]^c[289]^c[335]^c[319]^c[306]^c[307]^c[394]^c[367]^c[368]^c[413]^c[414]^c[463]^c[429]^c[430]^c[436]^c[437]^c[483]^c[522]^c[523]^c[526]^c[527]^c[544]^c[547]^c[574]^c[575]^c[656]^c[618]^c[619]^c[611]^c[612]^c[696]^c[682]^c[706]^c[707]^c[739]^c[740]^c[752]^c[753]^c[806]^c[796]^c[797]^c[814]^c[815]^c[886]^c[891]^c[892]^c[897]^c[898]^c[926]^c[936]^c[943]^c[944]^c[1008]^c[1004]^c[990]^c[991]^c[1058]^c[1066]^c[1067]^c[1062]^c[1063]^c[1131]^c[1095]^c[1096]^c[1085]^c[1086]^c[1181]^c[1194]^c[1157]^c[1158]^c[1256]^c[1200]^c[1201]^c[1202]^c[1203]^c[1288]^c[1307]^c[1309]^c[1310]; //row: 43 d[i2+43*Zc]=c[20]^c[41]^c[14]^c[12]^c[13]^c[112]^c[69]^c[87]^c[88]^c[81]^c[131]^c[121]^c[170]^c[199]^c[201]^c[226]^c[227]^c[286]^c[276]^c[284]^c[285]^c[329]^c[313]^c[301]^c[388]^c[362]^c[407]^c[408]^c[457]^c[424]^c[430]^c[431]^c[537]^c[517]^c[520]^c[521]^c[598]^c[541]^c[569]^c[650]^c[613]^c[605]^c[606]^c[690]^c[676]^c[700]^c[701]^c[733]^c[734]^c[746]^c[747]^c[800]^c[791]^c[808]^c[809]^c[880]^c[886]^c[891]^c[892]^c[920]^c[930]^c[938]^c[1002]^c[998]^c[984]^c[985]^c[966]^c[1052]^c[1061]^c[1056]^c[1057]^c[1125]^c[1090]^c[1139]^c[1080]^c[1128]^c[1175]^c[1188]^c[1152]^c[1250]^c[1255]^c[1256]^c[1257]^c[1282]^c[1301]^c[1303]^c[1304]; //row: 44 d[i2+44*Zc]=c[42]^c[3]^c[36]^c[35]^c[10]^c[74]^c[91]^c[110]^c[153]^c[143]^c[132]^c[221]^c[223]^c[189]^c[248]^c[298]^c[247]^c[351]^c[335]^c[323]^c[410]^c[384]^c[370]^c[479]^c[446]^c[453]^c[450]^c[499]^c[539]^c[483]^c[560]^c[563]^c[591]^c[546]^c[612]^c[635]^c[628]^c[712]^c[698]^c[663]^c[755]^c[756]^c[769]^c[822]^c[813]^c[831]^c[842]^c[848]^c[854]^c[942]^c[952]^c[900]^c[964]^c[960]^c[1007]^c[1074]^c[1023]^c[1079]^c[1087]^c[1112]^c[1102]^c[1197]^c[1150]^c[1174]^c[1212]^c[1217]^c[1219]^c[1304]^c[1263]^c[1266]; //row: 45 d[i2+45*Zc]=c[116]^c[413]^c[632]; } break; case 64: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[57]^c[1]^c[41]^c[56]^c[68]^c[110]^c[88]^c[161]^c[174]^c[184]^c[222]^c[244]^c[211]^c[315]^c[318]^c[275]^c[355]^c[326]^c[372]^c[393]^c[412]^c[405]^c[477]^c[484]^c[450]^c[551]^c[560]^c[562]^c[634]^c[620]^c[606]^c[676]^c[678]^c[647]^c[749]^c[731]^c[725]^c[830]^c[805]^c[821]^c[840]^c[845]^c[858]^c[940]^c[928]^c[914]^c[962]^c[963]^c[992]^c[1046]^c[1037]^c[1071]^c[1114]^c[1140]^c[1099]^c[1213]^c[1164]^c[1203]^c[1250]^c[1278]^c[1274]^c[1326]^c[1332]^c[1295]^c[1374]^c[1371]^c[1355]; //row: 1 d[i2+1*Zc]=c[57]^c[58]^c[2]^c[42]^c[57]^c[68]^c[69]^c[111]^c[89]^c[161]^c[162]^c[175]^c[185]^c[222]^c[223]^c[245]^c[212]^c[316]^c[319]^c[276]^c[355]^c[356]^c[327]^c[373]^c[393]^c[394]^c[413]^c[406]^c[478]^c[485]^c[451]^c[552]^c[561]^c[563]^c[634]^c[635]^c[621]^c[607]^c[676]^c[677]^c[679]^c[648]^c[749]^c[750]^c[732]^c[726]^c[830]^c[831]^c[806]^c[822]^c[840]^c[841]^c[846]^c[859]^c[941]^c[929]^c[915]^c[962]^c[963]^c[964]^c[993]^c[1046]^c[1047]^c[1038]^c[1072]^c[1115]^c[1141]^c[1100]^c[1213]^c[1214]^c[1165]^c[1204]^c[1250]^c[1251]^c[1279]^c[1275]^c[1326]^c[1327]^c[1333]^c[1296]^c[1374]^c[1375]^c[1372]^c[1356]; //row: 2 d[i2+2*Zc]=c[58]^c[2]^c[41]^c[42]^c[56]^c[57]^c[69]^c[110]^c[111]^c[88]^c[89]^c[162]^c[175]^c[184]^c[185]^c[223]^c[245]^c[211]^c[212]^c[316]^c[318]^c[319]^c[275]^c[276]^c[356]^c[327]^c[372]^c[373]^c[394]^c[412]^c[413]^c[405]^c[406]^c[478]^c[484]^c[485]^c[450]^c[451]^c[552]^c[560]^c[561]^c[562]^c[563]^c[635]^c[621]^c[606]^c[607]^c[677]^c[678]^c[679]^c[647]^c[648]^c[750]^c[732]^c[725]^c[726]^c[831]^c[806]^c[821]^c[822]^c[841]^c[845]^c[846]^c[858]^c[859]^c[941]^c[928]^c[929]^c[914]^c[915]^c[963]^c[964]^c[992]^c[993]^c[1047]^c[1038]^c[1071]^c[1072]^c[1115]^c[1140]^c[1141]^c[1099]^c[1100]^c[1214]^c[1164]^c[1165]^c[1203]^c[1204]^c[1251]^c[1279]^c[1274]^c[1275]^c[1327]^c[1332]^c[1333]^c[1295]^c[1296]^c[1375]^c[1372]^c[1355]^c[1356]; //row: 3 d[i2+3*Zc]=c[58]^c[2]^c[42]^c[56]^c[57]^c[69]^c[111]^c[88]^c[89]^c[162]^c[175]^c[185]^c[223]^c[245]^c[211]^c[212]^c[316]^c[319]^c[275]^c[276]^c[356]^c[327]^c[373]^c[394]^c[413]^c[405]^c[406]^c[478]^c[485]^c[450]^c[451]^c[552]^c[561]^c[562]^c[563]^c[635]^c[621]^c[607]^c[677]^c[679]^c[647]^c[648]^c[750]^c[732]^c[725]^c[726]^c[831]^c[806]^c[821]^c[822]^c[841]^c[846]^c[858]^c[859]^c[941]^c[929]^c[914]^c[915]^c[963]^c[964]^c[993]^c[1047]^c[1038]^c[1071]^c[1072]^c[1115]^c[1141]^c[1099]^c[1100]^c[1214]^c[1165]^c[1203]^c[1204]^c[1251]^c[1279]^c[1275]^c[1327]^c[1333]^c[1295]^c[1296]^c[1375]^c[1372]^c[1355]^c[1356]; //row: 4 d[i2+4*Zc]=c[28]^c[101]; //row: 5 d[i2+5*Zc]=c[44]^c[52]^c[28]^c[43]^c[12]^c[119]^c[97]^c[75]^c[107]^c[148]^c[161]^c[171]^c[209]^c[231]^c[198]^c[193]^c[302]^c[305]^c[262]^c[342]^c[377]^c[359]^c[444]^c[399]^c[392]^c[464]^c[471]^c[501]^c[538]^c[547]^c[549]^c[621]^c[607]^c[593]^c[663]^c[665]^c[698]^c[736]^c[718]^c[712]^c[817]^c[792]^c[808]^c[806]^c[891]^c[832]^c[845]^c[927]^c[915]^c[901]^c[1013]^c[1014]^c[979]^c[1033]^c[1024]^c[1058]^c[1051]^c[1101]^c[1127]^c[1150]^c[1200]^c[1215]^c[1190]^c[1237]^c[1265]^c[1261]^c[1313]^c[1319]^c[1282]^c[1361]^c[1358]^c[1406]^c[1402]; //row: 6 d[i2+6*Zc]=c[54]^c[405]^c[667]^c[706]^c[883]^c[1098]^c[1180]^c[1298]; //row: 7 d[i2+7*Zc]=c[27]^c[107]^c[286]^c[478]^c[550]^c[935]; //row: 8 d[i2+8*Zc]=c[42]^c[20]^c[50]^c[28]^c[26]^c[3]^c[4]^c[41]^c[18]^c[19]^c[47]^c[117]^c[95]^c[95]^c[72]^c[73]^c[73]^c[114]^c[115]^c[67]^c[146]^c[188]^c[159]^c[137]^c[169]^c[146]^c[147]^c[207]^c[249]^c[229]^c[207]^c[196]^c[237]^c[238]^c[198]^c[300]^c[278]^c[303]^c[280]^c[281]^c[260]^c[301]^c[302]^c[340]^c[382]^c[375]^c[353]^c[357]^c[334]^c[335]^c[442]^c[420]^c[397]^c[438]^c[439]^c[390]^c[431]^c[432]^c[462]^c[504]^c[469]^c[510]^c[511]^c[499]^c[476]^c[477]^c[536]^c[514]^c[545]^c[522]^c[523]^c[547]^c[524]^c[525]^c[619]^c[597]^c[605]^c[583]^c[591]^c[632]^c[633]^c[661]^c[703]^c[663]^c[640]^c[641]^c[696]^c[673]^c[674]^c[734]^c[712]^c[716]^c[758]^c[710]^c[751]^c[752]^c[815]^c[793]^c[790]^c[768]^c[806]^c[783]^c[784]^c[786]^c[889]^c[867]^c[894]^c[871]^c[872]^c[843]^c[884]^c[885]^c[925]^c[903]^c[913]^c[954]^c[955]^c[899]^c[940]^c[941]^c[1011]^c[989]^c[1012]^c[990]^c[977]^c[1018]^c[1019]^c[1031]^c[1073]^c[1086]^c[1064]^c[1056]^c[1033]^c[1034]^c[1061]^c[1099]^c[1141]^c[1125]^c[1102]^c[1103]^c[1148]^c[1125]^c[1126]^c[1198]^c[1176]^c[1213]^c[1190]^c[1191]^c[1188]^c[1165]^c[1166]^c[1235]^c[1277]^c[1263]^c[1241]^c[1259]^c[1236]^c[1237]^c[1251]^c[1311]^c[1289]^c[1317]^c[1294]^c[1295]^c[1280]^c[1321]^c[1322]^c[1359]^c[1401]^c[1356]^c[1398]^c[1404]^c[1381]^c[1382]^c[1388]; //row: 9 d[i2+9*Zc]=c[38]^c[117]^c[684]^c[724]^c[845]^c[1101]^c[1212]^c[1303]; //row: 10 d[i2+10*Zc]=c[97]^c[148]^c[294]^c[479]^c[560]^c[953]; //row: 11 d[i2+11*Zc]=c[53]^c[15]^c[16]^c[61]^c[24]^c[37]^c[0]^c[52]^c[15]^c[12]^c[64]^c[90]^c[91]^c[106]^c[69]^c[84]^c[111]^c[104]^c[157]^c[183]^c[184]^c[170]^c[133]^c[180]^c[143]^c[218]^c[244]^c[245]^c[240]^c[203]^c[207]^c[234]^c[311]^c[274]^c[314]^c[277]^c[271]^c[298]^c[351]^c[377]^c[378]^c[322]^c[349]^c[368]^c[331]^c[389]^c[415]^c[416]^c[408]^c[435]^c[401]^c[428]^c[473]^c[500]^c[480]^c[507]^c[510]^c[473]^c[547]^c[574]^c[556]^c[519]^c[558]^c[521]^c[630]^c[592]^c[593]^c[616]^c[579]^c[602]^c[629]^c[672]^c[698]^c[699]^c[674]^c[701]^c[643]^c[670]^c[745]^c[707]^c[708]^c[727]^c[754]^c[721]^c[748]^c[826]^c[788]^c[789]^c[801]^c[828]^c[817]^c[780]^c[786]^c[836]^c[862]^c[863]^c[841]^c[868]^c[854]^c[881]^c[936]^c[899]^c[924]^c[951]^c[910]^c[937]^c[1022]^c[984]^c[985]^c[1023]^c[986]^c[988]^c[1015]^c[1042]^c[1068]^c[1069]^c[1033]^c[1060]^c[1067]^c[1030]^c[1077]^c[1110]^c[1137]^c[1136]^c[1099]^c[1095]^c[1122]^c[1209]^c[1171]^c[1172]^c[1160]^c[1187]^c[1199]^c[1162]^c[1246]^c[1272]^c[1273]^c[1274]^c[1237]^c[1270]^c[1233]^c[1322]^c[1284]^c[1285]^c[1328]^c[1291]^c[1291]^c[1318]^c[1370]^c[1396]^c[1397]^c[1367]^c[1394]^c[1351]^c[1378]^c[1357]; //row: 12 d[i2+12*Zc]=c[31]^c[105]^c[660]^c[735]^c[873]^c[1158]; //row: 13 d[i2+13*Zc]=c[55]^c[56]^c[0]^c[40]^c[55]^c[48]^c[66]^c[67]^c[109]^c[87]^c[159]^c[160]^c[173]^c[183]^c[220]^c[221]^c[243]^c[210]^c[247]^c[314]^c[317]^c[274]^c[353]^c[354]^c[325]^c[371]^c[391]^c[392]^c[411]^c[404]^c[476]^c[483]^c[449]^c[470]^c[550]^c[559]^c[561]^c[632]^c[633]^c[619]^c[605]^c[674]^c[675]^c[677]^c[646]^c[747]^c[748]^c[730]^c[724]^c[828]^c[829]^c[804]^c[820]^c[838]^c[839]^c[844]^c[857]^c[939]^c[927]^c[913]^c[960]^c[961]^c[962]^c[991]^c[1044]^c[1045]^c[1036]^c[1070]^c[1113]^c[1139]^c[1098]^c[1211]^c[1212]^c[1163]^c[1202]^c[1248]^c[1249]^c[1277]^c[1273]^c[1324]^c[1325]^c[1331]^c[1294]^c[1336]^c[1372]^c[1373]^c[1370]^c[1354]; //row: 14 d[i2+14*Zc]=c[13]^c[822]^c[973]^c[1086]^c[1103]^c[1380]; //row: 15 d[i2+15*Zc]=c[45]^c[53]^c[29]^c[43]^c[44]^c[39]^c[120]^c[98]^c[75]^c[76]^c[95]^c[149]^c[162]^c[172]^c[210]^c[232]^c[198]^c[199]^c[303]^c[306]^c[262]^c[263]^c[343]^c[378]^c[360]^c[445]^c[400]^c[392]^c[393]^c[465]^c[472]^c[501]^c[502]^c[539]^c[548]^c[549]^c[550]^c[622]^c[608]^c[594]^c[664]^c[666]^c[698]^c[699]^c[640]^c[737]^c[719]^c[712]^c[713]^c[818]^c[793]^c[808]^c[809]^c[892]^c[833]^c[845]^c[846]^c[894]^c[928]^c[916]^c[901]^c[902]^c[1014]^c[1015]^c[980]^c[1034]^c[1025]^c[1058]^c[1059]^c[1102]^c[1128]^c[1150]^c[1151]^c[1201]^c[1152]^c[1190]^c[1191]^c[1162]^c[1238]^c[1266]^c[1262]^c[1314]^c[1320]^c[1282]^c[1283]^c[1362]^c[1359]^c[1406]^c[1407]; //row: 16 d[i2+16*Zc]=c[19]^c[27]^c[3]^c[18]^c[94]^c[72]^c[114]^c[127]^c[187]^c[136]^c[146]^c[248]^c[206]^c[237]^c[240]^c[277]^c[280]^c[301]^c[381]^c[352]^c[334]^c[419]^c[438]^c[431]^c[503]^c[510]^c[476]^c[513]^c[522]^c[524]^c[596]^c[582]^c[632]^c[702]^c[640]^c[673]^c[711]^c[757]^c[751]^c[752]^c[792]^c[831]^c[783]^c[866]^c[871]^c[884]^c[902]^c[954]^c[940]^c[988]^c[989]^c[1018]^c[1072]^c[1063]^c[1033]^c[1140]^c[1102]^c[1125]^c[1175]^c[1190]^c[1165]^c[1276]^c[1240]^c[1236]^c[1288]^c[1294]^c[1321]^c[1330]^c[1400]^c[1397]^c[1381]; //row: 17 d[i2+17*Zc]=c[6]^c[931]^c[1082]^c[1088]^c[1359]; //row: 18 d[i2+18*Zc]=c[105]^c[808]^c[839]^c[1178]^c[1234]; //row: 19 d[i2+19*Zc]=c[59]^c[72]^c[455]^c[574]^c[671]; //row: 20 d[i2+20*Zc]=c[25]^c[33]^c[9]^c[24]^c[22]^c[100]^c[78]^c[120]^c[129]^c[142]^c[152]^c[254]^c[212]^c[243]^c[249]^c[283]^c[286]^c[307]^c[323]^c[358]^c[340]^c[425]^c[444]^c[437]^c[509]^c[452]^c[482]^c[519]^c[528]^c[530]^c[602]^c[588]^c[638]^c[600]^c[644]^c[646]^c[679]^c[717]^c[763]^c[757]^c[750]^c[798]^c[773]^c[789]^c[872]^c[877]^c[890]^c[908]^c[896]^c[946]^c[994]^c[995]^c[960]^c[1078]^c[1069]^c[1039]^c[1146]^c[1108]^c[1131]^c[1181]^c[1196]^c[1171]^c[1218]^c[1246]^c[1242]^c[1294]^c[1300]^c[1327]^c[1406]^c[1403]^c[1387]; //row: 21 d[i2+21*Zc]=c[120]^c[376]^c[1068]^c[1282]^c[1386]; //row: 22 d[i2+22*Zc]=c[63]^c[781]^c[891]^c[1117]; //row: 23 d[i2+23*Zc]=c[91]^c[146]^c[681]^c[1175]; //row: 24 d[i2+24*Zc]=c[23]^c[31]^c[7]^c[22]^c[47]^c[98]^c[76]^c[118]^c[191]^c[140]^c[150]^c[252]^c[210]^c[241]^c[213]^c[281]^c[284]^c[305]^c[299]^c[321]^c[356]^c[338]^c[423]^c[442]^c[435]^c[507]^c[450]^c[480]^c[517]^c[526]^c[528]^c[600]^c[586]^c[636]^c[642]^c[644]^c[677]^c[715]^c[761]^c[755]^c[755]^c[796]^c[771]^c[787]^c[870]^c[875]^c[888]^c[906]^c[958]^c[944]^c[992]^c[993]^c[1022]^c[1076]^c[1067]^c[1037]^c[1144]^c[1106]^c[1129]^c[1179]^c[1194]^c[1169]^c[1216]^c[1244]^c[1240]^c[1292]^c[1298]^c[1325]^c[1404]^c[1401]^c[1385]; //row: 25 d[i2+25*Zc]=c[86]^c[391]^c[499]^c[949]; //row: 26 d[i2+26*Zc]=c[2]^c[178]^c[278]^c[1020]; //row: 27 d[i2+27*Zc]=c[88]^c[423]^c[513]; //row: 28 d[i2+28*Zc]=c[63]^c[292]^c[1268]^c[1406]; //row: 29 d[i2+29*Zc]=c[0]^c[8]^c[48]^c[62]^c[63]^c[75]^c[117]^c[94]^c[95]^c[85]^c[168]^c[181]^c[191]^c[229]^c[251]^c[217]^c[218]^c[258]^c[261]^c[281]^c[282]^c[362]^c[333]^c[379]^c[400]^c[419]^c[411]^c[412]^c[484]^c[491]^c[456]^c[457]^c[558]^c[567]^c[568]^c[569]^c[577]^c[627]^c[613]^c[683]^c[685]^c[653]^c[654]^c[756]^c[738]^c[731]^c[732]^c[773]^c[812]^c[827]^c[828]^c[847]^c[852]^c[864]^c[865]^c[947]^c[935]^c[920]^c[921]^c[939]^c[969]^c[970]^c[999]^c[1053]^c[1044]^c[1077]^c[1078]^c[1121]^c[1147]^c[1105]^c[1106]^c[1156]^c[1171]^c[1209]^c[1210]^c[1171]^c[1257]^c[1221]^c[1217]^c[1333]^c[1339]^c[1301]^c[1302]^c[1381]^c[1378]^c[1361]^c[1362]; //row: 30 d[i2+30*Zc]=c[3]^c[11]^c[50]^c[51]^c[1]^c[2]^c[23]^c[78]^c[119]^c[120]^c[97]^c[98]^c[171]^c[184]^c[129]^c[130]^c[232]^c[254]^c[220]^c[221]^c[261]^c[263]^c[264]^c[284]^c[285]^c[365]^c[336]^c[381]^c[382]^c[403]^c[421]^c[422]^c[414]^c[415]^c[487]^c[493]^c[494]^c[459]^c[460]^c[561]^c[569]^c[570]^c[571]^c[572]^c[580]^c[630]^c[615]^c[616]^c[686]^c[687]^c[688]^c[656]^c[657]^c[648]^c[759]^c[741]^c[734]^c[735]^c[776]^c[815]^c[830]^c[831]^c[850]^c[854]^c[855]^c[867]^c[868]^c[887]^c[950]^c[937]^c[938]^c[923]^c[924]^c[972]^c[973]^c[1001]^c[1002]^c[1056]^c[1047]^c[1080]^c[1081]^c[1124]^c[1149]^c[1150]^c[1108]^c[1109]^c[1159]^c[1173]^c[1174]^c[1212]^c[1213]^c[1260]^c[1224]^c[1219]^c[1220]^c[1336]^c[1341]^c[1342]^c[1304]^c[1305]^c[1384]^c[1381]^c[1364]^c[1365]; //row: 31 d[i2+31*Zc]=c[37]^c[55]^c[45]^c[63]^c[21]^c[39]^c[36]^c[53]^c[54]^c[112]^c[66]^c[90]^c[108]^c[68]^c[85]^c[86]^c[94]^c[141]^c[159]^c[154]^c[172]^c[164]^c[182]^c[202]^c[220]^c[224]^c[242]^c[255]^c[208]^c[209]^c[295]^c[313]^c[298]^c[316]^c[319]^c[272]^c[273]^c[335]^c[353]^c[370]^c[324]^c[352]^c[370]^c[437]^c[391]^c[392]^c[410]^c[385]^c[402]^c[403]^c[457]^c[475]^c[464]^c[482]^c[494]^c[511]^c[448]^c[496]^c[531]^c[549]^c[540]^c[558]^c[542]^c[559]^c[560]^c[614]^c[632]^c[600]^c[618]^c[586]^c[604]^c[656]^c[674]^c[658]^c[676]^c[691]^c[644]^c[645]^c[729]^c[747]^c[711]^c[729]^c[705]^c[722]^c[723]^c[810]^c[828]^c[785]^c[803]^c[801]^c[818]^c[819]^c[884]^c[838]^c[889]^c[843]^c[838]^c[855]^c[856]^c[920]^c[938]^c[908]^c[926]^c[958]^c[911]^c[912]^c[1006]^c[960]^c[1007]^c[961]^c[972]^c[990]^c[1026]^c[1044]^c[1081]^c[1035]^c[1051]^c[1068]^c[1069]^c[1094]^c[1112]^c[1120]^c[1138]^c[1143]^c[1096]^c[1097]^c[1193]^c[1211]^c[1208]^c[1162]^c[1183]^c[1200]^c[1201]^c[1230]^c[1248]^c[1258]^c[1276]^c[1254]^c[1272]^c[1306]^c[1324]^c[1312]^c[1330]^c[1339]^c[1292]^c[1293]^c[1354]^c[1372]^c[1351]^c[1369]^c[1399]^c[1352]^c[1353]; //row: 32 d[i2+32*Zc]=c[51]^c[59]^c[34]^c[35]^c[49]^c[50]^c[28]^c[126]^c[103]^c[104]^c[81]^c[82]^c[155]^c[168]^c[177]^c[178]^c[216]^c[238]^c[204]^c[205]^c[309]^c[311]^c[312]^c[268]^c[269]^c[349]^c[320]^c[365]^c[366]^c[387]^c[405]^c[406]^c[398]^c[399]^c[471]^c[477]^c[478]^c[507]^c[508]^c[545]^c[553]^c[554]^c[555]^c[556]^c[628]^c[614]^c[599]^c[600]^c[670]^c[671]^c[672]^c[640]^c[641]^c[743]^c[725]^c[718]^c[719]^c[824]^c[799]^c[814]^c[815]^c[815]^c[834]^c[838]^c[839]^c[851]^c[852]^c[934]^c[921]^c[922]^c[907]^c[908]^c[902]^c[1020]^c[1021]^c[985]^c[986]^c[1040]^c[1031]^c[1064]^c[1065]^c[1108]^c[1133]^c[1134]^c[1092]^c[1093]^c[1207]^c[1157]^c[1158]^c[1196]^c[1197]^c[1244]^c[1272]^c[1267]^c[1268]^c[1320]^c[1325]^c[1326]^c[1288]^c[1289]^c[1368]^c[1365]^c[1348]^c[1349]; //row: 33 d[i2+33*Zc]=c[65]^c[186]^c[744]^c[1362]; //row: 34 d[i2+34*Zc]=c[62]^c[486]^c[995]^c[1118]; //row: 35 d[i2+35*Zc]=c[32]^c[40]^c[16]^c[31]^c[107]^c[85]^c[127]^c[96]^c[136]^c[149]^c[159]^c[197]^c[219]^c[250]^c[290]^c[293]^c[314]^c[330]^c[365]^c[347]^c[432]^c[387]^c[444]^c[388]^c[452]^c[459]^c[489]^c[526]^c[535]^c[537]^c[609]^c[595]^c[581]^c[651]^c[653]^c[686]^c[724]^c[706]^c[764]^c[805]^c[780]^c[796]^c[782]^c[879]^c[884]^c[833]^c[915]^c[903]^c[953]^c[1001]^c[1002]^c[967]^c[1085]^c[1076]^c[1046]^c[1089]^c[1115]^c[1138]^c[1188]^c[1203]^c[1178]^c[1225]^c[1253]^c[1249]^c[1301]^c[1307]^c[1334]^c[1349]^c[1346]^c[1394]; //row: 36 d[i2+36*Zc]=c[36]^c[936]^c[1010]^c[1207]; //row: 37 d[i2+37*Zc]=c[51]^c[52]^c[60]^c[36]^c[51]^c[126]^c[127]^c[105]^c[83]^c[69]^c[155]^c[156]^c[169]^c[179]^c[216]^c[217]^c[239]^c[206]^c[310]^c[313]^c[270]^c[349]^c[350]^c[321]^c[367]^c[387]^c[388]^c[407]^c[400]^c[472]^c[479]^c[509]^c[546]^c[555]^c[557]^c[628]^c[629]^c[615]^c[601]^c[670]^c[671]^c[673]^c[642]^c[743]^c[744]^c[726]^c[720]^c[824]^c[825]^c[800]^c[816]^c[834]^c[835]^c[840]^c[853]^c[859]^c[935]^c[923]^c[909]^c[1020]^c[1021]^c[1022]^c[987]^c[1040]^c[1041]^c[1032]^c[1066]^c[1109]^c[1135]^c[1094]^c[1207]^c[1208]^c[1159]^c[1198]^c[1244]^c[1245]^c[1273]^c[1269]^c[1320]^c[1321]^c[1327]^c[1290]^c[1368]^c[1369]^c[1366]^c[1350]; //row: 38 d[i2+38*Zc]=c[38]^c[598]^c[668]^c[802]; //row: 39 d[i2+39*Zc]=c[108]^c[202]^c[468]^c[1279]; //row: 40 d[i2+40*Zc]=c[28]^c[520]^c[1108]; //row: 41 d[i2+41*Zc]=c[102]^c[236]^c[586]^c[1174]; //row: 42 d[i2+42*Zc]=c[3]^c[11]^c[50]^c[51]^c[1]^c[2]^c[20]^c[78]^c[119]^c[120]^c[97]^c[98]^c[171]^c[184]^c[129]^c[130]^c[232]^c[254]^c[220]^c[221]^c[261]^c[263]^c[264]^c[284]^c[285]^c[284]^c[365]^c[336]^c[381]^c[382]^c[403]^c[421]^c[422]^c[414]^c[415]^c[487]^c[493]^c[494]^c[459]^c[460]^c[561]^c[569]^c[570]^c[571]^c[572]^c[580]^c[630]^c[615]^c[616]^c[686]^c[687]^c[688]^c[656]^c[657]^c[759]^c[741]^c[734]^c[735]^c[776]^c[815]^c[830]^c[831]^c[850]^c[854]^c[855]^c[867]^c[868]^c[950]^c[937]^c[938]^c[923]^c[924]^c[972]^c[973]^c[1001]^c[1002]^c[1056]^c[1047]^c[1080]^c[1081]^c[1124]^c[1149]^c[1150]^c[1108]^c[1109]^c[1159]^c[1173]^c[1174]^c[1212]^c[1213]^c[1260]^c[1224]^c[1219]^c[1220]^c[1336]^c[1341]^c[1342]^c[1304]^c[1305]^c[1384]^c[1381]^c[1364]^c[1365]; //row: 43 d[i2+43*Zc]=c[5]^c[13]^c[53]^c[3]^c[4]^c[80]^c[122]^c[99]^c[100]^c[86]^c[173]^c[186]^c[132]^c[234]^c[192]^c[222]^c[223]^c[263]^c[266]^c[286]^c[287]^c[367]^c[338]^c[320]^c[405]^c[424]^c[416]^c[417]^c[489]^c[496]^c[461]^c[462]^c[563]^c[572]^c[573]^c[574]^c[582]^c[632]^c[618]^c[688]^c[690]^c[658]^c[659]^c[761]^c[743]^c[736]^c[737]^c[778]^c[817]^c[768]^c[769]^c[852]^c[857]^c[869]^c[870]^c[952]^c[940]^c[925]^c[926]^c[974]^c[975]^c[1004]^c[1058]^c[1049]^c[1082]^c[1083]^c[1058]^c[1126]^c[1088]^c[1110]^c[1111]^c[1161]^c[1176]^c[1214]^c[1215]^c[1196]^c[1262]^c[1226]^c[1222]^c[1338]^c[1280]^c[1306]^c[1307]^c[1386]^c[1383]^c[1366]^c[1367]; //row: 44 d[i2+44*Zc]=c[38]^c[46]^c[22]^c[37]^c[10]^c[113]^c[91]^c[69]^c[142]^c[155]^c[165]^c[203]^c[225]^c[192]^c[296]^c[299]^c[256]^c[336]^c[371]^c[353]^c[438]^c[393]^c[386]^c[458]^c[465]^c[495]^c[476]^c[532]^c[541]^c[543]^c[615]^c[601]^c[587]^c[610]^c[657]^c[659]^c[692]^c[730]^c[712]^c[706]^c[811]^c[786]^c[802]^c[885]^c[890]^c[839]^c[921]^c[909]^c[959]^c[1007]^c[1008]^c[973]^c[1027]^c[1082]^c[1052]^c[1095]^c[1121]^c[1144]^c[1194]^c[1209]^c[1184]^c[1231]^c[1259]^c[1255]^c[1307]^c[1313]^c[1340]^c[1355]^c[1352]^c[1400]; //row: 45 d[i2+45*Zc]=c[84]^c[406]^c[678]; } break; case 72: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[66]^c[34]^c[41]^c[42]^c[125]^c[94]^c[72]^c[187]^c[161]^c[147]^c[257]^c[222]^c[237]^c[327]^c[348]^c[323]^c[362]^c[375]^c[386]^c[435]^c[489]^c[441]^c[507]^c[505]^c[563]^c[633]^c[638]^c[628]^c[676]^c[692]^c[719]^c[791]^c[722]^c[760]^c[835]^c[828]^c[809]^c[935]^c[878]^c[920]^c[978]^c[937]^c[971]^c[1079]^c[1020]^c[1050]^c[1096]^c[1087]^c[1151]^c[1223]^c[1165]^c[1177]^c[1226]^c[1295]^c[1244]^c[1318]^c[1348]^c[1367]^c[1439]^c[1379]^c[1423]^c[1440]^c[1457]^c[1480]^c[1556]^c[1558]^c[1547]; //row: 1 d[i2+1*Zc]=c[66]^c[67]^c[35]^c[42]^c[43]^c[125]^c[126]^c[95]^c[73]^c[187]^c[188]^c[162]^c[148]^c[257]^c[258]^c[223]^c[238]^c[328]^c[349]^c[324]^c[362]^c[363]^c[376]^c[387]^c[435]^c[436]^c[490]^c[442]^c[508]^c[506]^c[564]^c[634]^c[639]^c[629]^c[676]^c[677]^c[693]^c[648]^c[791]^c[720]^c[723]^c[761]^c[835]^c[836]^c[829]^c[810]^c[935]^c[864]^c[879]^c[921]^c[978]^c[979]^c[938]^c[972]^c[1008]^c[1021]^c[1051]^c[1096]^c[1097]^c[1088]^c[1080]^c[1223]^c[1152]^c[1166]^c[1178]^c[1227]^c[1224]^c[1245]^c[1318]^c[1319]^c[1349]^c[1296]^c[1439]^c[1368]^c[1380]^c[1424]^c[1440]^c[1441]^c[1458]^c[1481]^c[1556]^c[1557]^c[1559]^c[1548]; //row: 2 d[i2+2*Zc]=c[67]^c[35]^c[41]^c[42]^c[42]^c[43]^c[126]^c[94]^c[95]^c[72]^c[73]^c[188]^c[162]^c[147]^c[148]^c[258]^c[223]^c[237]^c[238]^c[328]^c[348]^c[349]^c[323]^c[324]^c[363]^c[376]^c[386]^c[387]^c[436]^c[489]^c[490]^c[441]^c[442]^c[508]^c[505]^c[506]^c[563]^c[564]^c[634]^c[638]^c[639]^c[628]^c[629]^c[677]^c[693]^c[719]^c[648]^c[720]^c[722]^c[723]^c[760]^c[761]^c[836]^c[829]^c[809]^c[810]^c[864]^c[879]^c[920]^c[921]^c[979]^c[937]^c[938]^c[971]^c[972]^c[1008]^c[1020]^c[1021]^c[1050]^c[1051]^c[1097]^c[1088]^c[1151]^c[1080]^c[1152]^c[1166]^c[1177]^c[1178]^c[1227]^c[1295]^c[1224]^c[1244]^c[1245]^c[1319]^c[1348]^c[1349]^c[1367]^c[1296]^c[1368]^c[1380]^c[1423]^c[1424]^c[1441]^c[1457]^c[1458]^c[1480]^c[1481]^c[1557]^c[1559]^c[1547]^c[1548]; //row: 3 d[i2+3*Zc]=c[67]^c[35]^c[42]^c[42]^c[43]^c[126]^c[95]^c[72]^c[73]^c[188]^c[162]^c[148]^c[258]^c[223]^c[237]^c[238]^c[328]^c[349]^c[323]^c[324]^c[363]^c[376]^c[387]^c[436]^c[490]^c[441]^c[442]^c[508]^c[506]^c[563]^c[564]^c[634]^c[639]^c[628]^c[629]^c[677]^c[693]^c[648]^c[720]^c[723]^c[760]^c[761]^c[836]^c[829]^c[809]^c[810]^c[864]^c[879]^c[920]^c[921]^c[979]^c[938]^c[971]^c[972]^c[1008]^c[1021]^c[1050]^c[1051]^c[1097]^c[1088]^c[1080]^c[1152]^c[1166]^c[1177]^c[1178]^c[1227]^c[1224]^c[1244]^c[1245]^c[1319]^c[1349]^c[1367]^c[1296]^c[1368]^c[1380]^c[1424]^c[1441]^c[1458]^c[1480]^c[1481]^c[1557]^c[1559]^c[1547]^c[1548]; //row: 4 d[i2+4*Zc]=c[29]^c[90]; //row: 5 d[i2+5*Zc]=c[66]^c[34]^c[41]^c[42]^c[44]^c[125]^c[94]^c[72]^c[108]^c[187]^c[161]^c[147]^c[257]^c[222]^c[237]^c[287]^c[327]^c[348]^c[323]^c[362]^c[375]^c[386]^c[435]^c[489]^c[441]^c[507]^c[505]^c[563]^c[633]^c[638]^c[628]^c[676]^c[692]^c[719]^c[791]^c[722]^c[760]^c[835]^c[828]^c[809]^c[935]^c[878]^c[920]^c[930]^c[978]^c[937]^c[971]^c[1079]^c[1020]^c[1050]^c[1096]^c[1087]^c[1151]^c[1223]^c[1165]^c[1177]^c[1189]^c[1226]^c[1295]^c[1244]^c[1318]^c[1348]^c[1367]^c[1439]^c[1379]^c[1423]^c[1440]^c[1457]^c[1480]^c[1556]^c[1558]^c[1547]^c[1518]; //row: 6 d[i2+6*Zc]=c[7]^c[503]^c[744]^c[809]^c[994]^c[1256]^c[1302]^c[1475]; //row: 7 d[i2+7*Zc]=c[24]^c[116]^c[297]^c[543]^c[607]^c[1027]; //row: 8 d[i2+8*Zc]=c[8]^c[49]^c[48]^c[17]^c[55]^c[23]^c[24]^c[56]^c[24]^c[25]^c[53]^c[139]^c[108]^c[108]^c[76]^c[77]^c[86]^c[126]^c[127]^c[143]^c[201]^c[170]^c[175]^c[144]^c[161]^c[201]^c[202]^c[271]^c[240]^c[236]^c[277]^c[251]^c[219]^c[220]^c[251]^c[341]^c[310]^c[290]^c[330]^c[331]^c[337]^c[305]^c[306]^c[376]^c[417]^c[389]^c[430]^c[400]^c[368]^c[369]^c[449]^c[490]^c[503]^c[471]^c[472]^c[455]^c[495]^c[496]^c[521]^c[562]^c[519]^c[559]^c[560]^c[505]^c[545]^c[546]^c[647]^c[616]^c[580]^c[620]^c[621]^c[642]^c[610]^c[611]^c[690]^c[659]^c[706]^c[675]^c[661]^c[701]^c[702]^c[733]^c[774]^c[736]^c[776]^c[777]^c[774]^c[742]^c[743]^c[849]^c[818]^c[842]^c[811]^c[823]^c[863]^c[792]^c[877]^c[918]^c[892]^c[933]^c[934]^c[902]^c[903]^c[904]^c[992]^c[961]^c[951]^c[991]^c[992]^c[985]^c[953]^c[954]^c[1021]^c[1062]^c[1034]^c[1074]^c[1075]^c[1064]^c[1032]^c[1033]^c[1110]^c[1151]^c[1101]^c[1142]^c[1093]^c[1133]^c[1134]^c[1165]^c[1206]^c[1179]^c[1220]^c[1191]^c[1159]^c[1160]^c[1177]^c[1240]^c[1281]^c[1237]^c[1277]^c[1278]^c[1258]^c[1226]^c[1227]^c[1332]^c[1301]^c[1362]^c[1330]^c[1331]^c[1309]^c[1349]^c[1350]^c[1381]^c[1422]^c[1393]^c[1434]^c[1437]^c[1405]^c[1406]^c[1413]^c[1454]^c[1495]^c[1471]^c[1511]^c[1440]^c[1494]^c[1462]^c[1463]^c[1570]^c[1539]^c[1572]^c[1541]^c[1561]^c[1529]^c[1530]^c[1526]; //row: 9 d[i2+9*Zc]=c[17]^c[86]^c[740]^c[853]^c[980]^c[1283]^c[1299]^c[1504]; //row: 10 d[i2+10*Zc]=c[105]^c[144]^c[315]^c[554]^c[593]^c[1064]; //row: 11 d[i2+11*Zc]=c[33]^c[20]^c[21]^c[1]^c[61]^c[8]^c[68]^c[9]^c[69]^c[54]^c[92]^c[79]^c[80]^c[133]^c[121]^c[111]^c[99]^c[94]^c[154]^c[213]^c[214]^c[200]^c[188]^c[186]^c[174]^c[224]^c[283]^c[284]^c[261]^c[249]^c[276]^c[264]^c[294]^c[354]^c[315]^c[303]^c[290]^c[350]^c[401]^c[388]^c[389]^c[414]^c[402]^c[425]^c[413]^c[474]^c[461]^c[462]^c[456]^c[444]^c[480]^c[468]^c[546]^c[534]^c[544]^c[532]^c[530]^c[518]^c[600]^c[588]^c[605]^c[593]^c[595]^c[583]^c[715]^c[702]^c[703]^c[659]^c[719]^c[686]^c[674]^c[758]^c[745]^c[746]^c[761]^c[749]^c[727]^c[787]^c[802]^c[861]^c[862]^c[795]^c[855]^c[848]^c[836]^c[902]^c[889]^c[890]^c[917]^c[905]^c[887]^c[875]^c[921]^c[945]^c[1004]^c[1005]^c[976]^c[964]^c[938]^c[998]^c[1046]^c[1034]^c[1059]^c[1047]^c[1017]^c[1077]^c[1135]^c[1122]^c[1123]^c[1126]^c[1114]^c[1118]^c[1106]^c[1190]^c[1177]^c[1178]^c[1204]^c[1192]^c[1216]^c[1204]^c[1188]^c[1265]^c[1253]^c[1262]^c[1250]^c[1283]^c[1271]^c[1357]^c[1344]^c[1345]^c[1315]^c[1303]^c[1334]^c[1322]^c[1406]^c[1393]^c[1394]^c[1418]^c[1406]^c[1390]^c[1378]^c[1479]^c[1466]^c[1467]^c[1496]^c[1484]^c[1447]^c[1507]^c[1523]^c[1582]^c[1583]^c[1525]^c[1513]^c[1514]^c[1574]^c[1568]; //row: 12 d[i2+12*Zc]=c[8]^c[89]^c[747]^c[798]^c[957]^c[1322]; //row: 13 d[i2+13*Zc]=c[30]^c[31]^c[71]^c[6]^c[7]^c[14]^c[89]^c[90]^c[131]^c[109]^c[151]^c[152]^c[198]^c[184]^c[221]^c[222]^c[259]^c[274]^c[287]^c[292]^c[313]^c[288]^c[398]^c[399]^c[412]^c[423]^c[471]^c[472]^c[454]^c[478]^c[544]^c[542]^c[528]^c[575]^c[598]^c[603]^c[593]^c[712]^c[713]^c[657]^c[684]^c[755]^c[756]^c[759]^c[725]^c[799]^c[800]^c[793]^c[846]^c[899]^c[900]^c[915]^c[885]^c[942]^c[943]^c[974]^c[936]^c[1044]^c[1057]^c[1015]^c[1132]^c[1133]^c[1124]^c[1116]^c[1187]^c[1188]^c[1202]^c[1214]^c[1263]^c[1260]^c[1281]^c[1354]^c[1355]^c[1313]^c[1332]^c[1403]^c[1404]^c[1416]^c[1388]^c[1476]^c[1477]^c[1494]^c[1445]^c[1486]^c[1520]^c[1521]^c[1523]^c[1512]; //row: 14 d[i2+14*Zc]=c[71]^c[905]^c[1116]^c[1167]^c[1295]^c[1518]; //row: 15 d[i2+15*Zc]=c[59]^c[27]^c[34]^c[34]^c[35]^c[25]^c[118]^c[87]^c[136]^c[137]^c[143]^c[180]^c[154]^c[212]^c[250]^c[287]^c[229]^c[230]^c[320]^c[341]^c[315]^c[316]^c[427]^c[368]^c[379]^c[500]^c[482]^c[433]^c[434]^c[572]^c[570]^c[555]^c[556]^c[626]^c[631]^c[620]^c[621]^c[669]^c[685]^c[712]^c[784]^c[787]^c[752]^c[753]^c[758]^c[828]^c[821]^c[801]^c[802]^c[928]^c[871]^c[912]^c[913]^c[971]^c[1002]^c[963]^c[964]^c[971]^c[1072]^c[1013]^c[1042]^c[1043]^c[1089]^c[1080]^c[1144]^c[1216]^c[1158]^c[1169]^c[1170]^c[1291]^c[1288]^c[1236]^c[1237]^c[1311]^c[1341]^c[1359]^c[1360]^c[1363]^c[1432]^c[1372]^c[1416]^c[1505]^c[1450]^c[1472]^c[1473]^c[1549]^c[1551]^c[1539]^c[1540]; //row: 16 d[i2+16*Zc]=c[66]^c[34]^c[41]^c[42]^c[125]^c[94]^c[72]^c[125]^c[187]^c[161]^c[147]^c[257]^c[222]^c[237]^c[228]^c[327]^c[348]^c[323]^c[362]^c[375]^c[386]^c[435]^c[489]^c[441]^c[507]^c[505]^c[563]^c[633]^c[638]^c[628]^c[676]^c[692]^c[719]^c[791]^c[722]^c[760]^c[835]^c[828]^c[809]^c[818]^c[935]^c[878]^c[920]^c[978]^c[937]^c[971]^c[1079]^c[1020]^c[1050]^c[1096]^c[1087]^c[1151]^c[1223]^c[1165]^c[1177]^c[1226]^c[1295]^c[1244]^c[1318]^c[1348]^c[1367]^c[1439]^c[1379]^c[1423]^c[1440]^c[1457]^c[1480]^c[1493]^c[1556]^c[1558]^c[1547]; //row: 17 d[i2+17*Zc]=c[8]^c[1072]^c[1223]^c[1295]^c[1529]; //row: 18 d[i2+18*Zc]=c[88]^c[870]^c[1007]^c[1320]^c[1439]; //row: 19 d[i2+19*Zc]=c[71]^c[143]^c[549]^c[647]^c[791]; //row: 20 d[i2+20*Zc]=c[6]^c[46]^c[53]^c[54]^c[48]^c[137]^c[106]^c[84]^c[199]^c[173]^c[159]^c[269]^c[234]^c[249]^c[224]^c[339]^c[288]^c[335]^c[374]^c[387]^c[398]^c[447]^c[501]^c[453]^c[519]^c[517]^c[575]^c[645]^c[578]^c[640]^c[688]^c[704]^c[659]^c[665]^c[731]^c[734]^c[772]^c[847]^c[840]^c[821]^c[863]^c[875]^c[890]^c[932]^c[990]^c[949]^c[983]^c[1019]^c[1032]^c[1062]^c[1108]^c[1099]^c[1091]^c[1163]^c[1177]^c[1189]^c[1238]^c[1235]^c[1256]^c[1330]^c[1360]^c[1307]^c[1379]^c[1391]^c[1435]^c[1452]^c[1469]^c[1492]^c[1568]^c[1570]^c[1559]; //row: 21 d[i2+21*Zc]=c[135]^c[405]^c[1201]^c[1448]^c[1529]; //row: 22 d[i2+22*Zc]=c[71]^c[908]^c[1007]^c[1264]; //row: 23 d[i2+23*Zc]=c[107]^c[215]^c[791]^c[1316]; //row: 24 d[i2+24*Zc]=c[66]^c[34]^c[41]^c[42]^c[19]^c[125]^c[94]^c[72]^c[187]^c[161]^c[147]^c[257]^c[222]^c[237]^c[270]^c[327]^c[348]^c[323]^c[359]^c[362]^c[375]^c[386]^c[435]^c[489]^c[441]^c[507]^c[505]^c[563]^c[633]^c[638]^c[628]^c[676]^c[692]^c[719]^c[791]^c[722]^c[760]^c[835]^c[828]^c[809]^c[841]^c[935]^c[878]^c[920]^c[978]^c[937]^c[971]^c[1079]^c[1020]^c[1050]^c[1096]^c[1087]^c[1151]^c[1223]^c[1165]^c[1177]^c[1226]^c[1295]^c[1244]^c[1318]^c[1348]^c[1367]^c[1439]^c[1379]^c[1423]^c[1440]^c[1457]^c[1480]^c[1556]^c[1558]^c[1547]; //row: 25 d[i2+25*Zc]=c[132]^c[503]^c[575]^c[1046]; //row: 26 d[i2+26*Zc]=c[71]^c[215]^c[359]^c[1140]; //row: 27 d[i2+27*Zc]=c[116]^c[467]^c[647]; //row: 28 d[i2+28*Zc]=c[58]^c[359]^c[1378]^c[1573]; //row: 29 d[i2+29*Zc]=c[37]^c[5]^c[12]^c[12]^c[13]^c[96]^c[137]^c[114]^c[115]^c[143]^c[158]^c[204]^c[190]^c[228]^c[265]^c[279]^c[280]^c[298]^c[319]^c[293]^c[294]^c[405]^c[418]^c[429]^c[478]^c[460]^c[483]^c[484]^c[550]^c[548]^c[533]^c[534]^c[604]^c[609]^c[598]^c[599]^c[719]^c[663]^c[690]^c[762]^c[765]^c[730]^c[731]^c[806]^c[799]^c[851]^c[852]^c[906]^c[921]^c[890]^c[891]^c[949]^c[980]^c[941]^c[942]^c[1050]^c[1063]^c[1020]^c[1021]^c[1043]^c[1139]^c[1130]^c[1122]^c[1194]^c[1208]^c[1219]^c[1220]^c[1269]^c[1266]^c[1286]^c[1287]^c[1361]^c[1319]^c[1337]^c[1338]^c[1367]^c[1410]^c[1422]^c[1394]^c[1483]^c[1500]^c[1450]^c[1451]^c[1527]^c[1529]^c[1517]^c[1518]; //row: 30 d[i2+30*Zc]=c[24]^c[64]^c[70]^c[71]^c[71]^c[0]^c[71]^c[83]^c[123]^c[124]^c[101]^c[102]^c[145]^c[191]^c[176]^c[177]^c[287]^c[252]^c[266]^c[267]^c[357]^c[305]^c[306]^c[352]^c[353]^c[392]^c[405]^c[415]^c[416]^c[465]^c[446]^c[447]^c[470]^c[471]^c[537]^c[534]^c[535]^c[520]^c[521]^c[591]^c[595]^c[596]^c[585]^c[586]^c[706]^c[650]^c[676]^c[677]^c[749]^c[751]^c[752]^c[789]^c[790]^c[737]^c[793]^c[858]^c[838]^c[839]^c[893]^c[908]^c[877]^c[878]^c[936]^c[966]^c[967]^c[1000]^c[1001]^c[971]^c[1037]^c[1049]^c[1050]^c[1079]^c[1008]^c[1126]^c[1117]^c[1108]^c[1109]^c[1181]^c[1195]^c[1206]^c[1207]^c[1256]^c[1252]^c[1253]^c[1273]^c[1274]^c[1348]^c[1305]^c[1306]^c[1324]^c[1325]^c[1397]^c[1409]^c[1380]^c[1381]^c[1470]^c[1486]^c[1487]^c[1509]^c[1510]^c[1514]^c[1516]^c[1576]^c[1577]; //row: 31 d[i2+31*Zc]=c[16]^c[14]^c[56]^c[54]^c[63]^c[61]^c[64]^c[61]^c[62]^c[75]^c[73]^c[116]^c[114]^c[94]^c[91]^c[92]^c[143]^c[209]^c[207]^c[183]^c[181]^c[169]^c[167]^c[279]^c[277]^c[244]^c[242]^c[259]^c[256]^c[257]^c[349]^c[347]^c[298]^c[296]^c[345]^c[342]^c[343]^c[384]^c[382]^c[397]^c[395]^c[408]^c[406]^c[457]^c[455]^c[439]^c[437]^c[463]^c[460]^c[461]^c[529]^c[527]^c[527]^c[525]^c[513]^c[510]^c[511]^c[575]^c[583]^c[581]^c[588]^c[586]^c[578]^c[647]^c[576]^c[698]^c[696]^c[714]^c[712]^c[669]^c[667]^c[741]^c[739]^c[744]^c[742]^c[782]^c[779]^c[780]^c[857]^c[855]^c[850]^c[848]^c[831]^c[828]^c[829]^c[885]^c[883]^c[900]^c[898]^c[870]^c[867]^c[868]^c[1000]^c[998]^c[959]^c[957]^c[993]^c[990]^c[991]^c[1029]^c[1027]^c[1042]^c[1040]^c[1072]^c[1069]^c[1070]^c[1118]^c[1116]^c[1109]^c[1107]^c[1101]^c[1099]^c[1173]^c[1171]^c[1187]^c[1185]^c[1199]^c[1196]^c[1197]^c[1248]^c[1246]^c[1245]^c[1243]^c[1266]^c[1263]^c[1264]^c[1340]^c[1338]^c[1298]^c[1296]^c[1317]^c[1314]^c[1315]^c[1389]^c[1387]^c[1401]^c[1399]^c[1373]^c[1371]^c[1462]^c[1460]^c[1479]^c[1477]^c[1502]^c[1499]^c[1500]^c[1578]^c[1576]^c[1580]^c[1578]^c[1569]^c[1566]^c[1567]; //row: 32 d[i2+32*Zc]=c[13]^c[53]^c[59]^c[60]^c[60]^c[61]^c[71]^c[72]^c[112]^c[113]^c[90]^c[91]^c[206]^c[180]^c[165]^c[166]^c[276]^c[241]^c[255]^c[256]^c[346]^c[294]^c[295]^c[341]^c[342]^c[381]^c[394]^c[404]^c[405]^c[454]^c[435]^c[436]^c[459]^c[460]^c[526]^c[523]^c[524]^c[509]^c[510]^c[580]^c[584]^c[585]^c[646]^c[647]^c[695]^c[711]^c[665]^c[666]^c[738]^c[740]^c[741]^c[778]^c[779]^c[854]^c[847]^c[827]^c[828]^c[882]^c[897]^c[866]^c[867]^c[930]^c[997]^c[955]^c[956]^c[989]^c[990]^c[1026]^c[1038]^c[1039]^c[1068]^c[1069]^c[1043]^c[1115]^c[1106]^c[1097]^c[1098]^c[1170]^c[1184]^c[1195]^c[1196]^c[1245]^c[1241]^c[1242]^c[1262]^c[1263]^c[1337]^c[1366]^c[1367]^c[1313]^c[1314]^c[1386]^c[1398]^c[1369]^c[1370]^c[1459]^c[1475]^c[1476]^c[1498]^c[1499]^c[1575]^c[1577]^c[1565]^c[1566]; //row: 33 d[i2+33*Zc]=c[143]^c[215]^c[795]^c[1529]; //row: 34 d[i2+34*Zc]=c[52]^c[575]^c[1115]^c[1295]; //row: 35 d[i2+35*Zc]=c[55]^c[23]^c[30]^c[31]^c[114]^c[83]^c[133]^c[126]^c[176]^c[150]^c[208]^c[246]^c[283]^c[226]^c[316]^c[337]^c[312]^c[423]^c[364]^c[375]^c[496]^c[478]^c[502]^c[493]^c[568]^c[566]^c[552]^c[622]^c[627]^c[617]^c[665]^c[681]^c[708]^c[780]^c[783]^c[749]^c[824]^c[817]^c[798]^c[924]^c[867]^c[909]^c[935]^c[967]^c[998]^c[960]^c[1068]^c[1009]^c[1039]^c[1085]^c[1148]^c[1140]^c[1212]^c[1154]^c[1166]^c[1287]^c[1284]^c[1233]^c[1307]^c[1337]^c[1356]^c[1428]^c[1368]^c[1412]^c[1501]^c[1446]^c[1469]^c[1545]^c[1547]^c[1536]; //row: 36 d[i2+36*Zc]=c[71]^c[1023]^c[1151]^c[1367]; //row: 37 d[i2+37*Zc]=c[66]^c[67]^c[35]^c[42]^c[43]^c[125]^c[126]^c[95]^c[73]^c[143]^c[187]^c[188]^c[162]^c[148]^c[257]^c[258]^c[223]^c[238]^c[328]^c[349]^c[324]^c[362]^c[363]^c[376]^c[387]^c[435]^c[436]^c[490]^c[442]^c[508]^c[506]^c[564]^c[634]^c[639]^c[629]^c[676]^c[677]^c[693]^c[648]^c[791]^c[720]^c[723]^c[761]^c[835]^c[836]^c[829]^c[810]^c[935]^c[864]^c[879]^c[921]^c[978]^c[979]^c[938]^c[972]^c[1007]^c[1008]^c[1021]^c[1051]^c[1096]^c[1097]^c[1088]^c[1080]^c[1223]^c[1152]^c[1166]^c[1178]^c[1227]^c[1224]^c[1245]^c[1318]^c[1319]^c[1349]^c[1296]^c[1439]^c[1368]^c[1380]^c[1424]^c[1440]^c[1441]^c[1458]^c[1481]^c[1556]^c[1557]^c[1559]^c[1548]; //row: 38 d[i2+38*Zc]=c[45]^c[719]^c[791]^c[935]; //row: 39 d[i2+39*Zc]=c[80]^c[287]^c[524]^c[1412]; //row: 40 d[i2+40*Zc]=c[71]^c[647]^c[1225]; //row: 41 d[i2+41*Zc]=c[143]^c[287]^c[719]^c[1334]; //row: 42 d[i2+42*Zc]=c[30]^c[70]^c[4]^c[5]^c[5]^c[6]^c[26]^c[89]^c[129]^c[130]^c[107]^c[108]^c[151]^c[197]^c[182]^c[183]^c[221]^c[258]^c[272]^c[273]^c[291]^c[311]^c[312]^c[358]^c[359]^c[359]^c[398]^c[411]^c[421]^c[422]^c[471]^c[452]^c[453]^c[476]^c[477]^c[543]^c[540]^c[541]^c[526]^c[527]^c[597]^c[601]^c[602]^c[591]^c[592]^c[712]^c[656]^c[682]^c[683]^c[755]^c[757]^c[758]^c[723]^c[724]^c[799]^c[792]^c[844]^c[845]^c[899]^c[914]^c[883]^c[884]^c[942]^c[972]^c[973]^c[1006]^c[1007]^c[1043]^c[1055]^c[1056]^c[1013]^c[1014]^c[1132]^c[1123]^c[1114]^c[1115]^c[1187]^c[1201]^c[1212]^c[1213]^c[1262]^c[1258]^c[1259]^c[1279]^c[1280]^c[1354]^c[1311]^c[1312]^c[1330]^c[1331]^c[1403]^c[1415]^c[1386]^c[1387]^c[1476]^c[1492]^c[1493]^c[1443]^c[1444]^c[1520]^c[1522]^c[1582]^c[1583]; //row: 43 d[i2+43*Zc]=c[49]^c[17]^c[24]^c[24]^c[25]^c[108]^c[77]^c[126]^c[127]^c[123]^c[170]^c[144]^c[202]^c[240]^c[277]^c[219]^c[220]^c[310]^c[331]^c[305]^c[306]^c[417]^c[430]^c[369]^c[490]^c[472]^c[495]^c[496]^c[562]^c[560]^c[545]^c[546]^c[616]^c[621]^c[610]^c[611]^c[659]^c[675]^c[702]^c[774]^c[777]^c[742]^c[743]^c[818]^c[811]^c[863]^c[792]^c[918]^c[933]^c[902]^c[903]^c[961]^c[992]^c[953]^c[954]^c[1062]^c[1075]^c[1032]^c[1033]^c[1151]^c[1142]^c[1134]^c[1206]^c[1220]^c[1159]^c[1160]^c[1178]^c[1281]^c[1278]^c[1226]^c[1227]^c[1301]^c[1331]^c[1349]^c[1350]^c[1367]^c[1422]^c[1434]^c[1406]^c[1495]^c[1440]^c[1462]^c[1463]^c[1539]^c[1541]^c[1529]^c[1530]; //row: 44 d[i2+44*Zc]=c[51]^c[19]^c[26]^c[27]^c[17]^c[110]^c[79]^c[129]^c[172]^c[146]^c[204]^c[242]^c[279]^c[222]^c[312]^c[333]^c[308]^c[419]^c[360]^c[371]^c[492]^c[474]^c[498]^c[564]^c[562]^c[548]^c[575]^c[618]^c[623]^c[613]^c[661]^c[677]^c[704]^c[719]^c[776]^c[779]^c[745]^c[820]^c[813]^c[794]^c[920]^c[935]^c[905]^c[963]^c[994]^c[956]^c[1064]^c[1077]^c[1035]^c[1081]^c[1144]^c[1136]^c[1208]^c[1222]^c[1162]^c[1283]^c[1280]^c[1229]^c[1303]^c[1333]^c[1352]^c[1424]^c[1436]^c[1408]^c[1497]^c[1442]^c[1465]^c[1541]^c[1543]^c[1532]; //row: 45 d[i2+45*Zc]=c[95]^c[503]^c[791]; } break; case 80: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[72]^c[62]^c[67]^c[59]^c[94]^c[86]^c[127]^c[182]^c[213]^c[239]^c[288]^c[266]^c[269]^c[340]^c[359]^c[356]^c[479]^c[400]^c[437]^c[518]^c[546]^c[540]^c[612]^c[601]^c[574]^c[643]^c[679]^c[718]^c[734]^c[799]^c[790]^c[801]^c[825]^c[840]^c[934]^c[928]^c[942]^c[963]^c[1019]^c[972]^c[1092]^c[1094]^c[1043]^c[1195]^c[1162]^c[1172]^c[1257]^c[1225]^c[1260]^c[1309]^c[1351]^c[1323]^c[1362]^c[1383]^c[1387]^c[1472]^c[1445]^c[1516]^c[1535]^c[1539]^c[1589]^c[1628]^c[1635]^c[1678]^c[1711]^c[1740]^c[1747]; //row: 1 d[i2+1*Zc]=c[72]^c[73]^c[63]^c[68]^c[60]^c[94]^c[95]^c[87]^c[128]^c[182]^c[183]^c[214]^c[160]^c[288]^c[289]^c[267]^c[270]^c[341]^c[360]^c[357]^c[479]^c[400]^c[401]^c[438]^c[518]^c[519]^c[547]^c[541]^c[613]^c[602]^c[575]^c[644]^c[680]^c[719]^c[734]^c[735]^c[720]^c[791]^c[801]^c[802]^c[826]^c[841]^c[934]^c[935]^c[929]^c[943]^c[963]^c[964]^c[1020]^c[973]^c[1092]^c[1093]^c[1095]^c[1044]^c[1196]^c[1163]^c[1173]^c[1257]^c[1258]^c[1226]^c[1261]^c[1309]^c[1310]^c[1352]^c[1324]^c[1363]^c[1384]^c[1388]^c[1472]^c[1473]^c[1446]^c[1517]^c[1535]^c[1536]^c[1540]^c[1590]^c[1628]^c[1629]^c[1636]^c[1679]^c[1711]^c[1712]^c[1741]^c[1748]; //row: 2 d[i2+2*Zc]=c[73]^c[63]^c[67]^c[68]^c[59]^c[60]^c[95]^c[86]^c[87]^c[127]^c[128]^c[183]^c[214]^c[239]^c[160]^c[289]^c[267]^c[269]^c[270]^c[341]^c[359]^c[360]^c[356]^c[357]^c[400]^c[401]^c[437]^c[438]^c[519]^c[546]^c[547]^c[540]^c[541]^c[613]^c[601]^c[602]^c[574]^c[575]^c[644]^c[679]^c[680]^c[718]^c[719]^c[735]^c[720]^c[790]^c[791]^c[802]^c[825]^c[826]^c[840]^c[841]^c[935]^c[929]^c[942]^c[943]^c[964]^c[1020]^c[972]^c[973]^c[1093]^c[1094]^c[1095]^c[1043]^c[1044]^c[1196]^c[1162]^c[1163]^c[1172]^c[1173]^c[1258]^c[1226]^c[1260]^c[1261]^c[1310]^c[1352]^c[1323]^c[1324]^c[1363]^c[1383]^c[1384]^c[1387]^c[1388]^c[1473]^c[1445]^c[1446]^c[1516]^c[1517]^c[1536]^c[1540]^c[1589]^c[1590]^c[1629]^c[1635]^c[1636]^c[1678]^c[1679]^c[1712]^c[1741]^c[1747]^c[1748]; //row: 3 d[i2+3*Zc]=c[73]^c[63]^c[68]^c[59]^c[60]^c[95]^c[87]^c[127]^c[128]^c[183]^c[214]^c[160]^c[289]^c[267]^c[269]^c[270]^c[341]^c[360]^c[356]^c[357]^c[400]^c[401]^c[438]^c[519]^c[547]^c[540]^c[541]^c[613]^c[602]^c[574]^c[575]^c[644]^c[680]^c[718]^c[719]^c[735]^c[720]^c[791]^c[802]^c[826]^c[840]^c[841]^c[935]^c[929]^c[942]^c[943]^c[964]^c[1020]^c[972]^c[973]^c[1093]^c[1095]^c[1043]^c[1044]^c[1196]^c[1163]^c[1172]^c[1173]^c[1258]^c[1226]^c[1261]^c[1310]^c[1352]^c[1323]^c[1324]^c[1363]^c[1384]^c[1387]^c[1388]^c[1473]^c[1446]^c[1516]^c[1517]^c[1536]^c[1540]^c[1590]^c[1629]^c[1636]^c[1678]^c[1679]^c[1712]^c[1741]^c[1747]^c[1748]; //row: 4 d[i2+4*Zc]=c[72]^c[124]; //row: 5 d[i2+5*Zc]=c[31]^c[21]^c[26]^c[18]^c[2]^c[133]^c[125]^c[86]^c[131]^c[221]^c[172]^c[198]^c[247]^c[305]^c[308]^c[289]^c[379]^c[398]^c[395]^c[438]^c[439]^c[476]^c[557]^c[505]^c[499]^c[571]^c[560]^c[613]^c[682]^c[718]^c[677]^c[773]^c[758]^c[749]^c[840]^c[864]^c[879]^c[893]^c[887]^c[901]^c[1002]^c[978]^c[1011]^c[1037]^c[1051]^c[1053]^c[1082]^c[1154]^c[1121]^c[1131]^c[1216]^c[1264]^c[1219]^c[1348]^c[1310]^c[1282]^c[1320]^c[1401]^c[1422]^c[1426]^c[1511]^c[1484]^c[1475]^c[1574]^c[1578]^c[1548]^c[1667]^c[1674]^c[1637]^c[1750]^c[1699]^c[1706]^c[1706]; //row: 6 d[i2+6*Zc]=c[48]^c[500]^c[852]^c[892]^c[1111]^c[1421]^c[1497]^c[1674]; //row: 7 d[i2+7*Zc]=c[11]^c[87]^c[366]^c[609]^c[664]^c[1195]; //row: 8 d[i2+8*Zc]=c[77]^c[67]^c[67]^c[57]^c[72]^c[61]^c[62]^c[64]^c[53]^c[54]^c[54]^c[99]^c[89]^c[91]^c[80]^c[81]^c[132]^c[121]^c[122]^c[132]^c[187]^c[177]^c[218]^c[208]^c[164]^c[233]^c[234]^c[293]^c[283]^c[271]^c[261]^c[274]^c[263]^c[264]^c[289]^c[345]^c[335]^c[364]^c[353]^c[354]^c[361]^c[350]^c[351]^c[404]^c[474]^c[405]^c[475]^c[442]^c[431]^c[432]^c[523]^c[513]^c[551]^c[540]^c[541]^c[545]^c[534]^c[535]^c[617]^c[607]^c[606]^c[595]^c[596]^c[579]^c[568]^c[569]^c[648]^c[718]^c[684]^c[673]^c[674]^c[643]^c[712]^c[713]^c[739]^c[729]^c[724]^c[794]^c[795]^c[784]^c[785]^c[806]^c[876]^c[830]^c[819]^c[820]^c[845]^c[834]^c[835]^c[939]^c[929]^c[933]^c[923]^c[947]^c[936]^c[937]^c[968]^c[1038]^c[1024]^c[1014]^c[977]^c[966]^c[967]^c[1030]^c[1097]^c[1087]^c[1099]^c[1088]^c[1089]^c[1048]^c[1117]^c[1118]^c[1120]^c[1190]^c[1167]^c[1156]^c[1157]^c[1177]^c[1166]^c[1167]^c[1262]^c[1252]^c[1230]^c[1220]^c[1265]^c[1254]^c[1255]^c[1314]^c[1304]^c[1356]^c[1346]^c[1328]^c[1317]^c[1318]^c[1335]^c[1367]^c[1437]^c[1388]^c[1377]^c[1378]^c[1392]^c[1381]^c[1382]^c[1477]^c[1467]^c[1450]^c[1519]^c[1440]^c[1441]^c[1510]^c[1511]^c[1540]^c[1530]^c[1544]^c[1534]^c[1594]^c[1583]^c[1584]^c[1549]^c[1633]^c[1623]^c[1640]^c[1629]^c[1630]^c[1603]^c[1672]^c[1673]^c[1716]^c[1706]^c[1745]^c[1735]^c[1752]^c[1741]^c[1742]^c[1708]; //row: 9 d[i2+9*Zc]=c[28]^c[83]^c[835]^c[925]^c[1110]^c[1386]^c[1494]^c[1648]; //row: 10 d[i2+10*Zc]=c[93]^c[239]^c[370]^c[634]^c[640]^c[1190]; //row: 11 d[i2+11*Zc]=c[35]^c[32]^c[33]^c[25]^c[23]^c[30]^c[28]^c[22]^c[20]^c[15]^c[137]^c[134]^c[135]^c[129]^c[127]^c[90]^c[88]^c[146]^c[225]^c[222]^c[223]^c[176]^c[174]^c[202]^c[200]^c[251]^c[248]^c[249]^c[309]^c[307]^c[312]^c[310]^c[383]^c[381]^c[322]^c[320]^c[399]^c[397]^c[442]^c[439]^c[440]^c[443]^c[441]^c[400]^c[478]^c[481]^c[558]^c[559]^c[509]^c[507]^c[503]^c[501]^c[575]^c[573]^c[564]^c[562]^c[617]^c[615]^c[686]^c[684]^c[642]^c[640]^c[681]^c[679]^c[777]^c[774]^c[775]^c[762]^c[760]^c[753]^c[751]^c[844]^c[841]^c[842]^c[868]^c[866]^c[803]^c[801]^c[897]^c[894]^c[895]^c[891]^c[889]^c[905]^c[903]^c[1006]^c[1003]^c[1004]^c[982]^c[980]^c[1015]^c[1013]^c[1009]^c[1055]^c[1052]^c[1053]^c[1057]^c[1055]^c[1086]^c[1084]^c[1158]^c[1156]^c[1125]^c[1123]^c[1135]^c[1133]^c[1220]^c[1217]^c[1218]^c[1268]^c[1266]^c[1223]^c[1221]^c[1352]^c[1349]^c[1350]^c[1314]^c[1312]^c[1286]^c[1284]^c[1328]^c[1405]^c[1403]^c[1426]^c[1424]^c[1430]^c[1428]^c[1515]^c[1512]^c[1513]^c[1488]^c[1486]^c[1479]^c[1477]^c[1578]^c[1575]^c[1576]^c[1582]^c[1580]^c[1552]^c[1550]^c[1671]^c[1668]^c[1669]^c[1678]^c[1676]^c[1641]^c[1639]^c[1754]^c[1751]^c[1752]^c[1703]^c[1701]^c[1710]^c[1708]^c[1696]; //row: 12 d[i2+12*Zc]=c[68]^c[154]^c[808]^c[927]^c[1064]^c[1491]; //row: 13 d[i2+13*Zc]=c[29]^c[30]^c[20]^c[25]^c[17]^c[38]^c[131]^c[132]^c[124]^c[85]^c[219]^c[220]^c[171]^c[197]^c[245]^c[246]^c[304]^c[307]^c[301]^c[378]^c[397]^c[394]^c[436]^c[437]^c[438]^c[475]^c[555]^c[556]^c[504]^c[498]^c[570]^c[639]^c[612]^c[622]^c[681]^c[717]^c[676]^c[771]^c[772]^c[757]^c[748]^c[838]^c[839]^c[863]^c[878]^c[891]^c[892]^c[886]^c[900]^c[1000]^c[1001]^c[977]^c[1010]^c[1049]^c[1050]^c[1052]^c[1081]^c[1153]^c[1120]^c[1130]^c[1214]^c[1215]^c[1263]^c[1218]^c[1346]^c[1347]^c[1309]^c[1281]^c[1400]^c[1421]^c[1425]^c[1509]^c[1510]^c[1483]^c[1474]^c[1572]^c[1573]^c[1577]^c[1547]^c[1665]^c[1666]^c[1673]^c[1636]^c[1679]^c[1748]^c[1749]^c[1698]^c[1705]; //row: 14 d[i2+14*Zc]=c[77]^c[1018]^c[1253]^c[1340]^c[1378]^c[1697]; //row: 15 d[i2+15*Zc]=c[44]^c[34]^c[39]^c[30]^c[31]^c[68]^c[146]^c[138]^c[98]^c[99]^c[129]^c[234]^c[185]^c[211]^c[260]^c[318]^c[240]^c[241]^c[392]^c[331]^c[327]^c[328]^c[451]^c[452]^c[409]^c[490]^c[518]^c[511]^c[512]^c[584]^c[573]^c[625]^c[626]^c[695]^c[651]^c[689]^c[690]^c[786]^c[771]^c[762]^c[853]^c[877]^c[811]^c[812]^c[859]^c[906]^c[900]^c[913]^c[914]^c[1015]^c[991]^c[1023]^c[1024]^c[1064]^c[1066]^c[1094]^c[1095]^c[1089]^c[1167]^c[1134]^c[1143]^c[1144]^c[1229]^c[1277]^c[1232]^c[1281]^c[1323]^c[1294]^c[1295]^c[1414]^c[1435]^c[1438]^c[1439]^c[1444]^c[1497]^c[1487]^c[1488]^c[1463]^c[1587]^c[1591]^c[1561]^c[1600]^c[1607]^c[1649]^c[1650]^c[1683]^c[1712]^c[1718]^c[1719]; //row: 16 d[i2+16*Zc]=c[52]^c[42]^c[47]^c[39]^c[154]^c[146]^c[107]^c[148]^c[162]^c[193]^c[219]^c[268]^c[246]^c[249]^c[299]^c[320]^c[339]^c[336]^c[459]^c[460]^c[417]^c[498]^c[526]^c[520]^c[592]^c[581]^c[634]^c[703]^c[659]^c[698]^c[794]^c[779]^c[770]^c[861]^c[805]^c[820]^c[914]^c[908]^c[922]^c[924]^c[1023]^c[999]^c[1032]^c[1072]^c[1074]^c[1103]^c[1175]^c[1142]^c[1152]^c[1237]^c[1205]^c[1240]^c[1289]^c[1331]^c[1303]^c[1422]^c[1363]^c[1367]^c[1452]^c[1505]^c[1496]^c[1595]^c[1599]^c[1569]^c[1608]^c[1615]^c[1658]^c[1634]^c[1691]^c[1720]^c[1727]; //row: 17 d[i2+17*Zc]=c[16]^c[1186]^c[1327]^c[1410]^c[1747]; //row: 18 d[i2+18*Zc]=c[99]^c[1013]^c[1090]^c[1500]^c[1574]; //row: 19 d[i2+19*Zc]=c[63]^c[100]^c[580]^c[669]^c[840]; //row: 20 d[i2+20*Zc]=c[2]^c[72]^c[77]^c[69]^c[60]^c[104]^c[96]^c[137]^c[192]^c[223]^c[169]^c[298]^c[276]^c[279]^c[241]^c[350]^c[369]^c[366]^c[409]^c[410]^c[447]^c[528]^c[556]^c[550]^c[622]^c[611]^c[584]^c[653]^c[689]^c[648]^c[744]^c[729]^c[720]^c[759]^c[811]^c[835]^c[850]^c[944]^c[938]^c[952]^c[929]^c[973]^c[1029]^c[982]^c[1102]^c[1104]^c[1053]^c[1125]^c[1172]^c[1182]^c[1267]^c[1235]^c[1270]^c[1319]^c[1281]^c[1333]^c[1372]^c[1393]^c[1397]^c[1482]^c[1455]^c[1446]^c[1545]^c[1549]^c[1599]^c[1638]^c[1645]^c[1608]^c[1721]^c[1750]^c[1757]; //row: 21 d[i2+21*Zc]=c[158]^c[414]^c[1331]^c[1642]^c[1702]; //row: 22 d[i2+22*Zc]=c[16]^c[979]^c[1094]^c[1435]; //row: 23 d[i2+23*Zc]=c[88]^c[209]^c[852]^c[1464]; //row: 24 d[i2+24*Zc]=c[33]^c[23]^c[28]^c[20]^c[48]^c[135]^c[127]^c[88]^c[223]^c[174]^c[200]^c[249]^c[307]^c[310]^c[279]^c[381]^c[320]^c[397]^c[349]^c[440]^c[441]^c[478]^c[559]^c[507]^c[501]^c[573]^c[562]^c[615]^c[684]^c[640]^c[679]^c[775]^c[760]^c[751]^c[842]^c[866]^c[801]^c[895]^c[889]^c[903]^c[906]^c[1004]^c[980]^c[1013]^c[1053]^c[1055]^c[1084]^c[1156]^c[1123]^c[1133]^c[1218]^c[1266]^c[1221]^c[1350]^c[1312]^c[1284]^c[1403]^c[1424]^c[1428]^c[1513]^c[1486]^c[1477]^c[1576]^c[1580]^c[1550]^c[1669]^c[1676]^c[1639]^c[1752]^c[1701]^c[1708]; //row: 25 d[i2+25*Zc]=c[91]^c[534]^c[575]^c[1165]; //row: 26 d[i2+26*Zc]=c[29]^c[189]^c[397]^c[1266]; //row: 27 d[i2+27*Zc]=c[129]^c[508]^c[703]; //row: 28 d[i2+28*Zc]=c[10]^c[372]^c[1569]^c[1753]; //row: 29 d[i2+29*Zc]=c[22]^c[12]^c[17]^c[8]^c[9]^c[124]^c[116]^c[156]^c[157]^c[106]^c[212]^c[163]^c[189]^c[318]^c[296]^c[298]^c[299]^c[370]^c[389]^c[385]^c[386]^c[429]^c[430]^c[467]^c[548]^c[496]^c[489]^c[490]^c[562]^c[631]^c[603]^c[604]^c[673]^c[709]^c[667]^c[668]^c[764]^c[749]^c[740]^c[831]^c[855]^c[869]^c[870]^c[884]^c[958]^c[891]^c[892]^c[993]^c[969]^c[1001]^c[1002]^c[1042]^c[1044]^c[1072]^c[1073]^c[1145]^c[1192]^c[1121]^c[1122]^c[1187]^c[1207]^c[1255]^c[1210]^c[1339]^c[1301]^c[1352]^c[1353]^c[1392]^c[1413]^c[1416]^c[1417]^c[1502]^c[1475]^c[1465]^c[1466]^c[1476]^c[1565]^c[1569]^c[1539]^c[1658]^c[1665]^c[1627]^c[1628]^c[1741]^c[1690]^c[1696]^c[1697]; //row: 30 d[i2+30*Zc]=c[48]^c[38]^c[42]^c[43]^c[34]^c[35]^c[10]^c[150]^c[141]^c[142]^c[102]^c[103]^c[238]^c[189]^c[214]^c[215]^c[264]^c[242]^c[244]^c[245]^c[396]^c[334]^c[335]^c[331]^c[332]^c[455]^c[456]^c[412]^c[413]^c[494]^c[521]^c[522]^c[515]^c[516]^c[588]^c[576]^c[577]^c[629]^c[630]^c[699]^c[654]^c[655]^c[693]^c[694]^c[790]^c[775]^c[765]^c[766]^c[857]^c[800]^c[801]^c[815]^c[816]^c[822]^c[910]^c[904]^c[917]^c[918]^c[1019]^c[995]^c[1027]^c[1028]^c[1068]^c[1069]^c[1070]^c[1098]^c[1099]^c[1064]^c[1171]^c[1137]^c[1138]^c[1147]^c[1148]^c[1233]^c[1201]^c[1235]^c[1236]^c[1285]^c[1327]^c[1298]^c[1299]^c[1418]^c[1438]^c[1439]^c[1362]^c[1363]^c[1448]^c[1500]^c[1501]^c[1491]^c[1492]^c[1591]^c[1595]^c[1564]^c[1565]^c[1604]^c[1610]^c[1611]^c[1653]^c[1654]^c[1687]^c[1716]^c[1722]^c[1723]; //row: 31 d[i2+31*Zc]=c[58]^c[75]^c[48]^c[65]^c[53]^c[70]^c[45]^c[61]^c[62]^c[80]^c[97]^c[152]^c[89]^c[113]^c[129]^c[130]^c[141]^c[168]^c[185]^c[199]^c[216]^c[225]^c[162]^c[274]^c[291]^c[252]^c[269]^c[255]^c[271]^c[272]^c[326]^c[343]^c[345]^c[362]^c[342]^c[358]^c[359]^c[465]^c[402]^c[466]^c[403]^c[423]^c[440]^c[504]^c[521]^c[532]^c[549]^c[526]^c[542]^c[543]^c[598]^c[615]^c[587]^c[604]^c[560]^c[576]^c[577]^c[627]^c[709]^c[646]^c[665]^c[682]^c[704]^c[640]^c[641]^c[720]^c[737]^c[785]^c[722]^c[776]^c[793]^c[867]^c[804]^c[811]^c[828]^c[826]^c[842]^c[843]^c[920]^c[937]^c[914]^c[931]^c[928]^c[944]^c[945]^c[1029]^c[966]^c[1005]^c[1022]^c[1038]^c[974]^c[975]^c[1078]^c[1095]^c[1080]^c[1097]^c[1109]^c[1045]^c[1046]^c[1181]^c[1198]^c[1148]^c[1165]^c[1158]^c[1174]^c[1175]^c[1243]^c[1260]^c[1211]^c[1228]^c[1246]^c[1263]^c[1295]^c[1312]^c[1337]^c[1354]^c[1309]^c[1325]^c[1326]^c[1428]^c[1365]^c[1369]^c[1386]^c[1373]^c[1389]^c[1390]^c[1458]^c[1475]^c[1511]^c[1448]^c[1502]^c[1518]^c[1519]^c[1521]^c[1538]^c[1525]^c[1542]^c[1575]^c[1592]^c[1614]^c[1631]^c[1621]^c[1638]^c[1664]^c[1600]^c[1601]^c[1697]^c[1714]^c[1726]^c[1743]^c[1733]^c[1749]^c[1750]; //row: 32 d[i2+32*Zc]=c[50]^c[40]^c[44]^c[45]^c[36]^c[37]^c[49]^c[152]^c[143]^c[144]^c[104]^c[105]^c[160]^c[191]^c[216]^c[217]^c[266]^c[244]^c[246]^c[247]^c[398]^c[336]^c[337]^c[333]^c[334]^c[457]^c[458]^c[414]^c[415]^c[496]^c[523]^c[524]^c[517]^c[518]^c[590]^c[578]^c[579]^c[631]^c[632]^c[701]^c[656]^c[657]^c[695]^c[696]^c[792]^c[777]^c[767]^c[768]^c[859]^c[802]^c[803]^c[817]^c[818]^c[912]^c[906]^c[919]^c[920]^c[1021]^c[997]^c[1029]^c[1030]^c[981]^c[1070]^c[1071]^c[1072]^c[1100]^c[1101]^c[1173]^c[1139]^c[1140]^c[1149]^c[1150]^c[1150]^c[1235]^c[1203]^c[1237]^c[1238]^c[1287]^c[1329]^c[1300]^c[1301]^c[1420]^c[1360]^c[1361]^c[1364]^c[1365]^c[1450]^c[1502]^c[1503]^c[1493]^c[1494]^c[1593]^c[1597]^c[1566]^c[1567]^c[1606]^c[1612]^c[1613]^c[1655]^c[1656]^c[1689]^c[1718]^c[1724]^c[1725]; //row: 33 d[i2+33*Zc]=c[89]^c[179]^c[939]^c[1712]; //row: 34 d[i2+34*Zc]=c[26]^c[615]^c[1204]^c[1403]; //row: 35 d[i2+35*Zc]=c[37]^c[27]^c[32]^c[24]^c[139]^c[131]^c[92]^c[126]^c[227]^c[178]^c[204]^c[253]^c[311]^c[314]^c[385]^c[324]^c[321]^c[444]^c[445]^c[402]^c[483]^c[511]^c[505]^c[557]^c[577]^c[566]^c[619]^c[688]^c[644]^c[683]^c[779]^c[764]^c[755]^c[846]^c[870]^c[805]^c[899]^c[893]^c[907]^c[1008]^c[984]^c[1017]^c[1014]^c[1057]^c[1059]^c[1088]^c[1160]^c[1127]^c[1137]^c[1222]^c[1270]^c[1225]^c[1354]^c[1316]^c[1288]^c[1407]^c[1428]^c[1432]^c[1517]^c[1490]^c[1481]^c[1580]^c[1584]^c[1554]^c[1673]^c[1600]^c[1643]^c[1756]^c[1705]^c[1712]; //row: 36 d[i2+36*Zc]=c[18]^c[1138]^c[1217]^c[1519]; //row: 37 d[i2+37*Zc]=c[27]^c[28]^c[18]^c[23]^c[15]^c[129]^c[130]^c[122]^c[83]^c[137]^c[217]^c[218]^c[169]^c[195]^c[243]^c[244]^c[302]^c[305]^c[376]^c[395]^c[392]^c[434]^c[435]^c[436]^c[473]^c[553]^c[554]^c[502]^c[496]^c[568]^c[637]^c[610]^c[679]^c[715]^c[674]^c[769]^c[770]^c[755]^c[746]^c[836]^c[837]^c[861]^c[876]^c[889]^c[890]^c[884]^c[898]^c[998]^c[999]^c[975]^c[1008]^c[1047]^c[1048]^c[1050]^c[1079]^c[1054]^c[1151]^c[1198]^c[1128]^c[1212]^c[1213]^c[1261]^c[1216]^c[1344]^c[1345]^c[1307]^c[1359]^c[1398]^c[1419]^c[1423]^c[1507]^c[1508]^c[1481]^c[1472]^c[1570]^c[1571]^c[1575]^c[1545]^c[1663]^c[1664]^c[1671]^c[1634]^c[1746]^c[1747]^c[1696]^c[1703]; //row: 38 d[i2+38*Zc]=c[70]^c[738]^c[863]^c[980]; //row: 39 d[i2+39*Zc]=c[101]^c[316]^c[591]^c[1567]; //row: 40 d[i2+40*Zc]=c[31]^c[719]^c[1396]; //row: 41 d[i2+41*Zc]=c[153]^c[286]^c[763]^c[1486]; //row: 42 d[i2+42*Zc]=c[39]^c[29]^c[33]^c[34]^c[25]^c[26]^c[65]^c[141]^c[132]^c[133]^c[93]^c[94]^c[229]^c[180]^c[205]^c[206]^c[255]^c[313]^c[315]^c[316]^c[387]^c[325]^c[326]^c[322]^c[323]^c[384]^c[446]^c[447]^c[403]^c[404]^c[485]^c[512]^c[513]^c[506]^c[507]^c[579]^c[567]^c[568]^c[620]^c[621]^c[690]^c[645]^c[646]^c[684]^c[685]^c[781]^c[766]^c[756]^c[757]^c[848]^c[871]^c[872]^c[806]^c[807]^c[901]^c[895]^c[908]^c[909]^c[1010]^c[986]^c[1018]^c[1019]^c[1059]^c[1060]^c[1061]^c[1089]^c[1090]^c[1162]^c[1128]^c[1129]^c[1138]^c[1139]^c[1224]^c[1272]^c[1226]^c[1227]^c[1356]^c[1318]^c[1289]^c[1290]^c[1409]^c[1429]^c[1430]^c[1433]^c[1434]^c[1519]^c[1491]^c[1492]^c[1482]^c[1483]^c[1582]^c[1586]^c[1555]^c[1556]^c[1675]^c[1601]^c[1602]^c[1644]^c[1645]^c[1758]^c[1707]^c[1713]^c[1714]; //row: 43 d[i2+43*Zc]=c[15]^c[5]^c[10]^c[1]^c[2]^c[117]^c[109]^c[149]^c[150]^c[147]^c[205]^c[236]^c[182]^c[311]^c[289]^c[291]^c[292]^c[363]^c[382]^c[378]^c[379]^c[422]^c[423]^c[460]^c[541]^c[489]^c[482]^c[483]^c[635]^c[624]^c[596]^c[597]^c[666]^c[702]^c[660]^c[661]^c[757]^c[742]^c[733]^c[824]^c[848]^c[862]^c[863]^c[957]^c[951]^c[884]^c[885]^c[986]^c[962]^c[994]^c[995]^c[1115]^c[1117]^c[1065]^c[1066]^c[1138]^c[1185]^c[1194]^c[1195]^c[1200]^c[1248]^c[1203]^c[1332]^c[1294]^c[1345]^c[1346]^c[1348]^c[1385]^c[1406]^c[1409]^c[1410]^c[1495]^c[1468]^c[1458]^c[1459]^c[1455]^c[1558]^c[1562]^c[1532]^c[1651]^c[1658]^c[1620]^c[1621]^c[1734]^c[1683]^c[1689]^c[1690]; //row: 44 d[i2+44*Zc]=c[12]^c[2]^c[7]^c[79]^c[73]^c[114]^c[106]^c[147]^c[202]^c[233]^c[179]^c[308]^c[286]^c[289]^c[360]^c[379]^c[376]^c[419]^c[420]^c[457]^c[538]^c[486]^c[480]^c[632]^c[621]^c[594]^c[626]^c[663]^c[699]^c[658]^c[754]^c[739]^c[730]^c[738]^c[821]^c[845]^c[860]^c[954]^c[948]^c[882]^c[983]^c[1039]^c[992]^c[1112]^c[1114]^c[1063]^c[1135]^c[1182]^c[1192]^c[1277]^c[1245]^c[1200]^c[1329]^c[1291]^c[1343]^c[1382]^c[1403]^c[1407]^c[1492]^c[1465]^c[1456]^c[1555]^c[1559]^c[1529]^c[1648]^c[1655]^c[1618]^c[1731]^c[1680]^c[1687]; //row: 45 d[i2+45*Zc]=c[100]^c[547]^c[845]; } break; case 88: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[29]^c[76]^c[49]^c[8]^c[117]^c[122]^c[93]^c[254]^c[224]^c[212]^c[329]^c[271]^c[312]^c[425]^c[389]^c[366]^c[470]^c[443]^c[462]^c[604]^c[528]^c[578]^c[639]^c[655]^c[693]^c[741]^c[764]^c[706]^c[858]^c[841]^c[821]^c[953]^c[918]^c[897]^c[968]^c[1046]^c[1037]^c[1130]^c[1132]^c[1136]^c[1168]^c[1165]^c[1148]^c[1301]^c[1253]^c[1240]^c[1372]^c[1385]^c[1356]^c[1490]^c[1488]^c[1480]^c[1540]^c[1538]^c[1534]^c[1623]^c[1658]^c[1638]^c[1750]^c[1680]^c[1705]^c[1806]^c[1766]^c[1792]^c[1859]^c[1885]^c[1880]; //row: 1 d[i2+1*Zc]=c[29]^c[30]^c[77]^c[50]^c[9]^c[117]^c[118]^c[123]^c[94]^c[254]^c[255]^c[225]^c[213]^c[329]^c[330]^c[272]^c[313]^c[426]^c[390]^c[367]^c[470]^c[471]^c[444]^c[463]^c[604]^c[605]^c[529]^c[579]^c[640]^c[656]^c[694]^c[742]^c[765]^c[707]^c[858]^c[859]^c[842]^c[822]^c[953]^c[954]^c[919]^c[898]^c[968]^c[969]^c[1047]^c[1038]^c[1130]^c[1131]^c[1133]^c[1137]^c[1168]^c[1169]^c[1166]^c[1149]^c[1302]^c[1254]^c[1241]^c[1372]^c[1373]^c[1386]^c[1357]^c[1490]^c[1491]^c[1489]^c[1481]^c[1541]^c[1539]^c[1535]^c[1623]^c[1624]^c[1659]^c[1639]^c[1750]^c[1751]^c[1681]^c[1706]^c[1806]^c[1807]^c[1767]^c[1793]^c[1859]^c[1860]^c[1886]^c[1881]; //row: 2 d[i2+2*Zc]=c[30]^c[77]^c[49]^c[50]^c[8]^c[9]^c[118]^c[122]^c[123]^c[93]^c[94]^c[255]^c[225]^c[212]^c[213]^c[330]^c[272]^c[312]^c[313]^c[426]^c[389]^c[390]^c[366]^c[367]^c[471]^c[444]^c[462]^c[463]^c[605]^c[528]^c[529]^c[578]^c[579]^c[640]^c[655]^c[656]^c[693]^c[694]^c[742]^c[764]^c[765]^c[706]^c[707]^c[859]^c[842]^c[821]^c[822]^c[954]^c[918]^c[919]^c[897]^c[898]^c[969]^c[1047]^c[1037]^c[1038]^c[1131]^c[1133]^c[1136]^c[1137]^c[1169]^c[1165]^c[1166]^c[1148]^c[1149]^c[1302]^c[1253]^c[1254]^c[1240]^c[1241]^c[1373]^c[1386]^c[1356]^c[1357]^c[1491]^c[1489]^c[1480]^c[1481]^c[1541]^c[1538]^c[1539]^c[1534]^c[1535]^c[1624]^c[1658]^c[1659]^c[1638]^c[1639]^c[1751]^c[1681]^c[1705]^c[1706]^c[1807]^c[1766]^c[1767]^c[1792]^c[1793]^c[1860]^c[1886]^c[1880]^c[1881]; //row: 3 d[i2+3*Zc]=c[30]^c[77]^c[50]^c[8]^c[9]^c[118]^c[123]^c[93]^c[94]^c[255]^c[225]^c[213]^c[330]^c[272]^c[312]^c[313]^c[426]^c[390]^c[366]^c[367]^c[471]^c[444]^c[463]^c[605]^c[529]^c[578]^c[579]^c[640]^c[656]^c[693]^c[694]^c[742]^c[765]^c[706]^c[707]^c[859]^c[842]^c[822]^c[954]^c[919]^c[897]^c[898]^c[969]^c[1047]^c[1037]^c[1038]^c[1131]^c[1133]^c[1136]^c[1137]^c[1169]^c[1166]^c[1148]^c[1149]^c[1302]^c[1254]^c[1240]^c[1241]^c[1373]^c[1386]^c[1357]^c[1491]^c[1489]^c[1480]^c[1481]^c[1541]^c[1539]^c[1534]^c[1535]^c[1624]^c[1659]^c[1638]^c[1639]^c[1751]^c[1681]^c[1706]^c[1807]^c[1767]^c[1792]^c[1793]^c[1860]^c[1886]^c[1880]^c[1881]; //row: 4 d[i2+4*Zc]=c[41]^c[167]; //row: 5 d[i2+5*Zc]=c[48]^c[7]^c[68]^c[27]^c[42]^c[136]^c[141]^c[112]^c[129]^c[185]^c[243]^c[231]^c[348]^c[290]^c[331]^c[338]^c[356]^c[408]^c[385]^c[489]^c[462]^c[481]^c[535]^c[547]^c[597]^c[658]^c[674]^c[624]^c[760]^c[783]^c[725]^c[877]^c[860]^c[840]^c[884]^c[937]^c[916]^c[987]^c[977]^c[968]^c[1061]^c[1063]^c[1067]^c[1113]^c[1187]^c[1184]^c[1167]^c[1232]^c[1272]^c[1259]^c[1391]^c[1404]^c[1375]^c[1421]^c[1419]^c[1411]^c[1438]^c[1559]^c[1557]^c[1553]^c[1642]^c[1589]^c[1657]^c[1681]^c[1699]^c[1724]^c[1825]^c[1785]^c[1811]^c[1878]^c[1904]^c[1899]^c[1929]; //row: 6 d[i2+6*Zc]=c[29]^c[600]^c[945]^c[978]^c[1227]^c[1557]^c[1603]^c[1800]; //row: 7 d[i2+7*Zc]=c[2]^c[102]^c[399]^c[648]^c[742]^c[1270]; //row: 8 d[i2+8*Zc]=c[79]^c[10]^c[38]^c[57]^c[11]^c[29]^c[30]^c[58]^c[76]^c[77]^c[83]^c[167]^c[98]^c[172]^c[102]^c[103]^c[143]^c[161]^c[162]^c[162]^c[216]^c[235]^c[186]^c[205]^c[262]^c[192]^c[193]^c[291]^c[310]^c[321]^c[340]^c[274]^c[292]^c[293]^c[285]^c[387]^c[406]^c[439]^c[369]^c[370]^c[416]^c[434]^c[435]^c[520]^c[451]^c[493]^c[512]^c[512]^c[442]^c[443]^c[566]^c[585]^c[578]^c[596]^c[597]^c[540]^c[558]^c[559]^c[689]^c[620]^c[617]^c[635]^c[636]^c[655]^c[673]^c[674]^c[791]^c[722]^c[726]^c[744]^c[745]^c[756]^c[774]^c[775]^c[820]^c[839]^c[803]^c[822]^c[871]^c[801]^c[802]^c[915]^c[934]^c[880]^c[898]^c[899]^c[947]^c[965]^c[966]^c[1018]^c[1037]^c[1008]^c[1027]^c[999]^c[1017]^c[1018]^c[1092]^c[1111]^c[1094]^c[1113]^c[1098]^c[1116]^c[1117]^c[1103]^c[1218]^c[1149]^c[1215]^c[1145]^c[1146]^c[1198]^c[1216]^c[1217]^c[1263]^c[1282]^c[1303]^c[1233]^c[1234]^c[1290]^c[1308]^c[1309]^c[1334]^c[1353]^c[1347]^c[1366]^c[1406]^c[1336]^c[1337]^c[1452]^c[1471]^c[1450]^c[1469]^c[1442]^c[1460]^c[1461]^c[1455]^c[1502]^c[1521]^c[1500]^c[1518]^c[1519]^c[1496]^c[1514]^c[1515]^c[1585]^c[1604]^c[1620]^c[1638]^c[1639]^c[1600]^c[1618]^c[1619]^c[1712]^c[1731]^c[1730]^c[1749]^c[1755]^c[1685]^c[1686]^c[1688]^c[1768]^c[1787]^c[1816]^c[1834]^c[1835]^c[1842]^c[1772]^c[1773]^c[1909]^c[1928]^c[1935]^c[1866]^c[1930]^c[1860]^c[1861]^c[1906]; //row: 9 d[i2+9*Zc]=c[67]^c[175]^c[908]^c[990]^c[1147]^c[1559]^c[1606]^c[1832]; //row: 10 d[i2+10*Zc]=c[174]^c[252]^c[378]^c[670]^c[752]^c[1234]; //row: 11 d[i2+11*Zc]=c[15]^c[45]^c[46]^c[62]^c[5]^c[35]^c[66]^c[82]^c[25]^c[24]^c[103]^c[133]^c[134]^c[108]^c[139]^c[167]^c[110]^c[145]^c[240]^c[182]^c[183]^c[210]^c[241]^c[198]^c[229]^c[315]^c[345]^c[346]^c[345]^c[288]^c[298]^c[329]^c[411]^c[354]^c[375]^c[406]^c[352]^c[383]^c[456]^c[486]^c[487]^c[517]^c[460]^c[448]^c[479]^c[590]^c[532]^c[533]^c[602]^c[545]^c[564]^c[595]^c[625]^c[656]^c[641]^c[672]^c[679]^c[622]^c[727]^c[758]^c[750]^c[781]^c[780]^c[723]^c[844]^c[874]^c[875]^c[827]^c[858]^c[807]^c[838]^c[939]^c[881]^c[882]^c[904]^c[935]^c[883]^c[914]^c[1042]^c[984]^c[985]^c[1032]^c[975]^c[1023]^c[1054]^c[1116]^c[1058]^c[1059]^c[1118]^c[1061]^c[1122]^c[1065]^c[1079]^c[1154]^c[1184]^c[1185]^c[1151]^c[1182]^c[1222]^c[1165]^c[1287]^c[1318]^c[1239]^c[1270]^c[1314]^c[1257]^c[1358]^c[1388]^c[1389]^c[1371]^c[1402]^c[1342]^c[1373]^c[1476]^c[1418]^c[1419]^c[1474]^c[1417]^c[1466]^c[1409]^c[1494]^c[1526]^c[1557]^c[1524]^c[1555]^c[1520]^c[1551]^c[1609]^c[1639]^c[1640]^c[1644]^c[1587]^c[1624]^c[1655]^c[1736]^c[1678]^c[1679]^c[1754]^c[1697]^c[1691]^c[1722]^c[1792]^c[1822]^c[1823]^c[1840]^c[1783]^c[1778]^c[1809]^c[1933]^c[1875]^c[1876]^c[1871]^c[1902]^c[1866]^c[1897]^c[1925]; //row: 12 d[i2+12*Zc]=c[34]^c[128]^c[933]^c[989]^c[1231]^c[1659]; //row: 13 d[i2+13*Zc]=c[22]^c[23]^c[70]^c[43]^c[2]^c[46]^c[110]^c[111]^c[116]^c[175]^c[247]^c[248]^c[218]^c[206]^c[322]^c[323]^c[265]^c[306]^c[338]^c[419]^c[383]^c[360]^c[463]^c[464]^c[525]^c[456]^c[597]^c[598]^c[610]^c[572]^c[633]^c[649]^c[687]^c[616]^c[735]^c[758]^c[788]^c[851]^c[852]^c[835]^c[815]^c[946]^c[947]^c[912]^c[891]^c[1049]^c[1050]^c[1040]^c[1031]^c[1123]^c[1124]^c[1126]^c[1130]^c[1161]^c[1162]^c[1159]^c[1230]^c[1295]^c[1247]^c[1234]^c[1365]^c[1366]^c[1379]^c[1350]^c[1483]^c[1484]^c[1482]^c[1474]^c[1534]^c[1532]^c[1528]^c[1616]^c[1617]^c[1652]^c[1632]^c[1743]^c[1744]^c[1674]^c[1699]^c[1799]^c[1800]^c[1760]^c[1786]^c[1765]^c[1852]^c[1853]^c[1879]^c[1874]; //row: 14 d[i2+14*Zc]=c[21]^c[1113]^c[1332]^c[1475]^c[1561]^c[1925]; //row: 15 d[i2+15*Zc]=c[55]^c[14]^c[75]^c[33]^c[34]^c[87]^c[143]^c[148]^c[118]^c[119]^c[171]^c[192]^c[250]^c[238]^c[267]^c[297]^c[337]^c[338]^c[363]^c[415]^c[391]^c[392]^c[496]^c[469]^c[488]^c[542]^c[554]^c[603]^c[604]^c[665]^c[681]^c[630]^c[631]^c[767]^c[790]^c[731]^c[732]^c[796]^c[867]^c[847]^c[891]^c[944]^c[922]^c[923]^c[894]^c[994]^c[984]^c[974]^c[975]^c[1068]^c[1070]^c[1073]^c[1074]^c[1194]^c[1191]^c[1173]^c[1174]^c[1224]^c[1239]^c[1279]^c[1265]^c[1266]^c[1398]^c[1323]^c[1382]^c[1428]^c[1426]^c[1417]^c[1418]^c[1566]^c[1564]^c[1559]^c[1560]^c[1649]^c[1596]^c[1663]^c[1664]^c[1671]^c[1688]^c[1706]^c[1731]^c[1832]^c[1792]^c[1817]^c[1818]^c[1885]^c[1911]^c[1905]^c[1906]; //row: 16 d[i2+16*Zc]=c[55]^c[14]^c[75]^c[34]^c[143]^c[148]^c[119]^c[101]^c[192]^c[250]^c[238]^c[267]^c[297]^c[338]^c[292]^c[363]^c[415]^c[392]^c[496]^c[469]^c[488]^c[542]^c[554]^c[604]^c[665]^c[681]^c[631]^c[767]^c[790]^c[732]^c[796]^c[867]^c[847]^c[891]^c[944]^c[923]^c[994]^c[984]^c[975]^c[1035]^c[1068]^c[1070]^c[1074]^c[1194]^c[1191]^c[1174]^c[1239]^c[1279]^c[1266]^c[1398]^c[1323]^c[1382]^c[1428]^c[1426]^c[1418]^c[1566]^c[1564]^c[1560]^c[1649]^c[1596]^c[1664]^c[1688]^c[1706]^c[1731]^c[1832]^c[1792]^c[1818]^c[1826]^c[1885]^c[1911]^c[1906]; //row: 17 d[i2+17*Zc]=c[21]^c[1283]^c[1478]^c[1523]^c[1861]; //row: 18 d[i2+18*Zc]=c[134]^c[1077]^c[1213]^c[1588]^c[1744]; //row: 19 d[i2+19*Zc]=c[86]^c[109]^c[674]^c[785]^c[907]; //row: 20 d[i2+20*Zc]=c[59]^c[18]^c[79]^c[38]^c[0]^c[147]^c[152]^c[123]^c[196]^c[254]^c[242]^c[271]^c[301]^c[342]^c[328]^c[367]^c[419]^c[396]^c[500]^c[473]^c[492]^c[546]^c[558]^c[608]^c[669]^c[685]^c[635]^c[771]^c[706]^c[736]^c[800]^c[871]^c[851]^c[858]^c[895]^c[948]^c[927]^c[998]^c[988]^c[979]^c[1035]^c[1072]^c[1074]^c[1078]^c[1198]^c[1195]^c[1178]^c[1243]^c[1283]^c[1270]^c[1402]^c[1327]^c[1386]^c[1432]^c[1430]^c[1422]^c[1570]^c[1568]^c[1564]^c[1653]^c[1600]^c[1668]^c[1692]^c[1710]^c[1735]^c[1836]^c[1796]^c[1822]^c[1889]^c[1915]^c[1910]; //row: 21 d[i2+21*Zc]=c[161]^c[527]^c[1489]^c[1814]^c[1868]; //row: 22 d[i2+22*Zc]=c[15]^c[1124]^c[1203]^c[1520]; //row: 23 d[i2+23*Zc]=c[105]^c[181]^c[884]^c[1623]; //row: 24 d[i2+24*Zc]=c[47]^c[6]^c[67]^c[26]^c[37]^c[135]^c[140]^c[111]^c[184]^c[242]^c[230]^c[347]^c[289]^c[330]^c[345]^c[355]^c[407]^c[384]^c[424]^c[488]^c[461]^c[480]^c[534]^c[546]^c[596]^c[657]^c[673]^c[623]^c[759]^c[782]^c[724]^c[876]^c[859]^c[839]^c[883]^c[936]^c[915]^c[986]^c[976]^c[1055]^c[991]^c[1060]^c[1062]^c[1066]^c[1186]^c[1183]^c[1166]^c[1319]^c[1271]^c[1258]^c[1390]^c[1403]^c[1374]^c[1420]^c[1418]^c[1410]^c[1558]^c[1556]^c[1552]^c[1641]^c[1588]^c[1656]^c[1680]^c[1698]^c[1723]^c[1824]^c[1784]^c[1810]^c[1877]^c[1903]^c[1898]; //row: 25 d[i2+25*Zc]=c[102]^c[606]^c[638]^c[1285]; //row: 26 d[i2+26*Zc]=c[60]^c[237]^c[401]^c[1330]; //row: 27 d[i2+27*Zc]=c[90]^c[589]^c[707]; //row: 28 d[i2+28*Zc]=c[13]^c[352]^c[1711]^c[1926]; //row: 29 d[i2+29*Zc]=c[49]^c[8]^c[69]^c[27]^c[28]^c[137]^c[142]^c[112]^c[113]^c[96]^c[186]^c[244]^c[232]^c[349]^c[291]^c[331]^c[332]^c[357]^c[409]^c[385]^c[386]^c[490]^c[463]^c[482]^c[536]^c[548]^c[597]^c[598]^c[659]^c[675]^c[624]^c[625]^c[761]^c[784]^c[725]^c[726]^c[878]^c[861]^c[841]^c[885]^c[938]^c[916]^c[917]^c[988]^c[978]^c[968]^c[969]^c[1062]^c[1064]^c[1067]^c[1068]^c[1188]^c[1185]^c[1167]^c[1168]^c[1233]^c[1273]^c[1259]^c[1260]^c[1247]^c[1392]^c[1405]^c[1376]^c[1422]^c[1420]^c[1411]^c[1412]^c[1560]^c[1558]^c[1553]^c[1554]^c[1643]^c[1590]^c[1657]^c[1658]^c[1650]^c[1682]^c[1700]^c[1725]^c[1826]^c[1786]^c[1811]^c[1812]^c[1879]^c[1905]^c[1899]^c[1900]; //row: 30 d[i2+30*Zc]=c[66]^c[25]^c[85]^c[86]^c[44]^c[45]^c[82]^c[154]^c[158]^c[159]^c[129]^c[130]^c[203]^c[261]^c[248]^c[249]^c[278]^c[308]^c[348]^c[349]^c[374]^c[425]^c[426]^c[402]^c[403]^c[507]^c[480]^c[498]^c[499]^c[553]^c[564]^c[565]^c[614]^c[615]^c[676]^c[691]^c[692]^c[641]^c[642]^c[778]^c[712]^c[713]^c[742]^c[743]^c[807]^c[878]^c[857]^c[858]^c[902]^c[954]^c[955]^c[933]^c[934]^c[895]^c[1005]^c[995]^c[985]^c[986]^c[1079]^c[1081]^c[1084]^c[1085]^c[1205]^c[1201]^c[1202]^c[1184]^c[1185]^c[1150]^c[1250]^c[1289]^c[1290]^c[1276]^c[1277]^c[1321]^c[1334]^c[1392]^c[1393]^c[1439]^c[1437]^c[1428]^c[1429]^c[1577]^c[1574]^c[1575]^c[1570]^c[1571]^c[1660]^c[1606]^c[1607]^c[1586]^c[1587]^c[1699]^c[1717]^c[1741]^c[1742]^c[1843]^c[1802]^c[1803]^c[1828]^c[1829]^c[1896]^c[1922]^c[1916]^c[1917]; //row: 31 d[i2+31*Zc]=c[44]^c[76]^c[3]^c[35]^c[64]^c[8]^c[23]^c[54]^c[55]^c[132]^c[164]^c[137]^c[169]^c[108]^c[139]^c[140]^c[100]^c[181]^c[213]^c[239]^c[183]^c[227]^c[259]^c[344]^c[288]^c[286]^c[318]^c[327]^c[270]^c[271]^c[352]^c[384]^c[404]^c[436]^c[381]^c[412]^c[413]^c[485]^c[517]^c[458]^c[490]^c[477]^c[509]^c[531]^c[563]^c[543]^c[575]^c[593]^c[536]^c[537]^c[654]^c[686]^c[670]^c[702]^c[620]^c[651]^c[652]^c[648]^c[756]^c[788]^c[779]^c[723]^c[721]^c[752]^c[753]^c[873]^c[817]^c[856]^c[800]^c[836]^c[868]^c[880]^c[912]^c[933]^c[965]^c[912]^c[943]^c[944]^c[983]^c[1015]^c[973]^c[1005]^c[1052]^c[995]^c[996]^c[1057]^c[1089]^c[1059]^c[1091]^c[1063]^c[1094]^c[1095]^c[1183]^c[1215]^c[1180]^c[1212]^c[1163]^c[1194]^c[1195]^c[1316]^c[1260]^c[1268]^c[1300]^c[1255]^c[1286]^c[1287]^c[1387]^c[1331]^c[1400]^c[1344]^c[1371]^c[1403]^c[1417]^c[1449]^c[1415]^c[1447]^c[1495]^c[1438]^c[1439]^c[1555]^c[1499]^c[1553]^c[1497]^c[1549]^c[1580]^c[1581]^c[1638]^c[1670]^c[1585]^c[1617]^c[1653]^c[1596]^c[1597]^c[1677]^c[1709]^c[1695]^c[1727]^c[1720]^c[1752]^c[1821]^c[1765]^c[1781]^c[1813]^c[1807]^c[1838]^c[1839]^c[1874]^c[1906]^c[1900]^c[1932]^c[1895]^c[1926]^c[1927]; //row: 32 d[i2+32*Zc]=c[25]^c[72]^c[44]^c[45]^c[3]^c[4]^c[86]^c[113]^c[117]^c[118]^c[88]^c[89]^c[250]^c[220]^c[207]^c[208]^c[325]^c[267]^c[307]^c[308]^c[421]^c[384]^c[385]^c[361]^c[362]^c[466]^c[527]^c[457]^c[458]^c[600]^c[611]^c[612]^c[573]^c[574]^c[635]^c[650]^c[651]^c[688]^c[689]^c[737]^c[759]^c[760]^c[789]^c[790]^c[854]^c[837]^c[816]^c[817]^c[949]^c[913]^c[914]^c[892]^c[893]^c[1052]^c[1042]^c[1032]^c[1033]^c[1126]^c[1128]^c[1131]^c[1132]^c[1056]^c[1164]^c[1160]^c[1161]^c[1231]^c[1144]^c[1297]^c[1248]^c[1249]^c[1235]^c[1236]^c[1305]^c[1368]^c[1381]^c[1351]^c[1352]^c[1486]^c[1484]^c[1475]^c[1476]^c[1536]^c[1533]^c[1534]^c[1529]^c[1530]^c[1619]^c[1653]^c[1654]^c[1633]^c[1634]^c[1746]^c[1676]^c[1700]^c[1701]^c[1802]^c[1761]^c[1762]^c[1787]^c[1788]^c[1855]^c[1881]^c[1875]^c[1876]; //row: 33 d[i2+33*Zc]=c[143]^c[215]^c[1020]^c[1860]; //row: 34 d[i2+34*Zc]=c[59]^c[671]^c[1343]^c[1549]; //row: 35 d[i2+35*Zc]=c[33]^c[80]^c[53]^c[12]^c[121]^c[126]^c[97]^c[99]^c[258]^c[228]^c[216]^c[333]^c[275]^c[316]^c[429]^c[393]^c[370]^c[474]^c[447]^c[466]^c[608]^c[532]^c[582]^c[561]^c[643]^c[659]^c[697]^c[745]^c[768]^c[710]^c[862]^c[845]^c[825]^c[957]^c[922]^c[901]^c[972]^c[1050]^c[1041]^c[1134]^c[1136]^c[1140]^c[1074]^c[1172]^c[1169]^c[1152]^c[1305]^c[1257]^c[1244]^c[1376]^c[1389]^c[1360]^c[1494]^c[1492]^c[1484]^c[1544]^c[1542]^c[1538]^c[1627]^c[1662]^c[1642]^c[1754]^c[1684]^c[1709]^c[1810]^c[1770]^c[1796]^c[1863]^c[1889]^c[1884]; //row: 36 d[i2+36*Zc]=c[46]^c[1246]^c[1354]^c[1595]; //row: 37 d[i2+37*Zc]=c[26]^c[27]^c[74]^c[47]^c[6]^c[114]^c[115]^c[120]^c[91]^c[142]^c[251]^c[252]^c[222]^c[210]^c[326]^c[327]^c[269]^c[310]^c[423]^c[387]^c[364]^c[467]^c[468]^c[441]^c[460]^c[601]^c[602]^c[614]^c[576]^c[637]^c[653]^c[691]^c[739]^c[762]^c[704]^c[855]^c[856]^c[839]^c[819]^c[950]^c[951]^c[916]^c[895]^c[1053]^c[1054]^c[1044]^c[1035]^c[1127]^c[1128]^c[1130]^c[1134]^c[1165]^c[1166]^c[1163]^c[1146]^c[1203]^c[1299]^c[1251]^c[1238]^c[1369]^c[1370]^c[1383]^c[1354]^c[1487]^c[1488]^c[1486]^c[1478]^c[1538]^c[1536]^c[1532]^c[1620]^c[1621]^c[1656]^c[1636]^c[1747]^c[1748]^c[1678]^c[1703]^c[1803]^c[1804]^c[1764]^c[1790]^c[1856]^c[1857]^c[1883]^c[1878]; //row: 38 d[i2+38*Zc]=c[75]^c[811]^c[912]^c[1125]; //row: 39 d[i2+39*Zc]=c[147]^c[351]^c[652]^c[1679]; //row: 40 d[i2+40*Zc]=c[39]^c[764]^c[1542]; //row: 41 d[i2+41*Zc]=c[122]^c[340]^c[816]^c[1591]; //row: 42 d[i2+42*Zc]=c[47]^c[6]^c[66]^c[67]^c[25]^c[26]^c[23]^c[135]^c[139]^c[140]^c[110]^c[111]^c[184]^c[242]^c[229]^c[230]^c[347]^c[289]^c[329]^c[330]^c[355]^c[406]^c[407]^c[383]^c[384]^c[434]^c[488]^c[461]^c[479]^c[480]^c[534]^c[545]^c[546]^c[595]^c[596]^c[657]^c[672]^c[673]^c[622]^c[623]^c[759]^c[781]^c[782]^c[723]^c[724]^c[876]^c[859]^c[838]^c[839]^c[883]^c[935]^c[936]^c[914]^c[915]^c[986]^c[976]^c[1054]^c[1055]^c[1060]^c[1062]^c[1065]^c[1066]^c[1186]^c[1182]^c[1183]^c[1165]^c[1166]^c[1319]^c[1270]^c[1271]^c[1257]^c[1258]^c[1390]^c[1403]^c[1373]^c[1374]^c[1420]^c[1418]^c[1409]^c[1410]^c[1558]^c[1555]^c[1556]^c[1551]^c[1552]^c[1641]^c[1587]^c[1588]^c[1655]^c[1656]^c[1680]^c[1698]^c[1722]^c[1723]^c[1824]^c[1783]^c[1784]^c[1809]^c[1810]^c[1877]^c[1903]^c[1897]^c[1898]; //row: 43 d[i2+43*Zc]=c[21]^c[68]^c[41]^c[87]^c[0]^c[109]^c[114]^c[172]^c[173]^c[121]^c[246]^c[216]^c[204]^c[321]^c[351]^c[303]^c[304]^c[417]^c[381]^c[357]^c[358]^c[462]^c[523]^c[454]^c[596]^c[608]^c[569]^c[570]^c[631]^c[647]^c[684]^c[685]^c[733]^c[756]^c[785]^c[786]^c[850]^c[833]^c[813]^c[945]^c[910]^c[888]^c[889]^c[1048]^c[1038]^c[1028]^c[1029]^c[1122]^c[1124]^c[1127]^c[1128]^c[1160]^c[1157]^c[1227]^c[1228]^c[1293]^c[1245]^c[1319]^c[1232]^c[1364]^c[1377]^c[1348]^c[1482]^c[1480]^c[1471]^c[1472]^c[1410]^c[1532]^c[1530]^c[1525]^c[1526]^c[1615]^c[1650]^c[1629]^c[1630]^c[1636]^c[1742]^c[1672]^c[1697]^c[1798]^c[1846]^c[1783]^c[1784]^c[1851]^c[1877]^c[1871]^c[1872]; //row: 44 d[i2+44*Zc]=c[37]^c[84]^c[57]^c[16]^c[78]^c[125]^c[130]^c[101]^c[262]^c[232]^c[220]^c[337]^c[279]^c[320]^c[433]^c[397]^c[374]^c[478]^c[451]^c[470]^c[612]^c[536]^c[586]^c[647]^c[663]^c[701]^c[683]^c[749]^c[772]^c[714]^c[866]^c[849]^c[829]^c[820]^c[961]^c[926]^c[905]^c[976]^c[1054]^c[1045]^c[1138]^c[1140]^c[1056]^c[1176]^c[1173]^c[1156]^c[1309]^c[1261]^c[1248]^c[1380]^c[1393]^c[1364]^c[1410]^c[1408]^c[1488]^c[1548]^c[1546]^c[1542]^c[1631]^c[1666]^c[1646]^c[1758]^c[1688]^c[1713]^c[1814]^c[1774]^c[1800]^c[1867]^c[1893]^c[1888]; //row: 45 d[i2+45*Zc]=c[169]^c[594]^c[938]; } break; case 96: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[18]^c[75]^c[12]^c[83]^c[114]^c[153]^c[182]^c[241]^c[267]^c[231]^c[368]^c[360]^c[383]^c[479]^c[427]^c[466]^c[564]^c[527]^c[543]^c[599]^c[640]^c[582]^c[714]^c[746]^c[728]^c[810]^c[831]^c[823]^c[892]^c[945]^c[926]^c[1055]^c[992]^c[995]^c[1068]^c[1062]^c[1072]^c[1168]^c[1205]^c[1190]^c[1316]^c[1255]^c[1300]^c[1368]^c[1431]^c[1363]^c[1462]^c[1442]^c[1492]^c[1545]^c[1601]^c[1551]^c[1649]^c[1666]^c[1643]^c[1777]^c[1775]^c[1806]^c[1907]^c[1866]^c[1836]^c[1961]^c[1932]^c[1958]^c[2073]^c[2031]^c[2084]; //row: 1 d[i2+1*Zc]=c[18]^c[19]^c[76]^c[13]^c[84]^c[114]^c[115]^c[154]^c[183]^c[241]^c[242]^c[268]^c[232]^c[368]^c[369]^c[361]^c[288]^c[384]^c[428]^c[467]^c[564]^c[565]^c[528]^c[544]^c[599]^c[600]^c[641]^c[583]^c[715]^c[747]^c[729]^c[811]^c[832]^c[824]^c[892]^c[893]^c[946]^c[927]^c[1055]^c[960]^c[993]^c[996]^c[1068]^c[1069]^c[1063]^c[1073]^c[1168]^c[1169]^c[1206]^c[1191]^c[1316]^c[1317]^c[1256]^c[1301]^c[1369]^c[1432]^c[1364]^c[1462]^c[1463]^c[1443]^c[1493]^c[1545]^c[1546]^c[1602]^c[1552]^c[1650]^c[1667]^c[1644]^c[1777]^c[1778]^c[1776]^c[1807]^c[1907]^c[1908]^c[1867]^c[1837]^c[1961]^c[1962]^c[1933]^c[1959]^c[2073]^c[2074]^c[2032]^c[2085]; //row: 2 d[i2+2*Zc]=c[19]^c[76]^c[12]^c[13]^c[83]^c[84]^c[115]^c[153]^c[154]^c[182]^c[183]^c[242]^c[268]^c[231]^c[232]^c[369]^c[361]^c[383]^c[288]^c[384]^c[427]^c[428]^c[466]^c[467]^c[565]^c[528]^c[543]^c[544]^c[600]^c[640]^c[641]^c[582]^c[583]^c[715]^c[746]^c[747]^c[728]^c[729]^c[811]^c[831]^c[832]^c[823]^c[824]^c[893]^c[946]^c[926]^c[927]^c[960]^c[992]^c[993]^c[995]^c[996]^c[1069]^c[1063]^c[1072]^c[1073]^c[1169]^c[1206]^c[1190]^c[1191]^c[1317]^c[1255]^c[1256]^c[1300]^c[1301]^c[1369]^c[1431]^c[1432]^c[1363]^c[1364]^c[1463]^c[1443]^c[1492]^c[1493]^c[1546]^c[1602]^c[1551]^c[1552]^c[1650]^c[1666]^c[1667]^c[1643]^c[1644]^c[1778]^c[1775]^c[1776]^c[1806]^c[1807]^c[1908]^c[1867]^c[1836]^c[1837]^c[1962]^c[1932]^c[1933]^c[1958]^c[1959]^c[2074]^c[2032]^c[2084]^c[2085]; //row: 3 d[i2+3*Zc]=c[19]^c[76]^c[13]^c[83]^c[84]^c[115]^c[154]^c[182]^c[183]^c[242]^c[268]^c[232]^c[369]^c[361]^c[383]^c[288]^c[384]^c[428]^c[466]^c[467]^c[565]^c[528]^c[544]^c[600]^c[641]^c[582]^c[583]^c[715]^c[747]^c[728]^c[729]^c[811]^c[832]^c[823]^c[824]^c[893]^c[946]^c[927]^c[960]^c[993]^c[995]^c[996]^c[1069]^c[1063]^c[1072]^c[1073]^c[1169]^c[1206]^c[1190]^c[1191]^c[1317]^c[1256]^c[1300]^c[1301]^c[1369]^c[1432]^c[1363]^c[1364]^c[1463]^c[1443]^c[1493]^c[1546]^c[1602]^c[1551]^c[1552]^c[1650]^c[1667]^c[1643]^c[1644]^c[1778]^c[1776]^c[1806]^c[1807]^c[1908]^c[1867]^c[1837]^c[1962]^c[1933]^c[1958]^c[1959]^c[2074]^c[2032]^c[2084]^c[2085]; //row: 4 d[i2+4*Zc]=c[43]^c[180]; //row: 5 d[i2+5*Zc]=c[79]^c[40]^c[73]^c[48]^c[2]^c[175]^c[118]^c[147]^c[109]^c[206]^c[232]^c[196]^c[333]^c[325]^c[348]^c[306]^c[444]^c[392]^c[431]^c[529]^c[492]^c[508]^c[660]^c[605]^c[643]^c[679]^c[711]^c[693]^c[775]^c[796]^c[788]^c[953]^c[910]^c[891]^c[1020]^c[1053]^c[960]^c[1129]^c[1123]^c[1133]^c[1229]^c[1170]^c[1155]^c[1221]^c[1281]^c[1316]^c[1265]^c[1429]^c[1396]^c[1424]^c[1523]^c[1503]^c[1457]^c[1606]^c[1566]^c[1612]^c[1584]^c[1710]^c[1727]^c[1704]^c[1742]^c[1740]^c[1771]^c[1872]^c[1831]^c[1897]^c[1926]^c[1993]^c[1923]^c[2038]^c[2092]^c[2049]^c[2066]; //row: 6 d[i2+6*Zc]=c[85]^c[640]^c[960]^c[1118]^c[1339]^c[1692]^c[1745]^c[1952]; //row: 7 d[i2+7*Zc]=c[8]^c[157]^c[411]^c[716]^c[769]^c[1361]; //row: 8 d[i2+8*Zc]=c[85]^c[93]^c[46]^c[54]^c[79]^c[86]^c[87]^c[54]^c[61]^c[62]^c[18]^c[181]^c[189]^c[124]^c[131]^c[132]^c[153]^c[160]^c[161]^c[178]^c[212]^c[220]^c[238]^c[246]^c[202]^c[209]^c[210]^c[339]^c[347]^c[331]^c[339]^c[354]^c[361]^c[362]^c[356]^c[450]^c[458]^c[398]^c[405]^c[406]^c[437]^c[444]^c[445]^c[535]^c[543]^c[498]^c[506]^c[514]^c[521]^c[522]^c[666]^c[578]^c[611]^c[618]^c[619]^c[649]^c[656]^c[657]^c[685]^c[693]^c[717]^c[724]^c[725]^c[699]^c[706]^c[707]^c[781]^c[789]^c[802]^c[809]^c[810]^c[794]^c[801]^c[802]^c[959]^c[871]^c[916]^c[924]^c[897]^c[904]^c[905]^c[1026]^c[1034]^c[963]^c[970]^c[971]^c[966]^c[973]^c[974]^c[1135]^c[1143]^c[1129]^c[1137]^c[1139]^c[1146]^c[1147]^c[1235]^c[1243]^c[1176]^c[1184]^c[1161]^c[1168]^c[1169]^c[1169]^c[1287]^c[1295]^c[1322]^c[1329]^c[1330]^c[1271]^c[1278]^c[1279]^c[1435]^c[1347]^c[1402]^c[1409]^c[1410]^c[1430]^c[1437]^c[1438]^c[1529]^c[1441]^c[1509]^c[1517]^c[1463]^c[1470]^c[1471]^c[1612]^c[1620]^c[1572]^c[1580]^c[1618]^c[1625]^c[1626]^c[1574]^c[1716]^c[1724]^c[1637]^c[1644]^c[1645]^c[1710]^c[1717]^c[1718]^c[1748]^c[1756]^c[1746]^c[1753]^c[1754]^c[1777]^c[1784]^c[1785]^c[1878]^c[1886]^c[1837]^c[1845]^c[1903]^c[1910]^c[1911]^c[1855]^c[1932]^c[1940]^c[1999]^c[2006]^c[2007]^c[1929]^c[1936]^c[1937]^c[2044]^c[2052]^c[2098]^c[2106]^c[2055]^c[2062]^c[2063]^c[2095]; //row: 9 d[i2+9*Zc]=c[77]^c[135]^c[992]^c[1092]^c[1304]^c[1646]^c[1790]^c[2001]; //row: 10 d[i2+10*Zc]=c[100]^c[242]^c[465]^c[686]^c[862]^c[1409]; //row: 11 d[i2+11*Zc]=c[64]^c[37]^c[38]^c[25]^c[95]^c[58]^c[32]^c[33]^c[7]^c[47]^c[160]^c[133]^c[134]^c[103]^c[173]^c[132]^c[106]^c[101]^c[287]^c[260]^c[261]^c[217]^c[287]^c[277]^c[251]^c[318]^c[291]^c[292]^c[310]^c[380]^c[333]^c[307]^c[429]^c[403]^c[473]^c[447]^c[416]^c[390]^c[514]^c[487]^c[488]^c[573]^c[547]^c[493]^c[563]^c[645]^c[618]^c[619]^c[590]^c[660]^c[628]^c[602]^c[760]^c[734]^c[696]^c[766]^c[678]^c[748]^c[856]^c[830]^c[781]^c[851]^c[773]^c[843]^c[938]^c[911]^c[912]^c[895]^c[869]^c[876]^c[946]^c[1005]^c[978]^c[979]^c[1038]^c[1012]^c[1041]^c[1015]^c[1114]^c[1087]^c[1088]^c[1108]^c[1082]^c[1118]^c[1092]^c[1214]^c[1187]^c[1188]^c[1155]^c[1225]^c[1236]^c[1210]^c[1159]^c[1266]^c[1335]^c[1336]^c[1301]^c[1275]^c[1250]^c[1320]^c[1414]^c[1388]^c[1381]^c[1355]^c[1409]^c[1383]^c[1508]^c[1481]^c[1482]^c[1488]^c[1462]^c[1442]^c[1512]^c[1591]^c[1564]^c[1565]^c[1551]^c[1621]^c[1597]^c[1571]^c[1582]^c[1695]^c[1669]^c[1712]^c[1686]^c[1689]^c[1663]^c[1823]^c[1796]^c[1797]^c[1821]^c[1795]^c[1756]^c[1730]^c[1857]^c[1830]^c[1831]^c[1912]^c[1886]^c[1882]^c[1856]^c[2007]^c[1980]^c[1981]^c[1978]^c[1952]^c[2004]^c[1978]^c[2023]^c[2092]^c[2093]^c[2077]^c[2051]^c[2034]^c[2104]^c[2107]; //row: 12 d[i2+12*Zc]=c[76]^c[185]^c[1037]^c[1095]^c[1297]^c[1801]; //row: 13 d[i2+13*Zc]=c[4]^c[5]^c[62]^c[95]^c[70]^c[24]^c[100]^c[101]^c[140]^c[169]^c[227]^c[228]^c[254]^c[218]^c[354]^c[355]^c[347]^c[370]^c[368]^c[466]^c[414]^c[453]^c[550]^c[551]^c[514]^c[530]^c[585]^c[586]^c[627]^c[665]^c[701]^c[733]^c[715]^c[745]^c[797]^c[818]^c[810]^c[878]^c[879]^c[932]^c[913]^c[1041]^c[1042]^c[979]^c[982]^c[1150]^c[1151]^c[1145]^c[1059]^c[1154]^c[1155]^c[1192]^c[1177]^c[1302]^c[1303]^c[1338]^c[1287]^c[1355]^c[1418]^c[1350]^c[1448]^c[1449]^c[1525]^c[1479]^c[1627]^c[1628]^c[1588]^c[1538]^c[1636]^c[1653]^c[1726]^c[1763]^c[1764]^c[1762]^c[1793]^c[1893]^c[1894]^c[1853]^c[1919]^c[1947]^c[1948]^c[2015]^c[1945]^c[1938]^c[2059]^c[2060]^c[2018]^c[2071]; //row: 14 d[i2+14*Zc]=c[45]^c[1207]^c[1480]^c[1624]^c[1690]^c[2027]; //row: 15 d[i2+15*Zc]=c[0]^c[57]^c[90]^c[64]^c[65]^c[48]^c[96]^c[135]^c[163]^c[164]^c[97]^c[223]^c[249]^c[213]^c[350]^c[342]^c[364]^c[365]^c[461]^c[409]^c[447]^c[448]^c[546]^c[509]^c[525]^c[581]^c[622]^c[659]^c[660]^c[696]^c[728]^c[709]^c[710]^c[792]^c[813]^c[804]^c[805]^c[874]^c[927]^c[908]^c[1037]^c[974]^c[976]^c[977]^c[977]^c[1146]^c[1140]^c[1149]^c[1150]^c[1246]^c[1187]^c[1171]^c[1172]^c[1298]^c[1333]^c[1281]^c[1282]^c[1277]^c[1350]^c[1413]^c[1344]^c[1345]^c[1444]^c[1520]^c[1474]^c[1623]^c[1583]^c[1628]^c[1629]^c[1727]^c[1648]^c[1720]^c[1721]^c[1759]^c[1757]^c[1787]^c[1788]^c[1782]^c[1889]^c[1848]^c[1914]^c[1943]^c[2010]^c[1939]^c[1940]^c[2055]^c[2109]^c[2065]^c[2066]; //row: 16 d[i2+16*Zc]=c[75]^c[36]^c[69]^c[44]^c[171]^c[114]^c[143]^c[108]^c[202]^c[228]^c[192]^c[329]^c[321]^c[344]^c[337]^c[440]^c[388]^c[427]^c[525]^c[488]^c[504]^c[656]^c[601]^c[639]^c[675]^c[707]^c[689]^c[771]^c[792]^c[784]^c[949]^c[906]^c[887]^c[1016]^c[1049]^c[1052]^c[1125]^c[1119]^c[1129]^c[1112]^c[1225]^c[1166]^c[1247]^c[1277]^c[1312]^c[1261]^c[1425]^c[1392]^c[1420]^c[1519]^c[1499]^c[1453]^c[1602]^c[1562]^c[1608]^c[1706]^c[1723]^c[1700]^c[1738]^c[1736]^c[1767]^c[1868]^c[1827]^c[1893]^c[1922]^c[1989]^c[2015]^c[1920]^c[2034]^c[2088]^c[2045]; //row: 17 d[i2+17*Zc]=c[67]^c[1358]^c[1616]^c[1701]^c[2102]; //row: 18 d[i2+18*Zc]=c[129]^c[1218]^c[1335]^c[1763]^c[1827]; //row: 19 d[i2+19*Zc]=c[48]^c[116]^c[727]^c[817]^c[964]; //row: 20 d[i2+20*Zc]=c[77]^c[38]^c[71]^c[46]^c[90]^c[173]^c[116]^c[145]^c[204]^c[230]^c[194]^c[331]^c[323]^c[346]^c[301]^c[442]^c[390]^c[429]^c[527]^c[490]^c[506]^c[658]^c[603]^c[641]^c[677]^c[709]^c[691]^c[773]^c[794]^c[786]^c[951]^c[908]^c[889]^c[935]^c[1018]^c[1051]^c[1054]^c[1127]^c[1121]^c[1131]^c[1108]^c[1227]^c[1168]^c[1153]^c[1279]^c[1314]^c[1263]^c[1427]^c[1394]^c[1422]^c[1521]^c[1501]^c[1455]^c[1604]^c[1564]^c[1610]^c[1708]^c[1725]^c[1702]^c[1740]^c[1738]^c[1769]^c[1870]^c[1829]^c[1895]^c[1924]^c[1991]^c[1921]^c[2036]^c[2090]^c[2047]; //row: 21 d[i2+21*Zc]=c[108]^c[485]^c[1575]^c[1940]^c[2016]; //row: 22 d[i2+22*Zc]=c[29]^c[1162]^c[1288]^c[1653]; //row: 23 d[i2+23*Zc]=c[119]^c[280]^c[1020]^c[1754]; //row: 24 d[i2+24*Zc]=c[60]^c[21]^c[54]^c[29]^c[9]^c[156]^c[99]^c[128]^c[283]^c[213]^c[273]^c[314]^c[306]^c[329]^c[349]^c[425]^c[469]^c[412]^c[426]^c[510]^c[569]^c[489]^c[641]^c[586]^c[624]^c[756]^c[692]^c[674]^c[852]^c[777]^c[769]^c[934]^c[891]^c[872]^c[1001]^c[1034]^c[1037]^c[1110]^c[1104]^c[1114]^c[1106]^c[1210]^c[1247]^c[1232]^c[1262]^c[1297]^c[1342]^c[1410]^c[1377]^c[1405]^c[1504]^c[1484]^c[1534]^c[1587]^c[1547]^c[1593]^c[1691]^c[1708]^c[1685]^c[1819]^c[1817]^c[1752]^c[1853]^c[1908]^c[1878]^c[2003]^c[1974]^c[2000]^c[2019]^c[2073]^c[2030]; //row: 25 d[i2+25*Zc]=c[167]^c[592]^c[766]^c[1367]; //row: 26 d[i2+26*Zc]=c[70]^c[272]^c[459]^c[1479]; //row: 27 d[i2+27*Zc]=c[97]^c[577]^c[772]; //row: 28 d[i2+28*Zc]=c[29]^c[402]^c[1875]^c[2097]; //row: 29 d[i2+29*Zc]=c[1]^c[58]^c[91]^c[65]^c[66]^c[97]^c[136]^c[164]^c[165]^c[155]^c[224]^c[250]^c[214]^c[351]^c[343]^c[365]^c[366]^c[462]^c[410]^c[448]^c[449]^c[547]^c[510]^c[526]^c[582]^c[623]^c[660]^c[661]^c[697]^c[729]^c[710]^c[711]^c[793]^c[814]^c[805]^c[806]^c[875]^c[928]^c[909]^c[1038]^c[975]^c[977]^c[978]^c[1147]^c[1141]^c[1150]^c[1151]^c[1247]^c[1188]^c[1172]^c[1173]^c[1299]^c[1334]^c[1282]^c[1283]^c[1351]^c[1414]^c[1345]^c[1346]^c[1348]^c[1445]^c[1521]^c[1475]^c[1624]^c[1584]^c[1629]^c[1630]^c[1632]^c[1649]^c[1721]^c[1722]^c[1760]^c[1758]^c[1788]^c[1789]^c[1778]^c[1890]^c[1849]^c[1915]^c[1944]^c[2011]^c[1940]^c[1941]^c[2056]^c[2110]^c[2066]^c[2067]; //row: 30 d[i2+30*Zc]=c[13]^c[70]^c[6]^c[7]^c[77]^c[78]^c[62]^c[109]^c[147]^c[148]^c[176]^c[177]^c[236]^c[262]^c[225]^c[226]^c[363]^c[355]^c[377]^c[378]^c[474]^c[421]^c[422]^c[460]^c[461]^c[559]^c[522]^c[537]^c[538]^c[594]^c[634]^c[635]^c[576]^c[577]^c[709]^c[740]^c[741]^c[722]^c[723]^c[805]^c[825]^c[826]^c[817]^c[818]^c[887]^c[940]^c[920]^c[921]^c[1050]^c[986]^c[987]^c[989]^c[990]^c[996]^c[1063]^c[1057]^c[1066]^c[1067]^c[1163]^c[1200]^c[1184]^c[1185]^c[1311]^c[1249]^c[1250]^c[1294]^c[1295]^c[1315]^c[1363]^c[1425]^c[1426]^c[1357]^c[1358]^c[1457]^c[1533]^c[1486]^c[1487]^c[1540]^c[1596]^c[1545]^c[1546]^c[1644]^c[1660]^c[1661]^c[1637]^c[1638]^c[1772]^c[1769]^c[1770]^c[1800]^c[1801]^c[1902]^c[1861]^c[1830]^c[1831]^c[1956]^c[1926]^c[1927]^c[1952]^c[1953]^c[2068]^c[2026]^c[2078]^c[2079]; //row: 31 d[i2+31*Zc]=c[84]^c[83]^c[45]^c[44]^c[78]^c[77]^c[53]^c[51]^c[52]^c[180]^c[179]^c[123]^c[122]^c[152]^c[150]^c[151]^c[99]^c[211]^c[210]^c[237]^c[236]^c[201]^c[200]^c[338]^c[337]^c[330]^c[329]^c[353]^c[351]^c[352]^c[449]^c[448]^c[397]^c[396]^c[436]^c[434]^c[435]^c[534]^c[533]^c[497]^c[496]^c[513]^c[512]^c[665]^c[664]^c[610]^c[609]^c[648]^c[646]^c[647]^c[684]^c[683]^c[716]^c[715]^c[698]^c[696]^c[697]^c[694]^c[780]^c[779]^c[801]^c[800]^c[793]^c[791]^c[792]^c[958]^c[957]^c[915]^c[914]^c[896]^c[895]^c[1025]^c[1024]^c[962]^c[961]^c[965]^c[963]^c[964]^c[1134]^c[1133]^c[1128]^c[1127]^c[1138]^c[1136]^c[1137]^c[1234]^c[1233]^c[1175]^c[1174]^c[1160]^c[1158]^c[1159]^c[1286]^c[1285]^c[1321]^c[1320]^c[1270]^c[1268]^c[1269]^c[1434]^c[1433]^c[1401]^c[1400]^c[1429]^c[1427]^c[1428]^c[1528]^c[1527]^c[1508]^c[1507]^c[1462]^c[1461]^c[1611]^c[1610]^c[1571]^c[1570]^c[1617]^c[1615]^c[1616]^c[1715]^c[1714]^c[1636]^c[1635]^c[1709]^c[1707]^c[1708]^c[1747]^c[1746]^c[1745]^c[1744]^c[1776]^c[1774]^c[1775]^c[1877]^c[1876]^c[1836]^c[1835]^c[1902]^c[1901]^c[1931]^c[1930]^c[1998]^c[1997]^c[1928]^c[1926]^c[1927]^c[2043]^c[2042]^c[2097]^c[2096]^c[2054]^c[2052]^c[2053]; //row: 32 d[i2+32*Zc]=c[18]^c[75]^c[11]^c[12]^c[82]^c[83]^c[5]^c[114]^c[152]^c[153]^c[181]^c[182]^c[241]^c[267]^c[230]^c[231]^c[368]^c[360]^c[382]^c[383]^c[479]^c[426]^c[427]^c[465]^c[466]^c[564]^c[527]^c[542]^c[543]^c[599]^c[639]^c[640]^c[581]^c[582]^c[714]^c[745]^c[746]^c[727]^c[728]^c[810]^c[830]^c[831]^c[822]^c[823]^c[892]^c[945]^c[925]^c[926]^c[1055]^c[991]^c[992]^c[994]^c[995]^c[1068]^c[1062]^c[1071]^c[1072]^c[1168]^c[1205]^c[1189]^c[1190]^c[1160]^c[1316]^c[1254]^c[1255]^c[1299]^c[1300]^c[1368]^c[1430]^c[1431]^c[1362]^c[1363]^c[1422]^c[1462]^c[1442]^c[1491]^c[1492]^c[1545]^c[1601]^c[1550]^c[1551]^c[1649]^c[1665]^c[1666]^c[1642]^c[1643]^c[1777]^c[1774]^c[1775]^c[1805]^c[1806]^c[1907]^c[1866]^c[1835]^c[1836]^c[1961]^c[1931]^c[1932]^c[1957]^c[1958]^c[2073]^c[2031]^c[2083]^c[2084]; //row: 33 d[i2+33*Zc]=c[130]^c[199]^c[1128]^c[2024]; //row: 34 d[i2+34*Zc]=c[37]^c[723]^c[1449]^c[1655]; //row: 35 d[i2+35*Zc]=c[92]^c[53]^c[86]^c[61]^c[188]^c[131]^c[160]^c[127]^c[219]^c[245]^c[209]^c[346]^c[338]^c[361]^c[457]^c[405]^c[444]^c[542]^c[505]^c[521]^c[577]^c[618]^c[656]^c[622]^c[692]^c[724]^c[706]^c[788]^c[809]^c[801]^c[870]^c[923]^c[904]^c[1033]^c[970]^c[973]^c[1142]^c[1136]^c[1146]^c[1242]^c[1183]^c[1168]^c[1153]^c[1294]^c[1329]^c[1278]^c[1346]^c[1409]^c[1437]^c[1440]^c[1516]^c[1470]^c[1619]^c[1579]^c[1625]^c[1723]^c[1644]^c[1717]^c[1755]^c[1753]^c[1784]^c[1885]^c[1844]^c[1910]^c[1939]^c[2006]^c[1936]^c[2051]^c[2105]^c[2062]; //row: 36 d[i2+36*Zc]=c[17]^c[1368]^c[1448]^c[1748]; //row: 37 d[i2+37*Zc]=c[37]^c[38]^c[95]^c[32]^c[7]^c[133]^c[134]^c[173]^c[106]^c[172]^c[260]^c[261]^c[287]^c[251]^c[291]^c[292]^c[380]^c[307]^c[403]^c[447]^c[390]^c[487]^c[488]^c[547]^c[563]^c[618]^c[619]^c[660]^c[602]^c[734]^c[766]^c[748]^c[830]^c[851]^c[843]^c[911]^c[912]^c[869]^c[946]^c[978]^c[979]^c[1012]^c[1015]^c[1087]^c[1088]^c[1082]^c[1092]^c[1187]^c[1188]^c[1225]^c[1210]^c[1335]^c[1336]^c[1275]^c[1320]^c[1329]^c[1388]^c[1355]^c[1383]^c[1481]^c[1482]^c[1462]^c[1512]^c[1564]^c[1565]^c[1621]^c[1571]^c[1669]^c[1686]^c[1663]^c[1796]^c[1797]^c[1795]^c[1730]^c[1830]^c[1831]^c[1886]^c[1856]^c[1980]^c[1981]^c[1952]^c[1978]^c[2092]^c[2093]^c[2051]^c[2104]; //row: 38 d[i2+38*Zc]=c[88]^c[944]^c[960]^c[1173]; //row: 39 d[i2+39*Zc]=c[161]^c[380]^c[729]^c[1832]; //row: 40 d[i2+40*Zc]=c[78]^c[804]^c[1655]; //row: 41 d[i2+41*Zc]=c[147]^c[313]^c[906]^c[1823]; //row: 42 d[i2+42*Zc]=c[45]^c[6]^c[38]^c[39]^c[13]^c[14]^c[16]^c[141]^c[179]^c[180]^c[112]^c[113]^c[268]^c[198]^c[257]^c[258]^c[299]^c[291]^c[313]^c[314]^c[410]^c[453]^c[454]^c[396]^c[397]^c[397]^c[495]^c[554]^c[569]^c[570]^c[626]^c[666]^c[667]^c[608]^c[609]^c[741]^c[676]^c[677]^c[754]^c[755]^c[837]^c[857]^c[858]^c[849]^c[850]^c[919]^c[876]^c[952]^c[953]^c[986]^c[1018]^c[1019]^c[1021]^c[1022]^c[1095]^c[1089]^c[1098]^c[1099]^c[1195]^c[1232]^c[1216]^c[1217]^c[1343]^c[1281]^c[1282]^c[1326]^c[1327]^c[1395]^c[1361]^c[1362]^c[1389]^c[1390]^c[1489]^c[1469]^c[1518]^c[1519]^c[1572]^c[1628]^c[1577]^c[1578]^c[1676]^c[1692]^c[1693]^c[1669]^c[1670]^c[1804]^c[1801]^c[1802]^c[1736]^c[1737]^c[1838]^c[1893]^c[1862]^c[1863]^c[1988]^c[1958]^c[1959]^c[1984]^c[1985]^c[2100]^c[2058]^c[2110]^c[2111]; //row: 43 d[i2+43*Zc]=c[91]^c[52]^c[85]^c[59]^c[60]^c[187]^c[130]^c[158]^c[159]^c[112]^c[218]^c[244]^c[208]^c[345]^c[337]^c[359]^c[360]^c[456]^c[404]^c[442]^c[443]^c[541]^c[504]^c[520]^c[576]^c[617]^c[654]^c[655]^c[691]^c[723]^c[704]^c[705]^c[787]^c[808]^c[799]^c[800]^c[869]^c[922]^c[903]^c[1032]^c[969]^c[971]^c[972]^c[1141]^c[1135]^c[1144]^c[1145]^c[1241]^c[1182]^c[1166]^c[1167]^c[1293]^c[1328]^c[1276]^c[1277]^c[1345]^c[1408]^c[1435]^c[1436]^c[1535]^c[1515]^c[1469]^c[1618]^c[1578]^c[1623]^c[1624]^c[1571]^c[1722]^c[1643]^c[1715]^c[1716]^c[1754]^c[1752]^c[1782]^c[1783]^c[1745]^c[1884]^c[1843]^c[1909]^c[1938]^c[2005]^c[1934]^c[1935]^c[2050]^c[2104]^c[2060]^c[2061]; //row: 44 d[i2+44*Zc]=c[4]^c[61]^c[94]^c[69]^c[79]^c[100]^c[139]^c[168]^c[227]^c[253]^c[217]^c[354]^c[346]^c[369]^c[465]^c[413]^c[452]^c[550]^c[513]^c[529]^c[585]^c[626]^c[664]^c[700]^c[732]^c[714]^c[749]^c[796]^c[817]^c[809]^c[878]^c[931]^c[912]^c[930]^c[1041]^c[978]^c[981]^c[1150]^c[1144]^c[1058]^c[1154]^c[1191]^c[1176]^c[1302]^c[1337]^c[1286]^c[1354]^c[1417]^c[1349]^c[1448]^c[1524]^c[1478]^c[1627]^c[1587]^c[1537]^c[1635]^c[1652]^c[1725]^c[1763]^c[1761]^c[1792]^c[1893]^c[1852]^c[1918]^c[1947]^c[2014]^c[1944]^c[2059]^c[2017]^c[2070]; //row: 45 d[i2+45*Zc]=c[134]^c[628]^c[974]; } break; case 104: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[102]^c[20]^c[26]^c[2]^c[206]^c[139]^c[108]^c[310]^c[217]^c[227]^c[414]^c[330]^c[343]^c[518]^c[490]^c[423]^c[622]^c[528]^c[522]^c[726]^c[667]^c[671]^c[830]^c[774]^c[747]^c[934]^c[868]^c[836]^c[1038]^c[936]^c[952]^c[1142]^c[1129]^c[1085]^c[1246]^c[1158]^c[1225]^c[1350]^c[1306]^c[1296]^c[1454]^c[1401]^c[1437]^c[1558]^c[1482]^c[1459]^c[1662]^c[1564]^c[1643]^c[1766]^c[1692]^c[1754]^c[1870]^c[1813]^c[1835]^c[1974]^c[1945]^c[1886]^c[2078]^c[2038]^c[2016]^c[2182]^c[2144]^c[2080]^c[2286]^c[2213]^c[2220]; //row: 1 d[i2+1*Zc]=c[103]^c[102]^c[20]^c[26]^c[2]^c[207]^c[206]^c[139]^c[108]^c[311]^c[310]^c[217]^c[227]^c[415]^c[414]^c[330]^c[343]^c[518]^c[490]^c[423]^c[623]^c[622]^c[528]^c[522]^c[727]^c[726]^c[667]^c[671]^c[830]^c[774]^c[747]^c[934]^c[868]^c[836]^c[1039]^c[1038]^c[936]^c[952]^c[1143]^c[1142]^c[1129]^c[1085]^c[1247]^c[1246]^c[1158]^c[1225]^c[1351]^c[1350]^c[1306]^c[1296]^c[1455]^c[1454]^c[1401]^c[1437]^c[1558]^c[1482]^c[1459]^c[1663]^c[1662]^c[1564]^c[1643]^c[1767]^c[1766]^c[1692]^c[1754]^c[1870]^c[1813]^c[1835]^c[1975]^c[1974]^c[1945]^c[1886]^c[2079]^c[2078]^c[2038]^c[2016]^c[2183]^c[2182]^c[2144]^c[2080]^c[2287]^c[2286]^c[2213]^c[2220]; //row: 2 d[i2+2*Zc]=c[102]^c[20]^c[27]^c[26]^c[3]^c[2]^c[206]^c[140]^c[139]^c[109]^c[108]^c[310]^c[217]^c[228]^c[227]^c[414]^c[330]^c[344]^c[343]^c[518]^c[491]^c[490]^c[424]^c[423]^c[622]^c[528]^c[523]^c[522]^c[726]^c[668]^c[667]^c[672]^c[671]^c[830]^c[775]^c[774]^c[748]^c[747]^c[934]^c[869]^c[868]^c[837]^c[836]^c[1038]^c[936]^c[953]^c[952]^c[1142]^c[1130]^c[1129]^c[1086]^c[1085]^c[1246]^c[1158]^c[1226]^c[1225]^c[1350]^c[1306]^c[1297]^c[1296]^c[1454]^c[1402]^c[1401]^c[1438]^c[1437]^c[1558]^c[1483]^c[1482]^c[1460]^c[1459]^c[1662]^c[1564]^c[1644]^c[1643]^c[1766]^c[1692]^c[1755]^c[1754]^c[1870]^c[1814]^c[1813]^c[1836]^c[1835]^c[1974]^c[1946]^c[1945]^c[1887]^c[1886]^c[2078]^c[2038]^c[2017]^c[2016]^c[2182]^c[2145]^c[2144]^c[2081]^c[2080]^c[2286]^c[2213]^c[2221]^c[2220]; //row: 3 d[i2+3*Zc]=c[102]^c[20]^c[26]^c[3]^c[2]^c[206]^c[139]^c[109]^c[108]^c[310]^c[217]^c[227]^c[414]^c[330]^c[344]^c[343]^c[518]^c[490]^c[424]^c[423]^c[622]^c[528]^c[522]^c[726]^c[667]^c[672]^c[671]^c[830]^c[774]^c[748]^c[747]^c[934]^c[868]^c[837]^c[836]^c[1038]^c[936]^c[952]^c[1142]^c[1129]^c[1086]^c[1085]^c[1246]^c[1158]^c[1226]^c[1225]^c[1350]^c[1306]^c[1297]^c[1296]^c[1454]^c[1401]^c[1438]^c[1437]^c[1558]^c[1482]^c[1460]^c[1459]^c[1662]^c[1564]^c[1643]^c[1766]^c[1692]^c[1755]^c[1754]^c[1870]^c[1813]^c[1836]^c[1835]^c[1974]^c[1945]^c[1887]^c[1886]^c[2078]^c[2038]^c[2016]^c[2182]^c[2144]^c[2081]^c[2080]^c[2286]^c[2213]^c[2221]^c[2220]; //row: 4 d[i2+4*Zc]=c[23]^c[203]; //row: 5 d[i2+5*Zc]=c[70]^c[92]^c[98]^c[74]^c[80]^c[174]^c[107]^c[180]^c[203]^c[278]^c[289]^c[299]^c[382]^c[402]^c[415]^c[335]^c[486]^c[458]^c[495]^c[590]^c[600]^c[594]^c[694]^c[635]^c[639]^c[798]^c[742]^c[819]^c[902]^c[836]^c[908]^c[1006]^c[1008]^c[1024]^c[1110]^c[1097]^c[1053]^c[1214]^c[1230]^c[1193]^c[1318]^c[1274]^c[1264]^c[1312]^c[1422]^c[1369]^c[1405]^c[1526]^c[1554]^c[1531]^c[1630]^c[1636]^c[1611]^c[1734]^c[1764]^c[1722]^c[1766]^c[1838]^c[1781]^c[1803]^c[1942]^c[1913]^c[1958]^c[2046]^c[2006]^c[1984]^c[2150]^c[2112]^c[2152]^c[2254]^c[2285]^c[2188]^c[2240]; //row: 6 d[i2+6*Zc]=c[5]^c[650]^c[1098]^c[1193]^c[1399]^c[1791]^c[1909]^c[2170]; //row: 7 d[i2+7*Zc]=c[40]^c[191]^c[423]^c[776]^c[886]^c[1531]; //row: 8 d[i2+8*Zc]=c[33]^c[10]^c[55]^c[32]^c[61]^c[39]^c[38]^c[37]^c[15]^c[14]^c[67]^c[137]^c[114]^c[174]^c[152]^c[151]^c[143]^c[121]^c[120]^c[105]^c[241]^c[218]^c[252]^c[229]^c[262]^c[240]^c[239]^c[345]^c[322]^c[365]^c[342]^c[378]^c[356]^c[355]^c[338]^c[449]^c[426]^c[421]^c[503]^c[502]^c[458]^c[436]^c[435]^c[553]^c[530]^c[563]^c[540]^c[557]^c[535]^c[534]^c[657]^c[634]^c[702]^c[680]^c[679]^c[706]^c[684]^c[683]^c[761]^c[738]^c[809]^c[787]^c[786]^c[782]^c[760]^c[759]^c[865]^c[842]^c[903]^c[881]^c[880]^c[871]^c[849]^c[848]^c[969]^c[946]^c[971]^c[948]^c[987]^c[965]^c[964]^c[1073]^c[1050]^c[1060]^c[1142]^c[1141]^c[1120]^c[1098]^c[1097]^c[1177]^c[1154]^c[1193]^c[1170]^c[1156]^c[1238]^c[1237]^c[1281]^c[1258]^c[1341]^c[1318]^c[1331]^c[1309]^c[1308]^c[1284]^c[1385]^c[1362]^c[1436]^c[1414]^c[1413]^c[1368]^c[1450]^c[1449]^c[1489]^c[1466]^c[1517]^c[1495]^c[1494]^c[1494]^c[1472]^c[1471]^c[1593]^c[1570]^c[1599]^c[1576]^c[1574]^c[1656]^c[1655]^c[1697]^c[1674]^c[1727]^c[1704]^c[1685]^c[1767]^c[1766]^c[1759]^c[1801]^c[1778]^c[1848]^c[1826]^c[1825]^c[1870]^c[1848]^c[1847]^c[1905]^c[1882]^c[1876]^c[1958]^c[1957]^c[1921]^c[1899]^c[1898]^c[2009]^c[1986]^c[2073]^c[2050]^c[2051]^c[2029]^c[2028]^c[2074]^c[2113]^c[2090]^c[2179]^c[2157]^c[2156]^c[2115]^c[2093]^c[2092]^c[2217]^c[2194]^c[2248]^c[2225]^c[2255]^c[2233]^c[2232]^c[2284]; //row: 9 d[i2+9*Zc]=c[5]^c[113]^c[1080]^c[1196]^c[1448]^c[1771]^c[1931]^c[2148]; //row: 10 d[i2+10*Zc]=c[125]^c[284]^c[467]^c[743]^c[843]^c[1525]; //row: 11 d[i2+11*Zc]=c[3]^c[19]^c[18]^c[25]^c[40]^c[31]^c[46]^c[7]^c[22]^c[79]^c[107]^c[123]^c[122]^c[144]^c[159]^c[113]^c[128]^c[193]^c[211]^c[227]^c[226]^c[222]^c[237]^c[232]^c[247]^c[315]^c[331]^c[330]^c[335]^c[350]^c[348]^c[363]^c[419]^c[434]^c[495]^c[510]^c[428]^c[443]^c[523]^c[539]^c[538]^c[533]^c[548]^c[527]^c[542]^c[627]^c[643]^c[642]^c[672]^c[687]^c[676]^c[691]^c[731]^c[746]^c[779]^c[794]^c[752]^c[767]^c[835]^c[850]^c[873]^c[888]^c[841]^c[856]^c[939]^c[955]^c[954]^c[941]^c[956]^c[957]^c[972]^c[1043]^c[1059]^c[1058]^c[1134]^c[1045]^c[1090]^c[1105]^c[1147]^c[1163]^c[1162]^c[1163]^c[1178]^c[1230]^c[1245]^c[1251]^c[1267]^c[1266]^c[1311]^c[1326]^c[1301]^c[1316]^c[1266]^c[1355]^c[1371]^c[1370]^c[1406]^c[1421]^c[1442]^c[1353]^c[1459]^c[1474]^c[1487]^c[1502]^c[1464]^c[1479]^c[1563]^c[1579]^c[1578]^c[1569]^c[1584]^c[1648]^c[1663]^c[1667]^c[1683]^c[1682]^c[1697]^c[1712]^c[1759]^c[1670]^c[1679]^c[1771]^c[1786]^c[1818]^c[1833]^c[1840]^c[1855]^c[1875]^c[1891]^c[1890]^c[1950]^c[1965]^c[1891]^c[1906]^c[1979]^c[1995]^c[1994]^c[2043]^c[2058]^c[2021]^c[2036]^c[2083]^c[2099]^c[2098]^c[2149]^c[2164]^c[2085]^c[2100]^c[2187]^c[2203]^c[2202]^c[2218]^c[2233]^c[2225]^c[2240]^c[2287]; //row: 12 d[i2+12*Zc]=c[5]^c[123]^c[1138]^c[1192]^c[1455]^c[1974]; //row: 13 d[i2+13*Zc]=c[45]^c[44]^c[66]^c[72]^c[48]^c[51]^c[149]^c[148]^c[185]^c[154]^c[253]^c[252]^c[263]^c[273]^c[357]^c[356]^c[376]^c[389]^c[354]^c[460]^c[432]^c[469]^c[565]^c[564]^c[574]^c[568]^c[669]^c[668]^c[713]^c[717]^c[772]^c[820]^c[793]^c[728]^c[876]^c[914]^c[882]^c[981]^c[980]^c[982]^c[998]^c[1085]^c[1084]^c[1071]^c[1131]^c[1189]^c[1188]^c[1204]^c[1167]^c[1293]^c[1292]^c[1248]^c[1342]^c[1397]^c[1396]^c[1447]^c[1379]^c[1500]^c[1528]^c[1505]^c[1605]^c[1604]^c[1610]^c[1585]^c[1709]^c[1708]^c[1738]^c[1696]^c[1812]^c[1859]^c[1777]^c[1917]^c[1916]^c[1887]^c[1932]^c[2021]^c[2020]^c[1980]^c[2062]^c[2125]^c[2124]^c[2086]^c[2126]^c[2095]^c[2229]^c[2228]^c[2259]^c[2266]; //row: 14 d[i2+14*Zc]=c[0]^c[1345]^c[1573]^c[1689]^c[1768]^c[2185]; //row: 15 d[i2+15*Zc]=c[44]^c[66]^c[72]^c[49]^c[48]^c[68]^c[148]^c[185]^c[155]^c[154]^c[109]^c[252]^c[263]^c[273]^c[356]^c[376]^c[390]^c[389]^c[460]^c[432]^c[470]^c[469]^c[564]^c[574]^c[568]^c[668]^c[713]^c[718]^c[717]^c[772]^c[820]^c[794]^c[793]^c[876]^c[914]^c[883]^c[882]^c[980]^c[982]^c[998]^c[1084]^c[1071]^c[1132]^c[1131]^c[1120]^c[1188]^c[1204]^c[1168]^c[1167]^c[1292]^c[1248]^c[1343]^c[1342]^c[1396]^c[1447]^c[1380]^c[1379]^c[1429]^c[1500]^c[1528]^c[1506]^c[1505]^c[1604]^c[1610]^c[1585]^c[1708]^c[1738]^c[1697]^c[1696]^c[1812]^c[1859]^c[1778]^c[1777]^c[1916]^c[1887]^c[1933]^c[1932]^c[1924]^c[2020]^c[1980]^c[2062]^c[2124]^c[2086]^c[2127]^c[2126]^c[2228]^c[2259]^c[2267]^c[2266]; //row: 16 d[i2+16*Zc]=c[76]^c[98]^c[0]^c[80]^c[180]^c[113]^c[186]^c[191]^c[284]^c[295]^c[305]^c[388]^c[408]^c[317]^c[405]^c[492]^c[464]^c[501]^c[596]^c[606]^c[600]^c[700]^c[641]^c[645]^c[804]^c[748]^c[825]^c[908]^c[842]^c[914]^c[1012]^c[1014]^c[1030]^c[1116]^c[1103]^c[1059]^c[1220]^c[1236]^c[1199]^c[1199]^c[1324]^c[1280]^c[1270]^c[1428]^c[1375]^c[1411]^c[1532]^c[1456]^c[1537]^c[1636]^c[1642]^c[1617]^c[1740]^c[1666]^c[1728]^c[1844]^c[1787]^c[1809]^c[1948]^c[1919]^c[1964]^c[2052]^c[2012]^c[1990]^c[2156]^c[2118]^c[2158]^c[2097]^c[2260]^c[2187]^c[2194]; //row: 17 d[i2+17*Zc]=c[90]^c[1535]^c[1693]^c[1770]^c[2234]; //row: 18 d[i2+18*Zc]=c[104]^c[1288]^c[1414]^c[1939]^c[2019]; //row: 19 d[i2+19*Zc]=c[11]^c[109]^c[789]^c[911]^c[1126]; //row: 20 d[i2+20*Zc]=c[28]^c[50]^c[56]^c[32]^c[5]^c[132]^c[169]^c[138]^c[236]^c[247]^c[257]^c[340]^c[360]^c[373]^c[323]^c[444]^c[416]^c[453]^c[548]^c[558]^c[552]^c[652]^c[697]^c[701]^c[756]^c[804]^c[777]^c[860]^c[898]^c[866]^c[964]^c[966]^c[982]^c[950]^c[1068]^c[1055]^c[1115]^c[1172]^c[1188]^c[1151]^c[1148]^c[1276]^c[1336]^c[1326]^c[1380]^c[1431]^c[1363]^c[1484]^c[1512]^c[1489]^c[1588]^c[1594]^c[1569]^c[1692]^c[1722]^c[1680]^c[1796]^c[1843]^c[1865]^c[1900]^c[1975]^c[1916]^c[2004]^c[2068]^c[2046]^c[2108]^c[2174]^c[2110]^c[2212]^c[2243]^c[2250]; //row: 21 d[i2+21*Zc]=c[109]^c[605]^c[1759]^c[2121]^c[2278]; //row: 22 d[i2+22*Zc]=c[43]^c[1305]^c[1377]^c[1794]; //row: 23 d[i2+23*Zc]=c[148]^c[225]^c[1067]^c[1971]; //row: 24 d[i2+24*Zc]=c[4]^c[26]^c[32]^c[8]^c[8]^c[108]^c[145]^c[114]^c[212]^c[223]^c[233]^c[316]^c[336]^c[349]^c[332]^c[420]^c[496]^c[429]^c[502]^c[524]^c[534]^c[528]^c[628]^c[673]^c[677]^c[732]^c[780]^c[753]^c[836]^c[874]^c[842]^c[940]^c[942]^c[958]^c[1044]^c[1135]^c[1091]^c[1148]^c[1164]^c[1231]^c[1171]^c[1252]^c[1312]^c[1302]^c[1356]^c[1407]^c[1443]^c[1460]^c[1488]^c[1465]^c[1564]^c[1570]^c[1649]^c[1668]^c[1698]^c[1760]^c[1772]^c[1819]^c[1841]^c[1876]^c[1951]^c[1892]^c[1980]^c[2044]^c[2022]^c[2084]^c[2150]^c[2086]^c[2188]^c[2219]^c[2226]; //row: 25 d[i2+25*Zc]=c[107]^c[697]^c[743]^c[1483]; //row: 26 d[i2+26*Zc]=c[20]^c[245]^c[503]^c[1652]; //row: 27 d[i2+27*Zc]=c[201]^c[659]^c[853]; //row: 28 d[i2+28*Zc]=c[3]^c[416]^c[2015]^c[2276]; //row: 29 d[i2+29*Zc]=c[4]^c[26]^c[32]^c[9]^c[8]^c[108]^c[145]^c[115]^c[114]^c[195]^c[212]^c[223]^c[233]^c[316]^c[336]^c[350]^c[349]^c[420]^c[496]^c[430]^c[429]^c[524]^c[534]^c[528]^c[628]^c[673]^c[678]^c[677]^c[732]^c[780]^c[754]^c[753]^c[836]^c[874]^c[843]^c[842]^c[940]^c[942]^c[958]^c[1044]^c[1135]^c[1092]^c[1091]^c[1148]^c[1164]^c[1232]^c[1231]^c[1252]^c[1312]^c[1303]^c[1302]^c[1356]^c[1407]^c[1444]^c[1443]^c[1460]^c[1488]^c[1466]^c[1465]^c[1487]^c[1564]^c[1570]^c[1649]^c[1668]^c[1698]^c[1761]^c[1760]^c[1772]^c[1819]^c[1842]^c[1841]^c[1876]^c[1951]^c[1893]^c[1892]^c[1873]^c[1980]^c[2044]^c[2022]^c[2084]^c[2150]^c[2087]^c[2086]^c[2188]^c[2219]^c[2227]^c[2226]; //row: 30 d[i2+30*Zc]=c[18]^c[40]^c[47]^c[46]^c[23]^c[22]^c[1]^c[122]^c[160]^c[159]^c[129]^c[128]^c[226]^c[237]^c[248]^c[247]^c[330]^c[350]^c[364]^c[363]^c[434]^c[511]^c[510]^c[444]^c[443]^c[538]^c[548]^c[543]^c[542]^c[642]^c[688]^c[687]^c[692]^c[691]^c[746]^c[795]^c[794]^c[768]^c[767]^c[850]^c[889]^c[888]^c[857]^c[856]^c[954]^c[956]^c[973]^c[972]^c[1058]^c[1046]^c[1045]^c[1106]^c[1105]^c[1127]^c[1162]^c[1178]^c[1246]^c[1245]^c[1266]^c[1326]^c[1317]^c[1316]^c[1370]^c[1422]^c[1421]^c[1354]^c[1353]^c[1359]^c[1474]^c[1503]^c[1502]^c[1480]^c[1479]^c[1578]^c[1584]^c[1560]^c[1663]^c[1682]^c[1712]^c[1671]^c[1670]^c[1786]^c[1834]^c[1833]^c[1856]^c[1855]^c[1890]^c[1966]^c[1965]^c[1907]^c[1906]^c[1994]^c[2058]^c[2037]^c[2036]^c[2098]^c[2165]^c[2164]^c[2101]^c[2100]^c[2202]^c[2233]^c[2241]^c[2240]; //row: 31 d[i2+31*Zc]=c[19]^c[88]^c[41]^c[6]^c[47]^c[12]^c[23]^c[93]^c[92]^c[123]^c[192]^c[160]^c[125]^c[129]^c[199]^c[198]^c[107]^c[227]^c[296]^c[238]^c[307]^c[248]^c[213]^c[331]^c[400]^c[351]^c[316]^c[364]^c[330]^c[329]^c[435]^c[504]^c[511]^c[476]^c[444]^c[514]^c[513]^c[539]^c[608]^c[549]^c[618]^c[543]^c[612]^c[643]^c[712]^c[688]^c[653]^c[692]^c[658]^c[657]^c[747]^c[816]^c[795]^c[760]^c[768]^c[734]^c[733]^c[776]^c[851]^c[920]^c[889]^c[854]^c[857]^c[927]^c[926]^c[955]^c[1024]^c[957]^c[1026]^c[973]^c[938]^c[1059]^c[1128]^c[1046]^c[1115]^c[1106]^c[1072]^c[1071]^c[1163]^c[1232]^c[1179]^c[1144]^c[1246]^c[1212]^c[1211]^c[1267]^c[1336]^c[1327]^c[1292]^c[1317]^c[1283]^c[1282]^c[1371]^c[1440]^c[1422]^c[1387]^c[1354]^c[1424]^c[1423]^c[1475]^c[1544]^c[1503]^c[1468]^c[1480]^c[1550]^c[1549]^c[1579]^c[1648]^c[1585]^c[1654]^c[1560]^c[1629]^c[1683]^c[1752]^c[1713]^c[1678]^c[1671]^c[1741]^c[1740]^c[1787]^c[1856]^c[1834]^c[1799]^c[1856]^c[1822]^c[1821]^c[1891]^c[1960]^c[1966]^c[1931]^c[1907]^c[1873]^c[1872]^c[1995]^c[2064]^c[2059]^c[2024]^c[2037]^c[2002]^c[2099]^c[2168]^c[2165]^c[2130]^c[2101]^c[2171]^c[2170]^c[2203]^c[2272]^c[2234]^c[2199]^c[2241]^c[2207]^c[2206]; //row: 32 d[i2+32*Zc]=c[18]^c[40]^c[47]^c[46]^c[23]^c[22]^c[5]^c[122]^c[160]^c[159]^c[129]^c[128]^c[226]^c[237]^c[248]^c[247]^c[330]^c[350]^c[364]^c[363]^c[434]^c[511]^c[510]^c[444]^c[443]^c[538]^c[548]^c[543]^c[542]^c[642]^c[688]^c[687]^c[692]^c[691]^c[746]^c[795]^c[794]^c[768]^c[767]^c[850]^c[889]^c[888]^c[857]^c[856]^c[954]^c[956]^c[973]^c[972]^c[1058]^c[1046]^c[1045]^c[1106]^c[1105]^c[1162]^c[1178]^c[1246]^c[1245]^c[1266]^c[1326]^c[1317]^c[1316]^c[1269]^c[1370]^c[1422]^c[1421]^c[1354]^c[1353]^c[1474]^c[1503]^c[1502]^c[1480]^c[1479]^c[1518]^c[1578]^c[1584]^c[1560]^c[1663]^c[1682]^c[1712]^c[1671]^c[1670]^c[1786]^c[1834]^c[1833]^c[1856]^c[1855]^c[1890]^c[1966]^c[1965]^c[1907]^c[1906]^c[1994]^c[2058]^c[2037]^c[2036]^c[2098]^c[2165]^c[2164]^c[2101]^c[2100]^c[2202]^c[2233]^c[2241]^c[2240]; //row: 33 d[i2+33*Zc]=c[113]^c[237]^c[1149]^c[2275]; //row: 34 d[i2+34*Zc]=c[3]^c[776]^c[1652]^c[1818]; //row: 35 d[i2+35*Zc]=c[79]^c[101]^c[3]^c[83]^c[183]^c[116]^c[189]^c[107]^c[287]^c[298]^c[308]^c[391]^c[411]^c[320]^c[495]^c[467]^c[504]^c[599]^c[609]^c[603]^c[703]^c[644]^c[648]^c[668]^c[807]^c[751]^c[828]^c[911]^c[845]^c[917]^c[1015]^c[1017]^c[1033]^c[1119]^c[1106]^c[1062]^c[1223]^c[1239]^c[1202]^c[1327]^c[1283]^c[1273]^c[1311]^c[1431]^c[1378]^c[1414]^c[1535]^c[1459]^c[1540]^c[1639]^c[1645]^c[1620]^c[1743]^c[1669]^c[1731]^c[1847]^c[1790]^c[1812]^c[1951]^c[1922]^c[1967]^c[2055]^c[2015]^c[1993]^c[2159]^c[2121]^c[2161]^c[2263]^c[2190]^c[2197]; //row: 36 d[i2+36*Zc]=c[5]^c[1551]^c[1632]^c[1914]; //row: 37 d[i2+37*Zc]=c[30]^c[29]^c[51]^c[57]^c[33]^c[134]^c[133]^c[170]^c[139]^c[185]^c[238]^c[237]^c[248]^c[258]^c[342]^c[341]^c[361]^c[374]^c[445]^c[417]^c[454]^c[550]^c[549]^c[559]^c[553]^c[654]^c[653]^c[698]^c[702]^c[757]^c[805]^c[778]^c[861]^c[899]^c[867]^c[966]^c[965]^c[967]^c[983]^c[1070]^c[1069]^c[1056]^c[1116]^c[1174]^c[1173]^c[1189]^c[1152]^c[1278]^c[1277]^c[1337]^c[1327]^c[1382]^c[1381]^c[1432]^c[1364]^c[1353]^c[1485]^c[1513]^c[1490]^c[1590]^c[1589]^c[1595]^c[1570]^c[1694]^c[1693]^c[1723]^c[1681]^c[1797]^c[1844]^c[1866]^c[1902]^c[1901]^c[1872]^c[1917]^c[2006]^c[2005]^c[2069]^c[2047]^c[2110]^c[2109]^c[2175]^c[2111]^c[2214]^c[2213]^c[2244]^c[2251]; //row: 38 d[i2+38*Zc]=c[90]^c[999]^c[1133]^c[1347]; //row: 39 d[i2+39*Zc]=c[107]^c[339]^c[732]^c[2059]; //row: 40 d[i2+40*Zc]=c[9]^c[915]^c[1779]; //row: 41 d[i2+41*Zc]=c[105]^c[386]^c[973]^c[1895]; //row: 42 d[i2+42*Zc]=c[56]^c[78]^c[85]^c[84]^c[61]^c[60]^c[58]^c[160]^c[198]^c[197]^c[167]^c[166]^c[264]^c[275]^c[286]^c[285]^c[368]^c[388]^c[402]^c[401]^c[472]^c[445]^c[444]^c[482]^c[481]^c[425]^c[576]^c[586]^c[581]^c[580]^c[680]^c[726]^c[725]^c[626]^c[625]^c[784]^c[729]^c[728]^c[806]^c[805]^c[888]^c[927]^c[926]^c[895]^c[894]^c[992]^c[994]^c[1011]^c[1010]^c[1096]^c[1084]^c[1083]^c[1040]^c[1143]^c[1200]^c[1216]^c[1180]^c[1179]^c[1304]^c[1260]^c[1251]^c[1250]^c[1408]^c[1356]^c[1355]^c[1392]^c[1391]^c[1512]^c[1541]^c[1540]^c[1518]^c[1517]^c[1616]^c[1622]^c[1598]^c[1597]^c[1720]^c[1750]^c[1709]^c[1708]^c[1824]^c[1768]^c[1871]^c[1790]^c[1789]^c[1928]^c[1900]^c[1899]^c[1945]^c[1944]^c[2032]^c[1992]^c[2075]^c[2074]^c[2136]^c[2099]^c[2098]^c[2139]^c[2138]^c[2240]^c[2271]^c[2279]^c[2278]; //row: 43 d[i2+43*Zc]=c[96]^c[14]^c[20]^c[101]^c[100]^c[200]^c[133]^c[207]^c[206]^c[104]^c[304]^c[211]^c[221]^c[408]^c[324]^c[338]^c[337]^c[512]^c[484]^c[418]^c[417]^c[616]^c[522]^c[620]^c[720]^c[661]^c[666]^c[665]^c[824]^c[768]^c[742]^c[741]^c[928]^c[862]^c[935]^c[934]^c[1032]^c[1034]^c[946]^c[1136]^c[1123]^c[1080]^c[1079]^c[1240]^c[1152]^c[1220]^c[1219]^c[1344]^c[1300]^c[1291]^c[1290]^c[1448]^c[1395]^c[1432]^c[1431]^c[1552]^c[1476]^c[1558]^c[1557]^c[1656]^c[1662]^c[1637]^c[1760]^c[1686]^c[1749]^c[1748]^c[1722]^c[1864]^c[1807]^c[1830]^c[1829]^c[1968]^c[1939]^c[1881]^c[1880]^c[1970]^c[2072]^c[2032]^c[2010]^c[2176]^c[2138]^c[2179]^c[2178]^c[2280]^c[2207]^c[2215]^c[2214]; //row: 44 d[i2+44*Zc]=c[1]^c[23]^c[29]^c[5]^c[3]^c[105]^c[142]^c[111]^c[209]^c[220]^c[230]^c[313]^c[333]^c[346]^c[417]^c[493]^c[426]^c[521]^c[531]^c[525]^c[625]^c[670]^c[674]^c[729]^c[777]^c[750]^c[733]^c[833]^c[871]^c[839]^c[937]^c[939]^c[955]^c[973]^c[1041]^c[1132]^c[1088]^c[1145]^c[1161]^c[1228]^c[1249]^c[1309]^c[1299]^c[1353]^c[1404]^c[1440]^c[1457]^c[1485]^c[1462]^c[1561]^c[1567]^c[1646]^c[1665]^c[1695]^c[1757]^c[1769]^c[1816]^c[1838]^c[1873]^c[1948]^c[1889]^c[1977]^c[2041]^c[2019]^c[2081]^c[2147]^c[2083]^c[2185]^c[2216]^c[2223]; //row: 45 d[i2+45*Zc]=c[180]^c[668]^c[1088]; } break; case 112: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[110]^c[28]^c[94]^c[88]^c[127]^c[202]^c[129]^c[317]^c[268]^c[254]^c[426]^c[374]^c[388]^c[493]^c[511]^c[452]^c[633]^c[566]^c[627]^c[681]^c[745]^c[716]^c[828]^c[878]^c[813]^c[916]^c[936]^c[911]^c[1119]^c[1094]^c[1072]^c[1212]^c[1189]^c[1153]^c[1335]^c[1325]^c[1274]^c[1364]^c[1436]^c[1444]^c[1558]^c[1532]^c[1490]^c[1646]^c[1669]^c[1636]^c[1693]^c[1688]^c[1756]^c[1861]^c[1797]^c[1887]^c[1985]^c[1989]^c[1977]^c[2044]^c[2020]^c[2114]^c[2213]^c[2158]^c[2238]^c[2343]^c[2329]^c[2269]^c[2432]^c[2426]^c[2397]; //row: 1 d[i2+1*Zc]=c[110]^c[111]^c[29]^c[95]^c[89]^c[127]^c[128]^c[203]^c[130]^c[317]^c[318]^c[269]^c[255]^c[426]^c[427]^c[375]^c[389]^c[494]^c[512]^c[453]^c[633]^c[634]^c[567]^c[628]^c[681]^c[682]^c[746]^c[717]^c[829]^c[879]^c[814]^c[917]^c[937]^c[912]^c[1119]^c[1008]^c[1095]^c[1073]^c[1212]^c[1213]^c[1190]^c[1154]^c[1335]^c[1336]^c[1326]^c[1275]^c[1364]^c[1365]^c[1437]^c[1445]^c[1558]^c[1559]^c[1533]^c[1491]^c[1647]^c[1670]^c[1637]^c[1693]^c[1694]^c[1689]^c[1757]^c[1861]^c[1862]^c[1798]^c[1888]^c[1986]^c[1990]^c[1978]^c[2044]^c[2045]^c[2021]^c[2115]^c[2213]^c[2214]^c[2159]^c[2239]^c[2343]^c[2344]^c[2330]^c[2270]^c[2432]^c[2433]^c[2427]^c[2398]; //row: 2 d[i2+2*Zc]=c[111]^c[29]^c[94]^c[95]^c[88]^c[89]^c[128]^c[202]^c[203]^c[129]^c[130]^c[318]^c[269]^c[254]^c[255]^c[427]^c[375]^c[388]^c[389]^c[494]^c[511]^c[512]^c[452]^c[453]^c[634]^c[567]^c[627]^c[628]^c[682]^c[745]^c[746]^c[716]^c[717]^c[829]^c[878]^c[879]^c[813]^c[814]^c[917]^c[936]^c[937]^c[911]^c[912]^c[1008]^c[1095]^c[1072]^c[1073]^c[1213]^c[1189]^c[1190]^c[1153]^c[1154]^c[1336]^c[1326]^c[1274]^c[1275]^c[1365]^c[1437]^c[1444]^c[1445]^c[1559]^c[1532]^c[1533]^c[1490]^c[1491]^c[1647]^c[1669]^c[1670]^c[1636]^c[1637]^c[1694]^c[1689]^c[1756]^c[1757]^c[1862]^c[1798]^c[1887]^c[1888]^c[1986]^c[1989]^c[1990]^c[1977]^c[1978]^c[2045]^c[2020]^c[2021]^c[2114]^c[2115]^c[2214]^c[2159]^c[2238]^c[2239]^c[2344]^c[2329]^c[2330]^c[2269]^c[2270]^c[2433]^c[2427]^c[2397]^c[2398]; //row: 3 d[i2+3*Zc]=c[111]^c[29]^c[95]^c[88]^c[89]^c[128]^c[203]^c[129]^c[130]^c[318]^c[269]^c[255]^c[427]^c[375]^c[388]^c[389]^c[494]^c[512]^c[452]^c[453]^c[634]^c[567]^c[628]^c[682]^c[746]^c[716]^c[717]^c[829]^c[879]^c[813]^c[814]^c[917]^c[937]^c[911]^c[912]^c[1008]^c[1095]^c[1073]^c[1213]^c[1190]^c[1153]^c[1154]^c[1336]^c[1326]^c[1274]^c[1275]^c[1365]^c[1437]^c[1444]^c[1445]^c[1559]^c[1533]^c[1490]^c[1491]^c[1647]^c[1670]^c[1636]^c[1637]^c[1694]^c[1689]^c[1757]^c[1862]^c[1798]^c[1887]^c[1888]^c[1986]^c[1990]^c[1977]^c[1978]^c[2045]^c[2021]^c[2114]^c[2115]^c[2214]^c[2159]^c[2239]^c[2344]^c[2330]^c[2269]^c[2270]^c[2433]^c[2427]^c[2397]^c[2398]; //row: 4 d[i2+4*Zc]=c[57]^c[121]; //row: 5 d[i2+5*Zc]=c[39]^c[69]^c[23]^c[17]^c[51]^c[168]^c[131]^c[170]^c[170]^c[246]^c[309]^c[295]^c[355]^c[415]^c[429]^c[421]^c[534]^c[552]^c[493]^c[562]^c[607]^c[668]^c[722]^c[674]^c[757]^c[869]^c[807]^c[854]^c[957]^c[977]^c[952]^c[1048]^c[1023]^c[1113]^c[1141]^c[1230]^c[1194]^c[1264]^c[1254]^c[1315]^c[1405]^c[1365]^c[1373]^c[1423]^c[1487]^c[1461]^c[1531]^c[1575]^c[1598]^c[1677]^c[1734]^c[1729]^c[1685]^c[1902]^c[1838]^c[1816]^c[1861]^c[1914]^c[1918]^c[1906]^c[2085]^c[2061]^c[2043]^c[2142]^c[2199]^c[2167]^c[2272]^c[2258]^c[2310]^c[2361]^c[2355]^c[2438]^c[2369]; //row: 6 d[i2+6*Zc]=c[45]^c[678]^c[1120]^c[1252]^c[1518]^c[1954]^c[2039]^c[2243]; //row: 7 d[i2+7*Zc]=c[16]^c[187]^c[551]^c[883]^c[933]^c[1613]; //row: 8 d[i2+8*Zc]=c[42]^c[88]^c[72]^c[6]^c[26]^c[71]^c[72]^c[20]^c[65]^c[66]^c[32]^c[171]^c[217]^c[134]^c[179]^c[180]^c[173]^c[218]^c[219]^c[206]^c[249]^c[295]^c[312]^c[246]^c[298]^c[231]^c[232]^c[358]^c[404]^c[418]^c[352]^c[432]^c[365]^c[366]^c[339]^c[537]^c[471]^c[555]^c[488]^c[489]^c[496]^c[541]^c[542]^c[565]^c[611]^c[610]^c[656]^c[671]^c[604]^c[605]^c[725]^c[771]^c[677]^c[722]^c[723]^c[760]^c[693]^c[694]^c[872]^c[806]^c[810]^c[855]^c[856]^c[857]^c[790]^c[791]^c[960]^c[1006]^c[980]^c[913]^c[914]^c[955]^c[1000]^c[1001]^c[1051]^c[1097]^c[1026]^c[1072]^c[1116]^c[1049]^c[1050]^c[1144]^c[1190]^c[1121]^c[1166]^c[1167]^c[1197]^c[1130]^c[1131]^c[1267]^c[1313]^c[1257]^c[1303]^c[1318]^c[1251]^c[1252]^c[1408]^c[1454]^c[1368]^c[1414]^c[1376]^c[1421]^c[1422]^c[1448]^c[1490]^c[1536]^c[1464]^c[1509]^c[1510]^c[1534]^c[1467]^c[1468]^c[1578]^c[1624]^c[1601]^c[1646]^c[1647]^c[1568]^c[1613]^c[1614]^c[1737]^c[1783]^c[1732]^c[1778]^c[1688]^c[1733]^c[1734]^c[1793]^c[1839]^c[1841]^c[1887]^c[1819]^c[1864]^c[1865]^c[1883]^c[1917]^c[1963]^c[1921]^c[1966]^c[1967]^c[1909]^c[1954]^c[1955]^c[2088]^c[2022]^c[2064]^c[2109]^c[2110]^c[2046]^c[2091]^c[2092]^c[2145]^c[2191]^c[2202]^c[2136]^c[2170]^c[2215]^c[2216]^c[2166]^c[2275]^c[2321]^c[2261]^c[2306]^c[2307]^c[2313]^c[2246]^c[2247]^c[2364]^c[2410]^c[2358]^c[2404]^c[2441]^c[2374]^c[2375]^c[2409]; //row: 9 d[i2+9*Zc]=c[8]^c[148]^c[1220]^c[1336]^c[1544]^c[1976]^c[2124]^c[2345]; //row: 10 d[i2+10*Zc]=c[193]^c[276]^c[509]^c[802]^c[977]^c[1670]; //row: 11 d[i2+11*Zc]=c[82]^c[87]^c[88]^c[0]^c[6]^c[66]^c[72]^c[60]^c[66]^c[51]^c[211]^c[216]^c[217]^c[174]^c[180]^c[213]^c[219]^c[122]^c[289]^c[294]^c[295]^c[240]^c[246]^c[226]^c[232]^c[398]^c[403]^c[404]^c[346]^c[352]^c[360]^c[366]^c[465]^c[471]^c[483]^c[489]^c[536]^c[542]^c[605]^c[610]^c[611]^c[650]^c[656]^c[599]^c[605]^c[765]^c[770]^c[771]^c[717]^c[723]^c[688]^c[694]^c[800]^c[806]^c[850]^c[856]^c[785]^c[791]^c[1000]^c[1006]^c[908]^c[914]^c[995]^c[1001]^c[1091]^c[1096]^c[1097]^c[1066]^c[1072]^c[1044]^c[1050]^c[1184]^c[1189]^c[1190]^c[1161]^c[1167]^c[1125]^c[1131]^c[1307]^c[1312]^c[1313]^c[1297]^c[1303]^c[1246]^c[1252]^c[1448]^c[1453]^c[1454]^c[1408]^c[1414]^c[1416]^c[1422]^c[1345]^c[1530]^c[1535]^c[1536]^c[1504]^c[1510]^c[1462]^c[1468]^c[1618]^c[1624]^c[1641]^c[1647]^c[1608]^c[1614]^c[1777]^c[1782]^c[1783]^c[1772]^c[1778]^c[1728]^c[1734]^c[1833]^c[1838]^c[1839]^c[1881]^c[1887]^c[1859]^c[1865]^c[1826]^c[1957]^c[1963]^c[1961]^c[1967]^c[1949]^c[1955]^c[2016]^c[2021]^c[2022]^c[2104]^c[2110]^c[2086]^c[2092]^c[2185]^c[2190]^c[2191]^c[2130]^c[2136]^c[2210]^c[2216]^c[2315]^c[2320]^c[2321]^c[2301]^c[2307]^c[2241]^c[2247]^c[2404]^c[2409]^c[2410]^c[2398]^c[2404]^c[2369]^c[2375]^c[2383]; //row: 12 d[i2+12*Zc]=c[29]^c[174]^c[1143]^c[1234]^c[1483]^c[2085]; //row: 13 d[i2+13*Zc]=c[76]^c[77]^c[107]^c[61]^c[55]^c[80]^c[205]^c[206]^c[169]^c[208]^c[283]^c[284]^c[235]^c[333]^c[392]^c[393]^c[341]^c[355]^c[391]^c[460]^c[478]^c[531]^c[599]^c[600]^c[645]^c[594]^c[759]^c[760]^c[712]^c[683]^c[795]^c[845]^c[892]^c[855]^c[995]^c[903]^c[990]^c[1085]^c[1086]^c[1061]^c[1039]^c[1178]^c[1179]^c[1156]^c[1120]^c[1301]^c[1302]^c[1292]^c[1241]^c[1442]^c[1443]^c[1403]^c[1411]^c[1524]^c[1525]^c[1499]^c[1457]^c[1613]^c[1636]^c[1603]^c[1771]^c[1772]^c[1767]^c[1723]^c[1827]^c[1828]^c[1876]^c[1854]^c[1952]^c[1956]^c[1944]^c[2122]^c[2123]^c[2099]^c[2081]^c[2179]^c[2180]^c[2237]^c[2205]^c[2309]^c[2310]^c[2296]^c[2348]^c[2344]^c[2398]^c[2399]^c[2393]^c[2364]; //row: 14 d[i2+14*Zc]=c[13]^c[1406]^c[1778]^c[1870]^c[1954]^c[2394]; //row: 15 d[i2+15*Zc]=c[80]^c[110]^c[64]^c[57]^c[58]^c[89]^c[209]^c[172]^c[210]^c[211]^c[119]^c[287]^c[238]^c[224]^c[396]^c[344]^c[357]^c[358]^c[463]^c[481]^c[533]^c[534]^c[603]^c[648]^c[597]^c[763]^c[715]^c[685]^c[686]^c[798]^c[848]^c[894]^c[895]^c[998]^c[906]^c[992]^c[993]^c[1089]^c[1064]^c[1042]^c[1182]^c[1159]^c[1122]^c[1123]^c[1138]^c[1305]^c[1295]^c[1243]^c[1244]^c[1446]^c[1406]^c[1413]^c[1414]^c[1528]^c[1502]^c[1459]^c[1460]^c[1552]^c[1616]^c[1639]^c[1605]^c[1606]^c[1775]^c[1770]^c[1726]^c[1831]^c[1879]^c[1856]^c[1857]^c[1955]^c[1959]^c[1946]^c[1947]^c[2126]^c[2102]^c[2083]^c[2084]^c[2112]^c[2183]^c[2128]^c[2208]^c[2313]^c[2299]^c[2350]^c[2351]^c[2402]^c[2396]^c[2366]^c[2367]; //row: 16 d[i2+16*Zc]=c[99]^c[17]^c[83]^c[77]^c[116]^c[191]^c[118]^c[153]^c[306]^c[257]^c[243]^c[415]^c[363]^c[377]^c[387]^c[482]^c[500]^c[553]^c[622]^c[667]^c[616]^c[782]^c[734]^c[705]^c[817]^c[867]^c[802]^c[905]^c[925]^c[900]^c[1108]^c[1083]^c[1061]^c[1201]^c[1178]^c[1142]^c[1324]^c[1314]^c[1263]^c[1274]^c[1353]^c[1425]^c[1433]^c[1547]^c[1521]^c[1479]^c[1635]^c[1658]^c[1625]^c[1682]^c[1789]^c[1745]^c[1850]^c[1898]^c[1876]^c[1974]^c[1978]^c[1966]^c[2033]^c[2121]^c[2103]^c[2202]^c[2147]^c[2227]^c[2332]^c[2318]^c[2258]^c[2316]^c[2421]^c[2415]^c[2386]; //row: 17 d[i2+17*Zc]=c[55]^c[1677]^c[1879]^c[1966]^c[2355]; //row: 18 d[i2+18*Zc]=c[198]^c[1453]^c[1543]^c[2046]^c[2201]; //row: 19 d[i2+19*Zc]=c[7]^c[117]^c[886]^c[981]^c[1127]; //row: 20 d[i2+20*Zc]=c[69]^c[99]^c[53]^c[47]^c[104]^c[198]^c[161]^c[200]^c[276]^c[227]^c[325]^c[385]^c[445]^c[347]^c[433]^c[452]^c[470]^c[523]^c[592]^c[637]^c[586]^c[752]^c[704]^c[675]^c[787]^c[837]^c[884]^c[987]^c[1007]^c[982]^c[1078]^c[1053]^c[1031]^c[1016]^c[1171]^c[1148]^c[1224]^c[1294]^c[1284]^c[1233]^c[1333]^c[1435]^c[1395]^c[1403]^c[1517]^c[1491]^c[1561]^c[1605]^c[1628]^c[1595]^c[1764]^c[1759]^c[1715]^c[1820]^c[1868]^c[1846]^c[1944]^c[1948]^c[1936]^c[2115]^c[2091]^c[2073]^c[2172]^c[2229]^c[2197]^c[2302]^c[2288]^c[2340]^c[2391]^c[2385]^c[2356]; //row: 21 d[i2+21*Zc]=c[191]^c[578]^c[1899]^c[2289]^c[2457]; //row: 22 d[i2+22*Zc]=c[52]^c[1455]^c[1458]^c[1939]; //row: 23 d[i2+23*Zc]=c[199]^c[314]^c[1175]^c[2025]; //row: 24 d[i2+24*Zc]=c[10]^c[40]^c[106]^c[100]^c[48]^c[139]^c[214]^c[141]^c[329]^c[280]^c[266]^c[438]^c[386]^c[400]^c[380]^c[505]^c[523]^c[464]^c[511]^c[645]^c[578]^c[639]^c[693]^c[757]^c[728]^c[840]^c[890]^c[825]^c[928]^c[948]^c[923]^c[1019]^c[1106]^c[1084]^c[1224]^c[1201]^c[1165]^c[1235]^c[1337]^c[1286]^c[1312]^c[1376]^c[1448]^c[1344]^c[1458]^c[1544]^c[1502]^c[1658]^c[1569]^c[1648]^c[1705]^c[1700]^c[1768]^c[1873]^c[1809]^c[1899]^c[1997]^c[2001]^c[1989]^c[2056]^c[2032]^c[2126]^c[2225]^c[2170]^c[2138]^c[2243]^c[2341]^c[2281]^c[2444]^c[2438]^c[2409]; //row: 25 d[i2+25*Zc]=c[112]^c[725]^c[848]^c[1648]; //row: 26 d[i2+26*Zc]=c[106]^c[287]^c[547]^c[1694]; //row: 27 d[i2+27*Zc]=c[207]^c[700]^c[957]; //row: 28 d[i2+28*Zc]=c[33]^c[488]^c[2232]^c[2353]; //row: 29 d[i2+29*Zc]=c[67]^c[97]^c[51]^c[44]^c[45]^c[196]^c[159]^c[197]^c[198]^c[149]^c[274]^c[225]^c[323]^c[383]^c[443]^c[344]^c[345]^c[450]^c[468]^c[520]^c[521]^c[590]^c[635]^c[584]^c[750]^c[702]^c[672]^c[673]^c[785]^c[835]^c[881]^c[882]^c[985]^c[1005]^c[979]^c[980]^c[1076]^c[1051]^c[1029]^c[1169]^c[1146]^c[1221]^c[1222]^c[1292]^c[1282]^c[1342]^c[1343]^c[1433]^c[1393]^c[1400]^c[1401]^c[1515]^c[1489]^c[1558]^c[1559]^c[1603]^c[1626]^c[1592]^c[1593]^c[1578]^c[1762]^c[1757]^c[1713]^c[1818]^c[1866]^c[1843]^c[1844]^c[1942]^c[1946]^c[1933]^c[1934]^c[2113]^c[2089]^c[2070]^c[2071]^c[2068]^c[2170]^c[2227]^c[2195]^c[2300]^c[2286]^c[2337]^c[2338]^c[2389]^c[2383]^c[2353]^c[2354]; //row: 30 d[i2+30*Zc]=c[10]^c[40]^c[105]^c[106]^c[99]^c[100]^c[33]^c[139]^c[213]^c[214]^c[140]^c[141]^c[329]^c[280]^c[265]^c[266]^c[438]^c[386]^c[399]^c[400]^c[505]^c[522]^c[523]^c[463]^c[464]^c[645]^c[578]^c[638]^c[639]^c[693]^c[756]^c[757]^c[727]^c[728]^c[840]^c[889]^c[890]^c[824]^c[825]^c[928]^c[947]^c[948]^c[922]^c[923]^c[1019]^c[1106]^c[1083]^c[1084]^c[1224]^c[1200]^c[1201]^c[1164]^c[1165]^c[1137]^c[1235]^c[1337]^c[1285]^c[1286]^c[1376]^c[1448]^c[1455]^c[1344]^c[1458]^c[1543]^c[1544]^c[1501]^c[1502]^c[1553]^c[1658]^c[1568]^c[1569]^c[1647]^c[1648]^c[1705]^c[1700]^c[1767]^c[1768]^c[1873]^c[1809]^c[1898]^c[1899]^c[1997]^c[2000]^c[2001]^c[1988]^c[1989]^c[2056]^c[2031]^c[2032]^c[2125]^c[2126]^c[2225]^c[2170]^c[2137]^c[2138]^c[2243]^c[2340]^c[2341]^c[2280]^c[2281]^c[2444]^c[2438]^c[2408]^c[2409]; //row: 31 d[i2+31*Zc]=c[63]^c[15]^c[93]^c[45]^c[47]^c[111]^c[41]^c[104]^c[105]^c[192]^c[144]^c[155]^c[219]^c[194]^c[145]^c[146]^c[174]^c[270]^c[334]^c[333]^c[285]^c[319]^c[271]^c[379]^c[443]^c[439]^c[391]^c[341]^c[404]^c[405]^c[558]^c[510]^c[464]^c[528]^c[517]^c[468]^c[469]^c[586]^c[650]^c[631]^c[583]^c[580]^c[644]^c[746]^c[698]^c[698]^c[762]^c[781]^c[732]^c[733]^c[893]^c[845]^c[831]^c[895]^c[878]^c[829]^c[830]^c[832]^c[981]^c[933]^c[1001]^c[953]^c[976]^c[927]^c[928]^c[1072]^c[1024]^c[1047]^c[1111]^c[1025]^c[1089]^c[1165]^c[1229]^c[1142]^c[1206]^c[1218]^c[1169]^c[1170]^c[1288]^c[1240]^c[1278]^c[1342]^c[1339]^c[1290]^c[1291]^c[1429]^c[1381]^c[1389]^c[1453]^c[1397]^c[1348]^c[1349]^c[1511]^c[1463]^c[1485]^c[1549]^c[1555]^c[1506]^c[1507]^c[1599]^c[1663]^c[1622]^c[1574]^c[1589]^c[1652]^c[1653]^c[1758]^c[1710]^c[1753]^c[1705]^c[1709]^c[1773]^c[1814]^c[1878]^c[1862]^c[1814]^c[1840]^c[1903]^c[1792]^c[1938]^c[2002]^c[1942]^c[2006]^c[1930]^c[1993]^c[1994]^c[2109]^c[2061]^c[2085]^c[2037]^c[2067]^c[2018]^c[2019]^c[2166]^c[2230]^c[2223]^c[2175]^c[2191]^c[2143]^c[2296]^c[2248]^c[2282]^c[2346]^c[2334]^c[2285]^c[2286]^c[2385]^c[2449]^c[2379]^c[2443]^c[2462]^c[2413]^c[2414]; //row: 32 d[i2+32*Zc]=c[29]^c[59]^c[12]^c[13]^c[6]^c[7]^c[79]^c[158]^c[120]^c[121]^c[159]^c[160]^c[236]^c[299]^c[284]^c[285]^c[345]^c[405]^c[418]^c[419]^c[524]^c[541]^c[542]^c[482]^c[483]^c[664]^c[597]^c[657]^c[658]^c[712]^c[775]^c[776]^c[746]^c[747]^c[859]^c[796]^c[797]^c[843]^c[844]^c[947]^c[966]^c[967]^c[941]^c[942]^c[1038]^c[1013]^c[1102]^c[1103]^c[1131]^c[1219]^c[1220]^c[1183]^c[1184]^c[1254]^c[1244]^c[1304]^c[1305]^c[1395]^c[1355]^c[1362]^c[1363]^c[1440]^c[1477]^c[1562]^c[1563]^c[1520]^c[1521]^c[1677]^c[1587]^c[1588]^c[1666]^c[1667]^c[1625]^c[1724]^c[1719]^c[1786]^c[1787]^c[1892]^c[1828]^c[1805]^c[1806]^c[1904]^c[1907]^c[1908]^c[2007]^c[2008]^c[2075]^c[2050]^c[2051]^c[2032]^c[2033]^c[2132]^c[2189]^c[2156]^c[2157]^c[2262]^c[2247]^c[2248]^c[2299]^c[2300]^c[2463]^c[2457]^c[2427]^c[2428]; //row: 33 d[i2+33*Zc]=c[113]^c[272]^c[1280]^c[2376]; //row: 34 d[i2+34*Zc]=c[81]^c[857]^c[1747]^c[1941]; //row: 35 d[i2+35*Zc]=c[73]^c[103]^c[57]^c[51]^c[202]^c[165]^c[204]^c[191]^c[280]^c[231]^c[329]^c[389]^c[337]^c[351]^c[456]^c[474]^c[527]^c[596]^c[641]^c[590]^c[756]^c[708]^c[679]^c[732]^c[791]^c[841]^c[888]^c[991]^c[899]^c[986]^c[1082]^c[1057]^c[1035]^c[1175]^c[1152]^c[1228]^c[1298]^c[1288]^c[1237]^c[1439]^c[1399]^c[1407]^c[1369]^c[1521]^c[1495]^c[1565]^c[1609]^c[1632]^c[1599]^c[1768]^c[1763]^c[1719]^c[1824]^c[1872]^c[1850]^c[1948]^c[1952]^c[1940]^c[2119]^c[2095]^c[2077]^c[2176]^c[2233]^c[2201]^c[2306]^c[2292]^c[2344]^c[2395]^c[2389]^c[2360]; //row: 36 d[i2+36*Zc]=c[109]^c[1612]^c[1791]^c[2021]; //row: 37 d[i2+37*Zc]=c[24]^c[25]^c[55]^c[9]^c[3]^c[153]^c[154]^c[117]^c[156]^c[192]^c[231]^c[232]^c[295]^c[281]^c[340]^c[341]^c[401]^c[415]^c[520]^c[538]^c[479]^c[659]^c[660]^c[593]^c[654]^c[707]^c[708]^c[772]^c[743]^c[855]^c[793]^c[840]^c[943]^c[963]^c[938]^c[1033]^c[1034]^c[1009]^c[1099]^c[1126]^c[1127]^c[1216]^c[1180]^c[1249]^c[1250]^c[1240]^c[1301]^c[1390]^c[1391]^c[1351]^c[1359]^c[1472]^c[1473]^c[1559]^c[1517]^c[1538]^c[1673]^c[1584]^c[1663]^c[1719]^c[1720]^c[1715]^c[1783]^c[1887]^c[1888]^c[1824]^c[1802]^c[2012]^c[1904]^c[2004]^c[2070]^c[2071]^c[2047]^c[2029]^c[2239]^c[2128]^c[2185]^c[2153]^c[2257]^c[2258]^c[2244]^c[2296]^c[2458]^c[2459]^c[2453]^c[2424]; //row: 38 d[i2+38*Zc]=c[10]^c[1097]^c[1192]^c[1353]; //row: 39 d[i2+39*Zc]=c[123]^c[412]^c[832]^c[2129]; //row: 40 d[i2+40*Zc]=c[66]^c[940]^c[1999]; //row: 41 d[i2+41*Zc]=c[134]^c[438]^c[1067]^c[2070]; //row: 42 d[i2+42*Zc]=c[77]^c[107]^c[60]^c[61]^c[54]^c[55]^c[1]^c[206]^c[168]^c[169]^c[207]^c[208]^c[284]^c[235]^c[332]^c[333]^c[393]^c[341]^c[354]^c[355]^c[460]^c[477]^c[478]^c[530]^c[531]^c[538]^c[600]^c[645]^c[593]^c[594]^c[760]^c[711]^c[712]^c[682]^c[683]^c[795]^c[844]^c[845]^c[891]^c[892]^c[995]^c[902]^c[903]^c[989]^c[990]^c[1086]^c[1061]^c[1038]^c[1039]^c[1179]^c[1155]^c[1156]^c[1231]^c[1120]^c[1302]^c[1292]^c[1240]^c[1241]^c[1443]^c[1403]^c[1410]^c[1411]^c[1525]^c[1498]^c[1499]^c[1456]^c[1457]^c[1613]^c[1635]^c[1636]^c[1602]^c[1603]^c[1772]^c[1767]^c[1722]^c[1723]^c[1828]^c[1876]^c[1853]^c[1854]^c[1952]^c[1955]^c[1956]^c[1943]^c[1944]^c[2123]^c[2098]^c[2099]^c[2080]^c[2081]^c[2180]^c[2237]^c[2204]^c[2205]^c[2310]^c[2295]^c[2296]^c[2347]^c[2348]^c[2399]^c[2393]^c[2363]^c[2364]; //row: 43 d[i2+43*Zc]=c[48]^c[78]^c[32]^c[25]^c[26]^c[177]^c[140]^c[178]^c[179]^c[205]^c[255]^c[318]^c[304]^c[364]^c[424]^c[437]^c[438]^c[543]^c[449]^c[501]^c[502]^c[571]^c[616]^c[565]^c[731]^c[683]^c[765]^c[766]^c[878]^c[816]^c[862]^c[863]^c[966]^c[986]^c[960]^c[961]^c[1057]^c[1032]^c[1010]^c[1150]^c[1127]^c[1202]^c[1203]^c[1273]^c[1263]^c[1323]^c[1324]^c[1414]^c[1374]^c[1381]^c[1382]^c[1496]^c[1470]^c[1539]^c[1540]^c[1584]^c[1607]^c[1573]^c[1574]^c[1743]^c[1738]^c[1694]^c[1799]^c[1847]^c[1824]^c[1825]^c[1813]^c[1923]^c[1927]^c[1914]^c[1915]^c[2094]^c[2070]^c[2051]^c[2052]^c[2037]^c[2151]^c[2208]^c[2176]^c[2281]^c[2267]^c[2318]^c[2319]^c[2370]^c[2364]^c[2446]^c[2447]; //row: 44 d[i2+44*Zc]=c[10]^c[40]^c[106]^c[100]^c[83]^c[139]^c[214]^c[141]^c[329]^c[280]^c[266]^c[438]^c[386]^c[400]^c[505]^c[523]^c[464]^c[645]^c[578]^c[639]^c[693]^c[757]^c[728]^c[840]^c[890]^c[825]^c[787]^c[928]^c[948]^c[923]^c[1019]^c[1106]^c[1084]^c[1016]^c[1224]^c[1201]^c[1165]^c[1235]^c[1337]^c[1286]^c[1376]^c[1448]^c[1344]^c[1458]^c[1544]^c[1502]^c[1658]^c[1569]^c[1648]^c[1705]^c[1700]^c[1768]^c[1873]^c[1809]^c[1899]^c[1997]^c[2001]^c[1989]^c[2056]^c[2032]^c[2126]^c[2225]^c[2170]^c[2138]^c[2243]^c[2341]^c[2281]^c[2444]^c[2438]^c[2409]; //row: 45 d[i2+45*Zc]=c[183]^c[680]^c[1148]; } break; case 120: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[14]^c[95]^c[68]^c[7]^c[226]^c[123]^c[142]^c[245]^c[355]^c[344]^c[373]^c[375]^c[401]^c[580]^c[510]^c[579]^c[683]^c[607]^c[715]^c[802]^c[836]^c[762]^c[931]^c[898]^c[905]^c[1011]^c[1051]^c[1055]^c[1132]^c[1135]^c[1103]^c[1304]^c[1267]^c[1200]^c[1404]^c[1330]^c[1415]^c[1447]^c[1508]^c[1461]^c[1634]^c[1565]^c[1583]^c[1774]^c[1780]^c[1726]^c[1814]^c[1884]^c[1832]^c[2016]^c[1952]^c[1999]^c[2126]^c[2135]^c[2071]^c[2259]^c[2164]^c[2274]^c[2369]^c[2322]^c[2346]^c[2504]^c[2509]^c[2451]^c[2536]^c[2615]^c[2618]; //row: 1 d[i2+1*Zc]=c[14]^c[15]^c[96]^c[69]^c[8]^c[226]^c[227]^c[124]^c[143]^c[245]^c[246]^c[356]^c[345]^c[373]^c[374]^c[376]^c[402]^c[581]^c[511]^c[580]^c[683]^c[684]^c[608]^c[716]^c[802]^c[803]^c[837]^c[763]^c[932]^c[899]^c[906]^c[1012]^c[1052]^c[1056]^c[1132]^c[1133]^c[1136]^c[1104]^c[1304]^c[1305]^c[1268]^c[1201]^c[1404]^c[1405]^c[1331]^c[1416]^c[1447]^c[1448]^c[1509]^c[1462]^c[1634]^c[1635]^c[1566]^c[1584]^c[1775]^c[1781]^c[1727]^c[1814]^c[1815]^c[1885]^c[1833]^c[2016]^c[2017]^c[1953]^c[2000]^c[2127]^c[2136]^c[2072]^c[2259]^c[2260]^c[2165]^c[2275]^c[2369]^c[2370]^c[2323]^c[2347]^c[2504]^c[2505]^c[2510]^c[2452]^c[2536]^c[2537]^c[2616]^c[2619]; //row: 2 d[i2+2*Zc]=c[15]^c[96]^c[68]^c[69]^c[7]^c[8]^c[227]^c[123]^c[124]^c[142]^c[143]^c[246]^c[356]^c[344]^c[345]^c[374]^c[376]^c[401]^c[402]^c[581]^c[510]^c[511]^c[579]^c[580]^c[684]^c[608]^c[715]^c[716]^c[803]^c[836]^c[837]^c[762]^c[763]^c[932]^c[898]^c[899]^c[905]^c[906]^c[1012]^c[1051]^c[1052]^c[1055]^c[1056]^c[1133]^c[1136]^c[1103]^c[1104]^c[1305]^c[1267]^c[1268]^c[1200]^c[1201]^c[1405]^c[1331]^c[1415]^c[1416]^c[1448]^c[1509]^c[1461]^c[1462]^c[1635]^c[1565]^c[1566]^c[1583]^c[1584]^c[1775]^c[1780]^c[1781]^c[1726]^c[1727]^c[1815]^c[1885]^c[1832]^c[1833]^c[2017]^c[1953]^c[1999]^c[2000]^c[2127]^c[2135]^c[2136]^c[2071]^c[2072]^c[2260]^c[2164]^c[2165]^c[2274]^c[2275]^c[2370]^c[2323]^c[2346]^c[2347]^c[2505]^c[2509]^c[2510]^c[2451]^c[2452]^c[2537]^c[2616]^c[2618]^c[2619]; //row: 3 d[i2+3*Zc]=c[15]^c[96]^c[69]^c[7]^c[8]^c[227]^c[124]^c[142]^c[143]^c[246]^c[356]^c[345]^c[374]^c[376]^c[401]^c[402]^c[581]^c[511]^c[579]^c[580]^c[684]^c[608]^c[716]^c[803]^c[837]^c[762]^c[763]^c[932]^c[899]^c[905]^c[906]^c[1012]^c[1052]^c[1055]^c[1056]^c[1133]^c[1136]^c[1104]^c[1305]^c[1268]^c[1200]^c[1201]^c[1405]^c[1331]^c[1415]^c[1416]^c[1448]^c[1509]^c[1461]^c[1462]^c[1635]^c[1566]^c[1583]^c[1584]^c[1775]^c[1781]^c[1726]^c[1727]^c[1815]^c[1885]^c[1833]^c[2017]^c[1953]^c[1999]^c[2000]^c[2127]^c[2136]^c[2071]^c[2072]^c[2260]^c[2165]^c[2274]^c[2275]^c[2370]^c[2323]^c[2347]^c[2505]^c[2510]^c[2451]^c[2452]^c[2537]^c[2616]^c[2618]^c[2619]; //row: 4 d[i2+4*Zc]=c[63]^c[210]; //row: 5 d[i2+5*Zc]=c[74]^c[35]^c[8]^c[67]^c[1]^c[166]^c[183]^c[202]^c[170]^c[305]^c[295]^c[284]^c[433]^c[435]^c[461]^c[406]^c[520]^c[570]^c[519]^c[623]^c[667]^c[655]^c[742]^c[776]^c[822]^c[871]^c[958]^c[845]^c[1071]^c[991]^c[995]^c[1192]^c[1195]^c[1163]^c[1244]^c[1207]^c[1260]^c[1344]^c[1390]^c[1355]^c[1507]^c[1448]^c[1521]^c[1462]^c[1574]^c[1625]^c[1643]^c[1714]^c[1720]^c[1786]^c[1874]^c[1824]^c[1892]^c[1956]^c[2012]^c[1939]^c[2009]^c[2066]^c[2075]^c[2131]^c[2199]^c[2224]^c[2214]^c[2309]^c[2382]^c[2286]^c[2444]^c[2449]^c[2511]^c[2596]^c[2555]^c[2558]^c[2579]; //row: 6 d[i2+6*Zc]=c[78]^c[741]^c[1222]^c[1419]^c[1651]^c[2126]^c[2211]^c[2412]; //row: 7 d[i2+7*Zc]=c[76]^c[145]^c[568]^c[871]^c[1005]^c[1697]; //row: 8 d[i2+8*Zc]=c[47]^c[53]^c[8]^c[14]^c[101]^c[106]^c[107]^c[40]^c[45]^c[46]^c[60]^c[139]^c[145]^c[156]^c[161]^c[162]^c[175]^c[180]^c[181]^c[224]^c[278]^c[284]^c[268]^c[274]^c[257]^c[262]^c[263]^c[406]^c[412]^c[408]^c[414]^c[434]^c[439]^c[440]^c[380]^c[493]^c[499]^c[543]^c[548]^c[549]^c[492]^c[497]^c[498]^c[716]^c[602]^c[640]^c[646]^c[628]^c[633]^c[634]^c[835]^c[721]^c[749]^c[754]^c[755]^c[795]^c[800]^c[801]^c[844]^c[850]^c[931]^c[936]^c[937]^c[938]^c[943]^c[944]^c[1044]^c[1050]^c[964]^c[969]^c[970]^c[968]^c[973]^c[974]^c[1165]^c[1171]^c[1168]^c[1174]^c[1136]^c[1141]^c[1142]^c[1217]^c[1223]^c[1300]^c[1305]^c[1306]^c[1233]^c[1238]^c[1239]^c[1437]^c[1323]^c[1363]^c[1369]^c[1328]^c[1333]^c[1334]^c[1480]^c[1486]^c[1541]^c[1547]^c[1494]^c[1499]^c[1500]^c[1542]^c[1667]^c[1673]^c[1598]^c[1603]^c[1604]^c[1616]^c[1621]^c[1622]^c[1687]^c[1693]^c[1693]^c[1698]^c[1699]^c[1759]^c[1764]^c[1765]^c[1847]^c[1853]^c[1917]^c[1803]^c[1865]^c[1870]^c[1871]^c[1929]^c[1935]^c[1985]^c[1991]^c[2032]^c[2037]^c[2038]^c[1976]^c[2159]^c[2045]^c[2048]^c[2053]^c[2054]^c[2104]^c[2109]^c[2110]^c[2172]^c[2178]^c[2197]^c[2202]^c[2203]^c[2187]^c[2192]^c[2193]^c[2282]^c[2288]^c[2355]^c[2361]^c[2379]^c[2384]^c[2385]^c[2304]^c[2417]^c[2423]^c[2422]^c[2427]^c[2428]^c[2484]^c[2489]^c[2490]^c[2569]^c[2575]^c[2528]^c[2534]^c[2531]^c[2536]^c[2537]^c[2598]; //row: 9 d[i2+9*Zc]=c[48]^c[131]^c[1285]^c[1420]^c[1576]^c[2131]^c[2251]^c[2484]; //row: 10 d[i2+10*Zc]=c[235]^c[270]^c[549]^c[949]^c[1074]^c[1763]; //row: 11 d[i2+11*Zc]=c[59]^c[1]^c[2]^c[20]^c[83]^c[113]^c[56]^c[52]^c[115]^c[44]^c[151]^c[213]^c[214]^c[168]^c[231]^c[187]^c[130]^c[234]^c[290]^c[352]^c[353]^c[280]^c[343]^c[269]^c[332]^c[418]^c[360]^c[361]^c[420]^c[363]^c[446]^c[389]^c[505]^c[568]^c[555]^c[498]^c[504]^c[567]^c[608]^c[670]^c[671]^c[652]^c[715]^c[640]^c[703]^c[727]^c[789]^c[790]^c[761]^c[824]^c[807]^c[750]^c[856]^c[919]^c[943]^c[886]^c[950]^c[893]^c[1056]^c[999]^c[976]^c[1039]^c[980]^c[1043]^c[1177]^c[1119]^c[1120]^c[1180]^c[1123]^c[1148]^c[1091]^c[1229]^c[1291]^c[1292]^c[1312]^c[1255]^c[1245]^c[1308]^c[1329]^c[1391]^c[1392]^c[1375]^c[1438]^c[1340]^c[1403]^c[1492]^c[1554]^c[1555]^c[1553]^c[1496]^c[1506]^c[1449]^c[1453]^c[1679]^c[1621]^c[1622]^c[1610]^c[1673]^c[1628]^c[1571]^c[1699]^c[1762]^c[1705]^c[1768]^c[1771]^c[1714]^c[1859]^c[1801]^c[1802]^c[1809]^c[1872]^c[1877]^c[1820]^c[1941]^c[2003]^c[2004]^c[1997]^c[1940]^c[1924]^c[1987]^c[1920]^c[2051]^c[2114]^c[2060]^c[2123]^c[2116]^c[2059]^c[2184]^c[2246]^c[2247]^c[2209]^c[2272]^c[2199]^c[2262]^c[2294]^c[2356]^c[2357]^c[2367]^c[2310]^c[2391]^c[2334]^c[2429]^c[2491]^c[2492]^c[2434]^c[2497]^c[2496]^c[2439]^c[2581]^c[2523]^c[2524]^c[2540]^c[2603]^c[2543]^c[2606]^c[2551]; //row: 12 d[i2+12*Zc]=c[65]^c[214]^c[1203]^c[1379]^c[1657]^c[2239]; //row: 13 d[i2+13*Zc]=c[44]^c[45]^c[6]^c[99]^c[38]^c[99]^c[136]^c[137]^c[154]^c[173]^c[275]^c[276]^c[266]^c[255]^c[403]^c[404]^c[406]^c[432]^c[424]^c[491]^c[541]^c[490]^c[713]^c[714]^c[638]^c[626]^c[832]^c[833]^c[747]^c[793]^c[842]^c[929]^c[936]^c[873]^c[1042]^c[962]^c[966]^c[1162]^c[1163]^c[1166]^c[1134]^c[1214]^c[1215]^c[1298]^c[1231]^c[1434]^c[1435]^c[1361]^c[1326]^c[1477]^c[1478]^c[1539]^c[1492]^c[1664]^c[1665]^c[1596]^c[1614]^c[1685]^c[1691]^c[1757]^c[1844]^c[1845]^c[1915]^c[1863]^c[1926]^c[1927]^c[1983]^c[2030]^c[2157]^c[2046]^c[2102]^c[2169]^c[2170]^c[2195]^c[2185]^c[2399]^c[2280]^c[2353]^c[2377]^c[2414]^c[2415]^c[2420]^c[2482]^c[2457]^c[2566]^c[2567]^c[2526]^c[2529]; //row: 14 d[i2+14*Zc]=c[3]^c[1463]^c[1861]^c[2014]^c[2111]^c[2595]; //row: 15 d[i2+15*Zc]=c[64]^c[25]^c[118]^c[56]^c[57]^c[38]^c[156]^c[173]^c[191]^c[192]^c[137]^c[295]^c[285]^c[274]^c[423]^c[425]^c[450]^c[451]^c[510]^c[560]^c[508]^c[509]^c[613]^c[657]^c[645]^c[732]^c[766]^c[811]^c[812]^c[861]^c[948]^c[954]^c[955]^c[1061]^c[981]^c[984]^c[985]^c[1182]^c[1185]^c[1153]^c[1234]^c[1317]^c[1249]^c[1250]^c[1299]^c[1334]^c[1380]^c[1344]^c[1345]^c[1497]^c[1558]^c[1510]^c[1511]^c[1564]^c[1615]^c[1632]^c[1633]^c[1612]^c[1704]^c[1710]^c[1775]^c[1776]^c[1864]^c[1814]^c[1882]^c[1946]^c[2002]^c[1928]^c[1929]^c[2056]^c[2065]^c[2120]^c[2121]^c[2189]^c[2214]^c[2203]^c[2204]^c[2181]^c[2299]^c[2372]^c[2396]^c[2434]^c[2439]^c[2500]^c[2501]^c[2586]^c[2545]^c[2547]^c[2548]; //row: 16 d[i2+16*Zc]=c[99]^c[60]^c[33]^c[92]^c[191]^c[208]^c[227]^c[197]^c[330]^c[320]^c[309]^c[458]^c[460]^c[366]^c[391]^c[545]^c[595]^c[544]^c[648]^c[692]^c[680]^c[767]^c[801]^c[727]^c[896]^c[863]^c[870]^c[976]^c[1016]^c[1020]^c[1097]^c[1100]^c[1188]^c[1269]^c[1232]^c[1285]^c[1369]^c[1415]^c[1380]^c[1403]^c[1532]^c[1473]^c[1546]^c[1599]^c[1650]^c[1668]^c[1739]^c[1745]^c[1691]^c[1899]^c[1849]^c[1917]^c[1981]^c[2037]^c[1964]^c[2091]^c[2100]^c[2156]^c[2224]^c[2249]^c[2239]^c[2334]^c[2287]^c[2311]^c[2469]^c[2474]^c[2416]^c[2404]^c[2621]^c[2580]^c[2583]; //row: 17 d[i2+17*Zc]=c[62]^c[1791]^c[2025]^c[2138]^c[2528]; //row: 18 d[i2+18*Zc]=c[182]^c[1534]^c[1619]^c[2182]^c[2293]; //row: 19 d[i2+19*Zc]=c[58]^c[227]^c[878]^c[977]^c[1275]; //row: 20 d[i2+20*Zc]=c[24]^c[105]^c[78]^c[17]^c[76]^c[236]^c[133]^c[152]^c[255]^c[245]^c[354]^c[383]^c[385]^c[411]^c[426]^c[590]^c[520]^c[589]^c[693]^c[617]^c[605]^c[812]^c[726]^c[772]^c[941]^c[908]^c[915]^c[1021]^c[1061]^c[1065]^c[1142]^c[1145]^c[1113]^c[1162]^c[1314]^c[1277]^c[1210]^c[1414]^c[1340]^c[1425]^c[1366]^c[1457]^c[1518]^c[1471]^c[1644]^c[1575]^c[1593]^c[1784]^c[1790]^c[1736]^c[1824]^c[1894]^c[1842]^c[2026]^c[1962]^c[2009]^c[2136]^c[2145]^c[2081]^c[2269]^c[2174]^c[2164]^c[2379]^c[2332]^c[2356]^c[2514]^c[2519]^c[2461]^c[2546]^c[2625]^c[2628]; //row: 21 d[i2+21*Zc]=c[196]^c[601]^c[2014]^c[2464]^c[2615]; //row: 22 d[i2+22*Zc]=c[24]^c[1486]^c[1565]^c[2097]; //row: 23 d[i2+23*Zc]=c[184]^c[246]^c[1316]^c[2238]; //row: 24 d[i2+24*Zc]=c[72]^c[33]^c[6]^c[65]^c[31]^c[164]^c[181]^c[200]^c[303]^c[293]^c[282]^c[431]^c[433]^c[459]^c[417]^c[518]^c[568]^c[517]^c[481]^c[621]^c[665]^c[653]^c[740]^c[774]^c[820]^c[869]^c[956]^c[843]^c[1069]^c[989]^c[993]^c[1190]^c[1193]^c[1161]^c[1242]^c[1205]^c[1258]^c[1342]^c[1388]^c[1353]^c[1355]^c[1505]^c[1446]^c[1519]^c[1572]^c[1623]^c[1641]^c[1712]^c[1718]^c[1784]^c[1872]^c[1822]^c[1890]^c[1954]^c[2010]^c[1937]^c[2064]^c[2073]^c[2129]^c[2197]^c[2222]^c[2212]^c[2307]^c[2380]^c[2284]^c[2442]^c[2447]^c[2509]^c[2594]^c[2553]^c[2556]; //row: 25 d[i2+25*Zc]=c[146]^c[740]^c[850]^c[1740]; //row: 26 d[i2+26*Zc]=c[42]^c[250]^c[528]^c[1897]; //row: 27 d[i2+27*Zc]=c[164]^c[831]^c[968]; //row: 28 d[i2+28*Zc]=c[31]^c[522]^c[2359]^c[2604]; //row: 29 d[i2+29*Zc]=c[118]^c[79]^c[52]^c[110]^c[111]^c[210]^c[227]^c[125]^c[126]^c[231]^c[349]^c[339]^c[328]^c[477]^c[479]^c[384]^c[385]^c[564]^c[494]^c[562]^c[563]^c[667]^c[711]^c[699]^c[786]^c[820]^c[745]^c[746]^c[915]^c[882]^c[888]^c[889]^c[995]^c[1035]^c[1038]^c[1039]^c[1116]^c[1119]^c[1087]^c[1288]^c[1251]^c[1303]^c[1304]^c[1388]^c[1434]^c[1398]^c[1399]^c[1551]^c[1492]^c[1444]^c[1445]^c[1618]^c[1669]^c[1566]^c[1567]^c[1758]^c[1764]^c[1709]^c[1710]^c[1711]^c[1918]^c[1868]^c[1816]^c[2000]^c[1936]^c[1982]^c[1983]^c[2110]^c[2119]^c[2054]^c[2055]^c[2243]^c[2268]^c[2257]^c[2258]^c[2277]^c[2353]^c[2306]^c[2330]^c[2488]^c[2493]^c[2434]^c[2435]^c[2520]^c[2599]^c[2601]^c[2602]; //row: 30 d[i2+30*Zc]=c[0]^c[81]^c[53]^c[54]^c[112]^c[113]^c[49]^c[212]^c[228]^c[229]^c[127]^c[128]^c[351]^c[341]^c[329]^c[330]^c[479]^c[361]^c[386]^c[387]^c[566]^c[495]^c[496]^c[564]^c[565]^c[669]^c[713]^c[700]^c[701]^c[788]^c[821]^c[822]^c[747]^c[748]^c[917]^c[883]^c[884]^c[890]^c[891]^c[997]^c[1036]^c[1037]^c[1040]^c[1041]^c[1118]^c[1121]^c[1088]^c[1089]^c[1290]^c[1252]^c[1253]^c[1305]^c[1306]^c[1278]^c[1390]^c[1436]^c[1400]^c[1401]^c[1553]^c[1494]^c[1446]^c[1447]^c[1620]^c[1670]^c[1671]^c[1568]^c[1569]^c[1585]^c[1760]^c[1765]^c[1766]^c[1711]^c[1712]^c[1800]^c[1870]^c[1817]^c[1818]^c[2002]^c[1938]^c[1984]^c[1985]^c[2112]^c[2120]^c[2121]^c[2056]^c[2057]^c[2245]^c[2269]^c[2270]^c[2259]^c[2260]^c[2355]^c[2308]^c[2331]^c[2332]^c[2490]^c[2494]^c[2495]^c[2436]^c[2437]^c[2522]^c[2601]^c[2603]^c[2604]; //row: 31 d[i2+31*Zc]=c[69]^c[3]^c[30]^c[84]^c[3]^c[57]^c[62]^c[115]^c[116]^c[161]^c[215]^c[178]^c[232]^c[197]^c[130]^c[131]^c[192]^c[300]^c[354]^c[290]^c[344]^c[279]^c[333]^c[428]^c[362]^c[430]^c[364]^c[456]^c[389]^c[390]^c[515]^c[569]^c[565]^c[499]^c[514]^c[567]^c[568]^c[618]^c[672]^c[662]^c[716]^c[650]^c[704]^c[737]^c[791]^c[771]^c[825]^c[817]^c[750]^c[751]^c[866]^c[920]^c[953]^c[887]^c[840]^c[893]^c[894]^c[868]^c[1066]^c[1000]^c[986]^c[1040]^c[990]^c[1043]^c[1044]^c[1187]^c[1121]^c[1190]^c[1124]^c[1158]^c[1092]^c[1239]^c[1293]^c[1202]^c[1256]^c[1255]^c[1308]^c[1309]^c[1339]^c[1393]^c[1385]^c[1439]^c[1350]^c[1403]^c[1404]^c[1502]^c[1556]^c[1443]^c[1497]^c[1516]^c[1449]^c[1450]^c[1569]^c[1623]^c[1620]^c[1674]^c[1638]^c[1571]^c[1572]^c[1709]^c[1763]^c[1715]^c[1769]^c[1781]^c[1714]^c[1715]^c[1869]^c[1803]^c[1819]^c[1873]^c[1887]^c[1821]^c[1951]^c[2005]^c[2007]^c[1941]^c[1934]^c[1987]^c[1988]^c[2061]^c[2115]^c[2070]^c[2124]^c[2126]^c[2059]^c[2060]^c[2194]^c[2248]^c[2219]^c[2273]^c[2209]^c[2262]^c[2263]^c[2304]^c[2358]^c[2377]^c[2311]^c[2281]^c[2335]^c[2439]^c[2493]^c[2444]^c[2498]^c[2506]^c[2439]^c[2440]^c[2591]^c[2525]^c[2550]^c[2604]^c[2553]^c[2606]^c[2607]; //row: 32 d[i2+32*Zc]=c[106]^c[67]^c[39]^c[40]^c[98]^c[99]^c[102]^c[198]^c[214]^c[215]^c[233]^c[234]^c[337]^c[327]^c[315]^c[316]^c[465]^c[467]^c[372]^c[373]^c[552]^c[481]^c[482]^c[550]^c[551]^c[655]^c[699]^c[686]^c[687]^c[774]^c[807]^c[808]^c[733]^c[734]^c[903]^c[869]^c[870]^c[876]^c[877]^c[983]^c[1022]^c[1023]^c[1026]^c[1027]^c[1104]^c[1107]^c[1194]^c[1195]^c[1276]^c[1238]^c[1239]^c[1291]^c[1292]^c[1376]^c[1422]^c[1386]^c[1387]^c[1539]^c[1480]^c[1552]^c[1553]^c[1549]^c[1606]^c[1656]^c[1657]^c[1674]^c[1675]^c[1746]^c[1751]^c[1752]^c[1697]^c[1698]^c[1710]^c[1906]^c[1856]^c[1803]^c[1804]^c[1988]^c[1924]^c[1970]^c[1971]^c[2098]^c[2106]^c[2107]^c[2042]^c[2043]^c[2231]^c[2255]^c[2256]^c[2245]^c[2246]^c[2341]^c[2294]^c[2317]^c[2318]^c[2476]^c[2480]^c[2481]^c[2422]^c[2423]^c[2628]^c[2587]^c[2589]^c[2590]; //row: 33 d[i2+33*Zc]=c[198]^c[251]^c[1371]^c[2584]; //row: 34 d[i2+34*Zc]=c[40]^c[956]^c[1821]^c[2099]; //row: 35 d[i2+35*Zc]=c[114]^c[75]^c[48]^c[107]^c[206]^c[223]^c[122]^c[230]^c[345]^c[335]^c[324]^c[473]^c[475]^c[381]^c[560]^c[490]^c[559]^c[663]^c[707]^c[695]^c[782]^c[816]^c[742]^c[773]^c[911]^c[878]^c[885]^c[991]^c[1031]^c[1035]^c[1112]^c[1115]^c[1083]^c[1284]^c[1247]^c[1300]^c[1384]^c[1430]^c[1395]^c[1547]^c[1488]^c[1441]^c[1464]^c[1614]^c[1665]^c[1563]^c[1754]^c[1760]^c[1706]^c[1914]^c[1864]^c[1812]^c[1996]^c[1932]^c[1979]^c[2106]^c[2115]^c[2051]^c[2239]^c[2264]^c[2254]^c[2349]^c[2302]^c[2326]^c[2484]^c[2489]^c[2431]^c[2636]^c[2595]^c[2598]; //row: 36 d[i2+36*Zc]=c[10]^c[1766]^c[1841]^c[2259]; //row: 37 d[i2+37*Zc]=c[55]^c[56]^c[17]^c[110]^c[49]^c[147]^c[148]^c[165]^c[184]^c[178]^c[286]^c[287]^c[277]^c[266]^c[414]^c[415]^c[417]^c[443]^c[502]^c[552]^c[501]^c[604]^c[605]^c[649]^c[637]^c[723]^c[724]^c[758]^c[804]^c[853]^c[940]^c[947]^c[1053]^c[973]^c[977]^c[1173]^c[1174]^c[1177]^c[1145]^c[1225]^c[1226]^c[1309]^c[1242]^c[1325]^c[1326]^c[1372]^c[1337]^c[1488]^c[1489]^c[1550]^c[1503]^c[1675]^c[1676]^c[1607]^c[1625]^c[1643]^c[1696]^c[1702]^c[1768]^c[1855]^c[1856]^c[1806]^c[1874]^c[1937]^c[1938]^c[1994]^c[1921]^c[2048]^c[2057]^c[2113]^c[2180]^c[2181]^c[2206]^c[2196]^c[2290]^c[2291]^c[2364]^c[2388]^c[2425]^c[2426]^c[2431]^c[2493]^c[2577]^c[2578]^c[2537]^c[2540]; //row: 38 d[i2+38*Zc]=c[0]^c[1169]^c[1225]^c[1459]; //row: 39 d[i2+39*Zc]=c[234]^c[427]^c[887]^c[2331]; //row: 40 d[i2+40*Zc]=c[3]^c[1062]^c[2069]; //row: 41 d[i2+41*Zc]=c[172]^c[428]^c[1174]^c[2183]; //row: 42 d[i2+42*Zc]=c[86]^c[47]^c[19]^c[20]^c[78]^c[79]^c[101]^c[178]^c[194]^c[195]^c[213]^c[214]^c[317]^c[307]^c[295]^c[296]^c[445]^c[447]^c[472]^c[473]^c[532]^c[581]^c[582]^c[530]^c[531]^c[529]^c[635]^c[679]^c[666]^c[667]^c[754]^c[787]^c[788]^c[833]^c[834]^c[883]^c[849]^c[850]^c[856]^c[857]^c[963]^c[1002]^c[1003]^c[1006]^c[1007]^c[1084]^c[1087]^c[1174]^c[1175]^c[1256]^c[1218]^c[1219]^c[1271]^c[1272]^c[1356]^c[1402]^c[1366]^c[1367]^c[1519]^c[1460]^c[1532]^c[1533]^c[1586]^c[1636]^c[1637]^c[1654]^c[1655]^c[1726]^c[1731]^c[1732]^c[1797]^c[1798]^c[1886]^c[1836]^c[1903]^c[1904]^c[1968]^c[2024]^c[1950]^c[1951]^c[2078]^c[2086]^c[2087]^c[2142]^c[2143]^c[2211]^c[2235]^c[2236]^c[2225]^c[2226]^c[2321]^c[2394]^c[2297]^c[2298]^c[2456]^c[2460]^c[2461]^c[2402]^c[2403]^c[2608]^c[2567]^c[2569]^c[2570]; //row: 43 d[i2+43*Zc]=c[20]^c[101]^c[74]^c[12]^c[13]^c[232]^c[129]^c[147]^c[148]^c[141]^c[251]^c[241]^c[350]^c[379]^c[381]^c[406]^c[407]^c[586]^c[516]^c[584]^c[585]^c[689]^c[613]^c[601]^c[808]^c[722]^c[767]^c[768]^c[937]^c[904]^c[910]^c[911]^c[1017]^c[1057]^c[1060]^c[1061]^c[1138]^c[1141]^c[1109]^c[1310]^c[1273]^c[1205]^c[1206]^c[1410]^c[1336]^c[1420]^c[1421]^c[1453]^c[1514]^c[1466]^c[1467]^c[1640]^c[1571]^c[1588]^c[1589]^c[1780]^c[1786]^c[1731]^c[1732]^c[1820]^c[1890]^c[1838]^c[2022]^c[1958]^c[2004]^c[2005]^c[1926]^c[2132]^c[2141]^c[2076]^c[2077]^c[2265]^c[2170]^c[2279]^c[2160]^c[2208]^c[2375]^c[2328]^c[2352]^c[2510]^c[2515]^c[2456]^c[2457]^c[2542]^c[2621]^c[2623]^c[2624]; //row: 44 d[i2+44*Zc]=c[42]^c[3]^c[96]^c[35]^c[70]^c[134]^c[151]^c[170]^c[273]^c[263]^c[252]^c[401]^c[403]^c[429]^c[488]^c[538]^c[487]^c[711]^c[635]^c[623]^c[830]^c[744]^c[790]^c[959]^c[926]^c[933]^c[930]^c[1039]^c[1079]^c[963]^c[1160]^c[1163]^c[1131]^c[1146]^c[1212]^c[1295]^c[1228]^c[1432]^c[1358]^c[1323]^c[1475]^c[1536]^c[1489]^c[1662]^c[1593]^c[1611]^c[1682]^c[1688]^c[1754]^c[1842]^c[1912]^c[1860]^c[1924]^c[1980]^c[2027]^c[2154]^c[2043]^c[2099]^c[2167]^c[2192]^c[2182]^c[2397]^c[2350]^c[2374]^c[2412]^c[2417]^c[2479]^c[2564]^c[2523]^c[2526]; //row: 45 d[i2+45*Zc]=c[176]^c[833]^c[1292]; } break; case 128: for (i2=0; i2 < Zc; i2++) { c2=&c[i2]; // calculate each row in base graph //row: 0 d[i2+0*Zc]=c2[122]^c2[2]^c2[106]^c2[121]^c2[325]^c2[367]^c2[345]^c2[610]^c2[623]^c2[569]^c2[799]^c2[885]^c2[852]^c2[1148]^c2[1087]^c2[1044]^c2[1380]^c2[1351]^c2[1397]^c2[1546]^c2[1629]^c2[1558]^c2[1886]^c2[1893]^c2[1795]^c2[2152]^c2[2097]^c2[2163]^c2[2363]^c2[2349]^c2[2399]^c2[2661]^c2[2599]^c2[2568]^c2[2926]^c2[2908]^c2[2902]^c2[3135]^c2[3174]^c2[3190]^c2[3337]^c2[3342]^c2[3419]^c2[3693]^c2[3681]^c2[3667]^c2[3907]^c2[3844]^c2[3937]^c2[4119]^c2[4110]^c2[4208]^c2[4379]^c2[4469]^c2[4428]^c2[4670]^c2[4685]^c2[4724]^c2[4899]^c2[4991]^c2[4987]^c2[5231]^c2[5237]^c2[5136]^c2[5407]^c2[5404]^c2[5388]; //row: 1 d[i2+1*Zc]=c2[122]^c2[123]^c2[3]^c2[107]^c2[122]^c2[325]^c2[326]^c2[368]^c2[346]^c2[610]^c2[611]^c2[624]^c2[570]^c2[799]^c2[800]^c2[886]^c2[853]^c2[1149]^c2[1088]^c2[1045]^c2[1380]^c2[1381]^c2[1352]^c2[1398]^c2[1546]^c2[1547]^c2[1630]^c2[1559]^c2[1887]^c2[1894]^c2[1796]^c2[2153]^c2[2098]^c2[2164]^c2[2363]^c2[2364]^c2[2350]^c2[2400]^c2[2661]^c2[2662]^c2[2600]^c2[2569]^c2[2926]^c2[2927]^c2[2909]^c2[2903]^c2[3135]^c2[3136]^c2[3175]^c2[3191]^c2[3337]^c2[3338]^c2[3343]^c2[3420]^c2[3694]^c2[3682]^c2[3668]^c2[3907]^c2[3908]^c2[3845]^c2[3938]^c2[4119]^c2[4120]^c2[4111]^c2[4209]^c2[4380]^c2[4470]^c2[4429]^c2[4670]^c2[4671]^c2[4686]^c2[4725]^c2[4899]^c2[4900]^c2[4864]^c2[4988]^c2[5231]^c2[5232]^c2[5238]^c2[5137]^c2[5407]^c2[5408]^c2[5405]^c2[5389]; //row: 2 d[i2+2*Zc]=c2[123]^c2[3]^c2[106]^c2[107]^c2[121]^c2[122]^c2[326]^c2[367]^c2[368]^c2[345]^c2[346]^c2[611]^c2[624]^c2[569]^c2[570]^c2[800]^c2[886]^c2[852]^c2[853]^c2[1149]^c2[1087]^c2[1088]^c2[1044]^c2[1045]^c2[1381]^c2[1352]^c2[1397]^c2[1398]^c2[1547]^c2[1629]^c2[1630]^c2[1558]^c2[1559]^c2[1887]^c2[1893]^c2[1894]^c2[1795]^c2[1796]^c2[2153]^c2[2097]^c2[2098]^c2[2163]^c2[2164]^c2[2364]^c2[2350]^c2[2399]^c2[2400]^c2[2662]^c2[2599]^c2[2600]^c2[2568]^c2[2569]^c2[2927]^c2[2909]^c2[2902]^c2[2903]^c2[3136]^c2[3175]^c2[3190]^c2[3191]^c2[3338]^c2[3342]^c2[3343]^c2[3419]^c2[3420]^c2[3694]^c2[3681]^c2[3682]^c2[3667]^c2[3668]^c2[3908]^c2[3845]^c2[3937]^c2[3938]^c2[4120]^c2[4111]^c2[4208]^c2[4209]^c2[4380]^c2[4469]^c2[4470]^c2[4428]^c2[4429]^c2[4671]^c2[4685]^c2[4686]^c2[4724]^c2[4725]^c2[4900]^c2[4864]^c2[4987]^c2[4988]^c2[5232]^c2[5237]^c2[5238]^c2[5136]^c2[5137]^c2[5408]^c2[5405]^c2[5388]^c2[5389]; //row: 3 d[i2+3*Zc]=c2[123]^c2[3]^c2[107]^c2[121]^c2[122]^c2[326]^c2[368]^c2[345]^c2[346]^c2[611]^c2[624]^c2[570]^c2[800]^c2[886]^c2[852]^c2[853]^c2[1149]^c2[1088]^c2[1044]^c2[1045]^c2[1381]^c2[1352]^c2[1398]^c2[1547]^c2[1630]^c2[1558]^c2[1559]^c2[1887]^c2[1894]^c2[1795]^c2[1796]^c2[2153]^c2[2098]^c2[2163]^c2[2164]^c2[2364]^c2[2350]^c2[2400]^c2[2662]^c2[2600]^c2[2568]^c2[2569]^c2[2927]^c2[2909]^c2[2902]^c2[2903]^c2[3136]^c2[3175]^c2[3190]^c2[3191]^c2[3338]^c2[3343]^c2[3419]^c2[3420]^c2[3694]^c2[3682]^c2[3667]^c2[3668]^c2[3908]^c2[3845]^c2[3938]^c2[4120]^c2[4111]^c2[4208]^c2[4209]^c2[4380]^c2[4470]^c2[4428]^c2[4429]^c2[4671]^c2[4686]^c2[4724]^c2[4725]^c2[4900]^c2[4864]^c2[4988]^c2[5232]^c2[5238]^c2[5136]^c2[5137]^c2[5408]^c2[5405]^c2[5388]^c2[5389]; //row: 4 d[i2+4*Zc]=c2[29]^c2[358]; //row: 5 d[i2+5*Zc]=c2[109]^c2[117]^c2[93]^c2[108]^c2[77]^c2[312]^c2[354]^c2[332]^c2[364]^c2[597]^c2[610]^c2[556]^c2[786]^c2[872]^c2[839]^c2[834]^c2[1135]^c2[1074]^c2[1031]^c2[1367]^c2[1338]^c2[1384]^c2[1661]^c2[1616]^c2[1545]^c2[1873]^c2[1880]^c2[1910]^c2[2139]^c2[2084]^c2[2150]^c2[2350]^c2[2336]^c2[2386]^c2[2648]^c2[2586]^c2[2683]^c2[2913]^c2[2895]^c2[2889]^c2[3122]^c2[3161]^c2[3177]^c2[3175]^c2[3452]^c2[3329]^c2[3406]^c2[3680]^c2[3668]^c2[3654]^c2[3894]^c2[3959]^c2[3924]^c2[4106]^c2[4097]^c2[4195]^c2[4124]^c2[4366]^c2[4456]^c2[4415]^c2[4657]^c2[4672]^c2[4711]^c2[4886]^c2[4978]^c2[4974]^c2[5218]^c2[5224]^c2[5123]^c2[5394]^c2[5391]^c2[5503]^c2[5499]; //row: 6 d[i2+6*Zc]=c2[55]^c2[1558]^c2[2588]^c2[2883]^c2[3444]^c2[4363]^c2[4637]^c2[5203]; //row: 7 d[i2+7*Zc]=c2[92]^c2[300]^c2[1055]^c2[1823]^c2[2087]^c2[3688]; //row: 8 d[i2+8*Zc]=c2[107]^c2[85]^c2[115]^c2[93]^c2[91]^c2[68]^c2[69]^c2[106]^c2[83]^c2[84]^c2[112]^c2[310]^c2[288]^c2[352]^c2[329]^c2[330]^c2[330]^c2[307]^c2[308]^c2[260]^c2[595]^c2[573]^c2[608]^c2[586]^c2[554]^c2[531]^c2[532]^c2[784]^c2[890]^c2[870]^c2[848]^c2[837]^c2[814]^c2[815]^c2[775]^c2[1133]^c2[1111]^c2[1072]^c2[1049]^c2[1050]^c2[1029]^c2[1134]^c2[1135]^c2[1365]^c2[1343]^c2[1336]^c2[1314]^c2[1382]^c2[1359]^c2[1360]^c2[1659]^c2[1637]^c2[1614]^c2[1591]^c2[1592]^c2[1543]^c2[1648]^c2[1649]^c2[1871]^c2[1849]^c2[1878]^c2[1855]^c2[1856]^c2[1908]^c2[1885]^c2[1886]^c2[2137]^c2[2115]^c2[2082]^c2[2059]^c2[2060]^c2[2148]^c2[2125]^c2[2126]^c2[2348]^c2[2326]^c2[2334]^c2[2312]^c2[2384]^c2[2361]^c2[2362]^c2[2646]^c2[2624]^c2[2584]^c2[2561]^c2[2562]^c2[2681]^c2[2658]^c2[2659]^c2[2911]^c2[2889]^c2[2893]^c2[2871]^c2[2887]^c2[2864]^c2[2865]^c2[3120]^c2[3098]^c2[3159]^c2[3137]^c2[3175]^c2[3152]^c2[3153]^c2[3155]^c2[3450]^c2[3428]^c2[3455]^c2[3432]^c2[3433]^c2[3404]^c2[3381]^c2[3382]^c2[3678]^c2[3656]^c2[3666]^c2[3643]^c2[3644]^c2[3652]^c2[3629]^c2[3630]^c2[3892]^c2[3870]^c2[3957]^c2[3935]^c2[3922]^c2[3899]^c2[3900]^c2[4104]^c2[4210]^c2[4223]^c2[4201]^c2[4193]^c2[4170]^c2[4171]^c2[4198]^c2[4364]^c2[4470]^c2[4454]^c2[4431]^c2[4432]^c2[4413]^c2[4390]^c2[4391]^c2[4655]^c2[4633]^c2[4670]^c2[4647]^c2[4648]^c2[4709]^c2[4686]^c2[4687]^c2[4884]^c2[4990]^c2[4976]^c2[4954]^c2[4972]^c2[4949]^c2[4950]^c2[4900]^c2[5216]^c2[5194]^c2[5222]^c2[5199]^c2[5200]^c2[5121]^c2[5226]^c2[5227]^c2[5392]^c2[5498]^c2[5389]^c2[5495]^c2[5501]^c2[5478]^c2[5479]^c2[5485]; //row: 9 d[i2+9*Zc]=c2[103]^c2[310]^c2[2669]^c2[2837]^c2[3342]^c2[4366]^c2[4669]^c2[5208]; //row: 10 d[i2+10*Zc]=c2[354]^c2[533]^c2[1063]^c2[1824]^c2[2097]^c2[3642]; //row: 11 d[i2+11*Zc]=c2[118]^c2[16]^c2[17]^c2[126]^c2[25]^c2[102]^c2[1]^c2[117]^c2[16]^c2[77]^c2[321]^c2[347]^c2[348]^c2[363]^c2[262]^c2[341]^c2[368]^c2[297]^c2[606]^c2[632]^c2[633]^c2[619]^c2[518]^c2[565]^c2[592]^c2[795]^c2[821]^c2[822]^c2[881]^c2[780]^c2[848]^c2[875]^c2[1144]^c2[1043]^c2[1083]^c2[1110]^c2[1040]^c2[1067]^c2[1376]^c2[1402]^c2[1403]^c2[1347]^c2[1374]^c2[1393]^c2[1292]^c2[1542]^c2[1568]^c2[1569]^c2[1625]^c2[1652]^c2[1554]^c2[1581]^c2[1882]^c2[1909]^c2[1889]^c2[1916]^c2[1919]^c2[1818]^c2[2148]^c2[2175]^c2[2093]^c2[2120]^c2[2159]^c2[2058]^c2[2359]^c2[2385]^c2[2386]^c2[2345]^c2[2372]^c2[2395]^c2[2422]^c2[2657]^c2[2683]^c2[2684]^c2[2595]^c2[2622]^c2[2564]^c2[2591]^c2[2922]^c2[2820]^c2[2821]^c2[2904]^c2[2931]^c2[2898]^c2[2925]^c2[3131]^c2[3157]^c2[3158]^c2[3170]^c2[3197]^c2[3186]^c2[3085]^c2[3155]^c2[3333]^c2[3359]^c2[3360]^c2[3338]^c2[3365]^c2[3415]^c2[3442]^c2[3689]^c2[3588]^c2[3677]^c2[3704]^c2[3663]^c2[3690]^c2[3903]^c2[3929]^c2[3930]^c2[3840]^c2[3867]^c2[3933]^c2[3960]^c2[4115]^c2[4141]^c2[4142]^c2[4106]^c2[4133]^c2[4204]^c2[4103]^c2[4150]^c2[4375]^c2[4402]^c2[4465]^c2[4364]^c2[4424]^c2[4451]^c2[4666]^c2[4692]^c2[4693]^c2[4681]^c2[4708]^c2[4720]^c2[4619]^c2[4895]^c2[4921]^c2[4922]^c2[4987]^c2[4886]^c2[4983]^c2[4882]^c2[5227]^c2[5125]^c2[5126]^c2[5233]^c2[5132]^c2[5132]^c2[5159]^c2[5403]^c2[5429]^c2[5430]^c2[5400]^c2[5427]^c2[5384]^c2[5411]^c2[5454]; //row: 12 d[i2+12*Zc]=c2[32]^c2[298]^c2[2581]^c2[2848]^c2[3434]^c2[4615]; //row: 13 d[i2+13*Zc]=c2[56]^c2[57]^c2[65]^c2[41]^c2[56]^c2[49]^c2[259]^c2[260]^c2[302]^c2[280]^c2[544]^c2[545]^c2[558]^c2[632]^c2[861]^c2[862]^c2[820]^c2[787]^c2[888]^c2[1083]^c2[1150]^c2[1107]^c2[1314]^c2[1315]^c2[1286]^c2[1332]^c2[1608]^c2[1609]^c2[1564]^c2[1621]^c2[1821]^c2[1828]^c2[1858]^c2[1815]^c2[2087]^c2[2160]^c2[2098]^c2[2425]^c2[2426]^c2[2412]^c2[2334]^c2[2595]^c2[2596]^c2[2662]^c2[2631]^c2[2860]^c2[2861]^c2[2843]^c2[2837]^c2[3197]^c2[3198]^c2[3109]^c2[3125]^c2[3399]^c2[3400]^c2[3405]^c2[3354]^c2[3628]^c2[3616]^c2[3602]^c2[3841]^c2[3842]^c2[3907]^c2[3872]^c2[4181]^c2[4182]^c2[4173]^c2[4143]^c2[4442]^c2[4404]^c2[4363]^c2[4732]^c2[4733]^c2[4620]^c2[4659]^c2[4961]^c2[4962]^c2[4926]^c2[4922]^c2[5165]^c2[5166]^c2[5172]^c2[5199]^c2[5177]^c2[5469]^c2[5470]^c2[5467]^c2[5451]; //row: 14 d[i2+14*Zc]=c2[78]^c2[3127]^c2[3918]^c2[4223]^c2[4368]^c2[5477]; //row: 15 d[i2+15*Zc]=c2[46]^c2[54]^c2[30]^c2[44]^c2[45]^c2[40]^c2[377]^c2[291]^c2[268]^c2[269]^c2[352]^c2[534]^c2[547]^c2[621]^c2[851]^c2[809]^c2[775]^c2[776]^c2[1072]^c2[1139]^c2[1095]^c2[1096]^c2[1304]^c2[1403]^c2[1321]^c2[1598]^c2[1553]^c2[1609]^c2[1610]^c2[1810]^c2[1817]^c2[1846]^c2[1847]^c2[2076]^c2[2149]^c2[2086]^c2[2087]^c2[2415]^c2[2401]^c2[2323]^c2[2585]^c2[2651]^c2[2619]^c2[2620]^c2[2625]^c2[2850]^c2[2832]^c2[2825]^c2[2826]^c2[3187]^c2[3098]^c2[3113]^c2[3114]^c2[3389]^c2[3394]^c2[3342]^c2[3343]^c2[3391]^c2[3617]^c2[3605]^c2[3590]^c2[3591]^c2[3959]^c2[3896]^c2[3861]^c2[4171]^c2[4162]^c2[4131]^c2[4132]^c2[4431]^c2[4393]^c2[4479]^c2[4352]^c2[4722]^c2[4609]^c2[4647]^c2[4648]^c2[4683]^c2[4951]^c2[4915]^c2[4911]^c2[5155]^c2[5161]^c2[5187]^c2[5188]^c2[5459]^c2[5456]^c2[5439]^c2[5440]; //row: 16 d[i2+16*Zc]=c2[20]^c2[28]^c2[4]^c2[19]^c2[351]^c2[265]^c2[371]^c2[320]^c2[636]^c2[521]^c2[595]^c2[825]^c2[783]^c2[878]^c2[817]^c2[1046]^c2[1113]^c2[1070]^c2[1406]^c2[1377]^c2[1295]^c2[1572]^c2[1655]^c2[1584]^c2[1912]^c2[1919]^c2[1821]^c2[2050]^c2[2123]^c2[2061]^c2[2389]^c2[2375]^c2[2425]^c2[2687]^c2[2625]^c2[2594]^c2[2824]^c2[2934]^c2[2928]^c2[2865]^c2[3161]^c2[3072]^c2[3088]^c2[3363]^c2[3368]^c2[3445]^c2[3591]^c2[3707]^c2[3693]^c2[3933]^c2[3870]^c2[3963]^c2[4145]^c2[4136]^c2[4106]^c2[4405]^c2[4367]^c2[4454]^c2[4696]^c2[4711]^c2[4622]^c2[4925]^c2[4889]^c2[4885]^c2[5129]^c2[5135]^c2[5162]^c2[5171]^c2[5433]^c2[5430]^c2[5414]; //row: 17 d[i2+17*Zc]=c2[7]^c2[3620]^c2[4155]^c2[4353]^c2[5392]; //row: 18 d[i2+18*Zc]=c2[298]^c2[3177]^c2[3336]^c2[4635]^c2[4883]; //row: 19 d[i2+19*Zc]=c2[60]^c2[329]^c2[1864]^c2[2175]^c2[2656]; //row: 20 d[i2+20*Zc]=c2[26]^c2[34]^c2[10]^c2[25]^c2[23]^c2[357]^c2[271]^c2[377]^c2[514]^c2[527]^c2[601]^c2[831]^c2[789]^c2[884]^c2[826]^c2[1052]^c2[1119]^c2[1076]^c2[1284]^c2[1383]^c2[1301]^c2[1578]^c2[1661]^c2[1590]^c2[1918]^c2[1797]^c2[1827]^c2[2056]^c2[2129]^c2[2067]^c2[2395]^c2[2381]^c2[2431]^c2[2393]^c2[2565]^c2[2631]^c2[2600]^c2[2830]^c2[2940]^c2[2934]^c2[2863]^c2[3167]^c2[3078]^c2[3094]^c2[3369]^c2[3374]^c2[3451]^c2[3597]^c2[3585]^c2[3699]^c2[3939]^c2[3876]^c2[3841]^c2[4151]^c2[4142]^c2[4112]^c2[4411]^c2[4373]^c2[4460]^c2[4702]^c2[4717]^c2[4628]^c2[4931]^c2[4895]^c2[4891]^c2[5135]^c2[5141]^c2[5168]^c2[5439]^c2[5436]^c2[5420]; //row: 21 d[i2+21*Zc]=c2[377]^c2[1401]^c2[4205]^c2[5123]^c2[5419]; //row: 22 d[i2+22*Zc]=c2[64]^c2[3086]^c2[3388]^c2[4382]; //row: 23 d[i2+23*Zc]=c2[284]^c2[531]^c2[2602]^c2[4632]; //row: 24 d[i2+24*Zc]=c2[88]^c2[96]^c2[72]^c2[87]^c2[112]^c2[291]^c2[333]^c2[311]^c2[576]^c2[589]^c2[535]^c2[893]^c2[851]^c2[818]^c2[854]^c2[1114]^c2[1053]^c2[1138]^c2[1132]^c2[1346]^c2[1317]^c2[1363]^c2[1640]^c2[1595]^c2[1652]^c2[1852]^c2[1859]^c2[1889]^c2[2118]^c2[2063]^c2[2129]^c2[2329]^c2[2315]^c2[2365]^c2[2627]^c2[2565]^c2[2662]^c2[2892]^c2[2874]^c2[2868]^c2[2932]^c2[3101]^c2[3140]^c2[3156]^c2[3431]^c2[3436]^c2[3385]^c2[3659]^c2[3647]^c2[3633]^c2[3873]^c2[3938]^c2[3903]^c2[4213]^c2[4204]^c2[4174]^c2[4473]^c2[4435]^c2[4394]^c2[4636]^c2[4651]^c2[4690]^c2[4865]^c2[4957]^c2[4953]^c2[5197]^c2[5203]^c2[5230]^c2[5501]^c2[5498]^c2[5482]; //row: 25 d[i2+25*Zc]=c2[279]^c2[1544]^c2[1908]^c2[3638]; //row: 26 d[i2+26*Zc]=c2[67]^c2[627]^c2[1111]^c2[3901]; //row: 27 d[i2+27*Zc]=c2[281]^c2[1640]^c2[2114]; //row: 28 d[i2+28*Zc]=c2[0]^c2[1061]^c2[4917]^c2[5439]; //row: 29 d[i2+29*Zc]=c2[1]^c2[9]^c2[113]^c2[127]^c2[0]^c2[332]^c2[374]^c2[351]^c2[352]^c2[342]^c2[617]^c2[630]^c2[576]^c2[806]^c2[892]^c2[858]^c2[859]^c2[1027]^c2[1094]^c2[1050]^c2[1051]^c2[1387]^c2[1358]^c2[1404]^c2[1553]^c2[1636]^c2[1564]^c2[1565]^c2[1893]^c2[1900]^c2[1801]^c2[1802]^c2[2159]^c2[2104]^c2[2169]^c2[2170]^c2[2370]^c2[2356]^c2[2406]^c2[2668]^c2[2606]^c2[2574]^c2[2575]^c2[2933]^c2[2915]^c2[2908]^c2[2909]^c2[3142]^c2[3181]^c2[3196]^c2[3197]^c2[3344]^c2[3349]^c2[3425]^c2[3426]^c2[3700]^c2[3688]^c2[3673]^c2[3674]^c2[3692]^c2[3914]^c2[3851]^c2[3944]^c2[4126]^c2[4117]^c2[4214]^c2[4215]^c2[4386]^c2[4476]^c2[4434]^c2[4435]^c2[4677]^c2[4692]^c2[4730]^c2[4731]^c2[4692]^c2[4906]^c2[4870]^c2[4866]^c2[5238]^c2[5244]^c2[5142]^c2[5143]^c2[5414]^c2[5411]^c2[5394]^c2[5395]; //row: 30 d[i2+30*Zc]=c2[4]^c2[12]^c2[115]^c2[116]^c2[2]^c2[3]^c2[88]^c2[335]^c2[376]^c2[377]^c2[354]^c2[355]^c2[620]^c2[633]^c2[578]^c2[579]^c2[809]^c2[895]^c2[861]^c2[862]^c2[1030]^c2[1096]^c2[1097]^c2[1053]^c2[1054]^c2[1390]^c2[1361]^c2[1406]^c2[1407]^c2[1556]^c2[1638]^c2[1639]^c2[1567]^c2[1568]^c2[1896]^c2[1902]^c2[1903]^c2[1804]^c2[1805]^c2[2162]^c2[2106]^c2[2107]^c2[2172]^c2[2173]^c2[2373]^c2[2359]^c2[2408]^c2[2409]^c2[2671]^c2[2608]^c2[2609]^c2[2577]^c2[2578]^c2[2633]^c2[2936]^c2[2918]^c2[2911]^c2[2912]^c2[3145]^c2[3184]^c2[3199]^c2[3072]^c2[3347]^c2[3351]^c2[3352]^c2[3428]^c2[3429]^c2[3448]^c2[3703]^c2[3690]^c2[3691]^c2[3676]^c2[3677]^c2[3917]^c2[3854]^c2[3946]^c2[3947]^c2[4129]^c2[4120]^c2[4217]^c2[4218]^c2[4389]^c2[4478]^c2[4479]^c2[4437]^c2[4438]^c2[4680]^c2[4694]^c2[4695]^c2[4733]^c2[4734]^c2[4909]^c2[4873]^c2[4868]^c2[4869]^c2[5241]^c2[5246]^c2[5247]^c2[5145]^c2[5146]^c2[5417]^c2[5414]^c2[5397]^c2[5398]; //row: 31 d[i2+31*Zc]=c2[38]^c2[56]^c2[46]^c2[64]^c2[22]^c2[40]^c2[37]^c2[54]^c2[55]^c2[369]^c2[259]^c2[283]^c2[301]^c2[261]^c2[278]^c2[279]^c2[351]^c2[526]^c2[544]^c2[539]^c2[557]^c2[613]^c2[631]^c2[843]^c2[861]^c2[801]^c2[819]^c2[768]^c2[785]^c2[786]^c2[1064]^c2[1082]^c2[1131]^c2[1149]^c2[1088]^c2[1105]^c2[1106]^c2[1296]^c2[1314]^c2[1395]^c2[1285]^c2[1313]^c2[1331]^c2[1590]^c2[1608]^c2[1545]^c2[1563]^c2[1602]^c2[1619]^c2[1620]^c2[1802]^c2[1820]^c2[1809]^c2[1827]^c2[1839]^c2[1856]^c2[1857]^c2[1841]^c2[2068]^c2[2086]^c2[2141]^c2[2159]^c2[2079]^c2[2096]^c2[2097]^c2[2407]^c2[2425]^c2[2393]^c2[2411]^c2[2315]^c2[2333]^c2[2577]^c2[2595]^c2[2643]^c2[2661]^c2[2612]^c2[2629]^c2[2630]^c2[2842]^c2[2860]^c2[2824]^c2[2842]^c2[2818]^c2[2835]^c2[2836]^c2[3179]^c2[3197]^c2[3090]^c2[3108]^c2[3106]^c2[3123]^c2[3124]^c2[3381]^c2[3399]^c2[3386]^c2[3404]^c2[3335]^c2[3352]^c2[3353]^c2[3609]^c2[3627]^c2[3597]^c2[3615]^c2[3711]^c2[3600]^c2[3601]^c2[3951]^c2[3841]^c2[3888]^c2[3906]^c2[3853]^c2[3871]^c2[4163]^c2[4181]^c2[4154]^c2[4172]^c2[4124]^c2[4141]^c2[4142]^c2[4423]^c2[4441]^c2[4385]^c2[4403]^c2[4472]^c2[4361]^c2[4362]^c2[4714]^c2[4732]^c2[4729]^c2[4619]^c2[4640]^c2[4657]^c2[4658]^c2[4943]^c2[4961]^c2[4907]^c2[4925]^c2[4903]^c2[4921]^c2[5147]^c2[5165]^c2[5153]^c2[5171]^c2[5180]^c2[5197]^c2[5198]^c2[5451]^c2[5469]^c2[5448]^c2[5466]^c2[5432]^c2[5449]^c2[5450]; //row: 32 d[i2+32*Zc]=c2[116]^c2[124]^c2[99]^c2[100]^c2[114]^c2[115]^c2[93]^c2[319]^c2[360]^c2[361]^c2[338]^c2[339]^c2[604]^c2[617]^c2[562]^c2[563]^c2[793]^c2[879]^c2[845]^c2[846]^c2[1142]^c2[1080]^c2[1081]^c2[1037]^c2[1038]^c2[1374]^c2[1345]^c2[1390]^c2[1391]^c2[1540]^c2[1622]^c2[1623]^c2[1551]^c2[1552]^c2[1880]^c2[1886]^c2[1887]^c2[1916]^c2[1917]^c2[2146]^c2[2090]^c2[2091]^c2[2156]^c2[2157]^c2[2357]^c2[2343]^c2[2392]^c2[2393]^c2[2655]^c2[2592]^c2[2593]^c2[2561]^c2[2562]^c2[2920]^c2[2902]^c2[2895]^c2[2896]^c2[3129]^c2[3168]^c2[3183]^c2[3184]^c2[3184]^c2[3331]^c2[3335]^c2[3336]^c2[3412]^c2[3413]^c2[3687]^c2[3674]^c2[3675]^c2[3660]^c2[3661]^c2[3655]^c2[3901]^c2[3966]^c2[3930]^c2[3931]^c2[4113]^c2[4104]^c2[4201]^c2[4202]^c2[4373]^c2[4462]^c2[4463]^c2[4421]^c2[4422]^c2[4664]^c2[4678]^c2[4679]^c2[4717]^c2[4718]^c2[4893]^c2[4985]^c2[4980]^c2[4981]^c2[5225]^c2[5230]^c2[5231]^c2[5129]^c2[5130]^c2[5401]^c2[5398]^c2[5381]^c2[5382]; //row: 33 d[i2+33*Zc]=c2[258]^c2[571]^c2[2857]^c2[5459]; //row: 34 d[i2+34*Zc]=c2[127]^c2[1831]^c2[3876]^c2[4383]; //row: 35 d[i2+35*Zc]=c2[97]^c2[105]^c2[81]^c2[96]^c2[300]^c2[342]^c2[320]^c2[289]^c2[585]^c2[598]^c2[544]^c2[774]^c2[860]^c2[827]^c2[1123]^c2[1062]^c2[1147]^c2[1355]^c2[1326]^c2[1372]^c2[1649]^c2[1604]^c2[1661]^c2[1605]^c2[1861]^c2[1868]^c2[1898]^c2[2127]^c2[2072]^c2[2138]^c2[2338]^c2[2324]^c2[2374]^c2[2636]^c2[2574]^c2[2671]^c2[2901]^c2[2883]^c2[2877]^c2[3110]^c2[3149]^c2[3165]^c2[3151]^c2[3440]^c2[3445]^c2[3394]^c2[3668]^c2[3656]^c2[3642]^c2[3882]^c2[3947]^c2[3912]^c2[4222]^c2[4213]^c2[4183]^c2[4354]^c2[4444]^c2[4403]^c2[4645]^c2[4660]^c2[4699]^c2[4874]^c2[4966]^c2[4962]^c2[5206]^c2[5212]^c2[5239]^c2[5382]^c2[5379]^c2[5491]; //row: 36 d[i2+36*Zc]=c2[37]^c2[3689]^c2[3891]^c2[4728]; //row: 37 d[i2+37*Zc]=c2[116]^c2[117]^c2[125]^c2[101]^c2[116]^c2[319]^c2[320]^c2[362]^c2[340]^c2[326]^c2[604]^c2[605]^c2[618]^c2[564]^c2[793]^c2[794]^c2[880]^c2[847]^c2[1143]^c2[1082]^c2[1039]^c2[1374]^c2[1375]^c2[1346]^c2[1392]^c2[1540]^c2[1541]^c2[1624]^c2[1553]^c2[1881]^c2[1888]^c2[1918]^c2[2147]^c2[2092]^c2[2158]^c2[2357]^c2[2358]^c2[2344]^c2[2394]^c2[2655]^c2[2656]^c2[2594]^c2[2563]^c2[2920]^c2[2921]^c2[2903]^c2[2897]^c2[3129]^c2[3130]^c2[3169]^c2[3185]^c2[3331]^c2[3332]^c2[3337]^c2[3414]^c2[3420]^c2[3688]^c2[3676]^c2[3662]^c2[3901]^c2[3902]^c2[3967]^c2[3932]^c2[4113]^c2[4114]^c2[4105]^c2[4203]^c2[4374]^c2[4464]^c2[4423]^c2[4664]^c2[4665]^c2[4680]^c2[4719]^c2[4893]^c2[4894]^c2[4986]^c2[4982]^c2[5225]^c2[5226]^c2[5232]^c2[5131]^c2[5401]^c2[5402]^c2[5399]^c2[5383]; //row: 38 d[i2+38*Zc]=c2[39]^c2[2327]^c2[2589]^c2[3107]; //row: 39 d[i2+39*Zc]=c2[301]^c2[779]^c2[1813]^c2[4864]; //row: 40 d[i2+40*Zc]=c2[29]^c2[2057]^c2[4373]; //row: 41 d[i2+41*Zc]=c2[295]^c2[813]^c2[2315]^c2[4631]; //row: 42 d[i2+42*Zc]=c2[4]^c2[12]^c2[115]^c2[116]^c2[2]^c2[3]^c2[21]^c2[335]^c2[376]^c2[377]^c2[354]^c2[355]^c2[620]^c2[633]^c2[578]^c2[579]^c2[809]^c2[895]^c2[861]^c2[862]^c2[1030]^c2[1096]^c2[1097]^c2[1053]^c2[1054]^c2[1053]^c2[1390]^c2[1361]^c2[1406]^c2[1407]^c2[1556]^c2[1638]^c2[1639]^c2[1567]^c2[1568]^c2[1896]^c2[1902]^c2[1903]^c2[1804]^c2[1805]^c2[2162]^c2[2106]^c2[2107]^c2[2172]^c2[2173]^c2[2373]^c2[2359]^c2[2408]^c2[2409]^c2[2671]^c2[2608]^c2[2609]^c2[2577]^c2[2578]^c2[2936]^c2[2918]^c2[2911]^c2[2912]^c2[3145]^c2[3184]^c2[3199]^c2[3072]^c2[3347]^c2[3351]^c2[3352]^c2[3428]^c2[3429]^c2[3703]^c2[3690]^c2[3691]^c2[3676]^c2[3677]^c2[3917]^c2[3854]^c2[3946]^c2[3947]^c2[4129]^c2[4120]^c2[4217]^c2[4218]^c2[4389]^c2[4478]^c2[4479]^c2[4437]^c2[4438]^c2[4680]^c2[4694]^c2[4695]^c2[4733]^c2[4734]^c2[4909]^c2[4873]^c2[4868]^c2[4869]^c2[5241]^c2[5246]^c2[5247]^c2[5145]^c2[5146]^c2[5417]^c2[5414]^c2[5397]^c2[5398]; //row: 43 d[i2+43*Zc]=c2[6]^c2[14]^c2[118]^c2[4]^c2[5]^c2[337]^c2[379]^c2[356]^c2[357]^c2[279]^c2[622]^c2[635]^c2[581]^c2[811]^c2[769]^c2[863]^c2[864]^c2[1032]^c2[1099]^c2[1055]^c2[1056]^c2[1392]^c2[1363]^c2[1281]^c2[1558]^c2[1641]^c2[1569]^c2[1570]^c2[1898]^c2[1905]^c2[1806]^c2[1807]^c2[2164]^c2[2109]^c2[2174]^c2[2175]^c2[2375]^c2[2361]^c2[2411]^c2[2673]^c2[2611]^c2[2579]^c2[2580]^c2[2938]^c2[2920]^c2[2913]^c2[2914]^c2[3147]^c2[3186]^c2[3073]^c2[3074]^c2[3349]^c2[3354]^c2[3430]^c2[3431]^c2[3705]^c2[3693]^c2[3678]^c2[3679]^c2[3919]^c2[3856]^c2[3949]^c2[4131]^c2[4122]^c2[4219]^c2[4220]^c2[4131]^c2[4391]^c2[4353]^c2[4439]^c2[4440]^c2[4682]^c2[4697]^c2[4735]^c2[4608]^c2[4653]^c2[4911]^c2[4875]^c2[4871]^c2[5243]^c2[5121]^c2[5147]^c2[5148]^c2[5419]^c2[5416]^c2[5399]^c2[5400]; //row: 44 d[i2+44*Zc]=c2[39]^c2[47]^c2[23]^c2[38]^c2[11]^c2[370]^c2[284]^c2[262]^c2[527]^c2[540]^c2[614]^c2[844]^c2[802]^c2[769]^c2[1065]^c2[1132]^c2[1089]^c2[1297]^c2[1396]^c2[1314]^c2[1591]^c2[1546]^c2[1603]^c2[1803]^c2[1810]^c2[1840]^c2[1821]^c2[2069]^c2[2142]^c2[2080]^c2[2408]^c2[2394]^c2[2316]^c2[2339]^c2[2578]^c2[2644]^c2[2613]^c2[2843]^c2[2825]^c2[2819]^c2[3180]^c2[3091]^c2[3107]^c2[3382]^c2[3387]^c2[3336]^c2[3610]^c2[3598]^c2[3584]^c2[3952]^c2[3889]^c2[3854]^c2[4164]^c2[4155]^c2[4125]^c2[4424]^c2[4386]^c2[4473]^c2[4715]^c2[4730]^c2[4641]^c2[4944]^c2[4908]^c2[4904]^c2[5148]^c2[5154]^c2[5181]^c2[5452]^c2[5449]^c2[5433]; //row: 45 d[i2+45*Zc]=c2[277]^c2[1559]^c2[2599]; } break; case 144: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[66]^c[34]^c[113]^c[42]^c[197]^c[166]^c[144]^c[331]^c[305]^c[363]^c[473]^c[510]^c[453]^c[687]^c[708]^c[683]^c[794]^c[735]^c[818]^c[867]^c[921]^c[945]^c[1083]^c[1081]^c[1139]^c[1209]^c[1214]^c[1204]^c[1324]^c[1412]^c[1439]^c[1583]^c[1442]^c[1480]^c[1699]^c[1692]^c[1601]^c[1799]^c[1742]^c[1784]^c[1986]^c[1945]^c[1907]^c[2087]^c[2100]^c[2130]^c[2248]^c[2167]^c[2303]^c[2447]^c[2317]^c[2401]^c[2450]^c[2519]^c[2468]^c[2686]^c[2716]^c[2735]^c[2807]^c[2747]^c[2791]^c[2952]^c[2969]^c[2992]^c[3140]^c[3142]^c[3131]; //row: 1 d[i2+1*Zc]=c[66]^c[67]^c[35]^c[114]^c[43]^c[197]^c[198]^c[167]^c[145]^c[331]^c[332]^c[306]^c[364]^c[473]^c[474]^c[511]^c[454]^c[688]^c[709]^c[684]^c[794]^c[795]^c[736]^c[819]^c[867]^c[868]^c[922]^c[946]^c[1084]^c[1082]^c[1140]^c[1210]^c[1215]^c[1205]^c[1324]^c[1325]^c[1413]^c[1296]^c[1583]^c[1440]^c[1443]^c[1481]^c[1699]^c[1700]^c[1693]^c[1602]^c[1799]^c[1800]^c[1743]^c[1785]^c[1986]^c[1987]^c[1946]^c[1908]^c[2088]^c[2101]^c[2131]^c[2248]^c[2249]^c[2168]^c[2160]^c[2447]^c[2304]^c[2318]^c[2402]^c[2451]^c[2520]^c[2469]^c[2686]^c[2687]^c[2717]^c[2592]^c[2807]^c[2808]^c[2748]^c[2792]^c[2952]^c[2953]^c[2970]^c[2993]^c[3140]^c[3141]^c[3143]^c[3132]; //row: 2 d[i2+2*Zc]=c[67]^c[35]^c[113]^c[114]^c[42]^c[43]^c[198]^c[166]^c[167]^c[144]^c[145]^c[332]^c[306]^c[363]^c[364]^c[474]^c[511]^c[453]^c[454]^c[688]^c[708]^c[709]^c[683]^c[684]^c[795]^c[736]^c[818]^c[819]^c[868]^c[921]^c[922]^c[945]^c[946]^c[1084]^c[1081]^c[1082]^c[1139]^c[1140]^c[1210]^c[1214]^c[1215]^c[1204]^c[1205]^c[1325]^c[1413]^c[1439]^c[1296]^c[1440]^c[1442]^c[1443]^c[1480]^c[1481]^c[1700]^c[1693]^c[1601]^c[1602]^c[1800]^c[1743]^c[1784]^c[1785]^c[1987]^c[1945]^c[1946]^c[1907]^c[1908]^c[2088]^c[2100]^c[2101]^c[2130]^c[2131]^c[2249]^c[2168]^c[2303]^c[2160]^c[2304]^c[2318]^c[2401]^c[2402]^c[2451]^c[2519]^c[2520]^c[2468]^c[2469]^c[2687]^c[2716]^c[2717]^c[2735]^c[2592]^c[2808]^c[2748]^c[2791]^c[2792]^c[2953]^c[2969]^c[2970]^c[2992]^c[2993]^c[3141]^c[3143]^c[3131]^c[3132]; //row: 3 d[i2+3*Zc]=c[67]^c[35]^c[114]^c[42]^c[43]^c[198]^c[167]^c[144]^c[145]^c[332]^c[306]^c[364]^c[474]^c[511]^c[453]^c[454]^c[688]^c[709]^c[683]^c[684]^c[795]^c[736]^c[819]^c[868]^c[922]^c[945]^c[946]^c[1084]^c[1082]^c[1139]^c[1140]^c[1210]^c[1215]^c[1204]^c[1205]^c[1325]^c[1413]^c[1296]^c[1440]^c[1443]^c[1480]^c[1481]^c[1700]^c[1693]^c[1601]^c[1602]^c[1800]^c[1743]^c[1784]^c[1785]^c[1987]^c[1946]^c[1907]^c[1908]^c[2088]^c[2101]^c[2130]^c[2131]^c[2249]^c[2168]^c[2160]^c[2304]^c[2318]^c[2401]^c[2402]^c[2451]^c[2520]^c[2468]^c[2469]^c[2687]^c[2717]^c[2735]^c[2592]^c[2808]^c[2748]^c[2792]^c[2953]^c[2970]^c[2992]^c[2993]^c[3141]^c[3143]^c[3131]^c[3132]; //row: 4 d[i2+4*Zc]=c[101]^c[234]; //row: 5 d[i2+5*Zc]=c[66]^c[34]^c[113]^c[42]^c[116]^c[197]^c[166]^c[144]^c[180]^c[331]^c[305]^c[363]^c[473]^c[510]^c[453]^c[503]^c[687]^c[708]^c[683]^c[794]^c[735]^c[818]^c[867]^c[921]^c[945]^c[1083]^c[1081]^c[1139]^c[1209]^c[1214]^c[1204]^c[1324]^c[1412]^c[1439]^c[1583]^c[1442]^c[1480]^c[1699]^c[1692]^c[1601]^c[1799]^c[1742]^c[1784]^c[1866]^c[1986]^c[1945]^c[1907]^c[2087]^c[2100]^c[2130]^c[2248]^c[2167]^c[2303]^c[2447]^c[2317]^c[2401]^c[2413]^c[2450]^c[2519]^c[2468]^c[2686]^c[2716]^c[2735]^c[2807]^c[2747]^c[2791]^c[2952]^c[2969]^c[2992]^c[3140]^c[3142]^c[3131]^c[3102]; //row: 6 d[i2+6*Zc]=c[79]^c[1007]^c[1464]^c[1673]^c[1930]^c[2480]^c[2598]^c[2987]; //row: 7 d[i2+7*Zc]=c[24]^c[188]^c[585]^c[1047]^c[1255]^c[2035]; //row: 8 d[i2+8*Zc]=c[8]^c[121]^c[120]^c[89]^c[55]^c[23]^c[24]^c[128]^c[96]^c[97]^c[53]^c[283]^c[252]^c[252]^c[220]^c[221]^c[230]^c[198]^c[199]^c[287]^c[417]^c[386]^c[391]^c[360]^c[305]^c[417]^c[418]^c[559]^c[528]^c[452]^c[565]^c[539]^c[507]^c[508]^c[539]^c[629]^c[598]^c[650]^c[618]^c[619]^c[625]^c[593]^c[594]^c[736]^c[849]^c[821]^c[790]^c[760]^c[728]^c[729]^c[953]^c[922]^c[1007]^c[975]^c[976]^c[887]^c[999]^c[1000]^c[1025]^c[1138]^c[1023]^c[1135]^c[1136]^c[1081]^c[1049]^c[1050]^c[1295]^c[1264]^c[1156]^c[1268]^c[1269]^c[1290]^c[1258]^c[1259]^c[1410]^c[1379]^c[1354]^c[1323]^c[1381]^c[1349]^c[1350]^c[1525]^c[1494]^c[1528]^c[1496]^c[1497]^c[1566]^c[1534]^c[1535]^c[1641]^c[1610]^c[1634]^c[1603]^c[1687]^c[1655]^c[1656]^c[1741]^c[1854]^c[1828]^c[1797]^c[1870]^c[1838]^c[1839]^c[1768]^c[1928]^c[1897]^c[1887]^c[1999]^c[2000]^c[1993]^c[1961]^c[1962]^c[2029]^c[2142]^c[2042]^c[2154]^c[2155]^c[2072]^c[2040]^c[2041]^c[2190]^c[2303]^c[2253]^c[2222]^c[2245]^c[2213]^c[2214]^c[2389]^c[2358]^c[2403]^c[2372]^c[2343]^c[2311]^c[2312]^c[2401]^c[2536]^c[2505]^c[2461]^c[2573]^c[2574]^c[2554]^c[2522]^c[2523]^c[2628]^c[2597]^c[2658]^c[2626]^c[2627]^c[2677]^c[2645]^c[2646]^c[2749]^c[2862]^c[2833]^c[2802]^c[2877]^c[2845]^c[2846]^c[2781]^c[2894]^c[3007]^c[2911]^c[3023]^c[2880]^c[2934]^c[2902]^c[2903]^c[3082]^c[3051]^c[3084]^c[3053]^c[3073]^c[3041]^c[3042]^c[3038]; //row: 9 d[i2+9*Zc]=c[17]^c[158]^c[1532]^c[1717]^c[1916]^c[2579]^c[2667]^c[2944]; //row: 10 d[i2+10*Zc]=c[177]^c[288]^c[603]^c[1130]^c[1241]^c[2072]; //row: 11 d[i2+11*Zc]=c[105]^c[92]^c[93]^c[73]^c[61]^c[8]^c[140]^c[81]^c[69]^c[54]^c[236]^c[223]^c[224]^c[205]^c[193]^c[183]^c[171]^c[166]^c[370]^c[357]^c[358]^c[344]^c[332]^c[402]^c[390]^c[512]^c[499]^c[500]^c[549]^c[537]^c[492]^c[480]^c[582]^c[714]^c[603]^c[591]^c[578]^c[710]^c[833]^c[820]^c[821]^c[774]^c[762]^c[857]^c[845]^c[906]^c[893]^c[894]^c[960]^c[948]^c[984]^c[972]^c[1122]^c[1110]^c[1120]^c[1108]^c[1034]^c[1022]^c[1248]^c[1236]^c[1253]^c[1241]^c[1243]^c[1231]^c[1363]^c[1350]^c[1351]^c[1307]^c[1439]^c[1334]^c[1322]^c[1478]^c[1465]^c[1466]^c[1481]^c[1469]^c[1519]^c[1507]^c[1594]^c[1725]^c[1726]^c[1587]^c[1719]^c[1640]^c[1628]^c[1838]^c[1825]^c[1826]^c[1781]^c[1769]^c[1823]^c[1811]^c[1857]^c[1881]^c[2012]^c[2013]^c[1984]^c[1972]^c[1946]^c[1934]^c[2126]^c[2114]^c[2139]^c[2127]^c[2025]^c[2157]^c[2287]^c[2274]^c[2275]^c[2206]^c[2194]^c[2198]^c[2186]^c[2342]^c[2329]^c[2330]^c[2356]^c[2344]^c[2440]^c[2428]^c[2340]^c[2489]^c[2477]^c[2558]^c[2546]^c[2507]^c[2495]^c[2725]^c[2712]^c[2713]^c[2611]^c[2599]^c[2630]^c[2618]^c[2846]^c[2833]^c[2834]^c[2786]^c[2774]^c[2830]^c[2818]^c[2991]^c[2978]^c[2979]^c[3008]^c[2996]^c[2887]^c[3019]^c[3035]^c[3166]^c[3167]^c[3037]^c[3025]^c[3026]^c[3158]^c[3152]; //row: 12 d[i2+12*Zc]=c[80]^c[161]^c[1539]^c[1590]^c[1965]^c[2690]; //row: 13 d[i2+13*Zc]=c[102]^c[103]^c[71]^c[6]^c[79]^c[86]^c[233]^c[234]^c[203]^c[181]^c[367]^c[368]^c[342]^c[400]^c[509]^c[510]^c[547]^c[490]^c[575]^c[580]^c[601]^c[576]^c[830]^c[831]^c[772]^c[855]^c[903]^c[904]^c[958]^c[982]^c[1120]^c[1118]^c[1032]^c[1079]^c[1246]^c[1251]^c[1241]^c[1360]^c[1361]^c[1305]^c[1332]^c[1475]^c[1476]^c[1479]^c[1517]^c[1591]^c[1592]^c[1585]^c[1638]^c[1835]^c[1836]^c[1779]^c[1821]^c[1878]^c[1879]^c[1982]^c[1944]^c[2124]^c[2137]^c[2023]^c[2284]^c[2285]^c[2204]^c[2196]^c[2339]^c[2340]^c[2354]^c[2438]^c[2487]^c[2556]^c[2505]^c[2722]^c[2723]^c[2609]^c[2628]^c[2843]^c[2844]^c[2784]^c[2828]^c[2988]^c[2989]^c[3006]^c[2885]^c[2926]^c[3032]^c[3033]^c[3035]^c[3024]; //row: 14 d[i2+14*Zc]=c[143]^c[1769]^c[2268]^c[2319]^c[2591]^c[3102]; //row: 15 d[i2+15*Zc]=c[131]^c[99]^c[34]^c[106]^c[107]^c[25]^c[262]^c[231]^c[208]^c[209]^c[287]^c[396]^c[370]^c[428]^c[538]^c[575]^c[517]^c[518]^c[608]^c[629]^c[603]^c[604]^c[859]^c[800]^c[739]^c[932]^c[986]^c[865]^c[866]^c[1148]^c[1146]^c[1059]^c[1060]^c[1274]^c[1279]^c[1268]^c[1269]^c[1389]^c[1333]^c[1360]^c[1504]^c[1507]^c[1544]^c[1545]^c[1478]^c[1620]^c[1613]^c[1665]^c[1666]^c[1864]^c[1807]^c[1848]^c[1849]^c[1907]^c[2010]^c[1971]^c[1972]^c[1979]^c[2152]^c[2021]^c[2050]^c[2051]^c[2169]^c[2232]^c[2224]^c[2368]^c[2382]^c[2321]^c[2322]^c[2515]^c[2584]^c[2532]^c[2533]^c[2607]^c[2637]^c[2655]^c[2656]^c[2659]^c[2872]^c[2812]^c[2856]^c[3017]^c[2890]^c[2912]^c[2913]^c[3061]^c[3063]^c[3051]^c[3052]; //row: 16 d[i2+16*Zc]=c[66]^c[34]^c[113]^c[42]^c[197]^c[166]^c[144]^c[269]^c[331]^c[305]^c[363]^c[473]^c[510]^c[453]^c[444]^c[687]^c[708]^c[683]^c[794]^c[735]^c[818]^c[867]^c[921]^c[945]^c[1083]^c[1081]^c[1139]^c[1209]^c[1214]^c[1204]^c[1324]^c[1412]^c[1439]^c[1583]^c[1442]^c[1480]^c[1699]^c[1692]^c[1601]^c[1682]^c[1799]^c[1742]^c[1784]^c[1986]^c[1945]^c[1907]^c[2087]^c[2100]^c[2130]^c[2248]^c[2167]^c[2303]^c[2447]^c[2317]^c[2401]^c[2450]^c[2519]^c[2468]^c[2686]^c[2716]^c[2735]^c[2807]^c[2747]^c[2791]^c[2952]^c[2969]^c[2992]^c[2933]^c[3140]^c[3142]^c[3131]; //row: 17 d[i2+17*Zc]=c[8]^c[2152]^c[2447]^c[2591]^c[3041]; //row: 18 d[i2+18*Zc]=c[160]^c[1734]^c[2015]^c[2688]^c[2879]; //row: 19 d[i2+19*Zc]=c[143]^c[287]^c[1125]^c[1295]^c[1583]; //row: 20 d[i2+20*Zc]=c[6]^c[118]^c[53]^c[126]^c[120]^c[281]^c[250]^c[228]^c[415]^c[389]^c[303]^c[557]^c[450]^c[537]^c[512]^c[627]^c[648]^c[623]^c[734]^c[819]^c[758]^c[951]^c[1005]^c[885]^c[1023]^c[1021]^c[1079]^c[1293]^c[1154]^c[1288]^c[1408]^c[1352]^c[1379]^c[1385]^c[1523]^c[1526]^c[1564]^c[1639]^c[1632]^c[1685]^c[1727]^c[1739]^c[1826]^c[1868]^c[1926]^c[1885]^c[1991]^c[2027]^c[2040]^c[2070]^c[2188]^c[2251]^c[2243]^c[2387]^c[2401]^c[2341]^c[2534]^c[2459]^c[2552]^c[2626]^c[2656]^c[2675]^c[2747]^c[2831]^c[2875]^c[2892]^c[2909]^c[2932]^c[3080]^c[3082]^c[3071]; //row: 21 d[i2+21*Zc]=c[207]^c[765]^c[2425]^c[2888]^c[3041]; //row: 22 d[i2+22*Zc]=c[71]^c[1772]^c[1943]^c[2560]; //row: 23 d[i2+23*Zc]=c[179]^c[431]^c[1583]^c[2612]; //row: 24 d[i2+24*Zc]=c[66]^c[34]^c[113]^c[42]^c[91]^c[197]^c[166]^c[144]^c[331]^c[305]^c[363]^c[473]^c[510]^c[453]^c[486]^c[687]^c[708]^c[683]^c[719]^c[794]^c[735]^c[818]^c[867]^c[921]^c[945]^c[1083]^c[1081]^c[1139]^c[1209]^c[1214]^c[1204]^c[1324]^c[1412]^c[1439]^c[1583]^c[1442]^c[1480]^c[1699]^c[1692]^c[1601]^c[1705]^c[1799]^c[1742]^c[1784]^c[1986]^c[1945]^c[1907]^c[2087]^c[2100]^c[2130]^c[2248]^c[2167]^c[2303]^c[2447]^c[2317]^c[2401]^c[2450]^c[2519]^c[2468]^c[2686]^c[2716]^c[2735]^c[2807]^c[2747]^c[2791]^c[2952]^c[2969]^c[2992]^c[3140]^c[3142]^c[3131]; //row: 25 d[i2+25*Zc]=c[204]^c[1007]^c[1151]^c[2054]; //row: 26 d[i2+26*Zc]=c[143]^c[431]^c[719]^c[2292]; //row: 27 d[i2+27*Zc]=c[188]^c[899]^c[1223]; //row: 28 d[i2+28*Zc]=c[130]^c[719]^c[2746]^c[3085]; //row: 29 d[i2+29*Zc]=c[109]^c[77]^c[12]^c[84]^c[85]^c[240]^c[209]^c[186]^c[187]^c[287]^c[374]^c[348]^c[406]^c[516]^c[553]^c[495]^c[496]^c[586]^c[607]^c[581]^c[582]^c[837]^c[778]^c[861]^c[910]^c[964]^c[987]^c[988]^c[1126]^c[1124]^c[1037]^c[1038]^c[1252]^c[1257]^c[1246]^c[1247]^c[1367]^c[1311]^c[1338]^c[1482]^c[1485]^c[1522]^c[1523]^c[1598]^c[1591]^c[1643]^c[1644]^c[1842]^c[1785]^c[1826]^c[1827]^c[1885]^c[1988]^c[1949]^c[1950]^c[2130]^c[2143]^c[2028]^c[2029]^c[2051]^c[2291]^c[2210]^c[2202]^c[2346]^c[2360]^c[2443]^c[2444]^c[2493]^c[2562]^c[2510]^c[2511]^c[2729]^c[2615]^c[2633]^c[2634]^c[2735]^c[2850]^c[2790]^c[2834]^c[2995]^c[3012]^c[2890]^c[2891]^c[3039]^c[3041]^c[3029]^c[3030]; //row: 30 d[i2+30*Zc]=c[96]^c[64]^c[142]^c[143]^c[71]^c[72]^c[143]^c[227]^c[195]^c[196]^c[173]^c[174]^c[361]^c[335]^c[392]^c[393]^c[503]^c[540]^c[482]^c[483]^c[717]^c[593]^c[594]^c[712]^c[713]^c[824]^c[765]^c[847]^c[848]^c[897]^c[950]^c[951]^c[974]^c[975]^c[1113]^c[1110]^c[1111]^c[1024]^c[1025]^c[1239]^c[1243]^c[1244]^c[1233]^c[1234]^c[1354]^c[1298]^c[1324]^c[1325]^c[1469]^c[1471]^c[1472]^c[1509]^c[1510]^c[1529]^c[1585]^c[1722]^c[1630]^c[1631]^c[1829]^c[1772]^c[1813]^c[1814]^c[1872]^c[1974]^c[1975]^c[1936]^c[1937]^c[1979]^c[2117]^c[2129]^c[2130]^c[2159]^c[2016]^c[2278]^c[2197]^c[2188]^c[2189]^c[2333]^c[2347]^c[2430]^c[2431]^c[2480]^c[2548]^c[2549]^c[2497]^c[2498]^c[2716]^c[2601]^c[2602]^c[2620]^c[2621]^c[2837]^c[2777]^c[2820]^c[2821]^c[2982]^c[2998]^c[2999]^c[3021]^c[3022]^c[3026]^c[3028]^c[3160]^c[3161]; //row: 31 d[i2+31*Zc]=c[88]^c[86]^c[56]^c[54]^c[135]^c[133]^c[64]^c[61]^c[62]^c[219]^c[217]^c[188]^c[186]^c[166]^c[163]^c[164]^c[287]^c[353]^c[351]^c[327]^c[325]^c[385]^c[383]^c[495]^c[493]^c[532]^c[530]^c[475]^c[472]^c[473]^c[709]^c[707]^c[586]^c[584]^c[705]^c[702]^c[703]^c[816]^c[814]^c[757]^c[755]^c[840]^c[838]^c[889]^c[887]^c[943]^c[941]^c[967]^c[964]^c[965]^c[1105]^c[1103]^c[1103]^c[1101]^c[1017]^c[1014]^c[1015]^c[1151]^c[1231]^c[1229]^c[1236]^c[1234]^c[1226]^c[1223]^c[1224]^c[1346]^c[1344]^c[1434]^c[1432]^c[1317]^c[1315]^c[1461]^c[1459]^c[1464]^c[1462]^c[1502]^c[1499]^c[1500]^c[1721]^c[1719]^c[1714]^c[1712]^c[1623]^c[1620]^c[1621]^c[1821]^c[1819]^c[1764]^c[1762]^c[1806]^c[1803]^c[1804]^c[2008]^c[2006]^c[1967]^c[1965]^c[1929]^c[1926]^c[1927]^c[2109]^c[2107]^c[2122]^c[2120]^c[2152]^c[2149]^c[2150]^c[2270]^c[2268]^c[2189]^c[2187]^c[2181]^c[2179]^c[2325]^c[2323]^c[2339]^c[2337]^c[2423]^c[2420]^c[2421]^c[2472]^c[2470]^c[2541]^c[2539]^c[2490]^c[2487]^c[2488]^c[2708]^c[2706]^c[2594]^c[2592]^c[2613]^c[2610]^c[2611]^c[2829]^c[2827]^c[2769]^c[2767]^c[2813]^c[2811]^c[2974]^c[2972]^c[2991]^c[2989]^c[3014]^c[3011]^c[3012]^c[3162]^c[3160]^c[3164]^c[3162]^c[3153]^c[3150]^c[3151]; //row: 32 d[i2+32*Zc]=c[85]^c[53]^c[131]^c[132]^c[60]^c[61]^c[143]^c[216]^c[184]^c[185]^c[162]^c[163]^c[350]^c[324]^c[381]^c[382]^c[492]^c[529]^c[471]^c[472]^c[706]^c[582]^c[583]^c[701]^c[702]^c[813]^c[754]^c[836]^c[837]^c[886]^c[939]^c[940]^c[963]^c[964]^c[1102]^c[1099]^c[1100]^c[1013]^c[1014]^c[1228]^c[1232]^c[1233]^c[1222]^c[1223]^c[1343]^c[1431]^c[1313]^c[1314]^c[1458]^c[1460]^c[1461]^c[1498]^c[1499]^c[1718]^c[1711]^c[1619]^c[1620]^c[1818]^c[1761]^c[1802]^c[1803]^c[1794]^c[2005]^c[1963]^c[1964]^c[1925]^c[1926]^c[2106]^c[2118]^c[2119]^c[2148]^c[2149]^c[2051]^c[2267]^c[2186]^c[2177]^c[2178]^c[2322]^c[2336]^c[2419]^c[2420]^c[2469]^c[2537]^c[2538]^c[2486]^c[2487]^c[2705]^c[2734]^c[2735]^c[2609]^c[2610]^c[2826]^c[2766]^c[2809]^c[2810]^c[2971]^c[2987]^c[2988]^c[3010]^c[3011]^c[3159]^c[3161]^c[3149]^c[3150]; //row: 33 d[i2+33*Zc]=c[287]^c[431]^c[1659]^c[3041]; //row: 34 d[i2+34*Zc]=c[52]^c[1151]^c[2267]^c[2591]; //row: 35 d[i2+35*Zc]=c[127]^c[95]^c[30]^c[103]^c[258]^c[227]^c[205]^c[198]^c[392]^c[366]^c[424]^c[534]^c[571]^c[514]^c[604]^c[625]^c[600]^c[855]^c[796]^c[735]^c[928]^c[982]^c[1006]^c[997]^c[1144]^c[1142]^c[1056]^c[1270]^c[1275]^c[1265]^c[1385]^c[1329]^c[1356]^c[1500]^c[1503]^c[1541]^c[1616]^c[1609]^c[1662]^c[1860]^c[1803]^c[1845]^c[1871]^c[1903]^c[2006]^c[1968]^c[2148]^c[2017]^c[2047]^c[2165]^c[2228]^c[2220]^c[2364]^c[2378]^c[2318]^c[2511]^c[2580]^c[2529]^c[2603]^c[2633]^c[2652]^c[2868]^c[2808]^c[2852]^c[3013]^c[2886]^c[2909]^c[3057]^c[3059]^c[3048]; //row: 36 d[i2+36*Zc]=c[71]^c[2031]^c[2303]^c[2735]; //row: 37 d[i2+37*Zc]=c[66]^c[67]^c[35]^c[114]^c[43]^c[197]^c[198]^c[167]^c[145]^c[215]^c[331]^c[332]^c[306]^c[364]^c[473]^c[474]^c[511]^c[454]^c[688]^c[709]^c[684]^c[794]^c[795]^c[736]^c[819]^c[867]^c[868]^c[922]^c[946]^c[1084]^c[1082]^c[1140]^c[1210]^c[1215]^c[1205]^c[1324]^c[1325]^c[1413]^c[1296]^c[1583]^c[1440]^c[1443]^c[1481]^c[1699]^c[1700]^c[1693]^c[1602]^c[1799]^c[1800]^c[1743]^c[1785]^c[1986]^c[1987]^c[1946]^c[1908]^c[2015]^c[2088]^c[2101]^c[2131]^c[2248]^c[2249]^c[2168]^c[2160]^c[2447]^c[2304]^c[2318]^c[2402]^c[2451]^c[2520]^c[2469]^c[2686]^c[2687]^c[2717]^c[2592]^c[2807]^c[2808]^c[2748]^c[2792]^c[2952]^c[2953]^c[2970]^c[2993]^c[3140]^c[3141]^c[3143]^c[3132]; //row: 38 d[i2+38*Zc]=c[45]^c[1439]^c[1583]^c[1871]; //row: 39 d[i2+39*Zc]=c[152]^c[575]^c[1028]^c[2852]; //row: 40 d[i2+40*Zc]=c[71]^c[1295]^c[2449]; //row: 41 d[i2+41*Zc]=c[287]^c[575]^c[1439]^c[2630]; //row: 42 d[i2+42*Zc]=c[102]^c[70]^c[4]^c[5]^c[77]^c[78]^c[26]^c[233]^c[201]^c[202]^c[179]^c[180]^c[367]^c[341]^c[398]^c[399]^c[509]^c[546]^c[488]^c[489]^c[579]^c[599]^c[600]^c[718]^c[719]^c[719]^c[830]^c[771]^c[853]^c[854]^c[903]^c[956]^c[957]^c[980]^c[981]^c[1119]^c[1116]^c[1117]^c[1030]^c[1031]^c[1245]^c[1249]^c[1250]^c[1239]^c[1240]^c[1360]^c[1304]^c[1330]^c[1331]^c[1475]^c[1477]^c[1478]^c[1515]^c[1516]^c[1591]^c[1584]^c[1636]^c[1637]^c[1835]^c[1778]^c[1819]^c[1820]^c[1878]^c[1980]^c[1981]^c[1942]^c[1943]^c[2123]^c[2135]^c[2136]^c[2021]^c[2022]^c[2284]^c[2203]^c[2194]^c[2195]^c[2339]^c[2353]^c[2436]^c[2437]^c[2486]^c[2554]^c[2555]^c[2503]^c[2504]^c[2722]^c[2607]^c[2608]^c[2626]^c[2627]^c[2843]^c[2783]^c[2826]^c[2827]^c[2988]^c[3004]^c[3005]^c[2883]^c[2884]^c[3032]^c[3034]^c[3166]^c[3167]; //row: 43 d[i2+43*Zc]=c[49]^c[17]^c[96]^c[24]^c[25]^c[180]^c[149]^c[270]^c[271]^c[195]^c[314]^c[288]^c[346]^c[456]^c[493]^c[435]^c[436]^c[670]^c[691]^c[665]^c[666]^c[777]^c[862]^c[801]^c[994]^c[904]^c[927]^c[928]^c[1066]^c[1064]^c[1121]^c[1122]^c[1192]^c[1197]^c[1186]^c[1187]^c[1307]^c[1395]^c[1422]^c[1566]^c[1569]^c[1462]^c[1463]^c[1682]^c[1675]^c[1727]^c[1584]^c[1782]^c[1869]^c[1766]^c[1767]^c[1969]^c[1928]^c[1889]^c[1890]^c[2070]^c[2083]^c[2112]^c[2113]^c[2231]^c[2294]^c[2286]^c[2430]^c[2444]^c[2383]^c[2384]^c[2402]^c[2577]^c[2502]^c[2450]^c[2451]^c[2669]^c[2699]^c[2717]^c[2718]^c[2735]^c[2790]^c[2874]^c[2774]^c[2935]^c[2952]^c[2974]^c[2975]^c[3123]^c[3125]^c[3113]^c[3114]; //row: 44 d[i2+44*Zc]=c[123]^c[91]^c[26]^c[99]^c[17]^c[254]^c[223]^c[201]^c[388]^c[362]^c[420]^c[530]^c[567]^c[510]^c[600]^c[621]^c[596]^c[851]^c[792]^c[731]^c[924]^c[978]^c[1002]^c[1140]^c[1138]^c[1052]^c[1151]^c[1266]^c[1271]^c[1261]^c[1381]^c[1325]^c[1352]^c[1439]^c[1496]^c[1499]^c[1537]^c[1612]^c[1605]^c[1658]^c[1856]^c[1799]^c[1841]^c[1899]^c[2002]^c[1964]^c[2144]^c[2157]^c[2043]^c[2161]^c[2224]^c[2216]^c[2360]^c[2374]^c[2314]^c[2507]^c[2576]^c[2525]^c[2599]^c[2629]^c[2648]^c[2864]^c[2804]^c[2848]^c[3009]^c[2882]^c[2905]^c[3053]^c[3055]^c[3044]; //row: 45 d[i2+45*Zc]=c[167]^c[1007]^c[1583]; } break; case 160: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[72]^c[142]^c[67]^c[59]^c[174]^c[166]^c[207]^c[422]^c[453]^c[399]^c[528]^c[506]^c[509]^c[740]^c[759]^c[676]^c[879]^c[800]^c[837]^c[998]^c[1026]^c[1020]^c[1252]^c[1161]^c[1134]^c[1283]^c[1319]^c[1358]^c[1454]^c[1519]^c[1510]^c[1601]^c[1705]^c[1720]^c[1814]^c[1888]^c[1902]^c[1923]^c[2059]^c[2012]^c[2212]^c[2214]^c[2083]^c[2315]^c[2362]^c[2292]^c[2537]^c[2505]^c[2540]^c[2669]^c[2631]^c[2603]^c[2802]^c[2743]^c[2747]^c[2992]^c[2965]^c[2956]^c[3055]^c[3139]^c[3109]^c[3228]^c[3315]^c[3358]^c[3391]^c[3500]^c[3427]; //row: 1 d[i2+1*Zc]=c[72]^c[73]^c[143]^c[68]^c[60]^c[174]^c[175]^c[167]^c[208]^c[422]^c[423]^c[454]^c[400]^c[528]^c[529]^c[507]^c[510]^c[741]^c[760]^c[677]^c[879]^c[880]^c[801]^c[838]^c[998]^c[999]^c[1027]^c[1021]^c[1253]^c[1162]^c[1135]^c[1284]^c[1320]^c[1359]^c[1454]^c[1455]^c[1520]^c[1511]^c[1601]^c[1602]^c[1706]^c[1721]^c[1814]^c[1815]^c[1889]^c[1903]^c[1923]^c[1924]^c[2060]^c[2013]^c[2212]^c[2213]^c[2215]^c[2084]^c[2316]^c[2363]^c[2293]^c[2537]^c[2538]^c[2506]^c[2541]^c[2669]^c[2670]^c[2632]^c[2604]^c[2803]^c[2744]^c[2748]^c[2992]^c[2993]^c[2966]^c[2957]^c[3055]^c[3056]^c[3140]^c[3110]^c[3228]^c[3229]^c[3316]^c[3359]^c[3391]^c[3392]^c[3501]^c[3428]; //row: 2 d[i2+2*Zc]=c[73]^c[143]^c[67]^c[68]^c[59]^c[60]^c[175]^c[166]^c[167]^c[207]^c[208]^c[423]^c[454]^c[399]^c[400]^c[529]^c[507]^c[509]^c[510]^c[741]^c[759]^c[760]^c[676]^c[677]^c[880]^c[801]^c[837]^c[838]^c[999]^c[1026]^c[1027]^c[1020]^c[1021]^c[1253]^c[1161]^c[1162]^c[1134]^c[1135]^c[1284]^c[1319]^c[1320]^c[1358]^c[1359]^c[1455]^c[1520]^c[1510]^c[1511]^c[1602]^c[1705]^c[1706]^c[1720]^c[1721]^c[1815]^c[1889]^c[1902]^c[1903]^c[1924]^c[2060]^c[2012]^c[2013]^c[2213]^c[2214]^c[2215]^c[2083]^c[2084]^c[2316]^c[2362]^c[2363]^c[2292]^c[2293]^c[2538]^c[2506]^c[2540]^c[2541]^c[2670]^c[2632]^c[2603]^c[2604]^c[2803]^c[2743]^c[2744]^c[2747]^c[2748]^c[2993]^c[2965]^c[2966]^c[2956]^c[2957]^c[3056]^c[3140]^c[3109]^c[3110]^c[3229]^c[3315]^c[3316]^c[3358]^c[3359]^c[3392]^c[3501]^c[3427]^c[3428]; //row: 3 d[i2+3*Zc]=c[73]^c[143]^c[68]^c[59]^c[60]^c[175]^c[167]^c[207]^c[208]^c[423]^c[454]^c[400]^c[529]^c[507]^c[509]^c[510]^c[741]^c[760]^c[676]^c[677]^c[880]^c[801]^c[838]^c[999]^c[1027]^c[1020]^c[1021]^c[1253]^c[1162]^c[1134]^c[1135]^c[1284]^c[1320]^c[1358]^c[1359]^c[1455]^c[1520]^c[1511]^c[1602]^c[1706]^c[1720]^c[1721]^c[1815]^c[1889]^c[1902]^c[1903]^c[1924]^c[2060]^c[2012]^c[2013]^c[2213]^c[2215]^c[2083]^c[2084]^c[2316]^c[2363]^c[2292]^c[2293]^c[2538]^c[2506]^c[2541]^c[2670]^c[2632]^c[2603]^c[2604]^c[2803]^c[2744]^c[2747]^c[2748]^c[2993]^c[2966]^c[2956]^c[2957]^c[3056]^c[3140]^c[3110]^c[3229]^c[3316]^c[3358]^c[3359]^c[3392]^c[3501]^c[3427]^c[3428]; //row: 4 d[i2+4*Zc]=c[72]^c[204]; //row: 5 d[i2+5*Zc]=c[31]^c[101]^c[26]^c[18]^c[82]^c[293]^c[285]^c[166]^c[291]^c[381]^c[412]^c[358]^c[487]^c[625]^c[628]^c[529]^c[699]^c[718]^c[795]^c[838]^c[919]^c[956]^c[1117]^c[985]^c[979]^c[1211]^c[1120]^c[1253]^c[1402]^c[1438]^c[1317]^c[1573]^c[1478]^c[1469]^c[1720]^c[1664]^c[1679]^c[1773]^c[1847]^c[1861]^c[2042]^c[2018]^c[1971]^c[2077]^c[2171]^c[2173]^c[2202]^c[2274]^c[2321]^c[2251]^c[2496]^c[2464]^c[2499]^c[2628]^c[2590]^c[2562]^c[2600]^c[2761]^c[2862]^c[2866]^c[2951]^c[2924]^c[2915]^c[3174]^c[3098]^c[3068]^c[3347]^c[3274]^c[3317]^c[3510]^c[3459]^c[3386]^c[3466]; //row: 6 d[i2+6*Zc]=c[128]^c[980]^c[1732]^c[1772]^c[2151]^c[2861]^c[3017]^c[3274]; //row: 7 d[i2+7*Zc]=c[11]^c[247]^c[686]^c[1169]^c[1304]^c[2315]; //row: 8 d[i2+8*Zc]=c[157]^c[67]^c[67]^c[137]^c[152]^c[61]^c[62]^c[144]^c[53]^c[54]^c[134]^c[259]^c[169]^c[251]^c[160]^c[161]^c[292]^c[201]^c[202]^c[292]^c[347]^c[417]^c[378]^c[448]^c[324]^c[393]^c[394]^c[613]^c[523]^c[591]^c[501]^c[594]^c[503]^c[504]^c[609]^c[665]^c[735]^c[684]^c[753]^c[754]^c[761]^c[670]^c[671]^c[804]^c[874]^c[885]^c[955]^c[922]^c[831]^c[832]^c[1083]^c[993]^c[1111]^c[1020]^c[1021]^c[1105]^c[1014]^c[1015]^c[1177]^c[1247]^c[1246]^c[1155]^c[1156]^c[1219]^c[1128]^c[1129]^c[1368]^c[1438]^c[1404]^c[1313]^c[1314]^c[1283]^c[1352]^c[1353]^c[1539]^c[1449]^c[1444]^c[1514]^c[1595]^c[1504]^c[1505]^c[1686]^c[1756]^c[1630]^c[1699]^c[1700]^c[1645]^c[1714]^c[1715]^c[1899]^c[1809]^c[1813]^c[1883]^c[1827]^c[1896]^c[1897]^c[2008]^c[2078]^c[1984]^c[2054]^c[1937]^c[2006]^c[2007]^c[1990]^c[2137]^c[2207]^c[2139]^c[2208]^c[2209]^c[2168]^c[2237]^c[2238]^c[2240]^c[2310]^c[2287]^c[2356]^c[2357]^c[2377]^c[2286]^c[2287]^c[2462]^c[2532]^c[2430]^c[2500]^c[2465]^c[2534]^c[2535]^c[2594]^c[2664]^c[2716]^c[2626]^c[2688]^c[2597]^c[2598]^c[2695]^c[2727]^c[2797]^c[2828]^c[2737]^c[2738]^c[2832]^c[2741]^c[2742]^c[2917]^c[2987]^c[2890]^c[2959]^c[2960]^c[2881]^c[2950]^c[2951]^c[3140]^c[3050]^c[3064]^c[3134]^c[3194]^c[3103]^c[3104]^c[3149]^c[3313]^c[3223]^c[3240]^c[3309]^c[3310]^c[3283]^c[3352]^c[3353]^c[3476]^c[3386]^c[3425]^c[3495]^c[3512]^c[3421]^c[3422]^c[3468]; //row: 9 d[i2+9*Zc]=c[28]^c[243]^c[1635]^c[1885]^c[2230]^c[2826]^c[3014]^c[3248]; //row: 10 d[i2+10*Zc]=c[173]^c[399]^c[690]^c[1194]^c[1280]^c[2390]; //row: 11 d[i2+11*Zc]=c[115]^c[32]^c[33]^c[25]^c[103]^c[110]^c[28]^c[102]^c[20]^c[15]^c[217]^c[294]^c[295]^c[209]^c[287]^c[250]^c[168]^c[306]^c[465]^c[382]^c[383]^c[336]^c[414]^c[442]^c[360]^c[571]^c[488]^c[489]^c[549]^c[627]^c[552]^c[630]^c[783]^c[701]^c[642]^c[720]^c[719]^c[797]^c[922]^c[839]^c[840]^c[843]^c[921]^c[880]^c[958]^c[1041]^c[1118]^c[1119]^c[1069]^c[987]^c[1063]^c[981]^c[1135]^c[1213]^c[1204]^c[1122]^c[1177]^c[1255]^c[1326]^c[1404]^c[1362]^c[1280]^c[1401]^c[1319]^c[1497]^c[1574]^c[1575]^c[1562]^c[1480]^c[1553]^c[1471]^c[1644]^c[1721]^c[1722]^c[1748]^c[1666]^c[1603]^c[1681]^c[1857]^c[1774]^c[1775]^c[1771]^c[1849]^c[1785]^c[1863]^c[1966]^c[2043]^c[2044]^c[1942]^c[2020]^c[2055]^c[1973]^c[2049]^c[2095]^c[2172]^c[2173]^c[2097]^c[2175]^c[2126]^c[2204]^c[2358]^c[2276]^c[2245]^c[2323]^c[2335]^c[2253]^c[2420]^c[2497]^c[2498]^c[2548]^c[2466]^c[2423]^c[2501]^c[2712]^c[2629]^c[2630]^c[2674]^c[2592]^c[2646]^c[2564]^c[2688]^c[2845]^c[2763]^c[2786]^c[2864]^c[2790]^c[2868]^c[3035]^c[2952]^c[2953]^c[3008]^c[2926]^c[2999]^c[2917]^c[3098]^c[3175]^c[3176]^c[3182]^c[3100]^c[3152]^c[3070]^c[3271]^c[3348]^c[3349]^c[3358]^c[3276]^c[3241]^c[3319]^c[3434]^c[3511]^c[3512]^c[3383]^c[3461]^c[3470]^c[3388]^c[3376]; //row: 12 d[i2+12*Zc]=c[68]^c[234]^c[1608]^c[1807]^c[2184]^c[2931]; //row: 13 d[i2+13*Zc]=c[109]^c[110]^c[20]^c[105]^c[97]^c[38]^c[211]^c[212]^c[204]^c[245]^c[459]^c[460]^c[331]^c[437]^c[565]^c[566]^c[544]^c[547]^c[621]^c[778]^c[797]^c[714]^c[916]^c[917]^c[838]^c[875]^c[1035]^c[1036]^c[1064]^c[1058]^c[1130]^c[1199]^c[1172]^c[1262]^c[1321]^c[1357]^c[1396]^c[1491]^c[1492]^c[1557]^c[1548]^c[1638]^c[1639]^c[1743]^c[1758]^c[1851]^c[1852]^c[1766]^c[1780]^c[1960]^c[1961]^c[1937]^c[2050]^c[2089]^c[2090]^c[2092]^c[2121]^c[2353]^c[2240]^c[2330]^c[2414]^c[2415]^c[2543]^c[2418]^c[2706]^c[2707]^c[2669]^c[2641]^c[2840]^c[2781]^c[2785]^c[3029]^c[3030]^c[3003]^c[2994]^c[3092]^c[3093]^c[3177]^c[3147]^c[3265]^c[3266]^c[3353]^c[3236]^c[3359]^c[3428]^c[3429]^c[3378]^c[3465]; //row: 14 d[i2+14*Zc]=c[77]^c[2058]^c[2453]^c[2620]^c[2738]^c[3457]; //row: 15 d[i2+15*Zc]=c[124]^c[34]^c[119]^c[110]^c[111]^c[68]^c[226]^c[218]^c[258]^c[259]^c[289]^c[474]^c[345]^c[451]^c[580]^c[558]^c[560]^c[561]^c[792]^c[651]^c[727]^c[728]^c[931]^c[852]^c[889]^c[1050]^c[1078]^c[1071]^c[1072]^c[1144]^c[1213]^c[1185]^c[1186]^c[1335]^c[1371]^c[1409]^c[1410]^c[1506]^c[1571]^c[1562]^c[1653]^c[1757]^c[1611]^c[1612]^c[1659]^c[1866]^c[1780]^c[1793]^c[1794]^c[1975]^c[1951]^c[2063]^c[2064]^c[2104]^c[2106]^c[2134]^c[2135]^c[2209]^c[2367]^c[2254]^c[2343]^c[2344]^c[2429]^c[2557]^c[2432]^c[2561]^c[2683]^c[2654]^c[2655]^c[2854]^c[2795]^c[2798]^c[2799]^c[2884]^c[3017]^c[3007]^c[3008]^c[2903]^c[3107]^c[3191]^c[3161]^c[3280]^c[3207]^c[3249]^c[3250]^c[3443]^c[3392]^c[3478]^c[3479]; //row: 16 d[i2+16*Zc]=c[52]^c[122]^c[47]^c[39]^c[314]^c[306]^c[187]^c[228]^c[402]^c[433]^c[379]^c[508]^c[486]^c[489]^c[619]^c[720]^c[739]^c[656]^c[859]^c[940]^c[817]^c[978]^c[1006]^c[1000]^c[1232]^c[1141]^c[1274]^c[1423]^c[1299]^c[1338]^c[1594]^c[1499]^c[1490]^c[1741]^c[1685]^c[1700]^c[1794]^c[1868]^c[1882]^c[1804]^c[2063]^c[2039]^c[1992]^c[2192]^c[2194]^c[2223]^c[2295]^c[2342]^c[2272]^c[2517]^c[2485]^c[2520]^c[2649]^c[2611]^c[2583]^c[2782]^c[2723]^c[2727]^c[2972]^c[2945]^c[2936]^c[3195]^c[3119]^c[3089]^c[3208]^c[3295]^c[3338]^c[3314]^c[3371]^c[3480]^c[3407]; //row: 17 d[i2+17*Zc]=c[96]^c[2386]^c[2687]^c[2770]^c[3427]; //row: 18 d[i2+18*Zc]=c[259]^c[2053]^c[2210]^c[3020]^c[3174]; //row: 19 d[i2+19*Zc]=c[63]^c[180]^c[1220]^c[1389]^c[1640]; //row: 20 d[i2+20*Zc]=c[82]^c[152]^c[77]^c[69]^c[140]^c[184]^c[176]^c[217]^c[432]^c[463]^c[409]^c[538]^c[516]^c[519]^c[481]^c[750]^c[769]^c[686]^c[889]^c[810]^c[847]^c[1008]^c[1036]^c[1030]^c[1262]^c[1171]^c[1144]^c[1293]^c[1329]^c[1368]^c[1464]^c[1529]^c[1520]^c[1479]^c[1611]^c[1715]^c[1730]^c[1824]^c[1898]^c[1912]^c[1889]^c[1933]^c[2069]^c[2022]^c[2222]^c[2224]^c[2093]^c[2325]^c[2372]^c[2302]^c[2547]^c[2515]^c[2550]^c[2679]^c[2641]^c[2613]^c[2812]^c[2753]^c[2757]^c[3002]^c[2975]^c[2966]^c[3065]^c[3149]^c[3119]^c[3238]^c[3325]^c[3208]^c[3401]^c[3510]^c[3437]; //row: 21 d[i2+21*Zc]=c[238]^c[814]^c[2691]^c[3322]^c[3462]; //row: 22 d[i2+22*Zc]=c[16]^c[1939]^c[2134]^c[2875]; //row: 23 d[i2+23*Zc]=c[248]^c[369]^c[1732]^c[2984]; //row: 24 d[i2+24*Zc]=c[33]^c[103]^c[28]^c[20]^c[128]^c[295]^c[287]^c[168]^c[383]^c[414]^c[360]^c[489]^c[627]^c[630]^c[599]^c[701]^c[720]^c[797]^c[749]^c[840]^c[921]^c[958]^c[1119]^c[987]^c[981]^c[1213]^c[1122]^c[1255]^c[1404]^c[1280]^c[1319]^c[1575]^c[1480]^c[1471]^c[1722]^c[1666]^c[1681]^c[1775]^c[1849]^c[1863]^c[1786]^c[2044]^c[2020]^c[1973]^c[2173]^c[2175]^c[2204]^c[2276]^c[2323]^c[2253]^c[2498]^c[2466]^c[2501]^c[2630]^c[2592]^c[2564]^c[2763]^c[2864]^c[2868]^c[2953]^c[2926]^c[2917]^c[3176]^c[3100]^c[3070]^c[3349]^c[3276]^c[3319]^c[3512]^c[3461]^c[3388]; //row: 25 d[i2+25*Zc]=c[171]^c[1094]^c[1215]^c[2285]; //row: 26 d[i2+26*Zc]=c[109]^c[429]^c[797]^c[2466]; //row: 27 d[i2+27*Zc]=c[209]^c[988]^c[1423]; //row: 28 d[i2+28*Zc]=c[10]^c[772]^c[3089]^c[3433]; //row: 29 d[i2+29*Zc]=c[102]^c[12]^c[97]^c[88]^c[89]^c[204]^c[196]^c[236]^c[237]^c[186]^c[452]^c[323]^c[429]^c[558]^c[536]^c[538]^c[539]^c[770]^c[789]^c[705]^c[706]^c[909]^c[830]^c[867]^c[1028]^c[1056]^c[1049]^c[1050]^c[1122]^c[1191]^c[1163]^c[1164]^c[1313]^c[1349]^c[1387]^c[1388]^c[1484]^c[1549]^c[1540]^c[1631]^c[1735]^c[1749]^c[1750]^c[1844]^c[1918]^c[1771]^c[1772]^c[1953]^c[1929]^c[2041]^c[2042]^c[2082]^c[2084]^c[2112]^c[2113]^c[2345]^c[2392]^c[2321]^c[2322]^c[2387]^c[2407]^c[2535]^c[2410]^c[2699]^c[2661]^c[2632]^c[2633]^c[2832]^c[2773]^c[2776]^c[2777]^c[3022]^c[2995]^c[2985]^c[2986]^c[2996]^c[3085]^c[3169]^c[3139]^c[3258]^c[3345]^c[3227]^c[3228]^c[3421]^c[3370]^c[3456]^c[3457]; //row: 30 d[i2+30*Zc]=c[48]^c[118]^c[42]^c[43]^c[34]^c[35]^c[90]^c[310]^c[301]^c[302]^c[182]^c[183]^c[398]^c[429]^c[374]^c[375]^c[504]^c[482]^c[484]^c[485]^c[716]^c[734]^c[735]^c[651]^c[652]^c[855]^c[936]^c[812]^c[813]^c[974]^c[1001]^c[1002]^c[995]^c[996]^c[1228]^c[1136]^c[1137]^c[1269]^c[1270]^c[1419]^c[1294]^c[1295]^c[1333]^c[1334]^c[1590]^c[1495]^c[1485]^c[1486]^c[1737]^c[1680]^c[1681]^c[1695]^c[1696]^c[1622]^c[1790]^c[1864]^c[1877]^c[1878]^c[2059]^c[2035]^c[1987]^c[1988]^c[2188]^c[2189]^c[2190]^c[2218]^c[2219]^c[2184]^c[2291]^c[2337]^c[2338]^c[2267]^c[2268]^c[2513]^c[2481]^c[2515]^c[2516]^c[2645]^c[2607]^c[2578]^c[2579]^c[2778]^c[2878]^c[2879]^c[2722]^c[2723]^c[2968]^c[2940]^c[2941]^c[2931]^c[2932]^c[3191]^c[3115]^c[3084]^c[3085]^c[3204]^c[3290]^c[3291]^c[3333]^c[3334]^c[3367]^c[3476]^c[3402]^c[3403]; //row: 31 d[i2+31*Zc]=c[138]^c[75]^c[48]^c[145]^c[133]^c[70]^c[125]^c[61]^c[62]^c[240]^c[177]^c[232]^c[169]^c[273]^c[209]^c[210]^c[221]^c[328]^c[425]^c[359]^c[456]^c[465]^c[402]^c[594]^c[531]^c[572]^c[509]^c[575]^c[511]^c[512]^c[646]^c[743]^c[665]^c[762]^c[742]^c[678]^c[679]^c[945]^c[882]^c[866]^c[803]^c[903]^c[840]^c[1064]^c[1001]^c[1092]^c[1029]^c[1086]^c[1022]^c[1023]^c[1158]^c[1255]^c[1227]^c[1164]^c[1200]^c[1136]^c[1137]^c[1267]^c[1349]^c[1286]^c[1385]^c[1322]^c[1424]^c[1360]^c[1361]^c[1520]^c[1457]^c[1585]^c[1522]^c[1576]^c[1513]^c[1667]^c[1604]^c[1611]^c[1708]^c[1626]^c[1722]^c[1723]^c[1880]^c[1817]^c[1794]^c[1891]^c[1808]^c[1904]^c[1905]^c[1989]^c[1926]^c[1965]^c[2062]^c[2078]^c[2014]^c[2015]^c[2118]^c[2215]^c[2120]^c[2217]^c[2149]^c[2085]^c[2086]^c[2381]^c[2318]^c[2268]^c[2365]^c[2358]^c[2294]^c[2295]^c[2443]^c[2540]^c[2411]^c[2508]^c[2446]^c[2543]^c[2575]^c[2672]^c[2697]^c[2634]^c[2669]^c[2605]^c[2606]^c[2868]^c[2805]^c[2809]^c[2746]^c[2813]^c[2749]^c[2750]^c[2898]^c[2995]^c[3031]^c[2968]^c[3022]^c[2958]^c[2959]^c[3121]^c[3058]^c[3045]^c[3142]^c[3175]^c[3112]^c[3294]^c[3231]^c[3221]^c[3318]^c[3264]^c[3200]^c[3201]^c[3457]^c[3394]^c[3406]^c[3503]^c[3493]^c[3429]^c[3430]; //row: 32 d[i2+32*Zc]=c[130]^c[40]^c[124]^c[125]^c[116]^c[117]^c[49]^c[232]^c[223]^c[224]^c[264]^c[265]^c[320]^c[351]^c[456]^c[457]^c[586]^c[564]^c[566]^c[567]^c[798]^c[656]^c[657]^c[733]^c[734]^c[937]^c[858]^c[894]^c[895]^c[1056]^c[1083]^c[1084]^c[1077]^c[1078]^c[1150]^c[1218]^c[1219]^c[1191]^c[1192]^c[1341]^c[1376]^c[1377]^c[1415]^c[1416]^c[1512]^c[1577]^c[1567]^c[1568]^c[1659]^c[1602]^c[1603]^c[1617]^c[1618]^c[1872]^c[1786]^c[1799]^c[1800]^c[1981]^c[1957]^c[2069]^c[2070]^c[1941]^c[2110]^c[2111]^c[2112]^c[2140]^c[2141]^c[2373]^c[2259]^c[2260]^c[2349]^c[2350]^c[2350]^c[2435]^c[2403]^c[2437]^c[2438]^c[2567]^c[2689]^c[2660]^c[2661]^c[2860]^c[2800]^c[2801]^c[2804]^c[2805]^c[2890]^c[3022]^c[3023]^c[3013]^c[3014]^c[3113]^c[3197]^c[3166]^c[3167]^c[3286]^c[3212]^c[3213]^c[3255]^c[3256]^c[3449]^c[3398]^c[3484]^c[3485]; //row: 33 d[i2+33*Zc]=c[169]^c[339]^c[1899]^c[3392]; //row: 34 d[i2+34*Zc]=c[26]^c[1255]^c[2404]^c[2763]; //row: 35 d[i2+35*Zc]=c[37]^c[107]^c[32]^c[24]^c[299]^c[291]^c[172]^c[206]^c[387]^c[418]^c[364]^c[493]^c[631]^c[634]^c[705]^c[724]^c[641]^c[844]^c[925]^c[802]^c[963]^c[991]^c[985]^c[1117]^c[1217]^c[1126]^c[1259]^c[1408]^c[1284]^c[1323]^c[1579]^c[1484]^c[1475]^c[1726]^c[1670]^c[1685]^c[1779]^c[1853]^c[1867]^c[2048]^c[2024]^c[1977]^c[1974]^c[2177]^c[2179]^c[2208]^c[2280]^c[2327]^c[2257]^c[2502]^c[2470]^c[2505]^c[2634]^c[2596]^c[2568]^c[2767]^c[2868]^c[2872]^c[2957]^c[2930]^c[2921]^c[3180]^c[3104]^c[3074]^c[3353]^c[3280]^c[3323]^c[3516]^c[3465]^c[3392]; //row: 36 d[i2+36*Zc]=c[98]^c[2258]^c[2417]^c[3039]; //row: 37 d[i2+37*Zc]=c[27]^c[28]^c[98]^c[23]^c[15]^c[289]^c[290]^c[282]^c[163]^c[297]^c[377]^c[378]^c[409]^c[355]^c[483]^c[484]^c[622]^c[625]^c[696]^c[715]^c[792]^c[834]^c[835]^c[916]^c[953]^c[1113]^c[1114]^c[982]^c[976]^c[1208]^c[1277]^c[1250]^c[1399]^c[1435]^c[1314]^c[1569]^c[1570]^c[1475]^c[1466]^c[1716]^c[1717]^c[1661]^c[1676]^c[1769]^c[1770]^c[1844]^c[1858]^c[2038]^c[2039]^c[2015]^c[1968]^c[2167]^c[2168]^c[2170]^c[2199]^c[2094]^c[2271]^c[2318]^c[2248]^c[2492]^c[2493]^c[2461]^c[2496]^c[2624]^c[2625]^c[2587]^c[2719]^c[2758]^c[2859]^c[2863]^c[2947]^c[2948]^c[2921]^c[2912]^c[3170]^c[3171]^c[3095]^c[3065]^c[3343]^c[3344]^c[3271]^c[3314]^c[3506]^c[3507]^c[3456]^c[3383]; //row: 38 d[i2+38*Zc]=c[150]^c[1458]^c[1663]^c[1940]; //row: 39 d[i2+39*Zc]=c[261]^c[556]^c[1151]^c[3087]; //row: 40 d[i2+40*Zc]=c[31]^c[1359]^c[2756]; //row: 41 d[i2+41*Zc]=c[313]^c[526]^c[1563]^c[2926]; //row: 42 d[i2+42*Zc]=c[39]^c[109]^c[33]^c[34]^c[25]^c[26]^c[65]^c[301]^c[292]^c[293]^c[173]^c[174]^c[389]^c[420]^c[365]^c[366]^c[495]^c[633]^c[635]^c[636]^c[707]^c[725]^c[726]^c[642]^c[643]^c[704]^c[846]^c[927]^c[803]^c[804]^c[965]^c[992]^c[993]^c[986]^c[987]^c[1219]^c[1127]^c[1128]^c[1260]^c[1261]^c[1410]^c[1285]^c[1286]^c[1324]^c[1325]^c[1581]^c[1486]^c[1476]^c[1477]^c[1728]^c[1671]^c[1672]^c[1686]^c[1687]^c[1781]^c[1855]^c[1868]^c[1869]^c[2050]^c[2026]^c[1978]^c[1979]^c[2179]^c[2180]^c[2181]^c[2209]^c[2210]^c[2282]^c[2328]^c[2329]^c[2258]^c[2259]^c[2504]^c[2472]^c[2506]^c[2507]^c[2636]^c[2598]^c[2569]^c[2570]^c[2769]^c[2869]^c[2870]^c[2873]^c[2874]^c[2959]^c[2931]^c[2932]^c[2922]^c[2923]^c[3182]^c[3106]^c[3075]^c[3076]^c[3355]^c[3281]^c[3282]^c[3324]^c[3325]^c[3518]^c[3467]^c[3393]^c[3394]; //row: 43 d[i2+43*Zc]=c[15]^c[85]^c[10]^c[1]^c[2]^c[277]^c[269]^c[309]^c[310]^c[227]^c[365]^c[396]^c[342]^c[631]^c[609]^c[611]^c[612]^c[683]^c[702]^c[778]^c[779]^c[822]^c[903]^c[940]^c[1101]^c[969]^c[962]^c[963]^c[1195]^c[1264]^c[1236]^c[1237]^c[1386]^c[1422]^c[1300]^c[1301]^c[1557]^c[1462]^c[1453]^c[1704]^c[1648]^c[1662]^c[1663]^c[1917]^c[1831]^c[1844]^c[1845]^c[2026]^c[2002]^c[1954]^c[1955]^c[2155]^c[2157]^c[2185]^c[2186]^c[2258]^c[2305]^c[2394]^c[2395]^c[2480]^c[2448]^c[2483]^c[2612]^c[2574]^c[2705]^c[2706]^c[2628]^c[2745]^c[2846]^c[2849]^c[2850]^c[2935]^c[2908]^c[2898]^c[2899]^c[2895]^c[3158]^c[3082]^c[3052]^c[3331]^c[3258]^c[3300]^c[3301]^c[3494]^c[3443]^c[3369]^c[3370]; //row: 44 d[i2+44*Zc]=c[12]^c[82]^c[7]^c[159]^c[73]^c[274]^c[266]^c[307]^c[362]^c[393]^c[339]^c[628]^c[606]^c[609]^c[680]^c[699]^c[776]^c[819]^c[900]^c[937]^c[1098]^c[966]^c[960]^c[1192]^c[1261]^c[1234]^c[1186]^c[1383]^c[1419]^c[1298]^c[1554]^c[1459]^c[1450]^c[1538]^c[1701]^c[1645]^c[1660]^c[1914]^c[1828]^c[1842]^c[2023]^c[1999]^c[1952]^c[2152]^c[2154]^c[2183]^c[2255]^c[2302]^c[2392]^c[2477]^c[2445]^c[2480]^c[2609]^c[2571]^c[2703]^c[2742]^c[2843]^c[2847]^c[2932]^c[2905]^c[2896]^c[3155]^c[3079]^c[3049]^c[3328]^c[3255]^c[3298]^c[3491]^c[3440]^c[3367]; //row: 45 d[i2+45*Zc]=c[260]^c[1027]^c[1725]; } break; case 176: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[117]^c[76]^c[49]^c[96]^c[293]^c[210]^c[269]^c[518]^c[400]^c[388]^c[681]^c[623]^c[576]^c[865]^c[829]^c[806]^c[910]^c[971]^c[990]^c[1220]^c[1144]^c[1194]^c[1343]^c[1359]^c[1397]^c[1533]^c[1468]^c[1498]^c[1650]^c[1633]^c[1701]^c[1833]^c[1886]^c[1865]^c[1936]^c[2102]^c[2005]^c[2274]^c[2188]^c[2280]^c[2312]^c[2397]^c[2380]^c[2621]^c[2573]^c[2472]^c[2692]^c[2705]^c[2764]^c[2986]^c[2896]^c[2888]^c[3124]^c[3122]^c[3030]^c[3295]^c[3330]^c[3310]^c[3510]^c[3352]^c[3377]^c[3566]^c[3526]^c[3640]^c[3707]^c[3821]^c[3816]; //row: 1 d[i2+1*Zc]=c[117]^c[118]^c[77]^c[50]^c[97]^c[293]^c[294]^c[211]^c[270]^c[518]^c[519]^c[401]^c[389]^c[681]^c[682]^c[624]^c[577]^c[866]^c[830]^c[807]^c[910]^c[911]^c[972]^c[991]^c[1220]^c[1221]^c[1145]^c[1195]^c[1344]^c[1360]^c[1398]^c[1534]^c[1469]^c[1499]^c[1650]^c[1651]^c[1634]^c[1702]^c[1833]^c[1834]^c[1887]^c[1866]^c[1936]^c[1937]^c[2103]^c[2006]^c[2274]^c[2275]^c[2189]^c[2281]^c[2312]^c[2313]^c[2398]^c[2381]^c[2622]^c[2574]^c[2473]^c[2692]^c[2693]^c[2706]^c[2765]^c[2986]^c[2987]^c[2897]^c[2889]^c[3125]^c[3123]^c[3031]^c[3295]^c[3296]^c[3331]^c[3311]^c[3510]^c[3511]^c[3353]^c[3378]^c[3566]^c[3567]^c[3527]^c[3641]^c[3707]^c[3708]^c[3822]^c[3817]; //row: 2 d[i2+2*Zc]=c[118]^c[77]^c[49]^c[50]^c[96]^c[97]^c[294]^c[210]^c[211]^c[269]^c[270]^c[519]^c[401]^c[388]^c[389]^c[682]^c[624]^c[576]^c[577]^c[866]^c[829]^c[830]^c[806]^c[807]^c[911]^c[972]^c[990]^c[991]^c[1221]^c[1144]^c[1145]^c[1194]^c[1195]^c[1344]^c[1359]^c[1360]^c[1397]^c[1398]^c[1534]^c[1468]^c[1469]^c[1498]^c[1499]^c[1651]^c[1634]^c[1701]^c[1702]^c[1834]^c[1886]^c[1887]^c[1865]^c[1866]^c[1937]^c[2103]^c[2005]^c[2006]^c[2275]^c[2189]^c[2280]^c[2281]^c[2313]^c[2397]^c[2398]^c[2380]^c[2381]^c[2622]^c[2573]^c[2574]^c[2472]^c[2473]^c[2693]^c[2706]^c[2764]^c[2765]^c[2987]^c[2897]^c[2888]^c[2889]^c[3125]^c[3122]^c[3123]^c[3030]^c[3031]^c[3296]^c[3330]^c[3331]^c[3310]^c[3311]^c[3511]^c[3353]^c[3377]^c[3378]^c[3567]^c[3526]^c[3527]^c[3640]^c[3641]^c[3708]^c[3822]^c[3816]^c[3817]; //row: 3 d[i2+3*Zc]=c[118]^c[77]^c[50]^c[96]^c[97]^c[294]^c[211]^c[269]^c[270]^c[519]^c[401]^c[389]^c[682]^c[624]^c[576]^c[577]^c[866]^c[830]^c[806]^c[807]^c[911]^c[972]^c[991]^c[1221]^c[1145]^c[1194]^c[1195]^c[1344]^c[1360]^c[1397]^c[1398]^c[1534]^c[1469]^c[1498]^c[1499]^c[1651]^c[1634]^c[1702]^c[1834]^c[1887]^c[1865]^c[1866]^c[1937]^c[2103]^c[2005]^c[2006]^c[2275]^c[2189]^c[2280]^c[2281]^c[2313]^c[2398]^c[2380]^c[2381]^c[2622]^c[2574]^c[2472]^c[2473]^c[2693]^c[2706]^c[2765]^c[2987]^c[2897]^c[2888]^c[2889]^c[3125]^c[3123]^c[3030]^c[3031]^c[3296]^c[3331]^c[3310]^c[3311]^c[3511]^c[3353]^c[3378]^c[3567]^c[3527]^c[3640]^c[3641]^c[3708]^c[3822]^c[3816]^c[3817]; //row: 4 d[i2+4*Zc]=c[41]^c[255]; //row: 5 d[i2+5*Zc]=c[48]^c[7]^c[156]^c[27]^c[42]^c[224]^c[317]^c[200]^c[305]^c[449]^c[507]^c[495]^c[612]^c[554]^c[683]^c[602]^c[796]^c[760]^c[737]^c[1017]^c[902]^c[921]^c[1151]^c[1075]^c[1125]^c[1274]^c[1290]^c[1328]^c[1464]^c[1575]^c[1429]^c[1757]^c[1740]^c[1632]^c[1764]^c[1817]^c[1796]^c[2043]^c[2033]^c[1936]^c[2205]^c[2119]^c[2211]^c[2257]^c[2419]^c[2328]^c[2311]^c[2552]^c[2504]^c[2579]^c[2799]^c[2812]^c[2695]^c[2917]^c[2827]^c[2819]^c[2934]^c[3055]^c[3053]^c[3137]^c[3226]^c[3261]^c[3241]^c[3441]^c[3459]^c[3484]^c[3673]^c[3633]^c[3571]^c[3814]^c[3752]^c[3747]^c[3777]; //row: 6 d[i2+6*Zc]=c[117]^c[1128]^c[1913]^c[2034]^c[2459]^c[3141]^c[3275]^c[3648]; //row: 7 d[i2+7*Zc]=c[2]^c[278]^c[751]^c[1352]^c[1446]^c[2502]; //row: 8 d[i2+8*Zc]=c[79]^c[10]^c[38]^c[145]^c[11]^c[117]^c[118]^c[58]^c[164]^c[165]^c[171]^c[255]^c[186]^c[348]^c[278]^c[279]^c[231]^c[337]^c[338]^c[250]^c[480]^c[411]^c[362]^c[469]^c[526]^c[456]^c[457]^c[643]^c[574]^c[585]^c[692]^c[538]^c[644]^c[645]^c[549]^c[827]^c[758]^c[791]^c[721]^c[722]^c[768]^c[874]^c[875]^c[1048]^c[979]^c[933]^c[1040]^c[952]^c[882]^c[883]^c[1182]^c[1113]^c[1106]^c[1212]^c[1213]^c[1156]^c[1086]^c[1087]^c[1305]^c[1236]^c[1321]^c[1251]^c[1252]^c[1359]^c[1289]^c[1290]^c[1495]^c[1426]^c[1430]^c[1536]^c[1537]^c[1460]^c[1566]^c[1567]^c[1612]^c[1719]^c[1595]^c[1702]^c[1663]^c[1593]^c[1594]^c[1795]^c[1902]^c[1848]^c[1778]^c[1779]^c[1827]^c[1933]^c[1934]^c[2074]^c[2005]^c[2064]^c[1995]^c[1967]^c[2073]^c[2074]^c[2236]^c[2167]^c[2150]^c[2257]^c[2242]^c[2172]^c[2173]^c[2247]^c[2450]^c[2381]^c[2359]^c[2289]^c[2290]^c[2342]^c[2448]^c[2449]^c[2583]^c[2514]^c[2535]^c[2465]^c[2466]^c[2610]^c[2540]^c[2541]^c[2654]^c[2761]^c[2667]^c[2774]^c[2726]^c[2656]^c[2657]^c[2948]^c[2879]^c[2858]^c[2965]^c[2850]^c[2956]^c[2957]^c[2863]^c[3086]^c[3017]^c[3084]^c[3014]^c[3015]^c[2992]^c[3098]^c[3099]^c[3257]^c[3188]^c[3292]^c[3222]^c[3223]^c[3272]^c[3202]^c[3203]^c[3472]^c[3403]^c[3490]^c[3421]^c[3515]^c[3445]^c[3446]^c[3360]^c[3528]^c[3635]^c[3664]^c[3594]^c[3595]^c[3602]^c[3532]^c[3533]^c[3845]^c[3776]^c[3783]^c[3714]^c[3778]^c[3708]^c[3709]^c[3754]; //row: 9 d[i2+9*Zc]=c[155]^c[263]^c[1876]^c[2046]^c[2379]^c[3143]^c[3190]^c[3680]; //row: 10 d[i2+10*Zc]=c[350]^c[428]^c[730]^c[1286]^c[1456]^c[2554]; //row: 11 d[i2+11*Zc]=c[103]^c[133]^c[134]^c[62]^c[93]^c[35]^c[66]^c[82]^c[113]^c[24]^c[279]^c[309]^c[310]^c[196]^c[227]^c[255]^c[286]^c[321]^c[504]^c[358]^c[359]^c[386]^c[417]^c[374]^c[405]^c[667]^c[697]^c[698]^c[609]^c[640]^c[562]^c[593]^c[851]^c[706]^c[815]^c[846]^c[792]^c[823]^c[896]^c[926]^c[927]^c[957]^c[988]^c[976]^c[1007]^c[1206]^c[1060]^c[1061]^c[1130]^c[1161]^c[1180]^c[1211]^c[1329]^c[1360]^c[1345]^c[1376]^c[1383]^c[1238]^c[1519]^c[1550]^c[1454]^c[1485]^c[1484]^c[1515]^c[1636]^c[1666]^c[1667]^c[1619]^c[1650]^c[1687]^c[1718]^c[1819]^c[1849]^c[1850]^c[1872]^c[1903]^c[1851]^c[1882]^c[2098]^c[1952]^c[1953]^c[2088]^c[1943]^c[1991]^c[2022]^c[2260]^c[2114]^c[2115]^c[2174]^c[2205]^c[2266]^c[2121]^c[2135]^c[2298]^c[2328]^c[2329]^c[2383]^c[2414]^c[2366]^c[2397]^c[2607]^c[2638]^c[2559]^c[2590]^c[2634]^c[2489]^c[2678]^c[2708]^c[2709]^c[2691]^c[2722]^c[2750]^c[2781]^c[2972]^c[2826]^c[2827]^c[2882]^c[2913]^c[2874]^c[2905]^c[2990]^c[3110]^c[3141]^c[3108]^c[3139]^c[3016]^c[3047]^c[3281]^c[3311]^c[3312]^c[3316]^c[3171]^c[3296]^c[3327]^c[3496]^c[3350]^c[3351]^c[3514]^c[3369]^c[3363]^c[3394]^c[3552]^c[3582]^c[3583]^c[3688]^c[3543]^c[3626]^c[3657]^c[3869]^c[3723]^c[3724]^c[3807]^c[3838]^c[3802]^c[3833]^c[3861]; //row: 12 d[i2+12*Zc]=c[122]^c[216]^c[1901]^c[2045]^c[2463]^c[3243]; //row: 13 d[i2+13*Zc]=c[22]^c[23]^c[158]^c[131]^c[2]^c[134]^c[198]^c[199]^c[292]^c[351]^c[423]^c[424]^c[482]^c[470]^c[586]^c[587]^c[529]^c[658]^c[602]^c[771]^c[735]^c[712]^c[991]^c[992]^c[1053]^c[896]^c[1125]^c[1126]^c[1226]^c[1100]^c[1249]^c[1265]^c[1303]^c[1320]^c[1439]^c[1550]^c[1580]^c[1731]^c[1732]^c[1715]^c[1607]^c[1914]^c[1915]^c[1792]^c[1771]^c[2017]^c[2018]^c[2008]^c[2087]^c[2179]^c[2180]^c[2270]^c[2186]^c[2393]^c[2394]^c[2303]^c[2462]^c[2527]^c[2479]^c[2554]^c[2773]^c[2774]^c[2787]^c[2670]^c[2891]^c[2892]^c[2978]^c[2970]^c[3030]^c[3028]^c[3112]^c[3200]^c[3201]^c[3236]^c[3216]^c[3415]^c[3416]^c[3434]^c[3459]^c[3647]^c[3648]^c[3608]^c[3546]^c[3613]^c[3788]^c[3789]^c[3727]^c[3722]; //row: 14 d[i2+14*Zc]=c[21]^c[2257]^c[2740]^c[2971]^c[3057]^c[3773]; //row: 15 d[i2+15*Zc]=c[55]^c[14]^c[163]^c[33]^c[34]^c[175]^c[231]^c[324]^c[206]^c[207]^c[347]^c[456]^c[514]^c[502]^c[619]^c[561]^c[689]^c[690]^c[803]^c[767]^c[743]^c[744]^c[1024]^c[909]^c[928]^c[1158]^c[1082]^c[1131]^c[1132]^c[1281]^c[1297]^c[1334]^c[1335]^c[1471]^c[1582]^c[1435]^c[1436]^c[1588]^c[1747]^c[1639]^c[1771]^c[1824]^c[1802]^c[1803]^c[1774]^c[2050]^c[2040]^c[1942]^c[1943]^c[2212]^c[2126]^c[2217]^c[2218]^c[2426]^c[2335]^c[2317]^c[2318]^c[2368]^c[2559]^c[2511]^c[2585]^c[2586]^c[2806]^c[2643]^c[2702]^c[2924]^c[2834]^c[2825]^c[2826]^c[3062]^c[3060]^c[3143]^c[3144]^c[3233]^c[3268]^c[3247]^c[3248]^c[3343]^c[3448]^c[3466]^c[3491]^c[3680]^c[3640]^c[3577]^c[3578]^c[3821]^c[3759]^c[3753]^c[3754]; //row: 16 d[i2+16*Zc]=c[55]^c[14]^c[163]^c[34]^c[231]^c[324]^c[207]^c[189]^c[456]^c[514]^c[502]^c[619]^c[561]^c[690]^c[644]^c[803]^c[767]^c[744]^c[1024]^c[909]^c[928]^c[1158]^c[1082]^c[1132]^c[1281]^c[1297]^c[1335]^c[1471]^c[1582]^c[1436]^c[1588]^c[1747]^c[1639]^c[1771]^c[1824]^c[1803]^c[2050]^c[2040]^c[1943]^c[2091]^c[2212]^c[2126]^c[2218]^c[2426]^c[2335]^c[2318]^c[2559]^c[2511]^c[2586]^c[2806]^c[2643]^c[2702]^c[2924]^c[2834]^c[2826]^c[3062]^c[3060]^c[3144]^c[3233]^c[3268]^c[3248]^c[3448]^c[3466]^c[3491]^c[3680]^c[3640]^c[3578]^c[3674]^c[3821]^c[3759]^c[3754]; //row: 17 d[i2+17*Zc]=c[109]^c[2515]^c[2886]^c[3107]^c[3709]; //row: 18 d[i2+18*Zc]=c[222]^c[2221]^c[2357]^c[3172]^c[3416]; //row: 19 d[i2+19*Zc]=c[86]^c[285]^c[1378]^c[1489]^c[1787]; //row: 20 d[i2+20*Zc]=c[147]^c[106]^c[79]^c[126]^c[88]^c[323]^c[240]^c[299]^c[372]^c[430]^c[418]^c[535]^c[653]^c[606]^c[592]^c[719]^c[859]^c[836]^c[940]^c[1001]^c[1020]^c[1074]^c[1174]^c[1224]^c[1373]^c[1389]^c[1251]^c[1563]^c[1498]^c[1528]^c[1680]^c[1663]^c[1731]^c[1738]^c[1863]^c[1916]^c[1895]^c[1966]^c[1956]^c[2035]^c[2003]^c[2128]^c[2218]^c[2134]^c[2342]^c[2427]^c[2410]^c[2475]^c[2603]^c[2502]^c[2722]^c[2735]^c[2794]^c[2840]^c[2926]^c[2918]^c[3154]^c[3152]^c[3060]^c[3325]^c[3184]^c[3340]^c[3364]^c[3382]^c[3407]^c[3596]^c[3556]^c[3670]^c[3737]^c[3851]^c[3846]; //row: 21 d[i2+21*Zc]=c[337]^c[967]^c[2985]^c[3662]^c[3804]; //row: 22 d[i2+22*Zc]=c[103]^c[2268]^c[2347]^c[3104]; //row: 23 d[i2+23*Zc]=c[193]^c[357]^c[1764]^c[3295]; //row: 24 d[i2+24*Zc]=c[135]^c[94]^c[67]^c[114]^c[37]^c[311]^c[228]^c[287]^c[360]^c[418]^c[406]^c[699]^c[641]^c[594]^c[697]^c[707]^c[847]^c[824]^c[776]^c[928]^c[989]^c[1008]^c[1062]^c[1162]^c[1212]^c[1361]^c[1377]^c[1239]^c[1551]^c[1486]^c[1516]^c[1668]^c[1651]^c[1719]^c[1851]^c[1904]^c[1883]^c[1954]^c[1944]^c[2023]^c[2047]^c[2116]^c[2206]^c[2122]^c[2330]^c[2415]^c[2398]^c[2639]^c[2591]^c[2490]^c[2710]^c[2723]^c[2782]^c[2828]^c[2914]^c[2906]^c[3142]^c[3140]^c[3048]^c[3313]^c[3172]^c[3328]^c[3352]^c[3370]^c[3395]^c[3584]^c[3544]^c[3658]^c[3725]^c[3839]^c[3834]; //row: 25 d[i2+25*Zc]=c[278]^c[1134]^c[1342]^c[2517]; //row: 26 d[i2+26*Zc]=c[148]^c[501]^c[753]^c[2738]; //row: 27 d[i2+27*Zc]=c[266]^c[1205]^c[1499]; //row: 28 d[i2+28*Zc]=c[101]^c[704]^c[3383]^c[3862]; //row: 29 d[i2+29*Zc]=c[49]^c[8]^c[157]^c[27]^c[28]^c[225]^c[318]^c[200]^c[201]^c[272]^c[450]^c[508]^c[496]^c[613]^c[555]^c[683]^c[684]^c[797]^c[761]^c[737]^c[738]^c[1018]^c[903]^c[922]^c[1152]^c[1076]^c[1125]^c[1126]^c[1275]^c[1291]^c[1328]^c[1329]^c[1465]^c[1576]^c[1429]^c[1430]^c[1758]^c[1741]^c[1633]^c[1765]^c[1818]^c[1796]^c[1797]^c[2044]^c[2034]^c[1936]^c[1937]^c[2206]^c[2120]^c[2211]^c[2212]^c[2420]^c[2329]^c[2311]^c[2312]^c[2553]^c[2505]^c[2579]^c[2580]^c[2567]^c[2800]^c[2813]^c[2696]^c[2918]^c[2828]^c[2819]^c[2820]^c[3056]^c[3054]^c[3137]^c[3138]^c[3227]^c[3262]^c[3241]^c[3242]^c[3234]^c[3442]^c[3460]^c[3485]^c[3674]^c[3634]^c[3571]^c[3572]^c[3815]^c[3753]^c[3747]^c[3748]; //row: 30 d[i2+30*Zc]=c[154]^c[113]^c[85]^c[86]^c[132]^c[133]^c[170]^c[330]^c[246]^c[247]^c[305]^c[306]^c[379]^c[437]^c[424]^c[425]^c[542]^c[660]^c[612]^c[613]^c[726]^c[865]^c[866]^c[842]^c[843]^c[947]^c[1008]^c[1026]^c[1027]^c[1081]^c[1180]^c[1181]^c[1230]^c[1231]^c[1380]^c[1395]^c[1396]^c[1257]^c[1258]^c[1570]^c[1504]^c[1505]^c[1534]^c[1535]^c[1687]^c[1670]^c[1737]^c[1738]^c[1870]^c[1922]^c[1923]^c[1901]^c[1902]^c[1775]^c[1973]^c[1963]^c[2041]^c[2042]^c[2135]^c[2225]^c[2140]^c[2141]^c[2349]^c[2433]^c[2434]^c[2416]^c[2417]^c[2382]^c[2482]^c[2609]^c[2610]^c[2508]^c[2509]^c[2729]^c[2742]^c[2800]^c[2801]^c[2847]^c[2933]^c[2924]^c[2925]^c[3161]^c[3158]^c[3159]^c[3066]^c[3067]^c[3332]^c[3190]^c[3191]^c[3170]^c[3171]^c[3371]^c[3389]^c[3413]^c[3414]^c[3603]^c[3562]^c[3563]^c[3676]^c[3677]^c[3744]^c[3858]^c[3852]^c[3853]; //row: 31 d[i2+31*Zc]=c[44]^c[164]^c[3]^c[123]^c[152]^c[96]^c[23]^c[142]^c[143]^c[220]^c[340]^c[313]^c[257]^c[196]^c[315]^c[316]^c[276]^c[445]^c[389]^c[503]^c[447]^c[491]^c[435]^c[608]^c[552]^c[550]^c[670]^c[679]^c[622]^c[623]^c[792]^c[736]^c[756]^c[876]^c[733]^c[852]^c[853]^c[1013]^c[957]^c[898]^c[1018]^c[917]^c[1037]^c[1147]^c[1091]^c[1071]^c[1191]^c[1121]^c[1064]^c[1065]^c[1270]^c[1390]^c[1286]^c[1406]^c[1324]^c[1267]^c[1268]^c[1352]^c[1460]^c[1580]^c[1571]^c[1515]^c[1425]^c[1544]^c[1545]^c[1753]^c[1697]^c[1736]^c[1680]^c[1628]^c[1748]^c[1760]^c[1880]^c[1813]^c[1933]^c[1792]^c[1911]^c[1912]^c[2039]^c[1983]^c[2029]^c[1973]^c[2108]^c[2051]^c[2052]^c[2201]^c[2145]^c[2115]^c[2235]^c[2207]^c[2150]^c[2151]^c[2415]^c[2359]^c[2324]^c[2444]^c[2307]^c[2426]^c[2427]^c[2548]^c[2492]^c[2500]^c[2620]^c[2575]^c[2518]^c[2519]^c[2795]^c[2739]^c[2808]^c[2752]^c[2691]^c[2811]^c[2913]^c[2857]^c[2823]^c[2943]^c[2991]^c[2934]^c[2935]^c[3051]^c[2995]^c[3049]^c[2993]^c[3133]^c[3076]^c[3077]^c[3222]^c[3342]^c[3257]^c[3201]^c[3237]^c[3180]^c[3181]^c[3437]^c[3381]^c[3455]^c[3399]^c[3480]^c[3424]^c[3669]^c[3613]^c[3629]^c[3573]^c[3567]^c[3686]^c[3687]^c[3810]^c[3754]^c[3748]^c[3868]^c[3743]^c[3862]^c[3863]; //row: 32 d[i2+32*Zc]=c[25]^c[160]^c[132]^c[133]^c[3]^c[4]^c[174]^c[201]^c[293]^c[294]^c[176]^c[177]^c[426]^c[484]^c[471]^c[472]^c[589]^c[531]^c[659]^c[660]^c[773]^c[736]^c[737]^c[713]^c[714]^c[994]^c[1055]^c[897]^c[898]^c[1128]^c[1227]^c[1228]^c[1101]^c[1102]^c[1251]^c[1266]^c[1267]^c[1304]^c[1305]^c[1441]^c[1551]^c[1552]^c[1581]^c[1582]^c[1734]^c[1717]^c[1608]^c[1609]^c[1917]^c[1793]^c[1794]^c[1772]^c[1773]^c[2020]^c[2010]^c[2088]^c[2089]^c[2182]^c[2272]^c[2187]^c[2188]^c[2200]^c[2396]^c[2304]^c[2305]^c[2463]^c[2288]^c[2529]^c[2480]^c[2481]^c[2555]^c[2556]^c[2625]^c[2776]^c[2789]^c[2671]^c[2672]^c[2894]^c[2980]^c[2971]^c[2972]^c[3032]^c[3029]^c[3030]^c[3113]^c[3114]^c[3203]^c[3237]^c[3238]^c[3217]^c[3218]^c[3418]^c[3436]^c[3460]^c[3461]^c[3650]^c[3609]^c[3610]^c[3547]^c[3548]^c[3791]^c[3729]^c[3723]^c[3724]; //row: 33 d[i2+33*Zc]=c[231]^c[479]^c[2076]^c[3796]; //row: 34 d[i2+34*Zc]=c[59]^c[1375]^c[2751]^c[3045]; //row: 35 d[i2+35*Zc]=c[33]^c[168]^c[141]^c[12]^c[209]^c[302]^c[185]^c[275]^c[434]^c[492]^c[480]^c[597]^c[539]^c[668]^c[781]^c[745]^c[722]^c[1002]^c[887]^c[906]^c[1136]^c[1060]^c[1110]^c[1089]^c[1259]^c[1275]^c[1313]^c[1449]^c[1560]^c[1414]^c[1742]^c[1725]^c[1617]^c[1925]^c[1802]^c[1781]^c[2028]^c[2018]^c[2097]^c[2190]^c[2280]^c[2196]^c[2130]^c[2404]^c[2313]^c[2296]^c[2537]^c[2489]^c[2564]^c[2784]^c[2797]^c[2680]^c[2902]^c[2988]^c[2980]^c[3040]^c[3038]^c[3122]^c[3211]^c[3246]^c[3226]^c[3426]^c[3444]^c[3469]^c[3658]^c[3618]^c[3556]^c[3799]^c[3737]^c[3732]; //row: 36 d[i2+36*Zc]=c[134]^c[2478]^c[2674]^c[3179]; //row: 37 d[i2+37*Zc]=c[26]^c[27]^c[162]^c[135]^c[6]^c[202]^c[203]^c[296]^c[179]^c[318]^c[427]^c[428]^c[486]^c[474]^c[590]^c[591]^c[533]^c[662]^c[775]^c[739]^c[716]^c[995]^c[996]^c[881]^c[900]^c[1129]^c[1130]^c[1230]^c[1104]^c[1253]^c[1269]^c[1307]^c[1443]^c[1554]^c[1408]^c[1735]^c[1736]^c[1719]^c[1611]^c[1918]^c[1919]^c[1796]^c[1775]^c[2021]^c[2022]^c[2012]^c[2091]^c[2183]^c[2184]^c[2274]^c[2190]^c[2397]^c[2398]^c[2307]^c[2290]^c[2347]^c[2531]^c[2483]^c[2558]^c[2777]^c[2778]^c[2791]^c[2674]^c[2895]^c[2896]^c[2982]^c[2974]^c[3034]^c[3032]^c[3116]^c[3204]^c[3205]^c[3240]^c[3220]^c[3419]^c[3420]^c[3438]^c[3463]^c[3651]^c[3652]^c[3612]^c[3550]^c[3792]^c[3793]^c[3731]^c[3726]; //row: 38 d[i2+38*Zc]=c[163]^c[1603]^c[1792]^c[2181]; //row: 39 d[i2+39*Zc]=c[235]^c[615]^c[1268]^c[3439]; //row: 40 d[i2+40*Zc]=c[127]^c[1468]^c[3126]; //row: 41 d[i2+41*Zc]=c[298]^c[604]^c[1608]^c[3263]; //row: 42 d[i2+42*Zc]=c[135]^c[94]^c[66]^c[67]^c[113]^c[114]^c[111]^c[311]^c[227]^c[228]^c[286]^c[287]^c[360]^c[418]^c[405]^c[406]^c[699]^c[641]^c[593]^c[594]^c[707]^c[846]^c[847]^c[823]^c[824]^c[786]^c[928]^c[989]^c[1007]^c[1008]^c[1062]^c[1161]^c[1162]^c[1211]^c[1212]^c[1361]^c[1376]^c[1377]^c[1238]^c[1239]^c[1551]^c[1485]^c[1486]^c[1515]^c[1516]^c[1668]^c[1651]^c[1718]^c[1719]^c[1851]^c[1903]^c[1904]^c[1882]^c[1883]^c[1954]^c[1944]^c[2022]^c[2023]^c[2116]^c[2206]^c[2121]^c[2122]^c[2330]^c[2414]^c[2415]^c[2397]^c[2398]^c[2639]^c[2590]^c[2591]^c[2489]^c[2490]^c[2710]^c[2723]^c[2781]^c[2782]^c[2828]^c[2914]^c[2905]^c[2906]^c[3142]^c[3139]^c[3140]^c[3047]^c[3048]^c[3313]^c[3171]^c[3172]^c[3327]^c[3328]^c[3352]^c[3370]^c[3394]^c[3395]^c[3584]^c[3543]^c[3544]^c[3657]^c[3658]^c[3725]^c[3839]^c[3833]^c[3834]; //row: 43 d[i2+43*Zc]=c[109]^c[68]^c[41]^c[87]^c[88]^c[285]^c[202]^c[260]^c[261]^c[209]^c[510]^c[392]^c[380]^c[673]^c[615]^c[567]^c[568]^c[857]^c[821]^c[797]^c[798]^c[902]^c[963]^c[982]^c[1212]^c[1136]^c[1185]^c[1186]^c[1335]^c[1351]^c[1388]^c[1389]^c[1525]^c[1460]^c[1489]^c[1490]^c[1642]^c[1625]^c[1693]^c[1825]^c[1878]^c[1856]^c[1857]^c[2104]^c[2094]^c[1996]^c[1997]^c[2266]^c[2180]^c[2271]^c[2272]^c[2304]^c[2389]^c[2371]^c[2372]^c[2613]^c[2565]^c[2639]^c[2464]^c[2684]^c[2697]^c[2756]^c[2978]^c[2888]^c[2879]^c[2880]^c[2818]^c[3116]^c[3114]^c[3021]^c[3022]^c[3287]^c[3322]^c[3301]^c[3302]^c[3220]^c[3502]^c[3344]^c[3369]^c[3558]^c[3694]^c[3631]^c[3632]^c[3699]^c[3813]^c[3807]^c[3808]; //row: 44 d[i2+44*Zc]=c[37]^c[172]^c[145]^c[16]^c[78]^c[213]^c[306]^c[189]^c[438]^c[496]^c[484]^c[601]^c[543]^c[672]^c[785]^c[749]^c[726]^c[1006]^c[891]^c[910]^c[1140]^c[1064]^c[1114]^c[1263]^c[1279]^c[1317]^c[1299]^c[1453]^c[1564]^c[1418]^c[1746]^c[1729]^c[1621]^c[1700]^c[1929]^c[1806]^c[1785]^c[2032]^c[2022]^c[2101]^c[2194]^c[2284]^c[2200]^c[2408]^c[2317]^c[2300]^c[2541]^c[2493]^c[2568]^c[2788]^c[2801]^c[2684]^c[2906]^c[2816]^c[2984]^c[3044]^c[3042]^c[3126]^c[3215]^c[3250]^c[3230]^c[3430]^c[3448]^c[3473]^c[3662]^c[3622]^c[3560]^c[3803]^c[3741]^c[3736]; //row: 45 d[i2+45*Zc]=c[257]^c[1122]^c[1818]; } break; case 192: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[114]^c[75]^c[12]^c[83]^c[210]^c[249]^c[278]^c[433]^c[459]^c[519]^c[752]^c[648]^c[767]^c[863]^c[907]^c[850]^c[1140]^c[1103]^c[1023]^c[1175]^c[1312]^c[1158]^c[1482]^c[1418]^c[1496]^c[1674]^c[1695]^c[1591]^c[1852]^c[1905]^c[1790]^c[2015]^c[2048]^c[2051]^c[2220]^c[2214]^c[2224]^c[2320]^c[2453]^c[2342]^c[2660]^c[2503]^c[2644]^c[2712]^c[2775]^c[2707]^c[2902]^c[2978]^c[2932]^c[3177]^c[3233]^c[3183]^c[3377]^c[3394]^c[3371]^c[3505]^c[3503]^c[3534]^c[3827]^c[3786]^c[3660]^c[3977]^c[3852]^c[3878]^c[4185]^c[4143]^c[4196]; //row: 1 d[i2+1*Zc]=c[114]^c[115]^c[76]^c[13]^c[84]^c[210]^c[211]^c[250]^c[279]^c[433]^c[434]^c[460]^c[520]^c[752]^c[753]^c[649]^c[576]^c[864]^c[908]^c[851]^c[1140]^c[1141]^c[1104]^c[1024]^c[1175]^c[1176]^c[1313]^c[1159]^c[1483]^c[1419]^c[1497]^c[1675]^c[1696]^c[1592]^c[1852]^c[1853]^c[1906]^c[1791]^c[2015]^c[2016]^c[2049]^c[2052]^c[2220]^c[2221]^c[2215]^c[2225]^c[2320]^c[2321]^c[2454]^c[2343]^c[2660]^c[2661]^c[2504]^c[2645]^c[2713]^c[2776]^c[2708]^c[2902]^c[2903]^c[2979]^c[2933]^c[3177]^c[3178]^c[3234]^c[3184]^c[3378]^c[3395]^c[3372]^c[3505]^c[3506]^c[3504]^c[3535]^c[3827]^c[3828]^c[3787]^c[3661]^c[3977]^c[3978]^c[3853]^c[3879]^c[4185]^c[4186]^c[4144]^c[4197]; //row: 2 d[i2+2*Zc]=c[115]^c[76]^c[12]^c[13]^c[83]^c[84]^c[211]^c[249]^c[250]^c[278]^c[279]^c[434]^c[460]^c[519]^c[520]^c[753]^c[649]^c[767]^c[576]^c[864]^c[907]^c[908]^c[850]^c[851]^c[1141]^c[1104]^c[1023]^c[1024]^c[1176]^c[1312]^c[1313]^c[1158]^c[1159]^c[1483]^c[1418]^c[1419]^c[1496]^c[1497]^c[1675]^c[1695]^c[1696]^c[1591]^c[1592]^c[1853]^c[1906]^c[1790]^c[1791]^c[2016]^c[2048]^c[2049]^c[2051]^c[2052]^c[2221]^c[2215]^c[2224]^c[2225]^c[2321]^c[2454]^c[2342]^c[2343]^c[2661]^c[2503]^c[2504]^c[2644]^c[2645]^c[2713]^c[2775]^c[2776]^c[2707]^c[2708]^c[2903]^c[2979]^c[2932]^c[2933]^c[3178]^c[3234]^c[3183]^c[3184]^c[3378]^c[3394]^c[3395]^c[3371]^c[3372]^c[3506]^c[3503]^c[3504]^c[3534]^c[3535]^c[3828]^c[3787]^c[3660]^c[3661]^c[3978]^c[3852]^c[3853]^c[3878]^c[3879]^c[4186]^c[4144]^c[4196]^c[4197]; //row: 3 d[i2+3*Zc]=c[115]^c[76]^c[13]^c[83]^c[84]^c[211]^c[250]^c[278]^c[279]^c[434]^c[460]^c[520]^c[753]^c[649]^c[767]^c[576]^c[864]^c[908]^c[850]^c[851]^c[1141]^c[1104]^c[1024]^c[1176]^c[1313]^c[1158]^c[1159]^c[1483]^c[1419]^c[1496]^c[1497]^c[1675]^c[1696]^c[1591]^c[1592]^c[1853]^c[1906]^c[1791]^c[2016]^c[2049]^c[2051]^c[2052]^c[2221]^c[2215]^c[2224]^c[2225]^c[2321]^c[2454]^c[2342]^c[2343]^c[2661]^c[2504]^c[2644]^c[2645]^c[2713]^c[2776]^c[2707]^c[2708]^c[2903]^c[2979]^c[2933]^c[3178]^c[3234]^c[3183]^c[3184]^c[3378]^c[3395]^c[3371]^c[3372]^c[3506]^c[3504]^c[3534]^c[3535]^c[3828]^c[3787]^c[3661]^c[3978]^c[3853]^c[3878]^c[3879]^c[4186]^c[4144]^c[4196]^c[4197]; //row: 4 d[i2+4*Zc]=c[139]^c[372]; //row: 5 d[i2+5*Zc]=c[79]^c[40]^c[169]^c[48]^c[2]^c[367]^c[214]^c[243]^c[205]^c[398]^c[424]^c[484]^c[717]^c[613]^c[732]^c[690]^c[828]^c[872]^c[815]^c[1105]^c[1068]^c[988]^c[1332]^c[1277]^c[1315]^c[1447]^c[1383]^c[1461]^c[1639]^c[1660]^c[1556]^c[1817]^c[1870]^c[1755]^c[1980]^c[2013]^c[2016]^c[2185]^c[2179]^c[2189]^c[2477]^c[2418]^c[2307]^c[2469]^c[2625]^c[2660]^c[2609]^c[2869]^c[2740]^c[2864]^c[3059]^c[2943]^c[2897]^c[3142]^c[3198]^c[3148]^c[3120]^c[3342]^c[3359]^c[3336]^c[3470]^c[3468]^c[3499]^c[3792]^c[3751]^c[3817]^c[3942]^c[4009]^c[3843]^c[4150]^c[4108]^c[4161]^c[4082]; //row: 6 d[i2+6*Zc]=c[85]^c[1216]^c[1920]^c[2270]^c[2587]^c[3324]^c[3473]^c[3872]; //row: 7 d[i2+7*Zc]=c[8]^c[253]^c[891]^c[1484]^c[1633]^c[2801]; //row: 8 d[i2+8*Zc]=c[181]^c[93]^c[142]^c[54]^c[79]^c[182]^c[183]^c[150]^c[61]^c[62]^c[114]^c[277]^c[381]^c[316]^c[227]^c[228]^c[345]^c[256]^c[257]^c[370]^c[500]^c[412]^c[526]^c[438]^c[394]^c[497]^c[498]^c[627]^c[731]^c[715]^c[627]^c[642]^c[745]^c[746]^c[740]^c[930]^c[842]^c[782]^c[885]^c[886]^c[917]^c[828]^c[829]^c[1015]^c[1119]^c[978]^c[1082]^c[1090]^c[1001]^c[1002]^c[1242]^c[1154]^c[1187]^c[1290]^c[1291]^c[1225]^c[1328]^c[1329]^c[1357]^c[1461]^c[1485]^c[1396]^c[1397]^c[1371]^c[1474]^c[1475]^c[1549]^c[1653]^c[1570]^c[1673]^c[1674]^c[1658]^c[1569]^c[1570]^c[1919]^c[1831]^c[1780]^c[1884]^c[1857]^c[1768]^c[1769]^c[2082]^c[1994]^c[1923]^c[2026]^c[2027]^c[1926]^c[2029]^c[2030]^c[2287]^c[2199]^c[2281]^c[2193]^c[2291]^c[2202]^c[2203]^c[2387]^c[2491]^c[2328]^c[2432]^c[2409]^c[2320]^c[2321]^c[2321]^c[2535]^c[2639]^c[2570]^c[2673]^c[2674]^c[2519]^c[2622]^c[2623]^c[2779]^c[2691]^c[2842]^c[2753]^c[2754]^c[2774]^c[2877]^c[2878]^c[2969]^c[2881]^c[3045]^c[2957]^c[2999]^c[2910]^c[2911]^c[3244]^c[3156]^c[3108]^c[3212]^c[3250]^c[3161]^c[3162]^c[3110]^c[3444]^c[3356]^c[3269]^c[3372]^c[3373]^c[3438]^c[3349]^c[3350]^c[3572]^c[3484]^c[3570]^c[3481]^c[3482]^c[3601]^c[3512]^c[3513]^c[3702]^c[3806]^c[3661]^c[3765]^c[3727]^c[3830]^c[3831]^c[3679]^c[3852]^c[3956]^c[3919]^c[4022]^c[4023]^c[3945]^c[3856]^c[3857]^c[4060]^c[4164]^c[4210]^c[4122]^c[4071]^c[4174]^c[4175]^c[4207]; //row: 9 d[i2+9*Zc]=c[173]^c[231]^c[2048]^c[2244]^c[2552]^c[3374]^c[3518]^c[3921]; //row: 10 d[i2+10*Zc]=c[292]^c[530]^c[849]^c[1454]^c[1726]^c[2849]; //row: 11 d[i2+11*Zc]=c[64]^c[37]^c[38]^c[25]^c[191]^c[154]^c[128]^c[33]^c[7]^c[47]^c[352]^c[325]^c[326]^c[199]^c[365]^c[228]^c[202]^c[293]^c[575]^c[548]^c[549]^c[409]^c[575]^c[469]^c[443]^c[702]^c[675]^c[676]^c[598]^c[764]^c[717]^c[691]^c[813]^c[787]^c[857]^c[831]^c[800]^c[774]^c[1090]^c[1063]^c[1064]^c[1053]^c[1027]^c[973]^c[1139]^c[1317]^c[1290]^c[1291]^c[1262]^c[1236]^c[1300]^c[1274]^c[1432]^c[1406]^c[1368]^c[1534]^c[1446]^c[1420]^c[1624]^c[1598]^c[1645]^c[1619]^c[1541]^c[1707]^c[1802]^c[1775]^c[1776]^c[1855]^c[1829]^c[1740]^c[1906]^c[1965]^c[1938]^c[1939]^c[1998]^c[1972]^c[2001]^c[1975]^c[2170]^c[2143]^c[2144]^c[2164]^c[2138]^c[2174]^c[2148]^c[2462]^c[2435]^c[2436]^c[2403]^c[2377]^c[2484]^c[2458]^c[2311]^c[2610]^c[2583]^c[2584]^c[2645]^c[2619]^c[2594]^c[2568]^c[2854]^c[2828]^c[2725]^c[2699]^c[2849]^c[2823]^c[3044]^c[3017]^c[3018]^c[2928]^c[2902]^c[2882]^c[3048]^c[3127]^c[3100]^c[3101]^c[3183]^c[3157]^c[3133]^c[3107]^c[3118]^c[3327]^c[3301]^c[3344]^c[3318]^c[3321]^c[3295]^c[3647]^c[3620]^c[3621]^c[3645]^c[3619]^c[3484]^c[3458]^c[3777]^c[3750]^c[3751]^c[3736]^c[3710]^c[3802]^c[3776]^c[3927]^c[3900]^c[3901]^c[3994]^c[3968]^c[4020]^c[3994]^c[4135]^c[4108]^c[4109]^c[4093]^c[4067]^c[4146]^c[4120]^c[4219]; //row: 12 d[i2+12*Zc]=c[76]^c[377]^c[2093]^c[2151]^c[2545]^c[3529]; //row: 13 d[i2+13*Zc]=c[100]^c[101]^c[62]^c[191]^c[70]^c[120]^c[196]^c[197]^c[236]^c[265]^c[419]^c[420]^c[446]^c[506]^c[738]^c[739]^c[635]^c[754]^c[752]^c[850]^c[894]^c[837]^c[1126]^c[1127]^c[1090]^c[1010]^c[1161]^c[1162]^c[1299]^c[1337]^c[1469]^c[1405]^c[1483]^c[1417]^c[1661]^c[1682]^c[1578]^c[1838]^c[1839]^c[1892]^c[1777]^c[2001]^c[2002]^c[2035]^c[2038]^c[2206]^c[2207]^c[2201]^c[2211]^c[2306]^c[2307]^c[2440]^c[2329]^c[2646]^c[2647]^c[2682]^c[2631]^c[2699]^c[2762]^c[2694]^c[2888]^c[2889]^c[2965]^c[2919]^c[3163]^c[3164]^c[3220]^c[3170]^c[3364]^c[3381]^c[3358]^c[3491]^c[3492]^c[3490]^c[3521]^c[3813]^c[3814]^c[3773]^c[3839]^c[3963]^c[3964]^c[4031]^c[3865]^c[3954]^c[4171]^c[4172]^c[4130]^c[4183]; //row: 14 d[i2+14*Zc]=c[141]^c[2359]^c[3016]^c[3160]^c[3418]^c[4043]; //row: 15 d[i2+15*Zc]=c[0]^c[153]^c[90]^c[160]^c[161]^c[48]^c[288]^c[327]^c[355]^c[356]^c[193]^c[511]^c[537]^c[405]^c[638]^c[726]^c[652]^c[653]^c[941]^c[793]^c[927]^c[928]^c[1026]^c[989]^c[1101]^c[1253]^c[1198]^c[1235]^c[1236]^c[1368]^c[1496]^c[1381]^c[1382]^c[1560]^c[1581]^c[1668]^c[1669]^c[1738]^c[1791]^c[1868]^c[2093]^c[1934]^c[1936]^c[1937]^c[1937]^c[2298]^c[2292]^c[2301]^c[2302]^c[2398]^c[2339]^c[2419]^c[2420]^c[2546]^c[2581]^c[2529]^c[2530]^c[2621]^c[2790]^c[2853]^c[2784]^c[2785]^c[2980]^c[3056]^c[3010]^c[3255]^c[3119]^c[3260]^c[3261]^c[3455]^c[3280]^c[3448]^c[3449]^c[3583]^c[3581]^c[3611]^c[3612]^c[3510]^c[3713]^c[3672]^c[3738]^c[3863]^c[3930]^c[3955]^c[3956]^c[4071]^c[4221]^c[4081]^c[4082]; //row: 16 d[i2+16*Zc]=c[171]^c[132]^c[69]^c[140]^c[267]^c[306]^c[335]^c[204]^c[490]^c[516]^c[384]^c[617]^c[705]^c[632]^c[721]^c[920]^c[772]^c[907]^c[1005]^c[968]^c[1080]^c[1232]^c[1177]^c[1215]^c[1347]^c[1475]^c[1361]^c[1539]^c[1560]^c[1648]^c[1909]^c[1770]^c[1847]^c[2072]^c[2105]^c[2108]^c[2277]^c[2271]^c[2281]^c[2168]^c[2377]^c[2318]^c[2399]^c[2525]^c[2560]^c[2509]^c[2769]^c[2832]^c[2764]^c[2959]^c[3035]^c[2989]^c[3234]^c[3098]^c[3240]^c[3434]^c[3451]^c[3428]^c[3562]^c[3560]^c[3591]^c[3692]^c[3651]^c[3717]^c[3842]^c[3909]^c[3935]^c[3936]^c[4050]^c[4200]^c[4061]; //row: 17 d[i2+17*Zc]=c[67]^c[2798]^c[3152]^c[3429]^c[4214]; //row: 18 d[i2+18*Zc]=c[321]^c[2466]^c[2583]^c[3587]^c[3651]; //row: 19 d[i2+19*Zc]=c[144]^c[212]^c[1495]^c[1585]^c[1924]; //row: 20 d[i2+20*Zc]=c[173]^c[134]^c[71]^c[142]^c[186]^c[269]^c[308]^c[337]^c[492]^c[518]^c[386]^c[619]^c[707]^c[634]^c[589]^c[922]^c[774]^c[909]^c[1007]^c[970]^c[1082]^c[1234]^c[1179]^c[1217]^c[1349]^c[1477]^c[1363]^c[1541]^c[1562]^c[1650]^c[1911]^c[1772]^c[1849]^c[1799]^c[2074]^c[2107]^c[2110]^c[2279]^c[2273]^c[2283]^c[2260]^c[2379]^c[2320]^c[2401]^c[2527]^c[2562]^c[2511]^c[2771]^c[2834]^c[2766]^c[2961]^c[3037]^c[2991]^c[3236]^c[3100]^c[3242]^c[3436]^c[3453]^c[3430]^c[3564]^c[3562]^c[3593]^c[3694]^c[3653]^c[3719]^c[3844]^c[3911]^c[3937]^c[4052]^c[4202]^c[4063]; //row: 21 d[i2+21*Zc]=c[204]^c[1061]^c[3207]^c[3860]^c[4128]; //row: 22 d[i2+22*Zc]=c[29]^c[2314]^c[2536]^c[3285]; //row: 23 d[i2+23*Zc]=c[215]^c[472]^c[1980]^c[3482]; //row: 24 d[i2+24*Zc]=c[156]^c[117]^c[54]^c[125]^c[105]^c[252]^c[291]^c[320]^c[475]^c[501]^c[561]^c[602]^c[690]^c[617]^c[733]^c[905]^c[949]^c[892]^c[810]^c[990]^c[1145]^c[1065]^c[1217]^c[1162]^c[1200]^c[1524]^c[1460]^c[1346]^c[1716]^c[1545]^c[1633]^c[1894]^c[1755]^c[1832]^c[2057]^c[2090]^c[2093]^c[2262]^c[2256]^c[2266]^c[2258]^c[2362]^c[2495]^c[2384]^c[2510]^c[2545]^c[2686]^c[2754]^c[2817]^c[2749]^c[2944]^c[3020]^c[2974]^c[3219]^c[3083]^c[3225]^c[3419]^c[3436]^c[3413]^c[3547]^c[3545]^c[3576]^c[3677]^c[3828]^c[3702]^c[4019]^c[3894]^c[3920]^c[4035]^c[4185]^c[4046]; //row: 25 d[i2+25*Zc]=c[263]^c[1168]^c[1534]^c[2807]; //row: 26 d[i2+26*Zc]=c[70]^c[464]^c[843]^c[3015]; //row: 27 d[i2+27*Zc]=c[193]^c[1153]^c[1636]; //row: 28 d[i2+28*Zc]=c[29]^c[786]^c[3699]^c[4113]; //row: 29 d[i2+29*Zc]=c[1]^c[154]^c[91]^c[161]^c[162]^c[289]^c[328]^c[356]^c[357]^c[251]^c[512]^c[538]^c[406]^c[639]^c[727]^c[653]^c[654]^c[942]^c[794]^c[928]^c[929]^c[1027]^c[990]^c[1102]^c[1254]^c[1199]^c[1236]^c[1237]^c[1369]^c[1497]^c[1382]^c[1383]^c[1561]^c[1582]^c[1669]^c[1670]^c[1739]^c[1792]^c[1869]^c[2094]^c[1935]^c[1937]^c[1938]^c[2299]^c[2293]^c[2302]^c[2303]^c[2399]^c[2340]^c[2420]^c[2421]^c[2547]^c[2582]^c[2530]^c[2531]^c[2791]^c[2854]^c[2785]^c[2786]^c[2692]^c[2981]^c[3057]^c[3011]^c[3256]^c[3120]^c[3261]^c[3262]^c[3264]^c[3281]^c[3449]^c[3450]^c[3584]^c[3582]^c[3612]^c[3613]^c[3602]^c[3714]^c[3673]^c[3739]^c[3864]^c[3931]^c[3956]^c[3957]^c[4072]^c[4222]^c[4082]^c[4083]; //row: 30 d[i2+30*Zc]=c[13]^c[166]^c[102]^c[103]^c[173]^c[174]^c[158]^c[301]^c[339]^c[340]^c[368]^c[369]^c[524]^c[550]^c[417]^c[418]^c[651]^c[739]^c[665]^c[666]^c[954]^c[805]^c[806]^c[940]^c[941]^c[1039]^c[1002]^c[1113]^c[1114]^c[1266]^c[1210]^c[1211]^c[1248]^c[1249]^c[1381]^c[1508]^c[1509]^c[1394]^c[1395]^c[1573]^c[1593]^c[1594]^c[1681]^c[1682]^c[1751]^c[1804]^c[1880]^c[1881]^c[2106]^c[1946]^c[1947]^c[1949]^c[1950]^c[1956]^c[2119]^c[2113]^c[2122]^c[2123]^c[2411]^c[2352]^c[2432]^c[2433]^c[2559]^c[2593]^c[2594]^c[2542]^c[2543]^c[2563]^c[2803]^c[2865]^c[2866]^c[2797]^c[2798]^c[2993]^c[3069]^c[3022]^c[3023]^c[3076]^c[3132]^c[3081]^c[3082]^c[3276]^c[3292]^c[3293]^c[3269]^c[3270]^c[3596]^c[3593]^c[3594]^c[3624]^c[3625]^c[3726]^c[3685]^c[3750]^c[3751]^c[3876]^c[3942]^c[3943]^c[3968]^c[3969]^c[4084]^c[4042]^c[4094]^c[4095]; //row: 31 d[i2+31*Zc]=c[180]^c[179]^c[141]^c[140]^c[78]^c[77]^c[149]^c[147]^c[148]^c[276]^c[275]^c[315]^c[314]^c[344]^c[342]^c[343]^c[291]^c[499]^c[498]^c[525]^c[524]^c[393]^c[392]^c[626]^c[625]^c[714]^c[713]^c[641]^c[639]^c[640]^c[929]^c[928]^c[781]^c[780]^c[916]^c[914]^c[915]^c[1014]^c[1013]^c[977]^c[976]^c[1089]^c[1088]^c[1241]^c[1240]^c[1186]^c[1185]^c[1224]^c[1222]^c[1223]^c[1356]^c[1355]^c[1484]^c[1483]^c[1370]^c[1368]^c[1369]^c[1366]^c[1548]^c[1547]^c[1569]^c[1568]^c[1657]^c[1655]^c[1656]^c[1918]^c[1917]^c[1779]^c[1778]^c[1856]^c[1855]^c[2081]^c[2080]^c[1922]^c[1921]^c[1925]^c[1923]^c[1924]^c[2286]^c[2285]^c[2280]^c[2279]^c[2290]^c[2288]^c[2289]^c[2386]^c[2385]^c[2327]^c[2326]^c[2408]^c[2406]^c[2407]^c[2534]^c[2533]^c[2569]^c[2568]^c[2518]^c[2516]^c[2517]^c[2778]^c[2777]^c[2841]^c[2840]^c[2773]^c[2771]^c[2772]^c[2968]^c[2967]^c[3044]^c[3043]^c[2998]^c[2997]^c[3243]^c[3242]^c[3107]^c[3106]^c[3249]^c[3247]^c[3248]^c[3443]^c[3442]^c[3268]^c[3267]^c[3437]^c[3435]^c[3436]^c[3571]^c[3570]^c[3569]^c[3568]^c[3600]^c[3598]^c[3599]^c[3701]^c[3700]^c[3660]^c[3659]^c[3726]^c[3725]^c[3851]^c[3850]^c[3918]^c[3917]^c[3944]^c[3942]^c[3943]^c[4059]^c[4058]^c[4209]^c[4208]^c[4070]^c[4068]^c[4069]; //row: 32 d[i2+32*Zc]=c[18]^c[171]^c[107]^c[108]^c[178]^c[179]^c[101]^c[306]^c[344]^c[345]^c[373]^c[374]^c[529]^c[555]^c[422]^c[423]^c[656]^c[744]^c[670]^c[671]^c[959]^c[810]^c[811]^c[945]^c[946]^c[1044]^c[1007]^c[1118]^c[1119]^c[1271]^c[1215]^c[1216]^c[1253]^c[1254]^c[1386]^c[1513]^c[1514]^c[1399]^c[1400]^c[1578]^c[1598]^c[1599]^c[1686]^c[1687]^c[1756]^c[1809]^c[1885]^c[1886]^c[2111]^c[1951]^c[1952]^c[1954]^c[1955]^c[2124]^c[2118]^c[2127]^c[2128]^c[2416]^c[2357]^c[2437]^c[2438]^c[2312]^c[2564]^c[2598]^c[2599]^c[2547]^c[2548]^c[2808]^c[2870]^c[2871]^c[2802]^c[2803]^c[2862]^c[2998]^c[2882]^c[3027]^c[3028]^c[3081]^c[3137]^c[3086]^c[3087]^c[3281]^c[3297]^c[3298]^c[3274]^c[3275]^c[3601]^c[3598]^c[3599]^c[3629]^c[3630]^c[3731]^c[3690]^c[3755]^c[3756]^c[3881]^c[3947]^c[3948]^c[3973]^c[3974]^c[4089]^c[4047]^c[4099]^c[4100]; //row: 33 d[i2+33*Zc]=c[322]^c[391]^c[2280]^c[4136]; //row: 34 d[i2+34*Zc]=c[37]^c[1491]^c[2889]^c[3383]; //row: 35 d[i2+35*Zc]=c[188]^c[149]^c[86]^c[157]^c[284]^c[323]^c[352]^c[319]^c[507]^c[533]^c[401]^c[634]^c[722]^c[649]^c[937]^c[789]^c[924]^c[1022]^c[985]^c[1097]^c[1249]^c[1194]^c[1232]^c[1294]^c[1364]^c[1492]^c[1378]^c[1556]^c[1577]^c[1665]^c[1734]^c[1787]^c[1864]^c[2089]^c[1930]^c[1933]^c[2294]^c[2288]^c[2298]^c[2394]^c[2335]^c[2416]^c[2305]^c[2542]^c[2577]^c[2526]^c[2786]^c[2849]^c[2781]^c[2976]^c[3052]^c[3006]^c[3251]^c[3115]^c[3257]^c[3451]^c[3276]^c[3445]^c[3579]^c[3577]^c[3608]^c[3709]^c[3668]^c[3734]^c[3859]^c[3926]^c[3952]^c[4067]^c[4217]^c[4078]; //row: 36 d[i2+36*Zc]=c[17]^c[2808]^c[2984]^c[3476]; //row: 37 d[i2+37*Zc]=c[37]^c[38]^c[191]^c[128]^c[7]^c[325]^c[326]^c[365]^c[202]^c[268]^c[548]^c[549]^c[575]^c[443]^c[675]^c[676]^c[764]^c[691]^c[787]^c[831]^c[774]^c[1063]^c[1064]^c[1027]^c[1139]^c[1290]^c[1291]^c[1236]^c[1274]^c[1406]^c[1534]^c[1420]^c[1598]^c[1619]^c[1707]^c[1775]^c[1776]^c[1829]^c[1906]^c[1938]^c[1939]^c[1972]^c[1975]^c[2143]^c[2144]^c[2138]^c[2148]^c[2435]^c[2436]^c[2377]^c[2458]^c[2583]^c[2584]^c[2619]^c[2568]^c[2577]^c[2828]^c[2699]^c[2823]^c[3017]^c[3018]^c[2902]^c[3048]^c[3100]^c[3101]^c[3157]^c[3107]^c[3301]^c[3318]^c[3295]^c[3620]^c[3621]^c[3619]^c[3458]^c[3750]^c[3751]^c[3710]^c[3776]^c[3900]^c[3901]^c[3968]^c[3994]^c[4108]^c[4109]^c[4067]^c[4120]; //row: 38 d[i2+38*Zc]=c[184]^c[1904]^c[2016]^c[2325]; //row: 39 d[i2+39*Zc]=c[257]^c[668]^c[1497]^c[3752]; //row: 40 d[i2+40*Zc]=c[174]^c[1572]^c[3383]; //row: 41 d[i2+41*Zc]=c[243]^c[697]^c[1866]^c[3551]; //row: 42 d[i2+42*Zc]=c[141]^c[102]^c[38]^c[39]^c[109]^c[110]^c[112]^c[237]^c[275]^c[276]^c[304]^c[305]^c[460]^c[486]^c[545]^c[546]^c[587]^c[675]^c[601]^c[602]^c[890]^c[933]^c[934]^c[876]^c[877]^c[781]^c[975]^c[1130]^c[1049]^c[1050]^c[1202]^c[1338]^c[1339]^c[1184]^c[1185]^c[1509]^c[1444]^c[1445]^c[1522]^c[1523]^c[1701]^c[1721]^c[1722]^c[1617]^c[1618]^c[1879]^c[1740]^c[1816]^c[1817]^c[2042]^c[2074]^c[2075]^c[2077]^c[2078]^c[2247]^c[2241]^c[2250]^c[2251]^c[2347]^c[2480]^c[2368]^c[2369]^c[2687]^c[2529]^c[2530]^c[2670]^c[2671]^c[2739]^c[2801]^c[2802]^c[2733]^c[2734]^c[2929]^c[3005]^c[2958]^c[2959]^c[3204]^c[3260]^c[3209]^c[3210]^c[3404]^c[3420]^c[3421]^c[3397]^c[3398]^c[3532]^c[3529]^c[3530]^c[3560]^c[3561]^c[3662]^c[3813]^c[3686]^c[3687]^c[4004]^c[3878]^c[3879]^c[3904]^c[3905]^c[4212]^c[4170]^c[4222]^c[4223]; //row: 43 d[i2+43*Zc]=c[91]^c[52]^c[181]^c[59]^c[60]^c[379]^c[226]^c[254]^c[255]^c[304]^c[410]^c[436]^c[496]^c[729]^c[625]^c[743]^c[744]^c[840]^c[884]^c[826]^c[827]^c[1117]^c[1080]^c[1000]^c[1152]^c[1289]^c[1326]^c[1327]^c[1459]^c[1395]^c[1472]^c[1473]^c[1651]^c[1672]^c[1567]^c[1568]^c[1829]^c[1882]^c[1767]^c[1992]^c[2025]^c[2027]^c[2028]^c[2197]^c[2191]^c[2200]^c[2201]^c[2489]^c[2430]^c[2318]^c[2319]^c[2637]^c[2672]^c[2620]^c[2621]^c[2689]^c[2752]^c[2875]^c[2876]^c[3071]^c[2955]^c[2909]^c[3154]^c[3210]^c[3159]^c[3160]^c[3203]^c[3354]^c[3371]^c[3347]^c[3348]^c[3482]^c[3480]^c[3510]^c[3511]^c[3569]^c[3804]^c[3763]^c[3829]^c[3954]^c[4021]^c[3854]^c[3855]^c[4162]^c[4120]^c[4172]^c[4173]; //row: 44 d[i2+44*Zc]=c[4]^c[157]^c[94]^c[165]^c[79]^c[292]^c[331]^c[360]^c[515]^c[541]^c[409]^c[642]^c[730]^c[657]^c[945]^c[797]^c[932]^c[1030]^c[993]^c[1105]^c[1257]^c[1202]^c[1240]^c[1372]^c[1500]^c[1386]^c[1421]^c[1564]^c[1585]^c[1673]^c[1742]^c[1795]^c[1872]^c[1890]^c[2097]^c[1938]^c[1941]^c[2302]^c[2296]^c[2114]^c[2402]^c[2343]^c[2424]^c[2550]^c[2585]^c[2534]^c[2794]^c[2857]^c[2789]^c[2984]^c[3060]^c[3014]^c[3259]^c[3123]^c[3073]^c[3267]^c[3284]^c[3453]^c[3587]^c[3585]^c[3616]^c[3717]^c[3676]^c[3742]^c[3867]^c[3934]^c[3960]^c[4075]^c[4033]^c[4086]; //row: 45 d[i2+45*Zc]=c[326]^c[1300]^c[1934]; } break; case 208: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[102]^c[124]^c[26]^c[106]^c[310]^c[347]^c[316]^c[518]^c[529]^c[539]^c[726]^c[642]^c[759]^c[934]^c[906]^c[839]^c[1142]^c[1152]^c[1146]^c[1350]^c[1291]^c[1399]^c[1558]^c[1606]^c[1579]^c[1766]^c[1804]^c[1772]^c[1974]^c[1976]^c[1888]^c[2182]^c[2169]^c[2125]^c[2390]^c[2406]^c[2473]^c[2598]^c[2658]^c[2544]^c[2806]^c[2753]^c[2893]^c[3014]^c[3042]^c[3019]^c[3222]^c[3228]^c[3307]^c[3430]^c[3460]^c[3522]^c[3638]^c[3685]^c[3603]^c[3846]^c[3817]^c[3758]^c[4054]^c[4014]^c[4096]^c[4262]^c[4328]^c[4264]^c[4470]^c[4501]^c[4404]; //row: 1 d[i2+1*Zc]=c[207]^c[102]^c[124]^c[26]^c[106]^c[415]^c[310]^c[347]^c[316]^c[623]^c[518]^c[529]^c[539]^c[831]^c[726]^c[642]^c[759]^c[934]^c[906]^c[839]^c[1247]^c[1142]^c[1152]^c[1146]^c[1455]^c[1350]^c[1291]^c[1399]^c[1558]^c[1606]^c[1579]^c[1766]^c[1804]^c[1772]^c[2079]^c[1974]^c[1976]^c[1888]^c[2287]^c[2182]^c[2169]^c[2125]^c[2495]^c[2390]^c[2406]^c[2473]^c[2703]^c[2598]^c[2658]^c[2544]^c[2911]^c[2806]^c[2753]^c[2893]^c[3014]^c[3042]^c[3019]^c[3327]^c[3222]^c[3228]^c[3307]^c[3535]^c[3430]^c[3460]^c[3522]^c[3638]^c[3685]^c[3603]^c[3951]^c[3846]^c[3817]^c[3758]^c[4159]^c[4054]^c[4014]^c[4096]^c[4367]^c[4262]^c[4328]^c[4264]^c[4575]^c[4470]^c[4501]^c[4404]; //row: 2 d[i2+2*Zc]=c[102]^c[124]^c[131]^c[26]^c[3]^c[106]^c[310]^c[244]^c[347]^c[213]^c[316]^c[518]^c[529]^c[436]^c[539]^c[726]^c[642]^c[656]^c[759]^c[934]^c[1011]^c[906]^c[944]^c[839]^c[1142]^c[1152]^c[1043]^c[1146]^c[1350]^c[1396]^c[1291]^c[1296]^c[1399]^c[1558]^c[1503]^c[1606]^c[1476]^c[1579]^c[1766]^c[1701]^c[1804]^c[1669]^c[1772]^c[1974]^c[1976]^c[1993]^c[1888]^c[2182]^c[2274]^c[2169]^c[2230]^c[2125]^c[2390]^c[2406]^c[2370]^c[2473]^c[2598]^c[2658]^c[2649]^c[2544]^c[2806]^c[2858]^c[2753]^c[2790]^c[2893]^c[3014]^c[2939]^c[3042]^c[2916]^c[3019]^c[3222]^c[3228]^c[3204]^c[3307]^c[3430]^c[3460]^c[3419]^c[3522]^c[3638]^c[3582]^c[3685]^c[3708]^c[3603]^c[3846]^c[3922]^c[3817]^c[3863]^c[3758]^c[4054]^c[4014]^c[3993]^c[4096]^c[4262]^c[4225]^c[4328]^c[4161]^c[4264]^c[4470]^c[4501]^c[4509]^c[4404]; //row: 3 d[i2+3*Zc]=c[102]^c[124]^c[26]^c[3]^c[106]^c[310]^c[347]^c[213]^c[316]^c[518]^c[529]^c[539]^c[726]^c[642]^c[656]^c[759]^c[934]^c[906]^c[944]^c[839]^c[1142]^c[1152]^c[1146]^c[1350]^c[1291]^c[1296]^c[1399]^c[1558]^c[1606]^c[1476]^c[1579]^c[1766]^c[1804]^c[1669]^c[1772]^c[1974]^c[1976]^c[1888]^c[2182]^c[2169]^c[2230]^c[2125]^c[2390]^c[2406]^c[2370]^c[2473]^c[2598]^c[2658]^c[2649]^c[2544]^c[2806]^c[2753]^c[2790]^c[2893]^c[3014]^c[3042]^c[2916]^c[3019]^c[3222]^c[3228]^c[3307]^c[3430]^c[3460]^c[3419]^c[3522]^c[3638]^c[3685]^c[3708]^c[3603]^c[3846]^c[3817]^c[3863]^c[3758]^c[4054]^c[4014]^c[4096]^c[4262]^c[4328]^c[4161]^c[4264]^c[4470]^c[4501]^c[4509]^c[4404]; //row: 4 d[i2+4*Zc]=c[23]^c[411]; //row: 5 d[i2+5*Zc]=c[174]^c[196]^c[98]^c[178]^c[184]^c[382]^c[211]^c[388]^c[307]^c[590]^c[601]^c[611]^c[798]^c[714]^c[831]^c[647]^c[1006]^c[978]^c[911]^c[1214]^c[1224]^c[1218]^c[1422]^c[1363]^c[1263]^c[1630]^c[1470]^c[1651]^c[1838]^c[1668]^c[1844]^c[2046]^c[2048]^c[1960]^c[2254]^c[2241]^c[2197]^c[2462]^c[2478]^c[2337]^c[2670]^c[2522]^c[2616]^c[2560]^c[2878]^c[2825]^c[2757]^c[3086]^c[3114]^c[3091]^c[3294]^c[3300]^c[3171]^c[3502]^c[3532]^c[3386]^c[3534]^c[3710]^c[3549]^c[3675]^c[3918]^c[3889]^c[3830]^c[4126]^c[4086]^c[3960]^c[4334]^c[4192]^c[4336]^c[4542]^c[4573]^c[4476]^c[4528]; //row: 6 d[i2+6*Zc]=c[5]^c[1274]^c[2242]^c[2337]^c[2751]^c[3559]^c[3781]^c[4250]; //row: 7 d[i2+7*Zc]=c[144]^c[295]^c[943]^c[1608]^c[1822]^c[2987]; //row: 8 d[i2+8*Zc]=c[137]^c[10]^c[159]^c[32]^c[61]^c[39]^c[142]^c[141]^c[119]^c[14]^c[171]^c[345]^c[218]^c[382]^c[360]^c[255]^c[351]^c[329]^c[224]^c[209]^c[553]^c[426]^c[564]^c[437]^c[574]^c[552]^c[447]^c[761]^c[634]^c[677]^c[758]^c[794]^c[772]^c[667]^c[754]^c[969]^c[842]^c[941]^c[919]^c[1022]^c[874]^c[852]^c[955]^c[1177]^c[1050]^c[1187]^c[1060]^c[1181]^c[1159]^c[1054]^c[1385]^c[1258]^c[1326]^c[1304]^c[1407]^c[1434]^c[1412]^c[1307]^c[1593]^c[1466]^c[1641]^c[1619]^c[1514]^c[1614]^c[1592]^c[1487]^c[1801]^c[1674]^c[1839]^c[1817]^c[1712]^c[1807]^c[1785]^c[1680]^c[2009]^c[1882]^c[2011]^c[1884]^c[1923]^c[1901]^c[2004]^c[2217]^c[2090]^c[2204]^c[2182]^c[2285]^c[2160]^c[2138]^c[2241]^c[2425]^c[2298]^c[2441]^c[2314]^c[2300]^c[2486]^c[2381]^c[2633]^c[2506]^c[2693]^c[2566]^c[2579]^c[2557]^c[2660]^c[2636]^c[2841]^c[2714]^c[2788]^c[2766]^c[2869]^c[2720]^c[2906]^c[2801]^c[3049]^c[2922]^c[3077]^c[3055]^c[2950]^c[3054]^c[3032]^c[2927]^c[3257]^c[3130]^c[3263]^c[3136]^c[3134]^c[3320]^c[3215]^c[3465]^c[3338]^c[3495]^c[3368]^c[3349]^c[3535]^c[3430]^c[3423]^c[3673]^c[3546]^c[3720]^c[3698]^c[3593]^c[3638]^c[3616]^c[3719]^c[3881]^c[3754]^c[3852]^c[3830]^c[3933]^c[3793]^c[3771]^c[3874]^c[4089]^c[3962]^c[4049]^c[4130]^c[4131]^c[4109]^c[4004]^c[4050]^c[4297]^c[4170]^c[4363]^c[4341]^c[4236]^c[4299]^c[4277]^c[4172]^c[4505]^c[4378]^c[4536]^c[4409]^c[4439]^c[4417]^c[4520]^c[4468]; //row: 9 d[i2+9*Zc]=c[5]^c[217]^c[2224]^c[2340]^c[2904]^c[3539]^c[3907]^c[4332]; //row: 10 d[i2+10*Zc]=c[333]^c[492]^c[987]^c[1471]^c[1675]^c[2981]; //row: 11 d[i2+11*Zc]=c[3]^c[123]^c[18]^c[25]^c[40]^c[135]^c[150]^c[7]^c[22]^c[183]^c[211]^c[331]^c[226]^c[248]^c[263]^c[217]^c[232]^c[401]^c[419]^c[539]^c[434]^c[430]^c[445]^c[440]^c[455]^c[627]^c[747]^c[642]^c[751]^c[766]^c[660]^c[675]^c[835]^c[850]^c[1015]^c[1030]^c[948]^c[963]^c[1043]^c[1163]^c[1058]^c[1053]^c[1068]^c[1047]^c[1062]^c[1251]^c[1371]^c[1266]^c[1400]^c[1415]^c[1300]^c[1315]^c[1459]^c[1474]^c[1507]^c[1522]^c[1480]^c[1495]^c[1667]^c[1682]^c[1705]^c[1720]^c[1673]^c[1688]^c[1875]^c[1995]^c[1890]^c[1877]^c[1892]^c[1997]^c[2012]^c[2083]^c[2203]^c[2098]^c[2278]^c[2085]^c[2234]^c[2249]^c[2291]^c[2411]^c[2306]^c[2307]^c[2322]^c[2374]^c[2389]^c[2499]^c[2619]^c[2514]^c[2559]^c[2574]^c[2653]^c[2668]^c[2618]^c[2707]^c[2827]^c[2722]^c[2862]^c[2877]^c[2794]^c[2809]^c[2915]^c[2930]^c[2943]^c[2958]^c[2920]^c[2935]^c[3123]^c[3243]^c[3138]^c[3129]^c[3144]^c[3208]^c[3223]^c[3331]^c[3451]^c[3346]^c[3361]^c[3376]^c[3423]^c[3438]^c[3343]^c[3539]^c[3554]^c[3586]^c[3601]^c[3712]^c[3727]^c[3747]^c[3867]^c[3762]^c[3926]^c[3941]^c[3867]^c[3882]^c[3955]^c[4075]^c[3970]^c[4123]^c[4138]^c[3997]^c[4012]^c[4163]^c[4283]^c[4178]^c[4229]^c[4244]^c[4165]^c[4180]^c[4371]^c[4491]^c[4386]^c[4402]^c[4417]^c[4513]^c[4528]^c[4471]; //row: 12 d[i2+12*Zc]=c[5]^c[227]^c[2282]^c[2440]^c[2807]^c[3950]; //row: 13 d[i2+13*Zc]=c[45]^c[148]^c[170]^c[72]^c[152]^c[51]^c[253]^c[356]^c[393]^c[362]^c[461]^c[564]^c[575]^c[585]^c[669]^c[772]^c[688]^c[805]^c[770]^c[980]^c[952]^c[885]^c[1085]^c[1188]^c[1198]^c[1192]^c[1293]^c[1396]^c[1337]^c[1445]^c[1604]^c[1652]^c[1625]^c[1456]^c[1812]^c[1850]^c[1818]^c[1917]^c[2020]^c[2022]^c[1934]^c[2125]^c[2228]^c[2215]^c[2171]^c[2333]^c[2436]^c[2452]^c[2311]^c[2541]^c[2644]^c[2496]^c[2590]^c[2749]^c[2852]^c[2799]^c[2731]^c[3060]^c[3088]^c[3065]^c[3165]^c[3268]^c[3274]^c[3145]^c[3373]^c[3476]^c[3506]^c[3360]^c[3684]^c[3731]^c[3649]^c[3789]^c[3892]^c[3863]^c[3804]^c[3997]^c[4100]^c[4060]^c[4142]^c[4205]^c[4308]^c[4166]^c[4310]^c[4175]^c[4413]^c[4516]^c[4547]^c[4450]; //row: 14 d[i2+14*Zc]=c[0]^c[2697]^c[3237]^c[3457]^c[3536]^c[4369]; //row: 15 d[i2+15*Zc]=c[148]^c[170]^c[72]^c[49]^c[152]^c[172]^c[356]^c[393]^c[259]^c[362]^c[213]^c[564]^c[575]^c[585]^c[772]^c[688]^c[702]^c[805]^c[980]^c[952]^c[990]^c[885]^c[1188]^c[1198]^c[1192]^c[1396]^c[1337]^c[1342]^c[1445]^c[1604]^c[1652]^c[1522]^c[1625]^c[1812]^c[1850]^c[1715]^c[1818]^c[2020]^c[2022]^c[1934]^c[2228]^c[2215]^c[2276]^c[2171]^c[2160]^c[2436]^c[2452]^c[2416]^c[2311]^c[2644]^c[2496]^c[2695]^c[2590]^c[2852]^c[2799]^c[2836]^c[2731]^c[2885]^c[3060]^c[3088]^c[2962]^c[3065]^c[3268]^c[3274]^c[3145]^c[3476]^c[3506]^c[3465]^c[3360]^c[3684]^c[3731]^c[3546]^c[3649]^c[3892]^c[3863]^c[3909]^c[3804]^c[3796]^c[4100]^c[4060]^c[4142]^c[4308]^c[4166]^c[4207]^c[4310]^c[4516]^c[4547]^c[4555]^c[4450]; //row: 16 d[i2+16*Zc]=c[76]^c[98]^c[0]^c[80]^c[284]^c[321]^c[290]^c[295]^c[492]^c[503]^c[513]^c[700]^c[824]^c[733]^c[821]^c[908]^c[880]^c[1021]^c[1116]^c[1126]^c[1120]^c[1324]^c[1265]^c[1373]^c[1532]^c[1580]^c[1553]^c[1740]^c[1778]^c[1746]^c[1948]^c[1950]^c[2070]^c[2156]^c[2143]^c[2099]^c[2364]^c[2380]^c[2447]^c[2447]^c[2572]^c[2632]^c[2518]^c[2780]^c[2727]^c[2867]^c[2988]^c[3016]^c[2993]^c[3196]^c[3202]^c[3281]^c[3404]^c[3434]^c[3496]^c[3612]^c[3659]^c[3577]^c[3820]^c[3791]^c[3940]^c[4028]^c[3988]^c[4070]^c[4236]^c[4302]^c[4238]^c[4281]^c[4444]^c[4475]^c[4378]; //row: 17 d[i2+17*Zc]=c[90]^c[3095]^c[3357]^c[3538]^c[4522]; //row: 18 d[i2+18*Zc]=c[208]^c[2536]^c[2870]^c[3811]^c[4099]; //row: 19 d[i2+19*Zc]=c[11]^c[213]^c[1621]^c[1847]^c[2270]; //row: 20 d[i2+20*Zc]=c[132]^c[154]^c[56]^c[136]^c[5]^c[340]^c[377]^c[346]^c[548]^c[559]^c[569]^c[756]^c[672]^c[789]^c[635]^c[964]^c[936]^c[869]^c[1172]^c[1182]^c[1176]^c[1380]^c[1321]^c[1429]^c[1588]^c[1636]^c[1609]^c[1796]^c[1834]^c[1802]^c[2004]^c[2006]^c[1918]^c[1886]^c[2212]^c[2199]^c[2155]^c[2420]^c[2436]^c[2295]^c[2292]^c[2628]^c[2688]^c[2574]^c[2836]^c[2783]^c[2715]^c[3044]^c[3072]^c[3049]^c[3252]^c[3258]^c[3129]^c[3460]^c[3490]^c[3344]^c[3668]^c[3715]^c[3633]^c[3876]^c[3847]^c[3788]^c[4084]^c[4044]^c[4126]^c[4292]^c[4358]^c[4294]^c[4500]^c[4531]^c[4434]; //row: 21 d[i2+21*Zc]=c[213]^c[1125]^c[3423]^c[4201]^c[4566]; //row: 22 d[i2+22*Zc]=c[43]^c[2553]^c[2833]^c[3666]; //row: 23 d[i2+23*Zc]=c[252]^c[433]^c[2211]^c[3843]; //row: 24 d[i2+24*Zc]=c[108]^c[130]^c[32]^c[112]^c[8]^c[316]^c[353]^c[322]^c[524]^c[535]^c[545]^c[732]^c[648]^c[765]^c[748]^c[940]^c[912]^c[845]^c[1022]^c[1148]^c[1158]^c[1152]^c[1356]^c[1297]^c[1405]^c[1564]^c[1612]^c[1585]^c[1772]^c[1810]^c[1778]^c[1980]^c[1982]^c[1894]^c[2188]^c[2175]^c[2131]^c[2396]^c[2412]^c[2479]^c[2315]^c[2604]^c[2664]^c[2550]^c[2812]^c[2759]^c[2899]^c[3020]^c[3048]^c[3025]^c[3228]^c[3234]^c[3313]^c[3436]^c[3466]^c[3528]^c[3644]^c[3691]^c[3609]^c[3852]^c[3823]^c[3764]^c[4060]^c[4020]^c[4102]^c[4268]^c[4334]^c[4270]^c[4476]^c[4507]^c[4410]; //row: 25 d[i2+25*Zc]=c[211]^c[1321]^c[1471]^c[2939]; //row: 26 d[i2+26*Zc]=c[20]^c[557]^c[1023]^c[3316]; //row: 27 d[i2+27*Zc]=c[305]^c[1387]^c[1685]; //row: 28 d[i2+28*Zc]=c[3]^c[832]^c[3991]^c[4460]; //row: 29 d[i2+29*Zc]=c[108]^c[130]^c[32]^c[9]^c[112]^c[316]^c[353]^c[219]^c[322]^c[299]^c[524]^c[535]^c[545]^c[732]^c[648]^c[662]^c[765]^c[940]^c[912]^c[950]^c[845]^c[1148]^c[1158]^c[1152]^c[1356]^c[1297]^c[1302]^c[1405]^c[1564]^c[1612]^c[1482]^c[1585]^c[1772]^c[1810]^c[1675]^c[1778]^c[1980]^c[1982]^c[1894]^c[2188]^c[2175]^c[2236]^c[2131]^c[2396]^c[2412]^c[2376]^c[2479]^c[2604]^c[2664]^c[2655]^c[2550]^c[2812]^c[2759]^c[2796]^c[2899]^c[3020]^c[3048]^c[2922]^c[3025]^c[3047]^c[3228]^c[3234]^c[3313]^c[3436]^c[3466]^c[3425]^c[3528]^c[3644]^c[3691]^c[3714]^c[3609]^c[3852]^c[3823]^c[3869]^c[3764]^c[3849]^c[4060]^c[4020]^c[4102]^c[4268]^c[4334]^c[4167]^c[4270]^c[4476]^c[4507]^c[4515]^c[4410]; //row: 30 d[i2+30*Zc]=c[122]^c[144]^c[151]^c[46]^c[23]^c[126]^c[1]^c[330]^c[264]^c[367]^c[233]^c[336]^c[538]^c[549]^c[456]^c[559]^c[746]^c[662]^c[676]^c[779]^c[954]^c[1031]^c[926]^c[964]^c[859]^c[1162]^c[1172]^c[1063]^c[1166]^c[1370]^c[1416]^c[1311]^c[1316]^c[1419]^c[1578]^c[1523]^c[1626]^c[1496]^c[1599]^c[1786]^c[1721]^c[1824]^c[1689]^c[1792]^c[1994]^c[1996]^c[2013]^c[1908]^c[2202]^c[2086]^c[2189]^c[2250]^c[2145]^c[2167]^c[2410]^c[2426]^c[2390]^c[2493]^c[2618]^c[2678]^c[2669]^c[2564]^c[2826]^c[2878]^c[2773]^c[2810]^c[2705]^c[2815]^c[3034]^c[2959]^c[3062]^c[2936]^c[3039]^c[3242]^c[3248]^c[3224]^c[3327]^c[3450]^c[3480]^c[3439]^c[3334]^c[3658]^c[3602]^c[3705]^c[3728]^c[3623]^c[3866]^c[3942]^c[3837]^c[3883]^c[3778]^c[4074]^c[4034]^c[4013]^c[4116]^c[4282]^c[4245]^c[4348]^c[4181]^c[4284]^c[4490]^c[4521]^c[4529]^c[4424]; //row: 31 d[i2+31*Zc]=c[19]^c[88]^c[41]^c[110]^c[151]^c[12]^c[23]^c[197]^c[92]^c[227]^c[296]^c[264]^c[333]^c[233]^c[407]^c[302]^c[211]^c[435]^c[504]^c[446]^c[515]^c[456]^c[525]^c[643]^c[712]^c[767]^c[628]^c[676]^c[642]^c[745]^c[851]^c[920]^c[1031]^c[892]^c[964]^c[930]^c[1033]^c[1059]^c[1128]^c[1069]^c[1138]^c[1063]^c[1132]^c[1267]^c[1336]^c[1416]^c[1277]^c[1316]^c[1282]^c[1385]^c[1475]^c[1544]^c[1523]^c[1592]^c[1496]^c[1462]^c[1565]^c[1504]^c[1683]^c[1752]^c[1721]^c[1790]^c[1689]^c[1863]^c[1758]^c[1891]^c[1960]^c[1893]^c[1962]^c[2013]^c[1874]^c[2099]^c[2168]^c[2086]^c[2155]^c[2250]^c[2216]^c[2111]^c[2307]^c[2376]^c[2323]^c[2392]^c[2390]^c[2356]^c[2459]^c[2515]^c[2584]^c[2575]^c[2644]^c[2669]^c[2635]^c[2530]^c[2723]^c[2792]^c[2878]^c[2739]^c[2810]^c[2776]^c[2879]^c[2931]^c[3000]^c[2959]^c[3028]^c[2936]^c[3110]^c[3005]^c[3139]^c[3208]^c[3145]^c[3214]^c[3224]^c[3293]^c[3347]^c[3416]^c[3377]^c[3446]^c[3439]^c[3405]^c[3508]^c[3555]^c[3624]^c[3602]^c[3671]^c[3728]^c[3694]^c[3589]^c[3763]^c[3832]^c[3942]^c[3803]^c[3883]^c[3849]^c[3744]^c[3971]^c[4040]^c[4139]^c[4000]^c[4013]^c[4082]^c[4179]^c[4248]^c[4245]^c[4314]^c[4181]^c[4355]^c[4250]^c[4387]^c[4456]^c[4418]^c[4487]^c[4529]^c[4495]^c[4390]; //row: 32 d[i2+32*Zc]=c[122]^c[144]^c[151]^c[46]^c[23]^c[126]^c[5]^c[330]^c[264]^c[367]^c[233]^c[336]^c[538]^c[549]^c[456]^c[559]^c[746]^c[662]^c[676]^c[779]^c[954]^c[1031]^c[926]^c[964]^c[859]^c[1162]^c[1172]^c[1063]^c[1166]^c[1370]^c[1416]^c[1311]^c[1316]^c[1419]^c[1578]^c[1523]^c[1626]^c[1496]^c[1599]^c[1786]^c[1721]^c[1824]^c[1689]^c[1792]^c[1994]^c[1996]^c[2013]^c[1908]^c[2202]^c[2086]^c[2189]^c[2250]^c[2145]^c[2410]^c[2426]^c[2390]^c[2493]^c[2618]^c[2678]^c[2669]^c[2564]^c[2621]^c[2826]^c[2878]^c[2773]^c[2810]^c[2705]^c[3034]^c[2959]^c[3062]^c[2936]^c[3039]^c[2974]^c[3242]^c[3248]^c[3224]^c[3327]^c[3450]^c[3480]^c[3439]^c[3334]^c[3658]^c[3602]^c[3705]^c[3728]^c[3623]^c[3866]^c[3942]^c[3837]^c[3883]^c[3778]^c[4074]^c[4034]^c[4013]^c[4116]^c[4282]^c[4245]^c[4348]^c[4181]^c[4284]^c[4490]^c[4521]^c[4529]^c[4424]; //row: 33 d[i2+33*Zc]=c[217]^c[445]^c[2293]^c[4459]; //row: 34 d[i2+34*Zc]=c[3]^c[1608]^c[3316]^c[3690]; //row: 35 d[i2+35*Zc]=c[79]^c[101]^c[3]^c[83]^c[287]^c[324]^c[293]^c[211]^c[495]^c[506]^c[516]^c[703]^c[827]^c[736]^c[911]^c[883]^c[1024]^c[1119]^c[1129]^c[1123]^c[1327]^c[1268]^c[1376]^c[1292]^c[1535]^c[1583]^c[1556]^c[1743]^c[1781]^c[1749]^c[1951]^c[1953]^c[2073]^c[2159]^c[2146]^c[2102]^c[2367]^c[2383]^c[2450]^c[2575]^c[2635]^c[2521]^c[2663]^c[2783]^c[2730]^c[2870]^c[2991]^c[3019]^c[2996]^c[3199]^c[3205]^c[3284]^c[3407]^c[3437]^c[3499]^c[3615]^c[3662]^c[3580]^c[3823]^c[3794]^c[3943]^c[4031]^c[3991]^c[4073]^c[4239]^c[4305]^c[4241]^c[4447]^c[4478]^c[4381]; //row: 36 d[i2+36*Zc]=c[5]^c[3111]^c[3296]^c[3786]; //row: 37 d[i2+37*Zc]=c[134]^c[29]^c[51]^c[161]^c[33]^c[342]^c[237]^c[274]^c[243]^c[289]^c[550]^c[445]^c[456]^c[466]^c[758]^c[653]^c[777]^c[686]^c[861]^c[833]^c[974]^c[1174]^c[1069]^c[1079]^c[1073]^c[1382]^c[1277]^c[1426]^c[1326]^c[1485]^c[1533]^c[1506]^c[1693]^c[1731]^c[1699]^c[2006]^c[1901]^c[1903]^c[2023]^c[2214]^c[2109]^c[2096]^c[2260]^c[2422]^c[2317]^c[2333]^c[2400]^c[2630]^c[2525]^c[2585]^c[2679]^c[2838]^c[2733]^c[2888]^c[2820]^c[2705]^c[2941]^c[2969]^c[2946]^c[3254]^c[3149]^c[3155]^c[3234]^c[3462]^c[3357]^c[3387]^c[3449]^c[3565]^c[3612]^c[3738]^c[3878]^c[3773]^c[3744]^c[3893]^c[4086]^c[3981]^c[4149]^c[4023]^c[4294]^c[4189]^c[4255]^c[4191]^c[4502]^c[4397]^c[4428]^c[4539]; //row: 38 d[i2+38*Zc]=c[90]^c[1935]^c[2277]^c[2595]; //row: 39 d[i2+39*Zc]=c[211]^c[651]^c[1564]^c[4139]; //row: 40 d[i2+40*Zc]=c[9]^c[1747]^c[3547]; //row: 41 d[i2+41*Zc]=c[209]^c[698]^c[2013]^c[3871]; //row: 42 d[i2+42*Zc]=c[56]^c[78]^c[85]^c[188]^c[165]^c[60]^c[162]^c[264]^c[406]^c[301]^c[375]^c[270]^c[472]^c[483]^c[598]^c[493]^c[680]^c[804]^c[818]^c[713]^c[888]^c[965]^c[860]^c[898]^c[1001]^c[841]^c[1096]^c[1106]^c[1205]^c[1100]^c[1304]^c[1350]^c[1453]^c[1250]^c[1353]^c[1512]^c[1457]^c[1560]^c[1638]^c[1533]^c[1720]^c[1863]^c[1758]^c[1831]^c[1726]^c[1928]^c[1930]^c[1947]^c[2050]^c[2136]^c[2228]^c[2123]^c[2184]^c[2287]^c[2344]^c[2360]^c[2324]^c[2427]^c[2552]^c[2612]^c[2603]^c[2498]^c[2760]^c[2812]^c[2707]^c[2744]^c[2847]^c[2968]^c[3101]^c[2996]^c[3078]^c[2973]^c[3176]^c[3182]^c[3158]^c[3261]^c[3384]^c[3414]^c[3373]^c[3476]^c[3592]^c[3536]^c[3639]^c[3662]^c[3557]^c[3800]^c[3876]^c[3771]^c[3817]^c[3920]^c[4008]^c[3968]^c[4155]^c[4050]^c[4216]^c[4179]^c[4282]^c[4323]^c[4218]^c[4424]^c[4455]^c[4463]^c[4566]; //row: 43 d[i2+43*Zc]=c[200]^c[14]^c[124]^c[101]^c[204]^c[408]^c[237]^c[311]^c[414]^c[208]^c[616]^c[419]^c[429]^c[824]^c[740]^c[754]^c[649]^c[1032]^c[1004]^c[834]^c[937]^c[1240]^c[1042]^c[1244]^c[1448]^c[1389]^c[1394]^c[1289]^c[1656]^c[1496]^c[1574]^c[1469]^c[1864]^c[1694]^c[1767]^c[1870]^c[2072]^c[2074]^c[1986]^c[2280]^c[2267]^c[2120]^c[2223]^c[2488]^c[2296]^c[2468]^c[2363]^c[2696]^c[2548]^c[2539]^c[2642]^c[2904]^c[2851]^c[2888]^c[2783]^c[3112]^c[2932]^c[3014]^c[3117]^c[3320]^c[3326]^c[3197]^c[3528]^c[3350]^c[3517]^c[3412]^c[3490]^c[3736]^c[3575]^c[3598]^c[3701]^c[3944]^c[3915]^c[3753]^c[3856]^c[3842]^c[4152]^c[4112]^c[3986]^c[4360]^c[4218]^c[4259]^c[4362]^c[4568]^c[4391]^c[4399]^c[4502]; //row: 44 d[i2+44*Zc]=c[105]^c[127]^c[29]^c[109]^c[3]^c[313]^c[350]^c[319]^c[521]^c[532]^c[542]^c[729]^c[645]^c[762]^c[937]^c[909]^c[842]^c[1145]^c[1155]^c[1149]^c[1353]^c[1294]^c[1402]^c[1561]^c[1609]^c[1582]^c[1461]^c[1769]^c[1807]^c[1775]^c[1977]^c[1979]^c[1891]^c[2013]^c[2185]^c[2172]^c[2128]^c[2393]^c[2409]^c[2476]^c[2601]^c[2661]^c[2547]^c[2809]^c[2756]^c[2896]^c[3017]^c[3045]^c[3022]^c[3225]^c[3231]^c[3310]^c[3433]^c[3463]^c[3525]^c[3641]^c[3688]^c[3606]^c[3849]^c[3820]^c[3761]^c[4057]^c[4017]^c[4099]^c[4265]^c[4331]^c[4267]^c[4473]^c[4504]^c[4407]; //row: 45 d[i2+45*Zc]=c[388]^c[1292]^c[2232]; } break; case 224: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[222]^c[140]^c[206]^c[200]^c[239]^c[426]^c[241]^c[541]^c[492]^c[478]^c[762]^c[822]^c[836]^c[941]^c[1071]^c[900]^c[1193]^c[1238]^c[1299]^c[1353]^c[1529]^c[1388]^c[1724]^c[1662]^c[1709]^c[1924]^c[1944]^c[1807]^c[2239]^c[2102]^c[2192]^c[2444]^c[2309]^c[2273]^c[2679]^c[2669]^c[2618]^c[2708]^c[2780]^c[2900]^c[3126]^c[2988]^c[3058]^c[3214]^c[3349]^c[3204]^c[3373]^c[3368]^c[3436]^c[3653]^c[3701]^c[3679]^c[4001]^c[4005]^c[3881]^c[4172]^c[4148]^c[4130]^c[4453]^c[4286]^c[4478]^c[4583]^c[4569]^c[4509]^c[4784]^c[4890]^c[4861]; //row: 1 d[i2+1*Zc]=c[222]^c[223]^c[141]^c[207]^c[201]^c[239]^c[240]^c[427]^c[242]^c[541]^c[542]^c[493]^c[479]^c[762]^c[763]^c[823]^c[837]^c[942]^c[1072]^c[901]^c[1193]^c[1194]^c[1239]^c[1300]^c[1353]^c[1354]^c[1530]^c[1389]^c[1725]^c[1663]^c[1710]^c[1925]^c[1945]^c[1808]^c[2239]^c[2016]^c[2103]^c[2193]^c[2444]^c[2445]^c[2310]^c[2274]^c[2679]^c[2680]^c[2670]^c[2619]^c[2708]^c[2709]^c[2781]^c[2901]^c[3126]^c[3127]^c[2989]^c[3059]^c[3215]^c[3350]^c[3205]^c[3373]^c[3374]^c[3369]^c[3437]^c[3653]^c[3654]^c[3702]^c[3680]^c[4002]^c[4006]^c[3882]^c[4172]^c[4173]^c[4149]^c[4131]^c[4453]^c[4454]^c[4287]^c[4479]^c[4583]^c[4584]^c[4570]^c[4510]^c[4784]^c[4785]^c[4891]^c[4862]; //row: 2 d[i2+2*Zc]=c[223]^c[141]^c[206]^c[207]^c[200]^c[201]^c[240]^c[426]^c[427]^c[241]^c[242]^c[542]^c[493]^c[478]^c[479]^c[763]^c[823]^c[836]^c[837]^c[942]^c[1071]^c[1072]^c[900]^c[901]^c[1194]^c[1239]^c[1299]^c[1300]^c[1354]^c[1529]^c[1530]^c[1388]^c[1389]^c[1725]^c[1662]^c[1663]^c[1709]^c[1710]^c[1925]^c[1944]^c[1945]^c[1807]^c[1808]^c[2016]^c[2103]^c[2192]^c[2193]^c[2445]^c[2309]^c[2310]^c[2273]^c[2274]^c[2680]^c[2670]^c[2618]^c[2619]^c[2709]^c[2781]^c[2900]^c[2901]^c[3127]^c[2988]^c[2989]^c[3058]^c[3059]^c[3215]^c[3349]^c[3350]^c[3204]^c[3205]^c[3374]^c[3369]^c[3436]^c[3437]^c[3654]^c[3702]^c[3679]^c[3680]^c[4002]^c[4005]^c[4006]^c[3881]^c[3882]^c[4173]^c[4148]^c[4149]^c[4130]^c[4131]^c[4454]^c[4287]^c[4478]^c[4479]^c[4584]^c[4569]^c[4570]^c[4509]^c[4510]^c[4785]^c[4891]^c[4861]^c[4862]; //row: 3 d[i2+3*Zc]=c[223]^c[141]^c[207]^c[200]^c[201]^c[240]^c[427]^c[241]^c[242]^c[542]^c[493]^c[479]^c[763]^c[823]^c[836]^c[837]^c[942]^c[1072]^c[900]^c[901]^c[1194]^c[1239]^c[1300]^c[1354]^c[1530]^c[1388]^c[1389]^c[1725]^c[1663]^c[1709]^c[1710]^c[1925]^c[1945]^c[1807]^c[1808]^c[2016]^c[2103]^c[2193]^c[2445]^c[2310]^c[2273]^c[2274]^c[2680]^c[2670]^c[2618]^c[2619]^c[2709]^c[2781]^c[2900]^c[2901]^c[3127]^c[2989]^c[3058]^c[3059]^c[3215]^c[3350]^c[3204]^c[3205]^c[3374]^c[3369]^c[3437]^c[3654]^c[3702]^c[3679]^c[3680]^c[4002]^c[4006]^c[3881]^c[3882]^c[4173]^c[4149]^c[4130]^c[4131]^c[4454]^c[4287]^c[4479]^c[4584]^c[4570]^c[4509]^c[4510]^c[4785]^c[4891]^c[4861]^c[4862]; //row: 4 d[i2+4*Zc]=c[169]^c[233]; //row: 5 d[i2+5*Zc]=c[151]^c[69]^c[135]^c[129]^c[163]^c[392]^c[355]^c[394]^c[282]^c[470]^c[645]^c[631]^c[691]^c[751]^c[765]^c[757]^c[1094]^c[1000]^c[1053]^c[1122]^c[1167]^c[1228]^c[1506]^c[1458]^c[1541]^c[1653]^c[1591]^c[1638]^c[1853]^c[1873]^c[1960]^c[2168]^c[2031]^c[2121]^c[2373]^c[2462]^c[2426]^c[2608]^c[2598]^c[2547]^c[2861]^c[2709]^c[2829]^c[2767]^c[3055]^c[2917]^c[2987]^c[3143]^c[3278]^c[3357]^c[3526]^c[3521]^c[3365]^c[3806]^c[3630]^c[3608]^c[3765]^c[3930]^c[3934]^c[3810]^c[4101]^c[4077]^c[4059]^c[4382]^c[4439]^c[4407]^c[4512]^c[4498]^c[4662]^c[4713]^c[4819]^c[4790]^c[4833]; //row: 6 d[i2+6*Zc]=c[157]^c[1462]^c[2352]^c[2484]^c[2974]^c[3858]^c[4167]^c[4595]; //row: 7 d[i2+7*Zc]=c[16]^c[299]^c[999]^c[1667]^c[1941]^c[3293]; //row: 8 d[i2+8*Zc]=c[42]^c[200]^c[184]^c[118]^c[26]^c[183]^c[184]^c[20]^c[177]^c[178]^c[32]^c[283]^c[441]^c[246]^c[403]^c[404]^c[285]^c[442]^c[443]^c[318]^c[585]^c[519]^c[536]^c[470]^c[522]^c[455]^c[456]^c[806]^c[740]^c[866]^c[800]^c[880]^c[813]^c[814]^c[675]^c[985]^c[919]^c[1115]^c[1048]^c[1049]^c[944]^c[1101]^c[1102]^c[1237]^c[1171]^c[1282]^c[1216]^c[1343]^c[1276]^c[1277]^c[1397]^c[1555]^c[1349]^c[1506]^c[1507]^c[1432]^c[1365]^c[1366]^c[1768]^c[1702]^c[1706]^c[1639]^c[1640]^c[1753]^c[1686]^c[1687]^c[1968]^c[1902]^c[1988]^c[1921]^c[1922]^c[1851]^c[2008]^c[2009]^c[2059]^c[2217]^c[2146]^c[2080]^c[2236]^c[2169]^c[2170]^c[2264]^c[2422]^c[2353]^c[2286]^c[2287]^c[2317]^c[2250]^c[2251]^c[2499]^c[2657]^c[2489]^c[2647]^c[2662]^c[2595]^c[2596]^c[2752]^c[2910]^c[2824]^c[2758]^c[2720]^c[2877]^c[2878]^c[2904]^c[2946]^c[3104]^c[3032]^c[2965]^c[2966]^c[3102]^c[3035]^c[3036]^c[3258]^c[3192]^c[3169]^c[3326]^c[3327]^c[3248]^c[3181]^c[3182]^c[3417]^c[3575]^c[3412]^c[3570]^c[3480]^c[3413]^c[3414]^c[3697]^c[3631]^c[3745]^c[3679]^c[3723]^c[3656]^c[3657]^c[3787]^c[3821]^c[3979]^c[3825]^c[3982]^c[3983]^c[3925]^c[3858]^c[3859]^c[4216]^c[4150]^c[4192]^c[4125]^c[4126]^c[4174]^c[4107]^c[4108]^c[4273]^c[4431]^c[4330]^c[4264]^c[4298]^c[4455]^c[4456]^c[4294]^c[4627]^c[4561]^c[4613]^c[4546]^c[4547]^c[4553]^c[4486]^c[4487]^c[4828]^c[4762]^c[4710]^c[4868]^c[4905]^c[4838]^c[4839]^c[4761]; //row: 9 d[i2+9*Zc]=c[8]^c[260]^c[2452]^c[2568]^c[3000]^c[3992]^c[4140]^c[4697]; //row: 10 d[i2+10*Zc]=c[305]^c[612]^c[1069]^c[1586]^c[1985]^c[3238]; //row: 11 d[i2+11*Zc]=c[82]^c[199]^c[200]^c[0]^c[118]^c[66]^c[184]^c[60]^c[178]^c[51]^c[323]^c[440]^c[441]^c[286]^c[404]^c[325]^c[443]^c[234]^c[625]^c[518]^c[519]^c[576]^c[470]^c[562]^c[456]^c[846]^c[739]^c[740]^c[682]^c[800]^c[696]^c[814]^c[1025]^c[919]^c[931]^c[1049]^c[984]^c[1102]^c[1277]^c[1170]^c[1171]^c[1322]^c[1216]^c[1159]^c[1277]^c[1437]^c[1554]^c[1555]^c[1389]^c[1507]^c[1472]^c[1366]^c[1584]^c[1702]^c[1746]^c[1640]^c[1569]^c[1687]^c[2008]^c[1902]^c[1804]^c[1922]^c[1891]^c[2009]^c[2099]^c[2216]^c[2217]^c[2186]^c[2080]^c[2052]^c[2170]^c[2304]^c[2421]^c[2422]^c[2393]^c[2287]^c[2357]^c[2251]^c[2539]^c[2656]^c[2657]^c[2529]^c[2647]^c[2478]^c[2596]^c[2792]^c[2909]^c[2910]^c[2864]^c[2758]^c[2760]^c[2878]^c[2689]^c[2986]^c[3103]^c[3104]^c[3072]^c[2966]^c[2918]^c[3036]^c[3298]^c[3192]^c[3209]^c[3327]^c[3288]^c[3182]^c[3457]^c[3574]^c[3575]^c[3452]^c[3570]^c[3520]^c[3414]^c[3737]^c[3630]^c[3631]^c[3785]^c[3679]^c[3763]^c[3657]^c[3618]^c[3861]^c[3979]^c[3865]^c[3983]^c[3965]^c[3859]^c[4032]^c[4149]^c[4150]^c[4232]^c[4126]^c[4214]^c[4108]^c[4313]^c[4430]^c[4431]^c[4370]^c[4264]^c[4338]^c[4456]^c[4667]^c[4560]^c[4561]^c[4653]^c[4547]^c[4593]^c[4487]^c[4868]^c[4761]^c[4762]^c[4750]^c[4868]^c[4721]^c[4839]^c[4735]; //row: 12 d[i2+12*Zc]=c[141]^c[398]^c[2375]^c[2466]^c[2939]^c[4213]; //row: 13 d[i2+13*Zc]=c[76]^c[77]^c[219]^c[61]^c[55]^c[80]^c[317]^c[318]^c[281]^c[320]^c[619]^c[620]^c[571]^c[557]^c[840]^c[841]^c[677]^c[691]^c[727]^c[1020]^c[926]^c[979]^c[1271]^c[1272]^c[1317]^c[1154]^c[1431]^c[1432]^c[1384]^c[1467]^c[1579]^c[1741]^c[1788]^c[1639]^c[2003]^c[1799]^c[1886]^c[2093]^c[2094]^c[2181]^c[2047]^c[2298]^c[2299]^c[2388]^c[2352]^c[2533]^c[2534]^c[2524]^c[2473]^c[2786]^c[2787]^c[2859]^c[2755]^c[2980]^c[2981]^c[3067]^c[2913]^c[3293]^c[3204]^c[3283]^c[3451]^c[3452]^c[3447]^c[3515]^c[3731]^c[3732]^c[3780]^c[3758]^c[3856]^c[3860]^c[3960]^c[4250]^c[4251]^c[4227]^c[4209]^c[4307]^c[4308]^c[4365]^c[4333]^c[4661]^c[4662]^c[4648]^c[4588]^c[4696]^c[4862]^c[4863]^c[4745]^c[4716]; //row: 14 d[i2+14*Zc]=c[13]^c[2862]^c[3570]^c[3774]^c[3858]^c[4746]; //row: 15 d[i2+15*Zc]=c[80]^c[222]^c[64]^c[57]^c[58]^c[89]^c[321]^c[284]^c[322]^c[323]^c[343]^c[623]^c[574]^c[560]^c[844]^c[680]^c[693]^c[694]^c[1023]^c[929]^c[981]^c[982]^c[1275]^c[1320]^c[1157]^c[1435]^c[1387]^c[1469]^c[1470]^c[1582]^c[1744]^c[1790]^c[1791]^c[2006]^c[1802]^c[1888]^c[1889]^c[2097]^c[2184]^c[2050]^c[2302]^c[2391]^c[2354]^c[2355]^c[2370]^c[2537]^c[2527]^c[2475]^c[2476]^c[2790]^c[2862]^c[2757]^c[2758]^c[2984]^c[3070]^c[2915]^c[2916]^c[3120]^c[3296]^c[3207]^c[3285]^c[3286]^c[3455]^c[3450]^c[3518]^c[3735]^c[3783]^c[3760]^c[3761]^c[3859]^c[3863]^c[3962]^c[3963]^c[4254]^c[4230]^c[4211]^c[4212]^c[4240]^c[4311]^c[4368]^c[4336]^c[4665]^c[4651]^c[4590]^c[4591]^c[4866]^c[4748]^c[4718]^c[4719]; //row: 16 d[i2+16*Zc]=c[99]^c[17]^c[83]^c[77]^c[340]^c[303]^c[342]^c[377]^c[642]^c[593]^c[579]^c[863]^c[699]^c[713]^c[835]^c[1042]^c[948]^c[1001]^c[1294]^c[1339]^c[1176]^c[1454]^c[1406]^c[1489]^c[1601]^c[1763]^c[1586]^c[1801]^c[1821]^c[1908]^c[2116]^c[2203]^c[2069]^c[2321]^c[2410]^c[2374]^c[2556]^c[2546]^c[2495]^c[2506]^c[2809]^c[2881]^c[2777]^c[3003]^c[3089]^c[2935]^c[3315]^c[3226]^c[3305]^c[3474]^c[3469]^c[3537]^c[3754]^c[3802]^c[3780]^c[3878]^c[3882]^c[3982]^c[4049]^c[4249]^c[4231]^c[4330]^c[4387]^c[4355]^c[4684]^c[4670]^c[4610]^c[4668]^c[4885]^c[4767]^c[4738]; //row: 17 d[i2+17*Zc]=c[55]^c[3245]^c[3783]^c[3870]^c[4707]; //row: 18 d[i2+18*Zc]=c[422]^c[2797]^c[3111]^c[4174]^c[4441]; //row: 19 d[i2+19*Zc]=c[7]^c[229]^c[1670]^c[1989]^c[2247]; //row: 20 d[i2+20*Zc]=c[181]^c[99]^c[165]^c[159]^c[104]^c[422]^c[385]^c[424]^c[500]^c[451]^c[661]^c[721]^c[781]^c[795]^c[881]^c[900]^c[1030]^c[1083]^c[1152]^c[1197]^c[1258]^c[1536]^c[1488]^c[1347]^c[1683]^c[1621]^c[1668]^c[1883]^c[1903]^c[1990]^c[2198]^c[2061]^c[2151]^c[2136]^c[2403]^c[2268]^c[2456]^c[2638]^c[2628]^c[2577]^c[2677]^c[2891]^c[2739]^c[2859]^c[3085]^c[2947]^c[3017]^c[3173]^c[3308]^c[3163]^c[3556]^c[3551]^c[3395]^c[3612]^c[3660]^c[3638]^c[3960]^c[3964]^c[3840]^c[4131]^c[4107]^c[4089]^c[4412]^c[4469]^c[4437]^c[4542]^c[4528]^c[4692]^c[4743]^c[4849]^c[4820]; //row: 21 d[i2+21*Zc]=c[415]^c[1250]^c[3803]^c[4529]^c[4809]; //row: 22 d[i2+22*Zc]=c[52]^c[2911]^c[2914]^c[3955]; //row: 23 d[i2+23*Zc]=c[311]^c[650]^c[2407]^c[4153]; //row: 24 d[i2+24*Zc]=c[122]^c[40]^c[106]^c[100]^c[48]^c[363]^c[326]^c[365]^c[665]^c[616]^c[602]^c[886]^c[722]^c[736]^c[828]^c[1065]^c[971]^c[1024]^c[959]^c[1317]^c[1138]^c[1199]^c[1477]^c[1429]^c[1512]^c[1624]^c[1786]^c[1609]^c[1824]^c[1844]^c[1931]^c[2139]^c[2226]^c[2092]^c[2344]^c[2433]^c[2397]^c[2579]^c[2569]^c[2518]^c[2656]^c[2832]^c[2904]^c[2800]^c[3026]^c[3112]^c[2958]^c[3338]^c[3249]^c[3328]^c[3497]^c[3492]^c[3560]^c[3777]^c[3601]^c[3803]^c[3901]^c[3905]^c[4005]^c[4072]^c[4048]^c[4254]^c[4353]^c[4410]^c[4378]^c[4483]^c[4693]^c[4633]^c[4908]^c[4790]^c[4761]; //row: 25 d[i2+25*Zc]=c[224]^c[1509]^c[1632]^c[3216]; //row: 26 d[i2+26*Zc]=c[106]^c[623]^c[1107]^c[3486]; //row: 27 d[i2+27*Zc]=c[431]^c[1484]^c[1965]; //row: 28 d[i2+28*Zc]=c[145]^c[1048]^c[4472]^c[4817]; //row: 29 d[i2+29*Zc]=c[67]^c[209]^c[51]^c[44]^c[45]^c[308]^c[271]^c[309]^c[310]^c[373]^c[610]^c[561]^c[547]^c[831]^c[891]^c[680]^c[681]^c[1010]^c[916]^c[968]^c[969]^c[1262]^c[1307]^c[1144]^c[1422]^c[1374]^c[1456]^c[1457]^c[1569]^c[1731]^c[1777]^c[1778]^c[1993]^c[2013]^c[1875]^c[1876]^c[2084]^c[2171]^c[2037]^c[2289]^c[2378]^c[2341]^c[2342]^c[2524]^c[2514]^c[2686]^c[2687]^c[2777]^c[2849]^c[2744]^c[2745]^c[2971]^c[3057]^c[3126]^c[3127]^c[3283]^c[3194]^c[3272]^c[3273]^c[3146]^c[3442]^c[3437]^c[3505]^c[3722]^c[3770]^c[3747]^c[3748]^c[3846]^c[3850]^c[3949]^c[3950]^c[4241]^c[4217]^c[4198]^c[4199]^c[4084]^c[4298]^c[4355]^c[4323]^c[4652]^c[4638]^c[4577]^c[4578]^c[4853]^c[4735]^c[4705]^c[4706]; //row: 30 d[i2+30*Zc]=c[122]^c[40]^c[105]^c[106]^c[99]^c[100]^c[33]^c[363]^c[325]^c[326]^c[364]^c[365]^c[665]^c[616]^c[601]^c[602]^c[886]^c[722]^c[735]^c[736]^c[1065]^c[970]^c[971]^c[1023]^c[1024]^c[1317]^c[1138]^c[1198]^c[1199]^c[1477]^c[1428]^c[1429]^c[1511]^c[1512]^c[1624]^c[1785]^c[1786]^c[1608]^c[1609]^c[1824]^c[1843]^c[1844]^c[1930]^c[1931]^c[2139]^c[2226]^c[2091]^c[2092]^c[2344]^c[2432]^c[2433]^c[2396]^c[2397]^c[2369]^c[2579]^c[2569]^c[2517]^c[2518]^c[2832]^c[2904]^c[2799]^c[2800]^c[3026]^c[3111]^c[3112]^c[2957]^c[2958]^c[3121]^c[3338]^c[3248]^c[3249]^c[3327]^c[3328]^c[3497]^c[3492]^c[3559]^c[3560]^c[3777]^c[3601]^c[3802]^c[3803]^c[3901]^c[3904]^c[3905]^c[4004]^c[4005]^c[4072]^c[4047]^c[4048]^c[4253]^c[4254]^c[4353]^c[4410]^c[4377]^c[4378]^c[4483]^c[4692]^c[4693]^c[4632]^c[4633]^c[4908]^c[4790]^c[4760]^c[4761]; //row: 31 d[i2+31*Zc]=c[175]^c[127]^c[93]^c[45]^c[159]^c[111]^c[153]^c[104]^c[105]^c[416]^c[368]^c[379]^c[331]^c[418]^c[369]^c[370]^c[398]^c[494]^c[670]^c[669]^c[621]^c[655]^c[607]^c[715]^c[891]^c[775]^c[727]^c[789]^c[740]^c[741]^c[1118]^c[1070]^c[1024]^c[976]^c[1077]^c[1028]^c[1029]^c[1146]^c[1322]^c[1191]^c[1143]^c[1252]^c[1204]^c[1530]^c[1482]^c[1482]^c[1434]^c[1565]^c[1516]^c[1517]^c[1677]^c[1629]^c[1615]^c[1791]^c[1662]^c[1613]^c[1614]^c[1616]^c[1877]^c[1829]^c[1897]^c[1849]^c[1984]^c[1935]^c[1936]^c[2192]^c[2144]^c[2055]^c[2231]^c[2145]^c[2097]^c[2397]^c[2349]^c[2262]^c[2438]^c[2450]^c[2401]^c[2402]^c[2632]^c[2584]^c[2622]^c[2574]^c[2571]^c[2522]^c[2523]^c[2885]^c[2837]^c[2733]^c[2909]^c[2853]^c[2804]^c[2805]^c[3079]^c[3031]^c[2941]^c[3117]^c[3011]^c[2962]^c[2963]^c[3167]^c[3343]^c[3302]^c[3254]^c[3157]^c[3332]^c[3333]^c[3550]^c[3502]^c[3545]^c[3497]^c[3389]^c[3565]^c[3606]^c[3782]^c[3654]^c[3606]^c[3632]^c[3807]^c[3584]^c[3954]^c[3906]^c[3958]^c[3910]^c[3834]^c[4009]^c[4010]^c[4125]^c[4077]^c[4101]^c[4053]^c[4083]^c[4034]^c[4035]^c[4406]^c[4358]^c[4463]^c[4415]^c[4431]^c[4383]^c[4536]^c[4488]^c[4522]^c[4698]^c[4686]^c[4637]^c[4638]^c[4737]^c[4913]^c[4843]^c[4795]^c[4814]^c[4765]^c[4766]; //row: 32 d[i2+32*Zc]=c[29]^c[171]^c[12]^c[13]^c[6]^c[7]^c[191]^c[270]^c[232]^c[233]^c[271]^c[272]^c[572]^c[523]^c[508]^c[509]^c[793]^c[853]^c[866]^c[867]^c[972]^c[1101]^c[1102]^c[930]^c[931]^c[1224]^c[1269]^c[1329]^c[1330]^c[1384]^c[1559]^c[1560]^c[1418]^c[1419]^c[1755]^c[1692]^c[1693]^c[1739]^c[1740]^c[1955]^c[1974]^c[1975]^c[1837]^c[1838]^c[2046]^c[2133]^c[2222]^c[2223]^c[2251]^c[2339]^c[2340]^c[2303]^c[2304]^c[2486]^c[2476]^c[2648]^c[2649]^c[2739]^c[2811]^c[2706]^c[2707]^c[2896]^c[2933]^c[3018]^c[3019]^c[3088]^c[3089]^c[3245]^c[3155]^c[3156]^c[3234]^c[3235]^c[3193]^c[3404]^c[3399]^c[3466]^c[3467]^c[3684]^c[3732]^c[3709]^c[3710]^c[3808]^c[3811]^c[3812]^c[3911]^c[3912]^c[4203]^c[4178]^c[4179]^c[4160]^c[4161]^c[4260]^c[4317]^c[4284]^c[4285]^c[4614]^c[4599]^c[4600]^c[4539]^c[4540]^c[4815]^c[4921]^c[4891]^c[4892]; //row: 33 d[i2+33*Zc]=c[337]^c[496]^c[2624]^c[4840]; //row: 34 d[i2+34*Zc]=c[81]^c[1753]^c[3427]^c[3957]; //row: 35 d[i2+35*Zc]=c[185]^c[103]^c[169]^c[163]^c[426]^c[389]^c[428]^c[415]^c[504]^c[455]^c[665]^c[725]^c[785]^c[799]^c[904]^c[1034]^c[1087]^c[1156]^c[1201]^c[1262]^c[1540]^c[1492]^c[1351]^c[1516]^c[1687]^c[1625]^c[1672]^c[1887]^c[1907]^c[1994]^c[2202]^c[2065]^c[2155]^c[2407]^c[2272]^c[2460]^c[2642]^c[2632]^c[2581]^c[2895]^c[2743]^c[2863]^c[2713]^c[3089]^c[2951]^c[3021]^c[3177]^c[3312]^c[3167]^c[3560]^c[3555]^c[3399]^c[3616]^c[3664]^c[3642]^c[3964]^c[3968]^c[3844]^c[4135]^c[4111]^c[4093]^c[4416]^c[4473]^c[4441]^c[4546]^c[4532]^c[4696]^c[4747]^c[4853]^c[4824]; //row: 36 d[i2+36*Zc]=c[221]^c[3292]^c[3583]^c[4037]; //row: 37 d[i2+37*Zc]=c[136]^c[137]^c[55]^c[121]^c[115]^c[377]^c[378]^c[341]^c[380]^c[304]^c[455]^c[456]^c[631]^c[617]^c[676]^c[677]^c[737]^c[751]^c[1080]^c[986]^c[1039]^c[1331]^c[1332]^c[1153]^c[1214]^c[1491]^c[1492]^c[1444]^c[1527]^c[1639]^c[1577]^c[1624]^c[1839]^c[1859]^c[1946]^c[2153]^c[2154]^c[2017]^c[2107]^c[2358]^c[2359]^c[2448]^c[2412]^c[2593]^c[2594]^c[2584]^c[2533]^c[2846]^c[2847]^c[2695]^c[2815]^c[3040]^c[3041]^c[3127]^c[2973]^c[3106]^c[3353]^c[3264]^c[3343]^c[3511]^c[3512]^c[3507]^c[3575]^c[3791]^c[3792]^c[3616]^c[3594]^c[3916]^c[3920]^c[4020]^c[4086]^c[4087]^c[4063]^c[4045]^c[4367]^c[4368]^c[4425]^c[4393]^c[4497]^c[4498]^c[4484]^c[4648]^c[4922]^c[4923]^c[4805]^c[4776]; //row: 38 d[i2+38*Zc]=c[122]^c[2105]^c[2312]^c[2697]; //row: 39 d[i2+39*Zc]=c[235]^c[748]^c[1616]^c[4369]; //row: 40 d[i2+40*Zc]=c[66]^c[1836]^c[3903]; //row: 41 d[i2+41*Zc]=c[246]^c[886]^c[2075]^c[4198]; //row: 42 d[i2+42*Zc]=c[77]^c[219]^c[60]^c[61]^c[54]^c[55]^c[113]^c[318]^c[280]^c[281]^c[319]^c[320]^c[620]^c[571]^c[556]^c[557]^c[841]^c[677]^c[690]^c[691]^c[1020]^c[925]^c[926]^c[978]^c[979]^c[986]^c[1272]^c[1317]^c[1153]^c[1154]^c[1432]^c[1383]^c[1384]^c[1466]^c[1467]^c[1579]^c[1740]^c[1741]^c[1787]^c[1788]^c[2003]^c[1798]^c[1799]^c[1885]^c[1886]^c[2094]^c[2181]^c[2046]^c[2047]^c[2299]^c[2387]^c[2388]^c[2351]^c[2352]^c[2534]^c[2524]^c[2472]^c[2473]^c[2787]^c[2859]^c[2754]^c[2755]^c[2981]^c[3066]^c[3067]^c[2912]^c[2913]^c[3293]^c[3203]^c[3204]^c[3282]^c[3283]^c[3452]^c[3447]^c[3514]^c[3515]^c[3732]^c[3780]^c[3757]^c[3758]^c[3856]^c[3859]^c[3860]^c[3959]^c[3960]^c[4251]^c[4226]^c[4227]^c[4208]^c[4209]^c[4308]^c[4365]^c[4332]^c[4333]^c[4662]^c[4647]^c[4648]^c[4587]^c[4588]^c[4863]^c[4745]^c[4715]^c[4716]; //row: 43 d[i2+43*Zc]=c[160]^c[78]^c[144]^c[137]^c[138]^c[401]^c[364]^c[402]^c[403]^c[429]^c[479]^c[654]^c[640]^c[700]^c[760]^c[773]^c[774]^c[1103]^c[1009]^c[1061]^c[1062]^c[1131]^c[1176]^c[1237]^c[1515]^c[1467]^c[1549]^c[1550]^c[1662]^c[1600]^c[1646]^c[1647]^c[1862]^c[1882]^c[1968]^c[1969]^c[2177]^c[2040]^c[2130]^c[2382]^c[2247]^c[2434]^c[2435]^c[2617]^c[2607]^c[2555]^c[2556]^c[2870]^c[2718]^c[2837]^c[2838]^c[3064]^c[2926]^c[2995]^c[2996]^c[3152]^c[3287]^c[3141]^c[3142]^c[3535]^c[3530]^c[3374]^c[3591]^c[3639]^c[3616]^c[3617]^c[3605]^c[3939]^c[3943]^c[3818]^c[3819]^c[4110]^c[4086]^c[4067]^c[4068]^c[4165]^c[4391]^c[4448]^c[4416]^c[4521]^c[4507]^c[4670]^c[4671]^c[4722]^c[4828]^c[4798]^c[4799]; //row: 44 d[i2+44*Zc]=c[10]^c[152]^c[218]^c[212]^c[83]^c[251]^c[438]^c[253]^c[553]^c[504]^c[490]^c[774]^c[834]^c[848]^c[953]^c[1083]^c[912]^c[1205]^c[1250]^c[1311]^c[1365]^c[1541]^c[1400]^c[1736]^c[1674]^c[1721]^c[1571]^c[1936]^c[1956]^c[1819]^c[2027]^c[2114]^c[2204]^c[2024]^c[2456]^c[2321]^c[2285]^c[2467]^c[2681]^c[2630]^c[2720]^c[2792]^c[2688]^c[2914]^c[3000]^c[3070]^c[3226]^c[3137]^c[3216]^c[3385]^c[3380]^c[3448]^c[3665]^c[3713]^c[3691]^c[4013]^c[4017]^c[3893]^c[4184]^c[4160]^c[4142]^c[4465]^c[4298]^c[4266]^c[4595]^c[4581]^c[4521]^c[4796]^c[4902]^c[4873]; //row: 45 d[i2+45*Zc]=c[407]^c[1464]^c[2268]; } break; case 240: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[134]^c[95]^c[188]^c[127]^c[466]^c[243]^c[262]^c[605]^c[715]^c[704]^c[853]^c[855]^c[881]^c[1180]^c[1110]^c[1179]^c[1283]^c[1327]^c[1435]^c[1522]^c[1556]^c[1482]^c[1771]^c[1858]^c[1865]^c[2091]^c[2011]^c[2015]^c[2212]^c[2215]^c[2183]^c[2624]^c[2467]^c[2400]^c[2844]^c[2650]^c[2855]^c[3007]^c[3068]^c[2901]^c[3194]^c[3125]^c[3143]^c[3454]^c[3460]^c[3526]^c[3734]^c[3684]^c[3632]^c[4056]^c[3992]^c[4039]^c[4166]^c[4175]^c[4111]^c[4539]^c[4444]^c[4554]^c[4649]^c[4722]^c[4626]^c[4904]^c[5029]^c[4971]^c[5176]^c[5255]^c[5258]; //row: 1 d[i2+1*Zc]=c[134]^c[135]^c[96]^c[189]^c[128]^c[466]^c[467]^c[244]^c[263]^c[605]^c[606]^c[716]^c[705]^c[853]^c[854]^c[856]^c[882]^c[1181]^c[1111]^c[1180]^c[1283]^c[1284]^c[1328]^c[1436]^c[1522]^c[1523]^c[1557]^c[1483]^c[1772]^c[1859]^c[1866]^c[2092]^c[2012]^c[2016]^c[2212]^c[2213]^c[2216]^c[2184]^c[2624]^c[2625]^c[2468]^c[2401]^c[2844]^c[2845]^c[2651]^c[2856]^c[3007]^c[3008]^c[3069]^c[2902]^c[3194]^c[3195]^c[3126]^c[3144]^c[3455]^c[3461]^c[3527]^c[3734]^c[3735]^c[3685]^c[3633]^c[4056]^c[4057]^c[3993]^c[4040]^c[4167]^c[4176]^c[4112]^c[4539]^c[4540]^c[4445]^c[4555]^c[4649]^c[4650]^c[4723]^c[4627]^c[4904]^c[4905]^c[5030]^c[4972]^c[5176]^c[5177]^c[5256]^c[5259]; //row: 2 d[i2+2*Zc]=c[135]^c[96]^c[188]^c[189]^c[127]^c[128]^c[467]^c[243]^c[244]^c[262]^c[263]^c[606]^c[716]^c[704]^c[705]^c[854]^c[856]^c[881]^c[882]^c[1181]^c[1110]^c[1111]^c[1179]^c[1180]^c[1284]^c[1328]^c[1435]^c[1436]^c[1523]^c[1556]^c[1557]^c[1482]^c[1483]^c[1772]^c[1858]^c[1859]^c[1865]^c[1866]^c[2092]^c[2011]^c[2012]^c[2015]^c[2016]^c[2213]^c[2216]^c[2183]^c[2184]^c[2625]^c[2467]^c[2468]^c[2400]^c[2401]^c[2845]^c[2651]^c[2855]^c[2856]^c[3008]^c[3069]^c[2901]^c[2902]^c[3195]^c[3125]^c[3126]^c[3143]^c[3144]^c[3455]^c[3460]^c[3461]^c[3526]^c[3527]^c[3735]^c[3685]^c[3632]^c[3633]^c[4057]^c[3993]^c[4039]^c[4040]^c[4167]^c[4175]^c[4176]^c[4111]^c[4112]^c[4540]^c[4444]^c[4445]^c[4554]^c[4555]^c[4650]^c[4723]^c[4626]^c[4627]^c[4905]^c[5029]^c[5030]^c[4971]^c[4972]^c[5177]^c[5256]^c[5258]^c[5259]; //row: 3 d[i2+3*Zc]=c[135]^c[96]^c[189]^c[127]^c[128]^c[467]^c[244]^c[262]^c[263]^c[606]^c[716]^c[705]^c[854]^c[856]^c[881]^c[882]^c[1181]^c[1111]^c[1179]^c[1180]^c[1284]^c[1328]^c[1436]^c[1523]^c[1557]^c[1482]^c[1483]^c[1772]^c[1859]^c[1865]^c[1866]^c[2092]^c[2012]^c[2015]^c[2016]^c[2213]^c[2216]^c[2184]^c[2625]^c[2468]^c[2400]^c[2401]^c[2845]^c[2651]^c[2855]^c[2856]^c[3008]^c[3069]^c[2901]^c[2902]^c[3195]^c[3126]^c[3143]^c[3144]^c[3455]^c[3461]^c[3526]^c[3527]^c[3735]^c[3685]^c[3633]^c[4057]^c[3993]^c[4039]^c[4040]^c[4167]^c[4176]^c[4111]^c[4112]^c[4540]^c[4445]^c[4554]^c[4555]^c[4650]^c[4723]^c[4627]^c[4905]^c[5030]^c[4971]^c[4972]^c[5177]^c[5256]^c[5258]^c[5259]; //row: 4 d[i2+4*Zc]=c[63]^c[450]; //row: 5 d[i2+5*Zc]=c[74]^c[35]^c[128]^c[67]^c[1]^c[406]^c[423]^c[442]^c[410]^c[545]^c[655]^c[644]^c[793]^c[795]^c[821]^c[766]^c[1120]^c[1050]^c[1119]^c[1223]^c[1267]^c[1375]^c[1462]^c[1496]^c[1662]^c[1711]^c[1798]^c[1805]^c[2031]^c[1951]^c[1955]^c[2392]^c[2395]^c[2363]^c[2564]^c[2407]^c[2580]^c[2784]^c[2830]^c[2795]^c[2947]^c[3008]^c[3081]^c[3022]^c[3134]^c[3305]^c[3323]^c[3394]^c[3400]^c[3466]^c[3674]^c[3624]^c[3812]^c[3996]^c[3932]^c[3979]^c[4049]^c[4106]^c[4115]^c[4291]^c[4479]^c[4384]^c[4494]^c[4589]^c[4662]^c[4566]^c[4844]^c[4969]^c[4911]^c[5116]^c[5195]^c[5198]^c[5219]; //row: 6 d[i2+6*Zc]=c[198]^c[1461]^c[2422]^c[2739]^c[3211]^c[4286]^c[4371]^c[4812]; //row: 7 d[i2+7*Zc]=c[76]^c[385]^c[1168]^c[1711]^c[2085]^c[3377]; //row: 8 d[i2+8*Zc]=c[47]^c[173]^c[8]^c[134]^c[101]^c[226]^c[227]^c[40]^c[165]^c[166]^c[180]^c[379]^c[265]^c[396]^c[281]^c[282]^c[415]^c[300]^c[301]^c[344]^c[518]^c[644]^c[628]^c[514]^c[617]^c[502]^c[503]^c[766]^c[892]^c[768]^c[894]^c[794]^c[919]^c[920]^c[860]^c[1093]^c[979]^c[1023]^c[1148]^c[1149]^c[1092]^c[977]^c[978]^c[1436]^c[1322]^c[1240]^c[1366]^c[1348]^c[1233]^c[1234]^c[1675]^c[1561]^c[1469]^c[1594]^c[1595]^c[1635]^c[1520]^c[1521]^c[1684]^c[1810]^c[1771]^c[1896]^c[1897]^c[1778]^c[1903]^c[1904]^c[2004]^c[2130]^c[1924]^c[2049]^c[2050]^c[1928]^c[2053]^c[2054]^c[2365]^c[2251]^c[2368]^c[2254]^c[2336]^c[2221]^c[2222]^c[2537]^c[2423]^c[2620]^c[2505]^c[2506]^c[2553]^c[2438]^c[2439]^c[2757]^c[2643]^c[2803]^c[2689]^c[2768]^c[2653]^c[2654]^c[2920]^c[3046]^c[2981]^c[3107]^c[3054]^c[2939]^c[2940]^c[3102]^c[3347]^c[3233]^c[3278]^c[3163]^c[3164]^c[3296]^c[3181]^c[3182]^c[3367]^c[3493]^c[3373]^c[3498]^c[3499]^c[3439]^c[3564]^c[3565]^c[3647]^c[3773]^c[3837]^c[3723]^c[3785]^c[3670]^c[3671]^c[3969]^c[3855]^c[3905]^c[4031]^c[3952]^c[4077]^c[4078]^c[4016]^c[4319]^c[4205]^c[4088]^c[4213]^c[4214]^c[4264]^c[4149]^c[4150]^c[4452]^c[4338]^c[4357]^c[4482]^c[4483]^c[4467]^c[4352]^c[4353]^c[4562]^c[4688]^c[4635]^c[4761]^c[4779]^c[4664]^c[4665]^c[4704]^c[4817]^c[4943]^c[4942]^c[4827]^c[4828]^c[4884]^c[5009]^c[5010]^c[5089]^c[5215]^c[5168]^c[5054]^c[5171]^c[5056]^c[5057]^c[5238]; //row: 9 d[i2+9*Zc]=c[168]^c[251]^c[2605]^c[2860]^c[3136]^c[4291]^c[4411]^c[5004]; //row: 10 d[i2+10*Zc]=c[355]^c[630]^c[1029]^c[1909]^c[2034]^c[3443]; //row: 11 d[i2+11*Zc]=c[59]^c[1]^c[2]^c[20]^c[203]^c[113]^c[56]^c[52]^c[235]^c[44]^c[391]^c[333]^c[334]^c[408]^c[351]^c[427]^c[370]^c[354]^c[530]^c[712]^c[713]^c[640]^c[583]^c[629]^c[572]^c[778]^c[720]^c[721]^c[780]^c[723]^c[806]^c[749]^c[1105]^c[1048]^c[1035]^c[978]^c[1104]^c[1047]^c[1208]^c[1390]^c[1391]^c[1252]^c[1435]^c[1360]^c[1303]^c[1447]^c[1629]^c[1630]^c[1481]^c[1664]^c[1647]^c[1590]^c[1696]^c[1879]^c[1783]^c[1726]^c[1790]^c[1733]^c[2016]^c[1959]^c[1936]^c[2119]^c[1940]^c[2123]^c[2377]^c[2319]^c[2320]^c[2380]^c[2323]^c[2348]^c[2291]^c[2549]^c[2491]^c[2492]^c[2632]^c[2575]^c[2565]^c[2508]^c[2769]^c[2711]^c[2712]^c[2815]^c[2758]^c[2780]^c[2723]^c[2932]^c[3114]^c[3115]^c[2993]^c[2936]^c[3066]^c[3009]^c[3013]^c[3359]^c[3301]^c[3302]^c[3290]^c[3233]^c[3308]^c[3251]^c[3379]^c[3562]^c[3385]^c[3568]^c[3451]^c[3394]^c[3659]^c[3601]^c[3602]^c[3609]^c[3792]^c[3797]^c[3740]^c[3981]^c[3923]^c[3924]^c[3917]^c[3860]^c[3964]^c[3907]^c[3840]^c[4091]^c[4274]^c[4100]^c[4283]^c[4276]^c[4219]^c[4464]^c[4406]^c[4407]^c[4369]^c[4552]^c[4479]^c[4422]^c[4574]^c[4756]^c[4757]^c[4647]^c[4590]^c[4791]^c[4734]^c[4829]^c[5011]^c[5012]^c[4954]^c[4897]^c[4896]^c[4839]^c[5101]^c[5043]^c[5044]^c[5180]^c[5123]^c[5183]^c[5126]^c[5191]; //row: 12 d[i2+12*Zc]=c[185]^c[454]^c[2523]^c[2819]^c[3217]^c[4399]; //row: 13 d[i2+13*Zc]=c[44]^c[45]^c[6]^c[99]^c[38]^c[219]^c[376]^c[377]^c[394]^c[413]^c[515]^c[516]^c[626]^c[615]^c[763]^c[764]^c[766]^c[792]^c[904]^c[1091]^c[1021]^c[1090]^c[1433]^c[1434]^c[1238]^c[1346]^c[1672]^c[1673]^c[1467]^c[1633]^c[1682]^c[1769]^c[1776]^c[1833]^c[2002]^c[1922]^c[1926]^c[2362]^c[2363]^c[2366]^c[2334]^c[2534]^c[2535]^c[2618]^c[2551]^c[2754]^c[2755]^c[2801]^c[2766]^c[2917]^c[2918]^c[2979]^c[3052]^c[3344]^c[3345]^c[3276]^c[3294]^c[3365]^c[3371]^c[3437]^c[3644]^c[3645]^c[3835]^c[3783]^c[3966]^c[3967]^c[3903]^c[3950]^c[4317]^c[4086]^c[4262]^c[4449]^c[4450]^c[4355]^c[4465]^c[4799]^c[4560]^c[4633]^c[4777]^c[4814]^c[4815]^c[4940]^c[4882]^c[4977]^c[5086]^c[5087]^c[5166]^c[5169]; //row: 14 d[i2+14*Zc]=c[123]^c[3023]^c[3781]^c[3934]^c[4151]^c[5115]; //row: 15 d[i2+15*Zc]=c[184]^c[145]^c[238]^c[176]^c[177]^c[38]^c[276]^c[293]^c[311]^c[312]^c[377]^c[655]^c[525]^c[514]^c[903]^c[905]^c[930]^c[931]^c[990]^c[1160]^c[988]^c[989]^c[1333]^c[1377]^c[1245]^c[1572]^c[1606]^c[1531]^c[1532]^c[1821]^c[1908]^c[1914]^c[1915]^c[2141]^c[2061]^c[2064]^c[2065]^c[2262]^c[2265]^c[2233]^c[2434]^c[2517]^c[2449]^c[2450]^c[2619]^c[2654]^c[2700]^c[2664]^c[2665]^c[3057]^c[3118]^c[2950]^c[2951]^c[3244]^c[3175]^c[3192]^c[3193]^c[3292]^c[3504]^c[3510]^c[3575]^c[3576]^c[3784]^c[3734]^c[3682]^c[3866]^c[4042]^c[3848]^c[3849]^c[4216]^c[4225]^c[4160]^c[4161]^c[4349]^c[4494]^c[4363]^c[4364]^c[4461]^c[4699]^c[4772]^c[4676]^c[4954]^c[4839]^c[5020]^c[5021]^c[5226]^c[5065]^c[5067]^c[5068]; //row: 16 d[i2+16*Zc]=c[99]^c[60]^c[153]^c[92]^c[431]^c[448]^c[467]^c[317]^c[570]^c[680]^c[669]^c[818]^c[820]^c[846]^c[871]^c[1145]^c[1075]^c[1144]^c[1248]^c[1292]^c[1400]^c[1487]^c[1521]^c[1447]^c[1736]^c[1823]^c[1830]^c[2056]^c[1976]^c[1980]^c[2177]^c[2180]^c[2388]^c[2589]^c[2432]^c[2605]^c[2809]^c[2855]^c[2820]^c[2723]^c[2972]^c[3033]^c[3106]^c[3159]^c[3330]^c[3348]^c[3419]^c[3425]^c[3491]^c[3699]^c[3649]^c[3837]^c[4021]^c[3957]^c[4004]^c[4131]^c[4140]^c[4316]^c[4504]^c[4409]^c[4519]^c[4614]^c[4687]^c[4591]^c[4869]^c[4994]^c[4936]^c[4804]^c[5141]^c[5220]^c[5223]; //row: 17 d[i2+17*Zc]=c[182]^c[3471]^c[3945]^c[4298]^c[5168]; //row: 18 d[i2+18*Zc]=c[422]^c[3094]^c[3299]^c[4462]^c[4573]; //row: 19 d[i2+19*Zc]=c[178]^c[347]^c[1838]^c[2057]^c[2595]; //row: 20 d[i2+20*Zc]=c[24]^c[225]^c[78]^c[17]^c[76]^c[356]^c[373]^c[392]^c[495]^c[605]^c[594]^c[743]^c[745]^c[771]^c[906]^c[1070]^c[1000]^c[1069]^c[1413]^c[1217]^c[1325]^c[1652]^c[1446]^c[1612]^c[1901]^c[1748]^c[1755]^c[1981]^c[2141]^c[2145]^c[2342]^c[2345]^c[2313]^c[2362]^c[2514]^c[2597]^c[2530]^c[2734]^c[2780]^c[2745]^c[2806]^c[2897]^c[2958]^c[3031]^c[3324]^c[3255]^c[3273]^c[3584]^c[3590]^c[3416]^c[3624]^c[3814]^c[3762]^c[3946]^c[3882]^c[3929]^c[4296]^c[4305]^c[4241]^c[4429]^c[4334]^c[4444]^c[4779]^c[4612]^c[4756]^c[5034]^c[4919]^c[4861]^c[5066]^c[5145]^c[5148]; //row: 21 d[i2+21*Zc]=c[436]^c[1321]^c[4054]^c[4864]^c[5255]; //row: 22 d[i2+22*Zc]=c[24]^c[2926]^c[3245]^c[4257]; //row: 23 d[i2+23*Zc]=c[424]^c[606]^c[2516]^c[4518]; //row: 24 d[i2+24*Zc]=c[192]^c[153]^c[6]^c[185]^c[31]^c[284]^c[301]^c[320]^c[663]^c[533]^c[522]^c[911]^c[913]^c[939]^c[897]^c[998]^c[1168]^c[997]^c[961]^c[1341]^c[1385]^c[1253]^c[1580]^c[1614]^c[1540]^c[1829]^c[1916]^c[1683]^c[2149]^c[2069]^c[2073]^c[2270]^c[2273]^c[2241]^c[2442]^c[2525]^c[2458]^c[2662]^c[2708]^c[2673]^c[2795]^c[3065]^c[2886]^c[2959]^c[3252]^c[3183]^c[3201]^c[3512]^c[3518]^c[3584]^c[3792]^c[3742]^c[3690]^c[3874]^c[4050]^c[3857]^c[4224]^c[4233]^c[4169]^c[4357]^c[4502]^c[4372]^c[4707]^c[4780]^c[4684]^c[4962]^c[4847]^c[5029]^c[5234]^c[5073]^c[5076]; //row: 25 d[i2+25*Zc]=c[266]^c[1580]^c[1690]^c[3540]; //row: 26 d[i2+26*Zc]=c[162]^c[610]^c[1128]^c[3697]; //row: 27 d[i2+27*Zc]=c[404]^c[1671]^c[1928]; //row: 28 d[i2+28*Zc]=c[31]^c[1002]^c[4759]^c[5244]; //row: 29 d[i2+29*Zc]=c[238]^c[199]^c[52]^c[230]^c[231]^c[330]^c[347]^c[365]^c[366]^c[471]^c[709]^c[579]^c[568]^c[957]^c[959]^c[744]^c[745]^c[1044]^c[974]^c[1042]^c[1043]^c[1387]^c[1431]^c[1299]^c[1626]^c[1660]^c[1585]^c[1586]^c[1875]^c[1722]^c[1728]^c[1729]^c[1955]^c[2115]^c[2118]^c[2119]^c[2316]^c[2319]^c[2287]^c[2488]^c[2571]^c[2503]^c[2504]^c[2708]^c[2754]^c[2718]^c[2719]^c[3111]^c[2932]^c[3004]^c[3005]^c[3298]^c[3229]^c[3246]^c[3247]^c[3558]^c[3564]^c[3389]^c[3390]^c[3391]^c[3838]^c[3788]^c[3736]^c[3920]^c[3856]^c[3902]^c[3903]^c[4270]^c[4279]^c[4214]^c[4215]^c[4403]^c[4548]^c[4417]^c[4418]^c[4437]^c[4753]^c[4586]^c[4730]^c[5008]^c[4893]^c[4834]^c[4835]^c[5040]^c[5119]^c[5121]^c[5122]; //row: 30 d[i2+30*Zc]=c[0]^c[201]^c[53]^c[54]^c[232]^c[233]^c[169]^c[332]^c[348]^c[349]^c[367]^c[368]^c[711]^c[581]^c[569]^c[570]^c[959]^c[721]^c[746]^c[747]^c[1046]^c[975]^c[976]^c[1044]^c[1045]^c[1389]^c[1433]^c[1300]^c[1301]^c[1628]^c[1661]^c[1662]^c[1587]^c[1588]^c[1877]^c[1723]^c[1724]^c[1730]^c[1731]^c[1957]^c[2116]^c[2117]^c[2120]^c[2121]^c[2318]^c[2321]^c[2288]^c[2289]^c[2490]^c[2572]^c[2573]^c[2505]^c[2506]^c[2598]^c[2710]^c[2756]^c[2720]^c[2721]^c[3113]^c[2934]^c[3006]^c[3007]^c[3300]^c[3230]^c[3231]^c[3248]^c[3249]^c[3145]^c[3560]^c[3565]^c[3566]^c[3391]^c[3392]^c[3600]^c[3790]^c[3737]^c[3738]^c[3922]^c[3858]^c[3904]^c[3905]^c[4272]^c[4280]^c[4281]^c[4216]^c[4217]^c[4405]^c[4549]^c[4550]^c[4419]^c[4420]^c[4755]^c[4588]^c[4731]^c[4732]^c[5010]^c[4894]^c[4895]^c[4836]^c[4837]^c[5042]^c[5121]^c[5123]^c[5124]; //row: 31 d[i2+31*Zc]=c[69]^c[3]^c[30]^c[204]^c[123]^c[57]^c[62]^c[235]^c[236]^c[401]^c[335]^c[418]^c[352]^c[437]^c[370]^c[371]^c[312]^c[540]^c[714]^c[650]^c[584]^c[639]^c[573]^c[788]^c[722]^c[790]^c[724]^c[816]^c[749]^c[750]^c[1115]^c[1049]^c[1045]^c[979]^c[1114]^c[1047]^c[1048]^c[1218]^c[1392]^c[1262]^c[1436]^c[1370]^c[1304]^c[1457]^c[1631]^c[1491]^c[1665]^c[1657]^c[1590]^c[1591]^c[1706]^c[1880]^c[1793]^c[1727]^c[1800]^c[1733]^c[1734]^c[1828]^c[2026]^c[1960]^c[1946]^c[2120]^c[1950]^c[2123]^c[2124]^c[2387]^c[2321]^c[2390]^c[2324]^c[2358]^c[2292]^c[2559]^c[2493]^c[2402]^c[2576]^c[2575]^c[2508]^c[2509]^c[2779]^c[2713]^c[2825]^c[2759]^c[2790]^c[2723]^c[2724]^c[2942]^c[3116]^c[3003]^c[2937]^c[3076]^c[3009]^c[3010]^c[3129]^c[3303]^c[3300]^c[3234]^c[3318]^c[3251]^c[3252]^c[3389]^c[3563]^c[3395]^c[3569]^c[3461]^c[3394]^c[3395]^c[3669]^c[3603]^c[3619]^c[3793]^c[3807]^c[3741]^c[3991]^c[3925]^c[3927]^c[3861]^c[3974]^c[3907]^c[3908]^c[4101]^c[4275]^c[4110]^c[4284]^c[4286]^c[4219]^c[4220]^c[4474]^c[4408]^c[4379]^c[4553]^c[4489]^c[4422]^c[4423]^c[4584]^c[4758]^c[4657]^c[4591]^c[4561]^c[4735]^c[4839]^c[5013]^c[4964]^c[4898]^c[4906]^c[4839]^c[4840]^c[5111]^c[5045]^c[5190]^c[5124]^c[5193]^c[5126]^c[5127]; //row: 32 d[i2+32*Zc]=c[106]^c[67]^c[159]^c[160]^c[98]^c[99]^c[102]^c[438]^c[454]^c[455]^c[473]^c[474]^c[577]^c[687]^c[675]^c[676]^c[825]^c[827]^c[852]^c[853]^c[1152]^c[1081]^c[1082]^c[1150]^c[1151]^c[1255]^c[1299]^c[1406]^c[1407]^c[1494]^c[1527]^c[1528]^c[1453]^c[1454]^c[1743]^c[1829]^c[1830]^c[1836]^c[1837]^c[2063]^c[1982]^c[1983]^c[1986]^c[1987]^c[2184]^c[2187]^c[2394]^c[2395]^c[2596]^c[2438]^c[2439]^c[2611]^c[2612]^c[2816]^c[2862]^c[2826]^c[2827]^c[2979]^c[3040]^c[3112]^c[3113]^c[2989]^c[3166]^c[3336]^c[3337]^c[3354]^c[3355]^c[3426]^c[3431]^c[3432]^c[3497]^c[3498]^c[3510]^c[3706]^c[3656]^c[3603]^c[3604]^c[4028]^c[3964]^c[4010]^c[4011]^c[4138]^c[4146]^c[4147]^c[4082]^c[4083]^c[4511]^c[4415]^c[4416]^c[4525]^c[4526]^c[4621]^c[4694]^c[4597]^c[4598]^c[4876]^c[5000]^c[5001]^c[4942]^c[4943]^c[5148]^c[5227]^c[5229]^c[5230]; //row: 33 d[i2+33*Zc]=c[438]^c[611]^c[2811]^c[5104]; //row: 34 d[i2+34*Zc]=c[160]^c[1916]^c[3741]^c[4259]; //row: 35 d[i2+35*Zc]=c[234]^c[195]^c[48]^c[227]^c[326]^c[343]^c[362]^c[470]^c[705]^c[575]^c[564]^c[953]^c[955]^c[741]^c[1040]^c[970]^c[1039]^c[1383]^c[1427]^c[1295]^c[1622]^c[1656]^c[1582]^c[1613]^c[1871]^c[1718]^c[1725]^c[1951]^c[2111]^c[2115]^c[2312]^c[2315]^c[2283]^c[2484]^c[2567]^c[2500]^c[2704]^c[2750]^c[2715]^c[3107]^c[2928]^c[3001]^c[3024]^c[3294]^c[3225]^c[3243]^c[3554]^c[3560]^c[3386]^c[3834]^c[3784]^c[3732]^c[3916]^c[3852]^c[3899]^c[4266]^c[4275]^c[4211]^c[4399]^c[4544]^c[4414]^c[4749]^c[4582]^c[4726]^c[5004]^c[4889]^c[4831]^c[5276]^c[5115]^c[5118]; //row: 36 d[i2+36*Zc]=c[10]^c[3566]^c[3641]^c[4419]; //row: 37 d[i2+37*Zc]=c[55]^c[56]^c[17]^c[110]^c[49]^c[387]^c[388]^c[405]^c[424]^c[298]^c[526]^c[527]^c[637]^c[626]^c[774]^c[775]^c[777]^c[803]^c[1102]^c[1032]^c[1101]^c[1204]^c[1205]^c[1249]^c[1357]^c[1443]^c[1444]^c[1478]^c[1644]^c[1693]^c[1780]^c[1787]^c[2013]^c[1933]^c[1937]^c[2373]^c[2374]^c[2377]^c[2345]^c[2545]^c[2546]^c[2629]^c[2562]^c[2765]^c[2766]^c[2812]^c[2777]^c[2928]^c[2929]^c[2990]^c[3063]^c[3355]^c[3356]^c[3287]^c[3305]^c[3323]^c[3376]^c[3382]^c[3448]^c[3655]^c[3656]^c[3606]^c[3794]^c[3977]^c[3978]^c[3914]^c[3961]^c[4088]^c[4097]^c[4273]^c[4460]^c[4461]^c[4366]^c[4476]^c[4570]^c[4571]^c[4644]^c[4788]^c[4825]^c[4826]^c[4951]^c[4893]^c[5097]^c[5098]^c[5177]^c[5180]; //row: 38 d[i2+38*Zc]=c[120]^c[2249]^c[2425]^c[3019]; //row: 39 d[i2+39*Zc]=c[354]^c[907]^c[1847]^c[4611]; //row: 40 d[i2+40*Zc]=c[3]^c[2022]^c[4109]; //row: 41 d[i2+41*Zc]=c[292]^c[908]^c[2374]^c[4343]; //row: 42 d[i2+42*Zc]=c[206]^c[167]^c[19]^c[20]^c[198]^c[199]^c[221]^c[298]^c[314]^c[315]^c[333]^c[334]^c[677]^c[547]^c[535]^c[536]^c[925]^c[927]^c[952]^c[953]^c[1012]^c[1181]^c[1182]^c[1010]^c[1011]^c[1129]^c[1355]^c[1399]^c[1266]^c[1267]^c[1594]^c[1627]^c[1628]^c[1553]^c[1554]^c[1843]^c[1689]^c[1690]^c[1696]^c[1697]^c[1923]^c[2082]^c[2083]^c[2086]^c[2087]^c[2284]^c[2287]^c[2254]^c[2255]^c[2456]^c[2538]^c[2539]^c[2471]^c[2472]^c[2676]^c[2722]^c[2686]^c[2687]^c[3079]^c[2900]^c[2972]^c[2973]^c[3266]^c[3196]^c[3197]^c[3214]^c[3215]^c[3526]^c[3531]^c[3532]^c[3597]^c[3598]^c[3806]^c[3756]^c[3703]^c[3704]^c[3888]^c[4064]^c[3870]^c[3871]^c[4238]^c[4246]^c[4247]^c[4182]^c[4183]^c[4371]^c[4515]^c[4516]^c[4385]^c[4386]^c[4721]^c[4794]^c[4697]^c[4698]^c[4976]^c[4860]^c[4861]^c[4802]^c[4803]^c[5248]^c[5087]^c[5089]^c[5090]; //row: 43 d[i2+43*Zc]=c[20]^c[221]^c[74]^c[12]^c[13]^c[352]^c[369]^c[387]^c[388]^c[261]^c[491]^c[601]^c[590]^c[739]^c[741]^c[766]^c[767]^c[1066]^c[996]^c[1064]^c[1065]^c[1409]^c[1213]^c[1321]^c[1648]^c[1442]^c[1607]^c[1608]^c[1897]^c[1744]^c[1750]^c[1751]^c[1977]^c[2137]^c[2140]^c[2141]^c[2338]^c[2341]^c[2309]^c[2510]^c[2593]^c[2525]^c[2526]^c[2730]^c[2776]^c[2740]^c[2741]^c[2893]^c[2954]^c[3026]^c[3027]^c[3320]^c[3251]^c[3268]^c[3269]^c[3580]^c[3586]^c[3411]^c[3412]^c[3620]^c[3810]^c[3758]^c[3942]^c[3878]^c[3924]^c[3925]^c[3966]^c[4292]^c[4301]^c[4236]^c[4237]^c[4425]^c[4330]^c[4439]^c[4440]^c[4368]^c[4775]^c[4608]^c[4752]^c[5030]^c[4915]^c[4856]^c[4857]^c[5062]^c[5141]^c[5143]^c[5144]; //row: 44 d[i2+44*Zc]=c[42]^c[3]^c[96]^c[35]^c[190]^c[374]^c[391]^c[410]^c[513]^c[623]^c[612]^c[761]^c[763]^c[789]^c[1088]^c[1018]^c[1087]^c[1431]^c[1235]^c[1343]^c[1670]^c[1464]^c[1630]^c[1919]^c[1766]^c[1773]^c[1890]^c[1999]^c[2159]^c[1923]^c[2360]^c[2363]^c[2331]^c[2346]^c[2532]^c[2615]^c[2548]^c[2752]^c[2798]^c[2763]^c[2915]^c[2976]^c[3049]^c[3342]^c[3273]^c[3291]^c[3362]^c[3368]^c[3434]^c[3642]^c[3832]^c[3780]^c[3964]^c[3900]^c[3947]^c[4314]^c[4083]^c[4259]^c[4447]^c[4352]^c[4462]^c[4797]^c[4630]^c[4774]^c[4812]^c[4937]^c[4879]^c[5084]^c[5163]^c[5166]; //row: 45 d[i2+45*Zc]=c[416]^c[1553]^c[2492]; } break; case 256: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[249]^c[1]^c[105]^c[120]^c[324]^c[366]^c[344]^c[737]^c[750]^c[696]^c[926]^c[884]^c[851]^c[1147]^c[1086]^c[1043]^c[1379]^c[1350]^c[1396]^c[1545]^c[1628]^c[1685]^c[2013]^c[2020]^c[1922]^c[2151]^c[2224]^c[2290]^c[2362]^c[2476]^c[2398]^c[2788]^c[2598]^c[2695]^c[2925]^c[3035]^c[2901]^c[3262]^c[3173]^c[3317]^c[3336]^c[3469]^c[3546]^c[3692]^c[3808]^c[3794]^c[4034]^c[3971]^c[4064]^c[4118]^c[4237]^c[4335]^c[4506]^c[4596]^c[4427]^c[4797]^c[4812]^c[4851]^c[4898]^c[5118]^c[5114]^c[5358]^c[5236]^c[5263]^c[5406]^c[5403]^c[5387]; //row: 1 d[i2+1*Zc]=c[249]^c[250]^c[2]^c[106]^c[121]^c[324]^c[325]^c[367]^c[345]^c[737]^c[738]^c[751]^c[697]^c[926]^c[927]^c[885]^c[852]^c[1148]^c[1087]^c[1044]^c[1379]^c[1380]^c[1351]^c[1397]^c[1545]^c[1546]^c[1629]^c[1686]^c[2014]^c[2021]^c[1923]^c[2152]^c[2225]^c[2291]^c[2362]^c[2363]^c[2477]^c[2399]^c[2788]^c[2789]^c[2599]^c[2696]^c[2925]^c[2926]^c[3036]^c[2902]^c[3262]^c[3263]^c[3174]^c[3318]^c[3336]^c[3337]^c[3470]^c[3547]^c[3693]^c[3809]^c[3795]^c[4034]^c[4035]^c[3972]^c[4065]^c[4118]^c[4119]^c[4238]^c[4336]^c[4507]^c[4597]^c[4428]^c[4797]^c[4798]^c[4813]^c[4852]^c[4898]^c[4899]^c[5119]^c[5115]^c[5358]^c[5359]^c[5237]^c[5264]^c[5406]^c[5407]^c[5404]^c[5388]; //row: 2 d[i2+2*Zc]=c[250]^c[2]^c[105]^c[106]^c[120]^c[121]^c[325]^c[366]^c[367]^c[344]^c[345]^c[738]^c[751]^c[696]^c[697]^c[927]^c[885]^c[851]^c[852]^c[1148]^c[1086]^c[1087]^c[1043]^c[1044]^c[1380]^c[1351]^c[1396]^c[1397]^c[1546]^c[1628]^c[1629]^c[1685]^c[1686]^c[2014]^c[2020]^c[2021]^c[1922]^c[1923]^c[2152]^c[2224]^c[2225]^c[2290]^c[2291]^c[2363]^c[2477]^c[2398]^c[2399]^c[2789]^c[2598]^c[2599]^c[2695]^c[2696]^c[2926]^c[3036]^c[2901]^c[2902]^c[3263]^c[3174]^c[3317]^c[3318]^c[3337]^c[3469]^c[3470]^c[3546]^c[3547]^c[3693]^c[3808]^c[3809]^c[3794]^c[3795]^c[4035]^c[3972]^c[4064]^c[4065]^c[4119]^c[4238]^c[4335]^c[4336]^c[4507]^c[4596]^c[4597]^c[4427]^c[4428]^c[4798]^c[4812]^c[4813]^c[4851]^c[4852]^c[4899]^c[5119]^c[5114]^c[5115]^c[5359]^c[5236]^c[5237]^c[5263]^c[5264]^c[5407]^c[5404]^c[5387]^c[5388]; //row: 3 d[i2+3*Zc]=c[250]^c[2]^c[106]^c[120]^c[121]^c[325]^c[367]^c[344]^c[345]^c[738]^c[751]^c[697]^c[927]^c[885]^c[851]^c[852]^c[1148]^c[1087]^c[1043]^c[1044]^c[1380]^c[1351]^c[1397]^c[1546]^c[1629]^c[1685]^c[1686]^c[2014]^c[2021]^c[1922]^c[1923]^c[2152]^c[2225]^c[2290]^c[2291]^c[2363]^c[2477]^c[2399]^c[2789]^c[2599]^c[2695]^c[2696]^c[2926]^c[3036]^c[2901]^c[2902]^c[3263]^c[3174]^c[3317]^c[3318]^c[3337]^c[3470]^c[3546]^c[3547]^c[3693]^c[3809]^c[3794]^c[3795]^c[4035]^c[3972]^c[4065]^c[4119]^c[4238]^c[4335]^c[4336]^c[4507]^c[4597]^c[4427]^c[4428]^c[4798]^c[4813]^c[4851]^c[4852]^c[4899]^c[5119]^c[5115]^c[5359]^c[5237]^c[5263]^c[5264]^c[5407]^c[5404]^c[5387]^c[5388]; //row: 4 d[i2+4*Zc]=c[156]^c[357]; //row: 5 d[i2+5*Zc]=c[108]^c[116]^c[220]^c[235]^c[204]^c[439]^c[481]^c[459]^c[491]^c[596]^c[609]^c[555]^c[785]^c[999]^c[966]^c[961]^c[1262]^c[1201]^c[1158]^c[1494]^c[1465]^c[1511]^c[1660]^c[1743]^c[1544]^c[1872]^c[1879]^c[2037]^c[2266]^c[2083]^c[2149]^c[2477]^c[2335]^c[2513]^c[2647]^c[2713]^c[2810]^c[3040]^c[2894]^c[3016]^c[3121]^c[3288]^c[3176]^c[3302]^c[3451]^c[3328]^c[3405]^c[3807]^c[3667]^c[3653]^c[3893]^c[4086]^c[3923]^c[4233]^c[4096]^c[4194]^c[4123]^c[4365]^c[4455]^c[4542]^c[4656]^c[4671]^c[4710]^c[5013]^c[4977]^c[4973]^c[5217]^c[5351]^c[5122]^c[5521]^c[5518]^c[5502]^c[5498]; //row: 6 d[i2+6*Zc]=c[182]^c[1557]^c[2587]^c[2882]^c[3571]^c[4362]^c[4764]^c[5330]; //row: 7 d[i2+7*Zc]=c[219]^c[299]^c[1182]^c[1822]^c[2214]^c[3687]; //row: 8 d[i2+8*Zc]=c[234]^c[84]^c[242]^c[92]^c[90]^c[195]^c[196]^c[105]^c[210]^c[211]^c[111]^c[309]^c[415]^c[351]^c[456]^c[457]^c[329]^c[434]^c[435]^c[259]^c[722]^c[572]^c[735]^c[585]^c[681]^c[530]^c[531]^c[911]^c[1017]^c[869]^c[975]^c[836]^c[941]^c[942]^c[774]^c[1132]^c[1238]^c[1071]^c[1176]^c[1177]^c[1028]^c[1133]^c[1134]^c[1364]^c[1470]^c[1335]^c[1441]^c[1381]^c[1486]^c[1487]^c[1786]^c[1636]^c[1613]^c[1718]^c[1719]^c[1670]^c[1775]^c[1776]^c[1998]^c[1848]^c[2005]^c[1854]^c[1855]^c[1907]^c[2012]^c[2013]^c[2136]^c[2242]^c[2209]^c[2058]^c[2059]^c[2275]^c[2124]^c[2125]^c[2347]^c[2453]^c[2461]^c[2311]^c[2383]^c[2488]^c[2489]^c[2773]^c[2623]^c[2583]^c[2688]^c[2689]^c[2680]^c[2785]^c[2786]^c[2910]^c[3016]^c[3020]^c[2870]^c[2886]^c[2991]^c[2992]^c[3247]^c[3097]^c[3158]^c[3264]^c[3302]^c[3151]^c[3152]^c[3282]^c[3577]^c[3427]^c[3454]^c[3559]^c[3560]^c[3531]^c[3380]^c[3381]^c[3677]^c[3783]^c[3793]^c[3642]^c[3643]^c[3779]^c[3628]^c[3629]^c[4019]^c[3869]^c[3956]^c[4062]^c[4049]^c[3898]^c[3899]^c[4103]^c[4209]^c[4222]^c[4328]^c[4320]^c[4169]^c[4170]^c[4197]^c[4491]^c[4597]^c[4581]^c[4430]^c[4431]^c[4412]^c[4517]^c[4518]^c[4782]^c[4632]^c[4797]^c[4646]^c[4647]^c[4836]^c[4685]^c[4686]^c[4883]^c[4989]^c[5103]^c[4953]^c[5099]^c[4948]^c[4949]^c[5027]^c[5343]^c[5193]^c[5221]^c[5326]^c[5327]^c[5248]^c[5353]^c[5354]^c[5391]^c[5497]^c[5388]^c[5494]^c[5628]^c[5477]^c[5478]^c[5484]; //row: 9 d[i2+9*Zc]=c[102]^c[437]^c[2668]^c[2836]^c[3469]^c[4365]^c[4668]^c[5335]; //row: 10 d[i2+10*Zc]=c[353]^c[660]^c[1190]^c[1951]^c[2096]^c[3641]; //row: 11 d[i2+11*Zc]=c[245]^c[15]^c[16]^c[253]^c[24]^c[101]^c[128]^c[116]^c[143]^c[76]^c[320]^c[346]^c[347]^c[362]^c[389]^c[340]^c[367]^c[296]^c[733]^c[759]^c[760]^c[746]^c[517]^c[692]^c[719]^c[922]^c[948]^c[949]^c[880]^c[907]^c[847]^c[874]^c[1143]^c[1170]^c[1082]^c[1109]^c[1039]^c[1066]^c[1375]^c[1401]^c[1402]^c[1346]^c[1373]^c[1392]^c[1419]^c[1541]^c[1567]^c[1568]^c[1624]^c[1651]^c[1681]^c[1708]^c[2009]^c[2036]^c[2016]^c[2043]^c[1918]^c[1945]^c[2147]^c[2174]^c[2220]^c[2247]^c[2286]^c[2057]^c[2358]^c[2384]^c[2385]^c[2472]^c[2499]^c[2394]^c[2421]^c[2784]^c[2810]^c[2811]^c[2594]^c[2621]^c[2691]^c[2718]^c[2921]^c[2947]^c[2948]^c[3031]^c[3058]^c[2897]^c[2924]^c[3258]^c[3284]^c[3285]^c[3169]^c[3196]^c[3313]^c[3084]^c[3154]^c[3332]^c[3358]^c[3359]^c[3465]^c[3492]^c[3542]^c[3569]^c[3688]^c[3715]^c[3804]^c[3831]^c[3790]^c[3817]^c[4030]^c[4056]^c[4057]^c[3967]^c[3994]^c[4060]^c[4087]^c[4114]^c[4140]^c[4141]^c[4233]^c[4260]^c[4331]^c[4102]^c[4277]^c[4502]^c[4529]^c[4592]^c[4363]^c[4423]^c[4450]^c[4793]^c[4819]^c[4820]^c[4808]^c[4835]^c[4847]^c[4618]^c[4894]^c[4920]^c[4921]^c[5114]^c[4885]^c[5110]^c[4881]^c[5354]^c[5124]^c[5125]^c[5232]^c[5259]^c[5259]^c[5286]^c[5402]^c[5428]^c[5429]^c[5399]^c[5426]^c[5383]^c[5410]^c[5453]; //row: 12 d[i2+12*Zc]=c[159]^c[297]^c[2580]^c[2847]^c[3561]^c[4614]; //row: 13 d[i2+13*Zc]=c[55]^c[56]^c[64]^c[168]^c[183]^c[176]^c[386]^c[387]^c[429]^c[407]^c[543]^c[544]^c[557]^c[759]^c[988]^c[989]^c[947]^c[914]^c[1015]^c[1210]^c[1149]^c[1106]^c[1441]^c[1442]^c[1413]^c[1459]^c[1607]^c[1608]^c[1691]^c[1748]^c[1820]^c[1827]^c[1985]^c[1942]^c[2214]^c[2287]^c[2097]^c[2424]^c[2425]^c[2539]^c[2461]^c[2594]^c[2595]^c[2661]^c[2758]^c[2987]^c[2988]^c[2842]^c[2964]^c[3324]^c[3325]^c[3236]^c[3124]^c[3398]^c[3399]^c[3532]^c[3353]^c[3755]^c[3615]^c[3601]^c[3840]^c[3841]^c[4034]^c[3871]^c[4180]^c[4181]^c[4300]^c[4142]^c[4569]^c[4403]^c[4490]^c[4859]^c[4860]^c[4619]^c[4658]^c[4960]^c[4961]^c[4925]^c[4921]^c[5164]^c[5165]^c[5299]^c[5326]^c[5304]^c[5468]^c[5469]^c[5466]^c[5450]; //row: 14 d[i2+14*Zc]=c[205]^c[3126]^c[4045]^c[4222]^c[4367]^c[5604]; //row: 15 d[i2+15*Zc]=c[173]^c[181]^c[29]^c[43]^c[44]^c[39]^c[504]^c[290]^c[267]^c[268]^c[351]^c[661]^c[674]^c[620]^c[850]^c[808]^c[774]^c[775]^c[1071]^c[1266]^c[1222]^c[1223]^c[1303]^c[1530]^c[1320]^c[1725]^c[1552]^c[1608]^c[1609]^c[1937]^c[1944]^c[1845]^c[1846]^c[2075]^c[2148]^c[2213]^c[2214]^c[2542]^c[2400]^c[2322]^c[2712]^c[2778]^c[2618]^c[2619]^c[2624]^c[2849]^c[2959]^c[2824]^c[2825]^c[3186]^c[3097]^c[3240]^c[3241]^c[3516]^c[3393]^c[3469]^c[3470]^c[3390]^c[3616]^c[3732]^c[3717]^c[3718]^c[3958]^c[3895]^c[3988]^c[4298]^c[4161]^c[4258]^c[4259]^c[4430]^c[4520]^c[4606]^c[4607]^c[4721]^c[4736]^c[4774]^c[4775]^c[4682]^c[5078]^c[5042]^c[5038]^c[5282]^c[5160]^c[5186]^c[5187]^c[5586]^c[5583]^c[5566]^c[5567]; //row: 16 d[i2+16*Zc]=c[147]^c[155]^c[3]^c[18]^c[478]^c[264]^c[498]^c[319]^c[635]^c[648]^c[594]^c[824]^c[782]^c[1005]^c[816]^c[1045]^c[1240]^c[1197]^c[1533]^c[1504]^c[1294]^c[1699]^c[1782]^c[1583]^c[1911]^c[1918]^c[1820]^c[2049]^c[2122]^c[2188]^c[2516]^c[2374]^c[2552]^c[2686]^c[2752]^c[2593]^c[2823]^c[2933]^c[3055]^c[2864]^c[3160]^c[3327]^c[3215]^c[3490]^c[3367]^c[3444]^c[3590]^c[3706]^c[3692]^c[3932]^c[3869]^c[3962]^c[4272]^c[4135]^c[4233]^c[4404]^c[4494]^c[4581]^c[4695]^c[4710]^c[4749]^c[5052]^c[5016]^c[5012]^c[5256]^c[5134]^c[5161]^c[5170]^c[5560]^c[5557]^c[5541]; //row: 17 d[i2+17*Zc]=c[6]^c[3747]^c[4154]^c[4352]^c[5519]; //row: 18 d[i2+18*Zc]=c[297]^c[3304]^c[3335]^c[4762]^c[5010]; //row: 19 d[i2+19*Zc]=c[59]^c[328]^c[1863]^c[2174]^c[2783]; //row: 20 d[i2+20*Zc]=c[153]^c[161]^c[9]^c[24]^c[150]^c[484]^c[270]^c[504]^c[641]^c[654]^c[600]^c[830]^c[788]^c[1011]^c[953]^c[1051]^c[1246]^c[1203]^c[1283]^c[1510]^c[1300]^c[1705]^c[1788]^c[1589]^c[1917]^c[1924]^c[1826]^c[2055]^c[2128]^c[2194]^c[2522]^c[2380]^c[2558]^c[2520]^c[2692]^c[2758]^c[2599]^c[2829]^c[2939]^c[3061]^c[2862]^c[3166]^c[3077]^c[3221]^c[3496]^c[3373]^c[3450]^c[3596]^c[3712]^c[3698]^c[3938]^c[3875]^c[3968]^c[4278]^c[4141]^c[4239]^c[4410]^c[4500]^c[4587]^c[4701]^c[4716]^c[4755]^c[5058]^c[5022]^c[5018]^c[5262]^c[5140]^c[5167]^c[5566]^c[5563]^c[5547]; //row: 21 d[i2+21*Zc]=c[504]^c[1400]^c[4204]^c[5250]^c[5546]; //row: 22 d[i2+22*Zc]=c[63]^c[3213]^c[3515]^c[4509]; //row: 23 d[i2+23*Zc]=c[411]^c[658]^c[2729]^c[4759]; //row: 24 d[i2+24*Zc]=c[215]^c[223]^c[71]^c[86]^c[111]^c[290]^c[332]^c[310]^c[703]^c[716]^c[662]^c[892]^c[850]^c[817]^c[853]^c[1113]^c[1052]^c[1265]^c[1259]^c[1345]^c[1316]^c[1362]^c[1767]^c[1594]^c[1651]^c[1979]^c[1986]^c[1888]^c[2117]^c[2190]^c[2256]^c[2328]^c[2442]^c[2364]^c[2754]^c[2564]^c[2661]^c[2891]^c[3001]^c[2867]^c[2931]^c[3228]^c[3139]^c[3283]^c[3558]^c[3435]^c[3512]^c[3658]^c[3774]^c[3760]^c[4000]^c[3937]^c[4030]^c[4340]^c[4203]^c[4301]^c[4472]^c[4562]^c[4393]^c[4763]^c[4778]^c[4817]^c[4864]^c[5084]^c[5080]^c[5324]^c[5202]^c[5229]^c[5628]^c[5625]^c[5609]; //row: 25 d[i2+25*Zc]=c[278]^c[1671]^c[1907]^c[3765]; //row: 26 d[i2+26*Zc]=c[194]^c[754]^c[1238]^c[3900]; //row: 27 d[i2+27*Zc]=c[280]^c[1639]^c[2241]; //row: 28 d[i2+28*Zc]=c[127]^c[1188]^c[5044]^c[5438]; //row: 29 d[i2+29*Zc]=c[0]^c[8]^c[112]^c[126]^c[127]^c[331]^c[373]^c[350]^c[351]^c[341]^c[744]^c[757]^c[703]^c[933]^c[891]^c[857]^c[858]^c[1154]^c[1093]^c[1049]^c[1050]^c[1386]^c[1357]^c[1403]^c[1552]^c[1635]^c[1691]^c[1692]^c[2020]^c[2027]^c[1928]^c[1929]^c[2158]^c[2231]^c[2296]^c[2297]^c[2369]^c[2483]^c[2405]^c[2795]^c[2605]^c[2701]^c[2702]^c[2932]^c[3042]^c[2907]^c[2908]^c[3269]^c[3180]^c[3323]^c[3324]^c[3343]^c[3476]^c[3552]^c[3553]^c[3699]^c[3815]^c[3800]^c[3801]^c[3819]^c[4041]^c[3978]^c[4071]^c[4125]^c[4244]^c[4341]^c[4342]^c[4513]^c[4603]^c[4433]^c[4434]^c[4804]^c[4819]^c[4857]^c[4858]^c[4691]^c[4905]^c[4869]^c[4865]^c[5365]^c[5243]^c[5269]^c[5270]^c[5413]^c[5410]^c[5393]^c[5394]; //row: 30 d[i2+30*Zc]=c[3]^c[11]^c[114]^c[115]^c[129]^c[130]^c[215]^c[334]^c[375]^c[376]^c[353]^c[354]^c[747]^c[760]^c[705]^c[706]^c[936]^c[894]^c[860]^c[861]^c[1157]^c[1095]^c[1096]^c[1052]^c[1053]^c[1389]^c[1360]^c[1405]^c[1406]^c[1555]^c[1637]^c[1638]^c[1694]^c[1695]^c[2023]^c[2029]^c[2030]^c[1931]^c[1932]^c[2161]^c[2233]^c[2234]^c[2299]^c[2300]^c[2372]^c[2486]^c[2407]^c[2408]^c[2798]^c[2607]^c[2608]^c[2704]^c[2705]^c[2632]^c[2935]^c[3045]^c[2910]^c[2911]^c[3272]^c[3183]^c[3326]^c[3327]^c[3346]^c[3478]^c[3479]^c[3555]^c[3556]^c[3447]^c[3702]^c[3817]^c[3818]^c[3803]^c[3804]^c[4044]^c[3981]^c[4073]^c[4074]^c[4128]^c[4247]^c[4344]^c[4345]^c[4516]^c[4605]^c[4606]^c[4436]^c[4437]^c[4807]^c[4821]^c[4822]^c[4860]^c[4861]^c[4908]^c[4872]^c[4867]^c[4868]^c[5368]^c[5245]^c[5246]^c[5272]^c[5273]^c[5416]^c[5413]^c[5396]^c[5397]; //row: 31 d[i2+31*Zc]=c[165]^c[55]^c[173]^c[63]^c[21]^c[167]^c[36]^c[181]^c[182]^c[496]^c[386]^c[282]^c[428]^c[260]^c[405]^c[406]^c[350]^c[653]^c[543]^c[666]^c[556]^c[612]^c[758]^c[842]^c[988]^c[800]^c[946]^c[1023]^c[912]^c[913]^c[1063]^c[1209]^c[1258]^c[1148]^c[1215]^c[1104]^c[1105]^c[1295]^c[1441]^c[1522]^c[1412]^c[1312]^c[1458]^c[1717]^c[1607]^c[1544]^c[1690]^c[1601]^c[1746]^c[1747]^c[1929]^c[1819]^c[1936]^c[1826]^c[1838]^c[1983]^c[1984]^c[1968]^c[2067]^c[2213]^c[2140]^c[2286]^c[2206]^c[2095]^c[2096]^c[2534]^c[2424]^c[2392]^c[2538]^c[2314]^c[2460]^c[2704]^c[2594]^c[2770]^c[2660]^c[2611]^c[2756]^c[2757]^c[2841]^c[2987]^c[2951]^c[2841]^c[2817]^c[2962]^c[2963]^c[3178]^c[3324]^c[3089]^c[3235]^c[3233]^c[3122]^c[3123]^c[3508]^c[3398]^c[3385]^c[3531]^c[3462]^c[3351]^c[3352]^c[3608]^c[3754]^c[3724]^c[3614]^c[3710]^c[3599]^c[3600]^c[3950]^c[3840]^c[3887]^c[4033]^c[3980]^c[3870]^c[4290]^c[4180]^c[4153]^c[4299]^c[4251]^c[4140]^c[4141]^c[4422]^c[4568]^c[4512]^c[4402]^c[4599]^c[4488]^c[4489]^c[4713]^c[4859]^c[4728]^c[4618]^c[4767]^c[4656]^c[4657]^c[5070]^c[4960]^c[5034]^c[4924]^c[5030]^c[4920]^c[5274]^c[5164]^c[5152]^c[5298]^c[5179]^c[5324]^c[5325]^c[5578]^c[5468]^c[5575]^c[5465]^c[5559]^c[5448]^c[5449]; //row: 32 d[i2+32*Zc]=c[115]^c[123]^c[226]^c[227]^c[241]^c[242]^c[220]^c[446]^c[487]^c[488]^c[465]^c[466]^c[603]^c[616]^c[561]^c[562]^c[792]^c[1006]^c[972]^c[973]^c[1269]^c[1207]^c[1208]^c[1164]^c[1165]^c[1501]^c[1472]^c[1517]^c[1518]^c[1667]^c[1749]^c[1750]^c[1550]^c[1551]^c[1879]^c[1885]^c[1886]^c[2043]^c[2044]^c[2273]^c[2089]^c[2090]^c[2155]^c[2156]^c[2484]^c[2342]^c[2519]^c[2520]^c[2654]^c[2719]^c[2720]^c[2560]^c[2561]^c[3047]^c[2901]^c[3022]^c[3023]^c[3128]^c[3295]^c[3182]^c[3183]^c[3183]^c[3458]^c[3334]^c[3335]^c[3411]^c[3412]^c[3814]^c[3673]^c[3674]^c[3659]^c[3660]^c[3782]^c[3900]^c[4093]^c[3929]^c[3930]^c[4240]^c[4103]^c[4200]^c[4201]^c[4372]^c[4461]^c[4462]^c[4548]^c[4549]^c[4663]^c[4677]^c[4678]^c[4716]^c[4717]^c[5020]^c[4984]^c[4979]^c[4980]^c[5224]^c[5357]^c[5358]^c[5128]^c[5129]^c[5528]^c[5525]^c[5508]^c[5509]; //row: 33 d[i2+33*Zc]=c[257]^c[698]^c[2856]^c[5586]; //row: 34 d[i2+34*Zc]=c[126]^c[1958]^c[4003]^c[4510]; //row: 35 d[i2+35*Zc]=c[96]^c[104]^c[208]^c[223]^c[427]^c[469]^c[447]^c[416]^c[584]^c[597]^c[543]^c[773]^c[987]^c[954]^c[1250]^c[1189]^c[1146]^c[1482]^c[1453]^c[1499]^c[1648]^c[1731]^c[1788]^c[1732]^c[1860]^c[1867]^c[2025]^c[2254]^c[2071]^c[2137]^c[2465]^c[2323]^c[2501]^c[2635]^c[2701]^c[2798]^c[3028]^c[2882]^c[3004]^c[3109]^c[3276]^c[3164]^c[3278]^c[3439]^c[3572]^c[3393]^c[3795]^c[3655]^c[3641]^c[3881]^c[4074]^c[3911]^c[4221]^c[4340]^c[4182]^c[4353]^c[4443]^c[4530]^c[4644]^c[4659]^c[4698]^c[5001]^c[4965]^c[4961]^c[5205]^c[5339]^c[5366]^c[5509]^c[5506]^c[5490]; //row: 36 d[i2+36*Zc]=c[36]^c[3688]^c[3890]^c[4727]; //row: 37 d[i2+37*Zc]=c[115]^c[116]^c[124]^c[228]^c[243]^c[446]^c[447]^c[489]^c[467]^c[453]^c[603]^c[604]^c[617]^c[563]^c[792]^c[793]^c[1007]^c[974]^c[1270]^c[1209]^c[1166]^c[1501]^c[1502]^c[1473]^c[1519]^c[1667]^c[1668]^c[1751]^c[1552]^c[1880]^c[1887]^c[2045]^c[2274]^c[2091]^c[2157]^c[2484]^c[2485]^c[2343]^c[2521]^c[2654]^c[2655]^c[2721]^c[2562]^c[3047]^c[3048]^c[2902]^c[3024]^c[3128]^c[3129]^c[3296]^c[3184]^c[3458]^c[3459]^c[3336]^c[3413]^c[3547]^c[3815]^c[3675]^c[3661]^c[3900]^c[3901]^c[4094]^c[3931]^c[4240]^c[4241]^c[4104]^c[4202]^c[4373]^c[4463]^c[4550]^c[4663]^c[4664]^c[4679]^c[4718]^c[5020]^c[5021]^c[4985]^c[4981]^c[5224]^c[5225]^c[5359]^c[5130]^c[5528]^c[5529]^c[5526]^c[5510]; //row: 38 d[i2+38*Zc]=c[166]^c[2454]^c[2716]^c[3234]; //row: 39 d[i2+39*Zc]=c[428]^c[906]^c[1940]^c[5119]; //row: 40 d[i2+40*Zc]=c[156]^c[2184]^c[4500]; //row: 41 d[i2+41*Zc]=c[422]^c[940]^c[2442]^c[4758]; //row: 42 d[i2+42*Zc]=c[131]^c[139]^c[242]^c[243]^c[1]^c[2]^c[148]^c[462]^c[503]^c[504]^c[481]^c[482]^c[619]^c[632]^c[577]^c[578]^c[808]^c[1022]^c[988]^c[989]^c[1029]^c[1223]^c[1224]^c[1180]^c[1181]^c[1180]^c[1517]^c[1488]^c[1533]^c[1534]^c[1683]^c[1765]^c[1766]^c[1566]^c[1567]^c[1895]^c[1901]^c[1902]^c[1803]^c[1804]^c[2289]^c[2105]^c[2106]^c[2171]^c[2172]^c[2500]^c[2358]^c[2535]^c[2536]^c[2670]^c[2735]^c[2736]^c[2576]^c[2577]^c[3063]^c[2917]^c[3038]^c[3039]^c[3144]^c[3311]^c[3198]^c[3199]^c[3474]^c[3350]^c[3351]^c[3427]^c[3428]^c[3830]^c[3689]^c[3690]^c[3675]^c[3676]^c[3916]^c[3853]^c[3945]^c[3946]^c[4256]^c[4119]^c[4216]^c[4217]^c[4388]^c[4477]^c[4478]^c[4564]^c[4565]^c[4679]^c[4693]^c[4694]^c[4732]^c[4733]^c[5036]^c[5000]^c[4995]^c[4996]^c[5240]^c[5373]^c[5374]^c[5144]^c[5145]^c[5544]^c[5541]^c[5524]^c[5525]; //row: 43 d[i2+43*Zc]=c[133]^c[141]^c[245]^c[3]^c[4]^c[464]^c[506]^c[483]^c[484]^c[406]^c[621]^c[634]^c[580]^c[810]^c[768]^c[990]^c[991]^c[1031]^c[1226]^c[1182]^c[1183]^c[1519]^c[1490]^c[1280]^c[1685]^c[1768]^c[1568]^c[1569]^c[1897]^c[1904]^c[1805]^c[1806]^c[2291]^c[2108]^c[2173]^c[2174]^c[2502]^c[2360]^c[2538]^c[2672]^c[2738]^c[2578]^c[2579]^c[3065]^c[2919]^c[3040]^c[3041]^c[3146]^c[3313]^c[3200]^c[3201]^c[3476]^c[3353]^c[3429]^c[3430]^c[3832]^c[3692]^c[3677]^c[3678]^c[3918]^c[3855]^c[3948]^c[4258]^c[4121]^c[4218]^c[4219]^c[4258]^c[4390]^c[4480]^c[4566]^c[4567]^c[4681]^c[4696]^c[4734]^c[4735]^c[4780]^c[5038]^c[5002]^c[4998]^c[5242]^c[5120]^c[5146]^c[5147]^c[5546]^c[5543]^c[5526]^c[5527]; //row: 44 d[i2+44*Zc]=c[166]^c[174]^c[22]^c[37]^c[138]^c[497]^c[283]^c[261]^c[654]^c[667]^c[613]^c[843]^c[801]^c[768]^c[1064]^c[1259]^c[1216]^c[1296]^c[1523]^c[1313]^c[1718]^c[1545]^c[1602]^c[1930]^c[1937]^c[1839]^c[1948]^c[2068]^c[2141]^c[2207]^c[2535]^c[2393]^c[2315]^c[2466]^c[2705]^c[2771]^c[2612]^c[2842]^c[2952]^c[2818]^c[3179]^c[3090]^c[3234]^c[3509]^c[3386]^c[3463]^c[3609]^c[3725]^c[3711]^c[3951]^c[3888]^c[3981]^c[4291]^c[4154]^c[4252]^c[4423]^c[4513]^c[4600]^c[4714]^c[4729]^c[4768]^c[5071]^c[5035]^c[5031]^c[5275]^c[5153]^c[5180]^c[5579]^c[5576]^c[5560]; //row: 45 d[i2+45*Zc]=c[404]^c[1686]^c[2726]; } break; case 288: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[210]^c[178]^c[257]^c[186]^c[485]^c[454]^c[432]^c[763]^c[737]^c[795]^c[1049]^c[1086]^c[1029]^c[1407]^c[1284]^c[1259]^c[1658]^c[1599]^c[1682]^c[1731]^c[1929]^c[1809]^c[2091]^c[2233]^c[2147]^c[2505]^c[2366]^c[2500]^c[2620]^c[2708]^c[2879]^c[3023]^c[2882]^c[2920]^c[3283]^c[3276]^c[3329]^c[3671]^c[3470]^c[3512]^c[3858]^c[3817]^c[3779]^c[4103]^c[4260]^c[4146]^c[4552]^c[4471]^c[4607]^c[4751]^c[4765]^c[4849]^c[5042]^c[5111]^c[5060]^c[5278]^c[5452]^c[5471]^c[5687]^c[5627]^c[5671]^c[5832]^c[5993]^c[5872]^c[6308]^c[6166]^c[6155]; //row: 1 d[i2+1*Zc]=c[210]^c[211]^c[179]^c[258]^c[187]^c[485]^c[486]^c[455]^c[433]^c[763]^c[764]^c[738]^c[796]^c[1049]^c[1050]^c[1087]^c[1030]^c[1408]^c[1285]^c[1260]^c[1658]^c[1659]^c[1600]^c[1683]^c[1731]^c[1732]^c[1930]^c[1810]^c[2092]^c[2234]^c[2148]^c[2506]^c[2367]^c[2501]^c[2620]^c[2621]^c[2709]^c[2592]^c[3023]^c[3024]^c[2883]^c[2921]^c[3283]^c[3284]^c[3277]^c[3330]^c[3671]^c[3672]^c[3471]^c[3513]^c[3858]^c[3859]^c[3818]^c[3780]^c[4104]^c[4261]^c[4147]^c[4552]^c[4553]^c[4472]^c[4320]^c[4751]^c[4752]^c[4766]^c[4850]^c[5043]^c[5112]^c[5061]^c[5278]^c[5279]^c[5453]^c[5184]^c[5687]^c[5688]^c[5628]^c[5672]^c[5832]^c[5833]^c[5994]^c[5873]^c[6308]^c[6309]^c[6167]^c[6156]; //row: 2 d[i2+2*Zc]=c[211]^c[179]^c[257]^c[258]^c[186]^c[187]^c[486]^c[454]^c[455]^c[432]^c[433]^c[764]^c[738]^c[795]^c[796]^c[1050]^c[1087]^c[1029]^c[1030]^c[1408]^c[1284]^c[1285]^c[1259]^c[1260]^c[1659]^c[1600]^c[1682]^c[1683]^c[1732]^c[1929]^c[1930]^c[1809]^c[1810]^c[2092]^c[2233]^c[2234]^c[2147]^c[2148]^c[2506]^c[2366]^c[2367]^c[2500]^c[2501]^c[2621]^c[2709]^c[2879]^c[2592]^c[3024]^c[2882]^c[2883]^c[2920]^c[2921]^c[3284]^c[3277]^c[3329]^c[3330]^c[3672]^c[3471]^c[3512]^c[3513]^c[3859]^c[3817]^c[3818]^c[3779]^c[3780]^c[4104]^c[4260]^c[4261]^c[4146]^c[4147]^c[4553]^c[4472]^c[4607]^c[4320]^c[4752]^c[4766]^c[4849]^c[4850]^c[5043]^c[5111]^c[5112]^c[5060]^c[5061]^c[5279]^c[5452]^c[5453]^c[5471]^c[5184]^c[5688]^c[5628]^c[5671]^c[5672]^c[5833]^c[5993]^c[5994]^c[5872]^c[5873]^c[6309]^c[6167]^c[6155]^c[6156]; //row: 3 d[i2+3*Zc]=c[211]^c[179]^c[258]^c[186]^c[187]^c[486]^c[455]^c[432]^c[433]^c[764]^c[738]^c[796]^c[1050]^c[1087]^c[1029]^c[1030]^c[1408]^c[1285]^c[1259]^c[1260]^c[1659]^c[1600]^c[1683]^c[1732]^c[1930]^c[1809]^c[1810]^c[2092]^c[2234]^c[2147]^c[2148]^c[2506]^c[2367]^c[2500]^c[2501]^c[2621]^c[2709]^c[2592]^c[3024]^c[2883]^c[2920]^c[2921]^c[3284]^c[3277]^c[3329]^c[3330]^c[3672]^c[3471]^c[3512]^c[3513]^c[3859]^c[3818]^c[3779]^c[3780]^c[4104]^c[4261]^c[4146]^c[4147]^c[4553]^c[4472]^c[4320]^c[4752]^c[4766]^c[4849]^c[4850]^c[5043]^c[5112]^c[5060]^c[5061]^c[5279]^c[5453]^c[5471]^c[5184]^c[5688]^c[5628]^c[5672]^c[5833]^c[5994]^c[5872]^c[5873]^c[6309]^c[6167]^c[6155]^c[6156]; //row: 4 d[i2+4*Zc]=c[245]^c[522]; //row: 5 d[i2+5*Zc]=c[66]^c[34]^c[113]^c[42]^c[260]^c[341]^c[310]^c[288]^c[468]^c[619]^c[593]^c[651]^c[905]^c[942]^c[885]^c[935]^c[1263]^c[1428]^c[1403]^c[1514]^c[1455]^c[1538]^c[1875]^c[1785]^c[1953]^c[2235]^c[2089]^c[2291]^c[2361]^c[2510]^c[2356]^c[2764]^c[2852]^c[2735]^c[3167]^c[3026]^c[3064]^c[3427]^c[3420]^c[3185]^c[3527]^c[3614]^c[3656]^c[3738]^c[4002]^c[3961]^c[3923]^c[4247]^c[4116]^c[4290]^c[4408]^c[4327]^c[4463]^c[4895]^c[4621]^c[4705]^c[4861]^c[4898]^c[4967]^c[4916]^c[5422]^c[5308]^c[5327]^c[5543]^c[5483]^c[5527]^c[5976]^c[5849]^c[6016]^c[6164]^c[6310]^c[6299]^c[6126]; //row: 6 d[i2+6*Zc]=c[79]^c[1871]^c[3048]^c[3257]^c[3802]^c[5072]^c[5334]^c[5867]; //row: 7 d[i2+7*Zc]=c[168]^c[476]^c[1305]^c[2199]^c[2407]^c[4195]; //row: 8 d[i2+8*Zc]=c[152]^c[265]^c[120]^c[233]^c[199]^c[23]^c[24]^c[128]^c[240]^c[241]^c[53]^c[427]^c[540]^c[396]^c[508]^c[509]^c[374]^c[486]^c[487]^c[575]^c[705]^c[818]^c[679]^c[792]^c[737]^c[849]^c[850]^c[991]^c[1104]^c[1028]^c[1141]^c[971]^c[1083]^c[1084]^c[1115]^c[1349]^c[1174]^c[1226]^c[1338]^c[1339]^c[1201]^c[1313]^c[1314]^c[1600]^c[1713]^c[1541]^c[1654]^c[1624]^c[1448]^c[1449]^c[1961]^c[1786]^c[1871]^c[1983]^c[1984]^c[1751]^c[1863]^c[1864]^c[2033]^c[2146]^c[2175]^c[2287]^c[2288]^c[2089]^c[2201]^c[2202]^c[2447]^c[2560]^c[2308]^c[2420]^c[2421]^c[2442]^c[2554]^c[2555]^c[2850]^c[2675]^c[2650]^c[2763]^c[2821]^c[2645]^c[2646]^c[2965]^c[3078]^c[3112]^c[2936]^c[2937]^c[3150]^c[2974]^c[2975]^c[3225]^c[3338]^c[3218]^c[3331]^c[3271]^c[3383]^c[3384]^c[3613]^c[3726]^c[3700]^c[3525]^c[3742]^c[3566]^c[3567]^c[3496]^c[3800]^c[3913]^c[3759]^c[3871]^c[3872]^c[4009]^c[3833]^c[3834]^c[4045]^c[4158]^c[4202]^c[4314]^c[4315]^c[4088]^c[4200]^c[4201]^c[4494]^c[4607]^c[4413]^c[4526]^c[4549]^c[4373]^c[4374]^c[4693]^c[4806]^c[4707]^c[4820]^c[4791]^c[4615]^c[4616]^c[4705]^c[4984]^c[5097]^c[5053]^c[5165]^c[5166]^c[5002]^c[5114]^c[5115]^c[5220]^c[5333]^c[5394]^c[5218]^c[5219]^c[5413]^c[5237]^c[5238]^c[5629]^c[5742]^c[5569]^c[5682]^c[5613]^c[5725]^c[5726]^c[5517]^c[5774]^c[5887]^c[5935]^c[6047]^c[5760]^c[5814]^c[5926]^c[5927]^c[6250]^c[6075]^c[6108]^c[6221]^c[6097]^c[6209]^c[6210]^c[6062]; //row: 9 d[i2+9*Zc]=c[161]^c[446]^c[2972]^c[3301]^c[3788]^c[5027]^c[5259]^c[5968]; //row: 10 d[i2+10*Zc]=c[465]^c[576]^c[1179]^c[2282]^c[2537]^c[4232]; //row: 11 d[i2+11*Zc]=c[249]^c[236]^c[237]^c[217]^c[205]^c[8]^c[284]^c[225]^c[213]^c[54]^c[524]^c[511]^c[512]^c[493]^c[481]^c[471]^c[459]^c[310]^c[802]^c[789]^c[790]^c[776]^c[764]^c[834]^c[822]^c[1088]^c[1075]^c[1076]^c[1125]^c[1113]^c[1068]^c[1056]^c[1158]^c[1434]^c[1323]^c[1311]^c[1298]^c[1286]^c[1697]^c[1684]^c[1685]^c[1638]^c[1626]^c[1721]^c[1709]^c[1770]^c[1757]^c[1758]^c[1968]^c[1956]^c[1848]^c[1836]^c[2130]^c[2118]^c[2272]^c[2260]^c[2186]^c[2174]^c[2544]^c[2532]^c[2405]^c[2393]^c[2539]^c[2527]^c[2659]^c[2646]^c[2647]^c[2747]^c[2735]^c[2630]^c[2618]^c[3062]^c[3049]^c[3050]^c[2921]^c[2909]^c[2959]^c[2947]^c[3322]^c[3309]^c[3310]^c[3315]^c[3303]^c[3368]^c[3356]^c[3710]^c[3697]^c[3698]^c[3509]^c[3497]^c[3551]^c[3539]^c[3729]^c[3897]^c[3884]^c[3885]^c[3856]^c[3844]^c[3818]^c[3806]^c[4142]^c[4130]^c[4299]^c[4287]^c[4185]^c[4173]^c[4591]^c[4578]^c[4579]^c[4510]^c[4498]^c[4358]^c[4346]^c[4790]^c[4777]^c[4778]^c[4804]^c[4792]^c[4888]^c[4876]^c[4788]^c[5081]^c[5069]^c[5150]^c[5138]^c[5099]^c[5087]^c[5317]^c[5304]^c[5305]^c[5203]^c[5191]^c[5222]^c[5210]^c[5726]^c[5713]^c[5714]^c[5666]^c[5654]^c[5710]^c[5698]^c[5871]^c[5858]^c[5859]^c[6032]^c[6020]^c[5911]^c[5899]^c[6059]^c[6334]^c[6335]^c[6205]^c[6193]^c[6194]^c[6182]^c[6320]; //row: 12 d[i2+12*Zc]=c[224]^c[449]^c[3123]^c[3318]^c[3981]^c[5426]; //row: 13 d[i2+13*Zc]=c[246]^c[247]^c[215]^c[6]^c[223]^c[230]^c[521]^c[522]^c[491]^c[469]^c[799]^c[800]^c[774]^c[832]^c[1085]^c[1086]^c[1123]^c[1066]^c[1151]^c[1156]^c[1321]^c[1296]^c[1694]^c[1695]^c[1636]^c[1719]^c[1767]^c[1768]^c[1966]^c[1846]^c[2128]^c[2270]^c[2184]^c[2231]^c[2542]^c[2403]^c[2537]^c[2656]^c[2657]^c[2745]^c[2628]^c[3059]^c[3060]^c[2919]^c[2957]^c[3319]^c[3320]^c[3313]^c[3366]^c[3707]^c[3708]^c[3507]^c[3549]^c[3894]^c[3895]^c[3854]^c[3816]^c[4140]^c[4297]^c[4183]^c[4588]^c[4589]^c[4508]^c[4356]^c[4787]^c[4788]^c[4802]^c[4886]^c[5079]^c[5148]^c[5097]^c[5314]^c[5315]^c[5201]^c[5220]^c[5723]^c[5724]^c[5664]^c[5708]^c[5868]^c[5869]^c[6030]^c[5909]^c[5806]^c[6056]^c[6057]^c[6203]^c[6192]; //row: 14 d[i2+14*Zc]=c[287]^c[3641]^c[4572]^c[4623]^c[5183]^c[6126]; //row: 15 d[i2+15*Zc]=c[275]^c[243]^c[34]^c[250]^c[251]^c[169]^c[550]^c[519]^c[496]^c[497]^c[575]^c[828]^c[802]^c[860]^c[1114]^c[1151]^c[1093]^c[1094]^c[1184]^c[1349]^c[1323]^c[1324]^c[1723]^c[1664]^c[1459]^c[1796]^c[1994]^c[1873]^c[1874]^c[2156]^c[2298]^c[2211]^c[2212]^c[2570]^c[2431]^c[2564]^c[2565]^c[2685]^c[2773]^c[2656]^c[3088]^c[2947]^c[2984]^c[2985]^c[3062]^c[3348]^c[3341]^c[3393]^c[3394]^c[3736]^c[3535]^c[3576]^c[3577]^c[3923]^c[3882]^c[3843]^c[3844]^c[3851]^c[4168]^c[4037]^c[4210]^c[4211]^c[4329]^c[4536]^c[4384]^c[4816]^c[4830]^c[4625]^c[4626]^c[5107]^c[5176]^c[5124]^c[5125]^c[5343]^c[5229]^c[5247]^c[5248]^c[5251]^c[5752]^c[5692]^c[5736]^c[5897]^c[5770]^c[5936]^c[5937]^c[6085]^c[6231]^c[6219]^c[6220]; //row: 16 d[i2+16*Zc]=c[210]^c[178]^c[257]^c[186]^c[485]^c[454]^c[432]^c[557]^c[763]^c[737]^c[795]^c[1049]^c[1086]^c[1029]^c[876]^c[1407]^c[1284]^c[1259]^c[1658]^c[1599]^c[1682]^c[1731]^c[1929]^c[1809]^c[2091]^c[2233]^c[2147]^c[2505]^c[2366]^c[2500]^c[2620]^c[2708]^c[2879]^c[3023]^c[2882]^c[2920]^c[3283]^c[3276]^c[3329]^c[3266]^c[3671]^c[3470]^c[3512]^c[3858]^c[3817]^c[3779]^c[4103]^c[4260]^c[4146]^c[4552]^c[4471]^c[4607]^c[4751]^c[4765]^c[4849]^c[5042]^c[5111]^c[5060]^c[5278]^c[5452]^c[5471]^c[5687]^c[5627]^c[5671]^c[5832]^c[5993]^c[5872]^c[5813]^c[6308]^c[6166]^c[6155]; //row: 17 d[i2+17*Zc]=c[152]^c[4168]^c[4895]^c[5183]^c[6209]; //row: 18 d[i2+18*Zc]=c[448]^c[3606]^c[4031]^c[5424]^c[5615]; //row: 19 d[i2+19*Zc]=c[287]^c[575]^c[2133]^c[2447]^c[3167]; //row: 20 d[i2+20*Zc]=c[150]^c[118]^c[197]^c[126]^c[264]^c[425]^c[394]^c[372]^c[703]^c[677]^c[735]^c[989]^c[1026]^c[969]^c[944]^c[1347]^c[1224]^c[1199]^c[1598]^c[1539]^c[1622]^c[1959]^c[1869]^c[1749]^c[2031]^c[2173]^c[2087]^c[2445]^c[2306]^c[2440]^c[2848]^c[2648]^c[2819]^c[2681]^c[2963]^c[3110]^c[3148]^c[3223]^c[3216]^c[3269]^c[3311]^c[3611]^c[3698]^c[3740]^c[3798]^c[3757]^c[4007]^c[4043]^c[4200]^c[4086]^c[4492]^c[4411]^c[4547]^c[4691]^c[4705]^c[4789]^c[4982]^c[5051]^c[5000]^c[5218]^c[5392]^c[5411]^c[5627]^c[5567]^c[5611]^c[5772]^c[5933]^c[5812]^c[6248]^c[6106]^c[6095]; //row: 21 d[i2+21*Zc]=c[351]^c[1485]^c[4873]^c[5768]^c[6065]; //row: 22 d[i2+22*Zc]=c[71]^c[3644]^c[3815]^c[5152]; //row: 23 d[i2+23*Zc]=c[467]^c[863]^c[3167]^c[5348]; //row: 24 d[i2+24*Zc]=c[210]^c[178]^c[257]^c[186]^c[235]^c[485]^c[454]^c[432]^c[763]^c[737]^c[795]^c[1049]^c[1086]^c[1029]^c[1062]^c[1407]^c[1284]^c[1259]^c[1439]^c[1658]^c[1599]^c[1682]^c[1731]^c[1929]^c[1809]^c[2091]^c[2233]^c[2147]^c[2505]^c[2366]^c[2500]^c[2620]^c[2708]^c[2879]^c[3023]^c[2882]^c[2920]^c[3283]^c[3276]^c[3329]^c[3433]^c[3671]^c[3470]^c[3512]^c[3858]^c[3817]^c[3779]^c[4103]^c[4260]^c[4146]^c[4552]^c[4471]^c[4607]^c[4751]^c[4765]^c[4849]^c[5042]^c[5111]^c[5060]^c[5278]^c[5452]^c[5471]^c[5687]^c[5627]^c[5671]^c[5832]^c[5993]^c[5872]^c[6308]^c[6166]^c[6155]; //row: 25 d[i2+25*Zc]=c[492]^c[2015]^c[2303]^c[4214]; //row: 26 d[i2+26*Zc]=c[287]^c[863]^c[1439]^c[4596]; //row: 27 d[i2+27*Zc]=c[332]^c[1763]^c[2375]; //row: 28 d[i2+28*Zc]=c[274]^c[1439]^c[5626]^c[6109]; //row: 29 d[i2+29*Zc]=c[253]^c[221]^c[12]^c[228]^c[229]^c[528]^c[497]^c[474]^c[475]^c[575]^c[806]^c[780]^c[838]^c[1092]^c[1129]^c[1071]^c[1072]^c[1162]^c[1327]^c[1301]^c[1302]^c[1701]^c[1642]^c[1725]^c[1774]^c[1972]^c[1851]^c[1852]^c[2134]^c[2276]^c[2189]^c[2190]^c[2548]^c[2409]^c[2542]^c[2543]^c[2663]^c[2751]^c[2634]^c[3066]^c[2925]^c[2962]^c[2963]^c[3326]^c[3319]^c[3371]^c[3372]^c[3714]^c[3513]^c[3554]^c[3555]^c[3901]^c[3860]^c[3821]^c[3822]^c[4146]^c[4303]^c[4188]^c[4189]^c[4211]^c[4595]^c[4514]^c[4362]^c[4794]^c[4808]^c[4891]^c[4892]^c[5085]^c[5154]^c[5102]^c[5103]^c[5321]^c[5207]^c[5225]^c[5226]^c[5471]^c[5730]^c[5670]^c[5714]^c[5875]^c[6036]^c[5914]^c[5915]^c[6063]^c[6209]^c[6197]^c[6198]; //row: 30 d[i2+30*Zc]=c[96]^c[64]^c[142]^c[143]^c[71]^c[72]^c[287]^c[371]^c[339]^c[340]^c[317]^c[318]^c[649]^c[623]^c[680]^c[681]^c[935]^c[972]^c[914]^c[915]^c[1293]^c[1169]^c[1170]^c[1432]^c[1433]^c[1544]^c[1485]^c[1567]^c[1568]^c[1905]^c[1814]^c[1815]^c[1982]^c[1983]^c[2265]^c[2118]^c[2119]^c[2032]^c[2033]^c[2391]^c[2539]^c[2540]^c[2385]^c[2386]^c[2794]^c[2594]^c[2764]^c[2765]^c[2909]^c[3055]^c[3056]^c[3093]^c[3094]^c[2969]^c[3169]^c[3450]^c[3214]^c[3215]^c[3557]^c[3644]^c[3685]^c[3686]^c[3744]^c[3990]^c[3991]^c[3952]^c[3953]^c[3995]^c[4277]^c[4145]^c[4146]^c[4319]^c[4032]^c[4438]^c[4357]^c[4492]^c[4493]^c[4637]^c[4651]^c[4734]^c[4735]^c[4928]^c[4996]^c[4997]^c[4945]^c[4946]^c[5452]^c[5337]^c[5338]^c[5356]^c[5357]^c[5573]^c[5513]^c[5556]^c[5557]^c[6006]^c[5878]^c[5879]^c[6045]^c[6046]^c[6194]^c[6052]^c[6328]^c[6329]; //row: 31 d[i2+31*Zc]=c[88]^c[230]^c[56]^c[198]^c[135]^c[277]^c[64]^c[205]^c[206]^c[363]^c[505]^c[332]^c[474]^c[310]^c[451]^c[452]^c[431]^c[641]^c[783]^c[615]^c[757]^c[673]^c[815]^c[927]^c[1069]^c[964]^c[1106]^c[907]^c[1048]^c[1049]^c[1285]^c[1427]^c[1162]^c[1304]^c[1425]^c[1278]^c[1279]^c[1536]^c[1678]^c[1477]^c[1619]^c[1560]^c[1702]^c[1897]^c[1751]^c[1807]^c[1949]^c[1975]^c[1828]^c[1829]^c[2257]^c[2111]^c[2111]^c[2253]^c[2025]^c[2166]^c[2167]^c[2159]^c[2383]^c[2525]^c[2532]^c[2386]^c[2378]^c[2519]^c[2520]^c[2786]^c[2640]^c[2874]^c[2728]^c[2757]^c[2611]^c[2901]^c[3043]^c[3048]^c[2902]^c[3086]^c[2939]^c[2940]^c[3449]^c[3303]^c[3442]^c[3296]^c[3207]^c[3348]^c[3349]^c[3549]^c[3691]^c[3636]^c[3490]^c[3678]^c[3531]^c[3532]^c[4024]^c[3878]^c[3983]^c[3837]^c[3945]^c[3798]^c[3799]^c[4269]^c[4123]^c[4138]^c[4280]^c[4312]^c[4165]^c[4166]^c[4430]^c[4572]^c[4349]^c[4491]^c[4485]^c[4339]^c[4629]^c[4771]^c[4643]^c[4785]^c[4727]^c[4868]^c[4869]^c[4920]^c[5062]^c[4989]^c[5131]^c[4938]^c[5079]^c[5080]^c[5444]^c[5298]^c[5330]^c[5184]^c[5349]^c[5202]^c[5203]^c[5565]^c[5707]^c[5505]^c[5647]^c[5549]^c[5691]^c[5998]^c[5852]^c[5871]^c[6013]^c[6038]^c[5891]^c[5892]^c[6186]^c[6328]^c[6332]^c[6186]^c[6321]^c[6174]^c[6175]; //row: 32 d[i2+32*Zc]=c[85]^c[53]^c[131]^c[132]^c[60]^c[61]^c[287]^c[360]^c[328]^c[329]^c[306]^c[307]^c[638]^c[612]^c[669]^c[670]^c[924]^c[961]^c[903]^c[904]^c[1282]^c[1158]^c[1159]^c[1421]^c[1422]^c[1533]^c[1474]^c[1556]^c[1557]^c[1894]^c[1803]^c[1804]^c[1971]^c[1972]^c[2254]^c[2107]^c[2108]^c[2021]^c[2022]^c[2380]^c[2528]^c[2529]^c[2374]^c[2375]^c[2783]^c[2871]^c[2753]^c[2754]^c[2898]^c[3044]^c[3045]^c[3082]^c[3083]^c[3446]^c[3439]^c[3203]^c[3204]^c[3546]^c[3633]^c[3674]^c[3675]^c[3666]^c[4021]^c[3979]^c[3980]^c[3941]^c[3942]^c[4266]^c[4134]^c[4135]^c[4308]^c[4309]^c[4067]^c[4427]^c[4346]^c[4481]^c[4482]^c[4626]^c[4640]^c[4723]^c[4724]^c[4917]^c[4985]^c[4986]^c[4934]^c[4935]^c[5441]^c[5326]^c[5327]^c[5345]^c[5346]^c[5562]^c[5502]^c[5545]^c[5546]^c[5995]^c[5867]^c[5868]^c[6034]^c[6035]^c[6183]^c[6329]^c[6317]^c[6318]; //row: 33 d[i2+33*Zc]=c[575]^c[863]^c[3243]^c[6065]; //row: 34 d[i2+34*Zc]=c[196]^c[2303]^c[4427]^c[5183]; //row: 35 d[i2+35*Zc]=c[127]^c[95]^c[174]^c[103]^c[402]^c[371]^c[349]^c[486]^c[680]^c[654]^c[712]^c[966]^c[1003]^c[946]^c[1324]^c[1201]^c[1176]^c[1575]^c[1516]^c[1599]^c[1936]^c[1846]^c[2014]^c[2005]^c[2296]^c[2150]^c[2064]^c[2422]^c[2571]^c[2417]^c[2825]^c[2625]^c[2796]^c[2940]^c[3087]^c[3125]^c[3200]^c[3193]^c[3246]^c[3588]^c[3675]^c[3717]^c[3743]^c[3775]^c[4022]^c[3984]^c[4308]^c[4177]^c[4063]^c[4469]^c[4388]^c[4524]^c[4668]^c[4682]^c[4766]^c[4959]^c[5028]^c[4977]^c[5195]^c[5369]^c[5388]^c[5604]^c[5544]^c[5588]^c[6037]^c[5910]^c[5789]^c[6225]^c[6083]^c[6072]; //row: 36 d[i2+36*Zc]=c[215]^c[4047]^c[4607]^c[5471]; //row: 37 d[i2+37*Zc]=c[210]^c[211]^c[179]^c[258]^c[187]^c[485]^c[486]^c[455]^c[433]^c[359]^c[763]^c[764]^c[738]^c[796]^c[1049]^c[1050]^c[1087]^c[1030]^c[1408]^c[1285]^c[1260]^c[1658]^c[1659]^c[1600]^c[1683]^c[1731]^c[1732]^c[1930]^c[1810]^c[2092]^c[2234]^c[2148]^c[2506]^c[2367]^c[2501]^c[2620]^c[2621]^c[2709]^c[2592]^c[3023]^c[3024]^c[2883]^c[2921]^c[3283]^c[3284]^c[3277]^c[3330]^c[3671]^c[3672]^c[3471]^c[3513]^c[3858]^c[3859]^c[3818]^c[3780]^c[3887]^c[4104]^c[4261]^c[4147]^c[4552]^c[4553]^c[4472]^c[4320]^c[4751]^c[4752]^c[4766]^c[4850]^c[5043]^c[5112]^c[5061]^c[5278]^c[5279]^c[5453]^c[5184]^c[5687]^c[5688]^c[5628]^c[5672]^c[5832]^c[5833]^c[5994]^c[5873]^c[6308]^c[6309]^c[6167]^c[6156]; //row: 38 d[i2+38*Zc]=c[189]^c[2879]^c[3167]^c[3743]; //row: 39 d[i2+39*Zc]=c[440]^c[1151]^c[2180]^c[5588]; //row: 40 d[i2+40*Zc]=c[215]^c[2447]^c[4897]; //row: 41 d[i2+41*Zc]=c[575]^c[1151]^c[2879]^c[5366]; //row: 42 d[i2+42*Zc]=c[246]^c[214]^c[4]^c[5]^c[221]^c[222]^c[26]^c[521]^c[489]^c[490]^c[467]^c[468]^c[799]^c[773]^c[830]^c[831]^c[1085]^c[1122]^c[1064]^c[1065]^c[1155]^c[1319]^c[1320]^c[1294]^c[1295]^c[1439]^c[1694]^c[1635]^c[1717]^c[1718]^c[1767]^c[1964]^c[1965]^c[1844]^c[1845]^c[2127]^c[2268]^c[2269]^c[2182]^c[2183]^c[2541]^c[2401]^c[2402]^c[2535]^c[2536]^c[2656]^c[2744]^c[2626]^c[2627]^c[3059]^c[2917]^c[2918]^c[2955]^c[2956]^c[3319]^c[3312]^c[3364]^c[3365]^c[3707]^c[3506]^c[3547]^c[3548]^c[3894]^c[3852]^c[3853]^c[3814]^c[3815]^c[4139]^c[4295]^c[4296]^c[4181]^c[4182]^c[4588]^c[4507]^c[4354]^c[4355]^c[4787]^c[4801]^c[4884]^c[4885]^c[5078]^c[5146]^c[5147]^c[5095]^c[5096]^c[5314]^c[5199]^c[5200]^c[5218]^c[5219]^c[5723]^c[5663]^c[5706]^c[5707]^c[5868]^c[6028]^c[6029]^c[5907]^c[5908]^c[6056]^c[6202]^c[6190]^c[6191]; //row: 43 d[i2+43*Zc]=c[193]^c[161]^c[240]^c[168]^c[169]^c[468]^c[437]^c[414]^c[415]^c[339]^c[746]^c[720]^c[778]^c[1032]^c[1069]^c[1011]^c[1012]^c[1390]^c[1267]^c[1241]^c[1242]^c[1641]^c[1582]^c[1665]^c[2002]^c[1912]^c[1791]^c[1792]^c[2074]^c[2216]^c[2129]^c[2130]^c[2488]^c[2349]^c[2482]^c[2483]^c[2603]^c[2691]^c[2862]^c[3006]^c[3153]^c[2902]^c[2903]^c[3266]^c[3259]^c[3311]^c[3312]^c[3654]^c[3741]^c[3494]^c[3495]^c[3841]^c[3800]^c[3761]^c[3762]^c[4086]^c[4243]^c[4128]^c[4129]^c[4535]^c[4454]^c[4590]^c[4734]^c[4748]^c[4831]^c[4832]^c[4850]^c[5025]^c[5094]^c[5042]^c[5043]^c[5261]^c[5435]^c[5453]^c[5454]^c[5471]^c[5670]^c[5610]^c[5654]^c[5815]^c[5976]^c[5854]^c[5855]^c[6291]^c[6149]^c[6137]^c[6138]; //row: 44 d[i2+44*Zc]=c[267]^c[235]^c[26]^c[243]^c[17]^c[542]^c[511]^c[489]^c[820]^c[794]^c[852]^c[1106]^c[1143]^c[1086]^c[1176]^c[1341]^c[1316]^c[1715]^c[1656]^c[1451]^c[1788]^c[1986]^c[1866]^c[2148]^c[2290]^c[2204]^c[2303]^c[2562]^c[2423]^c[2557]^c[2677]^c[2765]^c[2648]^c[2879]^c[3080]^c[2939]^c[2977]^c[3340]^c[3333]^c[3386]^c[3728]^c[3527]^c[3569]^c[3915]^c[3874]^c[3836]^c[4160]^c[4317]^c[4203]^c[4321]^c[4528]^c[4376]^c[4808]^c[4822]^c[4618]^c[5099]^c[5168]^c[5117]^c[5335]^c[5221]^c[5240]^c[5744]^c[5684]^c[5728]^c[5889]^c[5762]^c[5929]^c[6077]^c[6223]^c[6212]; //row: 45 d[i2+45*Zc]=c[455]^c[2015]^c[3023]; } break; case 320: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[72]^c[302]^c[67]^c[219]^c[334]^c[326]^c[527]^c[742]^c[933]^c[719]^c[1008]^c[986]^c[989]^c[1540]^c[1559]^c[1476]^c[1839]^c[1760]^c[1637]^c[1958]^c[2146]^c[1980]^c[2372]^c[2441]^c[2414]^c[2563]^c[2759]^c[2638]^c[2894]^c[2959]^c[2950]^c[3361]^c[3305]^c[3480]^c[3734]^c[3648]^c[3822]^c[4003]^c[4139]^c[4092]^c[4292]^c[4454]^c[4323]^c[4555]^c[4762]^c[4532]^c[5097]^c[5065]^c[5100]^c[5229]^c[5191]^c[5163]^c[5522]^c[5623]^c[5467]^c[5872]^c[6005]^c[5836]^c[6095]^c[6339]^c[6309]^c[6588]^c[6675]^c[6718]^c[6751]^c[7020]^c[6787]; //row: 1 d[i2+1*Zc]=c[72]^c[73]^c[303]^c[68]^c[220]^c[334]^c[335]^c[327]^c[528]^c[742]^c[743]^c[934]^c[720]^c[1008]^c[1009]^c[987]^c[990]^c[1541]^c[1560]^c[1477]^c[1839]^c[1840]^c[1761]^c[1638]^c[1958]^c[1959]^c[2147]^c[1981]^c[2373]^c[2442]^c[2415]^c[2564]^c[2760]^c[2639]^c[2894]^c[2895]^c[2960]^c[2951]^c[3361]^c[3362]^c[3306]^c[3481]^c[3734]^c[3735]^c[3649]^c[3823]^c[4003]^c[4004]^c[4140]^c[4093]^c[4292]^c[4293]^c[4455]^c[4324]^c[4556]^c[4763]^c[4533]^c[5097]^c[5098]^c[5066]^c[5101]^c[5229]^c[5230]^c[5192]^c[5164]^c[5523]^c[5624]^c[5468]^c[5872]^c[5873]^c[6006]^c[5837]^c[6095]^c[6096]^c[6340]^c[6310]^c[6588]^c[6589]^c[6676]^c[6719]^c[6751]^c[6752]^c[7021]^c[6788]; //row: 2 d[i2+2*Zc]=c[73]^c[303]^c[67]^c[68]^c[219]^c[220]^c[335]^c[326]^c[327]^c[527]^c[528]^c[743]^c[934]^c[719]^c[720]^c[1009]^c[987]^c[989]^c[990]^c[1541]^c[1559]^c[1560]^c[1476]^c[1477]^c[1840]^c[1761]^c[1637]^c[1638]^c[1959]^c[2146]^c[2147]^c[1980]^c[1981]^c[2373]^c[2441]^c[2442]^c[2414]^c[2415]^c[2564]^c[2759]^c[2760]^c[2638]^c[2639]^c[2895]^c[2960]^c[2950]^c[2951]^c[3362]^c[3305]^c[3306]^c[3480]^c[3481]^c[3735]^c[3649]^c[3822]^c[3823]^c[4004]^c[4140]^c[4092]^c[4093]^c[4293]^c[4454]^c[4455]^c[4323]^c[4324]^c[4556]^c[4762]^c[4763]^c[4532]^c[4533]^c[5098]^c[5066]^c[5100]^c[5101]^c[5230]^c[5192]^c[5163]^c[5164]^c[5523]^c[5623]^c[5624]^c[5467]^c[5468]^c[5873]^c[6005]^c[6006]^c[5836]^c[5837]^c[6096]^c[6340]^c[6309]^c[6310]^c[6589]^c[6675]^c[6676]^c[6718]^c[6719]^c[6752]^c[7021]^c[6787]^c[6788]; //row: 3 d[i2+3*Zc]=c[73]^c[303]^c[68]^c[219]^c[220]^c[335]^c[327]^c[527]^c[528]^c[743]^c[934]^c[720]^c[1009]^c[987]^c[989]^c[990]^c[1541]^c[1560]^c[1476]^c[1477]^c[1840]^c[1761]^c[1638]^c[1959]^c[2147]^c[1980]^c[1981]^c[2373]^c[2442]^c[2414]^c[2415]^c[2564]^c[2760]^c[2638]^c[2639]^c[2895]^c[2960]^c[2951]^c[3362]^c[3306]^c[3480]^c[3481]^c[3735]^c[3649]^c[3822]^c[3823]^c[4004]^c[4140]^c[4092]^c[4093]^c[4293]^c[4455]^c[4323]^c[4324]^c[4556]^c[4763]^c[4532]^c[4533]^c[5098]^c[5066]^c[5101]^c[5230]^c[5192]^c[5163]^c[5164]^c[5523]^c[5624]^c[5467]^c[5468]^c[5873]^c[6006]^c[5836]^c[5837]^c[6096]^c[6340]^c[6310]^c[6589]^c[6676]^c[6718]^c[6719]^c[6752]^c[7021]^c[6787]^c[6788]; //row: 4 d[i2+4*Zc]=c[232]^c[524]; //row: 5 d[i2+5*Zc]=c[31]^c[261]^c[26]^c[178]^c[82]^c[613]^c[605]^c[486]^c[611]^c[701]^c[892]^c[678]^c[967]^c[1265]^c[1268]^c[1009]^c[1499]^c[1518]^c[1435]^c[1798]^c[1719]^c[1916]^c[2237]^c[2105]^c[1939]^c[2331]^c[2400]^c[2373]^c[2842]^c[2718]^c[2597]^c[3173]^c[2918]^c[2909]^c[3320]^c[3264]^c[3439]^c[3693]^c[3607]^c[3781]^c[3962]^c[4098]^c[4051]^c[4157]^c[4251]^c[4413]^c[4282]^c[4514]^c[4721]^c[4491]^c[5056]^c[5024]^c[5059]^c[5188]^c[5150]^c[5122]^c[5320]^c[5481]^c[5582]^c[5746]^c[5831]^c[5964]^c[5795]^c[6374]^c[6298]^c[6268]^c[6547]^c[6634]^c[6677]^c[7030]^c[6979]^c[6746]^c[6986]; //row: 6 d[i2+6*Zc]=c[288]^c[1940]^c[3492]^c[3532]^c[4391]^c[5741]^c[5897]^c[6634]; //row: 7 d[i2+7*Zc]=c[11]^c[407]^c[1486]^c[2289]^c[2584]^c[4555]; //row: 8 d[i2+8*Zc]=c[317]^c[227]^c[227]^c[137]^c[312]^c[221]^c[222]^c[144]^c[53]^c[54]^c[294]^c[579]^c[489]^c[571]^c[480]^c[481]^c[452]^c[361]^c[362]^c[452]^c[667]^c[897]^c[858]^c[768]^c[644]^c[873]^c[874]^c[1253]^c[1163]^c[1231]^c[1141]^c[1234]^c[1143]^c[1144]^c[1089]^c[1465]^c[1375]^c[1484]^c[1393]^c[1394]^c[1401]^c[1310]^c[1311]^c[1764]^c[1674]^c[1685]^c[1915]^c[1882]^c[1791]^c[1792]^c[2203]^c[2113]^c[2071]^c[1980]^c[1981]^c[2225]^c[2134]^c[2135]^c[2297]^c[2527]^c[2366]^c[2275]^c[2276]^c[2339]^c[2248]^c[2249]^c[2808]^c[2718]^c[2684]^c[2593]^c[2594]^c[2563]^c[2792]^c[2793]^c[3139]^c[3049]^c[2884]^c[3114]^c[3195]^c[3104]^c[3105]^c[3286]^c[3516]^c[3230]^c[3459]^c[3460]^c[3405]^c[3314]^c[3315]^c[3659]^c[3569]^c[3573]^c[3803]^c[3747]^c[3656]^c[3657]^c[3928]^c[4158]^c[4064]^c[3974]^c[4017]^c[3926]^c[3927]^c[4070]^c[4217]^c[4447]^c[4379]^c[4288]^c[4289]^c[4248]^c[4477]^c[4478]^c[4480]^c[4710]^c[4687]^c[4596]^c[4597]^c[4777]^c[4686]^c[4687]^c[5022]^c[4932]^c[4990]^c[4900]^c[5025]^c[4934]^c[4935]^c[5154]^c[5384]^c[5436]^c[5346]^c[5408]^c[5317]^c[5318]^c[5415]^c[5447]^c[5677]^c[5548]^c[5457]^c[5458]^c[5712]^c[5621]^c[5622]^c[5797]^c[6027]^c[5930]^c[5839]^c[5840]^c[5761]^c[5990]^c[5991]^c[6340]^c[6250]^c[6264]^c[6174]^c[6234]^c[6143]^c[6144]^c[6189]^c[6513]^c[6423]^c[6600]^c[6509]^c[6510]^c[6643]^c[6552]^c[6553]^c[6996]^c[6906]^c[6945]^c[6855]^c[7032]^c[6941]^c[6942]^c[6988]; //row: 9 d[i2+9*Zc]=c[188]^c[563]^c[3235]^c[3805]^c[4310]^c[5706]^c[5894]^c[6608]; //row: 10 d[i2+10*Zc]=c[333]^c[719]^c[1490]^c[2314]^c[2720]^c[4790]; //row: 11 d[i2+11*Zc]=c[115]^c[32]^c[33]^c[25]^c[263]^c[110]^c[28]^c[262]^c[180]^c[15]^c[377]^c[614]^c[615]^c[369]^c[607]^c[570]^c[488]^c[466]^c[785]^c[702]^c[703]^c[656]^c[894]^c[762]^c[680]^c[1051]^c[968]^c[969]^c[1029]^c[1267]^c[1032]^c[1270]^c[1583]^c[1501]^c[1282]^c[1520]^c[1519]^c[1437]^c[1882]^c[1799]^c[1800]^c[1803]^c[1721]^c[1680]^c[1918]^c[2001]^c[2238]^c[2239]^c[2189]^c[2107]^c[2023]^c[1941]^c[2415]^c[2333]^c[2484]^c[2402]^c[2457]^c[2375]^c[2606]^c[2844]^c[2802]^c[2720]^c[2681]^c[2599]^c[2937]^c[3174]^c[3175]^c[3002]^c[2920]^c[2993]^c[2911]^c[3404]^c[3321]^c[3322]^c[3348]^c[3266]^c[3203]^c[3441]^c[3777]^c[3694]^c[3695]^c[3691]^c[3609]^c[3545]^c[3783]^c[4046]^c[3963]^c[3964]^c[3862]^c[4100]^c[4135]^c[4053]^c[4129]^c[4335]^c[4252]^c[4253]^c[4177]^c[4415]^c[4366]^c[4284]^c[4598]^c[4516]^c[4485]^c[4723]^c[4575]^c[4493]^c[4820]^c[5057]^c[5058]^c[5108]^c[5026]^c[4823]^c[5061]^c[5272]^c[5189]^c[5190]^c[5234]^c[5152]^c[5206]^c[5124]^c[5408]^c[5565]^c[5483]^c[5666]^c[5584]^c[5510]^c[5748]^c[5915]^c[5832]^c[5833]^c[6048]^c[5966]^c[5879]^c[5797]^c[6138]^c[6375]^c[6376]^c[6382]^c[6300]^c[6352]^c[6270]^c[6631]^c[6548]^c[6549]^c[6718]^c[6636]^c[6441]^c[6679]^c[6794]^c[7031]^c[7032]^c[6743]^c[6981]^c[6830]^c[6748]^c[6896]; //row: 12 d[i2+12*Zc]=c[228]^c[554]^c[3368]^c[3567]^c[4264]^c[5811]; //row: 13 d[i2+13*Zc]=c[109]^c[110]^c[20]^c[105]^c[257]^c[38]^c[371]^c[372]^c[364]^c[565]^c[779]^c[780]^c[651]^c[757]^c[1045]^c[1046]^c[1024]^c[1027]^c[1261]^c[1578]^c[1597]^c[1514]^c[1876]^c[1877]^c[1798]^c[1675]^c[1995]^c[1996]^c[2184]^c[2018]^c[2410]^c[2479]^c[2452]^c[2542]^c[2601]^c[2797]^c[2676]^c[2931]^c[2932]^c[2997]^c[2988]^c[3398]^c[3399]^c[3343]^c[3518]^c[3771]^c[3772]^c[3686]^c[3540]^c[4040]^c[4041]^c[3857]^c[4130]^c[4329]^c[4330]^c[4172]^c[4361]^c[4593]^c[4480]^c[4570]^c[4814]^c[4815]^c[5103]^c[4818]^c[5266]^c[5267]^c[5229]^c[5201]^c[5560]^c[5661]^c[5505]^c[5909]^c[5910]^c[6043]^c[5874]^c[6132]^c[6133]^c[6377]^c[6347]^c[6625]^c[6626]^c[6713]^c[6436]^c[6559]^c[6788]^c[6789]^c[6738]^c[6825]; //row: 14 d[i2+14*Zc]=c[77]^c[4138]^c[4853]^c[5180]^c[5618]^c[6977]; //row: 15 d[i2+15*Zc]=c[124]^c[34]^c[119]^c[270]^c[271]^c[228]^c[386]^c[378]^c[578]^c[579]^c[609]^c[794]^c[665]^c[771]^c[1060]^c[1038]^c[1040]^c[1041]^c[1592]^c[1291]^c[1527]^c[1528]^c[1891]^c[1812]^c[1689]^c[2010]^c[2198]^c[2031]^c[2032]^c[2424]^c[2493]^c[2465]^c[2466]^c[2615]^c[2811]^c[2689]^c[2690]^c[2946]^c[3011]^c[3002]^c[3413]^c[3357]^c[3211]^c[3212]^c[3259]^c[3786]^c[3700]^c[3553]^c[3554]^c[4055]^c[3871]^c[4143]^c[4144]^c[4344]^c[4186]^c[4374]^c[4375]^c[4289]^c[4607]^c[4494]^c[4583]^c[4584]^c[4829]^c[5117]^c[4832]^c[5281]^c[5243]^c[5214]^c[5215]^c[5574]^c[5675]^c[5518]^c[5519]^c[5924]^c[6057]^c[5887]^c[5888]^c[5943]^c[6147]^c[6391]^c[6361]^c[6640]^c[6407]^c[6449]^c[6450]^c[6803]^c[6752]^c[6838]^c[6839]; //row: 16 d[i2+16*Zc]=c[52]^c[282]^c[47]^c[199]^c[634]^c[626]^c[507]^c[388]^c[722]^c[913]^c[699]^c[988]^c[966]^c[969]^c[1099]^c[1520]^c[1539]^c[1456]^c[1819]^c[1740]^c[1617]^c[1938]^c[2126]^c[1960]^c[2352]^c[2421]^c[2394]^c[2863]^c[2739]^c[2618]^c[3194]^c[2939]^c[2930]^c[3341]^c[3285]^c[3460]^c[3714]^c[3628]^c[3802]^c[3564]^c[3983]^c[4119]^c[4072]^c[4272]^c[4434]^c[4303]^c[4535]^c[4742]^c[4512]^c[5077]^c[5045]^c[5080]^c[5209]^c[5171]^c[5143]^c[5502]^c[5603]^c[5447]^c[5852]^c[5985]^c[5816]^c[6395]^c[6319]^c[6289]^c[6568]^c[6655]^c[6698]^c[6514]^c[6731]^c[7000]^c[6767]; //row: 17 d[i2+17*Zc]=c[256]^c[4626]^c[5247]^c[5490]^c[6947]; //row: 18 d[i2+18*Zc]=c[579]^c[4133]^c[4450]^c[5900]^c[6374]; //row: 19 d[i2+19*Zc]=c[63]^c[500]^c[2340]^c[2829]^c[3240]; //row: 20 d[i2+20*Zc]=c[82]^c[312]^c[77]^c[229]^c[300]^c[344]^c[336]^c[537]^c[752]^c[943]^c[729]^c[1018]^c[996]^c[999]^c[1121]^c[1550]^c[1569]^c[1486]^c[1849]^c[1770]^c[1647]^c[1968]^c[2156]^c[1990]^c[2382]^c[2451]^c[2424]^c[2573]^c[2769]^c[2648]^c[2904]^c[2969]^c[2960]^c[2919]^c[3371]^c[3315]^c[3490]^c[3744]^c[3658]^c[3832]^c[3649]^c[4013]^c[4149]^c[4102]^c[4302]^c[4464]^c[4333]^c[4565]^c[4772]^c[4542]^c[5107]^c[5075]^c[5110]^c[5239]^c[5201]^c[5173]^c[5532]^c[5633]^c[5477]^c[5882]^c[6015]^c[5846]^c[6105]^c[6349]^c[6319]^c[6598]^c[6685]^c[6408]^c[6761]^c[7030]^c[6797]; //row: 21 d[i2+21*Zc]=c[398]^c[1774]^c[5251]^c[6682]^c[6822]; //row: 22 d[i2+22*Zc]=c[176]^c[3859]^c[4214]^c[5755]; //row: 23 d[i2+23*Zc]=c[568]^c[689]^c[3332]^c[5864]; //row: 24 d[i2+24*Zc]=c[33]^c[263]^c[28]^c[180]^c[288]^c[615]^c[607]^c[488]^c[703]^c[894]^c[680]^c[969]^c[1267]^c[1270]^c[1239]^c[1501]^c[1520]^c[1437]^c[1389]^c[1800]^c[1721]^c[1918]^c[2239]^c[2107]^c[1941]^c[2333]^c[2402]^c[2375]^c[2844]^c[2720]^c[2599]^c[3175]^c[2920]^c[2911]^c[3322]^c[3266]^c[3441]^c[3695]^c[3609]^c[3783]^c[3706]^c[3964]^c[4100]^c[4053]^c[4253]^c[4415]^c[4284]^c[4516]^c[4723]^c[4493]^c[5058]^c[5026]^c[5061]^c[5190]^c[5152]^c[5124]^c[5483]^c[5584]^c[5748]^c[5833]^c[5966]^c[5797]^c[6376]^c[6300]^c[6270]^c[6549]^c[6636]^c[6679]^c[7032]^c[6981]^c[6748]; //row: 25 d[i2+25*Zc]=c[491]^c[2214]^c[2335]^c[4525]; //row: 26 d[i2+26*Zc]=c[269]^c[749]^c[1597]^c[4866]; //row: 27 d[i2+27*Zc]=c[529]^c[1948]^c[2863]; //row: 28 d[i2+28*Zc]=c[10]^c[1572]^c[6129]^c[6953]; //row: 29 d[i2+29*Zc]=c[102]^c[12]^c[97]^c[248]^c[249]^c[364]^c[356]^c[556]^c[557]^c[346]^c[772]^c[643]^c[749]^c[1038]^c[1016]^c[1018]^c[1019]^c[1570]^c[1589]^c[1505]^c[1506]^c[1869]^c[1790]^c[1667]^c[1988]^c[2176]^c[2009]^c[2010]^c[2402]^c[2471]^c[2443]^c[2444]^c[2593]^c[2789]^c[2667]^c[2668]^c[2924]^c[2989]^c[2980]^c[3391]^c[3335]^c[3509]^c[3510]^c[3764]^c[3678]^c[3531]^c[3532]^c[4033]^c[3849]^c[4121]^c[4122]^c[4322]^c[4164]^c[4352]^c[4353]^c[4585]^c[4792]^c[4561]^c[4562]^c[4787]^c[4807]^c[5095]^c[4810]^c[5259]^c[5221]^c[5192]^c[5193]^c[5552]^c[5653]^c[5496]^c[5497]^c[5902]^c[6035]^c[5865]^c[5866]^c[5876]^c[6125]^c[6369]^c[6339]^c[6618]^c[6705]^c[6427]^c[6428]^c[6781]^c[6730]^c[6816]^c[6817]; //row: 30 d[i2+30*Zc]=c[208]^c[118]^c[202]^c[203]^c[34]^c[35]^c[90]^c[470]^c[461]^c[462]^c[342]^c[343]^c[878]^c[749]^c[854]^c[855]^c[1144]^c[1122]^c[1124]^c[1125]^c[1356]^c[1374]^c[1375]^c[1291]^c[1292]^c[1655]^c[1896]^c[1772]^c[1773]^c[2094]^c[1961]^c[1962]^c[2115]^c[2116]^c[2508]^c[2256]^c[2257]^c[2549]^c[2550]^c[2699]^c[2574]^c[2575]^c[2773]^c[2774]^c[3030]^c[3095]^c[3085]^c[3086]^c[3497]^c[3440]^c[3441]^c[3295]^c[3296]^c[3222]^c[3550]^c[3784]^c[3637]^c[3638]^c[4139]^c[3955]^c[3907]^c[3908]^c[4428]^c[4269]^c[4270]^c[4458]^c[4459]^c[4264]^c[4691]^c[4577]^c[4578]^c[4667]^c[4668]^c[4913]^c[4881]^c[4915]^c[4916]^c[5365]^c[5327]^c[5298]^c[5299]^c[5658]^c[5758]^c[5759]^c[5602]^c[5603]^c[6008]^c[5820]^c[5821]^c[5971]^c[5972]^c[6231]^c[6155]^c[6124]^c[6125]^c[6404]^c[6490]^c[6491]^c[6533]^c[6534]^c[6887]^c[6836]^c[6922]^c[6923]; //row: 31 d[i2+31*Zc]=c[138]^c[235]^c[48]^c[145]^c[133]^c[230]^c[285]^c[61]^c[62]^c[400]^c[497]^c[392]^c[489]^c[593]^c[369]^c[370]^c[541]^c[808]^c[905]^c[679]^c[776]^c[785]^c[882]^c[1074]^c[1171]^c[1052]^c[1149]^c[1055]^c[1151]^c[1152]^c[1286]^c[1383]^c[1305]^c[1402]^c[1542]^c[1318]^c[1319]^c[1905]^c[1682]^c[1826]^c[1603]^c[1703]^c[1800]^c[2024]^c[2121]^c[2212]^c[1989]^c[2046]^c[2142]^c[2143]^c[2438]^c[2535]^c[2507]^c[2284]^c[2480]^c[2256]^c[2257]^c[2547]^c[2629]^c[2726]^c[2825]^c[2602]^c[2704]^c[2800]^c[2801]^c[2960]^c[3057]^c[3025]^c[3122]^c[3016]^c[3113]^c[3427]^c[3204]^c[3371]^c[3468]^c[3226]^c[3322]^c[3323]^c[3800]^c[3577]^c[3714]^c[3811]^c[3568]^c[3664]^c[3665]^c[4069]^c[3846]^c[3885]^c[3982]^c[4158]^c[3934]^c[3935]^c[4358]^c[4455]^c[4200]^c[4297]^c[4389]^c[4165]^c[4166]^c[4621]^c[4718]^c[4508]^c[4605]^c[4598]^c[4694]^c[4695]^c[4843]^c[4940]^c[4811]^c[4908]^c[4846]^c[4943]^c[5295]^c[5392]^c[5257]^c[5354]^c[5229]^c[5325]^c[5326]^c[5588]^c[5685]^c[5689]^c[5466]^c[5533]^c[5629]^c[5630]^c[5938]^c[6035]^c[6071]^c[5848]^c[5902]^c[5998]^c[5999]^c[6161]^c[6258]^c[6085]^c[6182]^c[6375]^c[6152]^c[6654]^c[6431]^c[6421]^c[6518]^c[6464]^c[6560]^c[6561]^c[6817]^c[6914]^c[6766]^c[6863]^c[6853]^c[6949]^c[6950]; //row: 32 d[i2+32*Zc]=c[290]^c[200]^c[284]^c[285]^c[116]^c[117]^c[209]^c[552]^c[543]^c[544]^c[424]^c[425]^c[640]^c[831]^c[936]^c[937]^c[1226]^c[1204]^c[1206]^c[1207]^c[1438]^c[1456]^c[1457]^c[1373]^c[1374]^c[1737]^c[1658]^c[1854]^c[1855]^c[2176]^c[2043]^c[2044]^c[2197]^c[2198]^c[2270]^c[2338]^c[2339]^c[2311]^c[2312]^c[2781]^c[2656]^c[2657]^c[2855]^c[2856]^c[3112]^c[3177]^c[3167]^c[3168]^c[3259]^c[3202]^c[3203]^c[3377]^c[3378]^c[3632]^c[3546]^c[3719]^c[3720]^c[3901]^c[4037]^c[3989]^c[3990]^c[3861]^c[4190]^c[4351]^c[4352]^c[4220]^c[4221]^c[4773]^c[4659]^c[4660]^c[4749]^c[4750]^c[4750]^c[4995]^c[4963]^c[4997]^c[4998]^c[5127]^c[5409]^c[5380]^c[5381]^c[5740]^c[5520]^c[5521]^c[5684]^c[5685]^c[5770]^c[5902]^c[5903]^c[6053]^c[6054]^c[6313]^c[6237]^c[6206]^c[6207]^c[6486]^c[6572]^c[6573]^c[6615]^c[6616]^c[6969]^c[6918]^c[7004]^c[7005]; //row: 33 d[i2+33*Zc]=c[489]^c[659]^c[3659]^c[6752]; //row: 34 d[i2+34*Zc]=c[186]^c[2535]^c[4804]^c[5483]; //row: 35 d[i2+35*Zc]=c[37]^c[267]^c[32]^c[184]^c[619]^c[611]^c[492]^c[526]^c[707]^c[898]^c[684]^c[973]^c[1271]^c[1274]^c[1505]^c[1524]^c[1441]^c[1804]^c[1725]^c[1602]^c[1923]^c[2111]^c[1945]^c[2077]^c[2337]^c[2406]^c[2379]^c[2848]^c[2724]^c[2603]^c[3179]^c[2924]^c[2915]^c[3326]^c[3270]^c[3445]^c[3699]^c[3613]^c[3787]^c[3968]^c[4104]^c[4057]^c[3894]^c[4257]^c[4419]^c[4288]^c[4520]^c[4727]^c[4497]^c[5062]^c[5030]^c[5065]^c[5194]^c[5156]^c[5128]^c[5487]^c[5588]^c[5752]^c[5837]^c[5970]^c[5801]^c[6380]^c[6304]^c[6274]^c[6553]^c[6640]^c[6683]^c[7036]^c[6985]^c[6752]; //row: 36 d[i2+36*Zc]=c[258]^c[4658]^c[4977]^c[5919]; //row: 37 d[i2+37*Zc]=c[187]^c[188]^c[98]^c[183]^c[15]^c[449]^c[450]^c[442]^c[323]^c[617]^c[857]^c[858]^c[729]^c[835]^c[1123]^c[1124]^c[1102]^c[1105]^c[1336]^c[1355]^c[1592]^c[1634]^c[1635]^c[1876]^c[1753]^c[2073]^c[2074]^c[1942]^c[2096]^c[2488]^c[2557]^c[2530]^c[2679]^c[2875]^c[2754]^c[3009]^c[3010]^c[3075]^c[3066]^c[3476]^c[3477]^c[3421]^c[3276]^c[3529]^c[3530]^c[3764]^c[3618]^c[4118]^c[4119]^c[3935]^c[3888]^c[4407]^c[4408]^c[4250]^c[4439]^c[4174]^c[4671]^c[4558]^c[4648]^c[4892]^c[4893]^c[4861]^c[4896]^c[5344]^c[5345]^c[5307]^c[5279]^c[5638]^c[5739]^c[5583]^c[5987]^c[5988]^c[5801]^c[5952]^c[6210]^c[6211]^c[6135]^c[6105]^c[6703]^c[6704]^c[6471]^c[6514]^c[6866]^c[6867]^c[6816]^c[6903]; //row: 38 d[i2+38*Zc]=c[150]^c[3058]^c[3263]^c[4020]; //row: 39 d[i2+39*Zc]=c[421]^c[1036]^c[2431]^c[6287]; //row: 40 d[i2+40*Zc]=c[31]^c[2639]^c[5636]; //row: 41 d[i2+41*Zc]=c[473]^c[1006]^c[3003]^c[5966]; //row: 42 d[i2+42*Zc]=c[199]^c[109]^c[193]^c[194]^c[25]^c[26]^c[225]^c[461]^c[452]^c[453]^c[333]^c[334]^c[869]^c[740]^c[845]^c[846]^c[1135]^c[1113]^c[1115]^c[1116]^c[1347]^c[1365]^c[1366]^c[1282]^c[1283]^c[1344]^c[1646]^c[1887]^c[1763]^c[1764]^c[2085]^c[1952]^c[1953]^c[2106]^c[2107]^c[2499]^c[2247]^c[2248]^c[2540]^c[2541]^c[2690]^c[2565]^c[2566]^c[2764]^c[2765]^c[3021]^c[3086]^c[3076]^c[3077]^c[3488]^c[3431]^c[3432]^c[3286]^c[3287]^c[3541]^c[3775]^c[3628]^c[3629]^c[4130]^c[3946]^c[3898]^c[3899]^c[4419]^c[4260]^c[4261]^c[4449]^c[4450]^c[4682]^c[4568]^c[4569]^c[4658]^c[4659]^c[4904]^c[4872]^c[4906]^c[4907]^c[5356]^c[5318]^c[5289]^c[5290]^c[5649]^c[5749]^c[5750]^c[5593]^c[5594]^c[5999]^c[5811]^c[5812]^c[5962]^c[5963]^c[6222]^c[6146]^c[6115]^c[6116]^c[6715]^c[6481]^c[6482]^c[6524]^c[6525]^c[6878]^c[6827]^c[6913]^c[6914]; //row: 43 d[i2+43*Zc]=c[175]^c[85]^c[170]^c[1]^c[2]^c[437]^c[429]^c[629]^c[630]^c[547]^c[845]^c[716]^c[822]^c[1111]^c[1089]^c[1091]^c[1092]^c[1323]^c[1342]^c[1578]^c[1579]^c[1622]^c[1863]^c[1740]^c[2061]^c[1929]^c[2082]^c[2083]^c[2475]^c[2544]^c[2516]^c[2517]^c[2666]^c[2862]^c[2740]^c[2741]^c[2997]^c[3062]^c[3053]^c[3464]^c[3408]^c[3262]^c[3263]^c[3837]^c[3751]^c[3604]^c[3605]^c[4106]^c[3922]^c[3874]^c[3875]^c[4395]^c[4237]^c[4425]^c[4426]^c[4658]^c[4545]^c[4634]^c[4635]^c[4880]^c[4848]^c[4883]^c[5332]^c[5294]^c[5265]^c[5266]^c[5188]^c[5625]^c[5726]^c[5569]^c[5570]^c[5975]^c[5788]^c[5938]^c[5939]^c[5935]^c[6198]^c[6122]^c[6092]^c[6691]^c[6458]^c[6500]^c[6501]^c[6854]^c[6803]^c[6889]^c[6890]; //row: 44 d[i2+44*Zc]=c[12]^c[242]^c[7]^c[159]^c[233]^c[594]^c[586]^c[467]^c[682]^c[873]^c[659]^c[1268]^c[1246]^c[1249]^c[1480]^c[1499]^c[1416]^c[1779]^c[1700]^c[1897]^c[2218]^c[2086]^c[1920]^c[2312]^c[2381]^c[2354]^c[2466]^c[2823]^c[2699]^c[2578]^c[3154]^c[2899]^c[2890]^c[3138]^c[3301]^c[3245]^c[3420]^c[3674]^c[3588]^c[3762]^c[3943]^c[4079]^c[4032]^c[4232]^c[4394]^c[4263]^c[4495]^c[4702]^c[4792]^c[5037]^c[5005]^c[5040]^c[5169]^c[5131]^c[5423]^c[5462]^c[5563]^c[5727]^c[5812]^c[5945]^c[5776]^c[6355]^c[6279]^c[6249]^c[6528]^c[6615]^c[6658]^c[7011]^c[6960]^c[6727]; //row: 45 d[i2+45*Zc]=c[420]^c[2147]^c[3325]; } break; case 352: for (i2=0; i2 < Zc; i2++) { //rotate matrix here for (i5=0; i5 < Kb; i5++) { temp = c[i5*Zc]; memmove(&c[i5*Zc], &c[i5*Zc+1], (Zc-1)*sizeof(unsigned char)); c[i5*Zc+Zc-1] = temp; } // calculate each row in base graph //row: 0 d[i2+0*Zc]=c[293]^c[76]^c[225]^c[96]^c[469]^c[386]^c[445]^c[870]^c[928]^c[916]^c[1385]^c[1151]^c[1104]^c[1745]^c[1709]^c[1686]^c[1966]^c[2027]^c[1870]^c[2276]^c[2376]^c[2250]^c[2575]^c[2591]^c[2629]^c[3117]^c[3052]^c[2906]^c[3410]^c[3217]^c[3461]^c[3769]^c[3646]^c[3625]^c[3872]^c[4038]^c[4117]^c[4562]^c[4476]^c[4568]^c[4776]^c[4685]^c[4844]^c[5261]^c[5213]^c[5112]^c[5332]^c[5521]^c[5404]^c[5978]^c[5888]^c[5880]^c[6116]^c[6114]^c[6198]^c[6639]^c[6498]^c[6478]^c[6854]^c[6696]^c[6897]^c[7086]^c[7046]^c[7160]^c[7579]^c[7693]^c[7512]; //row: 1 d[i2+1*Zc]=c[293]^c[294]^c[77]^c[226]^c[97]^c[469]^c[470]^c[387]^c[446]^c[870]^c[871]^c[929]^c[917]^c[1385]^c[1386]^c[1152]^c[1105]^c[1746]^c[1710]^c[1687]^c[1966]^c[1967]^c[2028]^c[1871]^c[2276]^c[2277]^c[2377]^c[2251]^c[2576]^c[2592]^c[2630]^c[3118]^c[3053]^c[2907]^c[3410]^c[3411]^c[3218]^c[3462]^c[3769]^c[3770]^c[3647]^c[3626]^c[3872]^c[3873]^c[4039]^c[4118]^c[4562]^c[4563]^c[4477]^c[4569]^c[4776]^c[4777]^c[4686]^c[4845]^c[5262]^c[5214]^c[5113]^c[5332]^c[5333]^c[5522]^c[5405]^c[5978]^c[5979]^c[5889]^c[5881]^c[6117]^c[6115]^c[6199]^c[6639]^c[6640]^c[6499]^c[6479]^c[6854]^c[6855]^c[6697]^c[6898]^c[7086]^c[7087]^c[7047]^c[7161]^c[7579]^c[7580]^c[7694]^c[7513]; //row: 2 d[i2+2*Zc]=c[294]^c[77]^c[225]^c[226]^c[96]^c[97]^c[470]^c[386]^c[387]^c[445]^c[446]^c[871]^c[929]^c[916]^c[917]^c[1386]^c[1152]^c[1104]^c[1105]^c[1746]^c[1709]^c[1710]^c[1686]^c[1687]^c[1967]^c[2028]^c[1870]^c[1871]^c[2277]^c[2376]^c[2377]^c[2250]^c[2251]^c[2576]^c[2591]^c[2592]^c[2629]^c[2630]^c[3118]^c[3052]^c[3053]^c[2906]^c[2907]^c[3411]^c[3218]^c[3461]^c[3462]^c[3770]^c[3646]^c[3647]^c[3625]^c[3626]^c[3873]^c[4039]^c[4117]^c[4118]^c[4563]^c[4477]^c[4568]^c[4569]^c[4777]^c[4685]^c[4686]^c[4844]^c[4845]^c[5262]^c[5213]^c[5214]^c[5112]^c[5113]^c[5333]^c[5522]^c[5404]^c[5405]^c[5979]^c[5889]^c[5880]^c[5881]^c[6117]^c[6114]^c[6115]^c[6198]^c[6199]^c[6640]^c[6498]^c[6499]^c[6478]^c[6479]^c[6855]^c[6697]^c[6897]^c[6898]^c[7087]^c[7046]^c[7047]^c[7160]^c[7161]^c[7580]^c[7694]^c[7512]^c[7513]; //row: 3 d[i2+3*Zc]=c[294]^c[77]^c[226]^c[96]^c[97]^c[470]^c[387]^c[445]^c[446]^c[871]^c[929]^c[917]^c[1386]^c[1152]^c[1104]^c[1105]^c[1746]^c[1710]^c[1686]^c[1687]^c[1967]^c[2028]^c[1871]^c[2277]^c[2377]^c[2250]^c[2251]^c[2576]^c[2592]^c[2629]^c[2630]^c[3118]^c[3053]^c[2906]^c[2907]^c[3411]^c[3218]^c[3462]^c[3770]^c[3647]^c[3625]^c[3626]^c[3873]^c[4039]^c[4117]^c[4118]^c[4563]^c[4477]^c[4568]^c[4569]^c[4777]^c[4686]^c[4844]^c[4845]^c[5262]^c[5214]^c[5112]^c[5113]^c[5333]^c[5522]^c[5405]^c[5979]^c[5889]^c[5880]^c[5881]^c[6117]^c[6115]^c[6198]^c[6199]^c[6640]^c[6499]^c[6478]^c[6479]^c[6855]^c[6697]^c[6898]^c[7087]^c[7047]^c[7160]^c[7161]^c[7580]^c[7694]^c[7512]^c[7513]; //row: 4 d[i2+4*Zc]=c[41]^c[607]; //row: 5 d[i2+5*Zc]=c[224]^c[7]^c[156]^c[27]^c[218]^c[400]^c[669]^c[376]^c[481]^c[801]^c[859]^c[847]^c[1316]^c[1082]^c[1387]^c[1306]^c[1676]^c[1640]^c[1617]^c[1897]^c[1958]^c[1801]^c[2207]^c[2307]^c[2181]^c[2506]^c[2522]^c[2560]^c[3048]^c[2983]^c[2837]^c[3341]^c[3500]^c[3392]^c[3700]^c[3577]^c[3556]^c[4155]^c[3969]^c[4048]^c[4493]^c[4407]^c[4499]^c[4545]^c[4707]^c[4616]^c[4775]^c[5192]^c[5144]^c[5043]^c[5615]^c[5452]^c[5335]^c[5909]^c[5819]^c[5811]^c[5926]^c[6047]^c[6045]^c[6129]^c[6570]^c[6429]^c[6409]^c[6785]^c[6979]^c[6828]^c[7369]^c[7329]^c[7091]^c[7510]^c[7624]^c[7443]^c[7649]; //row: 6 d[i2+6*Zc]=c[293]^c[2184]^c[3849]^c[3970]^c[4747]^c[6133]^c[6619]^c[7344]; //row: 7 d[i2+7*Zc]=c[2]^c[454]^c[1631]^c[2760]^c[3030]^c[4966]; //row: 8 d[i2+8*Zc]=c[255]^c[186]^c[38]^c[321]^c[187]^c[117]^c[118]^c[58]^c[340]^c[341]^c[347]^c[431]^c[362]^c[700]^c[630]^c[631]^c[407]^c[689]^c[690]^c[426]^c[832]^c[763]^c[890]^c[821]^c[878]^c[808]^c[809]^c[1347]^c[1278]^c[1113]^c[1396]^c[1066]^c[1348]^c[1349]^c[1077]^c[1707]^c[1638]^c[1671]^c[1601]^c[1602]^c[1648]^c[1578]^c[1579]^c[1928]^c[1859]^c[1989]^c[1920]^c[1832]^c[1762]^c[1763]^c[2238]^c[2169]^c[2338]^c[2268]^c[2269]^c[2212]^c[2142]^c[2143]^c[2537]^c[2468]^c[2553]^c[2483]^c[2484]^c[2591]^c[2521]^c[2522]^c[3079]^c[3010]^c[3014]^c[2944]^c[2945]^c[2868]^c[3150]^c[3151]^c[3372]^c[3303]^c[3179]^c[3462]^c[3423]^c[3353]^c[3354]^c[3731]^c[3662]^c[3608]^c[3538]^c[3539]^c[3587]^c[3869]^c[3870]^c[4186]^c[4117]^c[4000]^c[3931]^c[4079]^c[4009]^c[4010]^c[4524]^c[4455]^c[4438]^c[4369]^c[4530]^c[4460]^c[4461]^c[4535]^c[4738]^c[4669]^c[4647]^c[4577]^c[4578]^c[4806]^c[4736]^c[4737]^c[5223]^c[5154]^c[5175]^c[5105]^c[5106]^c[5074]^c[5004]^c[5005]^c[5294]^c[5577]^c[5483]^c[5414]^c[5366]^c[5296]^c[5297]^c[5940]^c[5871]^c[5850]^c[5781]^c[5842]^c[5772]^c[5773]^c[5855]^c[6078]^c[6009]^c[6076]^c[6006]^c[6007]^c[6160]^c[6090]^c[6091]^c[6601]^c[6532]^c[6460]^c[6390]^c[6391]^c[6440]^c[6370]^c[6371]^c[6816]^c[6747]^c[7010]^c[6941]^c[6859]^c[6789]^c[6790]^c[6704]^c[7048]^c[7331]^c[7360]^c[7290]^c[7291]^c[7122]^c[7052]^c[7053]^c[7541]^c[7472]^c[7655]^c[7586]^c[7474]^c[7404]^c[7405]^c[7450]; //row: 9 d[i2+9*Zc]=c[155]^c[439]^c[3812]^c[3982]^c[4667]^c[6135]^c[6358]^c[7376]; //row: 10 d[i2+10*Zc]=c[526]^c[956]^c[1434]^c[2694]^c[2864]^c[5194]; //row: 11 d[i2+11*Zc]=c[279]^c[133]^c[134]^c[62]^c[269]^c[211]^c[66]^c[82]^c[289]^c[24]^c[455]^c[661]^c[662]^c[372]^c[579]^c[431]^c[638]^c[673]^c[856]^c[710]^c[711]^c[914]^c[769]^c[902]^c[757]^c[1371]^c[1225]^c[1226]^c[1137]^c[1344]^c[1090]^c[1297]^c[1731]^c[1586]^c[1695]^c[1550]^c[1672]^c[1527]^c[1952]^c[1806]^c[1807]^c[2013]^c[1868]^c[1856]^c[2063]^c[2262]^c[2116]^c[2117]^c[2362]^c[2217]^c[2236]^c[2443]^c[2561]^c[2768]^c[2577]^c[2784]^c[2615]^c[2470]^c[3103]^c[2958]^c[3038]^c[2893]^c[2892]^c[3099]^c[3396]^c[3250]^c[3251]^c[3203]^c[3410]^c[3447]^c[3302]^c[3755]^c[3609]^c[3610]^c[3632]^c[3839]^c[3611]^c[3818]^c[4210]^c[4064]^c[4065]^c[4024]^c[3879]^c[4103]^c[3958]^c[4548]^c[4402]^c[4403]^c[4462]^c[4317]^c[4554]^c[4409]^c[4423]^c[4762]^c[4616]^c[4617]^c[4671]^c[4878]^c[4830]^c[4685]^c[5247]^c[5102]^c[5199]^c[5054]^c[5098]^c[4953]^c[5318]^c[5524]^c[5525]^c[5507]^c[5362]^c[5390]^c[5597]^c[5964]^c[5818]^c[5819]^c[5874]^c[5729]^c[5866]^c[5721]^c[5982]^c[6102]^c[6309]^c[6100]^c[6307]^c[6184]^c[6039]^c[6625]^c[6479]^c[6480]^c[6484]^c[6339]^c[6464]^c[6671]^c[6840]^c[6694]^c[6695]^c[7034]^c[6889]^c[6883]^c[6738]^c[7072]^c[7278]^c[7279]^c[7384]^c[7239]^c[7146]^c[7353]^c[7565]^c[7419]^c[7420]^c[7679]^c[7534]^c[7498]^c[7705]^c[7557]; //row: 12 d[i2+12*Zc]=c[122]^c[568]^c[3661]^c[3981]^c[4751]^c[6411]; //row: 13 d[i2+13*Zc]=c[22]^c[23]^c[158]^c[307]^c[178]^c[310]^c[550]^c[551]^c[468]^c[527]^c[951]^c[952]^c[1010]^c[998]^c[1114]^c[1115]^c[1233]^c[1186]^c[1306]^c[1475]^c[1439]^c[1416]^c[2047]^c[2048]^c[2109]^c[1952]^c[2357]^c[2358]^c[2458]^c[2332]^c[2657]^c[2673]^c[2711]^c[2728]^c[2847]^c[3134]^c[2988]^c[3491]^c[3492]^c[3299]^c[3191]^c[3850]^c[3851]^c[3728]^c[3707]^c[3953]^c[3954]^c[4120]^c[4199]^c[4291]^c[4292]^c[4558]^c[4298]^c[4857]^c[4858]^c[4767]^c[4926]^c[4991]^c[4943]^c[5194]^c[5413]^c[5414]^c[5603]^c[5486]^c[5707]^c[5708]^c[5970]^c[5962]^c[6198]^c[6196]^c[6280]^c[6368]^c[6369]^c[6580]^c[6560]^c[6935]^c[6936]^c[6778]^c[6979]^c[7167]^c[7168]^c[7128]^c[7242]^c[7133]^c[7660]^c[7661]^c[7423]^c[7594]; //row: 14 d[i2+14*Zc]=c[21]^c[4545]^c[5556]^c[5787]^c[6049]^c[7469]; //row: 15 d[i2+15*Zc]=c[55]^c[190]^c[339]^c[209]^c[210]^c[175]^c[583]^c[500]^c[558]^c[559]^c[699]^c[984]^c[1042]^c[1030]^c[1147]^c[1265]^c[1217]^c[1218]^c[1507]^c[1471]^c[1447]^c[1448]^c[2080]^c[1789]^c[1984]^c[2390]^c[2138]^c[2363]^c[2364]^c[2689]^c[2705]^c[2742]^c[2743]^c[2879]^c[3166]^c[3019]^c[3020]^c[3172]^c[3331]^c[3223]^c[3531]^c[3760]^c[3738]^c[3739]^c[3534]^c[3986]^c[4152]^c[3878]^c[3879]^c[4324]^c[4238]^c[4329]^c[4330]^c[4890]^c[4799]^c[4605]^c[4606]^c[4656]^c[5023]^c[4975]^c[5225]^c[5226]^c[5446]^c[5283]^c[5518]^c[5740]^c[5650]^c[5641]^c[5642]^c[6230]^c[6228]^c[6311]^c[6312]^c[6401]^c[6612]^c[6591]^c[6592]^c[6511]^c[6968]^c[6810]^c[7011]^c[7200]^c[7160]^c[7273]^c[7274]^c[7693]^c[7455]^c[7625]^c[7626]; //row: 16 d[i2+16*Zc]=c[55]^c[190]^c[339]^c[210]^c[583]^c[500]^c[559]^c[541]^c[984]^c[1042]^c[1030]^c[1147]^c[1265]^c[1218]^c[1348]^c[1507]^c[1471]^c[1448]^c[2080]^c[1789]^c[1984]^c[2390]^c[2138]^c[2364]^c[2689]^c[2705]^c[2743]^c[2879]^c[3166]^c[3020]^c[3172]^c[3331]^c[3223]^c[3531]^c[3760]^c[3739]^c[3986]^c[4152]^c[3879]^c[4203]^c[4324]^c[4238]^c[4330]^c[4890]^c[4799]^c[4606]^c[5023]^c[4975]^c[5226]^c[5446]^c[5283]^c[5518]^c[5740]^c[5650]^c[5642]^c[6230]^c[6228]^c[6312]^c[6401]^c[6612]^c[6592]^c[6968]^c[6810]^c[7011]^c[7200]^c[7160]^c[7274]^c[7370]^c[7693]^c[7455]^c[7626]; //row: 17 d[i2+17*Zc]=c[109]^c[5155]^c[5878]^c[6099]^c[7581]; //row: 18 d[i2+18*Zc]=c[398]^c[4509]^c[4821]^c[6516]^c[6760]; //row: 19 d[i2+19*Zc]=c[86]^c[461]^c[2610]^c[3073]^c[3723]; //row: 20 d[i2+20*Zc]=c[323]^c[106]^c[255]^c[126]^c[88]^c[499]^c[416]^c[475]^c[900]^c[958]^c[946]^c[1063]^c[1181]^c[1134]^c[1120]^c[1423]^c[1739]^c[1716]^c[1996]^c[2057]^c[1900]^c[2306]^c[2406]^c[2280]^c[2605]^c[2621]^c[2659]^c[3147]^c[3082]^c[2936]^c[3440]^c[3247]^c[3491]^c[3322]^c[3799]^c[3676]^c[3655]^c[3902]^c[4068]^c[4147]^c[4115]^c[4240]^c[4506]^c[4246]^c[4806]^c[4715]^c[4874]^c[4939]^c[5243]^c[5142]^c[5362]^c[5551]^c[5434]^c[5656]^c[5918]^c[5910]^c[6146]^c[6144]^c[6228]^c[6669]^c[6528]^c[6508]^c[6884]^c[6726]^c[6927]^c[7116]^c[7076]^c[7190]^c[7609]^c[7723]^c[7542]; //row: 21 d[i2+21*Zc]=c[513]^c[2023]^c[5977]^c[7182]^c[7500]; //row: 22 d[i2+22*Zc]=c[279]^c[4380]^c[4811]^c[6096]; //row: 23 d[i2+23*Zc]=c[369]^c[709]^c[3700]^c[6639]; //row: 24 d[i2+24*Zc]=c[135]^c[270]^c[67]^c[290]^c[37]^c[663]^c[580]^c[639]^c[712]^c[770]^c[758]^c[1227]^c[1345]^c[1298]^c[1225]^c[1587]^c[1551]^c[1528]^c[1656]^c[1808]^c[1869]^c[2064]^c[2118]^c[2218]^c[2444]^c[2769]^c[2785]^c[2471]^c[2959]^c[2894]^c[3100]^c[3252]^c[3411]^c[3303]^c[3611]^c[3840]^c[3819]^c[4066]^c[3880]^c[3959]^c[4159]^c[4404]^c[4318]^c[4410]^c[4618]^c[4879]^c[4686]^c[5103]^c[5055]^c[4954]^c[5526]^c[5363]^c[5598]^c[5820]^c[5730]^c[5722]^c[6310]^c[6308]^c[6040]^c[6481]^c[6340]^c[6672]^c[6696]^c[6890]^c[6739]^c[7280]^c[7240]^c[7354]^c[7421]^c[7535]^c[7706]; //row: 25 d[i2+25*Zc]=c[630]^c[2366]^c[2574]^c[4981]; //row: 26 d[i2+26*Zc]=c[324]^c[1029]^c[1633]^c[5378]; //row: 27 d[i2+27*Zc]=c[442]^c[2437]^c[3083]; //row: 28 d[i2+28*Zc]=c[101]^c[1408]^c[6727]^c[7558]; //row: 29 d[i2+29*Zc]=c[49]^c[184]^c[333]^c[203]^c[204]^c[577]^c[494]^c[552]^c[553]^c[624]^c[978]^c[1036]^c[1024]^c[1141]^c[1259]^c[1211]^c[1212]^c[1501]^c[1465]^c[1441]^c[1442]^c[2074]^c[1783]^c[1978]^c[2384]^c[2132]^c[2357]^c[2358]^c[2683]^c[2699]^c[2736]^c[2737]^c[2873]^c[3160]^c[3013]^c[3014]^c[3518]^c[3325]^c[3217]^c[3525]^c[3754]^c[3732]^c[3733]^c[3980]^c[4146]^c[3872]^c[3873]^c[4318]^c[4232]^c[4323]^c[4324]^c[4884]^c[4793]^c[4599]^c[4600]^c[5017]^c[4969]^c[5219]^c[5220]^c[5031]^c[5440]^c[5629]^c[5512]^c[5734]^c[5644]^c[5635]^c[5636]^c[6224]^c[6222]^c[6305]^c[6306]^c[6395]^c[6606]^c[6585]^c[6586]^c[6578]^c[6962]^c[6804]^c[7005]^c[7194]^c[7154]^c[7267]^c[7268]^c[7687]^c[7449]^c[7619]^c[7620]; //row: 30 d[i2+30*Zc]=c[154]^c[289]^c[85]^c[86]^c[308]^c[309]^c[170]^c[682]^c[598]^c[599]^c[657]^c[658]^c[731]^c[789]^c[776]^c[777]^c[1246]^c[1364]^c[1316]^c[1317]^c[1606]^c[1569]^c[1570]^c[1546]^c[1547]^c[1827]^c[1888]^c[2082]^c[2083]^c[2137]^c[2236]^c[2237]^c[2462]^c[2463]^c[2788]^c[2803]^c[2804]^c[2489]^c[2490]^c[2978]^c[2912]^c[2913]^c[3118]^c[3119]^c[3271]^c[3430]^c[3321]^c[3322]^c[3630]^c[3858]^c[3859]^c[3837]^c[3838]^c[3535]^c[4085]^c[3899]^c[3977]^c[3978]^c[4423]^c[4337]^c[4428]^c[4429]^c[4637]^c[4897]^c[4898]^c[4704]^c[4705]^c[4670]^c[5122]^c[5073]^c[5074]^c[4972]^c[4973]^c[5545]^c[5382]^c[5616]^c[5617]^c[5839]^c[5749]^c[5740]^c[5741]^c[6329]^c[6326]^c[6327]^c[6058]^c[6059]^c[6500]^c[6358]^c[6359]^c[6338]^c[6339]^c[6715]^c[6909]^c[6757]^c[6758]^c[7299]^c[7258]^c[7259]^c[7372]^c[7373]^c[7440]^c[7554]^c[7724]^c[7725]; //row: 31 d[i2+31*Zc]=c[220]^c[164]^c[3]^c[299]^c[152]^c[96]^c[23]^c[318]^c[319]^c[396]^c[692]^c[665]^c[609]^c[372]^c[667]^c[668]^c[452]^c[797]^c[741]^c[855]^c[799]^c[843]^c[787]^c[1312]^c[1256]^c[1078]^c[1374]^c[1383]^c[1326]^c[1327]^c[1672]^c[1616]^c[1636]^c[1580]^c[1613]^c[1556]^c[1557]^c[1893]^c[1837]^c[1954]^c[1898]^c[1797]^c[2093]^c[2203]^c[2147]^c[2303]^c[2247]^c[2177]^c[2120]^c[2121]^c[2502]^c[2798]^c[2518]^c[2814]^c[2556]^c[2499]^c[2500]^c[2760]^c[3044]^c[2988]^c[2979]^c[2923]^c[2833]^c[3128]^c[3129]^c[3337]^c[3281]^c[3496]^c[3440]^c[3388]^c[3332]^c[3696]^c[3640]^c[3573]^c[3869]^c[3552]^c[3847]^c[3848]^c[4151]^c[4095]^c[3965]^c[3909]^c[4044]^c[3987]^c[3988]^c[4489]^c[4433]^c[4403]^c[4347]^c[4495]^c[4438]^c[4439]^c[4703]^c[4647]^c[4612]^c[4908]^c[4771]^c[4714]^c[4715]^c[5188]^c[5132]^c[5140]^c[5084]^c[5039]^c[4982]^c[4983]^c[5611]^c[5555]^c[5448]^c[5392]^c[5331]^c[5627]^c[5905]^c[5849]^c[5815]^c[5759]^c[5807]^c[5750]^c[5751]^c[6043]^c[5987]^c[6041]^c[5985]^c[6125]^c[6068]^c[6069]^c[6566]^c[6510]^c[6425]^c[6369]^c[6405]^c[6348]^c[6349]^c[6781]^c[6725]^c[6975]^c[6919]^c[6824]^c[6768]^c[7365]^c[7309]^c[7325]^c[7269]^c[7087]^c[7382]^c[7383]^c[7506]^c[7450]^c[7620]^c[7564]^c[7439]^c[7734]^c[7735]; //row: 32 d[i2+32*Zc]=c[25]^c[160]^c[308]^c[309]^c[179]^c[180]^c[350]^c[553]^c[469]^c[470]^c[528]^c[529]^c[954]^c[1012]^c[999]^c[1000]^c[1117]^c[1235]^c[1187]^c[1188]^c[1477]^c[1440]^c[1441]^c[1417]^c[1418]^c[2050]^c[2111]^c[1953]^c[1954]^c[2360]^c[2459]^c[2460]^c[2333]^c[2334]^c[2659]^c[2674]^c[2675]^c[2712]^c[2713]^c[2849]^c[3135]^c[3136]^c[2989]^c[2990]^c[3494]^c[3301]^c[3192]^c[3193]^c[3853]^c[3729]^c[3730]^c[3708]^c[3709]^c[3956]^c[4122]^c[4200]^c[4201]^c[4294]^c[4560]^c[4299]^c[4300]^c[4488]^c[4860]^c[4768]^c[4769]^c[4927]^c[4576]^c[4993]^c[4944]^c[4945]^c[5195]^c[5196]^c[5265]^c[5416]^c[5605]^c[5487]^c[5488]^c[5710]^c[5972]^c[5963]^c[5964]^c[6200]^c[6197]^c[6198]^c[6281]^c[6282]^c[6371]^c[6581]^c[6582]^c[6561]^c[6562]^c[6938]^c[6780]^c[6980]^c[6981]^c[7170]^c[7129]^c[7130]^c[7243]^c[7244]^c[7663]^c[7425]^c[7595]^c[7596]; //row: 33 d[i2+33*Zc]=c[407]^c[1007]^c[4012]^c[7492]; //row: 34 d[i2+34*Zc]=c[59]^c[2783]^c[5391]^c[6037]; //row: 35 d[i2+35*Zc]=c[209]^c[344]^c[141]^c[12]^c[385]^c[654]^c[361]^c[451]^c[786]^c[844]^c[832]^c[1301]^c[1067]^c[1372]^c[1661]^c[1625]^c[1602]^c[1882]^c[1943]^c[1786]^c[2192]^c[2292]^c[2166]^c[2321]^c[2491]^c[2507]^c[2545]^c[3033]^c[2968]^c[2822]^c[3326]^c[3485]^c[3377]^c[3685]^c[3562]^c[3541]^c[4140]^c[3954]^c[4033]^c[4478]^c[4392]^c[4484]^c[4418]^c[4692]^c[4601]^c[4760]^c[5177]^c[5129]^c[5028]^c[5600]^c[5437]^c[5320]^c[5894]^c[5804]^c[5796]^c[6032]^c[6030]^c[6114]^c[6555]^c[6414]^c[6394]^c[6770]^c[6964]^c[6813]^c[7354]^c[7314]^c[7076]^c[7495]^c[7609]^c[7428]; //row: 36 d[i2+36*Zc]=c[134]^c[4942]^c[5314]^c[6523]; //row: 37 d[i2+37*Zc]=c[26]^c[27]^c[162]^c[311]^c[182]^c[554]^c[555]^c[472]^c[531]^c[670]^c[955]^c[956]^c[1014]^c[1002]^c[1118]^c[1119]^c[1237]^c[1190]^c[1479]^c[1443]^c[1420]^c[2051]^c[2052]^c[1761]^c[1956]^c[2361]^c[2362]^c[2462]^c[2336]^c[2661]^c[2677]^c[2715]^c[2851]^c[3138]^c[2992]^c[3495]^c[3496]^c[3303]^c[3195]^c[3854]^c[3855]^c[3732]^c[3711]^c[3957]^c[3958]^c[4124]^c[4203]^c[4295]^c[4296]^c[4562]^c[4302]^c[4861]^c[4862]^c[4771]^c[4578]^c[4811]^c[4995]^c[4947]^c[5198]^c[5417]^c[5418]^c[5607]^c[5490]^c[5711]^c[5712]^c[5974]^c[5966]^c[6202]^c[6200]^c[6284]^c[6372]^c[6373]^c[6584]^c[6564]^c[6939]^c[6940]^c[6782]^c[6983]^c[7171]^c[7172]^c[7132]^c[7246]^c[7664]^c[7665]^c[7427]^c[7598]; //row: 38 d[i2+38*Zc]=c[163]^c[3363]^c[3728]^c[4469]; //row: 39 d[i2+39*Zc]=c[587]^c[1319]^c[2500]^c[6959]; //row: 40 d[i2+40*Zc]=c[303]^c[3052]^c[6118]; //row: 41 d[i2+41*Zc]=c[474]^c[1132]^c[3192]^c[6607]; //row: 42 d[i2+42*Zc]=c[311]^c[94]^c[242]^c[243]^c[113]^c[114]^c[287]^c[487]^c[403]^c[404]^c[462]^c[463]^c[888]^c[946]^c[933]^c[934]^c[1403]^c[1169]^c[1121]^c[1122]^c[1411]^c[1726]^c[1727]^c[1703]^c[1704]^c[1490]^c[1984]^c[2045]^c[1887]^c[1888]^c[2294]^c[2393]^c[2394]^c[2267]^c[2268]^c[2593]^c[2608]^c[2609]^c[2646]^c[2647]^c[3135]^c[3069]^c[3070]^c[2923]^c[2924]^c[3428]^c[3235]^c[3478]^c[3479]^c[3787]^c[3663]^c[3664]^c[3642]^c[3643]^c[3890]^c[4056]^c[4134]^c[4135]^c[4228]^c[4494]^c[4233]^c[4234]^c[4794]^c[4702]^c[4703]^c[4861]^c[4862]^c[5279]^c[5230]^c[5231]^c[5129]^c[5130]^c[5350]^c[5539]^c[5421]^c[5422]^c[5644]^c[5906]^c[5897]^c[5898]^c[6134]^c[6131]^c[6132]^c[6215]^c[6216]^c[6657]^c[6515]^c[6516]^c[6495]^c[6496]^c[6872]^c[6714]^c[6914]^c[6915]^c[7104]^c[7063]^c[7064]^c[7177]^c[7178]^c[7597]^c[7711]^c[7529]^c[7530]; //row: 43 d[i2+43*Zc]=c[109]^c[244]^c[41]^c[263]^c[264]^c[637]^c[554]^c[612]^c[613]^c[561]^c[1038]^c[744]^c[732]^c[1201]^c[1319]^c[1271]^c[1272]^c[1561]^c[1525]^c[1501]^c[1502]^c[1782]^c[1843]^c[2038]^c[2444]^c[2192]^c[2417]^c[2418]^c[2743]^c[2759]^c[2796]^c[2797]^c[2933]^c[2868]^c[3073]^c[3074]^c[3226]^c[3385]^c[3277]^c[3585]^c[3814]^c[3792]^c[3793]^c[4040]^c[4206]^c[3932]^c[3933]^c[4378]^c[4292]^c[4383]^c[4384]^c[4592]^c[4853]^c[4659]^c[4660]^c[5077]^c[5029]^c[5279]^c[4928]^c[5500]^c[5337]^c[5572]^c[5794]^c[5704]^c[5695]^c[5696]^c[5634]^c[6284]^c[6282]^c[6013]^c[6014]^c[6455]^c[6666]^c[6645]^c[6646]^c[6388]^c[7022]^c[6864]^c[6713]^c[7254]^c[7214]^c[7327]^c[7328]^c[7395]^c[7509]^c[7679]^c[7680]; //row: 44 d[i2+44*Zc]=c[213]^c[348]^c[145]^c[16]^c[78]^c[389]^c[658]^c[365]^c[790]^c[848]^c[836]^c[1305]^c[1071]^c[1376]^c[1665]^c[1629]^c[1606]^c[1886]^c[1947]^c[1790]^c[2196]^c[2296]^c[2170]^c[2495]^c[2511]^c[2549]^c[2707]^c[3037]^c[2972]^c[2826]^c[3330]^c[3489]^c[3381]^c[3460]^c[3689]^c[3566]^c[3545]^c[4144]^c[3958]^c[4037]^c[4482]^c[4396]^c[4488]^c[4696]^c[4605]^c[4764]^c[5181]^c[5133]^c[5032]^c[5604]^c[5441]^c[5324]^c[5898]^c[5808]^c[5800]^c[6036]^c[6034]^c[6118]^c[6559]^c[6418]^c[6398]^c[6774]^c[6968]^c[6817]^c[7358]^c[7318]^c[7080]^c[7499]^c[7613]^c[7432]; //row: 45 d[i2+45*Zc]=c[433]^c[2178]^c[3754]; } break; case 384: for (i2=0; i2 < Zc; i2++) { c2=&c[i2]; // calculate each row in base graph //row: 0 d[i2+0*Zc]=c2[307]^c2[76]^c2[205]^c2[276]^c2[787]^c2[1018]^c2[855]^c2[1586]^c2[1612]^c2[1864]^c2[2673]^c2[2377]^c2[2304]^c2[3360]^c2[3404]^c2[3347]^c2[4021]^c2[3984]^c2[4096]^c2[4824]^c2[4769]^c2[4807]^c2[5707]^c2[5643]^c2[5529]^c2[6475]^c2[6304]^c2[6200]^c2[7229]^c2[7090]^c2[6975]^c2[7968]^c2[7809]^c2[7812]^c2[8557]^c2[8743]^c2[8753]^c2[9233]^c2[9558]^c2[9447]^c2[10341]^c2[10184]^c2[10325]^c2[10969]^c2[10840]^c2[10964]^c2[11735]^c2[11619]^c2[11573]^c2[12394]^c2[12642]^c2[12592]^c2[13170]^c2[13187]^c2[13356]^c2[14066]^c2[14064]^c2[14095]^c2[14772]^c2[14923]^c2[14797]^c2[15690]^c2[15373]^c2[15399]^c2[16474]^c2[16240]^c2[16485]; //row: 1 d[i2+1*Zc]=c2[307]^c2[308]^c2[77]^c2[206]^c2[277]^c2[787]^c2[788]^c2[1019]^c2[856]^c2[1586]^c2[1587]^c2[1613]^c2[1865]^c2[2673]^c2[2674]^c2[2378]^c2[2305]^c2[3361]^c2[3405]^c2[3348]^c2[4021]^c2[4022]^c2[3985]^c2[4097]^c2[4824]^c2[4825]^c2[4770]^c2[4808]^c2[5708]^c2[5644]^c2[5530]^c2[6476]^c2[6305]^c2[6201]^c2[7229]^c2[7230]^c2[7091]^c2[6976]^c2[7968]^c2[7969]^c2[7810]^c2[7813]^c2[8557]^c2[8558]^c2[8744]^c2[8754]^c2[9233]^c2[9234]^c2[9559]^c2[9448]^c2[10341]^c2[10342]^c2[10185]^c2[10326]^c2[10970]^c2[10841]^c2[10965]^c2[11735]^c2[11736]^c2[11620]^c2[11574]^c2[12394]^c2[12395]^c2[12643]^c2[12593]^c2[13171]^c2[13188]^c2[13357]^c2[14066]^c2[14067]^c2[14065]^c2[14096]^c2[14772]^c2[14773]^c2[14924]^c2[14798]^c2[15690]^c2[15691]^c2[15374]^c2[15400]^c2[16474]^c2[16475]^c2[16241]^c2[16486]; //row: 2 d[i2+2*Zc]=c2[308]^c2[77]^c2[205]^c2[206]^c2[276]^c2[277]^c2[788]^c2[1018]^c2[1019]^c2[855]^c2[856]^c2[1587]^c2[1613]^c2[1864]^c2[1865]^c2[2674]^c2[2378]^c2[2304]^c2[2305]^c2[3361]^c2[3404]^c2[3405]^c2[3347]^c2[3348]^c2[4022]^c2[3985]^c2[4096]^c2[4097]^c2[4825]^c2[4769]^c2[4770]^c2[4807]^c2[4808]^c2[5708]^c2[5643]^c2[5644]^c2[5529]^c2[5530]^c2[6476]^c2[6304]^c2[6305]^c2[6200]^c2[6201]^c2[7230]^c2[7091]^c2[6975]^c2[6976]^c2[7969]^c2[7809]^c2[7810]^c2[7812]^c2[7813]^c2[8558]^c2[8744]^c2[8753]^c2[8754]^c2[9234]^c2[9559]^c2[9447]^c2[9448]^c2[10342]^c2[10184]^c2[10185]^c2[10325]^c2[10326]^c2[10970]^c2[10840]^c2[10841]^c2[10964]^c2[10965]^c2[11736]^c2[11620]^c2[11573]^c2[11574]^c2[12395]^c2[12643]^c2[12592]^c2[12593]^c2[13171]^c2[13187]^c2[13188]^c2[13356]^c2[13357]^c2[14067]^c2[14064]^c2[14065]^c2[14095]^c2[14096]^c2[14773]^c2[14924]^c2[14797]^c2[14798]^c2[15691]^c2[15373]^c2[15374]^c2[15399]^c2[15400]^c2[16475]^c2[16241]^c2[16485]^c2[16486]; //row: 3 d[i2+3*Zc]=c2[308]^c2[77]^c2[206]^c2[276]^c2[277]^c2[788]^c2[1019]^c2[855]^c2[856]^c2[1587]^c2[1613]^c2[1865]^c2[2674]^c2[2378]^c2[2304]^c2[2305]^c2[3361]^c2[3405]^c2[3347]^c2[3348]^c2[4022]^c2[3985]^c2[4097]^c2[4825]^c2[4770]^c2[4807]^c2[4808]^c2[5708]^c2[5644]^c2[5529]^c2[5530]^c2[6476]^c2[6305]^c2[6200]^c2[6201]^c2[7230]^c2[7091]^c2[6976]^c2[7969]^c2[7810]^c2[7812]^c2[7813]^c2[8558]^c2[8744]^c2[8753]^c2[8754]^c2[9234]^c2[9559]^c2[9447]^c2[9448]^c2[10342]^c2[10185]^c2[10325]^c2[10326]^c2[10970]^c2[10841]^c2[10964]^c2[10965]^c2[11736]^c2[11620]^c2[11574]^c2[12395]^c2[12643]^c2[12592]^c2[12593]^c2[13171]^c2[13188]^c2[13356]^c2[13357]^c2[14067]^c2[14065]^c2[14095]^c2[14096]^c2[14773]^c2[14924]^c2[14798]^c2[15691]^c2[15374]^c2[15399]^c2[15400]^c2[16475]^c2[16241]^c2[16485]^c2[16486]; //row: 4 d[i2+4*Zc]=c2[332]^c2[949]; //row: 5 d[i2+5*Zc]=c2[80]^c2[233]^c2[362]^c2[49]^c2[195]^c2[944]^c2[791]^c2[1012]^c2[782]^c2[1743]^c2[1769]^c2[1637]^c2[2446]^c2[2534]^c2[2461]^c2[2419]^c2[3133]^c2[3177]^c2[3120]^c2[4178]^c2[4141]^c2[3869]^c2[4981]^c2[4926]^c2[4964]^c2[5480]^c2[5416]^c2[5686]^c2[6248]^c2[6461]^c2[6357]^c2[7002]^c2[7247]^c2[7132]^c2[7741]^c2[7966]^c2[7969]^c2[8714]^c2[8516]^c2[8526]^c2[9390]^c2[9331]^c2[9220]^c2[9382]^c2[10114]^c2[10341]^c2[10098]^c2[11126]^c2[10997]^c2[11121]^c2[11892]^c2[11776]^c2[11730]^c2[12551]^c2[12415]^c2[12365]^c2[12529]^c2[13327]^c2[13344]^c2[13129]^c2[13839]^c2[13837]^c2[13868]^c2[14929]^c2[14696]^c2[14954]^c2[15463]^c2[15530]^c2[15556]^c2[16247]^c2[16397]^c2[16258]^c2[16179]; //row: 6 d[i2+6*Zc]=c2[278]^c2[4865]^c2[7681]^c2[8799]^c2[10076]^c2[13309]^c2[13842]^c2[15585]; //row: 7 d[i2+7*Zc]=c2[9]^c2[830]^c2[3388]^c2[5709]^c2[6434]^c2[10866]; //row: 8 d[i2+8*Zc]=c2[374]^c2[94]^c2[143]^c2[247]^c2[272]^c2[375]^c2[376]^c2[343]^c2[62]^c2[63]^c2[307]^c2[854]^c2[958]^c2[1085]^c2[804]^c2[805]^c2[922]^c2[1025]^c2[1026]^c2[947]^c2[1653]^c2[1757]^c2[1679]^c2[1783]^c2[1547]^c2[1650]^c2[1651]^c2[2356]^c2[2460]^c2[2444]^c2[2548]^c2[2371]^c2[2474]^c2[2475]^c2[2469]^c2[3427]^c2[3147]^c2[3087]^c2[3190]^c2[3191]^c2[3414]^c2[3133]^c2[3134]^c2[4088]^c2[4192]^c2[4051]^c2[4155]^c2[4163]^c2[3882]^c2[3883]^c2[4891]^c2[4611]^c2[4836]^c2[4939]^c2[4940]^c2[4874]^c2[4977]^c2[4978]^c2[5390]^c2[5494]^c2[5710]^c2[5429]^c2[5430]^c2[5596]^c2[5699]^c2[5700]^c2[6158]^c2[6262]^c2[6371]^c2[6474]^c2[6475]^c2[6267]^c2[6370]^c2[6371]^c2[6912]^c2[7016]^c2[7157]^c2[7261]^c2[7042]^c2[7145]^c2[7146]^c2[8035]^c2[7755]^c2[7876]^c2[7979]^c2[7980]^c2[7879]^c2[7982]^c2[7983]^c2[8624]^c2[8728]^c2[8810]^c2[8530]^c2[8820]^c2[8539]^c2[8540]^c2[9300]^c2[9404]^c2[9241]^c2[9345]^c2[9514]^c2[9233]^c2[9234]^c2[9234]^c2[10024]^c2[10128]^c2[10251]^c2[10354]^c2[10355]^c2[10008]^c2[10111]^c2[10112]^c2[11036]^c2[10756]^c2[10907]^c2[11010]^c2[11011]^c2[11031]^c2[11134]^c2[11135]^c2[11802]^c2[11522]^c2[11686]^c2[11790]^c2[11640]^c2[11743]^c2[11744]^c2[12461]^c2[12565]^c2[12325]^c2[12429]^c2[12659]^c2[12378]^c2[12379]^c2[12327]^c2[13237]^c2[13341]^c2[13254]^c2[13357]^c2[13358]^c2[13423]^c2[13142]^c2[13143]^c2[14133]^c2[13853]^c2[14131]^c2[13850]^c2[13851]^c2[14162]^c2[13881]^c2[13882]^c2[14839]^c2[14943]^c2[14606]^c2[14710]^c2[14864]^c2[14967]^c2[14968]^c2[14816]^c2[15373]^c2[15477]^c2[15440]^c2[15543]^c2[15544]^c2[15466]^c2[15569]^c2[15570]^c2[16157]^c2[16261]^c2[16307]^c2[16411]^c2[16168]^c2[16271]^c2[16272]^c2[16496]; //row: 9 d[i2+9*Zc]=c2[366]^c2[1000]^c2[8001]^c2[8581]^c2[10041]^c2[13359]^c2[13887]^c2[15442]; //row: 10 d[i2+10*Zc]=c2[869]^c2[1875]^c2[3346]^c2[5487]^c2[6527]^c2[11106]; //row: 11 d[i2+11*Zc]=c2[257]^c2[38]^c2[39]^c2[26]^c2[192]^c2[155]^c2[321]^c2[226]^c2[8]^c2[48]^c2[1121]^c2[902]^c2[903]^c2[968]^c2[1134]^c2[805]^c2[971]^c2[870]^c2[1536]^c2[1701]^c2[1702]^c2[1562]^c2[1728]^c2[1814]^c2[1596]^c2[2623]^c2[2404]^c2[2405]^c2[2327]^c2[2493]^c2[2638]^c2[2420]^c2[3310]^c2[3092]^c2[3354]^c2[3136]^c2[3297]^c2[3079]^c2[3971]^c2[4136]^c2[4137]^c2[3934]^c2[4100]^c2[4046]^c2[4212]^c2[4774]^c2[4939]^c2[4940]^c2[4719]^c2[4885]^c2[4757]^c2[4923]^c2[5657]^c2[5439]^c2[5593]^c2[5759]^c2[5479]^c2[5645]^c2[6425]^c2[6207]^c2[6254]^c2[6420]^c2[6150]^c2[6316]^c2[7179]^c2[6960]^c2[6961]^c2[7040]^c2[7206]^c2[6925]^c2[7091]^c2[7918]^c2[7699]^c2[7700]^c2[7759]^c2[7925]^c2[7762]^c2[7928]^c2[8507]^c2[8672]^c2[8673]^c2[8693]^c2[8475]^c2[8703]^c2[8485]^c2[9567]^c2[9348]^c2[9349]^c2[9508]^c2[9290]^c2[9397]^c2[9563]^c2[9224]^c2[10291]^c2[10072]^c2[10073]^c2[10134]^c2[10300]^c2[10275]^c2[10057]^c2[10919]^c2[11085]^c2[10790]^c2[10956]^c2[10914]^c2[11080]^c2[11685]^c2[11850]^c2[11851]^c2[11569]^c2[11735]^c2[11523]^c2[11689]^c2[12344]^c2[12509]^c2[12510]^c2[12592]^c2[12374]^c2[12542]^c2[12324]^c2[12335]^c2[13120]^c2[13286]^c2[13137]^c2[13303]^c2[13306]^c2[13088]^c2[14016]^c2[14181]^c2[14182]^c2[14014]^c2[14180]^c2[14045]^c2[13827]^c2[14722]^c2[14887]^c2[14888]^c2[14873]^c2[14655]^c2[14747]^c2[14913]^c2[15640]^c2[15421]^c2[15422]^c2[15707]^c2[15489]^c2[15733]^c2[15515]^c2[16424]^c2[16205]^c2[16206]^c2[16190]^c2[16356]^c2[16435]^c2[16217]^c2[16316]; //row: 12 d[i2+12*Zc]=c2[77]^c2[954]^c2[7854]^c2[8680]^c2[10034]^c2[13898]; //row: 13 d[i2+13*Zc]=c2[293]^c2[294]^c2[63]^c2[192]^c2[263]^c2[313]^c2[773]^c2[774]^c2[1005]^c2[842]^c2[1572]^c2[1573]^c2[1599]^c2[1851]^c2[2659]^c2[2660]^c2[2364]^c2[2675]^c2[2481]^c2[3347]^c2[3391]^c2[3334]^c2[4007]^c2[4008]^c2[3971]^c2[4083]^c2[4810]^c2[4811]^c2[4756]^c2[4794]^c2[5694]^c2[5630]^c2[5516]^c2[5642]^c2[6462]^c2[6291]^c2[6187]^c2[7215]^c2[7216]^c2[7077]^c2[6962]^c2[7954]^c2[7955]^c2[7796]^c2[7799]^c2[8543]^c2[8544]^c2[8730]^c2[8740]^c2[9219]^c2[9220]^c2[9545]^c2[9434]^c2[10327]^c2[10328]^c2[10171]^c2[10312]^c2[10956]^c2[10827]^c2[10951]^c2[11721]^c2[11722]^c2[11606]^c2[11560]^c2[12380]^c2[12381]^c2[12629]^c2[12579]^c2[13157]^c2[13174]^c2[13343]^c2[14052]^c2[14053]^c2[14051]^c2[14082]^c2[14758]^c2[14759]^c2[14910]^c2[14784]^c2[15676]^c2[15677]^c2[15360]^c2[15386]^c2[15475]^c2[16460]^c2[16461]^c2[16227]^c2[16472]; //row: 14 d[i2+14*Zc]=c2[142]^c2[9464]^c2[11657]^c2[12377]^c2[13403]^c2[16140]; //row: 15 d[i2+15*Zc]=c2[193]^c2[346]^c2[91]^c2[161]^c2[162]^c2[241]^c2[1057]^c2[904]^c2[1124]^c2[1125]^c2[770]^c2[1856]^c2[1882]^c2[1750]^c2[2559]^c2[2647]^c2[2573]^c2[2574]^c2[3246]^c2[3290]^c2[3232]^c2[3233]^c2[3907]^c2[3870]^c2[3982]^c2[4710]^c2[4655]^c2[4692]^c2[4693]^c2[5593]^c2[5529]^c2[5414]^c2[5415]^c2[6361]^c2[6190]^c2[6469]^c2[6470]^c2[7115]^c2[6976]^c2[7245]^c2[7854]^c2[7695]^c2[7697]^c2[7698]^c2[7890]^c2[8827]^c2[8629]^c2[8638]^c2[8639]^c2[9503]^c2[9444]^c2[9332]^c2[9333]^c2[10227]^c2[10070]^c2[10210]^c2[10211]^c2[10302]^c2[10855]^c2[11110]^c2[10849]^c2[10850]^c2[11621]^c2[11889]^c2[11843]^c2[12664]^c2[12528]^c2[12477]^c2[12478]^c2[13056]^c2[13073]^c2[13241]^c2[13242]^c2[13952]^c2[13950]^c2[13980]^c2[13981]^c2[13879]^c2[14658]^c2[14809]^c2[14683]^c2[15576]^c2[15643]^c2[15668]^c2[15669]^c2[16360]^c2[16510]^c2[16370]^c2[16371]; //row: 16 d[i2+16*Zc]=c2[364]^c2[133]^c2[262]^c2[333]^c2[844]^c2[1075]^c2[912]^c2[781]^c2[1643]^c2[1669]^c2[1537]^c2[2346]^c2[2434]^c2[2361]^c2[2642]^c2[3417]^c2[3077]^c2[3404]^c2[4078]^c2[4041]^c2[4153]^c2[4881]^c2[4826]^c2[4864]^c2[5380]^c2[5700]^c2[5586]^c2[6148]^c2[6361]^c2[6257]^c2[7286]^c2[7147]^c2[7032]^c2[8025]^c2[7866]^c2[7869]^c2[8614]^c2[8800]^c2[8810]^c2[8505]^c2[9290]^c2[9231]^c2[9504]^c2[10014]^c2[10241]^c2[9998]^c2[11026]^c2[10897]^c2[11021]^c2[11792]^c2[11676]^c2[11630]^c2[12451]^c2[12315]^c2[12649]^c2[13227]^c2[13244]^c2[13413]^c2[14123]^c2[14121]^c2[14152]^c2[14829]^c2[14596]^c2[14854]^c2[15363]^c2[15430]^c2[15456]^c2[15649]^c2[16147]^c2[16297]^c2[16158]; //row: 17 d[i2+17*Zc]=c2[260]^c2[11055]^c2[12369]^c2[13414]^c2[16503]; //row: 18 d[i2+18*Zc]=c2[898]^c2[9379]^c2[10264]^c2[13956]^c2[14596]; //row: 19 d[i2+19*Zc]=c2[145]^c2[981]^c2[5720]^c2[6386]^c2[7877]; //row: 20 d[i2+20*Zc]=c2[366]^c2[135]^c2[264]^c2[335]^c2[187]^c2[846]^c2[1077]^c2[914]^c2[1645]^c2[1671]^c2[1539]^c2[2348]^c2[2436]^c2[2363]^c2[2510]^c2[3419]^c2[3079]^c2[3406]^c2[4080]^c2[4043]^c2[4155]^c2[4883]^c2[4828]^c2[4866]^c2[5382]^c2[5702]^c2[5588]^c2[6150]^c2[6363]^c2[6259]^c2[7288]^c2[7149]^c2[7034]^c2[7176]^c2[8027]^c2[7868]^c2[7871]^c2[8616]^c2[8802]^c2[8812]^c2[8789]^c2[9292]^c2[9233]^c2[9506]^c2[10016]^c2[10243]^c2[10000]^c2[11028]^c2[10899]^c2[11023]^c2[11794]^c2[11678]^c2[11632]^c2[12453]^c2[12317]^c2[12651]^c2[13229]^c2[13246]^c2[13415]^c2[14125]^c2[14123]^c2[14154]^c2[14831]^c2[14598]^c2[14856]^c2[15365]^c2[15432]^c2[15458]^c2[16149]^c2[16299]^c2[16160]; //row: 21 d[i2+21*Zc]=c2[973]^c2[3942]^c2[12616]^c2[15573]^c2[16225]; //row: 22 d[i2+22*Zc]=c2[30]^c2[9227]^c2[10217]^c2[13078]; //row: 23 d[i2+23*Zc]=c2[792]^c2[1625]^c2[7741]^c2[13851]; //row: 24 d[i2+24*Zc]=c2[157]^c2[310]^c2[55]^c2[126]^c2[298]^c2[1021]^c2[868]^c2[1089]^c2[1820]^c2[1846]^c2[1714]^c2[2523]^c2[2611]^c2[2538]^c2[2462]^c2[3210]^c2[3254]^c2[3197]^c2[3307]^c2[3871]^c2[4218]^c2[3946]^c2[4674]^c2[4619]^c2[4657]^c2[5557]^c2[5493]^c2[5379]^c2[6325]^c2[6154]^c2[6434]^c2[7079]^c2[6940]^c2[7209]^c2[7818]^c2[8043]^c2[8046]^c2[8791]^c2[8593]^c2[8603]^c2[8787]^c2[9467]^c2[9408]^c2[9297]^c2[10191]^c2[10034]^c2[10175]^c2[10819]^c2[11074]^c2[10814]^c2[11585]^c2[11853]^c2[11807]^c2[12628]^c2[12492]^c2[12442]^c2[13404]^c2[13421]^c2[13206]^c2[13916]^c2[13914]^c2[13945]^c2[14622]^c2[14773]^c2[14647]^c2[15540]^c2[15607]^c2[15633]^c2[16324]^c2[16474]^c2[16335]; //row: 25 d[i2+25*Zc]=c2[840]^c2[4625]^c2[5759]^c2[11064]; //row: 26 d[i2+26*Zc]=c2[71]^c2[1617]^c2[3148]^c2[11656]; //row: 27 d[i2+27*Zc]=c2[962]^c2[4802]^c2[6245]; //row: 28 d[i2+28*Zc]=c2[222]^c2[3091]^c2[14836]^c2[16402]; //row: 29 d[i2+29*Zc]=c2[2]^c2[155]^c2[284]^c2[354]^c2[355]^c2[866]^c2[1097]^c2[933]^c2[934]^c2[1020]^c2[1665]^c2[1691]^c2[1559]^c2[2368]^c2[2456]^c2[2382]^c2[2383]^c2[3439]^c2[3099]^c2[3425]^c2[3426]^c2[4100]^c2[4063]^c2[4175]^c2[4903]^c2[4848]^c2[4885]^c2[4886]^c2[5402]^c2[5722]^c2[5607]^c2[5608]^c2[6170]^c2[6383]^c2[6278]^c2[6279]^c2[6924]^c2[7169]^c2[7054]^c2[8047]^c2[7888]^c2[7890]^c2[7891]^c2[8636]^c2[8822]^c2[8831]^c2[8448]^c2[9312]^c2[9253]^c2[9525]^c2[9526]^c2[10036]^c2[10263]^c2[10019]^c2[10020]^c2[11048]^c2[10919]^c2[11042]^c2[11043]^c2[10757]^c2[11814]^c2[11698]^c2[11652]^c2[12473]^c2[12337]^c2[12670]^c2[12671]^c2[13249]^c2[13266]^c2[13434]^c2[13435]^c2[14145]^c2[14143]^c2[14173]^c2[14174]^c2[13971]^c2[14851]^c2[14618]^c2[14876]^c2[15385]^c2[15452]^c2[15477]^c2[15478]^c2[16169]^c2[16319]^c2[16179]^c2[16180]; //row: 30 d[i2+30*Zc]=c2[14]^c2[167]^c2[295]^c2[296]^c2[366]^c2[367]^c2[159]^c2[878]^c2[1108]^c2[1109]^c2[945]^c2[946]^c2[1677]^c2[1703]^c2[1570]^c2[1571]^c2[2380]^c2[2468]^c2[2394]^c2[2395]^c2[3451]^c2[3110]^c2[3111]^c2[3437]^c2[3438]^c2[4112]^c2[4075]^c2[4186]^c2[4187]^c2[4915]^c2[4859]^c2[4860]^c2[4897]^c2[4898]^c2[5414]^c2[5733]^c2[5734]^c2[5619]^c2[5620]^c2[6182]^c2[6394]^c2[6395]^c2[6290]^c2[6291]^c2[6936]^c2[7181]^c2[7065]^c2[7066]^c2[8059]^c2[7899]^c2[7900]^c2[7902]^c2[7903]^c2[7909]^c2[8648]^c2[8450]^c2[8459]^c2[8460]^c2[9324]^c2[9265]^c2[9537]^c2[9538]^c2[10048]^c2[10274]^c2[10275]^c2[10031]^c2[10032]^c2[10244]^c2[11060]^c2[10930]^c2[10931]^c2[11054]^c2[11055]^c2[11826]^c2[11710]^c2[11663]^c2[11664]^c2[12485]^c2[12349]^c2[12298]^c2[12299]^c2[13261]^c2[13277]^c2[13278]^c2[13062]^c2[13063]^c2[14157]^c2[14154]^c2[14155]^c2[14185]^c2[14186]^c2[14863]^c2[14630]^c2[14887]^c2[14888]^c2[15397]^c2[15463]^c2[15464]^c2[15489]^c2[15490]^c2[16181]^c2[16331]^c2[16191]^c2[16192]; //row: 31 d[i2+31*Zc]=c2[181]^c2[180]^c2[334]^c2[333]^c2[79]^c2[78]^c2[150]^c2[148]^c2[149]^c2[1045]^c2[1044]^c2[892]^c2[891]^c2[1113]^c2[1111]^c2[1112]^c2[868]^c2[1844]^c2[1843]^c2[1870]^c2[1869]^c2[1738]^c2[1737]^c2[2547]^c2[2546]^c2[2635]^c2[2634]^c2[2562]^c2[2560]^c2[2561]^c2[3234]^c2[3233]^c2[3278]^c2[3277]^c2[3221]^c2[3219]^c2[3220]^c2[3895]^c2[3894]^c2[3858]^c2[3857]^c2[3970]^c2[3969]^c2[4698]^c2[4697]^c2[4643]^c2[4642]^c2[4681]^c2[4679]^c2[4680]^c2[5581]^c2[5580]^c2[5517]^c2[5516]^c2[5403]^c2[5401]^c2[5402]^c2[5591]^c2[6349]^c2[6348]^c2[6178]^c2[6177]^c2[6458]^c2[6456]^c2[6457]^c2[7103]^c2[7102]^c2[6964]^c2[6963]^c2[7233]^c2[7232]^c2[7842]^c2[7841]^c2[7683]^c2[7682]^c2[7686]^c2[7684]^c2[7685]^c2[8815]^c2[8814]^c2[8617]^c2[8616]^c2[8627]^c2[8625]^c2[8626]^c2[9491]^c2[9490]^c2[9432]^c2[9431]^c2[9321]^c2[9319]^c2[9320]^c2[10215]^c2[10214]^c2[10058]^c2[10057]^c2[10199]^c2[10197]^c2[10198]^c2[10843]^c2[10842]^c2[11098]^c2[11097]^c2[10838]^c2[10836]^c2[10837]^c2[11609]^c2[11608]^c2[11877]^c2[11876]^c2[11831]^c2[11830]^c2[12652]^c2[12651]^c2[12516]^c2[12515]^c2[12466]^c2[12464]^c2[12465]^c2[13428]^c2[13427]^c2[13061]^c2[13060]^c2[13230]^c2[13228]^c2[13229]^c2[13940]^c2[13939]^c2[13938]^c2[13937]^c2[13969]^c2[13967]^c2[13968]^c2[14646]^c2[14645]^c2[14797]^c2[14796]^c2[14671]^c2[14670]^c2[15564]^c2[15563]^c2[15631]^c2[15630]^c2[15657]^c2[15655]^c2[15656]^c2[16348]^c2[16347]^c2[16498]^c2[16497]^c2[16359]^c2[16357]^c2[16358]; //row: 32 d[i2+32*Zc]=c2[211]^c2[364]^c2[108]^c2[109]^c2[179]^c2[180]^c2[102]^c2[1075]^c2[921]^c2[922]^c2[1142]^c2[1143]^c2[1874]^c2[1900]^c2[1767]^c2[1768]^c2[2577]^c2[2665]^c2[2591]^c2[2592]^c2[3264]^c2[3307]^c2[3308]^c2[3250]^c2[3251]^c2[3925]^c2[3888]^c2[3999]^c2[4000]^c2[4728]^c2[4672]^c2[4673]^c2[4710]^c2[4711]^c2[5611]^c2[5546]^c2[5547]^c2[5432]^c2[5433]^c2[6379]^c2[6207]^c2[6208]^c2[6487]^c2[6488]^c2[7133]^c2[6994]^c2[7262]^c2[7263]^c2[7872]^c2[7712]^c2[7713]^c2[7715]^c2[7716]^c2[8461]^c2[8647]^c2[8656]^c2[8657]^c2[9521]^c2[9462]^c2[9350]^c2[9351]^c2[9417]^c2[10245]^c2[10087]^c2[10088]^c2[10228]^c2[10229]^c2[10873]^c2[11127]^c2[11128]^c2[10867]^c2[10868]^c2[10927]^c2[11639]^c2[11523]^c2[11860]^c2[11861]^c2[12298]^c2[12546]^c2[12495]^c2[12496]^c2[13074]^c2[13090]^c2[13091]^c2[13259]^c2[13260]^c2[13970]^c2[13967]^c2[13968]^c2[13998]^c2[13999]^c2[14676]^c2[14827]^c2[14700]^c2[14701]^c2[15594]^c2[15660]^c2[15661]^c2[15686]^c2[15687]^c2[16378]^c2[16144]^c2[16388]^c2[16389]; //row: 33 d[i2+33*Zc]=c2[1091]^c2[1544]^c2[8809]^c2[16233]; //row: 34 d[i2+34*Zc]=c2[230]^c2[5524]^c2[11722]^c2[13368]; //row: 35 d[i2+35*Zc]=c2[189]^c2[342]^c2[87]^c2[158]^c2[1053]^c2[900]^c2[1121]^c2[1088]^c2[1852]^c2[1878]^c2[1746]^c2[2555]^c2[2643]^c2[2570]^c2[3242]^c2[3286]^c2[3229]^c2[3903]^c2[3866]^c2[3978]^c2[4706]^c2[4651]^c2[4689]^c2[4943]^c2[5589]^c2[5525]^c2[5411]^c2[6357]^c2[6186]^c2[6466]^c2[7111]^c2[6972]^c2[7241]^c2[7850]^c2[7691]^c2[7694]^c2[8823]^c2[8625]^c2[8635]^c2[9499]^c2[9440]^c2[9329]^c2[9218]^c2[10223]^c2[10066]^c2[10207]^c2[10851]^c2[11106]^c2[10846]^c2[11617]^c2[11885]^c2[11839]^c2[12660]^c2[12524]^c2[12474]^c2[13436]^c2[13069]^c2[13238]^c2[13948]^c2[13946]^c2[13977]^c2[14654]^c2[14805]^c2[14679]^c2[15572]^c2[15639]^c2[15665]^c2[16356]^c2[16506]^c2[16367]; //row: 36 d[i2+36*Zc]=c2[210]^c2[11065]^c2[11817]^c2[13845]; //row: 37 d[i2+37*Zc]=c2[38]^c2[39]^c2[192]^c2[321]^c2[8]^c2[902]^c2[903]^c2[1134]^c2[971]^c2[1037]^c2[1701]^c2[1702]^c2[1728]^c2[1596]^c2[2404]^c2[2405]^c2[2493]^c2[2420]^c2[3092]^c2[3136]^c2[3079]^c2[4136]^c2[4137]^c2[4100]^c2[4212]^c2[4939]^c2[4940]^c2[4885]^c2[4923]^c2[5439]^c2[5759]^c2[5645]^c2[6207]^c2[6420]^c2[6316]^c2[6960]^c2[6961]^c2[7206]^c2[7091]^c2[7699]^c2[7700]^c2[7925]^c2[7928]^c2[8672]^c2[8673]^c2[8475]^c2[8485]^c2[9348]^c2[9349]^c2[9290]^c2[9563]^c2[10072]^c2[10073]^c2[10300]^c2[10057]^c2[10066]^c2[11085]^c2[10956]^c2[11080]^c2[11850]^c2[11851]^c2[11735]^c2[11689]^c2[12509]^c2[12510]^c2[12374]^c2[12324]^c2[13286]^c2[13303]^c2[13088]^c2[14181]^c2[14182]^c2[14180]^c2[13827]^c2[14887]^c2[14888]^c2[14655]^c2[14913]^c2[15421]^c2[15422]^c2[15489]^c2[15515]^c2[16205]^c2[16206]^c2[16356]^c2[16217]; //row: 38 d[i2+38*Zc]=c2[185]^c2[7089]^c2[7969]^c2[9430]; //row: 39 d[i2+39*Zc]=c2[1026]^c2[2397]^c2[5722]^c2[14889]; //row: 40 d[i2+40*Zc]=c2[175]^c2[6181]^c2[13368]; //row: 41 d[i2+41*Zc]=c2[820]^c2[2618]^c2[7051]^c2[14112]; //row: 42 d[i2+42*Zc]=c2[142]^c2[295]^c2[39]^c2[40]^c2[110]^c2[111]^c2[113]^c2[1006]^c2[852]^c2[853]^c2[1073]^c2[1074]^c2[1805]^c2[1831]^c2[1698]^c2[1699]^c2[2508]^c2[2596]^c2[2522]^c2[2523]^c2[3195]^c2[3238]^c2[3239]^c2[3181]^c2[3182]^c2[3086]^c2[3856]^c2[4203]^c2[3930]^c2[3931]^c2[4659]^c2[4987]^c2[4988]^c2[4641]^c2[4642]^c2[5542]^c2[5477]^c2[5478]^c2[5747]^c2[5748]^c2[6310]^c2[6522]^c2[6523]^c2[6418]^c2[6419]^c2[7064]^c2[6925]^c2[7193]^c2[7194]^c2[7803]^c2[8027]^c2[8028]^c2[8030]^c2[8031]^c2[8776]^c2[8578]^c2[8587]^c2[8588]^c2[9452]^c2[9393]^c2[9281]^c2[9282]^c2[10176]^c2[10018]^c2[10019]^c2[10159]^c2[10160]^c2[10804]^c2[11058]^c2[11059]^c2[10798]^c2[10799]^c2[11570]^c2[11838]^c2[11791]^c2[11792]^c2[12613]^c2[12477]^c2[12426]^c2[12427]^c2[13389]^c2[13405]^c2[13406]^c2[13190]^c2[13191]^c2[13901]^c2[13898]^c2[13899]^c2[13929]^c2[13930]^c2[14607]^c2[14758]^c2[14631]^c2[14632]^c2[15525]^c2[15591]^c2[15592]^c2[15617]^c2[15618]^c2[16309]^c2[16459]^c2[16319]^c2[16320]; //row: 43 d[i2+43*Zc]=c2[92]^c2[245]^c2[374]^c2[60]^c2[61]^c2[956]^c2[803]^c2[1023]^c2[1024]^c2[881]^c2[1755]^c2[1781]^c2[1649]^c2[2458]^c2[2546]^c2[2472]^c2[2473]^c2[3145]^c2[3189]^c2[3131]^c2[3132]^c2[4190]^c2[4153]^c2[3881]^c2[4609]^c2[4938]^c2[4975]^c2[4976]^c2[5492]^c2[5428]^c2[5697]^c2[5698]^c2[6260]^c2[6473]^c2[6368]^c2[6369]^c2[7014]^c2[7259]^c2[7144]^c2[7753]^c2[7978]^c2[7980]^c2[7981]^c2[8726]^c2[8528]^c2[8537]^c2[8538]^c2[9402]^c2[9343]^c2[9231]^c2[9232]^c2[10126]^c2[10353]^c2[10109]^c2[10110]^c2[10754]^c2[11009]^c2[11132]^c2[11133]^c2[11520]^c2[11788]^c2[11742]^c2[12563]^c2[12427]^c2[12376]^c2[12377]^c2[12420]^c2[13339]^c2[13356]^c2[13140]^c2[13141]^c2[13851]^c2[13849]^c2[13879]^c2[13880]^c2[13938]^c2[14941]^c2[14708]^c2[14966]^c2[15475]^c2[15542]^c2[15567]^c2[15568]^c2[16259]^c2[16409]^c2[16269]^c2[16270]; //row: 44 d[i2+44*Zc]=c2[197]^c2[350]^c2[95]^c2[166]^c2[80]^c2[1061]^c2[908]^c2[1129]^c2[1860]^c2[1886]^c2[1754]^c2[2563]^c2[2651]^c2[2578]^c2[3250]^c2[3294]^c2[3237]^c2[3911]^c2[3874]^c2[3986]^c2[4714]^c2[4659]^c2[4697]^c2[5597]^c2[5533]^c2[5419]^c2[5454]^c2[6365]^c2[6194]^c2[6474]^c2[7119]^c2[6980]^c2[7249]^c2[7075]^c2[7858]^c2[7699]^c2[7702]^c2[8831]^c2[8633]^c2[8643]^c2[9507]^c2[9448]^c2[9337]^c2[10231]^c2[10074]^c2[10215]^c2[10859]^c2[11114]^c2[10854]^c2[11625]^c2[11893]^c2[11847]^c2[12668]^c2[12532]^c2[12482]^c2[13060]^c2[13077]^c2[13246]^c2[13956]^c2[13954]^c2[13985]^c2[14662]^c2[14813]^c2[14687]^c2[15580]^c2[15647]^c2[15673]^c2[16364]^c2[16130]^c2[16375]; //row: 45 d[i2+45*Zc]=c2[903]^c2[4757]^c2[7695]; } break; } } else if (BG==2) { printf("BG2 not yet optimized\n"); return(-1); } return 0; } int ldpc_encoder(unsigned char *test_input,unsigned char *channel_input,short block_length,double rate) { unsigned char c[22*384]; //padded input, unpacked, max size unsigned char d[46*384]; //coded parity part output, unpacked, max size unsigned char c_extension[16896]; //double size matrix of c short BG,Zc,Kb,nrows,ncols; int i,i1; int no_punctured_columns,removed_bit; //Table of possible lifting sizes short lift_size[51]= {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20,22,24,26,28,30,32,36,40,44,48,52,56,60,64,72,80,88,96,104,112,120,128,144,160,176,192,208,224,240,256,288,320,352,384}; //determine number of bits in codeword //if (block_length>3840) //{ BG=1; Kb = 22; nrows=46; //parity check bits ncols=22; //info bits //} /* else if (block_length<=3840) { BG=2; nrows=42; //parity check bits ncols=10; // info bits if (block_length>640) Kb = 10; else if (block_length>560) Kb = 9; else if (block_length>192) Kb = 8; else Kb = 6; } */ //find minimum value in all sets of lifting size for (i1=0; i1 < 51; i1++) { if (lift_size[i1] >= (double) block_length/Kb) { Zc = lift_size[i1]; //printf("%d\n",Zc); break; } } // calculate number of punctured bits no_punctured_columns=(int)((nrows-2)*Zc+block_length-block_length/rate)/Zc; removed_bit=(nrows-no_punctured_columns-2) * Zc+block_length-(int)(block_length/rate); //printf("%d\n",no_punctured_columns); //printf("%d\n",removed_bit); // unpack input memset(c,0,sizeof(unsigned char) * ncols * Zc); for (i=0; i<block_length; i++) { //c[i] = test_input[i/8]<<(i%8); //c[i]=c[i]>>7&1; c[i]=(test_input[i/8]&(1<<(i&7)))>>(i&7); } // extend matrix for (i1=0; i1 < ncols; i1++) { memcpy(&c_extension[2*i1*Zc], &c[i1*Zc], Zc*sizeof(unsigned char)); /// change type here memcpy(&c_extension[(2*i1+1)*Zc], &c[i1*Zc], Zc*sizeof(unsigned char)); } //parity check part encode_parity_check_part(c_extension, d, BG, Zc, Kb); // information part and puncture columns memcpy(&channel_input[0], &c[2*Zc], (block_length-2*Zc)*sizeof(unsigned char)); memcpy(&channel_input[block_length-2*Zc], &d[0], ((nrows-no_punctured_columns) * Zc-removed_bit)*sizeof(unsigned char)); return 0; }