ROOT logo
void SetupStyle();

void MakeDataReport(const char* outputFile="JpsiDataReport.pdf",
                          const char* histos="jpsi_HistosSE.root",
                          const char* cf="jpsi_CF.root")
{
  //
  // Make a pdf file with the efficiency report
  //

  SetupStyle();
  
  AliDielectronCFdraw d(cf);
  d.SetRangeUser("PairType",1,1);
  d.SetRangeUser("Y",-.89,.9,"0");
  
  
  TFile f("jpsi_HistosSE.root");
  
  AliDielectronHistos h;
  TIter nextHists((TList*)f.Get("Dielectron_Histos"));
  
  TPaveText pt(.02,.6,.98,.8);
  TText *t1=pt.AddText("");
  TText *t2=pt.AddText("");
  
  TCanvas *c1=new TCanvas;
  
  TPDF p(outputFile);

  //
  // Invariant mass plots
  //
  
  
  //
  // Make QA info
  //
  
  t1->SetTitle("QA summary plots for");
  THashList *list=0x0;
  while ( (list=(THashList*)nextHists()) ){
    h.SetHistogramList(*list);
    t2->SetTitle(list->GetName());
    pt.Draw();
    c1->Update();
    h.Draw();
    c1->Clear();
  }
  p.Close();
  delete c1;
}

void SetupStyle()
{
  const Int_t NCont=255;
  
  TStyle *st = new TStyle("mystyle","mystyle");
  gROOT->GetStyle("Plain")->Copy((*st));
  st->SetTitleX(0.1);
  st->SetTitleW(0.8);
  st->SetTitleH(0.08);
  st->SetStatX(.9);
  st->SetStatY(.9);
  st->SetNumberContours(NCont);
  st->SetPalette(1,0);
  st->SetOptStat("erm");
  st->SetOptFit(0);
  st->SetGridColor(kGray+1);
  st->SetPadGridX(kTRUE);
  st->SetPadGridY(kTRUE);
  st->SetPadTickX(kTRUE);
  st->SetPadTickY(kTRUE);
  st->cd();
  
  const Int_t NRGBs = 5;
  Double_t stops[NRGBs] = { 0.00, 0.34, 0.61, 0.84, 1.00 };
  Double_t red[NRGBs]   = { 0.00, 0.00, 0.87, 1.00, 0.51 };
  Double_t green[NRGBs] = { 0.00, 0.81, 1.00, 0.20, 0.00 };
  Double_t blue[NRGBs]  = { 0.51, 1.00, 0.12, 0.00, 0.00 };
  
  TColor::CreateGradientColorTable(NRGBs, stops, red, green, blue, NCont);
  
}

void DrawUnbinned(){
  TFile f("jpsi_debug.root");
//   if (!f.IsOpen()) return;

  TTree *t=(TTree*)f.Get("Pair");
//   if (!t) return;

  TCanvas c1;
  gPad->SetLogy();
  gStyle->SetOptStat(0);
  
  TLegend *leg=new TLegend(0.59,.79,.99,.99);
  TLine l;
  
  l.SetLineColor(kGreen-5);
  l.SetLineWidth(2);
  l.SetLineStyle(2);
  leg->SetFillColor(10);

  leg->Clear();
  

  t->SetLineColor(kBlack);
  t->Draw("M>>hAll(200,-.01,3.99)","","histe");
  TH1 *hAll=(TH1*)gROOT->FindObject("hAll");
  hAll->SetMinimum(0.1);
  hAll->SetTitle(";M [GeV]; yield");
  leg->AddEntry(hAll,"|n#sigma e|<2 + pt>0.3 GeV","l");

  l.DrawLine(3.097,1,3.097,1e4);
  
  t->SetLineColor(kOrange-5);
  t->Draw("M>>hC11(200,-.01,3.99)","abs(Leg1_ImpactParXY)<.004&&abs(Leg2_ImpactParXY)<.004","histesame");
  hAll=(TH1*)gROOT->FindObject("hC11");
  leg->AddEntry(hAll,"|n#sigma e|<2 + pt>0.3 GeV + |dXY|<40#mum","l");
  
  TCut d1_1="abs(Leg1_TPC_nSigma_Electrons)<1";
  TCut d2_1="abs(Leg2_TPC_nSigma_Electrons)<1";
  TCut d_1=d1_1+d2_1;
  
  t->SetLineColor(kRed);
  t->Draw("M>>hC1(200,-.01,3.99)","Leg2_Pt>1&&Leg1_Pt>1","histesame");
  hAll=(TH1*)gROOT->FindObject("hC1");
  leg->AddEntry(hAll,"|n#sigma e|<2 + pt>1 GeV","l");

  
  t->SetLineColor(kGreen);
  t->Draw("M>>hC2(200,-.01,3.99)",d_1+"Leg2_Pt>1&&Leg1_Pt>1","histesame");
  hAll=(TH1*)gROOT->FindObject("hC2");
  leg->AddEntry(hAll,"|n#sigma e|<1 + pt>1 GeV","l");

  t->SetLineColor(kMagenta);
  t->Draw("M>>hC3(200,-.01,3.99)","Leg1_Pt>2&&Leg2_Pt>2","histesame");
  hAll=(TH1*)gROOT->FindObject("hC3");
  leg->AddEntry(hAll,"|n#sigma e|<2 + pt>2 GeV","l");
  
  t->SetLineColor(kBlue);
  t->Draw("M>>hC4(200,-.01,3.99)","Leg1_Pt>3&&Leg2_Pt>3","histesame");
  hAll=(TH1*)gROOT->FindObject("hC4");
  leg->AddEntry(hAll,"|n#sigma e|<2 + pt>3 GeV","l");
  
  leg->Draw();
}

/*
  Double_t alephParameters[5];
  // simulation
  alephParameters[0] = 2.15898e+00/50.;
  alephParameters[1] = 1.75295e+01;
  alephParameters[2] = 3.40030e-09;
  alephParameters[3] = 1.96178e+00;
  alephParameters[4] = 3.91720e+00;
  Color_t color=kRed;

  TF1 *foProton = new TF1("foProton", "50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foPion = new TF1("foPion", "50*AliExternalTrackParam::BetheBlochAleph(x/0.13957,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foElec = new TF1("foElec", "50*AliExternalTrackParam::BetheBlochAleph(x/0.000511,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foKaon = new TF1("foKaon", "50*AliExternalTrackParam::BetheBlochAleph(x/0.493677,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foMuon = new TF1("foMuon", "50*AliExternalTrackParam::BetheBlochAleph(x/0.105658,[0],[1],[2],[3],[4])",0.05,20);
  //
  foProton->SetParameters(alephParameters);
  foPion->SetParameters(alephParameters);
  foElec->SetParameters(alephParameters);
  foKaon->SetParameters(alephParameters);
  foMuon->SetParameters(alephParameters);
  //
  foProton->SetLineColor(color);
  foPion->SetLineColor(color);
  foElec->SetLineColor(color);
  foKaon->SetLineColor(color);
  foMuon->SetLineColor(color);
  //
  Int_t lineWidth=1;
  foProton->SetLineWidth(lineWidth);
  foPion->SetLineWidth(lineWidth);
  foElec->SetLineWidth(lineWidth);
  foKaon->SetLineWidth(lineWidth);
  foMuon->SetLineWidth(lineWidth);

  //
  foProton->SetNpx(200);
  foPion->SetNpx(200);
  foElec->SetNpx(200);
  foKaon->SetNpx(200);
  foMuon->SetNpx(200);
  //
  foProton->Draw("same");
  foPion->Draw("same");
  foElec->Draw("same");
  foKaon->Draw("same");
  foMuon->Draw("same");





  // data
  Double_t res=5.2e-2;
  alephParameters[0] = 0.0283086;
  alephParameters[1] = 2.63394e+01;
  alephParameters[2] = 5.04114e-11;
  alephParameters[3] = 2.12543e+00;
  alephParameters[4] = 4.88663e+00;
  Color_t color=kRed;

    alephParameters[0] = 0.0283086/0.97;
    //alephParameters[0] = 0.0283086;
    alephParameters[1] = 2.63394e+01;
    alephParameters[2] = 5.04114e-11;
    alephParameters[3] = 2.12543e+00;
    alephParameters[4] = 4.88663e+00;


  TF1 *foDataProton = new TF1("foDataProton", "50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foDataProtonP = new TF1("foDataProtonP",Form( "50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1+%f)",3*res),0.05,20);
  TF1 *foDataProtonM = new TF1("foDataProtonM", Form("50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1-%f)",res),0.05,20);

  TF1 *foDataPion = new TF1("foDataPion", "50*AliExternalTrackParam::BetheBlochAleph(x/0.13957,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foDataPionP = new TF1("foDataPionP",Form( "50*AliExternalTrackParam::BetheBlochAleph(x/0.13957,[0],[1],[2],[3],[4])*(1+%f)",res),0.05,20);
  TF1 *foDataPionM = new TF1("foDataPionM", Form("50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1-%f)",res),0.05,20);

  TF1 *foDataElec = new TF1("foDataElec", "50*AliExternalTrackParam::BetheBlochAleph(x/0.000511,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foDataElecP = new TF1("foDataElecP",Form( "50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1+%f)",res),0.05,20);
  TF1 *foDataElecM = new TF1("foDataElecM", Form("50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1-%f)",res),0.05,20);

  TF1 *foDataKaon = new TF1("foDataKaon", "50*AliExternalTrackParam::BetheBlochAleph(x/0.493677,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foDataKaonP = new TF1("foDataKaonP",Form( "50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1+%f)",res),0.05,20);
  TF1 *foDataKaonM = new TF1("foDataKaonM", Form("50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1-%f)",res),0.05,20);

  TF1 *foDataMuon = new TF1("foDataMuon", "50*AliExternalTrackParam::BetheBlochAleph(x/0.105658,[0],[1],[2],[3],[4])",0.05,20);
  TF1 *foDataMuonP = new TF1("foDataMuonP",Form( "50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1+%f)",res),0.05,20);
  TF1 *foDataMuonM = new TF1("foDataMuonM", Form("50*AliExternalTrackParam::BetheBlochAleph(x/0.93827,[0],[1],[2],[3],[4])*(1-%f)",res),0.05,20);

  //
  foDataProton->SetParameters(alephParameters);
  foDataProtonP->SetParameters(alephParameters);
  foDataProtonM->SetParameters(alephParameters);
  foDataPion->SetParameters(alephParameters);
  foDataPionP->SetParameters(alephParameters);
  foDataPionM->SetParameters(alephParameters);
  foDataElec->SetParameters(alephParameters);
  foDataElecP->SetParameters(alephParameters);
  foDataElecM->SetParameters(alephParameters);
  foDataKaon->SetParameters(alephParameters);
  foDataKaonP->SetParameters(alephParameters);
  foDataKaonM->SetParameters(alephParameters);
  foDataMuon->SetParameters(alephParameters);
  foDataMuonP->SetParameters(alephParameters);
  foDataMuonM->SetParameters(alephParameters);
  //
  foDataProton->SetLineColor(color);
  foDataProtonP->SetLineColor(color-4);
  foDataProtonM->SetLineColor(color-4);
  foDataPion->SetLineColor(color);
  foDataPionP->SetLineColor(color-4);
  foDataPionM->SetLineColor(color-4);
  foDataElec->SetLineColor(color);
  foDataElecP->SetLineColor(color-4);
  foDataElecM->SetLineColor(color-4);
  foDataKaon->SetLineColor(color);
  foDataKaonP->SetLineColor(color-4);
  foDataKaonM->SetLineColor(color-4);
  foDataMuon->SetLineColor(color);
  foDataMuonP->SetLineColor(color-4);
  foDataMuonM->SetLineColor(color-4);
  //
  Int_t lineWidth=1;
  foDataProton->SetLineWidth(lineWidth);
  foDataProtonP->SetLineWidth(lineWidth);
  foDataProtonM->SetLineWidth(lineWidth);
  foDataPion->SetLineWidth(lineWidth);
  foDataPionP->SetLineWidth(lineWidth);
  foDataPionM->SetLineWidth(lineWidth);
  foDataElec->SetLineWidth(lineWidth);
  foDataElecP->SetLineWidth(lineWidth);
  foDataElecM->SetLineWidth(lineWidth);
  foDataKaon->SetLineWidth(lineWidth);
  foDataKaonP->SetLineWidth(lineWidth);
  foDataKaonM->SetLineWidth(lineWidth);
  foDataMuon->SetLineWidth(lineWidth);
  foDataMuonP->SetLineWidth(lineWidth);
  foDataMuonM->SetLineWidth(lineWidth);

  //
  foDataProtonP->SetLineStyle(2);
  foDataProtonM->SetLineStyle(2);
  foDataPionP->SetLineStyle(2);
  foDataPionM->SetLineStyle(2);
  foDataElecP->SetLineStyle(2);
  foDataElecM->SetLineStyle(2);
  foDataKaonP->SetLineStyle(2);
  foDataKaonM->SetLineStyle(2);
  foDataMuonP->SetLineStyle(2);
  foDataMuonM->SetLineStyle(2);

  //
  foDataProton->SetNpx(200);
  foDataProtonP->SetNpx(200);
  foDataProtonM->SetNpx(200);
  foDataPion->SetNpx(200);
  foDataPionP->SetNpx(200);
  foDataPionM->SetNpx(200);
  foDataElec->SetNpx(200);
  foDataKaon->SetNpx(200);
  foDataMuon->SetNpx(200);
  //
  foDataProton->Draw("same");
  foDataProtonP->Draw("same");
  foDataProtonM->Draw("same");
  foDataPion->Draw("same");
  foDataElec->Draw("same");
  foDataKaon->Draw("same");
  foDataMuon->Draw("same");





{

  Int_t baseColors[5]={kRed, kGreen+1, kAzure-4, kMagenta, kCyan+1};
  Int_t sigmaColorOffset=1;
  
Int_t baseColors[5]={kRed, kGreen+1, kAzure-4, kMagenta, kCyan+1};
  Int_t sigmaColorOffset=0;
Int_t baseColors[5]={kRed, kRed, kRed, kRed, kRed};

  Double_t sigmas[5]={3,3,3,3,3};
  Double_t masses[5];

  for (Int_t i=0; i<AliPID::kSPECIES; ++i) masses[i]=AliPID::ParticleMass(i);
  
  Double_t res=7.e-2;
  Double_t alephParameters[5];

  alephParameters[0] = 0.0283086;
  alephParameters[1] = 2.63394e+01;
  alephParameters[2] = 5.04114e-11;
  alephParameters[3] = 2.12543e+00;
  alephParameters[4] = 4.88663e+00;
      alephParameters[0] = 1.25202/50.;   //was 1.79571/55.;
      alephParameters[1] = 2.74992e+01;   //was 22.0028;
      alephParameters[2] = TMath::Exp(-3.31517e+01);  //was1.55354e-11;
      alephParameters[3] = 2.46246;       //was 2.39804;
      alephParameters[4] = 6.78938;       //was 5.1209;

  Double_t mip=50;

  Color_t color=kRed;
  Int_t lineWidth=2;

TF1 *fBethe[5];
TF1 *fBetheP[5];
TF1 *fBetheM[5];

for (Int_t i=0; i<5; ++i){
  fBethe[i] = new TF1(Form("fBethe%d",i), Form("%f*AliExternalTrackParam::BetheBlochAleph(x/%f,[0],[1],[2],[3],[4])",mip,masses[i]),0.05,20);
  fBetheP[i] = new TF1(Form("fBethe%d",i), Form("%f*AliExternalTrackParam::BetheBlochAleph(x/%f,[0],[1],[2],[3],[4])*(1+%f*%f)",mip,masses[i],res,sigmas[i]),0.05,20);
  fBetheM[i] = new TF1(Form("fBethe%d",i), Form("%f*AliExternalTrackParam::BetheBlochAleph(x/%f,[0],[1],[2],[3],[4])*(1-%f*%f)",mip,masses[i],res,sigmas[i]),0.05,20);

  fBethe[i]->SetParameters(alephParameters);
  fBetheP[i]->SetParameters(alephParameters);
  fBetheM[i]->SetParameters(alephParameters);

  fBethe[i]->SetLineColor(baseColors[i]);
  fBetheP[i]->SetLineColor(baseColors[i]-sigmaColorOffset);
  fBetheM[i]->SetLineColor(baseColors[i]-sigmaColorOffset);

  fBethe[i]->SetLineWidth(lineWidth);
  fBetheP[i]->SetLineWidth(lineWidth);
  fBetheM[i]->SetLineWidth(lineWidth);
  
  fBetheP[i]->SetLineStyle(2);
  fBetheM[i]->SetLineStyle(2);

  fBethe[i]->SetNpx(200);
  fBetheP[i]->SetNpx(200);
  fBetheM[i]->SetNpx(200);
}

for (Int_t i=0; i<5; ++i){
  fBethe[i]->Draw("same");
//   fBetheP[i]->Draw("same");
//   fBetheM[i]->Draw("same");
}
}

*/


/*

    Double_t resolution=0.052;
    Double_t nSigma=3.;
    TF1 *ffPio=new TF1(Form("fBethe%d",AliPID::kPion), Form("(%f*%f+(AliExternalTrackParam::BetheBlochAleph(x/%f,[0],[1],[2],[3],[4])-AliExternalTrackParam::BetheBlochAleph(x/%f,[0],[1],[2],[3],[4])))/%f", nSigma,resolution, AliPID::ParticleMass(AliPID::kPion), AliPID::ParticleMass(AliPID::kElectron), resolution), 0.05,200.);
    ffPio->SetParameters(0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00);
fPPio->Draw("same");

  TF1 f("fP","-8*exp(-0.6*x)",0,40);
f.Draw("same")

//Unbinned fit

RooWorkspace w("w",kTRUE);
w.factory("CBShape::cb(M[0,5],x0[0],sigma[.04],alpha[1],n[1])")
RooRealVar cut("cut","cut")
RooDataSet data("data","data",c,w::M,"cut")



abs(Leg1_TPC_nSigma_Electrons)<3&&abs(Leg2_TPC_nSigma_Electrons)<3&&(Leg1_TPC_nSigma_Pions)>=3.5&&(Leg2_TPC_nSigma_Pions)>=3.5&&(Leg1_TPC_nSigma_Protons)>=3.0&&(Leg2_TPC_nSigma_Protons)>=3.0&&abs(Leg1_Eta)<0.9&&abs(Leg2_Eta)<0.9&&Leg1_NclsTPC>=70&&Leg2_NclsTPC>=70&&Leg1_Pt>=1&&Leg2_Pt>=1&&abs(Y)<0.9&&Leg1_ITSLayerFirstCls<2&&Leg2_ITSLayerFirstCls<2
*/

/*
c=Pair
c->SetAlias("cutE","abs(Leg1_TPC_nSigma_Electrons)<3&&abs(Leg2_TPC_nSigma_Electrons)<3");
c->SetAlias("cutPi","(Leg1_TPC_nSigma_Pions)>=3.5&&(Leg2_TPC_nSigma_Pions)>=3.5");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>=1.5&&(Leg2_TPC_nSigma_Protons)>=1.5");
// c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>=3.&&(Leg2_TPC_nSigma_Protons)>=3.");
c->SetAlias("pidSig","cutE&&cutPi&&cutP");

c->SetAlias("LegEta","abs(Leg1_Eta)<0.9&&abs(Leg2_Eta)<0.9");
c->SetAlias("LegNcl","Leg1_NclsTPC>=70&&Leg2_NclsTPC>=70");
c->SetAlias("LegPt","Leg1_Pt>=.6&&Leg2_Pt>=.6");
c->SetAlias("Rap","abs(Y)<0.9");
c->SetAlias("QA","LegNcl&&LegEta&&Rap&&LegPt&&Rap");

c->SetAlias("ITS1","Leg1_ITSLayerFirstCls<1&&Leg2_ITSLayerFirstCls<1")
c->SetAlias("ITS2","Leg1_ITSLayerFirstCls<2&&Leg2_ITSLayerFirstCls<2")
c->SetAlias("ITS3","Leg1_ITSLayerFirstCls<3&&Leg2_ITSLayerFirstCls<3")
c->SetAlias("ITS4","Leg1_ITSLayerFirstCls<4&&Leg2_ITSLayerFirstCls<4")
c->SetAlias("ITS5","Leg1_ITSLayerFirstCls<5&&Leg2_ITSLayerFirstCls<5")
c->SetAlias("ITS6","Leg1_ITSLayerFirstCls<6&&Leg2_ITSLayerFirstCls<6")

c->SetAlias("cut","PairType==1 && QA && pidSig && ITS5");

TFile f("/data/Work/data/pp2.76/m.root","recreate")
TTree *tnew=c->CopyTree("cut")
tnew->Write("Pair");
f.Save()
f.Close()

c->SetMarkerStyle(20);
c->SetMarkerSize(1);
c->Draw("M>>hM(250,0.,5.)","cut","e");
hM=hM
hM->SetMarkerColor(kRed)
hM->SetLineColor(kRed)

c->SetAlias("cutLS","(PairType==0||PairType==2) && QA && pidSig && ITS5");

c->Draw("M>>hMLS(250,0.,5.)","cutLS","esame");
hMLS=hMLS
hMLS->SetLineColor(kBlue);
hMLS->SetMarkerStyle(27)
Double_t factor=hM->Integral(hM->FindBin(3.201),hM->FindBin(4.9))/hMLS->Integral(hMLS->FindBin(3.201),hMLS->FindBin(4.9));
printf("scale factor: %.2f\n",factor)
hMLS->Scale(factor);

hSub=(TH1*)hM->Clone("hSub");
hSub->Add(hMLS,-1);
hSub->SetLineColor(kBlack);
hSub->SetMarkerColor(kBlack);
hSub->Draw("same")

hSub->Integral(hSub->FindBin(2.961),hSub->FindBin(3.159))

*/



/*
//
// Default
//
c->SetAlias("cutE","abs(Leg1_TPC_nSigma_Electrons)<3&&abs(Leg2_TPC_nSigma_Electrons)<3");
c->SetAlias("cutPi","(Leg1_TPC_nSigma_Pions)>=3.5&&(Leg2_TPC_nSigma_Pions)>=3.5");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>=3&&(Leg2_TPC_nSigma_Protons)>=3");
c->SetAlias("pidSig","cutE&&cutPi&&cutP");

c->SetAlias("LegEta","abs(Leg1_Eta)<0.9&&abs(Leg2_Eta)<0.9");
c->SetAlias("LegNcl","Leg1_NclsTPC>=70&&Leg2_NclsTPC>=70");
c->SetAlias("LegPt","Leg1_Pt>=.6&&Leg2_Pt>=0.6");
c->SetAlias("Rap","abs(Y)<0.9");
c->SetAlias("QA","LegNcl&&LegEta&&Rap&&LegPt&&Rap");

c->SetAlias("cutSigN","Leg2_TPCsignalN>=Leg2_NclsTPC&&Leg1_TPCsignalN>=Leg1_NclsTPC");
c->SetAlias("etaAdd","Leg1_Eta<0&&Leg2_Eta<0")
c->SetAlias("ITS1","Leg1_ITSLayerFirstCls<1&&Leg2_ITSLayerFirstCls<1")
c->SetAlias("ITS2","Leg1_ITSLayerFirstCls<2&&Leg2_ITSLayerFirstCls<2")
c->SetAlias("ITS3","Leg1_ITSLayerFirstCls<3&&Leg2_ITSLayerFirstCls<3")
c->SetAlias("ITS4","Leg1_ITSLayerFirstCls<4&&Leg2_ITSLayerFirstCls<4")
c->SetAlias("ITS5","Leg1_ITSLayerFirstCls<5&&Leg2_ITSLayerFirstCls<5")
c->SetAlias("ITS6","Leg1_ITSLayerFirstCls<6&&Leg2_ITSLayerFirstCls<6")

c->SetAlias("cut","PairType==1 && QA && pidSig");

c->SetMarkerStyle(20);
c->SetMarkerSize(.5);
c->Draw("M>>hM(125,0.,5.)","cut","e");
c->Draw("M>>hM1(125,0.,5.)","cut&&ITS1","esame"); hM1->SetLineColor(kRed); hM1->SetMarkerColor(kRed);
c->Draw("M>>hM2(125,0.,5.)","cut&&ITS2","esame"); hM2->SetLineColor(kBlue); hM2->SetMarkerColor(kBlue);
c->Draw("M>>hM3(125,0.,5.)","cut&&ITS3","esame"); hM3->SetLineColor(kGreen);  hM3->SetMarkerColor(kGreen);
c->Draw("M>>hM4(125,0.,5.)","cut&&ITS4","esame"); hM4->SetLineColor(kMagenta);  hM4->SetMarkerColor(kMagenta);
c->Draw("M>>hM5(125,0.,5.)","cut&&ITS5","esame"); hM5->SetLineColor(kYellow);  hM5->SetMarkerColor(kYellow);
c->Draw("M>>hM6(125,0.,5.)","cut&&ITS6","esame"); hM6->SetLineColor(kAzure);  hM6->SetMarkerColor(kAzure);

c->SetAlias("cut","PairType==1&&QA&&pidSig&&Leg1_ITSLayerFirstCls<1&&Leg2_ITSLayerFirstCls<1");
c->Draw("M>>hM1(125,0.,5.)","cut","esame");
hM1->SetMarkerColor(kBlue); hM1->SetLineColor(kBlue)

c->SetAlias("cut","PairType==1&&QA&&pidSig&&Leg1_ITSLayerFirstCls<2&&Leg2_ITSLayerFirstCls<2&&Run!=146805");
c->Draw("M>>hM2(125,0.,5.)","cut","esame");
hM2->SetMarkerColor(kMagenta); hM2->SetLineColor(kMagenta); hM2->SetMarkerStyle(20);

c->SetAlias("cut","PairType==1&&QA&&pidSig&&Leg1_ITSLayerFirstCls<5&&Leg2_ITSLayerFirstCls<5");
c->Draw("M>>hM3(125,0.,5.)","cut","esame");
hM3->SetMarkerColor(kGreen); hM3->SetLineColor(kGreen)

//
c->SetMarkerColor(kBlack); c->SetLineColor(kBlack); c->Draw("M>>hM(125,0.,5.)","cut","e");
new TCanvas; c->SetMarkerColor(kBlue); c->SetLineColor(kBlue); c->Draw("M>>hM2(125,0.01,5.01)","cut","e");
new TCanvas; c->SetMarkerColor(kRed); c->SetLineColor(kRed); c->Draw("M>>hM3(125,0.02,5.02)","cut","e");
new TCanvas; c->SetMarkerColor(kGreen); c->SetLineColor(kGreen); c->Draw("M>>hM4(125,0.03,5.03)","cut","e");



// trd cut

c->SetAlias("stp","1./9.*TMath::Pi()")
c->SetAlias("trdcut","((Leg1_Phi>1.5*stp&&Leg1_Phi<5.5*stp || Leg1_Phi>9.5*stp&&Leg1_Phi<16.5*stp) && (Leg2_Phi>1.5*stp&&Leg2_Phi<5.5*stp || Leg2_Phi>9.5*stp&&Leg2_Phi<16
.5*stp))")

c->SetAlias("trdcutn","(!(Leg1_Phi>1.5*stp&&Leg1_Phi<5.5*stp || Leg1_Phi>9.5*stp&&Leg1_Phi<16.5*stp) && !(Leg2_Phi>1.5*stp&&Leg2_Phi<5.5*stp || Leg2_Phi>9.5*stp&&Leg2_Phi
<16.5*stp))")

c->SetAlias("trdcutn2","((Leg1_Phi>1.5*stp&&Leg1_Phi<5.5*stp || Leg1_Phi>9.5*stp&&Leg1_Phi<16.5*stp) && !(Leg2_Phi>1.5*stp&&Leg2_Phi<5.5*stp || Leg2_Phi>9.5*stp&&Leg2_Phi<16.5*stp))")

c->SetAlias("trdcutn3","(!(Leg1_Phi>1.5*stp&&Leg1_Phi<5.5*stp || Leg1_Phi>9.5*stp&&Leg1_Phi<16.5*stp) && (Leg2_Phi>1.5*stp&&Leg2_Phi<5.5*stp || Leg2_Phi>9.5*stp&&Leg2_Phi<16.5*stp))")

c1->Divide(2,2)
c1->cd(1)
c->Draw("M>>hM1(125,0.,5.)","cut&&trdcut","e");
c1->cd(2)
c->Draw("M>>hM2(125,0.,5.)","cut&&trdcutn","e");
c1->cd(3)
c->Draw("M>>hM3(125,0.,5.)","cut&&trdcutn2","e");
c1->cd(4)
c->Draw("M>>hM4(125,0.,5.)","cut&&trdcutn3","e");


c->SetAlias("notrd","((Leg1_TrackStatus&512)==0 && (Leg2_TrackStatus&512)==0)")
c->SetAlias("withtrd","((Leg1_TrackStatus&512)==512 && (Leg2_TrackStatus&512)==512)")

c->SetAlias("notrd2","((Leg1_TrackStatus&512)==0 && (Leg2_TrackStatus&512)==512)")
c->SetAlias("notrd3","((Leg1_TrackStatus&512)==512 && (Leg2_TrackStatus&512)==0)")

c3->Divide(2,2)
c3->cd(1)
c->Draw("M>>hM5(125,0.,5.)","cut&&notrd","e");
c3->cd(2)
c->Draw("M>>hM6(125,0.,5.)","cut&&withtrd","e");
c3->cd(3)
c->Draw("M>>hM7(125,0.,5.)","cut&&notrd2","e");
c3->cd(4)
c->Draw("M>>hM8(125,0.,5.)","cut&&notrd3","e");

//pt ele only pid
c->SetAlias("cutE","Leg1_TPC_nSigma_Electrons>-2.&&Leg1_TPC_nSigma_Electrons<3&&Leg2_TPC_nSigma_Electrons>-2.&&Leg2_TPC_nSigma_Electrons<3");
c->SetAlias("pidSig","cutE");
c->SetAlias("LegPt","Leg1_Pt>1.2&&Leg2_Pt>1.2");

c->SetAlias("LegEta","abs(Leg1_Eta)<0.9&&abs(Leg2_Eta)<0.9");
c->SetAlias("LegNcl","Leg1_NclsTPC>70&&Leg2_NclsTPC>70");
c->Draw("M>>hM(125,0.,5.)","cut","e");

//---------------------

c->SetAlias("cut","PairType==1&&QA")


c->SetAlias("nCls","Leg1_NclsTPC>90&&Leg2_NclsTPC>90");


c->SetAlias("cutE","Leg1_TPC_nSigma_Electrons>-1 && Leg2_TPC_nSigma_Electrons>-1");
c->SetAlias("LegPt","Leg1_Pt>1.5&&Leg2_Pt>1.5");

//distance to chamber edge
c->SetAlias("tgs","pi/180.*20");
c->SetAlias("ed1","Leg1_Phi-int(Leg1_Phi/tgs+.5)*tgs");
c->SetAlias("ed2","Leg2_Phi-int(Leg2_Phi/tgs+.5)*tgs");

c->Draw("M:abs(ed1)>>hMd(15,0.,.18,65,0.,5.2)","cut","colz");


//--------PID
//-Param dEdx
c->SetAlias("cutPipardEdx","Leg1_TPC_signal>75-20*exp(-.7*Leg1_P_InnerParam)&&Leg2_TPC_signal>75-20*exp(-.7*Leg2_P_InnerParam)")

//require TOF PID
  c->SetAlias("TOFe1r","(((Leg1_TrackStatus&32768)==32768)&&abs(Leg1_TOF_nSigma_Electrons)<3)");
  c->SetAlias("TOFe2r","(((Leg2_TrackStatus&32768)==32768)&&abs(Leg2_TOF_nSigma_Electrons)<3)");

//if avail TOF PID
  c->SetAlias("TOFe1","((Leg1_TrackStatus&32768)==0)||(((Leg1_TrackStatus&32768)==32768)&&abs(Leg1_TOF_nSigma_Electrons)<3)");
  c->SetAlias("TOFe2","((Leg2_TrackStatus&32768)==0)||(((Leg2_TrackStatus&32768)==32768)&&abs(Leg2_TOF_nSigma_Electrons)<3)");
  c->SetAlias("TOFe","TOFe1&&TOFe2");


c->SetAlias("cutPspecial","(abs(Leg1_TPC_nSigma_Protons)>3||(abs(Leg1_TPC_nSigma_Protons)<=3&&TOFe1r))&&(abs(Leg2_TPC_nSigma_Protons)>3||(abs(Leg2_TPC_nSigma_Protons)<=3&&TOFe2r))")

c->SetAlias("cutP","(Leg1_Pt>1.2||TOFe1r)) && (Leg2_Pt>1.2 || TOFe2r)")

//-- nsigma
c->SetAlias("cutE","abs(Leg1_TPC_nSigma_Electrons)<3&&abs(Leg2_TPC_nSigma_Electrons)<3");
// c->SetAlias("cutE","Leg1_TPC_nSigma_Electrons>-1 && Leg2_TPC_nSigma_Electrons>-1");
c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>3&&abs(Leg2_TPC_nSigma_Pions)>3");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>3.&&(Leg2_TPC_nSigma_Protons)>3.3");
c->SetAlias("pidSig","cutE&&cutPi&&cutP");
//-- Pi param
// c->SetAlias("eleParam","Leg1_TPC_nSigma_Electrons<5&&Leg2_TPC_nSigma_Electrons<5&&Leg1_TPC_nSigma_Electrons>-2.65*exp(-0.9*Leg1_P_InnerParam)&&Leg2_TPC_nSigma_Electrons>-8*exp(-0.6*Leg2_P_InnerParam)");
c->SetAlias("eleParam","Leg1_TPC_nSigma_Electrons<5&&Leg2_TPC_nSigma_Electrons<5&&Leg1_TPC_nSigma_Electrons>-3.7*exp(-0.9*Leg1_P_InnerParam)-0.1&&Leg2_TPC_nSigma_Electrons>-3.7*exp(-0.6*Leg2_P_InnerParam)-0.1");
c->SetAlias("pidParam","eleParam&&cutP");



c->SetAlias("LegEta","abs(Leg1_Eta)<0.9&&abs(Leg2_Eta<0.9)");
c->SetAlias("LegNcl","Leg1_NclsTPC>90&&Leg2_NclsTPC>90");
c->SetAlias("LegPt","Leg1_Pt>1&&Leg2_Pt>1");
c->SetAlias("Rap","abs(Y)<0.9");
c->SetAlias("QA","LegNcl&&LegEta&&Rap");
c->SetAlias("spdFirst","(Leg1_ITS_clusterMap&1)==1 && (Leg2_ITS_clusterMap&1)==1");
c->SetAlias("LegNclDiffIter1","abs(Leg1_NclsTPC-Leg1_NclsTPCiter1)<10&&abs(Leg2_NclsTPC-Leg2_NclsTPCiter1)<10")
c->SetAlias("LegNclPID","(Leg1_NclsTPC-Leg1_TPCsignalN)<20&&(Leg2_NclsTPC-Leg2_TPCsignalN)<20")

c->SetAlias("LegNcl","Leg1_NFclsTPCrobust&&Leg2_NFclsTPCrobust");
c->SetAlias("cut","PairType==1&&QA&&pidSig&&LegPt");

c->SetAlias("cut","PairType==1&&QA&&cutPipardEdx&&cutPspecial")
c->SetAlias("cut","PairType==1&&QA&&pidSig&&LegPt")

c->SetMarkerStyle(22);
c->SetMarkerSize(.8);

//-------- nsigma

c->SetMarkerColor(kBlack);
c->SetLineColor(kBlack);

c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>3&&abs(Leg2_TPC_nSigma_Pions)>3");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>3&&(Leg2_TPC_nSigma_Protons)>3");

c->Draw("M>>hM(301,-.01,6.01)","cut","e");
c->GetHistogram()->GetXaxis()->SetRangeUser(2,4);

//--------

c->SetMarkerColor(kBlue);
c->SetLineColor(kBlue);

c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>3&&abs(Leg2_TPC_nSigma_Pions)>3");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>3&&(Leg2_TPC_nSigma_Protons)>3");

c->Draw("M>>hM2(301,-.01,6.01)","cut","esame");

//--------

c->SetMarkerColor(kGreen);
c->SetLineColor(kGreen);

c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>4&&abs(Leg2_TPC_nSigma_Pions)>4");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>3.5&&(Leg2_TPC_nSigma_Protons)>3.5");

c->Draw("M>>hM3(301,-.01,6.01)","cut","esame");

//--------

c->SetMarkerColor(kMagenta);
c->SetLineColor(kMagenta);

c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>3.5&&abs(Leg2_TPC_nSigma_Pions)>3.5");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>4&&(Leg2_TPC_nSigma_Protons)>4");

c->Draw("M>>hM4(301,-.01,6.01)","cut","esame");





//
//-------- rapidity
//

c->SetMarkerColor(kBlack);
c->SetLineColor(kBlack);

c->Draw("M>>hM(301,-.01,6.01)","cut&&Y<=0","e");

//--------

c->SetMarkerColor(kBlue);
c->SetLineColor(kBlue);

c->Draw("M>>hM2(301,-.01,6.01)","cut&&Y>0","esame");





c->SetAlias("cutE","Leg1_TPC_nSigma_Electrons>-1 && Leg2_TPC_nSigma_Electrons>-1");
c->SetAlias("LegPt","Leg1_Pt>1.2&&Leg2_Pt>1.2");

c->SetAlias("cut","PairType==1&&QA&&pidSig");


//-------- binning

c->SetMarkerColor(kBlack);
c->SetLineColor(kBlack);

// c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>3&&abs(Leg2_TPC_nSigma_Pions)>3");
// c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>3&&(Leg2_TPC_nSigma_Protons)>3");

c->Draw("M>>hM(601,-.015,6.005)","cut","e");

TGraphErrors gr0;
TH1 *h=c->GetHistogram();

gr0->SetLineColor(h->GetLineColor());
gr0->SetMarkerColor(h->GetMarkerColor());
for (Int_t i=0;i<h->GetNbinsX();++i){
 gr0.SetPoint(i,h->GetXaxis()->GetBinCenter(i+1),h->GetBinContent(i+1));
//  gr0.SetPointError(i,h->GetXaxis()->GetBinWidth(i+1)/2,h->GetBinError(i+1));
 gr0.SetPointError(i,0,h->GetBinError(i+1));
}

//--------

c->SetMarkerColor(kBlue);
c->SetLineColor(kBlue);

c->Draw("M>>hM2(601,-.01,6.01)","cut","egoff");

TGraphErrors gr1;
TH1 *h=c->GetHistogram();

gr1->SetLineColor(h->GetLineColor());
gr1->SetMarkerColor(h->GetMarkerColor());
for (Int_t i=0;i<h->GetNbinsX();++i){
 gr1.SetPoint(i,h->GetXaxis()->GetBinCenter(i+1),h->GetBinContent(i+1));
//  gr1.SetPointError(i,h->GetXaxis()->GetBinWidth(i+1)/2,h->GetBinError(i+1));
 gr1.SetPointError(i,0,h->GetBinError(i+1));
}

//--------

c->SetMarkerColor(kGreen);
c->SetLineColor(kGreen);

c->Draw("M>>hM3(601,-.005,6.015)","cut","egoff");
c->GetHistogram()->GetXaxis()->SetRangeUser(2.,4);

TGraphErrors gr2;
TH1 *h=c->GetHistogram();

gr2->SetLineColor(h->GetLineColor());
gr2->SetMarkerColor(h->GetMarkerColor());
for (Int_t i=0;i<h->GetNbinsX();++i){
 gr2.SetPoint(i,h->GetXaxis()->GetBinCenter(i+1),h->GetBinContent(i+1));
//  gr2.SetPointError(i,h->GetXaxis()->GetBinWidth(i+1)/2,h->GetBinError(i+1));
 gr2.SetPointError(i,0,h->GetBinError(i+1));
}

//--------

c->SetMarkerColor(kMagenta);
c->SetLineColor(kMagenta);

c->Draw("M>>hM4(601,-.0,6.02)","cut","egoff");

TGraphErrors gr3;
TH1 *h=c->GetHistogram();

gr3->SetLineColor(h->GetLineColor());
gr3->SetMarkerColor(h->GetMarkerColor());
for (Int_t i=0;i<h->GetNbinsX();++i){
 gr3.SetPoint(i,h->GetXaxis()->GetBinCenter(i+1),h->GetBinContent(i+1));
//  gr3.SetPointError(i,h->GetXaxis()->GetBinWidth(i+1)/2,h->GetBinError(i+1));
 gr3.SetPointError(i,0,h->GetBinError(i+1));
}

gr0->Draw("ap");
gr0->GetHistogram()->GetXaxis()->SetRangeUser(2.,4);
gr1->Draw("p");
gr2->Draw("p");
gr3->Draw("p");




c->SetAlias("LegNclDiffIter1","(Leg1_NclsTPC-Leg1_NclsTPCiter1)>-1&&(Leg2_NclsTPC-Leg2_NclsTPCiter1)>-1")
c->SetAlias("cut","PairType==1&&LegNclDiffIter1")
// histos
AliDielectronHistos h("h","h");
h.AddClass("TPCsignal");
h.UserHistogram("TPCsignal","sigTPC","TPC signal;P [GeV];TPC signal [arb. Units]",400,.3,40,400,0.,200.,0,0,kTRUE,kFALSE)
h.GetHistogram("TPCsignal","sigTPC")->SetDirectory(gDirectory)

h.UserHistogram("TPCsignal","nSigE","TPC n #sigma Electrons;P [GeV];TPC n #sigma Electrons",200,.3,40.,100,-10.,10.,0,0,kTRUE,kFALSE)
h.GetHistogram("TPCsignal","nSigE")->SetDirectory(gDirectory)
h.UserHistogram("TPCsignal","nSigMu","TPC n #sigma Muons;P [GeV];TPC n #sigma Muons",400,.3,40.,500,-10.,10.,0,0,kTRUE,kFALSE)
h.GetHistogram("TPCsignal","nSigMu")->SetDirectory(gDirectory)
h.UserHistogram("TPCsignal","nSigPi","TPC n #sigma Pions;P [GeV];TPC n #sigma Pions",400,.3,40.,500,-10.,10.,0,0,kTRUE,kFALSE)
h.GetHistogram("TPCsignal","nSigPi")->SetDirectory(gDirectory)
h.UserHistogram("TPCsignal","nSigK","TPC n #sigma Kaons;P [GeV];TPC n #sigma Kaons",400,.3,40,500,-10,10,0,0,kTRUE,kFALSE)
h.GetHistogram("TPCsignal","nSigK")->SetDirectory(gDirectory)
h.UserHistogram("TPCsignal","nSigP","TPC n #sigma Protons;P [GeV];TPC n #sigma Protons",400,.3,40.,500,-10,10.,0,0,kTRUE,kFALSE)
h.GetHistogram("TPCsignal","nSigP")->SetDirectory(gDirectory)

h.UserHistogram("TPCsignal","nSigDiffP","ncls-nclsXX;P [GeV];ncls-nclsXX",400,.3,40.,200,-40,160.,0,0,kTRUE,kFALSE)
h.GetHistogram("TPCsignal","nSigDiffP")->SetDirectory(gDirectory)


c->Draw("Leg1_TPC_signal:Leg1_P_InnerParam>>sigTPC","cut","colz")
c->Draw("Leg2_TPC_signal:Leg2_P_InnerParam>>+sigTPC","cut","colz")


c->Draw("Leg1_TPC_nSigma_Electrons:Leg1_P_InnerParam>>nSigE","cut","colz")
c->Draw("Leg2_TPC_nSigma_Electrons:Leg2_P_InnerParam>>+nSigE","cut","colzsame")

c->Draw("Leg1_TPC_nSigma_Muos:Leg1_P_InnerParam>>nSigMu","cut","goff")
c->Draw("Leg2_TPC_nSigma_Muons:Leg1_P_InnerParam>>nSigMu","cut","goff")
c->Draw("Leg2_TPC_nSigma_Muons:Leg2_P_InnerParam>>+nSigMu","cut","colz")

c->Draw("Leg1_TPC_nSigma_Pions:Leg1_P_InnerParam>>nSigPi","cut","goff")
c->Draw("Leg2_TPC_nSigma_Pions:Leg2_P_InnerParam>>+nSigPi","cut","colz")

c->Draw("Leg1_TPC_nSigma_Kaons:Leg1_P_InnerParam>>nSigK","cut","goff")
c->Draw("Leg2_TPC_nSigma_Kaons:Leg2_P_InnerParam>>+nSigK","cut","colz")

c->Draw("Leg1_TPC_nSigma_Protons:Leg1_P_InnerParam>>nSigP","cut","goff")
c->Draw("Leg2_TPC_nSigma_Protons:Leg2_P_InnerParam>>+nSigP","cut","colz")



c->Draw("Leg1_TOF_nSigma_Electrons:Leg1_P_InnerParam>>nSigE","cut","colz")
c->Draw("Leg2_TOF_nSigma_Electrons:Leg2_P_InnerParam>>+nSigE","cut","colz")


c->Draw("Leg1_TOF_nSigma_Protons:Leg1_P_InnerParam>>nSigP","cut","goff")
c->Draw("Leg2_TOF_nSigma_Protons:Leg2_P_InnerParam>>+nSigP","cut","colz")

c->SetScanField(0)
c->Scan("M:EventInFile:Leg1_ID:Leg2_ID:File.GetString()","","colsize=1 col=.4f:6.d:5.d:5.d:130.s")

c->Scan("1:Run:EventInFile:File.GetString()","","colsize=1 col=.2f:8.d:8.d:130.s");



AliDielectronSignalFunc sig;
sig.SetDefaults(1);


//----------
c->Draw("Leg1_NclsTPC>>hNcls(160,-0.5,159.5)","cut","goff");
c->Draw("Leg2_NclsTPC>>+hNcls","cut","goff");
hNclsPID->SetLineColor(kBlack)

c->Draw("Leg1_TPCsignalN>>hNclsPID(160,-0.5,159.5)","cut","goff");
c->Draw("Leg2_TPCsignalN>>+hNclsPID","cut","goff");
hNclsPID->SetLineColor(kBlue)

c->Draw("Leg1_NclsTPCiter1>>hNclsIter1(160,-0.5,159.5)","cut","goff");
c->Draw("Leg2_NclsTPCiter1>>+hNclsIter1","cut","goff");
hNclsIter1->SetLineColor(kGreen)

hNcls->Draw();
hNclsPID->Draw("same");
hNclsIter1->Draw("same");
//-----------



c->Draw("Leg1_TPCsignalN:Leg1_NclsTPC>>hNclsPIDNcls(160,-0.5,159.5,160,-0.5,159.5)","cut","colz");
c->Draw("Leg2_TPCsignalN:Leg2_NclsTPC>>+hNclsPIDNcls","cut","colz");


c->Draw("Leg1_NclsTPC-Leg1_TPCsignalN:Leg1_P_InnerParam>>nSigDiffP","cut","colz");
c->Draw("Leg2_NclsTPC-Leg2_TPCsignalN:Leg1_P_InnerParam>>+nSigDiffP","cut","colz");


c->Draw("Leg1_NclsTPC-Leg1_NclsTPCiter1:Leg1_P_InnerParam>>nSigDiffP","cut","colz");
c->Draw("Leg2_NclsTPC-Leg2_NclsTPCiter1:Leg1_P_InnerParam>>+nSigDiffP","cut","colz");









c->Draw("Leg1_NclsTPC-Leg1_TPCsignalN:Leg1_TPC_nSigma_Electrons:Leg1_P_InnerParam>>hXX(100,0,10,20,-4,4)","cut","profcolz")
c->Draw("Leg1_NclsTPC-Leg1_TPCsignalN:Leg2_TPC_nSigma_Electrons:Leg2_P_InnerParam>>+hXX","cut","profcolz")









//WooJins cuts:
c->SetAlias("cutE","abs(Leg1_TPC_nSigma_Electrons)<3&&abs(Leg2_TPC_nSigma_Electrons)<3");
c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>5&&abs(Leg2_TPC_nSigma_Pions)>5");
// c->SetAlias("cutPi","Leg1_TPC_signal>65&&Leg2_TPC_signal>65");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>5&&(Leg2_TPC_nSigma_Protons)>5");
c->SetAlias("cutK","abs(Leg1_TPC_nSigma_Kaons)>2&&abs(Leg2_TPC_nSigma_Kaons)>2");
c->SetAlias("pid","cutE&&cutPi&&cutP");
c->SetAlias("etaLeg","abs(Leg1_Eta)<.9&&abs(Leg2_Eta)<.9");
c->SetAlias("rap","abs(Y)<.9");


c->SetAlias("cutAdd","PairType==1&&abs(Leg1_ImpactParXY)<.02&&abs(Leg2_ImpactParXY)<.02&&Leg2_Pt>1.")
c->Draw("M>>hM(50,2,4)","PairType==1&&pid","e");
h.Rebin();
h.Rebin();
h.Rebin();
sig.Process(hM);
sig.Draw("samestat");




//test
c->SetAlias("cutAdd","PairType==1&&abs(Leg1_ImpactParXY)<.03&&abs(Leg2_ImpactParXY)<.03&&Leg2_Pt>1")
c->SetAlias("cut","cutAdd&&pid&etaLeg&&rap")

c->Draw("M>>hM(50,1.99,3.99)","cut","e");
sig.Process(hM);
sig.Draw("samestat");


c->SetAlias("cut","PairType==1")
c->Draw("Leg1_TPC_signal:Leg1_P_InnerParam>>sigTPC","cut","colz")
c->Draw("Leg2_TPC_signal:Leg2_P_InnerParam>>+sigTPC","cut","colz")

////
c->SetAlias("cutE","abs(Leg1_TPC_nSigma_Electrons)<2&&abs(Leg2_TPC_nSigma_Electrons)<2");
c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>2&&abs(Leg2_TPC_nSigma_Pions)>2");
c->SetAlias("cutPi2","Leg1_TPC_signal>65&&Leg2_TPC_signal>65");
c->SetAlias("cutPi3","abs(Leg1_TPC_nSigma_Pions)>2.5&&abs(Leg2_TPC_nSigma_Pions)>2.5");
c->SetAlias("cutP","abs(Leg1_TPC_nSigma_Protons)>2&&abs(Leg2_TPC_nSigma_Protons)>2");
c->SetAlias("cutP2","abs(Leg1_TPC_nSigma_Protons)>1.5&&abs(Leg2_TPC_nSigma_Protons)>1.5");
c->SetAlias("cutK","abs(Leg1_TPC_nSigma_Kaons)>2&&abs(Leg2_TPC_nSigma_Kaons)>2");
c->SetAlias("cutdXY","abs(Leg1_ImpactParXY)<.02&&abs(Leg2_ImpactParXY)<.02")
c->SetAlias("cutPt","Leg2_Pt>1.")
c->SetAlias("cutPt2","Leg2_Pt>1.2")

//----
c->SetMarkerSize(0.7);

c->SetMarkerStyle(20);
c->SetLineColor(kRed);
c->SetMarkerColor(kRed);
c->Draw("M>>hM(100,2,4)","cutPi&&cutPt","e");

c->SetMarkerStyle(21);
c->SetLineColor(kRed-1);
c->SetMarkerColor(kRed-2);
c->Draw("M>>hM2(100,2,4)","cutPi2&&cutPt","esame");

c->SetMarkerStyle(22);
c->SetLineColor(kRed-2);
c->SetMarkerColor(kRed-2);
c->Draw("M>>hM3(100,2,4)","cutPi3&&cutPt","esame");

//----
c->SetMarkerStyle(20);
c->SetLineColor(kBlue);
c->SetMarkerColor(kBlue);
c->Draw("M>>hM4(100,2,4)","cutPi&&cutPt&&cutP","esame");

c->SetMarkerStyle(21);
c->SetLineColor(kBlue-1);
c->SetMarkerColor(kBlue-1);
c->Draw("M>>hM5(100,2,4)","cutPi2&&cutPt&&cutP","esame");

c->SetMarkerStyle(22);
c->SetLineColor(kBlue-2);
c->SetMarkerColor(kBlue-2);
c->Draw("M>>hM6(100,2,4)","cutPi3&&cutPt&&cutP","esame");

//----

c->SetMarkerStyle(20);
c->SetLineColor(kGreen);
c->SetMarkerColor(kGreen);
c->Draw("M>>hM7(100,2,4)","cutPi&&cutPt&&cutP2","esame");

c->SetMarkerStyle(21);
c->SetLineColor(kGreen-1);
c->SetMarkerColor(kGreen-1);
c->Draw("M>>hM8(100,2,4)","cutPi2&&cutPt&&cutP2","esame");

c->SetMarkerStyle(22);
c->SetLineColor(kGreen-2);
c->SetMarkerColor(kGreen-2);
c->Draw("M>>hM9(100,2,4)","cutPi3&&cutPt&&cutP2","esame");

//----


c->SetMarkerStyle(20);
c->SetLineColor(kMagentha);
c->SetMarkerColor(kMagentha);
c->Draw("M>>hM7(100,2,4)","cutPi&&cutPt&&cutP2","esame");

c->SetMarkerStyle(21);
c->SetLineColor(kMagentha-1);
c->SetMarkerColor(kMagentha-1);
c->Draw("M>>hM8(100,2,4)","cutPi2&&cutPt&&cutP2","esame");

c->SetMarkerStyle(22);
c->SetLineColor(kMagentha-2);
c->SetMarkerColor(kMagentha-2);
c->Draw("M>>hM9(100,2,4)","cutPi3&&cutPt&&cutP2","esame");


c->SetLineColor(kBlack);
c->SetMarkerColor(kBlue);
c->Draw("M>>hM4(100,2,4)","cutE&&cutPi&&cutK&&cutP&&cutdXY&&cutPt","esame");




//
c->SetAlias("cutE","Leg1_TPC_nSigma_Electrons>-1.5&&Leg2_TPC_nSigma_Electrons>-1.5");
// c->SetAlias("cutE","Leg1_TPC_signal>60&&Leg2_TPC_signal>60");
c->SetAlias("cutP","abs(Leg1_TPC_nSigma_Protons)>3&&abs(Leg2_TPC_nSigma_Protons)>3")

c->SetAlias("cutAdd","PairType==1&&abs(Leg1_ImpactParXY)<.03&&abs(Leg2_ImpactParXY)<.03&&Leg2_Pt>0")
c->SetAlias("cut","Leg2_Pt>1&&cutE&&cutP")

c->Draw("M>>hM(50,1.99,3.99)","cut","e");

c->SetAlias("cutAdd","PairType==1&&abs(Leg1_ImpactParXY)<.03&&abs(Leg2_ImpactParXY)<.03&&Leg2_Pt>.8")
c->Draw("M>>hM2(50,1.99,3.99)","cut","esame");

c->SetAlias("cutAdd","PairType==1&&abs(Leg1_ImpactParXY)<.03&&abs(Leg2_ImpactParXY)<.03&&Leg2_Pt>1")
c->Draw("M>>hM3(50,1.99,3.99)","cut","esame");

c->SetAlias("cutAdd","PairType==1&&abs(Leg1_ImpactParXY)<.03&&abs(Leg2_ImpactParXY)<.03&&Leg2_Pt>1.2")
c->Draw("M>>hM4(50,1.99,3.99)","cut","esame");


c->Draw("Leg1_TPC_signal:Leg1_P_InnerParam>>sigTPC","cut","goff")
c->Draw("Leg2_TPC_signal:Leg2_P_InnerParam>>+sigTPC","cut","goff")
c1->Modified();c1->Update()


c->SetAlias("cutE","Leg1_TPC_nSigma_Electrons>-1.5&&Leg2_TPC_nSigma_Electrons>-1.5");
c->SetAlias("cut","Leg2_P_InnerParam>1.5&&cutE")
c->SetMarkerStyle(21);
c->Draw("M>>hM(50,1.99,3.99)","cut","e");

c->SetAlias("cutE","Leg1_TPC_nSigma_Electrons>-1.5+.8&&Leg2_TPC_nSigma_Electrons>-1.5+.8");
c->SetAlias("cut","Leg2_P_InnerParam>1.5&&cutE")
c->SetMarkerStyle(20);
c->SetMarkerColor(kRed);
c->Draw("M>>hM3(50,1.99,3.99)","cut","esame");




//=================== pass 1 pass 2 comparison =======================


//------ cuts ------------


c->SetAlias("cutPro","Leg1_TPC_signal>50*exp(-.5*(Leg1_P_InnerParam-2))&&Leg2_TPC_signal>50*exp(-.5*(Leg2_P_InnerParam-2))&&Leg1_TPC_signal<85&&Leg2_TPC_signal<85");

c->SetAlias("Pcut","Leg1_P_InnerParam>1.3&&Leg2_P_InnerParam>1.3")
c->SetAlias("Ptcut","Leg1_Pt>1&&Leg2_Pt>1")
c->SetAlias("TOFcut","abs(Leg1_TOF_nSigma_Electrons)<3&&abs(Leg2_TOF_nSigma_Electrons)<3");
c->SetAlias("TOFcut2","(Leg1_P_InnerParam<1.3&&abs(Leg1_TOF_nSigma_Electrons)<3||Leg1_P_InnerParam>=1.3)&&(Leg2_P_InnerParam<1.3&&abs(Leg2_TOF_nSigma_Electrons)<3||Leg2_P_InnerParam>=1.3)");
c->SetAlias("TPCcut","(Leg1_TPC_signal>70*(1-exp(-1*(Leg1_P_InnerParam+2))))&&(Leg2_TPC_signal>70*(1-exp(-1*(Leg2_P_InnerParam+2))))")
c->SetAlias("NClcut","Leg1_NclsTPC>90&&Leg2_NclsTPC>90");

c->SetAlias("eleParam","Leg1_TPC_nSigma_Electrons<5&&Leg2_TPC_nSigma_Electrons<5&&Leg1_TPC_nSigma_Electrons>-2.65*exp(-0.6757*Leg1_P_InnerParam)&&Leg2_TPC_nSigma_Electrons>-2.65*exp(-0.6757*Leg2_P_InnerParam)")
c->SetAlias("cut","PairType==1&&eleParam&&Run<127719")
c->SetAlias("cut","1==1")
c->SetAlias("cut","NClcut")

c->SetAlias("cut","TOFcut&&TPCcut&&NClcut")

c->SetAlias("cut","TOFcut2&&TPCcut&&NClcut")

c->SetAlias("cut","cutPro&&TPCcut&&NClcut")

c->SetAlias("cut","Pcut&&TPCcut&&NClcut")

c->SetAlias("cut","Ptcut&&TPCcut&&NClcut")



//------------ plots --------------

//no cut
c->SetAlias("cut","1==1")
c1->SetLogx(0)
c1->SetLogz(0)
c->SetLineColor(kBlack);
c->Draw("M>>hM(50,1.99,3.99)","cut","e");
hM->SetTitle(";Inv. Mass [GeV]; Pair (e+e-) / 40GeV")
c1->Modified()
c1->Update();
c1->Print("pics/M_noCut.png");

//=============
//ncl: No cut
//=============
c->SetAlias("cut","1==1")
c1->SetLogx(1)
c1->SetLogz(0)
gStyle->SetOptStat(0);
c->Draw("Leg1_NclsTPC:Leg1_TPC_signal:Leg1_P_InnerParam>>test(1000,0,40,200,60,100)","cut","profcolz")
c->Draw("Leg2_NclsTPC:Leg2_TPC_signal:Leg2_P_InnerParam>>+test","cut","profcolz")
test->SetMinimum(80)
test->SetTitle("mean TPC number of clusters;P_{TPC} [GeV]; TPC signal [arb. units]")
c1->Modified()
c1->Update();
c1->Print("pics/TPCnCl_P.png");

//=============
//TPCsignal: ncl cut
//=============
c->SetAlias("cut","NClcut")
c->Draw("Leg1_NclsTPC:Leg1_TPC_signal:Leg1_P_InnerParam>>test(1000,0,40,200,60,100)","cut","profcolz")
c->Draw("Leg2_NclsTPC:Leg2_TPC_signal:Leg2_P_InnerParam>>+test","cut","profcolz")
test->SetMinimum(80)
test->SetTitle("mean TPC number of clusters;P_{TPC} [GeV]; TPC signal [arb. units]")
c1->Modified()
c1->Update();
c1->Print("pics/TPCnCl_P_cutNcl.png");


//=============
//tpc signal + signal cut
//=============
c1->SetLogx(1)
c1->SetLogy(0)
c1->SetLogz(1)
h.GetHistogram("TPCsignal","sigTPC")->GetYaxis()->SetRangeUser(60,100);
c->SetAlias("cut","NClcut")
c->Draw("Leg1_TPC_signal:Leg1_P_InnerParam>>sigTPC","cut","colz")
c->Draw("Leg2_TPC_signal:Leg2_P_InnerParam>>+sigTPC","cut","colz")
TF1 f("f1","[0]*(1-exp(-[1]*(x-[2])))",0.3,40);
f.SetParameters(70,1,-2);
f.Draw("same");
c1->Modified();
c1->Update();
c1->Print("pics/TPCsignal_P_cutNcl.png");

//------- Mass

c1->SetLogx(0)
c1->SetLogy(1)
c1->SetLogz(0)
c->SetAlias("cut","1==1")
c->SetLineColor(kBlack);
c->SetMarkerColor(kBlack);
c->Draw("M>>hM(50,1.99,3.99)","cut","e");
hM->SetTitle(";Inv. Mass [GeV]; Pair (e+e-) / 40GeV")
hM->SetMinimum(5e2);
c->SetAlias("cut","NClcut")
c->SetLineColor(kRed);
c->SetMarkerColor(kRed);
c->Draw("M>>hM2(50,1.99,3.99)","cut","esame");
c1->Modified();
c1->Update();
c1->Print("pics/M_nClCut.png");


//==========
//tpc signal: ncl + tpc cut
//==========
c1->SetLogx(1)
c1->SetLogy(0)
c1->SetLogz(1)
c->SetAlias("cut","TPCcut&&NClcut")
c->Draw("Leg1_TPC_signal:Leg1_P_InnerParam>>sigTPC","cut","colz")
c->Draw("Leg2_TPC_signal:Leg2_P_InnerParam>>+sigTPC","cut","colz")
c1->Modified();
c1->Update();
c1->Print("pics/TPCsignal_P_cutNcl_tpc.png");

/--- Mass

c1->SetLogx(0)
c1->SetLogy(1)
c1->SetLogz(0)
c->SetAlias("cut","1==1")
c->SetLineColor(kBlack);
c->SetMarkerColor(kBlack);
c->Draw("M>>hM(50,1.99,3.99)","cut","e");
hM->SetTitle(";Inv. Mass [GeV]; Pair (e+e-) / 40GeV")
hM->SetMinimum(5);
c->SetAlias("cut","NClcut")
c->SetLineColor(kRed);
c->SetMarkerColor(kRed);
c->Draw("M>>hM2(50,1.99,3.99)","cut","esame");
c->SetAlias("cut","TPCcut&&NClcut")
c->SetLineColor(kGreen);
c->SetMarkerColor(kGreen);
c->Draw("M>>hM3(50,1.99,3.99)","cut","esame");
c1->Modified();
c1->Update();
c1->Print("pics/M_nClCut_tpc.png");


//========
//TPC signal: ncl + tpc +  tof cut
//=======
c1->SetLogx(1)
c1->SetLogy(0)
c1->SetLogz(1)
c->SetAlias("cut","TOFcut2&&TPCcut&&NClcut")
c->Draw("Leg1_TPC_signal:Leg1_P_InnerParam>>sigTPC","cut","colz")
c->Draw("Leg2_TPC_signal:Leg2_P_InnerParam>>+sigTPC","cut","colz")
c1->Modified();
c1->Update();
c1->Print("pics/TPCsignal_P_cutNcl_tpc.png");

//--- Mass

c1->SetLogx(0)
c1->SetLogy(0)
c1->SetLogz(0)
c->SetAlias("cut","1==1")
c->SetAlias("cut","TPCcut&&NClcut")
c->SetLineColor(kGreen);
c->Draw("M>>hM(50,1.99,3.99)","cut","e");
hM->SetTitle(";Inv. Mass [GeV]; Pair (e+e-) / 40GeV")
hM->SetMinimum(.1);
c->SetAlias("cut","TOFcut2&&TPCcut&&NClcut")
c->SetLineColor(kBlue);
c->Draw("M>>hM2(50,1.99,3.99)","cut","esame");
c1->Modified();
c1->Update();
c1->Print("pics/M_nClCut_tpc.png");

//========
//Inv Mass: different cuts
//=======

c1->SetLogx(0)
c1->SetLogy(0)
c1->SetLogz(0)
c->SetAlias("cut","Ptcut&&TPCcut&&NClcut")
c->SetLineColor(kMagenta);
c->SetMarkerColor(kMagenta);
c->SetMarkerStyle(22);
c->Draw("M>>hM(50,1.99,3.99)","cut","e");

c->SetAlias("cut","Pcut&&TPCcut&&NClcut")
c->SetLineColor(kCyan+1);
c->SetMarkerColor(kCyan+1);
c->SetMarkerStyle(21);
c->Draw("M>>hM2(50,1.99,3.99)","cut","esame");

c->SetAlias("cut","TOFcut2&&TPCcut&&NClcut")
c->SetMarkerStyle(20);
c->SetLineColor(kBlue);
c->SetMarkerColor(kBlue);
c->Draw("M>>hM3(50,1.99,3.99)","cut","esame");

c1->Modified();
c1->Update();
c1->Print("pics/M_nClCut_tpc_tof.png");




c->SetAlias("NClcut","Leg1_NclsTPC>90&&Leg2_NclsTPC>90");
c->SetAlias("Ptcut","Leg1_Pt>1&&Leg2_Pt>1")
c->SetAlias("PairT","PairType==1");
c->SetAlias("cut","NClcut&&Ptcut&&PairT")


c->SetAlias("cutE","abs(Leg1_TPC_nSigma_Electrons)<3&&abs(Leg2_TPC_nSigma_Electrons)<3");
c->SetAlias("cutPi","abs(Leg1_TPC_nSigma_Pions)>3&&abs(Leg2_TPC_nSigma_Pions)>3");
c->SetAlias("cutP","(Leg1_TPC_nSigma_Protons)>3&&(Leg2_TPC_nSigma_Protons)>3");
c->SetAlias("cut","NClcut&&Ptcut&&PairT&&cutE&&cutPi&&cutP")

c->SetAlias("eta","abs(Leg1_Eta)<0.88&&abs(Leg1_Eta)<0.88");
c->SetAlias("rap","abs(Y)<0.88");
c->SetAlias("spdFirst","(Leg1_ITS_clusterMap&1)==1&&(Leg2_ITS_clusterMap&1)==1")
c->SetAlias("cut","NClcut&&Ptcut&&PairT&&cutE&&cutPi&&cutP&&eta&&rap&&spdFirst")
 c->Draw("M>>hM(50,1.98,1.98+50*.04)","cut","e")


c->SetAlias("cutProL1",Form("Leg1_TPC_nSigma_Electrons>(%f*%f+(AliExternalTrackParam::BetheBlochAleph(Leg1_P_InnerParam/%f,0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00)-AliExternalTrackParam::BetheBlochAleph(Leg1_P_InnerParam/%f,0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00)))/%f",nSigma,resolution, AliPID::ParticleMass(AliPID::kProton), AliPID::ParticleMass(AliPID::kElectron), resolution))

c->SetAlias("cutProL2",Form("Leg2_TPC_nSigma_Electrons>(%f*%f+(AliExternalTrackParam::BetheBlochAleph(Leg2_P_InnerParam/%f,0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00)-AliExternalTrackParam::BetheBlochAleph(Leg2_P_InnerParam/%f,0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00)))/%f",nSigma,resolution, AliPID::ParticleMass(AliPID::kProton), AliPID::ParticleMass(AliPID::kElectron), resolution))

c->SetAlias("cutPioL1",Form("Leg1_TPC_nSigma_Electrons>(%f*%f+(AliExternalTrackParam::BetheBlochAleph(Leg1_P_InnerParam/%f,0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00)-AliExternalTrackParam::BetheBlochAleph(Leg1_P_InnerParam/%f,0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00)))/%f",nSigma,resolution, AliPID::ParticleMass(AliPID::kPion), AliPID::ParticleMass(AliPID::kElectron), resolution))

c->SetAlias("cutPioL2",Form("Leg2_TPC_nSigma_Electrons>(%f*%f+(AliExternalTrackParam::BetheBlochAleph(Leg2_P_InnerParam/%f,0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00)-AliExternalTrackParam::BetheBlochAleph(Leg2_P_InnerParam/%f,0.0283086/0.97,2.63394e+01,5.04114e-11,2.12543e+00,4.88663e+00)))/%f",nSigma,resolution, AliPID::ParticleMass(AliPID::kPion), AliPID::ParticleMass(AliPID::kElectron), resolution))

c->SetAlias("cutPro","cutProL1&&cutProL2");
c->SetAlias("cutPio","cutPioL1&&cutPioL2");


//
// track in or out of TRD
//
c->SetAlias("TRD11","(Leg1_TrackStatus&512)==512 && (Leg2_TrackStatus&512)==512");
c->SetAlias("TRD00","(Leg1_TrackStatus&512)==  0 && (Leg2_TrackStatus&512)==  0");
c->SetAlias("TRD01","(Leg1_TrackStatus&512)==  0 && (Leg2_TrackStatus&512)==512");
c->SetAlias("TRD10","(Leg1_TrackStatus&512)==512 && (Leg2_TrackStatus&512)==  0");

TCanvas *c2=(TCanvas)gROOT->FindObject("c2");
if (!c2) c2=new TCanvas("c2","c2");
c2->Clear()
c2->Divide(2,2);

c->SetAlias("cut","PairType==1 && QA && pidSig && ITS2");

TLine l;
l.SetLineColor(kGray+2);
// l.SetLineWidth(2);
TBox b;
b.SetFillColor(kGray);
b.SetFillStyle(3004);

c2->cd(1);
c->Draw("M>>hM11(125,0.,5.)","cut&TRD11","e");
b.DrawBox(2.92,0,3.16,gPad->GetUymax())
l.DrawLine(3.095,0,3.095,gPad->GetUymax());
c2->cd(2);
c->Draw("M>>hM10(125,0.,5.)","cut&TRD10","e");
b.DrawBox(2.92,0,3.16,gPad->GetUymax())
l.DrawLine(3.095,0,3.095,gPad->GetUymax());
c2->cd(3);
c->Draw("M>>hM01(125,0.,5.)","cut&TRD01","e");
b.DrawBox(2.92,0,3.16,gPad->GetUymax())
l.DrawLine(3.095,0,3.095,gPad->GetUymax());
c2->cd(4);
c->Draw("M>>hM00(125,0.,5.)","cut&TRD00","e");
b.DrawBox(2.92,0,3.16,gPad->GetUymax())
l.DrawLine(3.095,0,3.095,gPad->GetUymax());


//
// number of cluster in ITS
//

TH1F h("hITS","hITS",10,0,10);
for (Int_t i=0; i<6; ++i){
  c->Draw(Form("((Leg2_ITS_clusterMap&%d)==%d)*(%d+1)>>+hITS",i,i,i),"cut");
}

c->SetAlias("nclsITS1","((Leg2_ITS_clusterMap&1)==1) + ((Leg2_ITS_clusterMap&2)==2) + ((Leg2_ITS_clusterMap&4)==4) + ((Leg2_ITS_clusterMap&8)==8) + ((Leg2_ITS_clusterMap&16)==16) + ((Leg2_ITS_clusterMap&32)==32)")

c->SetAlias("nclsITS2","((Leg1_ITS_clusterMap&1)==1) + ((Leg1_ITS_clusterMap&2)==2) + ((Leg1_ITS_clusterMap&4)==4) + ((Leg1_ITS_clusterMap&8)==8) + ((Leg1_ITS_clusterMap&16)==16) + ((Leg1_ITS_clusterMap&32)==32)")




*/

 MakeDataReport.C:1
 MakeDataReport.C:2
 MakeDataReport.C:3
 MakeDataReport.C:4
 MakeDataReport.C:5
 MakeDataReport.C:6
 MakeDataReport.C:7
 MakeDataReport.C:8
 MakeDataReport.C:9
 MakeDataReport.C:10
 MakeDataReport.C:11
 MakeDataReport.C:12
 MakeDataReport.C:13
 MakeDataReport.C:14
 MakeDataReport.C:15
 MakeDataReport.C:16
 MakeDataReport.C:17
 MakeDataReport.C:18
 MakeDataReport.C:19
 MakeDataReport.C:20
 MakeDataReport.C:21
 MakeDataReport.C:22
 MakeDataReport.C:23
 MakeDataReport.C:24
 MakeDataReport.C:25
 MakeDataReport.C:26
 MakeDataReport.C:27
 MakeDataReport.C:28
 MakeDataReport.C:29
 MakeDataReport.C:30
 MakeDataReport.C:31
 MakeDataReport.C:32
 MakeDataReport.C:33
 MakeDataReport.C:34
 MakeDataReport.C:35
 MakeDataReport.C:36
 MakeDataReport.C:37
 MakeDataReport.C:38
 MakeDataReport.C:39
 MakeDataReport.C:40
 MakeDataReport.C:41
 MakeDataReport.C:42
 MakeDataReport.C:43
 MakeDataReport.C:44
 MakeDataReport.C:45
 MakeDataReport.C:46
 MakeDataReport.C:47
 MakeDataReport.C:48
 MakeDataReport.C:49
 MakeDataReport.C:50
 MakeDataReport.C:51
 MakeDataReport.C:52
 MakeDataReport.C:53
 MakeDataReport.C:54
 MakeDataReport.C:55
 MakeDataReport.C:56
 MakeDataReport.C:57
 MakeDataReport.C:58
 MakeDataReport.C:59
 MakeDataReport.C:60
 MakeDataReport.C:61
 MakeDataReport.C:62
 MakeDataReport.C:63
 MakeDataReport.C:64
 MakeDataReport.C:65
 MakeDataReport.C:66
 MakeDataReport.C:67
 MakeDataReport.C:68
 MakeDataReport.C:69
 MakeDataReport.C:70
 MakeDataReport.C:71
 MakeDataReport.C:72
 MakeDataReport.C:73
 MakeDataReport.C:74
 MakeDataReport.C:75
 MakeDataReport.C:76
 MakeDataReport.C:77
 MakeDataReport.C:78
 MakeDataReport.C:79
 MakeDataReport.C:80
 MakeDataReport.C:81
 MakeDataReport.C:82
 MakeDataReport.C:83
 MakeDataReport.C:84
 MakeDataReport.C:85
 MakeDataReport.C:86
 MakeDataReport.C:87
 MakeDataReport.C:88
 MakeDataReport.C:89
 MakeDataReport.C:90
 MakeDataReport.C:91
 MakeDataReport.C:92
 MakeDataReport.C:93
 MakeDataReport.C:94
 MakeDataReport.C:95
 MakeDataReport.C:96
 MakeDataReport.C:97
 MakeDataReport.C:98
 MakeDataReport.C:99
 MakeDataReport.C:100
 MakeDataReport.C:101
 MakeDataReport.C:102
 MakeDataReport.C:103
 MakeDataReport.C:104
 MakeDataReport.C:105
 MakeDataReport.C:106
 MakeDataReport.C:107
 MakeDataReport.C:108
 MakeDataReport.C:109
 MakeDataReport.C:110
 MakeDataReport.C:111
 MakeDataReport.C:112
 MakeDataReport.C:113
 MakeDataReport.C:114
 MakeDataReport.C:115
 MakeDataReport.C:116
 MakeDataReport.C:117
 MakeDataReport.C:118
 MakeDataReport.C:119
 MakeDataReport.C:120
 MakeDataReport.C:121
 MakeDataReport.C:122
 MakeDataReport.C:123
 MakeDataReport.C:124
 MakeDataReport.C:125
 MakeDataReport.C:126
 MakeDataReport.C:127
 MakeDataReport.C:128
 MakeDataReport.C:129
 MakeDataReport.C:130
 MakeDataReport.C:131
 MakeDataReport.C:132
 MakeDataReport.C:133
 MakeDataReport.C:134
 MakeDataReport.C:135
 MakeDataReport.C:136
 MakeDataReport.C:137
 MakeDataReport.C:138
 MakeDataReport.C:139
 MakeDataReport.C:140
 MakeDataReport.C:141
 MakeDataReport.C:142
 MakeDataReport.C:143
 MakeDataReport.C:144
 MakeDataReport.C:145
 MakeDataReport.C:146
 MakeDataReport.C:147
 MakeDataReport.C:148
 MakeDataReport.C:149
 MakeDataReport.C:150
 MakeDataReport.C:151
 MakeDataReport.C:152
 MakeDataReport.C:153
 MakeDataReport.C:154
 MakeDataReport.C:155
 MakeDataReport.C:156
 MakeDataReport.C:157
 MakeDataReport.C:158
 MakeDataReport.C:159
 MakeDataReport.C:160
 MakeDataReport.C:161
 MakeDataReport.C:162
 MakeDataReport.C:163
 MakeDataReport.C:164
 MakeDataReport.C:165
 MakeDataReport.C:166
 MakeDataReport.C:167
 MakeDataReport.C:168
 MakeDataReport.C:169
 MakeDataReport.C:170
 MakeDataReport.C:171
 MakeDataReport.C:172
 MakeDataReport.C:173
 MakeDataReport.C:174
 MakeDataReport.C:175
 MakeDataReport.C:176
 MakeDataReport.C:177
 MakeDataReport.C:178
 MakeDataReport.C:179
 MakeDataReport.C:180
 MakeDataReport.C:181
 MakeDataReport.C:182
 MakeDataReport.C:183
 MakeDataReport.C:184
 MakeDataReport.C:185
 MakeDataReport.C:186
 MakeDataReport.C:187
 MakeDataReport.C:188
 MakeDataReport.C:189
 MakeDataReport.C:190
 MakeDataReport.C:191
 MakeDataReport.C:192
 MakeDataReport.C:193
 MakeDataReport.C:194
 MakeDataReport.C:195
 MakeDataReport.C:196
 MakeDataReport.C:197
 MakeDataReport.C:198
 MakeDataReport.C:199
 MakeDataReport.C:200
 MakeDataReport.C:201
 MakeDataReport.C:202
 MakeDataReport.C:203
 MakeDataReport.C:204
 MakeDataReport.C:205
 MakeDataReport.C:206
 MakeDataReport.C:207
 MakeDataReport.C:208
 MakeDataReport.C:209
 MakeDataReport.C:210
 MakeDataReport.C:211
 MakeDataReport.C:212
 MakeDataReport.C:213
 MakeDataReport.C:214
 MakeDataReport.C:215
 MakeDataReport.C:216
 MakeDataReport.C:217
 MakeDataReport.C:218
 MakeDataReport.C:219
 MakeDataReport.C:220
 MakeDataReport.C:221
 MakeDataReport.C:222
 MakeDataReport.C:223
 MakeDataReport.C:224
 MakeDataReport.C:225
 MakeDataReport.C:226
 MakeDataReport.C:227
 MakeDataReport.C:228
 MakeDataReport.C:229
 MakeDataReport.C:230
 MakeDataReport.C:231
 MakeDataReport.C:232
 MakeDataReport.C:233
 MakeDataReport.C:234
 MakeDataReport.C:235
 MakeDataReport.C:236
 MakeDataReport.C:237
 MakeDataReport.C:238
 MakeDataReport.C:239
 MakeDataReport.C:240
 MakeDataReport.C:241
 MakeDataReport.C:242
 MakeDataReport.C:243
 MakeDataReport.C:244
 MakeDataReport.C:245
 MakeDataReport.C:246
 MakeDataReport.C:247
 MakeDataReport.C:248
 MakeDataReport.C:249
 MakeDataReport.C:250
 MakeDataReport.C:251
 MakeDataReport.C:252
 MakeDataReport.C:253
 MakeDataReport.C:254
 MakeDataReport.C:255
 MakeDataReport.C:256
 MakeDataReport.C:257
 MakeDataReport.C:258
 MakeDataReport.C:259
 MakeDataReport.C:260
 MakeDataReport.C:261
 MakeDataReport.C:262
 MakeDataReport.C:263
 MakeDataReport.C:264
 MakeDataReport.C:265
 MakeDataReport.C:266
 MakeDataReport.C:267
 MakeDataReport.C:268
 MakeDataReport.C:269
 MakeDataReport.C:270
 MakeDataReport.C:271
 MakeDataReport.C:272
 MakeDataReport.C:273
 MakeDataReport.C:274
 MakeDataReport.C:275
 MakeDataReport.C:276
 MakeDataReport.C:277
 MakeDataReport.C:278
 MakeDataReport.C:279
 MakeDataReport.C:280
 MakeDataReport.C:281
 MakeDataReport.C:282
 MakeDataReport.C:283
 MakeDataReport.C:284
 MakeDataReport.C:285
 MakeDataReport.C:286
 MakeDataReport.C:287
 MakeDataReport.C:288
 MakeDataReport.C:289
 MakeDataReport.C:290
 MakeDataReport.C:291
 MakeDataReport.C:292
 MakeDataReport.C:293
 MakeDataReport.C:294
 MakeDataReport.C:295
 MakeDataReport.C:296
 MakeDataReport.C:297
 MakeDataReport.C:298
 MakeDataReport.C:299
 MakeDataReport.C:300
 MakeDataReport.C:301
 MakeDataReport.C:302
 MakeDataReport.C:303
 MakeDataReport.C:304
 MakeDataReport.C:305
 MakeDataReport.C:306
 MakeDataReport.C:307
 MakeDataReport.C:308
 MakeDataReport.C:309
 MakeDataReport.C:310
 MakeDataReport.C:311
 MakeDataReport.C:312
 MakeDataReport.C:313
 MakeDataReport.C:314
 MakeDataReport.C:315
 MakeDataReport.C:316
 MakeDataReport.C:317
 MakeDataReport.C:318
 MakeDataReport.C:319
 MakeDataReport.C:320
 MakeDataReport.C:321
 MakeDataReport.C:322
 MakeDataReport.C:323
 MakeDataReport.C:324
 MakeDataReport.C:325
 MakeDataReport.C:326
 MakeDataReport.C:327
 MakeDataReport.C:328
 MakeDataReport.C:329
 MakeDataReport.C:330
 MakeDataReport.C:331
 MakeDataReport.C:332
 MakeDataReport.C:333
 MakeDataReport.C:334
 MakeDataReport.C:335
 MakeDataReport.C:336
 MakeDataReport.C:337
 MakeDataReport.C:338
 MakeDataReport.C:339
 MakeDataReport.C:340
 MakeDataReport.C:341
 MakeDataReport.C:342
 MakeDataReport.C:343
 MakeDataReport.C:344
 MakeDataReport.C:345
 MakeDataReport.C:346
 MakeDataReport.C:347
 MakeDataReport.C:348
 MakeDataReport.C:349
 MakeDataReport.C:350
 MakeDataReport.C:351
 MakeDataReport.C:352
 MakeDataReport.C:353
 MakeDataReport.C:354
 MakeDataReport.C:355
 MakeDataReport.C:356
 MakeDataReport.C:357
 MakeDataReport.C:358
 MakeDataReport.C:359
 MakeDataReport.C:360
 MakeDataReport.C:361
 MakeDataReport.C:362
 MakeDataReport.C:363
 MakeDataReport.C:364
 MakeDataReport.C:365
 MakeDataReport.C:366
 MakeDataReport.C:367
 MakeDataReport.C:368
 MakeDataReport.C:369
 MakeDataReport.C:370
 MakeDataReport.C:371
 MakeDataReport.C:372
 MakeDataReport.C:373
 MakeDataReport.C:374
 MakeDataReport.C:375
 MakeDataReport.C:376
 MakeDataReport.C:377
 MakeDataReport.C:378
 MakeDataReport.C:379
 MakeDataReport.C:380
 MakeDataReport.C:381
 MakeDataReport.C:382
 MakeDataReport.C:383
 MakeDataReport.C:384
 MakeDataReport.C:385
 MakeDataReport.C:386
 MakeDataReport.C:387
 MakeDataReport.C:388
 MakeDataReport.C:389
 MakeDataReport.C:390
 MakeDataReport.C:391
 MakeDataReport.C:392
 MakeDataReport.C:393
 MakeDataReport.C:394
 MakeDataReport.C:395
 MakeDataReport.C:396
 MakeDataReport.C:397
 MakeDataReport.C:398
 MakeDataReport.C:399
 MakeDataReport.C:400
 MakeDataReport.C:401
 MakeDataReport.C:402
 MakeDataReport.C:403
 MakeDataReport.C:404
 MakeDataReport.C:405
 MakeDataReport.C:406
 MakeDataReport.C:407
 MakeDataReport.C:408
 MakeDataReport.C:409
 MakeDataReport.C:410
 MakeDataReport.C:411
 MakeDataReport.C:412
 MakeDataReport.C:413
 MakeDataReport.C:414
 MakeDataReport.C:415
 MakeDataReport.C:416
 MakeDataReport.C:417
 MakeDataReport.C:418
 MakeDataReport.C:419
 MakeDataReport.C:420
 MakeDataReport.C:421
 MakeDataReport.C:422
 MakeDataReport.C:423
 MakeDataReport.C:424
 MakeDataReport.C:425
 MakeDataReport.C:426
 MakeDataReport.C:427
 MakeDataReport.C:428
 MakeDataReport.C:429
 MakeDataReport.C:430
 MakeDataReport.C:431
 MakeDataReport.C:432
 MakeDataReport.C:433
 MakeDataReport.C:434
 MakeDataReport.C:435
 MakeDataReport.C:436
 MakeDataReport.C:437
 MakeDataReport.C:438
 MakeDataReport.C:439
 MakeDataReport.C:440
 MakeDataReport.C:441
 MakeDataReport.C:442
 MakeDataReport.C:443
 MakeDataReport.C:444
 MakeDataReport.C:445
 MakeDataReport.C:446
 MakeDataReport.C:447
 MakeDataReport.C:448
 MakeDataReport.C:449
 MakeDataReport.C:450
 MakeDataReport.C:451
 MakeDataReport.C:452
 MakeDataReport.C:453
 MakeDataReport.C:454
 MakeDataReport.C:455
 MakeDataReport.C:456
 MakeDataReport.C:457
 MakeDataReport.C:458
 MakeDataReport.C:459
 MakeDataReport.C:460
 MakeDataReport.C:461
 MakeDataReport.C:462
 MakeDataReport.C:463
 MakeDataReport.C:464
 MakeDataReport.C:465
 MakeDataReport.C:466
 MakeDataReport.C:467
 MakeDataReport.C:468
 MakeDataReport.C:469
 MakeDataReport.C:470
 MakeDataReport.C:471
 MakeDataReport.C:472
 MakeDataReport.C:473
 MakeDataReport.C:474
 MakeDataReport.C:475
 MakeDataReport.C:476
 MakeDataReport.C:477
 MakeDataReport.C:478
 MakeDataReport.C:479
 MakeDataReport.C:480
 MakeDataReport.C:481
 MakeDataReport.C:482
 MakeDataReport.C:483
 MakeDataReport.C:484
 MakeDataReport.C:485
 MakeDataReport.C:486
 MakeDataReport.C:487
 MakeDataReport.C:488
 MakeDataReport.C:489
 MakeDataReport.C:490
 MakeDataReport.C:491
 MakeDataReport.C:492
 MakeDataReport.C:493
 MakeDataReport.C:494
 MakeDataReport.C:495
 MakeDataReport.C:496
 MakeDataReport.C:497
 MakeDataReport.C:498
 MakeDataReport.C:499
 MakeDataReport.C:500
 MakeDataReport.C:501
 MakeDataReport.C:502
 MakeDataReport.C:503
 MakeDataReport.C:504
 MakeDataReport.C:505
 MakeDataReport.C:506
 MakeDataReport.C:507
 MakeDataReport.C:508
 MakeDataReport.C:509
 MakeDataReport.C:510
 MakeDataReport.C:511
 MakeDataReport.C:512
 MakeDataReport.C:513
 MakeDataReport.C:514
 MakeDataReport.C:515
 MakeDataReport.C:516
 MakeDataReport.C:517
 MakeDataReport.C:518
 MakeDataReport.C:519
 MakeDataReport.C:520
 MakeDataReport.C:521
 MakeDataReport.C:522
 MakeDataReport.C:523
 MakeDataReport.C:524
 MakeDataReport.C:525
 MakeDataReport.C:526
 MakeDataReport.C:527
 MakeDataReport.C:528
 MakeDataReport.C:529
 MakeDataReport.C:530
 MakeDataReport.C:531
 MakeDataReport.C:532
 MakeDataReport.C:533
 MakeDataReport.C:534
 MakeDataReport.C:535
 MakeDataReport.C:536
 MakeDataReport.C:537
 MakeDataReport.C:538
 MakeDataReport.C:539
 MakeDataReport.C:540
 MakeDataReport.C:541
 MakeDataReport.C:542
 MakeDataReport.C:543
 MakeDataReport.C:544
 MakeDataReport.C:545
 MakeDataReport.C:546
 MakeDataReport.C:547
 MakeDataReport.C:548
 MakeDataReport.C:549
 MakeDataReport.C:550
 MakeDataReport.C:551
 MakeDataReport.C:552
 MakeDataReport.C:553
 MakeDataReport.C:554
 MakeDataReport.C:555
 MakeDataReport.C:556
 MakeDataReport.C:557
 MakeDataReport.C:558
 MakeDataReport.C:559
 MakeDataReport.C:560
 MakeDataReport.C:561
 MakeDataReport.C:562
 MakeDataReport.C:563
 MakeDataReport.C:564
 MakeDataReport.C:565
 MakeDataReport.C:566
 MakeDataReport.C:567
 MakeDataReport.C:568
 MakeDataReport.C:569
 MakeDataReport.C:570
 MakeDataReport.C:571
 MakeDataReport.C:572
 MakeDataReport.C:573
 MakeDataReport.C:574
 MakeDataReport.C:575
 MakeDataReport.C:576
 MakeDataReport.C:577
 MakeDataReport.C:578
 MakeDataReport.C:579
 MakeDataReport.C:580
 MakeDataReport.C:581
 MakeDataReport.C:582
 MakeDataReport.C:583
 MakeDataReport.C:584
 MakeDataReport.C:585
 MakeDataReport.C:586
 MakeDataReport.C:587
 MakeDataReport.C:588
 MakeDataReport.C:589
 MakeDataReport.C:590
 MakeDataReport.C:591
 MakeDataReport.C:592
 MakeDataReport.C:593
 MakeDataReport.C:594
 MakeDataReport.C:595
 MakeDataReport.C:596
 MakeDataReport.C:597
 MakeDataReport.C:598
 MakeDataReport.C:599
 MakeDataReport.C:600
 MakeDataReport.C:601
 MakeDataReport.C:602
 MakeDataReport.C:603
 MakeDataReport.C:604
 MakeDataReport.C:605
 MakeDataReport.C:606
 MakeDataReport.C:607
 MakeDataReport.C:608
 MakeDataReport.C:609
 MakeDataReport.C:610
 MakeDataReport.C:611
 MakeDataReport.C:612
 MakeDataReport.C:613
 MakeDataReport.C:614
 MakeDataReport.C:615
 MakeDataReport.C:616
 MakeDataReport.C:617
 MakeDataReport.C:618
 MakeDataReport.C:619
 MakeDataReport.C:620
 MakeDataReport.C:621
 MakeDataReport.C:622
 MakeDataReport.C:623
 MakeDataReport.C:624
 MakeDataReport.C:625
 MakeDataReport.C:626
 MakeDataReport.C:627
 MakeDataReport.C:628
 MakeDataReport.C:629
 MakeDataReport.C:630
 MakeDataReport.C:631
 MakeDataReport.C:632
 MakeDataReport.C:633
 MakeDataReport.C:634
 MakeDataReport.C:635
 MakeDataReport.C:636
 MakeDataReport.C:637
 MakeDataReport.C:638
 MakeDataReport.C:639
 MakeDataReport.C:640
 MakeDataReport.C:641
 MakeDataReport.C:642
 MakeDataReport.C:643
 MakeDataReport.C:644
 MakeDataReport.C:645
 MakeDataReport.C:646
 MakeDataReport.C:647
 MakeDataReport.C:648
 MakeDataReport.C:649
 MakeDataReport.C:650
 MakeDataReport.C:651
 MakeDataReport.C:652
 MakeDataReport.C:653
 MakeDataReport.C:654
 MakeDataReport.C:655
 MakeDataReport.C:656
 MakeDataReport.C:657
 MakeDataReport.C:658
 MakeDataReport.C:659
 MakeDataReport.C:660
 MakeDataReport.C:661
 MakeDataReport.C:662
 MakeDataReport.C:663
 MakeDataReport.C:664
 MakeDataReport.C:665
 MakeDataReport.C:666
 MakeDataReport.C:667
 MakeDataReport.C:668
 MakeDataReport.C:669
 MakeDataReport.C:670
 MakeDataReport.C:671
 MakeDataReport.C:672
 MakeDataReport.C:673
 MakeDataReport.C:674
 MakeDataReport.C:675
 MakeDataReport.C:676
 MakeDataReport.C:677
 MakeDataReport.C:678
 MakeDataReport.C:679
 MakeDataReport.C:680
 MakeDataReport.C:681
 MakeDataReport.C:682
 MakeDataReport.C:683
 MakeDataReport.C:684
 MakeDataReport.C:685
 MakeDataReport.C:686
 MakeDataReport.C:687
 MakeDataReport.C:688
 MakeDataReport.C:689
 MakeDataReport.C:690
 MakeDataReport.C:691
 MakeDataReport.C:692
 MakeDataReport.C:693
 MakeDataReport.C:694
 MakeDataReport.C:695
 MakeDataReport.C:696
 MakeDataReport.C:697
 MakeDataReport.C:698
 MakeDataReport.C:699
 MakeDataReport.C:700
 MakeDataReport.C:701
 MakeDataReport.C:702
 MakeDataReport.C:703
 MakeDataReport.C:704
 MakeDataReport.C:705
 MakeDataReport.C:706
 MakeDataReport.C:707
 MakeDataReport.C:708
 MakeDataReport.C:709
 MakeDataReport.C:710
 MakeDataReport.C:711
 MakeDataReport.C:712
 MakeDataReport.C:713
 MakeDataReport.C:714
 MakeDataReport.C:715
 MakeDataReport.C:716
 MakeDataReport.C:717
 MakeDataReport.C:718
 MakeDataReport.C:719
 MakeDataReport.C:720
 MakeDataReport.C:721
 MakeDataReport.C:722
 MakeDataReport.C:723
 MakeDataReport.C:724
 MakeDataReport.C:725
 MakeDataReport.C:726
 MakeDataReport.C:727
 MakeDataReport.C:728
 MakeDataReport.C:729
 MakeDataReport.C:730
 MakeDataReport.C:731
 MakeDataReport.C:732
 MakeDataReport.C:733
 MakeDataReport.C:734
 MakeDataReport.C:735
 MakeDataReport.C:736
 MakeDataReport.C:737
 MakeDataReport.C:738
 MakeDataReport.C:739
 MakeDataReport.C:740
 MakeDataReport.C:741
 MakeDataReport.C:742
 MakeDataReport.C:743
 MakeDataReport.C:744
 MakeDataReport.C:745
 MakeDataReport.C:746
 MakeDataReport.C:747
 MakeDataReport.C:748
 MakeDataReport.C:749
 MakeDataReport.C:750
 MakeDataReport.C:751
 MakeDataReport.C:752
 MakeDataReport.C:753
 MakeDataReport.C:754
 MakeDataReport.C:755
 MakeDataReport.C:756
 MakeDataReport.C:757
 MakeDataReport.C:758
 MakeDataReport.C:759
 MakeDataReport.C:760
 MakeDataReport.C:761
 MakeDataReport.C:762
 MakeDataReport.C:763
 MakeDataReport.C:764
 MakeDataReport.C:765
 MakeDataReport.C:766
 MakeDataReport.C:767
 MakeDataReport.C:768
 MakeDataReport.C:769
 MakeDataReport.C:770
 MakeDataReport.C:771
 MakeDataReport.C:772
 MakeDataReport.C:773
 MakeDataReport.C:774
 MakeDataReport.C:775
 MakeDataReport.C:776
 MakeDataReport.C:777
 MakeDataReport.C:778
 MakeDataReport.C:779
 MakeDataReport.C:780
 MakeDataReport.C:781
 MakeDataReport.C:782
 MakeDataReport.C:783
 MakeDataReport.C:784
 MakeDataReport.C:785
 MakeDataReport.C:786
 MakeDataReport.C:787
 MakeDataReport.C:788
 MakeDataReport.C:789
 MakeDataReport.C:790
 MakeDataReport.C:791
 MakeDataReport.C:792
 MakeDataReport.C:793
 MakeDataReport.C:794
 MakeDataReport.C:795
 MakeDataReport.C:796
 MakeDataReport.C:797
 MakeDataReport.C:798
 MakeDataReport.C:799
 MakeDataReport.C:800
 MakeDataReport.C:801
 MakeDataReport.C:802
 MakeDataReport.C:803
 MakeDataReport.C:804
 MakeDataReport.C:805
 MakeDataReport.C:806
 MakeDataReport.C:807
 MakeDataReport.C:808
 MakeDataReport.C:809
 MakeDataReport.C:810
 MakeDataReport.C:811
 MakeDataReport.C:812
 MakeDataReport.C:813
 MakeDataReport.C:814
 MakeDataReport.C:815
 MakeDataReport.C:816
 MakeDataReport.C:817
 MakeDataReport.C:818
 MakeDataReport.C:819
 MakeDataReport.C:820
 MakeDataReport.C:821
 MakeDataReport.C:822
 MakeDataReport.C:823
 MakeDataReport.C:824
 MakeDataReport.C:825
 MakeDataReport.C:826
 MakeDataReport.C:827
 MakeDataReport.C:828
 MakeDataReport.C:829
 MakeDataReport.C:830
 MakeDataReport.C:831
 MakeDataReport.C:832
 MakeDataReport.C:833
 MakeDataReport.C:834
 MakeDataReport.C:835
 MakeDataReport.C:836
 MakeDataReport.C:837
 MakeDataReport.C:838
 MakeDataReport.C:839
 MakeDataReport.C:840
 MakeDataReport.C:841
 MakeDataReport.C:842
 MakeDataReport.C:843
 MakeDataReport.C:844
 MakeDataReport.C:845
 MakeDataReport.C:846
 MakeDataReport.C:847
 MakeDataReport.C:848
 MakeDataReport.C:849
 MakeDataReport.C:850
 MakeDataReport.C:851
 MakeDataReport.C:852
 MakeDataReport.C:853
 MakeDataReport.C:854
 MakeDataReport.C:855
 MakeDataReport.C:856
 MakeDataReport.C:857
 MakeDataReport.C:858
 MakeDataReport.C:859
 MakeDataReport.C:860
 MakeDataReport.C:861
 MakeDataReport.C:862
 MakeDataReport.C:863
 MakeDataReport.C:864
 MakeDataReport.C:865
 MakeDataReport.C:866
 MakeDataReport.C:867
 MakeDataReport.C:868
 MakeDataReport.C:869
 MakeDataReport.C:870
 MakeDataReport.C:871
 MakeDataReport.C:872
 MakeDataReport.C:873
 MakeDataReport.C:874
 MakeDataReport.C:875
 MakeDataReport.C:876
 MakeDataReport.C:877
 MakeDataReport.C:878
 MakeDataReport.C:879
 MakeDataReport.C:880
 MakeDataReport.C:881
 MakeDataReport.C:882
 MakeDataReport.C:883
 MakeDataReport.C:884
 MakeDataReport.C:885
 MakeDataReport.C:886
 MakeDataReport.C:887
 MakeDataReport.C:888
 MakeDataReport.C:889
 MakeDataReport.C:890
 MakeDataReport.C:891
 MakeDataReport.C:892
 MakeDataReport.C:893
 MakeDataReport.C:894
 MakeDataReport.C:895
 MakeDataReport.C:896
 MakeDataReport.C:897
 MakeDataReport.C:898
 MakeDataReport.C:899
 MakeDataReport.C:900
 MakeDataReport.C:901
 MakeDataReport.C:902
 MakeDataReport.C:903
 MakeDataReport.C:904
 MakeDataReport.C:905
 MakeDataReport.C:906
 MakeDataReport.C:907
 MakeDataReport.C:908
 MakeDataReport.C:909
 MakeDataReport.C:910
 MakeDataReport.C:911
 MakeDataReport.C:912
 MakeDataReport.C:913
 MakeDataReport.C:914
 MakeDataReport.C:915
 MakeDataReport.C:916
 MakeDataReport.C:917
 MakeDataReport.C:918
 MakeDataReport.C:919
 MakeDataReport.C:920
 MakeDataReport.C:921
 MakeDataReport.C:922
 MakeDataReport.C:923
 MakeDataReport.C:924
 MakeDataReport.C:925
 MakeDataReport.C:926
 MakeDataReport.C:927
 MakeDataReport.C:928
 MakeDataReport.C:929
 MakeDataReport.C:930
 MakeDataReport.C:931
 MakeDataReport.C:932
 MakeDataReport.C:933
 MakeDataReport.C:934
 MakeDataReport.C:935
 MakeDataReport.C:936
 MakeDataReport.C:937
 MakeDataReport.C:938
 MakeDataReport.C:939
 MakeDataReport.C:940
 MakeDataReport.C:941
 MakeDataReport.C:942
 MakeDataReport.C:943
 MakeDataReport.C:944
 MakeDataReport.C:945
 MakeDataReport.C:946
 MakeDataReport.C:947
 MakeDataReport.C:948
 MakeDataReport.C:949
 MakeDataReport.C:950
 MakeDataReport.C:951
 MakeDataReport.C:952
 MakeDataReport.C:953
 MakeDataReport.C:954
 MakeDataReport.C:955
 MakeDataReport.C:956
 MakeDataReport.C:957
 MakeDataReport.C:958
 MakeDataReport.C:959
 MakeDataReport.C:960
 MakeDataReport.C:961
 MakeDataReport.C:962
 MakeDataReport.C:963
 MakeDataReport.C:964
 MakeDataReport.C:965
 MakeDataReport.C:966
 MakeDataReport.C:967
 MakeDataReport.C:968
 MakeDataReport.C:969
 MakeDataReport.C:970
 MakeDataReport.C:971
 MakeDataReport.C:972
 MakeDataReport.C:973
 MakeDataReport.C:974
 MakeDataReport.C:975
 MakeDataReport.C:976
 MakeDataReport.C:977
 MakeDataReport.C:978
 MakeDataReport.C:979
 MakeDataReport.C:980
 MakeDataReport.C:981
 MakeDataReport.C:982
 MakeDataReport.C:983
 MakeDataReport.C:984
 MakeDataReport.C:985
 MakeDataReport.C:986
 MakeDataReport.C:987
 MakeDataReport.C:988
 MakeDataReport.C:989
 MakeDataReport.C:990
 MakeDataReport.C:991
 MakeDataReport.C:992
 MakeDataReport.C:993
 MakeDataReport.C:994
 MakeDataReport.C:995
 MakeDataReport.C:996
 MakeDataReport.C:997
 MakeDataReport.C:998
 MakeDataReport.C:999
 MakeDataReport.C:1000
 MakeDataReport.C:1001
 MakeDataReport.C:1002
 MakeDataReport.C:1003
 MakeDataReport.C:1004
 MakeDataReport.C:1005
 MakeDataReport.C:1006
 MakeDataReport.C:1007
 MakeDataReport.C:1008
 MakeDataReport.C:1009
 MakeDataReport.C:1010
 MakeDataReport.C:1011
 MakeDataReport.C:1012
 MakeDataReport.C:1013
 MakeDataReport.C:1014
 MakeDataReport.C:1015
 MakeDataReport.C:1016
 MakeDataReport.C:1017
 MakeDataReport.C:1018
 MakeDataReport.C:1019
 MakeDataReport.C:1020
 MakeDataReport.C:1021
 MakeDataReport.C:1022
 MakeDataReport.C:1023
 MakeDataReport.C:1024
 MakeDataReport.C:1025
 MakeDataReport.C:1026
 MakeDataReport.C:1027
 MakeDataReport.C:1028
 MakeDataReport.C:1029
 MakeDataReport.C:1030
 MakeDataReport.C:1031
 MakeDataReport.C:1032
 MakeDataReport.C:1033
 MakeDataReport.C:1034
 MakeDataReport.C:1035
 MakeDataReport.C:1036
 MakeDataReport.C:1037
 MakeDataReport.C:1038
 MakeDataReport.C:1039
 MakeDataReport.C:1040
 MakeDataReport.C:1041
 MakeDataReport.C:1042
 MakeDataReport.C:1043
 MakeDataReport.C:1044
 MakeDataReport.C:1045
 MakeDataReport.C:1046
 MakeDataReport.C:1047
 MakeDataReport.C:1048
 MakeDataReport.C:1049
 MakeDataReport.C:1050
 MakeDataReport.C:1051
 MakeDataReport.C:1052
 MakeDataReport.C:1053
 MakeDataReport.C:1054
 MakeDataReport.C:1055
 MakeDataReport.C:1056
 MakeDataReport.C:1057
 MakeDataReport.C:1058
 MakeDataReport.C:1059
 MakeDataReport.C:1060
 MakeDataReport.C:1061
 MakeDataReport.C:1062
 MakeDataReport.C:1063
 MakeDataReport.C:1064
 MakeDataReport.C:1065
 MakeDataReport.C:1066
 MakeDataReport.C:1067
 MakeDataReport.C:1068
 MakeDataReport.C:1069
 MakeDataReport.C:1070
 MakeDataReport.C:1071
 MakeDataReport.C:1072
 MakeDataReport.C:1073
 MakeDataReport.C:1074
 MakeDataReport.C:1075
 MakeDataReport.C:1076
 MakeDataReport.C:1077
 MakeDataReport.C:1078
 MakeDataReport.C:1079
 MakeDataReport.C:1080
 MakeDataReport.C:1081
 MakeDataReport.C:1082
 MakeDataReport.C:1083
 MakeDataReport.C:1084
 MakeDataReport.C:1085
 MakeDataReport.C:1086
 MakeDataReport.C:1087
 MakeDataReport.C:1088
 MakeDataReport.C:1089
 MakeDataReport.C:1090
 MakeDataReport.C:1091
 MakeDataReport.C:1092
 MakeDataReport.C:1093
 MakeDataReport.C:1094
 MakeDataReport.C:1095
 MakeDataReport.C:1096
 MakeDataReport.C:1097
 MakeDataReport.C:1098
 MakeDataReport.C:1099
 MakeDataReport.C:1100
 MakeDataReport.C:1101
 MakeDataReport.C:1102
 MakeDataReport.C:1103
 MakeDataReport.C:1104
 MakeDataReport.C:1105
 MakeDataReport.C:1106
 MakeDataReport.C:1107
 MakeDataReport.C:1108
 MakeDataReport.C:1109
 MakeDataReport.C:1110
 MakeDataReport.C:1111
 MakeDataReport.C:1112
 MakeDataReport.C:1113
 MakeDataReport.C:1114
 MakeDataReport.C:1115
 MakeDataReport.C:1116
 MakeDataReport.C:1117
 MakeDataReport.C:1118
 MakeDataReport.C:1119
 MakeDataReport.C:1120
 MakeDataReport.C:1121
 MakeDataReport.C:1122
 MakeDataReport.C:1123
 MakeDataReport.C:1124
 MakeDataReport.C:1125
 MakeDataReport.C:1126
 MakeDataReport.C:1127
 MakeDataReport.C:1128
 MakeDataReport.C:1129
 MakeDataReport.C:1130
 MakeDataReport.C:1131
 MakeDataReport.C:1132
 MakeDataReport.C:1133
 MakeDataReport.C:1134
 MakeDataReport.C:1135
 MakeDataReport.C:1136
 MakeDataReport.C:1137
 MakeDataReport.C:1138
 MakeDataReport.C:1139
 MakeDataReport.C:1140
 MakeDataReport.C:1141
 MakeDataReport.C:1142
 MakeDataReport.C:1143
 MakeDataReport.C:1144
 MakeDataReport.C:1145
 MakeDataReport.C:1146
 MakeDataReport.C:1147
 MakeDataReport.C:1148
 MakeDataReport.C:1149
 MakeDataReport.C:1150
 MakeDataReport.C:1151
 MakeDataReport.C:1152
 MakeDataReport.C:1153
 MakeDataReport.C:1154
 MakeDataReport.C:1155
 MakeDataReport.C:1156
 MakeDataReport.C:1157
 MakeDataReport.C:1158
 MakeDataReport.C:1159
 MakeDataReport.C:1160
 MakeDataReport.C:1161
 MakeDataReport.C:1162
 MakeDataReport.C:1163
 MakeDataReport.C:1164
 MakeDataReport.C:1165
 MakeDataReport.C:1166
 MakeDataReport.C:1167
 MakeDataReport.C:1168
 MakeDataReport.C:1169
 MakeDataReport.C:1170
 MakeDataReport.C:1171
 MakeDataReport.C:1172
 MakeDataReport.C:1173
 MakeDataReport.C:1174
 MakeDataReport.C:1175
 MakeDataReport.C:1176
 MakeDataReport.C:1177
 MakeDataReport.C:1178
 MakeDataReport.C:1179
 MakeDataReport.C:1180
 MakeDataReport.C:1181
 MakeDataReport.C:1182
 MakeDataReport.C:1183
 MakeDataReport.C:1184
 MakeDataReport.C:1185
 MakeDataReport.C:1186
 MakeDataReport.C:1187
 MakeDataReport.C:1188
 MakeDataReport.C:1189
 MakeDataReport.C:1190
 MakeDataReport.C:1191
 MakeDataReport.C:1192
 MakeDataReport.C:1193
 MakeDataReport.C:1194
 MakeDataReport.C:1195
 MakeDataReport.C:1196
 MakeDataReport.C:1197
 MakeDataReport.C:1198
 MakeDataReport.C:1199
 MakeDataReport.C:1200
 MakeDataReport.C:1201
 MakeDataReport.C:1202
 MakeDataReport.C:1203
 MakeDataReport.C:1204
 MakeDataReport.C:1205
 MakeDataReport.C:1206
 MakeDataReport.C:1207
 MakeDataReport.C:1208
 MakeDataReport.C:1209
 MakeDataReport.C:1210
 MakeDataReport.C:1211
 MakeDataReport.C:1212
 MakeDataReport.C:1213
 MakeDataReport.C:1214
 MakeDataReport.C:1215
 MakeDataReport.C:1216
 MakeDataReport.C:1217
 MakeDataReport.C:1218
 MakeDataReport.C:1219
 MakeDataReport.C:1220
 MakeDataReport.C:1221
 MakeDataReport.C:1222
 MakeDataReport.C:1223
 MakeDataReport.C:1224
 MakeDataReport.C:1225
 MakeDataReport.C:1226
 MakeDataReport.C:1227
 MakeDataReport.C:1228
 MakeDataReport.C:1229
 MakeDataReport.C:1230
 MakeDataReport.C:1231
 MakeDataReport.C:1232
 MakeDataReport.C:1233
 MakeDataReport.C:1234
 MakeDataReport.C:1235
 MakeDataReport.C:1236
 MakeDataReport.C:1237
 MakeDataReport.C:1238
 MakeDataReport.C:1239
 MakeDataReport.C:1240
 MakeDataReport.C:1241
 MakeDataReport.C:1242
 MakeDataReport.C:1243
 MakeDataReport.C:1244
 MakeDataReport.C:1245
 MakeDataReport.C:1246
 MakeDataReport.C:1247
 MakeDataReport.C:1248
 MakeDataReport.C:1249
 MakeDataReport.C:1250
 MakeDataReport.C:1251
 MakeDataReport.C:1252
 MakeDataReport.C:1253
 MakeDataReport.C:1254
 MakeDataReport.C:1255
 MakeDataReport.C:1256
 MakeDataReport.C:1257
 MakeDataReport.C:1258
 MakeDataReport.C:1259
 MakeDataReport.C:1260
 MakeDataReport.C:1261
 MakeDataReport.C:1262
 MakeDataReport.C:1263
 MakeDataReport.C:1264
 MakeDataReport.C:1265
 MakeDataReport.C:1266
 MakeDataReport.C:1267
 MakeDataReport.C:1268
 MakeDataReport.C:1269
 MakeDataReport.C:1270
 MakeDataReport.C:1271
 MakeDataReport.C:1272
 MakeDataReport.C:1273
 MakeDataReport.C:1274
 MakeDataReport.C:1275
 MakeDataReport.C:1276
 MakeDataReport.C:1277
 MakeDataReport.C:1278
 MakeDataReport.C:1279
 MakeDataReport.C:1280
 MakeDataReport.C:1281
 MakeDataReport.C:1282
 MakeDataReport.C:1283
 MakeDataReport.C:1284
 MakeDataReport.C:1285
 MakeDataReport.C:1286
 MakeDataReport.C:1287
 MakeDataReport.C:1288
 MakeDataReport.C:1289
 MakeDataReport.C:1290
 MakeDataReport.C:1291
 MakeDataReport.C:1292
 MakeDataReport.C:1293
 MakeDataReport.C:1294
 MakeDataReport.C:1295
 MakeDataReport.C:1296
 MakeDataReport.C:1297
 MakeDataReport.C:1298
 MakeDataReport.C:1299
 MakeDataReport.C:1300
 MakeDataReport.C:1301
 MakeDataReport.C:1302
 MakeDataReport.C:1303
 MakeDataReport.C:1304
 MakeDataReport.C:1305
 MakeDataReport.C:1306
 MakeDataReport.C:1307
 MakeDataReport.C:1308
 MakeDataReport.C:1309
 MakeDataReport.C:1310
 MakeDataReport.C:1311
 MakeDataReport.C:1312
 MakeDataReport.C:1313
 MakeDataReport.C:1314
 MakeDataReport.C:1315
 MakeDataReport.C:1316
 MakeDataReport.C:1317
 MakeDataReport.C:1318
 MakeDataReport.C:1319
 MakeDataReport.C:1320
 MakeDataReport.C:1321
 MakeDataReport.C:1322
 MakeDataReport.C:1323
 MakeDataReport.C:1324
 MakeDataReport.C:1325
 MakeDataReport.C:1326
 MakeDataReport.C:1327
 MakeDataReport.C:1328
 MakeDataReport.C:1329
 MakeDataReport.C:1330
 MakeDataReport.C:1331
 MakeDataReport.C:1332
 MakeDataReport.C:1333
 MakeDataReport.C:1334
 MakeDataReport.C:1335
 MakeDataReport.C:1336
 MakeDataReport.C:1337
 MakeDataReport.C:1338
 MakeDataReport.C:1339
 MakeDataReport.C:1340
 MakeDataReport.C:1341
 MakeDataReport.C:1342
 MakeDataReport.C:1343
 MakeDataReport.C:1344
 MakeDataReport.C:1345
 MakeDataReport.C:1346
 MakeDataReport.C:1347
 MakeDataReport.C:1348
 MakeDataReport.C:1349
 MakeDataReport.C:1350
 MakeDataReport.C:1351
 MakeDataReport.C:1352
 MakeDataReport.C:1353
 MakeDataReport.C:1354
 MakeDataReport.C:1355
 MakeDataReport.C:1356
 MakeDataReport.C:1357
 MakeDataReport.C:1358
 MakeDataReport.C:1359
 MakeDataReport.C:1360
 MakeDataReport.C:1361
 MakeDataReport.C:1362
 MakeDataReport.C:1363
 MakeDataReport.C:1364
 MakeDataReport.C:1365
 MakeDataReport.C:1366
 MakeDataReport.C:1367
 MakeDataReport.C:1368
 MakeDataReport.C:1369
 MakeDataReport.C:1370
 MakeDataReport.C:1371
 MakeDataReport.C:1372
 MakeDataReport.C:1373
 MakeDataReport.C:1374
 MakeDataReport.C:1375
 MakeDataReport.C:1376
 MakeDataReport.C:1377
 MakeDataReport.C:1378
 MakeDataReport.C:1379
 MakeDataReport.C:1380