ROOT logo
#include "TChain.h"
#include "TTree.h"
#include "TH1F.h"
#include "TH2F.h"
#include "TCanvas.h"
#include "TList.h"
#include "TObjArray.h"
#include "TString.h"
#include "TParticle.h"

#include "AliAnalysisTask.h"
#include "AliAnalysisManager.h"
#include "AliAnalysisTaskSE.h"
#include "AliCentrality.h"

#include "AliESDEvent.h"
#include "AliESDtrackCuts.h"
#include "AliESDInputHandler.h"

#include "AliAODEvent.h"
#include "AliAODTrack.h"
#include "AliAODHandler.h"
#include "AliAODInputHandler.h"
#include "AliAODMCParticle.h"
#include "AliAODpidUtil.h"
#include "AliAnalysisUtils.h"

#include "AliMCEvent.h"
#include "AliStack.h"
#include "AliInputEventHandler.h"

#include "AliAnalysisTaskParticleEfficiency.h"


ClassImp(AliAnalysisTaskParticleEfficiency)
//ClassImp(AliAnalysisTaskParticleEfficiency)

using std::cout;
using std::endl;

//_______________________________________________________

AliAnalysisTaskParticleEfficiency::AliAnalysisTaskParticleEfficiency(const Char_t *partName) :
AliAnalysisTaskSE(partName), centrality(0), fHistoList(0),  fHistEv(0), fpidResponse(0)
{

  for(Int_t i = 0; i < MULTBINS*PARTTYPES; i++)  {
    fGeneratedMCPrimaries[i] = NULL;
    fMCPrimariesThatAreReconstructed[i] = NULL;
    fReconstructedAfterCuts[i] = NULL;
    fReconstructedNotPrimaries[i] = NULL;
    fReconstructedPrimaries[i] = NULL;
    fContamination[i] = NULL;
  }
  for ( Int_t i = 0; i < 11; i++) { 
    fHistQA[i] = NULL;
    if(i<3) fHistQA2D[i] = NULL;
  }
  
  /* init track cuts */
  //fTrackCuts = AliESDtrackCuts::GetStandardITSTPCTrackCuts2010();
  /*fTrackCuts =  AliESDtrackCuts::GetStandardTPCOnlyTrackCuts();
    if( !fTrackCuts ) return;
    fTrackCuts->SetMinNClustersTPC(70);*/
  
  
  /* create output */
  fHistoList = new TList();
  fHistoList->SetOwner(kTRUE);

  DefineInput(0, TChain::Class());
  // DefineOutput(0, TTree::Class()); 
  DefineOutput(1, TList::Class());

 
}

//_______________________________________________________

AliAnalysisTaskParticleEfficiency::~AliAnalysisTaskParticleEfficiency()
{
  /* if(centrality) delete centrality;
s128     if(fHistoList) delete fHistoList;
     if(vertex) delete vertex;
     if(vtxSPD) delete vtxSPD;*/
}

//_______________________________________________________

void AliAnalysisTaskParticleEfficiency::UserCreateOutputObjects()
{
   
  TString hname1, hname2, hname3, hname4, hname5;
  
  TString htitle1, htitle2, htitle3, htitle4,htitle5;
  
  TString hname1M, hname2M, hname3M, hname4M, hname5M, hname;
  
  TString htitle1M, htitle2M, htitle3M, htitle4M, htitle5M, htitle;

  TString parttypename = "None";

  for(Int_t j = 0; j < PARTTYPES; j++)  {
    if (j==0) parttypename="All";
    else if (j==1) parttypename="Pion";
    else if (j==2) parttypename="Kaon";
    else if (j==3) parttypename="Proton";

    for(Int_t i = 0; i < MULTBINS; i++)  {
      hname1  = "hGeneratedMCPrimariesEffM"; hname1+=i; hname1+=parttypename;
      htitle1 = "Kinematic level eta_pT (prim only) M"; htitle1+=i; htitle1+=parttypename;
      fGeneratedMCPrimaries[i*PARTTYPES+j] = new TH2F(hname1.Data(),htitle1.Data(),50, -1.5, 1.5,1000,0.,10.0);
    
      hname3  = "hMCPrimariesThatAreReconstructedM"; hname3+=i; hname3+=parttypename;
      htitle3 = "Reconstructed level eta_pT (prim only) M"; htitle3+=i; htitle3+=parttypename;
      fMCPrimariesThatAreReconstructed[i*PARTTYPES+j] = new TH2F(hname3.Data(),htitle3.Data(),50, -1.5, 1.5,1000,0.,10.0);
    
      hname2  = "hHistoReconstructedAfterCutsM"; hname2+=i; hname2+=parttypename;
      htitle2 = "Total Reconstructed tracks M "; htitle2+=i; htitle2+=parttypename;
      fReconstructedAfterCuts[i*PARTTYPES+j] = new TH2F(hname2.Data(),htitle2.Data(),50, -1.5, 1.5,1000,0.,10.0);

      hname4  = "hHistoReconstructedNotPrimariesM"; hname4+=i; hname4+=parttypename;
      htitle4 = "Reconstructed level eta_pT (not primaries) M"; htitle4+=i; htitle4+=parttypename;
      fReconstructedNotPrimaries[i*PARTTYPES+j] = new TH2F(hname4.Data(),htitle4.Data(),50, -1.5, 1.5,1000,0.,10.0);

      hname4  = "hHistoReconstructedPrimariesM"; hname4+=i; hname4+=parttypename;
      htitle4 = "Reconstructed level eta_pT (primaries) M"; htitle4+=i; htitle4+=parttypename;
      fReconstructedPrimaries[i*PARTTYPES+j] = new TH2F(hname4.Data(),htitle4.Data(),50, -1.5, 1.5,1000,0.,10.0);

      hname5  = "hContaminationM"; hname5+=i; hname5+=parttypename;
      htitle5 = "Contamination M"; htitle5+=i; htitle5+=parttypename;
      fContamination[i*PARTTYPES+j] = new TH2F(hname5.Data(),htitle5.Data(),6000, -3000, 3000.,1000,0.,10.0);
 

      fReconstructedAfterCuts[i*PARTTYPES+j]->Sumw2();
      fReconstructedNotPrimaries[i*PARTTYPES+j]->Sumw2();
      fReconstructedPrimaries[i*PARTTYPES+j]->Sumw2();
    }
    hname  = "pidTPCdEdx";  hname+=parttypename;
    htitle = parttypename + " TPC dEdx vs. momentum";
    fHistQAPID[0][j] = new TH2F(hname, htitle, 100, 0.0, 5.0, 250, 0.0, 500.0);
    hname  = "pidTOFTime";  hname+=parttypename;
    htitle = parttypename + " TOF Time vs. momentum";
    fHistQAPID[1][j] = new TH2F(hname, htitle, 100, 0.1, 5.0, 400, -4000.0, 4000.0);
    hname  = "pidTOFNSigma";  hname+=parttypename;
    htitle = parttypename + " TOF NSigma vs. momentum";
    fHistQAPID[2][j] = new TH2F(hname,htitle, 100, 0.0, 5.0, 100, -5.0, 5.0);
    hname  = "pidTPCNSigma";  hname+=parttypename;
    htitle = parttypename + " TPC NSigma vs. momentum";
    fHistQAPID[3][j] = new TH2F(hname,htitle, 100, 0.0, 5.0, 100, -5.0, 5.0);
    hname  = "pidTPCTOFNSigma";  hname+=parttypename;
    htitle = parttypename + " TPC vs TOF NSigma";
    fHistQAPID[4][j] = new TH2F(hname,htitle, 200, -10.0, 10.0, 200, -10.0, 10.0);

  }

  fHistEv = new TH1F("fHistEv", "Multiplicity", 100, 0, 100);
  fHistoList->Add(fHistEv);

  for(Int_t i = 0; i < MULTBINS; i++)  {
    hname = "fHistEventCutsM";
    hname+= i;
    
    fHistEvCuts[i] = new TH1F(hname,Form("Event Cuts M%d",i) , 4, 0, 5);
    fHistEvCuts[i]->GetXaxis()->SetBinLabel(1,"All");
    fHistEvCuts[i]->GetXaxis()->SetBinLabel(2,"NoVertex");
    fHistEvCuts[i]->GetXaxis()->SetBinLabel(3,"PileUp");
    fHistEvCuts[i]->GetXaxis()->SetBinLabel(4,"z-vertex>10");
    fHistoList->Add(fHistEvCuts[i]);


    hname  = "hMisidentificationM"; hname+=i; 
    htitle = "Misidentification Fraction M"; htitle+=i; 
    fMisidentification[i] = new TH2F(hname.Data(),htitle.Data(), 3, 0.5, 3.5, 4 , 0, 4);
    fMisidentification[i]->GetXaxis()->SetBinLabel(1,"Pions, MC");
    fMisidentification[i]->GetXaxis()->SetBinLabel(2,"Kaons, MC");
    fMisidentification[i]->GetXaxis()->SetBinLabel(3,"Protons, MC");
    fMisidentification[i]->GetYaxis()->SetBinLabel(1,"Pions, Data");
    fMisidentification[i]->GetYaxis()->SetBinLabel(2,"Kaons, Data");
    fMisidentification[i]->GetYaxis()->SetBinLabel(3,"Protons, Data");
    fMisidentification[i]->GetYaxis()->SetBinLabel(4,"Other, Data");
    fHistoList->Add(fMisidentification[i]);

  }

  fHistQA[0] = new TH1F("fHistVtx", "Z vertex distribution", 100, -15., 15.);
  fHistQA[1] = new TH1F("fHistnTpcCluster", "n TPC Cluster", 100, 0., 200.);
  fHistQA[2] = new TH1F("fHistnTpcClusterF", "n TPC Cluster findable", 100, 0., 200.);
  fHistQA[3] = new TH1F("dcaHistDcaXY1D", "DCA XY", 210, -2.1, 2.1);
  fHistQA[4] = new TH1F("dcaHistDcaZ1D", "DCA Z", 210, -2.1, 2.1);
  fHistQA[5] = new TH1F("fHistChi2Tpc", "Chi2 TPC", 100, 0., 8.);
  fHistQA[6] = new TH1F("fHistpT", "pT distribution",1000,0.,10.0);
  fHistQA[7] = new TH1F("fHistPhi", "Phi distribution" , 100, -TMath::Pi(), TMath::Pi());
  fHistQA[8] = new TH1F("fHistEta", "Eta distribution" , 100, -2, 2);
 
  fHistQA[9] = new TH1F("fHistEventCuts", "Event Cuts" , 4, 0, 5);
  fHistQA[9]->GetXaxis()->SetBinLabel(1,"All");
  fHistQA[9]->GetXaxis()->SetBinLabel(2,"NoVertex");
  fHistQA[9]->GetXaxis()->SetBinLabel(3,"PileUp");
  fHistQA[9]->GetXaxis()->SetBinLabel(4,"z-vertex>10");


  fHistQA[10] = new TH1F("fHistTrackCuts", "Track Cuts" , 7, 0.5, 7.5);
  fHistQA[10]->GetXaxis()->SetBinLabel(1,"AllTracksInEvents");
  fHistQA[10]->GetXaxis()->SetBinLabel(2,"GetTrack");
  fHistQA[10]->GetXaxis()->SetBinLabel(3,"Filter bit");
  fHistQA[10]->GetXaxis()->SetBinLabel(4,"Eta");
  fHistQA[10]->GetXaxis()->SetBinLabel(5,"Pt");
  fHistQA[10]->GetXaxis()->SetBinLabel(6,"DCA");
  fHistQA[10]->GetXaxis()->SetBinLabel(7,"Electron Rejection");

  fHistQA2D[0] = new TH2F("dcaHistDcaXY","DCA XY",50, 0, 5,210, -2.1, 2.1);
  fHistQA2D[1] = new TH2F("dcaHistDcaZ","DCA Z", 50, 0, 5, 210, -2.1, 2.1);
  fHistQA2D[2] = new TH2F("fPhiEta","Eta-Phi",100, -2, 2, 100, -TMath::Pi(), TMath::Pi());



  for ( Int_t i = 0; i < 11; i++)
    {
      fHistoList->Add(fHistQA[i]);
      if(i<3) fHistoList->Add(fHistQA2D[i]);
      if(i<5) {
	for(Int_t j = 0 ; j<PARTTYPES; j++)
	  fHistoList->Add(fHistQAPID[i][j]);
      }
    }
    
  for (Int_t i = 0; i < MULTBINS*PARTTYPES; i++){
    fHistoList->Add(fGeneratedMCPrimaries[i]);
    fHistoList->Add(fMCPrimariesThatAreReconstructed[i]);
    fHistoList->Add(fReconstructedAfterCuts[i]);
    fHistoList->Add(fReconstructedNotPrimaries[i]);
    fHistoList->Add(fReconstructedPrimaries[i]);
    fHistoList->Add(fContamination[i]);

  }
 
  //********** PID ****************

  AliAnalysisManager *man=AliAnalysisManager::GetAnalysisManager();
  AliInputEventHandler* inputHandler = (AliInputEventHandler*) (man->GetInputEventHandler());
  fpidResponse = inputHandler->GetPIDResponse();
  cout<<"*******"<< fpidResponse<<endl;

  // ************************

  PostData(1, fHistoList);
}


//_____________________________________________________________________

bool IsPionNSigma(float mom, float nsigmaTPCPi, float nsigmaTOFPi)
{

    if (mom > 0.5) {
        if (TMath::Hypot( nsigmaTOFPi, nsigmaTPCPi ) < 3)
            return true;
	}
    else {
        if (TMath::Abs(nsigmaTPCPi) < 3)
            return true;
    }
/*
  if(mom<0.65)
    {
      if(nsigmaTOFPi<-999.)
	{
	  if(mom<0.35 && TMath::Abs(nsigmaTPCPi)<3.0) return true;
	  else if(mom<0.5 && mom>=0.35 && TMath::Abs(nsigmaTPCPi)<3.0) return true;
	  else if(mom>=0.5 && TMath::Abs(nsigmaTPCPi)<2.0) return true;
	  else return false;
	}
      else if(TMath::Abs(nsigmaTOFPi)<3.0 && TMath::Abs(nsigmaTPCPi)<3.0) return true;
    }
  else if(nsigmaTOFPi<-999.)
    {
      return false;
    }
  else if(mom<1.5 && TMath::Abs(nsigmaTOFPi)<3.0 && TMath::Abs(nsigmaTPCPi)<5.0) return true;
  else if(mom>=1.5 && TMath::Abs(nsigmaTOFPi)<2.0 && TMath::Abs(nsigmaTPCPi)<5.0) return true;
*/
  return false;
}

bool IsKaonNSigma(float mom, float nsigmaTPCK, float nsigmaTOFK)
{
    if (mom > 0.5) {
        if (TMath::Hypot( nsigmaTOFK, nsigmaTPCK ) < 3)
            return true;
	}
    else {
        if (TMath::Abs(nsigmaTPCK) < 3)
            return true;
    }

 /* if(mom<0.4)
    {
      if(nsigmaTOFK<-999.)
	{
	  if(TMath::Abs(nsigmaTPCK)<2.0) return true;
	}
      else if(TMath::Abs(nsigmaTOFK)<3.0 && TMath::Abs(nsigmaTPCK)<3.0) return true;
    }
  else if(mom>=0.4 && mom<=0.6)
    {
      if(nsigmaTOFK<-999.)
	{
	  if(TMath::Abs(nsigmaTPCK)<2.0) return true;
	}
      else if(TMath::Abs(nsigmaTOFK)<3.0 && TMath::Abs(nsigmaTPCK)<3.0) return true;
    }
  else if(nsigmaTOFK<-999.)
    {
      return false;
    }
  else if(TMath::Abs(nsigmaTOFK)<3.0 && TMath::Abs(nsigmaTPCK)<3.0) return true;
*/
  return false;
}

bool IsProtonNSigma(float mom, float nsigmaTPCP, float nsigmaTOFP)
{

    if (mom > 0.5) {
        if (TMath::Hypot( nsigmaTOFP, nsigmaTPCP ) < 3)
            return true;
	}
    else {
        if (TMath::Abs(nsigmaTPCP) < 3)
            return true;
    }

  // if (mom > 0.8 && mom < 2.5) {
  //   if ( TMath::Abs(nsigmaTPCP) < 3.0 && TMath::Abs(nsigmaTOFP) < 3.0)
  //     return true;
  // }
  // else if (mom > 2.5) {
  //   if ( TMath::Abs(nsigmaTPCP) < 3.0 && TMath::Abs(nsigmaTOFP) < 2.0)
  //     return true;
  // }
  // else {
  //   if (TMath::Abs(nsigmaTPCP) < 3.0)
  //     return true;
  // }
  

  return false;
}


bool IsElectron(float nsigmaTPCE, float nsigmaTPCPi,float nsigmaTPCK, float nsigmaTPCP)
{
  if(TMath::Abs(nsigmaTPCE)<3 && TMath::Abs(nsigmaTPCPi)>3 && TMath::Abs(nsigmaTPCK)>3 && TMath::Abs(nsigmaTPCP)>3)
      return true;
   else
     return false;
}

//_______________________________________________________

void AliAnalysisTaskParticleEfficiency::UserExec(Option_t *)
{

  /***Get Event****/
  //AliESDEvent *esdEvent = dynamic_cast<AliESDEvent *>(InputEvent());
  AliAODEvent* aodEvent = dynamic_cast<AliAODEvent*>(InputEvent());
  if (!aodEvent) return;
  AliAODHeader *fAODheader = dynamic_cast<AliAODHeader*>(aodEvent->GetHeader());
  if(!fAODheader) AliFatal("Not a standard AOD");
  Double_t mult = fAODheader->GetRefMultiplicity();
// AliCentrality* alicent= aodEvent->GetCentrality(); //in PbPb and pPb
//  Double_t mult = alicent->GetCentralityPercentile("V0A"); //in pPb
//  Double_t mult = alicent->GetCentralityPercentile("V0A"); //in PbPb
  fHistEv->Fill(mult); 
 

  //******************
  // load MC array
  // arrayMC =  (TClonesArray*)aodEvent->GetList()->FindObject(AliAODMCParticle::StdBranchName());
  //  if(!arrayMC) {
  //  printf("AliAnalysisTaskParticleEficiency::UserExec: MC particles branch not found!\n");
  //return;
  //}
    
  // load MC header
  //mcHeader =  (AliAODMCHeader*)aod->GetList()->FindObject(AliAODMCHeader::StdBranchName());
  //if(!mcHeader) {
  //printf("AliAnalysisTaskSEDplusCorrelations::UserExec: MC header branch not found!\n");
  //return;
  // }
  //*********************   
 


  // EVENT SELECTION ********************

  fHistQA[9]->Fill(1);

  // collision candidate 
  // if (!(((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected() & AliVEvent::kMB)) return;


  //****** Multiplicity selection *********
  Int_t fcent = -999;  
  //if(mult >= 0 && mult <=20)  fcent = 0;
  //else if(mult >= 20 && mult <=39) fcent = 1;
  //else if(mult >= 40 && mult <=59) fcent = 2;
  //else if(mult >= 60 && mult <=90) fcent = 3;
  //else if(mult >= 99990 && mult <=99936) fcent = 4;
  //else if(mult >= 999937 && mult <=99944) fcent = 5;
  //else if(mult >= 999945 && mult <=99957) fcent = 6;
  //else if(mult >= 999958 && mult <=99149) fcent = 6;
  //else fcent = 7;
  //if (fcent == 7) return;

  if(mult >= 2&& mult <=150)  fcent = 0;
  else if(mult >= 2 && mult <=19) fcent = 1;
  else if(mult >= 20 && mult <=49) fcent = 2;
  else if(mult >= 50 && mult <=150) fcent = 3;
  else return;
 
  if(fcent==0)fHistEvCuts[0]->Fill(1);
  else if(fcent==1)fHistEvCuts[1]->Fill(1);
  else if(fcent==2)fHistEvCuts[2]->Fill(1);
  else if(fcent==3)fHistEvCuts[3]->Fill(1);

  //"ESDs/pass2/AOD049/*AliAOD.root");
  const AliAODVertex* vertex =(AliAODVertex*) aodEvent->GetPrimaryVertex();
  if (!vertex || vertex->GetNContributors()<=0) return;

  fHistQA[9]->Fill(2);
 if(fcent==0)fHistEvCuts[0]->Fill(2);
  else if(fcent==1)fHistEvCuts[1]->Fill(2);
  else if(fcent==2)fHistEvCuts[2]->Fill(2);
  else if(fcent==3)fHistEvCuts[3]->Fill(2);

  AliAnalysisUtils *anaUtil=new AliAnalysisUtils();
    
  Bool_t fpA2013 = kFALSE;
  Bool_t fMVPlp = kFALSE;
  Bool_t fisPileUp = kTRUE;
  Int_t fMinPlpContribMV = 0;
  Int_t fMinPlpContribSPD = 3;

  if(fpA2013)
    if(anaUtil->IsVertexSelected2013pA(aodEvent)==kFALSE) return;
 
  if(fMVPlp) anaUtil->SetUseMVPlpSelection(kTRUE);
  else anaUtil->SetUseMVPlpSelection(kFALSE);
 
  if(fMinPlpContribMV) anaUtil->SetMinPlpContribMV(fMinPlpContribMV);
  if(fMinPlpContribSPD) anaUtil->SetMinPlpContribSPD(fMinPlpContribSPD);

  if(fisPileUp)
    if(anaUtil->IsPileUpEvent(aodEvent)) return;

  delete anaUtil;   

 fHistQA[9]->Fill(3);
  if(fcent==0)fHistEvCuts[0]->Fill(3);
  else if(fcent==1)fHistEvCuts[1]->Fill(3);
  else if(fcent==2)fHistEvCuts[2]->Fill(3);
  else if(fcent==3)fHistEvCuts[3]->Fill(3);

  //TString vtxTtl = vertex->GetTitle();
  //if (!vtxTtl.Contains("VertexerTracks")) return;
  Float_t zvtx = vertex->GetZ();
  if (TMath::Abs(zvtx) > 10) return;
  fHistQA[0]->Fill(zvtx);
  fHistQA[9]->Fill(4);
  if(fcent==0)fHistEvCuts[0]->Fill(4);
  else if(fcent==1)fHistEvCuts[1]->Fill(4);
  else if(fcent==2)fHistEvCuts[2]->Fill(4);
  else if(fcent==3)fHistEvCuts[3]->Fill(4);

 //**** getting MC array ******
  TClonesArray  *arrayMC;

  arrayMC = dynamic_cast<TClonesArray*>(aodEvent->FindListObject(AliAODMCParticle::StdBranchName()));


  //get stack 
  //AliStack *mcStack = mcEvent->Stack();
  //if (!mcStack) return;
  //***********************


  // old vertex selection 
  /*const AliESDVertex *vertex = esdEvent->GetPrimaryVertex();
    if (vertex->GetNContributors() < 1) return;

    //z-vertex cut
    if (TMath::Abs(vertex->GetZ()) > 10.) return;
  

    const AliESDVertex *vtxSPD = esdEvent->GetPrimaryVertexSPD();*/
  // Double_t zVertex = vtxSPD->GetZ();

  //cout << "Event  Z vtx ==========> " << vertex->GetZ() <<endl;
  // centrality selection 
  //AliCentrality *centrality = aodEvent->GetHeader()->GetCentralityP();
  //if (centrality->GetQuality() != 0) return;
  //Double_t cent = centrality->GetCentralityPercentileUnchecked("V0M");
  //if(cent < 0 || cent > 100.) return;


//copying pid information for FB 128
  int labels[20000];
  for (int il=0; il<20000; il++) labels[il] = -1;

  // looking for global tracks and saving their numbers to copy from them PID information to TPC-only tracks in the main loop over tracks
  for (int i=0;i<aodEvent->GetNumberOfTracks();i++) {
    const AliAODTrack *aodtrack=dynamic_cast<const AliAODTrack*>(aodEvent->GetTrack(i));
    if(!aodtrack) AliFatal("Not a standard AOD");
    if (!aodtrack->TestFilterBit(128)) {
      if(aodtrack->GetID() < 0) continue;
      labels[aodtrack->GetID()] = i;
    }
  }

  //RECONSTRUCTED TRACKS 

  TObjArray recoParticleArray[PARTTYPES];

  fHistQA[10]->Fill(1,aodEvent->GetNumberOfTracks());
  //loop over AOD tracks 
  for (Int_t iTracks = 0; iTracks < aodEvent->GetNumberOfTracks(); iTracks++) {
    //get track 
    
    //AliESDtrack* track = AliESDtrackCuts::GetTPCOnlyTrack(const_cast<AliESDEvent*>(esdEvent),iTracks);
    AliAODTrack *track = dynamic_cast<AliAODTrack*>(aodEvent->GetTrack(iTracks));
    if(!track) AliFatal("Not a standard AOD"); 
    if (!track)continue;
    fHistQA[10]->Fill(2);

    //UInt_t filterBit = (1 << (0));
    UInt_t filterBit = 96;
    if(!track->TestFilterBit(filterBit))continue;	

    //if(!track->IsHybridGlobalConstrainedGlobal())continue;
    //if((track->IsHybridGlobalConstrainedGlobal())==false)continue;
    // if(!track->IsHybridTPCConstrainedGlobal())continue;	
    // if(!track->IsTPCConstrained())continue;	
    //if(!track->IsGlobalConstrained())continue;
    //if((track->TestFilterMask(AliAODTrack::kTrkTPCOnly)==false))continue;//cut0_BIT(0)
  
    //   if((track->IsHybridGlobalConstrainedGlobal())==false)
    //  continue;//def_BIT(272)

    //if((track->TestFilterMask(AliAODTrack::kTrkGlobal)==false))continue;//cut1_BIT(5)

    fHistQA[10]->Fill(3);
     
    if(track->Eta() < -0.8 || track->Eta() > 0.8)
      continue; 
    fHistQA[10]->Fill(4);

    if (track->Pt() < 0.2 || track->Pt() > 20)
      continue;
    fHistQA[10]->Fill(5);

    //single track cuts
    // if(track->Chi2perNDF() > 4.0) continue;
    // if(track->GetTPCNcls() < 70) continue;

    //DCA
    
    Double_t DCAXY;
    Double_t DCAZ;
    //  if(filterBit==(1 << (7))){
    DCAXY = -TMath::Abs(track->DCA());
    DCAZ = -TMath::Abs(track->ZAtDCA());
 
      if(!(DCAXY==-999 || DCAZ==-999)){
	//if(TMath::Abs(DCAXY) > 0.0182 + 0.035*TMath::Power(track->Pt(), -1.01)) continue; //XY, Pt dep
	//no DCA cut
	//if(TMath::Abs(DCAXY) > 1000.0) {continue;} //XY
	//if(TMath::Abs(DCAZ) > 1000.0) {continue;} //Z
      }
    else {
      // code from Michael and Prabhat from AliAnalysisTaskDptDptCorrelations
      // const AliAODVertex* vertex = (AliAODVertex*) aodEvent->GetPrimaryVertex(); (already defined above)
      float vertexX  = -999.;
      float vertexY  = -999.;
      float vertexZ  = -999.;

      if(vertex) {
	Double32_t fCov[6];
	vertex->GetCovarianceMatrix(fCov);
	if(vertex->GetNContributors() > 0) {
	  if(fCov[5] != 0) {
	    vertexX = vertex->GetX();
	    vertexY = vertex->GetY();
	    vertexZ = vertex->GetZ();

	  }
	}
      }

      Double_t pos[3];
      track->GetXYZ(pos);

      Double_t DCAX = pos[0] - vertexX;
      Double_t DCAY = pos[1] - vertexY;
      DCAZ = pos[2] - vertexZ;
      DCAXY = TMath::Sqrt((DCAX*DCAX) + (DCAY*DCAY));

      //if(TMath::Abs(DCAXY) > 0.0182 + 0.035*TMath::Power(track->Pt(), -1.01)) continue; //XY, Pt dep
      //if(TMath::Abs(impactD) > 0.44 + 0.07*TMath::Power(tPt, -1.94)) continue; //XY, Pt dep
      //no DCA cut
      //if(TMath::Abs(DCAXY) > 1000.0) continue;
      //if(TMath::Abs(DCAZ) > 1000.0) continue;
    }

    fHistQA[10]->Fill(6);

    AliAODTrack* aodtrackpid;

    //for FB 128 - tpc only tracks
    if(filterBit==(1 << (7))) {
      aodtrackpid = dynamic_cast<AliAODTrack*>(aodEvent->GetTrack(labels[-1-aodEvent->GetTrack(iTracks)->GetID()]));
      if(!aodtrackpid) AliFatal("Not a standard AOD");
    }
    else
      aodtrackpid = track;


 //PANOS--------------------------
    
    AliMCEvent* mcEvent = MCEvent();
    if (!mcEvent) {
      AliError("ERROR: Could not retrieve MC event");
      return;
    }

    Int_t nMCParticles = mcEvent->GetNumberOfTracks();
    Int_t labelp = TMath::Abs(track->GetLabel());
    if(labelp > nMCParticles) continue;

    AliAODMCParticle *AODmcTrack = (AliAODMCParticle*) mcEvent->GetTrack(labelp);

    /*
    //contamination from secondaries without electron rejection
    if (!AODmcTrack->IsPhysicalPrimary()) {
      fReconstructedNotPrimaries[PARTTYPES*fcent]->Fill(track->Eta(), track->Pt());
    }
    else{
      fReconstructedPrimaries[PARTTYPES*fcent]->Fill(track->Eta(), track->Pt());
    }
    */
    //-------------------------
   
    //Electron rejection
    double nSigmaTPCPi = fpidResponse->NumberOfSigmasTPC(aodtrackpid,AliPID::kPion);
    double nSigmaTPCK = fpidResponse->NumberOfSigmasTPC(aodtrackpid,AliPID::kKaon);
    double nSigmaTPCP = fpidResponse->NumberOfSigmasTPC(aodtrackpid,AliPID::kProton);
    double nSigmaTPCe = fpidResponse->NumberOfSigmasTPC(aodtrackpid,AliPID::kElectron);
    if(IsElectron(nSigmaTPCe,nSigmaTPCPi,nSigmaTPCK,nSigmaTPCP))
      continue;
    fHistQA[10]->Fill(7);
    
    fHistQA[1]->Fill(track->GetTPCClusterInfo(2,1)); 
    //fHistQA[2]->Fill(track->GetTPCNclsF());
     fHistQA[3]->Fill(DCAXY);
     fHistQA[4]->Fill(DCAZ);
    Float_t chi2Tpc = track->Chi2perNDF();
    fHistQA[5]->Fill(chi2Tpc);
    fHistQA[6]->Fill(track->Pt());

    float px=track->Px(); float py=track->Py();  float ph=atan2(py,px); //track->Phi()
    float tPt = track->Pt();

    fHistQA[7]->Fill(ph);
    fHistQA[8]->Fill(track->Eta());
    fHistQA2D[2]->Fill(track->Eta(),ph);

    fHistQA2D[0]->Fill(tPt,DCAXY);
    fHistQA2D[1]->Fill(tPt,DCAZ);


 //PANOS
    //contamination from secondaries with electron rejection
    // if (!AODmcTrack->IsPhysicalPrimary()) {
    //   fReconstructedNotPrimaries[PARTTYPES*fcent]->Fill(track->Eta(), track->Pt());
    // }
    // else{
    //   fReconstructedPrimaries[PARTTYPES*fcent]->Fill(track->Eta(), track->Pt());
    // }
    

    //PID monitors
    double nSigmaTOFPi = fpidResponse->NumberOfSigmasTOF(aodtrackpid,AliPID::kPion);
    double nSigmaTOFK = fpidResponse->NumberOfSigmasTOF(aodtrackpid,AliPID::kKaon);
    double nSigmaTOFP = fpidResponse->NumberOfSigmasTOF(aodtrackpid,AliPID::kProton);

    float tdEdx = aodtrackpid->GetTPCsignal();
    float tTofSig = aodtrackpid->GetTOFsignal();
    double pidTime[5]; aodtrackpid->GetIntegratedTimes(pidTime);


    fHistQAPID[0][0]->Fill(tPt,tdEdx);
    fHistQAPID[1][0]->Fill(tPt,tTofSig-pidTime[2]);//pion
    fHistQAPID[2][0]->Fill(tPt,nSigmaTOFPi);
    fHistQAPID[3][0]->Fill(tPt,nSigmaTPCPi);
    fHistQAPID[4][0]->Fill(nSigmaTPCPi,nSigmaTOFPi);

    if (IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi)){
      fHistQAPID[0][1]->Fill(tPt,tdEdx);
      fHistQAPID[1][1]->Fill(tPt,tTofSig-pidTime[2]);//pion
      fHistQAPID[2][1]->Fill(tPt,nSigmaTOFPi);
      fHistQAPID[3][1]->Fill(tPt,nSigmaTPCPi);
      fHistQAPID[4][1]->Fill(nSigmaTPCPi,nSigmaTOFPi);
    }
    if (IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK)){
      fHistQAPID[0][2]->Fill(tPt,tdEdx);
      fHistQAPID[1][2]->Fill(tPt,tTofSig-pidTime[3]);//kaon
      fHistQAPID[2][2]->Fill(tPt,nSigmaTOFK);
      fHistQAPID[3][2]->Fill(tPt,nSigmaTPCK);
      fHistQAPID[4][2]->Fill(nSigmaTPCK,nSigmaTOFK);
    }
    if (IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP)){
      fHistQAPID[0][3]->Fill(tPt,tdEdx);
      fHistQAPID[1][3]->Fill(tPt,tTofSig-pidTime[4]);//proton
      fHistQAPID[2][3]->Fill(tPt,nSigmaTOFP);
      fHistQAPID[3][3]->Fill(tPt,nSigmaTPCP);
      fHistQAPID[4][3]->Fill(nSigmaTPCP,nSigmaTOFP);
    }

    fReconstructedAfterCuts[fcent]->Fill(track->Eta(), track->Pt());//Fills hist. for all reconstructed particles after cuts

    if(!arrayMC){
      continue;
    }
    //get coresponding MC particle 
    Int_t label = TMath::Abs(track->GetLabel());
    AliAODMCParticle *MCtrk = (AliAODMCParticle*)arrayMC->At(label);

   //getting no. of tracks for each particle species after all the cuts:

    //********* PID - pions ********
     if (IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi)){
       fReconstructedAfterCuts[PARTTYPES*fcent+1]->Fill(track->Eta(), track->Pt());
       if (!MCtrk) continue;
       recoParticleArray[1].Add(MCtrk);
       }
       //Fills for all identified pions found after cuts (reconstructed) - numerator for Efficiency

     //********* PID - kaons ********
     if (IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK)){
       fReconstructedAfterCuts[PARTTYPES*fcent+2]->Fill(track->Eta(), track->Pt());
       if (!MCtrk) continue;
       recoParticleArray[2].Add(MCtrk);
       }
       //Fills for all identified kaons found after cuts (reconstructed) - numerator for Efficiency

    //********* PID - protons ********
     if (IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP)){
       fReconstructedAfterCuts[PARTTYPES*fcent+3]->Fill(track->Eta(), track->Pt());
       if (!MCtrk) continue;
       recoParticleArray[3].Add(MCtrk);
       }

      //Fills for all identified protos found after cuts (reconstructed) - numerator for Efficiency
   //******************************

     //get coresponding MC particle 
     // Int_t label = TMath::Abs(track->GetLabel()); //moved up
     // if(!label) cout<<"no label"<<endl;
     //if(label) cout<<"label = "<<label<<endl;
       
    //AliAODMCParticle *MCtrk = (AliAODMCParticle*)arrayMC->At(label); //moved up
    if (!MCtrk) continue;
    if(MCtrk->Charge()==0){cout<<"!!!"<<endl; continue;}
    recoParticleArray[0].Add(MCtrk);


    //Fills histogram for particles that are contamination from secondaries:
    if (!AODmcTrack->IsPhysicalPrimary()) {
      fReconstructedNotPrimaries[PARTTYPES*fcent]->Fill(track->Eta(), track->Pt());
    }
    else{
      fReconstructedPrimaries[PARTTYPES*fcent]->Fill(track->Eta(), track->Pt());
    }
 
    int PDGcode = MCtrk->GetPdgCode();

   //And secondaries for different particle species:
    if (!AODmcTrack->IsPhysicalPrimary() && (IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi) && PDGcode==211)) { //secondaries in pions
      fReconstructedNotPrimaries[PARTTYPES*fcent+1]->Fill(track->Eta(), track->Pt());
    }
    else if(AODmcTrack->IsPhysicalPrimary() && (IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi) && PDGcode==211)) {
      fReconstructedPrimaries[PARTTYPES*fcent+1]->Fill(track->Eta(), track->Pt());
    }
    
    if (!AODmcTrack->IsPhysicalPrimary() && (IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK) && PDGcode==321)) { //secondaries in kaons
      fReconstructedNotPrimaries[PARTTYPES*fcent+2]->Fill(track->Eta(), track->Pt());
    }
    else if(AODmcTrack->IsPhysicalPrimary() && (IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK) && PDGcode==321)) {
      fReconstructedPrimaries[PARTTYPES*fcent+2]->Fill(track->Eta(), track->Pt());
      }

    if (!AODmcTrack->IsPhysicalPrimary() && (IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP) && PDGcode==2212)) { //secondaries in protons
      fReconstructedNotPrimaries[PARTTYPES*fcent+3]->Fill(track->Eta(), track->Pt());
    } 
    else if(AODmcTrack->IsPhysicalPrimary() && (IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP) && PDGcode==2212)) {
      fReconstructedPrimaries[PARTTYPES*fcent+3]->Fill(track->Eta(), track->Pt());
    } 

    //Misidentification fraction
    if(PDGcode==211)
      {
	if(IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi))
	  fMisidentification[fcent]-> Fill(1,0.5);
	if(IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK))
	  fMisidentification[fcent]-> Fill(1,1.5);
	if(IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP))
	  fMisidentification[fcent]-> Fill(1,2.5);
	if(!IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi) && !IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK) && !IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP))
	  fMisidentification[fcent]-> Fill(1,3.5);


      }
    else if(PDGcode==321)
      {
	if(IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi))
	  fMisidentification[fcent]-> Fill(2,0.5);
	if(IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK))
	  fMisidentification[fcent]-> Fill(2,1.5);
	if(IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP))
	  fMisidentification[fcent]-> Fill(2,2.5);
	if(!IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi) && !IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK) && !IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP))
	  fMisidentification[fcent]-> Fill(2,3.5);


      }
    else if(PDGcode == 2212)
      {
	if(IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi))
	  fMisidentification[fcent]-> Fill(3,0.5);
	if(IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK))
	  fMisidentification[fcent]-> Fill(3,1.5);
	if(IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP))
	  {
	  fMisidentification[fcent]-> Fill(3,2.5);
	  }
	if(!IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi) && !IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK) && !IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP))
	  fMisidentification[fcent]-> Fill(3,3.5);
      }


    //Contaminations: "how many pions are in the kaons sample"? etc.
    //Do not use for corrections: using those values will be dependant on i.e. Pi/K ratio in MC
    //Use misidentification fraction instead
    if(IsPionNSigma(track->P(),nSigmaTPCPi, nSigmaTOFPi))
      {
	fContamination[PARTTYPES*fcent+1]-> Fill(PDGcode,track->Pt()); // filling contamination histogram for pions
      }
    if(IsKaonNSigma(track->P(),nSigmaTPCK, nSigmaTOFK))
      {
	fContamination[PARTTYPES*fcent+2]-> Fill(PDGcode,track->Pt()); // filling contamination histogram for kaons
      }
    if(IsProtonNSigma(track->P(),nSigmaTPCP, nSigmaTOFP))
      {
	fContamination[PARTTYPES*fcent+3]-> Fill(PDGcode,track->Pt()); // filling contamination histogram for protons
      }
    


  } 


  // MONTECARLO PARTICLES 
  if(!arrayMC){
    AliError("Array of MC particles not found");
    return;
  }
  // loop over MC stack 
  for (Int_t ipart = 0; ipart < arrayMC->GetEntries(); ipart++) {
    //cout<<"Entered MC loop"<<endl;
    
    AliAODMCParticle *MCtrk = (AliAODMCParticle*)arrayMC->At(ipart);

    if (!MCtrk) continue;
    //cout<<"particle obtained"<<endl;
    
    Int_t PDGcode = TMath::Abs(MCtrk->GetPdgCode()); 

    
    if(MCtrk->Charge() == 0) continue;
     
    //*** PID - check if pion ***
    //if(PDGcode!=211) continue; //(PDGcode==11 || PDGcode==321 || PDGcode==2212 || PDGcode==13)

      if(MCtrk->Eta() < -0.8 || MCtrk->Eta() > 0.8){
	continue; }
	
      if (MCtrk->Pt() < 0.2 || MCtrk->Pt() > 20){
	continue;}
      	
      // check physical primary 
      if (MCtrk->IsPhysicalPrimary()){

	// Filling histograms for MC truth particles
	fGeneratedMCPrimaries[fcent*PARTTYPES]->Fill(MCtrk->Eta(), MCtrk->Pt());
	if(PDGcode==211)
	  fGeneratedMCPrimaries[fcent*PARTTYPES+1]->Fill(MCtrk->Eta(), MCtrk->Pt());
	else if(PDGcode==321)
	  fGeneratedMCPrimaries[fcent*PARTTYPES+2]->Fill(MCtrk->Eta(), MCtrk->Pt());
	else if(PDGcode==2212)
	  fGeneratedMCPrimaries[fcent*PARTTYPES+3]->Fill(MCtrk->Eta(), MCtrk->Pt());

	  //Filling data from MC truth particles only for particles that were reconstruced
	if (recoParticleArray[0].Contains(MCtrk)){ //All
	  fMCPrimariesThatAreReconstructed[fcent*PARTTYPES]->Fill(MCtrk->Eta(), MCtrk->Pt());
	}
	if (recoParticleArray[1].Contains(MCtrk)){ //Pions
	  if(PDGcode==211)
	    fMCPrimariesThatAreReconstructed[fcent*PARTTYPES+1]->Fill(MCtrk->Eta(), MCtrk->Pt());
	}
	if (recoParticleArray[2].Contains(MCtrk)){ //Kaons
	  if(PDGcode==321)
	    fMCPrimariesThatAreReconstructed[fcent*PARTTYPES+2]->Fill(MCtrk->Eta(), MCtrk->Pt());
	}
	if (recoParticleArray[3].Contains(MCtrk)){ //Protons
	  if(PDGcode==2212)
	    fMCPrimariesThatAreReconstructed[fcent*PARTTYPES+3]->Fill(MCtrk->Eta(), MCtrk->Pt());
	}

      }
    
  }
  PostData(1, fHistoList);
}
//-----------------------------------------------------------------

//void AliAnalysisTaskParticleEfficiency::Terminate(Option_t *) 
//{}
 AliAnalysisTaskParticleEfficiency.cxx:1
 AliAnalysisTaskParticleEfficiency.cxx:2
 AliAnalysisTaskParticleEfficiency.cxx:3
 AliAnalysisTaskParticleEfficiency.cxx:4
 AliAnalysisTaskParticleEfficiency.cxx:5
 AliAnalysisTaskParticleEfficiency.cxx:6
 AliAnalysisTaskParticleEfficiency.cxx:7
 AliAnalysisTaskParticleEfficiency.cxx:8
 AliAnalysisTaskParticleEfficiency.cxx:9
 AliAnalysisTaskParticleEfficiency.cxx:10
 AliAnalysisTaskParticleEfficiency.cxx:11
 AliAnalysisTaskParticleEfficiency.cxx:12
 AliAnalysisTaskParticleEfficiency.cxx:13
 AliAnalysisTaskParticleEfficiency.cxx:14
 AliAnalysisTaskParticleEfficiency.cxx:15
 AliAnalysisTaskParticleEfficiency.cxx:16
 AliAnalysisTaskParticleEfficiency.cxx:17
 AliAnalysisTaskParticleEfficiency.cxx:18
 AliAnalysisTaskParticleEfficiency.cxx:19
 AliAnalysisTaskParticleEfficiency.cxx:20
 AliAnalysisTaskParticleEfficiency.cxx:21
 AliAnalysisTaskParticleEfficiency.cxx:22
 AliAnalysisTaskParticleEfficiency.cxx:23
 AliAnalysisTaskParticleEfficiency.cxx:24
 AliAnalysisTaskParticleEfficiency.cxx:25
 AliAnalysisTaskParticleEfficiency.cxx:26
 AliAnalysisTaskParticleEfficiency.cxx:27
 AliAnalysisTaskParticleEfficiency.cxx:28
 AliAnalysisTaskParticleEfficiency.cxx:29
 AliAnalysisTaskParticleEfficiency.cxx:30
 AliAnalysisTaskParticleEfficiency.cxx:31
 AliAnalysisTaskParticleEfficiency.cxx:32
 AliAnalysisTaskParticleEfficiency.cxx:33
 AliAnalysisTaskParticleEfficiency.cxx:34
 AliAnalysisTaskParticleEfficiency.cxx:35
 AliAnalysisTaskParticleEfficiency.cxx:36
 AliAnalysisTaskParticleEfficiency.cxx:37
 AliAnalysisTaskParticleEfficiency.cxx:38
 AliAnalysisTaskParticleEfficiency.cxx:39
 AliAnalysisTaskParticleEfficiency.cxx:40
 AliAnalysisTaskParticleEfficiency.cxx:41
 AliAnalysisTaskParticleEfficiency.cxx:42
 AliAnalysisTaskParticleEfficiency.cxx:43
 AliAnalysisTaskParticleEfficiency.cxx:44
 AliAnalysisTaskParticleEfficiency.cxx:45
 AliAnalysisTaskParticleEfficiency.cxx:46
 AliAnalysisTaskParticleEfficiency.cxx:47
 AliAnalysisTaskParticleEfficiency.cxx:48
 AliAnalysisTaskParticleEfficiency.cxx:49
 AliAnalysisTaskParticleEfficiency.cxx:50
 AliAnalysisTaskParticleEfficiency.cxx:51
 AliAnalysisTaskParticleEfficiency.cxx:52
 AliAnalysisTaskParticleEfficiency.cxx:53
 AliAnalysisTaskParticleEfficiency.cxx:54
 AliAnalysisTaskParticleEfficiency.cxx:55
 AliAnalysisTaskParticleEfficiency.cxx:56
 AliAnalysisTaskParticleEfficiency.cxx:57
 AliAnalysisTaskParticleEfficiency.cxx:58
 AliAnalysisTaskParticleEfficiency.cxx:59
 AliAnalysisTaskParticleEfficiency.cxx:60
 AliAnalysisTaskParticleEfficiency.cxx:61
 AliAnalysisTaskParticleEfficiency.cxx:62
 AliAnalysisTaskParticleEfficiency.cxx:63
 AliAnalysisTaskParticleEfficiency.cxx:64
 AliAnalysisTaskParticleEfficiency.cxx:65
 AliAnalysisTaskParticleEfficiency.cxx:66
 AliAnalysisTaskParticleEfficiency.cxx:67
 AliAnalysisTaskParticleEfficiency.cxx:68
 AliAnalysisTaskParticleEfficiency.cxx:69
 AliAnalysisTaskParticleEfficiency.cxx:70
 AliAnalysisTaskParticleEfficiency.cxx:71
 AliAnalysisTaskParticleEfficiency.cxx:72
 AliAnalysisTaskParticleEfficiency.cxx:73
 AliAnalysisTaskParticleEfficiency.cxx:74
 AliAnalysisTaskParticleEfficiency.cxx:75
 AliAnalysisTaskParticleEfficiency.cxx:76
 AliAnalysisTaskParticleEfficiency.cxx:77
 AliAnalysisTaskParticleEfficiency.cxx:78
 AliAnalysisTaskParticleEfficiency.cxx:79
 AliAnalysisTaskParticleEfficiency.cxx:80
 AliAnalysisTaskParticleEfficiency.cxx:81
 AliAnalysisTaskParticleEfficiency.cxx:82
 AliAnalysisTaskParticleEfficiency.cxx:83
 AliAnalysisTaskParticleEfficiency.cxx:84
 AliAnalysisTaskParticleEfficiency.cxx:85
 AliAnalysisTaskParticleEfficiency.cxx:86
 AliAnalysisTaskParticleEfficiency.cxx:87
 AliAnalysisTaskParticleEfficiency.cxx:88
 AliAnalysisTaskParticleEfficiency.cxx:89
 AliAnalysisTaskParticleEfficiency.cxx:90
 AliAnalysisTaskParticleEfficiency.cxx:91
 AliAnalysisTaskParticleEfficiency.cxx:92
 AliAnalysisTaskParticleEfficiency.cxx:93
 AliAnalysisTaskParticleEfficiency.cxx:94
 AliAnalysisTaskParticleEfficiency.cxx:95
 AliAnalysisTaskParticleEfficiency.cxx:96
 AliAnalysisTaskParticleEfficiency.cxx:97
 AliAnalysisTaskParticleEfficiency.cxx:98
 AliAnalysisTaskParticleEfficiency.cxx:99
 AliAnalysisTaskParticleEfficiency.cxx:100
 AliAnalysisTaskParticleEfficiency.cxx:101
 AliAnalysisTaskParticleEfficiency.cxx:102
 AliAnalysisTaskParticleEfficiency.cxx:103
 AliAnalysisTaskParticleEfficiency.cxx:104
 AliAnalysisTaskParticleEfficiency.cxx:105
 AliAnalysisTaskParticleEfficiency.cxx:106
 AliAnalysisTaskParticleEfficiency.cxx:107
 AliAnalysisTaskParticleEfficiency.cxx:108
 AliAnalysisTaskParticleEfficiency.cxx:109
 AliAnalysisTaskParticleEfficiency.cxx:110
 AliAnalysisTaskParticleEfficiency.cxx:111
 AliAnalysisTaskParticleEfficiency.cxx:112
 AliAnalysisTaskParticleEfficiency.cxx:113
 AliAnalysisTaskParticleEfficiency.cxx:114
 AliAnalysisTaskParticleEfficiency.cxx:115
 AliAnalysisTaskParticleEfficiency.cxx:116
 AliAnalysisTaskParticleEfficiency.cxx:117
 AliAnalysisTaskParticleEfficiency.cxx:118
 AliAnalysisTaskParticleEfficiency.cxx:119
 AliAnalysisTaskParticleEfficiency.cxx:120
 AliAnalysisTaskParticleEfficiency.cxx:121
 AliAnalysisTaskParticleEfficiency.cxx:122
 AliAnalysisTaskParticleEfficiency.cxx:123
 AliAnalysisTaskParticleEfficiency.cxx:124
 AliAnalysisTaskParticleEfficiency.cxx:125
 AliAnalysisTaskParticleEfficiency.cxx:126
 AliAnalysisTaskParticleEfficiency.cxx:127
 AliAnalysisTaskParticleEfficiency.cxx:128
 AliAnalysisTaskParticleEfficiency.cxx:129
 AliAnalysisTaskParticleEfficiency.cxx:130
 AliAnalysisTaskParticleEfficiency.cxx:131
 AliAnalysisTaskParticleEfficiency.cxx:132
 AliAnalysisTaskParticleEfficiency.cxx:133
 AliAnalysisTaskParticleEfficiency.cxx:134
 AliAnalysisTaskParticleEfficiency.cxx:135
 AliAnalysisTaskParticleEfficiency.cxx:136
 AliAnalysisTaskParticleEfficiency.cxx:137
 AliAnalysisTaskParticleEfficiency.cxx:138
 AliAnalysisTaskParticleEfficiency.cxx:139
 AliAnalysisTaskParticleEfficiency.cxx:140
 AliAnalysisTaskParticleEfficiency.cxx:141
 AliAnalysisTaskParticleEfficiency.cxx:142
 AliAnalysisTaskParticleEfficiency.cxx:143
 AliAnalysisTaskParticleEfficiency.cxx:144
 AliAnalysisTaskParticleEfficiency.cxx:145
 AliAnalysisTaskParticleEfficiency.cxx:146
 AliAnalysisTaskParticleEfficiency.cxx:147
 AliAnalysisTaskParticleEfficiency.cxx:148
 AliAnalysisTaskParticleEfficiency.cxx:149
 AliAnalysisTaskParticleEfficiency.cxx:150
 AliAnalysisTaskParticleEfficiency.cxx:151
 AliAnalysisTaskParticleEfficiency.cxx:152
 AliAnalysisTaskParticleEfficiency.cxx:153
 AliAnalysisTaskParticleEfficiency.cxx:154
 AliAnalysisTaskParticleEfficiency.cxx:155
 AliAnalysisTaskParticleEfficiency.cxx:156
 AliAnalysisTaskParticleEfficiency.cxx:157
 AliAnalysisTaskParticleEfficiency.cxx:158
 AliAnalysisTaskParticleEfficiency.cxx:159
 AliAnalysisTaskParticleEfficiency.cxx:160
 AliAnalysisTaskParticleEfficiency.cxx:161
 AliAnalysisTaskParticleEfficiency.cxx:162
 AliAnalysisTaskParticleEfficiency.cxx:163
 AliAnalysisTaskParticleEfficiency.cxx:164
 AliAnalysisTaskParticleEfficiency.cxx:165
 AliAnalysisTaskParticleEfficiency.cxx:166
 AliAnalysisTaskParticleEfficiency.cxx:167
 AliAnalysisTaskParticleEfficiency.cxx:168
 AliAnalysisTaskParticleEfficiency.cxx:169
 AliAnalysisTaskParticleEfficiency.cxx:170
 AliAnalysisTaskParticleEfficiency.cxx:171
 AliAnalysisTaskParticleEfficiency.cxx:172
 AliAnalysisTaskParticleEfficiency.cxx:173
 AliAnalysisTaskParticleEfficiency.cxx:174
 AliAnalysisTaskParticleEfficiency.cxx:175
 AliAnalysisTaskParticleEfficiency.cxx:176
 AliAnalysisTaskParticleEfficiency.cxx:177
 AliAnalysisTaskParticleEfficiency.cxx:178
 AliAnalysisTaskParticleEfficiency.cxx:179
 AliAnalysisTaskParticleEfficiency.cxx:180
 AliAnalysisTaskParticleEfficiency.cxx:181
 AliAnalysisTaskParticleEfficiency.cxx:182
 AliAnalysisTaskParticleEfficiency.cxx:183
 AliAnalysisTaskParticleEfficiency.cxx:184
 AliAnalysisTaskParticleEfficiency.cxx:185
 AliAnalysisTaskParticleEfficiency.cxx:186
 AliAnalysisTaskParticleEfficiency.cxx:187
 AliAnalysisTaskParticleEfficiency.cxx:188
 AliAnalysisTaskParticleEfficiency.cxx:189
 AliAnalysisTaskParticleEfficiency.cxx:190
 AliAnalysisTaskParticleEfficiency.cxx:191
 AliAnalysisTaskParticleEfficiency.cxx:192
 AliAnalysisTaskParticleEfficiency.cxx:193
 AliAnalysisTaskParticleEfficiency.cxx:194
 AliAnalysisTaskParticleEfficiency.cxx:195
 AliAnalysisTaskParticleEfficiency.cxx:196
 AliAnalysisTaskParticleEfficiency.cxx:197
 AliAnalysisTaskParticleEfficiency.cxx:198
 AliAnalysisTaskParticleEfficiency.cxx:199
 AliAnalysisTaskParticleEfficiency.cxx:200
 AliAnalysisTaskParticleEfficiency.cxx:201
 AliAnalysisTaskParticleEfficiency.cxx:202
 AliAnalysisTaskParticleEfficiency.cxx:203
 AliAnalysisTaskParticleEfficiency.cxx:204
 AliAnalysisTaskParticleEfficiency.cxx:205
 AliAnalysisTaskParticleEfficiency.cxx:206
 AliAnalysisTaskParticleEfficiency.cxx:207
 AliAnalysisTaskParticleEfficiency.cxx:208
 AliAnalysisTaskParticleEfficiency.cxx:209
 AliAnalysisTaskParticleEfficiency.cxx:210
 AliAnalysisTaskParticleEfficiency.cxx:211
 AliAnalysisTaskParticleEfficiency.cxx:212
 AliAnalysisTaskParticleEfficiency.cxx:213
 AliAnalysisTaskParticleEfficiency.cxx:214
 AliAnalysisTaskParticleEfficiency.cxx:215
 AliAnalysisTaskParticleEfficiency.cxx:216
 AliAnalysisTaskParticleEfficiency.cxx:217
 AliAnalysisTaskParticleEfficiency.cxx:218
 AliAnalysisTaskParticleEfficiency.cxx:219
 AliAnalysisTaskParticleEfficiency.cxx:220
 AliAnalysisTaskParticleEfficiency.cxx:221
 AliAnalysisTaskParticleEfficiency.cxx:222
 AliAnalysisTaskParticleEfficiency.cxx:223
 AliAnalysisTaskParticleEfficiency.cxx:224
 AliAnalysisTaskParticleEfficiency.cxx:225
 AliAnalysisTaskParticleEfficiency.cxx:226
 AliAnalysisTaskParticleEfficiency.cxx:227
 AliAnalysisTaskParticleEfficiency.cxx:228
 AliAnalysisTaskParticleEfficiency.cxx:229
 AliAnalysisTaskParticleEfficiency.cxx:230
 AliAnalysisTaskParticleEfficiency.cxx:231
 AliAnalysisTaskParticleEfficiency.cxx:232
 AliAnalysisTaskParticleEfficiency.cxx:233
 AliAnalysisTaskParticleEfficiency.cxx:234
 AliAnalysisTaskParticleEfficiency.cxx:235
 AliAnalysisTaskParticleEfficiency.cxx:236
 AliAnalysisTaskParticleEfficiency.cxx:237
 AliAnalysisTaskParticleEfficiency.cxx:238
 AliAnalysisTaskParticleEfficiency.cxx:239
 AliAnalysisTaskParticleEfficiency.cxx:240
 AliAnalysisTaskParticleEfficiency.cxx:241
 AliAnalysisTaskParticleEfficiency.cxx:242
 AliAnalysisTaskParticleEfficiency.cxx:243
 AliAnalysisTaskParticleEfficiency.cxx:244
 AliAnalysisTaskParticleEfficiency.cxx:245
 AliAnalysisTaskParticleEfficiency.cxx:246
 AliAnalysisTaskParticleEfficiency.cxx:247
 AliAnalysisTaskParticleEfficiency.cxx:248
 AliAnalysisTaskParticleEfficiency.cxx:249
 AliAnalysisTaskParticleEfficiency.cxx:250
 AliAnalysisTaskParticleEfficiency.cxx:251
 AliAnalysisTaskParticleEfficiency.cxx:252
 AliAnalysisTaskParticleEfficiency.cxx:253
 AliAnalysisTaskParticleEfficiency.cxx:254
 AliAnalysisTaskParticleEfficiency.cxx:255
 AliAnalysisTaskParticleEfficiency.cxx:256
 AliAnalysisTaskParticleEfficiency.cxx:257
 AliAnalysisTaskParticleEfficiency.cxx:258
 AliAnalysisTaskParticleEfficiency.cxx:259
 AliAnalysisTaskParticleEfficiency.cxx:260
 AliAnalysisTaskParticleEfficiency.cxx:261
 AliAnalysisTaskParticleEfficiency.cxx:262
 AliAnalysisTaskParticleEfficiency.cxx:263
 AliAnalysisTaskParticleEfficiency.cxx:264
 AliAnalysisTaskParticleEfficiency.cxx:265
 AliAnalysisTaskParticleEfficiency.cxx:266
 AliAnalysisTaskParticleEfficiency.cxx:267
 AliAnalysisTaskParticleEfficiency.cxx:268
 AliAnalysisTaskParticleEfficiency.cxx:269
 AliAnalysisTaskParticleEfficiency.cxx:270
 AliAnalysisTaskParticleEfficiency.cxx:271
 AliAnalysisTaskParticleEfficiency.cxx:272
 AliAnalysisTaskParticleEfficiency.cxx:273
 AliAnalysisTaskParticleEfficiency.cxx:274
 AliAnalysisTaskParticleEfficiency.cxx:275
 AliAnalysisTaskParticleEfficiency.cxx:276
 AliAnalysisTaskParticleEfficiency.cxx:277
 AliAnalysisTaskParticleEfficiency.cxx:278
 AliAnalysisTaskParticleEfficiency.cxx:279
 AliAnalysisTaskParticleEfficiency.cxx:280
 AliAnalysisTaskParticleEfficiency.cxx:281
 AliAnalysisTaskParticleEfficiency.cxx:282
 AliAnalysisTaskParticleEfficiency.cxx:283
 AliAnalysisTaskParticleEfficiency.cxx:284
 AliAnalysisTaskParticleEfficiency.cxx:285
 AliAnalysisTaskParticleEfficiency.cxx:286
 AliAnalysisTaskParticleEfficiency.cxx:287
 AliAnalysisTaskParticleEfficiency.cxx:288
 AliAnalysisTaskParticleEfficiency.cxx:289
 AliAnalysisTaskParticleEfficiency.cxx:290
 AliAnalysisTaskParticleEfficiency.cxx:291
 AliAnalysisTaskParticleEfficiency.cxx:292
 AliAnalysisTaskParticleEfficiency.cxx:293
 AliAnalysisTaskParticleEfficiency.cxx:294
 AliAnalysisTaskParticleEfficiency.cxx:295
 AliAnalysisTaskParticleEfficiency.cxx:296
 AliAnalysisTaskParticleEfficiency.cxx:297
 AliAnalysisTaskParticleEfficiency.cxx:298
 AliAnalysisTaskParticleEfficiency.cxx:299
 AliAnalysisTaskParticleEfficiency.cxx:300
 AliAnalysisTaskParticleEfficiency.cxx:301
 AliAnalysisTaskParticleEfficiency.cxx:302
 AliAnalysisTaskParticleEfficiency.cxx:303
 AliAnalysisTaskParticleEfficiency.cxx:304
 AliAnalysisTaskParticleEfficiency.cxx:305
 AliAnalysisTaskParticleEfficiency.cxx:306
 AliAnalysisTaskParticleEfficiency.cxx:307
 AliAnalysisTaskParticleEfficiency.cxx:308
 AliAnalysisTaskParticleEfficiency.cxx:309
 AliAnalysisTaskParticleEfficiency.cxx:310
 AliAnalysisTaskParticleEfficiency.cxx:311
 AliAnalysisTaskParticleEfficiency.cxx:312
 AliAnalysisTaskParticleEfficiency.cxx:313
 AliAnalysisTaskParticleEfficiency.cxx:314
 AliAnalysisTaskParticleEfficiency.cxx:315
 AliAnalysisTaskParticleEfficiency.cxx:316
 AliAnalysisTaskParticleEfficiency.cxx:317
 AliAnalysisTaskParticleEfficiency.cxx:318
 AliAnalysisTaskParticleEfficiency.cxx:319
 AliAnalysisTaskParticleEfficiency.cxx:320
 AliAnalysisTaskParticleEfficiency.cxx:321
 AliAnalysisTaskParticleEfficiency.cxx:322
 AliAnalysisTaskParticleEfficiency.cxx:323
 AliAnalysisTaskParticleEfficiency.cxx:324
 AliAnalysisTaskParticleEfficiency.cxx:325
 AliAnalysisTaskParticleEfficiency.cxx:326
 AliAnalysisTaskParticleEfficiency.cxx:327
 AliAnalysisTaskParticleEfficiency.cxx:328
 AliAnalysisTaskParticleEfficiency.cxx:329
 AliAnalysisTaskParticleEfficiency.cxx:330
 AliAnalysisTaskParticleEfficiency.cxx:331
 AliAnalysisTaskParticleEfficiency.cxx:332
 AliAnalysisTaskParticleEfficiency.cxx:333
 AliAnalysisTaskParticleEfficiency.cxx:334
 AliAnalysisTaskParticleEfficiency.cxx:335
 AliAnalysisTaskParticleEfficiency.cxx:336
 AliAnalysisTaskParticleEfficiency.cxx:337
 AliAnalysisTaskParticleEfficiency.cxx:338
 AliAnalysisTaskParticleEfficiency.cxx:339
 AliAnalysisTaskParticleEfficiency.cxx:340
 AliAnalysisTaskParticleEfficiency.cxx:341
 AliAnalysisTaskParticleEfficiency.cxx:342
 AliAnalysisTaskParticleEfficiency.cxx:343
 AliAnalysisTaskParticleEfficiency.cxx:344
 AliAnalysisTaskParticleEfficiency.cxx:345
 AliAnalysisTaskParticleEfficiency.cxx:346
 AliAnalysisTaskParticleEfficiency.cxx:347
 AliAnalysisTaskParticleEfficiency.cxx:348
 AliAnalysisTaskParticleEfficiency.cxx:349
 AliAnalysisTaskParticleEfficiency.cxx:350
 AliAnalysisTaskParticleEfficiency.cxx:351
 AliAnalysisTaskParticleEfficiency.cxx:352
 AliAnalysisTaskParticleEfficiency.cxx:353
 AliAnalysisTaskParticleEfficiency.cxx:354
 AliAnalysisTaskParticleEfficiency.cxx:355
 AliAnalysisTaskParticleEfficiency.cxx:356
 AliAnalysisTaskParticleEfficiency.cxx:357
 AliAnalysisTaskParticleEfficiency.cxx:358
 AliAnalysisTaskParticleEfficiency.cxx:359
 AliAnalysisTaskParticleEfficiency.cxx:360
 AliAnalysisTaskParticleEfficiency.cxx:361
 AliAnalysisTaskParticleEfficiency.cxx:362
 AliAnalysisTaskParticleEfficiency.cxx:363
 AliAnalysisTaskParticleEfficiency.cxx:364
 AliAnalysisTaskParticleEfficiency.cxx:365
 AliAnalysisTaskParticleEfficiency.cxx:366
 AliAnalysisTaskParticleEfficiency.cxx:367
 AliAnalysisTaskParticleEfficiency.cxx:368
 AliAnalysisTaskParticleEfficiency.cxx:369
 AliAnalysisTaskParticleEfficiency.cxx:370
 AliAnalysisTaskParticleEfficiency.cxx:371
 AliAnalysisTaskParticleEfficiency.cxx:372
 AliAnalysisTaskParticleEfficiency.cxx:373
 AliAnalysisTaskParticleEfficiency.cxx:374
 AliAnalysisTaskParticleEfficiency.cxx:375
 AliAnalysisTaskParticleEfficiency.cxx:376
 AliAnalysisTaskParticleEfficiency.cxx:377
 AliAnalysisTaskParticleEfficiency.cxx:378
 AliAnalysisTaskParticleEfficiency.cxx:379
 AliAnalysisTaskParticleEfficiency.cxx:380
 AliAnalysisTaskParticleEfficiency.cxx:381
 AliAnalysisTaskParticleEfficiency.cxx:382
 AliAnalysisTaskParticleEfficiency.cxx:383
 AliAnalysisTaskParticleEfficiency.cxx:384
 AliAnalysisTaskParticleEfficiency.cxx:385
 AliAnalysisTaskParticleEfficiency.cxx:386
 AliAnalysisTaskParticleEfficiency.cxx:387
 AliAnalysisTaskParticleEfficiency.cxx:388
 AliAnalysisTaskParticleEfficiency.cxx:389
 AliAnalysisTaskParticleEfficiency.cxx:390
 AliAnalysisTaskParticleEfficiency.cxx:391
 AliAnalysisTaskParticleEfficiency.cxx:392
 AliAnalysisTaskParticleEfficiency.cxx:393
 AliAnalysisTaskParticleEfficiency.cxx:394
 AliAnalysisTaskParticleEfficiency.cxx:395
 AliAnalysisTaskParticleEfficiency.cxx:396
 AliAnalysisTaskParticleEfficiency.cxx:397
 AliAnalysisTaskParticleEfficiency.cxx:398
 AliAnalysisTaskParticleEfficiency.cxx:399
 AliAnalysisTaskParticleEfficiency.cxx:400
 AliAnalysisTaskParticleEfficiency.cxx:401
 AliAnalysisTaskParticleEfficiency.cxx:402
 AliAnalysisTaskParticleEfficiency.cxx:403
 AliAnalysisTaskParticleEfficiency.cxx:404
 AliAnalysisTaskParticleEfficiency.cxx:405
 AliAnalysisTaskParticleEfficiency.cxx:406
 AliAnalysisTaskParticleEfficiency.cxx:407
 AliAnalysisTaskParticleEfficiency.cxx:408
 AliAnalysisTaskParticleEfficiency.cxx:409
 AliAnalysisTaskParticleEfficiency.cxx:410
 AliAnalysisTaskParticleEfficiency.cxx:411
 AliAnalysisTaskParticleEfficiency.cxx:412
 AliAnalysisTaskParticleEfficiency.cxx:413
 AliAnalysisTaskParticleEfficiency.cxx:414
 AliAnalysisTaskParticleEfficiency.cxx:415
 AliAnalysisTaskParticleEfficiency.cxx:416
 AliAnalysisTaskParticleEfficiency.cxx:417
 AliAnalysisTaskParticleEfficiency.cxx:418
 AliAnalysisTaskParticleEfficiency.cxx:419
 AliAnalysisTaskParticleEfficiency.cxx:420
 AliAnalysisTaskParticleEfficiency.cxx:421
 AliAnalysisTaskParticleEfficiency.cxx:422
 AliAnalysisTaskParticleEfficiency.cxx:423
 AliAnalysisTaskParticleEfficiency.cxx:424
 AliAnalysisTaskParticleEfficiency.cxx:425
 AliAnalysisTaskParticleEfficiency.cxx:426
 AliAnalysisTaskParticleEfficiency.cxx:427
 AliAnalysisTaskParticleEfficiency.cxx:428
 AliAnalysisTaskParticleEfficiency.cxx:429
 AliAnalysisTaskParticleEfficiency.cxx:430
 AliAnalysisTaskParticleEfficiency.cxx:431
 AliAnalysisTaskParticleEfficiency.cxx:432
 AliAnalysisTaskParticleEfficiency.cxx:433
 AliAnalysisTaskParticleEfficiency.cxx:434
 AliAnalysisTaskParticleEfficiency.cxx:435
 AliAnalysisTaskParticleEfficiency.cxx:436
 AliAnalysisTaskParticleEfficiency.cxx:437
 AliAnalysisTaskParticleEfficiency.cxx:438
 AliAnalysisTaskParticleEfficiency.cxx:439
 AliAnalysisTaskParticleEfficiency.cxx:440
 AliAnalysisTaskParticleEfficiency.cxx:441
 AliAnalysisTaskParticleEfficiency.cxx:442
 AliAnalysisTaskParticleEfficiency.cxx:443
 AliAnalysisTaskParticleEfficiency.cxx:444
 AliAnalysisTaskParticleEfficiency.cxx:445
 AliAnalysisTaskParticleEfficiency.cxx:446
 AliAnalysisTaskParticleEfficiency.cxx:447
 AliAnalysisTaskParticleEfficiency.cxx:448
 AliAnalysisTaskParticleEfficiency.cxx:449
 AliAnalysisTaskParticleEfficiency.cxx:450
 AliAnalysisTaskParticleEfficiency.cxx:451
 AliAnalysisTaskParticleEfficiency.cxx:452
 AliAnalysisTaskParticleEfficiency.cxx:453
 AliAnalysisTaskParticleEfficiency.cxx:454
 AliAnalysisTaskParticleEfficiency.cxx:455
 AliAnalysisTaskParticleEfficiency.cxx:456
 AliAnalysisTaskParticleEfficiency.cxx:457
 AliAnalysisTaskParticleEfficiency.cxx:458
 AliAnalysisTaskParticleEfficiency.cxx:459
 AliAnalysisTaskParticleEfficiency.cxx:460
 AliAnalysisTaskParticleEfficiency.cxx:461
 AliAnalysisTaskParticleEfficiency.cxx:462
 AliAnalysisTaskParticleEfficiency.cxx:463
 AliAnalysisTaskParticleEfficiency.cxx:464
 AliAnalysisTaskParticleEfficiency.cxx:465
 AliAnalysisTaskParticleEfficiency.cxx:466
 AliAnalysisTaskParticleEfficiency.cxx:467
 AliAnalysisTaskParticleEfficiency.cxx:468
 AliAnalysisTaskParticleEfficiency.cxx:469
 AliAnalysisTaskParticleEfficiency.cxx:470
 AliAnalysisTaskParticleEfficiency.cxx:471
 AliAnalysisTaskParticleEfficiency.cxx:472
 AliAnalysisTaskParticleEfficiency.cxx:473
 AliAnalysisTaskParticleEfficiency.cxx:474
 AliAnalysisTaskParticleEfficiency.cxx:475
 AliAnalysisTaskParticleEfficiency.cxx:476
 AliAnalysisTaskParticleEfficiency.cxx:477
 AliAnalysisTaskParticleEfficiency.cxx:478
 AliAnalysisTaskParticleEfficiency.cxx:479
 AliAnalysisTaskParticleEfficiency.cxx:480
 AliAnalysisTaskParticleEfficiency.cxx:481
 AliAnalysisTaskParticleEfficiency.cxx:482
 AliAnalysisTaskParticleEfficiency.cxx:483
 AliAnalysisTaskParticleEfficiency.cxx:484
 AliAnalysisTaskParticleEfficiency.cxx:485
 AliAnalysisTaskParticleEfficiency.cxx:486
 AliAnalysisTaskParticleEfficiency.cxx:487
 AliAnalysisTaskParticleEfficiency.cxx:488
 AliAnalysisTaskParticleEfficiency.cxx:489
 AliAnalysisTaskParticleEfficiency.cxx:490
 AliAnalysisTaskParticleEfficiency.cxx:491
 AliAnalysisTaskParticleEfficiency.cxx:492
 AliAnalysisTaskParticleEfficiency.cxx:493
 AliAnalysisTaskParticleEfficiency.cxx:494
 AliAnalysisTaskParticleEfficiency.cxx:495
 AliAnalysisTaskParticleEfficiency.cxx:496
 AliAnalysisTaskParticleEfficiency.cxx:497
 AliAnalysisTaskParticleEfficiency.cxx:498
 AliAnalysisTaskParticleEfficiency.cxx:499
 AliAnalysisTaskParticleEfficiency.cxx:500
 AliAnalysisTaskParticleEfficiency.cxx:501
 AliAnalysisTaskParticleEfficiency.cxx:502
 AliAnalysisTaskParticleEfficiency.cxx:503
 AliAnalysisTaskParticleEfficiency.cxx:504
 AliAnalysisTaskParticleEfficiency.cxx:505
 AliAnalysisTaskParticleEfficiency.cxx:506
 AliAnalysisTaskParticleEfficiency.cxx:507
 AliAnalysisTaskParticleEfficiency.cxx:508
 AliAnalysisTaskParticleEfficiency.cxx:509
 AliAnalysisTaskParticleEfficiency.cxx:510
 AliAnalysisTaskParticleEfficiency.cxx:511
 AliAnalysisTaskParticleEfficiency.cxx:512
 AliAnalysisTaskParticleEfficiency.cxx:513
 AliAnalysisTaskParticleEfficiency.cxx:514
 AliAnalysisTaskParticleEfficiency.cxx:515
 AliAnalysisTaskParticleEfficiency.cxx:516
 AliAnalysisTaskParticleEfficiency.cxx:517
 AliAnalysisTaskParticleEfficiency.cxx:518
 AliAnalysisTaskParticleEfficiency.cxx:519
 AliAnalysisTaskParticleEfficiency.cxx:520
 AliAnalysisTaskParticleEfficiency.cxx:521
 AliAnalysisTaskParticleEfficiency.cxx:522
 AliAnalysisTaskParticleEfficiency.cxx:523
 AliAnalysisTaskParticleEfficiency.cxx:524
 AliAnalysisTaskParticleEfficiency.cxx:525
 AliAnalysisTaskParticleEfficiency.cxx:526
 AliAnalysisTaskParticleEfficiency.cxx:527
 AliAnalysisTaskParticleEfficiency.cxx:528
 AliAnalysisTaskParticleEfficiency.cxx:529
 AliAnalysisTaskParticleEfficiency.cxx:530
 AliAnalysisTaskParticleEfficiency.cxx:531
 AliAnalysisTaskParticleEfficiency.cxx:532
 AliAnalysisTaskParticleEfficiency.cxx:533
 AliAnalysisTaskParticleEfficiency.cxx:534
 AliAnalysisTaskParticleEfficiency.cxx:535
 AliAnalysisTaskParticleEfficiency.cxx:536
 AliAnalysisTaskParticleEfficiency.cxx:537
 AliAnalysisTaskParticleEfficiency.cxx:538
 AliAnalysisTaskParticleEfficiency.cxx:539
 AliAnalysisTaskParticleEfficiency.cxx:540
 AliAnalysisTaskParticleEfficiency.cxx:541
 AliAnalysisTaskParticleEfficiency.cxx:542
 AliAnalysisTaskParticleEfficiency.cxx:543
 AliAnalysisTaskParticleEfficiency.cxx:544
 AliAnalysisTaskParticleEfficiency.cxx:545
 AliAnalysisTaskParticleEfficiency.cxx:546
 AliAnalysisTaskParticleEfficiency.cxx:547
 AliAnalysisTaskParticleEfficiency.cxx:548
 AliAnalysisTaskParticleEfficiency.cxx:549
 AliAnalysisTaskParticleEfficiency.cxx:550
 AliAnalysisTaskParticleEfficiency.cxx:551
 AliAnalysisTaskParticleEfficiency.cxx:552
 AliAnalysisTaskParticleEfficiency.cxx:553
 AliAnalysisTaskParticleEfficiency.cxx:554
 AliAnalysisTaskParticleEfficiency.cxx:555
 AliAnalysisTaskParticleEfficiency.cxx:556
 AliAnalysisTaskParticleEfficiency.cxx:557
 AliAnalysisTaskParticleEfficiency.cxx:558
 AliAnalysisTaskParticleEfficiency.cxx:559
 AliAnalysisTaskParticleEfficiency.cxx:560
 AliAnalysisTaskParticleEfficiency.cxx:561
 AliAnalysisTaskParticleEfficiency.cxx:562
 AliAnalysisTaskParticleEfficiency.cxx:563
 AliAnalysisTaskParticleEfficiency.cxx:564
 AliAnalysisTaskParticleEfficiency.cxx:565
 AliAnalysisTaskParticleEfficiency.cxx:566
 AliAnalysisTaskParticleEfficiency.cxx:567
 AliAnalysisTaskParticleEfficiency.cxx:568
 AliAnalysisTaskParticleEfficiency.cxx:569
 AliAnalysisTaskParticleEfficiency.cxx:570
 AliAnalysisTaskParticleEfficiency.cxx:571
 AliAnalysisTaskParticleEfficiency.cxx:572
 AliAnalysisTaskParticleEfficiency.cxx:573
 AliAnalysisTaskParticleEfficiency.cxx:574
 AliAnalysisTaskParticleEfficiency.cxx:575
 AliAnalysisTaskParticleEfficiency.cxx:576
 AliAnalysisTaskParticleEfficiency.cxx:577
 AliAnalysisTaskParticleEfficiency.cxx:578
 AliAnalysisTaskParticleEfficiency.cxx:579
 AliAnalysisTaskParticleEfficiency.cxx:580
 AliAnalysisTaskParticleEfficiency.cxx:581
 AliAnalysisTaskParticleEfficiency.cxx:582
 AliAnalysisTaskParticleEfficiency.cxx:583
 AliAnalysisTaskParticleEfficiency.cxx:584
 AliAnalysisTaskParticleEfficiency.cxx:585
 AliAnalysisTaskParticleEfficiency.cxx:586
 AliAnalysisTaskParticleEfficiency.cxx:587
 AliAnalysisTaskParticleEfficiency.cxx:588
 AliAnalysisTaskParticleEfficiency.cxx:589
 AliAnalysisTaskParticleEfficiency.cxx:590
 AliAnalysisTaskParticleEfficiency.cxx:591
 AliAnalysisTaskParticleEfficiency.cxx:592
 AliAnalysisTaskParticleEfficiency.cxx:593
 AliAnalysisTaskParticleEfficiency.cxx:594
 AliAnalysisTaskParticleEfficiency.cxx:595
 AliAnalysisTaskParticleEfficiency.cxx:596
 AliAnalysisTaskParticleEfficiency.cxx:597
 AliAnalysisTaskParticleEfficiency.cxx:598
 AliAnalysisTaskParticleEfficiency.cxx:599
 AliAnalysisTaskParticleEfficiency.cxx:600
 AliAnalysisTaskParticleEfficiency.cxx:601
 AliAnalysisTaskParticleEfficiency.cxx:602
 AliAnalysisTaskParticleEfficiency.cxx:603
 AliAnalysisTaskParticleEfficiency.cxx:604
 AliAnalysisTaskParticleEfficiency.cxx:605
 AliAnalysisTaskParticleEfficiency.cxx:606
 AliAnalysisTaskParticleEfficiency.cxx:607
 AliAnalysisTaskParticleEfficiency.cxx:608
 AliAnalysisTaskParticleEfficiency.cxx:609
 AliAnalysisTaskParticleEfficiency.cxx:610
 AliAnalysisTaskParticleEfficiency.cxx:611
 AliAnalysisTaskParticleEfficiency.cxx:612
 AliAnalysisTaskParticleEfficiency.cxx:613
 AliAnalysisTaskParticleEfficiency.cxx:614
 AliAnalysisTaskParticleEfficiency.cxx:615
 AliAnalysisTaskParticleEfficiency.cxx:616
 AliAnalysisTaskParticleEfficiency.cxx:617
 AliAnalysisTaskParticleEfficiency.cxx:618
 AliAnalysisTaskParticleEfficiency.cxx:619
 AliAnalysisTaskParticleEfficiency.cxx:620
 AliAnalysisTaskParticleEfficiency.cxx:621
 AliAnalysisTaskParticleEfficiency.cxx:622
 AliAnalysisTaskParticleEfficiency.cxx:623
 AliAnalysisTaskParticleEfficiency.cxx:624
 AliAnalysisTaskParticleEfficiency.cxx:625
 AliAnalysisTaskParticleEfficiency.cxx:626
 AliAnalysisTaskParticleEfficiency.cxx:627
 AliAnalysisTaskParticleEfficiency.cxx:628
 AliAnalysisTaskParticleEfficiency.cxx:629
 AliAnalysisTaskParticleEfficiency.cxx:630
 AliAnalysisTaskParticleEfficiency.cxx:631
 AliAnalysisTaskParticleEfficiency.cxx:632
 AliAnalysisTaskParticleEfficiency.cxx:633
 AliAnalysisTaskParticleEfficiency.cxx:634
 AliAnalysisTaskParticleEfficiency.cxx:635
 AliAnalysisTaskParticleEfficiency.cxx:636
 AliAnalysisTaskParticleEfficiency.cxx:637
 AliAnalysisTaskParticleEfficiency.cxx:638
 AliAnalysisTaskParticleEfficiency.cxx:639
 AliAnalysisTaskParticleEfficiency.cxx:640
 AliAnalysisTaskParticleEfficiency.cxx:641
 AliAnalysisTaskParticleEfficiency.cxx:642
 AliAnalysisTaskParticleEfficiency.cxx:643
 AliAnalysisTaskParticleEfficiency.cxx:644
 AliAnalysisTaskParticleEfficiency.cxx:645
 AliAnalysisTaskParticleEfficiency.cxx:646
 AliAnalysisTaskParticleEfficiency.cxx:647
 AliAnalysisTaskParticleEfficiency.cxx:648
 AliAnalysisTaskParticleEfficiency.cxx:649
 AliAnalysisTaskParticleEfficiency.cxx:650
 AliAnalysisTaskParticleEfficiency.cxx:651
 AliAnalysisTaskParticleEfficiency.cxx:652
 AliAnalysisTaskParticleEfficiency.cxx:653
 AliAnalysisTaskParticleEfficiency.cxx:654
 AliAnalysisTaskParticleEfficiency.cxx:655
 AliAnalysisTaskParticleEfficiency.cxx:656
 AliAnalysisTaskParticleEfficiency.cxx:657
 AliAnalysisTaskParticleEfficiency.cxx:658
 AliAnalysisTaskParticleEfficiency.cxx:659
 AliAnalysisTaskParticleEfficiency.cxx:660
 AliAnalysisTaskParticleEfficiency.cxx:661
 AliAnalysisTaskParticleEfficiency.cxx:662
 AliAnalysisTaskParticleEfficiency.cxx:663
 AliAnalysisTaskParticleEfficiency.cxx:664
 AliAnalysisTaskParticleEfficiency.cxx:665
 AliAnalysisTaskParticleEfficiency.cxx:666
 AliAnalysisTaskParticleEfficiency.cxx:667
 AliAnalysisTaskParticleEfficiency.cxx:668
 AliAnalysisTaskParticleEfficiency.cxx:669
 AliAnalysisTaskParticleEfficiency.cxx:670
 AliAnalysisTaskParticleEfficiency.cxx:671
 AliAnalysisTaskParticleEfficiency.cxx:672
 AliAnalysisTaskParticleEfficiency.cxx:673
 AliAnalysisTaskParticleEfficiency.cxx:674
 AliAnalysisTaskParticleEfficiency.cxx:675
 AliAnalysisTaskParticleEfficiency.cxx:676
 AliAnalysisTaskParticleEfficiency.cxx:677
 AliAnalysisTaskParticleEfficiency.cxx:678
 AliAnalysisTaskParticleEfficiency.cxx:679
 AliAnalysisTaskParticleEfficiency.cxx:680
 AliAnalysisTaskParticleEfficiency.cxx:681
 AliAnalysisTaskParticleEfficiency.cxx:682
 AliAnalysisTaskParticleEfficiency.cxx:683
 AliAnalysisTaskParticleEfficiency.cxx:684
 AliAnalysisTaskParticleEfficiency.cxx:685
 AliAnalysisTaskParticleEfficiency.cxx:686
 AliAnalysisTaskParticleEfficiency.cxx:687
 AliAnalysisTaskParticleEfficiency.cxx:688
 AliAnalysisTaskParticleEfficiency.cxx:689
 AliAnalysisTaskParticleEfficiency.cxx:690
 AliAnalysisTaskParticleEfficiency.cxx:691
 AliAnalysisTaskParticleEfficiency.cxx:692
 AliAnalysisTaskParticleEfficiency.cxx:693
 AliAnalysisTaskParticleEfficiency.cxx:694
 AliAnalysisTaskParticleEfficiency.cxx:695
 AliAnalysisTaskParticleEfficiency.cxx:696
 AliAnalysisTaskParticleEfficiency.cxx:697
 AliAnalysisTaskParticleEfficiency.cxx:698
 AliAnalysisTaskParticleEfficiency.cxx:699
 AliAnalysisTaskParticleEfficiency.cxx:700
 AliAnalysisTaskParticleEfficiency.cxx:701
 AliAnalysisTaskParticleEfficiency.cxx:702
 AliAnalysisTaskParticleEfficiency.cxx:703
 AliAnalysisTaskParticleEfficiency.cxx:704
 AliAnalysisTaskParticleEfficiency.cxx:705
 AliAnalysisTaskParticleEfficiency.cxx:706
 AliAnalysisTaskParticleEfficiency.cxx:707
 AliAnalysisTaskParticleEfficiency.cxx:708
 AliAnalysisTaskParticleEfficiency.cxx:709
 AliAnalysisTaskParticleEfficiency.cxx:710
 AliAnalysisTaskParticleEfficiency.cxx:711
 AliAnalysisTaskParticleEfficiency.cxx:712
 AliAnalysisTaskParticleEfficiency.cxx:713
 AliAnalysisTaskParticleEfficiency.cxx:714
 AliAnalysisTaskParticleEfficiency.cxx:715
 AliAnalysisTaskParticleEfficiency.cxx:716
 AliAnalysisTaskParticleEfficiency.cxx:717
 AliAnalysisTaskParticleEfficiency.cxx:718
 AliAnalysisTaskParticleEfficiency.cxx:719
 AliAnalysisTaskParticleEfficiency.cxx:720
 AliAnalysisTaskParticleEfficiency.cxx:721
 AliAnalysisTaskParticleEfficiency.cxx:722
 AliAnalysisTaskParticleEfficiency.cxx:723
 AliAnalysisTaskParticleEfficiency.cxx:724
 AliAnalysisTaskParticleEfficiency.cxx:725
 AliAnalysisTaskParticleEfficiency.cxx:726
 AliAnalysisTaskParticleEfficiency.cxx:727
 AliAnalysisTaskParticleEfficiency.cxx:728
 AliAnalysisTaskParticleEfficiency.cxx:729
 AliAnalysisTaskParticleEfficiency.cxx:730
 AliAnalysisTaskParticleEfficiency.cxx:731
 AliAnalysisTaskParticleEfficiency.cxx:732
 AliAnalysisTaskParticleEfficiency.cxx:733
 AliAnalysisTaskParticleEfficiency.cxx:734
 AliAnalysisTaskParticleEfficiency.cxx:735
 AliAnalysisTaskParticleEfficiency.cxx:736
 AliAnalysisTaskParticleEfficiency.cxx:737
 AliAnalysisTaskParticleEfficiency.cxx:738
 AliAnalysisTaskParticleEfficiency.cxx:739
 AliAnalysisTaskParticleEfficiency.cxx:740
 AliAnalysisTaskParticleEfficiency.cxx:741
 AliAnalysisTaskParticleEfficiency.cxx:742
 AliAnalysisTaskParticleEfficiency.cxx:743
 AliAnalysisTaskParticleEfficiency.cxx:744
 AliAnalysisTaskParticleEfficiency.cxx:745
 AliAnalysisTaskParticleEfficiency.cxx:746
 AliAnalysisTaskParticleEfficiency.cxx:747
 AliAnalysisTaskParticleEfficiency.cxx:748
 AliAnalysisTaskParticleEfficiency.cxx:749
 AliAnalysisTaskParticleEfficiency.cxx:750
 AliAnalysisTaskParticleEfficiency.cxx:751
 AliAnalysisTaskParticleEfficiency.cxx:752
 AliAnalysisTaskParticleEfficiency.cxx:753
 AliAnalysisTaskParticleEfficiency.cxx:754
 AliAnalysisTaskParticleEfficiency.cxx:755
 AliAnalysisTaskParticleEfficiency.cxx:756
 AliAnalysisTaskParticleEfficiency.cxx:757
 AliAnalysisTaskParticleEfficiency.cxx:758
 AliAnalysisTaskParticleEfficiency.cxx:759
 AliAnalysisTaskParticleEfficiency.cxx:760
 AliAnalysisTaskParticleEfficiency.cxx:761
 AliAnalysisTaskParticleEfficiency.cxx:762
 AliAnalysisTaskParticleEfficiency.cxx:763
 AliAnalysisTaskParticleEfficiency.cxx:764
 AliAnalysisTaskParticleEfficiency.cxx:765
 AliAnalysisTaskParticleEfficiency.cxx:766
 AliAnalysisTaskParticleEfficiency.cxx:767
 AliAnalysisTaskParticleEfficiency.cxx:768
 AliAnalysisTaskParticleEfficiency.cxx:769
 AliAnalysisTaskParticleEfficiency.cxx:770
 AliAnalysisTaskParticleEfficiency.cxx:771
 AliAnalysisTaskParticleEfficiency.cxx:772
 AliAnalysisTaskParticleEfficiency.cxx:773
 AliAnalysisTaskParticleEfficiency.cxx:774
 AliAnalysisTaskParticleEfficiency.cxx:775
 AliAnalysisTaskParticleEfficiency.cxx:776
 AliAnalysisTaskParticleEfficiency.cxx:777
 AliAnalysisTaskParticleEfficiency.cxx:778
 AliAnalysisTaskParticleEfficiency.cxx:779
 AliAnalysisTaskParticleEfficiency.cxx:780
 AliAnalysisTaskParticleEfficiency.cxx:781
 AliAnalysisTaskParticleEfficiency.cxx:782
 AliAnalysisTaskParticleEfficiency.cxx:783
 AliAnalysisTaskParticleEfficiency.cxx:784
 AliAnalysisTaskParticleEfficiency.cxx:785
 AliAnalysisTaskParticleEfficiency.cxx:786
 AliAnalysisTaskParticleEfficiency.cxx:787
 AliAnalysisTaskParticleEfficiency.cxx:788
 AliAnalysisTaskParticleEfficiency.cxx:789
 AliAnalysisTaskParticleEfficiency.cxx:790
 AliAnalysisTaskParticleEfficiency.cxx:791
 AliAnalysisTaskParticleEfficiency.cxx:792
 AliAnalysisTaskParticleEfficiency.cxx:793
 AliAnalysisTaskParticleEfficiency.cxx:794
 AliAnalysisTaskParticleEfficiency.cxx:795
 AliAnalysisTaskParticleEfficiency.cxx:796
 AliAnalysisTaskParticleEfficiency.cxx:797
 AliAnalysisTaskParticleEfficiency.cxx:798
 AliAnalysisTaskParticleEfficiency.cxx:799
 AliAnalysisTaskParticleEfficiency.cxx:800
 AliAnalysisTaskParticleEfficiency.cxx:801
 AliAnalysisTaskParticleEfficiency.cxx:802
 AliAnalysisTaskParticleEfficiency.cxx:803
 AliAnalysisTaskParticleEfficiency.cxx:804
 AliAnalysisTaskParticleEfficiency.cxx:805
 AliAnalysisTaskParticleEfficiency.cxx:806
 AliAnalysisTaskParticleEfficiency.cxx:807
 AliAnalysisTaskParticleEfficiency.cxx:808
 AliAnalysisTaskParticleEfficiency.cxx:809
 AliAnalysisTaskParticleEfficiency.cxx:810
 AliAnalysisTaskParticleEfficiency.cxx:811
 AliAnalysisTaskParticleEfficiency.cxx:812
 AliAnalysisTaskParticleEfficiency.cxx:813
 AliAnalysisTaskParticleEfficiency.cxx:814
 AliAnalysisTaskParticleEfficiency.cxx:815
 AliAnalysisTaskParticleEfficiency.cxx:816
 AliAnalysisTaskParticleEfficiency.cxx:817
 AliAnalysisTaskParticleEfficiency.cxx:818
 AliAnalysisTaskParticleEfficiency.cxx:819
 AliAnalysisTaskParticleEfficiency.cxx:820
 AliAnalysisTaskParticleEfficiency.cxx:821
 AliAnalysisTaskParticleEfficiency.cxx:822
 AliAnalysisTaskParticleEfficiency.cxx:823
 AliAnalysisTaskParticleEfficiency.cxx:824
 AliAnalysisTaskParticleEfficiency.cxx:825
 AliAnalysisTaskParticleEfficiency.cxx:826
 AliAnalysisTaskParticleEfficiency.cxx:827
 AliAnalysisTaskParticleEfficiency.cxx:828
 AliAnalysisTaskParticleEfficiency.cxx:829
 AliAnalysisTaskParticleEfficiency.cxx:830
 AliAnalysisTaskParticleEfficiency.cxx:831
 AliAnalysisTaskParticleEfficiency.cxx:832
 AliAnalysisTaskParticleEfficiency.cxx:833
 AliAnalysisTaskParticleEfficiency.cxx:834
 AliAnalysisTaskParticleEfficiency.cxx:835
 AliAnalysisTaskParticleEfficiency.cxx:836
 AliAnalysisTaskParticleEfficiency.cxx:837
 AliAnalysisTaskParticleEfficiency.cxx:838
 AliAnalysisTaskParticleEfficiency.cxx:839
 AliAnalysisTaskParticleEfficiency.cxx:840
 AliAnalysisTaskParticleEfficiency.cxx:841
 AliAnalysisTaskParticleEfficiency.cxx:842
 AliAnalysisTaskParticleEfficiency.cxx:843
 AliAnalysisTaskParticleEfficiency.cxx:844
 AliAnalysisTaskParticleEfficiency.cxx:845
 AliAnalysisTaskParticleEfficiency.cxx:846
 AliAnalysisTaskParticleEfficiency.cxx:847
 AliAnalysisTaskParticleEfficiency.cxx:848
 AliAnalysisTaskParticleEfficiency.cxx:849
 AliAnalysisTaskParticleEfficiency.cxx:850
 AliAnalysisTaskParticleEfficiency.cxx:851
 AliAnalysisTaskParticleEfficiency.cxx:852
 AliAnalysisTaskParticleEfficiency.cxx:853
 AliAnalysisTaskParticleEfficiency.cxx:854
 AliAnalysisTaskParticleEfficiency.cxx:855
 AliAnalysisTaskParticleEfficiency.cxx:856
 AliAnalysisTaskParticleEfficiency.cxx:857
 AliAnalysisTaskParticleEfficiency.cxx:858
 AliAnalysisTaskParticleEfficiency.cxx:859
 AliAnalysisTaskParticleEfficiency.cxx:860
 AliAnalysisTaskParticleEfficiency.cxx:861
 AliAnalysisTaskParticleEfficiency.cxx:862
 AliAnalysisTaskParticleEfficiency.cxx:863
 AliAnalysisTaskParticleEfficiency.cxx:864
 AliAnalysisTaskParticleEfficiency.cxx:865
 AliAnalysisTaskParticleEfficiency.cxx:866
 AliAnalysisTaskParticleEfficiency.cxx:867
 AliAnalysisTaskParticleEfficiency.cxx:868
 AliAnalysisTaskParticleEfficiency.cxx:869
 AliAnalysisTaskParticleEfficiency.cxx:870
 AliAnalysisTaskParticleEfficiency.cxx:871
 AliAnalysisTaskParticleEfficiency.cxx:872
 AliAnalysisTaskParticleEfficiency.cxx:873
 AliAnalysisTaskParticleEfficiency.cxx:874
 AliAnalysisTaskParticleEfficiency.cxx:875
 AliAnalysisTaskParticleEfficiency.cxx:876
 AliAnalysisTaskParticleEfficiency.cxx:877
 AliAnalysisTaskParticleEfficiency.cxx:878
 AliAnalysisTaskParticleEfficiency.cxx:879
 AliAnalysisTaskParticleEfficiency.cxx:880
 AliAnalysisTaskParticleEfficiency.cxx:881
 AliAnalysisTaskParticleEfficiency.cxx:882
 AliAnalysisTaskParticleEfficiency.cxx:883
 AliAnalysisTaskParticleEfficiency.cxx:884
 AliAnalysisTaskParticleEfficiency.cxx:885
 AliAnalysisTaskParticleEfficiency.cxx:886
 AliAnalysisTaskParticleEfficiency.cxx:887
 AliAnalysisTaskParticleEfficiency.cxx:888
 AliAnalysisTaskParticleEfficiency.cxx:889
 AliAnalysisTaskParticleEfficiency.cxx:890
 AliAnalysisTaskParticleEfficiency.cxx:891
 AliAnalysisTaskParticleEfficiency.cxx:892
 AliAnalysisTaskParticleEfficiency.cxx:893
 AliAnalysisTaskParticleEfficiency.cxx:894
 AliAnalysisTaskParticleEfficiency.cxx:895
 AliAnalysisTaskParticleEfficiency.cxx:896
 AliAnalysisTaskParticleEfficiency.cxx:897
 AliAnalysisTaskParticleEfficiency.cxx:898
 AliAnalysisTaskParticleEfficiency.cxx:899
 AliAnalysisTaskParticleEfficiency.cxx:900
 AliAnalysisTaskParticleEfficiency.cxx:901
 AliAnalysisTaskParticleEfficiency.cxx:902
 AliAnalysisTaskParticleEfficiency.cxx:903
 AliAnalysisTaskParticleEfficiency.cxx:904
 AliAnalysisTaskParticleEfficiency.cxx:905
 AliAnalysisTaskParticleEfficiency.cxx:906
 AliAnalysisTaskParticleEfficiency.cxx:907
 AliAnalysisTaskParticleEfficiency.cxx:908
 AliAnalysisTaskParticleEfficiency.cxx:909
 AliAnalysisTaskParticleEfficiency.cxx:910
 AliAnalysisTaskParticleEfficiency.cxx:911
 AliAnalysisTaskParticleEfficiency.cxx:912
 AliAnalysisTaskParticleEfficiency.cxx:913
 AliAnalysisTaskParticleEfficiency.cxx:914
 AliAnalysisTaskParticleEfficiency.cxx:915
 AliAnalysisTaskParticleEfficiency.cxx:916
 AliAnalysisTaskParticleEfficiency.cxx:917
 AliAnalysisTaskParticleEfficiency.cxx:918
 AliAnalysisTaskParticleEfficiency.cxx:919
 AliAnalysisTaskParticleEfficiency.cxx:920
 AliAnalysisTaskParticleEfficiency.cxx:921
 AliAnalysisTaskParticleEfficiency.cxx:922
 AliAnalysisTaskParticleEfficiency.cxx:923
 AliAnalysisTaskParticleEfficiency.cxx:924
 AliAnalysisTaskParticleEfficiency.cxx:925
 AliAnalysisTaskParticleEfficiency.cxx:926
 AliAnalysisTaskParticleEfficiency.cxx:927
 AliAnalysisTaskParticleEfficiency.cxx:928
 AliAnalysisTaskParticleEfficiency.cxx:929
 AliAnalysisTaskParticleEfficiency.cxx:930
 AliAnalysisTaskParticleEfficiency.cxx:931
 AliAnalysisTaskParticleEfficiency.cxx:932
 AliAnalysisTaskParticleEfficiency.cxx:933
 AliAnalysisTaskParticleEfficiency.cxx:934
 AliAnalysisTaskParticleEfficiency.cxx:935
 AliAnalysisTaskParticleEfficiency.cxx:936
 AliAnalysisTaskParticleEfficiency.cxx:937
 AliAnalysisTaskParticleEfficiency.cxx:938