
(* description = "pp -> tttt+jets|pp -> tttt+jets|pp -> tttt|Four-Top production at NLO EW." *)


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

(* tttxtxgg *)  AddProcess[FeynArtsProcess -> {F[3,{3}], -F[3,{3}]} -> {V[5],V[5],F[3,{3}],-F[3,{3}]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 2 - 2 * #2 || Exponent[#1, eQED] == 0 + 2 * #2 &)];
(* uuxtttxtx *) AddProcess[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]}  -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 2 - 2 * #2 || Exponent[#1, eQED] == 0 + 2 * #2 &)];
(* tttxtxddx *) AddProcess[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 2 - 2 * #2 || Exponent[#1, eQED] == 0 + 2 * #2 &)];
(* tttxtxbbx *) AddProcess[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, UnitaryGauge -> False, SelectInterference -> {gQCD -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 2 - 2 * #2 || Exponent[#1, eQED] == 0 + 2 * #2 &)];

(* tttxtxgg *)  AddReal[FeynArtsProcess -> {F[3,{3}], -F[3,{3}]} -> {V[5],V[5],F[3,{3}],-F[3,{3}], V[1]}, SelectInterference -> {gQCD -> 8}];
(* uuxtttxtxa *) AddReal[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]}  -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}], V[1]}, SelectInterference -> {gQCD -> 8}];
(* ddxtttxtxa *) AddReal[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]}  -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}], V[1]}, SelectInterference -> {gQCD -> 8}];
(* bbxtttxtxa *) AddReal[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]}  -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}], V[1]}, SelectInterference -> {gQCD -> 8}];

(* uuxtttxtxg *) AddReal[FeynArtsProcess -> {F[3,{3}], -F[3,{3}]} -> {F[3,{1}],-F[3,{1}],F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 0 || Exponent[#1, eQED] == 2 &)];
(* ddxtttxtxg *) AddReal[FeynArtsProcess -> {F[3,{3}], -F[3,{3}]} -> {F[4,{1}],-F[4,{1}],F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 0 || Exponent[#1, eQED] == 2 &)];
(* bbxtttxtxg *) AddReal[FeynArtsProcess -> {F[3,{3}], -F[3,{3}]} -> {F[4,{3}],-F[4,{3}],F[3,{3}],-F[3,{3}],V[5]}, SelectInterference -> {gQCD -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 0 || Exponent[#1, eQED] == 2 &)];


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

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


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

(* tttxtxgg *) AddTree[FeynArtsProcess -> {V[5], V[5]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {gQCD -> 6}, SelectCoupling -> (Exponent[#1, gQCD] == 4 - 2 * #2 || Exponent[#1, gQCD] == 2 + 2 * #2 &),  UnitaryGauge -> False];
(* uuxtttxtx *) AddTree[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {gQCD -> 6}, SelectCoupling -> (Exponent[#1, gQCD] == 4 - 2 * #2 || Exponent[#1, gQCD] == 2 + 2 * #2 &),  UnitaryGauge -> False];
(* tttxtxddx *) AddTree[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {gQCD -> 6}, SelectCoupling -> (Exponent[#1, gQCD] == 4 - 2 * #2 || Exponent[#1, gQCD] == 2 + 2 * #2 &),  UnitaryGauge -> False];
(* bbxtttxtx *) AddTree[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {gQCD -> 6}, SelectCoupling -> (Exponent[#1, gQCD] == 4 - 2 * #2 || Exponent[#1, gQCD] == 2 + 2 * #2 &),  UnitaryGauge -> False];


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

(* tttxtxgg *) AddTree[FeynArtsProcess -> {V[5], V[5]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {eQED -> 4}, SelectCoupling -> (Exponent[#1, gQCD] == 2 - 2 * #2 || Exponent[#1, gQCD] == 0 + 2 * #2 &),  UnitaryGauge -> False];
(* uuxtttxtx *) AddTree[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {eQED -> 4}, SelectCoupling -> (Exponent[#1, gQCD] == 2 - 2 * #2 || Exponent[#1, gQCD] == 0 + 2 * #2 &),  UnitaryGauge -> False];
(* tttxtxddx *) AddTree[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {eQED -> 4}, SelectCoupling -> (Exponent[#1, gQCD] == 2 - 2 * #2 || Exponent[#1, gQCD] == 0 + 2 * #2 &),  UnitaryGauge -> False];
(* bbxtttxtx *) AddTree[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {eQED -> 4}, SelectCoupling -> (Exponent[#1, gQCD] == 2 - 2 * #2 || Exponent[#1, gQCD] == 0 + 2 * #2 &),  UnitaryGauge -> False];


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

(* uuxtttxtx *) AddTree[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {gQCD -> 2}, SelectCoupling -> (Exponent[#1, gQCD] == 2 - 2 * #2 || Exponent[#1, gQCD] == 0 + 2 * #2 &),  UnitaryGauge -> False];
(* tttxtxddx *) AddTree[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {gQCD -> 2}, SelectCoupling -> (Exponent[#1, gQCD] == 2 - 2 * #2 || Exponent[#1, gQCD] == 0 + 2 * #2 &),  UnitaryGauge -> False];
(* bbxtttxtx *) AddTree[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {gQCD -> 2}, SelectCoupling -> (Exponent[#1, gQCD] == 2 - 2 * #2 || Exponent[#1, gQCD] == 0 + 2 * #2 &),  UnitaryGauge -> False];


(* O(as^4) *)

(* uuxtttxtx *) AddTree[FeynArtsProcess -> {F[3,{1}], -F[3,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {eQED -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 4 + 2 * #2 &),  UnitaryGauge -> False];
(* tttxtxddx *) AddTree[FeynArtsProcess -> {F[4,{1}], -F[4,{1}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {eQED -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 4 + 2 * #2 &),  UnitaryGauge -> False];
(* bbxtttxtx *) AddTree[FeynArtsProcess -> {F[4,{3}], -F[4,{3}]} -> {F[3,{3}],-F[3,{3}],F[3,{3}],-F[3,{3}]}, SelectInterference -> {eQED -> 8}, SelectCoupling -> (Exponent[#1, eQED] == 4 + 2 * #2 &),  UnitaryGauge -> False];







