ROOT logo
///////////////////////////////////////////////////////////
// PlotAndSave.C (called by AODQAChecks.C)               //
//                                                       //
// Written by John Groh                                  //
///////////////////////////////////////////////////////////

void PlotAndSave(Int_t runs[],
		 const Int_t nRuns,
		 Bool_t useMC,
		 TFile*& fout,

		 TH1F*& TPCnsigMeanTrendPion,
		 TH1F*& TPCnsigMeanTrendKaon,
		 TH1F*& TPCnsigMeanTrendProton,
		 TH1F*& TPCnsigSigmaTrendPion,
		 TH1F*& TPCnsigSigmaTrendKaon,
		 TH1F*& TPCnsigSigmaTrendProton,
		 TH1F*& TOFnsigMeanTrendPion,
		 TH1F*& TOFnsigMeanTrendKaon,
		 TH1F*& TOFnsigMeanTrendProton,
		 TH1F*& TOFnsigSigmaTrendPion,
		 TH1F*& TOFnsigSigmaTrendKaon,
		 TH1F*& TOFnsigSigmaTrendProton,

		 TH1F*& IntegRawYieldAll,
		 TH1F*& IntegRawYieldPiPlus,
		 TH1F*& IntegRawYieldKPlus,
		 TH1F*& IntegRawYieldProton,
		 TH1F*& IntegRawYieldPiMinus,
		 TH1F*& IntegRawYieldKMinus,
		 TH1F*& IntegRawYieldAntiproton,

		 TH1F*& EfficiencyPiPlus,
		 TH1F*& EfficiencyKPlus,
		 TH1F*& EfficiencyProton,
		 TH1F*& EfficiencyPiMinus,
		 TH1F*& EfficiencyKMinus,
		 TH1F*& EfficiencyAntiproton,

		 TH1F*& MatchEffPos,
		 TH1F*& MatchEffNeg)
{
  Printf("\n\n\n--- Entering funtion PlotAndSave() ---\n\n\n");

  // this gets rid of scientific notation for run numbers on the axes below
  TGaxis::SetMaxDigits(7);

  //-----------------------------------------------------------------------------------------
  // Draw the trends in the means and sigmas of the fits to the peaks of the projections at -
  // fixed Pt as a function of the run number                                               -
  //-----------------------------------------------------------------------------------------
  TCanvas * cNSigmaStability = new TCanvas("cNSigmaStability","cNSigmaStability",100,50,700,500);
  cNSigmaStability->Divide(2,2);
  // TPC means
  cNSigmaStability->cd(1);
  TH2F * hAxesTPCnsigMeans = new TH2F("hAxesTPCnsigMeans","",nRuns,0,nRuns,100,-2,2);
  hAxesTPCnsigMeans->GetYaxis()->SetTitle("TPC nsigma particle peak means");
  hAxesTPCnsigMeans->SetStats(kFALSE);
  for (Int_t irun=0; irun<nRuns; irun++)
    hAxesTPCnsigMeans->GetXaxis()->SetBinLabel(irun+1, Form("%i",runs[irun]));
  hAxesTPCnsigMeans->DrawCopy();
  TLegend * lTPCMeans = new TLegend(0.7,0.15,0.85,0.35);
  TPCnsigMeanTrendPion->SetMarkerStyle(Marker[0]);
  TPCnsigMeanTrendPion->SetMarkerColor(Color[0]);
  TPCnsigMeanTrendPion->SetLineColor(Color[0]);
  TPCnsigMeanTrendPion->SetStats(kFALSE);
  TPCnsigMeanTrendPion->DrawCopy("E1X0Psame");
  lTPCMeans->AddEntry(TPCnsigMeanTrendPion,"#pi^{+}, #pi^{-}","lpe");
  TPCnsigMeanTrendKaon->SetMarkerStyle(Marker[1]);
  TPCnsigMeanTrendKaon->SetMarkerColor(Color[1]);
  TPCnsigMeanTrendKaon->SetLineColor(Color[1]);
  TPCnsigMeanTrendKaon->SetStats(kFALSE);
  TPCnsigMeanTrendKaon->DrawCopy("E1X0Psame");
  lTPCMeans->AddEntry(TPCnsigMeanTrendKaon,"K^{+}, K^{-}","lpe");
  TPCnsigMeanTrendProton->SetMarkerStyle(Marker[2]);
  TPCnsigMeanTrendProton->SetMarkerColor(Color[2]);
  TPCnsigMeanTrendProton->SetLineColor(Color[2]);  
  TPCnsigMeanTrendProton->SetStats(kFALSE);
  TPCnsigMeanTrendProton->DrawCopy("E1X0Psame");
  lTPCMeans->AddEntry(TPCnsigMeanTrendProton,"p, #bar{p}","lpe");
  lTPCMeans->SetFillColor(0);
  lTPCMeans->DrawClone();
  // TPC sigmas
  cNSigmaStability->cd(3);
  TH2F * hAxesTPCnsigSigmas = new TH2F("hAxesTPCnsigSigmas","",nRuns,0,nRuns,100,-1,3);
  hAxesTPCnsigSigmas->GetYaxis()->SetTitle("TPC nsigma particle peak sigmas");
  hAxesTPCnsigSigmas->SetStats(kFALSE);
  for (Int_t irun=0; irun<nRuns; irun++)
    hAxesTPCnsigSigmas->GetXaxis()->SetBinLabel(irun+1, Form("%i",runs[irun]));
  hAxesTPCnsigSigmas->DrawCopy();
  TPCnsigSigmaTrendPion->SetMarkerStyle(Marker[0]);
  TPCnsigSigmaTrendPion->SetMarkerColor(Color[0]);
  TPCnsigSigmaTrendPion->SetLineColor(Color[0]);
  TPCnsigSigmaTrendPion->SetStats(kFALSE);
  TPCnsigSigmaTrendPion->DrawCopy("X0E1Psame");
  TPCnsigSigmaTrendKaon->SetMarkerStyle(Marker[1]);
  TPCnsigSigmaTrendKaon->SetMarkerColor(Color[1]);
  TPCnsigSigmaTrendKaon->SetLineColor(Color[1]);
  TPCnsigSigmaTrendKaon->SetStats(kFALSE);
  TPCnsigSigmaTrendKaon->DrawCopy("X0E1Psame");
  TPCnsigSigmaTrendProton->SetMarkerStyle(Marker[2]);
  TPCnsigSigmaTrendProton->SetMarkerColor(Color[2]);
  TPCnsigSigmaTrendProton->SetLineColor(Color[2]);
  TPCnsigSigmaTrendProton->SetStats(kFALSE);
  TPCnsigSigmaTrendProton->DrawCopy("X0E1Psame");
  TLegend * lTPCSigmas = new TLegend(0.7,0.15,0.85,0.35);
  lTPCSigmas->AddEntry(TPCnsigSigmaTrendPion,"#pi^{+}, #pi^{-}","lpe");
  lTPCSigmas->AddEntry(TPCnsigSigmaTrendKaon,"K^{+}, K^{-}","lpe");
  lTPCSigmas->AddEntry(TPCnsigSigmaTrendProton,"p, #bar{p}","lpe");
  lTPCSigmas->SetFillColor(0);
  lTPCSigmas->DrawClone();
  // TOF means
  cNSigmaStability->cd(2);
  TH2F * hAxesTOFnsigMeans = new TH2F("hAxesTOFnsigMeans","",nRuns,0,nRuns,100,-2,2);
  hAxesTOFnsigMeans->GetYaxis()->SetTitle("TOF nsigma particle peak means");
  hAxesTOFnsigMeans->SetStats(kFALSE);
  for (Int_t irun=0; irun<nRuns; irun++)
    hAxesTOFnsigMeans->GetXaxis()->SetBinLabel(irun+1, Form("%i",runs[irun]));
  hAxesTOFnsigMeans->DrawCopy();
  TOFnsigMeanTrendPion->SetMarkerStyle(Marker[0]);
  TOFnsigMeanTrendPion->SetMarkerColor(Color[0]);
  TOFnsigMeanTrendPion->SetLineColor(Color[0]);
  TOFnsigMeanTrendPion->SetStats(kFALSE);
  TOFnsigMeanTrendPion->DrawCopy("X0E1Psame");
  TOFnsigMeanTrendKaon->SetMarkerStyle(Marker[1]);
  TOFnsigMeanTrendKaon->SetMarkerColor(Color[1]);
  TOFnsigMeanTrendKaon->SetLineColor(Color[1]);
  TOFnsigMeanTrendKaon->SetStats(kFALSE);
  TOFnsigMeanTrendKaon->DrawCopy("X0E1Psame");
  TOFnsigMeanTrendProton->SetMarkerStyle(Marker[2]);
  TOFnsigMeanTrendProton->SetMarkerColor(Color[2]);
  TOFnsigMeanTrendProton->SetLineColor(Color[2]);  
  TOFnsigMeanTrendProton->SetStats(kFALSE);
  TOFnsigMeanTrendProton->DrawCopy("X0E1Psame");
  TLegend * lTOFMeans = new TLegend(0.7,0.15,0.85,0.35);
  lTOFMeans->AddEntry(TOFnsigMeanTrendPion,"#pi^{+}, #pi^{-}","lpe");
  lTOFMeans->AddEntry(TOFnsigMeanTrendKaon,"K^{+}, K^{-}","lpe");
  lTOFMeans->AddEntry(TOFnsigMeanTrendProton,"p, #bar{p}","lpe");
  lTOFMeans->SetFillColor(0);
  lTOFMeans->DrawClone();
  // TOF sigmas
  cNSigmaStability->cd(4);
  TH2F * hAxesTOFnsigSigmas = new TH2F("hAxesTOFnsigSigmas","",nRuns,0,nRuns,100,-1,2);
  hAxesTOFnsigSigmas->GetYaxis()->SetTitle("TOF nsigma particle peak sigmas");
  hAxesTOFnsigSigmas->SetStats(kFALSE);
  for (Int_t irun=0; irun<nRuns; irun++)
    hAxesTOFnsigSigmas->GetXaxis()->SetBinLabel(irun+1, Form("%i",runs[irun]));
  hAxesTOFnsigSigmas->DrawCopy();
  TOFnsigSigmaTrendPion->SetMarkerStyle(Marker[0]);
  TOFnsigSigmaTrendPion->SetMarkerColor(Color[0]);
  TOFnsigSigmaTrendPion->SetLineColor(Color[0]);
  TOFnsigSigmaTrendPion->SetStats(kFALSE);
  TOFnsigSigmaTrendPion->DrawCopy("X0E1Psame");
  TOFnsigSigmaTrendKaon->SetMarkerStyle(Marker[1]);
  TOFnsigSigmaTrendKaon->SetMarkerColor(Color[1]);
  TOFnsigSigmaTrendKaon->SetLineColor(Color[1]);
  TOFnsigSigmaTrendKaon->SetStats(kFALSE);
  TOFnsigSigmaTrendKaon->DrawCopy("X0E1Psame");
  TOFnsigSigmaTrendProton->SetMarkerStyle(Marker[2]);
  TOFnsigSigmaTrendProton->SetMarkerColor(Color[2]);
  TOFnsigSigmaTrendProton->SetLineColor(Color[2]);
  TOFnsigSigmaTrendProton->SetStats(kFALSE);
  TOFnsigSigmaTrendProton->DrawCopy("X0E1Psame");
  TLegend * lTOFSigmas = new TLegend(0.7,0.15,0.85,0.35);
  lTOFSigmas->AddEntry(TOFnsigSigmaTrendPion,"#pi^{+}, #pi^{-}","lpe");
  lTOFSigmas->AddEntry(TOFnsigSigmaTrendKaon,"K^{+}, K^{-}","lpe");
  lTOFSigmas->AddEntry(TOFnsigSigmaTrendProton,"p, #bar{p}","lpe");
  lTOFSigmas->SetFillColor(0);
  lTOFSigmas->DrawClone();
  // write the canvas to the file
  fout->cd();
  cNSigmaStability->Write();

  //------------------------------------------------------------------------------
  // Draw the trends in the integrated raw yield as a function of the run number -
  //------------------------------------------------------------------------------
  TCanvas * cIntegRawYieldStability = new TCanvas("cIntegRawYieldStability","cIntegRawYieldStability",150,75,700,500);
  gPad->SetLogy();
  TLegend * lIntegRawYield = new TLegend(0.75,0.4,0.85,0.6);
  lIntegRawYield->SetFillColor(0);
  // all particles
  for (Int_t irun=0; irun<nRuns; irun++)
    IntegRawYieldAll->GetXaxis()->SetBinLabel(irun+1, Form("%i",runs[irun]));
  IntegRawYieldAll->SetTitle("Raw Yield, Integrated over all p_{T}");
  IntegRawYieldAll->SetStats(kFALSE);
  IntegRawYieldAll->SetMarkerStyle(34);
  IntegRawYieldAll->SetMarkerColor(kGreen);
  IntegRawYieldAll->SetLineColor(kGreen);
  IntegRawYieldAll->GetYaxis()->SetRangeUser(50,10000);
  IntegRawYieldAll->DrawCopy("E1X0P");
  lIntegRawYield->AddEntry(IntegRawYieldAll,"All Particles","p");
  // pi+
  IntegRawYieldPiPlus->SetMarkerStyle(Marker[0]);
  IntegRawYieldPiPlus->SetMarkerColor(Color[0]);
  IntegRawYieldPiPlus->SetLineColor(Color[0]);
  IntegRawYieldPiPlus->DrawCopy("E1X0Psame");
  lIntegRawYield->AddEntry(IntegRawYieldPiPlus,"#pi^{+}","p");
  // K+
  IntegRawYieldKPlus->SetMarkerStyle(Marker[1]);
  IntegRawYieldKPlus->SetMarkerColor(Color[1]);
  IntegRawYieldKPlus->SetLineColor(Color[1]);
  IntegRawYieldKPlus->DrawCopy("E1X0Psame");
  lIntegRawYield->AddEntry(IntegRawYieldKPlus,"K^{+}","p");
  // Proton
  IntegRawYieldProton->SetMarkerStyle(Marker[2]);
  IntegRawYieldProton->SetMarkerColor(Color[2]);
  IntegRawYieldProton->SetLineColor(Color[2]);
  IntegRawYieldProton->DrawCopy("E1X0Psame");
  lIntegRawYield->AddEntry(IntegRawYieldProton,"p","p");
  // pi-
  IntegRawYieldPiMinus->SetMarkerStyle(Marker[3]);
  IntegRawYieldPiMinus->SetMarkerColor(Color[0]);
  IntegRawYieldPiMinus->SetLineColor(Color[0]);
  IntegRawYieldPiMinus->DrawCopy("E1X0Psame");
  lIntegRawYield->AddEntry(IntegRawYieldPiMinus,"#pi^{-}","p");
  // K-
  IntegRawYieldKMinus->SetMarkerStyle(Marker[4]);
  IntegRawYieldKMinus->SetMarkerColor(Color[1]);
  IntegRawYieldKMinus->SetLineColor(Color[1]);
  IntegRawYieldKMinus->DrawCopy("E1X0Psame");
  lIntegRawYield->AddEntry(IntegRawYieldKMinus,"K^{-}","p");
  // Antiproton
  IntegRawYieldAntiproton->SetMarkerStyle(Marker[5]);
  IntegRawYieldAntiproton->SetMarkerColor(Color[2]);
  IntegRawYieldAntiproton->SetLineColor(Color[2]);
  IntegRawYieldAntiproton->SetTitle("Raw Yield, Integrated over all p_{T}");
  IntegRawYieldAntiproton->DrawCopy("E1X0Psame");
  lIntegRawYield->AddEntry(IntegRawYieldAntiproton,"#bar{p}","p");
  // write the canvas to the file
  lIntegRawYield->DrawClone();
  fout->cd();
  cIntegRawYieldStability->Write();

  //------------------------------------------------------
  // Plot the efficiency as a function of the run number -
  //------------------------------------------------------
  if (useMC)
    {
      TCanvas * cEfficiencyRun = new TCanvas("cEfficiencyRun","cEfficiencyRun",200,100,700,500);
      TH2F * hAxesEfficiency = new TH2F("hAxesEfficiency","MC Correction Factor at p_{T} = 0.9 GeV/c",nRuns,0,nRuns,100,0,1);
      for (Int_t irun=0; irun<nRuns; irun++)
	hAxesEfficiency->GetXaxis()->SetBinLabel(irun+1, Form("%i",runs[irun]));
      hAxesEfficiency->SetStats(kFALSE);
      hAxesEfficiency->DrawCopy();
      TLegend * lEfficiency = new TLegend(.79,.69,.99,.99);
      // pi+
      EfficiencyPiPlus->SetMarkerStyle(Marker[0]);
      EfficiencyPiPlus->SetMarkerColor(Color[0]);
      EfficiencyPiPlus->SetLineColor(Color[0]);
      EfficiencyPiPlus->DrawCopy("E1X0Psame");
      lEfficiency->AddEntry(EfficiencyPiPlus,"#pi^{+}","lpe");
      // K+
      EfficiencyKPlus->SetMarkerStyle(Marker[1]);
      EfficiencyKPlus->SetMarkerColor(Color[1]);
      EfficiencyKPlus->SetLineColor(Color[1]);
      EfficiencyKPlus->DrawCopy("E1X0Psame");
      lEfficiency->AddEntry(EfficiencyKPlus,"K^{+}","p");
      // Proton
      EfficiencyProton->SetMarkerStyle(Marker[2]);
      EfficiencyProton->SetMarkerColor(Color[2]);
      EfficiencyProton->SetLineColor(Color[2]);
      EfficiencyProton->DrawCopy("E1X0Psame");
      lEfficiency->AddEntry(EfficiencyProton,"p","lpe");
      // pi-
      EfficiencyPiMinus->SetMarkerStyle(Marker[3]);
      EfficiencyPiMinus->SetMarkerColor(Color[0]);
      EfficiencyPiMinus->SetLineColor(Color[0]);
      EfficiencyPiMinus->DrawCopy("E1X0Psame");
      lEfficiency->AddEntry(EfficiencyPiMinus,"#pi^{-}","lpe");
      // K-
      EfficiencyKMinus->SetMarkerStyle(Marker[4]);
      EfficiencyKMinus->SetMarkerColor(Color[1]);
      EfficiencyKMinus->SetLineColor(Color[1]);
      EfficiencyKMinus->DrawCopy("E1X0Psame");
      lEfficiency->AddEntry(EfficiencyKMinus,"K^{-}","lpe");
      // Antiproton
      EfficiencyAntiproton->SetMarkerStyle(Marker[5]);
      EfficiencyAntiproton->SetMarkerColor(Color[2]);
      EfficiencyAntiproton->SetLineColor(Color[2]);
      EfficiencyAntiproton->DrawCopy("E1X0Psame");
      lEfficiency->AddEntry(EfficiencyAntiproton,"#bar{p}","lpe");
      // draw legend
      lEfficiency->SetFillColor(0);
      lEfficiency->DrawClone();
      // write the canvas to file
      fout->cd();
      cEfficiencyRun->Write();
      
      // write the last remaining canvas - cEfficienciesAllRuns - to file
      fout->cd();
      cEfficienciesAllRuns->Write();
    }

  //---------------------------------------------------------------
  // Plot the matching efficiency as a function of the run number -
  //---------------------------------------------------------------
  TCanvas * cMatchingEfficiency = new TCanvas("cMatchingEfficiency","cMatchingEfficiency",250,125,700,500);
  cMatchingEfficiency->cd();
  TH2F * hAxesMatchEff = new TH2F("hAxesMatchEff","",nRuns,0,nRuns,100,0,1);
  hAxesMatchEff->SetTitle("TOF Matching Efficiency at p_{T} = 0.9 GeV/c;;");
  for (Int_t irun=0; irun<nRuns; irun++)
    hAxesMatchEff->GetXaxis()->SetBinLabel(irun+1, Form("%i",runs[irun]));
  hAxesMatchEff->SetStats(kFALSE);
  hAxesMatchEff->DrawCopy();
  TLegend * lMatchEff = new TLegend(.7,.75,.85,.85);
  lMatchEff->SetFillColor(0);
  // positive particles
  MatchEffPos->SetMarkerStyle(Marker[0]);
  MatchEffPos->SetMarkerColor(kBlue);
  MatchEffPos->SetLineColor(kBlue);
  MatchEffPos->DrawCopy("E1X0Psame");
  lMatchEff->AddEntry(MatchEffPos,"Positive Particles","pe");
  // negative particles
  MatchEffNeg->SetMarkerStyle(Marker[1]);
  MatchEffNeg->SetMarkerColor(kRed);
  MatchEffNeg->SetLineColor(kRed);
  MatchEffNeg->DrawCopy("E1X0Psame");
  lMatchEff->AddEntry(MatchEffNeg,"Negative Particles","pe");
  // write to file
  lMatchEff->DrawClone();
  fout->cd();
  cMatchingEfficiency->Write();

  /*
  //-------------------------
  // nsigma Projection fits -
  //-------------------------
  TH1F * TPCnsigMeanPionProj = new TH1F("TPCnsigMeanPionProj","",100,-1,1);
  TH1F * TPCnsigMeanKaonProj = new TH1F("TPCnsigMeanKaonProj","",100,-1,1);
  TH1F * TPCnsigMeanProtonProj = new TH1F("TPCnsigMeanProtonProj","",100,-1,1);
  TH1F * TPCnsigSigmaPionProj = new TH1F("TPCnsigSigmaPionProj","",100,0,2);
  TH1F * TPCnsigSigmaKaonProj = new TH1F("TPCnsigSigmaKaonProj","",100,0,2);
  TH1F * TPCnsigSigmaProtonProj = new TH1F("TPCnsigSigmaProtonProj","",100,0,2);
  TH1F * TOFnsigMeanPionProj = new TH1F("TOFnsigMeanPionProj","",100,-1,1);
  TH1F * TOFnsigMeanKaonProj = new TH1F("TOFnsigMeanKaonProj","",100,-1,1);
  TH1F * TOFnsigMeanProtonProj = new TH1F("TOFnsigMeanProtonProj","",100,-1,1);
  TH1F * TOFnsigSigmaPionProj = new TH1F("TOFnsigSigmaPionProj","",100,0,2);
  TH1F * TOFnsigSigmaKaonProj = new TH1F("TOFnsigSigmaKaonProj","",100,0,2);
  TH1F * TOFnsigSigmaProtonProj = new TH1F("TOFnsigSigmaProtonProj","",100,0,2);
  for (Int_t irun=0; irun<nRuns; irun++)
    {
      TPCnsigMeanPionProj->Fill(TPCnsigMeanTrendPion->GetBinContent(irun+1));
      TPCnsigMeanKaonProj->Fill(TPCnsigMeanTrendKaon->GetBinContent(irun+1));
      TPCnsigMeanProtonProj->Fill(TPCnsigMeanTrendProton->GetBinContent(irun+1));
      TPCnsigSigmaPionProj->Fill(TPCnsigSigmaTrendPion->GetBinContent(irun+1));
      TPCnsigSigmaKaonProj->Fill(TPCnsigSigmaTrendKaon->GetBinContent(irun+1));
      TPCnsigSigmaProtonProj->Fill(TPCnsigSigmaTrendProton->GetBinContent(irun+1));
      TOFnsigMeanPionProj->Fill(TOFnsigMeanTrendPion->GetBinContent(irun+1));
      TOFnsigMeanKaonProj->Fill(TOFnsigMeanTrendKaon->GetBinContent(irun+1));
      TOFnsigMeanProtonProj->Fill(TOFnsigMeanTrendProton->GetBinContent(irun+1));
      TOFnsigSigmaPionProj->Fill(TOFnsigSigmaTrendPion->GetBinContent(irun+1));
      TOFnsigSigmaKaonProj->Fill(TOFnsigSigmaTrendKaon->GetBinContent(irun+1));
      TOFnsigSigmaProtonProj->Fill(TOFnsigSigmaTrendProton->GetBinContent(irun+1));
    }
  TCanvas * cNSigTrendProj = new TCanvas("cNSigTrendProj","cNSigTrendProj",300,150,700,500);
  cNSigTrendProj->Divide(2,2);
  // TPC Means
  cNSigTrendProj->cd(1);
  TH2F * hAxesTPCNSigMeanProj = new TH2F("hAxesTPCNSigMeanProj","",100,-1,1,100,0,80);
  hAxesTPCNSigMeanProj->SetStats(kFALSE);
  hAxesTPCNSigMeanProj->GetXaxis()->SetTitle("TPC nsigma Means");
  hAxesTPCNSigMeanProj->GetYaxis()->SetTitle("Number of Runs");
  hAxesTPCNSigMeanProj->DrawCopy();
  TPCnsigMeanPionProj->SetMarkerStyle(Marker[0]);
  TPCnsigMeanPionProj->SetMarkerColor(Color[0]);
  TPCnsigMeanPionProj->SetLineColor(Color[0]);
  TPCnsigMeanPionProj->SetStats(kFALSE);
  TPCnsigMeanPionProj->DrawCopy("LPsame");
  TPCnsigMeanKaonProj->SetMarkerStyle(Marker[1]);
  TPCnsigMeanKaonProj->SetMarkerColor(Color[1]);
  TPCnsigMeanKaonProj->SetLineColor(Color[1]);
  TPCnsigMeanKaonProj->SetStats(kFALSE);
  TPCnsigMeanKaonProj->DrawCopy("LPsame");
  TPCnsigMeanProtonProj->SetMarkerStyle(Marker[1]);
  TPCnsigMeanProtonProj->SetMarkerColor(Color[2]);
  TPCnsigMeanProtonProj->SetLineColor(Color[2]);
  TPCnsigMeanProtonProj->SetStats(kFALSE);
  TPCnsigMeanProtonProj->DrawCopy("LPsame");
  TLegend * lTPCNSigMeanProj = new TLegend(.65,.65,.85,.85);  
  lTPCNSigMeanProj->AddEntry(TPCnsigMeanPionProj,"#pi^{+}, #pi^{-}","lp");
  lTPCNSigMeanProj->AddEntry(TPCnsigMeanKaonProj,"K^{+}, K^{-}","lp");
  lTPCNSigMeanProj->AddEntry(TPCnsigMeanProtonProj,"p, #bar{p}","lp");
  lTPCNSigMeanProj->SetFillColor(0);
  lTPCNSigMeanProj->DrawClone();
  // TPC Sigmas
  cNSigTrendProj->cd(3);
  TH2F * hAxesTPCNSigSigmaProj = new TH2F("hAxesTPCNSigSigmaProj","",100,0,2,100,0,80);
  hAxesTPCNSigSigmaProj->SetStats(kFALSE);
  hAxesTPCNSigSigmaProj->GetXaxis()->SetTitle("TPC nsigma Sigmas");
  hAxesTPCNSigSigmaProj->GetYaxis()->SetTitle("Number of Runs");
  hAxesTPCNSigSigmaProj->DrawCopy();
  TPCnsigSigmaPionProj->SetMarkerStyle(Marker[0]);
  TPCnsigSigmaPionProj->SetMarkerColor(Color[0]);
  TPCnsigSigmaPionProj->SetLineColor(Color[0]);
  TPCnsigSigmaPionProj->SetStats(kFALSE);
  TPCnsigSigmaPionProj->DrawCopy("LPsame");
  TPCnsigSigmaKaonProj->SetMarkerStyle(Marker[1]);
  TPCnsigSigmaKaonProj->SetMarkerColor(Color[1]);
  TPCnsigSigmaKaonProj->SetLineColor(Color[1]);
  TPCnsigSigmaKaonProj->SetStats(kFALSE);
  TPCnsigSigmaKaonProj->DrawCopy("LPsame");
  TPCnsigSigmaProtonProj->SetMarkerStyle(Marker[2]);
  TPCnsigSigmaProtonProj->SetMarkerColor(Color[2]);
  TPCnsigSigmaProtonProj->SetLineColor(Color[2]);
  TPCnsigSigmaProtonProj->SetStats(kFALSE);
  TPCnsigSigmaProtonProj->DrawCopy("LPsame");
  TLegend * lTPCNSigSigmaProj = new TLegend(.65,.65,.85,.85);  
  lTPCNSigSigmaProj->AddEntry(TPCnsigSigmaPionProj,"#pi^{+}, #pi^{-}","lp");
  lTPCNSigSigmaProj->AddEntry(TPCnsigSigmaKaonProj,"K^{+}, K^{-}","lp");
  lTPCNSigSigmaProj->AddEntry(TPCnsigSigmaProtonProj,"p, #bar{p}","lp");
  lTPCNSigSigmaProj->SetFillColor(0);
  lTPCNSigSigmaProj->DrawClone();
  // TOF Means
  cNSigTrendProj->cd(2);
  TH2F * hAxesTOFNSigMeanProj = new TH2F("hAxesTOFNSigMeanProj","",100,-1,1,100,0,80);
  hAxesTOFNSigMeanProj->SetStats(kFALSE);
  hAxesTOFNSigMeanProj->GetXaxis()->SetTitle("TOF nsigma Means");
  hAxesTOFNSigMeanProj->GetYaxis()->SetTitle("Number of Runs");
  hAxesTOFNSigMeanProj->DrawCopy();
  TOFnsigMeanPionProj->SetMarkerStyle(Marker[0]);
  TOFnsigMeanPionProj->SetMarkerColor(Color[0]);
  TOFnsigMeanPionProj->SetLineColor(Color[0]);
  TOFnsigMeanPionProj->SetStats(kFALSE);
  TOFnsigMeanPionProj->DrawCopy("LPsame");
  TOFnsigMeanKaonProj->SetMarkerStyle(Marker[1]);
  TOFnsigMeanKaonProj->SetMarkerColor(Color[1]);
  TOFnsigMeanKaonProj->SetLineColor(Color[1]);
  TOFnsigMeanKaonProj->SetStats(kFALSE);
  TOFnsigMeanKaonProj->DrawCopy("LPsame");
  TOFnsigMeanProtonProj->SetMarkerStyle(Marker[2]);
  TOFnsigMeanProtonProj->SetMarkerColor(Color[2]);
  TOFnsigMeanProtonProj->SetLineColor(Color[2]);
  TOFnsigMeanProtonProj->SetStats(kFALSE);
  TOFnsigMeanProtonProj->DrawCopy("LPsame");
  TLegend * lTOFNSigMeanProj = new TLegend(.65,.65,.85,.85);  
  lTOFNSigMeanProj->AddEntry(TOFnsigMeanPionProj,"#pi^{+}, #pi^{-}","lp");
  lTOFNSigMeanProj->AddEntry(TOFnsigMeanKaonProj,"K^{+}, K^{-}","lp");
  lTOFNSigMeanProj->AddEntry(TOFnsigMeanProtonProj,"p, #bar{p}","lp");
  lTOFNSigMeanProj->SetFillColor(0);
  lTOFNSigMeanProj->DrawClone();
  // TOF Sigmas
  cNSigTrendProj->cd(4);
  TH2F * hAxesTOFNSigSigmaProj = new TH2F("hAxesTOFNSigSigmaProj","",100,0,2,100,0,80);
  hAxesTOFNSigSigmaProj->SetStats(kFALSE);
  hAxesTOFNSigSigmaProj->GetXaxis()->SetTitle("TOF nsigma Sigmas");
  hAxesTOFNSigSigmaProj->GetYaxis()->SetTitle("Number of Runs");
  hAxesTOFNSigSigmaProj->DrawCopy();
  TOFnsigSigmaPionProj->SetMarkerStyle(Marker[0]);
  TOFnsigSigmaPionProj->SetMarkerColor(Color[0]);
  TOFnsigSigmaPionProj->SetLineColor(Color[0]);
  TOFnsigSigmaPionProj->SetStats(kFALSE);
  TOFnsigSigmaPionProj->DrawCopy("LPsame");
  TOFnsigSigmaKaonProj->SetMarkerStyle(Marker[1]);
  TOFnsigSigmaKaonProj->SetMarkerColor(Color[1]);
  TOFnsigSigmaKaonProj->SetLineColor(Color[1]);
  TOFnsigSigmaKaonProj->SetStats(kFALSE);
  TOFnsigSigmaKaonProj->DrawCopy("LPsame");
  TOFnsigSigmaProtonProj->SetMarkerStyle(Marker[2]);
  TOFnsigSigmaProtonProj->SetMarkerColor(Color[2]);
  TOFnsigSigmaProtonProj->SetLineColor(Color[2]);
  TOFnsigSigmaProtonProj->SetStats(kFALSE);
  TOFnsigSigmaProtonProj->DrawCopy("LPsame");
  TLegend * lTOFNSigSigmaProj = new TLegend(.65,.65,.85,.85);  
  lTOFNSigSigmaProj->AddEntry(TOFnsigSigmaPionProj,"#pi^{+}, #pi^{-}","lp");
  lTOFNSigSigmaProj->AddEntry(TOFnsigSigmaKaonProj,"K^{+}, K^{-}","lp");
  lTOFNSigSigmaProj->AddEntry(TOFnsigSigmaProtonProj,"p, #bar{p}","lp");
  lTOFNSigSigmaProj->SetFillColor(0);
  lTOFNSigSigmaProj->DrawClone();
  // write to file
  fout->cd();
  cNSigTrendProj->Write();

  //-----------------------
  // Integrated Raw Yield -
  //-----------------------
  TH1F * IntegRawYieldProj = new TH1F("IntegRawYieldProj","",50,7500,9000);
  for (Int_t irun=0; irun<nRuns; irun++)
    {
      IntegRawYieldProj->Fill(IntegRawYieldAll->GetBinContent(irun+1));
    }
  TCanvas * cIntegRawYieldProj = new TCanvas("cIntegRawYieldProj","cIntegRawYieldProj",350,175,700,500);
  cIntegRawYieldProj->cd();
  IntegRawYieldProj->SetMarkerStyle(20);
  IntegRawYieldProj->SetMarkerColor(kBlack);
  IntegRawYieldProj->SetLineColor(kBlack);
  IntegRawYieldProj->SetStats(kFALSE);
  IntegRawYieldProj->GetXaxis()->SetTitle("Integrated Raw Yield (all particles)");
  IntegRawYieldProj->GetYaxis()->SetTitle("Number of Runs");
  IntegRawYieldProj->DrawCopy("hist");
  // write to file
  fout->cd();
  cIntegRawYieldProj->Write();

  //---------------
  // Efficiencies -
  //---------------
  if (useMC)
    {
      TH1F * EffPiPlusProj = new TH1F("EffPiPlusProj","",100,0,1);
      TH1F * EffKPlusProj = new TH1F("EffKPlusProj","",100,0,1);
      TH1F * EffProtonProj = new TH1F("EffProtonProj","",100,0,1);
      TH1F * EffPiMinusProj = new TH1F("EffPiMinusProj","",100,0,1);
      TH1F * EffKMinusProj = new TH1F("EffKMinusProj","",100,0,1);
      TH1F * EffAntiprotonProj = new TH1F("EffAntiprotonProj","",100,0,1);
      for (Int_t irun=0; irun<nRuns; irun++)
	{
	  EffPiPlusProj->Fill(EfficiencyPiPlus->GetBinContent(irun+1));
	  EffKPlusProj->Fill(EfficiencyKPlus->GetBinContent(irun+1));
	  EffProtonProj->Fill(EfficiencyProton->GetBinContent(irun+1));
	  EffPiMinusProj->Fill(EfficiencyPiMinus->GetBinContent(irun+1));
	  EffKMinusProj->Fill(EfficiencyKMinus->GetBinContent(irun+1));
	  EffAntiprotonProj->Fill(EfficiencyAntiproton->GetBinContent(irun+1));
	}
      TCanvas * cEffProj = new TCanvas("cEffProj","cEffProj",400,200,700,500);
      cEffProj->cd();
      TH2F * hAxesEffProj = new TH2F("hAxesEffProj","",100,0.35,1,100,0,60);
      hAxesEffProj->SetStats(kFALSE);
      hAxesEffProj->GetXaxis()->SetTitle("Efficiency");
      hAxesEffProj->GetYaxis()->SetTitle("Number of Runs");
      hAxesEffProj->DrawCopy();
      EffPiPlusProj->SetLineColor(Color[0]);
      EffPiPlusProj->SetMarkerStyle(Marker[0]);
      EffPiPlusProj->SetMarkerColor(Color[0]);
      EffPiPlusProj->SetStats(kFALSE);
      EffPiPlusProj->DrawCopy("LPSame");
      EffKPlusProj->SetLineColor(Color[1]);
      EffKPlusProj->SetMarkerStyle(Marker[1]);
      EffKPlusProj->SetMarkerColor(Color[1]);
      EffKPlusProj->SetStats(kFALSE);
      EffKPlusProj->DrawCopy("LPSame");
      EffProtonProj->SetLineColor(Color[2]);
      EffProtonProj->SetMarkerStyle(Marker[2]);
      EffProtonProj->SetMarkerColor(Color[2]);
      EffProtonProj->SetStats(kFALSE);
      EffProtonProj->DrawCopy("LPSame");
      EffPiMinusProj->SetLineColor(Color[0]);
      EffPiMinusProj->SetMarkerStyle(Marker[3]);
      EffPiMinusProj->SetMarkerColor(Color[0]);
      EffPiMinusProj->SetStats(kFALSE);
      EffPiMinusProj->DrawCopy("LPSame");
      EffKMinusProj->SetLineColor(Color[1]);
      EffKMinusProj->SetMarkerStyle(Marker[4]);
      EffKMinusProj->SetMarkerColor(Color[1]);
      EffKMinusProj->SetStats(kFALSE);
      EffKMinusProj->DrawCopy("LPSame");
      EffAntiprotonProj->SetLineColor(Color[2]);
      EffAntiprotonProj->SetMarkerStyle(Marker[5]);
      EffAntiprotonProj->SetMarkerColor(Color[2]);
      EffAntiprotonProj->SetStats(kFALSE);
      EffAntiprotonProj->DrawCopy("LPSame");
      TLegend * lEffProj = new TLegend(.65,.65,.85,.85);
      lEffProj->AddEntry(EffPiPlusProj,"#pi^{+}","lp");
      lEffProj->AddEntry(EffKPlusProj,"K^{+}","lp");
      lEffProj->AddEntry(EffProtonProj,"lp","lp");
      lEffProj->AddEntry(EffPiMinusProj,"#pi^{-}","lp");
      lEffProj->AddEntry(EffKMinusProj,"K^{-}","lp");
      lEffProj->AddEntry(EffAntiprotonProj,"#bar{p}","lp");
      lEffProj->SetFillColor(0);
      lEffProj->DrawClone();
      // save to file
      fout->cd();
      cEffProj->Write();
    }
  
  //------------------------
  // Matching Efficiencies -
  //------------------------
  // project the matching efficiency histograms onto the y-axis
  TH1F * MatchEffPosProj = new TH1F("MatchEffPosProj","",100,0.54,0.68);
  TH1F * MatchEffNegProj = new TH1F("MatchEffNegProj","",100,0.54,0.68);
  for (Int_t irun=0; irun<nRuns; irun++)
    {
      MatchEffPosProj->Fill(MatchEffPos->GetBinContent(irun+1));
      MatchEffNegProj->Fill(MatchEffNeg->GetBinContent(irun+1));
    }
  TCanvas * cMatchEffProj = new TCanvas("cMatchEffProj","cMatchEffProj",450,225,700,500);
  cMatchEffProj->cd();
  MatchEffPosProj->SetMarkerStyle(20);
  MatchEffPosProj->SetMarkerColor(kBlue);
  MatchEffPosProj->SetLineColor(kBlue);
  MatchEffPosProj->SetStats(kFALSE);
  MatchEffPosProj->GetXaxis()->SetTitle("Matching Efficiency");
  MatchEffPosProj->GetYaxis()->SetTitle("Number of Runs");
  MatchEffPosProj->GetYaxis()->SetRangeUser(0,50);
  MatchEffPosProj->DrawCopy("LP");
  MatchEffNegProj->SetMarkerStyle(21);
  MatchEffNegProj->SetMarkerColor(kRed);
  MatchEffNegProj->SetLineColor(kRed);
  MatchEffNegProj->SetStats(kFALSE);
  MatchEffNegProj->DrawCopy("LPsame");
  TLegend * lMatchEffProj = new TLegend(0.75,0.75,0.85,0.85);
  lMatchEffProj->AddEntry(MatchEffPosProj,"Pos","lp");
  lMatchEffProj->AddEntry(MatchEffNegProj,"Neg","lp");
  lMatchEffProj->SetFillColor(0);
  lMatchEffProj->DrawClone();
  // save to file
  fout->cd();
  cMatchEffProj->Write();
  */

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