-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmatmul_tvm.h
1312 lines (1310 loc) · 169 KB
/
matmul_tvm.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#ifdef _WIN32
using uint = unsigned int;
using uchar = unsigned char;
using ushort = unsigned short;
using int64_t = long long;
using uint64_t = unsigned long long;
#else
#define uint unsigned int
#define uchar unsigned char
#define ushort unsigned short
#define int64_t long long
#define uint64_t unsigned long long
#endif
extern "C" __global__ void __launch_bounds__(256) main_kernel0(float* __restrict__ A, float* __restrict__ B, float* __restrict__ C) {
float C_local[128];
__shared__ float A_shared[2048];
__shared__ float B_shared[1024];
C_local[0] = 0.000000e+00f;
C_local[32] = 0.000000e+00f;
C_local[64] = 0.000000e+00f;
C_local[96] = 0.000000e+00f;
C_local[2] = 0.000000e+00f;
C_local[34] = 0.000000e+00f;
C_local[66] = 0.000000e+00f;
C_local[98] = 0.000000e+00f;
C_local[4] = 0.000000e+00f;
C_local[36] = 0.000000e+00f;
C_local[68] = 0.000000e+00f;
C_local[100] = 0.000000e+00f;
C_local[6] = 0.000000e+00f;
C_local[38] = 0.000000e+00f;
C_local[70] = 0.000000e+00f;
C_local[102] = 0.000000e+00f;
C_local[8] = 0.000000e+00f;
C_local[40] = 0.000000e+00f;
C_local[72] = 0.000000e+00f;
C_local[104] = 0.000000e+00f;
C_local[10] = 0.000000e+00f;
C_local[42] = 0.000000e+00f;
C_local[74] = 0.000000e+00f;
C_local[106] = 0.000000e+00f;
C_local[12] = 0.000000e+00f;
C_local[44] = 0.000000e+00f;
C_local[76] = 0.000000e+00f;
C_local[108] = 0.000000e+00f;
C_local[14] = 0.000000e+00f;
C_local[46] = 0.000000e+00f;
C_local[78] = 0.000000e+00f;
C_local[110] = 0.000000e+00f;
C_local[1] = 0.000000e+00f;
C_local[33] = 0.000000e+00f;
C_local[65] = 0.000000e+00f;
C_local[97] = 0.000000e+00f;
C_local[3] = 0.000000e+00f;
C_local[35] = 0.000000e+00f;
C_local[67] = 0.000000e+00f;
C_local[99] = 0.000000e+00f;
C_local[5] = 0.000000e+00f;
C_local[37] = 0.000000e+00f;
C_local[69] = 0.000000e+00f;
C_local[101] = 0.000000e+00f;
C_local[7] = 0.000000e+00f;
C_local[39] = 0.000000e+00f;
C_local[71] = 0.000000e+00f;
C_local[103] = 0.000000e+00f;
C_local[9] = 0.000000e+00f;
C_local[41] = 0.000000e+00f;
C_local[73] = 0.000000e+00f;
C_local[105] = 0.000000e+00f;
C_local[11] = 0.000000e+00f;
C_local[43] = 0.000000e+00f;
C_local[75] = 0.000000e+00f;
C_local[107] = 0.000000e+00f;
C_local[13] = 0.000000e+00f;
C_local[45] = 0.000000e+00f;
C_local[77] = 0.000000e+00f;
C_local[109] = 0.000000e+00f;
C_local[15] = 0.000000e+00f;
C_local[47] = 0.000000e+00f;
C_local[79] = 0.000000e+00f;
C_local[111] = 0.000000e+00f;
C_local[16] = 0.000000e+00f;
C_local[48] = 0.000000e+00f;
C_local[80] = 0.000000e+00f;
C_local[112] = 0.000000e+00f;
C_local[18] = 0.000000e+00f;
C_local[50] = 0.000000e+00f;
C_local[82] = 0.000000e+00f;
C_local[114] = 0.000000e+00f;
C_local[20] = 0.000000e+00f;
C_local[52] = 0.000000e+00f;
C_local[84] = 0.000000e+00f;
C_local[116] = 0.000000e+00f;
C_local[22] = 0.000000e+00f;
C_local[54] = 0.000000e+00f;
C_local[86] = 0.000000e+00f;
C_local[118] = 0.000000e+00f;
C_local[24] = 0.000000e+00f;
C_local[56] = 0.000000e+00f;
C_local[88] = 0.000000e+00f;
C_local[120] = 0.000000e+00f;
C_local[26] = 0.000000e+00f;
C_local[58] = 0.000000e+00f;
C_local[90] = 0.000000e+00f;
C_local[122] = 0.000000e+00f;
C_local[28] = 0.000000e+00f;
C_local[60] = 0.000000e+00f;
C_local[92] = 0.000000e+00f;
C_local[124] = 0.000000e+00f;
C_local[30] = 0.000000e+00f;
C_local[62] = 0.000000e+00f;
C_local[94] = 0.000000e+00f;
C_local[126] = 0.000000e+00f;
C_local[17] = 0.000000e+00f;
C_local[49] = 0.000000e+00f;
C_local[81] = 0.000000e+00f;
C_local[113] = 0.000000e+00f;
C_local[19] = 0.000000e+00f;
C_local[51] = 0.000000e+00f;
C_local[83] = 0.000000e+00f;
C_local[115] = 0.000000e+00f;
C_local[21] = 0.000000e+00f;
C_local[53] = 0.000000e+00f;
C_local[85] = 0.000000e+00f;
C_local[117] = 0.000000e+00f;
C_local[23] = 0.000000e+00f;
C_local[55] = 0.000000e+00f;
C_local[87] = 0.000000e+00f;
C_local[119] = 0.000000e+00f;
C_local[25] = 0.000000e+00f;
C_local[57] = 0.000000e+00f;
C_local[89] = 0.000000e+00f;
C_local[121] = 0.000000e+00f;
C_local[27] = 0.000000e+00f;
C_local[59] = 0.000000e+00f;
C_local[91] = 0.000000e+00f;
C_local[123] = 0.000000e+00f;
C_local[29] = 0.000000e+00f;
C_local[61] = 0.000000e+00f;
C_local[93] = 0.000000e+00f;
C_local[125] = 0.000000e+00f;
C_local[31] = 0.000000e+00f;
C_local[63] = 0.000000e+00f;
C_local[95] = 0.000000e+00f;
C_local[127] = 0.000000e+00f;
for (int k_0 = 0; k_0 < 128; ++k_0) {
__syncthreads();
*(float2*)(A_shared + (((int)threadIdx.x) * 2)) = *(float2*)(A + (((((((int)blockIdx.x) >> 3) * 262144) + ((((int)threadIdx.x) >> 2) * 1024)) + (k_0 * 8)) + ((((int)threadIdx.x) & 3) * 2)));
*(float2*)(A_shared + ((((int)threadIdx.x) * 2) + 512)) = *(float2*)(A + ((((((((int)blockIdx.x) >> 3) * 262144) + ((((int)threadIdx.x) >> 2) * 1024)) + (k_0 * 8)) + ((((int)threadIdx.x) & 3) * 2)) + 65536));
*(float2*)(A_shared + ((((int)threadIdx.x) * 2) + 1024)) = *(float2*)(A + ((((((((int)blockIdx.x) >> 3) * 262144) + ((((int)threadIdx.x) >> 2) * 1024)) + (k_0 * 8)) + ((((int)threadIdx.x) & 3) * 2)) + 131072));
*(float2*)(A_shared + ((((int)threadIdx.x) * 2) + 1536)) = *(float2*)(A + ((((((((int)blockIdx.x) >> 3) * 262144) + ((((int)threadIdx.x) >> 2) * 1024)) + (k_0 * 8)) + ((((int)threadIdx.x) & 3) * 2)) + 196608));
B_shared[((int)threadIdx.x)] = B[((((k_0 * 8192) + ((((int)threadIdx.x) >> 7) * 1024)) + ((((int)blockIdx.x) & 7) * 128)) + (((int)threadIdx.x) & 127))];
B_shared[(((int)threadIdx.x) + 256)] = B[(((((k_0 * 8192) + ((((int)threadIdx.x) >> 7) * 1024)) + ((((int)blockIdx.x) & 7) * 128)) + (((int)threadIdx.x) & 127)) + 2048)];
B_shared[(((int)threadIdx.x) + 512)] = B[(((((k_0 * 8192) + ((((int)threadIdx.x) >> 7) * 1024)) + ((((int)blockIdx.x) & 7) * 128)) + (((int)threadIdx.x) & 127)) + 4096)];
B_shared[(((int)threadIdx.x) + 768)] = B[(((((k_0 * 8192) + ((((int)threadIdx.x) >> 7) * 1024)) + ((((int)blockIdx.x) & 7) * 128)) + (((int)threadIdx.x) & 127)) + 6144)];
__syncthreads();
C_local[0] = (C_local[0] + (A_shared[((((int)threadIdx.x) >> 5) * 128)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[32] = (C_local[32] + (A_shared[((((int)threadIdx.x) >> 5) * 128)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[64] = (C_local[64] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1024)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[96] = (C_local[96] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1024)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[2] = (C_local[2] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 8)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[34] = (C_local[34] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 8)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[66] = (C_local[66] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1032)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[98] = (C_local[98] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1032)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[4] = (C_local[4] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 16)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[36] = (C_local[36] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 16)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[68] = (C_local[68] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1040)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[100] = (C_local[100] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1040)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[6] = (C_local[6] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 24)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[38] = (C_local[38] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 24)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[70] = (C_local[70] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1048)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[102] = (C_local[102] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1048)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[8] = (C_local[8] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 32)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[40] = (C_local[40] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 32)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[72] = (C_local[72] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1056)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[104] = (C_local[104] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1056)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[10] = (C_local[10] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 40)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[42] = (C_local[42] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 40)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[74] = (C_local[74] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1064)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[106] = (C_local[106] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1064)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[12] = (C_local[12] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 48)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[44] = (C_local[44] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 48)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[76] = (C_local[76] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1072)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[108] = (C_local[108] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1072)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[14] = (C_local[14] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 56)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[46] = (C_local[46] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 56)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[78] = (C_local[78] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1080)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[110] = (C_local[110] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1080)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[0] = (C_local[0] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[32] = (C_local[32] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[64] = (C_local[64] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1025)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[96] = (C_local[96] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1025)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[2] = (C_local[2] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 9)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[34] = (C_local[34] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 9)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[66] = (C_local[66] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1033)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[98] = (C_local[98] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1033)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[4] = (C_local[4] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 17)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[36] = (C_local[36] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 17)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[68] = (C_local[68] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1041)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[100] = (C_local[100] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1041)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[6] = (C_local[6] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 25)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[38] = (C_local[38] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 25)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[70] = (C_local[70] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1049)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[102] = (C_local[102] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1049)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[8] = (C_local[8] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 33)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[40] = (C_local[40] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 33)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[72] = (C_local[72] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1057)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[104] = (C_local[104] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1057)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[10] = (C_local[10] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 41)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[42] = (C_local[42] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 41)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[74] = (C_local[74] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1065)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[106] = (C_local[106] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1065)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[12] = (C_local[12] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 49)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[44] = (C_local[44] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 49)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[76] = (C_local[76] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1073)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[108] = (C_local[108] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1073)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[14] = (C_local[14] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 57)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[46] = (C_local[46] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 57)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[78] = (C_local[78] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1081)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[110] = (C_local[110] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1081)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[0] = (C_local[0] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 2)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[32] = (C_local[32] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 2)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[64] = (C_local[64] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1026)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[96] = (C_local[96] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1026)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[2] = (C_local[2] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 10)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[34] = (C_local[34] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 10)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[66] = (C_local[66] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1034)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[98] = (C_local[98] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1034)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[4] = (C_local[4] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 18)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[36] = (C_local[36] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 18)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[68] = (C_local[68] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1042)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[100] = (C_local[100] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1042)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[6] = (C_local[6] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 26)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[38] = (C_local[38] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 26)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[70] = (C_local[70] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1050)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[102] = (C_local[102] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1050)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[8] = (C_local[8] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 34)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[40] = (C_local[40] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 34)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[72] = (C_local[72] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1058)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[104] = (C_local[104] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1058)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[10] = (C_local[10] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 42)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[42] = (C_local[42] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 42)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[74] = (C_local[74] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1066)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[106] = (C_local[106] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1066)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[12] = (C_local[12] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 50)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[44] = (C_local[44] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 50)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[76] = (C_local[76] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1074)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[108] = (C_local[108] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1074)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[14] = (C_local[14] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 58)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[46] = (C_local[46] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 58)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[78] = (C_local[78] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1082)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[110] = (C_local[110] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1082)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[0] = (C_local[0] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 3)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[32] = (C_local[32] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 3)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[64] = (C_local[64] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1027)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[96] = (C_local[96] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1027)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[2] = (C_local[2] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 11)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[34] = (C_local[34] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 11)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[66] = (C_local[66] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1035)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[98] = (C_local[98] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1035)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[4] = (C_local[4] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 19)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[36] = (C_local[36] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 19)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[68] = (C_local[68] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1043)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[100] = (C_local[100] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1043)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[6] = (C_local[6] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 27)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[38] = (C_local[38] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 27)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[70] = (C_local[70] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1051)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[102] = (C_local[102] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1051)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[8] = (C_local[8] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 35)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[40] = (C_local[40] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 35)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[72] = (C_local[72] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1059)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[104] = (C_local[104] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1059)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[10] = (C_local[10] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 43)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[42] = (C_local[42] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 43)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[74] = (C_local[74] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1067)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[106] = (C_local[106] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1067)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[12] = (C_local[12] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 51)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[44] = (C_local[44] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 51)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[76] = (C_local[76] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1075)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[108] = (C_local[108] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1075)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[14] = (C_local[14] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 59)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[46] = (C_local[46] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 59)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[78] = (C_local[78] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1083)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[110] = (C_local[110] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1083)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[1] = (C_local[1] + (A_shared[((((int)threadIdx.x) >> 5) * 128)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[33] = (C_local[33] + (A_shared[((((int)threadIdx.x) >> 5) * 128)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[65] = (C_local[65] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1024)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[97] = (C_local[97] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1024)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[3] = (C_local[3] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 8)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[35] = (C_local[35] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 8)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[67] = (C_local[67] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1032)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[99] = (C_local[99] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1032)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[5] = (C_local[5] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 16)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[37] = (C_local[37] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 16)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[69] = (C_local[69] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1040)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[101] = (C_local[101] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1040)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[7] = (C_local[7] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 24)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[39] = (C_local[39] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 24)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[71] = (C_local[71] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1048)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[103] = (C_local[103] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1048)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[9] = (C_local[9] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 32)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[41] = (C_local[41] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 32)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[73] = (C_local[73] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1056)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[105] = (C_local[105] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1056)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[11] = (C_local[11] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 40)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[43] = (C_local[43] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 40)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[75] = (C_local[75] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1064)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[107] = (C_local[107] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1064)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[13] = (C_local[13] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 48)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[45] = (C_local[45] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 48)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[77] = (C_local[77] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1072)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[109] = (C_local[109] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1072)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[15] = (C_local[15] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 56)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[47] = (C_local[47] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 56)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[79] = (C_local[79] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1080)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[111] = (C_local[111] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1080)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[1] = (C_local[1] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[33] = (C_local[33] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[65] = (C_local[65] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1025)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[97] = (C_local[97] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1025)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[3] = (C_local[3] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 9)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[35] = (C_local[35] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 9)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[67] = (C_local[67] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1033)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[99] = (C_local[99] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1033)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[5] = (C_local[5] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 17)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[37] = (C_local[37] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 17)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[69] = (C_local[69] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1041)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[101] = (C_local[101] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1041)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[7] = (C_local[7] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 25)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[39] = (C_local[39] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 25)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[71] = (C_local[71] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1049)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[103] = (C_local[103] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1049)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[9] = (C_local[9] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 33)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[41] = (C_local[41] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 33)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[73] = (C_local[73] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1057)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[105] = (C_local[105] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1057)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[11] = (C_local[11] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 41)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[43] = (C_local[43] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 41)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[75] = (C_local[75] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1065)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[107] = (C_local[107] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1065)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[13] = (C_local[13] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 49)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[45] = (C_local[45] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 49)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[77] = (C_local[77] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1073)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[109] = (C_local[109] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1073)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[15] = (C_local[15] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 57)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[47] = (C_local[47] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 57)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[79] = (C_local[79] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1081)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[111] = (C_local[111] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1081)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[1] = (C_local[1] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 2)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[33] = (C_local[33] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 2)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[65] = (C_local[65] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1026)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[97] = (C_local[97] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1026)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[3] = (C_local[3] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 10)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[35] = (C_local[35] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 10)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[67] = (C_local[67] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1034)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[99] = (C_local[99] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1034)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[5] = (C_local[5] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 18)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[37] = (C_local[37] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 18)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[69] = (C_local[69] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1042)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[101] = (C_local[101] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1042)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[7] = (C_local[7] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 26)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[39] = (C_local[39] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 26)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[71] = (C_local[71] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1050)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[103] = (C_local[103] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1050)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[9] = (C_local[9] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 34)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[41] = (C_local[41] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 34)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[73] = (C_local[73] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1058)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[105] = (C_local[105] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1058)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[11] = (C_local[11] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 42)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[43] = (C_local[43] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 42)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[75] = (C_local[75] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1066)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[107] = (C_local[107] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1066)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[13] = (C_local[13] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 50)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[45] = (C_local[45] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 50)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[77] = (C_local[77] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1074)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[109] = (C_local[109] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1074)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[15] = (C_local[15] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 58)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[47] = (C_local[47] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 58)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[79] = (C_local[79] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1082)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[111] = (C_local[111] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1082)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[1] = (C_local[1] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 3)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[33] = (C_local[33] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 3)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[65] = (C_local[65] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1027)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[97] = (C_local[97] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1027)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[3] = (C_local[3] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 11)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[35] = (C_local[35] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 11)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[67] = (C_local[67] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1035)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[99] = (C_local[99] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1035)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[5] = (C_local[5] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 19)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[37] = (C_local[37] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 19)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[69] = (C_local[69] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1043)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[101] = (C_local[101] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1043)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[7] = (C_local[7] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 27)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[39] = (C_local[39] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 27)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[71] = (C_local[71] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1051)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[103] = (C_local[103] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1051)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[9] = (C_local[9] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 35)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[41] = (C_local[41] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 35)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[73] = (C_local[73] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1059)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[105] = (C_local[105] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1059)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[11] = (C_local[11] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 43)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[43] = (C_local[43] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 43)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[75] = (C_local[75] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1067)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[107] = (C_local[107] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1067)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[13] = (C_local[13] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 51)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[45] = (C_local[45] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 51)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[77] = (C_local[77] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1075)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[109] = (C_local[109] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1075)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[15] = (C_local[15] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 59)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[47] = (C_local[47] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 59)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[79] = (C_local[79] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1083)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[111] = (C_local[111] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1083)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[16] = (C_local[16] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 64)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[48] = (C_local[48] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 64)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[80] = (C_local[80] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1088)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[112] = (C_local[112] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1088)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[18] = (C_local[18] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 72)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[50] = (C_local[50] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 72)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[82] = (C_local[82] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1096)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[114] = (C_local[114] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1096)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[20] = (C_local[20] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 80)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[52] = (C_local[52] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 80)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[84] = (C_local[84] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1104)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[116] = (C_local[116] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1104)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[22] = (C_local[22] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 88)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[54] = (C_local[54] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 88)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[86] = (C_local[86] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1112)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[118] = (C_local[118] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1112)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[24] = (C_local[24] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 96)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[56] = (C_local[56] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 96)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[88] = (C_local[88] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1120)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[120] = (C_local[120] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1120)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[26] = (C_local[26] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 104)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[58] = (C_local[58] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 104)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[90] = (C_local[90] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1128)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[122] = (C_local[122] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1128)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[28] = (C_local[28] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 112)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[60] = (C_local[60] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 112)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[92] = (C_local[92] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1136)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[124] = (C_local[124] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1136)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[30] = (C_local[30] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 120)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[62] = (C_local[62] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 120)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[94] = (C_local[94] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1144)] * B_shared[((((int)threadIdx.x) & 31) * 2)]));
C_local[126] = (C_local[126] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1144)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 64)]));
C_local[16] = (C_local[16] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 65)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[48] = (C_local[48] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 65)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[80] = (C_local[80] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1089)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[112] = (C_local[112] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1089)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[18] = (C_local[18] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 73)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[50] = (C_local[50] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 73)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[82] = (C_local[82] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1097)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[114] = (C_local[114] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1097)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[20] = (C_local[20] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 81)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[52] = (C_local[52] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 81)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[84] = (C_local[84] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1105)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[116] = (C_local[116] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1105)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[22] = (C_local[22] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 89)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[54] = (C_local[54] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 89)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[86] = (C_local[86] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1113)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[118] = (C_local[118] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1113)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[24] = (C_local[24] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 97)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[56] = (C_local[56] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 97)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[88] = (C_local[88] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1121)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[120] = (C_local[120] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1121)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[26] = (C_local[26] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 105)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[58] = (C_local[58] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 105)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[90] = (C_local[90] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1129)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[122] = (C_local[122] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1129)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[28] = (C_local[28] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 113)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[60] = (C_local[60] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 113)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[92] = (C_local[92] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1137)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[124] = (C_local[124] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1137)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[30] = (C_local[30] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 121)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[62] = (C_local[62] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 121)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[94] = (C_local[94] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1145)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 128)]));
C_local[126] = (C_local[126] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1145)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 192)]));
C_local[16] = (C_local[16] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 66)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[48] = (C_local[48] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 66)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[80] = (C_local[80] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1090)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[112] = (C_local[112] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1090)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[18] = (C_local[18] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 74)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[50] = (C_local[50] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 74)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[82] = (C_local[82] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1098)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[114] = (C_local[114] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1098)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[20] = (C_local[20] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 82)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[52] = (C_local[52] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 82)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[84] = (C_local[84] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1106)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[116] = (C_local[116] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1106)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[22] = (C_local[22] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 90)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[54] = (C_local[54] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 90)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[86] = (C_local[86] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1114)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[118] = (C_local[118] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1114)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[24] = (C_local[24] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 98)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[56] = (C_local[56] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 98)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[88] = (C_local[88] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1122)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[120] = (C_local[120] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1122)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[26] = (C_local[26] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 106)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[58] = (C_local[58] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 106)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[90] = (C_local[90] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1130)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[122] = (C_local[122] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1130)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[28] = (C_local[28] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 114)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[60] = (C_local[60] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 114)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[92] = (C_local[92] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1138)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[124] = (C_local[124] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1138)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[30] = (C_local[30] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 122)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[62] = (C_local[62] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 122)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[94] = (C_local[94] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1146)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 256)]));
C_local[126] = (C_local[126] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1146)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 320)]));
C_local[16] = (C_local[16] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 67)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[48] = (C_local[48] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 67)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[80] = (C_local[80] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1091)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[112] = (C_local[112] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1091)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[18] = (C_local[18] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 75)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[50] = (C_local[50] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 75)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[82] = (C_local[82] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1099)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[114] = (C_local[114] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1099)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[20] = (C_local[20] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 83)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[52] = (C_local[52] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 83)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[84] = (C_local[84] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1107)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[116] = (C_local[116] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1107)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[22] = (C_local[22] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 91)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[54] = (C_local[54] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 91)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[86] = (C_local[86] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1115)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[118] = (C_local[118] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1115)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[24] = (C_local[24] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 99)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[56] = (C_local[56] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 99)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[88] = (C_local[88] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1123)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[120] = (C_local[120] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1123)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[26] = (C_local[26] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 107)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[58] = (C_local[58] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 107)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[90] = (C_local[90] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1131)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[122] = (C_local[122] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1131)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[28] = (C_local[28] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 115)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[60] = (C_local[60] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 115)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[92] = (C_local[92] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1139)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[124] = (C_local[124] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1139)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[30] = (C_local[30] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 123)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[62] = (C_local[62] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 123)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[94] = (C_local[94] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1147)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 384)]));
C_local[126] = (C_local[126] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1147)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 448)]));
C_local[17] = (C_local[17] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 64)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[49] = (C_local[49] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 64)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[81] = (C_local[81] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1088)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[113] = (C_local[113] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1088)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[19] = (C_local[19] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 72)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[51] = (C_local[51] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 72)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[83] = (C_local[83] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1096)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[115] = (C_local[115] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1096)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[21] = (C_local[21] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 80)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[53] = (C_local[53] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 80)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[85] = (C_local[85] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1104)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[117] = (C_local[117] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1104)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[23] = (C_local[23] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 88)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[55] = (C_local[55] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 88)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[87] = (C_local[87] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1112)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[119] = (C_local[119] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1112)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[25] = (C_local[25] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 96)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[57] = (C_local[57] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 96)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[89] = (C_local[89] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1120)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[121] = (C_local[121] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1120)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[27] = (C_local[27] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 104)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[59] = (C_local[59] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 104)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[91] = (C_local[91] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1128)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[123] = (C_local[123] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1128)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[29] = (C_local[29] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 112)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[61] = (C_local[61] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 112)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[93] = (C_local[93] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1136)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[125] = (C_local[125] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1136)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[31] = (C_local[31] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 120)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[63] = (C_local[63] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 120)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[95] = (C_local[95] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1144)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 1)]));
C_local[127] = (C_local[127] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1144)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 65)]));
C_local[17] = (C_local[17] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 65)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[49] = (C_local[49] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 65)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[81] = (C_local[81] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1089)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[113] = (C_local[113] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1089)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[19] = (C_local[19] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 73)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[51] = (C_local[51] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 73)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[83] = (C_local[83] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1097)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[115] = (C_local[115] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1097)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[21] = (C_local[21] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 81)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[53] = (C_local[53] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 81)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[85] = (C_local[85] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1105)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[117] = (C_local[117] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1105)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[23] = (C_local[23] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 89)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[55] = (C_local[55] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 89)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[87] = (C_local[87] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1113)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[119] = (C_local[119] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1113)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[25] = (C_local[25] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 97)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[57] = (C_local[57] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 97)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[89] = (C_local[89] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1121)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[121] = (C_local[121] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1121)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[27] = (C_local[27] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 105)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[59] = (C_local[59] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 105)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[91] = (C_local[91] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1129)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[123] = (C_local[123] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1129)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[29] = (C_local[29] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 113)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[61] = (C_local[61] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 113)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[93] = (C_local[93] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1137)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[125] = (C_local[125] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1137)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[31] = (C_local[31] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 121)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[63] = (C_local[63] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 121)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[95] = (C_local[95] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1145)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 129)]));
C_local[127] = (C_local[127] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1145)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 193)]));
C_local[17] = (C_local[17] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 66)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[49] = (C_local[49] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 66)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[81] = (C_local[81] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1090)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[113] = (C_local[113] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1090)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[19] = (C_local[19] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 74)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[51] = (C_local[51] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 74)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[83] = (C_local[83] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1098)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[115] = (C_local[115] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1098)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[21] = (C_local[21] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 82)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[53] = (C_local[53] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 82)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[85] = (C_local[85] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1106)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[117] = (C_local[117] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1106)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[23] = (C_local[23] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 90)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[55] = (C_local[55] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 90)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[87] = (C_local[87] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1114)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[119] = (C_local[119] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1114)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[25] = (C_local[25] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 98)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[57] = (C_local[57] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 98)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[89] = (C_local[89] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1122)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[121] = (C_local[121] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1122)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[27] = (C_local[27] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 106)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[59] = (C_local[59] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 106)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[91] = (C_local[91] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1130)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[123] = (C_local[123] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1130)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[29] = (C_local[29] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 114)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[61] = (C_local[61] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 114)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[93] = (C_local[93] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1138)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[125] = (C_local[125] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1138)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[31] = (C_local[31] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 122)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[63] = (C_local[63] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 122)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[95] = (C_local[95] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1146)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 257)]));
C_local[127] = (C_local[127] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1146)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 321)]));
C_local[17] = (C_local[17] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 67)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[49] = (C_local[49] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 67)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[81] = (C_local[81] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1091)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[113] = (C_local[113] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1091)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[19] = (C_local[19] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 75)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[51] = (C_local[51] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 75)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[83] = (C_local[83] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1099)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[115] = (C_local[115] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1099)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[21] = (C_local[21] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 83)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[53] = (C_local[53] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 83)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[85] = (C_local[85] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1107)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[117] = (C_local[117] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1107)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[23] = (C_local[23] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 91)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[55] = (C_local[55] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 91)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[87] = (C_local[87] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1115)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[119] = (C_local[119] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1115)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[25] = (C_local[25] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 99)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[57] = (C_local[57] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 99)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[89] = (C_local[89] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1123)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[121] = (C_local[121] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1123)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[27] = (C_local[27] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 107)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[59] = (C_local[59] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 107)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[91] = (C_local[91] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1131)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[123] = (C_local[123] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1131)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[29] = (C_local[29] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 115)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[61] = (C_local[61] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 115)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[93] = (C_local[93] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1139)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[125] = (C_local[125] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1139)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[31] = (C_local[31] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 123)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[63] = (C_local[63] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 123)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[95] = (C_local[95] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1147)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 385)]));
C_local[127] = (C_local[127] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1147)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 449)]));
C_local[0] = (C_local[0] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 4)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[32] = (C_local[32] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 4)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[64] = (C_local[64] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1028)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[96] = (C_local[96] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1028)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[2] = (C_local[2] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 12)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[34] = (C_local[34] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 12)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[66] = (C_local[66] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1036)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[98] = (C_local[98] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1036)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[4] = (C_local[4] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 20)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[36] = (C_local[36] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 20)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[68] = (C_local[68] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1044)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[100] = (C_local[100] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1044)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[6] = (C_local[6] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 28)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[38] = (C_local[38] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 28)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[70] = (C_local[70] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1052)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[102] = (C_local[102] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1052)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[8] = (C_local[8] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 36)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[40] = (C_local[40] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 36)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[72] = (C_local[72] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1060)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[104] = (C_local[104] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1060)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[10] = (C_local[10] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 44)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[42] = (C_local[42] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 44)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[74] = (C_local[74] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1068)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[106] = (C_local[106] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1068)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[12] = (C_local[12] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 52)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[44] = (C_local[44] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 52)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[76] = (C_local[76] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1076)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[108] = (C_local[108] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1076)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[14] = (C_local[14] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 60)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[46] = (C_local[46] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 60)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[78] = (C_local[78] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1084)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[110] = (C_local[110] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1084)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[0] = (C_local[0] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 5)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[32] = (C_local[32] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 5)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[64] = (C_local[64] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1029)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[96] = (C_local[96] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1029)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[2] = (C_local[2] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 13)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[34] = (C_local[34] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 13)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[66] = (C_local[66] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1037)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[98] = (C_local[98] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1037)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[4] = (C_local[4] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 21)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[36] = (C_local[36] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 21)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[68] = (C_local[68] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1045)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[100] = (C_local[100] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1045)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[6] = (C_local[6] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 29)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[38] = (C_local[38] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 29)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[70] = (C_local[70] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1053)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[102] = (C_local[102] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1053)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[8] = (C_local[8] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 37)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[40] = (C_local[40] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 37)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[72] = (C_local[72] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1061)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[104] = (C_local[104] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1061)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[10] = (C_local[10] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 45)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[42] = (C_local[42] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 45)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[74] = (C_local[74] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1069)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[106] = (C_local[106] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1069)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[12] = (C_local[12] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 53)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[44] = (C_local[44] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 53)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[76] = (C_local[76] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1077)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[108] = (C_local[108] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1077)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[14] = (C_local[14] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 61)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[46] = (C_local[46] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 61)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[78] = (C_local[78] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1085)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[110] = (C_local[110] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1085)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[0] = (C_local[0] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 6)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[32] = (C_local[32] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 6)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[64] = (C_local[64] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1030)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[96] = (C_local[96] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1030)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[2] = (C_local[2] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 14)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[34] = (C_local[34] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 14)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[66] = (C_local[66] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1038)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[98] = (C_local[98] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1038)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[4] = (C_local[4] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 22)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[36] = (C_local[36] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 22)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[68] = (C_local[68] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1046)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[100] = (C_local[100] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1046)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[6] = (C_local[6] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 30)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[38] = (C_local[38] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 30)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[70] = (C_local[70] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1054)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[102] = (C_local[102] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1054)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[8] = (C_local[8] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 38)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[40] = (C_local[40] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 38)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[72] = (C_local[72] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1062)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[104] = (C_local[104] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1062)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[10] = (C_local[10] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 46)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[42] = (C_local[42] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 46)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[74] = (C_local[74] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1070)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[106] = (C_local[106] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1070)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[12] = (C_local[12] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 54)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[44] = (C_local[44] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 54)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[76] = (C_local[76] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1078)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[108] = (C_local[108] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1078)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[14] = (C_local[14] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 62)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[46] = (C_local[46] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 62)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[78] = (C_local[78] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1086)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[110] = (C_local[110] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1086)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[0] = (C_local[0] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 7)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[32] = (C_local[32] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 7)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[64] = (C_local[64] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1031)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[96] = (C_local[96] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1031)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[2] = (C_local[2] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 15)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[34] = (C_local[34] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 15)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[66] = (C_local[66] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1039)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[98] = (C_local[98] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1039)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[4] = (C_local[4] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 23)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[36] = (C_local[36] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 23)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[68] = (C_local[68] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1047)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[100] = (C_local[100] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1047)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[6] = (C_local[6] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 31)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[38] = (C_local[38] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 31)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[70] = (C_local[70] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1055)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[102] = (C_local[102] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1055)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[8] = (C_local[8] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 39)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[40] = (C_local[40] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 39)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[72] = (C_local[72] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1063)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[104] = (C_local[104] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1063)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[10] = (C_local[10] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 47)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[42] = (C_local[42] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 47)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[74] = (C_local[74] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1071)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[106] = (C_local[106] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1071)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[12] = (C_local[12] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 55)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[44] = (C_local[44] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 55)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[76] = (C_local[76] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1079)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[108] = (C_local[108] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1079)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[14] = (C_local[14] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 63)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[46] = (C_local[46] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 63)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[78] = (C_local[78] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1087)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 896)]));
C_local[110] = (C_local[110] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1087)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 960)]));
C_local[1] = (C_local[1] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 4)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[33] = (C_local[33] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 4)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[65] = (C_local[65] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1028)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[97] = (C_local[97] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1028)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[3] = (C_local[3] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 12)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[35] = (C_local[35] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 12)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[67] = (C_local[67] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1036)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[99] = (C_local[99] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1036)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[5] = (C_local[5] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 20)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[37] = (C_local[37] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 20)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[69] = (C_local[69] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1044)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[101] = (C_local[101] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1044)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[7] = (C_local[7] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 28)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[39] = (C_local[39] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 28)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[71] = (C_local[71] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1052)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[103] = (C_local[103] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1052)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[9] = (C_local[9] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 36)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[41] = (C_local[41] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 36)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[73] = (C_local[73] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1060)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[105] = (C_local[105] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1060)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[11] = (C_local[11] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 44)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[43] = (C_local[43] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 44)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[75] = (C_local[75] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1068)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[107] = (C_local[107] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1068)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[13] = (C_local[13] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 52)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[45] = (C_local[45] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 52)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[77] = (C_local[77] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1076)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[109] = (C_local[109] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1076)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[15] = (C_local[15] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 60)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[47] = (C_local[47] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 60)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[79] = (C_local[79] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1084)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 513)]));
C_local[111] = (C_local[111] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1084)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 577)]));
C_local[1] = (C_local[1] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 5)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[33] = (C_local[33] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 5)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[65] = (C_local[65] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1029)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[97] = (C_local[97] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1029)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[3] = (C_local[3] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 13)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[35] = (C_local[35] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 13)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[67] = (C_local[67] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1037)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[99] = (C_local[99] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1037)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[5] = (C_local[5] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 21)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[37] = (C_local[37] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 21)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[69] = (C_local[69] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1045)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[101] = (C_local[101] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1045)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[7] = (C_local[7] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 29)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[39] = (C_local[39] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 29)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[71] = (C_local[71] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1053)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[103] = (C_local[103] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1053)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[9] = (C_local[9] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 37)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[41] = (C_local[41] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 37)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[73] = (C_local[73] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1061)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[105] = (C_local[105] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1061)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[11] = (C_local[11] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 45)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[43] = (C_local[43] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 45)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[75] = (C_local[75] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1069)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[107] = (C_local[107] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1069)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[13] = (C_local[13] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 53)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[45] = (C_local[45] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 53)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[77] = (C_local[77] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1077)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[109] = (C_local[109] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1077)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[15] = (C_local[15] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 61)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[47] = (C_local[47] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 61)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[79] = (C_local[79] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1085)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 641)]));
C_local[111] = (C_local[111] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1085)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 705)]));
C_local[1] = (C_local[1] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 6)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[33] = (C_local[33] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 6)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[65] = (C_local[65] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1030)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[97] = (C_local[97] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1030)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[3] = (C_local[3] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 14)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[35] = (C_local[35] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 14)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[67] = (C_local[67] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1038)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[99] = (C_local[99] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1038)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[5] = (C_local[5] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 22)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[37] = (C_local[37] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 22)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[69] = (C_local[69] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1046)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[101] = (C_local[101] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1046)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[7] = (C_local[7] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 30)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[39] = (C_local[39] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 30)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[71] = (C_local[71] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1054)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[103] = (C_local[103] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1054)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[9] = (C_local[9] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 38)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[41] = (C_local[41] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 38)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[73] = (C_local[73] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1062)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[105] = (C_local[105] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1062)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[11] = (C_local[11] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 46)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[43] = (C_local[43] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 46)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[75] = (C_local[75] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1070)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[107] = (C_local[107] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1070)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[13] = (C_local[13] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 54)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[45] = (C_local[45] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 54)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[77] = (C_local[77] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1078)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[109] = (C_local[109] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1078)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[15] = (C_local[15] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 62)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[47] = (C_local[47] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 62)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[79] = (C_local[79] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1086)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 769)]));
C_local[111] = (C_local[111] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1086)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 833)]));
C_local[1] = (C_local[1] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 7)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[33] = (C_local[33] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 7)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[65] = (C_local[65] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1031)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[97] = (C_local[97] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1031)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[3] = (C_local[3] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 15)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[35] = (C_local[35] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 15)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[67] = (C_local[67] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1039)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[99] = (C_local[99] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1039)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[5] = (C_local[5] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 23)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[37] = (C_local[37] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 23)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[69] = (C_local[69] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1047)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[101] = (C_local[101] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1047)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[7] = (C_local[7] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 31)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[39] = (C_local[39] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 31)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[71] = (C_local[71] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1055)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[103] = (C_local[103] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1055)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[9] = (C_local[9] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 39)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[41] = (C_local[41] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 39)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[73] = (C_local[73] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1063)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[105] = (C_local[105] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1063)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[11] = (C_local[11] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 47)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[43] = (C_local[43] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 47)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[75] = (C_local[75] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1071)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[107] = (C_local[107] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1071)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[13] = (C_local[13] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 55)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[45] = (C_local[45] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 55)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[77] = (C_local[77] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1079)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[109] = (C_local[109] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1079)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[15] = (C_local[15] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 63)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[47] = (C_local[47] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 63)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[79] = (C_local[79] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1087)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 897)]));
C_local[111] = (C_local[111] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1087)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 961)]));
C_local[16] = (C_local[16] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 68)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[48] = (C_local[48] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 68)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[80] = (C_local[80] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1092)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[112] = (C_local[112] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1092)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[18] = (C_local[18] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 76)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[50] = (C_local[50] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 76)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[82] = (C_local[82] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1100)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[114] = (C_local[114] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1100)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[20] = (C_local[20] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 84)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[52] = (C_local[52] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 84)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[84] = (C_local[84] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1108)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[116] = (C_local[116] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1108)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[22] = (C_local[22] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 92)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[54] = (C_local[54] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 92)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[86] = (C_local[86] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1116)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[118] = (C_local[118] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1116)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[24] = (C_local[24] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 100)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[56] = (C_local[56] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 100)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[88] = (C_local[88] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1124)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[120] = (C_local[120] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1124)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[26] = (C_local[26] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 108)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[58] = (C_local[58] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 108)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[90] = (C_local[90] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1132)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[122] = (C_local[122] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1132)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[28] = (C_local[28] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 116)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[60] = (C_local[60] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 116)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[92] = (C_local[92] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1140)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[124] = (C_local[124] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1140)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[30] = (C_local[30] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 124)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[62] = (C_local[62] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 124)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[94] = (C_local[94] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1148)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 512)]));
C_local[126] = (C_local[126] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1148)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 576)]));
C_local[16] = (C_local[16] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 69)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[48] = (C_local[48] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 69)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[80] = (C_local[80] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1093)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[112] = (C_local[112] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1093)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[18] = (C_local[18] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 77)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[50] = (C_local[50] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 77)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[82] = (C_local[82] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1101)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[114] = (C_local[114] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1101)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[20] = (C_local[20] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 85)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[52] = (C_local[52] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 85)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[84] = (C_local[84] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1109)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[116] = (C_local[116] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1109)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[22] = (C_local[22] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 93)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[54] = (C_local[54] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 93)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[86] = (C_local[86] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1117)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[118] = (C_local[118] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1117)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[24] = (C_local[24] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 101)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[56] = (C_local[56] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 101)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[88] = (C_local[88] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1125)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[120] = (C_local[120] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1125)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[26] = (C_local[26] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 109)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[58] = (C_local[58] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 109)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[90] = (C_local[90] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1133)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[122] = (C_local[122] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1133)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[28] = (C_local[28] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 117)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[60] = (C_local[60] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 117)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[92] = (C_local[92] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1141)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[124] = (C_local[124] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1141)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[30] = (C_local[30] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 125)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[62] = (C_local[62] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 125)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[94] = (C_local[94] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1149)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 640)]));
C_local[126] = (C_local[126] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1149)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 704)]));
C_local[16] = (C_local[16] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 70)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[48] = (C_local[48] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 70)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[80] = (C_local[80] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1094)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[112] = (C_local[112] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1094)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[18] = (C_local[18] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 78)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[50] = (C_local[50] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 78)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[82] = (C_local[82] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1102)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[114] = (C_local[114] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1102)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[20] = (C_local[20] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 86)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));
C_local[52] = (C_local[52] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 86)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 832)]));
C_local[84] = (C_local[84] + (A_shared[(((((int)threadIdx.x) >> 5) * 128) + 1110)] * B_shared[(((((int)threadIdx.x) & 31) * 2) + 768)]));