xref: /petsc/src/mat/impls/baij/seq/baij.h (revision 96e086a24b9cdc04c368e2851f46791dcaa837d7)
12593348eSBarry Smith 
235aab85fSBarry Smith #if !defined(__BAIJ_H)
335aab85fSBarry Smith #define __BAIJ_H
4af0996ceSBarry Smith #include <petsc/private/matimpl.h>
5c6db04a5SJed Brown #include <../src/mat/impls/aij/seq/aij.h>
6c6db04a5SJed Brown #include <../src/mat/impls/baij/seq/ftn-kernels/fsolvebaij.h>
72593348eSBarry Smith 
82593348eSBarry Smith /*
935aab85fSBarry Smith   MATSEQBAIJ format - Block compressed row storage. The i[] and j[]
10e24b481bSBarry Smith   arrays start at 0.
112593348eSBarry Smith */
122593348eSBarry Smith 
136c6c5352SBarry Smith /* This header is shared by the SeqSBAIJ matrix */
146c6c5352SBarry Smith #define SEQBAIJHEADER \
15521d7252SBarry Smith   PetscInt    bs2;                      /*  square of block size */                                  \
16690b6cddSBarry Smith   PetscInt    mbs,nbs;               /* rows/bs, columns/bs */                                       \
176c6c5352SBarry Smith   PetscScalar *mult_work;            /* work array for matrix vector product*/                       \
18f361c04dSBarry Smith   PetscScalar *sor_workt;            /* work array for SOR */                                        \
19de80f912SBarry Smith   PetscScalar *sor_work;             /* work array for SOR */                                        \
20dd6ea824SBarry Smith   MatScalar   *saved_values;                                                                    \
216c6c5352SBarry Smith                                                                                                      \
226ad2eaddSHong Zhang   Mat         sbaijMat;                      /* mat in sbaij format */                                       \
236c6c5352SBarry Smith                                                                                                      \
246c6c5352SBarry Smith                                                                                                      \
25dd6ea824SBarry Smith   MatScalar     *idiag;            /* inverse of block diagonal  */                                \
26ace3abfcSBarry Smith   PetscBool     idiagvalid         /* if above has correct/current values */
27e6b907acSBarry Smith 
286c6c5352SBarry Smith typedef struct {
29dd6ea824SBarry Smith   SEQAIJHEADER(MatScalar);
30e6b907acSBarry Smith   SEQBAIJHEADER;
3135aab85fSBarry Smith } Mat_SeqBAIJ;
322593348eSBarry Smith 
33b5b72c8aSIrina Sokolova PETSC_INTERN PetscErrorCode MatSeqBAIJSetPreallocation_SeqBAIJ(Mat B,PetscInt bs,PetscInt nz,PetscInt *nnz);
34b5b72c8aSIrina Sokolova PETSC_INTERN PetscErrorCode MatAXPY_SeqBAIJ(Mat Y,PetscScalar a,Mat X,MatStructure str);
35b5b72c8aSIrina Sokolova 
36525d23c0SHong Zhang PETSC_INTERN PetscErrorCode MatGetColumnIJ_SeqBAIJ(Mat,PetscInt,PetscBool,PetscBool,PetscInt*,const PetscInt *[],const PetscInt *[],PetscBool*);
37525d23c0SHong Zhang PETSC_INTERN PetscErrorCode MatRestoreColumnIJ_SeqBAIJ(Mat,PetscInt,PetscBool,PetscBool,PetscInt*,const PetscInt *[],const PetscInt *[],PetscBool*);
38525d23c0SHong Zhang PETSC_INTERN PetscErrorCode MatGetColumnIJ_SeqBAIJ_Color(Mat,PetscInt,PetscBool,PetscBool,PetscInt*,const PetscInt *[],const PetscInt *[],PetscInt *[],PetscBool*);
39525d23c0SHong Zhang PETSC_INTERN PetscErrorCode MatRestoreColumnIJ_SeqBAIJ_Color(Mat,PetscInt,PetscBool,PetscBool,PetscInt*,const PetscInt *[],const PetscInt *[],PetscInt *[],PetscBool*);
40525d23c0SHong Zhang 
415a576424SJed Brown PETSC_INTERN PetscErrorCode MatILUFactorSymbolic_SeqBAIJ_inplace(Mat,Mat,IS,IS,const MatFactorInfo*);
425a576424SJed Brown PETSC_INTERN PetscErrorCode MatILUFactorSymbolic_SeqBAIJ(Mat,Mat,IS,IS,const MatFactorInfo*);
435a576424SJed Brown PETSC_INTERN PetscErrorCode MatICCFactorSymbolic_SeqBAIJ(Mat,Mat,IS,const MatFactorInfo*);
445a576424SJed Brown PETSC_INTERN PetscErrorCode MatCholeskyFactorSymbolic_SeqBAIJ(Mat,Mat,IS,const MatFactorInfo*);
455a576424SJed Brown PETSC_INTERN PetscErrorCode MatCholeskyFactorNumeric_SeqBAIJ_N(Mat,Mat,const MatFactorInfo*);
465a576424SJed Brown PETSC_INTERN PetscErrorCode MatCholeskyFactorNumeric_SeqBAIJ_N_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
475a576424SJed Brown PETSC_INTERN PetscErrorCode MatDuplicate_SeqBAIJ(Mat,MatDuplicateOption,Mat*);
485a576424SJed Brown PETSC_INTERN PetscErrorCode MatMissingDiagonal_SeqBAIJ(Mat,PetscBool*,PetscInt*);
495a576424SJed Brown PETSC_INTERN PetscErrorCode MatMarkDiagonal_SeqBAIJ(Mat);
505a576424SJed Brown PETSC_INTERN PetscErrorCode MatILUDTFactor_SeqBAIJ(Mat,IS,IS,const MatFactorInfo*,Mat*);
51be3590efSBarry Smith 
525a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorSymbolic_SeqBAIJ_inplace(Mat,Mat,IS,IS,const MatFactorInfo*);
535a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorSymbolic_SeqBAIJ(Mat,Mat,IS,IS,const MatFactorInfo*);
545a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactor_SeqBAIJ(Mat,IS,IS,const MatFactorInfo*);
555a576424SJed Brown PETSC_INTERN PetscErrorCode MatIncreaseOverlap_SeqBAIJ(Mat,PetscInt,IS*,PetscInt);
567dae84e0SHong Zhang PETSC_INTERN PetscErrorCode MatCreateSubMatrix_SeqBAIJ(Mat,IS,IS,MatReuse,Mat*);
577dae84e0SHong Zhang PETSC_INTERN PetscErrorCode MatCreateSubMatrices_SeqBAIJ(Mat,PetscInt,const IS[],const IS[],MatReuse,Mat*[]);
585a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultTranspose_SeqBAIJ(Mat,Vec,Vec);
595a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultHermitianTranspose_SeqBAIJ(Mat,Vec,Vec);
605a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultTransposeAdd_SeqBAIJ(Mat,Vec,Vec,Vec);
615a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultHermitianTransposeAdd_SeqBAIJ(Mat,Vec,Vec,Vec);
625a576424SJed Brown PETSC_INTERN PetscErrorCode MatScale_SeqBAIJ(Mat,PetscScalar);
635a576424SJed Brown PETSC_INTERN PetscErrorCode MatNorm_SeqBAIJ(Mat,NormType,PetscReal*);
645a576424SJed Brown PETSC_INTERN PetscErrorCode MatEqual_SeqBAIJ(Mat,Mat,PetscBool*);
65d1e9a80fSBarry Smith PETSC_INTERN PetscErrorCode MatFDColoringApply_BAIJ(Mat,MatFDColoring,Vec,void*);
665a576424SJed Brown PETSC_INTERN PetscErrorCode MatGetDiagonal_SeqBAIJ(Mat,Vec);
675a576424SJed Brown PETSC_INTERN PetscErrorCode MatDiagonalScale_SeqBAIJ(Mat,Vec,Vec);
685a576424SJed Brown PETSC_INTERN PetscErrorCode MatGetInfo_SeqBAIJ(Mat,MatInfoType,MatInfo*);
695a576424SJed Brown PETSC_INTERN PetscErrorCode MatZeroEntries_SeqBAIJ(Mat);
705a576424SJed Brown PETSC_INTERN PetscErrorCode MatDestroy_SeqBAIJ(Mat);
715a576424SJed Brown PETSC_INTERN PetscErrorCode MatAssemblyEnd_SeqBAIJ(Mat,MatAssemblyType);
7254138f6bSKris Buschelman 
735a576424SJed Brown PETSC_INTERN PetscErrorCode MatSeqBAIJ_UpdateFactorNumeric_NaturalOrdering(Mat);
7454138f6bSKris Buschelman 
755a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_1_inplace(Mat,Vec,Vec);
765a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_1(Mat,Vec,Vec);
775a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_1_NaturalOrdering_inplace(Mat,Vec,Vec);
785a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_1_NaturalOrdering(Mat,Vec,Vec);
799f5c0bcdSBarry Smith PETSC_INTERN PetscErrorCode MatForwardSolve_SeqBAIJ_1_NaturalOrdering(Mat,Vec,Vec);
809f5c0bcdSBarry Smith PETSC_INTERN PetscErrorCode MatBackwardSolve_SeqBAIJ_1_NaturalOrdering(Mat,Vec,Vec);
815a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_2_inplace(Mat,Vec,Vec);
825a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_2(Mat,Vec,Vec);
835a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_2_NaturalOrdering_inplace(Mat,Vec,Vec);
845a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_2_NaturalOrdering(Mat,Vec,Vec);
859f5c0bcdSBarry Smith PETSC_INTERN PetscErrorCode MatForwardSolve_SeqBAIJ_2_NaturalOrdering(Mat,Vec,Vec);
869f5c0bcdSBarry Smith PETSC_INTERN PetscErrorCode MatBackwardSolve_SeqBAIJ_2_NaturalOrdering(Mat,Vec,Vec);
8706e38f1dSHong Zhang 
885a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_3_inplace(Mat,Vec,Vec);
895a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_3(Mat,Vec,Vec);
905a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_3_NaturalOrdering_inplace(Mat,Vec,Vec);
915a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_3_NaturalOrdering(Mat,Vec,Vec);
929f5c0bcdSBarry Smith PETSC_INTERN PetscErrorCode MatForwardSolve_SeqBAIJ_3_NaturalOrdering(Mat,Vec,Vec);
939f5c0bcdSBarry Smith PETSC_INTERN PetscErrorCode MatBackwardSolve_SeqBAIJ_3_NaturalOrdering(Mat,Vec,Vec);
9406e38f1dSHong Zhang 
955a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_4_inplace(Mat,Vec,Vec);
965a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_4(Mat,Vec,Vec);
975a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_4_NaturalOrdering_inplace(Mat,Vec,Vec);
985a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_4_NaturalOrdering(Mat,Vec,Vec);
9954138f6bSKris Buschelman #if defined(PETSC_HAVE_SSE)
1005a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_4_SSE_Demotion(Mat,Vec,Vec);
1015a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_4_NaturalOrdering_SSE_Demotion(Mat,Vec,Vec);
1025a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_4_NaturalOrdering_SSE_Demotion_usj(Mat,Vec,Vec);
1034110d75bSKris Buschelman #endif
1045a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_5_inplace(Mat,Vec,Vec);
1055a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_5(Mat,Vec,Vec);
1065a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_5_NaturalOrdering_inplace(Mat,Vec,Vec);
1075a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_5_NaturalOrdering(Mat,Vec,Vec);
10806e38f1dSHong Zhang 
1095a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_6_inplace(Mat,Vec,Vec);
1105a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_6(Mat,Vec,Vec);
1115a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_6_NaturalOrdering_inplace(Mat,Vec,Vec);
1125a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_6_NaturalOrdering(Mat,Vec,Vec);
11306e38f1dSHong Zhang 
1145a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_7_inplace(Mat,Vec,Vec);
1155a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_7(Mat,Vec,Vec);
1165a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_7_NaturalOrdering_inplace(Mat,Vec,Vec);
1175a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_7_NaturalOrdering(Mat,Vec,Vec);
11806e38f1dSHong Zhang 
119*96e086a2SDaniel Kokron PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_9_NaturalOrdering(Mat,Vec,Vec);
120412af7a7SHong Zhang PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_11_NaturalOrdering(Mat,Vec,Vec);
121ba7f0461SHong Zhang PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_12_NaturalOrdering(Mat,Vec,Vec);
122ba7f0461SHong Zhang PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_13_NaturalOrdering(Mat,Vec,Vec);
123ba7f0461SHong Zhang PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_14_NaturalOrdering(Mat,Vec,Vec);
124412af7a7SHong Zhang 
1255a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_15_NaturalOrdering_ver1(Mat,Vec,Vec);
1265a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_15_NaturalOrdering_ver2(Mat,Vec,Vec);
1272b0b2ea7SShri Abhyankar 
1285a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_N_inplace(Mat,Vec,Vec);
1295a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_N(Mat,Vec,Vec);
1305a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolve_SeqBAIJ_N_NaturalOrdering(Mat,Vec,Vec);
13106e38f1dSHong Zhang 
1325a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_1_inplace(Mat,Vec,Vec);
1335a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_1(Mat,Vec,Vec);
1345a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_1_NaturalOrdering_inplace(Mat,Vec,Vec);
1355a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_1_NaturalOrdering(Mat,Vec,Vec);
1365a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_2_inplace(Mat,Vec,Vec);
1375a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_2(Mat,Vec,Vec);
1385a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_2_NaturalOrdering_inplace(Mat,Vec,Vec);
1395a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_2_NaturalOrdering(Mat,Vec,Vec);
14006e38f1dSHong Zhang 
1415a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_3_inplace(Mat,Vec,Vec);
1425a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_3(Mat,Vec,Vec);
1435a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_3_NaturalOrdering_inplace(Mat,Vec,Vec);
1445a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_3_NaturalOrdering(Mat,Vec,Vec);
14506e38f1dSHong Zhang 
1465a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_4_inplace(Mat,Vec,Vec);
1475a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_4(Mat,Vec,Vec);
1485a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_4_NaturalOrdering_inplace(Mat,Vec,Vec);
1495a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_4_NaturalOrdering(Mat,Vec,Vec);
15006e38f1dSHong Zhang 
1515a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_5_inplace(Mat,Vec,Vec);
1525a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_5(Mat,Vec,Vec);
1535a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_5_NaturalOrdering_inplace(Mat,Vec,Vec);
1545a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_5_NaturalOrdering(Mat,Vec,Vec);
15506e38f1dSHong Zhang 
1565a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_6_inplace(Mat,Vec,Vec);
1575a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_6(Mat,Vec,Vec);
1585a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_6_NaturalOrdering_inplace(Mat,Vec,Vec);
1595a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_6_NaturalOrdering(Mat,Vec,Vec);
16006e38f1dSHong Zhang 
1615a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_7_inplace(Mat,Vec,Vec);
1625a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_7(Mat,Vec,Vec);
1635a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_7_NaturalOrdering_inplace(Mat,Vec,Vec);
1645a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_7_NaturalOrdering(Mat,Vec,Vec);
16506e38f1dSHong Zhang 
1665a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_N_inplace(Mat,Vec,Vec);
1675a576424SJed Brown PETSC_INTERN PetscErrorCode MatSolveTranspose_SeqBAIJ_N(Mat,Vec,Vec);
16854138f6bSKris Buschelman 
1695a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_N(Mat,Mat,const MatFactorInfo*);
1705a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_1_inplace(Mat,Mat,const MatFactorInfo*);
1715a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_1(Mat,Mat,const MatFactorInfo*);
1725a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_inplace(Mat,Mat,const MatFactorInfo*);
1735a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2(Mat,Mat,const MatFactorInfo*);
1745a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_NaturalOrdering_inplace(Mat,Mat,const MatFactorInfo*);
1755a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
17606e38f1dSHong Zhang 
1775a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_3_inplace(Mat,Mat,const MatFactorInfo*);
1785a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_3(Mat,Mat,const MatFactorInfo*);
1795a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_3_NaturalOrdering_inplace(Mat,Mat,const MatFactorInfo*);
1805a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_3_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
18106e38f1dSHong Zhang 
1825a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_4_inplace(Mat,Mat,const MatFactorInfo*);
1835a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_4(Mat,Mat,const MatFactorInfo*);
1845a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_4_NaturalOrdering_inplace(Mat,Mat,const MatFactorInfo*);
1855a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_4_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
18654138f6bSKris Buschelman #if defined(PETSC_HAVE_SSE)
1875a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_4_NaturalOrdering_SSE(Mat,Mat,const MatFactorInfo*);
1885a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_4_NaturalOrdering_SSE_usj(Mat,Mat,const MatFactorInfo*);
18954138f6bSKris Buschelman #else
19054138f6bSKris Buschelman #endif
1915a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_5_inplace(Mat,Mat,const MatFactorInfo*);
1925a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_5(Mat,Mat,const MatFactorInfo*);
1935a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_5_NaturalOrdering_inplace(Mat,Mat,const MatFactorInfo*);
1945a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_5_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
19506e38f1dSHong Zhang 
1965a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_6_inplace(Mat,Mat,const MatFactorInfo*);
1975a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_6(Mat,Mat,const MatFactorInfo*);
1985a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_6_NaturalOrdering_inplace(Mat,Mat,const MatFactorInfo*);
1995a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_6_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
20006e38f1dSHong Zhang 
2015a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_7_inplace(Mat,Mat,const MatFactorInfo*);
2025a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_7(Mat,Mat,const MatFactorInfo*);
2035a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_7_NaturalOrdering_inplace(Mat,Mat,const MatFactorInfo*);
2045a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_7_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
20506e38f1dSHong Zhang 
206*96e086a2SDaniel Kokron PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_9_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
2075a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_15_NaturalOrdering(Mat,Mat,const MatFactorInfo*);
2085a576424SJed Brown PETSC_INTERN PetscErrorCode MatLUFactorNumeric_SeqBAIJ_N_inplace(Mat,Mat,const MatFactorInfo*);
20954138f6bSKris Buschelman 
2105a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_1(Mat,Vec,Vec);
2115a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_2(Mat,Vec,Vec);
2125a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_3(Mat,Vec,Vec);
2135a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_4(Mat,Vec,Vec);
2145a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_5(Mat,Vec,Vec);
2155a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_6(Mat,Vec,Vec);
2165a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_7(Mat,Vec,Vec);
217*96e086a2SDaniel Kokron PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_9_AVX2(Mat,Vec,Vec);
218ebada01fSBarry Smith PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_11(Mat,Vec,Vec);
2198ab949d8SShri Abhyankar 
2205a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_15_ver1(Mat,Vec,Vec);
2215a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_15_ver2(Mat,Vec,Vec);
2225a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_15_ver3(Mat,Vec,Vec);
2235a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_15_ver4(Mat,Vec,Vec);
2248ab949d8SShri Abhyankar 
2255a576424SJed Brown PETSC_INTERN PetscErrorCode MatMult_SeqBAIJ_N(Mat,Vec,Vec);
22654138f6bSKris Buschelman 
2275a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_1(Mat,Vec,Vec,Vec);
2285a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_2(Mat,Vec,Vec,Vec);
2295a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_3(Mat,Vec,Vec,Vec);
2305a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_4(Mat,Vec,Vec,Vec);
2315a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_5(Mat,Vec,Vec,Vec);
2325a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_6(Mat,Vec,Vec,Vec);
2335a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_7(Mat,Vec,Vec,Vec);
234*96e086a2SDaniel Kokron PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_9_AVX2(Mat,Vec,Vec,Vec);
235ebada01fSBarry Smith PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_11(Mat,Vec,Vec,Vec);
2365a576424SJed Brown PETSC_INTERN PetscErrorCode MatMultAdd_SeqBAIJ_N(Mat,Vec,Vec,Vec);
2375a576424SJed Brown PETSC_INTERN PetscErrorCode MatLoad_SeqBAIJ(Mat,PetscViewer);
2385a576424SJed Brown PETSC_INTERN PetscErrorCode MatSeqBAIJSetNumericFactorization_inplace(Mat,PetscBool);
2395a576424SJed Brown PETSC_INTERN PetscErrorCode MatSeqBAIJSetNumericFactorization(Mat,PetscBool);
2408b1456e3SHong Zhang 
24152768537SHong Zhang PETSC_INTERN PetscErrorCode MatGetRow_SeqBAIJ_private(Mat,PetscInt,PetscInt*,PetscInt**,PetscScalar**,PetscInt*,PetscInt*,PetscScalar*);
2424de5dceeSHong Zhang PETSC_INTERN PetscErrorCode MatAXPYGetPreallocation_SeqBAIJ(Mat,Mat,PetscInt*);
24352768537SHong Zhang 
244bdf6f3fcSHong Zhang PETSC_INTERN PetscErrorCode MatCreateMPIMatConcatenateSeqMat_SeqBAIJ(MPI_Comm,Mat,PetscInt,MatReuse,Mat*);
245bdf6f3fcSHong Zhang PETSC_INTERN PetscErrorCode MatCreateMPIMatConcatenateSeqMat_MPIBAIJ(MPI_Comm,Mat,PetscInt,MatReuse,Mat*);
246bdf6f3fcSHong Zhang 
247c5d9258eSSatish Balay /* used by mpibaij.c */
248c5d9258eSSatish Balay PETSC_INTERN PetscErrorCode MatSetUpMultiply_MPIBAIJ(Mat);
249c5d9258eSSatish Balay PETSC_INTERN PetscErrorCode MatDisAssemble_MPIBAIJ(Mat);
250c5d9258eSSatish Balay PETSC_INTERN PetscErrorCode MatGetValues_SeqBAIJ(Mat,PetscInt,const PetscInt[],PetscInt,const PetscInt [],PetscScalar []);
251c5d9258eSSatish Balay PETSC_INTERN PetscErrorCode MatSetValues_SeqBAIJ(Mat,PetscInt,const PetscInt[],PetscInt,const PetscInt [],const PetscScalar [],InsertMode);
252c5d9258eSSatish Balay PETSC_INTERN PetscErrorCode MatSetValuesBlocked_SeqBAIJ(Mat,PetscInt,const PetscInt[],PetscInt,const PetscInt[],const PetscScalar[],InsertMode);
253c5d9258eSSatish Balay PETSC_INTERN PetscErrorCode MatGetRow_SeqBAIJ(Mat,PetscInt,PetscInt*,PetscInt*[],PetscScalar*[]);
254c5d9258eSSatish Balay PETSC_INTERN PetscErrorCode MatRestoreRow_SeqBAIJ(Mat,PetscInt,PetscInt*,PetscInt*[],PetscScalar*[]);
255c5d9258eSSatish Balay PETSC_INTERN PetscErrorCode MatZeroRows_SeqBAIJ(Mat,PetscInt,const PetscInt[],PetscScalar,Vec,Vec);
256c5d9258eSSatish Balay 
257f68bb481SHong Zhang PETSC_INTERN PetscErrorCode MatDestroySubMatrix_SeqBAIJ(Mat);
25886e85357SHong Zhang PETSC_INTERN PetscErrorCode MatDestroySubMatrices_SeqBAIJ(PetscInt,Mat*[]);
25916b64355SHong Zhang 
2604c000e2eSHong Zhang /*
26196b95a6bSBarry Smith   PetscKernel_A_gets_A_times_B_2: A = A * B with size bs=2
2624c000e2eSHong Zhang 
2634c000e2eSHong Zhang   Input Parameters:
2644c000e2eSHong Zhang +  A,B - square bs by bs arrays stored in column major order
2654c000e2eSHong Zhang -  W   - bs*bs work arrary
2664c000e2eSHong Zhang 
2674c000e2eSHong Zhang   Output Parameter:
2684c000e2eSHong Zhang .  A = A * B
2694c000e2eSHong Zhang */
2704c000e2eSHong Zhang 
27196b95a6bSBarry Smith #define PetscKernel_A_gets_A_times_B_2(A,B,W) 0; \
2724c000e2eSHong Zhang   { \
2734c000e2eSHong Zhang     PetscMemcpy(W,A,4*sizeof(MatScalar)); \
2744c000e2eSHong Zhang     A[0] = W[0]*B[0] + W[2]*B[1]; \
2754c000e2eSHong Zhang     A[1] = W[1]*B[0] + W[3]*B[1]; \
2764c000e2eSHong Zhang     A[2] = W[0]*B[2] + W[2]*B[3]; \
2774c000e2eSHong Zhang     A[3] = W[1]*B[2] + W[3]*B[3]; \
2784c000e2eSHong Zhang   }
2794c000e2eSHong Zhang 
2804c000e2eSHong Zhang /*
28196b95a6bSBarry Smith   PetscKernel_A_gets_A_minus_B_times_C_2: A = A - B * C with size bs=2
2824c000e2eSHong Zhang 
2834c000e2eSHong Zhang   Input Parameters:
2844c000e2eSHong Zhang +  A,B,C - square bs by bs arrays stored in column major order
2854c000e2eSHong Zhang 
2864c000e2eSHong Zhang   Output Parameter:
2874c000e2eSHong Zhang .  A = A - B*C
2884c000e2eSHong Zhang */
2894c000e2eSHong Zhang 
29096b95a6bSBarry Smith #define PetscKernel_A_gets_A_minus_B_times_C_2(A,B,C) 0; \
2914c000e2eSHong Zhang   { \
2924c000e2eSHong Zhang     A[0] -= B[0]*C[0] + B[2]*C[1]; \
2934c000e2eSHong Zhang     A[1] -= B[1]*C[0] + B[3]*C[1]; \
2944c000e2eSHong Zhang     A[2] -= B[0]*C[2] + B[2]*C[3]; \
2954c000e2eSHong Zhang     A[3] -= B[1]*C[2] + B[3]*C[3]; \
2964c000e2eSHong Zhang   }
2974c000e2eSHong Zhang 
29817542729SShri Abhyankar /*
29996b95a6bSBarry Smith   PetscKernel_A_gets_A_times_B_3: A = A * B with size bs=3
30017542729SShri Abhyankar 
30117542729SShri Abhyankar   Input Parameters:
30217542729SShri Abhyankar +  A,B - square bs by bs arrays stored in column major order
30317542729SShri Abhyankar -  W   - bs*bs work arrary
30417542729SShri Abhyankar 
30517542729SShri Abhyankar   Output Parameter:
30617542729SShri Abhyankar .  A = A * B
30717542729SShri Abhyankar */
30817542729SShri Abhyankar 
30996b95a6bSBarry Smith #define PetscKernel_A_gets_A_times_B_3(A,B,W) 0; \
31017542729SShri Abhyankar   { \
31117542729SShri Abhyankar     PetscMemcpy(W,A,9*sizeof(MatScalar)); \
31217542729SShri Abhyankar     A[0] = W[0]*B[0] + W[3]*B[1] + W[6]*B[2]; \
31317542729SShri Abhyankar     A[1] = W[1]*B[0] + W[4]*B[1] + W[7]*B[2]; \
31417542729SShri Abhyankar     A[2] = W[2]*B[0] + W[5]*B[1] + W[8]*B[2]; \
31517542729SShri Abhyankar     A[3] = W[0]*B[3] + W[3]*B[4] + W[6]*B[5]; \
31617542729SShri Abhyankar     A[4] = W[1]*B[3] + W[4]*B[4] + W[7]*B[5]; \
31717542729SShri Abhyankar     A[5] = W[2]*B[3] + W[5]*B[4] + W[8]*B[5]; \
31817542729SShri Abhyankar     A[6] = W[0]*B[6] + W[3]*B[7] + W[6]*B[8]; \
31917542729SShri Abhyankar     A[7] = W[1]*B[6] + W[4]*B[7] + W[7]*B[8]; \
32017542729SShri Abhyankar     A[8] = W[2]*B[6] + W[5]*B[7] + W[8]*B[8]; \
32117542729SShri Abhyankar   }
32217542729SShri Abhyankar 
32317542729SShri Abhyankar /*
32496b95a6bSBarry Smith   PetscKernel_A_gets_A_minus_B_times_C_3: A = A - B * C with size bs=3
32517542729SShri Abhyankar 
32617542729SShri Abhyankar   Input Parameters:
32717542729SShri Abhyankar +  A,B,C - square bs by bs arrays stored in column major order
32817542729SShri Abhyankar 
32917542729SShri Abhyankar   Output Parameter:
33017542729SShri Abhyankar .  A = A - B*C
33117542729SShri Abhyankar */
33217542729SShri Abhyankar 
33396b95a6bSBarry Smith #define PetscKernel_A_gets_A_minus_B_times_C_3(A,B,C) 0; \
33417542729SShri Abhyankar   { \
33517542729SShri Abhyankar     A[0] -= B[0]*C[0] + B[3]*C[1] + B[6]*C[2]; \
33617542729SShri Abhyankar     A[1] -= B[1]*C[0] + B[4]*C[1] + B[7]*C[2]; \
33717542729SShri Abhyankar     A[2] -= B[2]*C[0] + B[5]*C[1] + B[8]*C[2]; \
33817542729SShri Abhyankar     A[3] -= B[0]*C[3] + B[3]*C[4] + B[6]*C[5]; \
33917542729SShri Abhyankar     A[4] -= B[1]*C[3] + B[4]*C[4] + B[7]*C[5]; \
34017542729SShri Abhyankar     A[5] -= B[2]*C[3] + B[5]*C[4] + B[8]*C[5]; \
34117542729SShri Abhyankar     A[6] -= B[0]*C[6] + B[3]*C[7] + B[6]*C[8]; \
34217542729SShri Abhyankar     A[7] -= B[1]*C[6] + B[4]*C[7] + B[7]*C[8]; \
34317542729SShri Abhyankar     A[8] -= B[2]*C[6] + B[5]*C[7] + B[8]*C[8]; \
34417542729SShri Abhyankar   }
34517542729SShri Abhyankar 
346209027a4SShri Abhyankar /*
34796b95a6bSBarry Smith   PetscKernel_A_gets_A_times_B_4: A = A * B with size bs=4
348209027a4SShri Abhyankar 
349209027a4SShri Abhyankar   Input Parameters:
350209027a4SShri Abhyankar +  A,B - square bs by bs arrays stored in column major order
351209027a4SShri Abhyankar -  W   - bs*bs work arrary
352209027a4SShri Abhyankar 
353209027a4SShri Abhyankar   Output Parameter:
354209027a4SShri Abhyankar .  A = A * B
355209027a4SShri Abhyankar */
356209027a4SShri Abhyankar 
35796b95a6bSBarry Smith #define PetscKernel_A_gets_A_times_B_4(A,B,W) 0; \
358209027a4SShri Abhyankar   { \
359209027a4SShri Abhyankar     PetscMemcpy(W,A,16*sizeof(MatScalar)); \
360209027a4SShri Abhyankar     A[0]  =  W[0]*B[0]  + W[4]*B[1]  + W[8]*B[2]   + W[12]*B[3]; \
361209027a4SShri Abhyankar     A[1]  =  W[1]*B[0]  + W[5]*B[1]  + W[9]*B[2]   + W[13]*B[3]; \
362209027a4SShri Abhyankar     A[2]  =  W[2]*B[0]  + W[6]*B[1]  + W[10]*B[2]  + W[14]*B[3]; \
363209027a4SShri Abhyankar     A[3]  =  W[3]*B[0]  + W[7]*B[1]  + W[11]*B[2]  + W[15]*B[3]; \
364209027a4SShri Abhyankar     A[4]  =  W[0]*B[4]  + W[4]*B[5]  + W[8]*B[6]   + W[12]*B[7]; \
365209027a4SShri Abhyankar     A[5]  =  W[1]*B[4]  + W[5]*B[5]  + W[9]*B[6]   + W[13]*B[7]; \
366209027a4SShri Abhyankar     A[6]  =  W[2]*B[4]  + W[6]*B[5]  + W[10]*B[6]  + W[14]*B[7]; \
367209027a4SShri Abhyankar     A[7]  =  W[3]*B[4]  + W[7]*B[5]  + W[11]*B[6]  + W[15]*B[7]; \
368209027a4SShri Abhyankar     A[8]  =  W[0]*B[8]  + W[4]*B[9]  + W[8]*B[10]  + W[12]*B[11]; \
369209027a4SShri Abhyankar     A[9]  =  W[1]*B[8]  + W[5]*B[9]  + W[9]*B[10]  + W[13]*B[11]; \
370209027a4SShri Abhyankar     A[10] = W[2]*B[8]  + W[6]*B[9]  + W[10]*B[10] + W[14]*B[11]; \
371209027a4SShri Abhyankar     A[11] = W[3]*B[8]  + W[7]*B[9]  + W[11]*B[10] + W[15]*B[11]; \
372209027a4SShri Abhyankar     A[12] = W[0]*B[12] + W[4]*B[13] + W[8]*B[14]  + W[12]*B[15]; \
373209027a4SShri Abhyankar     A[13] = W[1]*B[12] + W[5]*B[13] + W[9]*B[14]  + W[13]*B[15]; \
374209027a4SShri Abhyankar     A[14] = W[2]*B[12] + W[6]*B[13] + W[10]*B[14] + W[14]*B[15]; \
375209027a4SShri Abhyankar     A[15] = W[3]*B[12] + W[7]*B[13] + W[11]*B[14] + W[15]*B[15]; \
376209027a4SShri Abhyankar   }
377209027a4SShri Abhyankar 
378209027a4SShri Abhyankar /*
37996b95a6bSBarry Smith   PetscKernel_A_gets_A_minus_B_times_C_4: A = A - B * C with size bs=4
380209027a4SShri Abhyankar 
381209027a4SShri Abhyankar   Input Parameters:
382209027a4SShri Abhyankar +  A,B,C - square bs by bs arrays stored in column major order
383209027a4SShri Abhyankar 
384209027a4SShri Abhyankar   Output Parameter:
385209027a4SShri Abhyankar .  A = A - B*C
386209027a4SShri Abhyankar */
387209027a4SShri Abhyankar 
38896b95a6bSBarry Smith #define PetscKernel_A_gets_A_minus_B_times_C_4(A,B,C) 0; \
389209027a4SShri Abhyankar   { \
390209027a4SShri Abhyankar     A[0]  -=  B[0]*C[0]  + B[4]*C[1]  + B[8]*C[2]   + B[12]*C[3]; \
391209027a4SShri Abhyankar     A[1]  -=  B[1]*C[0]  + B[5]*C[1]  + B[9]*C[2]   + B[13]*C[3]; \
392209027a4SShri Abhyankar     A[2]  -=  B[2]*C[0]  + B[6]*C[1]  + B[10]*C[2]  + B[14]*C[3]; \
393209027a4SShri Abhyankar     A[3]  -=  B[3]*C[0]  + B[7]*C[1]  + B[11]*C[2]  + B[15]*C[3]; \
394209027a4SShri Abhyankar     A[4]  -=  B[0]*C[4]  + B[4]*C[5]  + B[8]*C[6]   + B[12]*C[7]; \
395209027a4SShri Abhyankar     A[5]  -=  B[1]*C[4]  + B[5]*C[5]  + B[9]*C[6]   + B[13]*C[7]; \
396209027a4SShri Abhyankar     A[6]  -=  B[2]*C[4]  + B[6]*C[5]  + B[10]*C[6]  + B[14]*C[7]; \
397209027a4SShri Abhyankar     A[7]  -=  B[3]*C[4]  + B[7]*C[5]  + B[11]*C[6]  + B[15]*C[7]; \
398209027a4SShri Abhyankar     A[8]  -=  B[0]*C[8]  + B[4]*C[9]  + B[8]*C[10]  + B[12]*C[11]; \
399209027a4SShri Abhyankar     A[9]  -=  B[1]*C[8]  + B[5]*C[9]  + B[9]*C[10]  + B[13]*C[11]; \
400209027a4SShri Abhyankar     A[10] -= B[2]*C[8]  + B[6]*C[9]  + B[10]*C[10] + B[14]*C[11]; \
401209027a4SShri Abhyankar     A[11] -= B[3]*C[8]  + B[7]*C[9]  + B[11]*C[10] + B[15]*C[11]; \
402209027a4SShri Abhyankar     A[12] -= B[0]*C[12] + B[4]*C[13] + B[8]*C[14]  + B[12]*C[15]; \
403209027a4SShri Abhyankar     A[13] -= B[1]*C[12] + B[5]*C[13] + B[9]*C[14]  + B[13]*C[15]; \
404209027a4SShri Abhyankar     A[14] -= B[2]*C[12] + B[6]*C[13] + B[10]*C[14] + B[14]*C[15]; \
405209027a4SShri Abhyankar     A[15] -= B[3]*C[12] + B[7]*C[13] + B[11]*C[14] + B[15]*C[15]; \
406209027a4SShri Abhyankar   }
407209027a4SShri Abhyankar 
40896b95a6bSBarry Smith #define PetscKernel_A_gets_A_times_B_5(A,B,W) 0; \
4090deeaf61SShri Abhyankar   { \
4100deeaf61SShri Abhyankar     PetscMemcpy(W,A,25*sizeof(MatScalar)); \
4110deeaf61SShri Abhyankar     A[0]  =  W[0]*B[0]  + W[5]*B[1]  + W[10]*B[2]   + W[15]*B[3] + W[20]*B[4]; \
4120deeaf61SShri Abhyankar     A[1]  =  W[1]*B[0]  + W[6]*B[1]  + W[11]*B[2]   + W[16]*B[3] + W[21]*B[4]; \
4130deeaf61SShri Abhyankar     A[2]  =  W[2]*B[0]  + W[7]*B[1]  + W[12]*B[2]  + W[17]*B[3]  + W[22]*B[4]; \
4140deeaf61SShri Abhyankar     A[3]  =  W[3]*B[0]  + W[8]*B[1]  + W[13]*B[2]  + W[18]*B[3]  + W[23]*B[4]; \
4150deeaf61SShri Abhyankar     A[4]  =  W[4]*B[0]  + W[9]*B[1]  + W[14]*B[2]   + W[19]*B[3] + W[24]*B[4]; \
4160deeaf61SShri Abhyankar     A[5]  =  W[0]*B[5]  + W[5]*B[6]  + W[10]*B[7]   + W[15]*B[8] + W[20]*B[9]; \
4170deeaf61SShri Abhyankar     A[6]  =  W[1]*B[5]  + W[6]*B[6]  + W[11]*B[7]   + W[16]*B[8] + W[21]*B[9]; \
4180deeaf61SShri Abhyankar     A[7]  =  W[2]*B[5]  + W[7]*B[6]  + W[12]*B[7]  + W[17]*B[8]  + W[22]*B[9]; \
4190deeaf61SShri Abhyankar     A[8]  =  W[3]*B[5]  + W[8]*B[6]  + W[13]*B[7]  + W[18]*B[8]  + W[23]*B[9]; \
4200deeaf61SShri Abhyankar     A[9]  =  W[4]*B[5]  + W[9]*B[6]  + W[14]*B[7]   + W[19]*B[8] + W[24]*B[9]; \
4210deeaf61SShri Abhyankar     A[10] =  W[0]*B[10]  + W[5]*B[11]  + W[10]*B[12]   + W[15]*B[13] + W[20]*B[14]; \
4220deeaf61SShri Abhyankar     A[11] =  W[1]*B[10]  + W[6]*B[11]  + W[11]*B[12]   + W[16]*B[13] + W[21]*B[14]; \
4230deeaf61SShri Abhyankar     A[12] =  W[2]*B[10]  + W[7]*B[11]  + W[12]*B[12]  + W[17]*B[13]  + W[22]*B[14]; \
4240deeaf61SShri Abhyankar     A[13] =  W[3]*B[10]  + W[8]*B[11]  + W[13]*B[12]  + W[18]*B[13]  + W[23]*B[14]; \
4250deeaf61SShri Abhyankar     A[14] =  W[4]*B[10]  + W[9]*B[11]  + W[14]*B[12]   + W[19]*B[13] + W[24]*B[14]; \
4260deeaf61SShri Abhyankar     A[15] =  W[0]*B[15]  + W[5]*B[16]  + W[10]*B[17]   + W[15]*B[18] + W[20]*B[19]; \
4270deeaf61SShri Abhyankar     A[16] =  W[1]*B[15]  + W[6]*B[16]  + W[11]*B[17]   + W[16]*B[18] + W[21]*B[19]; \
4280deeaf61SShri Abhyankar     A[17] =  W[2]*B[15]  + W[7]*B[16]  + W[12]*B[17]  + W[17]*B[18]  + W[22]*B[19]; \
4290deeaf61SShri Abhyankar     A[18] =  W[3]*B[15]  + W[8]*B[16]  + W[13]*B[17]  + W[18]*B[18]  + W[23]*B[19]; \
4300deeaf61SShri Abhyankar     A[19] =  W[4]*B[15]  + W[9]*B[16]  + W[14]*B[17]   + W[19]*B[18] + W[24]*B[19]; \
4310deeaf61SShri Abhyankar     A[20] =  W[0]*B[20]  + W[5]*B[21]  + W[10]*B[22]   + W[15]*B[23] + W[20]*B[24]; \
4320deeaf61SShri Abhyankar     A[21] =  W[1]*B[20]  + W[6]*B[21]  + W[11]*B[22]   + W[16]*B[23] + W[21]*B[24]; \
4330deeaf61SShri Abhyankar     A[22] =  W[2]*B[20]  + W[7]*B[21]  + W[12]*B[22]  + W[17]*B[23]  + W[22]*B[24]; \
4340deeaf61SShri Abhyankar     A[23] =  W[3]*B[20]  + W[8]*B[21]  + W[13]*B[22]  + W[18]*B[23]  + W[23]*B[24]; \
4350deeaf61SShri Abhyankar     A[24] =  W[4]*B[20]  + W[9]*B[21]  + W[14]*B[22]   + W[19]*B[23] + W[24]*B[24]; \
4360deeaf61SShri Abhyankar   }
4370deeaf61SShri Abhyankar 
4380deeaf61SShri Abhyankar /*
43996b95a6bSBarry Smith   PetscKernel_A_gets_A_minus_B_times_C_5: A = A - B * C with size bs=5
4400deeaf61SShri Abhyankar 
4410deeaf61SShri Abhyankar   Input Parameters:
4420deeaf61SShri Abhyankar +  A,B,C - square bs by bs arrays stored in column major order
4430deeaf61SShri Abhyankar 
4440deeaf61SShri Abhyankar   Output Parameter:
4450deeaf61SShri Abhyankar .  A = A - B*C
4460deeaf61SShri Abhyankar */
4470deeaf61SShri Abhyankar 
44896b95a6bSBarry Smith #define PetscKernel_A_gets_A_minus_B_times_C_5(A,B,C) 0; \
4490deeaf61SShri Abhyankar   { \
4500deeaf61SShri Abhyankar     A[0]  -=  B[0]*C[0]  + B[5]*C[1]  + B[10]*C[2]   + B[15]*C[3] + B[20]*C[4]; \
4510deeaf61SShri Abhyankar     A[1]  -=  B[1]*C[0]  + B[6]*C[1]  + B[11]*C[2]   + B[16]*C[3] + B[21]*C[4]; \
4520deeaf61SShri Abhyankar     A[2]  -=  B[2]*C[0]  + B[7]*C[1]  + B[12]*C[2]  + B[17]*C[3]  + B[22]*C[4]; \
4530deeaf61SShri Abhyankar     A[3]  -=  B[3]*C[0]  + B[8]*C[1]  + B[13]*C[2]  + B[18]*C[3]  + B[23]*C[4]; \
4540deeaf61SShri Abhyankar     A[4]  -=  B[4]*C[0]  + B[9]*C[1]  + B[14]*C[2]   + B[19]*C[3] + B[24]*C[4]; \
4550deeaf61SShri Abhyankar     A[5]  -=  B[0]*C[5]  + B[5]*C[6]  + B[10]*C[7]   + B[15]*C[8] + B[20]*C[9]; \
4560deeaf61SShri Abhyankar     A[6]  -=  B[1]*C[5]  + B[6]*C[6]  + B[11]*C[7]   + B[16]*C[8] + B[21]*C[9]; \
4570deeaf61SShri Abhyankar     A[7]  -=  B[2]*C[5]  + B[7]*C[6]  + B[12]*C[7]  + B[17]*C[8]  + B[22]*C[9]; \
4580deeaf61SShri Abhyankar     A[8]  -=  B[3]*C[5]  + B[8]*C[6]  + B[13]*C[7]  + B[18]*C[8]  + B[23]*C[9]; \
4590deeaf61SShri Abhyankar     A[9]  -=  B[4]*C[5]  + B[9]*C[6]  + B[14]*C[7]   + B[19]*C[8] + B[24]*C[9]; \
4600deeaf61SShri Abhyankar     A[10] -=  B[0]*C[10]  + B[5]*C[11]  + B[10]*C[12]   + B[15]*C[13] + B[20]*C[14]; \
4610deeaf61SShri Abhyankar     A[11] -=  B[1]*C[10]  + B[6]*C[11]  + B[11]*C[12]   + B[16]*C[13] + B[21]*C[14]; \
4620deeaf61SShri Abhyankar     A[12] -=  B[2]*C[10]  + B[7]*C[11]  + B[12]*C[12]  + B[17]*C[13]  + B[22]*C[14]; \
4630deeaf61SShri Abhyankar     A[13] -=  B[3]*C[10]  + B[8]*C[11]  + B[13]*C[12]  + B[18]*C[13]  + B[23]*C[14]; \
4640deeaf61SShri Abhyankar     A[14] -=  B[4]*C[10]  + B[9]*C[11]  + B[14]*C[12]   + B[19]*C[13] + B[24]*C[14]; \
4650deeaf61SShri Abhyankar     A[15] -=  B[0]*C[15]  + B[5]*C[16]  + B[10]*C[17]   + B[15]*C[18] + B[20]*C[19]; \
4660deeaf61SShri Abhyankar     A[16] -=  B[1]*C[15]  + B[6]*C[16]  + B[11]*C[17]   + B[16]*C[18] + B[21]*C[19]; \
4670deeaf61SShri Abhyankar     A[17] -=  B[2]*C[15]  + B[7]*C[16]  + B[12]*C[17]  + B[17]*C[18]  + B[22]*C[19]; \
4680deeaf61SShri Abhyankar     A[18] -=  B[3]*C[15]  + B[8]*C[16]  + B[13]*C[17]  + B[18]*C[18]  + B[23]*C[19]; \
4690deeaf61SShri Abhyankar     A[19] -=  B[4]*C[15]  + B[9]*C[16]  + B[14]*C[17]   + B[19]*C[18] + B[24]*C[19]; \
4700deeaf61SShri Abhyankar     A[20] -=  B[0]*C[20]  + B[5]*C[21]  + B[10]*C[22]   + B[15]*C[23] + B[20]*C[24]; \
4710deeaf61SShri Abhyankar     A[21] -=  B[1]*C[20]  + B[6]*C[21]  + B[11]*C[22]   + B[16]*C[23] + B[21]*C[24]; \
4720deeaf61SShri Abhyankar     A[22] -=  B[2]*C[20]  + B[7]*C[21]  + B[12]*C[22]  + B[17]*C[23]  + B[22]*C[24]; \
4730deeaf61SShri Abhyankar     A[23] -=  B[3]*C[20]  + B[8]*C[21]  + B[13]*C[22]  + B[18]*C[23]  + B[23]*C[24]; \
4740deeaf61SShri Abhyankar     A[24] -=  B[4]*C[20]  + B[9]*C[21]  + B[14]*C[22]   + B[19]*C[23] + B[24]*C[24]; \
4750deeaf61SShri Abhyankar   }
4760deeaf61SShri Abhyankar 
47796b95a6bSBarry Smith #define PetscKernel_A_gets_A_times_B_6(A,B,W) 0; \
478bef36659SShri Abhyankar   { \
479bef36659SShri Abhyankar     PetscMemcpy(W,A,36*sizeof(MatScalar)); \
480bef36659SShri Abhyankar     A[0]  =  W[0]*B[0]   + W[6]*B[1]   + W[12]*B[2]   + W[18]*B[3]  + W[24]*B[4]  + W[30]*B[5]; \
481bef36659SShri Abhyankar     A[1]  =  W[1]*B[0]   + W[7]*B[1]   + W[13]*B[2]   + W[19]*B[3]  + W[25]*B[4]  + W[31]*B[5]; \
482bef36659SShri Abhyankar     A[2]  =  W[2]*B[0]   + W[8]*B[1]   + W[14]*B[2]   + W[20]*B[3]  + W[26]*B[4]  + W[32]*B[5]; \
483bef36659SShri Abhyankar     A[3]  =  W[3]*B[0]   + W[9]*B[1]   + W[15]*B[2]   + W[21]*B[3]  + W[27]*B[4]  + W[33]*B[5]; \
484bef36659SShri Abhyankar     A[4]  =  W[4]*B[0]   + W[10]*B[1]  + W[16]*B[2]   + W[22]*B[3]  + W[28]*B[4]  + W[34]*B[5]; \
485bef36659SShri Abhyankar     A[5]  =  W[5]*B[0]   + W[11]*B[1]  + W[17]*B[2]   + W[23]*B[3]  + W[29]*B[4]  + W[35]*B[5]; \
486bef36659SShri Abhyankar     A[6]  =  W[0]*B[6]   + W[6]*B[7]   + W[12]*B[8]   + W[18]*B[9]  + W[24]*B[10] + W[30]*B[11]; \
487bef36659SShri Abhyankar     A[7]  =  W[1]*B[6]   + W[7]*B[7]   + W[13]*B[8]   + W[19]*B[9]  + W[25]*B[10] + W[31]*B[11]; \
488bef36659SShri Abhyankar     A[8]  =  W[2]*B[6]   + W[8]*B[7]   + W[14]*B[8]   + W[20]*B[9]  + W[26]*B[10] + W[32]*B[11]; \
489bef36659SShri Abhyankar     A[9]  =  W[3]*B[6]   + W[9]*B[7]   + W[15]*B[8]   + W[21]*B[9]  + W[27]*B[10] + W[33]*B[11]; \
490bef36659SShri Abhyankar     A[10] =  W[4]*B[6]   + W[10]*B[7]  + W[16]*B[8]   + W[22]*B[9]  + W[28]*B[10] + W[34]*B[11]; \
491bef36659SShri Abhyankar     A[11] =  W[5]*B[6]   + W[11]*B[7]  + W[17]*B[8]   + W[23]*B[9]  + W[29]*B[10] + W[35]*B[11]; \
492bef36659SShri Abhyankar     A[12] =  W[0]*B[12]  + W[6]*B[13]  + W[12]*B[14]  + W[18]*B[15] + W[24]*B[16] + W[30]*B[17]; \
493bef36659SShri Abhyankar     A[13] =  W[1]*B[12]  + W[7]*B[13]  + W[13]*B[14]  + W[19]*B[15] + W[25]*B[16] + W[31]*B[17]; \
494bef36659SShri Abhyankar     A[14] =  W[2]*B[12]  + W[8]*B[13]  + W[14]*B[14]  + W[20]*B[15] + W[26]*B[16] + W[32]*B[17]; \
495bef36659SShri Abhyankar     A[15] =  W[3]*B[12]  + W[9]*B[13]  + W[15]*B[14]  + W[21]*B[15] + W[27]*B[16] + W[33]*B[17]; \
496bef36659SShri Abhyankar     A[16] =  W[4]*B[12]  + W[10]*B[13] + W[16]*B[14]  + W[22]*B[15] + W[28]*B[16] + W[34]*B[17]; \
497bef36659SShri Abhyankar     A[17] =  W[5]*B[12]  + W[11]*B[13] + W[17]*B[14]  + W[23]*B[15] + W[29]*B[16] + W[35]*B[17]; \
498bef36659SShri Abhyankar     A[18] =  W[0]*B[18]  + W[6]*B[19]  + W[12]*B[20]  + W[18]*B[21] + W[24]*B[22] + W[30]*B[23]; \
499bef36659SShri Abhyankar     A[19] =  W[1]*B[18]  + W[7]*B[19]  + W[13]*B[20]  + W[19]*B[21] + W[25]*B[22] + W[31]*B[23]; \
500bef36659SShri Abhyankar     A[20] =  W[2]*B[18]  + W[8]*B[19]  + W[14]*B[20]  + W[20]*B[21] + W[26]*B[22] + W[32]*B[23]; \
501bef36659SShri Abhyankar     A[21] =  W[3]*B[18]  + W[9]*B[19]  + W[15]*B[20]  + W[21]*B[21] + W[27]*B[22] + W[33]*B[23]; \
502bef36659SShri Abhyankar     A[22] =  W[4]*B[18]  + W[10]*B[19] + W[16]*B[20]  + W[22]*B[21] + W[28]*B[22] + W[34]*B[23]; \
503bef36659SShri Abhyankar     A[23] =  W[5]*B[18]  + W[11]*B[19] + W[17]*B[20]  + W[23]*B[21] + W[29]*B[22] + W[35]*B[23]; \
504bef36659SShri Abhyankar     A[24] =  W[0]*B[24]  + W[6]*B[25]  + W[12]*B[26]  + W[18]*B[27] + W[24]*B[28] + W[30]*B[29]; \
505bef36659SShri Abhyankar     A[25] =  W[1]*B[24]  + W[7]*B[25]  + W[13]*B[26]  + W[19]*B[27] + W[25]*B[28] + W[31]*B[29]; \
506bef36659SShri Abhyankar     A[26] =  W[2]*B[24]  + W[8]*B[25]  + W[14]*B[26]  + W[20]*B[27] + W[26]*B[28] + W[32]*B[29]; \
507bef36659SShri Abhyankar     A[27] =  W[3]*B[24]  + W[9]*B[25]  + W[15]*B[26]  + W[21]*B[27] + W[27]*B[28] + W[33]*B[29]; \
508bef36659SShri Abhyankar     A[28] =  W[4]*B[24]  + W[10]*B[25] + W[16]*B[26]  + W[22]*B[27] + W[28]*B[28] + W[34]*B[29]; \
509bef36659SShri Abhyankar     A[29] =  W[5]*B[24]  + W[11]*B[25] + W[17]*B[26]  + W[23]*B[27] + W[29]*B[28] + W[35]*B[29]; \
510bef36659SShri Abhyankar     A[30] =  W[0]*B[30]  + W[6]*B[31]  + W[12]*B[32]  + W[18]*B[33] + W[24]*B[34] + W[30]*B[35]; \
511bef36659SShri Abhyankar     A[31] =  W[1]*B[30]  + W[7]*B[31]  + W[13]*B[32]  + W[19]*B[33] + W[25]*B[34] + W[31]*B[35]; \
512bef36659SShri Abhyankar     A[32] =  W[2]*B[30]  + W[8]*B[31]  + W[14]*B[32]  + W[20]*B[33] + W[26]*B[34] + W[32]*B[35]; \
513bef36659SShri Abhyankar     A[33] =  W[3]*B[30]  + W[9]*B[31]  + W[15]*B[32]  + W[21]*B[33] + W[27]*B[34] + W[33]*B[35]; \
514bef36659SShri Abhyankar     A[34] =  W[4]*B[30]  + W[10]*B[31] + W[16]*B[32]  + W[22]*B[33] + W[28]*B[34] + W[34]*B[35]; \
515bef36659SShri Abhyankar     A[35] =  W[5]*B[30]  + W[11]*B[31] + W[17]*B[32]  + W[23]*B[33] + W[29]*B[34] + W[35]*B[35]; \
516bef36659SShri Abhyankar   }
517bef36659SShri Abhyankar 
518bef36659SShri Abhyankar /*
51996b95a6bSBarry Smith   PetscKernel_A_gets_A_minus_B_times_C_6: A = A - B * C with size bs=6
520bef36659SShri Abhyankar 
521bef36659SShri Abhyankar   Input Parameters:
522bef36659SShri Abhyankar +  A,B,C - square bs by bs arrays stored in column major order
523bef36659SShri Abhyankar 
524bef36659SShri Abhyankar   Output Parameter:
525bef36659SShri Abhyankar .  A = A - B*C
526bef36659SShri Abhyankar */
527bef36659SShri Abhyankar 
52896b95a6bSBarry Smith #define PetscKernel_A_gets_A_minus_B_times_C_6(A,B,C) 0; \
529bef36659SShri Abhyankar   { \
530bef36659SShri Abhyankar     A[0]  -=  B[0]*C[0]   + B[6]*C[1]   + B[12]*C[2]   + B[18]*C[3]  + B[24]*C[4]  + B[30]*C[5]; \
531bef36659SShri Abhyankar     A[1]  -=  B[1]*C[0]   + B[7]*C[1]   + B[13]*C[2]   + B[19]*C[3]  + B[25]*C[4]  + B[31]*C[5]; \
532bef36659SShri Abhyankar     A[2]  -=  B[2]*C[0]   + B[8]*C[1]   + B[14]*C[2]   + B[20]*C[3]  + B[26]*C[4]  + B[32]*C[5]; \
533bef36659SShri Abhyankar     A[3]  -=  B[3]*C[0]   + B[9]*C[1]   + B[15]*C[2]   + B[21]*C[3]  + B[27]*C[4]  + B[33]*C[5]; \
534bef36659SShri Abhyankar     A[4]  -=  B[4]*C[0]   + B[10]*C[1]  + B[16]*C[2]   + B[22]*C[3]  + B[28]*C[4]  + B[34]*C[5]; \
535bef36659SShri Abhyankar     A[5]  -=  B[5]*C[0]   + B[11]*C[1]  + B[17]*C[2]   + B[23]*C[3]  + B[29]*C[4]  + B[35]*C[5]; \
536bef36659SShri Abhyankar     A[6]  -=  B[0]*C[6]   + B[6]*C[7]   + B[12]*C[8]   + B[18]*C[9]  + B[24]*C[10] + B[30]*C[11]; \
537bef36659SShri Abhyankar     A[7]  -=  B[1]*C[6]   + B[7]*C[7]   + B[13]*C[8]   + B[19]*C[9]  + B[25]*C[10] + B[31]*C[11]; \
538bef36659SShri Abhyankar     A[8]  -=  B[2]*C[6]   + B[8]*C[7]   + B[14]*C[8]   + B[20]*C[9]  + B[26]*C[10] + B[32]*C[11]; \
539bef36659SShri Abhyankar     A[9]  -=  B[3]*C[6]   + B[9]*C[7]   + B[15]*C[8]   + B[21]*C[9]  + B[27]*C[10] + B[33]*C[11]; \
540bef36659SShri Abhyankar     A[10] -=  B[4]*C[6]   + B[10]*C[7]  + B[16]*C[8]   + B[22]*C[9]  + B[28]*C[10] + B[34]*C[11]; \
541bef36659SShri Abhyankar     A[11] -=  B[5]*C[6]   + B[11]*C[7]  + B[17]*C[8]   + B[23]*C[9]  + B[29]*C[10] + B[35]*C[11]; \
542bef36659SShri Abhyankar     A[12] -=  B[0]*C[12]  + B[6]*C[13]  + B[12]*C[14]  + B[18]*C[15] + B[24]*C[16] + B[30]*C[17]; \
543bef36659SShri Abhyankar     A[13] -=  B[1]*C[12]  + B[7]*C[13]  + B[13]*C[14]  + B[19]*C[15] + B[25]*C[16] + B[31]*C[17]; \
544bef36659SShri Abhyankar     A[14] -=  B[2]*C[12]  + B[8]*C[13]  + B[14]*C[14]  + B[20]*C[15] + B[26]*C[16] + B[32]*C[17]; \
545bef36659SShri Abhyankar     A[15] -=  B[3]*C[12]  + B[9]*C[13]  + B[15]*C[14]  + B[21]*C[15] + B[27]*C[16] + B[33]*C[17]; \
546bef36659SShri Abhyankar     A[16] -=  B[4]*C[12]  + B[10]*C[13] + B[16]*C[14]  + B[22]*C[15] + B[28]*C[16] + B[34]*C[17]; \
547bef36659SShri Abhyankar     A[17] -=  B[5]*C[12]  + B[11]*C[13] + B[17]*C[14]  + B[23]*C[15] + B[29]*C[16] + B[35]*C[17]; \
548bef36659SShri Abhyankar     A[18] -=  B[0]*C[18]  + B[6]*C[19]  + B[12]*C[20]  + B[18]*C[21] + B[24]*C[22] + B[30]*C[23]; \
549bef36659SShri Abhyankar     A[19] -=  B[1]*C[18]  + B[7]*C[19]  + B[13]*C[20]  + B[19]*C[21] + B[25]*C[22] + B[31]*C[23]; \
550bef36659SShri Abhyankar     A[20] -=  B[2]*C[18]  + B[8]*C[19]  + B[14]*C[20]  + B[20]*C[21] + B[26]*C[22] + B[32]*C[23]; \
551bef36659SShri Abhyankar     A[21] -=  B[3]*C[18]  + B[9]*C[19]  + B[15]*C[20]  + B[21]*C[21] + B[27]*C[22] + B[33]*C[23]; \
552bef36659SShri Abhyankar     A[22] -=  B[4]*C[18]  + B[10]*C[19] + B[16]*C[20]  + B[22]*C[21] + B[28]*C[22] + B[34]*C[23]; \
553bef36659SShri Abhyankar     A[23] -=  B[5]*C[18]  + B[11]*C[19] + B[17]*C[20]  + B[23]*C[21] + B[29]*C[22] + B[35]*C[23]; \
554bef36659SShri Abhyankar     A[24] -=  B[0]*C[24]  + B[6]*C[25]  + B[12]*C[26]  + B[18]*C[27] + B[24]*C[28] + B[30]*C[29]; \
555bef36659SShri Abhyankar     A[25] -=  B[1]*C[24]  + B[7]*C[25]  + B[13]*C[26]  + B[19]*C[27] + B[25]*C[28] + B[31]*C[29]; \
556bef36659SShri Abhyankar     A[26] -=  B[2]*C[24]  + B[8]*C[25]  + B[14]*C[26]  + B[20]*C[27] + B[26]*C[28] + B[32]*C[29]; \
557bef36659SShri Abhyankar     A[27] -=  B[3]*C[24]  + B[9]*C[25]  + B[15]*C[26]  + B[21]*C[27] + B[27]*C[28] + B[33]*C[29]; \
558bef36659SShri Abhyankar     A[28] -=  B[4]*C[24]  + B[10]*C[25] + B[16]*C[26]  + B[22]*C[27] + B[28]*C[28] + B[34]*C[29]; \
559bef36659SShri Abhyankar     A[29] -=  B[5]*C[24]  + B[11]*C[25] + B[17]*C[26]  + B[23]*C[27] + B[29]*C[28] + B[35]*C[29]; \
560bef36659SShri Abhyankar     A[30] -=  B[0]*C[30]  + B[6]*C[31]  + B[12]*C[32]  + B[18]*C[33] + B[24]*C[34] + B[30]*C[35]; \
561bef36659SShri Abhyankar     A[31] -=  B[1]*C[30]  + B[7]*C[31]  + B[13]*C[32]  + B[19]*C[33] + B[25]*C[34] + B[31]*C[35]; \
562bef36659SShri Abhyankar     A[32] -=  B[2]*C[30]  + B[8]*C[31]  + B[14]*C[32]  + B[20]*C[33] + B[26]*C[34] + B[32]*C[35]; \
563bef36659SShri Abhyankar     A[33] -=  B[3]*C[30]  + B[9]*C[31]  + B[15]*C[32]  + B[21]*C[33] + B[27]*C[34] + B[33]*C[35]; \
564bef36659SShri Abhyankar     A[34] -=  B[4]*C[30]  + B[10]*C[31] + B[16]*C[32]  + B[22]*C[33] + B[28]*C[34] + B[34]*C[35]; \
565bef36659SShri Abhyankar     A[35] -=  B[5]*C[30]  + B[11]*C[31] + B[17]*C[32]  + B[23]*C[33] + B[29]*C[34] + B[35]*C[35]; \
566bef36659SShri Abhyankar   }
567bef36659SShri Abhyankar 
56896b95a6bSBarry Smith #define PetscKernel_A_gets_A_times_B_7(A,B,W) 0; \
569bef36659SShri Abhyankar   { \
570bef36659SShri Abhyankar     PetscMemcpy(W,A,49*sizeof(MatScalar)); \
571bef36659SShri Abhyankar     A[0]  =  W[0]*B[0]   + W[7]*B[1]   + W[14]*B[2]   + W[21]*B[3]  + W[28]*B[4]  + W[35]*B[5]  + W[42]*B[6]; \
572bef36659SShri Abhyankar     A[1]  =  W[1]*B[0]   + W[8]*B[1]   + W[15]*B[2]   + W[22]*B[3]  + W[29]*B[4]  + W[36]*B[5]  + W[43]*B[6]; \
573bef36659SShri Abhyankar     A[2]  =  W[2]*B[0]   + W[9]*B[1]   + W[16]*B[2]   + W[23]*B[3]  + W[30]*B[4]  + W[37]*B[5]  + W[44]*B[6]; \
574bef36659SShri Abhyankar     A[3]  =  W[3]*B[0]   + W[10]*B[1]   + W[17]*B[2]   + W[24]*B[3]  + W[31]*B[4]  + W[38]*B[5]  + W[45]*B[6]; \
575bef36659SShri Abhyankar     A[4]  =  W[4]*B[0]   + W[11]*B[1]  + W[18]*B[2]   + W[25]*B[3]  + W[32]*B[4]  + W[39]*B[5]  + W[46]*B[6]; \
576bef36659SShri Abhyankar     A[5]  =  W[5]*B[0]   + W[12]*B[1]  + W[19]*B[2]   + W[26]*B[3]  + W[33]*B[4]  + W[40]*B[5]  + W[47]*B[6]; \
577bef36659SShri Abhyankar     A[6]  =  W[6]*B[0]   + W[13]*B[1]   + W[20]*B[2]   + W[27]*B[3]  + W[34]*B[4] + W[41]*B[5]  + W[48]*B[6]; \
578bef36659SShri Abhyankar     A[7]  =  W[0]*B[7]   + W[7]*B[8]   + W[14]*B[9]   + W[21]*B[10]  + W[28]*B[11]  + W[35]*B[12]  + W[42]*B[13]; \
579bef36659SShri Abhyankar     A[8]  =  W[1]*B[7]   + W[8]*B[8]   + W[15]*B[9]   + W[22]*B[10]  + W[29]*B[11]  + W[36]*B[12]  + W[43]*B[13]; \
580bef36659SShri Abhyankar     A[9]  =  W[2]*B[7]   + W[9]*B[8]   + W[16]*B[9]   + W[23]*B[10]  + W[30]*B[11]  + W[37]*B[12]  + W[44]*B[13]; \
581bef36659SShri Abhyankar     A[10] =  W[3]*B[7]   + W[10]*B[8]   + W[17]*B[9]   + W[24]*B[10]  + W[31]*B[11]  + W[38]*B[12]  + W[45]*B[13]; \
582bef36659SShri Abhyankar     A[11] =  W[4]*B[7]   + W[11]*B[8]  + W[18]*B[9]   + W[25]*B[10]  + W[32]*B[11]  + W[39]*B[12]  + W[46]*B[13]; \
583bef36659SShri Abhyankar     A[12] =  W[5]*B[7]   + W[12]*B[8]  + W[19]*B[9]   + W[26]*B[10]  + W[33]*B[11]  + W[40]*B[12]  + W[47]*B[13]; \
584bef36659SShri Abhyankar     A[13] =  W[6]*B[7]   + W[13]*B[8]   + W[20]*B[9]   + W[27]*B[10]  + W[34]*B[11] + W[41]*B[12]  + W[48]*B[13]; \
585bef36659SShri Abhyankar     A[14] =  W[0]*B[14]   + W[7]*B[15]   + W[14]*B[16]   + W[21]*B[17]  + W[28]*B[18]  + W[35]*B[19]  + W[42]*B[20]; \
586bef36659SShri Abhyankar     A[15] =  W[1]*B[14]   + W[8]*B[15]   + W[15]*B[16]   + W[22]*B[17]  + W[29]*B[18]  + W[36]*B[19]  + W[43]*B[20]; \
587bef36659SShri Abhyankar     A[16] =  W[2]*B[14]   + W[9]*B[15]   + W[16]*B[16]   + W[23]*B[17]  + W[30]*B[18]  + W[37]*B[19]  + W[44]*B[20]; \
588bef36659SShri Abhyankar     A[17] =  W[3]*B[14]   + W[10]*B[15]   + W[17]*B[16]   + W[24]*B[17]  + W[31]*B[18]  + W[38]*B[19]  + W[45]*B[20]; \
589bef36659SShri Abhyankar     A[18] =  W[4]*B[14]   + W[11]*B[15]  + W[18]*B[16]   + W[25]*B[17]  + W[32]*B[18]  + W[39]*B[19]  + W[46]*B[20]; \
590bef36659SShri Abhyankar     A[19] =  W[5]*B[14]   + W[12]*B[15]  + W[19]*B[16]   + W[26]*B[17]  + W[33]*B[18]  + W[40]*B[19]  + W[47]*B[20]; \
591bef36659SShri Abhyankar     A[20] =  W[6]*B[14]   + W[13]*B[15]   + W[20]*B[16]   + W[27]*B[17]  + W[34]*B[18] + W[41]*B[19]  + W[48]*B[20]; \
592bef36659SShri Abhyankar     A[21] =  W[0]*B[21]   + W[7]*B[22]   + W[14]*B[23]   + W[21]*B[24]  + W[28]*B[25]  + W[35]*B[26]  + W[42]*B[27]; \
593bef36659SShri Abhyankar     A[22] =  W[1]*B[21]   + W[8]*B[22]   + W[15]*B[23]   + W[22]*B[24]  + W[29]*B[25]  + W[36]*B[26]  + W[43]*B[27]; \
594bef36659SShri Abhyankar     A[23] =  W[2]*B[21]   + W[9]*B[22]   + W[16]*B[23]   + W[23]*B[24]  + W[30]*B[25]  + W[37]*B[26]  + W[44]*B[27]; \
595bef36659SShri Abhyankar     A[24] =  W[3]*B[21]   + W[10]*B[22]   + W[17]*B[23]   + W[24]*B[24]  + W[31]*B[25]  + W[38]*B[26]  + W[45]*B[27]; \
596bef36659SShri Abhyankar     A[25] =  W[4]*B[21]   + W[11]*B[22]  + W[18]*B[23]   + W[25]*B[24]  + W[32]*B[25]  + W[39]*B[26]  + W[46]*B[27]; \
597bef36659SShri Abhyankar     A[26] =  W[5]*B[21]   + W[12]*B[22]  + W[19]*B[23]   + W[26]*B[24]  + W[33]*B[25]  + W[40]*B[26]  + W[47]*B[27]; \
598bef36659SShri Abhyankar     A[27] =  W[6]*B[21]   + W[13]*B[22]   + W[20]*B[23]   + W[27]*B[24]  + W[34]*B[25] + W[41]*B[26]  + W[48]*B[27]; \
599bef36659SShri Abhyankar     A[28] =  W[0]*B[28]   + W[7]*B[29]   + W[14]*B[30]   + W[21]*B[31]  + W[28]*B[32]  + W[35]*B[33]  + W[42]*B[34]; \
600bef36659SShri Abhyankar     A[29] =  W[1]*B[28]   + W[8]*B[29]   + W[15]*B[30]   + W[22]*B[31]  + W[29]*B[32]  + W[36]*B[33]  + W[43]*B[34]; \
601bef36659SShri Abhyankar     A[30] =  W[2]*B[28]   + W[9]*B[29]   + W[16]*B[30]   + W[23]*B[31]  + W[30]*B[32]  + W[37]*B[33]  + W[44]*B[34]; \
602bef36659SShri Abhyankar     A[31] =  W[3]*B[28]   + W[10]*B[29]   + W[17]*B[30]   + W[24]*B[31]  + W[31]*B[32]  + W[38]*B[33]  + W[45]*B[34]; \
603bef36659SShri Abhyankar     A[32] =  W[4]*B[28]   + W[11]*B[29]  + W[18]*B[30]   + W[25]*B[31]  + W[32]*B[32]  + W[39]*B[33]  + W[46]*B[34]; \
604bef36659SShri Abhyankar     A[33] =  W[5]*B[28]   + W[12]*B[29]  + W[19]*B[30]   + W[26]*B[31]  + W[33]*B[32]  + W[40]*B[33]  + W[47]*B[34]; \
605bef36659SShri Abhyankar     A[34] =  W[6]*B[28]   + W[13]*B[29]   + W[20]*B[30]   + W[27]*B[31]  + W[34]*B[32] + W[41]*B[33]  + W[48]*B[34]; \
606bef36659SShri Abhyankar     A[35] =  W[0]*B[35]   + W[7]*B[36]   + W[14]*B[37]   + W[21]*B[38]  + W[28]*B[39]  + W[35]*B[40]  + W[42]*B[41]; \
607bef36659SShri Abhyankar     A[36] =  W[1]*B[35]   + W[8]*B[36]   + W[15]*B[37]   + W[22]*B[38]  + W[29]*B[39]  + W[36]*B[40]  + W[43]*B[41]; \
608bef36659SShri Abhyankar     A[37] =  W[2]*B[35]   + W[9]*B[36]   + W[16]*B[37]   + W[23]*B[38]  + W[30]*B[39]  + W[37]*B[40]  + W[44]*B[41]; \
609bef36659SShri Abhyankar     A[38] =  W[3]*B[35]   + W[10]*B[36]   + W[17]*B[37]   + W[24]*B[38]  + W[31]*B[39]  + W[38]*B[40]  + W[45]*B[41]; \
610bef36659SShri Abhyankar     A[39] =  W[4]*B[35]   + W[11]*B[36]  + W[18]*B[37]   + W[25]*B[38]  + W[32]*B[39]  + W[39]*B[40]  + W[46]*B[41]; \
611bef36659SShri Abhyankar     A[40] =  W[5]*B[35]   + W[12]*B[36]  + W[19]*B[37]   + W[26]*B[38]  + W[33]*B[39]  + W[40]*B[40]  + W[47]*B[41]; \
612bef36659SShri Abhyankar     A[41] =  W[6]*B[35]   + W[13]*B[36]   + W[20]*B[37]   + W[27]*B[38]  + W[34]*B[39] + W[41]*B[40]  + W[48]*B[41]; \
613bef36659SShri Abhyankar     A[42] =  W[0]*B[42]   + W[7]*B[43]   + W[14]*B[44]   + W[21]*B[45]  + W[28]*B[46]  + W[35]*B[47]  + W[42]*B[48]; \
614bef36659SShri Abhyankar     A[43] =  W[1]*B[42]   + W[8]*B[43]   + W[15]*B[44]   + W[22]*B[45]  + W[29]*B[46]  + W[36]*B[47]  + W[43]*B[48]; \
615bef36659SShri Abhyankar     A[44] =  W[2]*B[42]   + W[9]*B[43]   + W[16]*B[44]   + W[23]*B[45]  + W[30]*B[46]  + W[37]*B[47]  + W[44]*B[48]; \
616bef36659SShri Abhyankar     A[45] =  W[3]*B[42]   + W[10]*B[43]   + W[17]*B[44]   + W[24]*B[45]  + W[31]*B[46]  + W[38]*B[47]  + W[45]*B[48]; \
617bef36659SShri Abhyankar     A[46] =  W[4]*B[42]   + W[11]*B[43]  + W[18]*B[44]   + W[25]*B[45]  + W[32]*B[46]  + W[39]*B[47]  + W[46]*B[48]; \
618bef36659SShri Abhyankar     A[47] =  W[5]*B[42]   + W[12]*B[43]  + W[19]*B[44]   + W[26]*B[45]  + W[33]*B[46]  + W[40]*B[47]  + W[47]*B[48]; \
619bef36659SShri Abhyankar     A[48] =  W[6]*B[42]   + W[13]*B[43]   + W[20]*B[44]   + W[27]*B[45]  + W[34]*B[46] + W[41]*B[47]  + W[48]*B[48]; \
620bef36659SShri Abhyankar   }
621bef36659SShri Abhyankar 
622bef36659SShri Abhyankar /*
62396b95a6bSBarry Smith   PetscKernel_A_gets_A_minus_B_times_C_7: A = A - B * C with size bs=7
624bef36659SShri Abhyankar 
625bef36659SShri Abhyankar   Input Parameters:
626bef36659SShri Abhyankar +  A,B,C - square bs by bs arrays stored in column major order
627bef36659SShri Abhyankar 
628bef36659SShri Abhyankar   Output Parameter:
629bef36659SShri Abhyankar .  A = A - B*C
630bef36659SShri Abhyankar */
631bef36659SShri Abhyankar 
63296b95a6bSBarry Smith #define PetscKernel_A_gets_A_minus_B_times_C_7(A,B,C) 0; \
633bef36659SShri Abhyankar   { \
634bef36659SShri Abhyankar     A[0]  -=  B[0]*C[0]   + B[7]*C[1]   + B[14]*C[2]   + B[21]*C[3]  + B[28]*C[4]  + B[35]*C[5]  + B[42]*C[6]; \
635bef36659SShri Abhyankar     A[1]  -=  B[1]*C[0]   + B[8]*C[1]   + B[15]*C[2]   + B[22]*C[3]  + B[29]*C[4]  + B[36]*C[5]  + B[43]*C[6]; \
636bef36659SShri Abhyankar     A[2]  -=  B[2]*C[0]   + B[9]*C[1]   + B[16]*C[2]   + B[23]*C[3]  + B[30]*C[4]  + B[37]*C[5]  + B[44]*C[6]; \
637bef36659SShri Abhyankar     A[3]  -=  B[3]*C[0]   + B[10]*C[1]   + B[17]*C[2]   + B[24]*C[3]  + B[31]*C[4]  + B[38]*C[5]  + B[45]*C[6]; \
638bef36659SShri Abhyankar     A[4]  -=  B[4]*C[0]   + B[11]*C[1]  + B[18]*C[2]   + B[25]*C[3]  + B[32]*C[4]  + B[39]*C[5]  + B[46]*C[6]; \
639bef36659SShri Abhyankar     A[5]  -=  B[5]*C[0]   + B[12]*C[1]  + B[19]*C[2]   + B[26]*C[3]  + B[33]*C[4]  + B[40]*C[5]  + B[47]*C[6]; \
640bef36659SShri Abhyankar     A[6]  -=  B[6]*C[0]   + B[13]*C[1]   + B[20]*C[2]   + B[27]*C[3]  + B[34]*C[4] + B[41]*C[5]  + B[48]*C[6]; \
641bef36659SShri Abhyankar     A[7]  -=  B[0]*C[7]   + B[7]*C[8]   + B[14]*C[9]   + B[21]*C[10]  + B[28]*C[11]  + B[35]*C[12]  + B[42]*C[13]; \
642bef36659SShri Abhyankar     A[8]  -=  B[1]*C[7]   + B[8]*C[8]   + B[15]*C[9]   + B[22]*C[10]  + B[29]*C[11]  + B[36]*C[12]  + B[43]*C[13]; \
643bef36659SShri Abhyankar     A[9]  -=  B[2]*C[7]   + B[9]*C[8]   + B[16]*C[9]   + B[23]*C[10]  + B[30]*C[11]  + B[37]*C[12]  + B[44]*C[13]; \
644bef36659SShri Abhyankar     A[10] -=  B[3]*C[7]   + B[10]*C[8]   + B[17]*C[9]   + B[24]*C[10]  + B[31]*C[11]  + B[38]*C[12]  + B[45]*C[13]; \
645bef36659SShri Abhyankar     A[11] -=  B[4]*C[7]   + B[11]*C[8]  + B[18]*C[9]   + B[25]*C[10]  + B[32]*C[11]  + B[39]*C[12]  + B[46]*C[13]; \
646bef36659SShri Abhyankar     A[12] -=  B[5]*C[7]   + B[12]*C[8]  + B[19]*C[9]   + B[26]*C[10]  + B[33]*C[11]  + B[40]*C[12]  + B[47]*C[13]; \
647bef36659SShri Abhyankar     A[13] -=  B[6]*C[7]   + B[13]*C[8]   + B[20]*C[9]   + B[27]*C[10]  + B[34]*C[11] + B[41]*C[12]  + B[48]*C[13]; \
648bef36659SShri Abhyankar     A[14] -=  B[0]*C[14]   + B[7]*C[15]   + B[14]*C[16]   + B[21]*C[17]  + B[28]*C[18]  + B[35]*C[19]  + B[42]*C[20]; \
649bef36659SShri Abhyankar     A[15] -=  B[1]*C[14]   + B[8]*C[15]   + B[15]*C[16]   + B[22]*C[17]  + B[29]*C[18]  + B[36]*C[19]  + B[43]*C[20]; \
650bef36659SShri Abhyankar     A[16] -=  B[2]*C[14]   + B[9]*C[15]   + B[16]*C[16]   + B[23]*C[17]  + B[30]*C[18]  + B[37]*C[19]  + B[44]*C[20]; \
651bef36659SShri Abhyankar     A[17] -=  B[3]*C[14]   + B[10]*C[15]   + B[17]*C[16]   + B[24]*C[17]  + B[31]*C[18]  + B[38]*C[19]  + B[45]*C[20]; \
652bef36659SShri Abhyankar     A[18] -=  B[4]*C[14]   + B[11]*C[15]  + B[18]*C[16]   + B[25]*C[17]  + B[32]*C[18]  + B[39]*C[19]  + B[46]*C[20]; \
653bef36659SShri Abhyankar     A[19] -=  B[5]*C[14]   + B[12]*C[15]  + B[19]*C[16]   + B[26]*C[17]  + B[33]*C[18]  + B[40]*C[19]  + B[47]*C[20]; \
654bef36659SShri Abhyankar     A[20] -=  B[6]*C[14]   + B[13]*C[15]   + B[20]*C[16]   + B[27]*C[17]  + B[34]*C[18] + B[41]*C[19]  + B[48]*C[20]; \
655bef36659SShri Abhyankar     A[21] -=  B[0]*C[21]   + B[7]*C[22]   + B[14]*C[23]   + B[21]*C[24]  + B[28]*C[25]  + B[35]*C[26]  + B[42]*C[27]; \
656bef36659SShri Abhyankar     A[22] -=  B[1]*C[21]   + B[8]*C[22]   + B[15]*C[23]   + B[22]*C[24]  + B[29]*C[25]  + B[36]*C[26]  + B[43]*C[27]; \
657bef36659SShri Abhyankar     A[23] -=  B[2]*C[21]   + B[9]*C[22]   + B[16]*C[23]   + B[23]*C[24]  + B[30]*C[25]  + B[37]*C[26]  + B[44]*C[27]; \
658bef36659SShri Abhyankar     A[24] -=  B[3]*C[21]   + B[10]*C[22]   + B[17]*C[23]   + B[24]*C[24]  + B[31]*C[25]  + B[38]*C[26]  + B[45]*C[27]; \
659bef36659SShri Abhyankar     A[25] -=  B[4]*C[21]   + B[11]*C[22]  + B[18]*C[23]   + B[25]*C[24]  + B[32]*C[25]  + B[39]*C[26]  + B[46]*C[27]; \
660bef36659SShri Abhyankar     A[26] -=  B[5]*C[21]   + B[12]*C[22]  + B[19]*C[23]   + B[26]*C[24]  + B[33]*C[25]  + B[40]*C[26]  + B[47]*C[27]; \
661bef36659SShri Abhyankar     A[27] -=  B[6]*C[21]   + B[13]*C[22]   + B[20]*C[23]   + B[27]*C[24]  + B[34]*C[25] + B[41]*C[26]  + B[48]*C[27]; \
662bef36659SShri Abhyankar     A[28] -=  B[0]*C[28]   + B[7]*C[29]   + B[14]*C[30]   + B[21]*C[31]  + B[28]*C[32]  + B[35]*C[33]  + B[42]*C[34]; \
663bef36659SShri Abhyankar     A[29] -=  B[1]*C[28]   + B[8]*C[29]   + B[15]*C[30]   + B[22]*C[31]  + B[29]*C[32]  + B[36]*C[33]  + B[43]*C[34]; \
664bef36659SShri Abhyankar     A[30] -=  B[2]*C[28]   + B[9]*C[29]   + B[16]*C[30]   + B[23]*C[31]  + B[30]*C[32]  + B[37]*C[33]  + B[44]*C[34]; \
665bef36659SShri Abhyankar     A[31] -=  B[3]*C[28]   + B[10]*C[29]   + B[17]*C[30]   + B[24]*C[31]  + B[31]*C[32]  + B[38]*C[33]  + B[45]*C[34]; \
666bef36659SShri Abhyankar     A[32] -=  B[4]*C[28]   + B[11]*C[29]  + B[18]*C[30]   + B[25]*C[31]  + B[32]*C[32]  + B[39]*C[33]  + B[46]*C[34]; \
667bef36659SShri Abhyankar     A[33] -=  B[5]*C[28]   + B[12]*C[29]  + B[19]*C[30]   + B[26]*C[31]  + B[33]*C[32]  + B[40]*C[33]  + B[47]*C[34]; \
668bef36659SShri Abhyankar     A[34] -=  B[6]*C[28]   + B[13]*C[29]   + B[20]*C[30]   + B[27]*C[31]  + B[34]*C[32] + B[41]*C[33]  + B[48]*C[34]; \
669bef36659SShri Abhyankar     A[35] -=  B[0]*C[35]   + B[7]*C[36]   + B[14]*C[37]   + B[21]*C[38]  + B[28]*C[39]  + B[35]*C[40]  + B[42]*C[41]; \
670bef36659SShri Abhyankar     A[36] -=  B[1]*C[35]   + B[8]*C[36]   + B[15]*C[37]   + B[22]*C[38]  + B[29]*C[39]  + B[36]*C[40]  + B[43]*C[41]; \
671bef36659SShri Abhyankar     A[37] -=  B[2]*C[35]   + B[9]*C[36]   + B[16]*C[37]   + B[23]*C[38]  + B[30]*C[39]  + B[37]*C[40]  + B[44]*C[41]; \
672bef36659SShri Abhyankar     A[38] -=  B[3]*C[35]   + B[10]*C[36]   + B[17]*C[37]   + B[24]*C[38]  + B[31]*C[39]  + B[38]*C[40]  + B[45]*C[41]; \
673bef36659SShri Abhyankar     A[39] -=  B[4]*C[35]   + B[11]*C[36]  + B[18]*C[37]   + B[25]*C[38]  + B[32]*C[39]  + B[39]*C[40]  + B[46]*C[41]; \
674bef36659SShri Abhyankar     A[40] -=  B[5]*C[35]   + B[12]*C[36]  + B[19]*C[37]   + B[26]*C[38]  + B[33]*C[39]  + B[40]*C[40]  + B[47]*C[41]; \
675bef36659SShri Abhyankar     A[41] -=  B[6]*C[35]   + B[13]*C[36]   + B[20]*C[37]   + B[27]*C[38]  + B[34]*C[39] + B[41]*C[40]  + B[48]*C[41]; \
676bef36659SShri Abhyankar     A[42] -=  B[0]*C[42]   + B[7]*C[43]   + B[14]*C[44]   + B[21]*C[45]  + B[28]*C[46]  + B[35]*C[47]  + B[42]*C[48]; \
677bef36659SShri Abhyankar     A[43] -=  B[1]*C[42]   + B[8]*C[43]   + B[15]*C[44]   + B[22]*C[45]  + B[29]*C[46]  + B[36]*C[47]  + B[43]*C[48]; \
678bef36659SShri Abhyankar     A[44] -=  B[2]*C[42]   + B[9]*C[43]   + B[16]*C[44]   + B[23]*C[45]  + B[30]*C[46]  + B[37]*C[47]  + B[44]*C[48]; \
679bef36659SShri Abhyankar     A[45] -=  B[3]*C[42]   + B[10]*C[43]   + B[17]*C[44]   + B[24]*C[45]  + B[31]*C[46]  + B[38]*C[47]  + B[45]*C[48]; \
680bef36659SShri Abhyankar     A[46] -=  B[4]*C[42]   + B[11]*C[43]  + B[18]*C[44]   + B[25]*C[45]  + B[32]*C[46]  + B[39]*C[47]  + B[46]*C[48]; \
681bef36659SShri Abhyankar     A[47] -=  B[5]*C[42]   + B[12]*C[43]  + B[19]*C[44]   + B[26]*C[45]  + B[33]*C[46]  + B[40]*C[47]  + B[47]*C[48]; \
682bef36659SShri Abhyankar     A[48] -=  B[6]*C[42]   + B[13]*C[43]   + B[20]*C[44]   + B[27]*C[45]  + B[34]*C[46] + B[41]*C[47]  + B[48]*C[48]; \
683bef36659SShri Abhyankar   }
684bef36659SShri Abhyankar 
685*96e086a2SDaniel Kokron #if defined(__INTEL_COMPILER) && (defined(__AVX2__) || defined (__AVX512F__))
686*96e086a2SDaniel Kokron #define PetscKernel_A_gets_A_times_B_9(A,B,W) 0; \
687*96e086a2SDaniel Kokron   {  \
688*96e086a2SDaniel Kokron      PetscInt __i; \
689*96e086a2SDaniel Kokron     __m256d S0,S1,S2,S3,S4,S5,S6,S7,S8,B0,B1,B2,B6,B7,B8,A0,A1,A2,A3,A4,A5,A6,A7,A8; \
690*96e086a2SDaniel Kokron \
691*96e086a2SDaniel Kokron     PetscMemcpy(W,A,81*sizeof(MatScalar)); \
692*96e086a2SDaniel Kokron     for (__i=0; __i<3; __i++) {\
693*96e086a2SDaniel Kokron \
694*96e086a2SDaniel Kokron       S0 = _mm256_setzero_pd(); S1 = _mm256_setzero_pd(); S2 = _mm256_setzero_pd(); \
695*96e086a2SDaniel Kokron       S3 = _mm256_setzero_pd(); S4 = _mm256_setzero_pd(); S5 = _mm256_setzero_pd(); \
696*96e086a2SDaniel Kokron       S6 = _mm256_setzero_pd(); S7 = _mm256_setzero_pd(); S8 = _mm256_setzero_pd(); \
697*96e086a2SDaniel Kokron \
698*96e086a2SDaniel Kokron       A0 = _mm256_loadu_pd    (W+ 0); A1 = _mm256_loadu_pd    (W+ 4); A2 = _mm256_loadu_pd    (W+ 8); \
699*96e086a2SDaniel Kokron       B0 = _mm256_broadcast_sd(B+ 0); B1 = _mm256_broadcast_sd(B+ 9); B2 = _mm256_broadcast_sd(B+18); \
700*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A0,B0,S0); S1 = _mm256_fmadd_pd(A1,B0,S1); S2 = _mm256_fmadd_pd(A2,B0,S2); \
701*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A0,B1,S3); S4 = _mm256_fmadd_pd(A1,B1,S4); S5 = _mm256_fmadd_pd(A2,B1,S5); \
702*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A0,B2,S6); S7 = _mm256_fmadd_pd(A1,B2,S7); S8 = _mm256_fmadd_pd(A2,B2,S8); \
703*96e086a2SDaniel Kokron \
704*96e086a2SDaniel Kokron       A3 = _mm256_loadu_pd    (W+ 9); A4 = _mm256_loadu_pd    (W+13); A5 = _mm256_loadu_pd    (W+17); \
705*96e086a2SDaniel Kokron       B6 = _mm256_broadcast_sd(B+ 1); B7 = _mm256_broadcast_sd(B+10); B8 = _mm256_broadcast_sd(B+19); \
706*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A3,B6,S0); S1 = _mm256_fmadd_pd(A4,B6,S1); S2 = _mm256_fmadd_pd(A5,B6,S2); \
707*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A3,B7,S3); S4 = _mm256_fmadd_pd(A4,B7,S4); S5 = _mm256_fmadd_pd(A5,B7,S5); \
708*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A3,B8,S6); S7 = _mm256_fmadd_pd(A4,B8,S7); S8 = _mm256_fmadd_pd(A5,B8,S8); \
709*96e086a2SDaniel Kokron \
710*96e086a2SDaniel Kokron       A6 = _mm256_loadu_pd    (W+18); A7 = _mm256_loadu_pd    (W+22); A8 = _mm256_loadu_pd    (W+26); \
711*96e086a2SDaniel Kokron       B0 = _mm256_broadcast_sd(B+ 2); B1 = _mm256_broadcast_sd(B+11); B2 = _mm256_broadcast_sd(B+20); \
712*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A6,B0,S0); S1 = _mm256_fmadd_pd(A7,B0,S1); S2 = _mm256_fmadd_pd(A2,B0,S2); \
713*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A6,B1,S3); S4 = _mm256_fmadd_pd(A7,B1,S4); S5 = _mm256_fmadd_pd(A2,B1,S5); \
714*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A6,B2,S6); S7 = _mm256_fmadd_pd(A7,B2,S7); S8 = _mm256_fmadd_pd(A5,B2,S8); \
715*96e086a2SDaniel Kokron \
716*96e086a2SDaniel Kokron       A0 = _mm256_loadu_pd    (W+27); A1 = _mm256_loadu_pd    (W+31); A2 = _mm256_loadu_pd    (W+35); \
717*96e086a2SDaniel Kokron       B6 = _mm256_broadcast_sd(B+ 3); B7 = _mm256_broadcast_sd(B+12); B8 = _mm256_broadcast_sd(B+21); \
718*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A0,B6,S0); S1 = _mm256_fmadd_pd(A1,B6,S1); S2 = _mm256_fmadd_pd(A2,B6,S2); \
719*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A0,B7,S3); S4 = _mm256_fmadd_pd(A1,B7,S4); S5 = _mm256_fmadd_pd(A2,B7,S5); \
720*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A0,B8,S6); S7 = _mm256_fmadd_pd(A1,B8,S7); S8 = _mm256_fmadd_pd(A2,B8,S8); \
721*96e086a2SDaniel Kokron \
722*96e086a2SDaniel Kokron       A3 = _mm256_loadu_pd    (W+36); A4 = _mm256_loadu_pd    (W+40); A5 = _mm256_loadu_pd    (W+44); \
723*96e086a2SDaniel Kokron       B0 = _mm256_broadcast_sd(B+ 4); B1 = _mm256_broadcast_sd(B+13); B2 = _mm256_broadcast_sd(B+22); \
724*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A3,B0,S0); S1 = _mm256_fmadd_pd(A4,B0,S1); S2 = _mm256_fmadd_pd(A5,B0,S2); \
725*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A3,B1,S3); S4 = _mm256_fmadd_pd(A4,B1,S4); S5 = _mm256_fmadd_pd(A5,B1,S5); \
726*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A3,B2,S6); S7 = _mm256_fmadd_pd(A4,B2,S7); S8 = _mm256_fmadd_pd(A5,B2,S8); \
727*96e086a2SDaniel Kokron \
728*96e086a2SDaniel Kokron       A0 = _mm256_loadu_pd    (W+45); A1 = _mm256_loadu_pd    (W+49); A2 = _mm256_loadu_pd    (W+53); \
729*96e086a2SDaniel Kokron       B6 = _mm256_broadcast_sd(B+ 5); B7 = _mm256_broadcast_sd(B+14); B8 = _mm256_broadcast_sd(B+23); \
730*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A0,B6,S0); S1 = _mm256_fmadd_pd(A1,B6,S1); S2 = _mm256_fmadd_pd(A2,B6,S2); \
731*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A0,B7,S3); S4 = _mm256_fmadd_pd(A1,B7,S4); S5 = _mm256_fmadd_pd(A2,B7,S5); \
732*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A0,B8,S6); S7 = _mm256_fmadd_pd(A1,B8,S7); S8 = _mm256_fmadd_pd(A2,B8,S8); \
733*96e086a2SDaniel Kokron \
734*96e086a2SDaniel Kokron       A3 = _mm256_loadu_pd    (W+54); A4 = _mm256_loadu_pd    (W+58); A5 = _mm256_loadu_pd    (W+62); \
735*96e086a2SDaniel Kokron       B0 = _mm256_broadcast_sd(B+ 6); B1 = _mm256_broadcast_sd(B+15); B2 = _mm256_broadcast_sd(B+24); \
736*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A3,B0,S0); S1 = _mm256_fmadd_pd(A4,B0,S1); S2 = _mm256_fmadd_pd(A5,B0,S2); \
737*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A3,B1,S3); S4 = _mm256_fmadd_pd(A4,B1,S4); S5 = _mm256_fmadd_pd(A5,B1,S5); \
738*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A3,B2,S6); S7 = _mm256_fmadd_pd(A4,B2,S7); S8 = _mm256_fmadd_pd(A5,B2,S8); \
739*96e086a2SDaniel Kokron \
740*96e086a2SDaniel Kokron       A6 = _mm256_loadu_pd    (W+63); A7 = _mm256_loadu_pd    (W+67); A8 = _mm256_loadu_pd    (W+71); \
741*96e086a2SDaniel Kokron       B6 = _mm256_broadcast_sd(B+ 7); B7 = _mm256_broadcast_sd(B+16); B8 = _mm256_broadcast_sd(B+25); \
742*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A6,B6,S0); S1 = _mm256_fmadd_pd(A7,B6,S1); S2 = _mm256_fmadd_pd(A8,B6,S2); \
743*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A6,B7,S3); S4 = _mm256_fmadd_pd(A7,B7,S4); S5 = _mm256_fmadd_pd(A8,B7,S5); \
744*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A6,B8,S6); S7 = _mm256_fmadd_pd(A7,B8,S7); S8 = _mm256_fmadd_pd(A8,B8,S8); \
745*96e086a2SDaniel Kokron \
746*96e086a2SDaniel Kokron       A0 = _mm256_loadu_pd    (W+72); A1 = _mm256_loadu_pd    (W+76); A2 = _mm256_broadcast_sd(W+80); \
747*96e086a2SDaniel Kokron       B0 = _mm256_broadcast_sd(B+ 8); B1 = _mm256_broadcast_sd(B+17); B2 = _mm256_broadcast_sd(B+26); \
748*96e086a2SDaniel Kokron       S0 = _mm256_fmadd_pd(A0,B0,S0); S1 = _mm256_fmadd_pd(A1,B0,S1); S2 = _mm256_fmadd_pd(A2,B0,S2); \
749*96e086a2SDaniel Kokron       S3 = _mm256_fmadd_pd(A0,B1,S3); S4 = _mm256_fmadd_pd(A1,B1,S4); S5 = _mm256_fmadd_pd(A2,B1,S5); \
750*96e086a2SDaniel Kokron       S6 = _mm256_fmadd_pd(A0,B2,S6); S7 = _mm256_fmadd_pd(A1,B2,S7); S8 = _mm256_fmadd_pd(A2,B2,S8); \
751*96e086a2SDaniel Kokron \
752*96e086a2SDaniel Kokron            _mm256_storeu_pd(&A[ 0+__i*27], S0); _mm256_storeu_pd(&A[ 4+__i*27], S1); _mm256_maskstore_pd(&A[ 8+__i*27], _mm256_set_epi64x(0LL, 0LL, 0LL, 1LL<<63), S2); \
753*96e086a2SDaniel Kokron            _mm256_storeu_pd(&A[ 9+__i*27], S3); _mm256_storeu_pd(&A[13+__i*27], S4); _mm256_maskstore_pd(&A[17+__i*27], _mm256_set_epi64x(0LL, 0LL, 0LL, 1LL<<63), S5); \
754*96e086a2SDaniel Kokron            _mm256_storeu_pd(&A[18+__i*27], S6); _mm256_storeu_pd(&A[22+__i*27], S7); _mm256_maskstore_pd(&A[26+__i*27], _mm256_set_epi64x(0LL, 0LL, 0LL, 1LL<<63), S8); \
755*96e086a2SDaniel Kokron \
756*96e086a2SDaniel Kokron       B += 27; \
757*96e086a2SDaniel Kokron     } \
758*96e086a2SDaniel Kokron   }
759*96e086a2SDaniel Kokron #else
760*96e086a2SDaniel Kokron #define PetscKernel_A_gets_A_times_B_9(A,B,W) 0; \
761*96e086a2SDaniel Kokron   { \
762*96e086a2SDaniel Kokron     PetscMemcpy(W,A,81*sizeof(MatScalar)); \
763*96e086a2SDaniel Kokron     A[ 0] = W[0]*B[ 0] + W[ 9]*B[ 1] + W[18]*B[ 2] + W[27]*B[ 3] + W[36]*B[ 4] + W[45]*B[ 5] + W[54]*B[ 6] + W[63]*B[ 7] + W[72]*B[ 8]; \
764*96e086a2SDaniel Kokron     A[ 1] = W[1]*B[ 0] + W[10]*B[ 1] + W[19]*B[ 2] + W[28]*B[ 3] + W[37]*B[ 4] + W[46]*B[ 5] + W[55]*B[ 6] + W[64]*B[ 7] + W[73]*B[ 8]; \
765*96e086a2SDaniel Kokron     A[ 2] = W[2]*B[ 0] + W[11]*B[ 1] + W[20]*B[ 2] + W[29]*B[ 3] + W[38]*B[ 4] + W[47]*B[ 5] + W[56]*B[ 6] + W[65]*B[ 7] + W[74]*B[ 8]; \
766*96e086a2SDaniel Kokron     A[ 3] = W[3]*B[ 0] + W[12]*B[ 1] + W[21]*B[ 2] + W[30]*B[ 3] + W[39]*B[ 4] + W[48]*B[ 5] + W[57]*B[ 6] + W[66]*B[ 7] + W[75]*B[ 8]; \
767*96e086a2SDaniel Kokron     A[ 4] = W[4]*B[ 0] + W[13]*B[ 1] + W[22]*B[ 2] + W[31]*B[ 3] + W[40]*B[ 4] + W[49]*B[ 5] + W[58]*B[ 6] + W[67]*B[ 7] + W[76]*B[ 8]; \
768*96e086a2SDaniel Kokron     A[ 5] = W[5]*B[ 0] + W[14]*B[ 1] + W[23]*B[ 2] + W[32]*B[ 3] + W[41]*B[ 4] + W[50]*B[ 5] + W[59]*B[ 6] + W[68]*B[ 7] + W[77]*B[ 8]; \
769*96e086a2SDaniel Kokron     A[ 6] = W[6]*B[ 0] + W[15]*B[ 1] + W[24]*B[ 2] + W[33]*B[ 3] + W[42]*B[ 4] + W[51]*B[ 5] + W[60]*B[ 6] + W[69]*B[ 7] + W[78]*B[ 8]; \
770*96e086a2SDaniel Kokron     A[ 7] = W[7]*B[ 0] + W[16]*B[ 1] + W[25]*B[ 2] + W[34]*B[ 3] + W[43]*B[ 4] + W[52]*B[ 5] + W[61]*B[ 6] + W[70]*B[ 7] + W[79]*B[ 8]; \
771*96e086a2SDaniel Kokron     A[ 8] = W[8]*B[ 0] + W[17]*B[ 1] + W[26]*B[ 2] + W[35]*B[ 3] + W[44]*B[ 4] + W[53]*B[ 5] + W[62]*B[ 6] + W[71]*B[ 7] + W[80]*B[ 8]; \
772*96e086a2SDaniel Kokron \
773*96e086a2SDaniel Kokron     A[ 9] = W[0]*B[ 9] + W[ 9]*B[10] + W[18]*B[11] + W[27]*B[12] + W[36]*B[13] + W[45]*B[14] + W[54]*B[15] + W[63]*B[16] + W[72]*B[17]; \
774*96e086a2SDaniel Kokron     A[10] = W[1]*B[ 9] + W[10]*B[10] + W[19]*B[11] + W[28]*B[12] + W[37]*B[13] + W[46]*B[14] + W[55]*B[15] + W[64]*B[16] + W[73]*B[17]; \
775*96e086a2SDaniel Kokron     A[11] = W[2]*B[ 9] + W[11]*B[10] + W[20]*B[11] + W[29]*B[12] + W[38]*B[13] + W[47]*B[14] + W[56]*B[15] + W[65]*B[16] + W[74]*B[17]; \
776*96e086a2SDaniel Kokron     A[12] = W[3]*B[ 9] + W[12]*B[10] + W[21]*B[11] + W[30]*B[12] + W[39]*B[13] + W[48]*B[14] + W[57]*B[15] + W[66]*B[16] + W[75]*B[17]; \
777*96e086a2SDaniel Kokron     A[13] = W[4]*B[ 9] + W[13]*B[10] + W[22]*B[11] + W[31]*B[12] + W[40]*B[13] + W[49]*B[14] + W[58]*B[15] + W[67]*B[16] + W[76]*B[17]; \
778*96e086a2SDaniel Kokron     A[14] = W[5]*B[ 9] + W[14]*B[10] + W[23]*B[11] + W[32]*B[12] + W[41]*B[13] + W[50]*B[14] + W[59]*B[15] + W[68]*B[16] + W[77]*B[17]; \
779*96e086a2SDaniel Kokron     A[15] = W[6]*B[ 9] + W[15]*B[10] + W[24]*B[11] + W[33]*B[12] + W[42]*B[13] + W[51]*B[14] + W[60]*B[15] + W[69]*B[16] + W[78]*B[17]; \
780*96e086a2SDaniel Kokron     A[16] = W[7]*B[ 9] + W[16]*B[10] + W[25]*B[11] + W[34]*B[12] + W[43]*B[13] + W[52]*B[14] + W[61]*B[15] + W[70]*B[16] + W[79]*B[17]; \
781*96e086a2SDaniel Kokron     A[17] = W[8]*B[ 9] + W[17]*B[10] + W[26]*B[11] + W[35]*B[12] + W[44]*B[13] + W[53]*B[14] + W[62]*B[15] + W[71]*B[16] + W[80]*B[17]; \
782*96e086a2SDaniel Kokron \
783*96e086a2SDaniel Kokron     A[18] = W[0]*B[18] + W[ 9]*B[19] + W[18]*B[20] + W[27]*B[21] + W[36]*B[22] + W[45]*B[23] + W[54]*B[24] + W[63]*B[25] + W[72]*B[26]; \
784*96e086a2SDaniel Kokron     A[19] = W[1]*B[18] + W[10]*B[19] + W[19]*B[20] + W[28]*B[21] + W[37]*B[22] + W[46]*B[23] + W[55]*B[24] + W[64]*B[25] + W[73]*B[26]; \
785*96e086a2SDaniel Kokron     A[20] = W[2]*B[18] + W[11]*B[19] + W[20]*B[20] + W[29]*B[21] + W[38]*B[22] + W[47]*B[23] + W[56]*B[24] + W[65]*B[25] + W[74]*B[26]; \
786*96e086a2SDaniel Kokron     A[21] = W[3]*B[18] + W[12]*B[19] + W[21]*B[20] + W[30]*B[21] + W[39]*B[22] + W[48]*B[23] + W[57]*B[24] + W[66]*B[25] + W[75]*B[26]; \
787*96e086a2SDaniel Kokron     A[22] = W[4]*B[18] + W[13]*B[19] + W[22]*B[20] + W[31]*B[21] + W[40]*B[22] + W[49]*B[23] + W[58]*B[24] + W[67]*B[25] + W[76]*B[26]; \
788*96e086a2SDaniel Kokron     A[23] = W[5]*B[18] + W[14]*B[19] + W[23]*B[20] + W[32]*B[21] + W[41]*B[22] + W[50]*B[23] + W[59]*B[24] + W[68]*B[25] + W[77]*B[26]; \
789*96e086a2SDaniel Kokron     A[24] = W[6]*B[18] + W[15]*B[19] + W[24]*B[20] + W[33]*B[21] + W[42]*B[22] + W[51]*B[23] + W[60]*B[24] + W[69]*B[25] + W[78]*B[26]; \
790*96e086a2SDaniel Kokron     A[25] = W[7]*B[18] + W[16]*B[19] + W[25]*B[20] + W[34]*B[21] + W[43]*B[22] + W[52]*B[23] + W[61]*B[24] + W[70]*B[25] + W[79]*B[26]; \
791*96e086a2SDaniel Kokron     A[26] = W[8]*B[18] + W[17]*B[19] + W[26]*B[20] + W[35]*B[21] + W[44]*B[22] + W[53]*B[23] + W[62]*B[24] + W[71]*B[25] + W[80]*B[26]; \
792*96e086a2SDaniel Kokron \
793*96e086a2SDaniel Kokron     A[27] = W[0]*B[27] + W[ 9]*B[28] + W[18]*B[29] + W[27]*B[30] + W[36]*B[31] + W[45]*B[32] + W[54]*B[33] + W[63]*B[34] + W[72]*B[35]; \
794*96e086a2SDaniel Kokron     A[28] = W[1]*B[27] + W[10]*B[28] + W[19]*B[29] + W[28]*B[30] + W[37]*B[31] + W[46]*B[32] + W[55]*B[33] + W[64]*B[34] + W[73]*B[35]; \
795*96e086a2SDaniel Kokron     A[29] = W[2]*B[27] + W[11]*B[28] + W[20]*B[29] + W[29]*B[30] + W[38]*B[31] + W[47]*B[32] + W[56]*B[33] + W[65]*B[34] + W[74]*B[35]; \
796*96e086a2SDaniel Kokron     A[30] = W[3]*B[27] + W[12]*B[28] + W[21]*B[29] + W[30]*B[30] + W[39]*B[31] + W[48]*B[32] + W[57]*B[33] + W[66]*B[34] + W[75]*B[35]; \
797*96e086a2SDaniel Kokron     A[31] = W[4]*B[27] + W[13]*B[28] + W[22]*B[29] + W[31]*B[30] + W[40]*B[31] + W[49]*B[32] + W[58]*B[33] + W[67]*B[34] + W[76]*B[35]; \
798*96e086a2SDaniel Kokron     A[32] = W[5]*B[27] + W[14]*B[28] + W[23]*B[29] + W[32]*B[30] + W[41]*B[31] + W[50]*B[32] + W[59]*B[33] + W[68]*B[34] + W[77]*B[35]; \
799*96e086a2SDaniel Kokron     A[33] = W[6]*B[27] + W[15]*B[28] + W[24]*B[29] + W[33]*B[30] + W[42]*B[31] + W[51]*B[32] + W[60]*B[33] + W[69]*B[34] + W[78]*B[35]; \
800*96e086a2SDaniel Kokron     A[34] = W[7]*B[27] + W[16]*B[28] + W[25]*B[29] + W[34]*B[30] + W[43]*B[31] + W[52]*B[32] + W[61]*B[33] + W[70]*B[34] + W[79]*B[35]; \
801*96e086a2SDaniel Kokron     A[35] = W[8]*B[27] + W[17]*B[28] + W[26]*B[29] + W[35]*B[30] + W[44]*B[31] + W[53]*B[32] + W[62]*B[33] + W[71]*B[34] + W[80]*B[35]; \
802*96e086a2SDaniel Kokron \
803*96e086a2SDaniel Kokron     A[36] = W[0]*B[36] + W[ 9]*B[37] + W[18]*B[38] + W[27]*B[39] + W[36]*B[40] + W[45]*B[41] + W[54]*B[42] + W[63]*B[43] + W[72]*B[44]; \
804*96e086a2SDaniel Kokron     A[37] = W[1]*B[36] + W[10]*B[37] + W[19]*B[38] + W[28]*B[39] + W[37]*B[40] + W[46]*B[41] + W[55]*B[42] + W[64]*B[43] + W[73]*B[44]; \
805*96e086a2SDaniel Kokron     A[38] = W[2]*B[36] + W[11]*B[37] + W[20]*B[38] + W[29]*B[39] + W[38]*B[40] + W[47]*B[41] + W[56]*B[42] + W[65]*B[43] + W[74]*B[44]; \
806*96e086a2SDaniel Kokron     A[39] = W[3]*B[36] + W[12]*B[37] + W[21]*B[38] + W[30]*B[39] + W[39]*B[40] + W[48]*B[41] + W[57]*B[42] + W[66]*B[43] + W[75]*B[44]; \
807*96e086a2SDaniel Kokron     A[40] = W[4]*B[36] + W[13]*B[37] + W[22]*B[38] + W[31]*B[39] + W[40]*B[40] + W[49]*B[41] + W[58]*B[42] + W[67]*B[43] + W[76]*B[44]; \
808*96e086a2SDaniel Kokron     A[41] = W[5]*B[36] + W[14]*B[37] + W[23]*B[38] + W[32]*B[39] + W[41]*B[40] + W[50]*B[41] + W[59]*B[42] + W[68]*B[43] + W[77]*B[44]; \
809*96e086a2SDaniel Kokron     A[42] = W[6]*B[36] + W[15]*B[37] + W[24]*B[38] + W[33]*B[39] + W[42]*B[40] + W[51]*B[41] + W[60]*B[42] + W[69]*B[43] + W[78]*B[44]; \
810*96e086a2SDaniel Kokron     A[43] = W[7]*B[36] + W[16]*B[37] + W[25]*B[38] + W[34]*B[39] + W[43]*B[40] + W[52]*B[41] + W[61]*B[42] + W[70]*B[43] + W[79]*B[44]; \
811*96e086a2SDaniel Kokron     A[44] = W[8]*B[36] + W[17]*B[37] + W[26]*B[38] + W[35]*B[39] + W[44]*B[40] + W[53]*B[41] + W[62]*B[42] + W[71]*B[43] + W[80]*B[44]; \
812*96e086a2SDaniel Kokron \
813*96e086a2SDaniel Kokron     A[45] = W[0]*B[45] + W[ 9]*B[46] + W[18]*B[47] + W[27]*B[48] + W[36]*B[49] + W[45]*B[50] + W[54]*B[51] + W[63]*B[52] + W[72]*B[53]; \
814*96e086a2SDaniel Kokron     A[46] = W[1]*B[45] + W[10]*B[46] + W[19]*B[47] + W[28]*B[48] + W[37]*B[49] + W[46]*B[50] + W[55]*B[51] + W[64]*B[52] + W[73]*B[53]; \
815*96e086a2SDaniel Kokron     A[47] = W[2]*B[45] + W[11]*B[46] + W[20]*B[47] + W[29]*B[48] + W[38]*B[49] + W[47]*B[50] + W[56]*B[51] + W[65]*B[52] + W[74]*B[53]; \
816*96e086a2SDaniel Kokron     A[48] = W[3]*B[45] + W[12]*B[46] + W[21]*B[47] + W[30]*B[48] + W[39]*B[49] + W[48]*B[50] + W[57]*B[51] + W[66]*B[52] + W[75]*B[53]; \
817*96e086a2SDaniel Kokron     A[49] = W[4]*B[45] + W[13]*B[46] + W[22]*B[47] + W[31]*B[48] + W[40]*B[49] + W[49]*B[50] + W[58]*B[51] + W[67]*B[52] + W[76]*B[53]; \
818*96e086a2SDaniel Kokron     A[50] = W[5]*B[45] + W[14]*B[46] + W[23]*B[47] + W[32]*B[48] + W[41]*B[49] + W[50]*B[50] + W[59]*B[51] + W[68]*B[52] + W[77]*B[53]; \
819*96e086a2SDaniel Kokron     A[51] = W[6]*B[45] + W[15]*B[46] + W[24]*B[47] + W[33]*B[48] + W[42]*B[49] + W[51]*B[50] + W[60]*B[51] + W[69]*B[52] + W[78]*B[53]; \
820*96e086a2SDaniel Kokron     A[52] = W[7]*B[45] + W[16]*B[46] + W[25]*B[47] + W[34]*B[48] + W[43]*B[49] + W[52]*B[50] + W[61]*B[51] + W[70]*B[52] + W[79]*B[53]; \
821*96e086a2SDaniel Kokron     A[53] = W[8]*B[45] + W[17]*B[46] + W[26]*B[47] + W[35]*B[48] + W[44]*B[49] + W[53]*B[50] + W[62]*B[51] + W[71]*B[52] + W[80]*B[53]; \
822*96e086a2SDaniel Kokron \
823*96e086a2SDaniel Kokron     A[54] = W[0]*B[54] + W[ 9]*B[55] + W[18]*B[56] + W[27]*B[57] + W[36]*B[58] + W[45]*B[59] + W[54]*B[60] + W[63]*B[61] + W[72]*B[62]; \
824*96e086a2SDaniel Kokron     A[55] = W[1]*B[54] + W[10]*B[55] + W[19]*B[56] + W[28]*B[57] + W[37]*B[58] + W[46]*B[59] + W[55]*B[60] + W[64]*B[61] + W[73]*B[62]; \
825*96e086a2SDaniel Kokron     A[56] = W[2]*B[54] + W[11]*B[55] + W[20]*B[56] + W[29]*B[57] + W[38]*B[58] + W[47]*B[59] + W[56]*B[60] + W[65]*B[61] + W[74]*B[62]; \
826*96e086a2SDaniel Kokron     A[57] = W[3]*B[54] + W[12]*B[55] + W[21]*B[56] + W[30]*B[57] + W[39]*B[58] + W[48]*B[59] + W[57]*B[60] + W[66]*B[61] + W[75]*B[62]; \
827*96e086a2SDaniel Kokron     A[58] = W[4]*B[54] + W[13]*B[55] + W[22]*B[56] + W[31]*B[57] + W[40]*B[58] + W[49]*B[59] + W[58]*B[60] + W[67]*B[61] + W[76]*B[62]; \
828*96e086a2SDaniel Kokron     A[59] = W[5]*B[54] + W[14]*B[55] + W[23]*B[56] + W[32]*B[57] + W[41]*B[58] + W[50]*B[59] + W[59]*B[60] + W[68]*B[61] + W[77]*B[62]; \
829*96e086a2SDaniel Kokron     A[60] = W[6]*B[54] + W[15]*B[55] + W[24]*B[56] + W[33]*B[57] + W[42]*B[58] + W[51]*B[59] + W[60]*B[60] + W[69]*B[61] + W[78]*B[62]; \
830*96e086a2SDaniel Kokron     A[61] = W[7]*B[54] + W[16]*B[55] + W[25]*B[56] + W[34]*B[57] + W[43]*B[58] + W[52]*B[59] + W[61]*B[60] + W[70]*B[61] + W[79]*B[62]; \
831*96e086a2SDaniel Kokron     A[62] = W[8]*B[54] + W[17]*B[55] + W[26]*B[56] + W[35]*B[57] + W[44]*B[58] + W[53]*B[59] + W[62]*B[60] + W[71]*B[61] + W[80]*B[62]; \
832*96e086a2SDaniel Kokron \
833*96e086a2SDaniel Kokron     A[63] = W[0]*B[63] + W[ 9]*B[64] + W[18]*B[65] + W[27]*B[66] + W[36]*B[67] + W[45]*B[68] + W[54]*B[69] + W[63]*B[70] + W[72]*B[71]; \
834*96e086a2SDaniel Kokron     A[64] = W[1]*B[63] + W[10]*B[64] + W[19]*B[65] + W[28]*B[66] + W[37]*B[67] + W[46]*B[68] + W[55]*B[69] + W[64]*B[70] + W[73]*B[71]; \
835*96e086a2SDaniel Kokron     A[65] = W[2]*B[63] + W[11]*B[64] + W[20]*B[65] + W[29]*B[66] + W[38]*B[67] + W[47]*B[68] + W[56]*B[69] + W[65]*B[70] + W[74]*B[71]; \
836*96e086a2SDaniel Kokron     A[66] = W[3]*B[63] + W[12]*B[64] + W[21]*B[65] + W[30]*B[66] + W[39]*B[67] + W[48]*B[68] + W[57]*B[69] + W[66]*B[70] + W[75]*B[71]; \
837*96e086a2SDaniel Kokron     A[67] = W[4]*B[63] + W[13]*B[64] + W[22]*B[65] + W[31]*B[66] + W[40]*B[67] + W[49]*B[68] + W[58]*B[69] + W[67]*B[70] + W[76]*B[71]; \
838*96e086a2SDaniel Kokron     A[68] = W[5]*B[63] + W[14]*B[64] + W[23]*B[65] + W[32]*B[66] + W[41]*B[67] + W[50]*B[68] + W[59]*B[69] + W[68]*B[70] + W[77]*B[71]; \
839*96e086a2SDaniel Kokron     A[69] = W[6]*B[63] + W[15]*B[64] + W[24]*B[65] + W[33]*B[66] + W[42]*B[67] + W[51]*B[68] + W[60]*B[69] + W[69]*B[70] + W[78]*B[71]; \
840*96e086a2SDaniel Kokron     A[70] = W[7]*B[63] + W[16]*B[64] + W[25]*B[65] + W[34]*B[66] + W[43]*B[67] + W[52]*B[68] + W[61]*B[69] + W[70]*B[70] + W[79]*B[71]; \
841*96e086a2SDaniel Kokron     A[71] = W[8]*B[63] + W[17]*B[64] + W[26]*B[65] + W[35]*B[66] + W[44]*B[67] + W[53]*B[68] + W[62]*B[69] + W[71]*B[70] + W[80]*B[71]; \
842*96e086a2SDaniel Kokron \
843*96e086a2SDaniel Kokron     A[72] = W[0]*B[72] + W[ 9]*B[73] + W[18]*B[74] + W[27]*B[75] + W[36]*B[76] + W[45]*B[77] + W[54]*B[78] + W[63]*B[79] + W[72]*B[80]; \
844*96e086a2SDaniel Kokron     A[73] = W[1]*B[72] + W[10]*B[73] + W[19]*B[74] + W[28]*B[75] + W[37]*B[76] + W[46]*B[77] + W[55]*B[78] + W[64]*B[79] + W[73]*B[80]; \
845*96e086a2SDaniel Kokron     A[74] = W[2]*B[72] + W[11]*B[73] + W[20]*B[74] + W[29]*B[75] + W[38]*B[76] + W[47]*B[77] + W[56]*B[78] + W[65]*B[79] + W[74]*B[80]; \
846*96e086a2SDaniel Kokron     A[75] = W[3]*B[72] + W[12]*B[73] + W[21]*B[74] + W[30]*B[75] + W[39]*B[76] + W[48]*B[77] + W[57]*B[78] + W[66]*B[79] + W[75]*B[80]; \
847*96e086a2SDaniel Kokron     A[76] = W[4]*B[72] + W[13]*B[73] + W[22]*B[74] + W[31]*B[75] + W[40]*B[76] + W[49]*B[77] + W[58]*B[78] + W[67]*B[79] + W[76]*B[80]; \
848*96e086a2SDaniel Kokron     A[77] = W[5]*B[72] + W[14]*B[73] + W[23]*B[74] + W[32]*B[75] + W[41]*B[76] + W[50]*B[77] + W[59]*B[78] + W[68]*B[79] + W[77]*B[80]; \
849*96e086a2SDaniel Kokron     A[78] = W[6]*B[72] + W[15]*B[73] + W[24]*B[74] + W[33]*B[75] + W[42]*B[76] + W[51]*B[77] + W[60]*B[78] + W[69]*B[79] + W[78]*B[80]; \
850*96e086a2SDaniel Kokron     A[79] = W[7]*B[72] + W[16]*B[73] + W[25]*B[74] + W[34]*B[75] + W[43]*B[76] + W[52]*B[77] + W[61]*B[78] + W[70]*B[79] + W[79]*B[80]; \
851*96e086a2SDaniel Kokron     A[80] = W[8]*B[72] + W[17]*B[73] + W[26]*B[74] + W[35]*B[75] + W[44]*B[76] + W[53]*B[77] + W[62]*B[78] + W[71]*B[79] + W[80]*B[80]; \
852*96e086a2SDaniel Kokron   }
853*96e086a2SDaniel Kokron #endif
854*96e086a2SDaniel Kokron 
855*96e086a2SDaniel Kokron #if defined(__INTEL_COMPILER) && (defined(__AVX2__) || defined (__AVX512F__))
856*96e086a2SDaniel Kokron #define PetscKernel_A_gets_A_minus_B_times_C_9(A,B,C) 0; \
857*96e086a2SDaniel Kokron   {  \
858*96e086a2SDaniel Kokron     PetscInt __i; \
859*96e086a2SDaniel Kokron     __m256d A0,A1,A2,A3,A4,A5,A6,A7,A8,B0,B1,B2,B3,B4,B5,B6,B7,B8,C0,C1,C2,C3,C4,C5,C6,C7,C8; \
860*96e086a2SDaniel Kokron \
861*96e086a2SDaniel Kokron     for (__i=0; __i<3; __i++) {\
862*96e086a2SDaniel Kokron \
863*96e086a2SDaniel Kokron       A0 = _mm256_loadu_pd    (A+ 0); A1 = _mm256_loadu_pd    (A+ 4); A2 = _mm256_loadu_pd(A+ 8); \
864*96e086a2SDaniel Kokron       A3 = _mm256_loadu_pd    (A+ 9); A4 = _mm256_loadu_pd    (A+13); A5 = _mm256_loadu_pd(A+17); \
865*96e086a2SDaniel Kokron       A6 = _mm256_loadu_pd    (A+18); A7 = _mm256_loadu_pd    (A+22); A8 = _mm256_loadu_pd(A+26); \
866*96e086a2SDaniel Kokron \
867*96e086a2SDaniel Kokron       B0 = _mm256_loadu_pd     (B+ 0); B1 = _mm256_loadu_pd     (B+ 4); B2 = _mm256_loadu_pd     (B+ 8); \
868*96e086a2SDaniel Kokron       C0 = _mm256_broadcast_sd (C+ 0); C1 = _mm256_broadcast_sd (C+ 9); C2 = _mm256_broadcast_sd (C+18); \
869*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B0,C0,A0); A1 = _mm256_fnmadd_pd(B1,C0,A1); A2 = _mm256_fnmadd_pd(B2,C0,A2); \
870*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B0,C1,A3); A4 = _mm256_fnmadd_pd(B1,C1,A4); A5 = _mm256_fnmadd_pd(B2,C1,A5); \
871*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B0,C2,A6); A7 = _mm256_fnmadd_pd(B1,C2,A7); A8 = _mm256_fnmadd_pd(B2,C2,A8); \
872*96e086a2SDaniel Kokron \
873*96e086a2SDaniel Kokron       B3 = _mm256_loadu_pd     (B+ 9); B4 = _mm256_loadu_pd     (B+13); B5 = _mm256_loadu_pd     (B+17); \
874*96e086a2SDaniel Kokron       C3 = _mm256_broadcast_sd (C+ 1); C4 = _mm256_broadcast_sd (C+10); C5 = _mm256_broadcast_sd (C+19); \
875*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B3,C3,A0); A1 = _mm256_fnmadd_pd(B4,C3,A1); A2 = _mm256_fnmadd_pd(B5,C3,A2); \
876*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B3,C4,A3); A4 = _mm256_fnmadd_pd(B4,C4,A4); A5 = _mm256_fnmadd_pd(B5,C4,A5); \
877*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B3,C5,A6); A7 = _mm256_fnmadd_pd(B4,C5,A7); A8 = _mm256_fnmadd_pd(B5,C5,A8); \
878*96e086a2SDaniel Kokron \
879*96e086a2SDaniel Kokron       B6 = _mm256_loadu_pd     (B+18); B7 = _mm256_loadu_pd     (B+22); B8 = _mm256_loadu_pd     (B+26); \
880*96e086a2SDaniel Kokron       C6 = _mm256_broadcast_sd (C+ 2); C7 = _mm256_broadcast_sd (C+11); C8 = _mm256_broadcast_sd (C+20); \
881*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B6,C6,A0); A1 = _mm256_fnmadd_pd(B7,C6,A1); A2 = _mm256_fnmadd_pd(B8,C6,A2); \
882*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B6,C7,A3); A4 = _mm256_fnmadd_pd(B7,C7,A4); A5 = _mm256_fnmadd_pd(B8,C7,A5); \
883*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B6,C8,A6); A7 = _mm256_fnmadd_pd(B7,C8,A7); A8 = _mm256_fnmadd_pd(B8,C8,A8); \
884*96e086a2SDaniel Kokron \
885*96e086a2SDaniel Kokron       B0 = _mm256_loadu_pd     (B+27); B1 = _mm256_loadu_pd     (B+31); B2 = _mm256_loadu_pd     (B+35); \
886*96e086a2SDaniel Kokron       C0 = _mm256_broadcast_sd (C+ 3); C1 = _mm256_broadcast_sd (C+12); C2 = _mm256_broadcast_sd (C+21); \
887*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B0,C0,A0); A1 = _mm256_fnmadd_pd(B1,C0,A1); A2 = _mm256_fnmadd_pd(B2,C0,A2); \
888*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B0,C1,A3); A4 = _mm256_fnmadd_pd(B1,C1,A4); A5 = _mm256_fnmadd_pd(B2,C1,A5); \
889*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B0,C2,A6); A7 = _mm256_fnmadd_pd(B1,C2,A7); A8 = _mm256_fnmadd_pd(B2,C2,A8); \
890*96e086a2SDaniel Kokron \
891*96e086a2SDaniel Kokron       B3 = _mm256_loadu_pd     (B+36); B4 = _mm256_loadu_pd     (B+40); B5 = _mm256_loadu_pd     (B+44); \
892*96e086a2SDaniel Kokron       C3 = _mm256_broadcast_sd (C+ 4); C4 = _mm256_broadcast_sd (C+13); C5 = _mm256_broadcast_sd (C+22); \
893*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B3,C3,A0); A1 = _mm256_fnmadd_pd(B4,C3,A1); A2 = _mm256_fnmadd_pd(B5,C3,A2); \
894*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B3,C4,A3); A4 = _mm256_fnmadd_pd(B4,C4,A4); A5 = _mm256_fnmadd_pd(B5,C4,A5); \
895*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B3,C5,A6); A7 = _mm256_fnmadd_pd(B4,C5,A7); A8 = _mm256_fnmadd_pd(B5,C5,A8); \
896*96e086a2SDaniel Kokron \
897*96e086a2SDaniel Kokron       B6 = _mm256_loadu_pd     (B+45); B7 = _mm256_loadu_pd     (B+49); B8 = _mm256_loadu_pd     (B+53); \
898*96e086a2SDaniel Kokron       C6 = _mm256_broadcast_sd (C+ 5); C7 = _mm256_broadcast_sd (C+14); C8 = _mm256_broadcast_sd (C+23); \
899*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B6,C6,A0); A1 = _mm256_fnmadd_pd(B7,C6,A1); A2 = _mm256_fnmadd_pd(B8,C6,A2); \
900*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B6,C7,A3); A4 = _mm256_fnmadd_pd(B7,C7,A4); A5 = _mm256_fnmadd_pd(B8,C7,A5); \
901*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B6,C8,A6); A7 = _mm256_fnmadd_pd(B7,C8,A7); A8 = _mm256_fnmadd_pd(B8,C8,A8); \
902*96e086a2SDaniel Kokron \
903*96e086a2SDaniel Kokron       B0 = _mm256_loadu_pd     (B+54); B1 = _mm256_loadu_pd     (B+58); B2 = _mm256_loadu_pd     (B+62); \
904*96e086a2SDaniel Kokron       C0 = _mm256_broadcast_sd (C+ 6); C1 = _mm256_broadcast_sd (C+15); C2 = _mm256_broadcast_sd (C+24); \
905*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B0,C0,A0); A1 = _mm256_fnmadd_pd(B1,C0,A1); A2 = _mm256_fnmadd_pd(B2,C0,A2); \
906*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B0,C1,A3); A4 = _mm256_fnmadd_pd(B1,C1,A4); A5 = _mm256_fnmadd_pd(B2,C1,A5); \
907*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B0,C2,A6); A7 = _mm256_fnmadd_pd(B1,C2,A7); A8 = _mm256_fnmadd_pd(B2,C2,A8); \
908*96e086a2SDaniel Kokron \
909*96e086a2SDaniel Kokron       B3 = _mm256_loadu_pd     (B+63); B4 = _mm256_loadu_pd     (B+67); B5 = _mm256_loadu_pd     (B+71); \
910*96e086a2SDaniel Kokron       C3 = _mm256_broadcast_sd (C+ 7); C4 = _mm256_broadcast_sd( C+16); C5 = _mm256_broadcast_sd (C+25); \
911*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B3,C3,A0); A1 = _mm256_fnmadd_pd(B4,C3,A1); A2 = _mm256_fnmadd_pd(B5,C3,A2); \
912*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B3,C4,A3); A4 = _mm256_fnmadd_pd(B4,C4,A4); A5 = _mm256_fnmadd_pd(B5,C4,A5); \
913*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B3,C5,A6); A7 = _mm256_fnmadd_pd(B4,C5,A7); A8 = _mm256_fnmadd_pd(B5,C5,A8); \
914*96e086a2SDaniel Kokron \
915*96e086a2SDaniel Kokron       B6 = _mm256_loadu_pd     (B+72); B7 = _mm256_loadu_pd     (B+76); B8 = _mm256_broadcast_sd (B+80); \
916*96e086a2SDaniel Kokron       C6 = _mm256_broadcast_sd (C+ 8); C7 = _mm256_broadcast_sd (C+17); C8 = _mm256_broadcast_sd (C+26); \
917*96e086a2SDaniel Kokron       A0 = _mm256_fnmadd_pd(B6,C6,A0); A1 = _mm256_fnmadd_pd(B7,C6,A1); A2 = _mm256_fnmadd_pd(B8,C6,A2); \
918*96e086a2SDaniel Kokron       A3 = _mm256_fnmadd_pd(B6,C7,A3); A4 = _mm256_fnmadd_pd(B7,C7,A4); A5 = _mm256_fnmadd_pd(B8,C7,A5); \
919*96e086a2SDaniel Kokron       A6 = _mm256_fnmadd_pd(B6,C8,A6); A7 = _mm256_fnmadd_pd(B7,C8,A7); A8 = _mm256_fnmadd_pd(B8,C8,A8); \
920*96e086a2SDaniel Kokron \
921*96e086a2SDaniel Kokron            _mm256_storeu_pd(&A[ 0], A0); _mm256_storeu_pd(&A[ 4], A1); _mm256_maskstore_pd(&A[ 8], _mm256_set_epi64x(0LL, 0LL, 0LL, 1LL<<63), A2); \
922*96e086a2SDaniel Kokron            _mm256_storeu_pd(&A[ 9], A3); _mm256_storeu_pd(&A[13], A4); _mm256_maskstore_pd(&A[17], _mm256_set_epi64x(0LL, 0LL, 0LL, 1LL<<63), A5); \
923*96e086a2SDaniel Kokron            _mm256_storeu_pd(&A[18], A6); _mm256_storeu_pd(&A[22], A7); _mm256_maskstore_pd(&A[26], _mm256_set_epi64x(0LL, 0LL, 0LL, 1LL<<63), A8); \
924*96e086a2SDaniel Kokron \
925*96e086a2SDaniel Kokron       A += 27; C += 27; \
926*96e086a2SDaniel Kokron     } \
927*96e086a2SDaniel Kokron   }
928*96e086a2SDaniel Kokron #else
929*96e086a2SDaniel Kokron #define PetscKernel_A_gets_A_minus_B_times_C_9(A,B,C) 0; \
930*96e086a2SDaniel Kokron   { \
931*96e086a2SDaniel Kokron     A[ 0] -= B[0]*C[ 0] + B[ 9]*C[ 1] + B[18]*C[ 2] + B[27]*C[ 3] + B[36]*C[ 4] + B[45]*C[ 5] + B[54]*C[ 6] + B[63]*C[ 7] + B[72]*C[ 8]; \
932*96e086a2SDaniel Kokron     A[ 1] -= B[1]*C[ 0] + B[10]*C[ 1] + B[19]*C[ 2] + B[28]*C[ 3] + B[37]*C[ 4] + B[46]*C[ 5] + B[55]*C[ 6] + B[64]*C[ 7] + B[73]*C[ 8]; \
933*96e086a2SDaniel Kokron     A[ 2] -= B[2]*C[ 0] + B[11]*C[ 1] + B[20]*C[ 2] + B[29]*C[ 3] + B[38]*C[ 4] + B[47]*C[ 5] + B[56]*C[ 6] + B[65]*C[ 7] + B[74]*C[ 8]; \
934*96e086a2SDaniel Kokron     A[ 3] -= B[3]*C[ 0] + B[12]*C[ 1] + B[21]*C[ 2] + B[30]*C[ 3] + B[39]*C[ 4] + B[48]*C[ 5] + B[57]*C[ 6] + B[66]*C[ 7] + B[75]*C[ 8]; \
935*96e086a2SDaniel Kokron     A[ 4] -= B[4]*C[ 0] + B[13]*C[ 1] + B[22]*C[ 2] + B[31]*C[ 3] + B[40]*C[ 4] + B[49]*C[ 5] + B[58]*C[ 6] + B[67]*C[ 7] + B[76]*C[ 8]; \
936*96e086a2SDaniel Kokron     A[ 5] -= B[5]*C[ 0] + B[14]*C[ 1] + B[23]*C[ 2] + B[32]*C[ 3] + B[41]*C[ 4] + B[50]*C[ 5] + B[59]*C[ 6] + B[68]*C[ 7] + B[77]*C[ 8]; \
937*96e086a2SDaniel Kokron     A[ 6] -= B[6]*C[ 0] + B[15]*C[ 1] + B[24]*C[ 2] + B[33]*C[ 3] + B[42]*C[ 4] + B[51]*C[ 5] + B[60]*C[ 6] + B[69]*C[ 7] + B[78]*C[ 8]; \
938*96e086a2SDaniel Kokron     A[ 7] -= B[7]*C[ 0] + B[16]*C[ 1] + B[25]*C[ 2] + B[34]*C[ 3] + B[43]*C[ 4] + B[52]*C[ 5] + B[61]*C[ 6] + B[70]*C[ 7] + B[79]*C[ 8]; \
939*96e086a2SDaniel Kokron     A[ 8] -= B[8]*C[ 0] + B[17]*C[ 1] + B[26]*C[ 2] + B[35]*C[ 3] + B[44]*C[ 4] + B[53]*C[ 5] + B[62]*C[ 6] + B[71]*C[ 7] + B[80]*C[ 8]; \
940*96e086a2SDaniel Kokron \
941*96e086a2SDaniel Kokron     A[ 9] -= B[0]*C[ 9] + B[ 9]*C[10] + B[18]*C[11] + B[27]*C[12] + B[36]*C[13] + B[45]*C[14] + B[54]*C[15] + B[63]*C[16] + B[72]*C[17]; \
942*96e086a2SDaniel Kokron     A[10] -= B[1]*C[ 9] + B[10]*C[10] + B[19]*C[11] + B[28]*C[12] + B[37]*C[13] + B[46]*C[14] + B[55]*C[15] + B[64]*C[16] + B[73]*C[17]; \
943*96e086a2SDaniel Kokron     A[11] -= B[2]*C[ 9] + B[11]*C[10] + B[20]*C[11] + B[29]*C[12] + B[38]*C[13] + B[47]*C[14] + B[56]*C[15] + B[65]*C[16] + B[74]*C[17]; \
944*96e086a2SDaniel Kokron     A[12] -= B[3]*C[ 9] + B[12]*C[10] + B[21]*C[11] + B[30]*C[12] + B[39]*C[13] + B[48]*C[14] + B[57]*C[15] + B[66]*C[16] + B[75]*C[17]; \
945*96e086a2SDaniel Kokron     A[13] -= B[4]*C[ 9] + B[13]*C[10] + B[22]*C[11] + B[31]*C[12] + B[40]*C[13] + B[49]*C[14] + B[58]*C[15] + B[67]*C[16] + B[76]*C[17]; \
946*96e086a2SDaniel Kokron     A[14] -= B[5]*C[ 9] + B[14]*C[10] + B[23]*C[11] + B[32]*C[12] + B[41]*C[13] + B[50]*C[14] + B[59]*C[15] + B[68]*C[16] + B[77]*C[17]; \
947*96e086a2SDaniel Kokron     A[15] -= B[6]*C[ 9] + B[15]*C[10] + B[24]*C[11] + B[33]*C[12] + B[42]*C[13] + B[51]*C[14] + B[60]*C[15] + B[69]*C[16] + B[78]*C[17]; \
948*96e086a2SDaniel Kokron     A[16] -= B[7]*C[ 9] + B[16]*C[10] + B[25]*C[11] + B[34]*C[12] + B[43]*C[13] + B[52]*C[14] + B[61]*C[15] + B[70]*C[16] + B[79]*C[17]; \
949*96e086a2SDaniel Kokron     A[17] -= B[8]*C[ 9] + B[17]*C[10] + B[26]*C[11] + B[35]*C[12] + B[44]*C[13] + B[53]*C[14] + B[62]*C[15] + B[71]*C[16] + B[80]*C[17]; \
950*96e086a2SDaniel Kokron \
951*96e086a2SDaniel Kokron     A[18] -= B[0]*C[18] + B[ 9]*C[19] + B[18]*C[20] + B[27]*C[21] + B[36]*C[22] + B[45]*C[23] + B[54]*C[24] + B[63]*C[25] + B[72]*C[26]; \
952*96e086a2SDaniel Kokron     A[19] -= B[1]*C[18] + B[10]*C[19] + B[19]*C[20] + B[28]*C[21] + B[37]*C[22] + B[46]*C[23] + B[55]*C[24] + B[64]*C[25] + B[73]*C[26]; \
953*96e086a2SDaniel Kokron     A[20] -= B[2]*C[18] + B[11]*C[19] + B[20]*C[20] + B[29]*C[21] + B[38]*C[22] + B[47]*C[23] + B[56]*C[24] + B[65]*C[25] + B[74]*C[26]; \
954*96e086a2SDaniel Kokron     A[21] -= B[3]*C[18] + B[12]*C[19] + B[21]*C[20] + B[30]*C[21] + B[39]*C[22] + B[48]*C[23] + B[57]*C[24] + B[66]*C[25] + B[75]*C[26]; \
955*96e086a2SDaniel Kokron     A[22] -= B[4]*C[18] + B[13]*C[19] + B[22]*C[20] + B[31]*C[21] + B[40]*C[22] + B[49]*C[23] + B[58]*C[24] + B[67]*C[25] + B[76]*C[26]; \
956*96e086a2SDaniel Kokron     A[23] -= B[5]*C[18] + B[14]*C[19] + B[23]*C[20] + B[32]*C[21] + B[41]*C[22] + B[50]*C[23] + B[59]*C[24] + B[68]*C[25] + B[77]*C[26]; \
957*96e086a2SDaniel Kokron     A[24] -= B[6]*C[18] + B[15]*C[19] + B[24]*C[20] + B[33]*C[21] + B[42]*C[22] + B[51]*C[23] + B[60]*C[24] + B[69]*C[25] + B[78]*C[26]; \
958*96e086a2SDaniel Kokron     A[25] -= B[7]*C[18] + B[16]*C[19] + B[25]*C[20] + B[34]*C[21] + B[43]*C[22] + B[52]*C[23] + B[61]*C[24] + B[70]*C[25] + B[79]*C[26]; \
959*96e086a2SDaniel Kokron     A[26] -= B[8]*C[18] + B[17]*C[19] + B[26]*C[20] + B[35]*C[21] + B[44]*C[22] + B[53]*C[23] + B[62]*C[24] + B[71]*C[25] + B[80]*C[26]; \
960*96e086a2SDaniel Kokron \
961*96e086a2SDaniel Kokron     A[27] -= B[0]*C[27] + B[ 9]*C[28] + B[18]*C[29] + B[27]*C[30] + B[36]*C[31] + B[45]*C[32] + B[54]*C[33] + B[63]*C[34] + B[72]*C[35]; \
962*96e086a2SDaniel Kokron     A[28] -= B[1]*C[27] + B[10]*C[28] + B[19]*C[29] + B[28]*C[30] + B[37]*C[31] + B[46]*C[32] + B[55]*C[33] + B[64]*C[34] + B[73]*C[35]; \
963*96e086a2SDaniel Kokron     A[29] -= B[2]*C[27] + B[11]*C[28] + B[20]*C[29] + B[29]*C[30] + B[38]*C[31] + B[47]*C[32] + B[56]*C[33] + B[65]*C[34] + B[74]*C[35]; \
964*96e086a2SDaniel Kokron     A[30] -= B[3]*C[27] + B[12]*C[28] + B[21]*C[29] + B[30]*C[30] + B[39]*C[31] + B[48]*C[32] + B[57]*C[33] + B[66]*C[34] + B[75]*C[35]; \
965*96e086a2SDaniel Kokron     A[31] -= B[4]*C[27] + B[13]*C[28] + B[22]*C[29] + B[31]*C[30] + B[40]*C[31] + B[49]*C[32] + B[58]*C[33] + B[67]*C[34] + B[76]*C[35]; \
966*96e086a2SDaniel Kokron     A[32] -= B[5]*C[27] + B[14]*C[28] + B[23]*C[29] + B[32]*C[30] + B[41]*C[31] + B[50]*C[32] + B[59]*C[33] + B[68]*C[34] + B[77]*C[35]; \
967*96e086a2SDaniel Kokron     A[33] -= B[6]*C[27] + B[15]*C[28] + B[24]*C[29] + B[33]*C[30] + B[42]*C[31] + B[51]*C[32] + B[60]*C[33] + B[69]*C[34] + B[78]*C[35]; \
968*96e086a2SDaniel Kokron     A[34] -= B[7]*C[27] + B[16]*C[28] + B[25]*C[29] + B[34]*C[30] + B[43]*C[31] + B[52]*C[32] + B[61]*C[33] + B[70]*C[34] + B[79]*C[35]; \
969*96e086a2SDaniel Kokron     A[35] -= B[8]*C[27] + B[17]*C[28] + B[26]*C[29] + B[35]*C[30] + B[44]*C[31] + B[53]*C[32] + B[62]*C[33] + B[71]*C[34] + B[80]*C[35]; \
970*96e086a2SDaniel Kokron \
971*96e086a2SDaniel Kokron     A[36] -= B[0]*C[36] + B[ 9]*C[37] + B[18]*C[38] + B[27]*C[39] + B[36]*C[40] + B[45]*C[41] + B[54]*C[42] + B[63]*C[43] + B[72]*C[44]; \
972*96e086a2SDaniel Kokron     A[37] -= B[1]*C[36] + B[10]*C[37] + B[19]*C[38] + B[28]*C[39] + B[37]*C[40] + B[46]*C[41] + B[55]*C[42] + B[64]*C[43] + B[73]*C[44]; \
973*96e086a2SDaniel Kokron     A[38] -= B[2]*C[36] + B[11]*C[37] + B[20]*C[38] + B[29]*C[39] + B[38]*C[40] + B[47]*C[41] + B[56]*C[42] + B[65]*C[43] + B[74]*C[44]; \
974*96e086a2SDaniel Kokron     A[39] -= B[3]*C[36] + B[12]*C[37] + B[21]*C[38] + B[30]*C[39] + B[39]*C[40] + B[48]*C[41] + B[57]*C[42] + B[66]*C[43] + B[75]*C[44]; \
975*96e086a2SDaniel Kokron     A[40] -= B[4]*C[36] + B[13]*C[37] + B[22]*C[38] + B[31]*C[39] + B[40]*C[40] + B[49]*C[41] + B[58]*C[42] + B[67]*C[43] + B[76]*C[44]; \
976*96e086a2SDaniel Kokron     A[41] -= B[5]*C[36] + B[14]*C[37] + B[23]*C[38] + B[32]*C[39] + B[41]*C[40] + B[50]*C[41] + B[59]*C[42] + B[68]*C[43] + B[77]*C[44]; \
977*96e086a2SDaniel Kokron     A[42] -= B[6]*C[36] + B[15]*C[37] + B[24]*C[38] + B[33]*C[39] + B[42]*C[40] + B[51]*C[41] + B[60]*C[42] + B[69]*C[43] + B[78]*C[44]; \
978*96e086a2SDaniel Kokron     A[43] -= B[7]*C[36] + B[16]*C[37] + B[25]*C[38] + B[34]*C[39] + B[43]*C[40] + B[52]*C[41] + B[61]*C[42] + B[70]*C[43] + B[79]*C[44]; \
979*96e086a2SDaniel Kokron     A[44] -= B[8]*C[36] + B[17]*C[37] + B[26]*C[38] + B[35]*C[39] + B[44]*C[40] + B[53]*C[41] + B[62]*C[42] + B[71]*C[43] + B[80]*C[44]; \
980*96e086a2SDaniel Kokron \
981*96e086a2SDaniel Kokron     A[45] -= B[0]*C[45] + B[ 9]*C[46] + B[18]*C[47] + B[27]*C[48] + B[36]*C[49] + B[45]*C[50] + B[54]*C[51] + B[63]*C[52] + B[72]*C[53]; \
982*96e086a2SDaniel Kokron     A[46] -= B[1]*C[45] + B[10]*C[46] + B[19]*C[47] + B[28]*C[48] + B[37]*C[49] + B[46]*C[50] + B[55]*C[51] + B[64]*C[52] + B[73]*C[53]; \
983*96e086a2SDaniel Kokron     A[47] -= B[2]*C[45] + B[11]*C[46] + B[20]*C[47] + B[29]*C[48] + B[38]*C[49] + B[47]*C[50] + B[56]*C[51] + B[65]*C[52] + B[74]*C[53]; \
984*96e086a2SDaniel Kokron     A[48] -= B[3]*C[45] + B[12]*C[46] + B[21]*C[47] + B[30]*C[48] + B[39]*C[49] + B[48]*C[50] + B[57]*C[51] + B[66]*C[52] + B[75]*C[53]; \
985*96e086a2SDaniel Kokron     A[49] -= B[4]*C[45] + B[13]*C[46] + B[22]*C[47] + B[31]*C[48] + B[40]*C[49] + B[49]*C[50] + B[58]*C[51] + B[67]*C[52] + B[76]*C[53]; \
986*96e086a2SDaniel Kokron     A[50] -= B[5]*C[45] + B[14]*C[46] + B[23]*C[47] + B[32]*C[48] + B[41]*C[49] + B[50]*C[50] + B[59]*C[51] + B[68]*C[52] + B[77]*C[53]; \
987*96e086a2SDaniel Kokron     A[51] -= B[6]*C[45] + B[15]*C[46] + B[24]*C[47] + B[33]*C[48] + B[42]*C[49] + B[51]*C[50] + B[60]*C[51] + B[69]*C[52] + B[78]*C[53]; \
988*96e086a2SDaniel Kokron     A[52] -= B[7]*C[45] + B[16]*C[46] + B[25]*C[47] + B[34]*C[48] + B[43]*C[49] + B[52]*C[50] + B[61]*C[51] + B[70]*C[52] + B[79]*C[53]; \
989*96e086a2SDaniel Kokron     A[53] -= B[8]*C[45] + B[17]*C[46] + B[26]*C[47] + B[35]*C[48] + B[44]*C[49] + B[53]*C[50] + B[62]*C[51] + B[71]*C[52] + B[80]*C[53]; \
990*96e086a2SDaniel Kokron \
991*96e086a2SDaniel Kokron     A[54] -= B[0]*C[54] + B[ 9]*C[55] + B[18]*C[56] + B[27]*C[57] + B[36]*C[58] + B[45]*C[59] + B[54]*C[60] + B[63]*C[61] + B[72]*C[62]; \
992*96e086a2SDaniel Kokron     A[55] -= B[1]*C[54] + B[10]*C[55] + B[19]*C[56] + B[28]*C[57] + B[37]*C[58] + B[46]*C[59] + B[55]*C[60] + B[64]*C[61] + B[73]*C[62]; \
993*96e086a2SDaniel Kokron     A[56] -= B[2]*C[54] + B[11]*C[55] + B[20]*C[56] + B[29]*C[57] + B[38]*C[58] + B[47]*C[59] + B[56]*C[60] + B[65]*C[61] + B[74]*C[62]; \
994*96e086a2SDaniel Kokron     A[57] -= B[3]*C[54] + B[12]*C[55] + B[21]*C[56] + B[30]*C[57] + B[39]*C[58] + B[48]*C[59] + B[57]*C[60] + B[66]*C[61] + B[75]*C[62]; \
995*96e086a2SDaniel Kokron     A[58] -= B[4]*C[54] + B[13]*C[55] + B[22]*C[56] + B[31]*C[57] + B[40]*C[58] + B[49]*C[59] + B[58]*C[60] + B[67]*C[61] + B[76]*C[62]; \
996*96e086a2SDaniel Kokron     A[59] -= B[5]*C[54] + B[14]*C[55] + B[23]*C[56] + B[32]*C[57] + B[41]*C[58] + B[50]*C[59] + B[59]*C[60] + B[68]*C[61] + B[77]*C[62]; \
997*96e086a2SDaniel Kokron     A[60] -= B[6]*C[54] + B[15]*C[55] + B[24]*C[56] + B[33]*C[57] + B[42]*C[58] + B[51]*C[59] + B[60]*C[60] + B[69]*C[61] + B[78]*C[62]; \
998*96e086a2SDaniel Kokron     A[61] -= B[7]*C[54] + B[16]*C[55] + B[25]*C[56] + B[34]*C[57] + B[43]*C[58] + B[52]*C[59] + B[61]*C[60] + B[70]*C[61] + B[79]*C[62]; \
999*96e086a2SDaniel Kokron     A[62] -= B[8]*C[54] + B[17]*C[55] + B[26]*C[56] + B[35]*C[57] + B[44]*C[58] + B[53]*C[59] + B[62]*C[60] + B[71]*C[61] + B[80]*C[62]; \
1000*96e086a2SDaniel Kokron \
1001*96e086a2SDaniel Kokron     A[63] -= B[0]*C[63] + B[ 9]*C[64] + B[18]*C[65] + B[27]*C[66] + B[36]*C[67] + B[45]*C[68] + B[54]*C[69] + B[63]*C[70] + B[72]*C[71]; \
1002*96e086a2SDaniel Kokron     A[64] -= B[1]*C[63] + B[10]*C[64] + B[19]*C[65] + B[28]*C[66] + B[37]*C[67] + B[46]*C[68] + B[55]*C[69] + B[64]*C[70] + B[73]*C[71]; \
1003*96e086a2SDaniel Kokron     A[65] -= B[2]*C[63] + B[11]*C[64] + B[20]*C[65] + B[29]*C[66] + B[38]*C[67] + B[47]*C[68] + B[56]*C[69] + B[65]*C[70] + B[74]*C[71]; \
1004*96e086a2SDaniel Kokron     A[66] -= B[3]*C[63] + B[12]*C[64] + B[21]*C[65] + B[30]*C[66] + B[39]*C[67] + B[48]*C[68] + B[57]*C[69] + B[66]*C[70] + B[75]*C[71]; \
1005*96e086a2SDaniel Kokron     A[67] -= B[4]*C[63] + B[13]*C[64] + B[22]*C[65] + B[31]*C[66] + B[40]*C[67] + B[49]*C[68] + B[58]*C[69] + B[67]*C[70] + B[76]*C[71]; \
1006*96e086a2SDaniel Kokron     A[68] -= B[5]*C[63] + B[14]*C[64] + B[23]*C[65] + B[32]*C[66] + B[41]*C[67] + B[50]*C[68] + B[59]*C[69] + B[68]*C[70] + B[77]*C[71]; \
1007*96e086a2SDaniel Kokron     A[69] -= B[6]*C[63] + B[15]*C[64] + B[24]*C[65] + B[33]*C[66] + B[42]*C[67] + B[51]*C[68] + B[60]*C[69] + B[69]*C[70] + B[78]*C[71]; \
1008*96e086a2SDaniel Kokron     A[70] -= B[7]*C[63] + B[16]*C[64] + B[25]*C[65] + B[34]*C[66] + B[43]*C[67] + B[52]*C[68] + B[61]*C[69] + B[70]*C[70] + B[79]*C[71]; \
1009*96e086a2SDaniel Kokron     A[71] -= B[8]*C[63] + B[17]*C[64] + B[26]*C[65] + B[35]*C[66] + B[44]*C[67] + B[53]*C[68] + B[62]*C[69] + B[71]*C[70] + B[80]*C[71]; \
1010*96e086a2SDaniel Kokron \
1011*96e086a2SDaniel Kokron     A[72] -= B[0]*C[72] + B[ 9]*C[73] + B[18]*C[74] + B[27]*C[75] + B[36]*C[76] + B[45]*C[77] + B[54]*C[78] + B[63]*C[79] + B[72]*C[80]; \
1012*96e086a2SDaniel Kokron     A[73] -= B[1]*C[72] + B[10]*C[73] + B[19]*C[74] + B[28]*C[75] + B[37]*C[76] + B[46]*C[77] + B[55]*C[78] + B[64]*C[79] + B[73]*C[80]; \
1013*96e086a2SDaniel Kokron     A[74] -= B[2]*C[72] + B[11]*C[73] + B[20]*C[74] + B[29]*C[75] + B[38]*C[76] + B[47]*C[77] + B[56]*C[78] + B[65]*C[79] + B[74]*C[80]; \
1014*96e086a2SDaniel Kokron     A[75] -= B[3]*C[72] + B[12]*C[73] + B[21]*C[74] + B[30]*C[75] + B[39]*C[76] + B[48]*C[77] + B[57]*C[78] + B[66]*C[79] + B[75]*C[80]; \
1015*96e086a2SDaniel Kokron     A[76] -= B[4]*C[72] + B[13]*C[73] + B[22]*C[74] + B[31]*C[75] + B[40]*C[76] + B[49]*C[77] + B[58]*C[78] + B[67]*C[79] + B[76]*C[80]; \
1016*96e086a2SDaniel Kokron     A[77] -= B[5]*C[72] + B[14]*C[73] + B[23]*C[74] + B[32]*C[75] + B[41]*C[76] + B[50]*C[77] + B[59]*C[78] + B[68]*C[79] + B[77]*C[80]; \
1017*96e086a2SDaniel Kokron     A[78] -= B[6]*C[72] + B[15]*C[73] + B[24]*C[74] + B[33]*C[75] + B[42]*C[76] + B[51]*C[77] + B[60]*C[78] + B[69]*C[79] + B[78]*C[80]; \
1018*96e086a2SDaniel Kokron     A[79] -= B[7]*C[72] + B[16]*C[73] + B[25]*C[74] + B[34]*C[75] + B[43]*C[76] + B[52]*C[77] + B[61]*C[78] + B[70]*C[79] + B[79]*C[80]; \
1019*96e086a2SDaniel Kokron     A[80] -= B[8]*C[72] + B[17]*C[73] + B[26]*C[74] + B[35]*C[75] + B[44]*C[76] + B[53]*C[77] + B[62]*C[78] + B[71]*C[79] + B[80]*C[80]; \
1020*96e086a2SDaniel Kokron     C += 81; \
1021*96e086a2SDaniel Kokron   }
1022*96e086a2SDaniel Kokron #endif
1023*96e086a2SDaniel Kokron 
1024b59fa7b7SHong Zhang /*
1025b59fa7b7SHong Zhang   PetscKernel_A_gets_A_times_B_11: A = A * B with size bs=11
1026b59fa7b7SHong Zhang 
1027b59fa7b7SHong Zhang   Input Parameters:
1028b59fa7b7SHong Zhang +  A,B - square bs by bs arrays stored in column major order
1029b59fa7b7SHong Zhang -  W   - bs*bs work arrary
1030b59fa7b7SHong Zhang 
1031b59fa7b7SHong Zhang   Output Parameter:
1032b59fa7b7SHong Zhang .  A = A * B
1033b59fa7b7SHong Zhang */
1034b59fa7b7SHong Zhang #define PetscKernel_A_gets_A_times_B_11(A,B,W) 0; \
1035b59fa7b7SHong Zhang   { \
1036b59fa7b7SHong Zhang     PetscMemcpy(W,A,121*sizeof(MatScalar)); \
1037b59fa7b7SHong Zhang     A[0]  =  W[0]*B[0]   + W[11]*B[1]   + W[22]*B[2]   + W[33]*B[3]  + W[44]*B[4]  + W[55]*B[5]  + W[66]*B[6] + W[77]*B[7] + W[88]*B[8] + W[99]*B[9] + W[110]*B[10]; \
1038b59fa7b7SHong Zhang     A[1]  =  W[1]*B[0]   + W[12]*B[1]   + W[23]*B[2]   + W[34]*B[3]  + W[45]*B[4]  + W[56]*B[5]  + W[67]*B[6] + W[78]*B[7] + W[89]*B[8] + W[100]*B[9]+ W[111]*B[10]; \
1039b59fa7b7SHong Zhang     A[2]  =  W[2]*B[0]   + W[13]*B[1]   + W[24]*B[2]   + W[35]*B[3]  + W[46]*B[4]  + W[57]*B[5]  + W[68]*B[6] + W[79]*B[7] + W[90]*B[8] + W[101]*B[9]+ W[112]*B[10]; \
1040b59fa7b7SHong Zhang     A[3]  =  W[3]*B[0]   + W[14]*B[1]   + W[25]*B[2]   + W[36]*B[3]  + W[47]*B[4]  + W[58]*B[5]  + W[69]*B[6] + W[80]*B[7] + W[91]*B[8] + W[102]*B[9]+ W[113]*B[10]; \
1041b59fa7b7SHong Zhang     A[4]  =  W[4]*B[0]   + W[15]*B[1]   + W[26]*B[2]   + W[37]*B[3]  + W[48]*B[4]  + W[59]*B[5]  + W[70]*B[6] + W[81]*B[7] + W[92]*B[8] + W[103]*B[9]+ W[114]*B[10]; \
1042b59fa7b7SHong Zhang     A[5]  =  W[5]*B[0]   + W[16]*B[1]   + W[27]*B[2]   + W[38]*B[3]  + W[49]*B[4]  + W[60]*B[5]  + W[71]*B[6] + W[82]*B[7] + W[93]*B[8] + W[104]*B[9]+ W[115]*B[10]; \
1043b59fa7b7SHong Zhang     A[6]  =  W[6]*B[0]   + W[17]*B[1]   + W[28]*B[2]   + W[39]*B[3]  + W[50]*B[4]  + W[61]*B[5]  + W[72]*B[6] + W[83]*B[7] + W[94]*B[8] + W[105]*B[9]+ W[116]*B[10]; \
1044b59fa7b7SHong Zhang     A[7]  =  W[7]*B[0]   + W[18]*B[1]   + W[29]*B[2]   + W[40]*B[3]  + W[51]*B[4]  + W[62]*B[5]  + W[73]*B[6] + W[84]*B[7] + W[95]*B[8] + W[106]*B[9]+ W[117]*B[10]; \
1045b59fa7b7SHong Zhang     A[8]  =  W[8]*B[0]   + W[19]*B[1]   + W[30]*B[2]   + W[41]*B[3]  + W[52]*B[4]  + W[63]*B[5]  + W[74]*B[6] + W[85]*B[7] + W[96]*B[8] + W[107]*B[9]+ W[118]*B[10]; \
1046b59fa7b7SHong Zhang     A[9]  =  W[9]*B[0]   + W[20]*B[1]   + W[31]*B[2]   + W[42]*B[3]  + W[53]*B[4]  + W[64]*B[5]  + W[75]*B[6] + W[86]*B[7] + W[97]*B[8] + W[108]*B[9]+ W[119]*B[10]; \
1047b59fa7b7SHong Zhang     A[10] =  W[10]*B[0]  + W[21]*B[1]   + W[32]*B[2]   + W[43]*B[3]  + W[54]*B[4]  + W[65]*B[5]  + W[76]*B[6] + W[87]*B[7] + W[98]*B[8] + W[109]*B[9]+ W[120]*B[10]; \
1048b59fa7b7SHong Zhang \
1049b59fa7b7SHong Zhang     A[11]  =  W[0]*B[11]  + W[11]*B[12]   + W[22]*B[13]   + W[33]*B[14]  + W[44]*B[15]  + W[55]*B[16]  + W[66]*B[17] + W[77]*B[18] + W[88]*B[19] + W[99]*B[20] + W[110]*B[21]; \
1050b59fa7b7SHong Zhang     A[12]  =  W[1]*B[11]  + W[12]*B[12]   + W[23]*B[13]   + W[34]*B[14]  + W[45]*B[15]  + W[56]*B[16]  + W[67]*B[17] + W[78]*B[18] + W[89]*B[19] + W[100]*B[20]+ W[111]*B[21]; \
1051b59fa7b7SHong Zhang     A[13]  =  W[2]*B[11]  + W[13]*B[12]   + W[24]*B[13]   + W[35]*B[14]  + W[46]*B[15]  + W[57]*B[16]  + W[68]*B[17] + W[79]*B[18] + W[90]*B[19] + W[101]*B[20]+ W[112]*B[21]; \
1052b59fa7b7SHong Zhang     A[14]  =  W[3]*B[11]  + W[14]*B[12]   + W[25]*B[13]   + W[36]*B[14]  + W[47]*B[15]  + W[58]*B[16]  + W[69]*B[17] + W[80]*B[18] + W[91]*B[19] + W[102]*B[20]+ W[113]*B[21]; \
1053b59fa7b7SHong Zhang     A[15]  =  W[4]*B[11]  + W[15]*B[12]   + W[26]*B[13]   + W[37]*B[14]  + W[48]*B[15]  + W[59]*B[16]  + W[70]*B[17] + W[81]*B[18] + W[92]*B[19] + W[103]*B[20]+ W[114]*B[21]; \
1054b59fa7b7SHong Zhang     A[16]  =  W[5]*B[11]  + W[16]*B[12]   + W[27]*B[13]   + W[38]*B[14]  + W[49]*B[15]  + W[60]*B[16]  + W[71]*B[17] + W[82]*B[18] + W[93]*B[19] + W[104]*B[20]+ W[115]*B[21]; \
1055b59fa7b7SHong Zhang     A[17]  =  W[6]*B[11]  + W[17]*B[12]   + W[28]*B[13]   + W[39]*B[14]  + W[50]*B[15]  + W[61]*B[16]  + W[72]*B[17] + W[83]*B[18] + W[94]*B[19] + W[105]*B[20]+ W[116]*B[21]; \
1056b59fa7b7SHong Zhang     A[18]  =  W[7]*B[11]  + W[18]*B[12]   + W[29]*B[13]   + W[40]*B[14]  + W[51]*B[15]  + W[62]*B[16]  + W[73]*B[17] + W[84]*B[18] + W[95]*B[19] + W[106]*B[20]+ W[117]*B[21]; \
1057b59fa7b7SHong Zhang     A[19]  =  W[8]*B[11]  + W[19]*B[12]   + W[30]*B[13]   + W[41]*B[14]  + W[52]*B[15]  + W[63]*B[16]  + W[74]*B[17] + W[85]*B[18] + W[96]*B[19] + W[107]*B[20]+ W[118]*B[21]; \
1058b59fa7b7SHong Zhang     A[20]  =  W[9]*B[11]  + W[20]*B[12]   + W[31]*B[13]   + W[42]*B[14]  + W[53]*B[15]  + W[64]*B[16]  + W[75]*B[17] + W[86]*B[18] + W[97]*B[19] + W[108]*B[20]+ W[119]*B[21]; \
1059b59fa7b7SHong Zhang     A[21]  =  W[10]*B[11] + W[21]*B[12]   + W[32]*B[13]   + W[43]*B[14]  + W[54]*B[15]  + W[65]*B[16]  + W[76]*B[17] + W[87]*B[18] + W[98]*B[19] + W[109]*B[20]+ W[120]*B[21]; \
1060b59fa7b7SHong Zhang \
1061b59fa7b7SHong Zhang     A[22]  =  W[0]*B[22]  + W[11]*B[23]   + W[22]*B[24]   + W[33]*B[25]  + W[44]*B[26]  + W[55]*B[27]  + W[66]*B[28] + W[77]*B[29] + W[88]*B[30] + W[99]*B[31] + W[110]*B[32]; \
1062b59fa7b7SHong Zhang     A[23]  =  W[1]*B[22]  + W[12]*B[23]   + W[23]*B[24]   + W[34]*B[25]  + W[45]*B[26]  + W[56]*B[27]  + W[67]*B[28] + W[78]*B[29] + W[89]*B[30] + W[100]*B[31]+ W[111]*B[32]; \
1063b59fa7b7SHong Zhang     A[24]  =  W[2]*B[22]  + W[13]*B[23]   + W[24]*B[24]   + W[35]*B[25]  + W[46]*B[26]  + W[57]*B[27]  + W[68]*B[28] + W[79]*B[29] + W[90]*B[30] + W[101]*B[31]+ W[112]*B[32]; \
1064b59fa7b7SHong Zhang     A[25]  =  W[3]*B[22]  + W[14]*B[23]   + W[25]*B[24]   + W[36]*B[25]  + W[47]*B[26]  + W[58]*B[27]  + W[69]*B[28] + W[80]*B[29] + W[91]*B[30] + W[102]*B[31]+ W[113]*B[32]; \
1065b59fa7b7SHong Zhang     A[26]  =  W[4]*B[22]  + W[15]*B[23]   + W[26]*B[24]   + W[37]*B[25]  + W[48]*B[26]  + W[59]*B[27]  + W[70]*B[28] + W[81]*B[29] + W[92]*B[30] + W[103]*B[31]+ W[114]*B[32]; \
1066b59fa7b7SHong Zhang     A[27]  =  W[5]*B[22]  + W[16]*B[23]   + W[27]*B[24]   + W[38]*B[25]  + W[49]*B[26]  + W[60]*B[27]  + W[71]*B[28] + W[82]*B[29] + W[93]*B[30] + W[104]*B[31]+ W[115]*B[32]; \
1067b59fa7b7SHong Zhang     A[28]  =  W[6]*B[22]  + W[17]*B[23]   + W[28]*B[24]   + W[39]*B[25]  + W[50]*B[26]  + W[61]*B[27]  + W[72]*B[28] + W[83]*B[29] + W[94]*B[30] + W[105]*B[31]+ W[116]*B[32]; \
1068b59fa7b7SHong Zhang     A[29]  =  W[7]*B[22]  + W[18]*B[23]   + W[29]*B[24]   + W[40]*B[25]  + W[51]*B[26]  + W[62]*B[27]  + W[73]*B[28] + W[84]*B[29] + W[95]*B[30] + W[106]*B[31]+ W[117]*B[32]; \
1069b59fa7b7SHong Zhang     A[30]  =  W[8]*B[22]  + W[19]*B[23]   + W[30]*B[24]   + W[41]*B[25]  + W[52]*B[26]  + W[63]*B[27]  + W[74]*B[28] + W[85]*B[29] + W[96]*B[30] + W[107]*B[31]+ W[118]*B[32]; \
1070b59fa7b7SHong Zhang     A[31]  =  W[9]*B[22]  + W[20]*B[23]   + W[31]*B[24]   + W[42]*B[25]  + W[53]*B[26]  + W[64]*B[27]  + W[75]*B[28] + W[86]*B[29] + W[97]*B[30] + W[108]*B[31]+ W[119]*B[32]; \
1071b59fa7b7SHong Zhang     A[32]  =  W[10]*B[22] + W[21]*B[23]   + W[32]*B[24]   + W[43]*B[25]  + W[54]*B[26]  + W[65]*B[27]  + W[76]*B[28] + W[87]*B[29] + W[98]*B[30] + W[109]*B[31]+ W[120]*B[32]; \
1072b59fa7b7SHong Zhang \
1073b59fa7b7SHong Zhang     A[33]  =  W[0]*B[33]  + W[11]*B[34]   + W[22]*B[35]   + W[33]*B[36]  + W[44]*B[37]  + W[55]*B[38]  + W[66]*B[39] + W[77]*B[40] + W[88]*B[41] + W[99]*B[42] + W[110]*B[43]; \
1074b59fa7b7SHong Zhang     A[34]  =  W[1]*B[33]  + W[12]*B[34]   + W[23]*B[35]   + W[34]*B[36]  + W[45]*B[37]  + W[56]*B[38]  + W[67]*B[39] + W[78]*B[40] + W[89]*B[41] + W[100]*B[42]+ W[111]*B[43]; \
1075b59fa7b7SHong Zhang     A[35]  =  W[2]*B[33]  + W[13]*B[34]   + W[24]*B[35]   + W[35]*B[36]  + W[46]*B[37]  + W[57]*B[38]  + W[68]*B[39] + W[79]*B[40] + W[90]*B[41] + W[101]*B[42]+ W[112]*B[43]; \
1076b59fa7b7SHong Zhang     A[36]  =  W[3]*B[33]  + W[14]*B[34]   + W[25]*B[35]   + W[36]*B[36]  + W[47]*B[37]  + W[58]*B[38]  + W[69]*B[39] + W[80]*B[40] + W[91]*B[41] + W[102]*B[42]+ W[113]*B[43]; \
1077b59fa7b7SHong Zhang     A[37]  =  W[4]*B[33]  + W[15]*B[34]   + W[26]*B[35]   + W[37]*B[36]  + W[48]*B[37]  + W[59]*B[38]  + W[70]*B[39] + W[81]*B[40] + W[92]*B[41] + W[103]*B[42]+ W[114]*B[43]; \
1078b59fa7b7SHong Zhang     A[38]  =  W[5]*B[33]  + W[16]*B[34]   + W[27]*B[35]   + W[38]*B[36]  + W[49]*B[37]  + W[60]*B[38]  + W[71]*B[39] + W[82]*B[40] + W[93]*B[41] + W[104]*B[42]+ W[115]*B[43]; \
1079b59fa7b7SHong Zhang     A[39]  =  W[6]*B[33]  + W[17]*B[34]   + W[28]*B[35]   + W[39]*B[36]  + W[50]*B[37]  + W[61]*B[38]  + W[72]*B[39] + W[83]*B[40] + W[94]*B[41] + W[105]*B[42]+ W[116]*B[43]; \
1080b59fa7b7SHong Zhang     A[40]  =  W[7]*B[33]  + W[18]*B[34]   + W[29]*B[35]   + W[40]*B[36]  + W[51]*B[37]  + W[62]*B[38]  + W[73]*B[39] + W[84]*B[40] + W[95]*B[41] + W[106]*B[42]+ W[117]*B[43]; \
1081b59fa7b7SHong Zhang     A[41]  =  W[8]*B[33]  + W[19]*B[34]   + W[30]*B[35]   + W[41]*B[36]  + W[52]*B[37]  + W[63]*B[38]  + W[74]*B[39] + W[85]*B[40] + W[96]*B[41] + W[107]*B[42]+ W[118]*B[43]; \
1082b59fa7b7SHong Zhang     A[42]  =  W[9]*B[33]  + W[20]*B[34]   + W[31]*B[35]   + W[42]*B[36]  + W[53]*B[37]  + W[64]*B[38]  + W[75]*B[39] + W[86]*B[40] + W[97]*B[41] + W[108]*B[42]+ W[119]*B[43]; \
1083b59fa7b7SHong Zhang     A[43]  =  W[10]*B[33] + W[21]*B[34]   + W[32]*B[35]   + W[43]*B[36]  + W[54]*B[37]  + W[65]*B[38]  + W[76]*B[39] + W[87]*B[40] + W[98]*B[41] + W[109]*B[42]+ W[120]*B[43]; \
1084b59fa7b7SHong Zhang \
1085b59fa7b7SHong Zhang     A[44]  =  W[0]*B[44]  + W[11]*B[45]   + W[22]*B[46]   + W[33]*B[47]  + W[44]*B[48]  + W[55]*B[49]  + W[66]*B[50] + W[77]*B[51] + W[88]*B[52] + W[99]*B[53] + W[110]*B[54]; \
1086b59fa7b7SHong Zhang     A[45]  =  W[1]*B[44]  + W[12]*B[45]   + W[23]*B[46]   + W[34]*B[47]  + W[45]*B[48]  + W[56]*B[49]  + W[67]*B[50] + W[78]*B[51] + W[89]*B[52] + W[100]*B[53]+ W[111]*B[54]; \
1087b59fa7b7SHong Zhang     A[46]  =  W[2]*B[44]  + W[13]*B[45]   + W[24]*B[46]   + W[35]*B[47]  + W[46]*B[48]  + W[57]*B[49]  + W[68]*B[50] + W[79]*B[51] + W[90]*B[52] + W[101]*B[53]+ W[112]*B[54]; \
1088b59fa7b7SHong Zhang     A[47]  =  W[3]*B[44]  + W[14]*B[45]   + W[25]*B[46]   + W[36]*B[47]  + W[47]*B[48]  + W[58]*B[49]  + W[69]*B[50] + W[80]*B[51] + W[91]*B[52] + W[102]*B[53]+ W[113]*B[54]; \
1089b59fa7b7SHong Zhang     A[48]  =  W[4]*B[44]  + W[15]*B[45]   + W[26]*B[46]   + W[37]*B[47]  + W[48]*B[48]  + W[59]*B[49]  + W[70]*B[50] + W[81]*B[51] + W[92]*B[52] + W[103]*B[53]+ W[114]*B[54]; \
1090b59fa7b7SHong Zhang     A[49]  =  W[5]*B[44]  + W[16]*B[45]   + W[27]*B[46]   + W[38]*B[47]  + W[49]*B[48]  + W[60]*B[49]  + W[71]*B[50] + W[82]*B[51] + W[93]*B[52] + W[104]*B[53]+ W[115]*B[54]; \
1091b59fa7b7SHong Zhang     A[50]  =  W[6]*B[44]  + W[17]*B[45]   + W[28]*B[46]   + W[39]*B[47]  + W[50]*B[48]  + W[61]*B[49]  + W[72]*B[50] + W[83]*B[51] + W[94]*B[52] + W[105]*B[53]+ W[116]*B[54]; \
1092b59fa7b7SHong Zhang     A[51]  =  W[7]*B[44]  + W[18]*B[45]   + W[29]*B[46]   + W[40]*B[47]  + W[51]*B[48]  + W[62]*B[49]  + W[73]*B[50] + W[84]*B[51] + W[95]*B[52] + W[106]*B[53]+ W[117]*B[54]; \
1093b59fa7b7SHong Zhang     A[52]  =  W[8]*B[44]  + W[19]*B[45]   + W[30]*B[46]   + W[41]*B[47]  + W[52]*B[48]  + W[63]*B[49]  + W[74]*B[50] + W[85]*B[51] + W[96]*B[52] + W[107]*B[53]+ W[118]*B[54]; \
1094b59fa7b7SHong Zhang     A[53]  =  W[9]*B[44]  + W[20]*B[45]   + W[31]*B[46]   + W[42]*B[47]  + W[53]*B[48]  + W[64]*B[49]  + W[75]*B[50] + W[86]*B[51] + W[97]*B[52] + W[108]*B[53]+ W[119]*B[54]; \
1095b59fa7b7SHong Zhang     A[54]  =  W[10]*B[44] + W[21]*B[45]   + W[32]*B[46]   + W[43]*B[47]  + W[54]*B[48]  + W[65]*B[49]  + W[76]*B[50] + W[87]*B[51] + W[98]*B[52] + W[109]*B[53]+ W[120]*B[54]; \
1096b59fa7b7SHong Zhang \
1097b59fa7b7SHong Zhang     A[55]  =  W[0]*B[55]  + W[11]*B[56]   + W[22]*B[57]   + W[33]*B[58]  + W[44]*B[59]  + W[55]*B[60]  + W[66]*B[61] + W[77]*B[62] + W[88]*B[63] + W[99]*B[64] + W[110]*B[65]; \
1098b59fa7b7SHong Zhang     A[56]  =  W[1]*B[55]  + W[12]*B[56]   + W[23]*B[57]   + W[34]*B[58]  + W[45]*B[59]  + W[56]*B[60]  + W[67]*B[61] + W[78]*B[62] + W[89]*B[63] + W[100]*B[64]+ W[111]*B[65]; \
1099b59fa7b7SHong Zhang     A[57]  =  W[2]*B[55]  + W[13]*B[56]   + W[24]*B[57]   + W[35]*B[58]  + W[46]*B[59]  + W[57]*B[60]  + W[68]*B[61] + W[79]*B[62] + W[90]*B[63] + W[101]*B[64]+ W[112]*B[65]; \
1100b59fa7b7SHong Zhang     A[58]  =  W[3]*B[55]  + W[14]*B[56]   + W[25]*B[57]   + W[36]*B[58]  + W[47]*B[59]  + W[58]*B[60]  + W[69]*B[61] + W[80]*B[62] + W[91]*B[63] + W[102]*B[64]+ W[113]*B[65]; \
1101b59fa7b7SHong Zhang     A[59]  =  W[4]*B[55]  + W[15]*B[56]   + W[26]*B[57]   + W[37]*B[58]  + W[48]*B[59]  + W[59]*B[60]  + W[70]*B[61] + W[81]*B[62] + W[92]*B[63] + W[103]*B[64]+ W[114]*B[65]; \
1102b59fa7b7SHong Zhang     A[60]  =  W[5]*B[55]  + W[16]*B[56]   + W[27]*B[57]   + W[38]*B[58]  + W[49]*B[59]  + W[60]*B[60]  + W[71]*B[61] + W[82]*B[62] + W[93]*B[63] + W[104]*B[64]+ W[115]*B[65]; \
1103b59fa7b7SHong Zhang     A[61]  =  W[6]*B[55]  + W[17]*B[56]   + W[28]*B[57]   + W[39]*B[58]  + W[50]*B[59]  + W[61]*B[60]  + W[72]*B[61] + W[83]*B[62] + W[94]*B[63] + W[105]*B[64]+ W[116]*B[65]; \
1104b59fa7b7SHong Zhang     A[62]  =  W[7]*B[55]  + W[18]*B[56]   + W[29]*B[57]   + W[40]*B[58]  + W[51]*B[59]  + W[62]*B[60]  + W[73]*B[61] + W[84]*B[62] + W[95]*B[63] + W[106]*B[64]+ W[117]*B[65]; \
1105b59fa7b7SHong Zhang     A[63]  =  W[8]*B[55]  + W[19]*B[56]   + W[30]*B[57]   + W[41]*B[58]  + W[52]*B[59]  + W[63]*B[60]  + W[74]*B[61] + W[85]*B[62] + W[96]*B[63] + W[107]*B[64]+ W[118]*B[65]; \
1106b59fa7b7SHong Zhang     A[64]  =  W[9]*B[55]  + W[20]*B[56]   + W[31]*B[57]   + W[42]*B[58]  + W[53]*B[59]  + W[64]*B[60]  + W[75]*B[61] + W[86]*B[62] + W[97]*B[63] + W[108]*B[64]+ W[119]*B[65]; \
1107b59fa7b7SHong Zhang     A[65]  =  W[10]*B[55] + W[21]*B[56]   + W[32]*B[57]   + W[43]*B[58]  + W[54]*B[59]  + W[65]*B[60]  + W[76]*B[61] + W[87]*B[62] + W[98]*B[63] + W[109]*B[64]+ W[120]*B[65]; \
1108b59fa7b7SHong Zhang \
1109b59fa7b7SHong Zhang     A[66]  =  W[0]*B[66]  + W[11]*B[67]   + W[22]*B[68]   + W[33]*B[69]  + W[44]*B[70]  + W[55]*B[71]  + W[66]*B[72] + W[77]*B[73] + W[88]*B[74] + W[99]*B[75] + W[110]*B[76]; \
1110b59fa7b7SHong Zhang     A[67]  =  W[1]*B[66]  + W[12]*B[67]   + W[23]*B[68]   + W[34]*B[69]  + W[45]*B[70]  + W[56]*B[71]  + W[67]*B[72] + W[78]*B[73] + W[89]*B[74] + W[100]*B[75]+ W[111]*B[76]; \
1111b59fa7b7SHong Zhang     A[68]  =  W[2]*B[66]  + W[13]*B[67]   + W[24]*B[68]   + W[35]*B[69]  + W[46]*B[70]  + W[57]*B[71]  + W[68]*B[72] + W[79]*B[73] + W[90]*B[74] + W[101]*B[75]+ W[112]*B[76]; \
1112b59fa7b7SHong Zhang     A[69]  =  W[3]*B[66]  + W[14]*B[67]   + W[25]*B[68]   + W[36]*B[69]  + W[47]*B[70]  + W[58]*B[71]  + W[69]*B[72] + W[80]*B[73] + W[91]*B[74] + W[102]*B[75]+ W[113]*B[76]; \
1113b59fa7b7SHong Zhang     A[70]  =  W[4]*B[66]  + W[15]*B[67]   + W[26]*B[68]   + W[37]*B[69]  + W[48]*B[70]  + W[59]*B[71]  + W[70]*B[72] + W[81]*B[73] + W[92]*B[74] + W[103]*B[75]+ W[114]*B[76]; \
1114b59fa7b7SHong Zhang     A[71]  =  W[5]*B[66]  + W[16]*B[67]   + W[27]*B[68]   + W[38]*B[69]  + W[49]*B[70]  + W[60]*B[71]  + W[71]*B[72] + W[82]*B[73] + W[93]*B[74] + W[104]*B[75]+ W[115]*B[76]; \
1115b59fa7b7SHong Zhang     A[72]  =  W[6]*B[66]  + W[17]*B[67]   + W[28]*B[68]   + W[39]*B[69]  + W[50]*B[70]  + W[61]*B[71]  + W[72]*B[72] + W[83]*B[73] + W[94]*B[74] + W[105]*B[75]+ W[116]*B[76]; \
1116b59fa7b7SHong Zhang     A[73]  =  W[7]*B[66]  + W[18]*B[67]   + W[29]*B[68]   + W[40]*B[69]  + W[51]*B[70]  + W[62]*B[71]  + W[73]*B[72] + W[84]*B[73] + W[95]*B[74] + W[106]*B[75]+ W[117]*B[76]; \
1117b59fa7b7SHong Zhang     A[74]  =  W[8]*B[66]  + W[19]*B[67]   + W[30]*B[68]   + W[41]*B[69]  + W[52]*B[70]  + W[63]*B[71]  + W[74]*B[72] + W[85]*B[73] + W[96]*B[74] + W[107]*B[75]+ W[118]*B[76]; \
1118b59fa7b7SHong Zhang     A[75]  =  W[9]*B[66]  + W[20]*B[67]   + W[31]*B[68]   + W[42]*B[69]  + W[53]*B[70]  + W[64]*B[71]  + W[75]*B[72] + W[86]*B[73] + W[97]*B[74] + W[108]*B[75]+ W[119]*B[76]; \
1119b59fa7b7SHong Zhang     A[76]  =  W[10]*B[66] + W[21]*B[67]   + W[32]*B[68]   + W[43]*B[69]  + W[54]*B[70]  + W[65]*B[71]  + W[76]*B[72] + W[87]*B[73] + W[98]*B[74] + W[109]*B[75]+ W[120]*B[76]; \
1120b59fa7b7SHong Zhang \
1121b59fa7b7SHong Zhang     A[77]  =  W[0]*B[77]  + W[11]*B[78]   + W[22]*B[79]   + W[33]*B[80]  + W[44]*B[81]  + W[55]*B[82]  + W[66]*B[83] + W[77]*B[84] + W[88]*B[85] + W[99]*B[86] + W[110]*B[87]; \
1122b59fa7b7SHong Zhang     A[78]  =  W[1]*B[77]  + W[12]*B[78]   + W[23]*B[79]   + W[34]*B[80]  + W[45]*B[81]  + W[56]*B[82]  + W[67]*B[83] + W[78]*B[84] + W[89]*B[85] + W[100]*B[86]+ W[111]*B[87]; \
1123b59fa7b7SHong Zhang     A[79]  =  W[2]*B[77]  + W[13]*B[78]   + W[24]*B[79]   + W[35]*B[80]  + W[46]*B[81]  + W[57]*B[82]  + W[68]*B[83] + W[79]*B[84] + W[90]*B[85] + W[101]*B[86]+ W[112]*B[87]; \
1124b59fa7b7SHong Zhang     A[80]  =  W[3]*B[77]  + W[14]*B[78]   + W[25]*B[79]   + W[36]*B[80]  + W[47]*B[81]  + W[58]*B[82]  + W[69]*B[83] + W[80]*B[84] + W[91]*B[85] + W[102]*B[86]+ W[113]*B[87]; \
1125b59fa7b7SHong Zhang     A[81]  =  W[4]*B[77]  + W[15]*B[78]   + W[26]*B[79]   + W[37]*B[80]  + W[48]*B[81]  + W[59]*B[82]  + W[70]*B[83] + W[81]*B[84] + W[92]*B[85] + W[103]*B[86]+ W[114]*B[87]; \
1126b59fa7b7SHong Zhang     A[82]  =  W[5]*B[77]  + W[16]*B[78]   + W[27]*B[79]   + W[38]*B[80]  + W[49]*B[81]  + W[60]*B[82]  + W[71]*B[83] + W[82]*B[84] + W[93]*B[85] + W[104]*B[86]+ W[115]*B[87]; \
1127b59fa7b7SHong Zhang     A[83]  =  W[6]*B[77]  + W[17]*B[78]   + W[28]*B[79]   + W[39]*B[80]  + W[50]*B[81]  + W[61]*B[82]  + W[72]*B[83] + W[83]*B[84] + W[94]*B[85] + W[105]*B[86]+ W[116]*B[87]; \
1128b59fa7b7SHong Zhang     A[84]  =  W[7]*B[77]  + W[18]*B[78]   + W[29]*B[79]   + W[40]*B[80]  + W[51]*B[81]  + W[62]*B[82]  + W[73]*B[83] + W[84]*B[84] + W[95]*B[85] + W[106]*B[86]+ W[117]*B[87]; \
1129b59fa7b7SHong Zhang     A[85]  =  W[8]*B[77]  + W[19]*B[78]   + W[30]*B[79]   + W[41]*B[80]  + W[52]*B[81]  + W[63]*B[82]  + W[74]*B[83] + W[85]*B[84] + W[96]*B[85] + W[107]*B[86]+ W[118]*B[87]; \
1130b59fa7b7SHong Zhang     A[86]  =  W[9]*B[77]  + W[20]*B[78]   + W[31]*B[79]   + W[42]*B[80]  + W[53]*B[81]  + W[64]*B[82]  + W[75]*B[83] + W[86]*B[84] + W[97]*B[85] + W[108]*B[86]+ W[119]*B[87]; \
1131b59fa7b7SHong Zhang     A[87]  =  W[10]*B[77] + W[21]*B[78]   + W[32]*B[79]   + W[43]*B[80]  + W[54]*B[81]  + W[65]*B[82]  + W[76]*B[83] + W[87]*B[84] + W[98]*B[85] + W[109]*B[86]+ W[120]*B[87]; \
1132b59fa7b7SHong Zhang \
1133b59fa7b7SHong Zhang     A[88]  =  W[0]*B[88]  + W[11]*B[89]   + W[22]*B[90]   + W[33]*B[91]  + W[44]*B[92]  + W[55]*B[93]  + W[66]*B[94] + W[77]*B[95] + W[88]*B[96] + W[99]*B[97] + W[110]*B[98]; \
1134b59fa7b7SHong Zhang     A[89]  =  W[1]*B[88]  + W[12]*B[89]   + W[23]*B[90]   + W[34]*B[91]  + W[45]*B[92]  + W[56]*B[93]  + W[67]*B[94] + W[78]*B[95] + W[89]*B[96] + W[100]*B[97]+ W[111]*B[98]; \
1135b59fa7b7SHong Zhang     A[90]  =  W[2]*B[88]  + W[13]*B[89]   + W[24]*B[90]   + W[35]*B[91]  + W[46]*B[92]  + W[57]*B[93]  + W[68]*B[94] + W[79]*B[95] + W[90]*B[96] + W[101]*B[97]+ W[112]*B[98]; \
1136b59fa7b7SHong Zhang     A[91]  =  W[3]*B[88]  + W[14]*B[89]   + W[25]*B[90]   + W[36]*B[91]  + W[47]*B[92]  + W[58]*B[93]  + W[69]*B[94] + W[80]*B[95] + W[91]*B[96] + W[102]*B[97]+ W[113]*B[98]; \
1137b59fa7b7SHong Zhang     A[92]  =  W[4]*B[88]  + W[15]*B[89]   + W[26]*B[90]   + W[37]*B[91]  + W[48]*B[92]  + W[59]*B[93]  + W[70]*B[94] + W[81]*B[95] + W[92]*B[96] + W[103]*B[97]+ W[114]*B[98]; \
1138b59fa7b7SHong Zhang     A[93]  =  W[5]*B[88]  + W[16]*B[89]   + W[27]*B[90]   + W[38]*B[91]  + W[49]*B[92]  + W[60]*B[93]  + W[71]*B[94] + W[82]*B[95] + W[93]*B[96] + W[104]*B[97]+ W[115]*B[98]; \
1139b59fa7b7SHong Zhang     A[94]  =  W[6]*B[88]  + W[17]*B[89]   + W[28]*B[90]   + W[39]*B[91]  + W[50]*B[92]  + W[61]*B[93]  + W[72]*B[94] + W[83]*B[95] + W[94]*B[96] + W[105]*B[97]+ W[116]*B[98]; \
1140b59fa7b7SHong Zhang     A[95]  =  W[7]*B[88]  + W[18]*B[89]   + W[29]*B[90]   + W[40]*B[91]  + W[51]*B[92]  + W[62]*B[93]  + W[73]*B[94] + W[84]*B[95] + W[95]*B[96] + W[106]*B[97]+ W[117]*B[98]; \
1141b59fa7b7SHong Zhang     A[96]  =  W[8]*B[88]  + W[19]*B[89]   + W[30]*B[90]   + W[41]*B[91]  + W[52]*B[92]  + W[63]*B[93]  + W[74]*B[94] + W[85]*B[95] + W[96]*B[96] + W[107]*B[97]+ W[118]*B[98]; \
1142b59fa7b7SHong Zhang     A[97]  =  W[9]*B[88]  + W[20]*B[89]   + W[31]*B[90]   + W[42]*B[91]  + W[53]*B[92]  + W[64]*B[93]  + W[75]*B[94] + W[86]*B[95] + W[97]*B[96] + W[108]*B[97]+ W[119]*B[98]; \
1143b59fa7b7SHong Zhang     A[98]  =  W[10]*B[88] + W[21]*B[89]   + W[32]*B[90]   + W[43]*B[91]  + W[54]*B[92]  + W[65]*B[93]  + W[76]*B[94] + W[87]*B[95] + W[98]*B[96] + W[109]*B[97]+ W[120]*B[98]; \
1144b59fa7b7SHong Zhang \
1145b59fa7b7SHong Zhang     A[99]  = W[0]*B[99]  + W[11]*B[100] + W[22]*B[101] + W[33]*B[102]  + W[44]*B[103] + W[55]*B[104] + W[66]*B[105] + W[77]*B[106] + W[88]*B[107] + W[99]*B[108] + W[110]*B[109]; \
1146b59fa7b7SHong Zhang     A[100] = W[1]*B[99]  + W[12]*B[100] + W[23]*B[101] + W[34]*B[102]  + W[45]*B[103] + W[56]*B[104] + W[67]*B[105] + W[78]*B[106] + W[89]*B[107] + W[100]*B[108]+ W[111]*B[109]; \
1147b59fa7b7SHong Zhang     A[101] = W[2]*B[99]  + W[13]*B[100] + W[24]*B[101] + W[35]*B[102]  + W[46]*B[103] + W[57]*B[104] + W[68]*B[105] + W[79]*B[106] + W[90]*B[107] + W[101]*B[108]+ W[112]*B[109]; \
1148b59fa7b7SHong Zhang     A[102] = W[3]*B[99]  + W[14]*B[100] + W[25]*B[101] + W[36]*B[102]  + W[47]*B[103] + W[58]*B[104] + W[69]*B[105] + W[80]*B[106] + W[91]*B[107] + W[102]*B[108]+ W[113]*B[109]; \
1149b59fa7b7SHong Zhang     A[103] = W[4]*B[99]  + W[15]*B[100] + W[26]*B[101] + W[37]*B[102]  + W[48]*B[103] + W[59]*B[104] + W[70]*B[105] + W[81]*B[106] + W[92]*B[107] + W[103]*B[108]+ W[114]*B[109]; \
1150b59fa7b7SHong Zhang     A[104] = W[5]*B[99]  + W[16]*B[100] + W[27]*B[101] + W[38]*B[102]  + W[49]*B[103] + W[60]*B[104] + W[71]*B[105] + W[82]*B[106] + W[93]*B[107] + W[104]*B[108]+ W[115]*B[109]; \
1151b59fa7b7SHong Zhang     A[105] = W[6]*B[99]  + W[17]*B[100] + W[28]*B[101] + W[39]*B[102]  + W[50]*B[103] + W[61]*B[104] + W[72]*B[105] + W[83]*B[106] + W[94]*B[107] + W[105]*B[108]+ W[116]*B[109]; \
1152b59fa7b7SHong Zhang     A[106] = W[7]*B[99]  + W[18]*B[100] + W[29]*B[101] + W[40]*B[102]  + W[51]*B[103] + W[62]*B[104] + W[73]*B[105] + W[84]*B[106] + W[95]*B[107] + W[106]*B[108]+ W[117]*B[109]; \
1153b59fa7b7SHong Zhang     A[107] = W[8]*B[99]  + W[19]*B[100] + W[30]*B[101] + W[41]*B[102]  + W[52]*B[103] + W[63]*B[104] + W[74]*B[105] + W[85]*B[106] + W[96]*B[107] + W[107]*B[108]+ W[118]*B[109]; \
1154b59fa7b7SHong Zhang     A[108] = W[9]*B[99]  + W[20]*B[100] + W[31]*B[101] + W[42]*B[102]  + W[53]*B[103] + W[64]*B[104] + W[75]*B[105] + W[86]*B[106] + W[97]*B[107] + W[108]*B[108]+ W[119]*B[109]; \
1155b59fa7b7SHong Zhang     A[109] = W[10]*B[99] + W[21]*B[100] + W[32]*B[101] + W[43]*B[102]  + W[54]*B[103] + W[65]*B[104] + W[76]*B[105] + W[87]*B[106] + W[98]*B[107] + W[109]*B[108]+ W[120]*B[109]; \
1156b59fa7b7SHong Zhang \
1157b59fa7b7SHong Zhang     A[110] = W[0]*B[110]  + W[11]*B[111] + W[22]*B[112] + W[33]*B[113]  + W[44]*B[114] + W[55]*B[115] + W[66]*B[116] + W[77]*B[117] + W[88]*B[118] + W[99]*B[119] + W[110]*B[120]; \
1158b59fa7b7SHong Zhang     A[111] = W[1]*B[110]  + W[12]*B[111] + W[23]*B[112] + W[34]*B[113]  + W[45]*B[114] + W[56]*B[115] + W[67]*B[116] + W[78]*B[117] + W[89]*B[118] + W[100]*B[119]+ W[111]*B[120]; \
1159b59fa7b7SHong Zhang     A[112] = W[2]*B[110]  + W[13]*B[111] + W[24]*B[112] + W[35]*B[113]  + W[46]*B[114] + W[57]*B[115] + W[68]*B[116] + W[79]*B[117] + W[90]*B[118] + W[101]*B[119]+ W[112]*B[120]; \
1160b59fa7b7SHong Zhang     A[113] = W[3]*B[110]  + W[14]*B[111] + W[25]*B[112] + W[36]*B[113]  + W[47]*B[114] + W[58]*B[115] + W[69]*B[116] + W[80]*B[117] + W[91]*B[118] + W[102]*B[119]+ W[113]*B[120]; \
1161b59fa7b7SHong Zhang     A[114] = W[4]*B[110]  + W[15]*B[111] + W[26]*B[112] + W[37]*B[113]  + W[48]*B[114] + W[59]*B[115] + W[70]*B[116] + W[81]*B[117] + W[92]*B[118] + W[103]*B[119]+ W[114]*B[120]; \
1162b59fa7b7SHong Zhang     A[115] = W[5]*B[110]  + W[16]*B[111] + W[27]*B[112] + W[38]*B[113]  + W[49]*B[114] + W[60]*B[115] + W[71]*B[116] + W[82]*B[117] + W[93]*B[118] + W[104]*B[119]+ W[115]*B[120]; \
1163b59fa7b7SHong Zhang     A[116] = W[6]*B[110]  + W[17]*B[111] + W[28]*B[112] + W[39]*B[113]  + W[50]*B[114] + W[61]*B[115] + W[72]*B[116] + W[83]*B[117] + W[94]*B[118] + W[105]*B[119]+ W[116]*B[120]; \
1164b59fa7b7SHong Zhang     A[117] = W[7]*B[110]  + W[18]*B[111] + W[29]*B[112] + W[40]*B[113]  + W[51]*B[114] + W[62]*B[115] + W[73]*B[116] + W[84]*B[117] + W[95]*B[118] + W[106]*B[119]+ W[117]*B[120]; \
1165b59fa7b7SHong Zhang     A[118] = W[8]*B[110]  + W[19]*B[111] + W[30]*B[112] + W[41]*B[113]  + W[52]*B[114] + W[63]*B[115] + W[74]*B[116] + W[85]*B[117] + W[96]*B[118] + W[107]*B[119]+ W[118]*B[120]; \
1166b59fa7b7SHong Zhang     A[119] = W[9]*B[110]  + W[20]*B[111] + W[31]*B[112] + W[42]*B[113]  + W[53]*B[114] + W[64]*B[115] + W[75]*B[116] + W[86]*B[117] + W[97]*B[118] + W[108]*B[119]+ W[119]*B[120]; \
1167b59fa7b7SHong Zhang     A[120] = W[10]*B[110] + W[21]*B[111] + W[32]*B[112] + W[43]*B[113]  + W[54]*B[114] + W[65]*B[115] + W[76]*B[116] + W[87]*B[117] + W[98]*B[118] + W[109]*B[119]+ W[120]*B[120];\
1168b59fa7b7SHong Zhang   }
1169b59fa7b7SHong Zhang 
1170b77e8d12SHong Zhang /*
1171b77e8d12SHong Zhang   PetscKernel_A_gets_A_minus_B_times_C_11: A = A - W * B with size bs=11
1172b77e8d12SHong Zhang 
1173b77e8d12SHong Zhang   Input Parameters:
1174b77e8d12SHong Zhang +  A,W,B - square bs by bs arrays stored in column major order
1175b77e8d12SHong Zhang 
1176b77e8d12SHong Zhang   Output Parameter:
1177b77e8d12SHong Zhang .  A = A - W * B
1178b77e8d12SHong Zhang */
1179b77e8d12SHong Zhang #define PetscKernel_A_gets_A_minus_B_times_C_11(A,W,B) 0; \
1180b77e8d12SHong Zhang   { \
1181b77e8d12SHong Zhang     A[0]  -=  W[0]*B[0]   + W[11]*B[1]   + W[22]*B[2]   + W[33]*B[3]  + W[44]*B[4]  + W[55]*B[5]  + W[66]*B[6] + W[77]*B[7] + W[88]*B[8] + W[99]*B[9] + W[110]*B[10]; \
1182b77e8d12SHong Zhang     A[1]  -=  W[1]*B[0]   + W[12]*B[1]   + W[23]*B[2]   + W[34]*B[3]  + W[45]*B[4]  + W[56]*B[5]  + W[67]*B[6] + W[78]*B[7] + W[89]*B[8] + W[100]*B[9]+ W[111]*B[10]; \
1183b77e8d12SHong Zhang     A[2]  -=  W[2]*B[0]   + W[13]*B[1]   + W[24]*B[2]   + W[35]*B[3]  + W[46]*B[4]  + W[57]*B[5]  + W[68]*B[6] + W[79]*B[7] + W[90]*B[8] + W[101]*B[9]+ W[112]*B[10]; \
1184b77e8d12SHong Zhang     A[3]  -=  W[3]*B[0]   + W[14]*B[1]   + W[25]*B[2]   + W[36]*B[3]  + W[47]*B[4]  + W[58]*B[5]  + W[69]*B[6] + W[80]*B[7] + W[91]*B[8] + W[102]*B[9]+ W[113]*B[10]; \
1185b77e8d12SHong Zhang     A[4]  -=  W[4]*B[0]   + W[15]*B[1]   + W[26]*B[2]   + W[37]*B[3]  + W[48]*B[4]  + W[59]*B[5]  + W[70]*B[6] + W[81]*B[7] + W[92]*B[8] + W[103]*B[9]+ W[114]*B[10]; \
1186b77e8d12SHong Zhang     A[5]  -=  W[5]*B[0]   + W[16]*B[1]   + W[27]*B[2]   + W[38]*B[3]  + W[49]*B[4]  + W[60]*B[5]  + W[71]*B[6] + W[82]*B[7] + W[93]*B[8] + W[104]*B[9]+ W[115]*B[10]; \
1187b77e8d12SHong Zhang     A[6]  -=  W[6]*B[0]   + W[17]*B[1]   + W[28]*B[2]   + W[39]*B[3]  + W[50]*B[4]  + W[61]*B[5]  + W[72]*B[6] + W[83]*B[7] + W[94]*B[8] + W[105]*B[9]+ W[116]*B[10]; \
1188b77e8d12SHong Zhang     A[7]  -=  W[7]*B[0]   + W[18]*B[1]   + W[29]*B[2]   + W[40]*B[3]  + W[51]*B[4]  + W[62]*B[5]  + W[73]*B[6] + W[84]*B[7] + W[95]*B[8] + W[106]*B[9]+ W[117]*B[10]; \
1189b77e8d12SHong Zhang     A[8]  -=  W[8]*B[0]   + W[19]*B[1]   + W[30]*B[2]   + W[41]*B[3]  + W[52]*B[4]  + W[63]*B[5]  + W[74]*B[6] + W[85]*B[7] + W[96]*B[8] + W[107]*B[9]+ W[118]*B[10]; \
1190b77e8d12SHong Zhang     A[9]  -=  W[9]*B[0]   + W[20]*B[1]   + W[31]*B[2]   + W[42]*B[3]  + W[53]*B[4]  + W[64]*B[5]  + W[75]*B[6] + W[86]*B[7] + W[97]*B[8] + W[108]*B[9]+ W[119]*B[10]; \
1191b77e8d12SHong Zhang     A[10] -=  W[10]*B[0]  + W[21]*B[1]   + W[32]*B[2]   + W[43]*B[3]  + W[54]*B[4]  + W[65]*B[5]  + W[76]*B[6] + W[87]*B[7] + W[98]*B[8] + W[109]*B[9]+ W[120]*B[10]; \
1192b77e8d12SHong Zhang \
1193b77e8d12SHong Zhang     A[11]  -=  W[0]*B[11]  + W[11]*B[12]   + W[22]*B[13]   + W[33]*B[14]  + W[44]*B[15]  + W[55]*B[16]  + W[66]*B[17] + W[77]*B[18] + W[88]*B[19] + W[99]*B[20] + W[110]*B[21]; \
1194b77e8d12SHong Zhang     A[12]  -=  W[1]*B[11]  + W[12]*B[12]   + W[23]*B[13]   + W[34]*B[14]  + W[45]*B[15]  + W[56]*B[16]  + W[67]*B[17] + W[78]*B[18] + W[89]*B[19] + W[100]*B[20]+ W[111]*B[21]; \
1195b77e8d12SHong Zhang     A[13]  -=  W[2]*B[11]  + W[13]*B[12]   + W[24]*B[13]   + W[35]*B[14]  + W[46]*B[15]  + W[57]*B[16]  + W[68]*B[17] + W[79]*B[18] + W[90]*B[19] + W[101]*B[20]+ W[112]*B[21]; \
1196b77e8d12SHong Zhang     A[14]  -=  W[3]*B[11]  + W[14]*B[12]   + W[25]*B[13]   + W[36]*B[14]  + W[47]*B[15]  + W[58]*B[16]  + W[69]*B[17] + W[80]*B[18] + W[91]*B[19] + W[102]*B[20]+ W[113]*B[21]; \
1197b77e8d12SHong Zhang     A[15]  -=  W[4]*B[11]  + W[15]*B[12]   + W[26]*B[13]   + W[37]*B[14]  + W[48]*B[15]  + W[59]*B[16]  + W[70]*B[17] + W[81]*B[18] + W[92]*B[19] + W[103]*B[20]+ W[114]*B[21]; \
1198b77e8d12SHong Zhang     A[16]  -=  W[5]*B[11]  + W[16]*B[12]   + W[27]*B[13]   + W[38]*B[14]  + W[49]*B[15]  + W[60]*B[16]  + W[71]*B[17] + W[82]*B[18] + W[93]*B[19] + W[104]*B[20]+ W[115]*B[21]; \
1199b77e8d12SHong Zhang     A[17]  -=  W[6]*B[11]  + W[17]*B[12]   + W[28]*B[13]   + W[39]*B[14]  + W[50]*B[15]  + W[61]*B[16]  + W[72]*B[17] + W[83]*B[18] + W[94]*B[19] + W[105]*B[20]+ W[116]*B[21]; \
1200b77e8d12SHong Zhang     A[18]  -=  W[7]*B[11]  + W[18]*B[12]   + W[29]*B[13]   + W[40]*B[14]  + W[51]*B[15]  + W[62]*B[16]  + W[73]*B[17] + W[84]*B[18] + W[95]*B[19] + W[106]*B[20]+ W[117]*B[21]; \
1201b77e8d12SHong Zhang     A[19]  -=  W[8]*B[11]  + W[19]*B[12]   + W[30]*B[13]   + W[41]*B[14]  + W[52]*B[15]  + W[63]*B[16]  + W[74]*B[17] + W[85]*B[18] + W[96]*B[19] + W[107]*B[20]+ W[118]*B[21]; \
1202b77e8d12SHong Zhang     A[20]  -=  W[9]*B[11]  + W[20]*B[12]   + W[31]*B[13]   + W[42]*B[14]  + W[53]*B[15]  + W[64]*B[16]  + W[75]*B[17] + W[86]*B[18] + W[97]*B[19] + W[108]*B[20]+ W[119]*B[21]; \
1203b77e8d12SHong Zhang     A[21]  -=  W[10]*B[11] + W[21]*B[12]   + W[32]*B[13]   + W[43]*B[14]  + W[54]*B[15]  + W[65]*B[16]  + W[76]*B[17] + W[87]*B[18] + W[98]*B[19] + W[109]*B[20]+ W[120]*B[21]; \
1204b77e8d12SHong Zhang \
1205b77e8d12SHong Zhang     A[22]  -=  W[0]*B[22]  + W[11]*B[23]   + W[22]*B[24]   + W[33]*B[25]  + W[44]*B[26]  + W[55]*B[27]  + W[66]*B[28] + W[77]*B[29] + W[88]*B[30] + W[99]*B[31] + W[110]*B[32]; \
1206b77e8d12SHong Zhang     A[23]  -=  W[1]*B[22]  + W[12]*B[23]   + W[23]*B[24]   + W[34]*B[25]  + W[45]*B[26]  + W[56]*B[27]  + W[67]*B[28] + W[78]*B[29] + W[89]*B[30] + W[100]*B[31]+ W[111]*B[32]; \
1207b77e8d12SHong Zhang     A[24]  -=  W[2]*B[22]  + W[13]*B[23]   + W[24]*B[24]   + W[35]*B[25]  + W[46]*B[26]  + W[57]*B[27]  + W[68]*B[28] + W[79]*B[29] + W[90]*B[30] + W[101]*B[31]+ W[112]*B[32]; \
1208b77e8d12SHong Zhang     A[25]  -=  W[3]*B[22]  + W[14]*B[23]   + W[25]*B[24]   + W[36]*B[25]  + W[47]*B[26]  + W[58]*B[27]  + W[69]*B[28] + W[80]*B[29] + W[91]*B[30] + W[102]*B[31]+ W[113]*B[32]; \
1209b77e8d12SHong Zhang     A[26]  -=  W[4]*B[22]  + W[15]*B[23]   + W[26]*B[24]   + W[37]*B[25]  + W[48]*B[26]  + W[59]*B[27]  + W[70]*B[28] + W[81]*B[29] + W[92]*B[30] + W[103]*B[31]+ W[114]*B[32]; \
1210b77e8d12SHong Zhang     A[27]  -=  W[5]*B[22]  + W[16]*B[23]   + W[27]*B[24]   + W[38]*B[25]  + W[49]*B[26]  + W[60]*B[27]  + W[71]*B[28] + W[82]*B[29] + W[93]*B[30] + W[104]*B[31]+ W[115]*B[32]; \
1211b77e8d12SHong Zhang     A[28]  -=  W[6]*B[22]  + W[17]*B[23]   + W[28]*B[24]   + W[39]*B[25]  + W[50]*B[26]  + W[61]*B[27]  + W[72]*B[28] + W[83]*B[29] + W[94]*B[30] + W[105]*B[31]+ W[116]*B[32]; \
1212b77e8d12SHong Zhang     A[29]  -=  W[7]*B[22]  + W[18]*B[23]   + W[29]*B[24]   + W[40]*B[25]  + W[51]*B[26]  + W[62]*B[27]  + W[73]*B[28] + W[84]*B[29] + W[95]*B[30] + W[106]*B[31]+ W[117]*B[32]; \
1213b77e8d12SHong Zhang     A[30]  -=  W[8]*B[22]  + W[19]*B[23]   + W[30]*B[24]   + W[41]*B[25]  + W[52]*B[26]  + W[63]*B[27]  + W[74]*B[28] + W[85]*B[29] + W[96]*B[30] + W[107]*B[31]+ W[118]*B[32]; \
1214b77e8d12SHong Zhang     A[31]  -=  W[9]*B[22]  + W[20]*B[23]   + W[31]*B[24]   + W[42]*B[25]  + W[53]*B[26]  + W[64]*B[27]  + W[75]*B[28] + W[86]*B[29] + W[97]*B[30] + W[108]*B[31]+ W[119]*B[32]; \
1215b77e8d12SHong Zhang     A[32]  -=  W[10]*B[22] + W[21]*B[23]   + W[32]*B[24]   + W[43]*B[25]  + W[54]*B[26]  + W[65]*B[27]  + W[76]*B[28] + W[87]*B[29] + W[98]*B[30] + W[109]*B[31]+ W[120]*B[32]; \
1216b77e8d12SHong Zhang \
1217b77e8d12SHong Zhang     A[33]  -=  W[0]*B[33]  + W[11]*B[34]   + W[22]*B[35]   + W[33]*B[36]  + W[44]*B[37]  + W[55]*B[38]  + W[66]*B[39] + W[77]*B[40] + W[88]*B[41] + W[99]*B[42] + W[110]*B[43]; \
1218b77e8d12SHong Zhang     A[34]  -=  W[1]*B[33]  + W[12]*B[34]   + W[23]*B[35]   + W[34]*B[36]  + W[45]*B[37]  + W[56]*B[38]  + W[67]*B[39] + W[78]*B[40] + W[89]*B[41] + W[100]*B[42]+ W[111]*B[43]; \
1219b77e8d12SHong Zhang     A[35]  -=  W[2]*B[33]  + W[13]*B[34]   + W[24]*B[35]   + W[35]*B[36]  + W[46]*B[37]  + W[57]*B[38]  + W[68]*B[39] + W[79]*B[40] + W[90]*B[41] + W[101]*B[42]+ W[112]*B[43]; \
1220b77e8d12SHong Zhang     A[36]  -=  W[3]*B[33]  + W[14]*B[34]   + W[25]*B[35]   + W[36]*B[36]  + W[47]*B[37]  + W[58]*B[38]  + W[69]*B[39] + W[80]*B[40] + W[91]*B[41] + W[102]*B[42]+ W[113]*B[43]; \
1221b77e8d12SHong Zhang     A[37]  -=  W[4]*B[33]  + W[15]*B[34]   + W[26]*B[35]   + W[37]*B[36]  + W[48]*B[37]  + W[59]*B[38]  + W[70]*B[39] + W[81]*B[40] + W[92]*B[41] + W[103]*B[42]+ W[114]*B[43]; \
1222b77e8d12SHong Zhang     A[38]  -=  W[5]*B[33]  + W[16]*B[34]   + W[27]*B[35]   + W[38]*B[36]  + W[49]*B[37]  + W[60]*B[38]  + W[71]*B[39] + W[82]*B[40] + W[93]*B[41] + W[104]*B[42]+ W[115]*B[43]; \
1223b77e8d12SHong Zhang     A[39]  -=  W[6]*B[33]  + W[17]*B[34]   + W[28]*B[35]   + W[39]*B[36]  + W[50]*B[37]  + W[61]*B[38]  + W[72]*B[39] + W[83]*B[40] + W[94]*B[41] + W[105]*B[42]+ W[116]*B[43]; \
1224b77e8d12SHong Zhang     A[40]  -=  W[7]*B[33]  + W[18]*B[34]   + W[29]*B[35]   + W[40]*B[36]  + W[51]*B[37]  + W[62]*B[38]  + W[73]*B[39] + W[84]*B[40] + W[95]*B[41] + W[106]*B[42]+ W[117]*B[43]; \
1225b77e8d12SHong Zhang     A[41]  -=  W[8]*B[33]  + W[19]*B[34]   + W[30]*B[35]   + W[41]*B[36]  + W[52]*B[37]  + W[63]*B[38]  + W[74]*B[39] + W[85]*B[40] + W[96]*B[41] + W[107]*B[42]+ W[118]*B[43]; \
1226b77e8d12SHong Zhang     A[42]  -=  W[9]*B[33]  + W[20]*B[34]   + W[31]*B[35]   + W[42]*B[36]  + W[53]*B[37]  + W[64]*B[38]  + W[75]*B[39] + W[86]*B[40] + W[97]*B[41] + W[108]*B[42]+ W[119]*B[43]; \
1227b77e8d12SHong Zhang     A[43]  -=  W[10]*B[33] + W[21]*B[34]   + W[32]*B[35]   + W[43]*B[36]  + W[54]*B[37]  + W[65]*B[38]  + W[76]*B[39] + W[87]*B[40] + W[98]*B[41] + W[109]*B[42]+ W[120]*B[43]; \
1228b77e8d12SHong Zhang \
1229b77e8d12SHong Zhang     A[44]  -=  W[0]*B[44]  + W[11]*B[45]   + W[22]*B[46]   + W[33]*B[47]  + W[44]*B[48]  + W[55]*B[49]  + W[66]*B[50] + W[77]*B[51] + W[88]*B[52] + W[99]*B[53] + W[110]*B[54]; \
1230b77e8d12SHong Zhang     A[45]  -=  W[1]*B[44]  + W[12]*B[45]   + W[23]*B[46]   + W[34]*B[47]  + W[45]*B[48]  + W[56]*B[49]  + W[67]*B[50] + W[78]*B[51] + W[89]*B[52] + W[100]*B[53]+ W[111]*B[54]; \
1231b77e8d12SHong Zhang     A[46]  -=  W[2]*B[44]  + W[13]*B[45]   + W[24]*B[46]   + W[35]*B[47]  + W[46]*B[48]  + W[57]*B[49]  + W[68]*B[50] + W[79]*B[51] + W[90]*B[52] + W[101]*B[53]+ W[112]*B[54]; \
1232b77e8d12SHong Zhang     A[47]  -=  W[3]*B[44]  + W[14]*B[45]   + W[25]*B[46]   + W[36]*B[47]  + W[47]*B[48]  + W[58]*B[49]  + W[69]*B[50] + W[80]*B[51] + W[91]*B[52] + W[102]*B[53]+ W[113]*B[54]; \
1233b77e8d12SHong Zhang     A[48]  -=  W[4]*B[44]  + W[15]*B[45]   + W[26]*B[46]   + W[37]*B[47]  + W[48]*B[48]  + W[59]*B[49]  + W[70]*B[50] + W[81]*B[51] + W[92]*B[52] + W[103]*B[53]+ W[114]*B[54]; \
1234b77e8d12SHong Zhang     A[49]  -=  W[5]*B[44]  + W[16]*B[45]   + W[27]*B[46]   + W[38]*B[47]  + W[49]*B[48]  + W[60]*B[49]  + W[71]*B[50] + W[82]*B[51] + W[93]*B[52] + W[104]*B[53]+ W[115]*B[54]; \
1235b77e8d12SHong Zhang     A[50]  -=  W[6]*B[44]  + W[17]*B[45]   + W[28]*B[46]   + W[39]*B[47]  + W[50]*B[48]  + W[61]*B[49]  + W[72]*B[50] + W[83]*B[51] + W[94]*B[52] + W[105]*B[53]+ W[116]*B[54]; \
1236b77e8d12SHong Zhang     A[51]  -=  W[7]*B[44]  + W[18]*B[45]   + W[29]*B[46]   + W[40]*B[47]  + W[51]*B[48]  + W[62]*B[49]  + W[73]*B[50] + W[84]*B[51] + W[95]*B[52] + W[106]*B[53]+ W[117]*B[54]; \
1237b77e8d12SHong Zhang     A[52]  -=  W[8]*B[44]  + W[19]*B[45]   + W[30]*B[46]   + W[41]*B[47]  + W[52]*B[48]  + W[63]*B[49]  + W[74]*B[50] + W[85]*B[51] + W[96]*B[52] + W[107]*B[53]+ W[118]*B[54]; \
1238b77e8d12SHong Zhang     A[53]  -=  W[9]*B[44]  + W[20]*B[45]   + W[31]*B[46]   + W[42]*B[47]  + W[53]*B[48]  + W[64]*B[49]  + W[75]*B[50] + W[86]*B[51] + W[97]*B[52] + W[108]*B[53]+ W[119]*B[54]; \
1239b77e8d12SHong Zhang     A[54]  -=  W[10]*B[44] + W[21]*B[45]   + W[32]*B[46]   + W[43]*B[47]  + W[54]*B[48]  + W[65]*B[49]  + W[76]*B[50] + W[87]*B[51] + W[98]*B[52] + W[109]*B[53]+ W[120]*B[54]; \
1240b77e8d12SHong Zhang \
1241b77e8d12SHong Zhang     A[55]  -=  W[0]*B[55]  + W[11]*B[56]   + W[22]*B[57]   + W[33]*B[58]  + W[44]*B[59]  + W[55]*B[60]  + W[66]*B[61] + W[77]*B[62] + W[88]*B[63] + W[99]*B[64] + W[110]*B[65]; \
1242b77e8d12SHong Zhang     A[56]  -=  W[1]*B[55]  + W[12]*B[56]   + W[23]*B[57]   + W[34]*B[58]  + W[45]*B[59]  + W[56]*B[60]  + W[67]*B[61] + W[78]*B[62] + W[89]*B[63] + W[100]*B[64]+ W[111]*B[65]; \
1243b77e8d12SHong Zhang     A[57]  -=  W[2]*B[55]  + W[13]*B[56]   + W[24]*B[57]   + W[35]*B[58]  + W[46]*B[59]  + W[57]*B[60]  + W[68]*B[61] + W[79]*B[62] + W[90]*B[63] + W[101]*B[64]+ W[112]*B[65]; \
1244b77e8d12SHong Zhang     A[58]  -=  W[3]*B[55]  + W[14]*B[56]   + W[25]*B[57]   + W[36]*B[58]  + W[47]*B[59]  + W[58]*B[60]  + W[69]*B[61] + W[80]*B[62] + W[91]*B[63] + W[102]*B[64]+ W[113]*B[65]; \
1245b77e8d12SHong Zhang     A[59]  -=  W[4]*B[55]  + W[15]*B[56]   + W[26]*B[57]   + W[37]*B[58]  + W[48]*B[59]  + W[59]*B[60]  + W[70]*B[61] + W[81]*B[62] + W[92]*B[63] + W[103]*B[64]+ W[114]*B[65]; \
1246b77e8d12SHong Zhang     A[60]  -=  W[5]*B[55]  + W[16]*B[56]   + W[27]*B[57]   + W[38]*B[58]  + W[49]*B[59]  + W[60]*B[60]  + W[71]*B[61] + W[82]*B[62] + W[93]*B[63] + W[104]*B[64]+ W[115]*B[65]; \
1247b77e8d12SHong Zhang     A[61]  -=  W[6]*B[55]  + W[17]*B[56]   + W[28]*B[57]   + W[39]*B[58]  + W[50]*B[59]  + W[61]*B[60]  + W[72]*B[61] + W[83]*B[62] + W[94]*B[63] + W[105]*B[64]+ W[116]*B[65]; \
1248b77e8d12SHong Zhang     A[62]  -=  W[7]*B[55]  + W[18]*B[56]   + W[29]*B[57]   + W[40]*B[58]  + W[51]*B[59]  + W[62]*B[60]  + W[73]*B[61] + W[84]*B[62] + W[95]*B[63] + W[106]*B[64]+ W[117]*B[65]; \
1249b77e8d12SHong Zhang     A[63]  -=  W[8]*B[55]  + W[19]*B[56]   + W[30]*B[57]   + W[41]*B[58]  + W[52]*B[59]  + W[63]*B[60]  + W[74]*B[61] + W[85]*B[62] + W[96]*B[63] + W[107]*B[64]+ W[118]*B[65]; \
1250b77e8d12SHong Zhang     A[64]  -=  W[9]*B[55]  + W[20]*B[56]   + W[31]*B[57]   + W[42]*B[58]  + W[53]*B[59]  + W[64]*B[60]  + W[75]*B[61] + W[86]*B[62] + W[97]*B[63] + W[108]*B[64]+ W[119]*B[65]; \
1251b77e8d12SHong Zhang     A[65]  -=  W[10]*B[55] + W[21]*B[56]   + W[32]*B[57]   + W[43]*B[58]  + W[54]*B[59]  + W[65]*B[60]  + W[76]*B[61] + W[87]*B[62] + W[98]*B[63] + W[109]*B[64]+ W[120]*B[65]; \
1252b77e8d12SHong Zhang \
1253b77e8d12SHong Zhang     A[66]  -=  W[0]*B[66]  + W[11]*B[67]   + W[22]*B[68]   + W[33]*B[69]  + W[44]*B[70]  + W[55]*B[71]  + W[66]*B[72] + W[77]*B[73] + W[88]*B[74] + W[99]*B[75] + W[110]*B[76]; \
1254b77e8d12SHong Zhang     A[67]  -=  W[1]*B[66]  + W[12]*B[67]   + W[23]*B[68]   + W[34]*B[69]  + W[45]*B[70]  + W[56]*B[71]  + W[67]*B[72] + W[78]*B[73] + W[89]*B[74] + W[100]*B[75]+ W[111]*B[76]; \
1255b77e8d12SHong Zhang     A[68]  -=  W[2]*B[66]  + W[13]*B[67]   + W[24]*B[68]   + W[35]*B[69]  + W[46]*B[70]  + W[57]*B[71]  + W[68]*B[72] + W[79]*B[73] + W[90]*B[74] + W[101]*B[75]+ W[112]*B[76]; \
1256b77e8d12SHong Zhang     A[69]  -=  W[3]*B[66]  + W[14]*B[67]   + W[25]*B[68]   + W[36]*B[69]  + W[47]*B[70]  + W[58]*B[71]  + W[69]*B[72] + W[80]*B[73] + W[91]*B[74] + W[102]*B[75]+ W[113]*B[76]; \
1257b77e8d12SHong Zhang     A[70]  -=  W[4]*B[66]  + W[15]*B[67]   + W[26]*B[68]   + W[37]*B[69]  + W[48]*B[70]  + W[59]*B[71]  + W[70]*B[72] + W[81]*B[73] + W[92]*B[74] + W[103]*B[75]+ W[114]*B[76]; \
1258b77e8d12SHong Zhang     A[71]  -=  W[5]*B[66]  + W[16]*B[67]   + W[27]*B[68]   + W[38]*B[69]  + W[49]*B[70]  + W[60]*B[71]  + W[71]*B[72] + W[82]*B[73] + W[93]*B[74] + W[104]*B[75]+ W[115]*B[76]; \
1259b77e8d12SHong Zhang     A[72]  -=  W[6]*B[66]  + W[17]*B[67]   + W[28]*B[68]   + W[39]*B[69]  + W[50]*B[70]  + W[61]*B[71]  + W[72]*B[72] + W[83]*B[73] + W[94]*B[74] + W[105]*B[75]+ W[116]*B[76]; \
1260b77e8d12SHong Zhang     A[73]  -=  W[7]*B[66]  + W[18]*B[67]   + W[29]*B[68]   + W[40]*B[69]  + W[51]*B[70]  + W[62]*B[71]  + W[73]*B[72] + W[84]*B[73] + W[95]*B[74] + W[106]*B[75]+ W[117]*B[76]; \
1261b77e8d12SHong Zhang     A[74]  -=  W[8]*B[66]  + W[19]*B[67]   + W[30]*B[68]   + W[41]*B[69]  + W[52]*B[70]  + W[63]*B[71]  + W[74]*B[72] + W[85]*B[73] + W[96]*B[74] + W[107]*B[75]+ W[118]*B[76]; \
1262b77e8d12SHong Zhang     A[75]  -=  W[9]*B[66]  + W[20]*B[67]   + W[31]*B[68]   + W[42]*B[69]  + W[53]*B[70]  + W[64]*B[71]  + W[75]*B[72] + W[86]*B[73] + W[97]*B[74] + W[108]*B[75]+ W[119]*B[76]; \
1263b77e8d12SHong Zhang     A[76]  -=  W[10]*B[66] + W[21]*B[67]   + W[32]*B[68]   + W[43]*B[69]  + W[54]*B[70]  + W[65]*B[71]  + W[76]*B[72] + W[87]*B[73] + W[98]*B[74] + W[109]*B[75]+ W[120]*B[76]; \
1264b77e8d12SHong Zhang \
1265b77e8d12SHong Zhang     A[77]  -=  W[0]*B[77]  + W[11]*B[78]   + W[22]*B[79]   + W[33]*B[80]  + W[44]*B[81]  + W[55]*B[82]  + W[66]*B[83] + W[77]*B[84] + W[88]*B[85] + W[99]*B[86] + W[110]*B[87]; \
1266b77e8d12SHong Zhang     A[78]  -=  W[1]*B[77]  + W[12]*B[78]   + W[23]*B[79]   + W[34]*B[80]  + W[45]*B[81]  + W[56]*B[82]  + W[67]*B[83] + W[78]*B[84] + W[89]*B[85] + W[100]*B[86]+ W[111]*B[87]; \
1267b77e8d12SHong Zhang     A[79]  -=  W[2]*B[77]  + W[13]*B[78]   + W[24]*B[79]   + W[35]*B[80]  + W[46]*B[81]  + W[57]*B[82]  + W[68]*B[83] + W[79]*B[84] + W[90]*B[85] + W[101]*B[86]+ W[112]*B[87]; \
1268b77e8d12SHong Zhang     A[80]  -=  W[3]*B[77]  + W[14]*B[78]   + W[25]*B[79]   + W[36]*B[80]  + W[47]*B[81]  + W[58]*B[82]  + W[69]*B[83] + W[80]*B[84] + W[91]*B[85] + W[102]*B[86]+ W[113]*B[87]; \
1269b77e8d12SHong Zhang     A[81]  -=  W[4]*B[77]  + W[15]*B[78]   + W[26]*B[79]   + W[37]*B[80]  + W[48]*B[81]  + W[59]*B[82]  + W[70]*B[83] + W[81]*B[84] + W[92]*B[85] + W[103]*B[86]+ W[114]*B[87]; \
1270b77e8d12SHong Zhang     A[82]  -=  W[5]*B[77]  + W[16]*B[78]   + W[27]*B[79]   + W[38]*B[80]  + W[49]*B[81]  + W[60]*B[82]  + W[71]*B[83] + W[82]*B[84] + W[93]*B[85] + W[104]*B[86]+ W[115]*B[87]; \
1271b77e8d12SHong Zhang     A[83]  -=  W[6]*B[77]  + W[17]*B[78]   + W[28]*B[79]   + W[39]*B[80]  + W[50]*B[81]  + W[61]*B[82]  + W[72]*B[83] + W[83]*B[84] + W[94]*B[85] + W[105]*B[86]+ W[116]*B[87]; \
1272b77e8d12SHong Zhang     A[84]  -=  W[7]*B[77]  + W[18]*B[78]   + W[29]*B[79]   + W[40]*B[80]  + W[51]*B[81]  + W[62]*B[82]  + W[73]*B[83] + W[84]*B[84] + W[95]*B[85] + W[106]*B[86]+ W[117]*B[87]; \
1273b77e8d12SHong Zhang     A[85]  -=  W[8]*B[77]  + W[19]*B[78]   + W[30]*B[79]   + W[41]*B[80]  + W[52]*B[81]  + W[63]*B[82]  + W[74]*B[83] + W[85]*B[84] + W[96]*B[85] + W[107]*B[86]+ W[118]*B[87]; \
1274b77e8d12SHong Zhang     A[86]  -=  W[9]*B[77]  + W[20]*B[78]   + W[31]*B[79]   + W[42]*B[80]  + W[53]*B[81]  + W[64]*B[82]  + W[75]*B[83] + W[86]*B[84] + W[97]*B[85] + W[108]*B[86]+ W[119]*B[87]; \
1275b77e8d12SHong Zhang     A[87]  -=  W[10]*B[77] + W[21]*B[78]   + W[32]*B[79]   + W[43]*B[80]  + W[54]*B[81]  + W[65]*B[82]  + W[76]*B[83] + W[87]*B[84] + W[98]*B[85] + W[109]*B[86]+ W[120]*B[87]; \
1276b77e8d12SHong Zhang \
1277b77e8d12SHong Zhang     A[88]  -=  W[0]*B[88]  + W[11]*B[89]   + W[22]*B[90]   + W[33]*B[91]  + W[44]*B[92]  + W[55]*B[93]  + W[66]*B[94] + W[77]*B[95] + W[88]*B[96] + W[99]*B[97] + W[110]*B[98]; \
1278b77e8d12SHong Zhang     A[89]  -=  W[1]*B[88]  + W[12]*B[89]   + W[23]*B[90]   + W[34]*B[91]  + W[45]*B[92]  + W[56]*B[93]  + W[67]*B[94] + W[78]*B[95] + W[89]*B[96] + W[100]*B[97]+ W[111]*B[98]; \
1279b77e8d12SHong Zhang     A[90]  -=  W[2]*B[88]  + W[13]*B[89]   + W[24]*B[90]   + W[35]*B[91]  + W[46]*B[92]  + W[57]*B[93]  + W[68]*B[94] + W[79]*B[95] + W[90]*B[96] + W[101]*B[97]+ W[112]*B[98]; \
1280b77e8d12SHong Zhang     A[91]  -=  W[3]*B[88]  + W[14]*B[89]   + W[25]*B[90]   + W[36]*B[91]  + W[47]*B[92]  + W[58]*B[93]  + W[69]*B[94] + W[80]*B[95] + W[91]*B[96] + W[102]*B[97]+ W[113]*B[98]; \
1281b77e8d12SHong Zhang     A[92]  -=  W[4]*B[88]  + W[15]*B[89]   + W[26]*B[90]   + W[37]*B[91]  + W[48]*B[92]  + W[59]*B[93]  + W[70]*B[94] + W[81]*B[95] + W[92]*B[96] + W[103]*B[97]+ W[114]*B[98]; \
1282b77e8d12SHong Zhang     A[93]  -=  W[5]*B[88]  + W[16]*B[89]   + W[27]*B[90]   + W[38]*B[91]  + W[49]*B[92]  + W[60]*B[93]  + W[71]*B[94] + W[82]*B[95] + W[93]*B[96] + W[104]*B[97]+ W[115]*B[98]; \
1283b77e8d12SHong Zhang     A[94]  -=  W[6]*B[88]  + W[17]*B[89]   + W[28]*B[90]   + W[39]*B[91]  + W[50]*B[92]  + W[61]*B[93]  + W[72]*B[94] + W[83]*B[95] + W[94]*B[96] + W[105]*B[97]+ W[116]*B[98]; \
1284b77e8d12SHong Zhang     A[95]  -=  W[7]*B[88]  + W[18]*B[89]   + W[29]*B[90]   + W[40]*B[91]  + W[51]*B[92]  + W[62]*B[93]  + W[73]*B[94] + W[84]*B[95] + W[95]*B[96] + W[106]*B[97]+ W[117]*B[98]; \
1285b77e8d12SHong Zhang     A[96]  -=  W[8]*B[88]  + W[19]*B[89]   + W[30]*B[90]   + W[41]*B[91]  + W[52]*B[92]  + W[63]*B[93]  + W[74]*B[94] + W[85]*B[95] + W[96]*B[96] + W[107]*B[97]+ W[118]*B[98]; \
1286b77e8d12SHong Zhang     A[97]  -=  W[9]*B[88]  + W[20]*B[89]   + W[31]*B[90]   + W[42]*B[91]  + W[53]*B[92]  + W[64]*B[93]  + W[75]*B[94] + W[86]*B[95] + W[97]*B[96] + W[108]*B[97]+ W[119]*B[98]; \
1287b77e8d12SHong Zhang     A[98]  -=  W[10]*B[88] + W[21]*B[89]   + W[32]*B[90]   + W[43]*B[91]  + W[54]*B[92]  + W[65]*B[93]  + W[76]*B[94] + W[87]*B[95] + W[98]*B[96] + W[109]*B[97]+ W[120]*B[98]; \
1288b77e8d12SHong Zhang \
1289b77e8d12SHong Zhang     A[99]  -= W[0]*B[99]  + W[11]*B[100] + W[22]*B[101] + W[33]*B[102]  + W[44]*B[103] + W[55]*B[104] + W[66]*B[105] + W[77]*B[106] + W[88]*B[107] + W[99]*B[108] + W[110]*B[109]; \
1290b77e8d12SHong Zhang     A[100] -= W[1]*B[99]  + W[12]*B[100] + W[23]*B[101] + W[34]*B[102]  + W[45]*B[103] + W[56]*B[104] + W[67]*B[105] + W[78]*B[106] + W[89]*B[107] + W[100]*B[108]+ W[111]*B[109]; \
1291b77e8d12SHong Zhang     A[101] -= W[2]*B[99]  + W[13]*B[100] + W[24]*B[101] + W[35]*B[102]  + W[46]*B[103] + W[57]*B[104] + W[68]*B[105] + W[79]*B[106] + W[90]*B[107] + W[101]*B[108]+ W[112]*B[109]; \
1292b77e8d12SHong Zhang     A[102] -= W[3]*B[99]  + W[14]*B[100] + W[25]*B[101] + W[36]*B[102]  + W[47]*B[103] + W[58]*B[104] + W[69]*B[105] + W[80]*B[106] + W[91]*B[107] + W[102]*B[108]+ W[113]*B[109]; \
1293b77e8d12SHong Zhang     A[103] -= W[4]*B[99]  + W[15]*B[100] + W[26]*B[101] + W[37]*B[102]  + W[48]*B[103] + W[59]*B[104] + W[70]*B[105] + W[81]*B[106] + W[92]*B[107] + W[103]*B[108]+ W[114]*B[109]; \
1294b77e8d12SHong Zhang     A[104] -= W[5]*B[99]  + W[16]*B[100] + W[27]*B[101] + W[38]*B[102]  + W[49]*B[103] + W[60]*B[104] + W[71]*B[105] + W[82]*B[106] + W[93]*B[107] + W[104]*B[108]+ W[115]*B[109]; \
1295b77e8d12SHong Zhang     A[105] -= W[6]*B[99]  + W[17]*B[100] + W[28]*B[101] + W[39]*B[102]  + W[50]*B[103] + W[61]*B[104] + W[72]*B[105] + W[83]*B[106] + W[94]*B[107] + W[105]*B[108]+ W[116]*B[109]; \
1296b77e8d12SHong Zhang     A[106] -= W[7]*B[99]  + W[18]*B[100] + W[29]*B[101] + W[40]*B[102]  + W[51]*B[103] + W[62]*B[104] + W[73]*B[105] + W[84]*B[106] + W[95]*B[107] + W[106]*B[108]+ W[117]*B[109]; \
1297b77e8d12SHong Zhang     A[107] -= W[8]*B[99]  + W[19]*B[100] + W[30]*B[101] + W[41]*B[102]  + W[52]*B[103] + W[63]*B[104] + W[74]*B[105] + W[85]*B[106] + W[96]*B[107] + W[107]*B[108]+ W[118]*B[109]; \
1298b77e8d12SHong Zhang     A[108] -= W[9]*B[99]  + W[20]*B[100] + W[31]*B[101] + W[42]*B[102]  + W[53]*B[103] + W[64]*B[104] + W[75]*B[105] + W[86]*B[106] + W[97]*B[107] + W[108]*B[108]+ W[119]*B[109]; \
1299b77e8d12SHong Zhang     A[109] -= W[10]*B[99] + W[21]*B[100] + W[32]*B[101] + W[43]*B[102]  + W[54]*B[103] + W[65]*B[104] + W[76]*B[105] + W[87]*B[106] + W[98]*B[107] + W[109]*B[108]+ W[120]*B[109]; \
1300b77e8d12SHong Zhang \
1301b77e8d12SHong Zhang     A[110] -= W[0]*B[110]  + W[11]*B[111] + W[22]*B[112] + W[33]*B[113]  + W[44]*B[114] + W[55]*B[115] + W[66]*B[116] + W[77]*B[117] + W[88]*B[118] + W[99]*B[119] + W[110]*B[120]; \
1302b77e8d12SHong Zhang     A[111] -= W[1]*B[110]  + W[12]*B[111] + W[23]*B[112] + W[34]*B[113]  + W[45]*B[114] + W[56]*B[115] + W[67]*B[116] + W[78]*B[117] + W[89]*B[118] + W[100]*B[119]+ W[111]*B[120]; \
1303b77e8d12SHong Zhang     A[112] -= W[2]*B[110]  + W[13]*B[111] + W[24]*B[112] + W[35]*B[113]  + W[46]*B[114] + W[57]*B[115] + W[68]*B[116] + W[79]*B[117] + W[90]*B[118] + W[101]*B[119]+ W[112]*B[120]; \
1304b77e8d12SHong Zhang     A[113] -= W[3]*B[110]  + W[14]*B[111] + W[25]*B[112] + W[36]*B[113]  + W[47]*B[114] + W[58]*B[115] + W[69]*B[116] + W[80]*B[117] + W[91]*B[118] + W[102]*B[119]+ W[113]*B[120]; \
1305b77e8d12SHong Zhang     A[114] -= W[4]*B[110]  + W[15]*B[111] + W[26]*B[112] + W[37]*B[113]  + W[48]*B[114] + W[59]*B[115] + W[70]*B[116] + W[81]*B[117] + W[92]*B[118] + W[103]*B[119]+ W[114]*B[120]; \
1306b77e8d12SHong Zhang     A[115] -= W[5]*B[110]  + W[16]*B[111] + W[27]*B[112] + W[38]*B[113]  + W[49]*B[114] + W[60]*B[115] + W[71]*B[116] + W[82]*B[117] + W[93]*B[118] + W[104]*B[119]+ W[115]*B[120]; \
1307b77e8d12SHong Zhang     A[116] -= W[6]*B[110]  + W[17]*B[111] + W[28]*B[112] + W[39]*B[113]  + W[50]*B[114] + W[61]*B[115] + W[72]*B[116] + W[83]*B[117] + W[94]*B[118] + W[105]*B[119]+ W[116]*B[120]; \
1308b77e8d12SHong Zhang     A[117] -= W[7]*B[110]  + W[18]*B[111] + W[29]*B[112] + W[40]*B[113]  + W[51]*B[114] + W[62]*B[115] + W[73]*B[116] + W[84]*B[117] + W[95]*B[118] + W[106]*B[119]+ W[117]*B[120]; \
1309b77e8d12SHong Zhang     A[118] -= W[8]*B[110]  + W[19]*B[111] + W[30]*B[112] + W[41]*B[113]  + W[52]*B[114] + W[63]*B[115] + W[74]*B[116] + W[85]*B[117] + W[96]*B[118] + W[107]*B[119]+ W[118]*B[120]; \
1310b77e8d12SHong Zhang     A[119] -= W[9]*B[110]  + W[20]*B[111] + W[31]*B[112] + W[42]*B[113]  + W[53]*B[114] + W[64]*B[115] + W[75]*B[116] + W[86]*B[117] + W[97]*B[118] + W[108]*B[119]+ W[119]*B[120]; \
1311b77e8d12SHong Zhang     A[120] -= W[10]*B[110] + W[21]*B[111] + W[32]*B[112] + W[43]*B[113]  + W[54]*B[114] + W[65]*B[115] + W[76]*B[116] + W[87]*B[117] + W[98]*B[118] + W[109]*B[119]+ W[120]*B[120];\
1312b77e8d12SHong Zhang   }
1313b77e8d12SHong Zhang 
131496b95a6bSBarry Smith #define PetscKernel_A_gets_A_times_B_15(A,B,W) 0; \
13152b0b2ea7SShri Abhyankar   {        \
13162b0b2ea7SShri Abhyankar     PetscMemcpy(W,A,225*sizeof(MatScalar)); \
131729a97285SShri Abhyankar     A[0]   = W[0]*B[0] + W[15]*B[1] + W[30]*B[2] + W[45]*B[3] + W[60]*B[4] + W[75]*B[5] + W[90]*B[6] + W[105]*B[7] + W[120]*B[8] + W[135]*B[9] + W[150]*B[10] + W[165]*B[11] + W[180]*B[12] + W[195]*B[13] + W[210]*B[14]; \
131829a97285SShri Abhyankar     A[1]   = W[1]*B[0] + W[16]*B[1] + W[31]*B[2] + W[46]*B[3] + W[61]*B[4] + W[76]*B[5] + W[91]*B[6] + W[106]*B[7] + W[121]*B[8] + W[136]*B[9] + W[151]*B[10] + W[166]*B[11] + W[181]*B[12] + W[196]*B[13] + W[211]*B[14]; \
131929a97285SShri Abhyankar     A[2]   = W[2]*B[0] + W[17]*B[1] + W[32]*B[2] + W[47]*B[3] + W[62]*B[4] + W[77]*B[5] + W[92]*B[6] + W[107]*B[7] + W[122]*B[8] + W[137]*B[9] + W[152]*B[10] + W[167]*B[11] + W[182]*B[12] + W[197]*B[13] + W[212]*B[14]; \
132029a97285SShri Abhyankar     A[3]   = W[3]*B[0] + W[18]*B[1] + W[33]*B[2] + W[48]*B[3] + W[63]*B[4] + W[78]*B[5] + W[93]*B[6] + W[108]*B[7] + W[123]*B[8] + W[138]*B[9] + W[153]*B[10] + W[168]*B[11] + W[183]*B[12] + W[198]*B[13] + W[213]*B[14]; \
132129a97285SShri Abhyankar     A[4]   = W[4]*B[0] + W[19]*B[1] + W[34]*B[2] + W[49]*B[3] + W[64]*B[4] + W[79]*B[5] + W[94]*B[6] + W[109]*B[7] + W[124]*B[8] + W[139]*B[9] + W[154]*B[10] + W[169]*B[11] + W[184]*B[12] + W[199]*B[13] + W[214]*B[14]; \
132229a97285SShri Abhyankar     A[5]   = W[5]*B[0] + W[20]*B[1] + W[35]*B[2] + W[50]*B[3] + W[65]*B[4] + W[80]*B[5] + W[95]*B[6] + W[110]*B[7] + W[125]*B[8] + W[140]*B[9] + W[155]*B[10] + W[170]*B[11] + W[185]*B[12] + W[200]*B[13] + W[215]*B[14]; \
132329a97285SShri Abhyankar     A[6]   = W[6]*B[0] + W[21]*B[1] + W[36]*B[2] + W[51]*B[3] + W[66]*B[4] + W[81]*B[5] + W[96]*B[6] + W[111]*B[7] + W[126]*B[8] + W[141]*B[9] + W[156]*B[10] + W[171]*B[11] + W[186]*B[12] + W[201]*B[13] + W[216]*B[14]; \
132429a97285SShri Abhyankar     A[7]   = W[7]*B[0] + W[22]*B[1] + W[37]*B[2] + W[52]*B[3] + W[67]*B[4] + W[82]*B[5] + W[97]*B[6] + W[112]*B[7] + W[127]*B[8] + W[142]*B[9] + W[157]*B[10] + W[172]*B[11] + W[187]*B[12] + W[202]*B[13] + W[217]*B[14]; \
132529a97285SShri Abhyankar     A[8]   = W[8]*B[0] + W[23]*B[1] + W[38]*B[2] + W[53]*B[3] + W[68]*B[4] + W[83]*B[5] + W[98]*B[6] + W[113]*B[7] + W[128]*B[8] + W[143]*B[9] + W[158]*B[10] + W[173]*B[11] + W[188]*B[12] + W[203]*B[13] + W[218]*B[14]; \
132629a97285SShri Abhyankar     A[9]   = W[9]*B[0] + W[24]*B[1] + W[39]*B[2] + W[54]*B[3] + W[69]*B[4] + W[84]*B[5] + W[99]*B[6] + W[114]*B[7] + W[129]*B[8] + W[144]*B[9] + W[159]*B[10] + W[174]*B[11] + W[189]*B[12] + W[204]*B[13] + W[219]*B[14]; \
132729a97285SShri Abhyankar     A[10]  = W[10]*B[0] + W[25]*B[1] + W[40]*B[2] + W[55]*B[3] + W[70]*B[4] + W[85]*B[5] + W[100]*B[6] + W[115]*B[7] + W[130]*B[8] + W[145]*B[9] + W[160]*B[10] + W[175]*B[11] + W[190]*B[12] + W[205]*B[13] + W[220]*B[14]; \
132829a97285SShri Abhyankar     A[11]  = W[11]*B[0] + W[26]*B[1] + W[41]*B[2] + W[56]*B[3] + W[71]*B[4] + W[86]*B[5] + W[101]*B[6] + W[116]*B[7] + W[131]*B[8] + W[146]*B[9] + W[161]*B[10] + W[176]*B[11] + W[191]*B[12] + W[206]*B[13] + W[221]*B[14]; \
132929a97285SShri Abhyankar     A[12]  = W[12]*B[0] + W[27]*B[1] + W[42]*B[2] + W[57]*B[3] + W[72]*B[4] + W[87]*B[5] + W[102]*B[6] + W[117]*B[7] + W[132]*B[8] + W[147]*B[9] + W[162]*B[10] + W[177]*B[11] + W[192]*B[12] + W[207]*B[13] + W[222]*B[14]; \
133029a97285SShri Abhyankar     A[13]  = W[13]*B[0] + W[28]*B[1] + W[43]*B[2] + W[58]*B[3] + W[73]*B[4] + W[88]*B[5] + W[103]*B[6] + W[118]*B[7] + W[133]*B[8] + W[148]*B[9] + W[163]*B[10] + W[178]*B[11] + W[193]*B[12] + W[208]*B[13] + W[223]*B[14]; \
133129a97285SShri Abhyankar     A[14]  = W[14]*B[0] + W[29]*B[1] + W[44]*B[2] + W[59]*B[3] + W[74]*B[4] + W[89]*B[5] + W[104]*B[6] + W[119]*B[7] + W[134]*B[8] + W[149]*B[9] + W[164]*B[10] + W[179]*B[11] + W[194]*B[12] + W[209]*B[13] + W[224]*B[14]; \
133229a97285SShri Abhyankar     A[15]  = W[0]*B[15] + W[15]*B[16] + W[30]*B[17] + W[45]*B[18] + W[60]*B[19] + W[75]*B[20] + W[90]*B[21] + W[105]*B[22] + W[120]*B[23] + W[135]*B[24] + W[150]*B[25] + W[165]*B[26] + W[180]*B[27] + W[195]*B[28] + W[210]*B[29]; \
133329a97285SShri Abhyankar     A[16]  = W[1]*B[15] + W[16]*B[16] + W[31]*B[17] + W[46]*B[18] + W[61]*B[19] + W[76]*B[20] + W[91]*B[21] + W[106]*B[22] + W[121]*B[23] + W[136]*B[24] + W[151]*B[25] + W[166]*B[26] + W[181]*B[27] + W[196]*B[28] + W[211]*B[29]; \
133429a97285SShri Abhyankar     A[17]  = W[2]*B[15] + W[17]*B[16] + W[32]*B[17] + W[47]*B[18] + W[62]*B[19] + W[77]*B[20] + W[92]*B[21] + W[107]*B[22] + W[122]*B[23] + W[137]*B[24] + W[152]*B[25] + W[167]*B[26] + W[182]*B[27] + W[197]*B[28] + W[212]*B[29]; \
133529a97285SShri Abhyankar     A[18]  = W[3]*B[15] + W[18]*B[16] + W[33]*B[17] + W[48]*B[18] + W[63]*B[19] + W[78]*B[20] + W[93]*B[21] + W[108]*B[22] + W[123]*B[23] + W[138]*B[24] + W[153]*B[25] + W[168]*B[26] + W[183]*B[27] + W[198]*B[28] + W[213]*B[29]; \
133629a97285SShri Abhyankar     A[19]  = W[4]*B[15] + W[19]*B[16] + W[34]*B[17] + W[49]*B[18] + W[64]*B[19] + W[79]*B[20] + W[94]*B[21] + W[109]*B[22] + W[124]*B[23] + W[139]*B[24] + W[154]*B[25] + W[169]*B[26] + W[184]*B[27] + W[199]*B[28] + W[214]*B[29]; \
133729a97285SShri Abhyankar     A[20]  = W[5]*B[15] + W[20]*B[16] + W[35]*B[17] + W[50]*B[18] + W[65]*B[19] + W[80]*B[20] + W[95]*B[21] + W[110]*B[22] + W[125]*B[23] + W[140]*B[24] + W[155]*B[25] + W[170]*B[26] + W[185]*B[27] + W[200]*B[28] + W[215]*B[29]; \
133829a97285SShri Abhyankar     A[21]  = W[6]*B[15] + W[21]*B[16] + W[36]*B[17] + W[51]*B[18] + W[66]*B[19] + W[81]*B[20] + W[96]*B[21] + W[111]*B[22] + W[126]*B[23] + W[141]*B[24] + W[156]*B[25] + W[171]*B[26] + W[186]*B[27] + W[201]*B[28] + W[216]*B[29]; \
133929a97285SShri Abhyankar     A[22]  = W[7]*B[15] + W[22]*B[16] + W[37]*B[17] + W[52]*B[18] + W[67]*B[19] + W[82]*B[20] + W[97]*B[21] + W[112]*B[22] + W[127]*B[23] + W[142]*B[24] + W[157]*B[25] + W[172]*B[26] + W[187]*B[27] + W[202]*B[28] + W[217]*B[29]; \
134029a97285SShri Abhyankar     A[23]  = W[8]*B[15] + W[23]*B[16] + W[38]*B[17] + W[53]*B[18] + W[68]*B[19] + W[83]*B[20] + W[98]*B[21] + W[113]*B[22] + W[128]*B[23] + W[143]*B[24] + W[158]*B[25] + W[173]*B[26] + W[188]*B[27] + W[203]*B[28] + W[218]*B[29]; \
134129a97285SShri Abhyankar     A[24]  = W[9]*B[15] + W[24]*B[16] + W[39]*B[17] + W[54]*B[18] + W[69]*B[19] + W[84]*B[20] + W[99]*B[21] + W[114]*B[22] + W[129]*B[23] + W[144]*B[24] + W[159]*B[25] + W[174]*B[26] + W[189]*B[27] + W[204]*B[28] + W[219]*B[29]; \
134229a97285SShri Abhyankar     A[25]  = W[10]*B[15] + W[25]*B[16] + W[40]*B[17] + W[55]*B[18] + W[70]*B[19] + W[85]*B[20] + W[100]*B[21] + W[115]*B[22] + W[130]*B[23] + W[145]*B[24] + W[160]*B[25] + W[175]*B[26] + W[190]*B[27] + W[205]*B[28] + W[220]*B[29]; \
134329a97285SShri Abhyankar     A[26]  = W[11]*B[15] + W[26]*B[16] + W[41]*B[17] + W[56]*B[18] + W[71]*B[19] + W[86]*B[20] + W[101]*B[21] + W[116]*B[22] + W[131]*B[23] + W[146]*B[24] + W[161]*B[25] + W[176]*B[26] + W[191]*B[27] + W[206]*B[28] + W[221]*B[29]; \
134429a97285SShri Abhyankar     A[27]  = W[12]*B[15] + W[27]*B[16] + W[42]*B[17] + W[57]*B[18] + W[72]*B[19] + W[87]*B[20] + W[102]*B[21] + W[117]*B[22] + W[132]*B[23] + W[147]*B[24] + W[162]*B[25] + W[177]*B[26] + W[192]*B[27] + W[207]*B[28] + W[222]*B[29]; \
134529a97285SShri Abhyankar     A[28]  = W[13]*B[15] + W[28]*B[16] + W[43]*B[17] + W[58]*B[18] + W[73]*B[19] + W[88]*B[20] + W[103]*B[21] + W[118]*B[22] + W[133]*B[23] + W[148]*B[24] + W[163]*B[25] + W[178]*B[26] + W[193]*B[27] + W[208]*B[28] + W[223]*B[29]; \
134629a97285SShri Abhyankar     A[29]  = W[14]*B[15] + W[29]*B[16] + W[44]*B[17] + W[59]*B[18] + W[74]*B[19] + W[89]*B[20] + W[104]*B[21] + W[119]*B[22] + W[134]*B[23] + W[149]*B[24] + W[164]*B[25] + W[179]*B[26] + W[194]*B[27] + W[209]*B[28] + W[224]*B[29]; \
134729a97285SShri Abhyankar     A[30]  = W[0]*B[30] + W[15]*B[31] + W[30]*B[32] + W[45]*B[33] + W[60]*B[34] + W[75]*B[35] + W[90]*B[36] + W[105]*B[37] + W[120]*B[38] + W[135]*B[39] + W[150]*B[40] + W[165]*B[41] + W[180]*B[42] + W[195]*B[43] + W[210]*B[44]; \
134829a97285SShri Abhyankar     A[31]  = W[1]*B[30] + W[16]*B[31] + W[31]*B[32] + W[46]*B[33] + W[61]*B[34] + W[76]*B[35] + W[91]*B[36] + W[106]*B[37] + W[121]*B[38] + W[136]*B[39] + W[151]*B[40] + W[166]*B[41] + W[181]*B[42] + W[196]*B[43] + W[211]*B[44]; \
134929a97285SShri Abhyankar     A[32]  = W[2]*B[30] + W[17]*B[31] + W[32]*B[32] + W[47]*B[33] + W[62]*B[34] + W[77]*B[35] + W[92]*B[36] + W[107]*B[37] + W[122]*B[38] + W[137]*B[39] + W[152]*B[40] + W[167]*B[41] + W[182]*B[42] + W[197]*B[43] + W[212]*B[44]; \
135029a97285SShri Abhyankar     A[33]  = W[3]*B[30] + W[18]*B[31] + W[33]*B[32] + W[48]*B[33] + W[63]*B[34] + W[78]*B[35] + W[93]*B[36] + W[108]*B[37] + W[123]*B[38] + W[138]*B[39] + W[153]*B[40] + W[168]*B[41] + W[183]*B[42] + W[198]*B[43] + W[213]*B[44]; \
135129a97285SShri Abhyankar     A[34]  = W[4]*B[30] + W[19]*B[31] + W[34]*B[32] + W[49]*B[33] + W[64]*B[34] + W[79]*B[35] + W[94]*B[36] + W[109]*B[37] + W[124]*B[38] + W[139]*B[39] + W[154]*B[40] + W[169]*B[41] + W[184]*B[42] + W[199]*B[43] + W[214]*B[44]; \
135229a97285SShri Abhyankar     A[35]  = W[5]*B[30] + W[20]*B[31] + W[35]*B[32] + W[50]*B[33] + W[65]*B[34] + W[80]*B[35] + W[95]*B[36] + W[110]*B[37] + W[125]*B[38] + W[140]*B[39] + W[155]*B[40] + W[170]*B[41] + W[185]*B[42] + W[200]*B[43] + W[215]*B[44]; \
135329a97285SShri Abhyankar     A[36]  = W[6]*B[30] + W[21]*B[31] + W[36]*B[32] + W[51]*B[33] + W[66]*B[34] + W[81]*B[35] + W[96]*B[36] + W[111]*B[37] + W[126]*B[38] + W[141]*B[39] + W[156]*B[40] + W[171]*B[41] + W[186]*B[42] + W[201]*B[43] + W[216]*B[44]; \
135429a97285SShri Abhyankar     A[37]  = W[7]*B[30] + W[22]*B[31] + W[37]*B[32] + W[52]*B[33] + W[67]*B[34] + W[82]*B[35] + W[97]*B[36] + W[112]*B[37] + W[127]*B[38] + W[142]*B[39] + W[157]*B[40] + W[172]*B[41] + W[187]*B[42] + W[202]*B[43] + W[217]*B[44]; \
135529a97285SShri Abhyankar     A[38]  = W[8]*B[30] + W[23]*B[31] + W[38]*B[32] + W[53]*B[33] + W[68]*B[34] + W[83]*B[35] + W[98]*B[36] + W[113]*B[37] + W[128]*B[38] + W[143]*B[39] + W[158]*B[40] + W[173]*B[41] + W[188]*B[42] + W[203]*B[43] + W[218]*B[44]; \
135629a97285SShri Abhyankar     A[39]  = W[9]*B[30] + W[24]*B[31] + W[39]*B[32] + W[54]*B[33] + W[69]*B[34] + W[84]*B[35] + W[99]*B[36] + W[114]*B[37] + W[129]*B[38] + W[144]*B[39] + W[159]*B[40] + W[174]*B[41] + W[189]*B[42] + W[204]*B[43] + W[219]*B[44]; \
135729a97285SShri Abhyankar     A[40]  = W[10]*B[30] + W[25]*B[31] + W[40]*B[32] + W[55]*B[33] + W[70]*B[34] + W[85]*B[35] + W[100]*B[36] + W[115]*B[37] + W[130]*B[38] + W[145]*B[39] + W[160]*B[40] + W[175]*B[41] + W[190]*B[42] + W[205]*B[43] + W[220]*B[44]; \
135829a97285SShri Abhyankar     A[41]  = W[11]*B[30] + W[26]*B[31] + W[41]*B[32] + W[56]*B[33] + W[71]*B[34] + W[86]*B[35] + W[101]*B[36] + W[116]*B[37] + W[131]*B[38] + W[146]*B[39] + W[161]*B[40] + W[176]*B[41] + W[191]*B[42] + W[206]*B[43] + W[221]*B[44]; \
135929a97285SShri Abhyankar     A[42]  = W[12]*B[30] + W[27]*B[31] + W[42]*B[32] + W[57]*B[33] + W[72]*B[34] + W[87]*B[35] + W[102]*B[36] + W[117]*B[37] + W[132]*B[38] + W[147]*B[39] + W[162]*B[40] + W[177]*B[41] + W[192]*B[42] + W[207]*B[43] + W[222]*B[44]; \
136029a97285SShri Abhyankar     A[43]  = W[13]*B[30] + W[28]*B[31] + W[43]*B[32] + W[58]*B[33] + W[73]*B[34] + W[88]*B[35] + W[103]*B[36] + W[118]*B[37] + W[133]*B[38] + W[148]*B[39] + W[163]*B[40] + W[178]*B[41] + W[193]*B[42] + W[208]*B[43] + W[223]*B[44]; \
136129a97285SShri Abhyankar     A[44]  = W[14]*B[30] + W[29]*B[31] + W[44]*B[32] + W[59]*B[33] + W[74]*B[34] + W[89]*B[35] + W[104]*B[36] + W[119]*B[37] + W[134]*B[38] + W[149]*B[39] + W[164]*B[40] + W[179]*B[41] + W[194]*B[42] + W[209]*B[43] + W[224]*B[44]; \
136229a97285SShri Abhyankar     A[45]  = W[0]*B[45] + W[15]*B[46] + W[30]*B[47] + W[45]*B[48] + W[60]*B[49] + W[75]*B[50] + W[90]*B[51] + W[105]*B[52] + W[120]*B[53] + W[135]*B[54] + W[150]*B[55] + W[165]*B[56] + W[180]*B[57] + W[195]*B[58] + W[210]*B[59]; \
136329a97285SShri Abhyankar     A[46]  = W[1]*B[45] + W[16]*B[46] + W[31]*B[47] + W[46]*B[48] + W[61]*B[49] + W[76]*B[50] + W[91]*B[51] + W[106]*B[52] + W[121]*B[53] + W[136]*B[54] + W[151]*B[55] + W[166]*B[56] + W[181]*B[57] + W[196]*B[58] + W[211]*B[59]; \
136429a97285SShri Abhyankar     A[47]  = W[2]*B[45] + W[17]*B[46] + W[32]*B[47] + W[47]*B[48] + W[62]*B[49] + W[77]*B[50] + W[92]*B[51] + W[107]*B[52] + W[122]*B[53] + W[137]*B[54] + W[152]*B[55] + W[167]*B[56] + W[182]*B[57] + W[197]*B[58] + W[212]*B[59]; \
136529a97285SShri Abhyankar     A[48]  = W[3]*B[45] + W[18]*B[46] + W[33]*B[47] + W[48]*B[48] + W[63]*B[49] + W[78]*B[50] + W[93]*B[51] + W[108]*B[52] + W[123]*B[53] + W[138]*B[54] + W[153]*B[55] + W[168]*B[56] + W[183]*B[57] + W[198]*B[58] + W[213]*B[59]; \
136629a97285SShri Abhyankar     A[49]  = W[4]*B[45] + W[19]*B[46] + W[34]*B[47] + W[49]*B[48] + W[64]*B[49] + W[79]*B[50] + W[94]*B[51] + W[109]*B[52] + W[124]*B[53] + W[139]*B[54] + W[154]*B[55] + W[169]*B[56] + W[184]*B[57] + W[199]*B[58] + W[214]*B[59]; \
136729a97285SShri Abhyankar     A[50]  = W[5]*B[45] + W[20]*B[46] + W[35]*B[47] + W[50]*B[48] + W[65]*B[49] + W[80]*B[50] + W[95]*B[51] + W[110]*B[52] + W[125]*B[53] + W[140]*B[54] + W[155]*B[55] + W[170]*B[56] + W[185]*B[57] + W[200]*B[58] + W[215]*B[59]; \
136829a97285SShri Abhyankar     A[51]  = W[6]*B[45] + W[21]*B[46] + W[36]*B[47] + W[51]*B[48] + W[66]*B[49] + W[81]*B[50] + W[96]*B[51] + W[111]*B[52] + W[126]*B[53] + W[141]*B[54] + W[156]*B[55] + W[171]*B[56] + W[186]*B[57] + W[201]*B[58] + W[216]*B[59]; \
136929a97285SShri Abhyankar     A[52]  = W[7]*B[45] + W[22]*B[46] + W[37]*B[47] + W[52]*B[48] + W[67]*B[49] + W[82]*B[50] + W[97]*B[51] + W[112]*B[52] + W[127]*B[53] + W[142]*B[54] + W[157]*B[55] + W[172]*B[56] + W[187]*B[57] + W[202]*B[58] + W[217]*B[59]; \
137029a97285SShri Abhyankar     A[53]  = W[8]*B[45] + W[23]*B[46] + W[38]*B[47] + W[53]*B[48] + W[68]*B[49] + W[83]*B[50] + W[98]*B[51] + W[113]*B[52] + W[128]*B[53] + W[143]*B[54] + W[158]*B[55] + W[173]*B[56] + W[188]*B[57] + W[203]*B[58] + W[218]*B[59]; \
137129a97285SShri Abhyankar     A[54]  = W[9]*B[45] + W[24]*B[46] + W[39]*B[47] + W[54]*B[48] + W[69]*B[49] + W[84]*B[50] + W[99]*B[51] + W[114]*B[52] + W[129]*B[53] + W[144]*B[54] + W[159]*B[55] + W[174]*B[56] + W[189]*B[57] + W[204]*B[58] + W[219]*B[59]; \
137229a97285SShri Abhyankar     A[55]  = W[10]*B[45] + W[25]*B[46] + W[40]*B[47] + W[55]*B[48] + W[70]*B[49] + W[85]*B[50] + W[100]*B[51] + W[115]*B[52] + W[130]*B[53] + W[145]*B[54] + W[160]*B[55] + W[175]*B[56] + W[190]*B[57] + W[205]*B[58] + W[220]*B[59]; \
137329a97285SShri Abhyankar     A[56]  = W[11]*B[45] + W[26]*B[46] + W[41]*B[47] + W[56]*B[48] + W[71]*B[49] + W[86]*B[50] + W[101]*B[51] + W[116]*B[52] + W[131]*B[53] + W[146]*B[54] + W[161]*B[55] + W[176]*B[56] + W[191]*B[57] + W[206]*B[58] + W[221]*B[59]; \
137429a97285SShri Abhyankar     A[57]  = W[12]*B[45] + W[27]*B[46] + W[42]*B[47] + W[57]*B[48] + W[72]*B[49] + W[87]*B[50] + W[102]*B[51] + W[117]*B[52] + W[132]*B[53] + W[147]*B[54] + W[162]*B[55] + W[177]*B[56] + W[192]*B[57] + W[207]*B[58] + W[222]*B[59]; \
137529a97285SShri Abhyankar     A[58]  = W[13]*B[45] + W[28]*B[46] + W[43]*B[47] + W[58]*B[48] + W[73]*B[49] + W[88]*B[50] + W[103]*B[51] + W[118]*B[52] + W[133]*B[53] + W[148]*B[54] + W[163]*B[55] + W[178]*B[56] + W[193]*B[57] + W[208]*B[58] + W[223]*B[59]; \
137629a97285SShri Abhyankar     A[59]  = W[14]*B[45] + W[29]*B[46] + W[44]*B[47] + W[59]*B[48] + W[74]*B[49] + W[89]*B[50] + W[104]*B[51] + W[119]*B[52] + W[134]*B[53] + W[149]*B[54] + W[164]*B[55] + W[179]*B[56] + W[194]*B[57] + W[209]*B[58] + W[224]*B[59]; \
137729a97285SShri Abhyankar     A[60]  = W[0]*B[60] + W[15]*B[61] + W[30]*B[62] + W[45]*B[63] + W[60]*B[64] + W[75]*B[65] + W[90]*B[66] + W[105]*B[67] + W[120]*B[68] + W[135]*B[69] + W[150]*B[70] + W[165]*B[71] + W[180]*B[72] + W[195]*B[73] + W[210]*B[74]; \
137829a97285SShri Abhyankar     A[61]  = W[1]*B[60] + W[16]*B[61] + W[31]*B[62] + W[46]*B[63] + W[61]*B[64] + W[76]*B[65] + W[91]*B[66] + W[106]*B[67] + W[121]*B[68] + W[136]*B[69] + W[151]*B[70] + W[166]*B[71] + W[181]*B[72] + W[196]*B[73] + W[211]*B[74]; \
137929a97285SShri Abhyankar     A[62]  = W[2]*B[60] + W[17]*B[61] + W[32]*B[62] + W[47]*B[63] + W[62]*B[64] + W[77]*B[65] + W[92]*B[66] + W[107]*B[67] + W[122]*B[68] + W[137]*B[69] + W[152]*B[70] + W[167]*B[71] + W[182]*B[72] + W[197]*B[73] + W[212]*B[74]; \
138029a97285SShri Abhyankar     A[63]  = W[3]*B[60] + W[18]*B[61] + W[33]*B[62] + W[48]*B[63] + W[63]*B[64] + W[78]*B[65] + W[93]*B[66] + W[108]*B[67] + W[123]*B[68] + W[138]*B[69] + W[153]*B[70] + W[168]*B[71] + W[183]*B[72] + W[198]*B[73] + W[213]*B[74]; \
138129a97285SShri Abhyankar     A[64]  = W[4]*B[60] + W[19]*B[61] + W[34]*B[62] + W[49]*B[63] + W[64]*B[64] + W[79]*B[65] + W[94]*B[66] + W[109]*B[67] + W[124]*B[68] + W[139]*B[69] + W[154]*B[70] + W[169]*B[71] + W[184]*B[72] + W[199]*B[73] + W[214]*B[74]; \
138229a97285SShri Abhyankar     A[65]  = W[5]*B[60] + W[20]*B[61] + W[35]*B[62] + W[50]*B[63] + W[65]*B[64] + W[80]*B[65] + W[95]*B[66] + W[110]*B[67] + W[125]*B[68] + W[140]*B[69] + W[155]*B[70] + W[170]*B[71] + W[185]*B[72] + W[200]*B[73] + W[215]*B[74]; \
138329a97285SShri Abhyankar     A[66]  = W[6]*B[60] + W[21]*B[61] + W[36]*B[62] + W[51]*B[63] + W[66]*B[64] + W[81]*B[65] + W[96]*B[66] + W[111]*B[67] + W[126]*B[68] + W[141]*B[69] + W[156]*B[70] + W[171]*B[71] + W[186]*B[72] + W[201]*B[73] + W[216]*B[74]; \
138429a97285SShri Abhyankar     A[67]  = W[7]*B[60] + W[22]*B[61] + W[37]*B[62] + W[52]*B[63] + W[67]*B[64] + W[82]*B[65] + W[97]*B[66] + W[112]*B[67] + W[127]*B[68] + W[142]*B[69] + W[157]*B[70] + W[172]*B[71] + W[187]*B[72] + W[202]*B[73] + W[217]*B[74]; \
138529a97285SShri Abhyankar     A[68]  = W[8]*B[60] + W[23]*B[61] + W[38]*B[62] + W[53]*B[63] + W[68]*B[64] + W[83]*B[65] + W[98]*B[66] + W[113]*B[67] + W[128]*B[68] + W[143]*B[69] + W[158]*B[70] + W[173]*B[71] + W[188]*B[72] + W[203]*B[73] + W[218]*B[74]; \
138629a97285SShri Abhyankar     A[69]  = W[9]*B[60] + W[24]*B[61] + W[39]*B[62] + W[54]*B[63] + W[69]*B[64] + W[84]*B[65] + W[99]*B[66] + W[114]*B[67] + W[129]*B[68] + W[144]*B[69] + W[159]*B[70] + W[174]*B[71] + W[189]*B[72] + W[204]*B[73] + W[219]*B[74]; \
138729a97285SShri Abhyankar     A[70]  = W[10]*B[60] + W[25]*B[61] + W[40]*B[62] + W[55]*B[63] + W[70]*B[64] + W[85]*B[65] + W[100]*B[66] + W[115]*B[67] + W[130]*B[68] + W[145]*B[69] + W[160]*B[70] + W[175]*B[71] + W[190]*B[72] + W[205]*B[73] + W[220]*B[74]; \
138829a97285SShri Abhyankar     A[71]  = W[11]*B[60] + W[26]*B[61] + W[41]*B[62] + W[56]*B[63] + W[71]*B[64] + W[86]*B[65] + W[101]*B[66] + W[116]*B[67] + W[131]*B[68] + W[146]*B[69] + W[161]*B[70] + W[176]*B[71] + W[191]*B[72] + W[206]*B[73] + W[221]*B[74]; \
138929a97285SShri Abhyankar     A[72]  = W[12]*B[60] + W[27]*B[61] + W[42]*B[62] + W[57]*B[63] + W[72]*B[64] + W[87]*B[65] + W[102]*B[66] + W[117]*B[67] + W[132]*B[68] + W[147]*B[69] + W[162]*B[70] + W[177]*B[71] + W[192]*B[72] + W[207]*B[73] + W[222]*B[74]; \
139029a97285SShri Abhyankar     A[73]  = W[13]*B[60] + W[28]*B[61] + W[43]*B[62] + W[58]*B[63] + W[73]*B[64] + W[88]*B[65] + W[103]*B[66] + W[118]*B[67] + W[133]*B[68] + W[148]*B[69] + W[163]*B[70] + W[178]*B[71] + W[193]*B[72] + W[208]*B[73] + W[223]*B[74]; \
139129a97285SShri Abhyankar     A[74]  = W[14]*B[60] + W[29]*B[61] + W[44]*B[62] + W[59]*B[63] + W[74]*B[64] + W[89]*B[65] + W[104]*B[66] + W[119]*B[67] + W[134]*B[68] + W[149]*B[69] + W[164]*B[70] + W[179]*B[71] + W[194]*B[72] + W[209]*B[73] + W[224]*B[74]; \
139229a97285SShri Abhyankar     A[75]  = W[0]*B[75] + W[15]*B[76] + W[30]*B[77] + W[45]*B[78] + W[60]*B[79] + W[75]*B[80] + W[90]*B[81] + W[105]*B[82] + W[120]*B[83] + W[135]*B[84] + W[150]*B[85] + W[165]*B[86] + W[180]*B[87] + W[195]*B[88] + W[210]*B[89]; \
139329a97285SShri Abhyankar     A[76]  = W[1]*B[75] + W[16]*B[76] + W[31]*B[77] + W[46]*B[78] + W[61]*B[79] + W[76]*B[80] + W[91]*B[81] + W[106]*B[82] + W[121]*B[83] + W[136]*B[84] + W[151]*B[85] + W[166]*B[86] + W[181]*B[87] + W[196]*B[88] + W[211]*B[89]; \
139429a97285SShri Abhyankar     A[77]  = W[2]*B[75] + W[17]*B[76] + W[32]*B[77] + W[47]*B[78] + W[62]*B[79] + W[77]*B[80] + W[92]*B[81] + W[107]*B[82] + W[122]*B[83] + W[137]*B[84] + W[152]*B[85] + W[167]*B[86] + W[182]*B[87] + W[197]*B[88] + W[212]*B[89]; \
139529a97285SShri Abhyankar     A[78]  = W[3]*B[75] + W[18]*B[76] + W[33]*B[77] + W[48]*B[78] + W[63]*B[79] + W[78]*B[80] + W[93]*B[81] + W[108]*B[82] + W[123]*B[83] + W[138]*B[84] + W[153]*B[85] + W[168]*B[86] + W[183]*B[87] + W[198]*B[88] + W[213]*B[89]; \
139629a97285SShri Abhyankar     A[79]  = W[4]*B[75] + W[19]*B[76] + W[34]*B[77] + W[49]*B[78] + W[64]*B[79] + W[79]*B[80] + W[94]*B[81] + W[109]*B[82] + W[124]*B[83] + W[139]*B[84] + W[154]*B[85] + W[169]*B[86] + W[184]*B[87] + W[199]*B[88] + W[214]*B[89]; \
139729a97285SShri Abhyankar     A[80]  = W[5]*B[75] + W[20]*B[76] + W[35]*B[77] + W[50]*B[78] + W[65]*B[79] + W[80]*B[80] + W[95]*B[81] + W[110]*B[82] + W[125]*B[83] + W[140]*B[84] + W[155]*B[85] + W[170]*B[86] + W[185]*B[87] + W[200]*B[88] + W[215]*B[89]; \
139829a97285SShri Abhyankar     A[81]  = W[6]*B[75] + W[21]*B[76] + W[36]*B[77] + W[51]*B[78] + W[66]*B[79] + W[81]*B[80] + W[96]*B[81] + W[111]*B[82] + W[126]*B[83] + W[141]*B[84] + W[156]*B[85] + W[171]*B[86] + W[186]*B[87] + W[201]*B[88] + W[216]*B[89]; \
139929a97285SShri Abhyankar     A[82]  = W[7]*B[75] + W[22]*B[76] + W[37]*B[77] + W[52]*B[78] + W[67]*B[79] + W[82]*B[80] + W[97]*B[81] + W[112]*B[82] + W[127]*B[83] + W[142]*B[84] + W[157]*B[85] + W[172]*B[86] + W[187]*B[87] + W[202]*B[88] + W[217]*B[89]; \
140029a97285SShri Abhyankar     A[83]  = W[8]*B[75] + W[23]*B[76] + W[38]*B[77] + W[53]*B[78] + W[68]*B[79] + W[83]*B[80] + W[98]*B[81] + W[113]*B[82] + W[128]*B[83] + W[143]*B[84] + W[158]*B[85] + W[173]*B[86] + W[188]*B[87] + W[203]*B[88] + W[218]*B[89]; \
140129a97285SShri Abhyankar     A[84]  = W[9]*B[75] + W[24]*B[76] + W[39]*B[77] + W[54]*B[78] + W[69]*B[79] + W[84]*B[80] + W[99]*B[81] + W[114]*B[82] + W[129]*B[83] + W[144]*B[84] + W[159]*B[85] + W[174]*B[86] + W[189]*B[87] + W[204]*B[88] + W[219]*B[89]; \
140229a97285SShri Abhyankar     A[85]  = W[10]*B[75] + W[25]*B[76] + W[40]*B[77] + W[55]*B[78] + W[70]*B[79] + W[85]*B[80] + W[100]*B[81] + W[115]*B[82] + W[130]*B[83] + W[145]*B[84] + W[160]*B[85] + W[175]*B[86] + W[190]*B[87] + W[205]*B[88] + W[220]*B[89]; \
140329a97285SShri Abhyankar     A[86]  = W[11]*B[75] + W[26]*B[76] + W[41]*B[77] + W[56]*B[78] + W[71]*B[79] + W[86]*B[80] + W[101]*B[81] + W[116]*B[82] + W[131]*B[83] + W[146]*B[84] + W[161]*B[85] + W[176]*B[86] + W[191]*B[87] + W[206]*B[88] + W[221]*B[89]; \
140429a97285SShri Abhyankar     A[87]  = W[12]*B[75] + W[27]*B[76] + W[42]*B[77] + W[57]*B[78] + W[72]*B[79] + W[87]*B[80] + W[102]*B[81] + W[117]*B[82] + W[132]*B[83] + W[147]*B[84] + W[162]*B[85] + W[177]*B[86] + W[192]*B[87] + W[207]*B[88] + W[222]*B[89]; \
140529a97285SShri Abhyankar     A[88]  = W[13]*B[75] + W[28]*B[76] + W[43]*B[77] + W[58]*B[78] + W[73]*B[79] + W[88]*B[80] + W[103]*B[81] + W[118]*B[82] + W[133]*B[83] + W[148]*B[84] + W[163]*B[85] + W[178]*B[86] + W[193]*B[87] + W[208]*B[88] + W[223]*B[89]; \
140629a97285SShri Abhyankar     A[89]  = W[14]*B[75] + W[29]*B[76] + W[44]*B[77] + W[59]*B[78] + W[74]*B[79] + W[89]*B[80] + W[104]*B[81] + W[119]*B[82] + W[134]*B[83] + W[149]*B[84] + W[164]*B[85] + W[179]*B[86] + W[194]*B[87] + W[209]*B[88] + W[224]*B[89]; \
140729a97285SShri Abhyankar     A[90]  = W[0]*B[90] + W[15]*B[91] + W[30]*B[92] + W[45]*B[93] + W[60]*B[94] + W[75]*B[95] + W[90]*B[96] + W[105]*B[97] + W[120]*B[98] + W[135]*B[99] + W[150]*B[100] + W[165]*B[101] + W[180]*B[102] + W[195]*B[103] + W[210]*B[104]; \
140829a97285SShri Abhyankar     A[91]  = W[1]*B[90] + W[16]*B[91] + W[31]*B[92] + W[46]*B[93] + W[61]*B[94] + W[76]*B[95] + W[91]*B[96] + W[106]*B[97] + W[121]*B[98] + W[136]*B[99] + W[151]*B[100] + W[166]*B[101] + W[181]*B[102] + W[196]*B[103] + W[211]*B[104]; \
140929a97285SShri Abhyankar     A[92]  = W[2]*B[90] + W[17]*B[91] + W[32]*B[92] + W[47]*B[93] + W[62]*B[94] + W[77]*B[95] + W[92]*B[96] + W[107]*B[97] + W[122]*B[98] + W[137]*B[99] + W[152]*B[100] + W[167]*B[101] + W[182]*B[102] + W[197]*B[103] + W[212]*B[104]; \
141029a97285SShri Abhyankar     A[93]  = W[3]*B[90] + W[18]*B[91] + W[33]*B[92] + W[48]*B[93] + W[63]*B[94] + W[78]*B[95] + W[93]*B[96] + W[108]*B[97] + W[123]*B[98] + W[138]*B[99] + W[153]*B[100] + W[168]*B[101] + W[183]*B[102] + W[198]*B[103] + W[213]*B[104]; \
141129a97285SShri Abhyankar     A[94]  = W[4]*B[90] + W[19]*B[91] + W[34]*B[92] + W[49]*B[93] + W[64]*B[94] + W[79]*B[95] + W[94]*B[96] + W[109]*B[97] + W[124]*B[98] + W[139]*B[99] + W[154]*B[100] + W[169]*B[101] + W[184]*B[102] + W[199]*B[103] + W[214]*B[104]; \
141229a97285SShri Abhyankar     A[95]  = W[5]*B[90] + W[20]*B[91] + W[35]*B[92] + W[50]*B[93] + W[65]*B[94] + W[80]*B[95] + W[95]*B[96] + W[110]*B[97] + W[125]*B[98] + W[140]*B[99] + W[155]*B[100] + W[170]*B[101] + W[185]*B[102] + W[200]*B[103] + W[215]*B[104]; \
141329a97285SShri Abhyankar     A[96]  = W[6]*B[90] + W[21]*B[91] + W[36]*B[92] + W[51]*B[93] + W[66]*B[94] + W[81]*B[95] + W[96]*B[96] + W[111]*B[97] + W[126]*B[98] + W[141]*B[99] + W[156]*B[100] + W[171]*B[101] + W[186]*B[102] + W[201]*B[103] + W[216]*B[104]; \
141429a97285SShri Abhyankar     A[97]  = W[7]*B[90] + W[22]*B[91] + W[37]*B[92] + W[52]*B[93] + W[67]*B[94] + W[82]*B[95] + W[97]*B[96] + W[112]*B[97] + W[127]*B[98] + W[142]*B[99] + W[157]*B[100] + W[172]*B[101] + W[187]*B[102] + W[202]*B[103] + W[217]*B[104]; \
141529a97285SShri Abhyankar     A[98]  = W[8]*B[90] + W[23]*B[91] + W[38]*B[92] + W[53]*B[93] + W[68]*B[94] + W[83]*B[95] + W[98]*B[96] + W[113]*B[97] + W[128]*B[98] + W[143]*B[99] + W[158]*B[100] + W[173]*B[101] + W[188]*B[102] + W[203]*B[103] + W[218]*B[104]; \
141629a97285SShri Abhyankar     A[99]  = W[9]*B[90] + W[24]*B[91] + W[39]*B[92] + W[54]*B[93] + W[69]*B[94] + W[84]*B[95] + W[99]*B[96] + W[114]*B[97] + W[129]*B[98] + W[144]*B[99] + W[159]*B[100] + W[174]*B[101] + W[189]*B[102] + W[204]*B[103] + W[219]*B[104]; \
141729a97285SShri Abhyankar     A[100] = W[10]*B[90] + W[25]*B[91] + W[40]*B[92] + W[55]*B[93] + W[70]*B[94] + W[85]*B[95] + W[100]*B[96] + W[115]*B[97] + W[130]*B[98] + W[145]*B[99] + W[160]*B[100] + W[175]*B[101] + W[190]*B[102] + W[205]*B[103] + W[220]*B[104]; \
141829a97285SShri Abhyankar     A[101] = W[11]*B[90] + W[26]*B[91] + W[41]*B[92] + W[56]*B[93] + W[71]*B[94] + W[86]*B[95] + W[101]*B[96] + W[116]*B[97] + W[131]*B[98] + W[146]*B[99] + W[161]*B[100] + W[176]*B[101] + W[191]*B[102] + W[206]*B[103] + W[221]*B[104]; \
141929a97285SShri Abhyankar     A[102] = W[12]*B[90] + W[27]*B[91] + W[42]*B[92] + W[57]*B[93] + W[72]*B[94] + W[87]*B[95] + W[102]*B[96] + W[117]*B[97] + W[132]*B[98] + W[147]*B[99] + W[162]*B[100] + W[177]*B[101] + W[192]*B[102] + W[207]*B[103] + W[222]*B[104]; \
142029a97285SShri Abhyankar     A[103] = W[13]*B[90] + W[28]*B[91] + W[43]*B[92] + W[58]*B[93] + W[73]*B[94] + W[88]*B[95] + W[103]*B[96] + W[118]*B[97] + W[133]*B[98] + W[148]*B[99] + W[163]*B[100] + W[178]*B[101] + W[193]*B[102] + W[208]*B[103] + W[223]*B[104]; \
142129a97285SShri Abhyankar     A[104] = W[14]*B[90] + W[29]*B[91] + W[44]*B[92] + W[59]*B[93] + W[74]*B[94] + W[89]*B[95] + W[104]*B[96] + W[119]*B[97] + W[134]*B[98] + W[149]*B[99] + W[164]*B[100] + W[179]*B[101] + W[194]*B[102] + W[209]*B[103] + W[224]*B[104]; \
142229a97285SShri Abhyankar     A[105] = W[0]*B[105] + W[15]*B[106] + W[30]*B[107] + W[45]*B[108] + W[60]*B[109] + W[75]*B[110] + W[90]*B[111] + W[105]*B[112] + W[120]*B[113] + W[135]*B[114] + W[150]*B[115] + W[165]*B[116] + W[180]*B[117] + W[195]*B[118] + W[210]*B[119]; \
142329a97285SShri Abhyankar     A[106] = W[1]*B[105] + W[16]*B[106] + W[31]*B[107] + W[46]*B[108] + W[61]*B[109] + W[76]*B[110] + W[91]*B[111] + W[106]*B[112] + W[121]*B[113] + W[136]*B[114] + W[151]*B[115] + W[166]*B[116] + W[181]*B[117] + W[196]*B[118] + W[211]*B[119]; \
142429a97285SShri Abhyankar     A[107] = W[2]*B[105] + W[17]*B[106] + W[32]*B[107] + W[47]*B[108] + W[62]*B[109] + W[77]*B[110] + W[92]*B[111] + W[107]*B[112] + W[122]*B[113] + W[137]*B[114] + W[152]*B[115] + W[167]*B[116] + W[182]*B[117] + W[197]*B[118] + W[212]*B[119]; \
142529a97285SShri Abhyankar     A[108] = W[3]*B[105] + W[18]*B[106] + W[33]*B[107] + W[48]*B[108] + W[63]*B[109] + W[78]*B[110] + W[93]*B[111] + W[108]*B[112] + W[123]*B[113] + W[138]*B[114] + W[153]*B[115] + W[168]*B[116] + W[183]*B[117] + W[198]*B[118] + W[213]*B[119]; \
142629a97285SShri Abhyankar     A[109] = W[4]*B[105] + W[19]*B[106] + W[34]*B[107] + W[49]*B[108] + W[64]*B[109] + W[79]*B[110] + W[94]*B[111] + W[109]*B[112] + W[124]*B[113] + W[139]*B[114] + W[154]*B[115] + W[169]*B[116] + W[184]*B[117] + W[199]*B[118] + W[214]*B[119]; \
142729a97285SShri Abhyankar     A[110] = W[5]*B[105] + W[20]*B[106] + W[35]*B[107] + W[50]*B[108] + W[65]*B[109] + W[80]*B[110] + W[95]*B[111] + W[110]*B[112] + W[125]*B[113] + W[140]*B[114] + W[155]*B[115] + W[170]*B[116] + W[185]*B[117] + W[200]*B[118] + W[215]*B[119]; \
142829a97285SShri Abhyankar     A[111] = W[6]*B[105] + W[21]*B[106] + W[36]*B[107] + W[51]*B[108] + W[66]*B[109] + W[81]*B[110] + W[96]*B[111] + W[111]*B[112] + W[126]*B[113] + W[141]*B[114] + W[156]*B[115] + W[171]*B[116] + W[186]*B[117] + W[201]*B[118] + W[216]*B[119]; \
142929a97285SShri Abhyankar     A[112] = W[7]*B[105] + W[22]*B[106] + W[37]*B[107] + W[52]*B[108] + W[67]*B[109] + W[82]*B[110] + W[97]*B[111] + W[112]*B[112] + W[127]*B[113] + W[142]*B[114] + W[157]*B[115] + W[172]*B[116] + W[187]*B[117] + W[202]*B[118] + W[217]*B[119]; \
143029a97285SShri Abhyankar     A[113] = W[8]*B[105] + W[23]*B[106] + W[38]*B[107] + W[53]*B[108] + W[68]*B[109] + W[83]*B[110] + W[98]*B[111] + W[113]*B[112] + W[128]*B[113] + W[143]*B[114] + W[158]*B[115] + W[173]*B[116] + W[188]*B[117] + W[203]*B[118] + W[218]*B[119]; \
143129a97285SShri Abhyankar     A[114] = W[9]*B[105] + W[24]*B[106] + W[39]*B[107] + W[54]*B[108] + W[69]*B[109] + W[84]*B[110] + W[99]*B[111] + W[114]*B[112] + W[129]*B[113] + W[144]*B[114] + W[159]*B[115] + W[174]*B[116] + W[189]*B[117] + W[204]*B[118] + W[219]*B[119]; \
143229a97285SShri Abhyankar     A[115] = W[10]*B[105] + W[25]*B[106] + W[40]*B[107] + W[55]*B[108] + W[70]*B[109] + W[85]*B[110] + W[100]*B[111] + W[115]*B[112] + W[130]*B[113] + W[145]*B[114] + W[160]*B[115] + W[175]*B[116] + W[190]*B[117] + W[205]*B[118] + W[220]*B[119]; \
143329a97285SShri Abhyankar     A[116] = W[11]*B[105] + W[26]*B[106] + W[41]*B[107] + W[56]*B[108] + W[71]*B[109] + W[86]*B[110] + W[101]*B[111] + W[116]*B[112] + W[131]*B[113] + W[146]*B[114] + W[161]*B[115] + W[176]*B[116] + W[191]*B[117] + W[206]*B[118] + W[221]*B[119]; \
143429a97285SShri Abhyankar     A[117] = W[12]*B[105] + W[27]*B[106] + W[42]*B[107] + W[57]*B[108] + W[72]*B[109] + W[87]*B[110] + W[102]*B[111] + W[117]*B[112] + W[132]*B[113] + W[147]*B[114] + W[162]*B[115] + W[177]*B[116] + W[192]*B[117] + W[207]*B[118] + W[222]*B[119]; \
143529a97285SShri Abhyankar     A[118] = W[13]*B[105] + W[28]*B[106] + W[43]*B[107] + W[58]*B[108] + W[73]*B[109] + W[88]*B[110] + W[103]*B[111] + W[118]*B[112] + W[133]*B[113] + W[148]*B[114] + W[163]*B[115] + W[178]*B[116] + W[193]*B[117] + W[208]*B[118] + W[223]*B[119]; \
143629a97285SShri Abhyankar     A[119] = W[14]*B[105] + W[29]*B[106] + W[44]*B[107] + W[59]*B[108] + W[74]*B[109] + W[89]*B[110] + W[104]*B[111] + W[119]*B[112] + W[134]*B[113] + W[149]*B[114] + W[164]*B[115] + W[179]*B[116] + W[194]*B[117] + W[209]*B[118] + W[224]*B[119]; \
143729a97285SShri Abhyankar     A[120] = W[0]*B[120] + W[15]*B[121] + W[30]*B[122] + W[45]*B[123] + W[60]*B[124] + W[75]*B[125] + W[90]*B[126] + W[105]*B[127] + W[120]*B[128] + W[135]*B[129] + W[150]*B[130] + W[165]*B[131] + W[180]*B[132] + W[195]*B[133] + W[210]*B[134]; \
143829a97285SShri Abhyankar     A[121] = W[1]*B[120] + W[16]*B[121] + W[31]*B[122] + W[46]*B[123] + W[61]*B[124] + W[76]*B[125] + W[91]*B[126] + W[106]*B[127] + W[121]*B[128] + W[136]*B[129] + W[151]*B[130] + W[166]*B[131] + W[181]*B[132] + W[196]*B[133] + W[211]*B[134]; \
143929a97285SShri Abhyankar     A[122] = W[2]*B[120] + W[17]*B[121] + W[32]*B[122] + W[47]*B[123] + W[62]*B[124] + W[77]*B[125] + W[92]*B[126] + W[107]*B[127] + W[122]*B[128] + W[137]*B[129] + W[152]*B[130] + W[167]*B[131] + W[182]*B[132] + W[197]*B[133] + W[212]*B[134]; \
144029a97285SShri Abhyankar     A[123] = W[3]*B[120] + W[18]*B[121] + W[33]*B[122] + W[48]*B[123] + W[63]*B[124] + W[78]*B[125] + W[93]*B[126] + W[108]*B[127] + W[123]*B[128] + W[138]*B[129] + W[153]*B[130] + W[168]*B[131] + W[183]*B[132] + W[198]*B[133] + W[213]*B[134]; \
144129a97285SShri Abhyankar     A[124] = W[4]*B[120] + W[19]*B[121] + W[34]*B[122] + W[49]*B[123] + W[64]*B[124] + W[79]*B[125] + W[94]*B[126] + W[109]*B[127] + W[124]*B[128] + W[139]*B[129] + W[154]*B[130] + W[169]*B[131] + W[184]*B[132] + W[199]*B[133] + W[214]*B[134]; \
144229a97285SShri Abhyankar     A[125] = W[5]*B[120] + W[20]*B[121] + W[35]*B[122] + W[50]*B[123] + W[65]*B[124] + W[80]*B[125] + W[95]*B[126] + W[110]*B[127] + W[125]*B[128] + W[140]*B[129] + W[155]*B[130] + W[170]*B[131] + W[185]*B[132] + W[200]*B[133] + W[215]*B[134]; \
144329a97285SShri Abhyankar     A[126] = W[6]*B[120] + W[21]*B[121] + W[36]*B[122] + W[51]*B[123] + W[66]*B[124] + W[81]*B[125] + W[96]*B[126] + W[111]*B[127] + W[126]*B[128] + W[141]*B[129] + W[156]*B[130] + W[171]*B[131] + W[186]*B[132] + W[201]*B[133] + W[216]*B[134]; \
144429a97285SShri Abhyankar     A[127] = W[7]*B[120] + W[22]*B[121] + W[37]*B[122] + W[52]*B[123] + W[67]*B[124] + W[82]*B[125] + W[97]*B[126] + W[112]*B[127] + W[127]*B[128] + W[142]*B[129] + W[157]*B[130] + W[172]*B[131] + W[187]*B[132] + W[202]*B[133] + W[217]*B[134]; \
144529a97285SShri Abhyankar     A[128] = W[8]*B[120] + W[23]*B[121] + W[38]*B[122] + W[53]*B[123] + W[68]*B[124] + W[83]*B[125] + W[98]*B[126] + W[113]*B[127] + W[128]*B[128] + W[143]*B[129] + W[158]*B[130] + W[173]*B[131] + W[188]*B[132] + W[203]*B[133] + W[218]*B[134]; \
144629a97285SShri Abhyankar     A[129] = W[9]*B[120] + W[24]*B[121] + W[39]*B[122] + W[54]*B[123] + W[69]*B[124] + W[84]*B[125] + W[99]*B[126] + W[114]*B[127] + W[129]*B[128] + W[144]*B[129] + W[159]*B[130] + W[174]*B[131] + W[189]*B[132] + W[204]*B[133] + W[219]*B[134]; \
144729a97285SShri Abhyankar     A[130] = W[10]*B[120] + W[25]*B[121] + W[40]*B[122] + W[55]*B[123] + W[70]*B[124] + W[85]*B[125] + W[100]*B[126] + W[115]*B[127] + W[130]*B[128] + W[145]*B[129] + W[160]*B[130] + W[175]*B[131] + W[190]*B[132] + W[205]*B[133] + W[220]*B[134]; \
144829a97285SShri Abhyankar     A[131] = W[11]*B[120] + W[26]*B[121] + W[41]*B[122] + W[56]*B[123] + W[71]*B[124] + W[86]*B[125] + W[101]*B[126] + W[116]*B[127] + W[131]*B[128] + W[146]*B[129] + W[161]*B[130] + W[176]*B[131] + W[191]*B[132] + W[206]*B[133] + W[221]*B[134]; \
144929a97285SShri Abhyankar     A[132] = W[12]*B[120] + W[27]*B[121] + W[42]*B[122] + W[57]*B[123] + W[72]*B[124] + W[87]*B[125] + W[102]*B[126] + W[117]*B[127] + W[132]*B[128] + W[147]*B[129] + W[162]*B[130] + W[177]*B[131] + W[192]*B[132] + W[207]*B[133] + W[222]*B[134]; \
145029a97285SShri Abhyankar     A[133] = W[13]*B[120] + W[28]*B[121] + W[43]*B[122] + W[58]*B[123] + W[73]*B[124] + W[88]*B[125] + W[103]*B[126] + W[118]*B[127] + W[133]*B[128] + W[148]*B[129] + W[163]*B[130] + W[178]*B[131] + W[193]*B[132] + W[208]*B[133] + W[223]*B[134]; \
145129a97285SShri Abhyankar     A[134] = W[14]*B[120] + W[29]*B[121] + W[44]*B[122] + W[59]*B[123] + W[74]*B[124] + W[89]*B[125] + W[104]*B[126] + W[119]*B[127] + W[134]*B[128] + W[149]*B[129] + W[164]*B[130] + W[179]*B[131] + W[194]*B[132] + W[209]*B[133] + W[224]*B[134]; \
145229a97285SShri Abhyankar     A[135] = W[0]*B[135] + W[15]*B[136] + W[30]*B[137] + W[45]*B[138] + W[60]*B[139] + W[75]*B[140] + W[90]*B[141] + W[105]*B[142] + W[120]*B[143] + W[135]*B[144] + W[150]*B[145] + W[165]*B[146] + W[180]*B[147] + W[195]*B[148] + W[210]*B[149]; \
145329a97285SShri Abhyankar     A[136] = W[1]*B[135] + W[16]*B[136] + W[31]*B[137] + W[46]*B[138] + W[61]*B[139] + W[76]*B[140] + W[91]*B[141] + W[106]*B[142] + W[121]*B[143] + W[136]*B[144] + W[151]*B[145] + W[166]*B[146] + W[181]*B[147] + W[196]*B[148] + W[211]*B[149]; \
145429a97285SShri Abhyankar     A[137] = W[2]*B[135] + W[17]*B[136] + W[32]*B[137] + W[47]*B[138] + W[62]*B[139] + W[77]*B[140] + W[92]*B[141] + W[107]*B[142] + W[122]*B[143] + W[137]*B[144] + W[152]*B[145] + W[167]*B[146] + W[182]*B[147] + W[197]*B[148] + W[212]*B[149]; \
145529a97285SShri Abhyankar     A[138] = W[3]*B[135] + W[18]*B[136] + W[33]*B[137] + W[48]*B[138] + W[63]*B[139] + W[78]*B[140] + W[93]*B[141] + W[108]*B[142] + W[123]*B[143] + W[138]*B[144] + W[153]*B[145] + W[168]*B[146] + W[183]*B[147] + W[198]*B[148] + W[213]*B[149]; \
145629a97285SShri Abhyankar     A[139] = W[4]*B[135] + W[19]*B[136] + W[34]*B[137] + W[49]*B[138] + W[64]*B[139] + W[79]*B[140] + W[94]*B[141] + W[109]*B[142] + W[124]*B[143] + W[139]*B[144] + W[154]*B[145] + W[169]*B[146] + W[184]*B[147] + W[199]*B[148] + W[214]*B[149]; \
145729a97285SShri Abhyankar     A[140] = W[5]*B[135] + W[20]*B[136] + W[35]*B[137] + W[50]*B[138] + W[65]*B[139] + W[80]*B[140] + W[95]*B[141] + W[110]*B[142] + W[125]*B[143] + W[140]*B[144] + W[155]*B[145] + W[170]*B[146] + W[185]*B[147] + W[200]*B[148] + W[215]*B[149]; \
145829a97285SShri Abhyankar     A[141] = W[6]*B[135] + W[21]*B[136] + W[36]*B[137] + W[51]*B[138] + W[66]*B[139] + W[81]*B[140] + W[96]*B[141] + W[111]*B[142] + W[126]*B[143] + W[141]*B[144] + W[156]*B[145] + W[171]*B[146] + W[186]*B[147] + W[201]*B[148] + W[216]*B[149]; \
145929a97285SShri Abhyankar     A[142] = W[7]*B[135] + W[22]*B[136] + W[37]*B[137] + W[52]*B[138] + W[67]*B[139] + W[82]*B[140] + W[97]*B[141] + W[112]*B[142] + W[127]*B[143] + W[142]*B[144] + W[157]*B[145] + W[172]*B[146] + W[187]*B[147] + W[202]*B[148] + W[217]*B[149]; \
146029a97285SShri Abhyankar     A[143] = W[8]*B[135] + W[23]*B[136] + W[38]*B[137] + W[53]*B[138] + W[68]*B[139] + W[83]*B[140] + W[98]*B[141] + W[113]*B[142] + W[128]*B[143] + W[143]*B[144] + W[158]*B[145] + W[173]*B[146] + W[188]*B[147] + W[203]*B[148] + W[218]*B[149]; \
146129a97285SShri Abhyankar     A[144] = W[9]*B[135] + W[24]*B[136] + W[39]*B[137] + W[54]*B[138] + W[69]*B[139] + W[84]*B[140] + W[99]*B[141] + W[114]*B[142] + W[129]*B[143] + W[144]*B[144] + W[159]*B[145] + W[174]*B[146] + W[189]*B[147] + W[204]*B[148] + W[219]*B[149]; \
146229a97285SShri Abhyankar     A[145] = W[10]*B[135] + W[25]*B[136] + W[40]*B[137] + W[55]*B[138] + W[70]*B[139] + W[85]*B[140] + W[100]*B[141] + W[115]*B[142] + W[130]*B[143] + W[145]*B[144] + W[160]*B[145] + W[175]*B[146] + W[190]*B[147] + W[205]*B[148] + W[220]*B[149]; \
146329a97285SShri Abhyankar     A[146] = W[11]*B[135] + W[26]*B[136] + W[41]*B[137] + W[56]*B[138] + W[71]*B[139] + W[86]*B[140] + W[101]*B[141] + W[116]*B[142] + W[131]*B[143] + W[146]*B[144] + W[161]*B[145] + W[176]*B[146] + W[191]*B[147] + W[206]*B[148] + W[221]*B[149]; \
146429a97285SShri Abhyankar     A[147] = W[12]*B[135] + W[27]*B[136] + W[42]*B[137] + W[57]*B[138] + W[72]*B[139] + W[87]*B[140] + W[102]*B[141] + W[117]*B[142] + W[132]*B[143] + W[147]*B[144] + W[162]*B[145] + W[177]*B[146] + W[192]*B[147] + W[207]*B[148] + W[222]*B[149]; \
146529a97285SShri Abhyankar     A[148] = W[13]*B[135] + W[28]*B[136] + W[43]*B[137] + W[58]*B[138] + W[73]*B[139] + W[88]*B[140] + W[103]*B[141] + W[118]*B[142] + W[133]*B[143] + W[148]*B[144] + W[163]*B[145] + W[178]*B[146] + W[193]*B[147] + W[208]*B[148] + W[223]*B[149]; \
146629a97285SShri Abhyankar     A[149] = W[14]*B[135] + W[29]*B[136] + W[44]*B[137] + W[59]*B[138] + W[74]*B[139] + W[89]*B[140] + W[104]*B[141] + W[119]*B[142] + W[134]*B[143] + W[149]*B[144] + W[164]*B[145] + W[179]*B[146] + W[194]*B[147] + W[209]*B[148] + W[224]*B[149]; \
146729a97285SShri Abhyankar     A[150] = W[0]*B[150] + W[15]*B[151] + W[30]*B[152] + W[45]*B[153] + W[60]*B[154] + W[75]*B[155] + W[90]*B[156] + W[105]*B[157] + W[120]*B[158] + W[135]*B[159] + W[150]*B[160] + W[165]*B[161] + W[180]*B[162] + W[195]*B[163] + W[210]*B[164]; \
146829a97285SShri Abhyankar     A[151] = W[1]*B[150] + W[16]*B[151] + W[31]*B[152] + W[46]*B[153] + W[61]*B[154] + W[76]*B[155] + W[91]*B[156] + W[106]*B[157] + W[121]*B[158] + W[136]*B[159] + W[151]*B[160] + W[166]*B[161] + W[181]*B[162] + W[196]*B[163] + W[211]*B[164]; \
146929a97285SShri Abhyankar     A[152] = W[2]*B[150] + W[17]*B[151] + W[32]*B[152] + W[47]*B[153] + W[62]*B[154] + W[77]*B[155] + W[92]*B[156] + W[107]*B[157] + W[122]*B[158] + W[137]*B[159] + W[152]*B[160] + W[167]*B[161] + W[182]*B[162] + W[197]*B[163] + W[212]*B[164]; \
147029a97285SShri Abhyankar     A[153] = W[3]*B[150] + W[18]*B[151] + W[33]*B[152] + W[48]*B[153] + W[63]*B[154] + W[78]*B[155] + W[93]*B[156] + W[108]*B[157] + W[123]*B[158] + W[138]*B[159] + W[153]*B[160] + W[168]*B[161] + W[183]*B[162] + W[198]*B[163] + W[213]*B[164]; \
147129a97285SShri Abhyankar     A[154] = W[4]*B[150] + W[19]*B[151] + W[34]*B[152] + W[49]*B[153] + W[64]*B[154] + W[79]*B[155] + W[94]*B[156] + W[109]*B[157] + W[124]*B[158] + W[139]*B[159] + W[154]*B[160] + W[169]*B[161] + W[184]*B[162] + W[199]*B[163] + W[214]*B[164]; \
147229a97285SShri Abhyankar     A[155] = W[5]*B[150] + W[20]*B[151] + W[35]*B[152] + W[50]*B[153] + W[65]*B[154] + W[80]*B[155] + W[95]*B[156] + W[110]*B[157] + W[125]*B[158] + W[140]*B[159] + W[155]*B[160] + W[170]*B[161] + W[185]*B[162] + W[200]*B[163] + W[215]*B[164]; \
147329a97285SShri Abhyankar     A[156] = W[6]*B[150] + W[21]*B[151] + W[36]*B[152] + W[51]*B[153] + W[66]*B[154] + W[81]*B[155] + W[96]*B[156] + W[111]*B[157] + W[126]*B[158] + W[141]*B[159] + W[156]*B[160] + W[171]*B[161] + W[186]*B[162] + W[201]*B[163] + W[216]*B[164]; \
147429a97285SShri Abhyankar     A[157] = W[7]*B[150] + W[22]*B[151] + W[37]*B[152] + W[52]*B[153] + W[67]*B[154] + W[82]*B[155] + W[97]*B[156] + W[112]*B[157] + W[127]*B[158] + W[142]*B[159] + W[157]*B[160] + W[172]*B[161] + W[187]*B[162] + W[202]*B[163] + W[217]*B[164]; \
147529a97285SShri Abhyankar     A[158] = W[8]*B[150] + W[23]*B[151] + W[38]*B[152] + W[53]*B[153] + W[68]*B[154] + W[83]*B[155] + W[98]*B[156] + W[113]*B[157] + W[128]*B[158] + W[143]*B[159] + W[158]*B[160] + W[173]*B[161] + W[188]*B[162] + W[203]*B[163] + W[218]*B[164]; \
147629a97285SShri Abhyankar     A[159] = W[9]*B[150] + W[24]*B[151] + W[39]*B[152] + W[54]*B[153] + W[69]*B[154] + W[84]*B[155] + W[99]*B[156] + W[114]*B[157] + W[129]*B[158] + W[144]*B[159] + W[159]*B[160] + W[174]*B[161] + W[189]*B[162] + W[204]*B[163] + W[219]*B[164]; \
147729a97285SShri Abhyankar     A[160] = W[10]*B[150] + W[25]*B[151] + W[40]*B[152] + W[55]*B[153] + W[70]*B[154] + W[85]*B[155] + W[100]*B[156] + W[115]*B[157] + W[130]*B[158] + W[145]*B[159] + W[160]*B[160] + W[175]*B[161] + W[190]*B[162] + W[205]*B[163] + W[220]*B[164]; \
147829a97285SShri Abhyankar     A[161] = W[11]*B[150] + W[26]*B[151] + W[41]*B[152] + W[56]*B[153] + W[71]*B[154] + W[86]*B[155] + W[101]*B[156] + W[116]*B[157] + W[131]*B[158] + W[146]*B[159] + W[161]*B[160] + W[176]*B[161] + W[191]*B[162] + W[206]*B[163] + W[221]*B[164]; \
147929a97285SShri Abhyankar     A[162] = W[12]*B[150] + W[27]*B[151] + W[42]*B[152] + W[57]*B[153] + W[72]*B[154] + W[87]*B[155] + W[102]*B[156] + W[117]*B[157] + W[132]*B[158] + W[147]*B[159] + W[162]*B[160] + W[177]*B[161] + W[192]*B[162] + W[207]*B[163] + W[222]*B[164]; \
148029a97285SShri Abhyankar     A[163] = W[13]*B[150] + W[28]*B[151] + W[43]*B[152] + W[58]*B[153] + W[73]*B[154] + W[88]*B[155] + W[103]*B[156] + W[118]*B[157] + W[133]*B[158] + W[148]*B[159] + W[163]*B[160] + W[178]*B[161] + W[193]*B[162] + W[208]*B[163] + W[223]*B[164]; \
148129a97285SShri Abhyankar     A[164] = W[14]*B[150] + W[29]*B[151] + W[44]*B[152] + W[59]*B[153] + W[74]*B[154] + W[89]*B[155] + W[104]*B[156] + W[119]*B[157] + W[134]*B[158] + W[149]*B[159] + W[164]*B[160] + W[179]*B[161] + W[194]*B[162] + W[209]*B[163] + W[224]*B[164]; \
148229a97285SShri Abhyankar     A[165] = W[0]*B[165] + W[15]*B[166] + W[30]*B[167] + W[45]*B[168] + W[60]*B[169] + W[75]*B[170] + W[90]*B[171] + W[105]*B[172] + W[120]*B[173] + W[135]*B[174] + W[150]*B[175] + W[165]*B[176] + W[180]*B[177] + W[195]*B[178] + W[210]*B[179]; \
148329a97285SShri Abhyankar     A[166] = W[1]*B[165] + W[16]*B[166] + W[31]*B[167] + W[46]*B[168] + W[61]*B[169] + W[76]*B[170] + W[91]*B[171] + W[106]*B[172] + W[121]*B[173] + W[136]*B[174] + W[151]*B[175] + W[166]*B[176] + W[181]*B[177] + W[196]*B[178] + W[211]*B[179]; \
148429a97285SShri Abhyankar     A[167] = W[2]*B[165] + W[17]*B[166] + W[32]*B[167] + W[47]*B[168] + W[62]*B[169] + W[77]*B[170] + W[92]*B[171] + W[107]*B[172] + W[122]*B[173] + W[137]*B[174] + W[152]*B[175] + W[167]*B[176] + W[182]*B[177] + W[197]*B[178] + W[212]*B[179]; \
148529a97285SShri Abhyankar     A[168] = W[3]*B[165] + W[18]*B[166] + W[33]*B[167] + W[48]*B[168] + W[63]*B[169] + W[78]*B[170] + W[93]*B[171] + W[108]*B[172] + W[123]*B[173] + W[138]*B[174] + W[153]*B[175] + W[168]*B[176] + W[183]*B[177] + W[198]*B[178] + W[213]*B[179]; \
148629a97285SShri Abhyankar     A[169] = W[4]*B[165] + W[19]*B[166] + W[34]*B[167] + W[49]*B[168] + W[64]*B[169] + W[79]*B[170] + W[94]*B[171] + W[109]*B[172] + W[124]*B[173] + W[139]*B[174] + W[154]*B[175] + W[169]*B[176] + W[184]*B[177] + W[199]*B[178] + W[214]*B[179]; \
148729a97285SShri Abhyankar     A[170] = W[5]*B[165] + W[20]*B[166] + W[35]*B[167] + W[50]*B[168] + W[65]*B[169] + W[80]*B[170] + W[95]*B[171] + W[110]*B[172] + W[125]*B[173] + W[140]*B[174] + W[155]*B[175] + W[170]*B[176] + W[185]*B[177] + W[200]*B[178] + W[215]*B[179]; \
148829a97285SShri Abhyankar     A[171] = W[6]*B[165] + W[21]*B[166] + W[36]*B[167] + W[51]*B[168] + W[66]*B[169] + W[81]*B[170] + W[96]*B[171] + W[111]*B[172] + W[126]*B[173] + W[141]*B[174] + W[156]*B[175] + W[171]*B[176] + W[186]*B[177] + W[201]*B[178] + W[216]*B[179]; \
148929a97285SShri Abhyankar     A[172] = W[7]*B[165] + W[22]*B[166] + W[37]*B[167] + W[52]*B[168] + W[67]*B[169] + W[82]*B[170] + W[97]*B[171] + W[112]*B[172] + W[127]*B[173] + W[142]*B[174] + W[157]*B[175] + W[172]*B[176] + W[187]*B[177] + W[202]*B[178] + W[217]*B[179]; \
149029a97285SShri Abhyankar     A[173] = W[8]*B[165] + W[23]*B[166] + W[38]*B[167] + W[53]*B[168] + W[68]*B[169] + W[83]*B[170] + W[98]*B[171] + W[113]*B[172] + W[128]*B[173] + W[143]*B[174] + W[158]*B[175] + W[173]*B[176] + W[188]*B[177] + W[203]*B[178] + W[218]*B[179]; \
149129a97285SShri Abhyankar     A[174] = W[9]*B[165] + W[24]*B[166] + W[39]*B[167] + W[54]*B[168] + W[69]*B[169] + W[84]*B[170] + W[99]*B[171] + W[114]*B[172] + W[129]*B[173] + W[144]*B[174] + W[159]*B[175] + W[174]*B[176] + W[189]*B[177] + W[204]*B[178] + W[219]*B[179]; \
149229a97285SShri Abhyankar     A[175] = W[10]*B[165] + W[25]*B[166] + W[40]*B[167] + W[55]*B[168] + W[70]*B[169] + W[85]*B[170] + W[100]*B[171] + W[115]*B[172] + W[130]*B[173] + W[145]*B[174] + W[160]*B[175] + W[175]*B[176] + W[190]*B[177] + W[205]*B[178] + W[220]*B[179]; \
149329a97285SShri Abhyankar     A[176] = W[11]*B[165] + W[26]*B[166] + W[41]*B[167] + W[56]*B[168] + W[71]*B[169] + W[86]*B[170] + W[101]*B[171] + W[116]*B[172] + W[131]*B[173] + W[146]*B[174] + W[161]*B[175] + W[176]*B[176] + W[191]*B[177] + W[206]*B[178] + W[221]*B[179]; \
149429a97285SShri Abhyankar     A[177] = W[12]*B[165] + W[27]*B[166] + W[42]*B[167] + W[57]*B[168] + W[72]*B[169] + W[87]*B[170] + W[102]*B[171] + W[117]*B[172] + W[132]*B[173] + W[147]*B[174] + W[162]*B[175] + W[177]*B[176] + W[192]*B[177] + W[207]*B[178] + W[222]*B[179]; \
149529a97285SShri Abhyankar     A[178] = W[13]*B[165] + W[28]*B[166] + W[43]*B[167] + W[58]*B[168] + W[73]*B[169] + W[88]*B[170] + W[103]*B[171] + W[118]*B[172] + W[133]*B[173] + W[148]*B[174] + W[163]*B[175] + W[178]*B[176] + W[193]*B[177] + W[208]*B[178] + W[223]*B[179]; \
149629a97285SShri Abhyankar     A[179] = W[14]*B[165] + W[29]*B[166] + W[44]*B[167] + W[59]*B[168] + W[74]*B[169] + W[89]*B[170] + W[104]*B[171] + W[119]*B[172] + W[134]*B[173] + W[149]*B[174] + W[164]*B[175] + W[179]*B[176] + W[194]*B[177] + W[209]*B[178] + W[224]*B[179]; \
149729a97285SShri Abhyankar     A[180] = W[0]*B[180] + W[15]*B[181] + W[30]*B[182] + W[45]*B[183] + W[60]*B[184] + W[75]*B[185] + W[90]*B[186] + W[105]*B[187] + W[120]*B[188] + W[135]*B[189] + W[150]*B[190] + W[165]*B[191] + W[180]*B[192] + W[195]*B[193] + W[210]*B[194]; \
149829a97285SShri Abhyankar     A[181] = W[1]*B[180] + W[16]*B[181] + W[31]*B[182] + W[46]*B[183] + W[61]*B[184] + W[76]*B[185] + W[91]*B[186] + W[106]*B[187] + W[121]*B[188] + W[136]*B[189] + W[151]*B[190] + W[166]*B[191] + W[181]*B[192] + W[196]*B[193] + W[211]*B[194]; \
149929a97285SShri Abhyankar     A[182] = W[2]*B[180] + W[17]*B[181] + W[32]*B[182] + W[47]*B[183] + W[62]*B[184] + W[77]*B[185] + W[92]*B[186] + W[107]*B[187] + W[122]*B[188] + W[137]*B[189] + W[152]*B[190] + W[167]*B[191] + W[182]*B[192] + W[197]*B[193] + W[212]*B[194]; \
150029a97285SShri Abhyankar     A[183] = W[3]*B[180] + W[18]*B[181] + W[33]*B[182] + W[48]*B[183] + W[63]*B[184] + W[78]*B[185] + W[93]*B[186] + W[108]*B[187] + W[123]*B[188] + W[138]*B[189] + W[153]*B[190] + W[168]*B[191] + W[183]*B[192] + W[198]*B[193] + W[213]*B[194]; \
150129a97285SShri Abhyankar     A[184] = W[4]*B[180] + W[19]*B[181] + W[34]*B[182] + W[49]*B[183] + W[64]*B[184] + W[79]*B[185] + W[94]*B[186] + W[109]*B[187] + W[124]*B[188] + W[139]*B[189] + W[154]*B[190] + W[169]*B[191] + W[184]*B[192] + W[199]*B[193] + W[214]*B[194]; \
150229a97285SShri Abhyankar     A[185] = W[5]*B[180] + W[20]*B[181] + W[35]*B[182] + W[50]*B[183] + W[65]*B[184] + W[80]*B[185] + W[95]*B[186] + W[110]*B[187] + W[125]*B[188] + W[140]*B[189] + W[155]*B[190] + W[170]*B[191] + W[185]*B[192] + W[200]*B[193] + W[215]*B[194]; \
150329a97285SShri Abhyankar     A[186] = W[6]*B[180] + W[21]*B[181] + W[36]*B[182] + W[51]*B[183] + W[66]*B[184] + W[81]*B[185] + W[96]*B[186] + W[111]*B[187] + W[126]*B[188] + W[141]*B[189] + W[156]*B[190] + W[171]*B[191] + W[186]*B[192] + W[201]*B[193] + W[216]*B[194]; \
150429a97285SShri Abhyankar     A[187] = W[7]*B[180] + W[22]*B[181] + W[37]*B[182] + W[52]*B[183] + W[67]*B[184] + W[82]*B[185] + W[97]*B[186] + W[112]*B[187] + W[127]*B[188] + W[142]*B[189] + W[157]*B[190] + W[172]*B[191] + W[187]*B[192] + W[202]*B[193] + W[217]*B[194]; \
150529a97285SShri Abhyankar     A[188] = W[8]*B[180] + W[23]*B[181] + W[38]*B[182] + W[53]*B[183] + W[68]*B[184] + W[83]*B[185] + W[98]*B[186] + W[113]*B[187] + W[128]*B[188] + W[143]*B[189] + W[158]*B[190] + W[173]*B[191] + W[188]*B[192] + W[203]*B[193] + W[218]*B[194]; \
150629a97285SShri Abhyankar     A[189] = W[9]*B[180] + W[24]*B[181] + W[39]*B[182] + W[54]*B[183] + W[69]*B[184] + W[84]*B[185] + W[99]*B[186] + W[114]*B[187] + W[129]*B[188] + W[144]*B[189] + W[159]*B[190] + W[174]*B[191] + W[189]*B[192] + W[204]*B[193] + W[219]*B[194]; \
150729a97285SShri Abhyankar     A[190] = W[10]*B[180] + W[25]*B[181] + W[40]*B[182] + W[55]*B[183] + W[70]*B[184] + W[85]*B[185] + W[100]*B[186] + W[115]*B[187] + W[130]*B[188] + W[145]*B[189] + W[160]*B[190] + W[175]*B[191] + W[190]*B[192] + W[205]*B[193] + W[220]*B[194]; \
150829a97285SShri Abhyankar     A[191] = W[11]*B[180] + W[26]*B[181] + W[41]*B[182] + W[56]*B[183] + W[71]*B[184] + W[86]*B[185] + W[101]*B[186] + W[116]*B[187] + W[131]*B[188] + W[146]*B[189] + W[161]*B[190] + W[176]*B[191] + W[191]*B[192] + W[206]*B[193] + W[221]*B[194]; \
150929a97285SShri Abhyankar     A[192] = W[12]*B[180] + W[27]*B[181] + W[42]*B[182] + W[57]*B[183] + W[72]*B[184] + W[87]*B[185] + W[102]*B[186] + W[117]*B[187] + W[132]*B[188] + W[147]*B[189] + W[162]*B[190] + W[177]*B[191] + W[192]*B[192] + W[207]*B[193] + W[222]*B[194]; \
151029a97285SShri Abhyankar     A[193] = W[13]*B[180] + W[28]*B[181] + W[43]*B[182] + W[58]*B[183] + W[73]*B[184] + W[88]*B[185] + W[103]*B[186] + W[118]*B[187] + W[133]*B[188] + W[148]*B[189] + W[163]*B[190] + W[178]*B[191] + W[193]*B[192] + W[208]*B[193] + W[223]*B[194]; \
151129a97285SShri Abhyankar     A[194] = W[14]*B[180] + W[29]*B[181] + W[44]*B[182] + W[59]*B[183] + W[74]*B[184] + W[89]*B[185] + W[104]*B[186] + W[119]*B[187] + W[134]*B[188] + W[149]*B[189] + W[164]*B[190] + W[179]*B[191] + W[194]*B[192] + W[209]*B[193] + W[224]*B[194]; \
151229a97285SShri Abhyankar     A[195] = W[0]*B[195] + W[15]*B[196] + W[30]*B[197] + W[45]*B[198] + W[60]*B[199] + W[75]*B[200] + W[90]*B[201] + W[105]*B[202] + W[120]*B[203] + W[135]*B[204] + W[150]*B[205] + W[165]*B[206] + W[180]*B[207] + W[195]*B[208] + W[210]*B[209]; \
151329a97285SShri Abhyankar     A[196] = W[1]*B[195] + W[16]*B[196] + W[31]*B[197] + W[46]*B[198] + W[61]*B[199] + W[76]*B[200] + W[91]*B[201] + W[106]*B[202] + W[121]*B[203] + W[136]*B[204] + W[151]*B[205] + W[166]*B[206] + W[181]*B[207] + W[196]*B[208] + W[211]*B[209]; \
151429a97285SShri Abhyankar     A[197] = W[2]*B[195] + W[17]*B[196] + W[32]*B[197] + W[47]*B[198] + W[62]*B[199] + W[77]*B[200] + W[92]*B[201] + W[107]*B[202] + W[122]*B[203] + W[137]*B[204] + W[152]*B[205] + W[167]*B[206] + W[182]*B[207] + W[197]*B[208] + W[212]*B[209]; \
151529a97285SShri Abhyankar     A[198] = W[3]*B[195] + W[18]*B[196] + W[33]*B[197] + W[48]*B[198] + W[63]*B[199] + W[78]*B[200] + W[93]*B[201] + W[108]*B[202] + W[123]*B[203] + W[138]*B[204] + W[153]*B[205] + W[168]*B[206] + W[183]*B[207] + W[198]*B[208] + W[213]*B[209]; \
151629a97285SShri Abhyankar     A[199] = W[4]*B[195] + W[19]*B[196] + W[34]*B[197] + W[49]*B[198] + W[64]*B[199] + W[79]*B[200] + W[94]*B[201] + W[109]*B[202] + W[124]*B[203] + W[139]*B[204] + W[154]*B[205] + W[169]*B[206] + W[184]*B[207] + W[199]*B[208] + W[214]*B[209]; \
151729a97285SShri Abhyankar     A[200] = W[5]*B[195] + W[20]*B[196] + W[35]*B[197] + W[50]*B[198] + W[65]*B[199] + W[80]*B[200] + W[95]*B[201] + W[110]*B[202] + W[125]*B[203] + W[140]*B[204] + W[155]*B[205] + W[170]*B[206] + W[185]*B[207] + W[200]*B[208] + W[215]*B[209]; \
151829a97285SShri Abhyankar     A[201] = W[6]*B[195] + W[21]*B[196] + W[36]*B[197] + W[51]*B[198] + W[66]*B[199] + W[81]*B[200] + W[96]*B[201] + W[111]*B[202] + W[126]*B[203] + W[141]*B[204] + W[156]*B[205] + W[171]*B[206] + W[186]*B[207] + W[201]*B[208] + W[216]*B[209]; \
151929a97285SShri Abhyankar     A[202] = W[7]*B[195] + W[22]*B[196] + W[37]*B[197] + W[52]*B[198] + W[67]*B[199] + W[82]*B[200] + W[97]*B[201] + W[112]*B[202] + W[127]*B[203] + W[142]*B[204] + W[157]*B[205] + W[172]*B[206] + W[187]*B[207] + W[202]*B[208] + W[217]*B[209]; \
152029a97285SShri Abhyankar     A[203] = W[8]*B[195] + W[23]*B[196] + W[38]*B[197] + W[53]*B[198] + W[68]*B[199] + W[83]*B[200] + W[98]*B[201] + W[113]*B[202] + W[128]*B[203] + W[143]*B[204] + W[158]*B[205] + W[173]*B[206] + W[188]*B[207] + W[203]*B[208] + W[218]*B[209]; \
152129a97285SShri Abhyankar     A[204] = W[9]*B[195] + W[24]*B[196] + W[39]*B[197] + W[54]*B[198] + W[69]*B[199] + W[84]*B[200] + W[99]*B[201] + W[114]*B[202] + W[129]*B[203] + W[144]*B[204] + W[159]*B[205] + W[174]*B[206] + W[189]*B[207] + W[204]*B[208] + W[219]*B[209]; \
152229a97285SShri Abhyankar     A[205] = W[10]*B[195] + W[25]*B[196] + W[40]*B[197] + W[55]*B[198] + W[70]*B[199] + W[85]*B[200] + W[100]*B[201] + W[115]*B[202] + W[130]*B[203] + W[145]*B[204] + W[160]*B[205] + W[175]*B[206] + W[190]*B[207] + W[205]*B[208] + W[220]*B[209]; \
152329a97285SShri Abhyankar     A[206] = W[11]*B[195] + W[26]*B[196] + W[41]*B[197] + W[56]*B[198] + W[71]*B[199] + W[86]*B[200] + W[101]*B[201] + W[116]*B[202] + W[131]*B[203] + W[146]*B[204] + W[161]*B[205] + W[176]*B[206] + W[191]*B[207] + W[206]*B[208] + W[221]*B[209]; \
152429a97285SShri Abhyankar     A[207] = W[12]*B[195] + W[27]*B[196] + W[42]*B[197] + W[57]*B[198] + W[72]*B[199] + W[87]*B[200] + W[102]*B[201] + W[117]*B[202] + W[132]*B[203] + W[147]*B[204] + W[162]*B[205] + W[177]*B[206] + W[192]*B[207] + W[207]*B[208] + W[222]*B[209]; \
152529a97285SShri Abhyankar     A[208] = W[13]*B[195] + W[28]*B[196] + W[43]*B[197] + W[58]*B[198] + W[73]*B[199] + W[88]*B[200] + W[103]*B[201] + W[118]*B[202] + W[133]*B[203] + W[148]*B[204] + W[163]*B[205] + W[178]*B[206] + W[193]*B[207] + W[208]*B[208] + W[223]*B[209]; \
152629a97285SShri Abhyankar     A[209] = W[14]*B[195] + W[29]*B[196] + W[44]*B[197] + W[59]*B[198] + W[74]*B[199] + W[89]*B[200] + W[104]*B[201] + W[119]*B[202] + W[134]*B[203] + W[149]*B[204] + W[164]*B[205] + W[179]*B[206] + W[194]*B[207] + W[209]*B[208] + W[224]*B[209]; \
152729a97285SShri Abhyankar     A[210] = W[0]*B[210] + W[15]*B[211] + W[30]*B[212] + W[45]*B[213] + W[60]*B[214] + W[75]*B[215] + W[90]*B[216] + W[105]*B[217] + W[120]*B[218] + W[135]*B[219] + W[150]*B[220] + W[165]*B[221] + W[180]*B[222] + W[195]*B[223] + W[210]*B[224]; \
152829a97285SShri Abhyankar     A[211] = W[1]*B[210] + W[16]*B[211] + W[31]*B[212] + W[46]*B[213] + W[61]*B[214] + W[76]*B[215] + W[91]*B[216] + W[106]*B[217] + W[121]*B[218] + W[136]*B[219] + W[151]*B[220] + W[166]*B[221] + W[181]*B[222] + W[196]*B[223] + W[211]*B[224]; \
152929a97285SShri Abhyankar     A[212] = W[2]*B[210] + W[17]*B[211] + W[32]*B[212] + W[47]*B[213] + W[62]*B[214] + W[77]*B[215] + W[92]*B[216] + W[107]*B[217] + W[122]*B[218] + W[137]*B[219] + W[152]*B[220] + W[167]*B[221] + W[182]*B[222] + W[197]*B[223] + W[212]*B[224]; \
153029a97285SShri Abhyankar     A[213] = W[3]*B[210] + W[18]*B[211] + W[33]*B[212] + W[48]*B[213] + W[63]*B[214] + W[78]*B[215] + W[93]*B[216] + W[108]*B[217] + W[123]*B[218] + W[138]*B[219] + W[153]*B[220] + W[168]*B[221] + W[183]*B[222] + W[198]*B[223] + W[213]*B[224]; \
153129a97285SShri Abhyankar     A[214] = W[4]*B[210] + W[19]*B[211] + W[34]*B[212] + W[49]*B[213] + W[64]*B[214] + W[79]*B[215] + W[94]*B[216] + W[109]*B[217] + W[124]*B[218] + W[139]*B[219] + W[154]*B[220] + W[169]*B[221] + W[184]*B[222] + W[199]*B[223] + W[214]*B[224]; \
153229a97285SShri Abhyankar     A[215] = W[5]*B[210] + W[20]*B[211] + W[35]*B[212] + W[50]*B[213] + W[65]*B[214] + W[80]*B[215] + W[95]*B[216] + W[110]*B[217] + W[125]*B[218] + W[140]*B[219] + W[155]*B[220] + W[170]*B[221] + W[185]*B[222] + W[200]*B[223] + W[215]*B[224]; \
153329a97285SShri Abhyankar     A[216] = W[6]*B[210] + W[21]*B[211] + W[36]*B[212] + W[51]*B[213] + W[66]*B[214] + W[81]*B[215] + W[96]*B[216] + W[111]*B[217] + W[126]*B[218] + W[141]*B[219] + W[156]*B[220] + W[171]*B[221] + W[186]*B[222] + W[201]*B[223] + W[216]*B[224]; \
153429a97285SShri Abhyankar     A[217] = W[7]*B[210] + W[22]*B[211] + W[37]*B[212] + W[52]*B[213] + W[67]*B[214] + W[82]*B[215] + W[97]*B[216] + W[112]*B[217] + W[127]*B[218] + W[142]*B[219] + W[157]*B[220] + W[172]*B[221] + W[187]*B[222] + W[202]*B[223] + W[217]*B[224]; \
153529a97285SShri Abhyankar     A[218] = W[8]*B[210] + W[23]*B[211] + W[38]*B[212] + W[53]*B[213] + W[68]*B[214] + W[83]*B[215] + W[98]*B[216] + W[113]*B[217] + W[128]*B[218] + W[143]*B[219] + W[158]*B[220] + W[173]*B[221] + W[188]*B[222] + W[203]*B[223] + W[218]*B[224]; \
153629a97285SShri Abhyankar     A[219] = W[9]*B[210] + W[24]*B[211] + W[39]*B[212] + W[54]*B[213] + W[69]*B[214] + W[84]*B[215] + W[99]*B[216] + W[114]*B[217] + W[129]*B[218] + W[144]*B[219] + W[159]*B[220] + W[174]*B[221] + W[189]*B[222] + W[204]*B[223] + W[219]*B[224]; \
153729a97285SShri Abhyankar     A[220] = W[10]*B[210] + W[25]*B[211] + W[40]*B[212] + W[55]*B[213] + W[70]*B[214] + W[85]*B[215] + W[100]*B[216] + W[115]*B[217] + W[130]*B[218] + W[145]*B[219] + W[160]*B[220] + W[175]*B[221] + W[190]*B[222] + W[205]*B[223] + W[220]*B[224]; \
153829a97285SShri Abhyankar     A[221] = W[11]*B[210] + W[26]*B[211] + W[41]*B[212] + W[56]*B[213] + W[71]*B[214] + W[86]*B[215] + W[101]*B[216] + W[116]*B[217] + W[131]*B[218] + W[146]*B[219] + W[161]*B[220] + W[176]*B[221] + W[191]*B[222] + W[206]*B[223] + W[221]*B[224]; \
153929a97285SShri Abhyankar     A[222] = W[12]*B[210] + W[27]*B[211] + W[42]*B[212] + W[57]*B[213] + W[72]*B[214] + W[87]*B[215] + W[102]*B[216] + W[117]*B[217] + W[132]*B[218] + W[147]*B[219] + W[162]*B[220] + W[177]*B[221] + W[192]*B[222] + W[207]*B[223] + W[222]*B[224]; \
154029a97285SShri Abhyankar     A[223] = W[13]*B[210] + W[28]*B[211] + W[43]*B[212] + W[58]*B[213] + W[73]*B[214] + W[88]*B[215] + W[103]*B[216] + W[118]*B[217] + W[133]*B[218] + W[148]*B[219] + W[163]*B[220] + W[178]*B[221] + W[193]*B[222] + W[208]*B[223] + W[223]*B[224]; \
154129a97285SShri Abhyankar     A[224] = W[14]*B[210] + W[29]*B[211] + W[44]*B[212] + W[59]*B[213] + W[74]*B[214] + W[89]*B[215] + W[104]*B[216] + W[119]*B[217] + W[134]*B[218] + W[149]*B[219] + W[164]*B[220] + W[179]*B[221] + W[194]*B[222] + W[209]*B[223] + W[224]*B[224]; \
15422b0b2ea7SShri Abhyankar   }
15432b0b2ea7SShri Abhyankar 
15442b0b2ea7SShri Abhyankar /*
154596b95a6bSBarry Smith   PetscKernel_A_gets_A_minus_B_times_C_15: A = A - B * C with size bs=15
15462b0b2ea7SShri Abhyankar 
15472b0b2ea7SShri Abhyankar   Input Parameters:
15482b0b2ea7SShri Abhyankar +  A,B,C - square bs by bs arrays stored in column major order
15492b0b2ea7SShri Abhyankar 
15502b0b2ea7SShri Abhyankar   Output Parameter:
15512b0b2ea7SShri Abhyankar .  A = A - B*C
15522b0b2ea7SShri Abhyankar */
15532b0b2ea7SShri Abhyankar 
155496b95a6bSBarry Smith #define PetscKernel_A_gets_A_minus_B_times_C_15(A,B,C) 0; \
15552b0b2ea7SShri Abhyankar   {        \
155629a97285SShri Abhyankar     A[0]   -= B[0]*C[0] + B[15]*C[1] + B[30]*C[2] + B[45]*C[3] + B[60]*C[4] + B[75]*C[5] + B[90]*C[6] + B[105]*C[7] + B[120]*C[8] + B[135]*C[9] + B[150]*C[10] + B[165]*C[11] + B[180]*C[12] + B[195]*C[13] + B[210]*C[14]; \
155729a97285SShri Abhyankar     A[1]   -= B[1]*C[0] + B[16]*C[1] + B[31]*C[2] + B[46]*C[3] + B[61]*C[4] + B[76]*C[5] + B[91]*C[6] + B[106]*C[7] + B[121]*C[8] + B[136]*C[9] + B[151]*C[10] + B[166]*C[11] + B[181]*C[12] + B[196]*C[13] + B[211]*C[14]; \
155829a97285SShri Abhyankar     A[2]   -= B[2]*C[0] + B[17]*C[1] + B[32]*C[2] + B[47]*C[3] + B[62]*C[4] + B[77]*C[5] + B[92]*C[6] + B[107]*C[7] + B[122]*C[8] + B[137]*C[9] + B[152]*C[10] + B[167]*C[11] + B[182]*C[12] + B[197]*C[13] + B[212]*C[14]; \
155929a97285SShri Abhyankar     A[3]   -= B[3]*C[0] + B[18]*C[1] + B[33]*C[2] + B[48]*C[3] + B[63]*C[4] + B[78]*C[5] + B[93]*C[6] + B[108]*C[7] + B[123]*C[8] + B[138]*C[9] + B[153]*C[10] + B[168]*C[11] + B[183]*C[12] + B[198]*C[13] + B[213]*C[14]; \
156029a97285SShri Abhyankar     A[4]   -= B[4]*C[0] + B[19]*C[1] + B[34]*C[2] + B[49]*C[3] + B[64]*C[4] + B[79]*C[5] + B[94]*C[6] + B[109]*C[7] + B[124]*C[8] + B[139]*C[9] + B[154]*C[10] + B[169]*C[11] + B[184]*C[12] + B[199]*C[13] + B[214]*C[14]; \
156129a97285SShri Abhyankar     A[5]   -= B[5]*C[0] + B[20]*C[1] + B[35]*C[2] + B[50]*C[3] + B[65]*C[4] + B[80]*C[5] + B[95]*C[6] + B[110]*C[7] + B[125]*C[8] + B[140]*C[9] + B[155]*C[10] + B[170]*C[11] + B[185]*C[12] + B[200]*C[13] + B[215]*C[14]; \
156229a97285SShri Abhyankar     A[6]   -= B[6]*C[0] + B[21]*C[1] + B[36]*C[2] + B[51]*C[3] + B[66]*C[4] + B[81]*C[5] + B[96]*C[6] + B[111]*C[7] + B[126]*C[8] + B[141]*C[9] + B[156]*C[10] + B[171]*C[11] + B[186]*C[12] + B[201]*C[13] + B[216]*C[14]; \
156329a97285SShri Abhyankar     A[7]   -= B[7]*C[0] + B[22]*C[1] + B[37]*C[2] + B[52]*C[3] + B[67]*C[4] + B[82]*C[5] + B[97]*C[6] + B[112]*C[7] + B[127]*C[8] + B[142]*C[9] + B[157]*C[10] + B[172]*C[11] + B[187]*C[12] + B[202]*C[13] + B[217]*C[14]; \
156429a97285SShri Abhyankar     A[8]   -= B[8]*C[0] + B[23]*C[1] + B[38]*C[2] + B[53]*C[3] + B[68]*C[4] + B[83]*C[5] + B[98]*C[6] + B[113]*C[7] + B[128]*C[8] + B[143]*C[9] + B[158]*C[10] + B[173]*C[11] + B[188]*C[12] + B[203]*C[13] + B[218]*C[14]; \
156529a97285SShri Abhyankar     A[9]   -= B[9]*C[0] + B[24]*C[1] + B[39]*C[2] + B[54]*C[3] + B[69]*C[4] + B[84]*C[5] + B[99]*C[6] + B[114]*C[7] + B[129]*C[8] + B[144]*C[9] + B[159]*C[10] + B[174]*C[11] + B[189]*C[12] + B[204]*C[13] + B[219]*C[14]; \
156629a97285SShri Abhyankar     A[10]  -= B[10]*C[0] + B[25]*C[1] + B[40]*C[2] + B[55]*C[3] + B[70]*C[4] + B[85]*C[5] + B[100]*C[6] + B[115]*C[7] + B[130]*C[8] + B[145]*C[9] + B[160]*C[10] + B[175]*C[11] + B[190]*C[12] + B[205]*C[13] + B[220]*C[14]; \
156729a97285SShri Abhyankar     A[11]  -= B[11]*C[0] + B[26]*C[1] + B[41]*C[2] + B[56]*C[3] + B[71]*C[4] + B[86]*C[5] + B[101]*C[6] + B[116]*C[7] + B[131]*C[8] + B[146]*C[9] + B[161]*C[10] + B[176]*C[11] + B[191]*C[12] + B[206]*C[13] + B[221]*C[14]; \
156829a97285SShri Abhyankar     A[12]  -= B[12]*C[0] + B[27]*C[1] + B[42]*C[2] + B[57]*C[3] + B[72]*C[4] + B[87]*C[5] + B[102]*C[6] + B[117]*C[7] + B[132]*C[8] + B[147]*C[9] + B[162]*C[10] + B[177]*C[11] + B[192]*C[12] + B[207]*C[13] + B[222]*C[14]; \
156929a97285SShri Abhyankar     A[13]  -= B[13]*C[0] + B[28]*C[1] + B[43]*C[2] + B[58]*C[3] + B[73]*C[4] + B[88]*C[5] + B[103]*C[6] + B[118]*C[7] + B[133]*C[8] + B[148]*C[9] + B[163]*C[10] + B[178]*C[11] + B[193]*C[12] + B[208]*C[13] + B[223]*C[14]; \
157029a97285SShri Abhyankar     A[14]  -= B[14]*C[0] + B[29]*C[1] + B[44]*C[2] + B[59]*C[3] + B[74]*C[4] + B[89]*C[5] + B[104]*C[6] + B[119]*C[7] + B[134]*C[8] + B[149]*C[9] + B[164]*C[10] + B[179]*C[11] + B[194]*C[12] + B[209]*C[13] + B[224]*C[14]; \
157129a97285SShri Abhyankar     A[15]  -= B[0]*C[15] + B[15]*C[16] + B[30]*C[17] + B[45]*C[18] + B[60]*C[19] + B[75]*C[20] + B[90]*C[21] + B[105]*C[22] + B[120]*C[23] + B[135]*C[24] + B[150]*C[25] + B[165]*C[26] + B[180]*C[27] + B[195]*C[28] + B[210]*C[29]; \
157229a97285SShri Abhyankar     A[16]  -= B[1]*C[15] + B[16]*C[16] + B[31]*C[17] + B[46]*C[18] + B[61]*C[19] + B[76]*C[20] + B[91]*C[21] + B[106]*C[22] + B[121]*C[23] + B[136]*C[24] + B[151]*C[25] + B[166]*C[26] + B[181]*C[27] + B[196]*C[28] + B[211]*C[29]; \
157329a97285SShri Abhyankar     A[17]  -= B[2]*C[15] + B[17]*C[16] + B[32]*C[17] + B[47]*C[18] + B[62]*C[19] + B[77]*C[20] + B[92]*C[21] + B[107]*C[22] + B[122]*C[23] + B[137]*C[24] + B[152]*C[25] + B[167]*C[26] + B[182]*C[27] + B[197]*C[28] + B[212]*C[29]; \
157429a97285SShri Abhyankar     A[18]  -= B[3]*C[15] + B[18]*C[16] + B[33]*C[17] + B[48]*C[18] + B[63]*C[19] + B[78]*C[20] + B[93]*C[21] + B[108]*C[22] + B[123]*C[23] + B[138]*C[24] + B[153]*C[25] + B[168]*C[26] + B[183]*C[27] + B[198]*C[28] + B[213]*C[29]; \
157529a97285SShri Abhyankar     A[19]  -= B[4]*C[15] + B[19]*C[16] + B[34]*C[17] + B[49]*C[18] + B[64]*C[19] + B[79]*C[20] + B[94]*C[21] + B[109]*C[22] + B[124]*C[23] + B[139]*C[24] + B[154]*C[25] + B[169]*C[26] + B[184]*C[27] + B[199]*C[28] + B[214]*C[29]; \
157629a97285SShri Abhyankar     A[20]  -= B[5]*C[15] + B[20]*C[16] + B[35]*C[17] + B[50]*C[18] + B[65]*C[19] + B[80]*C[20] + B[95]*C[21] + B[110]*C[22] + B[125]*C[23] + B[140]*C[24] + B[155]*C[25] + B[170]*C[26] + B[185]*C[27] + B[200]*C[28] + B[215]*C[29]; \
157729a97285SShri Abhyankar     A[21]  -= B[6]*C[15] + B[21]*C[16] + B[36]*C[17] + B[51]*C[18] + B[66]*C[19] + B[81]*C[20] + B[96]*C[21] + B[111]*C[22] + B[126]*C[23] + B[141]*C[24] + B[156]*C[25] + B[171]*C[26] + B[186]*C[27] + B[201]*C[28] + B[216]*C[29]; \
157829a97285SShri Abhyankar     A[22]  -= B[7]*C[15] + B[22]*C[16] + B[37]*C[17] + B[52]*C[18] + B[67]*C[19] + B[82]*C[20] + B[97]*C[21] + B[112]*C[22] + B[127]*C[23] + B[142]*C[24] + B[157]*C[25] + B[172]*C[26] + B[187]*C[27] + B[202]*C[28] + B[217]*C[29]; \
157929a97285SShri Abhyankar     A[23]  -= B[8]*C[15] + B[23]*C[16] + B[38]*C[17] + B[53]*C[18] + B[68]*C[19] + B[83]*C[20] + B[98]*C[21] + B[113]*C[22] + B[128]*C[23] + B[143]*C[24] + B[158]*C[25] + B[173]*C[26] + B[188]*C[27] + B[203]*C[28] + B[218]*C[29]; \
158029a97285SShri Abhyankar     A[24]  -= B[9]*C[15] + B[24]*C[16] + B[39]*C[17] + B[54]*C[18] + B[69]*C[19] + B[84]*C[20] + B[99]*C[21] + B[114]*C[22] + B[129]*C[23] + B[144]*C[24] + B[159]*C[25] + B[174]*C[26] + B[189]*C[27] + B[204]*C[28] + B[219]*C[29]; \
158129a97285SShri Abhyankar     A[25]  -= B[10]*C[15] + B[25]*C[16] + B[40]*C[17] + B[55]*C[18] + B[70]*C[19] + B[85]*C[20] + B[100]*C[21] + B[115]*C[22] + B[130]*C[23] + B[145]*C[24] + B[160]*C[25] + B[175]*C[26] + B[190]*C[27] + B[205]*C[28] + B[220]*C[29]; \
158229a97285SShri Abhyankar     A[26]  -= B[11]*C[15] + B[26]*C[16] + B[41]*C[17] + B[56]*C[18] + B[71]*C[19] + B[86]*C[20] + B[101]*C[21] + B[116]*C[22] + B[131]*C[23] + B[146]*C[24] + B[161]*C[25] + B[176]*C[26] + B[191]*C[27] + B[206]*C[28] + B[221]*C[29]; \
158329a97285SShri Abhyankar     A[27]  -= B[12]*C[15] + B[27]*C[16] + B[42]*C[17] + B[57]*C[18] + B[72]*C[19] + B[87]*C[20] + B[102]*C[21] + B[117]*C[22] + B[132]*C[23] + B[147]*C[24] + B[162]*C[25] + B[177]*C[26] + B[192]*C[27] + B[207]*C[28] + B[222]*C[29]; \
158429a97285SShri Abhyankar     A[28]  -= B[13]*C[15] + B[28]*C[16] + B[43]*C[17] + B[58]*C[18] + B[73]*C[19] + B[88]*C[20] + B[103]*C[21] + B[118]*C[22] + B[133]*C[23] + B[148]*C[24] + B[163]*C[25] + B[178]*C[26] + B[193]*C[27] + B[208]*C[28] + B[223]*C[29]; \
158529a97285SShri Abhyankar     A[29]  -= B[14]*C[15] + B[29]*C[16] + B[44]*C[17] + B[59]*C[18] + B[74]*C[19] + B[89]*C[20] + B[104]*C[21] + B[119]*C[22] + B[134]*C[23] + B[149]*C[24] + B[164]*C[25] + B[179]*C[26] + B[194]*C[27] + B[209]*C[28] + B[224]*C[29]; \
158629a97285SShri Abhyankar     A[30]  -= B[0]*C[30] + B[15]*C[31] + B[30]*C[32] + B[45]*C[33] + B[60]*C[34] + B[75]*C[35] + B[90]*C[36] + B[105]*C[37] + B[120]*C[38] + B[135]*C[39] + B[150]*C[40] + B[165]*C[41] + B[180]*C[42] + B[195]*C[43] + B[210]*C[44]; \
158729a97285SShri Abhyankar     A[31]  -= B[1]*C[30] + B[16]*C[31] + B[31]*C[32] + B[46]*C[33] + B[61]*C[34] + B[76]*C[35] + B[91]*C[36] + B[106]*C[37] + B[121]*C[38] + B[136]*C[39] + B[151]*C[40] + B[166]*C[41] + B[181]*C[42] + B[196]*C[43] + B[211]*C[44]; \
158829a97285SShri Abhyankar     A[32]  -= B[2]*C[30] + B[17]*C[31] + B[32]*C[32] + B[47]*C[33] + B[62]*C[34] + B[77]*C[35] + B[92]*C[36] + B[107]*C[37] + B[122]*C[38] + B[137]*C[39] + B[152]*C[40] + B[167]*C[41] + B[182]*C[42] + B[197]*C[43] + B[212]*C[44]; \
158929a97285SShri Abhyankar     A[33]  -= B[3]*C[30] + B[18]*C[31] + B[33]*C[32] + B[48]*C[33] + B[63]*C[34] + B[78]*C[35] + B[93]*C[36] + B[108]*C[37] + B[123]*C[38] + B[138]*C[39] + B[153]*C[40] + B[168]*C[41] + B[183]*C[42] + B[198]*C[43] + B[213]*C[44]; \
159029a97285SShri Abhyankar     A[34]  -= B[4]*C[30] + B[19]*C[31] + B[34]*C[32] + B[49]*C[33] + B[64]*C[34] + B[79]*C[35] + B[94]*C[36] + B[109]*C[37] + B[124]*C[38] + B[139]*C[39] + B[154]*C[40] + B[169]*C[41] + B[184]*C[42] + B[199]*C[43] + B[214]*C[44]; \
159129a97285SShri Abhyankar     A[35]  -= B[5]*C[30] + B[20]*C[31] + B[35]*C[32] + B[50]*C[33] + B[65]*C[34] + B[80]*C[35] + B[95]*C[36] + B[110]*C[37] + B[125]*C[38] + B[140]*C[39] + B[155]*C[40] + B[170]*C[41] + B[185]*C[42] + B[200]*C[43] + B[215]*C[44]; \
159229a97285SShri Abhyankar     A[36]  -= B[6]*C[30] + B[21]*C[31] + B[36]*C[32] + B[51]*C[33] + B[66]*C[34] + B[81]*C[35] + B[96]*C[36] + B[111]*C[37] + B[126]*C[38] + B[141]*C[39] + B[156]*C[40] + B[171]*C[41] + B[186]*C[42] + B[201]*C[43] + B[216]*C[44]; \
159329a97285SShri Abhyankar     A[37]  -= B[7]*C[30] + B[22]*C[31] + B[37]*C[32] + B[52]*C[33] + B[67]*C[34] + B[82]*C[35] + B[97]*C[36] + B[112]*C[37] + B[127]*C[38] + B[142]*C[39] + B[157]*C[40] + B[172]*C[41] + B[187]*C[42] + B[202]*C[43] + B[217]*C[44]; \
159429a97285SShri Abhyankar     A[38]  -= B[8]*C[30] + B[23]*C[31] + B[38]*C[32] + B[53]*C[33] + B[68]*C[34] + B[83]*C[35] + B[98]*C[36] + B[113]*C[37] + B[128]*C[38] + B[143]*C[39] + B[158]*C[40] + B[173]*C[41] + B[188]*C[42] + B[203]*C[43] + B[218]*C[44]; \
159529a97285SShri Abhyankar     A[39]  -= B[9]*C[30] + B[24]*C[31] + B[39]*C[32] + B[54]*C[33] + B[69]*C[34] + B[84]*C[35] + B[99]*C[36] + B[114]*C[37] + B[129]*C[38] + B[144]*C[39] + B[159]*C[40] + B[174]*C[41] + B[189]*C[42] + B[204]*C[43] + B[219]*C[44]; \
159629a97285SShri Abhyankar     A[40]  -= B[10]*C[30] + B[25]*C[31] + B[40]*C[32] + B[55]*C[33] + B[70]*C[34] + B[85]*C[35] + B[100]*C[36] + B[115]*C[37] + B[130]*C[38] + B[145]*C[39] + B[160]*C[40] + B[175]*C[41] + B[190]*C[42] + B[205]*C[43] + B[220]*C[44]; \
159729a97285SShri Abhyankar     A[41]  -= B[11]*C[30] + B[26]*C[31] + B[41]*C[32] + B[56]*C[33] + B[71]*C[34] + B[86]*C[35] + B[101]*C[36] + B[116]*C[37] + B[131]*C[38] + B[146]*C[39] + B[161]*C[40] + B[176]*C[41] + B[191]*C[42] + B[206]*C[43] + B[221]*C[44]; \
159829a97285SShri Abhyankar     A[42]  -= B[12]*C[30] + B[27]*C[31] + B[42]*C[32] + B[57]*C[33] + B[72]*C[34] + B[87]*C[35] + B[102]*C[36] + B[117]*C[37] + B[132]*C[38] + B[147]*C[39] + B[162]*C[40] + B[177]*C[41] + B[192]*C[42] + B[207]*C[43] + B[222]*C[44]; \
159929a97285SShri Abhyankar     A[43]  -= B[13]*C[30] + B[28]*C[31] + B[43]*C[32] + B[58]*C[33] + B[73]*C[34] + B[88]*C[35] + B[103]*C[36] + B[118]*C[37] + B[133]*C[38] + B[148]*C[39] + B[163]*C[40] + B[178]*C[41] + B[193]*C[42] + B[208]*C[43] + B[223]*C[44]; \
160029a97285SShri Abhyankar     A[44]  -= B[14]*C[30] + B[29]*C[31] + B[44]*C[32] + B[59]*C[33] + B[74]*C[34] + B[89]*C[35] + B[104]*C[36] + B[119]*C[37] + B[134]*C[38] + B[149]*C[39] + B[164]*C[40] + B[179]*C[41] + B[194]*C[42] + B[209]*C[43] + B[224]*C[44]; \
160129a97285SShri Abhyankar     A[45]  -= B[0]*C[45] + B[15]*C[46] + B[30]*C[47] + B[45]*C[48] + B[60]*C[49] + B[75]*C[50] + B[90]*C[51] + B[105]*C[52] + B[120]*C[53] + B[135]*C[54] + B[150]*C[55] + B[165]*C[56] + B[180]*C[57] + B[195]*C[58] + B[210]*C[59]; \
160229a97285SShri Abhyankar     A[46]  -= B[1]*C[45] + B[16]*C[46] + B[31]*C[47] + B[46]*C[48] + B[61]*C[49] + B[76]*C[50] + B[91]*C[51] + B[106]*C[52] + B[121]*C[53] + B[136]*C[54] + B[151]*C[55] + B[166]*C[56] + B[181]*C[57] + B[196]*C[58] + B[211]*C[59]; \
160329a97285SShri Abhyankar     A[47]  -= B[2]*C[45] + B[17]*C[46] + B[32]*C[47] + B[47]*C[48] + B[62]*C[49] + B[77]*C[50] + B[92]*C[51] + B[107]*C[52] + B[122]*C[53] + B[137]*C[54] + B[152]*C[55] + B[167]*C[56] + B[182]*C[57] + B[197]*C[58] + B[212]*C[59]; \
160429a97285SShri Abhyankar     A[48]  -= B[3]*C[45] + B[18]*C[46] + B[33]*C[47] + B[48]*C[48] + B[63]*C[49] + B[78]*C[50] + B[93]*C[51] + B[108]*C[52] + B[123]*C[53] + B[138]*C[54] + B[153]*C[55] + B[168]*C[56] + B[183]*C[57] + B[198]*C[58] + B[213]*C[59]; \
160529a97285SShri Abhyankar     A[49]  -= B[4]*C[45] + B[19]*C[46] + B[34]*C[47] + B[49]*C[48] + B[64]*C[49] + B[79]*C[50] + B[94]*C[51] + B[109]*C[52] + B[124]*C[53] + B[139]*C[54] + B[154]*C[55] + B[169]*C[56] + B[184]*C[57] + B[199]*C[58] + B[214]*C[59]; \
160629a97285SShri Abhyankar     A[50]  -= B[5]*C[45] + B[20]*C[46] + B[35]*C[47] + B[50]*C[48] + B[65]*C[49] + B[80]*C[50] + B[95]*C[51] + B[110]*C[52] + B[125]*C[53] + B[140]*C[54] + B[155]*C[55] + B[170]*C[56] + B[185]*C[57] + B[200]*C[58] + B[215]*C[59]; \
160729a97285SShri Abhyankar     A[51]  -= B[6]*C[45] + B[21]*C[46] + B[36]*C[47] + B[51]*C[48] + B[66]*C[49] + B[81]*C[50] + B[96]*C[51] + B[111]*C[52] + B[126]*C[53] + B[141]*C[54] + B[156]*C[55] + B[171]*C[56] + B[186]*C[57] + B[201]*C[58] + B[216]*C[59]; \
160829a97285SShri Abhyankar     A[52]  -= B[7]*C[45] + B[22]*C[46] + B[37]*C[47] + B[52]*C[48] + B[67]*C[49] + B[82]*C[50] + B[97]*C[51] + B[112]*C[52] + B[127]*C[53] + B[142]*C[54] + B[157]*C[55] + B[172]*C[56] + B[187]*C[57] + B[202]*C[58] + B[217]*C[59]; \
160929a97285SShri Abhyankar     A[53]  -= B[8]*C[45] + B[23]*C[46] + B[38]*C[47] + B[53]*C[48] + B[68]*C[49] + B[83]*C[50] + B[98]*C[51] + B[113]*C[52] + B[128]*C[53] + B[143]*C[54] + B[158]*C[55] + B[173]*C[56] + B[188]*C[57] + B[203]*C[58] + B[218]*C[59]; \
161029a97285SShri Abhyankar     A[54]  -= B[9]*C[45] + B[24]*C[46] + B[39]*C[47] + B[54]*C[48] + B[69]*C[49] + B[84]*C[50] + B[99]*C[51] + B[114]*C[52] + B[129]*C[53] + B[144]*C[54] + B[159]*C[55] + B[174]*C[56] + B[189]*C[57] + B[204]*C[58] + B[219]*C[59]; \
161129a97285SShri Abhyankar     A[55]  -= B[10]*C[45] + B[25]*C[46] + B[40]*C[47] + B[55]*C[48] + B[70]*C[49] + B[85]*C[50] + B[100]*C[51] + B[115]*C[52] + B[130]*C[53] + B[145]*C[54] + B[160]*C[55] + B[175]*C[56] + B[190]*C[57] + B[205]*C[58] + B[220]*C[59]; \
161229a97285SShri Abhyankar     A[56]  -= B[11]*C[45] + B[26]*C[46] + B[41]*C[47] + B[56]*C[48] + B[71]*C[49] + B[86]*C[50] + B[101]*C[51] + B[116]*C[52] + B[131]*C[53] + B[146]*C[54] + B[161]*C[55] + B[176]*C[56] + B[191]*C[57] + B[206]*C[58] + B[221]*C[59]; \
161329a97285SShri Abhyankar     A[57]  -= B[12]*C[45] + B[27]*C[46] + B[42]*C[47] + B[57]*C[48] + B[72]*C[49] + B[87]*C[50] + B[102]*C[51] + B[117]*C[52] + B[132]*C[53] + B[147]*C[54] + B[162]*C[55] + B[177]*C[56] + B[192]*C[57] + B[207]*C[58] + B[222]*C[59]; \
161429a97285SShri Abhyankar     A[58]  -= B[13]*C[45] + B[28]*C[46] + B[43]*C[47] + B[58]*C[48] + B[73]*C[49] + B[88]*C[50] + B[103]*C[51] + B[118]*C[52] + B[133]*C[53] + B[148]*C[54] + B[163]*C[55] + B[178]*C[56] + B[193]*C[57] + B[208]*C[58] + B[223]*C[59]; \
161529a97285SShri Abhyankar     A[59]  -= B[14]*C[45] + B[29]*C[46] + B[44]*C[47] + B[59]*C[48] + B[74]*C[49] + B[89]*C[50] + B[104]*C[51] + B[119]*C[52] + B[134]*C[53] + B[149]*C[54] + B[164]*C[55] + B[179]*C[56] + B[194]*C[57] + B[209]*C[58] + B[224]*C[59]; \
161629a97285SShri Abhyankar     A[60]  -= B[0]*C[60] + B[15]*C[61] + B[30]*C[62] + B[45]*C[63] + B[60]*C[64] + B[75]*C[65] + B[90]*C[66] + B[105]*C[67] + B[120]*C[68] + B[135]*C[69] + B[150]*C[70] + B[165]*C[71] + B[180]*C[72] + B[195]*C[73] + B[210]*C[74]; \
161729a97285SShri Abhyankar     A[61]  -= B[1]*C[60] + B[16]*C[61] + B[31]*C[62] + B[46]*C[63] + B[61]*C[64] + B[76]*C[65] + B[91]*C[66] + B[106]*C[67] + B[121]*C[68] + B[136]*C[69] + B[151]*C[70] + B[166]*C[71] + B[181]*C[72] + B[196]*C[73] + B[211]*C[74]; \
161829a97285SShri Abhyankar     A[62]  -= B[2]*C[60] + B[17]*C[61] + B[32]*C[62] + B[47]*C[63] + B[62]*C[64] + B[77]*C[65] + B[92]*C[66] + B[107]*C[67] + B[122]*C[68] + B[137]*C[69] + B[152]*C[70] + B[167]*C[71] + B[182]*C[72] + B[197]*C[73] + B[212]*C[74]; \
161929a97285SShri Abhyankar     A[63]  -= B[3]*C[60] + B[18]*C[61] + B[33]*C[62] + B[48]*C[63] + B[63]*C[64] + B[78]*C[65] + B[93]*C[66] + B[108]*C[67] + B[123]*C[68] + B[138]*C[69] + B[153]*C[70] + B[168]*C[71] + B[183]*C[72] + B[198]*C[73] + B[213]*C[74]; \
162029a97285SShri Abhyankar     A[64]  -= B[4]*C[60] + B[19]*C[61] + B[34]*C[62] + B[49]*C[63] + B[64]*C[64] + B[79]*C[65] + B[94]*C[66] + B[109]*C[67] + B[124]*C[68] + B[139]*C[69] + B[154]*C[70] + B[169]*C[71] + B[184]*C[72] + B[199]*C[73] + B[214]*C[74]; \
162129a97285SShri Abhyankar     A[65]  -= B[5]*C[60] + B[20]*C[61] + B[35]*C[62] + B[50]*C[63] + B[65]*C[64] + B[80]*C[65] + B[95]*C[66] + B[110]*C[67] + B[125]*C[68] + B[140]*C[69] + B[155]*C[70] + B[170]*C[71] + B[185]*C[72] + B[200]*C[73] + B[215]*C[74]; \
162229a97285SShri Abhyankar     A[66]  -= B[6]*C[60] + B[21]*C[61] + B[36]*C[62] + B[51]*C[63] + B[66]*C[64] + B[81]*C[65] + B[96]*C[66] + B[111]*C[67] + B[126]*C[68] + B[141]*C[69] + B[156]*C[70] + B[171]*C[71] + B[186]*C[72] + B[201]*C[73] + B[216]*C[74]; \
162329a97285SShri Abhyankar     A[67]  -= B[7]*C[60] + B[22]*C[61] + B[37]*C[62] + B[52]*C[63] + B[67]*C[64] + B[82]*C[65] + B[97]*C[66] + B[112]*C[67] + B[127]*C[68] + B[142]*C[69] + B[157]*C[70] + B[172]*C[71] + B[187]*C[72] + B[202]*C[73] + B[217]*C[74]; \
162429a97285SShri Abhyankar     A[68]  -= B[8]*C[60] + B[23]*C[61] + B[38]*C[62] + B[53]*C[63] + B[68]*C[64] + B[83]*C[65] + B[98]*C[66] + B[113]*C[67] + B[128]*C[68] + B[143]*C[69] + B[158]*C[70] + B[173]*C[71] + B[188]*C[72] + B[203]*C[73] + B[218]*C[74]; \
162529a97285SShri Abhyankar     A[69]  -= B[9]*C[60] + B[24]*C[61] + B[39]*C[62] + B[54]*C[63] + B[69]*C[64] + B[84]*C[65] + B[99]*C[66] + B[114]*C[67] + B[129]*C[68] + B[144]*C[69] + B[159]*C[70] + B[174]*C[71] + B[189]*C[72] + B[204]*C[73] + B[219]*C[74]; \
162629a97285SShri Abhyankar     A[70]  -= B[10]*C[60] + B[25]*C[61] + B[40]*C[62] + B[55]*C[63] + B[70]*C[64] + B[85]*C[65] + B[100]*C[66] + B[115]*C[67] + B[130]*C[68] + B[145]*C[69] + B[160]*C[70] + B[175]*C[71] + B[190]*C[72] + B[205]*C[73] + B[220]*C[74]; \
162729a97285SShri Abhyankar     A[71]  -= B[11]*C[60] + B[26]*C[61] + B[41]*C[62] + B[56]*C[63] + B[71]*C[64] + B[86]*C[65] + B[101]*C[66] + B[116]*C[67] + B[131]*C[68] + B[146]*C[69] + B[161]*C[70] + B[176]*C[71] + B[191]*C[72] + B[206]*C[73] + B[221]*C[74]; \
162829a97285SShri Abhyankar     A[72]  -= B[12]*C[60] + B[27]*C[61] + B[42]*C[62] + B[57]*C[63] + B[72]*C[64] + B[87]*C[65] + B[102]*C[66] + B[117]*C[67] + B[132]*C[68] + B[147]*C[69] + B[162]*C[70] + B[177]*C[71] + B[192]*C[72] + B[207]*C[73] + B[222]*C[74]; \
162929a97285SShri Abhyankar     A[73]  -= B[13]*C[60] + B[28]*C[61] + B[43]*C[62] + B[58]*C[63] + B[73]*C[64] + B[88]*C[65] + B[103]*C[66] + B[118]*C[67] + B[133]*C[68] + B[148]*C[69] + B[163]*C[70] + B[178]*C[71] + B[193]*C[72] + B[208]*C[73] + B[223]*C[74]; \
163029a97285SShri Abhyankar     A[74]  -= B[14]*C[60] + B[29]*C[61] + B[44]*C[62] + B[59]*C[63] + B[74]*C[64] + B[89]*C[65] + B[104]*C[66] + B[119]*C[67] + B[134]*C[68] + B[149]*C[69] + B[164]*C[70] + B[179]*C[71] + B[194]*C[72] + B[209]*C[73] + B[224]*C[74]; \
163129a97285SShri Abhyankar     A[75]  -= B[0]*C[75] + B[15]*C[76] + B[30]*C[77] + B[45]*C[78] + B[60]*C[79] + B[75]*C[80] + B[90]*C[81] + B[105]*C[82] + B[120]*C[83] + B[135]*C[84] + B[150]*C[85] + B[165]*C[86] + B[180]*C[87] + B[195]*C[88] + B[210]*C[89]; \
163229a97285SShri Abhyankar     A[76]  -= B[1]*C[75] + B[16]*C[76] + B[31]*C[77] + B[46]*C[78] + B[61]*C[79] + B[76]*C[80] + B[91]*C[81] + B[106]*C[82] + B[121]*C[83] + B[136]*C[84] + B[151]*C[85] + B[166]*C[86] + B[181]*C[87] + B[196]*C[88] + B[211]*C[89]; \
163329a97285SShri Abhyankar     A[77]  -= B[2]*C[75] + B[17]*C[76] + B[32]*C[77] + B[47]*C[78] + B[62]*C[79] + B[77]*C[80] + B[92]*C[81] + B[107]*C[82] + B[122]*C[83] + B[137]*C[84] + B[152]*C[85] + B[167]*C[86] + B[182]*C[87] + B[197]*C[88] + B[212]*C[89]; \
163429a97285SShri Abhyankar     A[78]  -= B[3]*C[75] + B[18]*C[76] + B[33]*C[77] + B[48]*C[78] + B[63]*C[79] + B[78]*C[80] + B[93]*C[81] + B[108]*C[82] + B[123]*C[83] + B[138]*C[84] + B[153]*C[85] + B[168]*C[86] + B[183]*C[87] + B[198]*C[88] + B[213]*C[89]; \
163529a97285SShri Abhyankar     A[79]  -= B[4]*C[75] + B[19]*C[76] + B[34]*C[77] + B[49]*C[78] + B[64]*C[79] + B[79]*C[80] + B[94]*C[81] + B[109]*C[82] + B[124]*C[83] + B[139]*C[84] + B[154]*C[85] + B[169]*C[86] + B[184]*C[87] + B[199]*C[88] + B[214]*C[89]; \
163629a97285SShri Abhyankar     A[80]  -= B[5]*C[75] + B[20]*C[76] + B[35]*C[77] + B[50]*C[78] + B[65]*C[79] + B[80]*C[80] + B[95]*C[81] + B[110]*C[82] + B[125]*C[83] + B[140]*C[84] + B[155]*C[85] + B[170]*C[86] + B[185]*C[87] + B[200]*C[88] + B[215]*C[89]; \
163729a97285SShri Abhyankar     A[81]  -= B[6]*C[75] + B[21]*C[76] + B[36]*C[77] + B[51]*C[78] + B[66]*C[79] + B[81]*C[80] + B[96]*C[81] + B[111]*C[82] + B[126]*C[83] + B[141]*C[84] + B[156]*C[85] + B[171]*C[86] + B[186]*C[87] + B[201]*C[88] + B[216]*C[89]; \
163829a97285SShri Abhyankar     A[82]  -= B[7]*C[75] + B[22]*C[76] + B[37]*C[77] + B[52]*C[78] + B[67]*C[79] + B[82]*C[80] + B[97]*C[81] + B[112]*C[82] + B[127]*C[83] + B[142]*C[84] + B[157]*C[85] + B[172]*C[86] + B[187]*C[87] + B[202]*C[88] + B[217]*C[89]; \
163929a97285SShri Abhyankar     A[83]  -= B[8]*C[75] + B[23]*C[76] + B[38]*C[77] + B[53]*C[78] + B[68]*C[79] + B[83]*C[80] + B[98]*C[81] + B[113]*C[82] + B[128]*C[83] + B[143]*C[84] + B[158]*C[85] + B[173]*C[86] + B[188]*C[87] + B[203]*C[88] + B[218]*C[89]; \
164029a97285SShri Abhyankar     A[84]  -= B[9]*C[75] + B[24]*C[76] + B[39]*C[77] + B[54]*C[78] + B[69]*C[79] + B[84]*C[80] + B[99]*C[81] + B[114]*C[82] + B[129]*C[83] + B[144]*C[84] + B[159]*C[85] + B[174]*C[86] + B[189]*C[87] + B[204]*C[88] + B[219]*C[89]; \
164129a97285SShri Abhyankar     A[85]  -= B[10]*C[75] + B[25]*C[76] + B[40]*C[77] + B[55]*C[78] + B[70]*C[79] + B[85]*C[80] + B[100]*C[81] + B[115]*C[82] + B[130]*C[83] + B[145]*C[84] + B[160]*C[85] + B[175]*C[86] + B[190]*C[87] + B[205]*C[88] + B[220]*C[89]; \
164229a97285SShri Abhyankar     A[86]  -= B[11]*C[75] + B[26]*C[76] + B[41]*C[77] + B[56]*C[78] + B[71]*C[79] + B[86]*C[80] + B[101]*C[81] + B[116]*C[82] + B[131]*C[83] + B[146]*C[84] + B[161]*C[85] + B[176]*C[86] + B[191]*C[87] + B[206]*C[88] + B[221]*C[89]; \
164329a97285SShri Abhyankar     A[87]  -= B[12]*C[75] + B[27]*C[76] + B[42]*C[77] + B[57]*C[78] + B[72]*C[79] + B[87]*C[80] + B[102]*C[81] + B[117]*C[82] + B[132]*C[83] + B[147]*C[84] + B[162]*C[85] + B[177]*C[86] + B[192]*C[87] + B[207]*C[88] + B[222]*C[89]; \
164429a97285SShri Abhyankar     A[88]  -= B[13]*C[75] + B[28]*C[76] + B[43]*C[77] + B[58]*C[78] + B[73]*C[79] + B[88]*C[80] + B[103]*C[81] + B[118]*C[82] + B[133]*C[83] + B[148]*C[84] + B[163]*C[85] + B[178]*C[86] + B[193]*C[87] + B[208]*C[88] + B[223]*C[89]; \
164529a97285SShri Abhyankar     A[89]  -= B[14]*C[75] + B[29]*C[76] + B[44]*C[77] + B[59]*C[78] + B[74]*C[79] + B[89]*C[80] + B[104]*C[81] + B[119]*C[82] + B[134]*C[83] + B[149]*C[84] + B[164]*C[85] + B[179]*C[86] + B[194]*C[87] + B[209]*C[88] + B[224]*C[89]; \
164629a97285SShri Abhyankar     A[90]  -= B[0]*C[90] + B[15]*C[91] + B[30]*C[92] + B[45]*C[93] + B[60]*C[94] + B[75]*C[95] + B[90]*C[96] + B[105]*C[97] + B[120]*C[98] + B[135]*C[99] + B[150]*C[100] + B[165]*C[101] + B[180]*C[102] + B[195]*C[103] + B[210]*C[104]; \
164729a97285SShri Abhyankar     A[91]  -= B[1]*C[90] + B[16]*C[91] + B[31]*C[92] + B[46]*C[93] + B[61]*C[94] + B[76]*C[95] + B[91]*C[96] + B[106]*C[97] + B[121]*C[98] + B[136]*C[99] + B[151]*C[100] + B[166]*C[101] + B[181]*C[102] + B[196]*C[103] + B[211]*C[104]; \
164829a97285SShri Abhyankar     A[92]  -= B[2]*C[90] + B[17]*C[91] + B[32]*C[92] + B[47]*C[93] + B[62]*C[94] + B[77]*C[95] + B[92]*C[96] + B[107]*C[97] + B[122]*C[98] + B[137]*C[99] + B[152]*C[100] + B[167]*C[101] + B[182]*C[102] + B[197]*C[103] + B[212]*C[104]; \
164929a97285SShri Abhyankar     A[93]  -= B[3]*C[90] + B[18]*C[91] + B[33]*C[92] + B[48]*C[93] + B[63]*C[94] + B[78]*C[95] + B[93]*C[96] + B[108]*C[97] + B[123]*C[98] + B[138]*C[99] + B[153]*C[100] + B[168]*C[101] + B[183]*C[102] + B[198]*C[103] + B[213]*C[104]; \
165029a97285SShri Abhyankar     A[94]  -= B[4]*C[90] + B[19]*C[91] + B[34]*C[92] + B[49]*C[93] + B[64]*C[94] + B[79]*C[95] + B[94]*C[96] + B[109]*C[97] + B[124]*C[98] + B[139]*C[99] + B[154]*C[100] + B[169]*C[101] + B[184]*C[102] + B[199]*C[103] + B[214]*C[104]; \
165129a97285SShri Abhyankar     A[95]  -= B[5]*C[90] + B[20]*C[91] + B[35]*C[92] + B[50]*C[93] + B[65]*C[94] + B[80]*C[95] + B[95]*C[96] + B[110]*C[97] + B[125]*C[98] + B[140]*C[99] + B[155]*C[100] + B[170]*C[101] + B[185]*C[102] + B[200]*C[103] + B[215]*C[104]; \
165229a97285SShri Abhyankar     A[96]  -= B[6]*C[90] + B[21]*C[91] + B[36]*C[92] + B[51]*C[93] + B[66]*C[94] + B[81]*C[95] + B[96]*C[96] + B[111]*C[97] + B[126]*C[98] + B[141]*C[99] + B[156]*C[100] + B[171]*C[101] + B[186]*C[102] + B[201]*C[103] + B[216]*C[104]; \
165329a97285SShri Abhyankar     A[97]  -= B[7]*C[90] + B[22]*C[91] + B[37]*C[92] + B[52]*C[93] + B[67]*C[94] + B[82]*C[95] + B[97]*C[96] + B[112]*C[97] + B[127]*C[98] + B[142]*C[99] + B[157]*C[100] + B[172]*C[101] + B[187]*C[102] + B[202]*C[103] + B[217]*C[104]; \
165429a97285SShri Abhyankar     A[98]  -= B[8]*C[90] + B[23]*C[91] + B[38]*C[92] + B[53]*C[93] + B[68]*C[94] + B[83]*C[95] + B[98]*C[96] + B[113]*C[97] + B[128]*C[98] + B[143]*C[99] + B[158]*C[100] + B[173]*C[101] + B[188]*C[102] + B[203]*C[103] + B[218]*C[104]; \
165529a97285SShri Abhyankar     A[99]  -= B[9]*C[90] + B[24]*C[91] + B[39]*C[92] + B[54]*C[93] + B[69]*C[94] + B[84]*C[95] + B[99]*C[96] + B[114]*C[97] + B[129]*C[98] + B[144]*C[99] + B[159]*C[100] + B[174]*C[101] + B[189]*C[102] + B[204]*C[103] + B[219]*C[104]; \
165629a97285SShri Abhyankar     A[100] -= B[10]*C[90] + B[25]*C[91] + B[40]*C[92] + B[55]*C[93] + B[70]*C[94] + B[85]*C[95] + B[100]*C[96] + B[115]*C[97] + B[130]*C[98] + B[145]*C[99] + B[160]*C[100] + B[175]*C[101] + B[190]*C[102] + B[205]*C[103] + B[220]*C[104]; \
165729a97285SShri Abhyankar     A[101] -= B[11]*C[90] + B[26]*C[91] + B[41]*C[92] + B[56]*C[93] + B[71]*C[94] + B[86]*C[95] + B[101]*C[96] + B[116]*C[97] + B[131]*C[98] + B[146]*C[99] + B[161]*C[100] + B[176]*C[101] + B[191]*C[102] + B[206]*C[103] + B[221]*C[104]; \
165829a97285SShri Abhyankar     A[102] -= B[12]*C[90] + B[27]*C[91] + B[42]*C[92] + B[57]*C[93] + B[72]*C[94] + B[87]*C[95] + B[102]*C[96] + B[117]*C[97] + B[132]*C[98] + B[147]*C[99] + B[162]*C[100] + B[177]*C[101] + B[192]*C[102] + B[207]*C[103] + B[222]*C[104]; \
165929a97285SShri Abhyankar     A[103] -= B[13]*C[90] + B[28]*C[91] + B[43]*C[92] + B[58]*C[93] + B[73]*C[94] + B[88]*C[95] + B[103]*C[96] + B[118]*C[97] + B[133]*C[98] + B[148]*C[99] + B[163]*C[100] + B[178]*C[101] + B[193]*C[102] + B[208]*C[103] + B[223]*C[104]; \
166029a97285SShri Abhyankar     A[104] -= B[14]*C[90] + B[29]*C[91] + B[44]*C[92] + B[59]*C[93] + B[74]*C[94] + B[89]*C[95] + B[104]*C[96] + B[119]*C[97] + B[134]*C[98] + B[149]*C[99] + B[164]*C[100] + B[179]*C[101] + B[194]*C[102] + B[209]*C[103] + B[224]*C[104]; \
166129a97285SShri Abhyankar     A[105] -= B[0]*C[105] + B[15]*C[106] + B[30]*C[107] + B[45]*C[108] + B[60]*C[109] + B[75]*C[110] + B[90]*C[111] + B[105]*C[112] + B[120]*C[113] + B[135]*C[114] + B[150]*C[115] + B[165]*C[116] + B[180]*C[117] + B[195]*C[118] + B[210]*C[119]; \
166229a97285SShri Abhyankar     A[106] -= B[1]*C[105] + B[16]*C[106] + B[31]*C[107] + B[46]*C[108] + B[61]*C[109] + B[76]*C[110] + B[91]*C[111] + B[106]*C[112] + B[121]*C[113] + B[136]*C[114] + B[151]*C[115] + B[166]*C[116] + B[181]*C[117] + B[196]*C[118] + B[211]*C[119]; \
166329a97285SShri Abhyankar     A[107] -= B[2]*C[105] + B[17]*C[106] + B[32]*C[107] + B[47]*C[108] + B[62]*C[109] + B[77]*C[110] + B[92]*C[111] + B[107]*C[112] + B[122]*C[113] + B[137]*C[114] + B[152]*C[115] + B[167]*C[116] + B[182]*C[117] + B[197]*C[118] + B[212]*C[119]; \
166429a97285SShri Abhyankar     A[108] -= B[3]*C[105] + B[18]*C[106] + B[33]*C[107] + B[48]*C[108] + B[63]*C[109] + B[78]*C[110] + B[93]*C[111] + B[108]*C[112] + B[123]*C[113] + B[138]*C[114] + B[153]*C[115] + B[168]*C[116] + B[183]*C[117] + B[198]*C[118] + B[213]*C[119]; \
166529a97285SShri Abhyankar     A[109] -= B[4]*C[105] + B[19]*C[106] + B[34]*C[107] + B[49]*C[108] + B[64]*C[109] + B[79]*C[110] + B[94]*C[111] + B[109]*C[112] + B[124]*C[113] + B[139]*C[114] + B[154]*C[115] + B[169]*C[116] + B[184]*C[117] + B[199]*C[118] + B[214]*C[119]; \
166629a97285SShri Abhyankar     A[110] -= B[5]*C[105] + B[20]*C[106] + B[35]*C[107] + B[50]*C[108] + B[65]*C[109] + B[80]*C[110] + B[95]*C[111] + B[110]*C[112] + B[125]*C[113] + B[140]*C[114] + B[155]*C[115] + B[170]*C[116] + B[185]*C[117] + B[200]*C[118] + B[215]*C[119]; \
166729a97285SShri Abhyankar     A[111] -= B[6]*C[105] + B[21]*C[106] + B[36]*C[107] + B[51]*C[108] + B[66]*C[109] + B[81]*C[110] + B[96]*C[111] + B[111]*C[112] + B[126]*C[113] + B[141]*C[114] + B[156]*C[115] + B[171]*C[116] + B[186]*C[117] + B[201]*C[118] + B[216]*C[119]; \
166829a97285SShri Abhyankar     A[112] -= B[7]*C[105] + B[22]*C[106] + B[37]*C[107] + B[52]*C[108] + B[67]*C[109] + B[82]*C[110] + B[97]*C[111] + B[112]*C[112] + B[127]*C[113] + B[142]*C[114] + B[157]*C[115] + B[172]*C[116] + B[187]*C[117] + B[202]*C[118] + B[217]*C[119]; \
166929a97285SShri Abhyankar     A[113] -= B[8]*C[105] + B[23]*C[106] + B[38]*C[107] + B[53]*C[108] + B[68]*C[109] + B[83]*C[110] + B[98]*C[111] + B[113]*C[112] + B[128]*C[113] + B[143]*C[114] + B[158]*C[115] + B[173]*C[116] + B[188]*C[117] + B[203]*C[118] + B[218]*C[119]; \
167029a97285SShri Abhyankar     A[114] -= B[9]*C[105] + B[24]*C[106] + B[39]*C[107] + B[54]*C[108] + B[69]*C[109] + B[84]*C[110] + B[99]*C[111] + B[114]*C[112] + B[129]*C[113] + B[144]*C[114] + B[159]*C[115] + B[174]*C[116] + B[189]*C[117] + B[204]*C[118] + B[219]*C[119]; \
167129a97285SShri Abhyankar     A[115] -= B[10]*C[105] + B[25]*C[106] + B[40]*C[107] + B[55]*C[108] + B[70]*C[109] + B[85]*C[110] + B[100]*C[111] + B[115]*C[112] + B[130]*C[113] + B[145]*C[114] + B[160]*C[115] + B[175]*C[116] + B[190]*C[117] + B[205]*C[118] + B[220]*C[119]; \
167229a97285SShri Abhyankar     A[116] -= B[11]*C[105] + B[26]*C[106] + B[41]*C[107] + B[56]*C[108] + B[71]*C[109] + B[86]*C[110] + B[101]*C[111] + B[116]*C[112] + B[131]*C[113] + B[146]*C[114] + B[161]*C[115] + B[176]*C[116] + B[191]*C[117] + B[206]*C[118] + B[221]*C[119]; \
167329a97285SShri Abhyankar     A[117] -= B[12]*C[105] + B[27]*C[106] + B[42]*C[107] + B[57]*C[108] + B[72]*C[109] + B[87]*C[110] + B[102]*C[111] + B[117]*C[112] + B[132]*C[113] + B[147]*C[114] + B[162]*C[115] + B[177]*C[116] + B[192]*C[117] + B[207]*C[118] + B[222]*C[119]; \
167429a97285SShri Abhyankar     A[118] -= B[13]*C[105] + B[28]*C[106] + B[43]*C[107] + B[58]*C[108] + B[73]*C[109] + B[88]*C[110] + B[103]*C[111] + B[118]*C[112] + B[133]*C[113] + B[148]*C[114] + B[163]*C[115] + B[178]*C[116] + B[193]*C[117] + B[208]*C[118] + B[223]*C[119]; \
167529a97285SShri Abhyankar     A[119] -= B[14]*C[105] + B[29]*C[106] + B[44]*C[107] + B[59]*C[108] + B[74]*C[109] + B[89]*C[110] + B[104]*C[111] + B[119]*C[112] + B[134]*C[113] + B[149]*C[114] + B[164]*C[115] + B[179]*C[116] + B[194]*C[117] + B[209]*C[118] + B[224]*C[119]; \
167629a97285SShri Abhyankar     A[120] -= B[0]*C[120] + B[15]*C[121] + B[30]*C[122] + B[45]*C[123] + B[60]*C[124] + B[75]*C[125] + B[90]*C[126] + B[105]*C[127] + B[120]*C[128] + B[135]*C[129] + B[150]*C[130] + B[165]*C[131] + B[180]*C[132] + B[195]*C[133] + B[210]*C[134]; \
167729a97285SShri Abhyankar     A[121] -= B[1]*C[120] + B[16]*C[121] + B[31]*C[122] + B[46]*C[123] + B[61]*C[124] + B[76]*C[125] + B[91]*C[126] + B[106]*C[127] + B[121]*C[128] + B[136]*C[129] + B[151]*C[130] + B[166]*C[131] + B[181]*C[132] + B[196]*C[133] + B[211]*C[134]; \
167829a97285SShri Abhyankar     A[122] -= B[2]*C[120] + B[17]*C[121] + B[32]*C[122] + B[47]*C[123] + B[62]*C[124] + B[77]*C[125] + B[92]*C[126] + B[107]*C[127] + B[122]*C[128] + B[137]*C[129] + B[152]*C[130] + B[167]*C[131] + B[182]*C[132] + B[197]*C[133] + B[212]*C[134]; \
167929a97285SShri Abhyankar     A[123] -= B[3]*C[120] + B[18]*C[121] + B[33]*C[122] + B[48]*C[123] + B[63]*C[124] + B[78]*C[125] + B[93]*C[126] + B[108]*C[127] + B[123]*C[128] + B[138]*C[129] + B[153]*C[130] + B[168]*C[131] + B[183]*C[132] + B[198]*C[133] + B[213]*C[134]; \
168029a97285SShri Abhyankar     A[124] -= B[4]*C[120] + B[19]*C[121] + B[34]*C[122] + B[49]*C[123] + B[64]*C[124] + B[79]*C[125] + B[94]*C[126] + B[109]*C[127] + B[124]*C[128] + B[139]*C[129] + B[154]*C[130] + B[169]*C[131] + B[184]*C[132] + B[199]*C[133] + B[214]*C[134]; \
168129a97285SShri Abhyankar     A[125] -= B[5]*C[120] + B[20]*C[121] + B[35]*C[122] + B[50]*C[123] + B[65]*C[124] + B[80]*C[125] + B[95]*C[126] + B[110]*C[127] + B[125]*C[128] + B[140]*C[129] + B[155]*C[130] + B[170]*C[131] + B[185]*C[132] + B[200]*C[133] + B[215]*C[134]; \
168229a97285SShri Abhyankar     A[126] -= B[6]*C[120] + B[21]*C[121] + B[36]*C[122] + B[51]*C[123] + B[66]*C[124] + B[81]*C[125] + B[96]*C[126] + B[111]*C[127] + B[126]*C[128] + B[141]*C[129] + B[156]*C[130] + B[171]*C[131] + B[186]*C[132] + B[201]*C[133] + B[216]*C[134]; \
168329a97285SShri Abhyankar     A[127] -= B[7]*C[120] + B[22]*C[121] + B[37]*C[122] + B[52]*C[123] + B[67]*C[124] + B[82]*C[125] + B[97]*C[126] + B[112]*C[127] + B[127]*C[128] + B[142]*C[129] + B[157]*C[130] + B[172]*C[131] + B[187]*C[132] + B[202]*C[133] + B[217]*C[134]; \
168429a97285SShri Abhyankar     A[128] -= B[8]*C[120] + B[23]*C[121] + B[38]*C[122] + B[53]*C[123] + B[68]*C[124] + B[83]*C[125] + B[98]*C[126] + B[113]*C[127] + B[128]*C[128] + B[143]*C[129] + B[158]*C[130] + B[173]*C[131] + B[188]*C[132] + B[203]*C[133] + B[218]*C[134]; \
168529a97285SShri Abhyankar     A[129] -= B[9]*C[120] + B[24]*C[121] + B[39]*C[122] + B[54]*C[123] + B[69]*C[124] + B[84]*C[125] + B[99]*C[126] + B[114]*C[127] + B[129]*C[128] + B[144]*C[129] + B[159]*C[130] + B[174]*C[131] + B[189]*C[132] + B[204]*C[133] + B[219]*C[134]; \
168629a97285SShri Abhyankar     A[130] -= B[10]*C[120] + B[25]*C[121] + B[40]*C[122] + B[55]*C[123] + B[70]*C[124] + B[85]*C[125] + B[100]*C[126] + B[115]*C[127] + B[130]*C[128] + B[145]*C[129] + B[160]*C[130] + B[175]*C[131] + B[190]*C[132] + B[205]*C[133] + B[220]*C[134]; \
168729a97285SShri Abhyankar     A[131] -= B[11]*C[120] + B[26]*C[121] + B[41]*C[122] + B[56]*C[123] + B[71]*C[124] + B[86]*C[125] + B[101]*C[126] + B[116]*C[127] + B[131]*C[128] + B[146]*C[129] + B[161]*C[130] + B[176]*C[131] + B[191]*C[132] + B[206]*C[133] + B[221]*C[134]; \
168829a97285SShri Abhyankar     A[132] -= B[12]*C[120] + B[27]*C[121] + B[42]*C[122] + B[57]*C[123] + B[72]*C[124] + B[87]*C[125] + B[102]*C[126] + B[117]*C[127] + B[132]*C[128] + B[147]*C[129] + B[162]*C[130] + B[177]*C[131] + B[192]*C[132] + B[207]*C[133] + B[222]*C[134]; \
168929a97285SShri Abhyankar     A[133] -= B[13]*C[120] + B[28]*C[121] + B[43]*C[122] + B[58]*C[123] + B[73]*C[124] + B[88]*C[125] + B[103]*C[126] + B[118]*C[127] + B[133]*C[128] + B[148]*C[129] + B[163]*C[130] + B[178]*C[131] + B[193]*C[132] + B[208]*C[133] + B[223]*C[134]; \
169029a97285SShri Abhyankar     A[134] -= B[14]*C[120] + B[29]*C[121] + B[44]*C[122] + B[59]*C[123] + B[74]*C[124] + B[89]*C[125] + B[104]*C[126] + B[119]*C[127] + B[134]*C[128] + B[149]*C[129] + B[164]*C[130] + B[179]*C[131] + B[194]*C[132] + B[209]*C[133] + B[224]*C[134]; \
169129a97285SShri Abhyankar     A[135] -= B[0]*C[135] + B[15]*C[136] + B[30]*C[137] + B[45]*C[138] + B[60]*C[139] + B[75]*C[140] + B[90]*C[141] + B[105]*C[142] + B[120]*C[143] + B[135]*C[144] + B[150]*C[145] + B[165]*C[146] + B[180]*C[147] + B[195]*C[148] + B[210]*C[149]; \
169229a97285SShri Abhyankar     A[136] -= B[1]*C[135] + B[16]*C[136] + B[31]*C[137] + B[46]*C[138] + B[61]*C[139] + B[76]*C[140] + B[91]*C[141] + B[106]*C[142] + B[121]*C[143] + B[136]*C[144] + B[151]*C[145] + B[166]*C[146] + B[181]*C[147] + B[196]*C[148] + B[211]*C[149]; \
169329a97285SShri Abhyankar     A[137] -= B[2]*C[135] + B[17]*C[136] + B[32]*C[137] + B[47]*C[138] + B[62]*C[139] + B[77]*C[140] + B[92]*C[141] + B[107]*C[142] + B[122]*C[143] + B[137]*C[144] + B[152]*C[145] + B[167]*C[146] + B[182]*C[147] + B[197]*C[148] + B[212]*C[149]; \
169429a97285SShri Abhyankar     A[138] -= B[3]*C[135] + B[18]*C[136] + B[33]*C[137] + B[48]*C[138] + B[63]*C[139] + B[78]*C[140] + B[93]*C[141] + B[108]*C[142] + B[123]*C[143] + B[138]*C[144] + B[153]*C[145] + B[168]*C[146] + B[183]*C[147] + B[198]*C[148] + B[213]*C[149]; \
169529a97285SShri Abhyankar     A[139] -= B[4]*C[135] + B[19]*C[136] + B[34]*C[137] + B[49]*C[138] + B[64]*C[139] + B[79]*C[140] + B[94]*C[141] + B[109]*C[142] + B[124]*C[143] + B[139]*C[144] + B[154]*C[145] + B[169]*C[146] + B[184]*C[147] + B[199]*C[148] + B[214]*C[149]; \
169629a97285SShri Abhyankar     A[140] -= B[5]*C[135] + B[20]*C[136] + B[35]*C[137] + B[50]*C[138] + B[65]*C[139] + B[80]*C[140] + B[95]*C[141] + B[110]*C[142] + B[125]*C[143] + B[140]*C[144] + B[155]*C[145] + B[170]*C[146] + B[185]*C[147] + B[200]*C[148] + B[215]*C[149]; \
169729a97285SShri Abhyankar     A[141] -= B[6]*C[135] + B[21]*C[136] + B[36]*C[137] + B[51]*C[138] + B[66]*C[139] + B[81]*C[140] + B[96]*C[141] + B[111]*C[142] + B[126]*C[143] + B[141]*C[144] + B[156]*C[145] + B[171]*C[146] + B[186]*C[147] + B[201]*C[148] + B[216]*C[149]; \
169829a97285SShri Abhyankar     A[142] -= B[7]*C[135] + B[22]*C[136] + B[37]*C[137] + B[52]*C[138] + B[67]*C[139] + B[82]*C[140] + B[97]*C[141] + B[112]*C[142] + B[127]*C[143] + B[142]*C[144] + B[157]*C[145] + B[172]*C[146] + B[187]*C[147] + B[202]*C[148] + B[217]*C[149]; \
169929a97285SShri Abhyankar     A[143] -= B[8]*C[135] + B[23]*C[136] + B[38]*C[137] + B[53]*C[138] + B[68]*C[139] + B[83]*C[140] + B[98]*C[141] + B[113]*C[142] + B[128]*C[143] + B[143]*C[144] + B[158]*C[145] + B[173]*C[146] + B[188]*C[147] + B[203]*C[148] + B[218]*C[149]; \
170029a97285SShri Abhyankar     A[144] -= B[9]*C[135] + B[24]*C[136] + B[39]*C[137] + B[54]*C[138] + B[69]*C[139] + B[84]*C[140] + B[99]*C[141] + B[114]*C[142] + B[129]*C[143] + B[144]*C[144] + B[159]*C[145] + B[174]*C[146] + B[189]*C[147] + B[204]*C[148] + B[219]*C[149]; \
170129a97285SShri Abhyankar     A[145] -= B[10]*C[135] + B[25]*C[136] + B[40]*C[137] + B[55]*C[138] + B[70]*C[139] + B[85]*C[140] + B[100]*C[141] + B[115]*C[142] + B[130]*C[143] + B[145]*C[144] + B[160]*C[145] + B[175]*C[146] + B[190]*C[147] + B[205]*C[148] + B[220]*C[149]; \
170229a97285SShri Abhyankar     A[146] -= B[11]*C[135] + B[26]*C[136] + B[41]*C[137] + B[56]*C[138] + B[71]*C[139] + B[86]*C[140] + B[101]*C[141] + B[116]*C[142] + B[131]*C[143] + B[146]*C[144] + B[161]*C[145] + B[176]*C[146] + B[191]*C[147] + B[206]*C[148] + B[221]*C[149]; \
170329a97285SShri Abhyankar     A[147] -= B[12]*C[135] + B[27]*C[136] + B[42]*C[137] + B[57]*C[138] + B[72]*C[139] + B[87]*C[140] + B[102]*C[141] + B[117]*C[142] + B[132]*C[143] + B[147]*C[144] + B[162]*C[145] + B[177]*C[146] + B[192]*C[147] + B[207]*C[148] + B[222]*C[149]; \
170429a97285SShri Abhyankar     A[148] -= B[13]*C[135] + B[28]*C[136] + B[43]*C[137] + B[58]*C[138] + B[73]*C[139] + B[88]*C[140] + B[103]*C[141] + B[118]*C[142] + B[133]*C[143] + B[148]*C[144] + B[163]*C[145] + B[178]*C[146] + B[193]*C[147] + B[208]*C[148] + B[223]*C[149]; \
170529a97285SShri Abhyankar     A[149] -= B[14]*C[135] + B[29]*C[136] + B[44]*C[137] + B[59]*C[138] + B[74]*C[139] + B[89]*C[140] + B[104]*C[141] + B[119]*C[142] + B[134]*C[143] + B[149]*C[144] + B[164]*C[145] + B[179]*C[146] + B[194]*C[147] + B[209]*C[148] + B[224]*C[149]; \
170629a97285SShri Abhyankar     A[150] -= B[0]*C[150] + B[15]*C[151] + B[30]*C[152] + B[45]*C[153] + B[60]*C[154] + B[75]*C[155] + B[90]*C[156] + B[105]*C[157] + B[120]*C[158] + B[135]*C[159] + B[150]*C[160] + B[165]*C[161] + B[180]*C[162] + B[195]*C[163] + B[210]*C[164]; \
170729a97285SShri Abhyankar     A[151] -= B[1]*C[150] + B[16]*C[151] + B[31]*C[152] + B[46]*C[153] + B[61]*C[154] + B[76]*C[155] + B[91]*C[156] + B[106]*C[157] + B[121]*C[158] + B[136]*C[159] + B[151]*C[160] + B[166]*C[161] + B[181]*C[162] + B[196]*C[163] + B[211]*C[164]; \
170829a97285SShri Abhyankar     A[152] -= B[2]*C[150] + B[17]*C[151] + B[32]*C[152] + B[47]*C[153] + B[62]*C[154] + B[77]*C[155] + B[92]*C[156] + B[107]*C[157] + B[122]*C[158] + B[137]*C[159] + B[152]*C[160] + B[167]*C[161] + B[182]*C[162] + B[197]*C[163] + B[212]*C[164]; \
170929a97285SShri Abhyankar     A[153] -= B[3]*C[150] + B[18]*C[151] + B[33]*C[152] + B[48]*C[153] + B[63]*C[154] + B[78]*C[155] + B[93]*C[156] + B[108]*C[157] + B[123]*C[158] + B[138]*C[159] + B[153]*C[160] + B[168]*C[161] + B[183]*C[162] + B[198]*C[163] + B[213]*C[164]; \
171029a97285SShri Abhyankar     A[154] -= B[4]*C[150] + B[19]*C[151] + B[34]*C[152] + B[49]*C[153] + B[64]*C[154] + B[79]*C[155] + B[94]*C[156] + B[109]*C[157] + B[124]*C[158] + B[139]*C[159] + B[154]*C[160] + B[169]*C[161] + B[184]*C[162] + B[199]*C[163] + B[214]*C[164]; \
171129a97285SShri Abhyankar     A[155] -= B[5]*C[150] + B[20]*C[151] + B[35]*C[152] + B[50]*C[153] + B[65]*C[154] + B[80]*C[155] + B[95]*C[156] + B[110]*C[157] + B[125]*C[158] + B[140]*C[159] + B[155]*C[160] + B[170]*C[161] + B[185]*C[162] + B[200]*C[163] + B[215]*C[164]; \
171229a97285SShri Abhyankar     A[156] -= B[6]*C[150] + B[21]*C[151] + B[36]*C[152] + B[51]*C[153] + B[66]*C[154] + B[81]*C[155] + B[96]*C[156] + B[111]*C[157] + B[126]*C[158] + B[141]*C[159] + B[156]*C[160] + B[171]*C[161] + B[186]*C[162] + B[201]*C[163] + B[216]*C[164]; \
171329a97285SShri Abhyankar     A[157] -= B[7]*C[150] + B[22]*C[151] + B[37]*C[152] + B[52]*C[153] + B[67]*C[154] + B[82]*C[155] + B[97]*C[156] + B[112]*C[157] + B[127]*C[158] + B[142]*C[159] + B[157]*C[160] + B[172]*C[161] + B[187]*C[162] + B[202]*C[163] + B[217]*C[164]; \
171429a97285SShri Abhyankar     A[158] -= B[8]*C[150] + B[23]*C[151] + B[38]*C[152] + B[53]*C[153] + B[68]*C[154] + B[83]*C[155] + B[98]*C[156] + B[113]*C[157] + B[128]*C[158] + B[143]*C[159] + B[158]*C[160] + B[173]*C[161] + B[188]*C[162] + B[203]*C[163] + B[218]*C[164]; \
171529a97285SShri Abhyankar     A[159] -= B[9]*C[150] + B[24]*C[151] + B[39]*C[152] + B[54]*C[153] + B[69]*C[154] + B[84]*C[155] + B[99]*C[156] + B[114]*C[157] + B[129]*C[158] + B[144]*C[159] + B[159]*C[160] + B[174]*C[161] + B[189]*C[162] + B[204]*C[163] + B[219]*C[164]; \
171629a97285SShri Abhyankar     A[160] -= B[10]*C[150] + B[25]*C[151] + B[40]*C[152] + B[55]*C[153] + B[70]*C[154] + B[85]*C[155] + B[100]*C[156] + B[115]*C[157] + B[130]*C[158] + B[145]*C[159] + B[160]*C[160] + B[175]*C[161] + B[190]*C[162] + B[205]*C[163] + B[220]*C[164]; \
171729a97285SShri Abhyankar     A[161] -= B[11]*C[150] + B[26]*C[151] + B[41]*C[152] + B[56]*C[153] + B[71]*C[154] + B[86]*C[155] + B[101]*C[156] + B[116]*C[157] + B[131]*C[158] + B[146]*C[159] + B[161]*C[160] + B[176]*C[161] + B[191]*C[162] + B[206]*C[163] + B[221]*C[164]; \
171829a97285SShri Abhyankar     A[162] -= B[12]*C[150] + B[27]*C[151] + B[42]*C[152] + B[57]*C[153] + B[72]*C[154] + B[87]*C[155] + B[102]*C[156] + B[117]*C[157] + B[132]*C[158] + B[147]*C[159] + B[162]*C[160] + B[177]*C[161] + B[192]*C[162] + B[207]*C[163] + B[222]*C[164]; \
171929a97285SShri Abhyankar     A[163] -= B[13]*C[150] + B[28]*C[151] + B[43]*C[152] + B[58]*C[153] + B[73]*C[154] + B[88]*C[155] + B[103]*C[156] + B[118]*C[157] + B[133]*C[158] + B[148]*C[159] + B[163]*C[160] + B[178]*C[161] + B[193]*C[162] + B[208]*C[163] + B[223]*C[164]; \
172029a97285SShri Abhyankar     A[164] -= B[14]*C[150] + B[29]*C[151] + B[44]*C[152] + B[59]*C[153] + B[74]*C[154] + B[89]*C[155] + B[104]*C[156] + B[119]*C[157] + B[134]*C[158] + B[149]*C[159] + B[164]*C[160] + B[179]*C[161] + B[194]*C[162] + B[209]*C[163] + B[224]*C[164]; \
172129a97285SShri Abhyankar     A[165] -= B[0]*C[165] + B[15]*C[166] + B[30]*C[167] + B[45]*C[168] + B[60]*C[169] + B[75]*C[170] + B[90]*C[171] + B[105]*C[172] + B[120]*C[173] + B[135]*C[174] + B[150]*C[175] + B[165]*C[176] + B[180]*C[177] + B[195]*C[178] + B[210]*C[179]; \
172229a97285SShri Abhyankar     A[166] -= B[1]*C[165] + B[16]*C[166] + B[31]*C[167] + B[46]*C[168] + B[61]*C[169] + B[76]*C[170] + B[91]*C[171] + B[106]*C[172] + B[121]*C[173] + B[136]*C[174] + B[151]*C[175] + B[166]*C[176] + B[181]*C[177] + B[196]*C[178] + B[211]*C[179]; \
172329a97285SShri Abhyankar     A[167] -= B[2]*C[165] + B[17]*C[166] + B[32]*C[167] + B[47]*C[168] + B[62]*C[169] + B[77]*C[170] + B[92]*C[171] + B[107]*C[172] + B[122]*C[173] + B[137]*C[174] + B[152]*C[175] + B[167]*C[176] + B[182]*C[177] + B[197]*C[178] + B[212]*C[179]; \
172429a97285SShri Abhyankar     A[168] -= B[3]*C[165] + B[18]*C[166] + B[33]*C[167] + B[48]*C[168] + B[63]*C[169] + B[78]*C[170] + B[93]*C[171] + B[108]*C[172] + B[123]*C[173] + B[138]*C[174] + B[153]*C[175] + B[168]*C[176] + B[183]*C[177] + B[198]*C[178] + B[213]*C[179]; \
172529a97285SShri Abhyankar     A[169] -= B[4]*C[165] + B[19]*C[166] + B[34]*C[167] + B[49]*C[168] + B[64]*C[169] + B[79]*C[170] + B[94]*C[171] + B[109]*C[172] + B[124]*C[173] + B[139]*C[174] + B[154]*C[175] + B[169]*C[176] + B[184]*C[177] + B[199]*C[178] + B[214]*C[179]; \
172629a97285SShri Abhyankar     A[170] -= B[5]*C[165] + B[20]*C[166] + B[35]*C[167] + B[50]*C[168] + B[65]*C[169] + B[80]*C[170] + B[95]*C[171] + B[110]*C[172] + B[125]*C[173] + B[140]*C[174] + B[155]*C[175] + B[170]*C[176] + B[185]*C[177] + B[200]*C[178] + B[215]*C[179]; \
172729a97285SShri Abhyankar     A[171] -= B[6]*C[165] + B[21]*C[166] + B[36]*C[167] + B[51]*C[168] + B[66]*C[169] + B[81]*C[170] + B[96]*C[171] + B[111]*C[172] + B[126]*C[173] + B[141]*C[174] + B[156]*C[175] + B[171]*C[176] + B[186]*C[177] + B[201]*C[178] + B[216]*C[179]; \
172829a97285SShri Abhyankar     A[172] -= B[7]*C[165] + B[22]*C[166] + B[37]*C[167] + B[52]*C[168] + B[67]*C[169] + B[82]*C[170] + B[97]*C[171] + B[112]*C[172] + B[127]*C[173] + B[142]*C[174] + B[157]*C[175] + B[172]*C[176] + B[187]*C[177] + B[202]*C[178] + B[217]*C[179]; \
172929a97285SShri Abhyankar     A[173] -= B[8]*C[165] + B[23]*C[166] + B[38]*C[167] + B[53]*C[168] + B[68]*C[169] + B[83]*C[170] + B[98]*C[171] + B[113]*C[172] + B[128]*C[173] + B[143]*C[174] + B[158]*C[175] + B[173]*C[176] + B[188]*C[177] + B[203]*C[178] + B[218]*C[179]; \
173029a97285SShri Abhyankar     A[174] -= B[9]*C[165] + B[24]*C[166] + B[39]*C[167] + B[54]*C[168] + B[69]*C[169] + B[84]*C[170] + B[99]*C[171] + B[114]*C[172] + B[129]*C[173] + B[144]*C[174] + B[159]*C[175] + B[174]*C[176] + B[189]*C[177] + B[204]*C[178] + B[219]*C[179]; \
173129a97285SShri Abhyankar     A[175] -= B[10]*C[165] + B[25]*C[166] + B[40]*C[167] + B[55]*C[168] + B[70]*C[169] + B[85]*C[170] + B[100]*C[171] + B[115]*C[172] + B[130]*C[173] + B[145]*C[174] + B[160]*C[175] + B[175]*C[176] + B[190]*C[177] + B[205]*C[178] + B[220]*C[179]; \
173229a97285SShri Abhyankar     A[176] -= B[11]*C[165] + B[26]*C[166] + B[41]*C[167] + B[56]*C[168] + B[71]*C[169] + B[86]*C[170] + B[101]*C[171] + B[116]*C[172] + B[131]*C[173] + B[146]*C[174] + B[161]*C[175] + B[176]*C[176] + B[191]*C[177] + B[206]*C[178] + B[221]*C[179]; \
173329a97285SShri Abhyankar     A[177] -= B[12]*C[165] + B[27]*C[166] + B[42]*C[167] + B[57]*C[168] + B[72]*C[169] + B[87]*C[170] + B[102]*C[171] + B[117]*C[172] + B[132]*C[173] + B[147]*C[174] + B[162]*C[175] + B[177]*C[176] + B[192]*C[177] + B[207]*C[178] + B[222]*C[179]; \
173429a97285SShri Abhyankar     A[178] -= B[13]*C[165] + B[28]*C[166] + B[43]*C[167] + B[58]*C[168] + B[73]*C[169] + B[88]*C[170] + B[103]*C[171] + B[118]*C[172] + B[133]*C[173] + B[148]*C[174] + B[163]*C[175] + B[178]*C[176] + B[193]*C[177] + B[208]*C[178] + B[223]*C[179]; \
173529a97285SShri Abhyankar     A[179] -= B[14]*C[165] + B[29]*C[166] + B[44]*C[167] + B[59]*C[168] + B[74]*C[169] + B[89]*C[170] + B[104]*C[171] + B[119]*C[172] + B[134]*C[173] + B[149]*C[174] + B[164]*C[175] + B[179]*C[176] + B[194]*C[177] + B[209]*C[178] + B[224]*C[179]; \
173629a97285SShri Abhyankar     A[180] -= B[0]*C[180] + B[15]*C[181] + B[30]*C[182] + B[45]*C[183] + B[60]*C[184] + B[75]*C[185] + B[90]*C[186] + B[105]*C[187] + B[120]*C[188] + B[135]*C[189] + B[150]*C[190] + B[165]*C[191] + B[180]*C[192] + B[195]*C[193] + B[210]*C[194]; \
173729a97285SShri Abhyankar     A[181] -= B[1]*C[180] + B[16]*C[181] + B[31]*C[182] + B[46]*C[183] + B[61]*C[184] + B[76]*C[185] + B[91]*C[186] + B[106]*C[187] + B[121]*C[188] + B[136]*C[189] + B[151]*C[190] + B[166]*C[191] + B[181]*C[192] + B[196]*C[193] + B[211]*C[194]; \
173829a97285SShri Abhyankar     A[182] -= B[2]*C[180] + B[17]*C[181] + B[32]*C[182] + B[47]*C[183] + B[62]*C[184] + B[77]*C[185] + B[92]*C[186] + B[107]*C[187] + B[122]*C[188] + B[137]*C[189] + B[152]*C[190] + B[167]*C[191] + B[182]*C[192] + B[197]*C[193] + B[212]*C[194]; \
173929a97285SShri Abhyankar     A[183] -= B[3]*C[180] + B[18]*C[181] + B[33]*C[182] + B[48]*C[183] + B[63]*C[184] + B[78]*C[185] + B[93]*C[186] + B[108]*C[187] + B[123]*C[188] + B[138]*C[189] + B[153]*C[190] + B[168]*C[191] + B[183]*C[192] + B[198]*C[193] + B[213]*C[194]; \
174029a97285SShri Abhyankar     A[184] -= B[4]*C[180] + B[19]*C[181] + B[34]*C[182] + B[49]*C[183] + B[64]*C[184] + B[79]*C[185] + B[94]*C[186] + B[109]*C[187] + B[124]*C[188] + B[139]*C[189] + B[154]*C[190] + B[169]*C[191] + B[184]*C[192] + B[199]*C[193] + B[214]*C[194]; \
174129a97285SShri Abhyankar     A[185] -= B[5]*C[180] + B[20]*C[181] + B[35]*C[182] + B[50]*C[183] + B[65]*C[184] + B[80]*C[185] + B[95]*C[186] + B[110]*C[187] + B[125]*C[188] + B[140]*C[189] + B[155]*C[190] + B[170]*C[191] + B[185]*C[192] + B[200]*C[193] + B[215]*C[194]; \
174229a97285SShri Abhyankar     A[186] -= B[6]*C[180] + B[21]*C[181] + B[36]*C[182] + B[51]*C[183] + B[66]*C[184] + B[81]*C[185] + B[96]*C[186] + B[111]*C[187] + B[126]*C[188] + B[141]*C[189] + B[156]*C[190] + B[171]*C[191] + B[186]*C[192] + B[201]*C[193] + B[216]*C[194]; \
174329a97285SShri Abhyankar     A[187] -= B[7]*C[180] + B[22]*C[181] + B[37]*C[182] + B[52]*C[183] + B[67]*C[184] + B[82]*C[185] + B[97]*C[186] + B[112]*C[187] + B[127]*C[188] + B[142]*C[189] + B[157]*C[190] + B[172]*C[191] + B[187]*C[192] + B[202]*C[193] + B[217]*C[194]; \
174429a97285SShri Abhyankar     A[188] -= B[8]*C[180] + B[23]*C[181] + B[38]*C[182] + B[53]*C[183] + B[68]*C[184] + B[83]*C[185] + B[98]*C[186] + B[113]*C[187] + B[128]*C[188] + B[143]*C[189] + B[158]*C[190] + B[173]*C[191] + B[188]*C[192] + B[203]*C[193] + B[218]*C[194]; \
174529a97285SShri Abhyankar     A[189] -= B[9]*C[180] + B[24]*C[181] + B[39]*C[182] + B[54]*C[183] + B[69]*C[184] + B[84]*C[185] + B[99]*C[186] + B[114]*C[187] + B[129]*C[188] + B[144]*C[189] + B[159]*C[190] + B[174]*C[191] + B[189]*C[192] + B[204]*C[193] + B[219]*C[194]; \
174629a97285SShri Abhyankar     A[190] -= B[10]*C[180] + B[25]*C[181] + B[40]*C[182] + B[55]*C[183] + B[70]*C[184] + B[85]*C[185] + B[100]*C[186] + B[115]*C[187] + B[130]*C[188] + B[145]*C[189] + B[160]*C[190] + B[175]*C[191] + B[190]*C[192] + B[205]*C[193] + B[220]*C[194]; \
174729a97285SShri Abhyankar     A[191] -= B[11]*C[180] + B[26]*C[181] + B[41]*C[182] + B[56]*C[183] + B[71]*C[184] + B[86]*C[185] + B[101]*C[186] + B[116]*C[187] + B[131]*C[188] + B[146]*C[189] + B[161]*C[190] + B[176]*C[191] + B[191]*C[192] + B[206]*C[193] + B[221]*C[194]; \
174829a97285SShri Abhyankar     A[192] -= B[12]*C[180] + B[27]*C[181] + B[42]*C[182] + B[57]*C[183] + B[72]*C[184] + B[87]*C[185] + B[102]*C[186] + B[117]*C[187] + B[132]*C[188] + B[147]*C[189] + B[162]*C[190] + B[177]*C[191] + B[192]*C[192] + B[207]*C[193] + B[222]*C[194]; \
174929a97285SShri Abhyankar     A[193] -= B[13]*C[180] + B[28]*C[181] + B[43]*C[182] + B[58]*C[183] + B[73]*C[184] + B[88]*C[185] + B[103]*C[186] + B[118]*C[187] + B[133]*C[188] + B[148]*C[189] + B[163]*C[190] + B[178]*C[191] + B[193]*C[192] + B[208]*C[193] + B[223]*C[194]; \
175029a97285SShri Abhyankar     A[194] -= B[14]*C[180] + B[29]*C[181] + B[44]*C[182] + B[59]*C[183] + B[74]*C[184] + B[89]*C[185] + B[104]*C[186] + B[119]*C[187] + B[134]*C[188] + B[149]*C[189] + B[164]*C[190] + B[179]*C[191] + B[194]*C[192] + B[209]*C[193] + B[224]*C[194]; \
175129a97285SShri Abhyankar     A[195] -= B[0]*C[195] + B[15]*C[196] + B[30]*C[197] + B[45]*C[198] + B[60]*C[199] + B[75]*C[200] + B[90]*C[201] + B[105]*C[202] + B[120]*C[203] + B[135]*C[204] + B[150]*C[205] + B[165]*C[206] + B[180]*C[207] + B[195]*C[208] + B[210]*C[209]; \
175229a97285SShri Abhyankar     A[196] -= B[1]*C[195] + B[16]*C[196] + B[31]*C[197] + B[46]*C[198] + B[61]*C[199] + B[76]*C[200] + B[91]*C[201] + B[106]*C[202] + B[121]*C[203] + B[136]*C[204] + B[151]*C[205] + B[166]*C[206] + B[181]*C[207] + B[196]*C[208] + B[211]*C[209]; \
175329a97285SShri Abhyankar     A[197] -= B[2]*C[195] + B[17]*C[196] + B[32]*C[197] + B[47]*C[198] + B[62]*C[199] + B[77]*C[200] + B[92]*C[201] + B[107]*C[202] + B[122]*C[203] + B[137]*C[204] + B[152]*C[205] + B[167]*C[206] + B[182]*C[207] + B[197]*C[208] + B[212]*C[209]; \
175429a97285SShri Abhyankar     A[198] -= B[3]*C[195] + B[18]*C[196] + B[33]*C[197] + B[48]*C[198] + B[63]*C[199] + B[78]*C[200] + B[93]*C[201] + B[108]*C[202] + B[123]*C[203] + B[138]*C[204] + B[153]*C[205] + B[168]*C[206] + B[183]*C[207] + B[198]*C[208] + B[213]*C[209]; \
175529a97285SShri Abhyankar     A[199] -= B[4]*C[195] + B[19]*C[196] + B[34]*C[197] + B[49]*C[198] + B[64]*C[199] + B[79]*C[200] + B[94]*C[201] + B[109]*C[202] + B[124]*C[203] + B[139]*C[204] + B[154]*C[205] + B[169]*C[206] + B[184]*C[207] + B[199]*C[208] + B[214]*C[209]; \
175629a97285SShri Abhyankar     A[200] -= B[5]*C[195] + B[20]*C[196] + B[35]*C[197] + B[50]*C[198] + B[65]*C[199] + B[80]*C[200] + B[95]*C[201] + B[110]*C[202] + B[125]*C[203] + B[140]*C[204] + B[155]*C[205] + B[170]*C[206] + B[185]*C[207] + B[200]*C[208] + B[215]*C[209]; \
175729a97285SShri Abhyankar     A[201] -= B[6]*C[195] + B[21]*C[196] + B[36]*C[197] + B[51]*C[198] + B[66]*C[199] + B[81]*C[200] + B[96]*C[201] + B[111]*C[202] + B[126]*C[203] + B[141]*C[204] + B[156]*C[205] + B[171]*C[206] + B[186]*C[207] + B[201]*C[208] + B[216]*C[209]; \
175829a97285SShri Abhyankar     A[202] -= B[7]*C[195] + B[22]*C[196] + B[37]*C[197] + B[52]*C[198] + B[67]*C[199] + B[82]*C[200] + B[97]*C[201] + B[112]*C[202] + B[127]*C[203] + B[142]*C[204] + B[157]*C[205] + B[172]*C[206] + B[187]*C[207] + B[202]*C[208] + B[217]*C[209]; \
175929a97285SShri Abhyankar     A[203] -= B[8]*C[195] + B[23]*C[196] + B[38]*C[197] + B[53]*C[198] + B[68]*C[199] + B[83]*C[200] + B[98]*C[201] + B[113]*C[202] + B[128]*C[203] + B[143]*C[204] + B[158]*C[205] + B[173]*C[206] + B[188]*C[207] + B[203]*C[208] + B[218]*C[209]; \
176029a97285SShri Abhyankar     A[204] -= B[9]*C[195] + B[24]*C[196] + B[39]*C[197] + B[54]*C[198] + B[69]*C[199] + B[84]*C[200] + B[99]*C[201] + B[114]*C[202] + B[129]*C[203] + B[144]*C[204] + B[159]*C[205] + B[174]*C[206] + B[189]*C[207] + B[204]*C[208] + B[219]*C[209]; \
176129a97285SShri Abhyankar     A[205] -= B[10]*C[195] + B[25]*C[196] + B[40]*C[197] + B[55]*C[198] + B[70]*C[199] + B[85]*C[200] + B[100]*C[201] + B[115]*C[202] + B[130]*C[203] + B[145]*C[204] + B[160]*C[205] + B[175]*C[206] + B[190]*C[207] + B[205]*C[208] + B[220]*C[209]; \
176229a97285SShri Abhyankar     A[206] -= B[11]*C[195] + B[26]*C[196] + B[41]*C[197] + B[56]*C[198] + B[71]*C[199] + B[86]*C[200] + B[101]*C[201] + B[116]*C[202] + B[131]*C[203] + B[146]*C[204] + B[161]*C[205] + B[176]*C[206] + B[191]*C[207] + B[206]*C[208] + B[221]*C[209]; \
176329a97285SShri Abhyankar     A[207] -= B[12]*C[195] + B[27]*C[196] + B[42]*C[197] + B[57]*C[198] + B[72]*C[199] + B[87]*C[200] + B[102]*C[201] + B[117]*C[202] + B[132]*C[203] + B[147]*C[204] + B[162]*C[205] + B[177]*C[206] + B[192]*C[207] + B[207]*C[208] + B[222]*C[209]; \
176429a97285SShri Abhyankar     A[208] -= B[13]*C[195] + B[28]*C[196] + B[43]*C[197] + B[58]*C[198] + B[73]*C[199] + B[88]*C[200] + B[103]*C[201] + B[118]*C[202] + B[133]*C[203] + B[148]*C[204] + B[163]*C[205] + B[178]*C[206] + B[193]*C[207] + B[208]*C[208] + B[223]*C[209]; \
176529a97285SShri Abhyankar     A[209] -= B[14]*C[195] + B[29]*C[196] + B[44]*C[197] + B[59]*C[198] + B[74]*C[199] + B[89]*C[200] + B[104]*C[201] + B[119]*C[202] + B[134]*C[203] + B[149]*C[204] + B[164]*C[205] + B[179]*C[206] + B[194]*C[207] + B[209]*C[208] + B[224]*C[209]; \
176629a97285SShri Abhyankar     A[210] -= B[0]*C[210] + B[15]*C[211] + B[30]*C[212] + B[45]*C[213] + B[60]*C[214] + B[75]*C[215] + B[90]*C[216] + B[105]*C[217] + B[120]*C[218] + B[135]*C[219] + B[150]*C[220] + B[165]*C[221] + B[180]*C[222] + B[195]*C[223] + B[210]*C[224]; \
176729a97285SShri Abhyankar     A[211] -= B[1]*C[210] + B[16]*C[211] + B[31]*C[212] + B[46]*C[213] + B[61]*C[214] + B[76]*C[215] + B[91]*C[216] + B[106]*C[217] + B[121]*C[218] + B[136]*C[219] + B[151]*C[220] + B[166]*C[221] + B[181]*C[222] + B[196]*C[223] + B[211]*C[224]; \
176829a97285SShri Abhyankar     A[212] -= B[2]*C[210] + B[17]*C[211] + B[32]*C[212] + B[47]*C[213] + B[62]*C[214] + B[77]*C[215] + B[92]*C[216] + B[107]*C[217] + B[122]*C[218] + B[137]*C[219] + B[152]*C[220] + B[167]*C[221] + B[182]*C[222] + B[197]*C[223] + B[212]*C[224]; \
176929a97285SShri Abhyankar     A[213] -= B[3]*C[210] + B[18]*C[211] + B[33]*C[212] + B[48]*C[213] + B[63]*C[214] + B[78]*C[215] + B[93]*C[216] + B[108]*C[217] + B[123]*C[218] + B[138]*C[219] + B[153]*C[220] + B[168]*C[221] + B[183]*C[222] + B[198]*C[223] + B[213]*C[224]; \
177029a97285SShri Abhyankar     A[214] -= B[4]*C[210] + B[19]*C[211] + B[34]*C[212] + B[49]*C[213] + B[64]*C[214] + B[79]*C[215] + B[94]*C[216] + B[109]*C[217] + B[124]*C[218] + B[139]*C[219] + B[154]*C[220] + B[169]*C[221] + B[184]*C[222] + B[199]*C[223] + B[214]*C[224]; \
177129a97285SShri Abhyankar     A[215] -= B[5]*C[210] + B[20]*C[211] + B[35]*C[212] + B[50]*C[213] + B[65]*C[214] + B[80]*C[215] + B[95]*C[216] + B[110]*C[217] + B[125]*C[218] + B[140]*C[219] + B[155]*C[220] + B[170]*C[221] + B[185]*C[222] + B[200]*C[223] + B[215]*C[224]; \
177229a97285SShri Abhyankar     A[216] -= B[6]*C[210] + B[21]*C[211] + B[36]*C[212] + B[51]*C[213] + B[66]*C[214] + B[81]*C[215] + B[96]*C[216] + B[111]*C[217] + B[126]*C[218] + B[141]*C[219] + B[156]*C[220] + B[171]*C[221] + B[186]*C[222] + B[201]*C[223] + B[216]*C[224]; \
177329a97285SShri Abhyankar     A[217] -= B[7]*C[210] + B[22]*C[211] + B[37]*C[212] + B[52]*C[213] + B[67]*C[214] + B[82]*C[215] + B[97]*C[216] + B[112]*C[217] + B[127]*C[218] + B[142]*C[219] + B[157]*C[220] + B[172]*C[221] + B[187]*C[222] + B[202]*C[223] + B[217]*C[224]; \
177429a97285SShri Abhyankar     A[218] -= B[8]*C[210] + B[23]*C[211] + B[38]*C[212] + B[53]*C[213] + B[68]*C[214] + B[83]*C[215] + B[98]*C[216] + B[113]*C[217] + B[128]*C[218] + B[143]*C[219] + B[158]*C[220] + B[173]*C[221] + B[188]*C[222] + B[203]*C[223] + B[218]*C[224]; \
177529a97285SShri Abhyankar     A[219] -= B[9]*C[210] + B[24]*C[211] + B[39]*C[212] + B[54]*C[213] + B[69]*C[214] + B[84]*C[215] + B[99]*C[216] + B[114]*C[217] + B[129]*C[218] + B[144]*C[219] + B[159]*C[220] + B[174]*C[221] + B[189]*C[222] + B[204]*C[223] + B[219]*C[224]; \
177629a97285SShri Abhyankar     A[220] -= B[10]*C[210] + B[25]*C[211] + B[40]*C[212] + B[55]*C[213] + B[70]*C[214] + B[85]*C[215] + B[100]*C[216] + B[115]*C[217] + B[130]*C[218] + B[145]*C[219] + B[160]*C[220] + B[175]*C[221] + B[190]*C[222] + B[205]*C[223] + B[220]*C[224]; \
177729a97285SShri Abhyankar     A[221] -= B[11]*C[210] + B[26]*C[211] + B[41]*C[212] + B[56]*C[213] + B[71]*C[214] + B[86]*C[215] + B[101]*C[216] + B[116]*C[217] + B[131]*C[218] + B[146]*C[219] + B[161]*C[220] + B[176]*C[221] + B[191]*C[222] + B[206]*C[223] + B[221]*C[224]; \
177829a97285SShri Abhyankar     A[222] -= B[12]*C[210] + B[27]*C[211] + B[42]*C[212] + B[57]*C[213] + B[72]*C[214] + B[87]*C[215] + B[102]*C[216] + B[117]*C[217] + B[132]*C[218] + B[147]*C[219] + B[162]*C[220] + B[177]*C[221] + B[192]*C[222] + B[207]*C[223] + B[222]*C[224]; \
177929a97285SShri Abhyankar     A[223] -= B[13]*C[210] + B[28]*C[211] + B[43]*C[212] + B[58]*C[213] + B[73]*C[214] + B[88]*C[215] + B[103]*C[216] + B[118]*C[217] + B[133]*C[218] + B[148]*C[219] + B[163]*C[220] + B[178]*C[221] + B[193]*C[222] + B[208]*C[223] + B[223]*C[224]; \
178029a97285SShri Abhyankar     A[224] -= B[14]*C[210] + B[29]*C[211] + B[44]*C[212] + B[59]*C[213] + B[74]*C[214] + B[89]*C[215] + B[104]*C[216] + B[119]*C[217] + B[134]*C[218] + B[149]*C[219] + B[164]*C[220] + B[179]*C[221] + B[194]*C[222] + B[209]*C[223] + B[224]*C[224]; \
17812b0b2ea7SShri Abhyankar   }
1782bef36659SShri Abhyankar 
17832593348eSBarry Smith #endif
1784