a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
ThObsFactory.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2012 HEPfit Collaboration
3  *
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #include "ThObsFactory.h"
9 #include "ThObservable.h"
10 #include "ParamObs.h"
11 #include "EWObservables.h"
12 #include "NP_couplings.h"
14 #include "HiggsThObservables.h"
15 #include "DiBosonThObservables.h"
16 #include "FlavourObservables.h"
17 #include "NPSMEFT6dtopquark.h"
18 #include "MtMSbar.h"
19 #include "alpha_s.h"
21 #include "SUSYObservables.h"
23 #include "THDMObservables.h"
24 #include "GeneralTHDMObservables.h"
25 #include "THDMWObservables.h"
26 #include <boost/lexical_cast.hpp>
27 #include <boost/bind.hpp>
28 
30 {
31  //----- Energies of different colliders -----
32  const double sqrt_s_LEP2_WWcos1 = 0.18266; // the center-of-mass energy in TeV
33  const double sqrt_s_LEP2_WWcos2 = 0.18909; // the center-of-mass energy in TeV
34  const double sqrt_s_LEP2_WWcos3 = 0.19838; // the center-of-mass energy in TeV
35  const double sqrt_s_LEP2_WWcos4 = 0.20592; // the center-of-mass energy in TeV
36  //
37  const double cos1_LEP2_WW = -0.95;
38  const double cos2_LEP2_WW = -0.76;
39  const double cos3_LEP2_WW = -0.57;
40  const double cos4_LEP2_WW = -0.38;
41  const double cos5_LEP2_WW = -0.19;
42  const double cos6_LEP2_WW = 0.;
43  const double cos7_LEP2_WW = 0.19;
44  const double cos8_LEP2_WW = 0.38;
45  const double cos9_LEP2_WW = 0.57;
46  const double cos10_LEP2_WW = 0.76;
47  const double cos11_LEP2_WW = 0.95;
48  //
49  const double cos1_ee_WW = -1.0;
50  const double cos2_ee_WW = -0.8;
51  const double cos3_ee_WW = -0.6;
52  const double cos4_ee_WW = -0.4;
53  const double cos5_ee_WW = -0.2;
54  const double cos6_ee_WW = 0.;
55  const double cos7_ee_WW = 0.2;
56  const double cos8_ee_WW = 0.4;
57  const double cos9_ee_WW = 0.6;
58  const double cos10_ee_WW = 0.8;
59  const double cos11_ee_WW = 1.0;
60  //
61  const double sqrt_s_LEP2_161 = 0.1613; // the center-of-mass energy in TeV
62  const double sqrt_s_LEP2_172 = 0.1721; // the center-of-mass energy in TeV
63  const double sqrt_s_LEP2_183 = 0.1827; // the center-of-mass energy in TeV
64  const double sqrt_s_LEP2_189 = 0.1886; // the center-of-mass energy in TeV
65  const double sqrt_s_LEP2_192 = 0.1916; // the center-of-mass energy in TeV
66  const double sqrt_s_LEP2_196 = 0.1955; // the center-of-mass energy in TeV
67  const double sqrt_s_LEP2_200 = 0.1995; // the center-of-mass energy in TeV
68  const double sqrt_s_LEP2_202 = 0.2016; // the center-of-mass energy in TeV
69  const double sqrt_s_LEP2_205 = 0.2049; // the center-of-mass energy in TeV
70  const double sqrt_s_LEP2_207 = 0.2066; // the center-of-mass energy in TeV
71  //
72  const double sqrt_s_LHC7 = 7.0; // the center-of-mass energy in TeV
73  const double sqrt_s_LHC8 = 8.0; // the center-of-mass energy in TeV
74  const double sqrt_s_LHC13 = 13.0; // the center-of-mass energy in TeV
75  const double sqrt_s_LHC14 = 14.0; // the center-of-mass energy in TeV
76  const double sqrt_s_LHC27 = 27.0; // the center-of-mass energy in TeV
77  const double sqrt_s_FCC100 = 100.0; // the center-of-mass energy in TeV
78  const double sqrt_s_TeV = 1.96; // the center-of-mass energy in TeV
79  //
80  const double sqrt_s_leptcoll_125 = .125; // the center-of-mass energy in TeV
81  const double sqrt_s_leptcoll_161 = .161; // the center-of-mass energy in TeV
82  const double sqrt_s_leptcoll_240 = .240; // the center-of-mass energy in TeV
83  const double sqrt_s_leptcoll_250 = .250; // the center-of-mass energy in TeV
84  const double sqrt_s_leptcoll_350 = .350; // the center-of-mass energy in TeV
85  const double sqrt_s_leptcoll_365 = .365; // the center-of-mass energy in TeV
86  const double sqrt_s_leptcoll_380 = .380; // the center-of-mass energy in TeV
87  const double sqrt_s_leptcoll_500 = .500; // the center-of-mass energy in TeV
88  const double sqrt_s_leptcoll_1000 = 1.0; // the center-of-mass energy in TeV
89  const double sqrt_s_leptcoll_1400 = 1.4; // the center-of-mass energy in TeV
90  const double sqrt_s_leptcoll_1500 = 1.5; // the center-of-mass energy in TeV
91  const double sqrt_s_leptcoll_3000 = 3.0; // the center-of-mass energy in TeV
92  //
93  const double sqrt_s_LHeC_1_3 = 1.3; // the center-of-mass energy in TeV
94  const double sqrt_s_LHeC_1_8 = 1.8; // the center-of-mass energy in TeV
95  //
96  const double sqrt_s_FCCep_3_5 = 3.5; // the center-of-mass energy in TeV
97  const double sqrt_s_FCCep_5 = 5.0; // the center-of-mass energy in TeV
98  // Polarizations at lepton colliders
99  const double pol_0 = 0.0;
100  const double pol_20 = 20.0;
101  const double pol_30 = 30.0;
102  const double pol_80 = 80.0;
103  //
104  //----- StandardModel observables -----
105  obsThFactory["MtMSbar"] = boost::factory<MtMSbar*>();
106  obsThFactory["alpha_s_LO"] = boost::bind(boost::factory<alpha_s*>(), _1, LO);
107  obsThFactory["alpha_s_NLO"] = boost::bind(boost::factory<alpha_s*>(), _1, NLO);
108  obsThFactory["alpha_s_FULLNLO"] = boost::bind(boost::factory<alpha_s*>(), _1, FULLNLO);
109  obsThFactory["alpha_s_NNLO"] = boost::bind(boost::factory<alpha_s*>(), _1, NNLO);
110  obsThFactory["alpha_s_FULLNNLO"] = boost::bind(boost::factory<alpha_s*>(), _1, FULLNNLO);
111  //----- Electroweak precision observables -----
112  obsThFactory["alphaMz"] = boost::factory<AlphaEmMz*>();
113  obsThFactory["Mw"] = boost::factory<Mw*>();
114  obsThFactory["GammaW"] = boost::factory<GammaW*>();
115  obsThFactory["BrWlepton"] = boost::factory<BrWlepton*>();
116  obsThFactory["BrWelectron"] = boost::factory<BrWelectron*>();
117  obsThFactory["BrWmuon"] = boost::factory<BrWmuon*>();
118  obsThFactory["BrWtau"] = boost::factory<BrWtau*>();
119  obsThFactory["BrWhadrons"] = boost::factory<BrWhadrons*>();
120  obsThFactory["RWc"] = boost::factory<RWc*>();
121  obsThFactory["GammaZ"] = boost::factory<GammaZ*>();
122  obsThFactory["GammaZhad"] = boost::factory<GammaZhad*>();
123  obsThFactory["sigmaHadron"] = boost::factory<sigmaHadron*>();
124  obsThFactory["sin2thetaEff"] = boost::factory<sin2thetaEff*>();
125  obsThFactory["sin2thetaEffelectron"] = boost::factory<sin2thetaEffel*>();
126  obsThFactory["sin2thetaEffmuon"] = boost::factory<sin2thetaEffmu*>();
127  obsThFactory["PtauPol"] = boost::factory<PtauPol*>();
128  obsThFactory["Alepton"] = boost::factory<Alepton*>();
129  obsThFactory["Aelectron"] = boost::factory<Aelectron*>();
130  obsThFactory["Amuon"] = boost::factory<Amuon*>();
131  obsThFactory["Atau"] = boost::factory<Atau*>();
132  obsThFactory["Astrange"] = boost::factory<Astrange*>();
133  obsThFactory["Acharm"] = boost::factory<Acharm*>();
134  obsThFactory["Abottom"] = boost::factory<Abottom*>();
135  obsThFactory["AFBlepton"] = boost::factory<AFBlepton*>();
136  obsThFactory["AFBelectron"] = boost::factory<AFBelectron*>();
137  obsThFactory["AFBmuon"] = boost::factory<AFBmuon*>();
138  obsThFactory["AFBtau"] = boost::factory<AFBtau*>();
139  obsThFactory["AFBstrange"] = boost::factory<AFBstrange*>();
140  obsThFactory["AFBcharm"] = boost::factory<AFBcharm*>();
141  obsThFactory["AFBbottom"] = boost::factory<AFBbottom*>();
142  obsThFactory["Nneutrinos"] = boost::factory<Nneutrinos*>();
143  obsThFactory["Rlepton"] = boost::factory<Rlepton*>();
144  obsThFactory["Relectron"] = boost::factory<Relectron*>();
145  obsThFactory["Rmuon"] = boost::factory<Rmuon*>();
146  obsThFactory["Rtau"] = boost::factory<Rtau*>();
147  obsThFactory["Rneutrinos"] = boost::factory<Rneutrinos*>();
148  obsThFactory["Rinv"] = boost::factory<Rinv*>();
149  obsThFactory["Ruc"] = boost::factory<Ruc*>();
150  obsThFactory["Rcharm"] = boost::factory<Rcharm*>();
151  obsThFactory["Rbottom"] = boost::factory<Rbottom*>();
152  //----- Triple gauge coupling observables -----
153  obsThFactory["deltag1Z"] = boost::factory<deltag1Z*>();
154  obsThFactory["deltaKgamma"] = boost::factory<deltaKgamma*>();
155  obsThFactory["lambdaZ"] = boost::factory<lambdaZ*>();
156  //----- ee -> WW observables: LEP2 total cross section -----
157  obsThFactory["eeWW_LEP2_161"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_161);
158  obsThFactory["eeWW_LEP2_172"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_172);
159  obsThFactory["eeWW_LEP2_183"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_183);
160  obsThFactory["eeWW_LEP2_189"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_189);
161  obsThFactory["eeWW_LEP2_192"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_192);
162  obsThFactory["eeWW_LEP2_196"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_196);
163  obsThFactory["eeWW_LEP2_200"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_200);
164  obsThFactory["eeWW_LEP2_202"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_202);
165  obsThFactory["eeWW_LEP2_205"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_205);
166  obsThFactory["eeWW_LEP2_207"] = boost::bind(boost::factory<xseeWW*>(), _1, sqrt_s_LEP2_207);
167  //----- ee -> WW observables: LEP2 differential cross section -----
168  obsThFactory["deeWWdcos_LEP2_183_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos1_LEP2_WW, cos2_LEP2_WW);
169  obsThFactory["deeWWdcos_LEP2_183_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos2_LEP2_WW, cos3_LEP2_WW);
170  obsThFactory["deeWWdcos_LEP2_183_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos3_LEP2_WW, cos4_LEP2_WW);
171  obsThFactory["deeWWdcos_LEP2_183_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos4_LEP2_WW, cos5_LEP2_WW);
172  obsThFactory["deeWWdcos_LEP2_183_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos5_LEP2_WW, cos6_LEP2_WW);
173  obsThFactory["deeWWdcos_LEP2_183_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos6_LEP2_WW, cos7_LEP2_WW);
174  obsThFactory["deeWWdcos_LEP2_183_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos7_LEP2_WW, cos8_LEP2_WW);
175  obsThFactory["deeWWdcos_LEP2_183_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos8_LEP2_WW, cos9_LEP2_WW);
176  obsThFactory["deeWWdcos_LEP2_183_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos9_LEP2_WW, cos10_LEP2_WW);
177  obsThFactory["deeWWdcos_LEP2_183_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos1, cos10_LEP2_WW, cos11_LEP2_WW);
178  //
179  obsThFactory["deeWWdcos_LEP2_189_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos1_LEP2_WW, cos2_LEP2_WW);
180  obsThFactory["deeWWdcos_LEP2_189_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos2_LEP2_WW, cos3_LEP2_WW);
181  obsThFactory["deeWWdcos_LEP2_189_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos3_LEP2_WW, cos4_LEP2_WW);
182  obsThFactory["deeWWdcos_LEP2_189_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos4_LEP2_WW, cos5_LEP2_WW);
183  obsThFactory["deeWWdcos_LEP2_189_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos5_LEP2_WW, cos6_LEP2_WW);
184  obsThFactory["deeWWdcos_LEP2_189_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos6_LEP2_WW, cos7_LEP2_WW);
185  obsThFactory["deeWWdcos_LEP2_189_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos7_LEP2_WW, cos8_LEP2_WW);
186  obsThFactory["deeWWdcos_LEP2_189_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos8_LEP2_WW, cos9_LEP2_WW);
187  obsThFactory["deeWWdcos_LEP2_189_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos9_LEP2_WW, cos10_LEP2_WW);
188  obsThFactory["deeWWdcos_LEP2_189_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos2, cos10_LEP2_WW, cos11_LEP2_WW);
189  //
190  obsThFactory["deeWWdcos_LEP2_198_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos1_LEP2_WW, cos2_LEP2_WW);
191  obsThFactory["deeWWdcos_LEP2_198_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos2_LEP2_WW, cos3_LEP2_WW);
192  obsThFactory["deeWWdcos_LEP2_198_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos3_LEP2_WW, cos4_LEP2_WW);
193  obsThFactory["deeWWdcos_LEP2_198_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos4_LEP2_WW, cos5_LEP2_WW);
194  obsThFactory["deeWWdcos_LEP2_198_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos5_LEP2_WW, cos6_LEP2_WW);
195  obsThFactory["deeWWdcos_LEP2_198_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos6_LEP2_WW, cos7_LEP2_WW);
196  obsThFactory["deeWWdcos_LEP2_198_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos7_LEP2_WW, cos8_LEP2_WW);
197  obsThFactory["deeWWdcos_LEP2_198_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos8_LEP2_WW, cos9_LEP2_WW);
198  obsThFactory["deeWWdcos_LEP2_198_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos9_LEP2_WW, cos10_LEP2_WW);
199  obsThFactory["deeWWdcos_LEP2_198_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos3, cos10_LEP2_WW, cos11_LEP2_WW);
200  //
201  obsThFactory["deeWWdcos_LEP2_206_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos1_LEP2_WW, cos2_LEP2_WW);
202  obsThFactory["deeWWdcos_LEP2_206_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos2_LEP2_WW, cos3_LEP2_WW);
203  obsThFactory["deeWWdcos_LEP2_206_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos3_LEP2_WW, cos4_LEP2_WW);
204  obsThFactory["deeWWdcos_LEP2_206_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos4_LEP2_WW, cos5_LEP2_WW);
205  obsThFactory["deeWWdcos_LEP2_206_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos5_LEP2_WW, cos6_LEP2_WW);
206  obsThFactory["deeWWdcos_LEP2_206_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos6_LEP2_WW, cos7_LEP2_WW);
207  obsThFactory["deeWWdcos_LEP2_206_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos7_LEP2_WW, cos8_LEP2_WW);
208  obsThFactory["deeWWdcos_LEP2_206_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos8_LEP2_WW, cos9_LEP2_WW);
209  obsThFactory["deeWWdcos_LEP2_206_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos9_LEP2_WW, cos10_LEP2_WW);
210  obsThFactory["deeWWdcos_LEP2_206_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_LEP2_WWcos4, cos10_LEP2_WW, cos11_LEP2_WW);
211  //----- ee -> WW observables: Future colliders differential cross section -----
212  obsThFactory["deeWWdcos_161_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos1_ee_WW, cos2_ee_WW);
213  obsThFactory["deeWWdcos_161_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos2_ee_WW, cos3_ee_WW);
214  obsThFactory["deeWWdcos_161_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos3_ee_WW, cos4_ee_WW);
215  obsThFactory["deeWWdcos_161_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos4_ee_WW, cos5_ee_WW);
216  obsThFactory["deeWWdcos_161_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos5_ee_WW, cos6_ee_WW);
217  obsThFactory["deeWWdcos_161_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos6_ee_WW, cos7_ee_WW);
218  obsThFactory["deeWWdcos_161_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos7_ee_WW, cos8_ee_WW);
219  obsThFactory["deeWWdcos_161_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos8_ee_WW, cos9_ee_WW);
220  obsThFactory["deeWWdcos_161_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos9_ee_WW, cos10_ee_WW);
221  obsThFactory["deeWWdcos_161_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_161, cos10_ee_WW, cos11_ee_WW);
222  //
223  obsThFactory["deeWWdcos_240_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos1_ee_WW, cos2_ee_WW);
224  obsThFactory["deeWWdcos_240_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos2_ee_WW, cos3_ee_WW);
225  obsThFactory["deeWWdcos_240_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos3_ee_WW, cos4_ee_WW);
226  obsThFactory["deeWWdcos_240_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos4_ee_WW, cos5_ee_WW);
227  obsThFactory["deeWWdcos_240_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos5_ee_WW, cos6_ee_WW);
228  obsThFactory["deeWWdcos_240_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos6_ee_WW, cos7_ee_WW);
229  obsThFactory["deeWWdcos_240_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos7_ee_WW, cos8_ee_WW);
230  obsThFactory["deeWWdcos_240_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos8_ee_WW, cos9_ee_WW);
231  obsThFactory["deeWWdcos_240_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos9_ee_WW, cos10_ee_WW);
232  obsThFactory["deeWWdcos_240_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_240, cos10_ee_WW, cos11_ee_WW);
233  //
234  obsThFactory["deeWWdcos_250_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos1_ee_WW, cos2_ee_WW);
235  obsThFactory["deeWWdcos_250_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos2_ee_WW, cos3_ee_WW);
236  obsThFactory["deeWWdcos_250_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos3_ee_WW, cos4_ee_WW);
237  obsThFactory["deeWWdcos_250_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos4_ee_WW, cos5_ee_WW);
238  obsThFactory["deeWWdcos_250_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos5_ee_WW, cos6_ee_WW);
239  obsThFactory["deeWWdcos_250_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos6_ee_WW, cos7_ee_WW);
240  obsThFactory["deeWWdcos_250_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos7_ee_WW, cos8_ee_WW);
241  obsThFactory["deeWWdcos_250_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos8_ee_WW, cos9_ee_WW);
242  obsThFactory["deeWWdcos_250_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos9_ee_WW, cos10_ee_WW);
243  obsThFactory["deeWWdcos_250_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_250, cos10_ee_WW, cos11_ee_WW);
244  //
245  obsThFactory["deeWWdcos_350_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos1_ee_WW, cos2_ee_WW);
246  obsThFactory["deeWWdcos_350_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos2_ee_WW, cos3_ee_WW);
247  obsThFactory["deeWWdcos_350_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos3_ee_WW, cos4_ee_WW);
248  obsThFactory["deeWWdcos_350_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos4_ee_WW, cos5_ee_WW);
249  obsThFactory["deeWWdcos_350_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos5_ee_WW, cos6_ee_WW);
250  obsThFactory["deeWWdcos_350_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos6_ee_WW, cos7_ee_WW);
251  obsThFactory["deeWWdcos_350_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos7_ee_WW, cos8_ee_WW);
252  obsThFactory["deeWWdcos_350_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos8_ee_WW, cos9_ee_WW);
253  obsThFactory["deeWWdcos_350_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos9_ee_WW, cos10_ee_WW);
254  obsThFactory["deeWWdcos_350_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_350, cos10_ee_WW, cos11_ee_WW);
255  //
256  obsThFactory["deeWWdcos_365_Bin1"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos1_ee_WW, cos2_ee_WW);
257  obsThFactory["deeWWdcos_365_Bin2"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos2_ee_WW, cos3_ee_WW);
258  obsThFactory["deeWWdcos_365_Bin3"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos3_ee_WW, cos4_ee_WW);
259  obsThFactory["deeWWdcos_365_Bin4"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos4_ee_WW, cos5_ee_WW);
260  obsThFactory["deeWWdcos_365_Bin5"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos5_ee_WW, cos6_ee_WW);
261  obsThFactory["deeWWdcos_365_Bin6"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos6_ee_WW, cos7_ee_WW);
262  obsThFactory["deeWWdcos_365_Bin7"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos7_ee_WW, cos8_ee_WW);
263  obsThFactory["deeWWdcos_365_Bin8"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos8_ee_WW, cos9_ee_WW);
264  obsThFactory["deeWWdcos_365_Bin9"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos9_ee_WW, cos10_ee_WW);
265  obsThFactory["deeWWdcos_365_Bin10"] = boost::bind(boost::factory<dxseeWWdcosBin*>(), _1, sqrt_s_leptcoll_365, cos10_ee_WW, cos11_ee_WW);
266  //----- ee -> WW observables: total rates (ratio with the SM) -----
267  obsThFactory["eeWW161"] = boost::bind(boost::factory<mueeWW*>(), _1, sqrt_s_leptcoll_161);
268  //
269  obsThFactory["eeWW240"] = boost::bind(boost::factory<mueeWW*>(), _1, sqrt_s_leptcoll_240);
270  obsThFactory["eeWW240_p80_m30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_240, pol_80, -pol_30);
271  obsThFactory["eeWW240_m80_p30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_240, -pol_80, pol_30);
272  //
273  obsThFactory["eeWW250"] = boost::bind(boost::factory<mueeWW*>(), _1, sqrt_s_leptcoll_250);
274  obsThFactory["eeWW250_p80_m30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
275  obsThFactory["eeWW250_m80_p30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
276  obsThFactory["eeWW250_p80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
277  obsThFactory["eeWW250_m80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
278  //
279  obsThFactory["eeWW350"] = boost::bind(boost::factory<mueeWW*>(), _1, sqrt_s_leptcoll_350);
280  obsThFactory["eeWW350_p80_m30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
281  obsThFactory["eeWW350_m80_p30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
282  obsThFactory["eeWW350_p80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
283  obsThFactory["eeWW350_m80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
284  //
285  obsThFactory["eeWW365"] = boost::bind(boost::factory<mueeWW*>(), _1, sqrt_s_leptcoll_365);
286  obsThFactory["eeWW365_p80_m30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_365, pol_80, -pol_30);
287  obsThFactory["eeWW365_m80_p30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_30);
288  //
289  obsThFactory["eeWW380_p80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
290  obsThFactory["eeWW380_m80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
291  //
292  obsThFactory["eeWW500"] = boost::bind(boost::factory<mueeWW*>(), _1, sqrt_s_leptcoll_500);
293  obsThFactory["eeWW500_p80_m30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
294  obsThFactory["eeWW500_m80_p30"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
295  obsThFactory["eeWW500_p80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
296  obsThFactory["eeWW500_m80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
297  //
298  obsThFactory["eeWW1000_p80_m20"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
299  obsThFactory["eeWW1000_m80_p20"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
300  //
301  obsThFactory["eeWW1500_p80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
302  obsThFactory["eeWW1500_m80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
303  //
304  obsThFactory["eeWW3000_p80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
305  obsThFactory["eeWW3000_m80_0"] = boost::bind(boost::factory<mueeWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
306  //----- High Energy diboson observables at hadron colliders
307  obsThFactory["ppZHprobe14"] = boost::bind(boost::factory<ppZHprobe*>(), _1, sqrt_s_LHC14);
308  obsThFactory["ppZHprobe27"] = boost::bind(boost::factory<ppZHprobe*>(), _1, sqrt_s_LHC27);
309  obsThFactory["ppZHprobe100"] = boost::bind(boost::factory<ppZHprobe*>(), _1, sqrt_s_FCC100);
310  //
311  obsThFactory["mupTVppWZ_14_Bin1"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC14, 100., 150.);
312  obsThFactory["mupTVppWZ_14_Bin2"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC14, 150., 220.);
313  obsThFactory["mupTVppWZ_14_Bin3"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC14, 220., 300.);
314  obsThFactory["mupTVppWZ_14_Bin4"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC14, 300., 500.);
315  obsThFactory["mupTVppWZ_14_Bin5"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC14, 500., 750.);
316  obsThFactory["mupTVppWZ_14_Bin6"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC14, 750., 1200.);
317  //
318  obsThFactory["mupTVppWZ_27_Bin1"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC27, 150., 220.);
319  obsThFactory["mupTVppWZ_27_Bin2"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC27, 220., 300.);
320  obsThFactory["mupTVppWZ_27_Bin3"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC27, 300., 500.);
321  obsThFactory["mupTVppWZ_27_Bin4"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC27, 500., 750.);
322  obsThFactory["mupTVppWZ_27_Bin5"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC27, 750., 1200.);
323  obsThFactory["mupTVppWZ_27_Bin6"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_LHC27, 1200., 1800.);
324  //
325  obsThFactory["mupTVppWZ_100_Bin1"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_FCC100, 220., 300.);
326  obsThFactory["mupTVppWZ_100_Bin2"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_FCC100, 300., 500.);
327  obsThFactory["mupTVppWZ_100_Bin3"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_FCC100, 500., 750.);
328  obsThFactory["mupTVppWZ_100_Bin4"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_FCC100, 750., 1200.);
329  obsThFactory["mupTVppWZ_100_Bin5"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_FCC100, 1200., 1800.);
330  obsThFactory["mupTVppWZ_100_Bin6"] = boost::bind(boost::factory<mupTVppWZ*>(), _1, sqrt_s_FCC100, 1800., 2400.);
331  //----- Observables for particle couplings -----
332  //----- Zff couplings observables ----------
333  obsThFactory["deltagZveveL"] = boost::factory<deltagZveveL*>();
334  obsThFactory["deltagZvmuvmuL"] = boost::factory<deltagZvmuvmuL*>();
335  obsThFactory["deltagZvtavtaL"] = boost::factory<deltagZvtavtaL*>();
336  obsThFactory["deltagZeeL"] = boost::factory<deltagZeeL*>();
337  obsThFactory["deltagZeeR"] = boost::factory<deltagZeeR*>();
338  obsThFactory["deltagZmumuL"] = boost::factory<deltagZmumuL*>();
339  obsThFactory["deltagZmumuR"] = boost::factory<deltagZmumuR*>();
340  obsThFactory["deltagZtataL"] = boost::factory<deltagZtataL*>();
341  obsThFactory["deltagZtataR"] = boost::factory<deltagZtataR*>();
342  obsThFactory["deltagZuuL"] = boost::factory<deltagZuuL*>();
343  obsThFactory["deltagZuuR"] = boost::factory<deltagZuuR*>();
344  obsThFactory["deltagZuuV"] = boost::factory<deltagZuuV*>();
345  obsThFactory["deltagZuuA"] = boost::factory<deltagZuuA*>();
346  obsThFactory["deltagZccL"] = boost::factory<deltagZccL*>();
347  obsThFactory["deltagZccR"] = boost::factory<deltagZccR*>();
348  obsThFactory["deltagZttL"] = boost::factory<deltagZttL*>();
349  obsThFactory["deltagZttR"] = boost::factory<deltagZttR*>();
350  obsThFactory["deltagZttV"] = boost::factory<deltagZttV*>();
351  obsThFactory["deltagZttA"] = boost::factory<deltagZttA*>();
352  obsThFactory["deltagZddL"] = boost::factory<deltagZddL*>();
353  obsThFactory["deltagZddR"] = boost::factory<deltagZddR*>();
354  obsThFactory["deltagZddV"] = boost::factory<deltagZddV*>();
355  obsThFactory["deltagZddA"] = boost::factory<deltagZddA*>();
356  obsThFactory["deltagZssL"] = boost::factory<deltagZssL*>();
357  obsThFactory["deltagZssR"] = boost::factory<deltagZssR*>();
358  obsThFactory["deltagZbbL"] = boost::factory<deltagZbbL*>();
359  obsThFactory["deltagZbbR"] = boost::factory<deltagZbbR*>();
360  //----- Wff couplings observables ----------
361  obsThFactory["deltaUWeve"] = boost::factory<deltaUWeve*>();
362  obsThFactory["deltaUWmuvmu"] = boost::factory<deltaUWmuvmu*>();
363  obsThFactory["deltaUWtavta"] = boost::factory<deltaUWtavta*>();
364  obsThFactory["deltaVudL"] = boost::factory<deltaVudL*>();
365  obsThFactory["deltaVudR"] = boost::factory<deltaVudR*>();
366  obsThFactory["deltaVcsL"] = boost::factory<deltaVcsL*>();
367  obsThFactory["deltaVcsR"] = boost::factory<deltaVcsR*>();
368  obsThFactory["deltaVtbL"] = boost::factory<deltaVtbL*>();
369  obsThFactory["deltaVtbR"] = boost::factory<deltaVtbR*>();
370  //----- Hff couplings observables ----------
371  obsThFactory["gHmumueff"] = boost::factory<gHmumueff*>();
372  obsThFactory["gHtataeff"] = boost::factory<gHtataeff*>();
373  obsThFactory["gHcceff"] = boost::factory<gHcceff*>();
374  obsThFactory["gHbbeff"] = boost::factory<gHbbeff*>();
375  obsThFactory["deltagHee"] = boost::factory<deltagHee*>();
376  obsThFactory["deltagHmumu"] = boost::factory<deltagHmumu*>();
377  obsThFactory["deltagHtata"] = boost::factory<deltagHtata*>();
378  obsThFactory["deltagHuu"] = boost::factory<deltagHuu*>();
379  obsThFactory["deltagHcc"] = boost::factory<deltagHcc*>();
380  obsThFactory["deltagHtt"] = boost::factory<deltagHtt*>();
381  obsThFactory["deltagHdd"] = boost::factory<deltagHdd*>();
382  obsThFactory["deltagHss"] = boost::factory<deltagHss*>();
383  obsThFactory["deltagHbb"] = boost::factory<deltagHbb*>();
384  //----- HGG couplings observables ----------
385  obsThFactory["gHGGeff"] = boost::factory<gHGGeff*>();
386  obsThFactory["deltagHGG"] = boost::factory<deltagHGG*>();
387  //----- HZZ couplings observables ----------
388  obsThFactory["gHZZeff"] = boost::factory<gHZZeff*>();
389  obsThFactory["deltagHZZ"] = boost::factory<deltagHZZ*>();
390  obsThFactory["gHZZ1"] = boost::factory<gHZZ1*>();
391  obsThFactory["gHZZ2"] = boost::factory<gHZZ2*>();
392  //----- HAA couplings observables ----------
393  obsThFactory["gHAAeff"] = boost::factory<gHAAeff*>();
394  obsThFactory["deltagHAA"] = boost::factory<deltagHAA*>();
395  //----- HZA couplings observables ----------
396  obsThFactory["gHZAeff"] = boost::factory<gHZAeff*>();
397  obsThFactory["deltagHZA"] = boost::factory<deltagHZA*>();
398  obsThFactory["gHZA2"] = boost::factory<gHZA2*>();
399  //----- HWW couplings observables ----------
400  obsThFactory["gHWWeff"] = boost::factory<gHWWeff*>();
401  obsThFactory["deltagHWW"] = boost::factory<deltagHWW*>();
402  obsThFactory["gHWW1"] = boost::factory<gHWW1*>();
403  obsThFactory["gHWW2"] = boost::factory<gHWW2*>();
404  //----- HHH couplings observables ----------
405  obsThFactory["deltalHHH"] = boost::factory<deltalHHH*>();
406  //----- Other Higgs couplings observables ----------
407  obsThFactory["gHWZeff_Ratio"] = boost::factory<gHWZeff*>();
408  obsThFactory["gHbWeff_Ratio"] = boost::factory<gHbWeff*>();
409  obsThFactory["gHtaWeff_Ratio"] = boost::factory<gHtaWeff*>();
410  //----- VVV couplings observables ----------
411  obsThFactory["deltag1ZEff"] = boost::factory<deltag1ZEff*>();
412  obsThFactory["deltaKgammaEff"] = boost::factory<deltaKgammaEff*>();
413  //----- Basic interactions of the so-called Higgs basis ----------
414  obsThFactory["deltayt_HB"] = boost::factory<deltaytHB*>();
415  obsThFactory["deltayb_HB"] = boost::factory<deltaybHB*>();
416  obsThFactory["deltaytau_HB"] = boost::factory<deltaytauHB*>();
417  obsThFactory["deltayc_HB"] = boost::factory<deltaycHB*>();
418  obsThFactory["deltaymu_HB"] = boost::factory<deltaymuHB*>();
419  obsThFactory["deltacZ_HB"] = boost::factory<deltacZHB*>();
420  obsThFactory["cZBox_HB"] = boost::factory<cZBoxHB*>();
421  obsThFactory["cZZ_HB"] = boost::factory<cZZHB*>();
422  obsThFactory["cZga_HB"] = boost::factory<cZgaHB*>();
423  obsThFactory["cgaga_HB"] = boost::factory<cgagaHB*>();
424  obsThFactory["cgg_HB"] = boost::factory<cggHB*>();
425  obsThFactory["cggEff_HB"] = boost::factory<cggEffHB*>();
426  obsThFactory["lambz_HB"] = boost::factory<lambzHB*>();
427  //----- Other useful observables to work with new physics ----------
428  //----- Z couplings with leptons ---------
429  obsThFactory["delgZeL"] = boost::bind(boost::factory<delgZlL*>(), _1, StandardModel::ELECTRON);
430  obsThFactory["delgZeR"] = boost::bind(boost::factory<delgZlR*>(), _1, StandardModel::ELECTRON);
431  obsThFactory["delgZmuL"] = boost::bind(boost::factory<delgZlL*>(), _1, StandardModel::MU);
432  obsThFactory["delgZmuR"] = boost::bind(boost::factory<delgZlR*>(), _1, StandardModel::MU);
433  obsThFactory["delgZtaL"] = boost::bind(boost::factory<delgZlL*>(), _1, StandardModel::TAU);
434  obsThFactory["delgZtaR"] = boost::bind(boost::factory<delgZlR*>(), _1, StandardModel::TAU);
435  //----- Z couplings with up sector quarks ---------
436  obsThFactory["delgZuL"] = boost::bind(boost::factory<delgZqL*>(), _1, StandardModel::UP);
437  obsThFactory["delgZuR"] = boost::bind(boost::factory<delgZqR*>(), _1, StandardModel::UP);
438  obsThFactory["delgZcL"] = boost::bind(boost::factory<delgZqL*>(), _1, StandardModel::CHARM);
439  obsThFactory["delgZcR"] = boost::bind(boost::factory<delgZqR*>(), _1, StandardModel::CHARM);
440  obsThFactory["delgZtL"] = boost::bind(boost::factory<delgZqL*>(), _1, StandardModel::TOP);
441  obsThFactory["delgZtR"] = boost::bind(boost::factory<delgZqR*>(), _1, StandardModel::TOP);
442  //----- Z couplings with down sector quarks ---------
443  obsThFactory["delgZdL"] = boost::bind(boost::factory<delgZqL*>(), _1, StandardModel::DOWN);
444  obsThFactory["delgZdR"] = boost::bind(boost::factory<delgZqR*>(), _1, StandardModel::DOWN);
445  obsThFactory["delgZsL"] = boost::bind(boost::factory<delgZqL*>(), _1, StandardModel::STRANGE);
446  obsThFactory["delgZsR"] = boost::bind(boost::factory<delgZqR*>(), _1, StandardModel::STRANGE);
447  obsThFactory["delgZbL"] = boost::bind(boost::factory<delgZqL*>(), _1, StandardModel::BOTTOM);
448  obsThFactory["delgZbR"] = boost::bind(boost::factory<delgZqR*>(), _1, StandardModel::BOTTOM);
449  obsThFactory["deltaMW"] = boost::factory<deltaMW*>();
450  //----- Oblique Parameters ---------
451  obsThFactory["oblSpar"] = boost::factory<oblS*>();
452  obsThFactory["oblTpar"] = boost::factory<oblT*>();
453  obsThFactory["oblWpar"] = boost::factory<oblW*>();
454  obsThFactory["oblYpar"] = boost::factory<oblY*>();
455  //----- Auxiliary observables to work with new physics ----------
456  obsThFactory["AuxObsNP1"] = boost::factory<AuxObsNP1*>();
457  obsThFactory["AuxObsNP2"] = boost::factory<AuxObsNP2*>();
458  obsThFactory["AuxObsNP3"] = boost::factory<AuxObsNP3*>();
459  obsThFactory["AuxObsNP4"] = boost::factory<AuxObsNP4*>();
460  obsThFactory["AuxObsNP5"] = boost::factory<AuxObsNP5*>();
461  obsThFactory["AuxObsNP6"] = boost::factory<AuxObsNP6*>();
462  obsThFactory["AuxObsNP7"] = boost::factory<AuxObsNP7*>();
463  obsThFactory["AuxObsNP8"] = boost::factory<AuxObsNP8*>();
464  obsThFactory["AuxObsNP9"] = boost::factory<AuxObsNP9*>();
465  obsThFactory["AuxObsNP10"] = boost::factory<AuxObsNP10*>();
466  obsThFactory["AuxObsNP11"] = boost::factory<AuxObsNP11*>();
467  obsThFactory["AuxObsNP12"] = boost::factory<AuxObsNP12*>();
468  obsThFactory["AuxObsNP13"] = boost::factory<AuxObsNP13*>();
469  obsThFactory["AuxObsNP14"] = boost::factory<AuxObsNP14*>();
470  obsThFactory["AuxObsNP15"] = boost::factory<AuxObsNP15*>();
471  obsThFactory["AuxObsNP16"] = boost::factory<AuxObsNP16*>();
472  obsThFactory["AuxObsNP17"] = boost::factory<AuxObsNP17*>();
473  obsThFactory["AuxObsNP18"] = boost::factory<AuxObsNP18*>();
474  obsThFactory["AuxObsNP19"] = boost::factory<AuxObsNP19*>();
475  obsThFactory["AuxObsNP20"] = boost::factory<AuxObsNP20*>();
476 
477  //----- Higgs observables ----------
478 
479  //----- Production cross sections (ratios with SM) ----------
480  obsThFactory["ggH"] = boost::bind(boost::factory<muggH*>(), _1, sqrt_s_LHC8);
481  obsThFactory["VBF"] = boost::bind(boost::factory<muVBF*>(), _1, sqrt_s_LHC8);
482  obsThFactory["WH"] = boost::bind(boost::factory<muWH*>(), _1, sqrt_s_LHC8);
483  obsThFactory["ZH"] = boost::bind(boost::factory<muZH*>(), _1, sqrt_s_LHC8);
484  obsThFactory["VH"] = boost::bind(boost::factory<muVH*>(), _1, sqrt_s_LHC8);
485  obsThFactory["ggH+ttH"] = boost::bind(boost::factory<muggHpttH*>(), _1, sqrt_s_LHC8);
486  obsThFactory["VBF+VH"] = boost::bind(boost::factory<muVBFpVH*>(), _1, sqrt_s_LHC8);
487  obsThFactory["ttH"] = boost::bind(boost::factory<muttH*>(), _1, sqrt_s_LHC8);
488  obsThFactory["tHq"] = boost::bind(boost::factory<mutHq*>(), _1, sqrt_s_LHC8);
489  obsThFactory["ggH7"] = boost::bind(boost::factory<muggH*>(), _1, sqrt_s_LHC7);
490  obsThFactory["VBF7"] = boost::bind(boost::factory<muVBF*>(), _1, sqrt_s_LHC7);
491  obsThFactory["WH7"] = boost::bind(boost::factory<muWH*>(), _1, sqrt_s_LHC7);
492  obsThFactory["ZH7"] = boost::bind(boost::factory<muZH*>(), _1, sqrt_s_LHC7);
493  obsThFactory["VH7"] = boost::bind(boost::factory<muVH*>(), _1, sqrt_s_LHC7);
494  obsThFactory["ttH7"] = boost::bind(boost::factory<muttH*>(), _1, sqrt_s_LHC7);
495  obsThFactory["tHq7"] = boost::bind(boost::factory<mutHq*>(), _1, sqrt_s_LHC7);
496  obsThFactory["ggH8"] = boost::bind(boost::factory<muggH*>(), _1, sqrt_s_LHC8);
497  obsThFactory["ggH+ttH8"] = boost::bind(boost::factory<muggHpttH*>(), _1, sqrt_s_LHC8);
498  obsThFactory["VBF8"] = boost::bind(boost::factory<muVBF*>(), _1, sqrt_s_LHC8);
499  obsThFactory["VBF+VH8"] = boost::bind(boost::factory<muVBFpVH*>(), _1, sqrt_s_LHC8);
500  obsThFactory["VBFgamma8"] = boost::bind(boost::factory<muVBFgamma*>(), _1, sqrt_s_LHC8);
501  obsThFactory["VH8"] = boost::bind(boost::factory<muVH*>(), _1, sqrt_s_LHC8);
502  obsThFactory["WH8"] = boost::bind(boost::factory<muWH*>(), _1, sqrt_s_LHC8);
503  obsThFactory["ZH8"] = boost::bind(boost::factory<muZH*>(), _1, sqrt_s_LHC8);
504  obsThFactory["ttH8"] = boost::bind(boost::factory<muttH*>(), _1, sqrt_s_LHC8);
505  obsThFactory["tHq8"] = boost::bind(boost::factory<mutHq*>(), _1, sqrt_s_LHC8);
506  obsThFactory["ggH13"] = boost::bind(boost::factory<muggH*>(), _1, sqrt_s_LHC13);
507  obsThFactory["ggH+ttH13"] = boost::bind(boost::factory<muggHpttH*>(), _1, sqrt_s_LHC13);
508  obsThFactory["VBF13"] = boost::bind(boost::factory<muVBF*>(), _1, sqrt_s_LHC13);
509  obsThFactory["VBF+VH13"] = boost::bind(boost::factory<muVBFpVH*>(), _1, sqrt_s_LHC13);
510  obsThFactory["VBFgamma13"] = boost::bind(boost::factory<muVBFgamma*>(), _1, sqrt_s_LHC13);
511  obsThFactory["VH13"] = boost::bind(boost::factory<muVH*>(), _1, sqrt_s_LHC13);
512  obsThFactory["WH13"] = boost::bind(boost::factory<muWH*>(), _1, sqrt_s_LHC13);
513  obsThFactory["ZH13"] = boost::bind(boost::factory<muZH*>(), _1, sqrt_s_LHC13);
514  obsThFactory["ttH13"] = boost::bind(boost::factory<muttH*>(), _1, sqrt_s_LHC13);
515  obsThFactory["tHq13"] = boost::bind(boost::factory<mutHq*>(), _1, sqrt_s_LHC13);
516  obsThFactory["ggH14"] = boost::bind(boost::factory<muggH*>(), _1, sqrt_s_LHC14);
517  obsThFactory["ggH+ttH14"] = boost::bind(boost::factory<muggHpttH*>(), _1, sqrt_s_LHC14);
518  obsThFactory["VBF14"] = boost::bind(boost::factory<muVBF*>(), _1, sqrt_s_LHC14);
519  obsThFactory["VBF+VH14"] = boost::bind(boost::factory<muVBFpVH*>(), _1, sqrt_s_LHC14);
520  obsThFactory["VBFgamma14"] = boost::bind(boost::factory<muVBFgamma*>(), _1, sqrt_s_LHC14);
521  obsThFactory["VH14"] = boost::bind(boost::factory<muVH*>(), _1, sqrt_s_LHC14);
522  obsThFactory["WH14"] = boost::bind(boost::factory<muWH*>(), _1, sqrt_s_LHC14);
523  obsThFactory["ZH14"] = boost::bind(boost::factory<muZH*>(), _1, sqrt_s_LHC14);
524  obsThFactory["ttH14"] = boost::bind(boost::factory<muttH*>(), _1, sqrt_s_LHC14);
525  obsThFactory["tHq14"] = boost::bind(boost::factory<mutHq*>(), _1, sqrt_s_LHC14);
526  obsThFactory["ggH27"] = boost::bind(boost::factory<muggH*>(), _1, sqrt_s_LHC27);
527  obsThFactory["ggH+ttH27"] = boost::bind(boost::factory<muggHpttH*>(), _1, sqrt_s_LHC27);
528  obsThFactory["VBF27"] = boost::bind(boost::factory<muVBF*>(), _1, sqrt_s_LHC27);
529  obsThFactory["VBF+VH27"] = boost::bind(boost::factory<muVBFpVH*>(), _1, sqrt_s_LHC27);
530  obsThFactory["VBFgamma27"] = boost::bind(boost::factory<muVBFgamma*>(), _1, sqrt_s_LHC27);
531  obsThFactory["VH27"] = boost::bind(boost::factory<muVH*>(), _1, sqrt_s_LHC27);
532  obsThFactory["WH27"] = boost::bind(boost::factory<muWH*>(), _1, sqrt_s_LHC27);
533  obsThFactory["ZH27"] = boost::bind(boost::factory<muZH*>(), _1, sqrt_s_LHC27);
534  obsThFactory["ttH27"] = boost::bind(boost::factory<muttH*>(), _1, sqrt_s_LHC27);
535  obsThFactory["tHq27"] = boost::bind(boost::factory<mutHq*>(), _1, sqrt_s_LHC27);
536  obsThFactory["ggH100"] = boost::bind(boost::factory<muggH*>(), _1, sqrt_s_FCC100);
537  obsThFactory["ggH+ttH100"] = boost::bind(boost::factory<muggHpttH*>(), _1, sqrt_s_FCC100);
538  obsThFactory["VBF100"] = boost::bind(boost::factory<muVBF*>(), _1, sqrt_s_FCC100);
539  obsThFactory["VBF+VH100"] = boost::bind(boost::factory<muVBFpVH*>(), _1, sqrt_s_FCC100);
540  obsThFactory["VBFgamma100"] = boost::bind(boost::factory<muVBFgamma*>(), _1, sqrt_s_FCC100);
541  obsThFactory["VH100"] = boost::bind(boost::factory<muVH*>(), _1, sqrt_s_FCC100);
542  obsThFactory["WH100"] = boost::bind(boost::factory<muWH*>(), _1, sqrt_s_FCC100);
543  obsThFactory["ZH100"] = boost::bind(boost::factory<muZH*>(), _1, sqrt_s_FCC100);
544  obsThFactory["ttH100"] = boost::bind(boost::factory<muttH*>(), _1, sqrt_s_FCC100);
545  obsThFactory["tHq100"] = boost::bind(boost::factory<mutHq*>(), _1, sqrt_s_FCC100);
546  obsThFactory["ggH196"] = boost::bind(boost::factory<muggH*>(), _1, sqrt_s_TeV);
547  obsThFactory["VBF196"] = boost::bind(boost::factory<muVBF*>(), _1, sqrt_s_TeV);
548  obsThFactory["VH196"] = boost::bind(boost::factory<muVH*>(), _1, sqrt_s_TeV);
549  obsThFactory["ttH196"] = boost::bind(boost::factory<muttH*>(), _1, sqrt_s_TeV);
550  //
551  obsThFactory["eeZH240"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_240);
552  obsThFactory["eeZH250"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_250);
553  obsThFactory["eeZH350"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_350);
554  obsThFactory["eeZH365"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_365);
555  obsThFactory["eeZH380"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_380);
556  obsThFactory["eeZH500"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_500);
557  obsThFactory["eeZH1000"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_1000);
558  obsThFactory["eeZH1400"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_1400);
559  obsThFactory["eeZH1500"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_1500);
560  obsThFactory["eeZH3000"] = boost::bind(boost::factory<mueeZH*>(), _1, sqrt_s_leptcoll_3000);
561  //
562  obsThFactory["eeZllH240"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_240);
563  obsThFactory["eeZllH250"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_250);
564  obsThFactory["eeZllH350"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_350);
565  obsThFactory["eeZllH365"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_365);
566  obsThFactory["eeZllH380"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_380);
567  obsThFactory["eeZllH500"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_500);
568  obsThFactory["eeZllH1000"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_1000);
569  obsThFactory["eeZllH1400"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_1400);
570  obsThFactory["eeZllH1500"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_1500);
571  obsThFactory["eeZllH3000"] = boost::bind(boost::factory<mueeZllH*>(), _1, sqrt_s_leptcoll_3000);
572  //
573  obsThFactory["eeZqqH240"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_240);
574  obsThFactory["eeZqqH250"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_250);
575  obsThFactory["eeZqqH350"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_350);
576  obsThFactory["eeZqqH365"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_365);
577  obsThFactory["eeZqqH380"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_380);
578  obsThFactory["eeZqqH500"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_500);
579  obsThFactory["eeZqqH1000"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_1000);
580  obsThFactory["eeZqqH1400"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_1400);
581  obsThFactory["eeZqqH1500"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_1500);
582  obsThFactory["eeZqqH3000"] = boost::bind(boost::factory<mueeZqqH*>(), _1, sqrt_s_leptcoll_3000);
583  //
584  obsThFactory["eeZH250_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
585  obsThFactory["eeZH250_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
586  obsThFactory["eeZH250_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
587  obsThFactory["eeZH250_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
588  //
589  obsThFactory["eeZH350_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
590  obsThFactory["eeZH350_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
591  obsThFactory["eeZH350_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
592  obsThFactory["eeZH350_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
593  //
594  obsThFactory["eeZH365_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_365, pol_80, -pol_30);
595  obsThFactory["eeZH365_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_30);
596  obsThFactory["eeZH365_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_365, pol_80, pol_0);
597  obsThFactory["eeZH365_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_0);
598  //
599  obsThFactory["eeZH380_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
600  obsThFactory["eeZH380_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
601  obsThFactory["eeZH380_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
602  obsThFactory["eeZH380_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
603  //
604  obsThFactory["eeZH500_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
605  obsThFactory["eeZH500_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
606  obsThFactory["eeZH500_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
607  obsThFactory["eeZH500_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
608  //
609  obsThFactory["eeZH1000_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
610  obsThFactory["eeZH1000_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
611  obsThFactory["eeZH1000_p80_m20"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
612  obsThFactory["eeZH1000_m80_p20"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
613  obsThFactory["eeZH1000_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
614  obsThFactory["eeZH1000_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
615  //
616  obsThFactory["eeZH1400_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
617  obsThFactory["eeZH1400_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
618  obsThFactory["eeZH1400_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
619  obsThFactory["eeZH1400_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
620  //
621  obsThFactory["eeZH1500_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
622  obsThFactory["eeZH1500_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
623  obsThFactory["eeZH1500_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
624  obsThFactory["eeZH1500_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
625  //
626  obsThFactory["eeZH3000_p80_m30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
627  obsThFactory["eeZH3000_m80_p30"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
628  obsThFactory["eeZH3000_p80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
629  obsThFactory["eeZH3000_m80_0"] = boost::bind(boost::factory<mueeZHPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
630  //
631  obsThFactory["eeZllH250_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
632  obsThFactory["eeZllH250_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
633  obsThFactory["eeZllH250_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
634  obsThFactory["eeZllH250_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
635  //
636  obsThFactory["eeZllH350_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
637  obsThFactory["eeZllH350_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
638  obsThFactory["eeZllH350_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
639  obsThFactory["eeZllH350_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
640  //
641  obsThFactory["eeZllH365_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_365, pol_80, -pol_30);
642  obsThFactory["eeZllH365_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_30);
643  obsThFactory["eeZllH365_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_365, pol_80, pol_0);
644  obsThFactory["eeZllH365_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_0);
645  //
646  obsThFactory["eeZllH380_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
647  obsThFactory["eeZllH380_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
648  obsThFactory["eeZllH380_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
649  obsThFactory["eeZllH380_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
650  //
651  obsThFactory["eeZllH500_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
652  obsThFactory["eeZllH500_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
653  obsThFactory["eeZllH500_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
654  obsThFactory["eeZllH500_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
655  //
656  obsThFactory["eeZllH1000_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
657  obsThFactory["eeZllH1000_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
658  obsThFactory["eeZllH1000_p80_m20"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
659  obsThFactory["eeZllH1000_m80_p20"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
660  obsThFactory["eeZllH1000_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
661  obsThFactory["eeZllH1000_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
662  //
663  obsThFactory["eeZllH1400_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
664  obsThFactory["eeZllH1400_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
665  obsThFactory["eeZllH1400_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
666  obsThFactory["eeZllH1400_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
667  //
668  obsThFactory["eeZllH1500_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
669  obsThFactory["eeZllH1500_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
670  obsThFactory["eeZllH1500_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
671  obsThFactory["eeZllH1500_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
672  //
673  obsThFactory["eeZllH3000_p80_m30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
674  obsThFactory["eeZllH3000_m80_p30"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
675  obsThFactory["eeZllH3000_p80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
676  obsThFactory["eeZllH3000_m80_0"] = boost::bind(boost::factory<mueeZllHPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
677  //
678  obsThFactory["eeZqqH250_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
679  obsThFactory["eeZqqH250_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
680  obsThFactory["eeZqqH250_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
681  obsThFactory["eeZqqH250_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
682  //
683  obsThFactory["eeZqqH350_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
684  obsThFactory["eeZqqH350_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
685  obsThFactory["eeZqqH350_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
686  obsThFactory["eeZqqH350_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
687  //
688  obsThFactory["eeZqqH365_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_365, pol_80, -pol_30);
689  obsThFactory["eeZqqH365_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_30);
690  obsThFactory["eeZqqH365_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_365, pol_80, pol_0);
691  obsThFactory["eeZqqH365_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_0);
692  //
693  obsThFactory["eeZqqH380_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
694  obsThFactory["eeZqqH380_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
695  obsThFactory["eeZqqH380_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
696  obsThFactory["eeZqqH380_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
697  //
698  obsThFactory["eeZqqH500_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
699  obsThFactory["eeZqqH500_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
700  obsThFactory["eeZqqH500_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
701  obsThFactory["eeZqqH500_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
702  //
703  obsThFactory["eeZqqH1000_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
704  obsThFactory["eeZqqH1000_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
705  obsThFactory["eeZqqH1000_p80_m20"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
706  obsThFactory["eeZqqH1000_m80_p20"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
707  obsThFactory["eeZqqH1000_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
708  obsThFactory["eeZqqH1000_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
709  //
710  obsThFactory["eeZqqH1400_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
711  obsThFactory["eeZqqH1400_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
712  obsThFactory["eeZqqH1400_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
713  obsThFactory["eeZqqH1400_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
714  //
715  obsThFactory["eeZqqH1500_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
716  obsThFactory["eeZqqH1500_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
717  obsThFactory["eeZqqH1500_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
718  obsThFactory["eeZqqH1500_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
719  //
720  obsThFactory["eeZqqH3000_p80_m30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
721  obsThFactory["eeZqqH3000_m80_p30"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
722  obsThFactory["eeZqqH3000_p80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
723  obsThFactory["eeZqqH3000_m80_0"] = boost::bind(boost::factory<mueeZqqHPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
724  //
725  obsThFactory["aPsk250_p80_m30"] = boost::bind(boost::factory<aPsk*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
726  obsThFactory["aPsk250_m80_p30"] = boost::bind(boost::factory<bPsk*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
727  //
728  obsThFactory["aPsk350_p80_m30"] = boost::bind(boost::factory<aPsk*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
729  obsThFactory["aPsk350_m80_p30"] = boost::bind(boost::factory<bPsk*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
730  //
731  obsThFactory["aPsk500_p80_m30"] = boost::bind(boost::factory<aPsk*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
732  obsThFactory["aPsk500_m80_p30"] = boost::bind(boost::factory<bPsk*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
733  //
734  obsThFactory["bPsk250_p80_m30"] = boost::bind(boost::factory<aPsk*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
735  obsThFactory["bPsk250_m80_p30"] = boost::bind(boost::factory<bPsk*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
736  //
737  obsThFactory["bPsk350_p80_m30"] = boost::bind(boost::factory<aPsk*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
738  obsThFactory["bPsk350_m80_p30"] = boost::bind(boost::factory<bPsk*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
739  //
740  obsThFactory["bPsk500_p80_m30"] = boost::bind(boost::factory<aPsk*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
741  obsThFactory["bPsk500_m80_p30"] = boost::bind(boost::factory<bPsk*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
742  //
743  obsThFactory["eeWBF240"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_240);
744  obsThFactory["eeWBF250"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_250);
745  obsThFactory["eeWBF350"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_350);
746  obsThFactory["eeWBF365"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_365);
747  obsThFactory["eeWBF380"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_380);
748  obsThFactory["eeWBF500"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_500);
749  obsThFactory["eeWBF1000"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_1000);
750  obsThFactory["eeWBF1400"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_1400);
751  obsThFactory["eeWBF1500"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_1500);
752  obsThFactory["eeWBF3000"] = boost::bind(boost::factory<mueeWBF*>(), _1, sqrt_s_leptcoll_3000);
753  //
754  obsThFactory["eeWBF250_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
755  obsThFactory["eeWBF250_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
756  obsThFactory["eeWBF250_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
757  obsThFactory["eeWBF250_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
758  //
759  obsThFactory["eeWBF350_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
760  obsThFactory["eeWBF350_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
761  obsThFactory["eeWBF350_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
762  obsThFactory["eeWBF350_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
763  //
764  obsThFactory["eeWBF365_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_365, pol_80, -pol_30);
765  obsThFactory["eeWBF365_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_30);
766  obsThFactory["eeWBF365_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_365, pol_80, pol_0);
767  obsThFactory["eeWBF365_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_0);
768  //
769  obsThFactory["eeWBF380_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
770  obsThFactory["eeWBF380_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
771  obsThFactory["eeWBF380_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
772  obsThFactory["eeWBF380_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
773  //
774  obsThFactory["eeWBF500_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
775  obsThFactory["eeWBF500_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
776  obsThFactory["eeWBF500_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
777  obsThFactory["eeWBF500_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
778  //
779  obsThFactory["eeWBF1000_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
780  obsThFactory["eeWBF1000_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
781  obsThFactory["eeWBF1000_p80_m20"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
782  obsThFactory["eeWBF1000_m80_p20"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
783  obsThFactory["eeWBF1000_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
784  obsThFactory["eeWBF1000_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
785  //
786  obsThFactory["eeWBF1400_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
787  obsThFactory["eeWBF1400_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
788  obsThFactory["eeWBF1400_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
789  obsThFactory["eeWBF1400_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
790  //
791  obsThFactory["eeWBF1500_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
792  obsThFactory["eeWBF1500_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
793  obsThFactory["eeWBF1500_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
794  obsThFactory["eeWBF1500_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
795  //
796  obsThFactory["eeWBF3000_p80_m30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
797  obsThFactory["eeWBF3000_m80_p30"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
798  obsThFactory["eeWBF3000_p80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
799  obsThFactory["eeWBF3000_m80_0"] = boost::bind(boost::factory<mueeWBFPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
800  //
801  obsThFactory["eeHvv240"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_240);
802  obsThFactory["eeHvv250"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_250);
803  obsThFactory["eeHvv350"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_350);
804  obsThFactory["eeHvv365"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_365);
805  obsThFactory["eeHvv380"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_380);
806  obsThFactory["eeHvv500"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_500);
807  obsThFactory["eeHvv1000"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_1000);
808  obsThFactory["eeHvv1400"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_1400);
809  obsThFactory["eeHvv1500"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_1500);
810  obsThFactory["eeHvv3000"] = boost::bind(boost::factory<mueeHvv*>(), _1, sqrt_s_leptcoll_3000);
811  //
812  obsThFactory["eeHvv250_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
813  obsThFactory["eeHvv250_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
814  obsThFactory["eeHvv250_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
815  obsThFactory["eeHvv250_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
816  //
817  obsThFactory["eeHvv350_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
818  obsThFactory["eeHvv350_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
819  obsThFactory["eeHvv350_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
820  obsThFactory["eeHvv350_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
821  //
822  obsThFactory["eeHvv365_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_365, pol_80, -pol_30);
823  obsThFactory["eeHvv365_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_30);
824  obsThFactory["eeHvv365_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_365, pol_80, pol_0);
825  obsThFactory["eeHvv365_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_0);
826  //
827  obsThFactory["eeHvv380_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
828  obsThFactory["eeHvv380_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
829  obsThFactory["eeHvv380_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
830  obsThFactory["eeHvv380_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
831  //
832  obsThFactory["eeHvv500_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
833  obsThFactory["eeHvv500_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
834  obsThFactory["eeHvv500_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
835  obsThFactory["eeHvv500_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
836  //
837  obsThFactory["eeHvv1000_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
838  obsThFactory["eeHvv1000_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
839  obsThFactory["eeHvv1000_p80_m20"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
840  obsThFactory["eeHvv1000_m80_p20"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
841  obsThFactory["eeHvv1000_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
842  obsThFactory["eeHvv1000_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
843  //
844  obsThFactory["eeHvv1400_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
845  obsThFactory["eeHvv1400_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
846  obsThFactory["eeHvv1400_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
847  obsThFactory["eeHvv1400_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
848  //
849  obsThFactory["eeHvv1500_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
850  obsThFactory["eeHvv1500_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
851  obsThFactory["eeHvv1500_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
852  obsThFactory["eeHvv1500_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
853  //
854  obsThFactory["eeHvv3000_p80_m30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
855  obsThFactory["eeHvv3000_m80_p30"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
856  obsThFactory["eeHvv3000_p80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
857  obsThFactory["eeHvv3000_m80_0"] = boost::bind(boost::factory<mueeHvvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
858  //
859  obsThFactory["eeZBF240"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_240);
860  obsThFactory["eeZBF250"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_250);
861  obsThFactory["eeZBF350"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_350);
862  obsThFactory["eeZBF365"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_365);
863  obsThFactory["eeZBF380"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_380);
864  obsThFactory["eeZBF500"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_500);
865  obsThFactory["eeZBF1000"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_1000);
866  obsThFactory["eeZBF1400"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_1400);
867  obsThFactory["eeZBF1500"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_1500);
868  obsThFactory["eeZBF3000"] = boost::bind(boost::factory<mueeZBF*>(), _1, sqrt_s_leptcoll_3000);
869  //
870  obsThFactory["eeZBF250_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
871  obsThFactory["eeZBF250_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
872  obsThFactory["eeZBF250_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
873  obsThFactory["eeZBF250_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
874  //
875  obsThFactory["eeZBF350_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
876  obsThFactory["eeZBF350_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
877  obsThFactory["eeZBF350_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
878  obsThFactory["eeZBF350_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
879  //
880  obsThFactory["eeZBF365_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_365, pol_80, -pol_30);
881  obsThFactory["eeZBF365_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_30);
882  obsThFactory["eeZBF365_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_365, pol_80, pol_0);
883  obsThFactory["eeZBF365_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_365, -pol_80, pol_0);
884  //
885  obsThFactory["eeZBF380_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
886  obsThFactory["eeZBF380_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
887  obsThFactory["eeZBF380_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
888  obsThFactory["eeZBF380_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
889  //
890  obsThFactory["eeZBF500_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
891  obsThFactory["eeZBF500_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
892  obsThFactory["eeZBF500_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
893  obsThFactory["eeZBF500_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
894  //
895  obsThFactory["eeZBF1000_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
896  obsThFactory["eeZBF1000_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
897  obsThFactory["eeZBF1000_p80_m20"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
898  obsThFactory["eeZBF1000_m80_p20"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
899  obsThFactory["eeZBF1000_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
900  obsThFactory["eeZBF1000_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
901  //
902  obsThFactory["eeZBF1400_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
903  obsThFactory["eeZBF1400_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
904  obsThFactory["eeZBF1400_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
905  obsThFactory["eeZBF1400_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
906  //
907  obsThFactory["eeZBF1500_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
908  obsThFactory["eeZBF1500_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
909  obsThFactory["eeZBF1500_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
910  obsThFactory["eeZBF1500_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
911  //
912  obsThFactory["eeZBF3000_p80_m30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
913  obsThFactory["eeZBF3000_m80_p30"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
914  obsThFactory["eeZBF3000_p80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
915  obsThFactory["eeZBF3000_m80_0"] = boost::bind(boost::factory<mueeZBFPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
916  //
917  obsThFactory["eettH500"] = boost::bind(boost::factory<mueettH*>(), _1, sqrt_s_leptcoll_500);
918  obsThFactory["eettH1000"] = boost::bind(boost::factory<mueettH*>(), _1, sqrt_s_leptcoll_1000);
919  obsThFactory["eettH1400"] = boost::bind(boost::factory<mueettH*>(), _1, sqrt_s_leptcoll_1400);
920  obsThFactory["eettH1500"] = boost::bind(boost::factory<mueettH*>(), _1, sqrt_s_leptcoll_1500);
921  obsThFactory["eettH3000"] = boost::bind(boost::factory<mueettH*>(), _1, sqrt_s_leptcoll_3000);
922  //
923  obsThFactory["eettH500_p80_m30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
924  obsThFactory["eettH500_m80_p30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
925  obsThFactory["eettH500_p80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
926  obsThFactory["eettH500_m80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
927  //
928  obsThFactory["eettH1000_p80_m30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
929  obsThFactory["eettH1000_m80_p30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
930  obsThFactory["eettH1000_p80_m20"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
931  obsThFactory["eettH1000_m80_p20"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
932  obsThFactory["eettH1000_p80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
933  obsThFactory["eettH1000_m80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
934  //
935  obsThFactory["eettH1400_p80_m30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
936  obsThFactory["eettH1400_m80_p30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
937  obsThFactory["eettH1400_p80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
938  obsThFactory["eettH1400_m80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
939  //
940  obsThFactory["eettH1500_p80_m30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
941  obsThFactory["eettH1500_m80_p30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
942  obsThFactory["eettH1500_p80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
943  obsThFactory["eettH1500_m80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
944  //
945  obsThFactory["eettH3000_p80_m30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
946  obsThFactory["eettH3000_m80_p30"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
947  obsThFactory["eettH3000_p80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
948  obsThFactory["eettH3000_m80_0"] = boost::bind(boost::factory<mueettHPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
949  //
950  obsThFactory["mumuH125"] = boost::bind(boost::factory<mummH*>(), _1, sqrt_s_leptcoll_125);
951  //
952  obsThFactory["epWBF1300"] = boost::bind(boost::factory<muepWBF*>(), _1, sqrt_s_LHeC_1_3);
953  obsThFactory["epWBF1800"] = boost::bind(boost::factory<muepWBF*>(), _1, sqrt_s_LHeC_1_8);
954  obsThFactory["epWBF3500"] = boost::bind(boost::factory<muepWBF*>(), _1, sqrt_s_FCCep_3_5);
955  obsThFactory["epWBF5000"] = boost::bind(boost::factory<muepWBF*>(), _1, sqrt_s_FCCep_5);
956  //
957  obsThFactory["epZBF1300"] = boost::bind(boost::factory<muepZBF*>(), _1, sqrt_s_LHeC_1_3);
958  obsThFactory["epZBF1800"] = boost::bind(boost::factory<muepZBF*>(), _1, sqrt_s_LHeC_1_8);
959  obsThFactory["epZBF3500"] = boost::bind(boost::factory<muepZBF*>(), _1, sqrt_s_FCCep_3_5);
960  obsThFactory["epZBF5000"] = boost::bind(boost::factory<muepZBF*>(), _1, sqrt_s_FCCep_5);
961  //----- Decay width and Branching ratios (ratios with SM) ----------
962  obsThFactory["GammaHRatio"] = boost::factory<GammaHRatio*>();
963  obsThFactory["BrHinvisible"] = boost::factory<BrHinvisible*>();
964  obsThFactory["BrHinvisibleNP"] = boost::factory<BrHinvisibleNP*>();
965  obsThFactory["BrHexotic"] = boost::factory<BrHexotic*>();
966  obsThFactory["BrHvisRatio"] = boost::factory<BrHtovisRatio*>();
967  obsThFactory["BrHtoinvRatio"] = boost::factory<BrHtoinvRatio*>();
968  obsThFactory["BrHggRatio"] = boost::factory<BrHtoggRatio*>();
969  obsThFactory["BrHWWRatio"] = boost::factory<BrHtoWWRatio*>();
970  obsThFactory["BrHWW2l2vRatio"] = boost::factory<BrHtoWW2l2vRatio*>();
971  obsThFactory["BrHZZRatio"] = boost::factory<BrHtoZZRatio*>();
972  obsThFactory["BrHZZ4lRatio"] = boost::factory<BrHtoZZ4lRatio*>();
973  obsThFactory["BrHZZ4eRatio"] = boost::factory<BrHtoZZ4eRatio*>();
974  obsThFactory["BrHZZ2e2muRatio"] = boost::factory<BrHtoZZ2e2muRatio*>();
975  obsThFactory["BrHZZ4muRatio"] = boost::factory<BrHtoZZ4muRatio*>();
976  obsThFactory["BrHZgaRatio"] = boost::factory<BrHtoZgaRatio*>();
977  obsThFactory["BrHZgallRatio"] = boost::factory<BrHtoZgallRatio*>();
978  obsThFactory["BrHZgaeeRatio"] = boost::factory<BrHtoZgaeeRatio*>();
979  obsThFactory["BrHZgamumuRatio"] = boost::factory<BrHtoZgamumuRatio*>();
980  obsThFactory["BrHgagaRatio"] = boost::factory<BrHtogagaRatio*>();
981  obsThFactory["BrHmumuRatio"] = boost::factory<BrHtomumuRatio*>();
982  obsThFactory["BrHtautauRatio"] = boost::factory<BrHtotautauRatio*>();
983  obsThFactory["BrHccRatio"] = boost::factory<BrHtoccRatio*>();
984  obsThFactory["BrHbbRatio"] = boost::factory<BrHtobbRatio*>();
985  //----- Ratios of BR (ratios with SM) ----------
986  obsThFactory["BrHtogaga_over_mumu_Ratio"] = boost::factory<BrHtogaga_over_mumu_Ratio*>();
987  obsThFactory["BrHtoZga_over_mumu_Ratio"] = boost::factory<BrHtoZga_over_mumu_Ratio*>();
988  obsThFactory["BrHtoZmumuga_over_mumu_Ratio"] = boost::factory<BrHtoZmumuga_over_mumu_Ratio*>();
989  obsThFactory["BrHtogaga_over_4l_Ratio"] = boost::factory<BrHtogaga_over_4l_Ratio*>();
990  obsThFactory["BrHtobb_over_4l_Ratio"] = boost::factory<BrHtobb_over_4l_Ratio*>();
991  obsThFactory["BrHto2l2v_over_4l_Ratio"] = boost::factory<BrHto2l2v_over_4l_Ratio*>();
992  obsThFactory["BrHtotautau_over_4l_Ratio"] = boost::factory<BrHtotautau_over_4l_Ratio*>();
993  obsThFactory["BrHtogaga_over_2e2mu_Ratio"] = boost::factory<BrHtogaga_over_2e2mu_Ratio*>();
994  obsThFactory["BrHtoZga_over_4l_Ratio"] = boost::factory<BrHtoZga_over_4l_Ratio*>();
995  obsThFactory["BrHtomumu_over_4l_Ratio"] = boost::factory<BrHtomumu_over_4l_Ratio*>();
996  obsThFactory["BrHtomumu_over_4mu_Ratio"] = boost::factory<BrHtomumu_over_4mu_Ratio*>();
997  obsThFactory["BrHto4l_over_gaga_Ratio"] = boost::factory<BrHto4l_over_gaga_Ratio*>();
998  obsThFactory["BrHtoZga_over_gaga_Ratio"] = boost::factory<BrHtoZga_over_gaga_Ratio*>();
999  obsThFactory["BrHtomumu_over_gaga_Ratio"] = boost::factory<BrHtomumu_over_gaga_Ratio*>();
1000  obsThFactory["BrHto2l2v_over_gaga_Ratio"] = boost::factory<BrHto2l2v_over_gaga_Ratio*>();
1001  //----- Special observables --------
1002  obsThFactory["muttHZbb_boost100"] = boost::bind(boost::factory<muttHZbbboost*>(), _1, sqrt_s_FCC100);
1003  obsThFactory["ggHgagaInt14"] = boost::bind(boost::factory<muggHgagaInt*>(), _1, sqrt_s_LHC14);
1004  //----- Full Signal strengths per prod and decay: Hadron colliders ----------
1005  obsThFactory["muggHgaga"] = boost::bind(boost::factory<muggHgaga*>(), _1, sqrt_s_LHC13);
1006  obsThFactory["muVBFHgaga"] = boost::bind(boost::factory<muVBFHgaga*>(), _1, sqrt_s_LHC13);
1007  obsThFactory["muVHgaga"] = boost::bind(boost::factory<muVHgaga*>(), _1, sqrt_s_LHC13);
1008  obsThFactory["muttHgaga"] = boost::bind(boost::factory<muttHgaga*>(), _1, sqrt_s_LHC13);
1009  obsThFactory["muggHZZ"] = boost::bind(boost::factory<muggHZZ*>(), _1, sqrt_s_LHC13);
1010  obsThFactory["muVBFHZZ"] = boost::bind(boost::factory<muVBFHZZ*>(), _1, sqrt_s_LHC13);
1011  obsThFactory["muVHZZ"] = boost::bind(boost::factory<muVHZZ*>(), _1, sqrt_s_LHC13);
1012  obsThFactory["muttHZZ"] = boost::bind(boost::factory<muttHZZ*>(), _1, sqrt_s_LHC13);
1013  obsThFactory["muggHWW"] = boost::bind(boost::factory<muggHWW*>(), _1, sqrt_s_LHC13);
1014  obsThFactory["muVBFHWW"] = boost::bind(boost::factory<muVBFHWW*>(), _1, sqrt_s_LHC13);
1015  obsThFactory["muVHWW"] = boost::bind(boost::factory<muVHWW*>(), _1, sqrt_s_LHC13);
1016  obsThFactory["muttHWW"] = boost::bind(boost::factory<muttHWW*>(), _1, sqrt_s_LHC13);
1017  obsThFactory["muggHtautau"] = boost::bind(boost::factory<muggHtautau*>(), _1, sqrt_s_LHC13);
1018  obsThFactory["muVBFHtautau"] = boost::bind(boost::factory<muVBFHtautau*>(), _1, sqrt_s_LHC13);
1019  obsThFactory["muVHtautau"] = boost::bind(boost::factory<muVHtautau*>(), _1, sqrt_s_LHC13);
1020  obsThFactory["muttHtautau"] = boost::bind(boost::factory<muttHtautau*>(), _1, sqrt_s_LHC13);
1021  obsThFactory["muggHbb"] = boost::bind(boost::factory<muggHbb*>(), _1, sqrt_s_LHC13);
1022  obsThFactory["muVBFHbb"] = boost::bind(boost::factory<muVBFHbb*>(), _1, sqrt_s_LHC13);
1023  obsThFactory["muVHbb"] = boost::bind(boost::factory<muVHbb*>(), _1, sqrt_s_LHC13);
1024  obsThFactory["muttHbb"] = boost::bind(boost::factory<muttHbb*>(), _1, sqrt_s_LHC13);
1025  // Indicating the energy explicit in the observable name
1026  obsThFactory["muggHgaga13"] = boost::bind(boost::factory<muggHgaga*>(), _1, sqrt_s_LHC13);
1027  obsThFactory["muVBFHgaga13"] = boost::bind(boost::factory<muVBFHgaga*>(), _1, sqrt_s_LHC13);
1028  obsThFactory["muZHgaga13"] = boost::bind(boost::factory<muZHgaga*>(), _1, sqrt_s_LHC13);
1029  obsThFactory["muWHgaga13"] = boost::bind(boost::factory<muWHgaga*>(), _1, sqrt_s_LHC13);
1030  obsThFactory["muVHgaga13"] = boost::bind(boost::factory<muVHgaga*>(), _1, sqrt_s_LHC13);
1031  obsThFactory["muttHgaga13"] = boost::bind(boost::factory<muttHgaga*>(), _1, sqrt_s_LHC13);
1032  obsThFactory["muggHZga13"] = boost::bind(boost::factory<muggHZga*>(), _1, sqrt_s_LHC13);
1033  obsThFactory["muVBFHZga13"] = boost::bind(boost::factory<muVBFHZga*>(), _1, sqrt_s_LHC13);
1034  obsThFactory["muZHZga13"] = boost::bind(boost::factory<muZHZga*>(), _1, sqrt_s_LHC13);
1035  obsThFactory["muWHZga13"] = boost::bind(boost::factory<muWHZga*>(), _1, sqrt_s_LHC13);
1036  obsThFactory["muVHZga13"] = boost::bind(boost::factory<muVHZga*>(), _1, sqrt_s_LHC13);
1037  obsThFactory["muttHZga13"] = boost::bind(boost::factory<muttHZga*>(), _1, sqrt_s_LHC13);
1038  obsThFactory["muggHZZ13"] = boost::bind(boost::factory<muggHZZ*>(), _1, sqrt_s_LHC13);
1039  obsThFactory["muVBFHZZ13"] = boost::bind(boost::factory<muVBFHZZ*>(), _1, sqrt_s_LHC13);
1040  obsThFactory["muZHZZ13"] = boost::bind(boost::factory<muZHZZ*>(), _1, sqrt_s_LHC13);
1041  obsThFactory["muWHZZ13"] = boost::bind(boost::factory<muWHZZ*>(), _1, sqrt_s_LHC13);
1042  obsThFactory["muVHZZ13"] = boost::bind(boost::factory<muVHZZ*>(), _1, sqrt_s_LHC13);
1043  obsThFactory["muttHZZ13"] = boost::bind(boost::factory<muttHZZ*>(), _1, sqrt_s_LHC13);
1044  //
1045  obsThFactory["muggHZZ4l13"] = boost::bind(boost::factory<muggHZZ4l*>(), _1, sqrt_s_LHC13);
1046  obsThFactory["muVBFHZZ4l13"] = boost::bind(boost::factory<muVBFHZZ4l*>(), _1, sqrt_s_LHC13);
1047  obsThFactory["muZHZZ4l13"] = boost::bind(boost::factory<muZHZZ4l*>(), _1, sqrt_s_LHC13);
1048  obsThFactory["muWHZZ4l13"] = boost::bind(boost::factory<muWHZZ4l*>(), _1, sqrt_s_LHC13);
1049  obsThFactory["muVHZZ4l13"] = boost::bind(boost::factory<muVHZZ4l*>(), _1, sqrt_s_LHC13);
1050  obsThFactory["muttHZZ4l13"] = boost::bind(boost::factory<muttHZZ4l*>(), _1, sqrt_s_LHC13);
1051  //
1052  obsThFactory["muggHWW13"] = boost::bind(boost::factory<muggHWW*>(), _1, sqrt_s_LHC13);
1053  obsThFactory["muVBFHWW13"] = boost::bind(boost::factory<muVBFHWW*>(), _1, sqrt_s_LHC13);
1054  obsThFactory["muZHWW13"] = boost::bind(boost::factory<muZHWW*>(), _1, sqrt_s_LHC13);
1055  obsThFactory["muWHWW13"] = boost::bind(boost::factory<muWHWW*>(), _1, sqrt_s_LHC13);
1056  obsThFactory["muVHWW13"] = boost::bind(boost::factory<muVHWW*>(), _1, sqrt_s_LHC13);
1057  obsThFactory["muttHWW13"] = boost::bind(boost::factory<muttHWW*>(), _1, sqrt_s_LHC13);
1058  //
1059  obsThFactory["muggHWW2l2v13"] = boost::bind(boost::factory<muggHWW2l2v*>(), _1, sqrt_s_LHC13);
1060  obsThFactory["muVBFHWW2l2v13"] = boost::bind(boost::factory<muVBFHWW2l2v*>(), _1, sqrt_s_LHC13);
1061  obsThFactory["muZHWW2l2v13"] = boost::bind(boost::factory<muZHWW2l2v*>(), _1, sqrt_s_LHC13);
1062  obsThFactory["muWHWW2l2v13"] = boost::bind(boost::factory<muWHWW2l2v*>(), _1, sqrt_s_LHC13);
1063  obsThFactory["muVHWW2l2v13"] = boost::bind(boost::factory<muVHWW2l2v*>(), _1, sqrt_s_LHC13);
1064  obsThFactory["muttHWW2l2v13"] = boost::bind(boost::factory<muttHWW2l2v*>(), _1, sqrt_s_LHC13);
1065  //
1066  obsThFactory["muggHmumu13"] = boost::bind(boost::factory<muggHmumu*>(), _1, sqrt_s_LHC13);
1067  obsThFactory["muVBFHmumu13"] = boost::bind(boost::factory<muVBFHmumu*>(), _1, sqrt_s_LHC13);
1068  obsThFactory["muZHmumu13"] = boost::bind(boost::factory<muZHmumu*>(), _1, sqrt_s_LHC13);
1069  obsThFactory["muWHmumu13"] = boost::bind(boost::factory<muWHmumu*>(), _1, sqrt_s_LHC13);
1070  obsThFactory["muVHmumu13"] = boost::bind(boost::factory<muVHmumu*>(), _1, sqrt_s_LHC13);
1071  obsThFactory["muttHmumu13"] = boost::bind(boost::factory<muttHmumu*>(), _1, sqrt_s_LHC13);
1072  obsThFactory["muggHtautau13"] = boost::bind(boost::factory<muggHtautau*>(), _1, sqrt_s_LHC13);
1073  obsThFactory["muVBFHtautau13"] = boost::bind(boost::factory<muVBFHtautau*>(), _1, sqrt_s_LHC13);
1074  obsThFactory["muVBFpVHtautau13"] = boost::bind(boost::factory<muVBFpVHtautau*>(), _1, sqrt_s_LHC13);
1075  obsThFactory["muZHtautau13"] = boost::bind(boost::factory<muZHtautau*>(), _1, sqrt_s_LHC13);
1076  obsThFactory["muWHtautau13"] = boost::bind(boost::factory<muWHtautau*>(), _1, sqrt_s_LHC13);
1077  obsThFactory["muVHtautau13"] = boost::bind(boost::factory<muVHtautau*>(), _1, sqrt_s_LHC13);
1078  obsThFactory["muttHtautau13"] = boost::bind(boost::factory<muttHtautau*>(), _1, sqrt_s_LHC13);
1079  obsThFactory["muggHbb13"] = boost::bind(boost::factory<muggHbb*>(), _1, sqrt_s_LHC13);
1080  obsThFactory["muVBFHbb13"] = boost::bind(boost::factory<muVBFHbb*>(), _1, sqrt_s_LHC13);
1081  obsThFactory["muZHbb13"] = boost::bind(boost::factory<muZHbb*>(), _1, sqrt_s_LHC13);
1082  obsThFactory["muWHbb13"] = boost::bind(boost::factory<muWHbb*>(), _1, sqrt_s_LHC13);
1083  obsThFactory["muVHbb13"] = boost::bind(boost::factory<muVHbb*>(), _1, sqrt_s_LHC13);
1084  obsThFactory["muttHbb13"] = boost::bind(boost::factory<muttHbb*>(), _1, sqrt_s_LHC13);
1085  //
1086  obsThFactory["muVBFBRinv13"] = boost::bind(boost::factory<muVBFBRinv*>(), _1, sqrt_s_LHC13);
1087  obsThFactory["muVHBRinv13"] = boost::bind(boost::factory<muVHBRinv*>(), _1, sqrt_s_LHC13);
1088  //
1089  obsThFactory["muVBFHinv13"] = boost::bind(boost::factory<muVBFHinv*>(), _1, sqrt_s_LHC13);
1090  obsThFactory["muVHinv13"] = boost::bind(boost::factory<muVHinv*>(), _1, sqrt_s_LHC13);
1091  //
1092  obsThFactory["muggHgaga14"] = boost::bind(boost::factory<muggHgaga*>(), _1, sqrt_s_LHC14);
1093  obsThFactory["muVBFHgaga14"] = boost::bind(boost::factory<muVBFHgaga*>(), _1, sqrt_s_LHC14);
1094  obsThFactory["muZHgaga14"] = boost::bind(boost::factory<muZHgaga*>(), _1, sqrt_s_LHC14);
1095  obsThFactory["muWHgaga14"] = boost::bind(boost::factory<muWHgaga*>(), _1, sqrt_s_LHC14);
1096  obsThFactory["muVHgaga14"] = boost::bind(boost::factory<muVHgaga*>(), _1, sqrt_s_LHC14);
1097  obsThFactory["muttHgaga14"] = boost::bind(boost::factory<muttHgaga*>(), _1, sqrt_s_LHC14);
1098  obsThFactory["muggHZga14"] = boost::bind(boost::factory<muggHZga*>(), _1, sqrt_s_LHC14);
1099  obsThFactory["muVBFHZga14"] = boost::bind(boost::factory<muVBFHZga*>(), _1, sqrt_s_LHC14);
1100  obsThFactory["muZHZga14"] = boost::bind(boost::factory<muZHZga*>(), _1, sqrt_s_LHC14);
1101  obsThFactory["muWHZga14"] = boost::bind(boost::factory<muWHZga*>(), _1, sqrt_s_LHC14);
1102  obsThFactory["muVHZga14"] = boost::bind(boost::factory<muVHZga*>(), _1, sqrt_s_LHC14);
1103  obsThFactory["muttHZga14"] = boost::bind(boost::factory<muttHZga*>(), _1, sqrt_s_LHC14);
1104  obsThFactory["muggHZZ14"] = boost::bind(boost::factory<muggHZZ*>(), _1, sqrt_s_LHC14);
1105  obsThFactory["muVBFHZZ14"] = boost::bind(boost::factory<muVBFHZZ*>(), _1, sqrt_s_LHC14);
1106  obsThFactory["muZHZZ14"] = boost::bind(boost::factory<muZHZZ*>(), _1, sqrt_s_LHC14);
1107  obsThFactory["muWHZZ14"] = boost::bind(boost::factory<muWHZZ*>(), _1, sqrt_s_LHC14);
1108  obsThFactory["muVHZZ14"] = boost::bind(boost::factory<muVHZZ*>(), _1, sqrt_s_LHC14);
1109  obsThFactory["muttHZZ14"] = boost::bind(boost::factory<muttHZZ*>(), _1, sqrt_s_LHC14);
1110  //
1111  obsThFactory["muggHZZ4l14"] = boost::bind(boost::factory<muggHZZ4l*>(), _1, sqrt_s_LHC14);
1112  obsThFactory["muVBFHZZ4l14"] = boost::bind(boost::factory<muVBFHZZ4l*>(), _1, sqrt_s_LHC14);
1113  obsThFactory["muZHZZ4l14"] = boost::bind(boost::factory<muZHZZ4l*>(), _1, sqrt_s_LHC14);
1114  obsThFactory["muWHZZ4l14"] = boost::bind(boost::factory<muWHZZ4l*>(), _1, sqrt_s_LHC14);
1115  obsThFactory["muVHZZ4l14"] = boost::bind(boost::factory<muVHZZ4l*>(), _1, sqrt_s_LHC14);
1116  obsThFactory["muttHZZ4l14"] = boost::bind(boost::factory<muttHZZ4l*>(), _1, sqrt_s_LHC14);
1117  //
1118  obsThFactory["muggHWW14"] = boost::bind(boost::factory<muggHWW*>(), _1, sqrt_s_LHC14);
1119  obsThFactory["muVBFHWW14"] = boost::bind(boost::factory<muVBFHWW*>(), _1, sqrt_s_LHC14);
1120  obsThFactory["muZHWW14"] = boost::bind(boost::factory<muZHWW*>(), _1, sqrt_s_LHC14);
1121  obsThFactory["muWHWW14"] = boost::bind(boost::factory<muWHWW*>(), _1, sqrt_s_LHC14);
1122  obsThFactory["muVHWW14"] = boost::bind(boost::factory<muVHWW*>(), _1, sqrt_s_LHC14);
1123  obsThFactory["muttHWW14"] = boost::bind(boost::factory<muttHWW*>(), _1, sqrt_s_LHC14);
1124  //
1125  obsThFactory["muggHWW2l2v14"] = boost::bind(boost::factory<muggHWW2l2v*>(), _1, sqrt_s_LHC14);
1126  obsThFactory["muVBFHWW2l2v14"] = boost::bind(boost::factory<muVBFHWW2l2v*>(), _1, sqrt_s_LHC14);
1127  obsThFactory["muZHWW2l2v14"] = boost::bind(boost::factory<muZHWW2l2v*>(), _1, sqrt_s_LHC14);
1128  obsThFactory["muWHWW2l2v14"] = boost::bind(boost::factory<muWHWW2l2v*>(), _1, sqrt_s_LHC14);
1129  obsThFactory["muVHWW2l2v14"] = boost::bind(boost::factory<muVHWW2l2v*>(), _1, sqrt_s_LHC14);
1130  obsThFactory["muttHWW2l2v14"] = boost::bind(boost::factory<muttHWW2l2v*>(), _1, sqrt_s_LHC14);
1131  //
1132  obsThFactory["muggHmumu14"] = boost::bind(boost::factory<muggHmumu*>(), _1, sqrt_s_LHC14);
1133  obsThFactory["muVBFHmumu14"] = boost::bind(boost::factory<muVBFHmumu*>(), _1, sqrt_s_LHC14);
1134  obsThFactory["muZHmumu14"] = boost::bind(boost::factory<muZHmumu*>(), _1, sqrt_s_LHC14);
1135  obsThFactory["muWHmumu14"] = boost::bind(boost::factory<muWHmumu*>(), _1, sqrt_s_LHC14);
1136  obsThFactory["muVHmumu14"] = boost::bind(boost::factory<muVHmumu*>(), _1, sqrt_s_LHC14);
1137  obsThFactory["muttHmumu14"] = boost::bind(boost::factory<muttHmumu*>(), _1, sqrt_s_LHC14);
1138  obsThFactory["muggHtautau14"] = boost::bind(boost::factory<muggHtautau*>(), _1, sqrt_s_LHC14);
1139  obsThFactory["muVBFHtautau14"] = boost::bind(boost::factory<muVBFHtautau*>(), _1, sqrt_s_LHC14);
1140  obsThFactory["muZHtautau14"] = boost::bind(boost::factory<muZHtautau*>(), _1, sqrt_s_LHC14);
1141  obsThFactory["muWHtautau14"] = boost::bind(boost::factory<muWHtautau*>(), _1, sqrt_s_LHC14);
1142  obsThFactory["muVHtautau14"] = boost::bind(boost::factory<muVHtautau*>(), _1, sqrt_s_LHC14);
1143  obsThFactory["muttHtautau14"] = boost::bind(boost::factory<muttHtautau*>(), _1, sqrt_s_LHC14);
1144  obsThFactory["muggHbb14"] = boost::bind(boost::factory<muggHbb*>(), _1, sqrt_s_LHC14);
1145  obsThFactory["muVBFHbb14"] = boost::bind(boost::factory<muVBFHbb*>(), _1, sqrt_s_LHC14);
1146  obsThFactory["muZHbb14"] = boost::bind(boost::factory<muZHbb*>(), _1, sqrt_s_LHC14);
1147  obsThFactory["muWHbb14"] = boost::bind(boost::factory<muWHbb*>(), _1, sqrt_s_LHC14);
1148  obsThFactory["muVHbb14"] = boost::bind(boost::factory<muVHbb*>(), _1, sqrt_s_LHC14);
1149  obsThFactory["muttHbb14"] = boost::bind(boost::factory<muttHbb*>(), _1, sqrt_s_LHC14);
1150  //
1151  obsThFactory["muVBFBRinv14"] = boost::bind(boost::factory<muVBFBRinv*>(), _1, sqrt_s_LHC14);
1152  obsThFactory["muVHBRinv14"] = boost::bind(boost::factory<muVHBRinv*>(), _1, sqrt_s_LHC14);
1153  //
1154  obsThFactory["muVBFHinv14"] = boost::bind(boost::factory<muVBFHinv*>(), _1, sqrt_s_LHC14);
1155  obsThFactory["muVHinv14"] = boost::bind(boost::factory<muVHinv*>(), _1, sqrt_s_LHC14);
1156  //
1157  obsThFactory["muggHgaga27"] = boost::bind(boost::factory<muggHgaga*>(), _1, sqrt_s_LHC27);
1158  obsThFactory["muVBFHgaga27"] = boost::bind(boost::factory<muVBFHgaga*>(), _1, sqrt_s_LHC27);
1159  obsThFactory["muZHgaga27"] = boost::bind(boost::factory<muZHgaga*>(), _1, sqrt_s_LHC27);
1160  obsThFactory["muWHgaga27"] = boost::bind(boost::factory<muWHgaga*>(), _1, sqrt_s_LHC27);
1161  obsThFactory["muVHgaga27"] = boost::bind(boost::factory<muVHgaga*>(), _1, sqrt_s_LHC27);
1162  obsThFactory["muttHgaga27"] = boost::bind(boost::factory<muttHgaga*>(), _1, sqrt_s_LHC27);
1163  obsThFactory["muggHZga27"] = boost::bind(boost::factory<muggHZga*>(), _1, sqrt_s_LHC27);
1164  obsThFactory["muVBFHZga27"] = boost::bind(boost::factory<muVBFHZga*>(), _1, sqrt_s_LHC27);
1165  obsThFactory["muZHZga27"] = boost::bind(boost::factory<muZHZga*>(), _1, sqrt_s_LHC27);
1166  obsThFactory["muWHZga27"] = boost::bind(boost::factory<muWHZga*>(), _1, sqrt_s_LHC27);
1167  obsThFactory["muVHZga27"] = boost::bind(boost::factory<muVHZga*>(), _1, sqrt_s_LHC27);
1168  obsThFactory["muttHZga27"] = boost::bind(boost::factory<muttHZga*>(), _1, sqrt_s_LHC27);
1169  obsThFactory["muggHZZ27"] = boost::bind(boost::factory<muggHZZ*>(), _1, sqrt_s_LHC27);
1170  obsThFactory["muVBFHZZ27"] = boost::bind(boost::factory<muVBFHZZ*>(), _1, sqrt_s_LHC27);
1171  obsThFactory["muZHZZ27"] = boost::bind(boost::factory<muZHZZ*>(), _1, sqrt_s_LHC27);
1172  obsThFactory["muWHZZ27"] = boost::bind(boost::factory<muWHZZ*>(), _1, sqrt_s_LHC27);
1173  obsThFactory["muVHZZ27"] = boost::bind(boost::factory<muVHZZ*>(), _1, sqrt_s_LHC27);
1174  obsThFactory["muttHZZ27"] = boost::bind(boost::factory<muttHZZ*>(), _1, sqrt_s_LHC27);
1175  //
1176  obsThFactory["muggHZZ4l27"] = boost::bind(boost::factory<muggHZZ4l*>(), _1, sqrt_s_LHC27);
1177  obsThFactory["muVBFHZZ4l27"] = boost::bind(boost::factory<muVBFHZZ4l*>(), _1, sqrt_s_LHC27);
1178  obsThFactory["muZHZZ4l27"] = boost::bind(boost::factory<muZHZZ4l*>(), _1, sqrt_s_LHC27);
1179  obsThFactory["muWHZZ4l27"] = boost::bind(boost::factory<muWHZZ4l*>(), _1, sqrt_s_LHC27);
1180  obsThFactory["muVHZZ4l27"] = boost::bind(boost::factory<muVHZZ4l*>(), _1, sqrt_s_LHC27);
1181  obsThFactory["muttHZZ4l27"] = boost::bind(boost::factory<muttHZZ4l*>(), _1, sqrt_s_LHC27);
1182  //
1183  obsThFactory["muggHWW27"] = boost::bind(boost::factory<muggHWW*>(), _1, sqrt_s_LHC27);
1184  obsThFactory["muVBFHWW27"] = boost::bind(boost::factory<muVBFHWW*>(), _1, sqrt_s_LHC27);
1185  obsThFactory["muZHWW27"] = boost::bind(boost::factory<muZHWW*>(), _1, sqrt_s_LHC27);
1186  obsThFactory["muWHWW27"] = boost::bind(boost::factory<muWHWW*>(), _1, sqrt_s_LHC27);
1187  obsThFactory["muVHWW27"] = boost::bind(boost::factory<muVHWW*>(), _1, sqrt_s_LHC27);
1188  obsThFactory["muttHWW27"] = boost::bind(boost::factory<muttHWW*>(), _1, sqrt_s_LHC27);
1189  //
1190  obsThFactory["muggHWW2l2v27"] = boost::bind(boost::factory<muggHWW2l2v*>(), _1, sqrt_s_LHC27);
1191  obsThFactory["muVBFHWW2l2v27"] = boost::bind(boost::factory<muVBFHWW2l2v*>(), _1, sqrt_s_LHC27);
1192  obsThFactory["muZHWW2l2v27"] = boost::bind(boost::factory<muZHWW2l2v*>(), _1, sqrt_s_LHC27);
1193  obsThFactory["muWHWW2l2v27"] = boost::bind(boost::factory<muWHWW2l2v*>(), _1, sqrt_s_LHC27);
1194  obsThFactory["muVHWW2l2v27"] = boost::bind(boost::factory<muVHWW2l2v*>(), _1, sqrt_s_LHC27);
1195  obsThFactory["muttHWW2l2v27"] = boost::bind(boost::factory<muttHWW2l2v*>(), _1, sqrt_s_LHC27);
1196  //
1197  obsThFactory["muggHmumu27"] = boost::bind(boost::factory<muggHmumu*>(), _1, sqrt_s_LHC27);
1198  obsThFactory["muVBFHmumu27"] = boost::bind(boost::factory<muVBFHmumu*>(), _1, sqrt_s_LHC27);
1199  obsThFactory["muZHmumu27"] = boost::bind(boost::factory<muZHmumu*>(), _1, sqrt_s_LHC27);
1200  obsThFactory["muWHmumu27"] = boost::bind(boost::factory<muWHmumu*>(), _1, sqrt_s_LHC27);
1201  obsThFactory["muVHmumu27"] = boost::bind(boost::factory<muVHmumu*>(), _1, sqrt_s_LHC27);
1202  obsThFactory["muttHmumu27"] = boost::bind(boost::factory<muttHmumu*>(), _1, sqrt_s_LHC27);
1203  obsThFactory["muggHtautau27"] = boost::bind(boost::factory<muggHtautau*>(), _1, sqrt_s_LHC27);
1204  obsThFactory["muVBFHtautau27"] = boost::bind(boost::factory<muVBFHtautau*>(), _1, sqrt_s_LHC27);
1205  obsThFactory["muZHtautau27"] = boost::bind(boost::factory<muZHtautau*>(), _1, sqrt_s_LHC27);
1206  obsThFactory["muWHtautau27"] = boost::bind(boost::factory<muWHtautau*>(), _1, sqrt_s_LHC27);
1207  obsThFactory["muVHtautau27"] = boost::bind(boost::factory<muVHtautau*>(), _1, sqrt_s_LHC27);
1208  obsThFactory["muttHtautau27"] = boost::bind(boost::factory<muttHtautau*>(), _1, sqrt_s_LHC27);
1209  obsThFactory["muggHbb27"] = boost::bind(boost::factory<muggHbb*>(), _1, sqrt_s_LHC27);
1210  obsThFactory["muVBFHbb27"] = boost::bind(boost::factory<muVBFHbb*>(), _1, sqrt_s_LHC27);
1211  obsThFactory["muZHbb27"] = boost::bind(boost::factory<muZHbb*>(), _1, sqrt_s_LHC27);
1212  obsThFactory["muWHbb27"] = boost::bind(boost::factory<muWHbb*>(), _1, sqrt_s_LHC27);
1213  obsThFactory["muVHbb27"] = boost::bind(boost::factory<muVHbb*>(), _1, sqrt_s_LHC27);
1214  obsThFactory["muttHbb27"] = boost::bind(boost::factory<muttHbb*>(), _1, sqrt_s_LHC27);
1215  //
1216  obsThFactory["muVBFBRinv27"] = boost::bind(boost::factory<muVBFBRinv*>(), _1, sqrt_s_LHC27);
1217  obsThFactory["muVHBRinv27"] = boost::bind(boost::factory<muVHBRinv*>(), _1, sqrt_s_LHC27);
1218  //
1219  obsThFactory["muVBFHinv27"] = boost::bind(boost::factory<muVBFHinv*>(), _1, sqrt_s_LHC27);
1220  obsThFactory["muVHinv27"] = boost::bind(boost::factory<muVHinv*>(), _1, sqrt_s_LHC27);
1221  //
1222  obsThFactory["muggHgaga100"] = boost::bind(boost::factory<muggHgaga*>(), _1, sqrt_s_FCC100);
1223  obsThFactory["muVBFHgaga100"] = boost::bind(boost::factory<muVBFHgaga*>(), _1, sqrt_s_FCC100);
1224  obsThFactory["muZHgaga100"] = boost::bind(boost::factory<muZHgaga*>(), _1, sqrt_s_FCC100);
1225  obsThFactory["muWHgaga100"] = boost::bind(boost::factory<muWHgaga*>(), _1, sqrt_s_FCC100);
1226  obsThFactory["muVHgaga100"] = boost::bind(boost::factory<muVHgaga*>(), _1, sqrt_s_FCC100);
1227  obsThFactory["muttHgaga100"] = boost::bind(boost::factory<muttHgaga*>(), _1, sqrt_s_FCC100);
1228  obsThFactory["muggHZga100"] = boost::bind(boost::factory<muggHZga*>(), _1, sqrt_s_FCC100);
1229  obsThFactory["muggHZgamumu100"] = boost::bind(boost::factory<muggHZgamumu*>(), _1, sqrt_s_FCC100);
1230  obsThFactory["muVBFHZga100"] = boost::bind(boost::factory<muVBFHZga*>(), _1, sqrt_s_FCC100);
1231  obsThFactory["muZHZga100"] = boost::bind(boost::factory<muZHZga*>(), _1, sqrt_s_FCC100);
1232  obsThFactory["muWHZga100"] = boost::bind(boost::factory<muWHZga*>(), _1, sqrt_s_FCC100);
1233  obsThFactory["muVHZga100"] = boost::bind(boost::factory<muVHZga*>(), _1, sqrt_s_FCC100);
1234  obsThFactory["muttHZga100"] = boost::bind(boost::factory<muttHZga*>(), _1, sqrt_s_FCC100);
1235  obsThFactory["muggHZZ100"] = boost::bind(boost::factory<muggHZZ*>(), _1, sqrt_s_FCC100);
1236  obsThFactory["muVBFHZZ100"] = boost::bind(boost::factory<muVBFHZZ*>(), _1, sqrt_s_FCC100);
1237  obsThFactory["muZHZZ100"] = boost::bind(boost::factory<muZHZZ*>(), _1, sqrt_s_FCC100);
1238  obsThFactory["muWHZZ100"] = boost::bind(boost::factory<muWHZZ*>(), _1, sqrt_s_FCC100);
1239  obsThFactory["muVHZZ100"] = boost::bind(boost::factory<muVHZZ*>(), _1, sqrt_s_FCC100);
1240  obsThFactory["muttHZZ100"] = boost::bind(boost::factory<muttHZZ*>(), _1, sqrt_s_FCC100);
1241  //
1242  obsThFactory["muggHZZ4l100"] = boost::bind(boost::factory<muggHZZ4l*>(), _1, sqrt_s_FCC100);
1243  obsThFactory["muggHZZ4mu100"] = boost::bind(boost::factory<muggHZZ4mu*>(), _1, sqrt_s_FCC100);
1244  obsThFactory["muVBFHZZ4l100"] = boost::bind(boost::factory<muVBFHZZ4l*>(), _1, sqrt_s_FCC100);
1245  obsThFactory["muZHZZ4l100"] = boost::bind(boost::factory<muZHZZ4l*>(), _1, sqrt_s_FCC100);
1246  obsThFactory["muWHZZ4l100"] = boost::bind(boost::factory<muWHZZ4l*>(), _1, sqrt_s_FCC100);
1247  obsThFactory["muVHZZ4l100"] = boost::bind(boost::factory<muVHZZ4l*>(), _1, sqrt_s_FCC100);
1248  obsThFactory["muttHZZ4l100"] = boost::bind(boost::factory<muttHZZ4l*>(), _1, sqrt_s_FCC100);
1249  //
1250  obsThFactory["muggHWW100"] = boost::bind(boost::factory<muggHWW*>(), _1, sqrt_s_FCC100);
1251  obsThFactory["muVBFHWW100"] = boost::bind(boost::factory<muVBFHWW*>(), _1, sqrt_s_FCC100);
1252  obsThFactory["muZHWW100"] = boost::bind(boost::factory<muZHWW*>(), _1, sqrt_s_FCC100);
1253  obsThFactory["muWHWW100"] = boost::bind(boost::factory<muWHWW*>(), _1, sqrt_s_FCC100);
1254  obsThFactory["muVHWW100"] = boost::bind(boost::factory<muVHWW*>(), _1, sqrt_s_FCC100);
1255  obsThFactory["muttHWW100"] = boost::bind(boost::factory<muttHWW*>(), _1, sqrt_s_FCC100);
1256  //
1257  obsThFactory["muggHWW2l2v100"] = boost::bind(boost::factory<muggHWW2l2v*>(), _1, sqrt_s_FCC100);
1258  obsThFactory["muVBFHWW2l2v100"] = boost::bind(boost::factory<muVBFHWW2l2v*>(), _1, sqrt_s_FCC100);
1259  obsThFactory["muZHWW2l2v100"] = boost::bind(boost::factory<muZHWW2l2v*>(), _1, sqrt_s_FCC100);
1260  obsThFactory["muWHWW2l2v100"] = boost::bind(boost::factory<muWHWW2l2v*>(), _1, sqrt_s_FCC100);
1261  obsThFactory["muVHWW2l2v100"] = boost::bind(boost::factory<muVHWW2l2v*>(), _1, sqrt_s_FCC100);
1262  obsThFactory["muttHWW2l2v100"] = boost::bind(boost::factory<muttHWW2l2v*>(), _1, sqrt_s_FCC100);
1263  //
1264  obsThFactory["muggHmumu100"] = boost::bind(boost::factory<muggHmumu*>(), _1, sqrt_s_FCC100);
1265  obsThFactory["muVBFHmumu100"] = boost::bind(boost::factory<muVBFHmumu*>(), _1, sqrt_s_FCC100);
1266  obsThFactory["muZHmumu100"] = boost::bind(boost::factory<muZHmumu*>(), _1, sqrt_s_FCC100);
1267  obsThFactory["muWHmumu100"] = boost::bind(boost::factory<muWHmumu*>(), _1, sqrt_s_FCC100);
1268  obsThFactory["muVHmumu100"] = boost::bind(boost::factory<muVHmumu*>(), _1, sqrt_s_FCC100);
1269  obsThFactory["muttHmumu100"] = boost::bind(boost::factory<muttHmumu*>(), _1, sqrt_s_FCC100);
1270  obsThFactory["muggHtautau100"] = boost::bind(boost::factory<muggHtautau*>(), _1, sqrt_s_FCC100);
1271  obsThFactory["muVBFHtautau100"] = boost::bind(boost::factory<muVBFHtautau*>(), _1, sqrt_s_FCC100);
1272  obsThFactory["muZHtautau100"] = boost::bind(boost::factory<muZHtautau*>(), _1, sqrt_s_FCC100);
1273  obsThFactory["muWHtautau100"] = boost::bind(boost::factory<muWHtautau*>(), _1, sqrt_s_FCC100);
1274  obsThFactory["muVHtautau100"] = boost::bind(boost::factory<muVHtautau*>(), _1, sqrt_s_FCC100);
1275  obsThFactory["muttHtautau100"] = boost::bind(boost::factory<muttHtautau*>(), _1, sqrt_s_FCC100);
1276  obsThFactory["muggHbb100"] = boost::bind(boost::factory<muggHbb*>(), _1, sqrt_s_FCC100);
1277  obsThFactory["muVBFHbb100"] = boost::bind(boost::factory<muVBFHbb*>(), _1, sqrt_s_FCC100);
1278  obsThFactory["muZHbb100"] = boost::bind(boost::factory<muZHbb*>(), _1, sqrt_s_FCC100);
1279  obsThFactory["muWHbb100"] = boost::bind(boost::factory<muWHbb*>(), _1, sqrt_s_FCC100);
1280  obsThFactory["muVHbb100"] = boost::bind(boost::factory<muVHbb*>(), _1, sqrt_s_FCC100);
1281  obsThFactory["muttHbb100"] = boost::bind(boost::factory<muttHbb*>(), _1, sqrt_s_FCC100);
1282  //
1283  obsThFactory["muVBFBRinv100"] = boost::bind(boost::factory<muVBFBRinv*>(), _1, sqrt_s_FCC100);
1284  obsThFactory["muVHBRinv100"] = boost::bind(boost::factory<muVHBRinv*>(), _1, sqrt_s_FCC100);
1285  //
1286  obsThFactory["muVBFHinv100"] = boost::bind(boost::factory<muVBFHinv*>(), _1, sqrt_s_FCC100);
1287  obsThFactory["muVHinv100"] = boost::bind(boost::factory<muVHinv*>(), _1, sqrt_s_FCC100);
1288  //
1289  obsThFactory["muppHmumu8"] = boost::bind(boost::factory<muppHmumu*>(), _1, sqrt_s_LHC8);
1290  obsThFactory["muppHmumu13"] = boost::bind(boost::factory<muppHmumu*>(), _1, sqrt_s_LHC13);
1291  obsThFactory["muppHZga8"] = boost::bind(boost::factory<muppHZga*>(), _1, sqrt_s_LHC8);
1292  obsThFactory["muppHZga13"] = boost::bind(boost::factory<muppHZga*>(), _1, sqrt_s_LHC13);
1293  obsThFactory["muggHH2ga2b14"] = boost::bind(boost::factory<muggHH2ga2b*>(), _1, sqrt_s_LHC14);
1294  obsThFactory["muggHH2ga2b100"] = boost::bind(boost::factory<muggHH2ga2b*>(), _1, sqrt_s_FCC100);
1295  //
1296  // Special version of the H signal strength at Hadron collider with separate theory uncertainty per prod x decay channel
1297  // Only for 14 and 27 TeV
1298  //
1299  obsThFactory["muTHUggHgaga14"] = boost::bind(boost::factory<muTHUggHgaga*>(), _1, sqrt_s_LHC14);
1300  obsThFactory["muTHUVBFHgaga14"] = boost::bind(boost::factory<muTHUVBFHgaga*>(), _1, sqrt_s_LHC14);
1301  obsThFactory["muTHUZHgaga14"] = boost::bind(boost::factory<muTHUZHgaga*>(), _1, sqrt_s_LHC14);
1302  obsThFactory["muTHUWHgaga14"] = boost::bind(boost::factory<muTHUWHgaga*>(), _1, sqrt_s_LHC14);
1303  obsThFactory["muTHUVHgaga14"] = boost::bind(boost::factory<muTHUVHgaga*>(), _1, sqrt_s_LHC14);
1304  obsThFactory["muTHUttHgaga14"] = boost::bind(boost::factory<muTHUttHgaga*>(), _1, sqrt_s_LHC14);
1305  obsThFactory["muTHUggHZga14"] = boost::bind(boost::factory<muTHUggHZga*>(), _1, sqrt_s_LHC14);
1306  obsThFactory["muTHUVBFHZga14"] = boost::bind(boost::factory<muTHUVBFHZga*>(), _1, sqrt_s_LHC14);
1307  obsThFactory["muTHUZHZga14"] = boost::bind(boost::factory<muTHUZHZga*>(), _1, sqrt_s_LHC14);
1308  obsThFactory["muTHUWHZga14"] = boost::bind(boost::factory<muTHUWHZga*>(), _1, sqrt_s_LHC14);
1309  obsThFactory["muTHUVHZga14"] = boost::bind(boost::factory<muTHUVHZga*>(), _1, sqrt_s_LHC14);
1310  obsThFactory["muTHUttHZga14"] = boost::bind(boost::factory<muTHUttHZga*>(), _1, sqrt_s_LHC14);
1311  obsThFactory["muTHUggHZZ14"] = boost::bind(boost::factory<muTHUggHZZ*>(), _1, sqrt_s_LHC14);
1312  obsThFactory["muTHUVBFHZZ14"] = boost::bind(boost::factory<muTHUVBFHZZ*>(), _1, sqrt_s_LHC14);
1313  obsThFactory["muTHUZHZZ14"] = boost::bind(boost::factory<muTHUZHZZ*>(), _1, sqrt_s_LHC14);
1314  obsThFactory["muTHUWHZZ14"] = boost::bind(boost::factory<muTHUWHZZ*>(), _1, sqrt_s_LHC14);
1315  obsThFactory["muTHUVHZZ14"] = boost::bind(boost::factory<muTHUVHZZ*>(), _1, sqrt_s_LHC14);
1316  obsThFactory["muTHUttHZZ14"] = boost::bind(boost::factory<muTHUttHZZ*>(), _1, sqrt_s_LHC14);
1317  //
1318  obsThFactory["muTHUggHZZ4l14"] = boost::bind(boost::factory<muTHUggHZZ4l*>(), _1, sqrt_s_LHC14);
1319  obsThFactory["muTHUVBFHZZ4l14"] = boost::bind(boost::factory<muTHUVBFHZZ4l*>(), _1, sqrt_s_LHC14);
1320  obsThFactory["muTHUZHZZ4l14"] = boost::bind(boost::factory<muTHUZHZZ4l*>(), _1, sqrt_s_LHC14);
1321  obsThFactory["muTHUWHZZ4l14"] = boost::bind(boost::factory<muTHUWHZZ4l*>(), _1, sqrt_s_LHC14);
1322  obsThFactory["muTHUVHZZ4l14"] = boost::bind(boost::factory<muTHUVHZZ4l*>(), _1, sqrt_s_LHC14);
1323  obsThFactory["muTHUttHZZ4l14"] = boost::bind(boost::factory<muTHUttHZZ4l*>(), _1, sqrt_s_LHC14);
1324  //
1325  obsThFactory["muTHUggHWW14"] = boost::bind(boost::factory<muTHUggHWW*>(), _1, sqrt_s_LHC14);
1326  obsThFactory["muTHUVBFHWW14"] = boost::bind(boost::factory<muTHUVBFHWW*>(), _1, sqrt_s_LHC14);
1327  obsThFactory["muTHUZHWW14"] = boost::bind(boost::factory<muTHUZHWW*>(), _1, sqrt_s_LHC14);
1328  obsThFactory["muTHUWHWW14"] = boost::bind(boost::factory<muTHUWHWW*>(), _1, sqrt_s_LHC14);
1329  obsThFactory["muTHUVHWW14"] = boost::bind(boost::factory<muTHUVHWW*>(), _1, sqrt_s_LHC14);
1330  obsThFactory["muTHUttHWW14"] = boost::bind(boost::factory<muTHUttHWW*>(), _1, sqrt_s_LHC14);
1331  //
1332  obsThFactory["muTHUggHWW2l2v14"] = boost::bind(boost::factory<muTHUggHWW2l2v*>(), _1, sqrt_s_LHC14);
1333  obsThFactory["muTHUVBFHWW2l2v14"] = boost::bind(boost::factory<muTHUVBFHWW2l2v*>(), _1, sqrt_s_LHC14);
1334  obsThFactory["muTHUZHWW2l2v14"] = boost::bind(boost::factory<muTHUZHWW2l2v*>(), _1, sqrt_s_LHC14);
1335  obsThFactory["muTHUWHWW2l2v14"] = boost::bind(boost::factory<muTHUWHWW2l2v*>(), _1, sqrt_s_LHC14);
1336  obsThFactory["muTHUVHWW2l2v14"] = boost::bind(boost::factory<muTHUVHWW2l2v*>(), _1, sqrt_s_LHC14);
1337  obsThFactory["muTHUttHWW2l2v14"] = boost::bind(boost::factory<muTHUttHWW2l2v*>(), _1, sqrt_s_LHC14);
1338  //
1339  obsThFactory["muTHUggHmumu14"] = boost::bind(boost::factory<muTHUggHmumu*>(), _1, sqrt_s_LHC14);
1340  obsThFactory["muTHUVBFHmumu14"] = boost::bind(boost::factory<muTHUVBFHmumu*>(), _1, sqrt_s_LHC14);
1341  obsThFactory["muTHUZHmumu14"] = boost::bind(boost::factory<muTHUZHmumu*>(), _1, sqrt_s_LHC14);
1342  obsThFactory["muTHUWHmumu14"] = boost::bind(boost::factory<muTHUWHmumu*>(), _1, sqrt_s_LHC14);
1343  obsThFactory["muTHUVHmumu14"] = boost::bind(boost::factory<muTHUVHmumu*>(), _1, sqrt_s_LHC14);
1344  obsThFactory["muTHUttHmumu14"] = boost::bind(boost::factory<muTHUttHmumu*>(), _1, sqrt_s_LHC14);
1345  obsThFactory["muTHUggHtautau14"] = boost::bind(boost::factory<muTHUggHtautau*>(), _1, sqrt_s_LHC14);
1346  obsThFactory["muTHUVBFHtautau14"] = boost::bind(boost::factory<muTHUVBFHtautau*>(), _1, sqrt_s_LHC14);
1347  obsThFactory["muTHUZHtautau14"] = boost::bind(boost::factory<muTHUZHtautau*>(), _1, sqrt_s_LHC14);
1348  obsThFactory["muTHUWHtautau14"] = boost::bind(boost::factory<muTHUWHtautau*>(), _1, sqrt_s_LHC14);
1349  obsThFactory["muTHUVHtautau14"] = boost::bind(boost::factory<muTHUVHtautau*>(), _1, sqrt_s_LHC14);
1350  obsThFactory["muTHUttHtautau14"] = boost::bind(boost::factory<muTHUttHtautau*>(), _1, sqrt_s_LHC14);
1351  obsThFactory["muTHUggHbb14"] = boost::bind(boost::factory<muTHUggHbb*>(), _1, sqrt_s_LHC14);
1352  obsThFactory["muTHUVBFHbb14"] = boost::bind(boost::factory<muTHUVBFHbb*>(), _1, sqrt_s_LHC14);
1353  obsThFactory["muTHUZHbb14"] = boost::bind(boost::factory<muTHUZHbb*>(), _1, sqrt_s_LHC14);
1354  obsThFactory["muTHUWHbb14"] = boost::bind(boost::factory<muTHUWHbb*>(), _1, sqrt_s_LHC14);
1355  obsThFactory["muTHUVHbb14"] = boost::bind(boost::factory<muTHUVHbb*>(), _1, sqrt_s_LHC14);
1356  obsThFactory["muTHUttHbb14"] = boost::bind(boost::factory<muTHUttHbb*>(), _1, sqrt_s_LHC14);
1357  //
1358  obsThFactory["muTHUVBFBRinv14"] = boost::bind(boost::factory<muTHUVBFBRinv*>(), _1, sqrt_s_LHC14);
1359  obsThFactory["muTHUVHBRinv14"] = boost::bind(boost::factory<muTHUVHBRinv*>(), _1, sqrt_s_LHC14);
1360  //
1361  obsThFactory["muTHUVBFHinv14"] = boost::bind(boost::factory<muTHUVBFHinv*>(), _1, sqrt_s_LHC14);
1362  obsThFactory["muTHUVHinv14"] = boost::bind(boost::factory<muTHUVHinv*>(), _1, sqrt_s_LHC14);
1363  //
1364  obsThFactory["muTHUggHgaga27"] = boost::bind(boost::factory<muTHUggHgaga*>(), _1, sqrt_s_LHC27);
1365  obsThFactory["muTHUVBFHgaga27"] = boost::bind(boost::factory<muTHUVBFHgaga*>(), _1, sqrt_s_LHC27);
1366  obsThFactory["muTHUZHgaga27"] = boost::bind(boost::factory<muTHUZHgaga*>(), _1, sqrt_s_LHC27);
1367  obsThFactory["muTHUWHgaga27"] = boost::bind(boost::factory<muTHUWHgaga*>(), _1, sqrt_s_LHC27);
1368  obsThFactory["muTHUVHgaga27"] = boost::bind(boost::factory<muTHUVHgaga*>(), _1, sqrt_s_LHC27);
1369  obsThFactory["muTHUttHgaga27"] = boost::bind(boost::factory<muTHUttHgaga*>(), _1, sqrt_s_LHC27);
1370  obsThFactory["muTHUggHZga27"] = boost::bind(boost::factory<muTHUggHZga*>(), _1, sqrt_s_LHC27);
1371  obsThFactory["muTHUVBFHZga27"] = boost::bind(boost::factory<muTHUVBFHZga*>(), _1, sqrt_s_LHC27);
1372  obsThFactory["muTHUZHZga27"] = boost::bind(boost::factory<muTHUZHZga*>(), _1, sqrt_s_LHC27);
1373  obsThFactory["muTHUWHZga27"] = boost::bind(boost::factory<muTHUWHZga*>(), _1, sqrt_s_LHC27);
1374  obsThFactory["muTHUVHZga27"] = boost::bind(boost::factory<muTHUVHZga*>(), _1, sqrt_s_LHC27);
1375  obsThFactory["muTHUttHZga27"] = boost::bind(boost::factory<muTHUttHZga*>(), _1, sqrt_s_LHC27);
1376  obsThFactory["muTHUggHZZ27"] = boost::bind(boost::factory<muTHUggHZZ*>(), _1, sqrt_s_LHC27);
1377  obsThFactory["muTHUVBFHZZ27"] = boost::bind(boost::factory<muTHUVBFHZZ*>(), _1, sqrt_s_LHC27);
1378  obsThFactory["muTHUZHZZ27"] = boost::bind(boost::factory<muTHUZHZZ*>(), _1, sqrt_s_LHC27);
1379  obsThFactory["muTHUWHZZ27"] = boost::bind(boost::factory<muTHUWHZZ*>(), _1, sqrt_s_LHC27);
1380  obsThFactory["muTHUVHZZ27"] = boost::bind(boost::factory<muTHUVHZZ*>(), _1, sqrt_s_LHC27);
1381  obsThFactory["muTHUttHZZ27"] = boost::bind(boost::factory<muTHUttHZZ*>(), _1, sqrt_s_LHC27);
1382  //
1383  obsThFactory["muTHUggHZZ4l27"] = boost::bind(boost::factory<muTHUggHZZ4l*>(), _1, sqrt_s_LHC27);
1384  obsThFactory["muTHUVBFHZZ4l27"] = boost::bind(boost::factory<muTHUVBFHZZ4l*>(), _1, sqrt_s_LHC27);
1385  obsThFactory["muTHUZHZZ4l27"] = boost::bind(boost::factory<muTHUZHZZ4l*>(), _1, sqrt_s_LHC27);
1386  obsThFactory["muTHUWHZZ4l27"] = boost::bind(boost::factory<muTHUWHZZ4l*>(), _1, sqrt_s_LHC27);
1387  obsThFactory["muTHUVHZZ4l27"] = boost::bind(boost::factory<muTHUVHZZ4l*>(), _1, sqrt_s_LHC27);
1388  obsThFactory["muTHUttHZZ4l27"] = boost::bind(boost::factory<muTHUttHZZ4l*>(), _1, sqrt_s_LHC27);
1389  //
1390  obsThFactory["muTHUggHWW27"] = boost::bind(boost::factory<muTHUggHWW*>(), _1, sqrt_s_LHC27);
1391  obsThFactory["muTHUVBFHWW27"] = boost::bind(boost::factory<muTHUVBFHWW*>(), _1, sqrt_s_LHC27);
1392  obsThFactory["muTHUZHWW27"] = boost::bind(boost::factory<muTHUZHWW*>(), _1, sqrt_s_LHC27);
1393  obsThFactory["muTHUWHWW27"] = boost::bind(boost::factory<muTHUWHWW*>(), _1, sqrt_s_LHC27);
1394  obsThFactory["muTHUVHWW27"] = boost::bind(boost::factory<muTHUVHWW*>(), _1, sqrt_s_LHC27);
1395  obsThFactory["muTHUttHWW27"] = boost::bind(boost::factory<muTHUttHWW*>(), _1, sqrt_s_LHC27);
1396  //
1397  obsThFactory["muTHUggHWW2l2v27"] = boost::bind(boost::factory<muTHUggHWW2l2v*>(), _1, sqrt_s_LHC27);
1398  obsThFactory["muTHUVBFHWW2l2v27"] = boost::bind(boost::factory<muTHUVBFHWW2l2v*>(), _1, sqrt_s_LHC27);
1399  obsThFactory["muTHUZHWW2l2v27"] = boost::bind(boost::factory<muTHUZHWW2l2v*>(), _1, sqrt_s_LHC27);
1400  obsThFactory["muTHUWHWW2l2v27"] = boost::bind(boost::factory<muTHUWHWW2l2v*>(), _1, sqrt_s_LHC27);
1401  obsThFactory["muTHUVHWW2l2v27"] = boost::bind(boost::factory<muTHUVHWW2l2v*>(), _1, sqrt_s_LHC27);
1402  obsThFactory["muTHUttHWW2l2v27"] = boost::bind(boost::factory<muTHUttHWW2l2v*>(), _1, sqrt_s_LHC27);
1403  //
1404  obsThFactory["muTHUggHmumu27"] = boost::bind(boost::factory<muTHUggHmumu*>(), _1, sqrt_s_LHC27);
1405  obsThFactory["muTHUVBFHmumu27"] = boost::bind(boost::factory<muTHUVBFHmumu*>(), _1, sqrt_s_LHC27);
1406  obsThFactory["muTHUZHmumu27"] = boost::bind(boost::factory<muTHUZHmumu*>(), _1, sqrt_s_LHC27);
1407  obsThFactory["muTHUWHmumu27"] = boost::bind(boost::factory<muTHUWHmumu*>(), _1, sqrt_s_LHC27);
1408  obsThFactory["muTHUVHmumu27"] = boost::bind(boost::factory<muTHUVHmumu*>(), _1, sqrt_s_LHC27);
1409  obsThFactory["muTHUttHmumu27"] = boost::bind(boost::factory<muTHUttHmumu*>(), _1, sqrt_s_LHC27);
1410  obsThFactory["muTHUggHtautau27"] = boost::bind(boost::factory<muTHUggHtautau*>(), _1, sqrt_s_LHC27);
1411  obsThFactory["muTHUVBFHtautau27"] = boost::bind(boost::factory<muTHUVBFHtautau*>(), _1, sqrt_s_LHC27);
1412  obsThFactory["muTHUZHtautau27"] = boost::bind(boost::factory<muTHUZHtautau*>(), _1, sqrt_s_LHC27);
1413  obsThFactory["muTHUWHtautau27"] = boost::bind(boost::factory<muTHUWHtautau*>(), _1, sqrt_s_LHC27);
1414  obsThFactory["muTHUVHtautau27"] = boost::bind(boost::factory<muTHUVHtautau*>(), _1, sqrt_s_LHC27);
1415  obsThFactory["muTHUttHtautau27"] = boost::bind(boost::factory<muTHUttHtautau*>(), _1, sqrt_s_LHC27);
1416  obsThFactory["muTHUggHbb27"] = boost::bind(boost::factory<muTHUggHbb*>(), _1, sqrt_s_LHC27);
1417  obsThFactory["muTHUVBFHbb27"] = boost::bind(boost::factory<muTHUVBFHbb*>(), _1, sqrt_s_LHC27);
1418  obsThFactory["muTHUZHbb27"] = boost::bind(boost::factory<muTHUZHbb*>(), _1, sqrt_s_LHC27);
1419  obsThFactory["muTHUWHbb27"] = boost::bind(boost::factory<muTHUWHbb*>(), _1, sqrt_s_LHC27);
1420  obsThFactory["muTHUVHbb27"] = boost::bind(boost::factory<muTHUVHbb*>(), _1, sqrt_s_LHC27);
1421  obsThFactory["muTHUttHbb27"] = boost::bind(boost::factory<muTHUttHbb*>(), _1, sqrt_s_LHC27);
1422  //
1423  obsThFactory["muTHUVBFBRinv27"] = boost::bind(boost::factory<muTHUVBFBRinv*>(), _1, sqrt_s_LHC27);
1424  obsThFactory["muTHUVHBRinv27"] = boost::bind(boost::factory<muTHUVHBRinv*>(), _1, sqrt_s_LHC27);
1425  //
1426  obsThFactory["muTHUVBFHinv27"] = boost::bind(boost::factory<muTHUVBFHinv*>(), _1, sqrt_s_LHC27);
1427  obsThFactory["muTHUVHinv27"] = boost::bind(boost::factory<muTHUVHinv*>(), _1, sqrt_s_LHC27);
1428  //
1429  //
1430  //----- STXS bins at hadron colliders
1431  // 4l
1432  obsThFactory["STXSggH_VBFtopo_j3v_4l_13"] = boost::bind(boost::factory<STXSggH_VBFtopo_j3v_4l*>(), _1, sqrt_s_LHC13);
1433  obsThFactory["STXSggH_VBFtopo_j3_4l_13"] = boost::bind(boost::factory<STXSggH_VBFtopo_j3_4l*>(), _1, sqrt_s_LHC13);
1434  obsThFactory["STXSggH0j4l_13"] = boost::bind(boost::factory<STXSggH0j4l*>(), _1, sqrt_s_LHC13);
1435  obsThFactory["STXSggH1j_pTH_0_60_4l_13"] = boost::bind(boost::factory<STXSggH1j_pTH_0_60_4l*>(), _1, sqrt_s_LHC13);
1436  obsThFactory["STXSggH1j_pTH_60_120_4l_13"] = boost::bind(boost::factory<STXSggH1j_pTH_60_120_4l*>(), _1, sqrt_s_LHC13);
1437  obsThFactory["STXSggH1j_pTH_120_200_4l_13"] = boost::bind(boost::factory<STXSggH1j_pTH_120_200_4l*>(), _1, sqrt_s_LHC13);
1438  obsThFactory["STXSggH1j_pTH_200_4l_13"] = boost::bind(boost::factory<STXSggH1j_pTH_200_4l*>(), _1, sqrt_s_LHC13);
1439  obsThFactory["STXSggH2j_pTH_0_200_4l_13"] = boost::bind(boost::factory<STXSggH2j_pTH_0_200_4l*>(), _1, sqrt_s_LHC13);
1440  obsThFactory["STXSggH2j_pTH_0_60_4l_13"] = boost::bind(boost::factory<STXSggH2j_pTH_0_60_4l*>(), _1, sqrt_s_LHC13);
1441  obsThFactory["STXSggH2j_pTH_60_120_4l_13"] = boost::bind(boost::factory<STXSggH2j_pTH_60_120_4l*>(), _1, sqrt_s_LHC13);
1442  obsThFactory["STXSggH2j_pTH_120_200_4l_13"] = boost::bind(boost::factory<STXSggH2j_pTH_120_200_4l*>(), _1, sqrt_s_LHC13);
1443  obsThFactory["STXSggH2j_pTH_200_4l_13"] = boost::bind(boost::factory<STXSggH2j_pTH_200_4l*>(), _1, sqrt_s_LHC13);
1444  //
1445  obsThFactory["STXSqqHqq_VBFtopo_Rest_4l_13"] = boost::bind(boost::factory<STXSqqHqq_VBFtopo_Rest_4l*>(), _1, sqrt_s_LHC13);
1446  obsThFactory["STXSqqHqq_VBFtopo_j3v_4l_13"] = boost::bind(boost::factory<STXSqqHqq_VBFtopo_j3v_4l*>(), _1, sqrt_s_LHC13);
1447  obsThFactory["STXSqqHqq_VBFtopo_j3_4l_13"] = boost::bind(boost::factory<STXSqqHqq_VBFtopo_j3_4l*>(), _1, sqrt_s_LHC13);
1448  obsThFactory["STXSqqHqq_VHtopo_4l_13"] = boost::bind(boost::factory<STXSqqHqq_VHtopo_4l*>(), _1, sqrt_s_LHC13);
1449  obsThFactory["STXSqqHqq_Rest_4l_13"] = boost::bind(boost::factory<STXSqqHqq_Rest_4l*>(), _1, sqrt_s_LHC13);
1450  obsThFactory["STXSqqHqq_pTj_200_4l_13"] = boost::bind(boost::factory<STXSqqHqq_pTj_200_4l*>(), _1, sqrt_s_LHC13);
1451  //
1452  obsThFactory["STXSqqHlv_pTV_0_250_4l_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_0_250_4l*>(), _1, sqrt_s_LHC13);
1453  obsThFactory["STXSqqHlv_pTV_0_150_4l_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_0_150_4l*>(), _1, sqrt_s_LHC13);
1454  obsThFactory["STXSqqHlv_pTV_150_250_0j_4l_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_150_250_0j_4l*>(), _1, sqrt_s_LHC13);
1455  obsThFactory["STXSqqHlv_pTV_150_250_1j_4l_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_150_250_1j_4l*>(), _1, sqrt_s_LHC13);
1456  obsThFactory["STXSqqHlv_pTV_250_4l_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_250_4l*>(), _1, sqrt_s_LHC13);
1457  //
1458  obsThFactory["STXSqqHll_pTV_0_150_4l_13"] = boost::bind(boost::factory<STXSqqHll_pTV_0_150_4l*>(), _1, sqrt_s_LHC13);
1459  obsThFactory["STXSqqHll_pTV_150_250_4l_13"] = boost::bind(boost::factory<STXSqqHll_pTV_150_250_4l*>(), _1, sqrt_s_LHC13);
1460  obsThFactory["STXSqqHll_pTV_150_250_0j_4l_13"] = boost::bind(boost::factory<STXSqqHll_pTV_150_250_0j_4l*>(), _1, sqrt_s_LHC13);
1461  obsThFactory["STXSqqHll_pTV_150_250_1j_4l_13"] = boost::bind(boost::factory<STXSqqHll_pTV_150_250_1j_4l*>(), _1, sqrt_s_LHC13);
1462  obsThFactory["STXSqqHll_pTV_250_4l_13"] = boost::bind(boost::factory<STXSqqHll_pTV_250_4l*>(), _1, sqrt_s_LHC13);
1463  //
1464  obsThFactory["STXSttHtH4l_13"] = boost::bind(boost::factory<STXSttHtH4l*>(), _1, sqrt_s_LHC13);
1465  // bb
1466  obsThFactory["STXSqqHlv_pTV_0_250_bb_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_0_250_bb*>(), _1, sqrt_s_LHC13);
1467  obsThFactory["STXSqqHlv_pTV_0_150_bb_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_0_150_bb*>(), _1, sqrt_s_LHC13);
1468  obsThFactory["STXSqqHlv_pTV_150_250_0j_bb_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_150_250_0j_bb*>(), _1, sqrt_s_LHC13);
1469  obsThFactory["STXSqqHlv_pTV_150_250_1j_bb_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_150_250_1j_bb*>(), _1, sqrt_s_LHC13);
1470  obsThFactory["STXSqqHlv_pTV_250_bb_13"] = boost::bind(boost::factory<STXSqqHlv_pTV_250_bb*>(), _1, sqrt_s_LHC13);
1471  //
1472  obsThFactory["STXSqqHll_pTV_0_150_bb_13"] = boost::bind(boost::factory<STXSqqHll_pTV_0_150_bb*>(), _1, sqrt_s_LHC13);
1473  obsThFactory["STXSqqHll_pTV_150_250_bb_13"] = boost::bind(boost::factory<STXSqqHll_pTV_150_250_bb*>(), _1, sqrt_s_LHC13);
1474  obsThFactory["STXSqqHll_pTV_150_250_0j_bb_13"] = boost::bind(boost::factory<STXSqqHll_pTV_150_250_0j_bb*>(), _1, sqrt_s_LHC13);
1475  obsThFactory["STXSqqHll_pTV_150_250_1j_bb_13"] = boost::bind(boost::factory<STXSqqHll_pTV_150_250_1j_bb*>(), _1, sqrt_s_LHC13);
1476  obsThFactory["STXSqqHll_pTV_250_bb_13"] = boost::bind(boost::factory<STXSqqHll_pTV_250_bb*>(), _1, sqrt_s_LHC13);
1477  //
1478  obsThFactory["STXSWHqqHqq_VBFtopo_j3v_2b"] = boost::bind(boost::factory<STXSWHqqHqq_VBFtopo_j3v_2b*>(), _1, sqrt_s_LHC13);
1479  obsThFactory["STXSWHqqHqq_VBFtopo_j3_2b"] = boost::bind(boost::factory<STXSWHqqHqq_VBFtopo_j3_2b*>(), _1, sqrt_s_LHC13);
1480  obsThFactory["STXSWHqqHqq_VH2j_2b"] = boost::bind(boost::factory<STXSWHqqHqq_VH2j_2b*>(), _1, sqrt_s_LHC13);
1481  obsThFactory["STXSWHqqHqq_Rest_2b"] = boost::bind(boost::factory<STXSWHqqHqq_Rest_2b*>(), _1, sqrt_s_LHC13);
1482  obsThFactory["STXSWHqqHqq_pTj1_200_2b"] = boost::bind(boost::factory<STXSWHqqHqq_pTj1_200_2b*>(), _1, sqrt_s_LHC13);
1483  //
1484  obsThFactory["STXSZHqqHqq_VBFtopo_j3v_2b"] = boost::bind(boost::factory<STXSZHqqHqq_VBFtopo_j3v_2b*>(), _1, sqrt_s_LHC13);
1485  obsThFactory["STXSZHqqHqq_VBFtopo_j3_2b"] = boost::bind(boost::factory<STXSZHqqHqq_VBFtopo_j3_2b*>(), _1, sqrt_s_LHC13);
1486  obsThFactory["STXSZHqqHqq_VH2j_2b"] = boost::bind(boost::factory<STXSZHqqHqq_VH2j_2b*>(), _1, sqrt_s_LHC13);
1487  obsThFactory["STXSZHqqHqq_Rest_2b"] = boost::bind(boost::factory<STXSZHqqHqq_Rest_2b*>(), _1, sqrt_s_LHC13);
1488  obsThFactory["STXSZHqqHqq_pTj1_200_2b"] = boost::bind(boost::factory<STXSZHqqHqq_pTj1_200_2b*>(), _1, sqrt_s_LHC13);
1489  //
1490  //----- Full Signal strengths per prod and decay: Lepton colliders ----------
1491  //
1492  // Pure WBF
1493  obsThFactory["mueeWBFbb240"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_240);
1494  obsThFactory["mueeWBFbb250"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_250);
1495  obsThFactory["mueeWBFbb350"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_350);
1496  obsThFactory["mueeWBFbb365"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_365);
1497  obsThFactory["mueeWBFbb380"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_380);
1498  obsThFactory["mueeWBFbb500"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_500);
1499  obsThFactory["mueeWBFbb1000"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_1000);
1500  obsThFactory["mueeWBFbb1400"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_1400);
1501  obsThFactory["mueeWBFbb1500"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_1500);
1502  obsThFactory["mueeWBFbb3000"] = boost::bind(boost::factory<mueeWBFbb*>(), _1, sqrt_s_leptcoll_3000);
1503  //
1504  obsThFactory["mueeWBFbb250_p80_m30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1505  obsThFactory["mueeWBFbb250_m80_p30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1506  obsThFactory["mueeWBFbb250_p80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1507  obsThFactory["mueeWBFbb250_m80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1508  //
1509  obsThFactory["mueeWBFbb350_p80_m30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1510  obsThFactory["mueeWBFbb350_m80_p30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1511  obsThFactory["mueeWBFbb350_p80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1512  obsThFactory["mueeWBFbb350_m80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1513  //
1514  obsThFactory["mueeWBFbb380_p80_m30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1515  obsThFactory["mueeWBFbb380_m80_p30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1516  obsThFactory["mueeWBFbb380_p80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1517  obsThFactory["mueeWBFbb380_m80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1518  //
1519  obsThFactory["mueeWBFbb500_p80_m30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1520  obsThFactory["mueeWBFbb500_m80_p30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1521  obsThFactory["mueeWBFbb500_p80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1522  obsThFactory["mueeWBFbb500_m80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1523  //
1524  obsThFactory["mueeWBFbb1000_p80_m30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1525  obsThFactory["mueeWBFbb1000_m80_p30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1526  obsThFactory["mueeWBFbb1000_p80_m20"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1527  obsThFactory["mueeWBFbb1000_m80_p20"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1528  obsThFactory["mueeWBFbb1000_p80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1529  obsThFactory["mueeWBFbb1000_m80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1530  //
1531  obsThFactory["mueeWBFbb1400_p80_m30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1532  obsThFactory["mueeWBFbb1400_m80_p30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1533  obsThFactory["mueeWBFbb1400_p80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1534  obsThFactory["mueeWBFbb1400_m80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1535  //
1536  obsThFactory["mueeWBFbb1500_p80_m30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1537  obsThFactory["mueeWBFbb1500_m80_p30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1538  obsThFactory["mueeWBFbb1500_p80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1539  obsThFactory["mueeWBFbb1500_m80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1540  //
1541  obsThFactory["mueeWBFbb3000_p80_m30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1542  obsThFactory["mueeWBFbb3000_m80_p30"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1543  obsThFactory["mueeWBFbb3000_p80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1544  obsThFactory["mueeWBFbb3000_m80_0"] = boost::bind(boost::factory<mueeWBFbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1545  //
1546  obsThFactory["mueeWBFcc240"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_240);
1547  obsThFactory["mueeWBFcc250"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_250);
1548  obsThFactory["mueeWBFcc350"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_350);
1549  obsThFactory["mueeWBFcc365"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_365);
1550  obsThFactory["mueeWBFcc380"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_380);
1551  obsThFactory["mueeWBFcc500"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_500);
1552  obsThFactory["mueeWBFcc1000"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_1000);
1553  obsThFactory["mueeWBFcc1400"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_1400);
1554  obsThFactory["mueeWBFcc1500"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_1500);
1555  obsThFactory["mueeWBFcc3000"] = boost::bind(boost::factory<mueeWBFcc*>(), _1, sqrt_s_leptcoll_3000);
1556  //
1557  obsThFactory["mueeWBFgg240"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_240);
1558  obsThFactory["mueeWBFgg250"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_250);
1559  obsThFactory["mueeWBFgg350"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_350);
1560  obsThFactory["mueeWBFgg365"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_365);
1561  obsThFactory["mueeWBFgg380"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_380);
1562  obsThFactory["mueeWBFgg500"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_500);
1563  obsThFactory["mueeWBFgg1000"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_1000);
1564  obsThFactory["mueeWBFgg1400"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_1400);
1565  obsThFactory["mueeWBFgg1500"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_1500);
1566  obsThFactory["mueeWBFgg3000"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_3000);
1567  //
1568  obsThFactory["mueeWBFWW240"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_240);
1569  obsThFactory["mueeWBFWW250"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_250);
1570  obsThFactory["mueeWBFWW350"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_350);
1571  obsThFactory["mueeWBFWW365"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_365);
1572  obsThFactory["mueeWBFWW380"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_380);
1573  obsThFactory["mueeWBFWW500"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_500);
1574  obsThFactory["mueeWBFWW1000"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_1000);
1575  obsThFactory["mueeWBFWW1400"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_1400);
1576  obsThFactory["mueeWBFWW1500"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_1500);
1577  obsThFactory["mueeWBFWW3000"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_3000);
1578  //
1579  obsThFactory["mueeWBFtautau240"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_240);
1580  obsThFactory["mueeWBFtautau250"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_250);
1581  obsThFactory["mueeWBFtautau350"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_350);
1582  obsThFactory["mueeWBFtautau365"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_365);
1583  obsThFactory["mueeWBFtautau380"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_380);
1584  obsThFactory["mueeWBFtautau500"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_500);
1585  obsThFactory["mueeWBFtautau1000"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_1000);
1586  obsThFactory["mueeWBFtautau1400"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_1400);
1587  obsThFactory["mueeWBFtautau1500"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_1500);
1588  obsThFactory["mueeWBFtautau3000"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_3000);
1589  //
1590  obsThFactory["mueeWBFZZ240"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_240);
1591  obsThFactory["mueeWBFZZ250"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_250);
1592  obsThFactory["mueeWBFZZ350"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_350);
1593  obsThFactory["mueeWBFZZ365"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_365);
1594  obsThFactory["mueeWBFZZ380"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_380);
1595  obsThFactory["mueeWBFZZ500"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_500);
1596  obsThFactory["mueeWBFZZ1000"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_1000);
1597  obsThFactory["mueeWBFZZ1400"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_1400);
1598  obsThFactory["mueeWBFZZ1500"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_1500);
1599  obsThFactory["mueeWBFZZ3000"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_3000);
1600  //
1601  obsThFactory["mueeWBFZga240"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_240);
1602  obsThFactory["mueeWBFZga250"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_250);
1603  obsThFactory["mueeWBFZga350"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_350);
1604  obsThFactory["mueeWBFZga365"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_365);
1605  obsThFactory["mueeWBFZga380"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_380);
1606  obsThFactory["mueeWBFZga500"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_500);
1607  obsThFactory["mueeWBFZga1000"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_1000);
1608  obsThFactory["mueeWBFZga1400"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_1400);
1609  obsThFactory["mueeWBFZga1500"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_1500);
1610  obsThFactory["mueeWBFZga3000"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_3000);
1611  //
1612  obsThFactory["mueeWBFgaga240"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_240);
1613  obsThFactory["mueeWBFgaga250"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_250);
1614  obsThFactory["mueeWBFgaga350"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_350);
1615  obsThFactory["mueeWBFgaga365"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_365);
1616  obsThFactory["mueeWBFgaga380"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_380);
1617  obsThFactory["mueeWBFgaga500"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_500);
1618  obsThFactory["mueeWBFgaga1000"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_1000);
1619  obsThFactory["mueeWBFgaga1400"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_1400);
1620  obsThFactory["mueeWBFgaga1500"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_1500);
1621  obsThFactory["mueeWBFgaga3000"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_3000);
1622  //
1623  obsThFactory["mueeWBFmumu240"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_240);
1624  obsThFactory["mueeWBFmumu250"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_250);
1625  obsThFactory["mueeWBFmumu350"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_350);
1626  obsThFactory["mueeWBFmumu365"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_365);
1627  obsThFactory["mueeWBFmumu380"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_380);
1628  obsThFactory["mueeWBFmumu500"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_500);
1629  obsThFactory["mueeWBFmumu1000"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_1000);
1630  obsThFactory["mueeWBFmumu1400"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_1400);
1631  obsThFactory["mueeWBFmumu1500"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_1500);
1632  obsThFactory["mueeWBFmumu3000"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_3000);
1633  // vvH
1634  obsThFactory["mueeHvvbb240"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_240);
1635  obsThFactory["mueeHvvbb250"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_250);
1636  obsThFactory["mueeHvvbb350"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_350);
1637  obsThFactory["mueeHvvbb365"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_365);
1638  obsThFactory["mueeHvvbb380"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_380);
1639  obsThFactory["mueeHvvbb500"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_500);
1640  obsThFactory["mueeHvvbb1000"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_1000);
1641  obsThFactory["mueeHvvbb1400"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_1400);
1642  obsThFactory["mueeHvvbb1500"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_1500);
1643  obsThFactory["mueeHvvbb3000"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_3000);
1644  //
1645  obsThFactory["mueeHvvbb250_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1646  obsThFactory["mueeHvvbb250_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1647  obsThFactory["mueeHvvbb250_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1648  obsThFactory["mueeHvvbb250_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1649  //
1650  obsThFactory["mueeHvvbb350_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1651  obsThFactory["mueeHvvbb350_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1652  obsThFactory["mueeHvvbb350_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1653  obsThFactory["mueeHvvbb350_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1654  //
1655  obsThFactory["mueeHvvbb380_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1656  obsThFactory["mueeHvvbb380_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1657  obsThFactory["mueeHvvbb380_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1658  obsThFactory["mueeHvvbb380_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1659  //
1660  obsThFactory["mueeHvvbb500_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1661  obsThFactory["mueeHvvbb500_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1662  obsThFactory["mueeHvvbb500_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1663  obsThFactory["mueeHvvbb500_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1664  //
1665  obsThFactory["mueeHvvbb1000_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1666  obsThFactory["mueeHvvbb1000_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1667  obsThFactory["mueeHvvbb1000_p80_m20"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1668  obsThFactory["mueeHvvbb1000_m80_p20"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1669  obsThFactory["mueeHvvbb1000_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1670  obsThFactory["mueeHvvbb1000_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1671  //
1672  obsThFactory["mueeHvvbb1400_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1673  obsThFactory["mueeHvvbb1400_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1674  obsThFactory["mueeHvvbb1400_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1675  obsThFactory["mueeHvvbb1400_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1676  //
1677  obsThFactory["mueeHvvbb1500_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1678  obsThFactory["mueeHvvbb1500_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1679  obsThFactory["mueeHvvbb1500_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1680  obsThFactory["mueeHvvbb1500_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1681  //
1682  obsThFactory["mueeHvvbb3000_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1683  obsThFactory["mueeHvvbb3000_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1684  obsThFactory["mueeHvvbb3000_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1685  obsThFactory["mueeHvvbb3000_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1686  //
1687  obsThFactory["mueeHvvcc240"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_240);
1688  obsThFactory["mueeHvvcc250"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_250);
1689  obsThFactory["mueeHvvcc350"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_350);
1690  obsThFactory["mueeHvvcc365"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_365);
1691  obsThFactory["mueeHvvcc380"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_380);
1692  obsThFactory["mueeHvvcc500"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_500);
1693  obsThFactory["mueeHvvcc1000"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_1000);
1694  obsThFactory["mueeHvvcc1400"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_1400);
1695  obsThFactory["mueeHvvcc1500"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_1500);
1696  obsThFactory["mueeHvvcc3000"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_3000);
1697  //
1698  obsThFactory["mueeHvvcc250_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1699  obsThFactory["mueeHvvcc250_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1700  obsThFactory["mueeHvvcc250_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1701  obsThFactory["mueeHvvcc250_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1702  //
1703  obsThFactory["mueeHvvcc350_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1704  obsThFactory["mueeHvvcc350_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1705  obsThFactory["mueeHvvcc350_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1706  obsThFactory["mueeHvvcc350_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1707  //
1708  obsThFactory["mueeHvvcc380_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1709  obsThFactory["mueeHvvcc380_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1710  obsThFactory["mueeHvvcc380_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1711  obsThFactory["mueeHvvcc380_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1712  //
1713  obsThFactory["mueeHvvcc500_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1714  obsThFactory["mueeHvvcc500_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1715  obsThFactory["mueeHvvcc500_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1716  obsThFactory["mueeHvvcc500_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1717  //
1718  obsThFactory["mueeHvvcc1000_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1719  obsThFactory["mueeHvvcc1000_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1720  obsThFactory["mueeHvvcc1000_p80_m20"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1721  obsThFactory["mueeHvvcc1000_m80_p20"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1722  obsThFactory["mueeHvvcc1000_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1723  obsThFactory["mueeHvvcc1000_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1724  //
1725  obsThFactory["mueeHvvcc1400_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1726  obsThFactory["mueeHvvcc1400_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1727  obsThFactory["mueeHvvcc1400_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1728  obsThFactory["mueeHvvcc1400_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1729  //
1730  obsThFactory["mueeHvvcc1500_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1731  obsThFactory["mueeHvvcc1500_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1732  obsThFactory["mueeHvvcc1500_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1733  obsThFactory["mueeHvvcc1500_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1734  //
1735  obsThFactory["mueeHvvcc3000_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1736  obsThFactory["mueeHvvcc3000_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1737  obsThFactory["mueeHvvcc3000_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1738  obsThFactory["mueeHvvcc3000_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1739  //
1740  obsThFactory["mueeHvvgg240"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_240);
1741  obsThFactory["mueeHvvgg250"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_250);
1742  obsThFactory["mueeHvvgg350"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_350);
1743  obsThFactory["mueeHvvgg365"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_365);
1744  obsThFactory["mueeHvvgg380"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_380);
1745  obsThFactory["mueeHvvgg500"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_500);
1746  obsThFactory["mueeHvvgg1000"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_1000);
1747  obsThFactory["mueeHvvgg1400"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_1400);
1748  obsThFactory["mueeHvvgg1500"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_1500);
1749  obsThFactory["mueeHvvgg3000"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_3000);
1750  //
1751  obsThFactory["mueeHvvgg250_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1752  obsThFactory["mueeHvvgg250_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1753  obsThFactory["mueeHvvgg250_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1754  obsThFactory["mueeHvvgg250_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1755  //
1756  obsThFactory["mueeHvvgg350_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1757  obsThFactory["mueeHvvgg350_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1758  obsThFactory["mueeHvvgg350_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1759  obsThFactory["mueeHvvgg350_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1760  //
1761  obsThFactory["mueeHvvgg380_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1762  obsThFactory["mueeHvvgg380_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1763  obsThFactory["mueeHvvgg380_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1764  obsThFactory["mueeHvvgg380_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1765  //
1766  obsThFactory["mueeHvvgg500_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1767  obsThFactory["mueeHvvgg500_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1768  obsThFactory["mueeHvvgg500_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1769  obsThFactory["mueeHvvgg500_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1770  //
1771  obsThFactory["mueeHvvgg1000_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1772  obsThFactory["mueeHvvgg1000_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1773  obsThFactory["mueeHvvgg1000_p80_m20"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1774  obsThFactory["mueeHvvgg1000_m80_p20"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1775  obsThFactory["mueeHvvgg1000_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1776  obsThFactory["mueeHvvgg1000_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1777  //
1778  obsThFactory["mueeHvvgg1400_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1779  obsThFactory["mueeHvvgg1400_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1780  obsThFactory["mueeHvvgg1400_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1781  obsThFactory["mueeHvvgg1400_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1782  //
1783  obsThFactory["mueeHvvgg1500_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1784  obsThFactory["mueeHvvgg1500_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1785  obsThFactory["mueeHvvgg1500_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1786  obsThFactory["mueeHvvgg1500_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1787  //
1788  obsThFactory["mueeHvvgg3000_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1789  obsThFactory["mueeHvvgg3000_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1790  obsThFactory["mueeHvvgg3000_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1791  obsThFactory["mueeHvvgg3000_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1792  //
1793  obsThFactory["mueeHvvWW240"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_240);
1794  obsThFactory["mueeHvvWW250"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_250);
1795  obsThFactory["mueeHvvWW350"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_350);
1796  obsThFactory["mueeHvvWW365"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_365);
1797  obsThFactory["mueeHvvWW380"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_380);
1798  obsThFactory["mueeHvvWW500"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_500);
1799  obsThFactory["mueeHvvWW1000"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_1000);
1800  obsThFactory["mueeHvvWW1400"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_1400);
1801  obsThFactory["mueeHvvWW1500"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_1500);
1802  obsThFactory["mueeHvvWW3000"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_3000);
1803  //
1804  obsThFactory["mueeHvvWW250_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1805  obsThFactory["mueeHvvWW250_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1806  obsThFactory["mueeHvvWW250_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1807  obsThFactory["mueeHvvWW250_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1808  //
1809  obsThFactory["mueeHvvWW350_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1810  obsThFactory["mueeHvvWW350_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1811  obsThFactory["mueeHvvWW350_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1812  obsThFactory["mueeHvvWW350_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1813  //
1814  obsThFactory["mueeHvvWW380_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1815  obsThFactory["mueeHvvWW380_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1816  obsThFactory["mueeHvvWW380_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1817  obsThFactory["mueeHvvWW380_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1818  //
1819  obsThFactory["mueeHvvWW500_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1820  obsThFactory["mueeHvvWW500_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1821  obsThFactory["mueeHvvWW500_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1822  obsThFactory["mueeHvvWW500_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1823  //
1824  obsThFactory["mueeHvvWW1000_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1825  obsThFactory["mueeHvvWW1000_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1826  obsThFactory["mueeHvvWW1000_p80_m20"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1827  obsThFactory["mueeHvvWW1000_m80_p20"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1828  obsThFactory["mueeHvvWW1000_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1829  obsThFactory["mueeHvvWW1000_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1830  //
1831  obsThFactory["mueeHvvWW1400_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1832  obsThFactory["mueeHvvWW1400_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1833  obsThFactory["mueeHvvWW1400_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1834  obsThFactory["mueeHvvWW1400_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1835  //
1836  obsThFactory["mueeHvvWW1500_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1837  obsThFactory["mueeHvvWW1500_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1838  obsThFactory["mueeHvvWW1500_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1839  obsThFactory["mueeHvvWW1500_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1840  //
1841  obsThFactory["mueeHvvWW3000_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1842  obsThFactory["mueeHvvWW3000_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1843  obsThFactory["mueeHvvWW3000_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1844  obsThFactory["mueeHvvWW3000_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1845  //
1846  obsThFactory["mueeHvvtautau240"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_240);
1847  obsThFactory["mueeHvvtautau250"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_250);
1848  obsThFactory["mueeHvvtautau350"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_350);
1849  obsThFactory["mueeHvvtautau365"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_365);
1850  obsThFactory["mueeHvvtautau380"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_380);
1851  obsThFactory["mueeHvvtautau500"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_500);
1852  obsThFactory["mueeHvvtautau1000"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_1000);
1853  obsThFactory["mueeHvvtautau1400"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_1400);
1854  obsThFactory["mueeHvvtautau1500"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_1500);
1855  obsThFactory["mueeHvvtautau3000"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_3000);
1856  //
1857  obsThFactory["mueeHvvtautau250_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1858  obsThFactory["mueeHvvtautau250_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1859  obsThFactory["mueeHvvtautau250_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1860  obsThFactory["mueeHvvtautau250_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1861  //
1862  obsThFactory["mueeHvvtautau350_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1863  obsThFactory["mueeHvvtautau350_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1864  obsThFactory["mueeHvvtautau350_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1865  obsThFactory["mueeHvvtautau350_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1866  //
1867  obsThFactory["mueeHvvtautau380_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1868  obsThFactory["mueeHvvtautau380_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1869  obsThFactory["mueeHvvtautau380_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1870  obsThFactory["mueeHvvtautau380_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1871  //
1872  obsThFactory["mueeHvvtautau500_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1873  obsThFactory["mueeHvvtautau500_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1874  obsThFactory["mueeHvvtautau500_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1875  obsThFactory["mueeHvvtautau500_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1876  //
1877  obsThFactory["mueeHvvtautau1000_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1878  obsThFactory["mueeHvvtautau1000_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1879  obsThFactory["mueeHvvtautau1000_p80_m20"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1880  obsThFactory["mueeHvvtautau1000_m80_p20"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1881  obsThFactory["mueeHvvtautau1000_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1882  obsThFactory["mueeHvvtautau1000_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1883  //
1884  obsThFactory["mueeHvvtautau1400_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1885  obsThFactory["mueeHvvtautau1400_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1886  obsThFactory["mueeHvvtautau1400_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1887  obsThFactory["mueeHvvtautau1400_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1888  //
1889  obsThFactory["mueeHvvtautau1500_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1890  obsThFactory["mueeHvvtautau1500_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1891  obsThFactory["mueeHvvtautau1500_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1892  obsThFactory["mueeHvvtautau1500_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1893  //
1894  obsThFactory["mueeHvvtautau3000_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1895  obsThFactory["mueeHvvtautau3000_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1896  obsThFactory["mueeHvvtautau3000_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1897  obsThFactory["mueeHvvtautau3000_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1898  //
1899  obsThFactory["mueeHvvZZ240"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_240);
1900  obsThFactory["mueeHvvZZ250"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_250);
1901  obsThFactory["mueeHvvZZ350"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_350);
1902  obsThFactory["mueeHvvZZ365"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_365);
1903  obsThFactory["mueeHvvZZ380"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_380);
1904  obsThFactory["mueeHvvZZ500"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_500);
1905  obsThFactory["mueeHvvZZ1000"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_1000);
1906  obsThFactory["mueeHvvZZ1400"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_1400);
1907  obsThFactory["mueeHvvZZ1500"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_1500);
1908  obsThFactory["mueeHvvZZ3000"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_3000);
1909  //
1910  obsThFactory["mueeHvvZZ250_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1911  obsThFactory["mueeHvvZZ250_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1912  obsThFactory["mueeHvvZZ250_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1913  obsThFactory["mueeHvvZZ250_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1914  //
1915  obsThFactory["mueeHvvZZ350_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1916  obsThFactory["mueeHvvZZ350_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1917  obsThFactory["mueeHvvZZ350_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1918  obsThFactory["mueeHvvZZ350_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1919  //
1920  obsThFactory["mueeHvvZZ380_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1921  obsThFactory["mueeHvvZZ380_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1922  obsThFactory["mueeHvvZZ380_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1923  obsThFactory["mueeHvvZZ380_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1924  //
1925  obsThFactory["mueeHvvZZ500_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1926  obsThFactory["mueeHvvZZ500_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1927  obsThFactory["mueeHvvZZ500_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1928  obsThFactory["mueeHvvZZ500_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1929  //
1930  obsThFactory["mueeHvvZZ1000_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1931  obsThFactory["mueeHvvZZ1000_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1932  obsThFactory["mueeHvvZZ1000_p80_m20"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1933  obsThFactory["mueeHvvZZ1000_m80_p20"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1934  obsThFactory["mueeHvvZZ1000_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1935  obsThFactory["mueeHvvZZ1000_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1936  //
1937  obsThFactory["mueeHvvZZ1400_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1938  obsThFactory["mueeHvvZZ1400_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1939  obsThFactory["mueeHvvZZ1400_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1940  obsThFactory["mueeHvvZZ1400_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1941  //
1942  obsThFactory["mueeHvvZZ1500_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1943  obsThFactory["mueeHvvZZ1500_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1944  obsThFactory["mueeHvvZZ1500_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1945  obsThFactory["mueeHvvZZ1500_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1946  //
1947  obsThFactory["mueeHvvZZ3000_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1948  obsThFactory["mueeHvvZZ3000_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1949  obsThFactory["mueeHvvZZ3000_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1950  obsThFactory["mueeHvvZZ3000_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1951  //
1952  obsThFactory["mueeHvvZga240"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_240);
1953  obsThFactory["mueeHvvZga250"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_250);
1954  obsThFactory["mueeHvvZga350"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_350);
1955  obsThFactory["mueeHvvZga365"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_365);
1956  obsThFactory["mueeHvvZga380"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_380);
1957  obsThFactory["mueeHvvZga500"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_500);
1958  obsThFactory["mueeHvvZga1000"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_1000);
1959  obsThFactory["mueeHvvZga1400"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_1400);
1960  obsThFactory["mueeHvvZga1500"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_1500);
1961  obsThFactory["mueeHvvZga3000"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_3000);
1962  //
1963  obsThFactory["mueeHvvZga250_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1964  obsThFactory["mueeHvvZga250_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1965  obsThFactory["mueeHvvZga250_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1966  obsThFactory["mueeHvvZga250_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1967  //
1968  obsThFactory["mueeHvvZga350_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1969  obsThFactory["mueeHvvZga350_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1970  obsThFactory["mueeHvvZga350_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1971  obsThFactory["mueeHvvZga350_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1972  //
1973  obsThFactory["mueeHvvZga380_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1974  obsThFactory["mueeHvvZga380_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1975  obsThFactory["mueeHvvZga380_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1976  obsThFactory["mueeHvvZga380_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1977  //
1978  obsThFactory["mueeHvvZga500_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1979  obsThFactory["mueeHvvZga500_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1980  obsThFactory["mueeHvvZga500_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1981  obsThFactory["mueeHvvZga500_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1982  //
1983  obsThFactory["mueeHvvZga1000_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1984  obsThFactory["mueeHvvZga1000_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1985  obsThFactory["mueeHvvZga1000_p80_m20"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1986  obsThFactory["mueeHvvZga1000_m80_p20"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1987  obsThFactory["mueeHvvZga1000_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1988  obsThFactory["mueeHvvZga1000_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1989  //
1990  obsThFactory["mueeHvvZga1400_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1991  obsThFactory["mueeHvvZga1400_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1992  obsThFactory["mueeHvvZga1400_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1993  obsThFactory["mueeHvvZga1400_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1994  //
1995  obsThFactory["mueeHvvZga1500_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1996  obsThFactory["mueeHvvZga1500_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1997  obsThFactory["mueeHvvZga1500_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1998  obsThFactory["mueeHvvZga1500_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1999  //
2000  obsThFactory["mueeHvvZga3000_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2001  obsThFactory["mueeHvvZga3000_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2002  obsThFactory["mueeHvvZga3000_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2003  obsThFactory["mueeHvvZga3000_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2004  //
2005  obsThFactory["mueeHvvgaga240"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_240);
2006  obsThFactory["mueeHvvgaga250"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_250);
2007  obsThFactory["mueeHvvgaga350"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_350);
2008  obsThFactory["mueeHvvgaga365"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_365);
2009  obsThFactory["mueeHvvgaga380"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_380);
2010  obsThFactory["mueeHvvgaga500"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_500);
2011  obsThFactory["mueeHvvgaga1000"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_1000);
2012  obsThFactory["mueeHvvgaga1400"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_1400);
2013  obsThFactory["mueeHvvgaga1500"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_1500);
2014  obsThFactory["mueeHvvgaga3000"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_3000);
2015  //
2016  obsThFactory["mueeHvvgaga250_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2017  obsThFactory["mueeHvvgaga250_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2018  obsThFactory["mueeHvvgaga250_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2019  obsThFactory["mueeHvvgaga250_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2020  //
2021  obsThFactory["mueeHvvgaga350_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2022  obsThFactory["mueeHvvgaga350_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2023  obsThFactory["mueeHvvgaga350_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2024  obsThFactory["mueeHvvgaga350_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2025  //
2026  obsThFactory["mueeHvvgaga380_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2027  obsThFactory["mueeHvvgaga380_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2028  obsThFactory["mueeHvvgaga380_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2029  obsThFactory["mueeHvvgaga380_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2030  //
2031  obsThFactory["mueeHvvgaga500_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2032  obsThFactory["mueeHvvgaga500_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2033  obsThFactory["mueeHvvgaga500_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2034  obsThFactory["mueeHvvgaga500_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2035  //
2036  obsThFactory["mueeHvvgaga1000_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2037  obsThFactory["mueeHvvgaga1000_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2038  obsThFactory["mueeHvvgaga1000_p80_m20"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2039  obsThFactory["mueeHvvgaga1000_m80_p20"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2040  obsThFactory["mueeHvvgaga1000_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2041  obsThFactory["mueeHvvgaga1000_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2042  //
2043  obsThFactory["mueeHvvgaga1400_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2044  obsThFactory["mueeHvvgaga1400_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2045  obsThFactory["mueeHvvgaga1400_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2046  obsThFactory["mueeHvvgaga1400_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2047  //
2048  obsThFactory["mueeHvvgaga1500_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2049  obsThFactory["mueeHvvgaga1500_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2050  obsThFactory["mueeHvvgaga1500_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2051  obsThFactory["mueeHvvgaga1500_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2052  //
2053  obsThFactory["mueeHvvgaga3000_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2054  obsThFactory["mueeHvvgaga3000_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2055  obsThFactory["mueeHvvgaga3000_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2056  obsThFactory["mueeHvvgaga3000_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2057  //
2058  obsThFactory["mueeHvvmumu240"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_240);
2059  obsThFactory["mueeHvvmumu250"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_250);
2060  obsThFactory["mueeHvvmumu350"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_350);
2061  obsThFactory["mueeHvvmumu365"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_365);
2062  obsThFactory["mueeHvvmumu380"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_380);
2063  obsThFactory["mueeHvvmumu500"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_500);
2064  obsThFactory["mueeHvvmumu1000"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_1000);
2065  obsThFactory["mueeHvvmumu1400"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_1400);
2066  obsThFactory["mueeHvvmumu1500"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_1500);
2067  obsThFactory["mueeHvvmumu3000"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_3000);
2068  //
2069  obsThFactory["mueeHvvmumu250_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2070  obsThFactory["mueeHvvmumu250_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2071  obsThFactory["mueeHvvmumu250_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2072  obsThFactory["mueeHvvmumu250_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2073  //
2074  obsThFactory["mueeHvvmumu350_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2075  obsThFactory["mueeHvvmumu350_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2076  obsThFactory["mueeHvvmumu350_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2077  obsThFactory["mueeHvvmumu350_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2078  //
2079  obsThFactory["mueeHvvmumu380_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2080  obsThFactory["mueeHvvmumu380_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2081  obsThFactory["mueeHvvmumu380_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2082  obsThFactory["mueeHvvmumu380_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2083  //
2084  obsThFactory["mueeHvvmumu500_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2085  obsThFactory["mueeHvvmumu500_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2086  obsThFactory["mueeHvvmumu500_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2087  obsThFactory["mueeHvvmumu500_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2088  //
2089  obsThFactory["mueeHvvmumu1000_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2090  obsThFactory["mueeHvvmumu1000_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2091  obsThFactory["mueeHvvmumu1000_p80_m20"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2092  obsThFactory["mueeHvvmumu1000_m80_p20"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2093  obsThFactory["mueeHvvmumu1000_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2094  obsThFactory["mueeHvvmumu1000_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2095  //
2096  obsThFactory["mueeHvvmumu1400_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2097  obsThFactory["mueeHvvmumu1400_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2098  obsThFactory["mueeHvvmumu1400_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2099  obsThFactory["mueeHvvmumu1400_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2100  //
2101  obsThFactory["mueeHvvmumu1500_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2102  obsThFactory["mueeHvvmumu1500_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2103  obsThFactory["mueeHvvmumu1500_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2104  obsThFactory["mueeHvvmumu1500_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2105  //
2106  obsThFactory["mueeHvvmumu3000_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2107  obsThFactory["mueeHvvmumu3000_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2108  obsThFactory["mueeHvvmumu3000_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2109  obsThFactory["mueeHvvmumu3000_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2110  //
2111  // ZH
2112  obsThFactory["mueeZHbb240"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_240);
2113  obsThFactory["mueeZHbb250"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_250);
2114  obsThFactory["mueeZHbb350"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_350);
2115  obsThFactory["mueeZHbb365"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_365);
2116  obsThFactory["mueeZHbb380"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_380);
2117  obsThFactory["mueeZHbb500"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_500);
2118  obsThFactory["mueeZHbb1000"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_1000);
2119  obsThFactory["mueeZHbb1400"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_1400);
2120  obsThFactory["mueeZHbb1500"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_1500);
2121  obsThFactory["mueeZHbb3000"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_3000);
2122  //
2123  obsThFactory["mueeZHbb250_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2124  obsThFactory["mueeZHbb250_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2125  obsThFactory["mueeZHbb250_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2126  obsThFactory["mueeZHbb250_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2127  //
2128  obsThFactory["mueeZHbb350_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2129  obsThFactory["mueeZHbb350_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2130  obsThFactory["mueeZHbb350_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2131  obsThFactory["mueeZHbb350_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2132  //
2133  obsThFactory["mueeZHbb380_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2134  obsThFactory["mueeZHbb380_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2135  obsThFactory["mueeZHbb380_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2136  obsThFactory["mueeZHbb380_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2137  //
2138  obsThFactory["mueeZHbb500_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2139  obsThFactory["mueeZHbb500_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2140  obsThFactory["mueeZHbb500_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2141  obsThFactory["mueeZHbb500_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2142  //
2143  obsThFactory["mueeZHbb1000_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2144  obsThFactory["mueeZHbb1000_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2145  obsThFactory["mueeZHbb1000_p80_m20"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2146  obsThFactory["mueeZHbb1000_m80_p20"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2147  obsThFactory["mueeZHbb1000_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2148  obsThFactory["mueeZHbb1000_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2149  //
2150  obsThFactory["mueeZHbb1400_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2151  obsThFactory["mueeZHbb1400_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2152  obsThFactory["mueeZHbb1400_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2153  obsThFactory["mueeZHbb1400_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2154  //
2155  obsThFactory["mueeZHbb1500_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2156  obsThFactory["mueeZHbb1500_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2157  obsThFactory["mueeZHbb1500_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2158  obsThFactory["mueeZHbb1500_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2159  //
2160  obsThFactory["mueeZHbb3000_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2161  obsThFactory["mueeZHbb3000_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2162  obsThFactory["mueeZHbb3000_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2163  obsThFactory["mueeZHbb3000_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2164  //
2165  obsThFactory["mueeZHcc240"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_240);
2166  obsThFactory["mueeZHcc250"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_250);
2167  obsThFactory["mueeZHcc350"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_350);
2168  obsThFactory["mueeZHcc365"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_365);
2169  obsThFactory["mueeZHcc380"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_380);
2170  obsThFactory["mueeZHcc500"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_500);
2171  obsThFactory["mueeZHcc1000"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_1000);
2172  obsThFactory["mueeZHcc1400"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_1400);
2173  obsThFactory["mueeZHcc1500"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_1500);
2174  obsThFactory["mueeZHcc3000"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_3000);
2175  //
2176  obsThFactory["mueeZHcc250_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2177  obsThFactory["mueeZHcc250_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2178  obsThFactory["mueeZHcc250_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2179  obsThFactory["mueeZHcc250_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2180  //
2181  obsThFactory["mueeZHcc350_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2182  obsThFactory["mueeZHcc350_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2183  obsThFactory["mueeZHcc350_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2184  obsThFactory["mueeZHcc350_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2185  //
2186  obsThFactory["mueeZHcc380_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2187  obsThFactory["mueeZHcc380_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2188  obsThFactory["mueeZHcc380_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2189  obsThFactory["mueeZHcc380_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2190  //
2191  obsThFactory["mueeZHcc500_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2192  obsThFactory["mueeZHcc500_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2193  obsThFactory["mueeZHcc500_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2194  obsThFactory["mueeZHcc500_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2195  //
2196  obsThFactory["mueeZHcc1000_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2197  obsThFactory["mueeZHcc1000_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2198  obsThFactory["mueeZHcc1000_p80_m20"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2199  obsThFactory["mueeZHcc1000_m80_p20"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2200  obsThFactory["mueeZHcc1000_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2201  obsThFactory["mueeZHcc1000_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2202  //
2203  obsThFactory["mueeZHcc1400_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2204  obsThFactory["mueeZHcc1400_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2205  obsThFactory["mueeZHcc1400_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2206  obsThFactory["mueeZHcc1400_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2207  //
2208  obsThFactory["mueeZHcc1500_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2209  obsThFactory["mueeZHcc1500_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2210  obsThFactory["mueeZHcc1500_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2211  obsThFactory["mueeZHcc1500_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2212  //
2213  obsThFactory["mueeZHcc3000_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2214  obsThFactory["mueeZHcc3000_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2215  obsThFactory["mueeZHcc3000_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2216  obsThFactory["mueeZHcc3000_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2217  //
2218  obsThFactory["mueeZHgg240"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_240);
2219  obsThFactory["mueeZHgg250"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_250);
2220  obsThFactory["mueeZHgg350"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_350);
2221  obsThFactory["mueeZHgg365"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_365);
2222  obsThFactory["mueeZHgg380"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_380);
2223  obsThFactory["mueeZHgg500"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_500);
2224  obsThFactory["mueeZHgg1000"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_1000);
2225  obsThFactory["mueeZHgg1400"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_1400);
2226  obsThFactory["mueeZHgg1500"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_1500);
2227  obsThFactory["mueeZHgg3000"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_3000);
2228  //
2229  obsThFactory["mueeZHgg250_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2230  obsThFactory["mueeZHgg250_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2231  obsThFactory["mueeZHgg250_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2232  obsThFactory["mueeZHgg250_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2233  //
2234  obsThFactory["mueeZHgg350_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2235  obsThFactory["mueeZHgg350_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2236  obsThFactory["mueeZHgg350_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2237  obsThFactory["mueeZHgg350_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2238  //
2239  obsThFactory["mueeZHgg380_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2240  obsThFactory["mueeZHgg380_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2241  obsThFactory["mueeZHgg380_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2242  obsThFactory["mueeZHgg380_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2243  //
2244  obsThFactory["mueeZHgg500_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2245  obsThFactory["mueeZHgg500_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2246  obsThFactory["mueeZHgg500_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2247  obsThFactory["mueeZHgg500_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2248  //
2249  obsThFactory["mueeZHgg1000_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2250  obsThFactory["mueeZHgg1000_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2251  obsThFactory["mueeZHgg1000_p80_m20"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2252  obsThFactory["mueeZHgg1000_m80_p20"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2253  obsThFactory["mueeZHgg1000_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2254  obsThFactory["mueeZHgg1000_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2255  //
2256  obsThFactory["mueeZHgg1400_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2257  obsThFactory["mueeZHgg1400_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2258  obsThFactory["mueeZHgg1400_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2259  obsThFactory["mueeZHgg1400_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2260  //
2261  obsThFactory["mueeZHgg1500_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2262  obsThFactory["mueeZHgg1500_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2263  obsThFactory["mueeZHgg1500_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2264  obsThFactory["mueeZHgg1500_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2265  //
2266  obsThFactory["mueeZHgg3000_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2267  obsThFactory["mueeZHgg3000_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2268  obsThFactory["mueeZHgg3000_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2269  obsThFactory["mueeZHgg3000_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2270  //
2271  obsThFactory["mueeZHWW240"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_240);
2272  obsThFactory["mueeZHWW250"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_250);
2273  obsThFactory["mueeZHWW350"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_350);
2274  obsThFactory["mueeZHWW365"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_365);
2275  obsThFactory["mueeZHWW380"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_380);
2276  obsThFactory["mueeZHWW500"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_500);
2277  obsThFactory["mueeZHWW1000"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_1000);
2278  obsThFactory["mueeZHWW1400"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_1400);
2279  obsThFactory["mueeZHWW1500"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_1500);
2280  obsThFactory["mueeZHWW3000"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_3000);
2281  //
2282  obsThFactory["mueeZHWW250_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2283  obsThFactory["mueeZHWW250_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2284  obsThFactory["mueeZHWW250_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2285  obsThFactory["mueeZHWW250_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2286  //
2287  obsThFactory["mueeZHWW350_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2288  obsThFactory["mueeZHWW350_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2289  obsThFactory["mueeZHWW350_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2290  obsThFactory["mueeZHWW350_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2291  //
2292  obsThFactory["mueeZHWW380_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2293  obsThFactory["mueeZHWW380_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2294  obsThFactory["mueeZHWW380_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2295  obsThFactory["mueeZHWW380_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2296  //
2297  obsThFactory["mueeZHWW500_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2298  obsThFactory["mueeZHWW500_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2299  obsThFactory["mueeZHWW500_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2300  obsThFactory["mueeZHWW500_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2301  //
2302  obsThFactory["mueeZHWW1000_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2303  obsThFactory["mueeZHWW1000_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2304  obsThFactory["mueeZHWW1000_p80_m20"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2305  obsThFactory["mueeZHWW1000_m80_p20"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2306  obsThFactory["mueeZHWW1000_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2307  obsThFactory["mueeZHWW1000_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2308  //
2309  obsThFactory["mueeZHWW1400_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2310  obsThFactory["mueeZHWW1400_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2311  obsThFactory["mueeZHWW1400_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2312  obsThFactory["mueeZHWW1400_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2313  //
2314  obsThFactory["mueeZHWW1500_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2315  obsThFactory["mueeZHWW1500_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2316  obsThFactory["mueeZHWW1500_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2317  obsThFactory["mueeZHWW1500_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2318  //
2319  obsThFactory["mueeZHWW3000_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2320  obsThFactory["mueeZHWW3000_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2321  obsThFactory["mueeZHWW3000_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2322  obsThFactory["mueeZHWW3000_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2323  //
2324  obsThFactory["mueeZHtautau240"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_240);
2325  obsThFactory["mueeZHtautau250"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_250);
2326  obsThFactory["mueeZHtautau350"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_350);
2327  obsThFactory["mueeZHtautau365"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_365);
2328  obsThFactory["mueeZHtautau380"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_380);
2329  obsThFactory["mueeZHtautau500"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_500);
2330  obsThFactory["mueeZHtautau1000"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_1000);
2331  obsThFactory["mueeZHtautau1400"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_1400);
2332  obsThFactory["mueeZHtautau1500"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_1500);
2333  obsThFactory["mueeZHtautau3000"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_3000);
2334  //
2335  obsThFactory["mueeZHtautau250_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2336  obsThFactory["mueeZHtautau250_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2337  obsThFactory["mueeZHtautau250_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2338  obsThFactory["mueeZHtautau250_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2339  //
2340  obsThFactory["mueeZHtautau350_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2341  obsThFactory["mueeZHtautau350_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2342  obsThFactory["mueeZHtautau350_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2343  obsThFactory["mueeZHtautau350_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2344  //
2345  obsThFactory["mueeZHtautau380_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2346  obsThFactory["mueeZHtautau380_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2347  obsThFactory["mueeZHtautau380_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2348  obsThFactory["mueeZHtautau380_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2349  //
2350  obsThFactory["mueeZHtautau500_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2351  obsThFactory["mueeZHtautau500_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2352  obsThFactory["mueeZHtautau500_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2353  obsThFactory["mueeZHtautau500_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2354  //
2355  obsThFactory["mueeZHtautau1000_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2356  obsThFactory["mueeZHtautau1000_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2357  obsThFactory["mueeZHtautau1000_p80_m20"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2358  obsThFactory["mueeZHtautau1000_m80_p20"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2359  obsThFactory["mueeZHtautau1000_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2360  obsThFactory["mueeZHtautau1000_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2361  //
2362  obsThFactory["mueeZHtautau1400_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2363  obsThFactory["mueeZHtautau1400_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2364  obsThFactory["mueeZHtautau1400_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2365  obsThFactory["mueeZHtautau1400_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2366  //
2367  obsThFactory["mueeZHtautau1500_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2368  obsThFactory["mueeZHtautau1500_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2369  obsThFactory["mueeZHtautau1500_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2370  obsThFactory["mueeZHtautau1500_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2371  //
2372  obsThFactory["mueeZHtautau3000_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2373  obsThFactory["mueeZHtautau3000_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2374  obsThFactory["mueeZHtautau3000_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2375  obsThFactory["mueeZHtautau3000_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2376  //
2377  obsThFactory["mueeZHZZ240"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_240);
2378  obsThFactory["mueeZHZZ250"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_250);
2379  obsThFactory["mueeZHZZ350"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_350);
2380  obsThFactory["mueeZHZZ365"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_365);
2381  obsThFactory["mueeZHZZ380"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_380);
2382  obsThFactory["mueeZHZZ500"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_500);
2383  obsThFactory["mueeZHZZ1000"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_1000);
2384  obsThFactory["mueeZHZZ1400"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_1400);
2385  obsThFactory["mueeZHZZ1500"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_1500);
2386  obsThFactory["mueeZHZZ3000"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_3000);
2387  //
2388  obsThFactory["mueeZHZZ250_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2389  obsThFactory["mueeZHZZ250_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2390  obsThFactory["mueeZHZZ250_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2391  obsThFactory["mueeZHZZ250_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2392  //
2393  obsThFactory["mueeZHZZ350_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2394  obsThFactory["mueeZHZZ350_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2395  obsThFactory["mueeZHZZ350_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2396  obsThFactory["mueeZHZZ350_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2397  //
2398  obsThFactory["mueeZHZZ380_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2399  obsThFactory["mueeZHZZ380_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2400  obsThFactory["mueeZHZZ380_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2401  obsThFactory["mueeZHZZ380_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2402  //
2403  obsThFactory["mueeZHZZ500_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2404  obsThFactory["mueeZHZZ500_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2405  obsThFactory["mueeZHZZ500_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2406  obsThFactory["mueeZHZZ500_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2407  //
2408  obsThFactory["mueeZHZZ1000_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2409  obsThFactory["mueeZHZZ1000_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2410  obsThFactory["mueeZHZZ1000_p80_m20"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2411  obsThFactory["mueeZHZZ1000_m80_p20"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2412  obsThFactory["mueeZHZZ1000_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2413  obsThFactory["mueeZHZZ1000_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2414  //
2415  obsThFactory["mueeZHZZ1400_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2416  obsThFactory["mueeZHZZ1400_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2417  obsThFactory["mueeZHZZ1400_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2418  obsThFactory["mueeZHZZ1400_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2419  //
2420  obsThFactory["mueeZHZZ1500_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2421  obsThFactory["mueeZHZZ1500_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2422  obsThFactory["mueeZHZZ1500_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2423  obsThFactory["mueeZHZZ1500_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2424  //
2425  obsThFactory["mueeZHZZ3000_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2426  obsThFactory["mueeZHZZ3000_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2427  obsThFactory["mueeZHZZ3000_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2428  obsThFactory["mueeZHZZ3000_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2429  //
2430  obsThFactory["mueeZHZga240"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_240);
2431  obsThFactory["mueeZHZga250"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_250);
2432  obsThFactory["mueeZHZga350"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_350);
2433  obsThFactory["mueeZHZga365"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_365);
2434  obsThFactory["mueeZHZga380"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_380);
2435  obsThFactory["mueeZHZga500"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_500);
2436  obsThFactory["mueeZHZga1000"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_1000);
2437  obsThFactory["mueeZHZga1400"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_1400);
2438  obsThFactory["mueeZHZga1500"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_1500);
2439  obsThFactory["mueeZHZga3000"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_3000);
2440  //
2441  obsThFactory["mueeZHZga250_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2442  obsThFactory["mueeZHZga250_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2443  obsThFactory["mueeZHZga250_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2444  obsThFactory["mueeZHZga250_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2445  //
2446  obsThFactory["mueeZHZga350_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2447  obsThFactory["mueeZHZga350_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2448  obsThFactory["mueeZHZga350_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2449  obsThFactory["mueeZHZga350_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2450  //
2451  obsThFactory["mueeZHZga380_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2452  obsThFactory["mueeZHZga380_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2453  obsThFactory["mueeZHZga380_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2454  obsThFactory["mueeZHZga380_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2455  //
2456  obsThFactory["mueeZHZga500_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2457  obsThFactory["mueeZHZga500_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2458  obsThFactory["mueeZHZga500_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2459  obsThFactory["mueeZHZga500_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2460  //
2461  obsThFactory["mueeZHZga1000_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2462  obsThFactory["mueeZHZga1000_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2463  obsThFactory["mueeZHZga1000_p80_m20"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2464  obsThFactory["mueeZHZga1000_m80_p20"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2465  obsThFactory["mueeZHZga1000_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2466  obsThFactory["mueeZHZga1000_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2467  //
2468  obsThFactory["mueeZHZga1400_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2469  obsThFactory["mueeZHZga1400_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2470  obsThFactory["mueeZHZga1400_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2471  obsThFactory["mueeZHZga1400_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2472  //
2473  obsThFactory["mueeZHZga1500_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2474  obsThFactory["mueeZHZga1500_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2475  obsThFactory["mueeZHZga1500_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2476  obsThFactory["mueeZHZga1500_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2477  //
2478  obsThFactory["mueeZHZga3000_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2479  obsThFactory["mueeZHZga3000_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2480  obsThFactory["mueeZHZga3000_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2481  obsThFactory["mueeZHZga3000_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2482  //
2483  obsThFactory["mueeZHgaga240"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_240);
2484  obsThFactory["mueeZHgaga250"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_250);
2485  obsThFactory["mueeZHgaga350"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_350);
2486  obsThFactory["mueeZHgaga365"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_365);
2487  obsThFactory["mueeZHgaga380"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_380);
2488  obsThFactory["mueeZHgaga500"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_500);
2489  obsThFactory["mueeZHgaga1000"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_1000);
2490  obsThFactory["mueeZHgaga1400"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_1400);
2491  obsThFactory["mueeZHgaga1500"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_1500);
2492  obsThFactory["mueeZHgaga3000"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_3000);
2493  //
2494  obsThFactory["mueeZHgaga250_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2495  obsThFactory["mueeZHgaga250_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2496  obsThFactory["mueeZHgaga250_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2497  obsThFactory["mueeZHgaga250_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2498  //
2499  obsThFactory["mueeZHgaga350_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2500  obsThFactory["mueeZHgaga350_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2501  obsThFactory["mueeZHgaga350_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2502  obsThFactory["mueeZHgaga350_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2503  //
2504  obsThFactory["mueeZHgaga380_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2505  obsThFactory["mueeZHgaga380_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2506  obsThFactory["mueeZHgaga380_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2507  obsThFactory["mueeZHgaga380_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2508  //
2509  obsThFactory["mueeZHgaga500_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2510  obsThFactory["mueeZHgaga500_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2511  obsThFactory["mueeZHgaga500_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2512  obsThFactory["mueeZHgaga500_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2513  //
2514  obsThFactory["mueeZHgaga1000_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2515  obsThFactory["mueeZHgaga1000_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2516  obsThFactory["mueeZHgaga1000_p80_m20"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2517  obsThFactory["mueeZHgaga1000_m80_p20"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2518  obsThFactory["mueeZHgaga1000_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2519  obsThFactory["mueeZHgaga1000_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2520  //
2521  obsThFactory["mueeZHgaga1400_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2522  obsThFactory["mueeZHgaga1400_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2523  obsThFactory["mueeZHgaga1400_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2524  obsThFactory["mueeZHgaga1400_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2525  //
2526  obsThFactory["mueeZHgaga1500_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2527  obsThFactory["mueeZHgaga1500_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2528  obsThFactory["mueeZHgaga1500_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2529  obsThFactory["mueeZHgaga1500_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2530  //
2531  obsThFactory["mueeZHgaga3000_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2532  obsThFactory["mueeZHgaga3000_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2533  obsThFactory["mueeZHgaga3000_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2534  obsThFactory["mueeZHgaga3000_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2535  //
2536  obsThFactory["mueeZHmumu240"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_240);
2537  obsThFactory["mueeZHmumu250"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_250);
2538  obsThFactory["mueeZHmumu350"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_350);
2539  obsThFactory["mueeZHmumu365"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_365);
2540  obsThFactory["mueeZHmumu380"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_380);
2541  obsThFactory["mueeZHmumu500"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_500);
2542  obsThFactory["mueeZHmumu1000"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_1000);
2543  obsThFactory["mueeZHmumu1400"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_1400);
2544  obsThFactory["mueeZHmumu1500"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_1500);
2545  obsThFactory["mueeZHmumu3000"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_3000);
2546  //
2547  obsThFactory["mueeZHmumu250_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2548  obsThFactory["mueeZHmumu250_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2549  obsThFactory["mueeZHmumu250_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2550  obsThFactory["mueeZHmumu250_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2551  //
2552  obsThFactory["mueeZHmumu350_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2553  obsThFactory["mueeZHmumu350_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2554  obsThFactory["mueeZHmumu350_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2555  obsThFactory["mueeZHmumu350_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2556  //
2557  obsThFactory["mueeZHmumu380_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2558  obsThFactory["mueeZHmumu380_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2559  obsThFactory["mueeZHmumu380_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2560  obsThFactory["mueeZHmumu380_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2561  //
2562  obsThFactory["mueeZHmumu500_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2563  obsThFactory["mueeZHmumu500_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2564  obsThFactory["mueeZHmumu500_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2565  obsThFactory["mueeZHmumu500_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2566  //
2567  obsThFactory["mueeZHmumu1000_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2568  obsThFactory["mueeZHmumu1000_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2569  obsThFactory["mueeZHmumu1000_p80_m20"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2570  obsThFactory["mueeZHmumu1000_m80_p20"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2571  obsThFactory["mueeZHmumu1000_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2572  obsThFactory["mueeZHmumu1000_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2573  //
2574  obsThFactory["mueeZHmumu1400_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2575  obsThFactory["mueeZHmumu1400_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2576  obsThFactory["mueeZHmumu1400_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2577  obsThFactory["mueeZHmumu1400_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2578  //
2579  obsThFactory["mueeZHmumu1500_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2580  obsThFactory["mueeZHmumu1500_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2581  obsThFactory["mueeZHmumu1500_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2582  obsThFactory["mueeZHmumu1500_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2583  //
2584  obsThFactory["mueeZHmumu3000_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2585  obsThFactory["mueeZHmumu3000_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2586  obsThFactory["mueeZHmumu3000_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2587  obsThFactory["mueeZHmumu3000_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2588  //
2589  obsThFactory["mueeZHinv240"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_240);
2590  obsThFactory["mueeZHinv250"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_250);
2591  obsThFactory["mueeZHinv350"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_350);
2592  obsThFactory["mueeZHinv365"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_365);
2593  obsThFactory["mueeZHinv380"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_380);
2594  obsThFactory["mueeZHinv500"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_500);
2595  //
2596  obsThFactory["mueeZHinv250_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2597  obsThFactory["mueeZHinv250_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2598  obsThFactory["mueeZHinv250_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2599  obsThFactory["mueeZHinv250_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2600  //
2601  obsThFactory["mueeZHinv350_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2602  obsThFactory["mueeZHinv350_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2603  obsThFactory["mueeZHinv350_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2604  obsThFactory["mueeZHinv350_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2605  //
2606  obsThFactory["mueeZHinv380_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2607  obsThFactory["mueeZHinv380_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2608  obsThFactory["mueeZHinv380_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2609  obsThFactory["mueeZHinv380_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2610  //
2611  obsThFactory["mueeZHinv500_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2612  obsThFactory["mueeZHinv500_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2613  obsThFactory["mueeZHinv500_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2614  obsThFactory["mueeZHinv500_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2615  //
2616  obsThFactory["mueeZHinv1000_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2617  obsThFactory["mueeZHinv1000_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2618  obsThFactory["mueeZHinv1000_p80_m20"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2619  obsThFactory["mueeZHinv1000_m80_p20"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2620  obsThFactory["mueeZHinv1000_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2621  obsThFactory["mueeZHinv1000_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2622  //
2623  obsThFactory["mueeZHinv1400_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2624  obsThFactory["mueeZHinv1400_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2625  obsThFactory["mueeZHinv1400_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2626  obsThFactory["mueeZHinv1400_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2627  //
2628  obsThFactory["mueeZHinv1500_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2629  obsThFactory["mueeZHinv1500_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2630  obsThFactory["mueeZHinv1500_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2631  obsThFactory["mueeZHinv1500_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2632  //
2633  obsThFactory["mueeZHinv3000_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2634  obsThFactory["mueeZHinv3000_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2635  obsThFactory["mueeZHinv3000_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2636  obsThFactory["mueeZHinv3000_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2637  //
2638  obsThFactory["mueeZHBRinv240"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_240);
2639  obsThFactory["mueeZHBRinv250"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_250);
2640  obsThFactory["mueeZHBRinv350"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_350);
2641  obsThFactory["mueeZHBRinv365"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_365);
2642  obsThFactory["mueeZHBRinv380"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_380);
2643  obsThFactory["mueeZHBRinv500"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_500);
2644  //
2645  obsThFactory["mueeZHBRinv250_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2646  obsThFactory["mueeZHBRinv250_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2647  obsThFactory["mueeZHBRinv250_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2648  obsThFactory["mueeZHBRinv250_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2649  //
2650  obsThFactory["mueeZHBRinv350_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2651  obsThFactory["mueeZHBRinv350_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2652  obsThFactory["mueeZHBRinv350_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2653  obsThFactory["mueeZHBRinv350_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2654  //
2655  obsThFactory["mueeZHBRinv380_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2656  obsThFactory["mueeZHBRinv380_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2657  obsThFactory["mueeZHBRinv380_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2658  obsThFactory["mueeZHBRinv380_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2659  //
2660  obsThFactory["mueeZHBRinv500_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2661  obsThFactory["mueeZHBRinv500_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2662  obsThFactory["mueeZHBRinv500_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2663  obsThFactory["mueeZHBRinv500_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2664  //
2665  obsThFactory["mueeZHBRinv1000_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2666  obsThFactory["mueeZHBRinv1000_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2667  obsThFactory["mueeZHBRinv1000_p80_m20"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2668  obsThFactory["mueeZHBRinv1000_m80_p20"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2669  obsThFactory["mueeZHBRinv1000_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2670  obsThFactory["mueeZHBRinv1000_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2671  //
2672  obsThFactory["mueeZHBRinv1400_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2673  obsThFactory["mueeZHBRinv1400_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2674  obsThFactory["mueeZHBRinv1400_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2675  obsThFactory["mueeZHBRinv1400_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2676  //
2677  obsThFactory["mueeZHBRinv1500_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2678  obsThFactory["mueeZHBRinv1500_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2679  obsThFactory["mueeZHBRinv1500_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2680  obsThFactory["mueeZHBRinv1500_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2681  //
2682  obsThFactory["mueeZHBRinv3000_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2683  obsThFactory["mueeZHBRinv3000_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2684  obsThFactory["mueeZHBRinv3000_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2685  obsThFactory["mueeZHBRinv3000_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2686  //
2687  // ZBF
2688  obsThFactory["mueeZBFbb240"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_240);
2689  obsThFactory["mueeZBFbb250"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_250);
2690  obsThFactory["mueeZBFbb350"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_350);
2691  obsThFactory["mueeZBFbb365"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_365);
2692  obsThFactory["mueeZBFbb380"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_380);
2693  obsThFactory["mueeZBFbb500"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_500);
2694  obsThFactory["mueeZBFbb1000"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_1000);
2695  obsThFactory["mueeZBFbb1400"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_1400);
2696  obsThFactory["mueeZBFbb1500"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_1500);
2697  obsThFactory["mueeZBFbb3000"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_3000);
2698  //
2699  obsThFactory["mueeZBFbb250_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2700  obsThFactory["mueeZBFbb250_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2701  obsThFactory["mueeZBFbb250_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2702  obsThFactory["mueeZBFbb250_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2703  //
2704  obsThFactory["mueeZBFbb350_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2705  obsThFactory["mueeZBFbb350_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2706  obsThFactory["mueeZBFbb350_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2707  obsThFactory["mueeZBFbb350_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2708  //
2709  obsThFactory["mueeZBFbb380_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2710  obsThFactory["mueeZBFbb380_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2711  obsThFactory["mueeZBFbb380_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2712  obsThFactory["mueeZBFbb380_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2713  //
2714  obsThFactory["mueeZBFbb500_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2715  obsThFactory["mueeZBFbb500_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2716  obsThFactory["mueeZBFbb500_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2717  obsThFactory["mueeZBFbb500_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2718  //
2719  obsThFactory["mueeZBFbb1000_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2720  obsThFactory["mueeZBFbb1000_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2721  obsThFactory["mueeZBFbb1000_p80_m20"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2722  obsThFactory["mueeZBFbb1000_m80_p20"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2723  obsThFactory["mueeZBFbb1000_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2724  obsThFactory["mueeZBFbb1000_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2725  //
2726  obsThFactory["mueeZBFbb1400_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2727  obsThFactory["mueeZBFbb1400_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2728  obsThFactory["mueeZBFbb1400_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2729  obsThFactory["mueeZBFbb1400_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2730  //
2731  obsThFactory["mueeZBFbb1500_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2732  obsThFactory["mueeZBFbb1500_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2733  obsThFactory["mueeZBFbb1500_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2734  obsThFactory["mueeZBFbb1500_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2735  //
2736  obsThFactory["mueeZBFbb3000_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2737  obsThFactory["mueeZBFbb3000_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2738  obsThFactory["mueeZBFbb3000_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2739  obsThFactory["mueeZBFbb3000_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2740  //
2741  // eettH
2742  obsThFactory["mueettHbb500"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_500);
2743  obsThFactory["mueettHbb1000"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_1000);
2744  obsThFactory["mueettHbb1400"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_1400);
2745  obsThFactory["mueettHbb1500"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_1500);
2746  obsThFactory["mueettHbb3000"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_3000);
2747  //
2748  obsThFactory["mueettHbb500_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2749  obsThFactory["mueettHbb500_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2750  obsThFactory["mueettHbb500_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2751  obsThFactory["mueettHbb500_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2752  //
2753  obsThFactory["mueettHbb1000_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2754  obsThFactory["mueettHbb1000_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2755  obsThFactory["mueettHbb1000_p80_m20"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2756  obsThFactory["mueettHbb1000_m80_p20"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2757  obsThFactory["mueettHbb1000_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2758  obsThFactory["mueettHbb1000_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2759  //
2760  obsThFactory["mueettHbb1400_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2761  obsThFactory["mueettHbb1400_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2762  obsThFactory["mueettHbb1400_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2763  obsThFactory["mueettHbb1400_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2764  //
2765  obsThFactory["mueettHbb1500_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2766  obsThFactory["mueettHbb1500_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2767  obsThFactory["mueettHbb1500_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2768  obsThFactory["mueettHbb1500_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2769  //
2770  obsThFactory["mueettHbb3000_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2771  obsThFactory["mueettHbb3000_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2772  obsThFactory["mueettHbb3000_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2773  obsThFactory["mueettHbb3000_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2774  //
2775  //----- Full Signal strengths per prod and decay: Lepton-Hadron colliders ----------
2776  //
2777  obsThFactory["muepWBFbb1300"] = boost::bind(boost::factory<muepWBFbb*>(), _1, sqrt_s_LHeC_1_3);
2778  obsThFactory["muepWBFcc1300"] = boost::bind(boost::factory<muepWBFcc*>(), _1, sqrt_s_LHeC_1_3);
2779  obsThFactory["muepWBFgg1300"] = boost::bind(boost::factory<muepWBFgg*>(), _1, sqrt_s_LHeC_1_3);
2780  obsThFactory["muepWBFWW2l2v1300"] = boost::bind(boost::factory<muepWBFWW2l2v*>(), _1, sqrt_s_LHeC_1_3);
2781  obsThFactory["muepWBFZZ4l1300"] = boost::bind(boost::factory<muepWBFZZ4l*>(), _1, sqrt_s_LHeC_1_3);
2782  obsThFactory["muepWBFgaga1300"] = boost::bind(boost::factory<muepWBFgaga*>(), _1, sqrt_s_LHeC_1_3);
2783  obsThFactory["muepWBFtautau1300"] = boost::bind(boost::factory<muepWBFtautau*>(), _1, sqrt_s_LHeC_1_3);
2784  //
2785  obsThFactory["muepWBFbb1800"] = boost::bind(boost::factory<muepWBFbb*>(), _1, sqrt_s_LHeC_1_8);
2786  obsThFactory["muepWBFcc1800"] = boost::bind(boost::factory<muepWBFcc*>(), _1, sqrt_s_LHeC_1_8);
2787  obsThFactory["muepWBFgg1800"] = boost::bind(boost::factory<muepWBFgg*>(), _1, sqrt_s_LHeC_1_8);
2788  obsThFactory["muepWBFWW2l2v1800"] = boost::bind(boost::factory<muepWBFWW2l2v*>(), _1, sqrt_s_LHeC_1_8);
2789  obsThFactory["muepWBFZZ4l1800"] = boost::bind(boost::factory<muepWBFZZ4l*>(), _1, sqrt_s_LHeC_1_8);
2790  obsThFactory["muepWBFgaga1800"] = boost::bind(boost::factory<muepWBFgaga*>(), _1, sqrt_s_LHeC_1_8);
2791  obsThFactory["muepWBFtautau1800"] = boost::bind(boost::factory<muepWBFtautau*>(), _1, sqrt_s_LHeC_1_8);
2792  //
2793  obsThFactory["muepWBFbb3500"] = boost::bind(boost::factory<muepWBFbb*>(), _1, sqrt_s_FCCep_3_5);
2794  obsThFactory["muepWBFcc3500"] = boost::bind(boost::factory<muepWBFcc*>(), _1, sqrt_s_FCCep_3_5);
2795  obsThFactory["muepWBFgg3500"] = boost::bind(boost::factory<muepWBFgg*>(), _1, sqrt_s_FCCep_3_5);
2796  obsThFactory["muepWBFWW2l2v3500"] = boost::bind(boost::factory<muepWBFWW2l2v*>(), _1, sqrt_s_FCCep_3_5);
2797  obsThFactory["muepWBFZZ4l3500"] = boost::bind(boost::factory<muepWBFZZ4l*>(), _1, sqrt_s_FCCep_3_5);
2798  obsThFactory["muepWBFgaga3500"] = boost::bind(boost::factory<muepWBFgaga*>(), _1, sqrt_s_FCCep_3_5);
2799  obsThFactory["muepWBFtautau3500"] = boost::bind(boost::factory<muepWBFtautau*>(), _1, sqrt_s_FCCep_3_5);
2800  //
2801  obsThFactory["muepWBFbb5000"] = boost::bind(boost::factory<muepWBFbb*>(), _1, sqrt_s_FCCep_5);
2802  obsThFactory["muepWBFcc5000"] = boost::bind(boost::factory<muepWBFcc*>(), _1, sqrt_s_FCCep_5);
2803  obsThFactory["muepWBFgg5000"] = boost::bind(boost::factory<muepWBFgg*>(), _1, sqrt_s_FCCep_5);
2804  obsThFactory["muepWBFWW2l2v5000"] = boost::bind(boost::factory<muepWBFWW2l2v*>(), _1, sqrt_s_FCCep_5);
2805  obsThFactory["muepWBFZZ4l5000"] = boost::bind(boost::factory<muepWBFZZ4l*>(), _1, sqrt_s_FCCep_5);
2806  obsThFactory["muepWBFgaga5000"] = boost::bind(boost::factory<muepWBFgaga*>(), _1, sqrt_s_FCCep_5);
2807  obsThFactory["muepWBFtautau5000"] = boost::bind(boost::factory<muepWBFtautau*>(), _1, sqrt_s_FCCep_5);
2808  //
2809  obsThFactory["muepZBFbb1300"] = boost::bind(boost::factory<muepZBFbb*>(), _1, sqrt_s_LHeC_1_3);
2810  obsThFactory["muepZBFcc1300"] = boost::bind(boost::factory<muepZBFcc*>(), _1, sqrt_s_LHeC_1_3);
2811  obsThFactory["muepZBFgg1300"] = boost::bind(boost::factory<muepZBFgg*>(), _1, sqrt_s_LHeC_1_3);
2812  obsThFactory["muepZBFWW2l2v1300"] = boost::bind(boost::factory<muepZBFWW2l2v*>(), _1, sqrt_s_LHeC_1_3);
2813  obsThFactory["muepZBFZZ4l1300"] = boost::bind(boost::factory<muepZBFZZ4l*>(), _1, sqrt_s_LHeC_1_3);
2814  obsThFactory["muepZBFgaga1300"] = boost::bind(boost::factory<muepZBFgaga*>(), _1, sqrt_s_LHeC_1_3);
2815  obsThFactory["muepZBFtautau1300"] = boost::bind(boost::factory<muepZBFtautau*>(), _1, sqrt_s_LHeC_1_3);
2816  //
2817  obsThFactory["muepZBFbb1800"] = boost::bind(boost::factory<muepZBFbb*>(), _1, sqrt_s_LHeC_1_8);
2818  obsThFactory["muepZBFcc1800"] = boost::bind(boost::factory<muepZBFcc*>(), _1, sqrt_s_LHeC_1_8);
2819  obsThFactory["muepZBFgg1800"] = boost::bind(boost::factory<muepZBFgg*>(), _1, sqrt_s_LHeC_1_8);
2820  obsThFactory["muepZBFWW2l2v1800"] = boost::bind(boost::factory<muepZBFWW2l2v*>(), _1, sqrt_s_LHeC_1_8);
2821  obsThFactory["muepZBFZZ4l1800"] = boost::bind(boost::factory<muepZBFZZ4l*>(), _1, sqrt_s_LHeC_1_8);
2822  obsThFactory["muepZBFgaga1800"] = boost::bind(boost::factory<muepZBFgaga*>(), _1, sqrt_s_LHeC_1_8);
2823  obsThFactory["muepZBFtautau1800"] = boost::bind(boost::factory<muepZBFtautau*>(), _1, sqrt_s_LHeC_1_8);
2824  //
2825  obsThFactory["muepZBFbb3500"] = boost::bind(boost::factory<muepZBFbb*>(), _1, sqrt_s_FCCep_3_5);
2826  obsThFactory["muepZBFcc3500"] = boost::bind(boost::factory<muepZBFcc*>(), _1, sqrt_s_FCCep_3_5);
2827  obsThFactory["muepZBFgg3500"] = boost::bind(boost::factory<muepZBFgg*>(), _1, sqrt_s_FCCep_3_5);
2828  obsThFactory["muepZBFWW2l2v3500"] = boost::bind(boost::factory<muepZBFWW2l2v*>(), _1, sqrt_s_FCCep_3_5);
2829  obsThFactory["muepZBFZZ4l3500"] = boost::bind(boost::factory<muepZBFZZ4l*>(), _1, sqrt_s_FCCep_3_5);
2830  obsThFactory["muepZBFgaga3500"] = boost::bind(boost::factory<muepZBFgaga*>(), _1, sqrt_s_FCCep_3_5);
2831  obsThFactory["muepZBFtautau3500"] = boost::bind(boost::factory<muepZBFtautau*>(), _1, sqrt_s_FCCep_3_5);
2832  //
2833  obsThFactory["muepZBFbb5000"] = boost::bind(boost::factory<muepZBFbb*>(), _1, sqrt_s_FCCep_5);
2834  obsThFactory["muepZBFcc5000"] = boost::bind(boost::factory<muepZBFcc*>(), _1, sqrt_s_FCCep_5);
2835  obsThFactory["muepZBFgg5000"] = boost::bind(boost::factory<muepZBFgg*>(), _1, sqrt_s_FCCep_5);
2836  obsThFactory["muepZBFWW2l2v5000"] = boost::bind(boost::factory<muepZBFWW2l2v*>(), _1, sqrt_s_FCCep_5);
2837  obsThFactory["muepZBFZZ4l5000"] = boost::bind(boost::factory<muepZBFZZ4l*>(), _1, sqrt_s_FCCep_5);
2838  obsThFactory["muepZBFgaga5000"] = boost::bind(boost::factory<muepZBFgaga*>(), _1, sqrt_s_FCCep_5);
2839  obsThFactory["muepZBFtautau5000"] = boost::bind(boost::factory<muepZBFtautau*>(), _1, sqrt_s_FCCep_5);
2840  //
2841  //----- Limits ----------
2842  obsThFactory["UpperLimit_ppHZgammaA13"] = boost::bind(boost::factory<UpperLimit_ppHZgammaA13*>(), _1, sqrt_s_LHC13);
2843  obsThFactory["UpperLimit_ppHZgammaC13"] = boost::bind(boost::factory<UpperLimit_ppHZgammaC13*>(), _1, sqrt_s_LHC13);
2844  obsThFactory["UpperLimit_ppHZgammaA"] = boost::bind(boost::factory<UpperLimit_ppHZgammaA*>(), _1, sqrt_s_LHC8);
2845  obsThFactory["UpperLimit_ppHZgammaC"] = boost::bind(boost::factory<UpperLimit_ppHZgammaC*>(), _1, sqrt_s_LHC8);
2846  //----- Others ----------
2847  obsThFactory["cg_plus_ct"] = boost::factory<cg_plus_ct*>();
2848  obsThFactory["cga_plus_ct"] = boost::factory<cga_plus_ct*>();
2849  obsThFactory["cg_minus_cga"] = boost::factory<cg_minus_cga*>();
2850  obsThFactory["cV_plus_cb"] = boost::factory<cV_plus_cb*>();
2851  obsThFactory["cV_plus_ctau"] = boost::factory<cV_plus_ctau*>();
2852  obsThFactory["cb_minus_cc"] = boost::factory<cb_minus_cc*>();
2853  obsThFactory["cb_minus_ctau"] = boost::factory<cb_minus_ctau*>();
2854  obsThFactory["cc_minus_ctau"] = boost::factory<cc_minus_ctau*>();
2855 
2856  //----- e+e- -> W+ W- Optimized Observables -----
2857  obsThFactory["eeWWOO"] = boost::factory<eeWW*>();
2858 
2859  //----- Epsilon parameters -----
2860  obsThFactory["epsilon1"] = boost::factory<Epsilon1*>();
2861  obsThFactory["epsilon2"] = boost::factory<Epsilon2*>();
2862  obsThFactory["epsilon3"] = boost::factory<Epsilon3*>();
2863  obsThFactory["epsilonb"] = boost::factory<Epsilonb*>();
2864 
2865 
2866  //----- NPSMEFT6dtopquark -----
2867 
2868  obsThFactory["C_phit"] = boost::factory<C_phit*>();
2869  obsThFactory["C_phiQ3"] = boost::factory<C_phiQ3*>();
2870  obsThFactory["C_phiQ1"] = boost::factory<C_phiQ1*>();
2871  obsThFactory["C_tW"] = boost::factory<C_tW*>();
2872  obsThFactory["C_tB"] = boost::factory<C_tB*>();
2873  obsThFactory["C_tphi"] = boost::factory<C_tphi*>();
2874  obsThFactory["C_phib"] = boost::factory<C_phib*>();
2875  obsThFactory["C_bW"] = boost::factory<C_bW*>();
2876  obsThFactory["C_bB"] = boost::factory<C_bB*>();
2877 
2878  obsThFactory["Rb_NPSMEFT6dtopquark"] = boost::factory<Rb_NPSMEFT6dtopquark*>();
2879  obsThFactory["AFBLR"] = boost::factory<AFBLR*>();
2880  obsThFactory["SigmattZ"] = boost::factory<sigmattZ*>();
2881  obsThFactory["SigmattA_1"] = boost::factory<sigmattA_1*>();
2882  obsThFactory["SigmattA_2"] = boost::factory<sigmattA_2*>();
2883  obsThFactory["SigmattH"] = boost::factory<sigmattH*>();
2884  obsThFactory["SigmattW"] = boost::factory<sigmattW*>();
2885  obsThFactory["Sigmatq"] = boost::factory<sigmatq*>();
2886  obsThFactory["SigmatW"] = boost::factory<sigmatW*>();
2887  obsThFactory["SigmatqZ"] = boost::factory<sigmatqZ*>();
2888  obsThFactory["F0"] = boost::factory<F0*>();
2889  obsThFactory["FL"] = boost::factory<FL*>();
2890  obsThFactory["sigma_250_bb_eLpR"] = boost::factory<sigma_250_bb_eLpR*>();
2891  obsThFactory["a_250_bb_eLpR"] = boost::factory<a_250_bb_eLpR*>();
2892  obsThFactory["sigma_250_bb_eRpL"] = boost::factory<sigma_250_bb_eRpL*>();
2893  obsThFactory["a_250_bb_eRpL"] = boost::factory<a_250_bb_eRpL*>();
2894  obsThFactory["sigma_500_bb_eLpR"] = boost::factory<sigma_500_bb_eLpR*>();
2895  obsThFactory["a_500_bb_eLpR"] = boost::factory<a_500_bb_eLpR*>();
2896  obsThFactory["sigma_500_bb_eRpL"] = boost::factory<sigma_500_bb_eRpL*>();
2897  obsThFactory["a_500_bb_eRpL"] = boost::factory<a_500_bb_eRpL*>();
2898  obsThFactory["sigma_500_tt_eLpR"] = boost::factory<sigma_500_tt_eLpR*>();
2899  obsThFactory["a_500_tt_eLpR"] = boost::factory<a_500_tt_eLpR*>();
2900  obsThFactory["sigma_500_tt_eRpL"] = boost::factory<sigma_500_tt_eRpL*>();
2901  obsThFactory["a_500_tt_eRpL"] = boost::factory<a_500_tt_eRpL*>();
2902  obsThFactory["pt_500_tt_eLpR"] = boost::factory<pt_500_tt_eLpR*>();
2903  obsThFactory["pt_500_tt_eRpL"] = boost::factory<pt_500_tt_eRpL*>();
2904 
2905  obsThFactory["sigma_1000_bb_eLpR"] = boost::factory<sigma_1000_bb_eLpR*>();
2906  obsThFactory["a_1000_bb_eLpR"] = boost::factory<a_1000_bb_eLpR*>();
2907  obsThFactory["sigma_1000_bb_eRpL"] = boost::factory<sigma_1000_bb_eRpL*>();
2908  obsThFactory["a_1000_bb_eRpL"] = boost::factory<a_1000_bb_eRpL*>();
2909 
2910 
2911  //OPTIMIZED OBSERVABLES
2912 
2913  obsThFactory["op1"] = boost::factory<op1*>();
2914  obsThFactory["op2"] = boost::factory<op2*>();
2915  obsThFactory["op3"] = boost::factory<op3*>();
2916  obsThFactory["op4"] = boost::factory<op4*>();
2917 
2918  //OPTIMIZED OBSERVABLES 1000 GeV
2919 
2920  obsThFactory["op_1000_1"] = boost::factory<op_1000_1*>();
2921  obsThFactory["op_1000_2"] = boost::factory<op_1000_2*>();
2922  obsThFactory["op_1000_3"] = boost::factory<op_1000_3*>();
2923  obsThFactory["op_1000_4"] = boost::factory<op_1000_4*>();
2924  obsThFactory["op_1000_5"] = boost::factory<op_1000_5*>();
2925  obsThFactory["op_1000_6"] = boost::factory<op_1000_6*>();
2926  obsThFactory["op_1000_7"] = boost::factory<op_1000_7*>();
2927  obsThFactory["op_1000_8"] = boost::factory<op_1000_8*>();
2928 
2929  //----- Flavour observables -----
2930  //----- DF = 2 -----
2931  obsThFactory["DmBd"] = boost::factory<DmBd*>();
2932  obsThFactory["DmBs"] = boost::factory<DmBs*>();
2933  obsThFactory["RmBs"] = boost::factory<RmBs*>();
2934  obsThFactory["alpha"] = boost::factory<Alpha*>();
2935  obsThFactory["alpha_2a"] = boost::factory<Alpha_2a*>();
2936  obsThFactory["SJPsiK"] = boost::factory<SJPsiK*>();
2937  obsThFactory["C2beta"] = boost::factory<C2beta*>();
2938  obsThFactory["Betas_JPsiPhi"] = boost::factory<Betas_JPsiPhi*>();
2939  obsThFactory["EpsilonK"] = boost::factory<EpsilonK*>();
2940  obsThFactory["DmK"] = boost::factory<DmK*>();
2941  //----- CKM -----
2942  obsThFactory["Vud"] = boost::bind(boost::factory<VCKM*>(), _1, 1, 1);
2943  obsThFactory["Vus"] = boost::bind(boost::factory<VCKM*>(), _1, 1, 2);
2944  obsThFactory["Vub"] = boost::bind(boost::factory<VCKM*>(), _1, 1, 3);
2945  obsThFactory["Vcd"] = boost::bind(boost::factory<VCKM*>(), _1, 2, 1);
2946  obsThFactory["Vcs"] = boost::bind(boost::factory<VCKM*>(), _1, 2, 2);
2947  obsThFactory["Vcb"] = boost::bind(boost::factory<VCKM*>(), _1, 2, 3);
2948  obsThFactory["Vtd"] = boost::bind(boost::factory<VCKM*>(), _1, 3, 1);
2949  obsThFactory["Vts"] = boost::bind(boost::factory<VCKM*>(), _1, 3, 2);
2950  obsThFactory["Vtb"] = boost::bind(boost::factory<VCKM*>(), _1, 3, 3);
2951  obsThFactory["CKM_alpha"] = boost::factory<CKM_Alpha*>();
2952  obsThFactory["CKM_gamma"] = boost::factory<CKM_Gamma*>();
2953  obsThFactory["CKM_beta"] = boost::factory<CKM_Beta*>();
2954  obsThFactory["CKM_betas"] = boost::factory<CKM_Betas*>();
2955  obsThFactory["CKM_2betapgamma"] = boost::factory<CKM_2BpG*>();
2956  obsThFactory["CKM_s2beta"] = boost::factory<CKM_S2Beta*>();
2957  obsThFactory["CKM_c2beta"] = boost::factory<CKM_C2Beta*>();
2958  obsThFactory["CKM_rho"] = boost::factory<CKM_rho*>();
2959  obsThFactory["CKM_eta"] = boost::factory<CKM_eta*>();
2960  obsThFactory["CKM_sintheta12"] = boost::factory<CKM_SinTheta12*>();
2961  obsThFactory["CKM_sintheta13"] = boost::factory<CKM_SinTheta13*>();
2962  obsThFactory["CKM_sintheta23"] = boost::factory<CKM_SinTheta23*>();
2963  obsThFactory["CKM_delta"] = boost::factory<CKM_Delta*>();
2964  obsThFactory["J_CP"] = boost::factory<J_CP*>();
2965  obsThFactory["Rt"] = boost::factory<CKM_Rt*>();
2966  obsThFactory["Rts"] = boost::factory<CKM_Rts*>();
2967  obsThFactory["Rb"] = boost::factory<CKM_Rb*>();
2968  obsThFactory["VtdoVts"] = boost::factory<CKM_VtdoVts*>();
2969  obsThFactory["Abslam_t"] = boost::factory<Abslam_t*>();
2970  obsThFactory["Abslam_c"] = boost::factory<Abslam_c*>();
2971  obsThFactory["Abslam_u"] = boost::factory<Abslam_u*>();
2972  obsThFactory["Abslam_td"] = boost::factory<Abslam_td*>();
2973  obsThFactory["Abslam_cd"] = boost::factory<Abslam_cd*>();
2974  obsThFactory["Abslam_ud"] = boost::factory<Abslam_ud*>();
2975  obsThFactory["Abslam_ts"] = boost::factory<Abslam_ts*>();
2976  obsThFactory["Abslam_cs"] = boost::factory<Abslam_cs*>();
2977  obsThFactory["Abslam_us"] = boost::factory<Abslam_us*>();
2978  obsThFactory["Relam_t"] = boost::factory<Relam_t*>();
2979  obsThFactory["Relam_c"] = boost::factory<Relam_c*>();
2980  obsThFactory["Relam_u"] = boost::factory<Relam_u*>();
2981  obsThFactory["Relam_td"] = boost::factory<Relam_td*>();
2982  obsThFactory["Relam_cd"] = boost::factory<Relam_cd*>();
2983  obsThFactory["Relam_ud"] = boost::factory<Relam_ud*>();
2984  obsThFactory["Relam_ts"] = boost::factory<Relam_ts*>();
2985  obsThFactory["Relam_cs"] = boost::factory<Relam_cs*>();
2986  obsThFactory["Relam_us"] = boost::factory<Relam_us*>();
2987  obsThFactory["Imlam_t"] = boost::factory<Imlam_t*>();
2988  obsThFactory["Imlam_c"] = boost::factory<Imlam_c*>();
2989  obsThFactory["Imlam_u"] = boost::factory<Imlam_u*>();
2990  obsThFactory["Imlam_td"] = boost::factory<Imlam_td*>();
2991  obsThFactory["Imlam_cd"] = boost::factory<Imlam_cd*>();
2992  obsThFactory["Imlam_ud"] = boost::factory<Imlam_ud*>();
2993  obsThFactory["Imlam_ts"] = boost::factory<Imlam_ts*>();
2994  obsThFactory["Imlam_cs"] = boost::factory<Imlam_cs*>();
2995  obsThFactory["Imlam_us"] = boost::factory<Imlam_us*>();
2996  //----- B(s) to mu mu -----
2997  obsThFactory["BR_Bdmumu"] = boost::bind(boost::factory<Mll*>(), _1, 1, StandardModel::B_D, StandardModel::MU);
2998  obsThFactory["BRbar_Bdmumu"] = boost::bind(boost::factory<Mll*>(), _1, 2, StandardModel::B_D, StandardModel::MU);
2999  obsThFactory["Amumu_Bd"] = boost::bind(boost::factory<Mll*>(), _1, 3, StandardModel::B_D, StandardModel::MU);
3000  obsThFactory["Smumu_Bd"] = boost::bind(boost::factory<Mll*>(), _1, 4, StandardModel::B_D, StandardModel::MU);
3001 
3002  obsThFactory["BR_Bsmumu"] = boost::bind(boost::factory<Mll*>(), _1, 1, StandardModel::B_S, StandardModel::MU);
3003  obsThFactory["BRbar_Bsmumu"] = boost::bind(boost::factory<Mll*>(), _1, 2, StandardModel::B_S, StandardModel::MU);
3004  obsThFactory["Amumu_Bs"] = boost::bind(boost::factory<Mll*>(), _1, 3, StandardModel::B_S, StandardModel::MU);
3005  obsThFactory["Smumu_Bs"] = boost::bind(boost::factory<Mll*>(), _1, 4, StandardModel::B_S, StandardModel::MU);
3006  obsThFactory["BR_Bsee"] = boost::bind(boost::factory<Mll*>(), _1, 1, StandardModel::B_S, StandardModel::ELECTRON);
3007  obsThFactory["BRbar_Bsee"] = boost::bind(boost::factory<Mll*>(), _1, 2, StandardModel::B_S, StandardModel::ELECTRON);
3008  obsThFactory["Aee_Bs"] = boost::bind(boost::factory<Mll*>(), _1, 3, StandardModel::B_S, StandardModel::ELECTRON);
3009  obsThFactory["See_Bs"] = boost::bind(boost::factory<Mll*>(), _1, 4, StandardModel::B_S, StandardModel::ELECTRON);
3010 
3011  obsThFactory["BR_BdmumuOBR_Bsmumu"] = boost::factory<BdmumuOBsmumu*>();
3012  //----- b to q gamma -----
3013  obsThFactory["BR_bsgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, StandardModel::STRANGE, 1);
3014  obsThFactory["ACP_bsgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, StandardModel::STRANGE, 2);
3015  obsThFactory["BR_bdgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, StandardModel::DOWN, 1);
3016  obsThFactory["ACP_bdgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, StandardModel::DOWN, 2);
3017  obsThFactory["BR_bqgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, 1);
3018  obsThFactory["ACP_bqgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, 2);
3019 
3020  //----- Wilson coefficients -----
3021  obsThFactory["WC_real_C7g"] = boost::bind(boost::factory<WC_C7g*>(), _1, 0);
3022  obsThFactory["WC_imag_C7g"] = boost::bind(boost::factory<WC_C7g*>(), _1, 1);
3023  obsThFactory["WC_abs_C7g"] = boost::bind(boost::factory<WC_C7g*>(), _1, 2);
3024  obsThFactory["WC_arg_C7g"] = boost::bind(boost::factory<WC_C7g*>(), _1, 3);
3025 
3026  obsThFactory["WC_real_C9_mu"] = boost::bind(boost::factory<WC_C9*>(), _1, 0, StandardModel::MU);
3027  obsThFactory["WC_imag_C9_mu"] = boost::bind(boost::factory<WC_C9*>(), _1, 1, StandardModel::MU);
3028  obsThFactory["WC_abs_C9_mu"] = boost::bind(boost::factory<WC_C9*>(), _1, 2, StandardModel::MU);
3029  obsThFactory["WC_arg_C9_mu"] = boost::bind(boost::factory<WC_C9*>(), _1, 3, StandardModel::MU);
3030 
3031  obsThFactory["WC_real_C9_el"] = boost::bind(boost::factory<WC_C9*>(), _1, 0, StandardModel::ELECTRON);
3032  obsThFactory["WC_imag_C9_el"] = boost::bind(boost::factory<WC_C9*>(), _1, 1, StandardModel::ELECTRON);
3033  obsThFactory["WC_abs_C9_el"] = boost::bind(boost::factory<WC_C9*>(), _1, 2, StandardModel::ELECTRON);
3034  obsThFactory["WC_arg_C9_el"] = boost::bind(boost::factory<WC_C9*>(), _1, 3, StandardModel::ELECTRON);
3035 
3036  obsThFactory["WC_real_C10_mu"] = boost::bind(boost::factory<WC_C10*>(), _1, 0, StandardModel::MU);
3037  obsThFactory["WC_imag_C10_mu"] = boost::bind(boost::factory<WC_C10*>(), _1, 1, StandardModel::MU);
3038  obsThFactory["WC_abs_C10_mu"] = boost::bind(boost::factory<WC_C10*>(), _1, 2, StandardModel::MU);
3039  obsThFactory["WC_arg_C10_mu"] = boost::bind(boost::factory<WC_C10*>(), _1, 3, StandardModel::MU);
3040 
3041  obsThFactory["WC_real_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 0, StandardModel::ELECTRON);
3042  obsThFactory["WC_imag_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 1, StandardModel::ELECTRON);
3043  obsThFactory["WC_abs_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 2, StandardModel::ELECTRON);
3044  obsThFactory["WC_arg_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 3, StandardModel::ELECTRON);
3045 
3046  //----- B to K* ll -----
3047  obsThFactory["P_1_BdKstmu"] = boost::bind(boost::factory<P_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3048  obsThFactory["P_1_BdKste"] = boost::bind(boost::factory<P_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3049  obsThFactory["P_2_BdKstmu"] = boost::bind(boost::factory<P_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3050  obsThFactory["P_2_BdKste"] = boost::bind(boost::factory<P_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3051  obsThFactory["P_3_BdKstmu"] = boost::bind(boost::factory<P_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3052  obsThFactory["P_3_BdKste"] = boost::bind(boost::factory<P_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3053  obsThFactory["P_4p_BdKstmu"] = boost::bind(boost::factory<P_4Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3054  obsThFactory["P_4p_BdKste"] = boost::bind(boost::factory<P_4Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3055  obsThFactory["P_5p_BdKstmu"] = boost::bind(boost::factory<P_5Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3056  obsThFactory["P_5p_BdKste"] = boost::bind(boost::factory<P_5Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3057  obsThFactory["P_6p_BdKstmu"] = boost::bind(boost::factory<P_6Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3058  obsThFactory["P_6p_BdKste"] = boost::bind(boost::factory<P_6Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3059  obsThFactory["P_8p_BdKstmu"] = boost::bind(boost::factory<P_8Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3060  obsThFactory["P_8p_BdKste"] = boost::bind(boost::factory<P_8Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3061  obsThFactory["Gammap_BdKstmu"] = boost::bind(boost::factory<GammaPrime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3062  obsThFactory["A_FB_BdKstmu"] = boost::bind(boost::factory<A_FB*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3063  obsThFactory["BR_BdKstmu"] = boost::bind(boost::factory<BR_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3064  obsThFactory["BR_BdKste"] = boost::bind(boost::factory<BR_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3065  obsThFactory["RKst_BdKstll"] = boost::bind(boost::factory<R_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, StandardModel::ELECTRON);
3066  obsThFactory["RKstL_BdKstll"] = boost::bind(boost::factory<RL_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, StandardModel::ELECTRON);
3067  obsThFactory["RKstT_BdKstll"] = boost::bind(boost::factory<RT_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, StandardModel::ELECTRON);
3068  obsThFactory["R6_BdKstll"] = boost::bind(boost::factory<R_6*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, StandardModel::ELECTRON);
3069  obsThFactory["ACP_BdKstmu"] = boost::bind(boost::factory<ACP_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3070  obsThFactory["P3CP_BdKstmu"] = boost::bind(boost::factory<P3CP*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3071  obsThFactory["F_L_BdKstmu"] = boost::bind(boost::factory<F_L*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3072  obsThFactory["F_L_BdKste"] = boost::bind(boost::factory<F_L*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3073  obsThFactory["M_1p_BdKstmu"] = boost::bind(boost::factory<M_1Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3074  obsThFactory["M_2p_BdKstmu"] = boost::bind(boost::factory<M_2Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3075  obsThFactory["S_3_BdKstmu"] = boost::bind(boost::factory<S_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3076  obsThFactory["S_4_BdKstmu"] = boost::bind(boost::factory<S_4*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3077  obsThFactory["S_5_BdKstmu"] = boost::bind(boost::factory<S_5*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3078  obsThFactory["S_7_BdKstmu"] = boost::bind(boost::factory<S_7*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3079  obsThFactory["S_8_BdKstmu"] = boost::bind(boost::factory<S_8*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3080  obsThFactory["S_9_BdKstmu"] = boost::bind(boost::factory<S_9*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3081  obsThFactory["A_5_BdKstmu"] = boost::bind(boost::factory<A_5*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3082  obsThFactory["A_6_BdKstmu"] = boost::bind(boost::factory<A_6*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3083  obsThFactory["A_6c_BdKstmu"] = boost::bind(boost::factory<A_6c*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3084  obsThFactory["A_8_BdKstmu"] = boost::bind(boost::factory<A_8*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3085  obsThFactory["A_9_BdKstmu"] = boost::bind(boost::factory<A_9*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3086 
3087  obsThFactory["P_1f_BdKstmu"] = boost::bind(boost::factory<P_1f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3088  obsThFactory["P_2f_BdKstmu"] = boost::bind(boost::factory<P_2f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3089  obsThFactory["P_3f_BdKstmu"] = boost::bind(boost::factory<P_3f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3090  obsThFactory["P_4pf_BdKstmu"] = boost::bind(boost::factory<P_4Primef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3091  obsThFactory["P_5pf_BdKstmu"] = boost::bind(boost::factory<P_5Primef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3092  obsThFactory["P_6pf_BdKstmu"] = boost::bind(boost::factory<P_6Primef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3093  obsThFactory["P_8pf_BdKstmu"] = boost::bind(boost::factory<P_8Primef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3094  obsThFactory["Gammapf_BdKstmu"] = boost::bind(boost::factory<GammaPrimef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3095  obsThFactory["BRf_BdKstmu"] = boost::bind(boost::factory<BRf_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3096  obsThFactory["A_FBf_BdKstmu"] = boost::bind(boost::factory<A_FBf*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3097  obsThFactory["F_Lf_BdKstmu"] = boost::bind(boost::factory<F_Lf*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3098  obsThFactory["S_3f_BdKstmu"] = boost::bind(boost::factory<S_3f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3099  obsThFactory["S_4f_BdKstmu"] = boost::bind(boost::factory<S_4f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3100  obsThFactory["S_5f_BdKstmu"] = boost::bind(boost::factory<S_5f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3101  obsThFactory["S_7f_BdKstmu"] = boost::bind(boost::factory<S_7f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3102  obsThFactory["S_8f_BdKstmu"] = boost::bind(boost::factory<S_8f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3103  obsThFactory["S_9f_BdKstmu"] = boost::bind(boost::factory<S_9f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3104  obsThFactory["P_relationf"] = boost::bind(boost::factory<P_relationf*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3105  obsThFactory["P_relation_exactf"] = boost::bind(boost::factory<P_relation_exactf*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3106 
3107  obsThFactory["V0_BdKstmu"] = boost::bind(boost::factory<V0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3108  obsThFactory["Vp_BdKstmu"] = boost::bind(boost::factory<Vp*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3109  obsThFactory["Vm_BdKstmu"] = boost::bind(boost::factory<Vm*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3110  obsThFactory["T0_BdKstmu"] = boost::bind(boost::factory<T0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3111  obsThFactory["Tp_BdKstmu"] = boost::bind(boost::factory<Tp*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3112  obsThFactory["Tm_BdKstmu"] = boost::bind(boost::factory<Tm*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3113  obsThFactory["S_BdKstmu"] = boost::bind(boost::factory<S*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3114 
3115  obsThFactory["QCDfC9_1f_BdKstmu"] = boost::bind(boost::factory<QCDfC9_1f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3116  obsThFactory["QCDfC9_2f_BdKstmu"] = boost::bind(boost::factory<QCDfC9_2f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3117  obsThFactory["QCDfC9_3f_BdKstmu"] = boost::bind(boost::factory<QCDfC9_3f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3118 
3119  obsThFactory["QCDfC9p_1f_BdKstmu"] = boost::bind(boost::factory<QCDfC9p_1f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3120  obsThFactory["QCDfC9p_2f_BdKstmu"] = boost::bind(boost::factory<QCDfC9p_2f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3121  obsThFactory["QCDfC9p_3f_BdKstmu"] = boost::bind(boost::factory<QCDfC9p_3f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3122 
3123  obsThFactory["Regtilde_1_BdKstmu"] = boost::bind(boost::factory<gtilde_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3124  obsThFactory["Regtilde_2_BdKstmu"] = boost::bind(boost::factory<gtilde_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3125  obsThFactory["Regtilde_3_BdKstmu"] = boost::bind(boost::factory<gtilde_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3126 
3127  obsThFactory["Imgtilde_1_BdKstmu"] = boost::bind(boost::factory<gtilde_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3128  obsThFactory["Imgtilde_2_BdKstmu"] = boost::bind(boost::factory<gtilde_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3129  obsThFactory["Imgtilde_3_BdKstmu"] = boost::bind(boost::factory<gtilde_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3130 
3131  obsThFactory["Absgtilde_1_BdKstmu"] = boost::bind(boost::factory<gtilde_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3132  obsThFactory["Absgtilde_2_BdKstmu"] = boost::bind(boost::factory<gtilde_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3133  obsThFactory["Absgtilde_3_BdKstmu"] = boost::bind(boost::factory<gtilde_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3134 
3135  obsThFactory["Arggtilde_1_BdKstmu"] = boost::bind(boost::factory<gtilde_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3136  obsThFactory["Arggtilde_2_BdKstmu"] = boost::bind(boost::factory<gtilde_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3137  obsThFactory["Arggtilde_3_BdKstmu"] = boost::bind(boost::factory<gtilde_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3138 
3139  obsThFactory["Reh_0_BdKstmu"] = boost::bind(boost::factory<h_0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3140  obsThFactory["Reh_p_BdKstmu"] = boost::bind(boost::factory<h_p*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3141  obsThFactory["Reh_m_BdKstmu"] = boost::bind(boost::factory<h_m*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3142 
3143  obsThFactory["Imh_0_BdKstmu"] = boost::bind(boost::factory<h_0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3144  obsThFactory["Imh_p_BdKstmu"] = boost::bind(boost::factory<h_p*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3145  obsThFactory["Imh_m_BdKstmu"] = boost::bind(boost::factory<h_m*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3146 
3147  obsThFactory["Absh_0_BdKstmu"] = boost::bind(boost::factory<h_0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3148  obsThFactory["Absh_p_BdKstmu"] = boost::bind(boost::factory<h_p*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3149  obsThFactory["Absh_m_BdKstmu"] = boost::bind(boost::factory<h_m*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3150 
3151  obsThFactory["Argh_0_BdKstmu"] = boost::bind(boost::factory<h_0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3152  obsThFactory["Argh_p_BdKstmu"] = boost::bind(boost::factory<h_p*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3153  obsThFactory["Argh_m_BdKstmu"] = boost::bind(boost::factory<h_m*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3154 
3155  //----- B+ to K*+ ll -----
3156  obsThFactory["A_FB_BpKstmu"] = boost::bind(boost::factory<A_FB*>(), _1, StandardModel::B_P, StandardModel::K_star_P, StandardModel::MU);
3157  obsThFactory["F_L_BpKstmu"] = boost::bind(boost::factory<F_L*>(), _1, StandardModel::B_P, StandardModel::K_star_P, StandardModel::MU);
3158  obsThFactory["BR_BpKstmu"] = boost::bind(boost::factory<BR_MVll*>(), _1, StandardModel::B_P, StandardModel::K_star_P, StandardModel::MU);
3159 
3160  //----- B to K* gamma -----
3161  obsThFactory["BR_BKstgamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3162  obsThFactory["ACP_BKstgamma"] = boost::bind(boost::factory<ACP_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3163  obsThFactory["C_BKstgamma"] = boost::bind(boost::factory<C_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3164  obsThFactory["S_BKstgamma"] = boost::bind(boost::factory<S_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3165  obsThFactory["ADG_BKstgamma"] = boost::bind(boost::factory<ADG_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3166  obsThFactory["DC7_1"] = boost::bind(boost::factory<DC7_1*>(), _1, StandardModel::B_D, StandardModel::K_star);
3167  obsThFactory["DC7_2"] = boost::bind(boost::factory<DC7_2*>(), _1, StandardModel::B_D, StandardModel::K_star);
3168  obsThFactory["AbsDC7_L"] = boost::bind(boost::factory<AbsDC7_L*>(), _1, StandardModel::B_D, StandardModel::K_star);
3169  obsThFactory["AbsDC7_R"] = boost::bind(boost::factory<AbsDC7_R*>(), _1, StandardModel::B_D, StandardModel::K_star);
3170  obsThFactory["ReDC7_L_Bd"] = boost::bind(boost::factory<ReDC7_L*>(), _1, StandardModel::B_D, StandardModel::K_star);
3171  obsThFactory["ReDC7_R_Bd"] = boost::bind(boost::factory<ReDC7_R*>(), _1, StandardModel::B_D, StandardModel::K_star);
3172  obsThFactory["ImDC7_L_Bd"] = boost::bind(boost::factory<ImDC7_L*>(), _1, StandardModel::B_D, StandardModel::K_star);
3173  obsThFactory["ImDC7_R_Bd"] = boost::bind(boost::factory<ImDC7_R*>(), _1, StandardModel::B_D, StandardModel::K_star);
3174  obsThFactory["hp0_hm0"] = boost::bind(boost::factory<hp0_hm0*>(), _1, StandardModel::B_D, StandardModel::K_star);
3175  obsThFactory["AbsDC7_QCDF_Bd"] = boost::bind(boost::factory<AbsDC7_QCDF*>(), _1, StandardModel::B_D, StandardModel::K_star);
3176  obsThFactory["AbsDC7_QCDF_Bd_bar"] = boost::bind(boost::factory<AbsDC7_QCDF_bar*>(), _1, StandardModel::B_D, StandardModel::K_star);
3177  obsThFactory["ReDC7_QCDF_Bd"] = boost::bind(boost::factory<ReDC7_QCDF*>(), _1, StandardModel::B_D, StandardModel::K_star);
3178  obsThFactory["ReDC7_QCDF_Bd_bar"] = boost::bind(boost::factory<ReDC7_QCDF_bar*>(), _1, StandardModel::B_D, StandardModel::K_star);
3179  obsThFactory["ImDC7_QCDF_Bd"] = boost::bind(boost::factory<ImDC7_QCDF*>(), _1, StandardModel::B_D, StandardModel::K_star);
3180  obsThFactory["ImDC7_QCDF_Bd_bar"] = boost::bind(boost::factory<ImDC7_QCDF_bar*>(), _1, StandardModel::B_D, StandardModel::K_star);
3181 
3182 
3183  //----- B+ to K*+ gamma -----
3184  obsThFactory["BR_BpKstgamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3185  obsThFactory["ACP_BpKstgamma"] = boost::bind(boost::factory<C_MVgamma*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3186  obsThFactory["ReDC7_L_Bp"] = boost::bind(boost::factory<ReDC7_L*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3187  obsThFactory["ReDC7_R_Bp"] = boost::bind(boost::factory<ReDC7_R*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3188  obsThFactory["ImDC7_L_Bp"] = boost::bind(boost::factory<ImDC7_L*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3189  obsThFactory["ImDC7_R_Bp"] = boost::bind(boost::factory<ImDC7_R*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3190  obsThFactory["AbsDC7_QCDF_Bp"] = boost::bind(boost::factory<AbsDC7_QCDF*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3191  obsThFactory["AbsDC7_QCDF_Bp_bar"] = boost::bind(boost::factory<AbsDC7_QCDF_bar*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3192  obsThFactory["ReDC7_QCDF_Bp"] = boost::bind(boost::factory<ReDC7_QCDF*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3193  obsThFactory["ReDC7_QCDF_Bp_bar"] = boost::bind(boost::factory<ReDC7_QCDF_bar*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3194  obsThFactory["ImDC7_QCDF_Bp"] = boost::bind(boost::factory<ImDC7_QCDF*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3195  obsThFactory["ImDC7_QCDF_Bp_bar"] = boost::bind(boost::factory<ImDC7_QCDF_bar*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3196 
3197  //----- B to PHI gamma -----
3198  obsThFactory["BR_Bsphigamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_S, StandardModel::PHI);
3199  obsThFactory["C_Bsphigamma"] = boost::bind(boost::factory<C_MVgamma*>(), _1, StandardModel::B_S, StandardModel::PHI);
3200  obsThFactory["S_Bsphigamma"] = boost::bind(boost::factory<S_MVgamma*>(), _1, StandardModel::B_S, StandardModel::PHI);
3201  obsThFactory["ADG_Bsphigamma"] = boost::bind(boost::factory<ADG_MVgamma*>(), _1, StandardModel::B_S, StandardModel::PHI);
3202  obsThFactory["ReDC7_L_Bs"] = boost::bind(boost::factory<ReDC7_L*>(), _1, StandardModel::B_S, StandardModel::PHI);
3203  obsThFactory["ReDC7_R_Bs"] = boost::bind(boost::factory<ReDC7_R*>(), _1, StandardModel::B_S, StandardModel::PHI);
3204  obsThFactory["ImDC7_L_Bs"] = boost::bind(boost::factory<ImDC7_L*>(), _1, StandardModel::B_S, StandardModel::PHI);
3205  obsThFactory["ImDC7_R_Bs"] = boost::bind(boost::factory<ImDC7_R*>(), _1, StandardModel::B_S, StandardModel::PHI);
3206  obsThFactory["AbsDC7_QCDF_Bs"] = boost::bind(boost::factory<AbsDC7_QCDF*>(), _1, StandardModel::B_S, StandardModel::PHI);
3207  obsThFactory["AbsDC7_QCDF_Bs_bar"] = boost::bind(boost::factory<AbsDC7_QCDF_bar*>(), _1, StandardModel::B_S, StandardModel::PHI);
3208  obsThFactory["ReDC7_QCDF_Bs"] = boost::bind(boost::factory<ReDC7_QCDF*>(), _1, StandardModel::B_S, StandardModel::PHI);
3209  obsThFactory["ReDC7_QCDF_Bs_bar"] = boost::bind(boost::factory<ReDC7_QCDF_bar*>(), _1, StandardModel::B_S, StandardModel::PHI);
3210  obsThFactory["ImDC7_QCDF_Bs"] = boost::bind(boost::factory<ImDC7_QCDF*>(), _1, StandardModel::B_S, StandardModel::PHI);
3211  obsThFactory["ImDC7_QCDF_Bs_bar"] = boost::bind(boost::factory<ImDC7_QCDF_bar*>(), _1, StandardModel::B_S, StandardModel::PHI);
3212 
3213  //----- B to RHO gamma -----
3214  obsThFactory["BR_Brhogamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_D, StandardModel::RHO);
3215  obsThFactory["ACP_Brhogamma"] = boost::bind(boost::factory<ACP_MVgamma*>(), _1, StandardModel::B_D, StandardModel::RHO);
3216  obsThFactory["S_Brhogamma"] = boost::bind(boost::factory<S_MVgamma*>(), _1, StandardModel::B_D, StandardModel::RHO);
3217 
3218  //----- B+ to RHO+ gamma -----
3219  obsThFactory["BR_Bprhogamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_P, StandardModel::RHO_P);
3220  obsThFactory["ACP_Bprhogamma"] = boost::bind(boost::factory<ACP_MVgamma*>(), _1, StandardModel::B_P, StandardModel::RHO_P);
3221 
3222  //----- B to OMEGA gamma -----
3223  obsThFactory["BR_Bomegagamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_D, StandardModel::OMEGA);
3224  obsThFactory["ACP_Bomegagamma"] = boost::bind(boost::factory<ACP_MVgamma*>(), _1, StandardModel::B_D, StandardModel::OMEGA);
3225 
3226  //----- B to V gamma -----
3227  obsThFactory["R_BVgamma"] = boost::bind(boost::factory<R_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::B_S, StandardModel::PHI);
3228  obsThFactory["D0p_BKstgamma"] = boost::bind(boost::factory<D0p_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::B_P, StandardModel::K_star_P);
3229  obsThFactory["DACP_BKstgamma"] = boost::bind(boost::factory<DACP_MVgamma*>(), _1, StandardModel::B_P, StandardModel::K_star_P, StandardModel::B_D, StandardModel::K_star);
3230  obsThFactory["D0p_Brhogamma"] = boost::bind(boost::factory<D0p_MVgamma*>(), _1, StandardModel::B_D, StandardModel::RHO, StandardModel::B_P, StandardModel::RHO_P);
3231  obsThFactory["DACP_Brhogamma"] = boost::bind(boost::factory<DACP_MVgamma*>(), _1, StandardModel::B_P, StandardModel::RHO_P, StandardModel::B_D, StandardModel::RHO);
3232 
3233  //----- B to phi ll -----
3234  obsThFactory["P_1_Bsphimu"] = boost::bind(boost::factory<P_1*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3235  obsThFactory["P_2_Bsphimu"] = boost::bind(boost::factory<P_2*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3236  obsThFactory["P_3_Bsphimu"] = boost::bind(boost::factory<P_3*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3237  obsThFactory["P_4p_Bsphimu"] = boost::bind(boost::factory<P_4Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3238  obsThFactory["P_5p_Bsphimu"] = boost::bind(boost::factory<P_5Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3239  obsThFactory["P_6p_Bsphimu"] = boost::bind(boost::factory<P_6Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3240  obsThFactory["P_8p_Bsphimu"] = boost::bind(boost::factory<P_8Prime*>(), _1, StandardModel::B_D, StandardModel::PHI, StandardModel::MU);
3241  obsThFactory["Gammap_Bsphimu"] = boost::bind(boost::factory<GammaPrime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3242  obsThFactory["A_FB_Bsphimu"] = boost::bind(boost::factory<A_FB*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3243  obsThFactory["BR_Bsphimu"] = boost::bind(boost::factory<BR_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3244  obsThFactory["Rphi_Bsphill"] = boost::bind(boost::factory<R_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU, StandardModel::ELECTRON);
3245  obsThFactory["RphiL_Bsphill"] = boost::bind(boost::factory<RL_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU, StandardModel::ELECTRON);
3246  obsThFactory["RphiT_Bsphill"] = boost::bind(boost::factory<RT_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU, StandardModel::ELECTRON);
3247  obsThFactory["R6_Bsphill"] = boost::bind(boost::factory<R_6*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU, StandardModel::ELECTRON);
3248  obsThFactory["ACP_Bsphimu"] = boost::bind(boost::factory<ACP_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3249  obsThFactory["P3CP_Bsphimu"] = boost::bind(boost::factory<P3CP*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3250  obsThFactory["F_L_Bsphimu"] = boost::bind(boost::factory<F_L*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3251  obsThFactory["M_1p_Bsphimu"] = boost::bind(boost::factory<M_1Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3252  obsThFactory["M_2p_Bsphimu"] = boost::bind(boost::factory<M_2Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3253  obsThFactory["S_3_Bsphimu"] = boost::bind(boost::factory<S_3*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3254  obsThFactory["S_4_Bsphimu"] = boost::bind(boost::factory<S_4*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3255  obsThFactory["S_5_Bsphimu"] = boost::bind(boost::factory<S_5*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3256  obsThFactory["S_7_Bsphimu"] = boost::bind(boost::factory<S_7*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3257  obsThFactory["S_8_Bsphimu"] = boost::bind(boost::factory<S_8*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3258  obsThFactory["S_9_Bsphimu"] = boost::bind(boost::factory<S_9*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3259  obsThFactory["A_5_Bsphimu"] = boost::bind(boost::factory<A_5*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3260  obsThFactory["A_6_Bsphimu"] = boost::bind(boost::factory<A_6*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3261  obsThFactory["A_6c_Bsphimu"] = boost::bind(boost::factory<A_6c*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3262  obsThFactory["A_8_Bsphimu"] = boost::bind(boost::factory<A_8*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3263  obsThFactory["A_9_Bsphimu"] = boost::bind(boost::factory<A_9*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3264 
3265  //----- B+ to K+ ll -----
3266  obsThFactory["BR_BpKmu"] = boost::bind(boost::factory<BR_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::MU);
3267  obsThFactory["BR_BpKe"] = boost::bind(boost::factory<BR_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::ELECTRON);
3268  obsThFactory["dBR_BpKmu"] = boost::bind(boost::factory<dBR_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::MU);
3269  obsThFactory["dBR_BpKe"] = boost::bind(boost::factory<dBR_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::ELECTRON);
3270  obsThFactory["RK_BpKll"] = boost::bind(boost::factory<R_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::MU, StandardModel::ELECTRON);
3271 
3272  //----- B0 to K0 ll -----
3273  obsThFactory["BR_B0Kmu"] = boost::bind(boost::factory<BR_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::MU);
3274  obsThFactory["BR_B0Ke"] = boost::bind(boost::factory<BR_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::ELECTRON);
3275  obsThFactory["dBR_B0Kmu"] = boost::bind(boost::factory<dBR_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::MU);
3276  obsThFactory["dBR_B0Ke"] = boost::bind(boost::factory<dBR_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::ELECTRON);
3277  obsThFactory["RK_B0Kll"] = boost::bind(boost::factory<R_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::MU, StandardModel::ELECTRON);
3278 
3279  //----- B to D*lnu -----
3280  obsThFactory["Gammaw_MVlnu"] = boost::bind(boost::factory<Gammaw_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU, StandardModel::ELECTRON);
3281  obsThFactory["RDstar_MVlnu"] = boost::bind(boost::factory<RDstar_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::TAU, StandardModel::MU, StandardModel::ELECTRON);
3282  obsThFactory["Gammacl_MVlnu"] = boost::bind(boost::factory<Gammacl_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU, StandardModel::ELECTRON);
3283  obsThFactory["GammacV_MVlnu"] = boost::bind(boost::factory<GammacV_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU, StandardModel::ELECTRON);
3284  obsThFactory["Gammachi_MVlnu"] = boost::bind(boost::factory<Gammachi_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU, StandardModel::ELECTRON);
3285  obsThFactory["UnitarityV_MVlnu"] = boost::bind(boost::factory<UnitarityV_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::ELECTRON);
3286  obsThFactory["UnitarityA_MVlnu"] = boost::bind(boost::factory<UnitarityA_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::ELECTRON);
3287  obsThFactory["UnitarityV_D_Dst"] = boost::bind(boost::factory<UnitarityV_D_Dst*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::D_P, StandardModel::ELECTRON);
3288  obsThFactory["hA1_at_w1"] = boost::bind(boost::factory<FF_hA1atw1*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3289  obsThFactory["hV_w"] = boost::bind(boost::factory<FF_hV*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3290  obsThFactory["hA1_w"] = boost::bind(boost::factory<FF_hA1*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3291  obsThFactory["hA2_w"] = boost::bind(boost::factory<FF_hA2*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3292  obsThFactory["hA3_w"] = boost::bind(boost::factory<FF_hA3*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3293  obsThFactory["R1_w"] = boost::bind(boost::factory<FF_R1*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3294  obsThFactory["R2_w"] = boost::bind(boost::factory<FF_R2*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3295  obsThFactory["R0_w"] = boost::bind(boost::factory<FF_R0*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3296  obsThFactory["FL_MVtaunu"] = boost::bind(boost::factory<FL_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::TAU);
3297  obsThFactory["Ptau_MVtaunu"] = boost::bind(boost::factory<Plep_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::TAU);
3298  //----- B to Dlnu -----
3299  obsThFactory["Gammaw_MPlnu"] = boost::bind(boost::factory<Gammaw_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::MU, StandardModel::ELECTRON);
3300  obsThFactory["RD_MPlnu"] = boost::bind(boost::factory<RD_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::TAU, StandardModel::MU, StandardModel::ELECTRON);
3301  obsThFactory["UnitarityV_MPlnu"] = boost::bind(boost::factory<UnitarityV_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3302  obsThFactory["UnitarityA_MPlnu"] = boost::bind(boost::factory<UnitarityA_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3303  obsThFactory["Unitarity_Strong_MPlnu"] = boost::bind(boost::factory<Unitarity_Strong_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3304  obsThFactory["af0_0"] = boost::bind(boost::factory<af0_0*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3305  obsThFactory["FF0_MPlnu"] = boost::bind(boost::factory<FF0_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3306  obsThFactory["FFplus_MPlnu"] = boost::bind(boost::factory<FFplus_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3307 
3308  //----- B to tau nu -----
3309  obsThFactory["btaunu"] = boost::bind(boost::factory<Btaunu*>(), _1, StandardModel::B_P);
3310  obsThFactory["bctaunu"] = boost::bind(boost::factory<Btaunu*>(), _1, StandardModel::B_C);
3311 
3312  //----- Lepton Flavour observables -----
3313  obsThFactory["mu_e_gamma"] = boost::factory<mu_e_gamma*>();
3314  obsThFactory["log_meg"] = boost::factory<log_meg*>();
3315  obsThFactory["tau_mu_gamma"] = boost::factory<tau_mu_gamma*>();
3316  obsThFactory["log_tmg"] = boost::factory<log_tmg*>();
3317  obsThFactory["tau_e_gamma"] = boost::factory<tau_e_gamma*>();
3318  obsThFactory["log_teg"] = boost::factory<log_teg*>();
3319  obsThFactory["mu_3e"] = boost::factory<mu_3e*>();
3320  obsThFactory["tau_3mu"] = boost::factory<tau_3mu*>();
3321  obsThFactory["tau_3e"] = boost::factory<tau_3e*>();
3322  obsThFactory["gminus2_mu"] = boost::factory<gminus2_mu*>();
3323  obsThFactory["Robs_mu_e_gamma"] = boost::factory<Robs_mu_e_gamma*>();
3324  obsThFactory["Robs_tau_mu_gamma"] = boost::factory<Robs_tau_mu_gamma*>();
3325  obsThFactory["Robs_tau_mu_gamma_BelleII"] = boost::factory<Robs_tau_mu_gamma_BelleII*>();
3326  obsThFactory["Robs_tau_e_gamma"] = boost::factory<Robs_tau_e_gamma*>();
3327  obsThFactory["mueconversion_Ti"] = boost::factory<mueconversion_Ti*>();
3328 
3329  obsThFactory["deltaRL_12_u"] = boost::factory<deltaRL_12_u*>();
3330  obsThFactory["deltaRL_13_u"] = boost::factory<deltaRL_13_u*>();
3331  obsThFactory["deltaRL_23_u"] = boost::factory<deltaRL_23_u*>();
3332  obsThFactory["deltaRL_12_e"] = boost::factory<deltaRL_12_e*>();
3333  obsThFactory["deltaRL_21_e"] = boost::factory<deltaRL_21_e*>();
3334  obsThFactory["deltaRL_13_e"] = boost::factory<deltaRL_13_e*>();
3335  obsThFactory["deltaRL_31_e"] = boost::factory<deltaRL_31_e*>();
3336  obsThFactory["deltaRL_23_e"] = boost::factory<deltaRL_23_e*>();
3337  obsThFactory["deltaRL_32_e"] = boost::factory<deltaRL_32_e*>();
3338 
3339  obsThFactory["deltaLL1_q"] = boost::factory<deltaLL1_q*>();
3340  obsThFactory["deltaLL2_q"] = boost::factory<deltaLL2_q*>();
3341  obsThFactory["deltaLL3_q"] = boost::factory<deltaLL3_q*>();
3342  obsThFactory["deltaRR1_u"] = boost::factory<deltaRR1_u*>();
3343  obsThFactory["deltaRR2_u"] = boost::factory<deltaRR2_u*>();
3344  obsThFactory["deltaRR3_u"] = boost::factory<deltaRR3_u*>();
3345  obsThFactory["deltaRR1_d"] = boost::factory<deltaRR1_d*>();
3346  obsThFactory["deltaRR2_d"] = boost::factory<deltaRR2_d*>();
3347  obsThFactory["deltaRR3_d"] = boost::factory<deltaRR3_d*>();
3348  obsThFactory["deltaLL1_l"] = boost::factory<deltaLL1_l*>();
3349  obsThFactory["deltaLL2_l"] = boost::factory<deltaLL2_l*>();
3350  obsThFactory["deltaLL3_l"] = boost::factory<deltaLL3_l*>();
3351  obsThFactory["deltaRR1_e"] = boost::factory<deltaRR1_e*>();
3352  obsThFactory["deltaRR2_e"] = boost::factory<deltaRR2_e*>();
3353  obsThFactory["deltaRR3_e"] = boost::factory<deltaRR3_e*>();
3354 
3355  obsThFactory["CCBu11"] = boost::factory<CCBu11*>();
3356  obsThFactory["CCBu22"] = boost::factory<CCBu22*>();
3357  obsThFactory["CCBu33"] = boost::factory<CCBu33*>();
3358  obsThFactory["CCBu12"] = boost::factory<CCBu12*>();
3359  obsThFactory["CCBu13"] = boost::factory<CCBu13*>();
3360  obsThFactory["CCBu23"] = boost::factory<CCBu23*>();
3361  obsThFactory["CCBd11"] = boost::factory<CCBd11*>();
3362  obsThFactory["CCBd22"] = boost::factory<CCBd22*>();
3363  obsThFactory["CCBd33"] = boost::factory<CCBd33*>();
3364  obsThFactory["CCBd12"] = boost::factory<CCBd12*>();
3365  obsThFactory["CCBd13"] = boost::factory<CCBd13*>();
3366  obsThFactory["CCBd23"] = boost::factory<CCBd23*>();
3367  obsThFactory["CCBe11"] = boost::factory<CCBe11*>();
3368  obsThFactory["CCBe22"] = boost::factory<CCBe22*>();
3369  obsThFactory["CCBe33"] = boost::factory<CCBe33*>();
3370  obsThFactory["CCBe12"] = boost::factory<CCBe12*>();
3371  obsThFactory["CCBe13"] = boost::factory<CCBe13*>();
3372  obsThFactory["CCBe23"] = boost::factory<CCBe23*>();
3373 
3374  obsThFactory["VacuumTunnelingRate"] = boost::factory<FindAction*>();
3375 
3376  obsThFactory["logdeltaRL_13_e"] = boost::factory<logdeltaRL_13_e*>();
3377  obsThFactory["logdeltaRL_23_e"] = boost::factory<logdeltaRL_23_e*>();
3378  obsThFactory["logmslepton"] = boost::factory<logmslepton*>();
3379  obsThFactory["mslepton"] = boost::factory<mslepton*>();
3380  obsThFactory["deltaTEhat23"] = boost::factory<deltaTEhat23*>();
3381  obsThFactory["deltaLLRR_l"] = boost::factory<deltaLLRR_l*>();
3382 
3383  //----- SUSY spectra and observables -----
3384  obsThFactory["MHl"] = boost::bind(boost::factory<Mhiggs*>(), _1, 0);
3385  obsThFactory["MHh"] = boost::bind(boost::factory<Mhiggs*>(), _1, 1);
3386  obsThFactory["MHa"] = boost::bind(boost::factory<Mhiggs*>(), _1, 2);
3387  obsThFactory["MHp"] = boost::bind(boost::factory<Mhiggs*>(), _1, 3);
3388  obsThFactory["Msu1"] = boost::bind(boost::factory<Msup*>(), _1, 0);
3389  obsThFactory["Msu2"] = boost::bind(boost::factory<Msup*>(), _1, 1);
3390  obsThFactory["Msu3"] = boost::bind(boost::factory<Msup*>(), _1, 2);
3391  obsThFactory["Msu4"] = boost::bind(boost::factory<Msup*>(), _1, 3);
3392  obsThFactory["Msu5"] = boost::bind(boost::factory<Msup*>(), _1, 4);
3393  obsThFactory["Msu6"] = boost::bind(boost::factory<Msup*>(), _1, 5);
3394  obsThFactory["Msd1"] = boost::bind(boost::factory<Msdown*>(), _1, 0);
3395  obsThFactory["Msd2"] = boost::bind(boost::factory<Msdown*>(), _1, 1);
3396  obsThFactory["Msd3"] = boost::bind(boost::factory<Msdown*>(), _1, 2);
3397  obsThFactory["Msd4"] = boost::bind(boost::factory<Msdown*>(), _1, 3);
3398  obsThFactory["Msd5"] = boost::bind(boost::factory<Msdown*>(), _1, 4);
3399  obsThFactory["Msd6"] = boost::bind(boost::factory<Msdown*>(), _1, 5);
3400  obsThFactory["Msl1"] = boost::bind(boost::factory<Mslepton*>(), _1, 0);
3401  obsThFactory["Msl2"] = boost::bind(boost::factory<Mslepton*>(), _1, 1);
3402  obsThFactory["Msl3"] = boost::bind(boost::factory<Mslepton*>(), _1, 2);
3403  obsThFactory["Msl4"] = boost::bind(boost::factory<Mslepton*>(), _1, 3);
3404  obsThFactory["Msl5"] = boost::bind(boost::factory<Mslepton*>(), _1, 4);
3405  obsThFactory["Msl6"] = boost::bind(boost::factory<Mslepton*>(), _1, 5);
3406  obsThFactory["Msnu1"] = boost::bind(boost::factory<Msneutrino*>(), _1, 0);
3407  obsThFactory["Msnu2"] = boost::bind(boost::factory<Msneutrino*>(), _1, 1);
3408  obsThFactory["Msnu3"] = boost::bind(boost::factory<Msneutrino*>(), _1, 2);
3409  obsThFactory["Mch1"] = boost::bind(boost::factory<Mchargino*>(), _1, 0);
3410  obsThFactory["Mch2"] = boost::bind(boost::factory<Mchargino*>(), _1, 1);
3411  obsThFactory["Mneu1"] = boost::bind(boost::factory<Mneutralino*>(), _1, 0);
3412  obsThFactory["Mneu2"] = boost::bind(boost::factory<Mneutralino*>(), _1, 1);
3413  obsThFactory["Mneu3"] = boost::bind(boost::factory<Mneutralino*>(), _1, 2);
3414  obsThFactory["Mneu4"] = boost::bind(boost::factory<Mneutralino*>(), _1, 3);
3415  obsThFactory["Mw_dRho"] = boost::factory<Mw_dRho*>();
3416 
3417  //----- THDM observables -----
3418  obsThFactory["globalminimum"] = boost::factory<globalminimum*>();
3419 
3420  obsThFactory["mu_ggF_tth_htobb8"] = boost::factory<ggF_tth_htobb8*>();
3421  obsThFactory["mu_ggF_tth_htoWW8"] = boost::factory<ggF_tth_htoWW8*>();
3422  obsThFactory["mu_ggF_tth_htotautau8"] = boost::factory<ggF_tth_htotautau8*>();
3423  obsThFactory["mu_ggF_tth_htoZZ8"] = boost::factory<ggF_tth_htoZZ8*>();
3424  obsThFactory["mu_ggF_tth_htogaga8"] = boost::factory<ggF_tth_htogaga8*>();
3425  obsThFactory["mu_ggF_tth_htobb13"] = boost::factory<ggF_tth_htobb13*>();
3426  obsThFactory["mu_ggF_tth_htoWW13"] = boost::factory<ggF_tth_htoWW13*>();
3427  obsThFactory["mu_ggF_tth_htotautau13"] = boost::factory<ggF_tth_htotautau13*>();
3428  obsThFactory["mu_ggF_tth_htoZZ13"] = boost::factory<ggF_tth_htoZZ13*>();
3429  obsThFactory["mu_ggF_tth_htogaga13"] = boost::factory<ggF_tth_htogaga13*>();
3430  obsThFactory["mu_VBF_Vh_htobb"] = boost::factory<VBF_Vh_htobb*>();
3431  obsThFactory["mu_VBF_Vh_htoWW"] = boost::factory<VBF_Vh_htoWW*>();
3432  obsThFactory["mu_VBF_Vh_htotautau"] = boost::factory<VBF_Vh_htotautau*>();
3433  obsThFactory["mu_VBF_Vh_htoZZ"] = boost::factory<VBF_Vh_htoZZ*>();
3434  obsThFactory["mu_VBF_Vh_htogaga"] = boost::factory<VBF_Vh_htogaga*>();
3435  obsThFactory["mu_VBF_Vh_htogg"] = boost::factory<VBF_Vh_htogg*>();
3436  obsThFactory["mu_VBF_Vh_htocc"] = boost::factory<VBF_Vh_htocc*>();
3437  obsThFactory["mu_ggF_htobb"] = boost::factory<ggF_htobb*>();
3438  obsThFactory["mu_ggF_htoWW"] = boost::factory<ggF_htoWW*>();
3439  obsThFactory["mu_ggF_htotautau"] = boost::factory<ggF_htotautau*>();
3440  obsThFactory["mu_ggF_htoZZ"] = boost::factory<ggF_htoZZ*>();
3441  obsThFactory["mu_ggF_htogaga"] = boost::factory<ggF_htogaga*>();
3442  obsThFactory["mu_tth_htobb"] = boost::factory<tth_htobb*>();
3443  obsThFactory["mu_tth_htoWW"] = boost::factory<tth_htoWW*>();
3444  obsThFactory["mu_tth_htotautau"] = boost::factory<tth_htotautau*>();
3445  obsThFactory["mu_tth_htoZZ"] = boost::factory<tth_htoZZ*>();
3446  obsThFactory["mu_tth_htogaga"] = boost::factory<tth_htogaga*>();
3447  obsThFactory["mu_htobb"] = boost::factory<mu_htobb*>();
3448  obsThFactory["mu_htoWW"] = boost::factory<mu_htoWW*>();
3449  obsThFactory["mu_htotautau"] = boost::factory<mu_htotautau*>();
3450  obsThFactory["mu_htoZga"] = boost::factory<mu_htoZga*>();
3451  obsThFactory["Gamma_h_THDM"] = boost::factory<Gamma_h_THDM*>();
3452  obsThFactory["rh_gaga_THDM"] = boost::factory<rh_gaga_THDM*>();
3453  obsThFactory["rh_Zga_THDM"] = boost::factory<rh_Zga_THDM*>();
3454  obsThFactory["rh_gg_THDM"] = boost::factory<rh_gg_THDM*>();
3455 
3456  obsThFactory["Hobs_ggF_H_tautau_ATLAS8"] = boost::factory<Hobs_ggF_H_tautau_ATLAS8*>();
3457  obsThFactory["Hobs_ggF_H_tautau_CMS8"] = boost::factory<Hobs_ggF_H_tautau_CMS8*>();
3458  obsThFactory["Hobs_bbF_H_tautau_ATLAS8"] = boost::factory<Hobs_bbF_H_tautau_ATLAS8*>();
3459  obsThFactory["Hobs_bbF_H_tautau_CMS8"] = boost::factory<Hobs_bbF_H_tautau_CMS8*>();
3460  obsThFactory["Hobs_pp_H_gaga_ATLAS8"] = boost::factory<Hobs_pp_H_gaga_ATLAS8*>();
3461  obsThFactory["Hobs_ggF_H_gaga_CMS8"] = boost::factory<Hobs_ggF_H_gaga_CMS8*>();
3462  obsThFactory["Hobs_pp_H_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_H_Zga_llga_ATLAS8*>();
3463  obsThFactory["Hobs_pp_H_Zga_llga_CMS8"] = boost::factory<Hobs_pp_H_Zga_llga_CMS8*>();
3464  obsThFactory["Hobs_mu_pp_H_VV_CMS8"] = boost::factory<Hobs_mu_pp_H_VV_CMS8*>();
3465  obsThFactory["Hobs_ggF_H_ZZ_ATLAS8"] = boost::factory<Hobs_ggF_H_ZZ_ATLAS8*>();
3466  obsThFactory["Hobs_VBF_H_ZZ_ATLAS8"] = boost::factory<Hobs_VBF_H_ZZ_ATLAS8*>();
3467  obsThFactory["Hobs_ggF_H_WW_ATLAS8"] = boost::factory<Hobs_ggF_H_WW_ATLAS8*>();
3468  obsThFactory["Hobs_VBF_H_WW_ATLAS8"] = boost::factory<Hobs_VBF_H_WW_ATLAS8*>();
3469  obsThFactory["Hobs_ggF_H_hh_ATLAS8"] = boost::factory<Hobs_ggF_H_hh_ATLAS8*>();
3470  obsThFactory["Hobs_pp_H_hh_CMS8"] = boost::factory<Hobs_pp_H_hh_CMS8*>();
3471  obsThFactory["Hobs_ggF_H_hh_bbtautau_CMS8"] = boost::factory<Hobs_ggF_H_hh_bbtautau_CMS8*>();
3472  obsThFactory["Hobs_pp_H_hh_bbbb_CMS8"] = boost::factory<Hobs_pp_H_hh_bbbb_CMS8*>();
3473  obsThFactory["Hobs_pp_H_hh_gagabb_CMS8"] = boost::factory<Hobs_pp_H_hh_gagabb_CMS8*>();
3474  obsThFactory["Hobs_ggF_H_tt_ATLAS8"] = boost::factory<Hobs_ggF_H_tt_ATLAS8*>();
3475  obsThFactory["Hobs_bbF_H_bb_CMS8"] = boost::factory<Hobs_bbF_H_bb_CMS8*>();
3476  obsThFactory["Hobs_pp_H_AZ_bbll_CMS8"] = boost::factory<Hobs_pp_H_AZ_bbll_CMS8*>();
3477  obsThFactory["Hobs_pp_H_AZ_tautaull_CMS8"] = boost::factory<Hobs_pp_H_AZ_tautaull_CMS8*>();
3478  obsThFactory["Robs_ggF_H_tautau_ATLAS8"] = boost::factory<Robs_ggF_H_tautau_ATLAS8*>();
3479  obsThFactory["Robs_ggF_H_tautau_CMS8"] = boost::factory<Robs_ggF_H_tautau_CMS8*>();
3480  obsThFactory["Robs_bbF_H_tautau_ATLAS8"] = boost::factory<Robs_bbF_H_tautau_ATLAS8*>();
3481  obsThFactory["Robs_bbF_H_tautau_CMS8"] = boost::factory<Robs_bbF_H_tautau_CMS8*>();
3482  obsThFactory["Robs_pp_H_gaga_ATLAS8"] = boost::factory<Robs_pp_H_gaga_ATLAS8*>();
3483  obsThFactory["Robs_ggF_H_gaga_CMS8"] = boost::factory<Robs_ggF_H_gaga_CMS8*>();
3484  obsThFactory["Robs_pp_H_Zga_llga_ATLAS8"] = boost::factory<Robs_pp_H_Zga_llga_ATLAS8*>();
3485  obsThFactory["Robs_pp_H_Zga_llga_CMS8"] = boost::factory<Robs_pp_H_Zga_llga_CMS8*>();
3486  obsThFactory["Robs_mu_pp_H_VV_CMS8"] = boost::factory<Robs_mu_pp_H_VV_CMS8*>();
3487  obsThFactory["Robs_ggF_H_ZZ_ATLAS8"] = boost::factory<Robs_ggF_H_ZZ_ATLAS8*>();
3488  obsThFactory["Robs_VBF_H_ZZ_ATLAS8"] = boost::factory<Robs_VBF_H_ZZ_ATLAS8*>();
3489  obsThFactory["Robs_ggF_H_WW_ATLAS8"] = boost::factory<Robs_ggF_H_WW_ATLAS8*>();
3490  obsThFactory["Robs_VBF_H_WW_ATLAS8"] = boost::factory<Robs_VBF_H_WW_ATLAS8*>();
3491  obsThFactory["Robs_ggF_H_hh_ATLAS8"] = boost::factory<Robs_ggF_H_hh_ATLAS8*>();
3492  obsThFactory["Robs_pp_H_hh_CMS8"] = boost::factory<Robs_pp_H_hh_CMS8*>();
3493  obsThFactory["Robs_ggF_H_hh_bbtautau_CMS8"] = boost::factory<Robs_ggF_H_hh_bbtautau_CMS8*>();
3494  obsThFactory["Robs_pp_H_hh_bbbb_CMS8"] = boost::factory<Robs_pp_H_hh_bbbb_CMS8*>();
3495  obsThFactory["Robs_pp_H_hh_gagabb_CMS8"] = boost::factory<Robs_pp_H_hh_gagabb_CMS8*>();
3496  obsThFactory["Robs_ggF_H_tt_ATLAS8"] = boost::factory<Robs_ggF_H_tt_ATLAS8*>();
3497  obsThFactory["Robs_bbF_H_bb_CMS8"] = boost::factory<Robs_bbF_H_bb_CMS8*>();
3498  obsThFactory["Robs_pp_H_AZ_bbll_CMS8"] = boost::factory<Robs_pp_H_AZ_bbll_CMS8*>();
3499  obsThFactory["Robs_pp_H_AZ_tautaull_CMS8"] = boost::factory<Robs_pp_H_AZ_tautaull_CMS8*>();
3500  obsThFactory["log10_ggF_H_tautau_TH8"] = boost::factory<log10_ggF_H_tautau_TH8*>();
3501  obsThFactory["log10_bbF_H_tautau_TH8"] = boost::factory<log10_bbF_H_tautau_TH8*>();
3502  obsThFactory["log10_pp_H_gaga_TH8"] = boost::factory<log10_pp_H_gaga_TH8*>();
3503  obsThFactory["log10_ggF_H_gaga_TH8"] = boost::factory<log10_ggF_H_gaga_TH8*>();
3504  obsThFactory["log10_pp_H_Zga_llga_TH8"] = boost::factory<log10_pp_H_Zga_llga_TH8*>();
3505  obsThFactory["log10_mu_pp_H_VV_TH8"] = boost::factory<log10_mu_pp_H_VV_TH8*>();
3506  obsThFactory["log10_ggF_H_ZZ_TH8"] = boost::factory<log10_ggF_H_ZZ_TH8*>();
3507  obsThFactory["log10_VBF_H_ZZ_TH8"] = boost::factory<log10_VBF_H_ZZ_TH8*>();
3508  obsThFactory["log10_ggF_H_WW_TH8"] = boost::factory<log10_ggF_H_WW_TH8*>();
3509  obsThFactory["log10_VBF_H_WW_TH8"] = boost::factory<log10_VBF_H_WW_TH8*>();
3510  obsThFactory["log10_ggF_H_hh_TH8"] = boost::factory<log10_ggF_H_hh_TH8*>();
3511  obsThFactory["log10_pp_H_hh_TH8"] = boost::factory<log10_pp_H_hh_TH8*>();
3512  obsThFactory["log10_ggF_H_hh_bbtautau_TH8"] = boost::factory<log10_ggF_H_hh_bbtautau_TH8*>();
3513  obsThFactory["log10_pp_H_hh_bbbb_TH8"] = boost::factory<log10_pp_H_hh_bbbb_TH8*>();
3514  obsThFactory["log10_pp_H_hh_gagabb_TH8"] = boost::factory<log10_pp_H_hh_gagabb_TH8*>();
3515  obsThFactory["log10_ggF_H_tt_TH8"] = boost::factory<log10_ggF_H_tt_TH8*>();
3516  obsThFactory["log10_bbF_H_bb_TH8"] = boost::factory<log10_bbF_H_bb_TH8*>();
3517  obsThFactory["log10_pp_H_AZ_bbll_TH8"] = boost::factory<log10_pp_H_AZ_bbll_TH8*>();
3518  obsThFactory["log10_pp_H_AZ_tautaull_TH8"] = boost::factory<log10_pp_H_AZ_tautaull_TH8*>();
3519  obsThFactory["Hobs_ttF_H_tt_ATLAS13"] = boost::factory<Hobs_ttF_H_tt_ATLAS13*>();
3520  obsThFactory["Hobs_bbF_H_tt_ATLAS13"] = boost::factory<Hobs_bbF_H_tt_ATLAS13*>();
3521  obsThFactory["Hobs_ggF_H_tautau_ATLAS13"] = boost::factory<Hobs_ggF_H_tautau_ATLAS13*>();
3522  obsThFactory["Hobs_bbF_H_tautau_ATLAS13"] = boost::factory<Hobs_bbF_H_tautau_ATLAS13*>();
3523  obsThFactory["Hobs_ggF_H_tautau_CMS13"] = boost::factory<Hobs_ggF_H_tautau_CMS13*>();
3524  obsThFactory["Hobs_bbF_H_tautau_CMS13"] = boost::factory<Hobs_bbF_H_tautau_CMS13*>();
3525  obsThFactory["Hobs_pp_H_gaga_ATLAS13"] = boost::factory<Hobs_pp_H_gaga_ATLAS13*>();
3526  obsThFactory["Hobs_ggF_H_gaga_CMS13"] = boost::factory<Hobs_ggF_H_gaga_CMS13*>();
3527  obsThFactory["Hobs_pp_H_Zga_llga_ATLAS13"] = boost::factory<Hobs_pp_H_Zga_llga_ATLAS13*>();
3528  obsThFactory["Hobs_ggF_H_Zga_llga_ATLAS13"] = boost::factory<Hobs_ggF_H_Zga_llga_ATLAS13*>();
3529  obsThFactory["Hobs_pp_H_Zga_llga_CMS13"] = boost::factory<Hobs_pp_H_Zga_llga_CMS13*>();
3530  obsThFactory["Hobs_pp_H_Zga_qqga_CMS13"] = boost::factory<Hobs_pp_H_Zga_qqga_CMS13*>();
3531  obsThFactory["Hobs_ggF_H_Zga_CMS13"] = boost::factory<Hobs_ggF_H_Zga_CMS13*>();
3532  obsThFactory["Hobs_ggF_H_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_llllnunu_ATLAS13*>();
3533  obsThFactory["Hobs_VBF_H_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_VBF_H_ZZ_llllnunu_ATLAS13*>();
3534  obsThFactory["Hobs_ggF_H_ZZ_llnunu_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_llnunu_ATLAS13*>();
3535  obsThFactory["Hobs_pp_H_ZZ_llnunu_CMS13"] = boost::factory<Hobs_pp_H_ZZ_llnunu_CMS13*>();
3536  obsThFactory["Hobs_ggF_H_ZZ_llnunu_CMS13"] = boost::factory<Hobs_ggF_H_ZZ_llnunu_CMS13*>();
3537  obsThFactory["Hobs_VBF_H_ZZ_llnunu_CMS13"] = boost::factory<Hobs_VBF_H_ZZ_llnunu_CMS13*>();
3538  obsThFactory["Hobs_ggF_H_ZZ_llll_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_llll_ATLAS13*>();
3539  obsThFactory["Hobs_VBF_H_ZZ_llll_ATLAS13"] = boost::factory<Hobs_VBF_H_ZZ_llll_ATLAS13*>();
3540  obsThFactory["Hobs_pp_H_ZZ_llll_CMS13"] = boost::factory<Hobs_pp_H_ZZ_llll_CMS13*>();
3541  obsThFactory["Hobs_VBF_VH_H_ZZ_llll_CMS13"] = boost::factory<Hobs_VBF_VH_H_ZZ_llll_CMS13*>();
3542  obsThFactory["Hobs_ggF_H_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_qqllnunu_ATLAS13*>();
3543  obsThFactory["Hobs_VBF_H_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_VBF_H_ZZ_qqllnunu_ATLAS13*>();
3544  obsThFactory["Hobs_ggF_H_ZZ_llqq_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_llqq_ATLAS13*>();
3545  obsThFactory["Hobs_VBF_H_ZZ_llqq_ATLAS13"] = boost::factory<Hobs_VBF_H_ZZ_llqq_ATLAS13*>();
3546  obsThFactory["Hobs_ggF_H_ZZ_nunuqq_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_nunuqq_ATLAS13*>();
3547  obsThFactory["Hobs_pp_H_ZZ_llqq_CMS13"] = boost::factory<Hobs_pp_H_ZZ_llqq_CMS13*>();
3548  obsThFactory["Hobs_ggF_H_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_ggF_H_WW_lnuqq_ATLAS13*>();
3549  obsThFactory["Hobs_VBF_H_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_VBF_H_WW_lnuqq_ATLAS13*>();
3550  obsThFactory["Hobs_ggF_H_WW_enumunu_ATLAS13"] = boost::factory<Hobs_ggF_H_WW_enumunu_ATLAS13*>();
3551  obsThFactory["Hobs_VBF_H_WW_enumunu_ATLAS13"] = boost::factory<Hobs_VBF_H_WW_enumunu_ATLAS13*>();
3552  obsThFactory["Hobs_ggF_VBF_H_WW_lnulnu_CMS13"] = boost::factory<Hobs_ggF_VBF_H_WW_lnulnu_CMS13*>();
3553  obsThFactory["Hobs_pp_H_VV_qqqq_ATLAS13"] = boost::factory<Hobs_pp_H_VV_qqqq_ATLAS13*>();
3554  obsThFactory["Hobs_pp_H_hh_bbgaga_ATLAS13"] = boost::factory<Hobs_pp_H_hh_bbgaga_ATLAS13*>();
3555  obsThFactory["Hobs_pp_H_hh_bbgaga_CMS13"] = boost::factory<Hobs_pp_H_hh_bbgaga_CMS13*>();
3556  obsThFactory["Hobs_pp_H_hh_bbbb_ATLAS13"] = boost::factory<Hobs_pp_H_hh_bbbb_ATLAS13*>();
3557  obsThFactory["Hobs_pp_H_hh_bbbb_CMS13"] = boost::factory<Hobs_pp_H_hh_bbbb_CMS13*>();
3558  obsThFactory["Hobs_ggF_H_hh_bbbb_CMS13"] = boost::factory<Hobs_ggF_H_hh_bbbb_CMS13*>();
3559  obsThFactory["Hobs_ggF_H_hh_gagaWW_ATLAS13"] = boost::factory<Hobs_ggF_H_hh_gagaWW_ATLAS13*>();
3560  obsThFactory["Hobs_pp_H_hh_bbtautau_CMS13"] = boost::factory<Hobs_pp_H_hh_bbtautau_CMS13*>();
3561  obsThFactory["Hobs_pp_H_hh_bbtautau1_CMS13"] = boost::factory<Hobs_pp_H_hh_bbtautau1_CMS13*>();
3562  obsThFactory["Hobs_pp_H_hh_bblnulnu_CMS13"] = boost::factory<Hobs_pp_H_hh_bblnulnu_CMS13*>();
3563  obsThFactory["Hobs_pp_H_hh_bbVV_CMS13"] = boost::factory<Hobs_pp_H_hh_bbVV_CMS13*>();
3564  obsThFactory["Hobs_pp_H_bb_CMS13"] = boost::factory<Hobs_pp_H_bb_CMS13*>();
3565  obsThFactory["Robs_ttF_H_tt_ATLAS13"] = boost::factory<Robs_ttF_H_tt_ATLAS13*>();
3566  obsThFactory["Robs_bbF_H_tt_ATLAS13"] = boost::factory<Robs_bbF_H_tt_ATLAS13*>();
3567  obsThFactory["Robs_ggF_H_tautau_ATLAS13"] = boost::factory<Robs_ggF_H_tautau_ATLAS13*>();
3568  obsThFactory["Robs_bbF_H_tautau_ATLAS13"] = boost::factory<Robs_bbF_H_tautau_ATLAS13*>();
3569  obsThFactory["Robs_ggF_H_tautau_CMS13"] = boost::factory<Robs_ggF_H_tautau_CMS13*>();
3570  obsThFactory["Robs_bbF_H_tautau_CMS13"] = boost::factory<Robs_bbF_H_tautau_CMS13*>();
3571  obsThFactory["Robs_pp_H_gaga_ATLAS13"] = boost::factory<Robs_pp_H_gaga_ATLAS13*>();
3572  obsThFactory["Robs_ggF_H_gaga_CMS13"] = boost::factory<Robs_ggF_H_gaga_CMS13*>();
3573  obsThFactory["Robs_pp_H_Zga_llga_ATLAS13"] = boost::factory<Robs_pp_H_Zga_llga_ATLAS13*>();
3574  obsThFactory["Robs_pp_H_Zga_llga_CMS13"] = boost::factory<Robs_pp_H_Zga_llga_CMS13*>();
3575  obsThFactory["Robs_pp_H_Zga_qqga_CMS13"] = boost::factory<Robs_pp_H_Zga_qqga_CMS13*>();
3576  obsThFactory["Robs_ggF_H_Zga_CMS13"] = boost::factory<Robs_ggF_H_Zga_CMS13*>();
3577  obsThFactory["Robs_ggF_H_ZZ_llnunu_ATLAS13"] = boost::factory<Robs_ggF_H_ZZ_llnunu_ATLAS13*>();
3578  obsThFactory["Robs_ggF_H_ZZ_llll_ATLAS13"] = boost::factory<Robs_ggF_H_ZZ_llll_ATLAS13*>();
3579  obsThFactory["Robs_VBF_H_ZZ_llll_ATLAS13"] = boost::factory<Robs_VBF_H_ZZ_llll_ATLAS13*>();
3580  obsThFactory["Robs_pp_H_ZZ_llll_CMS13"] = boost::factory<Robs_pp_H_ZZ_llll_CMS13*>();
3581  obsThFactory["Robs_VBF_VH_H_ZZ_llll_CMS13"] = boost::factory<Robs_VBF_VH_H_ZZ_llll_CMS13*>();
3582  obsThFactory["Robs_ggF_H_ZZ_llqq_ATLAS13"] = boost::factory<Robs_ggF_H_ZZ_llqq_ATLAS13*>();
3583  obsThFactory["Robs_VBF_H_ZZ_llqq_ATLAS13"] = boost::factory<Robs_VBF_H_ZZ_llqq_ATLAS13*>();
3584  obsThFactory["Robs_ggF_H_ZZ_nunuqq_ATLAS13"] = boost::factory<Robs_ggF_H_ZZ_nunuqq_ATLAS13*>();
3585  obsThFactory["Robs_pp_H_ZZ_llqq_CMS13"] = boost::factory<Robs_pp_H_ZZ_llqq_CMS13*>();
3586  obsThFactory["Robs_ggF_H_WW_lnuqq_ATLAS13"] = boost::factory<Robs_ggF_H_WW_lnuqq_ATLAS13*>();
3587  obsThFactory["Robs_ggF_H_WW_enumunu_ATLAS13"] = boost::factory<Robs_ggF_H_WW_enumunu_ATLAS13*>();
3588  obsThFactory["Robs_VBF_H_WW_enumunu_ATLAS13"] = boost::factory<Robs_VBF_H_WW_enumunu_ATLAS13*>();
3589  obsThFactory["Robs_ggF_VBF_H_WW_lnulnu_CMS13"] = boost::factory<Robs_ggF_VBF_H_WW_lnulnu_CMS13*>();
3590  obsThFactory["Robs_pp_H_hh_bbgaga_ATLAS13"] = boost::factory<Robs_pp_H_hh_bbgaga_ATLAS13*>();
3591  obsThFactory["Robs_pp_H_hh_bbgaga_CMS13"] = boost::factory<Robs_pp_H_hh_bbgaga_CMS13*>();
3592  obsThFactory["Robs_pp_H_hh_bbbb_ATLAS13"] = boost::factory<Robs_pp_H_hh_bbbb_ATLAS13*>();
3593  obsThFactory["Robs_pp_H_hh_bbbb_CMS13"] = boost::factory<Robs_pp_H_hh_bbbb_CMS13*>();
3594  obsThFactory["Robs_ggF_H_hh_bbbb_CMS13"] = boost::factory<Robs_ggF_H_hh_bbbb_CMS13*>();
3595  obsThFactory["Robs_ggF_H_hh_gagaWW_ATLAS13"] = boost::factory<Robs_ggF_H_hh_gagaWW_ATLAS13*>();
3596  obsThFactory["Robs_pp_H_hh_bbtautau_CMS13"] = boost::factory<Robs_pp_H_hh_bbtautau_CMS13*>();
3597  obsThFactory["Robs_pp_H_hh_bbtautau1_CMS13"] = boost::factory<Robs_pp_H_hh_bbtautau1_CMS13*>();
3598  obsThFactory["Robs_pp_H_hh_bblnulnu_CMS13"] = boost::factory<Robs_pp_H_hh_bblnulnu_CMS13*>();
3599  obsThFactory["Robs_pp_H_hh_bbVV_CMS13"] = boost::factory<Robs_pp_H_hh_bbVV_CMS13*>();
3600  obsThFactory["Robs_pp_H_bb_CMS13"] = boost::factory<Robs_pp_H_bb_CMS13*>();
3601  obsThFactory["log10_ggF_H_tautau_TH13"] = boost::factory<log10_ggF_H_tautau_TH13*>();
3602  obsThFactory["log10_bbF_H_tautau_TH13"] = boost::factory<log10_bbF_H_tautau_TH13*>();
3603  obsThFactory["log10_pp_H_gaga_TH13"] = boost::factory<log10_pp_H_gaga_TH13*>();
3604  obsThFactory["log10_ggF_H_gaga_TH13"] = boost::factory<log10_ggF_H_gaga_TH13*>();
3605  obsThFactory["log10_pp_H_Zga_TH13"] = boost::factory<log10_pp_H_Zga_TH13*>();
3606  obsThFactory["log10_ggF_H_Zga_TH13"] = boost::factory<log10_ggF_H_Zga_TH13*>();
3607  obsThFactory["log10_pp_H_ZZ_TH13"] = boost::factory<log10_pp_H_ZZ_TH13*>();
3608  obsThFactory["log10_ggF_H_ZZ_TH13"] = boost::factory<log10_ggF_H_ZZ_TH13*>();
3609  obsThFactory["log10_VBF_H_ZZ_TH13"] = boost::factory<log10_VBF_H_ZZ_TH13*>();
3610  obsThFactory["log10_ggF_H_ZZ_llll_TH13"] = boost::factory<log10_ggF_H_ZZ_llll_TH13*>();
3611  obsThFactory["log10_VBF_H_ZZ_llll_TH13"] = boost::factory<log10_VBF_H_ZZ_llll_TH13*>();
3612  obsThFactory["log10_pp_H_ZZ_llll_TH13"] = boost::factory<log10_pp_H_ZZ_llll_TH13*>();
3613  obsThFactory["log10_VBF_VH_H_ZZ_llll_TH13"] = boost::factory<log10_VBF_VH_H_ZZ_llll_TH13*>();
3614  obsThFactory["log10_ggF_H_WW_TH13"] = boost::factory<log10_ggF_H_WW_TH13*>();
3615  obsThFactory["log10_VBF_H_WW_TH13"] = boost::factory<log10_VBF_H_WW_TH13*>();
3616  obsThFactory["log10_ggF_VBF_H_WW_lnulnu_TH13"] = boost::factory<log10_ggF_VBF_H_WW_lnulnu_TH13*>();
3617  obsThFactory["log10_ggF_H_hh_TH13"] = boost::factory<log10_ggF_H_hh_TH13*>();
3618  obsThFactory["log10_pp_H_hh_TH13"] = boost::factory<log10_pp_H_hh_TH13*>();
3619  obsThFactory["log10_pp_H_hh_bbbb_TH13"] = boost::factory<log10_pp_H_hh_bbbb_TH13*>();
3620  obsThFactory["log10_ggF_H_hh_bbbb_TH13"] = boost::factory<log10_ggF_H_hh_bbbb_TH13*>();
3621  obsThFactory["log10_pp_H_hh_gagabb_TH13"] = boost::factory<log10_pp_H_hh_gagabb_TH13*>();
3622  obsThFactory["log10_pp_H_hh_bbtautau_TH13"] = boost::factory<log10_pp_H_hh_bbtautau_TH13*>();
3623  obsThFactory["log10_pp_H_hh_bblnulnu_TH13"] = boost::factory<log10_pp_H_hh_bblnulnu_TH13*>();
3624  obsThFactory["log10_pp_H_hh_bbVV_TH13"] = boost::factory<log10_pp_H_hh_bbVV_TH13*>();
3625  obsThFactory["log10_tt_H_tt_TH13"] = boost::factory<log10_tt_H_tt_TH13*>();
3626  obsThFactory["log10_bb_H_tt_TH13"] = boost::factory<log10_bb_H_tt_TH13*>();
3627  obsThFactory["log10_pp_H_bb_TH13"] = boost::factory<log10_pp_H_bb_TH13*>();
3628  obsThFactory["Gamma_HH_THDM"] = boost::factory<Gamma_HH_THDM*>();
3629  obsThFactory["rHH_gg_THDM"] = boost::factory<rHH_gg_THDM*>();
3630  obsThFactory["BR_HH_hh_THDM"] = boost::factory<BR_HH_hh_THDM*>();
3631  obsThFactory["BR_HH_AA_THDM"] = boost::factory<BR_HH_AA_THDM*>();
3632  obsThFactory["BR_HH_HpHm_THDM"] = boost::factory<BR_HH_HpHm_THDM*>();
3633  obsThFactory["BR_HH_AZ_THDM"] = boost::factory<BR_HH_AZ_THDM*>();
3634  obsThFactory["BR_HH_HpW_THDM"] = boost::factory<BR_HH_HpW_THDM*>();
3635 
3636  obsThFactory["Hobs_ggF_A_tautau_ATLAS8"] = boost::factory<Hobs_ggF_A_tautau_ATLAS8*>();
3637  obsThFactory["Hobs_ggF_A_tautau_CMS8"] = boost::factory<Hobs_ggF_A_tautau_CMS8*>();
3638  obsThFactory["Hobs_bbF_A_tautau_ATLAS8"] = boost::factory<Hobs_bbF_A_tautau_ATLAS8*>();
3639  obsThFactory["Hobs_bbF_A_tautau_CMS8"] = boost::factory<Hobs_bbF_A_tautau_CMS8*>();
3640  obsThFactory["Hobs_pp_A_gaga_ATLAS8"] = boost::factory<Hobs_pp_A_gaga_ATLAS8*>();
3641  obsThFactory["Hobs_ggF_A_gaga_CMS8"] = boost::factory<Hobs_ggF_A_gaga_CMS8*>();
3642  obsThFactory["Hobs_pp_A_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_A_Zga_llga_ATLAS8*>();
3643  obsThFactory["Hobs_pp_A_Zga_llga_CMS8"] = boost::factory<Hobs_pp_A_Zga_llga_CMS8*>();
3644  obsThFactory["Hobs_ggF_A_hZ_bbll_CMS8"] = boost::factory<Hobs_ggF_A_hZ_bbll_CMS8*>();
3645  obsThFactory["Hobs_ggF_A_hZ_bbZ_ATLAS8"] = boost::factory<Hobs_ggF_A_hZ_bbZ_ATLAS8*>();
3646  obsThFactory["Hobs_ggF_A_hZ_tautaull_CMS8"] = boost::factory<Hobs_ggF_A_hZ_tautaull_CMS8*>();
3647  obsThFactory["Hobs_ggF_A_hZ_tautauZ_ATLAS8"] = boost::factory<Hobs_ggF_A_hZ_tautauZ_ATLAS8*>();
3648  obsThFactory["Hobs_ggF_A_tt_ATLAS8"] = boost::factory<Hobs_ggF_A_tt_ATLAS8*>();
3649  obsThFactory["Hobs_bbF_A_bb_CMS8"] = boost::factory<Hobs_bbF_A_bb_CMS8*>();
3650  obsThFactory["Hobs_pp_A_HZ_bbll_CMS8"] = boost::factory<Hobs_pp_A_HZ_bbll_CMS8*>();
3651  obsThFactory["Hobs_pp_A_HZ_tautaull_CMS8"] = boost::factory<Hobs_pp_A_HZ_tautaull_CMS8*>();
3652  obsThFactory["Robs_ggF_A_tautau_ATLAS8"] = boost::factory<Robs_ggF_A_tautau_ATLAS8*>();
3653  obsThFactory["Robs_ggF_A_tautau_CMS8"] = boost::factory<Robs_ggF_A_tautau_CMS8*>();
3654  obsThFactory["Robs_bbF_A_tautau_ATLAS8"] = boost::factory<Robs_bbF_A_tautau_ATLAS8*>();
3655  obsThFactory["Robs_bbF_A_tautau_CMS8"] = boost::factory<Robs_bbF_A_tautau_CMS8*>();
3656  obsThFactory["Robs_pp_A_gaga_ATLAS8"] = boost::factory<Robs_pp_A_gaga_ATLAS8*>();
3657  obsThFactory["Robs_ggF_A_gaga_CMS8"] = boost::factory<Robs_ggF_A_gaga_CMS8*>();
3658  obsThFactory["Robs_pp_A_Zga_llga_ATLAS8"] = boost::factory<Robs_pp_A_Zga_llga_ATLAS8*>();
3659  obsThFactory["Robs_pp_A_Zga_llga_CMS8"] = boost::factory<Robs_pp_A_Zga_llga_CMS8*>();
3660  obsThFactory["Robs_ggF_A_hZ_bbll_CMS8"] = boost::factory<Robs_ggF_A_hZ_bbll_CMS8*>();
3661  obsThFactory["Robs_ggF_A_hZ_bbZ_ATLAS8"] = boost::factory<Robs_ggF_A_hZ_bbZ_ATLAS8*>();
3662  obsThFactory["Robs_ggF_A_hZ_tautaull_CMS8"] = boost::factory<Robs_ggF_A_hZ_tautaull_CMS8*>();
3663  obsThFactory["Robs_ggF_A_hZ_tautauZ_ATLAS8"] = boost::factory<Robs_ggF_A_hZ_tautauZ_ATLAS8*>();
3664  obsThFactory["Robs_ggF_A_tt_ATLAS8"] = boost::factory<Robs_ggF_A_tt_ATLAS8*>();
3665  obsThFactory["Robs_bbF_A_bb_CMS8"] = boost::factory<Robs_bbF_A_bb_CMS8*>();
3666  obsThFactory["Robs_pp_A_HZ_bbll_CMS8"] = boost::factory<Robs_pp_A_HZ_bbll_CMS8*>();
3667  obsThFactory["Robs_pp_A_HZ_tautaull_CMS8"] = boost::factory<Robs_pp_A_HZ_tautaull_CMS8*>();
3668  obsThFactory["log10_ggF_A_tautau_TH8"] = boost::factory<log10_ggF_A_tautau_TH8*>();
3669  obsThFactory["log10_bbF_A_tautau_TH8"] = boost::factory<log10_bbF_A_tautau_TH8*>();
3670  obsThFactory["log10_pp_A_gaga_TH8"] = boost::factory<log10_pp_A_gaga_TH8*>();
3671  obsThFactory["log10_ggF_A_gaga_TH8"] = boost::factory<log10_ggF_A_gaga_TH8*>();
3672  obsThFactory["log10_pp_A_Zga_llga_TH8"] = boost::factory<log10_pp_A_Zga_llga_TH8*>();
3673  obsThFactory["log10_ggF_A_hZ_bbll_TH8"] = boost::factory<log10_ggF_A_hZ_bbll_TH8*>();
3674  obsThFactory["log10_ggF_A_hZ_bbZ_TH8"] = boost::factory<log10_ggF_A_hZ_bbZ_TH8*>();
3675  obsThFactory["log10_ggF_A_hZ_tautaull_TH8"] = boost::factory<log10_ggF_A_hZ_tautaull_TH8*>();
3676  obsThFactory["log10_ggF_A_hZ_tautauZ_TH8"] = boost::factory<log10_ggF_A_hZ_tautauZ_TH8*>();
3677  obsThFactory["log10_ggF_A_tt_TH8"] = boost::factory<log10_ggF_A_tt_TH8*>();
3678  obsThFactory["log10_bbF_A_bb_TH8"] = boost::factory<log10_bbF_A_bb_TH8*>();
3679  obsThFactory["log10_pp_A_HZ_bbll_TH8"] = boost::factory<log10_pp_A_HZ_bbll_TH8*>();
3680  obsThFactory["log10_pp_A_HZ_tautaull_TH8"] = boost::factory<log10_pp_A_HZ_tautaull_TH8*>();
3681  obsThFactory["Hobs_ttF_A_tt_ATLAS13"] = boost::factory<Hobs_ttF_A_tt_ATLAS13*>();
3682  obsThFactory["Hobs_bbF_A_tt_ATLAS13"] = boost::factory<Hobs_bbF_A_tt_ATLAS13*>();
3683  obsThFactory["Hobs_ggF_A_tautau_ATLAS13"] = boost::factory<Hobs_ggF_A_tautau_ATLAS13*>();
3684  obsThFactory["Hobs_bbF_A_tautau_ATLAS13"] = boost::factory<Hobs_bbF_A_tautau_ATLAS13*>();
3685  obsThFactory["Hobs_ggF_A_tautau_CMS13"] = boost::factory<Hobs_ggF_A_tautau_CMS13*>();
3686  obsThFactory["Hobs_bbF_A_tautau_CMS13"] = boost::factory<Hobs_bbF_A_tautau_CMS13*>();
3687  obsThFactory["Hobs_pp_A_gaga_ATLAS13"] = boost::factory<Hobs_pp_A_gaga_ATLAS13*>();
3688  obsThFactory["Hobs_ggF_A_gaga_CMS13"] = boost::factory<Hobs_ggF_A_gaga_CMS13*>();
3689  obsThFactory["Hobs_pp_A_Zga_llga_ATLAS13"] = boost::factory<Hobs_pp_A_Zga_llga_ATLAS13*>();
3690  obsThFactory["Hobs_ggF_A_Zga_llga_ATLAS13"] = boost::factory<Hobs_ggF_A_Zga_llga_ATLAS13*>();
3691  obsThFactory["Hobs_pp_A_Zga_llga_CMS13"] = boost::factory<Hobs_pp_A_Zga_llga_CMS13*>();
3692  obsThFactory["Hobs_pp_A_Zga_qqga_CMS13"] = boost::factory<Hobs_pp_A_Zga_qqga_CMS13*>();
3693  obsThFactory["Hobs_ggF_A_Zga_CMS13"] = boost::factory<Hobs_ggF_A_Zga_CMS13*>();
3694  obsThFactory["Hobs_ggF_A_hZ_bbZ_ATLAS13"] = boost::factory<Hobs_ggF_A_hZ_bbZ_ATLAS13*>();
3695  obsThFactory["Hobs_bbF_A_hZ_bbZ_ATLAS13"] = boost::factory<Hobs_bbF_A_hZ_bbZ_ATLAS13*>();
3696  obsThFactory["Hobs_pp_A_bb_CMS13"] = boost::factory<Hobs_pp_A_bb_CMS13*>();
3697  obsThFactory["Robs_ttF_A_tt_ATLAS13"] = boost::factory<Robs_ttF_A_tt_ATLAS13*>();
3698  obsThFactory["Robs_bbF_A_tt_ATLAS13"] = boost::factory<Robs_bbF_A_tt_ATLAS13*>();
3699  obsThFactory["Robs_ggF_A_tautau_ATLAS13"] = boost::factory<Robs_ggF_A_tautau_ATLAS13*>();
3700  obsThFactory["Robs_bbF_A_tautau_ATLAS13"] = boost::factory<Robs_bbF_A_tautau_ATLAS13*>();
3701  obsThFactory["Robs_ggF_A_tautau_CMS13"] = boost::factory<Robs_ggF_A_tautau_CMS13*>();
3702  obsThFactory["Robs_bbF_A_tautau_CMS13"] = boost::factory<Robs_bbF_A_tautau_CMS13*>();
3703  obsThFactory["Robs_pp_A_gaga_ATLAS13"] = boost::factory<Robs_pp_A_gaga_ATLAS13*>();
3704  obsThFactory["Robs_ggF_A_gaga_CMS13"] = boost::factory<Robs_ggF_A_gaga_CMS13*>();
3705  obsThFactory["Robs_pp_A_Zga_llga_ATLAS13"] = boost::factory<Robs_pp_A_Zga_llga_ATLAS13*>();
3706  obsThFactory["Robs_pp_A_Zga_llga_CMS13"] = boost::factory<Robs_pp_A_Zga_llga_CMS13*>();
3707  obsThFactory["Robs_pp_A_Zga_qqga_CMS13"] = boost::factory<Robs_pp_A_Zga_qqga_CMS13*>();
3708  obsThFactory["Robs_ggF_A_Zga_CMS13"] = boost::factory<Robs_ggF_A_Zga_CMS13*>();
3709  obsThFactory["Robs_ggF_A_hZ_bbZ_ATLAS13"] = boost::factory<Robs_ggF_A_hZ_bbZ_ATLAS13*>();
3710  obsThFactory["Robs_bbF_A_hZ_bbZ_ATLAS13"] = boost::factory<Robs_bbF_A_hZ_bbZ_ATLAS13*>();
3711  obsThFactory["Robs_pp_A_bb_CMS13"] = boost::factory<Robs_pp_A_bb_CMS13*>();
3712  obsThFactory["log10_ggF_A_tautau_TH13"] = boost::factory<log10_ggF_A_tautau_TH13*>();
3713  obsThFactory["log10_bbF_A_tautau_TH13"] = boost::factory<log10_bbF_A_tautau_TH13*>();
3714  obsThFactory["log10_pp_A_gaga_TH13"] = boost::factory<log10_pp_A_gaga_TH13*>();
3715  obsThFactory["log10_ggF_A_gaga_TH13"] = boost::factory<log10_ggF_A_gaga_TH13*>();
3716  obsThFactory["log10_pp_A_Zga_TH13"] = boost::factory<log10_pp_A_Zga_TH13*>();
3717  obsThFactory["log10_ggF_A_Zga_TH13"] = boost::factory<log10_ggF_A_Zga_TH13*>();
3718  obsThFactory["log10_ggF_A_hZ_bbZ_TH13"] = boost::factory<log10_ggF_A_hZ_bbZ_TH13*>();
3719  obsThFactory["log10_bbF_A_hZ_bbZ_TH13"] = boost::factory<log10_bbF_A_hZ_bbZ_TH13*>();
3720  obsThFactory["log10_ttF_A_tt_TH13"] = boost::factory<log10_ttF_A_tt_TH13*>();
3721  obsThFactory["log10_bbF_A_tt_TH13"] = boost::factory<log10_bbF_A_tt_TH13*>();
3722  obsThFactory["log10_pp_A_bb_TH13"] = boost::factory<log10_pp_A_bb_TH13*>();
3723  obsThFactory["Gamma_A_THDM"] = boost::factory<Gamma_A_THDM*>();
3724  obsThFactory["rA_gg_THDM"] = boost::factory<rA_gg_THDM*>();
3725  obsThFactory["BR_A_HZ_THDM"] = boost::factory<BR_A_HZ_THDM*>();
3726  obsThFactory["BR_A_hZ_THDM"] = boost::factory<BR_A_hZ_THDM*>();
3727  obsThFactory["BR_A_HpW_THDM"] = boost::factory<BR_A_HpW_THDM*>();
3728 
3729  obsThFactory["Hobs_pp_Hpm_taunu_ATLAS8"] = boost::factory<Hobs_pp_Hpm_taunu_ATLAS8*>();
3730  obsThFactory["Hobs_pp_Hp_taunu_CMS8"] = boost::factory<Hobs_pp_Hp_taunu_CMS8*>();
3731  obsThFactory["Hobs_pp_Hpm_tb_ATLAS8"] = boost::factory<Hobs_pp_Hpm_tb_ATLAS8*>();
3732  obsThFactory["Hobs_pp_Hp_tb_CMS8"] = boost::factory<Hobs_pp_Hp_tb_CMS8*>();
3733  obsThFactory["Hobs_pp_Hpm_taunu_ATLAS13"] = boost::factory<Hobs_pp_Hpm_taunu_ATLAS13*>();
3734  obsThFactory["Hobs_pp_Hpm_taunu_CMS13"] = boost::factory<Hobs_pp_Hpm_taunu_CMS13*>();
3735  obsThFactory["Hobs_pp_Hp_tb_ATLAS13"] = boost::factory<Hobs_pp_Hp_tb_ATLAS13*>();
3736  obsThFactory["Hobs_pp_Hp_tb_ATLAS13_1"] = boost::factory<Hobs_pp_Hp_tb_ATLAS13_1*>();
3737  obsThFactory["Hobs_pp_Hp_tb_ATLAS13_2"] = boost::factory<Hobs_pp_Hp_tb_ATLAS13_2*>();
3738  obsThFactory["Robs_pp_Hpm_taunu_ATLAS8"] = boost::factory<Robs_pp_Hpm_taunu_ATLAS8*>();
3739  obsThFactory["Robs_pp_Hp_taunu_CMS8"] = boost::factory<Robs_pp_Hp_taunu_CMS8*>();
3740  obsThFactory["Robs_pp_Hpm_tb_ATLAS8"] = boost::factory<Robs_pp_Hpm_tb_ATLAS8*>();
3741  obsThFactory["Robs_pp_Hp_tb_CMS8"] = boost::factory<Robs_pp_Hp_tb_CMS8*>();
3742  obsThFactory["Robs_pp_Hpm_taunu_ATLAS13"] = boost::factory<Robs_pp_Hpm_taunu_ATLAS13*>();
3743  obsThFactory["Robs_pp_Hpm_taunu_CMS13"] = boost::factory<Robs_pp_Hpm_taunu_CMS13*>();
3744  obsThFactory["Robs_pp_Hp_tb_ATLAS13"] = boost::factory<Robs_pp_Hp_tb_ATLAS13*>();
3745  obsThFactory["Robs_pp_Hp_tb_ATLAS13_1"] = boost::factory<Robs_pp_Hp_tb_ATLAS13_1*>();
3746  obsThFactory["Robs_pp_Hp_tb_ATLAS13_2"] = boost::factory<Robs_pp_Hp_tb_ATLAS13_2*>();
3747  obsThFactory["log10_pp_Hpm_taunu_TH8"] = boost::factory<log10_pp_Hpm_taunu_TH8*>();
3748  obsThFactory["log10_pp_Hp_tb_TH8"] = boost::factory<log10_pp_Hp_tb_TH8*>();
3749  obsThFactory["log10_pp_Hpm_taunu_TH13"] = boost::factory<log10_pp_Hpm_taunu_TH13*>();
3750  obsThFactory["log10_pp_Hp_tb_TH13"] = boost::factory<log10_pp_Hp_tb_TH13*>();
3751  obsThFactory["Gamma_Hp_THDM"] = boost::factory<Gamma_Hp_THDM*>();
3752 
3753  obsThFactory["tanbeta"] = boost::factory<tanbeta*>();
3754  obsThFactory["mHl_THDM"] = boost::factory<mass_mHl*>();
3755  obsThFactory["mHh"] = boost::factory<mass_mHh*>();
3756  obsThFactory["mA"] = boost::factory<mass_mA*>();
3757  obsThFactory["mHp"] = boost::factory<mass_mHp*>();
3758  obsThFactory["mHlmmA"] = boost::factory<massdifference_mHlmmA*>();
3759  obsThFactory["mAmmHl"] = boost::factory<massdifference_mAmmHl*>();
3760  obsThFactory["mHlmmHp"] = boost::factory<massdifference_mHlmmHp*>();
3761  obsThFactory["mHpmmHl"] = boost::factory<massdifference_mHpmmHl*>();
3762  obsThFactory["mHhmmA"] = boost::factory<massdifference_mHhmmA*>();
3763  obsThFactory["mAmmHh"] = boost::factory<massdifference_mAmmHh*>();
3764  obsThFactory["mHhmmHp"] = boost::factory<massdifference_mHhmmHp*>();
3765  obsThFactory["mHpmmHh"] = boost::factory<massdifference_mHpmmHh*>();
3766  obsThFactory["mAmmHp"] = boost::factory<massdifference_mAmmHp*>();
3767  obsThFactory["mHpmmA"] = boost::factory<massdifference_mHpmmA*>();
3768  obsThFactory["m11_2"] = boost::factory<m11_2*>();
3769  obsThFactory["m22_2"] = boost::factory<m22_2*>();
3770  obsThFactory["lambda1"] = boost::factory<lambda1*>();
3771  obsThFactory["lambda2"] = boost::factory<lambda2*>();
3772  obsThFactory["lambda3"] = boost::factory<lambda3*>();
3773  obsThFactory["lambda4"] = boost::factory<lambda4*>();
3774  obsThFactory["lambda5"] = boost::factory<lambda5*>();
3775  obsThFactory["lambda345"] = boost::factory<lambda345*>();
3776  obsThFactory["g_hhh"] = boost::factory<g_hhh*>();
3777  obsThFactory["g_hhHh"] = boost::factory<g_hhHh*>();
3778  obsThFactory["g_hHhHh"] = boost::factory<g_hHhHh*>();
3779  obsThFactory["g_HhHhHh"] = boost::factory<g_HhHhHh*>();
3780  obsThFactory["g_hAA"] = boost::factory<g_hAA*>();
3781  obsThFactory["g_HhAA"] = boost::factory<g_HhAA*>();
3782  obsThFactory["g_hHpHm"] = boost::factory<g_hHpHm*>();
3783  obsThFactory["g_HhHpHm"] = boost::factory<g_HhHpHm*>();
3784  obsThFactory["Y1_THDM"] = boost::factory<Y1_THDM*>();
3785  obsThFactory["Y2_THDM"] = boost::factory<Y2_THDM*>();
3786  obsThFactory["Y3_THDM"] = boost::factory<Y3_THDM*>();
3787  obsThFactory["Z1_THDM"] = boost::factory<Z1_THDM*>();
3788  obsThFactory["Z2_THDM"] = boost::factory<Z2_THDM*>();
3789  obsThFactory["Z3_THDM"] = boost::factory<Z3_THDM*>();
3790  obsThFactory["Z4_THDM"] = boost::factory<Z4_THDM*>();
3791  obsThFactory["Z5_THDM"] = boost::factory<Z5_THDM*>();
3792  obsThFactory["Z6_THDM"] = boost::factory<Z6_THDM*>();
3793  obsThFactory["Z7_THDM"] = boost::factory<Z7_THDM*>();
3794  obsThFactory["xi0_THDM"] = boost::factory<xi0_THDM*>();
3795  obsThFactory["xi1_THDM"] = boost::factory<xi1_THDM*>();
3796  obsThFactory["xi3_THDM"] = boost::factory<xi3_THDM*>();
3797  obsThFactory["eta00_THDM"] = boost::factory<eta00_THDM*>();
3798  obsThFactory["eta3_THDM"] = boost::factory<eta3_THDM*>();
3799  obsThFactory["E11_THDM"] = boost::factory<E11_THDM*>();
3800  obsThFactory["E22_THDM"] = boost::factory<E22_THDM*>();
3801  obsThFactory["E33_THDM"] = boost::factory<E33_THDM*>();
3802  obsThFactory["HHlambda1"] = boost::factory<HHlambda1*>();
3803  obsThFactory["HHlambda2"] = boost::factory<HHlambda2*>();
3804  obsThFactory["HHlambda3"] = boost::factory<HHlambda3*>();
3805  obsThFactory["HHlambda4"] = boost::factory<HHlambda4*>();
3806  obsThFactory["HHlambda5"] = boost::factory<HHlambda5*>();
3807  obsThFactory["HHlambda6"] = boost::factory<HHlambda6*>();
3808 
3809  obsThFactory["positivity1"] = boost::factory<positivity1*>();
3810  obsThFactory["positivity2"] = boost::factory<positivity2*>();
3811 
3812  obsThFactory["unitarity1"] = boost::factory<unitarity1*>();
3813  obsThFactory["unitarity2"] = boost::factory<unitarity2*>();
3814  obsThFactory["unitarity3"] = boost::factory<unitarity3*>();
3815  obsThFactory["unitarity4"] = boost::factory<unitarity4*>();
3816  obsThFactory["unitarity5"] = boost::factory<unitarity5*>();
3817  obsThFactory["unitarity6"] = boost::factory<unitarity6*>();
3818  obsThFactory["unitarity7"] = boost::factory<unitarity7*>();
3819  obsThFactory["unitarity8"] = boost::factory<unitarity8*>();
3820  obsThFactory["unitarity9"] = boost::factory<unitarity9*>();
3821  obsThFactory["unitarity10"] = boost::factory<unitarity10*>();
3822  obsThFactory["unitarity11"] = boost::factory<unitarity11*>();
3823  obsThFactory["unitarity12"] = boost::factory<unitarity12*>();
3824 
3825  obsThFactory["DeltaS"] = boost::factory<DeltaS*>();
3826  obsThFactory["DeltaT"] = boost::factory<DeltaT*>();
3827  obsThFactory["DeltaU"] = boost::factory<DeltaU*>();
3828 
3829  obsThFactory["B_BtoXsgammaTHDM"] = boost::factory<bsgammaTHDM*>();
3830 // obsThFactory["BR_BsmumuTHDM"] = boost::factory<BR_BsmumuTHDM*>();
3831 // obsThFactory["BR_BdmumuTHDM"] = boost::factory<BR_BdmumuTHDM*>();
3832  obsThFactory["RBDstartaunu"] = boost::factory<RBDstartaunu*>();
3833  obsThFactory["RBDtaunu"] = boost::factory<RBDtaunu*>();
3834  obsThFactory["obsBDtaunu_SM"] = boost::factory<obsBDtaunu_SM*>();
3835  obsThFactory["obsBDtaunu_A"] = boost::factory<obsBDtaunu_A*>();
3836  obsThFactory["obsBDtaunu_B"] = boost::factory<obsBDtaunu_B*>();
3837  obsThFactory["obsBDstartaunu_SM"] = boost::factory<obsBDstartaunu_SM*>();
3838  obsThFactory["obsBDstartaunu_A"] = boost::factory<obsBDstartaunu_A*>();
3839  obsThFactory["obsBDstartaunu_B"] = boost::factory<obsBDstartaunu_B*>();
3840  obsThFactory["THDMgminus2_mu"] = boost::factory<THDMgminus2_mu*>();
3841 
3842  obsThFactory["Q_st"] = boost::factory<Q_st*>();
3843  obsThFactory["DeltaQ_THDM"] = boost::factory<DeltaQ_THDM*>();
3844  obsThFactory["g1atQ"] = boost::factory<g1atQ*>();
3845  obsThFactory["g2atQ"] = boost::factory<g2atQ*>();
3846  obsThFactory["g3atQ"] = boost::factory<g3atQ*>();
3847  obsThFactory["YtopatQ"] = boost::factory<YtopatQ*>();
3848  obsThFactory["YbottomatQ"] = boost::factory<YbottomatQ*>();
3849  obsThFactory["YtauatQ"] = boost::factory<YtauatQ*>();
3850  obsThFactory["m11_2atQ"] = boost::factory<m11_2atQ*>();
3851  obsThFactory["m22_2atQ"] = boost::factory<m22_2atQ*>();
3852  obsThFactory["m12_2atQ"] = boost::factory<m12_2atQ*>();
3853  obsThFactory["lambda1atQ"] = boost::factory<lambda1atQ*>();
3854  obsThFactory["lambda2atQ"] = boost::factory<lambda2atQ*>();
3855  obsThFactory["lambda3atQ"] = boost::factory<lambda3atQ*>();
3856  obsThFactory["lambda4atQ"] = boost::factory<lambda4atQ*>();
3857  obsThFactory["lambda5atQ"] = boost::factory<lambda5atQ*>();
3858 
3859  obsThFactory["unitaritya10odd"] = boost::factory<unitarityNLO14*>();
3860  obsThFactory["unitaritya11odd"] = boost::factory<unitarityNLO24*>();
3861  obsThFactory["unitaritya00evenp"] = boost::factory<unitarityNLOev1*>();
3862  obsThFactory["unitaritya00evenm"] = boost::factory<unitarityNLOev2*>();
3863  obsThFactory["unitaritya00oddp"] = boost::factory<unitarityNLOev3*>();
3864  obsThFactory["unitaritya00oddm"] = boost::factory<unitarityNLOev4*>();
3865  obsThFactory["unitaritya01evenp"] = boost::factory<unitarityNLOev5*>();
3866  obsThFactory["unitaritya01evenm"] = boost::factory<unitarityNLOev6*>();
3867  obsThFactory["unitaritya01oddp"] = boost::factory<unitarityNLOev9*>();
3868  obsThFactory["unitaritya01oddm"] = boost::factory<unitarityNLOev10*>();
3869  obsThFactory["unitaritya11evenp"] = boost::factory<unitarityNLOev13*>();
3870  obsThFactory["unitaritya11evenm"] = boost::factory<unitarityNLOev14*>();
3871  obsThFactory["unitarityRp1"] = boost::factory<unitarityRp1*>();
3872  obsThFactory["unitarityRp2"] = boost::factory<unitarityRp2*>();
3873  obsThFactory["unitarityRp3"] = boost::factory<unitarityRp3*>();
3874  obsThFactory["unitarityRp4"] = boost::factory<unitarityRp4*>();
3875  obsThFactory["unitarityRp5"] = boost::factory<unitarityRp5*>();
3876  obsThFactory["unitarityRp6"] = boost::factory<unitarityRp6*>();
3877  obsThFactory["unitarityRp9"] = boost::factory<unitarityRp9*>();
3878  obsThFactory["unitarityRp10"] = boost::factory<unitarityRp10*>();
3879  obsThFactory["unitarityRp13"] = boost::factory<unitarityRp13*>();
3880  obsThFactory["unitarityRp14"] = boost::factory<unitarityRp14*>();
3881  obsThFactory["unitarityRp19"] = boost::factory<unitarityRp19*>();
3882  obsThFactory["unitarityRp20"] = boost::factory<unitarityRp20*>();
3883  obsThFactory["unitarityR1"] = boost::factory<unitarityR1*>();
3884  obsThFactory["unitarityR2"] = boost::factory<unitarityR2*>();
3885  obsThFactory["unitarityR3"] = boost::factory<unitarityR3*>();
3886  obsThFactory["unitarityR4"] = boost::factory<unitarityR4*>();
3887  obsThFactory["unitarityR5"] = boost::factory<unitarityR5*>();
3888  obsThFactory["unitarityR6"] = boost::factory<unitarityR6*>();
3889  obsThFactory["unitarityR9"] = boost::factory<unitarityR9*>();
3890  obsThFactory["unitarityR10"] = boost::factory<unitarityR10*>();
3891  obsThFactory["unitarityR13"] = boost::factory<unitarityR13*>();
3892  obsThFactory["unitarityR14"] = boost::factory<unitarityR14*>();
3893  obsThFactory["unitarityR19"] = boost::factory<unitarityR19*>();
3894  obsThFactory["unitarityR20"] = boost::factory<unitarityR20*>();
3895  obsThFactory["unitaritya00evenpRe"] = boost::factory<unitaritya00evenpRe*>();
3896  obsThFactory["unitaritya00evenpIm"] = boost::factory<unitaritya00evenpIm*>();
3897  obsThFactory["unitaritya00evenmRe"] = boost::factory<unitaritya00evenmRe*>();
3898  obsThFactory["unitaritya00evenmIm"] = boost::factory<unitaritya00evenmIm*>();
3899  obsThFactory["unitaritya00oddpRe"] = boost::factory<unitaritya00oddpRe*>();
3900  obsThFactory["unitaritya00oddpIm"] = boost::factory<unitaritya00oddpIm*>();
3901  obsThFactory["unitaritya00oddmRe"] = boost::factory<unitaritya00oddmRe*>();
3902  obsThFactory["unitaritya00oddmIm"] = boost::factory<unitaritya00oddmIm*>();
3903  obsThFactory["unitaritya01evenpRe"] = boost::factory<unitaritya01evenpRe*>();
3904  obsThFactory["unitaritya01evenpIm"] = boost::factory<unitaritya01evenpIm*>();
3905  obsThFactory["unitaritya01evenmRe"] = boost::factory<unitaritya01evenmRe*>();
3906  obsThFactory["unitaritya01evenmIm"] = boost::factory<unitaritya01evenmIm*>();
3907  obsThFactory["unitaritya01oddpRe"] = boost::factory<unitaritya01oddpRe*>();
3908  obsThFactory["unitaritya01oddpIm"] = boost::factory<unitaritya01oddpIm*>();
3909  obsThFactory["unitaritya01oddmRe"] = boost::factory<unitaritya01oddmRe*>();
3910  obsThFactory["unitaritya01oddmIm"] = boost::factory<unitaritya01oddmIm*>();
3911  obsThFactory["unitaritya10oddRe"] = boost::factory<unitaritya10oddRe*>();
3912  obsThFactory["unitaritya10oddIm"] = boost::factory<unitaritya10oddIm*>();
3913  obsThFactory["unitaritya11evenpRe"] = boost::factory<unitaritya11evenpRe*>();
3914  obsThFactory["unitaritya11evenpIm"] = boost::factory<unitaritya11evenpIm*>();
3915  obsThFactory["unitaritya11evenmRe"] = boost::factory<unitaritya11evenmRe*>();
3916  obsThFactory["unitaritya11evenmIm"] = boost::factory<unitaritya11evenmIm*>();
3917  obsThFactory["unitaritya11oddRe"] = boost::factory<unitaritya11oddRe*>();
3918  obsThFactory["unitaritya11oddIm"] = boost::factory<unitaritya11oddIm*>();
3919 
3920  //----- GeneralTHDM observables -----
3921  obsThFactory["mH1"] = boost::factory<mH1_GTHDM*>();
3922  obsThFactory["mH2"] = boost::factory<mH2_GTHDM*>();
3923  obsThFactory["mH3"] = boost::factory<mH3_GTHDM*>();
3924  obsThFactory["m1_2"] = boost::factory<m1_2*>();
3925  obsThFactory["m2_2"] = boost::factory<m2_2*>();
3926  obsThFactory["m3_2"] = boost::factory<m3_2*>();
3927  obsThFactory["mHlight"] = boost::factory<mHlight_GTHDM*>();
3928  obsThFactory["mHmedium"] = boost::factory<mHmedium_GTHDM*>();
3929  obsThFactory["mHheavy"] = boost::factory<mHheavy_GTHDM*>();
3930  obsThFactory["mHp_GTHDM"] = boost::factory<mHp_GTHDM*>();
3931  obsThFactory["mH3mmH2"] = boost::factory<mH3mmH2_GTHDM*>();
3932  obsThFactory["mH3mmHp"] = boost::factory<mH3mmHp_GTHDM*>();
3933  obsThFactory["mH3mmH1"] = boost::factory<mH3mmH1_GTHDM*>();
3934  obsThFactory["mH2mmHp"] = boost::factory<mH2mmHp_GTHDM*>();
3935  obsThFactory["mH2mmH1"] = boost::factory<mH2mmH1_GTHDM*>();
3936  obsThFactory["mHpmmH1"] = boost::factory<mHpmmH1_GTHDM*>();
3937  obsThFactory["mH1sq"] = boost::factory<mH1sq_GTHDM*>();
3938  obsThFactory["mH2sq"] = boost::factory<mH2sq_GTHDM*>();
3939  obsThFactory["mH3sq"] = boost::factory<mH3sq_GTHDM*>();
3940  obsThFactory["Msq11"] = boost::factory<Msq11_GTHDM*>();
3941  obsThFactory["Msq12"] = boost::factory<Msq12_GTHDM*>();
3942  obsThFactory["Msq13"] = boost::factory<Msq13_GTHDM*>();
3943  obsThFactory["Msq22"] = boost::factory<Msq22_GTHDM*>();
3944  obsThFactory["Msq23"] = boost::factory<Msq23_GTHDM*>();
3945  obsThFactory["Msq33"] = boost::factory<Msq33_GTHDM*>();
3946  obsThFactory["M2_GTHDM"] = boost::factory<M2_GTHDM*>();
3947  obsThFactory["m11_2_GTHDM"] = boost::factory<m11_2_GTHDM*>();
3948  obsThFactory["m22_2_GTHDM"] = boost::factory<m22_2_GTHDM*>();
3949  obsThFactory["Rem12_2_GTHDM"] = boost::factory<Rem12_2_GTHDM*>();
3950  obsThFactory["Imm12_2_GTHDM"] = boost::factory<Imm12_2_GTHDM*>();
3951  obsThFactory["lambda1_GTHDM"] = boost::factory<lambda1_GTHDM*>();
3952  obsThFactory["lambda2_GTHDM"] = boost::factory<lambda2_GTHDM*>();
3953  obsThFactory["lambda3_GTHDM"] = boost::factory<lambda3_GTHDM*>();
3954  obsThFactory["lambda4_GTHDM"] = boost::factory<lambda4_GTHDM*>();
3955  obsThFactory["v1_GTHDM"] = boost::factory<v1_GTHDM*>();
3956  obsThFactory["v2_GTHDM"] = boost::factory<v2_GTHDM*>();
3957  obsThFactory["tanbeta"] = boost::factory<tanbeta_GTHDM*>();
3958 
3959  obsThFactory["lambda1H_GTHDM"] = boost::factory<lambda1H_GTHDM*>();
3960  obsThFactory["lambda2H_GTHDM"] = boost::factory<lambda2H_GTHDM*>();
3961  obsThFactory["lambda3H_GTHDM"] = boost::factory<lambda3H_GTHDM*>();
3962  obsThFactory["lambda4H_GTHDM"] = boost::factory<lambda4H_GTHDM*>();
3963  obsThFactory["Relambda5H_GTHDM"] = boost::factory<Relambda5H_GTHDM*>();
3964  obsThFactory["Imlambda5H_GTHDM"] = boost::factory<Imlambda5H_GTHDM*>();
3965  obsThFactory["Relambda6H_GTHDM"] = boost::factory<Relambda6H_GTHDM*>();
3966  obsThFactory["Imlambda6H_GTHDM"] = boost::factory<Imlambda6H_GTHDM*>();
3967  obsThFactory["Relambda7H_GTHDM"] = boost::factory<Relambda7H_GTHDM*>();
3968  obsThFactory["Imlambda7H_GTHDM"] = boost::factory<Imlambda7H_GTHDM*>();
3969 
3970 
3971  obsThFactory["R11"]= boost::factory<R11_GTHDM*>();
3972  obsThFactory["R12"]= boost::factory<R12_GTHDM*>();
3973  obsThFactory["R13"]= boost::factory<R13_GTHDM*>();
3974  obsThFactory["R21"]= boost::factory<R21_GTHDM*>();
3975  obsThFactory["R22"]= boost::factory<R22_GTHDM*>();
3976  obsThFactory["R23"]= boost::factory<R23_GTHDM*>();
3977  obsThFactory["R31"]= boost::factory<R31_GTHDM*>();
3978  obsThFactory["R32"]= boost::factory<R32_GTHDM*>();
3979  obsThFactory["R33"]= boost::factory<R33_GTHDM*>();
3980 
3981  obsThFactory["cosalpha1"]= boost::factory<cosalpha1_GTHDM*>();
3982 
3983  obsThFactory["Q_stGTHDM"]= boost::factory<Q_stGTHDM*>();
3984  obsThFactory["DeltaQ_GTHDM"]= boost::factory<DeltaQ_GTHDM*>();
3985  obsThFactory["g1atQGTHDM"]= boost::factory<g1atQGTHDM*>();
3986  obsThFactory["g2atQGTHDM"]= boost::factory<g2atQGTHDM*>();
3987  obsThFactory["g3atQGTHDM"]= boost::factory<g3atQGTHDM*>();
3988  obsThFactory["etaU1atQGTHDM"]= boost::factory<etaU1atQGTHDM*>();
3989  obsThFactory["etaU2atQGTHDM"]= boost::factory<etaU2atQGTHDM*>();
3990  obsThFactory["etaD1atQGTHDM"]= boost::factory<etaD1atQGTHDM*>();
3991  obsThFactory["etaD2atQGTHDM"]= boost::factory<etaD2atQGTHDM*>();
3992  obsThFactory["etaL1atQGTHDM"]= boost::factory<etaL1atQGTHDM*>();
3993  obsThFactory["etaL2atQGTHDM"]= boost::factory<etaL2atQGTHDM*>();
3994  obsThFactory["lambda1atQGTHDM"]= boost::factory<lambda1atQGTHDM*>();
3995  obsThFactory["lambda2atQGTHDM"]= boost::factory<lambda2atQGTHDM*>();
3996  obsThFactory["lambda3atQGTHDM"]= boost::factory<lambda3atQGTHDM*>();
3997  obsThFactory["lambda4atQGTHDM"]= boost::factory<lambda4atQGTHDM*>();
3998  obsThFactory["Relambda5atQGTHDM"]= boost::factory<Relambda5atQGTHDM*>();
3999  obsThFactory["Relambda6atQGTHDM"]= boost::factory<Relambda6atQGTHDM*>();
4000  obsThFactory["Relambda7atQGTHDM"]= boost::factory<Relambda7atQGTHDM*>();
4001 
4002  obsThFactory["unitarity1_GTHDM"] = boost::factory<unitarity1_GTHDM*>();
4003  obsThFactory["unitarity2_GTHDM"] = boost::factory<unitarity2_GTHDM*>();
4004  obsThFactory["unitarity3_GTHDM"] = boost::factory<unitarity3_GTHDM*>();
4005  obsThFactory["unitarity4_GTHDM"] = boost::factory<unitarity4_GTHDM*>();
4006  obsThFactory["unitarity5_GTHDM"] = boost::factory<unitarity5_GTHDM*>();
4007  obsThFactory["unitarity6_GTHDM"] = boost::factory<unitarity6_GTHDM*>();
4008  obsThFactory["unitarity7_GTHDM"] = boost::factory<unitarity7_GTHDM*>();
4009  obsThFactory["unitarity8_GTHDM"] = boost::factory<unitarity8_GTHDM*>();
4010  obsThFactory["unitarity9_GTHDM"] = boost::factory<unitarity9_GTHDM*>();
4011  obsThFactory["unitarity10_GTHDM"] = boost::factory<unitarity10_GTHDM*>();
4012  obsThFactory["unitarity11_GTHDM"] = boost::factory<unitarity11_GTHDM*>();
4013  obsThFactory["unitarity12_GTHDM"] = boost::factory<unitarity12_GTHDM*>();
4014 
4015  obsThFactory["stability1_GTHDM"] = boost::factory<stability1_GTHDM*>();
4016  obsThFactory["stability2_GTHDM"] = boost::factory<stability2_GTHDM*>();
4017  obsThFactory["stability3_GTHDM"] = boost::factory<stability3_GTHDM*>();
4018  obsThFactory["stability4_GTHDM"] = boost::factory<stability4_GTHDM*>();
4019 
4020  obsThFactory["EffectivePotMin1_GTHDM"] = boost::factory<EffectivePotMin1_GTHDM*>();
4021  obsThFactory["EffectivePotMin2_GTHDM"] = boost::factory<EffectivePotMin2_GTHDM*>();
4022 
4023 
4024  obsThFactory["DeltaS_GTHDM"] = boost::factory<GTHDMDeltaS*>();
4025  obsThFactory["DeltaT_GTHDM"] = boost::factory<GTHDMDeltaT*>();
4026  obsThFactory["DeltaU_GTHDM"] = boost::factory<GTHDMDeltaU*>();
4027 
4028  obsThFactory["Rb0_GTHDM"] = boost::factory<Rb0GTHDM*>();
4029 
4030  obsThFactory["GTHDMgminus2_mu"] = boost::factory<GeneralTHDMgminus2_mu*>();
4031 
4032  obsThFactory["GTHDM_mu_ggF_tth_htobb8"] = boost::factory<GTHDM_ggF_tth_htobb8*>();
4033  obsThFactory["GTHDM_mu_ggF_tth_htoWW8"] = boost::factory<GTHDM_ggF_tth_htoWW8*>();
4034  obsThFactory["GTHDM_mu_ggF_tth_htotautau8"] = boost::factory<GTHDM_ggF_tth_htotautau8*>();
4035  obsThFactory["GTHDM_mu_ggF_tth_htoZZ8"] = boost::factory<GTHDM_ggF_tth_htoZZ8*>();
4036  obsThFactory["GTHDM_mu_ggF_tth_htogaga8"] = boost::factory<GTHDM_ggF_tth_htogaga8*>();
4037  obsThFactory["GTHDM_mu_ggF_tth_htobb13"] = boost::factory<GTHDM_ggF_tth_htobb13*>();
4038  obsThFactory["GTHDM_mu_ggF_tth_htoWW13"] = boost::factory<GTHDM_ggF_tth_htoWW13*>();
4039  obsThFactory["GTHDM_mu_ggF_tth_htotautau13"] = boost::factory<GTHDM_ggF_tth_htotautau13*>();
4040  obsThFactory["GTHDM_mu_ggF_tth_htoZZ13"] = boost::factory<GTHDM_ggF_tth_htoZZ13*>();
4041  obsThFactory["GTHDM_mu_ggF_tth_htogaga13"] = boost::factory<GTHDM_ggF_tth_htogaga13*>();
4042  obsThFactory["GTHDM_mu_VBF_Vh_htobb"] = boost::factory<GTHDM_VBF_Vh_htobb*>();
4043  obsThFactory["GTHDM_mu_VBF_Vh_htoWW"] = boost::factory<GTHDM_VBF_Vh_htoWW*>();
4044  obsThFactory["GTHDM_mu_VBF_Vh_htotautau"] = boost::factory<GTHDM_VBF_Vh_htotautau*>();
4045  obsThFactory["GTHDM_mu_VBF_Vh_htoZZ"] = boost::factory<GTHDM_VBF_Vh_htoZZ*>();
4046  obsThFactory["GTHDM_mu_VBF_Vh_htogaga"] = boost::factory<GTHDM_VBF_Vh_htogaga*>();
4047  obsThFactory["GTHDM_mu_VBF_Vh_htogg"] = boost::factory<GTHDM_VBF_Vh_htogg*>();
4048  obsThFactory["GTHDM_mu_VBF_Vh_htocc"] = boost::factory<GTHDM_VBF_Vh_htocc*>();
4049  obsThFactory["GTHDM_mu_ggF_htobb"] = boost::factory<GTHDM_ggF_htobb*>();
4050  obsThFactory["GTHDM_mu_ggF_htoWW"] = boost::factory<GTHDM_ggF_htoWW*>();
4051  obsThFactory["GTHDM_mu_ggF_htotautau"] = boost::factory<GTHDM_ggF_htotautau*>();
4052  obsThFactory["GTHDM_mu_ggF_htoZZ"] = boost::factory<GTHDM_ggF_htoZZ*>();
4053  obsThFactory["GTHDM_mu_ggF_htogaga"] = boost::factory<GTHDM_ggF_htogaga*>();
4054  obsThFactory["GTHDM_mu_tth_htobb"] = boost::factory<GTHDM_tth_htobb*>();
4055  obsThFactory["GTHDM_mu_tth_htoWW"] = boost::factory<GTHDM_tth_htoWW*>();
4056  obsThFactory["GTHDM_mu_tth_htotautau"] = boost::factory<GTHDM_tth_htotautau*>();
4057  obsThFactory["GTHDM_mu_tth_htoZZ"] = boost::factory<GTHDM_tth_htoZZ*>();
4058  obsThFactory["GTHDM_mu_tth_htogaga"] = boost::factory<GTHDM_tth_htogaga*>();
4059  obsThFactory["GTHDM_mu_htobb"] = boost::factory<GTHDM_mu_htobb*>();
4060  obsThFactory["GTHDM_mu_htoWW"] = boost::factory<GTHDM_mu_htoWW*>();
4061  obsThFactory["GTHDM_mu_htotautau"] = boost::factory<GTHDM_mu_htotautau*>();
4062  obsThFactory["GTHDM_mu_htoZga"] = boost::factory<GTHDM_mu_htoZga*>();
4063 
4064  obsThFactory["yu1R_GTHDM"] = boost::factory<yu1R_GTHDM*>();
4065  obsThFactory["yd1R_GTHDM"] = boost::factory<yd1R_GTHDM*>();
4066  obsThFactory["yl1R_GTHDM"] = boost::factory<yl1R_GTHDM*>();
4067 
4068  obsThFactory["yu2R_GTHDM"] = boost::factory<yu2R_GTHDM*>();
4069  obsThFactory["yd2R_GTHDM"] = boost::factory<yd2R_GTHDM*>();
4070  obsThFactory["yl2R_GTHDM"] = boost::factory<yl2R_GTHDM*>();
4071 
4072  obsThFactory["yu3R_GTHDM"] = boost::factory<yu3R_GTHDM*>();
4073  obsThFactory["yd3R_GTHDM"] = boost::factory<yd3R_GTHDM*>();
4074  obsThFactory["yl3R_GTHDM"] = boost::factory<yl3R_GTHDM*>();
4075 
4076  obsThFactory["suR_GTHDM"] = boost::factory<suR_GTHDM*>();
4077  obsThFactory["sdR_GTHDM"] = boost::factory<sdR_GTHDM*>();
4078  obsThFactory["slR_GTHDM"] = boost::factory<slR_GTHDM*>();
4079 
4080 
4081  obsThFactory["rh_gg_GTHDM"] = boost::factory<rh_gg_GTHDM*>();
4082  obsThFactory["rh_gaga_GTHDM"] = boost::factory<rh_gaga_GTHDM*>();
4083  obsThFactory["rh_Zga_GTHDM"] = boost::factory<rh_Zga_GTHDM*>();
4084 
4085 
4086 
4087  /* obsThFactory["Gamma_HH_THDM"] = boost::factory<Gamma_HH_THDM*>();
4088  obsThFactory["rHH_gg_THDM"] = boost::factory<rHH_gg_THDM*>();
4089  obsThFactory["BR_HH_hh_THDM"] = boost::factory<BR_HH_hh_THDM*>();
4090  obsThFactory["BR_HH_AA_THDM"] = boost::factory<BR_HH_AA_THDM*>();
4091  obsThFactory["BR_HH_HpHm_THDM"] = boost::factory<BR_HH_HpHm_THDM*>();
4092  obsThFactory["BR_HH_AZ_THDM"] = boost::factory<BR_HH_AZ_THDM*>();
4093  obsThFactory["BR_HH_HpW_THDM"] = boost::factory<BR_HH_HpW_THDM*>(); */
4094 
4095  obsThFactory["Hobs_tt_phi2_tt_ATLAS13"] = boost::factory<Hobs_tt_phi2_tt_ATLAS13*>();
4096  obsThFactory["Hobs_bb_phi2_tt_ATLAS13"] = boost::factory<Hobs_bb_phi2_tt_ATLAS13*>();
4097  obsThFactory["Hobs_bb_phi2_bb_CMS8"] = boost::factory<Hobs_bb_phi2_bb_CMS8*>();
4098  obsThFactory["Hobs_gg_phi2_bb_CMS8"] = boost::factory<Hobs_gg_phi2_bb_CMS8*>();
4099  obsThFactory["Hobs_pp_phi2_bb_CMS13"] = boost::factory<Hobs_pp_phi2_bb_CMS13*>();
4100  obsThFactory["Hobs_bb_phi2_bb_CMS13"] = boost::factory<Hobs_bb_phi2_bb_CMS13*>();
4101  obsThFactory["Hobs_gg_phi2_tautau_ATLAS8"] = boost::factory<Hobs_gg_phi2_tautau_ATLAS8*>();
4102  obsThFactory["Hobs_bb_phi2_tautau_ATLAS8"] = boost::factory<Hobs_bb_phi2_tautau_ATLAS8*>();
4103  obsThFactory["Hobs_gg_phi2_tautau_CMS8"] = boost::factory<Hobs_gg_phi2_tautau_CMS8*>();
4104  obsThFactory["Hobs_bb_phi2_tautau_CMS8"] = boost::factory<Hobs_bb_phi2_tautau_CMS8*>();
4105  obsThFactory["Hobs_gg_phi2_tautau_ATLAS13"] = boost::factory<Hobs_gg_phi2_tautau_ATLAS13*>();
4106  obsThFactory["Hobs_bb_phi2_tautau_ATLAS13"] = boost::factory<Hobs_bb_phi2_tautau_ATLAS13*>();
4107  obsThFactory["Hobs_gg_phi2_tautau_CMS13"] = boost::factory<Hobs_gg_phi2_tautau_CMS13*>();
4108  obsThFactory["Hobs_bb_phi2_tautau_CMS13"] = boost::factory<Hobs_bb_phi2_tautau_CMS13*>();
4109  obsThFactory["Hobs_gg_phi2_gaga_ATLAS8"] = boost::factory<Hobs_gg_phi2_gaga_ATLAS8*>();
4110  obsThFactory["Hobs_pp_phi2_gaga_ATLAS13"] = boost::factory<Hobs_pp_phi2_gaga_ATLAS13*>();
4111  obsThFactory["Hobs_gg_phi2_gaga_CMS13"] = boost::factory<Hobs_gg_phi2_gaga_CMS13*>();
4112  obsThFactory["Hobs_pp_phi2_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_phi2_Zga_llga_ATLAS8*>();
4113  obsThFactory["Hobs_pp_phi2_Zga_llga_CMS8"] = boost::factory<Hobs_pp_phi2_Zga_llga_CMS8*>();
4114  obsThFactory["Hobs_gg_phi2_Zga_llga_ATLAS13"] = boost::factory<Hobs_gg_phi2_Zga_llga_ATLAS13*>();
4115  obsThFactory["Hobs_gg_phi2_Zga_qqga_ATLAS13"] = boost::factory<Hobs_gg_phi2_Zga_qqga_ATLAS13*>();
4116  obsThFactory["Hobs_gg_phi2_Zga_CMS13"] = boost::factory<Hobs_gg_phi2_Zga_CMS13*>();
4117  obsThFactory["Hobs_gg_phi2_ZZ_ATLAS8"] = boost::factory<Hobs_gg_phi2_ZZ_ATLAS8*>();
4118  obsThFactory["Hobs_VV_phi2_ZZ_ATLAS8"] = boost::factory<Hobs_VV_phi2_ZZ_ATLAS8*>();
4119  obsThFactory["Hobs_gg_phi2_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_gg_phi2_ZZ_llllnunu_ATLAS13*>();
4120  obsThFactory["Hobs_VV_phi2_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_VV_phi2_ZZ_llllnunu_ATLAS13*>();
4121  obsThFactory["Hobs_gg_phi2_ZZ_llnunuqq_ATLAS13"] = boost::factory<Hobs_gg_phi2_ZZ_llnunuqq_ATLAS13*>();
4122  obsThFactory["Hobs_VV_phi2_ZZ_llnunuqq_ATLAS13"] = boost::factory<Hobs_VV_phi2_ZZ_llnunuqq_ATLAS13*>();
4123  obsThFactory["Hobs_pp_phi2_ZZ_llqqnunull_CMS13"] = boost::factory<Hobs_pp_phi2_ZZ_llqqnunull_CMS13*>();
4124  obsThFactory["Hobs_pp_phi2_ZZ_qqnunu_CMS13"] = boost::factory<Hobs_pp_phi2_ZZ_qqnunu_CMS13*>();
4125  obsThFactory["Hobs_gg_phi2_WW_ATLAS8"] = boost::factory<Hobs_gg_phi2_WW_ATLAS8*>();
4126  obsThFactory["Hobs_VV_phi2_WW_ATLAS8"] = boost::factory<Hobs_VV_phi2_WW_ATLAS8*>();
4127  obsThFactory["Hobs_gg_phi2_WW_enumunu_ATLAS13"] = boost::factory<Hobs_gg_phi2_WW_enumunu_ATLAS13*>();
4128  obsThFactory["Hobs_VV_phi2_WW_enumunu_ATLAS13"] = boost::factory<Hobs_VV_phi2_WW_enumunu_ATLAS13*>();
4129  obsThFactory["Hobs_ggVV_phi2_WW_lnulnu_CMS13"] = boost::factory<Hobs_ggVV_phi2_WW_lnulnu_CMS13*>();
4130  obsThFactory["Hobs_gg_phi2_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_gg_phi2_WW_lnuqq_ATLAS13*>();
4131  obsThFactory["Hobs_VV_phi2_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_VV_phi2_WW_lnuqq_ATLAS13*>();
4132  obsThFactory["Hobs_pp_phi2_WW_lnuqq_CMS13"] = boost::factory<Hobs_pp_phi2_WW_lnuqq_CMS13*>();
4133  obsThFactory["Hobs_mu_pp_phi2_VV_CMS8"] = boost::factory<Hobs_mu_pp_phi2_VV_CMS8*>();
4134  obsThFactory["Hobs_pp_phi2_VV_qqqq_ATLAS13"] = boost::factory<Hobs_pp_phi2_VV_qqqq_ATLAS13*>();
4135  obsThFactory["Hobs_gg_phi2_phi1phi1_ATLAS8"] = boost::factory<Hobs_gg_phi2_phi1phi1_ATLAS8*>();
4136  obsThFactory["Hobs_pp_phi2_phi1phi1_bbbb_CMS8"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbbb_CMS8*>();
4137  obsThFactory["Hobs_pp_phi2_phi1phi1_bbgaga_CMS8"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbgaga_CMS8*>();
4138  obsThFactory["Hobs_gg_phi2_phi1phi1_bbtautau_CMS8"] = boost::factory<Hobs_gg_phi2_phi1phi1_bbtautau_CMS8*>();
4139  obsThFactory["Hobs_pp_phi2_phi1phi1_bbtautau_CMS8"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbtautau_CMS8*>();
4140  obsThFactory["Hobs_pp_phi2_phi1phi1_bbbb_ATLAS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbbb_ATLAS13*>();
4141  obsThFactory["Hobs_pp_phi2_phi1phi1_bbbb_1_CMS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbbb_1_CMS13*>();
4142  obsThFactory["Hobs_pp_phi2_phi1phi1_bbbb_2_CMS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbbb_2_CMS13*>();
4143  obsThFactory["Hobs_pp_phi2_phi1phi1_bbgaga_ATLAS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbgaga_ATLAS13*>();
4144  obsThFactory["Hobs_pp_phi2_phi1phi1_bbgaga_CMS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbgaga_CMS13*>();
4145  obsThFactory["Hobs_pp_phi2_phi1phi1_bbtautau_ATLAS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbtautau_ATLAS13*>();
4146  obsThFactory["Hobs_pp_phi2_phi1phi1_bbtautau_1_CMS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbtautau_1_CMS13*>();
4147  obsThFactory["Hobs_pp_phi2_phi1phi1_bbtautau_2_CMS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbtautau_2_CMS13*>();
4148  obsThFactory["Hobs_pp_phi2_phi1phi1_bbVV_CMS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbVV_CMS13*>();
4149  obsThFactory["Hobs_pp_phi2_phi1phi1_bbWW_ATLAS13"] = boost::factory<Hobs_pp_phi2_phi1phi1_bbWW_ATLAS13*>();
4150  obsThFactory["Hobs_gg_phi2_phi1phi1_gagaWW_ATLAS13"] = boost::factory<Hobs_gg_phi2_phi1phi1_gagaWW_ATLAS13*>();
4151  obsThFactory["Hobs_gg_phi2_phi1Z_bbZ_ATLAS8"] = boost::factory<Hobs_gg_phi2_phi1Z_bbZ_ATLAS8*>();
4152  obsThFactory["Hobs_gg_phi2_phi1Z_bbll_CMS8"] = boost::factory<Hobs_gg_phi2_phi1Z_bbll_CMS8*>();
4153  obsThFactory["Hobs_gg_phi2_phi1Z_tautauZ_ATLAS8"] = boost::factory<Hobs_gg_phi2_phi1Z_tautauZ_ATLAS8*>();
4154  obsThFactory["Hobs_gg_phi2_phi1Z_tautaull_CMS8"] = boost::factory<Hobs_gg_phi2_phi1Z_tautaull_CMS8*>();
4155  obsThFactory["Hobs_gg_phi2_phi1Z_bbZ_ATLAS13"] = boost::factory<Hobs_gg_phi2_phi1Z_bbZ_ATLAS13*>();
4156  obsThFactory["Hobs_gg_phi2_phi1Z_bbZ_1_CMS13"] = boost::factory<Hobs_gg_phi2_phi1Z_bbZ_1_CMS13*>();
4157  obsThFactory["Hobs_gg_phi2_phi1Z_bbZ_2_CMS13"] = boost::factory<Hobs_gg_phi2_phi1Z_bbZ_2_CMS13*>();
4158  obsThFactory["Hobs_bb_phi2_phi1Z_bbZ_ATLAS13"] = boost::factory<Hobs_bb_phi2_phi1Z_bbZ_ATLAS13*>();
4159  obsThFactory["Hobs_bb_phi2_phi1Z_bbZ_1_CMS13"] = boost::factory<Hobs_bb_phi2_phi1Z_bbZ_1_CMS13*>();
4160  obsThFactory["Hobs_bb_phi2_phi1Z_bbZ_2_CMS13"] = boost::factory<Hobs_bb_phi2_phi1Z_bbZ_2_CMS13*>();
4161 
4162  obsThFactory["Hobs_tt_phi3_tt_ATLAS13"] = boost::factory<Hobs_tt_phi3_tt_ATLAS13*>();
4163  obsThFactory["Hobs_bb_phi3_tt_ATLAS13"] = boost::factory<Hobs_bb_phi3_tt_ATLAS13*>();
4164  obsThFactory["Hobs_bb_phi3_bb_CMS8"] = boost::factory<Hobs_bb_phi3_bb_CMS8*>();
4165  obsThFactory["Hobs_gg_phi3_bb_CMS8"] = boost::factory<Hobs_gg_phi3_bb_CMS8*>();
4166  obsThFactory["Hobs_pp_phi3_bb_CMS13"] = boost::factory<Hobs_pp_phi3_bb_CMS13*>();
4167  obsThFactory["Hobs_bb_phi3_bb_CMS13"] = boost::factory<Hobs_bb_phi3_bb_CMS13*>();
4168  obsThFactory["Hobs_gg_phi3_tautau_ATLAS8"] = boost::factory<Hobs_gg_phi3_tautau_ATLAS8*>();
4169  obsThFactory["Hobs_bb_phi3_tautau_ATLAS8"] = boost::factory<Hobs_bb_phi3_tautau_ATLAS8*>();
4170  obsThFactory["Hobs_gg_phi3_tautau_CMS8"] = boost::factory<Hobs_gg_phi3_tautau_CMS8*>();
4171  obsThFactory["Hobs_bb_phi3_tautau_CMS8"] = boost::factory<Hobs_bb_phi3_tautau_CMS8*>();
4172  obsThFactory["Hobs_gg_phi3_tautau_ATLAS13"] = boost::factory<Hobs_gg_phi3_tautau_ATLAS13*>();
4173  obsThFactory["Hobs_bb_phi3_tautau_ATLAS13"] = boost::factory<Hobs_bb_phi3_tautau_ATLAS13*>();
4174  obsThFactory["Hobs_gg_phi3_tautau_CMS13"] = boost::factory<Hobs_gg_phi3_tautau_CMS13*>();
4175  obsThFactory["Hobs_bb_phi3_tautau_CMS13"] = boost::factory<Hobs_bb_phi3_tautau_CMS13*>();
4176  obsThFactory["Hobs_gg_phi3_gaga_ATLAS8"] = boost::factory<Hobs_gg_phi3_gaga_ATLAS8*>();
4177  obsThFactory["Hobs_pp_phi3_gaga_ATLAS13"] = boost::factory<Hobs_pp_phi3_gaga_ATLAS13*>();
4178  obsThFactory["Hobs_gg_phi3_gaga_CMS13"] = boost::factory<Hobs_gg_phi3_gaga_CMS13*>();
4179  obsThFactory["Hobs_pp_phi3_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_phi3_Zga_llga_ATLAS8*>();
4180  obsThFactory["Hobs_pp_phi3_Zga_llga_CMS8"] = boost::factory<Hobs_pp_phi3_Zga_llga_CMS8*>();
4181  obsThFactory["Hobs_gg_phi3_Zga_llga_ATLAS13"] = boost::factory<Hobs_gg_phi3_Zga_llga_ATLAS13*>();
4182  obsThFactory["Hobs_gg_phi3_Zga_qqga_ATLAS13"] = boost::factory<Hobs_gg_phi3_Zga_qqga_ATLAS13*>();
4183  obsThFactory["Hobs_gg_phi3_Zga_CMS13"] = boost::factory<Hobs_gg_phi3_Zga_CMS13*>();
4184  obsThFactory["Hobs_gg_phi3_ZZ_ATLAS8"] = boost::factory<Hobs_gg_phi3_ZZ_ATLAS8*>();
4185  obsThFactory["Hobs_VV_phi3_ZZ_ATLAS8"] = boost::factory<Hobs_VV_phi3_ZZ_ATLAS8*>();
4186  obsThFactory["Hobs_gg_phi3_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_gg_phi3_ZZ_llllnunu_ATLAS13*>();
4187  obsThFactory["Hobs_VV_phi3_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_VV_phi3_ZZ_llllnunu_ATLAS13*>();
4188  obsThFactory["Hobs_gg_phi3_ZZ_llnunuqq_ATLAS13"] = boost::factory<Hobs_gg_phi3_ZZ_llnunuqq_ATLAS13*>();
4189  obsThFactory["Hobs_VV_phi3_ZZ_llnunuqq_ATLAS13"] = boost::factory<Hobs_VV_phi3_ZZ_llnunuqq_ATLAS13*>();
4190  obsThFactory["Hobs_pp_phi3_ZZ_llqqnunull_CMS13"] = boost::factory<Hobs_pp_phi3_ZZ_llqqnunull_CMS13*>();
4191  obsThFactory["Hobs_pp_phi3_ZZ_qqnunu_CMS13"] = boost::factory<Hobs_pp_phi3_ZZ_qqnunu_CMS13*>();
4192  obsThFactory["Hobs_gg_phi3_WW_ATLAS8"] = boost::factory<Hobs_gg_phi3_WW_ATLAS8*>();
4193  obsThFactory["Hobs_VV_phi3_WW_ATLAS8"] = boost::factory<Hobs_VV_phi3_WW_ATLAS8*>();
4194  obsThFactory["Hobs_gg_phi3_WW_enumunu_ATLAS13"] = boost::factory<Hobs_gg_phi3_WW_enumunu_ATLAS13*>();
4195  obsThFactory["Hobs_VV_phi3_WW_enumunu_ATLAS13"] = boost::factory<Hobs_VV_phi3_WW_enumunu_ATLAS13*>();
4196  obsThFactory["Hobs_ggVV_phi3_WW_lnulnu_CMS13"] = boost::factory<Hobs_ggVV_phi3_WW_lnulnu_CMS13*>();
4197  obsThFactory["Hobs_gg_phi3_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_gg_phi3_WW_lnuqq_ATLAS13*>();
4198  obsThFactory["Hobs_VV_phi3_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_VV_phi3_WW_lnuqq_ATLAS13*>();
4199  obsThFactory["Hobs_pp_phi3_WW_lnuqq_CMS13"] = boost::factory<Hobs_pp_phi3_WW_lnuqq_CMS13*>();
4200  obsThFactory["Hobs_mu_pp_phi3_VV_CMS8"] = boost::factory<Hobs_mu_pp_phi3_VV_CMS8*>();
4201  obsThFactory["Hobs_pp_phi3_VV_qqqq_ATLAS13"] = boost::factory<Hobs_pp_phi3_VV_qqqq_ATLAS13*>();
4202  obsThFactory["Hobs_gg_phi3_phi1phi1_ATLAS8"] = boost::factory<Hobs_gg_phi3_phi1phi1_ATLAS8*>();
4203  obsThFactory["Hobs_pp_phi3_phi1phi1_bbbb_CMS8"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbbb_CMS8*>();
4204  obsThFactory["Hobs_pp_phi3_phi1phi1_bbgaga_CMS8"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbgaga_CMS8*>();
4205  obsThFactory["Hobs_gg_phi3_phi1phi1_bbtautau_CMS8"] = boost::factory<Hobs_gg_phi3_phi1phi1_bbtautau_CMS8*>();
4206  obsThFactory["Hobs_pp_phi3_phi1phi1_bbtautau_CMS8"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbtautau_CMS8*>();
4207  obsThFactory["Hobs_pp_phi3_phi1phi1_bbbb_ATLAS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbbb_ATLAS13*>();
4208  obsThFactory["Hobs_pp_phi3_phi1phi1_bbbb_1_CMS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbbb_1_CMS13*>();
4209  obsThFactory["Hobs_pp_phi3_phi1phi1_bbbb_2_CMS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbbb_2_CMS13*>();
4210  obsThFactory["Hobs_pp_phi3_phi1phi1_bbgaga_ATLAS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbgaga_ATLAS13*>();
4211  obsThFactory["Hobs_pp_phi3_phi1phi1_bbgaga_CMS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbgaga_CMS13*>();
4212  obsThFactory["Hobs_pp_phi3_phi1phi1_bbtautau_ATLAS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbtautau_ATLAS13*>();
4213  obsThFactory["Hobs_pp_phi3_phi1phi1_bbtautau_1_CMS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbtautau_1_CMS13*>();
4214  obsThFactory["Hobs_pp_phi3_phi1phi1_bbtautau_2_CMS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbtautau_2_CMS13*>();
4215  obsThFactory["Hobs_pp_phi3_phi1phi1_bbVV_CMS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbVV_CMS13*>();
4216  obsThFactory["Hobs_pp_phi3_phi1phi1_bbWW_ATLAS13"] = boost::factory<Hobs_pp_phi3_phi1phi1_bbWW_ATLAS13*>();
4217  obsThFactory["Hobs_gg_phi3_phi1phi1_gagaWW_ATLAS13"] = boost::factory<Hobs_gg_phi3_phi1phi1_gagaWW_ATLAS13*>();
4218 
4219 
4220 
4221  obsThFactory["Hobs_gg_phi3_phi1Z_bbZ_ATLAS8"] = boost::factory<Hobs_gg_phi3_phi1Z_bbZ_ATLAS8*>();
4222  obsThFactory["Hobs_gg_phi3_phi1Z_bbll_CMS8"] = boost::factory<Hobs_gg_phi3_phi1Z_bbll_CMS8*>();
4223  obsThFactory["Hobs_gg_phi3_phi1Z_tautauZ_ATLAS8"] = boost::factory<Hobs_gg_phi3_phi1Z_tautauZ_ATLAS8*>();
4224  obsThFactory["Hobs_gg_phi3_phi1Z_tautaull_CMS8"] = boost::factory<Hobs_gg_phi3_phi1Z_tautaull_CMS8*>();
4225  obsThFactory["Hobs_gg_phi3_phi1Z_bbZ_ATLAS13"] = boost::factory<Hobs_gg_phi3_phi1Z_bbZ_ATLAS13*>();
4226  obsThFactory["Hobs_gg_phi3_phi1Z_bbZ_1_CMS13"] = boost::factory<Hobs_gg_phi3_phi1Z_bbZ_1_CMS13*>();
4227  obsThFactory["Hobs_gg_phi3_phi1Z_bbZ_2_CMS13"] = boost::factory<Hobs_gg_phi3_phi1Z_bbZ_2_CMS13*>();
4228  obsThFactory["Hobs_bb_phi3_phi1Z_bbZ_ATLAS13"] = boost::factory<Hobs_bb_phi3_phi1Z_bbZ_ATLAS13*>();
4229  obsThFactory["Hobs_bb_phi3_phi1Z_bbZ_1_CMS13"] = boost::factory<Hobs_bb_phi3_phi1Z_bbZ_1_CMS13*>();
4230  obsThFactory["Hobs_bb_phi3_phi1Z_bbZ_2_CMS13"] = boost::factory<Hobs_bb_phi3_phi1Z_bbZ_2_CMS13*>();
4231 
4232  obsThFactory["Hobs_pp_phi3_phi2Z_bbll_1_CMS8"] = boost::factory<Hobs_pp_phi3_phi2Z_bbll_1_CMS8*>();
4233  obsThFactory["Hobs_pp_phi2_phi3Z_bbll_1_CMS8"] = boost::factory<Hobs_pp_phi2_phi3Z_bbll_1_CMS8*>();
4234  obsThFactory["Hobs_pp_phi3_phi2Z_bbll_2_CMS8"] = boost::factory<Hobs_pp_phi3_phi2Z_bbll_2_CMS8*>();
4235  obsThFactory["Hobs_pp_phi2_phi3Z_bbll_2_CMS8"] = boost::factory<Hobs_pp_phi2_phi3Z_bbll_2_CMS8*>();
4236  obsThFactory["Hobs_pp_phi3_phi2Z_tautaull_1_CMS8"] = boost::factory<Hobs_pp_phi3_phi2Z_tautaull_1_CMS8*>();
4237  obsThFactory["Hobs_pp_phi2_phi3Z_tautaull_1_CMS8"] = boost::factory<Hobs_pp_phi2_phi3Z_tautaull_1_CMS8*>();
4238  obsThFactory["Hobs_pp_phi3_phi2Z_tautaull_2_CMS8"] = boost::factory<Hobs_pp_phi3_phi2Z_tautaull_2_CMS8*>();
4239  obsThFactory["Hobs_pp_phi2_phi3Z_tautaull_2_CMS8"] = boost::factory<Hobs_pp_phi2_phi3Z_tautaull_2_CMS8*>();
4240  obsThFactory["Hobs_gg_phi3_phi2Z_bbZ_ATLAS13"] = boost::factory<Hobs_gg_phi3_phi2Z_bbZ_ATLAS13*>();
4241  obsThFactory["Hobs_gg_phi2_phi3Z_bbZ_ATLAS13"] = boost::factory<Hobs_gg_phi2_phi3Z_bbZ_ATLAS13*>();
4242  obsThFactory["Hobs_bb_phi3_phi2Z_bbZ_ATLAS13"] = boost::factory<Hobs_bb_phi3_phi2Z_bbZ_ATLAS13*>();
4243  obsThFactory["Hobs_bb_phi2_phi3Z_bbZ_ATLAS13"] = boost::factory<Hobs_bb_phi2_phi3Z_bbZ_ATLAS13*>();
4244 
4245  obsThFactory["Hobs_pp_Hpm_taunu_ATLAS8"] = boost::factory<Hobs_pp_Hpm_taunu_ATLAS8_GTHDM*>();
4246  obsThFactory["Hobs_pp_Hp_taunu_CMS8"] = boost::factory<Hobs_pp_Hp_taunu_CMS8_GTHDM*>();
4247  obsThFactory["Hobs_pp_Hpm_taunu_ATLAS13"] = boost::factory<Hobs_pp_Hpm_taunu_ATLAS13_GTHDM*>();
4248  obsThFactory["Hobs_pp_Hpm_taunu_CMS13"] = boost::factory<Hobs_pp_Hpm_taunu_CMS13_GTHDM*>();
4249  obsThFactory["Hobs_pp_Hpm_tb_ATLAS8"] = boost::factory<Hobs_pp_Hpm_tb_ATLAS8_GTHDM*>();
4250  obsThFactory["Hobs_pp_Hp_tb_CMS8"] = boost::factory<Hobs_pp_Hp_tb_CMS8_GTHDM*>();
4251  obsThFactory["Hobs_pp_Hpm_tb_ATLAS13"] = boost::factory<Hobs_pp_Hpm_tb_ATLAS13*>();
4252 
4253  obsThFactory["log10_tt_phi2_tt_TH13"] = boost::factory<log10_tt_phi2_tt_TH13*>();
4254  obsThFactory["log10_tt_phi3_tt_TH13"] = boost::factory<log10_tt_phi3_tt_TH13*>();
4255  obsThFactory["log10_bb_phi2_tt_TH13"] = boost::factory<log10_bb_phi2_tt_TH13*>();
4256  obsThFactory["log10_bb_phi3_tt_TH13"] = boost::factory<log10_bb_phi3_tt_TH13*>();
4257 
4258  obsThFactory["log10_bb_phi2_bb_TH8"] = boost::factory<log10_bb_phi2_bb_TH8*>();
4259  obsThFactory["log10_bb_phi3_bb_TH8"] = boost::factory<log10_bb_phi3_bb_TH8*>();
4260  obsThFactory["log10_gg_phi2_bb_TH8"] = boost::factory<log10_gg_phi2_bb_TH8*>();
4261  obsThFactory["log10_gg_phi3_bb_TH8"] = boost::factory<log10_gg_phi3_bb_TH8*>();
4262  obsThFactory["log10_pp_phi2_bb_TH13"] = boost::factory<log10_pp_phi2_bb_TH13*>();
4263  obsThFactory["log10_pp_phi3_bb_TH13"] = boost::factory<log10_pp_phi3_bb_TH13*>();
4264  obsThFactory["log10_bb_phi2_bb_TH13"] = boost::factory<log10_bb_phi2_bb_TH13*>();
4265  obsThFactory["log10_bb_phi3_bb_TH13"] = boost::factory<log10_bb_phi3_bb_TH13*>();
4266 
4267  obsThFactory["log10_gg_phi2_tautau_TH8"] = boost::factory<log10_gg_phi2_tautau_TH8*>();
4268  obsThFactory["log10_gg_phi3_tautau_TH8"] = boost::factory<log10_gg_phi3_tautau_TH8*>();
4269  obsThFactory["log10_bb_phi2_tautau_TH8"] = boost::factory<log10_bb_phi2_tautau_TH8*>();
4270  obsThFactory["log10_bb_phi3_tautau_TH8"] = boost::factory<log10_bb_phi3_tautau_TH8*>();
4271  obsThFactory["log10_gg_phi2_tautau_TH13"] = boost::factory<log10_gg_phi2_tautau_TH13*>();
4272  obsThFactory["log10_gg_phi3_tautau_TH13"] = boost::factory<log10_gg_phi3_tautau_TH13*>();
4273  obsThFactory["log10_bb_phi2_tautau_TH13"] = boost::factory<log10_bb_phi2_tautau_TH13*>();
4274  obsThFactory["log10_bb_phi3_tautau_TH13"] = boost::factory<log10_bb_phi3_tautau_TH13*>();
4275 
4276  obsThFactory["log10_gg_phi2_gaga_TH8"] = boost::factory<log10_gg_phi2_gaga_TH8*>();
4277  obsThFactory["log10_gg_phi3_gaga_TH8"] = boost::factory<log10_gg_phi3_gaga_TH8*>();
4278  obsThFactory["log10_pp_phi2_gaga_TH13"] = boost::factory<log10_pp_phi2_gaga_TH13*>();
4279  obsThFactory["log10_pp_phi3_gaga_TH13"] = boost::factory<log10_pp_phi3_gaga_TH13*>();
4280  obsThFactory["log10_gg_phi2_gaga_TH13"] = boost::factory<log10_gg_phi2_gaga_TH13*>();
4281  obsThFactory["log10_gg_phi3_gaga_TH13"] = boost::factory<log10_gg_phi3_gaga_TH13*>();
4282 
4283 
4284  obsThFactory["log10_pp_phi2_Zga_llga_TH8"] = boost::factory<log10_pp_phi2_Zga_llga_TH8*>();
4285  obsThFactory["log10_pp_phi3_Zga_llga_TH8"] = boost::factory<log10_pp_phi3_Zga_llga_TH8*>();
4286  obsThFactory["log10_gg_phi2_Zga_TH13"] = boost::factory<log10_gg_phi2_Zga_TH13*>();
4287  obsThFactory["log10_gg_phi3_Zga_TH13"] = boost::factory<log10_gg_phi3_Zga_TH13*>();
4288 
4289  obsThFactory["log10_gg_phi2_ZZ_TH8"] = boost::factory<log10_gg_phi2_ZZ_TH8*>();
4290  obsThFactory["log10_gg_phi3_ZZ_TH8"] = boost::factory<log10_gg_phi3_ZZ_TH8*>();
4291  obsThFactory["log10_VV_phi2_ZZ_TH8"] = boost::factory<log10_VV_phi2_ZZ_TH8*>();
4292  obsThFactory["log10_VV_phi3_ZZ_TH8"] = boost::factory<log10_VV_phi3_ZZ_TH8*>();
4293  obsThFactory["log10_gg_phi2_ZZ_TH13"] = boost::factory<log10_gg_phi2_ZZ_TH13*>();
4294  obsThFactory["log10_gg_phi3_ZZ_TH13"] = boost::factory<log10_gg_phi3_ZZ_TH13*>();
4295  obsThFactory["log10_VV_phi2_ZZ_TH13"] = boost::factory<log10_VV_phi2_ZZ_TH13*>();
4296  obsThFactory["log10_VV_phi3_ZZ_TH13"] = boost::factory<log10_VV_phi3_ZZ_TH13*>();
4297  obsThFactory["log10_pp_phi2_ZZ_TH13"] = boost::factory<log10_pp_phi2_ZZ_TH13*>();
4298  obsThFactory["log10_pp_phi3_ZZ_TH13"] = boost::factory<log10_pp_phi3_ZZ_TH13*>();
4299 
4300  obsThFactory["log10_gg_phi2_WW_TH8"] = boost::factory<log10_gg_phi2_WW_TH8*>();
4301  obsThFactory["log10_gg_phi3_WW_TH8"] = boost::factory<log10_gg_phi3_WW_TH8*>();
4302  obsThFactory["log10_VV_phi2_WW_TH8"] = boost::factory<log10_VV_phi2_WW_TH8*>();
4303  obsThFactory["log10_VV_phi3_WW_TH8"] = boost::factory<log10_VV_phi3_WW_TH8*>();
4304  obsThFactory["log10_gg_phi2_WW_TH13"] = boost::factory<log10_gg_phi2_WW_TH13*>();
4305  obsThFactory["log10_gg_phi3_WW_TH13"] = boost::factory<log10_gg_phi3_WW_TH13*>();
4306  obsThFactory["log10_VV_phi2_WW_TH13"] = boost::factory<log10_VV_phi2_WW_TH13*>();
4307  obsThFactory["log10_VV_phi3_WW_TH13"] = boost::factory<log10_VV_phi3_WW_TH13*>();
4308  obsThFactory["log10_ggVV_phi2_WW_lnulnu_TH13"] = boost::factory<log10_ggVV_phi2_WW_lnulnu_TH13*>();
4309  obsThFactory["log10_ggVV_phi3_WW_lnulnu_TH13"] = boost::factory<log10_ggVV_phi3_WW_lnulnu_TH13*>();
4310  obsThFactory["log10_pp_phi2_WW_TH13"] = boost::factory<log10_pp_phi2_WW_TH13*>();
4311  obsThFactory["log10_pp_phi3_WW_TH13"] = boost::factory<log10_pp_phi3_WW_TH13*>();
4312 
4313  obsThFactory["log10_mu_pp_phi2_VV_TH8"] = boost::factory<log10_mu_pp_phi2_VV_TH8*>();
4314  obsThFactory["log10_mu_pp_phi3_VV_TH8"] = boost::factory<log10_mu_pp_phi3_VV_TH8*>();
4315  obsThFactory["log10_pp_phi2_VV_TH13"] = boost::factory<log10_pp_phi2_VV_TH13*>();
4316  obsThFactory["log10_pp_phi3_VV_TH13"] = boost::factory<log10_pp_phi3_VV_TH13*>();
4317 
4318  obsThFactory["log10_gg_phi2_phi1phi1_TH8"] = boost::factory<log10_gg_phi2_phi1phi1_TH8*>();
4319  obsThFactory["log10_gg_phi3_phi1phi1_TH8"] = boost::factory<log10_gg_phi3_phi1phi1_TH8*>();
4320  obsThFactory["log10_pp_phi2_phi1phi1_bbbb_TH8"] = boost::factory<log10_pp_phi2_phi1phi1_bbbb_TH8*>();
4321  obsThFactory["log10_pp_phi3_phi1phi1_bbbb_TH8"] = boost::factory<log10_pp_phi3_phi1phi1_bbbb_TH8*>();
4322  obsThFactory["log10_pp_phi2_phi1phi1_bbgaga_TH8"] = boost::factory<log10_pp_phi2_phi1phi1_bbgaga_TH8*>();
4323  obsThFactory["log10_pp_phi3_phi1phi1_bbgaga_TH8"] = boost::factory<log10_pp_phi3_phi1phi1_bbgaga_TH8*>();
4324  obsThFactory["log10_gg_phi2_phi1phi1_bbtautau_TH8"] = boost::factory<log10_gg_phi2_phi1phi1_bbtautau_TH8*>();
4325  obsThFactory["log10_gg_phi3_phi1phi1_bbtautau_TH8"] = boost::factory<log10_gg_phi3_phi1phi1_bbtautau_TH8*>();
4326  obsThFactory["log10_pp_phi2_phi1phi1_TH8"] = boost::factory<log10_pp_phi2_phi1phi1_TH8*>();
4327  obsThFactory["log10_pp_phi3_phi1phi1_TH8"] = boost::factory<log10_pp_phi3_phi1phi1_TH8*>();
4328  obsThFactory["log10_pp_phi2_phi1phi1_bbbb_TH13"] = boost::factory<log10_pp_phi2_phi1phi1_bbbb_TH13*>();
4329  obsThFactory["log10_pp_phi3_phi1phi1_bbbb_TH13"] = boost::factory<log10_pp_phi3_phi1phi1_bbbb_TH13*>();
4330  obsThFactory["log10_pp_phi2_phi1phi1_TH13"] = boost::factory<log10_pp_phi2_phi1phi1_TH13*>();
4331  obsThFactory["log10_pp_phi3_phi1phi1_TH13"] = boost::factory<log10_pp_phi3_phi1phi1_TH13*>();
4332  obsThFactory["log10_pp_phi2_phi1phi1_bbgaga_TH13"] = boost::factory<log10_pp_phi2_phi1phi1_bbgaga_TH13*>();
4333  obsThFactory["log10_pp_phi3_phi1phi1_bbgaga_TH13"] = boost::factory<log10_pp_phi3_phi1phi1_bbgaga_TH13*>();
4334  obsThFactory["log10_pp_phi2_phi1phi1_bbtautau_TH13"] = boost::factory<log10_pp_phi2_phi1phi1_bbtautau_TH13*>();
4335  obsThFactory["log10_pp_phi3_phi1phi1_bbtautau_TH13"] = boost::factory<log10_pp_phi3_phi1phi1_bbtautau_TH13*>();
4336  obsThFactory["log10_pp_phi2_phi1phi1_bbVV_TH13"] = boost::factory<log10_pp_phi2_phi1phi1_bbVV_TH13*>();
4337  obsThFactory["log10_pp_phi3_phi1phi1_bbVV_TH13"] = boost::factory<log10_pp_phi3_phi1phi1_bbVV_TH13*>();
4338  obsThFactory["log10_gg_phi2_phi1phi1_gagaWW_TH13"] = boost::factory<log10_gg_phi2_phi1phi1_gagaWW_TH13*>();
4339  obsThFactory["log10_gg_phi3_phi1phi1_gagaWW_TH13"] = boost::factory<log10_gg_phi3_phi1phi1_gagaWW_TH13*>();
4340 
4341  obsThFactory["log10_gg_phi2_phi1Z_bbZ_TH8"] = boost::factory<log10_gg_phi2_phi1Z_bbZ_TH8*>();
4342  obsThFactory["log10_gg_phi3_phi1Z_bbZ_TH8"] = boost::factory<log10_gg_phi3_phi1Z_bbZ_TH8*>();
4343  obsThFactory["log10_gg_phi2_phi1Z_bbll_TH8"] = boost::factory<log10_gg_phi2_phi1Z_bbll_TH8*>();
4344  obsThFactory["log10_gg_phi3_phi1Z_bbll_TH8"] = boost::factory<log10_gg_phi3_phi1Z_bbll_TH8*>();
4345  obsThFactory["log10_gg_phi2_phi1Z_tautauZ_TH8"] = boost::factory<log10_gg_phi2_phi1Z_tautauZ_TH8*>();
4346  obsThFactory["log10_gg_phi3_phi1Z_tautauZ_TH8"] = boost::factory<log10_gg_phi3_phi1Z_tautauZ_TH8*>();
4347  obsThFactory["log10_gg_phi2_phi1Z_tautaull_TH8"] = boost::factory<log10_gg_phi2_phi1Z_tautaull_TH8*>();
4348  obsThFactory["log10_gg_phi3_phi1Z_tautaull_TH8"] = boost::factory<log10_gg_phi3_phi1Z_tautaull_TH8*>();
4349  obsThFactory["log10_gg_phi2_phi1Z_bbZ_TH13"] = boost::factory<log10_gg_phi2_phi1Z_bbZ_TH13*>();
4350  obsThFactory["log10_gg_phi3_phi1Z_bbZ_TH13"] = boost::factory<log10_gg_phi3_phi1Z_bbZ_TH13*>();
4351  obsThFactory["log10_bb_phi2_phi1Z_bbZ_TH13"] = boost::factory<log10_bb_phi2_phi1Z_bbZ_TH13*>();
4352  obsThFactory["log10_bb_phi3_phi1Z_bbZ_TH13"] = boost::factory<log10_bb_phi3_phi1Z_bbZ_TH13*>();
4353 
4354  obsThFactory["log10_pp_phi3_phi2Z_bbll_TH8"] = boost::factory<log10_pp_phi3_phi2Z_bbll_TH8*>();
4355  obsThFactory["log10_pp_phi3_phi2Z_tautaull_TH8"] = boost::factory<log10_pp_phi3_phi2Z_tautaull_TH8*>();
4356  obsThFactory["log10_gg_phi3_phi2Z_bbZ_TH13"] = boost::factory<log10_gg_phi3_phi2Z_bbZ_TH13*>();
4357  obsThFactory["log10_bb_phi3_phi2Z_bbZ_TH13"] = boost::factory<log10_bb_phi3_phi2Z_bbZ_TH13*>();
4358 
4359  obsThFactory["log10_pp_Hpm_taunu_TH8_GTHDM"] = boost::factory<log10_pp_Hpm_taunu_TH8_GTHDM*>();
4360  obsThFactory["log10_pp_Hp_taunu_TH8_GTHDM"] = boost::factory<log10_pp_Hp_taunu_TH8_GTHDM*>();
4361  obsThFactory["log10_pp_Hpm_taunu_TH13_GTHDM"] = boost::factory<log10_pp_Hpm_taunu_TH13_GTHDM*>();
4362  obsThFactory["log10_pp_Hpm_tb_TH8_GTHDM"] = boost::factory<log10_pp_Hpm_tb_TH8_GTHDM*>();
4363  obsThFactory["log10_pp_Hp_tb_TH8_GTHDM"] = boost::factory<log10_pp_Hp_tb_TH8_GTHDM*>();
4364  obsThFactory["log10_pp_Hpm_tb_TH13_GTHDM"] = boost::factory<log10_pp_Hpm_tb_TH13_GTHDM*>();
4365 
4366  //----- THDMW model observables -----
4367  obsThFactory["Q_stTHDMW"] = boost::factory<Q_stTHDMW*>();
4368  obsThFactory["DeltaQ_THDMW"] = boost::factory<DeltaQ_THDMW*>();
4369  obsThFactory["lambda1atQTHDMW"] = boost::factory<lambda1atQTHDMW*>();
4370  obsThFactory["lambda2atQTHDMW"] = boost::factory<lambda2atQTHDMW*>();
4371  obsThFactory["lambda3atQTHDMW"] = boost::factory<lambda3atQTHDMW*>();
4372  obsThFactory["lambda4atQTHDMW"] = boost::factory<lambda4atQTHDMW*>();
4373  obsThFactory["mu1atQTHDMW"] = boost::factory<mu1atQTHDMW*>();
4374  obsThFactory["mu2atQTHDMW"] = boost::factory<mu2atQTHDMW*>();
4375  obsThFactory["mu3atQTHDMW"] = boost::factory<mu3atQTHDMW*>();
4376  obsThFactory["mu4atQTHDMW"] = boost::factory<mu4atQTHDMW*>();
4377  obsThFactory["mu5atQTHDMW"] = boost::factory<mu5atQTHDMW*>();
4378  obsThFactory["mu6atQTHDMW"] = boost::factory<mu6atQTHDMW*>();
4379  obsThFactory["nu1atQTHDMW"] = boost::factory<nu1atQTHDMW*>();
4380  obsThFactory["omega1atQTHDMW"] = boost::factory<omega1atQTHDMW*>();
4381  obsThFactory["kappa1atQTHDMW"] = boost::factory<kappa1atQTHDMW*>();
4382  obsThFactory["nu2atQTHDMW"] = boost::factory<nu2atQTHDMW*>();
4383  obsThFactory["omega2atQTHDMW"] = boost::factory<omega2atQTHDMW*>();
4384  obsThFactory["kappa2atQTHDMW"] = boost::factory<kappa2atQTHDMW*>();
4385  obsThFactory["nu4atQTHDMW"] = boost::factory<nu4atQTHDMW*>();
4386  obsThFactory["omega4atQTHDMW"] = boost::factory<omega4atQTHDMW*>();
4387  obsThFactory["nu3atQTHDMW"] = boost::factory<nu3atQTHDMW*>();
4388  obsThFactory["nu5atQTHDMW"] = boost::factory<nu5atQTHDMW*>();
4389  //----- Positivity constraints -----
4390  obsThFactory["THDMWpositivity1"] = boost::factory<THDMWpositivity1*>();
4391  obsThFactory["THDMWpositivity2"] = boost::factory<THDMWpositivity2*>();
4392  obsThFactory["THDMWpositivity3"] = boost::factory<THDMWpositivity3*>();
4393  obsThFactory["THDMWpositivity4"] = boost::factory<THDMWpositivity4*>();
4394  obsThFactory["THDMWpositivity5"] = boost::factory<THDMWpositivity5*>();
4395  obsThFactory["THDMWpositivity6"] = boost::factory<THDMWpositivity6*>();
4396  obsThFactory["THDMWpositivity7"] = boost::factory<THDMWpositivity7*>();
4397  obsThFactory["THDMWpositivity8"] = boost::factory<THDMWpositivity8*>();
4398  obsThFactory["THDMWpositivity9"] = boost::factory<THDMWpositivity9*>();
4399  obsThFactory["THDMWpositivity10"] = boost::factory<THDMWpositivity10*>();
4400  obsThFactory["THDMWpositivity11"] = boost::factory<THDMWpositivity11*>();
4401  obsThFactory["THDMWpositivity12"] = boost::factory<THDMWpositivity12*>();
4402  obsThFactory["THDMWpositiveMassSquares"] = boost::factory<THDMWpositiveMassSquares*>();
4403  //----- Tree-level unitarity constraints -----
4404  obsThFactory["THDMWunitarity1"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 0);
4405  obsThFactory["THDMWunitarity2"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 1);
4406  obsThFactory["THDMWunitarity3"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 2);
4407  obsThFactory["THDMWunitarity4"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 3);
4408  obsThFactory["THDMWunitarity5"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 4);
4409  obsThFactory["THDMWunitarity6"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 5);
4410  obsThFactory["THDMWunitarity7"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 6);
4411  obsThFactory["THDMWunitarity8"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 7);
4412  obsThFactory["THDMWunitarity9"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 8);
4413  obsThFactory["THDMWunitarity10"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 9);
4414  obsThFactory["THDMWunitarity11"] = boost::bind(boost::factory<THDMWunitarityLO*>(), _1, 10);
4415  //----- One-loop unitarity constraints -----
4416  obsThFactory["THDMWNLOunitarity1"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 0);
4417  obsThFactory["THDMWNLOunitarity2"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 1);
4418  obsThFactory["THDMWNLOunitarity3"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 2);
4419  obsThFactory["THDMWNLOunitarity4"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 3);
4420  obsThFactory["THDMWNLOunitarity5"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 4);
4421  obsThFactory["THDMWNLOunitarity6"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 5);
4422  obsThFactory["THDMWNLOunitarity7"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 6);
4423  obsThFactory["THDMWNLOunitarity8"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 7);
4424  obsThFactory["THDMWNLOunitarity9"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 8);
4425  obsThFactory["THDMWNLOunitarity10"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 9);
4426  obsThFactory["THDMWNLOunitarity11"] = boost::bind(boost::factory<THDMWunitarityNLO*>(), _1, 10);
4427  //----- One-loop "plus" unitarity constraints -----
4428  obsThFactory["THDMWNLOpunitarity1"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 0);
4429  obsThFactory["THDMWNLOpunitarity2"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 1);
4430  obsThFactory["THDMWNLOpunitarity3"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 2);
4431  obsThFactory["THDMWNLOpunitarity4"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 3);
4432  obsThFactory["THDMWNLOpunitarity5"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 4);
4433  obsThFactory["THDMWNLOpunitarity6"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 5);
4434  obsThFactory["THDMWNLOpunitarity7"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 6);
4435  obsThFactory["THDMWNLOpunitarity8"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 7);
4436  obsThFactory["THDMWNLOpunitarity9"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 8);
4437  obsThFactory["THDMWNLOpunitarity10"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 9);
4438  obsThFactory["THDMWNLOpunitarity11"] = boost::bind(boost::factory<THDMWunitarityNLOp*>(), _1, 10);
4439  //----- R' criteria for perturbative unitarity -----
4440  obsThFactory["THDMWunitarityRp1"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 0);
4441  obsThFactory["THDMWunitarityRp2"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 1);
4442  obsThFactory["THDMWunitarityRp3"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 2);
4443  obsThFactory["THDMWunitarityRp4"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 3);
4444  obsThFactory["THDMWunitarityRp5"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 4);
4445  obsThFactory["THDMWunitarityRp6"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 5);
4446  obsThFactory["THDMWunitarityRp7"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 6);
4447  obsThFactory["THDMWunitarityRp8"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 7);
4448  obsThFactory["THDMWunitarityRp9"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 8);
4449  obsThFactory["THDMWunitarityRp10"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 9);
4450  obsThFactory["THDMWunitarityRp11"] = boost::bind(boost::factory<THDMWunitarityRp*>(), _1, 10);
4451  //----- Physical parameters -----
4452  obsThFactory["m12sqTHDMW"] = boost::factory<m12sqTHDMW*>();
4453  obsThFactory["m11sqTHDMW"] = boost::factory<m11sqTHDMW*>();
4454  obsThFactory["m22sqTHDMW"] = boost::factory<m22sqTHDMW*>();
4455  obsThFactory["mhsqTHDMW"] = boost::factory<mhsqTHDMW*>();
4456  obsThFactory["mhTHDMW"] = boost::factory<mhTHDMW*>();
4457  obsThFactory["mHHsqTHDMW"] = boost::factory<mHHsqTHDMW*>();
4458  obsThFactory["mHHTHDMW"] = boost::factory<mHHTHDMW*>();
4459  obsThFactory["mAsqTHDMW"] = boost::factory<mAsqTHDMW*>();
4460  obsThFactory["mATHDMW"] = boost::factory<mATHDMW*>();
4461  obsThFactory["mSpsqTHDMW"] = boost::factory<mSpsqTHDMW*>();
4462  obsThFactory["mSpTHDMW"] = boost::factory<mSpTHDMW*>();
4463  obsThFactory["mSRsqTHDMW"] = boost::factory<mSRsqTHDMW*>();
4464  obsThFactory["mSRTHDMW"] = boost::factory<mSRTHDMW*>();
4465  obsThFactory["mSIsqTHDMW"] = boost::factory<mSIsqTHDMW*>();
4466  obsThFactory["mSITHDMW"] = boost::factory<mSITHDMW*>();
4467  obsThFactory["mAmmHH_THDMW"] = boost::factory<mAmmHH_THDMW*>();
4468  obsThFactory["mHHmmA_THDMW"] = boost::factory<mHHmmA_THDMW*>();
4469  obsThFactory["mAmmSR_THDMW"] = boost::factory<mAmmSR_THDMW*>();
4470  obsThFactory["mSRmmA_THDMW"] = boost::factory<mSRmmA_THDMW*>();
4471  obsThFactory["mAmmSI_THDMW"] = boost::factory<mAmmSI_THDMW*>();
4472  obsThFactory["mSImmA_THDMW"] = boost::factory<mSImmA_THDMW*>();
4473  obsThFactory["mHHmmSR_THDMW"] = boost::factory<mHHmmSR_THDMW*>();
4474  obsThFactory["mSRmmHH_THDMW"] = boost::factory<mSRmmHH_THDMW*>();
4475  obsThFactory["mHHmmSI_THDMW"] = boost::factory<mHHmmSI_THDMW*>();
4476  obsThFactory["mSImmHH_THDMW"] = boost::factory<mSImmHH_THDMW*>();
4477  obsThFactory["mSRmmSI_THDMW"] = boost::factory<mSRmmSI_THDMW*>();
4478  obsThFactory["mSImmSR_THDMW"] = boost::factory<mSImmSR_THDMW*>();
4479  obsThFactory["mSpmmSI_THDMW"] = boost::factory<mSpmmSI_THDMW*>();
4480  obsThFactory["mSpmmSR_THDMW"] = boost::factory<mSpmmSR_THDMW*>();
4481  obsThFactory["mSRmmSp_THDMW"] = boost::factory<mSRmmSp_THDMW*>();
4482  obsThFactory["mSImmSp_THDMW"] = boost::factory<mSImmSp_THDMW*>();
4483  //----- Higgs observables -----
4484  obsThFactory["rh_gg_THDMW"] = boost::factory<rh_gg_THDMW*>();
4485  obsThFactory["rh_gaga_THDMW"] = boost::factory<rh_gaga_THDMW*>();
4486  obsThFactory["rh_Zga_THDMW"] = boost::factory<rh_Zga_THDMW*>();
4487  //----- Direct Searches -----
4488  obsThFactory["Hobs_pp_Sr_tt_ATLAS13"] = boost::factory<Hobs_pp_Sr_tt_ATLAS13*>();
4489  obsThFactory["log10_pp_Sr_tt_TH13"] = boost::factory<log10_pp_Sr_tt_TH13*>();
4490  obsThFactory["Hobs_pp_Srtt_tttt_ATLAS13"] = boost::factory<Hobs_pp_Srtt_tttt_ATLAS13*>();
4491  obsThFactory["log10_pp_Srtt_tttt_TH13"] = boost::factory<log10_pp_Srtt_tttt_TH13*>();
4492  obsThFactory["Hobs_pp_Sr_jj_CMS13"] = boost::factory<Hobs_pp_Sr_jj_CMS13*>();
4493  obsThFactory["log10_pp_Sr_jj_TH13"] = boost::factory<log10_pp_Sr_jj_TH13*>();
4494  obsThFactory["Hobs_pp_SrSr_jjjj_ATLAS13"] = boost::factory<Hobs_pp_SrSr_jjjj_ATLAS13*>();
4495  obsThFactory["log10_pp_SrSr_jjjj_TH13"] = boost::factory<log10_pp_SrSr_jjjj_TH13*>();
4496  obsThFactory["Hobs_pp_Stb_tbtb_ATLAS13"] = boost::factory<Hobs_pp_Stb_tbtb_ATLAS13*>();
4497  obsThFactory["log10_pp_Stb_tbtb_TH13"] = boost::factory<log10_pp_Stb_tbtb_TH13*>();
4498  obsThFactory["Hobs_pp_Sitt_tttt_ATLAS13"] = boost::factory<Hobs_pp_Sitt_tttt_ATLAS13*>();
4499  obsThFactory["log10_pp_Sitt_tttt_TH13"] = boost::factory<log10_pp_Sitt_tttt_TH13*>();
4500  obsThFactory["Hobs_pp_Srbb_bbbb_CMS13"] = boost::factory<Hobs_pp_Srbb_bbbb_CMS13*>();
4501  obsThFactory["log10_pp_Srbb_bbbb_TH13"] = boost::factory<log10_pp_Srbb_bbbb_TH13*>();
4502  obsThFactory["Hobs_pp_Srbb_bbbb_CMS8"] = boost::factory<Hobs_pp_Srbb_bbbb_CMS8*>();
4503  obsThFactory["log10_pp_Srbb_bbbb_TH8"] = boost::factory<log10_pp_Srbb_bbbb_TH8*>();
4504  obsThFactory["Hobs_pp_Sibb_bbbb_CMS13"] = boost::factory<Hobs_pp_Sibb_bbbb_CMS13*>();
4505  obsThFactory["log10_pp_Sibb_bbbb_TH13"] = boost::factory<log10_pp_Sibb_bbbb_TH13*>();
4506  obsThFactory["Hobs_pp_Sibb_bbbb_CMS8"] = boost::factory<Hobs_pp_Sibb_bbbb_CMS8*>();
4507  obsThFactory["log10_pp_Sibb_bbbb_TH8"] = boost::factory<log10_pp_Sibb_bbbb_TH8*>();
4508  obsThFactory["Hobs_pp_Sr_bb_CMS13"] = boost::factory<Hobs_pp_Sr_bb_CMS13*>();
4509  obsThFactory["log10_pp_Sr_bb_TH13"] = boost::factory<log10_pp_Sr_bb_TH13*>();
4510  obsThFactory["Hobs_pp_Sr_bb_CMS8"] = boost::factory<Hobs_pp_Sr_bb_CMS8*>();
4511  obsThFactory["log10_pp_Sr_bb_TH8"] = boost::factory<log10_pp_Sr_bb_TH8*>();
4512  obsThFactory["Hobs_pp_Si_bb_CMS13"] = boost::factory<Hobs_pp_Si_bb_CMS13*>();
4513  obsThFactory["log10_pp_Si_bb_TH13"] = boost::factory<log10_pp_Si_bb_TH13*>();
4514  obsThFactory["log10_pp_Si_bb_TH8"] = boost::factory<log10_pp_Si_bb_TH8*>();
4515  obsThFactory["Hobs_pp_Si_bb_CMS8"] = boost::factory<Hobs_pp_Si_bb_CMS8*>();
4516 
4517  //obsThFactory["logpp_SrSr_jjjj_TH13"] = boost::factory<logpp_SrSr_jjjj_TH13*>();
4518  //----- EWPO ------
4519  obsThFactory["Rb0_THDMW"] = boost::factory<Rb0THDMW*>();
4520  //----- STU ------
4521  obsThFactory["DeltaS_THDMW"] = boost::factory<THDMWDeltaS*>();
4522  obsThFactory["DeltaT_THDMW"] = boost::factory<THDMWDeltaT*>();
4523  obsThFactory["DeltaU_THDMW"] = boost::factory<THDMWDeltaU*>();
4524 
4525  //----- GeorgiMachacek observables -----
4526  //----- GeorgiMachacek quantities -----
4527  obsThFactory["tanbetaGM"] = boost::factory<tanbetaGM*>();
4528  obsThFactory["m1sqGM"] = boost::factory<m1sqGM*>();
4529  obsThFactory["m2sqGM"] = boost::factory<m2sqGM*>();
4530  obsThFactory["lambda1GM"] = boost::factory<lambda1GM*>();
4531  obsThFactory["lambda2GM"] = boost::factory<lambda2GM*>();
4532  obsThFactory["lambda3GM"] = boost::factory<lambda3GM*>();
4533  obsThFactory["lambda4GM"] = boost::factory<lambda4GM*>();
4534  obsThFactory["lambda5GM"] = boost::factory<lambda5GM*>();
4535  obsThFactory["vPhiGM"] = boost::factory<vPhiGM*>();
4536  obsThFactory["GMmHh"] = boost::factory<GMmass_mHh*>();
4537  obsThFactory["GMmA"] = boost::factory<GMmass_mA*>();
4538  obsThFactory["GMmH5"] = boost::factory<GMmass_mH5*>();
4539  obsThFactory["GMmHlmmHh"] = boost::factory<GMmassdifference_mHlmmHh*>();
4540  obsThFactory["GMmHhmmHl"] = boost::factory<GMmassdifference_mHhmmHl*>();
4541  obsThFactory["GMmHlmmA"] = boost::factory<GMmassdifference_mHlmmA*>();
4542  obsThFactory["GMmAmmHl"] = boost::factory<GMmassdifference_mAmmHl*>();
4543  obsThFactory["GMmHlmmH5"] = boost::factory<GMmassdifference_mHlmmH5*>();
4544  obsThFactory["GMmH5mmHl"] = boost::factory<GMmassdifference_mH5mmHl*>();
4545  obsThFactory["GMmHhmmA"] = boost::factory<GMmassdifference_mHhmmA*>();
4546  obsThFactory["GMmAmmHh"] = boost::factory<GMmassdifference_mAmmHh*>();
4547  obsThFactory["GMmHhmmH5"] = boost::factory<GMmassdifference_mHhmmH5*>();
4548  obsThFactory["GMmH5mmHh"] = boost::factory<GMmassdifference_mH5mmHh*>();
4549  obsThFactory["GMmAmmH5"] = boost::factory<GMmassdifference_mAmmH5*>();
4550  obsThFactory["GMmH5mmA"] = boost::factory<GMmassdifference_mH5mmA*>();
4551  obsThFactory["GMGammah"] = boost::factory<GMGammah*>();
4552  obsThFactory["GMGammaH1"] = boost::factory<GMGammaH1*>();
4553  obsThFactory["GMGammaH3"] = boost::factory<GMGammaH3*>();
4554  obsThFactory["GMGammaH3p"] = boost::factory<GMGammaH3p*>();
4555  obsThFactory["GMGammaH5"] = boost::factory<GMGammaH5*>();
4556  obsThFactory["GMGammaH5p"] = boost::factory<GMGammaH5p*>();
4557  obsThFactory["GMGammaH5pp"] = boost::factory<GMGammaH5pp*>();
4558  obsThFactory["GMghhh"] = boost::factory<GMghhh*>();
4559  //----- Tree-level unitarity constraints -----
4560  obsThFactory["GMunitarity1"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 0);
4561  obsThFactory["GMunitarity2"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 1);
4562  obsThFactory["GMunitarity3"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 2);
4563  obsThFactory["GMunitarity4"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 3);
4564  obsThFactory["GMunitarity5"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 4);
4565  obsThFactory["GMunitarity6"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 5);
4566  obsThFactory["GMunitarity7"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 6);
4567  obsThFactory["GMunitarity8"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 7);
4568  obsThFactory["GMunitarity9"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 8);
4569  obsThFactory["GMunitarity10"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 9);
4570  obsThFactory["GMunitarity11"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 10);
4571  obsThFactory["GMunitarity12"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 11);
4572  obsThFactory["GMunitarity13"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 12);
4573  obsThFactory["GMunitarity14"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 13);
4574  obsThFactory["GMunitarity15"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 14);
4575  obsThFactory["GMunitarity16"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 15);
4576  obsThFactory["GMunitarity17"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 16);
4577  //----- Positivity constraints -----
4578  obsThFactory["GMpositivity1"] = boost::factory<GMpositivity1*>();
4579  obsThFactory["GMpositivity2"] = boost::factory<GMpositivity2*>();
4580  obsThFactory["GMpositivity3"] = boost::factory<GMpositivity3*>();
4581  obsThFactory["GMpositivity4"] = boost::factory<GMpositivity4*>();
4582  //----- Higgs observables -----
4583  obsThFactory["rh_gaga_GM"] = boost::factory<rh_gaga_GM*>();
4584  obsThFactory["rh_Zga_GM"] = boost::factory<rh_Zga_GM*>();
4585  //----- Direct Higgs searches -----
4586  obsThFactory["BR_H1_tt_GM"] = boost::factory<BR_H1_tt_GM*>();
4587  obsThFactory["BR_H1_bb_GM"] = boost::factory<BR_H1_bb_GM*>();
4588  obsThFactory["BR_H1_tautau_GM"] = boost::factory<BR_H1_tautau_GM*>();
4589  obsThFactory["BR_H1_WW_GM"] = boost::factory<BR_H1_WW_GM*>();
4590  obsThFactory["BR_H1_ZZ_GM"] = boost::factory<BR_H1_ZZ_GM*>();
4591  obsThFactory["BR_H1_gaga_GM"] = boost::factory<BR_H1_gaga_GM*>();
4592  obsThFactory["BR_H1_Zga_GM"] = boost::factory<BR_H1_Zga_GM*>();
4593  obsThFactory["BR_H1_H3Z_GM"] = boost::factory<BR_H1_H3Z_GM*>();
4594  obsThFactory["BR_H1_H3pW_GM"] = boost::factory<BR_H1_H3pW_GM*>();
4595  obsThFactory["BR_H1_hh_GM"] = boost::factory<BR_H1_hh_GM*>();
4596  obsThFactory["BR_H1_H3H3_GM"] = boost::factory<BR_H1_H3H3_GM*>();
4597  obsThFactory["BR_H1_H3pH3m_GM"] = boost::factory<BR_H1_H3pH3m_GM*>();
4598  obsThFactory["BR_H1_H5H5_GM"] = boost::factory<BR_H1_H5H5_GM*>();
4599  obsThFactory["BR_H1_H5pH5m_GM"] = boost::factory<BR_H1_H5pH5m_GM*>();
4600  obsThFactory["BR_H1_H5ppH5mm_GM"] = boost::factory<BR_H1_H5ppH5mm_GM*>();
4601  obsThFactory["BR_H3_tt_GM"] = boost::factory<BR_H3_tt_GM*>();
4602  obsThFactory["BR_H3_bb_GM"] = boost::factory<BR_H3_bb_GM*>();
4603  obsThFactory["BR_H3_tautau_GM"] = boost::factory<BR_H3_tautau_GM*>();
4604  obsThFactory["BR_H3_gaga_GM"] = boost::factory<BR_H3_gaga_GM*>();
4605  obsThFactory["BR_H3_Zga_GM"] = boost::factory<BR_H3_Zga_GM*>();
4606  obsThFactory["BR_H3_hZ_GM"] = boost::factory<BR_H3_hZ_GM*>();
4607  obsThFactory["BR_H3_H1Z_GM"] = boost::factory<BR_H3_H1Z_GM*>();
4608  obsThFactory["BR_H3_H5Z_GM"] = boost::factory<BR_H3_H5Z_GM*>();
4609  obsThFactory["BR_H3_H5pW_GM"] = boost::factory<BR_H3_H5pW_GM*>();
4610  obsThFactory["BR_H3p_taunu_GM"] = boost::factory<BR_H3p_taunu_GM*>();
4611  obsThFactory["BR_H3p_tb_GM"] = boost::factory<BR_H3p_tb_GM*>();
4612  obsThFactory["BR_H3p_hW_GM"] = boost::factory<BR_H3p_hW_GM*>();
4613  obsThFactory["BR_H3p_H1W_GM"] = boost::factory<BR_H3p_H1W_GM*>();
4614  obsThFactory["BR_H3p_H5W_GM"] = boost::factory<BR_H3p_H5W_GM*>();
4615  obsThFactory["BR_H3p_H5pZ_GM"] = boost::factory<BR_H3p_H5pZ_GM*>();
4616  obsThFactory["BR_H3p_H5ppW_GM"] = boost::factory<BR_H3p_H5ppW_GM*>();
4617  obsThFactory["BR_H5_WW_GM"] = boost::factory<BR_H5_WW_GM*>();
4618  obsThFactory["BR_H5_ZZ_GM"] = boost::factory<BR_H5_ZZ_GM*>();
4619  obsThFactory["BR_H5_gaga_GM"] = boost::factory<BR_H5_gaga_GM*>();
4620  obsThFactory["BR_H5_Zga_GM"] = boost::factory<BR_H5_Zga_GM*>();
4621  obsThFactory["BR_H5_H3Z_GM"] = boost::factory<BR_H5_H3Z_GM*>();
4622  obsThFactory["BR_H5_H3pW_GM"] = boost::factory<BR_H5_H3pW_GM*>();
4623  obsThFactory["BR_H5_H3H3_GM"] = boost::factory<BR_H5_H3H3_GM*>();
4624  obsThFactory["BR_H5_H3pH3m_GM"] = boost::factory<BR_H5_H3pH3m_GM*>();
4625  obsThFactory["BR_H5p_WZ_GM"] = boost::factory<BR_H5p_WZ_GM*>();
4626  obsThFactory["BR_H5p_H3W_GM"] = boost::factory<BR_H5p_H3W_GM*>();
4627  obsThFactory["BR_H5p_H3pZ_GM"] = boost::factory<BR_H5p_H3pZ_GM*>();
4628  obsThFactory["BR_H5p_H3pH3_GM"] = boost::factory<BR_H5p_H3pH3_GM*>();
4629  obsThFactory["BR_H5pp_WW_GM"] = boost::factory<BR_H5pp_WW_GM*>();
4630  obsThFactory["BR_H5pp_H3pW_GM"] = boost::factory<BR_H5pp_H3pW_GM*>();
4631  obsThFactory["BR_H5pp_H3pH3p_GM"] = boost::factory<BR_H5pp_H3pH3p_GM*>();
4632  obsThFactory["Hobs_tt_H1_tt_ATLAS13"] = boost::factory<Hobs_tt_H1_tt_ATLAS13*>();
4633  obsThFactory["Hobs_bb_H1_tt_ATLAS13"] = boost::factory<Hobs_bb_H1_tt_ATLAS13*>();
4634  obsThFactory["Hobs_tt_H3_tt_ATLAS13"] = boost::factory<Hobs_tt_H3_tt_ATLAS13*>();
4635  obsThFactory["Hobs_bb_H3_tt_ATLAS13"] = boost::factory<Hobs_bb_H3_tt_ATLAS13*>();
4636  obsThFactory["Hobs_bb_H1_bb_CMS8"] = boost::factory<Hobs_bb_H1_bb_CMS8*>();
4637  obsThFactory["Hobs_gg_H1_bb_CMS8"] = boost::factory<Hobs_gg_H1_bb_CMS8*>();
4638  obsThFactory["Hobs_pp_H1_bb_CMS13"] = boost::factory<Hobs_pp_H1_bb_CMS13*>();
4639  obsThFactory["Hobs_bb_H1_bb_CMS13"] = boost::factory<Hobs_bb_H1_bb_CMS13*>();
4640  obsThFactory["Hobs_bb_H3_bb_CMS8"] = boost::factory<Hobs_bb_H3_bb_CMS8*>();
4641  obsThFactory["Hobs_gg_H3_bb_CMS8"] = boost::factory<Hobs_gg_H3_bb_CMS8*>();
4642  obsThFactory["Hobs_pp_H3_bb_CMS13"] = boost::factory<Hobs_pp_H3_bb_CMS13*>();
4643  obsThFactory["Hobs_bb_H3_bb_CMS13"] = boost::factory<Hobs_bb_H3_bb_CMS13*>();
4644  obsThFactory["Hobs_gg_H1_tautau_CMS8"] = boost::factory<Hobs_gg_H1_tautau_CMS8*>();
4645  obsThFactory["Hobs_bb_H1_tautau_CMS8"] = boost::factory<Hobs_bb_H1_tautau_CMS8*>();
4646  obsThFactory["Hobs_gg_H1_tautau_ATLAS13"] = boost::factory<Hobs_gg_H1_tautau_ATLAS13*>();
4647  obsThFactory["Hobs_gg_H1_tautau_CMS13"] = boost::factory<Hobs_gg_H1_tautau_CMS13*>();
4648  obsThFactory["Hobs_bb_H1_tautau_ATLAS13"] = boost::factory<Hobs_bb_H1_tautau_ATLAS13*>();
4649  obsThFactory["Hobs_bb_H1_tautau_CMS13"] = boost::factory<Hobs_bb_H1_tautau_CMS13*>();
4650  obsThFactory["Hobs_gg_H1_tautau_ATLAS8"] = boost::factory<Hobs_gg_H1_tautau_ATLAS8*>();
4651  obsThFactory["Hobs_bb_H1_tautau_ATLAS8"] = boost::factory<Hobs_bb_H1_tautau_ATLAS8*>();
4652  obsThFactory["Hobs_gg_H3_tautau_ATLAS8"] = boost::factory<Hobs_gg_H3_tautau_ATLAS8*>();
4653  obsThFactory["Hobs_gg_H3_tautau_CMS8"] = boost::factory<Hobs_gg_H3_tautau_CMS8*>();
4654  obsThFactory["Hobs_bb_H3_tautau_ATLAS8"] = boost::factory<Hobs_bb_H3_tautau_ATLAS8*>();
4655  obsThFactory["Hobs_bb_H3_tautau_CMS8"] = boost::factory<Hobs_bb_H3_tautau_CMS8*>();
4656  obsThFactory["Hobs_gg_H3_tautau_ATLAS13"] = boost::factory<Hobs_gg_H3_tautau_ATLAS13*>();
4657  obsThFactory["Hobs_gg_H3_tautau_CMS13"] = boost::factory<Hobs_gg_H3_tautau_CMS13*>();
4658  obsThFactory["Hobs_bb_H3_tautau_ATLAS13"] = boost::factory<Hobs_bb_H3_tautau_ATLAS13*>();
4659  obsThFactory["Hobs_bb_H3_tautau_CMS13"] = boost::factory<Hobs_bb_H3_tautau_CMS13*>();
4660  obsThFactory["Hobs_gg_H1_gaga_ATLAS8"] = boost::factory<Hobs_gg_H1_gaga_ATLAS8*>();
4661  obsThFactory["Hobs_pp_H1_gaga_ATLAS13"] = boost::factory<Hobs_pp_H1_gaga_ATLAS13*>();
4662  obsThFactory["Hobs_gg_H1_gaga_CMS13"] = boost::factory<Hobs_gg_H1_gaga_CMS13*>();
4663  obsThFactory["Hobs_gg_H3_gaga_ATLAS8"] = boost::factory<Hobs_gg_H3_gaga_ATLAS8*>();
4664  obsThFactory["Hobs_pp_H3_gaga_ATLAS13"] = boost::factory<Hobs_pp_H3_gaga_ATLAS13*>();
4665  obsThFactory["Hobs_gg_H3_gaga_CMS13"] = boost::factory<Hobs_gg_H3_gaga_CMS13*>();
4666  obsThFactory["Hobs_pp_H5_gaga_ATLAS13"] = boost::factory<Hobs_pp_H5_gaga_ATLAS13*>();
4667  obsThFactory["Hobs_pp_H1_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_H1_Zga_llga_ATLAS8*>();
4668  obsThFactory["Hobs_pp_H1_Zga_llga_CMS8"] = boost::factory<Hobs_pp_H1_Zga_llga_CMS8*>();
4669  obsThFactory["Hobs_gg_H1_Zga_llga_ATLAS13"] = boost::factory<Hobs_gg_H1_Zga_llga_ATLAS13*>();
4670  obsThFactory["Hobs_gg_H1_Zga_qqga_ATLAS13"] = boost::factory<Hobs_gg_H1_Zga_qqga_ATLAS13*>();
4671  obsThFactory["Hobs_gg_H1_Zga_CMS13"] = boost::factory<Hobs_gg_H1_Zga_CMS13*>();
4672  obsThFactory["Hobs_pp_H3_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_H3_Zga_llga_ATLAS8*>();
4673  obsThFactory["Hobs_pp_H3_Zga_llga_CMS8"] = boost::factory<Hobs_pp_H3_Zga_llga_CMS8*>();
4674  obsThFactory["Hobs_gg_H3_Zga_llga_ATLAS13"] = boost::factory<Hobs_gg_H3_Zga_llga_ATLAS13*>();
4675  obsThFactory["Hobs_gg_H3_Zga_qqga_ATLAS13"] = boost::factory<Hobs_gg_H3_Zga_qqga_ATLAS13*>();
4676  obsThFactory["Hobs_gg_H3_Zga_CMS13"] = boost::factory<Hobs_gg_H3_Zga_CMS13*>();
4677  obsThFactory["Hobs_pp_H5_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_H5_Zga_llga_ATLAS8*>();
4678  obsThFactory["Hobs_pp_H5_Zga_llga_CMS8"] = boost::factory<Hobs_pp_H5_Zga_llga_CMS8*>();
4679  obsThFactory["Hobs_gg_H1_ZZ_ATLAS8"] = boost::factory<Hobs_gg_H1_ZZ_ATLAS8*>();
4680  obsThFactory["Hobs_VV_H1_ZZ_ATLAS8"] = boost::factory<Hobs_VV_H1_ZZ_ATLAS8*>();
4681  obsThFactory["Hobs_gg_H1_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_gg_H1_ZZ_llllnunu_ATLAS13*>();
4682  obsThFactory["Hobs_VV_H1_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_VV_H1_ZZ_llllnunu_ATLAS13*>();
4683  obsThFactory["Hobs_gg_H1_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_gg_H1_ZZ_qqllnunu_ATLAS13*>();
4684  obsThFactory["Hobs_VV_H1_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_VV_H1_ZZ_qqllnunu_ATLAS13*>();
4685  obsThFactory["Hobs_pp_H1_ZZ_llqqnunull_CMS13"] = boost::factory<Hobs_pp_H1_ZZ_llqqnunull_CMS13*>();
4686  obsThFactory["Hobs_pp_H1_ZZ_qqnunu_CMS13"] = boost::factory<Hobs_pp_H1_ZZ_qqnunu_CMS13*>();
4687  obsThFactory["Hobs_VV_H5_ZZ_ATLAS8"] = boost::factory<Hobs_VV_H5_ZZ_ATLAS8*>();
4688  obsThFactory["Hobs_VV_H5_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_VV_H5_ZZ_llllnunu_ATLAS13*>();
4689  obsThFactory["Hobs_VV_H5_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_VV_H5_ZZ_qqllnunu_ATLAS13*>();
4690  obsThFactory["Hobs_pp_H5_ZZ_llqqnunull_CMS13"] = boost::factory<Hobs_pp_H5_ZZ_llqqnunull_CMS13*>();
4691  obsThFactory["Hobs_pp_H5_ZZ_qqnunu_CMS13"] = boost::factory<Hobs_pp_H5_ZZ_qqnunu_CMS13*>();
4692  obsThFactory["Hobs_gg_H1_WW_ATLAS8"] = boost::factory<Hobs_gg_H1_WW_ATLAS8*>();
4693  obsThFactory["Hobs_VV_H1_WW_ATLAS8"] = boost::factory<Hobs_VV_H1_WW_ATLAS8*>();
4694  obsThFactory["Hobs_gg_H1_WW_enumunu_ATLAS13"] = boost::factory<Hobs_gg_H1_WW_enumunu_ATLAS13*>();
4695  obsThFactory["Hobs_VV_H1_WW_enumunu_ATLAS13"] = boost::factory<Hobs_VV_H1_WW_enumunu_ATLAS13*>();
4696  obsThFactory["Hobs_gg_H1_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_gg_H1_WW_lnuqq_ATLAS13*>();
4697  obsThFactory["Hobs_VV_H1_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_VV_H1_WW_lnuqq_ATLAS13*>();
4698  obsThFactory["Hobs_ggVV_H1_WW_lnulnu_CMS13"] = boost::factory<Hobs_ggVV_H1_WW_lnulnu_CMS13*>();
4699  obsThFactory["Hobs_pp_H1_WW_lnuqq_CMS13"] = boost::factory<Hobs_pp_H1_WW_lnuqq_CMS13*>();
4700  obsThFactory["Hobs_VV_H5_WW_ATLAS8"] = boost::factory<Hobs_VV_H5_WW_ATLAS8*>();
4701  obsThFactory["Hobs_VV_H5_WW_enumunu_ATLAS13"] = boost::factory<Hobs_VV_H5_WW_enumunu_ATLAS13*>();
4702  obsThFactory["Hobs_VV_H5_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_VV_H5_WW_lnuqq_ATLAS13*>();
4703  obsThFactory["Hobs_ggVV_H5_WW_lnulnu_CMS13"] = boost::factory<Hobs_ggVV_H5_WW_lnulnu_CMS13*>();
4704  obsThFactory["Hobs_pp_H5_WW_lnuqq_CMS13"] = boost::factory<Hobs_pp_H5_WW_lnuqq_CMS13*>();
4705  obsThFactory["Hobs_mu_pp_H1_VV_CMS8"] = boost::factory<Hobs_mu_pp_H1_VV_CMS8*>();
4706  obsThFactory["Hobs_pp_H1_VV_qqqq_ATLAS13"] = boost::factory<Hobs_pp_H1_VV_qqqq_ATLAS13*>();
4707  obsThFactory["Hobs_mu_pp_H5_VV_CMS8"] = boost::factory<Hobs_mu_pp_H5_VV_CMS8*>();
4708  obsThFactory["Hobs_pp_H5_VV_qqqq_ATLAS13"] = boost::factory<Hobs_pp_H5_VV_qqqq_ATLAS13*>();
4709  obsThFactory["Hobs_gg_H1_hh_ATLAS8"] = boost::factory<Hobs_gg_H1_hh_ATLAS8*>();
4710  obsThFactory["Hobs_pp_H1_hh_bbbb_CMS8"] = boost::factory<Hobs_pp_H1_hh_bbbb_CMS8*>();
4711  obsThFactory["Hobs_pp_H1_hh_gagabb_CMS8"] = boost::factory<Hobs_pp_H1_hh_gagabb_CMS8*>();
4712  obsThFactory["Hobs_gg_H1_hh_bbtautau_CMS8"] = boost::factory<Hobs_gg_H1_hh_bbtautau_CMS8*>();
4713  obsThFactory["Hobs_pp_H1_hh_bbtautau_CMS8"] = boost::factory<Hobs_pp_H1_hh_bbtautau_CMS8*>();
4714  obsThFactory["Hobs_pp_H1_hh_bbbb_ATLAS13"] = boost::factory<Hobs_pp_H1_hh_bbbb_ATLAS13*>();
4715  obsThFactory["Hobs_pp_H1_hh_bbbb_1_CMS13"] = boost::factory<Hobs_pp_H1_hh_bbbb_1_CMS13*>();
4716  obsThFactory["Hobs_pp_H1_hh_bbbb_2_CMS13"] = boost::factory<Hobs_pp_H1_hh_bbbb_2_CMS13*>();
4717  obsThFactory["Hobs_gg_H1_hh_bbbb_CMS13"] = boost::factory<Hobs_gg_H1_hh_bbbb_CMS13*>();
4718  obsThFactory["Hobs_pp_H1_hh_gagabb_ATLAS13"] = boost::factory<Hobs_pp_H1_hh_gagabb_ATLAS13*>();
4719  obsThFactory["Hobs_pp_H1_hh_gagabb_CMS13"] = boost::factory<Hobs_pp_H1_hh_gagabb_CMS13*>();
4720  obsThFactory["Hobs_pp_H1_hh_bbtautau_ATLAS13"] = boost::factory<Hobs_pp_H1_hh_bbtautau_ATLAS13*>();
4721  obsThFactory["Hobs_pp_H1_hh_bbtautau_1_CMS13"] = boost::factory<Hobs_pp_H1_hh_bbtautau_1_CMS13*>();
4722  obsThFactory["Hobs_pp_H1_hh_bbtautau_2_CMS13"] = boost::factory<Hobs_pp_H1_hh_bbtautau_2_CMS13*>();
4723  obsThFactory["Hobs_pp_H1_hh_bblnulnu_CMS13"] = boost::factory<Hobs_pp_H1_hh_bblnulnu_CMS13*>();
4724  obsThFactory["Hobs_gg_H1_hh_gagaWW_ATLAS13"] = boost::factory<Hobs_gg_H1_hh_gagaWW_ATLAS13*>();
4725  obsThFactory["Hobs_gg_H3_hZ_bbZ_ATLAS8"] = boost::factory<Hobs_gg_H3_hZ_bbZ_ATLAS8*>();
4726  obsThFactory["Hobs_gg_H3_hZ_bbll_CMS8"] = boost::factory<Hobs_gg_H3_hZ_bbll_CMS8*>();
4727  obsThFactory["Hobs_gg_H3_hZ_tautauZ_ATLAS8"] = boost::factory<Hobs_gg_H3_hZ_tautauZ_ATLAS8*>();
4728  obsThFactory["Hobs_gg_H3_hZ_tautaull_CMS8"] = boost::factory<Hobs_gg_H3_hZ_tautaull_CMS8*>();
4729  obsThFactory["Hobs_gg_H3_hZ_bbZ_ATLAS13"] = boost::factory<Hobs_gg_H3_hZ_bbZ_ATLAS13*>();
4730  obsThFactory["Hobs_bb_H3_hZ_bbZ_ATLAS13"] = boost::factory<Hobs_bb_H3_hZ_bbZ_ATLAS13*>();
4731  obsThFactory["Hobs_gg_H3_hZ_bbZ_1_CMS13"] = boost::factory<Hobs_gg_H3_hZ_bbZ_1_CMS13*>();
4732  obsThFactory["Hobs_bb_H3_hZ_bbZ_1_CMS13"] = boost::factory<Hobs_bb_H3_hZ_bbZ_1_CMS13*>();
4733  obsThFactory["Hobs_gg_H3_hZ_bbZ_2_CMS13"] = boost::factory<Hobs_gg_H3_hZ_bbZ_2_CMS13*>();
4734  obsThFactory["Hobs_bb_H3_hZ_bbZ_2_CMS13"] = boost::factory<Hobs_bb_H3_hZ_bbZ_2_CMS13*>();
4735  obsThFactory["Hobs_pp_H3_H1Z_bbll_CMS8"] = boost::factory<Hobs_pp_H3_H1Z_bbll_CMS8*>();
4736  obsThFactory["Hobs_pp_H1_H3Z_bbll_CMS8"] = boost::factory<Hobs_pp_H1_H3Z_bbll_CMS8*>();
4737  obsThFactory["Hobs_pp_H5_H3Z_bbll_CMS8"] = boost::factory<Hobs_pp_H5_H3Z_bbll_CMS8*>();
4738  obsThFactory["Hobs_gg_H3_H1Z_bbll_ATLAS13"] = boost::factory<Hobs_gg_H3_H1Z_bbll_ATLAS13*>();
4739  obsThFactory["Hobs_bb_H3_H1Z_bbll_ATLAS13"] = boost::factory<Hobs_bb_H3_H1Z_bbll_ATLAS13*>();
4740  obsThFactory["Hobs_pp_H3pm_taunu_ATLAS8"] = boost::factory<Hobs_pp_H3pm_taunu_ATLAS8*>();
4741  obsThFactory["Hobs_pp_H3p_taunu_CMS8"] = boost::factory<Hobs_pp_H3p_taunu_CMS8*>();
4742  obsThFactory["Hobs_pp_H3pm_taunu_ATLAS13"] = boost::factory<Hobs_pp_H3pm_taunu_ATLAS13*>();
4743  obsThFactory["Hobs_pp_H3pm_taunu_CMS13"] = boost::factory<Hobs_pp_H3pm_taunu_CMS13*>();
4744  obsThFactory["Hobs_pp_H3pm_tb_ATLAS8"] = boost::factory<Hobs_pp_H3pm_tb_ATLAS8*>();
4745  obsThFactory["Hobs_pp_H3p_tb_CMS8"] = boost::factory<Hobs_pp_H3p_tb_CMS8*>();
4746  obsThFactory["Hobs_pp_H3pm_tb_ATLAS13"] = boost::factory<Hobs_pp_H3pm_tb_ATLAS13*>();
4747  obsThFactory["Hobs_WZ_H5pm_WZ_qqll_ATLAS8"] = boost::factory<Hobs_WZ_H5pm_WZ_qqll_ATLAS8*>();
4748  obsThFactory["Hobs_WZ_H5pm_WZ_lnull_ATLAS13"] = boost::factory<Hobs_WZ_H5pm_WZ_lnull_ATLAS13*>();
4749  obsThFactory["Robs_WZ_H5pm_WZ_lnull_ATLAS13"] = boost::factory<Robs_WZ_H5pm_WZ_lnull_ATLAS13*>();
4750  obsThFactory["Hobs_WZ_H5pm_WZ_lnull_1_CMS13"] = boost::factory<Hobs_WZ_H5pm_WZ_lnull_1_CMS13*>();
4751  obsThFactory["Hobs_WZ_H5pm_WZ_lnull_2_CMS13"] = boost::factory<Hobs_WZ_H5pm_WZ_lnull_2_CMS13*>();
4752  obsThFactory["Hobs_pp_H5ppmmH5mmpp_eeee_ATLAS8"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_eeee_ATLAS8*>();
4753  obsThFactory["Hobs_pp_H5ppmmH5mmpp_emuemu_ATLAS8"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_emuemu_ATLAS8*>();
4754  obsThFactory["Hobs_pp_H5ppmmH5mmpp_mumumumu_ATLAS8"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_mumumumu_ATLAS8*>();
4755  obsThFactory["Hobs_pp_H5ppmmH5mmpp_llll_ATLAS13"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_llll_ATLAS13*>();
4756  obsThFactory["Hobs_pp_H5ppmmH5mmpp_WWWW_ATLAS13"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_WWWW_ATLAS13*>();
4757  obsThFactory["Hobs_VV_H5ppmm_WW_jjll_CMS8"] = boost::factory<Hobs_VV_H5ppmm_WW_jjll_CMS8*>();
4758  obsThFactory["Hobs_VV_H5ppmm_WW_jjll_CMS13"] = boost::factory<Hobs_VV_H5ppmm_WW_jjll_CMS13*>();
4759  obsThFactory["log10_tt_H1_tt_TH13"] = boost::factory<log10_tt_H1_tt_TH13*>();
4760  obsThFactory["log10_bb_H1_tt_TH13"] = boost::factory<log10_bb_H1_tt_TH13*>();
4761  obsThFactory["log10_tt_H3_tt_TH13"] = boost::factory<log10_tt_H3_tt_TH13*>();
4762  obsThFactory["log10_bb_H3_tt_TH13"] = boost::factory<log10_bb_H3_tt_TH13*>();
4763  obsThFactory["log10_bb_H1_bb_TH8"] = boost::factory<log10_bb_H1_bb_TH8*>();
4764  obsThFactory["log10_gg_H1_bb_TH8"] = boost::factory<log10_gg_H1_bb_TH8*>();
4765  obsThFactory["log10_pp_H1_bb_TH13"] = boost::factory<log10_pp_H1_bb_TH13*>();
4766  obsThFactory["log10_bb_H1_bb_TH13"] = boost::factory<log10_bb_H1_bb_TH13*>();
4767  obsThFactory["log10_bb_H3_bb_TH8"] = boost::factory<log10_bb_H3_bb_TH8*>();
4768  obsThFactory["log10_gg_H3_bb_TH8"] = boost::factory<log10_gg_H3_bb_TH8*>();
4769  obsThFactory["log10_pp_H3_bb_TH13"] = boost::factory<log10_pp_H3_bb_TH13*>();
4770  obsThFactory["log10_bb_H3_bb_TH13"] = boost::factory<log10_bb_H3_bb_TH13*>();
4771  obsThFactory["log10_gg_H1_tautau_TH8"] = boost::factory<log10_gg_H1_tautau_TH8*>();
4772  obsThFactory["log10_bb_H1_tautau_TH8"] = boost::factory<log10_bb_H1_tautau_TH8*>();
4773  obsThFactory["log10_gg_H1_tautau_TH13"] = boost::factory<log10_gg_H1_tautau_TH13*>();
4774  obsThFactory["log10_bb_H1_tautau_TH13"] = boost::factory<log10_bb_H1_tautau_TH13*>();
4775  obsThFactory["log10_gg_H3_tautau_TH8"] = boost::factory<log10_gg_H3_tautau_TH8*>();
4776  obsThFactory["log10_bb_H3_tautau_TH8"] = boost::factory<log10_bb_H3_tautau_TH8*>();
4777  obsThFactory["log10_gg_H3_tautau_TH13"] = boost::factory<log10_gg_H3_tautau_TH13*>();
4778  obsThFactory["log10_bb_H3_tautau_TH13"] = boost::factory<log10_bb_H3_tautau_TH13*>();
4779  obsThFactory["log10_gg_H1_gaga_TH8"] = boost::factory<log10_gg_H1_gaga_TH8*>();
4780  obsThFactory["log10_pp_H1_gaga_TH13"] = boost::factory<log10_pp_H1_gaga_TH13*>();
4781  obsThFactory["log10_gg_H1_gaga_TH13"] = boost::factory<log10_gg_H1_gaga_TH13*>();
4782  obsThFactory["log10_gg_H3_gaga_TH8"] = boost::factory<log10_gg_H3_gaga_TH8*>();
4783  obsThFactory["log10_pp_H3_gaga_TH13"] = boost::factory<log10_pp_H3_gaga_TH13*>();
4784  obsThFactory["log10_gg_H3_gaga_TH13"] = boost::factory<log10_gg_H3_gaga_TH13*>();
4785  obsThFactory["log10_pp_H5_gaga_TH13"] = boost::factory<log10_pp_H5_gaga_TH13*>();
4786  obsThFactory["log10_pp_H1_Zga_llga_TH8"] = boost::factory<log10_pp_H1_Zga_llga_TH8*>();
4787  obsThFactory["log10_gg_H1_Zga_TH13"] = boost::factory<log10_gg_H1_Zga_TH13*>();
4788  obsThFactory["log10_pp_H3_Zga_llga_TH8"] = boost::factory<log10_pp_H3_Zga_llga_TH8*>();
4789  obsThFactory["log10_gg_H3_Zga_TH13"] = boost::factory<log10_gg_H3_Zga_TH13*>();
4790  obsThFactory["log10_pp_H5_Zga_llga_TH8"] = boost::factory<log10_pp_H5_Zga_llga_TH8*>();
4791  obsThFactory["log10_gg_H1_ZZ_TH8"] = boost::factory<log10_gg_H1_ZZ_TH8*>();
4792  obsThFactory["log10_VV_H1_ZZ_TH8"] = boost::factory<log10_VV_H1_ZZ_TH8*>();
4793  obsThFactory["log10_gg_H1_ZZ_TH13"] = boost::factory<log10_gg_H1_ZZ_TH13*>();
4794  obsThFactory["log10_VV_H1_ZZ_TH13"] = boost::factory<log10_VV_H1_ZZ_TH13*>();
4795  obsThFactory["log10_pp_H1_ZZ_TH13"] = boost::factory<log10_pp_H1_ZZ_TH13*>();
4796  obsThFactory["log10_VV_H5_ZZ_TH8"] = boost::factory<log10_VV_H5_ZZ_TH8*>();
4797  obsThFactory["log10_VV_H5_ZZ_TH13"] = boost::factory<log10_VV_H5_ZZ_TH13*>();
4798  obsThFactory["log10_pp_H5_ZZ_TH13"] = boost::factory<log10_pp_H5_ZZ_TH13*>();
4799  obsThFactory["log10_gg_H1_WW_TH8"] = boost::factory<log10_gg_H1_WW_TH8*>();
4800  obsThFactory["log10_VV_H1_WW_TH8"] = boost::factory<log10_VV_H1_WW_TH8*>();
4801  obsThFactory["log10_gg_H1_WW_TH13"] = boost::factory<log10_gg_H1_WW_TH13*>();
4802  obsThFactory["log10_VV_H1_WW_TH13"] = boost::factory<log10_VV_H1_WW_TH13*>();
4803  obsThFactory["log10_ggVV_H1_WW_lnulnu_TH13"] = boost::factory<log10_ggVV_H1_WW_lnulnu_TH13*>();
4804  obsThFactory["log10_pp_H1_WW_TH13"] = boost::factory<log10_pp_H1_WW_TH13*>();
4805  obsThFactory["log10_VV_H5_WW_TH8"] = boost::factory<log10_VV_H5_WW_TH8*>();
4806  obsThFactory["log10_VV_H5_WW_TH13"] = boost::factory<log10_VV_H5_WW_TH13*>();
4807  obsThFactory["log10_ggVV_H5_WW_lnulnu_TH13"] = boost::factory<log10_ggVV_H5_WW_lnulnu_TH13*>();
4808  obsThFactory["log10_pp_H5_WW_TH13"] = boost::factory<log10_pp_H5_WW_TH13*>();
4809  obsThFactory["log10_pp_H1_VV_TH8"] = boost::factory<log10_pp_H1_VV_TH8*>();
4810  obsThFactory["log10_mu_pp_H1_VV_TH8"] = boost::factory<log10_mu_pp_H1_VV_TH8*>();
4811  obsThFactory["log10_pp_H1_VV_TH13"] = boost::factory<log10_pp_H1_VV_TH13*>();
4812  obsThFactory["log10_pp_H5_VV_TH8"] = boost::factory<log10_pp_H5_VV_TH8*>();
4813  obsThFactory["log10_mu_pp_H5_VV_TH8"] = boost::factory<log10_mu_pp_H5_VV_TH8*>();
4814  obsThFactory["log10_pp_H5_VV_TH13"] = boost::factory<log10_pp_H5_VV_TH13*>();
4815  obsThFactory["log10_gg_H1_hh_TH8"] = boost::factory<log10_gg_H1_hh_TH8*>();
4816  obsThFactory["log10_pp_H1_hh_TH8"] = boost::factory<log10_pp_H1_hh_TH8*>();
4817  obsThFactory["log10_pp_H1_hh_bbbb_TH8"] = boost::factory<log10_pp_H1_hh_bbbb_TH8*>();
4818  obsThFactory["log10_pp_H1_hh_gagabb_TH8"] = boost::factory<log10_pp_H1_hh_gagabb_TH8*>();
4819  obsThFactory["log10_gg_H1_hh_bbtautau_TH8"] = boost::factory<log10_gg_H1_hh_bbtautau_TH8*>();
4820  obsThFactory["log10_pp_H1_hh_TH13"] = boost::factory<log10_pp_H1_hh_TH13*>();
4821  obsThFactory["log10_gg_H1_hh_TH13"] = boost::factory<log10_gg_H1_hh_TH13*>();
4822  obsThFactory["log10_pp_H1_hh_bbbb_TH13"] = boost::factory<log10_pp_H1_hh_bbbb_TH13*>();
4823  obsThFactory["log10_gg_H1_hh_bbbb_TH13"] = boost::factory<log10_gg_H1_hh_bbbb_TH13*>();
4824  obsThFactory["log10_pp_H1_hh_gagabb_TH13"] = boost::factory<log10_pp_H1_hh_gagabb_TH13*>();
4825  obsThFactory["log10_pp_H1_hh_bbtautau_TH13"] = boost::factory<log10_pp_H1_hh_bbtautau_TH13*>();
4826  obsThFactory["log10_pp_H1_hh_bblnulnu_TH13"] = boost::factory<log10_pp_H1_hh_bblnulnu_TH13*>();
4827  obsThFactory["log10_gg_H1_hh_gagaWW_TH13"] = boost::factory<log10_gg_H1_hh_gagaWW_TH13*>();
4828  obsThFactory["log10_gg_H3_hZ_bbZ_TH8"] = boost::factory<log10_gg_H3_hZ_bbZ_TH8*>();
4829  obsThFactory["log10_gg_H3_hZ_bbll_TH8"] = boost::factory<log10_gg_H3_hZ_bbll_TH8*>();
4830  obsThFactory["log10_gg_H3_hZ_tautauZ_TH8"] = boost::factory<log10_gg_H3_hZ_tautauZ_TH8*>();
4831  obsThFactory["log10_gg_H3_hZ_tautaull_TH8"] = boost::factory<log10_gg_H3_hZ_tautaull_TH8*>();
4832  obsThFactory["log10_gg_H3_hZ_bbZ_TH13"] = boost::factory<log10_gg_H3_hZ_bbZ_TH13*>();
4833  obsThFactory["log10_bb_H3_hZ_bbZ_TH13"] = boost::factory<log10_bb_H3_hZ_bbZ_TH13*>();
4834  obsThFactory["log10_pp_H3_H1Z_bbll_TH8"] = boost::factory<log10_pp_H3_H1Z_bbll_TH8*>();
4835  obsThFactory["log10_pp_H3_H5Z_bbll_TH8"] = boost::factory<log10_pp_H3_H5Z_bbll_TH8*>();
4836  obsThFactory["log10_pp_H1_H3Z_bbll_TH8"] = boost::factory<log10_pp_H1_H3Z_bbll_TH8*>();
4837  obsThFactory["log10_pp_H5_H3Z_bbll_TH8"] = boost::factory<log10_pp_H5_H3Z_bbll_TH8*>();
4838  obsThFactory["log10_pp_H3pm_taunu_TH8"] = boost::factory<log10_pp_H3pm_taunu_TH8*>();
4839  obsThFactory["log10_pp_H3p_taunu_TH8"] = boost::factory<log10_pp_H3p_taunu_TH8*>();
4840  obsThFactory["log10_pp_H3pm_taunu_TH13"] = boost::factory<log10_pp_H3pm_taunu_TH13*>();
4841  obsThFactory["log10_pp_H3pm_tb_TH8"] = boost::factory<log10_pp_H3pm_tb_TH8*>();
4842  obsThFactory["log10_pp_H3p_tb_TH8"] = boost::factory<log10_pp_H3p_tb_TH8*>();
4843  obsThFactory["log10_pp_H3pm_tb_TH13"] = boost::factory<log10_pp_H3pm_tb_TH13*>();
4844  obsThFactory["log10_WZ_H5pm_WZ_TH8"] = boost::factory<log10_WZ_H5pm_WZ_TH8*>();
4845  obsThFactory["log10_WZ_H5pm_WZ_TH13"] = boost::factory<log10_WZ_H5pm_WZ_TH13*>();
4846  obsThFactory["log10_pp_H5ppmmH5mmpp_TH8"] = boost::factory<log10_pp_H5ppmmH5mmpp_TH8*>();
4847  obsThFactory["log10_pp_H5ppmmH5mmpp_TH13"] = boost::factory<log10_pp_H5ppmmH5mmpp_TH13*>();
4848  obsThFactory["log10_pp_H5ppmmH5mmpp_WWWW_TH13"] = boost::factory<log10_pp_H5ppmmH5mmpp_WWWW_TH13*>();
4849  obsThFactory["log10_VV_H5ppmm_WW_TH8"] = boost::factory<log10_VV_H5ppmm_WW_TH8*>();
4850  obsThFactory["log10_VV_H5ppmm_WW_TH13"] = boost::factory<log10_VV_H5ppmm_WW_TH13*>();
4851 
4852 }
4853 
4854 void ThObsFactory::addObsToFactory(const std::string name, boost::function<ThObservable*(const StandardModel&) > funct)
4855 {
4856  if (obsThFactory.find(name) == obsThFactory.end()) obsThFactory[name] = funct;
4857  else throw std::runtime_error("ERROR: Observable named: " + name + " already exists. Please give a different name to the user-defined observable " + name + ".");
4858 }
4859 
4860 ThObservable * ThObsFactory::CreateThMethod(const std::string& name, StandardModel& model) const
4861 {
4862  if (model.isModelParam(name))
4863  return new ParamObs(model, name);
4864  if (obsThFactory.find(name) == obsThFactory.end())
4865  throw std::runtime_error("ERROR: Wrong observable " + name + " passed to ThObsFactory.\nIf " + name + " is a parameter that is specific to an observable, please list it after the observable in the configuration file.\n");
4866  ThObservable * myThObs = obsThFactory.at(name)(model);
4867  if (!myThObs->getParametersForObservable().empty()) model.addParameters(myThObs->getParametersForObservable());
4868  return (myThObs);
4869 }
QCD::TAU
Definition: QCD.h:316
THDMObservables.h
NP_couplings.h
GeorgiMachacekObservables.h
QCD::BOTTOM
Definition: QCD.h:329
MtMSbar.h
THDMWObservables.h
NPSMEFT6dtopquark.h
QCD::RHO_P
Definition: QCD.h:352
QCD::B_S
Definition: QCD.h:345
Model::isModelParam
bool isModelParam(std::string name) const
Definition: Model.h:173
ThObservable.h
HiggsThObservables.h
LO
Definition: OrderScheme.h:33
QCD::UP
Definition: QCD.h:324
QCD::D_P
Definition: QCD.h:342
QCD::addParameters
void addParameters(std::vector< std::string > params_i)
A method to add parameters that are specific to only one set of observables.
Definition: QCD.cpp:182
QCD::CHARM
Definition: QCD.h:326
QCD::ELECTRON
Definition: QCD.h:312
StandardModel
A model class for the Standard Model.
Definition: StandardModel.h:474
alpha_s.h
ThObsFactory.h
FlavourObservables.h
QCD::RHO
Definition: QCD.h:351
QCD::K_star
Definition: QCD.h:348
QCD::B_P
Definition: QCD.h:344
QCD::TOP
Definition: QCD.h:328
QCD::OMEGA
Definition: QCD.h:353
ParamObs.h
ParamObs
A class for setting a parameter as an observable.
Definition: ParamObs.h:22
NNLO
Definition: OrderScheme.h:35
QCD::B_C
Definition: QCD.h:346
QCD::K_P
Definition: QCD.h:340
ThObsFactory::addObsToFactory
void addObsToFactory(const std::string name, boost::function< ThObservable *(const StandardModel &) >)
Definition: ThObsFactory.cpp:4854
ThObsFactory::ThObsFactory
ThObsFactory()
Definition: ThObsFactory.cpp:29
ThObservable::getParametersForObservable
const std::vector< std::string > getParametersForObservable()
A get method to get the parameters for the specific observable.
Definition: ThObservable.h:118
GeneralTHDMObservables.h
QCD::D_star_P
Definition: QCD.h:350
LeptonFlavourObservables.h
EWObservables.h
A header file for the observables defined in EW module.
ThObservable
A class for a model prediction of an observable.
Definition: ThObservable.h:25
QCD::K_star_P
Definition: QCD.h:349
QCD::K_0
Definition: QCD.h:339
QCD::STRANGE
Definition: QCD.h:327
DiBosonThObservables.h
QCD::PHI
Definition: QCD.h:347
QCD::B_D
Definition: QCD.h:343
NLO
Definition: OrderScheme.h:34
ThObsFactory::obsThFactory
std::map< std::string, boost::function< ThObservable *(const StandardModel &) > > obsThFactory
Definition: ThObsFactory.h:50
SUSYObservables.h
OptimizedObservablesSMEFTd6.h
FULLNNLO
Definition: OrderScheme.h:38
QCD::DOWN
Definition: QCD.h:325
FULLNLO
Definition: OrderScheme.h:37
ThObsFactory::CreateThMethod
ThObservable * CreateThMethod(const std::string &name, StandardModel &model) const
This method checks for the existence of an observable of a specific name in the map thobs and returns...
Definition: ThObsFactory.cpp:4860
QCD::MU
Definition: QCD.h:314