a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
ThObsFactory Class Reference

A class for. More...

#include <ThObsFactory.h>

Detailed Description

A class for.

Author
HEPfit Collaboration
Examples
EventGeneration.cpp, libmode_config.cpp, libmode_header.cpp, MCMC.cpp, and myModel_MCMC.cpp.

Definition at line 26 of file ThObsFactory.h.

Public Member Functions

void addObsToFactory (const std::string name, boost::function< ThObservable *(const StandardModel &) >)
 
ThObservableCreateThMethod (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 a pointer to the particular ThObservable. More...
 
 ThObsFactory ()
 
 ThObsFactory (const ThObsFactory &orig)
 
virtual ~ThObsFactory ()
 

Private Attributes

std::map< std::string, boost::function< ThObservable *(const StandardModel &) > > obsThFactory
 

Constructor & Destructor Documentation

◆ ThObsFactory() [1/2]

ThObsFactory::ThObsFactory ( )

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

< the center-of-mass energy in TeV

Definition at line 29 of file ThObsFactory.cpp.

30 {
31  //----- Energies of different colliders -----
32  const double sqrt_s_LEP2_WWcos1 = 0.18266;
33  const double sqrt_s_LEP2_WWcos2 = 0.18909;
34  const double sqrt_s_LEP2_WWcos3 = 0.19838;
35  const double sqrt_s_LEP2_WWcos4 = 0.20592;
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;
62  const double sqrt_s_LEP2_172 = 0.1721;
63  const double sqrt_s_LEP2_183 = 0.1827;
64  const double sqrt_s_LEP2_189 = 0.1886;
65  const double sqrt_s_LEP2_192 = 0.1916;
66  const double sqrt_s_LEP2_196 = 0.1955;
67  const double sqrt_s_LEP2_200 = 0.1995;
68  const double sqrt_s_LEP2_202 = 0.2016;
69  const double sqrt_s_LEP2_205 = 0.2049;
70  const double sqrt_s_LEP2_207 = 0.2066;
71  //
72  const double sqrt_s_LHC7 = 7.0;
73  const double sqrt_s_LHC8 = 8.0;
74  const double sqrt_s_LHC13 = 13.0;
75  const double sqrt_s_LHC14 = 14.0;
76  const double sqrt_s_LHC27 = 27.0;
77  const double sqrt_s_FCC100 = 100.0;
78  const double sqrt_s_TeV = 1.96;
79  //
80  const double sqrt_s_leptcoll_125 = .125;
81  const double sqrt_s_leptcoll_161 = .161;
82  const double sqrt_s_leptcoll_240 = .240;
83  const double sqrt_s_leptcoll_250 = .250;
84  const double sqrt_s_leptcoll_350 = .350;
85  const double sqrt_s_leptcoll_365 = .365;
86  const double sqrt_s_leptcoll_380 = .380;
87  const double sqrt_s_leptcoll_500 = .500;
88  const double sqrt_s_leptcoll_1000 = 1.0;
89  const double sqrt_s_leptcoll_1400 = 1.4;
90  const double sqrt_s_leptcoll_1500 = 1.5;
91  const double sqrt_s_leptcoll_3000 = 3.0;
92  //
93  const double sqrt_s_LHeC_1_3 = 1.3;
94  const double sqrt_s_LHeC_1_8 = 1.8;
95  //
96  const double sqrt_s_FCCep_3_5 = 3.5;
97  const double sqrt_s_FCCep_5 = 5.0;
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["mueeWBFcc250_p80_m30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1558 // obsThFactory["mueeWBFcc250_m80_p30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1559 // obsThFactory["mueeWBFcc250_p80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1560 // obsThFactory["mueeWBFcc250_m80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1561  //
1562 // obsThFactory["mueeWBFcc350_p80_m30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1563 // obsThFactory["mueeWBFcc350_m80_p30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1564 // obsThFactory["mueeWBFcc350_p80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1565 // obsThFactory["mueeWBFcc350_m80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1566  //
1567 // obsThFactory["mueeWBFcc380_p80_m30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1568 // obsThFactory["mueeWBFcc380_m80_p30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1569 // obsThFactory["mueeWBFcc380_p80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1570 // obsThFactory["mueeWBFcc380_m80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1571  //
1572 // obsThFactory["mueeWBFcc500_p80_m30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1573 // obsThFactory["mueeWBFcc500_m80_p30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1574 // obsThFactory["mueeWBFcc500_p80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1575 // obsThFactory["mueeWBFcc500_m80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1576  //
1577 // obsThFactory["mueeWBFcc1000_p80_m30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1578 // obsThFactory["mueeWBFcc1000_m80_p30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1579 // obsThFactory["mueeWBFcc1000_p80_m20"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1580 // obsThFactory["mueeWBFcc1000_m80_p20"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1581 // obsThFactory["mueeWBFcc1000_p80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1582 // obsThFactory["mueeWBFcc1000_m80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1583  //
1584 // obsThFactory["mueeWBFcc1400_p80_m30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1585 // obsThFactory["mueeWBFcc1400_m80_p30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1586 // obsThFactory["mueeWBFcc1400_p80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1587 // obsThFactory["mueeWBFcc1400_m80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1588  //
1589 // obsThFactory["mueeWBFcc1500_p80_m30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1590 // obsThFactory["mueeWBFcc1500_m80_p30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1591 // obsThFactory["mueeWBFcc1500_p80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1592 // obsThFactory["mueeWBFcc1500_m80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1593  //
1594 // obsThFactory["mueeWBFcc3000_p80_m30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1595 // obsThFactory["mueeWBFcc3000_m80_p30"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1596 // obsThFactory["mueeWBFcc3000_p80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1597 // obsThFactory["mueeWBFcc3000_m80_0"] = boost::bind(boost::factory<mueeWBFccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1598  //
1599  obsThFactory["mueeWBFgg240"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_240);
1600  obsThFactory["mueeWBFgg250"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_250);
1601  obsThFactory["mueeWBFgg350"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_350);
1602  obsThFactory["mueeWBFgg365"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_365);
1603  obsThFactory["mueeWBFgg380"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_380);
1604  obsThFactory["mueeWBFgg500"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_500);
1605  obsThFactory["mueeWBFgg1000"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_1000);
1606  obsThFactory["mueeWBFgg1400"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_1400);
1607  obsThFactory["mueeWBFgg1500"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_1500);
1608  obsThFactory["mueeWBFgg3000"] = boost::bind(boost::factory<mueeWBFgg*>(), _1, sqrt_s_leptcoll_3000);
1609  //
1610 // obsThFactory["mueeWBFgg250_p80_m30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1611 // obsThFactory["mueeWBFgg250_m80_p30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1612 // obsThFactory["mueeWBFgg250_p80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1613 // obsThFactory["mueeWBFgg250_m80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1614  //
1615 // obsThFactory["mueeWBFgg350_p80_m30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1616 // obsThFactory["mueeWBFgg350_m80_p30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1617 // obsThFactory["mueeWBFgg350_p80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1618 // obsThFactory["mueeWBFgg350_m80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1619  //
1620 // obsThFactory["mueeWBFgg380_p80_m30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1621 // obsThFactory["mueeWBFgg380_m80_p30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1622 // obsThFactory["mueeWBFgg380_p80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1623 // obsThFactory["mueeWBFgg380_m80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1624  //
1625 // obsThFactory["mueeWBFgg500_p80_m30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1626 // obsThFactory["mueeWBFgg500_m80_p30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1627 // obsThFactory["mueeWBFgg500_p80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1628 // obsThFactory["mueeWBFgg500_m80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1629  //
1630 // obsThFactory["mueeWBFgg1000_p80_m30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1631 // obsThFactory["mueeWBFgg1000_m80_p30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1632 // obsThFactory["mueeWBFgg1000_p80_m20"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1633 // obsThFactory["mueeWBFgg1000_m80_p20"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1634 // obsThFactory["mueeWBFgg1000_p80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1635 // obsThFactory["mueeWBFgg1000_m80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1636  //
1637 // obsThFactory["mueeWBFgg1400_p80_m30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1638 // obsThFactory["mueeWBFgg1400_m80_p30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1639 // obsThFactory["mueeWBFgg1400_p80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1640 // obsThFactory["mueeWBFgg1400_m80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1641  //
1642 // obsThFactory["mueeWBFgg1500_p80_m30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1643 // obsThFactory["mueeWBFgg1500_m80_p30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1644 // obsThFactory["mueeWBFgg1500_p80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1645 // obsThFactory["mueeWBFgg1500_m80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1646  //
1647 // obsThFactory["mueeWBFgg3000_p80_m30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1648 // obsThFactory["mueeWBFgg3000_m80_p30"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1649 // obsThFactory["mueeWBFgg3000_p80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1650 // obsThFactory["mueeWBFgg3000_m80_0"] = boost::bind(boost::factory<mueeWBFggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1651  //
1652  obsThFactory["mueeWBFWW240"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_240);
1653  obsThFactory["mueeWBFWW250"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_250);
1654  obsThFactory["mueeWBFWW350"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_350);
1655  obsThFactory["mueeWBFWW365"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_365);
1656  obsThFactory["mueeWBFWW380"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_380);
1657  obsThFactory["mueeWBFWW500"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_500);
1658  obsThFactory["mueeWBFWW1000"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_1000);
1659  obsThFactory["mueeWBFWW1400"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_1400);
1660  obsThFactory["mueeWBFWW1500"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_1500);
1661  obsThFactory["mueeWBFWW3000"] = boost::bind(boost::factory<mueeWBFWW*>(), _1, sqrt_s_leptcoll_3000);
1662  //
1663 // obsThFactory["mueeWBFWW250_p80_m30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1664 // obsThFactory["mueeWBFWW250_m80_p30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1665 // obsThFactory["mueeWBFWW250_p80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1666 // obsThFactory["mueeWBFWW250_m80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1667  //
1668 // obsThFactory["mueeWBFWW350_p80_m30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1669 // obsThFactory["mueeWBFWW350_m80_p30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1670 // obsThFactory["mueeWBFWW350_p80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1671 // obsThFactory["mueeWBFWW350_m80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1672  //
1673 // obsThFactory["mueeWBFWW380_p80_m30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1674 // obsThFactory["mueeWBFWW380_m80_p30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1675 // obsThFactory["mueeWBFWW380_p80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1676 // obsThFactory["mueeWBFWW380_m80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1677  //
1678 // obsThFactory["mueeWBFWW500_p80_m30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1679 // obsThFactory["mueeWBFWW500_m80_p30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1680 // obsThFactory["mueeWBFWW500_p80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1681 // obsThFactory["mueeWBFWW500_m80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1682  //
1683 // obsThFactory["mueeWBFWW1000_p80_m30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1684 // obsThFactory["mueeWBFWW1000_m80_p30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1685 // obsThFactory["mueeWBFWW1000_p80_m20"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1686 // obsThFactory["mueeWBFWW1000_m80_p20"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1687 // obsThFactory["mueeWBFWW1000_p80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1688 // obsThFactory["mueeWBFWW1000_m80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1689  //
1690 // obsThFactory["mueeWBFWW1400_p80_m30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1691 // obsThFactory["mueeWBFWW1400_m80_p30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1692 // obsThFactory["mueeWBFWW1400_p80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1693 // obsThFactory["mueeWBFWW1400_m80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1694  //
1695 // obsThFactory["mueeWBFWW1500_p80_m30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1696 // obsThFactory["mueeWBFWW1500_m80_p30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1697 // obsThFactory["mueeWBFWW1500_p80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1698 // obsThFactory["mueeWBFWW1500_m80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1699  //
1700 // obsThFactory["mueeWBFWW3000_p80_m30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1701 // obsThFactory["mueeWBFWW3000_m80_p30"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1702 // obsThFactory["mueeWBFWW3000_p80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1703 // obsThFactory["mueeWBFWW3000_m80_0"] = boost::bind(boost::factory<mueeWBFWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1704  //
1705  obsThFactory["mueeWBFtautau240"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_240);
1706  obsThFactory["mueeWBFtautau250"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_250);
1707  obsThFactory["mueeWBFtautau350"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_350);
1708  obsThFactory["mueeWBFtautau365"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_365);
1709  obsThFactory["mueeWBFtautau380"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_380);
1710  obsThFactory["mueeWBFtautau500"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_500);
1711  obsThFactory["mueeWBFtautau1000"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_1000);
1712  obsThFactory["mueeWBFtautau1400"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_1400);
1713  obsThFactory["mueeWBFtautau1500"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_1500);
1714  obsThFactory["mueeWBFtautau3000"] = boost::bind(boost::factory<mueeWBFtautau*>(), _1, sqrt_s_leptcoll_3000);
1715  //
1716 // obsThFactory["mueeWBFtautau250_p80_m30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1717 // obsThFactory["mueeWBFtautau250_m80_p30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1718 // obsThFactory["mueeWBFtautau250_p80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1719 // obsThFactory["mueeWBFtautau250_m80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1720  //
1721 // obsThFactory["mueeWBFtautau350_p80_m30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1722 // obsThFactory["mueeWBFtautau350_m80_p30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1723 // obsThFactory["mueeWBFtautau350_p80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1724 // obsThFactory["mueeWBFtautau350_m80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1725  //
1726 // obsThFactory["mueeWBFtautau380_p80_m30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1727 // obsThFactory["mueeWBFtautau380_m80_p30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1728 // obsThFactory["mueeWBFtautau380_p80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1729 // obsThFactory["mueeWBFtautau380_m80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1730  //
1731 // obsThFactory["mueeWBFtautau500_p80_m30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1732 // obsThFactory["mueeWBFtautau500_m80_p30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1733 // obsThFactory["mueeWBFtautau500_p80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1734 // obsThFactory["mueeWBFtautau500_m80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1735  //
1736 // obsThFactory["mueeWBFtautau1000_p80_m30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1737 // obsThFactory["mueeWBFtautau1000_m80_p30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1738 // obsThFactory["mueeWBFtautau1000_p80_m20"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1739 // obsThFactory["mueeWBFtautau1000_m80_p20"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1740 // obsThFactory["mueeWBFtautau1000_p80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1741 // obsThFactory["mueeWBFtautau1000_m80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1742  //
1743 // obsThFactory["mueeWBFtautau1400_p80_m30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1744 // obsThFactory["mueeWBFtautau1400_m80_p30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1745 // obsThFactory["mueeWBFtautau1400_p80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1746 // obsThFactory["mueeWBFtautau1400_m80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1747  //
1748 // obsThFactory["mueeWBFtautau1500_p80_m30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1749 // obsThFactory["mueeWBFtautau1500_m80_p30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1750 // obsThFactory["mueeWBFtautau1500_p80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1751 // obsThFactory["mueeWBFtautau1500_m80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1752  //
1753 // obsThFactory["mueeWBFtautau3000_p80_m30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1754 // obsThFactory["mueeWBFtautau3000_m80_p30"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1755 // obsThFactory["mueeWBFtautau3000_p80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1756 // obsThFactory["mueeWBFtautau3000_m80_0"] = boost::bind(boost::factory<mueeWBFtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1757  //
1758  obsThFactory["mueeWBFZZ240"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_240);
1759  obsThFactory["mueeWBFZZ250"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_250);
1760  obsThFactory["mueeWBFZZ350"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_350);
1761  obsThFactory["mueeWBFZZ365"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_365);
1762  obsThFactory["mueeWBFZZ380"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_380);
1763  obsThFactory["mueeWBFZZ500"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_500);
1764  obsThFactory["mueeWBFZZ1000"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_1000);
1765  obsThFactory["mueeWBFZZ1400"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_1400);
1766  obsThFactory["mueeWBFZZ1500"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_1500);
1767  obsThFactory["mueeWBFZZ3000"] = boost::bind(boost::factory<mueeWBFZZ*>(), _1, sqrt_s_leptcoll_3000);
1768  //
1769 // obsThFactory["mueeWBFZZ250_p80_m30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1770 // obsThFactory["mueeWBFZZ250_m80_p30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1771 // obsThFactory["mueeWBFZZ250_p80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1772 // obsThFactory["mueeWBFZZ250_m80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1773  //
1774 // obsThFactory["mueeWBFZZ350_p80_m30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1775 // obsThFactory["mueeWBFZZ350_m80_p30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1776 // obsThFactory["mueeWBFZZ350_p80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1777 // obsThFactory["mueeWBFZZ350_m80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1778  //
1779 // obsThFactory["mueeWBFZZ380_p80_m30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1780 // obsThFactory["mueeWBFZZ380_m80_p30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1781 // obsThFactory["mueeWBFZZ380_p80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1782 // obsThFactory["mueeWBFZZ380_m80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1783  //
1784 // obsThFactory["mueeWBFZZ500_p80_m30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1785 // obsThFactory["mueeWBFZZ500_m80_p30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1786 // obsThFactory["mueeWBFZZ500_p80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1787 // obsThFactory["mueeWBFZZ500_m80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1788  //
1789 // obsThFactory["mueeWBFZZ1000_p80_m30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1790 // obsThFactory["mueeWBFZZ1000_m80_p30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1791 // obsThFactory["mueeWBFZZ1000_p80_m20"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1792 // obsThFactory["mueeWBFZZ1000_m80_p20"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1793 // obsThFactory["mueeWBFZZ1000_p80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1794 // obsThFactory["mueeWBFZZ1000_m80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1795  //
1796 // obsThFactory["mueeWBFZZ1400_p80_m30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1797 // obsThFactory["mueeWBFZZ1400_m80_p30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1798 // obsThFactory["mueeWBFZZ1400_p80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1799 // obsThFactory["mueeWBFZZ1400_m80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1800  //
1801 // obsThFactory["mueeWBFZZ1500_p80_m30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1802 // obsThFactory["mueeWBFZZ1500_m80_p30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1803 // obsThFactory["mueeWBFZZ1500_p80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1804 // obsThFactory["mueeWBFZZ1500_m80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1805  //
1806 // obsThFactory["mueeWBFZZ3000_p80_m30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1807 // obsThFactory["mueeWBFZZ3000_m80_p30"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1808 // obsThFactory["mueeWBFZZ3000_p80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1809 // obsThFactory["mueeWBFZZ3000_m80_0"] = boost::bind(boost::factory<mueeWBFZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1810  //
1811  obsThFactory["mueeWBFZga240"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_240);
1812  obsThFactory["mueeWBFZga250"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_250);
1813  obsThFactory["mueeWBFZga350"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_350);
1814  obsThFactory["mueeWBFZga365"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_365);
1815  obsThFactory["mueeWBFZga380"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_380);
1816  obsThFactory["mueeWBFZga500"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_500);
1817  obsThFactory["mueeWBFZga1000"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_1000);
1818  obsThFactory["mueeWBFZga1400"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_1400);
1819  obsThFactory["mueeWBFZga1500"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_1500);
1820  obsThFactory["mueeWBFZga3000"] = boost::bind(boost::factory<mueeWBFZga*>(), _1, sqrt_s_leptcoll_3000);
1821  //
1822 // obsThFactory["mueeWBFZga250_p80_m30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1823 // obsThFactory["mueeWBFZga250_m80_p30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1824 // obsThFactory["mueeWBFZga250_p80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1825 // obsThFactory["mueeWBFZga250_m80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1826  //
1827 // obsThFactory["mueeWBFZga350_p80_m30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1828 // obsThFactory["mueeWBFZga350_m80_p30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1829 // obsThFactory["mueeWBFZga350_p80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1830 // obsThFactory["mueeWBFZga350_m80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1831  //
1832 // obsThFactory["mueeWBFZga380_p80_m30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1833 // obsThFactory["mueeWBFZga380_m80_p30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1834 // obsThFactory["mueeWBFZga380_p80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1835 // obsThFactory["mueeWBFZga380_m80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1836  //
1837 // obsThFactory["mueeWBFZga500_p80_m30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1838 // obsThFactory["mueeWBFZga500_m80_p30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1839 // obsThFactory["mueeWBFZga500_p80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1840 // obsThFactory["mueeWBFZga500_m80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1841  //
1842 // obsThFactory["mueeWBFZga1000_p80_m30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1843 // obsThFactory["mueeWBFZga1000_m80_p30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1844 // obsThFactory["mueeWBFZga1000_p80_m20"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1845 // obsThFactory["mueeWBFZga1000_m80_p20"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1846 // obsThFactory["mueeWBFZga1000_p80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1847 // obsThFactory["mueeWBFZga1000_m80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1848  //
1849 // obsThFactory["mueeWBFZga1400_p80_m30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1850 // obsThFactory["mueeWBFZga1400_m80_p30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1851 // obsThFactory["mueeWBFZga1400_p80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1852 // obsThFactory["mueeWBFZga1400_m80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1853  //
1854 // obsThFactory["mueeWBFZga1500_p80_m30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1855 // obsThFactory["mueeWBFZga1500_m80_p30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1856 // obsThFactory["mueeWBFZga1500_p80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1857 // obsThFactory["mueeWBFZga1500_m80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1858  //
1859 // obsThFactory["mueeWBFZga3000_p80_m30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1860 // obsThFactory["mueeWBFZga3000_m80_p30"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1861 // obsThFactory["mueeWBFZga3000_p80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1862 // obsThFactory["mueeWBFZga3000_m80_0"] = boost::bind(boost::factory<mueeWBFZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1863  //
1864  obsThFactory["mueeWBFgaga240"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_240);
1865  obsThFactory["mueeWBFgaga250"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_250);
1866  obsThFactory["mueeWBFgaga350"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_350);
1867  obsThFactory["mueeWBFgaga365"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_365);
1868  obsThFactory["mueeWBFgaga380"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_380);
1869  obsThFactory["mueeWBFgaga500"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_500);
1870  obsThFactory["mueeWBFgaga1000"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_1000);
1871  obsThFactory["mueeWBFgaga1400"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_1400);
1872  obsThFactory["mueeWBFgaga1500"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_1500);
1873  obsThFactory["mueeWBFgaga3000"] = boost::bind(boost::factory<mueeWBFgaga*>(), _1, sqrt_s_leptcoll_3000);
1874  //
1875 // obsThFactory["mueeWBFgaga250_p80_m30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1876 // obsThFactory["mueeWBFgaga250_m80_p30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1877 // obsThFactory["mueeWBFgaga250_p80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1878 // obsThFactory["mueeWBFgaga250_m80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1879  //
1880 // obsThFactory["mueeWBFgaga350_p80_m30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1881 // obsThFactory["mueeWBFgaga350_m80_p30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1882 // obsThFactory["mueeWBFgaga350_p80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1883 // obsThFactory["mueeWBFgaga350_m80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1884  //
1885 // obsThFactory["mueeWBFgaga380_p80_m30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1886 // obsThFactory["mueeWBFgaga380_m80_p30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1887 // obsThFactory["mueeWBFgaga380_p80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1888 // obsThFactory["mueeWBFgaga380_m80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1889  //
1890 // obsThFactory["mueeWBFgaga500_p80_m30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1891 // obsThFactory["mueeWBFgaga500_m80_p30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1892 // obsThFactory["mueeWBFgaga500_p80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1893 // obsThFactory["mueeWBFgaga500_m80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1894  //
1895 // obsThFactory["mueeWBFgaga1000_p80_m30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1896 // obsThFactory["mueeWBFgaga1000_m80_p30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1897 // obsThFactory["mueeWBFgaga1000_p80_m20"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1898 // obsThFactory["mueeWBFgaga1000_m80_p20"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1899 // obsThFactory["mueeWBFgaga1000_p80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1900 // obsThFactory["mueeWBFgaga1000_m80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1901  //
1902 // obsThFactory["mueeWBFgaga1400_p80_m30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1903 // obsThFactory["mueeWBFgaga1400_m80_p30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1904 // obsThFactory["mueeWBFgaga1400_p80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1905 // obsThFactory["mueeWBFgaga1400_m80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1906  //
1907 // obsThFactory["mueeWBFgaga1500_p80_m30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1908 // obsThFactory["mueeWBFgaga1500_m80_p30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1909 // obsThFactory["mueeWBFgaga1500_p80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1910 // obsThFactory["mueeWBFgaga1500_m80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1911  //
1912 // obsThFactory["mueeWBFgaga3000_p80_m30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1913 // obsThFactory["mueeWBFgaga3000_m80_p30"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1914 // obsThFactory["mueeWBFgaga3000_p80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1915 // obsThFactory["mueeWBFgaga3000_m80_0"] = boost::bind(boost::factory<mueeWBFgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1916  //
1917  obsThFactory["mueeWBFmumu240"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_240);
1918  obsThFactory["mueeWBFmumu250"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_250);
1919  obsThFactory["mueeWBFmumu350"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_350);
1920  obsThFactory["mueeWBFmumu365"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_365);
1921  obsThFactory["mueeWBFmumu380"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_380);
1922  obsThFactory["mueeWBFmumu500"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_500);
1923  obsThFactory["mueeWBFmumu1000"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_1000);
1924  obsThFactory["mueeWBFmumu1400"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_1400);
1925  obsThFactory["mueeWBFmumu1500"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_1500);
1926  obsThFactory["mueeWBFmumu3000"] = boost::bind(boost::factory<mueeWBFmumu*>(), _1, sqrt_s_leptcoll_3000);
1927  //
1928 // obsThFactory["mueeWBFmumu250_p80_m30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1929 // obsThFactory["mueeWBFmumu250_m80_p30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1930 // obsThFactory["mueeWBFmumu250_p80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1931 // obsThFactory["mueeWBFmumu250_m80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1932  //
1933 // obsThFactory["mueeWBFmumu350_p80_m30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1934 // obsThFactory["mueeWBFmumu350_m80_p30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1935 // obsThFactory["mueeWBFmumu350_p80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1936 // obsThFactory["mueeWBFmumu350_m80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1937  //
1938 // obsThFactory["mueeWBFmumu380_p80_m30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1939 // obsThFactory["mueeWBFmumu380_m80_p30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1940 // obsThFactory["mueeWBFmumu380_p80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1941 // obsThFactory["mueeWBFmumu380_m80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1942  //
1943 // obsThFactory["mueeWBFmumu500_p80_m30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1944 // obsThFactory["mueeWBFmumu500_m80_p30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1945 // obsThFactory["mueeWBFmumu500_p80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
1946 // obsThFactory["mueeWBFmumu500_m80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
1947  //
1948 // obsThFactory["mueeWBFmumu1000_p80_m30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
1949 // obsThFactory["mueeWBFmumu1000_m80_p30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
1950 // obsThFactory["mueeWBFmumu1000_p80_m20"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
1951 // obsThFactory["mueeWBFmumu1000_m80_p20"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
1952 // obsThFactory["mueeWBFmumu1000_p80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
1953 // obsThFactory["mueeWBFmumu1000_m80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
1954  //
1955 // obsThFactory["mueeWBFmumu1400_p80_m30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
1956 // obsThFactory["mueeWBFmumu1400_m80_p30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
1957 // obsThFactory["mueeWBFmumu1400_p80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
1958 // obsThFactory["mueeWBFmumu1400_m80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
1959  //
1960 // obsThFactory["mueeWBFmumu1500_p80_m30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
1961 // obsThFactory["mueeWBFmumu1500_m80_p30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
1962 // obsThFactory["mueeWBFmumu1500_p80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
1963 // obsThFactory["mueeWBFmumu1500_m80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
1964  //
1965 // obsThFactory["mueeWBFmumu3000_p80_m30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
1966 // obsThFactory["mueeWBFmumu3000_m80_p30"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
1967 // obsThFactory["mueeWBFmumu3000_p80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
1968 // obsThFactory["mueeWBFmumu3000_m80_0"] = boost::bind(boost::factory<mueeWBFmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
1969  //
1970  // vvH
1971  obsThFactory["mueeHvvbb240"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_240);
1972  obsThFactory["mueeHvvbb250"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_250);
1973  obsThFactory["mueeHvvbb350"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_350);
1974  obsThFactory["mueeHvvbb365"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_365);
1975  obsThFactory["mueeHvvbb380"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_380);
1976  obsThFactory["mueeHvvbb500"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_500);
1977  obsThFactory["mueeHvvbb1000"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_1000);
1978  obsThFactory["mueeHvvbb1400"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_1400);
1979  obsThFactory["mueeHvvbb1500"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_1500);
1980  obsThFactory["mueeHvvbb3000"] = boost::bind(boost::factory<mueeHvvbb*>(), _1, sqrt_s_leptcoll_3000);
1981  //
1982  obsThFactory["mueeHvvbb250_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
1983  obsThFactory["mueeHvvbb250_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
1984  obsThFactory["mueeHvvbb250_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
1985  obsThFactory["mueeHvvbb250_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
1986  //
1987  obsThFactory["mueeHvvbb350_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
1988  obsThFactory["mueeHvvbb350_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
1989  obsThFactory["mueeHvvbb350_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
1990  obsThFactory["mueeHvvbb350_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
1991  //
1992  obsThFactory["mueeHvvbb380_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
1993  obsThFactory["mueeHvvbb380_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
1994  obsThFactory["mueeHvvbb380_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
1995  obsThFactory["mueeHvvbb380_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
1996  //
1997  obsThFactory["mueeHvvbb500_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
1998  obsThFactory["mueeHvvbb500_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
1999  obsThFactory["mueeHvvbb500_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2000  obsThFactory["mueeHvvbb500_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2001  //
2002  obsThFactory["mueeHvvbb1000_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2003  obsThFactory["mueeHvvbb1000_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2004  obsThFactory["mueeHvvbb1000_p80_m20"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2005  obsThFactory["mueeHvvbb1000_m80_p20"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2006  obsThFactory["mueeHvvbb1000_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2007  obsThFactory["mueeHvvbb1000_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2008  //
2009  obsThFactory["mueeHvvbb1400_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2010  obsThFactory["mueeHvvbb1400_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2011  obsThFactory["mueeHvvbb1400_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2012  obsThFactory["mueeHvvbb1400_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2013  //
2014  obsThFactory["mueeHvvbb1500_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2015  obsThFactory["mueeHvvbb1500_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2016  obsThFactory["mueeHvvbb1500_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2017  obsThFactory["mueeHvvbb1500_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2018  //
2019  obsThFactory["mueeHvvbb3000_p80_m30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2020  obsThFactory["mueeHvvbb3000_m80_p30"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2021  obsThFactory["mueeHvvbb3000_p80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2022  obsThFactory["mueeHvvbb3000_m80_0"] = boost::bind(boost::factory<mueeHvvbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2023  //
2024  obsThFactory["mueeHvvcc240"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_240);
2025  obsThFactory["mueeHvvcc250"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_250);
2026  obsThFactory["mueeHvvcc350"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_350);
2027  obsThFactory["mueeHvvcc365"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_365);
2028  obsThFactory["mueeHvvcc380"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_380);
2029  obsThFactory["mueeHvvcc500"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_500);
2030  obsThFactory["mueeHvvcc1000"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_1000);
2031  obsThFactory["mueeHvvcc1400"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_1400);
2032  obsThFactory["mueeHvvcc1500"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_1500);
2033  obsThFactory["mueeHvvcc3000"] = boost::bind(boost::factory<mueeHvvcc*>(), _1, sqrt_s_leptcoll_3000);
2034  //
2035  obsThFactory["mueeHvvcc250_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2036  obsThFactory["mueeHvvcc250_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2037  obsThFactory["mueeHvvcc250_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2038  obsThFactory["mueeHvvcc250_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2039  //
2040  obsThFactory["mueeHvvcc350_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2041  obsThFactory["mueeHvvcc350_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2042  obsThFactory["mueeHvvcc350_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2043  obsThFactory["mueeHvvcc350_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2044  //
2045  obsThFactory["mueeHvvcc380_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2046  obsThFactory["mueeHvvcc380_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2047  obsThFactory["mueeHvvcc380_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2048  obsThFactory["mueeHvvcc380_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2049  //
2050  obsThFactory["mueeHvvcc500_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2051  obsThFactory["mueeHvvcc500_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2052  obsThFactory["mueeHvvcc500_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2053  obsThFactory["mueeHvvcc500_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2054  //
2055  obsThFactory["mueeHvvcc1000_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2056  obsThFactory["mueeHvvcc1000_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2057  obsThFactory["mueeHvvcc1000_p80_m20"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2058  obsThFactory["mueeHvvcc1000_m80_p20"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2059  obsThFactory["mueeHvvcc1000_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2060  obsThFactory["mueeHvvcc1000_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2061  //
2062  obsThFactory["mueeHvvcc1400_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2063  obsThFactory["mueeHvvcc1400_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2064  obsThFactory["mueeHvvcc1400_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2065  obsThFactory["mueeHvvcc1400_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2066  //
2067  obsThFactory["mueeHvvcc1500_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2068  obsThFactory["mueeHvvcc1500_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2069  obsThFactory["mueeHvvcc1500_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2070  obsThFactory["mueeHvvcc1500_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2071  //
2072  obsThFactory["mueeHvvcc3000_p80_m30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2073  obsThFactory["mueeHvvcc3000_m80_p30"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2074  obsThFactory["mueeHvvcc3000_p80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2075  obsThFactory["mueeHvvcc3000_m80_0"] = boost::bind(boost::factory<mueeHvvccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2076  //
2077  obsThFactory["mueeHvvgg240"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_240);
2078  obsThFactory["mueeHvvgg250"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_250);
2079  obsThFactory["mueeHvvgg350"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_350);
2080  obsThFactory["mueeHvvgg365"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_365);
2081  obsThFactory["mueeHvvgg380"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_380);
2082  obsThFactory["mueeHvvgg500"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_500);
2083  obsThFactory["mueeHvvgg1000"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_1000);
2084  obsThFactory["mueeHvvgg1400"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_1400);
2085  obsThFactory["mueeHvvgg1500"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_1500);
2086  obsThFactory["mueeHvvgg3000"] = boost::bind(boost::factory<mueeHvvgg*>(), _1, sqrt_s_leptcoll_3000);
2087  //
2088  obsThFactory["mueeHvvgg250_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2089  obsThFactory["mueeHvvgg250_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2090  obsThFactory["mueeHvvgg250_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2091  obsThFactory["mueeHvvgg250_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2092  //
2093  obsThFactory["mueeHvvgg350_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2094  obsThFactory["mueeHvvgg350_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2095  obsThFactory["mueeHvvgg350_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2096  obsThFactory["mueeHvvgg350_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2097  //
2098  obsThFactory["mueeHvvgg380_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2099  obsThFactory["mueeHvvgg380_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2100  obsThFactory["mueeHvvgg380_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2101  obsThFactory["mueeHvvgg380_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2102  //
2103  obsThFactory["mueeHvvgg500_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2104  obsThFactory["mueeHvvgg500_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2105  obsThFactory["mueeHvvgg500_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2106  obsThFactory["mueeHvvgg500_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2107  //
2108  obsThFactory["mueeHvvgg1000_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2109  obsThFactory["mueeHvvgg1000_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2110  obsThFactory["mueeHvvgg1000_p80_m20"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2111  obsThFactory["mueeHvvgg1000_m80_p20"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2112  obsThFactory["mueeHvvgg1000_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2113  obsThFactory["mueeHvvgg1000_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2114  //
2115  obsThFactory["mueeHvvgg1400_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2116  obsThFactory["mueeHvvgg1400_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2117  obsThFactory["mueeHvvgg1400_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2118  obsThFactory["mueeHvvgg1400_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2119  //
2120  obsThFactory["mueeHvvgg1500_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2121  obsThFactory["mueeHvvgg1500_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2122  obsThFactory["mueeHvvgg1500_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2123  obsThFactory["mueeHvvgg1500_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2124  //
2125  obsThFactory["mueeHvvgg3000_p80_m30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2126  obsThFactory["mueeHvvgg3000_m80_p30"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2127  obsThFactory["mueeHvvgg3000_p80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2128  obsThFactory["mueeHvvgg3000_m80_0"] = boost::bind(boost::factory<mueeHvvggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2129  //
2130  obsThFactory["mueeHvvWW240"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_240);
2131  obsThFactory["mueeHvvWW250"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_250);
2132  obsThFactory["mueeHvvWW350"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_350);
2133  obsThFactory["mueeHvvWW365"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_365);
2134  obsThFactory["mueeHvvWW380"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_380);
2135  obsThFactory["mueeHvvWW500"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_500);
2136  obsThFactory["mueeHvvWW1000"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_1000);
2137  obsThFactory["mueeHvvWW1400"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_1400);
2138  obsThFactory["mueeHvvWW1500"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_1500);
2139  obsThFactory["mueeHvvWW3000"] = boost::bind(boost::factory<mueeHvvWW*>(), _1, sqrt_s_leptcoll_3000);
2140  //
2141  obsThFactory["mueeHvvWW250_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2142  obsThFactory["mueeHvvWW250_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2143  obsThFactory["mueeHvvWW250_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2144  obsThFactory["mueeHvvWW250_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2145  //
2146  obsThFactory["mueeHvvWW350_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2147  obsThFactory["mueeHvvWW350_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2148  obsThFactory["mueeHvvWW350_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2149  obsThFactory["mueeHvvWW350_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2150  //
2151  obsThFactory["mueeHvvWW380_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2152  obsThFactory["mueeHvvWW380_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2153  obsThFactory["mueeHvvWW380_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2154  obsThFactory["mueeHvvWW380_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2155  //
2156  obsThFactory["mueeHvvWW500_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2157  obsThFactory["mueeHvvWW500_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2158  obsThFactory["mueeHvvWW500_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2159  obsThFactory["mueeHvvWW500_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2160  //
2161  obsThFactory["mueeHvvWW1000_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2162  obsThFactory["mueeHvvWW1000_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2163  obsThFactory["mueeHvvWW1000_p80_m20"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2164  obsThFactory["mueeHvvWW1000_m80_p20"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2165  obsThFactory["mueeHvvWW1000_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2166  obsThFactory["mueeHvvWW1000_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2167  //
2168  obsThFactory["mueeHvvWW1400_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2169  obsThFactory["mueeHvvWW1400_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2170  obsThFactory["mueeHvvWW1400_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2171  obsThFactory["mueeHvvWW1400_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2172  //
2173  obsThFactory["mueeHvvWW1500_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2174  obsThFactory["mueeHvvWW1500_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2175  obsThFactory["mueeHvvWW1500_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2176  obsThFactory["mueeHvvWW1500_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2177  //
2178  obsThFactory["mueeHvvWW3000_p80_m30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2179  obsThFactory["mueeHvvWW3000_m80_p30"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2180  obsThFactory["mueeHvvWW3000_p80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2181  obsThFactory["mueeHvvWW3000_m80_0"] = boost::bind(boost::factory<mueeHvvWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2182  //
2183  obsThFactory["mueeHvvtautau240"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_240);
2184  obsThFactory["mueeHvvtautau250"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_250);
2185  obsThFactory["mueeHvvtautau350"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_350);
2186  obsThFactory["mueeHvvtautau365"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_365);
2187  obsThFactory["mueeHvvtautau380"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_380);
2188  obsThFactory["mueeHvvtautau500"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_500);
2189  obsThFactory["mueeHvvtautau1000"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_1000);
2190  obsThFactory["mueeHvvtautau1400"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_1400);
2191  obsThFactory["mueeHvvtautau1500"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_1500);
2192  obsThFactory["mueeHvvtautau3000"] = boost::bind(boost::factory<mueeHvvtautau*>(), _1, sqrt_s_leptcoll_3000);
2193  //
2194  obsThFactory["mueeHvvtautau250_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2195  obsThFactory["mueeHvvtautau250_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2196  obsThFactory["mueeHvvtautau250_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2197  obsThFactory["mueeHvvtautau250_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2198  //
2199  obsThFactory["mueeHvvtautau350_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2200  obsThFactory["mueeHvvtautau350_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2201  obsThFactory["mueeHvvtautau350_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2202  obsThFactory["mueeHvvtautau350_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2203  //
2204  obsThFactory["mueeHvvtautau380_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2205  obsThFactory["mueeHvvtautau380_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2206  obsThFactory["mueeHvvtautau380_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2207  obsThFactory["mueeHvvtautau380_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2208  //
2209  obsThFactory["mueeHvvtautau500_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2210  obsThFactory["mueeHvvtautau500_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2211  obsThFactory["mueeHvvtautau500_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2212  obsThFactory["mueeHvvtautau500_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2213  //
2214  obsThFactory["mueeHvvtautau1000_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2215  obsThFactory["mueeHvvtautau1000_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2216  obsThFactory["mueeHvvtautau1000_p80_m20"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2217  obsThFactory["mueeHvvtautau1000_m80_p20"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2218  obsThFactory["mueeHvvtautau1000_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2219  obsThFactory["mueeHvvtautau1000_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2220  //
2221  obsThFactory["mueeHvvtautau1400_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2222  obsThFactory["mueeHvvtautau1400_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2223  obsThFactory["mueeHvvtautau1400_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2224  obsThFactory["mueeHvvtautau1400_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2225  //
2226  obsThFactory["mueeHvvtautau1500_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2227  obsThFactory["mueeHvvtautau1500_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2228  obsThFactory["mueeHvvtautau1500_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2229  obsThFactory["mueeHvvtautau1500_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2230  //
2231  obsThFactory["mueeHvvtautau3000_p80_m30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2232  obsThFactory["mueeHvvtautau3000_m80_p30"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2233  obsThFactory["mueeHvvtautau3000_p80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2234  obsThFactory["mueeHvvtautau3000_m80_0"] = boost::bind(boost::factory<mueeHvvtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2235  //
2236  obsThFactory["mueeHvvZZ240"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_240);
2237  obsThFactory["mueeHvvZZ250"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_250);
2238  obsThFactory["mueeHvvZZ350"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_350);
2239  obsThFactory["mueeHvvZZ365"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_365);
2240  obsThFactory["mueeHvvZZ380"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_380);
2241  obsThFactory["mueeHvvZZ500"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_500);
2242  obsThFactory["mueeHvvZZ1000"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_1000);
2243  obsThFactory["mueeHvvZZ1400"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_1400);
2244  obsThFactory["mueeHvvZZ1500"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_1500);
2245  obsThFactory["mueeHvvZZ3000"] = boost::bind(boost::factory<mueeHvvZZ*>(), _1, sqrt_s_leptcoll_3000);
2246  //
2247  obsThFactory["mueeHvvZZ250_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2248  obsThFactory["mueeHvvZZ250_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2249  obsThFactory["mueeHvvZZ250_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2250  obsThFactory["mueeHvvZZ250_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2251  //
2252  obsThFactory["mueeHvvZZ350_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2253  obsThFactory["mueeHvvZZ350_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2254  obsThFactory["mueeHvvZZ350_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2255  obsThFactory["mueeHvvZZ350_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2256  //
2257  obsThFactory["mueeHvvZZ380_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2258  obsThFactory["mueeHvvZZ380_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2259  obsThFactory["mueeHvvZZ380_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2260  obsThFactory["mueeHvvZZ380_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2261  //
2262  obsThFactory["mueeHvvZZ500_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2263  obsThFactory["mueeHvvZZ500_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2264  obsThFactory["mueeHvvZZ500_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2265  obsThFactory["mueeHvvZZ500_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2266  //
2267  obsThFactory["mueeHvvZZ1000_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2268  obsThFactory["mueeHvvZZ1000_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2269  obsThFactory["mueeHvvZZ1000_p80_m20"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2270  obsThFactory["mueeHvvZZ1000_m80_p20"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2271  obsThFactory["mueeHvvZZ1000_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2272  obsThFactory["mueeHvvZZ1000_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2273  //
2274  obsThFactory["mueeHvvZZ1400_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2275  obsThFactory["mueeHvvZZ1400_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2276  obsThFactory["mueeHvvZZ1400_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2277  obsThFactory["mueeHvvZZ1400_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2278  //
2279  obsThFactory["mueeHvvZZ1500_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2280  obsThFactory["mueeHvvZZ1500_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2281  obsThFactory["mueeHvvZZ1500_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2282  obsThFactory["mueeHvvZZ1500_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2283  //
2284  obsThFactory["mueeHvvZZ3000_p80_m30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2285  obsThFactory["mueeHvvZZ3000_m80_p30"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2286  obsThFactory["mueeHvvZZ3000_p80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2287  obsThFactory["mueeHvvZZ3000_m80_0"] = boost::bind(boost::factory<mueeHvvZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2288  //
2289  obsThFactory["mueeHvvZga240"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_240);
2290  obsThFactory["mueeHvvZga250"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_250);
2291  obsThFactory["mueeHvvZga350"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_350);
2292  obsThFactory["mueeHvvZga365"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_365);
2293  obsThFactory["mueeHvvZga380"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_380);
2294  obsThFactory["mueeHvvZga500"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_500);
2295  obsThFactory["mueeHvvZga1000"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_1000);
2296  obsThFactory["mueeHvvZga1400"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_1400);
2297  obsThFactory["mueeHvvZga1500"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_1500);
2298  obsThFactory["mueeHvvZga3000"] = boost::bind(boost::factory<mueeHvvZga*>(), _1, sqrt_s_leptcoll_3000);
2299  //
2300  obsThFactory["mueeHvvZga250_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2301  obsThFactory["mueeHvvZga250_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2302  obsThFactory["mueeHvvZga250_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2303  obsThFactory["mueeHvvZga250_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2304  //
2305  obsThFactory["mueeHvvZga350_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2306  obsThFactory["mueeHvvZga350_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2307  obsThFactory["mueeHvvZga350_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2308  obsThFactory["mueeHvvZga350_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2309  //
2310  obsThFactory["mueeHvvZga380_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2311  obsThFactory["mueeHvvZga380_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2312  obsThFactory["mueeHvvZga380_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2313  obsThFactory["mueeHvvZga380_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2314  //
2315  obsThFactory["mueeHvvZga500_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2316  obsThFactory["mueeHvvZga500_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2317  obsThFactory["mueeHvvZga500_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2318  obsThFactory["mueeHvvZga500_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2319  //
2320  obsThFactory["mueeHvvZga1000_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2321  obsThFactory["mueeHvvZga1000_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2322  obsThFactory["mueeHvvZga1000_p80_m20"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2323  obsThFactory["mueeHvvZga1000_m80_p20"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2324  obsThFactory["mueeHvvZga1000_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2325  obsThFactory["mueeHvvZga1000_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2326  //
2327  obsThFactory["mueeHvvZga1400_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2328  obsThFactory["mueeHvvZga1400_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2329  obsThFactory["mueeHvvZga1400_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2330  obsThFactory["mueeHvvZga1400_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2331  //
2332  obsThFactory["mueeHvvZga1500_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2333  obsThFactory["mueeHvvZga1500_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2334  obsThFactory["mueeHvvZga1500_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2335  obsThFactory["mueeHvvZga1500_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2336  //
2337  obsThFactory["mueeHvvZga3000_p80_m30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2338  obsThFactory["mueeHvvZga3000_m80_p30"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2339  obsThFactory["mueeHvvZga3000_p80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2340  obsThFactory["mueeHvvZga3000_m80_0"] = boost::bind(boost::factory<mueeHvvZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2341  //
2342  obsThFactory["mueeHvvgaga240"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_240);
2343  obsThFactory["mueeHvvgaga250"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_250);
2344  obsThFactory["mueeHvvgaga350"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_350);
2345  obsThFactory["mueeHvvgaga365"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_365);
2346  obsThFactory["mueeHvvgaga380"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_380);
2347  obsThFactory["mueeHvvgaga500"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_500);
2348  obsThFactory["mueeHvvgaga1000"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_1000);
2349  obsThFactory["mueeHvvgaga1400"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_1400);
2350  obsThFactory["mueeHvvgaga1500"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_1500);
2351  obsThFactory["mueeHvvgaga3000"] = boost::bind(boost::factory<mueeHvvgaga*>(), _1, sqrt_s_leptcoll_3000);
2352  //
2353  obsThFactory["mueeHvvgaga250_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2354  obsThFactory["mueeHvvgaga250_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2355  obsThFactory["mueeHvvgaga250_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2356  obsThFactory["mueeHvvgaga250_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2357  //
2358  obsThFactory["mueeHvvgaga350_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2359  obsThFactory["mueeHvvgaga350_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2360  obsThFactory["mueeHvvgaga350_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2361  obsThFactory["mueeHvvgaga350_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2362  //
2363  obsThFactory["mueeHvvgaga380_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2364  obsThFactory["mueeHvvgaga380_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2365  obsThFactory["mueeHvvgaga380_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2366  obsThFactory["mueeHvvgaga380_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2367  //
2368  obsThFactory["mueeHvvgaga500_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2369  obsThFactory["mueeHvvgaga500_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2370  obsThFactory["mueeHvvgaga500_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2371  obsThFactory["mueeHvvgaga500_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2372  //
2373  obsThFactory["mueeHvvgaga1000_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2374  obsThFactory["mueeHvvgaga1000_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2375  obsThFactory["mueeHvvgaga1000_p80_m20"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2376  obsThFactory["mueeHvvgaga1000_m80_p20"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2377  obsThFactory["mueeHvvgaga1000_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2378  obsThFactory["mueeHvvgaga1000_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2379  //
2380  obsThFactory["mueeHvvgaga1400_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2381  obsThFactory["mueeHvvgaga1400_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2382  obsThFactory["mueeHvvgaga1400_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2383  obsThFactory["mueeHvvgaga1400_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2384  //
2385  obsThFactory["mueeHvvgaga1500_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2386  obsThFactory["mueeHvvgaga1500_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2387  obsThFactory["mueeHvvgaga1500_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2388  obsThFactory["mueeHvvgaga1500_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2389  //
2390  obsThFactory["mueeHvvgaga3000_p80_m30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2391  obsThFactory["mueeHvvgaga3000_m80_p30"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2392  obsThFactory["mueeHvvgaga3000_p80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2393  obsThFactory["mueeHvvgaga3000_m80_0"] = boost::bind(boost::factory<mueeHvvgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2394  //
2395  obsThFactory["mueeHvvmumu240"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_240);
2396  obsThFactory["mueeHvvmumu250"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_250);
2397  obsThFactory["mueeHvvmumu350"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_350);
2398  obsThFactory["mueeHvvmumu365"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_365);
2399  obsThFactory["mueeHvvmumu380"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_380);
2400  obsThFactory["mueeHvvmumu500"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_500);
2401  obsThFactory["mueeHvvmumu1000"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_1000);
2402  obsThFactory["mueeHvvmumu1400"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_1400);
2403  obsThFactory["mueeHvvmumu1500"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_1500);
2404  obsThFactory["mueeHvvmumu3000"] = boost::bind(boost::factory<mueeHvvmumu*>(), _1, sqrt_s_leptcoll_3000);
2405  //
2406  obsThFactory["mueeHvvmumu250_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2407  obsThFactory["mueeHvvmumu250_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2408  obsThFactory["mueeHvvmumu250_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2409  obsThFactory["mueeHvvmumu250_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2410  //
2411  obsThFactory["mueeHvvmumu350_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2412  obsThFactory["mueeHvvmumu350_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2413  obsThFactory["mueeHvvmumu350_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2414  obsThFactory["mueeHvvmumu350_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2415  //
2416  obsThFactory["mueeHvvmumu380_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2417  obsThFactory["mueeHvvmumu380_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2418  obsThFactory["mueeHvvmumu380_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2419  obsThFactory["mueeHvvmumu380_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2420  //
2421  obsThFactory["mueeHvvmumu500_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2422  obsThFactory["mueeHvvmumu500_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2423  obsThFactory["mueeHvvmumu500_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2424  obsThFactory["mueeHvvmumu500_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2425  //
2426  obsThFactory["mueeHvvmumu1000_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2427  obsThFactory["mueeHvvmumu1000_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2428  obsThFactory["mueeHvvmumu1000_p80_m20"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2429  obsThFactory["mueeHvvmumu1000_m80_p20"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2430  obsThFactory["mueeHvvmumu1000_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2431  obsThFactory["mueeHvvmumu1000_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2432  //
2433  obsThFactory["mueeHvvmumu1400_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2434  obsThFactory["mueeHvvmumu1400_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2435  obsThFactory["mueeHvvmumu1400_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2436  obsThFactory["mueeHvvmumu1400_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2437  //
2438  obsThFactory["mueeHvvmumu1500_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2439  obsThFactory["mueeHvvmumu1500_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2440  obsThFactory["mueeHvvmumu1500_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2441  obsThFactory["mueeHvvmumu1500_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2442  //
2443  obsThFactory["mueeHvvmumu3000_p80_m30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2444  obsThFactory["mueeHvvmumu3000_m80_p30"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2445  obsThFactory["mueeHvvmumu3000_p80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2446  obsThFactory["mueeHvvmumu3000_m80_0"] = boost::bind(boost::factory<mueeHvvmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2447  //
2448  // ZH
2449  obsThFactory["mueeZHbb240"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_240);
2450  obsThFactory["mueeZHbb250"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_250);
2451  obsThFactory["mueeZHbb350"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_350);
2452  obsThFactory["mueeZHbb365"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_365);
2453  obsThFactory["mueeZHbb380"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_380);
2454  obsThFactory["mueeZHbb500"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_500);
2455  obsThFactory["mueeZHbb1000"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_1000);
2456  obsThFactory["mueeZHbb1400"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_1400);
2457  obsThFactory["mueeZHbb1500"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_1500);
2458  obsThFactory["mueeZHbb3000"] = boost::bind(boost::factory<mueeZHbb*>(), _1, sqrt_s_leptcoll_3000);
2459  //
2460  obsThFactory["mueeZHbb250_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2461  obsThFactory["mueeZHbb250_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2462  obsThFactory["mueeZHbb250_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2463  obsThFactory["mueeZHbb250_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2464  //
2465  obsThFactory["mueeZHbb350_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2466  obsThFactory["mueeZHbb350_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2467  obsThFactory["mueeZHbb350_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2468  obsThFactory["mueeZHbb350_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2469  //
2470  obsThFactory["mueeZHbb380_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2471  obsThFactory["mueeZHbb380_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2472  obsThFactory["mueeZHbb380_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2473  obsThFactory["mueeZHbb380_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2474  //
2475  obsThFactory["mueeZHbb500_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2476  obsThFactory["mueeZHbb500_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2477  obsThFactory["mueeZHbb500_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2478  obsThFactory["mueeZHbb500_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2479  //
2480  obsThFactory["mueeZHbb1000_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2481  obsThFactory["mueeZHbb1000_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2482  obsThFactory["mueeZHbb1000_p80_m20"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2483  obsThFactory["mueeZHbb1000_m80_p20"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2484  obsThFactory["mueeZHbb1000_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2485  obsThFactory["mueeZHbb1000_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2486  //
2487  obsThFactory["mueeZHbb1400_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2488  obsThFactory["mueeZHbb1400_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2489  obsThFactory["mueeZHbb1400_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2490  obsThFactory["mueeZHbb1400_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2491  //
2492  obsThFactory["mueeZHbb1500_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2493  obsThFactory["mueeZHbb1500_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2494  obsThFactory["mueeZHbb1500_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2495  obsThFactory["mueeZHbb1500_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2496  //
2497  obsThFactory["mueeZHbb3000_p80_m30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2498  obsThFactory["mueeZHbb3000_m80_p30"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2499  obsThFactory["mueeZHbb3000_p80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2500  obsThFactory["mueeZHbb3000_m80_0"] = boost::bind(boost::factory<mueeZHbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2501  //
2502  obsThFactory["mueeZHcc240"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_240);
2503  obsThFactory["mueeZHcc250"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_250);
2504  obsThFactory["mueeZHcc350"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_350);
2505  obsThFactory["mueeZHcc365"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_365);
2506  obsThFactory["mueeZHcc380"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_380);
2507  obsThFactory["mueeZHcc500"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_500);
2508  obsThFactory["mueeZHcc1000"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_1000);
2509  obsThFactory["mueeZHcc1400"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_1400);
2510  obsThFactory["mueeZHcc1500"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_1500);
2511  obsThFactory["mueeZHcc3000"] = boost::bind(boost::factory<mueeZHcc*>(), _1, sqrt_s_leptcoll_3000);
2512  //
2513  obsThFactory["mueeZHcc250_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2514  obsThFactory["mueeZHcc250_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2515  obsThFactory["mueeZHcc250_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2516  obsThFactory["mueeZHcc250_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2517  //
2518  obsThFactory["mueeZHcc350_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2519  obsThFactory["mueeZHcc350_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2520  obsThFactory["mueeZHcc350_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2521  obsThFactory["mueeZHcc350_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2522  //
2523  obsThFactory["mueeZHcc380_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2524  obsThFactory["mueeZHcc380_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2525  obsThFactory["mueeZHcc380_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2526  obsThFactory["mueeZHcc380_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2527  //
2528  obsThFactory["mueeZHcc500_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2529  obsThFactory["mueeZHcc500_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2530  obsThFactory["mueeZHcc500_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2531  obsThFactory["mueeZHcc500_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2532  //
2533  obsThFactory["mueeZHcc1000_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2534  obsThFactory["mueeZHcc1000_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2535  obsThFactory["mueeZHcc1000_p80_m20"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2536  obsThFactory["mueeZHcc1000_m80_p20"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2537  obsThFactory["mueeZHcc1000_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2538  obsThFactory["mueeZHcc1000_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2539  //
2540  obsThFactory["mueeZHcc1400_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2541  obsThFactory["mueeZHcc1400_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2542  obsThFactory["mueeZHcc1400_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2543  obsThFactory["mueeZHcc1400_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2544  //
2545  obsThFactory["mueeZHcc1500_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2546  obsThFactory["mueeZHcc1500_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2547  obsThFactory["mueeZHcc1500_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2548  obsThFactory["mueeZHcc1500_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2549  //
2550  obsThFactory["mueeZHcc3000_p80_m30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2551  obsThFactory["mueeZHcc3000_m80_p30"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2552  obsThFactory["mueeZHcc3000_p80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2553  obsThFactory["mueeZHcc3000_m80_0"] = boost::bind(boost::factory<mueeZHccPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2554  //
2555  obsThFactory["mueeZHgg240"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_240);
2556  obsThFactory["mueeZHgg250"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_250);
2557  obsThFactory["mueeZHgg350"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_350);
2558  obsThFactory["mueeZHgg365"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_365);
2559  obsThFactory["mueeZHgg380"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_380);
2560  obsThFactory["mueeZHgg500"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_500);
2561  obsThFactory["mueeZHgg1000"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_1000);
2562  obsThFactory["mueeZHgg1400"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_1400);
2563  obsThFactory["mueeZHgg1500"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_1500);
2564  obsThFactory["mueeZHgg3000"] = boost::bind(boost::factory<mueeZHgg*>(), _1, sqrt_s_leptcoll_3000);
2565  //
2566  obsThFactory["mueeZHgg250_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2567  obsThFactory["mueeZHgg250_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2568  obsThFactory["mueeZHgg250_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2569  obsThFactory["mueeZHgg250_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2570  //
2571  obsThFactory["mueeZHgg350_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2572  obsThFactory["mueeZHgg350_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2573  obsThFactory["mueeZHgg350_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2574  obsThFactory["mueeZHgg350_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2575  //
2576  obsThFactory["mueeZHgg380_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2577  obsThFactory["mueeZHgg380_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2578  obsThFactory["mueeZHgg380_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2579  obsThFactory["mueeZHgg380_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2580  //
2581  obsThFactory["mueeZHgg500_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2582  obsThFactory["mueeZHgg500_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2583  obsThFactory["mueeZHgg500_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2584  obsThFactory["mueeZHgg500_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2585  //
2586  obsThFactory["mueeZHgg1000_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2587  obsThFactory["mueeZHgg1000_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2588  obsThFactory["mueeZHgg1000_p80_m20"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2589  obsThFactory["mueeZHgg1000_m80_p20"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2590  obsThFactory["mueeZHgg1000_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2591  obsThFactory["mueeZHgg1000_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2592  //
2593  obsThFactory["mueeZHgg1400_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2594  obsThFactory["mueeZHgg1400_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2595  obsThFactory["mueeZHgg1400_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2596  obsThFactory["mueeZHgg1400_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2597  //
2598  obsThFactory["mueeZHgg1500_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2599  obsThFactory["mueeZHgg1500_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2600  obsThFactory["mueeZHgg1500_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2601  obsThFactory["mueeZHgg1500_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2602  //
2603  obsThFactory["mueeZHgg3000_p80_m30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2604  obsThFactory["mueeZHgg3000_m80_p30"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2605  obsThFactory["mueeZHgg3000_p80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2606  obsThFactory["mueeZHgg3000_m80_0"] = boost::bind(boost::factory<mueeZHggPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2607  //
2608  obsThFactory["mueeZHWW240"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_240);
2609  obsThFactory["mueeZHWW250"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_250);
2610  obsThFactory["mueeZHWW350"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_350);
2611  obsThFactory["mueeZHWW365"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_365);
2612  obsThFactory["mueeZHWW380"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_380);
2613  obsThFactory["mueeZHWW500"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_500);
2614  obsThFactory["mueeZHWW1000"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_1000);
2615  obsThFactory["mueeZHWW1400"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_1400);
2616  obsThFactory["mueeZHWW1500"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_1500);
2617  obsThFactory["mueeZHWW3000"] = boost::bind(boost::factory<mueeZHWW*>(), _1, sqrt_s_leptcoll_3000);
2618  //
2619  obsThFactory["mueeZHWW250_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2620  obsThFactory["mueeZHWW250_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2621  obsThFactory["mueeZHWW250_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2622  obsThFactory["mueeZHWW250_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2623  //
2624  obsThFactory["mueeZHWW350_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2625  obsThFactory["mueeZHWW350_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2626  obsThFactory["mueeZHWW350_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2627  obsThFactory["mueeZHWW350_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2628  //
2629  obsThFactory["mueeZHWW380_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2630  obsThFactory["mueeZHWW380_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2631  obsThFactory["mueeZHWW380_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2632  obsThFactory["mueeZHWW380_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2633  //
2634  obsThFactory["mueeZHWW500_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2635  obsThFactory["mueeZHWW500_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2636  obsThFactory["mueeZHWW500_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2637  obsThFactory["mueeZHWW500_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2638  //
2639  obsThFactory["mueeZHWW1000_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2640  obsThFactory["mueeZHWW1000_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2641  obsThFactory["mueeZHWW1000_p80_m20"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2642  obsThFactory["mueeZHWW1000_m80_p20"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2643  obsThFactory["mueeZHWW1000_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2644  obsThFactory["mueeZHWW1000_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2645  //
2646  obsThFactory["mueeZHWW1400_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2647  obsThFactory["mueeZHWW1400_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2648  obsThFactory["mueeZHWW1400_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2649  obsThFactory["mueeZHWW1400_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2650  //
2651  obsThFactory["mueeZHWW1500_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2652  obsThFactory["mueeZHWW1500_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2653  obsThFactory["mueeZHWW1500_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2654  obsThFactory["mueeZHWW1500_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2655  //
2656  obsThFactory["mueeZHWW3000_p80_m30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2657  obsThFactory["mueeZHWW3000_m80_p30"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2658  obsThFactory["mueeZHWW3000_p80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2659  obsThFactory["mueeZHWW3000_m80_0"] = boost::bind(boost::factory<mueeZHWWPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2660  //
2661  obsThFactory["mueeZHtautau240"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_240);
2662  obsThFactory["mueeZHtautau250"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_250);
2663  obsThFactory["mueeZHtautau350"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_350);
2664  obsThFactory["mueeZHtautau365"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_365);
2665  obsThFactory["mueeZHtautau380"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_380);
2666  obsThFactory["mueeZHtautau500"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_500);
2667  obsThFactory["mueeZHtautau1000"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_1000);
2668  obsThFactory["mueeZHtautau1400"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_1400);
2669  obsThFactory["mueeZHtautau1500"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_1500);
2670  obsThFactory["mueeZHtautau3000"] = boost::bind(boost::factory<mueeZHtautau*>(), _1, sqrt_s_leptcoll_3000);
2671  //
2672  obsThFactory["mueeZHtautau250_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2673  obsThFactory["mueeZHtautau250_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2674  obsThFactory["mueeZHtautau250_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2675  obsThFactory["mueeZHtautau250_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2676  //
2677  obsThFactory["mueeZHtautau350_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2678  obsThFactory["mueeZHtautau350_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2679  obsThFactory["mueeZHtautau350_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2680  obsThFactory["mueeZHtautau350_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2681  //
2682  obsThFactory["mueeZHtautau380_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2683  obsThFactory["mueeZHtautau380_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2684  obsThFactory["mueeZHtautau380_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2685  obsThFactory["mueeZHtautau380_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2686  //
2687  obsThFactory["mueeZHtautau500_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2688  obsThFactory["mueeZHtautau500_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2689  obsThFactory["mueeZHtautau500_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2690  obsThFactory["mueeZHtautau500_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2691  //
2692  obsThFactory["mueeZHtautau1000_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2693  obsThFactory["mueeZHtautau1000_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2694  obsThFactory["mueeZHtautau1000_p80_m20"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2695  obsThFactory["mueeZHtautau1000_m80_p20"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2696  obsThFactory["mueeZHtautau1000_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2697  obsThFactory["mueeZHtautau1000_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2698  //
2699  obsThFactory["mueeZHtautau1400_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2700  obsThFactory["mueeZHtautau1400_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2701  obsThFactory["mueeZHtautau1400_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2702  obsThFactory["mueeZHtautau1400_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2703  //
2704  obsThFactory["mueeZHtautau1500_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2705  obsThFactory["mueeZHtautau1500_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2706  obsThFactory["mueeZHtautau1500_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2707  obsThFactory["mueeZHtautau1500_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2708  //
2709  obsThFactory["mueeZHtautau3000_p80_m30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2710  obsThFactory["mueeZHtautau3000_m80_p30"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2711  obsThFactory["mueeZHtautau3000_p80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2712  obsThFactory["mueeZHtautau3000_m80_0"] = boost::bind(boost::factory<mueeZHtautauPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2713  //
2714  obsThFactory["mueeZHZZ240"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_240);
2715  obsThFactory["mueeZHZZ250"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_250);
2716  obsThFactory["mueeZHZZ350"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_350);
2717  obsThFactory["mueeZHZZ365"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_365);
2718  obsThFactory["mueeZHZZ380"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_380);
2719  obsThFactory["mueeZHZZ500"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_500);
2720  obsThFactory["mueeZHZZ1000"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_1000);
2721  obsThFactory["mueeZHZZ1400"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_1400);
2722  obsThFactory["mueeZHZZ1500"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_1500);
2723  obsThFactory["mueeZHZZ3000"] = boost::bind(boost::factory<mueeZHZZ*>(), _1, sqrt_s_leptcoll_3000);
2724  //
2725  obsThFactory["mueeZHZZ250_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2726  obsThFactory["mueeZHZZ250_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2727  obsThFactory["mueeZHZZ250_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2728  obsThFactory["mueeZHZZ250_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2729  //
2730  obsThFactory["mueeZHZZ350_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2731  obsThFactory["mueeZHZZ350_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2732  obsThFactory["mueeZHZZ350_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2733  obsThFactory["mueeZHZZ350_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2734  //
2735  obsThFactory["mueeZHZZ380_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2736  obsThFactory["mueeZHZZ380_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2737  obsThFactory["mueeZHZZ380_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2738  obsThFactory["mueeZHZZ380_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2739  //
2740  obsThFactory["mueeZHZZ500_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2741  obsThFactory["mueeZHZZ500_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2742  obsThFactory["mueeZHZZ500_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2743  obsThFactory["mueeZHZZ500_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2744  //
2745  obsThFactory["mueeZHZZ1000_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2746  obsThFactory["mueeZHZZ1000_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2747  obsThFactory["mueeZHZZ1000_p80_m20"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2748  obsThFactory["mueeZHZZ1000_m80_p20"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2749  obsThFactory["mueeZHZZ1000_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2750  obsThFactory["mueeZHZZ1000_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2751  //
2752  obsThFactory["mueeZHZZ1400_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2753  obsThFactory["mueeZHZZ1400_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2754  obsThFactory["mueeZHZZ1400_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2755  obsThFactory["mueeZHZZ1400_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2756  //
2757  obsThFactory["mueeZHZZ1500_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2758  obsThFactory["mueeZHZZ1500_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2759  obsThFactory["mueeZHZZ1500_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2760  obsThFactory["mueeZHZZ1500_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2761  //
2762  obsThFactory["mueeZHZZ3000_p80_m30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2763  obsThFactory["mueeZHZZ3000_m80_p30"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2764  obsThFactory["mueeZHZZ3000_p80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2765  obsThFactory["mueeZHZZ3000_m80_0"] = boost::bind(boost::factory<mueeZHZZPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2766  //
2767  obsThFactory["mueeZHZga240"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_240);
2768  obsThFactory["mueeZHZga250"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_250);
2769  obsThFactory["mueeZHZga350"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_350);
2770  obsThFactory["mueeZHZga365"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_365);
2771  obsThFactory["mueeZHZga380"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_380);
2772  obsThFactory["mueeZHZga500"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_500);
2773  obsThFactory["mueeZHZga1000"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_1000);
2774  obsThFactory["mueeZHZga1400"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_1400);
2775  obsThFactory["mueeZHZga1500"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_1500);
2776  obsThFactory["mueeZHZga3000"] = boost::bind(boost::factory<mueeZHZga*>(), _1, sqrt_s_leptcoll_3000);
2777  //
2778  obsThFactory["mueeZHZga250_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2779  obsThFactory["mueeZHZga250_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2780  obsThFactory["mueeZHZga250_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2781  obsThFactory["mueeZHZga250_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2782  //
2783  obsThFactory["mueeZHZga350_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2784  obsThFactory["mueeZHZga350_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2785  obsThFactory["mueeZHZga350_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2786  obsThFactory["mueeZHZga350_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2787  //
2788  obsThFactory["mueeZHZga380_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2789  obsThFactory["mueeZHZga380_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2790  obsThFactory["mueeZHZga380_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2791  obsThFactory["mueeZHZga380_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2792  //
2793  obsThFactory["mueeZHZga500_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2794  obsThFactory["mueeZHZga500_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2795  obsThFactory["mueeZHZga500_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2796  obsThFactory["mueeZHZga500_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2797  //
2798  obsThFactory["mueeZHZga1000_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2799  obsThFactory["mueeZHZga1000_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2800  obsThFactory["mueeZHZga1000_p80_m20"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2801  obsThFactory["mueeZHZga1000_m80_p20"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2802  obsThFactory["mueeZHZga1000_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2803  obsThFactory["mueeZHZga1000_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2804  //
2805  obsThFactory["mueeZHZga1400_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2806  obsThFactory["mueeZHZga1400_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2807  obsThFactory["mueeZHZga1400_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2808  obsThFactory["mueeZHZga1400_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2809  //
2810  obsThFactory["mueeZHZga1500_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2811  obsThFactory["mueeZHZga1500_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2812  obsThFactory["mueeZHZga1500_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2813  obsThFactory["mueeZHZga1500_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2814  //
2815  obsThFactory["mueeZHZga3000_p80_m30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2816  obsThFactory["mueeZHZga3000_m80_p30"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2817  obsThFactory["mueeZHZga3000_p80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2818  obsThFactory["mueeZHZga3000_m80_0"] = boost::bind(boost::factory<mueeZHZgaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2819  //
2820  obsThFactory["mueeZHgaga240"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_240);
2821  obsThFactory["mueeZHgaga250"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_250);
2822  obsThFactory["mueeZHgaga350"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_350);
2823  obsThFactory["mueeZHgaga365"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_365);
2824  obsThFactory["mueeZHgaga380"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_380);
2825  obsThFactory["mueeZHgaga500"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_500);
2826  obsThFactory["mueeZHgaga1000"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_1000);
2827  obsThFactory["mueeZHgaga1400"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_1400);
2828  obsThFactory["mueeZHgaga1500"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_1500);
2829  obsThFactory["mueeZHgaga3000"] = boost::bind(boost::factory<mueeZHgaga*>(), _1, sqrt_s_leptcoll_3000);
2830  //
2831  obsThFactory["mueeZHgaga250_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2832  obsThFactory["mueeZHgaga250_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2833  obsThFactory["mueeZHgaga250_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2834  obsThFactory["mueeZHgaga250_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2835  //
2836  obsThFactory["mueeZHgaga350_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2837  obsThFactory["mueeZHgaga350_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2838  obsThFactory["mueeZHgaga350_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2839  obsThFactory["mueeZHgaga350_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2840  //
2841  obsThFactory["mueeZHgaga380_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2842  obsThFactory["mueeZHgaga380_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2843  obsThFactory["mueeZHgaga380_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2844  obsThFactory["mueeZHgaga380_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2845  //
2846  obsThFactory["mueeZHgaga500_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2847  obsThFactory["mueeZHgaga500_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2848  obsThFactory["mueeZHgaga500_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2849  obsThFactory["mueeZHgaga500_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2850  //
2851  obsThFactory["mueeZHgaga1000_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2852  obsThFactory["mueeZHgaga1000_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2853  obsThFactory["mueeZHgaga1000_p80_m20"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2854  obsThFactory["mueeZHgaga1000_m80_p20"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2855  obsThFactory["mueeZHgaga1000_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2856  obsThFactory["mueeZHgaga1000_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2857  //
2858  obsThFactory["mueeZHgaga1400_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2859  obsThFactory["mueeZHgaga1400_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2860  obsThFactory["mueeZHgaga1400_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2861  obsThFactory["mueeZHgaga1400_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2862  //
2863  obsThFactory["mueeZHgaga1500_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2864  obsThFactory["mueeZHgaga1500_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2865  obsThFactory["mueeZHgaga1500_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2866  obsThFactory["mueeZHgaga1500_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2867  //
2868  obsThFactory["mueeZHgaga3000_p80_m30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2869  obsThFactory["mueeZHgaga3000_m80_p30"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2870  obsThFactory["mueeZHgaga3000_p80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2871  obsThFactory["mueeZHgaga3000_m80_0"] = boost::bind(boost::factory<mueeZHgagaPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2872  //
2873  obsThFactory["mueeZHmumu240"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_240);
2874  obsThFactory["mueeZHmumu250"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_250);
2875  obsThFactory["mueeZHmumu350"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_350);
2876  obsThFactory["mueeZHmumu365"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_365);
2877  obsThFactory["mueeZHmumu380"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_380);
2878  obsThFactory["mueeZHmumu500"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_500);
2879  obsThFactory["mueeZHmumu1000"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_1000);
2880  obsThFactory["mueeZHmumu1400"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_1400);
2881  obsThFactory["mueeZHmumu1500"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_1500);
2882  obsThFactory["mueeZHmumu3000"] = boost::bind(boost::factory<mueeZHmumu*>(), _1, sqrt_s_leptcoll_3000);
2883  //
2884  obsThFactory["mueeZHmumu250_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2885  obsThFactory["mueeZHmumu250_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2886  obsThFactory["mueeZHmumu250_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2887  obsThFactory["mueeZHmumu250_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2888  //
2889  obsThFactory["mueeZHmumu350_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2890  obsThFactory["mueeZHmumu350_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2891  obsThFactory["mueeZHmumu350_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2892  obsThFactory["mueeZHmumu350_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2893  //
2894  obsThFactory["mueeZHmumu380_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2895  obsThFactory["mueeZHmumu380_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2896  obsThFactory["mueeZHmumu380_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2897  obsThFactory["mueeZHmumu380_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2898  //
2899  obsThFactory["mueeZHmumu500_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2900  obsThFactory["mueeZHmumu500_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2901  obsThFactory["mueeZHmumu500_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2902  obsThFactory["mueeZHmumu500_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2903  //
2904  obsThFactory["mueeZHmumu1000_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2905  obsThFactory["mueeZHmumu1000_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2906  obsThFactory["mueeZHmumu1000_p80_m20"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2907  obsThFactory["mueeZHmumu1000_m80_p20"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2908  obsThFactory["mueeZHmumu1000_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2909  obsThFactory["mueeZHmumu1000_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2910  //
2911  obsThFactory["mueeZHmumu1400_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2912  obsThFactory["mueeZHmumu1400_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2913  obsThFactory["mueeZHmumu1400_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2914  obsThFactory["mueeZHmumu1400_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2915  //
2916  obsThFactory["mueeZHmumu1500_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2917  obsThFactory["mueeZHmumu1500_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2918  obsThFactory["mueeZHmumu1500_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2919  obsThFactory["mueeZHmumu1500_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2920  //
2921  obsThFactory["mueeZHmumu3000_p80_m30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2922  obsThFactory["mueeZHmumu3000_m80_p30"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2923  obsThFactory["mueeZHmumu3000_p80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2924  obsThFactory["mueeZHmumu3000_m80_0"] = boost::bind(boost::factory<mueeZHmumuPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2925  //
2926  obsThFactory["mueeZHinv240"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_240);
2927  obsThFactory["mueeZHinv250"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_250);
2928  obsThFactory["mueeZHinv350"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_350);
2929  obsThFactory["mueeZHinv365"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_365);
2930  obsThFactory["mueeZHinv380"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_380);
2931  obsThFactory["mueeZHinv500"] = boost::bind(boost::factory<mueeZHinv*>(), _1, sqrt_s_leptcoll_500);
2932  //
2933  obsThFactory["mueeZHinv250_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2934  obsThFactory["mueeZHinv250_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2935  obsThFactory["mueeZHinv250_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2936  obsThFactory["mueeZHinv250_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2937  //
2938  obsThFactory["mueeZHinv350_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2939  obsThFactory["mueeZHinv350_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2940  obsThFactory["mueeZHinv350_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2941  obsThFactory["mueeZHinv350_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2942  //
2943  obsThFactory["mueeZHinv380_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2944  obsThFactory["mueeZHinv380_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2945  obsThFactory["mueeZHinv380_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2946  obsThFactory["mueeZHinv380_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2947  //
2948  obsThFactory["mueeZHinv500_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2949  obsThFactory["mueeZHinv500_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2950  obsThFactory["mueeZHinv500_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
2951  obsThFactory["mueeZHinv500_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
2952  //
2953  obsThFactory["mueeZHinv1000_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
2954  obsThFactory["mueeZHinv1000_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
2955  obsThFactory["mueeZHinv1000_p80_m20"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
2956  obsThFactory["mueeZHinv1000_m80_p20"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
2957  obsThFactory["mueeZHinv1000_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
2958  obsThFactory["mueeZHinv1000_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
2959  //
2960  obsThFactory["mueeZHinv1400_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
2961  obsThFactory["mueeZHinv1400_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
2962  obsThFactory["mueeZHinv1400_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
2963  obsThFactory["mueeZHinv1400_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
2964  //
2965  obsThFactory["mueeZHinv1500_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
2966  obsThFactory["mueeZHinv1500_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
2967  obsThFactory["mueeZHinv1500_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
2968  obsThFactory["mueeZHinv1500_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
2969  //
2970  obsThFactory["mueeZHinv3000_p80_m30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
2971  obsThFactory["mueeZHinv3000_m80_p30"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
2972  obsThFactory["mueeZHinv3000_p80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
2973  obsThFactory["mueeZHinv3000_m80_0"] = boost::bind(boost::factory<mueeZHinvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
2974  //
2975  obsThFactory["mueeZHBRinv240"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_240);
2976  obsThFactory["mueeZHBRinv250"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_250);
2977  obsThFactory["mueeZHBRinv350"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_350);
2978  obsThFactory["mueeZHBRinv365"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_365);
2979  obsThFactory["mueeZHBRinv380"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_380);
2980  obsThFactory["mueeZHBRinv500"] = boost::bind(boost::factory<mueeZHBRinv*>(), _1, sqrt_s_leptcoll_500);
2981  //
2982  obsThFactory["mueeZHBRinv250_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
2983  obsThFactory["mueeZHBRinv250_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
2984  obsThFactory["mueeZHBRinv250_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
2985  obsThFactory["mueeZHBRinv250_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
2986  //
2987  obsThFactory["mueeZHBRinv350_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
2988  obsThFactory["mueeZHBRinv350_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
2989  obsThFactory["mueeZHBRinv350_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
2990  obsThFactory["mueeZHBRinv350_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
2991  //
2992  obsThFactory["mueeZHBRinv380_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
2993  obsThFactory["mueeZHBRinv380_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
2994  obsThFactory["mueeZHBRinv380_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
2995  obsThFactory["mueeZHBRinv380_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
2996  //
2997  obsThFactory["mueeZHBRinv500_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
2998  obsThFactory["mueeZHBRinv500_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
2999  obsThFactory["mueeZHBRinv500_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
3000  obsThFactory["mueeZHBRinv500_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
3001  //
3002  obsThFactory["mueeZHBRinv1000_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
3003  obsThFactory["mueeZHBRinv1000_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
3004  obsThFactory["mueeZHBRinv1000_p80_m20"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
3005  obsThFactory["mueeZHBRinv1000_m80_p20"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
3006  obsThFactory["mueeZHBRinv1000_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
3007  obsThFactory["mueeZHBRinv1000_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
3008  //
3009  obsThFactory["mueeZHBRinv1400_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
3010  obsThFactory["mueeZHBRinv1400_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
3011  obsThFactory["mueeZHBRinv1400_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
3012  obsThFactory["mueeZHBRinv1400_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
3013  //
3014  obsThFactory["mueeZHBRinv1500_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
3015  obsThFactory["mueeZHBRinv1500_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
3016  obsThFactory["mueeZHBRinv1500_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
3017  obsThFactory["mueeZHBRinv1500_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
3018  //
3019  obsThFactory["mueeZHBRinv3000_p80_m30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
3020  obsThFactory["mueeZHBRinv3000_m80_p30"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
3021  obsThFactory["mueeZHBRinv3000_p80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
3022  obsThFactory["mueeZHBRinv3000_m80_0"] = boost::bind(boost::factory<mueeZHBRinvPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
3023  //
3024  // ZBF
3025  obsThFactory["mueeZBFbb240"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_240);
3026  obsThFactory["mueeZBFbb250"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_250);
3027  obsThFactory["mueeZBFbb350"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_350);
3028  obsThFactory["mueeZBFbb365"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_365);
3029  obsThFactory["mueeZBFbb380"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_380);
3030  obsThFactory["mueeZBFbb500"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_500);
3031  obsThFactory["mueeZBFbb1000"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_1000);
3032  obsThFactory["mueeZBFbb1400"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_1400);
3033  obsThFactory["mueeZBFbb1500"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_1500);
3034  obsThFactory["mueeZBFbb3000"] = boost::bind(boost::factory<mueeZBFbb*>(), _1, sqrt_s_leptcoll_3000);
3035  //
3036  obsThFactory["mueeZBFbb250_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, -pol_30);
3037  obsThFactory["mueeZBFbb250_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_30);
3038  obsThFactory["mueeZBFbb250_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_250, pol_80, pol_0);
3039  obsThFactory["mueeZBFbb250_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_250, -pol_80, pol_0);
3040  //
3041  obsThFactory["mueeZBFbb350_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, -pol_30);
3042  obsThFactory["mueeZBFbb350_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_30);
3043  obsThFactory["mueeZBFbb350_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_350, pol_80, pol_0);
3044  obsThFactory["mueeZBFbb350_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_350, -pol_80, pol_0);
3045  //
3046  obsThFactory["mueeZBFbb380_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, -pol_30);
3047  obsThFactory["mueeZBFbb380_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_30);
3048  obsThFactory["mueeZBFbb380_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_380, pol_80, pol_0);
3049  obsThFactory["mueeZBFbb380_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_380, -pol_80, pol_0);
3050  //
3051  obsThFactory["mueeZBFbb500_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
3052  obsThFactory["mueeZBFbb500_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
3053  obsThFactory["mueeZBFbb500_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
3054  obsThFactory["mueeZBFbb500_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
3055  //
3056  obsThFactory["mueeZBFbb1000_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
3057  obsThFactory["mueeZBFbb1000_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
3058  obsThFactory["mueeZBFbb1000_p80_m20"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
3059  obsThFactory["mueeZBFbb1000_m80_p20"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
3060  obsThFactory["mueeZBFbb1000_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
3061  obsThFactory["mueeZBFbb1000_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
3062  //
3063  obsThFactory["mueeZBFbb1400_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
3064  obsThFactory["mueeZBFbb1400_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
3065  obsThFactory["mueeZBFbb1400_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
3066  obsThFactory["mueeZBFbb1400_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
3067  //
3068  obsThFactory["mueeZBFbb1500_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
3069  obsThFactory["mueeZBFbb1500_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
3070  obsThFactory["mueeZBFbb1500_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
3071  obsThFactory["mueeZBFbb1500_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
3072  //
3073  obsThFactory["mueeZBFbb3000_p80_m30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
3074  obsThFactory["mueeZBFbb3000_m80_p30"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
3075  obsThFactory["mueeZBFbb3000_p80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
3076  obsThFactory["mueeZBFbb3000_m80_0"] = boost::bind(boost::factory<mueeZBFbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
3077  //
3078  // eettH
3079  obsThFactory["mueettHbb500"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_500);
3080  obsThFactory["mueettHbb1000"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_1000);
3081  obsThFactory["mueettHbb1400"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_1400);
3082  obsThFactory["mueettHbb1500"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_1500);
3083  obsThFactory["mueettHbb3000"] = boost::bind(boost::factory<mueettHbb*>(), _1, sqrt_s_leptcoll_3000);
3084  //
3085  obsThFactory["mueettHbb500_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, -pol_30);
3086  obsThFactory["mueettHbb500_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_30);
3087  obsThFactory["mueettHbb500_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_500, pol_80, pol_0);
3088  obsThFactory["mueettHbb500_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_500, -pol_80, pol_0);
3089  //
3090  obsThFactory["mueettHbb1000_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_30);
3091  obsThFactory["mueettHbb1000_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_30);
3092  obsThFactory["mueettHbb1000_p80_m20"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, -pol_20);
3093  obsThFactory["mueettHbb1000_m80_p20"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_20);
3094  obsThFactory["mueettHbb1000_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, pol_80, pol_0);
3095  obsThFactory["mueettHbb1000_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1000, -pol_80, pol_0);
3096  //
3097  obsThFactory["mueettHbb1400_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, -pol_30);
3098  obsThFactory["mueettHbb1400_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_30);
3099  obsThFactory["mueettHbb1400_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1400, pol_80, pol_0);
3100  obsThFactory["mueettHbb1400_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1400, -pol_80, pol_0);
3101  //
3102  obsThFactory["mueettHbb1500_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, -pol_30);
3103  obsThFactory["mueettHbb1500_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_30);
3104  obsThFactory["mueettHbb1500_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1500, pol_80, pol_0);
3105  obsThFactory["mueettHbb1500_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_1500, -pol_80, pol_0);
3106  //
3107  obsThFactory["mueettHbb3000_p80_m30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, -pol_30);
3108  obsThFactory["mueettHbb3000_m80_p30"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_30);
3109  obsThFactory["mueettHbb3000_p80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_3000, pol_80, pol_0);
3110  obsThFactory["mueettHbb3000_m80_0"] = boost::bind(boost::factory<mueettHbbPol*>(), _1, sqrt_s_leptcoll_3000, -pol_80, pol_0);
3111  //
3112  //----- Full Signal strengths per prod and decay: Lepton-Hadron colliders ----------
3113  //
3114  obsThFactory["muepWBFbb1300"] = boost::bind(boost::factory<muepWBFbb*>(), _1, sqrt_s_LHeC_1_3);
3115  obsThFactory["muepWBFcc1300"] = boost::bind(boost::factory<muepWBFcc*>(), _1, sqrt_s_LHeC_1_3);
3116  obsThFactory["muepWBFgg1300"] = boost::bind(boost::factory<muepWBFgg*>(), _1, sqrt_s_LHeC_1_3);
3117  obsThFactory["muepWBFWW2l2v1300"] = boost::bind(boost::factory<muepWBFWW2l2v*>(), _1, sqrt_s_LHeC_1_3);
3118  obsThFactory["muepWBFZZ4l1300"] = boost::bind(boost::factory<muepWBFZZ4l*>(), _1, sqrt_s_LHeC_1_3);
3119  obsThFactory["muepWBFgaga1300"] = boost::bind(boost::factory<muepWBFgaga*>(), _1, sqrt_s_LHeC_1_3);
3120  obsThFactory["muepWBFtautau1300"] = boost::bind(boost::factory<muepWBFtautau*>(), _1, sqrt_s_LHeC_1_3);
3121  //
3122  obsThFactory["muepWBFbb1800"] = boost::bind(boost::factory<muepWBFbb*>(), _1, sqrt_s_LHeC_1_8);
3123  obsThFactory["muepWBFcc1800"] = boost::bind(boost::factory<muepWBFcc*>(), _1, sqrt_s_LHeC_1_8);
3124  obsThFactory["muepWBFgg1800"] = boost::bind(boost::factory<muepWBFgg*>(), _1, sqrt_s_LHeC_1_8);
3125  obsThFactory["muepWBFWW2l2v1800"] = boost::bind(boost::factory<muepWBFWW2l2v*>(), _1, sqrt_s_LHeC_1_8);
3126  obsThFactory["muepWBFZZ4l1800"] = boost::bind(boost::factory<muepWBFZZ4l*>(), _1, sqrt_s_LHeC_1_8);
3127  obsThFactory["muepWBFgaga1800"] = boost::bind(boost::factory<muepWBFgaga*>(), _1, sqrt_s_LHeC_1_8);
3128  obsThFactory["muepWBFtautau1800"] = boost::bind(boost::factory<muepWBFtautau*>(), _1, sqrt_s_LHeC_1_8);
3129  //
3130  obsThFactory["muepWBFbb3500"] = boost::bind(boost::factory<muepWBFbb*>(), _1, sqrt_s_FCCep_3_5);
3131  obsThFactory["muepWBFcc3500"] = boost::bind(boost::factory<muepWBFcc*>(), _1, sqrt_s_FCCep_3_5);
3132  obsThFactory["muepWBFgg3500"] = boost::bind(boost::factory<muepWBFgg*>(), _1, sqrt_s_FCCep_3_5);
3133  obsThFactory["muepWBFWW2l2v3500"] = boost::bind(boost::factory<muepWBFWW2l2v*>(), _1, sqrt_s_FCCep_3_5);
3134  obsThFactory["muepWBFZZ4l3500"] = boost::bind(boost::factory<muepWBFZZ4l*>(), _1, sqrt_s_FCCep_3_5);
3135  obsThFactory["muepWBFgaga3500"] = boost::bind(boost::factory<muepWBFgaga*>(), _1, sqrt_s_FCCep_3_5);
3136  obsThFactory["muepWBFtautau3500"] = boost::bind(boost::factory<muepWBFtautau*>(), _1, sqrt_s_FCCep_3_5);
3137  //
3138  obsThFactory["muepWBFbb5000"] = boost::bind(boost::factory<muepWBFbb*>(), _1, sqrt_s_FCCep_5);
3139  obsThFactory["muepWBFcc5000"] = boost::bind(boost::factory<muepWBFcc*>(), _1, sqrt_s_FCCep_5);
3140  obsThFactory["muepWBFgg5000"] = boost::bind(boost::factory<muepWBFgg*>(), _1, sqrt_s_FCCep_5);
3141  obsThFactory["muepWBFWW2l2v5000"] = boost::bind(boost::factory<muepWBFWW2l2v*>(), _1, sqrt_s_FCCep_5);
3142  obsThFactory["muepWBFZZ4l5000"] = boost::bind(boost::factory<muepWBFZZ4l*>(), _1, sqrt_s_FCCep_5);
3143  obsThFactory["muepWBFgaga5000"] = boost::bind(boost::factory<muepWBFgaga*>(), _1, sqrt_s_FCCep_5);
3144  obsThFactory["muepWBFtautau5000"] = boost::bind(boost::factory<muepWBFtautau*>(), _1, sqrt_s_FCCep_5);
3145  //
3146  obsThFactory["muepZBFbb1300"] = boost::bind(boost::factory<muepZBFbb*>(), _1, sqrt_s_LHeC_1_3);
3147  obsThFactory["muepZBFcc1300"] = boost::bind(boost::factory<muepZBFcc*>(), _1, sqrt_s_LHeC_1_3);
3148  obsThFactory["muepZBFgg1300"] = boost::bind(boost::factory<muepZBFgg*>(), _1, sqrt_s_LHeC_1_3);
3149  obsThFactory["muepZBFWW2l2v1300"] = boost::bind(boost::factory<muepZBFWW2l2v*>(), _1, sqrt_s_LHeC_1_3);
3150  obsThFactory["muepZBFZZ4l1300"] = boost::bind(boost::factory<muepZBFZZ4l*>(), _1, sqrt_s_LHeC_1_3);
3151  obsThFactory["muepZBFgaga1300"] = boost::bind(boost::factory<muepZBFgaga*>(), _1, sqrt_s_LHeC_1_3);
3152  obsThFactory["muepZBFtautau1300"] = boost::bind(boost::factory<muepZBFtautau*>(), _1, sqrt_s_LHeC_1_3);
3153  //
3154  obsThFactory["muepZBFbb1800"] = boost::bind(boost::factory<muepZBFbb*>(), _1, sqrt_s_LHeC_1_8);
3155  obsThFactory["muepZBFcc1800"] = boost::bind(boost::factory<muepZBFcc*>(), _1, sqrt_s_LHeC_1_8);
3156  obsThFactory["muepZBFgg1800"] = boost::bind(boost::factory<muepZBFgg*>(), _1, sqrt_s_LHeC_1_8);
3157  obsThFactory["muepZBFWW2l2v1800"] = boost::bind(boost::factory<muepZBFWW2l2v*>(), _1, sqrt_s_LHeC_1_8);
3158  obsThFactory["muepZBFZZ4l1800"] = boost::bind(boost::factory<muepZBFZZ4l*>(), _1, sqrt_s_LHeC_1_8);
3159  obsThFactory["muepZBFgaga1800"] = boost::bind(boost::factory<muepZBFgaga*>(), _1, sqrt_s_LHeC_1_8);
3160  obsThFactory["muepZBFtautau1800"] = boost::bind(boost::factory<muepZBFtautau*>(), _1, sqrt_s_LHeC_1_8);
3161  //
3162  obsThFactory["muepZBFbb3500"] = boost::bind(boost::factory<muepZBFbb*>(), _1, sqrt_s_FCCep_3_5);
3163  obsThFactory["muepZBFcc3500"] = boost::bind(boost::factory<muepZBFcc*>(), _1, sqrt_s_FCCep_3_5);
3164  obsThFactory["muepZBFgg3500"] = boost::bind(boost::factory<muepZBFgg*>(), _1, sqrt_s_FCCep_3_5);
3165  obsThFactory["muepZBFWW2l2v3500"] = boost::bind(boost::factory<muepZBFWW2l2v*>(), _1, sqrt_s_FCCep_3_5);
3166  obsThFactory["muepZBFZZ4l3500"] = boost::bind(boost::factory<muepZBFZZ4l*>(), _1, sqrt_s_FCCep_3_5);
3167  obsThFactory["muepZBFgaga3500"] = boost::bind(boost::factory<muepZBFgaga*>(), _1, sqrt_s_FCCep_3_5);
3168  obsThFactory["muepZBFtautau3500"] = boost::bind(boost::factory<muepZBFtautau*>(), _1, sqrt_s_FCCep_3_5);
3169  //
3170  obsThFactory["muepZBFbb5000"] = boost::bind(boost::factory<muepZBFbb*>(), _1, sqrt_s_FCCep_5);
3171  obsThFactory["muepZBFcc5000"] = boost::bind(boost::factory<muepZBFcc*>(), _1, sqrt_s_FCCep_5);
3172  obsThFactory["muepZBFgg5000"] = boost::bind(boost::factory<muepZBFgg*>(), _1, sqrt_s_FCCep_5);
3173  obsThFactory["muepZBFWW2l2v5000"] = boost::bind(boost::factory<muepZBFWW2l2v*>(), _1, sqrt_s_FCCep_5);
3174  obsThFactory["muepZBFZZ4l5000"] = boost::bind(boost::factory<muepZBFZZ4l*>(), _1, sqrt_s_FCCep_5);
3175  obsThFactory["muepZBFgaga5000"] = boost::bind(boost::factory<muepZBFgaga*>(), _1, sqrt_s_FCCep_5);
3176  obsThFactory["muepZBFtautau5000"] = boost::bind(boost::factory<muepZBFtautau*>(), _1, sqrt_s_FCCep_5);
3177  //
3178  //----- Limits ----------
3179  obsThFactory["UpperLimit_ppHZgammaA13"] = boost::bind(boost::factory<UpperLimit_ppHZgammaA13*>(), _1, sqrt_s_LHC13);
3180  obsThFactory["UpperLimit_ppHZgammaC13"] = boost::bind(boost::factory<UpperLimit_ppHZgammaC13*>(), _1, sqrt_s_LHC13);
3181  obsThFactory["UpperLimit_ppHZgammaA"] = boost::bind(boost::factory<UpperLimit_ppHZgammaA*>(), _1, sqrt_s_LHC8);
3182  obsThFactory["UpperLimit_ppHZgammaC"] = boost::bind(boost::factory<UpperLimit_ppHZgammaC*>(), _1, sqrt_s_LHC8);
3183  //----- Others ----------
3184  obsThFactory["cg_plus_ct"] = boost::factory<cg_plus_ct*>();
3185  obsThFactory["cga_plus_ct"] = boost::factory<cga_plus_ct*>();
3186  obsThFactory["cg_minus_cga"] = boost::factory<cg_minus_cga*>();
3187  obsThFactory["cV_plus_cb"] = boost::factory<cV_plus_cb*>();
3188  obsThFactory["cV_plus_ctau"] = boost::factory<cV_plus_ctau*>();
3189  obsThFactory["cb_minus_cc"] = boost::factory<cb_minus_cc*>();
3190  obsThFactory["cb_minus_ctau"] = boost::factory<cb_minus_ctau*>();
3191  obsThFactory["cc_minus_ctau"] = boost::factory<cc_minus_ctau*>();
3192 
3193  //----- e+e- -> W+ W- Optimized Observables -----
3194  obsThFactory["eeWWOO"] = boost::factory<eeWW*>();
3195 
3196  //----- Epsilon parameters -----
3197  obsThFactory["epsilon1"] = boost::factory<Epsilon1*>();
3198  obsThFactory["epsilon2"] = boost::factory<Epsilon2*>();
3199  obsThFactory["epsilon3"] = boost::factory<Epsilon3*>();
3200  obsThFactory["epsilonb"] = boost::factory<Epsilonb*>();
3201 
3202 
3203  //----- NPSMEFT6dtopquark -----
3204 
3205  obsThFactory["C_phit"] = boost::factory<C_phit*>();
3206  obsThFactory["C_phiQ3"] = boost::factory<C_phiQ3*>();
3207  obsThFactory["C_phiQ1"] = boost::factory<C_phiQ1*>();
3208  obsThFactory["C_tW"] = boost::factory<C_tW*>();
3209  obsThFactory["C_tB"] = boost::factory<C_tB*>();
3210  obsThFactory["C_tphi"] = boost::factory<C_tphi*>();
3211  obsThFactory["C_phib"] = boost::factory<C_phib*>();
3212  obsThFactory["C_bW"] = boost::factory<C_bW*>();
3213  obsThFactory["C_bB"] = boost::factory<C_bB*>();
3214 
3215  obsThFactory["Rb_NPSMEFT6dtopquark"] = boost::factory<Rb_NPSMEFT6dtopquark*>();
3216  obsThFactory["AFBLR"] = boost::factory<AFBLR*>();
3217  obsThFactory["SigmattZ"] = boost::factory<sigmattZ*>();
3218  obsThFactory["SigmattA_1"] = boost::factory<sigmattA_1*>();
3219  obsThFactory["SigmattA_2"] = boost::factory<sigmattA_2*>();
3220  obsThFactory["SigmattH"] = boost::factory<sigmattH*>();
3221  obsThFactory["SigmattW"] = boost::factory<sigmattW*>();
3222  obsThFactory["Sigmatq"] = boost::factory<sigmatq*>();
3223  obsThFactory["SigmatW"] = boost::factory<sigmatW*>();
3224  obsThFactory["SigmatqZ"] = boost::factory<sigmatqZ*>();
3225  obsThFactory["F0"] = boost::factory<F0*>();
3226  obsThFactory["FL"] = boost::factory<FL*>();
3227  obsThFactory["sigma_250_bb_eLpR"] = boost::factory<sigma_250_bb_eLpR*>();
3228  obsThFactory["a_250_bb_eLpR"] = boost::factory<a_250_bb_eLpR*>();
3229  obsThFactory["sigma_250_bb_eRpL"] = boost::factory<sigma_250_bb_eRpL*>();
3230  obsThFactory["a_250_bb_eRpL"] = boost::factory<a_250_bb_eRpL*>();
3231  obsThFactory["sigma_500_bb_eLpR"] = boost::factory<sigma_500_bb_eLpR*>();
3232  obsThFactory["a_500_bb_eLpR"] = boost::factory<a_500_bb_eLpR*>();
3233  obsThFactory["sigma_500_bb_eRpL"] = boost::factory<sigma_500_bb_eRpL*>();
3234  obsThFactory["a_500_bb_eRpL"] = boost::factory<a_500_bb_eRpL*>();
3235  obsThFactory["sigma_500_tt_eLpR"] = boost::factory<sigma_500_tt_eLpR*>();
3236  obsThFactory["a_500_tt_eLpR"] = boost::factory<a_500_tt_eLpR*>();
3237  obsThFactory["sigma_500_tt_eRpL"] = boost::factory<sigma_500_tt_eRpL*>();
3238  obsThFactory["a_500_tt_eRpL"] = boost::factory<a_500_tt_eRpL*>();
3239  obsThFactory["pt_500_tt_eLpR"] = boost::factory<pt_500_tt_eLpR*>();
3240  obsThFactory["pt_500_tt_eRpL"] = boost::factory<pt_500_tt_eRpL*>();
3241 
3242  obsThFactory["sigma_1000_bb_eLpR"] = boost::factory<sigma_1000_bb_eLpR*>();
3243  obsThFactory["a_1000_bb_eLpR"] = boost::factory<a_1000_bb_eLpR*>();
3244  obsThFactory["sigma_1000_bb_eRpL"] = boost::factory<sigma_1000_bb_eRpL*>();
3245  obsThFactory["a_1000_bb_eRpL"] = boost::factory<a_1000_bb_eRpL*>();
3246 
3247 
3248  //OPTIMIZED OBSERVABLES
3249 
3250  obsThFactory["op1"] = boost::factory<op1*>();
3251  obsThFactory["op2"] = boost::factory<op2*>();
3252  obsThFactory["op3"] = boost::factory<op3*>();
3253  obsThFactory["op4"] = boost::factory<op4*>();
3254 
3255  //OPTIMIZED OBSERVABLES 1000 GeV
3256 
3257  obsThFactory["op_1000_1"] = boost::factory<op_1000_1*>();
3258  obsThFactory["op_1000_2"] = boost::factory<op_1000_2*>();
3259  obsThFactory["op_1000_3"] = boost::factory<op_1000_3*>();
3260  obsThFactory["op_1000_4"] = boost::factory<op_1000_4*>();
3261  obsThFactory["op_1000_5"] = boost::factory<op_1000_5*>();
3262  obsThFactory["op_1000_6"] = boost::factory<op_1000_6*>();
3263  obsThFactory["op_1000_7"] = boost::factory<op_1000_7*>();
3264  obsThFactory["op_1000_8"] = boost::factory<op_1000_8*>();
3265 
3266 
3267 
3268 
3269 
3270  //----- Flavour observables -----
3271  //----- DF = 2 -----
3272  obsThFactory["DmBd"] = boost::factory<DmBd*>();
3273  obsThFactory["DmBs"] = boost::factory<DmBs*>();
3274  obsThFactory["RmBs"] = boost::factory<RmBs*>();
3275  obsThFactory["alpha"] = boost::factory<Alpha*>();
3276  obsThFactory["alpha_2a"] = boost::factory<Alpha_2a*>();
3277  obsThFactory["SJPsiK"] = boost::factory<SJPsiK*>();
3278  obsThFactory["C2beta"] = boost::factory<C2beta*>();
3279  obsThFactory["Betas_JPsiPhi"] = boost::factory<Betas_JPsiPhi*>();
3280  obsThFactory["EpsilonK"] = boost::factory<EpsilonK*>();
3281  obsThFactory["DmK"] = boost::factory<DmK*>();
3282  obsThFactory["ImADC2"] = boost::factory<ImADC2*>();
3283  //----- CKM -----
3284  obsThFactory["Vud"] = boost::bind(boost::factory<VCKM*>(), _1, 1, 1);
3285  obsThFactory["Vus"] = boost::bind(boost::factory<VCKM*>(), _1, 1, 2);
3286  obsThFactory["Vub"] = boost::bind(boost::factory<VCKM*>(), _1, 1, 3);
3287  obsThFactory["Vcd"] = boost::bind(boost::factory<VCKM*>(), _1, 2, 1);
3288  obsThFactory["Vcs"] = boost::bind(boost::factory<VCKM*>(), _1, 2, 2);
3289  obsThFactory["Vcb"] = boost::bind(boost::factory<VCKM*>(), _1, 2, 3);
3290  obsThFactory["Vtd"] = boost::bind(boost::factory<VCKM*>(), _1, 3, 1);
3291  obsThFactory["Vts"] = boost::bind(boost::factory<VCKM*>(), _1, 3, 2);
3292  obsThFactory["Vtb"] = boost::bind(boost::factory<VCKM*>(), _1, 3, 3);
3293  obsThFactory["CKM_alpha"] = boost::factory<CKM_Alpha*>();
3294  obsThFactory["CKM_gamma"] = boost::factory<CKM_Gamma*>();
3295  obsThFactory["CKM_beta"] = boost::factory<CKM_Beta*>();
3296  obsThFactory["CKM_betas"] = boost::factory<CKM_Betas*>();
3297  obsThFactory["CKM_2betapgamma"] = boost::factory<CKM_2BpG*>();
3298  obsThFactory["CKM_s2beta"] = boost::factory<CKM_S2Beta*>();
3299  obsThFactory["CKM_c2beta"] = boost::factory<CKM_C2Beta*>();
3300  obsThFactory["CKM_rho"] = boost::factory<CKM_rho*>();
3301  obsThFactory["CKM_eta"] = boost::factory<CKM_eta*>();
3302  obsThFactory["CKM_sintheta12"] = boost::factory<CKM_SinTheta12*>();
3303  obsThFactory["CKM_sintheta13"] = boost::factory<CKM_SinTheta13*>();
3304  obsThFactory["CKM_sintheta23"] = boost::factory<CKM_SinTheta23*>();
3305  obsThFactory["CKM_delta"] = boost::factory<CKM_Delta*>();
3306  obsThFactory["J_CP"] = boost::factory<J_CP*>();
3307  obsThFactory["Rt"] = boost::factory<CKM_Rt*>();
3308  obsThFactory["Rts"] = boost::factory<CKM_Rts*>();
3309  obsThFactory["Rb"] = boost::factory<CKM_Rb*>();
3310  obsThFactory["VtdoVts"] = boost::factory<CKM_VtdoVts*>();
3311  obsThFactory["Abslam_t"] = boost::factory<Abslam_t*>();
3312  obsThFactory["Abslam_c"] = boost::factory<Abslam_c*>();
3313  obsThFactory["Abslam_u"] = boost::factory<Abslam_u*>();
3314  obsThFactory["Abslam_td"] = boost::factory<Abslam_td*>();
3315  obsThFactory["Abslam_cd"] = boost::factory<Abslam_cd*>();
3316  obsThFactory["Abslam_ud"] = boost::factory<Abslam_ud*>();
3317  obsThFactory["Abslam_ts"] = boost::factory<Abslam_ts*>();
3318  obsThFactory["Abslam_cs"] = boost::factory<Abslam_cs*>();
3319  obsThFactory["Abslam_us"] = boost::factory<Abslam_us*>();
3320  obsThFactory["Relam_t"] = boost::factory<Relam_t*>();
3321  obsThFactory["Relam_c"] = boost::factory<Relam_c*>();
3322  obsThFactory["Relam_u"] = boost::factory<Relam_u*>();
3323  obsThFactory["Relam_td"] = boost::factory<Relam_td*>();
3324  obsThFactory["Relam_cd"] = boost::factory<Relam_cd*>();
3325  obsThFactory["Relam_ud"] = boost::factory<Relam_ud*>();
3326  obsThFactory["Relam_ts"] = boost::factory<Relam_ts*>();
3327  obsThFactory["Relam_cs"] = boost::factory<Relam_cs*>();
3328  obsThFactory["Relam_us"] = boost::factory<Relam_us*>();
3329  obsThFactory["Imlam_t"] = boost::factory<Imlam_t*>();
3330  obsThFactory["Imlam_c"] = boost::factory<Imlam_c*>();
3331  obsThFactory["Imlam_u"] = boost::factory<Imlam_u*>();
3332  obsThFactory["Imlam_td"] = boost::factory<Imlam_td*>();
3333  obsThFactory["Imlam_cd"] = boost::factory<Imlam_cd*>();
3334  obsThFactory["Imlam_ud"] = boost::factory<Imlam_ud*>();
3335  obsThFactory["Imlam_ts"] = boost::factory<Imlam_ts*>();
3336  obsThFactory["Imlam_cs"] = boost::factory<Imlam_cs*>();
3337  obsThFactory["Imlam_us"] = boost::factory<Imlam_us*>();
3338  //----- B(s) to mu mu -----
3339  obsThFactory["BR_Bdmumu"] = boost::bind(boost::factory<Mll*>(), _1, 1, StandardModel::B_D, StandardModel::MU);
3340  obsThFactory["BRbar_Bdmumu"] = boost::bind(boost::factory<Mll*>(), _1, 2, StandardModel::B_D, StandardModel::MU);
3341  obsThFactory["Amumu_Bd"] = boost::bind(boost::factory<Mll*>(), _1, 3, StandardModel::B_D, StandardModel::MU);
3342  obsThFactory["Smumu_Bd"] = boost::bind(boost::factory<Mll*>(), _1, 4, StandardModel::B_D, StandardModel::MU);
3343 
3344  obsThFactory["BR_Bsmumu"] = boost::bind(boost::factory<Mll*>(), _1, 1, StandardModel::B_S, StandardModel::MU);
3345  obsThFactory["BRbar_Bsmumu"] = boost::bind(boost::factory<Mll*>(), _1, 2, StandardModel::B_S, StandardModel::MU);
3346  obsThFactory["Amumu_Bs"] = boost::bind(boost::factory<Mll*>(), _1, 3, StandardModel::B_S, StandardModel::MU);
3347  obsThFactory["Smumu_Bs"] = boost::bind(boost::factory<Mll*>(), _1, 4, StandardModel::B_S, StandardModel::MU);
3348  obsThFactory["BR_Bsee"] = boost::bind(boost::factory<Mll*>(), _1, 1, StandardModel::B_S, StandardModel::ELECTRON);
3349  obsThFactory["BRbar_Bsee"] = boost::bind(boost::factory<Mll*>(), _1, 2, StandardModel::B_S, StandardModel::ELECTRON);
3350  obsThFactory["Aee_Bs"] = boost::bind(boost::factory<Mll*>(), _1, 3, StandardModel::B_S, StandardModel::ELECTRON);
3351  obsThFactory["See_Bs"] = boost::bind(boost::factory<Mll*>(), _1, 4, StandardModel::B_S, StandardModel::ELECTRON);
3352 
3353  obsThFactory["BR_BdmumuOBR_Bsmumu"] = boost::factory<BdmumuOBsmumu*>();
3354  //----- b to q gamma -----
3355  obsThFactory["BR_bsgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, StandardModel::STRANGE, 1);
3356  obsThFactory["ACP_bsgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, StandardModel::STRANGE, 2);
3357  obsThFactory["BR_bdgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, StandardModel::DOWN, 1);
3358  obsThFactory["ACP_bdgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, StandardModel::DOWN, 2);
3359  obsThFactory["BR_bqgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, 1);
3360  obsThFactory["ACP_bqgamma"] = boost::bind(boost::factory<Bsgamma*>(), _1, 2);
3361 
3362  //----- Wilson coefficients -----
3363  obsThFactory["WC_real_C7g"] = boost::bind(boost::factory<WC_C7g*>(), _1, 0);
3364  obsThFactory["WC_imag_C7g"] = boost::bind(boost::factory<WC_C7g*>(), _1, 1);
3365  obsThFactory["WC_abs_C7g"] = boost::bind(boost::factory<WC_C7g*>(), _1, 2);
3366  obsThFactory["WC_arg_C7g"] = boost::bind(boost::factory<WC_C7g*>(), _1, 3);
3367 
3368  obsThFactory["WC_real_C9_mu"] = boost::bind(boost::factory<WC_C9*>(), _1, 0, StandardModel::MU);
3369  obsThFactory["WC_imag_C9_mu"] = boost::bind(boost::factory<WC_C9*>(), _1, 1, StandardModel::MU);
3370  obsThFactory["WC_abs_C9_mu"] = boost::bind(boost::factory<WC_C9*>(), _1, 2, StandardModel::MU);
3371  obsThFactory["WC_arg_C9_mu"] = boost::bind(boost::factory<WC_C9*>(), _1, 3, StandardModel::MU);
3372 
3373  obsThFactory["WC_real_C9_el"] = boost::bind(boost::factory<WC_C9*>(), _1, 0, StandardModel::ELECTRON);
3374  obsThFactory["WC_imag_C9_el"] = boost::bind(boost::factory<WC_C9*>(), _1, 1, StandardModel::ELECTRON);
3375  obsThFactory["WC_abs_C9_el"] = boost::bind(boost::factory<WC_C9*>(), _1, 2, StandardModel::ELECTRON);
3376  obsThFactory["WC_arg_C9_el"] = boost::bind(boost::factory<WC_C9*>(), _1, 3, StandardModel::ELECTRON);
3377 
3378  obsThFactory["WC_real_C10_mu"] = boost::bind(boost::factory<WC_C10*>(), _1, 0, StandardModel::MU);
3379  obsThFactory["WC_imag_C10_mu"] = boost::bind(boost::factory<WC_C10*>(), _1, 1, StandardModel::MU);
3380  obsThFactory["WC_abs_C10_mu"] = boost::bind(boost::factory<WC_C10*>(), _1, 2, StandardModel::MU);
3381  obsThFactory["WC_arg_C10_mu"] = boost::bind(boost::factory<WC_C10*>(), _1, 3, StandardModel::MU);
3382 
3383  obsThFactory["WC_real_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 0, StandardModel::ELECTRON);
3384  obsThFactory["WC_imag_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 1, StandardModel::ELECTRON);
3385  obsThFactory["WC_abs_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 2, StandardModel::ELECTRON);
3386  obsThFactory["WC_arg_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 3, StandardModel::ELECTRON);
3387 
3388  obsThFactory["WC_arg_C10_el"] = boost::bind(boost::factory<WC_C10*>(), _1, 3, StandardModel::ELECTRON);
3389 
3390  //----- B to K* ll -----
3391  obsThFactory["P_1_BdKstmu"] = boost::bind(boost::factory<P_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3392  obsThFactory["P_1_BdKste"] = boost::bind(boost::factory<P_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3393  obsThFactory["P_2_BdKstmu"] = boost::bind(boost::factory<P_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3394  obsThFactory["P_2_BdKste"] = boost::bind(boost::factory<P_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3395  obsThFactory["P_3_BdKstmu"] = boost::bind(boost::factory<P_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3396  obsThFactory["P_3_BdKste"] = boost::bind(boost::factory<P_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3397  obsThFactory["P_4p_BdKstmu"] = boost::bind(boost::factory<P_4Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3398  obsThFactory["P_4p_BdKste"] = boost::bind(boost::factory<P_4Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3399  obsThFactory["P_5p_BdKstmu"] = boost::bind(boost::factory<P_5Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3400  obsThFactory["P_5p_BdKste"] = boost::bind(boost::factory<P_5Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3401  obsThFactory["P_6p_BdKstmu"] = boost::bind(boost::factory<P_6Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3402  obsThFactory["P_6p_BdKste"] = boost::bind(boost::factory<P_6Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3403  obsThFactory["P_8p_BdKstmu"] = boost::bind(boost::factory<P_8Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3404  obsThFactory["P_8p_BdKste"] = boost::bind(boost::factory<P_8Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3405  obsThFactory["Gammap_BdKstmu"] = boost::bind(boost::factory<GammaPrime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3406  obsThFactory["A_FB_BdKstmu"] = boost::bind(boost::factory<A_FB*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3407  obsThFactory["BR_BdKstmu"] = boost::bind(boost::factory<BR_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3408  obsThFactory["BR_BdKste"] = boost::bind(boost::factory<BR_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3409  obsThFactory["RKst_BdKstll"] = boost::bind(boost::factory<R_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, StandardModel::ELECTRON);
3410  obsThFactory["RKstL_BdKstll"] = boost::bind(boost::factory<RL_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, StandardModel::ELECTRON);
3411  obsThFactory["RKstT_BdKstll"] = boost::bind(boost::factory<RT_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, StandardModel::ELECTRON);
3412  obsThFactory["R6_BdKstll"] = boost::bind(boost::factory<R_6*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, StandardModel::ELECTRON);
3413  obsThFactory["ACP_BdKstmu"] = boost::bind(boost::factory<ACP_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3414  obsThFactory["P3CP_BdKstmu"] = boost::bind(boost::factory<P3CP*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3415  obsThFactory["F_L_BdKstmu"] = boost::bind(boost::factory<F_L*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3416  obsThFactory["F_L_BdKste"] = boost::bind(boost::factory<F_L*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::ELECTRON);
3417  obsThFactory["M_1p_BdKstmu"] = boost::bind(boost::factory<M_1Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3418  obsThFactory["M_2p_BdKstmu"] = boost::bind(boost::factory<M_2Prime*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3419  obsThFactory["S_3_BdKstmu"] = boost::bind(boost::factory<S_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3420  obsThFactory["S_4_BdKstmu"] = boost::bind(boost::factory<S_4*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3421  obsThFactory["S_5_BdKstmu"] = boost::bind(boost::factory<S_5*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3422  obsThFactory["S_7_BdKstmu"] = boost::bind(boost::factory<S_7*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3423  obsThFactory["S_8_BdKstmu"] = boost::bind(boost::factory<S_8*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3424  obsThFactory["S_9_BdKstmu"] = boost::bind(boost::factory<S_9*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3425  obsThFactory["A_5_BdKstmu"] = boost::bind(boost::factory<A_5*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3426  obsThFactory["A_6_BdKstmu"] = boost::bind(boost::factory<A_6*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3427  obsThFactory["A_6c_BdKstmu"] = boost::bind(boost::factory<A_6c*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3428  obsThFactory["A_8_BdKstmu"] = boost::bind(boost::factory<A_8*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3429  obsThFactory["A_9_BdKstmu"] = boost::bind(boost::factory<A_9*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3430 
3431  obsThFactory["P_1f_BdKstmu"] = boost::bind(boost::factory<P_1f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3432  obsThFactory["P_2f_BdKstmu"] = boost::bind(boost::factory<P_2f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3433  obsThFactory["P_3f_BdKstmu"] = boost::bind(boost::factory<P_3f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3434  obsThFactory["P_4pf_BdKstmu"] = boost::bind(boost::factory<P_4Primef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3435  obsThFactory["P_5pf_BdKstmu"] = boost::bind(boost::factory<P_5Primef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3436  obsThFactory["P_6pf_BdKstmu"] = boost::bind(boost::factory<P_6Primef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3437  obsThFactory["P_8pf_BdKstmu"] = boost::bind(boost::factory<P_8Primef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3438  obsThFactory["Gammapf_BdKstmu"] = boost::bind(boost::factory<GammaPrimef*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3439  obsThFactory["BRf_BdKstmu"] = boost::bind(boost::factory<BRf_MVll*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3440  obsThFactory["A_FBf_BdKstmu"] = boost::bind(boost::factory<A_FBf*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3441  obsThFactory["F_Lf_BdKstmu"] = boost::bind(boost::factory<F_Lf*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3442  obsThFactory["S_3f_BdKstmu"] = boost::bind(boost::factory<S_3f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3443  obsThFactory["S_4f_BdKstmu"] = boost::bind(boost::factory<S_4f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3444  obsThFactory["S_5f_BdKstmu"] = boost::bind(boost::factory<S_5f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3445  obsThFactory["S_7f_BdKstmu"] = boost::bind(boost::factory<S_7f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3446  obsThFactory["S_8f_BdKstmu"] = boost::bind(boost::factory<S_8f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3447  obsThFactory["S_9f_BdKstmu"] = boost::bind(boost::factory<S_9f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3448  obsThFactory["P_relationf"] = boost::bind(boost::factory<P_relationf*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3449  obsThFactory["P_relation_exactf"] = boost::bind(boost::factory<P_relation_exactf*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3450 
3451  obsThFactory["V0_BdKstmu"] = boost::bind(boost::factory<V0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3452  obsThFactory["Vp_BdKstmu"] = boost::bind(boost::factory<Vp*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3453  obsThFactory["Vm_BdKstmu"] = boost::bind(boost::factory<Vm*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3454  obsThFactory["T0_BdKstmu"] = boost::bind(boost::factory<T0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3455  obsThFactory["Tp_BdKstmu"] = boost::bind(boost::factory<Tp*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3456  obsThFactory["Tm_BdKstmu"] = boost::bind(boost::factory<Tm*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3457  obsThFactory["S_BdKstmu"] = boost::bind(boost::factory<S*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3458 
3459  obsThFactory["QCDfC9_1f_BdKstmu"] = boost::bind(boost::factory<QCDfC9_1f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3460  obsThFactory["QCDfC9_2f_BdKstmu"] = boost::bind(boost::factory<QCDfC9_2f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3461  obsThFactory["QCDfC9_3f_BdKstmu"] = boost::bind(boost::factory<QCDfC9_3f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3462 
3463  obsThFactory["QCDfC9p_1f_BdKstmu"] = boost::bind(boost::factory<QCDfC9p_1f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3464  obsThFactory["QCDfC9p_2f_BdKstmu"] = boost::bind(boost::factory<QCDfC9p_2f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3465  obsThFactory["QCDfC9p_3f_BdKstmu"] = boost::bind(boost::factory<QCDfC9p_3f*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU);
3466 
3467  obsThFactory["Regtilde_1_BdKstmu"] = boost::bind(boost::factory<gtilde_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3468  obsThFactory["Regtilde_2_BdKstmu"] = boost::bind(boost::factory<gtilde_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3469  obsThFactory["Regtilde_3_BdKstmu"] = boost::bind(boost::factory<gtilde_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3470 
3471  obsThFactory["Imgtilde_1_BdKstmu"] = boost::bind(boost::factory<gtilde_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3472  obsThFactory["Imgtilde_2_BdKstmu"] = boost::bind(boost::factory<gtilde_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3473  obsThFactory["Imgtilde_3_BdKstmu"] = boost::bind(boost::factory<gtilde_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3474 
3475  obsThFactory["Absgtilde_1_BdKstmu"] = boost::bind(boost::factory<gtilde_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3476  obsThFactory["Absgtilde_2_BdKstmu"] = boost::bind(boost::factory<gtilde_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3477  obsThFactory["Absgtilde_3_BdKstmu"] = boost::bind(boost::factory<gtilde_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3478 
3479  obsThFactory["Arggtilde_1_BdKstmu"] = boost::bind(boost::factory<gtilde_1*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3480  obsThFactory["Arggtilde_2_BdKstmu"] = boost::bind(boost::factory<gtilde_2*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3481  obsThFactory["Arggtilde_3_BdKstmu"] = boost::bind(boost::factory<gtilde_3*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3482 
3483  obsThFactory["Reh_0_BdKstmu"] = boost::bind(boost::factory<h_0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3484  obsThFactory["Reh_p_BdKstmu"] = boost::bind(boost::factory<h_p*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3485  obsThFactory["Reh_m_BdKstmu"] = boost::bind(boost::factory<h_m*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 1);
3486 
3487  obsThFactory["Imh_0_BdKstmu"] = boost::bind(boost::factory<h_0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3488  obsThFactory["Imh_p_BdKstmu"] = boost::bind(boost::factory<h_p*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3489  obsThFactory["Imh_m_BdKstmu"] = boost::bind(boost::factory<h_m*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 2);
3490 
3491  obsThFactory["Absh_0_BdKstmu"] = boost::bind(boost::factory<h_0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3492  obsThFactory["Absh_p_BdKstmu"] = boost::bind(boost::factory<h_p*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3493  obsThFactory["Absh_m_BdKstmu"] = boost::bind(boost::factory<h_m*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 3);
3494 
3495  obsThFactory["Argh_0_BdKstmu"] = boost::bind(boost::factory<h_0*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3496  obsThFactory["Argh_p_BdKstmu"] = boost::bind(boost::factory<h_p*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3497  obsThFactory["Argh_m_BdKstmu"] = boost::bind(boost::factory<h_m*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::MU, 4);
3498 
3499  //----- B+ to K*+ ll -----
3500  obsThFactory["A_FB_BpKstmu"] = boost::bind(boost::factory<A_FB*>(), _1, StandardModel::B_P, StandardModel::K_star_P, StandardModel::MU);
3501  obsThFactory["F_L_BpKstmu"] = boost::bind(boost::factory<F_L*>(), _1, StandardModel::B_P, StandardModel::K_star_P, StandardModel::MU);
3502  obsThFactory["BR_BpKstmu"] = boost::bind(boost::factory<BR_MVll*>(), _1, StandardModel::B_P, StandardModel::K_star_P, StandardModel::MU);
3503 
3504 
3505  //----- B to K* gamma -----
3506  obsThFactory["BR_BKstgamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3507  obsThFactory["ACP_BKstgamma"] = boost::bind(boost::factory<ACP_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3508  obsThFactory["C_BKstgamma"] = boost::bind(boost::factory<C_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3509  obsThFactory["S_BKstgamma"] = boost::bind(boost::factory<S_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3510  obsThFactory["ADG_BKstgamma"] = boost::bind(boost::factory<ADG_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star);
3511  obsThFactory["DC7_1"] = boost::bind(boost::factory<DC7_1*>(), _1, StandardModel::B_D, StandardModel::K_star);
3512  obsThFactory["DC7_2"] = boost::bind(boost::factory<DC7_2*>(), _1, StandardModel::B_D, StandardModel::K_star);
3513  obsThFactory["AbsDC7_L"] = boost::bind(boost::factory<AbsDC7_L*>(), _1, StandardModel::B_D, StandardModel::K_star);
3514  obsThFactory["AbsDC7_R"] = boost::bind(boost::factory<AbsDC7_R*>(), _1, StandardModel::B_D, StandardModel::K_star);
3515  obsThFactory["ReDC7_L_Bd"] = boost::bind(boost::factory<ReDC7_L*>(), _1, StandardModel::B_D, StandardModel::K_star);
3516  obsThFactory["ReDC7_R_Bd"] = boost::bind(boost::factory<ReDC7_R*>(), _1, StandardModel::B_D, StandardModel::K_star);
3517  obsThFactory["ImDC7_L_Bd"] = boost::bind(boost::factory<ImDC7_L*>(), _1, StandardModel::B_D, StandardModel::K_star);
3518  obsThFactory["ImDC7_R_Bd"] = boost::bind(boost::factory<ImDC7_R*>(), _1, StandardModel::B_D, StandardModel::K_star);
3519  obsThFactory["hp0_hm0"] = boost::bind(boost::factory<hp0_hm0*>(), _1, StandardModel::B_D, StandardModel::K_star);
3520  obsThFactory["AbsDC7_QCDF_Bd"] = boost::bind(boost::factory<AbsDC7_QCDF*>(), _1, StandardModel::B_D, StandardModel::K_star);
3521  obsThFactory["AbsDC7_QCDF_Bd_bar"] = boost::bind(boost::factory<AbsDC7_QCDF_bar*>(), _1, StandardModel::B_D, StandardModel::K_star);
3522  obsThFactory["ReDC7_QCDF_Bd"] = boost::bind(boost::factory<ReDC7_QCDF*>(), _1, StandardModel::B_D, StandardModel::K_star);
3523  obsThFactory["ReDC7_QCDF_Bd_bar"] = boost::bind(boost::factory<ReDC7_QCDF_bar*>(), _1, StandardModel::B_D, StandardModel::K_star);
3524  obsThFactory["ImDC7_QCDF_Bd"] = boost::bind(boost::factory<ImDC7_QCDF*>(), _1, StandardModel::B_D, StandardModel::K_star);
3525  obsThFactory["ImDC7_QCDF_Bd_bar"] = boost::bind(boost::factory<ImDC7_QCDF_bar*>(), _1, StandardModel::B_D, StandardModel::K_star);
3526 
3527 
3528  //----- B+ to K*+ gamma -----
3529  obsThFactory["BR_BpKstgamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3530  obsThFactory["ACP_BpKstgamma"] = boost::bind(boost::factory<C_MVgamma*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3531  obsThFactory["ReDC7_L_Bp"] = boost::bind(boost::factory<ReDC7_L*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3532  obsThFactory["ReDC7_R_Bp"] = boost::bind(boost::factory<ReDC7_R*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3533  obsThFactory["ImDC7_L_Bp"] = boost::bind(boost::factory<ImDC7_L*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3534  obsThFactory["ImDC7_R_Bp"] = boost::bind(boost::factory<ImDC7_R*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3535  obsThFactory["AbsDC7_QCDF_Bp"] = boost::bind(boost::factory<AbsDC7_QCDF*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3536  obsThFactory["AbsDC7_QCDF_Bp_bar"] = boost::bind(boost::factory<AbsDC7_QCDF_bar*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3537  obsThFactory["ReDC7_QCDF_Bp"] = boost::bind(boost::factory<ReDC7_QCDF*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3538  obsThFactory["ReDC7_QCDF_Bp_bar"] = boost::bind(boost::factory<ReDC7_QCDF_bar*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3539  obsThFactory["ImDC7_QCDF_Bp"] = boost::bind(boost::factory<ImDC7_QCDF*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3540  obsThFactory["ImDC7_QCDF_Bp_bar"] = boost::bind(boost::factory<ImDC7_QCDF_bar*>(), _1, StandardModel::B_P, StandardModel::K_star_P);
3541 
3542  //----- B to PHI gamma -----
3543  obsThFactory["BR_Bsphigamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_S, StandardModel::PHI);
3544  obsThFactory["C_Bsphigamma"] = boost::bind(boost::factory<C_MVgamma*>(), _1, StandardModel::B_S, StandardModel::PHI);
3545  obsThFactory["S_Bsphigamma"] = boost::bind(boost::factory<S_MVgamma*>(), _1, StandardModel::B_S, StandardModel::PHI);
3546  obsThFactory["ADG_Bsphigamma"] = boost::bind(boost::factory<ADG_MVgamma*>(), _1, StandardModel::B_S, StandardModel::PHI);
3547  obsThFactory["ReDC7_L_Bs"] = boost::bind(boost::factory<ReDC7_L*>(), _1, StandardModel::B_S, StandardModel::PHI);
3548  obsThFactory["ReDC7_R_Bs"] = boost::bind(boost::factory<ReDC7_R*>(), _1, StandardModel::B_S, StandardModel::PHI);
3549  obsThFactory["ImDC7_L_Bs"] = boost::bind(boost::factory<ImDC7_L*>(), _1, StandardModel::B_S, StandardModel::PHI);
3550  obsThFactory["ImDC7_R_Bs"] = boost::bind(boost::factory<ImDC7_R*>(), _1, StandardModel::B_S, StandardModel::PHI);
3551  obsThFactory["AbsDC7_QCDF_Bs"] = boost::bind(boost::factory<AbsDC7_QCDF*>(), _1, StandardModel::B_S, StandardModel::PHI);
3552  obsThFactory["AbsDC7_QCDF_Bs_bar"] = boost::bind(boost::factory<AbsDC7_QCDF_bar*>(), _1, StandardModel::B_S, StandardModel::PHI);
3553  obsThFactory["ReDC7_QCDF_Bs"] = boost::bind(boost::factory<ReDC7_QCDF*>(), _1, StandardModel::B_S, StandardModel::PHI);
3554  obsThFactory["ReDC7_QCDF_Bs_bar"] = boost::bind(boost::factory<ReDC7_QCDF_bar*>(), _1, StandardModel::B_S, StandardModel::PHI);
3555  obsThFactory["ImDC7_QCDF_Bs"] = boost::bind(boost::factory<ImDC7_QCDF*>(), _1, StandardModel::B_S, StandardModel::PHI);
3556  obsThFactory["ImDC7_QCDF_Bs_bar"] = boost::bind(boost::factory<ImDC7_QCDF_bar*>(), _1, StandardModel::B_S, StandardModel::PHI);
3557 
3558  //----- B to RHO gamma -----
3559  obsThFactory["BR_Brhogamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_D, StandardModel::RHO);
3560  obsThFactory["ACP_Brhogamma"] = boost::bind(boost::factory<ACP_MVgamma*>(), _1, StandardModel::B_D, StandardModel::RHO);
3561  obsThFactory["S_Brhogamma"] = boost::bind(boost::factory<S_MVgamma*>(), _1, StandardModel::B_D, StandardModel::RHO);
3562 
3563  //----- B+ to RHO+ gamma -----
3564  obsThFactory["BR_Bprhogamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_P, StandardModel::RHO_P);
3565  obsThFactory["ACP_Bprhogamma"] = boost::bind(boost::factory<ACP_MVgamma*>(), _1, StandardModel::B_P, StandardModel::RHO_P);
3566 
3567  //----- B to OMEGA gamma -----
3568  obsThFactory["BR_Bomegagamma"] = boost::bind(boost::factory<BR_MVgamma*>(), _1, StandardModel::B_D, StandardModel::OMEGA);
3569  obsThFactory["ACP_Bomegagamma"] = boost::bind(boost::factory<ACP_MVgamma*>(), _1, StandardModel::B_D, StandardModel::OMEGA);
3570 
3571  //----- B to V gamma -----
3572  obsThFactory["R_BVgamma"] = boost::bind(boost::factory<R_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::B_S, StandardModel::PHI);
3573  obsThFactory["D0p_BKstgamma"] = boost::bind(boost::factory<D0p_MVgamma*>(), _1, StandardModel::B_D, StandardModel::K_star, StandardModel::B_P, StandardModel::K_star_P);
3574  obsThFactory["DACP_BKstgamma"] = boost::bind(boost::factory<DACP_MVgamma*>(), _1, StandardModel::B_P, StandardModel::K_star_P, StandardModel::B_D, StandardModel::K_star);
3575  obsThFactory["D0p_Brhogamma"] = boost::bind(boost::factory<D0p_MVgamma*>(), _1, StandardModel::B_D, StandardModel::RHO, StandardModel::B_P, StandardModel::RHO_P);
3576  obsThFactory["DACP_Brhogamma"] = boost::bind(boost::factory<DACP_MVgamma*>(), _1, StandardModel::B_P, StandardModel::RHO_P, StandardModel::B_D, StandardModel::RHO);
3577 
3578  //----- B to phi ll -----
3579  obsThFactory["P_1_Bsphimu"] = boost::bind(boost::factory<P_1*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3580  obsThFactory["P_2_Bsphimu"] = boost::bind(boost::factory<P_2*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3581  obsThFactory["P_3_Bsphimu"] = boost::bind(boost::factory<P_3*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3582  obsThFactory["P_4p_Bsphimu"] = boost::bind(boost::factory<P_4Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3583  obsThFactory["P_5p_Bsphimu"] = boost::bind(boost::factory<P_5Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3584  obsThFactory["P_6p_Bsphimu"] = boost::bind(boost::factory<P_6Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3585  obsThFactory["P_8p_Bsphimu"] = boost::bind(boost::factory<P_8Prime*>(), _1, StandardModel::B_D, StandardModel::PHI, StandardModel::MU);
3586  obsThFactory["Gammap_Bsphimu"] = boost::bind(boost::factory<GammaPrime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3587  obsThFactory["A_FB_Bsphimu"] = boost::bind(boost::factory<A_FB*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3588  obsThFactory["BR_Bsphimu"] = boost::bind(boost::factory<BR_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3589  obsThFactory["Rphi_Bsphill"] = boost::bind(boost::factory<R_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU, StandardModel::ELECTRON);
3590  obsThFactory["RphiL_Bsphill"] = boost::bind(boost::factory<RL_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU, StandardModel::ELECTRON);
3591  obsThFactory["RphiT_Bsphill"] = boost::bind(boost::factory<RT_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU, StandardModel::ELECTRON);
3592  obsThFactory["R6_Bsphill"] = boost::bind(boost::factory<R_6*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU, StandardModel::ELECTRON);
3593  obsThFactory["ACP_Bsphimu"] = boost::bind(boost::factory<ACP_MVll*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3594  obsThFactory["P3CP_Bsphimu"] = boost::bind(boost::factory<P3CP*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3595  obsThFactory["F_L_Bsphimu"] = boost::bind(boost::factory<F_L*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3596  obsThFactory["M_1p_Bsphimu"] = boost::bind(boost::factory<M_1Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3597  obsThFactory["M_2p_Bsphimu"] = boost::bind(boost::factory<M_2Prime*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3598  obsThFactory["S_3_Bsphimu"] = boost::bind(boost::factory<S_3*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3599  obsThFactory["S_4_Bsphimu"] = boost::bind(boost::factory<S_4*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3600  obsThFactory["S_5_Bsphimu"] = boost::bind(boost::factory<S_5*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3601  obsThFactory["S_7_Bsphimu"] = boost::bind(boost::factory<S_7*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3602  obsThFactory["S_8_Bsphimu"] = boost::bind(boost::factory<S_8*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3603  obsThFactory["S_9_Bsphimu"] = boost::bind(boost::factory<S_9*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3604  obsThFactory["A_5_Bsphimu"] = boost::bind(boost::factory<A_5*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3605  obsThFactory["A_6_Bsphimu"] = boost::bind(boost::factory<A_6*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3606  obsThFactory["A_6c_Bsphimu"] = boost::bind(boost::factory<A_6c*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3607  obsThFactory["A_8_Bsphimu"] = boost::bind(boost::factory<A_8*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3608  obsThFactory["A_9_Bsphimu"] = boost::bind(boost::factory<A_9*>(), _1, StandardModel::B_S, StandardModel::PHI, StandardModel::MU);
3609 
3610  //----- B+ to K+ ll -----
3611  obsThFactory["BR_BpKmu"] = boost::bind(boost::factory<BR_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::MU);
3612  obsThFactory["BR_BpKe"] = boost::bind(boost::factory<BR_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::ELECTRON);
3613  obsThFactory["dBR_BpKmu"] = boost::bind(boost::factory<dBR_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::MU);
3614  obsThFactory["dBR_BpKe"] = boost::bind(boost::factory<dBR_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::ELECTRON);
3615  obsThFactory["RK_BpKll"] = boost::bind(boost::factory<R_MPll*>(), _1, StandardModel::B_P, StandardModel::K_P, StandardModel::MU, StandardModel::ELECTRON);
3616 
3617  //----- B0 to K0 ll -----
3618  obsThFactory["BR_B0Kmu"] = boost::bind(boost::factory<BR_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::MU);
3619  obsThFactory["BR_B0Ke"] = boost::bind(boost::factory<BR_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::ELECTRON);
3620  obsThFactory["dBR_B0Kmu"] = boost::bind(boost::factory<dBR_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::MU);
3621  obsThFactory["dBR_B0Ke"] = boost::bind(boost::factory<dBR_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::ELECTRON);
3622  obsThFactory["RK_B0Kll"] = boost::bind(boost::factory<R_MPll*>(), _1, StandardModel::B_D, StandardModel::K_0, StandardModel::MU, StandardModel::ELECTRON);
3623 
3624  //----- B to D*lnu -----
3625  obsThFactory["Gammaw_MVlnu"] = boost::bind(boost::factory<Gammaw_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU, StandardModel::ELECTRON);
3626  obsThFactory["RDstar_MVlnu"] = boost::bind(boost::factory<RDstar_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::TAU, StandardModel::MU, StandardModel::ELECTRON);
3627  obsThFactory["Gammacl_MVlnu"] = boost::bind(boost::factory<Gammacl_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU, StandardModel::ELECTRON);
3628  obsThFactory["GammacV_MVlnu"] = boost::bind(boost::factory<GammacV_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU, StandardModel::ELECTRON);
3629  obsThFactory["Gammachi_MVlnu"] = boost::bind(boost::factory<Gammachi_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU, StandardModel::ELECTRON);
3630  obsThFactory["UnitarityV_MVlnu"] = boost::bind(boost::factory<UnitarityV_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::ELECTRON);
3631  obsThFactory["UnitarityA_MVlnu"] = boost::bind(boost::factory<UnitarityA_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::ELECTRON);
3632  obsThFactory["UnitarityV_D_Dst"] = boost::bind(boost::factory<UnitarityV_D_Dst*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::D_P, StandardModel::ELECTRON);
3633  obsThFactory["hA1_at_w1"] = boost::bind(boost::factory<FF_hA1atw1*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3634  obsThFactory["hV_w"] = boost::bind(boost::factory<FF_hV*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3635  obsThFactory["hA1_w"] = boost::bind(boost::factory<FF_hA1*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3636  obsThFactory["hA2_w"] = boost::bind(boost::factory<FF_hA2*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3637  obsThFactory["hA3_w"] = boost::bind(boost::factory<FF_hA3*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3638  obsThFactory["R1_w"] = boost::bind(boost::factory<FF_R1*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3639  obsThFactory["R2_w"] = boost::bind(boost::factory<FF_R2*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3640  obsThFactory["R0_w"] = boost::bind(boost::factory<FF_R0*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::MU);
3641  obsThFactory["FL_MVtaunu"] = boost::bind(boost::factory<FL_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::TAU);
3642  obsThFactory["Ptau_MVtaunu"] = boost::bind(boost::factory<Plep_MVlnu*>(), _1, StandardModel::B_D, StandardModel::D_star_P, StandardModel::TAU);
3643  //----- B to Dlnu -----
3644  obsThFactory["Gammaw_MPlnu"] = boost::bind(boost::factory<Gammaw_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::MU, StandardModel::ELECTRON);
3645  obsThFactory["RD_MPlnu"] = boost::bind(boost::factory<RD_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::TAU, StandardModel::MU, StandardModel::ELECTRON);
3646  obsThFactory["UnitarityV_MPlnu"] = boost::bind(boost::factory<UnitarityV_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3647  obsThFactory["UnitarityA_MPlnu"] = boost::bind(boost::factory<UnitarityA_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3648  obsThFactory["Unitarity_Strong_MPlnu"] = boost::bind(boost::factory<Unitarity_Strong_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3649  obsThFactory["af0_0"] = boost::bind(boost::factory<af0_0*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3650  obsThFactory["FF0_MPlnu"] = boost::bind(boost::factory<FF0_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3651  obsThFactory["FFplus_MPlnu"] = boost::bind(boost::factory<FFplus_MPlnu*>(), _1, StandardModel::B_D, StandardModel::D_P, StandardModel::ELECTRON);
3652 
3653  //----- B to tau nu -----
3654  obsThFactory["btaunu"] = boost::bind(boost::factory<Btaunu*>(), _1, StandardModel::B_P);
3655  obsThFactory["bctaunu"] = boost::bind(boost::factory<Btaunu*>(), _1, StandardModel::B_C);
3656 
3657 
3658  //----- Lepton Flavour observables -----
3659  obsThFactory["mu_e_gamma"] = boost::factory<mu_e_gamma*>();
3660  obsThFactory["log_meg"] = boost::factory<log_meg*>();
3661  obsThFactory["tau_mu_gamma"] = boost::factory<tau_mu_gamma*>();
3662  obsThFactory["log_tmg"] = boost::factory<log_tmg*>();
3663  obsThFactory["tau_e_gamma"] = boost::factory<tau_e_gamma*>();
3664  obsThFactory["log_teg"] = boost::factory<log_teg*>();
3665  obsThFactory["mu_3e"] = boost::factory<mu_3e*>();
3666  obsThFactory["tau_3mu"] = boost::factory<tau_3mu*>();
3667  obsThFactory["tau_3e"] = boost::factory<tau_3e*>();
3668  obsThFactory["gminus2_mu"] = boost::factory<gminus2_mu*>();
3669  obsThFactory["Robs_mu_e_gamma"] = boost::factory<Robs_mu_e_gamma*>();
3670  obsThFactory["Robs_tau_mu_gamma"] = boost::factory<Robs_tau_mu_gamma*>();
3671  obsThFactory["Robs_tau_mu_gamma_BelleII"] = boost::factory<Robs_tau_mu_gamma_BelleII*>();
3672  obsThFactory["Robs_tau_e_gamma"] = boost::factory<Robs_tau_e_gamma*>();
3673  obsThFactory["mueconversion_Ti"] = boost::factory<mueconversion_Ti*>();
3674 
3675  obsThFactory["deltaRL_12_u"] = boost::factory<deltaRL_12_u*>();
3676  obsThFactory["deltaRL_13_u"] = boost::factory<deltaRL_13_u*>();
3677  obsThFactory["deltaRL_23_u"] = boost::factory<deltaRL_23_u*>();
3678  obsThFactory["deltaRL_12_e"] = boost::factory<deltaRL_12_e*>();
3679  obsThFactory["deltaRL_21_e"] = boost::factory<deltaRL_21_e*>();
3680  obsThFactory["deltaRL_13_e"] = boost::factory<deltaRL_13_e*>();
3681  obsThFactory["deltaRL_31_e"] = boost::factory<deltaRL_31_e*>();
3682  obsThFactory["deltaRL_23_e"] = boost::factory<deltaRL_23_e*>();
3683  obsThFactory["deltaRL_32_e"] = boost::factory<deltaRL_32_e*>();
3684 
3685  obsThFactory["deltaLL1_q"] = boost::factory<deltaLL1_q*>();
3686  obsThFactory["deltaLL2_q"] = boost::factory<deltaLL2_q*>();
3687  obsThFactory["deltaLL3_q"] = boost::factory<deltaLL3_q*>();
3688  obsThFactory["deltaRR1_u"] = boost::factory<deltaRR1_u*>();
3689  obsThFactory["deltaRR2_u"] = boost::factory<deltaRR2_u*>();
3690  obsThFactory["deltaRR3_u"] = boost::factory<deltaRR3_u*>();
3691  obsThFactory["deltaRR1_d"] = boost::factory<deltaRR1_d*>();
3692  obsThFactory["deltaRR2_d"] = boost::factory<deltaRR2_d*>();
3693  obsThFactory["deltaRR3_d"] = boost::factory<deltaRR3_d*>();
3694  obsThFactory["deltaLL1_l"] = boost::factory<deltaLL1_l*>();
3695  obsThFactory["deltaLL2_l"] = boost::factory<deltaLL2_l*>();
3696  obsThFactory["deltaLL3_l"] = boost::factory<deltaLL3_l*>();
3697  obsThFactory["deltaRR1_e"] = boost::factory<deltaRR1_e*>();
3698  obsThFactory["deltaRR2_e"] = boost::factory<deltaRR2_e*>();
3699  obsThFactory["deltaRR3_e"] = boost::factory<deltaRR3_e*>();
3700 
3701  obsThFactory["CCBu11"] = boost::factory<CCBu11*>();
3702  obsThFactory["CCBu22"] = boost::factory<CCBu22*>();
3703  obsThFactory["CCBu33"] = boost::factory<CCBu33*>();
3704  obsThFactory["CCBu12"] = boost::factory<CCBu12*>();
3705  obsThFactory["CCBu13"] = boost::factory<CCBu13*>();
3706  obsThFactory["CCBu23"] = boost::factory<CCBu23*>();
3707  obsThFactory["CCBd11"] = boost::factory<CCBd11*>();
3708  obsThFactory["CCBd22"] = boost::factory<CCBd22*>();
3709  obsThFactory["CCBd33"] = boost::factory<CCBd33*>();
3710  obsThFactory["CCBd12"] = boost::factory<CCBd12*>();
3711  obsThFactory["CCBd13"] = boost::factory<CCBd13*>();
3712  obsThFactory["CCBd23"] = boost::factory<CCBd23*>();
3713  obsThFactory["CCBe11"] = boost::factory<CCBe11*>();
3714  obsThFactory["CCBe22"] = boost::factory<CCBe22*>();
3715  obsThFactory["CCBe33"] = boost::factory<CCBe33*>();
3716  obsThFactory["CCBe12"] = boost::factory<CCBe12*>();
3717  obsThFactory["CCBe13"] = boost::factory<CCBe13*>();
3718  obsThFactory["CCBe23"] = boost::factory<CCBe23*>();
3719 
3720  obsThFactory["VacuumTunnelingRate"] = boost::factory<FindAction*>();
3721 
3722  obsThFactory["logdeltaRL_13_e"] = boost::factory<logdeltaRL_13_e*>();
3723  obsThFactory["logdeltaRL_23_e"] = boost::factory<logdeltaRL_23_e*>();
3724  obsThFactory["logmslepton"] = boost::factory<logmslepton*>();
3725  obsThFactory["mslepton"] = boost::factory<mslepton*>();
3726  obsThFactory["deltaTEhat23"] = boost::factory<deltaTEhat23*>();
3727  obsThFactory["deltaLLRR_l"] = boost::factory<deltaLLRR_l*>();
3728 
3729  //----- SUSY spectra and observables -----
3730  obsThFactory["MHl"] = boost::bind(boost::factory<Mhiggs*>(), _1, 0);
3731  obsThFactory["MHh"] = boost::bind(boost::factory<Mhiggs*>(), _1, 1);
3732  obsThFactory["MHa"] = boost::bind(boost::factory<Mhiggs*>(), _1, 2);
3733  obsThFactory["MHp"] = boost::bind(boost::factory<Mhiggs*>(), _1, 3);
3734  obsThFactory["Msu1"] = boost::bind(boost::factory<Msup*>(), _1, 0);
3735  obsThFactory["Msu2"] = boost::bind(boost::factory<Msup*>(), _1, 1);
3736  obsThFactory["Msu3"] = boost::bind(boost::factory<Msup*>(), _1, 2);
3737  obsThFactory["Msu4"] = boost::bind(boost::factory<Msup*>(), _1, 3);
3738  obsThFactory["Msu5"] = boost::bind(boost::factory<Msup*>(), _1, 4);
3739  obsThFactory["Msu6"] = boost::bind(boost::factory<Msup*>(), _1, 5);
3740  obsThFactory["Msd1"] = boost::bind(boost::factory<Msdown*>(), _1, 0);
3741  obsThFactory["Msd2"] = boost::bind(boost::factory<Msdown*>(), _1, 1);
3742  obsThFactory["Msd3"] = boost::bind(boost::factory<Msdown*>(), _1, 2);
3743  obsThFactory["Msd4"] = boost::bind(boost::factory<Msdown*>(), _1, 3);
3744  obsThFactory["Msd5"] = boost::bind(boost::factory<Msdown*>(), _1, 4);
3745  obsThFactory["Msd6"] = boost::bind(boost::factory<Msdown*>(), _1, 5);
3746  obsThFactory["Msl1"] = boost::bind(boost::factory<Mslepton*>(), _1, 0);
3747  obsThFactory["Msl2"] = boost::bind(boost::factory<Mslepton*>(), _1, 1);
3748  obsThFactory["Msl3"] = boost::bind(boost::factory<Mslepton*>(), _1, 2);
3749  obsThFactory["Msl4"] = boost::bind(boost::factory<Mslepton*>(), _1, 3);
3750  obsThFactory["Msl5"] = boost::bind(boost::factory<Mslepton*>(), _1, 4);
3751  obsThFactory["Msl6"] = boost::bind(boost::factory<Mslepton*>(), _1, 5);
3752  obsThFactory["Msnu1"] = boost::bind(boost::factory<Msneutrino*>(), _1, 0);
3753  obsThFactory["Msnu2"] = boost::bind(boost::factory<Msneutrino*>(), _1, 1);
3754  obsThFactory["Msnu3"] = boost::bind(boost::factory<Msneutrino*>(), _1, 2);
3755  obsThFactory["Mch1"] = boost::bind(boost::factory<Mchargino*>(), _1, 0);
3756  obsThFactory["Mch2"] = boost::bind(boost::factory<Mchargino*>(), _1, 1);
3757  obsThFactory["Mneu1"] = boost::bind(boost::factory<Mneutralino*>(), _1, 0);
3758  obsThFactory["Mneu2"] = boost::bind(boost::factory<Mneutralino*>(), _1, 1);
3759  obsThFactory["Mneu3"] = boost::bind(boost::factory<Mneutralino*>(), _1, 2);
3760  obsThFactory["Mneu4"] = boost::bind(boost::factory<Mneutralino*>(), _1, 3);
3761  obsThFactory["Mw_dRho"] = boost::factory<Mw_dRho*>();
3762 
3763  //----- THDM observables -----
3764  obsThFactory["globalminimum"] = boost::factory<globalminimum*>();
3765 
3766  obsThFactory["mu_ggF_tth_htobb8"] = boost::factory<ggF_tth_htobb8*>();
3767  obsThFactory["mu_ggF_tth_htoWW8"] = boost::factory<ggF_tth_htoWW8*>();
3768  obsThFactory["mu_ggF_tth_htotautau8"] = boost::factory<ggF_tth_htotautau8*>();
3769  obsThFactory["mu_ggF_tth_htoZZ8"] = boost::factory<ggF_tth_htoZZ8*>();
3770  obsThFactory["mu_ggF_tth_htogaga8"] = boost::factory<ggF_tth_htogaga8*>();
3771  obsThFactory["mu_ggF_tth_htobb13"] = boost::factory<ggF_tth_htobb13*>();
3772  obsThFactory["mu_ggF_tth_htoWW13"] = boost::factory<ggF_tth_htoWW13*>();
3773  obsThFactory["mu_ggF_tth_htotautau13"] = boost::factory<ggF_tth_htotautau13*>();
3774  obsThFactory["mu_ggF_tth_htoZZ13"] = boost::factory<ggF_tth_htoZZ13*>();
3775  obsThFactory["mu_ggF_tth_htogaga13"] = boost::factory<ggF_tth_htogaga13*>();
3776  obsThFactory["mu_VBF_Vh_htobb"] = boost::factory<VBF_Vh_htobb*>();
3777  obsThFactory["mu_VBF_Vh_htoWW"] = boost::factory<VBF_Vh_htoWW*>();
3778  obsThFactory["mu_VBF_Vh_htotautau"] = boost::factory<VBF_Vh_htotautau*>();
3779  obsThFactory["mu_VBF_Vh_htoZZ"] = boost::factory<VBF_Vh_htoZZ*>();
3780  obsThFactory["mu_VBF_Vh_htogaga"] = boost::factory<VBF_Vh_htogaga*>();
3781  obsThFactory["mu_VBF_Vh_htogg"] = boost::factory<VBF_Vh_htogg*>();
3782  obsThFactory["mu_VBF_Vh_htocc"] = boost::factory<VBF_Vh_htocc*>();
3783  obsThFactory["mu_ggF_htobb"] = boost::factory<ggF_htobb*>();
3784  obsThFactory["mu_ggF_htoWW"] = boost::factory<ggF_htoWW*>();
3785  obsThFactory["mu_ggF_htotautau"] = boost::factory<ggF_htotautau*>();
3786  obsThFactory["mu_ggF_htoZZ"] = boost::factory<ggF_htoZZ*>();
3787  obsThFactory["mu_ggF_htogaga"] = boost::factory<ggF_htogaga*>();
3788  obsThFactory["mu_tth_htobb"] = boost::factory<tth_htobb*>();
3789  obsThFactory["mu_tth_htoWW"] = boost::factory<tth_htoWW*>();
3790  obsThFactory["mu_tth_htotautau"] = boost::factory<tth_htotautau*>();
3791  obsThFactory["mu_tth_htoZZ"] = boost::factory<tth_htoZZ*>();
3792  obsThFactory["mu_tth_htogaga"] = boost::factory<tth_htogaga*>();
3793  obsThFactory["mu_htobb"] = boost::factory<mu_htobb*>();
3794  obsThFactory["mu_htoWW"] = boost::factory<mu_htoWW*>();
3795  obsThFactory["mu_htotautau"] = boost::factory<mu_htotautau*>();
3796  obsThFactory["mu_htoZga"] = boost::factory<mu_htoZga*>();
3797  obsThFactory["Gamma_h_THDM"] = boost::factory<Gamma_h_THDM*>();
3798  obsThFactory["rh_gaga_THDM"] = boost::factory<rh_gaga_THDM*>();
3799  obsThFactory["rh_Zga_THDM"] = boost::factory<rh_Zga_THDM*>();
3800  obsThFactory["rh_gg_THDM"] = boost::factory<rh_gg_THDM*>();
3801 
3802  obsThFactory["Hobs_ggF_H_tautau_ATLAS8"] = boost::factory<Hobs_ggF_H_tautau_ATLAS8*>();
3803  obsThFactory["Hobs_ggF_H_tautau_CMS8"] = boost::factory<Hobs_ggF_H_tautau_CMS8*>();
3804  obsThFactory["Hobs_bbF_H_tautau_ATLAS8"] = boost::factory<Hobs_bbF_H_tautau_ATLAS8*>();
3805  obsThFactory["Hobs_bbF_H_tautau_CMS8"] = boost::factory<Hobs_bbF_H_tautau_CMS8*>();
3806  obsThFactory["Hobs_pp_H_gaga_ATLAS8"] = boost::factory<Hobs_pp_H_gaga_ATLAS8*>();
3807  obsThFactory["Hobs_ggF_H_gaga_CMS8"] = boost::factory<Hobs_ggF_H_gaga_CMS8*>();
3808  obsThFactory["Hobs_pp_H_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_H_Zga_llga_ATLAS8*>();
3809  obsThFactory["Hobs_pp_H_Zga_llga_CMS8"] = boost::factory<Hobs_pp_H_Zga_llga_CMS8*>();
3810  obsThFactory["Hobs_mu_pp_H_VV_CMS8"] = boost::factory<Hobs_mu_pp_H_VV_CMS8*>();
3811  obsThFactory["Hobs_ggF_H_ZZ_ATLAS8"] = boost::factory<Hobs_ggF_H_ZZ_ATLAS8*>();
3812  obsThFactory["Hobs_VBF_H_ZZ_ATLAS8"] = boost::factory<Hobs_VBF_H_ZZ_ATLAS8*>();
3813  obsThFactory["Hobs_ggF_H_WW_ATLAS8"] = boost::factory<Hobs_ggF_H_WW_ATLAS8*>();
3814  obsThFactory["Hobs_VBF_H_WW_ATLAS8"] = boost::factory<Hobs_VBF_H_WW_ATLAS8*>();
3815  obsThFactory["Hobs_ggF_H_hh_ATLAS8"] = boost::factory<Hobs_ggF_H_hh_ATLAS8*>();
3816  obsThFactory["Hobs_pp_H_hh_CMS8"] = boost::factory<Hobs_pp_H_hh_CMS8*>();
3817  obsThFactory["Hobs_ggF_H_hh_bbtautau_CMS8"] = boost::factory<Hobs_ggF_H_hh_bbtautau_CMS8*>();
3818  obsThFactory["Hobs_pp_H_hh_bbbb_CMS8"] = boost::factory<Hobs_pp_H_hh_bbbb_CMS8*>();
3819  obsThFactory["Hobs_pp_H_hh_gagabb_CMS8"] = boost::factory<Hobs_pp_H_hh_gagabb_CMS8*>();
3820  obsThFactory["Hobs_ggF_H_tt_ATLAS8"] = boost::factory<Hobs_ggF_H_tt_ATLAS8*>();
3821  obsThFactory["Hobs_bbF_H_bb_CMS8"] = boost::factory<Hobs_bbF_H_bb_CMS8*>();
3822  obsThFactory["Hobs_pp_H_AZ_bbll_CMS8"] = boost::factory<Hobs_pp_H_AZ_bbll_CMS8*>();
3823  obsThFactory["Hobs_pp_H_AZ_tautaull_CMS8"] = boost::factory<Hobs_pp_H_AZ_tautaull_CMS8*>();
3824  obsThFactory["Robs_ggF_H_tautau_ATLAS8"] = boost::factory<Robs_ggF_H_tautau_ATLAS8*>();
3825  obsThFactory["Robs_ggF_H_tautau_CMS8"] = boost::factory<Robs_ggF_H_tautau_CMS8*>();
3826  obsThFactory["Robs_bbF_H_tautau_ATLAS8"] = boost::factory<Robs_bbF_H_tautau_ATLAS8*>();
3827  obsThFactory["Robs_bbF_H_tautau_CMS8"] = boost::factory<Robs_bbF_H_tautau_CMS8*>();
3828  obsThFactory["Robs_pp_H_gaga_ATLAS8"] = boost::factory<Robs_pp_H_gaga_ATLAS8*>();
3829  obsThFactory["Robs_ggF_H_gaga_CMS8"] = boost::factory<Robs_ggF_H_gaga_CMS8*>();
3830  obsThFactory["Robs_pp_H_Zga_llga_ATLAS8"] = boost::factory<Robs_pp_H_Zga_llga_ATLAS8*>();
3831  obsThFactory["Robs_pp_H_Zga_llga_CMS8"] = boost::factory<Robs_pp_H_Zga_llga_CMS8*>();
3832  obsThFactory["Robs_mu_pp_H_VV_CMS8"] = boost::factory<Robs_mu_pp_H_VV_CMS8*>();
3833  obsThFactory["Robs_ggF_H_ZZ_ATLAS8"] = boost::factory<Robs_ggF_H_ZZ_ATLAS8*>();
3834  obsThFactory["Robs_VBF_H_ZZ_ATLAS8"] = boost::factory<Robs_VBF_H_ZZ_ATLAS8*>();
3835  obsThFactory["Robs_ggF_H_WW_ATLAS8"] = boost::factory<Robs_ggF_H_WW_ATLAS8*>();
3836  obsThFactory["Robs_VBF_H_WW_ATLAS8"] = boost::factory<Robs_VBF_H_WW_ATLAS8*>();
3837  obsThFactory["Robs_ggF_H_hh_ATLAS8"] = boost::factory<Robs_ggF_H_hh_ATLAS8*>();
3838  obsThFactory["Robs_pp_H_hh_CMS8"] = boost::factory<Robs_pp_H_hh_CMS8*>();
3839  obsThFactory["Robs_ggF_H_hh_bbtautau_CMS8"] = boost::factory<Robs_ggF_H_hh_bbtautau_CMS8*>();
3840  obsThFactory["Robs_pp_H_hh_bbbb_CMS8"] = boost::factory<Robs_pp_H_hh_bbbb_CMS8*>();
3841  obsThFactory["Robs_pp_H_hh_gagabb_CMS8"] = boost::factory<Robs_pp_H_hh_gagabb_CMS8*>();
3842  obsThFactory["Robs_ggF_H_tt_ATLAS8"] = boost::factory<Robs_ggF_H_tt_ATLAS8*>();
3843  obsThFactory["Robs_bbF_H_bb_CMS8"] = boost::factory<Robs_bbF_H_bb_CMS8*>();
3844  obsThFactory["Robs_pp_H_AZ_bbll_CMS8"] = boost::factory<Robs_pp_H_AZ_bbll_CMS8*>();
3845  obsThFactory["Robs_pp_H_AZ_tautaull_CMS8"] = boost::factory<Robs_pp_H_AZ_tautaull_CMS8*>();
3846  obsThFactory["log10_ggF_H_tautau_TH8"] = boost::factory<log10_ggF_H_tautau_TH8*>();
3847  obsThFactory["log10_bbF_H_tautau_TH8"] = boost::factory<log10_bbF_H_tautau_TH8*>();
3848  obsThFactory["log10_pp_H_gaga_TH8"] = boost::factory<log10_pp_H_gaga_TH8*>();
3849  obsThFactory["log10_ggF_H_gaga_TH8"] = boost::factory<log10_ggF_H_gaga_TH8*>();
3850  obsThFactory["log10_pp_H_Zga_llga_TH8"] = boost::factory<log10_pp_H_Zga_llga_TH8*>();
3851  obsThFactory["log10_mu_pp_H_VV_TH8"] = boost::factory<log10_mu_pp_H_VV_TH8*>();
3852  obsThFactory["log10_ggF_H_ZZ_TH8"] = boost::factory<log10_ggF_H_ZZ_TH8*>();
3853  obsThFactory["log10_VBF_H_ZZ_TH8"] = boost::factory<log10_VBF_H_ZZ_TH8*>();
3854  obsThFactory["log10_ggF_H_WW_TH8"] = boost::factory<log10_ggF_H_WW_TH8*>();
3855  obsThFactory["log10_VBF_H_WW_TH8"] = boost::factory<log10_VBF_H_WW_TH8*>();
3856  obsThFactory["log10_ggF_H_hh_TH8"] = boost::factory<log10_ggF_H_hh_TH8*>();
3857  obsThFactory["log10_pp_H_hh_TH8"] = boost::factory<log10_pp_H_hh_TH8*>();
3858  obsThFactory["log10_ggF_H_hh_bbtautau_TH8"] = boost::factory<log10_ggF_H_hh_bbtautau_TH8*>();
3859  obsThFactory["log10_pp_H_hh_bbbb_TH8"] = boost::factory<log10_pp_H_hh_bbbb_TH8*>();
3860  obsThFactory["log10_pp_H_hh_gagabb_TH8"] = boost::factory<log10_pp_H_hh_gagabb_TH8*>();
3861  obsThFactory["log10_ggF_H_tt_TH8"] = boost::factory<log10_ggF_H_tt_TH8*>();
3862  obsThFactory["log10_bbF_H_bb_TH8"] = boost::factory<log10_bbF_H_bb_TH8*>();
3863  obsThFactory["log10_pp_H_AZ_bbll_TH8"] = boost::factory<log10_pp_H_AZ_bbll_TH8*>();
3864  obsThFactory["log10_pp_H_AZ_tautaull_TH8"] = boost::factory<log10_pp_H_AZ_tautaull_TH8*>();
3865  obsThFactory["Hobs_ttF_H_tt_ATLAS13"] = boost::factory<Hobs_ttF_H_tt_ATLAS13*>();
3866  obsThFactory["Hobs_bbF_H_tt_ATLAS13"] = boost::factory<Hobs_bbF_H_tt_ATLAS13*>();
3867  obsThFactory["Hobs_ggF_H_tautau_ATLAS13"] = boost::factory<Hobs_ggF_H_tautau_ATLAS13*>();
3868  obsThFactory["Hobs_bbF_H_tautau_ATLAS13"] = boost::factory<Hobs_bbF_H_tautau_ATLAS13*>();
3869  obsThFactory["Hobs_ggF_H_tautau_CMS13"] = boost::factory<Hobs_ggF_H_tautau_CMS13*>();
3870  obsThFactory["Hobs_bbF_H_tautau_CMS13"] = boost::factory<Hobs_bbF_H_tautau_CMS13*>();
3871  obsThFactory["Hobs_pp_H_gaga_ATLAS13"] = boost::factory<Hobs_pp_H_gaga_ATLAS13*>();
3872  obsThFactory["Hobs_ggF_H_gaga_CMS13"] = boost::factory<Hobs_ggF_H_gaga_CMS13*>();
3873  obsThFactory["Hobs_pp_H_Zga_llga_ATLAS13"] = boost::factory<Hobs_pp_H_Zga_llga_ATLAS13*>();
3874  obsThFactory["Hobs_ggF_H_Zga_llga_ATLAS13"] = boost::factory<Hobs_ggF_H_Zga_llga_ATLAS13*>();
3875  obsThFactory["Hobs_pp_H_Zga_llga_CMS13"] = boost::factory<Hobs_pp_H_Zga_llga_CMS13*>();
3876  obsThFactory["Hobs_pp_H_Zga_qqga_CMS13"] = boost::factory<Hobs_pp_H_Zga_qqga_CMS13*>();
3877  obsThFactory["Hobs_ggF_H_Zga_CMS13"] = boost::factory<Hobs_ggF_H_Zga_CMS13*>();
3878  obsThFactory["Hobs_ggF_H_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_llllnunu_ATLAS13*>();
3879  obsThFactory["Hobs_VBF_H_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_VBF_H_ZZ_llllnunu_ATLAS13*>();
3880  obsThFactory["Hobs_ggF_H_ZZ_llnunu_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_llnunu_ATLAS13*>();
3881  obsThFactory["Hobs_pp_H_ZZ_llnunu_CMS13"] = boost::factory<Hobs_pp_H_ZZ_llnunu_CMS13*>();
3882  obsThFactory["Hobs_ggF_H_ZZ_llnunu_CMS13"] = boost::factory<Hobs_ggF_H_ZZ_llnunu_CMS13*>();
3883  obsThFactory["Hobs_VBF_H_ZZ_llnunu_CMS13"] = boost::factory<Hobs_VBF_H_ZZ_llnunu_CMS13*>();
3884  obsThFactory["Hobs_ggF_H_ZZ_llll_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_llll_ATLAS13*>();
3885  obsThFactory["Hobs_VBF_H_ZZ_llll_ATLAS13"] = boost::factory<Hobs_VBF_H_ZZ_llll_ATLAS13*>();
3886  obsThFactory["Hobs_pp_H_ZZ_llll_CMS13"] = boost::factory<Hobs_pp_H_ZZ_llll_CMS13*>();
3887  obsThFactory["Hobs_VBF_VH_H_ZZ_llll_CMS13"] = boost::factory<Hobs_VBF_VH_H_ZZ_llll_CMS13*>();
3888  obsThFactory["Hobs_ggF_H_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_qqllnunu_ATLAS13*>();
3889  obsThFactory["Hobs_VBF_H_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_VBF_H_ZZ_qqllnunu_ATLAS13*>();
3890  obsThFactory["Hobs_ggF_H_ZZ_llqq_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_llqq_ATLAS13*>();
3891  obsThFactory["Hobs_VBF_H_ZZ_llqq_ATLAS13"] = boost::factory<Hobs_VBF_H_ZZ_llqq_ATLAS13*>();
3892  obsThFactory["Hobs_ggF_H_ZZ_nunuqq_ATLAS13"] = boost::factory<Hobs_ggF_H_ZZ_nunuqq_ATLAS13*>();
3893  obsThFactory["Hobs_pp_H_ZZ_llqq_CMS13"] = boost::factory<Hobs_pp_H_ZZ_llqq_CMS13*>();
3894  obsThFactory["Hobs_ggF_H_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_ggF_H_WW_lnuqq_ATLAS13*>();
3895  obsThFactory["Hobs_VBF_H_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_VBF_H_WW_lnuqq_ATLAS13*>();
3896  obsThFactory["Hobs_ggF_H_WW_enumunu_ATLAS13"] = boost::factory<Hobs_ggF_H_WW_enumunu_ATLAS13*>();
3897  obsThFactory["Hobs_VBF_H_WW_enumunu_ATLAS13"] = boost::factory<Hobs_VBF_H_WW_enumunu_ATLAS13*>();
3898  obsThFactory["Hobs_ggF_VBF_H_WW_lnulnu_CMS13"] = boost::factory<Hobs_ggF_VBF_H_WW_lnulnu_CMS13*>();
3899  obsThFactory["Hobs_pp_H_VV_qqqq_ATLAS13"] = boost::factory<Hobs_pp_H_VV_qqqq_ATLAS13*>();
3900  obsThFactory["Hobs_pp_H_hh_bbgaga_ATLAS13"] = boost::factory<Hobs_pp_H_hh_bbgaga_ATLAS13*>();
3901  obsThFactory["Hobs_pp_H_hh_bbgaga_CMS13"] = boost::factory<Hobs_pp_H_hh_bbgaga_CMS13*>();
3902  obsThFactory["Hobs_pp_H_hh_bbbb_ATLAS13"] = boost::factory<Hobs_pp_H_hh_bbbb_ATLAS13*>();
3903  obsThFactory["Hobs_pp_H_hh_bbbb_CMS13"] = boost::factory<Hobs_pp_H_hh_bbbb_CMS13*>();
3904  obsThFactory["Hobs_ggF_H_hh_bbbb_CMS13"] = boost::factory<Hobs_ggF_H_hh_bbbb_CMS13*>();
3905  obsThFactory["Hobs_ggF_H_hh_gagaWW_ATLAS13"] = boost::factory<Hobs_ggF_H_hh_gagaWW_ATLAS13*>();
3906  obsThFactory["Hobs_pp_H_hh_bbtautau_CMS13"] = boost::factory<Hobs_pp_H_hh_bbtautau_CMS13*>();
3907  obsThFactory["Hobs_pp_H_hh_bbtautau1_CMS13"] = boost::factory<Hobs_pp_H_hh_bbtautau1_CMS13*>();
3908  obsThFactory["Hobs_pp_H_hh_bblnulnu_CMS13"] = boost::factory<Hobs_pp_H_hh_bblnulnu_CMS13*>();
3909  obsThFactory["Hobs_pp_H_hh_bbVV_CMS13"] = boost::factory<Hobs_pp_H_hh_bbVV_CMS13*>();
3910  obsThFactory["Hobs_pp_H_bb_CMS13"] = boost::factory<Hobs_pp_H_bb_CMS13*>();
3911  obsThFactory["Robs_ttF_H_tt_ATLAS13"] = boost::factory<Robs_ttF_H_tt_ATLAS13*>();
3912  obsThFactory["Robs_bbF_H_tt_ATLAS13"] = boost::factory<Robs_bbF_H_tt_ATLAS13*>();
3913  obsThFactory["Robs_ggF_H_tautau_ATLAS13"] = boost::factory<Robs_ggF_H_tautau_ATLAS13*>();
3914  obsThFactory["Robs_bbF_H_tautau_ATLAS13"] = boost::factory<Robs_bbF_H_tautau_ATLAS13*>();
3915  obsThFactory["Robs_ggF_H_tautau_CMS13"] = boost::factory<Robs_ggF_H_tautau_CMS13*>();
3916  obsThFactory["Robs_bbF_H_tautau_CMS13"] = boost::factory<Robs_bbF_H_tautau_CMS13*>();
3917  obsThFactory["Robs_pp_H_gaga_ATLAS13"] = boost::factory<Robs_pp_H_gaga_ATLAS13*>();
3918  obsThFactory["Robs_ggF_H_gaga_CMS13"] = boost::factory<Robs_ggF_H_gaga_CMS13*>();
3919  obsThFactory["Robs_pp_H_Zga_llga_ATLAS13"] = boost::factory<Robs_pp_H_Zga_llga_ATLAS13*>();
3920  obsThFactory["Robs_pp_H_Zga_llga_CMS13"] = boost::factory<Robs_pp_H_Zga_llga_CMS13*>();
3921  obsThFactory["Robs_pp_H_Zga_qqga_CMS13"] = boost::factory<Robs_pp_H_Zga_qqga_CMS13*>();
3922  obsThFactory["Robs_ggF_H_Zga_CMS13"] = boost::factory<Robs_ggF_H_Zga_CMS13*>();
3923  obsThFactory["Robs_ggF_H_ZZ_llnunu_ATLAS13"] = boost::factory<Robs_ggF_H_ZZ_llnunu_ATLAS13*>();
3924  obsThFactory["Robs_ggF_H_ZZ_llll_ATLAS13"] = boost::factory<Robs_ggF_H_ZZ_llll_ATLAS13*>();
3925  obsThFactory["Robs_VBF_H_ZZ_llll_ATLAS13"] = boost::factory<Robs_VBF_H_ZZ_llll_ATLAS13*>();
3926  obsThFactory["Robs_pp_H_ZZ_llll_CMS13"] = boost::factory<Robs_pp_H_ZZ_llll_CMS13*>();
3927  obsThFactory["Robs_VBF_VH_H_ZZ_llll_CMS13"] = boost::factory<Robs_VBF_VH_H_ZZ_llll_CMS13*>();
3928  obsThFactory["Robs_ggF_H_ZZ_llqq_ATLAS13"] = boost::factory<Robs_ggF_H_ZZ_llqq_ATLAS13*>();
3929  obsThFactory["Robs_VBF_H_ZZ_llqq_ATLAS13"] = boost::factory<Robs_VBF_H_ZZ_llqq_ATLAS13*>();
3930  obsThFactory["Robs_ggF_H_ZZ_nunuqq_ATLAS13"] = boost::factory<Robs_ggF_H_ZZ_nunuqq_ATLAS13*>();
3931  obsThFactory["Robs_pp_H_ZZ_llqq_CMS13"] = boost::factory<Robs_pp_H_ZZ_llqq_CMS13*>();
3932  obsThFactory["Robs_ggF_H_WW_lnuqq_ATLAS13"] = boost::factory<Robs_ggF_H_WW_lnuqq_ATLAS13*>();
3933  obsThFactory["Robs_ggF_H_WW_enumunu_ATLAS13"] = boost::factory<Robs_ggF_H_WW_enumunu_ATLAS13*>();
3934  obsThFactory["Robs_VBF_H_WW_enumunu_ATLAS13"] = boost::factory<Robs_VBF_H_WW_enumunu_ATLAS13*>();
3935  obsThFactory["Robs_ggF_VBF_H_WW_lnulnu_CMS13"] = boost::factory<Robs_ggF_VBF_H_WW_lnulnu_CMS13*>();
3936  obsThFactory["Robs_pp_H_hh_bbgaga_ATLAS13"] = boost::factory<Robs_pp_H_hh_bbgaga_ATLAS13*>();
3937  obsThFactory["Robs_pp_H_hh_bbgaga_CMS13"] = boost::factory<Robs_pp_H_hh_bbgaga_CMS13*>();
3938  obsThFactory["Robs_pp_H_hh_bbbb_ATLAS13"] = boost::factory<Robs_pp_H_hh_bbbb_ATLAS13*>();
3939  obsThFactory["Robs_pp_H_hh_bbbb_CMS13"] = boost::factory<Robs_pp_H_hh_bbbb_CMS13*>();
3940  obsThFactory["Robs_ggF_H_hh_bbbb_CMS13"] = boost::factory<Robs_ggF_H_hh_bbbb_CMS13*>();
3941  obsThFactory["Robs_ggF_H_hh_gagaWW_ATLAS13"] = boost::factory<Robs_ggF_H_hh_gagaWW_ATLAS13*>();
3942  obsThFactory["Robs_pp_H_hh_bbtautau_CMS13"] = boost::factory<Robs_pp_H_hh_bbtautau_CMS13*>();
3943  obsThFactory["Robs_pp_H_hh_bbtautau1_CMS13"] = boost::factory<Robs_pp_H_hh_bbtautau1_CMS13*>();
3944  obsThFactory["Robs_pp_H_hh_bblnulnu_CMS13"] = boost::factory<Robs_pp_H_hh_bblnulnu_CMS13*>();
3945  obsThFactory["Robs_pp_H_hh_bbVV_CMS13"] = boost::factory<Robs_pp_H_hh_bbVV_CMS13*>();
3946  obsThFactory["Robs_pp_H_bb_CMS13"] = boost::factory<Robs_pp_H_bb_CMS13*>();
3947  obsThFactory["log10_ggF_H_tautau_TH13"] = boost::factory<log10_ggF_H_tautau_TH13*>();
3948  obsThFactory["log10_bbF_H_tautau_TH13"] = boost::factory<log10_bbF_H_tautau_TH13*>();
3949  obsThFactory["log10_pp_H_gaga_TH13"] = boost::factory<log10_pp_H_gaga_TH13*>();
3950  obsThFactory["log10_ggF_H_gaga_TH13"] = boost::factory<log10_ggF_H_gaga_TH13*>();
3951  obsThFactory["log10_pp_H_Zga_TH13"] = boost::factory<log10_pp_H_Zga_TH13*>();
3952  obsThFactory["log10_ggF_H_Zga_TH13"] = boost::factory<log10_ggF_H_Zga_TH13*>();
3953  obsThFactory["log10_pp_H_ZZ_TH13"] = boost::factory<log10_pp_H_ZZ_TH13*>();
3954  obsThFactory["log10_ggF_H_ZZ_TH13"] = boost::factory<log10_ggF_H_ZZ_TH13*>();
3955  obsThFactory["log10_VBF_H_ZZ_TH13"] = boost::factory<log10_VBF_H_ZZ_TH13*>();
3956  obsThFactory["log10_ggF_H_ZZ_llll_TH13"] = boost::factory<log10_ggF_H_ZZ_llll_TH13*>();
3957  obsThFactory["log10_VBF_H_ZZ_llll_TH13"] = boost::factory<log10_VBF_H_ZZ_llll_TH13*>();
3958  obsThFactory["log10_pp_H_ZZ_llll_TH13"] = boost::factory<log10_pp_H_ZZ_llll_TH13*>();
3959  obsThFactory["log10_VBF_VH_H_ZZ_llll_TH13"] = boost::factory<log10_VBF_VH_H_ZZ_llll_TH13*>();
3960  obsThFactory["log10_ggF_H_WW_TH13"] = boost::factory<log10_ggF_H_WW_TH13*>();
3961  obsThFactory["log10_VBF_H_WW_TH13"] = boost::factory<log10_VBF_H_WW_TH13*>();
3962  obsThFactory["log10_ggF_VBF_H_WW_lnulnu_TH13"] = boost::factory<log10_ggF_VBF_H_WW_lnulnu_TH13*>();
3963  obsThFactory["log10_ggF_H_hh_TH13"] = boost::factory<log10_ggF_H_hh_TH13*>();
3964  obsThFactory["log10_pp_H_hh_TH13"] = boost::factory<log10_pp_H_hh_TH13*>();
3965  obsThFactory["log10_pp_H_hh_bbbb_TH13"] = boost::factory<log10_pp_H_hh_bbbb_TH13*>();
3966  obsThFactory["log10_ggF_H_hh_bbbb_TH13"] = boost::factory<log10_ggF_H_hh_bbbb_TH13*>();
3967  obsThFactory["log10_pp_H_hh_gagabb_TH13"] = boost::factory<log10_pp_H_hh_gagabb_TH13*>();
3968  obsThFactory["log10_pp_H_hh_bbtautau_TH13"] = boost::factory<log10_pp_H_hh_bbtautau_TH13*>();
3969  obsThFactory["log10_pp_H_hh_bblnulnu_TH13"] = boost::factory<log10_pp_H_hh_bblnulnu_TH13*>();
3970  obsThFactory["log10_pp_H_hh_bbVV_TH13"] = boost::factory<log10_pp_H_hh_bbVV_TH13*>();
3971  obsThFactory["log10_tt_H_tt_TH13"] = boost::factory<log10_tt_H_tt_TH13*>();
3972  obsThFactory["log10_bb_H_tt_TH13"] = boost::factory<log10_bb_H_tt_TH13*>();
3973  obsThFactory["log10_pp_H_bb_TH13"] = boost::factory<log10_pp_H_bb_TH13*>();
3974  obsThFactory["Gamma_HH_THDM"] = boost::factory<Gamma_HH_THDM*>();
3975  obsThFactory["rHH_gg_THDM"] = boost::factory<rHH_gg_THDM*>();
3976  obsThFactory["BR_HH_hh_THDM"] = boost::factory<BR_HH_hh_THDM*>();
3977  obsThFactory["BR_HH_AA_THDM"] = boost::factory<BR_HH_AA_THDM*>();
3978  obsThFactory["BR_HH_HpHm_THDM"] = boost::factory<BR_HH_HpHm_THDM*>();
3979  obsThFactory["BR_HH_AZ_THDM"] = boost::factory<BR_HH_AZ_THDM*>();
3980  obsThFactory["BR_HH_HpW_THDM"] = boost::factory<BR_HH_HpW_THDM*>();
3981 
3982  obsThFactory["Hobs_ggF_A_tautau_ATLAS8"] = boost::factory<Hobs_ggF_A_tautau_ATLAS8*>();
3983  obsThFactory["Hobs_ggF_A_tautau_CMS8"] = boost::factory<Hobs_ggF_A_tautau_CMS8*>();
3984  obsThFactory["Hobs_bbF_A_tautau_ATLAS8"] = boost::factory<Hobs_bbF_A_tautau_ATLAS8*>();
3985  obsThFactory["Hobs_bbF_A_tautau_CMS8"] = boost::factory<Hobs_bbF_A_tautau_CMS8*>();
3986  obsThFactory["Hobs_pp_A_gaga_ATLAS8"] = boost::factory<Hobs_pp_A_gaga_ATLAS8*>();
3987  obsThFactory["Hobs_ggF_A_gaga_CMS8"] = boost::factory<Hobs_ggF_A_gaga_CMS8*>();
3988  obsThFactory["Hobs_pp_A_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_A_Zga_llga_ATLAS8*>();
3989  obsThFactory["Hobs_pp_A_Zga_llga_CMS8"] = boost::factory<Hobs_pp_A_Zga_llga_CMS8*>();
3990  obsThFactory["Hobs_ggF_A_hZ_bbll_CMS8"] = boost::factory<Hobs_ggF_A_hZ_bbll_CMS8*>();
3991  obsThFactory["Hobs_ggF_A_hZ_bbZ_ATLAS8"] = boost::factory<Hobs_ggF_A_hZ_bbZ_ATLAS8*>();
3992  obsThFactory["Hobs_ggF_A_hZ_tautaull_CMS8"] = boost::factory<Hobs_ggF_A_hZ_tautaull_CMS8*>();
3993  obsThFactory["Hobs_ggF_A_hZ_tautauZ_ATLAS8"] = boost::factory<Hobs_ggF_A_hZ_tautauZ_ATLAS8*>();
3994  obsThFactory["Hobs_ggF_A_tt_ATLAS8"] = boost::factory<Hobs_ggF_A_tt_ATLAS8*>();
3995  obsThFactory["Hobs_bbF_A_bb_CMS8"] = boost::factory<Hobs_bbF_A_bb_CMS8*>();
3996  obsThFactory["Hobs_pp_A_HZ_bbll_CMS8"] = boost::factory<Hobs_pp_A_HZ_bbll_CMS8*>();
3997  obsThFactory["Hobs_pp_A_HZ_tautaull_CMS8"] = boost::factory<Hobs_pp_A_HZ_tautaull_CMS8*>();
3998  obsThFactory["Robs_ggF_A_tautau_ATLAS8"] = boost::factory<Robs_ggF_A_tautau_ATLAS8*>();
3999  obsThFactory["Robs_ggF_A_tautau_CMS8"] = boost::factory<Robs_ggF_A_tautau_CMS8*>();
4000  obsThFactory["Robs_bbF_A_tautau_ATLAS8"] = boost::factory<Robs_bbF_A_tautau_ATLAS8*>();
4001  obsThFactory["Robs_bbF_A_tautau_CMS8"] = boost::factory<Robs_bbF_A_tautau_CMS8*>();
4002  obsThFactory["Robs_pp_A_gaga_ATLAS8"] = boost::factory<Robs_pp_A_gaga_ATLAS8*>();
4003  obsThFactory["Robs_ggF_A_gaga_CMS8"] = boost::factory<Robs_ggF_A_gaga_CMS8*>();
4004  obsThFactory["Robs_pp_A_Zga_llga_ATLAS8"] = boost::factory<Robs_pp_A_Zga_llga_ATLAS8*>();
4005  obsThFactory["Robs_pp_A_Zga_llga_CMS8"] = boost::factory<Robs_pp_A_Zga_llga_CMS8*>();
4006  obsThFactory["Robs_ggF_A_hZ_bbll_CMS8"] = boost::factory<Robs_ggF_A_hZ_bbll_CMS8*>();
4007  obsThFactory["Robs_ggF_A_hZ_bbZ_ATLAS8"] = boost::factory<Robs_ggF_A_hZ_bbZ_ATLAS8*>();
4008  obsThFactory["Robs_ggF_A_hZ_tautaull_CMS8"] = boost::factory<Robs_ggF_A_hZ_tautaull_CMS8*>();
4009  obsThFactory["Robs_ggF_A_hZ_tautauZ_ATLAS8"] = boost::factory<Robs_ggF_A_hZ_tautauZ_ATLAS8*>();
4010  obsThFactory["Robs_ggF_A_tt_ATLAS8"] = boost::factory<Robs_ggF_A_tt_ATLAS8*>();
4011  obsThFactory["Robs_bbF_A_bb_CMS8"] = boost::factory<Robs_bbF_A_bb_CMS8*>();
4012  obsThFactory["Robs_pp_A_HZ_bbll_CMS8"] = boost::factory<Robs_pp_A_HZ_bbll_CMS8*>();
4013  obsThFactory["Robs_pp_A_HZ_tautaull_CMS8"] = boost::factory<Robs_pp_A_HZ_tautaull_CMS8*>();
4014  obsThFactory["log10_ggF_A_tautau_TH8"] = boost::factory<log10_ggF_A_tautau_TH8*>();
4015  obsThFactory["log10_bbF_A_tautau_TH8"] = boost::factory<log10_bbF_A_tautau_TH8*>();
4016  obsThFactory["log10_pp_A_gaga_TH8"] = boost::factory<log10_pp_A_gaga_TH8*>();
4017  obsThFactory["log10_ggF_A_gaga_TH8"] = boost::factory<log10_ggF_A_gaga_TH8*>();
4018  obsThFactory["log10_pp_A_Zga_llga_TH8"] = boost::factory<log10_pp_A_Zga_llga_TH8*>();
4019  obsThFactory["log10_ggF_A_hZ_bbll_TH8"] = boost::factory<log10_ggF_A_hZ_bbll_TH8*>();
4020  obsThFactory["log10_ggF_A_hZ_bbZ_TH8"] = boost::factory<log10_ggF_A_hZ_bbZ_TH8*>();
4021  obsThFactory["log10_ggF_A_hZ_tautaull_TH8"] = boost::factory<log10_ggF_A_hZ_tautaull_TH8*>();
4022  obsThFactory["log10_ggF_A_hZ_tautauZ_TH8"] = boost::factory<log10_ggF_A_hZ_tautauZ_TH8*>();
4023  obsThFactory["log10_ggF_A_tt_TH8"] = boost::factory<log10_ggF_A_tt_TH8*>();
4024  obsThFactory["log10_bbF_A_bb_TH8"] = boost::factory<log10_bbF_A_bb_TH8*>();
4025  obsThFactory["log10_pp_A_HZ_bbll_TH8"] = boost::factory<log10_pp_A_HZ_bbll_TH8*>();
4026  obsThFactory["log10_pp_A_HZ_tautaull_TH8"] = boost::factory<log10_pp_A_HZ_tautaull_TH8*>();
4027  obsThFactory["Hobs_ttF_A_tt_ATLAS13"] = boost::factory<Hobs_ttF_A_tt_ATLAS13*>();
4028  obsThFactory["Hobs_bbF_A_tt_ATLAS13"] = boost::factory<Hobs_bbF_A_tt_ATLAS13*>();
4029  obsThFactory["Hobs_ggF_A_tautau_ATLAS13"] = boost::factory<Hobs_ggF_A_tautau_ATLAS13*>();
4030  obsThFactory["Hobs_bbF_A_tautau_ATLAS13"] = boost::factory<Hobs_bbF_A_tautau_ATLAS13*>();
4031  obsThFactory["Hobs_ggF_A_tautau_CMS13"] = boost::factory<Hobs_ggF_A_tautau_CMS13*>();
4032  obsThFactory["Hobs_bbF_A_tautau_CMS13"] = boost::factory<Hobs_bbF_A_tautau_CMS13*>();
4033  obsThFactory["Hobs_pp_A_gaga_ATLAS13"] = boost::factory<Hobs_pp_A_gaga_ATLAS13*>();
4034  obsThFactory["Hobs_ggF_A_gaga_CMS13"] = boost::factory<Hobs_ggF_A_gaga_CMS13*>();
4035  obsThFactory["Hobs_pp_A_Zga_llga_ATLAS13"] = boost::factory<Hobs_pp_A_Zga_llga_ATLAS13*>();
4036  obsThFactory["Hobs_ggF_A_Zga_llga_ATLAS13"] = boost::factory<Hobs_ggF_A_Zga_llga_ATLAS13*>();
4037  obsThFactory["Hobs_pp_A_Zga_llga_CMS13"] = boost::factory<Hobs_pp_A_Zga_llga_CMS13*>();
4038  obsThFactory["Hobs_pp_A_Zga_qqga_CMS13"] = boost::factory<Hobs_pp_A_Zga_qqga_CMS13*>();
4039  obsThFactory["Hobs_ggF_A_Zga_CMS13"] = boost::factory<Hobs_ggF_A_Zga_CMS13*>();
4040  obsThFactory["Hobs_ggF_A_hZ_bbZ_ATLAS13"] = boost::factory<Hobs_ggF_A_hZ_bbZ_ATLAS13*>();
4041  obsThFactory["Hobs_bbF_A_hZ_bbZ_ATLAS13"] = boost::factory<Hobs_bbF_A_hZ_bbZ_ATLAS13*>();
4042  obsThFactory["Hobs_pp_A_bb_CMS13"] = boost::factory<Hobs_pp_A_bb_CMS13*>();
4043  obsThFactory["Robs_ttF_A_tt_ATLAS13"] = boost::factory<Robs_ttF_A_tt_ATLAS13*>();
4044  obsThFactory["Robs_bbF_A_tt_ATLAS13"] = boost::factory<Robs_bbF_A_tt_ATLAS13*>();
4045  obsThFactory["Robs_ggF_A_tautau_ATLAS13"] = boost::factory<Robs_ggF_A_tautau_ATLAS13*>();
4046  obsThFactory["Robs_bbF_A_tautau_ATLAS13"] = boost::factory<Robs_bbF_A_tautau_ATLAS13*>();
4047  obsThFactory["Robs_ggF_A_tautau_CMS13"] = boost::factory<Robs_ggF_A_tautau_CMS13*>();
4048  obsThFactory["Robs_bbF_A_tautau_CMS13"] = boost::factory<Robs_bbF_A_tautau_CMS13*>();
4049  obsThFactory["Robs_pp_A_gaga_ATLAS13"] = boost::factory<Robs_pp_A_gaga_ATLAS13*>();
4050  obsThFactory["Robs_ggF_A_gaga_CMS13"] = boost::factory<Robs_ggF_A_gaga_CMS13*>();
4051  obsThFactory["Robs_pp_A_Zga_llga_ATLAS13"] = boost::factory<Robs_pp_A_Zga_llga_ATLAS13*>();
4052  obsThFactory["Robs_pp_A_Zga_llga_CMS13"] = boost::factory<Robs_pp_A_Zga_llga_CMS13*>();
4053  obsThFactory["Robs_pp_A_Zga_qqga_CMS13"] = boost::factory<Robs_pp_A_Zga_qqga_CMS13*>();
4054  obsThFactory["Robs_ggF_A_Zga_CMS13"] = boost::factory<Robs_ggF_A_Zga_CMS13*>();
4055  obsThFactory["Robs_ggF_A_hZ_bbZ_ATLAS13"] = boost::factory<Robs_ggF_A_hZ_bbZ_ATLAS13*>();
4056  obsThFactory["Robs_bbF_A_hZ_bbZ_ATLAS13"] = boost::factory<Robs_bbF_A_hZ_bbZ_ATLAS13*>();
4057  obsThFactory["Robs_pp_A_bb_CMS13"] = boost::factory<Robs_pp_A_bb_CMS13*>();
4058  obsThFactory["log10_ggF_A_tautau_TH13"] = boost::factory<log10_ggF_A_tautau_TH13*>();
4059  obsThFactory["log10_bbF_A_tautau_TH13"] = boost::factory<log10_bbF_A_tautau_TH13*>();
4060  obsThFactory["log10_pp_A_gaga_TH13"] = boost::factory<log10_pp_A_gaga_TH13*>();
4061  obsThFactory["log10_ggF_A_gaga_TH13"] = boost::factory<log10_ggF_A_gaga_TH13*>();
4062  obsThFactory["log10_pp_A_Zga_TH13"] = boost::factory<log10_pp_A_Zga_TH13*>();
4063  obsThFactory["log10_ggF_A_Zga_TH13"] = boost::factory<log10_ggF_A_Zga_TH13*>();
4064  obsThFactory["log10_ggF_A_hZ_bbZ_TH13"] = boost::factory<log10_ggF_A_hZ_bbZ_TH13*>();
4065  obsThFactory["log10_bbF_A_hZ_bbZ_TH13"] = boost::factory<log10_bbF_A_hZ_bbZ_TH13*>();
4066  obsThFactory["log10_ttF_A_tt_TH13"] = boost::factory<log10_ttF_A_tt_TH13*>();
4067  obsThFactory["log10_bbF_A_tt_TH13"] = boost::factory<log10_bbF_A_tt_TH13*>();
4068  obsThFactory["log10_pp_A_bb_TH13"] = boost::factory<log10_pp_A_bb_TH13*>();
4069  obsThFactory["Gamma_A_THDM"] = boost::factory<Gamma_A_THDM*>();
4070  obsThFactory["rA_gg_THDM"] = boost::factory<rA_gg_THDM*>();
4071  obsThFactory["BR_A_HZ_THDM"] = boost::factory<BR_A_HZ_THDM*>();
4072  obsThFactory["BR_A_hZ_THDM"] = boost::factory<BR_A_hZ_THDM*>();
4073  obsThFactory["BR_A_HpW_THDM"] = boost::factory<BR_A_HpW_THDM*>();
4074 
4075  obsThFactory["Hobs_pp_Hpm_taunu_ATLAS8"] = boost::factory<Hobs_pp_Hpm_taunu_ATLAS8*>();
4076  obsThFactory["Hobs_pp_Hp_taunu_CMS8"] = boost::factory<Hobs_pp_Hp_taunu_CMS8*>();
4077  obsThFactory["Hobs_pp_Hpm_tb_ATLAS8"] = boost::factory<Hobs_pp_Hpm_tb_ATLAS8*>();
4078  obsThFactory["Hobs_pp_Hp_tb_CMS8"] = boost::factory<Hobs_pp_Hp_tb_CMS8*>();
4079  obsThFactory["Hobs_pp_Hpm_taunu_ATLAS13"] = boost::factory<Hobs_pp_Hpm_taunu_ATLAS13*>();
4080  obsThFactory["Hobs_pp_Hpm_taunu_CMS13"] = boost::factory<Hobs_pp_Hpm_taunu_CMS13*>();
4081  obsThFactory["Hobs_pp_Hp_tb_ATLAS13"] = boost::factory<Hobs_pp_Hp_tb_ATLAS13*>();
4082  obsThFactory["Hobs_pp_Hp_tb_ATLAS13_1"] = boost::factory<Hobs_pp_Hp_tb_ATLAS13_1*>();
4083  obsThFactory["Hobs_pp_Hp_tb_ATLAS13_2"] = boost::factory<Hobs_pp_Hp_tb_ATLAS13_2*>();
4084  obsThFactory["Robs_pp_Hpm_taunu_ATLAS8"] = boost::factory<Robs_pp_Hpm_taunu_ATLAS8*>();
4085  obsThFactory["Robs_pp_Hp_taunu_CMS8"] = boost::factory<Robs_pp_Hp_taunu_CMS8*>();
4086  obsThFactory["Robs_pp_Hpm_tb_ATLAS8"] = boost::factory<Robs_pp_Hpm_tb_ATLAS8*>();
4087  obsThFactory["Robs_pp_Hp_tb_CMS8"] = boost::factory<Robs_pp_Hp_tb_CMS8*>();
4088  obsThFactory["Robs_pp_Hpm_taunu_ATLAS13"] = boost::factory<Robs_pp_Hpm_taunu_ATLAS13*>();
4089  obsThFactory["Robs_pp_Hpm_taunu_CMS13"] = boost::factory<Robs_pp_Hpm_taunu_CMS13*>();
4090  obsThFactory["Robs_pp_Hp_tb_ATLAS13"] = boost::factory<Robs_pp_Hp_tb_ATLAS13*>();
4091  obsThFactory["Robs_pp_Hp_tb_ATLAS13_1"] = boost::factory<Robs_pp_Hp_tb_ATLAS13_1*>();
4092  obsThFactory["Robs_pp_Hp_tb_ATLAS13_2"] = boost::factory<Robs_pp_Hp_tb_ATLAS13_2*>();
4093  obsThFactory["log10_pp_Hpm_taunu_TH8"] = boost::factory<log10_pp_Hpm_taunu_TH8*>();
4094  obsThFactory["log10_pp_Hp_tb_TH8"] = boost::factory<log10_pp_Hp_tb_TH8*>();
4095  obsThFactory["log10_pp_Hpm_taunu_TH13"] = boost::factory<log10_pp_Hpm_taunu_TH13*>();
4096  obsThFactory["log10_pp_Hp_tb_TH13"] = boost::factory<log10_pp_Hp_tb_TH13*>();
4097  obsThFactory["Gamma_Hp_THDM"] = boost::factory<Gamma_Hp_THDM*>();
4098 
4099  obsThFactory["tanbeta"] = boost::factory<tanbeta*>();
4100  obsThFactory["mHl_THDM"] = boost::factory<mass_mHl*>();
4101  obsThFactory["mHh"] = boost::factory<mass_mHh*>();
4102  obsThFactory["mA"] = boost::factory<mass_mA*>();
4103  obsThFactory["mHp"] = boost::factory<mass_mHp*>();
4104  obsThFactory["mHlmmA"] = boost::factory<massdifference_mHlmmA*>();
4105  obsThFactory["mAmmHl"] = boost::factory<massdifference_mAmmHl*>();
4106  obsThFactory["mHlmmHp"] = boost::factory<massdifference_mHlmmHp*>();
4107  obsThFactory["mHpmmHl"] = boost::factory<massdifference_mHpmmHl*>();
4108  obsThFactory["mHhmmA"] = boost::factory<massdifference_mHhmmA*>();
4109  obsThFactory["mAmmHh"] = boost::factory<massdifference_mAmmHh*>();
4110  obsThFactory["mHhmmHp"] = boost::factory<massdifference_mHhmmHp*>();
4111  obsThFactory["mHpmmHh"] = boost::factory<massdifference_mHpmmHh*>();
4112  obsThFactory["mAmmHp"] = boost::factory<massdifference_mAmmHp*>();
4113  obsThFactory["mHpmmA"] = boost::factory<massdifference_mHpmmA*>();
4114  obsThFactory["m11_2"] = boost::factory<m11_2*>();
4115  obsThFactory["m22_2"] = boost::factory<m22_2*>();
4116  obsThFactory["lambda1"] = boost::factory<lambda1*>();
4117  obsThFactory["lambda2"] = boost::factory<lambda2*>();
4118  obsThFactory["lambda3"] = boost::factory<lambda3*>();
4119  obsThFactory["lambda4"] = boost::factory<lambda4*>();
4120  obsThFactory["lambda5"] = boost::factory<lambda5*>();
4121  obsThFactory["lambda345"] = boost::factory<lambda345*>();
4122  obsThFactory["g_hhh"] = boost::factory<g_hhh*>();
4123  obsThFactory["g_hhHh"] = boost::factory<g_hhHh*>();
4124  obsThFactory["g_hHhHh"] = boost::factory<g_hHhHh*>();
4125  obsThFactory["g_HhHhHh"] = boost::factory<g_HhHhHh*>();
4126  obsThFactory["g_hAA"] = boost::factory<g_hAA*>();
4127  obsThFactory["g_HhAA"] = boost::factory<g_HhAA*>();
4128  obsThFactory["g_hHpHm"] = boost::factory<g_hHpHm*>();
4129  obsThFactory["g_HhHpHm"] = boost::factory<g_HhHpHm*>();
4130  obsThFactory["Y1_THDM"] = boost::factory<Y1_THDM*>();
4131  obsThFactory["Y2_THDM"] = boost::factory<Y2_THDM*>();
4132  obsThFactory["Y3_THDM"] = boost::factory<Y3_THDM*>();
4133  obsThFactory["Z1_THDM"] = boost::factory<Z1_THDM*>();
4134  obsThFactory["Z2_THDM"] = boost::factory<Z2_THDM*>();
4135  obsThFactory["Z3_THDM"] = boost::factory<Z3_THDM*>();
4136  obsThFactory["Z4_THDM"] = boost::factory<Z4_THDM*>();
4137  obsThFactory["Z5_THDM"] = boost::factory<Z5_THDM*>();
4138  obsThFactory["Z6_THDM"] = boost::factory<Z6_THDM*>();
4139  obsThFactory["Z7_THDM"] = boost::factory<Z7_THDM*>();
4140  obsThFactory["xi0_THDM"] = boost::factory<xi0_THDM*>();
4141  obsThFactory["xi1_THDM"] = boost::factory<xi1_THDM*>();
4142  obsThFactory["xi3_THDM"] = boost::factory<xi3_THDM*>();
4143  obsThFactory["eta00_THDM"] = boost::factory<eta00_THDM*>();
4144  obsThFactory["eta3_THDM"] = boost::factory<eta3_THDM*>();
4145  obsThFactory["E11_THDM"] = boost::factory<E11_THDM*>();
4146  obsThFactory["E22_THDM"] = boost::factory<E22_THDM*>();
4147  obsThFactory["E33_THDM"] = boost::factory<E33_THDM*>();
4148  obsThFactory["HHlambda1"] = boost::factory<HHlambda1*>();
4149  obsThFactory["HHlambda2"] = boost::factory<HHlambda2*>();
4150  obsThFactory["HHlambda3"] = boost::factory<HHlambda3*>();
4151  obsThFactory["HHlambda4"] = boost::factory<HHlambda4*>();
4152  obsThFactory["HHlambda5"] = boost::factory<HHlambda5*>();
4153  obsThFactory["HHlambda6"] = boost::factory<HHlambda6*>();
4154 
4155  obsThFactory["positivity1"] = boost::factory<positivity1*>();
4156  obsThFactory["positivity2"] = boost::factory<positivity2*>();
4157 
4158  obsThFactory["unitarity1"] = boost::factory<unitarity1*>();
4159  obsThFactory["unitarity2"] = boost::factory<unitarity2*>();
4160  obsThFactory["unitarity3"] = boost::factory<unitarity3*>();
4161  obsThFactory["unitarity4"] = boost::factory<unitarity4*>();
4162  obsThFactory["unitarity5"] = boost::factory<unitarity5*>();
4163  obsThFactory["unitarity6"] = boost::factory<unitarity6*>();
4164  obsThFactory["unitarity7"] = boost::factory<unitarity7*>();
4165  obsThFactory["unitarity8"] = boost::factory<unitarity8*>();
4166  obsThFactory["unitarity9"] = boost::factory<unitarity9*>();
4167  obsThFactory["unitarity10"] = boost::factory<unitarity10*>();
4168  obsThFactory["unitarity11"] = boost::factory<unitarity11*>();
4169  obsThFactory["unitarity12"] = boost::factory<unitarity12*>();
4170 
4171  obsThFactory["DeltaS"] = boost::factory<DeltaS*>();
4172  obsThFactory["DeltaT"] = boost::factory<DeltaT*>();
4173  obsThFactory["DeltaU"] = boost::factory<DeltaU*>();
4174 
4175  obsThFactory["B_BtoXsgammaTHDM"] = boost::factory<bsgammaTHDM*>();
4176 // obsThFactory["BR_BsmumuTHDM"] = boost::factory<BR_BsmumuTHDM*>();
4177 // obsThFactory["BR_BdmumuTHDM"] = boost::factory<BR_BdmumuTHDM*>();
4178  obsThFactory["RBDstartaunu"] = boost::factory<RBDstartaunu*>();
4179  obsThFactory["RBDtaunu"] = boost::factory<RBDtaunu*>();
4180  obsThFactory["obsBDtaunu_SM"] = boost::factory<obsBDtaunu_SM*>();
4181  obsThFactory["obsBDtaunu_A"] = boost::factory<obsBDtaunu_A*>();
4182  obsThFactory["obsBDtaunu_B"] = boost::factory<obsBDtaunu_B*>();
4183  obsThFactory["obsBDstartaunu_SM"] = boost::factory<obsBDstartaunu_SM*>();
4184  obsThFactory["obsBDstartaunu_A"] = boost::factory<obsBDstartaunu_A*>();
4185  obsThFactory["obsBDstartaunu_B"] = boost::factory<obsBDstartaunu_B*>();
4186  obsThFactory["THDMgminus2_mu"] = boost::factory<THDMgminus2_mu*>();
4187 
4188  obsThFactory["Q_st"] = boost::factory<Q_st*>();
4189  obsThFactory["DeltaQ_THDM"] = boost::factory<DeltaQ_THDM*>();
4190  obsThFactory["g1atQ"] = boost::factory<g1atQ*>();
4191  obsThFactory["g2atQ"] = boost::factory<g2atQ*>();
4192  obsThFactory["g3atQ"] = boost::factory<g3atQ*>();
4193  obsThFactory["YtopatQ"] = boost::factory<YtopatQ*>();
4194  obsThFactory["YbottomatQ"] = boost::factory<YbottomatQ*>();
4195  obsThFactory["YtauatQ"] = boost::factory<YtauatQ*>();
4196  obsThFactory["m11_2atQ"] = boost::factory<m11_2atQ*>();
4197  obsThFactory["m22_2atQ"] = boost::factory<m22_2atQ*>();
4198  obsThFactory["m12_2atQ"] = boost::factory<m12_2atQ*>();
4199  obsThFactory["lambda1atQ"] = boost::factory<lambda1atQ*>();
4200  obsThFactory["lambda2atQ"] = boost::factory<lambda2atQ*>();
4201  obsThFactory["lambda3atQ"] = boost::factory<lambda3atQ*>();
4202  obsThFactory["lambda4atQ"] = boost::factory<lambda4atQ*>();
4203  obsThFactory["lambda5atQ"] = boost::factory<lambda5atQ*>();
4204 
4205  obsThFactory["unitaritya10odd"] = boost::factory<unitarityNLO14*>();
4206  obsThFactory["unitaritya11odd"] = boost::factory<unitarityNLO24*>();
4207  obsThFactory["unitaritya00evenp"] = boost::factory<unitarityNLOev1*>();
4208  obsThFactory["unitaritya00evenm"] = boost::factory<unitarityNLOev2*>();
4209  obsThFactory["unitaritya00oddp"] = boost::factory<unitarityNLOev3*>();
4210  obsThFactory["unitaritya00oddm"] = boost::factory<unitarityNLOev4*>();
4211  obsThFactory["unitaritya01evenp"] = boost::factory<unitarityNLOev5*>();
4212  obsThFactory["unitaritya01evenm"] = boost::factory<unitarityNLOev6*>();
4213  obsThFactory["unitaritya01oddp"] = boost::factory<unitarityNLOev9*>();
4214  obsThFactory["unitaritya01oddm"] = boost::factory<unitarityNLOev10*>();
4215  obsThFactory["unitaritya11evenp"] = boost::factory<unitarityNLOev13*>();
4216  obsThFactory["unitaritya11evenm"] = boost::factory<unitarityNLOev14*>();
4217  obsThFactory["unitarityRp1"] = boost::factory<unitarityRp1*>();
4218  obsThFactory["unitarityRp2"] = boost::factory<unitarityRp2*>();
4219  obsThFactory["unitarityRp3"] = boost::factory<unitarityRp3*>();
4220  obsThFactory["unitarityRp4"] = boost::factory<unitarityRp4*>();
4221  obsThFactory["unitarityRp5"] = boost::factory<unitarityRp5*>();
4222  obsThFactory["unitarityRp6"] = boost::factory<unitarityRp6*>();
4223  obsThFactory["unitarityRp9"] = boost::factory<unitarityRp9*>();
4224  obsThFactory["unitarityRp10"] = boost::factory<unitarityRp10*>();
4225  obsThFactory["unitarityRp13"] = boost::factory<unitarityRp13*>();
4226  obsThFactory["unitarityRp14"] = boost::factory<unitarityRp14*>();
4227  obsThFactory["unitarityRp19"] = boost::factory<unitarityRp19*>();
4228  obsThFactory["unitarityRp20"] = boost::factory<unitarityRp20*>();
4229  obsThFactory["unitarityR1"] = boost::factory<unitarityR1*>();
4230  obsThFactory["unitarityR2"] = boost::factory<unitarityR2*>();
4231  obsThFactory["unitarityR3"] = boost::factory<unitarityR3*>();
4232  obsThFactory["unitarityR4"] = boost::factory<unitarityR4*>();
4233  obsThFactory["unitarityR5"] = boost::factory<unitarityR5*>();
4234  obsThFactory["unitarityR6"] = boost::factory<unitarityR6*>();
4235  obsThFactory["unitarityR9"] = boost::factory<unitarityR9*>();
4236  obsThFactory["unitarityR10"] = boost::factory<unitarityR10*>();
4237  obsThFactory["unitarityR13"] = boost::factory<unitarityR13*>();
4238  obsThFactory["unitarityR14"] = boost::factory<unitarityR14*>();
4239  obsThFactory["unitarityR19"] = boost::factory<unitarityR19*>();
4240  obsThFactory["unitarityR20"] = boost::factory<unitarityR20*>();
4241  obsThFactory["unitaritya00evenpRe"] = boost::factory<unitaritya00evenpRe*>();
4242  obsThFactory["unitaritya00evenpIm"] = boost::factory<unitaritya00evenpIm*>();
4243  obsThFactory["unitaritya00evenmRe"] = boost::factory<unitaritya00evenmRe*>();
4244  obsThFactory["unitaritya00evenmIm"] = boost::factory<unitaritya00evenmIm*>();
4245  obsThFactory["unitaritya00oddpRe"] = boost::factory<unitaritya00oddpRe*>();
4246  obsThFactory["unitaritya00oddpIm"] = boost::factory<unitaritya00oddpIm*>();
4247  obsThFactory["unitaritya00oddmRe"] = boost::factory<unitaritya00oddmRe*>();
4248  obsThFactory["unitaritya00oddmIm"] = boost::factory<unitaritya00oddmIm*>();
4249  obsThFactory["unitaritya01evenpRe"] = boost::factory<unitaritya01evenpRe*>();
4250  obsThFactory["unitaritya01evenpIm"] = boost::factory<unitaritya01evenpIm*>();
4251  obsThFactory["unitaritya01evenmRe"] = boost::factory<unitaritya01evenmRe*>();
4252  obsThFactory["unitaritya01evenmIm"] = boost::factory<unitaritya01evenmIm*>();
4253  obsThFactory["unitaritya01oddpRe"] = boost::factory<unitaritya01oddpRe*>();
4254  obsThFactory["unitaritya01oddpIm"] = boost::factory<unitaritya01oddpIm*>();
4255  obsThFactory["unitaritya01oddmRe"] = boost::factory<unitaritya01oddmRe*>();
4256  obsThFactory["unitaritya01oddmIm"] = boost::factory<unitaritya01oddmIm*>();
4257  obsThFactory["unitaritya10oddRe"] = boost::factory<unitaritya10oddRe*>();
4258  obsThFactory["unitaritya10oddIm"] = boost::factory<unitaritya10oddIm*>();
4259  obsThFactory["unitaritya11evenpRe"] = boost::factory<unitaritya11evenpRe*>();
4260  obsThFactory["unitaritya11evenpIm"] = boost::factory<unitaritya11evenpIm*>();
4261  obsThFactory["unitaritya11evenmRe"] = boost::factory<unitaritya11evenmRe*>();
4262  obsThFactory["unitaritya11evenmIm"] = boost::factory<unitaritya11evenmIm*>();
4263  obsThFactory["unitaritya11oddRe"] = boost::factory<unitaritya11oddRe*>();
4264  obsThFactory["unitaritya11oddIm"] = boost::factory<unitaritya11oddIm*>();
4265 
4266 
4267  //----- LeftRightSymmetric model observables -----
4268  obsThFactory["mu1_2_LRSM"] = boost::factory<mu1_2_LRSM*>();
4269  obsThFactory["mu2_2_LRSM"] = boost::factory<mu2_2_LRSM*>();
4270  obsThFactory["mu3_2_LRSM"] = boost::factory<mu3_2_LRSM*>();
4271  obsThFactory["rho2_LRSM"] = boost::factory<rho2_LRSM*>();
4272  obsThFactory["rho3_LRSM"] = boost::factory<rho3_LRSM*>();
4273  obsThFactory["alpha3_LRSM"] = boost::factory<alpha3_LRSM*>();
4274  obsThFactory["mH00_LRSM"] = boost::bind(boost::factory<MH0_LRSM*>(), _1, 0);
4275  obsThFactory["mH01_LRSM"] = boost::bind(boost::factory<MH0_LRSM*>(), _1, 1);
4276  obsThFactory["mH02_LRSM"] = boost::bind(boost::factory<MH0_LRSM*>(), _1, 2);
4277  obsThFactory["mH03_LRSM"] = boost::bind(boost::factory<MH0_LRSM*>(), _1, 3);
4278  obsThFactory["mH04_LRSM"] = boost::bind(boost::factory<MH0_LRSM*>(), _1, 4);
4279  obsThFactory["mH05_LRSM"] = boost::factory<MH05_LRSM*>();
4280  obsThFactory["mH06_LRSM"] = boost::factory<MH06_LRSM*>();
4281  obsThFactory["MH01_app1"] = boost::factory<MH01_app1*>();
4282  obsThFactory["MH01_app"] = boost::bind(boost::factory<MH0_app*>(), _1, 0);
4283  obsThFactory["MH02_app"] = boost::bind(boost::factory<MH0_app*>(), _1, 1);
4284  obsThFactory["MH03_app"] = boost::bind(boost::factory<MH0_app*>(), _1, 2);
4285  obsThFactory["MH04_app"] = boost::bind(boost::factory<MH0_app*>(), _1, 3);
4286 
4287 
4288  //----- GeorgiMachacek observables -----
4289  //----- GeorgiMachacek quantities -----
4290  obsThFactory["tanbetaGM"] = boost::factory<tanbetaGM*>();
4291  obsThFactory["m1sqGM"] = boost::factory<m1sqGM*>();
4292  obsThFactory["m2sqGM"] = boost::factory<m2sqGM*>();
4293  obsThFactory["lambda1GM"] = boost::factory<lambda1GM*>();
4294  obsThFactory["lambda2GM"] = boost::factory<lambda2GM*>();
4295  obsThFactory["lambda3GM"] = boost::factory<lambda3GM*>();
4296  obsThFactory["lambda4GM"] = boost::factory<lambda4GM*>();
4297  obsThFactory["lambda5GM"] = boost::factory<lambda5GM*>();
4298  obsThFactory["vPhiGM"] = boost::factory<vPhiGM*>();
4299  obsThFactory["GMmHh"] = boost::factory<GMmass_mHh*>();
4300  obsThFactory["GMmA"] = boost::factory<GMmass_mA*>();
4301  obsThFactory["GMmH5"] = boost::factory<GMmass_mH5*>();
4302  obsThFactory["GMmHlmmHh"] = boost::factory<GMmassdifference_mHlmmHh*>();
4303  obsThFactory["GMmHhmmHl"] = boost::factory<GMmassdifference_mHhmmHl*>();
4304  obsThFactory["GMmHlmmA"] = boost::factory<GMmassdifference_mHlmmA*>();
4305  obsThFactory["GMmAmmHl"] = boost::factory<GMmassdifference_mAmmHl*>();
4306  obsThFactory["GMmHlmmH5"] = boost::factory<GMmassdifference_mHlmmH5*>();
4307  obsThFactory["GMmH5mmHl"] = boost::factory<GMmassdifference_mH5mmHl*>();
4308  obsThFactory["GMmHhmmA"] = boost::factory<GMmassdifference_mHhmmA*>();
4309  obsThFactory["GMmAmmHh"] = boost::factory<GMmassdifference_mAmmHh*>();
4310  obsThFactory["GMmHhmmH5"] = boost::factory<GMmassdifference_mHhmmH5*>();
4311  obsThFactory["GMmH5mmHh"] = boost::factory<GMmassdifference_mH5mmHh*>();
4312  obsThFactory["GMmAmmH5"] = boost::factory<GMmassdifference_mAmmH5*>();
4313  obsThFactory["GMmH5mmA"] = boost::factory<GMmassdifference_mH5mmA*>();
4314  obsThFactory["GMGammah"] = boost::factory<GMGammah*>();
4315  obsThFactory["GMGammaH1"] = boost::factory<GMGammaH1*>();
4316  obsThFactory["GMGammaH3"] = boost::factory<GMGammaH3*>();
4317  obsThFactory["GMGammaH3p"] = boost::factory<GMGammaH3p*>();
4318  obsThFactory["GMGammaH5"] = boost::factory<GMGammaH5*>();
4319  obsThFactory["GMGammaH5p"] = boost::factory<GMGammaH5p*>();
4320  obsThFactory["GMGammaH5pp"] = boost::factory<GMGammaH5pp*>();
4321  obsThFactory["GMghhh"] = boost::factory<GMghhh*>();
4322  //----- Tree-level unitarity constraints -----
4323  obsThFactory["GMunitarity1"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 0);
4324  obsThFactory["GMunitarity2"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 1);
4325  obsThFactory["GMunitarity3"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 2);
4326  obsThFactory["GMunitarity4"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 3);
4327  obsThFactory["GMunitarity5"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 4);
4328  obsThFactory["GMunitarity6"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 5);
4329  obsThFactory["GMunitarity7"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 6);
4330  obsThFactory["GMunitarity8"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 7);
4331  obsThFactory["GMunitarity9"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 8);
4332  obsThFactory["GMunitarity10"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 9);
4333  obsThFactory["GMunitarity11"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 10);
4334  obsThFactory["GMunitarity12"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 11);
4335  obsThFactory["GMunitarity13"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 12);
4336  obsThFactory["GMunitarity14"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 13);
4337  obsThFactory["GMunitarity15"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 14);
4338  obsThFactory["GMunitarity16"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 15);
4339  obsThFactory["GMunitarity17"] = boost::bind(boost::factory<GMunitarityLO*>(), _1, 16);
4340  //----- Positivity constraints -----
4341  obsThFactory["GMpositivity1"] = boost::factory<GMpositivity1*>();
4342  obsThFactory["GMpositivity2"] = boost::factory<GMpositivity2*>();
4343  obsThFactory["GMpositivity3"] = boost::factory<GMpositivity3*>();
4344  obsThFactory["GMpositivity4"] = boost::factory<GMpositivity4*>();
4345  //----- Higgs observables -----
4346  obsThFactory["rh_gaga_GM"] = boost::factory<rh_gaga_GM*>();
4347  obsThFactory["rh_Zga_GM"] = boost::factory<rh_Zga_GM*>();
4348  //----- Direct Higgs searches -----
4349  obsThFactory["BR_H1_tt_GM"] = boost::factory<BR_H1_tt_GM*>();
4350  obsThFactory["BR_H1_bb_GM"] = boost::factory<BR_H1_bb_GM*>();
4351  obsThFactory["BR_H1_tautau_GM"] = boost::factory<BR_H1_tautau_GM*>();
4352  obsThFactory["BR_H1_WW_GM"] = boost::factory<BR_H1_WW_GM*>();
4353  obsThFactory["BR_H1_ZZ_GM"] = boost::factory<BR_H1_ZZ_GM*>();
4354  obsThFactory["BR_H1_gaga_GM"] = boost::factory<BR_H1_gaga_GM*>();
4355  obsThFactory["BR_H1_Zga_GM"] = boost::factory<BR_H1_Zga_GM*>();
4356  obsThFactory["BR_H1_H3Z_GM"] = boost::factory<BR_H1_H3Z_GM*>();
4357  obsThFactory["BR_H1_H3pW_GM"] = boost::factory<BR_H1_H3pW_GM*>();
4358  obsThFactory["BR_H1_hh_GM"] = boost::factory<BR_H1_hh_GM*>();
4359  obsThFactory["BR_H1_H3H3_GM"] = boost::factory<BR_H1_H3H3_GM*>();
4360  obsThFactory["BR_H1_H3pH3m_GM"] = boost::factory<BR_H1_H3pH3m_GM*>();
4361  obsThFactory["BR_H1_H5H5_GM"] = boost::factory<BR_H1_H5H5_GM*>();
4362  obsThFactory["BR_H1_H5pH5m_GM"] = boost::factory<BR_H1_H5pH5m_GM*>();
4363  obsThFactory["BR_H1_H5ppH5mm_GM"] = boost::factory<BR_H1_H5ppH5mm_GM*>();
4364  obsThFactory["BR_H3_tt_GM"] = boost::factory<BR_H3_tt_GM*>();
4365  obsThFactory["BR_H3_bb_GM"] = boost::factory<BR_H3_bb_GM*>();
4366  obsThFactory["BR_H3_tautau_GM"] = boost::factory<BR_H3_tautau_GM*>();
4367  obsThFactory["BR_H3_gaga_GM"] = boost::factory<BR_H3_gaga_GM*>();
4368  obsThFactory["BR_H3_Zga_GM"] = boost::factory<BR_H3_Zga_GM*>();
4369  obsThFactory["BR_H3_hZ_GM"] = boost::factory<BR_H3_hZ_GM*>();
4370  obsThFactory["BR_H3_H1Z_GM"] = boost::factory<BR_H3_H1Z_GM*>();
4371  obsThFactory["BR_H3_H5Z_GM"] = boost::factory<BR_H3_H5Z_GM*>();
4372  obsThFactory["BR_H3_H5pW_GM"] = boost::factory<BR_H3_H5pW_GM*>();
4373  obsThFactory["BR_H3p_taunu_GM"] = boost::factory<BR_H3p_taunu_GM*>();
4374  obsThFactory["BR_H3p_tb_GM"] = boost::factory<BR_H3p_tb_GM*>();
4375  obsThFactory["BR_H3p_hW_GM"] = boost::factory<BR_H3p_hW_GM*>();
4376  obsThFactory["BR_H3p_H1W_GM"] = boost::factory<BR_H3p_H1W_GM*>();
4377  obsThFactory["BR_H3p_H5W_GM"] = boost::factory<BR_H3p_H5W_GM*>();
4378  obsThFactory["BR_H3p_H5pZ_GM"] = boost::factory<BR_H3p_H5pZ_GM*>();
4379  obsThFactory["BR_H3p_H5ppW_GM"] = boost::factory<BR_H3p_H5ppW_GM*>();
4380  obsThFactory["BR_H5_WW_GM"] = boost::factory<BR_H5_WW_GM*>();
4381  obsThFactory["BR_H5_ZZ_GM"] = boost::factory<BR_H5_ZZ_GM*>();
4382  obsThFactory["BR_H5_gaga_GM"] = boost::factory<BR_H5_gaga_GM*>();
4383  obsThFactory["BR_H5_Zga_GM"] = boost::factory<BR_H5_Zga_GM*>();
4384  obsThFactory["BR_H5_H3Z_GM"] = boost::factory<BR_H5_H3Z_GM*>();
4385  obsThFactory["BR_H5_H3pW_GM"] = boost::factory<BR_H5_H3pW_GM*>();
4386  obsThFactory["BR_H5_H3H3_GM"] = boost::factory<BR_H5_H3H3_GM*>();
4387  obsThFactory["BR_H5_H3pH3m_GM"] = boost::factory<BR_H5_H3pH3m_GM*>();
4388  obsThFactory["BR_H5p_WZ_GM"] = boost::factory<BR_H5p_WZ_GM*>();
4389  obsThFactory["BR_H5p_H3W_GM"] = boost::factory<BR_H5p_H3W_GM*>();
4390  obsThFactory["BR_H5p_H3pZ_GM"] = boost::factory<BR_H5p_H3pZ_GM*>();
4391  obsThFactory["BR_H5p_H3pH3_GM"] = boost::factory<BR_H5p_H3pH3_GM*>();
4392  obsThFactory["BR_H5pp_WW_GM"] = boost::factory<BR_H5pp_WW_GM*>();
4393  obsThFactory["BR_H5pp_H3pW_GM"] = boost::factory<BR_H5pp_H3pW_GM*>();
4394  obsThFactory["BR_H5pp_H3pH3p_GM"] = boost::factory<BR_H5pp_H3pH3p_GM*>();
4395  obsThFactory["Hobs_tt_H1_tt_ATLAS13"] = boost::factory<Hobs_tt_H1_tt_ATLAS13*>();
4396  obsThFactory["Hobs_bb_H1_tt_ATLAS13"] = boost::factory<Hobs_bb_H1_tt_ATLAS13*>();
4397  obsThFactory["Hobs_tt_H3_tt_ATLAS13"] = boost::factory<Hobs_tt_H3_tt_ATLAS13*>();
4398  obsThFactory["Hobs_bb_H3_tt_ATLAS13"] = boost::factory<Hobs_bb_H3_tt_ATLAS13*>();
4399  obsThFactory["Hobs_bb_H1_bb_CMS8"] = boost::factory<Hobs_bb_H1_bb_CMS8*>();
4400  obsThFactory["Hobs_gg_H1_bb_CMS8"] = boost::factory<Hobs_gg_H1_bb_CMS8*>();
4401  obsThFactory["Hobs_pp_H1_bb_CMS13"] = boost::factory<Hobs_pp_H1_bb_CMS13*>();
4402  obsThFactory["Hobs_bb_H1_bb_CMS13"] = boost::factory<Hobs_bb_H1_bb_CMS13*>();
4403  obsThFactory["Hobs_bb_H3_bb_CMS8"] = boost::factory<Hobs_bb_H3_bb_CMS8*>();
4404  obsThFactory["Hobs_gg_H3_bb_CMS8"] = boost::factory<Hobs_gg_H3_bb_CMS8*>();
4405  obsThFactory["Hobs_pp_H3_bb_CMS13"] = boost::factory<Hobs_pp_H3_bb_CMS13*>();
4406  obsThFactory["Hobs_bb_H3_bb_CMS13"] = boost::factory<Hobs_bb_H3_bb_CMS13*>();
4407  obsThFactory["Hobs_gg_H1_tautau_CMS8"] = boost::factory<Hobs_gg_H1_tautau_CMS8*>();
4408  obsThFactory["Hobs_bb_H1_tautau_CMS8"] = boost::factory<Hobs_bb_H1_tautau_CMS8*>();
4409  obsThFactory["Hobs_gg_H1_tautau_ATLAS13"] = boost::factory<Hobs_gg_H1_tautau_ATLAS13*>();
4410  obsThFactory["Hobs_gg_H1_tautau_CMS13"] = boost::factory<Hobs_gg_H1_tautau_CMS13*>();
4411  obsThFactory["Hobs_bb_H1_tautau_ATLAS13"] = boost::factory<Hobs_bb_H1_tautau_ATLAS13*>();
4412  obsThFactory["Hobs_bb_H1_tautau_CMS13"] = boost::factory<Hobs_bb_H1_tautau_CMS13*>();
4413  obsThFactory["Hobs_gg_H1_tautau_ATLAS8"] = boost::factory<Hobs_gg_H1_tautau_ATLAS8*>();
4414  obsThFactory["Hobs_bb_H1_tautau_ATLAS8"] = boost::factory<Hobs_bb_H1_tautau_ATLAS8*>();
4415  obsThFactory["Hobs_gg_H3_tautau_ATLAS8"] = boost::factory<Hobs_gg_H3_tautau_ATLAS8*>();
4416  obsThFactory["Hobs_gg_H3_tautau_CMS8"] = boost::factory<Hobs_gg_H3_tautau_CMS8*>();
4417  obsThFactory["Hobs_bb_H3_tautau_ATLAS8"] = boost::factory<Hobs_bb_H3_tautau_ATLAS8*>();
4418  obsThFactory["Hobs_bb_H3_tautau_CMS8"] = boost::factory<Hobs_bb_H3_tautau_CMS8*>();
4419  obsThFactory["Hobs_gg_H3_tautau_ATLAS13"] = boost::factory<Hobs_gg_H3_tautau_ATLAS13*>();
4420  obsThFactory["Hobs_gg_H3_tautau_CMS13"] = boost::factory<Hobs_gg_H3_tautau_CMS13*>();
4421  obsThFactory["Hobs_bb_H3_tautau_ATLAS13"] = boost::factory<Hobs_bb_H3_tautau_ATLAS13*>();
4422  obsThFactory["Hobs_bb_H3_tautau_CMS13"] = boost::factory<Hobs_bb_H3_tautau_CMS13*>();
4423  obsThFactory["Hobs_gg_H1_gaga_ATLAS8"] = boost::factory<Hobs_gg_H1_gaga_ATLAS8*>();
4424  obsThFactory["Hobs_pp_H1_gaga_ATLAS13"] = boost::factory<Hobs_pp_H1_gaga_ATLAS13*>();
4425  obsThFactory["Hobs_gg_H1_gaga_CMS13"] = boost::factory<Hobs_gg_H1_gaga_CMS13*>();
4426  obsThFactory["Hobs_gg_H3_gaga_ATLAS8"] = boost::factory<Hobs_gg_H3_gaga_ATLAS8*>();
4427  obsThFactory["Hobs_pp_H3_gaga_ATLAS13"] = boost::factory<Hobs_pp_H3_gaga_ATLAS13*>();
4428  obsThFactory["Hobs_gg_H3_gaga_CMS13"] = boost::factory<Hobs_gg_H3_gaga_CMS13*>();
4429  obsThFactory["Hobs_pp_H5_gaga_ATLAS13"] = boost::factory<Hobs_pp_H5_gaga_ATLAS13*>();
4430  obsThFactory["Hobs_pp_H1_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_H1_Zga_llga_ATLAS8*>();
4431  obsThFactory["Hobs_pp_H1_Zga_llga_CMS8"] = boost::factory<Hobs_pp_H1_Zga_llga_CMS8*>();
4432  obsThFactory["Hobs_gg_H1_Zga_llga_ATLAS13"] = boost::factory<Hobs_gg_H1_Zga_llga_ATLAS13*>();
4433  obsThFactory["Hobs_gg_H1_Zga_qqga_ATLAS13"] = boost::factory<Hobs_gg_H1_Zga_qqga_ATLAS13*>();
4434  obsThFactory["Hobs_gg_H1_Zga_CMS13"] = boost::factory<Hobs_gg_H1_Zga_CMS13*>();
4435  obsThFactory["Hobs_pp_H3_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_H3_Zga_llga_ATLAS8*>();
4436  obsThFactory["Hobs_pp_H3_Zga_llga_CMS8"] = boost::factory<Hobs_pp_H3_Zga_llga_CMS8*>();
4437  obsThFactory["Hobs_gg_H3_Zga_llga_ATLAS13"] = boost::factory<Hobs_gg_H3_Zga_llga_ATLAS13*>();
4438  obsThFactory["Hobs_gg_H3_Zga_qqga_ATLAS13"] = boost::factory<Hobs_gg_H3_Zga_qqga_ATLAS13*>();
4439  obsThFactory["Hobs_gg_H3_Zga_CMS13"] = boost::factory<Hobs_gg_H3_Zga_CMS13*>();
4440  obsThFactory["Hobs_pp_H5_Zga_llga_ATLAS8"] = boost::factory<Hobs_pp_H5_Zga_llga_ATLAS8*>();
4441  obsThFactory["Hobs_pp_H5_Zga_llga_CMS8"] = boost::factory<Hobs_pp_H5_Zga_llga_CMS8*>();
4442  obsThFactory["Hobs_gg_H1_ZZ_ATLAS8"] = boost::factory<Hobs_gg_H1_ZZ_ATLAS8*>();
4443  obsThFactory["Hobs_VV_H1_ZZ_ATLAS8"] = boost::factory<Hobs_VV_H1_ZZ_ATLAS8*>();
4444  obsThFactory["Hobs_gg_H1_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_gg_H1_ZZ_llllnunu_ATLAS13*>();
4445  obsThFactory["Hobs_VV_H1_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_VV_H1_ZZ_llllnunu_ATLAS13*>();
4446  obsThFactory["Hobs_gg_H1_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_gg_H1_ZZ_qqllnunu_ATLAS13*>();
4447  obsThFactory["Hobs_VV_H1_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_VV_H1_ZZ_qqllnunu_ATLAS13*>();
4448  obsThFactory["Hobs_pp_H1_ZZ_llqqnunull_CMS13"] = boost::factory<Hobs_pp_H1_ZZ_llqqnunull_CMS13*>();
4449  obsThFactory["Hobs_pp_H1_ZZ_qqnunu_CMS13"] = boost::factory<Hobs_pp_H1_ZZ_qqnunu_CMS13*>();
4450  obsThFactory["Hobs_VV_H5_ZZ_ATLAS8"] = boost::factory<Hobs_VV_H5_ZZ_ATLAS8*>();
4451  obsThFactory["Hobs_VV_H5_ZZ_llllnunu_ATLAS13"] = boost::factory<Hobs_VV_H5_ZZ_llllnunu_ATLAS13*>();
4452  obsThFactory["Hobs_VV_H5_ZZ_qqllnunu_ATLAS13"] = boost::factory<Hobs_VV_H5_ZZ_qqllnunu_ATLAS13*>();
4453  obsThFactory["Hobs_pp_H5_ZZ_llqqnunull_CMS13"] = boost::factory<Hobs_pp_H5_ZZ_llqqnunull_CMS13*>();
4454  obsThFactory["Hobs_pp_H5_ZZ_qqnunu_CMS13"] = boost::factory<Hobs_pp_H5_ZZ_qqnunu_CMS13*>();
4455  obsThFactory["Hobs_gg_H1_WW_ATLAS8"] = boost::factory<Hobs_gg_H1_WW_ATLAS8*>();
4456  obsThFactory["Hobs_VV_H1_WW_ATLAS8"] = boost::factory<Hobs_VV_H1_WW_ATLAS8*>();
4457  obsThFactory["Hobs_gg_H1_WW_enumunu_ATLAS13"] = boost::factory<Hobs_gg_H1_WW_enumunu_ATLAS13*>();
4458  obsThFactory["Hobs_VV_H1_WW_enumunu_ATLAS13"] = boost::factory<Hobs_VV_H1_WW_enumunu_ATLAS13*>();
4459  obsThFactory["Hobs_gg_H1_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_gg_H1_WW_lnuqq_ATLAS13*>();
4460  obsThFactory["Hobs_VV_H1_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_VV_H1_WW_lnuqq_ATLAS13*>();
4461  obsThFactory["Hobs_ggVV_H1_WW_lnulnu_CMS13"] = boost::factory<Hobs_ggVV_H1_WW_lnulnu_CMS13*>();
4462  obsThFactory["Hobs_pp_H1_WW_lnuqq_CMS13"] = boost::factory<Hobs_pp_H1_WW_lnuqq_CMS13*>();
4463  obsThFactory["Hobs_VV_H5_WW_ATLAS8"] = boost::factory<Hobs_VV_H5_WW_ATLAS8*>();
4464  obsThFactory["Hobs_VV_H5_WW_enumunu_ATLAS13"] = boost::factory<Hobs_VV_H5_WW_enumunu_ATLAS13*>();
4465  obsThFactory["Hobs_VV_H5_WW_lnuqq_ATLAS13"] = boost::factory<Hobs_VV_H5_WW_lnuqq_ATLAS13*>();
4466  obsThFactory["Hobs_ggVV_H5_WW_lnulnu_CMS13"] = boost::factory<Hobs_ggVV_H5_WW_lnulnu_CMS13*>();
4467  obsThFactory["Hobs_pp_H5_WW_lnuqq_CMS13"] = boost::factory<Hobs_pp_H5_WW_lnuqq_CMS13*>();
4468  obsThFactory["Hobs_mu_pp_H1_VV_CMS8"] = boost::factory<Hobs_mu_pp_H1_VV_CMS8*>();
4469  obsThFactory["Hobs_pp_H1_VV_qqqq_ATLAS13"] = boost::factory<Hobs_pp_H1_VV_qqqq_ATLAS13*>();
4470  obsThFactory["Hobs_mu_pp_H5_VV_CMS8"] = boost::factory<Hobs_mu_pp_H5_VV_CMS8*>();
4471  obsThFactory["Hobs_pp_H5_VV_qqqq_ATLAS13"] = boost::factory<Hobs_pp_H5_VV_qqqq_ATLAS13*>();
4472  obsThFactory["Hobs_gg_H1_hh_ATLAS8"] = boost::factory<Hobs_gg_H1_hh_ATLAS8*>();
4473  obsThFactory["Hobs_pp_H1_hh_bbbb_CMS8"] = boost::factory<Hobs_pp_H1_hh_bbbb_CMS8*>();
4474  obsThFactory["Hobs_pp_H1_hh_gagabb_CMS8"] = boost::factory<Hobs_pp_H1_hh_gagabb_CMS8*>();
4475  obsThFactory["Hobs_gg_H1_hh_bbtautau_CMS8"] = boost::factory<Hobs_gg_H1_hh_bbtautau_CMS8*>();
4476  obsThFactory["Hobs_pp_H1_hh_bbtautau_CMS8"] = boost::factory<Hobs_pp_H1_hh_bbtautau_CMS8*>();
4477  obsThFactory["Hobs_pp_H1_hh_bbbb_ATLAS13"] = boost::factory<Hobs_pp_H1_hh_bbbb_ATLAS13*>();
4478  obsThFactory["Hobs_pp_H1_hh_bbbb_1_CMS13"] = boost::factory<Hobs_pp_H1_hh_bbbb_1_CMS13*>();
4479  obsThFactory["Hobs_pp_H1_hh_bbbb_2_CMS13"] = boost::factory<Hobs_pp_H1_hh_bbbb_2_CMS13*>();
4480  obsThFactory["Hobs_gg_H1_hh_bbbb_CMS13"] = boost::factory<Hobs_gg_H1_hh_bbbb_CMS13*>();
4481  obsThFactory["Hobs_pp_H1_hh_gagabb_ATLAS13"] = boost::factory<Hobs_pp_H1_hh_gagabb_ATLAS13*>();
4482  obsThFactory["Hobs_pp_H1_hh_gagabb_CMS13"] = boost::factory<Hobs_pp_H1_hh_gagabb_CMS13*>();
4483  obsThFactory["Hobs_pp_H1_hh_bbtautau_ATLAS13"] = boost::factory<Hobs_pp_H1_hh_bbtautau_ATLAS13*>();
4484  obsThFactory["Hobs_pp_H1_hh_bbtautau_1_CMS13"] = boost::factory<Hobs_pp_H1_hh_bbtautau_1_CMS13*>();
4485  obsThFactory["Hobs_pp_H1_hh_bbtautau_2_CMS13"] = boost::factory<Hobs_pp_H1_hh_bbtautau_2_CMS13*>();
4486  obsThFactory["Hobs_pp_H1_hh_bblnulnu_CMS13"] = boost::factory<Hobs_pp_H1_hh_bblnulnu_CMS13*>();
4487  obsThFactory["Hobs_gg_H1_hh_gagaWW_ATLAS13"] = boost::factory<Hobs_gg_H1_hh_gagaWW_ATLAS13*>();
4488  obsThFactory["Hobs_gg_H3_hZ_bbZ_ATLAS8"] = boost::factory<Hobs_gg_H3_hZ_bbZ_ATLAS8*>();
4489  obsThFactory["Hobs_gg_H3_hZ_bbll_CMS8"] = boost::factory<Hobs_gg_H3_hZ_bbll_CMS8*>();
4490  obsThFactory["Hobs_gg_H3_hZ_tautauZ_ATLAS8"] = boost::factory<Hobs_gg_H3_hZ_tautauZ_ATLAS8*>();
4491  obsThFactory["Hobs_gg_H3_hZ_tautaull_CMS8"] = boost::factory<Hobs_gg_H3_hZ_tautaull_CMS8*>();
4492  obsThFactory["Hobs_gg_H3_hZ_bbZ_ATLAS13"] = boost::factory<Hobs_gg_H3_hZ_bbZ_ATLAS13*>();
4493  obsThFactory["Hobs_bb_H3_hZ_bbZ_ATLAS13"] = boost::factory<Hobs_bb_H3_hZ_bbZ_ATLAS13*>();
4494  obsThFactory["Hobs_gg_H3_hZ_bbZ_1_CMS13"] = boost::factory<Hobs_gg_H3_hZ_bbZ_1_CMS13*>();
4495  obsThFactory["Hobs_bb_H3_hZ_bbZ_1_CMS13"] = boost::factory<Hobs_bb_H3_hZ_bbZ_1_CMS13*>();
4496  obsThFactory["Hobs_gg_H3_hZ_bbZ_2_CMS13"] = boost::factory<Hobs_gg_H3_hZ_bbZ_2_CMS13*>();
4497  obsThFactory["Hobs_bb_H3_hZ_bbZ_2_CMS13"] = boost::factory<Hobs_bb_H3_hZ_bbZ_2_CMS13*>();
4498  obsThFactory["Hobs_pp_H3_H1Z_bbll_CMS8"] = boost::factory<Hobs_pp_H3_H1Z_bbll_CMS8*>();
4499  obsThFactory["Hobs_pp_H1_H3Z_bbll_CMS8"] = boost::factory<Hobs_pp_H1_H3Z_bbll_CMS8*>();
4500  obsThFactory["Hobs_pp_H5_H3Z_bbll_CMS8"] = boost::factory<Hobs_pp_H5_H3Z_bbll_CMS8*>();
4501  obsThFactory["Hobs_gg_H3_H1Z_bbll_ATLAS13"] = boost::factory<Hobs_gg_H3_H1Z_bbll_ATLAS13*>();
4502  obsThFactory["Hobs_bb_H3_H1Z_bbll_ATLAS13"] = boost::factory<Hobs_bb_H3_H1Z_bbll_ATLAS13*>();
4503  obsThFactory["Hobs_pp_H3pm_taunu_ATLAS8"] = boost::factory<Hobs_pp_H3pm_taunu_ATLAS8*>();
4504  obsThFactory["Hobs_pp_H3p_taunu_CMS8"] = boost::factory<Hobs_pp_H3p_taunu_CMS8*>();
4505  obsThFactory["Hobs_pp_H3pm_taunu_ATLAS13"] = boost::factory<Hobs_pp_H3pm_taunu_ATLAS13*>();
4506  obsThFactory["Hobs_pp_H3pm_taunu_CMS13"] = boost::factory<Hobs_pp_H3pm_taunu_CMS13*>();
4507  obsThFactory["Hobs_pp_H3pm_tb_ATLAS8"] = boost::factory<Hobs_pp_H3pm_tb_ATLAS8*>();
4508  obsThFactory["Hobs_pp_H3p_tb_CMS8"] = boost::factory<Hobs_pp_H3p_tb_CMS8*>();
4509  obsThFactory["Hobs_pp_H3pm_tb_ATLAS13"] = boost::factory<Hobs_pp_H3pm_tb_ATLAS13*>();
4510  obsThFactory["Hobs_WZ_H5pm_WZ_qqll_ATLAS8"] = boost::factory<Hobs_WZ_H5pm_WZ_qqll_ATLAS8*>();
4511  obsThFactory["Hobs_WZ_H5pm_WZ_lnull_ATLAS13"] = boost::factory<Hobs_WZ_H5pm_WZ_lnull_ATLAS13*>();
4512  obsThFactory["Robs_WZ_H5pm_WZ_lnull_ATLAS13"] = boost::factory<Robs_WZ_H5pm_WZ_lnull_ATLAS13*>();
4513  obsThFactory["Hobs_WZ_H5pm_WZ_lnull_1_CMS13"] = boost::factory<Hobs_WZ_H5pm_WZ_lnull_1_CMS13*>();
4514  obsThFactory["Hobs_WZ_H5pm_WZ_lnull_2_CMS13"] = boost::factory<Hobs_WZ_H5pm_WZ_lnull_2_CMS13*>();
4515  obsThFactory["Hobs_pp_H5ppmmH5mmpp_eeee_ATLAS8"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_eeee_ATLAS8*>();
4516  obsThFactory["Hobs_pp_H5ppmmH5mmpp_emuemu_ATLAS8"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_emuemu_ATLAS8*>();
4517  obsThFactory["Hobs_pp_H5ppmmH5mmpp_mumumumu_ATLAS8"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_mumumumu_ATLAS8*>();
4518  obsThFactory["Hobs_pp_H5ppmmH5mmpp_llll_ATLAS13"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_llll_ATLAS13*>();
4519  obsThFactory["Hobs_pp_H5ppmmH5mmpp_WWWW_ATLAS13"] = boost::factory<Hobs_pp_H5ppmmH5mmpp_WWWW_ATLAS13*>();
4520  obsThFactory["Hobs_VV_H5ppmm_WW_jjll_CMS8"] = boost::factory<Hobs_VV_H5ppmm_WW_jjll_CMS8*>();
4521  obsThFactory["Hobs_VV_H5ppmm_WW_jjll_CMS13"] = boost::factory<Hobs_VV_H5ppmm_WW_jjll_CMS13*>();
4522  obsThFactory["log10_tt_H1_tt_TH13"] = boost::factory<log10_tt_H1_tt_TH13*>();
4523  obsThFactory["log10_bb_H1_tt_TH13"] = boost::factory<log10_bb_H1_tt_TH13*>();
4524  obsThFactory["log10_tt_H3_tt_TH13"] = boost::factory<log10_tt_H3_tt_TH13*>();
4525  obsThFactory["log10_bb_H3_tt_TH13"] = boost::factory<log10_bb_H3_tt_TH13*>();
4526  obsThFactory["log10_bb_H1_bb_TH8"] = boost::factory<log10_bb_H1_bb_TH8*>();
4527  obsThFactory["log10_gg_H1_bb_TH8"] = boost::factory<log10_gg_H1_bb_TH8*>();
4528  obsThFactory["log10_pp_H1_bb_TH13"] = boost::factory<log10_pp_H1_bb_TH13*>();
4529  obsThFactory["log10_bb_H1_bb_TH13"] = boost::factory<log10_bb_H1_bb_TH13*>();
4530  obsThFactory["log10_bb_H3_bb_TH8"] = boost::factory<log10_bb_H3_bb_TH8*>();
4531  obsThFactory["log10_gg_H3_bb_TH8"] = boost::factory<log10_gg_H3_bb_TH8*>();
4532  obsThFactory["log10_pp_H3_bb_TH13"] = boost::factory<log10_pp_H3_bb_TH13*>();
4533  obsThFactory["log10_bb_H3_bb_TH13"] = boost::factory<log10_bb_H3_bb_TH13*>();
4534  obsThFactory["log10_gg_H1_tautau_TH8"] = boost::factory<log10_gg_H1_tautau_TH8*>();
4535  obsThFactory["log10_bb_H1_tautau_TH8"] = boost::factory<log10_bb_H1_tautau_TH8*>();
4536  obsThFactory["log10_gg_H1_tautau_TH13"] = boost::factory<log10_gg_H1_tautau_TH13*>();
4537  obsThFactory["log10_bb_H1_tautau_TH13"] = boost::factory<log10_bb_H1_tautau_TH13*>();
4538  obsThFactory["log10_gg_H3_tautau_TH8"] = boost::factory<log10_gg_H3_tautau_TH8*>();
4539  obsThFactory["log10_bb_H3_tautau_TH8"] = boost::factory<log10_bb_H3_tautau_TH8*>();
4540  obsThFactory["log10_gg_H3_tautau_TH13"] = boost::factory<log10_gg_H3_tautau_TH13*>();
4541  obsThFactory["log10_bb_H3_tautau_TH13"] = boost::factory<log10_bb_H3_tautau_TH13*>();
4542  obsThFactory["log10_gg_H1_gaga_TH8"] = boost::factory<log10_gg_H1_gaga_TH8*>();
4543  obsThFactory["log10_pp_H1_gaga_TH13"] = boost::factory<log10_pp_H1_gaga_TH13*>();
4544  obsThFactory["log10_gg_H1_gaga_TH13"] = boost::factory<log10_gg_H1_gaga_TH13*>();
4545  obsThFactory["log10_gg_H3_gaga_TH8"] = boost::factory<log10_gg_H3_gaga_TH8*>();
4546  obsThFactory["log10_pp_H3_gaga_TH13"] = boost::factory<log10_pp_H3_gaga_TH13*>();
4547  obsThFactory["log10_gg_H3_gaga_TH13"] = boost::factory<log10_gg_H3_gaga_TH13*>();
4548  obsThFactory["log10_pp_H5_gaga_TH13"] = boost::factory<log10_pp_H5_gaga_TH13*>();
4549  obsThFactory["log10_pp_H1_Zga_llga_TH8"] = boost::factory<log10_pp_H1_Zga_llga_TH8*>();
4550  obsThFactory["log10_gg_H1_Zga_TH13"] = boost::factory<log10_gg_H1_Zga_TH13*>();
4551  obsThFactory["log10_pp_H3_Zga_llga_TH8"] = boost::factory<log10_pp_H3_Zga_llga_TH8*>();
4552  obsThFactory["log10_gg_H3_Zga_TH13"] = boost::factory<log10_gg_H3_Zga_TH13*>();
4553  obsThFactory["log10_pp_H5_Zga_llga_TH8"] = boost::factory<log10_pp_H5_Zga_llga_TH8*>();
4554  obsThFactory["log10_gg_H1_ZZ_TH8"] = boost::factory<log10_gg_H1_ZZ_TH8*>();
4555  obsThFactory["log10_VV_H1_ZZ_TH8"] = boost::factory<log10_VV_H1_ZZ_TH8*>();
4556  obsThFactory["log10_gg_H1_ZZ_TH13"] = boost::factory<log10_gg_H1_ZZ_TH13*>();
4557  obsThFactory["log10_VV_H1_ZZ_TH13"] = boost::factory<log10_VV_H1_ZZ_TH13*>();
4558  obsThFactory["log10_pp_H1_ZZ_TH13"] = boost::factory<log10_pp_H1_ZZ_TH13*>();
4559  obsThFactory["log10_VV_H5_ZZ_TH8"] = boost::factory<log10_VV_H5_ZZ_TH8*>();
4560  obsThFactory["log10_VV_H5_ZZ_TH13"] = boost::factory<log10_VV_H5_ZZ_TH13*>();
4561  obsThFactory["log10_pp_H5_ZZ_TH13"] = boost::factory<log10_pp_H5_ZZ_TH13*>();
4562  obsThFactory["log10_gg_H1_WW_TH8"] = boost::factory<log10_gg_H1_WW_TH8*>();
4563  obsThFactory["log10_VV_H1_WW_TH8"] = boost::factory<log10_VV_H1_WW_TH8*>();
4564  obsThFactory["log10_gg_H1_WW_TH13"] = boost::factory<log10_gg_H1_WW_TH13*>();
4565  obsThFactory["log10_VV_H1_WW_TH13"] = boost::factory<log10_VV_H1_WW_TH13*>();
4566  obsThFactory["log10_ggVV_H1_WW_lnulnu_TH13"] = boost::factory<log10_ggVV_H1_WW_lnulnu_TH13*>();
4567  obsThFactory["log10_pp_H1_WW_TH13"] = boost::factory<log10_pp_H1_WW_TH13*>();
4568  obsThFactory["log10_VV_H5_WW_TH8"] = boost::factory<log10_VV_H5_WW_TH8*>();
4569  obsThFactory["log10_VV_H5_WW_TH13"] = boost::factory<log10_VV_H5_WW_TH13*>();
4570  obsThFactory["log10_ggVV_H5_WW_lnulnu_TH13"] = boost::factory<log10_ggVV_H5_WW_lnulnu_TH13*>();
4571  obsThFactory["log10_pp_H5_WW_TH13"] = boost::factory<log10_pp_H5_WW_TH13*>();
4572  obsThFactory["log10_pp_H1_VV_TH8"] = boost::factory<log10_pp_H1_VV_TH8*>();
4573  obsThFactory["log10_mu_pp_H1_VV_TH8"] = boost::factory<log10_mu_pp_H1_VV_TH8*>();
4574  obsThFactory["log10_pp_H1_VV_TH13"] = boost::factory<log10_pp_H1_VV_TH13*>();
4575  obsThFactory["log10_pp_H5_VV_TH8"] = boost::factory<log10_pp_H5_VV_TH8*>();
4576  obsThFactory["log10_mu_pp_H5_VV_TH8"] = boost::factory<log10_mu_pp_H5_VV_TH8*>();
4577  obsThFactory["log10_pp_H5_VV_TH13"] = boost::factory<log10_pp_H5_VV_TH13*>();
4578  obsThFactory["log10_gg_H1_hh_TH8"] = boost::factory<log10_gg_H1_hh_TH8*>();
4579  obsThFactory["log10_pp_H1_hh_TH8"] = boost::factory<log10_pp_H1_hh_TH8*>();
4580  obsThFactory["log10_pp_H1_hh_bbbb_TH8"] = boost::factory<log10_pp_H1_hh_bbbb_TH8*>();
4581  obsThFactory["log10_pp_H1_hh_gagabb_TH8"] = boost::factory<log10_pp_H1_hh_gagabb_TH8*>();
4582  obsThFactory["log10_gg_H1_hh_bbtautau_TH8"] = boost::factory<log10_gg_H1_hh_bbtautau_TH8*>();
4583  obsThFactory["log10_pp_H1_hh_TH13"] = boost::factory<log10_pp_H1_hh_TH13*>();
4584  obsThFactory["log10_gg_H1_hh_TH13"] = boost::factory<log10_gg_H1_hh_TH13*>();
4585  obsThFactory["log10_pp_H1_hh_bbbb_TH13"] = boost::factory<log10_pp_H1_hh_bbbb_TH13*>();
4586  obsThFactory["log10_gg_H1_hh_bbbb_TH13"] = boost::factory<log10_gg_H1_hh_bbbb_TH13*>();
4587  obsThFactory["log10_pp_H1_hh_gagabb_TH13"] = boost::factory<log10_pp_H1_hh_gagabb_TH13*>();
4588  obsThFactory["log10_pp_H1_hh_bbtautau_TH13"] = boost::factory<log10_pp_H1_hh_bbtautau_TH13*>();
4589  obsThFactory["log10_pp_H1_hh_bblnulnu_TH13"] = boost::factory<log10_pp_H1_hh_bblnulnu_TH13*>();
4590  obsThFactory["log10_gg_H1_hh_gagaWW_TH13"] = boost::factory<log10_gg_H1_hh_gagaWW_TH13*>();
4591  obsThFactory["log10_gg_H3_hZ_bbZ_TH8"] = boost::factory<log10_gg_H3_hZ_bbZ_TH8*>();
4592  obsThFactory["log10_gg_H3_hZ_bbll_TH8"] = boost::factory<log10_gg_H3_hZ_bbll_TH8*>();
4593  obsThFactory["log10_gg_H3_hZ_tautauZ_TH8"] = boost::factory<log10_gg_H3_hZ_tautauZ_TH8*>();
4594  obsThFactory["log10_gg_H3_hZ_tautaull_TH8"] = boost::factory<log10_gg_H3_hZ_tautaull_TH8*>();
4595  obsThFactory["log10_gg_H3_hZ_bbZ_TH13"] = boost::factory<log10_gg_H3_hZ_bbZ_TH13*>();
4596  obsThFactory["log10_bb_H3_hZ_bbZ_TH13"] = boost::factory<log10_bb_H3_hZ_bbZ_TH13*>();
4597  obsThFactory["log10_pp_H3_H1Z_bbll_TH8"] = boost::factory<log10_pp_H3_H1Z_bbll_TH8*>();
4598  obsThFactory["log10_pp_H3_H5Z_bbll_TH8"] = boost::factory<log10_pp_H3_H5Z_bbll_TH8*>();
4599  obsThFactory["log10_pp_H1_H3Z_bbll_TH8"] = boost::factory<log10_pp_H1_H3Z_bbll_TH8*>();
4600  obsThFactory["log10_pp_H5_H3Z_bbll_TH8"] = boost::factory<log10_pp_H5_H3Z_bbll_TH8*>();
4601  obsThFactory["log10_pp_H3pm_taunu_TH8"] = boost::factory<log10_pp_H3pm_taunu_TH8*>();
4602  obsThFactory["log10_pp_H3p_taunu_TH8"] = boost::factory<log10_pp_H3p_taunu_TH8*>();
4603  obsThFactory["log10_pp_H3pm_taunu_TH13"] = boost::factory<log10_pp_H3pm_taunu_TH13*>();
4604  obsThFactory["log10_pp_H3pm_tb_TH8"] = boost::factory<log10_pp_H3pm_tb_TH8*>();
4605  obsThFactory["log10_pp_H3p_tb_TH8"] = boost::factory<log10_pp_H3p_tb_TH8*>();
4606  obsThFactory["log10_pp_H3pm_tb_TH13"] = boost::factory<log10_pp_H3pm_tb_TH13*>();
4607  obsThFactory["log10_WZ_H5pm_WZ_TH8"] = boost::factory<log10_WZ_H5pm_WZ_TH8*>();
4608  obsThFactory["log10_WZ_H5pm_WZ_TH13"] = boost::factory<log10_WZ_H5pm_WZ_TH13*>();
4609  obsThFactory["log10_pp_H5ppmmH5mmpp_TH8"] = boost::factory<log10_pp_H5ppmmH5mmpp_TH8*>();
4610  obsThFactory["log10_pp_H5ppmmH5mmpp_TH13"] = boost::factory<log10_pp_H5ppmmH5mmpp_TH13*>();
4611  obsThFactory["log10_pp_H5ppmmH5mmpp_WWWW_TH13"] = boost::factory<log10_pp_H5ppmmH5mmpp_WWWW_TH13*>();
4612  obsThFactory["log10_VV_H5ppmm_WW_TH8"] = boost::factory<log10_VV_H5ppmm_WW_TH8*>();
4613  obsThFactory["log10_VV_H5ppmm_WW_TH13"] = boost::factory<log10_VV_H5ppmm_WW_TH13*>();
4614 
4615 }

◆ ThObsFactory() [2/2]

ThObsFactory::ThObsFactory ( const ThObsFactory orig)

◆ ~ThObsFactory()

virtual ThObsFactory::~ThObsFactory ( )
inlinevirtual

Definition at line 33 of file ThObsFactory.h.

34  {
35  };

Member Function Documentation

◆ addObsToFactory()

void ThObsFactory::addObsToFactory ( const std::string  name,
boost::function< ThObservable *(const StandardModel &) >  funct 
)
Examples
myModel_MCMC.cpp.

Definition at line 4617 of file ThObsFactory.cpp.

4618 {
4619  if (obsThFactory.find(name) == obsThFactory.end()) obsThFactory[name] = funct;
4620  else throw std::runtime_error("ERROR: Observable named: " + name + " already exists. Please give a different name to the user-defined observable " + name + ".");
4621 }

◆ CreateThMethod()

ThObservable * ThObsFactory::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 a pointer to the particular ThObservable.

Parameters
[in]namethe name of the observable
[in]model
Returns
a pointer to an object of the type ThObservable

Definition at line 4623 of file ThObsFactory.cpp.

4624 {
4625  if (model.isModelParam(name))
4626  return new ParamObs(model, name);
4627  if (obsThFactory.find(name) == obsThFactory.end())
4628  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");
4629  ThObservable * myThObs = obsThFactory.at(name)(model);
4630  if (!myThObs->getParametersForObservable().empty()) model.addParameters(myThObs->getParametersForObservable());
4631  return (myThObs);
4632 }

Member Data Documentation

◆ obsThFactory

std::map<std::string, boost::function<ThObservable* (const StandardModel &) > > ThObsFactory::obsThFactory
private

Definition at line 50 of file ThObsFactory.h.


The documentation for this class was generated from the following files:
QCD::TAU
Definition: QCD.h:316
QCD::BOTTOM
Definition: QCD.h:329
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
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
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
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
ThObservable::getParametersForObservable
const std::vector< std::string > getParametersForObservable()
A get method to get the parameters for the specific observable.
Definition: ThObservable.h:118
QCD::D_star_P
Definition: QCD.h:350
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
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
FULLNNLO
Definition: OrderScheme.h:38
QCD::DOWN
Definition: QCD.h:325
FULLNLO
Definition: OrderScheme.h:37
QCD::MU
Definition: QCD.h:314