(* ::Package:: *)

localbasis[GGGG[4]] = {{M[GGGG[4], {pmmp, SUSYM}], 
      H[1, 4]*H[2, 3]*(H[1, 4]*H[2, 3] + 2*X[1, 2, 4, 3])}, 
     {M[GGGG[4], {pmmp, SUSYM}, tus], H[1, 3]*H[2, 4]*
       (H[1, 3]*H[2, 4] + 2*X[1, 2, 3, 4])}, {M[GGGG[4], {pmmp, SUSYM}, ust], 
      H[1, 2]*H[3, 4]*(H[1, 2]*H[3, 4] + 2*X[1, 3, 2, 4])}, 
     {M[GGGG[4], {ppppE, FULLSYM}], -1/8*(H[1, 2]*H[3, 4]*X[1, 2, 4, 3])/
        (dot[p[1], p[2]]^2*dot[p[2], p[3]]^2)}, 
     {M[GGGG[4], {pppmE, FULLSYM}], 
      8*HS*(HS + (2*(-2*dot[p[1], p[3]]*X[1, 2, 3, 4] - 2*dot[p[1], p[4]]*
            X[1, 2, 4, 3] - 2*dot[p[1], p[2]]*X[1, 3, 2, 4]))/3)}, 
     {M[GGGG[4], {ppppO, FULLSYM}], 
      -1/32*(H[1, 3]*H[2, 4]*(2*H[2, 4]*\[Epsilon][e[1], e[3], p[1], p[3]] + 
          2*H[1, 3]*\[Epsilon][e[2], e[4], p[2], p[4]]))/dot[p[1], p[3]]^4}, 
     {M[GGGG[4], {pppmO, FULLSYM}], 
      -8*(HS + (2*(-2*dot[p[1], p[3]]*X[1, 2, 3, 4] - 2*dot[p[1], p[4]]*
            X[1, 2, 4, 3] - 2*dot[p[1], p[2]]*X[1, 3, 2, 4]))/3)*
       (V[4]*(-(dot[p[2], p[3]]*\[Epsilon][e[1], e[2], e[3], p[1]]) - 
          dot[e[3], p[2]]*\[Epsilon][e[1], e[2], p[1], p[3]] + 
          dot[e[2], p[3]]*\[Epsilon][e[1], e[3], p[1], p[2]] - 
          dot[e[2], e[3]]*\[Epsilon][e[1], p[1], p[2], p[3]]) + 
        V[1]*(-(dot[p[3], p[4]]*\[Epsilon][e[2], e[3], e[4], p[2]]) - 
          dot[e[4], p[3]]*\[Epsilon][e[2], e[3], p[2], p[4]] + 
          dot[e[3], p[4]]*\[Epsilon][e[2], e[4], p[2], p[3]] - 
          dot[e[3], e[4]]*\[Epsilon][e[2], p[2], p[3], p[4]]) + 
        V[2]*(-(dot[p[1], p[4]]*\[Epsilon][e[1], e[3], e[4], p[3]]) - 
          dot[e[4], p[1]]*\[Epsilon][e[1], e[3], p[3], p[4]] + 
          dot[e[1], p[4]]*\[Epsilon][e[3], e[4], p[1], p[3]] - 
          dot[e[1], e[4]]*\[Epsilon][e[3], p[1], p[3], p[4]]) + 
        V[3]*(-(dot[p[1], p[2]]*\[Epsilon][e[1], e[2], e[4], p[4]]) - 
          dot[e[2], p[1]]*\[Epsilon][e[1], e[4], p[2], p[4]] + 
          dot[e[1], p[2]]*\[Epsilon][e[2], e[4], p[1], p[4]] - 
          dot[e[1], e[2]]*\[Epsilon][e[4], p[1], p[2], p[4]]))}}
 
vertices[GG[4]] = {(dot[ep[1], ep[2]]^2*Tableau[{evenn^J}])/Sqrt[2], 
     (Sqrt[((-3 + J)*(-2 + J)*(-1 + J)*J)/((1 + J)*(2 + J)*(3 + J)*(4 + J))]*
       (-(dot[ep[1], ep[2]]^2*Tableau[{evenn^J}]) + 
        4*Tableau[{ep[1]}, {ep[1]}, {ep[2]}, {ep[2]}, {evenn^(-4 + J)}]))/
      Sqrt[2], (dot[ep[1], ep[2]]*Tableau[{evenn^J}]*\[Epsilon][ep[1], ep[2], 
        n])/Sqrt[2], Sqrt[2]*Sqrt[((-3 + J)*(-2 + J)*(-1 + J)*J)/
        ((1 + J)*(2 + J)*(3 + J)*(4 + J))]*(Tableau[{ep[1], n}, {ep[1]}, 
        {ep[2]}, {ep[2]}, {n}, {evenn^(-5 + J)}] + Tableau[{ep[2], n}, 
        {ep[2]}, {ep[1]}, {ep[1]}, {n}, {evenn^(-5 + J)}])}
 
amplow[GGG[4]] = Sqrt[G8\[Pi]]*
     ((2*dot[e[1], p[2]]*dot[e[2], e[3]] - 2*dot[e[1], e[3]]*
          dot[e[2], p[1]] + dot[e[1], e[2]]*(dot[e[3], p[1]] - 
           dot[e[3], p[2]]))^2/2 + 4*G2*dot[e[1], p[2]]^2*dot[e[2], p[1]]^2*
       dot[e[3], p[1]]*dot[e[3], p[2]] + 2*GO*dot[e[1], p[2]]*dot[e[2], p[1]]*
       (-(dot[e[2], p[1]]*dot[e[3], p[2]]*\[Epsilon][p[1], p[2], e[1], 
           e[3]]) + dot[e[1], p[2]]*dot[e[3], p[1]]*\[Epsilon][p[1], p[2], 
          e[2], e[3]]))
 
amplow[GGGG[4]] = {G8\[Pi]*(1/(s*(-s - t)*t) + ((G2^2 + GO^2)*s*(-s - t))/
         (4*t)) + g[4, 0, {GGGG[4], pmmp}] + (s^2 + t^2 + u^2)*
       g[6, 0, {GGGG[4], pmmp}] + s*t*u*g[7, 0, {GGGG[4], pmmp}] + 
      (s^2 + t^2 + u^2)^2*g[8, 0, {GGGG[4], pmmp}] + 
      2*s*t*u*(s^2 + t^2 + u^2)*g[9, 0, {GGGG[4], pmmp}] + 
      (s^2 + t^2 + u^2)^3*g[10, 0, {GGGG[4], pmmp}] + 
      t*g[5, T, 0, {GGGG[4], pmmp}] + t^2*g[6, T^2, 0, {GGGG[4], pmmp}] + 
      t*(s^2 + t^2 + u^2)*g[7, T, 0, {GGGG[4], pmmp}] + 
      s*t^2*u*g[8, T, 0, {GGGG[4], pmmp}], 
     G8\[Pi]*(1/(s*(-s - t)*t) + ((G2^2 + GO^2)*s*t)/(4*(-s - t))) + 
      g[4, 0, {GGGG[4], pmmp}] + (s^2 + t^2 + u^2)*g[6, 0, {GGGG[4], pmmp}] + 
      s*t*u*g[7, 0, {GGGG[4], pmmp}] + (s^2 + t^2 + u^2)^2*
       g[8, 0, {GGGG[4], pmmp}] + 2*s*t*u*(s^2 + t^2 + u^2)*
       g[9, 0, {GGGG[4], pmmp}] + (s^2 + t^2 + u^2)^3*
       g[10, 0, {GGGG[4], pmmp}] + u*g[5, T, 0, {GGGG[4], pmmp}] + 
      u^2*g[6, T^2, 0, {GGGG[4], pmmp}] + u*(s^2 + t^2 + u^2)*
       g[7, T, 0, {GGGG[4], pmmp}] + s*t*u^2*g[8, T, 0, {GGGG[4], pmmp}], 
     G8\[Pi]*(1/(s*(-s - t)*t) + ((G2^2 + GO^2)*(-s - t)*t)/(4*s)) + 
      g[4, 0, {GGGG[4], pmmp}] + (s^2 + t^2 + u^2)*g[6, 0, {GGGG[4], pmmp}] + 
      s*t*u*g[7, 0, {GGGG[4], pmmp}] + (s^2 + t^2 + u^2)^2*
       g[8, 0, {GGGG[4], pmmp}] + 2*s*t*u*(s^2 + t^2 + u^2)*
       g[9, 0, {GGGG[4], pmmp}] + (s^2 + t^2 + u^2)^3*
       g[10, 0, {GGGG[4], pmmp}] + s*g[5, T, 0, {GGGG[4], pmmp}] + 
      s^2*g[6, T^2, 0, {GGGG[4], pmmp}] + s*(s^2 + t^2 + u^2)*
       g[7, T, 0, {GGGG[4], pmmp}] + s^2*t*u*g[8, T, 0, {GGGG[4], pmmp}], 
     -5*G2*G8\[Pi]*s*(-s - t)*t + (s^2 + t^2 + u^2)^2*
       g[4, 0, {GGGG[4], ppppE}] + 2*s*t*u*(s^2 + t^2 + u^2)*
       g[5, 0, {GGGG[4], ppppE}] + (s^2 + t^2 + u^2)^3*
       g[6, 0, {GGGG[4], ppppE}] + s^2*t^2*u^2*g[6, 1, {GGGG[4], ppppE}] + 
      3*s*t*u*(s^2 + t^2 + u^2)^2*g[7, 0, {GGGG[4], ppppE}] + 
      3*s^2*t^2*u^2*(s^2 + t^2 + u^2)*g[8, 1, {GGGG[4], ppppE}] + 
      s^3*t^3*u^3*g[9, 1, {GGGG[4], ppppE}], -((G2*G8\[Pi])/(s*(-s - t)*t)) + 
      g[6, 0, {GGGG[4], pppmE}] + (s^2 + t^2 + u^2)*
       g[8, 0, {GGGG[4], pppmE}] + s*t*u*g[9, 0, {GGGG[4], pppmE}], 
     -5*G8\[Pi]*GO*s*(-s - t)*t + (s^2 + t^2 + u^2)^2*
       g[4, 0, {GGGG[4], ppppO}] + 2*s*t*u*(s^2 + t^2 + u^2)*
       g[5, 0, {GGGG[4], ppppO}] + (s^2 + t^2 + u^2)^3*
       g[6, 0, {GGGG[4], ppppO}] + s^2*t^2*u^2*g[6, 1, {GGGG[4], ppppO}] + 
      3*s*t*u*(s^2 + t^2 + u^2)^2*g[7, 0, {GGGG[4], ppppO}] + 
      3*s^2*t^2*u^2*(s^2 + t^2 + u^2)*g[8, 1, {GGGG[4], ppppO}] + 
      s^3*t^3*u^3*g[9, 1, {GGGG[4], ppppO}], -((G8\[Pi]*GO)/(s*(-s - t)*t)) + 
      g[6, 0, {GGGG[4], pppmO}] + (s^2 + t^2 + u^2)*
       g[8, 0, {GGGG[4], pppmO}] + s*t*u*g[9, 0, {GGGG[4], pppmO}]}
 
ruleDtilde = {Dtilde[J_, m_, mp_, x_] :> Module[{max = Max[Abs[m], Abs[mp]]}, 
       (1/Abs[m - mp]!)*Sqrt[Pochhammer[J - max + 1, Abs[m - mp]]*
          Pochhammer[J - max + Abs[m + mp] + 1, Abs[m - mp]]]*
        Hypergeometric2F1[max - J, max + J + 1, 1 + Abs[m - mp], (1 - x)/2]]}
 
partialwavesNice[{GG[4], GG[4]}] = {exchange[{0}, {GGGG[4], s, 1 + (2*t)/s}, 
      {{1, 1}, {1, 1}}, {{{0, 0, 1/(2*m2^4), 1/2, 0, 0, 0}, 
        {0, 0, 0, 0, 0, 1/2, 0}}, {{0, 0, 0, 0, 0, 1/2, 0}, 
        {0, 0, 1/(2*m2^4), -1/2, 0, 0, 0}}}], exchange[{2}, 
      {GGGG[4], s, 1 + (2*t)/s}, {{1, 1}, {1, 1}}, 
      {{{0, 0, (-1/4 + (3*x^2)/4)/m2^4, -1/4 + (3*x^2)/4, 0, 0, 0}, 
        {0, 0, 0, 0, 0, -1/4 + (3*x^2)/4, 0}}, 
       {{0, 0, 0, 0, 0, -1/4 + (3*x^2)/4, 0}, {0, 0, (-1/4 + (3*x^2)/4)/m2^4, 
         1/4 - (3*x^2)/4, 0, 0, 0}}}], exchange[{4 + 2*m}, 
      {GGGG[4], s, 1 + (2*t)/s}, 1, {{{0, 0, Dtilde[J, 0, 0, x]/(2*m2^4), 
         Dtilde[J, 0, 0, x]/2, 0, 0, 0}, {0, 0, 0, 0, Dtilde[J, 4, 0, x]/
          (2*m2^6), 0, 0}, {0, 0, 0, 0, 0, Dtilde[J, 0, 0, x]/2, 0}}, 
       {{0, 0, 0, 0, Dtilde[J, 4, 0, x]/(2*m2^6), 0, 0}, 
        {Dtilde[J, 4, -4, x]/(2*m2^4), Dtilde[J, 4, 4, x]/(2*m2^4), 0, 0, 0, 
         0, 0}, {0, 0, 0, 0, 0, 0, Dtilde[J, 4, 0, x]/(2*m2^6)}}, 
       {{0, 0, 0, 0, 0, Dtilde[J, 0, 0, x]/2, 0}, {0, 0, 0, 0, 0, 0, 
         Dtilde[J, 4, 0, x]/(2*m2^6)}, {0, 0, Dtilde[J, 0, 0, x]/(2*m2^4), 
         -1/2*Dtilde[J, 0, 0, x], 0, 0, 0}}}], exchange[{5 + 2*m}, 
      {GGGG[4], s, 1 + (2*t)/s}, 1, 
      {{{-1/2*Dtilde[J, 4, -4, x]/m2^4, Dtilde[J, 4, 4, x]/(2*m2^4), 0, 0, 0, 
         0, 0}}}]}

partialwaves[{GG[4], GG[4]}] = {exchange[{0}, {GGGG[4], s, 1 + (2*t)/s}, 
      {{1, 1}, {1, 1}}, {{{0, 0, 1/(2*m2^4), 1/2, 0, 0, 0}, 
        {0, 0, 0, 0, 0, 1/2, 0}}, {{0, 0, 0, 0, 0, 1/2, 0}, 
        {0, 0, 1/(2*m2^4), -1/2, 0, 0, 0}}}], exchange[{2}, 
      {GGGG[4], s, 1 + (2*t)/s}, {{1, 1}, {1, 1}}, 
      {{{0, 0, (-1/4 + (3*x^2)/4)/m2^4, -1/4 + (3*x^2)/4, 0, 0, 0}, 
        {0, 0, 0, 0, 0, -1/4 + (3*x^2)/4, 0}}, 
       {{0, 0, 0, 0, 0, -1/4 + (3*x^2)/4, 0}, {0, 0, (-1/4 + (3*x^2)/4)/m2^4, 
         1/4 - (3*x^2)/4, 0, 0, 0}}}], exchange[{4 + 2*m}, 
      {GGGG[4], s, 1 + (2*t)/s}, 
      {{1/(2*m2^4), 8/(Sqrt[-3 + J]*Sqrt[-2 + J]*Sqrt[-1 + J]*Sqrt[J]*
          Sqrt[1 + J]*Sqrt[2 + J]*Sqrt[3 + J]*Sqrt[4 + J]*m2^6), 1/2}, 
       {8/(Sqrt[-3 + J]*Sqrt[-2 + J]*Sqrt[-1 + J]*Sqrt[J]*Sqrt[1 + J]*
          Sqrt[2 + J]*Sqrt[3 + J]*Sqrt[4 + J]*m2^6), 
        8/((-3 + J)*(-2 + J)*(-1 + J)*J*(1 + J)*(2 + J)*(3 + J)*(4 + J)*
          m2^4), 8/(Sqrt[-3 + J]*Sqrt[-2 + J]*Sqrt[-1 + J]*Sqrt[J]*
          Sqrt[1 + J]*Sqrt[2 + J]*Sqrt[3 + J]*Sqrt[4 + J]*m2^6)}, 
       {1/2, 8/(Sqrt[-3 + J]*Sqrt[-2 + J]*Sqrt[-1 + J]*Sqrt[J]*Sqrt[1 + J]*
          Sqrt[2 + J]*Sqrt[3 + J]*Sqrt[4 + J]*m2^6), 1/(2*m2^4)}}, 
      {{{0, 0, pj[J, x, 4, 0], m2^4*pj[J, x, 4, 0], 0, 0, 0}, 
        {0, 0, 0, 0, pj[J, x, 4, 4], 0, 0}, {0, 0, 0, 0, 0, pj[J, x, 4, 0], 
         0}}, {{0, 0, 0, 0, pj[J, x, 4, 4], 0, 0}, 
        {(-96 - 14*J - 13*J^2 + 2*J^3 + J^4)*pj[J, x, 4, 4] + 
          (-8*(-6 + J)*(7 + J) - 8*(3 + J + J^2)*x)*pj[J, x, 4, 5] + 
          (8*(-27 + J + J^2) + 4*(18 + J + J^2)*x)*pj[J, x, 4, 6] + 
          (8 - 48*x)*pj[J, x, 4, 7] + (8 + 8*x)*pj[J, x, 4, 8], 
         (-96 - 14*J - 13*J^2 + 2*J^3 + J^4)*pj[J, x, 4, 4] + 
          (8*(-6 + J)*(7 + J) - 8*(3 + J + J^2)*x)*pj[J, x, 4, 5] + 
          (8*(-27 + J + J^2) - 4*(18 + J + J^2)*x)*pj[J, x, 4, 6] + 
          (-8 - 48*x)*pj[J, x, 4, 7] + (8 - 8*x)*pj[J, x, 4, 8], 0, 0, 0, 0, 
         0}, {0, 0, 0, 0, 0, 0, pj[J, x, 4, 4]}}, 
       {{0, 0, 0, 0, 0, pj[J, x, 4, 0], 0}, {0, 0, 0, 0, 0, 0, 
         pj[J, x, 4, 4]}, {0, 0, pj[J, x, 4, 0], -(m2^4*pj[J, x, 4, 0]), 0, 
         0, 0}}}], exchange[{5 + 2*m}, {GGGG[4], s, 1 + (2*t)/s}, 
      {{8/((-3 + J)*(-2 + J)*(-1 + J)*J*(1 + J)*(2 + J)*(3 + J)*(4 + J)*
          m2^4)}}, {{{(96 + 14*J + 13*J^2 - 2*J^3 - J^4)*pj[J, x, 4, 4] + 
          (8*(-6 + J)*(7 + J) + 8*(3 + J + J^2)*x)*pj[J, x, 4, 5] + 
          (-8*(-27 + J + J^2) - 4*(18 + J + J^2)*x)*pj[J, x, 4, 6] + 
          (-8 + 48*x)*pj[J, x, 4, 7] + (-8 - 8*x)*pj[J, x, 4, 8], 
         (-96 - 14*J - 13*J^2 + 2*J^3 + J^4)*pj[J, x, 4, 4] + 
          (8*(-6 + J)*(7 + J) - 8*(3 + J + J^2)*x)*pj[J, x, 4, 5] + 
          (8*(-27 + J + J^2) - 4*(18 + J + J^2)*x)*pj[J, x, 4, 6] + 
          (-8 - 48*x)*pj[J, x, 4, 7] + (8 - 8*x)*pj[J, x, 4, 8], 0, 0, 0, 0, 
         0}}}]}
 
sumrules[bkimp[GGGG[4], 2]] = 
    {(2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][p2] + 
      (2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][p2], 
     -(Derivative[1][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0]/
        (m2*(m2 - p2))) + Derivative[1][M[GGGG[4], {pmmp, SUSYM}, ust][s, 
          -t]][0]/(m2*(m2 + p2)) + 
      ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}][s, -t][p2])/(m2^2*(m2 - p2)^2) - 
      ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][0])/
       (m2^2*(m2 - p2)^2), (2*m2 - p2)*M[GGGG[4], {pppmE, FULLSYM}][s, -t][
       p2], (-2*p2^3*Derivative[1][M[GGGG[4], {ppppE, FULLSYM}][s, -t]][0])/
       (m2^3*(m2 - p2)*(m2 + p2)) - ((4*m2 - 3*p2)*p2^2*
        M[GGGG[4], {ppppE, FULLSYM}][s, -t][0])/(m2^4*(m2 - p2)^2) + 
      ((2*m2 - p2)*M[GGGG[4], {ppppE, FULLSYM}][s, -t][p2])/
       (m2^2*(m2 - p2)^2), (2*m2 - p2)*M[GGGG[4], {pppmO, FULLSYM}][s, -t][
       p2], (-2*p2^3*Derivative[1][M[GGGG[4], {ppppO, FULLSYM}][s, -t]][0])/
       (m2^3*(m2 - p2)*(m2 + p2)) - ((4*m2 - 3*p2)*p2^2*
        M[GGGG[4], {ppppO, FULLSYM}][s, -t][0])/(m2^4*(m2 - p2)^2) + 
      ((2*m2 - p2)*M[GGGG[4], {ppppO, FULLSYM}][s, -t][p2])/
       (m2^2*(m2 - p2)^2)}
 
sumrules[bkimp[GGGG[4], 3]] = {-M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][p2] + 
      M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][p2]}
 
sumrules[bkimp[GGGG[4], 4]] = 
    {-((p2^2*(m2^2 + 2*p2^2)*Derivative[1][M[GGGG[4], {pmmp, SUSYM}, tus][s, 
            -t]][0])/m2^4) + ((m2 - p2)*p2^2*(m2 + p2)*
        Derivative[1][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][0])/m2^4 - 
      (p2^4*Derivative[2][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/
       (2*m2^3) - (p2^4*Derivative[2][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][
         0])/(2*m2^3) - (2*p2^6*M[GGGG[4], {pmmp, SUSYM}][s, -t][0])/
       (m2^5*(m2 - p2)*(m2 + p2)) + (p2*(m2^4 - 2*m2^3*p2 - 2*m2^2*p2^2 - 
         2*m2*p2^3 - 2*p2^4)*M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][0])/
       (m2^5*(m2 + p2)) + ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][
         p2])/(m2*(m2 - p2)) - (p2*M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][0])/
       (m2*(m2 - p2)) + ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][
         p2])/(m2*(m2 - p2)), 
     -(((2*m2 - p2)*Derivative[1][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/
        (m2^3*(m2 - p2)^2)) - Derivative[1][M[GGGG[4], {pmmp, SUSYM}, ust][s, 
          -t]][0]/(m2^3*(m2 + p2)) - 
      Derivative[2][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0]/
       (2*m2^2*(m2 - p2)) - Derivative[2][M[GGGG[4], {pmmp, SUSYM}, ust][s, 
          -t]][0]/(2*m2^2*(m2 + p2)) + 
      ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}][s, -t][p2])/(m2^3*(m2 - p2)^3) - 
      ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][0])/
       (m2^3*(m2 - p2)^3), (-2*p2^2*M[GGGG[4], {pppmE, FULLSYM}][s, -t][0])/
       (m2*(m2 - p2)*(m2 + p2)) + 
      ((2*m2 - p2)*M[GGGG[4], {pppmE, FULLSYM}][s, -t][p2])/(m2*(m2 - p2)), 
     -((p2^3*(4*m2^2 + 3*m2*p2 - 5*p2^2)*
         Derivative[1][M[GGGG[4], {ppppE, FULLSYM}][s, -t]][0])/
        (m2^6*(m2 - p2)^2*(m2 + p2))) - 
      (p2^4*Derivative[2][M[GGGG[4], {ppppE, FULLSYM}][s, -t]][0])/
       (m2^5*(m2 - p2)*(m2 + p2)) - (p2^2*(6*m2^3 - 4*m2^2*p2 - 4*m2*p2^2 + 
         3*p2^3)*M[GGGG[4], {ppppE, FULLSYM}][s, -t][0])/(m2^7*(m2 - p2)^3) + 
      ((2*m2 - p2)*M[GGGG[4], {ppppE, FULLSYM}][s, -t][p2])/
       (m2^3*(m2 - p2)^3), (-2*p2^2*M[GGGG[4], {pppmO, FULLSYM}][s, -t][0])/
       (m2*(m2 - p2)*(m2 + p2)) + 
      ((2*m2 - p2)*M[GGGG[4], {pppmO, FULLSYM}][s, -t][p2])/(m2*(m2 - p2)), 
     -((p2^3*(4*m2^2 + 3*m2*p2 - 5*p2^2)*
         Derivative[1][M[GGGG[4], {ppppO, FULLSYM}][s, -t]][0])/
        (m2^6*(m2 - p2)^2*(m2 + p2))) - 
      (p2^4*Derivative[2][M[GGGG[4], {ppppO, FULLSYM}][s, -t]][0])/
       (m2^5*(m2 - p2)*(m2 + p2)) - (p2^2*(6*m2^3 - 4*m2^2*p2 - 4*m2*p2^2 + 
         3*p2^3)*M[GGGG[4], {ppppO, FULLSYM}][s, -t][0])/(m2^7*(m2 - p2)^3) + 
      ((2*m2 - p2)*M[GGGG[4], {ppppO, FULLSYM}][s, -t][p2])/
       (m2^3*(m2 - p2)^3)}
 
sumrules[bkimp[GGGG[4], 5]] = 
    {(2*p2^3*Derivative[1][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/m2^4 + 
      (p2^3*Derivative[1][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][0])/m2^4 + 
      (p2^3*Derivative[2][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/
       (2*m2^3) + (p2^3*Derivative[2][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][
         0])/(2*m2^3) + (2*p2^5*M[GGGG[4], {pmmp, SUSYM}][s, -t][0])/
       (m2^5*(m2 - p2)*(m2 + p2)) - (p2*(m2^3 - 2*m2*p2^2 - 2*p2^3)*
        M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][0])/(m2^5*(m2 + p2)) - 
      M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][p2]/(m2*(m2 - p2)) - 
      (p2*M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][0])/(m2^2*(m2 - p2)) + 
      M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][p2]/(m2*(m2 - p2))}
 
sumrules[bkimp[GGGG[4], 6]] = 
    {(-2*p2^7*Derivative[1][M[GGGG[4], {pmmp, SUSYM}][s, -t]][0])/
       (m2^7*(m2 - p2)*(m2 + p2)) + (p2^2*(m2^4 - 3*m2^3*p2 - 9*m2^2*p2^2 - 
         11*m2*p2^3 - 5*p2^4)*Derivative[1][M[GGGG[4], {pmmp, SUSYM}, tus][s, 
           -t]][0])/(m2^7*(m2 + p2)) - 
      (p2^2*(m2^4 - m2^3*p2 - 5*m2^2*p2^2 + 8*m2*p2^3 - 2*p2^4)*
        Derivative[1][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][0])/
       (m2^7*(m2 - p2)) - (p2^3*(m2^2 + 6*m2*p2 + 3*p2^2)*
        Derivative[2][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/(2*m2^6) + 
      (p2^3*(m2^2 + 6*m2*p2 - 2*p2^2)*
        Derivative[2][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][0])/(2*m2^6) - 
      (p2^4*(3*m2 + p2)*Derivative[3][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][
         0])/(6*m2^5) + ((3*m2 - p2)*p2^4*
        Derivative[3][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][0])/(6*m2^5) - 
      ((8*m2 - 7*p2)*p2^6*M[GGGG[4], {pmmp, SUSYM}][s, -t][0])/
       (m2^8*(m2 - p2)^2) + (p2*(m2^4 - 5*m2^2*p2^2 - 6*m2*p2^3 - 7*p2^4)*
        M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][0])/m2^8 + 
      ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][p2])/
       (m2^2*(m2 - p2)^2) - (p2*(m2^2 + 2*m2*p2 - 2*p2^2)*
        M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][0])/(m2^4*(m2 - p2)^2) + 
      ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][p2])/
       (m2^2*(m2 - p2)^2), 
     -(((2*m2 - p2)*Derivative[1][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/
        (m2^4*(m2 - p2)^3)) + 
      (2*Derivative[1][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][0])/
       (m2^5*(m2 + p2)) - 
      ((2*m2 - p2)*Derivative[2][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/
       (2*m2^4*(m2 - p2)^2) + Derivative[2][M[GGGG[4], {pmmp, SUSYM}, ust][s, 
          -t]][0]/(m2^4*(m2 + p2)) - 
      Derivative[3][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0]/
       (6*m2^3*(m2 - p2)) + Derivative[3][M[GGGG[4], {pmmp, SUSYM}, ust][s, 
          -t]][0]/(6*m2^3*(m2 + p2)) + 
      ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}][s, -t][p2])/(m2^4*(m2 - p2)^4) - 
      ((2*m2 - p2)*M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][0])/
       (m2^4*(m2 - p2)^4), 
     (-2*p2^3*Derivative[1][M[GGGG[4], {pppmE, FULLSYM}][s, -t]][0])/
       (m2^3*(m2 - p2)*(m2 + p2)) - ((4*m2 - 3*p2)*p2^2*
        M[GGGG[4], {pppmE, FULLSYM}][s, -t][0])/(m2^4*(m2 - p2)^2) + 
      ((2*m2 - p2)*M[GGGG[4], {pppmE, FULLSYM}][s, -t][p2])/
       (m2^2*(m2 - p2)^2), 
     -((p2^3*(6*m2^4 + 6*m2^3*p2 - 7*m2^2*p2^2 - 13*m2*p2^3 + 10*p2^4)*
         Derivative[1][M[GGGG[4], {ppppE, FULLSYM}][s, -t]][0])/
        (m2^9*(m2 - p2)^3*(m2 + p2))) - (p2^4*(4*m2^2 + 5*m2*p2 - 7*p2^2)*
        Derivative[2][M[GGGG[4], {ppppE, FULLSYM}][s, -t]][0])/
       (2*m2^8*(m2 - p2)^2*(m2 + p2)) - 
      (p2^5*Derivative[3][M[GGGG[4], {ppppE, FULLSYM}][s, -t]][0])/
       (3*m2^7*(m2 - p2)*(m2 + p2)) - 
      (p2^2*(8*m2^5 - 5*m2^4*p2 - 10*m2^3*p2^2 + 7*m2^2*p2^3 + 4*m2*p2^4 - 
         3*p2^5)*M[GGGG[4], {ppppE, FULLSYM}][s, -t][0])/
       (m2^10*(m2 - p2)^4) + ((2*m2 - p2)*M[GGGG[4], {ppppE, FULLSYM}][s, -t][
         p2])/(m2^4*(m2 - p2)^4), 
     (-2*p2^3*Derivative[1][M[GGGG[4], {pppmO, FULLSYM}][s, -t]][0])/
       (m2^3*(m2 - p2)*(m2 + p2)) - ((4*m2 - 3*p2)*p2^2*
        M[GGGG[4], {pppmO, FULLSYM}][s, -t][0])/(m2^4*(m2 - p2)^2) + 
      ((2*m2 - p2)*M[GGGG[4], {pppmO, FULLSYM}][s, -t][p2])/
       (m2^2*(m2 - p2)^2), 
     -((p2^3*(6*m2^4 + 6*m2^3*p2 - 7*m2^2*p2^2 - 13*m2*p2^3 + 10*p2^4)*
         Derivative[1][M[GGGG[4], {ppppO, FULLSYM}][s, -t]][0])/
        (m2^9*(m2 - p2)^3*(m2 + p2))) - (p2^4*(4*m2^2 + 5*m2*p2 - 7*p2^2)*
        Derivative[2][M[GGGG[4], {ppppO, FULLSYM}][s, -t]][0])/
       (2*m2^8*(m2 - p2)^2*(m2 + p2)) - 
      (p2^5*Derivative[3][M[GGGG[4], {ppppO, FULLSYM}][s, -t]][0])/
       (3*m2^7*(m2 - p2)*(m2 + p2)) - 
      (p2^2*(8*m2^5 - 5*m2^4*p2 - 10*m2^3*p2^2 + 7*m2^2*p2^3 + 4*m2*p2^4 - 
         3*p2^5)*M[GGGG[4], {ppppO, FULLSYM}][s, -t][0])/
       (m2^10*(m2 - p2)^4) + ((2*m2 - p2)*M[GGGG[4], {ppppO, FULLSYM}][s, -t][
         p2])/(m2^4*(m2 - p2)^4)}
 
sumrules[bkimp[GGGG[4], 7]] = 
    {(2*p2^6*Derivative[1][M[GGGG[4], {pmmp, SUSYM}][s, -t]][0])/
       (m2^7*(m2 - p2)*(m2 + p2)) - (p2^2*(m2^3 - 5*m2*p2^2 - 5*p2^3)*
        Derivative[1][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/
       (m2^7*(m2 + p2)) - (p2^2*(m2^3 - 2*m2*p2^2 + 2*p2^3)*
        Derivative[1][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][0])/
       (m2^7*(m2 - p2)) + 
      (3*p2^4*Derivative[2][M[GGGG[4], {pmmp, SUSYM}, tus][s, -t]][0])/
       (2*m2^6) + (p2^4*Derivative[2][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][
         0])/m2^6 + (p2^4*Derivative[3][M[GGGG[4], {pmmp, SUSYM}, tus][s, 
           -t]][0])/(6*m2^5) + 
      (p2^4*Derivative[3][M[GGGG[4], {pmmp, SUSYM}, ust][s, -t]][0])/
       (6*m2^5) + (p2^5*(4*m2^2 + 5*m2*p2 - 7*p2^2)*
        M[GGGG[4], {pmmp, SUSYM}][s, -t][0])/(m2^8*(m2 - p2)^2*(m2 + p2)) - 
      (p2*(m2^4 + 2*m2^3*p2 - m2^2*p2^2 - 7*m2*p2^3 - 7*p2^4)*
        M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][0])/(m2^8*(m2 + p2)) - 
      M[GGGG[4], {pmmp, SUSYM}, tus][s, -t][p2]/(m2^2*(m2 - p2)^2) - 
      (p2*(m2^3 + 2*m2^2*p2 - 3*m2*p2^2 + p2^3)*
        M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][0])/(m2^6*(m2 - p2)^2) + 
      M[GGGG[4], {pmmp, SUSYM}, ust][s, -t][p2]/(m2^2*(m2 - p2)^2)}
 
Attributes[Derivative] = {NHoldAll}
 
sumruleslow[bkimp[GGGG[4], 2]] = {(2*G8\[Pi])/p2 + (G2^2*G8\[Pi]*p2^3)/4 + 
      (G8\[Pi]*GO^2*p2^3)/4, (G2^2*G8\[Pi])/(4*p2) + (G8\[Pi]*GO^2)/(4*p2), 
     -((G2*G8\[Pi])/p2), -5*G2*G8\[Pi]*p2, -((G8\[Pi]*GO)/p2), 
     -5*G8\[Pi]*GO*p2}
 
sumruleslow[bkimp[GGGG[4], 3]] = {-1/4*(G2^2*G8\[Pi]*p2^2) - 
      (G8\[Pi]*GO^2*p2^2)/4}
 
sumruleslow[bkimp[GGGG[4], 4]] = {(G2^2*G8\[Pi]*p2)/2 + (G8\[Pi]*GO^2*p2)/2 + 
      2*g[4, 0, {GGGG[4], pmmp}], 0, g[6, 0, {GGGG[4], pppmE}], 
     4*g[4, 0, {GGGG[4], ppppE}] + 4*p2*g[5, 0, {GGGG[4], ppppE}] + 
      p2^2*g[6, 1, {GGGG[4], ppppE}], g[6, 0, {GGGG[4], pppmO}], 
     4*g[4, 0, {GGGG[4], ppppO}] + 4*p2*g[5, 0, {GGGG[4], ppppO}] + 
      p2^2*g[6, 1, {GGGG[4], ppppO}]}
 
sumruleslow[bkimp[GGGG[4], 5]] = {-2*p2*g[6, 0, {GGGG[4], pmmp}] + 
      g[5, T, 0, {GGGG[4], pmmp}]}
 
sumruleslow[bkimp[GGGG[4], 6]] = {4*g[6, 0, {GGGG[4], pmmp}] + 
      2*p2*g[7, 0, {GGGG[4], pmmp}] + 8*p2^2*g[8, 0, {GGGG[4], pmmp}] + 
      2*g[6, T^2, 0, {GGGG[4], pmmp}], 0, 2*g[8, 0, {GGGG[4], pppmE}] + 
      p2*g[9, 0, {GGGG[4], pppmE}], 8*g[6, 0, {GGGG[4], ppppE}] + 
      12*p2*g[7, 0, {GGGG[4], ppppE}] + 6*p2^2*g[8, 1, {GGGG[4], ppppE}] + 
      p2^3*g[9, 1, {GGGG[4], ppppE}], 2*g[8, 0, {GGGG[4], pppmO}] + 
      p2*g[9, 0, {GGGG[4], pppmO}], 8*g[6, 0, {GGGG[4], ppppO}] + 
      12*p2*g[7, 0, {GGGG[4], ppppO}] + 6*p2^2*g[8, 1, {GGGG[4], ppppO}] + 
      p2^3*g[9, 1, {GGGG[4], ppppO}]}
 
sumruleslow[bkimp[GGGG[4], 7]] = {-4*p2*g[8, 0, {GGGG[4], pmmp}] - 
      4*p2^2*g[9, 0, {GGGG[4], pmmp}] - 8*p2^3*g[10, 0, {GGGG[4], pmmp}] + 
      2*g[7, T, 0, {GGGG[4], pmmp}] + p2*g[8, T, 0, {GGGG[4], pmmp}]}
 
sumrulesKK[bkimp[GGGG[4], 2], {GG[4], GG[4]}] = 
    {exchange[{0}, {{{(2*m2 - p2)/2, 0}, {0, (2*m2 - p2)/2}}, 
       {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, {{(2*m2 + 3*p2)/2, 0}, 
        {0, (-2*m2 - 3*p2)/2}}, {{0, 0}, {0, 0}}, {{0, (2*m2 + 3*p2)/2}, 
        {(2*m2 + 3*p2)/2, 0}}}], exchange[{2}, 
      {{{(2*m2^3 - 13*m2^2*p2 + 18*m2*p2^2 - 6*p2^3)/2, 0}, 
        {0, (2*m2^3 - 13*m2^2*p2 + 18*m2*p2^2 - 6*p2^3)/2}}, 
       {{-3/(m2 + p2), 0}, {0, -3/(m2 + p2)}}, {{0, 0}, {0, 0}}, 
       {{-1/2*(m2^2*(-2*m2 + 9*p2 + (6*p2^2)/(m2 + p2))), 0}, 
        {0, -1/2*(m2^2*(2*m2 - 9*p2 - (6*p2^2)/(m2 + p2)))}}, 
       {{0, 0}, {0, 0}}, {{0, -1/2*(m2^2*(-2*m2 + 9*p2 + 
            (6*p2^2)/(m2 + p2)))}, 
        {-1/2*(m2^2*(-2*m2 + 9*p2 + (6*p2^2)/(m2 + p2))), 0}}}]}
 
sumrulesKK[bkimp[GGGG[4], 3], {GG[4], GG[4]}] = 
    {exchange[{0}, {{{1/2, 0}, {0, 1/2}}}], exchange[{2}, 
      {{{(m2^2 - 6*m2*p2 + 6*p2^2)/2, 0}, {0, (m2^2 - 6*m2*p2 + 6*p2^2)/2}}}]}
 
sumrulesKK[bkimp[GGGG[4], 4], {GG[4], GG[4]}] = 
    {exchange[{0}, {{{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, 
       {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}}], 
     exchange[{2}, {{{-6*p2, 0}, {0, -6*p2}}, {{0, 0}, {0, 0}}, 
       {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, 
       {{0, 0}, {0, 0}}}]}
 
sumrulesKK[bkimp[GGGG[4], 5], {GG[4], GG[4]}] = 
    {exchange[{0}, {{{0, 0}, {0, 0}}}], exchange[{2}, {{{0, 0}, {0, 0}}}]}
 
sumrulesKK[bkimp[GGGG[4], 6], {GG[4], GG[4]}] = 
    {exchange[{0}, {{{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, 
       {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}}], 
     exchange[{2}, {{{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, 
       {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}, {{0, 0}, {0, 0}}}]}
 
sumrulesKK[bkimp[GGGG[4], 7], {GG[4], GG[4]}] = 
    {exchange[{0}, {{{0, 0}, {0, 0}}}], exchange[{2}, {{{0, 0}, {0, 0}}}]}
    
ampKK[{GG[4], GG[4]}] = 
   {exchange[{0}, {{{-1/2*1/(mh2^4*(-mh2 + t)), 0}, 
       {0, -1/2*1/(mh2^4*(-mh2 + t))}}, {{-1/2*1/(mh2^4*(-mh2 - s - t)), 0}, 
       {0, -1/2*1/(mh2^4*(-mh2 - s - t))}}, {{-1/2*1/(mh2^4*(-mh2 + s)), 0}, 
       {0, -1/2*1/(mh2^4*(-mh2 + s))}}, 
      {{-1/2*(s^4/(-mh2 + s) + (-s - t)^4/(-mh2 - s - t) + t^4/(-mh2 + t))/
          mh2^4, 0}, {0, (s^4/(-mh2 + s) + (-s - t)^4/(-mh2 - s - t) + 
          t^4/(-mh2 + t))/(2*mh2^4)}}, {{0, 0}, {0, 0}}, 
      {{0, -1/2*(s^4/(-mh2 + s) + (-s - t)^4/(-mh2 - s - t) + t^4/(-mh2 + t))/
          mh2^4}, {-1/2*(s^4/(-mh2 + s) + (-s - t)^4/(-mh2 - s - t) + 
           t^4/(-mh2 + t))/mh2^4, 0}}, {{0, 0}, {0, 0}}}], 
    exchange[{2}, {{{-1/2*(1 - (6*s*(-s - t))/mh2^2)/(mh2^4*(-mh2 + t)), 0}, 
       {0, -1/2*(1 - (6*s*(-s - t))/mh2^2)/(mh2^4*(-mh2 + t))}}, 
      {{-1/2*(1 - (6*s*t)/mh2^2)/(mh2^4*(-mh2 - s - t)), 0}, 
       {0, -1/2*(1 - (6*s*t)/mh2^2)/(mh2^4*(-mh2 - s - t))}}, 
      {{-1/2*(1 - (6*(-s - t)*t)/mh2^2)/(mh2^4*(-mh2 + s)), 0}, 
       {0, -1/2*(1 - (6*(-s - t)*t)/mh2^2)/(mh2^4*(-mh2 + s))}}, 
      {{-1/2*(((-s - t)^2*((-s - t)^2 - 6*s*t))/(-mh2 - s - t) + 
           (s^2*(s^2 - 6*(-s - t)*t))/(-mh2 + s) + 
           (t^2*(-6*s*(-s - t) + t^2))/(-mh2 + t))/mh2^4, 0}, 
       {0, (((-s - t)^2*((-s - t)^2 - 6*s*t))/(-mh2 - s - t) + 
          (s^2*(s^2 - 6*(-s - t)*t))/(-mh2 + s) + (t^2*(-6*s*(-s - t) + t^2))/
           (-mh2 + t))/(2*mh2^4)}}, {{0, 0}, {0, 0}}, 
      {{0, -1/2*(((-s - t)^2*((-s - t)^2 - 6*s*t))/(-mh2 - s - t) + 
           (s^2*(s^2 - 6*(-s - t)*t))/(-mh2 + s) + 
           (t^2*(-6*s*(-s - t) + t^2))/(-mh2 + t))/mh2^4}, 
       {-1/2*(((-s - t)^2*((-s - t)^2 - 6*s*t))/(-mh2 - s - t) + 
           (s^2*(s^2 - 6*(-s - t)*t))/(-mh2 + s) + 
           (t^2*(-6*s*(-s - t) + t^2))/(-mh2 + t))/mh2^4, 0}}, {{0, 0}, {0, 
      0}}}]}