From b0687fe2c6b6b7f93a2e82a1bd040772a5886723 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 6 Jul 2017 11:43:32 +0200 Subject: [PATCH 001/151] Updated list of variables --- TopAnalysis/interface/SelectionTools.h | 2 + TopAnalysis/src/FourTopsAnalyzer.cc | 181 ++++++++++++++++++++++++- TopAnalysis/src/SelectionTools.cc | 3 + 3 files changed, 180 insertions(+), 6 deletions(-) diff --git a/TopAnalysis/interface/SelectionTools.h b/TopAnalysis/interface/SelectionTools.h index 7662e14db0c..5b6ce2eeb50 100644 --- a/TopAnalysis/interface/SelectionTools.h +++ b/TopAnalysis/interface/SelectionTools.h @@ -23,6 +23,7 @@ class SelectionTool { TString flagFinalState(MiniEvent_t &ev, std::vector preselleptons={}); std::vector &getSelLeptons() { return leptons_; } std::vector &getVetoLeptons() { return vetoLeptons_; } + std::vector &getAtLeastVetoLeptons() { return atleastVetoLeptons_; } std::vector &getJets() { return jets_; } TLorentzVector &getMET() { return met_; } @@ -49,6 +50,7 @@ class SelectionTool { bool hasTriggerBit(TString triggerName,unsigned int word); bool isSingleElectronPD_,isSingleMuonPD_,isDoubleEGPD_,isDoubleMuonPD_,isMuonEGPD_; std::vector leptons_,vetoLeptons_,genLeptons_; + std::vector atleastVetoLeptons_; std::vector jets_,genJets_; TLorentzVector met_; bool debug_; diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 5de0c9fe8a6..ca4797848ac 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -43,9 +43,68 @@ void RunFourTopsAnalyzer(TString filename, TMVA::Reader *tmvaReader = new TMVA::Reader( "!Color:!Silent" ); //FIXME TOP: add all the variables you need to use here and update the xml file location - Float_t tmva_var1; - tmvaReader->AddVariable( "var1", &tmva_var1 ); - tmvaReader->BookMVA( "BDT", "/afs/cern.ch/user/p/psilva/public/forTop/FourTopsML_BDT.weights.xml"); + Float_t lepton_ht; + Float_t lepton_3_chIso; + Float_t lepton_4_chIso; + Float_t lepton_3_minIso; + Float_t lepton_4_minIso; + Float_t jet_1_highest_csv; + Float_t jet_2_highest_csv; + Float_t jet_3_highest_csv; + Float_t jet_4_highest_csv; + Float_t jet_ht; + Float_t jet_btag_ht; + Float_t jet_non_btag_ht; + Float_t jet_smallest_angle; + Float_t jet_smallest_angle_2b; + Float_t met_pt; + Float_t n_jets; + Float_t n_bjets; + Float_t n_leptons; + + Float_t event_weight; + + tmvaReader->AddVariable("jet_1_highest_csv", &jet_1_highest_csv); + tmvaReader->AddVariable("jet_2_highest_csv", &jet_2_highest_csv); + tmvaReader->AddVariable("jet_3_highest_csv", &jet_3_highest_csv); + tmvaReader->AddVariable("jet_4_highest_csv", &jet_4_highest_csv); + tmvaReader->AddVariable("jet_ht", &jet_ht); + tmvaReader->AddVariable("jet_btag_ht", &jet_btag_ht); + tmvaReader->AddVariable("jet_non_btag_ht", &jet_non_btag_ht); + tmvaReader->AddVariable("jet_smallest_angle", &jet_smallest_angle); + tmvaReader->AddVariable("jet_smallest_angle_2b", &jet_smallest_angle_2b); + tmvaReader->AddVariable("lepton_ht", &lepton_ht); + tmvaReader->AddVariable("lepton_3_chIso", &lepton_3_chIso); + tmvaReader->AddVariable("lepton_4_chIso", &lepton_4_chIso); + tmvaReader->AddVariable("lepton_3_minIso", &lepton_3_minIso); + tmvaReader->AddVariable("lepton_4_minIso", &lepton_4_minIso); + tmvaReader->AddVariable("met_pt", &met_pt); + tmvaReader->AddVariable("n_jets", &n_jets); + tmvaReader->AddVariable("n_bjets", &n_bjets); + tmvaReader->AddVariable("n_leptons", &n_leptons); + tmvaReader->BookMVA( "BDT", "test/summer2017/FourTopsML_BDT_606.weights.xml"); + + //CREATE OUTPUT TREE + TTree outTree("TMVAanalysis","NTuple tree for TMVA analysis"); + outTree.Branch("lepton_ht", &lepton_ht,"lepton_ht/F"); + outTree.Branch("lepton_3_chIso", &lepton_3_chIso,"lepton_3_chIso/F"); + outTree.Branch("lepton_4_chIso", &lepton_4_chIso,"lepton_4_chIso/F"); + outTree.Branch("lepton_3_minIso", &lepton_3_minIso,"lepton_3_minIso/F"); + outTree.Branch("lepton_4_minIso", &lepton_4_minIso,"lepton_4_minIso/F"); + outTree.Branch("jet_1_highest_csv", &jet_1_highest_csv,"jet_1_highest_csv/F"); + outTree.Branch("jet_2_highest_csv", &jet_2_highest_csv,"jet_2_highest_csv/F"); + outTree.Branch("jet_3_highest_csv", &jet_3_highest_csv,"jet_3_highest_csv/F"); + outTree.Branch("jet_4_highest_csv", &jet_4_highest_csv,"jet_4_highest_csv/F"); + outTree.Branch("jet_ht", &jet_ht,"jet_ht/F"); + outTree.Branch("jet_btag_ht", &jet_btag_ht,"jet_btag_ht/F"); + outTree.Branch("jet_non_btag_ht", &jet_non_btag_ht,"jet_non_btag_ht/F"); + outTree.Branch("jet_smallest_angle", &jet_smallest_angle,"jet_smallest_angle/F"); + outTree.Branch("jet_smallest_angle_2b", &jet_smallest_angle_2b,"jet_smallest_angle_2b/F"); + outTree.Branch("met_pt",&met_pt,"met_pt/F"); + outTree.Branch("event_weight",&event_weight,"event_weight/F"); + outTree.Branch("n_jets",&n_jets,"n_jets/F"); + outTree.Branch("n_bjets",&n_bjets,"n_bjets/F"); + outTree.Branch("n_leptons",&n_leptons,"n_leptons/F"); //PREPARE OUTPUT TString baseName=gSystem->BaseName(outname); @@ -107,7 +166,9 @@ void RunFourTopsAnalyzer(TString filename, ////////////////// // CORRECTIONS // //////////////// + double csvl = 0.5426; double csvm = 0.8484; + double csvt = 0.9535; addBTagDecisions(ev, csvm, csvm); if(!ev.isData) ev = smearJetEnergies(ev); @@ -116,9 +177,14 @@ void RunFourTopsAnalyzer(TString filename, ///////////////////////// TString chTag = selector.flagFinalState(ev); if(chTag=="") continue; - std::vector &leptons = selector.getSelLeptons(); + std::vector &leptons = selector.getAtLeastVetoLeptons(); + std::vector &LLIDleptons = selector.getSelLeptons(); + std::vector &vetoLeptons = selector.getVetoLeptons(); std::vector &jets = selector.getJets(); - if(leptons.size()<2) continue; + //if(leptons.size()<2) continue; + //if (leptons.size() < 1) continue; + + if (leptons.size() < 4 || LLIDleptons.size() < 2) continue; //count n b-jets int sel_nbjets(0); @@ -136,6 +202,7 @@ void RunFourTopsAnalyzer(TString filename, wgt = (normH? normH->GetBinContent(1) : 1.0); // pu weight + //if (puWgtGr[period][0]? false : true) continue; double puWgt(puWgtGr[period][0]->Eval(ev.g_pu)); std::vectorpuPlotWgts(1,puWgt); ht.fill("puwgtctr",1,puPlotWgts); @@ -175,9 +242,111 @@ void RunFourTopsAnalyzer(TString filename, ht.fill("nleptons", leptons.size(), plotwgts); //FIXME TOP: assign all the values to the variables here before evaluating the bdt discriminator - tmva_var1=1; + //control histograms + + n_jets = (float) jets.size(); + n_bjets = (float) sel_nbjets; + n_leptons = (float) leptons.size(); + + // Fill only lepton with highest pt + + lepton_3_chIso = 0.; + lepton_4_chIso = 0.; + lepton_3_minIso = 0.; + lepton_4_minIso = 0.; + + if (leptons.size() > 0) + { + + if (leptons.size() >= 4) + { + auto chIsoSort = [ev](Particle &p1, Particle &p2) + { + return ev.l_chargedHadronIso[p1.originalReference()] < ev.l_chargedHadronIso[p2.originalReference()]; + }; + auto minIsoSort = [ev](Particle &p1, Particle &p2) + { + return ev.l_miniIso[p1.originalReference()] < ev.l_miniIso[p2.originalReference()]; + }; + std::vector leptons_chIsoSorted = leptons; + std::vector leptons_minIsoSorted = leptons; + std::sort(leptons_chIsoSorted.begin(), leptons_chIsoSorted.end(), chIsoSort); + std::sort(leptons_minIsoSorted.begin(), leptons_minIsoSorted.end(), minIsoSort); + + lepton_3_chIso = ev.l_chargedHadronIso[leptons_chIsoSorted[2].originalReference()]; + lepton_4_chIso = ev.l_chargedHadronIso[leptons_chIsoSorted[3].originalReference()]; + lepton_3_minIso = ev.l_chargedHadronIso[leptons_minIsoSorted[2].originalReference()]; + lepton_4_minIso = ev.l_chargedHadronIso[leptons_minIsoSorted[3].originalReference()]; + } + } + + lepton_ht = 0.; + for (size_t i=0;i j; }; + + auto sort_jet_csv = [greater_than](auto ev, auto jets) + { + std::vector csv_sorted; + for (size_t i=0;i csv_sorted = sort_jet_csv(ev,jets); + if (csv_sorted.size() > 0) jet_1_highest_csv = csv_sorted[0]; + if (csv_sorted.size() > 1) jet_2_highest_csv = csv_sorted[1]; + if (csv_sorted.size() > 2) jet_3_highest_csv = csv_sorted[2]; + if (csv_sorted.size() > 3) jet_4_highest_csv = csv_sorted[3]; + + jet_smallest_angle = TMath::Pi(); + for (size_t i=0;i= 2) for (size_t i=0;iEvaluateMVA("BDT"); ht.fill("bdt", bdt, plotwgts); + + outTree.Fill(); } //close input file diff --git a/TopAnalysis/src/SelectionTools.cc b/TopAnalysis/src/SelectionTools.cc index 94d02d2c092..6e618ee2e3f 100644 --- a/TopAnalysis/src/SelectionTools.cc +++ b/TopAnalysis/src/SelectionTools.cc @@ -261,6 +261,8 @@ TString SelectionTool::flagFinalState(MiniEvent_t &ev, std::vector pre else if (ch==13*13) chTag = "MM"; else if (ch==11*11) chTag = "EE"; leptons_=passllid; + vetoLeptons_=getLeptons(preselleptons,SelectionTool::PASSLVETO, 0., 99., &leptons_); + atleastVetoLeptons_=getLeptons(preselleptons,SelectionTool::PASSLVETO); } else if(passlid.size()==1){ int ch(abs(passlid[0].id()) ); @@ -268,6 +270,7 @@ TString SelectionTool::flagFinalState(MiniEvent_t &ev, std::vector pre else if (ch==11) chTag = "E"; leptons_=passlid; vetoLeptons_=getLeptons(preselleptons,SelectionTool::PASSLVETO, 0., 99., &leptons_); + atleastVetoLeptons_=getLeptons(preselleptons,SelectionTool::PASSLVETO); } //select jets based on the leptons From af6a276787d3edb29b7882a381b2d8a6a45c3215 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 6 Jul 2017 15:25:58 +0200 Subject: [PATCH 002/151] Change to condor --- TopAnalysis/test/summer2017/steerFourTops.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/steerFourTops.sh b/TopAnalysis/test/summer2017/steerFourTops.sh index 9824d5c57f8..7dffd7af87f 100644 --- a/TopAnalysis/test/summer2017/steerFourTops.sh +++ b/TopAnalysis/test/summer2017/steerFourTops.sh @@ -11,7 +11,8 @@ if [ "$#" -ne 1 ]; then fi export LSB_JOB_REPORT_MAIL=N -queue=2nd +#queue=2nd +queue=condor githash=b312177 lumi=35922 lumiUnc=0.025 From a7ef24776f9d38ebd1cda39b0a0d76ee8613425e Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 6 Jul 2017 16:58:52 +0200 Subject: [PATCH 003/151] Fixed BDT weight file location --- TopAnalysis/src/FourTopsAnalyzer.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index ca4797848ac..7df94e4e8b0 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -82,7 +82,7 @@ void RunFourTopsAnalyzer(TString filename, tmvaReader->AddVariable("n_jets", &n_jets); tmvaReader->AddVariable("n_bjets", &n_bjets); tmvaReader->AddVariable("n_leptons", &n_leptons); - tmvaReader->BookMVA( "BDT", "test/summer2017/FourTopsML_BDT_606.weights.xml"); + tmvaReader->BookMVA( "BDT", "/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTopsML_BDT_606.weights.xml"); //CREATE OUTPUT TREE TTree outTree("TMVAanalysis","NTuple tree for TMVA analysis"); From 943cec9c55077d65281fb40e56edb331ce43a795 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 7 Jul 2017 00:08:17 +0200 Subject: [PATCH 004/151] Fixed CTPPS vars bug CTPPS vars are only available in data, not MC. --- TopAnalysis/src/MiniEvent.cc | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/src/MiniEvent.cc b/TopAnalysis/src/MiniEvent.cc index e3fee4d4485..708c75dc8ce 100644 --- a/TopAnalysis/src/MiniEvent.cc +++ b/TopAnalysis/src/MiniEvent.cc @@ -266,11 +266,14 @@ void attachToMiniEventTree(TTree *t,MiniEvent_t &ev,bool full) t->SetBranchAddress("met_filterBits", &ev.met_filterBits); //CTPPS local tracks - t->SetBranchAddress("nfwdtrk", &ev.nfwdtrk); - t->SetBranchAddress("fwdtrk_arm", ev.fwdtrk_arm); - t->SetBranchAddress("fwdtrk_pot", ev.fwdtrk_pot); - t->SetBranchAddress("fwdtrk_x", ev.fwdtrk_x); - t->SetBranchAddress("fwdtrk_x_unc",ev.fwdtrk_x_unc); - t->SetBranchAddress("fwdtrk_y", ev.fwdtrk_y); - t->SetBranchAddress("fwdtrk_y_unc",ev.fwdtrk_y_unc); + if (ev.isData) + { + t->SetBranchAddress("nfwdtrk", &ev.nfwdtrk); + t->SetBranchAddress("fwdtrk_arm", ev.fwdtrk_arm); + t->SetBranchAddress("fwdtrk_pot", ev.fwdtrk_pot); + t->SetBranchAddress("fwdtrk_x", ev.fwdtrk_x); + t->SetBranchAddress("fwdtrk_x_unc",ev.fwdtrk_x_unc); + t->SetBranchAddress("fwdtrk_y", ev.fwdtrk_y); + t->SetBranchAddress("fwdtrk_y_unc",ev.fwdtrk_y_unc); + } } From a458ad70da124a118e711c3d10dfe5543b20474d Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 7 Jul 2017 00:25:54 +0200 Subject: [PATCH 005/151] Added treeIsData option to fix CTPPS variable set issue --- TopAnalysis/interface/MiniEvent.h | 2 +- TopAnalysis/src/FourTopsAnalyzer.cc | 2 +- TopAnalysis/src/MiniEvent.cc | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/TopAnalysis/interface/MiniEvent.h b/TopAnalysis/interface/MiniEvent.h index fb35049eb13..2207941f1fb 100644 --- a/TopAnalysis/interface/MiniEvent.h +++ b/TopAnalysis/interface/MiniEvent.h @@ -64,6 +64,6 @@ struct MiniEvent_t }; void createMiniEventTree(TTree *t,MiniEvent_t &ev); -void attachToMiniEventTree(TTree *t, MiniEvent_t &ev,bool full=false); +void attachToMiniEventTree(TTree *t, MiniEvent_t &ev, bool full = false, bool treeIsData = true); #endif diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 7df94e4e8b0..2c23830355d 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -118,7 +118,7 @@ void RunFourTopsAnalyzer(TString filename, TH1 *genPU=(TH1 *)f->Get("analysis/putrue"); TH1 *triggerList=(TH1 *)f->Get("analysis/triggerList"); TTree *t = (TTree*)f->Get("analysis/data"); - attachToMiniEventTree(t,ev,true); + attachToMiniEventTree(t,ev,true,false); Int_t nentries(t->GetEntriesFast()); if (debug) nentries = 10000; //restrict number of entries for testing t->GetEntry(0); diff --git a/TopAnalysis/src/MiniEvent.cc b/TopAnalysis/src/MiniEvent.cc index 708c75dc8ce..5975307ca00 100644 --- a/TopAnalysis/src/MiniEvent.cc +++ b/TopAnalysis/src/MiniEvent.cc @@ -136,7 +136,7 @@ void createMiniEventTree(TTree *t,MiniEvent_t &ev) } // -void attachToMiniEventTree(TTree *t,MiniEvent_t &ev,bool full) +void attachToMiniEventTree(TTree *t, MiniEvent_t &ev, bool full, bool treeIsData) { //event header t->SetBranchAddress("isData", &ev.isData); @@ -266,7 +266,7 @@ void attachToMiniEventTree(TTree *t,MiniEvent_t &ev,bool full) t->SetBranchAddress("met_filterBits", &ev.met_filterBits); //CTPPS local tracks - if (ev.isData) + if (treeIsData) { t->SetBranchAddress("nfwdtrk", &ev.nfwdtrk); t->SetBranchAddress("fwdtrk_arm", ev.fwdtrk_arm); From b24275517018ce86f2ad63f3774c5cff5f1cddc7 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 7 Jul 2017 10:03:39 +0200 Subject: [PATCH 006/151] Added TTree to output ROOT file --- TopAnalysis/src/FourTopsAnalyzer.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 2c23830355d..7a44e23257f 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -360,5 +360,6 @@ void RunFourTopsAnalyzer(TString filename, for (auto& it : ht.get2dPlots()) { it.second->SetDirectory(fOut); it.second->Write(); } + outTree.Write(); fOut->Close(); } From 373b825972022370e1bb707e1cb6935a2a1602ab Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 12:24:53 +0200 Subject: [PATCH 007/151] Fixed condor script to write output file in the same dir & forced pu weight to be available in all events --- TopAnalysis/scripts/runLocalAnalysis.py | 2 +- TopAnalysis/src/FourTopsAnalyzer.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index 02e9619f570..e2999ebd56e 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -202,7 +202,7 @@ def main(): with open('%s/%s.sh'%(FarmDirectory,cfgFile),'w') as cfg: cfg.write('#!/bin/bash\n') - cfg.write('WORKDIR=`pwd`\n') + cfg.write('WORKDIR=`pwd`/test/summer2017/FourTops/Chunks\n') cfg.write('echo "Working directory is ${WORKDIR}"\n') cfg.write('cd %s\n'%cmsswBase) cfg.write('eval `scram r -sh`\n') diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 7a44e23257f..fb794fea691 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -202,7 +202,7 @@ void RunFourTopsAnalyzer(TString filename, wgt = (normH? normH->GetBinContent(1) : 1.0); // pu weight - //if (puWgtGr[period][0]? false : true) continue; + if (puWgtGr[period][0]? false : true) continue; double puWgt(puWgtGr[period][0]->Eval(ev.g_pu)); std::vectorpuPlotWgts(1,puWgt); ht.fill("puwgtctr",1,puPlotWgts); From a4e464c24c30b8ae57dfcb284ae2725316233eb0 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 14:04:03 +0200 Subject: [PATCH 008/151] Fixed WORKDIR bug --- TopAnalysis/scripts/runLocalAnalysis.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index e2999ebd56e..6c171967e89 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -202,7 +202,8 @@ def main(): with open('%s/%s.sh'%(FarmDirectory,cfgFile),'w') as cfg: cfg.write('#!/bin/bash\n') - cfg.write('WORKDIR=`pwd`/test/summer2017/FourTops/Chunks\n') + cfg.write('WORKDIR=`pwd`\n') + cfg.write('WORKDIR=$WORKDIR/test/summer2017/Chunks') cfg.write('echo "Working directory is ${WORKDIR}"\n') cfg.write('cd %s\n'%cmsswBase) cfg.write('eval `scram r -sh`\n') From d0c471ead4dd5c96abbef04f95830a5d6b95cc71 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 14:14:37 +0200 Subject: [PATCH 009/151] Fixed typo --- TopAnalysis/scripts/runLocalAnalysis.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index 6c171967e89..72cfae4963b 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -203,7 +203,7 @@ def main(): cfg.write('#!/bin/bash\n') cfg.write('WORKDIR=`pwd`\n') - cfg.write('WORKDIR=$WORKDIR/test/summer2017/Chunks') + cfg.write('WORKDIR=$WORKDIR/test/summer2017/FourTops/Chunks') cfg.write('echo "Working directory is ${WORKDIR}"\n') cfg.write('cd %s\n'%cmsswBase) cfg.write('eval `scram r -sh`\n') From 69d2be13414052c01534d035012cf57d360f05c2 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 14:23:04 +0200 Subject: [PATCH 010/151] Changed to condor & fixed typo --- TopAnalysis/scripts/runLocalAnalysis.py | 2 +- TopAnalysis/test/summer2017/steerFourTops.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index 72cfae4963b..8d1a172955a 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -203,7 +203,7 @@ def main(): cfg.write('#!/bin/bash\n') cfg.write('WORKDIR=`pwd`\n') - cfg.write('WORKDIR=$WORKDIR/test/summer2017/FourTops/Chunks') + cfg.write('WORKDIR=$WORKDIR/test/summer2017/FourTops/Chunks\n') cfg.write('echo "Working directory is ${WORKDIR}"\n') cfg.write('cd %s\n'%cmsswBase) cfg.write('eval `scram r -sh`\n') diff --git a/TopAnalysis/test/summer2017/steerFourTops.sh b/TopAnalysis/test/summer2017/steerFourTops.sh index 7dffd7af87f..43c4ff0319a 100644 --- a/TopAnalysis/test/summer2017/steerFourTops.sh +++ b/TopAnalysis/test/summer2017/steerFourTops.sh @@ -28,10 +28,10 @@ NC='\e[0m' case $WHAT in SEL ) - queue=local + queue=condor python scripts/runLocalAnalysis.py -i ${eosdir} \ --only test/summer2017/4tops_samples.json --exactonly \ - -q ${queue} -o ${outdir} --njobs 8 \ + -q ${queue} -o ${outdir} \ --era era2016 -m FourTopsAnalyzer::RunFourTopsAnalyzer --ch 0 --runSysts; ;; From 9823ed729ab01bfbb961569fde78945302833bb0 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 14:38:11 +0200 Subject: [PATCH 011/151] Reverting directory change --- TopAnalysis/scripts/runLocalAnalysis.py | 1 - 1 file changed, 1 deletion(-) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index 8d1a172955a..02e9619f570 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -203,7 +203,6 @@ def main(): cfg.write('#!/bin/bash\n') cfg.write('WORKDIR=`pwd`\n') - cfg.write('WORKDIR=$WORKDIR/test/summer2017/FourTops/Chunks\n') cfg.write('echo "Working directory is ${WORKDIR}"\n') cfg.write('cd %s\n'%cmsswBase) cfg.write('eval `scram r -sh`\n') From 9d19383456d62b8dd63e10712fb86926c1c8bec9 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 15:07:46 +0200 Subject: [PATCH 012/151] Fixed output directory --- TopAnalysis/test/summer2017/steerFourTops.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/steerFourTops.sh b/TopAnalysis/test/summer2017/steerFourTops.sh index 43c4ff0319a..75388106220 100644 --- a/TopAnalysis/test/summer2017/steerFourTops.sh +++ b/TopAnalysis/test/summer2017/steerFourTops.sh @@ -19,7 +19,7 @@ lumiUnc=0.025 whoami=`whoami` myletter=${whoami:0:1} eosdir=/store/cmst3/group/top/ReReco2016/${githash} -outdir=test/summer2017/FourTops +outdir=${CMSSW_BASE}/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops wwwdir=~/www/FourTops From a14e0a7948e2cc6725dc8a62a0cba82d5e0ba2c3 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 15:12:49 +0200 Subject: [PATCH 013/151] Add logging from condor --- TopAnalysis/scripts/runLocalAnalysis.py | 1 + 1 file changed, 1 insertion(+) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index 02e9619f570..c01720eb7d2 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -189,6 +189,7 @@ def main(): condor.write('executable = {0}/$(cfgFile).sh\n'.format(FarmDirectory)) condor.write('output = {0}/output_$(cfgFile).out\n'.format(FarmDirectory)) condor.write('error = {0}/output_$(cfgFile).err\n'.format(FarmDirectory)) + condor.write('log = {0}/output_$(cfgFile).log\n'.format(FarmDirectory)) jobNb=0 for method,inF,outF,channel,charge,flav,runSysts,systVar,era,tag,debug in task_list: From a63adfdaca87a2d6ea3830226916f1483c64c92e Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 17:50:42 +0200 Subject: [PATCH 014/151] Modified limit time to longlunch (2 hrs) --- TopAnalysis/scripts/runLocalAnalysis.py | 1 + 1 file changed, 1 insertion(+) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index c01720eb7d2..faf2672ae9f 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -190,6 +190,7 @@ def main(): condor.write('output = {0}/output_$(cfgFile).out\n'.format(FarmDirectory)) condor.write('error = {0}/output_$(cfgFile).err\n'.format(FarmDirectory)) condor.write('log = {0}/output_$(cfgFile).log\n'.format(FarmDirectory)) + condor.write('+JobFlavour = "longlunch"\n') jobNb=0 for method,inF,outF,channel,charge,flav,runSysts,systVar,era,tag,debug in task_list: From 3e1fc7095a337b5ad0d369a18f0963f5b063ccee Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 10 Jul 2017 20:16:07 +0200 Subject: [PATCH 015/151] Magnify four tops process by 100. --- TopAnalysis/test/summer2017/4tops_samples.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/4tops_samples.json b/TopAnalysis/test/summer2017/4tops_samples.json index f24382a5f9c..f5623186f05 100644 --- a/TopAnalysis/test/summer2017/4tops_samples.json +++ b/TopAnalysis/test/summer2017/4tops_samples.json @@ -1,5 +1,5 @@ { -"MC13TeV_TTTT" : [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t}", "#91bfdb", true, false, 1], +"MC13TeV_TTTT" : [0.92, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} x 100", "#91bfdb", true, false, 1], "MC13TeV_TTJets2l2nu_amcatnlo": [87.31, 0, "/TTJets_Dilept_TuneCUETP8M2T4_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}#rightarrow2l", "#fc8d59", true, false, 1] } From 4b13815444bb96cb8fddb968b50401962db254e0 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 00:05:44 +0200 Subject: [PATCH 016/151] Tidy up json file --- .../test/summer2017/4tops_samples.json | 30 +++++++++++++------ 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/TopAnalysis/test/summer2017/4tops_samples.json b/TopAnalysis/test/summer2017/4tops_samples.json index f5623186f05..581c7da1b8a 100644 --- a/TopAnalysis/test/summer2017/4tops_samples.json +++ b/TopAnalysis/test/summer2017/4tops_samples.json @@ -1,10 +1,22 @@ { -"MC13TeV_TTTT" : [0.92, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} x 100", "#91bfdb", true, false, 1], -"MC13TeV_TTJets2l2nu_amcatnlo": [87.31, 0, "/TTJets_Dilept_TuneCUETP8M2T4_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}#rightarrow2l", "#fc8d59", true, false, 1] -} - - - - - - + "MC13TeV_TTTT": [ + 0.92, + 0, + "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}t#bar{t} x 100", + "#91bfdb", + true, + false, + 1 + ], + "MC13TeV_TTJets2l2nu_amcatnlo": [ + 87.31, + 0, + "/TTJets_Dilept_TuneCUETP8M2T4_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}#rightarrow2l", + "#fc8d59", + true, + false, + 1 + ] +} \ No newline at end of file From d3bf9059e1ed3300a89d642bcb9111449058f4a4 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 00:05:56 +0200 Subject: [PATCH 017/151] Fixed BDT histogram range --- TopAnalysis/src/FourTopsAnalyzer.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index fb794fea691..9c1706915ae 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -144,7 +144,7 @@ void RunFourTopsAnalyzer(TString filename, ht.addHist("njets", new TH1F("njets",";Jet multiplicity;Events",15,-0.5,14.5)); ht.addHist("nbjets", new TH1F("nbjets",";b jet multiplicity;Events",10,-0.5,9.5)); ht.addHist("nleptons", new TH1F("nleptons",";Lepton multiplicity;Events",6,-0.5,5.5)); - ht.addHist("bdt", new TH1F("bdt",";BDT;Events",50,-2,2)); + ht.addHist("bdt", new TH1F("bdt",";BDT;Events",50,-1,1)); std::cout << "init done" << std::endl; From 9866c90306dd680c019cb8185b7cfbb2b5fa221c Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 00:07:17 +0200 Subject: [PATCH 018/151] Support for Data --- TopAnalysis/src/FourTopsAnalyzer.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 9c1706915ae..756ad935705 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -118,7 +118,8 @@ void RunFourTopsAnalyzer(TString filename, TH1 *genPU=(TH1 *)f->Get("analysis/putrue"); TH1 *triggerList=(TH1 *)f->Get("analysis/triggerList"); TTree *t = (TTree*)f->Get("analysis/data"); - attachToMiniEventTree(t,ev,true,false); + if (isData) attachToMiniEventTree(t,ev,true,true); + else attachToMiniEventTree(t,ev,true,false); Int_t nentries(t->GetEntriesFast()); if (debug) nentries = 10000; //restrict number of entries for testing t->GetEntry(0); From d7c465dbc99329ad46d2519b8b4d0e0f9f5d254b Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 09:36:29 +0200 Subject: [PATCH 019/151] Added json sample file with four tops --- .../data/era2016/samples-fourtops.json | 198 ++++++++++++++++++ 1 file changed, 198 insertions(+) create mode 100644 TopAnalysis/data/era2016/samples-fourtops.json diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json new file mode 100644 index 00000000000..324956b3cfc --- /dev/null +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -0,0 +1,198 @@ +{ + "MC13TeV_TTTT": [ + 0.92, + 0, + "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}t#bar{t} x 100", + "#91bfdb", + true, + false, + 1 + ], + "MC13TeV_TTJets": [832, + 0, + "/TT_TuneCUETP8M2T4_13TeV-powheg-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}", + 0, + true, + false, + 1 + ], + "MC13TeV_SingleTbar_tW": [35.85, + 0, + "/ST_tW_antitop_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#91bfdb", + false, + false, + 1 + ], + "MC13TeV_SingleT_tW": [35.85, + 0, + "/ST_tW_top_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#91bfdb", + false, + false, + 1 + ], + "MC13TeV_SingleTbar_t": [80.95, + 0, + "/ST_t-channel_antitop_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#91bfdb", + false, + false, + 1 + ], + "MC13TeV_SingleT_t": [136.02, + 0, + "/ST_t-channel_top_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#91bfdb", + false, + false, + 1 + ], + "MC13TeV_W0Jets": [49540, 0, "/WToLNu_0J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#fee090", false, false, 1], + "MC13TeV_W1Jets": [8041, 0, "/WToLNu_1J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_backup_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "W", "#fee090", false, false, 1], + "MC13TeV_W2Jets": [3052, 0, "/WToLNu_2J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#fee090", false, false, 1], + "MC13TeV_DY50toInf_mlm": [6025.0, 0, "/DYJetsToLL_M-50_TuneCUETP8M1_13TeV-madgraphMLM-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v2/MINIAODSIM", "DY", "#fc8d59", false, false, 1], + "MC13TeV_DY10to50": [18610.0, 0, "/DYJetsToLL_M-10to50_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "DY", "#fc8d59", false, false, 1], + "MC13TeV_ZZTo2L2Nu": [0.564, + 0, + "/ZZTo2L2Nu_13TeV_powheg_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#d73027", + false, + false, + 1 + ], + "MC13TeV_ZZTo2L2Q": [3.22, + 0, + "/ZZTo2L2Q_13TeV_amcatnloFXFX_madspin_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#d73027", + false, + false, + 1 + ], + "MC13TeV_WWToLNuQQ": [49.997, + 0, + "/WWToLNuQQ_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#d73027", + false, + false, + 1 + ], + "MC13TeV_WWTo2L2Nu": [12.178, + 0, + "/WWTo2L2Nu_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#d73027", + false, + false, + 1 + ], + "MC13TeV_WZTo3LNu": [5.26, + 0, + "/WZTo3LNu_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#d73027", + false, + false, + 1 + ], + "MC13TeV_TTWToLNu": [0.2043, + 0, + "/TTWJetsToLNu_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v3/MINIAODSIM", + "t#bar{t}+V", + "#00374A", + false, + false, + 1 + ], + "MC13TeV_TTWToQQ": [0.4062, + 0, + "/TTWJetsToQQ_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}+V", + "#00374A", + false, + false, + 1 + ], + "MC13TeV_TTZToQQ": [0.5297, + 0, + "/TTZToQQ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}+V", + "#00374A", + false, + false, + 1 + ], + "MC13TeV_TTZToLLNuNu": [0.2529, + 0, + "/TTZToLLNuNu_M-10_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", + "t#bar{t}+V", + "#00374A", + false, + false, + 1 + ], + "Data_QCDMultijets": [1.0, + 0, + "", + "Multijets", + "#e0f3f8", + false, + false, + 1 + ], + + "Data13TeV_SingleMuon_2016B": [1.0, 1, "/SingleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016C": [1.0, 1, "/SingleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016D": [1.0, 1, "/SingleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016E": [1.0, 1, "/SingleMuon/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016F": [1.0, 1, "/SingleMuon/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016G": [1.0, 1, "/SingleMuon/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016Hv2": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016Hv3": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_SingleElectron_2016B": [1.0, 1, "/SingleElectron/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016C": [1.0, 1, "/SingleElectron/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016D": [1.0, 1, "/SingleElectron/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016E": [1.0, 1, "/SingleElectron/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016F": [1.0, 1, "/SingleElectron/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016G": [1.0, 1, "/SingleElectron/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016Hv2": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016Hv3": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_MuonEG_2016B": [1.0, 1, "/MuonEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016C": [1.0, 1, "/MuonEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016D": [1.0, 1, "/MuonEG/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016E": [1.0, 1, "/MuonEG/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016F": [1.0, 1, "/MuonEG/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016G": [1.0, 1, "/MuonEG/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016Hv2": [1.0, 1, "/MuonEG/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016Hv3": [1.0, 1, "/MuonEG/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_DoubleEG_2016B": [1.0, 1, "/DoubleEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016C": [1.0, 1, "/DoubleEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016D": [1.0, 1, "/DoubleEG/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016E": [1.0, 1, "/DoubleEG/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016F": [1.0, 1, "/DoubleEG/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016G": [1.0, 1, "/DoubleEG/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016Hv2": [1.0, 1, "/DoubleEG/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016Hv3": [1.0, 1, "/DoubleEG/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_DoubleMuon_2016B": [1.0, 1, "/DoubleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016C": [1.0, 1, "/DoubleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016D": [1.0, 1, "/DoubleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016E": [1.0, 1, "/DoubleMuon/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016F": [1.0, 1, "/DoubleMuon/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016G": [1.0, 1, "/DoubleMuon/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016Hv2": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016Hv3": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1] + +} \ No newline at end of file From 6571bb2bde81be04f2d386f546c785bd9279a983 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 09:44:51 +0200 Subject: [PATCH 020/151] Added job flavour option --- TopAnalysis/scripts/runLocalAnalysis.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index faf2672ae9f..8c4bcc105a2 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -62,6 +62,7 @@ def main(): parser.add_option( '--skipexisting',dest='skipexisting',help='skip jobs with existing output files [%default]', default=False, action='store_true') parser.add_option( '--exactonly', dest='exactonly', help='match only exact sample tags to process [%default]', default=False, action='store_true') parser.add_option( '--outputonly', dest='outputonly', help='filter job submission for a csv list of output files [%default]', default=None, type='string') + parser.add_option( '--jobflavour', dest='jobflavour', help='job flavour to be submitted in condor [%default]', default='longlunch', type='string') (opt, args) = parser.parse_args() #parse selection lists @@ -190,7 +191,7 @@ def main(): condor.write('output = {0}/output_$(cfgFile).out\n'.format(FarmDirectory)) condor.write('error = {0}/output_$(cfgFile).err\n'.format(FarmDirectory)) condor.write('log = {0}/output_$(cfgFile).log\n'.format(FarmDirectory)) - condor.write('+JobFlavour = "longlunch"\n') + condor.write('+JobFlavour = "%s"\n'%opt.jobflavour) jobNb=0 for method,inF,outF,channel,charge,flav,runSysts,systVar,era,tag,debug in task_list: From e18d2aa5dd3451b262d622c3668fcaaa7baa2a71 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 09:57:34 +0200 Subject: [PATCH 021/151] Added SELALL and PLOTALL option --- TopAnalysis/test/summer2017/steerFourTops.sh | 38 +++++++++++++------- 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/TopAnalysis/test/summer2017/steerFourTops.sh b/TopAnalysis/test/summer2017/steerFourTops.sh index 75388106220..29566784dfc 100644 --- a/TopAnalysis/test/summer2017/steerFourTops.sh +++ b/TopAnalysis/test/summer2017/steerFourTops.sh @@ -29,22 +29,36 @@ case $WHAT in SEL ) queue=condor - python scripts/runLocalAnalysis.py -i ${eosdir} \ + python scripts/runLocalAnalysis.py -i ${eosdir} \ --only test/summer2017/4tops_samples.json --exactonly \ - -q ${queue} -o ${outdir} \ + -q ${queue} -o ${outdir} --jobflavour longlunch\ --era era2016 -m FourTopsAnalyzer::RunFourTopsAnalyzer --ch 0 --runSysts; - ;; + ;; + + SELALL ) + python scripts/runLocalAnalysis.py -i ${eosdir} \ + --only data/era2016/samples-fourtops.json --exactonly \ + -q condor -o ${outdir} --jobflavour workday\ + --era era2016 -m FourTopsAnalyzer::RunFourTopsAnalyzer --ch 0 --runSysts; + ;; MERGE ) - ./scripts/mergeOutputs.py ${outdir}; - ;; + ./scripts/mergeOutputs.py ${outdir}; + ;; + PLOT ) - commonOpts="-i ${outdir} --puNormSF puwgtctr -j test/summer2017/4tops_samples.json -l ${lumi} --saveLog --mcUnc ${lumiUnc} --noStack" - python scripts/plotter.py ${commonOpts}; - ;; + commonOpts="-i ${outdir} --puNormSF puwgtctr -j test/summer2017/4tops_samples.json -l ${lumi} --saveLog --mcUnc ${lumiUnc} --noStack" + python scripts/plotter.py ${commonOpts}; + ;; + + PLOTALL ) + commonOpts="-i ${outdir} --puNormSF puwgtctr -j data/era2016/samples-fourtops.json -l ${lumi} --saveLog --mcUnc ${lumiUnc} --noStack" + python scripts/plotter.py ${commonOpts}; + ;; + WWW ) - mkdir -p ${wwwdir}/sel - cp ${outdir}/plots/*.{png,pdf} ${wwwdir}/sel - cp test/index.php ${wwwdir}/sel - ;; + mkdir -p ${wwwdir}/sel + cp ${outdir}/plots/*.{png,pdf} ${wwwdir}/sel + cp test/index.php ${wwwdir}/sel + ;; esac From a642866a24adbad473aa6418c71b1b7028163da8 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 13:53:53 +0200 Subject: [PATCH 022/151] Fixed TTJets histogram color --- TopAnalysis/data/era2016/samples-fourtops.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index 324956b3cfc..7901403a414 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -13,7 +13,7 @@ 0, "/TT_TuneCUETP8M2T4_13TeV-powheg-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}", - 0, + "#386987", true, false, 1 From 39cc1634a249cace5c030fef422b964767a93146 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 14:24:53 +0200 Subject: [PATCH 023/151] Allow histogram stacking for PLOTALL option --- TopAnalysis/test/summer2017/steerFourTops.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/steerFourTops.sh b/TopAnalysis/test/summer2017/steerFourTops.sh index 29566784dfc..d30625b4ffe 100644 --- a/TopAnalysis/test/summer2017/steerFourTops.sh +++ b/TopAnalysis/test/summer2017/steerFourTops.sh @@ -52,7 +52,7 @@ case $WHAT in ;; PLOTALL ) - commonOpts="-i ${outdir} --puNormSF puwgtctr -j data/era2016/samples-fourtops.json -l ${lumi} --saveLog --mcUnc ${lumiUnc} --noStack" + commonOpts="-i ${outdir} --puNormSF puwgtctr -j data/era2016/samples-fourtops.json -l ${lumi} --saveLog --mcUnc ${lumiUnc}" python scripts/plotter.py ${commonOpts}; ;; From b7fea0ab0770182ad598808bf66de50d538e12fe Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 14:42:26 +0200 Subject: [PATCH 024/151] Removed singleElectron and SingleMuon data from analysis --- TopAnalysis/data/era2016/samples-fourtops.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index 7901403a414..b81a2e29ce8 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -150,6 +150,7 @@ 1 ], + /* "Data13TeV_SingleMuon_2016B": [1.0, 1, "/SingleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_SingleMuon_2016C": [1.0, 1, "/SingleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_SingleMuon_2016D": [1.0, 1, "/SingleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], @@ -167,6 +168,7 @@ "Data13TeV_SingleElectron_2016G": [1.0, 1, "/SingleElectron/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_SingleElectron_2016Hv2": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_SingleElectron_2016Hv3": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + */ "Data13TeV_MuonEG_2016B": [1.0, 1, "/MuonEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_MuonEG_2016C": [1.0, 1, "/MuonEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], From fa05f4a63804ee3776e4d832d45b902eaa674cfa Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 14:45:22 +0200 Subject: [PATCH 025/151] json does not support commenting --- .../data/era2016/samples-fourtops.json | 20 ------------------- 1 file changed, 20 deletions(-) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index b81a2e29ce8..f3ff1ebbd43 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -150,26 +150,6 @@ 1 ], - /* - "Data13TeV_SingleMuon_2016B": [1.0, 1, "/SingleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleMuon_2016C": [1.0, 1, "/SingleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleMuon_2016D": [1.0, 1, "/SingleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleMuon_2016E": [1.0, 1, "/SingleMuon/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleMuon_2016F": [1.0, 1, "/SingleMuon/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleMuon_2016G": [1.0, 1, "/SingleMuon/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleMuon_2016Hv2": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleMuon_2016Hv3": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], - - "Data13TeV_SingleElectron_2016B": [1.0, 1, "/SingleElectron/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleElectron_2016C": [1.0, 1, "/SingleElectron/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleElectron_2016D": [1.0, 1, "/SingleElectron/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleElectron_2016E": [1.0, 1, "/SingleElectron/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleElectron_2016F": [1.0, 1, "/SingleElectron/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleElectron_2016G": [1.0, 1, "/SingleElectron/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleElectron_2016Hv2": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], - "Data13TeV_SingleElectron_2016Hv3": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], - */ - "Data13TeV_MuonEG_2016B": [1.0, 1, "/MuonEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_MuonEG_2016C": [1.0, 1, "/MuonEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_MuonEG_2016D": [1.0, 1, "/MuonEG/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], From 897d344ffed8bbab9743136db8ca6a64a61bd10a Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 15:06:31 +0200 Subject: [PATCH 026/151] Add TMVA training code --- .../summer2017/FourTops/FourTopsTMVA_606.cpp | 87 +++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp new file mode 100644 index 00000000000..b7d1a48f215 --- /dev/null +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -0,0 +1,87 @@ +#include +#include + +#include "TFile.h" +#include "TTree.h" +#include "TString.h" +#include "TROOT.h" + +#include "TMVA/Tools.h" + +void FourTopsTMVA_606() +{ + TMVA::Tools::Instance(); + + (TMVA::gConfig().GetVariablePlotting()).fMaxNumOfAllowedVariablesForScatterPlots = 1000; + + TChain *TTChain = new TChain("TMVAanalysis"); + TChain *FourTopsChain = new TChain("TMVAanalysis"); + + TTChain->Add("MC13TeV_TTJets2l2nu_amcatnlo.root"); + FourTopsChain->Add("MC13TeV_TTTT.root"); + + printf("TTChain = %lld events\n",TTChain->GetEntries()); + printf("FourTopsChain = %lld events\n",FourTopsChain->GetEntries()); + getchar(); + + TString outFileName("FourTopsTMVA_out.root"); + TFile *outFile = new TFile(outFileName, "RECREATE"); + + TMVA::Factory *factory = new TMVA::Factory("FourTopsML", outFile, "V:Color"); + + factory->AddSignalTree(FourTopsChain, 1.0); + factory->AddBackgroundTree(TTChain, 1.0); + + factory->AddVariable("jet_1_highest_csv",'F'); + factory->AddVariable("jet_2_highest_csv",'F'); + factory->AddVariable("jet_3_highest_csv",'F'); + factory->AddVariable("jet_4_highest_csv",'F'); + // TODO: Add number of jets, b-jets, leptons + factory->AddVariable("jet_ht",'F'); + factory->AddVariable("jet_btag_ht",'F'); + factory->AddVariable("jet_non_btag_ht",'F'); + factory->AddVariable("jet_smallest_angle",'F'); + factory->AddVariable("jet_smallest_angle_2b",'F'); + + factory->AddVariable("lepton_ht",'F'); + factory->AddVariable("lepton_3_chIso",'F'); + factory->AddVariable("lepton_4_chIso",'F'); + factory->AddVariable("lepton_3_minIso",'F'); + factory->AddVariable("lepton_4_minIso",'F'); + + factory->AddVariable("met_pt",'F'); + + factory->AddVariable("n_jets",'F'); + factory->AddVariable("n_bjets",'F'); + factory->AddVariable("n_leptons",'F'); + + TCut mycuts = ""; // Signal cut + TCut mycutb = ""; // Background cut + + factory->PrepareTrainingAndTestTree(mycuts, mycutb, "SplitMode=Random:V"); + + //factory->BookMethod(TMVA::Types::kLikelihood,"LikelihoodD","!H:!V:!TransformOutput:PDFInterpol=Spline2:NSmoothSig[0]=20:NSmoothBkg[0]=20:NSmooth=5:VarTransform=Decorrelate"); + //factory->BookMethod(TMVA::Types::kCuts,"Cuts","V:VarTransform=N"); // Cuts + //factory->BookMethod(TMVA::Types::kLikelihood,"Likelihood","V:VarTransform=N"); // Projective likelihood estimator + //factory->BookMethod(TMVA::Types::kPDERS,"PDERS","V:VarTransform=N"); // PDE range-search approach + //factory->BookMethod(TMVA::Types::kPDEFoam,"PDEFoam","V"); // PDE-Foam + //factory->BookMethod(TMVA::Types::kKNN,"kNN","V:VarTransform=N"); // k-Nearest Neighbour classifier + //factory->BookMethod(TMVA::Types::kHMatrix,"HMatrix","V"); // H-Matrix discriminant + //factory->BookMethod(TMVA::Types::kFisher,"Fisher","V"); // Fisher discriminants (linear discriminant analysis) + //factory->BookMethod(TMVA::Types::kFDA,"FDA","V"); // Function discriminant analysis (FDA) + //factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:NeuronType=tanh:VarTransform=N:NCycles=1000:HiddenLayers=N+10,N"); // ROOT neural network + //factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=N"); // ROOT neural network + //factory->BookMethod(TMVA::Types::kSVM,"SVM","V:VarTransform=N"); // Support Vector Machine + factory->BookMethod(TMVA::Types::kBDT,"BDT","V"); // Boosted Decision Tree + //factory->BookMethod(TMVA::Types::kRuleFit,"RuleFit","V"); // Predictive learning via rule ensembles + + factory->OptimizeAllMethodsForClassification(); // Takes too much time! + factory->TrainAllMethods(); + factory->TestAllMethods(); + + factory->EvaluateAllMethods(); + + outFile->Close(); + + TMVA::TMVAGui(outFileName); +} From d29a80485d6abeae84d0dbbdd583f60fe0a57844 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 15:07:47 +0200 Subject: [PATCH 027/151] Recovering back SingleMuon and SingleElectron dataset --- TopAnalysis/data/era2016/samples-fourtops.json | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index f3ff1ebbd43..7901403a414 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -150,6 +150,24 @@ 1 ], + "Data13TeV_SingleMuon_2016B": [1.0, 1, "/SingleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016C": [1.0, 1, "/SingleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016D": [1.0, 1, "/SingleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016E": [1.0, 1, "/SingleMuon/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016F": [1.0, 1, "/SingleMuon/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016G": [1.0, 1, "/SingleMuon/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016Hv2": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016Hv3": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_SingleElectron_2016B": [1.0, 1, "/SingleElectron/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016C": [1.0, 1, "/SingleElectron/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016D": [1.0, 1, "/SingleElectron/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016E": [1.0, 1, "/SingleElectron/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016F": [1.0, 1, "/SingleElectron/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016G": [1.0, 1, "/SingleElectron/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016Hv2": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016Hv3": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016B": [1.0, 1, "/MuonEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_MuonEG_2016C": [1.0, 1, "/MuonEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_MuonEG_2016D": [1.0, 1, "/MuonEG/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], From 7954601d31c2c2bba43ba5f52511aaf624800614 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 11 Jul 2017 15:15:21 +0200 Subject: [PATCH 028/151] Updated TMVA training script --- .../summer2017/FourTops/FourTopsTMVA_606.cpp | 38 +++++++++++++++---- 1 file changed, 31 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index b7d1a48f215..19e19a145c7 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -14,15 +14,34 @@ void FourTopsTMVA_606() (TMVA::gConfig().GetVariablePlotting()).fMaxNumOfAllowedVariablesForScatterPlots = 1000; - TChain *TTChain = new TChain("TMVAanalysis"); - TChain *FourTopsChain = new TChain("TMVAanalysis"); + TChain *FourTopsChain = new TChain("TMVAanalysis"); + TChain *TTChain = new TChain("TMVAanalysis"); + TChain *SingleTopChain = new TChain("TMVAanalysis"); + TChain *WChain = new TChain("TMVAanalysis"); + TChain *DYChain = new TChain("TMVAanalysis"); + TChain *BosonChain = new TChain("TMVAanalysis"); + TChain *ToNuChain = new TChain("TMVAanalysis"); - TTChain->Add("MC13TeV_TTJets2l2nu_amcatnlo.root"); FourTopsChain->Add("MC13TeV_TTTT.root"); - - printf("TTChain = %lld events\n",TTChain->GetEntries()); - printf("FourTopsChain = %lld events\n",FourTopsChain->GetEntries()); - getchar(); + TTChain->Add("MC13TeV_TTJets2l2nu_amcatnlo.root"); + SingleTopChain->Add("MC13TeV_SingleTbar_tW.root"); + SingleTopChain->Add("MC13TeV_SingleT_tW.root"); + SingleTopChain->Add("MC13TeV_SingleTbar_t.root"); + SingleTopChain->Add("MC13TeV_SingleT_t.root"); + WChain->Add("MC13TeV_W0Jets.root"); + WChain->Add("MC13TeV_W1Jets.root"); + WChain->Add("MC13TeV_W2Jets.root"); + DYChain->Add("MC13TeV_DY50toInf_mlm.root"); + DYChain->Add("MC13TeV_DY10to50.root"); + BosonChain->Add("MC13TeV_ZZTo2L2Nu.root"); + BosonChain->Add("MC13TeV_ZZTo2L2Q.root"); + BosonChain->Add("MC13TeV_WWToLNuQQ.root"); + BosonChain->Add("MC13TeV_WWTo2L2Nu.root"); + BosonChain->Add("MC13TeV_WZTo3LNu.root"); + ToNuChain->Add("MC13TeV_TTWToLNu.root"); + ToNuChain->Add("MC13TeV_TTWToQQ.root"); + ToNuChain->Add("MC13TeV_TTZToQQ.root"); + ToNuChain->Add("MC13TeV_TTZToLLNuNu.root"); TString outFileName("FourTopsTMVA_out.root"); TFile *outFile = new TFile(outFileName, "RECREATE"); @@ -31,6 +50,11 @@ void FourTopsTMVA_606() factory->AddSignalTree(FourTopsChain, 1.0); factory->AddBackgroundTree(TTChain, 1.0); + factory->AddBackgroundTree(SingleTopChain, 1.0); + factory->AddBackgroundTree(WChain, 1.0); + factory->AddBackgroundTree(DYChain, 1.0); + factory->AddBackgroundTree(BosonChain, 1.0); + factory->AddBackgroundTree(ToNuChain, 1.0); factory->AddVariable("jet_1_highest_csv",'F'); factory->AddVariable("jet_2_highest_csv",'F'); From d80f00e9d1d3bcdcf7ab8f741374291cba57423e Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 12 Jul 2017 00:27:02 +0200 Subject: [PATCH 029/151] Fixed colour for signal and background datasets --- .../data/era2016/samples-fourtops.json | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index 7901403a414..985c8caac4a 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -4,7 +4,7 @@ 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} x 100", - "#91bfdb", + "#0037AD", true, false, 1 @@ -13,7 +13,7 @@ 0, "/TT_TuneCUETP8M2T4_13TeV-powheg-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}", - "#386987", + "#D8000A", true, false, 1 @@ -22,7 +22,7 @@ 0, "/ST_tW_antitop_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Single top", - "#91bfdb", + "#E02619", false, false, 1 @@ -31,7 +31,7 @@ 0, "/ST_tW_top_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Single top", - "#91bfdb", + "#E02619", false, false, 1 @@ -40,7 +40,7 @@ 0, "/ST_t-channel_antitop_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Single top", - "#91bfdb", + "#E02619", false, false, 1 @@ -49,21 +49,21 @@ 0, "/ST_t-channel_top_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Single top", - "#91bfdb", + "#E02619", false, false, 1 ], - "MC13TeV_W0Jets": [49540, 0, "/WToLNu_0J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#fee090", false, false, 1], - "MC13TeV_W1Jets": [8041, 0, "/WToLNu_1J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_backup_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "W", "#fee090", false, false, 1], - "MC13TeV_W2Jets": [3052, 0, "/WToLNu_2J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#fee090", false, false, 1], - "MC13TeV_DY50toInf_mlm": [6025.0, 0, "/DYJetsToLL_M-50_TuneCUETP8M1_13TeV-madgraphMLM-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v2/MINIAODSIM", "DY", "#fc8d59", false, false, 1], - "MC13TeV_DY10to50": [18610.0, 0, "/DYJetsToLL_M-10to50_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "DY", "#fc8d59", false, false, 1], + "MC13TeV_W0Jets": [49540, 0, "/WToLNu_0J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#E74431", false, false, 1], + "MC13TeV_W1Jets": [8041, 0, "/WToLNu_1J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_backup_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "W", "#E74431", false, false, 1], + "MC13TeV_W2Jets": [3052, 0, "/WToLNu_2J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#E74431", false, false, 1], + "MC13TeV_DY50toInf_mlm": [6025.0, 0, "/DYJetsToLL_M-50_TuneCUETP8M1_13TeV-madgraphMLM-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v2/MINIAODSIM", "DY", "#EB5946", false, false, 1], + "MC13TeV_DY10to50": [18610.0, 0, "/DYJetsToLL_M-10to50_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "DY", "#EB5946", false, false, 1], "MC13TeV_ZZTo2L2Nu": [0.564, 0, "/ZZTo2L2Nu_13TeV_powheg_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#d73027", + "#EF725F", false, false, 1 @@ -72,7 +72,7 @@ 0, "/ZZTo2L2Q_13TeV_amcatnloFXFX_madspin_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#d73027", + "#EF725F", false, false, 1 @@ -81,7 +81,7 @@ 0, "/WWToLNuQQ_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#d73027", + "#EF725F", false, false, 1 @@ -90,7 +90,7 @@ 0, "/WWTo2L2Nu_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#d73027", + "#EF725F", false, false, 1 @@ -99,7 +99,7 @@ 0, "/WZTo3LNu_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#d73027", + "#EF725F", false, false, 1 @@ -108,7 +108,7 @@ 0, "/TTWJetsToLNu_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v3/MINIAODSIM", "t#bar{t}+V", - "#00374A", + "#F28E7C", false, false, 1 @@ -117,7 +117,7 @@ 0, "/TTWJetsToQQ_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}+V", - "#00374A", + "#F28E7C", false, false, 1 @@ -126,7 +126,7 @@ 0, "/TTZToQQ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}+V", - "#00374A", + "#F28E7C", false, false, 1 @@ -135,7 +135,7 @@ 0, "/TTZToLLNuNu_M-10_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "t#bar{t}+V", - "#00374A", + "#F28E7C", false, false, 1 From 8fc04e11a0b29489093bd90f133c9913915341a3 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 12 Jul 2017 11:17:50 +0200 Subject: [PATCH 030/151] Fixed histogram colour --- .../data/era2016/samples-fourtops.json | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index 985c8caac4a..7701d24a402 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -13,7 +13,7 @@ 0, "/TT_TuneCUETP8M2T4_13TeV-powheg-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}", - "#D8000A", + "#F0C600", true, false, 1 @@ -22,7 +22,7 @@ 0, "/ST_tW_antitop_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Single top", - "#E02619", + "#FA410C", false, false, 1 @@ -31,7 +31,7 @@ 0, "/ST_tW_top_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Single top", - "#E02619", + "#FA410C", false, false, 1 @@ -40,7 +40,7 @@ 0, "/ST_t-channel_antitop_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Single top", - "#E02619", + "#FA410C", false, false, 1 @@ -49,21 +49,21 @@ 0, "/ST_t-channel_top_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Single top", - "#E02619", + "#FA410C", false, false, 1 ], - "MC13TeV_W0Jets": [49540, 0, "/WToLNu_0J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#E74431", false, false, 1], - "MC13TeV_W1Jets": [8041, 0, "/WToLNu_1J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_backup_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "W", "#E74431", false, false, 1], - "MC13TeV_W2Jets": [3052, 0, "/WToLNu_2J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#E74431", false, false, 1], - "MC13TeV_DY50toInf_mlm": [6025.0, 0, "/DYJetsToLL_M-50_TuneCUETP8M1_13TeV-madgraphMLM-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v2/MINIAODSIM", "DY", "#EB5946", false, false, 1], - "MC13TeV_DY10to50": [18610.0, 0, "/DYJetsToLL_M-10to50_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "DY", "#EB5946", false, false, 1], + "MC13TeV_W0Jets": [49540, 0, "/WToLNu_0J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_W1Jets": [8041, 0, "/WToLNu_1J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_backup_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_W2Jets": [3052, 0, "/WToLNu_2J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_DY50toInf_mlm": [6025.0, 0, "/DYJetsToLL_M-50_TuneCUETP8M1_13TeV-madgraphMLM-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v2/MINIAODSIM", "DY", "#0CAFFA", false, false, 1], + "MC13TeV_DY10to50": [18610.0, 0, "/DYJetsToLL_M-10to50_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "DY", "#0CAFFA", false, false, 1], "MC13TeV_ZZTo2L2Nu": [0.564, 0, "/ZZTo2L2Nu_13TeV_powheg_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#EF725F", + "#0DF000", false, false, 1 @@ -72,7 +72,7 @@ 0, "/ZZTo2L2Q_13TeV_amcatnloFXFX_madspin_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#EF725F", + "#0DF000", false, false, 1 @@ -81,7 +81,7 @@ 0, "/WWToLNuQQ_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#EF725F", + "#0DF000", false, false, 1 @@ -90,7 +90,7 @@ 0, "/WWTo2L2Nu_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#EF725F", + "#0DF000", false, false, 1 @@ -99,7 +99,7 @@ 0, "/WZTo3LNu_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Multiboson", - "#EF725F", + "#0DF000", false, false, 1 @@ -108,7 +108,7 @@ 0, "/TTWJetsToLNu_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v3/MINIAODSIM", "t#bar{t}+V", - "#F28E7C", + "#F600FA", false, false, 1 @@ -117,7 +117,7 @@ 0, "/TTWJetsToQQ_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}+V", - "#F28E7C", + "#F600FA", false, false, 1 @@ -126,7 +126,7 @@ 0, "/TTZToQQ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}+V", - "#F28E7C", + "#F600FA", false, false, 1 @@ -135,7 +135,7 @@ 0, "/TTZToLLNuNu_M-10_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "t#bar{t}+V", - "#F28E7C", + "#F600FA", false, false, 1 @@ -195,4 +195,4 @@ "Data13TeV_DoubleMuon_2016Hv2": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_DoubleMuon_2016Hv3": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1] -} \ No newline at end of file +} From dcdb86efd5ffe7cc62c855c87b0d7f53d3031329 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 12 Jul 2017 11:44:52 +0200 Subject: [PATCH 031/151] Relaxing some conditions --- TopAnalysis/src/FourTopsAnalyzer.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 756ad935705..dd3a086ccec 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -203,7 +203,7 @@ void RunFourTopsAnalyzer(TString filename, wgt = (normH? normH->GetBinContent(1) : 1.0); // pu weight - if (puWgtGr[period][0]? false : true) continue; + //if (puWgtGr[period][0]? false : true) continue; double puWgt(puWgtGr[period][0]->Eval(ev.g_pu)); std::vectorpuPlotWgts(1,puWgt); ht.fill("puwgtctr",1,puPlotWgts); From 1e59e72ffdb2e1e26218a0229539f468824ae6f3 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 13 Jul 2017 15:17:12 +0200 Subject: [PATCH 032/151] Changed job flavour to tomorrow --- TopAnalysis/test/summer2017/steerFourTops.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/steerFourTops.sh b/TopAnalysis/test/summer2017/steerFourTops.sh index d30625b4ffe..1b3212b2552 100644 --- a/TopAnalysis/test/summer2017/steerFourTops.sh +++ b/TopAnalysis/test/summer2017/steerFourTops.sh @@ -38,7 +38,7 @@ case $WHAT in SELALL ) python scripts/runLocalAnalysis.py -i ${eosdir} \ --only data/era2016/samples-fourtops.json --exactonly \ - -q condor -o ${outdir} --jobflavour workday\ + -q condor -o ${outdir} --jobflavour tomorrow\ --era era2016 -m FourTopsAnalyzer::RunFourTopsAnalyzer --ch 0 --runSysts; ;; From 3c22db656ae69d62610f698fb4df0400c98deeff Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 14 Jul 2017 10:07:33 +0200 Subject: [PATCH 033/151] Added number of mu+, mu-, ele+, and ele- --- TopAnalysis/src/FourTopsAnalyzer.cc | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index dd3a086ccec..9276b43bebd 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -61,6 +61,10 @@ void RunFourTopsAnalyzer(TString filename, Float_t n_jets; Float_t n_bjets; Float_t n_leptons; + Float_t n_mu_p; + Float_t n_mu_m; + Float_t n_ele_p; + Float_t n_ele_m; Float_t event_weight; @@ -106,6 +110,11 @@ void RunFourTopsAnalyzer(TString filename, outTree.Branch("n_bjets",&n_bjets,"n_bjets/F"); outTree.Branch("n_leptons",&n_leptons,"n_leptons/F"); + outTree.Branch("n_mu_p",&n_mu_p,"n_mu_p/F"); + outTree.Branch("n_mu_m",&n_mu_m,"n_mu_m/F"); + outTree.Branch("n_ele_p",&n_ele_p,"n_ele_p/F"); + outTree.Branch("n_ele_m",&n_ele_m,"n_ele_m/F"); + //PREPARE OUTPUT TString baseName=gSystem->BaseName(outname); TString dirName=gSystem->DirName(outname); @@ -249,6 +258,19 @@ void RunFourTopsAnalyzer(TString filename, n_bjets = (float) sel_nbjets; n_leptons = (float) leptons.size(); + n_mu_p = 0.; + n_mu_m = 0.; + n_ele_p = 0.; + n_ele_m = 0.; + + for (size_t i=0;i 0.) n_mu_p++; + else if (leptons[i].id() == 13 && leptons[i].charge() < 0.) n_mu_m++; + else if (leptons[i].id() == 11 && leptons[i].charge() > 0.) n_ele_p++; + else if (leptons[i].id() == 11 && leptons[i].charge() < 0.) n_ele_m++; + } + // Fill only lepton with highest pt lepton_3_chIso = 0.; From ea20330c355aee9ea4169e2d2616ae0b9c80b92f Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 14 Jul 2017 14:25:40 +0200 Subject: [PATCH 034/151] Added new variables and enabled neural network training --- TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index 19e19a145c7..86e89263b3d 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -79,6 +79,11 @@ void FourTopsTMVA_606() factory->AddVariable("n_bjets",'F'); factory->AddVariable("n_leptons",'F'); + factory->AddVariable("n_mu_p",'F'); + factory->AddVariable("n_mu_m",'F'); + factory->AddVariable("n_ele_p",'F'); + factory->AddVariable("n_ele_m",'F'); + TCut mycuts = ""; // Signal cut TCut mycutb = ""; // Background cut @@ -94,7 +99,7 @@ void FourTopsTMVA_606() //factory->BookMethod(TMVA::Types::kFisher,"Fisher","V"); // Fisher discriminants (linear discriminant analysis) //factory->BookMethod(TMVA::Types::kFDA,"FDA","V"); // Function discriminant analysis (FDA) //factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:NeuronType=tanh:VarTransform=N:NCycles=1000:HiddenLayers=N+10,N"); // ROOT neural network - //factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=N"); // ROOT neural network + factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=N"); // ROOT neural network //factory->BookMethod(TMVA::Types::kSVM,"SVM","V:VarTransform=N"); // Support Vector Machine factory->BookMethod(TMVA::Types::kBDT,"BDT","V"); // Boosted Decision Tree //factory->BookMethod(TMVA::Types::kRuleFit,"RuleFit","V"); // Predictive learning via rule ensembles From 4ded864a9f7826f4fddaab8264987fddb90e8c96 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 14 Jul 2017 14:26:08 +0200 Subject: [PATCH 035/151] Added condor script for TMVA training on condor --- TopAnalysis/test/summer2017/condor_TMVA.sub | 6 ++++++ TopAnalysis/test/summer2017/condor_TMVATrain.sh | 5 +++++ 2 files changed, 11 insertions(+) create mode 100644 TopAnalysis/test/summer2017/condor_TMVA.sub create mode 100644 TopAnalysis/test/summer2017/condor_TMVATrain.sh diff --git a/TopAnalysis/test/summer2017/condor_TMVA.sub b/TopAnalysis/test/summer2017/condor_TMVA.sub new file mode 100644 index 00000000000..a37ec1c05aa --- /dev/null +++ b/TopAnalysis/test/summer2017/condor_TMVA.sub @@ -0,0 +1,6 @@ +executable = /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/condor_TMVATrain.sh +output = /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/condor_TMVATrain.out +error = /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/condor_TMVATrain.err +log = /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/condor_TMVATrain.log ++JobFlavour = "tomorrow" +queue 1 \ No newline at end of file diff --git a/TopAnalysis/test/summer2017/condor_TMVATrain.sh b/TopAnalysis/test/summer2017/condor_TMVATrain.sh new file mode 100644 index 00000000000..7db9ba1ef28 --- /dev/null +++ b/TopAnalysis/test/summer2017/condor_TMVATrain.sh @@ -0,0 +1,5 @@ +#!/bin/bash +cd /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28 +eval `scram r -sh` +cd src/TopLJets2015/TopAnalysis/test/summer2017 +root -l -q FourTopsTMVA_606.cpp \ No newline at end of file From f4fa06be7dcc85ee1265bc5d0405f95955bb9ea0 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 14 Jul 2017 15:09:32 +0200 Subject: [PATCH 036/151] Change variable name from treeIsData to hasCTPPS for older dataset support --- TopAnalysis/interface/MiniEvent.h | 2 +- TopAnalysis/src/MiniEvent.cc | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/TopAnalysis/interface/MiniEvent.h b/TopAnalysis/interface/MiniEvent.h index 2207941f1fb..9681f91e814 100644 --- a/TopAnalysis/interface/MiniEvent.h +++ b/TopAnalysis/interface/MiniEvent.h @@ -64,6 +64,6 @@ struct MiniEvent_t }; void createMiniEventTree(TTree *t,MiniEvent_t &ev); -void attachToMiniEventTree(TTree *t, MiniEvent_t &ev, bool full = false, bool treeIsData = true); +void attachToMiniEventTree(TTree *t, MiniEvent_t &ev, bool full = false, bool hasCTPPS = true); #endif diff --git a/TopAnalysis/src/MiniEvent.cc b/TopAnalysis/src/MiniEvent.cc index 5975307ca00..5b9830925c3 100644 --- a/TopAnalysis/src/MiniEvent.cc +++ b/TopAnalysis/src/MiniEvent.cc @@ -136,7 +136,7 @@ void createMiniEventTree(TTree *t,MiniEvent_t &ev) } // -void attachToMiniEventTree(TTree *t, MiniEvent_t &ev, bool full, bool treeIsData) +void attachToMiniEventTree(TTree *t, MiniEvent_t &ev, bool full, bool hasCTPPS) { //event header t->SetBranchAddress("isData", &ev.isData); @@ -266,7 +266,7 @@ void attachToMiniEventTree(TTree *t, MiniEvent_t &ev, bool full, bool treeIsData t->SetBranchAddress("met_filterBits", &ev.met_filterBits); //CTPPS local tracks - if (treeIsData) + if (hasCTPPS) { t->SetBranchAddress("nfwdtrk", &ev.nfwdtrk); t->SetBranchAddress("fwdtrk_arm", ev.fwdtrk_arm); From de26ad6ade66367c263a512307044d1e436d84b1 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 14 Jul 2017 15:10:08 +0200 Subject: [PATCH 037/151] Implying that all datasets used has no CTPPS variable --- TopAnalysis/src/FourTopsAnalyzer.cc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 9276b43bebd..1f35795a31f 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -127,8 +127,7 @@ void RunFourTopsAnalyzer(TString filename, TH1 *genPU=(TH1 *)f->Get("analysis/putrue"); TH1 *triggerList=(TH1 *)f->Get("analysis/triggerList"); TTree *t = (TTree*)f->Get("analysis/data"); - if (isData) attachToMiniEventTree(t,ev,true,true); - else attachToMiniEventTree(t,ev,true,false); + attachToMiniEventTree(t,ev,true,false); Int_t nentries(t->GetEntriesFast()); if (debug) nentries = 10000; //restrict number of entries for testing t->GetEntry(0); From 2a9ed2fff8dd73de7ea95df8288e83e0458291ae Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 14 Jul 2017 15:39:11 +0200 Subject: [PATCH 038/151] Fixed TMVA training code location --- TopAnalysis/test/summer2017/condor_TMVATrain.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/condor_TMVATrain.sh b/TopAnalysis/test/summer2017/condor_TMVATrain.sh index 7db9ba1ef28..e2d7d19bd75 100644 --- a/TopAnalysis/test/summer2017/condor_TMVATrain.sh +++ b/TopAnalysis/test/summer2017/condor_TMVATrain.sh @@ -1,5 +1,5 @@ #!/bin/bash cd /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28 eval `scram r -sh` -cd src/TopLJets2015/TopAnalysis/test/summer2017 +cd src/TopLJets2015/TopAnalysis/test/summer2017/FourTops root -l -q FourTopsTMVA_606.cpp \ No newline at end of file From c1bf200183f8ae97ea809b01e1d4992ecc9a0e6c Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 14 Jul 2017 16:15:25 +0200 Subject: [PATCH 039/151] Fixed TTJets file name --- TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index 86e89263b3d..5a6a73ac465 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -23,7 +23,7 @@ void FourTopsTMVA_606() TChain *ToNuChain = new TChain("TMVAanalysis"); FourTopsChain->Add("MC13TeV_TTTT.root"); - TTChain->Add("MC13TeV_TTJets2l2nu_amcatnlo.root"); + TTChain->Add("MC13TeV_TTJets.root"); SingleTopChain->Add("MC13TeV_SingleTbar_tW.root"); SingleTopChain->Add("MC13TeV_SingleT_tW.root"); SingleTopChain->Add("MC13TeV_SingleTbar_t.root"); From c3591b5ce15062bc0ee0f6997e0aa8b813c26f92 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Sat, 15 Jul 2017 13:01:56 +0200 Subject: [PATCH 040/151] Updated genweights.root from pfs/TopLJets2015 --- TopAnalysis/data/era2016/genweights.root | Bin 233733 -> 37898 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/TopAnalysis/data/era2016/genweights.root b/TopAnalysis/data/era2016/genweights.root index eac41dea2cc3a20d22d53c4a7f8ccf70ffda1f53..2f162680ce74af55f3785daa822e6ad929a2127e 100644 GIT binary patch literal 37898 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
YXZ<|+-`U=rXisZQ#|4P7Td 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 literal 233733 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�n#&pGy$KAZze;*2q4nH8F+Y; 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 Date: Sat, 15 Jul 2017 13:05:36 +0200 Subject: [PATCH 041/151] Added more MC samples --- .../data/era2016/samples-fourtops.json | 25 ++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index 7701d24a402..ff5c55fc6f9 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -140,6 +140,29 @@ false, 1 ], + + "MC13TeV_tZq": [1.256, 0, "/tZq_ll_4f_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_ZZ4L": [1.256, 0, "/ZZTo4L_13TeV_powheg_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_GGHZZ4L": [0.01181, 0, "/GluGluHToZZTo4L_M125_13TeV_powheg2_JHUgenV6_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_VHtoNonbb": [0.9561, 0, "/VHToNonbb_M125_13TeV_amcatnloFXFX_madspin_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WWW": [0.2086, 0, "/WWW_4F_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WWZ": [0.1651, 0, "/WWZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WZZ": [0.05565, 0, "/WZZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_ZZZ": [0.01398, 0, "/ZZZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWW": [0.01150, 0, "/TTWW_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v3/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTTW": [0.000788, 0, "/TTTW_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWZ": [0.003884, 0, "/TTWZ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTZZ": [0.001982, 0, "/TTZZ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWH": [0.001582, 0, "/TTWH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v3/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTZH": [0.001535, 0, "/TTZH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTHH": [0.000757, 0, "/TTHH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTTJ": [0.000474, 0, "/TTTJ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTTT_isrup": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-isrup-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} isr up", "#999999", false, false, 1], + "MC13TeV_TTTT_isrdn": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-isrdown-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} isr dn", "#999999", false, false, 1], + "MC13TeV_TTTT_fsrup": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-fsrup-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} fsr up", "#999999", false, false, 1], + "MC13TeV_TTTT_fsrdn": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-fsrdown-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} fsr dn", "#999999", false, false, 1], + + "Data_QCDMultijets": [1.0, 0, "", @@ -195,4 +218,4 @@ "Data13TeV_DoubleMuon_2016Hv2": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_DoubleMuon_2016Hv3": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1] -} +} \ No newline at end of file From d1209a4c0b614d988c333f4148ea54475bdfdb98 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 17 Jul 2017 00:17:18 +0200 Subject: [PATCH 042/151] Fixed TMVA code not giving outputs when trained on condor --- .../summer2017/FourTops/FourTopsTMVA_606.cpp | 41 ++++++++++--------- .../test/summer2017/condor_TMVATrain.sh | 7 +++- 2 files changed, 26 insertions(+), 22 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index 5a6a73ac465..10b3ab86f6c 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -22,26 +22,27 @@ void FourTopsTMVA_606() TChain *BosonChain = new TChain("TMVAanalysis"); TChain *ToNuChain = new TChain("TMVAanalysis"); - FourTopsChain->Add("MC13TeV_TTTT.root"); - TTChain->Add("MC13TeV_TTJets.root"); - SingleTopChain->Add("MC13TeV_SingleTbar_tW.root"); - SingleTopChain->Add("MC13TeV_SingleT_tW.root"); - SingleTopChain->Add("MC13TeV_SingleTbar_t.root"); - SingleTopChain->Add("MC13TeV_SingleT_t.root"); - WChain->Add("MC13TeV_W0Jets.root"); - WChain->Add("MC13TeV_W1Jets.root"); - WChain->Add("MC13TeV_W2Jets.root"); - DYChain->Add("MC13TeV_DY50toInf_mlm.root"); - DYChain->Add("MC13TeV_DY10to50.root"); - BosonChain->Add("MC13TeV_ZZTo2L2Nu.root"); - BosonChain->Add("MC13TeV_ZZTo2L2Q.root"); - BosonChain->Add("MC13TeV_WWToLNuQQ.root"); - BosonChain->Add("MC13TeV_WWTo2L2Nu.root"); - BosonChain->Add("MC13TeV_WZTo3LNu.root"); - ToNuChain->Add("MC13TeV_TTWToLNu.root"); - ToNuChain->Add("MC13TeV_TTWToQQ.root"); - ToNuChain->Add("MC13TeV_TTZToQQ.root"); - ToNuChain->Add("MC13TeV_TTZToLLNuNu.root"); + string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/"); + FourTopsChain-> Add((dir+string("MC13TeV_TTTT.root")).c_str()); + TTChain-> Add((dir+string("MC13TeV_TTJets.root")).c_str()); + SingleTopChain->Add((dir+string("MC13TeV_SingleTbar_tW.root")).c_str()); + SingleTopChain->Add((dir+string("MC13TeV_SingleT_tW.root")).c_str()); + SingleTopChain->Add((dir+string("MC13TeV_SingleTbar_t.root")).c_str()); + SingleTopChain->Add((dir+string("MC13TeV_SingleT_t.root")).c_str()); + WChain-> Add((dir+string("MC13TeV_W0Jets.root")).c_str()); + WChain-> Add((dir+string("MC13TeV_W1Jets.root")).c_str()); + WChain-> Add((dir+string("MC13TeV_W2Jets.root")).c_str()); + DYChain-> Add((dir+string("MC13TeV_DY50toInf_mlm.root")).c_str()); + DYChain-> Add((dir+string("MC13TeV_DY10to50.root")).c_str()); + BosonChain-> Add((dir+string("MC13TeV_ZZTo2L2Nu.root")).c_str()); + BosonChain-> Add((dir+string("MC13TeV_ZZTo2L2Q.root)")).c_str()); + BosonChain-> Add((dir+string("MC13TeV_WWToLNuQQ.root")).c_str()); + BosonChain-> Add((dir+string("MC13TeV_WWTo2L2Nu.root")).c_str()); + BosonChain-> Add((dir+string("MC13TeV_WZTo3LNu.root")).c_str()); + ToNuChain-> Add((dir+string("MC13TeV_TTWToLNu.root")).c_str()); + ToNuChain-> Add((dir+string("MC13TeV_TTWToQQ.root")).c_str()); + ToNuChain-> Add((dir+string("MC13TeV_TTZToQQ.root")).c_str()); + ToNuChain-> Add((dir+string("MC13TeV_TTZToLLNuNu.root")).c_str()); TString outFileName("FourTopsTMVA_out.root"); TFile *outFile = new TFile(outFileName, "RECREATE"); diff --git a/TopAnalysis/test/summer2017/condor_TMVATrain.sh b/TopAnalysis/test/summer2017/condor_TMVATrain.sh index e2d7d19bd75..ed6c2757493 100644 --- a/TopAnalysis/test/summer2017/condor_TMVATrain.sh +++ b/TopAnalysis/test/summer2017/condor_TMVATrain.sh @@ -1,5 +1,8 @@ #!/bin/bash +WORKDIR=`pwd` cd /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28 eval `scram r -sh` -cd src/TopLJets2015/TopAnalysis/test/summer2017/FourTops -root -l -q FourTopsTMVA_606.cpp \ No newline at end of file +cd ${WORKDIR} +root -l -q /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +cp ${WORKDIR}/FourTops/weights/FourTopsML_BDT.weights.xml /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTopsML_BDT_606.weights.xml +mv ${WORKDIR}/FourTops/* /afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/ \ No newline at end of file From 339c046e7ba34566f34d78dae2f546d67ba92b6c Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 17 Jul 2017 00:30:28 +0200 Subject: [PATCH 043/151] Fixed directory --- TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index 10b3ab86f6c..bf0dd451dd4 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -22,7 +22,7 @@ void FourTopsTMVA_606() TChain *BosonChain = new TChain("TMVAanalysis"); TChain *ToNuChain = new TChain("TMVAanalysis"); - string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/"); + string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/"); FourTopsChain-> Add((dir+string("MC13TeV_TTTT.root")).c_str()); TTChain-> Add((dir+string("MC13TeV_TTJets.root")).c_str()); SingleTopChain->Add((dir+string("MC13TeV_SingleTbar_tW.root")).c_str()); From 9ae74c2f7d7c4c542d7455982b6a34bc9b09cafe Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 17 Jul 2017 07:53:22 +0200 Subject: [PATCH 044/151] Added variables to TMVAReader --- TopAnalysis/src/FourTopsAnalyzer.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 1f35795a31f..fa35d88afb5 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -86,6 +86,10 @@ void RunFourTopsAnalyzer(TString filename, tmvaReader->AddVariable("n_jets", &n_jets); tmvaReader->AddVariable("n_bjets", &n_bjets); tmvaReader->AddVariable("n_leptons", &n_leptons); + tmvaReader->AddVariable("n_mu_p", &n_mu_p); + tmvaReader->AddVariable("n_mu_m", &n_mu_m); + tmvaReader->AddVariable("n_ele_p", &n_ele_p); + tmvaReader->AddVariable("n_ele_m", &n_ele_m); tmvaReader->BookMVA( "BDT", "/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTopsML_BDT_606.weights.xml"); //CREATE OUTPUT TREE From 9777bf583c0ff4a423fd688544f759d7ade94664 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 17 Jul 2017 12:14:42 +0200 Subject: [PATCH 045/151] Added SELCUSTOM option to run leftover samples not returned from condor --- TopAnalysis/test/summer2017/steerFourTops.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/TopAnalysis/test/summer2017/steerFourTops.sh b/TopAnalysis/test/summer2017/steerFourTops.sh index 1b3212b2552..57d616af9e0 100644 --- a/TopAnalysis/test/summer2017/steerFourTops.sh +++ b/TopAnalysis/test/summer2017/steerFourTops.sh @@ -42,6 +42,14 @@ case $WHAT in --era era2016 -m FourTopsAnalyzer::RunFourTopsAnalyzer --ch 0 --runSysts; ;; + SELCUSTOM ) + queue=local + python scripts/runLocalAnalysis.py -i ${eosdir} \ + --only test/summer2017/custom_samples.json --exactonly \ + -q ${queue} -o ${outdir} --njobs 8 \ + --era era2016 -m FourTopsAnalyzer::RunFourTopsAnalyzer --ch 0 --runSysts; + ;; + MERGE ) ./scripts/mergeOutputs.py ${outdir}; ;; From 013f4540029b701c7f0b69af292c72b0696789c7 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 17 Jul 2017 14:25:09 +0200 Subject: [PATCH 046/151] Add condition where an event must have at least four jets and at least two bjets --- TopAnalysis/src/FourTopsAnalyzer.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index fa35d88afb5..88ed6c54da2 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -202,6 +202,7 @@ void RunFourTopsAnalyzer(TString filename, //count n b-jets int sel_nbjets(0); for(size_t ij=0; ij Date: Mon, 17 Jul 2017 14:25:40 +0200 Subject: [PATCH 047/151] Removed MC13TeV_TTWToLNu and Data_QCDMultijets --- .../data/era2016/samples-fourtops.json | 20 ------------------- 1 file changed, 20 deletions(-) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index ff5c55fc6f9..723522b8d68 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -104,15 +104,6 @@ false, 1 ], - "MC13TeV_TTWToLNu": [0.2043, - 0, - "/TTWJetsToLNu_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v3/MINIAODSIM", - "t#bar{t}+V", - "#F600FA", - false, - false, - 1 - ], "MC13TeV_TTWToQQ": [0.4062, 0, "/TTWJetsToQQ_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", @@ -162,17 +153,6 @@ "MC13TeV_TTTT_fsrup": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-fsrup-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} fsr up", "#999999", false, false, 1], "MC13TeV_TTTT_fsrdn": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-fsrdown-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} fsr dn", "#999999", false, false, 1], - - "Data_QCDMultijets": [1.0, - 0, - "", - "Multijets", - "#e0f3f8", - false, - false, - 1 - ], - "Data13TeV_SingleMuon_2016B": [1.0, 1, "/SingleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_SingleMuon_2016C": [1.0, 1, "/SingleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], "Data13TeV_SingleMuon_2016D": [1.0, 1, "/SingleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], From 1db5de74f40b31024df8c3f3d2e7aa0a8abd9981 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 17 Jul 2017 14:57:48 +0200 Subject: [PATCH 048/151] Updated eos_cmd to new location (?) --- TopAnalysis/python/storeTools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/python/storeTools.py b/TopAnalysis/python/storeTools.py index b4ebb18b056..e3b76bc2292 100644 --- a/TopAnalysis/python/storeTools.py +++ b/TopAnalysis/python/storeTools.py @@ -8,7 +8,7 @@ def getEOSlslist(directory, mask='', prepend='root://eoscms//eos/cms/'): from subprocess import Popen, PIPE print 'looking into: '+directory+'...' - eos_cmd = '/afs/cern.ch/project/eos/installation/cms/bin/eos.select' + eos_cmd = '/afs/cern.ch/project/eos/installation/cms.old/bin/eos.select' data = Popen([eos_cmd, 'ls', directory],stdout=PIPE) out,err = data.communicate() From 79741db9c971c825c7e431dfda9abfec05fe62ab Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 17 Jul 2017 18:38:00 +0200 Subject: [PATCH 049/151] Updated EOS filesystem access --- TopAnalysis/python/storeTools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/python/storeTools.py b/TopAnalysis/python/storeTools.py index e3b76bc2292..8b1dec9dc37 100644 --- a/TopAnalysis/python/storeTools.py +++ b/TopAnalysis/python/storeTools.py @@ -8,7 +8,7 @@ def getEOSlslist(directory, mask='', prepend='root://eoscms//eos/cms/'): from subprocess import Popen, PIPE print 'looking into: '+directory+'...' - eos_cmd = '/afs/cern.ch/project/eos/installation/cms.old/bin/eos.select' + eos_cmd = 'eos' data = Popen([eos_cmd, 'ls', directory],stdout=PIPE) out,err = data.communicate() From 8ac3bbd7469f100436c0155ececd39a5a729f853 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 16:24:00 +0200 Subject: [PATCH 050/151] Added note to keep track of datasets used --- .../data/era2016/note-samples-fourtops.md | 104 ++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 TopAnalysis/data/era2016/note-samples-fourtops.md diff --git a/TopAnalysis/data/era2016/note-samples-fourtops.md b/TopAnalysis/data/era2016/note-samples-fourtops.md new file mode 100644 index 00000000000..4b756529a4c --- /dev/null +++ b/TopAnalysis/data/era2016/note-samples-fourtops.md @@ -0,0 +1,104 @@ +Four tops +- MC13TeV_TTTT + +ttbar +- MC13TeV_TTJets + +Single top +- MC13TeV_SingleTbar_tW +- MC13TeV_SingleT_tW +- MC13TeV_SingleTbar_t +- MC13TeV_SingleT_t + +W +- MC13TeV_W0Jets +- MC13TeV_W1Jets +- MC13TeV_W2Jets + +Drell-Yan +- MC13TeV_DY50toInf_mlm +- MC13TeV_DY10to50 + +Multiboson +- MC13TeV_ZZTo2L2Nu +- MC13TeV_ZZTo2L2Q +- MC13TeV_WWToLNuQQ +- MC13TeV_WWTo2L2Nu +- MC13TeV_WZTo3LNu + +ttbar + V +- MC13TeV_TTWToQQ +- MC13TeV_TTZToQQ +- MC13TeV_TTZToLLNuNu + +Rares +- MC13TeV_tZq +- MC13TeV_ZZ4L +- MC13TeV_GGHZZ4L +- MC13TeV_VHtoNonbb +- MC13TeV_WWW +- MC13TeV_WWZ +- MC13TeV_WZZ +- MC13TeV_ZZZ +- MC13TeV_TTWW +- MC13TeV_TTTW +- MC13TeV_TTWZ +- MC13TeV_TTZZ +- MC13TeV_TTWH +- MC13TeV_TTZH +- MC13TeV_TTHH +- MC13TeV_TTTJ + +four tops isr up +- MC13TeV_TTTT_isrup + +four tops isr dn +- MC13TeV_TTTT_isrdn + +four tops fsr up +- MC13TeV_TTTT_fsrup + +four tops fsr dn +- MC13TeV_TTTT_fsrdn + +Data +- Data13TeV_SingleMuon_2016B +- Data13TeV_SingleMuon_2016C +- Data13TeV_SingleMuon_2016D +- Data13TeV_SingleMuon_2016E +- Data13TeV_SingleMuon_2016F +- Data13TeV_SingleMuon_2016G +- Data13TeV_SingleMuon_2016Hv2 +- Data13TeV_SingleMuon_2016Hv3 +- Data13TeV_SingleElectron_2016B +- Data13TeV_SingleElectron_2016C +- Data13TeV_SingleElectron_2016D +- Data13TeV_SingleElectron_2016E +- Data13TeV_SingleElectron_2016F +- Data13TeV_SingleElectron_2016G +- Data13TeV_SingleElectron_2016Hv2 +- Data13TeV_SingleElectron_2016Hv3 +- Data13TeV_MuonEG_2016B +- Data13TeV_MuonEG_2016C +- Data13TeV_MuonEG_2016D +- Data13TeV_MuonEG_2016E +- Data13TeV_MuonEG_2016F +- Data13TeV_MuonEG_2016G +- Data13TeV_MuonEG_2016Hv2 +- Data13TeV_MuonEG_2016Hv3 +- Data13TeV_DoubleEG_2016B +- Data13TeV_DoubleEG_2016C +- Data13TeV_DoubleEG_2016D +- Data13TeV_DoubleEG_2016E +- Data13TeV_DoubleEG_2016F +- Data13TeV_DoubleEG_2016G +- Data13TeV_DoubleEG_2016Hv2 +- Data13TeV_DoubleEG_2016Hv3 +- Data13TeV_DoubleMuon_2016B +- Data13TeV_DoubleMuon_2016C +- Data13TeV_DoubleMuon_2016D +- Data13TeV_DoubleMuon_2016E +- Data13TeV_DoubleMuon_2016F +- Data13TeV_DoubleMuon_2016G +- Data13TeV_DoubleMuon_2016Hv2 +- Data13TeV_DoubleMuon_2016Hv3 \ No newline at end of file From 8eaa601bfb4d90c2577e59cb5ab883ddc114a677 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 16:24:17 +0200 Subject: [PATCH 051/151] Fix nvtx histogram --- TopAnalysis/src/FourTopsAnalyzer.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 88ed6c54da2..c9f34e01c1e 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -153,7 +153,7 @@ void RunFourTopsAnalyzer(TString filename, HistTool ht; ht.setNsyst(0); ht.addHist("puwgtctr", new TH1F("puwgtctr",";Weight sums;Events",2,0,2)); - ht.addHist("nvtx", new TH1F("nvtx",";Vertex multiplicity;Events",55,-0.5,49.5)); + ht.addHist("nvtx", new TH1F("nvtx",";Vertex multiplicity;Events",50,-0.5,49.5)); ht.addHist("njets", new TH1F("njets",";Jet multiplicity;Events",15,-0.5,14.5)); ht.addHist("nbjets", new TH1F("nbjets",";b jet multiplicity;Events",10,-0.5,9.5)); ht.addHist("nleptons", new TH1F("nleptons",";Lepton multiplicity;Events",6,-0.5,5.5)); From 0a6c987f1bc330fb647a51e73a54300d8c6354d1 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 16:33:04 +0200 Subject: [PATCH 052/151] Added MLP_ANN output histogram --- TopAnalysis/src/FourTopsAnalyzer.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index c9f34e01c1e..af1a3038a93 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -91,6 +91,7 @@ void RunFourTopsAnalyzer(TString filename, tmvaReader->AddVariable("n_ele_p", &n_ele_p); tmvaReader->AddVariable("n_ele_m", &n_ele_m); tmvaReader->BookMVA( "BDT", "/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTopsML_BDT_606.weights.xml"); + tmvaReader->BookMVA("MLP_ANN","/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTopsML_MLP_ANN_606.weights.xml") //CREATE OUTPUT TREE TTree outTree("TMVAanalysis","NTuple tree for TMVA analysis"); @@ -158,6 +159,7 @@ void RunFourTopsAnalyzer(TString filename, ht.addHist("nbjets", new TH1F("nbjets",";b jet multiplicity;Events",10,-0.5,9.5)); ht.addHist("nleptons", new TH1F("nleptons",";Lepton multiplicity;Events",6,-0.5,5.5)); ht.addHist("bdt", new TH1F("bdt",";BDT;Events",50,-1,1)); + ht.addHist("mlp_ann", new TH1F("mlp_ann",";MLP_ANN; Events",50,0.,1.)); std::cout << "init done" << std::endl; @@ -370,8 +372,10 @@ void RunFourTopsAnalyzer(TString filename, event_weight = plotwgts[0]; - float bdt=tmvaReader->EvaluateMVA("BDT"); + float bdt = tmvaReader->EvaluateMVA("BDT"); ht.fill("bdt", bdt, plotwgts); + float mlp_ann = tmvaReader->EvaluateMVA("MLP_ANN"); + ht.fill("mlp_ann", mlp_ann, plotwgts); outTree.Fill(); } From 1d8444e7f2bfa1179ccfb6b842bfbb5e3fabbaa5 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 17:02:01 +0200 Subject: [PATCH 053/151] Debugging plotter.py --- TopAnalysis/scripts/plotter.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/scripts/plotter.py b/TopAnalysis/scripts/plotter.py index b8dadfa9119..299917eb307 100644 --- a/TopAnalysis/scripts/plotter.py +++ b/TopAnalysis/scripts/plotter.py @@ -97,7 +97,7 @@ def main(): for flav in [(1,sample[3]+'+l'),(4,sample[3]+'+c'),(5,sample[3]+'+b',sample[4])]: subProcs.append(('%d_%s'%(flav[0],tag),flav[1],sample[4]+3*len(subProcs))) for sp in subProcs: - + print 'Opening %s/%s.root\n'%(opt.inDir, sp[0]) fIn=ROOT.TFile.Open('%s/%s.root' % ( opt.inDir, sp[0]) ) if not fIn : continue From d29a9db9a9b7e806282710ceeb55b8a84b84f356 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 17:14:32 +0200 Subject: [PATCH 054/151] Debugging plotter.py (2) --- TopAnalysis/scripts/plotter.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/scripts/plotter.py b/TopAnalysis/scripts/plotter.py index 299917eb307..84cb1de191f 100644 --- a/TopAnalysis/scripts/plotter.py +++ b/TopAnalysis/scripts/plotter.py @@ -97,7 +97,7 @@ def main(): for flav in [(1,sample[3]+'+l'),(4,sample[3]+'+c'),(5,sample[3]+'+b',sample[4])]: subProcs.append(('%d_%s'%(flav[0],tag),flav[1],sample[4]+3*len(subProcs))) for sp in subProcs: - print 'Opening %s/%s.root\n'%(opt.inDir, sp[0]) + print 'Opening %s/%s.root'%(opt.inDir, sp[0]) fIn=ROOT.TFile.Open('%s/%s.root' % ( opt.inDir, sp[0]) ) if not fIn : continue @@ -192,6 +192,7 @@ def main(): else: outDir = opt.outDir os.system('mkdir -p %s' % outDir) os.system('rm %s/%s'%(outDir,opt.outName)) + print 'Now printing plots!' for p in plots : plots[p].mcUnc=opt.mcUnc if opt.saveLog : plots[p].savelog=True From e35b0833dcc104db0bc21f1f8e7c174b105ac41f Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 17:23:01 +0200 Subject: [PATCH 055/151] Debugging Plot.py --- TopAnalysis/python/Plot.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/python/Plot.py b/TopAnalysis/python/Plot.py index 83e59156562..056ca0c8a9e 100644 --- a/TopAnalysis/python/Plot.py +++ b/TopAnalysis/python/Plot.py @@ -568,8 +568,11 @@ def convertToPoissonErrorGr(h): try: htype=h.ClassName() except: + print 'Unable to obtain class name. Returning NoneType object.' + return None + if htype.find('TH1')<0 : + print 'Not a TH1 object. Returning NoneType object.' return None - if htype.find('TH1')<0 : return None #check https://twiki.cern.ch/twiki/bin/view/CMS/PoissonErrorBars alpha = 1 - 0.6827; From a82765c048286c4d002682be206c4216718928ea Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 17:32:51 +0200 Subject: [PATCH 056/151] Debugging Plot.py (2) --- TopAnalysis/python/Plot.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/python/Plot.py b/TopAnalysis/python/Plot.py index 056ca0c8a9e..e22292a4269 100644 --- a/TopAnalysis/python/Plot.py +++ b/TopAnalysis/python/Plot.py @@ -207,7 +207,11 @@ def show(self, outDir,lumi,noStack=False,saveTeX=False,extraText=None,noRatio=Fa nlegCols = 0 if self.dataH is not None: - if self.data is None: self.finalize() + print type(self.data) + if self.data is None: + print 'self.data is NoneType' + self.finalize() + print type(self.data) leg.AddEntry( self.data, self.data.GetTitle(),'p') nlegCols += 1 for h in self.mc: From c61f811c995854e5a8006507cb0b69ab7ac8b824 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 17:49:42 +0200 Subject: [PATCH 057/151] Debugging Plot.py (3) --- TopAnalysis/python/Plot.py | 1 + 1 file changed, 1 insertion(+) diff --git a/TopAnalysis/python/Plot.py b/TopAnalysis/python/Plot.py index e22292a4269..e494806d624 100644 --- a/TopAnalysis/python/Plot.py +++ b/TopAnalysis/python/Plot.py @@ -210,6 +210,7 @@ def show(self, outDir,lumi,noStack=False,saveTeX=False,extraText=None,noRatio=Fa print type(self.data) if self.data is None: print 'self.data is NoneType' + print self.name self.finalize() print type(self.data) leg.AddEntry( self.data, self.data.GetTitle(),'p') From d540d1876e076a20eb435ab5b7bb1188b6fd4843 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 17:56:35 +0200 Subject: [PATCH 058/151] Fixed plotter.py adding non-TH1 objects into plotting procedure --- TopAnalysis/scripts/plotter.py | 1 + 1 file changed, 1 insertion(+) diff --git a/TopAnalysis/scripts/plotter.py b/TopAnalysis/scripts/plotter.py index 84cb1de191f..5b65926e959 100644 --- a/TopAnalysis/scripts/plotter.py +++ b/TopAnalysis/scripts/plotter.py @@ -146,6 +146,7 @@ def main(): else: histos.append(obj) histos[-1].SetTitle(sp[1]) + elif not obj.InheritsFrom('TH1'): continue else: fixExtremities(obj, False, False) histos.append(obj) From 4366f5c53c7594b8a39ba91df312110aab08f890 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 18 Jul 2017 18:03:51 +0200 Subject: [PATCH 059/151] Fixed typo --- TopAnalysis/src/FourTopsAnalyzer.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index af1a3038a93..9b3dd0e2b82 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -91,7 +91,7 @@ void RunFourTopsAnalyzer(TString filename, tmvaReader->AddVariable("n_ele_p", &n_ele_p); tmvaReader->AddVariable("n_ele_m", &n_ele_m); tmvaReader->BookMVA( "BDT", "/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTopsML_BDT_606.weights.xml"); - tmvaReader->BookMVA("MLP_ANN","/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTopsML_MLP_ANN_606.weights.xml") + tmvaReader->BookMVA("MLP_ANN","/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTopsML_MLP_ANN_606.weights.xml"); //CREATE OUTPUT TREE TTree outTree("TMVAanalysis","NTuple tree for TMVA analysis"); From e12c1b94a9de4035a2cb9f0b6199d4271f92d23b Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 09:34:46 +0200 Subject: [PATCH 060/151] Removed TTWToQQ --- TopAnalysis/data/era2016/samples-fourtops.json | 9 --------- 1 file changed, 9 deletions(-) diff --git a/TopAnalysis/data/era2016/samples-fourtops.json b/TopAnalysis/data/era2016/samples-fourtops.json index 723522b8d68..c12a5a0baad 100644 --- a/TopAnalysis/data/era2016/samples-fourtops.json +++ b/TopAnalysis/data/era2016/samples-fourtops.json @@ -104,15 +104,6 @@ false, 1 ], - "MC13TeV_TTWToQQ": [0.4062, - 0, - "/TTWJetsToQQ_TuneCUETP8M1_13TeV-amcatnloFXFX-madspin-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", - "t#bar{t}+V", - "#F600FA", - false, - false, - 1 - ], "MC13TeV_TTZToQQ": [0.5297, 0, "/TTZToQQ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", From 425d94d11e4922286d08909f5169a531c3437658 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 14:11:27 +0200 Subject: [PATCH 061/151] Added script to compare systematic variations of four-tops --- .../test/summer2017/CompareSystVar.cpp | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 TopAnalysis/test/summer2017/CompareSystVar.cpp diff --git a/TopAnalysis/test/summer2017/CompareSystVar.cpp b/TopAnalysis/test/summer2017/CompareSystVar.cpp new file mode 100644 index 00000000000..cd158873e91 --- /dev/null +++ b/TopAnalysis/test/summer2017/CompareSystVar.cpp @@ -0,0 +1,33 @@ +#include +#include +#include + +void CompareSystVar() +{ + TFile *FourTops_nosys = new TFile("MC13TeV_TTTT.root"); + TFile *FourTops_fsrdn = new TFile("MC13TeV_TTTT_fsrdn.root"); + TFile *FourTops_fsrup = new TFile("MC13TeV_TTTT_fsrup.root"); + TFile *FourTops_isrdn = new TFile("MC13TeV_TTTT_isrdn.root"); + TFile *FourTops_isrup = new TFile("MC13TeV_TTTT_isrup.root"); + + TFile *FourTops_addr[] = {FourTops_nosys, FourTops_fsrdn, FourTops_isrdn, FourTops_fsrup, FourTops_isrup}; + + std::string histograms[] = {"nbjets", "njets", "nleptons", "nvtx"}; + + TFile *out = new TFile("Compare_TTTT.root"); + TCanvas *canvas; + TH1F *hist; + + for (short i = 0; i < 4; i++) + { + canvas = new TCanvas(histograms[i],histograms[i],800,600); + canvas->cd(); + for (short j = 0; j < 5; j++) + { + hist = (TH1F*) FourTops_addr[j]->Get(histograms[i]); + hist->Draw("SAME"); + } + out->cd(); + canvas->Write(); + } +} \ No newline at end of file From 2e08f01cb7cb8669459b00dce48376a319ed01b2 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 14:19:57 +0200 Subject: [PATCH 062/151] Moved CompareSystVar.cpp to a more appropriate directory --- TopAnalysis/test/summer2017/{ => FourTops}/CompareSystVar.cpp | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename TopAnalysis/test/summer2017/{ => FourTops}/CompareSystVar.cpp (100%) diff --git a/TopAnalysis/test/summer2017/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp similarity index 100% rename from TopAnalysis/test/summer2017/CompareSystVar.cpp rename to TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp From da5efb08c5d0270f70d80f73fd81479378b6cb79 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 14:22:46 +0200 Subject: [PATCH 063/151] Fixed bugs. --- TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index cd158873e91..780ff71ea7c 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -20,11 +20,11 @@ void CompareSystVar() for (short i = 0; i < 4; i++) { - canvas = new TCanvas(histograms[i],histograms[i],800,600); + canvas = new TCanvas(histograms[i].c_str(),histograms[i].c_str(),800,600); canvas->cd(); for (short j = 0; j < 5; j++) { - hist = (TH1F*) FourTops_addr[j]->Get(histograms[i]); + hist = (TH1F*) FourTops_addr[j]->Get(histograms[i].c_str()); hist->Draw("SAME"); } out->cd(); From 04d501ea1decb74c9d083118671b1b8287501e93 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 14:28:48 +0200 Subject: [PATCH 064/151] Fixed bugs --- TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index 780ff71ea7c..d2237d07758 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -14,7 +14,7 @@ void CompareSystVar() std::string histograms[] = {"nbjets", "njets", "nleptons", "nvtx"}; - TFile *out = new TFile("Compare_TTTT.root"); + TFile *out = new TFile("Compare_TTTT.root","RECREATE"); TCanvas *canvas; TH1F *hist; @@ -30,4 +30,4 @@ void CompareSystVar() out->cd(); canvas->Write(); } -} \ No newline at end of file +} From 32be5ee23d72aa8a25f75f292a5f7ece409b2331 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 14:48:58 +0200 Subject: [PATCH 065/151] Added colours to comparison plot --- .../test/summer2017/FourTops/CompareSystVar.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index d2237d07758..4d62130f86b 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -12,21 +12,31 @@ void CompareSystVar() TFile *FourTops_addr[] = {FourTops_nosys, FourTops_fsrdn, FourTops_isrdn, FourTops_fsrup, FourTops_isrup}; + std::string fileName[] = {"FourTops_nosys", "FourTops_fsrdn", "FourTops_isrdn", "FourTops_fsrup", "FourTops_isrup"}; std::string histograms[] = {"nbjets", "njets", "nleptons", "nvtx"}; + int markerStyle[] = {24, 20, 21, 22, 23}; + int markerColour[] = {1, 2, 3, 4, 5}; TFile *out = new TFile("Compare_TTTT.root","RECREATE"); TCanvas *canvas; TH1F *hist; + TLegend *legend; for (short i = 0; i < 4; i++) { canvas = new TCanvas(histograms[i].c_str(),histograms[i].c_str(),800,600); canvas->cd(); + legend = new TLegend(0.5, 0.7, 0.9, 0.9); for (short j = 0; j < 5; j++) { hist = (TH1F*) FourTops_addr[j]->Get(histograms[i].c_str()); + hist->SetMarkerStyle(markerStyle[j]); + hist->SetLineColor(markerColour[j]); + hist->SetMarkerColor(markerColour[j]); hist->Draw("SAME"); + legend->AddEntry(hist, fileName[j], "lep"); } + legend->Draw(); out->cd(); canvas->Write(); } From bbf8fd180a0ad515916772b0232f4adfb00af166 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 14:57:03 +0200 Subject: [PATCH 066/151] Disabling statistics box in plots --- TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index 4d62130f86b..9fd3e5abb65 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -22,11 +22,13 @@ void CompareSystVar() TH1F *hist; TLegend *legend; + gStyle->SetStats(false); + for (short i = 0; i < 4; i++) { canvas = new TCanvas(histograms[i].c_str(),histograms[i].c_str(),800,600); canvas->cd(); - legend = new TLegend(0.5, 0.7, 0.9, 0.9); + legend = new TLegend(0.5, 0.7, 0.8, 0.9); for (short j = 0; j < 5; j++) { hist = (TH1F*) FourTops_addr[j]->Get(histograms[i].c_str()); From 11912592025ec6f4443ef8fa0e22b6e593f2ea89 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 14:58:38 +0200 Subject: [PATCH 067/151] Fixed bugs --- TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index 4d62130f86b..9356bbbdefc 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -34,7 +34,7 @@ void CompareSystVar() hist->SetLineColor(markerColour[j]); hist->SetMarkerColor(markerColour[j]); hist->Draw("SAME"); - legend->AddEntry(hist, fileName[j], "lep"); + legend->AddEntry(hist, fileName[j].c_str(), "lep"); } legend->Draw(); out->cd(); From f1cf2677138754586d944072376a92e970908d09 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 21 Jul 2017 15:21:54 +0200 Subject: [PATCH 068/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index 6004dfbbd75..2b9334d12d5 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -22,8 +22,6 @@ void CompareSystVar() TH1F *hist; TLegend *legend; - gStyle->SetStats(false); - for (short i = 0; i < 4; i++) { canvas = new TCanvas(histograms[i].c_str(),histograms[i].c_str(),800,600); @@ -35,6 +33,7 @@ void CompareSystVar() hist->SetMarkerStyle(markerStyle[j]); hist->SetLineColor(markerColour[j]); hist->SetMarkerColor(markerColour[j]); + hist->SetStats(false); hist->Draw("SAME"); legend->AddEntry(hist, fileName[j].c_str(), "lep"); } From 2ce958253e0b4b9184e50402052fcba5d20a926b Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Sun, 23 Jul 2017 09:17:26 +0200 Subject: [PATCH 069/151] Added BDT and MLP_ANN plots --- TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index 2b9334d12d5..421b486badb 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -13,7 +13,7 @@ void CompareSystVar() TFile *FourTops_addr[] = {FourTops_nosys, FourTops_fsrdn, FourTops_isrdn, FourTops_fsrup, FourTops_isrup}; std::string fileName[] = {"FourTops_nosys", "FourTops_fsrdn", "FourTops_isrdn", "FourTops_fsrup", "FourTops_isrup"}; - std::string histograms[] = {"nbjets", "njets", "nleptons", "nvtx"}; + std::string histograms[] = {"nbjets", "njets", "nleptons", "nvtx", "bdt", "mlp_ann"}; int markerStyle[] = {24, 20, 21, 22, 23}; int markerColour[] = {1, 2, 3, 4, 5}; @@ -22,7 +22,7 @@ void CompareSystVar() TH1F *hist; TLegend *legend; - for (short i = 0; i < 4; i++) + for (short i = 0; i < 6; i++) { canvas = new TCanvas(histograms[i].c_str(),histograms[i].c_str(),800,600); canvas->cd(); From 54c193e6ec0effd4fd5546e279e5d179d1a7289d Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 24 Jul 2017 14:12:58 +0200 Subject: [PATCH 070/151] Added rare processes for TMVA training --- .../summer2017/FourTops/FourTopsTMVA_606.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index bf0dd451dd4..d6c5c435c9b 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -21,6 +21,7 @@ void FourTopsTMVA_606() TChain *DYChain = new TChain("TMVAanalysis"); TChain *BosonChain = new TChain("TMVAanalysis"); TChain *ToNuChain = new TChain("TMVAanalysis"); + TChain *RareChain = new TChain("TMVAAnalysis"); string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/"); FourTopsChain-> Add((dir+string("MC13TeV_TTTT.root")).c_str()); @@ -39,10 +40,24 @@ void FourTopsTMVA_606() BosonChain-> Add((dir+string("MC13TeV_WWToLNuQQ.root")).c_str()); BosonChain-> Add((dir+string("MC13TeV_WWTo2L2Nu.root")).c_str()); BosonChain-> Add((dir+string("MC13TeV_WZTo3LNu.root")).c_str()); - ToNuChain-> Add((dir+string("MC13TeV_TTWToLNu.root")).c_str()); ToNuChain-> Add((dir+string("MC13TeV_TTWToQQ.root")).c_str()); ToNuChain-> Add((dir+string("MC13TeV_TTZToQQ.root")).c_str()); ToNuChain-> Add((dir+string("MC13TeV_TTZToLLNuNu.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_tZq.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_ZZ4L.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_GGHZZ4L.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_VHtoNonbb.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_WWW.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_WWZ.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_ZZZ.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_TTWW.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_TTTW.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_TTWZ.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_TTZZ.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_TTWH.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_TTZH.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_TTHH.root")).c_str()); + RareChain-> Add((dir+string("MC13TeV_TTTJ.root")).c_str()); TString outFileName("FourTopsTMVA_out.root"); TFile *outFile = new TFile(outFileName, "RECREATE"); @@ -56,6 +71,7 @@ void FourTopsTMVA_606() factory->AddBackgroundTree(DYChain, 1.0); factory->AddBackgroundTree(BosonChain, 1.0); factory->AddBackgroundTree(ToNuChain, 1.0); + factory->AddBackgroundTree(RareChain, 1.0); factory->AddVariable("jet_1_highest_csv",'F'); factory->AddVariable("jet_2_highest_csv",'F'); From b1a3c0e189b416d7bd7c08fcf1ea052c7ea71c3d Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 24 Jul 2017 14:33:27 +0200 Subject: [PATCH 071/151] There are no W preprocessed events. Removed. --- .../test/summer2017/FourTops/FourTopsTMVA_606.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index d6c5c435c9b..e378e437e91 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -17,7 +17,7 @@ void FourTopsTMVA_606() TChain *FourTopsChain = new TChain("TMVAanalysis"); TChain *TTChain = new TChain("TMVAanalysis"); TChain *SingleTopChain = new TChain("TMVAanalysis"); - TChain *WChain = new TChain("TMVAanalysis"); + //TChain *WChain = new TChain("TMVAanalysis"); TChain *DYChain = new TChain("TMVAanalysis"); TChain *BosonChain = new TChain("TMVAanalysis"); TChain *ToNuChain = new TChain("TMVAanalysis"); @@ -30,9 +30,9 @@ void FourTopsTMVA_606() SingleTopChain->Add((dir+string("MC13TeV_SingleT_tW.root")).c_str()); SingleTopChain->Add((dir+string("MC13TeV_SingleTbar_t.root")).c_str()); SingleTopChain->Add((dir+string("MC13TeV_SingleT_t.root")).c_str()); - WChain-> Add((dir+string("MC13TeV_W0Jets.root")).c_str()); - WChain-> Add((dir+string("MC13TeV_W1Jets.root")).c_str()); - WChain-> Add((dir+string("MC13TeV_W2Jets.root")).c_str()); + //WChain-> Add((dir+string("MC13TeV_W0Jets.root")).c_str()); + //WChain-> Add((dir+string("MC13TeV_W1Jets.root")).c_str()); + //WChain-> Add((dir+string("MC13TeV_W2Jets.root")).c_str()); DYChain-> Add((dir+string("MC13TeV_DY50toInf_mlm.root")).c_str()); DYChain-> Add((dir+string("MC13TeV_DY10to50.root")).c_str()); BosonChain-> Add((dir+string("MC13TeV_ZZTo2L2Nu.root")).c_str()); @@ -67,7 +67,7 @@ void FourTopsTMVA_606() factory->AddSignalTree(FourTopsChain, 1.0); factory->AddBackgroundTree(TTChain, 1.0); factory->AddBackgroundTree(SingleTopChain, 1.0); - factory->AddBackgroundTree(WChain, 1.0); + //factory->AddBackgroundTree(WChain, 1.0); factory->AddBackgroundTree(DYChain, 1.0); factory->AddBackgroundTree(BosonChain, 1.0); factory->AddBackgroundTree(ToNuChain, 1.0); From ec66a3d5f5fc8206d56a22f40f10c6e6efbedf60 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 24 Jul 2017 14:49:43 +0200 Subject: [PATCH 072/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index e378e437e91..a7f45d5691f 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -21,7 +21,7 @@ void FourTopsTMVA_606() TChain *DYChain = new TChain("TMVAanalysis"); TChain *BosonChain = new TChain("TMVAanalysis"); TChain *ToNuChain = new TChain("TMVAanalysis"); - TChain *RareChain = new TChain("TMVAAnalysis"); + TChain *RareChain = new TChain("TMVAanalysis"); string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/"); FourTopsChain-> Add((dir+string("MC13TeV_TTTT.root")).c_str()); From e508a900cc310c06a0cc1da76bda06d674e6d3b4 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 24 Jul 2017 15:33:33 +0200 Subject: [PATCH 073/151] Configuring neural network properties --- TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index a7f45d5691f..513c499c9c5 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -116,7 +116,7 @@ void FourTopsTMVA_606() //factory->BookMethod(TMVA::Types::kFisher,"Fisher","V"); // Fisher discriminants (linear discriminant analysis) //factory->BookMethod(TMVA::Types::kFDA,"FDA","V"); // Function discriminant analysis (FDA) //factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:NeuronType=tanh:VarTransform=N:NCycles=1000:HiddenLayers=N+10,N"); // ROOT neural network - factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=N"); // ROOT neural network + factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=D:NCycles=1000:HiddenLayers=N+20,N+10,N"); // ROOT neural network //factory->BookMethod(TMVA::Types::kSVM,"SVM","V:VarTransform=N"); // Support Vector Machine factory->BookMethod(TMVA::Types::kBDT,"BDT","V"); // Boosted Decision Tree //factory->BookMethod(TMVA::Types::kRuleFit,"RuleFit","V"); // Predictive learning via rule ensembles From 797e37b079f89ee4d21f08b5053030a1d06edc83 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 24 Jul 2017 15:59:04 +0200 Subject: [PATCH 074/151] Fixed VarTransform for NN --- TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index 513c499c9c5..fed0ff25658 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -116,7 +116,7 @@ void FourTopsTMVA_606() //factory->BookMethod(TMVA::Types::kFisher,"Fisher","V"); // Fisher discriminants (linear discriminant analysis) //factory->BookMethod(TMVA::Types::kFDA,"FDA","V"); // Function discriminant analysis (FDA) //factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:NeuronType=tanh:VarTransform=N:NCycles=1000:HiddenLayers=N+10,N"); // ROOT neural network - factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=D:NCycles=1000:HiddenLayers=N+20,N+10,N"); // ROOT neural network + factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=V:NCycles=1000:HiddenLayers=N+20,N+10,N"); // ROOT neural network //factory->BookMethod(TMVA::Types::kSVM,"SVM","V:VarTransform=N"); // Support Vector Machine factory->BookMethod(TMVA::Types::kBDT,"BDT","V"); // Boosted Decision Tree //factory->BookMethod(TMVA::Types::kRuleFit,"RuleFit","V"); // Predictive learning via rule ensembles From fc34b797e9e6a201e508631b30e83b2aa122ea08 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 24 Jul 2017 16:15:05 +0200 Subject: [PATCH 075/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp index fed0ff25658..9aebc972065 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsTMVA_606.cpp @@ -116,7 +116,7 @@ void FourTopsTMVA_606() //factory->BookMethod(TMVA::Types::kFisher,"Fisher","V"); // Fisher discriminants (linear discriminant analysis) //factory->BookMethod(TMVA::Types::kFDA,"FDA","V"); // Function discriminant analysis (FDA) //factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:NeuronType=tanh:VarTransform=N:NCycles=1000:HiddenLayers=N+10,N"); // ROOT neural network - factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=V:NCycles=1000:HiddenLayers=N+20,N+10,N"); // ROOT neural network + factory->BookMethod(TMVA::Types::kMLP,"MLP_ANN","V:VarTransform=N:NCycles=1000:HiddenLayers=N+20,N+10,N"); // ROOT neural network //factory->BookMethod(TMVA::Types::kSVM,"SVM","V:VarTransform=N"); // Support Vector Machine factory->BookMethod(TMVA::Types::kBDT,"BDT","V"); // Boosted Decision Tree //factory->BookMethod(TMVA::Types::kRuleFit,"RuleFit","V"); // Predictive learning via rule ensembles From c3e1cae1f02a1d2a3e523b8b87dcc7b522b990d2 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 13:55:18 +0200 Subject: [PATCH 076/151] Rebinning histograms --- TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index 421b486badb..18507f72ba7 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -34,6 +34,9 @@ void CompareSystVar() hist->SetLineColor(markerColour[j]); hist->SetMarkerColor(markerColour[j]); hist->SetStats(false); + if (histogram[i] == "bdt") hist->Rebin(5); + else if (histogram[i] == "mlp_ann") hist->Rebin(5); + else if (histogram[i] == "nvtx") hist->Rebin(5); hist->Draw("SAME"); legend->AddEntry(hist, fileName[j].c_str(), "lep"); } From eda9a078463ff1222d84825b797da3d13731cfe9 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 13:56:41 +0200 Subject: [PATCH 077/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp index 18507f72ba7..4ced7889297 100644 --- a/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp +++ b/TopAnalysis/test/summer2017/FourTops/CompareSystVar.cpp @@ -34,9 +34,9 @@ void CompareSystVar() hist->SetLineColor(markerColour[j]); hist->SetMarkerColor(markerColour[j]); hist->SetStats(false); - if (histogram[i] == "bdt") hist->Rebin(5); - else if (histogram[i] == "mlp_ann") hist->Rebin(5); - else if (histogram[i] == "nvtx") hist->Rebin(5); + if (histograms[i] == "bdt") hist->Rebin(5); + else if (histograms[i] == "mlp_ann") hist->Rebin(5); + else if (histograms[i] == "nvtx") hist->Rebin(5); hist->Draw("SAME"); legend->AddEntry(hist, fileName[j].c_str(), "lep"); } From db0ceb2aaa7bbd0a2fc478f427441cfd6f468acd Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 15:44:23 +0200 Subject: [PATCH 078/151] Adding FourTopsXSect.cpp --- .../summer2017/FourTops/FourTopsXSect.cpp | 141 ++++++++++++++++++ 1 file changed, 141 insertions(+) create mode 100644 TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp new file mode 100644 index 00000000000..01736e8474f --- /dev/null +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -0,0 +1,141 @@ +#include +#include +#include + +void FourTopsXSect() +{ + string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/"); + + string sigFileName("MC13TeV_TTTT.root"); + std::list bgFileName = + { + "MC13TeV_TTJets.root", + "MC13TeV_SingleTbar_tW.root", + "MC13TeV_SingleT_tW.root", + "MC13TeV_SingleTbar_t.root", + "MC13TeV_SingleT_t.root", + "MC13TeV_DY50toInf_mlm.root", + "MC13TeV_DY10to50.root", + "MC13TeV_ZZTo2L2Nu.root", + "MC13TeV_ZZTo2L2Q.root)", + "MC13TeV_WWToLNuQQ.root", + "MC13TeV_WWTo2L2Nu.root", + "MC13TeV_WZTo3LNu.root", + "MC13TeV_TTWToQQ.root", + "MC13TeV_TTZToQQ.root", + "MC13TeV_TTZToLLNuNu.root", + "MC13TeV_tZq.root", + "MC13TeV_ZZ4L.root", + "MC13TeV_GGHZZ4L.root", + "MC13TeV_VHtoNonbb.root", + "MC13TeV_WWW.root", + "MC13TeV_WWZ.root", + "MC13TeV_ZZZ.root", + "MC13TeV_TTWW.root", + "MC13TeV_TTTW.root", + "MC13TeV_TTWZ.root", + "MC13TeV_TTZZ.root", + "MC13TeV_TTWH.root", + "MC13TeV_TTZH.root", + "MC13TeV_TTHH.root", + "MC13TeV_TTTJ.root" + } + + std::list dataFileName = + { + "Data13TeV_DoubleEG_2016B.root", + "Data13TeV_DoubleEG_2016C.root", + "Data13TeV_DoubleEG_2016D.root", + "Data13TeV_DoubleEG_2016E.root", + "Data13TeV_DoubleEG_2016F.root", + "Data13TeV_DoubleEG_2016G.root", + "Data13TeV_DoubleEG_2016Hv2.root", + "Data13TeV_DoubleEG_2016Hv3.root", + "Data13TeV_DoubleMuon_2016B.root", + "Data13TeV_DoubleMuon_2016C.root", + "Data13TeV_DoubleMuon_2016D.root", + "Data13TeV_DoubleMuon_2016E.root", + "Data13TeV_DoubleMuon_2016F.root", + "Data13TeV_DoubleMuon_2016G.root", + "Data13TeV_DoubleMuon_2016Hv2.root", + "Data13TeV_DoubleMuon_2016Hv3.root", + "Data13TeV_MuonEG_2016B.root", + "Data13TeV_MuonEG_2016C.root", + "Data13TeV_MuonEG_2016D.root", + "Data13TeV_MuonEG_2016E.root", + "Data13TeV_MuonEG_2016F.root", + "Data13TeV_MuonEG_2016G.root", + "Data13TeV_MuonEG_2016Hv2.root", + "Data13TeV_MuonEG_2016Hv3.root", + "Data13TeV_SingleElectron_2016B.root" + "Data13TeV_SingleElectron_2016C.root", + "Data13TeV_SingleElectron_2016D.root", + "Data13TeV_SingleElectron_2016E.root", + "Data13TeV_SingleElectron_2016F.root", + "Data13TeV_SingleElectron_2016G.root", + "Data13TeV_SingleElectron_2016Hv2.root", + "Data13TeV_SingleElectron_2016Hv3.root", + "Data13TeV_SingleMuon_2016B.root", + "Data13TeV_SingleMuon_2016C.root", + "Data13TeV_SingleMuon_2016D.root", + "Data13TeV_SingleMuon_2016E.root", + "Data13TeV_SingleMuon_2016F.root", + "Data13TeV_SingleMuon_2016G.root", + "Data13TeV_SingleMuon_2016Hv2.root", + "Data13TeV_SingleMuon_2016Hv3.root" + } + + TFile *sigFile = new TFile((dir+sigFileName).c_str()); + std::list bgFilePtr = new std::list(); + std::list dataFilePtr = new std::list(); + + for (int i=0;i histograms = {"bdt","mlp_ann"}; + double factor[histograms.size()]; + + TH1F *histCache; + + for (int i=0;iGet(histograms[i]); + + int numBins = histCache->GetNbinsX(); + + double y_sig [numBins]; + double y_bg [numBins]; + double y_data[numBins]; + + for (int j=0;jGetBinContent(j+1); + y_bg[j] = 0.; + y_data[j] = 0.; + } + + for (int k=0;kGet(histograms[i]); + for (int j=0;jGetBinContent(j+1); + } + + for (int k=0;kGet(histograms[i]); + for (int j=0;jGetBinContent(j+1); + } + + printf(histograms[i]); + printf("\n---------------------------------------\n"); + printf("SIGNAL\n"); + for (int i=0;i Date: Tue, 25 Jul 2017 15:56:26 +0200 Subject: [PATCH 079/151] Fixed bugs --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 01736e8474f..fc28132afa8 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -7,7 +7,7 @@ void FourTopsXSect() string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/"); string sigFileName("MC13TeV_TTTT.root"); - std::list bgFileName = + std::vector bgFileName = { "MC13TeV_TTJets.root", "MC13TeV_SingleTbar_tW.root", @@ -41,7 +41,7 @@ void FourTopsXSect() "MC13TeV_TTTJ.root" } - std::list dataFileName = + std::vector dataFileName = { "Data13TeV_DoubleEG_2016B.root", "Data13TeV_DoubleEG_2016C.root", @@ -86,8 +86,8 @@ void FourTopsXSect() } TFile *sigFile = new TFile((dir+sigFileName).c_str()); - std::list bgFilePtr = new std::list(); - std::list dataFilePtr = new std::list(); + std::vector bgFilePtr = new std::list(); + std::vector dataFilePtr = new std::list(); for (int i=0;i Date: Tue, 25 Jul 2017 16:00:07 +0200 Subject: [PATCH 080/151] Fixed bugs --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index fc28132afa8..ddd505d2592 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -86,8 +86,8 @@ void FourTopsXSect() } TFile *sigFile = new TFile((dir+sigFileName).c_str()); - std::vector bgFilePtr = new std::list(); - std::vector dataFilePtr = new std::list(); + std::vector bgFilePtr = new std::vector(); + std::vector dataFilePtr = new std::vector(); for (int i=0;i histograms = {"bdt","mlp_ann"}; + std::vector histograms = {"bdt","mlp_ann"}; double factor[histograms.size()]; TH1F *histCache; From e126d1c07c40d158439d45215d1a8af822123b21 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 16:07:11 +0200 Subject: [PATCH 081/151] Fixed bugs --- .../test/summer2017/FourTops/FourTopsXSect.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index ddd505d2592..da575cd99dc 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -39,7 +39,7 @@ void FourTopsXSect() "MC13TeV_TTZH.root", "MC13TeV_TTHH.root", "MC13TeV_TTTJ.root" - } + }; std::vector dataFileName = { @@ -83,11 +83,11 @@ void FourTopsXSect() "Data13TeV_SingleMuon_2016G.root", "Data13TeV_SingleMuon_2016Hv2.root", "Data13TeV_SingleMuon_2016Hv3.root" - } + }; TFile *sigFile = new TFile((dir+sigFileName).c_str()); - std::vector bgFilePtr = new std::vector(); - std::vector dataFilePtr = new std::vector(); + std::vector bgFilePtr(); + std::vector dataFilePtr(); for (int i=0;iGet(histograms[i]); + histCache = sigFile->Get(histograms[i].c_str()); int numBins = histCache->GetNbinsX(); @@ -119,17 +119,17 @@ void FourTopsXSect() for (int k=0;kGet(histograms[i]); + histCache = bgFilePtr[k]->Get(histograms[i].c_str()); for (int j=0;jGetBinContent(j+1); } for (int k=0;kGet(histograms[i]); + histCache = dataFilePtr[k]->Get(histograms[i].c_str()); for (int j=0;jGetBinContent(j+1); } - printf(histograms[i]); + printf("%s",histograms[i]); printf("\n---------------------------------------\n"); printf("SIGNAL\n"); for (int i=0;i Date: Tue, 25 Jul 2017 16:10:07 +0200 Subject: [PATCH 082/151] Fixed bugs --- .../test/summer2017/FourTops/FourTopsXSect.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index da575cd99dc..89245154179 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -86,8 +86,8 @@ void FourTopsXSect() }; TFile *sigFile = new TFile((dir+sigFileName).c_str()); - std::vector bgFilePtr(); - std::vector dataFilePtr(); + std::vector bgFilePtr; + std::vector dataFilePtr; for (int i=0;iGet(histograms[i].c_str()); + histCache = (TH1F*) sigFile->Get(histograms[i].c_str()); int numBins = histCache->GetNbinsX(); @@ -119,17 +119,17 @@ void FourTopsXSect() for (int k=0;kGet(histograms[i].c_str()); + histCache = (TH1F*) bgFilePtr[k]->Get(histograms[i].c_str()); for (int j=0;jGetBinContent(j+1); } for (int k=0;kGet(histograms[i].c_str()); + histCache = (TH1F*) dataFilePtr[k]->Get(histograms[i].c_str()); for (int j=0;jGetBinContent(j+1); } - printf("%s",histograms[i]); + printf("%s",histograms[i].c_str()); printf("\n---------------------------------------\n"); printf("SIGNAL\n"); for (int i=0;i Date: Tue, 25 Jul 2017 16:14:00 +0200 Subject: [PATCH 083/151] Fixed bugs --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 89245154179..6abd016e4ca 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -17,7 +17,7 @@ void FourTopsXSect() "MC13TeV_DY50toInf_mlm.root", "MC13TeV_DY10to50.root", "MC13TeV_ZZTo2L2Nu.root", - "MC13TeV_ZZTo2L2Q.root)", + "MC13TeV_ZZTo2L2Q.root", "MC13TeV_WWToLNuQQ.root", "MC13TeV_WWTo2L2Nu.root", "MC13TeV_WZTo3LNu.root", @@ -67,7 +67,7 @@ void FourTopsXSect() "Data13TeV_MuonEG_2016G.root", "Data13TeV_MuonEG_2016Hv2.root", "Data13TeV_MuonEG_2016Hv3.root", - "Data13TeV_SingleElectron_2016B.root" + "Data13TeV_SingleElectron_2016B.root", "Data13TeV_SingleElectron_2016C.root", "Data13TeV_SingleElectron_2016D.root", "Data13TeV_SingleElectron_2016E.root", From 342e0f26e12120771daac0708a2d12d7bb824299 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 16:19:20 +0200 Subject: [PATCH 084/151] Added debug messages --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 6abd016e4ca..cb4bf87ef46 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -94,6 +94,9 @@ void FourTopsXSect() for (int i=0;i histograms = {"bdt","mlp_ann"}; double factor[histograms.size()]; @@ -102,6 +105,7 @@ void FourTopsXSect() for (int i=0;iGet(histograms[i].c_str()); int numBins = histCache->GetNbinsX(); @@ -116,18 +120,21 @@ void FourTopsXSect() y_bg[j] = 0.; y_data[j] = 0.; } + printf("y_sig filled\n"); for (int k=0;kGet(histograms[i].c_str()); for (int j=0;jGetBinContent(j+1); } + printf("y_bg filled\n"); for (int k=0;kGet(histograms[i].c_str()); for (int j=0;jGetBinContent(j+1); } + printf("y_data filled\n"); printf("%s",histograms[i].c_str()); printf("\n---------------------------------------\n"); From 32257ffcfe24173227069d162ce271e046dd6c2f Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 16:23:50 +0200 Subject: [PATCH 085/151] Added more debug messages --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index cb4bf87ef46..3e4a089fa5d 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -125,6 +125,7 @@ void FourTopsXSect() for (int k=0;kGet(histograms[i].c_str()); + printf("histograms[i] obtained\n"); for (int j=0;jGetBinContent(j+1); } printf("y_bg filled\n"); @@ -132,6 +133,7 @@ void FourTopsXSect() for (int k=0;kGet(histograms[i].c_str()); + printf("histograms[i] obtained\n"); for (int j=0;jGetBinContent(j+1); } printf("y_data filled\n"); From ef1182d793901856fddbc2565c5fb2c5cec56688 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 16:34:47 +0200 Subject: [PATCH 086/151] Removed TTWToQQ --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 3e4a089fa5d..0ce21a4ad1f 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -21,7 +21,7 @@ void FourTopsXSect() "MC13TeV_WWToLNuQQ.root", "MC13TeV_WWTo2L2Nu.root", "MC13TeV_WZTo3LNu.root", - "MC13TeV_TTWToQQ.root", + //"MC13TeV_TTWToQQ.root", "MC13TeV_TTZToQQ.root", "MC13TeV_TTZToLLNuNu.root", "MC13TeV_tZq.root", @@ -105,7 +105,7 @@ void FourTopsXSect() for (int i=0;iGet(histograms[i].c_str()); int numBins = histCache->GetNbinsX(); From f278037c57a56b2575045cc322ed63677cc7e5bb Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 17:05:08 +0200 Subject: [PATCH 087/151] Exploiting plotter.root --- .../summer2017/FourTops/FourTopsXSect.cpp | 32 +++++++++++++------ 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 0ce21a4ad1f..3cefe194c23 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -6,6 +6,7 @@ void FourTopsXSect() { string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/"); + /* string sigFileName("MC13TeV_TTTT.root"); std::vector bgFileName = { @@ -97,7 +98,21 @@ void FourTopsXSect() printf("bgFilePtr.size() = %d\n",bgFilePtr.size()); printf("dataFilePtr.size() = %d\n",dataFilePtr.size()); - + */ + + TFile *plotterFile = new TFile("plots/plotter.root"); + string sigProcess = "t#bar{t}t#bar{t} x 100"; + std::vector bgProcess = + { + "t#bar{t}", + "Single top", + "W", + "DY", + "Multiboson", + "t#bar{t}+V", + "Rares" + }; + std::vector histograms = {"bdt","mlp_ann"}; double factor[histograms.size()]; @@ -106,7 +121,7 @@ void FourTopsXSect() for (int i=0;iGet(histograms[i].c_str()); + histCache = (TH1F*) sigFile->Get((histograms[i]+"/"+histograms[i]+"_"+sigProcess).c_str()); int numBins = histCache->GetNbinsX(); @@ -122,20 +137,17 @@ void FourTopsXSect() } printf("y_sig filled\n"); - for (int k=0;kGet(histograms[i].c_str()); + histCache = (TH1F*) bgFilePtr[k]->Get((histograms[i]+"/"+histograms[i]+"_"+bgProcess[k]).c_str()); printf("histograms[i] obtained\n"); for (int j=0;jGetBinContent(j+1); } printf("y_bg filled\n"); - for (int k=0;kGet(histograms[i].c_str()); - printf("histograms[i] obtained\n"); - for (int j=0;jGetBinContent(j+1); - } + histCache = (TH1F*) dataFilePtr[k]->Get((histograms[i]+"/"+histograms[i]).c_str()); + printf("histograms[i] obtained\n"); + for (int j=0;jGetBinContent(j+1); printf("y_data filled\n"); printf("%s",histograms[i].c_str()); From 9333d85cf316f19d5d3d27b485a580eabd45b3e8 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 17:06:23 +0200 Subject: [PATCH 088/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 3cefe194c23..02bb4d0efd1 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -121,7 +121,7 @@ void FourTopsXSect() for (int i=0;iGet((histograms[i]+"/"+histograms[i]+"_"+sigProcess).c_str()); + histCache = (TH1F*) plotterFile->Get((histograms[i]+"/"+histograms[i]+"_"+sigProcess).c_str()); int numBins = histCache->GetNbinsX(); @@ -139,13 +139,13 @@ void FourTopsXSect() for (int k=0;kGet((histograms[i]+"/"+histograms[i]+"_"+bgProcess[k]).c_str()); + histCache = (TH1F*) plotterFile->Get((histograms[i]+"/"+histograms[i]+"_"+bgProcess[k]).c_str()); printf("histograms[i] obtained\n"); for (int j=0;jGetBinContent(j+1); } printf("y_bg filled\n"); - histCache = (TH1F*) dataFilePtr[k]->Get((histograms[i]+"/"+histograms[i]).c_str()); + histCache = (TH1F*) plotterFile->Get((histograms[i]+"/"+histograms[i]).c_str()); printf("histograms[i] obtained\n"); for (int j=0;jGetBinContent(j+1); printf("y_data filled\n"); From 3064686fd8d6e0e5682064a1ae7767d1c78fa23f Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 25 Jul 2017 17:19:07 +0200 Subject: [PATCH 089/151] Added least square fit for signal factor calculation --- .../summer2017/FourTops/FourTopsXSect.cpp | 128 ++++-------------- 1 file changed, 28 insertions(+), 100 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 02bb4d0efd1..f156d6ee870 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -6,100 +6,6 @@ void FourTopsXSect() { string dir("/afs/cern.ch/user/v/vwachira/CMSSW_8_0_28/src/TopLJets2015/TopAnalysis/test/summer2017/FourTops/"); - /* - string sigFileName("MC13TeV_TTTT.root"); - std::vector bgFileName = - { - "MC13TeV_TTJets.root", - "MC13TeV_SingleTbar_tW.root", - "MC13TeV_SingleT_tW.root", - "MC13TeV_SingleTbar_t.root", - "MC13TeV_SingleT_t.root", - "MC13TeV_DY50toInf_mlm.root", - "MC13TeV_DY10to50.root", - "MC13TeV_ZZTo2L2Nu.root", - "MC13TeV_ZZTo2L2Q.root", - "MC13TeV_WWToLNuQQ.root", - "MC13TeV_WWTo2L2Nu.root", - "MC13TeV_WZTo3LNu.root", - //"MC13TeV_TTWToQQ.root", - "MC13TeV_TTZToQQ.root", - "MC13TeV_TTZToLLNuNu.root", - "MC13TeV_tZq.root", - "MC13TeV_ZZ4L.root", - "MC13TeV_GGHZZ4L.root", - "MC13TeV_VHtoNonbb.root", - "MC13TeV_WWW.root", - "MC13TeV_WWZ.root", - "MC13TeV_ZZZ.root", - "MC13TeV_TTWW.root", - "MC13TeV_TTTW.root", - "MC13TeV_TTWZ.root", - "MC13TeV_TTZZ.root", - "MC13TeV_TTWH.root", - "MC13TeV_TTZH.root", - "MC13TeV_TTHH.root", - "MC13TeV_TTTJ.root" - }; - - std::vector dataFileName = - { - "Data13TeV_DoubleEG_2016B.root", - "Data13TeV_DoubleEG_2016C.root", - "Data13TeV_DoubleEG_2016D.root", - "Data13TeV_DoubleEG_2016E.root", - "Data13TeV_DoubleEG_2016F.root", - "Data13TeV_DoubleEG_2016G.root", - "Data13TeV_DoubleEG_2016Hv2.root", - "Data13TeV_DoubleEG_2016Hv3.root", - "Data13TeV_DoubleMuon_2016B.root", - "Data13TeV_DoubleMuon_2016C.root", - "Data13TeV_DoubleMuon_2016D.root", - "Data13TeV_DoubleMuon_2016E.root", - "Data13TeV_DoubleMuon_2016F.root", - "Data13TeV_DoubleMuon_2016G.root", - "Data13TeV_DoubleMuon_2016Hv2.root", - "Data13TeV_DoubleMuon_2016Hv3.root", - "Data13TeV_MuonEG_2016B.root", - "Data13TeV_MuonEG_2016C.root", - "Data13TeV_MuonEG_2016D.root", - "Data13TeV_MuonEG_2016E.root", - "Data13TeV_MuonEG_2016F.root", - "Data13TeV_MuonEG_2016G.root", - "Data13TeV_MuonEG_2016Hv2.root", - "Data13TeV_MuonEG_2016Hv3.root", - "Data13TeV_SingleElectron_2016B.root", - "Data13TeV_SingleElectron_2016C.root", - "Data13TeV_SingleElectron_2016D.root", - "Data13TeV_SingleElectron_2016E.root", - "Data13TeV_SingleElectron_2016F.root", - "Data13TeV_SingleElectron_2016G.root", - "Data13TeV_SingleElectron_2016Hv2.root", - "Data13TeV_SingleElectron_2016Hv3.root", - "Data13TeV_SingleMuon_2016B.root", - "Data13TeV_SingleMuon_2016C.root", - "Data13TeV_SingleMuon_2016D.root", - "Data13TeV_SingleMuon_2016E.root", - "Data13TeV_SingleMuon_2016F.root", - "Data13TeV_SingleMuon_2016G.root", - "Data13TeV_SingleMuon_2016Hv2.root", - "Data13TeV_SingleMuon_2016Hv3.root" - }; - - TFile *sigFile = new TFile((dir+sigFileName).c_str()); - std::vector bgFilePtr; - std::vector dataFilePtr; - - for (int i=0;i bgProcess = @@ -120,7 +26,7 @@ void FourTopsXSect() for (int i=0;iGet((histograms[i]+"/"+histograms[i]+"_"+sigProcess).c_str()); int numBins = histCache->GetNbinsX(); @@ -128,6 +34,7 @@ void FourTopsXSect() double y_sig [numBins]; double y_bg [numBins]; double y_data[numBins]; + double y_data_nobg[numBins]; for (int j=0;jGet((histograms[i]+"/"+histograms[i]+"_"+bgProcess[k]).c_str()); - printf("histograms[i] obtained\n"); + //printf("histograms[i] obtained\n"); for (int j=0;jGetBinContent(j+1); } - printf("y_bg filled\n"); + //printf("y_bg filled\n"); histCache = (TH1F*) plotterFile->Get((histograms[i]+"/"+histograms[i]).c_str()); - printf("histograms[i] obtained\n"); + //printf("histograms[i] obtained\n"); for (int j=0;jGetBinContent(j+1); - printf("y_data filled\n"); + //printf("y_data filled\n"); printf("%s",histograms[i].c_str()); printf("\n---------------------------------------\n"); @@ -158,5 +65,26 @@ void FourTopsXSect() for (int i=0;i Date: Tue, 25 Jul 2017 17:20:17 +0200 Subject: [PATCH 090/151] FIxed bug --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index f156d6ee870..c847be9579d 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -86,5 +86,5 @@ void FourTopsXSect() } printf("\n==================RESULTS=====================\n"); - for (int i=0;i Date: Wed, 26 Jul 2017 12:16:11 +0200 Subject: [PATCH 091/151] Fixed genweights.root --- TopAnalysis/data/era2016/genweights.root | Bin 37898 -> 338624 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/TopAnalysis/data/era2016/genweights.root b/TopAnalysis/data/era2016/genweights.root index 2f162680ce74af55f3785daa822e6ad929a2127e..1c72aee4f4039c5bb8d7ec4f65c4d5b29523b6aa 100644 GIT binary patch literal 338624 zcmbTd1yEgEvn`Cf26qh*G&sRsgA*ip@Sq9q?oJ57J%Qlv76|U{9$bSvZ!P%lIe-0C z@4b5;RqXEBJ$iJ{IXBsrReOB4wRM1i*sq6xfG~!DrEi0P8D9f@72p>N_|<^{ULYZ0 zx|bm!P@o|oWg@xR%r`N&zTpjM)-|;p0oni7Pa*_J^j>QTIU7O{AOyPsKd@?&7FH(2 z#)b}tEGC}~*%bbwOlzqlb_k<0&Y z149;oa|stc&BgyT*Bw|7qbAKNP9!hJ%C2UjuCHogV`gQd_QCM8zJrFosr_eT8;JLB z5lkQ(&`Rgp`%{9$!*r0pk_)@BUykto zLzdSJPf4wIg{ZQK-AZ_ZB10K!X~I{g%Ic3AxQ5H>$@H^FYdxHO&T9%|^aq`T)HbwI zsD&(+vVESpjr4mO!yAK1bGu!)M#Ia0>Xica-kHG-+3KR`gk(2V(NR>+v+Z5EFUZn$XgjgLc(AOL;Rm#e7)(85gU;tx*;H5 zSb;ZXE%bC#9NR|&)YN269PITSO&smO8)A6@A!H5SP^y`x+Vqr<6m}9AjS1gplSJ?xC=z{$a3@nHU^S5)m)EmfBuep3Rkal^BEy$VPA{gurrsWGt6x z_1sKNs$SGuZoamEO#9o*&OXpMG;7vu+0~hBEs7$xOT;gVa$rMn5`d4=iTdV>%&Xtx zwadm184lL65c5=<{xO@2%bA+qpJ;m`ex73=p}uaizZsl_W-GO+vlMXNieh>Xrxk04 z{8*GPvW-riBJoK{F!2O9f?D+^WBLtx{{E7gENI>R*b)@ze$DCPYMk(ydV|&bJFd{0 zrl~x?tM_{m+%6|BUh8`1HKxue;k6 zK6T_6-7rk6jktQXV0>K{VvS_~lizb>X;JDzR~jE4#Q_IL7#y+P^Jr;9j6uL^JQKt7 zWf9weJE^G8_fJ_WzUf%|Tk%8*K5dc%tNQpdq@l{B>asQn228q)VXR@ZRo}bRNAsk5 z)`5b+`!6P&zf9(;Ub`iooVyxkroo?NKAL5HHqb*s`3$cjS8YLnI>MH$h*c0lVDI@`m9@dCTCs9lqKHr7OP6=X z;xrM+*uIQ;GA%twOA)!XanDBO*^E6Kwr5lEY(77m6Pqb&7xvgCdUA#*L-}kdo(c^%u&6A?fM)KK+Jeg~-;>%Gj zgfXnG>6o_evmvkW<7VF(3@HN3+3U5!R|ZAh*a2u|%n~CoCu1%*0{}tZ84Lm-qHdMX zDL-J(TGF<^o)EQe&*tXYz}ZaEyHv(45ds4P214ss%Ga|ggeQaR2e8PxSw=h=WC>uh zm(85ufPneW3fu#*a<1h1l@fV21qBoW=Ebu?dNzd52JYG5J{z=WL;7TJ!FeU!ZU+YE zU~QeowBdpM0!HfD&^{ZpXM^`_G@cFjvvGbl=+8!xn~2&4nX=h4s%V8Nz6jh zPBC|dUoH8VHW>gC$*l$70)EoAtIr1W*`Ph;xPftiI@}#oe^}dJxwUja6fj;OM#lCY zcqhSrS%L#@6Pc!20yty9po*&>cW7-kn8>cLnM~io? z=kAwE#*0fu9tNW29WjpXszD4$+Pb%kKbyFMuSE@;bEpOn-$aZSF^Nb9Qx%Y?i==&} z$|(=|IGLF_)E+y^BVPSMNy%)nXB$Dh`aR&y_H0XwSE~TtWRE$2_WPG~`IY9z9FWSz z7}yh9>})qLv)_{dF=Jzn(a44_7Np%Gd;*fde05mjckrBSyoAbC--j%W<o<6L^2b zj-Oa|vJ095}$+VEb`!#k{3&he<%^| zq^DsaE+t(^#<%R(UYNFHT@pU7S-J zN%kUO{=WcH{{cY%2cYmDfQ8M(Bo;m0tjWHpn!D|%_(MczpefJ@J=;9|5b+Y&Ca@rT zUOZ)v;l)RB7qLi%v8_i1Rz;o{pL0smm6V0&cq8cMvfbOMfDJUz@`pVwjGh-!PYbN4 z#arOiMg zo)-P!Za!-}C|+SbQI`U@wVi%U|FmESt`f+wKWBhD0Wx?`P4u3|S#5m=6#myBOV3-B z2X5s?AZB56K@_+@edyk8YcRqT6Y&rPTx2Uu+$bL~M78_rxT)>es#)y>Kiu%BKlV+E zwXJWonUY$<&+;0VQXQ-hX5Lj9Evs(77&7WlS?tMK?#}UU=#I=KBfsC7;`+=qTZii^ zMbs-KuD8@9c@iD-?XvWZt2Yz(WYq${`c>S}!ky=QGJAWz1Rc@Kuf1p=EBv< zbEt9`t?X?O-+wElxo)qM(=Svnc|E6Rkg9^XhTEyA{;IqAH%}45hctDjZx8R8^R#4 zvy4Y@uz+xoGs{LNlCDorl!Z$1=<>*pK4lY`-avYPFZkOaQz79>=uJ|^tH!^L39RF2 zk#zg-W!G!JDB|@w#3Pd6V?1t2>5FX__k2Zt5U?7|nr%)E*<0!?ynItBZn zi^dv-c(skVESPBnOc(vhkWT~CO13^ z-2&ZRI6#G*Bj>-aX15tP!eiH@@XG1$M@s{Lg~q%2GL%jZm@06*pAzEkMW0&&al{kAXB#h_l)EA7*C z@bZ?IclqH9JN`S?jZ%V^w%sD{k?cJNgTeKh?@O2Km!-%N&C`gQ$irsy@FbAk^Vtlw zG^ns}UDs2H{Q8Q07YylDFJo+~egozJyU!=qqL7Z+=E$FvRJ(Mv{> z>XT_+Cka%3B!g8SD$l!Udb4mjvlBR;Q$NidSz3DvHD&y5`Rj-Kwo%Ws5yH^WRKB@u z>y(W)!rOtr>A$D7D_u`b^zR|9c>1T=J*mqYbXA!L*Sz3pH#`Z_A*1%U%xD(~;0DaD z(~i6Oe05n2EH$`^XEdVmehkthL{Uvom0l1b3_Ozo(^D0^Wmo_8p(8|C zy$Oi!Fom>f_0)mW_}cmYBKJ0^C~PKo15P2E`Q`)tlZM8x<>j7@l`Aez4ueaWSgyMF zIO-G@+@-;5M6^pE(TfcBIM*8);Y`EG*k~UyydGxXM3E&SM+MeKD|)w2PjatLFtDVT z1|PdzeDP>Q+XzK0^?WfiiYGTDe+99BTsSV|bmpZT(<)T5iBC9(=cCI&>b-3z zXF!COp%_vFJ)c&%G?DqS?a)E*aw(Z;=B^9!md*9fwh>Qp?lbYspQ`dxn`xvi`W*lK|Jqm2W!xM zBCoF*Fuidow&1`sWY_LsLo3 zqHWA2kzQvVR$e3t$!VllV!0aCCSuE05L~;RlSz*5kd4g`Cv|_k+FD8`3*LpZww0)* z1IMmqV5u6ZF<%PfM7^)}Q)SwRq{zc9f0)-GPvv6C^Y?V^9FLIW4B~^=C33Z6OJ6DN z$%Ud3+KGqusr=2Uvq7tkdu(j*^zy-keWBu!?)Wg$$bw5|-ZI8FK8Y}kF){agkf}_;eGCH(H zBk$Ay-j!Ys$<7Q9e_5dEDs`e7!aHRm9$p^qFW{7ue+=E)Q5VqkMw|%?5_p`^NG97# zIqEC!0$o zL}-29A5bIJe|d3!$IWkR86NSzd(T+MPG$K8|KnB{f2vL%YS|KBCHhwN@l8r{(%HO; zm#6&JJArtp{S+oo?laqgjO7e2E3DFQuqo(PAJxB**)~%gQk5Q6=P^V-lx1Xao88M7 zCqVN3UF_PTy=s6@6vv!Abw<)2M2bWHP5>f{kG#dA zxBDfB0iRpIU3t3xa?{S2);a=6tDUvQW;al^>*Nx$ zdtx-yvEz=SfTI8UFT8$;?9nW%;l5Rf4)0)pdJ{AyzZuRjUNRKsak*u3HCce|?x%*I z%O4EBwhCbCF@Bw19FIumhW9f%Ksa)w`an^DWmK4u>XWbU#Kl{l)|%lwg)n!s$teya zUNpD=36^qZn=u*!IY56Hi)?C2V;}CU`+xQ^50U2k2+hpNMhXG(5&?YH)MxngtceMH z)`auopJz=d|2}JaFAY9q8l#3V>;oS%rJ1>4NlgctxN!<(U6O`PzU=#TM%s2p8U_hJ zexM{;nuXQMuF4#OYB0G<^tb!PI1)j z;Rn63m@WeZ*Kc-(C-0_p`qc!q^FB|elchvb-zD9D=cf`hmr?RKUQ%ti^qp>hx7*9<~6o_omS;xMr{NE@nkDEsp?d~t(muC z6UlAlry>e!vfHT3=m52=Z+`OH)9hTfR|k=^K76(wk4ZcG_o|xc`oG8SHK$Tk#FIhNMx^jb%Kv z*pB6kjmd^~tb3B+wI0plP*?4``;Mmv!S95+Z~I&_7vn=U#;us{yUiw&F00Ln9iolr|oS zQ4})i{(!beD3EDcOQG8lvH3bIAuyLfi-`csLK5e_dYtJ84pqv*Tv6ng7N(Nyv||JG zRaVr4?dA#M$r6DHX}MYigUQmB1tXthIEZp)Us!PAyjO@bHREun94ry-mlz|C*p$wF zqh?+&ll)~gHIySy=sne;DAS=RX>R$cN(FmXY#O5c0&I>xLDMI)SRNXGnVywtINOD8 z>ZnxNu(NfH%Iwd>){CoPfdhrFZ7(sFkOR)!&W>SUR=o;5 z<>#Q~zd?$Bg4+KEss0JN{}Xihms1L9%Rrr{9tZ6u121?XU$j@1Dze#ub9@dqfamxe zWcVj22$Is)wr3ejaD$|u8Hi=o9ccdvqW=>-qkayqPKR|h=_{vPGEicgo$hMzB;j<{^#Or#^95h~vztkj19UTg!OnL5;R|mr>T?bH% z@HIMiG*E4qwy2|j0x27w`v#y&?j(^2s0to0C0=SWkL&*PI_MK$s@K8s<~fz?0Gbj0 zG*E?ZtLGipeFmh2QoZiY+wb!`?(u#2-9HN@5=NN)@hbDaw#49CZ@VGp!SH<-2h9{J z%p9VqGyTxq@V?CCaFAG>O__Ie<6pa z;nB;BoeV`&#$ItmiOcysf59aEn77!*8<#;e9Zs3h{Dqc3OK6t!qZ_53yWbqU4HNYDO^8N*Q z=|Rv109pnK0w6rhkUR*hll?xFwbA8303{T_yeKgFMAZpE2^(&v%>*x4V&~JK{0VH1 z3F(+K^#!PfgPn-H0nT5UjTr!4g1Iap#}xzQB;h9_=cIwbFv*Y8q>e2nXpq9PU~(cb z^NG%(!81w}Ud$f^OJboMb85g6IAowi7APTLQR4nc1cG`1&;bZihIY*Hq6P;e1_tv7 zdpZF<6@bA)kA06A{S|YZl$B68@J(Pu7V{Uu5)l~3oC}b*3lrd#19@cuUNVrE0|4EF zAV^rp9JD78_CzEvI4^;^68A0!2r>ph9RTRXFWBWb2pN(jS(*4juluh28kD8L^A$tc zl_a48W{O|~HiZS2WCA7YAa6OGV~zsI8$<-~%7DC|0A6emGy;IeLC`07U{f?%19V?{ z_^*bPt~hp4U^~eJW#Gtw8adGUz(1+kJ=t%S2B$jEJG2? zCvx-+V9R;ShM8qEA@QOwf~{9Gph5ZD6R;9}eKd!qe7W(&=6e87qAL>tEte>8{daN&VtG-mB2uA^3nM1xjUC%sAP6D)Gq?@ z2tspPfUpduvNL9^^hbB$9&PFuCU}UUxg|hYo>JKnGe-KOn{dyv40Rau38styI)ZDk zc=jeGY3#&_PmHq+wJdWxri>~v^%!5B1A1(4yV5{tH)f=i2y99s>=h3*rl*t$Zb~AJ3q|Wy z5)XUf%I+8!`l9!(co?oLJ6X)zDrs@bI9+v$%w%tAHf5^V5b1RmwE9zY?tv~o4brud`<}k-qflRE{m@25T8*#ZzGd5aE zRG3C9ze!nR{jEk3!=olPLUxIjNiYp%F!m2-ey6QXi>-$IkSD78Fv=u%29c5@#j(lJ zBqJPq%ug|fbjK0P_7hG*mWR;`72E5xbP~2g>~Si21>#+N4BJl{iFS715b9$rk-psb z*ogOdGB73HeYtbkh{br2FwCBPxxCnjx_I@_C2oDW4cLgNcoxv=4j?tcg>{x4SDZdLFX;0?|oCj_LcL8ExyXZGV$c(Q5TsEt0%tW%y?5BH<;CCg> zT}nc7++^wcl4NDNBF9(+42zI><-u3jxQz%S@QR;eC!qHfI{-ZEr`QhYJ;nY2-T@dhUkQh$Rw*gGz(y+6Jv)#vr7%&0 zM+%%|o;#;3h+!+B@@)_B({kE@F1b(uAzWL4Hw1bYe*lje^lH`suLSg*Rse7KsaF%w zVG;E9Ye5g}YF-&0NCEUB1)&bp5*6eoYKma5bc6yDo|vH5i%rVo0JYk=%2&kt94Dhi4XeXR z>$V^BB6bzC%H|~Yw5#q_B~i(hW)8UfqiTmgUV2FgVJP?NjcRw4tyQI$#;2C z1)c5Tk_gmkKQ6_>U4%^&@rL+ii)N4C`-(sc!>cOA%TzT8*@gPJ3GI-q3B=Wu{jMby zFHIry@^8T8oXw7xwESYKyT?@&4Sx_BmZjt}lHECo&I_T&7}zd`lV1y7n&Jm>zl3uEco{l{qmO;fpDU>|jGp z;-Y@AsUiD~g5)b1?)5t3*B!a33IeuPmG||)20UxHXl85ne7_l^P{=GcR5i|^uAu6* z$Uqi`dExfP32luRhQ2BS&8tRomk)ah!*9JX>|epyk5lqhho0t={pLsd6<-z7#h4Kq zM?Q0Niiq4ce~rRHhPm-&KzRRTn+IA;oJ@T{*b5(-4vs-Fe7i9$sT_HM|Z#pAZgUjPS z7^H>O{Lu8AK{vwbY~#g=d^;XYt75y=@*Q6@Zw-3pLzXBmJSN1He#07+Ev?FE;ogT>6>T`H&1*ZKTn%h<}c z6~n&!-oI|i1FP9zO+jCD%m{8}a>W zyEJ3UuBXG@JMXx9YEqJ|nKg}W1P|`%K)jr>l&ni3%-50rCgcN?o=}7?HuRnv2L=`69S-KO5c{qmz(|qvK>fl*h!XyP2_aHp*u4JpI#>QJs=-Rz z?VdN2^T^F*#BQa*_q&p5#|xWs8_qi1=CJg+GYbBF+#S-%RyzK4oUxCOx(wUuQjd`& zpF8fut9hM0rXh3=K1|p2okJaR;&Yt#m1IzNkLwVzjwB+VJ(QrypR~eQ-)zSYM#sZ2 z4X0K&w^$&g8%Fh+l`_E(7nj9&>%~J&7cX6t+`{|i8TjwAI1@uNo!sQgT0BDCcec27 zm@2{vI3}f7+YZ7A>`et8u?Rvb4xd>JINFHa9kK`Wb}7PI_wTZxSljreZ+=WCo92SN zyfCS*@npwZ^Jc{K{4=eQ**vGtFZNR|lL_r$^jtxHgnnV}L2<(H*x16&tmGcmrOTsf zb1LQ0C(kj}qJO0cqm|)7{^yiuo37pR6uS|b&#n5savtv{+;oRNUMbP}8<(OBLxGcK zSZlG?BzZS9=!1g|@7qQe|HkI)o6GTOAKbrnhkN|jZIxUOhc`Q`D_S0ui{b69{#*T2 z&N&4NCf%yvtur8r+Qzd#AMI4T`*UsEEci?o3KKaN&wWR+(rHi|J}X&q9ci&{`F=X3 zD4bGOIaUz#=$ChQWTv6x0e5(*O2{;F=u@~;xyID8fST^H6a6Q0AMH?xJ>fBXO6~Y} z+TK|;1^VyHL=MA+<#FLXjWWHwS>(3$?fGGqd?<6OE!Qp$UFgfG;W@j4x7H&IgXrGI zi>Q}OlYLwT=5WL5jrODi5ipk(P_*bQdMNL8@($f%me`M)2*uinv?r>!*9d%uI zuPjYE^DXa%^z{>mkruwC%(a|%E3-U5Y#J9fg!!uamH1VSMr?Au*-y6Ljx6O8sLl0u zl}b=)XECg13e088?_6P59XZF#2=K6*ADj*@IDCI;p2A>FJVMJ}x4>Z5T40Z^gPg~N z-pq<#B{x3*m7(i`TV5yn9%sF6{9H=0utwt7xS8#|nY-2^zrdH%gB{y80W+ykJw9X~ zGZnu6G*T-a+JPC3HOcqKXE%kPOmAuIN(Jj(HM<pZK9K zRo5XrTxQ*{u8PI~I&#i@(Gik=mawI`?hRbkr2obA;km#zj%Xn<=?(T7Vy7y})gtU+ zf<0Wua0W8Ja}+MGvNMGFU$?;XB%(I|b+=z}gS-AM`7@Oj$d|ren_KMnW)YCX{r(io zIQ?iP9=3YS1B1J?lv0kD-``}CWnkYghOK43L%()uzeZl^TYM?sBH-VKbzLG^*gE^S zihz{}+TwI~` z^Zty2KO5?<5HA`Rv3=lokSI;f4Ay6M(v*X~84ATD!1Y9SySXWD$g}sOyRf>8b^)hNwr}s77xrE22k>>$FXx-wCPFMI>Bt*I3i{JfRiA!3>FQuZmfT+x zR;RupdHa3R;r%VS|M+7Y)r47ue^XXB9=Z>Q2$cM zJ#{xh`+=Hl0sVeYwnUN0$84>_0s83N?-pyUNFc!oal4t!x^B7@+Wf2R*}a9f)3L`G zoqSfI{LH7VLzU|N3xKh8T7RKHImU=I7+QFI{#g_c1v)3C*MN z9uJZ{u=(G07Ylj1vDc-XGwE4-2--DAEUL3zAh^JBlEmcT@RdGRaZE046_p@K=(xL{ zF>OnPX%H_yP;M7`&#~7Fn~YQtC?sfB;GdPreJjNtf=iDsd~k9cV#(Z^Z89;*__Xgq zeA;6m0FzD_D23LC4VV6;UnI?3sT*!+DOI1EwRp)jgGdH>Fc_d%Ehxg4ZReQT`W*+{6 zJI&)%#czC8a+Z%+;gN_}s? zsH4tt>7oBMi=M7;D#5FxTz|abkfOCS*|E}O{Xku(e?f$4Q`|eGpP`xI{NeI8bjjuJ zplF5u^KSU&UiL3X+M*knX(BtRk|yV&GuAq13G9Wr8!GjT@SxVB!6@&wg3G+i3m9v| zi2JTM*p-`~ze`&OEfEgcQM;LLx(93IYA>hOT2@NV%N>_8B!u@y=pE#G$$m|ms`vCB zY4|q|ejiXxABJ#_?1%pr-;8+p7xl*Y(FCUs^}E89ZU1I&XqVrX+bpSN)hMuD?-s!hjh*@G+jq^)jqb;D|oiZqwP zOX}OAiClk~oc7qNr&8H*L`D8Eu!(icKn&~rZ8KU{`~Z5o$zONxZ~*zxFbb6^z1A?g zTcTq!Do42gaifvUs$N9fYrx)W`u#}787ex7Dn5tV6bsk6+3DMcXhq4d`>^k$I$olg zqqgbhN)N1^4GSaN-qW8Mdvax<{A}KLk+8#Ynay$E{JG*)Ztg*K+q&X*N4@{uow4o# z;kroch-*a<+00a65%K-pWzORGod4~~2?>$V9@1f{q#(&mJtk2pj{amuEcBY0M|_L( z(%Tj0JB|ZM_(t8~`;uyB_==a`u?}cOMi`;QR@zQ z;k-{=uz$1gJ~|gC?X~ItRH-L83iiQG+fcaP2&Q-#Iu6`oc?U5aaIm?|Yz(Dwna+7} z#E(*f)Q^NGlm=Zj#fOYnuLP|_F^?Xv#f5u@`ROA0=+uADv2!{wy8PN%H|mq}V=lb& zcH>(EwsZ?{I9BfVg!uPHSwap>SmbYJQT zzRLF9%dlONh?jvc3GZ&zyn`ny9XGnTQ~!uom)`ZKRc#ElBrQSp9d9+v^slfWGrVq} zy`_SYv^O&c7gLp6`xfxi)$gls_-)`zjGPPp{M?3^E>%pyUO2(4^CH0i^pSw*sPb~T zMX)+-(dKhexpW`RJZHHS|g%$)1PKK9X zYCRtk^4f5m>A$VpFn29FaZhU#H7*}mct@w9m3V94?<9T3)3L7*8mtLEm`*doG1qlk_*QelR7+V_8@*CCefae|UZB*b&gU(OW zhgIg9`yYLSL*LErPJYyX|5nz`GH_OAAR>m>VLE3$PP*an}nK9|^%k6#6I2g5O z7!^9-|JvqmvYXT1XYY5zjQPFb`X#g0r$t+C8qtXHcUjb!EXW(6rVM#>lb z&Q@RbOwjL+KDmCbl;8P6)K>l8d3lHx^UN}@)VA({@GK>o*CVZ&Zd+ptJx$1qX*+N6 zh`U2AWid&Kw0dWbIRl65 zqdz3DZ((@)r$2VCvT9FwS(jQhou}*C?6lrmW8SYN&$4ptdOtIxzmeRmnoPLW@qFdS zHqQu|w-@bwy3zOIcT?N>xb`AMc+@gMJe@kq3BAv{giL(|fo;XMbd`#VhUkZ*?Tz4d1EIk&BG zqu)+TD5Z-vlKMX^W;DuuP3r41lWQ)JNAnXj^H@iI>1DiL?ywnjzPR#hW_rk# ziwphSEAimIcQjK-=i1Bihg|0H@cf(c)xqP;%cxI*hh?X?NtGR&qUs};2M_1J=Xds9 z1V6stK0_QSZAm#F44=wrU9wd_~6=i;r zks;+LxY8;nP@|S<``~7`Uei7ES4i(Og|^9sOHG|l+2Fg8TI?FL=-#39j19*N?*!Dd zR&=iS?2!VcgkM`vzG;XGM;GI0U;O6hdI(~x6$`7J*RW9YdUU(E;-RTdU4}jTvbmfd zfCeLQcq=uEXXaDFt&cyKJ}Dnmu_~7k4|l&^9TM`g2+e8w$liD^WB-D6UQzc`yMKFS zhR||cus~^RtNoRa=u#pz6YLQs$JQ!2!^fbKK@|F4eZCH&`mQ2%>%DsJ7;!xw5~9xKhp-80#bH`nj?I89Zyy+7Nl6Wv69~gsC>GG<6B$j> z5@1W7+}EX^+Dx5@0ZYWtY9EufIJ@{p(0ZtMk-_f$yv8q?{=QiwOxaG+^<3Af?JASN zY`>KrJf;i{10p>p25nQz>U73--{LB@isi{r%lMXuWSpJk6`+m${QuELa)RGi<7@xtp0NM@zS@&E z@*nvs$3NmoXAiZ`i#9w2mG7{K0V7z5Ovbm&8!;miud@7wrP;U*M@OKtgbFgzF-2o3 zrEzw$U=Uz1Fd<>H;rz&TV{vm~adMmM-H#3lx=!7N9$g<7&)3bIE0@{XFFnk-Y0ac^ z-u6by!{)p_C`}9#PkLLLgmmnERUFf+RwW(BW^O!ojE&`;mH*S=*V1nI-Cu?ue#CXX zWH?*VSHsEj9DlX5w3UCr1GrVD*cu`V!u?lsw3a zoPVV!HI0hkppD)hc(k@AZCi^Arbe&jVZu}h?<_&14#sJJ9ZqUW(Qb8Pb$&hzHBt6) zX|~8s(>NdvA%2S?;&j%9JmZv%=@bX0a?kM5I7z}T2~8kE?}vw{1nWpIwCl)Yxzd|5 ze7J@?-w72GH%Y3q2wV+lOBeRt3;40{;^JWSaWT34tPTEw_DScDv%C@nHlM^#x(jTR zm_myr44ANQ=_}NIt5vLC8CyeH=FE)s%)w4I3R%ictHWspxAEqG>Zjbp)}-xB5Sw~g z#vFz!KE+gK6UKC8HW=HJO!ex56A-xpQbX8hgYhIaET()mFP;n&plVA=I#VZjGEeHj zw{C@?NDwf)W=x>+u$b^kfLP4?Y~Y>^&9lJ;%)zCI_0BzR7*HkZh78IFDVm!BogT0% zjC>AWR;q(4M0I$e4`A?~4f?Yodooi`LPd{O2|$GRuX>RZQ08gL*qQ=cP#;U_9G-)* zt`)&nuGWRoY#V>hUIZb0@HE`?w`uKzj(7hUZlS zAmId8faVl5&pEf}oZEBG?K$UmtMzSVP{Pff2-raQ*%WxtfB_F0FyKLlpW%iBlS{bm zML(Hv;Pf^rn>#_$*rgZ1Q1#Nb1H%olwl-ra;5$IxO%6~%ZqhWr1Y10-BLTw?>}esl z*7w;sgLN{tN8m7Dmg0at0V{tG#v||R$HUF&pRJAXRC|}ETc}uJBz{H9DRVl?v(x9T zX$8BUiCOg8QyoPQf)TR?EPyzYq5!=xdnt`7=T*pVqliQ^krXJHw1vYtKO`a`@y&0+ zQ=4eCHs-)l_GHMaZ*NW{w4L zS=o4Tl|Aw7)GQ}@ws`>c*Hm8Y=wCqeRSZ-<0V1CcPBuNcbu*x68=GT4$sfm%(0=bMDVYZ-?5Z{+B3hz>gd3pL zgaj!Dd$vJo+IureNi#suR@D^|;RVRz#%_QKu>c8SwTbZ=mC&wbwVn2R4FCg3+p2y% z>mn@#2ngiGfccmJEhQj39ODIQ@PHalKqpBGkneT(Y0JAt0-5{Ec^%X8d`ZVAuNt_6;0exn_hM* zfDag#Moqb*ZzeGRVQGy{7t0isD<<1<12V!A#7j_MnEV=9xk_R>z#Y^N%GaSkEpDF{ zSFleo^ebh3`F!BUJwpMVqGh{3u)zkJJESLMFmRL(@>iVCNKj*$e2nn4h<<8yOazD& zb+Nqmq&zt(YJoo8PX#W-Pt~+fi^Rw$-lJzKfv0M3P`=1%2&iF!L7zmH$;a_z=aYcQ zQWtCUnVRDnDGnl^6qmYK>A+zF3&p1q`9Z~{W&4xjlIBTqY1tm`HK75DEahDgpC~!u@_;ZpyEO0HJsMI+^;Jw-U8lM63%7lxTF%f#;1x{*{G+(NV9W~zjM) zeAr~FHohSoW65wk9XmfOx7;z(*VsW?D&Od^`LoS!clK?#F7`}5S6^^WvSb6dL_%;> z^2D{LAAVN)f$QYtnv-Q&cvwC$J!M&~C7YYuTc~C;^7S6(u87Qe{yGUKrFi6PsS|%2 z7p2jC4k?~R+=E-PH@nP|*LNTDcJ;z4cI_v}w;J*!-<=O_obL0fT&kq<&wHlIb4KN1 zKUz*eN1V7m!dnh>bKcy2v5YT0py>L^C&Hh7HAcTtx6F#>3{$SqnBEWP#{8(XUf^yY z%IB|RkxNQYBK7c7QvE`*z#S%1TQ>?JoLL9W?GJjzRZVD(G^@0r?u{nuTCl-EEbcP% z-(n?{FIzXrTPn4PyAQS^im!WWr5+w(1v_DHY7nZ0uN%@06C0$&r`KL=lx^V$Y5zG2 zKXXABh2O1t`%!6ibXUY&bwWt+alrpvyVAWy%DXk1Eh)dZ>rRnI72QNiXpZP}?ncl< z%Xe|1^pjkb>#WHX^pL}t={hB~)Bbm|HgXRS6TVe~dcU2I)~jztYxTTr_}SSEjN5vA zVj-!ZCE+4a@Cjc3&jL*ZA#0D{bMGDnu~hx_>!GzPd?JsWdc8|wi0?kU(?%|nrDFKA zIS}|eZ%b0}@fCKQscnjo^_h!wM12$gr48Y4#k#F}d}sW%OOE;`x*Ou(!GmGf_Nz=v zjLu{S^>K)dpL7~iG`u0Fyk}Mh7Be8-NB4|xW3ZLR#&gIvTOl^zXspP@618y!{nox| zZokIWR_9cNy|Bsqxsf0Me=$$yxx2{)(J9D&HI^LS)`d+H>s*UnHWZuYebkph+w{%; zvow=|e5EY^9yi)d8{yVMMwM@X_Go>nH3Le~yCrS`UTnyk4^mDyIp=MJ-!Hh$PFye3 zhv{){`RGcHTT5&=Pt|4lmXH6UDTSe1rHtctD@9L3K< zSvhR75J+J8R4`H|@NgL_C;ayK%=&UZIZn>sD652R(47Tj|s*Z4E# zT=O5)(_v~_Rc?0<`u$bhK3C%gmqOjHUPP}s zU26E>>|==z!k>y}@CVl6ARgc0&` zgPIwvC5pJZ#wc@h|7KEb-hL@k8yvoOvZsUZt@1{YY-S)R&&rV&dat_fz;wHRnv84R zX#>7Zv?3bq6EpOM?oM6yCuRe_P1{-bTCy^+ot@K)x^EBN_VE_uzTb6bM-9J16_p=! zyCU-*-;W3s4z)YBnQp+%1#v+qT<=9Nl*hL1!Us$;aS&;)#OLn^NBS<7@HR>m|GK+@ z`|5TXgdCrk?#XQ>3;%t-{Y7Wj1hs>SIj7QvOLpC-z}_QehE&e=GceK1~y;uMZl}%gYRrE<8HpzM|K}K#{+3(f_Jx zF?>qz6V12bQ~A*y+b_Oj&Pqb2Kvo`n&@lZ!+_eOOM1FceMj9gL9+O`jI*VT z*AVfp&i>OgwLW7m-s}F_XufQ9>IS_7ftega?*%f~@da&ij`%!!yR9o5oT6o=gm>IO zF2#Ms5mx5k5Mv79~ zEU$N|hUwao@5Eb=&m3uZ{``jqubc3Wn&Uu0l4fl5Njy!UUv&Y`;D5O3!f|SJTPo}^ArEy`suz-@fKH)Oe2-3b*b+V9vHF96U zpQcH}R=*cZ{Tv*$knwXQd9^oH)Q>uebu@oJ@zWW;^5663!;Ehj&1i1+`d{q5byQYs zzwa#|pdcV!0*a)Rh?JBl4HD8N(gFg~-O?Z>-L2Byp>%hrbR&7woNL~!XRZC7vB!AM z-tRg8Z5hL>esx{tTk_cH*f+oTvT3ckTW;4pSEpZDtD8L{Qxw*mjD(Ny z6IgUfrVWYcj-oPsG1Zz6zD|AneJGeBq=YV4esKAA^=z^vzKNT2WhaRwP|*K9E@6h| z;&d{uJTA>AtsUv?u6>)^`~nqymc(DjYGA7MYc~9DdxrwoXC5!^=^lshw8Kmje={}N?OzUloK`k> z9S>i9Ts~E`&bzzEx{9)8ba$(|Y-VD?!}(gVIFCd*MoViocMn;1mes+z>{^}Tw z&2%SBe7v_x|BLO)BA*TUPI!ll;#9=+1yORv;gWyB9~+oP?DN%0`}e1h-MWq1V5X_O z2c-lif<|$1<@t>kvfW0UxW!ez#p0x1o+qw%gL-&|;v16H*zZXfaUfTtBarzr96M;yL-N0cA1IF@fMg){f}9$adHqA zi~ehW+P^fM7w{IPUb=OQ>gs-iO9%Z8?Y6fE?-L#d8N1*36ijD6;|YShO) z$H6OZb#-zXy}vLLHVvzTEji4^FP$zWiM_Tod>tj$be8Lr5Qg$v`}Ljkw)$d{dsUXl z8^i*o$~vANGof9f)RL&RVV4O_q24pUNzUo9&iyZ$bb>rw^y|otVw46#<1hK1^U*lH zwSKGdY9}NOwMCe=6~oW4BAQK)jp)_8jM*HCqk_Jr@2V;C%OqHs-LG)2y3M}-@+0?o za~Y6;-{IDI!Zi5w$TxZ`$EIoR^X!`i9Gr=A>C4H`M5ey_ap`&G_9QW{RE3S1IGf#} zCl<0A&Mec}7vDDxE3#)oE?c--@9%S*f7uj$MNms!Y7~Fgnq{g+5(_!K z(K!}*^Hm#3*kYZ6Qqk8A6M9^&&d-wG2R4d}o1H$Akvf}bPAt+?7{@2KRASfZY< zB5dFL-#vy1$?O3@NFu@s$>)HOJbodLZdm%~xmqRKHb%IC{&N$Oo*%EAA~Gh3dZI*1 zzW1YrKj%rG82Vs~ul6W><^6L}lAhloqkc8A@inqUMq8C%e~W$46Mcni_j64d#asg$ zr%mtaUE+($`Cumi)R9U}qoiw*)mjLPKN$MiZ1eQ&=qD+R!(W#_rV>k};g$X3>>~@Q zJGg|u*2eCbYXG=0=&8lyAlJx0t={2WS)ctGv=28wbLMmT>q^H|;)*o9wO^D7<)ZQS zm(*4$PNVW>V`b=`MvDl?&xD}4?!2e;s&a7vn(JP808lhyK%LzXlwbcLD7pWcg!r@@ ztP=U}Nd<^cyP2f^XEN)Pfq}QTy0%hr8X5#7R^l5_Gt5FkZ@5WCU|Q&xEiIv>0FiL; z$rdMw?t>$e_Q{|o#%Z*YaD45*C!dA`kPaU67la8CK&&Min|H}mhF@?nk`Y*90}hZ* z6&u1Ke@~+YhT|)NM0ZyIMN0}-+6$-Zc_)JCH$D&k_Sr)Kb$+&DU<4(BeFl7ju*(3F zzt`m=etEMo~J=omZm?kE>ihW|Zje8Xj81K`jU+NUMMFF<`lD5;W} zaAi0?9F2rKrIAC2Q-%LqLTMN}T!sotjgA16e{js_(CLy^{Q9BS;tL(bqLNBv?gwc5 z9A@5%9RYAk@@5jEByT3+lq7u852765?!s(PC2+*^Ih5&U5*^JD;GR|Z9MlYI(CH?s zYs(j>;e(?7nvD2+665blekdqU#jh+qVTh6}v|{)OcuMGFyqSb3$(u1dxNnfoRW5wSgEI!^R(1VVP#tx-)!C18>$Kliz=Gyg6B-mROmBw5QR1wODE$ z>cq$oei5~{d^*8ziXV$#Vr2zO_k6Y3Y8@=7LSg|IY0P!;18|YA_hU#}pYHfH6_C!> z)>DO4fh9|>i%zg4x*zkP^{JU}Qvum*?G;tX1Xyz9y4V1qC9Q)LmM#&j>GxO&&2&ih zbO=IwiTN=}H+wmuC@TG-&i^zxiE&g~&5Gi2;1rdWIgyDmnWSIfkf# z4NFMjfZ5l)y>8)spD%!91dybm**}n^)jyDA>_3oXp9X*=X{qq^!-EgHO@Sle_#!?g z8|FuFS~K1iPSnHYvr4W_T@<4`qf%dwMPJ4slX)daHy{g}Nro8>-$n~~M96j8NRx+G@EHIRAJ6xJr0j07)JZLx@}s04V$5IRP8lLk;De0)>S@g*ku#&hWzO ztL4ze0EkC&T5pBGAFL)O$ok;@*KKE;bb>H|-f+>F z#>vkQeZ$AY^FkIOMg~xx2^8)n zKqBYh^dRDJuo|55!vu&SJ`_#}po=3=I6(-Pgc|`|QVq@_k^mzz$jBNP9RVX81jIRq z+sPuPDJet}PdkY`{-QH|?*2tl64L`0IAU1%FK%)VaFg{Aet3@|?>hH@@|oZ8UYrg#C&68dx(F*igmB_J9y%;8UB>K`M8XMa=pqKWjH*}LjX}G zLwljWJNF&kNCAEJ_hqP^z09LhkycD|E*fg7eTiH3>4f1MmmQ-Gp>cailTzmjPq6S# z`-eZYtqJ4JwVydZmU-M8=K7e4s|#_|6V=q}_q zg!JkP5R=wnA!54@FWV)laM%g={0^f~KTCnwRd+-)WGq6(cIOB6g$(YzW_5a75cMz} zJ9cBSrxyI5h$1$qeVD?0MKRp}s{OrC7NP@NA{8!jc$J?N#=b$d7!3)PE_UpbrJi9i znkQ89*s(7_SDfYr)obiniKQOv2&u1P29(dr+T+(B#eN9$6Vj{9ef5&v4Ul;vl-Oa9 zYOwDgyl81&^ASg({K{7?2ytt^fJmf(BWZwEV{B}oPuL6oE& zWE26o$4dw=#Qxm=>5-4S@fA6Qm0?o8)_MGJ#U;Ss10x~`LL%KEe`MhQ8uGsn{6iqP zjtxRFAxtyqB`~6Z*fd0dY0^UA9Ks#_kR*sNT%iEmqzIJ6t^LzFl!O~fa`x!8G)RIT z;LnN?aZli1+~s-7hMb=Vlb_aQVA4lVwK&`3D7xB{V(9Z* z;RBEzC)M{Jq0^m=mDiR~33}wuGT0DxR?=dKdf$(YN!4&^`gHN%ZtjL~&RB?zgiukv z`F|mb4*xFe?i&XfVBJ6CwU3m@ z%Wh738j)vG&(=~L`O)abpfrGz{B|Eo15uK{pd*4P$pDD+^Z_KKBS2|IpDhBmP!3At z2hx~B+#wCL<_p#+=R<#c;vkGTvqEW{U;9vjG_wCtk_nJML`mL-{2@w`8v2YON-`3< z5a5(#9ApGhlEjb^L`mvHMsP~&+N?P-vC7AtBHrr#b~ zeaDYjgq77=J4z0O3xZh6C~?q}g7*YLuN&Uu20cc2j}`QO0RXd|QT|>hxhlN(8uTXM z7bnz#Hb;4nINuCp;(=zFk3%1s2tKRhmwB*{@QlqlW>!bCuG3ppW9!kPBD2^x<>!+Dh_WP>bnvvA|4x4QZkZx){(`R%Uw9qJs2o8Y8qv%)?eprG!9w!<;F0_k)`65_A5mckkXS5 zND=#9(^BB^3kx$gf|4GG99M|Lg97In?MRxKJ=OiN+pZ7W6BObpQ?Dug8;|-D6nrUD zk0{+6GeI|+GIf*Eu2B(m0UG(6(zMZvAU0w{p6XCd@1A|_g5q13cZ-cCwFu$khpgA} zpDB6S6}6)}5R-*((8zZElt#lyz&d8gsw_VfoiFLGlMAN9i>eC3I?1&%SI|ZCwqce> z;zyq$9r^r9JGHCOy-xxr!Vb{L^=FUgONQ&@YlX6xq)r&0LKI`LC*y0#b1CPDb#a1M^HW& zh2xBe0AehMDXAAY7|7p3619CY*rf0{LC869ukRZ-*+Ywt4ue+}V^ zcA8Y^&qR+>WL37)zB3~t$EG{t&~;m`bC8*IbqeSv*lDiS^2 z6RH<81w?qatnVWW#|q_~<452528)=zy&G2QlUaB4&~e5YMmlPu8u&)S=$`ptu1Osh z>AbX4Iu1SFPU#1WgG9_*>@lx?=Lht1%#GZVeNBf)&MEXdo`M7MB}S&K{q%j8kFMi) zZbb^E{;7O4Id)Nqeao20``4n+mRh!^4g0O(PiWq47z4R0ED#w9Aj|3de8yMC0=I_6 z;0tjpEU>!@NLP*mo(;1U-gF%6InH%`Kga}xwF$_KSl0pnH~9OWf z{oJqqWZjOZr(b*jg_9N$HBO$cYv=tEqP9Szpdo&uwVwDhG%Ukr>1FI>Ha+ui*CDHo zL!mJBxuMYL-+AW8vvyCI7gz6XmU8&8;(5nNKaw>ac(`J4F6b=rsQ<$N){5a%0Y73q zL}7w$E!UNOuNd)1{aORt%Md21dV@*2W`XH9kNTAcx|U@=UOrrry}=~aHlvbbFCOxz z-|v1CxHX)WNPGE^Kl{Fvc;JWbeKxrlx8vRTZ4m8A1(14#g(9sDAKE%t^TIjF1dofS zD{}Xgk_ZOu@D0fYf==Opi9@!Y%MbRQ_uSrFWRmEFPh(a+z`{F49 za7iN=;KVm15C~$SL&=c~T#E>RKuMh&P;xAi>w6-@P5TwC?z~6pTG^E zNt}DUx++4+@(HY90EhHO@k+4HwHe{uVwjQR(M#|ov@!(zIp0$6X4^94QIdt2#3sB5 z^mA?JH-JNI5zTE0`sGSA2Vbbb8@dCi$qWcq)TN(2J8Du9hG50NNJ%(mc|%I-V*C_K zBvv`3Z5eKKB{G5If>Hse?w3zT;gv)H={FDwUJ0p@>rv3I<|ZiwM}Bx6uyV=5L4zw1DdhfvH^AQoP?KCJ@ zrzk8S+Z_uk@r5c8Nr|E3BzxQ&8ed1w7;`K&_5S6nW9>y=KyPe+bYzxnTCf0`iCD%nlt4^O|8U5n0@ z>r%vgad1n})i(7d$<>=gfM%RDEuVi92db^*HO6sCL5jCMNn^}{6{c*pV z2xh0PEAj{RS3A>AYD9<8QzD8E;}nNhOs&JV8ptjmR=@q~DDaxithy|zT$t~+`!U$< zOD1T-Z~QW~CE4pr+bd0Tb8}uz#m2aZFQn1vgUae0+vUrUDd+8qS4fRE7IXgG-T|JY zMH4=lF0}3(95NyO(-<#zIV~shi09nPb%#;~er!lg-{%KB(aAQE#&sjZ4_I z)#a@$wsA~BtMq<@9l-W5T-_n8)4c=Rv2qFN8g9 zk5o46t*%hE2MU>#nfXynU$>n09u2)rw!D}PZBI{esXFaFj7?2ZrA?kyTDbSY1$T$g z)$G>xa8H7haxg+(n;mx+XCLxp+~*NHEDY3bp=4d%l1P;8BV_ub@`grk)0UadDK`|R zzJ61!mIQ>caKb*4%fVZviobn$y2w72b**HcWiX{gI)~LAWl@zUU9O@zTVj@eZ!II- zOz>rBP20J0D)8i}n<)E;%`o2?e$?<~1eN3L~l2e=`~?y+-Th$HJC%RmP(EL zaoK_O`A)nb&oN_PZ#z$lqKd_YV;u!)NQ*ZKV=S85RuDeB;}~L(o_XP;4UP|zbKhz! z6l6Y)oQQSpSbOD6Bhhj1qWAOH*x3xGW6m2NT$X&)0(|d4u#BC)?v#tGl}3GegFAnk z@f^k*au1WKq~*LPA5rV1nxfT@M-iA<&nvndcM+JD^;0n@svFC;8j|V)N|x(gc9R$L zIa2bzXjv~5@TDj-2=s?9^7O+97!R+G?LSe#h;~=ekz9zLJ32K|_A~EFj$7qCS#yjX zB`nkX#4@X7`MxT9{)}(E40)*6b2iU5`7Be?gWqs;!h0y~r~HpU0{G@zw_qJB(Gj*I zNU&k;(L@Gpe8uYZ*1i!0}e;itq|wciV^eLpW9>k-)0SadhpZHjxowH?E( zCkia<5!9NknY6C=Q=%JE?czCb52qL~x3AOjD@$^@tq1|jIkuxXuhx09Id zT~4bPoaW1^voe;U3 z>MUL37q*HVbMfQn2+D!`=nXNK_YV81Te4Q4AWt?E>nGzGwqtlnXs;s7&c2uvI0?w<+Y`PU5uBF$gLv3!zj#fiI(q%MKR+;9^DjXiH zF*x^{5p`YJUb~cK-yDE5Ir@w25hKF!@xW?$qb8F4SckA3H z#w&Qv+i6JB)?lh?KDnKj=jG;Elb=Kbt*4nkM&g!zZ{=RH<~ucv>D^?aLY)@pe$s-( z;cF$M{_7u4ZFUA|K2Dn@_DtqKTMO*c{KBIc!uO?V*Lm_Q87F!x9urv+!6EfyJ7P;E z#5&#REEDz5p6@8L#Aa7!1d}Hh*Nb}CUv_cOT%2a1&kvq$VKN->tPL>;sEPwWJRcIM0|Xb>%rY{k!y(Q&odrJ;yGeAu-RD(uKZ=_4kYU z>cgGZ%P@0~C_6RmzQ&<>5^l@MS;Q@8n}@s>b0c{DfwlFUj-0j^v4b30-6<-c$li2t z_TVF`^{(aJz2c?p_5c{!6XrhFKw!0>8pTX zS5;AJc^Q6X5_J;5>ABVW{tW1E79GqMx+Gu1Ttz?4a@%FC@Y+65<64bAW+Qdyakc5y zsUk~Z!Xk4v-PA6>95sfKvt0-Bah-DQ-}%tmF{6}Q?4@KlK5}$M(l0Pmd%RkBHor0b z?7YsXOVCNl;EhH$?!1HwSAOHGa+k#tDV}F>Ok+FZWz8gGf((1VW_BYCQk2(Kofj(% ze=e)=eS4k$w11ysyul3itp5kz$FnvW&c-rZH|vgovBr@ag>D}*{}eI@CVIyvr2frd zt-~}{9`bAM-1qsJA9+`k>MVX*;+DSYqP!<65p$WRph11c&-uKW_( znrhCw93HC&mE=jr$`!+^{p7yVS1&AR*Ithr*$Cv^VV1wH5*4A)S5A-hVZ|AVOUABFq5OcLyq>m0 za{P4W^r_Bxz+JhZAx`5rJS#slUxj=zVEH*3Zz>eY$S`5cv0+gBfKU<;ZtI9s=IaQF)?x69l$dbu)P~5$T=H(!on5O!&|A#P?KEWIQlGr zPpdA$MYetwHeq{2KWs*~c)k9>hUPmi7t2@jn*EBb`C6`vgI4@x&jX>NbhpGnZP;8x ziQ-$1PyC5aC4V-!PAe-d3CSmlgr84^&@W=_nY(9O%{ZYy!1{^nvg+7-;XiLwadP~0 zk^Il|ox-K*M#p*L`x76}dVbFPGyQg`5EK1VN^aw5Ke{@2+qeQlm0$^3rsHa^t@Qo*&_M|$vWy~fU+i`7 za$qOgj+d7qZCyPI@2SAq&bc`4Pqq)uMb-L`8*$AyRXFqs&z;i48_1GTk~~xOH))a$ zH#PbC*54uQxRoI)&jlj&eOc&|S!F^>>X&GElj!2Tz1!<3u88SQE3?1co>nx!UO=`s zW`L~GC2$bZx^(%XhsjpK}7=EzKbH)!0c4pJgyqQiw3ko)5|Xk)l^+(Xk@?)9vlk z7M+X;J3!E6tPydiojc{%^(k&^dP`|nhc$jxoBWJ@<6L#iB3EGZ0GnxI?stzsNl9CQ zy3?xIlvH^GYML)Wd|On_(BZqWzMr^nYu_~cjLs8}(;s(|9CNYnJb%Km^T0mtOJ#jY z(}(hzRY$y26K4AdbA)gBuaHQigV~ZRNlI3I$IKb~4E13Z82Oj7s4_F}@SR*n2ze zAP#-cVI|fUjs9^v)nZxzTH0_O=}7gn|K1*I{vbri2*oy zQunW$R|@DJ{VZeOS((fd5w68fJ2_=Ks--{n!V|#OAaF|6k*SR;6U2_c4waAn@#Mvx zBQL+y{A6cYzQ{~?CwqP;jdGoOZF0tKy3WrmwUMr_>RM~R#Jg6Qh}LI+bB7yh)ut1Q zKEU%mGV3MlEvjP?;EMc~Kc&M^S5aJKR+LjDo?xPojYBsY_{RC}uF|f;*Vx(IZ^ruK zLnP5PqX&sJjsjW=CkO!As1 z3;0&=tC$?*AC1g8_r6dup&fPI=Jx%ihFUagN077||IF5uDoB%5JE=@wV`Kp-2xEkS z#3W9^_XkOk0x4!*fLf$6?JJX4dH%+aQ`pl-rOF~w%2GyOl|`hMrHx9Ih4oL$nxs$C z_fN{1WKYt4Ap2$`yRD#Q^8BUA;gxg7^fCbklO*4yg!O2TGO)}wAQS;~u7!~%;*Yst?9Ro^qF7=f=u zb&n4;P{%24e?vVJ4x&C;=Rj3k$_h85ha1Oln!IW65vuO-BB+WLE~ zNp1$O;R6)-Kp(ymj{u6KoCyLEaM!cW)YvT9BFtz&zF2EEVBMV&j|>cGW^#c68+cD1 z2rbUZ0|H1@bA!4K2Dhi+D;yMXGlCN}bjy-ZGjvcM!CO%pH_*EEznWsR!p<5@rS&lCCQu!Uvf*0~Gi`5>&x4xXlm3 z23s?LuoGex=b%iELDTOAWsd;?c#H(r60OxC`v^0vmx0q;8B<;$2G6<@0(`Cu*xL@~ z;ec{!XMTWywu9S`;7&QmWtdAV4`+?AcL&i$xBn!L69j42fpf;La?mts+TN!8)PaYlL9Y_D;=iA1KE?`>=8@72+3U1Nd8>JTL(vIL{#gRt)c$vyVdP4WDj4xvWo zG3u-}o@dF6AG)Uw>xx57`qqU)GU7~pVQzqLXAe)Gw6 z)LN=r0p2QXIH|ZHS6A)&N+Pc!&L|mWRijpwmRF=;7@zuCQmB)j@Gt7tMXjz&MQxfP z5j!%YZznGwn1g5Lk3Y7`EA!`Xx~O)u+jeee++p=~i^}9{@Y##{9koE%6?=RxOop-R zw@YgOtv|*NYlsn*{LOfUBCokhjJ05GlFIXVo-8&qGR(P@PnkeNxQ4Z(T*CjTRYcEJh-lNa2w2DNS3H#p?&yY{`qsw>T!L`$@TaRxWk$K4|h0>&>fC5 z-rsjP=>Oc|z#s4a{`bv|DY&`8Z`@<>Llh617QKgqUn+;EV7ogr=E*JjTu#0RolZ@G z@(!X%Bci`TteDZk+n%+QSSn-TVD>LGis^fq-z}bp#Ssmru)jqbH^^vpzw^STv0~g% zdE82;kLq$T*3~|r;&^B0x(c>)%0yB5Lo_}v2ig9)6GdKy=+Lh+^8Ju$M0Tc1J89dW zX$j#vZ|bpgk#A=>%zZttE4@YR%m90}oaBtr$zFxb;Z*ACLqMrTA%=yk5GNO>{2)9| z?rXGMxU$N_IXAJ*??!y}2Z}{^<2PTm%?g<4EsTUHIfg9FMDI3tK7JSKdt{mvnUr6* zD`5ZJ;-q{!OS+q`H!(q3gR($ztKW0Uv8n^>_Y@jm9Km*1Qg=e~+qYkpLl-ZlV5hw- zEKAa~S{6|ze3VPN&SN|Xvvxi!`l?I>CRbJ+QLL72Iu6f!&$n3jyPZmF#!wd2yi`rB zDg4!^aL3}h)ttuE&?`9Zj7>V5TpFJ3ne2F*Y ztICrb%G3(W&RqF*b}Z4`qAFEYE3U?II2ksNZVcox1hWKR(hX5WI*7 z7@!tWn<0-kr(9s?ZDCtT?5Hi9>vK6eUR^Y)0@c|%4vDpx)Lwb}6 zA2{pHWPv&pa;NUW4bHhiu8!)=Q*}ZMt0FTt5RrM*lmJY&RQG^LRVo$Mz%bCp37q-t&Yf}w z=J7U81R$Ql48e^7KimM{x?;aR<{D-;^s5?QC(vvq@toSBzQ!kQvo~P3UbCO2&JLrl zVe2}Y6McChA7ioxc6Bh2ZZzFNa4jRfQs)(`P_#Qbrq*mY6TMJ%pv&XuX%f}f)#_f)b{ct=E#q-QnO|0&i+0w6j4Dz`j7GWI8mp@FYz? z4Up-QQ1Y-pC}=>l?Y>>dv~wiB+cDPWc|rI(+5MgTzKF{{M}I^8ex$=EG{5fOiDln8 z?qg4?!Y0HVY9(WT=12%OD9K;{4!wM+Lt>lwaR!}osS!Ut1M{=)_Okvp7lw{@*Z0Xr z0eAb25A7*mno`_G2k%epKUmv5;87FpMjD{q4cUAg;`y%JR`e`8T~N#JEO^9R^VTB{ z6kohNn9r8Npfw$5`O7 z>BF}nTT(=)cJ~{SY?-+gTzj!Otl-{|up$5Ok^dgEGBq&<4xbOeEtLaOW`<;4) zP*y9?1Xx;?Vqe#(Qiv&*z*j^^lR1YKa{&~&t+jD%S@9yKq>2T<~ zKBTBHyW`J{bsRc@d>f{+gQD` z;Y)_K;IXW)Lgt8d4o9P>Q?{ME16N2!B2WB+-{7C;5PHojR9zZpU{YS4jP|9Ab~!}# zseD?)KCMFwu68WG_4z1o+A!@)*O*N11n&p@wK)Z{>&x#Ig41kEf=qn(56{+Y*{rzl zOo`H)yvw_lYNxQ(bA7uxSy=_sTB*wc##@qUK(t0t|CPXb54oRZr@Bt}jOFEFP3)g| z?%;>U1#bfCXvjo!Et&nD5QOIJlDQh*(_Vg8I5$T8um4$hb#VVRp7>HPY><)l`Ebk@?pKn4Z?{>g zR~`klN@1`oeJ>I&V{h;wk-&Il;EBU7iou?d8DO65)LUmVr8#$gl)T$ub$PM#W~Zcg z){yT!Avd?ipEYxs?X)dM?Mmkfk?ym|=cjuD7h!#RPZSCbL+W2UW@W~mka|mj7jO=9 zo^B%2xM42sD+^xWU%$I#rMYUi<7~ylevh^^$HGER^ZvtFYR7jE(;7^vow%s!0v5N1 zIQoW;C0OU{kslQo&a&2GZE?Fx+wrO7;x0XN-&;cLeJMr{{9>`w8ypYlTk-hM+1;p~ zZ^y+AQ*yHh_px8-%HIlE#d5_-YRe&t_+E@^GLsh_&hfO$T;?bN&8c-27sw@%brD5q z(YfVkHY^s@%Rk~Ccz~}jP27Akr(*S1XYA`0y%9k+^`KGF_y|&m_UY5^G+$M}r}6x1 zmHcY1?788F&vVEL@Qr8@m-i4q@seUK>0YH95i~xnAwQPMQoWzO-ruxl)VZpB2Pu&^ z6!nq?HxdbnwSO5sBWt6djpV!Gb1{s2M|#8C=oz%?ud(tnd{J^zTf%XfG+ZSidR0?oGSB-C+q~o})TGQw_YKXBu9q@4Tz6z?%bXxlh z{?YZ^GG0x12sSk2Q;ZbCxk_(12m<{sO%Y=|6f%lrh6c_ z_n{IJyg4opDMOph&8Ub2=Aco#X(n%)Pavz(p!#hfIK<#kCk&K#O2TJ1Zd8-fpxpn+ zCAIyx0a?=ppG*LH=(oHjZ({NF2;?;7C zo9}^PLI$S~&?ypkln0f9xx4VW3XYqm{HC$JX<(4rlK71TlejsVbFL&Le&phQqln~p z(|o>Zf^Hf}14-EN9NH9+P=X||+K7(wz(@rO}2GE1AA`VQA!Fegs8HT*&nAj0YeX9 z7!-sFOPxIq3~*EeB1$h6w2&W+kN_VXNZrRs&l(RB>ltca`v9r@WQGk`Lv2Rb04t>S zBlo*zgZeN&WUl0-{3c=^R>bJ`^4FtxE}=R+9gvepK<7JW|8! z8~vmczQ1&nF#cNLr2I=a>GNO0N^E}_F!2woD}vofB;C4^ zE&_W6YDI$Z800qt?VG_~>TF!-6i_dcx*3CO09dlZ2L|9X12Rio@E9_15vM;?H-np% z8)2lr6It^&?U0))+${-6X@P;mO^lm5z%>Z;l~};l0|ElcFEDTepDr-dhnv0oyN(Ap zW9V8;M(WV-WdVEL)_q7^2VIr?$l(K<(8Oyn;Q=OoRKz*%GAZoV%_t1ubokeXz*deq zWxi7nRfM`)jm7)s=TX%BaNU}Ea%tXIwA^F1G_X5AFgLv@GFTOwO(XRCuc z|DI)*oa54z;}V6j9=A+JwMc*E$g*GQ+OOpl!}^DTcCjBK@Vu60GW$jz*54f^*Wb&> z*}d2D)FD^Eg3%^6W#^jU5YemFWa&C-UW-d`7blg5E_qDyp8S~Knp#5IgJZO&PyQD! z;T=iA{Vg`?H0*TmW2&(y@eV>@0tfFe<*qq*a~cHNVx)%OH(hI?$aCs*-m5=U)=4gr zua!3<;x)LiQ#GQ;5FO@?QY#os@(J;Z4(8jkv+L{rLf(A7wOqF9Y&Ul?dD8j+Lo5l> zSNfy((C1oG{1h&jL{Wvb$*p}lgf6gnaCL}Pfv0(IFJuUPdDHeb&NJKX^YSKx54eX- zVObb3_x+R@Q=>*)KT@~n{1(@Iep9v|J{_0S+&9dzaxwbN^&U2ccNj>H);+<0d}n+87#02H`qv`8xt_O;8?C7Cs?|`&Q-=LdaYb%fX_!V18ZZ~yIp&}K zxZrp{H_=3@@dowyPv>A7r#X^I+*w+iPfz0y{c7VCQv?IjT1&+Ri}x+kWE#oy3vDJ< zIj=-i{R9-2HcF`PHg@I{JFslx7xF7U_>K%iMCZPsT}1?_zSX%N<3dkAu84TT7G+j zSqLNN1#%wuKE@x6kDr>lZ}ZvioU9Er5)_z_7oU(9#y8mJCu)!^R5Vs&Pl+OIY8WKy zkIBCm)ZK`Ck%36cVXr;w#ol;qS9MO8Ne~k6NR?~PRT$gz>fChc;9PGqhs1^ivCG)m zwigw=8$KsD16j?3iSZ~on%eHx`IGWa#__wkJ^oX3(!claMx47MX*Z@tm@#cUBOMou zsd*aQch0uiKa}lyi-Y#}m;D#F#<%!=>rZO=ldsK3&P%@`epDOY6;FSM6iCdKsduy0{QgP1~RrSUlC>D(Kx8;}7ZUtFt@1Ti6`B^}=Hy<#Sz`LtjF9Bc|JA zu3YMDqr_DiwQjON;ecYz?s(q;m#Z7`x30Q3Or*!EUfYeM?2}vvf5_ioA;r!9=vbXP zzxtjK73^Wt(7?3reE0n}n{?%v0t&%9d&`+)RF4V6zA5$<>gLtVsA;)%sy^lDM=m7z z3vK34)2Bvt8?&f(v8J023}zi$3QXkQ2P4wbCeJ%CgoocJ;R`MZSyi6lEI>L>Q8Z{V zm~juDIO&=A?aX_9UZB>!iMR*LiS8io#~MGo@TKg&xR{PzEEx?#pzgOc_}I@Vi?(XQ zX7`=!>wLcqtey)qK;I%WO1{GL?YfEYT!37P!gqoBuf-(eLp_>HlleMIP?IYV@@wkVh~{O;5x_CT;vI;xWIkq#l9?dD3v4B;)Fq@qoUV@%l}Gcjz3 zs+5I_y1hFgJt)*yzdR(ubMk0%@B`%|Q?Jvbow>csyH|BD?|vY6 zTx(R54N%x79jwDFtereP&)c{saZ0me%lV-3Ss#|xUW~{7&TzN;74y|q&+%f`HcIBk zde0Tb{w9nieiP>P`ow~^uZ~ci5N}AVK`nj%CH;VnVHbs@*V}wcv(c}fjjsN?*H`Ze z>GC)}^2W6nRCpbH49ubNdb_FeX@2;iu~%_YDZK{iYXCjl+lvx+zOyH}!g5K;^FMo@ z_@KJK{q`$Mmkj46eSPLwrrCSdUT_e~k}fbmHguqMo|}8ZUq}mNQDSXL#=+la zY1k`UPcs93*gv3b*&3g}Y3NzdqHRNEyoYjZl01?valG7C=kR>Jga7>)nlwr5TMM(d-Qazx&NJ42M3Y7Ih4N&rj9Wds@nf#l@r11h4h#?dm-iQE3*Nc@a7?bd zKgRkUP2f7(6?O2*pUso*;Yy}c!oAw;Xzp^)Inkur+)1-vZ^@H+tjxTWou>z|Bn-!v z5AwI2N5exRVlArFL|yBmY|XEi5E^9i{P~J4u=>OR&wiOKFQoo4i`?>2yt321P+PsTZkOm7PI;Sp7 zSY=qbcjmcT@P3y~IU7kbuZ&PS=HzT!fsw{9sVUGts8na4DE-?-PUROXIFX7}@(y&?6Wp1%QSbm?%^6yzBy9qr0c&6yr zMZ%GJsdi;mbo4{UaV%gJX4v+}Hq#Jk%6`omX9{I6S{+93v}`Cwr1WRa<4`^H&%T)y zYMZKTe)IB24DMSN;#p>iXF)!d)Y?A-lX^WX7gDj&7fx+v-Ii0<tPr^+F>%^1Y=U^;huexKwW_!q$=ApP^x z8AFz4<3@Ya|C%ylKk*60n*`i4prGy!ebe+Z7yhIWC-m=V(Heh$(?lSoZLQ79rl7B+ z^~T2BOjuOw*;7^yQRsQ0m;XULy-5}ih^OP8gZJ#3F?$BOAV<#9ezFc_CYI=Uo64k; z=#jmmkB#iF3@jmDX@yl$HS5LBePoFLCo1W9h=MODN^BdzIBo2fZVgK3r$4vj5^B4J_^ZySY%>VWCkNbDmzwrN@|NqPLkNmF3O9vo-wvIFXZekR5s39xZN|pNY`hrK)@34++@%*pw;fEEjk&qLjgZ^U1Talm7jTHB2PjUc*ho~EmTIPA)>tIGi*hlbI=CElm8rSj z;y!OPzhI5%KIddRt)+1z@|B5uCR2PuWynK6O)Jj&*6*~f_OrxWA^X{BPko0L;cy4h z&w54OhjT`=X7sAv^H~lIgSGmuSe;Y{IFs`cFV^2O9GpLMi78xG?K%il%QRr>?R(P8 z!uWJIBw9`EZF|$p$mgH>BHRBLd+#09bg;FJQUpYrjV?t{klqBO34&4uq?brZWTDG{9j6YvP%UvZ75P* zuJz!itp*!7DTpFWdvNJKdco~Q5ym~fThkOO1df5lg8FjBY!7c$Ao1O zef-0E>5;GHey)^_O_2J^anhvE7Xe1CyUGRe8oMV&XNV9 zC^A0**F^+zco&dDdTLw%3uRoVk`vW80w^qiS2Ks=)hMDy1d*H`i|HZ5ygPy^E=Z<} zFv7egu4*+OA_$l!AON8LfCdSw(E`XX&LbR{kh$zqyN@7diVFe|fChCc^_x(Pq!DTm zuGmfv3x!k45v@g4RKV%24#k14H1qgl2i~Q$vH@3O`wYtAhz7g zPr8HR>%0bLc!(t=Ge=vH1b8;pc%Z31NY)f!J^`W>;P@;UqKG`UH$f-hY<$@?*%W&$&VJ|wFs$pytKDz(c6 zs}e*A5TOi^tRi55Ts$zKv=RH=-CXkx?3HLfL>Po`t}z4a0SzWpqZ_cQJhUsvK?o8= z9AJU%727$1WN1e?zyT~7O*_6Vh_CX{sjLPTT!=W3?p}$V2dW`}+zhknU9f}tBeqED zP-hJX$Q@YIfh_9sCnZ4^@h)s{?7Dkf-ui6`*yKa*SFD(eUe-Mj-_A919%N<<=-v30 zdf;cZa@Be1cVhI_qiPk)EeU$DT(117ika;sO*G-^PFEA#of_YtYuyV=@pINsMCZ5Z z|M0puAM=)H$y0eR{~neT9&jNaF? zkYC$z23I(99L>QRhr%QywHxBqT~~QtG1VP6MHEY=(~6(y*12&% z+WcYX#!fCFS8z5R9n$c& zOy$_O-nLLh-Iw>j7b>(;S9gBxEL@I(`K4ZW++BSuLQ{}VbTPkt(R)cSG%8?mR3}PT zRpi=RCY~s|F zBKW2V|M82N3&I6*^Ubk}Vf=|sO0_#~>({y+%o@vNzNT07vMY}-T`SKnc3ZyWb}i~z(o;z4n1_{8D*2g-EXlr?RK5;|>>&r^!$_N>mKR&)a<;l#VeY6^3s z*@5Rh0~0mJ!Rhbd`n$GfV&9EU9tzHtNN{+s=`k|ke?~xNgq#{^-c%}_tR@l z1N8zMD|&spDFiIjb6DTb;osj!7Tl~X)2-pTV2j$~7f`D8x;Z4?9@-1NfyZyV8+ycK zi@V6oXk8NF{_Oqdy3+pJ?Jb>jPbnbyBXZ=yma*gMJygpa1=oYB-j5r&dYj#U#PO@= zglQVn%+m8>#*{=`gwDW?YnSSchR)fh8|+#~*=4ZP@)qtv&`76#>MP>4nsBunog)5m zI|!)pQkcLD*Byh?$1d29ZZTKT+2{BtdO2SWYfMU{9(;r-m%TmT8x3vKCi}7#V=}K_ zQifY?^Cz|4<<7G|uPw@0I<76gvYA*II!I?{E%g@mBz%K2x_NY_cDH?aI`oI2FV=)| zC818A5216n9c-)fXgP4g_3UKKBs~4KE)2%&c1OGPz}Dcw7m=${-@%O!GZIsMpNT4a zJtbhpd=6LL*Q2VK7f)GX~RY|M}aAXNG1f4=_z*SgUE*Yd;vb_PEt|BW;FpZ@~{7*Ubzx51?5&y;+{7*^r|IahX`Y+#$1d!j0O2Ada z7^c_MWqF>H{<9>6{#K-JY~*O*tc9$|nf>b*F&MZ``0o2zE@~6sM0#Tj#<4FW9Wz}O zWN{4luR~*6?KHdzX)D z4L5$5@EaHDbgrE;&zK24XLTmm5V}#0bUTF;JqK!LMH5qFK7JH01YcBZSb+Vw40Q>E2WxLAO+@o#k-Zt!{GrT`lVl-`9 z-R`3{FKK>07EegyllnjY=uGhv0^Z)dV z8PeVF(KdeM0~rMjj60;rGqS-%{cMRkqp~~y`x&XLqb?MFW9H~)X@NYWk=q!UHb|9& zWRKVC8fT3%D)x%6CDmSY-)ebo{yxD-fA-c32Pu`msSb)puYTjGymBB?bZnwIdZ?&4 zr7Fjw$VcAAZZFsM+^0pAFaEKDkHfr}+h&SKM9yH*QQC~3+v$Enz{%62;8zSSCP}I_ZB}7@U}vNHT6bW@^wgJ64=1H?iVbgZ z#&xiT^(#Ma8KH-_%~$V-C;UEbY5F??u>AR372Gd<4o>gTsIX>6j&VBVHZ#Pi4z9e0 z1R+=l+)vX(?M3CAookqg*;#$vUrvl=Ej;&79HyBc{P^hJg;ElsUUl~VxUx@9-MP|5 z)-@l)bl;(>H>c2dzS@#g-#@EZdWPO_d|(h1>Cj9ONM-WZWPk0+uJB@lW|T=C%{;~M zmqv^`bS;tUw`6W)s5qDTrKX6qei{1Wmz;vv)05wN-MpE6XqRjbu&4WU9!)wcns8^b&dF0zSD_hbz^^*t)6 zN^sxve;8Y9r=lErWIQ7w@WCkXxebx2A|YZd*mr6|G@73;U&nbmv0ay9gu&SQK6O`d z6GMeSiRSzAkTGFSO}Y>HPhb76|HwYC$hE%|gaUArZ)=kNN&#(2m>{fg64K5K-=Mp;C~*slTGevy*6-QpyXp6rLQybs56ty!rJDo=1wo$~z1@xIDR2t+1;2B8d?K}8OG<2bX z9Sv{6960ze9W-1J=(Iwj`XCUr<9*JN-|l?)upkDI0Y11^I7~364_pLH31#|P$&H3X z5a*>NxB=L#F5w;g7l;Eu813L93D$huGt~a4d25o+N&z1TP}&C}2cG6%D+_^Vmn3u= z=@|rW0tRys0Pa5u4kUmlnI{6AOgH;J88{gLBb_a}6i~9Sm2lw6E(z^N0}mR0qTx1} zBeakD8Sua5SqiqU^g8SS-9jKYone2Zw*{9E{x%4H3Z^6=^Q87?pXbnCu?2frY529$ z4Y?HrFd~pUQ1TO?06S9L2f2qHbO)(7NkU!GfX_M7;a++JMudz{>PZ~};Nt;_UJ*3d{p%6<6xJeWG-BX9sW&PgekK7MGYM)8d zPzTEl-qa8b3==*iij0s_pC;g48xs%}rd4raYyWOCy1jDk`EUw-W`tsM=IVzZ)WF5- zy$mzMk4El3j;p7yrMPNfRD4O`(q?o z{;{dMGYfJZZQCon$aO@__Aernpl;4&LnguZUPi0tl|^9CgsLZxXbrdq_gk5l?)!{Lhqtr+ z;haO`nqMnE6B9<-ArmB`pq)l0c*-Su%7fgWhV2zHV7sfu6S;)kNO5Nm=e!Wy>Ja9@ zkG|>O?hNTn-qeVHnE7kYQY2%o#8h2dbVEX2FD~pxXimz9ADy36jCS_%GuD_sgBN84 zDlT_Az8AYsgnzHWH$&P!Q=fjv%gUbWsQ10p{gcXU(Y*344Z-^_T3QD6!Ms)O6X2PK z+vLg~U}X+F`^Y3ebmh&+*2l-S0u;E7A zfb#-2GGKQ=-y>8X4IrokyLnXn&tRW`0rP8+Oh(1;mcda}w=;Mk;~{5iJve?~s)kO5 z1052b9uBHc9o#Vu+;h-#h7q`sDGz}q2!po^=w3!o>xEjDFnT8BQw|P0&fr);d|z<= zFo++Djt{8&U|D*OUwh_0BHdfirj+0Wy$yeja%zEa9m@|zJxP&0uYYA;0S-M&THN*u zKk~qg`<9^W3fuW596i# zLE6q*5#7b@0l_HWi@tb!PC*CGa|f>begqzu>G4rlI3AZD;sc=tORZYn-L?ru%kA9; zByRYOzAi6TuvZG@wE?*ZDSk27VP;8iv^%sY0@VwD0pcYaTgAS5DH(4$?}9sjy@Ib38^IZn!%_KVg<1jg}b;0+bHzP-S^jCgc#%h6d)q&1NSJ|yCi+a6TdsEPY%}$Aswt zhY+h!iSw;0#o8}8rst`VN{@Aj2XexxP01o~Ej42*svqJ>=<-Yrp1tymYRy^_b0WwY z6>+V1a}bu*pQIaEKO&O7)9}OoY*jI;@Lj$~Z97TUf_Xz_6)#;@PL93?5eo*d&XH8! zms|8N%mv(fsc^H-<~WwE?eKE5-iXTCVP@%1l+j6MKKrphIX=je=3lnl{HyEWLLzZ4 zsi8Nm#{{Yyh`kkz!81Ce$O^|C*j(87S^&k~(XIOG4#ACz_IO%uK^CweVEBBG%KF)9 zA*5(gXD0Bows4hq;0^lejfxGq2^ad=v}vEzLkijHo;?LZngI8gBRcHLl#{wAj7V6Vm; z_DJA%ts+h8*lMCWEJo}eVjyP)A6MH`_`*eOMuf!dB*2e5#_K>E6 zxz9oHHS5%<3w?@APiwc{8@NSvJfWQ@PS$`}X{Yl;dcCXFI;am$lFjv!)WF&bp(JqZ`>@g|pY8`CKt)Zxq%pA9{_Y<81Y!zx+*VkJP;)8Sa+W^>zLoo$^|>tw5A!On%JKz{TloUVFbSSHBDFjxj5C_X_o$+`DfC%i|-Ywe5@htmc#jQ5G!zdWp0MtBnm z^irm_&0Ny7e@gKcD^Lh{t+e|@$OSVBM8idTuQ6T+z*12 z%zTNAC}YPiAsyioens7`)w@h{m0Eb#zLe40PZY2|eoxnjOKTj_TBP9o?pJ>;F}vkGCpX34;hO zTWQgs)H3N11g@Od6rH^37NxIctxNXEyxtBkc_^4EFnDmzCg!+tlO8Vu{$b)3WqW_& z#ae`|ToK)H|3(-Wjh~dh3)Hj0TQsk8;lpkEWm;*2*N<=6s06za56NK2)$8XvQ~CH! zKPu&jjTp4>{7^mX;R(y4EsyNM959i0|NYT-2=Q)g%4`3U#(6G~gv<|sXj|8^OkJj&{QT10CRp0QKuEl}xB zB5Qn1q7dBg5mC5psw|Q?^HqHGhI>*W^gPg@Xy$A0j<_p)O?fZYeK8`(gCk|R)SuKY zbhY=Z12z|J#--|~h9|26M6#-$TV^=>ml2a=3?d5%ZlF(*|Y~zUhse#gV;=Y)0rz)?()h{oZpxWE$>;tazwpOf^R$Y_e!=U~3~jjHmZx z_xO$~6GX_elFy}1MArNtFN`FO@as!>7E(BzmA<5RDv9Kn(g)p3=2@3#{NR%i_1WhuZq)sqi=q?*eAB_S z;LYg?slAwKck`DV#Vr-Evd1-SW4krnSjvZTdJ~2#781 z1Fmacu*HOius1laN5ncYKNJirrH6_J#jdR@isEh^_TqXqc0^?j+papjasBFXa|{L@ znJnK`DAr1H{;}15)I>ZlIaq6h=VcyoW_j`8gLv86-`(cRn^)7FE_ue&O>ptbYR);) z-|>3o@#f$B^~BAW1GGpQY28b_)zaE-URCLaQ?oQV(|&ZhQFEs_vb~zw1%m6EW_5bQ z_n?uMW^710&L1`l%d;T3-Dn5DTT{3~HFn|TrP&R~KQ!;QAal(^bX4=Z?fi`~r1M_? zvZ`@^j8P_uQ%1@Em<`cTQ+|32a`C39{6F~q(s-2^aD~;!E&UFtMpzh} zaM||gUqvyBe-(^x^qi=_(GHiTeyM>PlF8BVL`(Z$# z>a0tM&$?7^=Hh(sLZo?~FQ%*Z5N-hz36ABbZYILFCH&S*l)^>D`i`2gh)N#FN2s(K zZs*+;eC%M8JZbh9dQ2%FznN3_#~@zt^HL+xWk*`W+>96Bcq5&e-Fxb{os_J*TX-SO zpQ*|DIN=&UwFpBa9oi!07q$ciKJ!z^$GU%yv(-%AhH9BfgjO6Keq&)|DLN71IQcMo zQk*K|u3L4u){M<~ zI_Zz83ht-o4#O{U1bnxQzE0Q_l#O?=8Xbt0CX^RPjgT?CN-etAL*9XXlI&-lu*lPu z5pu}c zD0qwP{F7EW0`w8OvMR5h0d)r^SP+nr05)N$PQjQ+BGS5`Pw+0#l$1kBSpXmdlYGq* zWGi`F`D!2u2qHipt#(J`|K<3+PX_cD0370?#vs%v%S!OnF@t+)6np~A3;+YHH)#J5 zxibW-9QRPI5n2?G1pv(jNl!1NSOPFXZWqC70X7OYXy~j_;uc$I#S6F;$oSzu^)H0c zo&V6kNI}bBq<}T*$U(Qj!hu9a4O$|j=2ScBZ@0830;wGV0AvmTrEb9pJCFcD0X#>8 zBpQ&)7oZclMF3u)Veh9aO8bHiwTBoL@3IAR}es`$U*3_9WV?y)QtKP!s z{+}PLM4mkpOOlpuyZ^)X8Ze}!RFqVo#JjOJ4%8Na*ux|jc*(;njHzNvZm(`Tgw}VM z$U*Bnlq;h39jxM|rNu#6Bv+A&QV|pja>b}9Q{IAV4+Ka?Agc(jZ%p@1K=EKAJ-Xi# zC>}Vg+>NTp2F0(T!!Xe`LgYwFbbkUUM3f6LqN-z7P-$sob!=!PEbQ_QGK9J5V;q12 z0FfaN&CoIsww>)O%pj!IY{gJvSXeeF&JAS)MEW8nB)}v7xg3;~-Jk@LO9K!Tu5yVe zDKG9KW0;sa(}HSA?%{jlPbmL>;!1A#%4s$M+2H8+86g|X?r6Vm1% z5)$P=Lc#zPu7>_0A(0CtB=nGLt_AWC$lwA-ruzy=2OuF~hFlpAV`it%_sW7_AQ51T ztQJyp^PZA|1UCL5Au$0YB-oKYKGFR)Nc2WaN|Ya=B_*s7FQiA2lXAWdD@3j=9Fy{5 z0%&ru)Y+$7|8k+CTFb*%B)b#>wMe>A#vkLVuS%Gv{J)zkJo}Sq&zONWK8su$*d;Y zQ=?QBD#7lqB--Pl8g3}P1#YxF#0*Na!JZsFf;NjJIT(2t0z^YV;f+l1&L p#f~P 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 z%0Dg~B%otwebk>Kl-6+t$Uhnf0D->-){VagE$9N)%m5)U;DG$As~l9phJdFu@eQEh z4*(i1!>u2sh7|IYh7M4$bQ&5X)U6*3@1<2McyqB2;2;B8MTfd&fB}KQvlMbf^TF7zpN=VTcyo$%C%|U)y8kNR)Hv7c%WuR9 z9kR=nM$Pyyyt*eMUR>97sUOVe&N?a`$Z8G3YfsxOHSDE^#}55u^P;7nuWznT5$_>= z53CFee0SJX-Rwd(zSCabscCZi(@U+V%;fl(Xm9Ry-1#40-o@XMeLgS?tf3WyfHm}9 zXOX3?EN%L+eQgR!|J}p!ks#kbkr*$W zUw)-`(R1d3!zd~)n34=FG z7;7(=xF%&*T^b4{m`8M5J)9R04GyfF^)Zu$5h+Jq5%ZLJ1i2}hJa2{TYQ8tTnM|LB)xY+(MXUyPoG=q?ie6Im(Ht<_JnNxyFmrD84zIeyKH;WJT&92p>y&CXCd7T5HH0u;xMTVK}q4v6ztK z8f9BU=Zg3{WtbWJqu(wiK32==NvOoUknc_ z2*g|?B<8tg&m2euzNePe*1P1_Itpg<@ldDLDiGcusz;M*t^8o9KATJwyE4D(ZLNsd z6Pm^4n=psq)j3Bc@F+NENQB#Ib-!US6DNs_ida2fgc^ zcXwl(we-eQ)zQbFO)Ew0pnwJ`4@dpvUM7A495TOJ;!|KGmp(S+Xgz$pHehkNttjTa~9xyz1B zrTKjl6vLF*kYhlnd6S7;{JD5cL#)i6fu$O6mRVh0PQ^BYQd%CHGND89!~12AtmU`+ zgL=a=Y5U#V%`%35=8fBRE`r;2X{Wv~9E%pE9iL?>x7T{1-+P805+8zjMCQ|P%Py$t zWHh$pjL_Zj@F#B;*K+SDPIIp?t5Hw8KY5Vff#CTYzp`F41fTv4LYq|eS>-o=jbaY+ zSG#`QQr)=g;~uWA^Bf~oAywO&T+3V!#j-4})yhIjma-l7K5Gt29v^j5pomz^f9QO( zc0c11pNODOWY3?#Cbf<`qS4Lz2d{FcIb*1L1MS zibl<&1_f_6G$0aZa{*?Nx^X_*-+Vx5xiY=mI5yY3(vkcnWyA8tW?_(hZxiK_T7x;o zCz`Df$H|Iy=0|h&C+X=Y>B2F(8VR=Rjb(BU{Y}yEGsO9NhWUDS2mAL|hf!E6?Q>y7 z_9PtSv^Mhc4elFFT9I+jq{NS+!XBqHONJlak>UEJ&H4MAJmY5qne?=g0lvposAb49 zRqW|Bp%yB+cr?};l2x#8rHr3bq|>8D?D!sMpq4$9sp3i(3boM8#iO%+AnCIFjfC+t zHuYey)euR#YVZ-Kj0;CPQz-0vel?8s@h{dyaUvhRJ#XsApQOaNJX+r|1>tLkcW@96 zh#~3|fBy2FI(pIw#*^ym_HC&z_DKOG6aRiF8o?yDl!{@o6(pmH%<_>W%v3D34wF`& z>hqU9>S#h^m}IJJ(zhi>Q1Cj9$@sgQSVW2RQYxepm(fIJ*}}u_{zoOQmgi()@kb?| z#~Eh&k4oHt#(4lW;)x_sbO(2E{38Qbmm#TYYb#?1g5;>bi{)`o{wZH_!|wh^MXp8% z%5S9Q66k*y$KE;NTLdTR8mm<1;X|Engx)p@p#IO|18A|cToLG@q4rF*ZFy!ALQwsU zjC>3ty;%&71MUCF$Z7wkflj>YkD%N**Ga?TA5FOIQtBUpH!3k;|9PYT-k^@w{v#uI ziUrLT1oM?E+hqO%3H}0!p!AKl97wGHttNst{AZCPxQgQ+0r*o;{zvsq3$fow!I7a| z2-LO}m`SKYW8O%?A5;BZdi8mdX+35un z3D9WMf|>v5z6t)b2<`6ABJY0|p?h?**qH&5-e}2Jq4tUn!Owcbv;Ho6Mzryz{Ui4_ zfL8y=y%hlTj|RLJ8vjN&js@MDKa0ZuL4w!+KZ_pH{~||X!0z>CPz&SnF8?WC*BJ>} z!7~;teMBDq4;AGyH%N#87l3T%Y6KE`sqZ)%KeQ_bh^+( zIE{lE=QmDRt|7rqXvRU36N`&LJTqW3(_%P0J z>Y2g_;j~{ew5SYwPT9g|W=(RODzb6m=dRB=1)O4ZoMULot8%-j?oTOj5*@R}Q7*FJu?E+F&sHw+p2b?RrX*TUAhs?zjl)cLO0V%E82amu)|ch{Tty|N`0-se30 zo?%uBWZ#b=iLjIYY*7p(J*IMZ%P+Xm3Imb&;Ee!!8Yrw~AWd&QkYPta%3^O#UK<`r z+?_|)5LEa=9bv&Jhz%&jbrhlbj{uqmLN5a}Dm26bkcuZkWxLIw z3{pQQ-tzT8^(8vwzSn6ID5G(EEJ{ZL)M_IG!8A8i%L0_#j?hl~A%!?3(k_J*;*j{e z5>klsL%j7sAr6N&CkGVb_RuMo0)_Y?3$%m477w!4LKR{L`ebbRN=Z<1BmU<6SNzR% zZ(Y()3hK!W1kXMYoj1sdK$}Xw55(P&XuQ$})G0xe2P3%U*Fd@P2SD5{3+hyacV^9Z ztjBmz!-EkMO3A@=nNZ0aP%;daxItR+8#-)22TA)Y(?L!VYV`_e#hW1=`8cE%zuCG5 z7=ste^?_Uiw5xEmCLc`UsHtb7pY9vSA41A;s3iFzD7l#&l8AdiC1OGKD(6s%E&4w? za%Ns2=#GVYE`gq8&^!`A0sa6w{P9OXxh*f2reZPTwKJOw_JD;NE`eIbEDUNAUvuUU zR9=E24(vW4{YC}S?`|1-u0CcT%yr328K_Jf(ulL&q$NR`P8v$vVgY41b?yLt)rKVC z3BTbX&vh7^2hFirQ0Bo$ZE8|kJ58-PbEC-i%b7b<6@N71`amPTX;_mbT6|1q#kE=W z;j8lUGt~r~5`xVW#hPUSFYsCNjDWS96UjEt@2)hKIz@j>KE`5^;7B^45x0_Ab{8gJ z=EDx_i-;F@_=O;r1(v_AN-rM?kuTrF4y%s{7k8LO5TlKiPSk%){i1;slQT{{Z#|DZ zZu;P5EP)JlIO`c!oe&1{8f{!rU6IssjUc%hc9?jt1RteGM3A^mgk0~N1IA|@K9$4C z2_o+iyIwp8LoUAq6P z7^e!wWcUs|HaQK5dMUKScbMXm*C^8H<2J-kssWZR%_^=)+%r>yA}4K_Jgq3sO5D?p z_l}9hbNNz-RC5X-)GmQExPCyW{SgxSjsp>RJtP923;`lwL`W!02tXMSNFRV4Adm(G zQh-3O0SJBSuhPG3#S1J z=M6{}{t`%rEAIeV_%ldyj0j}mF_0`A4d}{+Ano`Dr2Qs?nq0QR$Iw9&9H_}rkfsu7 zq8c8?jb6nJFo}=|ebP_)kiG*_scS2RMtKi#iYT@ zkYc+OQiaE7L%>4_cpGB>9yHNQdME8P7Lr|KXCjrmOFkV~p{Gse`gzLjqNupyHWm6Z zH5eL{7}BpRK^;ATwwWE;={(Rj6F@mQ&~i6QLvy)<95R%f1i8GMHY6L><~)1bQE-`ptcWq~B41Aa8uZ4K@6w z#T7TyL?cM^nvxs_$HjpYSZLdTLHMC*3&FHRP?IFk#0C<@^8k5xF?9R1A$d3t1j+^= zehB0SK@e98tJ9as>F= zf8^n5Quvc*KqxNH2_kJM5`&^iQxM7CtU;0F&6){_6mQm`2okza8iN2jWfkKc{sxJs zT-(sCdNLWLIq}NO<|^ySyW5=_ykL*!qc~0Z4vW$jW}{m%TbU=B*VPhs*(DxTi80u;DvcIxHGma`WjqjU z#MTYlz!f1wl@b^Kyxvxu44f+&1^VYlvyeU<vxCi@+9<4}=n8*Ah5^@a=3|$+&OcDo+=_pVM&{O0U+h zK63hTnV_Rg{rLZ3@4ds}-nzc==n2t6)F`QfAPAyIgorNDM+phSVDw%RqC^)&bWtK0 zo#-S{6G1|Z=)Dd`8>0=sJ>$O5ectPSe%E`R=Y8(~&dEvEE^Dp5_FmV_cg^~K_TEO7 zlpeibWb>~o+$~Y)cs|IRezj^=n98TUCAO8HW2-q_^LIJqJj2k9b@5q4ZC>&qd438K znLML#ufV%g@m=gMdIblw3?E&;;B3ILF1}!>%}O5R%nu=wAu|rQQF-U^!@}UxLJm}m zmY$r;*p1jHs*YhG>h9EsaGU2fKVBZ!+GxCUKqy?kQ+e?)TSD{t1vf2XnyaUeKSUAp z91NcmI;Qp*mejhQ>c)IPCbgQzO|M?BdO(!E!%t71XB>P;pn=0!_w!d^pXW8Q27R$k zjP?7}Kc04Xs{=V4#3q|U|7<18bi&$_H$%XJ{# z`AOjj#UYZ48)*^J3UWc0Pt(80G9-B%q`IvN@5hF2dMUz$%_psC%F-4Spc7?fwK_V<5>+Yo`zxK>inc3Xezg@{%vjV{IVN z+7dr!x&Ln6QGWLKq1okAzdXo;qFFCB%~P`yWRB-*?$%s zo`Pez8KUZyvecRujO$G~G;gH3$KDC=QX?%jjpJsZYEVjVtGY(?*jK5{VOnAO2LCPQ zQ&94@FR_ddDr&v~@#yOeJq=24+pYp8wOsw%+m{R&G!8&HTmLrtk`_ZRDEq3GIjktW zzLCC5_9LiRLj!Z&1j^Rh5Z~m<4p7nD?qA>jKt2*vwc}F*u8+f}6O2kI>xy zBh@q=`3uExska=TU1*$f!0>5Pzu7*y@3}OKB}(3Vv?^q@_b+NfXxBC`Cs3KQ2i<`v zyy@~U8<6{+N2B`C?e2Q&BEW^a&}2M3J^x0#kg`zo(v8ZnQJo8(E==Lvq$wJOod6epKcwuX zc_~3vn32u}YZoRJ(4kq_sntfS7_!0K_V}{R`P%&3<%>6E@|bKDi!O1UzfaHB&PY!b zqCJ~6t(4WGuPErCtU$#R#VHXnM^DtDJ)1t=`L1R6_2Ws}79J;c$JQTa@Jy!Ld6y9M zdK?Hdcn+@Ic}w=-PJ!zhZ`ccGo}*I`BP)F?SpY)^T`lyCjDRf*l&3Y|ZRdkrnF_f{ zd-6N^+ALnWGEHcnO??!rAC~Cn$^^ZRYv*Z$Hc3QO(Gx9b=fqF9nXt7>1jPDUJdV`} zQz1g$1Q2f^pc;lGK;9I^3qJ@8KZU&6l#3fJvQo;sb+Bh&5od_Gl4GrD8us@+K?ik( zqwB>Rg)P5Tapm>v{40emyHVzosbQ^J4bMP19asLK)nEw9FL31utp-(4j(t3dtk9+9 z4+}>x-}J-H;*t)%-r|6n?K@mqoj!36l<{NVryraKSKIo%7MepoLN!G4j%|ttlT*-8tB4?qnNYsjKO7t!AGR|kH-hTT_4b%iPwi)P1ULS8LSn?nG1!E8|1)NL*R1pF zB0-FgCaOeM_j7zUqxn$B$WTg&p?=;>qcsqT%d7hM;B7;CAJ-?hnWK_2_n zUw_IkUTqdxB=Gbl?1tadO$Vi=#vL;q6DtI8*HFSh70M>F2=h ztnZIJ2;^K^EQJol`Mp#z+gnyQrX@(~MSJpNjW*?Gom*40ncTQERQqqw+#}>7|y-P+n)fXueq)1svl;~!NDq{6J+qWrTGrkoq z6XPZ;-C&V_d!4=q;GscNp)p z{AgyQBfGhMXbS(`{klp640WRULD`aR_D4z1y_QE-6yJR)i%o|n8V7zAIqZFok<#Pi znwrlp^jAMb$>hw|P7LoMFVr~g&Zm}V_f0B>d~kYn1NCJtFz_g;zwwsQbusht?J$bZ z74P>){1c*sC=3iN)aeh;3#IstkNMc~=D4Ob@n0(BHZsv)b~%hZh&dXTQ(@~esgYV8 zcr73`PMtn4($fYPIL$r5_G-u^pC+dY>Db(bm3Nr4R9o3D#!0vet#yy+9CJX zp+bNAwYz;B$LvQIFWLARmR)A!`OfwkN~c2{e$=-*G?2`(qic)q_!Sw&Pt7tr`@PcjVAop z3whWf8KZ2dOfpL|$wTCq96|ropjntSCIo>bd!_K6wb#vnd@WvNr(p&m@8r>%*QTQT zJUo2`!e?k_)lqWE~Ugs9VOW7C@Or) z{hDTVqo9f8A;Zeph;6T_!wzcP8yx2RX%9x8z&12P;lLPOW9)<0h#6geD0uKW(7`&Z z;>l5|T#TmWQh1>KM1V?)TiZOgR{V;+cSA+zluXRFFxes`fp?9D`M_0(CVhA|)5Qoz`xQ`5Jt`9|xPvo*QUjMh@D zSJku4&&-XSbEFLp^C35tQfo3tP4u8j2GUoq95K`%W31ki?g$W^c_NF_GwXh=w6y1e z&FOEO3_#`!mieDG6789&mY%ttgI!05ewz#aJhX_38?>vq>tmSsW`t{k1oOI;p^EHA zFvVbV!z8;f2S38ZeSP<#o0ROf+3{|l&cz`q9x2bxgP6_C)p6G9=HQ$car-c=Epg6; zWN-h-NUS%bk;#T8%5Spxp|4H$x1x(bQ_I#>Lu4=3K3W>&$f%*@judN>_E@@fyBecu zj-5e%G8RSbw>%@dvb{94xfpGHu}l{`KPYQL^`N3hFIB(#;!GR;>5&PN*HkXDb-DJ$ zSM2uT-qAd?H2yQvnDB7-&l8MMXLpekw`)A6(`LpJuLd0Ko(Z4xl6Lckx%oKi(J9$F zbxK=)ed18UuWdf0FY2Dr9?aoq2M(i8^dDo#sMTmfk?qtd*vpsce3H@0oogB;5_v4} zO)XnUJ385t@?cZ9aX5xrA##!0XIwg*B;3_K98l8J~=R1Fs5ntmkmR!5{_4im}+~(SC_x`)X<8 z2W`{_46+_{qhl(!e2z@$Ywk->sB&nLjV6ZQ`rvhoqlU5V{^9LaX$RO%Js4fv$HKCT znVFWr&uJnhUiudx9Wf}A5rYkx8gH+tH*Y-%M|lT({g6sLkPPmzVD>Xa7?9^L@z}pw zQ}U6!UOLT@+Gq4Ca#-BqK3}NpTUYW?iHdYF1nwqSYG@ zmmqlHJ4>AVX(E>Gt4WjS9h{qiBKj8c3CtCMVt;Per zYDc>Tz0;1B(O@0hywkoq|1+`o?2CvF4pGCt3WleLl2tP`6yX^~Ku>XZjo=2fPL(<;pCY)2_OFx} zN9FQ;=m zBNxl4F#$6NLe^B;g6k=jr$;F?wc^xMnVPqfIgQ{Y9Qf zFn4d}Y8;VCNy?h+c&3rXm<-2_^Z1Y+>>ZNv_#B+`D7N1%>B&ut`G}e7Tr%|`VupzM zKlQy$+1I6EVhp1?z}i2GSZnF;65zv)R<(x*^906 zWXqX&HZ(Q4OghPZQ^Lh8T&Z((!hd&fllLNedmdfF=*8RzO+A~R$WESa?>}*4$bu)Q zn!{~hf3IUQ35(sxoe!ThxZvvH78?~~;%GeofuNofn-;dDVaPz#yN*%i${O;!hp`#l zW3Ts*+u{4bI>0DpDqVd&=L?|{waC$hlyW91jm_#K63f7a&Yp`wq(^6#x~dN!4Yq!y zfR+kFjXc-4QT?;gRIg&jZ$iIN!14mD*0K|M1|vgU7WT5#4n%^t3nUygT?*d0WZa#{H|-NyWwLjynexT;={4lC6Cv38@x>x&F=4u`Tbqz znbv>7gi*_{qk7q`15MBTrTF;=1OQ@PxgvD|Aa)rKi2c(!$%USOU_<_NPO{KH&q*%( z=Q+tE)|xsC%%3)hI{EpZ3zC00UGsc;jB)BG)IovnvLPe69DQ3MB~SPZb@+Qkl$vd5 z!~Jvdt%fXg9l!c=xO;M5b-m?`(n{{TeK+o!4SndDAWF0kWgE?=LBf1+g?oTUDiUFba5ai`w%_d&#r#XMf{(#m^rl6Px_HHu06_&xyzf$gvl^Suy?mx5#F3S7|kz6ag83dYFT5`~H_6>z;@ zV*EE~q|E@~oY&rKu_<3W2kYVMFj4=u;h@~MwXD0n(h45E0s^xs>PM|jI$Plhs5mdo zuJ=xa8zU1X=}fkTL9lkM+0E}t8$QVoWIUtXP{XH;pyr6={ixQW)eva+cS9)3kf>Ue zX3($!>T9)s1f}{?rE6J)QX2IPbS#QAI7l135CB~ruWH&qC=sV0lz3Y;;n{6ggZK(Z z8wV};b?o?wDT2RWq@kC`NH&SvDM<=dbQ6+Ouf=`ttiqOw#3EX&Xn!X^fX)vS{5DjA zP7S~KZTJ8>H!SyiSP42a{Q39r1L(rAk}X?~tAic=NA*65TG8P_7Rui&jm;cSP>!qs zAt_vLk3+OZz(+Iz$}!fpo&!KapN<8ev^n70!U2|**`QkgqyiA1phDY(xHqZ_A5j90 zuUuJ!fTlA04FJZZLyEEh73O2-08sK8f)5}wLFF~RVs{pxCR^(w0md>(zuK`0p*s2< zKH>pXB)O^ptZ9-#H9fwPf`g=1*wX>*rX_;!JWyddh68tgho=zWD-mEMVWj0|6~nZp z+1Phbqd-~$GY#~`c)=K7>W09842bS10G=(irvgfYT%7?}_r?i2G{{v2Ov6CG+Qk%l z)m|4t3Al9;b~udew>mXoo`HcF0QKT3I6i}FGCTtx5g6QJ?EMp!Q8;|$EYO;3`|y!zEcz!X-bC>daUGA0D<7d^p>0tTQ7FyN54qKMUtKseGhB^uaQW>0-! zD2W64Qh-t15PTFs*lLUcn7aZWxda%~Tn`99) z$E(p9D1NmW^_`jHuV1A!B=gb=QsS6+zWXM=-bh)?!0xLav_*VKyv8mX`BO;LSJbjS z8RO1Ak}#vTKYp+e8z+)z#v1rOq|^K#|5;c6lxrP`!fGhE+}hPx<80b@kuSQ~z9nO$ zk2Rnv$ve-GSpCA@wqSxSiDV#ffibT)`o-8nUu5FU8+ljz`$xPf{h2m1S^n%1H3T|} z;n>JhUd^h!&2QzR1^5PkXl_R^xQa{8%huX~E#I+=1+h`0HBQd&+?ZQt4NsF>cXj%j}+G(b9B7%Y=^E z`{rgnbeSOGVH^|TMDno&3=r9QGrdOc5P)6 zp3Uwuk=;uZgjtO%wN{4J-_T?E%?JIAoJ~y32AWQc+t0sM)nXF^Z`a$^Ie#^$5!-U| zH?$;>E+&c+Eh6>RpC3=)Xy7h!H(P$*a&U)QdfjF|$x4pHWlB?Do_0|#qr}?|B}ao6 zu@LUv`D6`|(Y`hO~hsI8?fPM5MN9)-3 z`L$e1PJ3$Sj5B`5Ca^dxqaDZd+aKpfM@XzQJLaFss~E~%_^q>bS1GAMrUji?KOb<~ z?{H|P*_coo?%i9iCfDa_iT;#4wOL1|ar*6*UVp!by9ZDkJ|KU_Wbx0_FJXo#wbyq((-_{+!-yankKhx)k?rQ#K zm$)YIUC6#LVWNH}F`eDyte29qp281kCf5%98!{fVWW#A#-P3Jj^lX^ zG6f`GBV725{7Uv4-^P~{wGPyXP4hnu@Th8%7<3?RU5Y`knp!gTLqpg}?pqpY%gr;9vBE;@^JwPx_&O;xGE){@;H1-}A%i1$<`c zWUKToT)fm6_lF0-hBZw&4?pCu&c45St}HOizTbvwz8Ilh=u{kEH^0o& zUpK<@y5h;5SpAmyk5|0c&aa^ovF~>>(uR_xsr{uEWEQq0d&MVuYyBOVE+~7wm_})S z4~*vw$-2kmH+|oTAne?Q_zXy;#Dq>kXw>7j3EBRB?qLk~5#cksBATD)dS8D#??_T9 z8UHT1&s56)G&Nn#HSfrZ%Hx2Qb5Jr$Tc7G-&Zl>1-sbBAi*C;2>Zw%~VHr5jyTC$sujN^)MEjOC z%l<6$>iF=f4+EiwMX)OcA31(4-z%!EMko!C-YxnHL3;OV^zO-g5TUDTiv55gl`9JR zfc+^>CSNoFL1z1V^vM05j<^F#Jciu#j{ZX9KdW}NQGp=5AwQ>@?770YcHc7bOvc=c5NO>JyHT7kCZ_j>3yDmL)z?z;d~M!n;eMSQU0!vZkm#v?GtN}pqtUu| zey1t_ie9}C9749Heza0MI@KMvxf{{2?%NT}({QOPe0%I*w;prK6pP8|(hwp@daios z8Yf-MnNH%TgnzNRE35J8-E}j}Q8rB!@zHG0?z^>c3g=`gOoXy%NNo$GIV>!_b@$hH zpec*;?*}3u=58OSrb)&2J8;Ux*YZ-Y!kK6~)VF8njxPC0L*I_LNY@_HOO`!BzIQTy zV&5D`RHysh$|u}B$$pP*rVwIfY|m$Y7;bjvol2Cj`}5UGuuFNvooAxU$CqWsiYSUw z#yMsq@}TS7u!;F$5UrRyI^6QG6GDA2Xq3ihvEZY!;P}CTJELFRm)#0T@U5ukc8_Iv z#N$=1_HZG~cH>u18+OF@RGJ`PS&Eq~S))uCdbxT>wl{3rN50r6rDpl3$$WtC)6C>8 zoA=m_caFYEX;@3hoe&+(*K7jFF?7#JeL&m}G$>E&z z=i);1LtmI_Ls?#GEtikO$GH(sLHmyUUktG=(1nozQJG8a;+CNlHVg-?Fl?{8wxIj) z$HO!A!NTtGM+?4ItrCMeMMY}IS7#CnOd|_Sulh*6-Bh_poJttPe-TWd+TAiUX=K-^L+<&icH~k22|SZZ<-eo z{cp4QZ_5O2v>24M{gUBsuWBrtvMZzRVlnP0tPaQ4*laGP4MgO@{q|p7WF!{b$FTJd z3N|_aOoQbS3%k$Wy^pLnZ!S`M`%LYCZf0xnc-6-F#!R)J>-Mv)3uO~fj5NJu!q8Jx%x;e`^%FuOQkef)#z?53)+&ZQFGFzO$Q8*+vaa~szT=Ew-J zQ*q`=3{#v?<%19B9wam6Zv51i_;E{4OFmLm|18Usder$f!!qb=za>@Km6ni-Uh(EC zj^l}1js3}qR~7^_^?RA=neV}@<`=`Gt5GZ4U%r(O^?c(I z94wU&EBU|}qW|(he_1o0Z1i_(9;1a$k%Ml09fE$5-Bfj!pKDDY8h`QUw3Nl1j zctz*4n@oxDROs6qETrfy38%FjvK;0=)5v?E#)deklBc2A*3{+nKr)f5VOVT zh;6L%PN1Q%7INto%OHmh-@R4$9`RE)MQeuCSgbQUd6j6^j^u*WS)0{+MOF;O=qL^k zv39BkR!pspe42v!shRSu*Wadj28s(vFSk*V=_=e1zbE zrQ{V(48nxh<9?^W6Yff5Bq6?r3qP12z%VC73p^1O`$m{f#D-f6a6u9)1qe!BkF$eV z21G)FfCWTH3?L}E+Sqmy7I^^vgzYy#G2m-IY1_c_*#(3Q#E3<1?{I=AqN0}yFag9v zbl{l@;vsp!!m?y{4&Rjmp4abV$KQi6!TKZ|QuGoAk62I{XgLXUKq&U#2y<|;n(9d? zL$_pC5P}bLMs5L9g_k0MjUc4?3JkF9OCbWwqw1AH1=i(SV=gXm0@2P1$;Wd*Sb&L1 z+oCNkhA|+pS=9ncKzzdnSE^aB+$fK4t=h8E64v5iYI) z(r2il_~=CyRR0Kb-jDz-R~s!(;u~=wpxXyIiGbda;k)Kex^R(q#Ucu4; zBNV-OfpaQi$Nh)_>*dC7oDs43UBj!MfGFUG$6 zju(U+ggI+#iMPkHb9bS(Q3t-Ocbd zW54@_>&r0l@7sGx%}V?n-P=70VltsVu^W|EGknXZ+b^^1@9g-uc(i?BZWQ!X^)CeH z_U)8Kn2sK`zI)FX0ZVJ-+1giVM-tj{VP!1#kESb(q0Nu$^3nUfo1((wzgYFgw}fWI zSiYGrANTA+Iv7`fY%%*={R)?bJ$q8;-vU>WZj102>a%L!L`Q&^YmybmzJe1C32E=h zn2vXYRAMAFFRR&DYwD*YGb&O& zS|8G~or$@7EQ)5CxqlzNwz|hXld^Dy;ic`9hJmA=svu!zn9*_EW+FopKBh!(O5B1e&6RfXB z9HZwVhR4a@=VI5^pvNJqpz|)bwkcE_l_;wE)KWu4rRg$9^I2=yJ-BT z%hmiS&M8HMMDXYZ?C>KSG>JXt$LLN{XZ6h%0o&|#2&8^@zH@=OnNHud{1H4`?AoE* zAY1GsYP8En%p)N>CVz|Llqy*2Q=bXOy(0PSB>P1f zmWl@r9CmrO4PF8>)z`WoU9&pFVHZN=-z*0&X*Ngvlnn!++@KufYCpE8O2GCE9kQ`X zQS$P>B-ZTi%4plP@AkLRe$VhFndZH9B?qb*F0sn=rfr)3G_}YX@^4JXaZ|a%&2+Vm zNv0+fjC|vHo@QN65(-U`wPcp7R{O6*O(wRER5@suFtaX#sP`-Jrj2?bvI*sU|Gi%x zF=r0_udKto&Wm<{*Iy-ndi^DVi*tI-|A=##{~70;y!_I}Us*3GD()tNi+61Qc=OeW zd-L^aqrY`HS|OmO_B7S-klcE(q8M2sBSyXTtjj(k-J zp=x)IQ{>ZfaNP7KZ{)(Hj?(!-&0D2HpFCaFBv*W@;I!ZGpb!?+Zh$QRxf;q4Hhr7x z|SM-rnk z*O#?unlJemEZ`buAz1!*%Iy z^(DE}UpeLYL(lguezq^9Z%qA2KlG;J>gsa7?ds2h83x-T8z^hkYMl$~`BeEqyXqau z%Sj9QzUuYIE8+(o?)x38LMYUCfegJvv(&oEjke^^xdt3RzZfSo6q0;Bp5@c;zw{;C zGM@iN!S%seI@;vVF-Y%+GF1I%g`T~M9{zfN(_0>T%afvMrB4EBm~-eS<(u?Ffh4?P zE>`1wye9=ugR{!qmTx7E8pZx+Q#7lQd!6xcw&z#*ritcujB-=QW|H6L`Q`)xWOFT| z1{{gD+mq`$>~1>V9?f%IV8^42cecu{VDRpor)Qk(%VW{OTNV+k@7mr> zA4sb38sT-cl3#}>i9_wAp|d@~(+1(kwv%aoN69Vg@C0#IkE?6GEgSGi@q@U*3oooz zk1Ag5FO-O%>y>z0A?w+_x(<&MXRRTh=uP>xU;i^3?SA>2`^W5R&88RDCR5)xna|ff z8jQSFY!_XmZkPtmE)$7Ee6Nar482$s1m$Q$C>!z)wm*hmE{cRoK8A7?r9malk(@<= zP)Rf7m7+MPB$;6xEhO%^_kN$eeHp;o&>?r209>cF&K2N!lJu*K@ofwtc(m0R0Nz|f z6iMP4+5nzM6+SX^B6Kfv;8hAZRqzx3L_)%UKdaCSu!DmO!3lxj6vJ}>k|cpdFoM$# zE9@Tt4FGSXkSRh35LR!%;fMf;g#|+aAQlM#99iOz2(&~L$%1je*HMBY0Bq|8kOFut zaG+6=ffyaWXXypvF2Gx*Fasg8u^WH^K(uhsDt$3lzyKgxU|0ardVz;%sRQ^>kSiS43r_(j0)h%LFr~fD6UgE6kfM(%>Y2aa4BLaB7RqKkE)qkHGiL?$==)li0Q7;g7p)<@vWygm zjo_mDv3c`w`+2gAL=S8Ri<=GhY1?tF@v{WfBl!uCa_gd|n43b3{6N}8A8n22T92mi z9c45mq3FJE2L{f!ybc<^zDx#9iVuIaI%x_3S#0b_96^hCKo-K};6{n@8UhW?YhN_?Q8la4tFA$MWfs`{7;3UTvCs|I^{kE=282EX4_Y;>2s^+tJ(W#7w^B zx1VXOU!bYzfB1$UNs+X{d(CCIilX)7TM^j(xxmF_zdR%?_{Gg))ug_Df+WL*oGQ7H z&)MDVqJ?|xr(yQ1b;H)2EWN2NhrTkQNn6k!bTg^Bi^W3I)yB_sSR__bdhAZaZpp4z zbzPu``ID%b&NDQ;&99K_s|+-~H&TWNYdKn%DELCSiU}Q^KL0LQHJD_6Sdoi`&v1^9 ztXrFzlZWa>ty)ukCB@`YueFN#pEe)-$?I8bJy~4AW%pa0^yfa1t)e z3kqOry1w^mFY%6Q=)ME`CyRqWvk_KzpPMFwe!|Z$eRM-(f!Es@ODMJ0z0;)@{)ujH zpdwO@l%{G%FCm!nRBZi*!%EqU&4n&$ug$bBPM*3oeI~0|@AhlO!!(!OZI_&?b=^=6 znzh+8w`tsA4KQa(IiFOIiaAZ8P_=$ptfd)IXy50!_VH$d=^)Yrs9CmL!_n~EGnLDy zf7iN0wJ(OwdULCdrO181d1KG3)nMI4L*s0b5w*E*hFWjy4N|RY57fvSZ{Gr9cn%Gb zi?^^Vs!P6(Ipe+nj~mppTC9MD`=qU~bydiw6Qw&g7s3`k5Ymo3UXq@>9_s0CQWA|M zU5l>F#ZGvsuT>n{hMEb4CWf(x?|WShy{yuHOCa^Sf0Il`uS^2b^gWklH;mCbJe~Pm zLI&Ad;fP(FfEttbHV8w#F?n=p zp4!ob%&cj5xr;0~pj4yA(|zpWdh7db-rHrGYo1Rbo1UJ&91-=jp4-u!%Ni36TjR_$ zb9wov7&LS2)aO zYVBKpkKG%ZO!CT_A5*0cokLL@%04(cQjLP_9aL>%ZuxmQch#E)TyL`E-#emPk3U9t zrn6Jgn8tgMeveCU^Vg4A+7re;%4aY9tDnh#et?fTC=OZo&!0*Jap}uH#if$CKxb(G zk3fgzU$CruFjsS13pH1my{XVmLD9bGW5=l<}) zxql{rw84L-*3M2(?Qtofx<67tP)%(NbH@e|sV2QyulVzO^a|YMq4id%=Ta0K{KVNF zM6tzF9~D2J&L4dLe&B7Z7V?+kBReLAej12#zSc~uRvZ;wgPf{TyiFWW>%C_pf^2H7 zzbklG@O$&rtoEmyJRgUaW2>IC?>oWPWRBs5;lN4C34@XMJ?C>|+kdi|F2Lm}W`L89KLn?o?^_-s)6~ZGHf0bQ5Bf|uoUs@lqGWvQ)@^FT~XBK`9?n&%%&K`narO<#FW&`3d_^c+o!VA?C( zCJg+sGlQdK_$-h|_d5^7*HpA=5N1JbH6H${N0c3@i;;3fr$2#^VS z>|aO=Znp>r*#_&AD;(PEC_(zg8V->HS)V8PEq=EUcDL~r+-5x%dlKsL!$7+*;_gJ-+t550&> z@qi2k$m%cvh9K7pzyPvB;A#z!6WcWM|P)~*w1*tZ0Sw|R{ z70CLq0}hb&IoXh>0n}0^hR9^6S^U84|2g7nmJQ!PPNtd`ib*WUqbX!b?rX8`EqsGzSGHPTp&<3#HB! zovV6ePfdDA=DM@2(nu)el1h)O1}Gvq{r7%Dw5%}Cotn%YO%BasWLL$6*WW=o{VN`S zYn^7xY^7ZB9~z>bg;f`G_`1kmFVrPd-M>aOTh%RhCZzt;y1Ji%QunnOq`cG{Zl6N41=Gv+y8$GdW$QvYZ{ zc;wD2gZLlJ+l)6a_(GSD+2E(51VnBD=K9giI@2*51o%ewx>qH znH7(+IauaR}|wjxUMda(lEemBNc%RtTIqHk zRdAc6B9Ti5yL6DHeDh{x5>)#FX-lc;5Ve=t&C}8Kx)Z+ww0D)<2Hf~F3cR~ki^eb^ zT0W0bA-R@fQ3=7UL-`zEc)-mBuEj`$Q4v41sc1!u^{sJB13#AuG0EdN%d$Jd`gNW? z4fnT7UC$3S3@LZ)yEHUEt`CIRdVt54W*4pPJruwhfxD zp%>>iX6+9|tAj}X(p$-QpSW1R-Z%NLl69+jf4Jx0l64CA@u@l`H({Kc?)1F$K z{LlIP)PG(5f8DqDZwXTr?_cnN(BD4zUrdj4J@Gp={L&dA=dfNn!8>>#JuMs=7C7L|IV9%NxaC-`+O2cDpTY75xA6f%rc^DP_;& z<`Yj~C*ctAyz2h>4saUjFq+X;dbXqYs`EsBb^Kb?J4F;;%2abajuOKGc8pCgAn8pqF-+o)Re* zj>?s8652X3Ppf$lF(iL$R|c1yiM}l*7u9XDy69}#^F4LWxDfFLknVkbSCyDiZ_E`vNIL zQ@3mc;%-RdyoAMhN!BOg;1Nn|LY8^o+LxDYuw!P-_41Gib6%7_OO)lp_rHL1p}E6J z>(H0AIa5Nq0)3_GgPm(~-}<<3BL4fktr@{zcqF~>zrKFvTUoQabB{t!QaS< z$6s&#>;2Ck_-j2qJkaH2lbJj9DI3dE9t5kYo<0$SEFJgZTHXS7tJ*bLYQhKi#4i=; z7w~CCuIeUyxL$T8dGbxnF!W5>wcC&GX+nPJvuf+CDC8&*8~-eHc~@C{(6FUG@4i32 z5Pi^#MX_c0&8H=yQk};qFby+bg?}n_O@4lpsie}u^Cm2oLB&pmd0)P|oIxcw4Ayb= zN^@HLvv-U<1_1&4&jk7$NmOVE2A4hvvHf&jeaPp+>wUSePipj>YVV+42zQ1M=T#ZO zT{J=V4B3^oXr;`-6oYRDH!O};v+rh@>S)*6q5b$q4&5AzMPIwAmb~l>mHkoL1eqOG zI{s;jy2N)eLn>vUgyK~aSbtvGZU*$IcXG3B;M!F`{Hi%VQ+`#77m432ldb7q$p)6FNnVW z%qdL(&N`+z_7vO9aJPtr&q<;}Pc3Ckbjr+I*~NQSGiKAxytXZNkU%^XD%bfmO#jAM zUZ>P8sLFXpmk6n;Pu8JJhSb*27+?s#VDsFS8y?PDeNDgmOP%;f2L0$SUblA~OKHhj zKbQGalp-9!|4~Jhx*L`jjRORQ9u?)|>8DNz@d+WsljQ)N1_J{a`V-GM9A3Tu_&iJ( z0U;_41HbT#%$`?qkK4kl6+x>g0`dg3vLcJl=(nXrq7n4)>F#zfZx%d(l7fMrGzLA_ zX&BOnb${l;i80{CMka{h#v7Jaja9gDE5`4F&J}pIF6eYaj0m5Q3Os=@0o7^foeOxv zKm~MKH5%ag#URgJua94Vi%EjMK=eGAigW3BDiEVWq)-4GK6^O_>NJS!!`Ok9WJo?j zd>a%j!2IJzX=*&FI#a6NmJ)|XFo4dlUUWcO9RZO90$fPGbNDtWj`L}w!V93w044zD zgCk�AT}blnSq2JcWGNP^%AP1BMyFtJQ%Pegwn{XkkPaQ2_J8(L3kx1aThdZ1eJF zJ|QG0~Kukd^HL{2Uw1%K}sPVN`%9BRflg4X!B6_xzEGg1mpPWqdm#g5xRmwi&#Vkb#Zzmn=MZ-!01V z*S*Z6vCMZ(kx%Z$J>M4#4Bp>~q-7)e)y#P7SG8TlV*MQ~L{8qfzCH9B5gJ8IiMC_8 zoJ{zunHF?gMJ(!P9{B=kz9;uONPhI~gae%sv~1MBnkh~Xu!<;dXWTJULG?5J#617< zX8gTi79Eb}0{Q~b9Ko!7T>np|pAP_q0s0kJ|H1V0R%U6g*t3Ym1A@xRr7Z5pc4`FV z5HIic+soRZ#~qA}=K$0N)G?M3i)R6?22>T-59kd*#Q-J4Y3yS9IfNSlP;sDf;O@um z;t1L_3i^-R?*SzPG(Cb=jSP&T(jMA_qxaiG`A-2V-yUjtDu}O<_d7nUS?}6wIWntE4C?|U z1IYhO>Nz2k)mkVieF7#hArwNOhYOGgAR0h+fVTlY4k3s}tg@B#6$e86sno&G8#+@O zw7PEC?SaMUU=fAT1r{St;=C=;6j;B^eMetU3`_{Gk`Fx;UcdD~nTOFc-NbOc z5F&D!o1Jd8TS=97UHSYQTMEyO!_=710HKjM7TmNR(ZX z6Hefazy#Rt$$~kr%EUr&t{^yZm*EGc)kml~aN0nK5Gizu6gom`Jpg{^L`}`m_ z5TFEm_t-tqzQM+p(uttK836hvl7${Ad*>sP5fd@tc$dj)w{64@shSZvk$e+5@dU9C zW3X@~q^UD>BqJG;(F|!S83Vznb_=-%0i*#sln6Z^#@NDKfs%_pe9%|V$s)Cb^bZ1}hYPPNRUFkMVXG>pu zQk$23hzdP#R>--$(mBthEMzFjnUsqi_EIjG3uvh653wMK;?MPIyC1E+qmUdz9&@>N z=^?Y`$y@@Dh3<}bEYowL{qO%7phq6q>V{k=l5&%KEU_Dl`X!lo2Fwdxt}m2Q@%q>3 zOc%xC*y7mA`0wSXgo$}w*Z7Ervf$Xh-mt^tWXG9=^OaZ}h|>OKt76=?rCA*AP1>vq z_~fiwLC6pZ{lq%6xcjDwX0d@J0M`6MtTR8+-SfbjdcJRSEMxvM>W405IA7@!3#V@0 z;GSmkEc;@S#IY^&?Sqp5S-;QK_wAQj8cV;v6uU|ob+KdWb4crFKCYe;Q{tP0ws#hZ zZC^ijyeb5gEKEqwKPLP{{d1 zcX@zuW3EYTMHM=HcAM=}qr>Id&IY0X%*>+`xlMdpLNg-P{L`ce-BgRe@6DSc=4>$9 z%MS_ote(`yi91IH6>a2@qWFwYt%<$ys5))WZ4y4H7WrstQ z{l*|YZy)<&yyBJ}epNYe2R4V3z+v3gy=D%Me+=~xa4YKni;%n|pHS(%-CK4X?_s@#Bb}V1Knq*rn z{1lS#GwGY^yS6+#qE9s%T@guA<4ggo177-+qUZDT3GiGGrTy@Hq2|2C2>xxMs$&^V z+Hf!EADekKT5m7!;i^9APj8MlU%GSe#d;SnzIh7u9>_C+CO3R)gwBBq>atVLv$l_G zz7WoB?^6|Z-=Qzw`$nE=o@(_5W_MO4E~aGl)i&5OseR4uV!2ykervj@|M0@upB49# zdmC*jMOcXT&taFCmrBk^6_o4K#S3*%5Hw&@DX+_0WMD1&i}vCC5I{}Je( zzg)&v4O<#^i)wf-B>xgx>E&E>UuWfkh7ZTNUAHmrwORr-phyS}garCOem`j>sRlM?IM=@JJbaseamuEyL;)oWhECm~UgU zP*7z-j9DAbIhVM(O%0+7r^VP=$Dg%2iFL*Ycz>sudeb?HXS1Sz8kS-(aoAaWN9@W$ zD)tjsQJ3aUzH90rB#xFty0A!k+`9+QTUhi@DCNA~;f5Hwx50+}<&#J_W=stGR4l!L zwx?&EW~U^cdzht50xZh&cQ-Z15T8T%=flhmLs%{DF`Qp&zdgv6P4BsFN78pgIL^!O zhS1S6N6*}%3!}VD-qVu(H@j+kk*8BNH~|{zu0}T1GRzO`ZAOD^Srjui=(9Z)l3zLM z_XTx4Rt@`u7trqrWnGjufhUcZ=SS%7ZEX!Gl5p~~yy8Y(MS5ju zYaqAvRif z$N;vvUb;Uap1`;P9qM}NcsZ+h&Q-z*ZJx?s#S2<>*ejCFBvBybv~(G`6N+>e{OI?0d?(OpEbm@qL%?lBt;k`6l_i`cvZLx^rPR0j9kfhc!$M zRT2Hp`^T-h<>psOox3X~?IVq4f?xSBL^guH2n)?W*K3y7@P>s58JJ42g`Gwn9mi|t z`U}hNZ|lSjH^|pUu;6An3A36v3dbylKNJZM=1cbQEw1U?aLQ57-LSSc&Mkw4k9baU zQJCW8dJ;yjLTi#>v)3+O^AENznp4JNj=EwBgVTE~M-F)&HE6fVxIJt-fW4T4vlwA% zIpvQ0@s^lY8upqI+G@?Md4Fw7s%m)7ac&Ov=iR_7kw4FvT&~K$w{}L#_qWg9_3v}D z#&fmd9kKS}D^8Z8nzNd8SF6Ww|AT)m41cM^=X1Aj+_>9{_{FYQjQqvU4T4|j7={0e zt33E;@Jme%Q8C!S$kfXG10wY3clSoI9^yxPqN_{DI8_JyQTcm{*JWy7p2t4=ByXB( zenNI%H#6&tJOKkvB;Am4BV(CF-gkXV-3AqTH3_2Z@8-c%HrDx5i9Fwe7>f3^bWPsrs+<^l(?_!hc+CQKIb>Km z`%9*U**N(7B9jxv4Q#VVUp+|eV1M%1rY}C1Z%o;GWOqBIu0Jwq1RHvLJaeX)iKDi(X{{vp#a_8XdD8KN z&4g5Ti9f4cY{5jSx7@6jz1qf4<)E7idRB!ty|u`4YnX|`~+f6&UNyZrCp3{w4?p`ULQ+?~^%d)p;_XGG3mbKir6~36IifRm${@}hz zZ~0cs@BNHhCpj66>D>ms1SDyk5%~Qbt!zP#(gYJg94AOlHfMUh}wHel0lP?sO*!Ah@b21dAUL93)=c1`i! zHh?W4K^%;P9C75}h`ToZpFXAoQxQNuaO0u_5_h2Sz!sVRTrXHhh?p%g&?c46%K~&~ z4kq3M24AgiNg@YpUZ5aMANI?I>oyc32Grbl!vLd?(`)*Hyn>jm6N+L-QF>ql@t@`v zP;ehu0#rRXL4^2mxoLZ%_G%F}uvIars|+Mf(`)pBWUrVl2Z9L)%79oS4)jn8m?8$h z-@$r-1RhGl044E=!_u%(`_r7hC}1LRlSl9ZKv5e3-~{Lnj_?34aeB=a(9SAmivd=G zkN^)6uu=pfd3ZW|bjWNq(ra1)Q=yn`J_^JUy#90gh%+Q|qX+`LPY!tQf|aPRvLOx# z03`}AP%zRnMQY2FUNa9ASc%!v0|k?x=E_kZ1$I<%8)^a`7XWA&Q1|$N=MIomT(y1< zHkLRzO$rtZ6LGu8Sm@SDm&N88?OdTv+^wAd+%v8QlMbAdTD4k(5;$I(!Wkg zWVC{id3~z#B9D;Z&`Khx{)jbPX)j~$Dj=hnttV3w@TJR^a7zmCk-e(SCXy7;31ONV zcB7+8_62AGFbJRy9hD~`n2(ka;JXJ9A|Y@_obg`1Akf8;51?hB%Yik=y0vE>dU_FA zUa@6?yf2T)BwnepzrOjS|MnF4-xd;-PJb;8lV7z#@StM z&>x*Xj62X_`<1yv8&qAX5hx9peqe2$jUV2Rz-0Vzb`gNl03`s10u%%24^RrACqPkv z5P*^ZtpV<5%zf_28tIv6fYulDyNldA@7MLQEd_H+{-DTWA@UbB&H47^y zEboXlTOQJ!4iB51Xtwm&%~{=ioxKqwR4~PwI^%HMkk9_h;o$GoP{~n=K~Ks5xMa|O zt1t9{;cf1<(6{RnnAP)>NdAZ%$PY`W#ouKIQ;9gz!Z*1)h6}phVLzC=a?qSK`na1& zLH5o`Qru9hW-!L@XUns#sZ|>|gYTbK%7c@k|VSN1d_wt0Tf(*WK z-x-aPTx)f`{MhJO&S|*CuQGTzW!73WECN-j-TtBGm5IDc795e;xrS&4&!-VFkJ4uAm{fT61zr(Okjdm?Opk02{b_Y-_L}|k zD6is@-Q%w=X9R;XJIC3&Ktw0Sv(T?=ke><4wfA3Qj*^%`*t~7&@_1uD{~9g10g+xy zj;>-(6UuW=a~h+eX}cX?(wBB|;7tkV%At%%uL;*$@jzcJ2%^eWr5f459>aAh#gqwr zCiHuAKdqS3z{PovjHZ4tji`niEq;uC^EEX~vaRb8SN)~PS6@B_?`?d1ck@fteIe{} zfy;q~NA+`84C*Fdh(xeTgv;p9p7nKB;`!C3ccl|kg@b4U{*Z?< zaJMB%v9AeZcxSyVT9s1djOrHrZM|7u^7XF#cAqP!?8yvsy8K2vUzjX zY(7^<+X2I8R2XJ>kU}qlULPX#vXD71pa3gHun}jp!Yevg{(*|w7{3dP?Tf>RX;#At zjf6i*sfzM>EBbh9ln)CMEDt@qZsnl9&l&aPec3UWK8lgSL~s`DAy z)~8@e?klOndvfkt9mtX8Mb$r2gLPqZ+N@-z;H-HSO>r&e4pOP$doL9AmOh{v(JxFn z*`j0mSnJ@>RE{?J>}sJn>Uqb&S54(aX}D(UPPKG4589sjViSxu^1$<`i<1XsATGmr(N+zpmIaX?2i zEnQ;Sus{dxcdA{xK&Ns4qoZZ7fyV6Jtk%3sLX%s<=rlzjx^i5^yS_Yq@Z!CD`1q>l zL&~GqZZPbFGx^ij+e-&t)!2)ts??0HIk(~I#|^8AN}}q?9|c$|j2&IbWx@m><@}Ye zzc%nb9ZpYW8ZSHiLsx$-e6}w^(g* z5E0rO<3&(f6Z0IVmSg*RdXFc>4LL!7!ZZOgv$|)l%D^25jIc?;hN#EZBB(eD|j)S@^3GO5pVC&@vZ;$1Lptz z_8x-#4Wswp-`>OZLS*~J9%WS!us&C&Ibn29j;0Cpzd3*B_P9hRW{5_UXlZFh#qP6T zv44q1yW2IApl|+)J+RtrBJAv+L%h5Hrp~Zp;!|aV2RR*L4Tt zKmUb8rzvlcxKW2#+jM|$ygaXQGRlYi2&%&;HTH^AuA<$JQzpvLZLa35o;d3_m%-Rv zlXsX?Y(pYHwX%`-*MXwpYC;3GPZZO|20xyd&sDt~IUIIAEV=41t*#5~KYyM`Jv-1> ze3czf5{Rd)yEGnn9G>7sWlQv@-PogXZMi4M$Tj@h`hWaRnB>E7(Dx`^3@6=p>`mA9 z@CLp5VBcPLMf`tDy!gLg*8ls&U(6VLk*A>Y!8zjTsG;hPB2vK6@Bdf**Z({5-PFMz z^DoiZ=Xfug^_0k`w`%XdkvU=PO z-ZwD@=2c7Y=!?#<_SMMQy?~Hf?Pi$sBY4xPQn~A|;AO+hMCYO!qn$)Nedg^>J%>cT z;?nZx1%>6^jj&qJ*Ku`oGrf58@MTv9*?qI9lmxD93sG&!FFRaqX9KqSozQ-dHgz`4 z{ADA#4*u3A=d)O%HH`xOE30ZqT%A!>4&I?)56yswbc46`tzz!DDyfyo+N$(gSbHJF zv9QYC^5=)5*=C*(IXg|uAKq-dg<*yLO6El$=Zmj`yY)rZ!j=pu@|w>RGCve0YM&R4 zKMb`L?44>+KM~qV3)}fTwL81IpgUbr*eT$1r7*M!3UmE5BGpK?G%DqmvHW1oTFo;& zRa?zc?KC`9S4~lkJIq&G&5!IrQ;l8CK3rd0%~)+STwlk7tBYqY_-2}Aa9zU+ay`(I zc0NOes#;(RlBq!n15o&24VAKPHhTtg#~op8pal#lRDh^Sz=v%5vQ~(=Mn9s>%P>g( ztMBcs8jx(QHwW3!eh_(3l7OsG*Bd#6C{{pLI4y!C7(jCOUD%c=Y6f&~0W-fvEa?#) zTW%rKzZsB)0+5YyLLu%Tg&GtGphD%08v^AZXB;%p0ZHW=Kt(77kr2)U>$`=j7hnY# z_%}>D5dB(sv5`68F9CxSs&qkxjSY}VhU}vX2_V|+BtsBwT0kzj)J+{^syIDh2if6> z9Q)RKMEjT4dROESq94xkTVxpn(7}Zi$bxO6iV8R)iJn`P$V~Bea9p54%L_0V1?d3? z0rJ76feKI=09*k8l>tn^5dempNQOjkmjILwhyuq7+PRd8Y|z=T!>l<0V_UrmIEgof z(}?Cg!H~otz*uGzjvUiPFw`k_t1+HYwNUY7=cL}7$Q@C z*>v^};IM&NBhvf(>ifX+01WZqtavvx5cW}Z6lMyiS%IlU2+N&Hs)c34*&v{T3TDj% zq<$jn83+{WGNTBv1%blphk!i*;tsAz0Pbb5Z@_?Pbn~-b-LZPvv#e!jmWO472T#|r zVz$BH^>VW%>A0O)n>U=@>dQ`XI;cr}y=R(US8L>V)DOM(IFP&VTn<{nC@nYm#h+bd zbAX8UqU+~s%?cx27cZA z-~YQH{44i5{QNo-pYq;S7v(o!h8_|tmEMlib>Pk!X9ZCe&0~ z%@m6R8k=%*FYn0xz@{jne1cZz>gF;NJ1sg{@!EaG{y}HgZ-F)T054u$3Y;Awti6y6 zZ{yTv^zL~p=OSn9N57(T*?VxX<*m;vxeGEx1j}e0_SgATqTm#QySDqHf)iJl{O5f&6ANKfviX;hmQbFEY4w3S( zG-c^b_u~z_(x!Z0rstiKoqF@|L&Ec#OB|IskE7KS0$tI*l(H@QQf4@7Il;+xnbsU#ymuG+PP5Yd4j}twXY&?gT6NM-ly%)RD#44gy9DFraIg4#%?FJ*jp|Q9{gEb zhU7MSpUGirwOh%$?D})=^D%nc|8XH_@;hI;JF~B<;#KNId~r#y!b_6fIO6aiuVE~p zMmh2JdVO{jNwtLEu>3&$0|$yTy=E?m;ybR+Xm?AF>n5tvyG8RqB2UvQUzB(xT=8^{ z_tYp;3q52#3_d36sBf_^T04D-gY8?LFE2Z5(7V&-&n^x#=YGqK7e0}cgs~^jcF(B) z0PA$)XX@p%HR-ga8g6FcFE_SYsbRPS6Swy!?QLJ}sHe4CZ6#B(qbEGM^?_%tfmRuf&Lf8%$Z9e6^x0~xldKfu#y%?uMp6&()-ei?&tMI-! zN8J1U&^qVoN;wtSz+A1hI1baua?_MU*NefUt+LcDTeQ=7KmPzFPt418n6j(Kynu?s zl}ajP+6uVu$09*6^Mg2jd*MFK?-_pggGf7{Mv_q0C$Ggrnb7~B7rlLy zuiihTb@0&7l=p|-`12{9Tih1Eo^Zp|*d|9w&7a$Zx>*!HgRFfyO1|B{|2`$^AT?z~ zc&>~3Ztrn&-TwJ1by$05C=1M2AOTuIyf9Sxz9{rUdCr%+$Wvyh@@t*sl1YL`8kG3K z^P%IkMz|8r*H%ea4u!cWVfp;gMYfZ#(!rdSDyN`(rTLV`qNYoan8Ti#`+g5Jn_+L) zYf3x;wj9vzGT!$=x9y(bj2zAa-QA<9}d#+fx{R08g7zQ_-+5Om=o9U$-3{xipAXGZ;_LSwlQ zdRXYsKTSL^bzz24asY1g;SNm2SNNDM==0wE$GyI--NF%X9+m48?tlet5{Dz~l9zV} z>H$;1UntzCsF}yD>S}8BH$TNZTLeeibz@qol}_C}&)wkuD#|jX+rwy8lvQPKZDwVi zRb^*QVzrf3<*@a0f=_1S_tXcgj6qK)uTKe&~*)XI*3Y8pd{06)C~B82P!v#s!xE;4fqd$FiYbO1Rl>J(uvVU zI8J~7juUWv43I<{($^`X27eLX&Ypok+;?HtH;@DtFa*4yArWLBJT@xef|wv%_krtn zh}L~3$ctp!+BJycMbXGEeSi=JD`G)4+|%ZzM6!jTT&F(Z8~~Sy2XKc%Dv%CTBBE=a z(QFcsq1aePw#nn=1;*R!1rb%6%8=!rfYSxaJrM$*2@CM?Z}6a++aWF*0-p(SH?P9x zCz3$iSOhofLV@ovsg11c#J>@Puv%eb{*OXSgg^!M#$&(^uF@g=9?<9yEXWVprx4t$ z%LGS_3)_-KjRECgj0`CgL-s!TzdR#dgu~H=yioWOb)k@Pg9jWDxL#)ulmkBsl-2?a zODIPRad!`ly-R}-fW*5agy+^)kGMk!T&DrR58Nrl#Y5mNA+Gn8*+c<;;4L8>qj$48 z;86lTgzp**VYyXlgYcGefbdMAE-jGit0zJc&yWPd75snuQ9Pi1AP|+?uG(`bYe{V= zB8C+`0Dh0xvFn%d>wH7w4Mvu$fvqW_jq}mL;{f3J{1kJoJ&dtGoP+LoAHF9)em8Kb ztlxWld%1MlU%ojkg`_qsGQGk*cdiJ|x3K1WF`Pg@6`1pEXnZ9h@wm8i-(U+`a%|xC zH~YL<6aN2E?J3iI9`7n#%#r+p#Tozly-T+BtP*^@m0AK9Su(%W*bXK$rxJ{ z-Z*3*90kzWsMXBu&Y?Z46?@cp&Jagt3023WZ26SqzzuVt5t_2!91hqJEp(%Gfk(*U zuT%+@72vcajlUj^xWbLYh#?N=KVgrK`gZw z&F<*zBp<>?bDssOOHuQ2;)6&3#!p+{$+D-_kB`S`V78szvT*F>uf>VDj#f9z9PHG0 zBEnmHQv}k}S5jN7yoFZfelX)VySU_T)X(h1D)Pf}6tT-*Zm<58WDzMWD6HiZZ}M78 zHA`+vz{wH%ok*~O=Qmj*v{G@J>R0!}ja5<^!$D4Bt}cpKrwjE8i6+dUYJ-LLu&0fY6jzB;4 z{hz|vPo!2_#PH@`i; z?c00M)R=)FxjoT`LEmGpwFo2}v=+Y3ysa~{lIWeQps^V<&~iPZ3pDdKxbF9<5%Hj? z5?VWwda6nxBy=={d3w@y@|Psbpx4ry|Hut1P(D6Y=&)&~uDJU(*Za_!ip@S27K_&2 znFqV=wg#9(CtX?6mf3K|9pz29c2l!x4~ZjtF$Ndg$>P;*CH!mslZ7gA=C@6?#%~oo zDrOw^KJIr7y_Mo<6ks(9n0aX@b`o>%Ef#hg55v}tebdyHfmQCe_17<+c2dk|DHQwVsEUhgvcFW zzJEj58kz8K=At$R`-uH%@a6;GAK9Ml#IWY9`Kb(HY-4dNH*&x zhRmyanqfbgC^u%bY-fDdgZq51cZ3}Jd#9|%orSMwyv;m3IF08ZM?xEVgc>lb(5Lqb zExRcUEj%aHXnq(!G3ow!Js)19kmHMab|6PO!}zl6mjToJ?!+3uGdk~Wv+f?BjSFqV zs}S!JuY@ncbM*v<-{awGf!@tYF7X%Q3!i^65(Rysct9QdFg32lpyXY*8RwGgQo7hW zyMX$OMwi_6L#nN$LVa1!euLZdnvLxo8?F)xVS}mAQ-&W85>69@wJK_}nu->pzMkrf zODFE_yIlR|op)^vdK&-4t(0f>oVm+yf$%KvSZ%aI2p-tJyQ4L%;EH}aj(-{5xX!Zl z$35Zak6sMbsa@~HxbveBij$!hn%gwuW(%coq1DJf2l5o>d+eS|820 z3#f=SdX#Q2m_;XZa4_z4A3zVB>2;@xPbmD7D(8s(doQ{Xs|Mcf~Urq zpd5K3!c6pm>24WME2tfADhUMXp_5>LpvbrrVBrC!)B#KA!LkH$stz?}gPhW(M1dX( z1gR}a5Cz5OfrZU1Uc@38p<{^CVT4N3fVD);k)wbv5*U!Ry@!HOgicx8P!y%;Q7Ha* znFb_iXdpox1waiLtO80A02YG)a0mzhClA2$BRB(5H%mVhY#1f`@-nWm-2uywI)EXb zK-57FuG|@KtQFA%2>^sB;6eco z3RqA;fdn>$q2L1;B?=IS2dI&bdQ4lJVO4*0|kJ`s#xJrBcuC=0BCZNYFfVu-uv?;gLNSWK1fLkBUDt7ktGKrRB&;gy#%6( zy`8I%5R7q=LyicHjU2j*z?jG(4zSSCAJ*ooKn9V<@R^g74-=T}Gd6a7f-u|Fx%wQz z8yPvIfWU~zp*4`LU`<7zX@FS2T}X&2BGbS;B%~ja4)BwdEO|{Fia~56pV-!kOkCgr zr%-~}`y(kSGkU-)3V0Ez1P*{V7#MAT%E^a^*sG!OfhEGor^q2&guq=XsTG6(K}ZPu z-}Je%J2lygZ;c&k5esYST%|+sdPfemAr^E&mnn~sIgpf!MJ#MSIK&H~+?0c}{w`1+ zs&DLwJPo?eRcD02Q<_W`u=}_l6xj8Q7y8oHO(}!#R#Hde1CQ(&GV0lg7~FrT2d-DE zecQaPN&kKN^{aBmH-33G@{(OCAK3oE0Qm>Q_&*qWrPOM&GmMpMTLawO#fTUhLa6b_ z;JOd9-G77vqrecst4hh^Pl;fuj>@$lg9H$|D1rz{Oe2XC!i@L9+qY}ZRcw{>p3qot zfwLVFoL7<619_SHs zM95VbcyK~DzYYn5jp!U}=%qqIE3_J6^-?ErEV#hoa=PW}cyXb@ z`FFYImAYz=iO|L~?#8o3vl*E)zF}J`Yx-k*jAOdg_w=WUojur-GFQZVd#BuZ2C4&! z>VmvA>P?l5yxzjq%U_;u5Uh*J9_Ia_HW$~TJ)f+HT6pRfYs|`wd^UfrK|K13_-(e@Cg|W7BmJa>< znRWZo^3@+pX}L`_!8Hn%ib0}#Ys1Z>G+wu0RHnNcUz`Kp#WljX-pI2Nj$XojQ;Z^N zq^_>-HMQJxlm9f8=3&6`OreNisH#@-AKVuYZ093+27Gy6Ecs7>P!YA%zukmz3-&=Ud~J|7_r|F^%ta z?AN{Pa|MNaUW>Thin`f}ygVmOm!n#iAZpt)x~H-J{KG9|_=GM}guGY!lY)YEzEs_;y3-S@hOX0l&nz{ciG z5O>~v85R4c<+UwQPpmt}x61%>UWF&<-9P?PP{wBamfKu!5W-Yc9vkS^cqu+^)-U;) zT%U@LDTdL^<>1wxI-6K{7n{M^u;{3uTr~dMK4*m*##{e)85w z4Mz=5XqIpb+YggQX#xVx{A{N$OVb3C!_;(c1l3(VX~v2^J!{xLtklOafsNI<508j; zk!eE3eR5mqRvLEh-MR_0&~Pf~u=Y{!5jIq9t!nwo=y=cI^yarg-)JYyJx{%L>cmJp z!f(nftU9I`D*AnRr)QhmZ>?cF?tF*hR3yVg+rOS;6DCxP5%pcR=l+fySaoG|8;bqB&*9sJrnSUbmk;Z7bPmI%v`m<@H%C{l!N6t1zNX% zcdXIR&o}miUs9Bn^D*VK=?P}KP#)?(=d2(t@gCn|9wXkXpLx-F=`?=hZAHqPbCuJF z6OEkd=K+e?Jh^)YnN%>Wqn!~9@^B6etF6FH2eTE-7(I(O>9iM~&v?u>475u=Dq7BZ zSsyyIRP(-haUpZJ)CZ3Q>*n6s3A4=w={0r>U(FU|(N6E}xie*8Jr!EvpCk55KYsLS zEq-JBCaxBX4(F~vS7;MeORA|hPi}46|6cy}oUt@#EVVd3@#nF_<@*wg*i$~s@j8A5 ztfQsL%^~$=^u%j(DQJjvOZyn}Vb`q8Tb5(SUg(<}T2}tr>E|#seiB{U)Wq?f6R|#{ z>Z}{nr8PSzMsSS80|%!OrwgxT>#+4nVd9Bzw$eg;2aKf*wj`5#@``Wa&Pi@n!vt@? zv}tN2cOD;_RYi^^Sl`Hr6N=js#+s;phT(hGivjaA^(#rVMgy1Uq588wPR?B>4)S!J zUFPoNHpP{qPxMB2m6@fW>CSkqcd9b_gbM7P_6}fUP*6rCj5j90mFIIE*89c|i zu39&~U*t~^G_uz~1WCq|3|1;~ub{#gloN}mM-N%Nsf~*go^Q3Lu-JX8drPA4 zEq-V7VwJ~$cizym-RNztSR(p4{oak$Oeyn#&(X_vxdjalPUsX@lNnIT zZS)Pj>ehLhZRX3uR8IzP@3tj~wZI;^R=CbAuhL}CF+{*^sASybqT`Ux89MOC@Sv7> zSHRYfnlEwJqq;qHoNBBNk1y*Y3YAe+7g;TnM24{0~jJ77F$7~aHGuQ8A zpyx}#rMTtabHz6>>(+Ri3%BNPxE%Vv?ptoNP+0rE;L&gAOxBjBI(09Z$itR(Y^=iD z^N_LjXNzYh{fcos`I|SqX6Gdfuz%^J!}6#8dWAUX-FcX=>in>jw3_-hY+kH#G>alebg&1X-$nJLN~T7L>#B~ zGxA$IXe>I=+8oXCC7?+WBTk3+1J@ypWh3{SN&>`>`_CiYL+U11XLT-C?BrIMWl2)R z?}o_QwcCD-^OG<1v+WQ)DBOBkAhdn&74Nl{!?P2b%7TYvYOZa{_|Z%KGVvbDn^++$ z|Jh&p8_7P`HwJlVH9(lj_us-yJct)*Jj(wHGZFpsMcO~Es9682(T(_j#hJ9!#zCAZ z1k*hnvn}in-3WFM`WL7HeT2yJLzP<@zETpB#oYQ)d3nF2R0s*VW7395<%8mwB?qwbEO-)ql1fD-3Vua`iApM4M6$i+$P>D1YAVqP#a}_}R<<^PVA= zIHe!SdH8HM>0P33#>ZJ9$`2DQ-YTm-b#a$wQ7-RTx;uBbwv|fVIDBGUESG$usJHK_ zctbfB^%2D2iqnMgm!gc^;g=AKs0X|}=4yA`oBZdw{aOn~C9Ae-Ih)_DSnO1;9eg+z zSd!~DI#SSeYTMW>FV>xCe7ZGM;B5H01(Rda`olo&sG(=n>yC0LmJ-)DlikgB{ZAVj z_}j$zEf@* z#;t0lZp`)&gq|!qbzZ{MQ?Gtlf|yOHk@YCVlE!icv@(WCz*@_2gNppEZgqTCv9iXq zyekDGRVaf*EFrr2K_Zb*Lf?aE__t1r0u)6~gQUpmkl=yh3`NO>3Ko9Z2aSSH5fYJe z2?$mI2vz|97zAomy{S%cc4~+_?GYXJVo;!g1YU3Bm!J!=t|gx3G9vC}4KyPF*a3hB zczUyHL;w$HIn0lMy-VUxtSg}Zo@F=^aHL}PL4=G9CGZ%}avsr0&lIo{4<}-3_k*yP zsU%>b1(ByE#FP_i3IjPs>nRWi zt@cPz@B+!Pbq_^pqJS3#&Ulu85TPzXAddjBLI6+{1w~PwD9RH>U81N<6orAJFa!&e z_d%5F60zds1D;z*IC=~$gO++vk-&zI93=h%*01CiEC%+=2!;A1DR&Cg+?F9_5-&Dr zLJdg20}zcwP<;pqQMV{y>ZOb=CvuF97|B5#fSjU0oRBEuY6}8_k4tHjYVe13(aRAq z-2e_nOvd&L3Vs4L{tx z5N^o-L$>>!3q%gq9i=3MK`k|@) zxTli8PfDQo39PT<8C^Xo2<9jmNjTm{C}Z1%nBLVbl*@&`^+!sATlbFK(I*4??~|`p${A-q z<(bNhf+!PLMgkiq2t(Q8k6AG@O%mFOs#RpC87rT#{bQmi(4zVQh)>nHsyHj>r5VST zQNG%OwyD%J&iEihFFVLc(1{>2n&gcNB84NvF*B$TPAZDQ78Og{OWRISc_lK{4Zalr zJ;J1qVnNM#p~6Bag`y||6_ql?Ti?DNkBD@kf?Luk130J^pn^)TPy#4bc1R)xrOFn$ zHi0$KSwY$g5Gu+=O1qFFgH@-fNpPD81eGdKL;#Z5M-r?k9hgXk`UhYy5tD#Z9y!?v z!ke#!vF}eOiGk;I_ADY$A4JabQ_;Vysv`zyBLWd&r`HWNJX4!R`8@6{uLq}Ocdf#X z*LQg}3mAsSBfJhr6N7OFi)Y_7IF*TwL-ce7Hl_40`SdTxxNIJIVytO~S4XefKPK;PDM*cn?kRT<&tWrsB076p`uOh zfboj=$c6fN^$0|pJgo7aD&^n23S3}mc<_hn-9wF=Wy%FHJx)68)Xa8@Z|Z(^(>RkC zN>;<@s97TK=|#$grrA~eBsL!Y6fCMNAo|!jJ}+_6@7GASax{(8Ef~3#z2+D90FSs@ zM6`(+8Ev}yMdKWL0jKZ?qi~G9RVBI$fwnx&mU0=tAZ{ytefQ`6(~ZYbZ?MxX&8zRq zsZ2U9(NxlI+NOG&wob8C{<>T(IX1+?sG9h79ozOzd~*J?zz(0+XVznlA5d~-+3PCP z>Ayq!@4mW+-ot4&J(=X}sx#4q@w5N(+*uww=j1iGY`EeT#BjqpxVuU=$dzU$GVn14 z?LQl6iS~JVG7<;*x%bVya^V-MlLJXGDisXDoNg+lh^(N@O9 zcWqzV`tHwcTbk!Y(`<#gz&W<4I;F4FIo*C?e$aPb^lF;FD&>G<@d_h=UPZ`Ptpi-|#|58G@Le=mcGLpZ#%Rx&Vtzp>=E zVR1$8w`5RFDG|o(|1B(cZbgpQU&QFW1utfhIojFw)>{*Lp}EM~=;VYiGaOXfPk~#u zVY6yoH%X90e{RgJbA2}}>Tp1RcNdM>5jLq@AVXtPd{(ai`Cd{JqkV%A3*J}FE$cCO z&&`#vigYq-CExv}+`Sj)SP|8xM9?t^p3FJ?n@U+W*dCB*J&`oR+BpEBM^$?e%wTQ8~d<&%Hqk zntNXwRahLjWlnXK^-BbAWaaPbWz-yFnomWy{L*oXD3{LqHmiPfctdkK>!HWZ*IS`O z&58$DE6LboUK{ozXqeCwY3Ve3WrSWv6>^UH&jtTz$EJKsJvza&ih9Oik(bAWz(Zy_}` zwG%W8^}9VSH?INA8G{pPsCp#2bm6 zd7OoozFD?Za-8_fNkH>b=j#6C3(TxEEcya!*_&O*Zc>Tp8Uc)F!nM0Dw_b3Nlr&WL z-|4qII`Pd2Vl`MBGc|^zuWd#0JHh3#%w3Mn&}Q8#+?4V!jGp(5W0;>Wi3or2dfC+W zk*ZKhZa{Z^%y8oz7UJ=G`;JWHy`If`d>t_F8vTV!^bfdj5c__vv1935qNZSS{v;t; znBV+yC#@&lPMn+HLvk+9-V|k#?a^gfwPk4<<%`Xj>p^>(o@D2T-L`1a^e(x;ATF}-uvV~O*G0SQG#{G zw`5|e`i_ph?(Pl78p*kNwXU0OeLULm#yH*JuxaviA?hqpOjH_8#TdrhH|lRo#v)U4 zQWP%5U;Ld`yRs|nYjyVMm*wEwhz7_M_Zsz2(PB8{lU*~$VxFLR7yn;3~R=Cy&E}3$j*lS(iB$6 z&tc*F#l$W9u6@?&f*$OVXbZKMR zH*o9W6u?bRm1Lmh_JW*^l5dtZ%O8;_El(%6R0 zC0^+XM_l!qH#f5v1e-+rqQc{HYOcDSHT=n!iX^f8*fqW~h9gMS zrg6!FUz*rm53b4g?blq1|54d#m6oTlj{UNzJ#WOlL|)uGraLRre)8dCt2p+jJ}mGQ zE`Pn_v!F<>#}ylo)s!}QF&D=*W(v7~rP^sf!{Hw{DQSNC(s_&^g587b`ts;lDSFX_%FMr&gsWZhpel~X)ABuO(8+P{*=LuBdd)~w($atgt6BY zMnC%#1(c5S*7@#F-=Uek;`*RVpqsnPv!AoDYXzTNp z?~n*9B1Y-|u=kx&Q8ine0wN-kL_k22Cqsu*p#{A_5{HStTiS zlXDg%NodKrTXLpJO@^L2-QIWJnLFRQ>&|@h?=IJJTXlBr+I6a3;?w)t&zl6P70!MC zUyoE)$ru%wi;zaE;%z;B2hZ7Uw@GZb5}inTQWPE5-o5$kw|`@_F5M(Hpo08iRB2LK z^fvd8rzM(WJ(E&DtYRwt+|>k?Fh+4}gX`zg;@2o~b7zqLIjkj_GLFYO73Q0boQ8 z6>&p)xVyQ!a}0mz|20MD_}Hga=fbd6)+4@p+-gE@t4@JZ_>^3*w^drg4&5bnIXRPF zp54g_Zg#5C-{A*4Tu0U1T zY)jkxApUKh$rpiDjeE1^=|9OhUQ_)_JnnIMzWW^{6%)z*{mpy1^Yq&XzMRa>wU$hF zd}n@O6gO>sdu_8aE81ykXNrRI51c97-thAx%#2<%+L5~%U2%tTNVYRJT=D++{AA&L zVc&o)f7Xk>r%0Q=h70veN}puRt|cOyNOlu(kK!7ywdcG%jIxfYvzFSt>K(U^js9_i zhk8l@hrBsmcmLeEdCIhygGu4=a7A<0-ZJY* z*eQ6_!!}M9-n_`O#%x2EgTlTHo-*w}9|V_t_K+Wx4}mHtVnWSR^dAFibpZB*Bh)FM zQczP>7=c=V>V$xSN|z!~&%kbmx16z6a9yapsrr8@cB&2nl{%mT3M$_L6;MzPm&}|k z2vtr`Kxqv?f{uf2_~$#`;#~?o4HJHMsCXAb!6Q))z|$d3LK?WR%y&S+RJ`2?kMLzm zx16=`9;GJ;<^{p1nDz_eE1I}Klql3OaGs>i{^NMV5C)=Xc-uo2TL9{T-VT6zUK1vv z`YrGbIs-7{)~wF}#<^!Hw;RkCcrzDyzNX5q9vw*<}Y|7Xexex zmEpFx8dw3054GWUq6jqhq>P~2D zQz1uvx#ipn!U8h}_EL^Sd4o$0y-=P0$3S5&RAZs7l)V?9!+#6B+3W|O3*)o%pe+kz z5aBPU4}~z8v4d+^9}hFDYSdDd#m)S~2&}hu0zaRzK5p#W3)IW`+yZND6Fq14CWpRQ zj#LtwzL&aM+nrEB5O(a-mz6NCRHj!82@1+%`zk7A7qT#<^e|@@CV=qx@qhj5Gte@} zp@dBWj_UZ*Cy8foDz@LgrBcvAlkqK}K+#ZdsQ0iC_~SLzSRK#=eMi=Q}JXZA}mD?Lc(mU@DNWw zsCa^^mij@(6NG;u1h`UDytFj4pO17`2n)wUeM;j0R6Jp=tVCJB+G1d#HY~6|6;Spq zgbJwsa6;u1f|V;(1WG~zR5L+^MmC_DY5hy`35wEm>_e-k;?Pk*<&hS;;GowYLf+8pd8UP4F$i(k%|UE zMV>QKJykEesp^P||5Nd_{-@%}{!hgd{2vuh+l;WR|;RhbzP0q!y^57%k zYoWyOwNNH>D}=D7LJQx>%R#VF2pzJoKg36t0bOdqAQ(TugHr<`FTuNhs%}7d(m-$n zU3`FBDs&oG@X!+!k0}p?G=onh7=TLy10KTQ6n>CN7=U6u@Whrd0NrfBV7B^eCO4?O zieDwhCoTki1du^f!n63&r*pSdgrHBcCa8P@1z0g#oS^avy1=Z`0W8Ycv3lEGS(!hr z!jl~{J?Xr1Uo9i|!r}Ti35mlOa_*nxw#1^To`egqyK|}5zDuq3Z3;_s<~UsM5_c7N zUdFJi#L|jZGL>slSuc%z=ieemPrifMxH&cJEi_m2#P6S=9y8H&M3x zl(yPole~?%b1?Q)85Hh2Gy895*`rpmp95Polf6kCY+Al{(XOLhZyQ(@;5|9B!aB%l zOR=07>DV$rT~wKi#BM?bPr4py6{^3=#JXv1x}LWw)cOQpNp}1qaR2ms&Df*QC)O16 zwoZoH#(L^qe$nbC+gRS~_^bk_{VV0%)DRcWF9`W0C|Tg9z`dHB*>f2yP{osyUQhlwM_RFDUvabM(Xv};o}a|JE4;mB`2m! zH|;fr#RFXn?=P+vG1aN;Brjrpj+dEAk6vzPqx{*h3^%Tpt84c=&lRgfGHtqSOu}Xx zw0_woAe)9KPtF!syy$x+uP;{Uy!PcPitkY6sJMr(>!O1FT9(l%^l zNxx}*?dFQ4sSL^Vq;2zI>GJXETeCqX6Cy!(EDqKoEYodc`U&OakBvJFtPX+D~7n5BNeI$Ox} z!P2_0)P3|M+#q@&=J?%X;w`S%y-1Mgma3A>3iT5)o@-8xvpqq6NpT5Y)6AEv{h79B z0-x9MRmC3bs-V!tWy|{ti)ZJL9eYQUJ z=tkfD6rxb(=#9KCOLJD0=qqs&q=S_WTrtIA$NFx1}(X!DDcyIEu+YdbX93 zrBw!Vx;9Y?Ox&rT--8R^T#=`QYsG0`d*p~2M4S&a&iD}@u(C>Y+ah#+oI-ciZ4e)DcxeA*>)@?m! zmwlf?x-=WXbjh+Iko8r0agDRIc{rM#A+hezOzzjrQ6o`Zj_3n+k#Q1pw3)B-t$UW{ zBe{Jnn_S!exj)*C=lg;>(_^;0@R-trK2xH>&l4>6!&}57U0>&_ z7THNg`tsTUE>uTFok;H*YKGnuFXRa~AzHfm<6E`Gft0Y?`8XeM%Cdtuxo-_Bjt#!h zAJBNfPQJ7-9j3M6g$igF+=n&a@J|}atdXdo%{yq?Rq$5}VwE?LE!4i8=SDhCEs{WN zY%u;Zi^%^sUkWO-%b-T6>2R$zW(^iJ=C!Rd)VdL<9&okl74njKEQgqDm&1{i=}HfO zDmilG!^m@%XMxM*HbWv3Z^G@VvOhFcBLvYdK4Zur1gogXqj{6$QYIdf{k22at0e&s z4CVYSo`0rAKHgYs@G!|;W64vOK!=%{F&mghWtv1C1TJqS>^Dsw{$8lv?`^pqu)a$T z8Lz~)elxvx+s z$J(*S%lV&WG(#6~agMXOQJ1tUat;p3^XRt~ z^#y15?cC9{`LSL#rT!HQn+H9S`?B{=DEDd#=H3I5#b2Z$T?#rPP z4V#;L*JsUyu4rY8nBnRZ=Yn6`?s~>itL(w1Obbs{erTE4_20SukO=4hUC5(Jzl`k4 zVWP;+sLN5!kmLG~klMh*tK4aG!+pMoiZz1X=2Yle9v;kMB>5HT%)P$%1A)^gMmz26 zHm=E+P1nN?clXy9`n3ZV$gcSQh@@An{k^}vOc%T@r=rR0oIWrZ)oPaV^KA&TeUPNK zQ;5w${XqWe=x)``dnH)h6P?)nh|!HaSD3-&i)f_7>J!w1C#(jZ>9}`U5xp{*54|b) zFH-K7eY*AC`PXvSud*Jr#xw>Qx5zN+L*-DHMPF`scq2|~ac3#7En;+GVK<3FMR8qg zF?GT?{F%MsP=T&6!hq@PoN%{GUX4}$xL7HdE)_;aOuZo_2pV<7Y`-qk3wp|Ui-Ul=4 zv7EQEo@VpBdL&Jj|6XZxU}qhUXhKkF12nb5mpt8o{JB_?I{EAKmi*#vAzOvOiOmzi!~4%l;&; z5!Al^XW5^R?_K?Yz|31;6sqlLc`v1>J!=^inL9&k_p9QE81E&eD3`5^d@chO1L+FU zGs@r2OlUmF`tbfmMfClFtWWp1#Sv1RA5pIehcyWF5BJNB+ZKDRckhwgy7Hd-Q%??gIv`}ySLD8~sQ9non1*e^9L>}2sj zU4EYkINQ#?mQu`YJ5jnWVX3Z8a#wRbWq{!&`MF4``lLgv@LtZ9-t!)M+yRHA+N4qQ zuWPGxtU?b&z66nnoFM$ABNWsHlx0rv(HIak`BV&k(sXJ;w8t{>60UGJg8?)ar0 z-I2sb&yL#7%snc!eRKvV^gS^$W`Sv`HUGMRmPTk}4%Nk%(al#w*=#uL9rhg5H;4GX zTEMCc4Y7H1m!)YhBN+oXhCDe^HrNG3Xd0Hh2jvZIXapgSY1@a~+zSMbsTl(wncVB3 zYezR8f1{F3)$&#e?yH-vW`gaK%r~mceTHFw-FZCMvm#2NkCv3<^f7rO`DMfjw!^=1XR=O1rX4>>_r&K5)6dv4Wr3uyZ4t#2{R-Fqew6iYzh`B%i9C| z6%aH5#s^F!0QEqTT@%4@6HEqVruOk{%jnJi(;(~UO*{^I$6Ew~NZ+Hb`1f-|fGZrh z0>BlbO9H?Z!a)Jx3gNwxs6_mu(sN*YKs<$@;;_yB^8`aoFx|*uQfK$>5jEiY7s(VN zf&z%O5rS=_P(}nub^@e31XU~I%^Kdn6hcpz(n^oZFVaBpsSt2=i$I-$z|j8*rV>W1 zU?G^y1*riSQvw|okEL=DuvB2S3N`TTQc{py)MiWwILvMDMd-4CfskHcpc4WEAeK$Tmzbpn0el4vO1(JMt%h?Yk&_aeA$fft+o z5GH$iUVt8N5P&9Hdairq7-6BP{NkCa@>|X%-~_-pL#aoix(OpD5cNTtgaml+jPs5( zc%u%m>6r`F*T8bY?gTP$iqOrNc}p)`8_q`}0Mz{@J%^(ck|ge4cE4KS@BG+J*_vgc zR=Tfi|EhDA!z<~I1x&+7#NHXJrzgMc8*5uphiEDuU|dTEpzvj zu+^Wwpd0~vl%}ur*&A;U2r$(_lY=DyDkawP;{uMzmbqI>SU=zhu*}qhuepa`zMudk znM&K|L8Mx&0_daw1heyFX7Zze&`dk4O-Bd=Opol!2ly7^HdiVhLJj`|p)!OKAXHXn z0%?>PY}FdR7cZDa+}&>ltxS$2^reQ`T0K1lft#Hzb2`w2gvc&CC?sIM_5j$+$W}!K z4eGn>!kCykAnONESqSJI1_*0U_@0r#XiR@}B)&)x!OKNxP@N0_Q3$&fU}EwEbVWSs zN(F5KP*E=LF6uf}AUr9YWyP0KXJ^YXV@wf~ub*y_4EvUCSe=64D;< zOogE}0Ck;)P76?1QpoOKNacqT+E7-}hj2Yq=-V6saoQmO3JWDzaZ?*y==} zm8zGK{&C>J^G@O9rF&Xt>R-QDMX&LG+4Bia1-LHgHV&}I5j+sN!$d$#L3ty9PeDm2 zz*6M_2oJDVK>~aVQ9i{iBH6KhA<&I8f}>S%U%}6gvk_dtT>}4D{FDD0QI(le^%Dd1 z&Vdj!fc68-^D2I~aQxP*fYu8zU^YT1h*N4p=MUBK+1F3v zt)dCIFJME1Q`ADmgJR>7_)sx~O=R#-gm%CyX@MRp6ZU~xiPw<5Z%c#<0hjGLnDBkb z(ZsED)X;<)2U9gfea& z;YgTTSk`1x+w71>+DiU)uac4L34ds&(&wf(j;Q-R83*PzG;_3SO3bcljFC^!Ha6?= zHjg!2AEo^vwd^gJuuy)W9!9Y}bH?LDdG{mPb!FN08fL>bmTxPxpsSdRlHt>F*Ixk# z3JhrRE(YEct(j`-uaGx?~UIa!bK5uTRRovwp&x)Uac?R#wU5k5T6k;ge z__2}DofW?-ceA6JNo1JqzsEiKXHu#JN&bP^ou4?2$ThK@Xz9E=T9T|i{1b;&a+Or! zizn}_2Xay0ywAzs1Md!9Cs}4(55MtVT;&f>f@_lX70g0Q$^3YN~%vW zv22M}ZT0w@qZwFP18k`-H#$!@&q@$m@7u@uS=N$@?@ttmOtAiro9cA9mML_3-|V{U zw>yG)PkI7V3-^QX7g_Z7{Sy3i-hgRqv_{7~bzN!zAx1V>zLR;gvO+;pe`_~iH}caJ zdA*A1YPwHL3u{fyw-au7F`CL>&%bnezal)~$r0JTdUygmDf;*&=aB|1ub{bRt*AtW zg5^DKL8mUR_T%krI?jfHWP`hmYQhCqK5c%y##Qu`JnvwRPC&eh6mHYS-X_9AyeRS5 z5iQ{!cxG^0DaZc$cLN2Q21( z{U`jdZt~^j-ce2Ss6HKhBvmsronlHf9nNhmRCJegdO4eEX7q_UWu=U?ud2NH23wMU zIf3{g68pW!%-IZd zj-sjo@a&G+LEXIPUvrK3kulNbmnr9tlrVI4%((TnYi(NQw=GNbPmP>}Prh4|R6i96 z+qrfnBaO%m$7BDD?fkKRce_VD-Xb?7x9lyp1^5+q3ue>BF-4^P{_d7-b!Y|NS4mzH zqErSOQ~Kz6WHX{X@90^lte2_2o}9#G(m|2*Or+zK=^G6pYJ*Xt57poMP)p4l-Q_l( z%OuuU=k%((2bX1X#ZK{`hCMj8<+>r6LNzh4UnTJS7Q4UvVx>xZ|a(N!}`*s?Ia9kSF>8TvVOmgml4YNe$hNM*ZKUR>ZN-&y8Mqz`Oh2l_F9h{ z!aQr3YjvGSkY*2B3zEoGiCJ7r+YRS0Tn?5P9)aJUS!DhF^_m+?ULc7B?2h>5?E%L_ zsZT7ISuz=QJjFsVnX0q)f@rckDc4{*&oz(t^NR8=MRWQd6llG(U9K~V#eK!*dw+7U z*A@+650~z8>*_0<|8)1Z;p~zh(TDenw(TA_cgqZ2W@UWkMfWWar()G^cy09Xs;cey zV_cUu_$Jh6nly;#$$Hk8zP|6;{+)ZdIi`$vQb$&Faw<9ey12pb$X zo6W1FXx87AE>qr!^>p&5l5go@Btc`&@2`Im48R@vTbphA9c|nxoY0JGCgxu*Eyf)w zt;%@pH8G~{A2Z&%y-neAa5z@k5JApa8gzIyW6Wd(wkmomnI`r?F0bHc!xpvL#AJrb z2OlYx!Lds)DL)BP8P5F#nOmr1$-~pmo7dZ`m$7f-Vr$RHtWZ$8!;+~Sy2^H5<&pf( zXOkIeuAv{C`CQmT)k%!pm@eTrZeHDXnT}E58VSt2nf?Q1;T9yDwKHEpmQc5m+gLu| zb~7+(d9-$#Iw8p9V{xISt4DI_*f@I$%jx96XY}lSGStZ#WRI)1*(N8=I#!rkau=JP z{lIz&1dh$G4cS`m!Vbyl+caE+Y8jSJA&gEt^t{~&OI9Na7vb3*D)2dQo7^aG*su65 zVl}=@(zi1^)Sg~W;TrzTcJ-CbHrpyPh-595JJ*rQ!R&V5CYp^%+H>7p?{l!(to?UN ziER@1x&0W5{dE_L_cexRWD=2P#fORMn(Nq{glNx$OXe(WPU`ahFZai4%T#oeOB-z8 z4A+z=%d-z*?+dHFlM6Y+GSnmzSGjOCCt4?~f4 zcQKE3a5$IyY|f-)Fxk)#QVjPm22HevS@|JsU=|p3pPc zxH~i&B!i*gk=J#;loxt?+T8@+H0g2WTR}3?<4JRSfmQOhy{!0)(VF89^Mh|hn72qZ z9|bFh50eqKRT$2W^7$w6t6*x@C#}r~s1F#l9jWt>8Tvn~JY&q9GshG|Yo``X>ARLE zPu3*6(7E3v&O6gq{vK{BgLcu);PIzS=D}1LBPUWuCi^d`I8&U6@etY_5ALbU>6MPH zbtcP;N+@CHoAEO06Tt)ry*10U!v@NBfYFDHc&8E~AhRX1(uFB+6^1d4*|H)#f|5(GA%FraL z-XX^4YT2E(IC?3So7`%79-7I=R%Tk8x2gBZN44!oQLYomtIh?j1@h9q4UILKlz5MtA?xQ4!m4p-0=3V zwe)y}g{+x|$UBIcN7rjuJ2G5T(=V34Q=g^0>r0m%lEH^EUYr{cuGC$zNm7YB65wPwuh)aKXZE z!6cDc{xH1ZU|ni2B?0bDS^07d*OuoPw2=9MUno5IOI~?Q<$QrJlJ)OUA4lM^|MT#_ z9ffth^Dl2ecm|GpbIa~EI!-HHD; zP8j+&&i&V4H$eN31_au6PPPu#I%ZFyS5JH9Sm$3&E_DZ9*q-4Cq=~;k^EmJqXOGCK zgyZu9pZPA`xO{W&vjpw0p-9s-J{ldGG%kT>mrtJYroYMa?5SDA1>N5!BDOZk%e(#I z807Y3WsZocsdlH|){xJbPkj{Zmw|RINk)W$_C`=foSKvdk(XVtH*A4K4`;YSTV zR7?(ENF>!cIhU)+=3!LYCy7eube+7FQ~KC!zo^bF8)z2~WjxsQa)EtZ;(D)gk-D=_ z-0q%hcf=IY;k>7$ws=(Q!B16P|LuhK(c*O&TxSDgmf@qiUX#HUZTBNV6po>lmhHza zpf#U1whU}O8oO%uBsZfq_~ow$+0zo%nH%#8p{sK3<(BFh-EvoI>@j+ZCoXMc=1sIs z(b)O2rY;`q=D7At^OE%e7k~I%lqs*gBsJXa{77xDw5HJ~BbkEK7VD-bq>qv}CC7OV zRXy-Wdy305nv8u9`^d^Q{5nl*mw)!y?5f*Rbi)(t%#;l?L;2=J4ilv_^kpT-bP`cxgA7)$2EA0#W!E1m)-%h;{C?fV3uVOaS9|6hSj47QJTE7p(HG;b;&@K zeAHu*%aDO{7v4XC6z@@Z!mx6pqtm-E2s|@%b_YSE7dwc+GTUlNkn|E9w0vnyNWwCZ z;OENmbEO_2^Cftx2VoSi(Er)fEf4h=1d%jwCI*qeduLPXt<9KMH$KD9xqwZn`i)sZ ze6q!5S-e3Ag2=&GJ!*nKyH(N~37$m+5txm__S1mbR&V>`Ac|GB*okaUw*pi=IDw?0 zvpU!|5ngHoVrujoyMbUlivnzTf3=eZf{h8G*nTL9MsIs^u>4_lF)>)4k1_(UvE0Df z5hVWrURnZ{3-*uf6AT&N7)yg-jEe}rh%l|H#ypf1*bp+{5Wt)P`#v;qP6F#8Ll~J5 zMz_KGYw*$>f^j046@`9;r&}S)8-yu0bY=%(fRP0YN8zQWz{jcISQs2P0o%_4^6l_m z1aEo9rW#8M@-0N|f%ggg4@s_wB|oe6=&@hfULi6c@2KBaJMrwfgjx~O_(QF}RyVrv z_F4hy`$}VhE`Mi+1mzJb@252PYQ;k@8SOJHc74Bb*kAS4S!Aw@)4!L&;W%wp-;Ho8 z(gm|vMy#WWtkmg8=7u2!^yjF~w!N{Ll_I_zL%%#yx<~%@_yRfO8Q})pg@gx+`=~988k**3yDWiAXl$BxuRu)(?U

1eO(8YG5gWWe4_< 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

    u( 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 BSdst$ literal 37898 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
    YXZ<|+-`U=rXisZQ#|4P7Td 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 From bcc0bc5d5ea4a7ad7ba56efcaa07742a681c45a0 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 26 Jul 2017 15:10:04 +0200 Subject: [PATCH 092/151] Added method to solve for statistical uncertainties --- .../summer2017/FourTops/FourTopsXSect.cpp | 45 ++++++++++++++++--- 1 file changed, 38 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index c847be9579d..c89943de72b 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -21,6 +21,8 @@ void FourTopsXSect() std::vector histograms = {"bdt","mlp_ann"}; double factor[histograms.size()]; + double factor_stat_err_pos[histograms.size()]; + double factor_stat_err_neg[histograms.size()]; TH1F *histCache; @@ -72,19 +74,48 @@ void FourTopsXSect() if (y_data_nobg[j] < 0) y_data_nobg[j] = 0; } - double sig_sq = 0.; - double sig_data = 0.; + double sum_sig = 0.; + double sum_data = 0.; + double sum_data_log_sig = 0.; - for (int j=0;j= 1e-12); + + factor_stat_err_pos[i] = x1; + + x1 = 0.0001; + double F_at_zero = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig; + x1 = 0.0001+(factor[i]-0.0001)/(lowest_F-F_at_zero)*(-F_at_zero); + + do + { + error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - 0.5; + if (TMath::Abs(error) < 1e-12) break; + x1 = 0.0001 + (x1-0.0001)/(error-F_at_zero)*(-F_at_zero); + printf("\nfactor_stat_err_neg: %lf",x1); + } while (TMath::Abs(error) >= 1e-12); + factor_stat_err_neg[i] = x1; } printf("\n==================RESULTS=====================\n"); - for (int i=0;i Date: Wed, 26 Jul 2017 15:17:00 +0200 Subject: [PATCH 093/151] Fixed typo --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index c89943de72b..87927d4e373 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -95,7 +95,7 @@ void FourTopsXSect() { error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - 0.5; if (TMath::Abs(error) < 1e-12) break; - x1 = factor[i] + (x1 - factor[i])/(cache-lowest_F)*(-lowest_F); + x1 = factor[i] + (x1 - factor[i])/(error-lowest_F)*(-lowest_F); printf("\nfactor_stat_err_pos: %lf",x1); } while (TMath::Abs(error) >= 1e-12); From d48075f09ebd37d6d668d31467f487007952be84 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 26 Jul 2017 17:00:14 +0200 Subject: [PATCH 094/151] Fixed bugs --- .../summer2017/FourTops/FourTopsXSect.cpp | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 87927d4e373..c7b8b7c25c4 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -26,6 +26,11 @@ void FourTopsXSect() TH1F *histCache; + double SDGoal = 1.; // 68% CL + SDGoal = 1.645; // 90% CL + SDGoal = 1.96; // 95% CL + SDGoal = 2.576; // 99% CL + for (int i=0;i= 1e-12); + printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); + } while (TMath::Abs(error) >= 1e-6); factor_stat_err_pos[i] = x1; @@ -107,11 +113,11 @@ void FourTopsXSect() do { - error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - 0.5; - if (TMath::Abs(error) < 1e-12) break; + error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - SDGoal/2; + if (TMath::Abs(error) < 1e-6) break; x1 = 0.0001 + (x1-0.0001)/(error-F_at_zero)*(-F_at_zero); - printf("\nfactor_stat_err_neg: %lf",x1); - } while (TMath::Abs(error) >= 1e-12); + printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); + } while (TMath::Abs(error) >= 1e-6); factor_stat_err_neg[i] = x1; } From c0163d3a71c3daffeaff5bbcf06a22c2d558eadd Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 26 Jul 2017 17:10:53 +0200 Subject: [PATCH 095/151] Added debug messages --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index c7b8b7c25c4..38f82ccdeeb 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -97,12 +97,19 @@ void FourTopsXSect() double x1 = factor[i]+0.1; double error = 0.; + printf("sum_sig: %lf\n",sum_sig); + printf("sum_data: %lf\n",sum_data); + printf("sum_data_log_sig: %lf\n",sum_data_log_sig); + printf("factor[%d]: %lf\n",i,factor[i]); + printf("lowest_F: %lf\n",lowest_F); + do { error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - SDGoal/2.; if (TMath::Abs(error) < 1e-6) break; x1 = factor[i] + (x1 - factor[i])/(error-lowest_F)*(-lowest_F); printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); + getchar(); } while (TMath::Abs(error) >= 1e-6); factor_stat_err_pos[i] = x1; @@ -117,6 +124,7 @@ void FourTopsXSect() if (TMath::Abs(error) < 1e-6) break; x1 = 0.0001 + (x1-0.0001)/(error-F_at_zero)*(-F_at_zero); printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); + getchar(); } while (TMath::Abs(error) >= 1e-6); factor_stat_err_neg[i] = x1; @@ -124,4 +132,4 @@ void FourTopsXSect() printf("\n==================RESULTS=====================\n"); for (int i=0;i Date: Wed, 26 Jul 2017 17:16:14 +0200 Subject: [PATCH 096/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 38f82ccdeeb..251caa8b44f 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -107,7 +107,7 @@ void FourTopsXSect() { error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - SDGoal/2.; if (TMath::Abs(error) < 1e-6) break; - x1 = factor[i] + (x1 - factor[i])/(error-lowest_F)*(-lowest_F); + x1 = factor[i] + (x1 - factor[i])/(error-SDGoal/2.)*(-SDGoal/2.); printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); getchar(); } while (TMath::Abs(error) >= 1e-6); @@ -122,7 +122,7 @@ void FourTopsXSect() { error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - SDGoal/2; if (TMath::Abs(error) < 1e-6) break; - x1 = 0.0001 + (x1-0.0001)/(error-F_at_zero)*(-F_at_zero); + x1 = 0.0001 + (x1-0.0001)/(error-F_at_zero+lowest_F+SDGoal/2.)*(-F_at_zero+lowest_F+SDGoal/2.); printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); getchar(); } while (TMath::Abs(error) >= 1e-6); From 2f7fc02acfcd4eb26b6f49fd5f7e92f665964e2f Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 26 Jul 2017 17:39:38 +0200 Subject: [PATCH 097/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 251caa8b44f..674de0251b8 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -107,7 +107,7 @@ void FourTopsXSect() { error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - SDGoal/2.; if (TMath::Abs(error) < 1e-6) break; - x1 = factor[i] + (x1 - factor[i])/(error-SDGoal/2.)*(-SDGoal/2.); + x1 = factor[i] + (x1 - factor[i])/(error+SDGoal/2.)*(SDGoal/2.); printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); getchar(); } while (TMath::Abs(error) >= 1e-6); From 5c27308b569048058209244a92e1cb05dc651515 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 26 Jul 2017 17:42:31 +0200 Subject: [PATCH 098/151] Fixed bugs --- .../test/summer2017/FourTops/FourTopsXSect.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 674de0251b8..06d42ec1cff 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -97,11 +97,11 @@ void FourTopsXSect() double x1 = factor[i]+0.1; double error = 0.; - printf("sum_sig: %lf\n",sum_sig); - printf("sum_data: %lf\n",sum_data); - printf("sum_data_log_sig: %lf\n",sum_data_log_sig); - printf("factor[%d]: %lf\n",i,factor[i]); - printf("lowest_F: %lf\n",lowest_F); + printf("sum_sig: %lf\n",sum_sig); + printf("sum_data: %lf\n",sum_data); + printf("sum_data_log_sig: %lf\n",sum_data_log_sig); + printf("factor[%d]: %lf\n",i,factor[i]); + printf("lowest_F: %lf\n",lowest_F); do { @@ -109,7 +109,7 @@ void FourTopsXSect() if (TMath::Abs(error) < 1e-6) break; x1 = factor[i] + (x1 - factor[i])/(error+SDGoal/2.)*(SDGoal/2.); printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); - getchar(); + //getchar(); } while (TMath::Abs(error) >= 1e-6); factor_stat_err_pos[i] = x1; @@ -123,13 +123,13 @@ void FourTopsXSect() error = -TMath::Log(x1)*sum_data + x1*sum_sig - sum_data_log_sig - lowest_F - SDGoal/2; if (TMath::Abs(error) < 1e-6) break; x1 = 0.0001 + (x1-0.0001)/(error-F_at_zero+lowest_F+SDGoal/2.)*(-F_at_zero+lowest_F+SDGoal/2.); - printf("\nfactor_stat_err_pos: %lf\terror: %lf",x1,error); - getchar(); + printf("\nfactor_stat_err_neg: %lf\terror: %lf",x1,error); + //getchar(); } while (TMath::Abs(error) >= 1e-6); factor_stat_err_neg[i] = x1; } printf("\n==================RESULTS=====================\n"); - for (int i=0;i Date: Wed, 26 Jul 2017 18:03:57 +0200 Subject: [PATCH 099/151] Fixed bugs and SD goal --- .../test/summer2017/FourTops/FourTopsXSect.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp index 06d42ec1cff..debd79dc6ef 100644 --- a/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp +++ b/TopAnalysis/test/summer2017/FourTops/FourTopsXSect.cpp @@ -27,9 +27,9 @@ void FourTopsXSect() TH1F *histCache; double SDGoal = 1.; // 68% CL - SDGoal = 1.645; // 90% CL - SDGoal = 1.96; // 95% CL - SDGoal = 2.576; // 99% CL + //SDGoal = 1.645; // 90% CL + //SDGoal = 1.96; // 95% CL + //SDGoal = 2.576; // 99% CL for (int i=0;i= 1e-6); From 9cbd10dd3a854a52563d0930e5f961edc9dea307 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 27 Jul 2017 15:26:00 +0200 Subject: [PATCH 100/151] Resolving conflicts --- TopAnalysis/python/storeTools.py | 5 ----- TopAnalysis/scripts/runLocalAnalysis.py | 4 ---- TopAnalysis/test/summer2017/steerFourTops.sh | 7 ------- 3 files changed, 16 deletions(-) diff --git a/TopAnalysis/python/storeTools.py b/TopAnalysis/python/storeTools.py index fb66b93913b..baa9a6f009e 100644 --- a/TopAnalysis/python/storeTools.py +++ b/TopAnalysis/python/storeTools.py @@ -8,16 +8,11 @@ def getEOSlslist(directory, mask='', prepend='root://eoscms//eos/cms/'): from subprocess import Popen, PIPE print 'looking into: '+directory+'...' -<<<<<<< HEAD - eos_cmd = 'eos' - data = Popen([eos_cmd, 'ls', directory],stdout=PIPE) -======= #eos_cmd = '/afs/cern.ch/project/eos/installation/cms/bin/eos.select' #data = Popen([eos_cmd, 'ls', directory],stdout=PIPE) #eos is now mounted in each node data = Popen(['ls', '/eos/cms/%s'%directory],stdout=PIPE) ->>>>>>> 7b8cf48a9cddd3b68876a8fcac5a6bff6fe15542 out,err = data.communicate() full_list = [] diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index 05dec6dc316..7008161b5cd 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -195,12 +195,8 @@ def main(): condor.write('executable = {0}/$(cfgFile).sh\n'.format(FarmDirectory)) condor.write('output = {0}/output_$(cfgFile).out\n'.format(FarmDirectory)) condor.write('error = {0}/output_$(cfgFile).err\n'.format(FarmDirectory)) -<<<<<<< HEAD condor.write('log = {0}/output_$(cfgFile).log\n'.format(FarmDirectory)) condor.write('+JobFlavour = "%s"\n'%opt.jobflavour) -======= - condor.write('+JobFlavour = "{0}"\n'.format(opt.queue)) ->>>>>>> 7b8cf48a9cddd3b68876a8fcac5a6bff6fe15542 jobNb=0 for method,inF,outF,channel,charge,flav,runSysts,systVar,era,tag,debug in task_list: diff --git a/TopAnalysis/test/summer2017/steerFourTops.sh b/TopAnalysis/test/summer2017/steerFourTops.sh index aa109bab002..3e0b0aa24e9 100644 --- a/TopAnalysis/test/summer2017/steerFourTops.sh +++ b/TopAnalysis/test/summer2017/steerFourTops.sh @@ -65,12 +65,6 @@ case $WHAT in ;; WWW ) -<<<<<<< HEAD - mkdir -p ${wwwdir}/sel - cp ${outdir}/plots/*.{png,pdf} ${wwwdir}/sel - cp test/index.php ${wwwdir}/sel - ;; -======= mkdir -p ${wwwdir}/sel cp ${outdir}/plots/*.{png,pdf} ${wwwdir}/sel cp test/index.php ${wwwdir}/sel @@ -94,5 +88,4 @@ case $WHAT in --rebin 10 \ --addBinByBin 0.3 ;; ->>>>>>> 7b8cf48a9cddd3b68876a8fcac5a6bff6fe15542 esac From 9641c2113de31449dc9526d896b679da915478aa Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 27 Jul 2017 15:29:56 +0200 Subject: [PATCH 101/151] Added two jsons for systs and nominal (?) --- TopAnalysis/data/era2016/fourtops-systs.json | 16 ++ .../era2016/samples-fourtops-nominal.json | 188 ++++++++++++++++++ 2 files changed, 204 insertions(+) create mode 100644 TopAnalysis/data/era2016/fourtops-systs.json create mode 100644 TopAnalysis/data/era2016/samples-fourtops-nominal.json diff --git a/TopAnalysis/data/era2016/fourtops-systs.json b/TopAnalysis/data/era2016/fourtops-systs.json new file mode 100644 index 00000000000..449ec79a1f2 --- /dev/null +++ b/TopAnalysis/data/era2016/fourtops-systs.json @@ -0,0 +1,16 @@ +{ + "MC13TeV_TTTT": [ + 0.92, + 0, + "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}t#bar{t}", + "#0037AD", + true, + false, + 1 + ], + "MC13TeV_TTTT_isrup": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-isrup-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} isr up", "#999999", false, false, 1], + "MC13TeV_TTTT_isrdn": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-isrdown-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} isr dn", "#999999", false, false, 1], + "MC13TeV_TTTT_fsrup": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-fsrup-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} fsr up", "#999999", false, false, 1], + "MC13TeV_TTTT_fsrdn": [0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-fsrdown-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t} fsr dn", "#999999", false, false, 1] +} \ No newline at end of file diff --git a/TopAnalysis/data/era2016/samples-fourtops-nominal.json b/TopAnalysis/data/era2016/samples-fourtops-nominal.json new file mode 100644 index 00000000000..97ae8ce71bf --- /dev/null +++ b/TopAnalysis/data/era2016/samples-fourtops-nominal.json @@ -0,0 +1,188 @@ +{ + "MC13TeV_TTTT": [ + 0.92, + 0, + "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}t#bar{t}", + "#0037AD", + true, + false, + 1 + ], + "MC13TeV_TTJets": [832, + 0, + "/TT_TuneCUETP8M2T4_13TeV-powheg-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}", + "#F0C600", + true, + false, + 1 + ], + "MC13TeV_SingleTbar_tW": [35.85, + 0, + "/ST_tW_antitop_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#FA410C", + false, + false, + 1 + ], + "MC13TeV_SingleT_tW": [35.85, + 0, + "/ST_tW_top_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#FA410C", + false, + false, + 1 + ], + "MC13TeV_SingleTbar_t": [80.95, + 0, + "/ST_t-channel_antitop_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#FA410C", + false, + false, + 1 + ], + "MC13TeV_SingleT_t": [136.02, + 0, + "/ST_t-channel_top_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#FA410C", + false, + false, + 1 + ], + "MC13TeV_W0Jets": [49540, 0, "/WToLNu_0J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_W1Jets": [8041, 0, "/WToLNu_1J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_backup_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_W2Jets": [3052, 0, "/WToLNu_2J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_DY50toInf_mlm": [6025.0, 0, "/DYJetsToLL_M-50_TuneCUETP8M1_13TeV-madgraphMLM-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v2/MINIAODSIM", "DY", "#0CAFFA", false, false, 1], + "MC13TeV_DY10to50": [18610.0, 0, "/DYJetsToLL_M-10to50_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "DY", "#0CAFFA", false, false, 1], + "MC13TeV_ZZTo2L2Nu": [0.564, + 0, + "/ZZTo2L2Nu_13TeV_powheg_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_ZZTo2L2Q": [3.22, + 0, + "/ZZTo2L2Q_13TeV_amcatnloFXFX_madspin_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_WWToLNuQQ": [49.997, + 0, + "/WWToLNuQQ_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_WWTo2L2Nu": [12.178, + 0, + "/WWTo2L2Nu_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_WZTo3LNu": [5.26, + 0, + "/WZTo3LNu_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_TTZToQQ": [0.5297, + 0, + "/TTZToQQ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}+V", + "#F600FA", + false, + false, + 1 + ], + "MC13TeV_TTZToLLNuNu": [0.2529, + 0, + "/TTZToLLNuNu_M-10_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", + "t#bar{t}+V", + "#F600FA", + false, + false, + 1 + ], + + "MC13TeV_tZq": [1.256, 0, "/tZq_ll_4f_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_ZZ4L": [1.256, 0, "/ZZTo4L_13TeV_powheg_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_GGHZZ4L": [0.01181, 0, "/GluGluHToZZTo4L_M125_13TeV_powheg2_JHUgenV6_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_VHtoNonbb": [0.9561, 0, "/VHToNonbb_M125_13TeV_amcatnloFXFX_madspin_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WWW": [0.2086, 0, "/WWW_4F_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WWZ": [0.1651, 0, "/WWZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WZZ": [0.05565, 0, "/WZZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_ZZZ": [0.01398, 0, "/ZZZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWW": [0.01150, 0, "/TTWW_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v3/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTTW": [0.000788, 0, "/TTTW_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWZ": [0.003884, 0, "/TTWZ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTZZ": [0.001982, 0, "/TTZZ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWH": [0.001582, 0, "/TTWH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v3/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTZH": [0.001535, 0, "/TTZH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTHH": [0.000757, 0, "/TTHH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTTJ": [0.000474, 0, "/TTTJ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + + "Data13TeV_SingleMuon_2016B": [1.0, 1, "/SingleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016C": [1.0, 1, "/SingleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016D": [1.0, 1, "/SingleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016E": [1.0, 1, "/SingleMuon/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016F": [1.0, 1, "/SingleMuon/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016G": [1.0, 1, "/SingleMuon/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016Hv2": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016Hv3": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_SingleElectron_2016B": [1.0, 1, "/SingleElectron/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016C": [1.0, 1, "/SingleElectron/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016D": [1.0, 1, "/SingleElectron/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016E": [1.0, 1, "/SingleElectron/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016F": [1.0, 1, "/SingleElectron/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016G": [1.0, 1, "/SingleElectron/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016Hv2": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016Hv3": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_MuonEG_2016B": [1.0, 1, "/MuonEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016C": [1.0, 1, "/MuonEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016D": [1.0, 1, "/MuonEG/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016E": [1.0, 1, "/MuonEG/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016F": [1.0, 1, "/MuonEG/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016G": [1.0, 1, "/MuonEG/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016Hv2": [1.0, 1, "/MuonEG/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016Hv3": [1.0, 1, "/MuonEG/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_DoubleEG_2016B": [1.0, 1, "/DoubleEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016C": [1.0, 1, "/DoubleEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016D": [1.0, 1, "/DoubleEG/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016E": [1.0, 1, "/DoubleEG/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016F": [1.0, 1, "/DoubleEG/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016G": [1.0, 1, "/DoubleEG/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016Hv2": [1.0, 1, "/DoubleEG/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016Hv3": [1.0, 1, "/DoubleEG/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_DoubleMuon_2016B": [1.0, 1, "/DoubleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016C": [1.0, 1, "/DoubleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016D": [1.0, 1, "/DoubleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016E": [1.0, 1, "/DoubleMuon/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016F": [1.0, 1, "/DoubleMuon/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016G": [1.0, 1, "/DoubleMuon/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016Hv2": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016Hv3": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1] + +} \ No newline at end of file From 10378b9ff138868456656a4b8494e22b87ce6e94 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 27 Jul 2017 18:25:51 +0200 Subject: [PATCH 102/151] Fixed cross section for four-tops process --- TopAnalysis/data/era2016/fourtops-systs.json | 2 +- TopAnalysis/data/era2016/samples-fourtops-nominal.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/data/era2016/fourtops-systs.json b/TopAnalysis/data/era2016/fourtops-systs.json index 449ec79a1f2..510abbc3566 100644 --- a/TopAnalysis/data/era2016/fourtops-systs.json +++ b/TopAnalysis/data/era2016/fourtops-systs.json @@ -1,6 +1,6 @@ { "MC13TeV_TTTT": [ - 0.92, + 0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t}", diff --git a/TopAnalysis/data/era2016/samples-fourtops-nominal.json b/TopAnalysis/data/era2016/samples-fourtops-nominal.json index 97ae8ce71bf..67449d29cd3 100644 --- a/TopAnalysis/data/era2016/samples-fourtops-nominal.json +++ b/TopAnalysis/data/era2016/samples-fourtops-nominal.json @@ -1,6 +1,6 @@ { "MC13TeV_TTTT": [ - 0.92, + 0.0092, 0, "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "t#bar{t}t#bar{t}", From eb70ecfcf587ebebebf592618617a70f83d2e879 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 31 Jul 2017 15:14:27 +0200 Subject: [PATCH 103/151] Resolving conflicts --- TopAnalysis/scripts/runLocalAnalysis.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/TopAnalysis/scripts/runLocalAnalysis.py b/TopAnalysis/scripts/runLocalAnalysis.py index 7008161b5cd..4d9b8e6a5c8 100755 --- a/TopAnalysis/scripts/runLocalAnalysis.py +++ b/TopAnalysis/scripts/runLocalAnalysis.py @@ -62,11 +62,8 @@ def main(): parser.add_option( '--skipexisting',dest='skipexisting',help='skip jobs with existing output files [%default]', default=False, action='store_true') parser.add_option( '--exactonly', dest='exactonly', help='match only exact sample tags to process [%default]', default=False, action='store_true') parser.add_option( '--outputonly', dest='outputonly', help='filter job submission for a csv list of output files [%default]', default=None, type='string') -<<<<<<< HEAD parser.add_option( '--jobflavour', dest='jobflavour', help='job flavour to be submitted in condor [%default]', default='longlunch', type='string') -======= parser.add_option( '--farmappendix', dest='farmappendix', help='Appendix to condor FARM directory [%default]', default=None, type='string') ->>>>>>> 7b8cf48a9cddd3b68876a8fcac5a6bff6fe15542 (opt, args) = parser.parse_args() #parse selection lists From 75c8acfc296242aecfd1d47070cfc1d574ecd389 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 31 Jul 2017 17:32:13 +0200 Subject: [PATCH 104/151] Added custom script to draw signal strength plot Well, at least I tried! --- TopAnalysis/test/summer2017/plotXSect.cpp | 47 +++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 TopAnalysis/test/summer2017/plotXSect.cpp diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp new file mode 100644 index 00000000000..7efb5ba5acc --- /dev/null +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -0,0 +1,47 @@ +#include +#include + +void plotXSect() +{ + TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); + TTree *tree = (TTree*) file->Get("limit"); + + TCanvas canvas("canvas","Upper limits for four tops",800,600); + canvas.cd(); + TH1F *histFrame = gPad->DrawFrame(0,0,4,50); + histFrame->SetXTitle("95% CL Limit on #mu = #sigma_{obs} / #sigma_{SM}"); + histFrame->GetYaxis()->SetTickSize(0); + histFrame->GetYaxis()->SetLabelSize(0); + + TBox *box1sig, *box2sig; + TLine *lineexp, *lineobs; + double limitVal; + double limit2sigdown, limit1sigdown, limit0, limit1sigup, limit2sigup; + double limitobs; + double *limitAddr[] = {&limit2sigdown, &limit1sigdown, &limit0, &limit1sigup, &limit2sigup, &limitobs}; + + tree->SetBranchAddress("limit",&limitVal); + for (int i=0;iGetEvents();i++) + { + tree->GetEvent(i); + *limitAddr[0] = limitVal; + } + + box2sig = new TBox(limit2sigdown, 0, limit2sigup, 1); + box2sig->SetFillColor(17); + box2sig->Draw(); + box1sig = new TBox(limit1sigdown, 0, limit1sigup, 1); + box1sig->SetFillColor(15); + box1sig->Draw(); + + lineexp = new TLine(limit0,0,limit0,1); + lineexp.Draw(); + lineobs = new TLine(limitobs,0,limitobs,1); + lineobs.SetLineStyle(7); + lineobs.Draw(); + + TLine lineSM(1,0,1,4); + lineSM.SetLineColor(kRed); + lineSM.SetLineWidth(5); + lineSM.Draw(); +} \ No newline at end of file From 8737d33e4f6d9fb53e59f15859dfe518c75fb684 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 31 Jul 2017 17:34:30 +0200 Subject: [PATCH 105/151] Fixed bugs --- TopAnalysis/test/summer2017/plotXSect.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 7efb5ba5acc..e362a563f9c 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -21,9 +21,9 @@ void plotXSect() double *limitAddr[] = {&limit2sigdown, &limit1sigdown, &limit0, &limit1sigup, &limit2sigup, &limitobs}; tree->SetBranchAddress("limit",&limitVal); - for (int i=0;iGetEvents();i++) + for (int i=0;iGetEntries();i++) { - tree->GetEvent(i); + tree->GetEntry(i); *limitAddr[0] = limitVal; } @@ -35,10 +35,10 @@ void plotXSect() box1sig->Draw(); lineexp = new TLine(limit0,0,limit0,1); - lineexp.Draw(); + lineexp->Draw(); lineobs = new TLine(limitobs,0,limitobs,1); - lineobs.SetLineStyle(7); - lineobs.Draw(); + lineobs->SetLineStyle(7); + lineobs->Draw(); TLine lineSM(1,0,1,4); lineSM.SetLineColor(kRed); From e2b2d3a3d7a8e973684482457f4104fc1959f2ec Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 31 Jul 2017 17:55:57 +0200 Subject: [PATCH 106/151] Fixed bugs --- TopAnalysis/test/summer2017/plotXSect.cpp | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index e362a563f9c..eb8bf0eae53 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -6,9 +6,10 @@ void plotXSect() TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); TTree *tree = (TTree*) file->Get("limit"); - TCanvas canvas("canvas","Upper limits for four tops",800,600); - canvas.cd(); - TH1F *histFrame = gPad->DrawFrame(0,0,4,50); + TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); + canvas->Draw(); + canvas->cd(); + TH1F *histFrame = gPad->DrawFrame(0,0,50,4); histFrame->SetXTitle("95% CL Limit on #mu = #sigma_{obs} / #sigma_{SM}"); histFrame->GetYaxis()->SetTickSize(0); histFrame->GetYaxis()->SetLabelSize(0); @@ -24,15 +25,26 @@ void plotXSect() for (int i=0;iGetEntries();i++) { tree->GetEntry(i); - *limitAddr[0] = limitVal; + *limitAddr[i] = limitVal; + //printf("limitVal = %lf\n",limitVal); } + printf("limit2sigdown = %lf\n",limit2sigdown); + printf("limit2sigup = %lf\n",limit2sigup); + printf("limit1sigdown = %lf\n",limit1sigdown); + printf("limit1sigup = %lf\n",limit1sigup); + printf("limit0 = %lf\n",limit0); + printf("limitobs = %lf\n",limitobs); + + canvas->cd(); box2sig = new TBox(limit2sigdown, 0, limit2sigup, 1); box2sig->SetFillColor(17); box2sig->Draw(); + getchar(); box1sig = new TBox(limit1sigdown, 0, limit1sigup, 1); box1sig->SetFillColor(15); box1sig->Draw(); + getchar(); lineexp = new TLine(limit0,0,limit0,1); lineexp->Draw(); @@ -44,4 +56,4 @@ void plotXSect() lineSM.SetLineColor(kRed); lineSM.SetLineWidth(5); lineSM.Draw(); -} \ No newline at end of file +} From 7130769e99dc65f969454a7a3d59b8f96846f970 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 31 Jul 2017 17:57:51 +0200 Subject: [PATCH 107/151] Fixed bug --- TopAnalysis/test/summer2017/plotXSect.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index eb8bf0eae53..b4b0d405d23 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -54,6 +54,6 @@ void plotXSect() TLine lineSM(1,0,1,4); lineSM.SetLineColor(kRed); - lineSM.SetLineWidth(5); + lineSM.SetLineWidth((Width_t)5); lineSM.Draw(); } From ffc09c49bdf8db6a734388165b65a5e8c21c76e1 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 31 Jul 2017 18:00:54 +0200 Subject: [PATCH 108/151] Added marker and fixed bug --- TopAnalysis/test/summer2017/plotXSect.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index b4b0d405d23..20fbb2a3d46 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -40,18 +40,21 @@ void plotXSect() box2sig = new TBox(limit2sigdown, 0, limit2sigup, 1); box2sig->SetFillColor(17); box2sig->Draw(); - getchar(); box1sig = new TBox(limit1sigdown, 0, limit1sigup, 1); box1sig->SetFillColor(15); box1sig->Draw(); - getchar(); lineexp = new TLine(limit0,0,limit0,1); lineexp->Draw(); + lineexp->SetLineWidth((Width_t)2); lineobs = new TLine(limitobs,0,limitobs,1); lineobs->SetLineStyle(7); + lineobs->SetLineWidth((Width_t)2); lineobs->Draw(); + TMarker marker(limit0,0.5,31); + marker.Draw(); + TLine lineSM(1,0,1,4); lineSM.SetLineColor(kRed); lineSM.SetLineWidth((Width_t)5); From c40d17fc787f133b3ce2585e1a1c5c5982270ff9 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Mon, 31 Jul 2017 18:01:59 +0200 Subject: [PATCH 109/151] Fixed bugs --- TopAnalysis/test/summer2017/plotXSect.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 20fbb2a3d46..7cc18443a32 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -52,11 +52,11 @@ void plotXSect() lineobs->SetLineWidth((Width_t)2); lineobs->Draw(); - TMarker marker(limit0,0.5,31); - marker.Draw(); + TMarker *marker = new TMarker(limit0,0.5,31); + marker->Draw(); - TLine lineSM(1,0,1,4); - lineSM.SetLineColor(kRed); - lineSM.SetLineWidth((Width_t)5); - lineSM.Draw(); + TLine *lineSM = new TLine(1,0,1,4); + lineSM->SetLineColor(kRed); + lineSM->SetLineWidth((Width_t)5); + lineSM->Draw(); } From fc321e4a6497c3e6274d6d02624c2c7f4d86dfbd Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 14:18:43 +0200 Subject: [PATCH 110/151] Added another dataset --- TopAnalysis/test/summer2017/plotXSect.cpp | 77 ++++++++++++----------- 1 file changed, 42 insertions(+), 35 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 7cc18443a32..95adabc9e0b 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -3,13 +3,16 @@ void plotXSect() { - TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); - TTree *tree = (TTree*) file->Get("limit"); + TFile *fileIndex[2]; + fileIndex[0] = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); + fileIndex[1] = new TFile("datacard_4tops/fourtops_bdt_Asymptotic.root"); + //TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); + TTree *tree; TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); canvas->Draw(); canvas->cd(); - TH1F *histFrame = gPad->DrawFrame(0,0,50,4); + TH1F *histFrame = gPad->DrawFrame(0,0,80,4); histFrame->SetXTitle("95% CL Limit on #mu = #sigma_{obs} / #sigma_{SM}"); histFrame->GetYaxis()->SetTickSize(0); histFrame->GetYaxis()->SetLabelSize(0); @@ -21,41 +24,45 @@ void plotXSect() double limitobs; double *limitAddr[] = {&limit2sigdown, &limit1sigdown, &limit0, &limit1sigup, &limit2sigup, &limitobs}; - tree->SetBranchAddress("limit",&limitVal); - for (int i=0;iGetEntries();i++) + for (int set = 0; set < 2; set++) { - tree->GetEntry(i); - *limitAddr[i] = limitVal; - //printf("limitVal = %lf\n",limitVal); - } + tree = file[set]->Get("limit"); + tree->SetBranchAddress("limit",&limitVal); + for (int i=0;iGetEntries();i++) + { + tree->GetEntry(i); + *limitAddr[i] = limitVal; + //printf("limitVal = %lf\n",limitVal); + } - printf("limit2sigdown = %lf\n",limit2sigdown); - printf("limit2sigup = %lf\n",limit2sigup); - printf("limit1sigdown = %lf\n",limit1sigdown); - printf("limit1sigup = %lf\n",limit1sigup); - printf("limit0 = %lf\n",limit0); - printf("limitobs = %lf\n",limitobs); + printf("limit2sigdown = %lf\n",limit2sigdown); + printf("limit2sigup = %lf\n",limit2sigup); + printf("limit1sigdown = %lf\n",limit1sigdown); + printf("limit1sigup = %lf\n",limit1sigup); + printf("limit0 = %lf\n",limit0); + printf("limitobs = %lf\n",limitobs); - canvas->cd(); - box2sig = new TBox(limit2sigdown, 0, limit2sigup, 1); - box2sig->SetFillColor(17); - box2sig->Draw(); - box1sig = new TBox(limit1sigdown, 0, limit1sigup, 1); - box1sig->SetFillColor(15); - box1sig->Draw(); - - lineexp = new TLine(limit0,0,limit0,1); - lineexp->Draw(); - lineexp->SetLineWidth((Width_t)2); - lineobs = new TLine(limitobs,0,limitobs,1); - lineobs->SetLineStyle(7); - lineobs->SetLineWidth((Width_t)2); - lineobs->Draw(); - - TMarker *marker = new TMarker(limit0,0.5,31); - marker->Draw(); - - TLine *lineSM = new TLine(1,0,1,4); + canvas->cd(); + box2sig = new TBox(limit2sigdown, set, limit2sigup, set+1); + box2sig->SetFillColor(17); + box2sig->Draw(); + box1sig = new TBox(limit1sigdown, set, limit1sigup, set+1); + box1sig->SetFillColor(15); + box1sig->Draw(); + + lineexp = new TLine(limit0, set, limit0, set+1); + lineexp->Draw(); + lineexp->SetLineWidth((Width_t)2); + lineobs = new TLine(limitobs, set, limitobs, set+1); + lineobs->SetLineStyle(7); + lineobs->SetLineWidth((Width_t)2); + lineobs->Draw(); + + TMarker *marker = new TMarker(limit0, 0.5, 31); + marker->Draw(); + } + + TLine *lineSM = new TLine(1, 0, 1, 4); lineSM->SetLineColor(kRed); lineSM->SetLineWidth((Width_t)5); lineSM->Draw(); From 08f429687f4b64aa71102640c4b6be427f42b55e Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 14:35:22 +0200 Subject: [PATCH 111/151] Fixed bugs --- TopAnalysis/test/summer2017/plotXSect.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 95adabc9e0b..68022f2c85c 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -24,9 +24,9 @@ void plotXSect() double limitobs; double *limitAddr[] = {&limit2sigdown, &limit1sigdown, &limit0, &limit1sigup, &limit2sigup, &limitobs}; - for (int set = 0; set < 2; set++) + for (int s = 0; s < 2; s++) { - tree = file[set]->Get("limit"); + tree = (TTree*) fileIndex[s]->Get("limit"); tree->SetBranchAddress("limit",&limitVal); for (int i=0;iGetEntries();i++) { @@ -43,22 +43,22 @@ void plotXSect() printf("limitobs = %lf\n",limitobs); canvas->cd(); - box2sig = new TBox(limit2sigdown, set, limit2sigup, set+1); + box2sig = new TBox(limit2sigdown, s, limit2sigup, s+1); box2sig->SetFillColor(17); box2sig->Draw(); - box1sig = new TBox(limit1sigdown, set, limit1sigup, set+1); + box1sig = new TBox(limit1sigdown, s, limit1sigup, s+1); box1sig->SetFillColor(15); box1sig->Draw(); - lineexp = new TLine(limit0, set, limit0, set+1); + lineexp = new TLine(limit0, s, limit0, s+1); lineexp->Draw(); lineexp->SetLineWidth((Width_t)2); - lineobs = new TLine(limitobs, set, limitobs, set+1); + lineobs = new TLine(limitobs, s, limitobs, s+1); lineobs->SetLineStyle(7); lineobs->SetLineWidth((Width_t)2); lineobs->Draw(); - TMarker *marker = new TMarker(limit0, 0.5, 31); + TMarker *marker = new TMarker(limit0, s + 0.5, 31); marker->Draw(); } From 9e25045f882714d21be672ffa3f3eb99e14d12cf Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 14:44:08 +0200 Subject: [PATCH 112/151] Removed expected line, leaving only one and two sigma boxes --- TopAnalysis/test/summer2017/plotXSect.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 68022f2c85c..4af0ddbc9ac 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -50,15 +50,15 @@ void plotXSect() box1sig->SetFillColor(15); box1sig->Draw(); - lineexp = new TLine(limit0, s, limit0, s+1); - lineexp->Draw(); - lineexp->SetLineWidth((Width_t)2); + //lineexp = new TLine(limit0, s, limit0, s+1); + //lineexp->Draw(); + //lineexp->SetLineWidth((Width_t)2); lineobs = new TLine(limitobs, s, limitobs, s+1); lineobs->SetLineStyle(7); lineobs->SetLineWidth((Width_t)2); lineobs->Draw(); - TMarker *marker = new TMarker(limit0, s + 0.5, 31); + TMarker *marker = new TMarker(limit0, s + 0.5, 21); marker->Draw(); } From cbccb5d8714ab150e6ac4e4d6e3e0ec80e2b73a9 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 14:46:20 +0200 Subject: [PATCH 113/151] Added TLatex text --- TopAnalysis/test/summer2017/plotXSect.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 4af0ddbc9ac..56942eb12f0 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -66,4 +66,11 @@ void plotXSect() lineSM->SetLineColor(kRed); lineSM->SetLineWidth((Width_t)5); lineSM->Draw(); + + TLatex *tex = new TLatex(); + tex->SetTextFont(42); + tex->SetTextSize(0.04); + tex->SetNDC(); + tex->DrawLatex(0.15,0.9,"#bf{CMS} #it{Preliminary}"); + tex->DrawLatex(0.75,0.97,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); } From ea6871261b85e6c9aae2323a57ddc7f76abca493 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 15:07:28 +0200 Subject: [PATCH 114/151] Added "SM Here" and fixed text placement --- TopAnalysis/test/summer2017/plotXSect.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 56942eb12f0..ae4f20bfaa0 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -54,11 +54,11 @@ void plotXSect() //lineexp->Draw(); //lineexp->SetLineWidth((Width_t)2); lineobs = new TLine(limitobs, s, limitobs, s+1); - lineobs->SetLineStyle(7); + //lineobs->SetLineStyle(7); lineobs->SetLineWidth((Width_t)2); lineobs->Draw(); - TMarker *marker = new TMarker(limit0, s + 0.5, 21); + TMarker *marker = new TMarker(limitobs, s + 0.5, 21); marker->Draw(); } @@ -71,6 +71,7 @@ void plotXSect() tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetNDC(); - tex->DrawLatex(0.15,0.9,"#bf{CMS} #it{Preliminary}"); - tex->DrawLatex(0.75,0.97,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); + tex->DrawLatex(0.15,0.92,"#bf{CMS} #it{Preliminary}"); + tex->DrawLatex(0.7,0.92,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); + tex->DrawLatex(0.12,0.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); } From 2f0333eb978b8062db8f6d8a0b4eb871707bb26d Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 15:35:38 +0200 Subject: [PATCH 115/151] Adding text for each dataset --- TopAnalysis/test/summer2017/plotXSect.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index ae4f20bfaa0..c29faa0e560 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -8,6 +8,7 @@ void plotXSect() fileIndex[1] = new TFile("datacard_4tops/fourtops_bdt_Asymptotic.root"); //TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); TTree *tree; + string fileName[] = {"#bf{Neural Network}", "#bf{BDT}"}; TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); canvas->Draw(); @@ -16,6 +17,11 @@ void plotXSect() histFrame->SetXTitle("95% CL Limit on #mu = #sigma_{obs} / #sigma_{SM}"); histFrame->GetYaxis()->SetTickSize(0); histFrame->GetYaxis()->SetLabelSize(0); + + TLatex *tex = new TLatex(); + tex->SetTextFont(42); + tex->SetTextSize(0.04); + tex->SetNDC(); TBox *box1sig, *box2sig; TLine *lineexp, *lineobs; @@ -60,6 +66,8 @@ void plotXSect() TMarker *marker = new TMarker(limitobs, s + 0.5, 21); marker->Draw(); + + tex->DrawLatexNDC(50,s+0.5,fileName[s].c_str()); } TLine *lineSM = new TLine(1, 0, 1, 4); @@ -67,10 +75,6 @@ void plotXSect() lineSM->SetLineWidth((Width_t)5); lineSM->Draw(); - TLatex *tex = new TLatex(); - tex->SetTextFont(42); - tex->SetTextSize(0.04); - tex->SetNDC(); tex->DrawLatex(0.15,0.92,"#bf{CMS} #it{Preliminary}"); tex->DrawLatex(0.7,0.92,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); tex->DrawLatex(0.12,0.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); From b5bfd5fdb6ee0ea4514135dad4f6cb164082d53d Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 16:01:54 +0200 Subject: [PATCH 116/151] Fixed text position --- TopAnalysis/test/summer2017/plotXSect.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index c29faa0e560..2e24026b6ce 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -13,7 +13,7 @@ void plotXSect() TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); canvas->Draw(); canvas->cd(); - TH1F *histFrame = gPad->DrawFrame(0,0,80,4); + TH1F *histFrame = gPad->DrawFrame(0,-0.15,80,4); histFrame->SetXTitle("95% CL Limit on #mu = #sigma_{obs} / #sigma_{SM}"); histFrame->GetYaxis()->SetTickSize(0); histFrame->GetYaxis()->SetLabelSize(0); @@ -21,7 +21,7 @@ void plotXSect() TLatex *tex = new TLatex(); tex->SetTextFont(42); tex->SetTextSize(0.04); - tex->SetNDC(); + //tex->SetNDC(); TBox *box1sig, *box2sig; TLine *lineexp, *lineobs; @@ -67,15 +67,15 @@ void plotXSect() TMarker *marker = new TMarker(limitobs, s + 0.5, 21); marker->Draw(); - tex->DrawLatexNDC(50,s+0.5,fileName[s].c_str()); + tex->DrawLatex(50,s+0.5,fileName[s].c_str()); } - TLine *lineSM = new TLine(1, 0, 1, 4); + TLine *lineSM = new TLine(1, -0.15, 1, 4); lineSM->SetLineColor(kRed); lineSM->SetLineWidth((Width_t)5); lineSM->Draw(); - tex->DrawLatex(0.15,0.92,"#bf{CMS} #it{Preliminary}"); - tex->DrawLatex(0.7,0.92,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); - tex->DrawLatex(0.12,0.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); + tex->DrawLatex(0,4.1,"#bf{CMS} #it{Preliminary}"); + tex->DrawLatex(64,4.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); + tex->DrawLatex(1.5,3.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); } From f516659fb51f3433ec35d23b667867429aa09152 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 16:17:03 +0200 Subject: [PATCH 117/151] Changed how points are plotted --- TopAnalysis/test/summer2017/plotXSect.cpp | 42 ++++++++++++++++------- 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 2e24026b6ce..8eebec6b32c 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -3,7 +3,8 @@ void plotXSect() { - TFile *fileIndex[2]; + const int numberOfDatasets = 2; + TFile *fileIndex[numberOfDatasets]; fileIndex[0] = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); fileIndex[1] = new TFile("datacard_4tops/fourtops_bdt_Asymptotic.root"); //TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); @@ -25,15 +26,18 @@ void plotXSect() TBox *box1sig, *box2sig; TLine *lineexp, *lineobs; - double limitVal; + double limitVal, limitErrVal; double limit2sigdown, limit1sigdown, limit0, limit1sigup, limit2sigup; - double limitobs; - double *limitAddr[] = {&limit2sigdown, &limit1sigdown, &limit0, &limit1sigup, &limit2sigup, &limitobs}; + double limitObs[numberOfDatasets], limitObsError[numberOfDatasets], limitObsCache; + double *limitAddr[] = {&limit2sigdown, &limit1sigdown, &limit0, &limit1sigup, &limit2sigup, &limitObsCache}; + + double limitYPointCoord[numberOfDatasets], limitYPointCoordErr[numberOfDatasets]; for (int s = 0; s < 2; s++) { tree = (TTree*) fileIndex[s]->Get("limit"); - tree->SetBranchAddress("limit",&limitVal); + tree->SetBranchAddress("limit", &limitVal); + tree->SetBranchAddress("limitErr", &limitErrVal); for (int i=0;iGetEntries();i++) { tree->GetEntry(i); @@ -41,12 +45,18 @@ void plotXSect() //printf("limitVal = %lf\n",limitVal); } + limitObs[s] = limitObsCache; + tree->GetEntry(5); + limitObsError[s] = limitErrVal; + limitYPointCoord[s] = s + 0.5; + limitYPointCoordErr[s] = 0.5; + printf("limit2sigdown = %lf\n",limit2sigdown); printf("limit2sigup = %lf\n",limit2sigup); printf("limit1sigdown = %lf\n",limit1sigdown); printf("limit1sigup = %lf\n",limit1sigup); printf("limit0 = %lf\n",limit0); - printf("limitobs = %lf\n",limitobs); + printf("limitObs = %lf\n",limitObs); canvas->cd(); box2sig = new TBox(limit2sigdown, s, limit2sigup, s+1); @@ -59,15 +69,14 @@ void plotXSect() //lineexp = new TLine(limit0, s, limit0, s+1); //lineexp->Draw(); //lineexp->SetLineWidth((Width_t)2); - lineobs = new TLine(limitobs, s, limitobs, s+1); - //lineobs->SetLineStyle(7); - lineobs->SetLineWidth((Width_t)2); - lineobs->Draw(); + //lineobs = new TLine(limitObs, s, limitObs, s+1); + //lineobs->SetLineWidth((Width_t)2); + //lineobs->Draw(); - TMarker *marker = new TMarker(limitobs, s + 0.5, 21); + TMarker *marker = new TMarker(limitObs, s + 0.5, 21); marker->Draw(); - tex->DrawLatex(50,s+0.5,fileName[s].c_str()); + tex->DrawLatex(50, s + 0.5, fileName[s].c_str()); } TLine *lineSM = new TLine(1, -0.15, 1, 4); @@ -75,6 +84,15 @@ void plotXSect() lineSM->SetLineWidth((Width_t)5); lineSM->Draw(); + TGraphErrors *obsPoints = new TGraphErrors(numberOfDatasets, limitObs, limitYPointCoord, limitObsError, limitYPointCoordErr); + gr->SetName("gr"); + gr->SetLineColor(0); + gr->SetLineWidth(2); + gr->SetMarkerStyle(21); + gr->SetMarkerSize(1.3); + gr->SetMarkerColor(7); + gr->Draw("SAME"); + tex->DrawLatex(0,4.1,"#bf{CMS} #it{Preliminary}"); tex->DrawLatex(64,4.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); tex->DrawLatex(1.5,3.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); From 7860b973da4036cd93b5fa36054d331d81e23ed0 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 16:17:50 +0200 Subject: [PATCH 118/151] Fixed bug --- TopAnalysis/test/summer2017/plotXSect.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 8eebec6b32c..f8491d066a2 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -73,8 +73,8 @@ void plotXSect() //lineobs->SetLineWidth((Width_t)2); //lineobs->Draw(); - TMarker *marker = new TMarker(limitObs, s + 0.5, 21); - marker->Draw(); + //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); + //marker->Draw(); tex->DrawLatex(50, s + 0.5, fileName[s].c_str()); } From 461180a0fcf172032bee608b06b6e7abf19acf79 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 16:18:49 +0200 Subject: [PATCH 119/151] Fixed bug --- TopAnalysis/test/summer2017/plotXSect.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index f8491d066a2..0106e32de99 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -85,13 +85,12 @@ void plotXSect() lineSM->Draw(); TGraphErrors *obsPoints = new TGraphErrors(numberOfDatasets, limitObs, limitYPointCoord, limitObsError, limitYPointCoordErr); - gr->SetName("gr"); - gr->SetLineColor(0); - gr->SetLineWidth(2); - gr->SetMarkerStyle(21); - gr->SetMarkerSize(1.3); - gr->SetMarkerColor(7); - gr->Draw("SAME"); + obsPoints->SetLineColor(0); + obsPoints->SetLineWidth(2); + obsPoints->SetMarkerStyle(21); + obsPoints->SetMarkerSize(1.3); + obsPoints->SetMarkerColor(7); + obsPoints->Draw("SAME"); tex->DrawLatex(0,4.1,"#bf{CMS} #it{Preliminary}"); tex->DrawLatex(64,4.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); From 93f15920778dfc85285b5824bec5682f69cbcdb5 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 16:35:49 +0200 Subject: [PATCH 120/151] Fixed element placement --- TopAnalysis/test/summer2017/plotXSect.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 0106e32de99..b4d9b4e9695 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -56,7 +56,7 @@ void plotXSect() printf("limit1sigdown = %lf\n",limit1sigdown); printf("limit1sigup = %lf\n",limit1sigup); printf("limit0 = %lf\n",limit0); - printf("limitObs = %lf\n",limitObs); + printf("limitObs = %lf\n",limitObs[s]); canvas->cd(); box2sig = new TBox(limit2sigdown, s, limit2sigup, s+1); @@ -85,12 +85,13 @@ void plotXSect() lineSM->Draw(); TGraphErrors *obsPoints = new TGraphErrors(numberOfDatasets, limitObs, limitYPointCoord, limitObsError, limitYPointCoordErr); - obsPoints->SetLineColor(0); + obsPoints->SetLineColor(1); obsPoints->SetLineWidth(2); + obsPoints->SetMarkerColor(1); obsPoints->SetMarkerStyle(21); - obsPoints->SetMarkerSize(1.3); - obsPoints->SetMarkerColor(7); - obsPoints->Draw("SAME"); + obsPoints->SetMarkerSize(1.6); + obsPoints->SetMarkerColor(1); + obsPoints->Draw("SAME P"); tex->DrawLatex(0,4.1,"#bf{CMS} #it{Preliminary}"); tex->DrawLatex(64,4.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); From 5952ed1d35de533a597046d52ebf69e3d246f832 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 16:50:53 +0200 Subject: [PATCH 121/151] Adding legend --- TopAnalysis/test/summer2017/plotXSect.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index b4d9b4e9695..e8392cc0815 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -96,4 +96,18 @@ void plotXSect() tex->DrawLatex(0,4.1,"#bf{CMS} #it{Preliminary}"); tex->DrawLatex(64,4.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); tex->DrawLatex(1.5,3.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); + + auto hist1sigDummy = TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); + auto hist2sigDummy = TH1F("hist2sigDummy","expected #pm 2 #sigma",1,0,1); + hist1sigDummy->SetFillColor(15); + hist1sigDummy->SetLineWidth(0); + hist2sigDummy->SetFillColor(17); + hist2sigDummy->SetLineWidth(0); + + TLegend *legend = new TLegend(0.7,0.7,0.9,0.9); + legend->SetHeader("limits on #sigma_{tttt}"); + legend->AddEntry(obsPoints,"observed","lep"); + legend->AddEntry(hist1sigDummy,"expected #pm 1 #sigma","f"); + legend->AddEntry(hist2sigDummy,"expected #pm 2 #sigma","f"); + legend->Draw(); } From cc75c6cd540bbd84b366e2919fce215045083dfe Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 1 Aug 2017 17:40:01 +0200 Subject: [PATCH 122/151] Fixed bug --- TopAnalysis/src/FourTopsAnalyzer.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 8ad635d4cee..e447f69c5c5 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -304,8 +304,8 @@ void RunFourTopsAnalyzer(TString filename, lepton_3_chIso = ev.l_chargedHadronIso[leptons_chIsoSorted[2].originalReference()]; lepton_4_chIso = ev.l_chargedHadronIso[leptons_chIsoSorted[3].originalReference()]; - lepton_3_minIso = ev.l_chargedHadronIso[leptons_minIsoSorted[2].originalReference()]; - lepton_4_minIso = ev.l_chargedHadronIso[leptons_minIsoSorted[3].originalReference()]; + lepton_3_minIso = ev.l_miniIso[leptons_minIsoSorted[2].originalReference()]; + lepton_4_minIso = ev.l_miniIso[leptons_minIsoSorted[3].originalReference()]; } } From 2e481ea8cdeebdd7d4e9a4661ed1c8159838d7fa Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 2 Aug 2017 15:56:50 +0200 Subject: [PATCH 123/151] Added results from TOP-16-016 and some fixes to text --- TopAnalysis/test/summer2017/plotXSect.cpp | 70 +++++++++++++++++++++-- 1 file changed, 64 insertions(+), 6 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index e8392cc0815..ef95dfc6fb1 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -3,18 +3,18 @@ void plotXSect() { - const int numberOfDatasets = 2; + const int numberOfDatasets = 5; TFile *fileIndex[numberOfDatasets]; fileIndex[0] = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); fileIndex[1] = new TFile("datacard_4tops/fourtops_bdt_Asymptotic.root"); //TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); TTree *tree; - string fileName[] = {"#bf{Neural Network}", "#bf{BDT}"}; + string fileName[] = {"#bf{Neural Network}", "#bf{BDT}", "#bf{Dilepton}\\TOP-16-016", "#bf{Single lepton}\\TOP-16-016", "#bf{Combined}\\TOP-16-016"}; TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); canvas->Draw(); canvas->cd(); - TH1F *histFrame = gPad->DrawFrame(0,-0.15,80,4); + TH1F *histFrame = gPad->DrawFrame(0,-0.15,80,7); histFrame->SetXTitle("95% CL Limit on #mu = #sigma_{obs} / #sigma_{SM}"); histFrame->GetYaxis()->SetTickSize(0); histFrame->GetYaxis()->SetLabelSize(0); @@ -33,6 +33,19 @@ void plotXSect() double limitYPointCoord[numberOfDatasets], limitYPointCoordErr[numberOfDatasets]; + limitObs[2] = 16.1; + limitObs[3] = 14.9; + limitObs[4] = 10.2; + limitObsError[2] = 0.; + limitObsError[3] = 0.; + limitObsError[4] = 0.; + + for (int y = 2; y < 5; y++) + { + limitYPointCoord[y] = y + 0.5; + limitYPointCoordErr[y] = 0.5; + } + for (int s = 0; s < 2; s++) { tree = (TTree*) fileIndex[s]->Get("limit"); @@ -79,6 +92,51 @@ void plotXSect() tex->DrawLatex(50, s + 0.5, fileName[s].c_str()); } + for (int s = 2; s < 5; s++) + { + switch (s) + { + case 2: // Dilepton + limit2sigdown = 9.4; + limit1sigdown = 13.9; + limit1sigup = 38.5; + limit2sigup = 64.0; + break; + case 3: // Single lepton + limit2sigdown = 5.9; + limit1sigdown = 8.3; + limit1sigup = 20.5; + limit2sigup = 32.8; + break; + case 4: // Combined + limit2sigdown = 5.0; + limit1sigdown = 7.0; + limit1sigup = 17.5; + limit2sigup = 28.3; + break; + } + + canvas->cd(); + box2sig = new TBox(limit2sigdown, s, limit2sigup, s+1); + box2sig->SetFillColor(17); + box2sig->Draw(); + box1sig = new TBox(limit1sigdown, s, limit1sigup, s+1); + box1sig->SetFillColor(15); + box1sig->Draw(); + + //lineexp = new TLine(limit0, s, limit0, s+1); + //lineexp->Draw(); + //lineexp->SetLineWidth((Width_t)2); + //lineobs = new TLine(limitObs, s, limitObs, s+1); + //lineobs->SetLineWidth((Width_t)2); + //lineobs->Draw(); + + //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); + //marker->Draw(); + + tex->DrawLatex(50, s + 0.5, fileName[s].c_str()); + } + TLine *lineSM = new TLine(1, -0.15, 1, 4); lineSM->SetLineColor(kRed); lineSM->SetLineWidth((Width_t)5); @@ -93,9 +151,9 @@ void plotXSect() obsPoints->SetMarkerColor(1); obsPoints->Draw("SAME P"); - tex->DrawLatex(0,4.1,"#bf{CMS} #it{Preliminary}"); - tex->DrawLatex(64,4.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); - tex->DrawLatex(1.5,3.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); + tex->DrawLatex(0,7.1,"#bf{CMS} #it{Work in progress}"); + tex->DrawLatex(64,7.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); + tex->DrawLatex(1.5,6.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); auto hist1sigDummy = TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); auto hist2sigDummy = TH1F("hist2sigDummy","expected #pm 2 #sigma",1,0,1); From ab7686f43ab17df53262679f06c5770afb11f6c5 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 2 Aug 2017 16:01:06 +0200 Subject: [PATCH 124/151] Fixed appearance --- TopAnalysis/test/summer2017/plotXSect.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index e8392cc0815..38c72a51ae9 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -97,14 +97,15 @@ void plotXSect() tex->DrawLatex(64,4.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); tex->DrawLatex(1.5,3.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); - auto hist1sigDummy = TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); - auto hist2sigDummy = TH1F("hist2sigDummy","expected #pm 2 #sigma",1,0,1); + auto hist1sigDummy = new TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); + auto hist2sigDummy = new TH1F("hist2sigDummy","expected #pm 2 #sigma",1,0,1); hist1sigDummy->SetFillColor(15); - hist1sigDummy->SetLineWidth(0); + hist1sigDummy->SetLineColor(0); hist2sigDummy->SetFillColor(17); - hist2sigDummy->SetLineWidth(0); + hist2sigDummy->SetLineColor(0); - TLegend *legend = new TLegend(0.7,0.7,0.9,0.9); + TLegend *legend = new TLegend(0.6,0.6,0.85,0.85); + legend->SetLineColor(0); legend->SetHeader("limits on #sigma_{tttt}"); legend->AddEntry(obsPoints,"observed","lep"); legend->AddEntry(hist1sigDummy,"expected #pm 1 #sigma","f"); From 43ec30e263e339653c6f1a30d8f46f0fe87083fe Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 2 Aug 2017 16:24:21 +0200 Subject: [PATCH 125/151] Fixed appearance of the plot --- TopAnalysis/test/summer2017/plotXSect.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 089a00dba50..7cddea6fce2 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -9,12 +9,12 @@ void plotXSect() fileIndex[1] = new TFile("datacard_4tops/fourtops_bdt_Asymptotic.root"); //TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); TTree *tree; - string fileName[] = {"#bf{Neural Network}", "#bf{BDT}", "#bf{Dilepton}\\TOP-16-016", "#bf{Single lepton}\\TOP-16-016", "#bf{Combined}\\TOP-16-016"}; + string fileName[] = {"#splitline{#bf{Four lepton NN}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Four lepton BDT}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Dilepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Single lepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Combined}}{#scale[0.7]{TOP-16-016}}"}; TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); canvas->Draw(); canvas->cd(); - TH1F *histFrame = gPad->DrawFrame(0,-0.15,80,7); + TH1F *histFrame = gPad->DrawFrame(0,-0.15,100,7); histFrame->SetXTitle("95% CL Limit on #mu = #sigma_{obs} / #sigma_{SM}"); histFrame->GetYaxis()->SetTickSize(0); histFrame->GetYaxis()->SetLabelSize(0); @@ -89,7 +89,7 @@ void plotXSect() //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); //marker->Draw(); - tex->DrawLatex(50, s + 0.5, fileName[s].c_str()); + tex->DrawLatex(70, s + 0.5, fileName[s].c_str()); } for (int s = 2; s < 5; s++) @@ -134,10 +134,10 @@ void plotXSect() //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); //marker->Draw(); - tex->DrawLatex(50, s + 0.5, fileName[s].c_str()); + tex->DrawLatex(70, s + 0.5, fileName[s].c_str()); } - TLine *lineSM = new TLine(1, -0.15, 1, 4); + TLine *lineSM = new TLine(1, -0.15, 1, 7); lineSM->SetLineColor(kRed); lineSM->SetLineWidth((Width_t)5); lineSM->Draw(); @@ -152,8 +152,8 @@ void plotXSect() obsPoints->Draw("SAME P"); tex->DrawLatex(0,7.1,"#bf{CMS} #it{Work in progress}"); - tex->DrawLatex(64,7.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); - tex->DrawLatex(1.5,6.8,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); + tex->DrawLatex(80,7.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); + tex->DrawLatex(2,6.6,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); auto hist1sigDummy = new TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); auto hist2sigDummy = new TH1F("hist2sigDummy","expected #pm 2 #sigma",1,0,1); @@ -162,7 +162,7 @@ void plotXSect() hist2sigDummy->SetFillColor(17); hist2sigDummy->SetLineColor(0); - TLegend *legend = new TLegend(0.6,0.6,0.85,0.85); + TLegend *legend = new TLegend(0.65,0.7,0.85,0.85); legend->SetLineColor(0); legend->SetHeader("limits on #sigma_{tttt}"); legend->AddEntry(obsPoints,"observed","lep"); From 79b954d4c098e1e4eecd0423452b25e5a0a5672d Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 2 Aug 2017 16:32:42 +0200 Subject: [PATCH 126/151] Reversed dataset order --- TopAnalysis/test/summer2017/plotXSect.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 7cddea6fce2..85ad339adfa 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -61,7 +61,7 @@ void plotXSect() limitObs[s] = limitObsCache; tree->GetEntry(5); limitObsError[s] = limitErrVal; - limitYPointCoord[s] = s + 0.5; + limitYPointCoord[s] = (5-s) + 0.5; limitYPointCoordErr[s] = 0.5; printf("limit2sigdown = %lf\n",limit2sigdown); @@ -72,10 +72,10 @@ void plotXSect() printf("limitObs = %lf\n",limitObs[s]); canvas->cd(); - box2sig = new TBox(limit2sigdown, s, limit2sigup, s+1); + box2sig = new TBox(limit2sigdown, (5-s), limit2sigup, (5-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); - box1sig = new TBox(limit1sigdown, s, limit1sigup, s+1); + box1sig = new TBox(limit1sigdown, (5-s), limit1sigup, (5-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); @@ -89,7 +89,7 @@ void plotXSect() //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); //marker->Draw(); - tex->DrawLatex(70, s + 0.5, fileName[s].c_str()); + tex->DrawLatex(70, (5-s) + 0.5, fileName[s].c_str()); } for (int s = 2; s < 5; s++) @@ -117,10 +117,10 @@ void plotXSect() } canvas->cd(); - box2sig = new TBox(limit2sigdown, s, limit2sigup, s+1); + box2sig = new TBox(limit2sigdown, 5-s, limit2sigup, (5-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); - box1sig = new TBox(limit1sigdown, s, limit1sigup, s+1); + box1sig = new TBox(limit1sigdown, 5-s, limit1sigup, (5-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); @@ -134,7 +134,7 @@ void plotXSect() //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); //marker->Draw(); - tex->DrawLatex(70, s + 0.5, fileName[s].c_str()); + tex->DrawLatex(70, (5-s) + 0.5, fileName[s].c_str()); } TLine *lineSM = new TLine(1, -0.15, 1, 7); From 03f5abf71c7ea9f5b0080b38e4ec6262c1376508 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 2 Aug 2017 16:34:26 +0200 Subject: [PATCH 127/151] Fixed bug --- TopAnalysis/test/summer2017/plotXSect.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 85ad339adfa..c707011c74a 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -42,7 +42,7 @@ void plotXSect() for (int y = 2; y < 5; y++) { - limitYPointCoord[y] = y + 0.5; + limitYPointCoord[y] = 4 - y + 0.5; limitYPointCoordErr[y] = 0.5; } @@ -72,10 +72,10 @@ void plotXSect() printf("limitObs = %lf\n",limitObs[s]); canvas->cd(); - box2sig = new TBox(limit2sigdown, (5-s), limit2sigup, (5-s)+1); + box2sig = new TBox(limit2sigdown, (4-s), limit2sigup, (4-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); - box1sig = new TBox(limit1sigdown, (5-s), limit1sigup, (5-s)+1); + box1sig = new TBox(limit1sigdown, (4-s), limit1sigup, (4-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); @@ -89,7 +89,7 @@ void plotXSect() //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); //marker->Draw(); - tex->DrawLatex(70, (5-s) + 0.5, fileName[s].c_str()); + tex->DrawLatex(70, (4-s) + 0.5, fileName[s].c_str()); } for (int s = 2; s < 5; s++) @@ -117,10 +117,10 @@ void plotXSect() } canvas->cd(); - box2sig = new TBox(limit2sigdown, 5-s, limit2sigup, (5-s)+1); + box2sig = new TBox(limit2sigdown, 4-s, limit2sigup, (4-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); - box1sig = new TBox(limit1sigdown, 5-s, limit1sigup, (5-s)+1); + box1sig = new TBox(limit1sigdown, 4-s, limit1sigup, (4-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); @@ -134,7 +134,7 @@ void plotXSect() //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); //marker->Draw(); - tex->DrawLatex(70, (5-s) + 0.5, fileName[s].c_str()); + tex->DrawLatex(70, (4-s) + 0.5, fileName[s].c_str()); } TLine *lineSM = new TLine(1, -0.15, 1, 7); From 11caa9ed992e9eacebc6cabd6946bf305052b23b Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 3 Aug 2017 14:24:05 +0200 Subject: [PATCH 128/151] Added parameters to easily identify events for EventDisplay --- TopAnalysis/src/FourTopsAnalyzer.cc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index e447f69c5c5..a1cf8a9d25f 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -67,6 +67,8 @@ void RunFourTopsAnalyzer(TString filename, Float_t n_ele_m; Float_t event_weight; + Float_t bdt_discrim, nn_discrim; + UInt_t run, event, lumi; tmvaReader->AddVariable("jet_1_highest_csv", &jet_1_highest_csv); tmvaReader->AddVariable("jet_2_highest_csv", &jet_2_highest_csv); @@ -120,6 +122,13 @@ void RunFourTopsAnalyzer(TString filename, outTree.Branch("n_ele_p",&n_ele_p,"n_ele_p/F"); outTree.Branch("n_ele_m",&n_ele_m,"n_ele_m/F"); + outTree.Branch("bdt_discrim",&bdt_discrim,"bdt_discrim/F"); + outTree.Branch("nn_discrim",&nn_discrim,"nn_discrim/F"); + + outTree.Branch("run",&run,"run/i"); + outTree.Branch("event",&event,"event/i"); + outTree.Branch("lumi",&lumi,"lumi/i"); + //PREPARE OUTPUT TString baseName=gSystem->BaseName(outname); TString dirName=gSystem->DirName(outname); From 356da9286eff9213afd213710dd56feb42291e21 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 4 Aug 2017 10:37:12 +0200 Subject: [PATCH 129/151] Fixed bug --- TopAnalysis/src/FourTopsAnalyzer.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index a1cf8a9d25f..1a43a425112 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -186,6 +186,10 @@ void RunFourTopsAnalyzer(TString filename, //assign randomly a run period TString period = assignRunPeriod(runPeriods,random); + + run = ev.run; + event = ev.event; + lumi = ev.lumi; ////////////////// // CORRECTIONS // From 0efb0d26f75a60dc8b968a7f23a05c25248c620b Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 4 Aug 2017 11:32:33 +0200 Subject: [PATCH 130/151] Changed from CMS preliminary to CMS Work in progress --- TopAnalysis/python/Plot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/python/Plot.py b/TopAnalysis/python/Plot.py index 604b63fc760..7a747d4ba5d 100644 --- a/TopAnalysis/python/Plot.py +++ b/TopAnalysis/python/Plot.py @@ -34,7 +34,7 @@ class Plot(object): def __init__(self,name,com='13 TeV'): self.name = name - self.cmsLabel='#bf{CMS} #it{preliminary}' + self.cmsLabel='#bf{CMS} #it{Work in progress}' self.com=com self.wideCanvas = True if 'ratevsrun' in self.name else False self.doPoissonErrorBars=True From deab7e61f8430a5861dfd35570505d665bbf7893 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 4 Aug 2017 11:56:58 +0200 Subject: [PATCH 131/151] Added luminosity info for TOP-16-016 --- TopAnalysis/test/summer2017/plotXSect.cpp | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index c707011c74a..8657636be2d 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -61,7 +61,7 @@ void plotXSect() limitObs[s] = limitObsCache; tree->GetEntry(5); limitObsError[s] = limitErrVal; - limitYPointCoord[s] = (5-s) + 0.5; + limitYPointCoord[s] = (4.5-s) + 0.5; limitYPointCoordErr[s] = 0.5; printf("limit2sigdown = %lf\n",limit2sigdown); @@ -72,10 +72,10 @@ void plotXSect() printf("limitObs = %lf\n",limitObs[s]); canvas->cd(); - box2sig = new TBox(limit2sigdown, (4-s), limit2sigup, (4-s)+1); + box2sig = new TBox(limit2sigdown, (4.5-s), limit2sigup, (4.5-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); - box1sig = new TBox(limit1sigdown, (4-s), limit1sigup, (4-s)+1); + box1sig = new TBox(limit1sigdown, (4.5-s), limit1sigup, (4.5-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); @@ -89,7 +89,7 @@ void plotXSect() //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); //marker->Draw(); - tex->DrawLatex(70, (4-s) + 0.5, fileName[s].c_str()); + tex->DrawLatex(70, (4.5-s) + 0.35, fileName[s].c_str()); } for (int s = 2; s < 5; s++) @@ -134,9 +134,12 @@ void plotXSect() //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); //marker->Draw(); - tex->DrawLatex(70, (4-s) + 0.5, fileName[s].c_str()); + tex->DrawLatex(70, (4-s) + 0.35, fileName[s].c_str()); } + TLine *lineSep = new TLine(0, 3.5, 100, 3.5); + lineSep->Draw(); + TLine *lineSM = new TLine(1, -0.15, 1, 7); lineSM->SetLineColor(kRed); lineSM->SetLineWidth((Width_t)5); @@ -152,7 +155,8 @@ void plotXSect() obsPoints->Draw("SAME P"); tex->DrawLatex(0,7.1,"#bf{CMS} #it{Work in progress}"); - tex->DrawLatex(80,7.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); + tex->DrawLatex(70,7.1,"#scale[0.8]{35.9 fb^{-1} /; (13 TeV)}"); + tex->DrawLatex(70,3.15,"#scale[0.8]{2.6 fb^{-1} /; (13 TeV)}"); tex->DrawLatex(2,6.6,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); auto hist1sigDummy = new TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); @@ -162,7 +166,7 @@ void plotXSect() hist2sigDummy->SetFillColor(17); hist2sigDummy->SetLineColor(0); - TLegend *legend = new TLegend(0.65,0.7,0.85,0.85); + TLegend *legend = new TLegend(0.65,0.75,0.85,0.88); legend->SetLineColor(0); legend->SetHeader("limits on #sigma_{tttt}"); legend->AddEntry(obsPoints,"observed","lep"); From aec36de572afa87d20345ade328c7e0031856a94 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 4 Aug 2017 12:17:32 +0200 Subject: [PATCH 132/151] Fixed bug --- TopAnalysis/src/FourTopsAnalyzer.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index 1a43a425112..e8872a6485b 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -385,10 +385,10 @@ void RunFourTopsAnalyzer(TString filename, event_weight = plotwgts[0]; - float bdt = tmvaReader->EvaluateMVA("BDT"); - ht.fill("bdt", bdt, plotwgts); - float mlp_ann = tmvaReader->EvaluateMVA("MLP_ANN"); - ht.fill("mlp_ann", mlp_ann, plotwgts); + bdt_discrim = tmvaReader->EvaluateMVA("BDT"); + ht.fill("bdt", bdt_discrim, plotwgts); + nn_discrim = tmvaReader->EvaluateMVA("MLP_ANN"); + ht.fill("mlp_ann", nn_discrim, plotwgts); outTree.Fill(); } From ff786af54cc32a0b52ce6e8114f7e7c4a461361c Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 4 Aug 2017 12:18:10 +0200 Subject: [PATCH 133/151] Fixed cosmetic changes --- TopAnalysis/test/summer2017/plotXSect.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 8657636be2d..d7d70fc6b2f 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -155,8 +155,8 @@ void plotXSect() obsPoints->Draw("SAME P"); tex->DrawLatex(0,7.1,"#bf{CMS} #it{Work in progress}"); - tex->DrawLatex(70,7.1,"#scale[0.8]{35.9 fb^{-1} /; (13 TeV)}"); - tex->DrawLatex(70,3.15,"#scale[0.8]{2.6 fb^{-1} /; (13 TeV)}"); + tex->DrawLatex(70,7.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); + tex->DrawLatex(70,3.15,"#scale[0.8]{2.6 fb^{-1} (13 TeV)}"); tex->DrawLatex(2,6.6,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); auto hist1sigDummy = new TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); From f185b6a3bacdd2a1d707a6b39db15491169e5ac0 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 4 Aug 2017 12:45:00 +0200 Subject: [PATCH 134/151] Added json for plotting purposes --- .../samples-fourtops-nominal.plot.json | 188 ++++++++++++++++++ 1 file changed, 188 insertions(+) create mode 100644 TopAnalysis/data/era2016/samples-fourtops-nominal.plot.json diff --git a/TopAnalysis/data/era2016/samples-fourtops-nominal.plot.json b/TopAnalysis/data/era2016/samples-fourtops-nominal.plot.json new file mode 100644 index 00000000000..8ac057b6bae --- /dev/null +++ b/TopAnalysis/data/era2016/samples-fourtops-nominal.plot.json @@ -0,0 +1,188 @@ +{ + "MC13TeV_TTTT": [ + 0.92, + 0, + "/TTTT_TuneCUETP8M2T4_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}t#bar{t} x 100", + "#0037AD", + true, + false, + 1 + ], + "MC13TeV_TTJets": [832, + 0, + "/TT_TuneCUETP8M2T4_13TeV-powheg-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}", + "#F0C600", + true, + false, + 1 + ], + "MC13TeV_SingleTbar_tW": [35.85, + 0, + "/ST_tW_antitop_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#FA410C", + false, + false, + 1 + ], + "MC13TeV_SingleT_tW": [35.85, + 0, + "/ST_tW_top_5f_inclusiveDecays_13TeV-powheg-pythia8_TuneCUETP8M2T4/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#FA410C", + false, + false, + 1 + ], + "MC13TeV_SingleTbar_t": [80.95, + 0, + "/ST_t-channel_antitop_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#FA410C", + false, + false, + 1 + ], + "MC13TeV_SingleT_t": [136.02, + 0, + "/ST_t-channel_top_4f_inclusiveDecays_TuneCUETP8M2T4_13TeV-powhegV2-madspin/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Single top", + "#FA410C", + false, + false, + 1 + ], + "MC13TeV_W0Jets": [49540, 0, "/WToLNu_0J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_W1Jets": [8041, 0, "/WToLNu_1J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_backup_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_W2Jets": [3052, 0, "/WToLNu_2J_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "W", "#8E00E3", false, false, 1], + "MC13TeV_DY50toInf_mlm": [6025.0, 0, "/DYJetsToLL_M-50_TuneCUETP8M1_13TeV-madgraphMLM-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v2/MINIAODSIM", "DY", "#0CAFFA", false, false, 1], + "MC13TeV_DY10to50": [18610.0, 0, "/DYJetsToLL_M-10to50_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "DY", "#0CAFFA", false, false, 1], + "MC13TeV_ZZTo2L2Nu": [0.564, + 0, + "/ZZTo2L2Nu_13TeV_powheg_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_ZZTo2L2Q": [3.22, + 0, + "/ZZTo2L2Q_13TeV_amcatnloFXFX_madspin_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_WWToLNuQQ": [49.997, + 0, + "/WWToLNuQQ_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_WWTo2L2Nu": [12.178, + 0, + "/WWTo2L2Nu_13TeV-powheg/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_WZTo3LNu": [5.26, + 0, + "/WZTo3LNu_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "Multiboson", + "#0DF000", + false, + false, + 1 + ], + "MC13TeV_TTZToQQ": [0.5297, + 0, + "/TTZToQQ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", + "t#bar{t}+V", + "#F600FA", + false, + false, + 1 + ], + "MC13TeV_TTZToLLNuNu": [0.2529, + 0, + "/TTZToLLNuNu_M-10_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", + "t#bar{t}+V", + "#F600FA", + false, + false, + 1 + ], + + "MC13TeV_tZq": [1.256, 0, "/tZq_ll_4f_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6_ext1-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_ZZ4L": [1.256, 0, "/ZZTo4L_13TeV_powheg_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_GGHZZ4L": [0.01181, 0, "/GluGluHToZZTo4L_M125_13TeV_powheg2_JHUgenV6_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_VHtoNonbb": [0.9561, 0, "/VHToNonbb_M125_13TeV_amcatnloFXFX_madspin_pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WWW": [0.2086, 0, "/WWW_4F_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WWZ": [0.1651, 0, "/WWZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_WZZ": [0.05565, 0, "/WZZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_ZZZ": [0.01398, 0, "/ZZZ_TuneCUETP8M1_13TeV-amcatnlo-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v1/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWW": [0.01150, 0, "/TTWW_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v3/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTTW": [0.000788, 0, "/TTTW_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWZ": [0.003884, 0, "/TTWZ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTZZ": [0.001982, 0, "/TTZZ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTWH": [0.001582, 0, "/TTWH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v3/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTZH": [0.001535, 0, "/TTZH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTHH": [0.000757, 0, "/TTHH_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + "MC13TeV_TTTJ": [0.000474, 0, "/TTTJ_TuneCUETP8M2T4_13TeV-madgraph-pythia8/RunIISummer16MiniAODv2-PUMoriond17_80X_mcRun2_asymptotic_2016_TrancheIV_v6-v2/MINIAODSIM", "Rares", "#000000", false, false, 1], + + "Data13TeV_SingleMuon_2016B": [1.0, 1, "/SingleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016C": [1.0, 1, "/SingleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016D": [1.0, 1, "/SingleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016E": [1.0, 1, "/SingleMuon/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016F": [1.0, 1, "/SingleMuon/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016G": [1.0, 1, "/SingleMuon/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016Hv2": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleMuon_2016Hv3": [1.0, 1, "/SingleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_SingleElectron_2016B": [1.0, 1, "/SingleElectron/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016C": [1.0, 1, "/SingleElectron/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016D": [1.0, 1, "/SingleElectron/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016E": [1.0, 1, "/SingleElectron/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016F": [1.0, 1, "/SingleElectron/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016G": [1.0, 1, "/SingleElectron/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016Hv2": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_SingleElectron_2016Hv3": [1.0, 1, "/SingleElectron/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_MuonEG_2016B": [1.0, 1, "/MuonEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016C": [1.0, 1, "/MuonEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016D": [1.0, 1, "/MuonEG/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016E": [1.0, 1, "/MuonEG/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016F": [1.0, 1, "/MuonEG/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016G": [1.0, 1, "/MuonEG/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016Hv2": [1.0, 1, "/MuonEG/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_MuonEG_2016Hv3": [1.0, 1, "/MuonEG/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_DoubleEG_2016B": [1.0, 1, "/DoubleEG/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016C": [1.0, 1, "/DoubleEG/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016D": [1.0, 1, "/DoubleEG/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016E": [1.0, 1, "/DoubleEG/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016F": [1.0, 1, "/DoubleEG/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016G": [1.0, 1, "/DoubleEG/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016Hv2": [1.0, 1, "/DoubleEG/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleEG_2016Hv3": [1.0, 1, "/DoubleEG/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1], + + "Data13TeV_DoubleMuon_2016B": [1.0, 1, "/DoubleMuon/Run2016B-03Feb2017_ver2-v2/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016C": [1.0, 1, "/DoubleMuon/Run2016C-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016D": [1.0, 1, "/DoubleMuon/Run2016D-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016E": [1.0, 1, "/DoubleMuon/Run2016E-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016F": [1.0, 1, "/DoubleMuon/Run2016F-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016G": [1.0, 1, "/DoubleMuon/Run2016G-03Feb2017-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016Hv2": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver2-v1/MINIAOD", "Data", 1, false, false, 1], + "Data13TeV_DoubleMuon_2016Hv3": [1.0, 1, "/DoubleMuon/Run2016H-03Feb2017_ver3-v1/MINIAOD", "Data", 1, false, false, 1] + +} \ No newline at end of file From b422b40842fca486cb06b75333edc9e77674d9fc Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Fri, 4 Aug 2017 13:02:51 +0200 Subject: [PATCH 135/151] Added some informative comments --- TopAnalysis/test/summer2017/plotXSect.cpp | 39 +++++++++++------------ 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index d7d70fc6b2f..ef28a826fdf 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -9,6 +9,8 @@ void plotXSect() fileIndex[1] = new TFile("datacard_4tops/fourtops_bdt_Asymptotic.root"); //TFile *file = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); TTree *tree; + + // Dataset name here string fileName[] = {"#splitline{#bf{Four lepton NN}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Four lepton BDT}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Dilepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Single lepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Combined}}{#scale[0.7]{TOP-16-016}}"}; TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); @@ -33,6 +35,7 @@ void plotXSect() double limitYPointCoord[numberOfDatasets], limitYPointCoordErr[numberOfDatasets]; + // Hardcoding values for plots limitObs[2] = 16.1; limitObs[3] = 14.9; limitObs[4] = 10.2; @@ -46,6 +49,7 @@ void plotXSect() limitYPointCoordErr[y] = 0.5; } + // Read data from file to plot for (int s = 0; s < 2; s++) { tree = (TTree*) fileIndex[s]->Get("limit"); @@ -64,34 +68,30 @@ void plotXSect() limitYPointCoord[s] = (4.5-s) + 0.5; limitYPointCoordErr[s] = 0.5; + /* printf("limit2sigdown = %lf\n",limit2sigdown); printf("limit2sigup = %lf\n",limit2sigup); printf("limit1sigdown = %lf\n",limit1sigdown); printf("limit1sigup = %lf\n",limit1sigup); printf("limit0 = %lf\n",limit0); printf("limitObs = %lf\n",limitObs[s]); + */ + // Draw 2-sig box first ... canvas->cd(); box2sig = new TBox(limit2sigdown, (4.5-s), limit2sigup, (4.5-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); + // ... and 1-sig box on top of it. box1sig = new TBox(limit1sigdown, (4.5-s), limit1sigup, (4.5-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); - //lineexp = new TLine(limit0, s, limit0, s+1); - //lineexp->Draw(); - //lineexp->SetLineWidth((Width_t)2); - //lineobs = new TLine(limitObs, s, limitObs, s+1); - //lineobs->SetLineWidth((Width_t)2); - //lineobs->Draw(); - - //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); - //marker->Draw(); - + // Dataset name tex->DrawLatex(70, (4.5-s) + 0.35, fileName[s].c_str()); } + // Hardcode the values for plotting. You can also use arrays to do the job, but I'm too lazy here. for (int s = 2; s < 5; s++) { switch (s) @@ -116,35 +116,31 @@ void plotXSect() break; } + // Again, 2-sig box canvas->cd(); box2sig = new TBox(limit2sigdown, 4-s, limit2sigup, (4-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); + // 1-sig box box1sig = new TBox(limit1sigdown, 4-s, limit1sigup, (4-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); - //lineexp = new TLine(limit0, s, limit0, s+1); - //lineexp->Draw(); - //lineexp->SetLineWidth((Width_t)2); - //lineobs = new TLine(limitObs, s, limitObs, s+1); - //lineobs->SetLineWidth((Width_t)2); - //lineobs->Draw(); - - //TMarker *marker = new TMarker(limitObs, s + 0.5, 21); - //marker->Draw(); - + // Dataset name tex->DrawLatex(70, (4-s) + 0.35, fileName[s].c_str()); } + // Separate between our analysis and TOP-16-016 TLine *lineSep = new TLine(0, 3.5, 100, 3.5); lineSep->Draw(); + // Line indicating where SM is TLine *lineSM = new TLine(1, -0.15, 1, 7); lineSM->SetLineColor(kRed); lineSM->SetLineWidth((Width_t)5); lineSM->Draw(); + // Put in graphs TGraphErrors *obsPoints = new TGraphErrors(numberOfDatasets, limitObs, limitYPointCoord, limitObsError, limitYPointCoordErr); obsPoints->SetLineColor(1); obsPoints->SetLineWidth(2); @@ -154,11 +150,13 @@ void plotXSect() obsPoints->SetMarkerColor(1); obsPoints->Draw("SAME P"); + // A couple of texts tex->DrawLatex(0,7.1,"#bf{CMS} #it{Work in progress}"); tex->DrawLatex(70,7.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); tex->DrawLatex(70,3.15,"#scale[0.8]{2.6 fb^{-1} (13 TeV)}"); tex->DrawLatex(2,6.6,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); + // Dummy TH1F objects for TLegend auto hist1sigDummy = new TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); auto hist2sigDummy = new TH1F("hist2sigDummy","expected #pm 2 #sigma",1,0,1); hist1sigDummy->SetFillColor(15); @@ -166,6 +164,7 @@ void plotXSect() hist2sigDummy->SetFillColor(17); hist2sigDummy->SetLineColor(0); + // Legend TLegend *legend = new TLegend(0.65,0.75,0.85,0.88); legend->SetLineColor(0); legend->SetHeader("limits on #sigma_{tttt}"); From e316533533db454cc0ddae1d62aa6a6f832b1653 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Sat, 5 Aug 2017 20:04:47 +0200 Subject: [PATCH 136/151] Added script to summarise event parameters --- .../test/summer2017/FourTops/printallvars.cpp | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 TopAnalysis/test/summer2017/FourTops/printallvars.cpp diff --git a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp new file mode 100644 index 00000000000..987ec46e2da --- /dev/null +++ b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp @@ -0,0 +1,70 @@ +#include +#include +#include + +#include "TString.h" + +void printallvars(const char *filename) +{ + if (!filename) + { + printf("No file specified. Exiting.\n"); + } + TFile *file = new TFile(filename); + TTree *tree = (TTree*) file->Get("TMVAanalysis"); + + Float_t n_leptons, n_jets, n_bjets, n_non_bjets; + Float_t jet_csv_1, jet_csv_2, jet_csv_3, jet_csv_4; + Float_t n_mu_p, n_mu_m, n_ele_p, n_ele_m; + Float_t angle_jets, angle_bjets; + + Float_t bdt, nn; + + tree->SetBranchAddress("n_leptons",&n_leptons); + tree->SetBranchAddress("n_jets",&n_jets); + tree->SetBranchAddress("n_bjets",&n_bjets); + tree->SetBranchAddress("n_non_bjets",&n_non_bjets); + + tree->SetBranchAddress("jet_1_highest_csv",&jet_csv_1); + tree->SetBranchAddress("jet_2_highest_csv",&jet_csv_2); + tree->SetBranchAddress("jet_3_highest_csv",&jet_csv_3); + tree->SetBranchAddress("jet_4_highest_csv",&jet_csv_4); + + tree->SetBranchAddress("n_mu_p",&n_mu_p); + tree->SetBranchAddress("n_mu_m",&n_mu_m); + tree->SetBranchAddress("n_ele_p",&n_ele_p); + tree->SetBranchAddress("n_ele_m",&n_ele_m); + + tree->SetBranchAddress("jet_smallest_angle",&angle_jets); + tree->SetBranchAddress("jet_smallest_angle_2b",&angle_bjets); + + tree->SetBranchAddress("bdt_discrim",&bdt); + tree->SetBranchAddress("nn_discrim",&nn); + + FILE *out; + out = fopen((string("out_")+string(filename)+string(".txt")).c_str(),"w"); + + for (int i=0;iGetEntries();i++) + { + tree->GetEntry(i); + fprintf(out, "%f\t", bdt); + fprintf(out, "%f\t", nn); + fprintf(out, "%f\t", n_leptons); + fprintf(out, "%f\t", n_jets); + fprintf(out, "%f\t", n_bjets); + fprintf(out, "%f\t", n_non_bjets); + fprintf(out, "%f\t", jet_csv_1); + fprintf(out, "%f\t", jet_csv_2); + fprintf(out, "%f\t", jet_csv_3); + fprintf(out, "%f\t", jet_csv_4); + fprintf(out, "%f\t", n_mu_p); + fprintf(out, "%f\t", n_mu_m); + fprintf(out, "%f\t", n_ele_p); + fprintf(out, "%f\t", n_ele_m); + fprintf(out, "%f\t", angle_jets); + fprintf(out, "%f\t", angle_bjets); + fprintf(out, "\n"); + } + + fclose(out); +} \ No newline at end of file From e297dc6c776e04c2ced18248db861694e3f32b99 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Sat, 5 Aug 2017 20:06:13 +0200 Subject: [PATCH 137/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/printallvars.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp index 987ec46e2da..ce6263baa70 100644 --- a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp +++ b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp @@ -13,7 +13,7 @@ void printallvars(const char *filename) TFile *file = new TFile(filename); TTree *tree = (TTree*) file->Get("TMVAanalysis"); - Float_t n_leptons, n_jets, n_bjets, n_non_bjets; + Float_t n_leptons, n_jets, n_bjets; Float_t jet_csv_1, jet_csv_2, jet_csv_3, jet_csv_4; Float_t n_mu_p, n_mu_m, n_ele_p, n_ele_m; Float_t angle_jets, angle_bjets; @@ -23,7 +23,6 @@ void printallvars(const char *filename) tree->SetBranchAddress("n_leptons",&n_leptons); tree->SetBranchAddress("n_jets",&n_jets); tree->SetBranchAddress("n_bjets",&n_bjets); - tree->SetBranchAddress("n_non_bjets",&n_non_bjets); tree->SetBranchAddress("jet_1_highest_csv",&jet_csv_1); tree->SetBranchAddress("jet_2_highest_csv",&jet_csv_2); @@ -52,7 +51,6 @@ void printallvars(const char *filename) fprintf(out, "%f\t", n_leptons); fprintf(out, "%f\t", n_jets); fprintf(out, "%f\t", n_bjets); - fprintf(out, "%f\t", n_non_bjets); fprintf(out, "%f\t", jet_csv_1); fprintf(out, "%f\t", jet_csv_2); fprintf(out, "%f\t", jet_csv_3); From c812e5861ba4fe4a08beb679c185ee8b52ad2d20 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Sat, 5 Aug 2017 20:16:34 +0200 Subject: [PATCH 138/151] Added run, event, lumi --- TopAnalysis/test/summer2017/FourTops/printallvars.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp index ce6263baa70..54d6ce6f3ef 100644 --- a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp +++ b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp @@ -20,6 +20,8 @@ void printallvars(const char *filename) Float_t bdt, nn; + Float_t run, event, lumi; + tree->SetBranchAddress("n_leptons",&n_leptons); tree->SetBranchAddress("n_jets",&n_jets); tree->SetBranchAddress("n_bjets",&n_bjets); @@ -40,6 +42,10 @@ void printallvars(const char *filename) tree->SetBranchAddress("bdt_discrim",&bdt); tree->SetBranchAddress("nn_discrim",&nn); + tree->SetBranchAddress("run",&run); + tree->SetBranchAddress("event",&event); + tree->SetBranchAddress("lumi",&lumi); + FILE *out; out = fopen((string("out_")+string(filename)+string(".txt")).c_str(),"w"); @@ -61,6 +67,9 @@ void printallvars(const char *filename) fprintf(out, "%f\t", n_ele_m); fprintf(out, "%f\t", angle_jets); fprintf(out, "%f\t", angle_bjets); + fprintf(out, "%f\t", run); + fprintf(out, "%f\t", event); + fprintf(out, "%f\t", lumi); fprintf(out, "\n"); } From 1337a2e1341f176409815d5e045b180b428d8a56 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Sat, 5 Aug 2017 20:18:17 +0200 Subject: [PATCH 139/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/printallvars.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp index 54d6ce6f3ef..aee643c8fc5 100644 --- a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp +++ b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp @@ -20,7 +20,7 @@ void printallvars(const char *filename) Float_t bdt, nn; - Float_t run, event, lumi; + UInt_t run, event, lumi; tree->SetBranchAddress("n_leptons",&n_leptons); tree->SetBranchAddress("n_jets",&n_jets); @@ -67,9 +67,9 @@ void printallvars(const char *filename) fprintf(out, "%f\t", n_ele_m); fprintf(out, "%f\t", angle_jets); fprintf(out, "%f\t", angle_bjets); - fprintf(out, "%f\t", run); - fprintf(out, "%f\t", event); - fprintf(out, "%f\t", lumi); + fprintf(out, "%d\t", run); + fprintf(out, "%d\t", event); + fprintf(out, "%d\t", lumi); fprintf(out, "\n"); } From 9d8296b4869c686aacc3e85d4e81d2d7bd62b249 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 8 Aug 2017 12:59:10 +0200 Subject: [PATCH 140/151] Added jet H_T histogram --- TopAnalysis/src/FourTopsAnalyzer.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/TopAnalysis/src/FourTopsAnalyzer.cc b/TopAnalysis/src/FourTopsAnalyzer.cc index e8872a6485b..a7bd35492a3 100644 --- a/TopAnalysis/src/FourTopsAnalyzer.cc +++ b/TopAnalysis/src/FourTopsAnalyzer.cc @@ -167,6 +167,7 @@ void RunFourTopsAnalyzer(TString filename, ht.addHist("njets", new TH1F("njets",";Jet multiplicity;Events",15,-0.5,14.5)); ht.addHist("nbjets", new TH1F("nbjets",";b jet multiplicity;Events",10,-0.5,9.5)); ht.addHist("nleptons", new TH1F("nleptons",";Lepton multiplicity;Events",6,-0.5,5.5)); + ht.addHist("jet_ht", new TH1F("ht",";Jet H_{T};Events",24,0.,1200.)); ht.addHist("bdt", new TH1F("bdt",";BDT;Events",50,-1,1)); ht.addHist("mlp_ann", new TH1F("mlp_ann",";MLP_ANN; Events",50,0.,1.)); @@ -373,6 +374,8 @@ void RunFourTopsAnalyzer(TString filename, jet_ht = 0.; for (size_t i=0;i Date: Tue, 8 Aug 2017 15:07:37 +0200 Subject: [PATCH 141/151] Added expected points --- TopAnalysis/test/summer2017/plotXSect.cpp | 48 +++++++++++++++-------- 1 file changed, 31 insertions(+), 17 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index ef28a826fdf..59f0c452c44 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -29,19 +29,23 @@ void plotXSect() TBox *box1sig, *box2sig; TLine *lineexp, *lineobs; double limitVal, limitErrVal; - double limit2sigdown, limit1sigdown, limit0, limit1sigup, limit2sigup; + double limit2sigdown, limit1sigdown, limit0Cache, limit1sigup, limit2sigup; double limitObs[numberOfDatasets], limitObsError[numberOfDatasets], limitObsCache; - double *limitAddr[] = {&limit2sigdown, &limit1sigdown, &limit0, &limit1sigup, &limit2sigup, &limitObsCache}; + double limit0[numberOfDatasets]; + double *limitAddr[] = {&limit2sigdown, &limit1sigdown, &limit0Cache, &limit1sigup, &limit2sigup, &limitObsCache}; double limitYPointCoord[numberOfDatasets], limitYPointCoordErr[numberOfDatasets]; // Hardcoding values for plots - limitObs[2] = 16.1; - limitObs[3] = 14.9; - limitObs[4] = 10.2; + limitObs[2] = 14.5; // Dilepton + limitObs[3] = 17.2; // Single lepton + limitObs[4] = 10.2; // Combined limitObsError[2] = 0.; limitObsError[3] = 0.; limitObsError[4] = 0.; + limit0[2] = 24.7; + limit0[3] = 16.4; + limit0[4] = 12.8; for (int y = 2; y < 5; y++) { @@ -62,6 +66,7 @@ void plotXSect() //printf("limitVal = %lf\n",limitVal); } + limit0[s] = limit0Cache; limitObs[s] = limitObsCache; tree->GetEntry(5); limitObsError[s] = limitErrVal; @@ -97,22 +102,22 @@ void plotXSect() switch (s) { case 2: // Dilepton - limit2sigdown = 9.4; - limit1sigdown = 13.9; - limit1sigup = 38.5; - limit2sigup = 64.0; + limit2sigdown = ; + limit1sigdown = 15.5; + limit1sigup = 41.4; + limit2sigup = ; break; case 3: // Single lepton - limit2sigdown = 5.9; - limit1sigdown = 8.3; - limit1sigup = 20.5; - limit2sigup = 32.8; + limit2sigdown = ; + limit1sigdown = 10.7; + limit1sigup = 26.2; + limit2sigup = ; break; case 4: // Combined - limit2sigdown = 5.0; - limit1sigdown = 7.0; - limit1sigup = 17.5; - limit2sigup = 28.3; + limit2sigdown = ; + limit1sigdown = 8.3; + limit1sigup = 21.1; + limit2sigup = ; break; } @@ -149,6 +154,15 @@ void plotXSect() obsPoints->SetMarkerSize(1.6); obsPoints->SetMarkerColor(1); obsPoints->Draw("SAME P"); + TGraphErrors *expPoints = new TGraphErrors(numberOfDatasets, limit0, limitYPointCoord, limitObsError, limitYPointCoordErr); + expPoints->SetLineColor(1); + expPoints->SetLineWidth(1); + expPoints->SetLineStyle(9); + expPoints->SetMarkerColor(1); + expPoints->SetMarkerStyle(0); + expPoints->SetMarkerSize(1.6); + expPoints->SetMarkerColor(1); + expPoints->Draw("SAME P"); // A couple of texts tex->DrawLatex(0,7.1,"#bf{CMS} #it{Work in progress}"); From d751594a1304e994cee3195c4cb6c2d83ccc81e8 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 8 Aug 2017 15:13:31 +0200 Subject: [PATCH 142/151] Fixed expected lines --- TopAnalysis/test/summer2017/plotXSect.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 59f0c452c44..e9bd65b40b1 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -157,7 +157,7 @@ void plotXSect() TGraphErrors *expPoints = new TGraphErrors(numberOfDatasets, limit0, limitYPointCoord, limitObsError, limitYPointCoordErr); expPoints->SetLineColor(1); expPoints->SetLineWidth(1); - expPoints->SetLineStyle(9); + expPoints->SetLineStyle(7); expPoints->SetMarkerColor(1); expPoints->SetMarkerStyle(0); expPoints->SetMarkerSize(1.6); @@ -183,6 +183,7 @@ void plotXSect() legend->SetLineColor(0); legend->SetHeader("limits on #sigma_{tttt}"); legend->AddEntry(obsPoints,"observed","lep"); + legend->AddEntry(expPoints,"expected","l"); legend->AddEntry(hist1sigDummy,"expected #pm 1 #sigma","f"); legend->AddEntry(hist2sigDummy,"expected #pm 2 #sigma","f"); legend->Draw(); From 4a6fd7363a4d648c13d5c2320e605c78cdd42303 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 8 Aug 2017 15:32:45 +0200 Subject: [PATCH 143/151] Updated 2 sigma limits of TOP-16-016 --- TopAnalysis/test/summer2017/plotXSect.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index e9bd65b40b1..982e93c9e14 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -102,22 +102,22 @@ void plotXSect() switch (s) { case 2: // Dilepton - limit2sigdown = ; + limit2sigdown = 7.6; limit1sigdown = 15.5; limit1sigup = 41.4; - limit2sigup = ; + limit2sigup = 42.8; break; case 3: // Single lepton - limit2sigdown = ; + limit2sigdown = 10.7; limit1sigdown = 10.7; limit1sigup = 26.2; - limit2sigup = ; + limit2sigup = 68.5; break; case 4: // Combined - limit2sigdown = ; + limit2sigdown = 3.7; limit1sigdown = 8.3; limit1sigup = 21.1; - limit2sigup = ; + limit2sigup = 17.4; break; } From 98c3ed6d1720cf018bcdec3c10bade5d0b89f887 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Tue, 8 Aug 2017 15:48:28 +0200 Subject: [PATCH 144/151] Fixed 2 sigma limits --- TopAnalysis/test/summer2017/plotXSect.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 982e93c9e14..15440231550 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -102,16 +102,16 @@ void plotXSect() switch (s) { case 2: // Dilepton - limit2sigdown = 7.6; + limit2sigdown = 10.7; limit1sigdown = 15.5; limit1sigup = 41.4; - limit2sigup = 42.8; + limit2sigup = 68.5; break; case 3: // Single lepton - limit2sigdown = 10.7; + limit2sigdown = 7.6; limit1sigdown = 10.7; limit1sigup = 26.2; - limit2sigup = 68.5; + limit2sigup = 42.8; break; case 4: // Combined limit2sigdown = 3.7; From b4bd0668ec4f2d9ad9909b0d7c56ca98a8dbf1c2 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 9 Aug 2017 14:14:42 +0200 Subject: [PATCH 145/151] Added file name column --- TopAnalysis/test/summer2017/FourTops/printallvars.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp index aee643c8fc5..fdc793d4e72 100644 --- a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp +++ b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp @@ -70,6 +70,7 @@ void printallvars(const char *filename) fprintf(out, "%d\t", run); fprintf(out, "%d\t", event); fprintf(out, "%d\t", lumi); + fpritnf(out, "%s\t", filename); fprintf(out, "\n"); } From f4ef47ba57bd50ba176dcc0c6d6a80ffd68c7c74 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 9 Aug 2017 14:26:59 +0200 Subject: [PATCH 146/151] Fixed run, event, lumi --- TopAnalysis/test/summer2017/FourTops/printallvars.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp index aee643c8fc5..3cbc3a0e19e 100644 --- a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp +++ b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp @@ -67,11 +67,11 @@ void printallvars(const char *filename) fprintf(out, "%f\t", n_ele_m); fprintf(out, "%f\t", angle_jets); fprintf(out, "%f\t", angle_bjets); - fprintf(out, "%d\t", run); - fprintf(out, "%d\t", event); - fprintf(out, "%d\t", lumi); + fprintf(out, "%u\t", run); + fprintf(out, "%u\t", event); + fprintf(out, "%u\t", lumi); fprintf(out, "\n"); } fclose(out); -} \ No newline at end of file +} From 4ea72b689082b1f155c6aec2ca6ce508eb16787e Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 9 Aug 2017 14:45:26 +0200 Subject: [PATCH 147/151] Fixed typo --- TopAnalysis/test/summer2017/FourTops/printallvars.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp index 64cbdc47f30..c51b439c485 100644 --- a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp +++ b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp @@ -70,7 +70,7 @@ void printallvars(const char *filename) fprintf(out, "%u\t", run); fprintf(out, "%u\t", event); fprintf(out, "%u\t", lumi); - fpritnf(out, "%s\t", filename); + fprintf(out, "%u\t", filename); fprintf(out, "\n"); } From 2c68247b1ae742fa44ad4beb838c9b8b30ba1707 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Wed, 9 Aug 2017 15:01:37 +0200 Subject: [PATCH 148/151] Fixed bug --- TopAnalysis/test/summer2017/FourTops/printallvars.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp index c51b439c485..1e966d609cd 100644 --- a/TopAnalysis/test/summer2017/FourTops/printallvars.cpp +++ b/TopAnalysis/test/summer2017/FourTops/printallvars.cpp @@ -70,7 +70,7 @@ void printallvars(const char *filename) fprintf(out, "%u\t", run); fprintf(out, "%u\t", event); fprintf(out, "%u\t", lumi); - fprintf(out, "%u\t", filename); + fprintf(out, "%s\t", filename); fprintf(out, "\n"); } From d9b2b22a6c36d9249b51e4b446920c563337d635 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 10 Aug 2017 17:08:29 +0200 Subject: [PATCH 149/151] Added SS Dilepton in the plot --- TopAnalysis/test/summer2017/plotXSect.cpp | 62 +++++++++++++---------- 1 file changed, 35 insertions(+), 27 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 15440231550..542bb763b92 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -3,7 +3,7 @@ void plotXSect() { - const int numberOfDatasets = 5; + const int numberOfDatasets = 6; TFile *fileIndex[numberOfDatasets]; fileIndex[0] = new TFile("datacard_4tops/fourtops_nn_Asymptotic.root"); fileIndex[1] = new TFile("datacard_4tops/fourtops_bdt_Asymptotic.root"); @@ -11,12 +11,12 @@ void plotXSect() TTree *tree; // Dataset name here - string fileName[] = {"#splitline{#bf{Four lepton NN}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Four lepton BDT}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Dilepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Single lepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Combined}}{#scale[0.7]{TOP-16-016}}"}; + string fileName[] = {"#splitline{#bf{Four lepton NN}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Four lepton BDT}}{#scale[0.7]{This analysis}}", "#splitline{#bf{SS Dilepton}}{#scale[0.7]{EPJC 76 (2016) 439}}", "#splitline{#bf{OS Dilepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Single lepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Combined}}{#scale[0.7]{TOP-16-016}}"}; TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); canvas->Draw(); canvas->cd(); - TH1F *histFrame = gPad->DrawFrame(0,-0.15,100,7); + TH1F *histFrame = gPad->DrawFrame(0,-0.15,100,8); histFrame->SetXTitle("95% CL Limit on #mu = #sigma_{obs} / #sigma_{SM}"); histFrame->GetYaxis()->SetTickSize(0); histFrame->GetYaxis()->SetLabelSize(0); @@ -37,19 +37,22 @@ void plotXSect() double limitYPointCoord[numberOfDatasets], limitYPointCoordErr[numberOfDatasets]; // Hardcoding values for plots - limitObs[2] = 14.5; // Dilepton - limitObs[3] = 17.2; // Single lepton - limitObs[4] = 10.2; // Combined + limitObs[2] = 12.9; // SS Dilepton + limitObs[3] = 14.5; // OS Dilepton + limitObs[4] = 17.2; // Single lepton + limitObs[5] = 10.2; // Combined limitObsError[2] = 0.; limitObsError[3] = 0.; limitObsError[4] = 0.; - limit0[2] = 24.7; - limit0[3] = 16.4; - limit0[4] = 12.8; + limitObsError[5] = 0.; + limit0[2] = 11.0; + limit0[3] = 24.7; + limit0[4] = 16.4; + limit0[5] = 12.8; - for (int y = 2; y < 5; y++) + for (int y = 2; y < 6; y++) { - limitYPointCoord[y] = 4 - y + 0.5; + limitYPointCoord[y] = 5 - y + 0.5; limitYPointCoordErr[y] = 0.5; } @@ -70,7 +73,7 @@ void plotXSect() limitObs[s] = limitObsCache; tree->GetEntry(5); limitObsError[s] = limitErrVal; - limitYPointCoord[s] = (4.5-s) + 0.5; + limitYPointCoord[s] = (5.5-s) + 0.5; limitYPointCoordErr[s] = 0.5; /* @@ -84,36 +87,41 @@ void plotXSect() // Draw 2-sig box first ... canvas->cd(); - box2sig = new TBox(limit2sigdown, (4.5-s), limit2sigup, (4.5-s)+1); + box2sig = new TBox(limit2sigdown, (5.5-s), limit2sigup, (5.5-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); // ... and 1-sig box on top of it. - box1sig = new TBox(limit1sigdown, (4.5-s), limit1sigup, (4.5-s)+1); + box1sig = new TBox(limit1sigdown, (5.5-s), limit1sigup, (5.5-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); // Dataset name - tex->DrawLatex(70, (4.5-s) + 0.35, fileName[s].c_str()); + tex->DrawLatex(70, (5.5-s) + 0.35, fileName[s].c_str()); } // Hardcode the values for plotting. You can also use arrays to do the job, but I'm too lazy here. - for (int s = 2; s < 5; s++) + for (int s = 2; s < 6; s++) { switch (s) { - case 2: // Dilepton + case 2: // SS Dilepton + limit2sigdown = 0.; + limit1sigdown = 7.2; + limit1sigup = 17.2; + limit2sigup = 0.; + case 3: // OS Dilepton limit2sigdown = 10.7; limit1sigdown = 15.5; limit1sigup = 41.4; limit2sigup = 68.5; break; - case 3: // Single lepton + case 4: // Single lepton limit2sigdown = 7.6; limit1sigdown = 10.7; limit1sigup = 26.2; limit2sigup = 42.8; break; - case 4: // Combined + case 5: // Combined limit2sigdown = 3.7; limit1sigdown = 8.3; limit1sigup = 21.1; @@ -123,16 +131,16 @@ void plotXSect() // Again, 2-sig box canvas->cd(); - box2sig = new TBox(limit2sigdown, 4-s, limit2sigup, (4-s)+1); + box2sig = new TBox(limit2sigdown, 5-s, limit2sigup, (5-s)+1); box2sig->SetFillColor(17); box2sig->Draw(); // 1-sig box - box1sig = new TBox(limit1sigdown, 4-s, limit1sigup, (4-s)+1); + box1sig = new TBox(limit1sigdown, 5-s, limit1sigup, (5-s)+1); box1sig->SetFillColor(15); box1sig->Draw(); // Dataset name - tex->DrawLatex(70, (4-s) + 0.35, fileName[s].c_str()); + tex->DrawLatex(70, (5-s) + 0.35, fileName[s].c_str()); } // Separate between our analysis and TOP-16-016 @@ -140,7 +148,7 @@ void plotXSect() lineSep->Draw(); // Line indicating where SM is - TLine *lineSM = new TLine(1, -0.15, 1, 7); + TLine *lineSM = new TLine(1, -0.15, 1, 8); lineSM->SetLineColor(kRed); lineSM->SetLineWidth((Width_t)5); lineSM->Draw(); @@ -165,10 +173,10 @@ void plotXSect() expPoints->Draw("SAME P"); // A couple of texts - tex->DrawLatex(0,7.1,"#bf{CMS} #it{Work in progress}"); - tex->DrawLatex(70,7.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); - tex->DrawLatex(70,3.15,"#scale[0.8]{2.6 fb^{-1} (13 TeV)}"); - tex->DrawLatex(2,6.6,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); + tex->DrawLatex(0,8.1,"#bf{CMS} #it{Work in progress}"); + tex->DrawLatex(70,8.1,"#scale[0.8]{35.9 fb^{-1} (13 TeV)}"); + tex->DrawLatex(70,4.15,"#scale[0.8]{2.6 fb^{-1} (13 TeV)}"); + tex->DrawLatex(2,7.6,"#scale[0.75]{#color[2]{#bf{SM Here}}}"); // Dummy TH1F objects for TLegend auto hist1sigDummy = new TH1F("hist1sigDummy","expected #pm 1 #sigma",1,0,1); From 89f39f39d6f1edfc93f764e7c9b158352bb58e2f Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 10 Aug 2017 17:37:48 +0200 Subject: [PATCH 150/151] Fixed bugs --- TopAnalysis/test/summer2017/plotXSect.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 542bb763b92..55346807bb5 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -105,10 +105,11 @@ void plotXSect() switch (s) { case 2: // SS Dilepton - limit2sigdown = 0.; + limit2sigdown = 7.2; limit1sigdown = 7.2; limit1sigup = 17.2; - limit2sigup = 0.; + limit2sigup = 17.2; + break; case 3: // OS Dilepton limit2sigdown = 10.7; limit1sigdown = 15.5; @@ -144,7 +145,7 @@ void plotXSect() } // Separate between our analysis and TOP-16-016 - TLine *lineSep = new TLine(0, 3.5, 100, 3.5); + TLine *lineSep = new TLine(0, 4.5, 100, 4.5); lineSep->Draw(); // Line indicating where SM is From 00a9b48edbcec8669efbadbc522b75f76f3447e3 Mon Sep 17 00:00:00 2001 From: Vichayanun Wachirapusitanand Date: Thu, 10 Aug 2017 17:41:10 +0200 Subject: [PATCH 151/151] Fixed "combined" result --- TopAnalysis/test/summer2017/plotXSect.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/TopAnalysis/test/summer2017/plotXSect.cpp b/TopAnalysis/test/summer2017/plotXSect.cpp index 55346807bb5..32065a5d2f9 100644 --- a/TopAnalysis/test/summer2017/plotXSect.cpp +++ b/TopAnalysis/test/summer2017/plotXSect.cpp @@ -11,7 +11,7 @@ void plotXSect() TTree *tree; // Dataset name here - string fileName[] = {"#splitline{#bf{Four lepton NN}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Four lepton BDT}}{#scale[0.7]{This analysis}}", "#splitline{#bf{SS Dilepton}}{#scale[0.7]{EPJC 76 (2016) 439}}", "#splitline{#bf{OS Dilepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Single lepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Combined}}{#scale[0.7]{TOP-16-016}}"}; + string fileName[] = {"#splitline{#bf{Four lepton NN}}{#scale[0.7]{This analysis}}", "#splitline{#bf{Four lepton BDT}}{#scale[0.7]{This analysis}}", "#splitline{#bf{SS Dilepton}}{#scale[0.7]{EPJC 76 (2016) 439}}", "#splitline{#bf{OS Dilepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Single lepton}}{#scale[0.7]{TOP-16-016}}", "#splitline{#bf{Combined}}{#scale[0.4]{TOP-16-016 + EPJC 76 (2016) 439}}"}; TCanvas *canvas = new TCanvas("canvas","Upper limits for four tops",800,600); canvas->Draw(); @@ -40,7 +40,7 @@ void plotXSect() limitObs[2] = 12.9; // SS Dilepton limitObs[3] = 14.5; // OS Dilepton limitObs[4] = 17.2; // Single lepton - limitObs[5] = 10.2; // Combined + limitObs[5] = 7.4; // Combined limitObsError[2] = 0.; limitObsError[3] = 0.; limitObsError[4] = 0.; @@ -48,7 +48,7 @@ void plotXSect() limit0[2] = 11.0; limit0[3] = 24.7; limit0[4] = 16.4; - limit0[5] = 12.8; + limit0[5] = 7.7; for (int y = 2; y < 6; y++) { @@ -124,8 +124,8 @@ void plotXSect() break; case 5: // Combined limit2sigdown = 3.7; - limit1sigdown = 8.3; - limit1sigup = 21.1; + limit1sigdown = 5.1; + limit1sigup = 11.8; limit2sigup = 17.4; break; }