
(* description = "pp -> tt+jets|pp -> ttj|pp -> ttj|Top-quark pair plus jet production at NLO EW (including all subleading one-loop orders)." *)


(* O(as^3) + O(as^3 a) *)

(* ttxggg *)  AddProcess[FeynArtsProcess -> {F[3,{3}], -F[3,{3}]} -> {V[5],V[5],V[5]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 6}, SelectCoupling -> (Exponent[#1, eQED] == 0 + 2 * #2 &)];
(* uuxttxg *) AddProcess[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]}  -> {F[3,{3}],-F[3,{3}],V[5]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 6}, SelectCoupling -> (Exponent[#1, eQED] == 2 - 2 * #2 || Exponent[#1, eQED] == 0 + 2 * #2 &)];
(* ttxddxg *) AddProcess[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],V[5]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 6}, SelectCoupling -> (Exponent[#1, eQED] == 2 - 2 * #2 || Exponent[#1, eQED] == 0 + 2 * #2 &)];
(* ttxbbxg *) AddProcess[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],V[5]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 6}, SelectCoupling -> (Exponent[#1, eQED] == 2 - 2 * #2 || Exponent[#1, eQED] == 0 + 2 * #2 &)];


(* ttxggga *)  AddReal[FeynArtsProcess -> {F[3,{3}], -F[3,{3}]} -> {V[5],V[5],V[5],V[1]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 6}];
(* uuxttxga *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]}  -> {F[3,{3}],-F[3,{3}],V[5],V[1]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 6}];
(* ttxddxga *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],V[5],V[1]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 6}];
(* ttxbbxga *) AddReal[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],V[5],V[1]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 6}];


(* dddxdxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{1}], -F[4,{1}]}, SelectInterference -> {gQCD -> 6}];
(* uuxttxddx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 6}];
(* ddxssxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{2}], -F[4,{2}]}, SelectInterference -> {gQCD -> 6}];
(* ccxddxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 6}];
(* uuuxuxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 6}];
(* uuxccxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{2}], -F[3,{2}]}, SelectInterference -> {gQCD -> 6}];
(* ddxbbxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 6}];
(* uuxbbxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 6}];
(* bbbxbxttx *) AddReal[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 6}];




(* O(as^2*a) *)

(* uuxttxg *) AddTree[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 4}];
(* ttxddxg *) AddTree[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 4}];
(* bbxttxg *) AddTree[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 4}];

(* O(as*a^2) + O(as^2 a^2) *)

(* uuxttxg *) AddProcess[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {eQED -> 4}, SelectCoupling -> (Exponent[#1, gQCD] == 3 - 2 * #2 || Exponent[#1, gQCD] == 1 + 2 * #2 &),  UnitaryGauge -> False];
(* ttxddxg *) AddProcess[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {eQED -> 4}, SelectCoupling -> (Exponent[#1, gQCD] == 3 - 2 * #2 || Exponent[#1, gQCD] == 1 + 2 * #2 &),  UnitaryGauge -> False];
(* bbxttxg *) AddProcess[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {eQED -> 4}, SelectCoupling -> (Exponent[#1, gQCD] == 3 - 2 * #2 || Exponent[#1, gQCD] == 1 + 2 * #2 &),  UnitaryGauge -> False];
(* ttxaag *) AddProcess[FeynArtsProcess -> {V[1], V[1]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {eQED -> 4}];



(* uuxttxag *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],V[5], V[1]}, SelectInterference -> {eQED -> 4}];
(* ttxddxag *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],V[5], V[1]}, SelectInterference -> {eQED -> 4}];
(* bbxttxag *) AddReal[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],V[5], V[1]}, SelectInterference -> {eQED -> 4}];


(* dddxdxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{1}], -F[4,{1}]}, SelectInterference -> {eQED -> 4}];
(* uuxddxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {eQED -> 4}];
(* ddxssxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{2}], -F[4,{2}]}, SelectInterference -> {eQED -> 4}];
(* ccxddxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {eQED -> 4}];
(* uuuxuxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {eQED -> 4}];
(* uuxccxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{2}], -F[3,{2}]}, SelectInterference -> {eQED -> 4}];
(* ddxbbxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {eQED -> 4}];
(* uuxbbxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {eQED -> 4}];
(* bbbxbxttx *) AddReal[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {eQED -> 4}];

(* ttxaagg *) AddReal[FeynArtsProcess -> {V[1], V[1]} -> {F[3,{3}],-F[3,{3}],V[5],V[5]}, SelectInterference -> {eQED -> 4}];



(* O(as*a^2) + O(as*a^3) *)

(* uuxttxg *) AddProcess[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 2}, SelectCoupling -> (Exponent[#1, eQED] == 2 + 2 * #2 &),  UnitaryGauge -> False];
(* ttxddxg *) AddProcess[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 2}, SelectCoupling -> (Exponent[#1, eQED] == 2 + 2 * #2 &),  UnitaryGauge -> False];
(* bbxttxg *) AddProcess[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 2}, SelectCoupling -> (Exponent[#1, eQED] == 2 + 2 * #2 &),  UnitaryGauge -> False];
(* ttxaag *) AddProcess[FeynArtsProcess -> {V[1], V[1]} -> {F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 2}, SelectCoupling -> (Exponent[#1, eQED] == 2 + 2 * #2 &),  UnitaryGauge -> False];

(* uuxttxag *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],V[5],V[1]}, SelectInterference -> {gQCD -> 2}];
(* ttxddxag *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],V[5],V[1]}, SelectInterference -> {gQCD -> 2}];
(* bbxttxag *) AddReal[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],V[5],V[1]}, SelectInterference -> {gQCD -> 2}];
(* ttxaaag *) AddReal[FeynArtsProcess -> {V[1], V[1]} -> {F[3,{3}],-F[3,{3}],V[1],V[5]}, SelectInterference -> {gQCD -> 2}];


(* dddxdxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{1}], -F[4,{1}]}, SelectInterference -> {gQCD -> 2}];
(* uuxddxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 2}];
(* ddxssxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{2}], -F[4,{2}]}, SelectInterference -> {gQCD -> 2}];
(* ccxddxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 2}];
(* uuuxuxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 2}];
(* uuxccxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{2}], -F[3,{2}]}, SelectInterference -> {gQCD -> 2}];
(* ddxbbxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 2}];
(* uuxbbxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 2}];
(* bbbxbxttx *) AddReal[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 2}];


(* O(a^3) + O(as a^3) *)

(* ttxaaa *) AddProcess[FeynArtsProcess -> {V[1], V[1]} -> {F[3,{3}],-F[3,{3}],V[1]}, SelectInterference -> {eQED -> 6}, SelectCoupling -> (Exponent[#1, gQCD] == 0 + 2 * #2 &),  UnitaryGauge -> False];


(* O(a^3) + O(a^4) *)

(* ttxaaa *) AddProcess[FeynArtsProcess -> {V[1], V[1]} -> {F[3,{3}],-F[3,{3}],V[1]}, SelectInterference -> {gQCD -> 0}, SelectCoupling -> (Exponent[#1, eQED] == 3 + 2 * #2 &),  UnitaryGauge -> False];

(* ttxaaaa *) AddReal[FeynArtsProcess -> {V[1], V[1]} -> {F[3,{3}],-F[3,{3}],V[1],V[1]}, SelectInterference -> {gQCD -> 0}];


(* dddxdxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{1}], -F[4,{1}]}, SelectInterference -> {gQCD -> 0}];
(* uuxddxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 0}];
(* ddxssxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{2}], -F[4,{2}]}, SelectInterference -> {gQCD -> 0}];
(* ccxddxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 0}];
(* uuuxuxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{1}], -F[3,{1}]}, SelectInterference -> {gQCD -> 0}];
(* uuxccxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{2}], -F[3,{2}]}, SelectInterference -> {gQCD -> 0}];
(* ddxbbxttx *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 0}];
(* uuxbbxttx *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 0}];
(* bbbxbxttx *) AddReal[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[4,{3}], -F[4,{3}]}, SelectInterference -> {gQCD -> 0}];



ChannelMap = {
  "ccxttxddx" -> "uuxttxddx"
};












