
(* description = "pp -> HH+jets|pp -> HH+jets|pp -> HHjj|Higgs-pair plus two jet production in the Higgs effective field theory." *)

OpenLoopsModel = "HEFT";

SelectInterference = {eQED -> 4};
SetParameters = JoinOptions[{MB -> 0, YB -> 0}];
OnTheFlyMode = 0;

(* dddxdxhh *) AddProcess[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {S[1], S[1], F[4,{1}], -F[4,{1}]}, SelectCoupling -> ( Exponent[#1, gQCD] == 4 + 2*#2 && Exponent[#1, eQED] == 2 &)];
(* uuxddxhh *) AddProcess[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {S[1], S[1], F[3,{1}], -F[3,{1}]}, SelectCoupling -> ( Exponent[#1, gQCD] == 4 + 2*#2 && Exponent[#1, eQED] == 2 &)];
(* ddxhhgg  *) AddProcess[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {S[1], S[1], V[5]    ,  V[5]    }, SelectCoupling -> ( Exponent[#1, gQCD] == 4 + 2*#2 && Exponent[#1, eQED] == 2 &)];
(* hhgggg   *) AddProcess[FeynArtsProcess -> {V[5]    ,  V[5]    } -> {S[1], S[1], V[5]    ,  V[5]    }, SelectCoupling -> ( Exponent[#1, gQCD] == 4 + 2*#2 && Exponent[#1, eQED] == 2 &)];

(* dddxdxhhg *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {S[1], S[1], F[4,{1}], -F[4,{1}], V[5]}, SelectCoupling -> ( Exponent[#1, gQCD] == 5 && Exponent[#1, eQED] == 2 &)];
(* uuxddxhhg *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {S[1], S[1], F[3,{1}], -F[3,{1}], V[5]}, SelectCoupling -> ( Exponent[#1, gQCD] == 5 && Exponent[#1, eQED] == 2 &)];
(* ddxhhggg  *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {S[1], S[1], V[5]    ,  V[5]  , V[5] }, SelectCoupling -> ( Exponent[#1, gQCD] == 5 && Exponent[#1, eQED] == 2 &)];
(* hhggggg   *) AddReal[FeynArtsProcess -> {V[5]    ,  V[5]    } -> {S[1], S[1], V[5]    ,  V[5]  , V[5] }, SelectCoupling -> ( Exponent[#1, gQCD] == 5 && Exponent[#1, eQED] == 2 &)];



ChannelMap = {
  "ddxbbxhh" -> "uuxddxhh MB=0",
  "uuxbbxhh" -> "uuxddxhh MB=0",
  "bbbxbxhh" -> "dddxdxhh MB=0",
  "bbxhhgg"  -> "ddxhhgg MB=0",
  "ddxssxhh" -> "uuxddxhh",
  "uuuxuxhh" -> "dddxdxhh",
  "uuxccxhh" -> "uuxddxhh",
  "ccxddxhh" -> "uuxddxhh",
  "uuxhhgg"  -> "ddxhhgg",
(* REALS *)
  "ddxbbxhhg" -> "uuxddxhhg MB=0",
  "uuxbbxhhg" -> "uuxddxhhg MB=0",
  "bbbxbxhhg" -> "dddxdxhhg MB=0",
  "bbxhhggg"  -> "ddxhhggg MB=0",
  "ddxssxhhg" -> "uuxddxhhg",
  "uuuxuxhhg" -> "dddxdxhhg",
  "uuxccxhhg" -> "uuxddxhhg",
  "ccxddxhhg" -> "uuxddxhhg",
  "uuxhhggg"  -> "ddxhhggg"
};
