SelectInterference = {qQCD -> 0};

UnitaryGauge = False;
noQCD = True;

(* ew (QED=0) or pure qed (QED=2) corrections, no tau and nu_tau, no quarks in loop *)
(* ew includes photon self-energies *)
(* qed excludes photon self-energies *)
(* other fermion loop diagrams are included, e.g. light-by-light boxes *)

lepew01 = {
  QED -> 0,
  SetParameters -> JoinOptions[{MM -> MM, ME -> ME, nf -> 0, nfl -> 1}]
};

lepew02 = {
  QED -> 0,
  SetParameters -> JoinOptions[{MM -> MM, ME -> ME, nf -> 0, nfl -> 2}]
};

lepqed01 = {
  QED -> 2,
  SetParameters -> JoinOptions[{MM -> MM, ME -> ME, nf -> 0, nfl -> 1}]
};

lepqed02 = {
  QED -> 2,
  SetParameters -> JoinOptions[{MM -> MM, ME -> ME, nf -> 0, nfl -> 2}]
};

(* eexeex *)    AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}]}, Sequence @@ lepew01];
(* eexeexa *)   AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}], V[1]}, Sequence @@ lepew01];
(* eexeexaa *)  AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}], V[1], V[1]}, Sequence @@ lepew01];

(* eexeex *)    AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}]}, Sequence @@ lepew02];
(* eexeexa *)   AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}], V[1]}, Sequence @@ lepew02];
(* eexeexaa *)  AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}], V[1], V[1]}, Sequence @@ lepew02];

(* eexeex *)    AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}]}, Sequence @@ lepqed01];
(* eexeexa *)   AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}], V[1]}, Sequence @@ lepqed01];
(* eexeexaa *)  AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}], V[1], V[1]}, Sequence @@ lepqed01];

(* eexeex *)    AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}]}, Sequence @@ lepqed02];
(* eexeexa *)   AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}], V[1]}, Sequence @@ lepqed02];
(* eexeexaa *)  AddProcess[FeynArtsProcess -> {F[2,{1}], -F[2,{1}]} -> {F[2,{1}], -F[2,{1}], V[1], V[1]}, Sequence @@ lepqed02];
