
(* description = "pp -> HV+jets|pp -> HZ/A(->ll)+jets|pp -> Hlljj|Higgs plus off-shell Z/A boson and two jets production with leptonic decays (l+l- and nn)" *)

OpenLoopsModel = "SM_yuksel";
SelectInterference = {eQED -> 6};
CreateTopologiesOptions = {ExcludeTopologies -> {Snails, WFCorrectionCTs, TadpoleCTs, Loops[7]}};
SetParameters = JoinOptions[{ME -> 0, YE -> 0, YukB -> 1, YukT -> 1}];

(* eexdddxdxh   *) AddProcess[FeynArtsProcess -> { F[4,{1}],  F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], F[4,{1}],  F[4,{1}]}];
(* eexuuxddxh   *) AddProcess[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], F[3,{1}], -F[3,{1}]}];
(* eexddxssxh   *) AddProcess[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], F[4,{2}], -F[4,{2}]}];
(* eexddxhgg    *) AddProcess[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5]    ,  V[5]    }];
(* eexuuuxuxh   *) AddProcess[FeynArtsProcess -> { F[3,{1}],  F[3,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], F[3,{1}],  F[3,{1}]}];
(* eexuuxccxh   *) AddProcess[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], F[3,{2}], -F[3,{2}]}];
(* eexuuxhgg    *) AddProcess[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5]    ,  V[5]    }];
(* nenexdddxdxh *) AddProcess[FeynArtsProcess -> { F[4,{1}],  F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], F[4,{1}],  F[4,{1}]}];
(* nenexuuxddxh *) AddProcess[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], F[3,{1}], -F[3,{1}]}];
(* nenexddxssxh *) AddProcess[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], F[4,{2}], -F[4,{2}]}];
(* nenexddxhgg  *) AddProcess[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5]    ,  V[5]    }];
(* nenexuuuxuxh *) AddProcess[FeynArtsProcess -> { F[3,{1}],  F[3,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], F[3,{1}],  F[3,{1}]}];
(* nenexuuxccxh *) AddProcess[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], F[3,{2}], -F[3,{2}]}];
(* nenexuuxhgg  *) AddProcess[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5]    ,  V[5]    }];

(* eexddxbbxh   *) AddProcess[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], F[4,{3}], -F[4,{3}]}];
(* eexuuxbbxh   *) AddProcess[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], F[4,{3}], -F[4,{3}]}];
(* eexbbbxbxh   *) AddProcess[FeynArtsProcess -> { F[4,{3}], -F[4,{3}]} -> {S[1], F[2,{1}], -F[2,{1}], F[4,{3}], -F[4,{3}]}];
(* eexbbxhgg    *) AddProcess[FeynArtsProcess -> { F[4,{3}], -F[4,{3}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5]    ,  V[5]    }];
(* nenexddxbbxh *) AddProcess[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], F[4,{3}], -F[4,{3}]}];
(* nenexuuxbbxh *) AddProcess[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], F[4,{3}], -F[4,{3}]}];
(* nenexbbbxbxh *) AddProcess[FeynArtsProcess -> { F[4,{3}], -F[4,{3}]} -> {S[1], F[1,{1}], -F[1,{1}], F[4,{3}], -F[4,{3}]}];
(* nenexbbxhgg  *) AddProcess[FeynArtsProcess -> { F[4,{3}], -F[4,{3}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5]    ,  V[5]    }];

(* eexdddxdxhg   *) AddReal[FeynArtsProcess -> { F[4,{1}],  F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], F[4,{1}],  F[4,{1}]}];
(* eexuuxddxhg   *) AddReal[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], F[3,{1}], -F[3,{1}]}];
(* eexddxssxhg   *) AddReal[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], F[4,{2}], -F[4,{2}]}];
(* eexddxhggg    *) AddReal[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], V[5]    ,  V[5]    }];
(* eexuuuxuxhg   *) AddReal[FeynArtsProcess -> { F[3,{1}],  F[3,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], F[3,{1}],  F[3,{1}]}];
(* eexuuxccxhg   *) AddReal[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], F[3,{2}], -F[3,{2}]}];
(* eexuuxhggg    *) AddReal[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], V[5]    ,  V[5]    }];
(* nenexdddxdxhg *) AddReal[FeynArtsProcess -> { F[4,{1}],  F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], F[4,{1}],  F[4,{1}]}];
(* nenexuuxddxhg *) AddReal[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], F[3,{1}], -F[3,{1}]}];
(* nenexddxssxhg *) AddReal[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], F[4,{2}], -F[4,{2}]}];
(* nenexddxhggg  *) AddReal[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], V[5]    ,  V[5]    }];
(* nenexuuuxuxhg *) AddReal[FeynArtsProcess -> { F[3,{1}],  F[3,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], F[3,{1}],  F[3,{1}]}];
(* nenexuuxccxhg *) AddReal[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], F[3,{2}], -F[3,{2}]}];
(* nenexuuxhggg  *) AddReal[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], V[5]    ,  V[5]    }];

(* eexddxbbxhg   *) AddReal[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], F[4,{3}], -F[4,{3}]}];
(* eexuuxbbxhg   *) AddReal[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], F[4,{3}], -F[4,{3}]}];
(* eexbbbxbxhg   *) AddReal[FeynArtsProcess -> { F[4,{3}], -F[4,{3}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], F[4,{3}], -F[4,{3}]}];
(* eexbbxhggg    *) AddReal[FeynArtsProcess -> { F[4,{3}], -F[4,{3}]} -> {S[1], F[2,{1}], -F[2,{1}], V[5], V[5]    ,  V[5]    }];
(* nenexddxbbxhg *) AddReal[FeynArtsProcess -> { F[4,{1}], -F[4,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], F[4,{3}], -F[4,{3}]}];
(* nenexuuxbbxhg *) AddReal[FeynArtsProcess -> { F[3,{1}], -F[3,{1}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], F[4,{3}], -F[4,{3}]}];
(* nenexbbbxbxhg *) AddReal[FeynArtsProcess -> { F[4,{3}], -F[4,{3}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], F[4,{3}], -F[4,{3}]}];
(* nenexbbxhggg  *) AddReal[FeynArtsProcess -> { F[4,{3}], -F[4,{3}]} -> {S[1], F[1,{1}], -F[1,{1}], V[5], V[5]    ,  V[5]    }];

ChannelMap = {
  "eexccxddxh"   -> "eexuuxddxh",
  "eexddxbbxh"   -> "eexddxssxh MB=0 YB=0",
  "eexuuxbbxh"   -> "eexuuxddxh MB=0 YB=0",
  "eexbbbxbxh"   -> "eexdddxdxh MB=0 YB=0",
  "eexbbxhgg"    -> "eexddxhgg MB=0 YB=0",
  "nenexccxddxh" -> "nenexuuxddxh",
  "nenexddxbbxh" -> "nenexddxssxh MB=0 YB=0",
  "nenexuuxbbxh" -> "nenexuuxddxh MB=0 YB=0",
  "nenexbbbxbxh" -> "nenexdddxdxh MB=0 YB=0",
  "nenexbbxhgg"  -> "nenexddxhgg MB=0 YB=0",
  (* reals *)
  "eexccxddxhg"   -> "eexuuxddxhg",
  "eexddxbbxhg"   -> "eexddxssxhg MB=0 YB=0",
  "eexuuxbbxhg"   -> "eexuuxddxhg MB=0 YB=0",
  "eexbbbxbxhg"   -> "eexdddxdxhg MB=0 YB=0",
  "eexbbxhggg"    -> "eexddxhggg MB=0 YB=0",
  "nenexccxddxhg" -> "nenexuuxddxhg",
  "nenexddxbbxhg" -> "nenexddxssxhg MB=0 YB=0",
  "nenexuuxbbxhg" -> "nenexuuxddxhg MB=0 YB=0",
  "nenexbbbxbxhg" -> "nenexdddxdxhg MB=0 YB=0",
  "nenexbbxhggg"  -> "nenexddxhggg MB=0 YB=0"
};
