-
Notifications
You must be signed in to change notification settings - Fork 0
/
FastSimCorrectionFactorsSummer12.C
548 lines (430 loc) · 79.7 KB
/
FastSimCorrectionFactorsSummer12.C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
void BTagSFUtil::GetFastSimPayload(TString BTagAlgorithm, TString FastSimDataset) {
nFastSimPtBins = 16;
float ptmin[] = {20, 30, 40, 50, 60, 70, 80, 100, 120, 160, 210, 260, 320, 400, 500, 670, 800};
for (int ptbin = 0; ptbin<=nFastSimPtBins; ptbin++)
FastSimPtBinEdge[ptbin] = ptmin[ptbin];
nFastSimEtaBins[0] = 1;
nFastSimEtaBins[1] = 1;
nFastSimEtaBins[2] = 2;
for (int JetFlavor = 0; JetFlavor<3; JetFlavor++)
FastSimEtaBinEdge[0][JetFlavor] = 0.;
FastSimEtaBinEdge[1][2] = 1.2;
if (FastSimDataset=="") {
IsFastSimDataset = false;
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
FastSimCF_error[ptbin][0][0] = 0.;
FastSimCF_error[ptbin][0][1] = 0.;
FastSimCF_error[ptbin][0][2] = 0.;
FastSimCF_error[ptbin][1][2] = 0.;
FastSimCF[ptbin][0][0] = 1.;
FastSimCF[ptbin][0][1] = 1.;
FastSimCF[ptbin][0][2] = 1.;
FastSimCF[ptbin][1][2] = 1.;
}
return;
}
IsFastSimDataset = true;
if (BTagAlgorithm=="CSVL") {
float CF_b_average[] = {0.993664503098, 0.997118413448, 1.00000858307, 0.998138427734, 0.997954726219, 1.0033249855, 0.999196231365, 0.999721825123, 0.998062431812, 0.993349373341, 0.988520681858, 0.981488585472, 0.972151458263, 0.960148274899, 0.935311257839, 0.961525201797};
float CF_b_average_err[] = {0.0109568009058, 0.00892906831917, 0.0087851305153, 0.00972810529415, 0.0115671651123, 0.0055218422074, 0.00654383727116, 0.0048027365678, 0.0053438270671, 0.00705538379872, 0.00924561697373, 0.0118125740901, 0.0161247628532, 0.0213089441994, 0.0257657699383, 0.0710000594278};
float CF_b_TTJets[] = {0.975101590157,0.981178581715,0.989946722984,0.991099715233,0.996170699596,0.996211588383,0.993701159954,0.993902027607,0.991885006428,0.985364854336,0.977017581463,0.96620541811,0.948874592781,0.92916315794,0.897523343563,0.902182877064};
float CF_b_TTJets_err[] = {0.00202169328371, 0.0018250283559, 0.00177674282343, 0.00178548008878, 0.00188046484867, 0.0020109566344, 0.00163075000898, 0.00204910861836, 0.00210403564494, 0.00333326701646, 0.00591416079982, 0.00891562150978, 0.0128028173942, 0.0188708983405, 0.0262268350655, 0.059544937178};
float CF_b_T1bbbb[] = {1.00368595123,1.0018633604,1.00450634956,0.998657822609,0.996687054634,0.999015927315,0.997397243977,0.996514558792,0.993322730064,0.987474799156,0.981762647629,0.973614752293,0.962715387344,0.952274918556,0.931677520275,0.916113317013};
float CF_b_T1bbbb_err[] = {0.00599758830662, 0.00580863629024, 0.00570741927958, 0.00553495347353, 0.00544873328532, 0.00538616701586, 0.00375289938635, 0.00373838924916, 0.00267787422771, 0.00252059344913, 0.00275277416374, 0.00285327111062, 0.00299716135594, 0.00354158333031, 0.00424114693118, 0.00855570917168};
float CF_b_T2bb[] = {0.996590554714,1.00030148029,0.991003990173,0.986005783081,0.980388820171,1.0053113699,0.993196487427,1.00071799755,1.00276863575,1.00251591206,0.999979197979,0.996347606182,0.988957881927,0.9828748703,0.960058867931,1.07998621464};
float CF_b_T2bb_err[] = {0.0422786471591, 0.0394464067214, 0.0362257186114, 0.0341481904088, 0.0338904715029, 0.0347826957428, 0.0252338128046, 0.0271971880179, 0.0216346828974, 0.0229581375533, 0.0277836191423, 0.0308495199967, 0.0339890760591, 0.0420505699205, 0.0549585832758, 0.131197677662};
float CF_b_T1tttt[] = {0.99414139986,1.00090897083,1.00742602348,1.0094114542,1.01042056084,1.00951433182,1.00844073296,1.00646388531,1.00363409519,0.997400820255,0.99410122633,0.987555444241,0.980433702469,0.97680491209,0.95886194706,0.939616382122};
float CF_b_T1tttt_err[] = {0.00381623474601, 0.00370767111477, 0.00375066409876, 0.00378272666367, 0.0038832796952, 0.00399807147092, 0.00299240766743, 0.00329047113163, 0.00271155304057, 0.00312023604, 0.00415403405471, 0.00505388311, 0.00595613288343, 0.00743085474759, 0.00873778848453, 0.0163023872722};
float CF_b_T2tt[] = {0.998803138733,1.00133979321,1.00715994835,1.00551736355,1.00610637665,1.00657165051,1.00324559212,1.00101053715,0.998701810837,0.993990421295,0.989742696285,0.983719706535,0.979775667191,0.959623396397,0.928434491158,0.96972733736};
float CF_b_T2tt_err[] = {0.00779803379866, 0.0073355208392, 0.0073594199761, 0.00739570381723, 0.00775199293247, 0.00809292273239, 0.00625986432606, 0.00724772362137, 0.00653151646729, 0.00886646143668, 0.0139393813408, 0.0197949654131, 0.0260917725894, 0.0354537451381, 0.047642132164, 0.112350970798};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][0] = CF_b_TTJets[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1bbbb") { FastSimCF[ptbin][0][0] = CF_b_T1bbbb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1bbbb_err[ptbin]; }
else if (FastSimDataset=="T2bb") { FastSimCF[ptbin][0][0] = CF_b_T2bb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2bb_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][0] = CF_b_T1tttt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][0] = CF_b_T2tt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][0] = CF_b_average[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_average_err[ptbin]; }
}
float CF_c_average[] = {0.984478831291, 0.987717688084, 1.00405836105, 0.998263418674, 1.00784921646, 1.0102981329, 1.01865899563, 1.01091706753, 1.01194953918, 1.000857234, 1.00599002838, 0.990680754185, 0.982108235359, 0.96217083931, 0.977991938591, 1.03476846218};
float CF_c_average_err[] = {0.00100927514392, 0.00617611760766, 0.0130610319109, 0.00797113489247, 0.0120932482521, 0.0140709531737, 0.00682625764897, 0.00632568642574, 0.00959128912161, 0.0085168268945, 0.0186160023091, 0.0253776907935, 0.0101710517903, 0.0225251829717, 0.0209085208682, 0.229993369164};
float CF_c_TTJets[] = {0.983399569988,0.980668306351,1.00543832779,1.00726318359,1.01580262184,1.01780092716,1.01720714569,1.01413500309,1.01270031929,0.993182480335,0.986384868622,1.01974534988,0.986763298512,0.979930520058,0.980140089989,0.826701998711};
float CF_c_TTJets_err[] = {0.00310018314203, 0.00313814513284, 0.00355669403089, 0.00381542414853, 0.00432007665909, 0.00478182682807, 0.00404570732988, 0.00525248199875, 0.00536885095845, 0.00824519971253, 0.0146966651813, 0.0225367237648, 0.0273289074162, 0.0418543598877, 0.066181525727, 0.134674902122};
float CF_c_T1tttt[] = {0.98539930582,0.992177307606,1.01637458801,0.995434403419,1.01381254196,1.01902770996,1.02609443665,1.01498675346,1.02114343643,1.01002001762,1.00815808773,0.979383289814,0.989118695259,0.969747841358,0.997743487358,0.995874404907};
float CF_c_T1tttt_err[] = {0.00599282522832, 0.00626318731633, 0.00711562191066, 0.00739003655665, 0.00813784825231, 0.00871450222594, 0.00691798796272, 0.00798625248587, 0.00694262546296, 0.00830141094793, 0.0116512130786, 0.0142011027292, 0.0154407035399, 0.0185608046729, 0.0244189760115, 0.0491134559308};
float CF_c_T2tt[] = {0.98463755846,0.990307450294,0.990362107754,0.992092609406,0.99393248558,0.994065880775,1.01267552376,1.00362932682,1.00200498104,0.999369204044,1.02342700958,0.972913622856,0.970442712307,0.936834096909,0.956092298031,1.28172898293};
float CF_c_T2tt_err[] = {0.0118417563762, 0.0124076954771, 0.0138378658424, 0.0147386388313, 0.0162879234513, 0.0176911220975, 0.0144309321188, 0.0174216449532, 0.0162140650717, 0.0221622005463, 0.03572348804, 0.0463945095278, 0.0538243848992, 0.074032034885, 0.108844031764, 0.307560155112};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][1] = CF_c_TTJets[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][1] = CF_c_T1tttt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][1] = CF_c_T2tt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][1] = CF_c_average[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_average_err[ptbin]; }
}
float CF_Cen_l_average[] = {0.671931028366, 0.788472294807, 0.965046703815, 1.05972146988, 1.13163208961, 1.13900196552, 1.12332582474, 1.13785779476, 1.16931283474, 1.13694798946, 1.1905798912, 1.21016633511, 1.25385832787, 1.31020259857, 1.5478143692, 1.58263671398};
float CF_Cen_l_average_err[] = {0.293519939614, 0.213324542145, 0.181800000289, 0.0950938090648, 0.0847383043262, 0.0910949511445, 0.111109152659, 0.118146468813, 0.127213063032, 0.124779153939, 0.113078557908, 0.143404246919, 0.17744898108, 0.206663361067, 0.385719879854, 0.56688559583};
float CF_Cen_l_TTJets[] = {1.01052129269,1.03056573868,1.15592753887,1.16008722782,1.22937810421,1.24413394928,1.25162339211,1.27296316624,1.31423175335,1.2748837471,1.32102406025,1.37542283535,1.45610916615,1.54883658886,1.97948908806,2.21748447418};
float CF_Cen_l_TTJets_err[] = {0.00210468285854, 0.00267423923546, 0.00439120814748, 0.00511998593042, 0.00676500222377, 0.00784296652648, 0.00698022570246, 0.00961895243983, 0.00999346433571, 0.0131029042023, 0.0231412615832, 0.0339156746694, 0.0465842884982, 0.0722900970297, 0.133224738073, 0.336013032652};
float CF_Cen_l_T1tttt[] = {0.489542782307,0.628050088882,0.793945074081,0.97096568346,1.0789039135,1.08347868919,1.0593688488,1.08669114113,1.11763930321,1.10403728485,1.1203571558,1.13662135601,1.12428855896,1.19119310379,1.23699009418,1.40336298943};
float CF_Cen_l_T1tttt_err[] = {0.00189563251041, 0.0029446171582, 0.005288685592, 0.00728552015405, 0.00964442040651, 0.0105517626887, 0.00862778816323, 0.0107177236376, 0.00950107593549, 0.0107010107686, 0.0154655369035, 0.0197356351455, 0.0227029196837, 0.0298178739097, 0.0371374858087, 0.0771882338605};
float CF_Cen_l_T2tt[] = {0.515729010105,0.706800997257,0.945267438889,1.04811155796,1.08661413193,1.0893933773,1.0589851141,1.05391919613,1.07606756687,1.03192281723,1.13035857677,1.11845493317,1.18117713928,1.19057798386,1.42696380615,1.12706255913};
float CF_Cen_l_T2tt_err[] = {0.00389100695903, 0.00657692291121, 0.0127783631392, 0.0162150095598, 0.0203338843244, 0.0228734655846, 0.019153930922, 0.0244451170951, 0.0227063931938, 0.0270686968991, 0.0430212182094, 0.0554716072535, 0.0692940428153, 0.0958916911155, 0.136722397901, 0.22885199243};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][2] = CF_Cen_l_TTJets[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T1tttt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T2tt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][2] = CF_Cen_l_average[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_average_err[ptbin]; }
}
float CF_For_l_average[] = {0.953250348568, 1.03656172752, 1.12568819523, 1.13641119003, 1.15979087353, 1.1981549263, 1.22276306152, 1.27178037167, 1.31978642941, 1.34248173237, 1.42129004002, 1.49918079376, 1.6518008709, 1.75768911839, 2.13973045349, 2.4918756485};
float CF_For_l_average_err[] = {0.0810352190615, 0.0108613404341, 0.0367269473303, 0.0405540015577, 0.0930149619733, 0.0804350988011, 0.0973195514871, 0.10021503023, 0.115361770021, 0.0937639867599, 0.167282870832, 0.192629144176, 0.128604390327, 0.561947314569, 0.294883413706, 1.34718663512};
float CF_For_l_TTJets[] = {1.01212632656,1.04763901234,1.16805481911,1.18302965164,1.26027369499,1.28878295422,1.33331489563,1.38749361038,1.45298230648,1.44918632507,1.61215865612,1.70915186405,1.79266524315,2.35367584229,2.47876858711,3.88701915741};
float CF_For_l_TTJets_err[] = {0.00208084554279, 0.00277864620225, 0.00444690915138, 0.00542571772696, 0.00738500119223, 0.00887110700227, 0.0082648357262, 0.0119847121672, 0.0128998141051, 0.018476978432, 0.0339134236696, 0.0512831483132, 0.0735430411226, 0.164555225778, 0.298562249611, 1.4424356326};
float CF_For_l_T1tttt[] = {0.986795902252,1.0361161232,1.10287070274,1.10927259922,1.14240026474,1.17043972015,1.18494582176,1.21298551559,1.25161314011,1.27324616909,1.35155498981,1.45775687695,1.54066228867,1.68192219734,1.942897439,2.39020037651};
float CF_For_l_T1tttt_err[] = {0.00419420461168, 0.00570174145946, 0.00875508899616, 0.0105518581812, 0.0138023541823, 0.0163085193339, 0.0143766188916, 0.0196241391374, 0.0188005929844, 0.0246756073624, 0.037958307237, 0.0527626982584, 0.0686407210171, 0.105869854054, 0.171379291192, 0.513979857534};
float CF_For_l_T2tt[] = {0.860828876495,1.02593004704,1.10613906384,1.11693120003,1.07669854164,1.13524198532,1.15002834797,1.21486186981,1.25476384163,1.30501258373,1.30015659332,1.33063352108,1.62207508087,1.23746919632,1.99752509594,1.19840729237};
float CF_For_l_T2tt_err[] = {0.00668208120168, 0.0104878243877, 0.016327059882, 0.0198179612233, 0.0250091163413, 0.030066851305, 0.0266688789101, 0.0369925464029, 0.0355553476485, 0.0464141946698, 0.0681050374119, 0.0900031838251, 0.127143616613, 0.165898746184, 0.357058382264, 0.618870577881};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][1][2] = CF_For_l_TTJets[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][1][2] = CF_For_l_T1tttt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][1][2] = CF_For_l_T2tt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][1][2] = CF_For_l_average[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_average_err[ptbin]; }
}
} else if (BTagAlgorithm=="CSVM") {
float CF_b_average[] = {0.962733864784, 0.970573425293, 0.98256868124, 0.989266812801, 0.987689971924, 0.998923659325, 0.991679012775, 0.9940969944, 0.989295661449, 0.981353878975, 0.967669308186, 0.95040678978, 0.928928077221, 0.906944334507, 0.876945734024, 0.917767047882};
float CF_b_average_err[] = {0.0260181701607, 0.0154812762734, 0.0153789442342, 0.0154847986653, 0.0135714074905, 0.0227187471548, 0.0129734739108, 0.0136435077109, 0.0148713548589, 0.01840957401, 0.0199149180981, 0.0228957179877, 0.0314412307726, 0.033912027676, 0.057451031885, 0.123532166482};
float CF_b_TTJets[] = {0.917048811913,0.945105552673,0.961767435074,0.970928668976,0.977559089661,0.979321777821,0.977650046349,0.97881758213,0.972718179226,0.960082292557,0.94061088562,0.916902303696,0.878207206726,0.85499560833,0.782968819141,0.76883071661};
float CF_b_TTJets_err[] = {0.00219007726826, 0.00193348860441, 0.00186376823821, 0.00186265303685, 0.00194634932853, 0.0020750208219, 0.00167527368674, 0.00209832473568, 0.00214480170656, 0.00339411001995, 0.00599507745383, 0.00900533644621, 0.0127765389644, 0.0190961971134, 0.0256773239017, 0.0581320635509};
float CF_b_T1bbbb[] = {0.969285905361,0.970780014992,0.970472216606,0.973847866058,0.971758306026,0.977668702602,0.977381825447,0.980302095413,0.975075662136,0.966141581535,0.954916954041,0.939782559872,0.918828427792,0.898929476738,0.86602807045,0.847848892212};
float CF_b_T1bbbb_err[] = {0.00666197239237, 0.00619477750533, 0.00597136645787, 0.00576007224886, 0.00562219753527, 0.00554718985669, 0.00385085682059, 0.00383430365884, 0.00274333949612, 0.00258851254598, 0.00282730743392, 0.00293112529152, 0.0030769505833, 0.0036418475578, 0.00436862817251, 0.0089031707601};
float CF_b_T2bb[] = {0.982450127602,0.971345663071,0.994209170341,1.00222325325,0.98626178503,1.03364229202,0.999548017979,1.00884366035,1.00736927986,1.00581645966,0.991324841976,0.976281762123,0.953757107258,0.938044965267,0.925420701504,1.05708789825};
float CF_b_T2bb_err[] = {0.0478180068622, 0.0422748011127, 0.0390708926946, 0.0367344617353, 0.0359007240044, 0.0372428871819, 0.0264966341374, 0.0284979352633, 0.02262682243, 0.0241134625131, 0.0290645831381, 0.0321922858666, 0.0353550106006, 0.043898478604, 0.05872096244, 0.143421336758};
float CF_b_T1tttt[] = {0.971946597099,0.980630517006,0.994870126247,1.00033152103,1.00186526775,1.00052022934,1.00125515461,1.0006622076,0.995607674122,0.986629426479,0.976629137993,0.963091492653,0.949700832367,0.936432540417,0.917609810829,0.882045149803};
float CF_b_T1tttt_err[] = {0.00429169611036, 0.00400005442019, 0.00399798219677, 0.0039919373728, 0.00406233789484, 0.00416350016081, 0.00310526283996, 0.00340615642697, 0.00280285755781, 0.00323253672121, 0.00429948525091, 0.00523363860081, 0.0061920060108, 0.00775709555149, 0.00924557075196, 0.0173073334614};
float CF_b_T2tt[] = {0.972937881947,0.985005438328,0.991524398327,0.999002695084,1.00100541115,1.00346529484,1.0025601387,1.0018594265,0.995707392693,0.988099694252,0.974864602089,0.95597589016,0.944146692753,0.906319141388,0.892701327801,1.03302264214};
float CF_b_T2tt_err[] = {0.00872014285544, 0.00791264592209, 0.00780819926056, 0.00780331006353, 0.00811615481048, 0.00844836562669, 0.00651449919088, 0.00752341894337, 0.00676093176885, 0.00919979747951, 0.0144431864338, 0.0204720931017, 0.0271181851826, 0.0368588127984, 0.0510547722597, 0.130856947854};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][0] = CF_b_TTJets[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1bbbb") { FastSimCF[ptbin][0][0] = CF_b_T1bbbb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1bbbb_err[ptbin]; }
else if (FastSimDataset=="T2bb") { FastSimCF[ptbin][0][0] = CF_b_T2bb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2bb_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][0] = CF_b_T1tttt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][0] = CF_b_T2tt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][0] = CF_b_average[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_average_err[ptbin]; }
}
float CF_c_average[] = {0.938704848289, 0.954210639, 0.961997866631, 0.958955943584, 0.977162599564, 0.973846018314, 0.991183340549, 0.967045485973, 0.962050676346, 0.9363104105, 0.921064794064, 0.908532738686, 0.87743806839, 0.843527078629, 0.855088531971, 0.844529688358};
float CF_c_average_err[] = {0.0178243611071, 0.0099687242946, 0.00431298538482, 0.00708289900002, 0.00751513533748, 0.01417955544, 0.0221240581063, 0.0196358629174, 0.0223272080895, 0.0292267866889, 0.049254188277, 0.0442623633286, 0.0574511872067, 0.0575143699322, 0.10258407115, 0.163447093603};
float CF_c_TTJets[] = {0.92009216547,0.942765474319,0.962592661381,0.965002477169,0.97261184454,0.961386322975,0.966515481472,0.949461638927,0.940222978592,0.91126537323,0.864236354828,0.873464822769,0.815643012524,0.778016626835,0.836780011654,0.656498670578};
float CF_c_TTJets_err[] = {0.00472742855057, 0.00451087015722, 0.00482598863879, 0.00500503564046, 0.00547668176165, 0.00590459900948, 0.00491528702378, 0.00617414794173, 0.00625788361433, 0.009733920905, 0.0168433302967, 0.0261492105414, 0.0318554402961, 0.0482031253343, 0.0831218523195, 0.168780793439};
float CF_c_T1tttt[] = {0.940403044224,0.958869636059,0.957418382168,0.960702061653,0.973039090633,0.989275157452,0.997764408588,0.988233923912,0.984845936298,0.968422830105,0.95144701004,0.89386677742,0.887439012527,0.866838216782,0.965594112873,0.952623546124};
float CF_c_T1tttt_err[] = {0.00927236249207, 0.00898734915427, 0.0095351484895, 0.00975178934952, 0.0103366470678, 0.0110280330407, 0.00859508576594, 0.00978021707045, 0.00848463283344, 0.0103483808203, 0.0145576415416, 0.017819749187, 0.019801478789, 0.0244350394804, 0.0342702740859, 0.0693146905281};
float CF_c_T2tt[] = {0.955619335175,0.960996866226,0.965982615948,0.951163291931,0.985836803913,0.970876634121,1.00927019119,0.963440954685,0.961083114147,0.929242968559,0.947510957718,0.958266675472,0.929232180119,0.885726332664,0.762891471386,0.924466907978};
float CF_c_T2tt_err[] = {0.0185315374542, 0.0178762251925, 0.0189637735594, 0.0193824845044, 0.0210748581399, 0.0224077890778, 0.0181070417659, 0.0209977043369, 0.0195645694477, 0.0268430916229, 0.0436916629589, 0.0606088603235, 0.0717737799096, 0.10104018426, 0.138275399147, 0.366276351996};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][1] = CF_c_TTJets[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][1] = CF_c_T1tttt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][1] = CF_c_T2tt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][1] = CF_c_average[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_average_err[ptbin]; }
}
float CF_Cen_l_average[] = {0.682043075562, 0.821280837059, 0.967660665512, 1.05402135849, 1.12585055828, 1.13137996197, 1.09406352043, 1.14267456532, 1.16305410862, 1.14481532574, 1.19965064526, 1.22156500816, 1.19697093964, 1.29652225971, 1.6358757019, 1.73088300228};
float CF_Cen_l_average_err[] = {0.313594245172, 0.243365835432, 0.193255801213, 0.083380682087, 0.0845506053194, 0.0778296065823, 0.115759651647, 0.117455453234, 0.137607281912, 0.169691254585, 0.263406722305, 0.140874601242, 0.172364106509, 0.22326610247, 0.475978342234, 1.10186611303};
float CF_Cen_l_TTJets[] = {1.0430315733,1.09445929527,1.15088832378,1.13445317745,1.19783937931,1.21306014061,1.22771728039,1.27724039555,1.3217445612,1.31578445435,1.49509775639,1.28289449215,1.37706673145,1.54039299488,2.12965893745,2.90576124191};
float CF_Cen_l_TTJets_err[] = {0.00717576528131, 0.00868654763281, 0.0117385617322, 0.0128593587847, 0.0158470362725, 0.0182086832321, 0.0158184101542, 0.0215251567423, 0.022903964774, 0.0341564630547, 0.0658343198271, 0.0725288329401, 0.103144465464, 0.165591787541, 0.318620705859, 0.994009548818};
float CF_Cen_l_T1tttt[] = {0.476915210485,0.627620756626,0.765735805035,0.96797555685,1.03274214268,1.05807900429,1.02891278267,1.09004843235,1.09069311619,1.14222991467,1.11450767517,1.06042158604,1.18029534817,1.24699580669,1.17996501923,1.56635606289};
float CF_Cen_l_T1tttt_err[] = {0.00601842528391, 0.00894227666821, 0.014060120753, 0.0189529311487, 0.0227560331409, 0.0248137577472, 0.0193846026433, 0.0235292769389, 0.020691446677, 0.0259397561099, 0.0356028546381, 0.0430369597333, 0.0520734299679, 0.0663560140759, 0.0754359791055, 0.159852407296};
float CF_Cen_l_T2tt[] = {0.526182353497,0.741762518883,0.986357867718,1.05963551998,1.14697027206,1.1230006218,1.02556061745,1.06073498726,1.07672476768,0.976431488991,0.989346385002,1.3213788271,1.03355062008,1.10217797756,1.59800314903,0.720531642437};
float CF_Cen_l_T2tt_err[] = {0.0131037158315, 0.0211026461485, 0.0359021464995, 0.04289379499, 0.0506159193193, 0.0555715927637, 0.043199554658, 0.0538430703769, 0.0505237256917, 0.064386405766, 0.0958013301981, 0.141193848227, 0.150037158815, 0.205916183656, 0.299902306669, 0.362316199806};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][2] = CF_Cen_l_TTJets[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T1tttt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T2tt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][2] = CF_Cen_l_average[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_average_err[ptbin]; }
}
float CF_For_l_average[] = {0.998093605042, 1.08850896358, 1.20118439198, 1.17004549503, 1.19409108162, 1.16723918915, 1.30341672897, 1.34792208672, 1.36953449249, 1.39564085007, 1.55918598175, 1.67829239368, 1.76160264015, 1.99361467361, 2.87041759491, 4.02351331711};
float CF_For_l_average_err[] = {0.086743769991, 0.0289869607314, 0.07555277158, 0.0735421875418, 0.0754685076621, 0.166280741806, 0.0313040218325, 0.1082575366, 0.142611842899, 0.195393123002, 0.272610317951, 0.235091859049, 0.153531150317, 0.620904746043, 2.57960480237, 1.08894797132};
float CF_For_l_TTJets[] = {1.06608068943,1.11912274361,1.22889649868,1.25371026993,1.28067171574,1.35845041275,1.33908081055,1.42227756977,1.52271187305,1.62124478817,1.8552955389,1.88908398151,1.8612177372,2.66653370857,5.67641115189,4.44230794907};
float CF_For_l_TTJets_err[] = {0.00831265872885, 0.0105731979918, 0.0162355250924, 0.0189504823169, 0.0228853005342, 0.0277471630414, 0.0239440316622, 0.0335349051152, 0.0360963263996, 0.0546310711243, 0.0962092189258, 0.136616532809, 0.178006293123, 0.41642116421, 1.72683722744, 4.98476961};
float CF_For_l_T1tttt[] = {1.02780091763,1.08492147923,1.11568856239,1.14080679417,1.15936470032,1.0565340519,1.29068338871,1.22372055054,1.24059450626,1.28521239758,1.50362825394,1.4247636795,1.58479332924,1.87141609192,2.33296179771,2.78734135628};
float CF_For_l_T1tttt_err[] = {0.0164504592579, 0.0213219923557, 0.0311624416835, 0.0364036826352, 0.0437460589299, 0.0472307891308, 0.044232874698, 0.0537433240843, 0.0496840081323, 0.0652608059209, 0.101521041279, 0.127227077423, 0.163371266185, 0.262971279406, 0.431013283667, 1.2852444661};
float CF_For_l_T2tt[] = {0.900399208069,1.06148278713,1.25896799564,1.1156193018,1.1422368288,1.08673322201,1.28048598766,1.39776813984,1.34529721737,1.28046548367,1.3186340332,1.72102952003,1.83879673481,1.44289433956,0.601879894733,4.84089040756};
float CF_For_l_T2tt_err[] = {0.0267376921424, 0.039605972357, 0.0628309873614, 0.0684559372095, 0.0830851922793, 0.0912517999415, 0.0839174713684, 0.110856347891, 0.099813690942, 0.121537781946, 0.1747281885, 0.253960314261, 0.323901360579, 0.420271010133, 0.427185123613, 2.87333430036};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][1][2] = CF_For_l_TTJets[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][1][2] = CF_For_l_T1tttt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][1][2] = CF_For_l_T2tt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][1][2] = CF_For_l_average[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_average_err[ptbin]; }
}
} else if (BTagAlgorithm=="CSVT") {
float CF_b_average[] = {0.936840057373, 0.952620089054, 0.968739628792, 0.974311828613, 0.980518639088, 0.986418545246, 0.979530334473, 0.981531262398, 0.968429803848, 0.939604640007, 0.9103256464, 0.885315954685, 0.85045337677, 0.818630278111, 0.799304485321, 0.789131402969};
float CF_b_average_err[] = {0.0307012072078, 0.0219524063727, 0.019962076791, 0.0191585675277, 0.0222853671418, 0.0234870569719, 0.0198548096212, 0.0237358057156, 0.0239341956973, 0.0288126120834, 0.0348964224061, 0.0445016453936, 0.0604388776987, 0.0697590265961, 0.0827277879417, 0.160244287182};
float CF_b_TTJets[] = {0.882070183754,0.919368386269,0.94121915102,0.950175285339,0.960228562355,0.961978137493,0.955336213112,0.952063083649,0.93897330761,0.896735489368,0.853827834129,0.814034879208,0.748476624489,0.701237082481,0.671202480793,0.549772799015};
float CF_b_TTJets_err[] = {0.00240915196321, 0.00206641517318, 0.00197666123504, 0.00196103631123, 0.0020633578376, 0.00219300160139, 0.0017747617015, 0.00223195400006, 0.00227815102532, 0.00368555298282, 0.00645993711949, 0.00979318528035, 0.0138845211239, 0.0209773786512, 0.0304130458411, 0.0637962762146};
float CF_b_T1bbbb[] = {0.947215199471,0.944093823433,0.95378857851,0.957061290741,0.952929079533,0.960493266582,0.960778713226,0.959790229797,0.946062326431,0.924133181572,0.902598440647,0.877041578293,0.842226803303,0.808369219303,0.776805222034,0.760505080223};
float CF_b_T1bbbb_err[] = {0.00742322793968, 0.00663239864395, 0.00636455248079, 0.00609706735725, 0.00596986061596, 0.00587819647186, 0.00411288280212, 0.00411637386816, 0.00295189960801, 0.00288285340211, 0.00314892491699, 0.00327356721319, 0.00344848326667, 0.00410752709595, 0.00503143438308, 0.0104617449918};
float CF_b_T2bb[] = {0.950487554073,0.956744968891,0.980811238289,0.985294520855,1.00108909607,1.00873363018,0.992774307728,1.00344944,0.989395916462,0.965690970421,0.932360708714,0.9257619977,0.891313135624,0.851319551468,0.813214719296,0.839609146118};
float CF_b_T2bb_err[] = {0.0530895163133, 0.045778133706, 0.0418756239175, 0.0390162881345, 0.0391664937753, 0.0394077194775, 0.0286434714328, 0.0311140631565, 0.0247366600193, 0.0272515496328, 0.0326897121696, 0.0368179640946, 0.0407717052725, 0.0508595977032, 0.0688334081128, 0.162184630469};
float CF_b_T1tttt[] = {0.953614592552,0.968028485775,0.985555589199,0.991129219532,0.991203546524,0.995661854744,0.990962862968,0.99742525816,0.985822200775,0.960361599922,0.942461252213,0.918499171734,0.891071259975,0.866843342781,0.846161961555,0.801973044872};
float CF_b_T1tttt_err[] = {0.00481355247998, 0.0043370569256, 0.00428979681009, 0.00425467775395, 0.00434631887807, 0.00446117666708, 0.00334298137629, 0.00371866360995, 0.00307216433102, 0.0036686847979, 0.00490439962526, 0.00602144414349, 0.00722230241962, 0.0092508455525, 0.0113878051222, 0.0218569123438};
float CF_b_T2tt[] = {0.950812697411,0.974864780903,0.98232370615,0.987898766994,0.997142970562,1.00522577763,0.997799694538,0.994928359985,0.981895327568,0.951101958752,0.92037987709,0.891242206097,0.879179060459,0.865382254124,0.889138162136,0.993797004223};
float CF_b_T2tt_err[] = {0.00972674226051, 0.00857026348044, 0.00836161087484, 0.00829180782865, 0.0087077192256, 0.00907154494305, 0.00701523247693, 0.00815298599565, 0.00734476738117, 0.0102906904639, 0.0161803786881, 0.023270531239, 0.0318397864768, 0.0457746337666, 0.0678089114582, 0.17479770751};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][0] = CF_b_TTJets[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1bbbb") { FastSimCF[ptbin][0][0] = CF_b_T1bbbb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1bbbb_err[ptbin]; }
else if (FastSimDataset=="T2bb") { FastSimCF[ptbin][0][0] = CF_b_T2bb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2bb_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][0] = CF_b_T1tttt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][0] = CF_b_T2tt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][0] = CF_b_average[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_average_err[ptbin]; }
}
float CF_c_average[] = {0.918960034847, 0.928532719612, 0.925415635109, 0.922652065754, 0.957206189632, 0.942970454693, 0.946026265621, 0.920032858849, 0.909424006939, 0.877083063126, 0.832576155663, 0.78955322504, 0.773613572121, 0.72510612011, 0.709956347942, 0.899365603924};
float CF_c_average_err[] = {0.0230319282279, 0.0219096221754, 0.0192998472963, 0.0028975114926, 0.0190308781249, 0.0300294652416, 0.0219748474517, 0.0404452638148, 0.0542013692274, 0.0793264101851, 0.061363685562, 0.101999203296, 0.165592647826, 0.126149574035, 0.207893471465, 0.853401152984};
float CF_c_TTJets[] = {0.89502286911,0.90323382616,0.918463528156,0.919993937016,0.936118900776,0.919784069061,0.92201590538,0.88316321373,0.849340438843,0.786284923553,0.761776447296,0.671778559685,0.629904687405,0.593088805676,0.71126306057,0.0};
float CF_c_TTJets_err[] = {0.00755816060226, 0.00690631005245, 0.00753300437593, 0.0078331419606, 0.00896098612846, 0.00956644766198, 0.00824235919676, 0.0105849091439, 0.0107689770411, 0.0192230770026, 0.0355998725879, 0.0519400284705, 0.0686842743846, 0.101615060564, 0.188706538522, 0.0};
float CF_c_T1tttt[] = {0.920892179012,0.941259860992,0.947228431702,0.922221541405,0.962395489216,0.97689217329,0.95092356205,0.963292896748,0.924291491508,0.932943999767,0.870436668396,0.847615897655,0.736235499382,0.844427883625,0.917193353176,1.00026535988};
float CF_c_T1tttt_err[] = {0.0149653303183, 0.0140273317523, 0.015198394842, 0.0152928146102, 0.0171312912777, 0.018186065269, 0.0144228096076, 0.0173746039607, 0.0152683195446, 0.0220834116686, 0.0313445875654, 0.0408685224465, 0.0452011716872, 0.0623829053342, 0.0848205186602, 0.171470409554};
float CF_c_T2tt[] = {0.940964996815,0.941104471684,0.910555005074,0.925740778446,0.973104178905,0.932235181332,0.965139269829,0.913642466068,0.95464015007,0.912020325661,0.865515291691,0.849265277386,0.954700529575,0.737801611423,0.501412570477,1.6978315115};
float CF_c_T2tt_err[] = {0.0299156930258, 0.027846280689, 0.0295766522721, 0.0307154635033, 0.0348910619372, 0.0364989332197, 0.0303719408055, 0.0365376038944, 0.0360058085969, 0.0575881490552, 0.0941650575956, 0.135821266891, 0.188945590897, 0.247365577684, 0.290622416228, 1.217584604};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][1] = CF_c_TTJets[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][1] = CF_c_T1tttt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][1] = CF_c_T2tt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][1] = CF_c_average[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_average_err[ptbin]; }
}
float CF_Cen_l_average[] = {0.660349726677, 0.761152267456, 0.926041305065, 0.954725384712, 1.07311344147, 1.0888736248, 1.0192309618, 1.10730242729, 1.01463794708, 0.977757275105, 0.984064042568, 1.22626042366, 0.830058395863, 1.09856939316, 0.848272919655, 0.988615274429};
float CF_Cen_l_average_err[] = {0.302443693549, 0.230226768747, 0.164786509428, 0.0522916438641, 0.114857314794, 0.0789599833327, 0.0776306079687, 0.0733231129332, 0.0707952328653, 0.0751183617268, 0.0606029110649, 0.448466393243, 0.0173998639278, 0.22891345518, 0.791796097132, 1.14928125116};
float CF_Cen_l_TTJets[] = {1.00899863243,1.02543127537,1.04847431183,0.984258115292,1.06678712368,1.06208252907,1.10850679874,1.19132435322,1.09381830692,1.05649673939,0.923301756382,1.25547194481,0.846162378788,1.35917043686,1.56781733036,2.24962186813};
float CF_Cen_l_TTJets_err[] = {0.0152335614669, 0.0180926291969, 0.0239594014315, 0.0257993797846, 0.0340489912763, 0.0399964288388, 0.0384312997897, 0.058757448849, 0.0576409615695, 0.102301876616, 0.139926898416, 0.232113241117, 0.199701324952, 0.443702407865, 0.564903669824, 2.75652484517};
float CF_Cen_l_T1tttt[] = {0.468557327986,0.604076325893,0.738681197166,0.985569059849,0.961549937725,1.02679502964,0.981584906578,1.05626285076,0.957446157932,0.906878173351,1.04450631142,0.763902306557,0.811601996422,0.929971456528,0.977001368999,0.716224014759};
float CF_Cen_l_T1tttt_err[] = {0.0130821762378, 0.0193988261866, 0.0305021870869, 0.042791847146, 0.0520242909676, 0.0582630278957, 0.0478876984912, 0.0619675458214, 0.0540751341857, 0.0777174337733, 0.113508213199, 0.115817954053, 0.134223993532, 0.170926298943, 0.192912979874, 0.293754270974};
float CF_Cen_l_T2tt[] = {0.503493130207,0.653949260712,0.990968465805,0.894348919392,1.19100308418,1.17774343491,0.967601299286,1.0743200779,0.992649316788,0.96989685297,0.984384000301,1.65940690041,0.832410752773,1.00656628609,0.0,0.0};
float CF_Cen_l_T2tt_err[] = {0.02810274531, 0.0441187694109, 0.0806233292926, 0.0887750520598, 0.12257810908, 0.136410845883, 0.105828830681, 0.145219735826, 0.135363813401, 0.211985720737, 0.311739436968, 0.501460503766, 0.416617417507, 0.581777867435, 0.0, 0.0};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][2] = CF_Cen_l_TTJets[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T1tttt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T2tt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][2] = CF_Cen_l_average[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_average_err[ptbin]; }
}
float CF_For_l_average[] = {0.965583086014, 1.01605319977, 1.10916495323, 1.19722640514, 1.18395996094, 1.38997244835, 1.22473847866, 1.63194668293, 1.10408782959, 1.59673964977, 1.87147688866, 3.81639528275, 2.08224916458, 2.86314749718, 0.0, 0.0};
float CF_For_l_average_err[] = {0.0320027358689, 0.0892368582324, 0.0693887370194, 0.0505490167473, 0.133253407511, 0.298653549336, 0.0647114569435, 0.213484601309, 0.153673956813, 0.256463945675, 0.684548188996, 1.07547393124, 0.505202968404, 3.17013732099, 0.0, 0.0};
float CF_For_l_TTJets[] = {1.00230109692,1.07760620117,1.17375659943,1.1392480135,1.23113441467,1.34829974174,1.24948692322,1.3965665102,1.22652626038,1.32295191288,2.47526836395,3.8570227623,1.68234741688,6.26995801926,0.0,0.0};
float CF_For_l_TTJets_err[] = {0.0180837308442, 0.0235091607587, 0.0374574444482, 0.0434437756599, 0.0586258967592, 0.0756646973124, 0.0667346212177, 0.126244036104, 0.104397560448, 0.258394617512, 0.97955556682, 2.17074828293, 0.95931139144, 6.77345929241, 0.0, 0.0};
float CF_For_l_T1tttt[] = {0.950831830502,1.05684244633,1.03581142426,1.22037756443,1.03353667259,1.1143437624,1.15130519867,1.81306231022,1.15409958363,1.83137786388,2.01137638092,2.72118330002,2.65001654625,2.31948423386,0.0,0.0};
float CF_For_l_T1tttt_err[] = {0.0360622926546, 0.0482433498212, 0.0722056992498, 0.0925925407182, 0.11105810439, 0.131569619268, 0.122474790793, 0.231682681588, 0.175592705094, 0.496278087628, 0.771664889911, 1.13303312727, 1.20929415041, 1.66873049345, 0.0, 0.0};
float CF_For_l_T2tt[] = {0.943616330624,0.913711130619,1.11792695522,1.2320536375,1.28720891476,1.70727372169,1.27342331409,1.68621134758,0.931637763977,1.63588929176,1.12778580189,4.87097978592,1.91438353062,0.0,0.0,0.0};
float CF_For_l_T2tt_err[] = {0.062992505201, 0.0854533207431, 0.145957043224, 0.180273165587, 0.243978437743, 0.318269792989, 0.255374285139, 0.436763827646, 0.31106422535, 0.946695086494, 1.12949783854, 2.82992610801, 1.91911254194, 0.0, 0.0, 0.0};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][1][2] = CF_For_l_TTJets[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][1][2] = CF_For_l_T1tttt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][1][2] = CF_For_l_T2tt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][1][2] = CF_For_l_average[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_average_err[ptbin]; }
}
} else if (BTagAlgorithm=="JPL") {
float CF_b_average[] = {0.965646147728, 0.988426148891, 0.988559007645, 0.993024885654, 0.991061389446, 0.998705029488, 0.998403549194, 0.996998727322, 0.996505022049, 0.993155658245, 0.984951198101, 0.981026232243, 0.972029745579, 0.966459333897, 0.94419670105, 0.960894346237};
float CF_b_average_err[] = {0.0161458831331, 0.0128221109857, 0.00897205866472, 0.00941181976682, 0.0120088305025, 0.00815497042032, 0.00804694690582, 0.00688704308127, 0.00815623613428, 0.00744533896823, 0.00626479675623, 0.00963562431443, 0.0142221825427, 0.0170132891159, 0.0269409769131, 0.0435888100888};
float CF_b_TTJets[] = {0.947620093822,0.970290780067,0.980186522007,0.985994040966,0.989784955978,0.990390121937,0.990213811398,0.990834593773,0.989120185375,0.986187815666,0.9759978652,0.970982313156,0.952143967152,0.940384924412,0.916111886501,0.929837346077};
float CF_b_TTJets_err[] = {0.00206385409008, 0.00185754996064, 0.00177714029617, 0.00178760935384, 0.00186811269777, 0.00199878956315, 0.00162109439381, 0.00203388590553, 0.0020905369809, 0.00332903110459, 0.00591221728181, 0.00899760128862, 0.0129504719003, 0.0193568801663, 0.0270580471525, 0.0617710365702};
float CF_b_T1bbbb[] = {0.972853004932,0.981099367142,0.989241302013,0.986896395683,0.984241902828,0.989194452763,0.989144146442,0.988929748535,0.987957656384,0.985934138298,0.982252955437,0.97672277689,0.967333614826,0.95831823349,0.941621303558,0.929076075554};
float CF_b_T1bbbb_err[] = {0.00612561828472, 0.00587194913049, 0.00568405050937, 0.00550991417465, 0.00538649844727, 0.00533461741536, 0.00371302059703, 0.00369406741237, 0.00265328731269, 0.00250862084086, 0.00274689162146, 0.00285483544185, 0.00300376289088, 0.00355365330988, 0.00426626198731, 0.00861627315494};
float CF_b_T2bb[] = {0.948810279369,1.00302612782,0.978696942329,0.985596716404,0.975437521935,1.00507616997,1.00454497337,1.00055098534,1.00621449947,1.00197982788,0.986243963242,0.993772506714,0.989187836647,0.975364148617,0.974542737007,1.03522455692};
float CF_b_T2bb_err[] = {0.042801268567, 0.0406871138491, 0.0362683940301, 0.0343860584476, 0.033793320264, 0.0347991684098, 0.025403588528, 0.027095292956, 0.0216306324804, 0.0229173309945, 0.0274889595414, 0.0307879815706, 0.0339969783327, 0.0418057526041, 0.0554341956966, 0.126748479369};
float CF_b_T1tttt[] = {0.979598879814,0.99265307188,0.997585237026,1.00366437435,1.00420463085,1.00408983231,1.0055668354,1.00525128841,1.00314259529,0.999631166458,0.992797493935,0.988468706608,0.981641948223,0.976660490036,0.968715131283,0.959192335606};
float CF_b_T1tttt_err[] = {0.00394837761031, 0.00378346587983, 0.00374708466183, 0.0037787339354, 0.00385093527899, 0.00396819215784, 0.00296995069437, 0.0032658598305, 0.00269819950532, 0.00312058905357, 0.00415407373249, 0.00507575102333, 0.00599989932954, 0.00749482367056, 0.00888432558258, 0.0166542097322};
float CF_b_T2tt[] = {0.979348540306,0.995061397552,0.997085094452,1.00297284126,1.00163793564,1.00477445126,1.00254786015,0.999427139759,0.996090114117,0.992045283318,0.987463653088,0.975184738636,0.969841241837,0.981568813324,0.919992566109,0.951141357422};
float CF_b_T2tt_err[] = {0.00802060628019, 0.00748840454817, 0.0073507537134, 0.00740634090161, 0.00770112711227, 0.00805576724688, 0.00622311353545, 0.00718827713194, 0.00648240818153, 0.00882700329502, 0.0139131005548, 0.0197368435804, 0.0261103875634, 0.0364498386728, 0.0479816848263, 0.111896090495};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][0] = CF_b_TTJets[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1bbbb") { FastSimCF[ptbin][0][0] = CF_b_T1bbbb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1bbbb_err[ptbin]; }
else if (FastSimDataset=="T2bb") { FastSimCF[ptbin][0][0] = CF_b_T2bb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2bb_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][0] = CF_b_T1tttt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][0] = CF_b_T2tt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][0] = CF_b_average[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_average_err[ptbin]; }
}
float CF_c_average[] = {0.955359756947, 0.974972009659, 0.979532659054, 0.982701838017, 0.993503212929, 0.998449742794, 1.00370240211, 0.995122492313, 1.00128126144, 0.994792640209, 0.999229133129, 1.00553441048, 1.02229225636, 1.01197516918, 1.02801322937, 1.11682343483};
float CF_c_average_err[] = {0.00760247262124, 0.00420548693913, 0.00770045185159, 0.00857625346879, 0.00468348037252, 0.00755997060086, 0.00415404951459, 0.014475274235, 0.0149298253355, 0.0140962341039, 0.00749170044169, 0.00985542330223, 0.0274721246948, 0.023463136679, 0.0363231907554, 0.141213712837};
float CF_c_TTJets[] = {0.948849916458,0.976007044315,0.984832584858,0.991885364056,0.997343361378,0.996908187866,1.00277841091,0.995276451111,1.00374042988,0.998079836369,0.994012415409,1.01482629776,1.05306124687,1.02951896191,1.06689453125,1.07185912132};
float CF_c_TTJets_err[] = {0.00358154066946, 0.00354146733046, 0.00362334572835, 0.00384441956092, 0.0041809866952, 0.00460722334865, 0.00386568562756, 0.00491274191958, 0.00507203283643, 0.00791056205852, 0.014046697811, 0.0210855153188, 0.027153863163, 0.0406621224082, 0.0654110434785, 0.156756969373};
float CF_c_T1tttt[] = {0.953514277935,0.970345616341,0.983065783978,0.974900841713,0.994880855083,1.00666165352,1.00824069977,1.00952017307,1.01482892036,1.00695478916,1.00781369209,0.99519854784,1.01359128952,1.02108287811,1.02219474316,1.00356698036};
float CF_c_T1tttt_err[] = {0.00688415424297, 0.00688522522265, 0.00708521351158, 0.00731133759579, 0.00775016321857, 0.0083205908995, 0.00648826774862, 0.0074413201755, 0.006486307743, 0.00782204908628, 0.01099400164, 0.0134940691315, 0.0146808680914, 0.0177032228183, 0.0227025068416, 0.045413299976};
float CF_c_T2tt[] = {0.963715076447,0.978563308716,0.970699667931,0.981319248676,0.988285422325,0.991779327393,1.00008821487,0.980570852757,0.985274612904,0.979343235493,0.995861291885,1.00657820702,1.00022423267,0.985323667526,0.994950592518,1.2750442028};
float CF_c_T2tt_err[] = {0.0137552368136, 0.0137960611338, 0.0139745066618, 0.014756090869, 0.0157279082297, 0.017086907889, 0.0136497521006, 0.0161067616546, 0.0150853759601, 0.0207066759595, 0.0332313882875, 0.0448377013819, 0.0517811402663, 0.0712456562275, 0.103761865768, 0.288329828795};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][1] = CF_c_TTJets[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][1] = CF_c_T1tttt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][1] = CF_c_T2tt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][1] = CF_c_average[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_average_err[ptbin]; }
}
float CF_Cen_l_average[] = {0.670549094677, 0.819175243378, 0.9489595294, 1.05563545227, 1.10961019993, 1.12474548817, 1.12291371822, 1.15377008915, 1.17296779156, 1.20658576488, 1.26249420643, 1.30980491638, 1.35113584995, 1.4595644474, 1.55194330215, 1.48988676071};
float CF_Cen_l_average_err[] = {0.298588254223, 0.235935855994, 0.165435385058, 0.0882160714081, 0.0678404121415, 0.0638916103924, 0.0933969100023, 0.110529805735, 0.118070988552, 0.145292377144, 0.176914227831, 0.195705645695, 0.237022475998, 0.260041687506, 0.292321610907, 0.199962959277};
float CF_Cen_l_TTJets[] = {1.01490092278,1.08574223518,1.1212271452,1.15188241005,1.18794393539,1.19851338863,1.22894334793,1.28028523922,1.30652034283,1.37294578552,1.4667506218,1.53570985794,1.62337422371,1.75657439232,1.88411056995,1.71846115589};
float CF_Cen_l_TTJets_err[] = {0.00317527953747, 0.00386680178497, 0.00447035287509, 0.00512704671346, 0.00595261022231, 0.00679561928883, 0.00593913615014, 0.00798855167383, 0.00819530725685, 0.012708619911, 0.0220048518137, 0.0311617481599, 0.0411656139196, 0.0638400387508, 0.0966261358581, 0.19532202162};
float CF_Cen_l_T1tttt[] = {0.483497023582,0.637185871601,0.791329085827,0.978624761105,1.07088029385,1.08879160881,1.08696532249,1.1050825119,1.12993085384,1.14219725132,1.16321539879,1.19176149368,1.19063699245,1.27284300327,1.33389246464,1.40389287472};
float CF_Cen_l_T1tttt_err[] = {0.00278410866069, 0.00408821399853, 0.00551550922308, 0.00739989937502, 0.00872067240119, 0.00953285157099, 0.00759824488015, 0.00902434622144, 0.00804459001183, 0.00995777326549, 0.0139729543921, 0.0174143857461, 0.0194112533568, 0.0248235416921, 0.0314455191292, 0.0638170747549};
float CF_Cen_l_T2tt[] = {0.513249278069,0.734597682953,0.934322416782,1.03639936447,1.07000637054,1.08693158627,1.05283236504,1.07594263554,1.08245229721,1.1046141386,1.15751647949,1.20194339752,1.2393964529,1.34927594662,1.43782675266,1.34730637074};
float CF_Cen_l_T2tt_err[] = {0.00580562253075, 0.00929927245264, 0.0131493105403, 0.0161226379208, 0.0180648108754, 0.020247513485, 0.0162824157925, 0.0201261880321, 0.0187728162987, 0.0254227228446, 0.0380634428127, 0.0489883586793, 0.0584231735185, 0.0824174731878, 0.114025598216, 0.215096100976};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][2] = CF_Cen_l_TTJets[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T1tttt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T2tt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][2] = CF_Cen_l_average[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_average_err[ptbin]; }
}
float CF_For_l_average[] = {0.943648636341, 1.06103241444, 1.12027132511, 1.14569330215, 1.15039491653, 1.17811989784, 1.20447266102, 1.26805043221, 1.28547525406, 1.36370015144, 1.46016824245, 1.51258230209, 1.58013153076, 1.73802530766, 1.99273371696, 2.42696332932};
float CF_For_l_average_err[] = {0.0759593166828, 0.0306980849342, 0.0373904264132, 0.0489682003651, 0.0715002335875, 0.076842327426, 0.086576271803, 0.101263055255, 0.141487469337, 0.155744597124, 0.207162918941, 0.197268558078, 0.244900799197, 0.37295870683, 0.362416182026, 0.819105069408};
float CF_For_l_TTJets[] = {1.00101566315,1.09589910507,1.16136085987,1.20223689079,1.23106348515,1.26407432556,1.30388450623,1.38385295868,1.44719302654,1.54194557667,1.69582307339,1.74016046524,1.86065208912,2.14832305908,2.39887785912,3.33173084259};
float CF_For_l_TTJets_err[] = {0.00408116539478, 0.00533374397541, 0.00653036877462, 0.00775801587208, 0.00910857462632, 0.0107212158396, 0.00958531874643, 0.013270718206, 0.0139772182486, 0.0213277228656, 0.0371489800245, 0.0520544266495, 0.0735324592724, 0.135828023623, 0.253533618498, 1.01314219038};
float CF_For_l_T1tttt[] = {0.972424507141,1.04913175106,1.08824694157,1.11749196053,1.12528276443,1.15421152115,1.16389989853,1.19612979889,1.22472202778,1.29526090622,1.37792980671,1.40722048283,1.47081577778,1.64619004726,1.70230782032,2.21328425407};
float CF_For_l_T1tttt_err[] = {0.00803241670233, 0.0104134549952, 0.0124346544587, 0.0144968405193, 0.0165592166428, 0.0190902047388, 0.0160654586973, 0.0201954195025, 0.018887348845, 0.0252353306582, 0.0373134704332, 0.0479212520331, 0.0589180361992, 0.0885753399324, 0.128350975299, 0.391854237305};
float CF_For_l_T2tt[] = {0.857505679131,1.03806650639,1.1112061739,1.11735117435,1.09483838081,1.11607384682,1.1456335783,1.22416865826,1.18451082706,1.25389397144,1.30675184727,1.39036595821,1.40892672539,1.41956269741,1.87701547146,1.73587489128};
float CF_For_l_T2tt_err[] = {0.0132363190449, 0.0196284010892, 0.024033607909, 0.0277936155758, 0.0314558027918, 0.0361339809529, 0.0309344923206, 0.0400391286962, 0.0363905257306, 0.0479770572919, 0.0691531383087, 0.0894854965807, 0.108282818334, 0.156573505654, 0.291914106663, 0.62008648981};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][1][2] = CF_For_l_TTJets[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][1][2] = CF_For_l_T1tttt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][1][2] = CF_For_l_T2tt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][1][2] = CF_For_l_average[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_average_err[ptbin]; }
}
} else if (BTagAlgorithm=="JPM") {
float CF_b_average[] = {0.931805849075, 0.958443403244, 0.972445607185, 0.976812541485, 0.981819748878, 0.987415611744, 0.985313475132, 0.990266680717, 0.981655478477, 0.972623825073, 0.956968009472, 0.938119709492, 0.919162631035, 0.896132349968, 0.868938922882, 0.870723068714};
float CF_b_average_err[] = {0.0270926920915, 0.0177503477616, 0.0172496689827, 0.015950342878, 0.0172752419768, 0.0182655784646, 0.0160905117395, 0.0219123519079, 0.0180548217298, 0.0173925681892, 0.0207972835015, 0.0247949421213, 0.0386136153896, 0.0397840497425, 0.0488652241784, 0.0764679433501};
float CF_b_TTJets[] = {0.895091831684,0.93481528759,0.95028835535,0.961710989475,0.967882454395,0.969796299934,0.968516469002,0.966294288635,0.961862325668,0.94912391901,0.926195323467,0.899924755096,0.859929382801,0.829195380211,0.788550496101,0.761689543724};
float CF_b_TTJets_err[] = {0.00228685540689, 0.00200516966962, 0.00189169389852, 0.00189362019926, 0.00197169052893, 0.00210547916516, 0.00170162575627, 0.00212538396255, 0.00217941516253, 0.00345641604002, 0.00613476874335, 0.00931348275391, 0.0134603986751, 0.020154788336, 0.0283019277132, 0.0643555943852};
float CF_b_T1bbbb[] = {0.938797295094,0.952278375626,0.958460688591,0.965204954147,0.958755254745,0.965640425682,0.967065870762,0.969467043877,0.965490162373,0.960774421692,0.948805510998,0.933484971523,0.912892699242,0.889603018761,0.85877096653,0.837173104286};
float CF_b_T1bbbb_err[] = {0.00694120282827, 0.00639316895515, 0.00605902626765, 0.00585236316267, 0.00567266785979, 0.00560549218479, 0.00389553319283, 0.00387816390118, 0.00278167383027, 0.00263344684005, 0.00288067414854, 0.00299118285702, 0.00314623035673, 0.0037194658012, 0.00447652410784, 0.00910912940807};
float CF_b_T2bb[] = {0.913163542747,0.953317284584,0.978845775127,0.9690554142,0.991993844509,1.00490260124,0.994724750519,1.01727128029,1.00238227844,0.989921629429,0.979744434357,0.962949454784,0.963475584984,0.920586884022,0.904241383076,0.966513335705};
float CF_b_T2bb_err[] = {0.0488092432795, 0.0438932507477, 0.0397548089413, 0.0368756523257, 0.0369031062446, 0.037408388097, 0.0270571454611, 0.029379195717, 0.023144550496, 0.024471359353, 0.0296259490862, 0.0328116229983, 0.0366611695713, 0.0446548468366, 0.0594903256378, 0.138569522703};
float CF_b_T1tttt[] = {0.952660620213,0.972158074379,0.984121084213,0.993442296982,0.996672213078,0.996927261353,0.999433815479,1.00277078152,0.996524512768,0.986903548241,0.97084414959,0.957127332687,0.940434932709,0.922735154629,0.906880736351,0.886877775192};
float CF_b_T1tttt_err[] = {0.00450518977452, 0.00415123035484, 0.00405239831322, 0.00405625785446, 0.00412016009165, 0.00423598449697, 0.00316824207945, 0.00349350802333, 0.00288437134041, 0.00334010223282, 0.00445680893021, 0.00547432157267, 0.00653844778332, 0.00826465513163, 0.00995525939959, 0.018936677214};
float CF_b_T2tt[] = {0.95931583643,0.979647994041,0.990512251854,0.994648993015,0.993795096874,0.999811589718,0.996826410294,0.995530068874,0.982018232346,0.976395726204,0.959250688553,0.937112092972,0.919080615044,0.918541252613,0.886251032352,0.901361703873};
float CF_b_T2tt_err[] = {0.00915814683836, 0.00822128598863, 0.00797008717027, 0.00794357084537, 0.00821954821271, 0.00858683877843, 0.0066132708224, 0.00763897018387, 0.00684359146445, 0.00935038172315, 0.0147525237187, 0.0211049249879, 0.0283026436962, 0.0402045100549, 0.0555396507295, 0.131138338064};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][0] = CF_b_TTJets[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1bbbb") { FastSimCF[ptbin][0][0] = CF_b_T1bbbb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1bbbb_err[ptbin]; }
else if (FastSimDataset=="T2bb") { FastSimCF[ptbin][0][0] = CF_b_T2bb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2bb_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][0] = CF_b_T1tttt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][0] = CF_b_T2tt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][0] = CF_b_average[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_average_err[ptbin]; }
}
float CF_c_average[] = {0.919353246689, 0.944922327995, 0.95723170042, 0.94581502676, 0.970584869385, 0.957333922386, 0.969786226749, 0.952825605869, 0.955675780773, 0.965820193291, 0.945183634758, 0.943203866482, 0.95384901762, 1.01530539989, 1.04616105556, 1.13519668579};
float CF_c_average_err[] = {0.0393570455001, 0.0119240735491, 0.0149181119464, 0.00731602268404, 0.0146332628899, 0.0175910199419, 0.0161513682468, 0.0352382037168, 0.0334950520603, 0.0361875075251, 0.0213947887192, 0.0233272790181, 0.0143516784879, 0.088259276859, 0.142406454626, 0.42174103601};
float CF_c_TTJets[] = {0.896030604839,0.931661844254,0.940207660198,0.951311290264,0.954479515553,0.951543152332,0.958416461945,0.94277626276,0.932842612267,0.926055431366,0.929718673229,0.916809916496,0.937427401543,0.95027410984,0.987020075321,0.861654520035};
float CF_c_TTJets_err[] = {0.00570125342419, 0.00537046344525, 0.00533142736335, 0.00557695704702, 0.00600437673473, 0.00655404293869, 0.00549752354295, 0.00694076249563, 0.00705833208994, 0.0112045715523, 0.0205668699507, 0.0315766933142, 0.0426973224305, 0.0680286311015, 0.108454994698, 0.233660879531};
float CF_c_T1tttt[] = {0.897235572338,0.94834280014,0.96346616745,0.948622703552,0.983064234257,0.977090358734,0.988273978233,0.991996884346,0.994127571583,0.974584639072,0.969600319862,0.961057126522,0.960131466389,0.979865968227,0.94285428524,0.923045754433};
float CF_c_T1tttt_err[] = {0.0109747929268, 0.0105211454593, 0.0105111462624, 0.0106506703176, 0.011284878642, 0.0119551800137, 0.00938566716341, 0.0108389532845, 0.00954390234908, 0.0116736871753, 0.0167829968944, 0.0214872790333, 0.024623127783, 0.0310605934209, 0.0397963939691, 0.0807241389505};
float CF_c_T2tt[] = {0.964793503284,0.954762399197,0.968021214008,0.937511026859,0.974210858345,0.943368315697,0.962668299675,0.923703730106,0.940057098866,0.996820509434,0.936231851578,0.951744616032,0.963988184929,1.11577618122,1.20860874653,1.6208896637};
float CF_c_T2tt_err[] = {0.0227176836718, 0.0211308621276, 0.021042861489, 0.0212970396405, 0.022881141332, 0.0241999680287, 0.019376956298, 0.0226538512236, 0.0215167101102, 0.031159042327, 0.0489925713933, 0.0695393220081, 0.0881921628019, 0.138179595249, 0.21322788298, 0.604607924456};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][1] = CF_c_TTJets[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][1] = CF_c_T1tttt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][1] = CF_c_T2tt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][1] = CF_c_average[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_average_err[ptbin]; }
}
float CF_Cen_l_average[] = {0.679004192352, 0.814966320992, 0.9308770895, 1.02097177505, 1.11427497864, 1.13945865631, 1.11476039886, 1.13379025459, 1.16629242897, 1.17917430401, 1.27945315838, 1.40900838375, 1.36777710915, 1.54733037949, 1.65833604336, 1.59597826004};
float CF_Cen_l_average_err[] = {0.309940480033, 0.227672312538, 0.156844179223, 0.0680665564158, 0.0511713362454, 0.0351697873075, 0.0991634011578, 0.144633835236, 0.10742966124, 0.16236215856, 0.236359669894, 0.272785617345, 0.48529404574, 0.130683932029, 0.29347616153, 0.335447058049};
float CF_Cen_l_TTJets[] = {1.03611862659,1.07295823097,1.09280467033,1.09500467777,1.17234504223,1.14570128918,1.21346020699,1.27544653416,1.28674542904,1.34217524529,1.55228686333,1.7216438055,1.91447770596,1.69681847095,1.88842916489,1.9536190033};
float CF_Cen_l_TTJets_err[] = {0.00799150238248, 0.0095786522037, 0.0109978247508, 0.0124445463096, 0.0152319978627, 0.0170584744272, 0.0157360406297, 0.021920682744, 0.022598904082, 0.0354061767939, 0.0670190176451, 0.100119829569, 0.139350942529, 0.170172887841, 0.24333658565, 0.567436485069};
float CF_Cen_l_T1tttt[] = {0.480074256659,0.642211735249,0.77966594696,0.961099147797,1.0757843256,1.10158550739,1.11568129063,1.13957214355,1.13174545765,1.17788910866,1.14913856983,1.28595161438,1.20095932484,1.45474612713,1.32783389091,1.54597759247};
float CF_Cen_l_T1tttt_err[] = {0.0069800415273, 0.0103204724552, 0.0137921571197, 0.0186633276304, 0.0224498531315, 0.0248852684525, 0.0202890520682, 0.0246003236253, 0.0220589007218, 0.0283721952746, 0.0394149632202, 0.0520630573028, 0.0575891673051, 0.0780443673243, 0.0900443918729, 0.184055545309};
float CF_Cen_l_T2tt[] = {0.520819604397,0.729729056358,0.920160651207,1.0068116188,1.09469568729,1.17108905315,1.01513981819,0.986352264881,1.08038640022,1.01745855808,1.13693416119,1.21942961216,0.987894356251,1.49042654037,1.75874519348,1.28833806515};
float CF_Cen_l_T2tt_err[] = {0.0147725161697, 0.0235091408334, 0.0330865025802, 0.0403996040454, 0.04674090703, 0.0541079904609, 0.0415910684728, 0.0507672548076, 0.0503197669674, 0.0665323633117, 0.104519435929, 0.139055285782, 0.151434351531, 0.250297312145, 0.355031766546, 0.580327450134};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][2] = CF_Cen_l_TTJets[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T1tttt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T2tt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][2] = CF_Cen_l_average[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_average_err[ptbin]; }
}
float CF_For_l_average[] = {1.03998911381, 1.07599854469, 1.15583515167, 1.17270219326, 1.16499149799, 1.25803720951, 1.33348965645, 1.39445388317, 1.33136796951, 1.63947868347, 1.80137300491, 2.0610127449, 1.83022105694, 2.12503266335, 2.45645856857, 3.95370817184};
float CF_For_l_average_err[] = {0.0908907367386, 0.0587814303239, 0.024769624521, 0.0524414556948, 0.0973976957949, 0.0255855627777, 0.0361803472235, 0.0887608481504, 0.229185647636, 0.293701384998, 0.377996300233, 0.410281362949, 0.597688815077, 0.864981799128, 1.19313391578, 0.457611483166};
float CF_For_l_TTJets[] = {1.12064993382,1.13833069801,1.18178963661,1.22172856331,1.24941420555,1.28478169441,1.36913967133,1.47378838062,1.56729424,1.84882974625,2.20268750191,2.53178930283,2.49878072739,2.98130369186,3.63619399071,4.44230794907};
float CF_For_l_TTJets_err[] = {0.0126627416893, 0.0159699288508, 0.0195239727304, 0.0233173376214, 0.0277633951037, 0.0336293293834, 0.0311696281098, 0.0452484458771, 0.0491928239693, 0.0833794937979, 0.156660448742, 0.252109881675, 0.324536427019, 0.597084777498, 1.07501131804, 4.98476961};
float CF_For_l_T1tttt[] = {1.05780947208,1.06809782982,1.15326488018,1.17896926403,1.18713009357,1.25553572178,1.29680132866,1.29859042168,1.31723237038,1.7658649683,1.74934673309,1.77971315384,1.64427495003,2.14219880104,2.48281908035,3.53516435623};
float CF_For_l_T1tttt_err[] = {0.0242135321079, 0.0313055414279, 0.0385069029743, 0.0453216064549, 0.0526835265375, 0.0621834358277, 0.0538382242061, 0.0676663633602, 0.0643760616398, 0.0996647393934, 0.140894461906, 0.183147753328, 0.207636639316, 0.326872679734, 0.500544127663, 1.49866832801};
float CF_For_l_T2tt[] = {0.941508054733,1.02156698704,1.13245081902,1.11740887165,1.05843019485,1.23379433155,1.33452796936,1.41098296642,1.10957729816,1.30374121666,1.45208466053,1.87153565884,1.3476074934,1.25159561634,1.25036299229,3.88365197182};
float CF_For_l_T2tt_err[] = {0.0403875295867, 0.059299299949, 0.0744742917909, 0.0869699665296, 0.0971521440927, 0.120592383594, 0.107556286523, 0.14064980368, 0.116913491517, 0.165206730384, 0.247000970714, 0.350362968507, 0.350039385316, 0.475735263953, 0.72613126503, 2.79932130635};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][1][2] = CF_For_l_TTJets[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][1][2] = CF_For_l_T1tttt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][1][2] = CF_For_l_T2tt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][1][2] = CF_For_l_average[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_average_err[ptbin]; }
}
} else if (BTagAlgorithm=="JPT") {
float CF_b_average[] = {0.890343904495, 0.91555005312, 0.938847720623, 0.952951908112, 0.966935634613, 0.966363847256, 0.966774761677, 0.974709451199, 0.957119464874, 0.939630687237, 0.913087666035, 0.881928920746, 0.854420423508, 0.812640845776, 0.77769613266, 0.822308421135};
float CF_b_average_err[] = {0.0392630823558, 0.0332534907062, 0.0264658506668, 0.0235321483818, 0.0378296383745, 0.028652210864, 0.0294355666687, 0.0414936607235, 0.0299216868775, 0.0287244407757, 0.0324931745079, 0.0471620195664, 0.0680324113444, 0.0597306053932, 0.0910819488748, 0.155658597078};
float CF_b_TTJets[] = {0.82551831007,0.881882250309,0.908486187458,0.925775170326,0.935387372971,0.936953723431,0.935640513897,0.930699706078,0.919720768929,0.896273374557,0.861481428146,0.805505275726,0.741482019424,0.710268855095,0.619244098663,0.607816517353};
float CF_b_TTJets_err[] = {0.00270120590564, 0.00225216133877, 0.00208202725197, 0.00206198274905, 0.0021340643418, 0.00226474850669, 0.00182232621912, 0.00226387264991, 0.00230646512058, 0.00364296431221, 0.00649422094748, 0.00978222081646, 0.0141253389346, 0.0219333712238, 0.0294972270689, 0.0694601925145};
float CF_b_T1bbbb[] = {0.891349256039,0.900850236416,0.923197567463,0.929570913315,0.923826158047,0.934792399406,0.934668779373,0.938426911831,0.931960046291,0.924859106541,0.906536102295,0.882105588913,0.848451554775,0.818026721478,0.782741010189,0.76098126173};
float CF_b_T1bbbb_err[] = {0.00843170794637, 0.00724101653366, 0.00673218523613, 0.00639949804104, 0.0061525848191, 0.00606382718212, 0.00419145123569, 0.00416714734098, 0.00298439820304, 0.00282982624455, 0.00309839490924, 0.00321811904646, 0.00338252796361, 0.00402199882497, 0.0048925928858, 0.0101100811327};
float CF_b_T2bb[] = {0.894231617451,0.894731760025,0.930082261562,0.96321862936,1.01754975319,0.982129275799,0.997154951096,1.03253793716,0.987122893333,0.959063768387,0.936636865139,0.925401091576,0.917551457882,0.829550206661,0.817839682102,0.933106184006};
float CF_b_T2bb_err[] = {0.060956413599, 0.0498828975722, 0.0441263223328, 0.0415247480284, 0.0420344535053, 0.0410332077434, 0.0300924088066, 0.0328649438021, 0.0254067145688, 0.0266760998013, 0.0321956216616, 0.0360202379072, 0.0403680993038, 0.0481795010437, 0.0655219156668, 0.161275179926};
float CF_b_T1tttt[] = {0.911594748497,0.939034104347,0.960855126381,0.970575869083,0.975813150406,0.980274498463,0.982016146183,0.990252494812,0.981125295162,0.965142548084,0.943876326084,0.916057467461,0.891845464706,0.864295423031,0.837888896465,0.80172085762};
float CF_b_T1tttt_err[] = {0.00551633333033, 0.00476967514182, 0.00454303988339, 0.0044759272418, 0.00451395793119, 0.00463397822979, 0.00345370001034, 0.00381930162021, 0.00315550276291, 0.00366454496357, 0.00492934675714, 0.00609299586602, 0.00740956064004, 0.00956912825222, 0.0117484905554, 0.0226591290331};
float CF_b_T2tt[] = {0.929025650024,0.96125203371,0.971617460251,0.975618898869,0.982101619244,0.997669279575,0.98439347744,0.981630086899,0.965668439865,0.952814698219,0.916907668114,0.880575299263,0.872771561146,0.841063141823,0.83076697588,1.00791716576};
float CF_b_T2tt_err[] = {0.0112248907777, 0.00949522754827, 0.00893655947582, 0.0087729655223, 0.0090453600108, 0.00945999682351, 0.00720677273757, 0.00829561868956, 0.00742271034657, 0.0101451533342, 0.0159970385666, 0.023116506141, 0.0322123499576, 0.0464104108242, 0.0673854327664, 0.181209729271};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][0] = CF_b_TTJets[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1bbbb") { FastSimCF[ptbin][0][0] = CF_b_T1bbbb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1bbbb_err[ptbin]; }
else if (FastSimDataset=="T2bb") { FastSimCF[ptbin][0][0] = CF_b_T2bb[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2bb_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][0] = CF_b_T1tttt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][0] = CF_b_T2tt[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][0] = CF_b_average[ptbin]; FastSimCF_error[ptbin][0][0] = CF_b_average_err[ptbin]; }
}
float CF_c_average[] = {0.873922288418, 0.918420553207, 0.934686183929, 0.899442434311, 0.926234006882, 0.905602216721, 0.940110981464, 0.89154702425, 0.903347432613, 0.912925422192, 0.874370038509, 0.826705276966, 0.899616658688, 0.958882510662, 0.880574345589, 1.69869887829};
float CF_c_average_err[] = {0.0400038589809, 0.0446380426342, 0.0355304894522, 0.00715715084033, 0.0210416896941, 0.0374197779961, 0.0303872942316, 0.0574604726121, 0.053535591391, 0.0683726770796, 0.103801036669, 0.0419304866391, 0.0331066605815, 0.21610044774, 0.208723183065, 0.888618215121};
float CF_c_TTJets[] = {0.836732029915,0.872840762138,0.89369738102,0.904856383801,0.905737996101,0.894897818565,0.905411243439,0.870813131332,0.85748142004,0.834423780441,0.769630789757,0.803752243519,0.867803215981,0.757999300957,0.64013671875,1.70203363895};
float CF_c_TTJets_err[] = {0.01024586291, 0.00910307808113, 0.00890940358189, 0.009192583852, 0.00978119271779, 0.0105160977371, 0.00883743874185, 0.0109725147569, 0.0112018173133, 0.0176111970596, 0.0307295301191, 0.05243177145, 0.0759117650662, 0.112373598681, 0.131144611058, 1.24909235324};
float CF_c_T1tttt[] = {0.868790328503,0.920367717743,0.953646242619,0.902143061161,0.947781920433,0.947207689285,0.952951550484,0.95649677515,0.962173223495,0.944899916649,0.977206707001,0.875101089478,0.89716643095,0.931129515171,0.986382126808,0.808417916298};
float CF_c_T1tttt_err[] = {0.0203124988893, 0.0183156768489, 0.0178574630137, 0.0174558519721, 0.0184319184949, 0.0195266945372, 0.0152783816413, 0.0177504661148, 0.0158185298049, 0.0197680782334, 0.0296257595585, 0.0372110454296, 0.0457371375617, 0.0597045207855, 0.0812363750591, 0.151865501853};
float CF_c_T2tt[] = {0.916244447231,0.962053120136,0.95671492815,0.891327917576,0.925182163715,0.874701082706,0.961970150471,0.847331106663,0.890387713909,0.95945250988,0.876272618771,0.801262497902,0.933880388737,1.18751871586,1.01520419121,2.5856449604};
float CF_c_T2tt_err[] = {0.0414944128896, 0.0375330106343, 0.0358329950394, 0.0349616601491, 0.0370332503293, 0.038560762264, 0.0319512092863, 0.0357643162603, 0.0347128153252, 0.051276480812, 0.0815971915404, 0.113816332257, 0.166925842038, 0.283123180411, 0.387189545824, 1.52449512996};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][1] = CF_c_TTJets[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][1] = CF_c_T1tttt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][1] = CF_c_T2tt[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][1] = CF_c_average[ptbin]; FastSimCF_error[ptbin][0][1] = CF_c_average_err[ptbin]; }
}
float CF_Cen_l_average[] = {0.60754597187, 0.733156621456, 0.859182715416, 0.857279419899, 0.968760788441, 1.04365205765, 1.01034426689, 1.02942121029, 0.95606648922, 0.929487645626, 0.986744761467, 1.15326964855, 1.04541254044, 1.16948795319, 1.07994532585, 1.91994035244};
float CF_Cen_l_average_err[] = {0.251819967244, 0.177700588266, 0.145219295214, 0.0616397415931, 0.0361468618318, 0.0726888713992, 0.076040077327, 0.0916959458768, 0.156470550935, 0.335472053693, 0.171631906151, 0.171066742516, 0.105126921039, 0.361858836392, 0.144787862409, 1.2675022925};
float CF_Cen_l_TTJets[] = {0.897252202034,0.935670793056,0.982933819294,0.90085208416,1.0047236681,0.983095765114,1.03718018532,1.09226834774,1.11823606491,1.15085363388,1.13901543617,1.32894539833,1.09941518307,1.48861515522,1.23362469673,3.37443256378};
float CF_Cen_l_TTJets_err[] = {0.0206436296188, 0.0224622465959, 0.0255089854761, 0.0258046785952, 0.0321922284034, 0.0359524606089, 0.033067016235, 0.0471911007831, 0.0488420310685, 0.0753694754557, 0.120778932599, 0.170057506928, 0.184075933863, 0.337093315488, 0.377715791445, 2.25323505332};
float CF_Cen_l_T1tttt[] = {0.441105335951,0.60328990221,0.699312806129,0.884232401848,0.969125926495,1.02359747887,1.06932771206,1.07179355621,0.943965792656,1.09410321712,1.02046275139,0.987218260765,0.924259960651,1.24350547791,1.06011891365,1.33376681805};
float CF_Cen_l_T1tttt_err[] = {0.0198582127257, 0.026769202223, 0.0328670740335, 0.0435168940155, 0.0511964362681, 0.0574471769321, 0.0471627849889, 0.05693685342, 0.0481457113984, 0.0647975465558, 0.086626097747, 0.104862960291, 0.114577329037, 0.160703748878, 0.171066502095, 0.34750654032};
float CF_Cen_l_T2tt[] = {0.484280377626,0.660509228706,0.89530146122,0.786753714085,0.932432711124,1.12426280975,0.924524843693,0.924201846123,0.805997610092,0.543506026268,0.800756156445,1.14364528656,1.11256241798,0.776343107224,0.946092367172,1.0516217947};
float CF_Cen_l_T2tt_err[] = {0.0420834403245, 0.0599381125991, 0.0826333275609, 0.087066736593, 0.10261028032, 0.125301234161, 0.0922251789653, 0.114035681312, 0.0994079213125, 0.111073410196, 0.194525984826, 0.295919199595, 0.352460725697, 0.388624405727, 0.546993845067, 1.05340654601};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][0][2] = CF_Cen_l_TTJets[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T1tttt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][0][2] = CF_Cen_l_T2tt[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][0][2] = CF_Cen_l_average[ptbin]; FastSimCF_error[ptbin][0][2] = CF_Cen_l_average_err[ptbin]; }
}
float CF_For_l_average[] = {0.866352498531, 0.876113057137, 0.953140437603, 0.983556687832, 1.01815712452, 1.25455951691, 1.11474740505, 1.30576252937, 0.933034539223, 1.50961351395, 1.82118630409, 2.24354958534, 4.45306777954, 2.09460711479, 3.20794153214, 1.15033137798};
float CF_For_l_average_err[] = {0.0645225305065, 0.0151134947009, 0.0248952174413, 0.153032713919, 0.0839740314059, 0.354409181021, 0.0438029601789, 0.196748002398, 0.248185984161, 0.304357926342, 0.404294695419, 0.485950446012, 4.34889825467, 1.12927167699, 0.526117357492, 1.99243232338};
float CF_For_l_TTJets[] = {0.895480751991,0.882549703121,0.937709748745,1.00816988945,1.03005826473,1.07182168961,1.07607674599,1.53217315674,1.21491408348,1.77357470989,1.63142693043,2.64481568336,9.46320343018,3.39622712135,3.74314045906,0.0};
float CF_For_l_TTJets_err[] = {0.0346772146745, 0.0398402783461, 0.0471118062194, 0.0582656784861, 0.0689664725452, 0.0844365560669, 0.0752558864567, 0.138336162872, 0.116852106851, 0.246432266584, 0.346313748475, 0.833382062629, 5.7603122144, 1.94302391455, 3.00382483221, 0.0};
float CF_For_l_T1tttt[] = {0.911175370216,0.858846783638,0.939851164818,1.12279105186,1.09554564953,1.02881491184,1.16231632233,1.20878827572,0.836863458157,1.57857358456,2.28545427322,2.38260293007,1.65334355831,1.51157402992,3.18928217888,3.45099401474};
float CF_For_l_T1tttt_err[] = {0.074858399581, 0.0872538928298, 0.103833093715, 0.129831235201, 0.146293221888, 0.163937527399, 0.147764948774, 0.195398850738, 0.151310731623, 0.287026100822, 0.495832818928, 0.626282368363, 0.5922603301, 0.764759336421, 1.46303445898, 3.5404917118};
float CF_For_l_T2tt[] = {0.792401373386,0.88694268465,0.981860339642,0.819709181786,0.928867399693,1.66304206848,1.10584926605,1.17632615566,0.747326135635,1.1766923666,1.54667758942,1.70322990417,2.24265670776,1.37602043152,2.69140219688,0.0};
float CF_For_l_T2tt_err[] = {0.12106804204, 0.174251580883, 0.209746729551, 0.219439672651, 0.268643213041, 0.404693992334, 0.286144416783, 0.372805569374, 0.28283853494, 0.481312468567, 0.775212800254, 0.985919552762, 1.29925105874, 1.37877307107, 2.70126557438, 0.0};
for (int ptbin = 0; ptbin<nFastSimPtBins; ptbin++) {
//float SMSSystematic = 999.;
if (FastSimDataset=="TTJets") { FastSimCF[ptbin][1][2] = CF_For_l_TTJets[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_TTJets_err[ptbin]; }
else if (FastSimDataset=="T1tttt") { FastSimCF[ptbin][1][2] = CF_For_l_T1tttt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T1tttt_err[ptbin]; }
else if (FastSimDataset=="T2tt") { FastSimCF[ptbin][1][2] = CF_For_l_T2tt[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_T2tt_err[ptbin]; }
else { FastSimCF[ptbin][1][2] = CF_For_l_average[ptbin]; FastSimCF_error[ptbin][1][2] = CF_For_l_average_err[ptbin]; }
}
} else cout << "GetFastSimPayload::Error CFs for " << BTagAlgorithm << " not available" << endl;
}