
(* description = "pp -> VV+jets|pp -> llll+jets|gg -> llll|Approximation 'onlyh'; Loop-induced production of four leptons (all combinations of leptons and neutrinos) in gluon fusion: only diagrams which contain a Higgs Yukawa coupling" *)

SelectCoupling = (Exponent[#1, gQCD] == 2 && Exponent[#1, Yuk] == 1 &);
SelectInterference = {eQED -> 8, Yuk -> 2};
CreateTopologiesOptions = {ExcludeTopologies -> {Snails, WFCorrectionCTs, TadpoleCTs, Loops[5|6]}};
OpenLoopsModel = "SM_yuksel";
Approximation = "onlyh";

(* Z Z, same and opposite flavour leptons*)
(* eeexexgg     *) SubProcess[1] = {FeynArtsProcess -> {V[5], V[5]} -> {F[2,{1}],  F[2,{1}], -F[2,{1}], -F[2,{1}]}, SetParameters -> JoinOptions[{ME -> 0}]};
(*
(* eexmmxgg     *) SubProcess[2] = {FeynArtsProcess -> {V[5], V[5]} -> {F[2,{1}],  F[2,{2}], -F[2,{1}], -F[2,{2}]}, SetParameters -> JoinOptions[{ME -> 0, MM -> 0}]};

(* Z Z, same and opposite flavour neutrinos *)
(* nenenexnexgg *) SubProcess[4] = {FeynArtsProcess -> {V[5], V[5]} -> {F[1,{1}],  F[1,{1}], -F[1,{1}], -F[1,{1}]}, SetParameters -> JoinOptions[{ME -> 0}]};
(* nenexnmnmxgg *) SubProcess[5] = {FeynArtsProcess -> {V[5], V[5]} -> {F[1,{1}],  F[1,{2}], -F[1,{1}], -F[1,{2}]}, SetParameters -> JoinOptions[{ME -> 0, MM -> 0}]};

(* Z Z, opposite flavour leptons + neutrinos *)
(* nmnmxeexgg   *) SubProcess[3] = {FeynArtsProcess -> {V[5], V[5]} -> {F[2,{1}],  F[1,{2}], -F[2,{1}], -F[1,{2}]}, SetParameters -> JoinOptions[{ME -> 0, MM -> 0}]};

(* W+ W- / Z Z, same flavour *)
(* nenexeexgg   *) SubProcess[6] = {FeynArtsProcess -> {V[5], V[5]} -> {F[2,{1}],  F[1,{1}], -F[2,{1}], -F[1,{1}]}, SetParameters -> JoinOptions[{ME -> 0, MM -> 0}]};

(* W+ W-, opposite flavour *)
(* nexnmemxgg   *) SubProcess[7] = {FeynArtsProcess -> {V[5], V[5]} -> {F[2,{2}],  F[1,{1}], -F[2,{1}], -F[1,{2}]}, SetParameters -> JoinOptions[{ME -> 0, MM -> 0}]};

(* old Sherpa: nenmxexm instead of nexnmemx *)
(* nenmxexmgg   *) SubProcess[8] = {FeynArtsProcess -> {V[5], V[5]} -> {F[2,{1}],  F[1,{2}], -F[2,{2}], -F[1,{1}]}, SetParameters -> JoinOptions[{ME -> 0, MM -> 0}]};
*)
