## GENERAL VARIABLES : THESE ARE NOT SUPPOSED TO BE MODIFIED UNLESS OBVIOUS ERRORS ARE FOUND!
## data samples
data_2023preBPix=Tau_2023Cv1,Tau_2023Cv2,Tau_2023Cv3,Tau_2023Cv4,Muon0_2023Cv1,Muon0_2023Cv2,Muon0_2023Cv3,Muon0_2023Cv4,Muon1_2023Cv1,Muon1_2023Cv2,Muon1_2023Cv3,Muon1_2023Cv4,EGamma0_2023Cv1,EGamma0_2023Cv2,EGamma0_2023Cv3,EGamma0_2023Cv4,EGamma1_2023Cv1,EGamma1_2023Cv2,EGamma1_2023Cv3,EGamma1_2023Cv4,JetMET0_2023Cv1,JetMET0_2023Cv2,JetMET0_2023Cv3,JetMET0_2023Cv4,JetMET1_2023Cv1,JetMET1_2023Cv2,JetMET1_2023Cv3,JetMET1_2023Cv4,ParkingVBF0_2023Cv3,ParkingVBF0_2023Cv4,ParkingVBF1_2023Cv3,ParkingVBF1_2023Cv4,ParkingVBF2_2023Cv3,ParkingVBF2_2023Cv4,ParkingVBF3_2023Cv3,ParkingVBF3_2023Cv4,ParkingVBF4_2023Cv4,ParkingVBF5_2023Cv4,ParkingVBF6_2023Cv4,ParkingVBF7_2023Cv4

## background samples
shared_bkg=DYto2Tau-2Jets_MLL-50_0J,DYto2Tau-2Jets_MLL-50_1J,DYto2Tau-2Jets_MLL-50_2J,DYto2E-2Jets_MLL-50_0J,DYto2E-2Jets_MLL-50_1J,DYto2E-2Jets_MLL-50_2J,DYto2Mu-2Jets_MLL-50_0J,DYto2Mu-2Jets_MLL-50_1J,DYto2Mu-2Jets_MLL-50_2J,TTto2L2Nu,TTtoLNu2Q,TTto4Q,WtoLNu-2Jets,WtoLNu-2Jets_PTLNu-40to100_1J,WtoLNu-2Jets_PTLNu-40to100_2J,WtoLNu-2Jets_PTLNu-100to200_1J,WtoLNu-2Jets_PTLNu-100to200_2J,WtoLNu-2Jets_PTLNu-200to400_1J,WtoLNu-2Jets_PTLNu-200to400_2J,WtoLNu-2Jets_PTLNu-400to600_1J,WtoLNu-2Jets_PTLNu-400to600_2J,WtoLNu-2Jets_PTLNu-600_1J,WtoLNu-2Jets_PTLNu-600_2J,GluGluHToTauTau,GluGluHto2B,VBFHToTauTau,VBFHto2B,WminusHTo2Tau,WplusHTo2Tau,ZHto2Tau,ZH_Hto2B_Zto2L,ZH_Hto2B_Zto2Q,WminusH_Hto2B_Wto2Q,WminusH_Hto2B_WtoLNu,WplusH_Hto2B_Wto2Q,WplusH_Hto2B_WtoLNu,ggZH_Hto2B_Zto2L,ggZH_Hto2B_Zto2Q,TWminusto2L2Nu,TWminustoLNu2Q,TWminusto4Q,TbarWplusto2L2Nu,TbarWplusto4Q,TBbarQ_t-channel,TbarBQ_t-channel,TBbartoLplusNuBbar-s-channel,TbarBtoLminusNuB-s-channel,TTHto2B,TTHtoNon2B,TTWH,TTWW,TTZH,TTZZ,WW,WZ,ZZ,WWW,WWZ,WZZ,ZZZ
bkg_2023preBPix=$shared_bkg,TTWZ
ggHH=ggHH_kl_1_kt_1_c2_0_hbbhtt,ggHH_kl_2p45_kt_1_c2_0_hbbhtt,ggHH_kl_5_kt_1_c2_0_hbbhtt
qqHH=qqHH_CV_1_C2V_1_kl_1_hbbhtt,qqHH_CV_1_C2V_0_kl_1_hbbhtt,qqHH_CV_1p74_C2V_1p37_kl_14p4_hbbhtt,qqHH_CV_m0p012_C2V_0p030_kl_10p2_hbbhtt,qqHH_CV_m0p962_C2V_0p959_kl_m1p43_hbbhtt,qqHH_CV_m1p21_C2V_1p94_kl_m0p94_hbbhtt

## samples per each run period
prod_samples_2023preBPix=$data_2023preBPix,$bkg_2023preBPix,$ggHH,$qqHH
sample_to_flatten_DNN_ggHH=$data_2023preBPix,$bkg_2023preBPix,ggHH_kl_1_kt_1_c2_0_hbbhtt
sample_to_flatten_DNN_qqHH=$data_2023preBPix,$bkg_2023preBPix,qqHH_CV_1_C2V_1_kl_1_hbbhtt

## extensive set of available variables to plot
lepton_varibales=lep1_pt,lep1_eta,lep1_phi,lep2_pt,lep2_eta,lep2_phi,deltaRtautau
bjet_variables=bjet1_pt,bjet1_eta,bjet1_phi,bjet1_btag,bjet2_pt,bjet2_eta,bjet2_phi,bjet2_btag
fatjet_variables=fatbjet_pt,fatbjet_eta,fatbjet_phi,fatbjet_mass,fatbjet_msoftdrop,fatbjet_btag
vbfjets_variables=vbfjet1_pt,vbfjet1_eta,vbfjet1_phi,vbfjet1_mass,vbfjet2_pt,vbfjet2_eta,vbfjet2_phi,vbfjet2_mass
general_objects=nCentralJets,nAllJets,PuppiMET_pt,PuppiMET_phi,PuppiMET_smeared_pt,PuppiMET_smeared_phi,PuppiMET_smeared_xycorr_pt,PuppiMET_smeared_xycorr_phi
HHpair_variables=Hbb_pt,Hbb_eta,Hbb_phi,Hbb_mass,Htt_pt,Htt_eta,Htt_phi,Htt_mass,Htt_svfit_pt,Htt_svfit_eta,Htt_svfit_phi,Htt_svfit_mass,Htt_regr_pt,Htt_regr_eta,Htt_regr_phi,Htt_regr_mass,HH_pt,HH_eta,HH_phi,HH_mass,HH_svfit_pt,HH_svfit_eta,HH_svfit_phi,HH_svfit_mass,HH_regr_pt,HH_regr_eta,HH_regr_phi,HH_regr_mass,HH_kinfit_mass,HH_kinfit_chi2
dnns=dnn_HHbbtt_kl_1,dnn_HHbbtt_HH,dnn_HHbbtt_DY,dnn_HHbbtt_TT,dnn_vbf_HHbbtt_HH,dnn_vbf_HHbbtt_VBF,dnn_vbf_HHbbtt_DY,dnn_vbf_HHbbtt_TT,dnn_HHbbtt_boosted

## reduced set of available variables to plot
lepton_varibales=lep1_pt,lep1_eta,lep2_pt,lep2_eta,deltaRtautau
bjet_variables=bjet1_pt,bjet1_eta,bjet2_pt,bjet2_eta
fatjet_variables=fatbjet_pt,fatbjet_eta,fatbjet_msoftdrop
vbfjets_variables=vbfjet1_pt,vbfjet1_eta,vbfjet2_pt,vbfjet2_eta
general_objects=nCentralJets,PuppiMET_smeared_pt,PuppiMET_smeared_phi
HHpair_variables=Hbb_pt,Hbb_mass,Htt_pt,Htt_mass,Htt_svfit_pt,Htt_svfit_mass,Htt_regr_pt,Htt_regr_mass,HH_pt,HH_mass,HH_svfit_pt,HH_svfit_mass,HH_regr_pt,HH_regr_mass,HH_kinfit_mass,HH_kinfit_chi2
dnns=dnn_HHbbtt_kl_1,dnn_HHbbtt_HH,dnn_HHbbtt_DY,dnn_HHbbtt_TT,dnn_vbf_HHbbtt_HH,dnn_vbf_HHbbtt_VBF,dnn_vbf_HHbbtt_DY,dnn_vbf_HHbbtt_TT,dnn_HHbbtt_boosted

res_variables=$lepton_varibales,$bjet_variables,$general_objects
boo_variables=$lepton_varibales,$fatjet_variables,$general_objects
vbfres_variables=$lepton_varibales,$bjet_variables,$vbfjets_variables,$general_objects
vbfboo_variables=$lepton_varibales,$fatjet_variables,$vbfjets_variables,$general_objects
blind_variables=$HHpair_variables,$dnns
all_variables=$lepton_varibales,$bjet_variables,$fatjet_variables,$vbfjets_variables,$general_objects,$HHpair_variables,$dnns

############################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################

## SPECIFIC VARIABLES TO SET FOR EACH PRODUCTION
configs_to_use=run3_2023_preBPix
samples_to_use=$prod_samples_2023preBPix
CreateDatacardsVersion=Prod_25_09
FeaturePlotVersion=Prod_25_09
PrePlotVersion=Prod_25_09
CategorizationVersion=Prod_25_09
PreCounterVersion=HLepRare_skims_2025v1
MergePreCounterVersion=HLepRare_skims_2025v1
PreprocessRDFVersion=Prod_25_09



# ########## boosted
# ## xtau (os_isoFF/os_invisoFF)
# law run PrePlotWrapper --version $PrePlotVersion --MergeCategorization-version $CategorizationVersion --Categorization-version $CategorizationVersion --PreCounter-version $PreCounterVersion --MergePreCounter-version $MergePreCounterVersion --PreprocessRDF-version $PreprocessRDFVersion --config-name $configs_to_use --dataset-names $samples_to_use --category-names boosted --Categorization-base-category-name base --region-name xtau_os_isoFF    --feature-names $all_variables --PrePlot-store-systematics True --PrePlot-do-ff True --preplot-foldered-by-feature True --workers 25 --PrePlot-workflow htcondor --PrePlot-poll-interval 1 --PrePlot-max-runtime 20m #--print-status -1
# law run PrePlotWrapper --version $PrePlotVersion --MergeCategorization-version $CategorizationVersion --Categorization-version $CategorizationVersion --PreCounter-version $PreCounterVersion --MergePreCounter-version $MergePreCounterVersion --PreprocessRDF-version $PreprocessRDFVersion --config-name $configs_to_use --dataset-names $samples_to_use --category-names boosted --Categorization-base-category-name base --region-name xtau_os_invisoFF --feature-names $all_variables --PrePlot-store-systematics True --PrePlot-do-ff True --preplot-foldered-by-feature True --workers 25 --PrePlot-workflow htcondor --PrePlot-poll-interval 1 --PrePlot-max-runtime 20m #--print-status -1


# ########## boosted
# ## xtau
law run FeaturePlot --version $FeaturePlotVersion --PrePlot-version $PrePlotVersion --MergeCategorization-version $CategorizationVersion --Categorization-version $CategorizationVersion --PreCounter-version $PreCounterVersion --MergePreCounter-version $MergePreCounterVersion --PreprocessRDF-version $PreprocessRDFVersion --config-name $configs_to_use --dataset-name $samples_to_use --category-name boosted     --Categorization-base-category-name base --region-name xtau_os_isoFF --feature-names $boo_variables --store-systematics True --process-group-name forPlots --plot-systematics True --save-root True --save-yields True --save-pdf True --save-png True --stack True --hide-data False --show-ratio True --log-y False --PrePlot-do-ff True --do-ff True --preplot-foldered-by-feature True --workers 25 #--print-status -1


# ########## boosted
# ## xtau
# law run FlatSignalBinMergerTask --version $CreateDatacardsVersion --FeaturePlot-version $FeaturePlotVersion --PrePlot-version $PrePlotVersion --MergeCategorization-version $CategorizationVersion --Categorization-version $CategorizationVersion --PreCounter-version $PreCounterVersion --MergePreCounter-version $MergePreCounterVersion --PreprocessRDF-version $PreprocessRDFVersion --config-name $configs_to_use --dataset-name $sample_to_flatten_DNN_ggHH  --category-name boosted --Categorization-base-category-name base --region-name xtau_os_isoFF --feature-names dnn_HHbbtt_boosted --FlatSignalBinMergerTask-features-to-flatten dnn_HHbbtt_boosted --FlatSignalBinMergerTask-use-cumulative True --process-group-name forPlots --save-root True --preplot-foldered-by-feature True --workers 25 #--print-status -1
# law run CreateDatacards         --version $CreateDatacardsVersion --FeaturePlot-version $FeaturePlotVersion --PrePlot-version $PrePlotVersion --MergeCategorization-version $CategorizationVersion --Categorization-version $CategorizationVersion --PreCounter-version $PreCounterVersion --MergePreCounter-version $MergePreCounterVersion --PreprocessRDF-version $PreprocessRDFVersion --config-name $configs_to_use --dataset-names $samples_to_use --category-name boosted --Categorization-base-category-name base --region-name xtau_os_isoFF --feature-names dnn_HHbbtt_boosted --FlatSignalBinMergerTask-features-to-flatten dnn_HHbbtt_boosted --FlatSignalBinMergerTask-use-cumulative True --process-group-name forCombine --hide-data True --FeaturePlot-hide-data True --PrePlot-do-ff True --do-ff True --store-systematics True --plot-systematics True --refit-signal-with-syst False --FeaturePlot-do-qcd True --FeaturePlot-store-systematics True --FeaturePlot-plot-systematics True --optimization-method flat_sgn --preplot-foldered-by-feature True --workers 25 #--print-status -1


# ########## parsing all datacrads created to the general inference form
# python3 NBAtoInferenceDatacardsParser.py --period $configs_to_use --version $CreateDatacardsVersion --categories vbf_boosted,boosted --channels xtau                   --variable dnn_HHbbtt_boosted
