Files
openairinterface5g/openair1/PHY/CODING/nrLDPC_encoder/ldpc_BG2_Zc80_byte.c
T

140 lines
34 KiB
C

#include "PHY/sse_intrin.h"
// generated code for Zc=80, byte encoding
static inline void ldpc_BG2_Zc80_byte(uint8_t *c,uint8_t *d) {
__m128i *csimd=(__m128i *)c,*dsimd=(__m128i *)d;
__m128i *c2,*d2;
int i2;
for (i2=0; i2<5; i2++) {
c2=&csimd[i2];
d2=&dsimd[i2];
//row: 0
d2[0]=_mm_xor_si128(c2[1504],_mm_xor_si128(c2[803],_mm_xor_si128(c2[301],_mm_xor_si128(c2[1514],_mm_xor_si128(c2[1310],_mm_xor_si128(c2[512],_mm_xor_si128(c2[1524],_mm_xor_si128(c2[1420],_mm_xor_si128(c2[1534],_mm_xor_si128(c2[1132],_mm_xor_si128(c2[231],_mm_xor_si128(c2[1544],_mm_xor_si128(c2[840],_mm_xor_si128(c2[541],_mm_xor_si128(c2[1554],_mm_xor_si128(c2[154],_mm_xor_si128(c2[1564],_mm_xor_si128(c2[760],_mm_xor_si128(c2[1160],_mm_xor_si128(c2[1574],_mm_xor_si128(c2[873],_mm_xor_si128(c2[1584],_mm_xor_si128(c2[1181],_mm_xor_si128(c2[483],_mm_xor_si128(c2[1594],_mm_xor_si128(c2[693],c2[1392]))))))))))))))))))))))))));
//row: 1
d2[5]=_mm_xor_si128(c2[0],_mm_xor_si128(c2[1504],_mm_xor_si128(c2[803],_mm_xor_si128(c2[301],_mm_xor_si128(c2[10],_mm_xor_si128(c2[1514],_mm_xor_si128(c2[1310],_mm_xor_si128(c2[512],_mm_xor_si128(c2[20],_mm_xor_si128(c2[1524],_mm_xor_si128(c2[1420],_mm_xor_si128(c2[30],_mm_xor_si128(c2[1534],_mm_xor_si128(c2[1132],_mm_xor_si128(c2[231],_mm_xor_si128(c2[1544],_mm_xor_si128(c2[840],_mm_xor_si128(c2[541],_mm_xor_si128(c2[1554],_mm_xor_si128(c2[154],_mm_xor_si128(c2[60],_mm_xor_si128(c2[1564],_mm_xor_si128(c2[760],_mm_xor_si128(c2[1160],_mm_xor_si128(c2[1574],_mm_xor_si128(c2[873],_mm_xor_si128(c2[1584],_mm_xor_si128(c2[1181],_mm_xor_si128(c2[483],_mm_xor_si128(c2[90],_mm_xor_si128(c2[1594],_mm_xor_si128(c2[693],c2[1392]))))))))))))))))))))))))))))))));
//row: 2
d2[10]=_mm_xor_si128(c2[0],_mm_xor_si128(c2[1504],_mm_xor_si128(c2[903],_mm_xor_si128(c2[803],_mm_xor_si128(c2[301],_mm_xor_si128(c2[10],_mm_xor_si128(c2[1514],_mm_xor_si128(c2[1310],_mm_xor_si128(c2[512],_mm_xor_si128(c2[20],_mm_xor_si128(c2[1524],_mm_xor_si128(c2[1420],_mm_xor_si128(c2[30],_mm_xor_si128(c2[1534],_mm_xor_si128(c2[1232],_mm_xor_si128(c2[1132],_mm_xor_si128(c2[231],_mm_xor_si128(c2[40],_mm_xor_si128(c2[1544],_mm_xor_si128(c2[840],_mm_xor_si128(c2[541],_mm_xor_si128(c2[50],_mm_xor_si128(c2[1554],_mm_xor_si128(c2[154],_mm_xor_si128(c2[60],_mm_xor_si128(c2[1564],_mm_xor_si128(c2[860],_mm_xor_si128(c2[760],_mm_xor_si128(c2[1160],_mm_xor_si128(c2[70],_mm_xor_si128(c2[1574],_mm_xor_si128(c2[873],_mm_xor_si128(c2[80],_mm_xor_si128(c2[1584],_mm_xor_si128(c2[1181],_mm_xor_si128(c2[483],_mm_xor_si128(c2[90],_mm_xor_si128(c2[1594],_mm_xor_si128(c2[793],_mm_xor_si128(c2[693],c2[1392]))))))))))))))))))))))))))))))))))))))));
//row: 3
d2[15]=_mm_xor_si128(c2[1504],_mm_xor_si128(c2[803],_mm_xor_si128(c2[301],_mm_xor_si128(c2[1514],_mm_xor_si128(c2[1310],_mm_xor_si128(c2[612],_mm_xor_si128(c2[512],_mm_xor_si128(c2[1524],_mm_xor_si128(c2[1520],_mm_xor_si128(c2[1420],_mm_xor_si128(c2[1534],_mm_xor_si128(c2[1132],_mm_xor_si128(c2[231],_mm_xor_si128(c2[1544],_mm_xor_si128(c2[840],_mm_xor_si128(c2[641],_mm_xor_si128(c2[541],_mm_xor_si128(c2[1554],_mm_xor_si128(c2[254],_mm_xor_si128(c2[154],_mm_xor_si128(c2[1564],_mm_xor_si128(c2[760],_mm_xor_si128(c2[1260],_mm_xor_si128(c2[1160],_mm_xor_si128(c2[1574],_mm_xor_si128(c2[973],_mm_xor_si128(c2[873],_mm_xor_si128(c2[1584],_mm_xor_si128(c2[1181],_mm_xor_si128(c2[583],_mm_xor_si128(c2[483],_mm_xor_si128(c2[1594],_mm_xor_si128(c2[693],_mm_xor_si128(c2[1492],c2[1392]))))))))))))))))))))))))))))))))));
//row: 4
d2[20]=_mm_xor_si128(c2[1304],_mm_xor_si128(c2[1204],_mm_xor_si128(c2[503],_mm_xor_si128(c2[1],_mm_xor_si128(c2[0],_mm_xor_si128(c2[1314],_mm_xor_si128(c2[1214],_mm_xor_si128(c2[1010],_mm_xor_si128(c2[212],_mm_xor_si128(c2[813],_mm_xor_si128(c2[1324],_mm_xor_si128(c2[1224],_mm_xor_si128(c2[1120],_mm_xor_si128(c2[1334],_mm_xor_si128(c2[1234],_mm_xor_si128(c2[832],_mm_xor_si128(c2[1530],_mm_xor_si128(c2[1244],_mm_xor_si128(c2[540],_mm_xor_si128(c2[241],_mm_xor_si128(c2[1254],_mm_xor_si128(c2[1453],_mm_xor_si128(c2[1364],_mm_xor_si128(c2[1264],_mm_xor_si128(c2[460],_mm_xor_si128(c2[860],_mm_xor_si128(c2[1274],_mm_xor_si128(c2[573],_mm_xor_si128(c2[1284],_mm_xor_si128(c2[881],_mm_xor_si128(c2[183],_mm_xor_si128(c2[1394],_mm_xor_si128(c2[1294],_mm_xor_si128(c2[393],c2[1092]))))))))))))))))))))))))))))))))));
//row: 5
d2[25]=_mm_xor_si128(c2[4],_mm_xor_si128(c2[1503],_mm_xor_si128(c2[802],_mm_xor_si128(c2[300],_mm_xor_si128(c2[0],_mm_xor_si128(c2[14],_mm_xor_si128(c2[1513],_mm_xor_si128(c2[1314],_mm_xor_si128(c2[511],_mm_xor_si128(c2[313],_mm_xor_si128(c2[24],_mm_xor_si128(c2[1523],_mm_xor_si128(c2[1424],_mm_xor_si128(c2[34],_mm_xor_si128(c2[1533],_mm_xor_si128(c2[1131],_mm_xor_si128(c2[230],_mm_xor_si128(c2[1543],_mm_xor_si128(c2[844],_mm_xor_si128(c2[540],_mm_xor_si128(c2[1553],_mm_xor_si128(c2[153],_mm_xor_si128(c2[1453],_mm_xor_si128(c2[64],_mm_xor_si128(c2[1563],_mm_xor_si128(c2[764],_mm_xor_si128(c2[1164],_mm_xor_si128(c2[1573],_mm_xor_si128(c2[872],_mm_xor_si128(c2[1373],_mm_xor_si128(c2[1583],_mm_xor_si128(c2[1180],_mm_xor_si128(c2[482],_mm_xor_si128(c2[94],_mm_xor_si128(c2[1593],_mm_xor_si128(c2[692],c2[1391]))))))))))))))))))))))))))))))))))));
//row: 6
d2[30]=_mm_xor_si128(c2[404],_mm_xor_si128(c2[304],_mm_xor_si128(c2[1202],_mm_xor_si128(c2[700],_mm_xor_si128(c2[0],_mm_xor_si128(c2[414],_mm_xor_si128(c2[314],_mm_xor_si128(c2[110],_mm_xor_si128(c2[911],_mm_xor_si128(c2[424],_mm_xor_si128(c2[324],_mm_xor_si128(c2[220],_mm_xor_si128(c2[434],_mm_xor_si128(c2[334],_mm_xor_si128(c2[1531],_mm_xor_si128(c2[630],_mm_xor_si128(c2[344],_mm_xor_si128(c2[1244],_mm_xor_si128(c2[940],_mm_xor_si128(c2[354],_mm_xor_si128(c2[553],_mm_xor_si128(c2[1252],_mm_xor_si128(c2[464],_mm_xor_si128(c2[364],_mm_xor_si128(c2[1164],_mm_xor_si128(c2[1564],_mm_xor_si128(c2[374],_mm_xor_si128(c2[1272],_mm_xor_si128(c2[371],_mm_xor_si128(c2[384],_mm_xor_si128(c2[1580],_mm_xor_si128(c2[882],_mm_xor_si128(c2[494],_mm_xor_si128(c2[394],_mm_xor_si128(c2[1092],_mm_xor_si128(c2[192],c2[1392]))))))))))))))))))))))))))))))))))));
//row: 7
d2[35]=_mm_xor_si128(c2[1],_mm_xor_si128(c2[1500],_mm_xor_si128(c2[1304],_mm_xor_si128(c2[804],_mm_xor_si128(c2[603],_mm_xor_si128(c2[302],_mm_xor_si128(c2[101],_mm_xor_si128(c2[11],_mm_xor_si128(c2[1510],_mm_xor_si128(c2[1314],_mm_xor_si128(c2[1311],_mm_xor_si128(c2[1110],_mm_xor_si128(c2[513],_mm_xor_si128(c2[412],_mm_xor_si128(c2[312],_mm_xor_si128(c2[10],_mm_xor_si128(c2[21],_mm_xor_si128(c2[1520],_mm_xor_si128(c2[1324],_mm_xor_si128(c2[1421],_mm_xor_si128(c2[1320],_mm_xor_si128(c2[1220],_mm_xor_si128(c2[31],_mm_xor_si128(c2[1530],_mm_xor_si128(c2[1334],_mm_xor_si128(c2[1133],_mm_xor_si128(c2[932],_mm_xor_si128(c2[232],_mm_xor_si128(c2[31],_mm_xor_si128(c2[1540],_mm_xor_si128(c2[1344],_mm_xor_si128(c2[841],_mm_xor_si128(c2[640],_mm_xor_si128(c2[542],_mm_xor_si128(c2[441],_mm_xor_si128(c2[341],_mm_xor_si128(c2[1550],_mm_xor_si128(c2[1354],_mm_xor_si128(c2[150],_mm_xor_si128(c2[54],_mm_xor_si128(c2[1553],_mm_xor_si128(c2[1352],_mm_xor_si128(c2[61],_mm_xor_si128(c2[1560],_mm_xor_si128(c2[1364],_mm_xor_si128(c2[761],_mm_xor_si128(c2[560],_mm_xor_si128(c2[1161],_mm_xor_si128(c2[1060],_mm_xor_si128(c2[960],_mm_xor_si128(c2[1570],_mm_xor_si128(c2[1374],_mm_xor_si128(c2[874],_mm_xor_si128(c2[773],_mm_xor_si128(c2[673],_mm_xor_si128(c2[474],_mm_xor_si128(c2[1580],_mm_xor_si128(c2[1384],_mm_xor_si128(c2[1182],_mm_xor_si128(c2[981],_mm_xor_si128(c2[484],_mm_xor_si128(c2[383],_mm_xor_si128(c2[283],_mm_xor_si128(c2[91],_mm_xor_si128(c2[1590],_mm_xor_si128(c2[1394],_mm_xor_si128(c2[694],_mm_xor_si128(c2[493],_mm_xor_si128(c2[1393],_mm_xor_si128(c2[1292],c2[1192]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 8
d2[40]=_mm_xor_si128(c2[700],_mm_xor_si128(c2[600],_mm_xor_si128(c2[4],_mm_xor_si128(c2[1503],_mm_xor_si128(c2[1001],_mm_xor_si128(c2[0],_mm_xor_si128(c2[710],_mm_xor_si128(c2[610],_mm_xor_si128(c2[411],_mm_xor_si128(c2[1212],_mm_xor_si128(c2[114],_mm_xor_si128(c2[720],_mm_xor_si128(c2[620],_mm_xor_si128(c2[521],_mm_xor_si128(c2[730],_mm_xor_si128(c2[630],_mm_xor_si128(c2[333],_mm_xor_si128(c2[233],_mm_xor_si128(c2[931],_mm_xor_si128(c2[740],_mm_xor_si128(c2[640],_mm_xor_si128(c2[1540],_mm_xor_si128(c2[1241],_mm_xor_si128(c2[750],_mm_xor_si128(c2[650],_mm_xor_si128(c2[854],_mm_xor_si128(c2[760],_mm_xor_si128(c2[660],_mm_xor_si128(c2[1560],_mm_xor_si128(c2[1460],_mm_xor_si128(c2[261],_mm_xor_si128(c2[770],_mm_xor_si128(c2[670],_mm_xor_si128(c2[1573],_mm_xor_si128(c2[780],_mm_xor_si128(c2[680],_mm_xor_si128(c2[282],_mm_xor_si128(c2[1183],_mm_xor_si128(c2[790],_mm_xor_si128(c2[690],_mm_xor_si128(c2[1493],_mm_xor_si128(c2[1393],c2[493]))))))))))))))))))))))))))))))))))))))))));
//row: 9
d2[45]=_mm_xor_si128(c2[203],_mm_xor_si128(c2[500],_mm_xor_si128(c2[400],_mm_xor_si128(c2[1101],_mm_xor_si128(c2[1303],_mm_xor_si128(c2[604],_mm_xor_si128(c2[801],_mm_xor_si128(c2[213],_mm_xor_si128(c2[510],_mm_xor_si128(c2[410],_mm_xor_si128(c2[14],_mm_xor_si128(c2[211],_mm_xor_si128(c2[810],_mm_xor_si128(c2[1012],_mm_xor_si128(c2[10],_mm_xor_si128(c2[223],_mm_xor_si128(c2[520],_mm_xor_si128(c2[420],_mm_xor_si128(c2[124],_mm_xor_si128(c2[321],_mm_xor_si128(c2[233],_mm_xor_si128(c2[530],_mm_xor_si128(c2[430],_mm_xor_si128(c2[1430],_mm_xor_si128(c2[33],_mm_xor_si128(c2[534],_mm_xor_si128(c2[731],_mm_xor_si128(c2[243],_mm_xor_si128(c2[440],_mm_xor_si128(c2[1143],_mm_xor_si128(c2[1340],_mm_xor_si128(c2[844],_mm_xor_si128(c2[1041],_mm_xor_si128(c2[253],_mm_xor_si128(c2[450],_mm_xor_si128(c2[452],_mm_xor_si128(c2[654],_mm_xor_si128(c2[263],_mm_xor_si128(c2[560],_mm_xor_si128(c2[460],_mm_xor_si128(c2[1063],_mm_xor_si128(c2[1260],_mm_xor_si128(c2[1463],_mm_xor_si128(c2[61],_mm_xor_si128(c2[273],_mm_xor_si128(c2[470],_mm_xor_si128(c2[1171],_mm_xor_si128(c2[1373],_mm_xor_si128(c2[283],_mm_xor_si128(c2[480],_mm_xor_si128(c2[1484],_mm_xor_si128(c2[82],_mm_xor_si128(c2[781],_mm_xor_si128(c2[983],_mm_xor_si128(c2[181],_mm_xor_si128(c2[293],_mm_xor_si128(c2[590],_mm_xor_si128(c2[490],_mm_xor_si128(c2[991],_mm_xor_si128(c2[1193],_mm_xor_si128(c2[91],c2[293])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 10
d2[50]=_mm_xor_si128(c2[0],_mm_xor_si128(c2[111],_mm_xor_si128(c2[1264],c2[471])));
//row: 11
d2[55]=_mm_xor_si128(c2[100],_mm_xor_si128(c2[1003],_mm_xor_si128(c2[501],_mm_xor_si128(c2[0],_mm_xor_si128(c2[110],_mm_xor_si128(c2[1510],_mm_xor_si128(c2[812],_mm_xor_si128(c2[712],_mm_xor_si128(c2[120],_mm_xor_si128(c2[121],_mm_xor_si128(c2[21],_mm_xor_si128(c2[130],_mm_xor_si128(c2[1332],_mm_xor_si128(c2[431],_mm_xor_si128(c2[140],_mm_xor_si128(c2[1040],_mm_xor_si128(c2[841],_mm_xor_si128(c2[741],_mm_xor_si128(c2[150],_mm_xor_si128(c2[454],_mm_xor_si128(c2[354],_mm_xor_si128(c2[160],_mm_xor_si128(c2[960],_mm_xor_si128(c2[1460],_mm_xor_si128(c2[1360],_mm_xor_si128(c2[170],_mm_xor_si128(c2[1173],_mm_xor_si128(c2[1073],_mm_xor_si128(c2[770],_mm_xor_si128(c2[180],_mm_xor_si128(c2[1381],_mm_xor_si128(c2[783],_mm_xor_si128(c2[683],_mm_xor_si128(c2[190],_mm_xor_si128(c2[893],_mm_xor_si128(c2[93],_mm_xor_si128(c2[1592],c2[490])))))))))))))))))))))))))))))))))))));
//row: 12
d2[60]=_mm_xor_si128(c2[3],_mm_xor_si128(c2[1502],_mm_xor_si128(c2[801],_mm_xor_si128(c2[304],_mm_xor_si128(c2[13],_mm_xor_si128(c2[1512],_mm_xor_si128(c2[1313],_mm_xor_si128(c2[510],_mm_xor_si128(c2[10],_mm_xor_si128(c2[23],_mm_xor_si128(c2[1522],_mm_xor_si128(c2[1423],_mm_xor_si128(c2[33],_mm_xor_si128(c2[1532],_mm_xor_si128(c2[1130],_mm_xor_si128(c2[234],_mm_xor_si128(c2[132],_mm_xor_si128(c2[1542],_mm_xor_si128(c2[843],_mm_xor_si128(c2[544],_mm_xor_si128(c2[1552],_mm_xor_si128(c2[152],_mm_xor_si128(c2[63],_mm_xor_si128(c2[1562],_mm_xor_si128(c2[763],_mm_xor_si128(c2[1163],_mm_xor_si128(c2[1572],_mm_xor_si128(c2[871],_mm_xor_si128(c2[1582],_mm_xor_si128(c2[1184],_mm_xor_si128(c2[481],_mm_xor_si128(c2[93],_mm_xor_si128(c2[1592],_mm_xor_si128(c2[691],c2[1390]))))))))))))))))))))))))))))))))));
//row: 13
d2[65]=_mm_xor_si128(c2[901],_mm_xor_si128(c2[200],_mm_xor_si128(c2[1302],_mm_xor_si128(c2[0],_mm_xor_si128(c2[911],_mm_xor_si128(c2[712],_mm_xor_si128(c2[14],_mm_xor_si128(c2[1513],_mm_xor_si128(c2[12],_mm_xor_si128(c2[921],_mm_xor_si128(c2[922],_mm_xor_si128(c2[822],_mm_xor_si128(c2[931],_mm_xor_si128(c2[534],_mm_xor_si128(c2[1232],_mm_xor_si128(c2[941],_mm_xor_si128(c2[242],_mm_xor_si128(c2[43],_mm_xor_si128(c2[1542],_mm_xor_si128(c2[951],_mm_xor_si128(c2[1250],_mm_xor_si128(c2[1150],_mm_xor_si128(c2[961],_mm_xor_si128(c2[162],_mm_xor_si128(c2[662],_mm_xor_si128(c2[562],_mm_xor_si128(c2[971],_mm_xor_si128(c2[370],_mm_xor_si128(c2[270],_mm_xor_si128(c2[981],_mm_xor_si128(c2[583],_mm_xor_si128(c2[1584],_mm_xor_si128(c2[1484],_mm_xor_si128(c2[681],_mm_xor_si128(c2[991],_mm_xor_si128(c2[90],_mm_xor_si128(c2[894],c2[794])))))))))))))))))))))))))))))))))))));
//row: 14
d2[70]=_mm_xor_si128(c2[903],_mm_xor_si128(c2[803],_mm_xor_si128(c2[1001],_mm_xor_si128(c2[102],_mm_xor_si128(c2[300],_mm_xor_si128(c2[1204],_mm_xor_si128(c2[1402],_mm_xor_si128(c2[913],_mm_xor_si128(c2[813],_mm_xor_si128(c2[1011],_mm_xor_si128(c2[614],_mm_xor_si128(c2[812],_mm_xor_si128(c2[1410],_mm_xor_si128(c2[114],_mm_xor_si128(c2[14],_mm_xor_si128(c2[10],_mm_xor_si128(c2[923],_mm_xor_si128(c2[823],_mm_xor_si128(c2[1021],_mm_xor_si128(c2[724],_mm_xor_si128(c2[1022],_mm_xor_si128(c2[922],_mm_xor_si128(c2[933],_mm_xor_si128(c2[833],_mm_xor_si128(c2[1031],_mm_xor_si128(c2[431],_mm_xor_si128(c2[634],_mm_xor_si128(c2[1134],_mm_xor_si128(c2[1332],_mm_xor_si128(c2[843],_mm_xor_si128(c2[1041],_mm_xor_si128(c2[144],_mm_xor_si128(c2[342],_mm_xor_si128(c2[1444],_mm_xor_si128(c2[143],_mm_xor_si128(c2[43],_mm_xor_si128(c2[853],_mm_xor_si128(c2[1051],_mm_xor_si128(c2[1052],_mm_xor_si128(c2[1350],_mm_xor_si128(c2[1250],_mm_xor_si128(c2[963],_mm_xor_si128(c2[863],_mm_xor_si128(c2[1061],_mm_xor_si128(c2[64],_mm_xor_si128(c2[262],_mm_xor_si128(c2[464],_mm_xor_si128(c2[762],_mm_xor_si128(c2[662],_mm_xor_si128(c2[1063],_mm_xor_si128(c2[873],_mm_xor_si128(c2[1071],_mm_xor_si128(c2[172],_mm_xor_si128(c2[470],_mm_xor_si128(c2[370],_mm_xor_si128(c2[883],_mm_xor_si128(c2[1081],_mm_xor_si128(c2[480],_mm_xor_si128(c2[683],_mm_xor_si128(c2[1381],_mm_xor_si128(c2[80],_mm_xor_si128(c2[1584],_mm_xor_si128(c2[993],_mm_xor_si128(c2[893],_mm_xor_si128(c2[1091],_mm_xor_si128(c2[1591],_mm_xor_si128(c2[190],_mm_xor_si128(c2[691],_mm_xor_si128(c2[994],c2[894])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 15
d2[75]=_mm_xor_si128(c2[804],_mm_xor_si128(c2[301],_mm_xor_si128(c2[201],_mm_xor_si128(c2[103],_mm_xor_si128(c2[1104],_mm_xor_si128(c2[1200],_mm_xor_si128(c2[602],_mm_xor_si128(c2[0],_mm_xor_si128(c2[814],_mm_xor_si128(c2[311],_mm_xor_si128(c2[211],_mm_xor_si128(c2[610],_mm_xor_si128(c2[12],_mm_xor_si128(c2[1411],_mm_xor_si128(c2[813],_mm_xor_si128(c2[824],_mm_xor_si128(c2[321],_mm_xor_si128(c2[221],_mm_xor_si128(c2[720],_mm_xor_si128(c2[122],_mm_xor_si128(c2[834],_mm_xor_si128(c2[331],_mm_xor_si128(c2[231],_mm_xor_si128(c2[432],_mm_xor_si128(c2[1433],_mm_xor_si128(c2[1130],_mm_xor_si128(c2[532],_mm_xor_si128(c2[844],_mm_xor_si128(c2[241],_mm_xor_si128(c2[140],_mm_xor_si128(c2[1141],_mm_xor_si128(c2[1440],_mm_xor_si128(c2[842],_mm_xor_si128(c2[854],_mm_xor_si128(c2[251],_mm_xor_si128(c2[1053],_mm_xor_si128(c2[450],_mm_xor_si128(c2[864],_mm_xor_si128(c2[361],_mm_xor_si128(c2[261],_mm_xor_si128(c2[60],_mm_xor_si128(c2[1061],_mm_xor_si128(c2[460],_mm_xor_si128(c2[1461],_mm_xor_si128(c2[874],_mm_xor_si128(c2[271],_mm_xor_si128(c2[173],_mm_xor_si128(c2[1174],_mm_xor_si128(c2[884],_mm_xor_si128(c2[281],_mm_xor_si128(c2[481],_mm_xor_si128(c2[1482],_mm_xor_si128(c2[1382],_mm_xor_si128(c2[784],_mm_xor_si128(c2[894],_mm_xor_si128(c2[391],_mm_xor_si128(c2[291],_mm_xor_si128(c2[1592],_mm_xor_si128(c2[994],_mm_xor_si128(c2[692],c2[94]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 16
d2[80]=_mm_xor_si128(c2[1501],_mm_xor_si128(c2[1401],_mm_xor_si128(c2[1503],_mm_xor_si128(c2[1403],_mm_xor_si128(c2[700],_mm_xor_si128(c2[802],_mm_xor_si128(c2[702],_mm_xor_si128(c2[203],_mm_xor_si128(c2[200],_mm_xor_si128(c2[1511],_mm_xor_si128(c2[1411],_mm_xor_si128(c2[1513],_mm_xor_si128(c2[1413],_mm_xor_si128(c2[1212],_mm_xor_si128(c2[1214],_mm_xor_si128(c2[414],_mm_xor_si128(c2[411],_mm_xor_si128(c2[10],_mm_xor_si128(c2[1521],_mm_xor_si128(c2[1421],_mm_xor_si128(c2[1523],_mm_xor_si128(c2[1423],_mm_xor_si128(c2[1322],_mm_xor_si128(c2[1324],_mm_xor_si128(c2[1531],_mm_xor_si128(c2[1431],_mm_xor_si128(c2[1533],_mm_xor_si128(c2[1433],_mm_xor_si128(c2[1034],_mm_xor_si128(c2[1131],_mm_xor_si128(c2[1031],_mm_xor_si128(c2[133],_mm_xor_si128(c2[130],_mm_xor_si128(c2[1441],_mm_xor_si128(c2[1543],_mm_xor_si128(c2[1443],_mm_xor_si128(c2[742],_mm_xor_si128(c2[744],_mm_xor_si128(c2[443],_mm_xor_si128(c2[440],_mm_xor_si128(c2[1451],_mm_xor_si128(c2[1553],_mm_xor_si128(c2[1453],_mm_xor_si128(c2[51],_mm_xor_si128(c2[53],_mm_xor_si128(c2[1561],_mm_xor_si128(c2[1461],_mm_xor_si128(c2[1563],_mm_xor_si128(c2[1463],_mm_xor_si128(c2[662],_mm_xor_si128(c2[764],_mm_xor_si128(c2[664],_mm_xor_si128(c2[1062],_mm_xor_si128(c2[1064],_mm_xor_si128(c2[1471],_mm_xor_si128(c2[1573],_mm_xor_si128(c2[1473],_mm_xor_si128(c2[770],_mm_xor_si128(c2[772],_mm_xor_si128(c2[1481],_mm_xor_si128(c2[1583],_mm_xor_si128(c2[1483],_mm_xor_si128(c2[1083],_mm_xor_si128(c2[1080],_mm_xor_si128(c2[380],_mm_xor_si128(c2[382],_mm_xor_si128(c2[1591],_mm_xor_si128(c2[1491],_mm_xor_si128(c2[1593],_mm_xor_si128(c2[1493],_mm_xor_si128(c2[590],_mm_xor_si128(c2[692],_mm_xor_si128(c2[592],_mm_xor_si128(c2[1294],_mm_xor_si128(c2[1291],c2[1594])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 17
d2[85]=_mm_xor_si128(c2[1301],_mm_xor_si128(c2[1201],_mm_xor_si128(c2[201],_mm_xor_si128(c2[101],_mm_xor_si128(c2[500],_mm_xor_si128(c2[1104],_mm_xor_si128(c2[1004],_mm_xor_si128(c2[3],_mm_xor_si128(c2[502],_mm_xor_si128(c2[1311],_mm_xor_si128(c2[1211],_mm_xor_si128(c2[211],_mm_xor_si128(c2[111],_mm_xor_si128(c2[1012],_mm_xor_si128(c2[1511],_mm_xor_si128(c2[214],_mm_xor_si128(c2[713],_mm_xor_si128(c2[10],_mm_xor_si128(c2[1321],_mm_xor_si128(c2[1221],_mm_xor_si128(c2[221],_mm_xor_si128(c2[121],_mm_xor_si128(c2[1122],_mm_xor_si128(c2[22],_mm_xor_si128(c2[1331],_mm_xor_si128(c2[1231],_mm_xor_si128(c2[231],_mm_xor_si128(c2[131],_mm_xor_si128(c2[834],_mm_xor_si128(c2[1433],_mm_xor_si128(c2[1333],_mm_xor_si128(c2[1532],_mm_xor_si128(c2[432],_mm_xor_si128(c2[1241],_mm_xor_si128(c2[241],_mm_xor_si128(c2[141],_mm_xor_si128(c2[542],_mm_xor_si128(c2[1041],_mm_xor_si128(c2[243],_mm_xor_si128(c2[742],_mm_xor_si128(c2[1251],_mm_xor_si128(c2[251],_mm_xor_si128(c2[151],_mm_xor_si128(c2[1450],_mm_xor_si128(c2[350],_mm_xor_si128(c2[851],_mm_xor_si128(c2[1361],_mm_xor_si128(c2[1261],_mm_xor_si128(c2[261],_mm_xor_si128(c2[161],_mm_xor_si128(c2[462],_mm_xor_si128(c2[1061],_mm_xor_si128(c2[961],_mm_xor_si128(c2[862],_mm_xor_si128(c2[1361],_mm_xor_si128(c2[1271],_mm_xor_si128(c2[271],_mm_xor_si128(c2[171],_mm_xor_si128(c2[570],_mm_xor_si128(c2[1074],_mm_xor_si128(c2[1281],_mm_xor_si128(c2[281],_mm_xor_si128(c2[181],_mm_xor_si128(c2[883],_mm_xor_si128(c2[1382],_mm_xor_si128(c2[180],_mm_xor_si128(c2[684],_mm_xor_si128(c2[1391],_mm_xor_si128(c2[1291],_mm_xor_si128(c2[291],_mm_xor_si128(c2[191],_mm_xor_si128(c2[390],_mm_xor_si128(c2[994],_mm_xor_si128(c2[894],_mm_xor_si128(c2[1094],c2[1593])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 18
d2[90]=_mm_xor_si128(c2[0],_mm_xor_si128(c2[261],c2[670]));
//row: 19
d2[95]=_mm_xor_si128(c2[904],_mm_xor_si128(c2[203],_mm_xor_si128(c2[1300],_mm_xor_si128(c2[0],_mm_xor_si128(c2[914],_mm_xor_si128(c2[710],_mm_xor_si128(c2[1511],_mm_xor_si128(c2[1414],_mm_xor_si128(c2[924],_mm_xor_si128(c2[820],_mm_xor_si128(c2[934],_mm_xor_si128(c2[532],_mm_xor_si128(c2[1230],_mm_xor_si128(c2[944],_mm_xor_si128(c2[240],_mm_xor_si128(c2[1540],_mm_xor_si128(c2[954],_mm_xor_si128(c2[1153],_mm_xor_si128(c2[964],_mm_xor_si128(c2[160],_mm_xor_si128(c2[560],_mm_xor_si128(c2[974],_mm_xor_si128(c2[273],_mm_xor_si128(c2[984],_mm_xor_si128(c2[581],_mm_xor_si128(c2[1482],_mm_xor_si128(c2[994],_mm_xor_si128(c2[93],c2[792]))))))))))))))))))))))))))));
//row: 20
d2[100]=_mm_xor_si128(c2[801],_mm_xor_si128(c2[701],_mm_xor_si128(c2[0],_mm_xor_si128(c2[1102],_mm_xor_si128(c2[811],_mm_xor_si128(c2[711],_mm_xor_si128(c2[512],_mm_xor_si128(c2[1313],_mm_xor_si128(c2[10],_mm_xor_si128(c2[821],_mm_xor_si128(c2[721],_mm_xor_si128(c2[622],_mm_xor_si128(c2[831],_mm_xor_si128(c2[731],_mm_xor_si128(c2[334],_mm_xor_si128(c2[1032],_mm_xor_si128(c2[741],_mm_xor_si128(c2[42],_mm_xor_si128(c2[1342],_mm_xor_si128(c2[444],_mm_xor_si128(c2[751],_mm_xor_si128(c2[950],_mm_xor_si128(c2[861],_mm_xor_si128(c2[761],_mm_xor_si128(c2[1561],_mm_xor_si128(c2[362],_mm_xor_si128(c2[771],_mm_xor_si128(c2[70],_mm_xor_si128(c2[781],_mm_xor_si128(c2[383],_mm_xor_si128(c2[1284],_mm_xor_si128(c2[891],_mm_xor_si128(c2[791],_mm_xor_si128(c2[1494],c2[594]))))))))))))))))))))))))))))))))));
//row: 21
d2[105]=_mm_xor_si128(c2[2],_mm_xor_si128(c2[900],_mm_xor_si128(c2[403],_mm_xor_si128(c2[0],_mm_xor_si128(c2[12],_mm_xor_si128(c2[1412],_mm_xor_si128(c2[714],_mm_xor_si128(c2[614],_mm_xor_si128(c2[22],_mm_xor_si128(c2[23],_mm_xor_si128(c2[1522],_mm_xor_si128(c2[32],_mm_xor_si128(c2[1234],_mm_xor_si128(c2[333],_mm_xor_si128(c2[42],_mm_xor_si128(c2[942],_mm_xor_si128(c2[743],_mm_xor_si128(c2[643],_mm_xor_si128(c2[52],_mm_xor_si128(c2[351],_mm_xor_si128(c2[251],_mm_xor_si128(c2[62],_mm_xor_si128(c2[862],_mm_xor_si128(c2[1362],_mm_xor_si128(c2[1262],_mm_xor_si128(c2[72],_mm_xor_si128(c2[1070],_mm_xor_si128(c2[970],_mm_xor_si128(c2[82],_mm_xor_si128(c2[1283],_mm_xor_si128(c2[680],_mm_xor_si128(c2[580],_mm_xor_si128(c2[181],_mm_xor_si128(c2[92],_mm_xor_si128(c2[790],_mm_xor_si128(c2[1594],c2[1494]))))))))))))))))))))))))))))))))))));
//row: 22
d2[110]=_mm_xor_si128(c2[10],c2[420]);
//row: 23
d2[115]=_mm_xor_si128(c2[0],_mm_xor_si128(c2[1134],c2[1454]));
//row: 24
d2[120]=_mm_xor_si128(c2[10],_mm_xor_si128(c2[524],c2[790]));
//row: 25
d2[125]=_mm_xor_si128(c2[0],c2[154]);
//row: 26
d2[130]=_mm_xor_si128(c2[1300],_mm_xor_si128(c2[1200],_mm_xor_si128(c2[600],_mm_xor_si128(c2[604],_mm_xor_si128(c2[504],_mm_xor_si128(c2[1503],_mm_xor_si128(c2[2],_mm_xor_si128(c2[1001],_mm_xor_si128(c2[1310],_mm_xor_si128(c2[1210],_mm_xor_si128(c2[610],_mm_xor_si128(c2[1011],_mm_xor_si128(c2[411],_mm_xor_si128(c2[213],_mm_xor_si128(c2[1312],_mm_xor_si128(c2[1212],_mm_xor_si128(c2[1320],_mm_xor_si128(c2[1220],_mm_xor_si128(c2[620],_mm_xor_si128(c2[1121],_mm_xor_si128(c2[621],_mm_xor_si128(c2[521],_mm_xor_si128(c2[20],_mm_xor_si128(c2[1330],_mm_xor_si128(c2[1230],_mm_xor_si128(c2[630],_mm_xor_si128(c2[933],_mm_xor_si128(c2[833],_mm_xor_si128(c2[233],_mm_xor_si128(c2[1531],_mm_xor_si128(c2[931],_mm_xor_si128(c2[1340],_mm_xor_si128(c2[1240],_mm_xor_si128(c2[640],_mm_xor_si128(c2[541],_mm_xor_si128(c2[1540],_mm_xor_si128(c2[242],_mm_xor_si128(c2[1341],_mm_xor_si128(c2[1241],_mm_xor_si128(c2[1350],_mm_xor_si128(c2[1250],_mm_xor_si128(c2[650],_mm_xor_si128(c2[1454],_mm_xor_si128(c2[954],_mm_xor_si128(c2[854],_mm_xor_si128(c2[1360],_mm_xor_si128(c2[1260],_mm_xor_si128(c2[660],_mm_xor_si128(c2[561],_mm_xor_si128(c2[461],_mm_xor_si128(c2[1460],_mm_xor_si128(c2[861],_mm_xor_si128(c2[361],_mm_xor_si128(c2[261],_mm_xor_si128(c2[1370],_mm_xor_si128(c2[1270],_mm_xor_si128(c2[670],_mm_xor_si128(c2[574],_mm_xor_si128(c2[74],_mm_xor_si128(c2[1573],_mm_xor_si128(c2[471],_mm_xor_si128(c2[1380],_mm_xor_si128(c2[1280],_mm_xor_si128(c2[680],_mm_xor_si128(c2[882],_mm_xor_si128(c2[282],_mm_xor_si128(c2[184],_mm_xor_si128(c2[1283],_mm_xor_si128(c2[1183],_mm_xor_si128(c2[1390],_mm_xor_si128(c2[1290],_mm_xor_si128(c2[690],_mm_xor_si128(c2[494],_mm_xor_si128(c2[394],_mm_xor_si128(c2[1393],_mm_xor_si128(c2[1093],_mm_xor_si128(c2[593],c2[493])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 27
d2[135]=_mm_xor_si128(c2[0],c2[62]);
//row: 28
d2[140]=_mm_xor_si128(c2[10],_mm_xor_si128(c2[1422],c2[1451]));
//row: 29
d2[145]=_mm_xor_si128(c2[0],c2[1044]);
//row: 30
d2[150]=_mm_xor_si128(c2[20],_mm_xor_si128(c2[352],_mm_xor_si128(c2[373],c2[693])));
//row: 31
d2[155]=_mm_xor_si128(c2[301],_mm_xor_si128(c2[1204],_mm_xor_si128(c2[702],_mm_xor_si128(c2[311],_mm_xor_si128(c2[112],_mm_xor_si128(c2[1013],_mm_xor_si128(c2[913],_mm_xor_si128(c2[10],_mm_xor_si128(c2[321],_mm_xor_si128(c2[322],_mm_xor_si128(c2[222],_mm_xor_si128(c2[331],_mm_xor_si128(c2[1533],_mm_xor_si128(c2[632],_mm_xor_si128(c2[341],_mm_xor_si128(c2[1241],_mm_xor_si128(c2[1042],_mm_xor_si128(c2[942],_mm_xor_si128(c2[351],_mm_xor_si128(c2[650],_mm_xor_si128(c2[550],_mm_xor_si128(c2[361],_mm_xor_si128(c2[1161],_mm_xor_si128(c2[62],_mm_xor_si128(c2[1561],_mm_xor_si128(c2[371],_mm_xor_si128(c2[1374],_mm_xor_si128(c2[1274],_mm_xor_si128(c2[381],_mm_xor_si128(c2[1582],_mm_xor_si128(c2[984],_mm_xor_si128(c2[884],_mm_xor_si128(c2[391],_mm_xor_si128(c2[1094],_mm_xor_si128(c2[294],c2[194])))))))))))))))))))))))))))))))))));
//row: 32
d2[160]=_mm_xor_si128(c2[1002],_mm_xor_si128(c2[902],_mm_xor_si128(c2[301],_mm_xor_si128(c2[201],_mm_xor_si128(c2[1303],_mm_xor_si128(c2[0],_mm_xor_si128(c2[1012],_mm_xor_si128(c2[912],_mm_xor_si128(c2[713],_mm_xor_si128(c2[1514],_mm_xor_si128(c2[1022],_mm_xor_si128(c2[922],_mm_xor_si128(c2[823],_mm_xor_si128(c2[1032],_mm_xor_si128(c2[932],_mm_xor_si128(c2[630],_mm_xor_si128(c2[530],_mm_xor_si128(c2[1233],_mm_xor_si128(c2[1042],_mm_xor_si128(c2[942],_mm_xor_si128(c2[243],_mm_xor_si128(c2[1543],_mm_xor_si128(c2[1052],_mm_xor_si128(c2[952],_mm_xor_si128(c2[1151],_mm_xor_si128(c2[451],_mm_xor_si128(c2[1062],_mm_xor_si128(c2[962],_mm_xor_si128(c2[263],_mm_xor_si128(c2[163],_mm_xor_si128(c2[563],_mm_xor_si128(c2[1072],_mm_xor_si128(c2[972],_mm_xor_si128(c2[271],_mm_xor_si128(c2[1082],_mm_xor_si128(c2[982],_mm_xor_si128(c2[584],_mm_xor_si128(c2[1480],_mm_xor_si128(c2[1092],_mm_xor_si128(c2[992],_mm_xor_si128(c2[191],_mm_xor_si128(c2[91],c2[790]))))))))))))))))))))))))))))))))))))))))));
//row: 33
d2[165]=_mm_xor_si128(c2[1200],_mm_xor_si128(c2[504],_mm_xor_si128(c2[2],_mm_xor_si128(c2[1210],_mm_xor_si128(c2[1011],_mm_xor_si128(c2[213],_mm_xor_si128(c2[1220],_mm_xor_si128(c2[1121],_mm_xor_si128(c2[20],_mm_xor_si128(c2[1230],_mm_xor_si128(c2[833],_mm_xor_si128(c2[1531],_mm_xor_si128(c2[1240],_mm_xor_si128(c2[541],_mm_xor_si128(c2[242],_mm_xor_si128(c2[1250],_mm_xor_si128(c2[1454],_mm_xor_si128(c2[1260],_mm_xor_si128(c2[461],_mm_xor_si128(c2[861],_mm_xor_si128(c2[1270],_mm_xor_si128(c2[574],_mm_xor_si128(c2[870],_mm_xor_si128(c2[1280],_mm_xor_si128(c2[882],_mm_xor_si128(c2[184],_mm_xor_si128(c2[1290],_mm_xor_si128(c2[394],c2[1093]))))))))))))))))))))))))))));
//row: 34
d2[170]=_mm_xor_si128(c2[301],_mm_xor_si128(c2[201],_mm_xor_si128(c2[1304],_mm_xor_si128(c2[1204],_mm_xor_si128(c2[1104],_mm_xor_si128(c2[603],_mm_xor_si128(c2[602],_mm_xor_si128(c2[101],_mm_xor_si128(c2[0],_mm_xor_si128(c2[311],_mm_xor_si128(c2[211],_mm_xor_si128(c2[1314],_mm_xor_si128(c2[12],_mm_xor_si128(c2[1110],_mm_xor_si128(c2[813],_mm_xor_si128(c2[412],_mm_xor_si128(c2[312],_mm_xor_si128(c2[321],_mm_xor_si128(c2[221],_mm_xor_si128(c2[1324],_mm_xor_si128(c2[122],_mm_xor_si128(c2[1320],_mm_xor_si128(c2[1220],_mm_xor_si128(c2[331],_mm_xor_si128(c2[231],_mm_xor_si128(c2[1334],_mm_xor_si128(c2[1533],_mm_xor_si128(c2[1433],_mm_xor_si128(c2[932],_mm_xor_si128(c2[532],_mm_xor_si128(c2[31],_mm_xor_si128(c2[341],_mm_xor_si128(c2[241],_mm_xor_si128(c2[1344],_mm_xor_si128(c2[1141],_mm_xor_si128(c2[640],_mm_xor_si128(c2[842],_mm_xor_si128(c2[441],_mm_xor_si128(c2[341],_mm_xor_si128(c2[351],_mm_xor_si128(c2[251],_mm_xor_si128(c2[1354],_mm_xor_si128(c2[450],_mm_xor_si128(c2[54],_mm_xor_si128(c2[1553],_mm_xor_si128(c2[361],_mm_xor_si128(c2[261],_mm_xor_si128(c2[1364],_mm_xor_si128(c2[1161],_mm_xor_si128(c2[1061],_mm_xor_si128(c2[560],_mm_xor_si128(c2[1461],_mm_xor_si128(c2[1060],_mm_xor_si128(c2[960],_mm_xor_si128(c2[371],_mm_xor_si128(c2[271],_mm_xor_si128(c2[1374],_mm_xor_si128(c2[1174],_mm_xor_si128(c2[773],_mm_xor_si128(c2[673],_mm_xor_si128(c2[381],_mm_xor_si128(c2[281],_mm_xor_si128(c2[1384],_mm_xor_si128(c2[1482],_mm_xor_si128(c2[981],_mm_xor_si128(c2[784],_mm_xor_si128(c2[383],_mm_xor_si128(c2[283],_mm_xor_si128(c2[391],_mm_xor_si128(c2[291],_mm_xor_si128(c2[1394],_mm_xor_si128(c2[1094],_mm_xor_si128(c2[994],_mm_xor_si128(c2[493],_mm_xor_si128(c2[94],_mm_xor_si128(c2[1292],c2[1192]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 35
d2[175]=_mm_xor_si128(c2[600],_mm_xor_si128(c2[500],_mm_xor_si128(c2[1403],_mm_xor_si128(c2[901],_mm_xor_si128(c2[610],_mm_xor_si128(c2[510],_mm_xor_si128(c2[311],_mm_xor_si128(c2[1112],_mm_xor_si128(c2[10],_mm_xor_si128(c2[620],_mm_xor_si128(c2[520],_mm_xor_si128(c2[421],_mm_xor_si128(c2[630],_mm_xor_si128(c2[530],_mm_xor_si128(c2[133],_mm_xor_si128(c2[831],_mm_xor_si128(c2[540],_mm_xor_si128(c2[1440],_mm_xor_si128(c2[1141],_mm_xor_si128(c2[550],_mm_xor_si128(c2[754],_mm_xor_si128(c2[1354],_mm_xor_si128(c2[660],_mm_xor_si128(c2[560],_mm_xor_si128(c2[1360],_mm_xor_si128(c2[161],_mm_xor_si128(c2[570],_mm_xor_si128(c2[1473],_mm_xor_si128(c2[580],_mm_xor_si128(c2[182],_mm_xor_si128(c2[1083],_mm_xor_si128(c2[690],_mm_xor_si128(c2[590],_mm_xor_si128(c2[1293],c2[393]))))))))))))))))))))))))))))))))));
//row: 36
d2[180]=_mm_xor_si128(c2[0],_mm_xor_si128(c2[1523],c2[270]));
//row: 37
d2[185]=_mm_xor_si128(c2[1504],_mm_xor_si128(c2[1503],_mm_xor_si128(c2[803],_mm_xor_si128(c2[802],_mm_xor_si128(c2[301],_mm_xor_si128(c2[300],_mm_xor_si128(c2[1514],_mm_xor_si128(c2[1513],_mm_xor_si128(c2[1310],_mm_xor_si128(c2[1314],_mm_xor_si128(c2[512],_mm_xor_si128(c2[611],_mm_xor_si128(c2[511],_mm_xor_si128(c2[1524],_mm_xor_si128(c2[1523],_mm_xor_si128(c2[1420],_mm_xor_si128(c2[1524],_mm_xor_si128(c2[1424],_mm_xor_si128(c2[1534],_mm_xor_si128(c2[1533],_mm_xor_si128(c2[1132],_mm_xor_si128(c2[1131],_mm_xor_si128(c2[231],_mm_xor_si128(c2[230],_mm_xor_si128(c2[1544],_mm_xor_si128(c2[1543],_mm_xor_si128(c2[840],_mm_xor_si128(c2[844],_mm_xor_si128(c2[541],_mm_xor_si128(c2[640],_mm_xor_si128(c2[540],_mm_xor_si128(c2[1554],_mm_xor_si128(c2[1553],_mm_xor_si128(c2[154],_mm_xor_si128(c2[253],_mm_xor_si128(c2[153],_mm_xor_si128(c2[1564],_mm_xor_si128(c2[1563],_mm_xor_si128(c2[760],_mm_xor_si128(c2[764],_mm_xor_si128(c2[1160],_mm_xor_si128(c2[1264],_mm_xor_si128(c2[1164],_mm_xor_si128(c2[1574],_mm_xor_si128(c2[1573],_mm_xor_si128(c2[873],_mm_xor_si128(c2[972],_mm_xor_si128(c2[872],_mm_xor_si128(c2[1584],_mm_xor_si128(c2[1583],_mm_xor_si128(c2[1181],_mm_xor_si128(c2[1180],_mm_xor_si128(c2[483],_mm_xor_si128(c2[582],_mm_xor_si128(c2[482],_mm_xor_si128(c2[1594],_mm_xor_si128(c2[1593],_mm_xor_si128(c2[693],_mm_xor_si128(c2[692],_mm_xor_si128(c2[1392],_mm_xor_si128(c2[1491],c2[1391])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 38
d2[190]=_mm_xor_si128(c2[301],_mm_xor_si128(c2[201],_mm_xor_si128(c2[1104],_mm_xor_si128(c2[602],_mm_xor_si128(c2[311],_mm_xor_si128(c2[211],_mm_xor_si128(c2[12],_mm_xor_si128(c2[813],_mm_xor_si128(c2[10],_mm_xor_si128(c2[321],_mm_xor_si128(c2[221],_mm_xor_si128(c2[122],_mm_xor_si128(c2[331],_mm_xor_si128(c2[231],_mm_xor_si128(c2[1433],_mm_xor_si128(c2[532],_mm_xor_si128(c2[241],_mm_xor_si128(c2[1141],_mm_xor_si128(c2[842],_mm_xor_si128(c2[251],_mm_xor_si128(c2[450],_mm_xor_si128(c2[1350],_mm_xor_si128(c2[361],_mm_xor_si128(c2[261],_mm_xor_si128(c2[1061],_mm_xor_si128(c2[1461],_mm_xor_si128(c2[271],_mm_xor_si128(c2[1174],_mm_xor_si128(c2[281],_mm_xor_si128(c2[1482],_mm_xor_si128(c2[784],_mm_xor_si128(c2[391],_mm_xor_si128(c2[291],_mm_xor_si128(c2[994],c2[94]))))))))))))))))))))))))))))))))));
//row: 39
d2[195]=_mm_xor_si128(c2[1003],_mm_xor_si128(c2[903],_mm_xor_si128(c2[302],_mm_xor_si128(c2[202],_mm_xor_si128(c2[1304],_mm_xor_si128(c2[0],_mm_xor_si128(c2[1013],_mm_xor_si128(c2[913],_mm_xor_si128(c2[714],_mm_xor_si128(c2[1510],_mm_xor_si128(c2[1023],_mm_xor_si128(c2[923],_mm_xor_si128(c2[824],_mm_xor_si128(c2[1033],_mm_xor_si128(c2[933],_mm_xor_si128(c2[631],_mm_xor_si128(c2[531],_mm_xor_si128(c2[1234],_mm_xor_si128(c2[1043],_mm_xor_si128(c2[943],_mm_xor_si128(c2[244],_mm_xor_si128(c2[1544],_mm_xor_si128(c2[1053],_mm_xor_si128(c2[953],_mm_xor_si128(c2[1152],_mm_xor_si128(c2[1063],_mm_xor_si128(c2[963],_mm_xor_si128(c2[264],_mm_xor_si128(c2[164],_mm_xor_si128(c2[564],_mm_xor_si128(c2[1073],_mm_xor_si128(c2[973],_mm_xor_si128(c2[272],_mm_xor_si128(c2[871],_mm_xor_si128(c2[1083],_mm_xor_si128(c2[983],_mm_xor_si128(c2[580],_mm_xor_si128(c2[1481],_mm_xor_si128(c2[1093],_mm_xor_si128(c2[993],_mm_xor_si128(c2[192],_mm_xor_si128(c2[92],c2[791]))))))))))))))))))))))))))))))))))))))))));
//row: 40
d2[200]=_mm_xor_si128(c2[302],_mm_xor_si128(c2[1403],_mm_xor_si128(c2[1200],_mm_xor_si128(c2[702],_mm_xor_si128(c2[703],_mm_xor_si128(c2[200],_mm_xor_si128(c2[312],_mm_xor_si128(c2[1413],_mm_xor_si128(c2[113],_mm_xor_si128(c2[1214],_mm_xor_si128(c2[914],_mm_xor_si128(c2[511],_mm_xor_si128(c2[411],_mm_xor_si128(c2[322],_mm_xor_si128(c2[1423],_mm_xor_si128(c2[223],_mm_xor_si128(c2[1424],_mm_xor_si128(c2[1324],_mm_xor_si128(c2[20],_mm_xor_si128(c2[332],_mm_xor_si128(c2[1433],_mm_xor_si128(c2[1534],_mm_xor_si128(c2[1031],_mm_xor_si128(c2[633],_mm_xor_si128(c2[130],_mm_xor_si128(c2[342],_mm_xor_si128(c2[1443],_mm_xor_si128(c2[1242],_mm_xor_si128(c2[744],_mm_xor_si128(c2[943],_mm_xor_si128(c2[540],_mm_xor_si128(c2[440],_mm_xor_si128(c2[352],_mm_xor_si128(c2[1453],_mm_xor_si128(c2[551],_mm_xor_si128(c2[153],_mm_xor_si128(c2[53],_mm_xor_si128(c2[362],_mm_xor_si128(c2[1463],_mm_xor_si128(c2[1162],_mm_xor_si128(c2[664],_mm_xor_si128(c2[1562],_mm_xor_si128(c2[1164],_mm_xor_si128(c2[1064],_mm_xor_si128(c2[372],_mm_xor_si128(c2[1473],_mm_xor_si128(c2[1270],_mm_xor_si128(c2[872],_mm_xor_si128(c2[772],_mm_xor_si128(c2[382],_mm_xor_si128(c2[1483],_mm_xor_si128(c2[1583],_mm_xor_si128(c2[1080],_mm_xor_si128(c2[880],_mm_xor_si128(c2[482],_mm_xor_si128(c2[382],_mm_xor_si128(c2[392],_mm_xor_si128(c2[1493],_mm_xor_si128(c2[1090],_mm_xor_si128(c2[592],_mm_xor_si128(c2[190],_mm_xor_si128(c2[1391],c2[1291]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 41
d2[205]=_mm_xor_si128(c2[703],_mm_xor_si128(c2[603],_mm_xor_si128(c2[1501],_mm_xor_si128(c2[1004],_mm_xor_si128(c2[713],_mm_xor_si128(c2[613],_mm_xor_si128(c2[414],_mm_xor_si128(c2[1210],_mm_xor_si128(c2[10],_mm_xor_si128(c2[723],_mm_xor_si128(c2[623],_mm_xor_si128(c2[524],_mm_xor_si128(c2[733],_mm_xor_si128(c2[633],_mm_xor_si128(c2[231],_mm_xor_si128(c2[934],_mm_xor_si128(c2[643],_mm_xor_si128(c2[1543],_mm_xor_si128(c2[1244],_mm_xor_si128(c2[653],_mm_xor_si128(c2[852],_mm_xor_si128(c2[250],_mm_xor_si128(c2[763],_mm_xor_si128(c2[663],_mm_xor_si128(c2[1463],_mm_xor_si128(c2[264],_mm_xor_si128(c2[673],_mm_xor_si128(c2[1571],_mm_xor_si128(c2[683],_mm_xor_si128(c2[280],_mm_xor_si128(c2[1181],_mm_xor_si128(c2[793],_mm_xor_si128(c2[693],_mm_xor_si128(c2[1391],c2[491]))))))))))))))))))))))))))))))))));
}
}