ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *

 * 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.                  *
 **************************************************************************/

// $Id$  

//---------------------------------------------------------------------------// 
//                                                                           //
// Fill histograms (one per cell) with two-cluster invariant mass            //
// using calibration coefficients of the previous iteration.                 //
// Histogram for a given cell is filled if the most energy of one cluster    //
// is deposited in this cell and the other cluster could be anywherein EMCAL.//
//                                                                           //
//                                                                           //
// Author: Boris Polishchuk                                                  //
// Adapted to AOD reading by Gustavo Conesa                                  //
//                                                                           //
//                                                                           //
//---------------------------------------------------------------------------//

// Root 
#include "TLorentzVector.h"
#include "TRefArray.h"
#include "TList.h"
#include "TH1F.h"
#include <TGeoManager.h>

// AliRoot
#include "AliAnalysisTaskEMCALPi0CalibSelection.h"
#include "AliAODEvent.h"
#include "AliESDEvent.h"
#include "AliEMCALGeometry.h"
#include "AliVCluster.h"
#include "AliVCaloCells.h"
#include "AliEMCALRecoUtils.h"
#include "AliOADBContainer.h"

ClassImp(AliAnalysisTaskEMCALPi0CalibSelection)


//______________________________________________________________________________________________
AliAnalysisTaskEMCALPi0CalibSelection::AliAnalysisTaskEMCALPi0CalibSelection(const char* name) :
AliAnalysisTaskSE(name),  
fEMCALGeo(0x0),           fLoadMatrices(0),
fEMCALGeoName("EMCAL_COMPLETE12SMV1"), 
fTriggerName("EMC"),      
fRecoUtils(new AliEMCALRecoUtils), 
fOADBFilePath(""),        fCorrectClusters(kFALSE), 
fCaloClustersArr(0x0),    fEMCALCells(0x0),
fCuts(0x0),               fOutputContainer(0x0),
fVertex(),                fFilteredInput(kFALSE),
fEmin(0.5),               fEmax(15.),      
fL0min(0.01),             fL0max(0.5),              
fDTimeCut(100.),          fTimeMax(1000000),        fTimeMin(-1000000),
fAsyCut(1.),              fMinNCells(2),            fGroupNCells(0),
fLogWeight(4.5),          fSameSM(kFALSE),         
fNMaskCellColumns(11),    fMaskCellColumns(0x0),
fInvMassCutMin(110.),     fInvMassCutMax(160.),
//Histograms
fNbins(300),              
fMinBin(0.),              fMaxBin(300.),   
fNTimeBins(1000),         fMinTimeBin(0.),          fMaxTimeBin(1000.),   
fHmgg(0x0),               fHmggDifferentSM(0x0), 
fHmggMaskFrame(0x0),      fHmggDifferentSMMaskFrame(0x0), 
fHOpeningAngle(0x0),      fHOpeningAngleDifferentSM(0x0),  
fHAsymmetry(0x0),         fHAsymmetryDifferentSM(0x0),  
fhNEvents(0x0),
fhClusterTime(0x0),       fhClusterPairDiffTime(0x0)
{
  //Named constructor which should be used.
  
  for(Int_t iMod=0; iMod < AliEMCALGeoParams::fgkEMCALModules; iMod++) {
    for(Int_t iX=0; iX<24; iX++) {
      for(Int_t iZ=0; iZ<48; iZ++) {
        fHmpi0[iMod][iZ][iX]   = 0 ;
      }
    } 
  }
  
  fVertex[0]=fVertex[1]=fVertex[2]=-1000;
  
  fHTpi0[0]= 0 ;
  fHTpi0[1]= 0 ;
  fHTpi0[2]= 0 ;
  fHTpi0[3]= 0 ;
  
  fMaskCellColumns = new Int_t[fNMaskCellColumns];
  fMaskCellColumns[0] = 6 ;  fMaskCellColumns[1] = 7 ;  fMaskCellColumns[2] = 8 ; 
  fMaskCellColumns[3] = 35;  fMaskCellColumns[4] = 36;  fMaskCellColumns[5] = 37; 
  fMaskCellColumns[6] = 12+AliEMCALGeoParams::fgkEMCALCols; fMaskCellColumns[7] = 13+AliEMCALGeoParams::fgkEMCALCols;
  fMaskCellColumns[8] = 40+AliEMCALGeoParams::fgkEMCALCols; fMaskCellColumns[9] = 41+AliEMCALGeoParams::fgkEMCALCols; 
  fMaskCellColumns[10]= 42+AliEMCALGeoParams::fgkEMCALCols; 
  
  for(Int_t iSMPair = 0; iSMPair < AliEMCALGeoParams::fgkEMCALModules/2; iSMPair++) 
  {
    fHmggPairSameSectorSM[iSMPair]          = 0;
    fHmggPairSameSectorSMMaskFrame[iSMPair] = 0;
    fhClusterPairDiffTimeSameSector[iSMPair]= 0;
  }
  
  for(Int_t iSMPair = 0; iSMPair < AliEMCALGeoParams::fgkEMCALModules-2; iSMPair++)
  { 
    fHmggPairSameSideSM[iSMPair]            = 0;
    fHmggPairSameSideSMMaskFrame[iSMPair]   = 0;
    fhClusterPairDiffTimeSameSide[iSMPair]  = 0;
  }
  
  for(Int_t iSM = 0; iSM < AliEMCALGeoParams::fgkEMCALModules; iSM++) 
  {
    fHmggSM[iSM]                     = 0;
    fHmggSMMaskFrame[iSM]            = 0;
    fHOpeningAngleSM[iSM]            = 0;
    fHOpeningAnglePairSM[iSM]        = 0;
    fHAsymmetrySM[iSM]               = 0;
    fHAsymmetryPairSM[iSM]           = 0;
    fhTowerDecayPhotonHit[iSM]       = 0;
    fhTowerDecayPhotonEnergy[iSM]    = 0;
    fhTowerDecayPhotonAsymmetry[iSM] = 0;
    fhTowerDecayPhotonHitMaskFrame[iSM]= 0;
    fMatrix[iSM]                     = 0x0;
    fhClusterTimeSM[iSM]             = 0;
    fhClusterPairDiffTimeSameSM[iSM] = 0;
  }
  
  DefineOutput(1, TList::Class());
  DefineOutput(2, TList::Class());  // will contain cuts or local params
  
}

//_____________________________________________________________________________
AliAnalysisTaskEMCALPi0CalibSelection::~AliAnalysisTaskEMCALPi0CalibSelection()
{
  //Destructor.
  
  if(fOutputContainer)
  {
    fOutputContainer->Delete() ; 
    delete fOutputContainer ;
  }
  
  if(fEMCALGeo)         delete fEMCALGeo  ;
  if(fRecoUtils)        delete fRecoUtils ;
  if(fNMaskCellColumns) delete [] fMaskCellColumns;
  
}

//____________________________________________________________
void  AliAnalysisTaskEMCALPi0CalibSelection::CorrectClusters()
{
  // loop over EMCAL clusters
  //----------------------------------------------------------
  // First recalibrate and recalculate energy and position
  
  
  if(fCorrectClusters)
  {
    
    if(fRecoUtils->GetParticleType()!=AliEMCALRecoUtils::kPhoton)
    {
      AliFatal(Form("Wrong particle type for cluster position recalculation! = %d\n", fRecoUtils->GetParticleType()));
    }    
    
    if(DebugLevel() > 1) printf("AliAnalysisTaskEMCALPi0CalibSelection Will use fLogWeight %.3f .\n",fLogWeight);
    
    Float_t pos[]={0,0,0};
    
    for(Int_t iClu=0; iClu < fCaloClustersArr->GetEntriesFast(); iClu++) 
    {
      AliVCluster *c1 = (AliVCluster *) fCaloClustersArr->At(iClu);
      
      Float_t e1i = c1->E();   // cluster energy before correction   
      if      (e1i < fEmin) continue;
      else if (e1i > fEmax) continue;
      
      else if (c1->GetNCells() < fMinNCells)                   continue; 
      
      else if (c1->GetM02() < fL0min || c1->GetM02() > fL0max) continue;
      
      if(fRecoUtils->ClusterContainsBadChannel(fEMCALGeo, c1->GetCellsAbsId(), c1->GetNCells())) continue;	
      
      if(DebugLevel() > 2)
      { 
        printf("Std  : i %d, E %f, dispersion %f, m02 %f, m20 %f\n",c1->GetID(),c1->E(),c1->GetDispersion(),c1->GetM02(),c1->GetM20());
        c1->GetPosition(pos);
        printf("Std  : i %d, x %f, y %f, z %f\n",c1->GetID(), pos[0], pos[1], pos[2]);
      }
      
      //Correct cluster energy and position if requested, and not corrected previously, by default Off
      if(fRecoUtils->IsRecalibrationOn())	
      {
        fRecoUtils->RecalibrateClusterEnergy(fEMCALGeo, c1, fEMCALCells);
        fRecoUtils->RecalculateClusterShowerShapeParameters(fEMCALGeo, fEMCALCells,c1);
        fRecoUtils->RecalculateClusterPID(c1);
      }
      
      if(DebugLevel() > 2) 
        printf("Energy: after recalibration %f; \n",c1->E());
      
      // Recalculate cluster position
      fRecoUtils->RecalculateClusterPosition(fEMCALGeo, fEMCALCells,c1);
      
      // Correct Non-Linearity
      c1->SetE(fRecoUtils->CorrectClusterEnergyLinearity(c1));
      
      if(DebugLevel() > 2) 
        printf("\t after linearity correction %f\n",c1->E());
      
      //In case of MC analysis, to match resolution/calibration in real data
      c1->SetE(fRecoUtils->SmearClusterEnergy(c1));
      
      if(DebugLevel() > 2) 
        printf("\t after smearing %f\n",c1->E());      
      
      if(DebugLevel() > 2)
      { 
        printf("Cor  : i %d, E %f, dispersion %f, m02 %f, m20 %f\n",c1->GetID(),c1->E(),c1->GetDispersion(),c1->GetM02(),c1->GetM20());
        c1->GetPosition(pos);
        printf("Cor  : i %d, x %f, y %f, z %f\n",c1->GetID(), pos[0], pos[1], pos[2]);
      }    
    }    
  }  
}

//__________________________________________________________
void AliAnalysisTaskEMCALPi0CalibSelection::FillHistograms()
{
  // Now fill the invariant mass analysis with the corrected clusters, and other general histograms
      
  Int_t absId1   = -1;
  Int_t iSupMod1 = -1;
  Int_t iphi1    = -1;
  Int_t ieta1    = -1;
  Int_t absId2   = -1;
  Int_t iSupMod2 = -1;
  Int_t iphi2    = -1;
  Int_t ieta2    = -1;
  Bool_t shared  = kFALSE;
  
  TLorentzVector p1;
  TLorentzVector p2;
  TLorentzVector p12;
  
  Float_t pos[]={0,0,0};
  
  Int_t bc  = InputEvent()->GetBunchCrossNumber();
  Int_t nSM = (fEMCALGeo->GetEMCGeometry())->GetNumberOfSuperModules();

  for(Int_t iClu=0; iClu<fCaloClustersArr->GetEntriesFast()-1; iClu++) 
  {
    AliVCluster *c1 = (AliVCluster *) fCaloClustersArr->At(iClu);
    
    if(fRecoUtils->ClusterContainsBadChannel(fEMCALGeo, c1->GetCellsAbsId(), c1->GetNCells())) continue;	
    
    Float_t e1i = c1->E();   // cluster energy before correction   
    
    if      (e1i < fEmin) continue;
    else if (e1i > fEmax) continue;
    
    else if (!fRecoUtils->IsGoodCluster(c1,fEMCALGeo,fEMCALCells,bc)) continue;
    
    else if (c1->GetNCells() < fMinNCells)                        continue; 
    
    else if (c1->GetM02() < fL0min || c1->GetM02() > fL0max)      continue;
    
    if(DebugLevel() > 2)
    { 
      printf("IMA  : i %d, E %f, dispersion %f, m02 %f, m20 %f\n",c1->GetID(),e1i,c1->GetDispersion(),c1->GetM02(),c1->GetM20());
      c1->GetPosition(pos);
      printf("IMA  : i %d, x %f, y %f, z %f\n",c1->GetID(), pos[0], pos[1], pos[2]);
    }
    
    fRecoUtils->GetMaxEnergyCell(fEMCALGeo, fEMCALCells,c1,absId1,iSupMod1,ieta1,iphi1,shared);
    c1->GetMomentum(p1,fVertex);
    
    //Check if cluster is in fidutial region, not too close to borders
    Bool_t in1 = fRecoUtils->CheckCellFiducialRegion(fEMCALGeo, c1, fEMCALCells);
    
    // Clusters not facing frame structures
    Bool_t mask1 = MaskFrameCluster(iSupMod1, ieta1);
    //if(mask1) printf("Reject eta %d SM %d\n",ieta1, iSupMod1);
    
    Double_t time1 = c1->GetTOF()*1.e9;
    
    if(time1 > fTimeMax || time1 < fTimeMin) continue;
    
    fhClusterTime            ->Fill(c1->E(),time1);
    fhClusterTimeSM[iSupMod1]->Fill(c1->E(),time1);
    
    // Combine cluster with other clusters and get the invariant mass
    for (Int_t jClu=iClu+1; jClu < fCaloClustersArr->GetEntriesFast(); jClu++) 
    {
      AliAODCaloCluster *c2 = (AliAODCaloCluster *) fCaloClustersArr->At(jClu);
      
      Float_t e2i = c2->E();
      if      (e2i < fEmin) continue;
      else if (e2i > fEmax) continue;
      
      else if (!fRecoUtils->IsGoodCluster(c2,fEMCALGeo,fEMCALCells,bc))continue;
      
      else if (c2->GetNCells() < fMinNCells)                       continue; 
      
      else if (c2->GetM02() < fL0min || c2->GetM02() > fL0max)     continue;
      
      
      fRecoUtils->GetMaxEnergyCell(fEMCALGeo, fEMCALCells,c2,absId2,iSupMod2,ieta2,iphi2,shared);
      c2->GetMomentum(p2,fVertex);
      
      p12 = p1+p2;
      Float_t invmass = p12.M()*1000; 
      
      //Asimetry cut      
      Float_t asym = TMath::Abs(p1.E()-p2.E())/(p1.E()+p2.E());
      
      if(asym > fAsyCut) continue;
      
      //Time cut
      Double_t time2 = c2->GetTOF()*1.e9;
      
      if(time2 > fTimeMax || time2 < fTimeMin) continue;
      
      fhClusterPairDiffTime->Fill(p12.E(),time1-time2);
      if(TMath::Abs(time1-time2) > fDTimeCut) continue;
      
      if(invmass < fMaxBin && invmass > fMinBin )
      {
        //Check if cluster is in fidutial region, not too close to borders
        Bool_t in2 = fRecoUtils->CheckCellFiducialRegion(fEMCALGeo, c2, fEMCALCells);
        
        // Clusters not facing frame structures
        Bool_t mask2 = MaskFrameCluster(iSupMod2, ieta2);         
        //if(mask2) printf("Reject eta %d SM %d\n",ieta2, iSupMod2);
        
        if(in1 && in2)
        {
          fHmgg->Fill(invmass,p12.Pt()); 
          
          if(iSupMod1==iSupMod2) 
          {
            fHmggSM[iSupMod1]->Fill(invmass,p12.Pt()); 
            fhClusterPairDiffTimeSameSM[iSupMod1]->Fill(p12.E(),time1-time2);
          }
          else                   
            fHmggDifferentSM ->Fill(invmass,p12.Pt());
          
          // Same sector
          Int_t j=0;
          for(Int_t i = 0; i < nSM/2; i++)
          {
            j=2*i;
            if((iSupMod1==j && iSupMod2==j+1) || (iSupMod1==j+1 && iSupMod2==j)) 
            {
              fHmggPairSameSectorSM[i]->Fill(invmass,p12.Pt());
              fhClusterPairDiffTimeSameSector[i]->Fill(p12.E(),time1-time2);
            } 
          }
          
          // Same side
          for(Int_t i = 0; i < nSM-2; i++)
          {
            if((iSupMod1==i && iSupMod2==i+2) || (iSupMod1==i+2 && iSupMod2==i)) 
            {
              fHmggPairSameSideSM[i]->Fill(invmass,p12.Pt()); 
              fhClusterPairDiffTimeSameSide[i]->Fill(p12.E(),time1-time2);
            }
          }
          
          
          if(!mask1 && !mask2)
          {
            fHmggMaskFrame->Fill(invmass,p12.Pt()); 
            
            if(iSupMod1==iSupMod2) fHmggSMMaskFrame[iSupMod1]->Fill(invmass,p12.Pt()); 
            else                   fHmggDifferentSMMaskFrame ->Fill(invmass,p12.Pt());
            
            // Same sector
            j=0;
            for(Int_t i = 0; i < nSM/2; i++)
            {
              j=2*i;
              if((iSupMod1==j && iSupMod2==j+1) || (iSupMod1==j+1 && iSupMod2==j)) fHmggPairSameSectorSMMaskFrame[i]->Fill(invmass,p12.Pt()); 
            }
            
            // Same side
            for(Int_t i = 0; i < nSM-2; i++)
            {
              if((iSupMod1==i && iSupMod2==i+2) || (iSupMod1==i+2 && iSupMod2==i)) fHmggPairSameSideSMMaskFrame[i]->Fill(invmass,p12.Pt()); 
            }
            
          }// Pair not facing frame
          
          
          if(invmass > fInvMassCutMin && invmass < fInvMassCutMax) //restrict to clusters really close to pi0 peak
          {
            
            // Check time of cells in both clusters, and fill time histogram
            for(Int_t icell = 0; icell < c1->GetNCells(); icell++)
            {
              Int_t absID = c1->GetCellAbsId(icell);   
              fHTpi0[bc%4]->Fill(absID, fEMCALCells->GetCellTime(absID)*1.e9);  
            }
            
            for(Int_t icell = 0; icell < c2->GetNCells(); icell++)
            {
              Int_t absID = c2->GetCellAbsId(icell);   
              fHTpi0[bc%4]->Fill(absID, fEMCALCells->GetCellTime(absID)*1.e9);  
            }
            
            //Opening angle of 2 photons
            Float_t opangle = p1.Angle(p2.Vect())*TMath::RadToDeg();
            //printf("*******>>>>>>>> In PEAK pt %f, angle %f \n",p12.Pt(),opangle);
            
            
            fHOpeningAngle ->Fill(opangle,p12.Pt()); 
            fHAsymmetry    ->Fill(asym,p12.Pt()); 
            
            if(iSupMod1==iSupMod2) 
            {
              fHOpeningAngleSM[iSupMod1] ->Fill(opangle,p12.Pt());
              fHAsymmetrySM[iSupMod1]    ->Fill(asym,p12.Pt());
            }
            else
            {      
              fHOpeningAngleDifferentSM  ->Fill(opangle,p12.Pt());
              fHAsymmetryDifferentSM     ->Fill(asym,p12.Pt());
            }
            
            if((iSupMod1==0 && iSupMod2==2) || (iSupMod1==2 && iSupMod2==0)) 
            {
              fHOpeningAnglePairSM[0] ->Fill(opangle,p12.Pt()); 
              fHAsymmetryPairSM[0]    ->Fill(asym,p12.Pt());
              
            } 
            if((iSupMod1==1 && iSupMod2==3) || (iSupMod1==3 && iSupMod2==1)) 
            {
              fHOpeningAnglePairSM[1] ->Fill(opangle,p12.Pt()); 
              fHAsymmetryPairSM[1]    ->Fill(asym,p12.Pt());
            }
            
            if((iSupMod1==0 && iSupMod2==1) || (iSupMod1==1 && iSupMod2==0)) 
            {
              fHOpeningAnglePairSM[2] ->Fill(opangle,p12.Pt()); 
              fHAsymmetryPairSM[2]    ->Fill(asym,p12.Pt());
            }
            if((iSupMod1==2 && iSupMod2==3) || (iSupMod1==3 && iSupMod2==2)) 
            {
              fHOpeningAnglePairSM[3] ->Fill(opangle,p12.Pt()); 
              fHAsymmetryPairSM[3]    ->Fill(asym,p12.Pt());
            }
            
          }// pair in 100 < mass < 160
          
        }//in acceptance cuts
        
        //In case of filling only channels with second cluster in same SM
        if(fSameSM && iSupMod1!=iSupMod2) continue;
        
        if (fGroupNCells == 0)
        {
          fHmpi0[iSupMod1][ieta1][iphi1]->Fill(invmass);
          fHmpi0[iSupMod2][ieta2][iphi2]->Fill(invmass);
          
          if(invmass > fInvMassCutMin && invmass < fInvMassCutMax)//restrict to clusters really close to pi0 peak
          {
            fhTowerDecayPhotonHit      [iSupMod1]->Fill(ieta1,iphi1);
            fhTowerDecayPhotonEnergy   [iSupMod1]->Fill(ieta1,iphi1,p1.E());
            fhTowerDecayPhotonAsymmetry[iSupMod1]->Fill(ieta1,iphi1,asym);
            
            fhTowerDecayPhotonHit      [iSupMod2]->Fill(ieta2,iphi2);
            fhTowerDecayPhotonEnergy   [iSupMod2]->Fill(ieta2,iphi2,p2.E());
            fhTowerDecayPhotonAsymmetry[iSupMod2]->Fill(ieta2,iphi2,asym);
            
            if(!mask1)fhTowerDecayPhotonHitMaskFrame[iSupMod1]->Fill(ieta1,iphi1);
            if(!mask2)fhTowerDecayPhotonHitMaskFrame[iSupMod2]->Fill(ieta2,iphi2);
            
          }// pair in mass of pi0
        }	
        else  {
          //printf("Regroup N %d, eta1 %d, phi1 %d, eta2 %d, phi2 %d \n",fGroupNCells, ieta1, iphi1, ieta2, iphi2);
          for (Int_t i = -fGroupNCells; i < fGroupNCells+1; i++) 
          {
            for (Int_t j = -fGroupNCells; j < fGroupNCells+1; j++) 
            {              
              Int_t absId11 = fEMCALGeo->GetAbsCellIdFromCellIndexes(iSupMod1, iphi1+j, ieta1+i); 
              Int_t absId22 = fEMCALGeo->GetAbsCellIdFromCellIndexes(iSupMod2, iphi2+j, ieta2+i); 
              Bool_t ok1 = kFALSE;
              Bool_t ok2 = kFALSE;
              for(Int_t icell = 0; icell < c1->GetNCells(); icell++){
                if(c1->GetCellsAbsId()[icell] == absId11) ok1=kTRUE;
              }
              for(Int_t icell = 0; icell < c2->GetNCells(); icell++){
                if(c2->GetCellsAbsId()[icell] == absId22) ok2=kTRUE;
              }
              
              if(ok1 && (ieta1+i >= 0) && (iphi1+j >= 0) && (ieta1+i < 48) && (iphi1+j < 24))
              {
                fHmpi0[iSupMod1][ieta1+i][iphi1+j]->Fill(invmass);
              }
              if(ok2 && (ieta2+i >= 0) && (iphi2+j >= 0) && (ieta2+i < 48) && (iphi2+j < 24))
              {
                fHmpi0[iSupMod2][ieta2+i][iphi2+j]->Fill(invmass);
              }
            }// j loop
          }//i loop
        }//group cells
        
        if(DebugLevel() > 1) printf("AliAnalysisTaskEMCALPi0CalibSelection Mass in (SM%d,%d,%d) and  (SM%d,%d,%d): %.3f GeV  E1_i=%f E1_ii=%f  E2_i=%f E2_ii=%f\n",
                                    iSupMod1,iphi1,ieta1,iSupMod2,iphi2,ieta2,p12.M(),e1i,c1->E(),e2i,c2->E());
      }
      
    }
    
  } // end of loop over EMCAL clusters
}

//________________________________________________________________
void AliAnalysisTaskEMCALPi0CalibSelection::InitGeometryMatrices()
{
  // Init geometry and set the geometry matrix, for the first event, skip the rest
  // Also set once the run dependent calibrations
  
    
  Int_t runnumber = InputEvent()->GetRunNumber() ;
  
  if(fLoadMatrices)
  {
    printf("AliAnalysisTaskEMCALPi0CalibSelection::InitGeometryMatrices() - Load user defined EMCAL geometry matrices\n");
    
    // OADB if available
    AliOADBContainer emcGeoMat("AliEMCALgeo");
    
    if(fOADBFilePath=="") fOADBFilePath = "$ALICE_ROOT/OADB/EMCAL" ;
    
    emcGeoMat.InitFromFile(Form("%s/EMCALlocal2master.root",fOADBFilePath.Data()),"AliEMCALgeo");
    
    TObjArray *matEMCAL=(TObjArray*)emcGeoMat.GetObject(runnumber,"EmcalMatrices");
    
    for(Int_t mod=0; mod < (fEMCALGeo->GetEMCGeometry())->GetNumberOfSuperModules(); mod++)
    {
      
      if (!fMatrix[mod]) // Get it from OADB
      {
        if(fDebug > 1 ) 
          printf("AliAnalysisTaskEMCALPi0CalibSelection::InitGeometryMatrices() - EMCAL matrices SM %d, %p\n",
                 mod,((TGeoHMatrix*) matEMCAL->At(mod)));
        //((TGeoHMatrix*) matEMCAL->At(mod))->Print();
        
        fMatrix[mod] = (TGeoHMatrix*) matEMCAL->At(mod) ;
      }        
      
      if(fMatrix[mod])
      {
        if(DebugLevel() > 1) 
          fMatrix[mod]->Print();
        
        fEMCALGeo->SetMisalMatrix(fMatrix[mod],mod) ;  
      }
            
    }//SM loop
  }//Load matrices
  else if(!gGeoManager)
  {
    printf("AliAnalysisTaskEMCALPi0CalibSelection::InitGeometryMatrices() - Get geo matrices from data");
    //Still not implemented in AOD, just a workaround to be able to work at least with ESDs	
    if(!strcmp(InputEvent()->GetName(),"AliAODEvent")) 
    {
      if(DebugLevel() > 1) 
        Warning("UserExec","Use ideal geometry, values geometry matrix not kept in AODs.");
    }//AOD
    else 
    {	
      if(DebugLevel() > 1) 
        printf("AliAnalysisTaskEMCALPi0CalibSelection::InitGeometryMatrices() - AliAnalysisTaskEMCALClusterize Load Misaligned matrices.");
      
      for(Int_t mod=0; mod < (fEMCALGeo->GetEMCGeometry())->GetNumberOfSuperModules(); mod++)
      {
        if(DebugLevel() > 1) 
          InputEvent()->GetEMCALMatrix(mod)->Print();
        
        if(InputEvent()->GetEMCALMatrix(mod)) fEMCALGeo->SetMisalMatrix(InputEvent()->GetEMCALMatrix(mod),mod) ;
        
      } 
            
    }//ESD
  }//Load matrices from Data 
  
}

//______________________________________________________________________
void AliAnalysisTaskEMCALPi0CalibSelection::InitTemperatureCorrections()
{
  // Apply run dependent calibration correction
  
  if(!fRecoUtils->IsRunDepRecalibrationOn()) return;
  
  AliOADBContainer *contRFTD=new AliOADBContainer("");
  
  contRFTD->InitFromFile(Form("%s/EMCALTemperatureCorrCalib.root",fOADBFilePath.Data()),"AliEMCALRunDepTempCalibCorrections");
  
  Int_t runnumber = InputEvent()->GetRunNumber() ;

  TH1S *htd=(TH1S*)contRFTD->GetObject(runnumber); 
  
  //If it did not exist for this run, get closes one
  if (!htd)
  {
    AliWarning(Form("No TemperatureCorrCalib Objects for run: %d",runnumber));
    // let's get the closest runnumber instead then..
    Int_t lower = 0;
    Int_t ic = 0;
    Int_t maxEntry = contRFTD->GetNumberOfEntries();
    
    while ( (ic < maxEntry) && (contRFTD->UpperLimit(ic) < runnumber) ) {
      lower = ic;
      ic++;
    }
    
    Int_t closest = lower;
    if ( (ic<maxEntry) &&
        (contRFTD->LowerLimit(ic)-runnumber) < (runnumber - contRFTD->UpperLimit(lower)) ) {
      closest = ic;
    }
    
    AliWarning(Form("TemperatureCorrCalib Objects found closest id %d from run: %d", closest, contRFTD->LowerLimit(closest)));
    htd = (TH1S*) contRFTD->GetObjectByIndex(closest);
  } 

  // Fill parameters
  if(htd)
  {
    printf("AliAnalysisTaskEMCALPi0CalibSelection::SetOADBParameters() - Recalibrate (Temperature) EMCAL \n");

    Int_t nSM = fEMCALGeo->GetNumberOfSuperModules();

    for (Int_t ism = 0; ism < nSM; ++ism) 
    {        
      for (Int_t icol = 0; icol < 48; ++icol) 
      {        
        for (Int_t irow = 0; irow < 24; ++irow) 
        {
          Float_t factor = fRecoUtils->GetEMCALChannelRecalibrationFactor(ism,icol,irow);

          Int_t absID = fEMCALGeo->GetAbsCellIdFromCellIndexes(ism, irow, icol); // original calibration factor
          
          if(DebugLevel() > 3) 
            printf(" ism %d, icol %d, irow %d,absID %d - Calib factor %1.5f - ",ism, icol, irow, absID, factor);

          factor *= htd->GetBinContent(absID) / 10000. ; // correction dependent on T
          
          fRecoUtils->SetEMCALChannelRecalibrationFactor(ism,icol,irow,factor);
          
          if(DebugLevel() > 3) 
            printf(" T  factor %1.5f - final factor %1.5f \n",htd->GetBinContent(absID) / 10000., 
                   fRecoUtils->GetEMCALChannelRecalibrationFactor(ism,icol,irow));
          
        } // columns
      } // rows 
    } // SM loop
  }else printf("AliAnalysisTaskEMCALPi0CalibSelection::SetOADBParameters() - Do NOT recalibrate EMCAL with T variations, no params TH1 \n"); 
  
}

//___________________________________________________________________
void AliAnalysisTaskEMCALPi0CalibSelection::UserCreateOutputObjects()
{
  //Create output container, init geometry 
  
  fEMCALGeo =  AliEMCALGeometry::GetInstance(fEMCALGeoName) ;	
  Int_t nSM = (fEMCALGeo->GetEMCGeometry())->GetNumberOfSuperModules();
  
  fOutputContainer = new TList();
  const Int_t buffersize = 255;
  char hname[buffersize], htitl[buffersize];
  
  fhNEvents        = new TH1I("hNEvents", "Number of analyzed events"   , 1 , 0 , 1  ) ;
  fOutputContainer->Add(fhNEvents);
  
  fHmgg = new TH2F("hmgg","2-cluster invariant mass",fNbins,fMinBin,fMaxBin,100,0,10);
  fHmgg->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
  fHmgg->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
  fOutputContainer->Add(fHmgg);
  
  fHmggDifferentSM = new TH2F("hmggDifferentSM","2-cluster invariant mass, different SM",fNbins,fMinBin,fMaxBin,100,0,10);
  fHmggDifferentSM->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
  fHmggDifferentSM->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
  fOutputContainer->Add(fHmggDifferentSM);
  
  fHOpeningAngle = new TH2F("hopang","2-cluster opening angle",100,0.,50.,100,0,10);
  fHOpeningAngle->SetXTitle("#alpha_{#gamma #gamma}");
  fHOpeningAngle->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
  fOutputContainer->Add(fHOpeningAngle);
  
  fHOpeningAngleDifferentSM = new TH2F("hopangDifferentSM","2-cluster opening angle, different SM",100,0,50.,100,0,10);
  fHOpeningAngleDifferentSM->SetXTitle("#alpha_{#gamma #gamma}");
  fHOpeningAngleDifferentSM->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
  fOutputContainer->Add(fHOpeningAngleDifferentSM);
   
  fHAsymmetry = new TH2F("hasym","2-cluster opening angle",100,0.,1.,100,0,10);
  fHAsymmetry->SetXTitle("a");
  fHAsymmetry->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
  fOutputContainer->Add(fHAsymmetry);
  
  fHAsymmetryDifferentSM = new TH2F("hasymDifferentSM","2-cluster opening angle, different SM",100,0,1.,100,0,10);
  fHAsymmetryDifferentSM->SetXTitle("a");
  fHAsymmetryDifferentSM->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
  fOutputContainer->Add(fHAsymmetryDifferentSM);
  
  
  //TString pairname[] = {"A side (0-2)", "C side (1-3)","Row 0 (0-1)", "Row 1 (2-3)"};
  
  fHmggMaskFrame = new TH2F("hmggMaskFrame","2-cluster invariant mass, frame masked",fNbins,fMinBin,fMaxBin,100,0,10);
  fHmggMaskFrame->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
  fHmggMaskFrame->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
  fOutputContainer->Add(fHmggMaskFrame);
  
  fHmggDifferentSMMaskFrame = new TH2F("hmggDifferentSMMaskFrame","2-cluster invariant mass, different SM, frame masked",
                                       fNbins,fMinBin,fMaxBin,100,0,10);
  fHmggDifferentSMMaskFrame->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
  fHmggDifferentSMMaskFrame->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
  fOutputContainer->Add(fHmggDifferentSMMaskFrame);
  
  
  for(Int_t iSM = 0; iSM < nSM; iSM++) 
  {
    snprintf(hname, buffersize, "hmgg_SM%d",iSM);
    snprintf(htitl, buffersize, "Two-gamma inv. mass for super mod %d",iSM);
    fHmggSM[iSM] = new TH2F(hname,htitl,fNbins,fMinBin,fMaxBin,100,0,10);
    fHmggSM[iSM]->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
    fHmggSM[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
    fOutputContainer->Add(fHmggSM[iSM]);
    
    snprintf(hname, buffersize, "hmgg_SM%d_MaskFrame",iSM);
    snprintf(htitl, buffersize, "Two-gamma inv. mass for super mod %d",iSM);
    fHmggSMMaskFrame[iSM] = new TH2F(hname,htitl,fNbins,fMinBin,fMaxBin,100,0,10);
    fHmggSMMaskFrame[iSM]->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
    fHmggSMMaskFrame[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
    fOutputContainer->Add(fHmggSMMaskFrame[iSM]);
    
    
    if(iSM < nSM/2)
    {
      snprintf(hname,buffersize, "hmgg_PairSameSectorSM%d",iSM);
      snprintf(htitl,buffersize, "Two-gamma inv. mass for SM pair Sector: %d",iSM);
      fHmggPairSameSectorSM[iSM] = new TH2F(hname,htitl,fNbins,fMinBin,fMaxBin,100,0,10);
      fHmggPairSameSectorSM[iSM]->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
      fHmggPairSameSectorSM[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
      fOutputContainer->Add(fHmggPairSameSectorSM[iSM]);
      
      snprintf(hname,buffersize, "hmgg_PairSameSectorSM%d_MaskFrame",iSM);
      snprintf(htitl,buffersize, "Two-gamma inv. mass for SM pair Sector: %d",iSM);
      fHmggPairSameSectorSMMaskFrame[iSM] = new TH2F(hname,htitl,fNbins,fMinBin,fMaxBin,100,0,10);
      fHmggPairSameSectorSMMaskFrame[iSM]->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
      fHmggPairSameSectorSMMaskFrame[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
      fOutputContainer->Add(fHmggPairSameSectorSMMaskFrame[iSM]);
      
      fhClusterPairDiffTimeSameSector[iSM] = new TH2F(Form("hClusterPairDiffTimeSameSector%d",iSM),
                                                      Form("cluster pair time difference vs E, Sector %d",iSM),
                                                      100,0,10, 200,-100,100);
      fhClusterPairDiffTimeSameSector[iSM]->SetXTitle("E_{pair} (GeV)");
      fhClusterPairDiffTimeSameSector[iSM]->SetYTitle("#Delta t (ns)");
      fOutputContainer->Add(fhClusterPairDiffTimeSameSector[iSM]);
      
      
    }
    
    if(iSM < nSM-2)
    {
      snprintf(hname,buffersize, "hmgg_PairSameSideSM%d",iSM);
      snprintf(htitl,buffersize, "Two-gamma inv. mass for SM pair Sector: %d",iSM);
      fHmggPairSameSideSM[iSM] = new TH2F(hname,htitl,fNbins,fMinBin,fMaxBin,100,0,10);
      fHmggPairSameSideSM[iSM]->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
      fHmggPairSameSideSM[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
      fOutputContainer->Add(fHmggPairSameSideSM[iSM]);
      
      snprintf(hname,buffersize, "hmgg_PairSameSideSM%d_MaskFrame",iSM);
      snprintf(htitl,buffersize, "Two-gamma inv. mass for SM pair Sector: %d",iSM);
      fHmggPairSameSideSMMaskFrame[iSM] = new TH2F(hname,htitl,fNbins,fMinBin,fMaxBin,100,0,10);
      fHmggPairSameSideSMMaskFrame[iSM]->SetXTitle("m_{#gamma #gamma} (MeV/c^{2})");
      fHmggPairSameSideSMMaskFrame[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
      fOutputContainer->Add(fHmggPairSameSideSMMaskFrame[iSM]);   
      
      fhClusterPairDiffTimeSameSide[iSM] = new TH2F(Form("hClusterPairDiffTimeSameSide%d",iSM),
                                                    Form("cluster pair time difference vs E,  Side %d",iSM),
                                                    100,0,10, 200,-100,100);
      fhClusterPairDiffTimeSameSide[iSM]->SetXTitle("E_{pair} (GeV)");
      fhClusterPairDiffTimeSameSide[iSM]->SetYTitle("#Delta t (ns)");
      fOutputContainer->Add(fhClusterPairDiffTimeSameSide[iSM]);
      
    }
    
    snprintf(hname, buffersize, "hopang_SM%d",iSM);
    snprintf(htitl, buffersize, "Opening angle for super mod %d",iSM);
    fHOpeningAngleSM[iSM] = new TH2F(hname,htitl,100,0.,50.,100,0,10);
    fHOpeningAngleSM[iSM]->SetXTitle("#alpha_{#gamma #gamma} (deg)");
    fHOpeningAngleSM[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
    fOutputContainer->Add(fHOpeningAngleSM[iSM]);
    
    snprintf(hname,buffersize, "hopang_PairSM%d",iSM);
    snprintf(htitl,buffersize, "Opening angle for SM pair: %d",iSM);
    fHOpeningAnglePairSM[iSM] = new TH2F(hname,htitl,100,0.,50.,100,0,10);
    fHOpeningAnglePairSM[iSM]->SetXTitle("#alpha_{#gamma #gamma} (deg)");
    fHOpeningAnglePairSM[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
    fOutputContainer->Add(fHOpeningAnglePairSM[iSM]);    
    
    snprintf(hname, buffersize, "hasym_SM%d",iSM);
    snprintf(htitl, buffersize, "Asymmetry for super mod %d",iSM);
    fHAsymmetrySM[iSM] = new TH2F(hname,htitl,100,0.,1.,100,0,10);
    fHAsymmetrySM[iSM]->SetXTitle("a");
    fHAsymmetrySM[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
    fOutputContainer->Add(fHAsymmetrySM[iSM]);
    
    snprintf(hname,buffersize, "hasym_PairSM%d",iSM);
    snprintf(htitl,buffersize, "Asymmetry for SM pair: %d",iSM);
    fHAsymmetryPairSM[iSM] = new TH2F(hname,htitl,100,0.,1.,100,0,10);
    fHAsymmetryPairSM[iSM]->SetXTitle("a");
    fHAsymmetryPairSM[iSM]->SetYTitle("p_{T #gamma #gamma} (GeV/c)");
    fOutputContainer->Add(fHAsymmetryPairSM[iSM]);    
    
    Int_t colmax = 48;
    Int_t rowmax = 24;
    
    fhTowerDecayPhotonHit[iSM]  = new TH2F (Form("hTowerDecPhotonHit_Mod%d",iSM),
                                            Form("Entries in grid of cells in Module %d",iSM), 
                                            colmax+2,-1.5,colmax+0.5, rowmax+2,-1.5,rowmax+0.5); 
    fhTowerDecayPhotonHit[iSM]->SetYTitle("row (phi direction)");
    fhTowerDecayPhotonHit[iSM]->SetXTitle("column (eta direction)");
    fOutputContainer->Add(fhTowerDecayPhotonHit[iSM]);
    
    fhTowerDecayPhotonEnergy[iSM]  = new TH2F (Form("hTowerDecPhotonEnergy_Mod%d",iSM),
                                               Form("Accumulated energy in grid of cells in Module %d",iSM), 
                                               colmax+2,-1.5,colmax+0.5, rowmax+2,-1.5,rowmax+0.5); 
    fhTowerDecayPhotonEnergy[iSM]->SetYTitle("row (phi direction)");
    fhTowerDecayPhotonEnergy[iSM]->SetXTitle("column (eta direction)");
    fOutputContainer->Add(fhTowerDecayPhotonEnergy[iSM]);
    
    fhTowerDecayPhotonAsymmetry[iSM]  = new TH2F (Form("hTowerDecPhotonAsymmetry_Mod%d",iSM),
                                                  Form("Accumulated asymmetry in grid of cells in Module %d",iSM), 
                                                  colmax+2,-1.5,colmax+0.5, rowmax+2,-1.5,rowmax+0.5); 
    fhTowerDecayPhotonAsymmetry[iSM]->SetYTitle("row (phi direction)");
    fhTowerDecayPhotonAsymmetry[iSM]->SetXTitle("column (eta direction)");
    fOutputContainer->Add(fhTowerDecayPhotonAsymmetry[iSM]);
    
    fhTowerDecayPhotonHitMaskFrame[iSM]  = new TH2F (Form("hTowerDecPhotonHit_Mod%d_MaskFrame",iSM),Form("Entries in grid of cells in Module %d",iSM), 
                                                     colmax+2,-1.5,colmax+0.5, rowmax+2,-1.5,rowmax+0.5); 
    fhTowerDecayPhotonHitMaskFrame[iSM]->SetYTitle("row (phi direction)");
    fhTowerDecayPhotonHitMaskFrame[iSM]->SetXTitle("column (eta direction)");
    fOutputContainer->Add(fhTowerDecayPhotonHitMaskFrame[iSM]);
    
    fhClusterTimeSM[iSM] = new TH2F(Form("hClusterTime_SM%d",iSM),"cluster time vs E",100,0,10, 100,0,1000);
    fhClusterTimeSM[iSM]->SetXTitle("E (GeV)");
    fhClusterTimeSM[iSM]->SetYTitle("t (ns)");
    fOutputContainer->Add(fhClusterTimeSM[iSM]);
    
    fhClusterPairDiffTimeSameSM[iSM] = new TH2F(Form("hClusterPairDiffTimeSameSM%d",iSM),
                                                Form("cluster pair time difference vs E, SM %d",iSM),
                                                100,0,10, 200,-100,100);
    fhClusterPairDiffTimeSameSM[iSM]->SetXTitle("E (GeV)");
    fhClusterPairDiffTimeSameSM[iSM]->SetYTitle("#Delta t (ns)");
    fOutputContainer->Add(fhClusterPairDiffTimeSameSM[iSM]);
    
  }  
  
  Int_t nchannels = nSM*AliEMCALGeoParams::fgkEMCALRows*AliEMCALGeoParams::fgkEMCALCols;
  for(Int_t ibc = 0; ibc < 4; ibc++)
  {
    fHTpi0[ibc] = new TH2F(Form("hTime_BC%d",ibc),Form("Time of cell clusters under pi0 peak, bunch crossing %d",ibc),
                           nchannels,0,nchannels, fNTimeBins,fMinTimeBin,fMaxTimeBin);
    fOutputContainer->Add(fHTpi0[ibc]);       
    fHTpi0[ibc]->SetYTitle("time (ns)");
    fHTpi0[ibc]->SetXTitle("abs. Id. ");
  }
  
  
  fhClusterTime = new TH2F("hClusterTime","cluster time vs E",100,0,10, 100,0,1000);
  fhClusterTime->SetXTitle("E (GeV)");
  fhClusterTime->SetYTitle("t (ns)");
  fOutputContainer->Add(fhClusterTime);
  
  fhClusterPairDiffTime = new TH2F("hClusterPairDiffTime","cluster pair time difference vs E",100,0,10, 800,-400,400);
  fhClusterPairDiffTime->SetXTitle("E_{pair} (GeV)");
  fhClusterPairDiffTime->SetYTitle("#Delta t (ns)");
  fOutputContainer->Add(fhClusterPairDiffTime);
  
  for(Int_t iMod=0; iMod < nSM; iMod++)
  {
    for(Int_t iRow=0; iRow < AliEMCALGeoParams::fgkEMCALRows; iRow++) 
    {
      for(Int_t iCol=0; iCol < AliEMCALGeoParams::fgkEMCALCols; iCol++) 
      {
        snprintf(hname,buffersize, "%d_%d_%d",iMod,iCol,iRow);
        snprintf(htitl,buffersize, "Two-gamma inv. mass for super mod %d, cell(col,row)=(%d,%d)",iMod,iCol,iRow);
        fHmpi0[iMod][iCol][iRow] = new TH1F(hname,htitl,fNbins,fMinBin,fMaxBin);
        fHmpi0[iMod][iCol][iRow]->SetXTitle("mass (MeV/c^{2})");
        fOutputContainer->Add(fHmpi0[iMod][iCol][iRow]);
      }
    }
  }
  
  fOutputContainer->SetOwner(kTRUE);
    
  PostData(1,fOutputContainer);
  
  // cuts container, set in terminate but init and post here
  
  fCuts = new TList();
  
  fCuts ->SetOwner(kTRUE);

  PostData(2, fCuts);

}

//______________________________________________________________________________________________________
Bool_t AliAnalysisTaskEMCALPi0CalibSelection::MaskFrameCluster(Int_t iSM, Int_t ieta) const 
{
  //Check if cell is in one of the regions where we have significant amount of material in front of EMCAL
  
  Int_t icol = ieta;
  if(iSM%2) icol+=48; // Impair SM, shift index [0-47] to [48-96]
  
  if (fNMaskCellColumns && fMaskCellColumns) 
  {
    for (Int_t imask = 0; imask < fNMaskCellColumns; imask++) 
    {
      if(icol==fMaskCellColumns[imask]) return kTRUE;
    }
  }
  
  return kFALSE;
  
}

//__________________________________________________________________________
void AliAnalysisTaskEMCALPi0CalibSelection::UserExec(Option_t* /* option */)
{
  // Do analysis, first select the events, then correct the clusters if needed 
  // and finally fill the histograms per channel after recalibration
  
  //Event selection
  if(fTriggerName!="")
  {
    AliESDEvent* esdevent = dynamic_cast<AliESDEvent*> (InputEvent());
    AliAODEvent* aodevent = dynamic_cast<AliAODEvent*> (InputEvent());
    
    TString triggerClass = ""; 
    if     (esdevent) triggerClass = esdevent->GetFiredTriggerClasses();
    else if(aodevent) triggerClass = aodevent->GetFiredTriggerClasses();
    
    if(DebugLevel() > 1) 
      printf("AliAnalysisTaskEMCALPi0CalibSelection::UserExec() - Event %d, FiredClass %s",
             (Int_t)Entry(),(((AliESDEvent*)InputEvent())->GetFiredTriggerClasses()).Data());
    
    if(!triggerClass.Contains(fTriggerName)) 
    {
       if(DebugLevel() > 1) printf("Reject event! \n");
       return;
    }  
    else 
       if(DebugLevel() > 1) printf("Accept Event! \n");
  }
  
  //Get the input event
  AliVEvent* event = 0;
  if(fFilteredInput) event = AODEvent();
  else               event = InputEvent();
  
  if(!event) 
  {
    printf("Input event not available!\n");
    return;
  }
  
  if(DebugLevel() > 1) 
    printf("AliAnalysisTaskEMCALPi0CalibSelection <<< %s: Event %d >>>\n",event->GetName(), (Int_t)Entry());
  
  //Get the primary vertex
  event->GetPrimaryVertex()->GetXYZ(fVertex) ;
  
  if(DebugLevel() > 1) printf("AliAnalysisTaskEMCALPi0CalibSelection Vertex: (%.3f,%.3f,%.3f)\n",fVertex[0],fVertex[1],fVertex[2]);
  
  //Int_t runNum = aod->GetRunNumber();
  //if(DebugLevel() > 1) printf("Run number: %d\n",runNum);
  
  fhNEvents->Fill(0); //Count the events to be analyzed

  // Acccess once the geometry matrix and temperature corrections
  if(fhNEvents->GetEntries()==1) 
  {
    InitGeometryMatrices();

    InitTemperatureCorrections();
  }
  
  //Get the list of clusters and cells
  fEMCALCells       = event->GetEMCALCells();

  fCaloClustersArr  = new TRefArray();
  event->GetEMCALClusters(fCaloClustersArr);
  
  if(DebugLevel() > 1) printf("AliAnalysisTaskEMCALPi0CalibSelection - N CaloClusters: %d - N CaloCells %d \n", 
                              fCaloClustersArr->GetEntriesFast(), fEMCALCells->GetNumberOfCells());
  
  CorrectClusters(); // Non linearity, new calibration, T calibration
  
  FillHistograms();  

  delete fCaloClustersArr;
  
  PostData(1,fOutputContainer);
  
}

//_____________________________________________________
void AliAnalysisTaskEMCALPi0CalibSelection::PrintInfo()
{
  //Print settings
  
  printf("Cluster cuts: %2.2f < E < %2.2f GeV; number of cells > %d; Assymetry < %1.2f, pair time diff < %2.2f, %2.2f < t < %2.2f ns\n", 
         fEmin,fEmax, fMinNCells, fAsyCut, fDTimeCut,fTimeMin,fTimeMax) ;
  
  printf("Group %d cells\n", fGroupNCells) ;
  
  printf("Cluster maximal cell away from border at least %d cells\n", fRecoUtils->GetNumberOfCellsFromEMCALBorder()) ;
  
  printf("Histograms: bins %d; energy range: %2.2f < E < %2.2f GeV\n",fNbins,fMinBin,fMaxBin) ;
  
  printf("Switchs:\n \t Remove Bad Channels? %d; Use filtered input? %d;  Correct Clusters? %d, \n \t Mass per channel same SM clusters? %d\n",
         fRecoUtils->IsBadChannelsRemovalSwitchedOn(),fFilteredInput,fCorrectClusters, fSameSM) ;
  
  printf("EMCAL Geometry name: < %s >, Load Matrices %d\n",fEMCALGeoName.Data(), fLoadMatrices) ;
  if(fLoadMatrices) {for(Int_t ism = 0; ism < AliEMCALGeoParams::fgkEMCALModules; ism++) if(fMatrix[ism]) fMatrix[ism]->Print() ; }
  
}

//____________________________________________________________________
void AliAnalysisTaskEMCALPi0CalibSelection::Terminate(Option_t*)
{
  // Create cuts/param objects and publish to slot
  const Int_t buffersize = 255;
  char onePar[buffersize] ;
  
  snprintf(onePar,buffersize, "Custer cuts: %2.2f < E < %2.2f GeV; %2.2f < Lambda0_2 < %2.2f GeV; min number of cells %d; Assymetry cut %1.2f, time1-time2 < %2.2f; %2.2f < T < %2.2f ns; %3.1f < Mass < %3.1f", 
           fEmin,fEmax, fL0min, fL0max, fMinNCells, fAsyCut, fDTimeCut, fTimeMin, fTimeMax, fInvMassCutMin, fInvMassCutMax) ;
  fCuts->Add(new TObjString(onePar));
  snprintf(onePar,buffersize, "Group %d cells;", fGroupNCells) ;
  fCuts->Add(new TObjString(onePar));
  snprintf(onePar,buffersize, "Cluster maximal cell away from border at least %d cells;", fRecoUtils->GetNumberOfCellsFromEMCALBorder()) ;
  fCuts->Add(new TObjString(onePar));
  snprintf(onePar,buffersize, "Histograms, Mass bins %d; energy range: %2.2f < E < %2.2f GeV;",fNbins,fMinBin,fMaxBin) ;
  fCuts->Add(new TObjString(onePar));
  snprintf(onePar,buffersize, "Histograms, Time bins %d; energy range: %2.2f < E < %2.2f GeV;",fNTimeBins,fMinTimeBin,fMaxTimeBin) ;
  fCuts->Add(new TObjString(onePar));
  snprintf(onePar,buffersize, "Switchs: Remove Bad Channels? %d; Use filtered input? %d;  Correct Clusters? %d, Mass per channel same SM clusters? %d ",
           fRecoUtils->IsBadChannelsRemovalSwitchedOn(),fFilteredInput,fCorrectClusters, fSameSM) ;
  fCuts->Add(new TObjString(onePar));
  snprintf(onePar,buffersize, "EMCAL Geometry name: < %s >, Load Matrices? %d",fEMCALGeoName.Data(),fLoadMatrices) ;
  fCuts->Add(new TObjString(onePar));
    
  // Post Data
  PostData(2, fCuts);
  
}

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