ROOT logo
/**************************************************************************
 * Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/////////////////////////////////////////////////////////////
//							   //
//	Class to analyze ZDC data			   //
//							   //
/////////////////////////////////////////////////////////////

#include <TList.h>
#include <TH1F.h>
#include <TH2F.h>
#include <TFile.h>
#include <TString.h>
#include <TCanvas.h>

#include "AliAnalysisManager.h"
#include "AliInputEventHandler.h"
#include "AliVEvent.h"
#include "AliESD.h"
#include "AliESDEvent.h"
#include "AliESDHeader.h"
#include "AliESDInputHandler.h"
#include "AliESDZDC.h"
#include "AliMultiplicity.h"
#include "AliAODHandler.h"
#include "AliAODEvent.h"
#include "AliAODHeader.h"
#include "AliAODVertex.h"
#include "AliAODVZERO.h"
#include "AliAODZDC.h"
#include "AliAODMCHeader.h"
#include "AliMCEventHandler.h"
#include "AliMCEvent.h"
#include "AliHeader.h"
#include "AliAODMCParticle.h"
#include "AliAnalysisTaskSE.h"
#include "AliGenEventHeader.h"
#include "AliGenHijingEventHeader.h"
#include "AliPhysicsSelectionTask.h"
#include "AliPhysicsSelection.h"
#include "AliBackgroundSelection.h"
#include "AliTriggerAnalysis.h"
#include "AliCentrality.h"
#include "AliAnalysisTaskZDCPbPb.h"

ClassImp(AliAnalysisTaskZDCPbPb)


//________________________________________________________________________
AliAnalysisTaskZDCPbPb::AliAnalysisTaskZDCPbPb():
  AliAnalysisTaskSE(),
    fAnalysisInput(kESD),
    fIsMCInput(kFALSE),
    fCentrLowLim(0),
    fCentrUpLim(0), 
    fCentrEstimator(0),
    fOutput(0x0),
    fhZNCvsZNA(0x0),    
    fhZPCvsZPA(0x0), 
    fhZDCCvsZDCCA(0x0),  
    fhZNCvsZPC(0x0),
    fhZNAvsZPA(0x0),
    fhZNvsZP(0x0),
    fhZNvsZEM(0x0),      
    fhZNvsZEMwV0M(0x0),      
    fhZDCvsZEM(0x0), 
    fhZDCvsZEMwV0M(0x0),    
    fhZNvsVZERO(0x0),    
    fhZDCvsVZERO(0x0),
    fhZDCvsTracklets(0x0),   
    fhZDCvsNclu1(0x0),
    fhVZEROvsZEM(0x0),   
    fhDebunch(0x0),      
    fhZNCcentroid(0x0),  
    fhZNAcentroid(0x0),
    fhAsymm(0x0),
    fhZNAvsAsymm(0x0),
    fhZNCvsAsymm(0x0),
    fhZNCvscentrality(0x0),
    fhZNAvscentrality(0x0),
    fhZPCvscentrality(0x0),
    fhZPAvscentrality(0x0),
    fhZNCpmcvscentr(0x0),
    fhZNApmcvscentr(0x0),
    fhZPCpmcvscentr(0x0),
    fhZPApmcvscentr(0x0),
    fhZNCpmcLR(0x0),    
    fhZNApmcLR(0x0),    
    fhZPCpmcLR(0x0),    
    fhZPApmcLR(0x0)    
{   
   // Default constructor
   for(int i=0; i<5; i++){
     fhZNCPM[i] = 0x0;
     fhZNAPM[i] = 0x0;    
     fhZPCPM[i] = 0x0;	    
     fhZPAPM[i] = 0x0; 	    
     fhZNCPMlg[i] = 0x0;    
     fhZNAPMlg[i] = 0x0;    
     fhZPCPMlg[i] = 0x0;    
     fhZPAPMlg[i] = 0x0;    
   }
   for(int i=0; i<2; i++) fhZEM[i] = 0x0;  
   for(int i=0; i<6; i++){
     fhTDCraw[i] = 0x0;  
     fhTDC[i] = 0x0;  
   }
   for(int i=0; i<4; i++){
     fhZNCPMQiPMC[i] = 0x0;
     fhZNAPMQiPMC[i] = 0x0;
     fhZPCPMQiPMC[i] = 0x0;
     fhZPAPMQiPMC[i] = 0x0;
     fhPMCvsPMQ[i] = 0x0;
   }  
}   

//________________________________________________________________________
AliAnalysisTaskZDCPbPb::AliAnalysisTaskZDCPbPb(const char *name):
  AliAnalysisTaskSE(name),
    fAnalysisInput(kESD),
    fIsMCInput(kFALSE),
    fCentrLowLim(0.),
    fCentrUpLim(100.), 
    fCentrEstimator("V0M"),
    fOutput(0x0),
    fhZNCvsZNA(0x0),    
    fhZPCvsZPA(0x0), 
    fhZDCCvsZDCCA(0x0),  
    fhZNCvsZPC(0x0),
    fhZNAvsZPA(0x0),
    fhZNvsZP(0x0),
    fhZNvsZEM(0x0),      
    fhZNvsZEMwV0M(0x0),      
    fhZDCvsZEM(0x0),     
    fhZDCvsZEMwV0M(0x0),    
    fhZNvsVZERO(0x0),    
    fhZDCvsVZERO(0x0),
    fhZDCvsTracklets(0x0),   
    fhZDCvsNclu1(0x0),
    fhVZEROvsZEM(0x0),   
    fhDebunch(0x0),      
    fhZNCcentroid(0x0),  
    fhZNAcentroid(0x0),
    fhAsymm(0x0),
    fhZNAvsAsymm(0x0),
    fhZNCvsAsymm(0x0),
    fhZNCvscentrality(0x0),
    fhZNAvscentrality(0x0),
    fhZPCvscentrality(0x0),
    fhZPAvscentrality(0x0),
    fhZNCpmcvscentr(0x0),
    fhZNApmcvscentr(0x0),
    fhZPCpmcvscentr(0x0),
    fhZPApmcvscentr(0x0),
    fhZNCpmcLR(0x0),    
    fhZNApmcLR(0x0),    
    fhZPCpmcLR(0x0),    
    fhZPApmcLR(0x0)    
{

   for(int i=0; i<5; i++){
     fhZNCPM[i] = 0x0;
     fhZNAPM[i] = 0x0;    
     fhZPCPM[i] = 0x0;	    
     fhZPAPM[i] = 0x0; 	    
     fhZNCPMlg[i] = 0x0;    
     fhZNAPMlg[i] = 0x0;    
     fhZPCPMlg[i] = 0x0;    
     fhZPAPMlg[i] = 0x0;    
   }
   for(int i=0; i<2; i++) fhZEM[i] = 0x0;  
   for(int i=0; i<6; i++){
     fhTDCraw[i] = 0x0;  
     fhTDC[i] = 0x0;  
   }
   for(int i=0; i<4; i++){
     fhZNCPMQiPMC[i] = 0x0;
     fhZNAPMQiPMC[i] = 0x0;
     fhZPCPMQiPMC[i] = 0x0;
     fhZPAPMQiPMC[i] = 0x0;
     fhPMCvsPMQ[i] = 0x0;
   }  
  
  // Output slot #1 writes into a TList container
  DefineOutput(1, TList::Class()); 

}

//________________________________________________________________________
AliAnalysisTaskZDCPbPb& AliAnalysisTaskZDCPbPb::operator=(const AliAnalysisTaskZDCPbPb& c)
{
  //
  // Assignment operator
  //
  if (this!=&c) {
    AliAnalysisTaskSE::operator=(c);
  }
  return *this;
}

//________________________________________________________________________
AliAnalysisTaskZDCPbPb::AliAnalysisTaskZDCPbPb(const AliAnalysisTaskZDCPbPb& ana):
  AliAnalysisTaskSE(ana),
    fAnalysisInput(ana.fAnalysisInput),
    fIsMCInput(ana.fIsMCInput),
    fCentrLowLim(ana.fCentrLowLim),
    fCentrUpLim(ana.fCentrUpLim), 
    fCentrEstimator(ana.fCentrEstimator),
    fOutput(ana.fOutput),
    fhZNCvsZNA(ana.fhZNCvsZNA),    
    fhZPCvsZPA(ana.fhZPCvsZPA), 
    fhZDCCvsZDCCA(ana.fhZDCCvsZDCCA),  
    fhZNCvsZPC(ana.fhZNCvsZPC),
    fhZNAvsZPA(ana.fhZNAvsZPA),
    fhZNvsZP(ana.fhZNvsZP),
    fhZNvsZEM(ana.fhZNvsZEM),      
    fhZNvsZEMwV0M(ana.fhZNvsZEM),      
    fhZDCvsZEM(ana.fhZDCvsZEM),     
    fhZDCvsZEMwV0M(ana.fhZDCvsZEMwV0M),    
    fhZNvsVZERO(ana.fhZNvsVZERO),    
    fhZDCvsVZERO(ana.fhZDCvsVZERO),
    fhZDCvsTracklets(ana.fhZDCvsTracklets), 
    fhZDCvsNclu1(ana.fhZDCvsNclu1),  
    fhVZEROvsZEM(ana.fhVZEROvsZEM),   
    fhDebunch(ana.fhDebunch),      
    fhZNCcentroid(ana.fhZNCcentroid),  
    fhZNAcentroid(ana.fhZNAcentroid),
    fhAsymm(ana.fhAsymm),
    fhZNAvsAsymm(ana.fhZNAvsAsymm),
    fhZNCvsAsymm(ana.fhZNCvsAsymm),
    fhZNCvscentrality(ana.fhZNCvscentrality),
    fhZNAvscentrality(ana.fhZNAvscentrality),
    fhZPCvscentrality(ana.fhZPCvscentrality),
    fhZPAvscentrality(ana.fhZPAvscentrality),
    fhZNCpmcvscentr(ana.fhZNCpmcvscentr),
    fhZNApmcvscentr(ana.fhZNApmcvscentr),
    fhZPCpmcvscentr(ana.fhZPCpmcvscentr),
    fhZPApmcvscentr(ana.fhZPApmcvscentr),
    fhZNCpmcLR(ana.fhZNCpmcLR),    
    fhZNApmcLR(ana.fhZNApmcLR),    
    fhZPCpmcLR(ana.fhZPCpmcLR),    
    fhZPApmcLR(ana.fhZPApmcLR)    
    

{
  //
  // Copy Constructor	
  //
  for(int i=0; i<5; i++){
     fhZNCPM[i] = ana.fhZNCPM[i];
     fhZNAPM[i] = ana.fhZNAPM[i];    
     fhZPCPM[i] = ana.fhZPCPM[i];     
     fhZPAPM[i] = ana.fhZPAPM[i];	      
     fhZNCPMlg[i] = ana.fhZNCPMlg[i];	 
     fhZNAPMlg[i] = ana.fhZNAPMlg[i];	 
     fhZPCPMlg[i] = ana.fhZPCPMlg[i];	 
     fhZPAPMlg[i] = ana.fhZPAPMlg[i];	 
   }
   for(int i=0; i<2; i++) fhZEM[i] = ana.fhZEM[i];  
   for(int i=0; i<6; i++){
     fhTDCraw[i] = ana.fhTDCraw[i];  
     fhTDC[i] = ana.fhTDC[i];  
   }
   for(int i=0; i<4; i++) fhPMCvsPMQ[i] = ana.fhPMCvsPMQ[i];  
   for(int i=0; i<4; i++){
     fhZNCPMQiPMC[i] = ana.fhZNCPMQiPMC[i];
     fhZNAPMQiPMC[i] = ana.fhZNAPMQiPMC[i];
     fhZPCPMQiPMC[i] = ana.fhZPCPMQiPMC[i];
     fhZPAPMQiPMC[i] = ana.fhZPAPMQiPMC[i];
     fhPMCvsPMQ[i] = ana.fhPMCvsPMQ[i];
   }  
}
 
//________________________________________________________________________
AliAnalysisTaskZDCPbPb::~AliAnalysisTaskZDCPbPb()
{
  // Destructor
  if(fOutput && !AliAnalysisManager::GetAnalysisManager()->IsProofMode()){
    delete fOutput; fOutput=0;
  } 
   
}  

//________________________________________________________________________
void AliAnalysisTaskZDCPbPb::UserCreateOutputObjects()
{
  // Create the output containers
  //printf("  AliAnalysisTaskZDCPbPb::UserCreateOutputObjects()\n\n");
  fOutput = new TList;
  fOutput->SetOwner();
  //fOutput->SetName("output");
  
  for(int i=0; i<5; i++){
     char hname[20];
     sprintf(hname,"hZNCPM%d",i);
     fhZNCPM[i] = new TH1F(hname, hname, 200, -50., 140000);
     fOutput->Add(fhZNCPM[i]);
     //
     sprintf(hname,"hZNAPM%d",i);
     fhZNAPM[i] = new TH1F(hname, hname, 200, -50., 140000);    
     fOutput->Add(fhZNAPM[i]);
     //
     sprintf(hname,"hZPCPM%d",i);
     fhZPCPM[i] = new TH1F(hname, hname, 200, -50., 50000);	
     fOutput->Add(fhZPCPM[i]);
     //
     sprintf(hname,"hZPAPM%d",i);
     fhZPAPM[i] = new TH1F(hname, hname, 200, -50., 50000);		
     fOutput->Add(fhZPAPM[i]);
     //
     sprintf(hname,"hZNCPMlg%d",i);
     fhZNCPMlg[i] = new TH1F(hname, hname, 200, -50., 140000);	 
     fOutput->Add(fhZNCPMlg[i]);
     //
     sprintf(hname,"hZNAPMlg%d",i);
     fhZNAPMlg[i] = new TH1F(hname, hname, 200, -50., 140000);	 
     fOutput->Add(fhZNAPMlg[i]);
     //
     sprintf(hname,"hZPCPMlg%d",i);
     fhZPCPMlg[i] = new TH1F(hname, hname, 200, -50., 50000);	 
     fOutput->Add(fhZPCPMlg[i]);
     //
     sprintf(hname,"hZPAPMlg%d",i);
     fhZPAPMlg[i] = new TH1F(hname, hname, 200, -50., 50000);	 
     fOutput->Add(fhZPAPMlg[i]);
     //
     if(i<4){
       //
       char hnamenc[20];
       sprintf(hnamenc, "hZNCPMQ%dPMC",i+1);
       fhZNCPMQiPMC[i] = new TH1F(hnamenc, hnamenc, 100, 0., 1.);
       fOutput->Add(fhZNCPMQiPMC[i]);
       //
       char hnamena[20];
       sprintf(hnamena, "hZNAPMQ%dPMC",i+1);
       fhZNAPMQiPMC[i] = new TH1F(hnamena, hnamena, 100, 0., 1.);
       fOutput->Add(fhZNAPMQiPMC[i]);
       //
       char hnamepc[20];
       sprintf(hnamepc, "hZPCPMQ%dPMC",i+1);
       fhZPCPMQiPMC[i] = new TH1F(hnamepc, hnamepc, 100, 0., 1.);
       fOutput->Add(fhZPCPMQiPMC[i]);
       //
       char hnamepa[20];
       sprintf(hnamepa, "hZPAPMQ%dPMC",i+1);
       fhZPAPMQiPMC[i] = new TH1F(hnamepa, hnamepa, 100, 0., 1.);
       fOutput->Add(fhZPAPMQiPMC[i]);
     }
   }
   for(int i=0; i<6; i++){
     if(i==0){
       fhZEM[i] = new TH1F("hZEM1","hZEM1",200,-10.,1190.);
       fhTDCraw[i] = new TH1F("hTDCZEM1raw", "hTDCZEM1raw", 200, -200., 0.);
       fhTDC[i] = new TH1F("hTDCZEM1", "hTDCZEM1", 200, -150., 50.);
       fhPMCvsPMQ[i] = new TH2F("hPMCvsPMQZNC","hPMCvsPMQZNC",200,-10.,140000,200,-10.,140000);
       //
       fOutput->Add(fhZEM[i]);
       fOutput->Add(fhPMCvsPMQ[i]);
     }
     else if(i==1){
       fhZEM[i] = new TH1F("hZEM2","hZEM2",200,-10.,1190.);
       fhTDCraw[i] = new TH1F("hTDCZEM2raw", "hTDCZEM2raw", 200, -200., 0.);
       fhTDC[i] = new TH1F("hTDCZEM2", "hTDCZEM2", 200, -150., 50.);
       fhPMCvsPMQ[i] = new TH2F("hPMCvsPMQZPC","hPMCvsPMQZPC",200,-10.,50000,200,-10.,50000);
       //
       fOutput->Add(fhZEM[i]);
       fOutput->Add(fhPMCvsPMQ[i]);
     }
     else if(i==2){
       fhTDCraw[i] = new TH1F("hTDCZNCraw", "hTDCZNCraw", 200, -200., 0.);
       fhTDC[i] = new TH1F("hTDCZNC", "hTDCZNC", 200, -150., 50.);
       fhPMCvsPMQ[i] = new TH2F("hPMCvsPMQZNA","hPMCvsPMQZNA",200,-10.,140000,200,-10.,140000);
       //
       fOutput->Add(fhPMCvsPMQ[i]);
     }
     else if(i==3){
       fhTDCraw[i] = new TH1F("hTDCZPCraw", "hTDCZPCraw", 200, -200., 0.);
       fhTDC[i] = new TH1F("hTDCZPC", "hTDCZPC", 200, -150., 50.);
       fhPMCvsPMQ[i] = new TH2F("hPMCvsPMQZPA","hPMCvsPMQZPA",200,-10.,50000,200,-10.,50000);
       //
       fOutput->Add(fhPMCvsPMQ[i]);
     }
     else if(i==4){
       fhTDCraw[i] = new TH1F("hTDCZNAraw", "hTDCZNAraw", 200, -200., 0.);
       fhTDC[i] = new TH1F("hTDCZNA", "hTDCZNA", 200, -150., 50.);
     }
     else if(i==5){
       fhTDCraw[i] = new TH1F("hTDCZPAraw", "hTDCZPAraw", 200, -200., 0.);
       fhTDC[i] = new TH1F("hTDCZPA", "hTDCZPA", 200, -150., 50.);
     }
     //
     fOutput->Add(fhTDC[i]);
  }
  
  
  fhZNCvsZNA = new TH2F("hZNCvsZNA","hZNCvsZNA",200,-50.,140000,200,-50.,140000);
  fOutput->Add(fhZNCvsZNA);
  fhZPCvsZPA = new TH2F("hZPCvsZPA","hZPCvsZPA",200,-50.,50000,200,-50.,50000);	
  fOutput->Add(fhZPCvsZPA);
  fhZDCCvsZDCCA = new TH2F("hZDCCvsZDCCA","hZDCCvsZDCCA",200,0.,180000.,200,0.,200000.);	
  fOutput->Add(fhZDCCvsZDCCA);
  fhZNCvsZPC = new TH2F("hZNCvsZPC","hZNCvsZPC",200,-50.,50000,200,-50.,140000);
  fOutput->Add(fhZNCvsZPC);
  fhZNAvsZPA = new TH2F("hZNAvsZPA","hZNAvsZPA",200,-50.,50000,200,-50.,140000);	
  fOutput->Add(fhZNAvsZPA);
  fhZNvsZP = new TH2F("hZNvsZP","hZNvsZP",200,-50.,80000,200,-50.,200000);	
  fOutput->Add(fhZNvsZP);
  fhZNvsZEM = new TH2F("hZNvsZEM","hZNvsZEM",200,0.,2500.,200,0.,200000.);	
  fOutput->Add(fhZNvsZEM);
  fhZNvsZEMwV0M = new TH2F("hZNvsZEMwV0M","hZNvsZEM wV0M",200,0.,2500.,200,0.,200000.);	
  fOutput->Add(fhZNvsZEMwV0M);
  fhZDCvsZEM = new TH2F("hZDCvsZEM","hZDCvsZEM",200,0.,2500.,250,0.,250000.);	
  fOutput->Add(fhZDCvsZEM);
  fhZDCvsZEMwV0M = new TH2F("hZDCvsZEMwV0M","hZDCvsZEM wV0M",200,0.,2500.,250,0.,250000.);	
  fOutput->Add(fhZDCvsZEMwV0M);
  fhZNvsVZERO = new TH2F("hZNvsVZERO","hZNvsVZERO",250,0.,25000.,200,0.,200000.);	
  fOutput->Add(fhZNvsVZERO);
  fhZDCvsVZERO = new TH2F("hZDCvsVZERO","hZDCvsVZERO",250,0.,25000.,250,0.,250000.);	
  fOutput->Add(fhZDCvsVZERO);
  fhZDCvsTracklets = new TH2F("hZDCvsTracklets","hZDCvsTracklets",200,0.,4000.,250,0.,250000.);
  fOutput->Add(fhZDCvsTracklets);
  fhZDCvsNclu1 = new TH2F("hZDCvsNclu1", "hZDCvsNclu1", 200, 0.,8000.,200,0.,250000.);
  fOutput->Add(fhZDCvsNclu1);
  fhVZEROvsZEM = new TH2F("hVZEROvsZEM","hVZEROvsZEM",250,0.,2500.,250,0.,25000.);	
  fOutput->Add(fhVZEROvsZEM);
  fhDebunch = new TH2F("hDebunch","hDebunch",240,-100.,-40.,240,-30.,30.);	
  fOutput->Add(fhDebunch);
  fhZNCcentroid = new TH2F("hZNCcentroid","hZNCcentroid",100,-3.5,3.5,100,-3.5,3.5);	
  fOutput->Add(fhZNCcentroid);
  fhZNAcentroid = new TH2F("hZNAcentroid","hZNAcentroid",100,-3.5,3.5,100,-3.5,3.5);	
  fOutput->Add(fhZNAcentroid);
  
  fhAsymm = new TH1F("hAsymm" , "Asimmetry ",200,-1.,1.);   
  fOutput->Add(fhAsymm);
  fhZNAvsAsymm = new TH2F("hZNAvsAsymm","ZNA vs. asymm.",200,-1.,1.,200,0.,80.);
  fOutput->Add(fhZNAvsAsymm);
  fhZNCvsAsymm = new TH2F("hZNCvsAsymm","ZNC vs. asymm.",200,-1.,1.,200,0.,80.);
  fOutput->Add(fhZNCvsAsymm);
  
  fhZNCvscentrality = new TH2F("hZNCvscentrality","ZNC vs. centrality",100,0.,100.,100,0.,100.);
  fOutput->Add(fhZNCvscentrality);
  fhZNAvscentrality = new TH2F("hZNAvscentrality","ZNA vs. centrality",100,0.,100.,100,0.,100.);
  fOutput->Add(fhZNAvscentrality);
  fhZPCvscentrality = new TH2F("hZPCvscentrality","ZPC vs. centrality",100,0.,100.,100,0.,100.);
  fOutput->Add(fhZPCvscentrality);
  fhZPAvscentrality = new TH2F("hZPAvscentrality","ZPA vs. centrality",100,0.,100.,100,0.,100.);
  fOutput->Add(fhZPAvscentrality);
  
  fhZNCpmcvscentr = new TH2F("hZNCpmcvscentr","ZNC PMC vs. centrality",100,0.,100.,100,0.,100.);
  fOutput->Add(fhZNCpmcvscentr);
  fhZNApmcvscentr = new TH2F("hZNApmcvscentr","ZNA PMC vs. centrality",100,0.,100.,100,0.,100.);
  fOutput->Add(fhZNApmcvscentr);
  fhZPCpmcvscentr = new TH2F("hZPCpmcvscentr","ZPC PMC vs. centrality",100,0.,100.,100,0.,100.);
  fOutput->Add(fhZPCpmcvscentr);
  fhZPApmcvscentr = new TH2F("hZPApmcvscentr","ZPA PMC vs. centrality",100,0.,100.,100,0.,100.);
  fOutput->Add(fhZPApmcvscentr);
  
  fhZNCpmcLR = new TH1F("hZNCpmcLR","ZNC PMC lr", 100, 0., 10.);
  fOutput->Add(fhZNCpmcLR);
  fhZNApmcLR = new TH1F("hZNApmcLR","ZNA PMC lr", 100, 0., 10.);
  fOutput->Add(fhZNApmcLR);
  fhZPCpmcLR = new TH1F("hZPCpmcLR","ZPC PMC lr", 100, 0., 10.);
  fOutput->Add(fhZPCpmcLR);
  fhZPApmcLR = new TH1F("hZPApmcLR","ZPA PMC lr", 100, 0., 10.);
  fOutput->Add(fhZPApmcLR);
  
  PostData(1, fOutput);
}

//________________________________________________________________________
void AliAnalysisTaskZDCPbPb::UserExec(Option_t */*option*/)
{
  // Execute analysis for current event:

  if(!InputEvent()){
    printf("ERROR: InputEvent not available");
    return;
  }
  
  if(fAnalysisInput==kESD){
      
      AliESDEvent* esd = dynamic_cast<AliESDEvent*> (InputEvent());
      if(!esd) return;
      
      // Select PHYSICS events (type=7, for data)
      if(!fIsMCInput && esd->GetEventType()!=7) return; 

      // ********* MC INFO *********************************
      /*if(fIsMCInput){
        AliMCEventHandler* eventHandler = dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
        if(!eventHandler){
          printf("ERROR: Could not retrieve MC event handler");
          return;
        }
   
        AliMCEvent* mcEvent = eventHandler->MCEvent();
        if(!mcEvent){
          printf("ERROR: Could not retrieve MC event");
          return;
        }
      }*/
      // ****************************************************
     
     // PHYSICS SELECTION
//     AliAnalysisManager *am = AliAnalysisManager::GetAnalysisManager();
//     AliInputEventHandler *hdr = (AliInputEventHandler*)am->GetInputEventHandler();
//     printf("  PS selection %d\n",hdr->IsEventSelected());
//     if(hdr->IsEventSelected() & AliVEvent::kAnyINT){      
      
      AliCentrality *centrality = esd->GetCentrality();
      Float_t centrperc = centrality->GetCentralityPercentile(fCentrEstimator.Data());
      if(centrperc<fCentrLowLim || centrperc>fCentrUpLim) return;
      
      // ***** Trigger selection
      /*TString triggerClass = esd->GetFiredTriggerClasses();
      sprintf(fTrigClass,"%s",triggerClass.Data());*/
          
      const AliMultiplicity *mult = esd->GetMultiplicity();
      Int_t nTracklets = mult->GetNumberOfTracklets();
      //for(Int_t ilay=0; ilay<6; ilay++) fNClusters[ilay] = mult->GetNumberOfITSClusters(ilay);
      Int_t nClusterslay1 = mult->GetNumberOfITSClusters(1);
      
      AliESDVZERO *vzeroAOD = esd->GetVZEROData();
      Float_t multV0A = vzeroAOD->GetMTotV0A();
      Float_t multV0C = vzeroAOD->GetMTotV0C();

      AliESDZDC *esdZDC = esd->GetESDZDC();
      
      Float_t tdc[32][4], tdcSum=-999, tdcDiff=-999;
      Bool_t tdcMult[6] = {kFALSE};
      for(Int_t itdc=0; itdc<32; itdc++){
	 for(Int_t i=0; i<4; i++){
	   if(esdZDC->GetZDCTDCData(itdc, i)!=0.){ 
	     tdc[itdc][i] = esdZDC->GetZDCTDCCorrected(itdc, i);
	     if(itdc>=8 && itdc<=13){
	       tdcMult[itdc-8] = kTRUE;
	       fhTDC[itdc-8]->Fill(tdc[itdc][i]);
	     }
	     else if(itdc==15 && i==0){
	       for(int ich=8; ich<=13; ich++) fhTDCraw[ich-8]->Fill(esdZDC->GetZDCTDCData(ich, 0)-esdZDC->GetZDCTDCData(itdc, i));
	     }
           }
	 }
      }
      Bool_t zem1 = tdcMult[0];
      Bool_t zem2 = tdcMult[1];
      Bool_t znc  = tdcMult[2];
      Bool_t zpc  = tdcMult[3];
      Bool_t zna  = tdcMult[4];
      Bool_t zpa  = tdcMult[5];
      if(znc && zna){
	tdcSum = esdZDC->GetZNTDCSum(0);
	tdcDiff = esdZDC->GetZNTDCDiff(0);
	fhDebunch->Fill(tdcDiff, tdcSum);	   
      }
      
      Float_t energyZNC  = (Float_t) (esdZDC->GetZNCEnergy());
      Float_t energyZPC  = (Float_t) (esdZDC->GetZPCEnergy());
      Float_t energyZNA  = (Float_t) (esdZDC->GetZNAEnergy());
      Float_t energyZPA  = (Float_t) (esdZDC->GetZPAEnergy());
      Float_t energyZEM1 = (Float_t) (esdZDC->GetZEM1Energy()/8.);
      Float_t energyZEM2 = (Float_t) (esdZDC->GetZEM2Energy()/8.);
      
      const Double_t * towZNC = esdZDC->GetZNCTowerEnergy();
      const Double_t * towZPC = esdZDC->GetZPCTowerEnergy();
      const Double_t * towZNA = esdZDC->GetZNATowerEnergy();
      const Double_t * towZPA = esdZDC->GetZPATowerEnergy();
      //
      const Double_t * towZNClg = esdZDC->GetZNCTowerEnergyLR();
      const Double_t * towZPClg = esdZDC->GetZPCTowerEnergyLR();
      const Double_t * towZNAlg = esdZDC->GetZNATowerEnergyLR();
      const Double_t * towZPAlg = esdZDC->GetZPATowerEnergyLR();
      
      Double_t xyZNC[2]={-99.,-99.}, xyZNA[2]={-99.,-99.};
      esdZDC->GetZNCentroidInPbPb(esd->GetBeamEnergy(), xyZNC, xyZNA);    
      fhZNCcentroid->Fill(xyZNC[0], xyZNC[1]);
      fhZNAcentroid->Fill(xyZNA[0], xyZNA[1]);
      
      /* //Only for MC
      fbZDC = esdZDC->GetImpactParameter();
      fNpartZDC = esdZDC->GetZDCParticipants();
      fbZDCA = esdZDC->GetImpactParamSideA();
      fNpartZDCA = esdZDC->GetZDCPartSideA();
      fbZDCC = esdZDC->GetImpactParamSideC();
      fNpartZDCC = esdZDC->GetZDCPartSideC();*/
      
      if(znc){
        for(int i=0; i<5; i++){
	   fhZNCPM[i]->Fill(towZNC[i]);
	   fhZNCPMlg[i]->Fill(towZNClg[i]);
	   if((i<4) && (towZNC[0]>0.)) fhZNCPMQiPMC[i]->Fill(towZNC[i+1]/towZNC[0]);
	}
	fhPMCvsPMQ[0]->Fill(towZNC[1]+towZNC[2]+towZNC[3]+towZNC[4], towZNC[0]);
	fhZNCpmcLR->Fill(towZNClg[0]/1000.);
      }
      if(zpc){
        for(int i=0; i<5; i++){
	   fhZPCPM[i]->Fill(towZPC[i]);
	   fhZPCPMlg[i]->Fill(towZPClg[i]);
	   if(((i<4) && towZPC[0]>0.)) fhZPCPMQiPMC[i]->Fill(towZPC[i+1]/towZPC[0]);
	}
	fhPMCvsPMQ[1]->Fill(towZPC[1]+towZPC[2]+towZPC[3]+towZPC[4], towZPC[0]);
	fhZPCpmcLR->Fill(towZPClg[0]/1000.);
      }
      if(zna){
        for(int i=0; i<5; i++){
	   fhZNAPM[i]->Fill(towZNA[i]);
	   fhZNAPMlg[i]->Fill(towZNAlg[i]);
	   if(((i<4) && towZNA[0]>0.)) fhZNAPMQiPMC[i]->Fill(towZNA[i+1]/towZNA[0]);
	}
	fhPMCvsPMQ[2]->Fill(towZNA[1]+towZNA[2]+towZNA[3]+towZNA[4], towZNA[0]);
	fhZNApmcLR->Fill(towZNAlg[0]/1000.);
      }
      if(zpa){
        for(int i=0; i<5; i++){
	   fhZPAPM[i]->Fill(towZPA[i]);
	   fhZPAPMlg[i]->Fill(towZPAlg[i]);
	   if(((i<4) && towZPA[0]>0.)) fhZPAPMQiPMC[i]->Fill(towZPA[i+1]/towZPA[0]);
	}
	fhPMCvsPMQ[3]->Fill(towZPA[1]+towZPA[2]+towZPA[3]+towZPA[4], towZPA[0]);
	fhZPApmcLR->Fill(towZPAlg[0]/1000.);
      }
      if(zem1) fhZEM[0]->Fill(energyZEM1);
      if(zem2) fhZEM[1]->Fill(energyZEM2);
      
      if(znc || zna){
        fhZNCvsZNA->Fill(energyZNA, energyZNC);
	fhZPCvsZPA->Fill(energyZPA, energyZPC);
	fhZDCCvsZDCCA->Fill(energyZNA+energyZPA, energyZNC+energyZPC);
        fhZNCvsZPC->Fill(energyZPC, energyZNC);
	fhZNAvsZPA->Fill(energyZPA, energyZNA);
	fhZNvsZP->Fill(energyZPA+energyZPC, energyZNA+energyZNC);
	fhZNvsZEM->Fill(energyZEM1+energyZEM2, energyZNC+energyZNA);	
	fhZNvsZEMwV0M->Fill(energyZEM1+energyZEM2, energyZNC+energyZNA, centrperc);	
	fhZDCvsZEM->Fill(energyZEM1+energyZEM2, energyZNA+energyZPA+energyZNC+energyZPC);	
	fhZDCvsZEMwV0M->Fill(energyZEM1+energyZEM2, energyZNA+energyZPA+energyZNC+energyZPC, centrperc);	
	fhZNvsVZERO->Fill(multV0A+multV0C, energyZNC+energyZNA);	
	fhZDCvsVZERO->Fill(multV0A+multV0C, energyZNA+energyZPA+energyZNC+energyZPC);	
	fhZDCvsTracklets->Fill((Float_t) (nTracklets), energyZNA+energyZPA+energyZNC+energyZPC);
	fhZDCvsNclu1->Fill((Float_t) (nClusterslay1), energyZNA+energyZPA+energyZNC+energyZPC);
	fhVZEROvsZEM->Fill(energyZEM1+energyZEM2, multV0A+multV0C);	
        
	Double_t asymmetry = -999.;
        if((energyZNC+energyZNA)>0.) asymmetry = (energyZNC-energyZNA)/(energyZNC+energyZNA);
	fhAsymm->Fill(asymmetry);
        fhZNAvsAsymm->Fill(asymmetry, energyZNA/1000.);
        fhZNCvsAsymm->Fill(asymmetry, energyZNC/1000.);
	
	fhZNCvscentrality->Fill(centrperc, energyZNC/1000.);
	fhZNAvscentrality->Fill(centrperc, energyZNA/1000.);
	fhZPCvscentrality->Fill(centrperc, energyZPC/1000.);
	fhZPAvscentrality->Fill(centrperc, energyZPA/1000.);
	
	fhZNCpmcvscentr->Fill(centrperc, towZNC[0]/1000.);
	fhZNApmcvscentr->Fill(centrperc, towZNA[0]/1000.);
	fhZPCpmcvscentr->Fill(centrperc, towZPC[0]/1000.);
	fhZPApmcvscentr->Fill(centrperc, towZPA[0]/1000.);
	
      }
//    } // PHYSICS SELECTION
      
  }   
  else if(fAnalysisInput==kAOD){
      
    AliAODEvent *aod =  dynamic_cast<AliAODEvent*> (InputEvent());
    if(!aod){
       printf("AODs not available");
       return;
    }
    
    // Select PHYSICS events (type=7, for data)
    //if(!fIsMCInput && aod->GetEventType()!=7) return; 
    
    // PHYSICS SELECTION
    AliAnalysisManager *am = AliAnalysisManager::GetAnalysisManager();
    AliInputEventHandler *hdr = (AliInputEventHandler*)am->GetInputEventHandler();
    if(hdr->IsEventSelected() & AliVEvent::kAnyINT){	  
           
      AliCentrality* centrality = aod->GetCentrality();
      Float_t centrperc = centrality->GetCentralityPercentile(fCentrEstimator.Data());
      
      /*AliAODHeader *aodheader =  aod->GetHeader();
      AliCentrality *centralityp = aodheader->GetCentralityP();
      Float_t centrperc = centralityp->GetCentralityPercentile(fCentrEstimator.Data());
      */

      if(centrperc<fCentrLowLim || centrperc>fCentrUpLim)  return;
     
      // ***** Trigger selection
      /*TString triggerClass = aod->GetFiredTriggerClasses();
      sprintf(fTrigClass,"%s",triggerClass.Data());
      
      const AliAODVertex *vertex = aod->GetPrimaryVertexSPD();
      fxVertex = vertex->GetX();
      fyVertex = vertex->GetY();
      fzVertex = vertex->GetZ();*/
      
      AliAODTracklets *trackl = aod->GetTracklets();
      Int_t nTracklets = trackl->GetNumberOfTracklets();
          
      AliAODVZERO *vzeroAOD = aod->GetVZEROData();
      Float_t multV0A = vzeroAOD->GetMTotV0A();
      Float_t multV0C = vzeroAOD->GetMTotV0C();
        
      AliAODZDC *aodZDC = aod->GetZDCData();
            
      Float_t energyZNC  = (Float_t) (aodZDC->GetZNCEnergy());
      Float_t energyZPC  = (Float_t) (aodZDC->GetZPCEnergy());
      Float_t energyZNA  = (Float_t) (aodZDC->GetZNAEnergy());
      Float_t energyZPA  = (Float_t) (aodZDC->GetZPAEnergy());
      Float_t energyZEM1 = (Float_t) (aodZDC->GetZEM1Energy());
      Float_t energyZEM2 = (Float_t) (aodZDC->GetZEM2Energy());
      
      const Double_t * towZNC = aodZDC->GetZNCTowerEnergy();
      const Double_t * towZPC = aodZDC->GetZPCTowerEnergy();
      const Double_t * towZNA = aodZDC->GetZNATowerEnergy();
      const Double_t * towZPA = aodZDC->GetZPATowerEnergy();
      //
      const Double_t * towZNClg = aodZDC->GetZNCTowerEnergyLR();
      const Double_t * towZNAlg = aodZDC->GetZNATowerEnergyLR();
      //
      Double_t towZPClg[5], towZPAlg[5]={0.};
      for(Int_t it=0; it<5; it++){
         towZPClg[it] = 8*towZPC[it];
         towZPAlg[it] = 8*towZNA[it];  
      }

      Double_t xyZNC[2]={-99.,-99.}, xyZNA[2]={-99.,-99.};
      aodZDC->GetZNCentroidInPbPb(1380., xyZNC, xyZNA);
      fhZNCcentroid->Fill(xyZNC[0], xyZNC[1]);
      fhZNAcentroid->Fill(xyZNA[0], xyZNA[1]);
    
      Float_t tdcSum = aodZDC->GetZDCTimeSum();
      Float_t tdcDiff = aodZDC->GetZDCTimeDiff();
      fhDebunch->Fill(tdcDiff, tdcSum);
      
      for(int i=0; i<5; i++){
         fhZNCPM[i]->Fill(towZNC[i]);
         fhZNCPMlg[i]->Fill(towZNClg[i]);
	 if((i<4) && (towZNC[0]>0.)) fhZNCPMQiPMC[i]->Fill(towZNC[i+1]/towZNC[0]);
	 fhZNCpmcLR->Fill(towZNClg[0]/1000.);
      }
      fhPMCvsPMQ[0]->Fill(towZNC[1]+towZNC[2]+towZNC[3]+towZNC[4], towZNC[0]);
      for(int i=0; i<5; i++){
         fhZPCPM[i]->Fill(towZPC[i]);
         fhZPCPMlg[i]->Fill(towZPClg[i]);
	 if(((i<4) && towZPC[0]>0.)) fhZPCPMQiPMC[i]->Fill(towZPC[i+1]/towZPC[0]);
	 fhZPCpmcLR->Fill(towZPClg[0]/1000.);
      }
      fhPMCvsPMQ[1]->Fill(towZPC[1]+towZPC[2]+towZPC[3]+towZPC[4], towZPC[0]);
      for(int i=0; i<5; i++){
         fhZNAPM[i]->Fill(towZNA[i]);
         fhZNAPMlg[i]->Fill(towZNAlg[i]);
	 if(((i<4) && towZNA[0]>0.)) fhZNAPMQiPMC[i]->Fill(towZNA[i+1]/towZNA[0]);
	 fhZNApmcLR->Fill(towZNAlg[0]/1000.);
      }
      fhPMCvsPMQ[2]->Fill(towZNA[1]+towZNA[2]+towZNA[3]+towZNA[4], towZNA[0]);
      for(int i=0; i<5; i++){
         fhZPAPM[i]->Fill(towZPA[i]);
         fhZPAPMlg[i]->Fill(towZPAlg[i]);
	 if(((i<4) && towZPA[0]>0.)) fhZPAPMQiPMC[i]->Fill(towZPA[i+1]/towZPA[0]);
	 fhZPApmcLR->Fill(towZPAlg[0]/1000.);
      }
      fhPMCvsPMQ[3]->Fill(towZPA[1]+towZPA[2]+towZPA[3]+towZPA[4], towZPA[0]);
      fhZEM[0]->Fill(energyZEM1);
      fhZEM[1]->Fill(energyZEM2);
      
      fhZNCvsZNA->Fill(energyZNA, energyZNC);
      fhZPCvsZPA->Fill(energyZPA, energyZPC);
      fhZDCCvsZDCCA->Fill(energyZNA+energyZPA, energyZNC+energyZPC);
      fhZNCvsZPC->Fill(energyZPC, energyZNC);
      fhZNAvsZPA->Fill(energyZPA, energyZNA);
      fhZNvsZP->Fill(energyZPA+energyZPC, energyZNA+energyZNC);
      fhZNvsZEM->Fill(energyZEM1+energyZEM2, energyZNC+energyZNA);    
      fhZDCvsZEM->Fill(energyZEM1+energyZEM2, energyZNA+energyZPA+energyZNC+energyZPC);   
      fhZDCvsZEMwV0M->Fill(energyZEM1+energyZEM2, energyZNA+energyZPA+energyZNC+energyZPC, centrperc);	
      fhZNvsVZERO->Fill(multV0A+multV0C, energyZNC+energyZNA);        
      fhZDCvsVZERO->Fill(multV0A+multV0C, energyZNA+energyZPA+energyZNC+energyZPC);   
      fhZDCvsTracklets->Fill((Float_t) (nTracklets), energyZNA+energyZPA+energyZNC+energyZPC);
      fhVZEROvsZEM->Fill(energyZEM1+energyZEM2, multV0A+multV0C);     
      
      Double_t asymmetry = -999.;
      if((energyZNC+energyZNA)>0.) asymmetry = (energyZNC-energyZNA)/(energyZNC+energyZNA);
      fhAsymm->Fill(asymmetry);
      fhZNAvsAsymm->Fill(asymmetry, energyZNA/1000.);
      fhZNCvsAsymm->Fill(asymmetry, energyZNC/1000.);

      fhZNCvscentrality->Fill(centrperc, energyZNC/1000.);
      fhZNAvscentrality->Fill(centrperc, energyZNA/1000.);
      fhZPCvscentrality->Fill(centrperc, energyZPC/1000.);
      fhZPAvscentrality->Fill(centrperc, energyZPA/1000.);
	
      fhZNCpmcvscentr->Fill(centrperc, towZNC[0]/1000.);
      fhZNApmcvscentr->Fill(centrperc, towZNA[0]/1000.);
      fhZPCpmcvscentr->Fill(centrperc, towZPC[0]/1000.);
      fhZPApmcvscentr->Fill(centrperc, towZPA[0]/1000.);

    } // PHYSICS SELECTION
  }
  
  PostData(1, fOutput);
   
}



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