Changeset ce5d1b in git


Ignore:
Timestamp:
Mar 9, 2018, 2:04:12 PM (5 years ago)
Author:
Karim Abou Zeid <karim23697@…>
Branches:
(u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'a657104b677b4c461d018cbf3204d72d34ad66a9')
Children:
d0e571d99494f542cf693a3408acb2ca2148ac5f
Parents:
e7d857c86f3cb449cc12afb10bd08b618619805845fa962b8938643ace5cdc03f189d4457e4c7408
Message:
Merge branch 'stable' into lpDivision
Files:
56 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/arr.lib

    re7d857 rce5d1b  
    13401340            after a tranformation x -> Tx + c we have the arrangement has the matrix representation
    13411341            [AT^-1|b+AT^-1c] such that [AT^-1]_v = I and [b+AT^-1c]_v = 0;
    1342 NOTE:       algorith performs a base change if H_k is homogenous (i.e. has no)
     1342NOTE:       algorithm performs a base change if H_k is homogenous (i.e. has no)
    13431343            constant term and an affine transformation otherwise
    13441344            Ax+b = 0, Transformation x = Ty+c: AT^-1y + AT^-1c + b = 0
  • Singular/LIB/autgradalg.lib

    re7d857 rce5d1b  
    11////////////////////////////////////////////////////////////////////////////////
    2 version="version autgradalg.lib 4.1.1.0 Dec_2017 "; //$Id$
     2version="version autgradalg.lib 4.1.1.1 Feb_2018 "; // $Id$
    33category="Commutative Algebra, Algebraic Geometry";
    44info="
     
    2727autX(I0, w, TOR): compute the automorphism group of X=X(R,w) as an algebraic subgroup V(I) of some GL(n).
    2828
    29 NOTE: the following functions were taken from 'quotsingcox.lib' by M.Donten-Bury and S.Keicher: 'hilbBas'.
     29NOTE: the following functions were taken from 'quotsingcox.lib' by M.Donten-Bury and S.Keicher: 'hilbertBas'.
     30NOTE: This library comes without any warranty whatsoever. Use it at your own risk.
    3031
    3132KEYWORDS: automorphisms; graded algebra; Mori dream spaces; automorphism group; symmetries
     
    301302    } else {
    302303      // if delta is not in cQ, then there is no monomial of this degree:
    303       if(containsInSupportOld(cQ, delta)){
     304      if(containsInSupport(cQ, delta)){
    304305        // calculate all monomials of degree delta
    305306        list deltaMON = wmonomials(delta, 0, TOR);
     
    659660      for(k = 1; k <= size(DL); k++){
    660661        intmat A = concatBCD(AUT0[i], CL[j], DL[k]);
     662
    661663        // M * Origs = Origs?:
    662664        if(fixesOrig(A, Origs, OrigDim, TOR)){
     
    29722974// compute generators for the veronese subalgebra
    29732975static proc veron(intmat P){
    2974   cone V = linearHull(P);//coneViaPoints(M);
     2976  // linear hull of P:
     2977  intmat Pplusminus[2*nrows(P)][ncols(P)] = P, -P;
     2978
     2979  cone V = coneViaPoints(Pplusminus);
    29752980  cone posorth = coneViaPoints(getIdMat(ambientDimension(V)));
    29762981  cone c = convexIntersection(V, posorth);
     
    30463051example
    30473052{
    3048   echo=2;
    3049 
    3050   /////////////
    3051   // PP2
    3052 //  intmat Q[1][4] =
    3053 //    1,1,1,1;
    3054 //
    3055 //  ring R = 0,T(1..ncols(Q)),dp;
    3056 //
    3057 //  // attach degree matrix Q to R:
    3058 //  setBaseMultigrading(Q);
    3059 //  ideal I = 0;
    3060 //  intvec w0 = 1;
    3061 //
    3062 //  def RR = autX(I, w0);
    3063 //  setring RR;
    3064 //  Iexported;
    3065 //
    3066 //  basering;
    3067 //  dim(std(Iexported));
    3068 //
    3069 //  kill RR, Q, R;
    3070 //
    3071 //  quit;
    3072 //  /////////////
    3073 //  // example 3.14 from the paper
    3074 //  intmat Q[3][5] =
    3075 //    1,1,1,1,1,
    3076 //    1,-1,0,0,1,
    3077 //    1,1,1,0,0;
    3078 //
    3079 //  list TOR = 2;
    3080 //  ring R = 0,T(1..5),dp;
    3081 //
    3082 //  // attach degree matrix Q to R:
    3083 //  setBaseMultigrading(Q);
    3084 //
    3085 //  ideal I = T(1)*T(2) + T(3)^2 + T(4)^2;
    3086 //  list TOR = 2;
    3087 //
    3088 //  intvec w0 = 2,1,0;
    3089 //  def RR = autX(I, w0, TOR);
    3090 //  setring RR;
    3091 //
    3092 //  kill RR, Q, R;
     3053  ///////////////
     3054  //// CAREFUL: the following examples seems to be unfeasible at the moment, see remark in the paper
     3055
     3056  //echo=2;
     3057  ///////////////
     3058  //// PP2
     3059  //intmat Q[1][4] =
     3060  //  1,1,1,1;
     3061
     3062  //ring R = 0,T(1..ncols(Q)),dp;
     3063
     3064  //// attach degree matrix Q to R:
     3065  //setBaseMultigrading(Q);
     3066  //ideal I = 0;
     3067  //intvec w0 = 1;
     3068
     3069  //def RR = autX(I, w0);
     3070  //setring RR;
     3071  //Iexported;
     3072
     3073  //basering;
     3074  //dim(std(Iexported));
     3075
     3076  //kill RR, Q, R;
     3077
     3078  ///////////////
     3079  //// example 3.14 from the paper
     3080  //intmat Q[3][5] =
     3081  //  1,1,1,1,1,
     3082  //  1,-1,0,0,1,
     3083  //  1,1,1,0,0;
     3084
     3085  //list TOR = 2;
     3086  //ring R = 0,T(1..5),dp;
     3087
     3088  //// attach degree matrix Q to R:
     3089  //setBaseMultigrading(Q);
     3090
     3091  //ideal I = T(1)*T(2) + T(3)^2 + T(4)^2;
     3092  //list TOR = 2;
     3093
     3094  //intvec w0 = 2,1,0;
     3095  //def RR = autX(I, w0, TOR);
     3096  //setring RR;
     3097
     3098  //kill RR, Q, R;
    30933099}
    30943100
     
    31113117    1,3;
    31123118
    3113   intmat B = hilbBas(coneViaPoints(A));
     3119  intmat B = hilbertBas(coneViaPoints(A));
    31143120  print(B);
    31153121
     
    31203126    6, 3, 4, 2;
    31213127
    3122   intmat D = hilbBas(coneViaPoints(C));
     3128  intmat D = hilbertBas(coneViaPoints(C));
    31233129  print(D);
    31243130
  • Singular/LIB/fpadim.lib

    re7d857 rce5d1b  
    23852385  ivMaxIdeal(2,0);
    23862386  ivMaxIdeal(2,1);
    2387   ivMaxIdeal(4,0);
    2388   ivMaxIdeal(4,1);
    23892387}
    23902388
     
    24082406  lpMaxIdeal(2,0);
    24092407  lpMaxIdeal(2,1);
    2410   lpMaxIdeal(4,0);
    2411   lpMaxIdeal(4,1);
    24122408}
    24132409
  • Singular/LIB/fpaprops.lib

    re7d857 rce5d1b  
    630630}
    631631
    632 static proc lpUfGraph(ideal G, list #)
    633 "USAGE: lpUfGraph(G); G a set of monomials in a letterplace ring, # an optional parameter to return the vertex list when set
    634 RETURN: intmat
     632proc lpUfGraph(ideal G, list #)
     633"USAGE: lpUfGraph(G); G a set of monomials in a letterplace ring.
     634@*      lpUfGraph(G,1); G a set of monomials in a letterplace ring.
     635RETURN: intmat or list
     636NOTE: lpUfGraph(G); returns intmat. lpUfGraph(G,1); returns list L with L[1] an intmat and L[2] an ideal.
     637      The intmat is the Ufnarovskij Graph and the ideal contains the vertices.
    635638PURPOSE: Constructs the Ufnarovskij graph induced by G
    636639      the adjacency matrix of the Ufnarovskij graph induced by G
     
    669672  if (size(#) > 0) {
    670673    if (typeof(#[1]) == "int") {
    671       if (#[1] == 1) {
     674      if (#[1] != 0) {
    672675        list ret = UG;
    673676        ret[2] = ivL2lpI(SW); // the vertices
     
    677680  }
    678681  return (UG);
     682}
     683example {
     684  "EXAMPLE:"; echo = 2;
     685  ring r = 0,(x,y,z),dp;
     686  def R = makeLetterplaceRing(5); // constructs a Letterplace ring
     687  setring R; // sets basering to Letterplace ring
     688  ideal I = x(1)*y(2), x(1)*z(2), z(1)*y(2), z(1)*z(2);
     689  lpUfGraph(I);
     690  lpUfGraph(I,1);
    679691}
    680692
  • Singular/LIB/freegb.lib

    r45fa96 rce5d1b  
    4949LIB "qhmoduli.lib"; // for Max
    5050LIB "bfun.lib"; // for inForm
     51LIB "fpadim.lib"; // for intvec conversion
    5152
    5253proc tstfreegb()
     
    32763277}
    32773278
     3279proc lpDivision(poly p, ideal I)
     3280"ASSUME: I is a Groebner basis G = {g1,...,gN}, the original ring of the Letterplace ring has the name 'r' and no variable is called 'tag_i' for i in 1...N
     3281RETURN: list L
     3282NOTE: - L[1] NF(p,I)
     3283      - L[2] list of expressions [i,l_{ij},r_{ij}] with \sum_{i,j} l_{ij} g_i r_{ij} = p - NF(p,I)
     3284"
     3285{
     3286  if (p == 0 || size(I) == 0) {
     3287    list L = 0;
     3288    list empty;
     3289    L[2] = empty;
     3290    return (L);
     3291  }
     3292  poly pNF = lpNF(p,I);
     3293  p = p - pNF;
     3294
     3295  // make new ring
     3296  def save = basering;
     3297  int norigvars = nvars(r);
     3298  string tagvarstr = "(tag_1";
     3299  for (int i = 2; i <= size(I); i++) {
     3300    tagvarstr = tagvarstr + ",tag_" + string(i);
     3301  }
     3302  tagvarstr = tagvarstr + ")";
     3303  string field = string(ringlist(r)[1]);
     3304  execute("ring @tags = " + field + "," + tagvarstr + ",dp;");
     3305  ring @tagged = (r + @tags);
     3306  def @R = makeLetterplaceRing(attrib(save,"uptodeg")); setring @R;
     3307
     3308  // restore vars
     3309  poly p = imap(save, p);
     3310  poly pNF = imap(save, pNF);
     3311  ideal I = imap(save, I);
     3312  for (int i = 1; i <= size(I); i++) {
     3313    I[i] = I[i] + var(norigvars + i);
     3314  }
     3315
     3316  list summands;
     3317  list L = pNF;
     3318  poly pTaggedNF = lpNF(p,I);
     3319  pTaggedNF = pTaggedNF * leadcoef(p); // somehow pTaggedNF gets normalized
     3320  for (int i = 1; i <= size(pTaggedNF); i++) {
     3321    intvec iv = lp2iv(pTaggedNF[i]);
     3322    for (int j = 1; j <= size(iv); j++) {
     3323      if (iv[j] > norigvars) {
     3324        intvec left;
     3325        intvec right;
     3326        if (j > 1) {
     3327          left = iv[1..(j-1)];
     3328        }
     3329        if (j < size(iv)) {
     3330          right = iv[(j+1)..size(iv)];
     3331        }
     3332        list summand = (iv[j] - norigvars), leadcoef(pTaggedNF[i])*iv2lp(left), iv2lp(right);
     3333        summands = insert(summands, summand, size(summands));
     3334        break;
     3335      }
     3336    }
     3337  }
     3338
     3339  L[2] = summands;
     3340
     3341  setring save;
     3342  list L = imap(@R,L);
     3343  return(L);
     3344}
     3345
     3346proc lpGBPres2Poly(list L, ideal I)
     3347"ASSUME: L is a valid Groebner presentation as for example the result of lpDivision
     3348RETURN: poly
     3349NOTE: computes p = \sum_{i,j} l_{ij} g_i r_{ij} + NF(p,I) = \sum_{i} L[2][i][2] I[L[2][i][1]] L[2][i][3] + L[1]
     3350"
     3351{
     3352  poly p;
     3353  for (int i = 1; i <= size(L[2]); i++) {
     3354    p = p + lpMult(lpMult(L[2][i][2], I[L[2][i][1]]), L[2][i][3]);
     3355  }
     3356  p = p + L[1];
     3357  return (p);
     3358}
     3359
    32783360//procedures to convert monomials into the DVec representation, all static
    32793361////////////////////////////////////////////////////////
  • Singular/LIB/goettsche.lib

    re7d857 rce5d1b  
    11////////////////////////////////////////////////////////////////
    2 version = "version goettsche.lib 4.1.1.0 Sep_2017 ";  // $Id$
    3 category = "Betti numbers";
     2version = "version goettsche.lib 0.931 Feb_2018 ";      //$Id$
    43info="
    54LIBRARY:  goettsche.lib     Drezet's formula for the Betti numbers of the moduli space
    6                             of Kronecker modules,
     5                            of Kronecker modules;
    76                            Goettsche's formula for the Betti numbers of the Hilbert scheme
    8                             of points on a surface,
     7                            of points on a surface;
     8                            Nakajima's and Yoshioka's formula for the Betti numbers
     9                            of the punctual Quot-schemes on a plane or, equivalently,
     10                            of the moduli spaces of the framed torsion-free planar sheaves;
    911                            Macdonald's formula for the symmetric product
    1012
     
    2123  [3] Macdonald, I. G.,     The Poincare polynomial of a symmetric product,
    2224                            Mathematical proceedings of the Cambridge Philosophical Society:
    23                             58, 563 - 568, (1962).
     25                            58, 563-568, (1962).
     26
     27  [4] Nakajima, Hiraku;     Lectures on instanton counting, CRM Proceedings and Lecture Notes,
     28      Yoshioka, Kota        Volume 88, 31-101, (2004).
    2429
    2530PROCEDURES:
     
    2732  PPolyH(z, n, b);          Poincare Polynomial of the Hilbert scheme of n points on a surface
    2833  BettiNumsH(n, b);         Betti numbers of the Hilbert scheme of n points on a surface
     34  NakYoshF(z, t, r, n);     The Nakajima-Yoshioka formula up to n-th degree
     35  PPolyQp(z, n, b);         Poincare Polynomial of the punctual Quot-scheme
     36                            of rank r on n planar points
     37  BettiNumsQp(n, b);        Betti numbers of the punctual Quot-scheme
     38                            of rank r on n planar points
    2939  MacdonaldF(z, t, n, b);   The Macdonald's formula up to n-th degree
    3040  PPolyS(z, n, b);          Poincare Polynomial of the n-th symmetric power of a variety
     
    3545                            of Kronecker modules N (q; m, n)
    3646
    37 KEYWORDS: betti number; Goettsche's formula; Macdonald's formula;Kronecker modules
     47KEYWORDS:  Betty number; Goettsche's formula; Macdonald's formula; Kronecker module; Hilbert scheme; Quot-scheme; framed sheaves; symmetric product
    3848";
    3949//----------------------------------------------------------
     
    6171    return( poly(0) );
    6272  }
    63   // now is non-negative and b is a list of non-negative integers
     73  // now n is non-negative and b is a list of non-negative integers
    6474  if(size(b) < 5) // if there are not enough Betti numbers
    6575  {
     
    124134    return( poly(0) );
    125135  }
    126   // now is non-negative and b is a list of non-negative integers
     136  // now n is non-negative and b is a list of non-negative integers
    127137  if(size(b) < 5) // if there are not enough Betti numbers
    128138  {
     
    188198    return(list());
    189199  }
    190   // now is non-negative and b is a list of non-negative integers
     200  // now n is non-negative and b is a list of non-negative integers
    191201  if(size(b) < 5) // if there are not enough Betti numbers
    192202  {
     
    229239  // get the Betti numbers of the Hilbert scheme of 3 points on P_2
    230240  print( BettiNumsH(3, b) );
     241}
     242//----------------------------------------------------------
     243
     244proc NakYoshF(poly z, poly t, int r, int n)
     245"USAGE:   NakYoshF(z, t, r, n);  z, t polynomials, r, n integers
     246RETURN:   polynomial in z and t
     247PURPOSE:  computes the formula of Nakajima and Yoshioka
     248          up to degree n in t
     249EXAMPLE:  example NakYoshF; shows an example
     250NOTE:     zero is returned if n<0 or r<=0
     251"
     252{
     253  // check the input data
     254  if(n<0)
     255  {
     256    print("the number of points must be non-negative");
     257    print("zero polynomial is returned");
     258    return( poly(0) );
     259  }
     260  if(r<=0)
     261  {
     262    print("r must be positive");
     263    print("zero polynomial is returned");
     264    return( poly(0) );
     265  }
     266  // now n is non-negative and r is positive
     267  def br@=basering; // remember the base ring
     268  // add additional variables z@, t@ to the base ring
     269  execute("ring r@= (" + charstr(basering) + "),("+varstr(basering)+", z@, t@), dp;" );
     270  execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings
     271  // compute the generating function by the Nakajima-Yoshioka formula up to degree n in t@
     272  poly rez=1;
     273  int k,i;
     274  ideal I=std(t@^(n+1));
     275  for(k=1;k<=n;k++)
     276  {
     277    for(i=1;i<=r;i++)
     278    {
     279      rez=NF( rez*generFactor( z@^(2*(r*k-i))*t@^k, k, 0, 1, n), I);
     280    }
     281  }
     282  setring br@; // come back to the initial base ring
     283  // define the specialization homomorphism z@=z, t@=t
     284  execute( "map FF= r@,"+varstr(br@)+", z, t;" );
     285  poly rez=FF(rez); // bring the result to the base ring
     286  return(rez);
     287}
     288example
     289{
     290  "EXAMPLE:"; echo=2;
     291  ring r=0, (t, z), ls;
     292  // get the Nakajima-Yoshioka formula for r=1 up to degree 3, i.e.,
     293  // the generating function for the Poincare polynomials of the
     294  // punctual Hilbert schemes of n planar points
     295  print( NakYoshF(z, t, 1, 3) );
     296}
     297//----------------------------------------------------------
     298
     299proc PPolyQp(poly z, int r, int n)
     300"USAGE:   PPolyQp(z, r, n);  z polynomial, r, n integers
     301RETURN:   polynomial in z
     302PURPOSE:  computes the Poincare polynomial of the punctual Quot-scheme
     303          of rank r on n planar points
     304EXAMPLE:  example PPolyQp; shows an example
     305NOTE:     zero is returned if n<0 or r<=0
     306"
     307{
     308  // check the input data
     309  if(n<0)
     310  {
     311    print("the number of points must be non-negative");
     312    print("zero polynomial is returned");
     313    return( poly(0) );
     314  }
     315  if(r<=0)
     316  {
     317    print("r must be positive");
     318    print("zero polynomial is returned");
     319    return( poly(0) );
     320  }
     321  // now n is non-negative and r is positive
     322  def br@=basering; // remember the base ring
     323  // add additional variables z@, t@ to the base ring
     324  execute("ring r@= (" + charstr(basering) + "),("+varstr(basering)+", z@, t@), dp;" );
     325  execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings
     326  // compute the generating function by the Nakajima-Yoshioka formula up to degree n in t@
     327  poly rez=1;
     328  int k,i;
     329  ideal I=std(t@^(n+1));
     330  for(k=1;k<=n;k++)
     331  {
     332    for(i=1;i<=r;i++)
     333    {
     334      rez=NF(rez*generFactor( z@^(2*(r*k-i))*t@^k, k, 0, 1, n), I);
     335    }
     336  }
     337  rez= coeffs(rez, t@)[n+1, 1]; // take the coefficient of the n-th power of t@
     338  setring br@; // come back to the initial base ring
     339  // define the specialization homomorphism z@=z, t@=0
     340  execute( "map FF= r@,"+varstr(br@)+",z, 0;" );
     341  poly rez=FF(rez); // bring the result to the base ring
     342  return(rez);
     343}
     344example
     345{
     346  "EXAMPLE:"; echo=2;
     347  ring r=0, (z), ls;
     348  // get the Poincare polynomial of the punctual Hilbert scheme (r=1)
     349  // of 3 planar points
     350  print( PPolyQp(z, 1, 3) );
     351}
     352//----------------------------------------------------------
     353
     354proc BettiNumsQp(int r, int n)
     355"USAGE:   BettiNumsQp(r, n);  n, r integers
     356RETURN:   list of non-negative integers
     357PURPOSE:  computes the Betti numbers of the punctual Quot-scheme
     358          of rank r on n points on a plane
     359EXAMPLE:  example BettiNumsQp; shows an example
     360NOTE:     an empty list is returned if n<0 or r<=0
     361"
     362{
     363  // check the input data
     364  if(n<0)
     365  {
     366    print("the number of points must be non-negative");
     367    print("zero polynomial is returned");
     368    return( poly(0) );
     369  }
     370  if(r<=0)
     371  {
     372    print("r must be positive");
     373    print("zero polynomial is returned");
     374    return( poly(0) );
     375  }
     376  // now n is non-negative and r is positive
     377  def br@=basering; // remember the base ring
     378  // add additional variables z@, t@ to the base ring
     379  execute("ring r@= (" + charstr(basering) + "),("+varstr(basering)+", z@, t@), dp;" );
     380  execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings
     381  poly rez=1;
     382  int k,i;
     383  ideal I=std(t@^(n+1));
     384  for(k=1;k<=n;k++)
     385  {
     386    for(i=1;i<=r;i++)
     387    {
     388      rez=NF(rez*generFactor( z@^(2*(r*k-i))*t@^k, k, 0, 1, n), I);
     389    }
     390  }
     391  rez= coeffs(rez, t@)[n+1, 1]; // take the coefficient of the n-th power of t@
     392  matrix CF=coeffs(rez, z@); // take the matrix of the coefficients
     393  list res; // and transform it to a list
     394  int d=size(CF);
     395  for(i=1; i<=d; i++)
     396  {
     397    res=res+ list(int(CF[i, 1])) ;
     398  }
     399  setring br@; // come back to the initial base ring
     400  return(res);
     401}
     402example
     403{
     404  "EXAMPLE:"; echo=2;
     405  ring r=0, (z), ls;
     406  // get the Betti numbers of the punctual Hilbert scheme (r=1)
     407  // of 3 points on a plane
     408  print( BettiNumsQp(1, 3) );
    231409}
    232410//----------------------------------------------------------
     
    728906}
    729907//----------------------------------------------------------
    730 
  • Singular/LIB/multigrading.lib

    re7d857 rce5d1b  
    31193119"
    31203120{
    3121    if( system("sh","which hilbert 2> /dev/null 1> /dev/null") != 0 )
     3121   // find the name of hilbert/4ti2-hilbert
     3122   string s_name=system("executable","hilbert");
     3123   if (size(s_name)==0) { s_name=system("executable","4ti2-hilbert"); /* debian*/ }
     3124
     3125   if( size(s_name)==0 )
    31223126   {
    31233127     ERROR("Sorry: cannot find 'hilbert' command from 4ti2. Please install 4ti2!");
     
    31773181
    31783182
    3179    j=system("sh","hilbert -q sing4ti2 >/dev/null 2>&1"); ////////// be quiet + no loggin!!!
     3183   j=system("sh",s_name+" -q sing4ti2 >/dev/null 2>&1"); ////////// be quiet + no loggin!!!
    31803184
    31813185   j=system("sh", "awk \'BEGIN{ORS=\",\";}{print $0;}\' sing4ti2.hil " +
  • Singular/LIB/schreyer.lib

    re7d857 rce5d1b  
    11///////////////////////////////////////////////////////////////////////////////
    2 version="version schreyer.lib 4.1.1.0 Dec_2017 "; // $Id$
     2version="version schreyer.lib 4.1.1.1 Feb_2018 "; // $Id$
    33category="General purpose";
    44info="
    5 LIBRARY: schreyer.lib Schreyer resolution computations and helpers for derham.lib
     5LIBRARY: schreyer.lib helpers for derham.lib
    66AUTHOR:  Oleksandr Motsak <U@D>, where U={motsak}, D={mathematik.uni-kl.de}
    77KEYWORDS: Schreyer ordering; Schreyer resolution; syzygy
     
    5555
    5656PROCEDURES:
    57   s_res(M,l)   compute Schreyer resolution via LiftTree method from [BMSS]
    5857  Sres(M,l)    helper for computing Schreyer resolution
    5958  Ssyz(M)      helper for computing Schreyer resolution of module M of length 1
    6059  Scontinue(l) helper for extending currently active resolution
    61   SSres(M,l)    helper2 for computing Schreyer resolution
    62   SSsyz(M)      helper2 for computing Schreyer resolution of module M of length 1
    63   SScontinue(l) helper2 for extending currently active resolution
    64 
    65 SEE ALSO: syz, sres, lres, res
     60
     61SEE ALSO: syz, sres, lres, res, fres
    6662";
    6763
     
    121117  return (list(G, II));
    122118}
    123 
    124 static proc splitSyzGB( module J, int c )
    125 {
    126   module JJ; vector v, vv; int i;
    127 
    128   for( i = ncols(J); i > 0; i-- )
    129   {
    130     v = J[i];
    131 
    132     vv = 0;
    133 
    134     while(   Syzextra::leadcomp(v) <= c )
    135     {
    136       vv = vv + lead(v);
    137       v  = v  - lead(v);
    138     }
    139 
    140     J[i] = vv;
    141     JJ[i] = v;
    142   }
    143 
    144   J = simplify(J, 2);
    145   JJ = simplify(JJ, 2);
    146 
    147   return (list(J, JJ));
    148 }
    149 
    150119
    151120static proc Sinit(module M)
     
    302271}
    303272
    304 proc Ssyz(module M)
    305 "USAGE:  Ssyz(module M)
    306 RETURN:  ring, containing a Schreyer resolution
    307 PURPOSE: computes a Schreyer resolution of M of length 1 (see the library overview)
    308 SEE ALSO: Sres
    309 EXAMPLE: example Ssyz; shows an example
    310 "
    311 {
    312   def S = Sinit(M); setring S;
    313 
    314   Sstep(); // NOTE: what if M is zero?
    315 
    316   return (S);
    317 }
    318 example
    319 { "EXAMPLE:"; echo = 2;
    320   ring r;
    321   module M = maxideal(1); M;
    322   def S = Ssyz(M); setring S; S;
    323   "Only the first syzygy: ";
    324   RES;
    325   MRES; // Note gen(i)
    326   kill S;
    327   setring r; kill M;
    328 
    329   module M = 0;
    330   def S = Ssyz(M); setring S; S;
    331   "Only the first syzygy: ";
    332   RES;
    333   MRES;
    334 }
    335 
    336273proc Sres(module M, int l)
    337274"USAGE:  Sres(module M, int len)
     
    377314}
    378315
    379 
    380 
    381316// ================================================================== //
    382317
    383 
    384 LIB "general.lib"; // for sort
    385 
    386 static proc MySort(def M)
    387 " Sorts the given ideal or module wrt >_{(c, ds)}  (.<.<.<.<) "
    388 {
    389   if( typeof( attrib(basering, "DEBUG") ) == "int" )
    390   {
    391     int @DEBUG = attrib(basering, "DEBUG");
    392   } else
    393   {
    394     int @DEBUG = 0; // !system("with", "ndebug");
    395   }
    396 
    397   if( typeof( attrib(basering, "KERCHECK") ) == "int" )
    398   {
    399     int @KERCHECK = attrib(basering, "KERCHECK");
    400   } else
    401   {
    402     int @KERCHECK = @DEBUG;
    403   }
    404 
    405   def @N = M;
    406 
    407   if( size(M) > 0 )
    408   {
    409     Syzextra::Sort_c_ds(@N);
    410 
    411     if( @KERCHECK )
    412     {
    413       def iv = sort(lead(M), "c,ds", 1)[2]; // ,1 => reversed! // TODO: not needed?
    414       def @M = M;
    415       @M = M[iv];
    416 
    417       // 0^th syz. property
    418       if( (size(@N) + size(@M)) > 0 )
    419       {
    420         if( size(module( matrix(module(matrix(@N))) - matrix(module(matrix(@M))) )) > 0 )
    421         {
    422           "ERROR: MySort: wrong sorting in 'MySort': @N != @M!!!";
    423 
    424           "@M:"; @M;
    425           "@N:"; @N;
    426 
    427           "module( matrix(module(matrix(@N))) - matrix(module(matrix(@M))) ): ";
    428           module( matrix(module(matrix(@N))) - matrix(module(matrix(@M))) );
    429 
    430           "ERROR: MySort: wrong sorting in 'MySort': @N != @M!!!";
    431         }
    432       }
    433     }
    434   }
    435 
    436   return (@N);
    437 }
    438 
    439 
    440 /* static */
    441 proc SSinit(def M)
    442 {
    443 //  rtimer, "***TIMESNAP0 for SSinit: on level: [",-1,"] :: t: ", timer, ", r: ", rtimer;
    444   if( (typeof(M) != "module") && (typeof(M) != "ideal") )
    445   {
    446     ERROR("Sorry: need an ideal or a module for input");
    447   }
    448   def @save = basering;
    449 
    450   int @DEBUG = 0; // !system("with", "ndebug");
    451 
    452   if( typeof( attrib(SSinit, "DEBUG") ) == "int" )
    453   {
    454     @DEBUG = attrib(SSinit, "DEBUG");
    455   }
    456 
    457   int @SYZCHECK = 0; // @DEBUG;
    458 
    459   if( typeof( attrib(SSinit, "SYZCHECK") ) == "int" )
    460   {
    461     @SYZCHECK = attrib(SSinit, "SYZCHECK");
    462   }
    463 
    464   int @KERCHECK = 0; // @DEBUG;
    465 
    466   if( typeof( attrib(SSinit, "KERCHECK") ) == "int" )
    467   {
    468     @KERCHECK = attrib(SSinit, "KERCHECK");
    469   }
    470 
    471   int @IGNORETAILS = 0;
    472 
    473   if( typeof( attrib(SSinit, "IGNORETAILS") ) == "int" )
    474   {
    475     @IGNORETAILS = attrib(SSinit, "IGNORETAILS");
    476   }
    477 
    478   int @TREEOUTPUT = 0;
    479 
    480   if( typeof( attrib(SSinit, "TREEOUTPUT") ) == "int" )
    481   {
    482     @TREEOUTPUT = attrib(SSinit, "TREEOUTPUT");
    483   }
    484 
    485   int @RINGCHANGE = 0;
    486 
    487   if( typeof( attrib(SSinit, "RINGCHANGE") ) == "int" )
    488   {
    489     @RINGCHANGE = attrib(SSinit, "RINGCHANGE");
    490   }
    491 
    492   def opts = option(get);
    493   option(redSB); option(redTail);
    494     M = simplify(interred(groebner(M)), 1 + 2 + 4 + 32); // NOTE: we require interreduced GB for input
    495   option(set, opts); kill opts;
    496 
    497 //  int @IS_A_SB = attrib(M, "isSB");  if( !@IS_A_SB )  {  } else  {  }
    498 // attrib(M, "isSB", 1);
    499 
    500   if( @IGNORETAILS )
    501   {
    502     M = lead(M);
    503   }
    504 
    505   def @N = MySort(M); // TODO: replace with inplace sorting!!!
    506   def LEAD = lead(@N);
    507 
    508   if( @KERCHECK )
    509   {
    510     def @LEAD = lead(M);
    511 
    512     // sort wrt neg.deg.rev.lex!
    513     intvec iv_ds = sort(@LEAD, "c,ds", 1)[2]; // ,1 => reversed!
    514 
    515     M = M[iv_ds]; // sort M wrt ds on current leading terms
    516     @LEAD = @LEAD[iv_ds];
    517 
    518     if( size(module( matrix(@N) - matrix(M) )) > 0 )
    519     {
    520       "M:"; M;
    521       "@N:"; @N;
    522 
    523       "module( matrix(@N) - matrix(M) ): ";
    524       module( matrix(@N) - matrix(M) );
    525 
    526       "ERROR: wrong sorting (in SSnit): @N != M!!!";
    527     }
    528 
    529     if( size(module( matrix(@LEAD) - matrix(LEAD) )) > 0 )
    530     {
    531       "LEAD:"; LEAD;
    532       "@LEAD:"; @LEAD;
    533 
    534       "module( matrix(@LEAD) - matrix(LEAD) ): ";
    535       module( matrix(@LEAD) - matrix(LEAD) );
    536 
    537       "ERROR: wrong sorting (in SSnit): @LEAD != LEAD!!!";
    538     }
    539 
    540   }
    541 
    542   M = @N;
    543 
    544   def TAIL =   Syzextra::Tail(M);
    545 
    546   int @RANK = nrows(M); int @SIZE = ncols(M);
    547 
    548   intvec @DEGS = deg(M[1..@SIZE]); // store actuall degrees of input elements
    549 
    550   // TODO: what about real modules? weighted ones?
    551 
    552   if( @RINGCHANGE )
    553   {
    554     list @l = ringlist(@save);
    555     int @z = 0; ideal @m = maxideal(1); intvec @wdeg = deg(@m[1..ncols(@m)]);
    556     // NOTE: @wdeg will be ignored anyway :(
    557     @l[3] = list(list("C", @z), list("lp", @wdeg));
    558     kill @z, @m, @wdeg; // since these vars are ring independent!
    559     def S = ring(@l); // --  Syzextra::MakeInducedSchreyerOrdering(1);
    560     kill @l;
    561     setring S; // ring with an easy divisibility test ("C, lex") // or not!???
    562   } else
    563   { def S = basering; }
    564 
    565   // Setup the leading syzygy^{-1} module to zero:
    566   module Z = 0; Z[@RANK] = 0; attrib(Z, "isHomog", intvec(0));
    567 
    568   if( !@RINGCHANGE )
    569   {
    570     if( defined(RES) )  { kill RES; }
    571     if( defined(MRES) ) { kill MRES; }
    572     if( defined(LRES) ) { kill LRES; }
    573     if( defined(TRES) ) { kill TRES; }
    574   }
    575 
    576   module MRES = Z;
    577 
    578   list RES;  RES[1] = Z;
    579   list LRES; LRES[1] = Z;
    580   list TRES; TRES[1] = Z;
    581 
    582   if( !defined(M) )
    583   {
    584     def M = imap(@save, M);
    585   }
    586 
    587   module F = freemodule(@RANK); intvec @V = deg(F[1..@RANK]); kill F;
    588 
    589   attrib(M, "isHomog", @V);
    590   attrib(M, "isSB", 1);
    591   attrib(M, "degrees", @DEGS);
    592 
    593   if( !defined(LEAD) )
    594   {
    595     def LEAD = imap(@save, LEAD);
    596   }
    597 
    598   attrib(LEAD, "isHomog", @V);
    599   attrib(LEAD, "isSB", 1);
    600 
    601   if( !defined(TAIL) )
    602   {
    603     def TAIL = imap(@save, TAIL);
    604   }
    605 
    606   if( @SYZCHECK )
    607   {
    608     // 0^th syz. property
    609     if( size(module(transpose( transpose(M) * transpose(MRES) ))) > 0 )
    610     {
    611       transpose( transpose(M) * transpose(MRES) );
    612       "ERROR: transpose( transpose(M) * transpose(MRES) ) != 0!!!";
    613     }
    614   }
    615 
    616   RES [size(RES)+1] = M; // list of all syzygy modules
    617   LRES[size(LRES)+1] = LEAD; // list of all syzygy modules
    618   TRES[size(TRES)+1] = TAIL; // list of all syzygy modules
    619 
    620   MRES = MRES, M; //?
    621 
    622   attrib(MRES, "isHomog", @V);
    623 
    624 //  attrib(S, "InducionStart", @RANK);
    625 
    626 
    627   if( typeof( attrib(SSinit, "LEAD2SYZ") ) == "int" )
    628   {
    629     attrib(S, "LEAD2SYZ", attrib(SSinit, "LEAD2SYZ") );
    630   } else
    631   {
    632     attrib(S, "LEAD2SYZ", 0);
    633   }
    634 
    635   if( typeof( attrib(SSinit, "TAILREDSYZ") ) == "int" )
    636   {
    637     attrib(S, "TAILREDSYZ", attrib(SSinit, "TAILREDSYZ") );
    638   } else
    639   {
    640     attrib(S, "TAILREDSYZ", 1);
    641   }
    642 
    643   if( typeof( attrib(SSinit, "HYBRIDNF") ) == "int" )
    644   {
    645     attrib(S, "HYBRIDNF", attrib(SSinit, "HYBRIDNF") );
    646   } else
    647   {
    648     attrib(S, "HYBRIDNF", 0);
    649   }
    650 
    651   if( typeof( attrib(SSinit, "NOCACHING") ) == "int" )
    652   {
    653     attrib(S, "NOCACHING", attrib(SSinit, "NOCACHING") );
    654   } else
    655   {
    656     attrib(S, "NOCACHING", 0);
    657   }
    658 
    659 
    660   // maybe resetting existing ring attributes!
    661   attrib(S, "DEBUG", @DEBUG);
    662   attrib(S, "SYZCHECK", @SYZCHECK);
    663   attrib(S, "KERCHECK", @KERCHECK);
    664   attrib(S, "IGNORETAILS", @IGNORETAILS);
    665   attrib(S, "TREEOUTPUT", @TREEOUTPUT);
    666   attrib(S, "SYZNUMBER", 0);
    667 
    668   export RES;
    669   export MRES;
    670   export LRES;
    671   export TRES;
    672 
    673 //  rtimer, "***TIMESNAP1 for SSinit: on level: [",attrib(basering,"SYZNUMBER"),"] :: t: ", timer, ", r: ", rtimer;
    674 
    675   return (S);
    676 }
    677 example
    678 { "EXAMPLE:"; echo = 2;
    679   ring R = 0, (w, x, y, z), dp;
    680 
    681   def M = maxideal(1);
    682   def S = SSinit(M); setring S; S;
    683 
    684   "Only the first initialization: ";
    685   RES; LRES; TRES;
    686   MRES;
    687 
    688   kill S; setring R; kill M;
    689 
    690   ideal M = w^2 - x*z,  w*x - y*z,  x^2 - w*y, x*y - z^2, y^2 - w*z;
    691   def S = SSinit(M); setring S; S;
    692 
    693   "Only the first initialization: ";
    694   RES; LRES; TRES;
    695   MRES;
    696 
    697   kill S; setring R; kill M;
    698 }
    699 
    700 
    701 LIB "poly.lib"; // for lcm
    702 
    703 
    704 
    705 // -------------------------------------------------------- //
    706 
    707 /// TODO: save shortcut (syz: |-.->) LM(LM(m) * "t") -> syz?
    708 
    709 /// TODO: save shortcut (syz: |-.->) LM(m) * "t" -> ?
    710 
    711 // TODO: store m * @tail -.-^-.-^-.--> ?
    712 static proc SSTraverseTail(poly m, def @tail, def L, def T, list #)
    713 {
    714   if( typeof( attrib(basering, "DEBUG") ) == "int" )
    715   {
    716     int @DEBUG = attrib(basering, "DEBUG");
    717   } else
    718   {
    719     int @DEBUG = 0; // !system("with", "ndebug");
    720   }
    721 
    722   if( typeof( attrib(basering, "KERCHECK") ) == "int" )
    723   {
    724     int @KERCHECK = attrib(basering, "KERCHECK");
    725   } else
    726   {
    727     int @KERCHECK = @DEBUG;
    728   }
    729 
    730   if( typeof(#[1]) == "module" )
    731   {
    732     vector ss =   Syzextra::TraverseTail(m, @tail, L, T, #[1]);
    733   } else
    734   {
    735     vector ss =   Syzextra::TraverseTail(m, @tail, L, T);
    736   }
    737 
    738   if( @KERCHECK )
    739   {
    740     vector s = 0;
    741 
    742     def @l, @p;
    743     @p = @tail;
    744 
    745   // iterate tail-terms in ANY order!
    746     while( size(@p) > 0 )
    747     {
    748       @l = lead(@p);
    749       s = s + SSReduceTerm(m, @l, [0], L, T, #); // :(
    750       @p = @p - @l;
    751     }
    752 
    753     if( s != ss )
    754     {
    755       "ERROR in   Syzextra::TraverseTail => old: ", s, " != ker: ", ss;
    756       "m: ", m;
    757       "@tail: ", @tail;
    758       L; T; #;
    759     }
    760   }
    761 
    762   return (ss);
    763 }
    764 
    765 // -------------------------------------------------------- //
    766 
    767 // -------------------------------------------------------- //
    768 
    769 // module (N, LL, TT) = SSComputeSyzygy(L, T);
    770 // Compute Syz(L ++ T) = N = LL ++ TT
    771 
    772 // resolution/syzygy step:
    773 /* static */
    774 proc SSstep()
    775 {
    776 //  rtimer, "***TIMESNAP0 for SSstep(): on level: [",attrib(basering,"SYZNUMBER"),"] :: t: ", timer, ", r: ", rtimer;
    777 
    778   int @DEBUG = attrib(basering, "DEBUG");
    779   int @SYZCHECK = attrib(basering, "SYZCHECK");
    780 
    781 /*
    782   // is initial weights are all zeroes!
    783   def L =  lead(M);
    784   intvec @V = deg(M[1..ncols(M)]);  @W;  @V;  @W = @V;  attrib(L, "isHomog", @W);
    785     Syzextra::SetInducedReferrence(L, @RANK, 0);
    786 */
    787 
    788 //  def L =  lead(MRES);
    789 //  @W = @W, @V;
    790 //  attrib(L, "isHomog", @W);
    791 
    792 
    793   // General setting:
    794 //    Syzextra::SetInducedReferrence(MRES, 0, 0); // limit: 0!
    795   int @l = size(RES);
    796 
    797   def M =  RES[@l];
    798 
    799   def L = LRES[@l];
    800   def T = TRES[@l];
    801 
    802 
    803   //// TODO: wrong !!!!!
    804   int @RANK = ncols(MRES) - ncols(M); // nrows(M); // what if M is zero?!
    805 
    806 
    807 
    808 /*
    809   if( @RANK !=  nrows(M) )
    810   {
    811     type(MRES);
    812     @RANK;
    813     type(M);
    814     pause();
    815   }
    816 */
    817 
    818   intvec @W = attrib(M, "isHomog"); intvec @V = attrib(M, "degrees"); @V = @W, @V;
    819 
    820   // TODO: N  = SYZ( M )!!!
    821   module N, LL, TT; (N, LL, TT) = SSComputeSyzygy(/*M, */L, T/*, @RANK*/);
    822 
    823   // shift syz.comp by @RANK:
    824   module Z;
    825   Z = 0; Z[@RANK] = 0; Z = Z, transpose(LL);   LL = transpose(Z);
    826   Z = 0; Z[@RANK] = 0; Z = Z, transpose(TT);   TT = transpose(Z);
    827   Z = 0; Z[@RANK] = 0; Z = Z, transpose(N);     N = transpose(Z);
    828 
    829 
    830   if( @SYZCHECK )
    831   {
    832     if( size(N) > 0 )
    833     {
    834       // next syz. property
    835       if( size(module(transpose( transpose(N) * transpose(MRES) ))) > 0 )
    836       {
    837         "MRES", MRES;
    838 
    839         "N: "; N;
    840 
    841         "LL:"; LL;
    842         "TT:"; TT;
    843 
    844         "RANKS: ", @RANK;
    845 
    846         "transpose( transpose(N) * transpose(MRES) ) != 0!!!";
    847         transpose( transpose(N) * transpose(MRES) );
    848 
    849         "transpose(N) * transpose(MRES): ";
    850         transpose(N) * transpose(MRES);
    851       }
    852     }
    853   }
    854 
    855   attrib(N, "isHomog", @V);
    856 
    857   // TODO: correct the following:
    858   intvec @DEGS = deg(N[1..ncols(N)]); // no mod. comp. weights :(
    859 
    860 
    861   attrib(N, "degrees", @DEGS);
    862 
    863    RES[@l + 1] = N; // list of all syzygy modules
    864   LRES[@l + 1] = LL; // list of all syzygy modules
    865   TRES[@l + 1] = TT; // list of all syzygy modules
    866 
    867   MRES = MRES, N;
    868 
    869   attrib(MRES, "isHomog", @V);
    870 
    871 //  L = L, lead(N);  attrib(basering, "InducionLeads", L);
    872 
    873   int ss = attrib(basering, "SYZNUMBER");
    874   attrib(basering, "SYZNUMBER", ss + 1 );
    875 
    876 //  rtimer, "***TIMESNAP1 for SSstep(): on level: [",attrib(basering,"SYZNUMBER"),"] :: t: ", timer, ", r: ", rtimer;
    877 }
    878 
    879 /* static */
    880 proc SScontinue(int l)
    881 "USAGE:  SScontinue(l)
    882 RETURN:  nothing, instead it changes RES and MRES variables in the current ring
    883 PURPOSE: computes further (at most l) syzygies
    884 NOTE:    must be used within a ring returned by Sres or Ssyz. RES and MRES are
    885          explained in Sres
    886 EXAMPLE: example Scontinue; shows an example
    887 "
    888 {
    889 //  rtimer, "***TIMESNAP0 for SScontinue: on level: [",attrib(basering,"SYZNUMBER"),"] :: t: ", timer, ", r: ", rtimer;
    890 
    891   /// TODO!
    892 //  def data =   Syzextra::GetInducedData();
    893 
    894   if( (!defined(RES)) || (!defined(MRES)) ) /* || (typeof(data) != "list") || (size(data) != 2) */
    895   {
    896     ERROR("Sorry, but basering does not seem to be returned by Sres or Ssyz");
    897   }
    898   for (;  (l != 0) && (size(RES[size(RES)]) > 0); l-- )
    899   {
    900     SSstep();
    901   }
    902 
    903 //  rtimer, "***TIMESNAP1 for SScontinue: on level: [",attrib(basering,"SYZNUMBER"),"] :: t: ", timer, ", r: ", rtimer;
    904 
    905 }
    906 example
    907 { "EXAMPLE:"; echo = 2;
    908   ring r;
    909   module M = maxideal(1); M;
    910   def S = SSsyz(M); setring S; S;
    911   "Only the first syzygy: ";
    912   RES; MRES;
    913   "More syzygies: ";
    914   SScontinue(10);
    915   RES; MRES;
    916 }
    917 
    918 /* static */
    919 proc SSsyz(def M)
    920 "USAGE:  SSsyz(M)
    921 RETURN:  ring, containing a list of modules RES and a module MRES
    922 PURPOSE: computes the first syzygy module of M (wrt some Schreyer ordering)?
    923 NOTE:    The output is explained in Sres
    924 EXAMPLE: example Ssyz; shows an example
    925 "
    926 {
    927   if( (typeof(M) != "module") && (typeof(M) != "ideal") )
    928   {
    929     ERROR("Sorry: need an ideal or a module for input");
    930   }
    931 
    932   def SS = SSinit(M); setring SS;
    933 
    934   SSstep(); // NOTE: what if M is zero?
    935 
    936   return (SS);
    937 }
    938 example
    939 { "EXAMPLE:"; echo = 2;
    940   ring r;
    941 
    942 /*  ideal M = 0;
    943   def S = SSsyz(M); setring S; S;
    944   "Only the first syzygy: ";
    945   RES; LRES; TRES;
    946   MRES;
    947 
    948   kill S; setring r; kill M;
    949 */
    950 
    951   ideal M = maxideal(1); M;
    952 
    953   def S = SSres(M, 0); setring S; S;
    954   MRES;
    955   print(_);
    956   RES;
    957 
    958   kill S; setring r; kill M;
    959 
    960   kill r;
    961 
    962   ring R = 0, (w, x, y, z), dp;
    963   ideal M = w^2 - x*z,  w*x - y*z,  x^2 - w*y, x*y - z^2, y^2 - w*z;
    964 
    965   def S = SSres(M, 0); setring S; S;
    966   "";
    967   LRES;
    968   "";
    969   TRES;
    970   "";
    971   MRES;
    972   print(_);
    973   RES;
    974 }
    975 
    976 /* static */
    977 proc SSres(def M, int l)
    978 "USAGE:  SSres(I, l)
    979 RETURN:  ring, containing a list of modules RES and a module MRES
    980 PURPOSE: computes (at most l) syzygy modules of M wrt the classical Schreyer
    981          induced ordering with gen(i) > gen(j) if i > j, provided both gens
    982          are from the same syzygy level.???
    983 NOTE:    RES contains the images of maps subsituting the beginning of the
    984          Schreyer free resolution of baseRing^r/M, while MRES is a sum of
    985          these images in a big free sum, containing all the syzygy modules.
    986          The syzygy modules are shifted so that gen(i) correspons to MRES[i].
    987          The leading zero module RES[0] indicates the fact that coker of the
    988          first map is zero. The number of zeroes inducates the rank of input.
    989 NOTE:    If l == 0 then l is set to be nvars(basering) + 1
    990 EXAMPLE: example SSres; shows an example
    991 "
    992 {
    993   if( (typeof(M) != "module") && (typeof(M) != "ideal") )
    994   {
    995     ERROR("Sorry: need an ideal or a module for input");
    996   }
    997 /*
    998   "KERCHECK: ", attrib(SSinit, "KERCHECK");
    999   "SYZCHECK: ", attrib(SSinit, "SYZCHECK");
    1000   "DEBUG: ", attrib(SSinit, "DEBUG");
    1001   "HYBRIDNF: ", attrib(SSinit, "HYBRIDNF");
    1002   "TAILREDSYZ: ", attrib(SSinit, "TAILREDSYZ");
    1003   "LEAD2SYZ: ", attrib(SSinit, "LEAD2SYZ");
    1004 */
    1005 
    1006   def SS = SSinit(M); setring SS;
    1007 /*
    1008   "KERCHECK: ", attrib(SS, "KERCHECK");
    1009   "SYZCHECK: ", attrib(SS, "SYZCHECK");
    1010   "DEBUG: ", attrib(SS, "DEBUG");
    1011   "HYBRIDNF: ", attrib(SS, "HYBRIDNF");
    1012   "TAILREDSYZ: ", attrib(SS, "TAILREDSYZ");
    1013   "LEAD2SYZ: ", attrib(SS, "LEAD2SYZ");
    1014   "";
    1015   "IGNORETAILS: ", attrib(SS, "IGNORETAILS");
    1016   "SYZNUMBER: ", attrib(SS, "SYZNUMBER");
    1017 */
    1018   if (l == 0)
    1019   {
    1020     l = nvars(basering) + 2; // not really an estimate...?!
    1021   }
    1022 
    1023   SSstep(); l = l - 1;
    1024 
    1025   SScontinue(l);
    1026 /*
    1027   "KERCHECK: ", attrib(SS, "KERCHECK");
    1028   "SYZCHECK: ", attrib(SS, "SYZCHECK");
    1029   "DEBUG: ", attrib(SS, "DEBUG");
    1030   "HYBRIDNF: ", attrib(SS, "HYBRIDNF");
    1031   "TAILREDSYZ: ", attrib(SS, "TAILREDSYZ");
    1032   "LEAD2SYZ: ", attrib(SS, "LEAD2SYZ");
    1033   "";
    1034   "IGNORETAILS: ", attrib(SS, "IGNORETAILS");
    1035   "SYZNUMBER: ", attrib(SS, "SYZNUMBER");
    1036 */
    1037   return (SS);
    1038 }
    1039 example
    1040 { "EXAMPLE:"; echo = 2;
    1041   ring r;
    1042   module M = maxideal(1); M;
    1043   def S = SSres(M, 0); setring S; S;
    1044   RES;
    1045   MRES;
    1046 }
    1047 
    1048 static proc SRES_betti2(SRES SR, def a)
    1049 {
    1050   def R = SR.r; setring R;
    1051   return ( betti(SR.rsltn, a) );
    1052 }
    1053 
    1054 static proc SRES_betti1(SRES SR)
    1055 {
    1056   def R = SR.r; setring R;
    1057   return ( betti(SR.rsltn) );
    1058 }
    1059 
    1060 static proc SRES_print(SRES SR)
    1061 {
    1062   def R = SR.r; setring R;
    1063   "Schreyer resolution: ";
    1064   SR.rsltn; //  print ();
    1065   "over the ring: "; R;
    1066 }
    1067 
    1068 static proc SRES_minres(SRES SR)
    1069 {
    1070   def save = basering;
    1071   SRES S;
    1072   def R = SR.r; S.r = R;
    1073   setring R;
    1074   S.rsltn = minres(SR.rsltn); // in target ring :(
    1075   return (S);
    1076 }
    1077 
    1078 
    1079 // cannot be automatically used via overloading :(
    1080 static proc SRES_list(def SR)
    1081 "USAGE:  SRES_list(resolution)
    1082 RETURN:  list
    1083 PURPOSE: convert given resolution to a list
    1084 NOTE:    result is over basering
    1085 SEE ALSO: s_res, resolution
    1086 EXAMPLE: example s_res; shows an example
    1087 "
    1088 {
    1089   if( typeof(SR) != "SRES" )
    1090   {
    1091     list @@@L = SR;
    1092     return (@@@L);
    1093   }
    1094 
    1095   def save = basering;
    1096   def R = SR.r;
    1097 
    1098 //    if( 0 )  // ( save == R ) // TODO: not implemented :(((
    1099 //    {      list L = SR.rsltn;      return (L);    }
    1100 
    1101   setring R;
    1102 
    1103   list @@@L = SR.rsltn;
    1104   setring save;
    1105   return (imap( R, @@@L ));
    1106 }
    1107 
    1108318static proc mod_init()
    1109319{
    1110320  load("syzextra.so");
    1111 
    1112   if( 1 ) // !defined(Syzextra) )
    1113   {
    1114     // TODO: SSres - return SRESOLUTION?
    1115     newstruct("SRES","ring r,resolution rsltn"); // http://www.singular.uni-kl.de/Manual/latest/sing_179.htm#SEC218
    1116     system("install","SRES","print",SRES_print, 1);
    1117     system("install","SRES","betti",SRES_betti1, 1); // http://www.singular.uni-kl.de/Manual/latest/sing_260.htm#SEC299
    1118     system("install","SRES","betti",SRES_betti2, 2); // http://www.singular.uni-kl.de/Manual/latest/sing_260.htm#SEC299
    1119     system("install","SRES","minres",SRES_minres, 1); // http://www.singular.uni-kl.de/Manual/latest/sing_344.htm#SEC383
    1120 //    system("install","SRES","list", SRES_list, 1); // will never work :(((
    1121 //    system("install","SRES","string",SRES_string, 1);
    1122   }
    1123 }
    1124 
    1125 
    1126 static proc testallSexamples()
    1127 {
    1128   example Ssyz;
    1129   example Scontinue;
    1130   example Sres;
    1131 }
    1132 
    1133 static proc testallSSexamples()
    1134 {
    1135   example SSsyz;
    1136   example SScontinue;
    1137   example SSres;
    1138 }
    1139 example
    1140 { "EXAMPLE:"; echo = 2;
    1141   testallSexamples();
    1142   testallSSexamples();
    1143 }
    1144 
    1145 static proc  StartResTesting(list #)
    1146 {
    1147   int @treeout = attrib(SSinit, "TREEOUTPUT");
    1148 
    1149   if( defined(@save_res_list) )
    1150   { ERROR("Sorry: existing global variable @save_res_list - run StopAddResTesting before another Start!!!"); }
    1151 
    1152   string @save_res_desc = string(#);
    1153 
    1154   if( !@treeout )
    1155   {
    1156     ">>>>>>>>> {{{{{{{{{ STARTING TESTING ('" + @save_res_desc + "') :::::::::::: ";
    1157   } else
    1158   {
    1159     "{ \"Example\": \"" + @save_res_desc + "\", \"computations\": [";
    1160   }
    1161 
    1162   list @save_res_list = list();
    1163   export @save_res_list;
    1164   export @save_res_desc;
    1165 }
    1166 
    1167 static proc  StopResTesting()
    1168 {
    1169   int @treeout = attrib(SSinit, "TREEOUTPUT");
    1170 
    1171   if( defined(@save_opts) || defined(@save_method) || defined(@save_desc) )
    1172   { ERROR("Sorry: existing global variables - run StopAddResTest before another Start!!!"); }
    1173 
    1174   if( !defined(@save_res_list) || !defined(@save_res_desc) )
    1175   { ERROR("Sorry: no global variable - run StartResTesting beforehand!!!"); }
    1176 
    1177   int i, j;
    1178   int f = 0;
    1179   def m, mm;
    1180 
    1181   if( !@treeout )
    1182   {
    1183   for (i = size(@save_res_list); i > 0; i--)
    1184   {
    1185     "Total Time: ", @save_res_list[i][5], ", Res: ", @save_res_list[i][6], ", Minimal Betti: ", @save_res_list[i][5] - @save_res_list[i][6], ",        ", @save_res_list[i][1], "   :with:    ", @save_res_list[i][2];
    1186   }
    1187 
    1188   }
    1189 
    1190   for (i = size(@save_res_list); i > 1; i--)
    1191   {
    1192     m = @save_res_list[i][4];
    1193 
    1194     for (j = i-1; j > 0; j--)
    1195     {
    1196       mm = @save_res_list[j][4];
    1197       if( (nrows(m) != nrows(mm)) || (ncols(m) != ncols(mm)) )
    1198       {
    1199         "ERROR: SIZE(Betti[j: ", j, "]) != SIZE(Betti[i: ", i, "]):";
    1200         "j: ", j;
    1201         print( @save_res_list[j][4], "betti");
    1202         print(@save_res_list[j]);
    1203 
    1204         "i: ", i;
    1205         print( @save_res_list[i][4], "betti");
    1206         print(@save_res_list[i]);
    1207 
    1208         f = 1;
    1209 
    1210       } else
    1211       {
    1212         if( m != mm )
    1213         {
    1214           "ERROR: Betti[j: ", j, "] != Betti[i: ", i, "]:";
    1215           "j: ", j;
    1216           print( @save_res_list[j][4], "betti");
    1217           print(@save_res_list[j]);
    1218 
    1219           "i: ", i;
    1220           print( @save_res_list[i][4], "betti");
    1221           print(@save_res_list[i]);
    1222 
    1223           f = 1;
    1224         };
    1225       };
    1226 
    1227     };
    1228 
    1229   };
    1230 
    1231   if( f )
    1232   {
    1233     print(@save_res_list);
    1234     "<<<<<<<<< }}}}}}}}}  STOP TESTING (", @save_res_desc,  ") !!!!!!!!!!!! ";
    1235 
    1236     "ERROR: There were some wrong betti numbers... ";
    1237   } else
    1238   {
    1239     if( !@treeout )
    1240     {
    1241       "BETTI: "; print( @save_res_list[1][4], "betti");
    1242     }
    1243   }
    1244 
    1245   kill @save_res_list;
    1246 
    1247   if( !@treeout )
    1248   {
    1249     "<<<<<<<<< }}}}}}}}}  STOP TESTING (", @save_res_desc,  ") !!!!!!!!!!!! ";
    1250   } else
    1251   {
    1252 //    "{ \"Example\": \"" + @save_res_desc + "\", \"computations\": [";
    1253     "] },";
    1254   }
    1255   kill @save_res_desc;
    1256 }
    1257 
    1258 static proc StartAddResTest(string method, string desc)
    1259 {
    1260   int @treeout = attrib(SSinit, "TREEOUTPUT");
    1261 
    1262   if( !defined(@save_res_list) )
    1263   { ERROR("Sorry: no global variable - run StartResTesting beforehand!!!"); }
    1264 
    1265   if( defined(@save_opts) || defined(@save_method) || defined(@save_desc) )
    1266   { ERROR("Sorry: existing global variables - run StopAddResTest before another Start!!!"); }
    1267 
    1268 
    1269   def @save_opts = option(get); export @save_opts;
    1270   def @save_method = method; export @save_method;
    1271   def @save_desc = desc; export @save_desc;
    1272 
    1273   if( !@treeout )
    1274   {
    1275     "< START RES TEST{{{ ", @save_method, ", with:", @save_desc, " ... ";
    1276   } else
    1277   {
    1278 //    Print("{ \"RESOLUTION: HYBRIDNF:%d, TAILREDSYZ: %d, LEAD2SYZ: %d, IGNORETAILS: %d\": [\n",
    1279 //       attributes.__HYBRIDNF__, attributes.__TAILREDSYZ__, attributes.__LEAD2SYZ__, attributes.__IGNORETAILS__);
    1280     " { \"RESOLUTION: " + @save_method + ", with: " + @save_desc + "\": [";
    1281   }
    1282 }
    1283 
    1284 
    1285 static proc StopAddResTest(def RR, intmat S, int @t, int @m)
    1286 {
    1287   int @treeout = attrib(SSinit, "TREEOUTPUT");
    1288 
    1289   if( !(defined(@save_opts) && defined(@save_method) && defined(@save_desc)) )
    1290   { ERROR("Sorry: no global variables - run StartAddResTest beforehand!!!"); }
    1291 
    1292   list @l = list(@save_method, @save_desc, option(get), S, @t, @m);
    1293 
    1294 //  RR,
    1295 //  print(S, "betti");
    1296 
    1297   if( !@treeout )
    1298   {
    1299     "> -STOP RES TEST}}} ", @save_method, ", with:", @save_desc, ", Timer:", @t; option();
    1300   } else
    1301   {
    1302     " ] },";
    1303   }
    1304 
    1305 
    1306   option(set, @save_opts); kill @save_opts;
    1307 
    1308   kill @save_method; kill @save_desc;
    1309 
    1310   @save_res_list[1 + size(@save_res_list)] = @l;
    1311 }
    1312 
    1313 
    1314 static proc SCheck(def S)
    1315 {
    1316   setring S; // for checking...
    1317 
    1318   module M = MRES;
    1319   if( ncols(M) < nrows(M) )
    1320   {
    1321     M[nrows(M)] = 0;
    1322   } else
    1323   {
    1324     M = transpose(M);
    1325     if( ncols(M) < nrows(M) )
    1326     {
    1327       M[nrows(M)] = 0;
    1328     }
    1329     M = transpose(M);
    1330   }
    1331 
    1332   if( nrows(M) != ncols(M) )
    1333   {
    1334     "ERROR: non-square M!!!";
    1335   }
    1336 
    1337   if( size(module( M*M )) > 0 )
    1338   {
    1339     "ERROR: module( M*M ) != 0!!!";
    1340     module( M*M );
    1341 
    1342     "MRES': "; M; print(M);
    1343 
    1344   }
    1345 //  "MRES': "; M; print(M);
    1346 
    1347   if( size(RES[1]) != 0 )
    1348   {
    1349     "ERROR: wrong starting zero module!!!";
    1350   }
    1351 
    1352 //  RES;
    1353 /*
    1354   MRES;
    1355   RES;
    1356   "";
    1357   LRES;
    1358   "";
    1359   TRES;
    1360 */
    1361 }
    1362 
    1363 //// TODO: SSres(0) fails..!!!??
    1364 static proc TestSSres(def I)
    1365 {
    1366   def save = basering;
    1367   int @t,@m,r,rr,i;
    1368   string name =
    1369     "LEAD2SYZ:"  +string(attrib(SSinit,"LEAD2SYZ")) +
    1370     ",TAILREDSYZ:"+string(attrib(SSinit,"TAILREDSYZ")) +
    1371     ",HYBRIDNF:"  +string(attrib(SSinit,"HYBRIDNF"));
    1372 
    1373   int @PROFILE = attrib(SSinit, "PROFILE");
    1374   if(@PROFILE){ string @prof = "SSres_" + @save_res_desc + "_" + name + ".prof"; }
    1375 
    1376   StartAddResTest(
    1377    "SSres",
    1378    "minres + betti(,1) + mods: {" + name + "}"
    1379   );
    1380 
    1381   option(redSB); option(redTail);
    1382   timer=0;rtimer=0;def R=SSres(I,0);@m=rtimer;
    1383   setring R;module M;list @l=list();@l[size(RES)-1]=list();r=nrows(RES[1]);for(i=2;i<=size(RES);i++){M=RES[i];rr=nrows(M);if((r>0)&&(size(M)>0)&&(r<rr)){M=transpose(M);M=M[(r+1)..ncols(M)];M=transpose(M);RES[i]=M;};r=rr;@l[i-1] = M;};resolution RR=@l;RR=minres(RR);def S=betti(RR,1);@t=rtimer;
    1384   SCheck(R);
    1385   StopAddResTest(RR, S, @t,@m);
    1386   kill S, RR; setring save; kill R;
    1387 }
    1388 
    1389 
    1390 // Further recognized switches are the following attributes of @code{Schreyer::SSinit} procedure:
    1391 // LEAD2SYZ, TAILREDSYZ, HYBRIDNF, DEBUG, ...
    1392 
    1393 proc s_res(def I, int l)
    1394 "USAGE:  s_res(ideal/module M, int len)
    1395 RETURN:  resolution object over basering
    1396 PURPOSE: compute a non-minimal Schreyer free resolution of M of length at most len via the LiftTree algorithm described in [BMSS].
    1397 NOTE:    If given len is zero then nvars(basering) + 1 is used instead.
    1398 @* This functions is not related to the helpers from this library. This procedure works in only in commutative case.
    1399 @* One can switch on computation protocol and statistic (depending on the build) by setting the @code{prot} option.
    1400 SEE ALSO: sres, lres, Sres
    1401 EXAMPLE: example s_res; shows an example
    1402 "
    1403 {
    1404   def @save = basering;
    1405 
    1406   int @RINGCHANGE = 0;
    1407 
    1408   if( typeof( attrib(SSinit, "RINGCHANGE") ) == "int" )
    1409   {
    1410     @RINGCHANGE = attrib(SSinit, "RINGCHANGE");
    1411   }
    1412 
    1413   def R=SSinit(I);
    1414   if( @RINGCHANGE ){ setring R; }
    1415 
    1416   int @l = size(RES);
    1417   def rsltn =   Syzextra::ComputeResolution(RES[@l], LRES[@l], TRES[@l], l);
    1418 
    1419   if( !@RINGCHANGE )
    1420   {
    1421     return (rsltn); // ret
    1422   }
    1423 
    1424   SRES ret; ret.r = R; ret.rsltn = rsltn;
    1425   return (ret);
    1426 }
    1427 example
    1428 { "EXAMPLE:"; echo = 2;
    1429   ring R;
    1430   module M = maxideal(1); M;
    1431   s_res(M, 0); // Koszul complex
    1432   list rs = _; // get syzygies
    1433   print(betti(rs, 0), "betti"); // non-minimal betties
    1434   print(minres(rs));
    1435   print(betti(rs, 1), "betti"); //minimal betties
    1436 }
    1437 
    1438 /* static */
    1439 proc s_res_bm(def I)
    1440 {
    1441   def @save = basering;
    1442 
    1443   int @RINGCHANGE = 0;
    1444 
    1445   if( typeof( attrib(SSinit, "RINGCHANGE") ) == "int" )
    1446   {
    1447     @RINGCHANGE = attrib(SSinit, "RINGCHANGE");
    1448   }
    1449   int t,tt,sum;
    1450 
    1451 t=rtimer;def R=SSinit(I);tt=rtimer;
    1452 
    1453   "%% Setup(SSinit) TIME:", tt - t; // if(@prot){ } ?
    1454   int sum = (tt-t);
    1455 
    1456   if( @RINGCHANGE ){ setring R; }
    1457 
    1458   int @l = size(RES);
    1459   module N, L, T, LL, TT;
    1460   L = LRES[@l];
    1461   T = TRES[@l];
    1462 
    1463 
    1464   int ss = attrib(basering, "SYZNUMBER");
    1465 
    1466   while ( 1 )
    1467   {
    1468 //  SSstep():
    1469 t=rtimer;(N,LL,TT)=SSComputeSyzygy(L,T);tt=rtimer;
    1470 
    1471     @l = @l + 1;
    1472     "%% SSstep[",@l-2, "] TIME:", tt - t;  // if(@prot){ } ?
    1473     sum = sum + (tt-t);
    1474 
    1475     if( (size(LL) == 0) || (size(N) == 0) ) { break; }
    1476     L = LL; T = TT; RES[@l] = N; // LRES[@l] = LL; TRES[@l] = TT;
    1477 
    1478     ss = ss + 1; attrib(basering, "SYZNUMBER", ss );
    1479   }
    1480 
    1481   "%% Whole Resolution (with "+string(@l)+"syzygies) TIME:", sum;  // if(@prot){ } ?
    1482   resolution rsltn = list(RES[2..size(RES)]);
    1483 
    1484   if( !@RINGCHANGE )
    1485   {
    1486     return (rsltn); // ret
    1487   }
    1488 
    1489   SRES ret; ret.r = R; ret.rsltn = rsltn;
    1490   return (ret);
    1491 }
    1492 
    1493 
    1494 static proc s_syz(def I)
    1495 {
    1496   def R=SSinit(I); setring R;
    1497   int @l = size(RES); //   def M =  RES[@l];
    1498   module N, LL, TT; (N, LL, TT) = SSComputeSyzygy(LRES[@l], TRES[@l]);
    1499   SSYZ ret; ret.r = R; ret.szg = N; // Schreyer::  Syzextra::ComputeResolution(RES[2], LRES[2], TRES[2], 0);
    1500   return (ret);
    1501 }
    1502 
    1503 static proc TestSSSres(def I)
    1504 {
    1505   def save = basering;
    1506   int @t,@m,r,rr,i;
    1507   string name =
    1508     "LEAD2SYZ:"  +string(attrib(SSinit,"LEAD2SYZ")) +
    1509     ",TAILREDSYZ:"+string(attrib(SSinit,"TAILREDSYZ")) +
    1510     ",HYBRIDNF:"  +string(attrib(SSinit,"HYBRIDNF"));
    1511 
    1512   int @PROFILE = attrib(SSinit, "PROFILE");
    1513   if(@PROFILE){ string @prof = "SSSres_" + @save_res_desc + "_" + name + ".prof"; }
    1514 
    1515   StartAddResTest(
    1516    "SSSres",
    1517    "minres + betti(,1) + mods: {" + name + "}"
    1518   );
    1519 
    1520   option(redSB); option(redTail);
    1521   timer=0;rtimer=0;def R=SSinit(I);setring R;def RR=  Syzextra::ComputeResolution(RES[2], LRES[2], TRES[2], 0);
    1522 @m=rtimer;
    1523 RR=minres(RR); def S=betti(RR,1);@t=rtimer;
    1524   SCheck(R);
    1525   StopAddResTest(RR, S, @t,@m);
    1526   kill S, RR; setring save; kill R;
    1527 }
    1528 
    1529 
    1530 static proc TestSres(def I)
    1531 {
    1532   def save = basering;
    1533   int @t,r,rr,i,@m;
    1534   StartAddResTest(
    1535   "Sres",
    1536   "minres + betti(,1)"
    1537   );
    1538   option(redSB); option(redTail);
    1539   timer=0;rtimer=0;def R=Sres(I,0);@m=rtimer;setring R;module M;list @l=list();@l[size(RES)-1]=list();r=nrows(RES[1]);for(i=2;i<=size(RES);i++){M=RES[i];rr=nrows(M);if((r>0)&&(size(M)>0)&&(r<rr)){M=transpose(M);M=M[(r+1)..ncols(M)];M=transpose(M);RES[i]=M;};r=rr;@l[i-1] = M;};resolution RR=@l;RR=minres(RR);def S=betti(RR,1);@t=rtimer;
    1540   SCheck(R);
    1541   StopAddResTest(RR, S, @t,@m);
    1542   kill S, RR; setring save; kill R;
    1543 }
    1544 
    1545 
    1546 static proc Testsres(def M)
    1547 {
    1548   int @t,@m;
    1549   StartAddResTest("sres", "no minres + betti(,1)");
    1550   option(redSB);option(redTail);
    1551   timer=0;rtimer=0;def RR=sres(groebner(M),0);@m=rtimer;def S=betti(RR,1);@t=rtimer;
    1552   StopAddResTest(RR, S, @t,@m); kill S, RR;
    1553 }
    1554 
    1555 static proc Testlres(def M)
    1556 {
    1557   int @t,@m;
    1558   StartAddResTest("lres", "no minres + betti(,1)");
    1559   option(redSB);option(redTail);
    1560   timer=0;rtimer=0;def RR=lres(M,0);@m=rtimer;def S=betti(RR,1);@t=rtimer;
    1561   StopAddResTest(RR, S, @t,@m); kill S, RR;
    1562 
    1563   StartAddResTest("lres", "minres + betti()");
    1564   option(redSB);option(redTail);
    1565   timer=0;rtimer=0;def RR=lres(M,0);@m=rtimer;def S=betti(minres(RR));@t=rtimer;
    1566   StopAddResTest(RR, S, @t,@m);
    1567   kill S, RR;
    1568 }
    1569 
    1570 
    1571 static proc Testnres(def M)
    1572 {
    1573   int @t,@m;
    1574   StartAddResTest("nres", "no minres + betti(,1)");
    1575 
    1576   option(redSB); option(redTail);
    1577   timer=0;rtimer=0;def RR=nres(M,0);@m=rtimer;def S=betti(RR,1);@t=rtimer;
    1578 
    1579   StopAddResTest(RR, S, @t,@m); kill S, RR;
    1580 }
    1581 
    1582 static proc TestSSresAttribs(def M, list #)
    1583 {
    1584   M = groebner(M);
    1585 
    1586   StartResTesting(#);
    1587 
    1588   attrib(SSinit, "LEAD2SYZ", 0); attrib(SSinit, "TAILREDSYZ", 1); attrib(SSinit, "HYBRIDNF", 0); TestSSSres(M);
    1589   attrib(SSinit, "LEAD2SYZ", 0); attrib(SSinit, "TAILREDSYZ", 1); attrib(SSinit, "HYBRIDNF", 1); TestSSSres(M);
    1590 
    1591  // WRONG???! LEAD2SYZ?
    1592 //  attrib(SSinit, "LEAD2SYZ", 1); attrib(SSinit, "TAILREDSYZ", 1); attrib(SSinit, "HYBRIDNF", 0); TestSSSres(M);
    1593 //  attrib(SSinit, "LEAD2SYZ", 1); attrib(SSinit, "TAILREDSYZ", 1); attrib(SSinit, "HYBRIDNF", 1); TestSSSres(M);
    1594 
    1595   int @treeout = attrib(SSinit, "TREEOUTPUT");
    1596   if( !@treeout )
    1597   {
    1598    Testlres(M); Testnres(M);
    1599 //   Testsres(M); //   TestSres(M); // too long for the last medium test :(
    1600   }
    1601 
    1602   StopResTesting();
    1603 }
    1604 
    1605 static proc TestSSresAttribs2tr(def M, list #)
    1606 {
    1607   M = groebner(M);
    1608 
    1609   StartResTesting(#);
    1610 
    1611   attrib(SSinit, "LEAD2SYZ", 0); attrib(SSinit, "TAILREDSYZ", 1); attrib(SSinit, "HYBRIDNF", 0); TestSSSres(M);
    1612   Testlres(M);
    1613 
    1614   StopResTesting();
    1615 }
    1616 
    1617 static proc testSimple(list #)
    1618 {
    1619   def DEBUG = 0;
    1620   if(size(#) > 0) { DEBUG = #[1]; }
    1621 
    1622   def TREE = 0;
    1623   if(size(#) > 1) { TREE = #[2]; }
    1624 
    1625   system("--min-time", "0.01");
    1626   system("--ticks-per-sec", 100);
    1627 
    1628 //  option(prot);
    1629 
    1630   // TODO: only for now!!
    1631   attrib(SSinit, "DEBUG", (DEBUG > 0) );
    1632   attrib(SSinit, "SYZCHECK", (DEBUG > 0) );
    1633   attrib(SSinit, "KERCHECK", (DEBUG > 0) );
    1634 
    1635   attrib(SSinit, "TREEOUTPUT", TREE);
    1636   attrib(SSinit, "PROFILE", 0);
    1637   attrib(SSinit, "IGNORETAILS", 0); // not only frame
    1638 
    1639   attrib(SSinit, "NOCACHING", 0);
    1640 
    1641   int @treeout = attrib(SSinit, "TREEOUTPUT");
    1642 
    1643   if( @treeout)
    1644   {
    1645     monitor("SimpleTests.json", "o");
    1646     "{ \"SimpleTests\": [";
    1647   } else { option(prot); }
    1648 
    1649 
    1650   ring r; ideal M = maxideal(1);
    1651   TestSSresAttribs(M, "\\\\GENERATED{" + string(M) + "} in " + string(basering));
    1652   kill r;
    1653 
    1654   ring r = 0, (a, b, c, d), lp; ideal M = maxideal(1);
    1655   TestSSresAttribs(M, "\\\\GENERATED{" + string(M) + "} in " + string(basering));
    1656   kill r;
    1657 
    1658   ring R = 0, (w, x, y, z), dp;
    1659   ideal M = w^2 - x*z,  w*x - y*z,  x^2 - w*y, x*y - z^2, y^2 - w*z;
    1660   TestSSresAttribs(M, "\\\\GENERATED{" + string(M) + "} in " + string(basering));
    1661   kill R;
    1662 
    1663 
    1664   ring r = 0, (a, b, c, d, e, f), dp; ideal M = maxideal(1);
    1665   TestSSresAttribs(M, "\\\\GENERATED{" + string(M) + "} in " + string(basering));
    1666   kill r;
    1667 
    1668 
    1669   ring r = 0, (x, y), lp; ideal M = x2, xy, y2;  // Schreyer conterexample???
    1670   TestSSresAttribs(M, "\\\\GENERATED{" + string(M) + "} in " + string(basering));
    1671   kill r;
    1672 
    1673   ring r = 0, (x, y, z, t), dp; ideal M = homog(xy + y2 +x + 2y -1, t), homog(xz - x -y -z -2, t), homog(yz +1, t);  // TODO: seg. fault?
    1674   TestSSresAttribs(M, "\\\\GENERATED{" + string(M) + "} in " + string(basering));
    1675   kill r;
    1676 
    1677 
    1678   ring AGR = (101), (a, b, c, d), dp;
    1679   // simple: AGR@101n3d002s004%1:
    1680   ideal M = c*d, b*d, a*d, c^2-d^2, b*c, a*c, b^2-d^2, a*b, a^2-d^2;
    1681   TestSSresAttribs(M, "simple: AGR@101n3d002s004%1");
    1682 
    1683   // medium: AGR@101n3d004s009%1;
    1684   M = a*b+7*a*c-16*b*c-27*a*d+37*b*d-2*c*d, d^3, c*d^2, b*d^2, a*d^2, c^2*d, b*c*d, a*c*d, b^2*d, a^2*d, c^3, b*c^2, a*c^2, b^2*c, a^2*c, b^3, a^3;
    1685   TestSSresAttribs(M, "medium: AGR@101n3d004s009%1");
    1686 
    1687   kill AGR;
    1688 
    1689 
    1690   string Name = "bordiga"; int @p=31991; ring R = (@p),(x,y,z,u,v), dp;
    1691   ideal I = -x2y+26/17xy2+70/17y3+96/121x2z+63/82xyz+115/11y2z-8114xz2-40/79yz2+16/125z3+3023x2u-123/70xyu+3395y2u-81/119xzu-23/66yzu+3626z2u+18/53xu2+111/58yu2-34/39zu2+53/40u3-94/17x2v-10/19xyv+81/88y2v-91/33xzv-9967yzv-103/4z2v-26/109xuv+69/97yuv+92/17zuv-19/96u2v+10/21xv2+6147yv2+32/113zv2-79/82uv2-77/51v3,4347x2y-9017xy2+11327y3+18/79x2z-93/43xyz-35/47y2z+14704xz2+10727yz2-1764z3-612x2u+20/107xyu-103/89y2u-39/2xzu+2345yzu+10251z2u-9984xu2-10299yu2+113/118zu2+37/91u3+2/31x2v+9552xyv-47/100y2v-3242xzv+113/27yzv-11271z2v-13/79xuv+15917yuv+5/114zuv+103/119u2v-21/55xv2-59/19yv2+101/68zv2-7817uv2-112/29v3,7228x2y-111/113xy2+5913y3+6/43x2z-11251xyz+27/121y2z+97/96xz2-7398yz2-97/114z3+38/15x2u+5005xyu-41/126y2u-61/116xzu+89/9yzu-4087z2u+26/15xu2-92/103yu2+21/68zu2-4027u3+97/91x2v+5150xyv-4/47y2v-2310xzv+7307yzv-77/86z2v+30/83xuv+413yuv-50zuv-103/106u2v+105/73xv2-109/98yv2+59/63zv2+715uv2+963v3,x3+3487x2y-9744xy2-13276y3-15213x2z-118/51xyz+101/104y2z+2754xz2+9111yz2-17/94z3+11136x2u-43/82xyu-9/41y2u-7306xzu-6839yzu+5692z2u-14682xu2+37/80yu2-85/97zu2-6186u3+34/15x2v+84/109xyv+5086y2v+27/112xzv-3/40yzv+19/120z2v+11222xuv+38/55yuv-24/83zuv+15814u2v-111/61xv2+49/44yv2+125/81zv2+1933uv2-19/71v3;
    1692   TestSSresAttribs(I, Name);
    1693   kill @p, Name, R;
    1694 
    1695   string Name = "rat.d8.g6"; int @p=31991; ring R = (@p),(x,y,z,u,v), dp;
    1696   ideal I = -19/125x2y2-87/119xy3-97/21y4+36/53x2yz+2069xy2z-59/50y3z-65/33x2z2-14322xyz2+79/60y2z2-9035xz3-14890yz3+87/47z4-23/48x2yu+45/44xy2u+1972y3u+79/118x2zu-5173xyzu+115/121y2zu+1239xz2u-115/17yz2u-15900z3u-78/95x2u2+67/101xyu2-12757y2u2+12752xzu2+68/21yzu2+103/90z2u2-12917xu3+97/92yu3-24/49zu3-13/79u4-51/61x2yv-3103xy2v+77/117y3v+73/115x2zv-79/33xyzv+123/110y2zv+11969xz2v-31/95yz2v-123/95z3v-105/124x2uv+12624xyuv+2/63y2uv+6579xzuv+13/62yzuv+4388z2uv-12747xu2v-26/105yu2v-78/61zu2v-125/53u3v-5/71xyv2+62/77y2v2+21/44xzv2-9806yzv2+3/91z2v2+361xuv2+568yuv2+2926zuv2+53/38u2v2-14523yv3+2082zv3+113/115uv3,108/73x2y2+4028xy3+38/43y4-1944x2yz+39/80xy2z+8/109y3z+52/27x2z2+103/45xyz2+5834y2z2+63/101xz3+107/80yz3+1178z4-1/6x2yu+78/25xy2u-21/43y3u+50/71x2zu-14693xyzu+15074y2zu+9/103xz2u-7396yz2u-14493z3u+93/25x2u2+61/4xyu2-11306y2u2-79/81xzu2+59/82yzu2-5/106z2u2+89/71xu3-34/11yu3+15/103zu3-115/52u4-54/65x2yv+67/16xy2v-7/68y3v-10/13x2zv+32/85xyzv+1/91y2zv+107/118xz2v+7594yz2v-98/103z3v+9919x2uv-965xyuv+53/34y2uv+119/11xzuv-3400yzuv-8329z2uv+75/98xu2v-24yu2v+55/87zu2v-82/71u3v-73/115x2v2+85/19xyv2-213y2v2-7704xzv2-15347yzv2+14960z2v2+15065xuv2-125/17yuv2+32/83zuv2-14/73u2v2-21/44xv3+79/2yv3-61/32zv3+46/119uv3-2082v4,9/20x2y2+113/71xy3-88/65y4+9983x2yz-6722xy2z+87/68y3z+1893x2z2+65/32xyz2+51/55y2z2-102/53xz3+58/5yz3-7187z4-96/7x2yu-14/87xy2u-3532y3u+95/54x2zu+19/65xyzu-6728y2zu+31/121xz2u+73/106yz2u-91/5z3u-12928x2u2+707xyu2-55/48y2u2-96/25xzu2+15869yzu2-20/107z2u2-10030xu3-13786yu3-122/9zu3+19/59u4-7/52x2yv+101/74xy2v+83/6y3v-91/55x2zv-5266xyzv+85/61y2zv+126/95xz2v+56/51yz2v+13073z3v-50/21x2uv-13553xyuv-116/53y2uv+68/71xzuv-111/98yzuv-11037z2uv+68/121xu2v-124/53yu2v+54/55zu2v+5862u3v+12318x2v2-119/29xyv2+101/17y2v2-51/40xzv2-82/33yzv2-30/41z2v2-29/52xuv2+7817yuv2+8121zuv2-28/99u2v2+1125xv3-73/55yv3-14141zv3+8742uv3-1203v4,x2y2+11357xy3+295y4+144x2yz-31/54xy2z+89/119y3z+1/46x2z2+29/26xyz2+1384y2z2+1461xz3+113/91yz3+9494z4-7/32x2yu+12850xy2u-3626y3u-33/106x2zu-7/60xyzu-5935y2zu-8597xz2u+5527yz2u+1708z3u+6182x2u2-15780xyu2+4669y2u2-38/69xzu2+8412yzu2+9265z2u2-5679xu3-67/18yu3-34/67zu3-7178u4+113/56x2yv-3669xy2v+17/113y3v-87/35x2zv-4871xyzv-111/11y2zv-1131xz2v-72/13yz2v+838z3v-115/4x2uv+3395xyuv-43/68y2uv-82/13xzuv+7042yzuv-88/119z2uv+100/19xu2v+24/11yu2v+89/3zu2v+7395u3v-119/109x2v2+1/104xyv2+18/25y2v2+700xzv2-59/9yzv2-92/87z2v2+2486xuv2-67/103yuv2+1469zuv2-101/91u2v2-79/33xv3+10838yv3+81/4zv3-11843uv3+7204v4,19/125x3-15698x2y-22/117xy2-95/107y3+2027x2z-7750xyz+85/104y2z-15326xz2+31/101yz2+67/81z3-7879x2u-112/115xyu+124/81y2u+99/61xzu-7458yzu+40/33z2u-1502xu2+6591yu2-7/73zu2-42/95u3+93/83x2v-15/112xyv-84/95y2v+35/36xzv+5/24yzv-12768z2v+13232xuv-76/103yuv-79/52zuv-7217u2v+75/92xv2-49/64yv2+17/14zv2-6109uv2+1695v3;
    1697   TestSSresAttribs(I, Name);
    1698   kill R, Name, @p;
    1699 
    1700 
    1701   if( @treeout)
    1702   {
    1703     "] }";
    1704     monitor("");
    1705   }
    1706 
    1707 }
    1708 
    1709 static proc testAGR(list #)
    1710 {
    1711   def DEBUG = 0;
    1712   if(size(#) > 0) { DEBUG = #[1]; }
    1713 
    1714   system("--min-time", "0.01");
    1715   system("--ticks-per-sec", 100);
    1716 
    1717   attrib(SSinit, "DEBUG", 0);
    1718   attrib(SSinit, "SYZCHECK", (DEBUG > 0));
    1719   attrib(SSinit, "KERCHECK", 0);
    1720   attrib(SSinit, "TREEOUTPUT", 0);
    1721   attrib(SSinit, "PROFILE", 0);
    1722   attrib(SSinit, "IGNORETAILS", 0); // not only frame
    1723 
    1724   option(prot);
    1725 
    1726   ring AGR = (101), (a, b, c, d), dp; AGR;
    1727   // lengthy: AGR@101n3d008s058%3, kernel only!
    1728   ideal M = c^4*d^2+4*a^3*d^3+29*a^2*b*d^3-2*a*b^2*d^3+2*b^3*d^3-21*a^2*c*d^3+46*a*b*c*d^3+2*b^2*c*d^3-13*a*c^2*d^3+32*b*c^2*d^3+46*c^3*d^3-28*a^2*d^4+4*a*b*d^4+29*b^2*d^4-8*a*c*d^4+33*b*c*d^4-16*c^2*d^4+17*a*d^5-3*b*d^5-42*c*d^5+47*d^6,b*c^3*d^2+35*a^3*d^3+24*a^2*b*d^3+46*a*b^2*d^3-22*b^3*d^3-48*a^2*c*d^3+20*a*b*c*d^3-28*b^2*c*d^3-40*a*c^2*d^3-4*b*c^2*d^3+35*c^3*d^3-21*a^2*d^4+3*a*b*d^4+8*b^2*d^4-2*a*c*d^4-22*b*c*d^4+24*c^2*d^4+44*a*d^5+33*b*d^5+31*c*d^5+26*d^6,a*c^3*d^2-42*a^3*d^3+34*a^2*b*d^3-10*a*b^2*d^3+30*b^3*d^3-6*a^2*c*d^3-30*a*b*c*d^3-34*b^2*c*d^3+29*a*c^2*d^3+35*b*c^2*d^3+13*c^3*d^3+8*a^2*d^4+23*a*b*d^4-29*b^2*d^4+12*a*c*d^4-22*b*c*d^4-50*c^2*d^4-4*b*d^5+9*c*d^5+13*d^6,b^2*c^2*d^2+a^3*d^3-49*a^2*b*d^3+26*a*b^2*d^3+20*b^3*d^3+24*a^2*c*d^3-2*a*b*c*d^3+31*b^2*c*d^3-30*a*c^2*d^3+21*b*c^2*d^3-24*c^3*d^3-38*a^2*d^4-14*a*b*d^4-14*b^2*d^4+6*a*c*d^4+3*b*c*d^4+13*c^2*d^4-11*a*d^5-38*b*d^5+22*c*d^5+48*d^6,a*b*c^2*d^2+18*a^3*d^3-29*a^2*b*d^3-21*a*b^2*d^3-2*b^3*d^3-25*a^2*c*d^3+37*a*b*c*d^3-14*b^2*c*d^3-47*a*c^2*d^3-6*b*c^2*d^3-34*c^3*d^3+43*a^2*d^4+22*a*b*d^4-39*b^2*d^4-41*a*c*d^4-17*b*c*d^4-13*c^2*d^4-43*a*d^5+28*b*d^5-42*c*d^5-49*d^6,a^2*c^2*d^2-33*a^3*d^3+30*a^2*b*d^3-13*a*b^2*d^3+18*b^3*d^3-8*a^2*c*d^3-18*a*b*c*d^3-15*b^2*c*d^3-21*a*c^2*d^3+45*b*c^2*d^3-35*c^3*d^3-4*a^2*d^4-4*a*b*d^4+10*b^2*d^4-19*a*c*d^4-18*b*c*d^4-22*c^2*d^4-27*a*d^5+20*b*d^5-14*c*d^5+24*d^6,b^3*c*d^2-10*a^3*d^3+37*a*b^2*d^3-43*b^3*d^3-10*a^2*c*d^3-9*a*b*c*d^3+47*a*c^2*d^3-24*b*c^2*d^3+12*c^3*d^3+7*a^2*d^4+19*a*b*d^4-27*b^2*d^4-2*a*c*d^4-35*b*c*d^4+45*c^2*d^4-44*a*d^5-43*b*d^5+24*c*d^5+16*d^6,a*b^2*c*d^2+2*a^3*d^3-14*a^2*b*d^3+2*a*b^2*d^3+18*b^3*d^3-48*a^2*c*d^3+43*a*b*c*d^3-25*b^2*c*d^3+15*a*c^2*d^3-7*b*c^2*d^3+42*c^3*d^3-16*a^2*d^4+7*b^2*d^4-23*a*c*d^4+24*b*c*d^4+25*c^2*d^4-17*a*d^5-16*b*d^5-32*c*d^5-50*d^6,a^2*b*c*d^2-16*a^3*d^3+7*a^2*b*d^3-20*a*b^2*d^3+11*b^3*d^3+16*a^2*c*d^3+6*a*b*c*d^3-25*b^2*c*d^3+42*a*c^2*d^3-39*b*c^2*d^3-15*c^3*d^3-25*a^2*d^4+46*a*b*d^4-3*b^2*d^4+5*a*c*d^4+28*b*c*d^4+6*c^2*d^4-20*a*d^5-15*b*d^5-30*c*d^5+17*d^6,a^3*c*d^2+39*a^3*d^3+22*a^2*b*d^3-21*a*b^2*d^3+10*b^3*d^3+40*a^2*c*d^3-37*a*b*c*d^3+11*b^2*c*d^3+43*a*c^2*d^3+28*b*c^2*d^3-10*c^3*d^3+30*a^2*d^4+36*a*b*d^4-45*b^2*d^4-40*a*c*d^4-31*b*c*d^4+28*c^2*d^4+35*a*d^5+6*b*d^5+14*c*d^5+25*d^6,b^4*d^2+50*a^3*d^3+12*a^2*b*d^3+29*a*b^2*d^3-38*b^3*d^3-44*a^2*c*d^3+28*a*b*c*d^3+18*b^2*c*d^3-31*a*c^2*d^3+16*b*c^2*d^3-18*c^3*d^3+5*a^2*d^4-43*a*b*d^4+16*b^2*d^4+9*a*c*d^4-30*b*c*d^4+50*c^2*d^4+3*a*d^5+33*b*d^5+3*c*d^5-48*d^6,a*b^3*d^2+13*a^3*d^3-28*a^2*b*d^3-33*a*b^2*d^3-25*b^3*d^3-41*a^2*c*d^3+a*b*c*d^3+19*b^2*c*d^3+41*a*c^2*d^3-17*b*c^2*d^3+34*c^3*d^3-10*a^2*d^4+30*a*b*d^4+34*b^2*d^4+13*a*c*d^4+b*c*d^4-35*c^2*d^4-34*a*d^5+23*b*d^5-7*c*d^5+6*d^6,a^2*b^2*d^2+22*a^3*d^3-32*a^2*b*d^3+29*a*b^2*d^3+21*b^3*d^3-30*a^2*c*d^3-47*a*b*c*d^3-11*b^2*c*d^3-16*a*c^2*d^3-14*b*c^2*d^3+49*c^3*d^3+47*a^2*d^4-11*a*b*d^4+4*b^2*d^4+13*a*c*d^4+7*b*c*d^4-30*c^2*d^4+31*a*d^5+10*b*d^5-8*c*d^5-27*d^6,a^3*b*d^2-43*a^3*d^3-2*a^2*b*d^3+15*a*b^2*d^3+42*b^3*d^3+25*a^2*c*d^3+22*a*b*c*d^3-4*b^2*c*d^3-29*a*c^2*d^3-31*b*c^2*d^3-3*c^3*d^3+33*a^2*d^4+20*a*b*d^4-34*b^2*d^4+8*a*c*d^4+48*b*c*d^4-29*c^2*d^4-46*a*d^5+27*b*d^5+29*c*d^5+33*d^6,a^4*d^2+30*a^3*d^3-42*a*b^2*d^3-16*b^3*d^3-33*a^2*c*d^3+13*a*b*c*d^3+7*b^2*c*d^3-23*a*c^2*d^3+28*b*c^2*d^3-37*c^3*d^3+3*a^2*d^4-34*a*b*d^4+16*b^2*d^4-21*a*c*d^4-39*b*c*d^4+5*c^2*d^4+35*a*d^5+39*b*d^5-26*c*d^5-47*d^6,c^5*d+48*a^3*d^3-37*a^2*b*d^3+31*a*b^2*d^3-19*b^3*d^3+49*a^2*c*d^3-5*a*b*c*d^3+45*b^2*c*d^3+24*a*c^2*d^3-26*b*c^2*d^3-10*c^3*d^3-a^2*d^4+43*a*b*d^4-26*b^2*d^4+45*a*c*d^4-3*b*c*d^4+38*c^2*d^4+10*a*d^5-5*b*d^5-34*c*d^5+22*d^6,b*c^4*d+30*a^3*d^3-40*a^2*b*d^3-39*a*b^2*d^3+33*b^3*d^3+31*a^2*c*d^3-17*a*b*c*d^3-44*b^2*c*d^3+24*a*c^2*d^3+22*b*c^2*d^3-44*c^3*d^3-29*a^2*d^4+4*a*b*d^4-4*b^2*d^4+8*a*c*d^4-42*b*c*d^4+15*c^2*d^4-42*a*d^5+15*b*d^5-41*c*d^5-46*d^6,a*c^4*d-11*a^3*d^3-5*a^2*b*d^3+33*a*b^2*d^3+7*b^3*d^3-31*a^2*c*d^3-47*a*b*c*d^3-50*b^2*c*d^3-50*a*c^2*d^3-39*b*c^2*d^3+25*c^3*d^3+5*a^2*d^4+35*a*b*d^4-34*b^2*d^4+42*a*c*d^4-44*b*c*d^4-17*c^2*d^4+11*a*d^5+b*d^5+31*c*d^5+45*d^6,b^2*c^3*d+12*a^3*d^3-41*a^2*b*d^3+29*a*b^2*d^3-42*b^3*d^3-32*a^2*c*d^3+47*a*b*c*d^3-13*b^2*c*d^3-20*a*c^2*d^3+45*b*c^2*d^3-49*c^3*d^3-34*a^2*d^4+16*a*b*d^4+11*b^2*d^4-49*a*c*d^4-27*b*c*d^4-31*c^2*d^4+29*a*d^5-23*b*d^5+13*c*d^5+42*d^6,a*b*c^3*d-16*a^3*d^3-35*a^2*b*d^3+12*a*b^2*d^3-39*b^3*d^3-32*a*b*c*d^3-4*b^2*c*d^3+31*a*c^2*d^3+43*b*c^2*d^3-42*c^3*d^3+36*a^2*d^4-5*a*b*d^4-4*b^2*d^4+5*a*c*d^4+20*b*c*d^4+31*c^2*d^4+15*a*d^5+25*b*d^5-16*c*d^5-28*d^6,a^2*c^3*d-16*a^3*d^3+8*a^2*b*d^3+30*a*b^2*d^3-16*b^3*d^3+20*a^2*c*d^3-11*b^2*c*d^3-48*a*c^2*d^3+11*b*c^2*d^3-20*c^3*d^3-24*a^2*d^4-23*a*b*d^4+9*b^2*d^4+13*a*c*d^4-42*b*c*d^4+22*c^2*d^4-29*a*d^5-28*b*d^5-7*c*d^5-2*d^6,b^3*c^2*d+42*a^3*d^3-11*a^2*b*d^3+18*a*b^2*d^3-13*b^3*d^3+22*a^2*c*d^3-10*a*b*c*d^3-25*b^2*c*d^3-17*a*c^2*d^3-23*b*c^2*d^3-37*c^3*d^3-3*a^2*d^4-33*a*b*d^4+44*b^2*d^4-41*a*c*d^4+6*b*c*d^4-36*c^2*d^4-43*a*d^5+b*d^5+25*c*d^5+48*d^6,a*b^2*c^2*d+21*a^3*d^3+5*a^2*b*d^3+38*a*b^2*d^3+25*b^3*d^3-12*a^2*c*d^3+7*a*b*c*d^3+28*b^2*c*d^3+a*c^2*d^3+33*b*c^2*d^3+22*c^3*d^3+10*a^2*d^4-7*a*b*d^4-5*b^2*d^4+50*a*c*d^4-23*b*c*d^4+22*c^2*d^4-4*a*d^5+45*b*d^5-42*c*d^5+d^6,a^2*b*c^2*d-45*a^3*d^3+2*a^2*b*d^3+44*a*b^2*d^3-5*b^3*d^3-19*a^2*c*d^3-3*a*b*c*d^3+18*b^2*c*d^3-22*a*c^2*d^3+46*b*c^2*d^3+41*c^3*d^3-26*a^2*d^4-a*b*d^4-42*b^2*d^4-40*a*c*d^4+39*b*c*d^4+24*c^2*d^4-6*a*d^5-6*b*d^5+13*c*d^5-28*d^6,a^3*c^2*d+4*a^3*d^3+31*a^2*b*d^3+21*a*b^2*d^3+39*b^3*d^3-8*a^2*c*d^3+49*a*b*c*d^3-48*b^2*c*d^3-16*a*c^2*d^3-33*b*c^2*d^3+35*c^3*d^3+41*a^2*d^4+18*a*b*d^4+47*b^2*d^4-3*a*c*d^4+12*b*c*d^4+13*c^2*d^4+32*a*d^5-40*b*d^5+50*c*d^5-2*d^6,b^4*c*d+23*a^3*d^3+47*a^2*b*d^3-10*a*b^2*d^3-43*b^3*d^3+49*a^2*c*d^3+7*a*b*c*d^3+34*b^2*c*d^3-40*a*c^2*d^3-37*b*c^2*d^3-6*c^3*d^3+30*a^2*d^4-34*a*b*d^4-6*b^2*d^4+21*a*c*d^4+41*b*c*d^4-33*c^2*d^4-9*a*d^5+2*b*d^5+8*c*d^5+7*d^6,a*b^3*c*d-5*a^3*d^3-42*a^2*b*d^3+22*a*b^2*d^3-35*b^3*d^3+a^2*c*d^3+20*a*b*c*d^3-10*b^2*c*d^3+23*a*c^2*d^3-17*b*c^2*d^3+30*c^3*d^3+24*a^2*d^4+32*a*b*d^4-7*b^2*d^4-48*a*c*d^4-25*b*c*d^4-6*c^2*d^4-33*a*d^5+29*b*d^5+12*c*d^5+26*d^6,a^2*b^2*c*d+6*a^3*d^3-46*a^2*b*d^3-30*a*b^2*d^3+b^3*d^3-35*a^2*c*d^3+41*a*b*c*d^3-4*b^2*c*d^3-42*a*c^2*d^3+16*b*c^2*d^3+19*c^3*d^3-13*a^2*d^4-16*a*b*d^4+45*b^2*d^4-25*a*c*d^4-48*b*c*d^4+35*c^2*d^4+50*a*d^5+31*b*d^5-25*c*d^5+6*d^6,a^3*b*c*d+3*a^3*d^3-39*a^2*b*d^3+14*a*b^2*d^3-4*b^3*d^3-36*a^2*c*d^3+47*a*b*c*d^3+27*b^2*c*d^3+50*a*c^2*d^3-45*b*c^2*d^3+49*c^3*d^3-18*a^2*d^4+20*a*b*d^4+17*b^2*d^4+a*c*d^4+33*b*c*d^4+42*c^2*d^4+19*a*d^5+18*b*d^5+33*c*d^5+15*d^6,a^4*c*d-14*a^3*d^3-8*a^2*b*d^3-a*b^2*d^3-34*b^3*d^3-27*a^2*c*d^3-15*a*b*c*d^3-14*b^2*c*d^3+33*a*c^2*d^3-34*b*c^2*d^3-4*c^3*d^3+47*a^2*d^4+50*a*b*d^4-6*b^2*d^4+16*a*c*d^4+26*c^2*d^4-27*a*d^5+2*b*d^5-31*c*d^5+47*d^6,b^5*d+3*a^3*d^3-9*a^2*b*d^3+46*a*b^2*d^3+b^3*d^3-2*a^2*c*d^3-39*a*b*c*d^3-31*b^2*c*d^3-30*a*c^2*d^3+23*b*c^2*d^3+25*c^3*d^3+9*a^2*d^4-15*a*b*d^4-2*b^2*d^4-12*a*c*d^4+11*b*c*d^4+9*c^2*d^4+3*a*d^5+9*b*d^5+41*c*d^5-38*d^6,a*b^4*d-48*a^3*d^3+42*a^2*b*d^3+27*a*b^2*d^3+32*b^3*d^3+21*a^2*c*d^3-5*a*b*c*d^3-39*b^2*c*d^3+6*a*c^2*d^3-20*b*c^2*d^3+45*c^3*d^3-48*a^2*d^4+44*a*b*d^4+25*b^2*d^4-29*a*c*d^4+4*b*c*d^4+50*c^2*d^4-6*a*d^5-40*b*d^5-11*c*d^5-28*d^6,a^2*b^3*d-41*a^3*d^3+21*a^2*b*d^3+39*a*b^2*d^3-2*b^3*d^3+24*a*b*c*d^3-10*b^2*c*d^3+31*a*c^2*d^3-34*b*c^2*d^3-31*c^3*d^3+20*a^2*d^4+41*a*b*d^4-10*b^2*d^4-40*a*c*d^4+5*b*c*d^4+31*c^2*d^4+6*a*d^5+26*b*d^5+29*c*d^5-5*d^6,a^3*b^2*d-11*a^3*d^3-39*a^2*b*d^3+2*a*b^2*d^3-44*b^3*d^3-23*a^2*c*d^3+21*a*b*c*d^3-44*b^2*c*d^3-7*a*c^2*d^3+49*b*c^2*d^3+46*c^3*d^3+17*a^2*d^4+49*a*b*d^4-14*b^2*d^4+29*a*c*d^4-20*b*c*d^4-49*c^2*d^4-13*a*d^5-41*b*d^5-18*c*d^5+50*d^6,a^4*b*d+9*a^3*d^3+50*a^2*b*d^3+46*a*b^2*d^3-48*b^3*d^3+43*a^2*c*d^3-45*a*b*c*d^3+24*b^2*c*d^3-4*a*c^2*d^3-b*c^2*d^3-34*c^3*d^3+33*a^2*d^4+14*a*b*d^4-37*b^2*d^4-13*a*c*d^4+48*b*c*d^4-31*c^2*d^4-22*a*d^5+42*b*d^5+49*c*d^5-43*d^6,a^5*d+33*a^3*d^3-23*a^2*b*d^3+30*a*b^2*d^3+5*b^3*d^3-26*a^2*c*d^3-35*a*b*c*d^3-50*b^2*c*d^3-21*a*c^2*d^3+4*b*c^2*d^3+10*c^3*d^3+39*a^2*d^4-2*a*b*d^4+23*b^2*d^4+17*a*c*d^4-50*b*c*d^4-8*c^2*d^4-39*a*d^5+36*b*d^5-43*c*d^5-39*d^6,c^6+20*a^3*d^3-41*a*b^2*d^3+39*b^3*d^3+26*a^2*c*d^3-8*a*b*c*d^3-49*b^2*c*d^3+25*a*c^2*d^3+32*b*c^2*d^3-32*c^3*d^3-2*a^2*d^4-38*a*b*d^4-38*b^2*d^4+17*a*c*d^4+22*b*c*d^4-36*c^2*d^4-41*a*d^5+37*b*d^5-49*c*d^5-19*d^6,b*c^5-36*a^3*d^3+32*a^2*b*d^3-14*a*b^2*d^3-31*b^3*d^3-2*a^2*c*d^3-8*a*b*c*d^3-39*b^2*c*d^3-46*a*c^2*d^3+10*b*c^2*d^3+27*c^3*d^3+25*a^2*d^4-30*a*b*d^4+3*b^2*d^4-36*a*c*d^4+44*b*c*d^4+17*c^2*d^4-46*a*d^5-37*b*d^5-2*c*d^5-47*d^6,a*c^5-49*a^3*d^3+11*a^2*b*d^3-21*a*b^2*d^3-14*b^3*d^3+26*a^2*c*d^3-a*b*c*d^3+24*b^2*c*d^3-46*a*c^2*d^3+23*b*c^2*d^3+33*c^3*d^3-11*a^2*d^4-a*b*d^4+49*b^2*d^4-17*a*c*d^4+49*b*c*d^4+36*c^2*d^4+10*a*d^5-19*b*d^5+26*c*d^5-32*d^6,b^2*c^4-14*a^3*d^3+9*a^2*b*d^3-5*a*b^2*d^3+17*b^3*d^3+2*a^2*c*d^3+12*a*b*c*d^3-37*b^2*c*d^3-43*a*c^2*d^3+5*b*c^2*d^3-9*c^3*d^3-27*a^2*d^4+14*a*b*d^4-19*b^2*d^4+29*a*c*d^4+32*b*c*d^4-15*c^2*d^4-26*a*d^5-31*b*d^5+46*c*d^5-22*d^6,a*b*c^4+33*a^3*d^3-22*a^2*b*d^3-14*a*b^2*d^3-30*b^3*d^3-48*a^2*c*d^3+34*a*b*c*d^3-8*b^2*c*d^3-44*a*c^2*d^3-4*b*c^2*d^3+3*c^3*d^3+26*a^2*d^4+4*a*b*d^4+7*b^2*d^4-28*a*c*d^4-22*b*c*d^4-35*c^2*d^4-50*a*d^5-43*b*d^5+46*c*d^5-49*d^6,a^2*c^4-9*a^3*d^3+3*a^2*b*d^3+34*a*b^2*d^3+4*b^3*d^3+5*a^2*c*d^3-17*a*b*c*d^3-48*b^2*c*d^3+10*a*c^2*d^3+2*b*c^2*d^3-12*c^3*d^3-7*a^2*d^4-6*a*b*d^4+37*b^2*d^4-16*a*c*d^4+47*b*c*d^4+6*c^2*d^4-35*a*d^5-45*b*d^5-12*c*d^5-30*d^6,b^3*c^3-21*a^3*d^3-6*a^2*b*d^3-26*a*b^2*d^3-22*b^3*d^3-29*a*b*c*d^3-26*b^2*c*d^3+50*a*c^2*d^3-41*b*c^2*d^3+22*c^3*d^3-41*a^2*d^4+25*a*b*d^4+16*b^2*d^4+11*a*c*d^4+34*b*c*d^4+19*c^2*d^4-38*a*d^5-8*b*d^5-42*c*d^5-6*d^6,a*b^2*c^3+3*a^3*d^3-45*a^2*b*d^3+39*a*b^2*d^3+22*b^3*d^3+48*a^2*c*d^3-7*a*b*c*d^3-46*b^2*c*d^3-22*a*c^2*d^3-17*b*c^2*d^3-27*c^3*d^3-35*a^2*d^4+47*a*b*d^4+6*b^2*d^4-5*a*c*d^4-30*b*c*d^4+25*c^2*d^4-10*a*d^5+46*b*d^5+5*c*d^5-18*d^6,a^2*b*c^3-36*a^3*d^3+33*a^2*b*d^3+47*a*b^2*d^3-16*b^3*d^3-41*a^2*c*d^3+42*a*b*c*d^3-29*b^2*c*d^3+39*a*c^2*d^3-12*b*c^2*d^3-25*c^3*d^3-11*a^2*d^4-37*a*b*d^4+29*b^2*d^4-18*a*c*d^4+43*b*c*d^4+12*c^2*d^4-37*a*d^5+7*b*d^5+7*c*d^5-5*d^6,a^3*c^3+25*a^3*d^3+34*a^2*b*d^3+29*a*b^2*d^3-34*b^3*d^3-46*a^2*c*d^3-17*a*b*c*d^3+49*b^2*c*d^3-35*a*c^2*d^3-21*b*c^2*d^3-45*c^3*d^3+43*a^2*d^4+29*a*b*d^4+36*b^2*d^4+37*a*c*d^4+12*b*c*d^4-17*c^2*d^4+12*a*d^5+47*c*d^5-23*d^6,b^4*c^2-10*a^3*d^3+38*a^2*b*d^3+33*a*b^2*d^3+9*b^3*d^3-25*a^2*c*d^3+38*a*b*c*d^3-19*b^2*c*d^3-33*a*c^2*d^3-49*b*c^2*d^3-16*c^3*d^3-14*a^2*d^4-3*a*b*d^4-30*b^2*d^4-32*a*c*d^4+28*b*c*d^4-3*c^2*d^4-16*a*d^5+31*b*d^5-49*c*d^5-3*d^6,a*b^3*c^2+25*a^3*d^3-47*a^2*b*d^3+47*b^3*d^3+13*a^2*c*d^3-17*a*b*c*d^3+26*b^2*c*d^3-43*a*c^2*d^3+39*b*c^2*d^3-4*c^3*d^3+20*a^2*d^4+6*a*b*d^4+49*b^2*d^4+14*a*c*d^4-17*b*c*d^4+38*c^2*d^4+21*a*d^5-9*b*d^5-26*c*d^5+47*d^6,a^2*b^2*c^2+12*a^3*d^3+10*a^2*b*d^3-40*a*b^2*d^3+14*b^3*d^3+36*a^2*c*d^3-9*a*b*c*d^3+9*b^2*c*d^3+7*a*c^2*d^3+12*b*c^2*d^3-37*c^3*d^3-44*a^2*d^4-48*a*b*d^4+11*b^2*d^4-13*a*c*d^4+31*b*c*d^4+47*c^2*d^4+28*a*d^5+39*b*d^5+27*c*d^5-d^6,a^3*b*c^2-28*a^3*d^3-22*a^2*b*d^3-8*a*b^2*d^3+40*b^3*d^3-13*a^2*c*d^3+35*a*b*c*d^3-4*b^2*c*d^3+28*a*c^2*d^3+30*b*c^2*d^3-13*c^3*d^3+16*a^2*d^4+48*a*b*d^4-42*b^2*d^4+10*a*c*d^4-b*c*d^4+37*c^2*d^4-17*a*d^5-15*b*d^5+40*c*d^5+27*d^6,a^4*c^2+17*a^3*d^3+45*a^2*b*d^3+42*a*b^2*d^3-20*b^3*d^3-39*a^2*c*d^3-20*a*b*c*d^3-44*b^2*c*d^3+33*a*c^2*d^3+39*b*c^2*d^3-37*c^3*d^3+39*a^2*d^4+39*a*b*d^4-44*b^2*d^4+8*a*c*d^4-34*b*c*d^4+36*c^2*d^4-47*a*d^5+38*b*d^5-46*c*d^5+23*d^6,b^5*c+24*a^3*d^3+17*a^2*b*d^3-22*a*b^2*d^3-27*b^3*d^3+27*a^2*c*d^3+48*a*b*c*d^3+4*b^2*c*d^3+a*c^2*d^3-21*b*c^2*d^3-14*c^3*d^3+3*a^2*d^4+15*a*b*d^4+41*b^2*d^4-27*a*c*d^4+4*b*c*d^4+3*c^2*d^4-46*a*d^5+28*b*d^5+6*c*d^5+36*d^6,a*b^4*c-29*a^3*d^3+30*a^2*b*d^3+31*a*b^2*d^3+44*b^3*d^3-12*a^2*c*d^3-27*a*b*c*d^3+48*b^2*c*d^3+4*a*c^2*d^3+2*b*c^2*d^3-17*c^3*d^3-7*a^2*d^4+25*a*b*d^4-45*b^2*d^4-17*a*c*d^4-14*b*c*d^4-11*c^2*d^4-45*a*d^5-36*b*d^5-12*c*d^5-44*d^6,a^2*b^3*c-10*a^3*d^3-30*a^2*b*d^3-22*a*b^2*d^3-35*b^3*d^3+37*a^2*c*d^3-35*a*b*c*d^3-12*b^2*c*d^3-16*b*c^2*d^3+49*c^3*d^3+38*a^2*d^4-21*a*b*d^4-20*b^2*d^4-6*a*c*d^4+41*b*c*d^4+49*c^2*d^4+13*a*d^5-38*b*d^5-32*c*d^5-12*d^6,a^3*b^2*c+5*a^2*b*d^3-40*a*b^2*d^3+14*b^3*d^3-4*a^2*c*d^3-13*a*b*c*d^3+47*b^2*c*d^3+28*a*c^2*d^3+15*b*c^2*d^3+47*c^3*d^3-8*a^2*d^4-20*a*b*d^4+3*b^2*d^4+42*a*c*d^4+18*b*c*d^4-23*c^2*d^4-48*a*d^5+12*b*d^5-25*c*d^5-39*d^6,a^4*b*c+29*a^3*d^3+21*a^2*b*d^3-32*a*b^2*d^3+48*b^3*d^3-44*a^2*c*d^3-3*a*b*c*d^3-27*b^2*c*d^3+27*a*c^2*d^3+43*b*c^2*d^3-30*c^3*d^3+4*a^2*d^4+16*a*b*d^4+33*b^2*d^4+37*a*c*d^4-32*b*c*d^4+14*c^2*d^4+50*a*d^5-49*c*d^5-33*d^6,a^5*c-26*a^3*d^3-50*a^2*b*d^3+2*a*b^2*d^3+3*b^3*d^3-15*a^2*c*d^3-32*a*b*c*d^3-4*b^2*c*d^3-13*a*c^2*d^3-13*b*c^2*d^3+3*c^3*d^3+32*a^2*d^4-32*a*b*d^4-47*b^2*d^4-39*a*c*d^4-34*b*c*d^4-9*c^2*d^4-7*a*d^5-22*b*d^5+16*c*d^5+44*d^6,b^6+45*a^3*d^3-42*a^2*b*d^3-35*a*b^2*d^3+13*b^3*d^3+28*a^2*c*d^3-2*a*b*c*d^3-37*b^2*c*d^3-9*a*c^2*d^3+44*b*c^2*d^3-24*c^3*d^3+36*a^2*d^4+42*a*b*d^4-38*b^2*d^4-34*a*c*d^4-46*b*c*d^4+23*c^2*d^4-9*a*d^5-28*b*d^5+37*c*d^5+26*d^6,a*b^5-14*a^3*d^3+38*a^2*b*d^3-37*a*b^2*d^3-33*b^3*d^3-24*a^2*c*d^3+15*a*b*c*d^3+44*b^2*c*d^3-45*a*c^2*d^3+3*b*c^2*d^3-41*c^3*d^3-48*a^2*d^4-36*a*b*d^4+39*b^2*d^4+46*a*c*d^4-3*b*c*d^4+21*c^2*d^4-36*a*d^5-20*b*d^5+24*c*d^5-33*d^6,a^2*b^4-27*a^3*d^3-10*a^2*b*d^3-5*a*b^2*d^3+8*b^3*d^3+21*a^2*c*d^3+31*a*b*c*d^3-44*b^2*c*d^3+41*a*c^2*d^3+17*b*c^2*d^3-8*c^3*d^3+19*a^2*d^4+25*a*b*d^4+b^2*d^4+3*a*c*d^4+2*b*c*d^4-40*c^2*d^4+31*a*d^5-19*b*d^5+35*c*d^5-28*d^6,a^3*b^3-12*a^3*d^3-25*a^2*b*d^3+37*a*b^2*d^3-37*b^3*d^3+46*a^2*c*d^3+43*a*b*c*d^3+b^2*c*d^3-41*a*c^2*d^3-38*b*c^2*d^3-36*c^3*d^3-11*a*b*d^4+20*b^2*d^4-a*c*d^4-26*b*c*d^4+14*c^2*d^4-48*a*d^5+17*b*d^5+9*c*d^5+30*d^6,a^4*b^2+36*a^3*d^3+9*a^2*b*d^3-31*b^3*d^3+50*a^2*c*d^3+41*a*b*c*d^3+40*b^2*c*d^3+48*a*c^2*d^3-41*b*c^2*d^3-17*c^3*d^3+33*a^2*d^4+47*a*b*d^4+22*b^2*d^4+2*a*c*d^4+23*b*c*d^4-47*c^2*d^4+34*a*d^5-15*b*d^5-33*c*d^5-38*d^6,a^5*b-12*a^3*d^3-38*a^2*b*d^3+46*a*b^2*d^3-32*b^3*d^3-41*a^2*c*d^3+14*a*b*c*d^3-34*b^2*c*d^3+7*a*c^2*d^3-6*b*c^2*d^3+31*c^3*d^3+30*a^2*d^4+12*a*b*d^4-17*b^2*d^4-7*a*c*d^4-45*b*c*d^4+10*c^2*d^4+29*a*d^5-28*b*d^5+34*c*d^5-15*d^6,a^6-33*a^3*d^3-45*a^2*b*d^3+19*a*b^2*d^3+39*b^3*d^3-5*a^2*c*d^3-46*a*b*c*d^3+9*b^2*c*d^3+15*a*c^2*d^3-21*b*c^2*d^3+46*c^3*d^3-39*a^2*d^4-9*a*b*d^4+50*b^2*d^4-45*a*c*d^4-39*b*c*d^4-18*c^2*d^4-4*a*d^5-19*b*d^5+12*c*d^5+39*d^6,d^7,c*d^6,b*d^6,a*d^6,c^2*d^5,b*c*d^5,a*c*d^5,b^2*d^5,a*b*d^5,a^2*d^5,c^3*d^4,b*c^2*d^4,a*c^2*d^4,b^2*c*d^4,a*b*c*d^4,a^2*c*d^4,b^3*d^4,a*b^2*d^4,a^2*b*d^4,a^3*d^4;
    1729   TestSSresAttribs2tr(M, "AGR@101n3d008s058%3");
    1730 
    1731   // AGR@101n3d010s010%3, a bit slower...
    1732   M = a^2*b^5-50*a*b^6-26*a^6*c+15*a^5*b*c-42*a^4*b^2*c-2*a^3*b^3*c+40*a^2*b^4*c-20*a*b^5*c+11*b^6*c-17*a^5*c^2-4*a^4*b*c^2+13*a^3*b^2*c^2-7*a^2*b^3*c^2+13*a*b^4*c^2-46*b^5*c^2+38*a^4*c^3+32*a^3*b*c^3-49*a^2*b^2*c^3-41*a*b^3*c^3+9*b^4*c^3+17*a^3*c^4-23*a^2*b*c^4+46*a*b^2*c^4+9*b^3*c^4-20*a^2*c^5-34*a*b*c^5-46*b^2*c^5-3*a*c^6+11*b*c^6-22*a^6*d-5*a^5*b*d-21*a^4*b^2*d-43*a^3*b^3*d-29*a^2*b^4*d+43*a*b^5*d-2*b^6*d+24*a^5*c*d-9*a^4*b*c*d+3*a^3*b^2*c*d+20*a^2*b^3*c*d+47*a*b^4*c*d-41*b^5*c*d+11*a^4*c^2*d-14*a^3*b*c^2*d+13*a^2*b^2*c^2*d-19*a*b^3*c^2*d-12*b^4*c^2*d+41*a^3*c^3*d-49*a^2*b*c^3*d-10*a*b^2*c^3*d+19*b^3*c^3*d-13*a^2*c^4*d+10*a*b*c^4*d-49*b^2*c^4*d-3*a*c^5*d-10*b*c^5*d+31*c^6*d-16*a^5*d^2+24*a^4*b*d^2-43*a^3*b^2*d^2+36*a^2*b^3*d^2-36*a^4*c*d^2-36*a^3*b*c*d^2-16*a^2*b^2*c*d^2+35*a*b^3*c*d^2+29*b^4*c*d^2+40*a^3*c^2*d^2-24*a^2*b*c^2*d^2-24*a*b^2*c^2*d^2+7*b^3*c^2*d^2+28*a^2*c^3*d^2+49*a*b*c^3*d^2+49*b^2*c^3*d^2+7*a*c^4*d^2-9*b*c^4*d^2+21*c^5*d^2-28*a^4*d^3+24*a^3*b*d^3-24*a^2*b^2*d^3+23*a*b^3*d^3+24*b^4*d^3+24*a^3*c*d^3-25*a^2*b*c*d^3-9*a*b^2*c*d^3-43*b^3*c*d^3+15*a^2*c^2*d^3+49*a*b*c^2*d^3+24*b^2*c^2*d^3-20*a*c^3*d^3-30*b*c^3*d^3-20*c^4*d^3+13*a^3*d^4+34*a^2*b*d^4-45*a*b^2*d^4+9*b^3*d^4+9*a^2*c*d^4-31*a*b*c*d^4-6*b^2*c*d^4-16*a*c^2*d^4+9*b*c^2*d^4+24*c^3*d^4+38*a^2*d^5-23*a*b*d^5-35*b^2*d^5+22*a*c*d^5-22*b*c*d^5+46*c^2*d^5+12*a*d^6+21*b*d^6-23*c*d^6-2*d^7,a^3*b^4+34*a^6*c+14*a^5*b*c+34*a^4*b^2*c+43*a^3*b^3*c-26*a^2*b^4*c+13*a*b^5*c+10*b^6*c-43*a^5*c^2+50*a^4*b*c^2-23*a^3*b^2*c^2-a^2*b^3*c^2+39*a*b^4*c^2+50*b^5*c^2+16*a^4*c^3+31*a^3*b*c^3-49*a^2*b^2*c^3+26*a*b^3*c^3-b^4*c^3-5*a^3*c^4+3*a^2*b*c^4-26*a*b^2*c^4-b^3*c^4-24*a^2*c^5-39*a*b*c^5+50*b^2*c^5-13*a*c^6+10*b*c^6-39*a^6*d+35*a^5*b*d+44*a^4*b^2*d-39*a^3*b^3*d-26*a^2*b^4*d-47*a*b^5*d-42*b^6*d+34*a^5*c*d-43*a^4*b*c*d-39*a^3*b^2*c*d+41*a^2*b^3*c*d+32*a*b^4*c*d-10*b^5*c*d+43*a^4*c^2*d+12*a^3*b*c^2*d-43*a^2*b^2*c^2*d+23*a*b^3*c^2*d-46*b^4*c^2*d+12*a^3*c^3*d-10*a^2*b*c^3*d+13*a*b^2*c^3*d-15*b^3*c^3*d-a^2*c^4*d+17*a*b*c^4*d-47*b^2*c^4*d+49*a*c^5*d-31*b*c^5*d-22*c^6*d-28*a^5*d^2-39*a^4*b*d^2+33*a^3*b^2*d^2-40*a^2*b^3*d^2+31*a*b^4*d^2+5*b^5*d^2+42*a^4*c*d^2-a^3*b*c*d^2+37*a^2*b^2*c*d^2-13*a*b^3*c*d^2+b^4*c*d^2+35*a^3*c^2*d^2-9*a^2*b*c^2*d^2+46*a*b^2*c^2*d^2-2*b^3*c^2*d^2+15*a^2*c^3*d^2-48*a*b*c^3*d^2+38*b^2*c^3*d^2-37*a*c^4*d^2-40*b*c^4*d^2+25*c^5*d^2+5*a^4*d^3-4*a^3*b*d^3+30*a^2*b^2*d^3-42*a*b^3*d^3+11*b^4*d^3+10*a^3*c*d^3+34*a^2*b*c*d^3-48*a*b^2*c*d^3+17*b^3*c*d^3-33*a^2*c^2*d^3-12*a*b*c^2*d^3-44*b^2*c^2*d^3-6*a*c^3*d^3+6*b*c^3*d^3-45*c^4*d^3+6*a^3*d^4+8*a^2*b*d^4-22*a*b^2*d^4+23*b^3*d^4-22*a^2*c*d^4-38*a*b*c*d^4+44*b^2*c*d^4-13*a*c^2*d^4-50*b*c^2*d^4+30*c^3*d^4-6*a^2*d^5-46*a*b*d^5+17*b^2*d^5-23*a*c*d^5-10*b*c*d^5+32*c^2*d^5-47*a*d^6+2*b*d^6+20*c*d^6-46*d^7,a^4*b^3+30*a*b^6-49*a^6*c+18*a^5*b*c+37*a^4*b^2*c+44*a^3*b^3*c-27*a^2*b^4*c-a*b^5*c-35*b^6*c-20*a^5*c^2+32*a^4*b*c^2+28*a^3*b^2*c^2-13*a^2*b^3*c^2-32*a*b^4*c^2+27*b^5*c^2-4*a^4*c^3+25*a^3*b*c^3+22*a^2*b^2*c^3-23*a*b^3*c^3-47*b^4*c^3+41*a^3*c^4-25*a^2*b*c^4-34*a*b^2*c^4-47*b^3*c^4-33*a^2*c^5-43*a*b*c^5+27*b^2*c^5-31*a*c^6-35*b*c^6-49*a^6*d+30*a^5*b*d-4*a^4*b^2*d+11*a^3*b^3*d-12*a^2*b^4*d-38*a*b^5*d+45*b^6*d+5*a^5*c*d-45*a^4*b*c*d-42*a^3*b^2*c*d-11*a^2*b^3*c*d+21*a*b^4*c*d+18*b^5*c*d-50*a^4*c^2*d-25*a^3*b*c^2*d+35*a^2*b^2*c^2*d-a*b^3*c^2*d+30*b^4*c^2*d+28*a^3*c^3*d-46*a^2*b*c^3*d-4*a*b^2*c^3*d+32*b^3*c^3*d+21*a^2*c^4*d-34*a*b*c^4*d+27*b^2*c^4*d+11*a*c^5*d-45*b*c^5*d+4*c^6*d+2*a^5*d^2-43*a^4*b*d^2-36*a^3*b^2*d^2+14*a^2*b^3*d^2+35*a*b^4*d^2+8*b^5*d^2+34*a^4*c*d^2-12*a^3*b*c*d^2-a^2*b^2*c*d^2-5*a*b^3*c*d^2+43*b^4*c*d^2+45*a^3*c^2*d^2-34*a^2*b*c^2*d^2+26*a*b^2*c^2*d^2+10*b^3*c^2*d^2-19*a^2*c^3*d^2+5*a*b*c^3*d^2-47*b^2*c^3*d^2+40*a*c^4*d^2+8*b*c^4*d^2+30*c^5*d^2+42*a^4*d^3+27*a^3*b*d^3+31*a^2*b^2*d^3-6*a*b^3*d^3+36*b^4*d^3+37*a^2*b*c*d^3+34*a*b^2*c*d^3-13*b^3*c*d^3+a^2*c^2*d^3+29*a*b*c^2*d^3-b^2*c^2*d^3-11*a*c^3*d^3-21*b*c^3*d^3+32*c^4*d^3+9*a^3*d^4-21*a^2*b*d^4+26*a*b^2*d^4+43*b^3*d^4-42*a^2*c*d^4-2*a*b*c*d^4-34*b^2*c*d^4+10*a*c^2*d^4-26*b*c^2*d^4-50*c^3*d^4+23*a^2*d^5+49*a*b*d^5+28*b^2*d^5-48*a*c*d^5-18*b*c*d^5-2*c^2*d^5-2*a*d^6-30*b*d^6+36*c*d^6-21*d^7,a^5*b^2+9*a*b^6+6*a^6*c+34*a^5*b*c-14*a^4*b^2*c-43*a^3*b^3*c-27*a^2*b^4*c+14*a*b^5*c+9*b^6*c-28*a^5*c^2-10*a^4*b*c^2+39*a^3*b^2*c^2-49*a^2*b^3*c^2-38*a*b^4*c^2+45*b^5*c^2+4*a^4*c^3+5*a^3*b*c^3+15*a^2*b^2*c^3-11*a*b^3*c^3-11*b^4*c^3+24*a^3*c^4-32*a^2*b*c^4-2*a*b^2*c^4-11*b^3*c^4+32*a^2*c^5-38*a*b*c^5+45*b^2*c^5-4*a*c^6+9*b*c^6+23*a^6*d-13*a^5*b*d+8*a^4*b^2*d-46*a^3*b^3*d-9*a^2*b^4*d-8*a*b^5*d+17*b^6*d+a^5*c*d+5*a^4*b*c*d-50*a^3*b^2*c*d+22*a^2*b^3*c*d-34*a*b^4*c*d-49*b^5*c*d+44*a^4*c^2*d+41*a^3*b*c^2*d-44*a^2*b^2*c^2*d-49*a*b^3*c^2*d+37*b^4*c^2*d+45*a^3*c^3*d+12*a^2*b*c^3*d-23*a*b^2*c^3*d-32*b^3*c^3*d-14*a^2*c^4*d+5*a*b*c^4*d+48*b^2*c^4*d+5*a*c^5*d-20*b*c^5*d-c^6*d+5*a^5*d^2-45*a^4*b*d^2+42*a^3*b^2*d^2+50*a^2*b^3*d^2-8*a*b^4*d^2-49*b^5*d^2-35*a^4*c*d^2-25*a^3*b*c*d^2-4*a^2*b^2*c*d^2-26*a*b^3*c*d^2-28*b^4*c*d^2+46*a^3*c^2*d^2+22*a^2*b*c^2*d^2+43*a*b^2*c^2*d^2-4*b^3*c^2*d^2-25*a^2*c^3*d^2+31*a*b*c^3*d^2-31*b^2*c^3*d^2-30*a*c^4*d^2-18*b*c^4*d^2-12*c^5*d^2-33*a^4*d^3-48*a^3*b*d^3-36*a^2*b^2*d^3-6*a*b^3*d^3+8*b^4*d^3+3*a^3*c*d^3-43*a^2*b*c*d^3+34*a*b^2*c*d^3+19*b^3*c*d^3+19*a^2*c^2*d^3-49*a*b*c^2*d^3-2*b^2*c^2*d^3+12*a*c^3*d^3-29*b*c^3*d^3-16*c^4*d^3+27*a^3*d^4+22*a^2*b*d^4+22*a*b^2*d^4-12*b^3*d^4+34*a^2*c*d^4+8*a*b*c*d^4+50*b^2*c*d^4+40*a*c^2*d^4+27*b*c^2*d^4-35*c^3*d^4-30*a^2*d^5+24*a*b*d^5+7*b^2*d^5+16*a*c*d^5+17*b*c*d^5-40*c^2*d^5-47*a*d^6-12*b*d^6+16*c*d^6+6*d^7,a^6*b-45*a*b^6-30*a^6*c-5*a^5*b*c-39*a^4*b^2*c-37*a^3*b^3*c+a^2*b^4*c-14*a*b^5*c-37*b^6*c+49*a^5*c^2+28*a^4*b*c^2+7*a^3*b^2*c^2-10*a^2*b^3*c^2+10*a*b^4*c^2+17*b^5*c^2-34*a^4*c^3+24*a^3*b*c^3-36*a^2*b^2*c^3-13*a*b^3*c^3+34*b^4*c^3-20*a^3*c^4-38*a^2*b*c^4+32*a*b^2*c^4+34*b^3*c^4-13*a^2*c^5+44*a*b*c^5+17*b^2*c^5+20*a*c^6-37*b*c^6+10*a^6*d+26*a^5*b*d+15*a^4*b^2*d+23*a^3*b^3*d+16*a^2*b^4*d+48*a*b^5*d-30*b^6*d-9*a^5*c*d-20*a^4*b*c*d+49*a^3*b^2*c*d-48*a^2*b^3*c*d-36*a*b^4*c*d-21*b^5*c*d+9*a^4*c^2*d-24*a^3*b*c^2*d+42*a^2*b^2*c^2*d+26*a*b^3*c^2*d-46*b^4*c^2*d-50*a^3*c^3*d-11*a^2*b*c^3*d-34*a*b^2*c^3*d+32*b^3*c^3*d-16*a^2*c^4*d-25*a*b*c^4*d+6*b^2*c^4*d+18*a*c^5*d-40*b*c^5*d+41*c^6*d-8*a^5*d^2-27*a^4*b*d^2-48*a^3*b^2*d^2-a^2*b^3*d^2+50*a*b^4*d^2+21*b^5*d^2-48*a^4*c*d^2+4*a^3*b*c*d^2-28*a^2*b^2*c*d^2-4*a*b^3*c*d^2+16*b^4*c*d^2+50*a^3*c^2*d^2+40*a^2*b*c^2*d^2+35*a*b^2*c^2*d^2+29*b^3*c^2*d^2-34*a^2*c^3*d^2-21*a*b*c^3*d^2-b^2*c^3*d^2-9*a*c^4*d^2-29*b*c^4*d^2+6*c^5*d^2+16*a^4*d^3-34*a^3*b*d^3+3*a^2*b^2*d^3+21*a*b^3*d^3+39*b^4*d^3+21*a^3*c*d^3-44*a^2*b*c*d^3-16*a*b^2*c*d^3+b^3*c*d^3-38*a^2*c^2*d^3+18*a*b*c^2*d^3+37*b^2*c^2*d^3-46*a*c^3*d^3+25*b*c^3*d^3-50*c^4*d^3-8*a^3*d^4-24*a^2*b*d^4-2*a*b^2*d^4+6*b^3*d^4+9*a^2*c*d^4+12*a*b*c*d^4+33*b^2*c*d^4-44*a*c^2*d^4+23*b*c^2*d^4-4*c^3*d^4-9*a^2*d^5-2*a*b*d^5-14*b^2*d^5+21*a*c*d^5-16*b*c*d^5-19*c^2*d^5+17*a*d^6-20*b*d^6+11*c*d^6-41*d^7,a^7-10*a*b^6-6*a^6*c-48*a^5*b*c-14*a^4*b^2*c-16*a^3*b^3*c-4*a^2*b^4*c+24*a*b^5*c-10*b^6*c-2*a^5*c^2+23*a^3*b^2*c^2+26*a^2*b^3*c^2+22*a*b^4*c^2-50*b^5*c^2+14*a^4*c^3-7*a^3*b*c^3+a^2*b^2*c^3-49*a*b^3*c^3+b^4*c^3-46*a^3*c^4+9*a^2*b*c^4+10*a*b^2*c^4+b^3*c^4+38*a^2*c^5-26*a*b*c^5-50*b^2*c^5+28*a*c^6-10*b*c^6-7*a^6*d+24*a^5*b*d-8*a^4*b^2*d+23*a^3*b^3*d+9*a^2*b^4*d+28*a*b^5*d-23*b^6*d-42*a^4*b*c*d+24*a^3*b^2*c*d-30*a^2*b^3*c*d-42*a*b^4*c*d-43*b^5*c*d-42*a^4*c^2*d+11*a^3*b*c^2*d+9*a^2*b^2*c^2*d-8*a*b^3*c^2*d+4*b^4*c^2*d+10*a^3*c^3*d+43*a^2*b*c^3*d+3*a*b^2*c^3*d-14*b^3*c^3*d-5*a^2*c^4*d+25*a*b*c^4*d-50*b^2*c^4*d-17*a*c^5*d+35*b*c^5*d+47*c^6*d-4*a^5*d^2-43*a^4*b*d^2+35*a^3*b^2*d^2+19*a^2*b^3*d^2+48*a*b^4*d^2+45*b^5*d^2+3*a^4*c*d^2-46*a^3*b*c*d^2+8*a^2*b^2*c*d^2-35*a*b^3*c*d^2-27*b^4*c*d^2-49*a^3*c^2*d^2+37*a^2*b*c^2*d^2-43*a*b^2*c^2*d^2+32*b^3*c^2*d^2+48*a^2*c^3*d^2+9*a*b*c^3*d^2+b^2*c^3*d^2-31*a*c^4*d^2-23*b*c^4*d^2-21*c^5*d^2+34*a^4*d^3+38*a^3*b*d^3+41*a^2*b^2*d^3-24*a*b^3*d^3+28*b^4*d^3+47*a^3*c*d^3-6*a^2*b*c*d^3+27*a*b^2*c*d^3-43*b^3*c*d^3-24*a^2*c^2*d^3-19*a*b*c^2*d^3-50*b^2*c^2*d^3+31*a*c^3*d^3+40*b*c^3*d^3+19*c^4*d^3+4*a^3*d^4-36*a^2*b*d^4+43*a*b^2*d^4+27*b^3*d^4+49*a^2*c*d^4-27*a*b*c*d^4-39*b^2*c*d^4+46*a*c^2*d^4+40*b*c^2*d^4+5*c^3*d^4-12*a^2*d^5-5*a*b*d^5+16*b^2*d^5-26*a*c*d^5-31*b*c*d^5-38*c^2*d^5+17*a*d^6-11*b*d^6-7*c*d^6-39*d^7,b*c*d^6-21*c^2*d^6+36*a*d^7-34*b*d^7-40*c*d^7-11*d^8,a*c*d^6-24*c^2*d^6+5*a*d^7-7*b*d^7+21*c*d^7-43*d^8,b^2*d^6+20*c^2*d^6+6*a*d^7-30*b*d^7+25*c*d^7+4*d^8,a*b*d^6+23*c^2*d^6-43*a*d^7+47*b*d^7+42*c*d^7+29*d^8,a^2*d^6+49*c^2*d^6+6*a*d^7-35*b*d^7+19*c*d^7-11*d^8,c^3*d^5-38*c^2*d^6+47*a*d^7+35*b*d^7+46*c*d^7+21*d^8,b*c^2*d^5+41*c^2*d^6-8*a*d^7+8*b*d^7+46*c*d^7+42*d^8,a*c^2*d^5+44*c^2*d^6+10*a*d^7-36*b*d^7-21*c*d^7+28*d^8,b^2*c*d^5+9*c^2*d^6+35*a*d^7+20*b*d^7+49*c*d^7-47*d^8,a*b*c*d^5+44*c^2*d^6+24*a*d^7-12*b*d^7+24*c*d^7-5*d^8,a^2*c*d^5-9*c^2*d^6-34*a*d^7+27*b*d^7-49*c*d^7+d^8,b^3*d^5+21*c^2*d^6-37*a*d^7-13*b*d^7-48*c*d^7+25*d^8,a*b^2*d^5+4*c^2*d^6-8*a*d^7-42*b*d^7-31*c*d^7+21*d^8,a^2*b*d^5+26*c^2*d^6-47*a*d^7-37*b*d^7+24*c*d^7+6*d^8,a^3*d^5-32*c^2*d^6-31*a*d^7+26*b*d^7-35*c*d^7-39*d^8,c^4*d^4+25*c^2*d^6+35*a*d^7+24*b*d^7+32*c*d^7-46*d^8,b*c^3*d^4+10*c^2*d^6-9*a*d^7-27*b*d^7-17*c*d^7+11*d^8,a*c^3*d^4-41*c^2*d^6+5*a*d^7-18*b*d^7-43*c*d^7-25*d^8,b^2*c^2*d^4-9*c^2*d^6+15*a*d^7-7*b*d^7-27*c*d^7-40*d^8,a*b*c^2*d^4-4*c^2*d^6+25*a*d^7-9*b*d^7-41*c*d^7-11*d^8,a^2*c^2*d^4+15*c^2*d^6-5*a*d^7-34*b*d^7-11*c*d^7-29*d^8,b^3*c*d^4+49*c^2*d^6-24*a*d^7-8*b*d^7+7*c*d^7-46*d^8,a*b^2*c*d^4-20*c^2*d^6-4*a*d^7+32*b*d^7-42*c*d^7-d^8,a^2*b*c*d^4+15*c^2*d^6+31*a*d^7+16*b*d^7-25*c*d^7+29*d^8,a^3*c*d^4-48*c^2*d^6-36*a*d^7-10*b*d^7+4*c*d^7+27*d^8,b^4*d^4+26*c^2*d^6-25*a*d^7-3*b*d^7-45*c*d^7-26*d^8,a*b^3*d^4+c^2*d^6-21*a*d^7-13*b*d^7-20*c*d^7+16*d^8,a^2*b^2*d^4+22*c^2*d^6-27*a*d^7-23*b*d^7-5*c*d^7-27*d^8,a^3*b*d^4+2*c^2*d^6-29*a*d^7-6*b*d^7+26*c*d^7-46*d^8,a^4*d^4-40*c^2*d^6-9*a*d^7-24*b*d^7+2*c*d^7-37*d^8,c^5*d^3+14*c^2*d^6+40*a*d^7+21*b*d^7+50*c*d^7+31*d^8,b*c^4*d^3-21*c^2*d^6-2*a*d^7-9*b*d^7-28*c*d^7+20*d^8,a*c^4*d^3-39*c^2*d^6+38*a*d^7-24*b*d^7-42*c*d^7-30*d^8,b^2*c^3*d^3+19*c^2*d^6-50*a*d^7-33*b*d^7+16*c*d^7-45*d^8,a*b*c^3*d^3-6*c^2*d^6-38*a*d^7+35*b*d^7+32*c*d^7-12*d^8,a^2*c^3*d^3+44*c^2*d^6+35*a*d^7+42*b*d^7-10*c*d^7-48*d^8,b^3*c^2*d^3+33*c^2*d^6-7*a*d^7-41*b*d^7-3*c*d^7-33*d^8,a*b^2*c^2*d^3-21*c^2*d^6-22*a*d^7-23*b*d^7+24*c*d^7+47*d^8,a^2*b*c^2*d^3+c^2*d^6-32*a*d^7-34*b*d^7-42*c*d^7+7*d^8,a^3*c^2*d^3+6*c^2*d^6-31*a*d^7-26*b*d^7+19*c*d^7-49*d^8,b^4*c*d^3+6*c^2*d^6-24*a*d^7+10*b*d^7-18*c*d^7-4*d^8,a*b^3*c*d^3+46*c^2*d^6+41*a*d^7+7*b*d^7+8*c*d^7-28*d^8,a^2*b^2*c*d^3+33*c^2*d^6-15*a*d^7-11*b*d^7+38*c*d^7+14*d^8,a^3*b*c*d^3-29*c^2*d^6-4*a*d^7-32*b*d^7+13*c*d^7-3*d^8,a^4*c*d^3-34*c^2*d^6+5*a*d^7+29*b*d^7-15*c*d^7-48*d^8,b^5*d^3-42*c^2*d^6+33*a*d^7-49*b*d^7+33*c*d^7-43*d^8,a*b^4*d^3+25*c^2*d^6-11*a*d^7-16*b*d^7+32*c*d^7-2*d^8,a^2*b^3*d^3-36*c^2*d^6-47*a*d^7-16*b*d^7+19*c*d^7+9*d^8,a^3*b^2*d^3-30*c^2*d^6-21*a*d^7-6*b*d^7+16*c*d^7-14*d^8,a^4*b*d^3+47*c^2*d^6-16*a*d^7-13*b*d^7+21*c*d^7+30*d^8,a^5*d^3-2*c^2*d^6+40*a*d^7+34*b*d^7+14*c*d^7-50*d^8,c^6*d^2-4*c^2*d^6-41*a*d^7+46*b*d^7+17*c*d^7+19*d^8,b*c^5*d^2-49*c^2*d^6+5*a*d^7-31*b*d^7+30*c*d^7+28*d^8,a*c^5*d^2-12*c^2*d^6-23*a*d^7-39*b*d^7+6*c*d^7-27*d^8,b^2*c^4*d^2-12*c^2*d^6-30*a*d^7+13*b*d^7-42*c*d^7+38*d^8,a*b*c^4*d^2-31*c^2*d^6+5*a*d^7-41*b*d^7-24*c*d^7,a^2*c^4*d^2-c^2*d^6+4*a*d^7+21*b*d^7+19*c*d^7-34*d^8,b^3*c^3*d^2-50*c^2*d^6-11*a*d^7+24*b*d^7+24*c*d^7-44*d^8,a*b^2*c^3*d^2+2*c^2*d^6-42*a*d^7-17*b*d^7-33*c*d^7-10*d^8,a^2*b*c^3*d^2+20*c^2*d^6+29*a*d^7+35*b*d^7-31*c*d^7-35*d^8,a^3*c^3*d^2+35*c^2*d^6-13*a*d^7+20*b*d^7-15*c*d^7-45*d^8,b^4*c^2*d^2+c^2*d^6+36*a*d^7-42*b*d^7+32*c*d^7+16*d^8,a*b^3*c^2*d^2-9*c^2*d^6-43*a*d^7-5*b*d^7-17*c*d^7+50*d^8,a^2*b^2*c^2*d^2-36*c^2*d^6+31*a*d^7+4*b*d^7-26*c*d^7-11*d^8,a^3*b*c^2*d^2+15*c^2*d^6+40*a*d^7-18*b*d^7-31*c*d^7+43*d^8,a^4*c^2*d^2+41*c^2*d^6-49*a*d^7+37*b*d^7+47*c*d^7-48*d^8,b^5*c*d^2-49*c^2*d^6+15*a*d^7+48*b*d^7+22*c*d^7+38*d^8,a*b^4*c*d^2+12*c^2*d^6+16*a*d^7-22*b*d^7-c*d^7+29*d^8,a^2*b^3*c*d^2+31*c^2*d^6+19*a*d^7+45*b*d^7-6*c*d^7+42*d^8,a^3*b^2*c*d^2+29*c^2*d^6-39*a*d^7+25*b*d^7-48*c*d^7-d^8,a^4*b*c*d^2-31*c^2*d^6+24*a*d^7-2*b*d^7+36*c*d^7+37*d^8,a^5*c*d^2+33*c^2*d^6-46*a*d^7-41*b*d^7-29*c*d^7-12*d^8,b^6*d^2-39*c^2*d^6+35*a*d^7-8*b*d^7+35*c*d^7+47*d^8,a*b^5*d^2-38*c^2*d^6-11*a*d^7-37*b*d^7-7*c*d^7-5*d^8,a^2*b^4*d^2+29*c^2*d^6+36*a*d^7-29*b*d^7+20*c*d^7+39*d^8,a^3*b^3*d^2-44*c^2*d^6+43*a*d^7-50*b*d^7-24*c*d^7-16*d^8,a^4*b^2*d^2+20*c^2*d^6+33*a*d^7+6*b*d^7+47*c*d^7+40*d^8,a^5*b*d^2-10*c^2*d^6+25*a*d^7-8*b*d^7-14*c*d^7+16*d^8,a^6*d^2+48*c^2*d^6+14*a*d^7+32*b*d^7+17*c*d^7+13*d^8,c^7*d+38*c^2*d^6-39*a*d^7+22*b*d^7+15*c*d^7-d^8,b*c^6*d+9*c^2*d^6+37*a*d^7+12*b*d^7+27*c*d^7+3*d^8,a*c^6*d-5*c^2*d^6+34*a*d^7+15*b*d^7+2*c*d^7-21*d^8,b^2*c^5*d+35*c^2*d^6+27*a*d^7+13*b*d^7-39*c*d^7+8*d^8,a*b*c^5*d-34*c^2*d^6-18*a*d^7-21*b*d^7-31*c*d^7+46*d^8,a^2*c^5*d-16*c^2*d^6-6*a*d^7-18*b*d^7+3*c*d^7+47*d^8,b^3*c^4*d-46*c^2*d^6+4*a*d^7-38*b*d^7-29*c*d^7-4*d^8,a*b^2*c^4*d-35*c^2*d^6-14*a*d^7-32*b*d^7-40*c*d^7-35*d^8,a^2*b*c^4*d+23*c^2*d^6-44*a*d^7-3*b*d^7+4*c*d^7-4*d^8,a^3*c^4*d+24*c^2*d^6-7*a*d^7-44*b*d^7-16*c*d^7+10*d^8,b^4*c^3*d+43*c^2*d^6+12*a*d^7+43*b*d^7-49*c*d^7-23*d^8,a*b^3*c^3*d+22*c^2*d^6+6*a*d^7+2*b*d^7-9*c*d^7,a^2*b^2*c^3*d+4*c^2*d^6+21*a*d^7-24*b*d^7-26*c*d^7+33*d^8,a^3*b*c^3*d+13*c^2*d^6-18*a*d^7+31*b*d^7-28*c*d^7+2*d^8,a^4*c^3*d+10*c^2*d^6-14*a*d^7+30*b*d^7-40*c*d^7+33*d^8,b^5*c^2*d-35*c^2*d^6-33*a*d^7+7*b*d^7+13*c*d^7+26*d^8,a*b^4*c^2*d-49*c^2*d^6+9*a*d^7+20*b*d^7+11*c*d^7-32*d^8,a^2*b^3*c^2*d+33*c^2*d^6-43*a*d^7-27*b*d^7-31*c*d^7-41*d^8,a^3*b^2*c^2*d-6*c^2*d^6+23*a*d^7+20*b*d^7-8*c*d^7-6*d^8,a^4*b*c^2*d+10*c^2*d^6-24*a*d^7+30*b*d^7+42*c*d^7-23*d^8,a^5*c^2*d+12*c^2*d^6+20*a*d^7+24*b*d^7-9*c*d^7-9*d^8,b^6*c*d-12*c^2*d^6+36*a*d^7+4*b*d^7-12*c*d^7+26*d^8,a*b^5*c*d-19*c^2*d^6-39*a*d^7-26*b*d^7-4*c*d^7+10*d^8,a^2*b^4*c*d+38*c^2*d^6-6*a*d^7+6*b*d^7+41*c*d^7+49*d^8,a^3*b^3*c*d-34*c^2*d^6-42*a*d^7+22*b*d^7-26*c*d^7-13*d^8,a^4*b^2*c*d+14*c^2*d^6+40*a*d^7+39*b*d^7-34*d^8,a^5*b*c*d-8*c^2*d^6+45*a*d^7-35*b*d^7+48*c*d^7+47*d^8,a^6*c*d-6*c^2*d^6-24*a*d^7-2*b*d^7-9*c*d^7+7*d^8,b^7*d+34*c^2*d^6-14*a*d^7+46*b*d^7-50*c*d^7+26*d^8,a*b^6*d+6*c^2*d^6+23*a*d^7-27*b*d^7-25*c*d^7-2*d^8,c^8+43*c^2*d^6+11*b*d^7-39*c*d^7-30*d^8,b*c^7-44*c^2*d^6-4*a*d^7-10*b*d^7+31*c*d^7+42*d^8,a*c^7-6*a*d^7+31*b*d^7+37*c*d^7-41*d^8,b^2*c^6-11*c^2*d^6-35*a*d^7+32*b*d^7-25*c*d^7-21*d^8,a*b*c^6+2*c^2*d^6+43*a*d^7-48*b*d^7-49*c*d^7-19*d^8,a^2*c^6-20*c^2*d^6-11*a*d^7-35*b*d^7-33*c*d^7+28*d^8,b^3*c^5+4*c^2*d^6-7*a*d^7-21*b*d^7-14*c*d^7+48*d^8,a*b^2*c^5+17*c^2*d^6+45*a*d^7-32*b*d^7+29*c*d^7+38*d^8,a^2*b*c^5-13*c^2*d^6+46*a*d^7+4*b*d^7-18*c*d^7+19*d^8,a^3*c^5-23*c^2*d^6-a*d^7-3*b*d^7-15*c*d^7+19*d^8,b^4*c^4-50*c^2*d^6+39*a*d^7+49*b*d^7+47*c*d^7+7*d^8,a*b^3*c^4-33*c^2*d^6+10*a*d^7+32*b*d^7+21*c*d^7-39*d^8,a^2*b^2*c^4+23*c^2*d^6+27*a*d^7-17*b*d^7+29*c*d^7+9*d^8,a^3*b*c^4-47*c^2*d^6-43*a*d^7-47*b*d^7-34*c*d^7-23*d^8,a^4*c^4-6*c^2*d^6+7*a*d^7+38*b*d^7-27*c*d^7-9*d^8,b^5*c^3-47*c^2*d^6+18*a*d^7-44*b*d^7-4*c*d^7-18*d^8,a*b^4*c^3+30*c^2*d^6+36*a*d^7+25*b*d^7+42*c*d^7+d^8,a^2*b^3*c^3+10*c^2*d^6+31*a*d^7+45*b*d^7-44*c*d^7+37*d^8,a^3*b^2*c^3-41*c^2*d^6-15*a*d^7-34*b*d^7-22*c*d^7+28*d^8,a^4*b*c^3+19*c^2*d^6-23*a*d^7+18*b*d^7-13*c*d^7-48*d^8,a^5*c^3+16*c^2*d^6+22*a*d^7-31*b*d^7+33*c*d^7+15*d^8,b^6*c^2-42*c^2*d^6-10*a*d^7-16*b*d^7-46*c*d^7+42*d^8,a*b^5*c^2-23*c^2*d^6+34*a*d^7-37*b*d^7+2*c*d^7+10*d^8,a^2*b^4*c^2-45*c^2*d^6-5*a*d^7+43*b*d^7-18*c*d^7+7*d^8,a^3*b^3*c^2+36*c^2*d^6+19*a*d^7+21*b*d^7+46*c*d^7-24*d^8,a^4*b^2*c^2-17*c^2*d^6+30*a*d^7-39*b*d^7-39*c*d^7-24*d^8,a^5*b*c^2+10*c^2*d^6-24*a*d^7-36*b*d^7-14*c*d^7+26*d^8,a^6*c^2+47*c^2*d^6-41*a*d^7+32*b*d^7+6*c*d^7+42*d^8,b^7*c+44*c^2*d^6-6*a*d^7+5*b*d^7+20*c*d^7+50*d^8,a*b^6*c+29*c^2*d^6-16*a*d^7+45*b*d^7-3*c*d^7+14*d^8,b^8+48*c^2*d^6-40*a*d^7-44*b*d^7-10*c*d^7-23*d^8,a*b^7-32*c^2*d^6-41*a*d^7-11*b*d^7+50*c*d^7+13*d^8,d^9,c*d^8,b*d^8,a*d^8,c^2*d^7;
    1733   TestSSresAttribs2tr(M, "AGR@101n3d010s010%3");
    1734   kill AGR;
    1735 
    1736   ring AGR = (101), (a,b,c,d,e,f,g,h), dp; AGR;
    1737   // AGR@101n7d005s010%2, medium: <= 2
    1738   ideal M =
    1739 f*h-g*h,e*h-g*h,d*h-g*h,c*h-g*h,b*h-g*h,a*h-g*h,e*g+48*f*g-49*g*h,d*g+5*f*g-6*g*h,c*g+49*f*g-50*g*h,b*g-7*f*g+6*g*h,a*g-50*f*g+49*g*h,e*f-20*f*g+19*g*h,d*f+40*f*g-41*g*h,c*f-12*f*g+11*g*h,b*f+45*f*g-46*g*h,a*f+4*f*g-5*g*h,d*e-f*g,c*e-30*f*g+29*g*h,b*e-39*f*g+38*g*h,a*e+10*f*g-11*g*h,c*d-41*f*g+40*g*h,b*d-23*f*g+22*g*h,a*d-20*f*g+19*g*h,b*c+17*f*g-18*g*h,a*c+6*f*g-7*g*h,a*b+28*f*g-29*g*h,g^2*h-g*h^2,f^2*g-8*f*g^2+7*g*h^2,g*h^4+50*h^5,g^5+41*h^5,f*g^4-18*h^5,f^5+29*h^5,e^5+6*h^5,d^5-23*h^5,c^5-32*h^5,
    1740 b^5+17*h^5,a^5+17*h^5,h^6;
    1741   TestSSresAttribs2tr(M, "AGR@101n7d005s010%2");
    1742   kill AGR;
    1743 
    1744 // from Andreas...tooo long!?
    1745 
    1746   ring AGR = (101), (a,b,c,d,e), dp; AGR;
    1747 
    1748   // AGR101n4d007s021%4
    1749   ideal M = b^3*c*d-44*a*b*c^2*d-23*b^2*c^2*d-17*a*c^3*d+25*b*c^3*d-28*c^4*d+21*a^3*d^2+28*a^2*b*d^2+45*a*b^2*d^2-45*b^3*d^2+39*a^2*c*d^2+50*a*b*c*d^2-31*b^2*c*d^2+25*a*c^2*d^2-42*b*c^2*d^2-6*c^3*d^2+10*a^2*d^3-18*a*b*d^3-21*b^2*d^3-9*a*c*d^3+37*b*c*d^3-18*c^2*d^3+5*a*d^4+b*d^4-18*c*d^4+23*d^5-5*a^4*e+6*a^3*b*e-21*a^2*b^2*e-28*a*b^3*e+11*b^4*e+19*a^3*c*e+29*a^2*b*c*e-25*a*b^2*c*e-8*b^3*c*e+17*a^2*c^2*e+45*a*b*c^2*e-28*b^2*c^2*e+22*a*c^3*e+33*b*c^3*e+27*c^4*e-50*a^3*d*e+11*a^2*b*d*e-45*a*b^2*d*e-5*b^3*d*e-2*a^2*c*d*e-30*a*b*c*d*e-17*b^2*c*d*e-45*a*c^2*d*e+12*b*c^2*d*e-8*c^3*d*e+12*a^2*d^2*e+a*b*d^2*e-13*b^2*d^2*e-20*a*c*d^2*e+47*b*c*d^2*e-10*c^2*d^2*e+8*a*d^3*e+32*b*d^3*e-8*c*d^3*e+47*d^4*e+43*a^3*e^2+23*a^2*b*e^2+12*a*b^2*e^2+25*b^3*e^2-23*a^2*c*e^2-12*a*b*c*e^2+5*b^2*c*e^2-25*a*c^2*e^2-8*b*c^2*e^2-48*c^3*e^2+22*a^2*d*e^2+27*a*b*d*e^2-21*b^2*d*e^2+35*a*c*d*e^2-5*b*c*d*e^2+14*c^2*d*e^2+3*a*d^2*e^2-35*b*d^2*e^2+24*c*d^2*e^2-12*d^3*e^2-30*a^2*e^3+5*a*b*e^3-29*b^2*e^3-17*a*c*e^3-41*b*c*e^3-41*c^2*e^3-a*d*e^3-41*b*d*e^3+6*c*d*e^3+24*d^2*e^3+38*a*e^4+46*b*e^4+5*c*e^4-48*d*e^4-33*e^5,
    1750 a*b^2*c*d-8*a^2*c^2*d+35*a*b*c^2*d-9*b^2*c^2*d+41*a*c^3*d+11*b*c^3*d+36*c^4*d-36*a^3*d^2-11*a^2*b*d^2-45*a*b^2*d^2+20*b^3*d^2-38*a^2*c*d^2-21*a*b*c*d^2-26*b^2*c*d^2+26*a*c^2*d^2+45*b*c^2*d^2+2*c^3*d^2+35*a^2*d^3-15*a*b*d^3-30*b^2*d^3-37*a*c*d^3+3*b*c*d^3+29*c^2*d^3-39*a*d^4-13*b*d^4+42*c*d^4+50*d^5-47*a^4*e+a^3*b*e-10*a^2*b^2*e+10*a*b^3*e-19*b^4*e+47*a^3*c*e+29*a^2*b*c*e+33*a*b^2*c*e-7*b^3*c*e+29*a^2*c^2*e-2*b^2*c^2*e-19*a*c^3*e+16*b*c^3*e+44*c^4*e+47*a^3*d*e-14*a^2*b*d*e+48*a*b^2*d*e-21*b^3*d*e+13*a^2*c*d*e+4*a*b*c*d*e+20*b^2*c*d*e-3*a*c^2*d*e-34*b*c^2*d*e-2*c^3*d*e+10*a^2*d^2*e+38*a*b*d^2*e+18*b^2*d^2*e-a*c*d^2*e+24*b*c*d^2*e-11*c^2*d^2*e+24*a*d^3*e-10*b*d^3*e+15*c*d^3*e-44*d^4*e+6*a^3*e^2-7*a^2*b*e^2+30*a*b^2*e^2+25*b^3*e^2+40*a^2*c*e^2+33*a*b*c*e^2+26*b^2*c*e^2-2*a*c^2*e^2-2*b*c^2*e^2+32*c^3*e^2+31*a^2*d*e^2+50*a*b*d*e^2-5*b^2*d*e^2-43*a*c*d*e^2+37*b*c*d*e^2-16*c^2*d*e^2+39*a*d^2*e^2+15*b*d^2*e^2+35*c*d^2*e^2-47*d^3*e^2+38*a^2*e^3+7*a*b*e^3+16*b^2*e^3+43*a*c*e^3+23*b*c*e^3+9*c^2*e^3+37*a*d*e^3-18*b*d*e^3+32*c*d*e^3-2*d^2*e^3-31*a*e^4+18*b*e^4-35*c*e^4+9*d*e^4-49*e^5,
    1751 a^2*b*c*d+7*a^2*c^2*d-15*a*b*c^2*d+20*b^2*c^2*d+8*a*c^3*d-14*b*c^3*d+34*c^4*d+15*a^3*d^2+37*a^2*b*d^2-11*a*b^2*d^2-8*b^3*d^2-15*a^2*c*d^2-22*a*b*c*d^2-30*b^2*c*d^2+23*a*c^2*d^2+34*b*c^2*d^2+41*c^3*d^2-27*a^2*d^3+24*b^2*d^3-15*a*c*d^3+20*b*c*d^3-16*c^2*d^3-31*a*d^4+18*b*d^4-21*c*d^4+19*d^5+20*a^4*e+38*a^3*b*e-7*a^2*b^2*e+8*a*b^3*e-35*b^4*e+30*a^3*c*e-13*a^2*b*c*e+39*a*b^2*c*e-50*b^3*c*e+50*a^2*c^2*e-21*a*b*c^2*e+17*b^2*c^2*e-23*a*c^3*e+32*b*c^3*e-43*c^4*e-39*a^3*d*e+16*a^2*b*d*e+25*a*b^2*d*e-12*b^3*d*e+50*a^2*c*d*e+4*a*b*c*d*e-17*b^2*c*d*e-28*a*c^2*d*e-5*b*c^2*d*e+13*c^3*d*e+23*a^2*d^2*e+17*a*b*d^2*e+14*b^2*d^2*e-2*a*c*d^2*e+3*b*c*d^2*e+20*c^2*d^2*e-14*a*d^3*e+5*b*d^3*e-c*d^3*e+29*d^4*e-42*a^3*e^2-38*a^2*b*e^2-44*a*b^2*e^2-4*b^3*e^2+29*a^2*c*e^2-19*a*b*c*e^2+38*b^2*c*e^2+3*a*c^2*e^2-46*b*c^2*e^2-46*c^3*e^2-44*a^2*d*e^2+16*a*b*d*e^2-38*b^2*d*e^2+12*a*c*d*e^2+45*b*c*d*e^2-48*c^2*d*e^2+34*a*d^2*e^2+32*b*d^2*e^2+37*c*d^2*e^2+34*d^3*e^2+30*a^2*e^3+45*a*b*e^3+8*b^2*e^3+40*a*c*e^3-37*b*c*e^3-16*c^2*e^3-50*a*d*e^3-18*b*d*e^3-9*c*d*e^3-37*a*e^4-22*b*e^4+5*c*e^4+d*e^4+9*e^5,
    1752 a^3*c*d-44*a^2*c^2*d-38*a*b*c^2*d-26*b^2*c^2*d-12*a*c^3*d-21*b*c^3*d+43*c^4*d-22*a^3*d^2-23*a^2*b*d^2+32*a*b^2*d^2+45*b^3*d^2-48*a^2*c*d^2-40*a*b*c*d^2+3*b^2*c*d^2+2*a*c^2*d^2-27*b*c^2*d^2-35*c^3*d^2+33*a^2*d^3-11*a*b*d^3-5*b^2*d^3+8*a*c*d^3-42*b*c*d^3+41*c^2*d^3-41*b*d^4+29*c*d^4+5*d^5+32*a^4*e-46*a^3*b*e-46*a^2*b^2*e+19*a*b^3*e-14*b^4*e-24*a^3*c*e+3*a^2*b*c*e-22*a*b^2*c*e+49*b^3*c*e-47*a^2*c^2*e+27*a*b*c^2*e+48*b^2*c^2*e+20*a*c^3*e-3*b*c^3*e-11*c^4*e-21*a^3*d*e+a^2*b*d*e-13*a*b^2*d*e-33*b^3*d*e+13*a^2*c*d*e-3*a*b*c*d*e+15*b^2*c*d*e+35*a*c^2*d*e-20*b*c^2*d*e+45*c^3*d*e-14*a^2*d^2*e+11*a*b*d^2*e-38*b^2*d^2*e+40*a*c*d^2*e-30*b*c*d^2*e+14*c^2*d^2*e-26*a*d^3*e-43*b*d^3*e+38*c*d^3*e-24*d^4*e-10*a^3*e^2-31*a^2*b*e^2+a*b^2*e^2-34*b^3*e^2+5*a^2*c*e^2-12*a*b*c*e^2-6*b^2*c*e^2-30*a*c^2*e^2-b*c^2*e^2+31*c^3*e^2+22*a^2*d*e^2-26*a*b*d*e^2+9*b^2*d*e^2+32*a*c*d*e^2+24*b*c*d*e^2-36*c^2*d*e^2-a*d^2*e^2-14*b*d^2*e^2-24*c*d^2*e^2+7*d^3*e^2+38*a^2*e^3+35*a*b*e^3+16*b^2*e^3+25*a*c*e^3-30*b*c*e^3+30*c^2*e^3-25*a*d*e^3+3*b*d*e^3+40*c*d*e^3+16*d^2*e^3+45*a*e^4+15*b*e^4-12*c*e^4+42*d*e^4+7*e^5,
    1753 b^4*d+14*a^2*c^2*d+2*a*b*c^2*d+34*b^2*c^2*d-12*a*c^3*d+20*b*c^3*d-20*c^4*d+4*a^3*d^2-47*a^2*b*d^2-34*a*b^2*d^2-22*b^3*d^2+23*a^2*c*d^2-22*a*b*c*d^2-31*b^2*c*d^2-24*a*c^2*d^2+39*b*c^2*d^2-37*c^3*d^2-39*a^2*d^3-49*a*b*d^3-41*b^2*d^3-44*a*c*d^3+33*b*c*d^3-14*c^2*d^3-49*a*d^4+20*b*d^4+37*c*d^4+34*d^5+50*a^4*e-31*a^3*b*e-18*a^2*b^2*e-16*a*b^3*e+45*b^4*e+32*a^3*c*e+43*a^2*b*c*e-27*a*b^2*c*e+5*b^3*c*e+39*a^2*c^2*e+33*a*b*c^2*e-16*b^2*c^2*e-6*a*c^3*e-35*b*c^3*e-4*c^4*e-19*a^3*d*e+25*a^2*b*d*e-20*a*b^2*d*e+6*b^3*d*e-46*a^2*c*d*e-8*a*b*c*d*e+5*b^2*c*d*e+2*a*c^2*d*e-39*b*c^2*d*e-30*c^3*d*e+50*a^2*d^2*e-3*a*b*d^2*e-22*b^2*d^2*e+42*a*c*d^2*e-9*b*c*d^2*e+17*c^2*d^2*e+33*a*d^3*e+29*b*d^3*e-10*c*d^3*e+5*d^4*e+15*a^3*e^2+12*a^2*b*e^2-12*a*b^2*e^2+17*b^3*e^2+26*a^2*c*e^2+23*a*b*c*e^2+4*b^2*c*e^2-8*a*c^2*e^2+49*b*c^2*e^2-25*c^3*e^2-24*a^2*d*e^2-19*a*b*d*e^2+26*b^2*d*e^2+38*a*c*d*e^2+48*b*c*d*e^2-28*c^2*d*e^2-15*a*d^2*e^2+31*b*d^2*e^2-47*c*d^2*e^2-5*d^3*e^2-28*a^2*e^3+46*a*b*e^3-25*b^2*e^3-25*a*c*e^3-42*b*c*e^3-39*c^2*e^3-22*a*d*e^3+7*b*d*e^3+4*c*d*e^3-9*d^2*e^3+50*a*e^4-39*b*e^4+44*c*e^4+28*d*e^4+36*e^5,
    1754 a*b^3*d-32*a^2*c^2*d-43*a*b*c^2*d-38*b^2*c^2*d-33*a*c^3*d-34*b*c^3*d+15*c^4*d-10*a^3*d^2+20*a^2*b*d^2+23*a*b^2*d^2-6*b^3*d^2-46*a^2*c*d^2-29*a*b*c*d^2-20*b^2*c*d^2+17*a*c^2*d^2-42*b*c^2*d^2+27*c^3*d^2-15*a^2*d^3-27*a*b*d^3+43*b^2*d^3-a*c*d^3+45*b*c*d^3+7*c^2*d^3+4*a*d^4-5*b*d^4-13*c*d^4-26*d^5-24*a^4*e-5*a^2*b^2*e-27*a*b^3*e-23*b^4*e+9*a^3*c*e+33*a^2*b*c*e+25*a*b^2*c*e+39*b^3*c*e-30*a^2*c^2*e-33*a*b*c^2*e-37*b^2*c^2*e-13*a*c^3*e+49*b*c^3*e-30*c^4*e+8*a^3*d*e+20*a^2*b*d*e+18*a*b^2*d*e-34*b^3*d*e-19*a^2*c*d*e+39*a*b*c*d*e+21*b^2*c*d*e+12*a*c^2*d*e-15*b*c^2*d*e+39*c^3*d*e+34*a^2*d^2*e+49*a*b*d^2*e-10*b^2*d^2*e-46*a*c*d^2*e+18*b*c*d^2*e-6*c^2*d^2*e+9*a*d^3*e+30*b*d^3*e+20*c*d^3*e+3*d^4*e-15*a^3*e^2-18*a^2*b*e^2+5*a*b^2*e^2+14*b^3*e^2+19*a^2*c*e^2+30*a*b*c*e^2-b^2*c*e^2+33*a*c^2*e^2+41*b*c^2*e^2-7*c^3*e^2+12*a^2*d*e^2-13*a*b*d*e^2-3*b^2*d*e^2-49*a*c*d*e^2-17*b*c*d*e^2+29*c^2*d*e^2-19*a*d^2*e^2-38*b*d^2*e^2-10*c*d^2*e^2+50*d^3*e^2-17*a^2*e^3+47*a*b*e^3-7*b^2*e^3-25*a*c*e^3+29*b*c*e^3-41*c^2*e^3-35*a*d*e^3+b*d*e^3+32*c*d*e^3-15*d^2*e^3+9*a*e^4+22*c*e^4+12*d*e^4+36*e^5,
    1755 a^2*b^2*d-a^2*c^2*d-5*a*b*c^2*d+40*b^2*c^2*d+4*a*c^3*d+35*b*c^3*d+42*c^4*d-23*a^3*d^2-34*a^2*b*d^2+4*a*b^2*d^2+27*b^3*d^2+38*a^2*c*d^2-47*a*b*c*d^2+50*b^2*c*d^2+17*a*c^2*d^2+8*c^3*d^2+26*a^2*d^3-32*a*b*d^3+3*b^2*d^3+16*a*c*d^3-47*b*c*d^3-41*c^2*d^3-22*a*d^4-47*b*d^4-17*c*d^4-43*d^5-49*a^4*e+6*a^3*b*e-46*a^2*b^2*e+30*a*b^3*e-21*b^4*e+30*a^3*c*e+17*a^2*b*c*e+39*a*b^2*c*e+37*b^3*c*e+36*a^2*c^2*e+21*a*b*c^2*e-36*b^2*c^2*e-2*a*c^3*e+18*b*c^3*e-49*c^4*e-47*a^3*d*e+35*a^2*b*d*e+10*a*b^2*d*e+22*b^3*d*e-10*a^2*c*d*e-24*a*b*c*d*e-43*b^2*c*d*e-11*a*c^2*d*e+39*b*c^2*d*e+14*c^3*d*e-15*a^2*d^2*e+36*a*b*d^2*e+42*b^2*d^2*e+32*a*c*d^2*e+7*b*c*d^2*e-4*c^2*d^2*e-13*a*d^3*e+39*b*d^3*e+20*c*d^3*e+7*d^4*e+49*a^3*e^2+39*a^2*b*e^2-12*a*b^2*e^2+36*b^3*e^2+12*a^2*c*e^2-45*a*b*c*e^2+47*b^2*c*e^2+16*a*c^2*e^2+21*b*c^2*e^2+2*c^3*e^2+43*a^2*d*e^2+16*a*b*d*e^2+15*b^2*d*e^2+44*a*c*d*e^2+47*b*c*d*e^2+6*c^2*d*e^2+29*a*d^2*e^2-10*b*d^2*e^2-14*c*d^2*e^2+40*d^3*e^2+10*a^2*e^3-2*a*b*e^3-12*b^2*e^3-11*a*c*e^3+4*b*c*e^3+c^2*e^3-41*a*d*e^3-33*b*d*e^3+13*c*d*e^3+32*d^2*e^3-43*a*e^4+42*b*e^4-4*c*e^4-36*d*e^4,
    1756 a^3*b*d-15*a^2*c^2*d-32*a*b*c^2*d+24*b^2*c^2*d+48*a*c^3*d+6*b*c^3*d-40*a^3*d^2+34*a^2*b*d^2+29*a*b^2*d^2+18*b^3*d^2-17*a^2*c*d^2+34*a*b*c*d^2+5*b^2*c*d^2-31*a*c^2*d^2-29*b*c^2*d^2-12*c^3*d^2+11*a^2*d^3+8*a*b*d^3+3*b^2*d^3-33*a*c*d^3-34*b*c*d^3-12*c^2*d^3-48*a*d^4+18*b*d^4+41*c*d^4-45*d^5-22*a^4*e+a^3*b*e-25*a^2*b^2*e+3*a*b^3*e+49*b^4*e-27*a^3*c*e-42*a^2*b*c*e+2*a*b^2*c*e+3*b^3*c*e-40*a^2*c^2*e-30*a*b*c^2*e+2*b^2*c^2*e-14*a*c^3*e-6*b*c^3*e+22*c^4*e-16*a^3*d*e+32*a^2*b*d*e-2*a*b^2*d*e-27*b^3*d*e+16*a^2*c*d*e+42*a*b*c*d*e-6*b^2*c*d*e-46*a*c^2*d*e-9*b*c^2*d*e+31*c^3*d*e-23*a^2*d^2*e-a*b*d^2*e+22*b^2*d^2*e+29*a*c*d^2*e+22*b*c*d^2*e-28*c^2*d^2*e-32*a*d^3*e-10*b*d^3*e-10*c*d^3*e+19*d^4*e-41*a^3*e^2+27*a^2*b*e^2+44*a*b^2*e^2-32*b^3*e^2-24*a^2*c*e^2-6*a*b*c*e^2-25*b^2*c*e^2+29*a*c^2*e^2+19*b*c^2*e^2-47*c^3*e^2+20*a^2*d*e^2-3*a*b*d*e^2+43*b^2*d*e^2-14*a*c*d*e^2+2*b*c*d*e^2-37*c^2*d*e^2-24*a*d^2*e^2-19*b*d^2*e^2+30*c*d^2*e^2+29*d^3*e^2-a^2*e^3-6*a*b*e^3-18*b^2*e^3-48*a*c*e^3+13*b*c*e^3+40*c^2*e^3-48*a*d*e^3-45*b*d*e^3-23*c*d*e^3-6*d^2*e^3+4*a*e^4+12*b*e^4+36*c*e^4+32*d*e^4-20*e^5,
    1757 a^4*d+17*a^2*c^2*d-6*a*b*c^2*d-16*b^2*c^2*d-8*a*c^3*d+12*b*c^3*d+31*c^4*d-2*a^3*d^2+45*a^2*b*d^2+29*a*b^2*d^2-47*b^3*d^2+17*a^2*c*d^2-28*a*b*c*d^2-12*b^2*c*d^2-49*a*c^2*d^2-34*b*c^2*d^2-49*c^3*d^2-13*a^2*d^3+12*a*b*d^3-50*b^2*d^3-27*a*c*d^3+17*b*c*d^3+26*c^2*d^3-40*a*d^4+37*b*d^4+31*c*d^4+42*d^5-3*a^4*e+40*a^3*b*e+39*a^2*b^2*e-35*a*b^3*e+2*b^4*e-47*a^3*c*e-45*a^2*b*c*e-24*a*b^2*c*e-20*b^3*c*e+a^2*c^2*e-3*a*b*c^2*e+8*b^2*c^2*e-42*a*c^3*e-49*b*c^3*e-49*c^4*e+42*a^3*d*e+25*a^2*b*d*e+45*a*b^2*d*e+35*b^3*d*e+43*a^2*c*d*e-18*a*b*c*d*e+24*b^2*c*d*e-2*a*c^2*d*e-43*b*c^2*d*e+16*c^3*d*e-44*a^2*d^2*e+31*a*b*d^2*e+17*b^2*d^2*e-36*a*c*d^2*e+25*b*c*d^2*e-20*c^2*d^2*e+17*a*d^3*e-39*b*d^3*e-37*c*d^3*e+10*d^4*e-30*a^3*e^2+34*a^2*b*e^2-43*a*b^2*e^2-2*b^3*e^2-48*a^2*c*e^2+32*a*b*c*e^2+47*b^2*c*e^2+34*a*c^2*e^2-32*b*c^2*e^2+4*c^3*e^2-26*a^2*d*e^2+22*a*b*d*e^2+23*b^2*d*e^2-37*a*c*d*e^2+26*b*c*d*e^2-33*c^2*d*e^2-5*a*d^2*e^2+15*b*d^2*e^2+19*c*d^2*e^2-31*d^3*e^2+42*a^2*e^3+27*a*b*e^3+30*b^2*e^3+22*a*c*e^3-49*b*c*e^3-19*c^2*e^3+42*a*d*e^3+5*b*d*e^3+32*c*d*e^3+9*d^2*e^3-17*a*e^4-46*b*e^4+23*c*e^4-32*d*e^4-2*e^5,
    1758 c^5+40*a^2*c^2*d+34*a*b*c^2*d-16*b^2*c^2*d+9*a*c^3*d-13*b*c^3*d+30*c^4*d+18*a^3*d^2+27*a^2*b*d^2+37*a*b^2*d^2-30*b^3*d^2-38*a^2*c*d^2-40*a*b*c*d^2-10*b^2*c*d^2-28*a*c^2*d^2-26*b*c^2*d^2+15*c^3*d^2-7*a^2*d^3+2*a*b*d^3+28*b^2*d^3+27*a*c*d^3+11*b*c*d^3-9*c^2*d^3-18*a*d^4+39*b*d^4+8*c*d^4+20*d^5+34*a^4*e+27*a^3*b*e+10*a^2*b^2*e-10*a*b^3*e+15*b^4*e+a^3*c*e+16*a^2*b*c*e+47*a*b^2*c*e-50*b^3*c*e-45*a^2*c^2*e-47*a*b*c^2*e-38*b^2*c^2*e+49*a*c^3*e+11*b*c^3*e-8*c^4*e-24*a^3*d*e+41*a^2*b*d*e+31*a*b^2*d*e-31*b^3*d*e-44*a^2*c*d*e-a*b*c*d*e-15*b^2*c*d*e-27*a*c^2*d*e-50*b*c^2*d*e+29*c^3*d*e+30*a^2*d^2*e+41*a*b*d^2*e-31*b^2*d^2*e-40*a*c*d^2*e+14*b*c*d^2*e-18*c^2*d^2*e+4*a*d^3*e-27*b*d^3*e-36*c*d^3*e-26*d^4*e-2*a^3*e^2+39*a^2*b*e^2-17*a*b^2*e^2-b^3*e^2+24*a^2*c*e^2-6*a*b*c*e^2-12*b^2*c*e^2+38*a*c^2*e^2+6*b*c^2*e^2+38*c^3*e^2+15*a^2*d*e^2-2*a*b*d*e^2-22*b^2*d*e^2+30*a*c*d*e^2+50*b*c*d*e^2-37*c^2*d*e^2+2*a*d^2*e^2+27*b*d^2*e^2+2*c*d^2*e^2+19*d^3*e^2+48*a^2*e^3+24*a*b*e^3+49*b^2*e^3-35*a*c*e^3+49*b*c*e^3+2*c^2*e^3+20*a*d*e^3+34*b*d*e^3-50*c*d*e^3-41*d^2*e^3+48*a*e^4-24*b*e^4-14*c*e^4+32*d*e^4-11*e^5,
    1759 b*c^4+9*a^2*c^2*d-47*a*b*c^2*d-29*b^2*c^2*d+24*a*c^3*d-19*b*c^3*d-25*c^4*d+50*a^3*d^2-6*a^2*b*d^2-32*a*b^2*d^2-43*b^3*d^2+42*a^2*c*d^2-16*a*b*c*d^2-40*b^2*c*d^2+3*a*c^2*d^2+9*b*c^2*d^2+34*c^3*d^2-48*a^2*d^3-8*a*b*d^3-22*b^2*d^3+42*a*c*d^3+25*b*c*d^3-31*c^2*d^3-12*a*d^4+25*b*d^4+c*d^4+13*d^5-26*a^4*e+2*a^3*b*e-37*a^2*b^2*e+23*a*b^3*e+25*b^4*e+43*a^3*c*e-10*a^2*b*c*e+16*a*b^2*c*e-24*b^3*c*e+43*a^2*c^2*e-25*a*b*c^2*e+39*b^2*c^2*e+31*a*c^3*e-21*b*c^3*e+16*c^4*e+17*a^3*d*e-33*a^2*b*d*e+34*a*b^2*d*e-16*b^3*d*e+49*a^2*c*d*e+10*a*b*c*d*e-14*b^2*c*d*e+6*a*c^2*d*e+32*b*c^2*d*e-25*c^3*d*e-16*a^2*d^2*e-26*a*b*d^2*e+36*b^2*d^2*e+41*a*c*d^2*e-43*b*c*d^2*e-44*c^2*d^2*e+24*a*d^3*e+12*b*d^3*e-40*c*d^3*e+46*d^4*e-18*a^3*e^2+36*a^2*b*e^2-49*a*b^2*e^2+47*b^3*e^2-30*a^2*c*e^2+11*a*b*c*e^2-17*b^2*c*e^2-19*a*c^2*e^2-33*b*c^2*e^2+4*c^3*e^2-14*a^2*d*e^2-13*a*b*d*e^2-4*b^2*d*e^2-a*c*d*e^2+22*b*c*d*e^2-41*c^2*d*e^2+50*a*d^2*e^2+24*b*d^2*e^2-29*c*d^2*e^2-9*d^3*e^2+10*a^2*e^3+44*a*b*e^3+11*b^2*e^3+25*a*c*e^3+31*b*c*e^3+22*c^2*e^3+a*d*e^3-6*c*d*e^3+26*d^2*e^3-40*a*e^4+31*b*e^4-50*c*e^4+9*d*e^4+39*e^5,
    1760 a*c^4-47*a^2*c^2*d+40*a*b*c^2*d-8*b^2*c^2*d+3*a*c^3*d-3*b*c^3*d+38*c^4*d-13*a^3*d^2+3*a^2*b*d^2+19*a*b^2*d^2+24*b^3*d^2-27*a^2*c*d^2-12*a*b*c*d^2-45*b^2*c*d^2+28*a*c^2*d^2+35*b*c^2*d^2-28*c^3*d^2+7*a^2*d^3+3*a*b*d^3-34*b^2*d^3+15*a*c*d^3+36*b*c*d^3-18*c^2*d^3-49*a*d^4+44*b*d^4+c*d^4-10*d^5+31*a^4*e-18*a^3*b*e+7*a^2*b^2*e+38*a*b^3*e+37*b^4*e+18*a^3*c*e-50*a^2*b*c*e+12*a*b^2*c*e+43*b^3*c*e+33*a^2*c^2*e+13*a*b*c^2*e+13*b^2*c^2*e-4*a*c^3*e+13*b*c^3*e+20*c^4*e-32*a^3*d*e-36*a^2*b*d*e+47*a*b^2*d*e+43*b^3*d*e-13*a^2*c*d*e-27*a*b*c*d*e+7*b^2*c*d*e-40*a*c^2*d*e-30*b*c^2*d*e+21*c^3*d*e-18*a^2*d^2*e-32*a*b*d^2*e-20*b^2*d^2*e-47*a*c*d^2*e+34*b*c*d^2*e-3*c^2*d^2*e-22*a*d^3*e-29*b*d^3*e-47*c*d^3*e-33*d^4*e-3*a^3*e^2+46*a^2*b*e^2-42*a*b^2*e^2+6*b^3*e^2+16*a^2*c*e^2-9*a*b*c*e^2-35*b^2*c*e^2-24*b*c^2*e^2-5*c^3*e^2+18*a^2*d*e^2+43*a*b*d*e^2-43*b^2*d*e^2+6*a*c*d*e^2+8*b*c*d*e^2-33*c^2*d*e^2-26*a*d^2*e^2+31*b*d^2*e^2-29*c*d^2*e^2+d^3*e^2+45*a^2*e^3+45*a*b*e^3-31*b^2*e^3-26*a*c*e^3+35*b*c*e^3+30*c^2*e^3-33*a*d*e^3-4*b*d*e^3+34*c*d*e^3+21*d^2*e^3+41*a*e^4-14*b*e^4-32*c*e^4-19*d*e^4+29*e^5,
    1761 b^2*c^3+10*a^2*c^2*d+20*a*b*c^2*d+36*b^2*c^2*d-7*a*c^3*d+13*b*c^3*d+42*c^4*d-6*a^3*d^2+13*a^2*b*d^2+31*a*b^2*d^2-29*b^3*d^2+44*a^2*c*d^2-20*a*b*c*d^2+27*b^2*c*d^2+17*a*c^2*d^2-7*b*c^2*d^2-18*c^3*d^2-44*a^2*d^3-35*a*b*d^3-11*b^2*d^3-28*a*c*d^3+b*c*d^3+22*c^2*d^3-13*a*d^4-32*b*d^4-33*c*d^4-48*d^5-16*a^4*e+7*a^3*b*e-40*a^2*b^2*e-47*a*b^3*e+20*b^4*e-41*a^3*c*e+50*a^2*b*c*e-35*a*b^2*c*e+44*b^3*c*e-43*a^2*c^2*e+15*a*b*c^2*e-33*b^2*c^2*e-38*a*c^3*e-16*b*c^3*e+11*c^4*e+46*a^3*d*e+32*a^2*b*d*e+3*a*b^2*d*e+39*b^3*d*e-32*a^2*c*d*e-19*a*b*c*d*e+23*b^2*c*d*e-2*a*c^2*d*e-44*b*c^2*d*e-44*c^3*d*e+18*a^2*d^2*e+31*a*b*d^2*e+16*b^2*d^2*e+a*c*d^2*e+45*b*c*d^2*e-18*c^2*d^2*e+22*a*d^3*e+16*b*d^3*e+2*c*d^3*e+48*d^4*e-32*a^3*e^2+49*a^2*b*e^2-3*a*b^2*e^2+30*b^3*e^2+31*a^2*c*e^2+28*a*b*c*e^2-4*b^2*c*e^2+7*a*c^2*e^2+48*b*c^2*e^2+40*c^3*e^2-a^2*d*e^2+19*a*b*d*e^2+40*b^2*d*e^2-3*a*c*d*e^2+9*b*c*d*e^2+21*c^2*d*e^2+28*a*d^2*e^2+49*b*d^2*e^2+19*c*d^2*e^2+41*d^3*e^2-30*a^2*e^3-30*a*b*e^3+5*b^2*e^3-2*a*c*e^3+17*b*c*e^3-16*c^2*e^3+42*b*d*e^3-22*c*d*e^3+34*d^2*e^3+20*a*e^4+42*b*e^4+8*c*e^4+36*d*e^4-25*e^5,
    1762 a*b*c^3-48*a^2*c^2*d-19*a*b*c^2*d+46*b^2*c^2*d-49*a*c^3*d-43*b*c^3*d+c^4*d-12*a^3*d^2+28*a^2*b*d^2+11*a*b^2*d^2+13*b^3*d^2+36*a^2*c*d^2+20*a*b*c*d^2+8*b^2*c*d^2-5*a*c^2*d^2+44*b*c^2*d^2-50*c^3*d^2+34*a^2*d^3+a*b*d^3-25*b^2*d^3+5*a*c*d^3-47*b*c*d^3-4*c^2*d^3-33*a*d^4-29*b*d^4+34*c*d^4+d^5-15*a^4*e+50*a^3*b*e+14*a^2*b^2*e+15*a*b^3*e+34*b^4*e+9*a^3*c*e+38*a^2*b*c*e+12*a*b^2*c*e+21*b^3*c*e+18*a^2*c^2*e+37*a*b*c^2*e-16*b^2*c^2*e+13*a*c^3*e+47*b*c^3*e-41*c^4*e-29*a^3*d*e-45*a^2*b*d*e+3*a*b^2*d*e+44*b^3*d*e-31*a^2*c*d*e-8*a*b*c*d*e-5*b^2*c*d*e-22*a*c^2*d*e-6*b*c^2*d*e+3*c^3*d*e-43*a^2*d^2*e-45*a*b*d^2*e-24*b^2*d^2*e+15*a*c*d^2*e+15*b*c*d^2*e+7*c^2*d^2*e-17*a*d^3*e-8*b*d^3*e-31*c*d^3*e+19*d^4*e-41*a^3*e^2-25*a^2*b*e^2-11*a*b^2*e^2-4*b^3*e^2-25*a^2*c*e^2-32*a*b*c*e^2-42*b^2*c*e^2-46*a*c^2*e^2-41*b*c^2*e^2-36*c^3*e^2+40*a^2*d*e^2-43*a*b*d*e^2+35*b^2*d*e^2+2*a*c*d*e^2-28*b*c*d*e^2-43*c^2*d*e^2+21*a*d^2*e^2+8*b*d^2*e^2-42*c*d^2*e^2+50*d^3*e^2+48*a^2*e^3-25*a*b*e^3+22*b^2*e^3-3*a*c*e^3-42*b*c*e^3+22*c^2*e^3-5*a*d*e^3-35*b*d*e^3+36*c*d*e^3-34*d^2*e^3+14*a*e^4+34*b*e^4+23*c*e^4-35*d*e^4+46*e^5,
    1763 a^2*c^3-17*a^2*c^2*d-7*a*b*c^2*d+15*b^2*c^2*d+35*a*c^3*d-36*b*c^3*d-19*c^4*d+20*a^3*d^2-39*a^2*b*d^2-3*a*b^2*d^2-2*b^3*d^2+8*a^2*c*d^2+13*a*b*c*d^2-20*b^2*c*d^2+6*a*c^2*d^2-48*b*c^2*d^2-21*c^3*d^2+46*a^2*d^3+39*a*b*d^3+32*b^2*d^3-2*a*c*d^3+47*b*c*d^3+16*c^2*d^3+20*a*d^4-36*b*d^4-12*c*d^4+28*d^5+24*a^4*e+17*a^3*b*e-21*a^2*b^2*e+31*a*b^3*e+24*b^4*e-45*a^3*c*e+34*a^2*b*c*e+3*a*b^2*c*e+34*b^3*c*e+39*a^2*c^2*e+12*a*b*c^2*e+18*b^2*c^2*e+19*a*c^3*e-13*b*c^3*e+7*c^4*e+16*a^3*d*e-4*a^2*b*d*e+35*a*b^2*d*e+20*b^3*d*e+38*a^2*c*d*e-41*a*b*c*d*e+49*b^2*c*d*e+7*a*c^2*d*e+39*b*c^2*d*e+15*c^3*d*e+32*a^2*d^2*e+35*a*b*d^2*e-36*b^2*d^2*e+11*a*c*d^2*e+11*b*c*d^2*e-26*c^2*d^2*e+2*a*d^3*e-30*b*d^3*e-2*c*d^3*e+5*d^4*e-2*a^3*e^2-45*a^2*b*e^2-10*a*b^2*e^2-42*b^3*e^2+13*a^2*c*e^2+38*a*b*c*e^2+22*b^2*c*e^2+42*a*c^2*e^2+16*b*c^2*e^2+40*c^3*e^2-19*a^2*d*e^2-35*a*b*d*e^2-24*b^2*d*e^2+33*a*c*d*e^2-48*b*c*d*e^2-6*a*d^2*e^2+2*b*d^2*e^2-31*c*d^2*e^2-5*d^3*e^2+45*a^2*e^3+17*a*b*e^3+50*b^2*e^3-18*a*c*e^3+3*b*c*e^3+32*c^2*e^3+34*a*d*e^3-39*b*d*e^3-35*c*d*e^3+22*d^2*e^3-40*a*e^4+43*b*e^4+48*c*e^4-42*d*e^4+8*e^5,
    1764 b^3*c^2+2*a^2*c^2*d-42*a*b*c^2*d-42*b^2*c^2*d+22*a*c^3*d-28*b*c^3*d-24*c^4*d-24*a^3*d^2+40*a^2*b*d^2-7*a*b^2*d^2+31*b^3*d^2+13*a^2*c*d^2+33*a*b*c*d^2+6*b^2*c*d^2+40*a*c^2*d^2+37*b*c^2*d^2+40*c^3*d^2-12*a^2*d^3+26*a*b*d^3+23*b^2*d^3+44*a*c*d^3+13*b*c*d^3-24*c^2*d^3+31*a*d^4+44*b*d^4+32*c*d^4+48*d^5+42*a^4*e+2*a^3*b*e-25*a^2*b^2*e-27*a*b^3*e-21*b^4*e+44*a^3*c*e+50*a^2*b*c*e+42*a*b^2*c*e+28*b^3*c*e+28*a^2*c^2*e+20*a*b*c^2*e+11*b^2*c^2*e-25*a*c^3*e+35*b*c^3*e+11*c^4*e+13*a^3*d*e+13*a^2*b*d*e-33*a*b^2*d*e+26*b^3*d*e+10*a^2*c*d*e-47*a*b*c*d*e+44*b^2*c*d*e-50*a*c^2*d*e+6*b*c^2*d*e+38*c^3*d*e-43*a^2*d^2*e-43*a*b*d^2*e+50*b^2*d^2*e-36*a*c*d^2*e+39*b*c*d^2*e+4*c^2*d^2*e+26*a*d^3*e+6*b*d^3*e-30*c*d^3*e-21*d^4*e+16*a^3*e^2-19*a^2*b*e^2+43*a*b^2*e^2-b^3*e^2-9*a^2*c*e^2-3*a*b*c*e^2-44*b^2*c*e^2-34*a*c^2*e^2-24*b*c^2*e^2+15*c^3*e^2+47*a^2*d*e^2-45*a*b*d*e^2-22*b^2*d*e^2-21*a*c*d*e^2+36*b*c*d*e^2+c^2*d*e^2-13*a*d^2*e^2+47*b*d^2*e^2-12*c*d^2*e^2+16*d^3*e^2-30*a^2*e^3-49*a*b*e^3+40*b^2*e^3+46*a*c*e^3-25*b*c*e^3-38*c^2*e^3-30*a*d*e^3-27*b*d*e^3+47*c*d*e^3+37*d^2*e^3+49*a*e^4+6*b*e^4-6*c*e^4+43*d*e^4+5*e^5,
    1765 a*b^2*c^2-9*a^2*c^2*d+49*a*b*c^2*d+17*b^2*c^2*d-45*a*c^3*d+27*b*c^3*d-8*c^4*d-25*a^3*d^2-23*a^2*b*d^2+47*a*b^2*d^2+8*b^3*d^2+20*a^2*c*d^2+37*a*b*c*d^2+28*b^2*c*d^2+8*a*c^2*d^2+36*b*c^2*d^2+34*c^3*d^2+37*a^2*d^3+23*a*b*d^3+11*b^2*d^3-46*a*c*d^3+45*b*c*d^3-16*c^2*d^3-27*a*d^4-39*b*d^4+31*c*d^4-24*d^5+42*a^4*e-30*a^3*b*e+12*a^2*b^2*e-18*a*b^3*e+8*b^4*e-33*a^3*c*e+21*a^2*b*c*e-9*a*b^2*c*e+10*b^3*c*e+11*a^2*c^2*e-33*a*b*c^2*e-27*b^2*c^2*e+47*a*c^3*e-35*b*c^3*e+15*c^4*e-19*a^3*d*e+20*a^2*b*d*e+41*a*b^2*d*e+39*b^3*d*e+24*a^2*c*d*e-12*a*b*c*d*e-16*b^2*c*d*e+38*a*c^2*d*e-43*b*c^2*d*e+39*c^3*d*e-14*a^2*d^2*e+39*a*b*d^2*e+24*b^2*d^2*e-35*a*c*d^2*e-8*b*c*d^2*e-26*c^2*d^2*e-5*a*d^3*e+34*b*d^3*e+16*c*d^3*e+35*d^4*e-a^3*e^2+44*a^2*b*e^2+33*a*b^2*e^2+41*b^3*e^2+26*a^2*c*e^2-6*a*b*c*e^2-15*b^2*c*e^2-46*a*c^2*e^2-37*b*c^2*e^2-49*c^3*e^2-6*a^2*d*e^2+20*a*b*d*e^2-7*b^2*d*e^2+16*a*c*d*e^2+49*b*c*d*e^2-23*c^2*d*e^2+37*a*d^2*e^2+31*b*d^2*e^2+17*c*d^2*e^2-39*d^3*e^2-46*a^2*e^3-17*a*b*e^3+46*b^2*e^3-31*a*c*e^3+39*b*c*e^3-13*c^2*e^3+40*a*d*e^3+18*b*d*e^3+3*c*d*e^3-6*d^2*e^3-35*a*e^4+22*b*e^4-47*c*e^4-4*d*e^4+35*e^5,
    1766 a^2*b*c^2+25*a^2*c^2*d-27*a*b*c^2*d+43*b^2*c^2*d+3*a*c^3*d+35*b*c^3*d+39*c^4*d+12*a^3*d^2-39*a^2*b*d^2-38*a*b^2*d^2+8*b^3*d^2+14*a^2*c*d^2+42*a*b*c*d^2-16*b^2*c*d^2+32*a*c^2*d^2-26*b*c^2*d^2+31*c^3*d^2-34*a^2*d^3-4*a*b*d^3+40*b^2*d^3+34*a*c*d^3-31*b*c*d^3+11*c^2*d^3+9*a*d^4+27*b*d^4+19*c*d^4-44*d^5-45*a^4*e+43*a^3*b*e-36*a^2*b^2*e+23*a*b^3*e-14*b^4*e-2*a^3*c*e+20*a^2*b*c*e-34*a*b^2*c*e+26*b^3*c*e+2*a^2*c^2*e-32*a*b*c^2*e+35*b^2*c^2*e-44*a*c^3*e-47*b*c^3*e-6*c^4*e+4*a^3*d*e+34*a^2*b*d*e-38*a*b^2*d*e-21*b^3*d*e+45*a^2*c*d*e-25*a*b*c*d*e+30*b^2*c*d*e+43*a*c^2*d*e-2*b*c^2*d*e+17*c^3*d*e+30*a^2*d^2*e+48*a*b*d^2*e+5*b^2*d^2*e+31*a*c*d^2*e+46*b*c*d^2*e+42*c^2*d^2*e-39*a*d^3*e-30*b*d^3*e+34*c*d^3*e+37*d^4*e+45*a^3*e^2-37*a^2*b*e^2+16*a*b^2*e^2-12*b^3*e^2+21*a^2*c*e^2-36*a*b*c*e^2+45*b^2*c*e^2-39*a*c^2*e^2+8*c^3*e^2-47*a^2*d*e^2+38*a*b*d*e^2+48*b^2*d*e^2-30*a*c*d*e^2-40*b*c*d*e^2+34*c^2*d*e^2+42*a*d^2*e^2-38*b*d^2*e^2+24*c*d^2*e^2+37*d^3*e^2-26*a^2*e^3-50*a*b*e^3+10*b^2*e^3-29*a*c*e^3-48*b*c*e^3+8*c^2*e^3+26*a*d*e^3-26*b*d*e^3-44*c*d*e^3+30*d^2*e^3-31*a*e^4-21*b*e^4-44*c*e^4-17*d*e^4+26*e^5,
    1767 a^3*c^2+32*a^2*c^2*d+18*a*b*c^2*d+26*b^2*c^2*d-34*a*c^3*d+29*b*c^3*d+6*c^4*d-46*a^3*d^2-37*a^2*b*d^2-9*a*b^2*d^2+13*b^3*d^2-46*a^2*c*d^2-25*a*b*c*d^2-19*b^2*c*d^2-36*a*c^2*d^2-28*b*c^2*d^2+c^3*d^2-16*a^2*d^3-32*a*b*d^3-39*b^2*d^3-a*c*d^3-44*b*c*d^3-24*c^2*d^3+44*a*d^4-18*b*d^4-11*c*d^4+31*d^5-37*a^4*e+50*a^3*b*e-3*a^2*b^2*e+40*a*b^3*e-19*b^4*e+31*a^3*c*e+49*a^2*b*c*e+14*a*b^2*c*e+22*b^3*c*e-27*a^2*c^2*e-46*a*b*c^2*e+31*b^2*c^2*e+22*a*c^3*e+27*b*c^3*e+25*c^4*e+10*a^3*d*e-21*a^2*b*d*e-13*a*b^2*d*e-46*b^3*d*e-34*a^2*c*d*e+24*a*b*c*d*e-38*b^2*c*d*e-14*a*c^2*d*e+50*b*c^2*d*e+28*c^3*d*e+44*a^2*d^2*e+23*a*b*d^2*e-38*b^2*d^2*e-4*a*c*d^2*e-34*b*c*d^2*e-21*c^2*d^2*e+9*a*d^3*e-14*b*d^3*e-19*c*d^3*e+14*d^4*e+31*a^3*e^2-33*a^2*b*e^2-39*a*b^2*e^2+9*b^3*e^2+7*a^2*c*e^2+13*a*b*c*e^2-12*b^2*c*e^2+24*a*c^2*e^2+18*b*c^2*e^2+19*c^3*e^2+24*a^2*d*e^2-24*a*b*d*e^2-47*b^2*d*e^2-46*a*c*d*e^2+31*b*c*d*e^2+31*c^2*d*e^2-9*a*d^2*e^2+6*b*d^2*e^2+46*c*d^2*e^2+23*d^3*e^2-37*a^2*e^3+14*a*b*e^3-40*b^2*e^3+14*a*c*e^3-46*b*c*e^3-42*c^2*e^3+32*a*d*e^3+5*b*d*e^3-4*c*d*e^3-16*d^2*e^3-4*a*e^4+36*b*e^4+38*c*e^4+30*d*e^4-18*e^5,
    1768 b^4*c+25*a^2*c^2*d+37*a*b*c^2*d+12*b^2*c^2*d-31*b*c^3*d+40*c^4*d-49*a^3*d^2+8*a^2*b*d^2+36*a*b^2*d^2+48*b^3*d^2-15*a^2*c*d^2+20*a*b*c*d^2-13*b^2*c*d^2-2*a*c^2*d^2+11*b*c^2*d^2+46*c^3*d^2+49*a^2*d^3-3*a*b*d^3-31*b^2*d^3-11*a*c*d^3+4*b*c*d^3+7*c^2*d^3-27*b*d^4+c*d^4+43*d^5+41*a^4*e-28*a^3*b*e+37*a^2*b^2*e-18*a*b^3*e+20*b^4*e-3*a^3*c*e+42*a^2*b*c*e-26*a*b^2*c*e-36*b^3*c*e-32*a^2*c^2*e+33*a*b*c^2*e-18*b^2*c^2*e-45*a*c^3*e+22*b*c^3*e+22*c^4*e+28*a^3*d*e-17*a^2*b*d*e-37*a*b^2*d*e-11*b^3*d*e+44*a^2*c*d*e-21*a*b*c*d*e+27*b^2*c*d*e-16*a*c^2*d*e+45*b*c^2*d*e+37*c^3*d*e+13*a^2*d^2*e-24*a*b*d^2*e+46*b^2*d^2*e-18*a*c*d^2*e-24*b*c*d^2*e+10*c^2*d^2*e-22*a*d^3*e-19*b*d^3*e+26*c*d^3*e+24*d^4*e+50*a^3*e^2-21*a^2*b*e^2-31*a*b^2*e^2+12*b^3*e^2+18*a^2*c*e^2-9*a*b*c*e^2-3*b^2*c*e^2+49*a*c^2*e^2-22*b*c^2*e^2-7*c^3*e^2+34*a^2*d*e^2+14*a*b*d*e^2-10*b^2*d*e^2-21*a*c*d*e^2-49*b*c*d*e^2-32*c^2*d*e^2-31*a*d^2*e^2-37*b*d^2*e^2+17*c*d^2*e^2-2*d^3*e^2+23*a^2*e^3+38*a*b*e^3+16*b^2*e^3+7*a*c*e^3-6*b*c*e^3+7*c^2*e^3-35*a*d*e^3+46*b*d*e^3-2*c*d*e^3-47*d^2*e^3+15*a*e^4-22*b*e^4+25*c*e^4+12*d*e^4+36*e^5,
    1769 a*b^3*c+7*a^2*c^2*d-37*a*b*c^2*d-27*b^2*c^2*d-a*c^3*d-28*b*c^3*d+32*c^4*d-17*a^3*d^2+30*a^2*b*d^2+7*a*b^2*d^2-32*b^3*d^2-10*a^2*c*d^2+38*a*b*c*d^2-15*b^2*c*d^2+a*c^2*d^2-37*b*c^2*d^2-9*c^3*d^2-13*a^2*d^3+27*a*b*d^3-11*b^2*d^3+6*a*c*d^3+b*c*d^3-9*c^2*d^3+44*a*d^4+3*b*d^4-36*c*d^4+41*d^5-3*a^4*e+10*a^3*b*e-8*a*b^3*e-3*b^4*e-3*a^3*c*e+34*a^2*b*c*e+3*a*b^2*c*e+15*b^3*c*e-22*a^2*c^2*e-33*a*b*c^2*e-4*b^2*c^2*e+48*a*c^3*e+7*b*c^3*e-29*c^4*e+38*a^3*d*e+14*a^2*b*d*e-26*a*b^2*d*e+48*b^3*d*e-3*a^2*c*d*e-45*a*b*c*d*e+26*b^2*c*d*e+46*a*c^2*d*e+26*b*c^2*d*e+15*c^3*d*e+29*a^2*d^2*e+42*a*b*d^2*e+11*b^2*d^2*e+26*a*c*d^2*e+44*b*c*d^2*e-18*c^2*d^2*e-19*a*d^3*e+47*b*d^3*e+c*d^3*e+50*d^4*e+8*a^3*e^2-19*a^2*b*e^2+49*a*b^2*e^2+17*b^3*e^2-27*a^2*c*e^2+30*a*b*c*e^2+10*b^2*c*e^2+21*a*c^2*e^2+11*b*c^2*e^2+38*c^3*e^2+36*a^2*d*e^2-28*a*b*d*e^2+22*b^2*d*e^2-45*a*c*d*e^2-45*b*c*d*e^2+43*c^2*d*e^2-21*a*d^2*e^2+5*b*d^2*e^2-41*c*d^2*e^2+36*d^3*e^2-25*a^2*e^3-22*a*b*e^3-6*b^2*e^3+31*a*c*e^3+19*b*c*e^3-35*c^2*e^3+44*a*d*e^3+40*b*d*e^3-14*c*d*e^3+6*d^2*e^3+2*a*e^4-26*b*e^4+43*c*e^4+39*d*e^4+7*e^5,
    1770 a^2*b^2*c-22*a^2*c^2*d+2*a*b*c^2*d-39*b^2*c^2*d-32*a*c^3*d-39*b*c^3*d+32*c^4*d+47*a^3*d^2-9*a^2*b*d^2+36*a*b^2*d^2-22*b^3*d^2+a^2*c*d^2+7*a*b*c*d^2+21*b^2*c*d^2+35*a*c^2*d^2+31*b*c^2*d^2+38*c^3*d^2+4*a^2*d^3+50*a*b*d^3-10*b^2*d^3-7*a*c*d^3-8*b*c*d^3-23*c^2*d^3+18*a*d^4+13*b*d^4+5*c*d^4-6*d^5-41*a^4*e+50*a^3*b*e+3*a^2*b^2*e+20*a*b^3*e-26*b^4*e-22*a^3*c*e+9*a^2*b*c*e+5*a*b^2*c*e+38*b^3*c*e-16*a^2*c^2*e-35*a*b*c^2*e-17*b^2*c^2*e-4*a*c^3*e-32*b*c^3*e-19*c^4*e-21*a^3*d*e+23*a^2*b*d*e+37*a*b^2*d*e+48*b^3*d*e-2*a^2*c*d*e-48*a*b*c*d*e-44*b^2*c*d*e+4*a*c^2*d*e+9*b*c^2*d*e-33*c^3*d*e+30*a^2*d^2*e+25*a*b*d^2*e+34*b^2*d^2*e-39*a*c*d^2*e+27*b*c*d^2*e+25*c^2*d^2*e+3*a*d^3*e-50*b*d^3*e-49*c*d^3*e-9*d^4*e-39*a^3*e^2+10*a^2*b*e^2-33*a*b^2*e^2+36*b^3*e^2+20*a^2*c*e^2+43*a*b*c*e^2+7*b^2*c*e^2+36*a*c^2*e^2-39*b*c^2*e^2-33*c^3*e^2+14*a^2*d*e^2-46*a*b*d*e^2+8*b^2*d*e^2+23*a*c*d*e^2+30*b*c*d*e^2-8*c^2*d*e^2+28*a*d^2*e^2-5*b*d^2*e^2+25*c*d^2*e^2+17*d^3*e^2+28*a^2*e^3-38*a*b*e^3-46*b^2*e^3-27*a*c*e^3-5*b*c*e^3-20*c^2*e^3+2*a*d*e^3-4*b*d*e^3+15*c*d*e^3-36*d^2*e^3+41*a*e^4+6*b*e^4+20*c*e^4+8*d*e^4-2*e^5,
    1771 a^3*b*c+40*a^2*c^2*d-47*a*b*c^2*d-27*b^2*c^2*d+41*a*c^3*d-39*b*c^3*d-32*c^4*d+5*a^3*d^2-5*a^2*b*d^2-34*a*b^2*d^2-35*b^3*d^2+29*a^2*c*d^2+4*a*b*c*d^2-6*b^2*c*d^2+25*a*c^2*d^2+6*b*c^2*d^2-44*c^3*d^2-38*a^2*d^3-31*a*b*d^3+37*b^2*d^3-49*a*c*d^3-17*b*c*d^3+9*c^2*d^3+25*a*d^4+4*b*d^4-25*c*d^4-49*d^5-15*a^4*e-11*a^3*b*e+7*a^2*b^2*e+37*a*b^3*e-21*b^4*e+18*a^3*c*e+46*a^2*b*c*e+6*a*b^2*c*e+43*b^3*c*e-5*a^2*c^2*e+49*a*b*c^2*e+44*b^2*c^2*e-18*a*c^3*e+30*b*c^3*e+30*c^4*e+37*a^3*d*e-47*a^2*b*d*e+23*a*b^2*d*e-26*b^3*d*e-12*a^2*c*d*e+49*a*b*c*d*e+37*b^2*c*d*e+3*a*c^2*d*e-15*b*c^2*d*e+c^3*d*e-13*a^2*d^2*e+32*a*b*d^2*e-29*b^2*d^2*e-11*a*c*d^2*e-28*b*c*d^2*e+21*c^2*d^2*e-10*a*d^3*e-20*b*d^3*e-2*c*d^3*e-25*d^4*e-18*a^3*e^2-10*a^2*b*e^2-26*a*b^2*e^2+15*b^3*e^2-6*a^2*c*e^2+48*a*b*c*e^2-36*b^2*c*e^2-18*a*c^2*e^2+8*b*c^2*e^2+36*c^3*e^2+2*a^2*d*e^2+48*a*b*d*e^2-32*b^2*d*e^2+47*a*c*d*e^2+b*c*d*e^2-35*c^2*d*e^2+16*a*d^2*e^2-26*b*d^2*e^2+40*c*d^2*e^2+50*d^3*e^2+16*a^2*e^3+32*a*b*e^3-22*b^2*e^3-43*a*c*e^3+4*b*c*e^3-26*c^2*e^3-29*a*d*e^3+7*b*d*e^3+20*c*d*e^3+8*d^2*e^3-9*a*e^4-7*b*e^4+3*c*e^4+49*d*e^4-48*e^5,
    1772 a^4*c-40*a^2*c^2*d+21*a*b*c^2*d+43*b^2*c^2*d+31*a*c^3*d-4*b*c^3*d+49*c^4*d+24*a^3*d^2-14*a^2*b*d^2+3*a*b^2*d^2-6*b^3*d^2+27*a^2*c*d^2+24*a*b*c*d^2-47*b^2*c*d^2-16*a*c^2*d^2+21*b*c^2*d^2-33*c^3*d^2+39*a^2*d^3-34*a*b*d^3-7*b^2*d^3+3*a*c*d^3+30*b*c*d^3-10*c^2*d^3+17*a*d^4+28*b*d^4+16*c*d^4-19*d^5+16*a^4*e-14*a^3*b*e+19*a^2*b^2*e-12*a*b^3*e-41*b^4*e-28*a^3*c*e+13*a^2*b*c*e+35*a*b^2*c*e-35*b^3*c*e+37*a^2*c^2*e-7*a*b*c^2*e+33*b^2*c^2*e-30*a*c^3*e+36*b*c^3*e-26*c^4*e-27*a^3*d*e+28*a^2*b*d*e+2*a*b^2*d*e+22*b^3*d*e-9*a^2*c*d*e+39*a*b*c*d*e-11*b^2*c*d*e+48*a*c^2*d*e+b*c^2*d*e-25*c^3*d*e-28*a^2*d^2*e-38*a*b*d^2*e-13*b^2*d^2*e-12*a*c*d^2*e-35*b*c*d^2*e-45*c^2*d^2*e-27*a*d^3*e-31*b*d^3*e+20*c*d^3*e+40*d^4*e+11*a^3*e^2-33*a^2*b*e^2-3*a*b^2*e^2+32*b^3*e^2+10*a^2*c*e^2+48*a*b*c*e^2-50*b^2*c*e^2+2*a*c^2*e^2-46*b*c^2*e^2+15*c^3*e^2-15*a^2*d*e^2+29*a*b*d*e^2+4*b^2*d*e^2-16*a*c*d*e^2+34*b*c*d*e^2-21*c^2*d*e^2+44*a*d^2*e^2-35*b*d^2*e^2+4*c*d^2*e^2-16*d^3*e^2-14*a^2*e^3+39*a*b*e^3+44*b^2*e^3-22*a*c*e^3-16*b*c*e^3+38*c^2*e^3-a*d*e^3+14*b*d*e^3-44*c*d*e^3-31*d^2*e^3+4*a*e^4+33*c*e^4-5*d*e^4+46*e^5,
    1773 b^5-5*a^2*c^2*d-23*a*b*c^2*d+3*b^2*c^2*d-30*a*c^3*d-48*b*c^3*d-40*c^4*d-21*a^3*d^2-13*a^2*b*d^2+36*a*b^2*d^2-35*b^3*d^2-9*a^2*c*d^2+32*a*b*c*d^2-19*b^2*c*d^2+3*a*c^2*d^2-2*b*c^2*d^2+22*c^3*d^2-37*a^2*d^3+46*a*b*d^3-38*b^2*d^3-33*a*c*d^3-7*b*c*d^3+3*c^2*d^3-33*a*d^4+b*d^4+22*c*d^4+50*d^5-33*a^4*e+18*a^3*b*e+11*a^2*b^2*e-19*a*b^3*e+49*b^4*e+3*a^3*c*e-10*a^2*b*c*e-29*a*b^2*c*e-17*b^3*c*e-15*a^2*c^2*e+30*a*b*c^2*e+39*b^2*c^2*e+7*a*c^3*e-46*b*c^3*e+29*c^4*e-17*a^3*d*e+26*a^2*b*d*e+27*a*b^2*d*e-27*b^3*d*e-27*a^2*c*d*e-7*a*b*c*d*e-36*b^2*c*d*e+18*a*c^2*d*e-34*b*c^2*d*e+31*c^3*d*e+22*a^2*d^2*e-2*a*b*d^2*e+39*b^2*d^2*e+40*a*c*d^2*e+49*b*c*d^2*e-41*c^2*d^2*e-46*a*d^3*e-33*b*d^3*e-40*c*d^3*e+16*d^4*e-37*a^3*e^2-14*a^2*b*e^2-49*a*b^2*e^2+39*b^3*e^2-20*a^2*c*e^2-39*a*b*c*e^2+20*b^2*c*e^2+10*a*c^2*e^2+29*b*c^2*e^2+20*c^3*e^2-19*a^2*d*e^2+37*a*b*d*e^2+20*b^2*d*e^2+26*a*c*d*e^2-8*b*c*d*e^2+14*c^2*d*e^2+24*a*d^2*e^2-14*b*d^2*e^2-33*c*d^2*e^2-18*d^3*e^2-2*a^2*e^3-32*a*b*e^3-37*b^2*e^3+45*a*c*e^3-33*b*c*e^3+28*c^2*e^3-19*a*d*e^3-43*b*d*e^3-10*c*d*e^3+30*d^2*e^3+44*a*e^4+40*b*e^4-20*c*e^4-40*d*e^4-2*e^5,
    1774 a*b^4-14*a^2*c^2*d+14*b^2*c^2*d+36*a*c^3*d+7*b*c^3*d-14*c^4*d-11*a^3*d^2+40*a^2*b*d^2-29*a*b^2*d^2-45*b^3*d^2+23*a^2*c*d^2+8*a*b*c*d^2+28*b^2*c*d^2+42*a*c^2*d^2+14*b*c^2*d^2+42*c^3*d^2-36*a^2*d^3-4*a*b*d^3+6*a*c*d^3-18*b*c*d^3+40*c^2*d^3-47*a*d^4-19*b*d^4-16*c*d^4+31*d^5-15*a^4*e+46*a^3*b*e+13*a^2*b^2*e-18*a*b^3*e+9*b^4*e+50*a^3*c*e-10*a^2*b*c*e-12*a*b^2*c*e+44*b^3*c*e+7*a^2*c^2*e+39*a*b*c^2*e-36*b^2*c^2*e+29*a*c^3*e-37*b*c^3*e-28*c^4*e-43*a^3*d*e+50*a^2*b*d*e-16*a*b^2*d*e+17*b^3*d*e+23*a^2*c*d*e-14*a*b*c*d*e+10*b^2*c*d*e+18*a*c^2*d*e+40*b*c^2*d*e-30*c^3*d*e+44*a^2*d^2*e+26*a*b*d^2*e+17*b^2*d^2*e+9*a*c*d^2*e+37*b*c*d^2*e-38*c^2*d^2*e+46*a*d^3*e+15*b*d^3*e+33*c*d^3*e+20*d^4*e+4*a^3*e^2-43*a^2*b*e^2-14*a*b^2*e^2-29*b^3*e^2+44*a^2*c*e^2-37*a*b*c*e^2-2*b^2*c*e^2+39*a*c^2*e^2-36*b*c^2*e^2+45*c^3*e^2-34*a^2*d*e^2-48*a*b*d*e^2-25*b^2*d*e^2+48*a*c*d*e^2+5*b*c*d*e^2-16*c^2*d*e^2+20*a*d^2*e^2+8*b*d^2*e^2-48*c*d^2*e^2+27*d^3*e^2-39*a^2*e^3-23*a*b*e^3-45*b^2*e^3-34*a*c*e^3-50*b*c*e^3-42*c^2*e^3+50*a*d*e^3+26*b*d*e^3+48*c*d*e^3-37*d^2*e^3-20*a*e^4-19*b*e^4+23*c*e^4+23*d*e^4+12*e^5,
    1775 a^2*b^3-25*a^2*c^2*d+26*a*b*c^2*d+32*b^2*c^2*d-48*a*c^3*d-7*b*c^3*d-44*c^4*d+14*a^3*d^2+19*a^2*b*d^2-7*a*b^2*d^2-15*b^3*d^2+50*a^2*c*d^2-11*a*b*c*d^2-13*b^2*c*d^2-33*a*c^2*d^2-46*b*c^2*d^2+12*c^3*d^2-26*a^2*d^3-11*a*b*d^3+22*b^2*d^3+24*a*c*d^3-12*b*c*d^3-22*c^2*d^3+40*a*d^4-23*b*d^4-48*c*d^4-20*d^5+17*a^4*e-41*a^3*b*e-a^2*b^2*e-12*a*b^3*e-9*b^4*e-30*a^3*c*e+50*a^2*b*c*e+31*a*b^2*c*e+5*b^3*c*e+33*a^2*c^2*e+15*a*b*c^2*e-50*b^2*c^2*e+24*a*c^3*e-b*c^3*e-6*c^4*e-31*a^3*d*e-26*a^2*b*d*e+49*a*b^2*d*e-13*b^3*d*e+43*a^2*c*d*e-10*a*b*c*d*e+35*b^2*c*d*e+36*a*c^2*d*e-22*b*c^2*d*e+40*c^3*d*e-7*a^2*d^2*e+28*a*b*d^2*e-b^2*d^2*e+17*a*c*d^2*e+13*b*c*d^2*e+26*c^2*d^2*e+32*a*d^3*e+3*b*d^3*e+12*c*d^3*e+40*d^4*e-40*a^3*e^2+12*a^2*b*e^2+27*a*b^2*e^2-24*b^3*e^2+13*a^2*c*e^2-19*a*b*c*e^2-27*b^2*c*e^2-28*a*c^2*e^2+50*b*c^2*e^2-48*c^3*e^2-14*a^2*d*e^2+26*a*b*d*e^2+35*b^2*d*e^2-43*a*c*d*e^2+42*b*c*d*e^2+9*c^2*d*e^2-10*a*d^2*e^2+21*c*d^2*e^2-5*d^3*e^2-30*a^2*e^3+38*a*b*e^3-25*b^2*e^3-28*a*c*e^3+23*b*c*e^3+38*c^2*e^3-30*a*d*e^3-16*b*d*e^3-35*c*d*e^3+2*d^2*e^3+33*a*e^4+12*b*e^4-25*c*e^4+26*d*e^4-40*e^5,
    1776 a^3*b^2-40*a^2*c^2*d+50*a*b*c^2*d+25*b^2*c^2*d+46*a*c^3*d-45*b*c^3*d-6*c^4*d-24*a^3*d^2-9*a^2*b*d^2-15*a*b^2*d^2+5*b^3*d^2+36*a^2*c*d^2-19*a*b*c*d^2+19*b^2*c*d^2+17*a*c^2*d^2+12*b*c^2*d^2-25*c^3*d^2-33*a^2*d^3-27*a*b*d^3+42*b^2*d^3-4*a*c*d^3+33*b*c*d^3+32*c^2*d^3+10*a*d^4+47*c*d^4-3*d^5-23*a^4*e-45*a^3*b*e+41*a^2*b^2*e+47*a*b^3*e+15*b^4*e-2*a^3*c*e+12*a^2*b*c*e+13*a*b^2*c*e-45*b^3*c*e-28*a^2*c^2*e-3*a*b*c^2*e-37*b^2*c^2*e+39*a*c^3*e+37*c^4*e-12*a^3*d*e-48*a^2*b*d*e-5*a*b^2*d*e+47*b^3*d*e-41*a^2*c*d*e-36*a*b*c*d*e-37*b^2*c*d*e-a*c^2*d*e-38*b*c^2*d*e+17*c^3*d*e-29*a^2*d^2*e-3*a*b*d^2*e-23*b^2*d^2*e-19*a*c*d^2*e+43*b*c*d^2*e-48*c^2*d^2*e-46*a*d^3*e+48*b*d^3*e+40*c*d^3*e-15*d^4*e-23*a^3*e^2-22*a^2*b*e^2-50*a*b^2*e^2-33*b^3*e^2+27*a^2*c*e^2-46*a*b*c*e^2+29*b^2*c*e^2-14*a*c^2*e^2+9*b*c^2*e^2-43*c^3*e^2-19*a^2*d*e^2-38*a*b*d*e^2+12*b^2*d*e^2+18*a*c*d*e^2+20*b*c*d*e^2+3*c^2*d*e^2-9*a*d^2*e^2-27*b*d^2*e^2-6*c*d^2*e^2+38*d^3*e^2+43*a^2*e^3+43*a*b*e^3+3*b^2*e^3+10*a*c*e^3+8*b*c*e^3+13*c^2*e^3+37*a*d*e^3+b*d*e^3-21*c*d*e^3+27*d^2*e^3+26*a*e^4-29*b*e^4-39*c*e^4+29*d*e^4+21*e^5,
    1777 a^4*b-45*a^2*c^2*d-6*a*b*c^2*d-42*b^2*c^2*d-4*a*c^3*d-49*b*c^3*d+14*c^4*d+35*a^3*d^2-3*a^2*b*d^2+23*a*b^2*d^2+21*b^3*d^2-24*a^2*c*d^2-14*a*b*c*d^2+20*b^2*c*d^2-20*a*c^2*d^2+41*b*c^2*d^2-34*c^3*d^2-13*a^2*d^3-48*a*b*d^3-13*b^2*d^3+38*a*c*d^3+21*b*c*d^3+40*c^2*d^3-28*a*d^4-34*b*d^4+38*c*d^4-24*d^5-48*a^4*e-2*a^3*b*e-35*a^2*b^2*e+2*a*b^3*e-25*b^4*e+47*a^3*c*e-14*a^2*b*c*e+25*a*b^2*c*e-12*b^3*c*e-11*a^2*c^2*e+22*a*b*c^2*e+15*b^2*c^2*e+17*a*c^3*e+47*b*c^3*e-43*c^4*e+28*a^3*d*e+9*a^2*b*d*e+6*a*b^2*d*e+30*a^2*c*d*e+31*a*b*c*d*e-2*b^2*c*d*e-6*a*c^2*d*e-45*b*c^2*d*e-24*c^3*d*e-39*a^2*d^2*e-7*a*b*d^2*e-11*b^2*d^2*e+8*a*c*d^2*e-47*b*c*d^2*e+c^2*d^2*e+30*a*d^3*e-30*b*d^3*e-38*c*d^3*e-14*d^4*e-25*a^3*e^2-14*a^2*b*e^2+24*a*b^2*e^2-37*b^3*e^2-14*a^2*c*e^2+40*a*b*c*e^2+27*b^2*c*e^2+22*a*c^2*e^2-38*b*c^2*e^2+43*c^3*e^2-44*a^2*d*e^2+28*a*b*d*e^2-4*b^2*d*e^2-26*a*c*d*e^2+18*b*c*d*e^2+24*c^2*d*e^2-35*a*d^2*e^2+6*b*d^2*e^2+5*c*d^2*e^2-38*d^3*e^2-37*a^2*e^3+34*a*b*e^3-27*b^2*e^3-4*a*c*e^3-3*b*c*e^3-16*c^2*e^3+22*a*d*e^3-4*b*d*e^3-41*c*d*e^3+25*d^2*e^3-38*a*e^4+49*b*e^4+c*e^4+14*d*e^4+47*e^5,
    1778 a^5-45*a^2*c^2*d-14*a*b*c^2*d-47*b^2*c^2*d-8*a*c^3*d+13*b*c^3*d+50*c^4*d-34*a^3*d^2-5*a^2*b*d^2+36*a*b^2*d^2+11*b^3*d^2+41*a^2*c*d^2-32*a*b*c*d^2+41*b^2*c*d^2-40*a*c^2*d^2+14*b*c^2*d^2+5*c^3*d^2+25*a^2*d^3+10*a*b*d^3-24*b^2*d^3-33*b*c*d^3-21*c^2*d^3+a*d^4+44*b*d^4-46*c*d^4-23*d^5-13*a^4*e+13*a^3*b*e-49*a*b^3*e+18*b^4*e+2*a^3*c*e+15*a^2*b*c*e-14*a*b^2*c*e-38*b^3*c*e+34*a^2*c^2*e+42*a*b*c^2*e-42*b^2*c^2*e-36*a*c^3*e+35*b*c^3*e-11*c^4*e+20*a^3*d*e+41*a*b^2*d*e+40*b^3*d*e-39*a^2*c*d*e-35*a*b*c*d*e-7*b^2*c*d*e-34*a*c^2*d*e-35*b*c^2*d*e+45*c^3*d*e+17*a^2*d^2*e+39*a*b*d^2*e+5*b^2*d^2*e-35*a*c*d^2*e-26*b*c*d^2*e-47*c^2*d^2*e+5*a*d^3*e-2*b*d^3*e+44*c*d^3*e+9*d^4*e-12*a^3*e^2+49*a^2*b*e^2-2*a*b^2*e^2-11*b^3*e^2-49*a^2*c*e^2-16*a*b*c*e^2-34*b^2*c*e^2+19*a*c^2*e^2-24*b*c^2*e^2-33*c^3*e^2-39*a^2*d*e^2+2*a*b*d*e^2+46*b^2*d*e^2-17*a*c*d*e^2+47*b*c*d*e^2+39*c^2*d*e^2+13*a*d^2*e^2+50*b*d^2*e^2-11*c*d^2*e^2+3*d^3*e^2+22*a^2*e^3-50*a*b*e^3+30*b^2*e^3-22*a*c*e^3-29*b*c*e^3-40*c^2*e^3+34*a*d*e^3+15*b*d*e^3-17*c*d*e^3+43*d^2*e^3+46*a*e^4-19*b*e^4-46*c*e^4-39*d*e^4-e^5,
    1779 e^6, d*e^5, c*e^5, b*e^5, a*e^5, d^2*e^4, c*d*e^4, b*d*e^4, a*d*e^4, c^2*e^4,
    1780 b*c*e^4, a*c*e^4, b^2*e^4, a*b*e^4, a^2*e^4, d^3*e^3, c*d^2*e^3, b*d^2*e^3,
    1781 a*d^2*e^3, c^2*d*e^3, b*c*d*e^3, a*c*d*e^3, b^2*d*e^3, a*b*d*e^3, a^2*d*e^3,
    1782 c^3*e^3, b*c^2*e^3, a*c^2*e^3, b^2*c*e^3, a*b*c*e^3, a^2*c*e^3, b^3*e^3,
    1783 a*b^2*e^3, a^2*b*e^3, a^3*e^3, d^4*e^2, c*d^3*e^2, b*d^3*e^2, a*d^3*e^2,
    1784 c^2*d^2*e^2, b*c*d^2*e^2, a*c*d^2*e^2, b^2*d^2*e^2, a*b*d^2*e^2, a^2*d^2*e^2,
    1785 c^3*d*e^2, b*c^2*d*e^2, a*c^2*d*e^2, b^2*c*d*e^2, a*b*c*d*e^2, a^2*c*d*e^2,
    1786 b^3*d*e^2, a*b^2*d*e^2, a^2*b*d*e^2, a^3*d*e^2, c^4*e^2, b*c^3*e^2, a*c^3*e^2,
    1787 b^2*c^2*e^2, a*b*c^2*e^2;
    1788   TestSSresAttribs2tr(M, "AGR101n4d007s021%4");
    1789 /*
    1790 options:  1 1 0 :  Time:  5/9/10 (35 without LCM)
    1791 options:  1 1 1 :  Time:  6/8/25
    1792 lres  Time:  5
    1793 nres  Time:  5
    1794 sres  Time:  693
    1795 */
    1796 
    1797   kill M;
    1798 
    1799 
    1800 
    1801   // AGR101n4d008s020%1, too big?
    1802   ideal M =
    1803 c^5*d-49*a^4*d^2-36*a^3*b*d^2-a^2*b^2*d^2-26*a*b^3*d^2+2*b^4*d^2+8*a^3*c*d^2-46*a^2*b*c*d^2-43*a*b^2*c*d^2-46*b^3*c*d^2-3*a^2*c^2*d^2-43*a*b*c^2*d^2+49*b^2*c^2*d^2-10*a*c^3*d^2+35*b*c^3*d^2+20*c^4*d^2-42*a^3*d^3+45*a^2*b*d^3+32*a*b^2*d^3-45*b^3*d^3-27*a^2*c*d^3+13*a*b*c*d^3+25*b^2*c*d^3+8*a*c^2*d^3+9*b*c^2*d^3+9*c^3*d^3+45*a^2*d^4+30*a*b*d^4+39*b^2*d^4-23*a*c*d^4+2*b*c*d^4-16*c^2*d^4+32*a*d^5-34*b*d^5+39*c*d^5+12*d^6-29*a^5*e-23*a^4*b*e-29*a^3*b^2*e-a^2*b^3*e-20*a*b^4*e+42*b^5*e+20*a^4*c*e-27*a^3*b*c*e-5*a^2*b^2*c*e-14*b^4*c*e-27*a^3*c^2*e-7*a^2*b*c^2*e-25*a*b^2*c^2*e+14*b^3*c^2*e+19*a^2*c^3*e+43*a*b*c^3*e-31*b^2*c^3*e+37*a*c^4*e-34*b*c^4*e+44*c^5*e+21*a^4*d*e+22*a^3*b*d*e+14*a^2*b^2*d*e-35*a*b^3*d*e-29*b^4*d*e-9*a^3*c*d*e-41*a^2*b*c*d*e+28*a*b^2*c*d*e+35*b^3*c*d*e+48*a^2*c^2*d*e+26*a*b*c^2*d*e-47*b^2*c^2*d*e+18*a*c^3*d*e+8*b*c^3*d*e-46*c^4*d*e+50*a^3*d^2*e-46*a^2*b*d^2*e-41*a*b^2*d^2*e-44*b^3*d^2*e+7*a^2*c*d^2*e-a*b*c*d^2*e+38*b^2*c*d^2*e+33*a*c^2*d^2*e-24*b*c^2*d^2*e-7*c^3*d^2*e+27*a^2*d^3*e+19*a*b*d^3*e-14*b^2*d^3*e+9*a*c*d^3*e+3*b*c*d^3*e+34*c^2*d^3*e-49*a*d^4*e-2*b*d^4*e+9*c*d^4*e+17*d^5*e+12*a^4*e^2-17*a^3*b*e^2+16*a^2*b^2*e^2+2*a*b^3*e^2+25*b^4*e^2+49*a^3*c*e^2+10*a^2*b*c*e^2-43*a*b^2*c*e^2+5*b^3*c*e^2+4*a^2*c^2*e^2-44*a*b*c^2*e^2-25*b^2*c^2*e^2+15*a*c^3*e^2-44*b*c^3*e^2-17*c^4*e^2+17*a^3*d*e^2+40*a^2*b*d*e^2+3*a*b^2*d*e^2-25*b^3*d*e^2-47*a^2*c*d*e^2-45*a*b*c*d*e^2+9*b^2*c*d*e^2-41*a*c^2*d*e^2-36*b*c^2*d*e^2-17*c^3*d*e^2-15*a^2*d^2*e^2+49*a*b*d^2*e^2+13*b^2*d^2*e^2-39*a*c*d^2*e^2+36*b*c*d^2*e^2-32*c^2*d^2*e^2+23*a*d^3*e^2+14*b*d^3*e^2+10*c*d^3*e^2-d^4*e^2+24*a^3*e^3+27*a^2*b*e^3+31*a*b^2*e^3-45*b^3*e^3-50*a^2*c*e^3-a*b*c*e^3+43*b^2*c*e^3+46*a*c^2*e^3-25*b*c^2*e^3+2*c^3*e^3+44*a^2*d*e^3+43*a*b*d*e^3-30*b^2*d*e^3-18*a*c*d*e^3+44*b*c*d*e^3-34*c^2*d*e^3-49*a*d^2*e^3-18*b*d^2*e^3-21*c*d^2*e^3-43*d^3*e^3-26*a^2*e^4-18*a*b*e^4+6*b^2*e^4-48*a*c*e^4+6*b*c*e^4-16*c^2*e^4-2*a*d*e^4-21*b*d*e^4+5*c*d*e^4-18*d^2*e^4+33*a*e^5-23*b*e^5-48*c*e^5+37*d*e^5-44*e^6,
    1804 b*c^4*d-26*a^4*d^2-47*a^3*b*d^2+28*a^2*b^2*d^2+5*a*b^3*d^2+37*b^4*d^2-32*a^3*c*d^2+44*a^2*b*c*d^2+13*a*b^2*c*d^2-45*b^3*c*d^2+35*a^2*c^2*d^2-18*a*b*c^2*d^2-3*b^2*c^2*d^2-4*a*c^3*d^2-27*b*c^3*d^2-37*a^3*d^3-44*a^2*b*d^3-36*a*b^2*d^3+49*b^3*d^3-16*a^2*c*d^3+24*a*b*c*d^3+43*b^2*c*d^3-40*a*c^2*d^3-3*b*c^2*d^3-16*c^3*d^3+6*a^2*d^4+46*a*b*d^4+8*b^2*d^4-11*a*c*d^4-4*b*c*d^4-40*c^2*d^4-31*a*d^5-41*b*d^5-35*c*d^5-35*d^6+5*a^5*e-20*a^4*b*e+48*a^3*b^2*e-42*a^2*b^3*e+46*a*b^4*e-28*b^5*e+42*a^4*c*e+22*a^3*b*c*e+23*a^2*b^2*c*e-6*a*b^3*c*e-2*b^4*c*e+26*a^3*c^2*e+28*a^2*b*c^2*e+28*a*b^2*c^2*e-31*b^3*c^2*e-50*a^2*c^3*e+3*a*b*c^3*e+39*b^2*c^3*e-21*b*c^4*e+24*c^5*e-a^4*d*e+12*a^3*b*d*e+43*a^2*b^2*d*e+17*a*b^3*d*e-33*b^4*d*e-31*a^3*c*d*e+11*a^2*b*c*d*e-16*a*b^2*c*d*e-49*b^3*c*d*e+6*a^2*c^2*d*e+49*a*b*c^2*d*e-47*b^2*c^2*d*e-40*a*c^3*d*e-11*b*c^3*d*e-7*a^3*d^2*e+10*a^2*b*d^2*e-37*a*b^2*d^2*e+37*b^3*d^2*e+49*a^2*c*d^2*e+11*b^2*c*d^2*e-43*a*c^2*d^2*e+46*b*c^2*d^2*e-18*c^3*d^2*e+38*a^2*d^3*e+20*a*b*d^3*e-22*b^2*d^3*e-32*a*c*d^3*e+41*b*c*d^3*e+c^2*d^3*e+7*a*d^4*e+18*b*d^4*e-12*c*d^4*e-15*d^5*e+34*a^4*e^2-a^3*b*e^2+47*a^2*b^2*e^2+47*a*b^3*e^2-37*b^4*e^2-36*a^3*c*e^2-21*a^2*b*c*e^2-3*b^3*c*e^2-34*a^2*c^2*e^2-4*a*b*c^2*e^2+33*b^2*c^2*e^2+19*a*c^3*e^2+3*b*c^3*e^2-13*c^4*e^2-45*a^3*d*e^2+28*a^2*b*d*e^2-23*a*b^2*d*e^2+30*b^3*d*e^2+15*a^2*c*d*e^2+a*b*c*d*e^2-50*a*c^2*d*e^2-6*b*c^2*d*e^2+32*c^3*d*e^2+17*a^2*d^2*e^2-15*a*b*d^2*e^2+6*b^2*d^2*e^2+15*a*c*d^2*e^2-b*c*d^2*e^2+41*c^2*d^2*e^2-47*a*d^3*e^2+49*b*d^3*e^2-4*c*d^3*e^2-5*d^4*e^2+35*a^3*e^3+36*a^2*b*e^3+49*a*b^2*e^3+b^3*e^3-11*a^2*c*e^3+a*b*c*e^3+18*b^2*c*e^3+19*a*c^2*e^3+11*b*c^2*e^3-41*c^3*e^3-42*a^2*d*e^3+6*a*b*d*e^3-23*b^2*d*e^3+47*a*c*d*e^3+35*b*c*d*e^3+39*c^2*d*e^3-30*a*d^2*e^3-21*b*d^2*e^3-48*c*d^2*e^3-6*d^3*e^3+38*a^2*e^4-43*a*b*e^4-10*b^2*e^4-a*c*e^4+2*b*c*e^4-29*c^2*e^4+31*a*d*e^4+24*b*d*e^4+18*c*d*e^4+38*d^2*e^4+36*a*e^5-32*b*e^5-17*c*e^5+36*d*e^5+13*e^6,
    1805 a*c^4*d+8*a^4*d^2+41*a^3*b*d^2-36*a^2*b^2*d^2+7*a*b^3*d^2+35*b^4*d^2+19*a^3*c*d^2-31*a^2*b*c*d^2+23*a*b^2*c*d^2-18*b^3*c*d^2+14*a*b*c^2*d^2-8*b^2*c^2*d^2+31*a*c^3*d^2-46*b*c^3*d^2-29*c^4*d^2-42*a^3*d^3+46*a^2*b*d^3-24*a*b^2*d^3+46*b^3*d^3-18*a^2*c*d^3-49*a*b*c*d^3-6*b^2*c*d^3+20*a*c^2*d^3+17*b*c^2*d^3+38*c^3*d^3-36*a^2*d^4+16*a*b*d^4+23*b^2*d^4-34*a*c*d^4-9*b*c*d^4-18*c^2*d^4-18*a*d^5+26*b*d^5-9*c*d^5-3*d^6-17*a^5*e+32*a^4*b*e-23*a^3*b^2*e-4*a^2*b^3*e+42*a*b^4*e-43*b^5*e+28*a^4*c*e+5*a^3*b*c*e-14*a^2*b^2*c*e-43*a*b^3*c*e+41*b^4*c*e+2*a^3*c^2*e-27*a^2*b*c^2*e-35*a*b^2*c^2*e+2*b^3*c^2*e-42*a^2*c^3*e+47*a*b*c^3*e+50*b^2*c^3*e-a*c^4*e+10*b*c^4*e+47*c^5*e-23*a^4*d*e+25*a^3*b*d*e-41*a^2*b^2*d*e+32*a*b^3*d*e-35*b^4*d*e+14*a^3*c*d*e-25*a^2*b*c*d*e+47*a*b^2*c*d*e-32*b^3*c*d*e+50*a^2*c^2*d*e-30*a*b*c^2*d*e+39*b^2*c^2*d*e+30*a*c^3*d*e-33*b*c^3*d*e+37*c^4*d*e-21*a^3*d^2*e+34*a^2*b*d^2*e+7*a*b^2*d^2*e-43*b^3*d^2*e+13*a^2*c*d^2*e+32*a*b*c*d^2*e-35*b^2*c*d^2*e+18*a*c^2*d^2*e-2*b*c^2*d^2*e+9*c^3*d^2*e+13*a^2*d^3*e-32*a*b*d^3*e-9*b^2*d^3*e-35*a*c*d^3*e-14*b*c*d^3*e+9*c^2*d^3*e+19*a*d^4*e-50*b*d^4*e+28*c*d^4*e-40*d^5*e+17*a^4*e^2-44*a^3*b*e^2+30*a^2*b^2*e^2+41*a*b^3*e^2+20*b^4*e^2+21*a^3*c*e^2+48*a^2*b*c*e^2+15*a*b^2*c*e^2-40*b^3*c*e^2-6*a^2*c^2*e^2-29*a*b*c^2*e^2-42*b^2*c^2*e^2-40*a*c^3*e^2-48*b*c^3*e^2+36*c^4*e^2+38*a^3*d*e^2+19*a^2*b*d*e^2+41*a*b^2*d*e^2+34*b^3*d*e^2+20*a^2*c*d*e^2-23*a*b*c*d*e^2-2*b^2*c*d*e^2+36*a*c^2*d*e^2-37*b*c^2*d*e^2+9*c^3*d*e^2-47*a^2*d^2*e^2-35*a*b*d^2*e^2+13*b^2*d^2*e^2-20*a*c*d^2*e^2-45*b*c*d^2*e^2+17*c^2*d^2*e^2-32*a*d^3*e^2+13*b*d^3*e^2-4*c*d^3*e^2-26*d^4*e^2+32*a^3*e^3-25*a^2*b*e^3+30*a*b^2*e^3-12*b^3*e^3+28*a^2*c*e^3+41*a*b*c*e^3-49*b^2*c*e^3+35*a*c^2*e^3+38*b*c^2*e^3+49*c^3*e^3-9*a^2*d*e^3-31*a*b*d*e^3-6*b^2*d*e^3+29*a*c*d*e^3+13*b*c*d*e^3-14*c^2*d*e^3+36*a*d^2*e^3+33*b*d^2*e^3-46*c*d^2*e^3+50*d^3*e^3-47*a^2*e^4+5*a*b*e^4+36*b^2*e^4-5*a*c*e^4+4*b*c*e^4-20*c^2*e^4+29*a*d*e^4+25*b*d*e^4-24*c*d*e^4-10*d^2*e^4-2*a*e^5-29*b*e^5-34*c*e^5-d*e^5+e^6,
    1806 b^2*c^3*d-49*a^4*d^2+36*a^3*b*d^2-3*a^2*b^2*d^2+12*a*b^3*d^2+11*b^4*d^2+10*a^3*c*d^2+9*a^2*b*c*d^2-13*a*b^2*c*d^2+43*b^3*c*d^2-27*a^2*c^2*d^2-20*a*b*c^2*d^2+34*b^2*c^2*d^2-30*a*c^3*d^2-50*b*c^3*d^2+43*c^4*d^2+17*a^3*d^3+5*a^2*b*d^3+16*a*b^2*d^3+27*b^3*d^3-26*a^2*c*d^3+17*a*b*c*d^3-31*b^2*c*d^3-43*a*c^2*d^3-18*b*c^2*d^3-8*c^3*d^3-8*a^2*d^4+8*a*b*d^4+23*b^2*d^4+7*a*c*d^4-48*b*c*d^4+21*c^2*d^4+5*a*d^5+4*b*d^5+40*c*d^5-22*d^6+3*a^5*e-a^4*b*e+26*a^3*b^2*e+16*a^2*b^3*e-29*a*b^4*e-50*b^5*e-6*a^4*c*e+31*a^3*b*c*e+43*a^2*b^2*c*e+12*a*b^3*c*e+31*b^4*c*e-21*a^3*c^2*e+25*a^2*b*c^2*e+20*a*b^2*c^2*e+15*b^3*c^2*e-4*a^2*c^3*e-48*a*b*c^3*e-29*b^2*c^3*e+43*a*c^4*e-41*b*c^4*e-15*c^5*e-13*a^4*d*e-29*a^3*b*d*e+7*a^2*b^2*d*e+4*a*b^3*d*e-50*b^4*d*e+3*a^3*c*d*e+4*a^2*b*c*d*e+7*a*b^2*c*d*e+4*b^3*c*d*e+16*a^2*c^2*d*e-42*a*b*c^2*d*e+36*b^2*c^2*d*e-5*a*c^3*d*e+13*b*c^3*d*e+17*c^4*d*e+18*a^3*d^2*e-16*a^2*b*d^2*e-32*a*b^2*d^2*e-16*b^3*d^2*e-34*a^2*c*d^2*e-22*a*b*c*d^2*e-12*b^2*c*d^2*e+35*a*c^2*d^2*e+33*b*c^2*d^2*e-47*c^3*d^2*e+12*a^2*d^3*e-43*a*b*d^3*e+11*b^2*d^3*e+2*a*c*d^3*e+42*b*c*d^3*e-18*c^2*d^3*e+44*a*d^4*e+25*b*d^4*e+41*c*d^4*e+40*d^5*e+40*a^4*e^2-3*a^3*b*e^2-8*a^2*b^2*e^2+a*b^3*e^2-27*b^4*e^2+15*a^3*c*e^2+49*a^2*b*c*e^2-14*a*b^2*c*e^2+31*b^3*c*e^2+36*a^2*c^2*e^2-14*a*b*c^2*e^2-31*b^2*c^2*e^2+48*a*c^3*e^2-24*b*c^3*e^2-30*c^4*e^2-47*a^3*d*e^2+12*a^2*b*d*e^2+44*a*b^2*d*e^2+47*b^3*d*e^2-5*a^2*c*d*e^2+23*a*b*c*d*e^2+48*b^2*c*d*e^2-25*a*c^2*d*e^2-7*b*c^2*d*e^2+32*a^2*d^2*e^2+35*a*b*d^2*e^2-19*b^2*d^2*e^2+19*a*c*d^2*e^2+26*b*c*d^2*e^2+26*c^2*d^2*e^2+8*a*d^3*e^2-21*b*d^3*e^2-6*c*d^3*e^2-35*d^4*e^2-30*a^3*e^3+36*a^2*b*e^3-27*a*b^2*e^3-33*b^3*e^3-50*a^2*c*e^3+41*a*b*c*e^3+13*b^2*c*e^3+20*a*c^2*e^3+36*b*c^2*e^3+14*c^3*e^3+40*a^2*d*e^3-35*a*b*d*e^3+11*b^2*d*e^3+36*a*c*d*e^3+23*b*c*d*e^3-34*c^2*d*e^3+25*a*d^2*e^3-14*b*d^2*e^3-5*c*d^2*e^3+11*d^3*e^3+42*a^2*e^4-48*a*b*e^4-27*b^2*e^4-17*a*c*e^4+32*b*c*e^4-3*c^2*e^4-3*a*d*e^4-33*b*d*e^4-3*c*d*e^4-14*d^2*e^4+8*a*e^5+14*b*e^5+3*c*e^5-34*d*e^5-46*e^6,
    1807 a*b*c^3*d-20*a^4*d^2+23*a^3*b*d^2-14*a^2*b^2*d^2+29*a*b^3*d^2-36*b^4*d^2-48*a^3*c*d^2+39*a^2*b*c*d^2-34*a*b^2*c*d^2+b^3*c*d^2-25*a^2*c^2*d^2+22*a*b*c^2*d^2-12*b^2*c^2*d^2+48*a*c^3*d^2-41*b*c^3*d^2+13*c^4*d^2-24*a^3*d^3-43*a^2*b*d^3-31*a*b^2*d^3-13*b^3*d^3+10*a^2*c*d^3-16*a*b*c*d^3+48*b^2*c*d^3-18*a*c^2*d^3+7*b*c^2*d^3+8*c^3*d^3-14*a^2*d^4-14*a*b*d^4+49*b^2*d^4+43*a*c*d^4+7*b*c*d^4-50*c^2*d^4-21*a*d^5-33*b*d^5-44*c*d^5-40*d^6-42*a^5*e+39*a^4*b*e-14*a^3*b^2*e+34*a^2*b^3*e+22*a*b^4*e+37*b^5*e+24*a^4*c*e+39*a^3*b*c*e-43*a^2*b^2*c*e-40*a*b^3*c*e-6*b^4*c*e-45*a^3*c^2*e+18*a^2*b*c^2*e-8*a*b^2*c^2*e+22*b^3*c^2*e-36*a^2*c^3*e+31*a*b*c^3*e+15*b^2*c^3*e+7*a*c^4*e-18*b*c^4*e-31*c^5*e-20*a^4*d*e+25*a^3*b*d*e-11*a^2*b^2*d*e-21*a*b^3*d*e-23*b^4*d*e+18*a^3*c*d*e-49*a^2*b*c*d*e+5*a*b^2*c*d*e+21*b^3*c*d*e-2*a^2*c^2*d*e+42*a*b*c^2*d*e-37*b^2*c^2*d*e+28*a*c^3*d*e-8*b*c^3*d*e+c^4*d*e+10*a^3*d^2*e-16*a^2*b*d^2*e-20*a*b^2*d^2*e+42*b^3*d^2*e+23*a^2*c*d^2*e-16*a*b*c*d^2*e+39*b^2*c*d^2*e+3*a*c^2*d^2*e+25*b*c^2*d^2*e-16*c^3*d^2*e-33*a^2*d^3*e-28*a*b*d^3*e+4*b^2*d^3*e-15*a*c*d^3*e-30*b*c*d^3*e-5*c^2*d^3*e-8*b*d^4*e-21*c*d^4*e+6*d^5*e-9*a^4*e^2-23*a^3*b*e^2-45*a^2*b^2*e^2+33*a*b^3*e^2+14*b^4*e^2+8*a^3*c*e^2+5*a^2*b*c*e^2-13*a*b^2*c*e^2-39*b^3*c*e^2-4*a^2*c^2*e^2+30*a*b*c^2*e^2-38*b^2*c^2*e^2+24*a*c^3*e^2-29*b*c^3*e^2-3*c^4*e^2+3*a^3*d*e^2+43*a^2*b*d*e^2-21*a*b^2*d*e^2-45*b^3*d*e^2-3*a^2*c*d*e^2-22*a*b*c*d*e^2+16*b^2*c*d*e^2-42*b*c^2*d*e^2-43*c^3*d*e^2-10*a*b*d^2*e^2+23*b^2*d^2*e^2-36*a*c*d^2*e^2+29*b*c*d^2*e^2-11*c^2*d^2*e^2+18*a*d^3*e^2-46*b*d^3*e^2-34*c*d^3*e^2+21*d^4*e^2+4*a^3*e^3+23*a^2*b*e^3-18*a*b^2*e^3-10*b^3*e^3+3*a^2*c*e^3+a*b*c*e^3-32*b^2*c*e^3-19*a*c^2*e^3-5*b*c^2*e^3+25*c^3*e^3-40*a^2*d*e^3-37*a*b*d*e^3-10*b^2*d*e^3-20*a*c*d*e^3+35*b*c*d*e^3+2*c^2*d*e^3+46*a*d^2*e^3+46*b*d^2*e^3+25*c*d^2*e^3+14*d^3*e^3-28*a^2*e^4+24*a*b*e^4-38*b^2*e^4+11*a*c*e^4+15*b*c*e^4-10*c^2*e^4-32*a*d*e^4+37*b*d*e^4+21*c*d*e^4-25*d^2*e^4-47*a*e^5-32*b*e^5+5*c*e^5+17*d*e^5+44*e^6,
    1808 a^2*c^3*d+25*a^4*d^2-40*a^3*b*d^2-49*a^2*b^2*d^2+30*a*b^3*d^2-36*b^4*d^2+41*a^3*c*d^2+23*a^2*b*c*d^2-16*a*b^2*c*d^2-20*b^3*c*d^2-46*a^2*c^2*d^2-29*a*b*c^2*d^2-14*b^2*c^2*d^2-38*a*c^3*d^2+9*b*c^3*d^2+50*c^4*d^2-20*a^3*d^3-14*a^2*b*d^3+13*a*b^2*d^3+5*b^3*d^3+7*a^2*c*d^3+46*a*b*c*d^3+40*b^2*c*d^3-46*a*c^2*d^3+27*b*c^2*d^3-5*c^3*d^3+43*a^2*d^4+5*a*b*d^4+3*b^2*d^4+29*a*c*d^4-43*b*c*d^4-31*c^2*d^4-24*a*d^5-45*b*d^5-26*c*d^5-6*d^6+18*a^5*e+22*a^4*b*e-12*a^3*b^2*e+40*a^2*b^3*e-8*a*b^4*e+36*b^5*e+5*a^4*c*e+46*a^3*b*c*e+6*a^2*b^2*c*e-39*a*b^3*c*e-29*b^4*c*e+36*a^3*c^2*e+35*a^2*b*c^2*e+11*a*b^2*c^2*e-12*b^3*c^2*e+13*a^2*c^3*e+15*a*b*c^3*e+38*b^2*c^3*e-4*a*c^4*e-46*b*c^4*e+25*c^5*e-31*a^4*d*e+35*a^3*b*d*e+37*a^2*b^2*d*e+27*a*b^3*d*e-30*b^4*d*e-37*a^3*c*d*e-2*a^2*b*c*d*e+10*a*b^2*c*d*e+12*b^3*c*d*e+39*a^2*c^2*d*e+35*a*b*c^2*d*e-17*b^2*c^2*d*e-30*a*c^3*d*e+32*b*c^3*d*e+41*c^4*d*e+49*a^3*d^2*e-42*a^2*b*d^2*e-22*a*b^2*d^2*e-3*b^3*d^2*e+17*a^2*c*d^2*e+31*a*b*c*d^2*e+23*b^2*c*d^2*e+4*a*c^2*d^2*e+50*b*c^2*d^2*e+43*c^3*d^2*e+17*a^2*d^3*e-30*a*b*d^3*e+43*b^2*d^3*e+7*a*c*d^3*e+30*b*c*d^3*e+37*c^2*d^3*e-a*d^4*e+6*b*d^4*e+22*c*d^4*e-34*d^5*e-48*a^4*e^2+14*a^3*b*e^2+17*a^2*b^2*e^2-39*a*b^3*e^2+37*b^4*e^2-27*a^3*c*e^2+14*a^2*b*c*e^2-43*a*b^2*c*e^2+42*b^3*c*e^2-31*a^2*c^2*e^2+43*a*b*c^2*e^2-34*b^2*c^2*e^2-40*a*c^3*e^2-14*b*c^3*e^2+19*c^4*e^2+11*a^3*d*e^2+23*a^2*b*d*e^2+11*a*b^2*d*e^2+22*b^3*d*e^2+41*a^2*c*d*e^2-20*a*b*c*d*e^2+b^2*c*d*e^2-34*a*c^2*d*e^2-39*b*c^2*d*e^2-20*c^3*d*e^2+25*a^2*d^2*e^2+33*a*b*d^2*e^2-38*b^2*d^2*e^2-34*a*c*d^2*e^2-37*b*c*d^2*e^2-15*c^2*d^2*e^2-13*a*d^3*e^2-42*b*d^3*e^2+49*c*d^3*e^2+29*d^4*e^2-48*a^3*e^3+49*a^2*b*e^3-50*a*b^2*e^3-44*b^3*e^3-42*a^2*c*e^3+14*a*b*c*e^3-34*b^2*c*e^3+3*a*c^2*e^3-b*c^2*e^3+28*c^3*e^3+24*a^2*d*e^3+37*a*b*d*e^3+29*b^2*d*e^3-a*c*d*e^3+31*b*c*d*e^3-14*c^2*d*e^3-36*a*d^2*e^3-4*b*d^2*e^3+29*c*d^2*e^3-47*d^3*e^3-36*a^2*e^4-13*a*b*e^4-45*b^2*e^4-23*a*c*e^4-32*b*c*e^4+2*c^2*e^4+11*a*d*e^4-24*b*d*e^4-46*c*d*e^4-40*d^2*e^4-4*a*e^5-29*b*e^5+14*c*e^5-44*d*e^5+32*e^6,
    1809 b^3*c^2*d+13*a^4*d^2+14*a^3*b*d^2-11*a^2*b^2*d^2-12*a*b^3*d^2-8*b^4*d^2-46*a^3*c*d^2-26*a^2*b*c*d^2+28*a*b^2*c*d^2+13*b^3*c*d^2-36*a^2*c^2*d^2+35*a*b*c^2*d^2+49*b^2*c^2*d^2+32*a*c^3*d^2+17*b*c^3*d^2+34*c^4*d^2-8*a^3*d^3-10*a^2*b*d^3+31*a*b^2*d^3-22*b^3*d^3+a^2*c*d^3+32*a*b*c*d^3+33*b^2*c*d^3+34*a*c^2*d^3-36*b*c^2*d^3-11*c^3*d^3-42*a^2*d^4-15*a*b*d^4-3*b^2*d^4-48*a*c*d^4+12*b*c*d^4+35*c^2*d^4-43*a*d^5+9*b*d^5+47*c*d^5+19*d^6-18*a^5*e+9*a^4*b*e+34*a^3*b^2*e+5*a^2*b^3*e+46*a*b^4*e-34*b^5*e-42*a^4*c*e-36*a^3*b*c*e+5*a^2*b^2*c*e+43*a*b^3*c*e-18*b^4*c*e+21*a^3*c^2*e-45*a^2*b*c^2*e-31*a*b^2*c^2*e+2*b^3*c^2*e+a*b*c^3*e-45*b^2*c^3*e+41*a*c^4*e+37*b*c^4*e-32*c^5*e+19*a^4*d*e-30*a^3*b*d*e+5*a^2*b^2*d*e+17*a*b^3*d*e+47*b^4*d*e-23*a^3*c*d*e+4*a^2*b*c*d*e+14*a*b^2*c*d*e-31*b^3*c*d*e+50*a^2*c^2*d*e-18*a*b*c^2*d*e-37*b^2*c^2*d*e-35*a*c^3*d*e+29*b*c^3*d*e-28*c^4*d*e+3*a^3*d^2*e+13*a^2*b*d^2*e-30*a*b^2*d^2*e-9*b^3*d^2*e+20*a^2*c*d^2*e+17*a*b*c*d^2*e-21*b^2*c*d^2*e-41*a*c^2*d^2*e-32*b*c^2*d^2*e+33*c^3*d^2*e-3*a^2*d^3*e-23*a*b*d^3*e-47*b^2*d^3*e-19*c^2*d^3*e+12*a*d^4*e-32*b*d^4*e-37*c*d^4*e+20*d^5*e+21*a^4*e^2+18*a^3*b*e^2-4*a^2*b^2*e^2+25*a*b^3*e^2-13*b^4*e^2+28*a^3*c*e^2-28*a^2*b*c*e^2-37*a*b^2*c*e^2-32*b^3*c*e^2+8*a^2*c^2*e^2+34*a*b*c^2*e^2-21*b^2*c^2*e^2+15*a*c^3*e^2-39*b*c^3*e^2-45*c^4*e^2-26*a^3*d*e^2+34*a^2*b*d*e^2-25*a*b^2*d*e^2+24*b^3*d*e^2+5*a^2*c*d*e^2+36*a*b*c*d*e^2-27*b^2*c*d*e^2+31*a*c^2*d*e^2+31*b*c^2*d*e^2+13*c^3*d*e^2-3*a^2*d^2*e^2-18*a*b*d^2*e^2+47*b^2*d^2*e^2+20*a*c*d^2*e^2+8*b*c*d^2*e^2-37*c^2*d^2*e^2+21*a*d^3*e^2+3*b*d^3*e^2-34*c*d^3*e^2+28*d^4*e^2-19*a^3*e^3+33*a^2*b*e^3-50*a*b^2*e^3-44*b^3*e^3+17*a^2*c*e^3-48*a*b*c*e^3-3*b^2*c*e^3+33*a*c^2*e^3+13*b*c^2*e^3-29*c^3*e^3+38*a^2*d*e^3-44*a*b*d*e^3-36*b^2*d*e^3-17*a*c*d*e^3+38*b*c*d*e^3+47*c^2*d*e^3+4*a*d^2*e^3-11*b*d^2*e^3-14*c*d^2*e^3-46*d^3*e^3-17*a^2*e^4-23*a*b*e^4+26*b^2*e^4+24*a*c*e^4-37*b*c*e^4+34*c^2*e^4+24*a*d*e^4-32*b*d*e^4-19*c*d*e^4+15*d^2*e^4-33*a*e^5+7*b*e^5-29*c*e^5+37*d*e^5-16*e^6,
    1810 a*b^2*c^2*d-26*a^4*d^2-24*a^3*b*d^2-36*a^2*b^2*d^2+26*a*b^3*d^2+26*b^4*d^2+44*a^3*c*d^2-31*a^2*b*c*d^2-49*a*b^2*c*d^2-30*b^3*c*d^2-13*a^2*c^2*d^2+49*a*b*c^2*d^2-50*b^2*c^2*d^2+27*a*c^3*d^2+24*c^4*d^2-47*a^3*d^3+29*a^2*b*d^3+31*a*b^2*d^3-30*b^3*d^3+39*a^2*c*d^3+23*a*b*c*d^3+5*b^2*c*d^3-30*a*c^2*d^3-20*b*c^2*d^3-27*c^3*d^3-40*a^2*d^4+36*a*b*d^4+28*b^2*d^4+29*a*c*d^4+2*b*c*d^4+14*c^2*d^4-41*a*d^5+22*b*d^5+22*c*d^5+9*d^6-22*a^5*e-33*a^4*b*e-19*a^3*b^2*e+30*a^2*b^3*e+4*a*b^4*e+42*b^5*e-13*a^4*c*e+27*a^3*b*c*e-10*a^2*b^2*c*e+21*a*b^3*c*e-46*b^4*c*e-22*a^3*c^2*e-9*a^2*b*c^2*e+11*a*b^2*c^2*e+33*b^3*c^2*e-4*a^2*c^3*e-26*a*b*c^3*e+47*b^2*c^3*e+41*a*c^4*e-23*b*c^4*e-35*c^5*e-28*a^4*d*e+6*a^3*b*d*e+39*a^2*b^2*d*e+12*a*b^3*d*e-46*b^4*d*e+5*a^3*c*d*e-4*a^2*b*c*d*e+45*a*b^2*c*d*e-8*b^3*c*d*e-46*a^2*c^2*d*e-34*a*b*c^2*d*e-47*b^2*c^2*d*e+20*a*c^3*d*e+10*b*c^3*d*e+2*c^4*d*e+22*a^3*d^2*e-5*a^2*b*d^2*e+24*a*b^2*d^2*e+27*b^3*d^2*e+10*a^2*c*d^2*e-27*a*b*c*d^2*e+13*b^2*c*d^2*e+38*a*c^2*d^2*e+20*b*c^2*d^2*e-46*c^3*d^2*e-47*a^2*d^3*e+42*a*b*d^3*e-34*b^2*d^3*e-3*a*c*d^3*e+4*b*c*d^3*e+4*c^2*d^3*e+47*a*d^4*e+46*b*d^4*e+29*c*d^4*e+28*d^5*e+18*a^4*e^2+19*a^3*b*e^2+6*a^2*b^2*e^2-38*a*b^3*e^2-22*b^4*e^2-21*a^3*c*e^2+44*a^2*b*c*e^2-23*a*b^2*c*e^2-20*b^3*c*e^2-35*a^2*c^2*e^2-33*a*b*c^2*e^2+b^2*c^2*e^2+2*a*c^3*e^2+36*b*c^3*e^2+29*c^4*e^2-14*a^2*b*d*e^2-44*a*b^2*d*e^2+7*b^3*d*e^2+17*a^2*c*d*e^2-2*a*b*c*d*e^2+18*b^2*c*d*e^2-41*a*c^2*d*e^2+41*b*c^2*d*e^2+40*c^3*d*e^2+6*a^2*d^2*e^2-15*a*b*d^2*e^2-39*b^2*d^2*e^2-50*a*c*d^2*e^2-43*b*c*d^2*e^2-3*c^2*d^2*e^2+29*a*d^3*e^2-3*b*d^3*e^2+48*c*d^3*e^2+22*d^4*e^2+24*a^3*e^3+5*a^2*b*e^3-3*a*b^2*e^3-36*b^3*e^3-50*a^2*c*e^3+23*a*b*c*e^3+9*b^2*c*e^3+3*a*c^2*e^3+45*b*c^2*e^3-24*c^3*e^3-30*a^2*d*e^3+31*a*b*d*e^3+26*b^2*d*e^3-37*a*c*d*e^3-38*b*c*d*e^3-36*c^2*d*e^3-8*a*d^2*e^3-41*b*d^2*e^3-40*c*d^2*e^3+25*d^3*e^3-25*a^2*e^4+12*a*b*e^4-25*b^2*e^4-39*a*c*e^4-19*b*c*e^4-21*c^2*e^4+34*a*d*e^4-35*b*d*e^4+9*c*d*e^4-32*d^2*e^4+29*a*e^5+32*b*e^5-25*c*e^5-31*d*e^5-34*e^6,
    1811 a^2*b*c^2*d+14*a^4*d^2+25*a^3*b*d^2-2*a^2*b^2*d^2-32*a*b^3*d^2-31*b^4*d^2-40*a^3*c*d^2-15*a^2*b*c*d^2+50*a*b^2*c*d^2+b^3*c*d^2-7*a^2*c^2*d^2-14*a*b*c^2*d^2+8*b^2*c^2*d^2+25*a*c^3*d^2+6*b*c^3*d^2+25*c^4*d^2-20*a^3*d^3+a^2*b*d^3-27*a*b^2*d^3+24*b^3*d^3+33*a^2*c*d^3-14*a*b*c*d^3-48*b^2*c*d^3+10*a*c^2*d^3+8*b*c^2*d^3+13*c^3*d^3-11*a^2*d^4+41*a*b*d^4+48*b^2*d^4+29*a*c*d^4-29*b*c*d^4+40*c^2*d^4+50*a*d^5+33*b*d^5-35*c*d^5-17*d^6-31*a^5*e+42*a^4*b*e+48*a^3*b^2*e-48*a^2*b^3*e-6*a*b^4*e+27*b^5*e+31*a^4*c*e+6*a^3*b*c*e-20*a^2*b^2*c*e-10*a*b^3*c*e-34*b^4*c*e-45*a^3*c^2*e+15*a^2*b*c^2*e+37*a*b^2*c^2*e+34*b^3*c^2*e-14*a^2*c^3*e-9*a*b*c^3*e-33*b^2*c^3*e-42*a*c^4*e+20*b*c^4*e+4*c^5*e+28*a^4*d*e+10*a^3*b*d*e-23*a^2*b^2*d*e-17*a*b^3*d*e-44*b^4*d*e-8*a^3*c*d*e-13*a^2*b*c*d*e+35*a*b^2*c*d*e-49*b^3*c*d*e-23*a^2*c^2*d*e-43*a*b*c^2*d*e+11*b^2*c^2*d*e+45*a*c^3*d*e-38*b*c^3*d*e-44*c^4*d*e+45*a^3*d^2*e+9*a^2*b*d^2*e+31*a*b^2*d^2*e-18*b^3*d^2*e-30*a^2*c*d^2*e+4*a*b*c*d^2*e+50*b^2*c*d^2*e+24*a*c^2*d^2*e+24*b*c^2*d^2*e-11*c^3*d^2*e-11*a^2*d^3*e-36*a*b*d^3*e+5*b^2*d^3*e+26*a*c*d^3*e-18*b*c*d^3*e-41*c^2*d^3*e-2*a*d^4*e+17*b*d^4*e+46*c*d^4*e+9*d^5*e-49*a^4*e^2-13*a^3*b*e^2+47*a^2*b^2*e^2+19*a*b^3*e^2+42*b^4*e^2+15*a^3*c*e^2-48*a^2*b*c*e^2+33*a*b^2*c*e^2-28*b^3*c*e^2-5*a^2*c^2*e^2-32*a*b*c^2*e^2+2*b^2*c^2*e^2-25*a*c^3*e^2-8*b*c^3*e^2+8*c^4*e^2-48*a^3*d*e^2-12*a^2*b*d*e^2-49*a*b^2*d*e^2+49*b^3*d*e^2-4*a^2*c*d*e^2-40*a*b*c*d*e^2+42*b^2*c*d*e^2-11*a*c^2*d*e^2+12*b*c^2*d*e^2+5*c^3*d*e^2+40*a^2*d^2*e^2+21*a*b*d^2*e^2-37*b^2*d^2*e^2+10*a*c*d^2*e^2-38*b*c*d^2*e^2-22*c^2*d^2*e^2-a*d^3*e^2+20*b*d^3*e^2-31*c*d^3*e^2-15*d^4*e^2+31*a^3*e^3-24*a^2*b*e^3-6*b^3*e^3-10*a^2*c*e^3-27*a*b*c*e^3+15*b^2*c*e^3-40*b*c^2*e^3+36*c^3*e^3+12*a^2*d*e^3+32*a*b*d*e^3-39*b^2*d*e^3-9*a*c*d*e^3+13*b*c*d*e^3+35*c^2*d*e^3+31*a*d^2*e^3-4*b*d^2*e^3+14*c*d^2*e^3+19*d^3*e^3-36*a^2*e^4-44*a*b*e^4-10*b^2*e^4+29*a*c*e^4-26*b*c*e^4+43*c^2*e^4+5*a*d*e^4+3*b*d*e^4-17*c*d*e^4+48*d^2*e^4-16*a*e^5+2*b*e^5-41*c*e^5-15*d*e^5-19*e^6,
    1812 a^3*c^2*d+17*a^4*d^2+4*a^3*b*d^2+a^2*b^2*d^2+20*a*b^3*d^2-36*b^4*d^2-13*a^3*c*d^2+40*a^2*b*c*d^2-21*a*b^2*c*d^2-35*b^3*c*d^2-33*a^2*c^2*d^2-a*b*c^2*d^2+12*b^2*c^2*d^2+33*a*c^3*d^2-34*b*c^3*d^2-11*c^4*d^2+9*a^3*d^3-32*a^2*b*d^3+42*a*b^2*d^3-49*b^3*d^3-12*a^2*c*d^3-12*a*b*c*d^3+12*b^2*c*d^3+20*a*c^2*d^3+44*b*c^2*d^3+15*c^3*d^3+16*a^2*d^4+46*a*b*d^4+26*b^2*d^4+2*a*c*d^4-28*b*c*d^4-45*c^2*d^4+17*a*d^5-29*b*d^5+28*c*d^5-39*d^6+16*a^5*e+50*a^4*b*e+5*a^3*b^2*e+5*a^2*b^3*e-30*a*b^4*e-8*b^5*e+29*a^4*c*e-48*a^3*b*c*e-33*a^2*b^2*c*e-25*a*b^3*c*e+40*b^4*c*e-31*a^3*c^2*e-15*a^2*b*c^2*e+2*a*b^2*c^2*e+28*b^3*c^2*e-39*a^2*c^3*e+10*a*b*c^3*e-35*b^2*c^3*e+33*a*c^4*e-26*b*c^4*e-23*c^5*e+27*a^4*d*e-34*a^3*b*d*e+9*a^2*b^2*d*e+22*a*b^3*d*e-35*b^4*d*e+24*a^3*c*d*e+6*a^2*b*c*d*e+29*a*b^2*c*d*e-43*b^3*c*d*e+12*a^2*c^2*d*e+50*a*b*c^2*d*e-21*b^2*c^2*d*e-5*a*c^3*d*e-3*b*c^3*d*e-25*c^4*d*e+38*a^3*d^2*e-37*a^2*b*d^2*e+6*a*b^2*d^2*e+47*b^3*d^2*e+25*a^2*c*d^2*e+27*a*b*c*d^2*e+6*b^2*c*d^2*e-12*a*c^2*d^2*e-45*b*c^2*d^2*e-31*c^3*d^2*e-40*a^2*d^3*e+44*b^2*d^3*e-32*a*c*d^3*e-4*b*c*d^3*e-31*c^2*d^3*e+16*a*d^4*e-24*b*d^4*e+40*c*d^4*e-13*d^5*e-10*a^4*e^2+26*a^3*b*e^2+12*a^2*b^2*e^2+45*a*b^3*e^2+43*b^4*e^2+26*a^3*c*e^2+21*a^2*b*c*e^2-3*a*b^2*c*e^2-18*b^3*c*e^2+24*a^2*c^2*e^2+20*a*b*c^2*e^2-13*b^2*c^2*e^2+43*a*c^3*e^2+34*b*c^3*e^2-24*c^4*e^2+29*a^3*d*e^2+13*a^2*b*d*e^2-7*a*b^2*d*e^2-5*b^3*d*e^2+45*a^2*c*d*e^2+10*a*b*c*d*e^2+30*b^2*c*d*e^2-13*a*c^2*d*e^2+43*b*c^2*d*e^2+37*c^3*d*e^2+29*a^2*d^2*e^2+46*a*b*d^2*e^2+33*b^2*d^2*e^2+18*a*c*d^2*e^2-22*b*c*d^2*e^2+13*c^2*d^2*e^2+44*a*d^3*e^2+38*b*d^3*e^2+27*c*d^3*e^2+44*d^4*e^2-29*a^2*b*e^3-36*a*b^2*e^3+40*b^3*e^3+9*a^2*c*e^3-19*a*b*c*e^3+36*b^2*c*e^3+5*a*c^2*e^3+20*b*c^2*e^3+3*c^3*e^3+49*a^2*d*e^3-46*a*b*d*e^3+7*b^2*d*e^3-26*a*c*d*e^3+17*b*c*d*e^3-48*c^2*d*e^3-9*a*d^2*e^3-25*b*d^2*e^3-25*c*d^2*e^3-12*d^3*e^3+13*a^2*e^4+a*b*e^4+5*b^2*e^4+44*a*c*e^4+14*b*c*e^4+42*c^2*e^4+16*a*d*e^4+12*b*d*e^4+20*c*d*e^4+16*d^2*e^4-27*a*e^5+13*b*e^5+38*c*e^5-d*e^5-26*e^6,
    1813 b^4*c*d-16*a^4*d^2-19*a^3*b*d^2+43*a^2*b^2*d^2+18*a*b^3*d^2-14*b^4*d^2-6*a^3*c*d^2-33*a^2*b*c*d^2-38*a*b^2*c*d^2-4*b^3*c*d^2+16*a^2*c^2*d^2-38*a*b*c^2*d^2+40*b^2*c^2*d^2+11*a*c^3*d^2+36*b*c^3*d^2+26*c^4*d^2+a^3*d^3-37*a^2*b*d^3-5*a*b^2*d^3-36*b^3*d^3+38*a^2*c*d^3+32*a*b*c*d^3+12*b^2*c*d^3+24*a*c^2*d^3-40*b*c^2*d^3-9*c^3*d^3+15*a^2*d^4+36*a*b*d^4-50*b^2*d^4-43*a*c*d^4+43*b*c*d^4+33*c^2*d^4-8*a*d^5-28*b*d^5-42*c*d^5-20*d^6+16*a^5*e+4*a^4*b*e+41*a^3*b^2*e+18*a^2*b^3*e+26*a*b^4*e+12*b^5*e+3*a^4*c*e-50*a^3*b*c*e+12*a^2*b^2*c*e-6*a*b^3*c*e-40*b^4*c*e+48*a^3*c^2*e+46*a^2*b*c^2*e-24*a*b^2*c^2*e+47*b^3*c^2*e-30*a^2*c^3*e+30*a*b*c^3*e+19*b^2*c^3*e-9*a*c^4*e-33*b*c^4*e-43*c^5*e-31*a^4*d*e-46*a^3*b*d*e-19*a^2*b^2*d*e-40*a*b^3*d*e+17*b^4*d*e-7*a^3*c*d*e+27*a^2*b*c*d*e-18*a*b^2*c*d*e+40*b^3*c*d*e+13*a^2*c^2*d*e-40*a*b*c^2*d*e-21*b^2*c^2*d*e+48*a*c^3*d*e-23*b*c^3*d*e-41*c^4*d*e-19*a^3*d^2*e+26*a^2*b*d^2*e-35*a*b^2*d^2*e-5*b^3*d^2*e+23*a^2*c*d^2*e+44*a*b*c*d^2*e-11*b^2*c*d^2*e+2*a*c^2*d^2*e-23*b*c^2*d^2*e-9*c^3*d^2*e+26*a^2*d^3*e+3*a*b*d^3*e+27*b^2*d^3*e+24*a*c*d^3*e+b*c*d^3*e-33*c^2*d^3*e+27*a*d^4*e-49*b*d^4*e-33*c*d^4*e+3*d^5*e-5*a^4*e^2-39*a^3*b*e^2-a^2*b^2*e^2+9*a*b^3*e^2+38*b^4*e^2+48*a^3*c*e^2-50*a^2*b*c*e^2+31*a*b^2*c*e^2-b^3*c*e^2+40*a^2*c^2*e^2+46*a*b*c^2*e^2-9*b^2*c^2*e^2-5*a*c^3*e^2+2*b*c^3*e^2-3*c^4*e^2-4*a^3*d*e^2+20*a^2*b*d*e^2-42*a*b^2*d*e^2+5*b^3*d*e^2-29*a^2*c*d*e^2+21*a*b*c*d*e^2-36*b^2*c*d*e^2+34*a*c^2*d*e^2+18*b*c^2*d*e^2-45*c^3*d*e^2+13*a^2*d^2*e^2-25*a*b*d^2*e^2+27*b^2*d^2*e^2+32*b*c*d^2*e^2+38*c^2*d^2*e^2+2*a*d^3*e^2+10*b*d^3*e^2+31*c*d^3*e^2-6*d^4*e^2+8*a^3*e^3-40*a^2*b*e^3+34*a*b^2*e^3+50*b^3*e^3-10*a^2*c*e^3-36*a*b*c*e^3-17*b^2*c*e^3-39*a*c^2*e^3+19*b*c^2*e^3-13*c^3*e^3+28*a^2*d*e^3+27*a*b*d*e^3+28*b^2*d*e^3+13*a*c*d*e^3+47*b*c*d*e^3-32*c^2*d*e^3+6*a*d^2*e^3+16*b*d^2*e^3-2*c*d^2*e^3+39*d^3*e^3+12*a^2*e^4-12*a*b*e^4+27*b^2*e^4-4*a*c*e^4+7*b*c*e^4-2*c^2*e^4+30*a*d*e^4-16*b*d*e^4-13*c*d*e^4+18*d^2*e^4-6*a*e^5+32*b*e^5-46*c*e^5+33*d*e^5+26*e^6,
    1814 a*b^3*c*d-15*a^4*d^2-41*a^3*b*d^2-50*a^2*b^2*d^2-45*b^4*d^2+29*a^3*c*d^2+43*a^2*b*c*d^2-7*a*b^2*c*d^2-49*b^3*c*d^2+10*a^2*c^2*d^2+13*a*b*c^2*d^2-8*b^2*c^2*d^2+22*a*c^3*d^2+21*b*c^3*d^2-20*c^4*d^2-25*a^3*d^3+28*a^2*b*d^3+36*a*b^2*d^3+b^3*d^3-38*a^2*c*d^3+34*a*b*c*d^3-33*b^2*c*d^3+11*a*c^2*d^3+48*b*c^2*d^3+33*c^3*d^3+5*a^2*d^4+5*a*b*d^4+4*b^2*d^4+37*a*c*d^4+44*b*c*d^4-35*c^2*d^4+8*a*d^5+38*b*d^5+43*c*d^5-15*d^6+15*a^5*e+31*a^4*b*e-30*a^3*b^2*e+46*a^2*b^3*e-29*a*b^4*e+13*b^5*e-38*a^4*c*e+39*a^3*b*c*e+3*a^2*b^2*c*e-19*a*b^3*c*e-50*b^4*c*e-a^3*c^2*e+3*a^2*b*c^2*e-8*a*b^2*c^2*e-34*b^3*c^2*e-40*a^2*c^3*e+43*a*b*c^3*e+45*b^2*c^3*e-31*a*c^4*e+19*b*c^4*e+38*c^5*e+5*a^4*d*e-43*a^3*b*d*e+23*a^2*b^2*d*e+38*a*b^3*d*e-35*b^4*d*e-46*a^3*c*d*e+46*a^2*b*c*d*e-41*a*b^2*c*d*e+16*b^3*c*d*e-37*a^2*c^2*d*e+28*a*b*c^2*d*e-8*b^2*c^2*d*e+40*a*c^3*d*e-42*b*c^3*d*e-22*c^4*d*e+36*a^3*d^2*e+17*a^2*b*d^2*e+4*a*b^2*d^2*e+38*b^3*d^2*e-41*a^2*c*d^2*e-7*a*b*c*d^2*e-34*b^2*c*d^2*e+10*a*c^2*d^2*e-7*b*c^2*d^2*e-35*c^3*d^2*e-26*a^2*d^3*e-a*b*d^3*e-12*b^2*d^3*e+46*a*c*d^3*e-44*b*c*d^3*e+14*c^2*d^3*e-42*a*d^4*e-8*b*d^4*e+39*c*d^4*e+17*d^5*e+43*a^4*e^2+10*a^3*b*e^2-13*a^2*b^2*e^2-a*b^3*e^2+32*b^4*e^2+4*a^3*c*e^2+10*a^2*b*c*e^2-34*a*b^2*c*e^2+5*b^3*c*e^2-30*a^2*c^2*e^2-6*a*b*c^2*e^2+38*b^2*c^2*e^2-44*a*c^3*e^2+9*b*c^3*e^2+11*c^4*e^2+10*a^3*d*e^2+50*a^2*b*d*e^2-2*a*b^2*d*e^2-26*b^3*d*e^2+15*a^2*c*d*e^2-40*a*b*c*d*e^2+21*b^2*c*d*e^2-45*a*c^2*d*e^2-5*b*c^2*d*e^2-8*c^3*d*e^2+5*a^2*d^2*e^2+8*a*b*d^2*e^2-40*b^2*d^2*e^2+28*a*c*d^2*e^2-26*b*c*d^2*e^2+28*c^2*d^2*e^2+20*a*d^3*e^2-32*b*d^3*e^2-c*d^3*e^2-47*d^4*e^2-41*a^3*e^3-10*a^2*b*e^3-9*a*b^2*e^3+18*b^3*e^3-36*a^2*c*e^3+43*a*b*c*e^3+b^2*c*e^3+5*a*c^2*e^3+35*b*c^2*e^3-29*c^3*e^3+49*a^2*d*e^3+11*a*b*d*e^3-14*b^2*d*e^3-18*a*c*d*e^3+48*b*c*d*e^3-5*c^2*d*e^3-39*a*d^2*e^3+16*c*d^2*e^3+21*d^3*e^3+29*a^2*e^4+42*a*b*e^4+16*b^2*e^4+21*a*c*e^4-40*b*c*e^4-23*a*d*e^4-27*b*d*e^4+19*c*d*e^4-3*d^2*e^4+29*a*e^5+23*b*e^5-48*c*e^5-14*d*e^5-39*e^6,
    1815 a^2*b^2*c*d+30*a^4*d^2-8*a^3*b*d^2-31*a^2*b^2*d^2-48*a*b^3*d^2-8*b^4*d^2-a^3*c*d^2-45*a^2*b*c*d^2+24*a*b^2*c*d^2-50*b^3*c*d^2+26*a^2*c^2*d^2-21*a*b*c^2*d^2+7*b^2*c^2*d^2-23*a*c^3*d^2-3*b*c^3*d^2-37*c^4*d^2+30*a^3*d^3-49*a^2*b*d^3-10*a*b^2*d^3+19*b^3*d^3-a^2*c*d^3-23*a*b*c*d^3+27*b^2*c*d^3+8*a*c^2*d^3+36*b*c^2*d^3+14*c^3*d^3-14*a^2*d^4+11*a*b*d^4+24*b^2*d^4-22*a*c*d^4+14*b*c*d^4-12*c^2*d^4+33*a*d^5-35*b*d^5-20*c*d^5-22*d^6-25*a^5*e-50*a^4*b*e-3*a^3*b^2*e-49*a^2*b^3*e-47*a*b^4*e-12*b^5*e+24*a^4*c*e+10*a^3*b*c*e-49*a^2*b^2*c*e-46*a*b^3*c*e-39*b^4*c*e+47*a^3*c^2*e-a^2*b*c^2*e+45*a*b^2*c^2*e-46*b^3*c^2*e+27*a^2*c^3*e-27*a*b*c^3*e+7*b^2*c^3*e+48*a*c^4*e-17*b*c^4*e+13*c^5*e+40*a^4*d*e+50*a^3*b*d*e-9*a^2*b^2*d*e-9*a*b^3*d*e+18*b^4*d*e+30*a^3*c*d*e-36*a^2*b*c*d*e-41*a*b^2*c*d*e+34*b^3*c*d*e+10*a^2*c^2*d*e-19*a*b*c^2*d*e+38*b^2*c^2*d*e-17*a*c^3*d*e-15*b*c^3*d*e-25*c^4*d*e+26*a^3*d^2*e-22*a^2*b*d^2*e+33*a*b^2*d^2*e+3*b^3*d^2*e+33*a^2*c*d^2*e+13*a*b*c*d^2*e-36*b^2*c*d^2*e+16*a*c^2*d^2*e+16*b*c^2*d^2*e+27*c^3*d^2*e-20*a^2*d^3*e+8*a*b*d^3*e+12*b^2*d^3*e-7*a*c*d^3*e-11*b*c*d^3*e-32*c^2*d^3*e+49*a*d^4*e-45*b*d^4*e+4*c*d^4*e+23*d^5*e-42*a^4*e^2-10*a^3*b*e^2+47*a^2*b^2*e^2+31*a*b^3*e^2-9*b^4*e^2-45*a^3*c*e^2-16*a^2*b*c*e^2-16*a*b^2*c*e^2+6*b^3*c*e^2+9*a^2*c^2*e^2-35*a*b*c^2*e^2-17*b^2*c^2*e^2-48*a*c^3*e^2-6*b*c^3*e^2+33*c^4*e^2+46*a^3*d*e^2-22*a^2*b*d*e^2+41*a*b^2*d*e^2+28*b^3*d*e^2+37*a^2*c*d*e^2-35*a*b*c*d*e^2+11*b^2*c*d*e^2-40*a*c^2*d*e^2-25*b*c^2*d*e^2-6*c^3*d*e^2+50*a^2*d^2*e^2-29*a*b*d^2*e^2-30*b^2*d^2*e^2+12*a*c*d^2*e^2+37*b*c*d^2*e^2-23*c^2*d^2*e^2-30*a*d^3*e^2-43*b*d^3*e^2+31*c*d^3*e^2-35*d^4*e^2+32*a^3*e^3-45*a^2*b*e^3-35*a*b^2*e^3+26*b^3*e^3-43*a^2*c*e^3-41*a*b*c*e^3-6*b^2*c*e^3-14*a*c^2*e^3-20*b*c^2*e^3-44*c^3*e^3+10*a^2*d*e^3-4*a*b*d*e^3-38*b^2*d*e^3-28*a*c*d*e^3+8*b*c*d*e^3+30*c^2*d*e^3-5*a*d^2*e^3+24*b*d^2*e^3+2*c*d^2*e^3-19*d^3*e^3-25*a^2*e^4+21*a*b*e^4-20*b^2*e^4-11*a*c*e^4+40*b*c*e^4+12*c^2*e^4-30*a*d*e^4+8*b*d*e^4-14*c*d*e^4-23*d^2*e^4+20*a*e^5-7*b*e^5-38*c*e^5-50*d*e^5-30*e^6,
    1816 a^3*b*c*d+41*a^4*d^2+15*a^3*b*d^2-2*a^2*b^2*d^2-33*a*b^3*d^2+9*b^4*d^2+25*a^3*c*d^2-22*a^2*b*c*d^2-7*a*b^2*c*d^2-14*b^3*c*d^2-34*a^2*c^2*d^2-30*a*b*c^2*d^2+50*b^2*c^2*d^2+12*a*c^3*d^2-6*b*c^3*d^2+25*c^4*d^2-41*a^3*d^3-2*a^2*b*d^3+10*a*b^2*d^3+6*b^3*d^3-26*a^2*c*d^3+17*a*b*c*d^3+24*b^2*c*d^3+42*a*c^2*d^3-28*b*c^2*d^3+9*c^3*d^3+41*a^2*d^4-48*a*b*d^4+18*b^2*d^4-26*a*c*d^4+33*b*c*d^4-8*c^2*d^4+35*a*d^5+14*b*d^5-48*c*d^5-23*d^6+49*a^5*e+16*a^4*b*e+2*a^3*b^2*e+26*a^2*b^3*e+5*a*b^4*e+39*b^5*e-32*a^4*c*e+19*a^3*b*c*e-37*a^2*b^2*c*e+44*a*b^3*c*e+34*b^4*c*e+37*a^3*c^2*e-25*a^2*b*c^2*e-43*a*b^2*c^2*e+31*b^3*c^2*e-17*a^2*c^3*e-7*a*b*c^3*e-29*b^2*c^3*e+39*a*c^4*e-13*b*c^4*e+46*c^5*e-14*a^4*d*e-23*a^3*b*d*e-31*a^2*b^2*d*e+14*a*b^3*d*e+35*b^4*d*e-44*a^3*c*d*e+15*a^2*b*c*d*e-38*a*b^2*c*d*e-38*b^3*c*d*e-7*a^2*c^2*d*e-36*a*b*c^2*d*e-36*b^2*c^2*d*e+36*a*c^3*d*e+4*b*c^3*d*e+14*c^4*d*e+35*a^2*b*d^2*e+35*a*b^2*d^2*e-28*b^3*d^2*e+3*a^2*c*d^2*e+11*a*b*c*d^2*e-41*b^2*c*d^2*e-12*a*c^2*d^2*e-4*b*c^2*d^2*e+2*c^3*d^2*e+15*a^2*d^3*e-18*a*b*d^3*e+2*b^2*d^3*e+2*a*c*d^3*e-21*b*c*d^3*e+27*c^2*d^3*e+34*a*d^4*e+22*b*d^4*e-38*c*d^4*e+45*d^5*e+3*a^4*e^2+21*a^3*b*e^2-2*a^2*b^2*e^2+11*a*b^3*e^2-29*b^4*e^2-31*a^3*c*e^2+27*a^2*b*c*e^2-44*a*b^2*c*e^2-27*b^3*c*e^2-26*a^2*c^2*e^2+48*a*b*c^2*e^2-46*b^2*c^2*e^2-46*a*c^3*e^2-44*b*c^3*e^2-3*c^4*e^2+18*a^3*d*e^2-34*a^2*b*d*e^2+14*a*b^2*d*e^2+32*b^3*d*e^2+40*a^2*c*d*e^2+20*a*b*c*d*e^2+35*b^2*c*d*e^2-19*a*c^2*d*e^2+16*b*c^2*d*e^2-6*c^3*d*e^2-a^2*d^2*e^2+38*a*b*d^2*e^2+23*b^2*d^2*e^2-26*a*c*d^2*e^2-47*b*c*d^2*e^2+11*c^2*d^2*e^2+34*a*d^3*e^2-27*b*d^3*e^2-41*c*d^3*e^2-2*d^4*e^2+7*a^3*e^3-46*a^2*b*e^3-17*a*b^2*e^3+18*b^3*e^3+25*a^2*c*e^3+24*a*b*c*e^3+48*b^2*c*e^3-25*a*c^2*e^3-12*b*c^2*e^3+17*c^3*e^3+15*a^2*d*e^3+49*a*b*d*e^3-44*b^2*d*e^3+31*a*c*d*e^3-14*b*c*d*e^3-13*c^2*d*e^3-49*a*d^2*e^3-42*b*d^2*e^3-40*c*d^2*e^3+49*d^3*e^3-13*a^2*e^4-3*a*b*e^4-33*b^2*e^4+21*a*c*e^4-23*b*c*e^4+35*c^2*e^4+41*a*d*e^4-6*b*d*e^4+23*c*d*e^4-44*d^2*e^4-10*a*e^5-5*b*e^5+22*c*e^5-13*d*e^5-24*e^6,
    1817 a^4*c*d-22*a^3*b*d^2+25*a^2*b^2*d^2+46*a*b^3*d^2+4*b^4*d^2-49*a^3*c*d^2+10*a^2*b*c*d^2-18*a*b^2*c*d^2-24*b^3*c*d^2+a^2*c^2*d^2-44*a*b*c^2*d^2+19*b^2*c^2*d^2+2*a*c^3*d^2-16*b*c^3*d^2+23*c^4*d^2-34*a^3*d^3+29*a^2*b*d^3+18*a*b^2*d^3-31*b^3*d^3-26*a^2*c*d^3+35*a*b*c*d^3-2*b^2*c*d^3-3*a*c^2*d^3-8*b*c^2*d^3+50*c^3*d^3-11*a^2*d^4+30*a*b*d^4-41*b^2*d^4+41*a*c*d^4+12*b*c*d^4+2*c^2*d^4+44*a*d^5+5*b*d^5-8*c*d^5-37*d^6+10*a^5*e+20*a^4*b*e-32*a^3*b^2*e-7*a^2*b^3*e-11*a*b^4*e-3*b^5*e+47*a^4*c*e-39*a^3*b*c*e+27*a^2*b^2*c*e+14*a*b^3*c*e+25*b^4*c*e+45*a^3*c^2*e-22*a^2*b*c^2*e-4*a*b^2*c^2*e+8*b^3*c^2*e+10*a^2*c^3*e-18*a*b*c^3*e-25*b^2*c^3*e-35*a*c^4*e+7*b*c^4*e+44*c^5*e+13*a^4*d*e-17*a^3*b*d*e+23*a^2*b^2*d*e-4*a*b^3*d*e+23*b^4*d*e-4*a^3*c*d*e+34*a^2*b*c*d*e+48*a*b^2*c*d*e-32*b^3*c*d*e-44*a^2*c^2*d*e+37*a*b*c^2*d*e-38*b^2*c^2*d*e-23*a*c^3*d*e-42*b*c^3*d*e-19*c^4*d*e-48*a^3*d^2*e+29*a^2*b*d^2*e-25*a*b^2*d^2*e+36*b^3*d^2*e-46*a^2*c*d^2*e+37*a*b*c*d^2*e+28*b^2*c*d^2*e+12*a*c^2*d^2*e+2*b*c^2*d^2*e-13*c^3*d^2*e-40*a^2*d^3*e+44*a*b*d^3*e+29*b^2*d^3*e+20*a*c*d^3*e+23*b*c*d^3*e-44*c^2*d^3*e+23*a*d^4*e+22*b*d^4*e+12*c*d^4*e-16*d^5*e+50*a^4*e^2+12*a^3*b*e^2-16*a^2*b^2*e^2+27*a*b^3*e^2+27*b^4*e^2-25*a^3*c*e^2+13*a^2*b*c*e^2-21*a*b^2*c*e^2+46*b^3*c*e^2-6*a^2*c^2*e^2+13*a*b*c^2*e^2-8*b^2*c^2*e^2+39*a*c^3*e^2+36*b*c^3*e^2+46*c^4*e^2-9*a^3*d*e^2-35*a^2*b*d*e^2-47*a*b^2*d*e^2-41*b^3*d*e^2+26*a^2*c*d*e^2-38*a*b*c*d*e^2+48*b^2*c*d*e^2-36*a*c^2*d*e^2+32*b*c^2*d*e^2-17*c^3*d*e^2+39*a^2*d^2*e^2-a*b*d^2*e^2+48*a*c*d^2*e^2-20*b*c*d^2*e^2-49*c^2*d^2*e^2-37*a*d^3*e^2-8*b*d^3*e^2-c*d^3*e^2-8*d^4*e^2-47*a^3*e^3+2*a^2*b*e^3-14*a*b^2*e^3-32*b^3*e^3+18*a^2*c*e^3+49*a*b*c*e^3-43*b^2*c*e^3-8*a*c^2*e^3-36*b*c^2*e^3+18*c^3*e^3+11*a^2*d*e^3+4*a*b*d*e^3+49*b^2*d*e^3+26*a*c*d*e^3+5*b*c*d*e^3-14*c^2*d*e^3+12*a*d^2*e^3+b*d^2*e^3-49*c*d^2*e^3+24*d^3*e^3+11*a^2*e^4-43*a*b*e^4-36*b^2*e^4+30*a*c*e^4-12*b*c*e^4+10*c^2*e^4-29*a*d*e^4-12*b*d*e^4+37*c*d*e^4+46*d^2*e^4+34*a*e^5+14*b*e^5-26*c*e^5+d*e^5+35*e^6,
    1818 b^5*d-5*a^4*d^2-29*a^3*b*d^2-36*a^2*b^2*d^2-11*a*b^3*d^2+32*b^4*d^2-17*a^3*c*d^2+47*a^2*b*c*d^2+16*a*b^2*c*d^2-24*b^3*c*d^2+12*a^2*c^2*d^2+20*a*b*c^2*d^2-24*b^2*c^2*d^2-10*a*c^3*d^2-26*b*c^3*d^2+22*c^4*d^2-14*a^3*d^3-49*a^2*b*d^3-44*a*b^2*d^3-20*b^3*d^3+11*a^2*c*d^3-45*a*b*c*d^3-5*b^2*c*d^3-19*a*c^2*d^3-10*b*c^2*d^3-35*c^3*d^3-13*a^2*d^4+18*a*b*d^4+10*b^2*d^4+46*a*c*d^4+15*b*c*d^4-13*c^2*d^4-8*a*d^5+50*b*d^5+2*c*d^5-43*d^6-18*a^5*e-2*a^4*b*e-31*a^3*b^2*e-37*a^2*b^3*e+32*a*b^4*e-4*b^5*e+19*a^4*c*e-42*a^3*b*c*e+40*a^2*b^2*c*e+37*a*b^3*c*e+17*b^4*c*e+39*a^3*c^2*e+10*a^2*b*c^2*e-38*a*b^2*c^2*e+4*b^3*c^2*e+18*a^2*c^3*e+35*a*b*c^3*e-29*b^2*c^3*e-19*a*c^4*e-4*b*c^4*e+28*c^5*e+17*a^4*d*e-20*a^3*b*d*e+18*a^2*b^2*d*e+11*a*b^3*d*e+30*b^4*d*e-2*a^3*c*d*e+43*a^2*b*c*d*e+46*a*b^2*c*d*e+14*b^3*c*d*e+48*a^2*c^2*d*e-5*a*b*c^2*d*e-7*b^2*c^2*d*e+13*a*c^3*d*e+11*b*c^3*d*e+48*c^4*d*e+41*a^3*d^2*e+10*a^2*b*d^2*e-43*a*b^2*d^2*e-41*b^3*d^2*e+47*a^2*c*d^2*e-42*a*b*c*d^2*e+34*b^2*c*d^2*e+34*a*c^2*d^2*e-14*b*c^2*d^2*e-16*c^3*d^2*e-39*a^2*d^3*e+23*a*b*d^3*e-32*b^2*d^3*e-20*a*c*d^3*e+7*b*c*d^3*e-4*c^2*d^3*e+2*a*d^4*e+42*b*d^4*e-38*c*d^4*e-14*d^5*e-9*a^4*e^2+2*a^3*b*e^2-20*a^2*b^2*e^2-15*a*b^3*e^2+30*b^4*e^2-44*a^3*c*e^2-47*a^2*b*c*e^2+11*a*b^2*c*e^2+20*b^3*c*e^2-2*a^2*c^2*e^2+4*a*b*c^2*e^2+49*b^2*c^2*e^2-41*a*c^3*e^2-36*b*c^3*e^2+31*c^4*e^2+22*a^3*d*e^2+39*a^2*b*d*e^2-21*a*b^2*d*e^2+26*b^3*d*e^2+28*a^2*c*d*e^2+41*a*b*c*d*e^2-14*b^2*c*d*e^2+44*a*c^2*d*e^2+27*b*c^2*d*e^2-25*c^3*d*e^2-28*a^2*d^2*e^2-37*a*b*d^2*e^2+20*b^2*d^2*e^2+45*a*c*d^2*e^2+45*b*c*d^2*e^2-28*c^2*d^2*e^2-18*a*d^3*e^2+5*b*d^3*e^2-3*c*d^3*e^2+17*d^4*e^2+18*a^3*e^3+46*a^2*b*e^3+28*a*b^2*e^3-22*b^3*e^3-15*a^2*c*e^3+30*a*b*c*e^3-40*b^2*c*e^3-20*a*c^2*e^3+10*b*c^2*e^3-31*c^3*e^3+19*a^2*d*e^3+29*a*b*d*e^3+12*b^2*d*e^3-39*a*c*d*e^3-32*b*c*d*e^3+12*a*d^2*e^3-26*c*d^2*e^3+14*a^2*e^4+40*a*b*e^4-b^2*e^4+15*a*c*e^4+27*b*c*e^4+34*c^2*e^4-30*a*d*e^4+25*b*d*e^4-50*c*d*e^4+35*d^2*e^4+25*a*e^5+21*b*e^5-10*c*e^5-4*d*e^5-43*e^6,
    1819 a*b^4*d+47*a^4*d^2+25*a^3*b*d^2-13*a^2*b^2*d^2+26*a*b^3*d^2-24*b^4*d^2-4*a^3*c*d^2-30*a^2*b*c*d^2+11*a*b^2*c*d^2+49*b^3*c*d^2-11*a^2*c^2*d^2-4*a*b*c^2*d^2+44*b^2*c^2*d^2+46*a*c^3*d^2-3*b*c^3*d^2-30*c^4*d^2+8*a^3*d^3+49*a^2*b*d^3+33*a*b^2*d^3+8*b^3*d^3-34*a^2*c*d^3-29*a*b*c*d^3-35*b^2*c*d^3-10*a*c^2*d^3+13*b*c^2*d^3-22*c^3*d^3+8*a^2*d^4+2*a*b*d^4+7*b^2*d^4-14*a*c*d^4+40*b*c*d^4+41*c^2*d^4-14*a*d^5+10*c*d^5-11*d^6-43*a^5*e-2*a^4*b*e-10*a^3*b^2*e-39*a^2*b^3*e+15*a*b^4*e-8*b^5*e+19*a^4*c*e+35*a^3*b*c*e+48*a^2*b^2*c*e-24*a*b^3*c*e-41*b^4*c*e-24*a^3*c^2*e+35*a^2*b*c^2*e-47*a*b^2*c^2*e+28*b^3*c^2*e-10*a^2*c^3*e+28*a*b*c^3*e-43*b^2*c^3*e+10*a*c^4*e-26*b*c^4*e-30*c^5*e+3*a^4*d*e-42*a^3*b*d*e-23*a^2*b^2*d*e+41*a*b^3*d*e+12*b^4*d*e-16*a^3*c*d*e+4*a^2*b*c*d*e+30*a*b^2*c*d*e+14*b^3*c*d*e+15*a^2*c^2*d*e-11*a*b*c^2*d*e+34*b^2*c^2*d*e-48*a*c^3*d*e+15*b*c^3*d*e+38*c^4*d*e+26*a^3*d^2*e-41*a^2*b*d^2*e-8*a*b^2*d^2*e+44*b^3*d^2*e-7*a^2*c*d^2*e+11*a*b*c*d^2*e-3*b^2*c*d^2*e+42*a*c^2*d^2*e+31*b*c^2*d^2*e-35*c^3*d^2*e-23*a^2*d^3*e+47*a*b*d^3*e+26*b^2*d^3*e+40*a*c*d^3*e-24*b*c*d^3*e-34*c^2*d^3*e+4*a*d^4*e-48*b*d^4*e-49*c*d^4*e-23*d^5*e-5*a^4*e^2-15*a^3*b*e^2+5*a^2*b^2*e^2+41*a*b^3*e^2-7*b^4*e^2-35*a^3*c*e^2+5*a^2*b*c*e^2+25*a*b^2*c*e^2-50*b^3*c*e^2+23*a^2*c^2*e^2+43*a*b*c^2*e^2+41*b^2*c^2*e^2+9*a*c^3*e^2-36*b*c^3*e^2-49*c^4*e^2-36*a^3*d*e^2-43*a^2*b*d*e^2-24*a*b^2*d*e^2+34*b^3*d*e^2-29*a^2*c*d*e^2-48*a*b*c*d*e^2+42*b^2*c*d*e^2+34*a*c^2*d*e^2+20*b*c^2*d*e^2-31*c^3*d*e^2+18*a^2*d^2*e^2-3*a*b*d^2*e^2+24*b^2*d^2*e^2-39*a*c*d^2*e^2+39*b*c*d^2*e^2-48*c^2*d^2*e^2-30*a*d^3*e^2-28*b*d^3*e^2+4*c*d^3*e^2+13*d^4*e^2-30*a^3*e^3+47*a^2*b*e^3+2*a*b^2*e^3+31*b^3*e^3+35*a^2*c*e^3+36*a*b*c*e^3-47*b^2*c*e^3+48*a*c^2*e^3-8*b*c^2*e^3-23*c^3*e^3+35*a^2*d*e^3+21*a*b*d*e^3+17*b^2*d*e^3-15*a*c*d*e^3-41*b*c*d*e^3+13*c^2*d*e^3+17*a*d^2*e^3-19*b*d^2*e^3+26*c*d^2*e^3-26*d^3*e^3-38*a^2*e^4+17*a*b*e^4+22*b^2*e^4-6*a*c*e^4-18*b*c*e^4+42*c^2*e^4+26*a*d*e^4-19*b*d*e^4-36*c*d*e^4-22*d^2*e^4+44*a*e^5+32*b*e^5-15*c*e^5-16*d*e^5+2*e^6,
    1820 a^2*b^3*d-26*a^4*d^2+24*a^3*b*d^2-21*a^2*b^2*d^2-7*a*b^3*d^2-39*b^4*d^2-47*a^3*c*d^2+37*a^2*b*c*d^2+24*a*b^2*c*d^2-6*b^3*c*d^2+20*a^2*c^2*d^2-4*b^2*c^2*d^2+21*a*c^3*d^2-15*b*c^3*d^2-22*c^4*d^2-23*a^3*d^3+21*a^2*b*d^3-16*a*b^2*d^3-38*b^3*d^3-16*a^2*c*d^3+7*a*b*c*d^3-37*b^2*c*d^3-12*a*c^2*d^3+42*b*c^2*d^3+40*c^3*d^3-35*a^2*d^4+29*a*b*d^4-b^2*d^4+21*a*c*d^4+47*b*c*d^4-22*c^2*d^4-11*a*d^5-44*b*d^5+49*c*d^5+33*d^6-35*a^5*e-41*a^4*b*e+17*a^3*b^2*e-6*a^2*b^3*e-12*a*b^4*e+36*b^5*e-6*a^4*c*e-28*a^3*b*c*e+22*a^2*b^2*c*e+10*a*b^3*c*e-34*b^4*c*e+28*a^3*c^2*e-2*a^2*b*c^2*e-48*a*b^2*c^2*e-28*b^3*c^2*e+42*a^2*c^3*e+30*a*b*c^3*e-43*b^2*c^3*e-34*a*c^4*e+33*b*c^4*e-38*c^5*e+39*a^4*d*e-27*a^3*b*d*e+44*a^2*b^2*d*e+12*a*b^3*d*e+18*b^4*d*e-19*a^3*c*d*e-42*a^2*b*c*d*e+24*a*b^2*c*d*e-49*b^3*c*d*e+17*a^2*c^2*d*e+3*a*b*c^2*d*e+39*b^2*c^2*d*e-31*a*c^3*d*e-8*b*c^3*d*e+42*c^4*d*e-42*a^3*d^2*e+49*a^2*b*d^2*e-17*a*b^2*d^2*e-49*b^3*d^2*e-20*a^2*c*d^2*e-11*a*b*c*d^2*e-17*b^2*c*d^2*e+16*a*c^2*d^2*e+41*b*c^2*d^2*e+50*c^3*d^2*e-28*a^2*d^3*e+44*a*b*d^3*e-25*b^2*d^3*e-24*a*c*d^3*e-b*c*d^3*e-45*c^2*d^3*e-3*a*d^4*e-26*b*d^4*e-12*c*d^4*e+4*d^5*e+5*a^4*e^2+28*a^3*b*e^2-42*a^2*b^2*e^2+33*a*b^3*e^2-15*b^4*e^2-40*a^3*c*e^2+47*a^2*b*c*e^2-4*a*b^2*c*e^2-22*b^3*c*e^2-35*a^2*c^2*e^2-8*a*b*c^2*e^2-11*b^2*c^2*e^2-37*a*c^3*e^2-23*b*c^3*e^2+33*c^4*e^2-34*a^3*d*e^2+16*a^2*b*d*e^2-38*a*b^2*d*e^2+32*b^3*d*e^2+10*a^2*c*d*e^2-30*a*b*c*d*e^2+32*b^2*c*d*e^2-6*a*c^2*d*e^2-45*b*c^2*d*e^2-5*c^3*d*e^2-16*a^2*d^2*e^2-14*a*b*d^2*e^2+22*b^2*d^2*e^2+4*a*c*d^2*e^2-37*b*c*d^2*e^2-28*c^2*d^2*e^2-16*a*d^3*e^2+6*b*d^3*e^2+9*c*d^3*e^2-46*d^4*e^2-10*a^3*e^3-50*a^2*b*e^3+18*a*b^2*e^3+20*b^3*e^3-34*a^2*c*e^3+33*a*b*c*e^3-17*b^2*c*e^3-19*a*c^2*e^3-5*b*c^2*e^3+19*c^3*e^3-23*a^2*d*e^3+4*a*b*d*e^3+28*b^2*d*e^3+17*a*c*d*e^3+7*b*c*d*e^3+39*c^2*d*e^3+4*a*d^2*e^3-39*b*d^2*e^3-16*c*d^2*e^3-23*d^3*e^3-23*a^2*e^4-16*a*b*e^4-2*b^2*e^4-24*a*c*e^4-5*b*c*e^4+45*c^2*e^4-10*a*d*e^4-b*d*e^4+50*c*d*e^4+31*d^2*e^4+31*a*e^5-37*b*e^5-44*c*e^5+37*d*e^5-43*e^6,
    1821 a^3*b^2*d-42*a^4*d^2-17*a^3*b*d^2-23*a^2*b^2*d^2-17*a*b^3*d^2-27*b^4*d^2-50*a^3*c*d^2+27*a^2*b*c*d^2-30*a*b^2*c*d^2-7*b^3*c*d^2+21*a^2*c^2*d^2+13*a*b*c^2*d^2+29*b^2*c^2*d^2-46*a*c^3*d^2+43*b*c^3*d^2-2*c^4*d^2-2*a^3*d^3+45*a^2*b*d^3-15*a*b^2*d^3-47*b^3*d^3-17*a^2*c*d^3-25*a*b*c*d^3+9*b^2*c*d^3-24*a*c^2*d^3+32*b*c^2*d^3+37*c^3*d^3+14*a^2*d^4+23*a*b*d^4+49*b^2*d^4+10*a*c*d^4+19*b*c*d^4-13*c^2*d^4-9*a*d^5+44*b*d^5+39*c*d^5-28*d^6-2*a^5*e+5*a^4*b*e-36*a^3*b^2*e-12*a^2*b^3*e+2*a*b^4*e+15*b^5*e-31*a^4*c*e-3*a^3*b*c*e+46*a^2*b^2*c*e+33*a*b^3*c*e+16*b^4*c*e+24*a^3*c^2*e-36*a^2*b*c^2*e+10*a*b^2*c^2*e+4*b^3*c^2*e+44*a^2*c^3*e+18*a*b*c^3*e-37*b^2*c^3*e-47*a*c^4*e+32*b*c^4*e-29*c^5*e+14*a^4*d*e+6*a^3*b*d*e+44*a^2*b^2*d*e+23*a*b^3*d*e+33*b^4*d*e-7*a^3*c*d*e+10*a^2*b*c*d*e+30*a*b^2*c*d*e+41*b^3*c*d*e-50*a^2*c^2*d*e+a*b*c^2*d*e+33*b^2*c^2*d*e-26*a*c^3*d*e-32*b*c^3*d*e+47*c^4*d*e+39*a^3*d^2*e+40*a^2*b*d^2*e+6*a*b^2*d^2*e+30*b^3*d^2*e-30*a^2*c*d^2*e-21*a*b*c*d^2*e-41*b^2*c*d^2*e-21*a*c^2*d^2*e-17*b*c^2*d^2*e-21*c^3*d^2*e+26*a^2*d^3*e+50*a*b*d^3*e+39*b^2*d^3*e-34*a*c*d^3*e-25*b*c*d^3*e-34*c^2*d^3*e+9*a*d^4*e-40*b*d^4*e-45*c*d^4*e-3*d^5*e-34*a^4*e^2-22*a^3*b*e^2-5*a^2*b^2*e^2+45*a*b^3*e^2-16*b^4*e^2-12*a^3*c*e^2+33*a^2*b*c*e^2+31*a*b^2*c*e^2+19*b^3*c*e^2+49*a^2*c^2*e^2-19*a*b*c^2*e^2+8*b^2*c^2*e^2+32*a*c^3*e^2+31*b*c^3*e^2+21*c^4*e^2+13*a^3*d*e^2-35*a^2*b*d*e^2-29*a*b^2*d*e^2-41*b^3*d*e^2+11*a^2*c*d*e^2+46*a*b*c*d*e^2+b^2*c*d*e^2+5*a*c^2*d*e^2+18*c^3*d*e^2-17*a^2*d^2*e^2+45*a*b*d^2*e^2-40*b^2*d^2*e^2-6*a*c*d^2*e^2-32*b*c*d^2*e^2-19*c^2*d^2*e^2+48*a*d^3*e^2+41*b*d^3*e^2-30*c*d^3*e^2-38*d^4*e^2+4*a^3*e^3+8*a^2*b*e^3-49*a*b^2*e^3+36*b^3*e^3-5*a^2*c*e^3-21*a*b*c*e^3-27*b^2*c*e^3+5*a*c^2*e^3+31*b*c^2*e^3+15*c^3*e^3+41*a^2*d*e^3+19*a*b*d*e^3+10*b^2*d*e^3+41*a*c*d*e^3+45*b*c*d*e^3+12*c^2*d*e^3-28*a*d^2*e^3+14*b*d^2*e^3+4*c*d^2*e^3-25*d^3*e^3+38*a^2*e^4+37*a*b*e^4-15*b^2*e^4-11*a*c*e^4-24*b*c*e^4+33*c^2*e^4-31*a*d*e^4+14*b*d*e^4+49*c*d*e^4+34*d^2*e^4-34*a*e^5-23*b*e^5+50*c*e^5+19*d*e^5+26*e^6,
    1822 a^4*b*d+4*a^4*d^2-24*a^3*b*d^2+8*a^2*b^2*d^2-24*a*b^3*d^2-b^4*d^2+31*a^3*c*d^2-45*a^2*b*c*d^2-12*a*b^2*c*d^2+45*b^3*c*d^2+29*a^2*c^2*d^2+41*a*b*c^2*d^2-2*b^2*c^2*d^2-44*a*c^3*d^2-9*b*c^3*d^2+32*c^4*d^2+50*a^3*d^3-6*a^2*b*d^3+11*a*b^2*d^3-6*b^3*d^3-36*a^2*c*d^3-13*a*b*c*d^3-44*b^2*c*d^3+35*a*c^2*d^3+29*b*c^2*d^3-32*c^3*d^3+45*a^2*d^4-24*a*b*d^4-b^2*d^4+48*a*c*d^4+29*b*c*d^4+43*c^2*d^4+34*a*d^5-b*d^5+14*c*d^5+12*d^6-50*a^5*e-26*a^4*b*e-38*a^3*b^2*e-5*a^2*b^3*e+41*a*b^4*e+38*b^5*e-14*a^4*c*e+46*a^3*b*c*e-14*a^2*b^2*c*e-24*a*b^3*c*e+31*b^4*c*e-24*a^3*c^2*e-50*a^2*b*c^2*e+47*a*b^2*c^2*e+42*b^3*c^2*e-15*a^2*c^3*e-26*a*b*c^3*e+26*b^2*c^3*e-38*a*c^4*e-34*b*c^4*e+44*c^5*e-29*a^4*d*e+26*a^3*b*d*e-25*a^2*b^2*d*e+41*a*b^3*d*e+46*b^4*d*e+46*a^3*c*d*e-28*a^2*b*c*d*e-10*a*b^2*c*d*e+18*b^3*c*d*e+28*a^2*c^2*d*e+25*a*b*c^2*d*e-8*b^2*c^2*d*e-36*a*c^3*d*e+50*b*c^3*d*e-25*c^4*d*e+7*a^3*d^2*e+29*a^2*b*d^2*e-50*a*b^2*d^2*e-34*b^3*d^2*e-6*a^2*c*d^2*e-13*a*b*c*d^2*e+21*b^2*c*d^2*e+32*a*c^2*d^2*e-10*b*c^2*d^2*e-19*c^3*d^2*e-27*a^2*d^3*e+46*a*b*d^3*e-4*b^2*d^3*e+17*a*c*d^3*e+11*b*c*d^3*e+7*c^2*d^3*e+18*a*d^4*e-23*b*d^4*e-45*c*d^4*e+40*d^5*e+36*a^4*e^2-2*a^3*b*e^2-17*a^2*b^2*e^2+11*a*b^3*e^2+49*b^4*e^2-31*a^3*c*e^2+8*a^2*b*c*e^2-12*a*b^2*c*e^2-15*b^3*c*e^2+14*a^2*c^2*e^2-a*b*c^2*e^2+38*b^2*c^2*e^2-40*a*c^3*e^2-25*b*c^3*e^2+34*c^4*e^2-2*a^3*d*e^2-19*a^2*b*d*e^2+35*a*b^2*d*e^2-49*b^3*d*e^2-20*a^2*c*d*e^2+47*a*b*c*d*e^2-42*b^2*c*d*e^2+41*a*c^2*d*e^2+23*b*c^2*d*e^2+22*c^3*d*e^2-16*a^2*d^2*e^2+14*a*b*d^2*e^2-10*b^2*d^2*e^2+47*a*c*d^2*e^2+43*b*c*d^2*e^2+50*c^2*d^2*e^2-35*b*d^3*e^2+45*c*d^3*e^2+5*d^4*e^2+18*a^3*e^3+42*a^2*b*e^3+a*b^2*e^3+26*b^3*e^3+16*a^2*c*e^3+40*b^2*c*e^3-27*a*c^2*e^3-9*b*c^2*e^3-26*c^3*e^3-24*a^2*d*e^3-6*a*b*d*e^3-26*b^2*d*e^3+47*a*c*d*e^3-40*b*c*d*e^3+30*c^2*d*e^3-46*a*d^2*e^3-27*b*d^2*e^3-42*c*d^2*e^3-10*d^3*e^3+25*a^2*e^4+a*b*e^4-15*b^2*e^4-13*a*c*e^4-33*b*c*e^4+20*c^2*e^4+5*a*d*e^4-42*b*d*e^4-5*c*d*e^4-24*d^2*e^4-34*a*e^5+35*b*e^5-27*c*e^5-43*d*e^5-43*e^6,
    1823 a^5*d+14*a^4*d^2-3*a^3*b*d^2+7*a^2*b^2*d^2-31*a*b^3*d^2-42*b^4*d^2-16*a^3*c*d^2+36*a^2*b*c*d^2-17*a*b^2*c*d^2-15*b^3*c*d^2+17*a^2*c^2*d^2+36*a*b*c^2*d^2+12*b^2*c^2*d^2-47*a*c^3*d^2-16*b*c^3*d^2-9*c^4*d^2-38*a^3*d^3-43*a^2*b*d^3+2*a*b^2*d^3-44*b^3*d^3-12*a^2*c*d^3+32*a*b*c*d^3+21*b^2*c*d^3-10*a*c^2*d^3-28*b*c^2*d^3-c^3*d^3+18*a^2*d^4-13*a*b*d^4+13*b^2*d^4+31*a*c*d^4+27*b*c*d^4+34*c^2*d^4-19*a*d^5-36*b*d^5-46*c*d^5+11*d^6-26*a^5*e-24*a^4*b*e-5*a^3*b^2*e+27*a^2*b^3*e-6*a*b^4*e-30*b^5*e+35*a^4*c*e-42*a^3*b*c*e+a^2*b^2*c*e-22*a*b^3*c*e+12*b^4*c*e+7*a^3*c^2*e-26*a^2*b*c^2*e-43*a*b^2*c^2*e-18*b^3*c^2*e+10*a^2*c^3*e-10*a*b*c^3*e+48*b^2*c^3*e-19*a*c^4*e-29*b*c^4*e-3*c^5*e+20*a^4*d*e+10*a^3*b*d*e+28*a^2*b^2*d*e+14*a*b^3*d*e-15*b^4*d*e-7*a^3*c*d*e-24*a^2*b*c*d*e-26*a*b^2*c*d*e+32*b^3*c*d*e+2*a^2*c^2*d*e+16*a*b*c^2*d*e+44*b^2*c^2*d*e-48*a*c^3*d*e+7*b*c^3*d*e+3*c^4*d*e-8*a^3*d^2*e+23*a^2*b*d^2*e-39*a*b^2*d^2*e+35*b^3*d^2*e-2*a^2*c*d^2*e-17*a*b*c*d^2*e+46*b^2*c*d^2*e-26*a*c^2*d^2*e+7*b*c^2*d^2*e+47*c^3*d^2*e-38*a^2*d^3*e+12*a*b*d^3*e-14*b^2*d^3*e-a*c*d^3*e+12*b*c*d^3*e+30*c^2*d^3*e-50*a*d^4*e-34*b*d^4*e-6*c*d^4*e-24*d^5*e-37*a^4*e^2-15*a^3*b*e^2+17*a^2*b^2*e^2+26*a*b^3*e^2-31*b^4*e^2+14*a^3*c*e^2+30*a^2*b*c*e^2-9*a*b^2*c*e^2-42*b^3*c*e^2-39*a^2*c^2*e^2-43*a*b*c^2*e^2+41*b^2*c^2*e^2-38*a*c^3*e^2-47*b*c^3*e^2+33*c^4*e^2+15*a^3*d*e^2-36*a^2*b*d*e^2+6*a*b^2*d*e^2-15*b^3*d*e^2+24*a^2*c*d*e^2-50*a*b*c*d*e^2-6*b^2*c*d*e^2-41*a*c^2*d*e^2+42*b*c^2*d*e^2+28*c^3*d*e^2-19*a^2*d^2*e^2-47*a*b*d^2*e^2+49*b^2*d^2*e^2-41*a*c*d^2*e^2-3*b*c*d^2*e^2-38*c^2*d^2*e^2+4*a*d^3*e^2-30*b*d^3*e^2+47*c*d^3*e^2+11*d^4*e^2-44*a^3*e^3-25*a^2*b*e^3+18*a*b^2*e^3-14*b^3*e^3+18*a^2*c*e^3-15*a*b*c*e^3+32*b^2*c*e^3+38*a*c^2*e^3-30*b*c^2*e^3-3*c^3*e^3-33*a^2*d*e^3-42*a*b*d*e^3-8*b^2*d*e^3-14*a*c*d*e^3+49*b*c*d*e^3-40*c^2*d*e^3-40*a*d^2*e^3+32*b*d^2*e^3-40*c*d^2*e^3+11*d^3*e^3-43*a^2*e^4-29*a*b*e^4+9*b^2*e^4-20*a*c*e^4+14*b*c*e^4+38*c^2*e^4-32*a*d*e^4+22*b*d*e^4-9*c*d*e^4-34*d^2*e^4+6*a*e^5-15*b*e^5+13*c*e^5-40*d*e^5-40*e^6,
    1824 c^6+36*a^4*d^2-8*a^3*b*d^2-40*a^2*b^2*d^2-45*a*b^3*d^2+36*b^4*d^2-21*a^3*c*d^2-27*a^2*b*c*d^2+46*a*b^2*c*d^2+30*b^3*c*d^2+4*a*b*c^2*d^2-20*b^2*c^2*d^2+3*a*c^3*d^2-48*b*c^3*d^2-29*c^4*d^2+13*a^3*d^3-3*a^2*b*d^3-13*a*b^2*d^3-38*b^3*d^3+35*a^2*c*d^3-5*a*b*c*d^3-46*b^2*c*d^3-26*a*c^2*d^3-20*b*c^2*d^3-4*c^3*d^3+6*a^2*d^4-14*a*b*d^4+16*b^2*d^4+44*a*c*d^4-10*b*c*d^4+15*c^2*d^4+31*a*d^5-22*b*d^5-36*c*d^5-34*d^6-28*a^5*e+46*a^4*b*e+5*a^3*b^2*e+36*a^2*b^3*e-2*a*b^4*e+13*b^5*e-40*a^4*c*e+31*a^3*b*c*e+49*a^2*b^2*c*e+50*a*b^3*c*e+8*b^4*c*e-23*a^2*b*c^2*e+7*a*b^2*c^2*e+36*b^3*c^2*e-12*a^2*c^3*e-a*b*c^3*e-32*b^2*c^3*e+33*a*c^4*e-45*b*c^4*e+7*c^5*e-13*a^4*d*e-38*a^3*b*d*e+17*a^2*b^2*d*e-33*a*b^3*d*e-33*b^4*d*e-47*a^3*c*d*e+42*a^2*b*c*d*e-5*a*b^2*c*d*e-35*b^3*c*d*e-34*a^2*c^2*d*e-36*a*b*c^2*d*e+17*b^2*c^2*d*e+19*a*c^3*d*e+41*b*c^3*d*e-8*c^4*d*e-15*a^3*d^2*e-10*a^2*b*d^2*e-37*a*b^2*d^2*e-40*b^3*d^2*e-2*a^2*c*d^2*e-28*a*b*c*d^2*e+30*b^2*c*d^2*e+45*a*c^2*d^2*e+26*b*c^2*d^2*e-20*c^3*d^2*e-48*a^2*d^3*e+16*a*b*d^3*e+12*b^2*d^3*e+47*a*c*d^3*e-11*b*c*d^3*e+27*c^2*d^3*e-29*a*d^4*e+33*b*d^4*e+6*c*d^4*e-10*d^5*e-2*a^4*e^2-27*a^3*b*e^2-18*a^2*b^2*e^2-46*a*b^3*e^2-19*b^4*e^2+9*a^3*c*e^2+45*a^2*b*c*e^2+30*a*b^2*c*e^2+35*b^3*c*e^2-31*a^2*c^2*e^2+33*a*b*c^2*e^2+36*b^2*c^2*e^2-18*a*c^3*e^2+5*b*c^3*e^2-8*c^4*e^2-37*a^3*d*e^2+46*a^2*b*d*e^2-37*a*b^2*d*e^2+28*b^3*d*e^2+6*a^2*c*d*e^2-24*a*b*c*d*e^2+9*b^2*c*d*e^2+36*a*c^2*d*e^2-44*b*c^2*d*e^2+32*c^3*d*e^2+49*a^2*d^2*e^2-44*a*b*d^2*e^2-12*b^2*d^2*e^2-6*a*c*d^2*e^2+7*b*c*d^2*e^2-2*c^2*d^2*e^2+17*a*d^3*e^2-15*b*d^3*e^2+18*c*d^3*e^2-24*d^4*e^2-26*a^3*e^3+44*a^2*b*e^3-28*a*b^2*e^3+28*b^3*e^3-8*a^2*c*e^3+6*a*b*c*e^3-12*b^2*c*e^3-25*a*c^2*e^3-37*b*c^2*e^3+36*c^3*e^3-18*a^2*d*e^3-38*a*b*d*e^3+b^2*d*e^3+3*a*c*d*e^3+47*b*c*d*e^3+3*c^2*d*e^3-5*a*d^2*e^3-34*c*d^2*e^3-11*d^3*e^3-19*a^2*e^4+16*a*b*e^4+17*b^2*e^4+23*a*c*e^4-26*b*c*e^4+10*c^2*e^4+23*a*d*e^4-30*b*d*e^4-46*c*d*e^4-13*d^2*e^4-23*a*e^5+41*b*e^5+6*c*e^5-50*d*e^5+28*e^6,
    1825 b*c^5+8*a^4*d^2-16*a^3*b*d^2+26*a^2*b^2*d^2+a*b^3*d^2+40*b^4*d^2-34*a^3*c*d^2+5*a^2*b*c*d^2+18*a*b^2*c*d^2-30*b^3*c*d^2+9*a^2*c^2*d^2+30*a*b*c^2*d^2-17*b^2*c^2*d^2+26*a*c^3*d^2+49*b*c^3*d^2+42*c^4*d^2+2*a^3*d^3+28*a^2*b*d^3-7*a*b^2*d^3-37*b^3*d^3+38*a^2*c*d^3-5*a*b*c*d^3-13*b^2*c*d^3-11*a*c^2*d^3-37*b*c^2*d^3+4*c^3*d^3-8*a^2*d^4-9*a*b*d^4+28*b^2*d^4+4*a*c*d^4+27*b*c*d^4+39*c^2*d^4+9*a*d^5-24*b*d^5+27*c*d^5+13*d^6-23*a^5*e-41*a^4*b*e-23*a^3*b^2*e+28*a^2*b^3*e+29*a*b^4*e-49*b^5*e-4*a^4*c*e-16*a^3*b*c*e-16*a^2*b^2*c*e+29*a*b^3*c*e-15*b^4*c*e-27*a^3*c^2*e+44*a^2*b*c^2*e-23*a*b^2*c^2*e-18*b^3*c^2*e-24*a^2*c^3*e-12*b^2*c^3*e-48*a*c^4*e+12*b*c^4*e+28*c^5*e-49*a^4*d*e+18*a^3*b*d*e+40*a^2*b^2*d*e-5*a*b^3*d*e-23*b^4*d*e-9*a^3*c*d*e-12*a^2*b*c*d*e-39*a*b^2*c*d*e-43*b^3*c*d*e+36*a^2*c^2*d*e+19*a*b*c^2*d*e+11*b^2*c^2*d*e+24*a*c^3*d*e+22*b*c^3*d*e+14*c^4*d*e-23*a^3*d^2*e-14*a^2*b*d^2*e+47*a*b^2*d^2*e+32*b^3*d^2*e+47*a^2*c*d^2*e+26*a*b*c*d^2*e-39*b^2*c*d^2*e+11*a*c^2*d^2*e-44*b*c^2*d^2*e-20*c^3*d^2*e-23*a^2*d^3*e-3*a*b*d^3*e-11*b^2*d^3*e-34*a*c*d^3*e+5*b*c*d^3*e-3*c^2*d^3*e-6*a*d^4*e-15*b*d^4*e+41*c*d^4*e+18*d^5*e+44*a^4*e^2-49*a^3*b*e^2+38*a^2*b^2*e^2+7*a*b^3*e^2-11*b^4*e^2+2*a^3*c*e^2-6*a^2*b*c*e^2-34*a*b^2*c*e^2-21*b^3*c*e^2+12*a^2*c^2*e^2+7*a*b*c^2*e^2-20*b^2*c^2*e^2-3*a*c^3*e^2-38*b*c^3*e^2-5*c^4*e^2-46*a^3*d*e^2-20*a^2*b*d*e^2+21*a*b^2*d*e^2-36*b^3*d*e^2-14*a^2*c*d*e^2+6*a*b*c*d*e^2+29*b^2*c*d*e^2+12*a*c^2*d*e^2-2*b*c^2*d*e^2+41*c^3*d*e^2+41*a^2*d^2*e^2+34*a*b*d^2*e^2-2*b^2*d^2*e^2+9*a*c*d^2*e^2+10*b*c*d^2*e^2-11*c^2*d^2*e^2+45*a*d^3*e^2+38*b*d^3*e^2-20*c*d^3*e^2-12*d^4*e^2-35*a^3*e^3+23*a*b^2*e^3+37*b^3*e^3+10*a^2*c*e^3+6*a*b*c*e^3+21*b^2*c*e^3-24*a*c^2*e^3+28*b*c^2*e^3+26*c^3*e^3+22*a^2*d*e^3+26*a*b*d*e^3+50*b^2*d*e^3+43*a*c*d*e^3+39*b*c*d*e^3-42*c^2*d*e^3-27*a*d^2*e^3+38*b*d^2*e^3+19*c*d^2*e^3-15*d^3*e^3+37*a^2*e^4+7*a*b*e^4-12*b^2*e^4-34*a*c*e^4+25*b*c*e^4+26*c^2*e^4+a*d*e^4-25*b*d*e^4-15*c*d*e^4-50*d^2*e^4-50*a*e^5-45*b*e^5+30*c*e^5+6*d*e^5+49*e^6,
    1826 a*c^5+28*a^4*d^2-23*a^3*b*d^2+10*a^2*b^2*d^2-36*a*b^3*d^2+6*b^4*d^2+25*a^3*c*d^2-47*a^2*b*c*d^2+28*a*b^2*c*d^2-36*b^3*c*d^2-31*a^2*c^2*d^2-35*a*b*c^2*d^2-42*b^2*c^2*d^2+20*a*c^3*d^2-45*b*c^3*d^2+49*c^4*d^2-24*a^3*d^3+25*a^2*b*d^3+27*a*b^2*d^3+49*b^3*d^3-9*a^2*c*d^3-46*a*b*c*d^3-39*b^2*c*d^3-9*a*c^2*d^3-46*b*c^2*d^3+43*c^3*d^3-35*a^2*d^4+11*a*b*d^4+15*b^2*d^4-4*a*c*d^4+42*b*c*d^4+19*c^2*d^4-35*a*d^5-23*b*d^5-45*c*d^5+6*d^6-36*a^5*e-35*a^4*b*e+47*a^3*b^2*e-20*a^2*b^3*e+28*a*b^4*e+37*b^5*e-50*a^4*c*e-35*a^3*b*c*e+a^2*b^2*c*e+15*a*b^3*c*e-2*b^4*c*e-10*a^3*c^2*e-50*a^2*b*c^2*e-34*a*b^2*c^2*e+28*b^3*c^2*e+18*a^2*c^3*e-13*a*b*c^3*e-17*b^2*c^3*e-19*a*c^4*e+9*b*c^4*e-43*c^5*e-29*a^4*d*e-17*a^3*b*d*e+47*a^2*b^2*d*e+26*a*b^3*d*e-13*b^4*d*e+11*a^3*c*d*e+5*a^2*b*c*d*e-25*a*b^2*c*d*e+26*b^3*c*d*e-17*a^2*c^2*d*e-37*a*b*c^2*d*e-7*b^2*c^2*d*e+28*a*c^3*d*e+28*b*c^3*d*e-16*c^4*d*e+30*a^3*d^2*e-25*a^2*b*d^2*e+9*a*b^2*d^2*e+34*b^3*d^2*e+2*a^2*c*d^2*e+30*a*b*c*d^2*e-37*b^2*c*d^2*e+33*a*c^2*d^2*e-5*b*c^2*d^2*e-4*c^3*d^2*e+50*a^2*d^3*e-50*a*b*d^3*e+9*b^2*d^3*e+11*a*c*d^3*e-31*b*c*d^3*e+29*c^2*d^3*e-37*a*d^4*e-22*b*d^4*e-20*c*d^4*e-30*d^5*e+19*a^4*e^2+42*a^3*b*e^2+43*a^2*b^2*e^2-22*a*b^3*e^2+40*b^4*e^2-12*a^3*c*e^2-37*a^2*b*c*e^2-38*a*b^2*c*e^2+47*b^3*c*e^2+33*a^2*c^2*e^2-26*a*b*c^2*e^2+8*b^2*c^2*e^2+43*a*c^3*e^2+43*b*c^3*e^2-26*c^4*e^2+13*a^3*d*e^2+7*a^2*b*d*e^2-38*a*b^2*d*e^2+28*b^3*d*e^2-35*a^2*c*d*e^2+41*a*b*c*d*e^2+2*b^2*c*d*e^2-44*a*c^2*d*e^2-5*b*c^2*d*e^2+35*c^3*d*e^2+46*a^2*d^2*e^2-32*a*b*d^2*e^2-37*b^2*d^2*e^2+4*a*c*d^2*e^2+15*b*c*d^2*e^2+13*c^2*d^2*e^2+14*a*d^3*e^2+3*b*d^3*e^2-7*c*d^3*e^2+9*d^4*e^2-43*a^3*e^3+46*a^2*b*e^3-17*a*b^2*e^3+12*b^3*e^3-9*a^2*c*e^3+40*a*b*c*e^3+7*b^2*c*e^3-31*a*c^2*e^3+32*b*c^2*e^3-49*a^2*d*e^3+22*a*b*d*e^3+27*b^2*d*e^3+34*a*c*d*e^3-39*b*c*d*e^3-17*c^2*d*e^3-39*a*d^2*e^3+20*b*d^2*e^3-10*c*d^2*e^3+2*d^3*e^3+4*a^2*e^4+21*a*b*e^4+20*b^2*e^4+36*a*c*e^4+49*b*c*e^4+24*c^2*e^4-31*a*d*e^4+23*b*d*e^4+48*c*d*e^4-12*d^2*e^4+8*a*e^5-8*b*e^5-15*c*e^5-d*e^5+24*e^6,
    1827 b^2*c^4-39*a^4*d^2+a^3*b*d^2+26*a^2*b^2*d^2+29*a*b^3*d^2-5*b^4*d^2+13*a^3*c*d^2-47*a^2*b*c*d^2+17*a*b^2*c*d^2+22*b^3*c*d^2+25*a^2*c^2*d^2-2*a*b*c^2*d^2+18*b^2*c^2*d^2+43*a*c^3*d^2+48*b*c^3*d^2-24*c^4*d^2-17*a^3*d^3-16*a^2*b*d^3-3*a*b^2*d^3+35*b^3*d^3+8*a^2*c*d^3+30*a*b*c*d^3-6*b^2*c*d^3+17*a*c^2*d^3-25*b*c^2*d^3+34*c^3*d^3+13*a^2*d^4-49*a*b*d^4-48*b^2*d^4-6*a*c*d^4+43*b*c*d^4+31*c^2*d^4+30*a*d^5-12*b*d^5+4*c*d^5+39*d^6+48*a^5*e+15*a^4*b*e-41*a^3*b^2*e+41*a^2*b^3*e-16*a*b^4*e+28*b^5*e-48*a^4*c*e+11*a^3*b*c*e+42*a^2*b^2*c*e+34*a*b^3*c*e+48*b^4*c*e-24*a^3*c^2*e+29*a^2*b*c^2*e+6*a*b^2*c^2*e+18*b^3*c^2*e-31*a^2*c^3*e+15*a*b*c^3*e+22*b^2*c^3*e-a*c^4*e+15*b*c^4*e-46*c^5*e-36*a^4*d*e+a^3*b*d*e+46*a^2*b^2*d*e-29*a*b^3*d*e+41*b^4*d*e-13*a^3*c*d*e-4*a^2*b*c*d*e-39*a*b^2*c*d*e-39*b^3*c*d*e+35*a^2*c^2*d*e-29*a*b*c^2*d*e-26*b^2*c^2*d*e-37*a*c^3*d*e-8*b*c^3*d*e-13*c^4*d*e+44*a^3*d^2*e-9*a^2*b*d^2*e-38*a*b^2*d^2*e-30*b^3*d^2*e+49*a^2*c*d^2*e+8*a*b*c*d^2*e-35*b^2*c*d^2*e+40*a*c^2*d^2*e-19*b*c^2*d^2*e-25*c^3*d^2*e+47*a^2*d^3*e+17*a*b*d^3*e-41*b^2*d^3*e-18*a*c*d^3*e+38*b*c*d^3*e+22*c^2*d^3*e-30*a*d^4*e+25*b*d^4*e-11*c*d^4*e-8*d^5*e+47*a^4*e^2+2*a^3*b*e^2+5*a^2*b^2*e^2-31*a*b^3*e^2+21*b^4*e^2-46*a^3*c*e^2-28*a^2*b*c*e^2+49*a*b^2*c*e^2+31*b^3*c*e^2-45*a^2*c^2*e^2+26*a*b*c^2*e^2+18*b^2*c^2*e^2+6*a*c^3*e^2-17*b*c^3*e^2-4*c^4*e^2-8*a^3*d*e^2-37*a^2*b*d*e^2-43*a*b^2*d*e^2+10*b^3*d*e^2+32*a^2*c*d*e^2+21*a*b*c*d*e^2+9*b^2*c*d*e^2-34*a*c^2*d*e^2-50*b*c^2*d*e^2-7*c^3*d*e^2+31*a^2*d^2*e^2+22*b^2*d^2*e^2-35*a*c*d^2*e^2-3*b*c*d^2*e^2+13*c^2*d^2*e^2-35*a*d^3*e^2-45*b*d^3*e^2-44*c*d^3*e^2+44*d^4*e^2+7*a^3*e^3+17*a^2*b*e^3+8*a*b^2*e^3+30*b^3*e^3-28*a^2*c*e^3-25*a*b*c*e^3+6*b^2*c*e^3-29*a*c^2*e^3-29*b*c^2*e^3-23*c^3*e^3-43*a^2*d*e^3+44*a*b*d*e^3+41*b^2*d*e^3-8*a*c*d*e^3-13*b*c*d*e^3+27*c^2*d*e^3+5*a*d^2*e^3+8*b*d^2*e^3+11*c*d^2*e^3-50*d^3*e^3+4*a^2*e^4-31*a*b*e^4-2*b^2*e^4-2*a*c*e^4-27*b*c*e^4-c^2*e^4-17*a*d*e^4-30*b*d*e^4-15*c*d*e^4+5*d^2*e^4-34*a*e^5-49*b*e^5+26*c*e^5-44*d*e^5+46*e^6,
    1828 a*b*c^4+44*a^4*d^2-12*a^3*b*d^2-6*a^2*b^2*d^2-20*a*b^3*d^2+48*b^4*d^2+19*a^3*c*d^2+4*a^2*b*c*d^2+50*a*b^2*c*d^2+34*b^3*c*d^2-a^2*c^2*d^2-24*a*b*c^2*d^2+43*b^2*c^2*d^2-21*a*c^3*d^2-29*b*c^3*d^2+36*c^4*d^2+48*a^3*d^3-26*a^2*b*d^3-16*a*b^2*d^3+29*b^3*d^3-48*a^2*c*d^3-19*a*b*c*d^3-17*b^2*c*d^3-44*a*c^2*d^3+5*b*c^2*d^3-6*c^3*d^3-a^2*d^4-30*a*b*d^4-16*b^2*d^4+20*a*c*d^4+17*b*c*d^4-50*c^2*d^4+36*a*d^5-36*b*d^5-2*c*d^5+46*d^6-10*a^5*e-39*a^4*b*e+20*a^3*b^2*e+45*a^2*b^3*e-35*a*b^4*e+2*b^5*e+23*a^4*c*e-12*a^3*b*c*e-5*a^2*b^2*c*e+5*a*b^3*c*e-8*b^4*c*e+49*a^3*c^2*e+11*a^2*b*c^2*e-11*a*b^2*c^2*e+28*b^3*c^2*e+34*a^2*c^3*e+50*a*b*c^3*e+33*b^2*c^3*e-48*a*c^4*e-12*b*c^4*e+30*c^5*e+3*a^4*d*e-34*a^3*b*d*e+14*a^2*b^2*d*e-47*a*b^3*d*e+34*b^4*d*e-50*a^3*c*d*e-18*a^2*b*c*d*e-39*a*b^2*c*d*e-27*b^3*c*d*e-42*a^2*c^2*d*e-43*a*b*c^2*d*e+28*b^2*c^2*d*e+45*a*c^3*d*e+37*b*c^3*d*e-36*c^4*d*e+21*a^3*d^2*e+36*a^2*b*d^2*e+8*a*b^2*d^2*e-16*b^3*d^2*e+43*a^2*c*d^2*e+24*b^2*c*d^2*e-21*a*c^2*d^2*e+29*b*c^2*d^2*e-14*c^3*d^2*e+11*a^2*d^3*e+16*a*b*d^3*e-24*b^2*d^3*e+8*a*c*d^3*e-44*b*c*d^3*e+13*c^2*d^3*e-32*a*d^4*e+b*d^4*e-31*c*d^4*e-32*d^5*e+32*a^4*e^2-27*a^3*b*e^2+29*a^2*b^2*e^2-30*a*b^3*e^2+35*b^4*e^2-19*a^3*c*e^2+45*a^2*b*c*e^2-9*a*b^2*c*e^2+9*b^3*c*e^2-33*a^2*c^2*e^2+24*a*b*c^2*e^2-5*b^2*c^2*e^2-42*a*c^3*e^2+32*b*c^3*e^2+37*c^4*e^2+36*a^3*d*e^2-44*a^2*b*d*e^2+46*a*b^2*d*e^2+37*b^3*d*e^2+31*a^2*c*d*e^2+32*a*b*c*d*e^2-37*b^2*c*d*e^2-45*a*c^2*d*e^2-37*b*c^2*d*e^2+38*c^3*d*e^2+40*a^2*d^2*e^2-44*a*b*d^2*e^2+39*b^2*d^2*e^2-20*a*c*d^2*e^2+46*b*c*d^2*e^2+c^2*d^2*e^2-13*a*d^3*e^2+16*b*d^3*e^2-17*c*d^3*e^2+41*d^4*e^2-18*a^3*e^3+12*a^2*b*e^3-20*a*b^2*e^3+34*b^3*e^3+21*a^2*c*e^3+19*a*b*c*e^3+22*b^2*c*e^3+41*a*c^2*e^3+42*b*c^2*e^3-32*c^3*e^3-24*a^2*d*e^3-26*a*b*d*e^3-43*b^2*d*e^3-17*a*c*d*e^3-24*b*c*d*e^3+36*c^2*d*e^3+48*a*d^2*e^3+38*b*d^2*e^3-43*c*d^2*e^3-31*d^3*e^3-21*a^2*e^4+45*a*b*e^4-12*b^2*e^4-42*a*c*e^4-38*b*c*e^4-27*c^2*e^4-3*a*d*e^4-45*b*d*e^4-17*c*d*e^4+15*d^2*e^4+48*a*e^5+21*b*e^5-7*c*e^5-36*d*e^5+12*e^6,
    1829 a^2*c^4+45*a^4*d^2-49*a^3*b*d^2-20*a^2*b^2*d^2-12*a*b^3*d^2-21*b^4*d^2-29*a^3*c*d^2+23*a^2*b*c*d^2+6*a*b^2*c*d^2-30*b^3*c*d^2-33*a^2*c^2*d^2+31*a*b*c^2*d^2+12*b^2*c^2*d^2+20*a*c^3*d^2-48*b*c^3*d^2-21*c^4*d^2-23*a^3*d^3-38*a^2*b*d^3-41*a*b^2*d^3-3*b^3*d^3+13*a^2*c*d^3-10*a*b*c*d^3-14*b^2*c*d^3+47*a*c^2*d^3+46*b*c^2*d^3-49*c^3*d^3-a^2*d^4-13*a*b*d^4+34*b^2*d^4+8*a*c*d^4-44*b*c*d^4+c^2*d^4-10*a*d^5-b*d^5-34*c*d^5-8*d^6-28*a^5*e+21*a^4*b*e-44*a^3*b^2*e-3*a^2*b^3*e-7*a*b^4*e+49*b^5*e-25*a^4*c*e+22*a^3*b*c*e+18*a^2*b^2*c*e-15*a*b^3*c*e+31*b^4*c*e-27*a^3*c^2*e+9*a^2*b*c^2*e-9*a*b^2*c^2*e+50*b^3*c^2*e-a^2*c^3*e-20*a*b*c^3*e+21*b^2*c^3*e+25*a*c^4*e-29*b*c^4*e-41*c^5*e+28*a^4*d*e-7*a^3*b*d*e-18*a^2*b^2*d*e-33*a*b^3*d*e-32*b^4*d*e-9*a^3*c*d*e-18*a^2*b*c*d*e-7*a*b^2*c*d*e-49*b^3*c*d*e+23*a^2*c^2*d*e+32*a*b*c^2*d*e+17*b^2*c^2*d*e-26*a*c^3*d*e+30*b*c^3*d*e-4*c^4*d*e+17*a^3*d^2*e-31*a^2*b*d^2*e+7*a*b^2*d^2*e-10*a^2*c*d^2*e+9*a*b*c*d^2*e+49*b^2*c*d^2*e-26*a*c^2*d^2*e-21*b*c^2*d^2*e+13*c^3*d^2*e+32*a^2*d^3*e+8*a*b*d^3*e+44*b^2*d^3*e+49*a*c*d^3*e-b*c*d^3*e+39*c^2*d^3*e-a*d^4*e-19*b*d^4*e-40*c*d^4*e-30*d^5*e-2*a^4*e^2-5*a^3*b*e^2-10*a^2*b^2*e^2-31*a*b^3*e^2+37*b^4*e^2+45*a^3*c*e^2+17*a^2*b*c*e^2-34*a*b^2*c*e^2-32*b^3*c*e^2-7*a^2*c^2*e^2-21*a*b*c^2*e^2+50*b^2*c^2*e^2+35*a*c^3*e^2-38*b*c^3*e^2+14*c^4*e^2-21*a^3*d*e^2-4*a^2*b*d*e^2-14*a*b^2*d*e^2+13*b^3*d*e^2-38*a^2*c*d*e^2+44*a*b*c*d*e^2+7*b^2*c*d*e^2-16*a*c^2*d*e^2+38*b*c^2*d*e^2+38*c^3*d*e^2+25*a^2*d^2*e^2-34*a*b*d^2*e^2-32*b^2*d^2*e^2+22*a*c*d^2*e^2+40*b*c*d^2*e^2+4*c^2*d^2*e^2-16*a*d^3*e^2+36*b*d^3*e^2-39*c*d^3*e^2-45*d^4*e^2+39*a^3*e^3+31*a^2*b*e^3-43*a*b^2*e^3-18*b^3*e^3+44*a^2*c*e^3-8*a*b*c*e^3+38*b^2*c*e^3-4*a*c^2*e^3+3*b*c^2*e^3-43*c^3*e^3-6*a^2*d*e^3+34*a*b*d*e^3+6*b^2*d*e^3-13*a*c*d*e^3+32*b*c*d*e^3+30*c^2*d*e^3+28*a*d^2*e^3+17*b*d^2*e^3-19*c*d^2*e^3-46*d^3*e^3+12*a^2*e^4+44*a*b*e^4-42*b^2*e^4-41*a*c*e^4-35*b*c*e^4-37*c^2*e^4+42*a*d*e^4+43*b*d*e^4+5*c*d*e^4+11*d^2*e^4+25*a*e^5-9*b*e^5-27*c*e^5+50*d*e^5+23*e^6,
    1830 b^3*c^3-13*a^4*d^2-41*a^3*b*d^2+27*a^2*b^2*d^2+a*b^3*d^2+33*b^4*d^2+47*a^3*c*d^2-19*a^2*b*c*d^2-27*a*b^2*c*d^2-6*b^3*c*d^2+37*a^2*c^2*d^2+40*a*b*c^2*d^2+12*b^2*c^2*d^2+36*a*c^3*d^2-25*b*c^3*d^2-45*c^4*d^2-12*a^3*d^3-5*a^2*b*d^3+31*a*b^2*d^3-b^3*d^3-37*a^2*c*d^3+26*a*b*c*d^3-48*b^2*c*d^3+36*a*c^2*d^3+16*b*c^2*d^3+44*c^3*d^3+47*a^2*d^4-20*a*b*d^4-13*b^2*d^4+39*a*c*d^4+17*b*c*d^4-32*c^2*d^4-24*a*d^5-41*b*d^5-31*c*d^5+29*a^5*e+26*a^4*b*e+12*a^3*b^2*e-45*a^2*b^3*e+40*a*b^4*e+20*b^5*e-21*a^4*c*e-28*a^3*b*c*e+38*a^2*b^2*c*e+40*a*b^3*c*e-13*b^4*c*e-9*a^3*c^2*e-9*a^2*b*c^2*e-a*b^2*c^2*e-b^3*c^2*e+32*a^2*c^3*e+43*a*b*c^3*e-44*b^2*c^3*e+39*a*c^4*e+8*b*c^4*e-8*c^5*e+27*a^4*d*e+15*a^3*b*d*e-12*a^2*b^2*d*e-33*a*b^3*d*e+16*b^4*d*e+19*a^3*c*d*e-34*a^2*b*c*d*e+5*a*b^2*c*d*e-31*b^3*c*d*e+5*a^2*c^2*d*e-20*a*b*c^2*d*e-4*b^2*c^2*d*e-50*a*c^3*d*e+44*b*c^3*d*e-31*a^3*d^2*e+31*a^2*b*d^2*e+28*a*b^2*d^2*e-10*b^3*d^2*e+2*a^2*c*d^2*e-19*a*b*c*d^2*e-9*a*c^2*d^2*e+2*b*c^2*d^2*e+40*c^3*d^2*e+45*a^2*d^3*e+9*a*b*d^3*e+26*b^2*d^3*e-14*a*c*d^3*e+2*b*c*d^3*e+7*c^2*d^3*e+36*a*d^4*e-43*b*d^4*e-27*c*d^4*e-4*d^5*e+23*a^4*e^2+45*a^3*b*e^2+41*a^2*b^2*e^2+22*a*b^3*e^2+14*b^4*e^2-30*a^3*c*e^2+19*a^2*b*c*e^2-34*a*b^2*c*e^2+17*b^3*c*e^2-42*a^2*c^2*e^2-12*a*b*c^2*e^2-9*b^2*c^2*e^2-3*a*c^3*e^2+47*b*c^3*e^2+47*c^4*e^2+7*a^3*d*e^2+6*a^2*b*d*e^2+26*a*b^2*d*e^2+10*b^3*d*e^2-11*a^2*c*d*e^2-17*a*b*c*d*e^2+34*b^2*c*d*e^2+21*a*c^2*d*e^2+11*b*c^2*d*e^2+5*c^3*d*e^2-40*a^2*d^2*e^2+11*a*b*d^2*e^2+17*b^2*d^2*e^2+38*a*c*d^2*e^2-18*b*c*d^2*e^2+23*c^2*d^2*e^2+35*a*d^3*e^2+4*b*d^3*e^2-2*c*d^3*e^2+46*d^4*e^2+44*a^3*e^3-14*a^2*b*e^3+25*a*b^2*e^3-41*b^3*e^3-34*a^2*c*e^3-44*a*b*c*e^3+17*a*c^2*e^3+9*b*c^2*e^3+45*c^3*e^3+23*a^2*d*e^3-15*a*b*d*e^3+9*b^2*d*e^3-14*a*c*d*e^3-23*b*c*d*e^3+17*c^2*d*e^3+46*a*d^2*e^3+30*b*d^2*e^3+35*c*d^2*e^3-27*d^3*e^3-40*a^2*e^4-50*a*b*e^4-23*b^2*e^4-46*a*c*e^4+44*b*c*e^4+7*c^2*e^4+14*a*d*e^4-4*b*d*e^4-9*c*d*e^4+44*d^2*e^4-9*a*e^5+28*b*e^5+25*c*e^5+36*d*e^5+28*e^6,
    1831 a*b^2*c^3+41*a^4*d^2-33*a^3*b*d^2+21*a^2*b^2*d^2-47*a*b^3*d^2-23*b^4*d^2+9*a^3*c*d^2+49*a^2*b*c*d^2+44*a*b^2*c*d^2-25*b^3*c*d^2-28*a^2*c^2*d^2+37*a*b*c^2*d^2+9*b^2*c^2*d^2-21*a*c^3*d^2+36*b*c^3*d^2+48*c^4*d^2+2*a^3*d^3+15*a^2*b*d^3-3*a*b^2*d^3-40*b^3*d^3-19*a^2*c*d^3+4*a*b*c*d^3-29*b^2*c*d^3-48*a*c^2*d^3+41*b*c^2*d^3+34*c^3*d^3+33*a^2*d^4-13*a*b*d^4-34*b^2*d^4-47*a*c*d^4+36*b*c*d^4+34*c^2*d^4+41*a*d^5+25*b*d^5-28*c*d^5-31*d^6+22*a^5*e+a^4*b*e+27*a^3*b^2*e+5*a^2*b^3*e-33*a*b^4*e+2*b^5*e+20*a^4*c*e-30*a^3*b*c*e+11*a^2*b^2*c*e+44*a*b^3*c*e-37*b^4*c*e+a^3*c^2*e+7*a^2*b*c^2*e-20*a*b^2*c^2*e+34*b^3*c^2*e-35*a^2*c^3*e+28*a*b*c^3*e-50*b^2*c^3*e-11*a*c^4*e-26*b*c^4*e+c^5*e-37*a^4*d*e+23*a^3*b*d*e+50*a^2*b^2*d*e+35*a*b^3*d*e-4*b^4*d*e-15*a^3*c*d*e-39*a^2*b*c*d*e-50*a*b^2*c*d*e+47*b^3*c*d*e-38*a^2*c^2*d*e-42*a*b*c^2*d*e+43*b^2*c^2*d*e+24*a*c^3*d*e+31*b*c^3*d*e+41*c^4*d*e-15*a^3*d^2*e+20*a^2*b*d^2*e-24*a*b^2*d^2*e-47*b^3*d^2*e+4*a^2*c*d^2*e+42*a*b*c*d^2*e+20*b^2*c*d^2*e-37*a*c^2*d^2*e+42*b*c^2*d^2*e+6*c^3*d^2*e-45*a^2*d^3*e-7*a*b*d^3*e-37*b^2*d^3*e-34*a*c*d^3*e-44*b*c*d^3*e-c^2*d^3*e-29*a*d^4*e+22*b*d^4*e-27*c*d^4*e-34*d^5*e-13*a^4*e^2+48*a^3*b*e^2+22*a^2*b^2*e^2+30*a*b^3*e^2-10*b^4*e^2-2*a^3*c*e^2+10*a^2*b*c*e^2+23*a*b^2*c*e^2+27*b^3*c*e^2+15*a^2*c^2*e^2-a*b*c^2*e^2+33*b^2*c^2*e^2-13*a*c^3*e^2-13*b*c^3*e^2+44*c^4*e^2-34*a^3*d*e^2+7*a^2*b*d*e^2+a*b^2*d*e^2-50*b^3*d*e^2+23*a^2*c*d*e^2+12*a*b*c*d*e^2+50*b^2*c*d*e^2+29*a*c^2*d*e^2+41*b*c^2*d*e^2+22*c^3*d*e^2-20*a^2*d^2*e^2+4*a*b*d^2*e^2-33*b^2*d^2*e^2-38*a*c*d^2*e^2+47*b*c*d^2*e^2+21*c^2*d^2*e^2+18*b*d^3*e^2+44*c*d^3*e^2+31*d^4*e^2-3*a^3*e^3-32*a^2*b*e^3-45*a*b^2*e^3-20*b^3*e^3+29*a^2*c*e^3-35*a*b*c*e^3-11*b^2*c*e^3-13*a*c^2*e^3-38*b*c^2*e^3+17*c^3*e^3-41*a^2*d*e^3-36*a*b*d*e^3-6*b^2*d*e^3-14*a*c*d*e^3-16*b*c*d*e^3-6*c^2*d*e^3+20*a*d^2*e^3-29*b*d^2*e^3+50*c*d^2*e^3-37*d^3*e^3-27*a^2*e^4+15*a*b*e^4+46*b^2*e^4+39*a*c*e^4-26*b*c*e^4-10*c^2*e^4-40*a*d*e^4-5*b*d*e^4-23*c*d*e^4+36*d^2*e^4-21*a*e^5+4*b*e^5-48*c*e^5+38*d*e^5-36*e^6,
    1832 a^2*b*c^3+6*a^4*d^2-4*a^3*b*d^2+37*a^2*b^2*d^2+18*a*b^3*d^2-34*b^4*d^2+23*a^3*c*d^2-9*a^2*b*c*d^2-46*a*b^2*c*d^2+19*b^3*c*d^2+42*a^2*c^2*d^2-34*a*b*c^2*d^2-14*b^2*c^2*d^2-10*a*c^3*d^2+13*b*c^3*d^2+14*c^4*d^2-38*a^3*d^3-13*a^2*b*d^3+47*a*b^2*d^3-9*b^3*d^3-a^2*c*d^3+33*a*b*c*d^3+9*b^2*c*d^3+33*a*c^2*d^3+37*b*c^2*d^3+41*c^3*d^3+12*a^2*d^4-50*a*b*d^4+11*b^2*d^4-48*a*c*d^4+27*b*c*d^4-48*c^2*d^4-48*a*d^5-19*b*d^5+46*c*d^5+5*d^6+43*a^5*e-13*a^4*b*e-16*a^3*b^2*e+34*a^2*b^3*e+25*a*b^4*e+29*b^5*e-8*a^4*c*e-2*a^3*b*c*e+4*a^2*b^2*c*e+23*a*b^3*c*e+7*b^4*c*e-6*a^3*c^2*e-39*a^2*b*c^2*e-10*a*b^2*c^2*e+18*b^3*c^2*e-18*a^2*c^3*e+35*a*b*c^3*e+18*b^2*c^3*e-2*a*c^4*e+16*b*c^4*e-21*c^5*e-44*a^4*d*e-a^3*b*d*e+19*a^2*b^2*d*e+32*a*b^3*d*e+20*b^4*d*e+36*a^3*c*d*e+16*a^2*b*c*d*e+7*a*b^2*c*d*e+21*b^3*c*d*e+21*a^2*c^2*d*e-31*a*b*c^2*d*e+10*b^2*c^2*d*e-16*a*c^3*d*e+40*b*c^3*d*e-16*c^4*d*e-43*a^3*d^2*e+50*a^2*b*d^2*e-14*a*b^2*d^2*e-24*b^3*d^2*e-23*a^2*c*d^2*e-21*a*b*c*d^2*e-2*b^2*c*d^2*e+38*a*c^2*d^2*e+40*b*c^2*d^2*e+38*c^3*d^2*e-5*a^2*d^3*e+31*a*b*d^3*e-50*b^2*d^3*e+46*a*c*d^3*e-14*b*c*d^3*e+45*c^2*d^3*e-25*a*d^4*e-8*b*d^4*e+3*c*d^4*e+7*d^5*e-a^4*e^2-29*a^3*b*e^2-23*a^2*b^2*e^2+19*a*b^3*e^2-41*b^4*e^2+46*a^3*c*e^2-27*a^2*b*c*e^2-24*a*b^2*c*e^2+26*b^3*c*e^2+8*a^2*c^2*e^2-11*a*b*c^2*e^2-9*b^2*c^2*e^2+29*a*c^3*e^2+15*b*c^3*e^2-10*c^4*e^2-37*a^3*d*e^2+25*a^2*b*d*e^2-26*a*b^2*d*e^2+7*b^3*d*e^2-19*a^2*c*d*e^2-12*a*b*c*d*e^2+50*b^2*c*d*e^2-40*a*c^2*d*e^2-28*b*c^2*d*e^2+26*c^3*d*e^2+28*a^2*d^2*e^2+38*a*b*d^2*e^2+44*b^2*d^2*e^2-32*a*c*d^2*e^2-14*b*c*d^2*e^2+23*c^2*d^2*e^2+44*a*d^3*e^2+47*b*d^3*e^2+46*c*d^3*e^2+3*d^4*e^2-27*a^3*e^3+5*a^2*b*e^3-48*a*b^2*e^3+22*b^3*e^3+32*a^2*c*e^3+23*a*b*c*e^3+34*b^2*c*e^3+4*a*c^2*e^3-25*b*c^2*e^3+13*c^3*e^3+25*a^2*d*e^3-24*a*b*d*e^3+11*b^2*d*e^3+32*a*c*d*e^3-14*b*c*d*e^3+4*c^2*d*e^3+10*a*d^2*e^3-7*b*d^2*e^3+22*c*d^2*e^3-4*d^3*e^3+6*a^2*e^4+19*a*b*e^4+15*b^2*e^4+9*a*c*e^4-49*b*c*e^4+37*c^2*e^4-46*a*d*e^4+33*b*d*e^4+41*c*d*e^4-41*d^2*e^4+11*a*e^5-44*b*e^5+46*c*e^5+12*d*e^5-50*e^6,
    1833 a^3*c^3-8*a^4*d^2+24*a^3*b*d^2-28*a^2*b^2*d^2+27*a*b^3*d^2-17*b^4*d^2-40*a^3*c*d^2+28*a^2*b*c*d^2+2*a*b^2*c*d^2-18*b^3*c*d^2+45*a^2*c^2*d^2-13*a*b*c^2*d^2-14*b^2*c^2*d^2+35*a*c^3*d^2-32*b*c^3*d^2+2*c^4*d^2-27*a^3*d^3-41*a^2*b*d^3-36*a*b^2*d^3-50*b^3*d^3+23*a^2*c*d^3+25*a*b*c*d^3+22*b^2*c*d^3+15*a*c^2*d^3-36*b*c^2*d^3-43*c^3*d^3-26*a^2*d^4-43*a*b*d^4-25*b^2*d^4-14*a*c*d^4+32*b*c*d^4+25*c^2*d^4+23*a*d^5-32*b*d^5+28*c*d^5-24*d^6+4*a^5*e-15*a^4*b*e-45*a^3*b^2*e-47*a^2*b^3*e+50*a*b^4*e+3*b^5*e+41*a^4*c*e+45*a^2*b^2*c*e+7*a*b^3*c*e-41*b^4*c*e+13*a^3*c^2*e+5*a^2*b*c^2*e+33*a*b^2*c^2*e+35*b^3*c^2*e+9*a^2*c^3*e-4*a*b*c^3*e-43*b^2*c^3*e-8*a*c^4*e+10*b*c^4*e-17*c^5*e+24*a^4*d*e-6*a^3*b*d*e+22*a^2*b^2*d*e+3*a*b^3*d*e+31*b^4*d*e-24*a^3*c*d*e+10*a^2*b*c*d*e+28*a*b^2*c*d*e-28*b^3*c*d*e+49*a^2*c^2*d*e+17*a*b*c^2*d*e+21*b^2*c^2*d*e-29*a*c^3*d*e-18*b*c^3*d*e+18*c^4*d*e+46*a^3*d^2*e+27*a^2*b*d^2*e+5*a*b^2*d^2*e+17*b^3*d^2*e+42*a^2*c*d^2*e+37*a*b*c*d^2*e+48*b^2*c*d^2*e+34*a*c^2*d^2*e+35*b*c^2*d^2*e+8*c^3*d^2*e+a^2*d^3*e-27*a*b*d^3*e+31*b^2*d^3*e+16*a*c*d^3*e+49*b*c*d^3*e-c^2*d^3*e+3*a*d^4*e-22*b*d^4*e+50*c*d^4*e-18*d^5*e+26*a^4*e^2+23*a^3*b*e^2+23*a^2*b^2*e^2-47*a*b^3*e^2+32*b^4*e^2-5*a^3*c*e^2-10*a^2*b*c*e^2-32*a*b^2*c*e^2+21*b^3*c*e^2+50*a^2*c^2*e^2+9*a*b*c^2*e^2+39*b^2*c^2*e^2+24*a*c^3*e^2-15*b*c^3*e^2-12*c^4*e^2+25*a^3*d*e^2+39*a^2*b*d*e^2+34*a*b^2*d*e^2+9*b^3*d*e^2+4*a^2*c*d*e^2+45*a*b*c*d*e^2+14*b^2*c*d*e^2+24*a*c^2*d*e^2+25*b*c^2*d*e^2-33*c^3*d*e^2+43*a^2*d^2*e^2-27*a*b*d^2*e^2+19*b^2*d^2*e^2-20*a*c*d^2*e^2-35*b*c*d^2*e^2+45*c^2*d^2*e^2-17*a*d^3*e^2-48*b*d^3*e^2-25*c*d^3*e^2-19*d^4*e^2+44*a^3*e^3+10*a^2*b*e^3+21*a*b^2*e^3-42*b^3*e^3+40*a^2*c*e^3-50*a*b*c*e^3-9*a*c^2*e^3+39*b*c^2*e^3+25*c^3*e^3+23*a^2*d*e^3-14*a*b*d*e^3+16*b^2*d*e^3+16*a*c*d*e^3+43*b*c*d*e^3-13*c^2*d*e^3-9*a*d^2*e^3-7*b*d^2*e^3+26*c*d^2*e^3-44*d^3*e^3-24*a^2*e^4+34*a*b*e^4+41*b^2*e^4-9*a*c*e^4+13*b*c*e^4-37*c^2*e^4-20*a*d*e^4-37*b*d*e^4+29*c*d*e^4+34*d^2*e^4+45*a*e^5+8*b*e^5+7*d*e^5+e^6,
    1834 b^4*c^2-14*a^4*d^2-37*a^3*b*d^2+19*a^2*b^2*d^2+4*a*b^3*d^2+20*b^4*d^2+34*a^3*c*d^2+17*a^2*b*c*d^2-35*a*b^2*c*d^2-21*b^3*c*d^2+32*a^2*c^2*d^2-31*a*b*c^2*d^2+18*b^2*c^2*d^2+6*a*c^3*d^2+21*b*c^3*d^2+24*c^4*d^2-4*a^3*d^3+41*a^2*b*d^3-14*a*b^2*d^3+38*b^3*d^3-26*a^2*c*d^3-48*a*b*c*d^3-39*b^2*c*d^3+a*c^2*d^3+50*b*c^2*d^3-13*c^3*d^3+21*a^2*d^4-17*a*b*d^4+47*b^2*d^4+16*a*c*d^4+12*b*c*d^4+30*c^2*d^4+11*a*d^5-5*b*d^5-42*c*d^5-15*d^6+15*a^5*e-15*a^4*b*e+36*a^3*b^2*e-21*a^2*b^3*e-9*a*b^4*e-34*b^5*e-40*a^4*c*e+7*a^3*b*c*e-22*a^2*b^2*c*e+48*a*b^3*c*e-24*b^4*c*e-40*a^3*c^2*e+17*a^2*b*c^2*e-15*a*b^2*c^2*e+19*b^3*c^2*e-19*a^2*c^3*e-36*a*b*c^3*e+26*b^2*c^3*e-32*a*c^4*e-46*b*c^4*e+26*c^5*e-33*a^4*d*e+33*a^3*b*d*e+28*a^2*b^2*d*e+48*a*b^3*d*e-22*b^4*d*e+46*a^3*c*d*e+35*a^2*b*c*d*e-21*a*b^2*c*d*e+b^3*c*d*e+8*a^2*c^2*d*e+14*a*b*c^2*d*e+12*b^2*c^2*d*e-4*a*c^3*d*e+32*b*c^3*d*e-17*c^4*d*e-42*a^3*d^2*e-43*a^2*b*d^2*e+17*a*b^2*d^2*e+21*b^3*d^2*e-31*a^2*c*d^2*e-46*a*b*c*d^2*e-26*b^2*c*d^2*e+35*a*c^2*d^2*e+14*b*c^2*d^2*e-35*c^3*d^2*e-3*a^2*d^3*e+50*a*b*d^3*e+41*b^2*d^3*e+36*a*c*d^3*e+7*b*c*d^3*e+7*c^2*d^3*e+15*a*d^4*e-38*b*d^4*e-37*c*d^4*e-34*d^5*e+15*a^4*e^2+44*a^3*b*e^2+42*a^2*b^2*e^2+10*a*b^3*e^2-23*b^4*e^2+37*a^3*c*e^2+50*a^2*b*c*e^2+20*a*b^2*c*e^2-50*b^3*c*e^2-4*a^2*c^2*e^2-3*a*b*c^2*e^2-14*b^2*c^2*e^2-28*a*c^3*e^2-10*b*c^3*e^2-33*c^4*e^2-11*a^3*d*e^2-8*a^2*b*d*e^2-23*a*b^2*d*e^2-14*a^2*c*d*e^2+42*a*b*c*d*e^2-42*b^2*c*d*e^2-36*a*c^2*d*e^2+41*b*c^2*d*e^2-27*c^3*d*e^2+30*a^2*d^2*e^2+3*a*b*d^2*e^2+33*b^2*d^2*e^2-28*a*c*d^2*e^2-26*b*c*d^2*e^2+c^2*d^2*e^2+46*a*d^3*e^2+21*b*d^3*e^2-32*c*d^3*e^2-16*d^4*e^2-23*a^3*e^3+6*a^2*b*e^3+40*a*b^2*e^3-38*b^3*e^3+28*a^2*c*e^3-14*a*b*c*e^3+6*b^2*c*e^3+45*a*c^2*e^3+2*b*c^2*e^3-11*c^3*e^3+18*a^2*d*e^3+36*a*b*d*e^3-40*b^2*d*e^3-43*a*c*d*e^3+44*b*c*d*e^3-26*c^2*d*e^3+23*a*d^2*e^3+28*b*d^2*e^3+15*c*d^2*e^3-18*d^3*e^3-13*a^2*e^4-47*a*b*e^4-28*b^2*e^4-22*a*c*e^4+20*b*c*e^4+17*c^2*e^4+a*d*e^4+46*b*d*e^4-15*c*d*e^4+40*d^2*e^4+34*a*e^5-9*b*e^5-29*c*e^5+15*d*e^5+32*e^6,
    1835 a*b^3*c^2-37*a^4*d^2-46*a^3*b*d^2+11*a^2*b^2*d^2+21*a*b^3*d^2+21*b^4*d^2-23*a^3*c*d^2-3*a^2*b*c*d^2+3*a*b^2*c*d^2-32*b^3*c*d^2-37*a^2*c^2*d^2-36*a*b*c^2*d^2+37*b^2*c^2*d^2-6*a*c^3*d^2-34*b*c^3*d^2+48*c^4*d^2+28*a^3*d^3+43*a^2*b*d^3+43*a*b^2*d^3+17*b^3*d^3+26*a^2*c*d^3+33*a*b*c*d^3-2*b^2*c*d^3-21*a*c^2*d^3-14*b*c^2*d^3-39*c^3*d^3-a^2*d^4-22*a*b*d^4-39*b^2*d^4-35*a*c*d^4+13*b*c*d^4-24*c^2*d^4-11*a*d^5+16*b*d^5+30*c*d^5-22*d^6-22*a^5*e+19*a^4*b*e-15*a^3*b^2*e-8*a^2*b^3*e+14*a*b^4*e-5*b^5*e+6*a^4*c*e+6*a^3*b*c*e+46*a^2*b^2*c*e+39*a*b^3*c*e+21*b^4*c*e-22*a^3*c^2*e+26*a^2*b*c^2*e+24*a*b^2*c^2*e+10*b^3*c^2*e-23*a^2*c^3*e+26*a*b*c^3*e+b^2*c^3*e+39*a*c^4*e+35*b*c^4*e-19*c^5*e+17*a^4*d*e+38*a^3*b*d*e+9*a^2*b^2*d*e-19*a*b^3*d*e+42*b^4*d*e-11*a^3*c*d*e-6*a^2*b*c*d*e+10*a*b^2*c*d*e-10*b^3*c*d*e+41*a^2*c^2*d*e+10*a*b*c^2*d*e+46*b^2*c^2*d*e-33*a*c^3*d*e-6*b*c^3*d*e+11*c^4*d*e-33*a^3*d^2*e-22*a^2*b*d^2*e-6*a*b^2*d^2*e-11*b^3*d^2*e+34*a^2*c*d^2*e-39*a*b*c*d^2*e-45*b^2*c*d^2*e-17*a*c^2*d^2*e-8*b*c^2*d^2*e-41*c^3*d^2*e+13*a^2*d^3*e-11*a*b*d^3*e-13*b^2*d^3*e+3*a*c*d^3*e-28*b*c*d^3*e+33*c^2*d^3*e-8*a*d^4*e+24*b*d^4*e-34*c*d^4*e-7*d^5*e+26*a^4*e^2+12*a^3*b*e^2-20*a^2*b^2*e^2+5*a*b^3*e^2+30*b^4*e^2+6*a^3*c*e^2-45*a^2*b*c*e^2-49*a*b^2*c*e^2+43*b^3*c*e^2-29*a^2*c^2*e^2+4*a*b*c^2*e^2+17*b^2*c^2*e^2+13*a*c^3*e^2+21*b*c^3*e^2+16*c^4*e^2-25*a^3*d*e^2-7*a^2*b*d*e^2+42*a*b^2*d*e^2-44*b^3*d*e^2+19*a^2*c*d*e^2+5*a*b*c*d*e^2-38*b^2*c*d*e^2-17*a*c^2*d*e^2-15*b*c^2*d*e^2-26*c^3*d*e^2+47*a^2*d^2*e^2-42*a*b*d^2*e^2-26*b^2*d^2*e^2-50*a*c*d^2*e^2+25*b*c*d^2*e^2-3*c^2*d^2*e^2-47*a*d^3*e^2-40*b*d^3*e^2+24*c*d^3*e^2+35*d^4*e^2-22*a^3*e^3-5*a^2*b*e^3-10*a*b^2*e^3-7*b^3*e^3+6*a^2*c*e^3-16*a*b*c*e^3-28*b^2*c*e^3-43*a*c^2*e^3+24*b*c^2*e^3-9*c^3*e^3+42*a^2*d*e^3-12*a*b*d*e^3-29*b^2*d*e^3+35*a*c*d*e^3+27*b*c*d*e^3+40*c^2*d*e^3-17*a*d^2*e^3+29*b*d^2*e^3+38*c*d^2*e^3+13*d^3*e^3-23*a^2*e^4+32*a*b*e^4+5*b^2*e^4+11*a*c*e^4-b*c*e^4-37*c^2*e^4+3*a*d*e^4-3*b*d*e^4+37*c*d*e^4-28*d^2*e^4-33*a*e^5+18*b*e^5+45*c*e^5-11*d*e^5+42*e^6,
    1836 a^2*b^2*c^2+34*a^4*d^2+5*a^3*b*d^2-6*a^2*b^2*d^2-24*a*b^3*d^2+14*b^4*d^2+24*a^3*c*d^2-13*a^2*b*c*d^2+27*a*b^2*c*d^2+10*b^3*c*d^2-38*a^2*c^2*d^2+14*a*b*c^2*d^2+49*b^2*c^2*d^2+42*a*c^3*d^2-4*b*c^3*d^2+32*c^4*d^2+47*a^3*d^3+38*a^2*b*d^3+12*a*b^2*d^3-7*b^3*d^3+30*a^2*c*d^3+2*a*b*c*d^3+23*b^2*c*d^3-42*a*c^2*d^3+19*b*c^2*d^3-19*c^3*d^3-12*a^2*d^4+37*a*b*d^4+47*b^2*d^4+31*a*c*d^4+4*b*c*d^4-36*c^2*d^4-10*a*d^5-7*b*d^5+6*c*d^5-12*d^6-46*a^5*e-47*a^4*b*e+49*a^3*b^2*e+45*a^2*b^3*e+44*a*b^4*e+35*b^5*e+24*a^4*c*e+8*a^3*b*c*e-31*a^2*b^2*c*e+21*a*b^3*c*e+40*b^4*c*e-35*a^3*c^2*e+38*a^2*b*c^2*e+12*a*b^2*c^2*e-27*b^3*c^2*e+39*a^2*c^3*e-48*a*b*c^3*e+21*b^2*c^3*e+29*a*c^4*e-36*b*c^4*e-46*c^5*e-46*a^4*d*e+a^3*b*d*e+11*a^2*b^2*d*e+10*a*b^3*d*e-29*b^4*d*e-16*a^3*c*d*e-18*a^2*b*c*d*e+15*a*b^2*c*d*e-30*b^3*c*d*e-34*a^2*c^2*d*e+36*a*b*c^2*d*e+6*a*c^3*d*e-6*b*c^3*d*e+40*c^4*d*e+49*a^3*d^2*e-14*a^2*b*d^2*e-33*a*b^2*d^2*e+34*b^3*d^2*e-26*a^2*c*d^2*e-31*a*b*c*d^2*e-10*b^2*c*d^2*e+40*a*c^2*d^2*e+34*b*c^2*d^2*e+17*c^3*d^2*e-32*a^2*d^3*e-5*a*b*d^3*e-47*b^2*d^3*e-4*a*c*d^3*e+b*c*d^3*e+47*c^2*d^3*e+8*a*d^4*e+48*b*d^4*e-38*c*d^4*e+34*d^5*e-12*a^4*e^2+6*a^2*b^2*e^2-9*a*b^3*e^2-17*b^4*e^2-16*a^3*c*e^2-32*a^2*b*c*e^2+49*a*b^2*c*e^2+3*b^3*c*e^2+27*a^2*c^2*e^2-42*a*b*c^2*e^2-b^2*c^2*e^2+42*a*c^3*e^2+21*b*c^3*e^2-18*c^4*e^2-a^3*d*e^2+8*a^2*b*d*e^2+45*a*b^2*d*e^2+36*b^3*d*e^2+42*a^2*c*d*e^2-29*a*b*c*d*e^2+45*b^2*c*d*e^2-9*a*c^2*d*e^2-32*b*c^2*d*e^2-50*c^3*d*e^2-25*a^2*d^2*e^2+14*a*b*d^2*e^2-44*b^2*d^2*e^2-16*a*c*d^2*e^2+29*b*c*d^2*e^2+17*c^2*d^2*e^2-12*a*d^3*e^2+28*b*d^3*e^2+36*c*d^3*e^2+24*d^4*e^2+24*a^3*e^3-39*a^2*b*e^3-2*a*b^2*e^3-28*b^3*e^3+31*a^2*c*e^3-47*a*b*c*e^3-b^2*c*e^3-17*a*c^2*e^3+50*b*c^2*e^3-c^3*e^3-a^2*d*e^3+41*a*b*d*e^3-13*b^2*d*e^3-13*a*c*d*e^3+4*b*c*d*e^3+32*c^2*d*e^3-16*a*d^2*e^3-11*b*d^2*e^3+49*c*d^2*e^3+d^3*e^3+32*a^2*e^4-11*a*b*e^4+5*b^2*e^4+3*a*c*e^4-49*b*c*e^4+32*c^2*e^4-11*a*d*e^4-43*b*d*e^4+35*c*d*e^4-5*d^2*e^4+40*a*e^5+18*b*e^5+3*c*e^5+25*d*e^5+28*e^6,
    1837 a^3*b*c^2-30*a^4*d^2+28*a^3*b*d^2+41*a^2*b^2*d^2-11*a*b^3*d^2+27*b^4*d^2-36*a^3*c*d^2+27*a^2*b*c*d^2+50*a*b^2*c*d^2-34*b^3*c*d^2-21*a^2*c^2*d^2-6*a*b*c^2*d^2-8*b^2*c^2*d^2-14*a*c^3*d^2-35*b*c^3*d^2+21*c^4*d^2+37*a^3*d^3-14*a^2*b*d^3-41*a*b^2*d^3+30*b^3*d^3+35*a^2*c*d^3-28*a*b*c*d^3+26*b^2*c*d^3+19*a*c^2*d^3+b*c^2*d^3-5*c^3*d^3-29*a^2*d^4+25*a*b*d^4-38*b^2*d^4+50*a*c*d^4+10*b*c*d^4+30*c^2*d^4+31*a*d^5-49*b*d^5+39*c*d^5-40*d^6+16*a^5*e-47*a^4*b*e+39*a^3*b^2*e-41*a^2*b^3*e-27*a*b^4*e+10*b^5*e-20*a^4*c*e+23*a^3*b*c*e-39*a^2*b^2*c*e+28*a*b^3*c*e-16*b^4*c*e+20*a^3*c^2*e+22*a^2*b*c^2*e+45*a*b^2*c^2*e-b^3*c^2*e+37*a^2*c^3*e-3*a*b*c^3*e-49*b^2*c^3*e+8*a*c^4*e-3*b*c^4*e+41*c^5*e+33*a^4*d*e+35*a^3*b*d*e+10*a^2*b^2*d*e-42*a*b^3*d*e+14*b^4*d*e+a^3*c*d*e-28*a^2*b*c*d*e-26*a*b^2*c*d*e+35*b^3*c*d*e-24*a^2*c^2*d*e-3*a*b*c^2*d*e+20*b^2*c^2*d*e+a*c^3*d*e+8*b*c^3*d*e-41*c^4*d*e-12*a^3*d^2*e-43*a^2*b*d^2*e+32*a*b^2*d^2*e-26*b^3*d^2*e-37*a^2*c*d^2*e+50*a*b*c*d^2*e-21*b^2*c*d^2*e+46*a*c^2*d^2*e-26*b*c^2*d^2*e+41*c^3*d^2*e+39*a^2*d^3*e+6*a*b*d^3*e-34*b^2*d^3*e+13*a*c*d^3*e-12*b*c*d^3*e-7*c^2*d^3*e-31*a*d^4*e+19*b*d^4*e-22*c*d^4*e+44*d^5*e+15*a^4*e^2-24*a^3*b*e^2-23*a^2*b^2*e^2-25*a*b^3*e^2+21*b^4*e^2+28*a^3*c*e^2+32*a^2*b*c*e^2+6*a*b^2*c*e^2-6*b^3*c*e^2-32*a^2*c^2*e^2+37*a*b*c^2*e^2-15*b^2*c^2*e^2-3*a*c^3*e^2+5*b*c^3*e^2+33*c^4*e^2+50*a^3*d*e^2+46*a^2*b*d*e^2+3*a*b^2*d*e^2+11*b^3*d*e^2-6*a^2*c*d*e^2-26*a*b*c*d*e^2-26*b^2*c*d*e^2+49*a*c^2*d*e^2+48*b*c^2*d*e^2+14*c^3*d*e^2-11*a^2*d^2*e^2-49*a*b*d^2*e^2+37*b^2*d^2*e^2-20*a*c*d^2*e^2+10*b*c*d^2*e^2+22*c^2*d^2*e^2+46*a*d^3*e^2+3*b*d^3*e^2+24*c*d^3*e^2-49*d^4*e^2-31*a^3*e^3+35*a^2*b*e^3-38*a*b^2*e^3+4*b^3*e^3-10*a^2*c*e^3+a*b*c*e^3-15*b^2*c*e^3-8*a*c^2*e^3-18*b*c^2*e^3-26*c^3*e^3+26*a^2*d*e^3+23*a*b*d*e^3+4*b^2*d*e^3-37*a*c*d*e^3+49*b*c*d*e^3-9*c^2*d*e^3-39*a*d^2*e^3+44*b*d^2*e^3+44*c*d^2*e^3+6*d^3*e^3+49*a^2*e^4+23*a*b*e^4+15*a*c*e^4-10*b*c*e^4+24*c^2*e^4+23*a*d*e^4-34*b*d*e^4-9*c*d*e^4-11*d^2*e^4+49*a*e^5+32*b*e^5-12*c*e^5+32*d*e^5+13*e^6,
    1838 a^4*c^2-10*a^4*d^2+38*a^3*b*d^2-a^2*b^2*d^2+6*a*b^3*d^2+39*b^4*d^2-11*a^3*c*d^2+9*a^2*b*c*d^2+21*a*b^2*c*d^2-13*b^3*c*d^2+22*a^2*c^2*d^2+33*a*b*c^2*d^2-19*b^2*c^2*d^2-18*a*c^3*d^2-38*b*c^3*d^2-50*c^4*d^2-11*a^3*d^3-41*a^2*b*d^3-9*a*b^2*d^3-40*b^3*d^3-8*a^2*c*d^3+49*a*b*c*d^3+34*b^2*c*d^3+36*a*c^2*d^3-37*b*c^2*d^3+14*c^3*d^3-2*a^2*d^4+34*a*b*d^4+47*b^2*d^4+47*a*c*d^4-20*b*c*d^4-13*c^2*d^4+6*a*d^5-31*b*d^5+28*c*d^5-31*d^6-3*a^5*e+39*a^4*b*e+16*a^3*b^2*e+16*a^2*b^3*e+9*a*b^4*e+37*b^5*e-39*a^4*c*e+5*a^3*b*c*e+36*a^2*b^2*c*e-7*a*b^3*c*e+16*b^4*c*e-43*a^3*c^2*e-5*a^2*b*c^2*e+30*a*b^2*c^2*e+12*b^3*c^2*e-26*a^2*c^3*e+45*a*b*c^3*e+9*b^2*c^3*e+17*a*c^4*e-19*b*c^4*e-6*c^5*e-47*a^4*d*e-33*a^3*b*d*e+12*a^2*b^2*d*e+4*a*b^3*d*e+33*b^4*d*e+3*a^3*c*d*e-33*a^2*b*c*d*e-13*a*b^2*c*d*e+28*b^3*c*d*e-46*a^2*c^2*d*e-32*a*b*c^2*d*e+26*b^2*c^2*d*e-14*a*c^3*d*e+8*b*c^3*d*e-40*c^4*d*e+38*a^3*d^2*e-29*a^2*b*d^2*e+45*a*b^2*d^2*e+6*b^3*d^2*e-34*a^2*c*d^2*e-15*a*b*c*d^2*e-20*b^2*c*d^2*e-24*a*c^2*d^2*e-5*b*c^2*d^2*e-36*c^3*d^2*e+17*a^2*d^3*e-17*a*b*d^3*e-18*b^2*d^3*e+44*a*c*d^3*e+11*b*c*d^3*e-14*c^2*d^3*e-31*a*d^4*e-39*b*d^4*e-48*c*d^4*e+20*d^5*e+a^4*e^2-8*a^3*b*e^2+13*a^2*b^2*e^2-18*a*b^3*e^2-28*b^4*e^2-26*a^3*c*e^2+21*a^2*b*c*e^2-12*a*b^2*c*e^2-46*b^3*c*e^2-45*a^2*c^2*e^2+32*a*b*c^2*e^2-9*b^2*c^2*e^2+36*a*c^3*e^2+38*b*c^3*e^2-15*c^4*e^2-21*a^3*d*e^2+25*a^2*b*d*e^2-6*a*b^2*d*e^2+2*b^3*d*e^2-21*a*b*c*d*e^2+38*b^2*c*d*e^2-3*a*c^2*d*e^2-29*b*c^2*d*e^2-9*c^3*d*e^2-20*a^2*d^2*e^2+32*a*b*d^2*e^2-12*b^2*d^2*e^2-21*a*c*d^2*e^2-b*c*d^2*e^2-31*c^2*d^2*e^2-24*a*d^3*e^2-16*b*d^3*e^2+47*c*d^3*e^2+41*d^4*e^2-12*a^3*e^3-38*a^2*b*e^3-23*a*b^2*e^3+44*b^3*e^3-7*a^2*c*e^3+28*a*b*c*e^3+42*b^2*c*e^3+10*a*c^2*e^3-12*b*c^2*e^3-7*c^3*e^3+33*a^2*d*e^3+37*a*b*d*e^3+39*b^2*d*e^3-43*a*c*d*e^3-21*b*c*d*e^3+20*c^2*d*e^3+48*a*d^2*e^3+25*b*d^2*e^3-20*c*d^2*e^3+35*d^3*e^3+a^2*e^4+40*a*b*e^4+23*b^2*e^4+45*a*c*e^4-4*b*c*e^4-15*c^2*e^4+42*a*d*e^4-49*b*d*e^4-28*c*d*e^4-8*d^2*e^4-38*a*e^5-12*b*e^5+42*c*e^5+11*d*e^5+45*e^6,
    1839 b^5*c+40*a^4*d^2-47*a^3*b*d^2+16*a^2*b^2*d^2+18*a*b^3*d^2+33*b^4*d^2+9*a^3*c*d^2-38*a^2*b*c*d^2-22*a*b^2*c*d^2+8*b^3*c*d^2-21*a^2*c^2*d^2-2*a*b*c^2*d^2+33*b^2*c^2*d^2+5*a*c^3*d^2-50*b*c^3*d^2-35*c^4*d^2+29*a^3*d^3+25*a^2*b*d^3-38*a*b^2*d^3+17*b^3*d^3-32*a^2*c*d^3-44*a*b*c*d^3-20*b^2*c*d^3-26*a*c^2*d^3-37*b*c^2*d^3+47*c^3*d^3+19*a^2*d^4-34*a*b*d^4-20*b^2*d^4+31*a*c*d^4-14*b*c*d^4-37*c^2*d^4-37*a*d^5+7*b*d^5-42*c*d^5+16*d^6-23*a^5*e-48*a^3*b^2*e-41*a^2*b^3*e+6*a*b^4*e+49*a^4*c*e+34*a^3*b*c*e-8*a^2*b^2*c*e+17*a*b^3*c*e+39*b^4*c*e+2*a^3*c^2*e+42*a^2*b*c^2*e+21*a*b^2*c^2*e-8*b^3*c^2*e-11*a^2*c^3*e+50*a*b*c^3*e+25*b^2*c^3*e-46*a*c^4*e-4*b*c^4*e-10*c^5*e+12*a^4*d*e+9*a^3*b*d*e-46*a^2*b^2*d*e-12*a*b^3*d*e-44*b^4*d*e-35*a^3*c*d*e-46*a^2*b*c*d*e+17*a*b^2*c*d*e+48*b^3*c*d*e-28*a^2*c^2*d*e-50*a*b*c^2*d*e-46*b^2*c^2*d*e+4*a*c^3*d*e-41*b*c^3*d*e-8*c^4*d*e+42*a^3*d^2*e+39*a^2*b*d^2*e+27*a*b^2*d^2*e-40*b^3*d^2*e-8*a^2*c*d^2*e+40*a*b*c*d^2*e-20*b^2*c*d^2*e+35*a*c^2*d^2*e-26*b*c^2*d^2*e-2*c^3*d^2*e-14*a^2*d^3*e-34*a*b*d^3*e-24*b^2*d^3*e+22*a*c*d^3*e+45*b*c*d^3*e-9*c^2*d^3*e-38*a*d^4*e-14*b*d^4*e+50*c*d^4*e-49*d^5*e-23*a^4*e^2-10*a^3*b*e^2-4*a^2*b^2*e^2+49*a*b^3*e^2+28*b^4*e^2-50*a^3*c*e^2+38*a^2*b*c*e^2+26*a*b^2*c*e^2-44*b^3*c*e^2+3*a^2*c^2*e^2+46*a*b*c^2*e^2+42*b^2*c^2*e^2+9*a*c^3*e^2+18*b*c^3*e^2-9*c^4*e^2+16*a^3*d*e^2-42*a^2*b*d*e^2+37*a*b^2*d*e^2-10*b^3*d*e^2-41*a^2*c*d*e^2-5*a*b*c*d*e^2+19*b^2*c*d*e^2+17*a*c^2*d*e^2-19*b*c^2*d*e^2+16*c^3*d*e^2+21*a^2*d^2*e^2-17*a*b*d^2*e^2-15*b^2*d^2*e^2-49*a*c*d^2*e^2+36*b*c*d^2*e^2-41*c^2*d^2*e^2+37*a*d^3*e^2-13*b*d^3*e^2-27*c*d^3*e^2-37*d^4*e^2+37*a^3*e^3-50*a^2*b*e^3+21*a*b^2*e^3+14*b^3*e^3-16*a^2*c*e^3+24*a*b*c*e^3-44*b^2*c*e^3+18*b*c^2*e^3+3*c^3*e^3-38*a^2*d*e^3+41*a*b*d*e^3+29*b^2*d*e^3-9*a*c*d*e^3+9*b*c*d*e^3-39*c^2*d*e^3+42*a*d^2*e^3+22*b*d^2*e^3+18*c*d^2*e^3+35*d^3*e^3+43*a^2*e^4+5*a*b*e^4+5*b^2*e^4+16*a*c*e^4-37*b*c*e^4+20*c^2*e^4-10*a*d*e^4+45*b*d*e^4-46*c*d*e^4+42*d^2*e^4+14*a*e^5+15*b*e^5+38*c*e^5+49*d*e^5+3*e^6,
    1840 a*b^4*c+32*a^4*d^2+43*a^3*b*d^2+49*a^2*b^2*d^2+38*a*b^3*d^2+47*b^4*d^2+19*a^3*c*d^2+43*a^2*b*c*d^2-25*a*b^2*c*d^2+25*b^3*c*d^2+26*a^2*c^2*d^2-5*a*b*c^2*d^2-19*b^2*c^2*d^2+33*a*c^3*d^2-3*b*c^3*d^2-37*c^4*d^2+18*a^3*d^3-27*a^2*b*d^3-33*a*b^2*d^3-49*b^3*d^3+48*a^2*c*d^3-12*a*b*c*d^3+17*b^2*c*d^3+6*a*c^2*d^3-36*b*c^2*d^3+36*c^3*d^3+a^2*d^4-12*b^2*d^4-3*a*c*d^4-43*b*c*d^4-24*c^2*d^4-14*a*d^5-43*b*d^5-20*c*d^5+24*d^6-42*a^5*e-48*a^4*b*e+29*a^3*b^2*e-29*a^2*b^3*e-37*a*b^4*e+b^5*e-31*a^4*c*e+35*a^3*b*c*e+9*a^2*b^2*c*e-17*a*b^3*c*e-34*b^4*c*e+42*a^3*c^2*e-47*a^2*b*c^2*e+31*a*b^2*c^2*e+9*b^3*c^2*e+48*a^2*c^3*e-15*a*b*c^3*e+34*b^2*c^3*e+15*a*c^4*e-23*b*c^4*e+45*c^5*e-12*a^4*d*e+42*a^3*b*d*e-15*a^2*b^2*d*e-14*a*b^3*d*e+33*b^4*d*e-41*a^3*c*d*e+9*a^2*b*c*d*e+15*a*b^2*c*d*e-44*b^3*c*d*e-32*a^2*c^2*d*e+9*a*b*c^2*d*e+22*b^2*c^2*d*e-23*a*c^3*d*e+43*b*c^3*d*e-37*c^4*d*e+19*a^3*d^2*e-47*a^2*b*d^2*e+39*a*b^2*d^2*e-24*b^3*d^2*e-44*a^2*c*d^2*e-27*a*b*c*d^2*e-30*b^2*c*d^2*e-19*a*c^2*d^2*e-28*b*c^2*d^2*e-30*c^3*d^2*e-41*a^2*d^3*e+17*a*b*d^3*e-30*b^2*d^3*e+3*a*c*d^3*e+50*b*c*d^3*e+47*c^2*d^3*e+47*a*d^4*e-40*b*d^4*e+3*c*d^4*e+28*d^5*e-35*a^4*e^2+23*a^3*b*e^2+2*a^2*b^2*e^2-17*a*b^3*e^2-22*b^4*e^2+35*a^3*c*e^2-38*a^2*b*c*e^2-7*a*b^2*c*e^2-12*b^3*c*e^2+38*a^2*c^2*e^2-12*a*b*c^2*e^2+13*b^2*c^2*e^2+19*b*c^3*e^2-25*c^4*e^2-45*a^3*d*e^2-35*a^2*b*d*e^2+41*a*b^2*d*e^2+10*b^3*d*e^2+17*a^2*c*d*e^2-10*a*b*c*d*e^2-42*b^2*c*d*e^2+13*a*c^2*d*e^2-3*b*c^2*d*e^2-42*c^3*d*e^2-2*a^2*d^2*e^2-7*a*b*d^2*e^2+46*b^2*d^2*e^2+43*a*c*d^2*e^2+29*b*c*d^2*e^2+19*c^2*d^2*e^2-26*a*d^3*e^2+28*b*d^3*e^2+27*c*d^3*e^2+32*d^4*e^2+49*a^3*e^3+48*a^2*b*e^3+34*a*b^2*e^3-48*b^3*e^3+12*a^2*c*e^3+30*a*b*c*e^3+18*b^2*c*e^3-50*a*c^2*e^3+13*b*c^2*e^3+48*c^3*e^3+17*a^2*d*e^3+22*a*b*d*e^3-6*b^2*d*e^3-40*a*c*d*e^3-33*b*c*d*e^3-2*c^2*d*e^3-48*a*d^2*e^3-7*b*d^2*e^3+32*c*d^2*e^3-31*d^3*e^3+46*a^2*e^4+17*a*b*e^4+14*b^2*e^4+8*a*c*e^4-43*b*c*e^4+24*a*d*e^4-41*b*d*e^4-35*c*d*e^4-44*d^2*e^4-29*a*e^5+11*b*e^5+50*c*e^5-32*d*e^5+23*e^6,
    1841 a^2*b^3*c-22*a^4*d^2+38*a^3*b*d^2+10*a^2*b^2*d^2-31*a*b^3*d^2+42*b^4*d^2-7*a^3*c*d^2-47*a^2*b*c*d^2+37*a*b^2*c*d^2-23*b^3*c*d^2-43*a^2*c^2*d^2+38*a*b*c^2*d^2+18*b^2*c^2*d^2+18*a*c^3*d^2+25*b*c^3*d^2+4*c^4*d^2+36*a^3*d^3-21*a^2*b*d^3+35*a*b^2*d^3+28*b^3*d^3+13*a^2*c*d^3+36*a*b*c*d^3-33*b^2*c*d^3+9*a*c^2*d^3+18*b*c^2*d^3-49*c^3*d^3-5*a^2*d^4-8*a*b*d^4-34*b^2*d^4-43*a*c*d^4-47*b*c*d^4-12*c^2*d^4+34*a*d^5+50*b*d^5-13*c*d^5-20*d^6+29*a^5*e-10*a^4*b*e+17*a^3*b^2*e+7*a^2*b^3*e+45*a*b^4*e-23*b^5*e+41*a^4*c*e+31*a^3*b*c*e+9*a^2*b^2*c*e+3*a*b^3*c*e-11*b^4*c*e+6*a^3*c^2*e+11*a^2*b*c^2*e-42*a*b^2*c^2*e+17*b^3*c^2*e+5*a^2*c^3*e-44*a*b*c^3*e-44*b^2*c^3*e+42*a*c^4*e-29*b*c^4*e+6*c^5*e+7*a^4*d*e-50*a^3*b*d*e+29*a^2*b^2*d*e-42*a*b^3*d*e-25*b^4*d*e-5*a^3*c*d*e-33*a^2*b*c*d*e+36*a*b^2*c*d*e+47*b^3*c*d*e-41*a^2*c^2*d*e+4*a*b*c^2*d*e+44*b^2*c^2*d*e-10*a*c^3*d*e-2*b*c^3*d*e+20*c^4*d*e+21*a^3*d^2*e+6*a^2*b*d^2*e-50*a*b^2*d^2*e+35*b^3*d^2*e-8*a^2*c*d^2*e-17*a*b*c*d^2*e+7*b^2*c*d^2*e+35*a*c^2*d^2*e+28*b*c^2*d^2*e+25*c^3*d^2*e-6*a^2*d^3*e-16*a*b*d^3*e+35*b^2*d^3*e-12*a*c*d^3*e+46*b*c*d^3*e+7*c^2*d^3*e+16*a*d^4*e-24*b*d^4*e+32*c*d^4*e-26*d^5*e+6*a^4*e^2+48*a^3*b*e^2-27*a^2*b^2*e^2+15*a*b^3*e^2-15*b^4*e^2-25*a^3*c*e^2+39*a^2*b*c*e^2-21*a*b^2*c*e^2-8*b^3*c*e^2+15*a^2*c^2*e^2+31*a*b*c^2*e^2+33*b^2*c^2*e^2-31*a*c^3*e^2-27*b*c^3*e^2-16*c^4*e^2+41*a^3*d*e^2-17*a^2*b*d*e^2-25*a*b^2*d*e^2-3*b^3*d*e^2+6*a^2*c*d*e^2-24*a*b*c*d*e^2+b^2*c*d*e^2-a*c^2*d*e^2-15*b*c^2*d*e^2+16*c^3*d*e^2+42*a^2*d^2*e^2+6*a*b*d^2*e^2-25*b^2*d^2*e^2+21*a*c*d^2*e^2+48*b*c*d^2*e^2-10*c^2*d^2*e^2+31*b*d^3*e^2-32*c*d^3*e^2+2*d^4*e^2+35*a^3*e^3+42*a^2*b*e^3+10*a*b^2*e^3-38*b^3*e^3+32*a^2*c*e^3+34*a*b*c*e^3+14*b^2*c*e^3-7*a*c^2*e^3+22*b*c^2*e^3+37*c^3*e^3+2*a^2*d*e^3-42*a*b*d*e^3-6*b^2*d*e^3-9*a*c*d*e^3+22*b*c*d*e^3+19*c^2*d*e^3-21*a*d^2*e^3-37*b*d^2*e^3+43*c*d^2*e^3-36*d^3*e^3+16*a^2*e^4-21*a*b*e^4+44*b^2*e^4-48*a*c*e^4+35*b*c*e^4-25*c^2*e^4+15*a*d*e^4+42*b*d*e^4-27*c*d*e^4+27*d^2*e^4-25*a*e^5-12*b*e^5+20*c*e^5+7*d*e^5+3*e^6,
    1842 a^3*b^2*c-24*a^4*d^2+20*a^3*b*d^2+24*a^2*b^2*d^2-29*a*b^3*d^2-24*b^4*d^2+13*a^3*c*d^2+31*a*b^2*c*d^2-26*b^3*c*d^2-29*a^2*c^2*d^2-27*a*b*c^2*d^2+4*b^2*c^2*d^2+23*a*c^3*d^2+42*b*c^3*d^2-47*c^4*d^2+50*a^3*d^3+48*a^2*b*d^3-22*a*b^2*d^3+16*b^3*d^3-46*a^2*c*d^3-43*a*b*c*d^3+50*b^2*c*d^3-35*a*c^2*d^3-29*b*c^2*d^3-12*c^3*d^3+23*a^2*d^4+31*a*b*d^4+22*b^2*d^4-27*a*c*d^4-25*b*c*d^4-41*c^2*d^4+42*a*d^5-50*b*d^5+33*c*d^5+11*d^6+19*a^5*e-22*a^4*b*e+33*a^3*b^2*e+43*a^2*b^3*e+43*a*b^4*e-5*b^5*e-14*a^4*c*e-46*a^3*b*c*e-21*a^2*b^2*c*e+29*a*b^3*c*e+15*b^4*c*e+12*a^3*c^2*e-a^2*b*c^2*e-43*a*b^2*c^2*e+48*b^3*c^2*e+26*a^2*c^3*e-46*a*b*c^3*e-35*b^2*c^3*e+a*c^4*e+16*b*c^4*e+6*c^5*e-47*a^4*d*e-a^3*b*d*e+a^2*b^2*d*e-32*a*b^3*d*e-19*b^4*d*e-44*a^3*c*d*e+22*a^2*b*c*d*e+40*a*b^2*c*d*e-19*b^3*c*d*e+12*a^2*c^2*d*e-a*b*c^2*d*e-23*b^2*c^2*d*e-11*a*c^3*d*e-26*b*c^3*d*e-4*c^4*d*e-32*a^3*d^2*e-13*a^2*b*d^2*e-b^3*d^2*e+8*a^2*c*d^2*e-28*a*b*c*d^2*e+46*b^2*c*d^2*e-24*a*c^2*d^2*e+26*b*c^2*d^2*e+27*c^3*d^2*e+12*a^2*d^3*e+10*a*b*d^3*e-32*b^2*d^3*e-12*a*c*d^3*e-30*b*c*d^3*e+50*c^2*d^3*e+6*a*d^4*e+32*b*d^4*e+6*c*d^4*e-48*d^5*e+14*a^4*e^2+48*a^3*b*e^2+16*a^2*b^2*e^2+34*a*b^3*e^2+39*b^4*e^2+2*a^3*c*e^2+5*a^2*b*c*e^2-11*a*b^2*c*e^2-4*b^3*c*e^2-39*a^2*c^2*e^2+46*a*b*c^2*e^2-16*b^2*c^2*e^2-46*a*c^3*e^2-b*c^3*e^2+47*c^4*e^2-3*a^3*d*e^2-48*a^2*b*d*e^2-34*a*b^2*d*e^2+19*b^3*d*e^2+46*a^2*c*d*e^2-49*a*b*c*d*e^2-45*b^2*c*d*e^2-4*a*c^2*d*e^2+33*b*c^2*d*e^2-8*c^3*d*e^2-39*a^2*d^2*e^2-34*a*b*d^2*e^2+9*b^2*d^2*e^2-15*a*c*d^2*e^2+b*c*d^2*e^2+44*c^2*d^2*e^2-39*a*d^3*e^2+10*b*d^3*e^2+9*c*d^3*e^2-6*d^4*e^2-7*a^3*e^3+2*a^2*b*e^3+39*a*b^2*e^3+4*b^3*e^3-49*a^2*c*e^3+48*a*b*c*e^3+b^2*c*e^3+28*a*c^2*e^3-29*b*c^2*e^3-7*c^3*e^3+23*a^2*d*e^3+16*a*b*d*e^3+24*b^2*d*e^3-47*a*c*d*e^3+20*b*c*d*e^3+26*c^2*d*e^3+9*a*d^2*e^3+49*b*d^2*e^3+32*c*d^2*e^3+33*d^3*e^3-3*a^2*e^4+48*a*b*e^4-18*b^2*e^4-43*a*c*e^4-14*b*c*e^4-29*c^2*e^4+49*a*d*e^4-49*b*d*e^4-18*c*d*e^4-18*d^2*e^4+45*a*e^5-40*b*e^5-13*c*e^5+3*d*e^5+5*e^6,
    1843 a^4*b*c-38*a^4*d^2+23*a^3*b*d^2-28*a^2*b^2*d^2-49*a*b^3*d^2-37*b^4*d^2+46*a^3*c*d^2-39*a^2*b*c*d^2+31*a*b^2*c*d^2+43*b^3*c*d^2+40*a^2*c^2*d^2-30*a*b*c^2*d^2-7*b^2*c^2*d^2+32*a*c^3*d^2+50*b*c^3*d^2+13*c^4*d^2-9*a^3*d^3+23*a^2*b*d^3-12*a*b^2*d^3-42*b^3*d^3+4*a^2*c*d^3-3*a*b*c*d^3+50*b^2*c*d^3+16*a*c^2*d^3+40*b*c^2*d^3-23*c^3*d^3+39*a^2*d^4+35*a*b*d^4-45*b^2*d^4+45*a*c*d^4-15*b*c*d^4-26*c^2*d^4+29*a*d^5+37*b*d^5+3*c*d^5-22*d^6-8*a^5*e+15*a^4*b*e+19*a^3*b^2*e-12*a^2*b^3*e+22*a*b^4*e-48*b^5*e+32*a^4*c*e+48*a^3*b*c*e-14*a^2*b^2*c*e+43*a*b^3*c*e-23*b^4*c*e-36*a^3*c^2*e+36*a^2*b*c^2*e+15*a*b^2*c^2*e-34*b^3*c^2*e-16*a^2*c^3*e+20*a*b*c^3*e-23*b^2*c^3*e+39*a*c^4*e-37*b*c^4*e+43*c^5*e+30*a^4*d*e-38*a^3*b*d*e-25*a^2*b^2*d*e-5*a*b^3*d*e-24*b^4*d*e+5*a^3*c*d*e-47*a^2*b*c*d*e-17*a*b^2*c*d*e+30*b^3*c*d*e-a^2*c^2*d*e-43*a*b*c^2*d*e-6*b^2*c^2*d*e-46*a*c^3*d*e-37*b*c^3*d*e-43*c^4*d*e+48*a^3*d^2*e+20*a^2*b*d^2*e+21*a*b^2*d^2*e+35*b^3*d^2*e-47*a^2*c*d^2*e+27*a*b*c*d^2*e+b^2*c*d^2*e+7*a*c^2*d^2*e-11*b*c^2*d^2*e+46*c^3*d^2*e+40*a^2*d^3*e+43*a*b*d^3*e-31*b^2*d^3*e+22*a*c*d^3*e+2*b*c*d^3*e-18*c^2*d^3*e+35*a*d^4*e+31*b*d^4*e-48*c*d^4*e+43*d^5*e+16*a^4*e^2+27*a^3*b*e^2-28*a^2*b^2*e^2-13*a*b^3*e^2+17*b^4*e^2-34*a^3*c*e^2+12*a^2*b*c*e^2-25*a*b^2*c*e^2+7*b^3*c*e^2-19*a^2*c^2*e^2-31*a*b*c^2*e^2+22*b^2*c^2*e^2-45*a*c^3*e^2-25*b*c^3*e^2+7*c^4*e^2-9*a^3*d*e^2-3*a^2*b*d*e^2+20*a*b^2*d*e^2+28*b^3*d*e^2+41*a^2*c*d*e^2-2*a*b*c*d*e^2+8*b^2*c*d*e^2-20*a*c^2*d*e^2+35*b*c^2*d*e^2-11*c^3*d*e^2-27*a^2*d^2*e^2-29*a*b*d^2*e^2+28*b^2*d^2*e^2+10*a*c*d^2*e^2-8*b*c*d^2*e^2+13*c^2*d^2*e^2-32*a*d^3*e^2+23*b*d^3*e^2-50*c*d^3*e^2+20*d^4*e^2+49*a^3*e^3+9*a^2*b*e^3+27*a*b^2*e^3-15*b^3*e^3-38*a^2*c*e^3+26*a*b*c*e^3-47*b^2*c*e^3+10*a*c^2*e^3-21*b*c^2*e^3+2*c^3*e^3+7*a^2*d*e^3-8*a*b*d*e^3-25*b^2*d*e^3+15*a*c*d*e^3+17*b*c*d*e^3-39*c^2*d*e^3+7*a*d^2*e^3-47*b*d^2*e^3+6*c*d^2*e^3+5*d^3*e^3+21*a^2*e^4-49*a*b*e^4-35*b^2*e^4+32*a*c*e^4-16*b*c*e^4+7*c^2*e^4-25*a*d*e^4+30*b*d*e^4-31*c*d*e^4-21*d^2*e^4+42*a*e^5-b*e^5+14*c*e^5+18*d*e^5+28*e^6,
    1844 a^5*c-2*a^4*d^2-22*a^3*b*d^2-38*a^2*b^2*d^2+10*a*b^3*d^2+32*b^4*d^2-28*a^3*c*d^2+11*a^2*b*c*d^2-12*a*b^2*c*d^2-39*b^3*c*d^2+43*a^2*c^2*d^2+39*a*b*c^2*d^2-24*b^2*c^2*d^2+27*a*c^3*d^2+47*b*c^3*d^2+9*c^4*d^2+12*a^3*d^3+34*a^2*b*d^3-37*a*b^2*d^3+18*b^3*d^3+45*a^2*c*d^3+21*a*b*c*d^3+29*b^2*c*d^3+31*a*c^2*d^3+23*b*c^2*d^3+44*c^3*d^3-19*a^2*d^4+32*a*b*d^4+46*b^2*d^4+27*a*c*d^4+8*b*c*d^4-20*c^2*d^4-35*a*d^5-21*b*d^5+15*c*d^5-45*d^6-38*a^5*e-35*a^4*b*e-28*a^3*b^2*e-30*a^2*b^3*e-19*a*b^4*e-49*b^5*e+34*a^4*c*e-2*a^3*b*c*e-16*a^2*b^2*c*e-8*a*b^3*c*e-10*b^4*c*e-22*a^3*c^2*e+50*a^2*b*c^2*e-29*a*b^2*c^2*e-19*b^3*c^2*e+39*a^2*c^3*e-4*a*b*c^3*e-36*b^2*c^3*e-24*a*c^4*e-2*b*c^4*e-12*c^5*e-22*a^4*d*e-22*a^3*b*d*e-a^2*b^2*d*e-42*a*b^3*d*e-10*b^4*d*e-7*a^3*c*d*e-6*a^2*b*c*d*e+5*a*b^2*c*d*e+36*b^3*c*d*e-5*a^2*c^2*d*e-21*a*b*c^2*d*e-14*b^2*c^2*d*e-21*a*c^3*d*e+18*b*c^3*d*e+49*c^4*d*e-32*a^3*d^2*e-5*a^2*b*d^2*e-45*a*b^2*d^2*e+6*b^3*d^2*e-40*a*b*c*d^2*e-17*b^2*c*d^2*e-47*a*c^2*d^2*e+12*b*c^2*d^2*e-18*c^3*d^2*e-a^2*d^3*e+6*a*b*d^3*e+2*b^2*d^3*e-29*a*c*d^3*e+15*b*c*d^3*e+21*c^2*d^3*e-36*a*d^4*e-7*b*d^4*e+c*d^4*e-23*d^5*e-24*a^4*e^2+47*a^3*b*e^2+19*a^2*b^2*e^2-44*a*b^3*e^2-13*b^4*e^2+49*a^3*c*e^2+39*a^2*b*c*e^2+44*a*b^2*c*e^2+41*b^3*c*e^2-29*a^2*c^2*e^2+24*a*b*c^2*e^2+34*a*c^3*e^2+14*b*c^3*e^2+7*c^4*e^2+44*a^3*d*e^2+22*a^2*b*d*e^2+41*a*b^2*d*e^2+21*a^2*c*d*e^2+12*a*b*c*d*e^2-33*b^2*c*d*e^2-40*a*c^2*d*e^2+16*b*c^2*d*e^2-36*c^3*d*e^2+13*a^2*d^2*e^2-22*a*b*d^2*e^2+28*b^2*d^2*e^2+29*a*c*d^2*e^2+50*b*c*d^2*e^2+48*c^2*d^2*e^2+40*a*d^3*e^2+2*c*d^3*e^2-5*d^4*e^2-37*a^3*e^3+49*a^2*b*e^3-10*a*b^2*e^3-41*b^3*e^3+11*a^2*c*e^3-37*a*b*c*e^3+26*b^2*c*e^3-39*a*c^2*e^3-46*b*c^2*e^3-3*c^3*e^3+47*a^2*d*e^3+5*a*b*d*e^3-45*b^2*d*e^3+28*a*c*d*e^3+22*b*c*d*e^3+29*c^2*d*e^3+11*a*d^2*e^3+21*b*d^2*e^3+14*c*d^2*e^3+14*d^3*e^3+32*a^2*e^4-27*a*b*e^4-47*b^2*e^4-6*b*c*e^4-38*c^2*e^4-38*a*d*e^4-17*b*d*e^4+20*c*d*e^4-d^2*e^4-4*a*e^5-11*b*e^5-41*c*e^5+25*d*e^5-e^6,
    1845 b^6-11*a^4*d^2+23*a^3*b*d^2+41*a^2*b^2*d^2+7*a*b^3*d^2+10*b^4*d^2-31*a^3*c*d^2+10*a^2*b*c*d^2+7*a*b^2*c*d^2+36*b^3*c*d^2-10*a^2*c^2*d^2+9*a*b*c^2*d^2-41*b^2*c^2*d^2-26*a*c^3*d^2+26*b*c^3*d^2+12*c^4*d^2+36*a^3*d^3-35*a^2*b*d^3+12*a*b^2*d^3-8*b^3*d^3+23*a^2*c*d^3+16*a*b*c*d^3-24*b^2*c*d^3+17*a*c^2*d^3-29*b*c^2*d^3-48*c^3*d^3+33*a^2*d^4+30*a*b*d^4-41*b^2*d^4-23*a*c*d^4+8*b*c*d^4-10*c^2*d^4+22*a*d^5+5*b*d^5-32*c*d^5+19*d^6+19*a^5*e+21*a^4*b*e-29*a^3*b^2*e+10*a^2*b^3*e-6*a*b^4*e-10*b^5*e-35*a^4*c*e-47*a^3*b*c*e-16*a^2*b^2*c*e-35*a*b^3*c*e+34*b^4*c*e-28*a^3*c^2*e-6*a^2*b*c^2*e-44*a*b^2*c^2*e-47*b^3*c^2*e-18*a^2*c^3*e+48*a*b*c^3*e-b^2*c^3*e-17*a*c^4*e-48*b*c^4*e-25*c^5*e-29*a^4*d*e-18*a^3*b*d*e-28*a^2*b^2*d*e-43*a*b^3*d*e-48*b^4*d*e+45*a^3*c*d*e+18*a^2*b*c*d*e+19*a*b^2*c*d*e-27*b^3*c*d*e-13*a^2*c^2*d*e+50*a*b*c^2*d*e+33*b^2*c^2*d*e+14*a*c^3*d*e+40*b*c^3*d*e+41*c^4*d*e-34*a^3*d^2*e-41*a^2*b*d^2*e+2*a*b^2*d^2*e+37*b^3*d^2*e-a^2*c*d^2*e+8*a*b*c*d^2*e-22*b^2*c*d^2*e-25*a*c^2*d^2*e+41*b*c^2*d^2*e+35*c^3*d^2*e-14*a^2*d^3*e+32*a*b*d^3*e+20*b^2*d^3*e+3*a*c*d^3*e+12*b*c*d^3*e-6*c^2*d^3*e+44*a*d^4*e+36*b*d^4*e+32*c*d^4*e-6*d^5*e+17*a^4*e^2-39*a^3*b*e^2+22*a^2*b^2*e^2+9*a*b^3*e^2+7*b^4*e^2-9*a^3*c*e^2-49*a^2*b*c*e^2+36*a*b^2*c*e^2+16*b^3*c*e^2-10*a^2*c^2*e^2+20*a*b*c^2*e^2+b^2*c^2*e^2-29*a*c^3*e^2-4*b*c^3*e^2-34*c^4*e^2-47*a^3*d*e^2+38*a^2*b*d*e^2+10*a*b^2*d*e^2+21*b^3*d*e^2-42*a^2*c*d*e^2-28*a*b*c*d*e^2-6*b^2*c*d*e^2+22*a*c^2*d*e^2+7*b*c^2*d*e^2-12*c^3*d*e^2-6*a^2*d^2*e^2+2*a*b*d^2*e^2-4*b^2*d^2*e^2+7*a*c*d^2*e^2-39*b*c*d^2*e^2-c^2*d^2*e^2+45*a*d^3*e^2+40*b*d^3*e^2+46*c*d^3*e^2+44*d^4*e^2-30*a^3*e^3+3*a^2*b*e^3+27*a*b^2*e^3+42*b^3*e^3-18*a^2*c*e^3+11*a*b*c*e^3+18*b^2*c*e^3-31*a*c^2*e^3-37*b*c^2*e^3+5*c^3*e^3-46*a^2*d*e^3+32*a*b*d*e^3+34*b^2*d*e^3-50*a*c*d*e^3+8*b*c*d*e^3+47*c^2*d*e^3-35*a*d^2*e^3+38*b*d^2*e^3-38*c*d^2*e^3-47*d^3*e^3+35*a^2*e^4+25*a*b*e^4+31*b^2*e^4+8*a*c*e^4+9*b*c*e^4+40*c^2*e^4-3*a*d*e^4-29*b*d*e^4+20*c*d*e^4+16*d^2*e^4+25*a*e^5+b*e^5+21*c*e^5+13*d*e^5-e^6,
    1846 a*b^5+6*a^4*d^2-30*a^3*b*d^2+48*a^2*b^2*d^2+22*a*b^3*d^2+49*b^4*d^2-4*a^3*c*d^2+45*a^2*b*c*d^2-28*a*b^2*c*d^2-12*b^3*c*d^2+12*a^2*c^2*d^2+47*a*b*c^2*d^2-14*b^2*c^2*d^2+35*a*c^3*d^2-b*c^3*d^2-39*c^4*d^2-40*a^3*d^3+7*a^2*b*d^3+16*a*b^2*d^3+45*b^3*d^3-a^2*c*d^3+20*a*b*c*d^3-9*b^2*c*d^3-31*a*c^2*d^3-44*b*c^2*d^3-13*c^3*d^3+36*a^2*d^4+8*a*b*d^4+25*b^2*d^4-4*a*c*d^4-10*b*c*d^4-40*c^2*d^4+39*a*d^5-4*b*d^5-24*c*d^5-11*d^6+33*a^5*e+40*a^4*b*e+21*a^3*b^2*e-7*a^2*b^3*e-22*a*b^4*e-48*b^5*e-2*a^4*c*e-32*a^3*b*c*e+4*a^2*b^2*c*e-4*a*b^3*c*e+38*b^4*c*e+50*a^3*c^2*e-15*a^2*b*c^2*e-14*a*b^2*c^2*e+43*b^3*c^2*e+44*a^2*c^3*e-11*a*b*c^3*e-20*b^2*c^3*e-14*a*c^4*e+30*b*c^4*e-44*c^5*e-27*a^4*d*e+2*a^3*b*d*e-31*a^2*b^2*d*e-8*a*b^3*d*e-47*a^3*c*d*e-39*a^2*b*c*d*e-46*a*b^2*c*d*e+6*b^3*c*d*e+32*a^2*c^2*d*e+43*a*b*c^2*d*e-30*b^2*c^2*d*e-31*a*c^3*d*e-48*b*c^3*d*e+31*c^4*d*e+49*a^3*d^2*e-2*a^2*b*d^2*e-7*a*b^2*d^2*e-38*b^3*d^2*e+6*a^2*c*d^2*e+7*a*b*c*d^2*e+5*b^2*c*d^2*e+29*a*c^2*d^2*e-39*b*c^2*d^2*e-15*c^3*d^2*e+9*a^2*d^3*e-28*a*b*d^3*e+19*b^2*d^3*e-11*a*c*d^3*e-5*b*c*d^3*e-46*c^2*d^3*e-34*a*d^4*e-27*b*d^4*e-27*c*d^4*e+11*d^5*e-36*a^4*e^2-28*a^3*b*e^2+7*a^2*b^2*e^2+20*a*b^3*e^2-34*b^4*e^2+43*a^3*c*e^2-44*a^2*b*c*e^2+30*a*b^2*c*e^2-b^3*c*e^2-15*a^2*c^2*e^2+47*a*b*c^2*e^2-5*b^2*c^2*e^2-34*a*c^3*e^2-42*b*c^3*e^2-44*c^4*e^2-7*a^3*d*e^2+32*a^2*b*d*e^2-18*a*b^2*d*e^2-45*b^3*d*e^2+50*a^2*c*d*e^2+27*a*b*c*d*e^2-43*b^2*c*d*e^2-49*a*c^2*d*e^2-12*b*c^2*d*e^2+30*c^3*d*e^2-38*a^2*d^2*e^2+16*a*b*d^2*e^2-32*b^2*d^2*e^2-45*a*c*d^2*e^2+41*b*c*d^2*e^2+8*c^2*d^2*e^2+42*a*d^3*e^2+43*b*d^3*e^2+18*c*d^3*e^2-37*d^4*e^2-13*a^3*e^3+33*a^2*b*e^3-12*a*b^2*e^3-31*b^3*e^3-24*a^2*c*e^3+5*a*b*c*e^3-29*b^2*c*e^3+5*a*c^2*e^3+10*b*c^2*e^3+38*c^3*e^3+31*a^2*d*e^3+49*a*b*d*e^3-39*b^2*d*e^3+49*a*c*d*e^3+11*b*c*d*e^3+17*c^2*d*e^3-a*d^2*e^3+45*b*d^2*e^3-16*c*d^2*e^3+28*d^3*e^3+8*a^2*e^4+19*a*b*e^4+5*b^2*e^4+36*a*c*e^4-19*b*c*e^4-18*c^2*e^4-29*a*d*e^4+33*b*d*e^4-15*c*d*e^4+46*d^2*e^4+43*a*e^5+50*b*e^5+35*c*e^5+38*d*e^5+39*e^6,
    1847 a^2*b^4-27*a^4*d^2-11*a^3*b*d^2+23*a^2*b^2*d^2+42*a*b^3*d^2+33*b^4*d^2-45*a^2*b*c*d^2+42*a*b^2*c*d^2+30*b^3*c*d^2-a^2*c^2*d^2+41*a*b*c^2*d^2+32*b^2*c^2*d^2-4*a*c^3*d^2-4*b*c^3*d^2+50*c^4*d^2+14*a^3*d^3-17*a^2*b*d^3+20*a*b^2*d^3-31*b^3*d^3+44*a^2*c*d^3+14*a*b*c*d^3+43*b^2*c*d^3+48*a*c^2*d^3-10*b*c^2*d^3-3*c^3*d^3-33*a^2*d^4+9*a*b*d^4+28*b^2*d^4-3*a*c*d^4+15*b*c*d^4+46*c^2*d^4-35*a*d^5-42*b*d^5+44*c*d^5-4*d^6+28*a^5*e+46*a^4*b*e+16*a^3*b^2*e+31*a^2*b^3*e-20*a*b^4*e-15*b^5*e-50*a^4*c*e-8*a^3*b*c*e+4*a^2*b^2*c*e+38*a*b^3*c*e+27*b^4*c*e-29*a^3*c^2*e+27*a^2*b*c^2*e-33*a*b^2*c^2*e-22*b^3*c^2*e-3*a^2*c^3*e-40*a*b*c^3*e+10*b^2*c^3*e-20*a*c^4*e-38*b*c^4*e+36*c^5*e-26*a^4*d*e+41*a^3*b*d*e-15*a^2*b^2*d*e+50*a*b^3*d*e+41*b^4*d*e-18*a^3*c*d*e+18*a^2*b*c*d*e-32*a*b^2*c*d*e+41*b^3*c*d*e-5*a^2*c^2*d*e-a*b*c^2*d*e-10*b^2*c^2*d*e-12*a*c^3*d*e-46*b*c^3*d*e+34*c^4*d*e-42*a^3*d^2*e+2*a^2*b*d^2*e+37*a*b^2*d^2*e-b^3*d^2*e-29*a^2*c*d^2*e+46*a*b*c*d^2*e-49*b^2*c*d^2*e+24*a*c^2*d^2*e-47*b*c^2*d^2*e-34*c^3*d^2*e+46*a^2*d^3*e-5*a*b*d^3*e-27*b^2*d^3*e-29*a*c*d^3*e+25*b*c*d^3*e-30*c^2*d^3*e-2*a*d^4*e-50*b*d^4*e-46*c*d^4*e+2*d^5*e+11*a^4*e^2+48*a^3*b*e^2+24*a^2*b^2*e^2+41*a*b^3*e^2-17*b^4*e^2-10*a^3*c*e^2+8*a^2*b*c*e^2+28*b^3*c*e^2-21*a^2*c^2*e^2+23*a*b*c^2*e^2+8*b^2*c^2*e^2+41*a*c^3*e^2+12*b*c^3*e^2+25*c^4*e^2+25*a^3*d*e^2-49*a^2*b*d*e^2+24*a*b^2*d*e^2-7*b^3*d*e^2-20*a^2*c*d*e^2-48*a*b*c*d*e^2+46*b^2*c*d*e^2-18*a*c^2*d*e^2+13*b*c^2*d*e^2-31*c^3*d*e^2-40*a^2*d^2*e^2+2*a*b*d^2*e^2-48*b^2*d^2*e^2-38*a*c*d^2*e^2+20*b*c*d^2*e^2+47*c^2*d^2*e^2-3*a*d^3*e^2+27*b*d^3*e^2+44*c*d^3*e^2+19*d^4*e^2+38*a^3*e^3+22*a^2*b*e^3+37*a*b^2*e^3+20*b^3*e^3-6*a^2*c*e^3-33*a*b*c*e^3+45*b^2*c*e^3+24*a*c^2*e^3+33*b*c^2*e^3+c^3*e^3+50*a^2*d*e^3-44*a*b*d*e^3-50*b^2*d*e^3-11*a*c*d*e^3-11*b*c*d*e^3-30*c^2*d*e^3-a*d^2*e^3-14*b*d^2*e^3-11*c*d^2*e^3-42*d^3*e^3+3*a^2*e^4-6*a*b*e^4+31*b^2*e^4-47*a*c*e^4+23*b*c*e^4-44*c^2*e^4-28*a*d*e^4-50*b*d*e^4+41*c*d*e^4-19*d^2*e^4+10*a*e^5+13*b*e^5+47*c*e^5+31*d*e^5-49*e^6,
    1848 a^3*b^3-15*a^4*d^2-17*a^3*b*d^2-a^2*b^2*d^2+18*a*b^3*d^2-30*b^4*d^2-37*a^3*c*d^2+21*a^2*b*c*d^2-a*b^2*c*d^2+16*b^3*c*d^2-41*a^2*c^2*d^2+39*a*b*c^2*d^2-16*b^2*c^2*d^2-22*a*c^3*d^2+19*b*c^3*d^2+46*c^4*d^2-14*a^3*d^3+2*a^2*b*d^3+45*a*b^2*d^3+12*b^3*d^3-28*a^2*c*d^3-19*a*b*c*d^3-20*b^2*c*d^3-6*a*c^2*d^3+17*b*c^2*d^3-20*c^3*d^3+34*a^2*d^4+15*a*b*d^4-8*b^2*d^4+31*a*c*d^4-5*b*c*d^4+41*c^2*d^4-32*a*d^5-38*b*d^5+35*c*d^5-4*d^6-26*a^5*e-20*a^4*b*e-12*a^3*b^2*e+22*a^2*b^3*e-48*a*b^4*e+39*b^5*e-46*a^4*c*e-50*a^3*b*c*e+11*a^2*b^2*c*e-2*a*b^3*c*e+23*b^4*c*e+44*a^3*c^2*e+4*a^2*b*c^2*e+17*a*b^2*c^2*e-39*b^3*c^2*e-a^2*c^3*e-20*a*b*c^3*e-16*b^2*c^3*e+7*a*c^4*e+31*b*c^4*e+18*c^5*e-44*a^4*d*e+7*a^3*b*d*e+26*a^2*b^2*d*e-19*a*b^3*d*e-35*b^4*d*e+47*a^3*c*d*e+17*a^2*b*c*d*e-27*a*b^2*c*d*e-6*b^3*c*d*e-16*a^2*c^2*d*e-10*a*b*c^2*d*e+21*b^2*c^2*d*e-27*a*c^3*d*e+4*b*c^3*d*e-32*c^4*d*e-22*a^3*d^2*e+50*a^2*b*d^2*e-a*b^2*d^2*e+41*b^3*d^2*e-46*a^2*c*d^2*e-18*a*b*c*d^2*e+8*b^2*c*d^2*e-16*a*c^2*d^2*e-38*b*c^2*d^2*e-c^3*d^2*e+18*a^2*d^3*e-25*a*b*d^3*e-47*b^2*d^3*e-23*a*c*d^3*e+8*b*c*d^3*e+20*c^2*d^3*e-41*a*d^4*e-18*b*d^4*e-18*c*d^4*e+33*d^5*e+17*a^4*e^2-10*a^3*b*e^2+28*a^2*b^2*e^2-12*a*b^3*e^2-19*b^4*e^2-20*a^3*c*e^2+45*a^2*b*c*e^2+39*a*b^2*c*e^2+37*b^3*c*e^2-6*a^2*c^2*e^2+19*a*b*c^2*e^2+23*b^2*c^2*e^2+34*a*c^3*e^2+24*b*c^3*e^2+20*c^4*e^2+14*a^3*d*e^2-8*a^2*b*d*e^2+15*a*b^2*d*e^2+19*b^3*d*e^2+14*a^2*c*d*e^2-42*a*b*c*d*e^2-27*b^2*c*d*e^2+11*a*c^2*d*e^2+24*b*c^2*d*e^2-10*c^3*d*e^2+12*a^2*d^2*e^2+18*a*b*d^2*e^2+21*b^2*d^2*e^2+35*a*c*d^2*e^2-15*b*c*d^2*e^2-32*c^2*d^2*e^2+8*a*d^3*e^2+40*b*d^3*e^2+50*c*d^3*e^2-41*d^4*e^2+42*a^3*e^3-38*a^2*b*e^3-27*a*b^2*e^3+32*b^3*e^3+41*a^2*c*e^3+3*a*b*c*e^3+28*b^2*c*e^3+21*a*c^2*e^3-8*b*c^2*e^3+22*c^3*e^3+8*a^2*d*e^3+49*a*b*d*e^3-24*b^2*d*e^3-8*a*c*d*e^3+30*b*c*d*e^3+35*c^2*d*e^3+49*a*d^2*e^3+39*b*d^2*e^3+23*c*d^2*e^3-47*d^3*e^3+43*a^2*e^4-15*a*b*e^4+20*b^2*e^4-35*b*c*e^4+28*c^2*e^4+35*b*d*e^4+12*c*d*e^4+40*d^2*e^4+32*a*e^5-32*b*e^5+25*c*e^5+9*d*e^5-26*e^6,
    1849 a^4*b^2-31*a^4*d^2+30*a^3*b*d^2-42*a^2*b^2*d^2-32*a*b^3*d^2-38*b^4*d^2-49*a^3*c*d^2-4*a^2*b*c*d^2-45*a*b^2*c*d^2+8*b^3*c*d^2+44*a^2*c^2*d^2+21*a*b*c^2*d^2-13*b^2*c^2*d^2-16*a*c^3*d^2+31*b*c^3*d^2-42*c^4*d^2+49*a^3*d^3+44*a^2*b*d^3+a*b^2*d^3+47*b^3*d^3-31*a^2*c*d^3+42*a*b*c*d^3-34*b^2*c*d^3-44*a*c^2*d^3-3*b*c^2*d^3-14*c^3*d^3+24*a^2*d^4+12*a*b*d^4+14*b^2*d^4-32*a*c*d^4+16*b*c*d^4+40*c^2*d^4+8*a*d^5+5*b*d^5+35*c*d^5+2*d^6+7*a^5*e+a^4*b*e-24*a^3*b^2*e-25*a^2*b^3*e-8*a*b^4*e-46*b^5*e+12*a^4*c*e-49*a^3*b*c*e+47*a^2*b^2*c*e-22*a*b^3*c*e-22*b^4*c*e+31*a^3*c^2*e-48*a^2*b*c^2*e-46*a*b^2*c^2*e+28*b^3*c^2*e-5*a^2*c^3*e+42*a*b*c^3*e-9*b^2*c^3*e+13*a*c^4*e+23*b*c^4*e-29*c^5*e+9*a^4*d*e+9*a^3*b*d*e+3*a^2*b^2*d*e+47*a*b^3*d*e+31*b^4*d*e-25*a^3*c*d*e-37*a*b^2*c*d*e-23*b^3*c*d*e+18*a^2*c^2*d*e+8*a*b*c^2*d*e-15*b^2*c^2*d*e-40*a*c^3*d*e+26*b*c^3*d*e-29*c^4*d*e+20*a^3*d^2*e-25*a^2*b*d^2*e+41*a*b^2*d^2*e+10*b^3*d^2*e-12*a^2*c*d^2*e+38*a*b*c*d^2*e-30*b^2*c*d^2*e-49*b*c^2*d^2*e-34*c^3*d^2*e+14*a^2*d^3*e+45*a*b*d^3*e-29*b^2*d^3*e-23*a*c*d^3*e+33*b*c*d^3*e-23*c^2*d^3*e-36*a*d^4*e+29*b*d^4*e+22*c*d^4*e+45*d^5*e-46*a^4*e^2-37*a^3*b*e^2-36*a^2*b^2*e^2-23*a*b^3*e^2-4*b^4*e^2+31*a^3*c*e^2+45*a^2*b*c*e^2-34*a*b^2*c*e^2+6*b^3*c*e^2-38*a^2*c^2*e^2-26*a*b*c^2*e^2-5*b^2*c^2*e^2-24*a*c^3*e^2-28*b*c^3*e^2+20*c^4*e^2+25*a^3*d*e^2+14*a^2*b*d*e^2+a*b^2*d*e^2+18*b^3*d*e^2+12*a^2*c*d*e^2+32*a*b*c*d*e^2+17*b^2*c*d*e^2+50*a*c^2*d*e^2-12*b*c^2*d*e^2-46*c^3*d*e^2+4*a^2*d^2*e^2-29*a*b*d^2*e^2-16*b^2*d^2*e^2+38*a*c*d^2*e^2+3*b*c*d^2*e^2-19*c^2*d^2*e^2+50*a*d^3*e^2+23*b*d^3*e^2+5*c*d^3*e^2+47*d^4*e^2-38*a^3*e^3-31*a^2*b*e^3+14*a*b^2*e^3-43*b^3*e^3+22*a^2*c*e^3+26*a*b*c*e^3-28*b^2*c*e^3-49*a*c^2*e^3+15*c^3*e^3-40*a^2*d*e^3+5*a*b*d*e^3-20*b^2*d*e^3-40*a*c*d*e^3+35*b*c*d*e^3+17*c^2*d*e^3-8*a*d^2*e^3-6*b*d^2*e^3+3*c*d^2*e^3-7*d^3*e^3+45*a^2*e^4-49*a*b*e^4+45*b^2*e^4-25*a*c*e^4+b*c*e^4-33*c^2*e^4-44*a*d*e^4+30*b*d*e^4-26*c*d*e^4+42*d^2*e^4+14*b*e^5-3*c*e^5-47*d*e^5+22*e^6,
    1850 a^5*b-48*a^4*d^2-33*a^3*b*d^2-34*a^2*b^2*d^2-14*a*b^3*d^2-29*b^4*d^2-7*a^3*c*d^2-13*a^2*b*c*d^2+15*a*b^2*c*d^2+27*b^3*c*d^2+49*a^2*c^2*d^2-a*b*c^2*d^2+46*b^2*c^2*d^2+37*a*c^3*d^2+20*b*c^3*d^2-27*c^4*d^2+33*a^3*d^3+30*a^2*b*d^3+32*a*b^2*d^3+b^3*d^3-47*a^2*c*d^3-2*a*b*c*d^3-36*b^2*c*d^3-7*a*c^2*d^3-23*b*c^2*d^3-41*c^3*d^3-43*a^2*d^4-4*a*b*d^4+14*b^2*d^4+38*a*c*d^4+41*b*c*d^4+27*c^2*d^4-33*a*d^5-50*b*d^5+8*c*d^5+42*d^6-21*a^5*e+46*a^4*b*e+6*a^3*b^2*e+22*a^2*b^3*e+2*a*b^4*e-15*b^5*e+50*a^4*c*e-40*a^2*b^2*c*e+49*a*b^3*c*e+5*b^4*c*e+a^3*c^2*e+47*a^2*b*c^2*e-36*a*b^2*c^2*e+25*b^3*c^2*e-36*a^2*c^3*e+46*a*b*c^3*e+24*b^2*c^3*e-9*a*c^4*e+39*b*c^4*e-40*c^5*e+29*a^4*d*e-49*a^3*b*d*e+16*a^2*b^2*d*e+7*a*b^3*d*e-30*b^4*d*e+42*a^3*c*d*e+22*a^2*b*c*d*e-49*a*b^2*c*d*e+19*b^3*c*d*e-23*a^2*c^2*d*e+7*a*b*c^2*d*e+2*b^2*c^2*d*e-2*a*c^3*d*e-2*b*c^3*d*e+5*c^4*d*e+35*a^3*d^2*e-47*a^2*b*d^2*e-28*a*b^2*d^2*e+5*b^3*d^2*e+45*a^2*c*d^2*e+7*a*b*c*d^2*e+3*b^2*c*d^2*e+33*a*c^2*d^2*e-37*b*c^2*d^2*e+26*c^3*d^2*e-18*a*b*d^3*e-42*b^2*d^3*e-22*a*c*d^3*e-46*b*c*d^3*e-25*c^2*d^3*e+6*a*d^4*e-50*b*d^4*e+22*c*d^4*e-4*d^5*e-42*a^4*e^2+43*a^3*b*e^2+39*a^2*b^2*e^2+12*a*b^3*e^2-20*b^4*e^2+2*a^3*c*e^2+27*a^2*b*c*e^2-21*a*b^2*c*e^2+36*b^3*c*e^2+47*a^2*c^2*e^2-41*a*b*c^2*e^2-23*b^2*c^2*e^2+34*a*c^3*e^2-29*b*c^3*e^2-46*c^4*e^2+15*a^3*d*e^2+4*a^2*b*d*e^2-13*a*b^2*d*e^2+43*b^3*d*e^2-7*a^2*c*d*e^2+4*a*b*c*d*e^2-37*a*c^2*d*e^2-34*b*c^2*d*e^2+20*c^3*d*e^2-5*a^2*d^2*e^2-42*a*b*d^2*e^2+14*b^2*d^2*e^2+9*a*c*d^2*e^2-19*b*c*d^2*e^2+15*c^2*d^2*e^2-35*a*d^3*e^2+24*b*d^3*e^2-35*c*d^3*e^2-14*d^4*e^2-27*a^3*e^3-39*a^2*b*e^3-44*a*b^2*e^3-6*b^3*e^3-30*a^2*c*e^3+47*a*b*c*e^3-26*b^2*c*e^3+9*a*c^2*e^3+16*b*c^2*e^3+37*c^3*e^3-49*a^2*d*e^3+19*a*b*d*e^3+44*b^2*d*e^3-9*a*c*d*e^3-41*b*c*d*e^3+29*c^2*d*e^3-43*a*d^2*e^3+33*b*d^2*e^3-2*c*d^2*e^3-15*d^3*e^3-4*a^2*e^4-46*a*b*e^4+15*b^2*e^4+21*a*c*e^4+13*b*c*e^4+38*c^2*e^4-20*a*d*e^4+16*b*d*e^4-9*c*d*e^4-19*d^2*e^4+14*a*e^5-33*b*e^5+34*c*e^5+16*d*e^5-24*e^6,
    1851 a^6-2*a^4*d^2+3*a^3*b*d^2+18*a^2*b^2*d^2-46*a*b^3*d^2-31*b^4*d^2+48*a^3*c*d^2+7*a^2*b*c*d^2+26*a*b^2*c*d^2+17*b^3*c*d^2-30*a^2*c^2*d^2-2*a*b*c^2*d^2+5*b^2*c^2*d^2-43*a*c^3*d^2-33*b*c^3*d^2-28*c^4*d^2-26*a^3*d^3-5*a^2*b*d^3+48*a*b^2*d^3+2*b^3*d^3-15*a^2*c*d^3-18*a*b*c*d^3-16*b^2*c*d^3-12*a*c^2*d^3+21*b*c^2*d^3-31*c^3*d^3+34*a^2*d^4-40*a*b*d^4+41*b^2*d^4+21*a*c*d^4+26*b*c*d^4+50*c^2*d^4-20*a*d^5+8*b*d^5+30*c*d^5+48*d^6-37*a^5*e+28*a^4*b*e+8*a^3*b^2*e+30*a^2*b^3*e-a*b^4*e-49*b^5*e-8*a^4*c*e+26*a^3*b*c*e+20*a^2*b^2*c*e+19*a*b^3*c*e-23*b^4*c*e+11*a^3*c^2*e+37*a^2*b*c^2*e+40*a*b^2*c^2*e-33*b^3*c^2*e-26*a^2*c^3*e+12*a*b*c^3*e+29*b^2*c^3*e-a*c^4*e-15*b*c^4*e-24*c^5*e-41*a^4*d*e-4*a^3*b*d*e+42*a^2*b^2*d*e+9*a*b^3*d*e-49*b^4*d*e-11*a^3*c*d*e+21*a^2*b*c*d*e+22*a*b^2*c*d*e+22*b^3*c*d*e-9*a^2*c^2*d*e+27*a*b*c^2*d*e-36*b^2*c^2*d*e-10*a*c^3*d*e-39*b*c^3*d*e-3*c^4*d*e+16*a^3*d^2*e+9*a^2*b*d^2*e+7*a*b^2*d^2*e+33*b^3*d^2*e+42*a^2*c*d^2*e-38*a*b*c*d^2*e+33*b^2*c*d^2*e+41*a*c^2*d^2*e-36*b*c^2*d^2*e-21*c^3*d^2*e+34*a^2*d^3*e-43*a*b*d^3*e+32*b^2*d^3*e-9*a*c*d^3*e-34*b*c*d^3*e-4*c^2*d^3*e-10*a*d^4*e-29*b*d^4*e+4*c*d^4*e+36*d^5*e+40*a^4*e^2-32*a^3*b*e^2+13*a^2*b^2*e^2+22*a*b^3*e^2-15*b^4*e^2+31*a^3*c*e^2+7*a^2*b*c*e^2-15*a*b^2*c*e^2+43*b^3*c*e^2-45*a^2*c^2*e^2-42*a*b*c^2*e^2+41*b^2*c^2*e^2-46*a*c^3*e^2-6*b*c^3*e^2+26*c^4*e^2+45*a^3*d*e^2+11*a^2*b*d*e^2+10*a*b^2*d*e^2+5*b^3*d*e^2+3*a^2*c*d*e^2-49*a*b*c*d*e^2-10*b^2*c*d*e^2-50*a*c^2*d*e^2+38*b*c^2*d*e^2+21*c^3*d*e^2+37*a^2*d^2*e^2+a*b*d^2*e^2+38*b^2*d^2*e^2+25*a*c*d^2*e^2-7*b*c*d^2*e^2-13*c^2*d^2*e^2+32*a*d^3*e^2+37*b*d^3*e^2-27*c*d^3*e^2-7*d^4*e^2+44*a^3*e^3+48*a^2*b*e^3+21*a*b^2*e^3+11*b^3*e^3+9*a^2*c*e^3+49*a*b*c*e^3-39*b^2*c*e^3+24*a*c^2*e^3+35*b*c^2*e^3-11*c^3*e^3+17*a^2*d*e^3+36*a*b*d*e^3-19*b^2*d*e^3-47*a*c*d*e^3-47*b*c*d*e^3-12*c^2*d*e^3+34*a*d^2*e^3+35*b*d^2*e^3+18*d^3*e^3-31*a^2*e^4+45*a*b*e^4+27*b^2*e^4+43*a*c*e^4-35*b*c*e^4-29*c^2*e^4-21*a*d*e^4+49*b*d*e^4-23*c*d*e^4+34*d^2*e^4-2*a*e^5+47*b*e^5+31*c*e^5-46*d*e^5-13*e^6,
    1852 e^7, d*e^6, c*e^6, b*e^6, a*e^6, d^2*e^5, c*d*e^5, b*d*e^5, a*d*e^5, c^2*e^5,
    1853 b*c*e^5, a*c*e^5, b^2*e^5, a*b*e^5, a^2*e^5, d^3*e^4, c*d^2*e^4, b*d^2*e^4,
    1854 a*d^2*e^4, c^2*d*e^4, b*c*d*e^4, a*c*d*e^4, b^2*d*e^4, a*b*d*e^4, a^2*d*e^4,
    1855 c^3*e^4, b*c^2*e^4, a*c^2*e^4, b^2*c*e^4, a*b*c*e^4, a^2*c*e^4, b^3*e^4,
    1856 a*b^2*e^4, a^2*b*e^4, a^3*e^4, d^4*e^3, c*d^3*e^3, b*d^3*e^3, a*d^3*e^3,
    1857 c^2*d^2*e^3, b*c*d^2*e^3, a*c*d^2*e^3, b^2*d^2*e^3, a*b*d^2*e^3, a^2*d^2*e^3,
    1858 c^3*d*e^3, b*c^2*d*e^3, a*c^2*d*e^3, b^2*c*d*e^3, a*b*c*d*e^3, a^2*c*d*e^3,
    1859 b^3*d*e^3, a*b^2*d*e^3, a^2*b*d*e^3, a^3*d*e^3, c^4*e^3, b*c^3*e^3, a*c^3*e^3,
    1860 b^2*c^2*e^3, a*b*c^2*e^3, a^2*c^2*e^3, b^3*c*e^3, a*b^2*c*e^3, a^2*b*c*e^3,
    1861 a^3*c*e^3, b^4*e^3, a*b^3*e^3, a^2*b^2*e^3, a^3*b*e^3, a^4*e^3, d^5*e^2,
    1862 c*d^4*e^2, b*d^4*e^2, a*d^4*e^2, c^2*d^3*e^2, b*c*d^3*e^2, a*c*d^3*e^2,
    1863 b^2*d^3*e^2, a*b*d^3*e^2, a^2*d^3*e^2, c^3*d^2*e^2, b*c^2*d^2*e^2,
    1864 a*c^2*d^2*e^2, b^2*c*d^2*e^2, a*b*c*d^2*e^2;
    1865 //  M;
    1866   TestSSresAttribs2tr(M, "AGR101n4d008s020%1_big");
    1867 /*
    1868 options:  1 1 0 :  Time:  29/32/73/92 (316 without LCM)
    1869 options:  1 1 1 :  Time:  32/34/43/202
    1870 lres  Time:  24
    1871 nres  Time:  19
    1872 sres  Time:  71
    1873 */
    1874   kill M;
    1875 
    1876   kill AGR;
    1877 
    1878   ring AGR = (101), (a,b,c,d,e,f), dp; AGR;
    1879 
    1880   // AGR@101n5d005s016%1, new, medium difficulty?
    1881   ideal M =
    1882 b*d-13*c*d+7*a*e-32*b*e+31*c*e+3*d*e+46*a*f-13*b*f+22*c*f-19*d*f-33*e*f, a*d+2*c*d-42*a*e+46*b*e+7*c*e-38*d*e+31*a*f+9*b*f+27*c*f-19*d*f-24*e*f, b*c-35*c*d-34*a*e+4*b*e+33*c*e+23*d*e+4*a*f-43*b*f+43*c*f+17*d*f-13*e*f, a*c+49*c*d-28*a*e+18*b*e-23*c*e+3*d*e-5*a*f-23*b*f+2*c*f+46*d*f-40*e*f, a*b-38*c*d+a*e-49*b*e-20*c*e+32*d*e+13*a*f+25*b*f+37*c*f-27*d*f+25*e*f, f^4, e*f^3, d*f^3, c*f^3, b*f^3, a*f^3, e^2*f^2, d*e*f^2, c*e*f^2, b*e*f^2, a*e*f^2, d^2*f^2, c*d*f^2, c^2*f^2, b^2*f^2, a^2*f^2, e^3*f, d*e^2*f, c*e^2*f, b*e^2*f, a*e^2*f, d^2*e*f, d^3*f, c^3*f, b^3*f, a^3*f, e^4, d^4, c^4, b^4, a^4;
    1883   TestSSresAttribs(M, "AGR@101n5d005s016%1");
    1884   kill M;
    1885 }
    1886 
    1887 static proc testAGRhard(list #)
    1888 {
    1889   def DEBUG = 0;
    1890   if(size(#) > 0) { DEBUG = #[1]; }
    1891 
    1892   system("--min-time", "0.01");
    1893   system("--ticks-per-sec", 100);
    1894 
    1895   attrib(SSinit, "DEBUG", 0);
    1896   attrib(SSinit, "SYZCHECK", (DEBUG > 0));
    1897   attrib(SSinit, "KERCHECK", 0);
    1898   attrib(SSinit, "TREEOUTPUT", 0);
    1899   attrib(SSinit, "PROFILE", 0);
    1900 
    1901   option(prot);
    1902   // AGR@101n5d006s016%1, new, hard
    1903   ring AGR = (101), (a,b,c,d,e,f), dp; AGR;
    1904   ideal M =
    1905 b*d+47*c*d-27*a*e+37*b*e+21*c*e+31*d*e-31*a*f+23*b*f+47*c*f+42*d*f+11*e*f, a*d+7*c*d+19*a*e+28*b*e-33*c*e-28*d*e+15*a*f+28*b*f+47*c*f+3*d*f+14*e*f, b*c+29*c*d-25*a*e+12*b*e+23*c*e-50*d*e-17*a*f+30*b*f-37*c*f+35*d*f-e*f, a*c+46*c*d+12*a*e+27*b*e+39*c*e+23*d*e-45*a*f+39*b*f-35*c*f+4*d*f-10*e*f, a*b+38*c*d-18*a*e-34*b*e-30*c*e+38*d*e+22*a*f+34*b*f+39*c*f+30*d*f-19*e*f, f^5, e*f^4, d*f^4, c*f^4, b*f^4, a*f^4, e^2*f^3, d*e*f^3, c*e*f^3, b*e*f^3, a*e*f^3, d^2*f^3, c*d*f^3, c^2*f^3, b^2*f^3, a^2*f^3, e^3*f^2, d*e^2*f^2, c*e^2*f^2, b*e^2*f^2, a*e^2*f^2, d^2*e*f^2, d^3*f^2, c^3*f^2, b^3*f^2, a^3*f^2, e^4*f, e^5, d^5, c^5, b^5, a^5;
    1906   TestSSresAttribs2tr(M, "AGR@101n5d006s016%1_hard");
    1907  kill M;
    1908 }
     321}
  • Singular/LIB/sing4ti2.lib

    re7d857 rce5d1b  
    9090// using standard unix commands
    9191//----------------------------------------------------------------------
    92    j=system("sh","markov sing4ti2 >/dev/null 2>&1");
     92   // find the name of markov/4ti2-markov
     93   string s_name=system("executable","markov");
     94   if (size(s_name)==0) { s_name=system("executable","4ti2-markov"); /* debian*/ }
     95   j=system("sh",s_name+" sing4ti2 >/dev/null 2>&1");
    9396   j=system("sh","awk \'BEGIN{ORS=\",\";}{print $0;}\' sing4ti2.mar | sed s/[\\\ \\\t\\\v\\\f]/,/g | sed s/,+/,/g|sed s/,,/,/g|sed s/,,/,/g > sing4ti2.converted");
    9497   if(!defined(keepfiles))
     
    212215// using standard unix commands
    213216//----------------------------------------------------------------------
    214    j=system("sh","graver sing4ti2 >/dev/null 2>&1");
     217   // find the name of graver/4ti2-graver
     218   string s_name=system("executable","graver");
     219   if (size(s_name)==0) { s_name=system("executable","4ti2-graver"); /* debian*/ }
     220   j=system("sh",s_name+" sing4ti2 >/dev/null 2>&1");
    215221   j=system("sh","awk \'BEGIN{ORS=\",\";}{print $0;}\' sing4ti2.gra | sed s/[\\\ \\\t\\\v\\\f]/,/g | sed s/,+/,/g |sed s/,,/,/g|sed s/,,/,/g > sing4ti2.converted");
    216222   if(!defined(keepfiles))
    217223   {
    218       j=system("sh",("rm -f sing4ti2.gra sing4ti2."+fileending));
     224     j=system("sh",("rm -f sing4ti2.gra sing4ti2."+fileending));
    219225   }
    220226//----------------------------------------------------------------------
     
    332338// using standard unix commands
    333339//----------------------------------------------------------------------
    334    j=system("sh","hilbert sing4ti2 >/dev/null 2>&1");
     340   // find the name of hilbert/4ti2-hilbert
     341   string s_name=system("executable","hilbert");
     342   if (size(s_name)==0) { s_name=system("executable","4ti2-hilbert"); /* debian*/ }
     343   j=system("sh",s_name+" sing4ti2 >/dev/null 2>&1");
    335344   j=system("sh","awk \'BEGIN{ORS=\",\";}{print $0;}\' sing4ti2.hil | sed s/[\\\ \\\t\\\v\\\f]/,/g | sed s/,+/,/g |sed s/,,/,/g|sed s/,,/,/g > sing4ti2.converted");
    336345   if(!defined(keepfiles))
  • Singular/dyn_modules/gfanlib/bbcone.cc

    re7d857 rce5d1b  
    15711571  }
    15721572  WerrorS("containsInSupport: unexpected parameters");
    1573   return TRUE;
    1574 }
    1575 
    1576 BOOLEAN containsInSupportOld(leftv res, leftv args)
    1577 {
    1578   gfan::initializeCddlibIfRequired();
    1579   leftv u=args;
    1580   if ((u != NULL) && (u->Typ() == coneID))
    1581   {
    1582     leftv v=u->next;
    1583     if ((v != NULL) && (v->Typ() == coneID))
    1584     {
    1585       gfan::ZCone* zc = (gfan::ZCone*)u->Data();
    1586       gfan::ZCone* zd = (gfan::ZCone*)v->Data();
    1587       int d1 = zc->ambientDimension();
    1588       int d2 = zd->ambientDimension();
    1589       if (d1 != d2)
    1590       {
    1591         Werror("expected cones with same ambient dimensions\n but got"
    1592                " dimensions %d and %d", d1, d2);
    1593         return TRUE;
    1594       }
    1595       bool b = (zc->contains(*zd) ? 1 : 0);
    1596       res->rtyp = INT_CMD;
    1597       res->data = (void*) (long) b;
    1598       return FALSE;
    1599     }
    1600     if ((v != NULL) && ((v->Typ() == BIGINTMAT_CMD) || (v->Typ() == INTVEC_CMD)))
    1601     {
    1602       gfan::ZCone* zc = (gfan::ZCone*)u->Data();
    1603       bigintmat* iv = NULL;
    1604       if (v->Typ() == INTVEC_CMD)
    1605       {
    1606         intvec* iv0 = (intvec*) v->Data();
    1607         iv = iv2bim(iv0,coeffs_BIGINT)->transpose();
    1608       }
    1609       else
    1610         iv = (bigintmat*)v->Data();
    1611 
    1612       gfan::ZVector* zv = bigintmatToZVector(iv);
    1613       int d1 = zc->ambientDimension();
    1614       int d2 = zv->size();
    1615       if (d1 != d2)
    1616       {
    1617         Werror("expected cones with same ambient dimensions\n but got"
    1618                " dimensions %d and %d", d1, d2);
    1619         return TRUE;
    1620       }
    1621       int b = zc->contains(*zv);
    1622       res->rtyp = INT_CMD;
    1623       res->data = (void*) (long) b;
    1624 
    1625       delete zv;
    1626       if (v->Typ() == INTMAT_CMD)
    1627         delete iv;
    1628       return FALSE;
    1629     }
    1630   }
    1631   WerrorS("containsInSupportOld: unexpected parameters");
    16321573  return TRUE;
    16331574}
     
    21412082  p->iiAddCproc("gfan.lib","containsAsFace",FALSE,hasFace);
    21422083  p->iiAddCproc("gfan.lib","containsInSupport",FALSE,containsInSupport);
    2143   p->iiAddCproc("gfan.lib","containsInSupportOld",FALSE,containsInSupportOld);
    21442084  p->iiAddCproc("gfan.lib","containsPositiveVector",FALSE,containsPositiveVector);
    21452085  p->iiAddCproc("gfan.lib","containsRelatively",FALSE,containsRelatively);
  • Singular/dyn_modules/syzextra/test.sh

    re7d857 rce5d1b  
    44#"$SINGULAR_EXECUTABLE" -teq "$srcdir/ederc.tst" || exit 1
    55#"$SINGULAR_EXECUTABLE" -teq "$srcdir/syzextra.tst" || exit 1
    6 "$SINGULAR_EXECUTABLE" -tec 'LIB "schreyer.lib"; listvar(Top); proc T(){ Schreyer::testSimple(1, 0); /* Schreyer::testAGR(0); Schreyer::testAGRhard(0); */ } T(); $' || exit 1
     6"$SINGULAR_EXECUTABLE" -tec 'LIB "schreyer.lib"; listvar(Top); example Sres; $' || exit 1
  • Singular/grammar.cc

    re7d857 rce5d1b  
    579579#define YYFINAL  2
    580580/* YYLAST -- Last index in YYTABLE.  */
    581 #define YYLAST   2664
     581#define YYLAST   2560
    582582
    583583/* YYNTOKENS -- Number of terminals.  */
    584 #define YYNTOKENS  103
     584#define YYNTOKENS  102
    585585/* YYNNTS -- Number of nonterminals.  */
    586586#define YYNNTS  44
     
    603603       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    604604       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    605        2,     2,     2,     2,     2,     2,     2,     2,    96,     2,
    606       99,   100,     2,    88,    94,    89,   101,    90,     2,     2,
    607        2,     2,     2,     2,     2,     2,     2,     2,    97,    95,
    608       86,    85,    87,     2,     2,     2,     2,     2,     2,     2,
     605       2,     2,     2,     2,     2,     2,     2,     2,    95,     2,
     606      98,    99,     2,    87,    93,    88,   100,    89,     2,     2,
     607       2,     2,     2,     2,     2,     2,     2,     2,    96,    94,
     608      86,    85,     2,     2,     2,     2,     2,     2,     2,     2,
    609609       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    610610       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    611        2,    91,     2,    92,    93,     2,   102,     2,     2,     2,
     611       2,    90,     2,    91,    92,     2,   101,     2,     2,     2,
    612612       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    613613       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     
    634634      65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
    635635      75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
    636       98
     636      97
    637637};
    638638
     
    665665static const yytype_int16 yyrhs[] =
    666666{
    667      104,     0,    -1,    -1,   104,   105,    -1,   106,    -1,   108,
    668       95,    -1,   120,    95,    -1,   146,    -1,    80,    -1,    95,
    669       -1,     1,    95,    -1,   141,    -1,   142,    -1,   107,    -1,
    670      143,    -1,   144,    -1,   129,    -1,   130,    -1,   131,    -1,
    671       57,    66,    -1,   109,    -1,   132,    -1,   133,    -1,   134,
    672       -1,   145,    -1,   136,    -1,   137,    -1,   139,    -1,   140,
    673       -1,   118,   111,    -1,    69,    -1,   119,    -1,   110,    11,
    674      110,    -1,   112,   101,   110,    -1,   110,    99,   100,    -1,
    675      110,    99,   111,   100,    -1,    91,   111,    92,    -1,    67,
    676       -1,    84,    -1,   121,    -1,    16,    99,   112,   100,    -1,
    677       53,    99,   112,   100,    -1,    54,    99,   111,   100,    -1,
    678       54,    99,   100,    -1,    55,    99,   112,   100,    -1,    56,
    679       99,   111,   100,    -1,    56,    99,   100,    -1,    45,    99,
    680      112,   100,    -1,    48,    99,   112,   100,    -1,    49,    99,
    681      112,   100,    -1,    51,    99,   112,   100,    -1,    46,    99,
    682      112,    94,   112,   100,    -1,    48,    99,   112,    94,   112,
    683      100,    -1,    50,    99,   112,    94,   112,   100,    -1,    51,
    684       99,   112,    94,   112,   100,    -1,    47,    99,   112,    94,
    685      112,    94,   112,   100,    -1,    49,    99,   112,    94,   112,
    686       94,   112,   100,    -1,    50,    99,   112,    94,   112,    94,
    687      112,   100,    -1,    51,    99,   112,    94,   112,    94,   112,
    688      100,    -1,    52,    99,   100,    -1,    52,    99,   111,   100,
    689       -1,   128,    99,   112,    94,   112,    94,   112,   100,    -1,
    690      128,    99,   112,   100,    -1,    17,    99,   122,    94,   122,
    691       94,   126,   100,    -1,    17,    99,   112,   100,    -1,   119,
    692       12,    66,    -1,    99,   111,   100,    -1,   111,    94,   112,
    693       -1,   112,    -1,   117,    -1,   110,    -1,   112,    91,   112,
    694       94,   112,    92,    -1,   112,    91,   112,    92,    -1,    71,
    695       99,   112,    94,    45,   100,    -1,    71,    99,   112,    94,
    696       48,   100,    -1,    71,    99,   112,    94,    49,   100,    -1,
    697       71,    99,   112,    94,    51,   100,    -1,    71,    99,   112,
    698       94,    52,   100,    -1,    71,    99,   112,    94,   112,   100,
    699       -1,   114,   112,   116,    -1,   114,   112,    85,   112,   116,
    700       -1,   115,   112,    94,   112,   116,    -1,    -1,    76,    99,
    701      113,   112,   100,    -1,    77,    99,    -1,    72,    99,    -1,
    702      100,    -1,   112,    10,    -1,   112,     7,    -1,   112,    88,
    703      112,    -1,   112,    89,   112,    -1,   112,    90,   112,    -1,
    704      112,    93,   112,    -1,   112,    86,   112,    -1,   112,    96,
    705      112,    -1,   112,     9,   112,    -1,   112,     4,   112,    -1,
    706      112,     3,   112,    -1,   112,    97,   112,    -1,     8,   112,
    707       -1,    89,   112,    -1,   120,   127,    -1,   111,    85,    -1,
    708       68,    -1,   102,   112,   102,    -1,    53,   110,    -1,    54,
    709      110,    -1,    55,   110,    -1,    56,   110,    -1,   128,   110,
    710       91,   112,    92,    91,   112,    92,    -1,   128,   110,    -1,
    711      120,    94,   110,    -1,    16,   110,    -1,    65,    -1,   112,
    712       -1,    99,   112,    94,   111,   100,    -1,    68,    -1,   123,
    713       -1,   123,    99,   111,   100,    -1,   124,    -1,   124,    94,
    714      125,    -1,   124,    -1,    99,   125,   100,    -1,    85,    -1,
    715       21,    -1,    15,    -1,    14,    -1,    86,   121,    -1,    59,
    716       65,    95,    -1,    59,    95,    -1,    57,    65,    95,    -1,
    717       58,   111,    -1,    60,   110,    -1,   133,    94,   110,    -1,
    718       62,    99,    53,   100,    -1,    62,    99,    54,   100,    -1,
    719       62,    99,    55,   100,    -1,    62,    99,    56,   100,    -1,
    720       62,    99,    17,   100,    -1,    62,    99,   128,   100,    -1,
    721       62,    99,    16,   100,    -1,    62,    99,   110,   100,    -1,
    722       62,    99,   110,    94,    53,   100,    -1,    62,    99,   110,
    723       94,    54,   100,    -1,    62,    99,   110,    94,    55,   100,
    724       -1,    62,    99,   110,    94,    56,   100,    -1,    62,    99,
    725      110,    94,    17,   100,    -1,    62,    99,   110,    94,   128,
    726      100,    -1,    62,    99,   110,    94,    16,   100,    -1,    62,
    727       99,   100,    -1,    17,    -1,   135,   110,   127,   122,    94,
    728      122,    94,   126,    -1,   135,   110,    -1,   135,   110,   127,
    729      110,    -1,   135,   110,   127,   110,    91,   111,    92,    -1,
    730       84,   121,    -1,    63,    -1,    31,    -1,   138,   112,    -1,
    731       64,   112,    -1,   111,    -1,    79,    99,   112,   100,    66,
    732       -1,    75,    66,    -1,    79,    99,   112,   100,    73,    -1,
     667     103,     0,    -1,    -1,   103,   104,    -1,   105,    -1,   107,
     668      94,    -1,   119,    94,    -1,   145,    -1,    80,    -1,    94,
     669      -1,     1,    94,    -1,   140,    -1,   141,    -1,   106,    -1,
     670     142,    -1,   143,    -1,   128,    -1,   129,    -1,   130,    -1,
     671      57,    66,    -1,   108,    -1,   131,    -1,   132,    -1,   133,
     672      -1,   144,    -1,   135,    -1,   136,    -1,   138,    -1,   139,
     673      -1,   117,   110,    -1,    69,    -1,   118,    -1,   109,    11,
     674     109,    -1,   111,   100,   109,    -1,   109,    98,    99,    -1,
     675     109,    98,   110,    99,    -1,    90,   110,    91,    -1,    67,
     676      -1,    84,    -1,   120,    -1,    16,    98,   111,    99,    -1,
     677      53,    98,   111,    99,    -1,    54,    98,   110,    99,    -1,
     678      54,    98,    99,    -1,    55,    98,   111,    99,    -1,    56,
     679      98,   110,    99,    -1,    56,    98,    99,    -1,    45,    98,
     680     111,    99,    -1,    48,    98,   111,    99,    -1,    49,    98,
     681     111,    99,    -1,    51,    98,   111,    99,    -1,    46,    98,
     682     111,    93,   111,    99,    -1,    48,    98,   111,    93,   111,
     683      99,    -1,    50,    98,   111,    93,   111,    99,    -1,    51,
     684      98,   111,    93,   111,    99,    -1,    47,    98,   111,    93,
     685     111,    93,   111,    99,    -1,    49,    98,   111,    93,   111,
     686      93,   111,    99,    -1,    50,    98,   111,    93,   111,    93,
     687     111,    99,    -1,    51,    98,   111,    93,   111,    93,   111,
     688      99,    -1,    52,    98,    99,    -1,    52,    98,   110,    99,
     689      -1,   127,    98,   111,    93,   111,    93,   111,    99,    -1,
     690     127,    98,   111,    99,    -1,    17,    98,   121,    93,   121,
     691      93,   125,    99,    -1,    17,    98,   111,    99,    -1,   118,
     692      12,    66,    -1,    98,   110,    99,    -1,   110,    93,   111,
     693      -1,   111,    -1,   116,    -1,   109,    -1,   111,    90,   111,
     694      93,   111,    91,    -1,   111,    90,   111,    91,    -1,    71,
     695      98,   111,    93,    45,    99,    -1,    71,    98,   111,    93,
     696      48,    99,    -1,    71,    98,   111,    93,    49,    99,    -1,
     697      71,    98,   111,    93,    51,    99,    -1,    71,    98,   111,
     698      93,    52,    99,    -1,    71,    98,   111,    93,   111,    99,
     699      -1,   113,   111,   115,    -1,   113,   111,    85,   111,   115,
     700      -1,   114,   111,    93,   111,   115,    -1,    -1,    76,    98,
     701     112,   111,    99,    -1,    77,    98,    -1,    72,    98,    -1,
     702      99,    -1,   111,    10,    -1,   111,     7,    -1,   111,    87,
     703     111,    -1,   111,    88,   111,    -1,   111,    89,   111,    -1,
     704     111,    92,   111,    -1,   111,    86,   111,    -1,   111,    95,
     705     111,    -1,   111,     9,   111,    -1,   111,     4,   111,    -1,
     706     111,     3,   111,    -1,   111,    96,   111,    -1,     8,   111,
     707      -1,    88,   111,    -1,   119,   126,    -1,   110,    85,    -1,
     708      68,    -1,   101,   111,   101,    -1,    53,   109,    -1,    54,
     709     109,    -1,    55,   109,    -1,    56,   109,    -1,   127,   109,
     710      90,   111,    91,    90,   111,    91,    -1,   127,   109,    -1,
     711     119,    93,   109,    -1,    16,   109,    -1,    65,    -1,   111,
     712      -1,    98,   111,    93,   110,    99,    -1,    68,    -1,   122,
     713      -1,   122,    98,   110,    99,    -1,   123,    -1,   123,    93,
     714     124,    -1,   123,    -1,    98,   124,    99,    -1,    85,    -1,
     715      21,    -1,    15,    -1,    14,    -1,    86,   120,    -1,    59,
     716      65,    94,    -1,    59,    94,    -1,    57,    65,    94,    -1,
     717      58,   110,    -1,    60,   109,    -1,   132,    93,   109,    -1,
     718      62,    98,    53,    99,    -1,    62,    98,    54,    99,    -1,
     719      62,    98,    55,    99,    -1,    62,    98,    56,    99,    -1,
     720      62,    98,    17,    99,    -1,    62,    98,   127,    99,    -1,
     721      62,    98,    16,    99,    -1,    62,    98,   109,    99,    -1,
     722      62,    98,   109,    93,    53,    99,    -1,    62,    98,   109,
     723      93,    54,    99,    -1,    62,    98,   109,    93,    55,    99,
     724      -1,    62,    98,   109,    93,    56,    99,    -1,    62,    98,
     725     109,    93,    17,    99,    -1,    62,    98,   109,    93,   127,
     726      99,    -1,    62,    98,   109,    93,    16,    99,    -1,    62,
     727      98,    99,    -1,    17,    -1,   134,   109,   126,   121,    93,
     728     121,    93,   125,    -1,   134,   109,    -1,   134,   109,   126,
     729     109,    -1,   134,   109,   126,   109,    90,   110,    91,    -1,
     730      84,   120,    -1,    63,    -1,    31,    -1,   137,   111,    -1,
     731      64,   111,    -1,   110,    -1,    79,    98,   111,    99,    66,
     732      -1,    75,    66,    -1,    79,    98,   111,    99,    73,    -1,
    733733      73,    -1,    74,    -1,    81,    65,    66,    -1,    78,    65,
    734       65,    65,    66,    -1,    16,   119,    66,    -1,    70,    65,
    735       66,    -1,    70,    65,    65,    66,    -1,    83,   120,    -1,
    736       83,   112,    -1,    82,    99,   111,   100,    -1,    82,    99,
    737      100,    -1
     734      65,    65,    66,    -1,    16,   118,    66,    -1,    70,    65,
     735      66,    -1,    70,    65,    65,    66,    -1,    83,   119,    -1,
     736      83,   111,    -1,    82,    98,   110,    99,    -1,    82,    98,
     737      99,    -1
    738738};
    739739
     
    782782  "ASSUME_CMD", "BREAK_CMD", "CONTINUE_CMD", "ELSE_CMD", "EVAL", "QUOTE",
    783783  "FOR_CMD", "IF_CMD", "SYS_BREAK", "WHILE_CMD", "RETURN", "PARAMETER",
    784   "SYSVAR", "'='", "'<'", "'>'", "'+'", "'-'", "'/'", "'['", "']'", "'^'",
    785   "','", "';'", "'&'", "':'", "UMINUS", "'('", "')'", "'.'", "'`'",
    786   "$accept", "lines", "pprompt", "flowctrl", "example_dummy", "command",
    787   "assign", "elemexpr", "exprlist", "expr", "$@1", "quote_start",
    788   "assume_start", "quote_end", "expr_arithmetic", "left_value",
    789   "extendedid", "declare_ip_variable", "stringexpr", "rlist", "ordername",
    790   "orderelem", "OrderingList", "ordering", "cmdeq", "mat_cmd", "filecmd",
    791   "helpcmd", "examplecmd", "exportcmd", "killcmd", "listcmd", "ringcmd1",
    792   "ringcmd", "scriptcmd", "setrings", "setringcmd", "typecmd", "ifcmd",
    793   "whilecmd", "forcmd", "proccmd", "parametercmd", "returncmd", 0
     784  "SYSVAR", "'='", "'<'", "'+'", "'-'", "'/'", "'['", "']'", "'^'", "','",
     785  "';'", "'&'", "':'", "UMINUS", "'('", "')'", "'.'", "'`'", "$accept",
     786  "lines", "pprompt", "flowctrl", "example_dummy", "command", "assign",
     787  "elemexpr", "exprlist", "expr", "$@1", "quote_start", "assume_start",
     788  "quote_end", "expr_arithmetic", "left_value", "extendedid",
     789  "declare_ip_variable", "stringexpr", "rlist", "ordername", "orderelem",
     790  "OrderingList", "ordering", "cmdeq", "mat_cmd", "filecmd", "helpcmd",
     791  "examplecmd", "exportcmd", "killcmd", "listcmd", "ringcmd1", "ringcmd",
     792  "scriptcmd", "setrings", "setringcmd", "typecmd", "ifcmd", "whilecmd",
     793  "forcmd", "proccmd", "parametercmd", "returncmd", 0
    794794};
    795795#endif
     
    808808     315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
    809809     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
    810      335,   336,   337,   338,   339,    61,    60,    62,    43,    45,
    811       47,    91,    93,    94,    44,    59,    38,    58,   340,    40,
    812       41,    46,    96
     810     335,   336,   337,   338,   339,    61,    60,    43,    45,    47,
     811      91,    93,    94,    44,    59,    38,    58,   340,    40,    41,
     812      46,    96
    813813};
    814814# endif
     
    817817static const yytype_uint8 yyr1[] =
    818818{
    819        0,   103,   104,   104,   105,   105,   105,   105,   105,   105,
    820      105,   106,   106,   106,   106,   106,   106,   106,   106,   107,
    821      108,   108,   108,   108,   108,   108,   108,   108,   108,   109,
    822      110,   110,   110,   110,   110,   110,   110,   110,   110,   110,
    823      110,   110,   110,   110,   110,   110,   110,   110,   110,   110,
    824      110,   110,   110,   110,   110,   110,   110,   110,   110,   110,
    825      110,   110,   110,   110,   110,   110,   110,   111,   111,   112,
    826      112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
    827      112,   112,   113,   112,   114,   115,   116,   117,   117,   117,
    828      117,   117,   117,   117,   117,   117,   117,   117,   117,   117,
    829      117,   118,   118,   119,   119,   120,   120,   120,   120,   120,
    830      120,   120,   120,   121,   122,   122,   123,   124,   124,   125,
    831      125,   126,   126,   127,   128,   128,   128,   129,   130,   130,
    832      131,   132,   133,   133,   134,   134,   134,   134,   134,   134,
    833      134,   134,   134,   134,   134,   134,   134,   134,   134,   134,
    834      135,   136,   136,   136,   136,   137,   138,   138,   139,   140,
    835      140,   141,   141,   141,   141,   141,   142,   143,   144,   144,
    836      144,   145,   145,   146,   146
     819       0,   102,   103,   103,   104,   104,   104,   104,   104,   104,
     820     104,   105,   105,   105,   105,   105,   105,   105,   105,   106,
     821     107,   107,   107,   107,   107,   107,   107,   107,   107,   108,
     822     109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
     823     109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
     824     109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
     825     109,   109,   109,   109,   109,   109,   109,   110,   110,   111,
     826     111,   111,   111,   111,   111,   111,   111,   111,   111,   111,
     827     111,   111,   112,   111,   113,   114,   115,   116,   116,   116,
     828     116,   116,   116,   116,   116,   116,   116,   116,   116,   116,
     829     116,   117,   117,   118,   118,   119,   119,   119,   119,   119,
     830     119,   119,   119,   120,   121,   121,   122,   123,   123,   124,
     831     124,   125,   125,   126,   127,   127,   127,   128,   129,   129,
     832     130,   131,   132,   132,   133,   133,   133,   133,   133,   133,
     833     133,   133,   133,   133,   133,   133,   133,   133,   133,   133,
     834     134,   135,   135,   135,   135,   136,   137,   137,   138,   139,
     835     139,   140,   140,   140,   140,   140,   141,   142,   143,   143,
     836     143,   144,   144,   145,   145
    837837};
    838838
     
    919919/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    920920   STATE-NUM.  */
    921 #define YYPACT_NINF -359
     921#define YYPACT_NINF -361
    922922static const yytype_int16 yypact[] =
    923923{
    924     -359,   383,  -359,   -81,  1977,  -359,  -359,  2042,   -75,  -359,
    925     -359,   -72,   -64,   -39,   -28,     4,     9,    16,    40,  2107,
    926     2172,  2237,  2302,    14,  1977,   -57,  1977,    44,  -359,  1977,
    927     -359,  -359,  -359,  -359,   111,    64,    95,  -359,  -359,   136,
    928      105,   119,   158,   127,  -359,   166,   147,  2367,   185,   185,
    929     1977,  1977,  -359,  1977,  1977,  -359,  -359,  -359,   160,  -359,
    930       -2,   -65,  1376,  1977,  1977,  -359,  1977,   245,   -53,  -359,
    931     2432,  -359,  -359,  -359,  -359,   165,  -359,  1977,  -359,  -359,
    932     1977,  -359,  -359,  -359,  -359,  -359,  -359,  -359,  -359,  -359,
    933      164,   -75,   169,   171,   176,   177,  -359,    23,   178,  1977,
    934       90,  1376,    -8,  2497,  1977,  1977,  1977,  1977,  1977,  1977,
    935     1977,  1587,  1977,    96,  1652,   209,  1977,   247,  1717,   464,
    936      183,  -359,   186,   184,  -359,    43,  1782,  1376,    22,  1977,
    937     -359,  -359,  -359,  -359,   216,  1977,   218,  1847,  2042,  1376,
    938      193,  -359,  -359,    23,   -46,   -55,     3,  -359,  1977,  1912,
    939     -359,  1977,  1977,  1977,  -359,  1977,  -359,  1977,  1977,  1977,
    940     1977,  1977,  1977,  1977,  1977,  1977,   238,   557,   186,   224,
    941     -359,  1977,  -359,  -359,  1977,    -9,  1977,    50,  1376,  1977,
    942     1977,  1652,  1977,  1717,  1977,   571,  -359,  1977,   666,   197,
    943      682,   698,   712,   262,   279,   726,   398,  -359,   -51,   740,
    944     -359,   -43,   835,  -359,   -41,  -359,  -359,   -36,   -16,    79,
    945       88,    93,    98,  -359,    33,   115,   227,  -359,   851,  1977,
    946      231,   865,  -359,  -359,   -38,  -359,  -359,  -359,  -359,  -359,
    947      -22,  1376,   163,  1485,  1485,  1499,    30,    30,    23,   414,
    948       18,  1471,    30,  -359,  1977,  -359,  -359,  1977,  -359,   629,
    949      509,  1977,   139,  2497,   571,   740,   -19,   835,    46,   509,
    950     -359,   881,  -359,  2497,  -359,  1977,  1977,  1977,  -359,  1977,
    951     -359,  1977,  1977,  -359,  -359,  -359,  -359,  -359,  -359,  -359,
    952     -359,  -359,  -359,  -359,  -359,   862,  -359,  -359,  -359,  2562,
    953      895,   232,   -47,  -359,  -359,  -359,  1977,   990,   990,  1977,
    954     -359,  1006,   130,  1376,   203,  -359,  -359,  1977,   206,  1020,
    955     1036,  1050,  1145,   525,   541,   202,   205,   207,   210,   212,
    956      221,   222,   117,   137,   140,   144,   162,  1159,  -359,  -359,
    957     -359,  -359,  1175,  -359,  -359,  1189,   234,  1977,  2497,    65,
    958      -63,  -359,  1977,  -359,  1977,  1977,  -359,  1977,  -359,  -359,
    959     -359,  -359,  -359,  -359,  -359,  -359,  -359,  -359,  -359,  -359,
    960     -359,  -359,  -359,  1977,  1977,    77,   215,  -359,  -359,   248,
    961      219,  -359,   230,  1203,  1219,  1314,  1330,  1346,  1362,  -359,
    962      -63,   239,   240,  1977,  -359,  -359,  -359,  -359,  -359,  -359,
    963     -359,  -359,   248,  -359,    68,  -359,  -359
     924    -361,   383,  -361,   -84,  1874,  -361,  -361,  1939,   -47,  -361,
     925    -361,   -34,   -27,   -23,   -19,   -15,     5,    32,    37,  2004,
     926    2069,  2134,  2199,   -26,  1874,   -61,  1874,    45,  -361,  1874,
     927    -361,  -361,  -361,  -361,    22,    51,    65,  -361,  -361,   100,
     928      73,    92,   130,    94,  -361,   139,   118,  2264,   153,   153,
     929    1874,  1874,  -361,  1874,  1874,  -361,  -361,  -361,     3,  -361,
     930      10,   -73,  1368,  1874,  1874,  -361,  1874,   211,   -48,  -361,
     931    2329,  -361,  -361,  -361,  -361,   128,  -361,  1874,  -361,  -361,
     932    1874,  -361,  -361,  -361,  -361,  -361,  -361,  -361,  -361,  -361,
     933     131,   -47,   133,   145,   150,   152,  -361,    24,   159,  1874,
     934     104,  1368,    -7,  2394,  1874,  1874,  1874,  1874,  1874,  1874,
     935    1874,  1484,  1874,   209,  1549,   248,  1874,   258,  1614,   264,
     936     187,  -361,   167,   196,  -361,   170,  1679,  1368,   113,  1874,
     937    -361,  -361,  -361,  -361,   213,  1874,   227,  1744,  1939,  1368,
     938     204,  -361,  -361,    24,   -66,   -69,     4,  -361,  1874,  1809,
     939    -361,  1874,  1874,  1874,  -361,  1874,  -361,  1874,  1874,  1874,
     940    1874,  1874,  1874,  1874,  1874,  1874,   166,   553,   167,   239,
     941    -361,  1874,  -361,  -361,  1874,    -9,  1874,    47,  1368,  1874,
     942    1874,  1549,  1874,  1614,  1874,   568,  -361,  1874,   583,   217,
     943     677,   692,   707,   184,   235,   722,   399,  -361,   -51,   737,
     944    -361,   -50,   752,  -361,   -37,  -361,  -361,    86,   116,   127,
     945     135,   138,   142,  -361,     8,   148,   246,  -361,   846,  1874,
     946     251,   861,  -361,  -361,   -21,  -361,  -361,  -361,  -361,  -361,
     947     -13,  1368,    50,   279,   279,  1397,    31,    31,    24,   414,
     948      19,  1383,    31,  -361,  1874,  -361,  -361,  1874,  -361,   287,
     949     508,  1874,   280,  2394,   568,   737,   -11,   752,    34,   508,
     950    -361,   876,  -361,  2394,  -361,  1874,  1874,  1874,  -361,  1874,
     951    -361,  1874,  1874,  -361,  -361,  -361,  -361,  -361,  -361,  -361,
     952    -361,  -361,  -361,  -361,  -361,  1367,  -361,  -361,  -361,  2459,
     953     891,   252,   -38,  -361,  -361,  -361,  1874,   906,   906,  1874,
     954    -361,   921,   206,  1368,   233,  -361,  -361,  1874,   236,  1015,
     955    1030,  1045,  1060,   523,   538,   241,   249,   256,   262,   271,
     956     288,   289,   189,   210,   240,   255,   261,  1075,  -361,  -361,
     957    -361,  -361,  1090,  -361,  -361,  1184,   242,  1874,  2394,    66,
     958     -62,  -361,  1874,  -361,  1874,  1874,  -361,  1874,  -361,  -361,
     959    -361,  -361,  -361,  -361,  -361,  -361,  -361,  -361,  -361,  -361,
     960    -361,  -361,  -361,  1874,  1874,   -30,   257,  -361,  -361,   277,
     961     291,  -361,   295,  1199,  1214,  1229,  1244,  1259,  1353,  -361,
     962     -62,   303,   302,  1874,  -361,  -361,  -361,  -361,  -361,  -361,
     963    -361,  -361,   277,  -361,    69,  -361,  -361
    964964};
    965965
     
    967967static const yytype_int16 yypgoto[] =
    968968{
    969     -359,  -359,  -359,  -359,  -359,  -359,  -359,    -4,    -1,    48,
    970     -359,  -359,  -359,  -168,  -359,  -359,   336,   298,   225,  -232,
    971     -359,  -358,   -35,   -31,   187,     0,  -359,  -359,  -359,  -359,
    972     -359,  -359,  -359,  -359,  -359,  -359,  -359,  -359,  -359,  -359,
    973     -359,  -359,  -359,  -359
     969    -361,  -361,  -361,  -361,  -361,  -361,  -361,    -4,    -1,    48,
     970    -361,  -361,  -361,    79,  -361,  -361,   398,   360,   315,  -209,
     971    -361,  -360,    18,    33,   238,     0,  -361,  -361,  -361,  -361,
     972    -361,  -361,  -361,  -361,  -361,  -361,  -361,  -361,  -361,  -361,
     973    -361,  -361,  -361,  -361
    974974};
    975975
     
    981981static const yytype_int16 yytable[] =
    982982{
    983       61,    70,   148,   100,   169,   368,   152,   153,   123,   148,
    984      154,   381,   155,   156,    89,   113,   115,   117,   119,   330,
    985      150,   304,   125,   122,   103,   154,   331,   104,   156,   151,
    986      154,   308,   170,   156,   381,   105,   369,   154,   124,   151,
    987      156,   171,   172,   151,   148,   226,   225,    70,   151,   274,
    988      144,   151,    97,   151,   148,   101,   151,   276,   186,   278,
    989      106,   148,   293,   179,   279,   168,   175,   101,   101,   101,
    990      101,   107,   151,   177,   101,   151,  -110,   127,   294,   120,
    991      121,   305,   251,   103,   280,  -110,  -110,   216,   217,   157,
    992      149,   158,   159,   160,   161,   139,   162,   149,   143,   163,
    993      164,   148,   146,   108,   165,   227,   366,   148,   109,   161,
    994      198,   166,   167,   201,   161,   110,   162,   204,   101,   165,
    995      160,   161,   214,   162,   165,   101,   215,   285,   178,   333,
    996      334,   165,   149,   286,   100,   170,   224,  -132,  -132,   111,
    997      151,   148,   149,   126,   228,  -152,   306,   185,   230,   149,
    998      148,   188,   190,   191,   192,   193,   194,   195,   196,   151,
    999      199,   243,   151,   129,   202,   367,  -154,   249,   396,   379,
    1000      154,   151,   252,   156,   101,  -112,   128,   218,   180,   281,
    1001      256,  -105,   258,   221,  -112,  -112,   101,   181,   282,   149,
    1002     -105,  -105,   182,   283,   130,   149,   101,   183,   284,   231,
    1003      232,   233,   131,   234,   132,   235,   236,   237,   238,   239,
    1004      240,   241,   242,   101,   184,   287,   104,   356,   133,   101,
    1005      148,   337,   250,   134,   101,  -153,   135,   254,   255,   149,
    1006      257,   136,   259,  -133,  -133,   261,   107,   357,   149,   108,
    1007      358,   152,   153,   110,   359,   154,   137,   155,   156,   302,
    1008       30,   158,   159,   160,   161,   147,   162,   169,   148,   176,
    1009      164,   111,   360,   179,   165,   152,   153,   290,   180,   154,
    1010      181,   155,   156,   141,   142,   182,   183,   184,   205,   206,
    1011      151,   220,   152,   153,   222,   321,   154,   171,   155,   156,
    1012      248,   263,   297,   288,  -106,   298,   291,   338,   329,   301,
    1013      340,   303,   349,  -106,  -106,   350,   339,   351,   149,   380,
    1014      352,   303,   353,   309,   310,   311,   368,   312,   383,   313,
    1015      314,   354,   355,   244,   157,   364,   158,   159,   160,   161,
    1016      384,   162,  -107,   392,   163,   164,   365,   327,   245,   165,
    1017      393,  -107,  -107,   102,   332,   140,   149,   335,   157,   391,
    1018      158,   159,   160,   161,     0,   162,   267,   395,   163,   164,
    1019        0,     0,   268,   165,   253,   157,     0,   158,   159,   160,
    1020      161,     0,   162,   269,     0,   163,   164,     0,     0,   270,
    1021      165,     0,   394,     2,     3,     0,   303,     0,     0,     0,
    1022      373,     4,   374,   375,     0,   376,     0,     5,     6,     7,
    1023        8,   152,   153,     0,     9,   154,     0,   155,   156,     0,
    1024        0,   377,   378,     0,    10,     0,     0,   152,   153,     0,
     983      61,    70,   148,   100,   123,   169,   368,   152,   153,   381,
     984      89,   154,   150,   155,   156,   113,   115,   117,   119,   148,
     985     151,   148,   125,   122,   151,   225,   154,   151,   330,   156,
     986     226,   154,   381,   124,   156,   331,   369,   170,   154,   120,
     987     121,   156,   151,   151,   304,   171,   172,    70,   274,   276,
     988     144,   103,    97,  -154,   308,   101,   151,   154,   148,   186,
     989     156,   379,   278,   151,   104,   168,   175,   101,   101,   101,
     990     101,   105,   151,   177,   101,   106,  -110,   127,   293,   107,
     991     151,   251,   151,   108,  -110,  -110,   294,   128,   305,   149,
     992     157,   158,   159,   160,   161,   139,   162,   147,   143,   163,
     993     164,   285,   146,   109,   165,   227,   149,   286,   149,   161,
     994     198,   166,   167,   201,   161,   148,   162,   204,   101,   165,
     995     160,   161,   214,   162,   165,   101,   215,   151,   178,   366,
     996     110,   165,   170,   306,   100,   111,   224,   158,   159,   160,
     997     161,  -152,   162,   126,   228,   149,   164,   185,   230,   129,
     998     165,   188,   190,   191,   192,   193,   194,   195,   196,   151,
     999     199,   243,   151,   130,   202,   367,   131,   249,   396,   152,
     1000     153,   132,   252,   154,   101,   155,   156,   218,   216,   217,
     1001     256,   148,   258,   221,   179,   279,   101,   152,   153,  -112,
     1002     133,   154,   135,   155,   156,   134,   101,  -112,  -112,   231,
     1003     232,   233,   149,   234,   136,   235,   236,   237,   238,   239,
     1004     240,   241,   242,   101,   103,   280,   137,   148,    30,   101,
     1005     148,   176,   250,   169,   101,   180,   281,   254,   255,   179,
     1006     257,   180,   259,   181,   282,   261,   182,   283,   152,   153,
     1007     183,   284,   154,   181,   155,   156,   184,   287,   182,   302,
     1008     183,   244,   157,   158,   159,   160,   161,   184,   162,   148,
     1009     151,   163,   164,  -132,  -132,   245,   165,   290,   149,   148,
     1010     157,   158,   159,   160,   161,   148,   162,   267,   220,   163,
     1011     164,   205,   152,   268,   165,   321,   154,   104,   356,   156,
     1012     206,   148,   297,   222,  -105,   298,   337,   171,   148,   301,
     1013    -153,   303,  -105,  -105,   149,   248,   339,   149,   107,   357,
     1014     263,   303,   288,   309,   310,   311,   291,   312,   329,   313,
     1015     314,   157,   158,   159,   160,   161,   338,   162,   269,   340,
     1016     163,   164,   364,  -106,   270,   165,   365,   327,   108,   358,
     1017     349,  -106,  -106,  -107,   332,   368,   149,   335,   350,  -108,
     1018     380,  -107,  -107,   110,   359,   351,   149,  -108,  -108,   111,
     1019     360,   352,   149,   141,   142,   157,   158,   159,   160,   161,
     1020     353,   162,  -111,  -133,  -133,   164,   333,   334,   149,   165,
     1021    -111,  -111,   394,     2,     3,   149,   303,   354,   355,   383,
     1022     373,     4,   374,   375,   384,   376,   392,     5,     6,     7,
     1023       8,   393,   152,   153,     9,   102,   154,   140,   155,   156,
     1024     395,   377,   378,   391,    10,   253,     0,   152,   153,     0,
    10251025       0,   154,     0,   155,   156,     0,     0,     0,    11,    12,
    10261026      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     
    10281028      31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
    10291029      41,    42,    43,    44,    45,    46,    47,    48,     0,    49,
    1030        0,     0,    50,     0,    51,   148,     0,     0,    52,     0,
    1031        0,     0,    53,     0,   157,    54,   158,   159,   160,   161,
     1030       0,    50,     0,    51,     0,     0,     0,    52,     0,     0,
     1031       0,    53,     0,     0,    54,   157,   158,   159,   160,   161,
    10321032       0,   162,   272,     0,   163,   164,     0,     0,   273,   165,
    1033      157,     0,   158,   159,   160,   161,   295,   162,   296,     0,
    1034      163,   164,   152,   153,     0,   165,   154,     0,   155,   156,
    1035        0,     0,     0,     0,     0,     0,     0,     0,   152,   153,
    1036        0,     0,   154,     0,   155,   156,     0,     0,     0,     0,
    1037        0,     0,     0,     0,   152,   153,     0,     0,   154,  -108,
    1038      155,   156,     0,     0,     0,     0,     0,     0,  -108,  -108,
    1039      152,   153,     0,   149,   154,     0,   155,   156,     0,     0,
    1040        0,     0,     0,     0,   152,   153,     0,     0,   154,     0,
    1041      155,   156,     0,     0,     0,     0,     0,     0,     0,     0,
    1042        0,     0,     0,     0,     0,   157,     0,   158,   159,   160,
    1043      161,     0,   162,   299,     0,   163,   164,     0,     0,   300,
    1044      165,   157,     0,   158,   159,   160,   161,     0,   162,   345,
    1045        0,   163,   164,     0,     0,   346,   165,   157,     0,   158,
    1046      159,   160,   161,     0,   162,   347,     0,   163,   164,     0,
    1047      148,   348,   165,   157,     0,   158,   159,   160,   161,     0,
    1048      162,   247,     0,   163,   164,     0,     0,   157,   165,   158,
    1049      159,   160,   161,     0,   162,     0,     0,   163,   164,   152,
    1050      153,   260,   165,   154,     0,   155,   156,     0,     0,     0,
     1033     157,   158,   159,   160,   161,   295,   162,   296,     0,   163,
     1034     164,   152,   153,     0,   165,   154,     0,   155,   156,     0,
     1035       0,     0,     0,     0,     0,     0,   152,   153,     0,     0,
     1036     154,     0,   155,   156,     0,     0,     0,     0,     0,     0,
     1037       0,   152,   153,     0,     0,   154,     0,   155,   156,     0,
     1038       0,     0,     0,     0,     0,     0,   152,   153,     0,     0,
     1039     154,     0,   155,   156,     0,     0,     0,     0,     0,     0,
     1040       0,   152,   153,     0,     0,   154,     0,   155,   156,     0,
     1041       0,     0,     0,     0,     0,     0,   152,   153,     0,     0,
     1042     154,     0,   155,   156,   157,   158,   159,   160,   161,     0,
     1043     162,   299,     0,   163,   164,     0,     0,   300,   165,   157,
     1044     158,   159,   160,   161,     0,   162,   345,     0,   163,   164,
     1045       0,     0,   346,   165,   157,   158,   159,   160,   161,     0,
     1046     162,   347,     0,   163,   164,     0,     0,   348,   165,   157,
     1047     158,   159,   160,   161,     0,   162,   247,     0,   163,   164,
     1048       0,     0,     0,   165,   157,   158,   159,   160,   161,     0,
     1049     162,     0,     0,   163,   164,     0,     0,   260,   165,   157,
     1050     158,   159,   160,   161,     0,   162,     0,     0,   163,   164,
     1051     152,   153,   262,   165,   154,     0,   155,   156,     0,     0,
    10511052       0,     0,     0,     0,     0,   152,   153,     0,     0,   154,
    10521053       0,   155,   156,     0,     0,     0,     0,     0,     0,     0,
     1054     152,   153,     0,     0,   154,     0,   155,   156,     0,     0,
     1055       0,     0,     0,     0,     0,   152,   153,     0,     0,   154,
     1056       0,   155,   156,     0,     0,     0,     0,     0,     0,     0,
     1057     152,   153,     0,     0,   154,     0,   155,   156,     0,     0,
     1058       0,     0,     0,     0,     0,   152,   153,     0,     0,   154,
     1059       0,   155,   156,   157,   158,   159,   160,   161,     0,   162,
     1060       0,     0,   163,   164,     0,     0,   264,   165,   157,   158,
     1061     159,   160,   161,     0,   162,   265,     0,   163,   164,     0,
     1062       0,     0,   165,   157,   158,   159,   160,   161,     0,   162,
     1063     266,     0,   163,   164,     0,     0,     0,   165,   157,   158,
     1064     159,   160,   161,     0,   162,   271,     0,   163,   164,     0,
     1065       0,     0,   165,   157,   158,   159,   160,   161,     0,   162,
     1066       0,     0,   163,   164,     0,     0,   275,   165,   157,   158,
     1067     159,   160,   161,     0,   162,     0,     0,   163,   164,   152,
     1068     153,   277,   165,   154,     0,   155,   156,     0,     0,     0,
     1069       0,     0,     0,     0,   152,   153,     0,     0,   154,     0,
     1070     155,   156,     0,     0,     0,     0,     0,     0,     0,   152,
     1071     153,     0,     0,   154,     0,   155,   156,     0,     0,     0,
     1072       0,     0,     0,     0,   152,   153,     0,     0,   154,     0,
     1073     155,   156,     0,     0,     0,     0,     0,     0,     0,   152,
     1074     153,     0,     0,   154,     0,   155,   156,     0,     0,     0,
     1075       0,     0,     0,     0,   152,   153,     0,     0,   154,     0,
     1076     155,   156,   157,   158,   159,   160,   161,     0,   162,   289,
     1077       0,   163,   164,     0,     0,     0,   165,   157,   158,   159,
     1078     160,   161,     0,   162,     0,     0,   163,   164,     0,     0,
     1079     292,   165,   157,   158,   159,   160,   161,     0,   162,   307,
     1080       0,   163,   164,     0,     0,     0,   165,   157,   158,   159,
     1081     160,   161,     0,   162,     0,     0,   163,   164,     0,     0,
     1082     328,   165,   157,   158,   159,   160,   161,     0,   162,     0,
     1083       0,   163,   164,     0,     0,   245,   165,   157,   158,   159,
     1084     160,   161,   336,   162,     0,     0,   163,   164,   152,   153,
     1085       0,   165,   154,     0,   155,   156,     0,     0,     0,     0,
     1086       0,     0,     0,   152,   153,     0,     0,   154,     0,   155,
     1087     156,     0,     0,     0,     0,     0,     0,     0,   152,   153,
     1088       0,     0,   154,     0,   155,   156,     0,     0,     0,     0,
     1089       0,     0,     0,   152,   153,     0,     0,   154,     0,   155,
     1090     156,     0,     0,     0,     0,     0,     0,     0,   152,   153,
     1091       0,     0,   154,     0,   155,   156,     0,     0,     0,     0,
     1092       0,     0,     0,   152,   153,     0,     0,   154,     0,   155,
     1093     156,   157,   158,   159,   160,   161,     0,   162,     0,     0,
     1094     163,   164,     0,     0,   341,   165,   157,   158,   159,   160,
     1095     161,     0,   162,   342,     0,   163,   164,     0,     0,     0,
     1096     165,   157,   158,   159,   160,   161,     0,   162,     0,     0,
     1097     163,   164,     0,     0,   343,   165,   157,   158,   159,   160,
     1098     161,     0,   162,   344,     0,   163,   164,     0,     0,     0,
     1099     165,   157,   158,   159,   160,   161,     0,   162,     0,     0,
     1100     163,   164,     0,     0,   361,   165,   157,   158,   159,   160,
     1101     161,   362,   162,     0,     0,   163,   164,   152,   153,     0,
     1102     165,   154,     0,   155,   156,     0,     0,     0,     0,     0,
     1103       0,     0,   152,   153,     0,     0,   154,     0,   155,   156,
     1104       0,     0,     0,     0,     0,     0,     0,   152,   153,     0,
     1105       0,   154,     0,   155,   156,     0,     0,     0,     0,     0,
     1106       0,     0,   152,   153,     0,     0,   154,     0,   155,   156,
     1107       0,     0,     0,     0,     0,     0,     0,   152,   153,     0,
     1108       0,   154,     0,   155,   156,     0,     0,     0,     0,     0,
     1109       0,     0,   152,   153,     0,     0,   154,     0,   155,   156,
     1110     157,   158,   159,   160,   161,     0,   162,   363,     0,   163,
     1111     164,     0,     0,     0,   165,   157,   158,   159,   160,   161,
     1112       0,   162,     0,     0,   163,   164,     0,     0,   385,   165,
     1113     157,   158,   159,   160,   161,     0,   162,     0,     0,   163,
     1114     164,     0,     0,   386,   165,   157,   158,   159,   160,   161,
     1115       0,   162,     0,     0,   163,   164,     0,     0,   387,   165,
     1116     157,   158,   159,   160,   161,     0,   162,     0,     0,   163,
     1117     164,     0,     0,   388,   165,   157,   158,   159,   160,   161,
     1118       0,   162,     0,     0,   163,   164,   152,   153,   389,   165,
     1119     154,     0,   155,   156,     0,     0,     0,     0,     0,     0,
    10531120       0,   152,   153,     0,     0,   154,     0,   155,   156,     0,
    1054        0,     0,     0,     0,  -111,   152,   153,     0,     0,   154,
    1055        0,   155,   156,  -111,  -111,     0,     0,     0,   149,   152,
    1056      153,     0,     0,   154,     0,   155,   156,     0,     0,     0,
    1057        0,     0,     0,   152,   153,     0,     0,   154,     0,   155,
    1058      156,     0,   157,     0,   158,   159,   160,   161,     0,   162,
    1059        0,     0,   163,   164,     0,     0,   262,   165,   157,     0,
    1060      158,   159,   160,   161,     0,   162,     0,     0,   163,   164,
    1061        0,     0,   264,   165,   157,     0,   158,   159,   160,   161,
    1062        0,   162,   265,     0,   163,   164,     0,     0,   157,   165,
    1063      158,   159,   160,   161,     0,   162,   266,     0,   163,   164,
    1064        0,     0,   157,   165,   158,   159,   160,   161,     0,   162,
    1065      271,     0,   163,   164,     0,     0,   157,   165,   158,   159,
    1066      160,   161,     0,   162,     0,     0,   163,   164,   152,   153,
    1067      275,   165,   154,     0,   155,   156,     0,     0,     0,     0,
    1068        0,     0,     0,     0,   152,   153,     0,     0,   154,     0,
    1069      155,   156,     0,     0,     0,     0,     0,     0,   152,   153,
    1070        0,     0,   154,     0,   155,   156,     5,     6,   315,   316,
    1071        0,     0,     0,     9,   152,   153,     0,     0,   154,     0,
    1072      155,   156,     0,     0,     0,     0,     0,     0,   152,   153,
    1073        0,     0,   154,     0,   155,   156,     0,     0,     0,     0,
    1074        0,     0,     0,     0,     0,   317,   318,   319,   320,     0,
    1075        0,   157,     0,   158,   159,   160,   161,     0,   162,     0,
    1076        0,   163,   164,     0,     0,   277,   165,   157,     0,   158,
    1077      159,   160,   161,     0,   162,   289,     0,   163,   164,     0,
    1078        0,   157,   165,   158,   159,   160,   161,     0,   162,     0,
    1079        0,   163,   164,     0,     0,   292,   165,   157,     0,   158,
    1080      159,   160,   161,     0,   162,   307,     0,   163,   164,     0,
    1081        0,   157,   165,   158,   159,   160,   161,     0,   162,     0,
    1082        0,   163,   164,   152,   153,   328,   165,   154,     0,   155,
    1083      156,     0,     0,     0,     0,     0,     0,     0,     0,   152,
    1084      153,     0,     0,   154,     0,   155,   156,     0,     0,     0,
    1085        0,     0,     0,   152,   153,     0,     0,   154,     0,   155,
    1086      156,     0,     0,     0,     0,     0,     0,     0,     0,   152,
    1087      153,     0,     0,   154,     0,   155,   156,     0,     0,     0,
    1088        0,     0,     0,   152,   153,     0,     0,   154,     0,   155,
    1089      156,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1090        0,     0,     0,     0,     0,     0,   157,     0,   158,   159,
    1091      160,   161,     0,   162,     0,     0,   163,   164,     0,     0,
    1092      245,   165,   157,     0,   158,   159,   160,   161,   336,   162,
    1093        0,     0,   163,   164,     0,     0,   157,   165,   158,   159,
    1094      160,   161,     0,   162,     0,     0,   163,   164,     0,     0,
    1095      341,   165,   157,     0,   158,   159,   160,   161,     0,   162,
    1096      342,     0,   163,   164,     0,     0,   157,   165,   158,   159,
    1097      160,   161,     0,   162,     0,     0,   163,   164,   152,   153,
    1098      343,   165,   154,     0,   155,   156,     0,     0,     0,     0,
    1099        0,     0,   152,   153,     0,     0,   154,     0,   155,   156,
    1100        0,     0,     0,     0,     0,     0,     0,     0,   152,   153,
    1101        0,     0,   154,     0,   155,   156,     0,     0,     0,     0,
    1102        0,     0,   152,   153,     0,     0,   154,     0,   155,   156,
    1103        0,     0,     0,     0,     0,     0,   152,   153,     0,     0,
     1121       0,     5,     6,   315,   316,     0,   152,   153,     9,     0,
    11041122     154,     0,   155,   156,     0,     0,     0,     0,     0,     0,
    1105        0,     0,   152,   153,     0,     0,   154,     0,   155,   156,
    1106        0,   157,     0,   158,   159,   160,   161,     0,   162,   344,
    1107        0,   163,   164,     0,     0,   157,   165,   158,   159,   160,
    1108      161,     0,   162,     0,     0,   163,   164,     0,     0,   361,
    1109      165,   157,     0,   158,   159,   160,   161,   362,   162,     0,
    1110        0,   163,   164,     0,     0,   157,   165,   158,   159,   160,
    1111      161,     0,   162,   363,     0,   163,   164,     0,     0,   157,
    1112      165,   158,   159,   160,   161,     0,   162,     0,     0,   163,
    1113      164,     0,     0,   385,   165,   157,     0,   158,   159,   160,
    1114      161,     0,   162,     0,     0,   163,   164,   152,   153,   386,
    1115      165,   154,     0,   155,   156,     0,     0,     0,     0,     0,
    1116        0,     0,     0,   152,   153,     0,     0,   154,     0,   155,
    1117      156,     0,     0,     0,     0,     0,     0,     0,     0,   152,
    1118      153,     0,     0,   154,     0,   155,   156,     0,     0,     0,
    1119        0,     0,     0,     0,     0,   152,   153,     0,     0,   154,
    1120        0,   155,   156,     0,     0,     0,     0,     0,     0,   152,
    1121      153,     0,     0,   154,     0,   155,   156,     0,     0,     0,
     1123     152,     0,     0,     0,   154,     0,     0,   156,     0,     0,
    11221124       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1123      157,     0,   158,   159,   160,   161,     0,   162,     0,     0,
    1124      163,   164,     0,     0,   387,   165,   157,     0,   158,   159,
    1125      160,   161,     0,   162,     0,     0,   163,   164,     0,     0,
    1126      388,   165,   157,     0,   158,   159,   160,   161,     0,   162,
    1127        0,     0,   163,   164,     0,     0,   389,   165,   157,     0,
     1125     317,   318,   319,   320,     0,     0,     0,     0,     0,     0,
     1126       0,     0,     0,     0,     0,     0,     0,     0,     0,   157,
    11281127     158,   159,   160,   161,   390,   162,     0,     0,   163,   164,
    1129        0,     0,   157,   165,   158,   159,   160,   161,     0,   162,
    1130        0,     0,   163,   164,   152,   153,     0,   165,   154,     0,
    1131      155,   156,     0,     0,     0,     0,     0,     0,   152,     0,
    1132        0,     0,   154,     0,     0,   156,     0,     0,     0,     0,
    1133        0,     0,   152,     0,     0,     0,   154,     0,     0,   156,
     1128       0,     0,     0,   165,   157,   158,   159,   160,   161,     0,
     1129     162,     0,     0,   163,   164,     0,     0,     0,   165,   157,
     1130     158,   159,   160,   161,     0,   162,     0,     0,     0,   164,
     1131       0,     0,     0,   165,   158,   159,   160,   161,     0,   162,
     1132       0,     0,     4,   164,     0,     0,     0,   165,     5,     6,
     1133      90,    91,     0,     0,     0,     9,     0,     0,     0,     0,
    11341134       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1135        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1136        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1137        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1138        0,     0,     0,     0,     0,     0,     0,   157,     0,   158,
    1139      159,   160,   161,     0,   162,     0,     0,     0,   164,     0,
    1140        0,   157,   165,   158,   159,   160,   161,     0,   162,     0,
    1141        0,     0,   164,     0,     0,     0,   165,   158,   159,   160,
    1142      161,     0,   162,     0,     0,     4,   164,     0,     0,     0,
    1143      165,     5,     6,    90,    91,     0,     0,     0,     9,     0,
    1144        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1145        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1146        0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    1147       92,    93,    94,    95,     0,     0,     0,     0,     0,     0,
    1148        0,     0,    30,     0,    31,    32,    33,     0,    35,    36,
    1149        4,     0,     0,    40,    41,     0,     5,     6,    90,    91,
    1150        0,    96,     0,     9,     0,     0,    50,     0,    51,     0,
    1151        0,     0,     0,     0,     0,     0,    53,   197,     0,    54,
    1152        0,     0,     0,     0,     0,     0,     0,    11,    12,    13,
    1153       14,    15,    16,    17,    18,    92,    93,    94,    95,     0,
    1154        0,     0,     0,     0,     0,     0,     0,    30,     0,    31,
    1155       32,    33,     0,    35,    36,     4,     0,     0,    40,    41,
    1156        0,     5,     6,    90,    91,     0,    96,     0,     9,     0,
    1157        0,    50,     0,    51,     0,     0,     0,     0,     0,     0,
    1158        0,    53,   200,     0,    54,     0,     0,     0,     0,     0,
    1159        0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    1160       92,    93,    94,    95,     0,     0,     0,     0,     0,     0,
    1161        0,     0,    30,     0,    31,    32,    33,     0,    35,    36,
    1162        4,     0,     0,    40,    41,     0,     5,     6,   207,   208,
    1163        0,    96,     0,     9,     0,     0,    50,     0,    51,     0,
    1164        0,     0,     0,     0,     0,     0,    53,   203,     0,    54,
    1165        0,     0,     0,     0,     0,     0,     0,    11,    12,    13,
    1166       14,    15,    16,    17,    18,   209,   210,   211,   212,     0,
    1167        0,     0,     0,     0,     0,     0,     0,    30,     0,    31,
    1168       32,    33,     0,    35,    36,     4,     0,     0,    40,    41,
    1169        0,     5,     6,    90,    91,     0,    96,     0,     9,     0,
    1170        0,    50,     0,    51,     0,     0,     0,     0,     0,     0,
    1171        0,    53,   213,     0,    54,     0,     0,     0,     0,     0,
    1172        0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    1173       92,    93,    94,    95,     0,     0,     0,     0,     0,     0,
    1174        0,     0,    30,     0,    31,    32,    33,     0,    35,    36,
    1175        4,     0,     0,    40,    41,     0,     5,     6,    90,    91,
    1176        0,    96,     0,     9,     0,     0,    50,     0,    51,     0,
    1177        0,     0,     0,     0,     0,     0,    53,   223,     0,    54,
    1178        0,     0,     0,     0,     0,     0,     0,    11,    12,    13,
    1179       14,    15,    16,    17,    18,    92,    93,    94,    95,     0,
    1180        0,     0,     0,     0,     0,     0,     0,    30,     0,    31,
    1181       32,    33,     0,    35,    36,     4,     0,     0,    40,    41,
    1182        0,     5,     6,    90,    91,     0,    96,     0,     9,     0,
    1183        0,    50,     0,    51,     0,     0,     0,     0,     0,     0,
    1184        0,    53,   229,     0,    54,     0,     0,     0,     0,     0,
    1185        0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    1186       92,    93,    94,    95,     0,     0,     0,     0,     0,     0,
    1187        0,     0,    30,     0,    31,    32,    33,     0,    35,    36,
    1188        4,     0,     0,    40,    41,     0,     5,     6,    90,    91,
    1189        0,    96,     0,     9,     0,     0,    50,     0,    51,     0,
    1190        0,     0,     0,     0,     0,     0,    53,     0,     0,    54,
    1191        0,     0,     0,     0,     0,     0,     0,    11,    12,    13,
    1192       14,    15,    16,    17,    18,    92,    93,    94,    95,     0,
    1193        0,     0,     0,     0,     0,     0,     0,    30,     0,    31,
    1194       32,    33,     0,    35,    36,     4,     0,     0,    40,    41,
    1195        0,     5,     6,    90,    91,     0,    96,     0,     9,     0,
    1196        0,    50,     0,    51,     0,     0,     0,     0,     0,     0,
    1197        0,    99,     0,     0,    54,     0,     0,     0,     0,     0,
    1198        0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    1199       92,    93,    94,    95,     0,     0,     0,     0,     0,     0,
    1200        0,     0,    30,     0,    31,    32,    33,     0,    35,    36,
    1201        4,     0,     0,    40,    41,     0,     5,     6,    90,    91,
    1202        0,    96,     0,     9,     0,     0,    50,     0,    51,     0,
    1203        0,     0,     0,     0,     0,     0,   112,     0,     0,    54,
    1204        0,     0,     0,     0,     0,     0,     0,    11,    12,    13,
    1205       14,    15,    16,    17,    18,    92,    93,    94,    95,     0,
    1206        0,     0,     0,     0,     0,     0,     0,    30,     0,    31,
    1207       32,    33,     0,    35,    36,     4,     0,     0,    40,    41,
    1208        0,     5,     6,    90,    91,     0,    96,     0,     9,     0,
    1209        0,    50,     0,    51,     0,     0,     0,     0,     0,     0,
    1210        0,   114,     0,     0,    54,     0,     0,     0,     0,     0,
    1211        0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    1212       92,    93,    94,    95,     0,     0,     0,     0,     0,     0,
    1213        0,     0,    30,     0,    31,    32,    33,     0,    35,    36,
    1214        4,     0,     0,    40,    41,     0,     5,     6,    90,    91,
    1215        0,    96,     0,     9,     0,     0,    50,     0,    51,     0,
    1216        0,     0,     0,     0,     0,     0,   116,     0,     0,    54,
    1217        0,     0,     0,     0,     0,     0,     0,    11,    12,    13,
    1218       14,    15,    16,    17,    18,    92,    93,    94,    95,     0,
    1219        0,     0,     0,     0,     0,     0,     0,    30,     0,    31,
    1220       32,    33,     0,    35,    36,     4,     0,     0,    40,    41,
    1221        0,     5,     6,   138,    91,     0,    96,     0,     9,     0,
    1222        0,    50,     0,    51,     0,     0,     0,     0,     0,     0,
    1223        0,   118,     0,     0,    54,     0,     0,     0,     0,     0,
    1224        0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    1225       19,    20,    21,    22,     0,     0,     0,     0,     0,     0,
    1226        0,     0,    30,     0,    31,    32,    33,     0,    35,    36,
    1227        4,     0,     0,    40,    41,     0,     5,     6,    90,    91,
    1228        0,    96,     0,     9,     0,     0,    50,     0,    51,     0,
    1229        0,     0,     0,     0,     0,     0,    53,     0,     0,    54,
    1230        0,     0,     0,     0,     0,     0,     0,    11,    12,    13,
    1231       14,    15,    16,    17,    18,    92,    93,    94,    95,     0,
    1232        0,     0,     0,     0,     0,     0,     0,    30,     0,    31,
    1233       32,    33,     0,    35,    36,     4,     0,     0,    40,    41,
    1234        0,     5,     6,    90,    91,     0,    96,     0,     9,     0,
    1235        0,    50,     0,    51,     0,     0,     0,     0,     0,     0,
    1236        0,   174,     0,     0,    54,     0,     0,     0,     0,     0,
    1237        0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    1238       92,    93,    94,    95,     0,     0,     0,     0,     0,     0,
    1239        0,     0,    30,     0,    31,    32,    33,     0,    35,    36,
    1240        4,     0,     0,    40,    41,     0,     5,     6,    90,    91,
    1241        0,    96,     0,     9,     0,     0,    50,     0,    51,     0,
    1242        0,     0,     0,     0,     0,     0,   187,     0,     0,    54,
    1243        0,     0,     0,     0,     0,     0,     0,   322,    12,    13,
    1244      323,   324,    16,   325,   326,    92,    93,    94,    95,     0,
    1245        0,     0,     0,     0,     0,     0,     0,    30,     0,    31,
    1246       32,    33,     0,    35,    36,     0,     0,     0,    40,    41,
    1247        0,     0,     0,     0,     0,     0,    96,     0,     0,     0,
    1248        0,    50,     0,    51,     0,     0,     0,     0,     0,     0,
    1249        0,    53,     0,     0,    54
     1135       0,     0,     0,     0,     0,     0,     0,     0,     0,    11,
     1136      12,    13,    14,    15,    16,    17,    18,    92,    93,    94,
     1137      95,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1138       0,    31,    32,    33,     0,    35,    36,     4,     0,     0,
     1139      40,    41,     0,     5,     6,    90,    91,     0,    96,     0,
     1140       9,     0,    50,     0,    51,     0,     0,     0,     0,     0,
     1141       0,     0,    53,   197,     0,    54,     0,     0,     0,     0,
     1142       0,     0,     0,     0,    11,    12,    13,    14,    15,    16,
     1143      17,    18,    92,    93,    94,    95,     0,     0,     0,     0,
     1144       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1145      35,    36,     4,     0,     0,    40,    41,     0,     5,     6,
     1146      90,    91,     0,    96,     0,     9,     0,    50,     0,    51,
     1147       0,     0,     0,     0,     0,     0,     0,    53,   200,     0,
     1148      54,     0,     0,     0,     0,     0,     0,     0,     0,    11,
     1149      12,    13,    14,    15,    16,    17,    18,    92,    93,    94,
     1150      95,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1151       0,    31,    32,    33,     0,    35,    36,     4,     0,     0,
     1152      40,    41,     0,     5,     6,   207,   208,     0,    96,     0,
     1153       9,     0,    50,     0,    51,     0,     0,     0,     0,     0,
     1154       0,     0,    53,   203,     0,    54,     0,     0,     0,     0,
     1155       0,     0,     0,     0,    11,    12,    13,    14,    15,    16,
     1156      17,    18,   209,   210,   211,   212,     0,     0,     0,     0,
     1157       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1158      35,    36,     4,     0,     0,    40,    41,     0,     5,     6,
     1159      90,    91,     0,    96,     0,     9,     0,    50,     0,    51,
     1160       0,     0,     0,     0,     0,     0,     0,    53,   213,     0,
     1161      54,     0,     0,     0,     0,     0,     0,     0,     0,    11,
     1162      12,    13,    14,    15,    16,    17,    18,    92,    93,    94,
     1163      95,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1164       0,    31,    32,    33,     0,    35,    36,     4,     0,     0,
     1165      40,    41,     0,     5,     6,    90,    91,     0,    96,     0,
     1166       9,     0,    50,     0,    51,     0,     0,     0,     0,     0,
     1167       0,     0,    53,   223,     0,    54,     0,     0,     0,     0,
     1168       0,     0,     0,     0,    11,    12,    13,    14,    15,    16,
     1169      17,    18,    92,    93,    94,    95,     0,     0,     0,     0,
     1170       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1171      35,    36,     4,     0,     0,    40,    41,     0,     5,     6,
     1172      90,    91,     0,    96,     0,     9,     0,    50,     0,    51,
     1173       0,     0,     0,     0,     0,     0,     0,    53,   229,     0,
     1174      54,     0,     0,     0,     0,     0,     0,     0,     0,    11,
     1175      12,    13,    14,    15,    16,    17,    18,    92,    93,    94,
     1176      95,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1177       0,    31,    32,    33,     0,    35,    36,     4,     0,     0,
     1178      40,    41,     0,     5,     6,    90,    91,     0,    96,     0,
     1179       9,     0,    50,     0,    51,     0,     0,     0,     0,     0,
     1180       0,     0,    53,     0,     0,    54,     0,     0,     0,     0,
     1181       0,     0,     0,     0,    11,    12,    13,    14,    15,    16,
     1182      17,    18,    92,    93,    94,    95,     0,     0,     0,     0,
     1183       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1184      35,    36,     4,     0,     0,    40,    41,     0,     5,     6,
     1185      90,    91,     0,    96,     0,     9,     0,    50,     0,    51,
     1186       0,     0,     0,     0,     0,     0,     0,    99,     0,     0,
     1187      54,     0,     0,     0,     0,     0,     0,     0,     0,    11,
     1188      12,    13,    14,    15,    16,    17,    18,    92,    93,    94,
     1189      95,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1190       0,    31,    32,    33,     0,    35,    36,     4,     0,     0,
     1191      40,    41,     0,     5,     6,    90,    91,     0,    96,     0,
     1192       9,     0,    50,     0,    51,     0,     0,     0,     0,     0,
     1193       0,     0,   112,     0,     0,    54,     0,     0,     0,     0,
     1194       0,     0,     0,     0,    11,    12,    13,    14,    15,    16,
     1195      17,    18,    92,    93,    94,    95,     0,     0,     0,     0,
     1196       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1197      35,    36,     4,     0,     0,    40,    41,     0,     5,     6,
     1198      90,    91,     0,    96,     0,     9,     0,    50,     0,    51,
     1199       0,     0,     0,     0,     0,     0,     0,   114,     0,     0,
     1200      54,     0,     0,     0,     0,     0,     0,     0,     0,    11,
     1201      12,    13,    14,    15,    16,    17,    18,    92,    93,    94,
     1202      95,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1203       0,    31,    32,    33,     0,    35,    36,     4,     0,     0,
     1204      40,    41,     0,     5,     6,    90,    91,     0,    96,     0,
     1205       9,     0,    50,     0,    51,     0,     0,     0,     0,     0,
     1206       0,     0,   116,     0,     0,    54,     0,     0,     0,     0,
     1207       0,     0,     0,     0,    11,    12,    13,    14,    15,    16,
     1208      17,    18,    92,    93,    94,    95,     0,     0,     0,     0,
     1209       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1210      35,    36,     4,     0,     0,    40,    41,     0,     5,     6,
     1211     138,    91,     0,    96,     0,     9,     0,    50,     0,    51,
     1212       0,     0,     0,     0,     0,     0,     0,   118,     0,     0,
     1213      54,     0,     0,     0,     0,     0,     0,     0,     0,    11,
     1214      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     1215      22,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1216       0,    31,    32,    33,     0,    35,    36,     4,     0,     0,
     1217      40,    41,     0,     5,     6,    90,    91,     0,    96,     0,
     1218       9,     0,    50,     0,    51,     0,     0,     0,     0,     0,
     1219       0,     0,    53,     0,     0,    54,     0,     0,     0,     0,
     1220       0,     0,     0,     0,    11,    12,    13,    14,    15,    16,
     1221      17,    18,    92,    93,    94,    95,     0,     0,     0,     0,
     1222       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1223      35,    36,     4,     0,     0,    40,    41,     0,     5,     6,
     1224      90,    91,     0,    96,     0,     9,     0,    50,     0,    51,
     1225       0,     0,     0,     0,     0,     0,     0,   174,     0,     0,
     1226      54,     0,     0,     0,     0,     0,     0,     0,     0,    11,
     1227      12,    13,    14,    15,    16,    17,    18,    92,    93,    94,
     1228      95,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1229       0,    31,    32,    33,     0,    35,    36,     4,     0,     0,
     1230      40,    41,     0,     5,     6,    90,    91,     0,    96,     0,
     1231       9,     0,    50,     0,    51,     0,     0,     0,     0,     0,
     1232       0,     0,   187,     0,     0,    54,     0,     0,     0,     0,
     1233       0,     0,     0,     0,   322,    12,    13,   323,   324,    16,
     1234     325,   326,    92,    93,    94,    95,     0,     0,     0,     0,
     1235       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1236      35,    36,     0,     0,     0,    40,    41,     0,     0,     0,
     1237       0,     0,     0,    96,     0,     0,     0,    50,     0,    51,
     1238       0,     0,     0,     0,     0,     0,     0,    53,     0,     0,
     1239      54
    12501240};
    12511241
    12521242static const yytype_int16 yycheck[] =
    12531243{
    1254        1,     1,    11,     7,    12,    68,     3,     4,    65,    11,
    1255        7,   369,     9,    10,    95,    19,    20,    21,    22,    66,
    1256       85,   253,    26,    24,    99,     7,    73,    99,    10,    94,
    1257        7,   263,    85,    10,   392,    99,    99,     7,    95,    94,
    1258       10,    94,    95,    94,    11,   100,    92,    47,    94,   100,
    1259       51,    94,     4,    94,    11,     7,    94,   100,    66,   100,
    1260       99,    11,   100,    99,   100,    66,    70,    19,    20,    21,
    1261       22,    99,    94,    77,    26,    94,    85,    29,   100,    65,
    1262       66,   100,    91,    99,   100,    94,    95,    65,    66,    86,
    1263       99,    88,    89,    90,    91,    47,    93,    99,    50,    96,
    1264       97,    11,    54,    99,   101,   102,   338,    11,    99,    91,
    1265      111,    63,    64,   114,    91,    99,    93,   118,    70,   101,
    1266       90,    91,   126,    93,   101,    77,   126,    94,    80,   297,
    1267      298,   101,    99,   100,   138,    85,   137,    94,    95,    99,
    1268       94,    11,    99,    99,   148,    95,   100,    99,   149,    99,
    1269       11,   103,   104,   105,   106,   107,   108,   109,   110,    94,
    1270      112,   165,    94,    99,   116,   100,     3,   171,   100,    92,
    1271        7,    94,   176,    10,   126,    85,    65,   129,    99,   100,
    1272      181,    85,   183,   135,    94,    95,   138,    99,   100,    99,
    1273       94,    95,    99,   100,    99,    99,   148,    99,   100,   151,
    1274      152,   153,    66,   155,    99,   157,   158,   159,   160,   161,
    1275      162,   163,   164,   165,    99,   100,    99,   100,    99,   171,
    1276       11,    91,   174,    65,   176,    95,    99,   179,   180,    99,
    1277      182,    65,   184,    94,    95,   187,    99,   100,    99,    99,
    1278      100,     3,     4,    99,   100,     7,    99,     9,    10,   253,
    1279       65,    88,    89,    90,    91,    95,    93,    12,    11,    94,
    1280       97,    99,   100,    99,   101,     3,     4,   219,    99,     7,
    1281       99,     9,    10,    48,    49,    99,    99,    99,    95,    95,
    1282       94,    65,     3,     4,    66,   285,     7,    94,     9,    10,
    1283       66,    94,   244,    66,    85,   247,    65,    94,    66,   251,
    1284       94,   253,   100,    94,    95,   100,   307,   100,    99,    94,
    1285      100,   263,   100,   265,   266,   267,    68,   269,    99,   271,
    1286      272,   100,   100,    85,    86,    91,    88,    89,    90,    91,
    1287      100,    93,    85,    94,    96,    97,   337,   289,   100,   101,
    1288      100,    94,    95,     7,   296,    47,    99,   299,    86,   380,
    1289       88,    89,    90,    91,    -1,    93,    94,   392,    96,    97,
    1290       -1,    -1,   100,   101,   177,    86,    -1,    88,    89,    90,
    1291       91,    -1,    93,    94,    -1,    96,    97,    -1,    -1,   100,
    1292      101,    -1,   383,     0,     1,    -1,   338,    -1,    -1,    -1,
    1293      342,     8,   344,   345,    -1,   347,    -1,    14,    15,    16,
    1294       17,     3,     4,    -1,    21,     7,    -1,     9,    10,    -1,
    1295       -1,   363,   364,    -1,    31,    -1,    -1,     3,     4,    -1,
     1244       1,     1,    11,     7,    65,    12,    68,     3,     4,   369,
     1245      94,     7,    85,     9,    10,    19,    20,    21,    22,    11,
     1246      93,    11,    26,    24,    93,    91,     7,    93,    66,    10,
     1247      99,     7,   392,    94,    10,    73,    98,    85,     7,    65,
     1248      66,    10,    93,    93,   253,    93,    94,    47,    99,    99,
     1249      51,    98,     4,     3,   263,     7,    93,     7,    11,    66,
     1250      10,    91,    99,    93,    98,    66,    70,    19,    20,    21,
     1251      22,    98,    93,    77,    26,    98,    85,    29,    99,    98,
     1252      93,    90,    93,    98,    93,    94,    99,    65,    99,    98,
     1253      86,    87,    88,    89,    90,    47,    92,    94,    50,    95,
     1254      96,    93,    54,    98,   100,   101,    98,    99,    98,    90,
     1255     111,    63,    64,   114,    90,    11,    92,   118,    70,   100,
     1256      89,    90,   126,    92,   100,    77,   126,    93,    80,   338,
     1257      98,   100,    85,    99,   138,    98,   137,    87,    88,    89,
     1258      90,    94,    92,    98,   148,    98,    96,    99,   149,    98,
     1259     100,   103,   104,   105,   106,   107,   108,   109,   110,    93,
     1260     112,   165,    93,    98,   116,    99,    66,   171,    99,     3,
     1261       4,    98,   176,     7,   126,     9,    10,   129,    65,    66,
     1262     181,    11,   183,   135,    98,    99,   138,     3,     4,    85,
     1263      98,     7,    98,     9,    10,    65,   148,    93,    94,   151,
     1264     152,   153,    98,   155,    65,   157,   158,   159,   160,   161,
     1265     162,   163,   164,   165,    98,    99,    98,    11,    65,   171,
     1266      11,    93,   174,    12,   176,    98,    99,   179,   180,    98,
     1267     182,    98,   184,    98,    99,   187,    98,    99,     3,     4,
     1268      98,    99,     7,    98,     9,    10,    98,    99,    98,   253,
     1269      98,    85,    86,    87,    88,    89,    90,    98,    92,    11,
     1270      93,    95,    96,    93,    94,    99,   100,   219,    98,    11,
     1271      86,    87,    88,    89,    90,    11,    92,    93,    65,    95,
     1272      96,    94,     3,    99,   100,   285,     7,    98,    99,    10,
     1273      94,    11,   244,    66,    85,   247,    90,    93,    11,   251,
     1274      94,   253,    93,    94,    98,    66,   307,    98,    98,    99,
     1275      93,   263,    66,   265,   266,   267,    65,   269,    66,   271,
     1276     272,    86,    87,    88,    89,    90,    93,    92,    93,    93,
     1277      95,    96,    90,    85,    99,   100,   337,   289,    98,    99,
     1278      99,    93,    94,    85,   296,    68,    98,   299,    99,    85,
     1279      93,    93,    94,    98,    99,    99,    98,    93,    94,    98,
     1280      99,    99,    98,    48,    49,    86,    87,    88,    89,    90,
     1281      99,    92,    85,    93,    94,    96,   297,   298,    98,   100,
     1282      93,    94,   383,     0,     1,    98,   338,    99,    99,    98,
     1283     342,     8,   344,   345,    99,   347,    93,    14,    15,    16,
     1284      17,    99,     3,     4,    21,     7,     7,    47,     9,    10,
     1285     392,   363,   364,   380,    31,   177,    -1,     3,     4,    -1,
    12961286      -1,     7,    -1,     9,    10,    -1,    -1,    -1,    45,    46,
    12971287      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
     
    12991289      67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
    13001290      77,    78,    79,    80,    81,    82,    83,    84,    -1,    86,
    1301       -1,    -1,    89,    -1,    91,    11,    -1,    -1,    95,    -1,
    1302       -1,    -1,    99,    -1,    86,   102,    88,    89,    90,    91,
    1303       -1,    93,    94,    -1,    96,    97,    -1,    -1,   100,   101,
    1304       86,    -1,    88,    89,    90,    91,    92,    93,    94,    -1,
    1305       96,    97,     3,     4,    -1,   101,     7,    -1,     9,    10,
    1306       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
    1307       -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1308       -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    85,
    1309        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    94,    95,
    1310        3,     4,    -1,    99,     7,    -1,     9,    10,    -1,    -1,
    1311       -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
    1312        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1313       -1,    -1,    -1,    -1,    -1,    86,    -1,    88,    89,    90,
    1314       91,    -1,    93,    94,    -1,    96,    97,    -1,    -1,   100,
    1315      101,    86,    -1,    88,    89,    90,    91,    -1,    93,    94,
    1316       -1,    96,    97,    -1,    -1,   100,   101,    86,    -1,    88,
    1317       89,    90,    91,    -1,    93,    94,    -1,    96,    97,    -1,
    1318       11,   100,   101,    86,    -1,    88,    89,    90,    91,    -1,
    1319       93,    94,    -1,    96,    97,    -1,    -1,    86,   101,    88,
    1320       89,    90,    91,    -1,    93,    -1,    -1,    96,    97,     3,
    1321        4,   100,   101,     7,    -1,     9,    10,    -1,    -1,    -1,
     1291      -1,    88,    -1,    90,    -1,    -1,    -1,    94,    -1,    -1,
     1292      -1,    98,    -1,    -1,   101,    86,    87,    88,    89,    90,
     1293      -1,    92,    93,    -1,    95,    96,    -1,    -1,    99,   100,
     1294      86,    87,    88,    89,    90,    91,    92,    93,    -1,    95,
     1295      96,     3,     4,    -1,   100,     7,    -1,     9,    10,    -1,
     1296      -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
     1297       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
     1298      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1299      -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
     1300       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
     1301      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1302      -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
     1303       7,    -1,     9,    10,    86,    87,    88,    89,    90,    -1,
     1304      92,    93,    -1,    95,    96,    -1,    -1,    99,   100,    86,
     1305      87,    88,    89,    90,    -1,    92,    93,    -1,    95,    96,
     1306      -1,    -1,    99,   100,    86,    87,    88,    89,    90,    -1,
     1307      92,    93,    -1,    95,    96,    -1,    -1,    99,   100,    86,
     1308      87,    88,    89,    90,    -1,    92,    93,    -1,    95,    96,
     1309      -1,    -1,    -1,   100,    86,    87,    88,    89,    90,    -1,
     1310      92,    -1,    -1,    95,    96,    -1,    -1,    99,   100,    86,
     1311      87,    88,    89,    90,    -1,    92,    -1,    -1,    95,    96,
     1312       3,     4,    99,   100,     7,    -1,     9,    10,    -1,    -1,
    13221313      -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
    13231314      -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1315       3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
     1316      -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
     1317      -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1318       3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
     1319      -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
     1320      -1,     9,    10,    86,    87,    88,    89,    90,    -1,    92,
     1321      -1,    -1,    95,    96,    -1,    -1,    99,   100,    86,    87,
     1322      88,    89,    90,    -1,    92,    93,    -1,    95,    96,    -1,
     1323      -1,    -1,   100,    86,    87,    88,    89,    90,    -1,    92,
     1324      93,    -1,    95,    96,    -1,    -1,    -1,   100,    86,    87,
     1325      88,    89,    90,    -1,    92,    93,    -1,    95,    96,    -1,
     1326      -1,    -1,   100,    86,    87,    88,    89,    90,    -1,    92,
     1327      -1,    -1,    95,    96,    -1,    -1,    99,   100,    86,    87,
     1328      88,    89,    90,    -1,    92,    -1,    -1,    95,    96,     3,
     1329       4,    99,   100,     7,    -1,     9,    10,    -1,    -1,    -1,
     1330      -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
     1331       9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,
     1332       4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
     1333      -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
     1334       9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,
     1335       4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
     1336      -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
     1337       9,    10,    86,    87,    88,    89,    90,    -1,    92,    93,
     1338      -1,    95,    96,    -1,    -1,    -1,   100,    86,    87,    88,
     1339      89,    90,    -1,    92,    -1,    -1,    95,    96,    -1,    -1,
     1340      99,   100,    86,    87,    88,    89,    90,    -1,    92,    93,
     1341      -1,    95,    96,    -1,    -1,    -1,   100,    86,    87,    88,
     1342      89,    90,    -1,    92,    -1,    -1,    95,    96,    -1,    -1,
     1343      99,   100,    86,    87,    88,    89,    90,    -1,    92,    -1,
     1344      -1,    95,    96,    -1,    -1,    99,   100,    86,    87,    88,
     1345      89,    90,    91,    92,    -1,    -1,    95,    96,     3,     4,
     1346      -1,   100,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
     1347      -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
     1348      10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
     1349      -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
     1350      -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
     1351      10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
     1352      -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
     1353      -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
     1354      10,    86,    87,    88,    89,    90,    -1,    92,    -1,    -1,
     1355      95,    96,    -1,    -1,    99,   100,    86,    87,    88,    89,
     1356      90,    -1,    92,    93,    -1,    95,    96,    -1,    -1,    -1,
     1357     100,    86,    87,    88,    89,    90,    -1,    92,    -1,    -1,
     1358      95,    96,    -1,    -1,    99,   100,    86,    87,    88,    89,
     1359      90,    -1,    92,    93,    -1,    95,    96,    -1,    -1,    -1,
     1360     100,    86,    87,    88,    89,    90,    -1,    92,    -1,    -1,
     1361      95,    96,    -1,    -1,    99,   100,    86,    87,    88,    89,
     1362      90,    91,    92,    -1,    -1,    95,    96,     3,     4,    -1,
     1363     100,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1364      -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
     1365      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,
     1366      -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1367      -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
     1368      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,
     1369      -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1370      -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
     1371      86,    87,    88,    89,    90,    -1,    92,    93,    -1,    95,
     1372      96,    -1,    -1,    -1,   100,    86,    87,    88,    89,    90,
     1373      -1,    92,    -1,    -1,    95,    96,    -1,    -1,    99,   100,
     1374      86,    87,    88,    89,    90,    -1,    92,    -1,    -1,    95,
     1375      96,    -1,    -1,    99,   100,    86,    87,    88,    89,    90,
     1376      -1,    92,    -1,    -1,    95,    96,    -1,    -1,    99,   100,
     1377      86,    87,    88,    89,    90,    -1,    92,    -1,    -1,    95,
     1378      96,    -1,    -1,    99,   100,    86,    87,    88,    89,    90,
     1379      -1,    92,    -1,    -1,    95,    96,     3,     4,    99,   100,
     1380       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
    13241381      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
    1325       -1,    -1,    -1,    -1,    85,     3,     4,    -1,    -1,     7,
    1326       -1,     9,    10,    94,    95,    -1,    -1,    -1,    99,     3,
    1327        4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
    1328       -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
    1329       10,    -1,    86,    -1,    88,    89,    90,    91,    -1,    93,
    1330       -1,    -1,    96,    97,    -1,    -1,   100,   101,    86,    -1,
    1331       88,    89,    90,    91,    -1,    93,    -1,    -1,    96,    97,
    1332       -1,    -1,   100,   101,    86,    -1,    88,    89,    90,    91,
    1333       -1,    93,    94,    -1,    96,    97,    -1,    -1,    86,   101,
    1334       88,    89,    90,    91,    -1,    93,    94,    -1,    96,    97,
    1335       -1,    -1,    86,   101,    88,    89,    90,    91,    -1,    93,
    1336       94,    -1,    96,    97,    -1,    -1,    86,   101,    88,    89,
    1337       90,    91,    -1,    93,    -1,    -1,    96,    97,     3,     4,
    1338      100,   101,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1339       -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
    1340        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
    1341       -1,    -1,     7,    -1,     9,    10,    14,    15,    16,    17,
    1342       -1,    -1,    -1,    21,     3,     4,    -1,    -1,     7,    -1,
    1343        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
    1344       -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1345       -1,    -1,    -1,    -1,    -1,    53,    54,    55,    56,    -1,
    1346       -1,    86,    -1,    88,    89,    90,    91,    -1,    93,    -1,
    1347       -1,    96,    97,    -1,    -1,   100,   101,    86,    -1,    88,
    1348       89,    90,    91,    -1,    93,    94,    -1,    96,    97,    -1,
    1349       -1,    86,   101,    88,    89,    90,    91,    -1,    93,    -1,
    1350       -1,    96,    97,    -1,    -1,   100,   101,    86,    -1,    88,
    1351       89,    90,    91,    -1,    93,    94,    -1,    96,    97,    -1,
    1352       -1,    86,   101,    88,    89,    90,    91,    -1,    93,    -1,
    1353       -1,    96,    97,     3,     4,   100,   101,     7,    -1,     9,
    1354       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,
    1355        4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
    1356       -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
    1357       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,
    1358        4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
    1359       -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
    1360       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1361       -1,    -1,    -1,    -1,    -1,    -1,    86,    -1,    88,    89,
    1362       90,    91,    -1,    93,    -1,    -1,    96,    97,    -1,    -1,
    1363      100,   101,    86,    -1,    88,    89,    90,    91,    92,    93,
    1364       -1,    -1,    96,    97,    -1,    -1,    86,   101,    88,    89,
    1365       90,    91,    -1,    93,    -1,    -1,    96,    97,    -1,    -1,
    1366      100,   101,    86,    -1,    88,    89,    90,    91,    -1,    93,
    1367       94,    -1,    96,    97,    -1,    -1,    86,   101,    88,    89,
    1368       90,    91,    -1,    93,    -1,    -1,    96,    97,     3,     4,
    1369      100,   101,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1370       -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
    1371       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
    1372       -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1373       -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
    1374       -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
     1382      -1,    14,    15,    16,    17,    -1,     3,     4,    21,    -1,
    13751383       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
    1376       -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
    1377       -1,    86,    -1,    88,    89,    90,    91,    -1,    93,    94,
    1378       -1,    96,    97,    -1,    -1,    86,   101,    88,    89,    90,
    1379       91,    -1,    93,    -1,    -1,    96,    97,    -1,    -1,   100,
    1380      101,    86,    -1,    88,    89,    90,    91,    92,    93,    -1,
    1381       -1,    96,    97,    -1,    -1,    86,   101,    88,    89,    90,
    1382       91,    -1,    93,    94,    -1,    96,    97,    -1,    -1,    86,
    1383      101,    88,    89,    90,    91,    -1,    93,    -1,    -1,    96,
    1384       97,    -1,    -1,   100,   101,    86,    -1,    88,    89,    90,
    1385       91,    -1,    93,    -1,    -1,    96,    97,     3,     4,   100,
    1386      101,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
    1387       -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
    1388       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,
    1389        4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
    1390       -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
    1391       -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,     3,
    1392        4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
     1384       3,    -1,    -1,    -1,     7,    -1,    -1,    10,    -1,    -1,
    13931385      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1394       86,    -1,    88,    89,    90,    91,    -1,    93,    -1,    -1,
    1395       96,    97,    -1,    -1,   100,   101,    86,    -1,    88,    89,
    1396       90,    91,    -1,    93,    -1,    -1,    96,    97,    -1,    -1,
    1397      100,   101,    86,    -1,    88,    89,    90,    91,    -1,    93,
    1398       -1,    -1,    96,    97,    -1,    -1,   100,   101,    86,    -1,
    1399       88,    89,    90,    91,    92,    93,    -1,    -1,    96,    97,
    1400       -1,    -1,    86,   101,    88,    89,    90,    91,    -1,    93,
    1401       -1,    -1,    96,    97,     3,     4,    -1,   101,     7,    -1,
    1402        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,     3,    -1,
    1403       -1,    -1,     7,    -1,    -1,    10,    -1,    -1,    -1,    -1,
    1404       -1,    -1,     3,    -1,    -1,    -1,     7,    -1,    -1,    10,
     1386      53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
     1387      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,
     1388      87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
     1389      -1,    -1,    -1,   100,    86,    87,    88,    89,    90,    -1,
     1390      92,    -1,    -1,    95,    96,    -1,    -1,    -1,   100,    86,
     1391      87,    88,    89,    90,    -1,    92,    -1,    -1,    -1,    96,
     1392      -1,    -1,    -1,   100,    87,    88,    89,    90,    -1,    92,
     1393      -1,    -1,     8,    96,    -1,    -1,    -1,   100,    14,    15,
     1394      16,    17,    -1,    -1,    -1,    21,    -1,    -1,    -1,    -1,
    14051395      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1406       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1407       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1408       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1409       -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,    -1,    88,
    1410       89,    90,    91,    -1,    93,    -1,    -1,    -1,    97,    -1,
    1411       -1,    86,   101,    88,    89,    90,    91,    -1,    93,    -1,
    1412       -1,    -1,    97,    -1,    -1,    -1,   101,    88,    89,    90,
    1413       91,    -1,    93,    -1,    -1,     8,    97,    -1,    -1,    -1,
    1414      101,    14,    15,    16,    17,    -1,    -1,    -1,    21,    -1,
    1415       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1416       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1417       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
    1418       53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
    1419       -1,    -1,    65,    -1,    67,    68,    69,    -1,    71,    72,
    1420        8,    -1,    -1,    76,    77,    -1,    14,    15,    16,    17,
    1421       -1,    84,    -1,    21,    -1,    -1,    89,    -1,    91,    -1,
    1422       -1,    -1,    -1,    -1,    -1,    -1,    99,   100,    -1,   102,
    1423       -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,
    1424       48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
    1425       -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    67,
    1426       68,    69,    -1,    71,    72,     8,    -1,    -1,    76,    77,
    1427       -1,    14,    15,    16,    17,    -1,    84,    -1,    21,    -1,
    1428       -1,    89,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
    1429       -1,    99,   100,    -1,   102,    -1,    -1,    -1,    -1,    -1,
    1430       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
    1431       53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
    1432       -1,    -1,    65,    -1,    67,    68,    69,    -1,    71,    72,
    1433        8,    -1,    -1,    76,    77,    -1,    14,    15,    16,    17,
    1434       -1,    84,    -1,    21,    -1,    -1,    89,    -1,    91,    -1,
    1435       -1,    -1,    -1,    -1,    -1,    -1,    99,   100,    -1,   102,
    1436       -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,
    1437       48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
    1438       -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    67,
    1439       68,    69,    -1,    71,    72,     8,    -1,    -1,    76,    77,
    1440       -1,    14,    15,    16,    17,    -1,    84,    -1,    21,    -1,
    1441       -1,    89,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
    1442       -1,    99,   100,    -1,   102,    -1,    -1,    -1,    -1,    -1,
    1443       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
    1444       53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
    1445       -1,    -1,    65,    -1,    67,    68,    69,    -1,    71,    72,
    1446        8,    -1,    -1,    76,    77,    -1,    14,    15,    16,    17,
    1447       -1,    84,    -1,    21,    -1,    -1,    89,    -1,    91,    -1,
    1448       -1,    -1,    -1,    -1,    -1,    -1,    99,   100,    -1,   102,
    1449       -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,
    1450       48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
    1451       -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    67,
    1452       68,    69,    -1,    71,    72,     8,    -1,    -1,    76,    77,
    1453       -1,    14,    15,    16,    17,    -1,    84,    -1,    21,    -1,
    1454       -1,    89,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
    1455       -1,    99,   100,    -1,   102,    -1,    -1,    -1,    -1,    -1,
    1456       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
    1457       53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
    1458       -1,    -1,    65,    -1,    67,    68,    69,    -1,    71,    72,
    1459        8,    -1,    -1,    76,    77,    -1,    14,    15,    16,    17,
    1460       -1,    84,    -1,    21,    -1,    -1,    89,    -1,    91,    -1,
    1461       -1,    -1,    -1,    -1,    -1,    -1,    99,    -1,    -1,   102,
    1462       -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,
    1463       48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
    1464       -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    67,
    1465       68,    69,    -1,    71,    72,     8,    -1,    -1,    76,    77,
    1466       -1,    14,    15,    16,    17,    -1,    84,    -1,    21,    -1,
    1467       -1,    89,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
    1468       -1,    99,    -1,    -1,   102,    -1,    -1,    -1,    -1,    -1,
    1469       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
    1470       53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
    1471       -1,    -1,    65,    -1,    67,    68,    69,    -1,    71,    72,
    1472        8,    -1,    -1,    76,    77,    -1,    14,    15,    16,    17,
    1473       -1,    84,    -1,    21,    -1,    -1,    89,    -1,    91,    -1,
    1474       -1,    -1,    -1,    -1,    -1,    -1,    99,    -1,    -1,   102,
    1475       -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,
    1476       48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
    1477       -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    67,
    1478       68,    69,    -1,    71,    72,     8,    -1,    -1,    76,    77,
    1479       -1,    14,    15,    16,    17,    -1,    84,    -1,    21,    -1,
    1480       -1,    89,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
    1481       -1,    99,    -1,    -1,   102,    -1,    -1,    -1,    -1,    -1,
    1482       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
    1483       53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
    1484       -1,    -1,    65,    -1,    67,    68,    69,    -1,    71,    72,
    1485        8,    -1,    -1,    76,    77,    -1,    14,    15,    16,    17,
    1486       -1,    84,    -1,    21,    -1,    -1,    89,    -1,    91,    -1,
    1487       -1,    -1,    -1,    -1,    -1,    -1,    99,    -1,    -1,   102,
    1488       -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,
    1489       48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
    1490       -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    67,
    1491       68,    69,    -1,    71,    72,     8,    -1,    -1,    76,    77,
    1492       -1,    14,    15,    16,    17,    -1,    84,    -1,    21,    -1,
    1493       -1,    89,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
    1494       -1,    99,    -1,    -1,   102,    -1,    -1,    -1,    -1,    -1,
    1495       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
    1496       53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
    1497       -1,    -1,    65,    -1,    67,    68,    69,    -1,    71,    72,
    1498        8,    -1,    -1,    76,    77,    -1,    14,    15,    16,    17,
    1499       -1,    84,    -1,    21,    -1,    -1,    89,    -1,    91,    -1,
    1500       -1,    -1,    -1,    -1,    -1,    -1,    99,    -1,    -1,   102,
    1501       -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,
    1502       48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
    1503       -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    67,
    1504       68,    69,    -1,    71,    72,     8,    -1,    -1,    76,    77,
    1505       -1,    14,    15,    16,    17,    -1,    84,    -1,    21,    -1,
    1506       -1,    89,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
    1507       -1,    99,    -1,    -1,   102,    -1,    -1,    -1,    -1,    -1,
    1508       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
    1509       53,    54,    55,    56,    -1,    -1,    -1,    -1,    -1,    -1,
    1510       -1,    -1,    65,    -1,    67,    68,    69,    -1,    71,    72,
    1511        8,    -1,    -1,    76,    77,    -1,    14,    15,    16,    17,
    1512       -1,    84,    -1,    21,    -1,    -1,    89,    -1,    91,    -1,
    1513       -1,    -1,    -1,    -1,    -1,    -1,    99,    -1,    -1,   102,
    1514       -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,
    1515       48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
    1516       -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    67,
    1517       68,    69,    -1,    71,    72,    -1,    -1,    -1,    76,    77,
    1518       -1,    -1,    -1,    -1,    -1,    -1,    84,    -1,    -1,    -1,
    1519       -1,    89,    -1,    91,    -1,    -1,    -1,    -1,    -1,    -1,
    1520       -1,    99,    -1,    -1,   102
     1396      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,
     1397      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
     1398      56,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,
     1399      -1,    67,    68,    69,    -1,    71,    72,     8,    -1,    -1,
     1400      76,    77,    -1,    14,    15,    16,    17,    -1,    84,    -1,
     1401      21,    -1,    88,    -1,    90,    -1,    -1,    -1,    -1,    -1,
     1402      -1,    -1,    98,    99,    -1,   101,    -1,    -1,    -1,    -1,
     1403      -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,    50,
     1404      51,    52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,
     1405      -1,    -1,    -1,    -1,    65,    -1,    67,    68,    69,    -1,
     1406      71,    72,     8,    -1,    -1,    76,    77,    -1,    14,    15,
     1407      16,    17,    -1,    84,    -1,    21,    -1,    88,    -1,    90,
     1408      -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    99,    -1,
     1409     101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,
     1410      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
     1411      56,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,
     1412      -1,    67,    68,    69,    -1,    71,    72,     8,    -1,    -1,
     1413      76,    77,    -1,    14,    15,    16,    17,    -1,    84,    -1,
     1414      21,    -1,    88,    -1,    90,    -1,    -1,    -1,    -1,    -1,
     1415      -1,    -1,    98,    99,    -1,   101,    -1,    -1,    -1,    -1,
     1416      -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,    50,
     1417      51,    52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,
     1418      -1,    -1,    -1,    -1,    65,    -1,    67,    68,    69,    -1,
     1419      71,    72,     8,    -1,    -1,    76,    77,    -1,    14,    15,
     1420      16,    17,    -1,    84,    -1,    21,    -1,    88,    -1,    90,
     1421      -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    99,    -1,
     1422     101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,
     1423      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
     1424      56,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,
     1425      -1,    67,    68,    69,    -1,    71,    72,     8,    -1,    -1,
     1426      76,    77,    -1,    14,    15,    16,    17,    -1,    84,    -1,
     1427      21,    -1,    88,    -1,    90,    -1,    -1,    -1,    -1,    -1,
     1428      -1,    -1,    98,    99,    -1,   101,    -1,    -1,    -1,    -1,
     1429      -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,    50,
     1430      51,    52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,
     1431      -1,    -1,    -1,    -1,    65,    -1,    67,    68,    69,    -1,
     1432      71,    72,     8,    -1,    -1,    76,    77,    -1,    14,    15,
     1433      16,    17,    -1,    84,    -1,    21,    -1,    88,    -1,    90,
     1434      -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    99,    -1,
     1435     101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,
     1436      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
     1437      56,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,
     1438      -1,    67,    68,    69,    -1,    71,    72,     8,    -1,    -1,
     1439      76,    77,    -1,    14,    15,    16,    17,    -1,    84,    -1,
     1440      21,    -1,    88,    -1,    90,    -1,    -1,    -1,    -1,    -1,
     1441      -1,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,    -1,
     1442      -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,    50,
     1443      51,    52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,
     1444      -1,    -1,    -1,    -1,    65,    -1,    67,    68,    69,    -1,
     1445      71,    72,     8,    -1,    -1,    76,    77,    -1,    14,    15,
     1446      16,    17,    -1,    84,    -1,    21,    -1,    88,    -1,    90,
     1447      -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,
     1448     101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,
     1449      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
     1450      56,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,
     1451      -1,    67,    68,    69,    -1,    71,    72,     8,    -1,    -1,
     1452      76,    77,    -1,    14,    15,    16,    17,    -1,    84,    -1,
     1453      21,    -1,    88,    -1,    90,    -1,    -1,    -1,    -1,    -1,
     1454      -1,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,    -1,
     1455      -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,    50,
     1456      51,    52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,
     1457      -1,    -1,    -1,    -1,    65,    -1,    67,    68,    69,    -1,
     1458      71,    72,     8,    -1,    -1,    76,    77,    -1,    14,    15,
     1459      16,    17,    -1,    84,    -1,    21,    -1,    88,    -1,    90,
     1460      -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,
     1461     101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,
     1462      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
     1463      56,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,
     1464      -1,    67,    68,    69,    -1,    71,    72,     8,    -1,    -1,
     1465      76,    77,    -1,    14,    15,    16,    17,    -1,    84,    -1,
     1466      21,    -1,    88,    -1,    90,    -1,    -1,    -1,    -1,    -1,
     1467      -1,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,    -1,
     1468      -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,    50,
     1469      51,    52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,
     1470      -1,    -1,    -1,    -1,    65,    -1,    67,    68,    69,    -1,
     1471      71,    72,     8,    -1,    -1,    76,    77,    -1,    14,    15,
     1472      16,    17,    -1,    84,    -1,    21,    -1,    88,    -1,    90,
     1473      -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,
     1474     101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,
     1475      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
     1476      56,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,
     1477      -1,    67,    68,    69,    -1,    71,    72,     8,    -1,    -1,
     1478      76,    77,    -1,    14,    15,    16,    17,    -1,    84,    -1,
     1479      21,    -1,    88,    -1,    90,    -1,    -1,    -1,    -1,    -1,
     1480      -1,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,    -1,
     1481      -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,    50,
     1482      51,    52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,
     1483      -1,    -1,    -1,    -1,    65,    -1,    67,    68,    69,    -1,
     1484      71,    72,     8,    -1,    -1,    76,    77,    -1,    14,    15,
     1485      16,    17,    -1,    84,    -1,    21,    -1,    88,    -1,    90,
     1486      -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,
     1487     101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,
     1488      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
     1489      56,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    65,
     1490      -1,    67,    68,    69,    -1,    71,    72,     8,    -1,    -1,
     1491      76,    77,    -1,    14,    15,    16,    17,    -1,    84,    -1,
     1492      21,    -1,    88,    -1,    90,    -1,    -1,    -1,    -1,    -1,
     1493      -1,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,    -1,
     1494      -1,    -1,    -1,    -1,    45,    46,    47,    48,    49,    50,
     1495      51,    52,    53,    54,    55,    56,    -1,    -1,    -1,    -1,
     1496      -1,    -1,    -1,    -1,    65,    -1,    67,    68,    69,    -1,
     1497      71,    72,    -1,    -1,    -1,    76,    77,    -1,    -1,    -1,
     1498      -1,    -1,    -1,    84,    -1,    -1,    -1,    88,    -1,    90,
     1499      -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,
     1500     101
    15211501};
    15221502
     
    15251505static const yytype_uint8 yystos[] =
    15261506{
    1527        0,   104,     0,     1,     8,    14,    15,    16,    17,    21,
     1507       0,   103,     0,     1,     8,    14,    15,    16,    17,    21,
    15281508      31,    45,    46,    47,    48,    49,    50,    51,    52,    53,
    15291509      54,    55,    56,    57,    58,    59,    60,    62,    63,    64,
    15301510      65,    67,    68,    69,    70,    71,    72,    73,    74,    75,
    15311511      76,    77,    78,    79,    80,    81,    82,    83,    84,    86,
    1532       89,    91,    95,    99,   102,   105,   106,   107,   108,   109,
    1533      110,   111,   112,   114,   115,   117,   118,   119,   120,   121,
    1534      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
    1535      138,   139,   140,   141,   142,   143,   144,   145,   146,    95,
    1536       16,    17,    53,    54,    55,    56,    84,   112,   128,    99,
    1537      110,   112,   119,    99,    99,    99,    99,    99,    99,    99,
    1538       99,    99,    99,   110,    99,   110,    99,   110,    99,   110,
    1539       65,    66,   111,    65,    95,   110,    99,   112,    65,    99,
    1540       99,    66,    99,    99,    65,    99,    65,    99,    16,   112,
    1541      120,   121,   121,   112,   111,   111,   112,    95,    11,    99,
    1542       85,    94,     3,     4,     7,     9,    10,    86,    88,    89,
    1543       90,    91,    93,    96,    97,   101,   112,   112,   111,    12,
    1544       85,    94,    95,   127,    99,   110,    94,   110,   112,    99,
    1545       99,    99,    99,    99,    99,   112,    66,    99,   112,   122,
    1546      112,   112,   112,   112,   112,   112,   112,   100,   111,   112,
    1547      100,   111,   112,   100,   111,    95,    95,    16,    17,    53,
    1548       54,    55,    56,   100,   110,   128,    65,    66,   112,   113,
    1549       65,   112,    66,   100,   111,    92,   100,   102,   110,   100,
    1550      111,   112,   112,   112,   112,   112,   112,   112,   112,   112,
    1551      112,   112,   112,   110,    85,   100,   116,    94,    66,   110,
    1552      112,    91,   110,   127,   112,   112,   111,   112,   111,   112,
    1553      100,   112,   100,    94,   100,    94,    94,    94,   100,    94,
    1554      100,    94,    94,   100,   100,   100,   100,   100,   100,   100,
    1555      100,   100,   100,   100,   100,    94,   100,   100,    66,    94,
    1556      112,    65,   100,   100,   100,    92,    94,   112,   112,    94,
    1557      100,   112,   110,   112,   122,   100,   100,    94,   122,   112,
    1558      112,   112,   112,   112,   112,    16,    17,    53,    54,    55,
    1559       56,   128,    45,    48,    49,    51,    52,   112,   100,    66,
    1560       66,    73,   112,   116,   116,   112,    92,    91,    94,   111,
    1561       94,   100,    94,   100,    94,    94,   100,    94,   100,   100,
    1562      100,   100,   100,   100,   100,   100,   100,   100,   100,   100,
    1563      100,   100,    92,    94,    91,   111,   122,   100,    68,    99,
    1564      123,   124,   126,   112,   112,   112,   112,   112,   112,    92,
    1565       94,   124,   125,    99,   100,   100,   100,   100,   100,   100,
    1566       92,   126,    94,   100,   111,   125,   100
     1512      88,    90,    94,    98,   101,   104,   105,   106,   107,   108,
     1513     109,   110,   111,   113,   114,   116,   117,   118,   119,   120,
     1514     127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
     1515     137,   138,   139,   140,   141,   142,   143,   144,   145,    94,
     1516      16,    17,    53,    54,    55,    56,    84,   111,   127,    98,
     1517     109,   111,   118,    98,    98,    98,    98,    98,    98,    98,
     1518      98,    98,    98,   109,    98,   109,    98,   109,    98,   109,
     1519      65,    66,   110,    65,    94,   109,    98,   111,    65,    98,
     1520      98,    66,    98,    98,    65,    98,    65,    98,    16,   111,
     1521     119,   120,   120,   111,   110,   110,   111,    94,    11,    98,
     1522      85,    93,     3,     4,     7,     9,    10,    86,    87,    88,
     1523      89,    90,    92,    95,    96,   100,   111,   111,   110,    12,
     1524      85,    93,    94,   126,    98,   109,    93,   109,   111,    98,
     1525      98,    98,    98,    98,    98,   111,    66,    98,   111,   121,
     1526     111,   111,   111,   111,   111,   111,   111,    99,   110,   111,
     1527      99,   110,   111,    99,   110,    94,    94,    16,    17,    53,
     1528      54,    55,    56,    99,   109,   127,    65,    66,   111,   112,
     1529      65,   111,    66,    99,   110,    91,    99,   101,   109,    99,
     1530     110,   111,   111,   111,   111,   111,   111,   111,   111,   111,
     1531     111,   111,   111,   109,    85,    99,   115,    93,    66,   109,
     1532     111,    90,   109,   126,   111,   111,   110,   111,   110,   111,
     1533      99,   111,    99,    93,    99,    93,    93,    93,    99,    93,
     1534      99,    93,    93,    99,    99,    99,    99,    99,    99,    99,
     1535      99,    99,    99,    99,    99,    93,    99,    99,    66,    93,
     1536     111,    65,    99,    99,    99,    91,    93,   111,   111,    93,
     1537      99,   111,   109,   111,   121,    99,    99,    93,   121,   111,
     1538     111,   111,   111,   111,   111,    16,    17,    53,    54,    55,
     1539      56,   127,    45,    48,    49,    51,    52,   111,    99,    66,
     1540      66,    73,   111,   115,   115,   111,    91,    90,    93,   110,
     1541      93,    99,    93,    99,    93,    93,    99,    93,    99,    99,
     1542      99,    99,    99,    99,    99,    99,    99,    99,    99,    99,
     1543      99,    99,    91,    93,    90,   110,   121,    99,    68,    98,
     1544     122,   123,   125,   111,   111,   111,   111,   111,   111,    91,
     1545      93,   123,   124,    98,    99,    99,    99,    99,    99,    99,
     1546      91,   125,    93,    99,   110,   124,    99
    15671547};
    15681548
     
    31863166/* Line 1464 of yacc.c  */
    31873167#line 803 "grammar.y"
    3188     {
     3168    { /* also for *,% */
    31893169            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
    31903170          ;}
     
    32043184/* Line 1464 of yacc.c  */
    32053185#line 811 "grammar.y"
    3206     {
     3186    { /* also for > */
    32073187            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
    32083188          ;}
     
    32133193/* Line 1464 of yacc.c  */
    32143194#line 815 "grammar.y"
    3215     {
     3195    { /* also for |*/
    32163196            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
    32173197          ;}
     
    42834263
    42844264/* Line 1464 of yacc.c  */
    4285 #line 4284 "grammar.cc"
     4265#line 4264 "grammar.cc"
    42864266      default: break;
    42874267    }
  • Singular/grammar.y

    re7d857 rce5d1b  
    290290%type <i>    mat_cmd
    291291
    292 %type <i>    '=' '<' '>' '+' '-' COLONCOLON
     292%type <i>    '=' '<' '+' '-' COLONCOLON
    293293%type <i>    '/' '[' ']' '^' ',' ';'
    294294
     
    801801          }
    802802        | expr '/' expr
    803           {
     803          { /* also for *,% */
    804804            if(iiExprArith2(&$$,&$1,$<i>2,&$3)) YYERROR;
    805805          }
     
    809809          }
    810810        | expr '<' expr
    811           {
     811          { /* also for > */
    812812            if(iiExprArith2(&$$,&$1,$<i>2,&$3)) YYERROR;
    813813          }
    814814        | expr '&' expr
    815           {
     815          { /* also for |*/
    816816            if(iiExprArith2(&$$,&$1,$<i>2,&$3)) YYERROR;
    817817          }
  • Singular/iparith.cc

    re7d857 rce5d1b  
    56345634  mp_Monomials((matrix)res->data, rank, pVar((poly)v->Data()),(matrix)w->Data(),currRing);
    56355635  return FALSE;
     5636}
     5637static BOOLEAN jjELIMIN_ALG(leftv res, leftv u, leftv v, leftv w)
     5638{
     5639  ideal I=(ideal)u->Data();
     5640  GbVariant alg=syGetAlgorithm((char*)w->Data(),currRing,I);
     5641  res->data=(char *)idElimination(I,(poly)v->Data(),NULL,alg);
     5642  //setFlag(res,FLAG_STD);
     5643  return v->next!=NULL; //do not allow next like in eliminate(I,a(1..4))
    56365644}
    56375645static BOOLEAN jjELIMIN_HILB(leftv res, leftv u, leftv v, leftv w)
  • Singular/links/asciiLink.cc

    re7d857 rce5d1b  
    426426  {
    427427    #define MAX_LIBS 256
    428     (*list_of_libs)=(char**)omalloc0(MAX_LIBS*sizeof(char**));
     428    (*list_of_libs)=(char**)omAlloc0(MAX_LIBS*sizeof(char**));
    429429    (*list_of_libs)[0]=name;
    430430    (*list_of_libs)[MAX_LIBS-1]=(char*)1;
  • Singular/misc_ip.cc

    re7d857 rce5d1b  
    7474
    7575#ifdef HAVE_NTL
    76 #include<NTL/version.h>
    77 #include<NTL/tools.h>
     76#include <NTL/version.h>
     77#include <NTL/tools.h>
    7878#ifdef NTL_CLIENT
    7979NTL_CLIENT
  • Singular/table.h

    re7d857 rce5d1b  
    759759,{D(jjELIMIN_HILB),    ELIMINATION_CMD,IDEAL_CMD, IDEAL_CMD, POLY_CMD, INTVEC_CMD, NO_PLURAL |ALLOW_RING}
    760760,{D(jjELIMIN_HILB),    ELIMINATION_CMD,MODUL_CMD, MODUL_CMD, POLY_CMD, INTVEC_CMD, NO_PLURAL |ALLOW_RING}
     761,{D(jjELIMIN_ALG),     ELIMINATION_CMD,IDEAL_CMD, IDEAL_CMD,  POLY_CMD, STRING_CMD, ALLOW_PLURAL |ALLOW_RING}
     762,{D(jjELIMIN_ALG),     ELIMINATION_CMD,MODUL_CMD, MODUL_CMD,  POLY_CMD, STRING_CMD, ALLOW_PLURAL |ALLOW_RING}
    761763,{D(jjFIND3),          FIND_CMD,   INT_CMD,    STRING_CMD, STRING_CMD, INT_CMD, ALLOW_PLURAL |ALLOW_RING}
    762764,{D(jjFRES3),          FRES_CMD,   RESOLUTION_CMD, IDEAL_CMD, INT_CMD, STRING_CMD, NO_PLURAL |NO_RING}
  • Singular/tesths.cc

    re7d857 rce5d1b  
    3636
    3737#include <unistd.h>
     38#ifdef HAVE_NTL
     39#include <NTL/config.h>
     40#endif
    3841
    3942
     
    6770  siInit(argv[0]);
    6871  init_signals();
     72  #ifdef HAVE_NTL
     73  #if NTL_MAJOR_VERSION>=10
     74  #ifdef NTL_THREAD_BOOST
     75  SetNumThreads(feOptValue(FE_OPT_CPUS));
     76  #endif
     77  #endif
     78  #endif
    6979
    7080  // parse command line options
  • Tst/Long/eliminate_2.res.gz.uu

    re7d857 rce5d1b  
    11begin 640 eliminate_2.res.gz
    2 M'XL("*5:.TP``V5L:6UI;F%T95\R+G)E<P#564MOW#@2ON=7"(,]2)#:$:OX
    3 MC&$?%GN9;+"7["T(!FV[9[J!C!VX93OVKU_65WK9;J>=K"<S(Z!%JDC6FT56
    4 M]?O__NOG_Q1%88Z+=S__L_BIVW8'GS8G/QT6N??+YGS3E=5A<?&YVUR<EY\O
    5 M+[KJ\)5`B^/C8O5I\_OF?-FM?J&#\]7-P;9;=J_>]PCIN!C[?%!<;LY_*]X?
    6 M,;4M-^67YK:Y:U;-KTW77#77S4VS;$Z:T^:L65?-V>?#<:4]+C9GJ^6GXNW1
    7 M"','^57\2O4-+4PS@CW`7ZCNJ%[>&PD8N:7ZBNJ3>R,1(W=47U-]>F\D861%
    8 M]=D<;%JEW=4WRPEHE/)MW5W5RY,)3DKWKKZZKD].)S@KU55]>C8!K2*I;^N[
    9 M>E7/2/;BUEU]55_/>5&!;^IE?5*?UF>CTDR85&^RA&^/UA>_7_Q6OLW*G2:E
    10 MX^+U:]7MNZ-M=U:^G08IB[DY[ZY7I\5Z<_3Z]7KSZ:1\UYC9C"RS:1;<+'Q#
    11 MODG-(J6&;$/YMS`Q#Y$QC8^4.\2V<<F[/"=ZTYB68]LL`K%OF&/,\UL7&S(^
    12 MS\UMTTY4:##_OX]&9\MR?+F]ZZZN;Y8G68'K3>;J`[^ACZ8TIMJ6ILVO5&VI
    13 MC+D3\L]7V^VV='CG;Y;1TK"\9)AD`>7ADJ7'5EYY36D%G<U3;.FX6F04LM!S
    14 M]<&X-_QQD2%>E@5!%61%I&J1P3(2920)AA3!E0SEII49\N0!AP$PT@HGQGB\
    15 MP1]9O)57E\FOUR[W/"B4)C/7=X!>&)0O!YR^Q1O8@A76300H`I04!,8H4^XY
    16 MROV>.P%G_`\!_>S<9"6C\:!*X)C`,?$@H?2QAD''8M21O,$?>3\B]TD1!6&?
    17 MHJB$H#QN08D'+K<#;FX3!F!"SN8#$.IBJ"L;4LWI!_GZA99TKDVJ0790!WNE
    18 M!)-R,/@0JZ[7:U]R!#?*$PQGVQ;O"$\1+BP48!E++0,$J:V#)SE,]02OPF(X
    19 MC8V8`]06-G'P"0=/=D#M@-JQK'46C#H1+#=9HVB<-A&-!P(0<0&*<E$G1-%0
    20 MWH[BR:T@]2#C31S-YF%.CRWA0=);R.0MEHF^Y,L+Q]YC<L!&$QH]#GB:3SHU
    21 M0%>AE:D!3AY(=P[AC9UJ`7&@%%2.X(7#$&AN0L![VP4X3(BVZ@<@7DAQ7)#W
    22 M?(3SY-98[%&^AVV&-K9I&LI?DR='6"0:TR,*2CZ2\!]'EW_JF>%Z@G2([2C"
    23 M$_S-Q8?:PCZRSWU@GQ']>N\3LM7A'(A\'J%E,K@8VLS,#>,2C,ZPED6\='`)
    24 M%Q`[`0]8%=3R47=TP+8(25!%[+5HW&!%:3"`O1;A0!$1)B+"1`]X@-D15"+0
    25 MQ23P!/=/AO`6/`E<)I:9R<ZU*U!LHV1#;Z=D%8"(F[S&WP2**5CUCR3"2!M!
    26 M)`K_J0_[XX&PQXJ")<U6>UVMZC&M:?MSH#6*E_0\880%TR((Y@;G2.N\0OT#
    27 M'\.8GE->T81^?4@#_L@*B6FOVP&/K>Y]N@%/'^LS:E?-)@1?/4:RP\6!@D9D
    28 M\2EF()*MQNGW9>M%@SRAFE;$@;ED!Q)I!PG`5;-P36/@F\:H$0SB@C%Z%.0V
    29 M:FO=M^U8P?M=FQS"AT%JG@GH'[*`J?M-^E4N]SKQ__4\(R(]_XDY3B!"8$=$
    30 MQ)^(F](0)Q`AL-DB-EMJ]2H']T]DM,%F1-Q)B#L)OI80F1,B6=*#-^E-,/&P
    31 MZ[%7]:9JXN-M:(:S[/'P#FT+YEC-/@;_;9WNUADE1(<>S&:?P1Y8=<`]^PR[
    32 M4(C`#W?RCCGWHD.:A:/MPYEN)YGG/=EV?Z1CS@CM.>!?CM#LJ-[JU<H-%X=6
    33 M#YN`U":HHP;2*!`8[AMXWT[7$WO^]7"%4GB2*YWB4QC9DDPBO)Q^7C0<_)`G
    34 MY5L_;O>X*]N`/"`B/\!EP.$FXF`WAZ/#(7-R=DR_'"Y-XV4?EWB/7`$YA$,.
    35 MX9+>0KPF37Z6VOGV_G5&,H"O*AF(=\(?G2#?\621O]4?ME#BMRXA6XW=4.T>
    36 MV\6?_3'[6?-836,'`,U*!$R/1);)@U#[',^T.9E&2HWCAUM-J0>*FCA+PHQ1
    37 MU#L8YR+C,L@X%QDY%L/#&'@L3C&+H\6"76F1RZ)Z8N&LUM%WJ?!'Z7ZAQ867
    38 M?*:21W]KEJI'W]D1>`6LUW>QE<E?6.RT((6:"O8X(;LF9%B4M%(%:R!B,"(&
    39 M:_&*83WKA](&3`I4C-2$PW!<,-(V?L9M_KN?EU?P[-&RDS3P/((/DWU6(FLH
    40 M+T8]"MD207<$W9&%KI'5$<HHA-L<(5L8;`#MHR;`R!]93UNI/_7,,4H;N_94
    41 MT,K2"T31Z?D#-2U*0MGC*5UR2=`$(1X0\OW!)M`Q[ML/O?H>`;@FX20;XM4N
    42 M#?_]3OZUL:5!16*HR2)-#+.4LR_,(HL<*[):6Q4]NID>H>6^@JH^V?XU=&)<
    43 M:;!OAOIS7XU&`=)HGHV,RB2MN$,VY,I#U7C8O?*&%ASFH`!(2-B''1C^?)F-
    44 MAR4_>'YC/XJ$6E9!B<DD+91#%%0%!D$UU`SGPQ1J_)\OT-<>$Z3*(9+ARM#_
    45 M,8'P9NR/=$`32]D"W[(BR9]`PQ>U4]=,79JZ/'7MU'53UT_=,'7CU$UCER=J
    46 M/%'CB1KW?T3-_)GM8^G8S65@_VC&J\^7%V=7IUUQ>KGI5I>;B_,WL8VF.%TO
    47 M-^<SH#$YGXBOY,^\U657;#-TM9V/YPTV_O/&TW^(9`_P9[#\O7N5^:T.__'J
    48 )?]29B;PW'@``
     2M'XL("':"E5H"`V5L:6UI;F%T95\R+G)E<P#564MOW$82ONM7$,$>2)"2657]
     3MM"`=%GN)U\C%>PN"8#2:9`9P)$-#299^_79]S==(8TNRO=YX@&$W^U'OJNXJ
     4MOOO/OW[^I2@*.BW>_OS/XJ=NVQV]WYS]=%RDWN^;BTU75L?%Y8=N<WE1?KBZ
     5M[*KC`QTM3D^+U?O-7YN+1;?ZG8\N5K='VV[1';SK`?)I,?;EJ+C:7/Q9O#L1
     6M;EMIRH_-77/?K)H_FJZY;FZ:VV;1G#7+YKQ95\WYA^-QISDM-N>KQ?OBS<DX
     7M9H_2H_B#ZUL^I&8<=AC^R'7']6)GQF/FCNMKKL]V9@)F[KF^X7JY,Q,QL^+Z
     8M?#Y,;<;=U;>+:9`RYKNZNZX79],X9[SW]?5-?;:<QB5C7=7+\VG09"#U77U?
     9MK^H9RI[=NJNOZYLY+9GAVWI1G]7+^GP4&OE)])0X?'.ROOSK\L_R31+NM"B>
     10M%J]>9=F^/=EVY^6;:9(3FYN+[F:U+-:;DU>OUIOW9^7;AF8K$L_4'$ISZ!IV
     11M36P.8VS8-)S^AQ32%!,U+G#JL)C&1F?3FN"HH59"VQQZ%M>(A)#6MS8T3"ZM
     12M36W33EAX4/^_3T9C2WQ\O+OOKF]N%V=)@.M-HBK1__I7LJ_Y-RJ)JFU);7K$
     13M:LME2!V?_J[:;K>EQ3.]B\Z6)/K0:=8-G*9+T9X8?:0]I5%P)BTQI97J,('0
     14MC2YU4]_I!J]`O*X-G$8/MSH3=";JWAA`CTZEIM45^DL3%A,@H54:B!R>H(P-
     15MGIE*FQ"OUS;U'#"4E,CJ.P!O,SUD`=.U>`*:-THT!0P%#,4\!,(X8>XI2OV>
     16M.AU.\!\.]*M3D\2+Q@$K@V(&Q2P#A]K''@$>@UG+^@1][-P(W,4,R"OY'%0D
     17M#.%)"TPR4+D=8$L;,0'E25(<!B$N@;B2"K,BW<!?O]%P7FMBEJ!8B$-<Q@25
     18MBB>\J%;7Z[4K)8":3!,49]H6SP`;42H,!&`$6XU@"%P;"QNR6.H8]H3-,!H3
     19ML`:@#71B81,6-FP!V@*T%=UK#0BUREAJDD31V-P$-`X`@,1Z",J&O""HA)(W
     20MJ@VW"M0!C:,PJLU!G0[.X(#2&?#D#+:IO/3-*<7.8;&'BRF.'@8LS<6\U$-6
     21MOM6E'D;N.7L.XPD?-1BQP.0S']XIA=[S7(48[W7G83`^F*J?`'L^AG%#\O8`
     22MXTDM&?BH[$";@0UMG*;2VV3)`1H)1#T@G]$'5OK#:/*?^LU@?0*U#^W(@GP>
     23MFK(/L?FGT#[W!_V,X-=/_GS2.HP#D<\AM$P*5T733-U0+D/I`FT9Q$L+D[`>
     24ML1/C'KM\UGS('NWA%CXJJ`!?"V0'+6J#"?A:@`$%1)B`"!,<QCW4CJ`2`"Y$
     25M'8\P_TB,I\*)H#**KHQF+ET=A1M%XWL]19,'$'%C?QY$8(S>9/N(RHRV`4B"
     26MTA_[L#\>".U3ZHX^SG:[O#N+AUIJ^W.@I0R7\WDB"`O4(@BF!N=(:UT>=0]L
     27M#'/YG'(9C._W^SC`#Y)'0GS2[`#'5#NO=H#3Q_H$VE:S!=Y5CX'L,7&`X!%8
     28MJ#Y#@S75N'R7MYXU\..K:4<8B(MF0!'WH,!XEBQ,DPBV29250(@+1/DH2&W(
     29MK;$O\UB%^T5.#N;]P+54#_7P<&G\FDCR#"/^JM\S(M+S?R'%"40(>$1`_`FX
     30M*0UQ`A$"SA;@;+'-5SF8?V3*#9P1<2<B[D386D1DCHAD,1^\,=\$HPQ>#U_-
     31M=U0*C]V0AK/L\?0>:2OD,+M2QL%^6YN]=88)T:$?%JI>IM4!]NS55_O#57#5
     32M4]89=Z)#G(6C[<.5UG^Y:27=_2\-\_D'_+=#-#NJM_EJ98>+0YL/&X^DQF=#
     33M]9RC@!>8KY?XI&[\S.ST+5:/5SPX/G8N$/G^%_U(EF82_MO)YYN&@^_RB^G6
     34MC]L][LK&(P\(R`]P&;"XB5CHS>+HL,B<K!G3+XM+TWC9QR7>(5=`#F&10]C8
     35M9Z4Y:7*SU,ZUN]<9S0`^;P;6[UNA:.W7:S*Q_%)[V$*(+]W"IAJ[OMH_MX\^
     36M\WW\.>>Q.8T=!GA6(A!^Q+(N'IAZRO"H3<DT4FH</]+FE'K`F!-G39@QBTJ'
     37MX%P47`8%YZ(@QQ)8F`".P2EF<+08D*LM<EG430R,U5C^(A%^+]D?YN+"MU7G
     38M4/+H;\U:]>@[<=\MDK.'JR*)TALVVUR*0DT%/L[(KAD9%L=<HX(V$#$$$4-R
     39MV4KB5/-0-4*E`"5(3<0/QX4@;9,0JQ](P+O"(URP&);'L&$VSTIDB=-FU*.0
     40M+3%DQY`=&\@:61VCC,*XS3&RA4$'D#YJ`H+\4?)IJ_6GP4E1VMCG4SY7EFSU
     41M8TA:A82RQZ=D*25#$HQXP,CW!YU`QKAO/[3J'00P3<9)-L2K?1+^\4[^-9F2
     42M4)$8:K)($_TLY>P+L\@BQXILKJVJ'.U,CC*KH&:;;/\>,B%;$OQFJ#_WU6@4
     43M("GGV<BH*.9:.WA#KCQ4C0?OU2>D8+$&!4!&PCYXH/__\TP.FOS5$KV6WY3%
     44M7%=!C8EBKI2#%Y0%!DYSK*%'L<;]O2V;O)8Y4-#PTY<)Q#<RW],"*93J`R_9
     45M$?7[S_#&[=2EJ<M35Z:NF;IVZKJIZZ=NF+IQ[,J$329L,F&3_AO4S*#%/.9.
     46M[)P'<8]6''RXNCR_7G;%\FK3K:XVEQ>O0QNH6*X7FXO9(%%**,*!?LQ;777%
     47F-HVNMO/YY&'CES>9OB&R.<+'8/V\>YWHK8[_<?!?1B>#+#<>````
    4948`
    5049end
  • Tst/Long/eliminate_2.stat

    re7d857 rce5d1b  
    1 1 >> tst_memory_0 :: 1278958245:3113-2010071219:3-1-1:ix86-Linux:mamawutz:314580 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:315188
    2 1 >> tst_memory_1 :: 1278958245:3113-2010071219:3-1-1:ix86-Linux:mamawutz:1318736 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:1318772
    3 1 >> tst_memory_2 :: 1278958245:3113-2010071219:3-1-1:ix86-Linux:mamawutz:4586388 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:4599808
    4 1 >> tst_timer_1 :: 1278958245:3113-2010071219:3-1-1:ix86-Linux:mamawutz:882 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:898
     11 >> tst_memory_0 :: 1519747702:4110, 64 bit:4.1.1:x86_64-Linux:nepomuck:244032
     21 >> tst_memory_1 :: 1519747702:4110, 64 bit:4.1.1:x86_64-Linux:nepomuck:4456448
     31 >> tst_memory_2 :: 1519747702:4110, 64 bit:4.1.1:x86_64-Linux:nepomuck:6868992
     41 >> tst_timer_1 :: 1519747702:4110, 64 bit:4.1.1:x86_64-Linux:nepomuck:313
  • Tst/Long/eliminate_6.res.gz.uu

    re7d857 rce5d1b  
    11begin 640 eliminate_6.res.gz
    2 M'XL("'Q?.TP``V5L:6UI;F%T95\V+G)E<P#5FDMO&T<61O?^%8U@%N20,KKJ
    3 MOJIC2(L@FP"#V61V06!X;"-FX$B"J,`B?_U4G1(E3O2R'$M(N*A^W'ITG_J^
    4 M6]TM_?B?[W_X]S`,Z6CXUP_?#=^<K\]??ES]]YM70]U[O3I>G<_FKX:3T_/5
    5 MR?'L].SD?/[J13L['!T-[S^N?EL=OSE__]I?'K__]')]_N;\Q8^7'>:CX6I?
    6 M7@YGJ^-?AK,/R0XECZ,L9Y^6%\O-<CM?OCM]=551CX;3DX^;X30=#A=Y,_QS
    7 MIG%AF]C*(I>+C6W+PF4QI7I.MC&_;FB[AKDVW&QK0XN-+W*JO6RGA:5-WN9%
    8 MLHN\U;UFOFLFK9FV=J&;A>0+W\;"I(Z3MXL4M1?9[K6+73L]'&JD-FLC;;VU
    9 M3./&M[;(K;'57G)L\E[3LFMJ=<C64IQK*^EBVJ1QD:8ZF&UU$=.%;GVOY70T
    10 MK-Z]?_-Q^/6P`EJ>YN6I+$]U>6I7==*XJ[,Z_'#RV\DOLU^7GZZ[2&EOTF:K
    11 MY:;=TT_9[-O\<[*9SM>IS*26TSJ/[3"G]<SJ)L^\EC*+6FJV@_6LS->SE.;K
    12 M=?99RNW`6Q&MF&JMJ$3J?M96M+.YGIU).R?2BE9=:B^YCMA".LYKM]HJ:.VO
    13 MEJVI.KNM@HVM:''35M6L[;:NK84]S0_J6:>MMVN?9MX&\7:IT1I';NVB#1^M
    14 M\VCA*)QL7936>6DW4QBAM'BI\8.]@_5L:GU-K=JD+7:P.Y+=T<A.:Q3[]65L
    15 M+>I^ZVJ"X#A2`G!42CB./3I!.5$*I5&".1$%<\I$,U%P)W@G@">()R$JT6XM
    16 M"0-TZ*E29\-E:+N--<=<D')!2GT;B1T0K0/4G74[#=ADTE&UXU;NZ!"_W.-^
    17 M]^NO025IUV4]S34;U\PD)V8Y,<W)B3I1)^I$F>;$/*=@?.8X1=<ET4*4&4Z%
    18 M*+.:F-;$/"6F,C%/B8E*?::F-GH>$?4HE$;IE*U.3B-EID3YN"(GHIEH)MI]
    19 MD8GF'J5_82:R4(EIRW7:.$5=IBTK/6DW&%65JLH5*7:#989EAF6&989EAF6&
    20 M989EAF6&97:B012[Y"`:1/%*QBP9EKGTF;[\]>H'#_WZM=\X)]Q;!7`@N:JK
    21 M[H+JEMOO-TX4C68TFI%81H+9B!I1(^I$G:@3)4ED+_?>.'40449$US?>2J*(
    22 M*".BC(@R(LJ(*",BP>Z"W06["_*1,2A[BB1'8G?![H+=!;L+=A?L+MA=L+OT
    23 M]'J97XEB=Q&B9%A!,()4!*D(W`1N`C>!F_0,*RA&4(R@&$$Q`CX!GX!/P">X
    24 M3W"?X#X!G`!.`">`D\)%%/HG24JA_XG^)Z(3T8GHU)<(5@?<I[A/1[*9CJ5O
    25 MIFL]U:-Q_@=QM4$>U.67_IC=KN&I7`W3CI`3]Y2YI]SN2:1NN6?NZC910(V<
    26 M(N04(:<(.452>3)1$"5_2,L?;4/X3CGT!9TH"43PD>`CP4>"CX0$(B00(8'<
    27 M)@1N#!\)/A)\)/A(\)'B(P69@DQ!IB!3D"G(%&0*,DT]BI1R?]!`2B!3D"G(
    28 M%&0*,@69@DS[DTI_2`&9@DQ!IB!3?*3X2,D_2OY1\H^2?Q0#J?<G'*(82#&0