/* 
Copyright Henrik Stewenius, 2005. All Rights Reserved.

Permission to use [*] this software for academic purposes is hereby
granted without fee or royalty, subject to the following conditions.

1. The software is provided "as is" by the copyright holder, with
absolutely no actual or implied warranty of correctness, fitness,
intellectual property ownership, or anything else whatsoever. You use
the software entirely at your own risk. In no event shall the copyright
holder be liable for any direct, indirect or perceived damage whatsoever
connected with the use of this work.

2. The software may not be distributed [*], whether in its original
or modified form, without explicit written consent from the copyright
holder.

3. The copyright holder retains all copyright to the work.

4. Any scholarly work, research or publication making use of this
software must explicitly acknowledge the copyright holder. In the
case of a publication, citation of the work, and author thereof,
titled: 
@PHDTHESIS{stewenius-pdh-2005,
     AUTHOR = {H. Stew\'enius},
     TITLE = {Gr{\"o}bner Basis Methods for Minimal Problems in Computer Vision},
     SCHOOL = {Lund University},
     YEAR = 2005,
     MONTH = APR,
     PDF = {http://www.maths.lth.se/matematiklth/personal/stewe/THESIS/stewenius_phd_2005.pdf}
}
is deemed sufficient acknowledgement.

Permission to use or distribute [*] this software for commercial or
military purposes, or under any conditions not covered by the conditions
1-4 above, is NOT granted. Such permission may be obtained subject to
explicit prior written consent from the copyright holder.

[*] `Use' denotes any use whatsoever including downloading, compilation,
execution and modification. `Distribution' includes any distribution of
the software and any derived works such as object files, executable
programs and libraries.



@PHDTHESIS{stewenius-pdh-2005,
     AUTHOR = {H. Stew\'enius},
     TITLE = {Gr{\"o}bner Basis Methods for Minimal Problems in Computer Vision},
     SCHOOL = {Lund University},
     YEAR = 2005,
     MONTH = APR,
     PDF = {http://www.maths.lth.se/matematiklth/personal/stewe/THESIS/stewenius_phd_2005.pdf}
}
*/

#include "mex.h"
void mexFunction(int nlhs, mxArray *plhs[],
                 int nrhs, const mxArray *prhs[])
{
  double *X,*M3;
double x11;
double x112;
double x12;
double x122;
double x13;
double x132;
double x14;
double x142;
double x21;
double x212;
double x22;
double x222;
double x23;
double x232;
double x24;
double x242;
double x31;
double x312;
double x32;
double x322;
double x33;
double x332;
double x34;
double x342;
double x41;
double x412;
double x42;
double x422;
double x43;
double x432;
double x44;
double x442;
double x51;
double x512;
double x52;
double x522;
double x53;
double x532;
double x54;
double x542;
double x61;
double x612;
double x62;
double x622;
double x63;
double x632;
double x64;
double x642;
double x71;
double x712;
double x72;
double x722;
double x73;
double x732;
double x74;
double x742;

 X = mxGetPr( prhs[0] ); 
 plhs[0] = mxCreateDoubleMatrix(35 ,35  , mxREAL);
 M3 = mxGetPr( plhs[0] );


x11= X[0+7*0];
x112= X[0+7*0]*X[0+7*0];
x12= X[0+7*1];
x122= X[0+7*1]*X[0+7*1];
x13= X[0+7*2];
x132= X[0+7*2]*X[0+7*2];
x14= X[0+7*3];
x142= X[0+7*3]*X[0+7*3];
x21= X[1+7*0];
x212= X[1+7*0]*X[1+7*0];
x22= X[1+7*1];
x222= X[1+7*1]*X[1+7*1];
x23= X[1+7*2];
x232= X[1+7*2]*X[1+7*2];
x24= X[1+7*3];
x242= X[1+7*3]*X[1+7*3];
x31= X[2+7*0];
x312= X[2+7*0]*X[2+7*0];
x32= X[2+7*1];
x322= X[2+7*1]*X[2+7*1];
x33= X[2+7*2];
x332= X[2+7*2]*X[2+7*2];
x34= X[2+7*3];
x342= X[2+7*3]*X[2+7*3];
x41= X[3+7*0];
x412= X[3+7*0]*X[3+7*0];
x42= X[3+7*1];
x422= X[3+7*1]*X[3+7*1];
x43= X[3+7*2];
x432= X[3+7*2]*X[3+7*2];
x44= X[3+7*3];
x442= X[3+7*3]*X[3+7*3];
x51= X[4+7*0];
x512= X[4+7*0]*X[4+7*0];
x52= X[4+7*1];
x522= X[4+7*1]*X[4+7*1];
x53= X[4+7*2];
x532= X[4+7*2]*X[4+7*2];
x54= X[4+7*3];
x542= X[4+7*3]*X[4+7*3];
x61= X[5+7*0];
x612= X[5+7*0]*X[5+7*0];
x62= X[5+7*1];
x622= X[5+7*1]*X[5+7*1];
x63= X[5+7*2];
x632= X[5+7*2]*X[5+7*2];
x64= X[5+7*3];
x642= X[5+7*3]*X[5+7*3];
x71= X[6+7*0];
x712= X[6+7*0]*X[6+7*0];
x72= X[6+7*1];
x722= X[6+7*1]*X[6+7*1];
x73= X[6+7*2];
x732= X[6+7*2]*X[6+7*2];
x74= X[6+7*3];
x742= X[6+7*3]*X[6+7*3];


M3[0+35*0] = 2*x51*x71+x61*x71;
M3[0+35*1] = 2*x52*x71+2*x51*x72+x61*x72+x62*x71;
M3[0+35*2] = x62*x72+2*x52*x72;
M3[0+35*3] = 0;
M3[0+35*4] = 2*x51*x73+2*x53*x71+x63*x71+x61*x73;
M3[0+35*5] = x63*x72+2*x53*x72+2*x52*x73+x62*x73;
M3[0+35*6] = 0;
M3[0+35*7] = 2*x53*x73+x63*x73;
M3[0+35*8] = 0;
M3[0+35*9] = 0;
M3[0+35*10] = 2*x51*x74+2*x54*x71+x61*x74+x64*x71;
M3[0+35*11] = x62*x74+x64*x72+2*x52*x74+2*x54*x72;
M3[0+35*12] = 0;
M3[0+35*13] = x64*x73+x63*x74+2*x53*x74+2*x54*x73;
M3[0+35*14] = 0;
M3[0+35*15] = 0;
M3[0+35*16] = 2*x54*x74+x64*x74;
M3[0+35*17] = 0;
M3[0+35*18] = 0;
M3[0+35*19] = 0;
M3[0+35*20] = -8*x41;
M3[0+35*21] = -8*x42;
M3[0+35*22] = 0;
M3[0+35*23] = -8*x43;
M3[0+35*24] = 0;
M3[0+35*25] = 0;
M3[0+35*26] = -8*x44;
M3[0+35*27] = 0;
M3[0+35*28] = 0;
M3[0+35*29] = 0;
M3[0+35*30] = 0;
M3[0+35*31] = 0;
M3[0+35*32] = 0;
M3[0+35*33] = 0;
M3[0+35*34] = 0;
M3[1+35*0] = 0;
M3[1+35*1] = 2*x51*x71+x61*x71;
M3[1+35*2] = 2*x52*x71+2*x51*x72+x61*x72+x62*x71;
M3[1+35*3] = x62*x72+2*x52*x72;
M3[1+35*4] = 0;
M3[1+35*5] = 2*x51*x73+2*x53*x71+x63*x71+x61*x73;
M3[1+35*6] = 2*x52*x73+2*x53*x72+x62*x73+x63*x72;
M3[1+35*7] = 0;
M3[1+35*8] = 2*x53*x73+x63*x73;
M3[1+35*9] = 0;
M3[1+35*10] = 0;
M3[1+35*11] = 2*x51*x74+2*x54*x71+x61*x74+x64*x71;
M3[1+35*12] = 2*x54*x72+2*x52*x74+x62*x74+x64*x72;
M3[1+35*13] = 0;
M3[1+35*14] = 2*x54*x73+2*x53*x74+x64*x73+x63*x74;
M3[1+35*15] = 0;
M3[1+35*16] = 0;
M3[1+35*17] = 2*x54*x74+x64*x74;
M3[1+35*18] = 0;
M3[1+35*19] = 0;
M3[1+35*20] = 0;
M3[1+35*21] = -8*x41;
M3[1+35*22] = -8*x42;
M3[1+35*23] = 0;
M3[1+35*24] = -8*x43;
M3[1+35*25] = 0;
M3[1+35*26] = 0;
M3[1+35*27] = -8*x44;
M3[1+35*28] = 0;
M3[1+35*29] = 0;
M3[1+35*30] = 0;
M3[1+35*31] = 0;
M3[1+35*32] = 0;
M3[1+35*33] = 0;
M3[1+35*34] = 0;
M3[2+35*0] = 0;
M3[2+35*1] = 0;
M3[2+35*2] = 0;
M3[2+35*3] = 0;
M3[2+35*4] = 2*x51*x71+x61*x71;
M3[2+35*5] = x62*x71+2*x52*x71+2*x51*x72+x61*x72;
M3[2+35*6] = 2*x52*x72+x62*x72;
M3[2+35*7] = 2*x51*x73+2*x53*x71+x63*x71+x61*x73;
M3[2+35*8] = 2*x52*x73+2*x53*x72+x62*x73+x63*x72;
M3[2+35*9] = 2*x53*x73+x63*x73;
M3[2+35*10] = 0;
M3[2+35*11] = 0;
M3[2+35*12] = 0;
M3[2+35*13] = 2*x51*x74+2*x54*x71+x61*x74+x64*x71;
M3[2+35*14] = 2*x54*x72+2*x52*x74+x62*x74+x64*x72;
M3[2+35*15] = 2*x54*x73+2*x53*x74+x64*x73+x63*x74;
M3[2+35*16] = 0;
M3[2+35*17] = 0;
M3[2+35*18] = 2*x54*x74+x64*x74;
M3[2+35*19] = 0;
M3[2+35*20] = 0;
M3[2+35*21] = 0;
M3[2+35*22] = 0;
M3[2+35*23] = -8*x41;
M3[2+35*24] = -8*x42;
M3[2+35*25] = -8*x43;
M3[2+35*26] = 0;
M3[2+35*27] = 0;
M3[2+35*28] = -8*x44;
M3[2+35*29] = 0;
M3[2+35*30] = 0;
M3[2+35*31] = 0;
M3[2+35*32] = 0;
M3[2+35*33] = 0;
M3[2+35*34] = 0;
M3[3+35*0] = 0;
M3[3+35*1] = 0;
M3[3+35*2] = 0;
M3[3+35*3] = 0;
M3[3+35*4] = 0;
M3[3+35*5] = 0;
M3[3+35*6] = 0;
M3[3+35*7] = 0;
M3[3+35*8] = 0;
M3[3+35*9] = 0;
M3[3+35*10] = x61*x71+2*x51*x71;
M3[3+35*11] = x62*x71+2*x52*x71+x61*x72+2*x51*x72;
M3[3+35*12] = x62*x72+2*x52*x72;
M3[3+35*13] = x63*x71+x61*x73+2*x51*x73+2*x53*x71;
M3[3+35*14] = x62*x73+2*x52*x73+x63*x72+2*x53*x72;
M3[3+35*15] = x63*x73+2*x53*x73;
M3[3+35*16] = x64*x71+x61*x74+2*x51*x74+2*x54*x71;
M3[3+35*17] = x64*x72+x62*x74+2*x54*x72+2*x52*x74;
M3[3+35*18] = x64*x73+x63*x74+2*x54*x73+2*x53*x74;
M3[3+35*19] = 2*x54*x74+x64*x74;
M3[3+35*20] = 0;
M3[3+35*21] = 0;
M3[3+35*22] = 0;
M3[3+35*23] = 0;
M3[3+35*24] = 0;
M3[3+35*25] = 0;
M3[3+35*26] = -8*x41;
M3[3+35*27] = -8*x42;
M3[3+35*28] = -8*x43;
M3[3+35*29] = -8*x44;
M3[3+35*30] = 0;
M3[3+35*31] = 0;
M3[3+35*32] = 0;
M3[3+35*33] = 0;
M3[3+35*34] = 0;
M3[4+35*0] = 0;
M3[4+35*1] = 0;
M3[4+35*2] = 0;
M3[4+35*3] = 0;
M3[4+35*4] = 0;
M3[4+35*5] = 0;
M3[4+35*6] = 0;
M3[4+35*7] = 0;
M3[4+35*8] = 0;
M3[4+35*9] = 0;
M3[4+35*10] = 0;
M3[4+35*11] = 0;
M3[4+35*12] = 0;
M3[4+35*13] = 0;
M3[4+35*14] = 0;
M3[4+35*15] = 0;
M3[4+35*16] = 0;
M3[4+35*17] = 0;
M3[4+35*18] = 0;
M3[4+35*19] = 0;
M3[4+35*20] = x61*x71+2*x51*x71;
M3[4+35*21] = x62*x71+2*x52*x71+x61*x72+2*x51*x72;
M3[4+35*22] = x62*x72+2*x52*x72;
M3[4+35*23] = x63*x71+x61*x73+2*x51*x73+2*x53*x71;
M3[4+35*24] = x62*x73+2*x52*x73+x63*x72+2*x53*x72;
M3[4+35*25] = x63*x73+2*x53*x73;
M3[4+35*26] = x64*x71+x61*x74+2*x51*x74+2*x54*x71;
M3[4+35*27] = x64*x72+x62*x74+2*x54*x72+2*x52*x74;
M3[4+35*28] = x63*x74+x64*x73+2*x54*x73+2*x53*x74;
M3[4+35*29] = 2*x54*x74+x64*x74;
M3[4+35*30] = -8*x41;
M3[4+35*31] = -8*x42;
M3[4+35*32] = -8*x43;
M3[4+35*33] = -8*x44;
M3[4+35*34] = 0;
M3[5+35*0] = 2*x61*x71+x612;
M3[5+35*1] = 2*x62*x71+2*x61*x72+2*x61*x62;
M3[5+35*2] = x622+2*x62*x72;
M3[5+35*3] = 0;
M3[5+35*4] = 2*x61*x73+2*x63*x71+2*x61*x63;
M3[5+35*5] = 2*x63*x72+2*x62*x63+2*x62*x73;
M3[5+35*6] = 0;
M3[5+35*7] = x632+2*x63*x73;
M3[5+35*8] = 0;
M3[5+35*9] = 0;
M3[5+35*10] = 2*x61*x64+2*x61*x74+2*x64*x71;
M3[5+35*11] = 2*x62*x64+2*x64*x72+2*x62*x74;
M3[5+35*12] = 0;
M3[5+35*13] = 2*x63*x74+2*x63*x64+2*x64*x73;
M3[5+35*14] = 0;
M3[5+35*15] = 0;
M3[5+35*16] = x642+2*x64*x74;
M3[5+35*17] = 0;
M3[5+35*18] = 0;
M3[5+35*19] = 0;
M3[5+35*20] = -8*x41+8*x31+8*x21;
M3[5+35*21] = 8*x32-8*x42+8*x22;
M3[5+35*22] = 0;
M3[5+35*23] = 8*x23+8*x33-8*x43;
M3[5+35*24] = 0;
M3[5+35*25] = 0;
M3[5+35*26] = 8*x34-8*x44+8*x24;
M3[5+35*27] = 0;
M3[5+35*28] = 0;
M3[5+35*29] = 0;
M3[5+35*30] = 0;
M3[5+35*31] = 0;
M3[5+35*32] = 0;
M3[5+35*33] = 0;
M3[5+35*34] = 0;
M3[6+35*0] = 0;
M3[6+35*1] = 2*x61*x71+x612;
M3[6+35*2] = 2*x62*x71+2*x61*x72+2*x61*x62;
M3[6+35*3] = x622+2*x62*x72;
M3[6+35*4] = 0;
M3[6+35*5] = 2*x61*x73+2*x63*x71+2*x61*x63;
M3[6+35*6] = 2*x63*x72+2*x62*x63+2*x62*x73;
M3[6+35*7] = 0;
M3[6+35*8] = x632+2*x63*x73;
M3[6+35*9] = 0;
M3[6+35*10] = 0;
M3[6+35*11] = 2*x61*x64+2*x61*x74+2*x64*x71;
M3[6+35*12] = 2*x62*x64+2*x64*x72+2*x62*x74;
M3[6+35*13] = 0;
M3[6+35*14] = 2*x63*x74+2*x63*x64+2*x64*x73;
M3[6+35*15] = 0;
M3[6+35*16] = 0;
M3[6+35*17] = x642+2*x64*x74;
M3[6+35*18] = 0;
M3[6+35*19] = 0;
M3[6+35*20] = 0;
M3[6+35*21] = -8*x41+8*x31+8*x21;
M3[6+35*22] = 8*x32-8*x42+8*x22;
M3[6+35*23] = 0;
M3[6+35*24] = 8*x33+8*x23-8*x43;
M3[6+35*25] = 0;
M3[6+35*26] = 0;
M3[6+35*27] = 8*x34+8*x24-8*x44;
M3[6+35*28] = 0;
M3[6+35*29] = 0;
M3[6+35*30] = 0;
M3[6+35*31] = 0;
M3[6+35*32] = 0;
M3[6+35*33] = 0;
M3[6+35*34] = 0;
M3[7+35*0] = 0;
M3[7+35*1] = 0;
M3[7+35*2] = 0;
M3[7+35*3] = 0;
M3[7+35*4] = 2*x61*x71+x612;
M3[7+35*5] = 2*x61*x62+2*x61*x72+2*x62*x71;
M3[7+35*6] = 2*x62*x72+x622;
M3[7+35*7] = 2*x61*x73+2*x63*x71+2*x61*x63;
M3[7+35*8] = 2*x62*x73+2*x62*x63+2*x63*x72;
M3[7+35*9] = x632+2*x63*x73;
M3[7+35*10] = 0;
M3[7+35*11] = 0;
M3[7+35*12] = 0;
M3[7+35*13] = 2*x61*x74+2*x61*x64+2*x64*x71;
M3[7+35*14] = 2*x62*x64+2*x64*x72+2*x62*x74;
M3[7+35*15] = 2*x63*x64+2*x63*x74+2*x64*x73;
M3[7+35*16] = 0;
M3[7+35*17] = 0;
M3[7+35*18] = 2*x64*x74+x642;
M3[7+35*19] = 0;
M3[7+35*20] = 0;
M3[7+35*21] = 0;
M3[7+35*22] = 0;
M3[7+35*23] = 8*x31-8*x41+8*x21;
M3[7+35*24] = 8*x32-8*x42+8*x22;
M3[7+35*25] = 8*x33+8*x23-8*x43;
M3[7+35*26] = 0;
M3[7+35*27] = 0;
M3[7+35*28] = 8*x34+8*x24-8*x44;
M3[7+35*29] = 0;
M3[7+35*30] = 0;
M3[7+35*31] = 0;
M3[7+35*32] = 0;
M3[7+35*33] = 0;
M3[7+35*34] = 0;
M3[8+35*0] = 0;
M3[8+35*1] = 0;
M3[8+35*2] = 0;
M3[8+35*3] = 0;
M3[8+35*4] = 0;
M3[8+35*5] = 0;
M3[8+35*6] = 0;
M3[8+35*7] = 0;
M3[8+35*8] = 0;
M3[8+35*9] = 0;
M3[8+35*10] = x612+2*x61*x71;
M3[8+35*11] = 2*x61*x72+2*x62*x71+2*x61*x62;
M3[8+35*12] = x622+2*x62*x72;
M3[8+35*13] = 2*x63*x71+2*x61*x73+2*x61*x63;
M3[8+35*14] = 2*x63*x72+2*x62*x73+2*x62*x63;
M3[8+35*15] = x632+2*x63*x73;
M3[8+35*16] = 2*x64*x71+2*x61*x74+2*x61*x64;
M3[8+35*17] = 2*x64*x72+2*x62*x64+2*x62*x74;
M3[8+35*18] = 2*x64*x73+2*x63*x74+2*x63*x64;
M3[8+35*19] = 2*x64*x74+x642;
M3[8+35*20] = 0;
M3[8+35*21] = 0;
M3[8+35*22] = 0;
M3[8+35*23] = 0;
M3[8+35*24] = 0;
M3[8+35*25] = 0;
M3[8+35*26] = 8*x21+8*x31-8*x41;
M3[8+35*27] = 8*x22+8*x32-8*x42;
M3[8+35*28] = -8*x43+8*x23+8*x33;
M3[8+35*29] = -8*x44+8*x34+8*x24;
M3[8+35*30] = 0;
M3[8+35*31] = 0;
M3[8+35*32] = 0;
M3[8+35*33] = 0;
M3[8+35*34] = 0;
M3[9+35*0] = 0;
M3[9+35*1] = 0;
M3[9+35*2] = 0;
M3[9+35*3] = 0;
M3[9+35*4] = 0;
M3[9+35*5] = 0;
M3[9+35*6] = 0;
M3[9+35*7] = 0;
M3[9+35*8] = 0;
M3[9+35*9] = 0;
M3[9+35*10] = 0;
M3[9+35*11] = 0;
M3[9+35*12] = 0;
M3[9+35*13] = 0;
M3[9+35*14] = 0;
M3[9+35*15] = 0;
M3[9+35*16] = 0;
M3[9+35*17] = 0;
M3[9+35*18] = 0;
M3[9+35*19] = 0;
M3[9+35*20] = x612+2*x61*x71;
M3[9+35*21] = 2*x61*x72+2*x62*x71+2*x61*x62;
M3[9+35*22] = x622+2*x62*x72;
M3[9+35*23] = 2*x63*x71+2*x61*x73+2*x61*x63;
M3[9+35*24] = 2*x63*x72+2*x62*x73+2*x62*x63;
M3[9+35*25] = x632+2*x63*x73;
M3[9+35*26] = 2*x64*x71+2*x61*x74+2*x61*x64;
M3[9+35*27] = 2*x64*x72+2*x62*x64+2*x62*x74;
M3[9+35*28] = 2*x63*x64+2*x63*x74+2*x64*x73;
M3[9+35*29] = 2*x64*x74+x642;
M3[9+35*30] = -8*x41+8*x21+8*x31;
M3[9+35*31] = 8*x32+8*x22-8*x42;
M3[9+35*32] = 8*x33+8*x23-8*x43;
M3[9+35*33] = 8*x34+8*x24-8*x44;
M3[9+35*34] = 0;
M3[10+35*0] = -x61*x71+x51*x61;
M3[10+35*1] = x52*x61+x51*x62-x61*x72-x62*x71;
M3[10+35*2] = -x62*x72+x52*x62;
M3[10+35*3] = 0;
M3[10+35*4] = x53*x61+x51*x63-x61*x73-x63*x71;
M3[10+35*5] = x52*x63-x62*x73-x63*x72+x53*x62;
M3[10+35*6] = 0;
M3[10+35*7] = x53*x63-x63*x73;
M3[10+35*8] = 0;
M3[10+35*9] = 0;
M3[10+35*10] = x51*x64-x64*x71-x61*x74+x54*x61;
M3[10+35*11] = x54*x62+x52*x64-x64*x72-x62*x74;
M3[10+35*12] = 0;
M3[10+35*13] = x54*x63+x53*x64-x64*x73-x63*x74;
M3[10+35*14] = 0;
M3[10+35*15] = 0;
M3[10+35*16] = -x64*x74+x54*x64;
M3[10+35*17] = 0;
M3[10+35*18] = 0;
M3[10+35*19] = 0;
M3[10+35*20] = 8*x41-8*x31;
M3[10+35*21] = -8*x32+8*x42;
M3[10+35*22] = 0;
M3[10+35*23] = 8*x43-8*x33;
M3[10+35*24] = 0;
M3[10+35*25] = 0;
M3[10+35*26] = -8*x34+8*x44;
M3[10+35*27] = 0;
M3[10+35*28] = 0;
M3[10+35*29] = 0;
M3[10+35*30] = 0;
M3[10+35*31] = 0;
M3[10+35*32] = 0;
M3[10+35*33] = 0;
M3[10+35*34] = 0;
M3[11+35*0] = 0;
M3[11+35*1] = -x61*x71+x51*x61;
M3[11+35*2] = x52*x61+x51*x62-x61*x72-x62*x71;
M3[11+35*3] = -x62*x72+x52*x62;
M3[11+35*4] = 0;
M3[11+35*5] = x53*x61+x51*x63-x61*x73-x63*x71;
M3[11+35*6] = x52*x63-x62*x73-x63*x72+x53*x62;
M3[11+35*7] = 0;
M3[11+35*8] = x53*x63-x63*x73;
M3[11+35*9] = 0;
M3[11+35*10] = 0;
M3[11+35*11] = x51*x64-x64*x71-x61*x74+x54*x61;
M3[11+35*12] = x54*x62+x52*x64-x64*x72-x62*x74;
M3[11+35*13] = 0;
M3[11+35*14] = x54*x63+x53*x64-x64*x73-x63*x74;
M3[11+35*15] = 0;
M3[11+35*16] = 0;
M3[11+35*17] = -x64*x74+x54*x64;
M3[11+35*18] = 0;
M3[11+35*19] = 0;
M3[11+35*20] = 0;
M3[11+35*21] = 8*x41-8*x31;
M3[11+35*22] = -8*x32+8*x42;
M3[11+35*23] = 0;
M3[11+35*24] = 8*x43-8*x33;
M3[11+35*25] = 0;
M3[11+35*26] = 0;
M3[11+35*27] = -8*x34+8*x44;
M3[11+35*28] = 0;
M3[11+35*29] = 0;
M3[11+35*30] = 0;
M3[11+35*31] = 0;
M3[11+35*32] = 0;
M3[11+35*33] = 0;
M3[11+35*34] = 0;
M3[12+35*0] = 0;
M3[12+35*1] = 0;
M3[12+35*2] = 0;
M3[12+35*3] = 0;
M3[12+35*4] = -x61*x71+x51*x61;
M3[12+35*5] = -x62*x71+x52*x61+x51*x62-x61*x72;
M3[12+35*6] = -x62*x72+x52*x62;
M3[12+35*7] = -x63*x71-x61*x73+x51*x63+x53*x61;
M3[12+35*8] = -x62*x73-x63*x72+x52*x63+x53*x62;
M3[12+35*9] = x53*x63-x63*x73;
M3[12+35*10] = 0;
M3[12+35*11] = 0;
M3[12+35*12] = 0;
M3[12+35*13] = x54*x61+x51*x64-x61*x74-x64*x71;
M3[12+35*14] = -x62*x74+x54*x62+x52*x64-x64*x72;
M3[12+35*15] = -x64*x73-x63*x74+x54*x63+x53*x64;
M3[12+35*16] = 0;
M3[12+35*17] = 0;
M3[12+35*18] = -x64*x74+x54*x64;
M3[12+35*19] = 0;
M3[12+35*20] = 0;
M3[12+35*21] = 0;
M3[12+35*22] = 0;
M3[12+35*23] = -8*x31+8*x41;
M3[12+35*24] = -8*x32+8*x42;
M3[12+35*25] = 8*x43-8*x33;
M3[12+35*26] = 0;
M3[12+35*27] = 0;
M3[12+35*28] = -8*x34+8*x44;
M3[12+35*29] = 0;
M3[12+35*30] = 0;
M3[12+35*31] = 0;
M3[12+35*32] = 0;
M3[12+35*33] = 0;
M3[12+35*34] = 0;
M3[13+35*0] = 0;
M3[13+35*1] = 0;
M3[13+35*2] = 0;
M3[13+35*3] = 0;
M3[13+35*4] = 0;
M3[13+35*5] = 0;
M3[13+35*6] = 0;
M3[13+35*7] = 0;
M3[13+35*8] = 0;
M3[13+35*9] = 0;
M3[13+35*10] = -x61*x71+x51*x61;
M3[13+35*11] = -x62*x71+x52*x61+x51*x62-x61*x72;
M3[13+35*12] = -x62*x72+x52*x62;
M3[13+35*13] = -x63*x71-x61*x73+x51*x63+x53*x61;
M3[13+35*14] = -x62*x73-x63*x72+x52*x63+x53*x62;
M3[13+35*15] = x53*x63-x63*x73;
M3[13+35*16] = x54*x61+x51*x64-x61*x74-x64*x71;
M3[13+35*17] = -x62*x74+x54*x62+x52*x64-x64*x72;
M3[13+35*18] = -x64*x73-x63*x74+x54*x63+x53*x64;
M3[13+35*19] = -x64*x74+x54*x64;
M3[13+35*20] = 0;
M3[13+35*21] = 0;
M3[13+35*22] = 0;
M3[13+35*23] = 0;
M3[13+35*24] = 0;
M3[13+35*25] = 0;
M3[13+35*26] = -8*x31+8*x41;
M3[13+35*27] = -8*x32+8*x42;
M3[13+35*28] = 8*x43-8*x33;
M3[13+35*29] = 8*x44-8*x34;
M3[13+35*30] = 0;
M3[13+35*31] = 0;
M3[13+35*32] = 0;
M3[13+35*33] = 0;
M3[13+35*34] = 0;
M3[14+35*0] = 0;
M3[14+35*1] = 0;
M3[14+35*2] = 0;
M3[14+35*3] = 0;
M3[14+35*4] = 0;
M3[14+35*5] = 0;
M3[14+35*6] = 0;
M3[14+35*7] = 0;
M3[14+35*8] = 0;
M3[14+35*9] = 0;
M3[14+35*10] = 0;
M3[14+35*11] = 0;
M3[14+35*12] = 0;
M3[14+35*13] = 0;
M3[14+35*14] = 0;
M3[14+35*15] = 0;
M3[14+35*16] = 0;
M3[14+35*17] = 0;
M3[14+35*18] = 0;
M3[14+35*19] = 0;
M3[14+35*20] = x51*x61-x61*x71;
M3[14+35*21] = -x62*x71+x52*x61+x51*x62-x61*x72;
M3[14+35*22] = x52*x62-x62*x72;
M3[14+35*23] = x53*x61+x51*x63-x61*x73-x63*x71;
M3[14+35*24] = x53*x62-x62*x73-x63*x72+x52*x63;
M3[14+35*25] = x53*x63-x63*x73;
M3[14+35*26] = x54*x61+x51*x64-x61*x74-x64*x71;
M3[14+35*27] = -x62*x74+x54*x62+x52*x64-x64*x72;
M3[14+35*28] = x54*x63+x53*x64-x64*x73-x63*x74;
M3[14+35*29] = x54*x64-x64*x74;
M3[14+35*30] = 8*x41-8*x31;
M3[14+35*31] = -8*x32+8*x42;
M3[14+35*32] = 8*x43-8*x33;
M3[14+35*33] = 8*x44-8*x34;
M3[14+35*34] = 0;
M3[15+35*0] = x41*x71-x31*x71+x21*x71+x41*x61;
M3[15+35*1] = x22*x71-x31*x72-x32*x71+x41*x72+x42*x71+x41*x62+x42*x61+x21*x72;
M3[15+35*2] = x42*x72+x42*x62+x22*x72-x32*x72;
M3[15+35*3] = 0;
M3[15+35*4] = x23*x71-x31*x73+x43*x71-x33*x71+x41*x73+x41*x63+x43*x61+x21*x73;
M3[15+35*5] = x42*x63+x42*x73+x43*x72-x32*x73+x22*x73+x23*x72+x43*x62-x33*x72;
M3[15+35*6] = 0;
M3[15+35*7] = x23*x73+x43*x73-x33*x73+x43*x63;
M3[15+35*8] = 0;
M3[15+35*9] = 0;
M3[15+35*10] = x41*x64+x21*x74+x24*x71-x31*x74+x44*x71-x34*x71+x41*x74+x44*x61;
M3[15+35*11] = x42*x64+x24*x72-x34*x72+x42*x74-x32*x74+x22*x74+x44*x72+x44*x62;
M3[15+35*12] = 0;
M3[15+35*13] = x43*x64-x33*x74-x34*x73+x44*x63+x43*x74+x44*x73+x23*x74+x24*x73;
M3[15+35*14] = 0;
M3[15+35*15] = 0;
M3[15+35*16] = x44*x64+x44*x74+x24*x74-x34*x74;
M3[15+35*17] = 0;
M3[15+35*18] = 0;
M3[15+35*19] = 0;
M3[15+35*20] = 0;
M3[15+35*21] = 0;
M3[15+35*22] = 0;
M3[15+35*23] = 0;
M3[15+35*24] = 0;
M3[15+35*25] = 0;
M3[15+35*26] = 0;
M3[15+35*27] = 0;
M3[15+35*28] = 0;
M3[15+35*29] = 0;
M3[15+35*30] = 0;
M3[15+35*31] = 0;
M3[15+35*32] = 0;
M3[15+35*33] = 0;
M3[15+35*34] = 0;
M3[16+35*0] = 0;
M3[16+35*1] = x41*x71-x31*x71+x21*x71+x41*x61;
M3[16+35*2] = x41*x62+x21*x72+x22*x71+x42*x61+x41*x72+x42*x71-x31*x72-x32*x71;
M3[16+35*3] = x42*x72+x42*x62+x22*x72-x32*x72;
M3[16+35*4] = 0;
M3[16+35*5] = x21*x73+x41*x73+x43*x71+x23*x71+x41*x63+x43*x61-x33*x71-x31*x73;
M3[16+35*6] = x43*x62+x22*x73+x23*x72+x42*x63+x42*x73+x43*x72-x32*x73-x33*x72;
M3[16+35*7] = 0;
M3[16+35*8] = x23*x73+x43*x73-x33*x73+x43*x63;
M3[16+35*9] = 0;
M3[16+35*10] = 0;
M3[16+35*11] = x44*x61-x34*x71+x41*x64+x41*x74+x44*x71+x24*x71+x21*x74-x31*x74;
M3[16+35*12] = x44*x62+x22*x74+x42*x64+x42*x74+x44*x72-x32*x74+x24*x72-x34*x72;
M3[16+35*13] = 0;
M3[16+35*14] = x43*x64-x33*x74-x34*x73+x44*x63+x43*x74+x44*x73+x23*x74+x24*x73;
M3[16+35*15] = 0;
M3[16+35*16] = 0;
M3[16+35*17] = x44*x64+x44*x74+x24*x74-x34*x74;
M3[16+35*18] = 0;
M3[16+35*19] = 0;
M3[16+35*20] = 0;
M3[16+35*21] = 0;
M3[16+35*22] = 0;
M3[16+35*23] = 0;
M3[16+35*24] = 0;
M3[16+35*25] = 0;
M3[16+35*26] = 0;
M3[16+35*27] = 0;
M3[16+35*28] = 0;
M3[16+35*29] = 0;
M3[16+35*30] = 0;
M3[16+35*31] = 0;
M3[16+35*32] = 0;
M3[16+35*33] = 0;
M3[16+35*34] = 0;
M3[17+35*0] = 0;
M3[17+35*1] = 0;
M3[17+35*2] = 0;
M3[17+35*3] = 0;
M3[17+35*4] = x41*x71-x31*x71+x21*x71+x41*x61;
M3[17+35*5] = x41*x62+x21*x72+x22*x71+x42*x61+x41*x72+x42*x71-x31*x72-x32*x71;
M3[17+35*6] = x42*x72+x42*x62+x22*x72-x32*x72;
M3[17+35*7] = x43*x71+x41*x73-x33*x71+x21*x73+x43*x61+x41*x63-x31*x73+x23*x71;
M3[17+35*8] = x22*x73+x23*x72+x42*x73+x43*x72-x32*x73-x33*x72+x42*x63+x43*x62;
M3[17+35*9] = x43*x73-x33*x73+x23*x73+x43*x63;
M3[17+35*10] = 0;
M3[17+35*11] = 0;
M3[17+35*12] = 0;
M3[17+35*13] = -x31*x74+x24*x71+x21*x74+x44*x71+x41*x74-x34*x71+x44*x61+x41*x64;
M3[17+35*14] = x42*x64+x44*x62-x32*x74-x34*x72+x44*x72+x42*x74+x24*x72+x22*x74;
M3[17+35*15] = x44*x73+x23*x74+x24*x73-x34*x73+x43*x74-x33*x74+x43*x64+x44*x63;
M3[17+35*16] = 0;
M3[17+35*17] = 0;
M3[17+35*18] = x44*x74+x44*x64+x24*x74-x34*x74;
M3[17+35*19] = 0;
M3[17+35*20] = 0;
M3[17+35*21] = 0;
M3[17+35*22] = 0;
M3[17+35*23] = 0;
M3[17+35*24] = 0;
M3[17+35*25] = 0;
M3[17+35*26] = 0;
M3[17+35*27] = 0;
M3[17+35*28] = 0;
M3[17+35*29] = 0;
M3[17+35*30] = 0;
M3[17+35*31] = 0;
M3[17+35*32] = 0;
M3[17+35*33] = 0;
M3[17+35*34] = 0;
M3[18+35*0] = 0;
M3[18+35*1] = 0;
M3[18+35*2] = 0;
M3[18+35*3] = 0;
M3[18+35*4] = 0;
M3[18+35*5] = 0;
M3[18+35*6] = 0;
M3[18+35*7] = 0;
M3[18+35*8] = 0;
M3[18+35*9] = 0;
M3[18+35*10] = x41*x71-x31*x71+x21*x71+x41*x61;
M3[18+35*11] = x41*x62-x31*x72-x32*x71+x42*x61+x21*x72+x42*x71+x22*x71+x41*x72;
M3[18+35*12] = x42*x72+x42*x62+x22*x72-x32*x72;
M3[18+35*13] = x43*x71+x41*x73-x33*x71+x21*x73+x43*x61+x41*x63-x31*x73+x23*x71;
M3[18+35*14] = x22*x73+x23*x72+x42*x73+x43*x72-x32*x73-x33*x72+x42*x63+x43*x62;
M3[18+35*15] = x43*x73-x33*x73+x23*x73+x43*x63;
M3[18+35*16] = x44*x71+x21*x74-x34*x71+x41*x74+x41*x64+x24*x71-x31*x74+x44*x61;
M3[18+35*17] = -x32*x74+x24*x72+x22*x74+x44*x72-x34*x72+x44*x62+x42*x64+x42*x74;
M3[18+35*18] = x23*x74+x44*x73+x43*x74-x34*x73-x33*x74+x44*x63+x43*x64+x24*x73;
M3[18+35*19] = -x34*x74+x24*x74+x44*x64+x44*x74;
M3[18+35*20] = 0;
M3[18+35*21] = 0;
M3[18+35*22] = 0;
M3[18+35*23] = 0;
M3[18+35*24] = 0;
M3[18+35*25] = 0;
M3[18+35*26] = 0;
M3[18+35*27] = 0;
M3[18+35*28] = 0;
M3[18+35*29] = 0;
M3[18+35*30] = 0;
M3[18+35*31] = 0;
M3[18+35*32] = 0;
M3[18+35*33] = 0;
M3[18+35*34] = 0;
M3[19+35*0] = 0;
M3[19+35*1] = 0;
M3[19+35*2] = 0;
M3[19+35*3] = 0;
M3[19+35*4] = 0;
M3[19+35*5] = 0;
M3[19+35*6] = 0;
M3[19+35*7] = 0;
M3[19+35*8] = 0;
M3[19+35*9] = 0;
M3[19+35*10] = 0;
M3[19+35*11] = 0;
M3[19+35*12] = 0;
M3[19+35*13] = 0;
M3[19+35*14] = 0;
M3[19+35*15] = 0;
M3[19+35*16] = 0;
M3[19+35*17] = 0;
M3[19+35*18] = 0;
M3[19+35*19] = 0;
M3[19+35*20] = -x31*x71+x21*x71+x41*x61+x41*x71;
M3[19+35*21] = x21*x72-x32*x71+x41*x62-x31*x72+x42*x61+x22*x71+x42*x71+x41*x72;
M3[19+35*22] = x42*x72+x42*x62+x22*x72-x32*x72;
M3[19+35*23] = x43*x61-x31*x73+x21*x73+x41*x63+x23*x71+x43*x71+x41*x73-x33*x71;
M3[19+35*24] = x43*x62+x42*x63+x23*x72+x22*x73+x42*x73+x43*x72-x33*x72-x32*x73;
M3[19+35*25] = x43*x73+x43*x63+x23*x73-x33*x73;
M3[19+35*26] = x44*x71+x21*x74-x34*x71+x41*x74+x41*x64+x24*x71-x31*x74+x44*x61;
M3[19+35*27] = -x32*x74+x24*x72+x22*x74+x44*x72-x34*x72+x44*x62+x42*x64+x42*x74;
M3[19+35*28] = x23*x74+x44*x73+x43*x74-x34*x73-x33*x74+x44*x63+x43*x64+x24*x73;
M3[19+35*29] = x44*x74+x44*x64+x24*x74-x34*x74;
M3[19+35*30] = 0;
M3[19+35*31] = 0;
M3[19+35*32] = 0;
M3[19+35*33] = 0;
M3[19+35*34] = 0;
M3[20+35*0] = x41*x51+x31*x71;
M3[20+35*1] = x32*x71+x42*x51+x41*x52+x31*x72;
M3[20+35*2] = x32*x72+x42*x52;
M3[20+35*3] = 0;
M3[20+35*4] = x41*x53+x43*x51+x33*x71+x31*x73;
M3[20+35*5] = x42*x53+x43*x52+x33*x72+x32*x73;
M3[20+35*6] = 0;
M3[20+35*7] = x43*x53+x33*x73;
M3[20+35*8] = 0;
M3[20+35*9] = 0;
M3[20+35*10] = x44*x51+x41*x54+x34*x71+x31*x74;
M3[20+35*11] = x32*x74+x42*x54+x44*x52+x34*x72;
M3[20+35*12] = 0;
M3[20+35*13] = x44*x53+x43*x54+x34*x73+x33*x74;
M3[20+35*14] = 0;
M3[20+35*15] = 0;
M3[20+35*16] = x44*x54+x34*x74;
M3[20+35*17] = 0;
M3[20+35*18] = 0;
M3[20+35*19] = 0;
M3[20+35*20] = -16*x11;
M3[20+35*21] = -16*x12;
M3[20+35*22] = 0;
M3[20+35*23] = -16*x13;
M3[20+35*24] = 0;
M3[20+35*25] = 0;
M3[20+35*26] = -16*x14;
M3[20+35*27] = 0;
M3[20+35*28] = 0;
M3[20+35*29] = 0;
M3[20+35*30] = 0;
M3[20+35*31] = 0;
M3[20+35*32] = 0;
M3[20+35*33] = 0;
M3[20+35*34] = 0;
M3[21+35*0] = 0;
M3[21+35*1] = x41*x51+x31*x71;
M3[21+35*2] = x32*x71+x42*x51+x41*x52+x31*x72;
M3[21+35*3] = x32*x72+x42*x52;
M3[21+35*4] = 0;
M3[21+35*5] = x41*x53+x43*x51+x33*x71+x31*x73;
M3[21+35*6] = x42*x53+x43*x52+x33*x72+x32*x73;
M3[21+35*7] = 0;
M3[21+35*8] = x43*x53+x33*x73;
M3[21+35*9] = 0;
M3[21+35*10] = 0;
M3[21+35*11] = x44*x51+x41*x54+x34*x71+x31*x74;
M3[21+35*12] = x32*x74+x42*x54+x44*x52+x34*x72;
M3[21+35*13] = 0;
M3[21+35*14] = x44*x53+x43*x54+x34*x73+x33*x74;
M3[21+35*15] = 0;
M3[21+35*16] = 0;
M3[21+35*17] = x44*x54+x34*x74;
M3[21+35*18] = 0;
M3[21+35*19] = 0;
M3[21+35*20] = 0;
M3[21+35*21] = -16*x11;
M3[21+35*22] = -16*x12;
M3[21+35*23] = 0;
M3[21+35*24] = -16*x13;
M3[21+35*25] = 0;
M3[21+35*26] = 0;
M3[21+35*27] = -16*x14;
M3[21+35*28] = 0;
M3[21+35*29] = 0;
M3[21+35*30] = 0;
M3[21+35*31] = 0;
M3[21+35*32] = 0;
M3[21+35*33] = 0;
M3[21+35*34] = 0;
M3[22+35*0] = 0;
M3[22+35*1] = 0;
M3[22+35*2] = 0;
M3[22+35*3] = 0;
M3[22+35*4] = x41*x51+x31*x71;
M3[22+35*5] = x32*x71+x42*x51+x41*x52+x31*x72;
M3[22+35*6] = x32*x72+x42*x52;
M3[22+35*7] = x43*x51+x41*x53+x33*x71+x31*x73;
M3[22+35*8] = x33*x72+x32*x73+x43*x52+x42*x53;
M3[22+35*9] = x43*x53+x33*x73;
M3[22+35*10] = 0;
M3[22+35*11] = 0;
M3[22+35*12] = 0;
M3[22+35*13] = x34*x71+x31*x74+x41*x54+x44*x51;
M3[22+35*14] = x34*x72+x32*x74+x44*x52+x42*x54;
M3[22+35*15] = x44*x53+x43*x54+x34*x73+x33*x74;
M3[22+35*16] = 0;
M3[22+35*17] = 0;
M3[22+35*18] = x44*x54+x34*x74;
M3[22+35*19] = 0;
M3[22+35*20] = 0;
M3[22+35*21] = 0;
M3[22+35*22] = 0;
M3[22+35*23] = -16*x11;
M3[22+35*24] = -16*x12;
M3[22+35*25] = -16*x13;
M3[22+35*26] = 0;
M3[22+35*27] = 0;
M3[22+35*28] = -16*x14;
M3[22+35*29] = 0;
M3[22+35*30] = 0;
M3[22+35*31] = 0;
M3[22+35*32] = 0;
M3[22+35*33] = 0;
M3[22+35*34] = 0;
M3[23+35*0] = 0;
M3[23+35*1] = 0;
M3[23+35*2] = 0;
M3[23+35*3] = 0;
M3[23+35*4] = 0;
M3[23+35*5] = 0;
M3[23+35*6] = 0;
M3[23+35*7] = 0;
M3[23+35*8] = 0;
M3[23+35*9] = 0;
M3[23+35*10] = x41*x51+x31*x71;
M3[23+35*11] = x42*x51+x41*x52+x32*x71+x31*x72;
M3[23+35*12] = x42*x52+x32*x72;
M3[23+35*13] = x43*x51+x41*x53+x33*x71+x31*x73;
M3[23+35*14] = x33*x72+x32*x73+x43*x52+x42*x53;
M3[23+35*15] = x43*x53+x33*x73;
M3[23+35*16] = x34*x71+x31*x74+x41*x54+x44*x51;
M3[23+35*17] = x34*x72+x32*x74+x44*x52+x42*x54;
M3[23+35*18] = x44*x53+x43*x54+x34*x73+x33*x74;
M3[23+35*19] = x44*x54+x34*x74;
M3[23+35*20] = 0;
M3[23+35*21] = 0;
M3[23+35*22] = 0;
M3[23+35*23] = 0;
M3[23+35*24] = 0;
M3[23+35*25] = 0;
M3[23+35*26] = -16*x11;
M3[23+35*27] = -16*x12;
M3[23+35*28] = -16*x13;
M3[23+35*29] = -16*x14;
M3[23+35*30] = 0;
M3[23+35*31] = 0;
M3[23+35*32] = 0;
M3[23+35*33] = 0;
M3[23+35*34] = 0;
M3[24+35*0] = 0;
M3[24+35*1] = 0;
M3[24+35*2] = 0;
M3[24+35*3] = 0;
M3[24+35*4] = 0;
M3[24+35*5] = 0;
M3[24+35*6] = 0;
M3[24+35*7] = 0;
M3[24+35*8] = 0;
M3[24+35*9] = 0;
M3[24+35*10] = 0;
M3[24+35*11] = 0;
M3[24+35*12] = 0;
M3[24+35*13] = 0;
M3[24+35*14] = 0;
M3[24+35*15] = 0;
M3[24+35*16] = 0;
M3[24+35*17] = 0;
M3[24+35*18] = 0;
M3[24+35*19] = 0;
M3[24+35*20] = x31*x71+x41*x51;
M3[24+35*21] = x41*x52+x42*x51+x32*x71+x31*x72;
M3[24+35*22] = x42*x52+x32*x72;
M3[24+35*23] = x43*x51+x41*x53+x33*x71+x31*x73;
M3[24+35*24] = x43*x52+x42*x53+x33*x72+x32*x73;
M3[24+35*25] = x43*x53+x33*x73;
M3[24+35*26] = x41*x54+x34*x71+x31*x74+x44*x51;
M3[24+35*27] = x42*x54+x32*x74+x34*x72+x44*x52;
M3[24+35*28] = x33*x74+x34*x73+x43*x54+x44*x53;
M3[24+35*29] = x34*x74+x44*x54;
M3[24+35*30] = -16*x11;
M3[24+35*31] = -16*x12;
M3[24+35*32] = -16*x13;
M3[24+35*33] = -16*x14;
M3[24+35*34] = 0;
M3[25+35*0] = x31*x61+x31*x71+x31*x51+x21*x51;
M3[25+35*1] = x32*x51+x32*x61+x22*x51+x31*x62+x31*x52+x21*x52+x32*x71+x31*x72;
M3[25+35*2] = x32*x62+x32*x52+x22*x52+x32*x72;
M3[25+35*3] = 0;
M3[25+35*4] = x31*x63+x33*x61+x23*x51+x33*x51+x31*x53+x21*x53+x33*x71+x31*x73;
M3[25+35*5] = x32*x53+x33*x52+x23*x52+x32*x63+x22*x53+x33*x62+x33*x72+x32*x73;
M3[25+35*6] = 0;
M3[25+35*7] = x33*x63+x33*x53+x23*x53+x33*x73;
M3[25+35*8] = 0;
M3[25+35*9] = 0;
M3[25+35*10] = x34*x71+x31*x74+x31*x64+x21*x54+x34*x61+x34*x51+x31*x54+x24*x51;
M3[25+35*11] = x24*x52+x34*x62+x32*x54+x34*x52+x32*x64+x22*x54+x32*x74+x34*x72;
M3[25+35*12] = 0;
M3[25+35*13] = x33*x64+x23*x54+x33*x54+x34*x63+x24*x53+x34*x53+x33*x74+x34*x73;
M3[25+35*14] = 0;
M3[25+35*15] = 0;
M3[25+35*16] = x34*x74+x34*x64+x34*x54+x24*x54;
M3[25+35*17] = 0;
M3[25+35*18] = 0;
M3[25+35*19] = 0;
M3[25+35*20] = -16*x11;
M3[25+35*21] = -16*x12;
M3[25+35*22] = 0;
M3[25+35*23] = -16*x13;
M3[25+35*24] = 0;
M3[25+35*25] = 0;
M3[25+35*26] = -16*x14;
M3[25+35*27] = 0;
M3[25+35*28] = 0;
M3[25+35*29] = 0;
M3[25+35*30] = 0;
M3[25+35*31] = 0;
M3[25+35*32] = 0;
M3[25+35*33] = 0;
M3[25+35*34] = 0;
M3[26+35*0] = 0;
M3[26+35*1] = x31*x61+x31*x71+x31*x51+x21*x51;
M3[26+35*2] = x32*x51+x32*x61+x22*x51+x31*x62+x31*x52+x21*x52+x32*x71+x31*x72;
M3[26+35*3] = x32*x62+x32*x52+x22*x52+x32*x72;
M3[26+35*4] = 0;
M3[26+35*5] = x31*x73+x23*x51+x31*x53+x33*x51+x21*x53+x33*x61+x31*x63+x33*x71;
M3[26+35*6] = x32*x53+x33*x62+x33*x52+x23*x52+x32*x73+x33*x72+x32*x63+x22*x53;
M3[26+35*7] = 0;
M3[26+35*8] = x23*x53+x33*x53+x33*x63+x33*x73;
M3[26+35*9] = 0;
M3[26+35*10] = 0;
M3[26+35*11] = x24*x51+x31*x54+x34*x51+x34*x61+x21*x54+x34*x71+x31*x64+x31*x74;
M3[26+35*12] = x34*x62+x34*x52+x24*x52+x32*x74+x34*x72+x32*x54+x32*x64+x22*x54;
M3[26+35*13] = 0;
M3[26+35*14] = x23*x54+x24*x53+x33*x54+x33*x64+x34*x63+x34*x53+x33*x74+x34*x73;
M3[26+35*15] = 0;
M3[26+35*16] = 0;
M3[26+35*17] = x24*x54+x34*x54+x34*x64+x34*x74;
M3[26+35*18] = 0;
M3[26+35*19] = 0;
M3[26+35*20] = 0;
M3[26+35*21] = -16*x11;
M3[26+35*22] = -16*x12;
M3[26+35*23] = 0;
M3[26+35*24] = -16*x13;
M3[26+35*25] = 0;
M3[26+35*26] = 0;
M3[26+35*27] = -16*x14;
M3[26+35*28] = 0;
M3[26+35*29] = 0;
M3[26+35*30] = 0;
M3[26+35*31] = 0;
M3[26+35*32] = 0;
M3[26+35*33] = 0;
M3[26+35*34] = 0;
M3[27+35*0] = 0;
M3[27+35*1] = 0;
M3[27+35*2] = 0;
M3[27+35*3] = 0;
M3[27+35*4] = x31*x71+x31*x51+x21*x51+x31*x61;
M3[27+35*5] = x31*x52+x31*x62+x32*x51+x22*x51+x21*x52+x32*x61+x32*x71+x31*x72;
M3[27+35*6] = x32*x72+x22*x52+x32*x52+x32*x62;
M3[27+35*7] = x31*x73+x23*x51+x31*x53+x33*x51+x21*x53+x33*x61+x31*x63+x33*x71;
M3[27+35*8] = x32*x53+x33*x62+x33*x52+x23*x52+x32*x73+x33*x72+x32*x63+x22*x53;
M3[27+35*9] = x23*x53+x33*x53+x33*x63+x33*x73;
M3[27+35*10] = 0;
M3[27+35*11] = 0;
M3[27+35*12] = 0;
M3[27+35*13] = x24*x51+x31*x54+x34*x51+x34*x61+x21*x54+x34*x71+x31*x64+x31*x74;
M3[27+35*14] = x32*x74+x34*x72+x34*x52+x32*x54+x24*x52+x22*x54+x34*x62+x32*x64;
M3[27+35*15] = x34*x53+x33*x54+x24*x53+x23*x54+x34*x73+x33*x74+x34*x63+x33*x64;
M3[27+35*16] = 0;
M3[27+35*17] = 0;
M3[27+35*18] = x34*x74+x34*x54+x24*x54+x34*x64;
M3[27+35*19] = 0;
M3[27+35*20] = 0;
M3[27+35*21] = 0;
M3[27+35*22] = 0;
M3[27+35*23] = -16*x11;
M3[27+35*24] = -16*x12;
M3[27+35*25] = -16*x13;
M3[27+35*26] = 0;
M3[27+35*27] = 0;
M3[27+35*28] = -16*x14;
M3[27+35*29] = 0;
M3[27+35*30] = 0;
M3[27+35*31] = 0;
M3[27+35*32] = 0;
M3[27+35*33] = 0;
M3[27+35*34] = 0;
M3[28+35*0] = 0;
M3[28+35*1] = 0;
M3[28+35*2] = 0;
M3[28+35*3] = 0;
M3[28+35*4] = 0;
M3[28+35*5] = 0;
M3[28+35*6] = 0;
M3[28+35*7] = 0;
M3[28+35*8] = 0;
M3[28+35*9] = 0;
M3[28+35*10] = x21*x51+x31*x61+x31*x51+x31*x71;
M3[28+35*11] = x21*x52+x32*x71+x31*x72+x22*x51+x31*x52+x32*x51+x31*x62+x32*x61;
M3[28+35*12] = x22*x52+x32*x52+x32*x62+x32*x72;
M3[28+35*13] = x23*x51+x31*x73+x33*x71+x33*x61+x31*x53+x33*x51+x31*x63+x21*x53;
M3[28+35*14] = x32*x53+x32*x63+x33*x62+x33*x52+x22*x53+x23*x52+x33*x72+x32*x73;
M3[28+35*15] = x33*x63+x23*x53+x33*x53+x33*x73;
M3[28+35*16] = x24*x51+x31*x54+x34*x51+x34*x61+x21*x54+x34*x71+x31*x64+x31*x74;
M3[28+35*17] = x32*x74+x34*x72+x34*x52+x32*x54+x24*x52+x22*x54+x34*x62+x32*x64;
M3[28+35*18] = x24*x53+x34*x63+x34*x73+x33*x74+x23*x54+x33*x54+x34*x53+x33*x64;
M3[28+35*19] = x34*x74+x34*x64+x24*x54+x34*x54;
M3[28+35*20] = 0;
M3[28+35*21] = 0;
M3[28+35*22] = 0;
M3[28+35*23] = 0;
M3[28+35*24] = 0;
M3[28+35*25] = 0;
M3[28+35*26] = -16*x11;
M3[28+35*27] = -16*x12;
M3[28+35*28] = -16*x13;
M3[28+35*29] = -16*x14;
M3[28+35*30] = 0;
M3[28+35*31] = 0;
M3[28+35*32] = 0;
M3[28+35*33] = 0;
M3[28+35*34] = 0;
M3[29+35*0] = 0;
M3[29+35*1] = 0;
M3[29+35*2] = 0;
M3[29+35*3] = 0;
M3[29+35*4] = 0;
M3[29+35*5] = 0;
M3[29+35*6] = 0;
M3[29+35*7] = 0;
M3[29+35*8] = 0;
M3[29+35*9] = 0;
M3[29+35*10] = 0;
M3[29+35*11] = 0;
M3[29+35*12] = 0;
M3[29+35*13] = 0;
M3[29+35*14] = 0;
M3[29+35*15] = 0;
M3[29+35*16] = 0;
M3[29+35*17] = 0;
M3[29+35*18] = 0;
M3[29+35*19] = 0;
M3[29+35*20] = x21*x51+x31*x71+x31*x61+x31*x51;
M3[29+35*21] = x21*x52+x32*x71+x31*x52+x22*x51+x31*x72+x31*x62+x32*x61+x32*x51;
M3[29+35*22] = x32*x62+x32*x52+x22*x52+x32*x72;
M3[29+35*23] = x31*x53+x23*x51+x31*x73+x21*x53+x31*x63+x33*x71+x33*x51+x33*x61;
M3[29+35*24] = x33*x62+x33*x52+x32*x53+x23*x52+x22*x53+x32*x63+x32*x73+x33*x72;
M3[29+35*25] = x33*x63+x23*x53+x33*x53+x33*x73;
M3[29+35*26] = x31*x54+x34*x61+x24*x51+x21*x54+x31*x64+x34*x71+x31*x74+x34*x51;
M3[29+35*27] = x34*x62+x34*x52+x32*x54+x32*x64+x24*x52+x22*x54+x32*x74+x34*x72;
M3[29+35*28] = x34*x63+x33*x64+x33*x54+x23*x54+x24*x53+x34*x53+x34*x73+x33*x74;
M3[29+35*29] = x34*x54+x34*x64+x24*x54+x34*x74;
M3[29+35*30] = -16*x11;
M3[29+35*31] = -16*x12;
M3[29+35*32] = -16*x13;
M3[29+35*33] = -16*x14;
M3[29+35*34] = 0;
M3[30+35*0] = x31*x712+x41*x712+x21*x712;
M3[30+35*1] = 2*x31*x71*x72+2*x21*x71*x72+2*x41*x71*x72+x42*x712+x32*x712+x22*x712;
M3[30+35*2] = x31*x722+x21*x722+2*x42*x71*x72+x41*x722+2*x22*x71*x72+2*x32*x71*x72;
M3[30+35*3] = x42*x722+x32*x722+x22*x722;
M3[30+35*4] = 2*x31*x71*x73+x23*x712+2*x21*x71*x73+2*x41*x71*x73+x43*x712+x33*x712;
M3[30+35*5] = 2*x41*x72*x73+2*x43*x71*x72+2*x42*x71*x73+2*x23*x71*x72+2*x21*x72*x73+2*x33*x71*x72+2*x32*x71*x73+2*x31*x72*x73+2*x22*x71*x73;
M3[30+35*6] = 2*x22*x72*x73+x23*x722+2*x32*x72*x73+2*x42*x72*x73+x33*x722+x43*x722;
M3[30+35*7] = x21*x732+x41*x732+2*x43*x71*x73+2*x33*x71*x73+x31*x732+2*x23*x71*x73;
M3[30+35*8] = x22*x732+2*x43*x72*x73+2*x33*x72*x73+2*x23*x72*x73+x42*x732+x32*x732;
M3[30+35*9] = x33*x732+x23*x732+x43*x732;
M3[30+35*10] = 2*x31*x71*x74+2*x21*x71*x74+2*x41*x71*x74+x24*x712+x34*x712+x44*x712;
M3[30+35*11] = 2*x41*x72*x74+2*x24*x71*x72+2*x44*x71*x72+2*x42*x71*x74+2*x32*x71*x74+2*x22*x71*x74+2*x34*x71*x72+2*x21*x72*x74+2*x31*x72*x74;
M3[30+35*12] = 2*x32*x72*x74+2*x22*x72*x74+2*x42*x72*x74+x24*x722+x34*x722+x44*x722;
M3[30+35*13] = 2*x21*x73*x74+2*x31*x73*x74+2*x33*x71*x74+2*x34*x71*x73+2*x24*x71*x73+2*x23*x71*x74+2*x44*x71*x73+2*x43*x71*x74+2*x41*x73*x74;
M3[30+35*14] = 2*x32*x73*x74+2*x43*x72*x74+2*x42*x73*x74+2*x24*x72*x73+2*x34*x72*x73+2*x33*x72*x74+2*x22*x73*x74+2*x44*x72*x73+2*x23*x72*x74;
M3[30+35*15] = 2*x43*x73*x74+2*x23*x73*x74+2*x33*x73*x74+x34*x732+x44*x732+x24*x732;
M3[30+35*16] = 2*x44*x71*x74+2*x24*x71*x74+2*x34*x71*x74+x31*x742+x21*x742+x41*x742;
M3[30+35*17] = x42*x742+2*x24*x72*x74+x22*x742+x32*x742+2*x34*x72*x74+2*x44*x72*x74;
M3[30+35*18] = 2*x44*x73*x74+x23*x742+2*x24*x73*x74+2*x34*x73*x74+x33*x742+x43*x742;
M3[30+35*19] = x24*x742+x34*x742+x44*x742;
M3[30+35*20] = -32*x11*x71+8*x412;
M3[30+35*21] = -32*x11*x72-32*x12*x71+16*x41*x42;
M3[30+35*22] = -32*x12*x72+8*x422;
M3[30+35*23] = 16*x41*x43-32*x11*x73-32*x13*x71;
M3[30+35*24] = 16*x42*x43-32*x12*x73-32*x13*x72;
M3[30+35*25] = -32*x13*x73+8*x432;
M3[30+35*26] = -32*x11*x74-32*x14*x71+16*x41*x44;
M3[30+35*27] = -32*x14*x72-32*x12*x74+16*x42*x44;
M3[30+35*28] = -32*x13*x74-32*x14*x73+16*x43*x44;
M3[30+35*29] = 8*x442-32*x14*x74;
M3[30+35*30] = 0;
M3[30+35*31] = 0;
M3[30+35*32] = 0;
M3[30+35*33] = 0;
M3[30+35*34] = 0;
M3[31+35*0] = 2*x31*x712+x31*x61*x71;
M3[31+35*1] = 2*x32*x712+4*x31*x71*x72+x31*x61*x72+x31*x62*x71+x32*x61*x71;
M3[31+35*2] = 4*x32*x71*x72+2*x31*x722+x32*x61*x72+x32*x62*x71+x31*x62*x72;
M3[31+35*3] = x32*x62*x72+2*x32*x722;
M3[31+35*4] = 2*x33*x712+4*x31*x71*x73+x33*x61*x71+x31*x61*x73+x31*x63*x71;
M3[31+35*5] = 4*x31*x72*x73+4*x32*x71*x73+x31*x62*x73+x31*x63*x72+x33*x62*x71+x32*x61*x73+x33*x61*x72+x32*x63*x71+4*x33*x71*x72;
M3[31+35*6] = 4*x32*x72*x73+x32*x63*x72+x33*x62*x72+x32*x62*x73+2*x33*x722;
M3[31+35*7] = 4*x33*x71*x73+2*x31*x732+x31*x63*x73+x33*x61*x73+x33*x63*x71;
M3[31+35*8] = x33*x62*x73+x33*x63*x72+2*x32*x732+x32*x63*x73+4*x33*x72*x73;
M3[31+35*9] = x33*x63*x73+2*x33*x732;
M3[31+35*10] = 2*x34*x712+4*x31*x71*x74+x34*x61*x71+x31*x61*x74+x31*x64*x71;
M3[31+35*11] = 4*x31*x72*x74+4*x32*x71*x74+x31*x62*x74+x34*x61*x72+x31*x64*x72+x34*x62*x71+x32*x61*x74+x32*x64*x71+4*x34*x71*x72;
M3[31+35*12] = 4*x32*x72*x74+x32*x62*x74+x32*x64*x72+x34*x62*x72+2*x34*x722;
M3[31+35*13] = 4*x31*x73*x74+x31*x63*x74+x33*x61*x74+x31*x64*x73+x34*x61*x73+x34*x63*x71+x33*x64*x71+4*x33*x71*x74+4*x34*x71*x73;
M3[31+35*14] = x33*x62*x74+x33*x64*x72+x34*x62*x73+x34*x63*x72+4*x34*x72*x73+4*x32*x73*x74+x32*x63*x74+x32*x64*x73+4*x33*x72*x74;
M3[31+35*15] = 4*x33*x73*x74+x34*x63*x73+x33*x63*x74+x33*x64*x73+2*x34*x732;
M3[31+35*16] = 2*x31*x742+4*x34*x71*x74+x34*x61*x74+x31*x64*x74+x34*x64*x71;
M3[31+35*17] = 2*x32*x742+x34*x64*x72+x34*x62*x74+4*x34*x72*x74+x32*x64*x74;
M3[31+35*18] = 4*x34*x73*x74+x34*x63*x74+x34*x64*x73+x33*x64*x74+2*x33*x742;
M3[31+35*19] = x34*x64*x74+2*x34*x742;
M3[31+35*20] = 8*x31*x41-32*x11*x71-16*x11*x61;
M3[31+35*21] = -16*x12*x61-16*x11*x62+8*x31*x42+8*x32*x41-32*x12*x71-32*x11*x72;
M3[31+35*22] = -16*x12*x62+8*x32*x42-32*x12*x72;
M3[31+35*23] = -32*x13*x71-16*x13*x61-16*x11*x63+8*x31*x43+8*x33*x41-32*x11*x73;
M3[31+35*24] = 8*x32*x43-16*x13*x62-16*x12*x63-32*x13*x72-32*x12*x73+8*x33*x42;
M3[31+35*25] = 8*x33*x43-16*x13*x63-32*x13*x73;
M3[31+35*26] = -32*x14*x71-16*x11*x64+8*x31*x44-16*x14*x61+8*x34*x41-32*x11*x74;
M3[31+35*27] = -16*x14*x62-16*x12*x64+8*x34*x42+8*x32*x44-32*x12*x74-32*x14*x72;
M3[31+35*28] = -32*x13*x74-32*x14*x73+8*x33*x44+8*x34*x43-16*x13*x64-16*x14*x63;
M3[31+35*29] = 8*x34*x44-16*x14*x64-32*x14*x74;
M3[31+35*30] = 0;
M3[31+35*31] = 0;
M3[31+35*32] = 0;
M3[31+35*33] = 0;
M3[31+35*34] = 0;
M3[32+35*0] = -2*x31*x712-x31*x61*x71+x21*x61*x71;
M3[32+35*1] = -2*x32*x712-4*x31*x71*x72-x31*x62*x71-x32*x61*x71+x22*x61*x71+x21*x61*x72+x21*x62*x71-x31*x61*x72;
M3[32+35*2] = x21*x62*x72+x22*x62*x71+x22*x61*x72-x32*x61*x72-x31*x62*x72-4*x32*x71*x72-x32*x62*x71-2*x31*x722;
M3[32+35*3] = -2*x32*x722-x32*x62*x72+x22*x62*x72;
M3[32+35*4] = -2*x33*x712-4*x31*x71*x73-x33*x61*x71-x31*x63*x71+x21*x63*x71+x21*x61*x73+x23*x61*x71-x31*x61*x73;
M3[32+35*5] = -4*x31*x72*x73+x21*x63*x72-x33*x61*x72-x31*x62*x73-4*x32*x71*x73-x32*x63*x71-x32*x61*x73-x31*x63*x72+x22*x63*x71-x33*x62*x71+x23*x62*x71+x21*x62*x73+x23*x61*x72+x22*x61*x73-4*x33*x71*x72;
M3[32+35*6] = -2*x33*x722-4*x32*x72*x73-x33*x62*x72-x32*x63*x72-x32*x62*x73+x22*x62*x73+x23*x62*x72+x22*x63*x72;
M3[32+35*7] = x23*x61*x73+x23*x63*x71+x21*x63*x73-x31*x63*x73-4*x33*x71*x73-x33*x63*x71-x33*x61*x73-2*x31*x732;
M3[32+35*8] = x22*x63*x73+x23*x63*x72-x32*x63*x73-x33*x62*x73+x23*x62*x73-4*x33*x72*x73-x33*x63*x72-2*x32*x732;
M3[32+35*9] = -2*x33*x732-x33*x63*x73+x23*x63*x73;
M3[32+35*10] = -2*x34*x712-x34*x61*x71-4*x31*x71*x74-x31*x64*x71+x21*x64*x71+x21*x61*x74+x24*x61*x71-x31*x61*x74;
M3[32+35*11] = -x31*x64*x72-x31*x62*x74-4*x32*x71*x74+x21*x62*x74-4*x31*x72*x74-x34*x61*x72-x32*x61*x74-x34*x62*x71+x22*x61*x74+x24*x62*x71+x22*x64*x71-4*x34*x71*x72-x32*x64*x71+x24*x61*x72+x21*x64*x72;
M3[32+35*12] = -x34*x62*x72-x32*x64*x72-x32*x62*x74-2*x34*x722-4*x32*x72*x74+x22*x64*x72+x24*x62*x72+x22*x62*x74;
M3[32+35*13] = -4*x31*x73*x74-4*x33*x71*x74-x31*x64*x73-x31*x63*x74+x23*x61*x74+x24*x61*x73+x23*x64*x71-x34*x63*x71-x33*x61*x74+x21*x63*x74-x33*x64*x71+x21*x64*x73-4*x34*x71*x73+x24*x63*x71-x34*x61*x73;
M3[32+35*14] = -x33*x64*x72+x22*x64*x73+x23*x64*x72+x24*x62*x73+x23*x62*x74-x33*x62*x74-4*x32*x73*x74-4*x34*x72*x73-x32*x64*x73-x32*x63*x74+x24*x63*x72-x34*x63*x72-x34*x62*x73+x22*x63*x74-4*x33*x72*x74;
M3[32+35*15] = -4*x33*x73*x74-x34*x63*x73-x33*x64*x73-x33*x63*x74-2*x34*x732+x23*x64*x73+x23*x63*x74+x24*x63*x73;
M3[32+35*16] = x21*x64*x74-x31*x64*x74-x34*x64*x71-x34*x61*x74-4*x34*x71*x74-2*x31*x742+x24*x64*x71+x24*x61*x74;
M3[32+35*17] = x22*x64*x74+x24*x64*x72-2*x32*x742-4*x34*x72*x74-x34*x64*x72-x34*x62*x74-x32*x64*x74+x24*x62*x74;
M3[32+35*18] = -2*x33*x742-4*x34*x73*x74-x34*x64*x73-x34*x63*x74-x33*x64*x74+x24*x63*x74+x24*x64*x73+x23*x64*x74;
M3[32+35*19] = -2*x34*x742-x34*x64*x74+x24*x64*x74;
M3[32+35*20] = 32*x11*x71-8*x31*x41-8*x21*x41;
M3[32+35*21] = -8*x31*x42-8*x32*x41+32*x12*x71-8*x21*x42-8*x22*x41+32*x11*x72;
M3[32+35*22] = -8*x32*x42+32*x12*x72-8*x22*x42;
M3[32+35*23] = -8*x23*x41-8*x21*x43+32*x13*x71-8*x33*x41+32*x11*x73-8*x31*x43;
M3[32+35*24] = 32*x13*x72-8*x32*x43-8*x33*x42-8*x22*x43-8*x23*x42+32*x12*x73;
M3[32+35*25] = -8*x33*x43+32*x13*x73-8*x23*x43;
M3[32+35*26] = -8*x21*x44-8*x24*x41-8*x34*x41+32*x11*x74-8*x31*x44+32*x14*x71;
M3[32+35*27] = -8*x32*x44-8*x34*x42-8*x22*x44-8*x24*x42+32*x12*x74+32*x14*x72;
M3[32+35*28] = 32*x14*x73+32*x13*x74-8*x34*x43-8*x33*x44-8*x23*x44-8*x24*x43;
M3[32+35*29] = -8*x34*x44+32*x14*x74-8*x24*x44;
M3[32+35*30] = 0;
M3[32+35*31] = 0;
M3[32+35*32] = 0;
M3[32+35*33] = 0;
M3[32+35*34] = 0;
M3[33+35*0] = x21*x31*x71;
M3[33+35*1] = x22*x31*x71+x21*x31*x72+x21*x32*x71;
M3[33+35*2] = x22*x32*x71+x22*x31*x72+x21*x32*x72;
M3[33+35*3] = x22*x32*x72;
M3[33+35*4] = x23*x31*x71+x21*x31*x73+x21*x33*x71;
M3[33+35*5] = x22*x31*x73+x21*x33*x72+x22*x33*x71+x23*x31*x72+x23*x32*x71+x21*x32*x73;
M3[33+35*6] = x23*x32*x72+x22*x33*x72+x22*x32*x73;
M3[33+35*7] = x21*x33*x73+x23*x33*x71+x23*x31*x73;
M3[33+35*8] = x23*x33*x72+x23*x32*x73+x22*x33*x73;
M3[33+35*9] = x23*x33*x73;
M3[33+35*10] = x24*x31*x71+x21*x34*x71+x21*x31*x74;
M3[33+35*11] = x21*x32*x74+x21*x34*x72+x22*x31*x74+x24*x32*x71+x24*x31*x72+x22*x34*x71;
M3[33+35*12] = x22*x34*x72+x24*x32*x72+x22*x32*x74;
M3[33+35*13] = x21*x33*x74+x21*x34*x73+x24*x33*x71+x23*x34*x71+x24*x31*x73+x23*x31*x74;
M3[33+35*14] = x24*x33*x72+x22*x34*x73+x23*x34*x72+x23*x32*x74+x24*x32*x73+x22*x33*x74;
M3[33+35*15] = x24*x33*x73+x23*x34*x73+x23*x33*x74;
M3[33+35*16] = x21*x34*x74+x24*x31*x74+x24*x34*x71;
M3[33+35*17] = x24*x34*x72+x22*x34*x74+x24*x32*x74;
M3[33+35*18] = x24*x33*x74+x23*x34*x74+x24*x34*x73;
M3[33+35*19] = x24*x34*x74;
M3[33+35*20] = 8*x11*x41-8*x11*x31-8*x11*x21;
M3[33+35*21] = 8*x11*x42+8*x12*x41-8*x11*x22-8*x12*x31-8*x11*x32-8*x12*x21;
M3[33+35*22] = 8*x12*x42-8*x12*x22-8*x12*x32;
M3[33+35*23] = 8*x13*x41+8*x11*x43-8*x13*x31-8*x11*x33-8*x13*x21-8*x11*x23;
M3[33+35*24] = -8*x12*x23-8*x13*x22-8*x12*x33-8*x13*x32+8*x12*x43+8*x13*x42;
M3[33+35*25] = 8*x13*x43-8*x13*x33-8*x13*x23;
M3[33+35*26] = 8*x14*x41+8*x11*x44-8*x11*x24-8*x14*x31-8*x11*x34-8*x14*x21;
M3[33+35*27] = -8*x12*x24-8*x14*x22-8*x14*x32-8*x12*x34+8*x12*x44+8*x14*x42;
M3[33+35*28] = -8*x14*x33-8*x13*x24-8*x14*x23-8*x13*x34+8*x14*x43+8*x13*x44;
M3[33+35*29] = 8*x14*x44-8*x14*x34-8*x14*x24;
M3[33+35*30] = 0;
M3[33+35*31] = 0;
M3[33+35*32] = 0;
M3[33+35*33] = 0;
M3[33+35*34] = 0;
M3[34+35*0] = -x11*x41*x71+x11*x31*x71-x11*x21*x71+x11*x31*x61-x11*x21*x61+x21*x31*x41;
M3[34+35*1] = x22*x31*x41-x11*x41*x72+x11*x32*x61-x11*x22*x61-x12*x21*x61-x11*x21*x62+x12*x31*x61+x11*x32*x71+x11*x31*x62+x21*x31*x42+x11*x31*x72-x11*x42*x71-x12*x41*x71+x12*x31*x71-x11*x22*x71-x11*x21*x72-x12*x21*x71+x21*x32*x41;
M3[34+35*2] = -x11*x22*x72+x12*x32*x61+x12*x31*x62-x11*x22*x62-x12*x42*x71+x11*x32*x62-x12*x21*x62-x12*x22*x61-x12*x22*x71-x11*x42*x72-x12*x41*x72+x12*x31*x72+x11*x32*x72+x12*x32*x71-x12*x21*x72+x22*x31*x42+x22*x32*x41+x21*x32*x42;
M3[34+35*3] = -x12*x42*x72+x12*x32*x72+x22*x32*x42+x12*x32*x62-x12*x22*x62-x12*x22*x72;
M3[34+35*4] = x21*x31*x43+x21*x33*x41+x11*x33*x61-x11*x23*x61-x11*x21*x63+x23*x31*x41+x13*x31*x71+x11*x33*x71+x11*x31*x63-x11*x21*x73-x11*x41*x73+x11*x31*x73-x11*x43*x71-x13*x41*x71-x13*x21*x61+x13*x31*x61-x13*x21*x71-x11*x23*x71;
M3[34+35*5] = x11*x32*x73-x13*x41*x72-x13*x42*x71-x12*x41*x73-x13*x22*x71+x21*x32*x43-x12*x43*x71+x22*x31*x43+x11*x33*x72-x11*x22*x73-x13*x22*x61-x11*x22*x63-x11*x23*x62-x12*x23*x71+x13*x31*x72+x12*x33*x71+x13*x32*x71+x12*x31*x73+x12*x31*x63+x23*x32*x41+x21*x33*x42+x22*x33*x41-x11*x42*x73-x12*x21*x73+x13*x32*x61-x12*x23*x61-x11*x23*x72-x13*x21*x72-x12*x21*x63+x23*x31*x42-x11*x43*x72+x11*x33*x62+x13*x31*x62+x12*x33*x61+x11*x32*x63-x13*x21*x62;
M3[34+35*6] = x12*x33*x72-x12*x43*x72-x13*x42*x72+x12*x32*x73+x13*x32*x72-x13*x22*x72+x12*x33*x62+x13*x32*x62+x12*x32*x63-x12*x23*x72-x13*x22*x62-x12*x22*x73-x12*x23*x62-x12*x22*x63+x22*x33*x42+x23*x32*x42-x12*x42*x73+x22*x32*x43;
M3[34+35*7] = x11*x33*x63-x13*x23*x61+x23*x31*x43+x23*x33*x41+x21*x33*x43-x13*x21*x63+x13*x31*x63-x13*x21*x73-x13*x23*x71-x11*x23*x73-x11*x23*x63+x13*x33*x71+x13*x33*x61-x13*x43*x71+x11*x33*x73-x11*x43*x73-x13*x41*x73+x13*x31*x73;
M3[34+35*8] = x13*x33*x62-x13*x22*x73-x12*x23*x73+x13*x32*x63+x12*x33*x63+x23*x33*x42-x13*x22*x63-x13*x23*x62-x12*x23*x63+x23*x32*x43-x13*x43*x72-x13*x42*x73-x12*x43*x73+x22*x33*x43+x13*x32*x73+x13*x33*x72+x12*x33*x73-x13*x23*x72;
M3[34+35*9] = -x13*x43*x73+x13*x33*x73+x23*x33*x43-x13*x23*x63+x13*x33*x63-x13*x23*x73;
M3[34+35*10] = -x14*x21*x61-x14*x21*x71-x11*x44*x71+x11*x34*x71-x11*x41*x74+x11*x31*x74-x14*x41*x71+x14*x31*x71+x21*x31*x44+x21*x34*x41+x24*x31*x41-x11*x24*x61-x11*x21*x64-x11*x21*x74+x14*x31*x61-x11*x24*x71+x11*x34*x61+x11*x31*x64;
M3[34+35*11] = x11*x32*x64+x11*x34*x62+x12*x31*x74+x14*x32*x71+x14*x31*x72-x11*x24*x72+x11*x32*x74-x12*x44*x71-x14*x42*x71+x22*x31*x44+x21*x34*x42-x14*x41*x72-x11*x44*x72+x11*x34*x72-x14*x21*x72-x11*x22*x64+x12*x31*x64+x14*x31*x62+x14*x32*x61+x12*x34*x71-x14*x22*x71-x14*x22*x61-x12*x24*x71-x12*x21*x64-x11*x42*x74-x11*x24*x62+x24*x32*x41+x22*x34*x41+x24*x31*x42+x12*x34*x61-x14*x21*x62-x11*x22*x74-x12*x21*x74-x12*x24*x61+x21*x32*x44-x12*x41*x74;
M3[34+35*12] = x12*x32*x64+x12*x34*x62-x14*x22*x72-x12*x44*x72-x14*x42*x72+x12*x32*x74+x12*x34*x72+x14*x32*x72-x12*x22*x74-x14*x22*x62-x12*x24*x62+x24*x32*x42-x12*x22*x64+x22*x32*x44-x12*x42*x74+x14*x32*x62-x12*x24*x72+x22*x34*x42;
M3[34+35*13] = -x14*x23*x61+x14*x31*x73+x13*x34*x61-x14*x43*x71+x11*x34*x73+x11*x33*x74-x14*x41*x73+x11*x33*x64+x14*x31*x63+x11*x34*x63-x13*x24*x61-x11*x23*x64+x24*x33*x41-x13*x21*x64-x14*x21*x63+x14*x33*x71-x13*x24*x71-x14*x21*x73-x13*x41*x74-x11*x24*x63+x13*x31*x74+x13*x34*x71+x14*x33*x61-x13*x21*x74-x11*x24*x73-x11*x23*x74+x23*x34*x41+x23*x31*x44-x14*x23*x71+x24*x31*x43-x13*x44*x71-x11*x44*x73-x11*x43*x74+x21*x33*x44+x21*x34*x43+x13*x31*x64;
M3[34+35*14] = x24*x32*x43-x12*x23*x64-x12*x24*x63-x14*x22*x63-x13*x24*x62-x13*x22*x64+x22*x34*x43+x22*x33*x44-x14*x23*x72+x14*x33*x72+x14*x32*x73+x13*x32*x74+x23*x34*x42+x23*x32*x44+x24*x33*x42-x13*x42*x74-x13*x44*x72-x12*x43*x74+x13*x34*x72+x12*x34*x73-x12*x44*x73-x14*x42*x73+x12*x33*x74-x14*x23*x62+x13*x34*x62+x13*x32*x64-x14*x43*x72-x12*x23*x74-x13*x24*x72+x12*x34*x63-x14*x22*x73+x12*x33*x64+x14*x33*x62-x13*x22*x74-x12*x24*x73+x14*x32*x63;
M3[34+35*15] = x13*x33*x64+x14*x33*x73+x13*x33*x74-x14*x23*x73+x13*x34*x73-x13*x43*x74-x13*x44*x73-x14*x43*x73+x23*x33*x44+x23*x34*x43+x24*x33*x43-x14*x23*x63-x13*x23*x64-x13*x24*x63+x13*x34*x63+x14*x33*x63-x13*x24*x73-x13*x23*x74;
M3[34+35*16] = -x14*x24*x61+x14*x34*x61+x14*x31*x64-x11*x24*x64+x24*x34*x41+x14*x34*x71+x21*x34*x44-x11*x44*x74-x14*x41*x74-x14*x44*x71+x11*x34*x74+x14*x31*x74-x11*x24*x74-x14*x21*x64-x14*x24*x71+x11*x34*x64-x14*x21*x74+x24*x31*x44;
M3[34+35*17] = x14*x32*x64-x12*x24*x74+x14*x34*x62+x12*x34*x64-x14*x24*x62+x24*x32*x44-x12*x24*x64-x14*x22*x74+x22*x34*x44-x14*x22*x64+x24*x34*x42+x14*x34*x72-x14*x44*x72-x12*x44*x74+x14*x32*x74-x14*x42*x74+x12*x34*x74-x14*x24*x72;
M3[34+35*18] = x13*x34*x64+x14*x33*x64-x13*x24*x74-x14*x24*x73-x14*x23*x74+x13*x34*x74-x13*x44*x74-x14*x44*x73-x14*x43*x74+x14*x34*x73+x14*x33*x74+x23*x34*x44+x24*x34*x43+x24*x33*x44-x14*x23*x64-x14*x24*x63-x13*x24*x64+x14*x34*x63;
M3[34+35*19] = -x14*x44*x74+x14*x34*x74+x24*x34*x44-x14*x24*x64+x14*x34*x64-x14*x24*x74;
M3[34+35*20] = 0;
M3[34+35*21] = 0;
M3[34+35*22] = 0;
M3[34+35*23] = 0;
M3[34+35*24] = 0;
M3[34+35*25] = 0;
M3[34+35*26] = 0;
M3[34+35*27] = 0;
M3[34+35*28] = 0;
M3[34+35*29] = 0;
M3[34+35*30] = 0;
M3[34+35*31] = 0;
M3[34+35*32] = 0;
M3[34+35*33] = 0;
M3[34+35*34] = 0;
}
