#include "PHY/sse_intrin.h" #define scalar_xor(a,b) ((a)^(b)) // generated code for Zc=4, byte encoding static inline __attribute__ ((no_sanitize("address", "undefined"))) void ldpc_BG2_Zc4_byte(uint8_t *c,uint8_t *d) { uint8_t *csimd=(uint8_t *)c,*dsimd=(uint8_t *)d; uint8_t *c2,*d2; int i2; for (i2=0; i2<4; i2++) { c2=&csimd[i2]; d2=&dsimd[i2]; //row: 0 d2[0]=scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[19],scalar_xor(c2[17],scalar_xor(c2[25],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[33],scalar_xor(c2[40],scalar_xor(c2[43],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[59],scalar_xor(c2[57],scalar_xor(c2[67],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[72],scalar_xor(c2[75],c2[75])))))))))))))))))))))))))); //row: 1 d2[4]=scalar_xor(c2[1],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[16],scalar_xor(c2[19],scalar_xor(c2[17],scalar_xor(c2[26],scalar_xor(c2[25],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[33],scalar_xor(c2[40],scalar_xor(c2[43],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[59],scalar_xor(c2[57],scalar_xor(c2[67],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[73],scalar_xor(c2[72],scalar_xor(c2[75],c2[75])))))))))))))))))))))))))))))))); //row: 2 d2[8]=scalar_xor(c2[1],scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[16],scalar_xor(c2[19],scalar_xor(c2[17],scalar_xor(c2[26],scalar_xor(c2[25],scalar_xor(c2[26],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[33],scalar_xor(c2[41],scalar_xor(c2[40],scalar_xor(c2[43],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[50],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[56],scalar_xor(c2[59],scalar_xor(c2[57],scalar_xor(c2[64],scalar_xor(c2[67],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[73],scalar_xor(c2[72],scalar_xor(c2[72],scalar_xor(c2[75],c2[75])))))))))))))))))))))))))))))))))))))))); //row: 3 d2[12]=scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[25],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[40],scalar_xor(c2[40],scalar_xor(c2[43],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[59],scalar_xor(c2[58],scalar_xor(c2[57],scalar_xor(c2[67],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[65],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[72],c2[75])))))))))))))))))))))))))))))))))); //row: 4 d2[16]=scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[3],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[10],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[43],scalar_xor(c2[42],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[74],c2[74])))))))))))))))))))))))))))))))))); //row: 5 d2[20]=scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[3],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[43],scalar_xor(c2[42],scalar_xor(c2[42],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[59],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[74],c2[74])))))))))))))))))))))))))))))))))))); //row: 6 d2[24]=scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[3],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[40],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[57],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[75],scalar_xor(c2[74],scalar_xor(c2[73],scalar_xor(c2[73],c2[72])))))))))))))))))))))))))))))))))))); //row: 7 d2[28]=scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[0],scalar_xor(c2[1],scalar_xor(c2[2],scalar_xor(c2[3],scalar_xor(c2[0],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[17],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[25],scalar_xor(c2[26],scalar_xor(c2[27],scalar_xor(c2[35],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[33],scalar_xor(c2[43],scalar_xor(c2[40],scalar_xor(c2[40],scalar_xor(c2[42],scalar_xor(c2[43],scalar_xor(c2[43],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[49],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[58],scalar_xor(c2[59],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[57],scalar_xor(c2[56],scalar_xor(c2[66],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[65],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[74],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[74],c2[75])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 8 d2[32]=scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[1],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[2],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[10],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[43],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[58],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[66],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[75],scalar_xor(c2[74],scalar_xor(c2[74],scalar_xor(c2[73],c2[73])))))))))))))))))))))))))))))))))))))))))); //row: 9 d2[36]=scalar_xor(c2[0],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[8],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[19],scalar_xor(c2[16],scalar_xor(c2[18],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[25],scalar_xor(c2[26],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[24],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[41],scalar_xor(c2[43],scalar_xor(c2[40],scalar_xor(c2[42],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[51],scalar_xor(c2[56],scalar_xor(c2[58],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[64],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[65],scalar_xor(c2[72],scalar_xor(c2[73],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[74],scalar_xor(c2[72],c2[74]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 10 d2[40]=scalar_xor(c2[3],scalar_xor(c2[9],scalar_xor(c2[48],c2[57]))); //row: 11 d2[44]=scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[25],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[40],scalar_xor(c2[40],scalar_xor(c2[43],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[59],scalar_xor(c2[58],scalar_xor(c2[57],scalar_xor(c2[56],scalar_xor(c2[67],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[65],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[75],c2[74]))))))))))))))))))))))))))))))))))))); //row: 12 d2[48]=scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[75],scalar_xor(c2[74],scalar_xor(c2[73],c2[73])))))))))))))))))))))))))))))))))); //row: 13 d2[52]=scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[3],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[10],scalar_xor(c2[17],scalar_xor(c2[16],scalar_xor(c2[19],scalar_xor(c2[27],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[42],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[57],scalar_xor(c2[56],scalar_xor(c2[59],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[64],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[74],scalar_xor(c2[73],scalar_xor(c2[74],c2[73]))))))))))))))))))))))))))))))))))))); //row: 14 d2[56]=scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[0],scalar_xor(c2[1],scalar_xor(c2[2],scalar_xor(c2[3],scalar_xor(c2[0],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[11],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[17],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[25],scalar_xor(c2[26],scalar_xor(c2[27],scalar_xor(c2[35],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[33],scalar_xor(c2[43],scalar_xor(c2[40],scalar_xor(c2[40],scalar_xor(c2[42],scalar_xor(c2[43],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[49],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[58],scalar_xor(c2[59],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[57],scalar_xor(c2[66],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[65],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[74],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[74],c2[75]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 15 d2[60]=scalar_xor(c2[2],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[10],scalar_xor(c2[8],scalar_xor(c2[17],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[16],scalar_xor(c2[18],scalar_xor(c2[27],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[26],scalar_xor(c2[24],scalar_xor(c2[35],scalar_xor(c2[33],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[43],scalar_xor(c2[41],scalar_xor(c2[42],scalar_xor(c2[40],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[49],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[56],scalar_xor(c2[58],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[64],scalar_xor(c2[66],scalar_xor(c2[74],scalar_xor(c2[75],scalar_xor(c2[73],scalar_xor(c2[74],scalar_xor(c2[72],scalar_xor(c2[74],c2[72])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 16 d2[64]=scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[1],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[16],scalar_xor(c2[18],scalar_xor(c2[19],scalar_xor(c2[17],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[26],scalar_xor(c2[24],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[24],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[35],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[35],scalar_xor(c2[33],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[43],scalar_xor(c2[40],scalar_xor(c2[42],scalar_xor(c2[43],scalar_xor(c2[41],scalar_xor(c2[49],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[50],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[50],scalar_xor(c2[58],scalar_xor(c2[59],scalar_xor(c2[57],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[66],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[73],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[74],scalar_xor(c2[74],scalar_xor(c2[75],scalar_xor(c2[73],scalar_xor(c2[75],scalar_xor(c2[73],c2[74]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 17 d2[68]=scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[10],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[19],scalar_xor(c2[17],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[26],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[33],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[35],scalar_xor(c2[33],scalar_xor(c2[41],scalar_xor(c2[42],scalar_xor(c2[40],scalar_xor(c2[41],scalar_xor(c2[43],scalar_xor(c2[40],scalar_xor(c2[51],scalar_xor(c2[49],scalar_xor(c2[50],scalar_xor(c2[48],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[49],scalar_xor(c2[50],scalar_xor(c2[48],scalar_xor(c2[56],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[59],scalar_xor(c2[57],scalar_xor(c2[64],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[75],scalar_xor(c2[73],scalar_xor(c2[74],scalar_xor(c2[72],scalar_xor(c2[72],scalar_xor(c2[73],scalar_xor(c2[75],scalar_xor(c2[73],c2[75]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 18 d2[72]=scalar_xor(c2[0],scalar_xor(c2[50],c2[58])); //row: 19 d2[76]=scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[9],scalar_xor(c2[10],scalar_xor(c2[8],scalar_xor(c2[8],scalar_xor(c2[16],scalar_xor(c2[18],scalar_xor(c2[26],scalar_xor(c2[26],scalar_xor(c2[24],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[41],scalar_xor(c2[40],scalar_xor(c2[49],scalar_xor(c2[50],scalar_xor(c2[49],scalar_xor(c2[56],scalar_xor(c2[58],scalar_xor(c2[64],scalar_xor(c2[64],scalar_xor(c2[66],scalar_xor(c2[73],scalar_xor(c2[72],c2[72])))))))))))))))))))))))))))); //row: 20 d2[80]=scalar_xor(c2[2],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[10],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[17],scalar_xor(c2[16],scalar_xor(c2[18],scalar_xor(c2[27],scalar_xor(c2[26],scalar_xor(c2[26],scalar_xor(c2[24],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[41],scalar_xor(c2[40],scalar_xor(c2[50],scalar_xor(c2[49],scalar_xor(c2[50],scalar_xor(c2[49],scalar_xor(c2[56],scalar_xor(c2[58],scalar_xor(c2[64],scalar_xor(c2[64],scalar_xor(c2[66],scalar_xor(c2[74],scalar_xor(c2[73],scalar_xor(c2[72],c2[72])))))))))))))))))))))))))))))))))); //row: 21 d2[84]=scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[17],scalar_xor(c2[16],scalar_xor(c2[19],scalar_xor(c2[27],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[42],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[57],scalar_xor(c2[56],scalar_xor(c2[59],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[64],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[74],scalar_xor(c2[73],scalar_xor(c2[74],c2[73])))))))))))))))))))))))))))))))))))); //row: 22 d2[88]=scalar_xor(c2[10],c2[19]); //row: 23 d2[92]=scalar_xor(c2[3],scalar_xor(c2[27],c2[42])); //row: 24 d2[96]=scalar_xor(c2[10],scalar_xor(c2[19],c2[72])); //row: 25 d2[100]=scalar_xor(c2[0],c2[40]); //row: 26 d2[104]=scalar_xor(c2[1],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[16],scalar_xor(c2[19],scalar_xor(c2[17],scalar_xor(c2[16],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[17],scalar_xor(c2[26],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[26],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[35],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[41],scalar_xor(c2[40],scalar_xor(c2[42],scalar_xor(c2[42],scalar_xor(c2[43],scalar_xor(c2[41],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[50],scalar_xor(c2[50],scalar_xor(c2[49],scalar_xor(c2[51],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[50],scalar_xor(c2[56],scalar_xor(c2[59],scalar_xor(c2[57],scalar_xor(c2[56],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[59],scalar_xor(c2[64],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[65],scalar_xor(c2[64],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[73],scalar_xor(c2[72],scalar_xor(c2[74],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[73],scalar_xor(c2[74],scalar_xor(c2[75],c2[73]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 27 d2[108]=scalar_xor(c2[0],c2[51]); //row: 28 d2[112]=scalar_xor(c2[10],scalar_xor(c2[17],c2[43])); //row: 29 d2[116]=scalar_xor(c2[2],c2[32]); //row: 30 d2[120]=scalar_xor(c2[19],scalar_xor(c2[40],scalar_xor(c2[57],c2[72]))); //row: 31 d2[124]=scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[9],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[16],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[26],scalar_xor(c2[26],scalar_xor(c2[24],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[41],scalar_xor(c2[41],scalar_xor(c2[40],scalar_xor(c2[49],scalar_xor(c2[50],scalar_xor(c2[50],scalar_xor(c2[49],scalar_xor(c2[56],scalar_xor(c2[59],scalar_xor(c2[58],scalar_xor(c2[64],scalar_xor(c2[64],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[73],scalar_xor(c2[72],scalar_xor(c2[73],c2[72]))))))))))))))))))))))))))))))))))); //row: 32 d2[128]=scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[1],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[2],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[43],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[40],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[58],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[66],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[75],scalar_xor(c2[74],scalar_xor(c2[74],scalar_xor(c2[73],c2[73])))))))))))))))))))))))))))))))))))))))))); //row: 33 d2[132]=scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[16],scalar_xor(c2[24],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[43],scalar_xor(c2[42],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[56],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[75],scalar_xor(c2[74],c2[74])))))))))))))))))))))))))))); //row: 34 d2[136]=scalar_xor(c2[2],scalar_xor(c2[1],scalar_xor(c2[0],scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[1],scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[17],scalar_xor(c2[16],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[27],scalar_xor(c2[26],scalar_xor(c2[25],scalar_xor(c2[27],scalar_xor(c2[26],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[32],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[40],scalar_xor(c2[40],scalar_xor(c2[40],scalar_xor(c2[43],scalar_xor(c2[50],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[49],scalar_xor(c2[49],scalar_xor(c2[49],scalar_xor(c2[48],scalar_xor(c2[57],scalar_xor(c2[56],scalar_xor(c2[59],scalar_xor(c2[58],scalar_xor(c2[58],scalar_xor(c2[57],scalar_xor(c2[65],scalar_xor(c2[64],scalar_xor(c2[67],scalar_xor(c2[64],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[65],scalar_xor(c2[74],scalar_xor(c2[73],scalar_xor(c2[72],scalar_xor(c2[73],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[72],c2[75])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 35 d2[140]=scalar_xor(c2[0],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[9],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[43],scalar_xor(c2[42],scalar_xor(c2[40],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[72],scalar_xor(c2[75],scalar_xor(c2[74],c2[74])))))))))))))))))))))))))))))))))); //row: 36 d2[144]=scalar_xor(c2[0],scalar_xor(c2[18],c2[58])); //row: 37 d2[148]=scalar_xor(c2[3],scalar_xor(c2[3],scalar_xor(c2[1],scalar_xor(c2[1],scalar_xor(c2[3],scalar_xor(c2[3],scalar_xor(c2[11],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[8],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[10],scalar_xor(c2[18],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[16],scalar_xor(c2[16],scalar_xor(c2[24],scalar_xor(c2[24],scalar_xor(c2[24],scalar_xor(c2[24],scalar_xor(c2[26],scalar_xor(c2[26],scalar_xor(c2[35],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[32],scalar_xor(c2[32],scalar_xor(c2[43],scalar_xor(c2[43],scalar_xor(c2[43],scalar_xor(c2[42],scalar_xor(c2[42],scalar_xor(c2[51],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[48],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[51],scalar_xor(c2[58],scalar_xor(c2[58],scalar_xor(c2[57],scalar_xor(c2[56],scalar_xor(c2[56],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[66],scalar_xor(c2[65],scalar_xor(c2[64],scalar_xor(c2[64],scalar_xor(c2[75],scalar_xor(c2[75],scalar_xor(c2[74],scalar_xor(c2[74],scalar_xor(c2[75],scalar_xor(c2[74],c2[74]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 38 d2[152]=scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[11],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[42],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[75],scalar_xor(c2[74],scalar_xor(c2[73],c2[73])))))))))))))))))))))))))))))))))); //row: 39 d2[156]=scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[1],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[3],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[43],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[48],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[58],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[56],scalar_xor(c2[66],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[75],scalar_xor(c2[74],scalar_xor(c2[74],scalar_xor(c2[73],c2[73])))))))))))))))))))))))))))))))))))))))))); //row: 40 d2[160]=scalar_xor(c2[3],scalar_xor(c2[0],scalar_xor(c2[1],scalar_xor(c2[2],scalar_xor(c2[3],scalar_xor(c2[0],scalar_xor(c2[11],scalar_xor(c2[8],scalar_xor(c2[8],scalar_xor(c2[9],scalar_xor(c2[8],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[18],scalar_xor(c2[19],scalar_xor(c2[18],scalar_xor(c2[16],scalar_xor(c2[17],scalar_xor(c2[16],scalar_xor(c2[24],scalar_xor(c2[25],scalar_xor(c2[24],scalar_xor(c2[25],scalar_xor(c2[26],scalar_xor(c2[27],scalar_xor(c2[35],scalar_xor(c2[32],scalar_xor(c2[34],scalar_xor(c2[35],scalar_xor(c2[34],scalar_xor(c2[32],scalar_xor(c2[33],scalar_xor(c2[43],scalar_xor(c2[40],scalar_xor(c2[40],scalar_xor(c2[42],scalar_xor(c2[43],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[48],scalar_xor(c2[49],scalar_xor(c2[49],scalar_xor(c2[51],scalar_xor(c2[48],scalar_xor(c2[58],scalar_xor(c2[59],scalar_xor(c2[58],scalar_xor(c2[56],scalar_xor(c2[57],scalar_xor(c2[66],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[67],scalar_xor(c2[66],scalar_xor(c2[64],scalar_xor(c2[65],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[74],scalar_xor(c2[75],scalar_xor(c2[72],scalar_xor(c2[74],c2[75])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); //row: 41 d2[164]=scalar_xor(c2[3],scalar_xor(c2[2],scalar_xor(c2[0],scalar_xor(c2[2],scalar_xor(c2[11],scalar_xor(c2[10],scalar_xor(c2[11],scalar_xor(c2[9],scalar_xor(c2[9],scalar_xor(c2[18],scalar_xor(c2[17],scalar_xor(c2[19],scalar_xor(c2[24],scalar_xor(c2[27],scalar_xor(c2[27],scalar_xor(c2[25],scalar_xor(c2[34],scalar_xor(c2[33],scalar_xor(c2[35],scalar_xor(c2[42],scalar_xor(c2[41],scalar_xor(c2[41],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[51],scalar_xor(c2[50],scalar_xor(c2[57],scalar_xor(c2[59],scalar_xor(c2[65],scalar_xor(c2[65],scalar_xor(c2[67],scalar_xor(c2[75],scalar_xor(c2[74],scalar_xor(c2[73],c2[73])))))))))))))))))))))))))))))))))); } }