ROOT logo
void QAPlots( AliSpectraAODHistoManager* hman_data, AliSpectraAODHistoManager* hman_mc,
	      AliSpectraAODEventCuts* ecuts_data, AliSpectraAODEventCuts* ecuts_mc,
	      AliSpectraAODTrackCuts* tcuts_data, AliSpectraAODTrackCuts* tcuts_mc,
	      TFile * fout){
  gSystem->Load("libPWGLFSPECTRA");

  //vtx distr in data and MC before and after event selection
  TCanvas *cVtx=new TCanvas("Vtxdistr","Vtxdistr",700,500);
  TH1F *hVtxBef_data=ecuts_data->GetHistoVtxBefSel();
  hVtxBef_data->Scale(1./ecuts_data->NumberOfProcessedEvents());
  hVtxBef_data->SetTitle(Form("%s - data",hVtxBef_data->GetTitle()));
  TH1F *hVtxBef_mc=ecuts_mc->GetHistoVtxBefSel();
  hVtxBef_mc->Scale(1./ecuts_mc->NumberOfProcessedEvents());
  hVtxBef_mc->SetTitle(Form("%s - mc",hVtxBef_mc->GetTitle()));
  hVtxBef_mc->SetLineColor(2);
  cVtx->Divide(1,2);
  cVtx->cd(1);
  gPad->SetGridy();
  gPad->SetGridx();
  hVtxBef_data->DrawClone("lhist");
  hVtxBef_mc->DrawClone("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  TH1F *hVtxAft_data=ecuts_data->GetHistoVtxAftSel();
  hVtxAft_data->Scale(1./ecuts_data->NumberOfEvents());
  hVtxAft_data->SetTitle(Form("%s - data",hVtxAft_data->GetTitle()));
  TH1F *hVtxAft_mc=ecuts_mc->GetHistoVtxAftSel();
  hVtxAft_mc->Scale(1./ecuts_mc->NumberOfEvents());
  hVtxAft_mc->SetTitle(Form("%s - mc",hVtxAft_mc->GetTitle()));
  hVtxAft_mc->SetLineColor(2);
  cVtx->cd(2);
  gPad->SetGridy();
  gPad->SetGridx();
  hVtxAft_data->DrawClone("lhist");
  hVtxAft_mc->DrawClone("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  
  //eta distr in data and MC before and after event selection
  TCanvas *cEta=new TCanvas("Etadistr","Etadistr",700,500);
  TH1F *hEtaBef_data=ecuts_data->GetHistoEtaBefSel();
  hEtaBef_data->Scale(1./ecuts_data->NumberOfProcessedEvents());
  hEtaBef_data->SetTitle(Form("%s - data",hEtaBef_data->GetTitle()));
  TH1F *hEtaBef_mc=ecuts_mc->GetHistoEtaBefSel();
  hEtaBef_mc->Scale(1./ecuts_mc->NumberOfProcessedEvents());
  hEtaBef_mc->SetTitle(Form("%s - mc",hEtaBef_mc->GetTitle()));
  hEtaBef_mc->SetLineColor(2);
  cEta->Divide(1,2);
  cEta->cd(1);
  gPad->SetGridy();
  gPad->SetGridx();
  hEtaBef_data->DrawClone("lhist");
  hEtaBef_mc->DrawClone("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  TH1F *hEtaAft_data=ecuts_data->GetHistoEtaAftSel();
  hEtaAft_data->Scale(1./ecuts_data->NumberOfEvents());
  hEtaAft_data->SetTitle(Form("%s - data",hEtaAft_data->GetTitle()));
  TH1F *hEtaAft_mc=ecuts_mc->GetHistoEtaAftSel();
  hEtaAft_mc->Scale(1./ecuts_mc->NumberOfEvents());
  hEtaAft_mc->SetTitle(Form("%s - mc",hEtaAft_mc->GetTitle()));
  hEtaAft_mc->SetLineColor(2);
  cEta->cd(2);
  gPad->SetGridy();
  gPad->SetGridx();
  hEtaAft_data->DrawClone("lhist");
  hEtaAft_mc->DrawClone("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);

  //Nch distr in data and MC before and after event selection
  TCanvas *cNCh=new TCanvas("NChdistr","NChdistr",700,500);
  gPad->SetGridy();
  gPad->SetGridx();
  TH1F *hNChAft_data=ecuts_data->GetHistoNChAftSel();
  hNChAft_data->Scale(1./hNChAft_data->GetEntries());
  hNChAft_data->SetTitle(Form("%s - data",hNChAft_data->GetTitle()));
  TH1F *hNChAft_mc=ecuts_mc->GetHistoNChAftSel();
  hNChAft_mc->Scale(1./hNChAft_mc->GetEntries());
  hNChAft_mc->SetTitle(Form("%s - mc",hNChAft_mc->GetTitle()));
  hNChAft_mc->SetLineColor(2);
  hNChAft_data->DrawClone("lhist");
  hNChAft_mc->DrawClone("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);

  
  //QVector distr before and after event selection
  TCanvas *cQVector=new TCanvas("QVectordistr","QVectordistr",700,500);
  cQVector->Divide(1,2);
  cQVector->cd(1);
  gPad->SetGridy();
  gPad->SetGridx();
  TH1F *hQVector_data=(TH1F*)ecuts_data->GetHistoQVector()->Clone();
  hQVector_data->Scale(1./hQVector_data->GetEntries());
  hQVector_data->SetTitle(Form("%s - data",hQVector_data->GetTitle()));
  TH1F *hQVector_mc=(TH1F*)ecuts_mc->GetHistoQVector()->Clone();
  hQVector_mc->Scale(1./hQVector_mc->GetEntries());
  hQVector_mc->SetTitle(Form("%s - mc",hQVector_mc->GetTitle()));
  hQVector_mc->SetLineColor(2);
  hQVector_data->DrawClone("lhist");
  //hQVector_mc->DrawClone("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  cQVector->cd(2);
  gPad->SetGridy();
  gPad->SetGridx();
  TH1F *hQVectorIntegral_data=(TH1F*)ecuts_data->GetHistoQVector()->Clone();
  hQVectorIntegral_data->Scale(1./hQVectorIntegral_data->GetEntries());
  Float_t count=0;
  for(Int_t ibin=1;ibin<hQVectorIntegral_data->GetNbinsX();ibin++){
    count+=hQVectorIntegral_data->GetBinContent(ibin);
    hQVectorIntegral_data->SetBinContent(ibin,count);
  }
  hQVectorIntegral_data->SetTitle(Form("%s - data",hQVectorIntegral_data->GetTitle()));
  TH1F *hQVectorIntegral_mc=(TH1F*)ecuts_mc->GetHistoQVector()->Clone();
  hQVectorIntegral_mc->Scale(1./hQVectorIntegral_mc->GetEntries());
  count=0;
  for(Int_t ibin=1;ibin<hQVectorIntegral_mc->GetNbinsX();ibin++){
    count+=hQVectorIntegral_mc->GetBinContent(ibin);
    hQVectorIntegral_mc->SetBinContent(ibin,count);
  }
  hQVectorIntegral_mc->SetTitle(Form("%s - mc",hQVectorIntegral_mc->GetTitle()));
  hQVectorIntegral_mc->SetLineColor(2);
  hQVectorIntegral_data->DrawClone("lhist");
  //hQVectorIntegral_mc->DrawClone("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  

  //EP
  TCanvas *cEP=new TCanvas("EPdistr","EPdistr",700,500);
  gPad->SetGridy();
  gPad->SetGridx();
  TH1F *hEP_data=(TH1F*)ecuts_data->GetHistoEP()->Clone();
  hEP_data->Scale(1./hEP_data->GetEntries());
  hEP_data->SetTitle(Form("%s - data",hEP_data->GetTitle()));
  TH1F *hEP_mc=(TH1F*)ecuts_mc->GetHistoEP()->Clone();
  hEP_mc->Scale(1./hEP_mc->GetEntries());
  hEP_mc->SetTitle(Form("%s - mc",hEP_mc->GetTitle()));
  hEP_mc->SetLineColor(2);
  hEP_data->DrawClone("lhist");
  hEP_mc->DrawClone("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  
  //Eta Phi at high Pt in data and Monte Carlo
  TCanvas *cEtaPhi=new TCanvas("EtaPhi","EtaPhi",700,500);
  cEtaPhi->Divide(2,1);
  TH2F *hEtaPhi_data=tcuts_data->GetHistoEtaPhiHighPt()->Clone("hEtaPhi_data");
  hEtaPhi_data->Rebin2D(4);
  hEtaPhi_data->Scale(1./hEtaPhi_data->GetEntries());
  cEtaPhi->cd(1);
  gPad->SetGridy();
  gPad->SetGridx();
  hEtaPhi_data->DrawClone("colz");
  TH2F *hEtaPhi_mc=tcuts_mc->GetHistoEtaPhiHighPt()->Clone("hEtaPhi_mc");
  hEtaPhi_mc->Rebin2D(4);
  hEtaPhi_mc->Scale(1./hEtaPhi_mc->GetEntries());
  cEtaPhi->cd(2);
  gPad->SetGridy();
  gPad->SetGridx();
  hEtaPhi_mc->DrawClone("colz");
  TCanvas *cRatioEtaPhi=new TCanvas("RatioEtaPhi","RatioEtaPhi",700,500);
  gPad->SetGridy();
  gPad->SetGridx();
  hEtaPhi_data->Divide(hEtaPhi_mc);
  hEtaPhi_data->SetMaximum(2);
  hEtaPhi_data->SetMinimum(-0.00000001);
  hEtaPhi_data->DrawClone("colz");

  //Track selection in data and Monte Carlo
  TCanvas *cTrackCuts=new TCanvas("TrackCuts","TrackCuts",700,500);
  cTrackCuts->Divide(1,2);
  TH1F *hTrCuts_data=new TH1F("hTrCuts_data","hTrCuts_data",20,0,20);
  for(Int_t ibin=1;ibin<=tcuts_data->GetHistoCuts()->GetNbinsX();ibin++){
    hTrCuts_data->SetBinContent(ibin,tcuts_data->GetHistoCuts()->GetBinContent(ibin)/tcuts_data->GetHistoCuts()->GetBinContent(6));
    hTrCuts_data->GetXaxis()->SetBinLabel(ibin,tcuts_data->GetHistoCuts()->GetXaxis()->GetBinLabel(ibin));
  }
  TH1F *hTrCuts_mc=new TH1F("hTrCuts_mc","hTrCuts_mc",20,0,20);
  for(Int_t ibin=1;ibin<=tcuts_mc->GetHistoCuts()->GetNbinsX();ibin++){
    hTrCuts_mc->SetBinContent(ibin,tcuts_mc->GetHistoCuts()->GetBinContent(ibin)/tcuts_mc->GetHistoCuts()->GetBinContent(6));
    hTrCuts_mc->GetXaxis()->SetBinLabel(ibin,tcuts_mc->GetHistoCuts()->GetXaxis()->GetBinLabel(ibin));
  }
  hTrCuts_mc->SetLineColor(2);
  cTrackCuts->cd(1);
  gPad->SetGridy();
  gPad->SetGridx();
  hTrCuts_data->SetMinimum(0);
  hTrCuts_data->DrawClone();
  hTrCuts_mc->DrawClone("same");
  gPad->BuildLegend()->SetFillColor(0);
  cTrackCuts->cd(2);
  gPad->SetGridy();
  gPad->SetGridx();
  hTrCuts_data->Divide(hTrCuts_mc);
  hTrCuts_data->SetTitle("DATA/MC");
  hTrCuts_data->DrawClone();
  gPad->BuildLegend()->SetFillColor(0);


 
  //dedx in data and MC
  TCanvas *cPIDSig=new TCanvas("cPIDSig","cPIDSig",700,500);
  cPIDSig->Divide(2,2);
  cPIDSig->cd(1);
  TH2F *PIDSig_data = (TH2F*)((TH2F*)hman_data->GetPIDHistogram("hHistPIDTPC"))->Clone();
  PIDSig_data->SetYTitle("TPC signal");
  gPad->SetLogz();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_data->DrawClone("colz");
  for(Int_t ipart=0;ipart<3;ipart++){
    TH2F *PIDSig_dataPart = (TH2F*)((TH2F*)hman_data->GetPIDHistogram(Form("hHistPIDTPC%s",Particle[ipart].Data())))->Clone();
    PIDSig_dataPart->SetMarkerStyle(22);
    PIDSig_dataPart->SetMarkerSize(.5);
    PIDSig_dataPart->DrawClone("same");
  }
  cPIDSig->cd(2);
  TH2F *PIDSig_mc = (TH2F*)((TH2F*)hman_mc->GetPIDHistogram("hHistPIDTPC"))->Clone();
  PIDSig_mc->SetYTitle("TPC signal");
  gPad->SetLogz();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_mc->DrawClone("colz");
  for(Int_t ipart=0;ipart<3;ipart++){
    TH2F *PIDSig_mcPart = (TH2F*)((TH2F*)hman_mc->GetPIDHistogram(Form("hHistPIDTPC%s",Particle[ipart].Data())))->Clone();
    PIDSig_mcPart->SetMarkerStyle(22);
    PIDSig_mcPart->SetMarkerSize(.5);
    PIDSig_mcPart->DrawClone("same");
  }
  cPIDSig->cd(3);
  TH2F *PIDSig_data = (TH2F*)((TH2F*)hman_data->GetPIDHistogram("hHistPIDTOF"))->Clone();
  PIDSig_data->SetYTitle("TOF signal");
  gPad->SetLogz();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_data->DrawClone("colz");
  cPIDSig->cd(4);
  TH2F *PIDSig_mc = (TH2F*)((TH2F*)hman_mc->GetPIDHistogram("hHistPIDTOF"))->Clone();
  PIDSig_mc->SetYTitle("TOF signal/100");
  gPad->SetLogz();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_mc->DrawClone("colz");

  
  //dedx in data and MC (Only TPC with reconstructed ID)
  TCanvas *cPIDSigRec=new TCanvas("cPIDSigRec","cPIDSigRec",700,500);
  cPIDSigRec->Divide(2,1);
  cPIDSigRec->cd(1);
  TH2F *PIDSig_data = (TH2F*)((TH2F*)hman_data->GetPIDHistogram("hHistPIDTPC"))->Clone();
  PIDSig_data->SetYTitle("TPC signal");
  gPad->SetLogz();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_data->DrawClone("colz");
  for(Int_t ipart=0;ipart<3;ipart++){
    TH2F *PIDSig_dataPart = (TH2F*)((TH2F*)hman_data->GetPIDHistogram(Form("hHistPIDTPC%sRec",Particle[ipart].Data())))->Clone();
    PIDSig_dataPart->SetMarkerColor(ipart+1);
    PIDSig_dataPart->SetMarkerStyle(22);
    PIDSig_dataPart->SetMarkerSize(.5);
    PIDSig_dataPart->DrawClone("same");
  }
  cPIDSigRec->cd(2);
  TH2F *PIDSig_mc = (TH2F*)((TH2F*)hman_mc->GetPIDHistogram("hHistPIDTPC"))->Clone();
  PIDSig_mc->SetYTitle("TPC signal");
  gPad->SetLogz();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_mc->DrawClone("colz");
  for(Int_t ipart=0;ipart<3;ipart++){
    TH2F *PIDSig_mcPart = (TH2F*)((TH2F*)hman_mc->GetPIDHistogram(Form("hHistPIDTPC%sRec",Particle[ipart].Data())))->Clone();
    PIDSig_mcPart->SetMarkerColor(ipart+1);
    PIDSig_mcPart->SetMarkerStyle(22);
    PIDSig_mcPart->SetMarkerSize(.5);
    PIDSig_mcPart->DrawClone("same");
  }
  
  //dedx projection in data and MC
  Double_t Proj1[2]={0.6,0.7};
  Double_t Proj2[2]={1.1,1.2};
  TCanvas *cPIDSigProjection=new TCanvas("cPIDSigProjection","cPIDSigProjection",700,500);
  cPIDSigProjection->Divide(2,2);
  //TPC
  TH2F *PIDSig_data = (TH2F*)((TH2F*)hman_data->GetPIDHistogram("hHistPIDTPC"))->Clone();
  TH1F *PIDSig_data_Proj1=(TH1F*)PIDSig_data->ProjectionY(Form("TPC, data [%.1f,%.1f]",Proj1[0],Proj1[1]),
  							  PIDSig_data->GetXaxis()->FindBin(Proj1[0]),PIDSig_data->GetXaxis()->FindBin(Proj1[1]));
  TH1F *PIDSig_data_Proj2=(TH1F*)PIDSig_data->ProjectionY(Form("TPC, data [%.1f,%.1f]",Proj2[0],Proj2[1]),
  							  PIDSig_data->GetXaxis()->FindBin(Proj2[0]),PIDSig_data->GetXaxis()->FindBin(Proj2[1]));
  PIDSig_data_Proj1->SetTitle(Form("TPC, data [%.1f,%.1f]",Proj1[0],Proj1[1]));
  PIDSig_data_Proj2->SetTitle(Form("TPC, data [%.1f,%.1f]",Proj2[0],Proj2[1]));
  TH2F *PIDSig_mc = (TH2F*)((TH2F*)hman_mc->GetPIDHistogram("hHistPIDTPC"))->Clone();
  TH1F *PIDSig_mc_Proj1=(TH1F*)PIDSig_mc->ProjectionY(Form("TPC, mc [%.1f,%.1f]",Proj1[0],Proj1[1]),
						      PIDSig_mc->GetXaxis()->FindBin(Proj1[0]),PIDSig_mc->GetXaxis()->FindBin(Proj1[1]));
  TH1F *PIDSig_mc_Proj2=(TH1F*)PIDSig_mc->ProjectionY(Form("TPC, mc [%.1f,%.1f]",Proj2[0],Proj2[1]),
						      PIDSig_mc->GetXaxis()->FindBin(Proj2[0]),PIDSig_mc->GetXaxis()->FindBin(Proj2[1]));
  PIDSig_mc_Proj1->SetTitle(Form("TPC, mc [%.1f,%.1f]",Proj1[0],Proj1[1]));
  PIDSig_mc_Proj2->SetTitle(Form("TPC, mc [%.1f,%.1f]",Proj2[0],Proj2[1]));
  PIDSig_mc_Proj1->SetLineColor(2);
  PIDSig_mc_Proj2->SetLineColor(2);
  cPIDSigProjection->cd(1);
  gPad->SetGridy();
  gPad->SetLogy();
  gPad->SetGridx();
  PIDSig_data_Proj1->DrawNormalized("lhist");
  PIDSig_mc_Proj1->DrawNormalized("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  cPIDSigProjection->cd(2);
  gPad->SetLogy();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_data_Proj2->DrawNormalized("lhist");
  PIDSig_mc_Proj2->DrawNormalized("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  //TOF
  TH2F *PIDSig_data = (TH2F*)((TH2F*)hman_data->GetPIDHistogram("hHistPIDTOF"))->Clone();
  TH1F *PIDSig_data_Proj1=(TH1F*)PIDSig_data->ProjectionY(Form("TOF, data [%.1f,%.1f]",Proj1[0],Proj1[1]),
  							  PIDSig_data->GetXaxis()->FindBin(Proj1[0]),PIDSig_data->GetXaxis()->FindBin(Proj1[1]));
  TH1F *PIDSig_data_Proj2=(TH1F*)PIDSig_data->ProjectionY(Form("TOF, data [%.1f,%.1f]",Proj2[0],Proj2[1]),
  							  PIDSig_data->GetXaxis()->FindBin(Proj2[0]),PIDSig_data->GetXaxis()->FindBin(Proj2[1]));
  PIDSig_data_Proj1->SetTitle(Form("TOF, data [%.1f,%.1f]",Proj1[0],Proj1[1]));
  PIDSig_data_Proj2->SetTitle(Form("TOF, data [%.1f,%.1f]",Proj2[0],Proj2[1]));
  TH2F *PIDSig_mc = (TH2F*)((TH2F*)hman_mc->GetPIDHistogram("hHistPIDTOF"))->Clone();
  TH1F *PIDSig_mc_Proj1=(TH1F*)PIDSig_mc->ProjectionY(Form("TOF, mc [%.1f,%.1f]",Proj1[0],Proj1[1]),
						      PIDSig_mc->GetXaxis()->FindBin(Proj1[0]),PIDSig_mc->GetXaxis()->FindBin(Proj1[1]));
  TH1F *PIDSig_mc_Proj2=(TH1F*)PIDSig_mc->ProjectionY(Form("TOF, mc [%.1f,%.1f]",Proj2[0],Proj2[1]),
						      PIDSig_mc->GetXaxis()->FindBin(Proj2[0]),PIDSig_mc->GetXaxis()->FindBin(Proj2[1]));
  PIDSig_mc_Proj1->SetTitle(Form("TOF, mc [%.1f,%.1f]",Proj1[0],Proj1[1]));
  PIDSig_mc_Proj2->SetTitle(Form("TOF, mc [%.1f,%.1f]",Proj2[0],Proj2[1]));
  PIDSig_mc_Proj1->SetLineColor(2);
  PIDSig_mc_Proj2->SetLineColor(2);
  cPIDSigProjection->cd(3);
  gPad->SetLogy();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_data_Proj1->DrawNormalized("lhist");
  PIDSig_mc_Proj1->DrawNormalized("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  cPIDSigProjection->cd(4);
  gPad->SetLogy();
  gPad->SetGridy();
  gPad->SetGridx();
  PIDSig_data_Proj2->DrawNormalized("lhist");
  PIDSig_mc_Proj2->DrawNormalized("lhistsame");
  gPad->BuildLegend()->SetFillColor(0);
  
  //nsig in data and MC
  for(Int_t ipart=0;ipart<3;ipart++){
    TCanvas *cnsig=new TCanvas(Form("cnsig%s",Particle[ipart].Data()),Form("cnsig%s",Particle[ipart].Data()),700,500);
    cnsig->Divide(2,3);
    cnsig->cd(1);
    TH2F *nsig_data = (TH2F*)((TH2F*)hman_data->GetNSigHistogram(Form("hHistNSig%sPtTPC",Particle[ipart].Data())))->Clone();
    nsig_data->GetYaxis()->SetRangeUser(-5,5);
    nsig_data->Scale(1/nsig_data->GetMaximum());
    nsig_data->SetXTitle("Pt (GeV/c)");
    gPad->SetLogz();
    gPad->SetGridy();
    gPad->SetGridx();
    nsig_data->DrawClone("colz");
    cnsig->cd(2);
    TH2F *nsig_mc = (TH2F*)((TH2F*)hman_mc->GetNSigHistogram(Form("hHistNSig%sPtTPC",Particle[ipart].Data())))->Clone();
    nsig_mc->GetYaxis()->SetRangeUser(-5,5);
    nsig_mc->Scale(1/nsig_mc->GetMaximum());
    nsig_mc->SetXTitle("Pt (GeV/c)");
    gPad->SetLogz();
    gPad->SetGridy();
    gPad->SetGridx();
    nsig_mc->DrawClone("colz");
    cnsig->cd(3);
    TH2F *nsig_data = (TH2F*)((TH2F*)hman_data->GetNSigHistogram(Form("hHistNSig%sPtTOF",Particle[ipart].Data())))->Clone();
    nsig_data->GetYaxis()->SetRangeUser(-5,5);
    nsig_data->Scale(1/nsig_data->GetMaximum());
    nsig_data->SetXTitle("Pt (GeV/c)");
    gPad->SetLogz();
    gPad->SetGridy();
    gPad->SetGridx();
    nsig_data->DrawClone("colz");
    cnsig->cd(4);
    TH2F *nsig_mc = (TH2F*)((TH2F*)hman_mc->GetNSigHistogram(Form("hHistNSig%sPtTOF",Particle[ipart].Data())))->Clone();
    nsig_mc->GetYaxis()->SetRangeUser(-5,5);
    nsig_mc->Scale(1/nsig_mc->GetMaximum());
    nsig_mc->SetXTitle("Pt (GeV/c)");
    gPad->SetLogz();
    gPad->SetGridy();
    gPad->SetGridx();
    nsig_mc->DrawClone("colz");
    cnsig->cd(5);
    TH2F *nsig_data = (TH2F*)((TH2F*)hman_data->GetNSigHistogram(Form("hHistNSig%sPtTPCTOF",Particle[ipart].Data())))->Clone();
    nsig_data->GetYaxis()->SetRangeUser(0,5);
    nsig_data->Scale(1/nsig_data->GetMaximum());
    nsig_data->SetXTitle("Pt (GeV/c)");
    gPad->SetLogz();
    gPad->SetGridy();
    gPad->SetGridx();
    nsig_data->DrawClone("colz");
    cnsig->cd(6);
    TH2F *nsig_mc = (TH2F*)((TH2F*)hman_mc->GetNSigHistogram(Form("hHistNSig%sPtTPCTOF",Particle[ipart].Data())))->Clone();
    nsig_mc->GetYaxis()->SetRangeUser(0,5);
    nsig_mc->Scale(1/nsig_mc->GetMaximum());
    nsig_mc->SetXTitle("Pt (GeV/c)");
    gPad->SetLogz();
    gPad->SetGridy();
    gPad->SetGridx();
    nsig_mc->DrawClone("colz");
    fout->cd();
    cnsig->Write();
  }
  
  //NSigma projection in data and MC
  Double_t Proj1[2]={0.4,0.5};
  Double_t Proj2[2]={1.1,1.2};
  TCanvas *cnsigProjection=new TCanvas("cnsigProjection","cnsigProjection",700,500);
  cnsigProjection->Divide(2,3);
  //TPC
  for(Int_t ipart=0;ipart<3;ipart++){
    TH2F *nsig_data = (TH2F*)((TH2F*)hman_data->GetNSigHistogram(Form("hHistNSig%sPtTPC",Particle[ipart].Data())))->Clone();
    TH1F *nsig_data_Proj1=(TH1F*)nsig_data->ProjectionY(Form("TPC NsigProjectionv %s, data [%.1f,%.1f]",Particle[ipart].Data(),Proj1[0],Proj1[1]),
							nsig_data->GetXaxis()->FindBin(Proj1[0]),nsig_data->GetXaxis()->FindBin(Proj1[1]));
    TH1F *nsig_data_Proj2=(TH1F*)nsig_data->ProjectionY(Form("TPC NsigProjection %s, data [%.1f,%.1f]",Particle[ipart].Data(),Proj2[0],Proj2[1]),
							nsig_data->GetXaxis()->FindBin(Proj2[0]),nsig_data->GetXaxis()->FindBin(Proj2[1]));
    nsig_data_Proj1->SetTitle(Form("TPC NsigProjection %s, data [%.1f,%.1f]",Particle[ipart].Data(),Proj1[0],Proj1[1]));
    nsig_data_Proj2->SetTitle(Form("TPC NsigProjection %s, data [%.1f,%.1f]",Particle[ipart].Data(),Proj2[0],Proj2[1]));
    TH2F *nsig_mc = (TH2F*)((TH2F*)hman_mc->GetNSigHistogram(Form("hHistNSig%sPtTPC",Particle[ipart].Data())))->Clone();
    TH1F *nsig_mc_Proj1=(TH1F*)nsig_mc->ProjectionY(Form("TPC NsigProjection %s, mc [%.1f,%.1f]",Particle[ipart].Data(),Proj1[0],Proj1[1]),
						    nsig_mc->GetXaxis()->FindBin(Proj1[0]),nsig_mc->GetXaxis()->FindBin(Proj1[1]));
    TH1F *nsig_mc_Proj2=(TH1F*)nsig_mc->ProjectionY(Form("TPC NsigProjection %s, mc [%.1f,%.1f]",Particle[ipart].Data(),Proj2[0],Proj2[1]),
						    nsig_mc->GetXaxis()->FindBin(Proj2[0]),nsig_mc->GetXaxis()->FindBin(Proj2[1]));
    nsig_mc_Proj1->SetTitle(Form("TPC NsigProjection %s, mc [%.1f,%.1f]",Particle[ipart].Data(),Proj1[0],Proj1[1]));
    nsig_mc_Proj2->SetTitle(Form("TPC NsigProjection %s, mc [%.1f,%.1f]",Particle[ipart].Data(),Proj2[0],Proj2[1]));
    nsig_mc_Proj1->SetLineColor(2);
    nsig_mc_Proj2->SetLineColor(2);
    cnsigProjection->cd(2*ipart+1);
    gPad->SetLogy();
    gPad->SetGridy();
    gPad->SetGridx();
    nsig_data_Proj1->DrawNormalized("lhist");
    nsig_mc_Proj1->DrawNormalized("lhistsame");
    gPad->BuildLegend()->SetFillColor(0);
    cnsigProjection->cd(2*ipart+2);
    gPad->SetLogy();
    gPad->SetGridy();
    gPad->SetGridx();
    nsig_data_Proj2->DrawNormalized("lhist");
    nsig_mc_Proj2->DrawNormalized("lhistsame");
    gPad->BuildLegend()->SetFillColor(0);
  }
  
  //Muon over Pion Ratio
  Printf("\n\n-> Muon Over Pion");
  TCanvas *cMu=new TCanvas("cMu","cMu",700,500);
  TH1F *hMuOverPi[2];
  TH1F *hMuOverPi_bis[2];
  for(Int_t icharge=0;icharge<2;icharge++){
    TString hname=Form("hHistPtRecTruePrimaryMuon%s",Sign[icharge].Data());
    hMuOverPi[icharge]=(TH1F*)((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1))->Clone();
    hname=Form("hHistPtRecTruePrimaryPion%s",Sign[icharge].Data());
    hMuOverPi[icharge]->Divide((TH1F*)((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1))->Clone());
    hname=Form("hHistPtRecTrueMuon%s",Sign[icharge].Data());
    hMuOverPi_bis[icharge]=(TH1F*)((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1))->Clone();
    hname=Form("hHistPtRecTruePrimaryPion%s",Sign[icharge].Data());
    hMuOverPi_bis[icharge]->Divide((TH1F*)((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1))->Clone());
    hMuOverPi_bis[icharge]->SetMarkerColor(2);
    hMuOverPi_bis[icharge]->SetLineColor(2);
    if(icharge==0)hMuOverPi_bis[icharge]->DrawClone();
    else hMuOverPi_bis[icharge]->DrawClone("same");
    hMuOverPi[icharge]->DrawClone("same");
  }
  
  //Contamination
  Printf("\n\n-> Contamination from MC");
  TH1F *Cont[6];
  TCanvas *ccont=new TCanvas("ccont","ccont",700,500);
  for(Int_t icharge=0;icharge<2;icharge++){
    for(Int_t ipart=0;ipart<3;ipart++){
      Int_t index=ipart+3*icharge;
      TString hname=Form("hHistPtRecTrue%s%s",Particle[ipart].Data(),Sign[icharge].Data());
      Printf("Getting %s",hname.Data());
      Cont[index] =(TH1F*)((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1))->Clone();
      Cont[index]->SetName(Form("Cont_%s%s",Particle[ipart].Data(),Sign[icharge].Data()));
      Cont[index]->SetTitle(Form("RecTrue/RecSigma %s%s",Particle[ipart].Data(),Sign[icharge].Data()));
      Cont[index]->SetMarkerStyle(Marker[index]);
      Cont[index]->SetMarkerColor(Color[ipart]);
      Cont[index]->SetLineColor(Color[ipart]);
      hname=Form("hHistPtRecSigma%s%s",Particle[ipart].Data(),Sign[icharge].Data());
      Printf("... and divide it by %s",hname.Data());
      Cont[index]->Divide((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1));
      if(index==0)Cont[index]->DrawClone();
      else Cont[index]->DrawClone("same");
      //Spectra[index]->Multiply(Cont[index]);
    }
  } 
  gPad->BuildLegend()->SetFillColor(0);


  //Raw yield
  TH1F *hRaw_data_allCh=(TH1F*)((TH1F*) hman_data->GetPtHistogram1D("hHistPtRec",-1,-1))->Clone();
  hRaw_data_allCh->Scale(1./ecuts_data->NumberOfEvents(),"width");
  TH1F *hRaw_mc_allCh=(TH1F*)((TH1F*) hman_mc->GetPtHistogram1D("hHistPtRec",-1,-1))->Clone();
  hRaw_mc_allCh->Scale(1./ecuts_mc->NumberOfEvents(),"width");
      
  TCanvas *cRaw=new TCanvas("cRaw","cRaw",700,500);
  cRaw->Divide(2,2);
  cRaw->cd(1);
  gPad->SetLogy();
  gPad->SetGridy();
  gPad->SetGridx();
  hRaw_data_allCh->DrawClone();
  hRaw_mc_allCh->DrawClone("lhistsame");
  cRaw->cd(2);
  gPad->SetLogy();
  gPad->SetGridy();
  gPad->SetGridx();
  hRaw_data_allCh->DrawClone();
  hRaw_mc_allCh->DrawClone("lhistsame"); 
  hRaw_data_allCh->Divide(hRaw_mc_allCh);
  hRaw_data_allCh->SetLineStyle(2);
  cRaw->cd(3);
  gPad->SetGridy();
  gPad->SetGridx();
  hRaw_data_allCh->DrawClone("lhist");
  cRaw->cd(4);
  gPad->SetGridy();
  gPad->SetGridx();
  hRaw_data_allCh->DrawClone("lhist");
  TH1F *hRaw_data[6];
  TH1F *hRaw_mc[6];
  for(Int_t icharge=0;icharge<2;icharge++){
    for(Int_t ipart=0;ipart<3;ipart++){
      Int_t index=ipart+3*icharge;
      TString hname=Form("hHistPtRecSigma%s%s",Particle[ipart].Data(),Sign[icharge].Data()); //MC correction for Prim+Cont+Eff
      hRaw_data[index]=(TH1F*)((TH1F*) hman_data->GetPtHistogram1D(hname.Data(),-1,-1))->Clone();
      hRaw_data[index]->SetMarkerStyle(Marker[index]);
      hRaw_data[index]->SetMarkerColor(Color[ipart]);
      hRaw_data[index]->SetLineColor(Color[ipart]);
      hRaw_data[index]->Scale(1./ecuts_data->NumberOfEvents(),"width");
      hRaw_mc[index]=(TH1F*)((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1))->Clone();
      hRaw_mc[index]->SetMarkerStyle(Marker[index]);
      hRaw_mc[index]->SetMarkerColor(Color[ipart]);
      hRaw_mc[index]->SetLineColor(Color[ipart]);
      hRaw_mc[index]->Scale(1./ecuts_mc->NumberOfEvents(),"width");
      for(Int_t ibin=0;ibin<hRaw_data[index]->GetNbinsX();ibin++){
	if(hRaw_data[index]->GetBinCenter(ibin)<Range[ipart]){
	  hRaw_data[index]->SetBinContent(ibin,0);
	  hRaw_data[index]->SetBinError(ibin,0);
	  hRaw_mc[index]->SetBinContent(ibin,0);
	  hRaw_mc[index]->SetBinError(ibin,0);
	}
      }
      cRaw->cd(icharge+1);
      hRaw_data[index]->DrawClone("same");
      hRaw_mc[index]->DrawClone("lhistsame");
      hRaw_data[index]->Divide(hRaw_mc[index]);
      cRaw->cd(icharge+3);
      hRaw_data[index]->DrawClone("lhistsame");
    }
  } 
  

  
  //PID Efficiency //TO BE IMPLEMENTED, need to add TrueSigma in the Task
  // Printf("\n\n-> PID efficiency from MC");
  // TH1F *PIDEff[6];
  // TCanvas *ccont=new TCanvas("ccont","ccont",700,500);
  // for(Int_t icharge=0;icharge<2;icharge++){
  //   for(Int_t ipart=0;ipart<3;ipart++){
  //     Int_t index=ipart+3*icharge;
  //     TString hname=Form("hHistPtRecTrue%s%s",Particle[ipart].Data(),Sign[icharge].Data());
  //     Printf("Getting %s",hname.Data());
  //     PIDEff[index] =(TH1F*)((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1))->Clone();
  //     PIDEff[index]->SetName(Form("PIDEff_%s%s",Particle[ipart].Data(),Sign[icharge].Data()));
  //     PIDEff[index]->SetTitle(Form("RecTrue/RecSigma %s%s",Particle[ipart].Data(),Sign[icharge].Data()));
  //     PIDEff[index]->SetMarkerStyle(Marker[index]);
  //     PIDEff[index]->SetMarkerColor(Color[ipart]);
  //     PIDEff[index]->SetLineColor(Color[ipart]);
  //     hname=Form("hHistPtRecSigma%s%s",Particle[ipart].Data(),Sign[icharge].Data());
  //     Printf("... and divide it by %s",hname.Data());
  //     PIDEff[index]->Divide((TH1F*) hman_mc->GetPtHistogram1D(hname.Data(),-1,-1));
  //     if(index==0)PIDEff[index]->DrawClone();
  //     else PIDEff[index]->DrawClone("same");
  //     //Spectra[index]->Multiply(PIDEff[index]);
  //   }
  // } 
  // gPad->BuildLegend()->SetFillColor(0);

  //qvec in data and MC
  // for (Int_t icharge=0;icharge<2;icharge++){
  //   TCanvas *cqvec=new TCanvas(Form("cqvec%s",Charge[icharge].Data()),Form("cqvec%s",Charge[icharge].Data()),700,500);
  //   cqvec->Divide(2,1);
  //   cqvec->cd(1);
  //   TString hname=Form("hHistqVec%s",Charge[icharge].Data());
  //   TH2F *qvec_data = (TH2F*)((TH2F*)hman_data->GetqVecHistogram(hname.Data()))->Clone();
  //   gPad->SetLogz();
  //   gPad->SetGridy();
  //   gPad->SetGridx();
  //   qvec_data->DrawClone("colz");
  //   cqvec->cd(2);
  //   TH2F *qvec_mc = (TH2F*)((TH2F*)hman_mc->GetqVecHistogram(hname.Data()))->Clone();
  //   gPad->SetLogz();
  //   gPad->SetGridy();
  //   gPad->SetGridx();
  //   qvec_mc->DrawClone("colz");
    
  //   TCanvas *cProjqvec=new TCanvas(Form("cProjqvec%s",Charge[icharge].Data()),Form("cProjqvec%s",Charge[icharge].Data()),700,500);
  //   cProjqvec->Divide(3,2);
  //   for(Int_t iproj=0;iproj<3;iproj++){
  //     TH1F *proj_data=(TH1F*)qvec_data->ProjectionX("data",qvec_data->GetYaxis()->FindBin(projl[iproj]),qvec_data->GetYaxis()->FindBin(proju[iproj]));
  //     if(proj_data->GetEntries()==0)continue;
  //     proj_data->Scale(1/proj_data->GetEntries());
  //     proj_data->SetTitle(Form("data q%s [%.0f,%.0f]",Charge[icharge].Data(),projl[iproj],proju[iproj]));
  //     TH1F *proj_mc=(TH1F*)qvec_mc->ProjectionX("mc",qvec_mc->GetYaxis()->FindBin(projl[iproj]),qvec_mc->GetYaxis()->FindBin(proju[iproj]));
  //     proj_mc->Scale(1/proj_mc->GetEntries());
  //     proj_mc->SetTitle(Form("mc q%s [%.0f,%.0f]",Charge[icharge].Data(),projl[iproj],proju[iproj]));
  //     proj_mc->SetLineColor(2);
  //     cProjqvec->cd(iproj+1);
  //     gPad->SetGridy();
  //     gPad->SetGridx();
  //     proj_data->DrawClone();
  //     proj_mc->DrawClone("same");
  //     gPad->BuildLegend()->SetFillColor(0);
  //     proj_data->Divide(proj_mc);
  //     cProjqvec->cd(iproj+4);
  //     proj_data->DrawClone();
  //   }
  // }
  fout->cd();
  cVtx->Write();
  cEta->Write();
  cNCh->Write();
  hNChAft_data->SetName(Form("%s_data",hNChAft_data->GetName()));
  hNChAft_data->Write();
  hNChAft_mc->SetName(Form("%s_mc",hNChAft_mc->GetName()));
  hNChAft_mc->Write();
  cQVector->Write();
  cEtaPhi->Write();
  cRatioEtaPhi->Write();
  cTrackCuts->Write();
  cPIDSig->Write();
  cPIDSigRec->Write();
  cPIDSigProjection->Write();
  cnsigProjection->Write();
  cMu->Write();
  ccont->Write();
  cRaw->Write();
  
  
} 
 QAPlots.C:1
 QAPlots.C:2
 QAPlots.C:3
 QAPlots.C:4
 QAPlots.C:5
 QAPlots.C:6
 QAPlots.C:7
 QAPlots.C:8
 QAPlots.C:9
 QAPlots.C:10
 QAPlots.C:11
 QAPlots.C:12
 QAPlots.C:13
 QAPlots.C:14
 QAPlots.C:15
 QAPlots.C:16
 QAPlots.C:17
 QAPlots.C:18
 QAPlots.C:19
 QAPlots.C:20
 QAPlots.C:21
 QAPlots.C:22
 QAPlots.C:23
 QAPlots.C:24
 QAPlots.C:25
 QAPlots.C:26
 QAPlots.C:27
 QAPlots.C:28
 QAPlots.C:29
 QAPlots.C:30
 QAPlots.C:31
 QAPlots.C:32
 QAPlots.C:33
 QAPlots.C:34
 QAPlots.C:35
 QAPlots.C:36
 QAPlots.C:37
 QAPlots.C:38
 QAPlots.C:39
 QAPlots.C:40
 QAPlots.C:41
 QAPlots.C:42
 QAPlots.C:43
 QAPlots.C:44
 QAPlots.C:45
 QAPlots.C:46
 QAPlots.C:47
 QAPlots.C:48
 QAPlots.C:49
 QAPlots.C:50
 QAPlots.C:51
 QAPlots.C:52
 QAPlots.C:53
 QAPlots.C:54
 QAPlots.C:55
 QAPlots.C:56
 QAPlots.C:57
 QAPlots.C:58
 QAPlots.C:59
 QAPlots.C:60
 QAPlots.C:61
 QAPlots.C:62
 QAPlots.C:63
 QAPlots.C:64
 QAPlots.C:65
 QAPlots.C:66
 QAPlots.C:67
 QAPlots.C:68
 QAPlots.C:69
 QAPlots.C:70
 QAPlots.C:71
 QAPlots.C:72
 QAPlots.C:73
 QAPlots.C:74
 QAPlots.C:75
 QAPlots.C:76
 QAPlots.C:77
 QAPlots.C:78
 QAPlots.C:79
 QAPlots.C:80
 QAPlots.C:81
 QAPlots.C:82
 QAPlots.C:83
 QAPlots.C:84
 QAPlots.C:85
 QAPlots.C:86
 QAPlots.C:87
 QAPlots.C:88
 QAPlots.C:89
 QAPlots.C:90
 QAPlots.C:91
 QAPlots.C:92
 QAPlots.C:93
 QAPlots.C:94
 QAPlots.C:95
 QAPlots.C:96
 QAPlots.C:97
 QAPlots.C:98
 QAPlots.C:99
 QAPlots.C:100
 QAPlots.C:101
 QAPlots.C:102
 QAPlots.C:103
 QAPlots.C:104
 QAPlots.C:105
 QAPlots.C:106
 QAPlots.C:107
 QAPlots.C:108
 QAPlots.C:109
 QAPlots.C:110
 QAPlots.C:111
 QAPlots.C:112
 QAPlots.C:113
 QAPlots.C:114
 QAPlots.C:115
 QAPlots.C:116
 QAPlots.C:117
 QAPlots.C:118
 QAPlots.C:119
 QAPlots.C:120
 QAPlots.C:121
 QAPlots.C:122
 QAPlots.C:123
 QAPlots.C:124
 QAPlots.C:125
 QAPlots.C:126
 QAPlots.C:127
 QAPlots.C:128
 QAPlots.C:129
 QAPlots.C:130
 QAPlots.C:131
 QAPlots.C:132
 QAPlots.C:133
 QAPlots.C:134
 QAPlots.C:135
 QAPlots.C:136
 QAPlots.C:137
 QAPlots.C:138
 QAPlots.C:139
 QAPlots.C:140
 QAPlots.C:141
 QAPlots.C:142
 QAPlots.C:143
 QAPlots.C:144
 QAPlots.C:145
 QAPlots.C:146
 QAPlots.C:147
 QAPlots.C:148
 QAPlots.C:149
 QAPlots.C:150
 QAPlots.C:151
 QAPlots.C:152
 QAPlots.C:153
 QAPlots.C:154
 QAPlots.C:155
 QAPlots.C:156
 QAPlots.C:157
 QAPlots.C:158
 QAPlots.C:159
 QAPlots.C:160
 QAPlots.C:161
 QAPlots.C:162
 QAPlots.C:163
 QAPlots.C:164
 QAPlots.C:165
 QAPlots.C:166
 QAPlots.C:167
 QAPlots.C:168
 QAPlots.C:169
 QAPlots.C:170
 QAPlots.C:171
 QAPlots.C:172
 QAPlots.C:173
 QAPlots.C:174
 QAPlots.C:175
 QAPlots.C:176
 QAPlots.C:177
 QAPlots.C:178
 QAPlots.C:179
 QAPlots.C:180
 QAPlots.C:181
 QAPlots.C:182
 QAPlots.C:183
 QAPlots.C:184
 QAPlots.C:185
 QAPlots.C:186
 QAPlots.C:187
 QAPlots.C:188
 QAPlots.C:189
 QAPlots.C:190
 QAPlots.C:191
 QAPlots.C:192
 QAPlots.C:193
 QAPlots.C:194
 QAPlots.C:195
 QAPlots.C:196
 QAPlots.C:197
 QAPlots.C:198
 QAPlots.C:199
 QAPlots.C:200
 QAPlots.C:201
 QAPlots.C:202
 QAPlots.C:203
 QAPlots.C:204
 QAPlots.C:205
 QAPlots.C:206
 QAPlots.C:207
 QAPlots.C:208
 QAPlots.C:209
 QAPlots.C:210
 QAPlots.C:211
 QAPlots.C:212
 QAPlots.C:213
 QAPlots.C:214
 QAPlots.C:215
 QAPlots.C:216
 QAPlots.C:217
 QAPlots.C:218
 QAPlots.C:219
 QAPlots.C:220
 QAPlots.C:221
 QAPlots.C:222
 QAPlots.C:223
 QAPlots.C:224
 QAPlots.C:225
 QAPlots.C:226
 QAPlots.C:227
 QAPlots.C:228
 QAPlots.C:229
 QAPlots.C:230
 QAPlots.C:231
 QAPlots.C:232
 QAPlots.C:233
 QAPlots.C:234
 QAPlots.C:235
 QAPlots.C:236
 QAPlots.C:237
 QAPlots.C:238
 QAPlots.C:239
 QAPlots.C:240
 QAPlots.C:241
 QAPlots.C:242
 QAPlots.C:243
 QAPlots.C:244
 QAPlots.C:245
 QAPlots.C:246
 QAPlots.C:247
 QAPlots.C:248
 QAPlots.C:249
 QAPlots.C:250
 QAPlots.C:251
 QAPlots.C:252
 QAPlots.C:253
 QAPlots.C:254
 QAPlots.C:255
 QAPlots.C:256
 QAPlots.C:257
 QAPlots.C:258
 QAPlots.C:259
 QAPlots.C:260
 QAPlots.C:261
 QAPlots.C:262
 QAPlots.C:263
 QAPlots.C:264
 QAPlots.C:265
 QAPlots.C:266
 QAPlots.C:267
 QAPlots.C:268
 QAPlots.C:269
 QAPlots.C:270
 QAPlots.C:271
 QAPlots.C:272
 QAPlots.C:273
 QAPlots.C:274
 QAPlots.C:275
 QAPlots.C:276
 QAPlots.C:277
 QAPlots.C:278
 QAPlots.C:279
 QAPlots.C:280
 QAPlots.C:281
 QAPlots.C:282
 QAPlots.C:283
 QAPlots.C:284
 QAPlots.C:285
 QAPlots.C:286
 QAPlots.C:287
 QAPlots.C:288
 QAPlots.C:289
 QAPlots.C:290
 QAPlots.C:291
 QAPlots.C:292
 QAPlots.C:293
 QAPlots.C:294
 QAPlots.C:295
 QAPlots.C:296
 QAPlots.C:297
 QAPlots.C:298
 QAPlots.C:299
 QAPlots.C:300
 QAPlots.C:301
 QAPlots.C:302
 QAPlots.C:303
 QAPlots.C:304
 QAPlots.C:305
 QAPlots.C:306
 QAPlots.C:307
 QAPlots.C:308
 QAPlots.C:309
 QAPlots.C:310
 QAPlots.C:311
 QAPlots.C:312
 QAPlots.C:313
 QAPlots.C:314
 QAPlots.C:315
 QAPlots.C:316
 QAPlots.C:317
 QAPlots.C:318
 QAPlots.C:319
 QAPlots.C:320
 QAPlots.C:321
 QAPlots.C:322
 QAPlots.C:323
 QAPlots.C:324
 QAPlots.C:325
 QAPlots.C:326
 QAPlots.C:327
 QAPlots.C:328
 QAPlots.C:329
 QAPlots.C:330
 QAPlots.C:331
 QAPlots.C:332
 QAPlots.C:333
 QAPlots.C:334
 QAPlots.C:335
 QAPlots.C:336
 QAPlots.C:337
 QAPlots.C:338
 QAPlots.C:339
 QAPlots.C:340
 QAPlots.C:341
 QAPlots.C:342
 QAPlots.C:343
 QAPlots.C:344
 QAPlots.C:345
 QAPlots.C:346
 QAPlots.C:347
 QAPlots.C:348
 QAPlots.C:349
 QAPlots.C:350
 QAPlots.C:351
 QAPlots.C:352
 QAPlots.C:353
 QAPlots.C:354
 QAPlots.C:355
 QAPlots.C:356
 QAPlots.C:357
 QAPlots.C:358
 QAPlots.C:359
 QAPlots.C:360
 QAPlots.C:361
 QAPlots.C:362
 QAPlots.C:363
 QAPlots.C:364
 QAPlots.C:365
 QAPlots.C:366
 QAPlots.C:367
 QAPlots.C:368
 QAPlots.C:369
 QAPlots.C:370
 QAPlots.C:371
 QAPlots.C:372
 QAPlots.C:373
 QAPlots.C:374
 QAPlots.C:375
 QAPlots.C:376
 QAPlots.C:377
 QAPlots.C:378
 QAPlots.C:379
 QAPlots.C:380
 QAPlots.C:381
 QAPlots.C:382
 QAPlots.C:383
 QAPlots.C:384
 QAPlots.C:385
 QAPlots.C:386
 QAPlots.C:387
 QAPlots.C:388
 QAPlots.C:389
 QAPlots.C:390
 QAPlots.C:391
 QAPlots.C:392
 QAPlots.C:393
 QAPlots.C:394
 QAPlots.C:395
 QAPlots.C:396
 QAPlots.C:397
 QAPlots.C:398
 QAPlots.C:399
 QAPlots.C:400
 QAPlots.C:401
 QAPlots.C:402
 QAPlots.C:403
 QAPlots.C:404
 QAPlots.C:405
 QAPlots.C:406
 QAPlots.C:407
 QAPlots.C:408
 QAPlots.C:409
 QAPlots.C:410
 QAPlots.C:411
 QAPlots.C:412
 QAPlots.C:413
 QAPlots.C:414
 QAPlots.C:415
 QAPlots.C:416
 QAPlots.C:417
 QAPlots.C:418
 QAPlots.C:419
 QAPlots.C:420
 QAPlots.C:421
 QAPlots.C:422
 QAPlots.C:423
 QAPlots.C:424
 QAPlots.C:425
 QAPlots.C:426
 QAPlots.C:427
 QAPlots.C:428
 QAPlots.C:429
 QAPlots.C:430
 QAPlots.C:431
 QAPlots.C:432
 QAPlots.C:433
 QAPlots.C:434
 QAPlots.C:435
 QAPlots.C:436
 QAPlots.C:437
 QAPlots.C:438
 QAPlots.C:439
 QAPlots.C:440
 QAPlots.C:441
 QAPlots.C:442
 QAPlots.C:443
 QAPlots.C:444
 QAPlots.C:445
 QAPlots.C:446
 QAPlots.C:447
 QAPlots.C:448
 QAPlots.C:449
 QAPlots.C:450
 QAPlots.C:451
 QAPlots.C:452
 QAPlots.C:453
 QAPlots.C:454
 QAPlots.C:455
 QAPlots.C:456
 QAPlots.C:457
 QAPlots.C:458
 QAPlots.C:459
 QAPlots.C:460
 QAPlots.C:461
 QAPlots.C:462
 QAPlots.C:463
 QAPlots.C:464
 QAPlots.C:465
 QAPlots.C:466
 QAPlots.C:467
 QAPlots.C:468
 QAPlots.C:469
 QAPlots.C:470
 QAPlots.C:471
 QAPlots.C:472
 QAPlots.C:473
 QAPlots.C:474
 QAPlots.C:475
 QAPlots.C:476
 QAPlots.C:477
 QAPlots.C:478
 QAPlots.C:479
 QAPlots.C:480
 QAPlots.C:481
 QAPlots.C:482
 QAPlots.C:483
 QAPlots.C:484
 QAPlots.C:485
 QAPlots.C:486
 QAPlots.C:487
 QAPlots.C:488
 QAPlots.C:489
 QAPlots.C:490
 QAPlots.C:491
 QAPlots.C:492
 QAPlots.C:493
 QAPlots.C:494
 QAPlots.C:495
 QAPlots.C:496
 QAPlots.C:497
 QAPlots.C:498
 QAPlots.C:499
 QAPlots.C:500
 QAPlots.C:501
 QAPlots.C:502
 QAPlots.C:503
 QAPlots.C:504
 QAPlots.C:505
 QAPlots.C:506
 QAPlots.C:507
 QAPlots.C:508
 QAPlots.C:509
 QAPlots.C:510
 QAPlots.C:511
 QAPlots.C:512
 QAPlots.C:513
 QAPlots.C:514
 QAPlots.C:515
 QAPlots.C:516
 QAPlots.C:517
 QAPlots.C:518
 QAPlots.C:519
 QAPlots.C:520
 QAPlots.C:521
 QAPlots.C:522
 QAPlots.C:523
 QAPlots.C:524
 QAPlots.C:525
 QAPlots.C:526
 QAPlots.C:527
 QAPlots.C:528
 QAPlots.C:529
 QAPlots.C:530
 QAPlots.C:531
 QAPlots.C:532
 QAPlots.C:533
 QAPlots.C:534
 QAPlots.C:535
 QAPlots.C:536
 QAPlots.C:537
 QAPlots.C:538
 QAPlots.C:539
 QAPlots.C:540
 QAPlots.C:541
 QAPlots.C:542
 QAPlots.C:543
 QAPlots.C:544
 QAPlots.C:545
 QAPlots.C:546
 QAPlots.C:547
 QAPlots.C:548
 QAPlots.C:549
 QAPlots.C:550
 QAPlots.C:551
 QAPlots.C:552
 QAPlots.C:553
 QAPlots.C:554
 QAPlots.C:555
 QAPlots.C:556
 QAPlots.C:557
 QAPlots.C:558
 QAPlots.C:559
 QAPlots.C:560
 QAPlots.C:561
 QAPlots.C:562
 QAPlots.C:563
 QAPlots.C:564
 QAPlots.C:565
 QAPlots.C:566
 QAPlots.C:567
 QAPlots.C:568
 QAPlots.C:569
 QAPlots.C:570
 QAPlots.C:571
 QAPlots.C:572
 QAPlots.C:573
 QAPlots.C:574
 QAPlots.C:575
 QAPlots.C:576
 QAPlots.C:577
 QAPlots.C:578
 QAPlots.C:579
 QAPlots.C:580
 QAPlots.C:581
 QAPlots.C:582
 QAPlots.C:583
 QAPlots.C:584
 QAPlots.C:585
 QAPlots.C:586
 QAPlots.C:587
 QAPlots.C:588
 QAPlots.C:589
 QAPlots.C:590
 QAPlots.C:591
 QAPlots.C:592
 QAPlots.C:593
 QAPlots.C:594
 QAPlots.C:595
 QAPlots.C:596
 QAPlots.C:597
 QAPlots.C:598
 QAPlots.C:599
 QAPlots.C:600
 QAPlots.C:601
 QAPlots.C:602
 QAPlots.C:603
 QAPlots.C:604
 QAPlots.C:605
 QAPlots.C:606
 QAPlots.C:607
 QAPlots.C:608
 QAPlots.C:609
 QAPlots.C:610
 QAPlots.C:611
 QAPlots.C:612
 QAPlots.C:613
 QAPlots.C:614
 QAPlots.C:615
 QAPlots.C:616
 QAPlots.C:617
 QAPlots.C:618
 QAPlots.C:619
 QAPlots.C:620
 QAPlots.C:621
 QAPlots.C:622
 QAPlots.C:623
 QAPlots.C:624
 QAPlots.C:625
 QAPlots.C:626
 QAPlots.C:627
 QAPlots.C:628
 QAPlots.C:629
 QAPlots.C:630
 QAPlots.C:631
 QAPlots.C:632
 QAPlots.C:633
 QAPlots.C:634
 QAPlots.C:635
 QAPlots.C:636
 QAPlots.C:637
 QAPlots.C:638
 QAPlots.C:639
 QAPlots.C:640