diff --git a/.github/actions/setup-build/action.yml b/.github/actions/setup-build/action.yml index 2a045ed9..9c6b16dd 100644 --- a/.github/actions/setup-build/action.yml +++ b/.github/actions/setup-build/action.yml @@ -30,7 +30,8 @@ runs: build_flint=false automake=false diffutils=false gcc=true git=false ruby=true wget=false latex=false latex2html=false - formlib=false color=false forcer=false mincer=false series=false + formlib=false color=false forcer=false mincer=false series=false hyperform=false fmft=false + mzv=false # NOTE: Some features and OS image combinations are not implemented. shell: bash run: | @@ -134,15 +135,21 @@ runs: feat_forcer=true feat_mincer=true feat_series=true + feat_hyperform=true + feat_fmft=true + feat_mzv=true fi - if $feat_color || $feat_forcer || $feat_mincer || $feat_series; then + if $feat_color || $feat_forcer || $feat_mincer || $feat_series || $feat_hyperform || $feat_fmft || $feat_mzv; then feat_formlib=true items='' $feat_color && items="$items-color-1.0.0" $feat_forcer && items="$items-forcer-1.0.0" $feat_mincer && items="$items-mincer-1.0.0" $feat_series && items="$items-series-1.0.0" + $feat_hyperform && items="$items-hyperform-1.0.0" + $feat_fmft && items="$items-fmft-1.0.0" + $feat_mzv && items="$items-mzv-1.0.0" echo "formlib_key=formlib$items" >>"$GITHUB_OUTPUT" echo "formlib_restore_keys=formlib-" >>"$GITHUB_OUTPUT" echo "FORMPATH=${{ github.workspace }}/formlib" >>"$GITHUB_ENV" @@ -552,6 +559,31 @@ runs: wget https://github.com/a-maier/series/releases/download/1.0.0/series.h -P formlib touch formlib/series-1.0.0 fi + if ${{ steps.setup.outputs.hyperform }} && [ ! -f formlib/hyperform-1.0.0 ]; then + rm -f formlib/{declare-hyperform.h,hyperform.h,mzvlow.h} + git clone https://github.com/adamkardos/HyperFORM.git + git -C HyperFORM checkout 44705844f8585454c70b6702024b357d15e7b2c3 + mv HyperFORM/src/{declare-hyperform.h,hyperform.h,mzvlow.h} formlib/ + # this file needs to be copied to check/extra when running the tests + cat HyperFORM/check/*.frm | sed 's/\*{{{/*--#[/' | sed 's/\*}}}/*--#]/' > formlib/hyperform.frm + rm -f formlib/hyperform-* + touch formlib/hyperform-1.0.0 + fi + if ${{ steps.setup.outputs.fmft }} && [ ! -f formlib/fmft-1.0.0 ]; then + rm -f formlib/fmft* + wget https://raw.githubusercontent.com/apik/fmft/refs/tags/1.0/fmft.hh -P formlib + touch formlib/fmft-1.0.0 + fi + if ${{ steps.setup.outputs.mzv }} && [ ! -f formlib/mzv-1.0.0 ]; then + rm -f formlib/hexall.h + wget https://raw.githubusercontent.com/form-dev/form-bench/refs/heads/main/tests/mzv-dm/hexall.h -P formlib + touch formlib/mzv-1.0.0 + fi + + - name: Copy test files from cache + if: steps.setup.outputs.hyperform == 'true' + shell: ${{ steps.setup.outputs.msys2 == 'true' && 'msys2 {0}' || 'bash' }} + run: cp formlib/hyperform.frm check/extra/ # Fix dubious ownership in containers for Git operations. # See: https://github.com/actions/runner/issues/2033#issuecomment-1204205989 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 37048a39..8ed30934 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -49,7 +49,12 @@ jobs: run: make -C sources -j 4 ${{ matrix.bin }} - name: Test - run: ./check/check.rb ./sources/${{ matrix.bin }} --stat ${{ matrix.nthreads && format('-w{0}', matrix.nthreads) || '' }} ${{ matrix.timeout && format('--timeout {0}', matrix.timeout) || '' }} ${{ matrix.test != 'default' && format('-C {0}', matrix.test) || '' }} + run: >- + ./check/check.rb ./sources/${{ matrix.bin }} --stat + ${{ matrix.nthreads && format('-w{0}', matrix.nthreads) || '' }} + ${{ matrix.timeout && format('--timeout {0}', matrix.timeout) || '' }} + ${{ matrix.test != 'default' && format('-C {0}', matrix.test) || '' }} + ${{ ( matrix.test != 'default' && matrix.flint == 'no' ) && '-x ''HypSimplifyDiffLogDiffFuncs_(59|60|61|62)*'' -x HypSimplifyDiffLogDiffFuncs_126' || '' }} check-parform: name: Test (${{ matrix.test }}) for ${{ matrix.bin }}${{ matrix.nthreads && format(' -w{0}', matrix.nthreads) || '' }}${{ matrix.flint && format(' (flint - {0})', matrix.flint) || '' }} @@ -115,9 +120,31 @@ jobs: - {bin: tvorm, test: default, nthreads: 2, group: 8/10} - {bin: tvorm, test: default, nthreads: 2, group: 9/10} - {bin: tvorm, test: default, nthreads: 2, group: 10/10} - - {bin: vorm, test: extra, group: 1/1} - - {bin: tvorm, test: extra, group: 1/1} - - {bin: tvorm, test: extra, nthreads: 2, group: 1/1} + - {bin: vorm, test: extra, group: 1/5} + - {bin: vorm, test: extra, group: 2/5} + - {bin: vorm, test: extra, group: 3/5} + - {bin: vorm, test: extra, group: 4/5} + - {bin: vorm, test: extra, group: 5/5} + - {bin: tvorm, test: extra, group: 1/10} + - {bin: tvorm, test: extra, group: 2/10} + - {bin: tvorm, test: extra, group: 3/10} + - {bin: tvorm, test: extra, group: 4/10} + - {bin: tvorm, test: extra, group: 5/10} + - {bin: tvorm, test: extra, group: 6/10} + - {bin: tvorm, test: extra, group: 7/10} + - {bin: tvorm, test: extra, group: 8/10} + - {bin: tvorm, test: extra, group: 9/10} + - {bin: tvorm, test: extra, group: 10/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 1/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 2/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 3/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 4/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 5/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 6/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 7/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 8/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 9/10} + - {bin: tvorm, test: extra, nthreads: 2, group: 10/10} steps: - name: Checkout repository uses: actions/checkout@v4 @@ -180,7 +207,12 @@ jobs: run: make -C sources -j 4 ${{ matrix.bin }} - name: Test - run: ./check/check.rb ./sources/${{ matrix.bin }} --stat --timeout ${{ matrix.timeout && format('{0}', matrix.timeout) || '30' }} ${{ matrix.nthreads && format('-w{0}', matrix.nthreads) || '' }} ${{ matrix.test != 'default' && format('-C {0}', matrix.test) || '' }} --fake-valgrind + run: >- + ./check/check.rb ./sources/${{ matrix.bin }} --stat --fake-valgrind + --timeout ${{ matrix.timeout && format('{0}', matrix.timeout) || '30' }} + ${{ matrix.nthreads && format('-w{0}', matrix.nthreads) || '' }} + ${{ matrix.test != 'default' && format('-C {0}', matrix.test) || '' }} + ${{ ( matrix.test != 'default' && matrix.flint == 'no' ) && '-x ''HypSimplifyDiffLogDiffFuncs_(59|60|61|62)*'' -x HypSimplifyDiffLogDiffFuncs_126' || '' }} - name: Generate LCOV coverage data run: | diff --git a/check/Makefile.am b/check/Makefile.am index 9150da43..79926c87 100644 --- a/check/Makefile.am +++ b/check/Makefile.am @@ -27,16 +27,31 @@ endif TESTS += benchmark-fu.sh EXTRA_DIST = \ + .diagrams_cache/feyngraph_qcd_3_none.dat \ + .diagrams_cache/feyngraph_qcd_3_onepi_opicomponents1.dat \ + .diagrams_cache/qgraf_qcd_glu_glu_3_none.dat \ + .diagrams_cache/qgraf_qcd_glu_glu_3_onepifloop.dat \ + .diagrams_cache/qgraf_qcd_quaQUA_gluglu_2_onepifloop.dat \ + .diagrams_cache/qgraf_qcd_qua_qua_3_none.dat \ + .diagrams_cache/qgraf_qcd_qua_qua_3_onepifloop.dat \ + .diagrams_cache/qgraf_qcd_qua_quaglu_3_onepifloop.dat \ benchmark-fu.sh \ check-help.sh \ check.rb \ coverage.frm \ + diagrams.frm \ + diagrams/diagrams.h \ examples.frm \ extra/checkpoint.frm \ extra/color.frm \ extra/forcer.frm \ + extra/mincer.frm \ extra/multithreaded.frm \ + extra/mzv-dm.frm \ + extra/series.frm \ + extra/z-fmft.frm \ features.frm \ fixes.frm \ formunit/fu.frm \ + polynomial.frm \ user.frm diff --git a/check/extra/mzv-dm.frm b/check/extra/mzv-dm.frm new file mode 100644 index 00000000..2ed65abc --- /dev/null +++ b/check/extra/mzv-dm.frm @@ -0,0 +1,738 @@ +#ifndef `TEST' + #message Use -D TEST=XXX + #terminate +#else + #include `NAME_' # `TEST' +#endif +.end + +*--#[ mzv-dm-hexall : +#- + +* This is a minor modification of "hexall.frm" from the MZV datamine, +* https://www.nikhef.nl/~form/datamine/alternating/rational/alldepth/alldepth.html +* WEIGHT 6 is fast, and the "alt" tables are inside hexall.h +* Modifications at the end of the program to verify the results. +* We use the default FORM buffer settings. +#define WEIGHT "6" + +* Program to compute the complete alternating MZV's +* of a given weight (indicated by the parameter WEIGHT). +* +* Settings via form.set because they are rather detailed. +* And we carry this program between computers of different types. +* Don't forget to disable the Modulus in form.set!!!!!! +* +* We need the alt tables in separate files. +* We assume that these tables only contain finite elements. +* +* Program is an adaptation of hex.frm. +* Made by J.Vermaseren, 8-aug-2008 +* +*--#[ Settings : +* +*#define ONLYBASIS "1" +* +#ifndef `WEIGHT' +#define WEIGHT "12" +#endif +#define MAXDEPTH "16" +#if ( `MAXDEPTH' > `WEIGHT' ) +#redefine MAXDEPTH "`WEIGHT'" +#endif +* +* Below is the optimum as determined in a number of trial runs. +* It isn't 100% clear though whether this optimum has survived +* later changes in orderings. +* +*#define GROUPING "1024" +#ifndef `GROUPING' +#switch `WEIGHT' +#case 12 + #define GROUPING "2048" +#break +#default +#$ngrouping = {2^{((4*3^{`WEIGHT'-2})^%)/2+2}}; +#define GROUPING "`$ngrouping'" +#break +#endswitch +#endif +#ifdef `ONLYBASIS' +*#define MODULUS "2147479273" +#endif +#include hexall.h +#ifdef `MODULUS' +#message Run with Weight = `WEIGHT', GROUPING = `GROUPING', Calculus modulus `MODULUS' +#else +#message Run with Weight = `WEIGHT', GROUPING = `GROUPING', Rational calculus +#endif +#ifndef `ONLYBASIS' +#call readalts({`WEIGHT'-1}) +#endif +.global +*--#] Settings : +*--#[ Master Equation : +* +* Construct the expression FF that will contain the final result. +* We only do the finite elements. +* At first it will contain 2^{`WEIGHT'-2} objects but duality will +* remove either half or almost half the elements. +* +S xmaxpow(:`MAXDEPTH'); +Off Parallel; +L FF = E(`WEIGHT'-2,1)*xmaxpow+E(`WEIGHT'-2,-1)*xmaxpow; +repeat id E(n?pos_,?a) = E(n-1,0,?a)+E(n-1,1,?a)*xmaxpow+E(n-1,-1,?a)*xmaxpow; +id E(0,?a) = E(0,?a)+E(-1,?a)*xmaxpow; +id xmaxpow^n? = 1; +.sort +On Parallel; +id E(?a)=E(?a)*H(?a); + +#call frombasis(`WEIGHT') + +* +* The following enforces a better ordering inside the equations. +* +#call convert(E,`WEIGHT',0) +#call convert(H,`WEIGHT',0) +* +* The bracket is essential! +* +B+ E; +.sort +Off Statistics; +Hide FF; +.sort +* +* $count will tell what is the number of the identity we are constructing +* $dcount tell how many H-function have not been eliminated yet. +* $jj counts the elements in the group that we treat simultaneously. +* +#$count = 0; +#$dcount = termsin_(FF) - 1; +#$jj = 0; +* +*--#] Master Equation : +*--#[ The relations : +* + +#do DEPTH = 1,`MAXDEPTH' +#message entering DEPTH = `DEPTH' +* +*--#[ Stuffles : +* +#if ( `DEPTH' > 1 ) +#message doing stuffles +* +Off Parallel; +L Gen = E(`DEPTH')*EE({`WEIGHT'-`DEPTH'-1}); +id EE(-1) = 1; +repeat id E(x?{>1},?a) = E(x-1,1,?a); +repeat id EE(x?pos_,?a) = EE(x-1,0,?a); +id EE(?a) = E(?a); +shuffle,E; +id E(?a,0) = 0; +.sort +On Parallel; +ArgImplode,E; +id E(?a) = E(?a)*fff(?a); +Multiply replace_(fff,ffs); +#do i = 1,`DEPTH' +id ffs(x?,?a) = ffs(?a)*fun`i'(-x); +#enddo +id ffs(?a) = 1; +id E(x?,?b) = EE(x)*E(?b)+EE(-x)*E(?b); +repeat id EE(?a)*E(x?,?b) = EE(?a,x)*E(?b)+EE(?a,-x)*E(?b); +id EE(?a)*E = E(?a); +*---------------------------------------------------------------- +*id E(x1?,...,x`DEPTH'?) = +*#do i = 1,`DEPTH'/2 +* +E(x1,...,x`i')*E(,...,)*funa0(`i') +*#enddo +* ; +*---------------------------------------------------------------- +Multiply,( +#do i = 1,`DEPTH'/2 + +EE(`i')*funa0(`i') +#enddo + ); +repeat id EE(x?pos_,?a)*E(x1?,?b) = EE(x-1,?a,x1)*E(?b); +id EE(0,?a) = E(?a); +*---------------------------------------------------------------- +id E(1,?a) = 0; +.sort +DropCoefficient; +id E(x1?,?a)*E(x2?,?b) = E(x1,?a)*E(x2,?b)*funa2(-min_(abs_(x1),abs_(x2))); +ArgExplode,E; +.sort +Off Parallel; +InParallel; +Drop Gen; +#do relation = Gen + #$jj = $jj+1; + L F`$jj' = `relation'; + #if ( `$jj' >= `GROUPING' ) + #call solvestuffle + #$jj = 0; + #endif +#enddo +#call solvestuffle +#$jj = 0; +.sort +#endif +* +*--#] Stuffles : +*--#[ Shuffles : +* +#if ( `DEPTH' > 1 ) +* +#do SHUFFLE = 1,1 +#message doing shuffles (`SHUFFLE')({`DEPTH'-`SHUFFLE'}) +* +Off Parallel; +L Gen = E(`DEPTH')*EE({`WEIGHT'-`DEPTH'-1}); +id EE(-1) = 1; +repeat id E(x?{>1},?a) = E(x-1,1,?a); +repeat id EE(x?pos_,?a) = EE(x-1,0,?a); +id EE(?a) = E(?a); +shuffle,E; +id E(?a,0) = 0; +ArgImplode,E; +Multiply EE; +#do i = 1,`SHUFFLE' + id EE(?a)*E(x?,?b) = EE(?a,x)*E(?b); +#enddo +id EE(?a) = E(?a); +.sort +On Parallel; +DropCoefficient; +* +* The next sets the lower weight in the single depth object first. +* +id E(x1?) = E(x1)*fun(x1); +*id E(x1?) = E(x1)*fun(abs_(x1)); +* +* Look for the number of ones. The fewer the better. +* +#do i = 1,1 +id E(?a) = E(R,R(?a)); +repeat; + id E(R(?a),R(`i',?b)) = E(R(?a,`i'),R(?b))*x; + id E(R(?a),R(x1?!{`i',`i'},?b)) = E(R(?a,x1),R(?b)); +endrepeat; +id E(R(?a),R) = E(?a); +id x^n? = fun`i'(n); +#enddo +* +* Empirical restrictions +* +*id E(1,x?,?a) = 0; +*if ( count(fun0,1) == 2 ); +*elseif ( match(fun0(1)) ); +*elseif ( match(fun1(0)) ); +*elseif ( match(fun1(1)*fun0(2)) ); +*else; +* Discard; +*endif; +* +* Look for sum of squares of indices +* +id E(x1?,?a) = E(x1^2,R(x1),R(?a)); +repeat id E(x?,R(?a),R(x1?,?b)) = E(x+x1^2,R(?a,x1),R(?b)); +id E(x?,R(?a),R) = E(x,?a); +id E(x1?,?a)*E(x2?,?b) = E(?a)*E(?b)*funa1(-max_(x1,x2)); +* +* Look for the leading index. +* +id E(x1?,?a)*E(x2?,?b) = E(x1,?a)*E(x2,?b)*funa2(-min_(x1,x2))*funa3(-x1-x2); +* +* Number of negative indices +* +repeat; + id,once,E(?a) = EE(?a)*Eb; + repeat id EE(x?,?a)*Eb(?b) = EE(?a)*Eb(?b,x)+EE(?a)*Eb(?b,-x)*xs; + id EE = 1; + id Eb(?a) = Ec(?a); +endrepeat; +id Ec(?a) = E(?a); +id E(1,1,?a) = 0; +id E(1,x?,?a) = 0; +id E(1)^2 = 0; +id xs^n? = fun(-n); +*id xs^n? = 1; +* +if ( match(E(x?)) ); + id E(x?)*E(?a) = E(x)*E(?a)*EE(x,?a)*ffs; +else; + id E(?b)*E(?a) = E(?b)*E(?a)*EE(?b,?a)*ffs; +endif; +repeat id ffs(?a)*EE(x?,?b) = ffs(?a,sig_(x))*EE(?b); +id EE = 1; +id ffs(?a) = funa0(?a); +ArgExplode,E; +.sort +DropCoefficient; +.sort +#$jj = 0; +InParallel; +Drop Gen; +#do relation = Gen + #$jj = $jj+1; + L F`$jj' = `relation'; + #if ( `$jj' >= `GROUPING' ) + #call solveshuffle + #$jj = 0; + #endif +#enddo +#call solveshuffle +#$jj = 0; +.sort +#enddo +#endif +* +*--#] Shuffles : +*--#[ Double : +* +#message doing doubling +Off Parallel; +L Gen = E(`DEPTH')*EE(`WEIGHT'-`DEPTH'-1); +id EE(-1) = 0; +repeat id E(x?{>1},?a) = E(x-1,1,?a); +repeat id EE(x?pos_,?a) = EE(x-1,0,?a); +id EE(?a) = E(?a); +Shuffle,E; +id E(1,?a) = 0; +id E(?a,0) = 0; +.sort +DropCoefficient; +.sort +#$jj = 0; +InParallel; +Drop Gen; +#do relation = Gen + #$jj = $jj+1; + L F`$jj' = `relation'; + #if ( `$jj' >= `GROUPING' ) + #call solvedouble + #$jj = 0; + #endif +#enddo +#call solvedouble +#$jj = 0; +.sort +* +*--#] Double : +*--#[ GenDouble : +* +#if ( ( `DEPTH' > 1 ) && ( `DEPTH' <= {`WEIGHT'-4} ) ) +#message doing generalized doubling +Off Parallel; +L Gen = E(`DEPTH')*EE(`WEIGHT'-`DEPTH'-1); +id EE(-1) = 0; +repeat id E(x?{>1},?a) = E(x-1,1,?a); +repeat id EE(x?pos_,?a) = EE(x-1,0,?a); +id EE(?a) = E(?a); +Shuffle,E; +id E(1,?a) = 0; +id E(?a,0) = 0; +.sort +DropCoefficient; +ArgImplode,E; +id E(?a,x?) = E(?a)*EE(x); +repeat id E(?a,x1?,x2?)*EE(?b) = E(?a,x1)*(EE(x2,?b)+EE(-x2,?b)); +id E(?a)*EE(?b) = E(?a,?b); +.sort +#$jj = 0; +InParallel; +Drop Gen; +#do relation = Gen + #$jj = $jj+1; + L F`$jj' = `relation'; + #if ( `$jj' >= `GROUPING' ) + #call solvegendouble + #$jj = 0; + #endif +#enddo +#call solvegendouble +#$jj = 0; +.sort +#endif +* +*--#] GenDouble : +* +#enddo +* +*--#] The relations : +*--#[ Output : +.sort +Drop; +ndrop FF; +.sort +On Statistics; +On Parallel; +Format nospaces; +Format 80; +UnHide FF; +* +* In the output the bracket indicates the H-function and the contents of +* the bracket what it is equal to. +* The remaining H functions are renamed as HH. This way they can be +* found easily in an editor. +* +#call convert(E,`WEIGHT',1) +#call convert(H,`WEIGHT',1) +id H(?a) = HH(?a); +id E(?a) = H(?a); +B H; +Print +f; +*--#] Output : +.sort +*Off Parallel; +*ArgImplode,H; +*if ( count(HH,1) == 0 ) Discard; +*B HH; +*Print +f; +*.sort +*B HH; +*Print[] +f; +*.end + +*--#[ Verify result +Off parallel; +Local diff = FF - ( + +H(-1,-1,-1,-1,-1,-1)*(1/720*ln2^6) + +H(-1,-1,-1,-1,-1,1)*(-1/720*ln2^6+11/280*z2^3-2/9*e3^2+1/4*h51-1/2*h3111) + +H(-1,-1,-1,-1,0,-1)*(1/48*ln2^4*z2-1/18*ln2^3*e3+3/80*ln2^2*z2^2-3/4*ln2^2*h31+4/3*ln2*z2*e3-31/15*ln2*e5+2*ln2*h311+11/56*z2^3-10/9*e3^2+5/4*h51-5/2*h3111) + +H(-1,-1,-1,-1,0,1)*(1/24*ln2^4*z2-5/36*ln2^3*e3+3/80*ln2^2*z2^2+1/4*ln2*z2*e3-5/12*ln2*e5-1/2*ln2*h311-81/560*z2^3-1/4*z2*h31+7/8*e3^2-h51+h3111) + +H(-1,-1,-1,-1,1,-1)*(-1/720*ln2^6-1/3*ln2*z2*e3+31/60*ln2*e5-1/2*ln2*h311-11/56*z2^3+10/9*e3^2-5/4*h51+5/2*h3111) + +H(-1,-1,-1,-1,1,1)*(1/720*ln2^6+1/3*ln2*z2*e3-31/60*ln2*e5+1/2*ln2*h311+11/70*z2^3-8/9*e3^2+h51-h3111) + +H(-1,-1,-1,0,-1,-1)*(1/36*ln2^3*e3-3/80*ln2^2*z2^2+3/4*ln2^2*h31-2*ln2*z2*e3+31/10*ln2*e5-3*ln2*h311-11/28*z2^3+20/9*e3^2-5/2*h51+5*h3111) + +H(-1,-1,-1,0,-1,1)*(-1/4*ln2^4*z2+17/18*ln2^3*e3-11/40*ln2^2*z2^2+1/2*ln2^2*h31-10/3*ln2*z2*e3+323/60*ln2*e5-3/2*ln2*h311-2/7*z2^3+z2*h31+17/12*e3^2-5/2*h51-1/2*h3111) + +H(-1,-1,-1,0,0,-1)*(1/6*ln2^3*e3-1/16*ln2^2*z2^2-7/12*ln2*z2*e3+59/60*ln2*e5-ln2*h311-263/1680*z2^3+1/4*z2*h31+5/6*e3^2-5/4*h51+2*h3111) + +H(-1,-1,-1,0,0,1)*(2/9*ln2^3*e3-3/40*ln2^2*z2^2-1/2*ln2^2*h31+1/3*ln2*z2*e3-2/5*ln2*e5+2*ln2*h311+61/120*z2^3+z2*h31-37/12*e3^2+3*h51-3*h3111) + +H(-1,-1,-1,0,1,-1)*(1/4*ln2^4*z2-29/36*ln2^3*e3+1/5*ln2^2*z2^2-1/2*ln2^2*h31+31/12*ln2*z2*e3-62/15*ln2*e5+3*ln2*h311+121/140*z2^3-59/12*e3^2+13/2*h51-7/2*h3111) + +H(-1,-1,-1,0,1,1)*(2/9*ln2^3*e3-1/8*ln2^2*z2^2-1/4*ln2^2*h31+1/3*ln2*z2*e3-17/60*ln2*e5+1/2*ln2*h311-71/560*z2^3-1/4*z2*h31+49/72*e3^2) + +H(-1,-1,-1,1,-1,-1)*(-1/720*ln2^6+1/80*ln2^2*z2^2-1/4*ln2^2*h31+4/3*ln2*z2*e3-31/15*ln2*e5+2*ln2*h311+11/28*z2^3-20/9*e3^2+5/2*h51-5*h3111) + +H(-1,-1,-1,1,-1,1)*(1/720*ln2^6-1/80*ln2^2*z2^2+1/4*ln2^2*h31-4/3*ln2*z2*e3+31/15*ln2*e5-2*ln2*h311-121/210*z2^3+59/18*e3^2-4*h51+7/2*h3111) + +H(-1,-1,-1,1,0,-1)*(-1/48*ln2^4*z2+1/18*ln2^3*e3-3/80*ln2^2*z2^2+3/4*ln2^2*h31-4/3*ln2*z2*e3+31/15*ln2*e5-2*ln2*h311-367/560*z2^3-1/4*z2*h31+137/36*e3^2-21/4*h51+h3111) + +H(-1,-1,-1,1,0,1)*(-1/24*ln2^4*z2+5/36*ln2^3*e3-3/80*ln2^2*z2^2-1/4*ln2*z2*e3+5/12*ln2*e5+1/2*ln2*h311+169/280*z2^3-1/4*z2*h31-31/9*e3^2+23/4*h51-7/2*h3111) + +H(-1,-1,-1,1,1,-1)*(1/720*ln2^6-1/80*ln2^2*z2^2+1/4*ln2^2*h31-ln2*z2*e3+31/20*ln2*e5-1/2*ln2*h311-11/210*z2^3+5/18*e3^2+1/2*h3111) + +H(-1,-1,-1,1,1,1)*(-1/720*ln2^6+1/80*ln2^2*z2^2-1/4*ln2^2*h31+ln2*z2*e3-31/20*ln2*e5+1/2*ln2*h311+23/140*z2^3-8/9*e3^2) + +H(-1,-1,0,-1,-1,-1)*(1/80*ln2^2*z2^2-1/4*ln2^2*h31+4/3*ln2*z2*e3-31/15*ln2*e5+2*ln2*h311+11/28*z2^3-20/9*e3^2+5/2*h51-5*h3111) + +H(-1,-1,0,-1,-1,1)*(3/8*ln2^4*z2-7/4*ln2^3*e3+11/20*ln2^2*z2^2+1/4*ln2^2*h31+25/6*ln2*z2*e3-211/30*ln2*e5+ln2*h311+71/140*z2^3-3/2*z2*h31-5/2*e3^2+15/4*h51) + +H(-1,-1,0,-1,0,-1)*(1/16*ln2^2*z2^2-ln2^2*h31+5/2*ln2*z2*e3-59/15*ln2*e5+4*ln2*h311+263/560*z2^3-3/4*z2*h31-91/36*e3^2+15/4*h51-6*h3111) + +H(-1,-1,0,-1,0,1)*(3/80*ln2^2*z2^2+2/3*ln2*z2*e3-11/10*ln2*e5-2*ln2*h311-411/560*z2^3-5/2*z2*h31+331/72*e3^2-13/4*h51+4*h3111) + +H(-1,-1,0,-1,1,-1)*(-3/4*ln2^4*z2+35/12*ln2^3*e3-27/40*ln2^2*z2^2-5/2*ln2^2*h31-1/12*ln2*z2*e3+49/60*ln2*e5+5/2*ln2*h311-11/70*z2^3+3/4*e3^2+3/2*h3111) + +H(-1,-1,0,-1,1,1)*(3/8*ln2^4*z2-7/3*ln2^3*e3+69/80*ln2^2*z2^2+5/2*ln2^2*h31-7/3*ln2*z2*e3+133/60*ln2*e5-7/2*ln2*h311+23/280*z2^3+3/4*z2*h31-1/6*e3^2-3*h51+3/2*h3111) + +H(-1,-1,0,0,-1,-1)*(1/2*ln2^2*h31-2/3*ln2*z2*e3+59/60*ln2*e5-ln2*h311+1/72*e3^2) + +H(-1,-1,0,0,-1,1)*(-7/6*ln2^3*e3+11/20*ln2^2*z2^2+3/2*ln2^2*h31-13/12*ln2*z2*e3+49/60*ln2*e5-3*ln2*h311-437/560*z2^3-1/2*z2*h31+343/72*e3^2-13/2*h51+4*h3111) + +H(-1,-1,0,0,0,-1)*(7/40*ln2^2*z2^2+1/2*ln2*z2*e3-17/15*ln2*e5-13/42*z2^3-1/2*z2*h31+71/36*e3^2-5/2*h51) + +H(-1,-1,0,0,0,1)*(1/5*ln2^2*z2^2+ln2*z2*e3-59/30*ln2*e5-11/168*z2^3-z2*h31+2/3*e3^2) + +H(-1,-1,0,0,1,-1)*(7/6*ln2^3*e3-41/80*ln2^2*z2^2-ln2^2*h31-1/4*ln2*z2*e3+13/12*ln2*e5+ln2*h311-3/280*z2^3-1/9*e3^2+3/4*h51+h3111) + +H(-1,-1,0,0,1,1)*(1/20*ln2^2*z2^2-1/2*ln2*z2*e3+3/5*ln2*e5+ln2*h311+13/20*z2^3+z2*h31-34/9*e3^2+3*h51-3*h3111) + +H(-1,-1,0,1,-1,-1)*(3/8*ln2^4*z2-7/6*ln2^3*e3+13/80*ln2^2*z2^2+9/4*ln2^2*h31-10/3*ln2*z2*e3+149/30*ln2*e5-5*ln2*h311-341/280*z2^3+7*e3^2-39/4*h51+9/2*h3111) + +H(-1,-1,0,1,-1,1)*(-3/4*ln2^4*z2+35/12*ln2^3*e3-5/8*ln2^2*z2^2-13/4*ln2^2*h31+8/3*ln2*z2*e3-209/60*ln2*e5+4*ln2*h311+223/560*z2^3-19/8*e3^2+15/4*h51-3/2*h3111) + +H(-1,-1,0,1,0,-1)*(11/80*ln2^2*z2^2-ln2^2*h31+9/4*ln2*z2*e3-19/5*ln2*e5+4*ln2*h311+79/80*z2^3-199/36*e3^2+15/2*h51-6*h3111) + +H(-1,-1,0,1,0,1)*(3/20*ln2^2*z2^2+1/6*ln2*z2*e3-43/60*ln2*e5-2*ln2*h311-37/70*z2^3-z2*h31+241/72*e3^2-13/4*h51+4*h3111) + +H(-1,-1,0,1,1,-1)*(3/8*ln2^4*z2-7/12*ln2^3*e3-9/80*ln2^2*z2^2+ln2^2*h31-ln2*z2*e3+11/6*ln2*e5-3/2*ln2*h311-1/10*z2^3+1/2*e3^2-3/4*h51) + +H(-1,-1,0,1,1,1)*(1/5*ln2^2*z2^2-1/4*ln2*z2*e3-7/20*ln2*e5+1/2*ln2*h311+111/560*z2^3+1/4*z2*h31-7/8*e3^2+h51-h3111) + +H(-1,-1,1,-1,-1,-1)*(-1/720*ln2^6+1/36*ln2^3*e3-3/80*ln2^2*z2^2+3/4*ln2^2*h31-2*ln2*z2*e3+31/10*ln2*e5-3*ln2*h311-11/28*z2^3+20/9*e3^2-5/2*h51+5*h3111) + +H(-1,-1,1,-1,-1,1)*(1/720*ln2^6-1/36*ln2^3*e3+3/80*ln2^2*z2^2-3/4*ln2^2*h31+2*ln2*z2*e3-31/10*ln2*e5+3*ln2*h311+11/14*z2^3-323/72*e3^2+6*h51-9/2*h3111) + +H(-1,-1,1,-1,0,-1)*(-1/48*ln2^4*z2+1/18*ln2^3*e3-3/80*ln2^2*z2^2+3/4*ln2^2*h31-9/4*ln2*z2*e3+211/60*ln2*e5-7/2*ln2*h311-263/560*z2^3+3/4*z2*h31+91/36*e3^2-15/4*h51+6*h3111) + +H(-1,-1,1,-1,0,1)*(-1/24*ln2^4*z2+5/36*ln2^3*e3-3/80*ln2^2*z2^2+7/12*ln2*z2*e3-47/60*ln2*e5-2*ln2*h311-8/7*z2^3+3/4*z2*h31+58/9*e3^2-45/4*h51+15/2*h3111) + +H(-1,-1,1,-1,1,-1)*(1/720*ln2^6-1/36*ln2^3*e3+3/80*ln2^2*z2^2-3/4*ln2^2*h31+3*ln2*z2*e3-23/5*ln2*e5+3/2*ln2*h311+11/70*z2^3-31/36*e3^2-3/2*h3111) + +H(-1,-1,1,-1,1,1)*(-1/720*ln2^6+1/36*ln2^3*e3-3/80*ln2^2*z2^2+3/4*ln2^2*h31-3*ln2*z2*e3+23/5*ln2*e5-3/2*ln2*h311-29/60*z2^3+191/72*e3^2) + +H(-1,-1,1,0,-1,-1)*(-1/36*ln2^3*e3+3/80*ln2^2*z2^2-3/4*ln2^2*h31+2*ln2*z2*e3-31/10*ln2*e5+3*ln2*h311+341/280*z2^3-251/36*e3^2+39/4*h51-9/2*h3111) + +H(-1,-1,1,0,-1,1)*(1/4*ln2^4*z2-17/18*ln2^3*e3+11/40*ln2^2*z2^2-1/2*ln2^2*h31+41/12*ln2*z2*e3-169/30*ln2*e5+11/2*ln2*h311+673/280*z2^3-491/36*e3^2+19*h51-12*h3111) + +H(-1,-1,1,0,0,-1)*(-1/6*ln2^3*e3+1/16*ln2^2*z2^2+7/12*ln2*z2*e3-59/60*ln2*e5+ln2*h311+391/336*z2^3+1/2*z2*h31-241/36*e3^2+37/4*h51-3*h3111) + +H(-1,-1,1,0,0,1)*(-2/9*ln2^3*e3+3/40*ln2^2*z2^2+1/2*ln2^2*h31-1/3*ln2*z2*e3+2/5*ln2*e5-2*ln2*h311-169/336*z2^3+1/2*z2*h31+209/72*e3^2-5*h51+4*h3111) + +H(-1,-1,1,0,1,-1)*(-1/4*ln2^4*z2+29/36*ln2^3*e3-1/5*ln2^2*z2^2+1/2*ln2^2*h31-8/3*ln2*z2*e3+263/60*ln2*e5-7*ln2*h311-43/14*z2^3+631/36*e3^2-25*h51+15*h3111) + +H(-1,-1,1,0,1,1)*(-2/9*ln2^3*e3+1/8*ln2^2*z2^2+1/4*ln2^2*h31-1/3*ln2*z2*e3+17/60*ln2*e5-1/2*ln2*h311-47/140*z2^3-3/4*z2*h31+145/72*e3^2+3/4*h51+1/2*h3111) + +H(-1,-1,1,1,-1,-1)*(1/720*ln2^6-1/36*ln2^3*e3+1/40*ln2^2*z2^2-1/20*ln2*e5+1/72*e3^2) + +H(-1,-1,1,1,-1,1)*(-1/720*ln2^6+1/36*ln2^3*e3-1/40*ln2^2*z2^2+1/20*ln2*e5-23/56*z2^3+85/36*e3^2-15/4*h51+3/2*h3111) + +H(-1,-1,1,1,0,-1)*(1/48*ln2^4*z2-1/18*ln2^3*e3+3/80*ln2^2*z2^2-3/4*ln2^2*h31+9/4*ln2*z2*e3-211/60*ln2*e5+7/2*ln2*h311+263/280*z2^3-383/72*e3^2+7*h51-11/2*h3111) + +H(-1,-1,1,1,0,1)*(1/24*ln2^4*z2-5/36*ln2^3*e3+3/80*ln2^2*z2^2-7/12*ln2*z2*e3+47/60*ln2*e5+2*ln2*h311+55/112*z2^3+3/4*z2*h31-103/36*e3^2+13/4*h51-4*h3111) + +H(-1,-1,1,1,1,-1)*(-1/720*ln2^6+1/36*ln2^3*e3-1/40*ln2^2*z2^2-1/3*ln2*z2*e3+7/12*ln2*e5+1/2*ln2*h311+337/840*z2^3-169/72*e3^2+15/4*h51-3/2*h3111) + +H(-1,-1,1,1,1,1)*(1/720*ln2^6-1/36*ln2^3*e3+1/40*ln2^2*z2^2+1/3*ln2*z2*e3-7/12*ln2*e5-1/2*ln2*h311+1/70*z2^3-h51+h3111) + +H(-1,0,-1,-1,-1,-1)*(-1/3*ln2*z2*e3+31/60*ln2*e5-1/2*ln2*h311-11/56*z2^3+10/9*e3^2-5/4*h51+5/2*h3111) + +H(-1,0,-1,-1,-1,1)*(-1/4*ln2^4*z2+49/36*ln2^3*e3-39/80*ln2^2*z2^2-3/4*ln2^2*h31-31/12*ln2*z2*e3+93/20*ln2*e5+1/2*ln2*h311-69/280*z2^3+z2*h31+19/18*e3^2-5/4*h51-3/2*h3111) + +H(-1,0,-1,-1,0,-1)*(-23/12*ln2*z2*e3+59/20*ln2*e5-3/80*z2^3+3/4*z2*h31+1/18*e3^2) + +H(-1,0,-1,-1,0,1)*(-5/12*ln2*z2*e3+2/3*ln2*e5+57/560*z2^3+3/2*z2*h31-59/72*e3^2-3/4*h51) + +H(-1,0,-1,-1,1,-1)*(3/4*ln2^4*z2-7/2*ln2^3*e3+79/80*ln2^2*z2^2+13/4*ln2^2*h31-1/6*ln2*z2*e3-11/12*ln2*e5-11/2*ln2*h311-11/40*z2^3+11/6*e3^2-15/4*h51+9/2*h3111) + +H(-1,0,-1,-1,1,1)*(-1/2*ln2^4*z2+119/36*ln2^3*e3-103/80*ln2^2*z2^2-4*ln2^2*h31+19/4*ln2*z2*e3-103/20*ln2*e5+15/2*ln2*h311+37/80*z2^3-3/4*z2*h31-113/36*e3^2+7*h51-11/2*h3111) + +H(-1,0,-1,0,-1,-1)*(2/3*ln2*z2*e3-59/60*ln2*e5-2*ln2*h311-121/280*z2^3+89/36*e3^2-15/4*h51+6*h3111) + +H(-1,0,-1,0,-1,1)*(-1/5*ln2^2*z2^2+2*ln2^2*h31-43/6*ln2*z2*e3+343/30*ln2*e5-4*ln2*h311-71/140*z2^3+2*z2*h31+43/18*e3^2-4*h51) + +H(-1,0,-1,0,0,-1)*(-ln2*z2*e3+17/10*ln2*e5+215/336*z2^3+z2*h31-71/18*e3^2+5*h51) + +H(-1,0,-1,0,0,1)*(-7/2*ln2*z2*e3+83/15*ln2*e5-5/21*z2^3+2*z2*h31+11/12*e3^2-5/2*h51) + +H(-1,0,-1,0,1,-1)*(1/5*ln2^2*z2^2-2*ln2^2*h31+22/3*ln2*z2*e3-35/3*ln2*e5+6*ln2*h311+62/35*z2^3-179/18*e3^2+12*h51-8*h3111) + +H(-1,0,-1,0,1,1)*(11/12*ln2*z2*e3-41/30*ln2*e5-177/280*z2^3-z2*h31+265/72*e3^2-2*h51+2*h3111) + +H(-1,0,-1,1,-1,-1)*(-3/4*ln2^4*z2+35/12*ln2^3*e3-53/80*ln2^2*z2^2-11/4*ln2^2*h31+19/12*ln2*z2*e3-53/30*ln2*e5+5*ln2*h311+121/280*z2^3-31/12*e3^2+15/4*h51-6*h3111) + +H(-1,0,-1,1,-1,1)*(ln2^4*z2-77/18*ln2^3*e3+19/20*ln2^2*z2^2+11/2*ln2^2*h31-41/6*ln2*z2*e3+289/30*ln2*e5-11*ln2*h311-79/40*z2^3+409/36*e3^2-31/2*h51+11*h3111) + +H(-1,0,-1,1,0,-1)*(-2/5*ln2^2*z2^2+4*ln2^2*h31-21/2*ln2*z2*e3+103/6*ln2*e5-16*ln2*h311-221/40*z2^3-z2*h31+565/18*e3^2-42*h51+24*h3111) + +H(-1,0,-1,1,0,1)*(-3/8*ln2^2*z2^2+5/2*ln2*z2*e3-37/15*ln2*e5+4*ln2*h311+303/140*z2^3-233/18*e3^2+35/2*h51-12*h3111) + +H(-1,0,-1,1,1,-1)*(-7/4*ln2^3*e3+39/40*ln2^2*z2^2+3/2*ln2^2*h31-7/4*ln2*z2*e3+16/15*ln2*e5+31/35*z2^3-19/4*e3^2+15/2*h51-3*h3111) + +H(-1,0,-1,1,1,1)*(-1/4*ln2^4*z2+35/18*ln2^3*e3-49/40*ln2^2*z2^2-11/4*ln2^2*h31+23/6*ln2*z2*e3-43/15*ln2*e5+4*ln2*h311+107/280*z2^3-1/4*z2*h31-28/9*e3^2+2*h51-2*h3111) + +H(-1,0,0,-1,-1,-1)*(ln2*h311+121/840*z2^3-5/6*e3^2+5/4*h51-2*h3111) + +H(-1,0,0,-1,-1,1)*(7/6*ln2^3*e3-11/16*ln2^2*z2^2-5/2*ln2^2*h31+13/3*ln2*z2*e3-317/60*ln2*e5+5*ln2*h311+1147/1680*z2^3-1/2*z2*h31-301/72*e3^2+6*h51-4*h3111) + +H(-1,0,0,-1,0,-1)*(-5/6*ln2*z2*e3+41/30*ln2*e5-215/336*z2^3+65/18*e3^2-5*h51) + +H(-1,0,0,-1,0,1)*(3*ln2*z2*e3-67/15*ln2*e5+85/168*z2^3-35/12*e3^2+5/2*h51) + +H(-1,0,0,-1,1,-1)*(-7/3*ln2^3*e3+13/10*ln2^2*z2^2+2*ln2^2*h31-2/3*ln2*z2*e3-11/10*ln2*e5-2*ln2*h311+59/84*z2^3-32/9*e3^2+5*h51) + +H(-1,0,0,-1,1,1)*(7/6*ln2^3*e3-63/80*ln2^2*z2^2-3/2*ln2^2*h31+1/3*ln2*z2*e3+11/10*ln2*e5+2*ln2*h311-871/1680*z2^3-1/2*z2*h31+185/72*e3^2-5/2*h51) + +H(-1,0,0,0,-1,-1)*(2/3*ln2*z2*e3-29/30*ln2*e5+13/42*z2^3-65/36*e3^2+5/2*h51) + +H(-1,0,0,0,-1,1)*(-3/4*ln2^2*z2^2-5/2*ln2*z2*e3+92/15*ln2*e5-13/15*z2^3+25/6*e3^2-4*h51) + +H(-1,0,0,0,0,-1)*(ln2*e5-7/40*z2^3+1/2*e3^2) + +H(-1,0,0,0,0,1)*(16/15*ln2*e5-23/70*z2^3+4/3*e3^2-h51) + +H(-1,0,0,0,1,-1)*(3/4*ln2^2*z2^2+2*ln2*z2*e3-157/30*ln2*e5+613/840*z2^3-7/2*e3^2+4*h51) + +H(-1,0,0,0,1,1)*(-4/3*ln2*z2*e3+32/15*ln2*e5-49/120*z2^3+20/9*e3^2-3/2*h51) + +H(-1,0,0,1,-1,-1)*(7/6*ln2^3*e3-49/80*ln2^2*z2^2+1/2*ln2^2*h31-37/12*ln2*z2*e3+111/20*ln2*e5-3*ln2*h311-103/84*z2^3+247/36*e3^2-37/4*h51+3*h3111) + +H(-1,0,0,1,-1,1)*(-7/3*ln2^3*e3+13/10*ln2^2*z2^2+2*ln2^2*h31+1/2*ln2*z2*e3-57/20*ln2*e5-3*ln2*h311+83/1680*z2^3-1/2*z2*h31+5/18*e3^2-3/4*h51+3*h3111) + +H(-1,0,0,1,0,-1)*(-1/3*ln2*z2*e3+7/10*ln2*e5-71/105*z2^3-1/2*z2*h31+23/6*e3^2-5*h51) + +H(-1,0,0,1,0,1)*(4*ln2*z2*e3-88/15*ln2*e5+451/840*z2^3-z2*h31-109/36*e3^2+7/2*h51) + +H(-1,0,0,1,1,-1)*(7/6*ln2^3*e3-41/80*ln2^2*z2^2-1/2*ln2^2*h31-5/4*ln2*z2*e3+151/60*ln2*e5-167/840*z2^3+37/36*e3^2-3/4*h51+h3111) + +H(-1,0,0,1,1,1)*(-4/3*ln2*z2*e3+32/15*ln2*e5+29/210*z2^3+1/2*z2*h31-11/12*e3^2-h3111) + +H(-1,0,1,-1,-1,-1)*(1/4*ln2^4*z2-7/9*ln2^3*e3+13/80*ln2^2*z2^2+1/4*ln2^2*h31+11/12*ln2*z2*e3-31/20*ln2*e5+1/2*ln2*h311+187/280*z2^3-137/36*e3^2+21/4*h51-h3111) + +H(-1,0,1,-1,-1,1)*(-7/12*ln2^3*e3+13/40*ln2^2*z2^2+1/2*ln2^2*h31-1/3*ln2*z2*e3-1/2*ln2*h311+1/56*z2^3) + +H(-1,0,1,-1,0,-1)*(2/5*ln2^2*z2^2-4*ln2^2*h31+39/4*ln2*z2*e3-95/6*ln2*e5+16*ln2*h311+109/20*z2^3+z2*h31-280/9*e3^2+42*h51-24*h3111) + +H(-1,0,1,-1,0,1)*(3/8*ln2^2*z2^2-7/2*ln2*z2*e3+127/30*ln2*e5-4*ln2*h311-171/70*z2^3+1033/72*e3^2-19*h51+12*h3111) + +H(-1,0,1,-1,1,-1)*(-ln2^4*z2+77/18*ln2^3*e3-19/20*ln2^2*z2^2-11/2*ln2^2*h31+91/12*ln2*z2*e3-107/10*ln2*e5+19/2*ln2*h311+8/7*z2^3-119/18*e3^2+8*h51-8*h3111) + +H(-1,0,1,-1,1,1)*(3/4*ln2^4*z2-49/12*ln2^3*e3+5/4*ln2^2*z2^2+25/4*ln2^2*h31-23/3*ln2*z2*e3+201/20*ln2*e5-23/2*ln2*h311-223/140*z2^3+3/4*z2*h31+37/4*e3^2-23/2*h51+9*h3111) + +H(-1,0,1,0,-1,-1)*(-3/4*ln2*z2*e3+37/30*ln2*e5-2*ln2*h311-19/20*z2^3+97/18*e3^2-15/2*h51+6*h3111) + +H(-1,0,1,0,-1,1)*(-23/40*ln2^2*z2^2+2*ln2^2*h31-37/12*ln2*z2*e3+199/30*ln2*e5-4*ln2*h311+27/140*z2^3+2*z2*h31-155/72*e3^2) + +H(-1,0,1,0,0,-1)*(1/6*ln2*z2*e3+11/30*ln2*e5+1199/1680*z2^3+z2*h31-14/3*e3^2+5*h51) + +H(-1,0,1,0,0,1)*(-8/3*ln2*z2*e3+24/5*ln2*e5-8/105*z2^3+2*z2*h31-7/18*e3^2-3/2*h51) + +H(-1,0,1,0,1,-1)*(23/40*ln2^2*z2^2-2*ln2^2*h31+47/12*ln2*z2*e3-461/60*ln2*e5+6*ln2*h311+8/7*z2^3-107/18*e3^2+8*h51-8*h3111) + +H(-1,0,1,0,1,1)*(4*ln2*z2*e3-88/15*ln2*e5+1/80*z2^3-z2*h31-1/9*e3^2+5/4*h51+2*h3111) + +H(-1,0,1,1,-1,-1)*(1/2*ln2^4*z2-35/36*ln2^3*e3-1/80*ln2^2*z2^2+2*ln2^2*h31-37/12*ln2*z2*e3+73/15*ln2*e5-5*ln2*h311-32/35*z2^3+373/72*e3^2-7*h51+11/2*h3111) + +H(-1,0,1,1,-1,1)*(-3/4*ln2^4*z2+7/3*ln2^3*e3-11/40*ln2^2*z2^2-19/4*ln2^2*h31+37/6*ln2*z2*e3-547/60*ln2*e5+11*ln2*h311+85/56*z2^3-z2*h31-209/24*e3^2+27/2*h51-21/2*h3111) + +H(-1,0,1,1,0,-1)*(-1/4*ln2*z2*e3+53/60*ln2*e5-1/8*z2^3-1/4*z2*h31+25/72*e3^2) + +H(-1,0,1,1,0,1)*(-8/3*ln2*z2*e3+24/5*ln2*e5-13/16*z2^3-1/2*z2*h31+295/72*e3^2-15/4*h51) + +H(-1,0,1,1,1,-1)*(1/4*ln2^4*z2-7/36*ln2^3*e3+1/4*ln2^2*z2^2+5/4*ln2^2*h31-25/12*ln2*z2*e3+137/60*ln2*e5-4*ln2*h311-197/280*z2^3+311/72*e3^2-6*h51+11/2*h3111) + +H(-1,0,1,1,1,1)*(16/15*ln2*e5-1/560*z2^3+1/4*z2*h31-65/72*e3^2+1/4*h51-1/2*h3111) + +H(-1,1,-1,-1,-1,-1)*(-1/720*ln2^6+1/48*ln2^4*z2-1/18*ln2^3*e3+3/80*ln2^2*z2^2-3/4*ln2^2*h31+4/3*ln2*z2*e3-31/15*ln2*e5+2*ln2*h311+11/56*z2^3-10/9*e3^2+5/4*h51-5/2*h3111) + +H(-1,1,-1,-1,-1,1)*(1/720*ln2^6-1/48*ln2^4*z2+1/18*ln2^3*e3-3/80*ln2^2*z2^2+3/4*ln2^2*h31-4/3*ln2*z2*e3+31/15*ln2*e5-2*ln2*h311-859/1680*z2^3-1/4*z2*h31+107/36*e3^2-4*h51+3*h3111) + +H(-1,1,-1,-1,0,-1)*(-1/48*ln2^4*z2+1/18*ln2^3*e3+3/40*ln2^2*z2^2-ln2^2*h31+7/3*ln2*z2*e3-56/15*ln2*e5+4*ln2*h311+7/20*z2^3-3/2*z2*h31-31/18*e3^2+15/4*h51-9/2*h3111) + +H(-1,1,-1,-1,0,1)*(-1/24*ln2^4*z2+5/36*ln2^3*e3+1/20*ln2^2*z2^2-1/4*ln2^2*h31-5/6*ln2*z2*e3+16/15*ln2*e5+5/2*ln2*h311+199/280*z2^3-3/4*z2*h31-283/72*e3^2+15/2*h51-6*h3111) + +H(-1,1,-1,-1,1,-1)*(1/720*ln2^6-1/48*ln2^4*z2+1/18*ln2^3*e3-3/80*ln2^2*z2^2+3/4*ln2^2*h31-35/12*ln2*z2*e3+9/2*ln2*e5-3/2*ln2*h311-3/80*z2^3+3/4*z2*h31+1/18*e3^2) + +H(-1,1,-1,-1,1,1)*(-1/720*ln2^6+1/48*ln2^4*z2-1/18*ln2^3*e3+3/80*ln2^2*z2^2-3/4*ln2^2*h31+35/12*ln2*z2*e3-9/2*ln2*e5+3/2*ln2*h311+187/210*z2^3-179/36*e3^2+15/4*h51-3/2*h3111) + +H(-1,1,-1,0,-1,-1)*(-1/36*ln2^3*e3+3/80*ln2^2*z2^2-3/4*ln2^2*h31+13/12*ln2*z2*e3-33/20*ln2*e5+3/2*ln2*h311+67/560*z2^3+3/4*z2*h31-29/36*e3^2-3/2*h3111) + +H(-1,1,-1,0,-1,1)*(1/4*ln2^4*z2-17/18*ln2^3*e3-1/8*ln2^2*z2^2+7/2*ln2^2*h31-13/2*ln2*z2*e3+107/10*ln2*e5-13*ln2*h311-277/70*z2^3-z2*h31+811/36*e3^2-61/2*h51+21*h3111) + +H(-1,1,-1,0,0,-1)*(-1/6*ln2^3*e3+1/16*ln2^2*z2^2-1/6*ln2*z2*e3+1/2*ln2*e5-991/1680*z2^3+29/9*e3^2-5*h51) + +H(-1,1,-1,0,0,1)*(-2/9*ln2^3*e3+3/40*ln2^2*z2^2+1/2*ln2^2*h31-5/2*ln2*z2*e3+49/12*ln2*e5-ln2*h311-881/1680*z2^3+25/9*e3^2-13/4*h51+h3111) + +H(-1,1,-1,0,1,-1)*(-1/4*ln2^4*z2+29/36*ln2^3*e3+1/5*ln2^2*z2^2-7/2*ln2^2*h31+37/6*ln2*z2*e3-51/5*ln2*e5+29/2*ln2*h311+135/28*z2^3+z2*h31-248/9*e3^2+38*h51-24*h3111) + +H(-1,1,-1,0,1,1)*(-2/9*ln2^3*e3+1/8*ln2^2*z2^2+1/4*ln2^2*h31+1/2*ln2*z2*e3-17/20*ln2*e5-2*ln2*h311-17/140*z2^3+55/72*e3^2-4*h51+7/2*h3111) + +H(-1,1,-1,1,-1,-1)*(1/720*ln2^6-1/48*ln2^4*z2+1/18*ln2^3*e3+1/80*ln2^2*z2^2-1/6*ln2*z2*e3+1/5*ln2*e5-67/560*z2^3-3/4*z2*h31+29/36*e3^2+3/2*h3111) + +H(-1,1,-1,1,-1,1)*(-1/720*ln2^6+1/48*ln2^4*z2-1/18*ln2^3*e3-1/80*ln2^2*z2^2+1/6*ln2*z2*e3-1/5*ln2*e5+1/112*z2^3-1/18*e3^2) + +H(-1,1,-1,1,0,-1)*(1/48*ln2^4*z2-1/18*ln2^3*e3-3/40*ln2^2*z2^2+ln2^2*h31-7/3*ln2*z2*e3+56/15*ln2*e5-4*ln2*h311-661/560*z2^3-z2*h31+62/9*e3^2-8*h51+8*h3111) + +H(-1,1,-1,1,0,1)*(1/24*ln2^4*z2-5/36*ln2^3*e3-1/20*ln2^2*z2^2+1/4*ln2^2*h31+5/6*ln2*z2*e3-16/15*ln2*e5-5/2*ln2*h311-71/70*z2^3-z2*h31+215/36*e3^2-8*h51+13/2*h3111) + +H(-1,1,-1,1,1,-1)*(-1/720*ln2^6+1/48*ln2^4*z2-1/18*ln2^3*e3-1/80*ln2^2*z2^2+11/12*ln2*z2*e3-19/15*ln2*e5-3/2*ln2*h311-461/560*z2^3+169/36*e3^2-15/2*h51+3*h3111) + +H(-1,1,-1,1,1,1)*(1/720*ln2^6-1/48*ln2^4*z2+1/18*ln2^3*e3+1/80*ln2^2*z2^2-11/12*ln2*z2*e3+19/15*ln2*e5+3/2*ln2*h311+29/112*z2^3+1/4*z2*h31-3/2*e3^2+4*h51-7/2*h3111) + +H(-1,1,0,-1,-1,-1)*(-1/80*ln2^2*z2^2+1/4*ln2^2*h31-4/3*ln2*z2*e3+31/15*ln2*e5-2*ln2*h311-477/560*z2^3-1/4*z2*h31+59/12*e3^2-13/2*h51+7/2*h3111) + +H(-1,1,0,-1,-1,1)*(-3/8*ln2^4*z2+7/4*ln2^3*e3-7/20*ln2^2*z2^2-9/4*ln2^2*h31+7/2*ln2*z2*e3-107/20*ln2*e5+7*ln2*h311+1147/560*z2^3+1/2*z2*h31-93/8*e3^2+61/4*h51-21/2*h3111) + +H(-1,1,0,-1,0,-1)*(-1/16*ln2^2*z2^2+ln2^2*h31-5/2*ln2*z2*e3+59/15*ln2*e5-4*ln2*h311-197/112*z2^3-2*z2*h31+187/18*e3^2-12*h51+8*h3111) + +H(-1,1,0,-1,0,1)*(-3/80*ln2^2*z2^2-2/3*ln2*z2*e3+11/10*ln2*e5+2*ln2*h311+391/560*z2^3-z2*h31-139/36*e3^2+15/2*h51-6*h3111) + +H(-1,1,0,-1,1,-1)*(3/4*ln2^4*z2-35/12*ln2^3*e3+11/40*ln2^2*z2^2+13/2*ln2^2*h31-37/3*ln2*z2*e3+193/10*ln2*e5-37/2*ln2*h311-277/56*z2^3+28*e3^2-38*h51+24*h3111) + +H(-1,1,0,-1,1,1)*(-3/8*ln2^4*z2+7/3*ln2^3*e3-53/80*ln2^2*z2^2-9/2*ln2^2*h31+33/4*ln2*z2*e3-721/60*ln2*e5+23/2*ln2*h311+267/80*z2^3+1/2*z2*h31-457/24*e3^2+23*h51-15*h3111) + +H(-1,1,0,0,-1,-1)*(-1/2*ln2^2*h31+2/3*ln2*z2*e3-59/60*ln2*e5+ln2*h311+3/280*z2^3+1/2*z2*h31-1/9*e3^2-3/4*h51-h3111) + +H(-1,1,0,0,-1,1)*(7/6*ln2^3*e3-11/20*ln2^2*z2^2-3/2*ln2^2*h31+4*ln2*z2*e3-359/60*ln2*e5+3*ln2*h311+599/560*z2^3-101/18*e3^2+23/4*h51-3*h3111) + +H(-1,1,0,0,0,-1)*(-7/40*ln2^2*z2^2-1/2*ln2*z2*e3+17/15*ln2*e5-533/1680*z2^3+13/6*e3^2-4*h51) + +H(-1,1,0,0,0,1)*(-1/5*ln2^2*z2^2-ln2*z2*e3+59/30*ln2*e5-13/420*z2^3+19/36*e3^2-3/2*h51) + +H(-1,1,0,0,1,-1)*(-7/6*ln2^3*e3+41/80*ln2^2*z2^2+ln2^2*h31-8/3*ln2*z2*e3+49/12*ln2*e5-ln2*h311-19/80*z2^3+8/9*e3^2) + +H(-1,1,0,0,1,1)*(-1/20*ln2^2*z2^2+1/2*ln2*z2*e3-3/5*ln2*e5-ln2*h311+61/560*z2^3-19/36*e3^2-9/4*h51+2*h3111) + +H(-1,1,0,1,-1,-1)*(-3/8*ln2^4*z2+7/6*ln2^3*e3+3/80*ln2^2*z2^2-17/4*ln2^2*h31+97/12*ln2*z2*e3-127/10*ln2*e5+13*ln2*h311+351/112*z2^3-1/2*z2*h31-71/4*e3^2+25*h51-15*h3111) + +H(-1,1,0,1,-1,1)*(3/4*ln2^4*z2-35/12*ln2^3*e3+9/40*ln2^2*z2^2+29/4*ln2^2*h31-181/12*ln2*z2*e3+118/5*ln2*e5-20*ln2*h311-199/40*z2^3+3/4*z2*h31+28*e3^2-38*h51+24*h3111) + +H(-1,1,0,1,0,-1)*(-11/80*ln2^2*z2^2+ln2^2*h31-9/4*ln2*z2*e3+19/5*ln2*e5-4*ln2*h311-135/112*z2^3-5/4*z2*h31+127/18*e3^2-8*h51+8*h3111) + +H(-1,1,0,1,0,1)*(-3/20*ln2^2*z2^2-1/6*ln2*z2*e3+43/60*ln2*e5+2*ln2*h311+543/560*z2^3+1/2*z2*h31-205/36*e3^2+31/4*h51-6*h3111) + +H(-1,1,0,1,1,-1)*(-3/8*ln2^4*z2+7/12*ln2^3*e3+5/16*ln2^2*z2^2-3*ln2^2*h31+15/2*ln2*z2*e3-243/20*ln2*e5+19/2*ln2*h311+1361/560*z2^3+1/4*z2*h31-55/4*e3^2+35/2*h51-27/2*h3111) + +H(-1,1,0,1,1,1)*(-1/5*ln2^2*z2^2+1/4*ln2*z2*e3+7/20*ln2*e5-1/2*ln2*h311-421/560*z2^3-3/4*z2*h31+149/36*e3^2-15/4*h51+5/2*h3111) + +H(-1,1,1,-1,-1,-1)*(1/720*ln2^6-1/48*ln2^4*z2+7/36*ln2^3*e3-1/16*ln2^2*z2^2+1/12*ln2*z2*e3-1/20*ln2*e5+67/1680*z2^3+1/4*z2*h31-5/18*e3^2-1/2*h3111) + +H(-1,1,1,-1,-1,1)*(-1/720*ln2^6+1/48*ln2^4*z2-7/36*ln2^3*e3+1/16*ln2^2*z2^2-1/12*ln2*z2*e3+1/20*ln2*e5-17/560*z2^3+5/24*e3^2) + +H(-1,1,1,-1,0,-1)*(1/48*ln2^4*z2-1/18*ln2^3*e3-3/40*ln2^2*z2^2+ln2^2*h31-13/6*ln2*z2*e3+113/30*ln2*e5-7/2*ln2*h311-461/560*z2^3+z2*h31+157/36*e3^2-15/2*h51+3*h3111) + +H(-1,1,1,-1,0,1)*(1/24*ln2^4*z2-5/36*ln2^3*e3-1/20*ln2^2*z2^2+1/4*ln2^2*h31-1/12*ln2*z2*e3+43/60*ln2*e5+ln2*h311+7/8*z2^3+z2*h31-197/36*e3^2+6*h51-9/2*h3111) + +H(-1,1,1,-1,1,-1)*(-1/720*ln2^6+1/48*ln2^4*z2-7/36*ln2^3*e3+1/16*ln2^2*z2^2-1/6*ln2*z2*e3+3/10*ln2*e5+3/2*ln2*h311+489/560*z2^3-61/12*e3^2+15/2*h51-3*h3111) + +H(-1,1,1,-1,1,1)*(1/720*ln2^6-1/48*ln2^4*z2+7/36*ln2^3*e3-1/16*ln2^2*z2^2+1/6*ln2*z2*e3-3/10*ln2*e5-3/2*ln2*h311-69/80*z2^3-3/4*z2*h31+373/72*e3^2-6*h51+9/2*h3111) + +H(-1,1,1,0,-1,-1)*(1/36*ln2^3*e3-3/80*ln2^2*z2^2+3/4*ln2^2*h31-13/12*ln2*z2*e3+33/20*ln2*e5-3/2*ln2*h311+1/16*z2^3-11/36*e3^2+3/4*h51) + +H(-1,1,1,0,-1,1)*(-1/4*ln2^4*z2+17/18*ln2^3*e3+1/8*ln2^2*z2^2-7/2*ln2^2*h31+29/4*ln2*z2*e3-751/60*ln2*e5+9*ln2*h311+57/40*z2^3-7/4*z2*h31-251/36*e3^2+13*h51-15/2*h3111) + +H(-1,1,1,0,0,-1)*(1/6*ln2^3*e3-1/16*ln2^2*z2^2+1/6*ln2*z2*e3-1/2*ln2*e5+103/1680*z2^3+1/4*z2*h31+5/36*e3^2+3/4*h51-h3111) + +H(-1,1,1,0,0,1)*(2/9*ln2^3*e3-3/40*ln2^2*z2^2-1/2*ln2^2*h31+5/2*ln2*z2*e3-49/12*ln2*e5+ln2*h311+43/840*z2^3-z2*h31+35/72*e3^2+3/2*h51) + +H(-1,1,1,0,1,-1)*(1/4*ln2^4*z2-29/36*ln2^3*e3-1/5*ln2^2*z2^2+7/2*ln2^2*h31-83/12*ln2*z2*e3+721/60*ln2*e5-21/2*ln2*h311-127/56*z2^3+1/4*z2*h31+439/36*e3^2-35/2*h51+27/2*h3111) + +H(-1,1,1,0,1,1)*(2/9*ln2^3*e3-1/8*ln2^2*z2^2-1/4*ln2^2*h31-1/2*ln2*z2*e3+17/20*ln2*e5+2*ln2*h311+377/560*z2^3+3/4*z2*h31-277/72*e3^2+25/4*h51-5*h3111) + +H(-1,1,1,1,-1,-1)*(-1/720*ln2^6+1/48*ln2^4*z2-7/36*ln2^3*e3+3/16*ln2^2*z2^2+1/4*ln2^2*h31-1/12*ln2*z2*e3-1/5*ln2*e5-ln2*h311-179/420*z2^3+61/24*e3^2-15/4*h51+3/2*h3111) + +H(-1,1,1,1,-1,1)*(1/720*ln2^6-1/48*ln2^4*z2+7/36*ln2^3*e3-3/16*ln2^2*z2^2-1/4*ln2^2*h31+1/12*ln2*z2*e3+1/5*ln2*e5+ln2*h311+61/80*z2^3+3/4*z2*h31-157/36*e3^2+4*h51-3*h3111) + +H(-1,1,1,1,0,-1)*(-1/48*ln2^4*z2+1/18*ln2^3*e3+3/40*ln2^2*z2^2-ln2^2*h31+13/6*ln2*z2*e3-113/30*ln2*e5+7/2*ln2*h311+569/560*z2^3+1/2*z2*h31-127/24*e3^2+6*h51-11/2*h3111) + +H(-1,1,1,1,0,1)*(-1/24*ln2^4*z2+5/36*ln2^3*e3+1/20*ln2^2*z2^2-1/4*ln2^2*h31+1/12*ln2*z2*e3-43/60*ln2*e5-ln2*h311-41/560*z2^3+1/4*z2*h31+23/18*e3^2-15/4*h51+3*h3111) + +H(-1,1,1,1,1,-1)*(1/720*ln2^6-1/48*ln2^4*z2+7/36*ln2^3*e3-3/16*ln2^2*z2^2-1/4*ln2^2*h31+1/3*ln2*z2*e3+11/20*ln2*e5+1/2*ln2*h311-3/16*z2^3-1/4*z2*h31+49/72*e3^2) + +H(-1,1,1,1,1,1)*(-1/720*ln2^6+1/48*ln2^4*z2-7/36*ln2^3*e3+3/16*ln2^2*z2^2+1/4*ln2^2*h31-1/3*ln2*z2*e3-11/20*ln2*e5-1/2*ln2*h311+53/280*z2^3+2/9*e3^2-1/4*h51+1/2*h3111) + +H(0,-1,-1,-1,-1,-1)*(11/280*z2^3-2/9*e3^2+1/4*h51-1/2*h3111) + +H(0,-1,-1,-1,-1,1)*(1/16*ln2^4*z2-7/18*ln2^3*e3+13/80*ln2^2*z2^2+1/4*ln2^2*h31+7/6*ln2*z2*e3-31/15*ln2*e5+51/280*z2^3-1/2*z2*h31-31/36*e3^2+h51) + +H(0,-1,-1,-1,0,-1)*(-463/1680*z2^3-1/4*z2*h31+59/36*e3^2-5/2*h51) + +H(0,-1,-1,-1,0,1)*(-223/840*z2^3-5/4*z2*h31+121/72*e3^2) + +H(0,-1,-1,-1,1,-1)*(-1/4*ln2^4*z2+49/36*ln2^3*e3-39/80*ln2^2*z2^2-3/4*ln2^2*h31-35/12*ln2*z2*e3+31/6*ln2*e5-27/56*z2^3+z2*h31+43/18*e3^2-11/4*h51+3/2*h3111) + +H(0,-1,-1,-1,1,1)*(3/16*ln2^4*z2-49/36*ln2^3*e3+3/5*ln2^2*z2^2+3/2*ln2^2*h31-7/12*ln2*z2*e3-1/5*ln2*e5-3*ln2*h311+3/140*z2^3+1/2*z2*h31+7/36*e3^2-3*h51+3*h3111) + +H(0,-1,-1,0,-1,-1)*(121/280*z2^3-179/72*e3^2+15/4*h51) + +H(0,-1,-1,0,-1,1)*(7/3*ln2*z2*e3-217/60*ln2*e5+99/112*z2^3+5/4*z2*h31-365/72*e3^2+7/4*h51) + +H(0,-1,-1,0,0,-1)*(71/560*z2^3-25/36*e3^2+h51) + +H(0,-1,-1,0,0,1)*(29/70*z2^3+3/2*z2*h31-5/2*e3^2) + +H(0,-1,-1,0,1,-1)*(-7/3*ln2*z2*e3+217/60*ln2*e5-53/280*z2^3+z2*h31+61/72*e3^2-h51) + +H(0,-1,-1,0,1,1)*(-1/560*z2^3+1/72*e3^2) + +H(0,-1,-1,1,-1,-1)*(3/8*ln2^4*z2-7/4*ln2^3*e3+9/16*ln2^2*z2^2+11/2*ln2*z2*e3-91/10*ln2*e5+3*ln2*h311+241/280*z2^3-3/2*z2*h31-9/2*e3^2+6*h51-9/2*h3111) + +H(0,-1,-1,1,-1,1)*(-7/16*ln2^4*z2+77/36*ln2^3*e3-5/8*ln2^2*z2^2-5/4*ln2^2*h31-10/3*ln2*z2*e3+23/4*ln2*e5+ln2*h311-131/140*z2^3-3/4*z2*h31+377/72*e3^2-7/4*h51-h3111) + +H(0,-1,-1,1,0,-1)*(1/5*ln2^2*z2^2-2*ln2^2*h31+23/3*ln2*z2*e3-743/60*ln2*e5+8*ln2*h311+797/336*z2^3-z2*h31-941/72*e3^2+35/2*h51-12*h3111) + +H(0,-1,-1,1,0,1)*(3/16*ln2^2*z2^2-35/12*ln2*z2*e3+217/60*ln2*e5-659/840*z2^3-z2*h31+355/72*e3^2-7/4*h51) + +H(0,-1,-1,1,1,-1)*(-1/8*ln2^4*z2+14/9*ln2^3*e3-61/80*ln2^2*z2^2-7/4*ln2^2*h31+7/4*ln2*z2*e3-27/20*ln2*e5+3*ln2*h311+229/560*z2^3-193/72*e3^2+15/4*h51-5/2*h3111) + +H(0,-1,-1,1,1,1)*(3/16*ln2^4*z2-14/9*ln2^3*e3+37/40*ln2^2*z2^2+2*ln2^2*h31-5/4*ln2*z2*e3-4/15*ln2*e5-4*ln2*h311-15/112*z2^3+1/4*z2*h31+14/9*e3^2-4*h51+4*h3111) + +H(0,-1,0,-1,-1,-1)*(-121/840*z2^3+5/6*e3^2-5/4*h51-2*h3111) + +H(0,-1,0,-1,-1,1)*(1/10*ln2^2*z2^2-ln2^2*h31+10/3*ln2*z2*e3-65/12*ln2*e5+4*ln2*h311+61/210*z2^3-11/4*z2*h31-85/72*e3^2+27/4*h51-4*h3111) + +H(0,-1,0,-1,0,-1)*(-319/560*z2^3-z2*h31+31/9*e3^2-4*h51) + +H(0,-1,0,-1,0,1)*(-89/80*z2^3-5*z2*h31+7*e3^2) + +H(0,-1,0,-1,1,-1)*(-1/5*ln2^2*z2^2+2*ln2^2*h31-49/6*ln2*z2*e3+391/30*ln2*e5-6*ln2*h311-221/120*z2^3+z2*h31+91/9*e3^2-13*h51+8*h3111) + +H(0,-1,0,-1,1,1)*(1/10*ln2^2*z2^2-ln2^2*h31+37/12*ln2*z2*e3-151/30*ln2*e5+2*ln2*h311+557/336*z2^3+5/2*z2*h31-685/72*e3^2+9/2*h51-2*h3111) + +H(0,-1,0,0,-1,-1)*(-17/105*z2^3+17/18*e3^2-3/2*h51) + +H(0,-1,0,0,-1,1)*(9/2*ln2*z2*e3-217/30*ln2*e5+355/336*z2^3-67/12*e3^2+7/2*h51) + +H(0,-1,0,0,0,-1)*(-29/120*z2^3+5/3*e3^2-4*h51) + +H(0,-1,0,0,0,1)*(239/840*z2^3-4/3*e3^2) + +H(0,-1,0,0,1,-1)*(-9/2*ln2*z2*e3+217/30*ln2*e5-449/840*z2^3+8/3*e3^2-h51) + +H(0,-1,0,0,1,1)*(82/105*z2^3+3/2*z2*h31-163/36*e3^2) + +H(0,-1,0,1,-1,-1)*(1/10*ln2^2*z2^2-ln2^2*h31+29/6*ln2*z2*e3-457/60*ln2*e5+2*ln2*h311+377/1680*z2^3-3/2*z2*h31-67/72*e3^2+3/2*h51) + +H(0,-1,0,1,-1,1)*(-1/5*ln2^2*z2^2+2*ln2^2*h31-49/6*ln2*z2*e3+391/30*ln2*e5-6*ln2*h311-73/30*z2^3-z2*h31+493/36*e3^2-25/2*h51+6*h3111) + +H(0,-1,0,1,0,-1)*(3/560*z2^3) + +H(0,-1,0,1,0,1)*(-459/560*z2^3-3*z2*h31+91/18*e3^2) + +H(0,-1,0,1,1,-1)*(1/10*ln2^2*z2^2-ln2^2*h31+61/12*ln2*z2*e3-8*ln2*e5+4*ln2*h311+2371/1680*z2^3-1/2*z2*h31-71/9*e3^2+10*h51-6*h3111) + +H(0,-1,0,1,1,1)*(179/1680*z2^3+3/4*z2*h31-17/24*e3^2) + +H(0,-1,1,-1,-1,-1)*(-1/4*ln2^4*z2+35/36*ln2^3*e3-5/16*ln2^2*z2^2+5/4*ln2^2*h31-16/3*ln2*z2*e3+509/60*ln2*e5-9/2*ln2*h311-201/280*z2^3+z2*h31+139/36*e3^2-21/4*h51+5*h3111) + +H(0,-1,1,-1,-1,1)*(3/16*ln2^4*z2-7/12*ln2^3*e3+3/20*ln2^2*z2^2-3/2*ln2^2*h31+13/2*ln2*z2*e3-301/30*ln2*e5+9/2*ln2*h311+29/16*z2^3+3/4*z2*h31-31/3*e3^2+19/2*h51-9/2*h3111) + +H(0,-1,1,-1,0,-1)*(-2/5*ln2^2*z2^2+4*ln2^2*h31-43/4*ln2*z2*e3+263/15*ln2*e5-16*ln2*h311-1781/420*z2^3+z2*h31+427/18*e3^2-33*h51+24*h3111) + +H(0,-1,1,-1,0,1)*(-3/8*ln2^2*z2^2+23/3*ln2*z2*e3-31/3*ln2*e5+331/210*z2^3+z2*h31-683/72*e3^2+5*h51) + +H(0,-1,1,-1,1,-1)*(1/2*ln2^4*z2-7/3*ln2^3*e3+3/5*ln2^2*z2^2+3/2*ln2^2*h31+7/4*ln2*z2*e3-16/5*ln2*e5-3/2*ln2*h311+31/140*z2^3-7/6*e3^2) + +H(0,-1,1,-1,1,1)*(-7/16*ln2^4*z2+7/3*ln2^3*e3-57/80*ln2^2*z2^2-9/4*ln2^2*h31-11/4*ln2*z2*e3+99/20*ln2*e5+9/2*ln2*h311-451/560*z2^3-3/4*z2*h31+53/12*e3^2+9/4*h51-9/2*h3111) + +H(0,-1,1,0,-1,-1)*(1/12*ln2*z2*e3-1/4*ln2*e5+4*ln2*h311+703/280*z2^3+z2*h31-1043/72*e3^2+20*h51-12*h3111) + +H(0,-1,1,0,-1,1)*(31/40*ln2^2*z2^2-4*ln2^2*h31+85/12*ln2*z2*e3-41/3*ln2*e5+12*ln2*h311+319/140*z2^3-z2*h31-839/72*e3^2+19*h51-12*h3111) + +H(0,-1,1,0,0,-1)*(5/6*ln2*z2*e3-31/15*ln2*e5+261/560*z2^3-z2*h31-11/6*e3^2+6*h51) + +H(0,-1,1,0,0,1)*(37/6*ln2*z2*e3-31/3*ln2*e5+411/560*z2^3-2*z2*h31-107/36*e3^2+5*h51) + +H(0,-1,1,0,1,-1)*(-31/40*ln2^2*z2^2+4*ln2^2*h31-97/12*ln2*z2*e3+299/20*ln2*e5-16*ln2*h311-89/20*z2^3+2*z2*h31+218/9*e3^2-38*h51+24*h3111) + +H(0,-1,1,0,1,1)*(-59/12*ln2*z2*e3+217/30*ln2*e5-843/560*z2^3-1/4*z2*h31+311/36*e3^2-7/2*h51) + +H(0,-1,1,1,-1,-1)*(-1/8*ln2^4*z2-7/18*ln2^3*e3+3/10*ln2^2*z2^2+3/4*ln2^2*h31-23/12*ln2*z2*e3+29/12*ln2*e5-5/2*ln2*h311-77/80*z2^3+203/36*e3^2-15/2*h51+4*h3111) + +H(0,-1,1,1,-1,1)*(3/16*ln2^4*z2-19/80*ln2^2*z2^2+1/2*ln2^2*h31+23/12*ln2*z2*e3-161/60*ln2*e5-3/2*ln2*h311+69/112*z2^3+z2*h31-83/24*e3^2-1/4*h51+3/2*h3111) + +H(0,-1,1,1,0,-1)*(1/5*ln2^2*z2^2-2*ln2^2*h31+6*ln2*z2*e3-619/60*ln2*e5+8*ln2*h311+2053/840*z2^3+1/4*z2*h31-953/72*e3^2+33/2*h51-12*h3111) + +H(0,-1,1,1,0,1)*(3/16*ln2^2*z2^2-2/3*ln2*z2*e3-31/60*ln2*e5+1483/1680*z2^3+11/4*z2*h31-311/72*e3^2+1/4*h51) + +H(0,-1,1,1,1,-1)*(-1/8*ln2^4*z2+7/12*ln2^3*e3-13/20*ln2^2*z2^2-ln2^2*h31-2/3*ln2*z2*e3+11/4*ln2*e5+5/2*ln2*h311+3/40*z2^3-1/2*z2*h31-23/24*e3^2+4*h51-3*h3111) + +H(0,-1,1,1,1,1)*(1/16*ln2^4*z2-7/12*ln2^3*e3+39/80*ln2^2*z2^2+3/4*ln2^2*h31+1/6*ln2*z2*e3-161/60*ln2*e5-3/2*ln2*h311+5/14*z2^3-1/2*z2*h31-4/9*e3^2-1/4*h51+3/2*h3111) + +H(0,0,-1,-1,-1,-1)*(h3111) + +H(0,0,-1,-1,-1,1)*(-7/18*ln2^3*e3+11/40*ln2^2*z2^2+ln2^2*h31-7/3*ln2*z2*e3+29/10*ln2*e5-3*ln2*h311-67/280*z2^3+z2*h31+3/2*e3^2-9/2*h51+3*h3111) + +H(0,0,-1,-1,0,-1)*(113/210*z2^3+1/2*z2*h31-55/18*e3^2+h51) + +H(0,0,-1,-1,0,1)*(41/168*z2^3+z2*h31-3/2*e3^2) + +H(0,0,-1,-1,1,-1)*(7/6*ln2^3*e3-63/80*ln2^2*z2^2-3/2*ln2^2*h31+5/3*ln2*z2*e3-9/10*ln2*e5+2*ln2*h311-143/560*z2^3+1/4*z2*h31+31/36*e3^2+3/4*h51-h3111) + +H(0,0,-1,-1,1,1)*(-7/9*ln2^3*e3+3/5*ln2^2*z2^2+3/2*ln2^2*h31-5/6*ln2*z2*e3-1/5*ln2*e5-3*ln2*h311-67/140*z2^3-z2*h31+61/18*e3^2-3*h51+3*h3111) + +H(0,0,-1,0,-1,-1)*(1/15*z2^3-17/36*e3^2+7/2*h51) + +H(0,0,-1,0,-1,1)*(-13/6*ln2*z2*e3+31/10*ln2*e5+43/210*z2^3+2*z2*h31-5/4*e3^2-3/2*h51) + +H(0,0,-1,0,0,-1)*(5/8*z2^3-7/2*e3^2+6*h51) + +H(0,0,-1,0,0,1)*(4/35*z2^3-1/2*e3^2) + +H(0,0,-1,0,1,-1)*(13/6*ln2*z2*e3-31/10*ln2*e5-29/336*z2^3+z2*h31+1/6*e3^2-h51) + +H(0,0,-1,0,1,1)*(-403/840*z2^3+95/36*e3^2) + +H(0,0,-1,1,-1,-1)*(-7/6*ln2^3*e3+3/4*ln2^2*z2^2+37/12*ln2*z2*e3-91/15*ln2*e5+2*ln2*h311+33/40*z2^3-3/4*z2*h31-149/36*e3^2+13/4*h51-3*h3111) + +H(0,0,-1,1,-1,1)*(14/9*ln2^3*e3-41/40*ln2^2*z2^2-ln2^2*h31-5/2*ln2*z2*e3+23/4*ln2*e5+ln2*h311-349/560*z2^3+1/2*z2*h31+26/9*e3^2-7/4*h51-h3111) + +H(0,0,-1,1,0,-1)*(7/6*ln2*z2*e3-31/15*ln2*e5-211/1680*z2^3-1/2*z2*h31+7/6*e3^2-4*h51) + +H(0,0,-1,1,0,1)*(-7*ln2*z2*e3+31/3*ln2*e5-631/840*z2^3+3*z2*h31+73/18*e3^2-5*h51) + +H(0,0,-1,1,1,-1)*(-11/80*ln2^2*z2^2-1/2*ln2^2*h31-3/4*ln2*z2*e3+101/60*ln2*e5+2*ln2*h311+247/560*z2^3-1/2*z2*h31-49/18*e3^2+23/4*h51-3*h3111) + +H(0,0,-1,1,1,1)*(-7/18*ln2^3*e3+13/40*ln2^2*z2^2+1/2*ln2^2*h31+17/6*ln2*z2*e3-157/30*ln2*e5-ln2*h311+27/40*z2^3-3/2*z2*h31-28/9*e3^2+3/2*h51+h3111) + +H(0,0,0,-1,-1,-1)*(-1/14*z2^3+4/9*e3^2-3/2*h51) + +H(0,0,0,-1,-1,1)*(3/8*ln2^2*z2^2+1/3*ln2*z2*e3-31/15*ln2*e5+9/280*z2^3-z2*h31+2/3*e3^2+h51) + +H(0,0,0,-1,0,-1)*(-5/24*z2^3+4/3*e3^2-4*h51) + +H(0,0,0,-1,0,1)*(-97/420*z2^3+4/3*e3^2) + +H(0,0,0,-1,1,-1)*(-3/4*ln2^2*z2^2-3/2*ln2*z2*e3+31/6*ln2*e5-257/560*z2^3+4/3*e3^2) + +H(0,0,0,-1,1,1)*(3/8*ln2^2*z2^2+7/3*ln2*z2*e3-31/6*ln2*e5+59/70*z2^3-z2*h31-34/9*e3^2+5/2*h51) + +H(0,0,0,0,-1,-1)*(h51) + +H(0,0,0,0,-1,1)*(-31/15*ln2*e5+39/70*z2^3-4/3*e3^2+h51) + +H(0,0,0,0,0,-1)*(31/140*z2^3) + +H(0,0,0,0,0,1)*(8/35*z2^3) + +H(0,0,0,0,1,-1)*(31/15*ln2*e5-111/280*z2^3+1/2*e3^2) + +H(0,0,0,0,1,1)*(6/35*z2^3-8/9*e3^2) + +H(0,0,0,1,-1,-1)*(3/8*ln2^2*z2^2+7/6*ln2*z2*e3-31/10*ln2*e5+7/40*z2^3-1/2*z2*h31-1/3*e3^2-h51) + +H(0,0,0,1,-1,1)*(-3/4*ln2^2*z2^2-3/2*ln2*z2*e3+31/6*ln2*e5-121/140*z2^3+131/36*e3^2-5/2*h51) + +H(0,0,0,1,0,-1)*(-221/840*z2^3+5/3*e3^2-4*h51) + +H(0,0,0,1,0,1)*(-32/105*z2^3+16/9*e3^2) + +H(0,0,0,1,1,-1)*(3/8*ln2^2*z2^2-5/6*ln2*z2*e3+9/70*z2^3-1/2*z2*h31-7/36*e3^2+3/2*h51) + +H(0,0,0,1,1,1)*(23/70*z2^3-16/9*e3^2) + +H(0,0,1,-1,-1,-1)*(7/18*ln2^3*e3-19/80*ln2^2*z2^2+1/2*ln2^2*h31-29/12*ln2*z2*e3+61/15*ln2*e5-ln2*h311+33/560*z2^3+3/4*z2*h31-43/72*e3^2+3/2*h51) + +H(0,0,1,-1,-1,1)*(-3/80*ln2^2*z2^2-3/2*ln2^2*h31+19/4*ln2*z2*e3-209/30*ln2*e5+4*ln2*h311+731/560*z2^3+1/2*z2*h31-547/72*e3^2+15/2*h51-4*h3111) + +H(0,0,1,-1,0,-1)*(-7/6*ln2*z2*e3+31/15*ln2*e5+23/60*z2^3+z2*h31-47/18*e3^2+4*h51) + +H(0,0,1,-1,0,1)*(7*ln2*z2*e3-31/3*ln2*e5+137/120*z2^3-2*z2*h31-227/36*e3^2+5*h51) + +H(0,0,1,-1,1,-1)*(-14/9*ln2^3*e3+41/40*ln2^2*z2^2+ln2^2*h31+5/2*ln2*z2*e3-23/4*ln2*e5-ln2*h311+111/280*z2^3-5/3*e3^2) + +H(0,0,1,-1,1,1)*(7/6*ln2^3*e3-67/80*ln2^2*z2^2-ln2^2*h31-10/3*ln2*z2*e3+137/20*ln2*e5+2*ln2*h311-303/280*z2^3+3/2*z2*h31+187/36*e3^2-5/4*h51-2*h3111) + +H(0,0,1,0,-1,-1)*(347/1680*z2^3-43/36*e3^2+5/2*h51) + +H(0,0,1,0,-1,1)*(-11/3*ln2*z2*e3+31/6*ln2*e5-109/210*z2^3+2*z2*h31+53/18*e3^2-5/2*h51) + +H(0,0,1,0,0,-1)*(113/280*z2^3-13/6*e3^2+6*h51) + +H(0,0,1,0,0,1)*(-4/35*z2^3+8/9*e3^2) + +H(0,0,1,0,1,-1)*(11/3*ln2*z2*e3-31/6*ln2*e5+691/1680*z2^3+z2*h31-49/18*e3^2-h51) + +H(0,0,1,0,1,1)*(-29/30*z2^3+16/3*e3^2) + +H(0,0,1,1,-1,-1)*(7/9*ln2^3*e3-17/40*ln2^2*z2^2+1/2*ln2^2*h31-19/6*ln2*z2*e3+329/60*ln2*e5-3*ln2*h311-41/40*z2^3+1/2*z2*h31+45/8*e3^2-15/2*h51+4*h3111) + +H(0,0,1,1,-1,1)*(-7/6*ln2^3*e3+7/10*ln2^2*z2^2+1/2*ln2^2*h31+31/12*ln2*z2*e3-31/6*ln2*e5+47/56*z2^3-z2*h31-301/72*e3^2+5/2*h51) + +H(0,0,1,1,0,-1)*(5/336*z2^3+1/36*e3^2-h51) + +H(0,0,1,1,0,1)*(53/105*z2^3-8/3*e3^2) + +H(0,0,1,1,1,-1)*(7/18*ln2^3*e3-3/16*ln2^2*z2^2-25/12*ln2*z2*e3+71/20*ln2*e5-ln2*h311-379/560*z2^3-1/4*z2*h31+67/18*e3^2-11/4*h51+2*h3111) + +H(0,0,1,1,1,1)*(6/35*z2^3-8/9*e3^2) + +H(0,1,-1,-1,-1,-1)*(1/16*ln2^4*z2-7/36*ln2^3*e3+3/40*ln2^2*z2^2-3/4*ln2^2*h31+19/12*ln2*z2*e3-149/60*ln2*e5+3/2*ln2*h311+1/80*z2^3-1/4*z2*h31-1/72*e3^2-h3111) + +H(0,1,-1,-1,-1,1)*(-1/8*ln2^4*z2+7/12*ln2^3*e3-19/80*ln2^2*z2^2+1/2*ln2^2*h31-11/4*ln2*z2*e3+91/20*ln2*e5-3/2*ln2*h311-31/40*z2^3-3/4*z2*h31+53/12*e3^2-15/4*h51+3/2*h3111) + +H(0,1,-1,-1,0,-1)*(1/5*ln2^2*z2^2-2*ln2^2*h31+37/12*ln2*z2*e3-103/20*ln2*e5+8*ln2*h311+583/420*z2^3-9/4*z2*h31-271/36*e3^2+14*h51-12*h3111) + +H(0,1,-1,-1,0,1)*(3/16*ln2^2*z2^2-19/4*ln2*z2*e3+403/60*ln2*e5-599/840*z2^3+301/72*e3^2-13/4*h51) + +H(0,1,-1,-1,1,-1)*(3/16*ln2^4*z2-7/6*ln2^3*e3+33/80*ln2^2*z2^2+3/2*ln2^2*h31-ln2*z2*e3+14/15*ln2*e5-3/2*ln2*h311+277/560*z2^3+3/2*z2*h31-35/12*e3^2+7/4*h51) + +H(0,1,-1,-1,1,1)*(-1/8*ln2^4*z2+7/6*ln2^3*e3-21/40*ln2^2*z2^2-9/4*ln2^2*h31+9/2*ln2*z2*e3-59/10*ln2*e5+9/2*ln2*h311+361/280*z2^3-181/24*e3^2+15/2*h51-9/2*h3111) + +H(0,1,-1,0,-1,-1)*(-1/12*ln2*z2*e3+1/4*ln2*e5-4*ln2*h311-279/140*z2^3+5/4*z2*h31+101/9*e3^2-37/2*h51+12*h3111) + +H(0,1,-1,0,-1,1)*(-31/40*ln2^2*z2^2+4*ln2^2*h31-16/3*ln2*z2*e3+317/30*ln2*e5-12*ln2*h311-177/70*z2^3-2*z2*h31+125/9*e3^2-35/2*h51+12*h3111) + +H(0,1,-1,0,0,-1)*(-5/6*ln2*z2*e3+31/15*ln2*e5-23/40*z2^3+z2*h31+8/3*e3^2-6*h51) + +H(0,1,-1,0,0,1)*(-37/6*ln2*z2*e3+31/3*ln2*e5-199/280*z2^3+2*z2*h31+28/9*e3^2-5*h51) + +H(0,1,-1,0,1,-1)*(31/40*ln2^2*z2^2-4*ln2^2*h31+19/3*ln2*z2*e3-237/20*ln2*e5+16*ln2*h311+135/28*z2^3+z2*h31-244/9*e3^2+38*h51-24*h3111) + +H(0,1,-1,0,1,1)*(59/12*ln2*z2*e3-217/30*ln2*e5+247/280*z2^3-2*z2*h31-43/9*e3^2+7/2*h51) + +H(0,1,-1,1,-1,-1)*(-7/16*ln2^4*z2+35/18*ln2^3*e3-43/80*ln2^2*z2^2-1/4*ln2^2*h31-47/12*ln2*z2*e3+131/20*ln2*e5-5/2*ln2*h311-659/560*z2^3-3/2*z2*h31+245/36*e3^2-23/4*h51+4*h3111) + +H(0,1,-1,1,-1,1)*(1/2*ln2^4*z2-7/3*ln2^3*e3+3/5*ln2^2*z2^2+3/2*ln2^2*h31+7/4*ln2*z2*e3-16/5*ln2*e5-3/2*ln2*h311+31/280*z2^3-3/4*z2*h31-5/12*e3^2+3/2*h3111) + +H(0,1,-1,1,0,-1)*(-2/5*ln2^2*z2^2+4*ln2^2*h31-43/4*ln2*z2*e3+263/15*ln2*e5-16*ln2*h311-101/21*z2^3-11/4*z2*h31+248/9*e3^2-33*h51+24*h3111) + +H(0,1,-1,1,0,1)*(-3/8*ln2^2*z2^2+23/3*ln2*z2*e3-31/3*ln2*e5+479/840*z2^3-7/2*z2*h31-28/9*e3^2+5*h51) + +H(0,1,-1,1,1,-1)*(3/16*ln2^4*z2-7/4*ln2^3*e3+59/80*ln2^2*z2^2+2*ln2^2*h31+7/6*ln2*z2*e3-169/60*ln2*e5-7/2*ln2*h311-163/560*z2^3+3/4*z2*h31+11/6*e3^2-23/4*h51+3*h3111) + +H(0,1,-1,1,1,1)*(-1/4*ln2^4*z2+7/4*ln2^3*e3-9/10*ln2^2*z2^2-9/4*ln2^2*h31-5/3*ln2*z2*e3+133/30*ln2*e5+9/2*ln2*h311-9/140*z2^3+2*z2*h31-11/18*e3^2+5/2*h51-9/2*h3111) + +H(0,1,0,-1,-1,-1)*(121/840*z2^3-3/4*z2*h31-17/24*e3^2+2*h51-2*h3111) + +H(0,1,0,-1,-1,1)*(23/80*ln2^2*z2^2-ln2^2*h31+17/12*ln2*z2*e3-67/20*ln2*e5+4*ln2*h311+127/168*z2^3-271/72*e3^2+23/4*h51-4*h3111) + +H(0,1,0,-1,0,-1)*(-79/140*z2^3-4*z2*h31+35/9*e3^2) + +H(0,1,0,-1,0,1)*(-19/70*z2^3-2*z2*h31+35/18*e3^2) + +H(0,1,0,-1,1,-1)*(-23/40*ln2^2*z2^2+2*ln2^2*h31-13/6*ln2*z2*e3+317/60*ln2*e5-6*ln2*h311-611/420*z2^3+z2*h31+67/9*e3^2-13*h51+8*h3111) + +H(0,1,0,-1,1,1)*(23/80*ln2^2*z2^2-ln2^2*h31-10/3*ln2*z2*e3+15/4*ln2*e5+2*ln2*h311+209/420*z2^3+3*z2*h31-23/9*e3^2+1/4*h51-2*h3111) + +H(0,1,0,0,-1,-1)*(-17/840*z2^3+3/2*z2*h31-1/36*e3^2-5/2*h51) + +H(0,1,0,0,-1,1)*(5/2*ln2*z2*e3-31/6*ln2*e5+701/840*z2^3-125/36*e3^2+5/2*h51) + +H(0,1,0,0,0,-1)*(-67/840*z2^3+4/3*e3^2-4*h51) + +H(0,1,0,0,0,1)*(10/21*z2^3-16/9*e3^2) + +H(0,1,0,0,1,-1)*(-5/2*ln2*z2*e3+31/6*ln2*e5-857/1680*z2^3+16/9*e3^2-h51) + +H(0,1,0,0,1,1)*(53/105*z2^3-8/3*e3^2) + +H(0,1,0,1,-1,-1)*(23/80*ln2^2*z2^2-ln2^2*h31+3/4*ln2*z2*e3-29/15*ln2*e5+2*ln2*h311-5/168*z2^3-2*z2*h31+25/36*e3^2+5/2*h51) + +H(0,1,0,1,-1,1)*(-23/40*ln2^2*z2^2+2*ln2^2*h31-13/6*ln2*z2*e3+317/60*ln2*e5-6*ln2*h311-313/240*z2^3-z2*h31+247/36*e3^2-35/4*h51+6*h3111) + +H(0,1,0,1,0,-1)*(3/112*z2^3-3*z2*h31+4/9*e3^2+4*h51) + +H(0,1,0,1,0,1)*(3/70*z2^3) + +H(0,1,0,1,1,-1)*(23/80*ln2^2*z2^2-ln2^2*h31+11/2*ln2*z2*e3-271/30*ln2*e5+4*ln2*h311+2381/1680*z2^3+5/4*z2*h31-145/18*e3^2+29/4*h51-6*h3111) + +H(0,1,0,1,1,1)*(-32/105*z2^3+16/9*e3^2) + +H(0,1,1,-1,-1,-1)*(3/16*ln2^4*z2-7/18*ln2^3*e3+1/10*ln2^2*z2^2-ln2^2*h31+7/2*ln2*z2*e3-65/12*ln2*e5+4*ln2*h311+57/56*z2^3+1/2*z2*h31-47/8*e3^2+27/4*h51-9/2*h3111) + +H(0,1,1,-1,-1,1)*(-1/8*ln2^4*z2+1/16*ln2^2*z2^2+5/4*ln2^2*h31-14/3*ln2*z2*e3+209/30*ln2*e5-4*ln2*h311-577/560*z2^3+3/4*z2*h31+35/6*e3^2-15/2*h51+4*h3111) + +H(0,1,1,-1,0,-1)*(1/5*ln2^2*z2^2-2*ln2^2*h31+19/4*ln2*z2*e3-433/60*ln2*e5+8*ln2*h311+1987/840*z2^3+11/4*z2*h31-169/12*e3^2+15*h51-12*h3111) + +H(0,1,1,-1,0,1)*(3/16*ln2^2*z2^2-7*ln2*z2*e3+217/20*ln2*e5-487/840*z2^3+7/2*z2*h31+59/24*e3^2-21/4*h51) + +H(0,1,1,-1,1,-1)*(-7/16*ln2^4*z2+7/4*ln2^3*e3-31/80*ln2^2*z2^2-7/4*ln2^2*h31-25/12*ln2*z2*e3+15/4*ln2*e5+2*ln2*h311-103/560*z2^3-3/4*z2*h31+11/12*e3^2+7/4*h51-1/2*h3111) + +H(0,1,1,-1,1,1)*(3/8*ln2^4*z2-7/4*ln2^3*e3+1/2*ln2^2*z2^2+5/2*ln2^2*h31+37/12*ln2*z2*e3-11/2*ln2*e5-5*ln2*h311-5/14*z2^3-3*z2*h31+209/72*e3^2-5/2*h51+5*h3111) + +H(0,1,1,0,-1,-1)*(1/16*z2^3-7/24*e3^2+3/4*h51) + +H(0,1,1,0,-1,1)*(35/12*ln2*z2*e3-341/60*ln2*e5+53/560*z2^3-2*z2*h31+7/8*e3^2+11/4*h51) + +H(0,1,1,0,0,-1)*(-1/140*z2^3+3/2*z2*h31+4/9*e3^2-h51) + +H(0,1,1,0,0,1)*(-13/70*z2^3+16/9*e3^2) + +H(0,1,1,0,1,-1)*(-35/12*ln2*z2*e3+341/60*ln2*e5-87/560*z2^3-1/4*z2*h31+h51) + +H(0,1,1,0,1,1)*(-4/35*z2^3+8/9*e3^2) + +H(0,1,1,1,-1,-1)*(3/16*ln2^4*z2-7/36*ln2^3*e3+3/16*ln2^2*z2^2+25/12*ln2*z2*e3-71/20*ln2*e5+ln2*h311+309/560*z2^3+1/4*z2*h31-55/18*e3^2+3*h51-5/2*h3111) + +H(0,1,1,1,-1,1)*(-1/4*ln2^4*z2+7/12*ln2^3*e3-1/4*ln2^2*z2^2-5/4*ln2^2*h31-25/12*ln2*z2*e3+229/60*ln2*e5+3*ln2*h311+7/16*z2^3+7/4*z2*h31-49/18*e3^2+5/4*h51-3*h3111) + +H(0,1,1,1,0,-1)*(11/336*z2^3+3/4*z2*h31+1/3*e3^2-5/2*h51) + +H(0,1,1,1,0,1)*(10/21*z2^3-16/9*e3^2) + +H(0,1,1,1,1,-1)*(1/16*ln2^4*z2+13/80*ln2^2*z2^2+1/4*ln2^2*h31+1/2*ln2*z2*e3-1/15*ln2*e5-ln2*h311-13/35*z2^3-1/2*z2*h31+16/9*e3^2-5/4*h51+3/2*h3111) + +H(0,1,1,1,1,1)*(8/35*z2^3) +); +.sort +#if `ZERO_diff' == 0 + #message Error in WEIGHT `WEIGHT' result + #terminate +#endif +Print diff; +*--#] +.end +assert succeeded? +assert result("diff") =~ expr("0") +*--#] mzv-dm-hexall : diff --git a/check/extra/z-fmft.frm b/check/extra/z-fmft.frm new file mode 100644 index 00000000..ba05a6aa --- /dev/null +++ b/check/extra/z-fmft.frm @@ -0,0 +1,124 @@ +* Requires the FMFT library: https://github.com/apik/fmft +* These tests are adapted from "tests.frm" there. +* The filename starts with "z-" such that it doesn't run in +* the same "group" as the Forcer tests, in the CI. +#ifndef `TEST' + #message Use -D TEST=XXX + #terminate +#else + #include `NAME_' # `TEST' +#endif +.end + +*--#[ FMFT10 : +#- +Off statistics; +#include- fmft.hh + +CF fmftint; + +Local test = fmftint(-2,2,1,1,1,1,1,1,2,0); +id fmftint(n1?,n2?,n3?,n4?,n5?,n6?,n7?,n8?,n9?,n10?) = + 1/d1^n1/d2^n2/d3^n3/d4^n4/d5^n5/d6^n6/d7^n7/d8^n8/d9^n9/d10^n10; +.sort + +#call fmft +.sort + +Drop; +Local diff = test - ( + PR11d*rat(6*d^2 - 56*d + 128,3*d - 15) + PR11*rat( - 5*d^3 + 73*d^2 - 344*d + + 528,12*d - 60) + PR10*rat( - 10*d^3 + 120*d^2 - 486*d + 648,27*d - + 135) + PR9d*rat(165*d^2 - 1282*d + 2454,6*d - 30) + PR9*rat( - 36*d^3 + + 438*d^2 - 1763*d + 2348,6*d - 30) + PR8*rat( - d^3 + 8*d^2 + 51*d - 198, + 54*d - 270) + PR7*rat( - 29019*d^4 + 413105*d^3 - 2187116*d^2 + 5099196* + d - 4411296,1728*d^2 - 15552*d + 34560) + PR6*rat(143*d^3 - 1360*d^2 + + 4119*d - 3942,54*d - 270) + PR5*rat(690*d^4 - 9927*d^3 + 53236*d^2 - + 126157*d + 111486,54*d^2 - 468*d + 990) + PR4d*rat(49549*d^4 - 841308* + d^3 + 5320223*d^2 - 14841540*d + 15399900,1728*d^4 - 29376*d^3 + 184896* + d^2 - 509760*d + 518400) + PR4*rat( - 52292*d^6 + 1172896*d^5 - 10870123 + *d^4 + 53277372*d^3 - 145616437*d^2 + 210346260*d - 125381700,8640*d^4 + - 146880*d^3 + 924480*d^2 - 2548800*d + 2592000) + PR3*rat(10769*d^6 - + 220232*d^5 + 1837263*d^4 - 7989592*d^3 + 19065208*d^2 - 23627232*d + + 11872368,3456*d^4 - 58752*d^3 + 369792*d^2 - 1019520*d + 1036800) + PR2* + rat(9441*d^5 - 152160*d^4 + 968003*d^3 - 3032544*d^2 + 4666900*d - + 2815200,5184*d^3 - 65664*d^2 + 274752*d - 380160) + PR1*rat( - 111*d^6 + + 1886*d^5 - 12895*d^4 + 45480*d^3 - 87640*d^2 + 87872*d - 35952,864* + d^4 - 15264*d^3 + 100512*d^2 - 292320*d + 316800) +); +Print diff; +.end +assert succeeded? +assert result("diff") =~ expr("0") +*--#] FMFT10 : +*--#[ FMFT13 : +#- +Off statistics; +#include- fmft.hh + +CF fmftint; + +Local test = fmftint(-2,3,0,1,1,1,1,1,2,0); +id fmftint(n1?,n2?,n3?,n4?,n5?,n6?,n7?,n8?,n9?,n10?) = + 1/d1^n1/d2^n2/d3^n3/d4^n4/d5^n5/d6^n6/d7^n7/d8^n8/d9^n9/d10^n10; +.sort + +#call fmft +.sort + +Drop; +Local diff = test - ( + PR10*rat(d^3 + 7*d^2 - 78*d + 144,216) + PR8*rat(d^3 - 17*d^2 + 66*d - 72,72) + + PR7*rat(27*d^4 + 160*d^3 - 2229*d^2 + 6230*d - 5712,3456*d - 13824) + + PR6*rat(13*d^3 - 70*d^2 + 112*d - 48,432) + PR4d*rat( - 5873*d^3 + + 96660*d^2 - 469369*d + 711138,17280*d^2 - 120960*d + 207360) + PR4*rat( + 2164*d^5 - 53456*d^4 + 491087*d^3 - 2128092*d^2 + 4392611*d - 3477390, + 86400*d^2 - 604800*d + 1036800) + PR3*rat(703*d^5 - 12112*d^4 + 79731* + d^3 - 253394*d^2 + 391604*d - 236184,6912*d^2 - 48384*d + 82944) + PR2* + rat( - 63*d^4 + 221*d^3 + 356*d^2 - 1460*d + 736,6912*d - 27648) + PR1* + rat(77*d^4 - 712*d^3 + 2424*d^2 - 3616*d + 2000,1152*d - 4608) +); +Print diff; +.end +assert succeeded? +assert result("diff") =~ expr("0") +*--#] FMFT13 : +*--#[ FMFT31 : +#- +Off statistics; +#include- fmft.hh + +CF fmftint; + +Local test = fmftint(-1,1,1,1,1,1,1,1,3,0); +id fmftint(n1?,n2?,n3?,n4?,n5?,n6?,n7?,n8?,n9?,n10?) = + 1/d1^n1/d2^n2/d3^n3/d4^n4/d5^n5/d6^n6/d7^n7/d8^n8/d9^n9/d10^n10; +.sort + +#call fmft +.sort + +Drop; +Local diff = test - ( + PR11d*rat(3*d - 14,12) + PR11*rat( - d^2 + 10*d - 24,24) + PR10*rat( - 2*d + + 6,9) + PR9d*rat( - 135*d^2 + 1102*d - 2196,24*d - 120) + PR9*rat(33*d^3 + - 412*d^2 + 1698*d - 2312,24*d - 120) + PR8*rat( - d^3 + 8*d^2 - 21*d + + 18,36*d - 180) + PR7*rat(4026*d^4 - 59105*d^3 + 321419*d^2 - 766846*d + + 676496,1152*d^2 - 10368*d + 23040) + PR6*rat( - 35*d^3 + 355*d^2 - + 1132*d + 1124,72*d - 360) + PR5*rat( - 285*d^4 + 4227*d^3 - 23287*d^2 + + 56525*d - 51036,108*d^2 - 936*d + 1980) + PR4d*rat( - 6246*d^4 + 107677* + d^3 - 691972*d^2 + 1963115*d - 2072950,1152*d^4 - 19584*d^3 + 123264*d^2 + - 339840*d + 345600) + PR4*rat(19656*d^6 - 449052*d^5 + 4232454*d^4 - + 21066049*d^3 + 58388404*d^2 - 85419675*d + 51502350,17280*d^4 - 293760* + d^3 + 1848960*d^2 - 5097600*d + 5184000) + PR3*rat( - 1310*d^6 + 27305* + d^5 - 231976*d^4 + 1026155*d^3 - 2487202*d^2 + 3125300*d - 1589336,2304* + d^4 - 39168*d^3 + 246528*d^2 - 679680*d + 691200) + PR2*rat( - 81*d^5 + + 1341*d^4 - 8748*d^3 + 28039*d^2 - 44030*d + 27024,216*d^3 - 2736*d^2 + + 11448*d - 15840) + PR1*rat(9*d^6 - 150*d^5 + 1009*d^4 - 3512*d^3 + 6696* + d^2 - 6656*d + 2704,216*d^4 - 3816*d^3 + 25128*d^2 - 73080*d + 79200) +); +Print diff; +.end +assert succeeded? +assert result("diff") =~ expr("0") +*--#] FMFT31 :