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

// Extension to Pi0FLOw, mimicing AliPHOSHijingEfficiency
// by Dmitri Peressounko, 05.02.2013
// Authors: Henrik Qvigstad, Dmitri Peressounko
// Date   : 05.04.2013
/* $Id$ */

#include "TChain.h"
#include "TTree.h"
#include "TObjArray.h"
#include "TF1.h"
#include "TFile.h"
#include "TH1F.h"
#include "TH2F.h"
#include "TH2I.h"
#include "TH3F.h"
#include "TParticle.h"
#include "TCanvas.h"
#include "TStyle.h"
#include "TRandom.h"
#include "TROOT.h"
#include "THashList.h"
#include "TArray.h"
#include "TArrayD.h"


#include "AliAnalysisManager.h"
#include "AliMCEventHandler.h"
#include "AliMCEvent.h"
#include "AliStack.h"
#include "AliAnalysisTaskSE.h"
#include "AliPHOSHijingEfficiency.h"
#include "AliCaloPhoton.h"
#include "AliPHOSGeometry.h"
#include "AliPHOSEsdCluster.h"
#include "AliPHOSCalibData.h"
#include "AliESDEvent.h"
#include "AliESDCaloCells.h"
#include "AliESDVertex.h"
#include "AliESDtrackCuts.h"
#include "AliLog.h"
#include "AliPID.h"
#include "AliCDBManager.h"
#include "AliCentrality.h" 
#include "AliESDtrackCuts.h"
#include "AliEventplane.h"
#include "TProfile.h"
#include <TPDGCode.h>
#include "AliOADBContainer.h"


#include "AliAnalysisTaskPi0Flow.h"
#include "AliAnalysisTaskPi0FlowMC.h"

ClassImp(AliAnalysisTaskPi0FlowMC);

//TODO: rnlin?

//TODO: Geometry IHEP?
//TODO: PHOS matrix?
//TODO: Centrality.?

const Double_t AliAnalysisTaskPi0FlowMC::kRCut = 1.;

AliAnalysisTaskPi0FlowMC::AliAnalysisTaskPi0FlowMC(const char* name, AliAnalysisTaskPi0Flow::Period period)
: AliAnalysisTaskPi0Flow(name, period),
  fStack(0x0),kOffVertexCutSet(kTRUE)
{
}

AliAnalysisTaskPi0FlowMC::~AliAnalysisTaskPi0FlowMC()
{
}

void AliAnalysisTaskPi0FlowMC::UserCreateOutputObjects()
{
  // Do standard Pi0Flow CreateOuputObjects
  AliAnalysisTaskPi0Flow::UserCreateOutputObjects();
  
  // MC Generated histograms
  char key[55];
  for(Int_t cent=0; cent < fCentEdges.GetSize()-1; cent++){
    snprintf(key,55,"hMC_rap_gamma_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity pi0",200,-1.,1.)) ;
    snprintf(key,55,"hMC_rap_pi0_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity pi0",200,-1.,1.)) ;
    snprintf(key,55,"hMC_rap_eta_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity eta",200,-1.,1.)) ;
    snprintf(key,55,"hMC_phi_gamma_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Phi pi0",200,0.,TMath::TwoPi())) ;
    snprintf(key,55,"hMC_phi_pi0_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Phi pi0",200,0.,TMath::TwoPi())) ;
    snprintf(key,55,"hMC_phi_eta_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Phi eta",200,0.,TMath::TwoPi())) ;
    snprintf(key,55,"hMC_all_gamma_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity photon",250,0.,25.)) ;
    snprintf(key,55,"hMC_all_pi0_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity pi0",250,0.,25.)) ;
    snprintf(key,55,"hMC_all_eta_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity eta",250,0.,25.)) ;
    snprintf(key,55,"hMC_unitEta_gamma_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Pt photon",250,0.,25.)) ;
    snprintf(key,55,"hMC_unitEta_pi0_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity eta",250,0.,25.)) ;
    snprintf(key,55,"hMC_unitEta_eta_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity eta",250,0.,25.)) ;

    snprintf(key,55,"hMC_all_K0S_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity photon",250,0.,25.)) ;

    snprintf(key,55,"hMC_unitEta_K0S_cen%d",cent) ;
    fOutputContainer->Add(new TH1F(key,"Rapidity eta",250,0.,25.)) ;

  }
  fOutputContainer->Add(new TH2F("hMC_gamma_vertex","Creation vertex",25,0.,25.,1000,0.,500.)) ;
  fOutputContainer->Add(new TH2F("hMC_pi0_vertex","Creation vertex",25,0.,25.,1000,0.,500.)) ;
  fOutputContainer->Add(new TH2F("hMC_eta_vertex","Creation vertex",25,0.,25.,1000,0.,500.)) ;
 
 
  Int_t nPt      = 200;
  Double_t ptMin = 0;
  Double_t ptMax = 20; 
  fOutputContainer->Add(new TH2F("Vertex","Pi0 creation vertex",nPt,ptMin,ptMax,5000,0.,500.));
  fOutputContainer->Add(new TH3F("hSecondPi0RphiZ","Secondary pi0 vertex",450,0.,450.,100,0.,TMath::TwoPi(),200,-100.,100.));
  fOutputContainer->Add(new TH2F("hSecondPi0RE","Secondary pi0 vertex",450,0.,450.,200,0.,20.));
  fOutputContainer->Add(new TH3F("hMass_R","Mass vs radius any parent",50,0.,0.25,100,0.,10.,300,0.,600.));
  fOutputContainer->Add(new TH3F("Real_pi_R","All clusters",50,0.,0.25,100,0.,10.,250,0.,500.));
  fOutputContainer->Add(new TH3F("Real_pi_Z","All clusters",50,0.,0.25,100,0.,10.,100,-100.,100.));
//  fOutputContainer->Add(new TH2F(Form("Real_npnp_RZ"),"All clusters",250,0.,500.,100,-100.,100.));
//  fOutputContainer->Add(new TH3F(Form("Real_mass_R"),"All clusters",50,0.,0.25,100,0.,10.,300,0.,600.));

  const Int_t nM       = 500;
  const Double_t mMin  = 0.0;
  const Double_t mMax  = 1.0;

  for(Int_t cen=0; cen < fCentEdges.GetSize()-1; cen++){
    fOutputContainer->Add(new TH1F(Form("hPrimPhot_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimEl_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimPi0_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimEta_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimPipm_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimP_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimPbar_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimN_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimNbar_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimK0S_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimK0L_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimKpm_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH1F(Form("hPrimOther_cen%d",cen),"Primary spetrum",nPt,ptMin,ptMax));

    //pairs from common parents
    fOutputContainer->Add(new TH2F(Form("hParentAll_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentK0s_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentGamma_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentEl_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentOther_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentDirPi0_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
   
    //common parent - pi0
    fOutputContainer->Add(new TH2F(Form("hParentPi0NoPrim_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0Eta_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0Omega_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0Pipm_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0Kpm_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0Ks_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0Kl_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0pn_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    fOutputContainer->Add(new TH2F(Form("hParentPi0antipn_cen%d",cen),"All clusters",nM,mMin,mMax,nPt,ptMin,ptMax));
    
  }
  
  
  //Photon contaminations
  fOutputContainer->Add(new TH2F("hPipmGammaConvR","Conversion radius" ,200,0.,20.,1000,0.,500.));
  fOutputContainer->Add(new TH2F("hPipmElConvR","Conversion radius" ,200,0.,20.,1000,0.,500.));
  fOutputContainer->Add(new TH2F("hPipmNConvR","Conversion radius" ,200,0.,20.,1000,0.,500.));
  fOutputContainer->Add(new TH2F("hPipmOtherConvR","Conversion radius" ,200,0.,20.,1000,0.,500.));
  fOutputContainer->Add(new TH2F("hPipmGammaConvRZ","Conversion radius" ,400,-200.,200.,1000,0.,500.)); 
   
   const Int_t nTypes=24 ;
   char partTypes[nTypes][55] ;
   snprintf(partTypes[0],55,"hGammaNoPrim") ; //
   snprintf(partTypes[1],55,"hGammaPhot") ; //
   snprintf(partTypes[2],55,"hGammaEl") ; //
   snprintf(partTypes[3],55,"hGammaPi0") ; //
   snprintf(partTypes[4],55,"hGammaEta") ; //
   snprintf(partTypes[5],55,"hhGammaOmega") ; //
   snprintf(partTypes[6],55,"hGammaPipm") ; //
   snprintf(partTypes[7],55,"hGammaP") ; //
   snprintf(partTypes[8],55,"hGammaPbar") ; //
   snprintf(partTypes[9],55,"hGammaN") ; //
   snprintf(partTypes[10],55,"hGammaNbar") ; //
   snprintf(partTypes[11],55,"hGammaK0S") ; //
   snprintf(partTypes[12],55,"hGammaK0L") ; //
   snprintf(partTypes[13],55,"hGammaKpm") ; //
   snprintf(partTypes[14],55,"hGammaKstar") ; //
   snprintf(partTypes[15],55,"hGammaDelta") ; //
   snprintf(partTypes[16],55,"hGammaOtherCharged") ; //
   snprintf(partTypes[17],55,"hGammaOtherNeutral") ; //
   snprintf(partTypes[18],55,"hGammaPipmGamma") ; //
   snprintf(partTypes[19],55,"hGammaPipmEl") ; //
   snprintf(partTypes[20],55,"hGammaPipmOther") ; //
   snprintf(partTypes[21],55,"hGammaPipmDirect") ; //
   snprintf(partTypes[22],55,"hGammaPipmp") ; //
   snprintf(partTypes[23],55,"hGammaPipmn") ; //
 
   const Int_t nPID=12 ;
   char cPID[12][25] ;
   snprintf(cPID[0],25,"All") ;
   snprintf(cPID[1],25,"Allcore") ;
   snprintf(cPID[2],25,"CPV") ;
   snprintf(cPID[3],25,"CPVcore") ;
   snprintf(cPID[4],25,"CPV2") ;
   snprintf(cPID[5],25,"CPV2core") ;
   snprintf(cPID[6],25,"Disp") ;
   snprintf(cPID[7],25,"Dispcore") ;
   snprintf(cPID[8],25,"Disp2") ;
   snprintf(cPID[9],25,"Disp2core") ;
   snprintf(cPID[10],25,"Both") ;
   snprintf(cPID[11],25,"Bothcore") ;
 
   for(Int_t itype=0; itype<nTypes; itype++){
     for(Int_t iPID=0; iPID<nPID; iPID++){
       for(Int_t cen=0; cen<5; cen++){
         fOutputContainer->Add(new TH1F(Form("%s_%s_cen%d",partTypes[itype],cPID[iPID],cen),"Cluster parents",nPt,ptMin,ptMax));
       }
     }
   }

  PostData(1, fOutputContainer);
}

void AliAnalysisTaskPi0FlowMC::UserExec(Option_t* option)
{
  fStack = GetMCStack();
  
  AliAnalysisTaskPi0Flow::UserExec(option);
}


void AliAnalysisTaskPi0FlowMC::SelectPhotonClusters()
{
  AliAnalysisTaskPi0Flow::SelectPhotonClusters();
  
  for (Int_t i1=0; i1<fCaloPhotonsPHOS->GetEntriesFast(); i1++) {
    AliCaloPhoton * photon = (AliCaloPhoton*)fCaloPhotonsPHOS->At(i1);
    AliVCluster* cluster = photon->GetCluster();
    Bool_t sure=  kTRUE;
    Int_t primary=FindPrimary(cluster,sure) ;
    photon->SetPrimary(primary);
    photon->SetWeight(PrimaryWeight(primary)) ;
  }

    if(kOffVertexCutSet) {
        for (Int_t i1=0; i1<fCaloPhotonsPHOS->GetEntriesFast(); i1++) {
            AliCaloPhoton * photon = (AliCaloPhoton*)fCaloPhotonsPHOS->At(i1);
            Int_t primary = photon->GetPrimary();
            TParticle* p = fStack->Particle(primary);
            if(p->R() >kRCut) {
                if(p->GetPdgCode()==11 || p->GetPdgCode()==-11) continue;
                else { fCaloPhotonsPHOS->Remove(photon); fCaloPhotonsPHOS->Compress(); }
            }
        }
    }
    
}

void AliAnalysisTaskPi0FlowMC::FillSelectedClusterHistograms()
{
  for (Int_t i1=0; i1<fCaloPhotonsPHOS->GetEntriesFast(); i1++) {
    AliCaloPhoton * ph1=(AliCaloPhoton*)fCaloPhotonsPHOS->At(i1) ;

    Double_t dphiA=ph1->Phi()-fRPV0A ;
    while(dphiA<0)dphiA+=TMath::Pi() ;
    while(dphiA>TMath::Pi())dphiA-=TMath::Pi() ;

    Double_t dphiC=ph1->Phi()-fRPV0C ;
    while(dphiC<0)dphiC+=TMath::Pi() ;
    while(dphiC>TMath::Pi())dphiC-=TMath::Pi() ;

    Double_t dphiT=ph1->Phi()-fRP ;
    while(dphiT<0)dphiT+=TMath::Pi() ;
    while(dphiT>TMath::Pi())dphiT-=TMath::Pi() ;
    
    Double_t pt = ph1->Pt() ;
    Double_t ptcore = ph1->GetMomV2()->Pt() ;
    Double_t w = ph1->GetWeight();

    FillHistogram(Form("hPhotPhiV0AAll_cen%d",fCentBin),pt,dphiA, w) ;
    FillHistogram(Form("hPhotPhiV0CAll_cen%d",fCentBin),pt,dphiC, w) ;
    if(fHaveTPCRP)
      FillHistogram(Form("hPhotPhiTPCAll_cen%d",fCentBin),pt,dphiT, w) ;
    FillHistogram(Form("hPhotPhiV0AAllcore_cen%d",fCentBin),ptcore,dphiA, w) ;
    FillHistogram(Form("hPhotPhiV0CAllcore_cen%d",fCentBin),ptcore,dphiC, w) ;
    if(fHaveTPCRP)
      FillHistogram(Form("hPhotPhiTPCAllcore_cen%d",fCentBin),ptcore,dphiT, w) ;

    FillHistogram(Form("hPhotAll_cen%d",fCentBin),pt, w) ;
    FillHistogram(Form("hPhotAllcore_cen%d",fCentBin),ptcore, w) ;
    if(ph1->IsntUnfolded()){
      FillHistogram(Form("hPhotAllwou_cen%d",fCentBin),pt, w) ;
      FillHistogram(Form("hPhotPhiV0AAllwou_cen%d",fCentBin),pt,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CAllwou_cen%d",fCentBin),pt,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCAllwou_cen%d",fCentBin),pt,dphiT, w) ;
    }
    if(ph1->IsCPVOK()){
      FillHistogram(Form("hPhotPhiV0ACPV_cen%d",fCentBin),pt,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CCPV_cen%d",fCentBin),pt,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCCPV_cen%d",fCentBin),pt,dphiT, w) ;

      FillHistogram(Form("hPhotPhiV0ACPVcore_cen%d",fCentBin),ptcore,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CCPVcore_cen%d",fCentBin),ptcore,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCCPVcore_cen%d",fCentBin),ptcore,dphiT, w) ;

      FillHistogram(Form("hPhotCPV_cen%d",fCentBin),pt, w) ;
      FillHistogram(Form("hPhotCPVcore_cen%d",fCentBin),ptcore, w) ;
    }
    if(ph1->IsCPV2OK()){
      FillHistogram(Form("hPhotPhiV0ACPV2_cen%d",fCentBin),pt,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CCPV2_cen%d",fCentBin),pt,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCCPV2_cen%d",fCentBin),pt,dphiT, w) ;

      FillHistogram(Form("hPhotPhiV0ACPV2core_cen%d",fCentBin),ptcore,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CCPV2core_cen%d",fCentBin),ptcore,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCCPV2core_cen%d",fCentBin),ptcore,dphiT, w) ;
      FillHistogram(Form("hPhotCPV2_cen%d",fCentBin),pt, w) ;
      FillHistogram(Form("hPhotCPV2core_cen%d",fCentBin),ptcore, w) ;
    }
    if(ph1->IsDispOK()){
      FillHistogram(Form("hPhotPhiV0ADisp_cen%d",fCentBin),pt,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CDisp_cen%d",fCentBin),pt,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCDisp_cen%d",fCentBin),pt,dphiT, w) ;

      FillHistogram(Form("hPhotPhiV0ADispcore_cen%d",fCentBin),ptcore,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CDispcore_cen%d",fCentBin),ptcore,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCDispcore_cen%d",fCentBin),ptcore,dphiT, w) ;

      if(ph1->IsntUnfolded()){
        FillHistogram(Form("hPhotPhiV0ADispwou_cen%d",fCentBin),pt,dphiA, w) ;
        FillHistogram(Form("hPhotPhiV0CDispwou_cen%d",fCentBin),pt,dphiC, w) ;
        if(fHaveTPCRP)
          FillHistogram(Form("hPhotPhiTPCDispwou_cen%d",fCentBin),pt,dphiT, w) ;

      }
      FillHistogram(Form("hPhotDisp_cen%d",fCentBin),pt, w) ;
      FillHistogram(Form("hPhotDispcore_cen%d",fCentBin),ptcore, w) ;
      if(ph1->IsntUnfolded()){
        FillHistogram(Form("hPhotDispwou_cen%d",fCentBin),pt, w) ;
      }
      if(ph1->IsCPVOK()){
	FillHistogram(Form("hPhotPhiV0ABoth_cen%d",fCentBin),pt,dphiA, w) ;
	FillHistogram(Form("hPhotPhiV0CBoth_cen%d",fCentBin),pt,dphiC, w) ;
        if(fHaveTPCRP)
  	  FillHistogram(Form("hPhotPhiTPCBoth_cen%d",fCentBin),pt,dphiT, w) ;

	FillHistogram(Form("hPhotPhiV0ABothcore_cen%d",fCentBin),ptcore,dphiA, w) ;
	FillHistogram(Form("hPhotPhiV0CBothcore_cen%d",fCentBin),ptcore,dphiC, w) ;
        if(fHaveTPCRP)
	  FillHistogram(Form("hPhotPhiTPCBothcore_cen%d",fCentBin),ptcore,dphiT, w) ;

	FillHistogram(Form("hPhotBoth_cen%d",fCentBin),pt, w) ;
	FillHistogram(Form("hPhotBothcore_cen%d",fCentBin),ptcore, w) ;
      }
    }
    if(ph1->IsDisp2OK()){
      FillHistogram(Form("hPhotPhiV0ADisp2_cen%d",fCentBin),pt,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CDisp2_cen%d",fCentBin),pt,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCDisp2_cen%d",fCentBin),pt,dphiT, w) ;
      FillHistogram(Form("hPhotPhiV0ADisp2core_cen%d",fCentBin),ptcore,dphiA, w) ;
      FillHistogram(Form("hPhotPhiV0CDisp2core_cen%d",fCentBin),ptcore,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hPhotPhiTPCDisp2core_cen%d",fCentBin),ptcore,dphiT, w) ;

      FillHistogram(Form("hPhotDisp2_cen%d",fCentBin),pt, w) ;
      FillHistogram(Form("hPhotDisp2core_cen%d",fCentBin),ptcore, w) ;
      if(ph1->IsCPVOK()){
	FillHistogram(Form("hPhotPhiV0ABoth2_cen%d",fCentBin),pt,dphiA, w) ;
	FillHistogram(Form("hPhotPhiV0CBoth2_cen%d",fCentBin),pt,dphiC, w) ;
        if(fHaveTPCRP)
  	  FillHistogram(Form("hPhotPhiTPCBoth2_cen%d",fCentBin),pt,dphiT, w) ;

	FillHistogram(Form("hPhotPhiV0ABoth2core_cen%d",fCentBin),ptcore,dphiA, w) ;
	FillHistogram(Form("hPhotPhiV0CBoth2core_cen%d",fCentBin),ptcore,dphiC, w) ;
        if(fHaveTPCRP)
	  FillHistogram(Form("hPhotPhiTPCBoth2core_cen%d",fCentBin),ptcore,dphiT, w) ;

	FillHistogram(Form("hPhotBoth2_cen%d",fCentBin),pt, w) ;
	FillHistogram(Form("hPhotBoth2core_cen%d",fCentBin),ptcore, w) ;
      }
    }
  }
}

void AliAnalysisTaskPi0FlowMC::ConsiderPi0s()
{
  char key[55];
  for (Int_t i1=0; i1 < fCaloPhotonsPHOS->GetEntriesFast()-1; i1++) {
    AliCaloPhoton * ph1=(AliCaloPhoton*)fCaloPhotonsPHOS->At(i1) ;
    const Double_t w1 = ph1->GetWeight();
    for (Int_t i2=i1+1; i2<fCaloPhotonsPHOS->GetEntriesFast(); i2++) {
      AliCaloPhoton * ph2=(AliCaloPhoton*)fCaloPhotonsPHOS->At(i2) ;
      TLorentzVector p12  = *ph1  + *ph2;
      TLorentzVector pv12 = *(ph1->GetMomV2()) + *(ph2->GetMomV2());
      
      const Double_t w2 = ph2->GetWeight();
      Double_t w = TMath::Sqrt(w1*w2);
      
      FillHistogram("hPHOSphi",fCentrality,p12.Pt(),p12.Phi(), w) ;
      Double_t dphiA=p12.Phi()-fRPV0A ;
      while(dphiA<0)dphiA+=TMath::Pi() ;
      while(dphiA>TMath::Pi())dphiA-=TMath::Pi() ;

      Double_t dphiC=p12.Phi()-fRPV0C ;
      while(dphiC<0)dphiC+=TMath::Pi() ;
      while(dphiC>TMath::Pi())dphiC-=TMath::Pi() ;

      Double_t dphiT=p12.Phi()-fRP ;
      while(dphiT<0)dphiT+=TMath::Pi() ;
      while(dphiT>TMath::Pi())dphiT-=TMath::Pi() ;

      Double_t a=TMath::Abs((ph1->E()-ph2->E())/(ph1->E()+ph2->E())) ;
      Double_t m=p12.M() ;
      Double_t mcore=pv12.M() ;
      Double_t pt=p12.Pt() ;
      Double_t ptcore=pv12.Pt() ;
      Double_t pt1=ph1->Pt() ;
      Double_t pt2=ph2->Pt() ;
      Double_t ptcore1=ph1->GetMomV2()->Pt() ;
      Double_t ptcore2=ph2->GetMomV2()->Pt() ;

      FillHistogram(Form("hMassPtV0AAll_cen%d",fCentBin),m,pt,dphiA, w) ;
      FillHistogram(Form("hMassPtV0CAll_cen%d",fCentBin),m,pt,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hMassPtTPCAll_cen%d",fCentBin),m,pt,dphiT, w) ;

      FillHistogram(Form("hMassPtV0AAllcore_cen%d",fCentBin),mcore,ptcore,dphiA, w) ;
      FillHistogram(Form("hMassPtV0CAllcore_cen%d",fCentBin),mcore,ptcore,dphiC, w) ;
      if(fHaveTPCRP)
        FillHistogram(Form("hMassPtTPCAllcore_cen%d",fCentBin),mcore,ptcore,dphiT, w) ;


      FillHistogram(Form("hPi0All_cen%d",fCentBin),m,pt, w) ;
      FillHistogram(Form("hPi0Allcore_cen%d",fCentBin),mcore,ptcore, w) ;
      if(ph1->IsntUnfolded() && ph2->IsntUnfolded()){
        FillHistogram(Form("hPi0Allwou_cen%d",fCentBin),m,pt, w) ;
        FillHistogram(Form("hMassPtV0AAllwou_cen%d",fCentBin),m,pt,dphiA, w) ;
        FillHistogram(Form("hMassPtV0CAllwou_cen%d",fCentBin),m,pt,dphiC, w) ;
        if(fHaveTPCRP)
          FillHistogram(Form("hMassPtTPCAllwou_cen%d",fCentBin),m,pt,dphiT, w) ;
      }

      FillHistogram(Form("hSingleAll_cen%d",fCentBin),m,pt1, w) ;
      FillHistogram(Form("hSingleAll_cen%d",fCentBin),m,pt2, w) ;
      FillHistogram(Form("hSingleAllcore_cen%d",fCentBin),mcore,ptcore1, w) ;
      FillHistogram(Form("hSingleAllcore_cen%d",fCentBin),mcore,ptcore2, w) ;
      if(ph1->IsntUnfolded())
        FillHistogram(Form("hSingleAllwou_cen%d",fCentBin),m,pt1, w) ;
      if(ph2->IsntUnfolded())
        FillHistogram(Form("hSingleAllwou_cen%d",fCentBin),m,pt2, w) ;
      if(ph1->IsCPVOK()){
        FillHistogram(Form("hSingleCPV_cen%d",fCentBin),m,pt1, w) ;
        FillHistogram(Form("hSingleCPVcore_cen%d",fCentBin),mcore,ptcore1, w) ;
      }
      if(ph2->IsCPVOK()){
        FillHistogram(Form("hSingleCPV_cen%d",fCentBin),m,pt2, w) ;
        FillHistogram(Form("hSingleCPVcore_cen%d",fCentBin),mcore,ptcore2, w) ;
      }
      if(ph1->IsCPV2OK()){
        FillHistogram(Form("hSingleCPV2_cen%d",fCentBin),m,pt1, w) ;
        FillHistogram(Form("hSingleCPV2core_cen%d",fCentBin),mcore,ptcore2, w) ;
      }
      if(ph2->IsCPV2OK()){
        FillHistogram(Form("hSingleCPV2_cen%d",fCentBin),m,pt2, w) ;
        FillHistogram(Form("hSingleCPV2core_cen%d",fCentBin),mcore,ptcore2, w) ;
      }
      if(ph1->IsDispOK()){
        FillHistogram(Form("hSingleDisp_cen%d",fCentBin),m,pt1, w) ;
        if(ph1->IsntUnfolded()){
          FillHistogram(Form("hSingleDispwou_cen%d",fCentBin),m,pt1, w) ;
	}
        FillHistogram(Form("hSingleDispcore_cen%d",fCentBin),mcore,ptcore1, w) ;
      }
      if(ph2->IsDispOK()){
        FillHistogram(Form("hSingleDisp_cen%d",fCentBin),m,pt2, w) ;
        if(ph1->IsntUnfolded()){
          FillHistogram(Form("hSingleDispwou_cen%d",fCentBin),m,pt2, w) ;
	}
        FillHistogram(Form("hSingleDispcore_cen%d",fCentBin),mcore,ptcore2, w) ;
      }
      if(ph1->IsDisp2OK()){
        FillHistogram(Form("hSingleDisp2_cen%d",fCentBin),m,pt1, w) ;
        FillHistogram(Form("hSingleDisp2core_cen%d",fCentBin),mcore,ptcore1, w) ;
      }
      if(ph2->IsDisp2OK()){
        FillHistogram(Form("hSingleDisp2_cen%d",fCentBin),m,pt2, w) ;
        FillHistogram(Form("hSingleDisp2core_cen%d",fCentBin),mcore,ptcore1, w) ;
      }
      if(ph1->IsDispOK() && ph1->IsCPVOK()){
        FillHistogram(Form("hSingleBoth_cen%d",fCentBin),m,pt1, w) ;
        FillHistogram(Form("hSingleBothcore_cen%d",fCentBin),mcore,ptcore1, w) ;
      }
      if(ph2->IsDispOK() && ph2->IsCPVOK()){
        FillHistogram(Form("hSingleBoth_cen%d",fCentBin),m,pt2, w) ;
        FillHistogram(Form("hSingleBothcore_cen%d",fCentBin),mcore,ptcore2, w) ;
      }
      if(ph1->IsDisp2OK() && ph1->IsCPVOK()){
        FillHistogram(Form("hSingleBoth2_cen%d",fCentBin),m,pt1, w) ;
        FillHistogram(Form("hSingleBoth2core_cen%d",fCentBin),mcore,ptcore1, w) ;
      }
      if(ph2->IsDisp2OK() && ph2->IsCPVOK()){
        FillHistogram(Form("hSingleBoth2_cen%d",fCentBin),m,pt2, w) ;
        FillHistogram(Form("hSingleBoth2core_cen%d",fCentBin),mcore,ptcore2, w) ;
      }


      if(a<kAlphaCut){
        FillHistogram(Form("hPi0All_a07_cen%d",fCentBin),m,pt, w) ;
      }

      if(ph1->IsCPVOK() && ph2->IsCPVOK()){
	snprintf(key,55,"hMassPtCPV_cen%d",fCentBin) ;
	FillHistogram(Form("hMassPtV0ACPV_cen%d",fCentBin),m,pt,dphiA, w) ;
	FillHistogram(Form("hMassPtV0CCPV_cen%d",fCentBin),m,pt,dphiC, w) ;
	if(fHaveTPCRP)
  	  FillHistogram(Form("hMassPtTPCCPV_cen%d",fCentBin),m,pt,dphiT, w) ;

	FillHistogram(Form("hMassPtV0ACPVcore_cen%d",fCentBin),mcore,ptcore,dphiA, w) ;
	FillHistogram(Form("hMassPtV0CCPVcore_cen%d",fCentBin),mcore,ptcore,dphiC, w) ;
	if(fHaveTPCRP)
  	  FillHistogram(Form("hMassPtTPCCPVcore_cen%d",fCentBin),mcore,ptcore,dphiT, w) ;

	FillHistogram(Form("hPi0CPV_cen%d",fCentBin),m,pt, w) ;
	FillHistogram(Form("hPi0CPVcore_cen%d",fCentBin),mcore, ptcore, w) ;

        if(a<kAlphaCut){
          FillHistogram(Form("hPi0CPV_a07_cen%d",fCentBin),m,pt, w) ;
        }
      }
      if(ph1->IsCPV2OK() && ph2->IsCPV2OK()){
	FillHistogram(Form("hMassPtV0ACPV2_cen%d",fCentBin),m,pt,dphiA, w) ;
	FillHistogram(Form("hMassPtV0CCPV2_cen%d",fCentBin),m,pt,dphiC, w) ;
	if(fHaveTPCRP)
  	  FillHistogram(Form("hMassPtTPCCPV2_cen%d",fCentBin),m,pt,dphiT, w) ;
	FillHistogram(Form("hMassPtV0ACPV2core_cen%d",fCentBin),mcore,ptcore,dphiA, w) ;
	FillHistogram(Form("hMassPtV0CCPV2core_cen%d",fCentBin),mcore,ptcore,dphiC, w) ;
	if(fHaveTPCRP)
  	  FillHistogram(Form("hMassPtTPCCPV2core_cen%d",fCentBin),mcore,ptcore,dphiT, w) ;
	
	FillHistogram(Form("hPi0CPV2_cen%d",fCentBin),m,pt, w) ;
	FillHistogram(Form("hPi0CPV2core_cen%d",fCentBin),mcore, ptcore, w) ;
        if(a<kAlphaCut){
          FillHistogram(Form("hPi0CPV2_a07_cen%d",fCentBin),m,pt, w) ;
        }
      }
      if(ph1->IsDispOK() && ph2->IsDispOK()){
	snprintf(key,55,"hMassPtDisp_cen%d",fCentBin) ;
	FillHistogram(Form("hMassPtV0ADisp_cen%d",fCentBin),m,pt,dphiA, w) ;
	FillHistogram(Form("hMassPtV0CDisp_cen%d",fCentBin),m,pt,dphiC, w) ;
	if(fHaveTPCRP)
  	  FillHistogram(Form("hMassPtTPCDisp_cen%d",fCentBin),m,pt,dphiT, w) ;
	
	FillHistogram(Form("hMassPtV0ADispcore_cen%d",fCentBin),mcore, ptcore,dphiA, w) ;
	FillHistogram(Form("hMassPtV0CDispcore_cen%d",fCentBin),mcore, ptcore,dphiC, w) ;
	if(fHaveTPCRP)
	  FillHistogram(Form("hMassPtTPCDispcore_cen%d",fCentBin),mcore, ptcore,dphiT, w) ;

	FillHistogram(Form("hPi0Disp_cen%d",fCentBin),m,pt, w) ;
	FillHistogram(Form("hPi0Dispcore_cen%d",fCentBin),mcore, ptcore, w) ;
	
	if(ph1->IsntUnfolded() && ph2->IsntUnfolded()){
	  FillHistogram(Form("hPi0Dispwou_cen%d",fCentBin),m,pt, w) ;

	  FillHistogram(Form("hMassPtV0ADispwou_cen%d",fCentBin),m,pt,dphiA, w) ;
 	  FillHistogram(Form("hMassPtV0CDispwou_cen%d",fCentBin),m,pt,dphiC, w) ;
	  if(fHaveTPCRP)
  	    FillHistogram(Form("hMassPtTPCDispwou_cen%d",fCentBin),m,pt,dphiT, w) ;
	}

        if(a<kAlphaCut){
          FillHistogram(Form("hPi0Disp_a07_cen%d",fCentBin),m,pt, w) ;
        }
	if(ph1->IsCPVOK() && ph2->IsCPVOK()){
	  FillHistogram(Form("hMassPtV0ABoth_cen%d",fCentBin),m,pt,dphiA, w) ;
	  FillHistogram(Form("hMassPtV0CBoth_cen%d",fCentBin),m,pt,dphiC, w) ;
          if(fHaveTPCRP)
	    FillHistogram(Form("hMassPtTPCBoth_cen%d",fCentBin),m,pt,dphiT, w) ;

	  FillHistogram(Form("hMassPtV0ABothcore_cen%d",fCentBin),mcore,ptcore,dphiA, w) ;
	  FillHistogram(Form("hMassPtV0CBothcore_cen%d",fCentBin),mcore,ptcore,dphiC, w) ;
          if(fHaveTPCRP)
	    FillHistogram(Form("hMassPtTPCBothcore_cen%d",fCentBin),mcore,ptcore,dphiT, w) ;

	  FillHistogram(Form("hPi0Both_cen%d",fCentBin),m,pt, w) ;
	  FillHistogram(Form("hPi0Bothcore_cen%d",fCentBin),mcore,ptcore, w) ;

          if(a<kAlphaCut){
            snprintf(key,55,"hPi0Both_a07_cen%d",fCentBin) ;
            FillHistogram(Form("hPi0Both_a07_cen%d",fCentBin),m,pt, w) ;
          }
          if(ph1->Module()==1 && ph2->Module()==1)
	    FillHistogram("hPi0M11", m, pt, w) ;
          else if(ph1->Module()==2 && ph2->Module()==2)
	    FillHistogram("hPi0M22", m, pt, w) ;
          else if(ph1->Module()==3 && ph2->Module()==3)
	    FillHistogram("hPi0M33", m, pt, w) ;
          else if(ph1->Module()==1 && ph2->Module()==2)
	    FillHistogram("hPi0M12", m, pt, w) ;
          else if(ph1->Module()==1 && ph2->Module()==3)
	    FillHistogram("hPi0M13", m, pt, w) ;
          else if(ph1->Module()==2 && ph2->Module()==3)
	    FillHistogram("hPi0M23", m, pt, w) ;

        }
	
      }
      
      
      if(ph1->IsDisp2OK() && ph2->IsDisp2OK()){
	FillHistogram(Form("hPi0Disp2_cen%d",fCentBin),m,pt,w) ;
  	FillHistogram(Form("hPi0Disp2core_cen%d",fCentBin),mcore, ptcore, w) ;	

	FillHistogram(Form("hMassPtV0ADisp2_cen%d",fCentBin),m,pt,dphiA, w) ;
	FillHistogram(Form("hMassPtV0CDisp2_cen%d",fCentBin),m,pt,dphiC, w) ;
	if(fHaveTPCRP)
  	  FillHistogram(Form("hMassPtTPCDisp2_cen%d",fCentBin),m,pt,dphiT, w) ;

	FillHistogram(Form("hMassPtV0ADisp2core_cen%d",fCentBin),mcore, ptcore,dphiA, w) ;
	FillHistogram(Form("hMassPtV0CDisp2core_cen%d",fCentBin),mcore, ptcore,dphiC, w) ;
	if(fHaveTPCRP)
	  FillHistogram(Form("hMassPtTPCDisp2core_cen%d",fCentBin),mcore, ptcore,dphiT, w) ;
	  
	if(ph1->IsCPVOK() && ph2->IsCPVOK()){
	  FillHistogram(Form("hMassPtV0ABoth2_cen%d",fCentBin),m,pt,dphiA, w) ;
	  FillHistogram(Form("hMassPtV0CBoth2_cen%d",fCentBin),m,pt,dphiC, w) ;
          if(fHaveTPCRP)
	    FillHistogram(Form("hMassPtTPCBoth2_cen%d",fCentBin),m,pt,dphiT, w) ;

	  FillHistogram(Form("hMassPtV0ABoth2core_cen%d",fCentBin),mcore,ptcore,dphiA, w) ;
	  FillHistogram(Form("hMassPtV0CBoth2core_cen%d",fCentBin),mcore,ptcore,dphiC, w) ;
          if(fHaveTPCRP)
	    FillHistogram(Form("hMassPtTPCBoth2core_cen%d",fCentBin),mcore,ptcore,dphiT, w) ;

	  FillHistogram(Form("hPi0Both2_cen%d",fCentBin),m,pt, w) ;
	  FillHistogram(Form("hPi0Both2core_cen%d",fCentBin),mcore,ptcore, w) ;
	}

      }
    } // end of loop i2
  } // end of loop i1
}

//________________________________________________________________________
void AliAnalysisTaskPi0FlowMC::ConsiderPi0sMix()
{
  char key[55];

  TList * arrayList = GetCaloPhotonsPHOSList(fVtxBin, fCentBin, fEMRPBin);

  for (Int_t i1=0; i1<fCaloPhotonsPHOS->GetEntriesFast(); i1++) {
    AliCaloPhoton * ph1=(AliCaloPhoton*)fCaloPhotonsPHOS->At(i1) ;
    const Double_t w1 = ph1->GetWeight();
    for(Int_t evi=0; evi<arrayList->GetEntries();evi++){
      TObjArray * mixPHOS = static_cast<TObjArray*>(arrayList->At(evi));
      for(Int_t i2=0; i2<mixPHOS->GetEntriesFast();i2++){
	AliCaloPhoton * ph2=(AliCaloPhoton*)mixPHOS->At(i2) ;
	TLorentzVector p12  = *ph1  + *ph2;
	TLorentzVector pv12 = *(ph1->GetMomV2()) + *(ph2->GetMomV2());
	
	const Double_t w2 = ph2->GetWeight();
	Double_t w = TMath::Sqrt(w1*w2);

	Double_t dphiA=p12.Phi()-fRPV0A ;
	while(dphiA<0)dphiA+=TMath::Pi() ;
	while(dphiA>TMath::Pi())dphiA-=TMath::Pi() ;

	Double_t dphiC=p12.Phi()-fRPV0C ;
	while(dphiC<0)dphiC+=TMath::Pi() ;
	while(dphiC>TMath::Pi())dphiC-=TMath::Pi() ;

	Double_t dphiT=p12.Phi()-fRP ;
	while(dphiT<0)dphiT+=TMath::Pi() ;
	while(dphiT>TMath::Pi())dphiT-=TMath::Pi() ;


        Double_t a=TMath::Abs((ph1->E()-ph2->E())/(ph1->E()+ph2->E())) ;
        Double_t m=p12.M() ;
        Double_t mcore=pv12.M() ;
        Double_t pt=p12.Pt() ;
        Double_t ptcore=pv12.Pt() ;
        Double_t pt1=ph1->Pt() ;
        Double_t pt2=ph2->Pt() ;
        Double_t ptcore1=ph1->GetMomV2()->Pt() ;
        Double_t ptcore2=ph2->GetMomV2()->Pt() ;


	snprintf(key,55,"hMiMassPtAll_cen%d",fCentBin) ;
	FillHistogram(Form("hMiMassPtV0AAll_cen%d",fCentBin),m,pt,dphiA, w) ;
	FillHistogram(Form("hMiMassPtV0CAll_cen%d",fCentBin),m,pt,dphiC, w) ;
	if(fHaveTPCRP)
 	  FillHistogram(Form("hMiMassPtTPCAll_cen%d",fCentBin),m,pt,dphiT, w) ;

	FillHistogram(Form("hMiMassPtV0AAllcore_cen%d",fCentBin),mcore, ptcore, dphiA, w) ;
	FillHistogram(Form("hMiMassPtV0CAllcore_cen%d",fCentBin),mcore, ptcore, dphiC, w) ;
        if(fHaveTPCRP)
	  FillHistogram(Form("hMiMassPtTPCAllcore_cen%d",fCentBin),mcore, ptcore, dphiT, w) ;

	FillHistogram(Form("hMiPi0All_cen%d",fCentBin),m,pt, w) ;
	FillHistogram(Form("hMiPi0Allcore_cen%d",fCentBin),mcore,ptcore, w) ;
	if(ph1->IsntUnfolded() && ph2->IsntUnfolded()){
	  FillHistogram(Form("hMiPi0Allwou_cen%d",fCentBin),m,pt, w) ;
          FillHistogram(Form("hMiMassPtV0AAllwou_cen%d",fCentBin),m,pt,dphiA, w) ;
          FillHistogram(Form("hMiMassPtV0CAllwou_cen%d",fCentBin),m,pt,dphiC, w) ;
          if(fHaveTPCRP)
            FillHistogram(Form("hMiMassPtTPCAllwou_cen%d",fCentBin),m,pt,dphiT, w) ;
	}

        FillHistogram(Form("hMiSingleAll_cen%d",fCentBin),m,pt1, w) ;
        FillHistogram(Form("hMiSingleAll_cen%d",fCentBin),m,pt2, w) ;
        FillHistogram(Form("hMiSingleAllcore_cen%d",fCentBin),mcore,ptcore1, w) ;
        FillHistogram(Form("hMiSingleAllcore_cen%d",fCentBin),mcore,ptcore2, w) ;
        if(ph1->IsntUnfolded())
          FillHistogram(Form("hMiSingleAllwou_cen%d",fCentBin),m,pt1, w) ;
        if(ph2->IsntUnfolded())
          FillHistogram(Form("hMiSingleAllwou_cen%d",fCentBin),m,pt2, w) ;
        if(ph1->IsCPVOK()){
          FillHistogram(Form("hMiSingleCPV_cen%d",fCentBin),m,pt1, w) ;
          FillHistogram(Form("hMiSingleCPVcore_cen%d",fCentBin),mcore,ptcore1, w) ;
        }
        if(ph2->IsCPVOK()){
          FillHistogram(Form("hMiSingleCPV_cen%d",fCentBin),m,pt2, w) ;
          FillHistogram(Form("hMiSingleCPVcore_cen%d",fCentBin),mcore,ptcore2, w) ;
        }
        if(ph1->IsCPV2OK()){
          FillHistogram(Form("hMiSingleCPV2_cen%d",fCentBin),m,pt1, w) ;
          FillHistogram(Form("hMiSingleCPV2core_cen%d",fCentBin),mcore,ptcore1, w) ;
        }
        if(ph2->IsCPV2OK()){
          FillHistogram(Form("hMiSingleCPV2_cen%d",fCentBin),m,pt2, w) ;
          FillHistogram(Form("hMiSingleCPV2core_cen%d",fCentBin),mcore,ptcore2, w) ;
        }
        if(ph1->IsDispOK()){
          FillHistogram(Form("hMiSingleDisp_cen%d",fCentBin),m,pt1, w) ;
          if(ph1->IsntUnfolded()){
            FillHistogram(Form("hMiSingleDispwou_cen%d",fCentBin),m,pt1, w) ;
	  }
          FillHistogram(Form("hMiSingleDispcore_cen%d",fCentBin),mcore,ptcore1, w) ;
        }
        if(ph2->IsDispOK()){
          FillHistogram(Form("hMiSingleDisp_cen%d",fCentBin),m,pt2, w) ;
          if(ph1->IsntUnfolded()){
            FillHistogram(Form("hMiSingleDispwou_cen%d",fCentBin),m,pt2, w) ;
	  }
          FillHistogram(Form("hMiSingleDispcore_cen%d",fCentBin),mcore,ptcore2, w) ;
        }
        if(ph1->IsDisp2OK()){
          FillHistogram(Form("hMiSingleDisp2_cen%d",fCentBin),m,pt1, w) ;
          FillHistogram(Form("hMiSingleDisp2core_cen%d",fCentBin),mcore,ptcore1, w) ;
        }
        if(ph2->IsDisp2OK()){
          FillHistogram(Form("hMiSingleDisp2_cen%d",fCentBin),m,pt2, w) ;
          FillHistogram(Form("hMiSingleDisp2core_cen%d",fCentBin),mcore,ptcore2, w) ;
        }
        if(ph1->IsDispOK() && ph1->IsCPVOK()){
          snprintf(key,55,"hMiSingleBoth_cen%d",fCentBin) ;
          FillHistogram(key,m,pt1, w) ;
          snprintf(key,55,"hMiSingleBothcore_cen%d",fCentBin);
          FillHistogram(key,mcore,ptcore1, w) ;
        }
        if(ph2->IsDispOK() && ph2->IsCPVOK()){
          snprintf(key,55,"hMiSingleBoth_cen%d",fCentBin);
          FillHistogram(key,m,pt2, w) ;
          snprintf(key,55,"hMiSingleBothcore_cen%d",fCentBin);
          FillHistogram(key,mcore,ptcore2, w) ;
        }
        if(ph1->IsDisp2OK() && ph1->IsCPVOK()){
          FillHistogram(Form("hMiSingleBoth2_cen%d",fCentBin),m,pt1, w) ;
          FillHistogram(Form("hMiSingleBoth2core_cen%d",fCentBin),mcore,ptcore1, w) ;
        }
        if(ph2->IsDisp2OK() && ph2->IsCPVOK()){
          FillHistogram(Form("hMiSingleBoth2_cen%d",fCentBin),m,pt2, w) ;
          FillHistogram(Form("hMiSingleBoth2core_cen%d",fCentBin),mcore,ptcore2, w) ;
        }



        if(a<kAlphaCut){
          FillHistogram(Form("hMiPi0All_a07_cen%d",fCentBin),m,pt, w) ;
        }
	if(ph1->IsCPVOK() && ph2->IsCPVOK()){
	  FillHistogram(Form("hMiMassPtV0ACPV_cen%d",fCentBin),m,pt,dphiA, w) ;
	  FillHistogram(Form("hMiMassPtV0CCPV_cen%d",fCentBin),m,pt,dphiC, w) ;
	  if(fHaveTPCRP)
 	    FillHistogram(Form("hMiMassPtTPCCPV_cen%d",fCentBin),m,pt,dphiT, w) ;

	  FillHistogram(Form("hMiMassPtV0ACPVcore_cen%d",fCentBin),mcore, ptcore,dphiA, w) ;
	  FillHistogram(Form("hMiMassPtV0CCPVcore_cen%d",fCentBin),mcore, ptcore,dphiC, w) ;
	  if(fHaveTPCRP)
 	    FillHistogram(Form("hMiMassPtTPCCPVcore_cen%d",fCentBin),mcore, ptcore,dphiT, w) ;

	  FillHistogram(Form("hMiPi0CPV_cen%d",fCentBin),m,pt, w) ;
	  FillHistogram(Form("hMiPi0CPVcore_cen%d",fCentBin),mcore, ptcore, w) ;

	  if(a<kAlphaCut){
            FillHistogram(Form("hMiPi0CPV_a07_cen%d",fCentBin),m,pt, w) ;
          }
	}
	if(ph1->IsCPV2OK() && ph2->IsCPV2OK()){
	  FillHistogram(Form("hMiPi0CPV2_cen%d",fCentBin),m,pt, w) ;
	  FillHistogram(Form("hMiPi0CPV2core_cen%d",fCentBin),mcore, ptcore, w) ;

	  FillHistogram(Form("hMiMassPtV0ACPV2_cen%d",fCentBin),m,pt,dphiA, w) ;
	  FillHistogram(Form("hMiMassPtV0CCPV2_cen%d",fCentBin),m,pt,dphiC, w) ;
	  if(fHaveTPCRP)
 	    FillHistogram(Form("hMiMassPtTPCCPV2_cen%d",fCentBin),m,pt,dphiT, w) ;
	  FillHistogram(Form("hMiMassPtV0ACPV2core_cen%d",fCentBin),mcore,ptcore,dphiA, w) ;
	  FillHistogram(Form("hMiMassPtV0CCPV2core_cen%d",fCentBin),mcore,ptcore,dphiC, w) ;
	  if(fHaveTPCRP)
 	    FillHistogram(Form("hMiMassPtTPCCPV2core_cen%d",fCentBin),mcore,ptcore,dphiT, w) ;

	  if(a<kAlphaCut){
            FillHistogram(Form("hMiPi0CPV2_a07_cen%d",fCentBin),m,pt, w) ;
          }
	}
	if(ph1->IsDispOK() && ph2->IsDispOK()){
	  FillHistogram(Form("hMiMassPtV0ADisp_cen%d",fCentBin),m,pt,dphiA, w) ;
	  FillHistogram(Form("hMiMassPtV0CDisp_cen%d",fCentBin),m,pt,dphiC, w) ;
          if(fHaveTPCRP)
	    FillHistogram(Form("hMiMassPtTPCDisp_cen%d",fCentBin),m,pt,dphiT, w) ;

	  FillHistogram(Form("hMiMassPtV0ADispcore_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiA, w) ;
	  FillHistogram(Form("hMiMassPtV0CDispcore_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiC, w) ;
          if(fHaveTPCRP)
	    FillHistogram(Form("hMiMassPtTPCDispcore_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiT, w) ;


	  FillHistogram(Form("hMiPi0Disp_cen%d",fCentBin),m,pt, w) ;
	  FillHistogram(Form("hMiPi0Dispcore_cen%d",fCentBin),pv12.M(),pv12.Pt(), w) ;
          if(ph1->IsntUnfolded() && ph2->IsntUnfolded()){
	    FillHistogram(Form("hMiPi0Dispwou_cen%d",fCentBin),m,pt, w) ;
	    FillHistogram(Form("hMiMassPtV0ADispwou_cen%d",fCentBin),m,pt,dphiA, w) ;
	    FillHistogram(Form("hMiMassPtV0CDispwou_cen%d",fCentBin),m,pt,dphiC, w) ;
            if(fHaveTPCRP)
	      FillHistogram(Form("hMiMassPtTPCDispwou_cen%d",fCentBin),m,pt,dphiT, w) ;
	  }

	  if(a<kAlphaCut){
            FillHistogram(Form("hMiPi0Disp_a07_cen%d",fCentBin),m,pt, w) ;
          }
	  if(ph1->IsCPVOK() && ph2->IsCPVOK()){
	    FillHistogram(Form("hMiMassPtV0ABoth_cen%d",fCentBin),m,pt,dphiA, w) ;
	    FillHistogram(Form("hMiMassPtV0CBoth_cen%d",fCentBin),m,pt,dphiC, w) ;
	    if(fHaveTPCRP)
  	      FillHistogram(Form("hMiMassPtTPCBoth_cen%d",fCentBin),m,pt,dphiT, w) ;

	    FillHistogram(Form("hMiMassPtV0ABothcore_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiA, w) ;
	    FillHistogram(Form("hMiMassPtV0CBothcore_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiC, w) ;
	    if(fHaveTPCRP)
  	      FillHistogram(Form("hMiMassPtTPCBothcore_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiT, w) ;

	    FillHistogram(Form("hMiPi0Both_cen%d",fCentBin),m,pt, w) ;
	    FillHistogram(Form("hMiPi0Bothcore_cen%d",fCentBin),pv12.M(),pv12.Pt(), w) ;

	    if(a<kAlphaCut){
              FillHistogram(Form("hMiPi0Both_a07_cen%d",fCentBin),m,pt, w) ;
            }
	  }
	}
	
  	if(ph1->IsDisp2OK() && ph2->IsDisp2OK()){
	  FillHistogram(Form("hMiMassPtV0ADisp2_cen%d",fCentBin),m,pt,dphiA, w) ;
	  FillHistogram(Form("hMiMassPtV0CDisp2_cen%d",fCentBin),m,pt,dphiC, w) ;
          if(fHaveTPCRP)
	    FillHistogram(Form("hMiMassPtTPCDisp2_cen%d",fCentBin),m,pt,dphiT, w) ;

	  FillHistogram(Form("hMiMassPtV0ADisp2core_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiA, w) ;
	  FillHistogram(Form("hMiMassPtV0CDisp2core_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiC, w) ;
          if(fHaveTPCRP)
	    FillHistogram(Form("hMiMassPtTPCDisp2core_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiT, w) ;


	  FillHistogram(Form("hMiPi0Disp2_cen%d",fCentBin),m,pt, w) ;
	  FillHistogram(Form("hMiPi0Disp2core_cen%d",fCentBin),pv12.M(),pv12.Pt(), w) ;

	  if(ph1->IsCPVOK() && ph2->IsCPVOK()){
	    FillHistogram(Form("hMiMassPtV0ABoth2_cen%d",fCentBin),m,pt,dphiA, w) ;
	    FillHistogram(Form("hMiMassPtV0CBoth2_cen%d",fCentBin),m,pt,dphiC, w) ;
	    if(fHaveTPCRP)
  	      FillHistogram(Form("hMiMassPtTPCBoth2_cen%d",fCentBin),m,pt,dphiT, w) ;

	    FillHistogram(Form("hMiMassPtV0ABoth2core_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiA, w) ;
	    FillHistogram(Form("hMiMassPtV0CBoth2core_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiC, w) ;
	    if(fHaveTPCRP)
  	      FillHistogram(Form("hMiMassPtTPCBoth2core_cen%d",fCentBin),pv12.M(),pv12.Pt(),dphiT, w) ;

	    FillHistogram(Form("hMiPi0Both2_cen%d",fCentBin),m,pt, w) ;
	    FillHistogram(Form("hMiPi0Both2core_cen%d",fCentBin),pv12.M(),pv12.Pt(), w) ;

	  }
	}
      } // end of loop i2
    }
  } // end of loop i1
}


void AliAnalysisTaskPi0FlowMC::ProcessMC()
{
  FillMCHist();
  FillSecondaries() ;
}



//___________________________________________________________________________
void AliAnalysisTaskPi0FlowMC::FillMCHist(){
  //fill histograms for efficiensy etc. calculation

  //---------First pi0/eta-----------------------------
  char partName[10] ;
  char hkey[55] ;

  if(!fStack) return ;
  for(Int_t i=0;i<fStack->GetNtrack();i++){
     TParticle* particle =  fStack->Particle(i);
    if(particle->GetPdgCode() == kPi0)
      snprintf(partName,10,"pi0") ;
    else
      if(particle->GetPdgCode() == kEta)
        snprintf(partName,10,"eta") ;
      else
        if(particle->GetPdgCode() == kGamma)
           snprintf(partName,10,"gamma") ;
	else
	  if(particle->GetPdgCode() == 310)
	    snprintf(partName,10,"K0S") ;
	  else
	    continue ;

    //Primary particle
    Double_t r=particle->R() ;
    Double_t pt = particle->Pt() ;
    //Distribution over vertex
    FillHistogram(Form("hMC_%s_vertex",partName),pt,r) ;
    
    if(r >kRCut)
      continue ;

    Double_t phi=particle->Phi() ;
    while(phi<0.)phi+=TMath::TwoPi() ;
    while(phi>TMath::TwoPi())phi-=TMath::TwoPi() ;

    Double_t phig = 180./TMath::Pi()*phi; // phi in deg
    
    //Total number of pi0 with creation radius <1 cm
    Double_t weight = PrimaryParticleWeight(particle) ;  
    snprintf(hkey,55,"hMC_all_%s_cen%d",partName,fCentBin) ;
 
    FillHistogram(hkey,pt,weight) ;
    
    if(TMath::Abs(particle->Y())<0.135 && phig>260. && phig<320.){
      snprintf(hkey,55,"hMC_unitEta_%s_cen%d",partName,fCentBin) ;
      FillHistogram(hkey,pt,weight) ;
      
      snprintf(hkey,55,"hMC_rap_%s_cen%d",partName,fCentBin) ;
      FillHistogram(hkey,particle->Y(),weight) ;
    
      snprintf(hkey,55,"hMC_phi_%s_cen%d",partName,fCentBin) ;
      FillHistogram(hkey,phi,weight) ;
    }

  }
}

//________________________________________________________________________
void AliAnalysisTaskPi0FlowMC::FillSecondaries(){
  //Sort secondaires
  
  //Fill spectra of primary particles 
  //with proper weight
  if( fDebug )
    AliInfo("start");
  for(Int_t i=0; i<fStack->GetNtrack(); i++){
    TParticle * p = fStack->Particle(i) ;
    if(p->R()>kRCut)
      continue ;
    if( TMath::Abs(p->Pt())<1.e-6 )
      continue;
    if(TMath::Abs(p->Y())>0.5)
      continue ;
    Double_t w = PrimaryParticleWeight(p) ;  
    Int_t primPdgCode=p->GetPdgCode() ;
      switch(primPdgCode){
	case  kGamma: FillHistogram(Form("hPrimPhot_cen%d",fCentBin),p->Pt(),w); 
	          break ;
	case  kElectron: 
	case -kElectron: 
	          FillHistogram(Form("hPrimEl_cen%d",fCentBin),p->Pt(),w); 
	          break ;
	case  kPi0: 
	          FillHistogram(Form("hPrimPi0_cen%d",fCentBin),p->Pt(),w); 
	          break ;
	case  kEta: 
	          FillHistogram(Form("hPrimEta_cen%d",fCentBin),p->Pt(),w); 
	          break ;
	case  kPiPlus: 
	case  kPiMinus: 
	          FillHistogram(Form("hPrimPipm_cen%d",fCentBin),p->Pt(),w); 
	          break ;		  
	case  kProton:  //p 
	          FillHistogram(Form("hPrimP_cen%d",fCentBin),p->Pt(),w); 
	          break ;		  
	case kProtonBar:  //pbar
	          FillHistogram(Form("hPrimPbar_cen%d",fCentBin),p->Pt(),w); 
	          break ;		  
	case  kNeutron:  //n 
	          FillHistogram(Form("hPrimN_cen%d",fCentBin),p->Pt(),w); 
	          break ;		  
	case  kNeutronBar:  //nbar
	          FillHistogram(Form("hPrimNbar_cen%d",fCentBin),p->Pt(),w); 
	          break ;
	case  310:  //nbar
	          FillHistogram(Form("hPrimK0S_cen%d",fCentBin),p->Pt(),w); 
	          break ;
	case  130:  //nbar
	          FillHistogram(Form("hPrimK0L_cen%d",fCentBin),p->Pt(),w); 
	          break ;
	case  321:  //K+
	case -321:  //K-
	          FillHistogram(Form("hPrimKpm_cen%d",fCentBin),p->Pt(),w); 
	          break ;
	default:	   //other
	          FillHistogram(Form("hPrimOther_cen%d",fCentBin),p->Pt(),w);    
      }
  }
  if(fDebug)
    AliInfo("Origins of secondary pi0s");
  //Origins of secondary pi0s
  for(Int_t i=0; i<fStack->GetNtrack(); i++){
    TParticle * p = fStack->Particle(i) ;
    if(p->GetPdgCode()!=111)
      continue ;
    FillHistogram("Vertex",p->Pt(),p->R());
    if(p->R()<kRCut)
      continue ;
    Double_t phi=p->Phi() ;
    while(phi<0.)phi+=TMath::TwoPi() ;
    while(phi>TMath::TwoPi())phi-=TMath::TwoPi() ;
    FillHistogram("hSecondPi0RphiZ",p->R(),phi,p->Vz()) ;   
    Double_t w = PrimaryParticleWeight(p) ;  
    FillHistogram("hSecondPi0RE",p->R(),p->Pt(),w) ;   
  }

  TLorentzVector p1;

  Int_t inPHOS=fCaloPhotonsPHOS->GetEntries() ;
  for (Int_t i1=0; i1<inPHOS-1; i1++) {
    AliCaloPhoton * ph1=(AliCaloPhoton*)fCaloPhotonsPHOS->At(i1) ;
    Double_t w1=ph1->GetWeight() ;
    for (Int_t i2=i1+1; i2<inPHOS; i2++) {
      AliCaloPhoton * ph2=(AliCaloPhoton*)fCaloPhotonsPHOS->At(i2) ;
      TLorentzVector p12  = *ph1  + *ph2;
      Double_t w2=ph2->GetWeight() ;
      Double_t w = TMath::Sqrt(w1*w2) ;
      FillHistogram(Form("hParentAll_cen%d",fCentBin),p12.M(),p12.Pt(),w) ;
      Int_t prim=FindCommonParent(ph1->GetPrimary(),ph2->GetPrimary()) ;
      if(prim>-1){
        TParticle * particle = (TParticle *)fStack->Particle(prim);
        FillHistogram("hMass_R",p12.M(),p12.Pt(),TMath::Sqrt(particle->R()*particle->R()+particle->Vz()*particle->Vz())) ;
		
	
        Int_t pdgCode=particle->GetPdgCode() ;
        if(pdgCode!=111){ //common parent - not pi0
          if(pdgCode==22)  
            FillHistogram(Form("hParentGamma_cen%d",fCentBin),p12.M(),p12.Pt(),w) ;
	  else{		    
            if(pdgCode==11 || pdgCode==-11){   
              FillHistogram(Form("hParentEl_cen%d",fCentBin),p12.M(),p12.Pt(),w) ;
	    }
  	    else{
              if(InPi0mass(p12.M() ,p12.Pt())){
	        if(fDebug >1) AliInfo(Form("Common parent: %d",pdgCode));
	      }
              FillHistogram(Form("hParentOther_cen%d",fCentBin),p12.M(),p12.Pt(),w) ;
	    }
	  }//Not photons
        }//Common parent not pi0
        else{ //common parent - pi0
          FillHistogram(Form("hParentPi0_cen%d",fCentBin),p12.M(),p12.Pt(),w) ;	
          FillHistogram(Form("Real_pi_R"),p12.M(),p12.Pt(),particle->R(),w) ;	
          FillHistogram(Form("Real_pi_Z"),p12.M(),p12.Pt(),particle->Vz(),w) ;	
	  if(particle->R()<kRCut && TMath::Abs(particle->Vz())<fMaxAbsVertexZ){
            FillHistogram(Form("hParentDirPi0_cen%d",fCentBin),p12.M(),p12.Pt(),w) ;
	    continue ;
	  }
	  //Common particle pi0, created off-vertex
  	  Int_t primPi0=particle->GetFirstMother();
	  if(primPi0==-1){
            FillHistogram(Form("hParentPi0NoPrim_cen%d",fCentBin),p12.M(),p12.Pt(),w) ;
	  }
	  else{
    	    Int_t primPdgCode=fStack->Particle(primPi0)->GetPdgCode() ;
            switch(primPdgCode){
            case 221: FillHistogram(Form("hParentPi0Eta_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; //eta
	              break ;
            case 223: FillHistogram(Form("hParentPi0Omega_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; //omega
	              break ;
	    case  211:  //pi+-
	    case -211: FillHistogram(Form("hParentPi0Pipm_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; //
	              break ;
	    case  321:  //K+-
	    case -321: FillHistogram(Form("hParentPi0Kpm_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; //
	              break ;
	    case 310: FillHistogram(Form("hParentPi0Ks_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; // K0S
	              break ;
	    case 130: FillHistogram(Form("hParentPi0Kl_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; // K0L
	              break ;
	    case  2212:  //p 
	    case  2112:  //n 
		      FillHistogram(Form("hParentPi0pn_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; // pn
	              break ;
	    case -2212:  //pbar
	    case -2112:  //nbar
		      FillHistogram(Form("hParentPi0antipn_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; // pn
	              break ;
	    default:	   //other
		      FillHistogram(Form("hParentPi0Other_cen%d",fCentBin),p12.M(),p12.Pt(),w) ; //
	    }//switch	  
          }//pi0 with primary
        }//common parent - pi0
      }//there is common primary 
    }//seond photon loop
  }//first photon loop
  
  
  //Now look at photon contaiminations
  for (Int_t i1=0; i1<inPHOS-1; i1++) {
    AliCaloPhoton * ph1=(AliCaloPhoton*)fCaloPhotonsPHOS->At(i1) ;
    Int_t iprim = ph1->GetPrimary() ;
    if(iprim<0)
      FillAllHistograms(Form("hGammaNoPrim_cen%d",fCentBin),ph1) ; //
    else{
      //Find primary at vertex
      TParticle * primPHOS = fStack->Particle(iprim) ;
      Int_t iprimV=primPHOS->GetFirstMother();
      TParticle * primVtx = primPHOS ;
      while((iprimV>-1) && primVtx->R()>kRCut){
	primVtx = fStack->Particle(iprimV) ;
        iprimV=primVtx->GetFirstMother();
      }
    
      //photon
      Int_t primPdgCode=primVtx->GetPdgCode() ;
      switch(primPdgCode){
	case  22: FillAllHistograms("hGammaPhot",ph1); 
	          break ;
	case  11: 
	case -11: 
	          FillAllHistograms("hGammaEl",ph1); 
	          break ;
	case  111: 
	          FillAllHistograms("hGammaPi0",ph1); 
	          break ;
	case  221: 
	          FillAllHistograms("hGammaEta",ph1); 
	          break ;
        case 223: FillAllHistograms("hGammaOmega",ph1) ; //omega
	          break ;
	case  211: 
	case -211: 
	          FillAllHistograms("hGammaPipm",ph1); 
		  //Find particle entered PHOS
		  if(primVtx == primPHOS)
	            FillAllHistograms("hGammaPipmDirect",ph1); 
		  else{
                    Int_t primPdgPHOS=primPHOS->GetPdgCode() ;
		    if(primPdgPHOS==22){
	               FillAllHistograms("hGammaPipmGamma",ph1); 
		       FillHistogram("hPipmGammaConvR",ph1->Pt(),primPHOS->R());
 		       FillHistogram("hPipmGammaConvRZ",primPHOS->Vz(),primPHOS->R());
 	               break ;		  
		    }
		    if(TMath::Abs(primPdgPHOS)==11){
	               FillAllHistograms("hGammaPipmEl",ph1); 
		       FillHistogram("hPipmElConvR",ph1->Pt(),primPHOS->R());
	               break ;		  
		    }
		    if(TMath::Abs(primPdgPHOS)==2212){
	               FillAllHistograms("hGammaPipmp",ph1); 
		       FillHistogram("hPipmNConvR",ph1->Pt(),primPHOS->R());
	               break ;		  
		    }
		    if(TMath::Abs(primPdgPHOS)==2112){
	               FillAllHistograms("hGammaPipmn",ph1); 
		       FillHistogram("hPipmNConvR",ph1->Pt(),primPHOS->R());
	               break ;		  
		    }
	            FillAllHistograms("hGammaPipmOther",ph1); 
		    FillHistogram("hPipmOtherConvR",ph1->Pt(),primPHOS->R());		    
		  }
	          break ;		  
	case  2212:  //p 
	          FillAllHistograms("hGammaP",ph1); 
	          break ;		  
	case -2212:  //pbar
	          FillAllHistograms("hGammaPbar",ph1); 
	          break ;		  
	case  2112:  //n 
	          FillAllHistograms("hGammaN",ph1); 
	          break ;		  
	case -2112:  //nbar
		  FillAllHistograms("hGammaNbar",ph1) ; // pn
	          break ;
	case  310:  //nbar
		  FillAllHistograms("hGammaK0S",ph1) ; // pn
	          break ;
	case  130:  //nbar
		  FillAllHistograms("hGammaK0L",ph1) ; // pn
	          break ;
	case  321:  //K+
	case -321:  //K-
		  FillAllHistograms("hGammaKpm",ph1) ; // pn
	          break ;
        case -323: 
        case  323: 
        case -313: 
        case  313: FillAllHistograms("hGammaKstar",ph1) ; // K*(892)
	          break ;
		  
	case -2224 : //Deltas
	case  2224 : //Deltas
	case -2214 : //Deltas
	case  2214 : //Deltas
	case -2114 : //Deltas
	case  2114 : //Deltas
	case -1114 : //Deltas
	case  1114 : //Deltas
	          FillAllHistograms("hGammaDelta",ph1) ; // pn
	          break ;		  
	default:	   //other
	    if(primVtx->GetPDG()->Charge())
	      FillAllHistograms("hGammaOtherCharged",ph1) ; //
            else
	      FillAllHistograms("hGammaOtherNeutral",ph1) ; //
      }
    }
  
  }//single photons
}

//_____________________________________________________________________________
void AliAnalysisTaskPi0FlowMC::FillAllHistograms(const char * particleName,AliCaloPhoton * ph)
{
  //Fill All PID histograms
        
  Double_t w=ph->GetWeight() ;
  Double_t pt = ph->Pt() ;
  Double_t ptC=ph->GetMomV2()->Pt() ;
  FillHistogram(Form("%s_All_cen%d",particleName,fCentBin),pt,w) ;
  FillHistogram(Form("%s_Allcore_cen%d",particleName,fCentBin),ptC,w) ;
  if(ph->IsCPVOK()){
    FillHistogram(Form("%s_CPV_cen%d",particleName,fCentBin),pt,w) ;
    FillHistogram(Form("%s_CPVcore_cen%d",particleName,fCentBin),ptC,w) ;
  }
  if(ph->IsCPV2OK()){
    FillHistogram(Form("%s_CPV2_cen%d",particleName,fCentBin),pt,w) ;
    FillHistogram(Form("%s_CPV2core_cen%d",particleName,fCentBin),ptC,w) ;
  }
  if(ph->IsDispOK()){     
    FillHistogram(Form("%s_Disp_cen%d",particleName,fCentBin),pt,w) ;
    FillHistogram(Form("%s_Dispcore_cen%d",particleName,fCentBin),ptC,w) ;
    if(ph->IsDisp2OK()){
      FillHistogram(Form("%s_Disp2_cen%d",particleName,fCentBin),pt,w) ;
      FillHistogram(Form("%s_Disp2core_cen%d",particleName,fCentBin),ptC,w) ;
    }
    if(ph->IsCPVOK()){
      FillHistogram(Form("%s_Both_cen%d",particleName,fCentBin),pt,w) ;
      FillHistogram(Form("%s_Bothcore_cen%d",particleName,fCentBin),ptC,w) ;
    }
  }  
}


//___________________________________________________________________________
Double_t AliAnalysisTaskPi0FlowMC::PrimaryWeight(Int_t /* primary */){
  return 1.;
}
//________________________________________________________________________
Double_t AliAnalysisTaskPi0FlowMC::PrimaryParticleWeight(TParticle * /* particle */){
  return 1.;
}

//___________________________________________________________________________
AliStack* AliAnalysisTaskPi0FlowMC::GetMCStack()
{
  fStack = 0;
  AliVEventHandler* eventHandler = AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler();
  if(eventHandler){
    AliMCEventHandler* mcEventHandler = dynamic_cast<AliMCEventHandler*> (eventHandler);
    if( mcEventHandler)
      fStack = static_cast<AliMCEventHandler*>(AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler())->MCEvent()->Stack();
  }
  
  if( ! fStack )
    AliError("Could not get MC Stack!");
  return fStack;
}

Int_t AliAnalysisTaskPi0FlowMC::FindPrimary(AliVCluster*clu,  Bool_t&sure){
  //Finds primary and estimates if it unique one?
  //First check can it be photon/electron
  const Double_t emFraction=0.9; //part of energy of cluster to be assigned to EM particle
  Int_t n=clu->GetNLabels() ;
  for(Int_t i=0;  i<n;  i++){
    TParticle*  p=  fStack->Particle(clu->GetLabelAt(i)) ;
    Int_t pdg = p->GetPdgCode() ;
    if(pdg==22  ||  pdg==11 || pdg == -11){
      if(p->Energy()>emFraction*clu->E()){
	sure=kTRUE ;
	return clu->GetLabelAt(i);
      }
    }
  }

  Double_t*  Ekin=  new  Double_t[n] ;
  for(Int_t i=0;  i<n;  i++){
    TParticle*  p=  fStack->Particle(clu->GetLabelAt(i)) ;
    Ekin[i]=p->P() ;  // estimate of kinetic energy
    if(p->GetPdgCode()==-2212  ||  p->GetPdgCode()==-2112){
      Ekin[i]+=1.8  ;  //due to annihilation
    }
  }
  Int_t iMax=0;
  Double_t eMax=0.,eSubMax=0. ;
  for(Int_t i=0;  i<n;  i++){
    if(Ekin[i]>eMax){
      eSubMax=eMax;
      eMax=Ekin[i];
      iMax=i;
    }
  }
  if(eSubMax>0.8*eMax)//not obvious primary
    sure=kFALSE;
  else
    sure=kTRUE;
  delete[]  Ekin;
  return  clu->GetLabelAt(iMax) ;
}

//________________________________________________________________________
Int_t AliAnalysisTaskPi0FlowMC::FindCommonParent(Int_t iPart, Int_t jPart){
  //check if there is a common parent for particles i and j
  // -1: no common parent or wrong iPart/jPart
  
  if(iPart==-1 || iPart>=fStack->GetNtrack() || 
     jPart==-1 || jPart>=fStack->GetNtrack()) return -1;
  
  Int_t iprim1=iPart;
  while(iprim1>-1){  
     Int_t iprim2=jPart;
     while(iprim2>-1){
       if(iprim1==iprim2)
	 return iprim1 ;
       iprim2=((TParticle *)fStack->Particle(iprim2))->GetFirstMother();
     }
     iprim1=((TParticle *)fStack->Particle(iprim1))->GetFirstMother();
  }
  return -1;
}
//________________________________________________________________________
Bool_t AliAnalysisTaskPi0FlowMC::HaveParent(Int_t iPart, Int_t pdgParent){
  //check if there is a common parent for particles i and j
  // -1: no common parent or wrong iPart/jPart
  
  if(iPart==-1 || iPart>=fStack->GetNtrack()) return -1;
  
  Int_t iprim1=iPart;
  while(iprim1>-1){  
    TParticle * tmp = fStack->Particle(iprim1) ;
    if(tmp->GetPdgCode()==pdgParent)
      return kTRUE ;
    iprim1=tmp->GetFirstMother();
  }
  return kFALSE;
}
//________________________________________________________________________
Bool_t AliAnalysisTaskPi0FlowMC::InPi0mass(Double_t m, Double_t /*pt*/){

 return TMath::Abs(m-0.135)<0.007*2.5 ;
}

 AliAnalysisTaskPi0FlowMC.cxx:1
 AliAnalysisTaskPi0FlowMC.cxx:2
 AliAnalysisTaskPi0FlowMC.cxx:3
 AliAnalysisTaskPi0FlowMC.cxx:4
 AliAnalysisTaskPi0FlowMC.cxx:5
 AliAnalysisTaskPi0FlowMC.cxx:6
 AliAnalysisTaskPi0FlowMC.cxx:7
 AliAnalysisTaskPi0FlowMC.cxx:8
 AliAnalysisTaskPi0FlowMC.cxx:9
 AliAnalysisTaskPi0FlowMC.cxx:10
 AliAnalysisTaskPi0FlowMC.cxx:11
 AliAnalysisTaskPi0FlowMC.cxx:12
 AliAnalysisTaskPi0FlowMC.cxx:13
 AliAnalysisTaskPi0FlowMC.cxx:14
 AliAnalysisTaskPi0FlowMC.cxx:15
 AliAnalysisTaskPi0FlowMC.cxx:16
 AliAnalysisTaskPi0FlowMC.cxx:17
 AliAnalysisTaskPi0FlowMC.cxx:18
 AliAnalysisTaskPi0FlowMC.cxx:19
 AliAnalysisTaskPi0FlowMC.cxx:20
 AliAnalysisTaskPi0FlowMC.cxx:21
 AliAnalysisTaskPi0FlowMC.cxx:22
 AliAnalysisTaskPi0FlowMC.cxx:23
 AliAnalysisTaskPi0FlowMC.cxx:24
 AliAnalysisTaskPi0FlowMC.cxx:25
 AliAnalysisTaskPi0FlowMC.cxx:26
 AliAnalysisTaskPi0FlowMC.cxx:27
 AliAnalysisTaskPi0FlowMC.cxx:28
 AliAnalysisTaskPi0FlowMC.cxx:29
 AliAnalysisTaskPi0FlowMC.cxx:30
 AliAnalysisTaskPi0FlowMC.cxx:31
 AliAnalysisTaskPi0FlowMC.cxx:32
 AliAnalysisTaskPi0FlowMC.cxx:33
 AliAnalysisTaskPi0FlowMC.cxx:34
 AliAnalysisTaskPi0FlowMC.cxx:35
 AliAnalysisTaskPi0FlowMC.cxx:36
 AliAnalysisTaskPi0FlowMC.cxx:37
 AliAnalysisTaskPi0FlowMC.cxx:38
 AliAnalysisTaskPi0FlowMC.cxx:39
 AliAnalysisTaskPi0FlowMC.cxx:40
 AliAnalysisTaskPi0FlowMC.cxx:41
 AliAnalysisTaskPi0FlowMC.cxx:42
 AliAnalysisTaskPi0FlowMC.cxx:43
 AliAnalysisTaskPi0FlowMC.cxx:44
 AliAnalysisTaskPi0FlowMC.cxx:45
 AliAnalysisTaskPi0FlowMC.cxx:46
 AliAnalysisTaskPi0FlowMC.cxx:47
 AliAnalysisTaskPi0FlowMC.cxx:48
 AliAnalysisTaskPi0FlowMC.cxx:49
 AliAnalysisTaskPi0FlowMC.cxx:50
 AliAnalysisTaskPi0FlowMC.cxx:51
 AliAnalysisTaskPi0FlowMC.cxx:52
 AliAnalysisTaskPi0FlowMC.cxx:53
 AliAnalysisTaskPi0FlowMC.cxx:54
 AliAnalysisTaskPi0FlowMC.cxx:55
 AliAnalysisTaskPi0FlowMC.cxx:56
 AliAnalysisTaskPi0FlowMC.cxx:57
 AliAnalysisTaskPi0FlowMC.cxx:58
 AliAnalysisTaskPi0FlowMC.cxx:59
 AliAnalysisTaskPi0FlowMC.cxx:60
 AliAnalysisTaskPi0FlowMC.cxx:61
 AliAnalysisTaskPi0FlowMC.cxx:62
 AliAnalysisTaskPi0FlowMC.cxx:63
 AliAnalysisTaskPi0FlowMC.cxx:64
 AliAnalysisTaskPi0FlowMC.cxx:65
 AliAnalysisTaskPi0FlowMC.cxx:66
 AliAnalysisTaskPi0FlowMC.cxx:67
 AliAnalysisTaskPi0FlowMC.cxx:68
 AliAnalysisTaskPi0FlowMC.cxx:69
 AliAnalysisTaskPi0FlowMC.cxx:70
 AliAnalysisTaskPi0FlowMC.cxx:71
 AliAnalysisTaskPi0FlowMC.cxx:72
 AliAnalysisTaskPi0FlowMC.cxx:73
 AliAnalysisTaskPi0FlowMC.cxx:74
 AliAnalysisTaskPi0FlowMC.cxx:75
 AliAnalysisTaskPi0FlowMC.cxx:76
 AliAnalysisTaskPi0FlowMC.cxx:77
 AliAnalysisTaskPi0FlowMC.cxx:78
 AliAnalysisTaskPi0FlowMC.cxx:79
 AliAnalysisTaskPi0FlowMC.cxx:80
 AliAnalysisTaskPi0FlowMC.cxx:81
 AliAnalysisTaskPi0FlowMC.cxx:82
 AliAnalysisTaskPi0FlowMC.cxx:83
 AliAnalysisTaskPi0FlowMC.cxx:84
 AliAnalysisTaskPi0FlowMC.cxx:85
 AliAnalysisTaskPi0FlowMC.cxx:86
 AliAnalysisTaskPi0FlowMC.cxx:87
 AliAnalysisTaskPi0FlowMC.cxx:88
 AliAnalysisTaskPi0FlowMC.cxx:89
 AliAnalysisTaskPi0FlowMC.cxx:90
 AliAnalysisTaskPi0FlowMC.cxx:91
 AliAnalysisTaskPi0FlowMC.cxx:92
 AliAnalysisTaskPi0FlowMC.cxx:93
 AliAnalysisTaskPi0FlowMC.cxx:94
 AliAnalysisTaskPi0FlowMC.cxx:95
 AliAnalysisTaskPi0FlowMC.cxx:96
 AliAnalysisTaskPi0FlowMC.cxx:97
 AliAnalysisTaskPi0FlowMC.cxx:98
 AliAnalysisTaskPi0FlowMC.cxx:99
 AliAnalysisTaskPi0FlowMC.cxx:100
 AliAnalysisTaskPi0FlowMC.cxx:101
 AliAnalysisTaskPi0FlowMC.cxx:102
 AliAnalysisTaskPi0FlowMC.cxx:103
 AliAnalysisTaskPi0FlowMC.cxx:104
 AliAnalysisTaskPi0FlowMC.cxx:105
 AliAnalysisTaskPi0FlowMC.cxx:106
 AliAnalysisTaskPi0FlowMC.cxx:107
 AliAnalysisTaskPi0FlowMC.cxx:108
 AliAnalysisTaskPi0FlowMC.cxx:109
 AliAnalysisTaskPi0FlowMC.cxx:110
 AliAnalysisTaskPi0FlowMC.cxx:111
 AliAnalysisTaskPi0FlowMC.cxx:112
 AliAnalysisTaskPi0FlowMC.cxx:113
 AliAnalysisTaskPi0FlowMC.cxx:114
 AliAnalysisTaskPi0FlowMC.cxx:115
 AliAnalysisTaskPi0FlowMC.cxx:116
 AliAnalysisTaskPi0FlowMC.cxx:117
 AliAnalysisTaskPi0FlowMC.cxx:118
 AliAnalysisTaskPi0FlowMC.cxx:119
 AliAnalysisTaskPi0FlowMC.cxx:120
 AliAnalysisTaskPi0FlowMC.cxx:121
 AliAnalysisTaskPi0FlowMC.cxx:122
 AliAnalysisTaskPi0FlowMC.cxx:123
 AliAnalysisTaskPi0FlowMC.cxx:124
 AliAnalysisTaskPi0FlowMC.cxx:125
 AliAnalysisTaskPi0FlowMC.cxx:126
 AliAnalysisTaskPi0FlowMC.cxx:127
 AliAnalysisTaskPi0FlowMC.cxx:128
 AliAnalysisTaskPi0FlowMC.cxx:129
 AliAnalysisTaskPi0FlowMC.cxx:130
 AliAnalysisTaskPi0FlowMC.cxx:131
 AliAnalysisTaskPi0FlowMC.cxx:132
 AliAnalysisTaskPi0FlowMC.cxx:133
 AliAnalysisTaskPi0FlowMC.cxx:134
 AliAnalysisTaskPi0FlowMC.cxx:135
 AliAnalysisTaskPi0FlowMC.cxx:136
 AliAnalysisTaskPi0FlowMC.cxx:137
 AliAnalysisTaskPi0FlowMC.cxx:138
 AliAnalysisTaskPi0FlowMC.cxx:139
 AliAnalysisTaskPi0FlowMC.cxx:140
 AliAnalysisTaskPi0FlowMC.cxx:141
 AliAnalysisTaskPi0FlowMC.cxx:142
 AliAnalysisTaskPi0FlowMC.cxx:143
 AliAnalysisTaskPi0FlowMC.cxx:144
 AliAnalysisTaskPi0FlowMC.cxx:145
 AliAnalysisTaskPi0FlowMC.cxx:146
 AliAnalysisTaskPi0FlowMC.cxx:147
 AliAnalysisTaskPi0FlowMC.cxx:148
 AliAnalysisTaskPi0FlowMC.cxx:149
 AliAnalysisTaskPi0FlowMC.cxx:150
 AliAnalysisTaskPi0FlowMC.cxx:151
 AliAnalysisTaskPi0FlowMC.cxx:152
 AliAnalysisTaskPi0FlowMC.cxx:153
 AliAnalysisTaskPi0FlowMC.cxx:154
 AliAnalysisTaskPi0FlowMC.cxx:155
 AliAnalysisTaskPi0FlowMC.cxx:156
 AliAnalysisTaskPi0FlowMC.cxx:157
 AliAnalysisTaskPi0FlowMC.cxx:158
 AliAnalysisTaskPi0FlowMC.cxx:159
 AliAnalysisTaskPi0FlowMC.cxx:160
 AliAnalysisTaskPi0FlowMC.cxx:161
 AliAnalysisTaskPi0FlowMC.cxx:162
 AliAnalysisTaskPi0FlowMC.cxx:163
 AliAnalysisTaskPi0FlowMC.cxx:164
 AliAnalysisTaskPi0FlowMC.cxx:165
 AliAnalysisTaskPi0FlowMC.cxx:166
 AliAnalysisTaskPi0FlowMC.cxx:167
 AliAnalysisTaskPi0FlowMC.cxx:168
 AliAnalysisTaskPi0FlowMC.cxx:169
 AliAnalysisTaskPi0FlowMC.cxx:170
 AliAnalysisTaskPi0FlowMC.cxx:171
 AliAnalysisTaskPi0FlowMC.cxx:172
 AliAnalysisTaskPi0FlowMC.cxx:173
 AliAnalysisTaskPi0FlowMC.cxx:174
 AliAnalysisTaskPi0FlowMC.cxx:175
 AliAnalysisTaskPi0FlowMC.cxx:176
 AliAnalysisTaskPi0FlowMC.cxx:177
 AliAnalysisTaskPi0FlowMC.cxx:178
 AliAnalysisTaskPi0FlowMC.cxx:179
 AliAnalysisTaskPi0FlowMC.cxx:180
 AliAnalysisTaskPi0FlowMC.cxx:181
 AliAnalysisTaskPi0FlowMC.cxx:182
 AliAnalysisTaskPi0FlowMC.cxx:183
 AliAnalysisTaskPi0FlowMC.cxx:184
 AliAnalysisTaskPi0FlowMC.cxx:185
 AliAnalysisTaskPi0FlowMC.cxx:186
 AliAnalysisTaskPi0FlowMC.cxx:187
 AliAnalysisTaskPi0FlowMC.cxx:188
 AliAnalysisTaskPi0FlowMC.cxx:189
 AliAnalysisTaskPi0FlowMC.cxx:190
 AliAnalysisTaskPi0FlowMC.cxx:191
 AliAnalysisTaskPi0FlowMC.cxx:192
 AliAnalysisTaskPi0FlowMC.cxx:193
 AliAnalysisTaskPi0FlowMC.cxx:194
 AliAnalysisTaskPi0FlowMC.cxx:195
 AliAnalysisTaskPi0FlowMC.cxx:196
 AliAnalysisTaskPi0FlowMC.cxx:197
 AliAnalysisTaskPi0FlowMC.cxx:198
 AliAnalysisTaskPi0FlowMC.cxx:199
 AliAnalysisTaskPi0FlowMC.cxx:200
 AliAnalysisTaskPi0FlowMC.cxx:201
 AliAnalysisTaskPi0FlowMC.cxx:202
 AliAnalysisTaskPi0FlowMC.cxx:203
 AliAnalysisTaskPi0FlowMC.cxx:204
 AliAnalysisTaskPi0FlowMC.cxx:205
 AliAnalysisTaskPi0FlowMC.cxx:206
 AliAnalysisTaskPi0FlowMC.cxx:207
 AliAnalysisTaskPi0FlowMC.cxx:208
 AliAnalysisTaskPi0FlowMC.cxx:209
 AliAnalysisTaskPi0FlowMC.cxx:210
 AliAnalysisTaskPi0FlowMC.cxx:211
 AliAnalysisTaskPi0FlowMC.cxx:212
 AliAnalysisTaskPi0FlowMC.cxx:213
 AliAnalysisTaskPi0FlowMC.cxx:214
 AliAnalysisTaskPi0FlowMC.cxx:215
 AliAnalysisTaskPi0FlowMC.cxx:216
 AliAnalysisTaskPi0FlowMC.cxx:217
 AliAnalysisTaskPi0FlowMC.cxx:218
 AliAnalysisTaskPi0FlowMC.cxx:219
 AliAnalysisTaskPi0FlowMC.cxx:220
 AliAnalysisTaskPi0FlowMC.cxx:221
 AliAnalysisTaskPi0FlowMC.cxx:222
 AliAnalysisTaskPi0FlowMC.cxx:223
 AliAnalysisTaskPi0FlowMC.cxx:224
 AliAnalysisTaskPi0FlowMC.cxx:225
 AliAnalysisTaskPi0FlowMC.cxx:226
 AliAnalysisTaskPi0FlowMC.cxx:227
 AliAnalysisTaskPi0FlowMC.cxx:228
 AliAnalysisTaskPi0FlowMC.cxx:229
 AliAnalysisTaskPi0FlowMC.cxx:230
 AliAnalysisTaskPi0FlowMC.cxx:231
 AliAnalysisTaskPi0FlowMC.cxx:232
 AliAnalysisTaskPi0FlowMC.cxx:233
 AliAnalysisTaskPi0FlowMC.cxx:234
 AliAnalysisTaskPi0FlowMC.cxx:235
 AliAnalysisTaskPi0FlowMC.cxx:236
 AliAnalysisTaskPi0FlowMC.cxx:237
 AliAnalysisTaskPi0FlowMC.cxx:238
 AliAnalysisTaskPi0FlowMC.cxx:239
 AliAnalysisTaskPi0FlowMC.cxx:240
 AliAnalysisTaskPi0FlowMC.cxx:241
 AliAnalysisTaskPi0FlowMC.cxx:242
 AliAnalysisTaskPi0FlowMC.cxx:243
 AliAnalysisTaskPi0FlowMC.cxx:244
 AliAnalysisTaskPi0FlowMC.cxx:245
 AliAnalysisTaskPi0FlowMC.cxx:246
 AliAnalysisTaskPi0FlowMC.cxx:247
 AliAnalysisTaskPi0FlowMC.cxx:248
 AliAnalysisTaskPi0FlowMC.cxx:249
 AliAnalysisTaskPi0FlowMC.cxx:250
 AliAnalysisTaskPi0FlowMC.cxx:251
 AliAnalysisTaskPi0FlowMC.cxx:252
 AliAnalysisTaskPi0FlowMC.cxx:253
 AliAnalysisTaskPi0FlowMC.cxx:254
 AliAnalysisTaskPi0FlowMC.cxx:255
 AliAnalysisTaskPi0FlowMC.cxx:256
 AliAnalysisTaskPi0FlowMC.cxx:257
 AliAnalysisTaskPi0FlowMC.cxx:258
 AliAnalysisTaskPi0FlowMC.cxx:259
 AliAnalysisTaskPi0FlowMC.cxx:260
 AliAnalysisTaskPi0FlowMC.cxx:261
 AliAnalysisTaskPi0FlowMC.cxx:262
 AliAnalysisTaskPi0FlowMC.cxx:263
 AliAnalysisTaskPi0FlowMC.cxx:264
 AliAnalysisTaskPi0FlowMC.cxx:265
 AliAnalysisTaskPi0FlowMC.cxx:266
 AliAnalysisTaskPi0FlowMC.cxx:267
 AliAnalysisTaskPi0FlowMC.cxx:268
 AliAnalysisTaskPi0FlowMC.cxx:269
 AliAnalysisTaskPi0FlowMC.cxx:270
 AliAnalysisTaskPi0FlowMC.cxx:271
 AliAnalysisTaskPi0FlowMC.cxx:272
 AliAnalysisTaskPi0FlowMC.cxx:273
 AliAnalysisTaskPi0FlowMC.cxx:274
 AliAnalysisTaskPi0FlowMC.cxx:275
 AliAnalysisTaskPi0FlowMC.cxx:276
 AliAnalysisTaskPi0FlowMC.cxx:277
 AliAnalysisTaskPi0FlowMC.cxx:278
 AliAnalysisTaskPi0FlowMC.cxx:279
 AliAnalysisTaskPi0FlowMC.cxx:280
 AliAnalysisTaskPi0FlowMC.cxx:281
 AliAnalysisTaskPi0FlowMC.cxx:282
 AliAnalysisTaskPi0FlowMC.cxx:283
 AliAnalysisTaskPi0FlowMC.cxx:284
 AliAnalysisTaskPi0FlowMC.cxx:285
 AliAnalysisTaskPi0FlowMC.cxx:286
 AliAnalysisTaskPi0FlowMC.cxx:287
 AliAnalysisTaskPi0FlowMC.cxx:288
 AliAnalysisTaskPi0FlowMC.cxx:289
 AliAnalysisTaskPi0FlowMC.cxx:290
 AliAnalysisTaskPi0FlowMC.cxx:291
 AliAnalysisTaskPi0FlowMC.cxx:292
 AliAnalysisTaskPi0FlowMC.cxx:293
 AliAnalysisTaskPi0FlowMC.cxx:294
 AliAnalysisTaskPi0FlowMC.cxx:295
 AliAnalysisTaskPi0FlowMC.cxx:296
 AliAnalysisTaskPi0FlowMC.cxx:297
 AliAnalysisTaskPi0FlowMC.cxx:298
 AliAnalysisTaskPi0FlowMC.cxx:299
 AliAnalysisTaskPi0FlowMC.cxx:300
 AliAnalysisTaskPi0FlowMC.cxx:301
 AliAnalysisTaskPi0FlowMC.cxx:302
 AliAnalysisTaskPi0FlowMC.cxx:303
 AliAnalysisTaskPi0FlowMC.cxx:304
 AliAnalysisTaskPi0FlowMC.cxx:305
 AliAnalysisTaskPi0FlowMC.cxx:306
 AliAnalysisTaskPi0FlowMC.cxx:307
 AliAnalysisTaskPi0FlowMC.cxx:308
 AliAnalysisTaskPi0FlowMC.cxx:309
 AliAnalysisTaskPi0FlowMC.cxx:310
 AliAnalysisTaskPi0FlowMC.cxx:311
 AliAnalysisTaskPi0FlowMC.cxx:312
 AliAnalysisTaskPi0FlowMC.cxx:313
 AliAnalysisTaskPi0FlowMC.cxx:314
 AliAnalysisTaskPi0FlowMC.cxx:315
 AliAnalysisTaskPi0FlowMC.cxx:316
 AliAnalysisTaskPi0FlowMC.cxx:317
 AliAnalysisTaskPi0FlowMC.cxx:318
 AliAnalysisTaskPi0FlowMC.cxx:319
 AliAnalysisTaskPi0FlowMC.cxx:320
 AliAnalysisTaskPi0FlowMC.cxx:321
 AliAnalysisTaskPi0FlowMC.cxx:322
 AliAnalysisTaskPi0FlowMC.cxx:323
 AliAnalysisTaskPi0FlowMC.cxx:324
 AliAnalysisTaskPi0FlowMC.cxx:325
 AliAnalysisTaskPi0FlowMC.cxx:326
 AliAnalysisTaskPi0FlowMC.cxx:327
 AliAnalysisTaskPi0FlowMC.cxx:328
 AliAnalysisTaskPi0FlowMC.cxx:329
 AliAnalysisTaskPi0FlowMC.cxx:330
 AliAnalysisTaskPi0FlowMC.cxx:331
 AliAnalysisTaskPi0FlowMC.cxx:332
 AliAnalysisTaskPi0FlowMC.cxx:333
 AliAnalysisTaskPi0FlowMC.cxx:334
 AliAnalysisTaskPi0FlowMC.cxx:335
 AliAnalysisTaskPi0FlowMC.cxx:336
 AliAnalysisTaskPi0FlowMC.cxx:337
 AliAnalysisTaskPi0FlowMC.cxx:338
 AliAnalysisTaskPi0FlowMC.cxx:339
 AliAnalysisTaskPi0FlowMC.cxx:340
 AliAnalysisTaskPi0FlowMC.cxx:341
 AliAnalysisTaskPi0FlowMC.cxx:342
 AliAnalysisTaskPi0FlowMC.cxx:343
 AliAnalysisTaskPi0FlowMC.cxx:344
 AliAnalysisTaskPi0FlowMC.cxx:345
 AliAnalysisTaskPi0FlowMC.cxx:346
 AliAnalysisTaskPi0FlowMC.cxx:347
 AliAnalysisTaskPi0FlowMC.cxx:348
 AliAnalysisTaskPi0FlowMC.cxx:349
 AliAnalysisTaskPi0FlowMC.cxx:350
 AliAnalysisTaskPi0FlowMC.cxx:351
 AliAnalysisTaskPi0FlowMC.cxx:352
 AliAnalysisTaskPi0FlowMC.cxx:353
 AliAnalysisTaskPi0FlowMC.cxx:354
 AliAnalysisTaskPi0FlowMC.cxx:355
 AliAnalysisTaskPi0FlowMC.cxx:356
 AliAnalysisTaskPi0FlowMC.cxx:357
 AliAnalysisTaskPi0FlowMC.cxx:358
 AliAnalysisTaskPi0FlowMC.cxx:359
 AliAnalysisTaskPi0FlowMC.cxx:360
 AliAnalysisTaskPi0FlowMC.cxx:361
 AliAnalysisTaskPi0FlowMC.cxx:362
 AliAnalysisTaskPi0FlowMC.cxx:363
 AliAnalysisTaskPi0FlowMC.cxx:364
 AliAnalysisTaskPi0FlowMC.cxx:365
 AliAnalysisTaskPi0FlowMC.cxx:366
 AliAnalysisTaskPi0FlowMC.cxx:367
 AliAnalysisTaskPi0FlowMC.cxx:368
 AliAnalysisTaskPi0FlowMC.cxx:369
 AliAnalysisTaskPi0FlowMC.cxx:370
 AliAnalysisTaskPi0FlowMC.cxx:371
 AliAnalysisTaskPi0FlowMC.cxx:372
 AliAnalysisTaskPi0FlowMC.cxx:373
 AliAnalysisTaskPi0FlowMC.cxx:374
 AliAnalysisTaskPi0FlowMC.cxx:375
 AliAnalysisTaskPi0FlowMC.cxx:376
 AliAnalysisTaskPi0FlowMC.cxx:377
 AliAnalysisTaskPi0FlowMC.cxx:378
 AliAnalysisTaskPi0FlowMC.cxx:379
 AliAnalysisTaskPi0FlowMC.cxx:380
 AliAnalysisTaskPi0FlowMC.cxx:381
 AliAnalysisTaskPi0FlowMC.cxx:382
 AliAnalysisTaskPi0FlowMC.cxx:383
 AliAnalysisTaskPi0FlowMC.cxx:384
 AliAnalysisTaskPi0FlowMC.cxx:385
 AliAnalysisTaskPi0FlowMC.cxx:386
 AliAnalysisTaskPi0FlowMC.cxx:387
 AliAnalysisTaskPi0FlowMC.cxx:388
 AliAnalysisTaskPi0FlowMC.cxx:389
 AliAnalysisTaskPi0FlowMC.cxx:390
 AliAnalysisTaskPi0FlowMC.cxx:391
 AliAnalysisTaskPi0FlowMC.cxx:392
 AliAnalysisTaskPi0FlowMC.cxx:393
 AliAnalysisTaskPi0FlowMC.cxx:394
 AliAnalysisTaskPi0FlowMC.cxx:395
 AliAnalysisTaskPi0FlowMC.cxx:396
 AliAnalysisTaskPi0FlowMC.cxx:397
 AliAnalysisTaskPi0FlowMC.cxx:398
 AliAnalysisTaskPi0FlowMC.cxx:399
 AliAnalysisTaskPi0FlowMC.cxx:400
 AliAnalysisTaskPi0FlowMC.cxx:401
 AliAnalysisTaskPi0FlowMC.cxx:402
 AliAnalysisTaskPi0FlowMC.cxx:403
 AliAnalysisTaskPi0FlowMC.cxx:404
 AliAnalysisTaskPi0FlowMC.cxx:405
 AliAnalysisTaskPi0FlowMC.cxx:406
 AliAnalysisTaskPi0FlowMC.cxx:407
 AliAnalysisTaskPi0FlowMC.cxx:408
 AliAnalysisTaskPi0FlowMC.cxx:409
 AliAnalysisTaskPi0FlowMC.cxx:410
 AliAnalysisTaskPi0FlowMC.cxx:411
 AliAnalysisTaskPi0FlowMC.cxx:412
 AliAnalysisTaskPi0FlowMC.cxx:413
 AliAnalysisTaskPi0FlowMC.cxx:414
 AliAnalysisTaskPi0FlowMC.cxx:415
 AliAnalysisTaskPi0FlowMC.cxx:416
 AliAnalysisTaskPi0FlowMC.cxx:417
 AliAnalysisTaskPi0FlowMC.cxx:418
 AliAnalysisTaskPi0FlowMC.cxx:419
 AliAnalysisTaskPi0FlowMC.cxx:420
 AliAnalysisTaskPi0FlowMC.cxx:421
 AliAnalysisTaskPi0FlowMC.cxx:422
 AliAnalysisTaskPi0FlowMC.cxx:423
 AliAnalysisTaskPi0FlowMC.cxx:424
 AliAnalysisTaskPi0FlowMC.cxx:425
 AliAnalysisTaskPi0FlowMC.cxx:426
 AliAnalysisTaskPi0FlowMC.cxx:427
 AliAnalysisTaskPi0FlowMC.cxx:428
 AliAnalysisTaskPi0FlowMC.cxx:429
 AliAnalysisTaskPi0FlowMC.cxx:430
 AliAnalysisTaskPi0FlowMC.cxx:431
 AliAnalysisTaskPi0FlowMC.cxx:432
 AliAnalysisTaskPi0FlowMC.cxx:433
 AliAnalysisTaskPi0FlowMC.cxx:434
 AliAnalysisTaskPi0FlowMC.cxx:435
 AliAnalysisTaskPi0FlowMC.cxx:436
 AliAnalysisTaskPi0FlowMC.cxx:437
 AliAnalysisTaskPi0FlowMC.cxx:438
 AliAnalysisTaskPi0FlowMC.cxx:439
 AliAnalysisTaskPi0FlowMC.cxx:440
 AliAnalysisTaskPi0FlowMC.cxx:441
 AliAnalysisTaskPi0FlowMC.cxx:442
 AliAnalysisTaskPi0FlowMC.cxx:443
 AliAnalysisTaskPi0FlowMC.cxx:444
 AliAnalysisTaskPi0FlowMC.cxx:445
 AliAnalysisTaskPi0FlowMC.cxx:446
 AliAnalysisTaskPi0FlowMC.cxx:447
 AliAnalysisTaskPi0FlowMC.cxx:448
 AliAnalysisTaskPi0FlowMC.cxx:449
 AliAnalysisTaskPi0FlowMC.cxx:450
 AliAnalysisTaskPi0FlowMC.cxx:451
 AliAnalysisTaskPi0FlowMC.cxx:452
 AliAnalysisTaskPi0FlowMC.cxx:453
 AliAnalysisTaskPi0FlowMC.cxx:454
 AliAnalysisTaskPi0FlowMC.cxx:455
 AliAnalysisTaskPi0FlowMC.cxx:456
 AliAnalysisTaskPi0FlowMC.cxx:457
 AliAnalysisTaskPi0FlowMC.cxx:458
 AliAnalysisTaskPi0FlowMC.cxx:459
 AliAnalysisTaskPi0FlowMC.cxx:460
 AliAnalysisTaskPi0FlowMC.cxx:461
 AliAnalysisTaskPi0FlowMC.cxx:462
 AliAnalysisTaskPi0FlowMC.cxx:463
 AliAnalysisTaskPi0FlowMC.cxx:464
 AliAnalysisTaskPi0FlowMC.cxx:465
 AliAnalysisTaskPi0FlowMC.cxx:466
 AliAnalysisTaskPi0FlowMC.cxx:467
 AliAnalysisTaskPi0FlowMC.cxx:468
 AliAnalysisTaskPi0FlowMC.cxx:469
 AliAnalysisTaskPi0FlowMC.cxx:470
 AliAnalysisTaskPi0FlowMC.cxx:471
 AliAnalysisTaskPi0FlowMC.cxx:472
 AliAnalysisTaskPi0FlowMC.cxx:473
 AliAnalysisTaskPi0FlowMC.cxx:474
 AliAnalysisTaskPi0FlowMC.cxx:475
 AliAnalysisTaskPi0FlowMC.cxx:476
 AliAnalysisTaskPi0FlowMC.cxx:477
 AliAnalysisTaskPi0FlowMC.cxx:478
 AliAnalysisTaskPi0FlowMC.cxx:479
 AliAnalysisTaskPi0FlowMC.cxx:480
 AliAnalysisTaskPi0FlowMC.cxx:481
 AliAnalysisTaskPi0FlowMC.cxx:482
 AliAnalysisTaskPi0FlowMC.cxx:483
 AliAnalysisTaskPi0FlowMC.cxx:484
 AliAnalysisTaskPi0FlowMC.cxx:485
 AliAnalysisTaskPi0FlowMC.cxx:486
 AliAnalysisTaskPi0FlowMC.cxx:487
 AliAnalysisTaskPi0FlowMC.cxx:488
 AliAnalysisTaskPi0FlowMC.cxx:489
 AliAnalysisTaskPi0FlowMC.cxx:490
 AliAnalysisTaskPi0FlowMC.cxx:491
 AliAnalysisTaskPi0FlowMC.cxx:492
 AliAnalysisTaskPi0FlowMC.cxx:493
 AliAnalysisTaskPi0FlowMC.cxx:494
 AliAnalysisTaskPi0FlowMC.cxx:495
 AliAnalysisTaskPi0FlowMC.cxx:496
 AliAnalysisTaskPi0FlowMC.cxx:497
 AliAnalysisTaskPi0FlowMC.cxx:498
 AliAnalysisTaskPi0FlowMC.cxx:499
 AliAnalysisTaskPi0FlowMC.cxx:500
 AliAnalysisTaskPi0FlowMC.cxx:501
 AliAnalysisTaskPi0FlowMC.cxx:502
 AliAnalysisTaskPi0FlowMC.cxx:503
 AliAnalysisTaskPi0FlowMC.cxx:504
 AliAnalysisTaskPi0FlowMC.cxx:505
 AliAnalysisTaskPi0FlowMC.cxx:506
 AliAnalysisTaskPi0FlowMC.cxx:507
 AliAnalysisTaskPi0FlowMC.cxx:508
 AliAnalysisTaskPi0FlowMC.cxx:509
 AliAnalysisTaskPi0FlowMC.cxx:510
 AliAnalysisTaskPi0FlowMC.cxx:511
 AliAnalysisTaskPi0FlowMC.cxx:512
 AliAnalysisTaskPi0FlowMC.cxx:513
 AliAnalysisTaskPi0FlowMC.cxx:514
 AliAnalysisTaskPi0FlowMC.cxx:515
 AliAnalysisTaskPi0FlowMC.cxx:516
 AliAnalysisTaskPi0FlowMC.cxx:517
 AliAnalysisTaskPi0FlowMC.cxx:518
 AliAnalysisTaskPi0FlowMC.cxx:519
 AliAnalysisTaskPi0FlowMC.cxx:520
 AliAnalysisTaskPi0FlowMC.cxx:521
 AliAnalysisTaskPi0FlowMC.cxx:522
 AliAnalysisTaskPi0FlowMC.cxx:523
 AliAnalysisTaskPi0FlowMC.cxx:524
 AliAnalysisTaskPi0FlowMC.cxx:525
 AliAnalysisTaskPi0FlowMC.cxx:526
 AliAnalysisTaskPi0FlowMC.cxx:527
 AliAnalysisTaskPi0FlowMC.cxx:528
 AliAnalysisTaskPi0FlowMC.cxx:529
 AliAnalysisTaskPi0FlowMC.cxx:530
 AliAnalysisTaskPi0FlowMC.cxx:531
 AliAnalysisTaskPi0FlowMC.cxx:532
 AliAnalysisTaskPi0FlowMC.cxx:533
 AliAnalysisTaskPi0FlowMC.cxx:534
 AliAnalysisTaskPi0FlowMC.cxx:535
 AliAnalysisTaskPi0FlowMC.cxx:536
 AliAnalysisTaskPi0FlowMC.cxx:537
 AliAnalysisTaskPi0FlowMC.cxx:538
 AliAnalysisTaskPi0FlowMC.cxx:539
 AliAnalysisTaskPi0FlowMC.cxx:540
 AliAnalysisTaskPi0FlowMC.cxx:541
 AliAnalysisTaskPi0FlowMC.cxx:542
 AliAnalysisTaskPi0FlowMC.cxx:543
 AliAnalysisTaskPi0FlowMC.cxx:544
 AliAnalysisTaskPi0FlowMC.cxx:545
 AliAnalysisTaskPi0FlowMC.cxx:546
 AliAnalysisTaskPi0FlowMC.cxx:547
 AliAnalysisTaskPi0FlowMC.cxx:548
 AliAnalysisTaskPi0FlowMC.cxx:549
 AliAnalysisTaskPi0FlowMC.cxx:550
 AliAnalysisTaskPi0FlowMC.cxx:551
 AliAnalysisTaskPi0FlowMC.cxx:552
 AliAnalysisTaskPi0FlowMC.cxx:553
 AliAnalysisTaskPi0FlowMC.cxx:554
 AliAnalysisTaskPi0FlowMC.cxx:555
 AliAnalysisTaskPi0FlowMC.cxx:556
 AliAnalysisTaskPi0FlowMC.cxx:557
 AliAnalysisTaskPi0FlowMC.cxx:558
 AliAnalysisTaskPi0FlowMC.cxx:559
 AliAnalysisTaskPi0FlowMC.cxx:560
 AliAnalysisTaskPi0FlowMC.cxx:561
 AliAnalysisTaskPi0FlowMC.cxx:562
 AliAnalysisTaskPi0FlowMC.cxx:563
 AliAnalysisTaskPi0FlowMC.cxx:564
 AliAnalysisTaskPi0FlowMC.cxx:565
 AliAnalysisTaskPi0FlowMC.cxx:566
 AliAnalysisTaskPi0FlowMC.cxx:567
 AliAnalysisTaskPi0FlowMC.cxx:568
 AliAnalysisTaskPi0FlowMC.cxx:569
 AliAnalysisTaskPi0FlowMC.cxx:570
 AliAnalysisTaskPi0FlowMC.cxx:571
 AliAnalysisTaskPi0FlowMC.cxx:572
 AliAnalysisTaskPi0FlowMC.cxx:573
 AliAnalysisTaskPi0FlowMC.cxx:574
 AliAnalysisTaskPi0FlowMC.cxx:575
 AliAnalysisTaskPi0FlowMC.cxx:576
 AliAnalysisTaskPi0FlowMC.cxx:577
 AliAnalysisTaskPi0FlowMC.cxx:578
 AliAnalysisTaskPi0FlowMC.cxx:579
 AliAnalysisTaskPi0FlowMC.cxx:580
 AliAnalysisTaskPi0FlowMC.cxx:581
 AliAnalysisTaskPi0FlowMC.cxx:582
 AliAnalysisTaskPi0FlowMC.cxx:583
 AliAnalysisTaskPi0FlowMC.cxx:584
 AliAnalysisTaskPi0FlowMC.cxx:585
 AliAnalysisTaskPi0FlowMC.cxx:586
 AliAnalysisTaskPi0FlowMC.cxx:587
 AliAnalysisTaskPi0FlowMC.cxx:588
 AliAnalysisTaskPi0FlowMC.cxx:589
 AliAnalysisTaskPi0FlowMC.cxx:590
 AliAnalysisTaskPi0FlowMC.cxx:591
 AliAnalysisTaskPi0FlowMC.cxx:592
 AliAnalysisTaskPi0FlowMC.cxx:593
 AliAnalysisTaskPi0FlowMC.cxx:594
 AliAnalysisTaskPi0FlowMC.cxx:595
 AliAnalysisTaskPi0FlowMC.cxx:596
 AliAnalysisTaskPi0FlowMC.cxx:597
 AliAnalysisTaskPi0FlowMC.cxx:598
 AliAnalysisTaskPi0FlowMC.cxx:599
 AliAnalysisTaskPi0FlowMC.cxx:600
 AliAnalysisTaskPi0FlowMC.cxx:601
 AliAnalysisTaskPi0FlowMC.cxx:602
 AliAnalysisTaskPi0FlowMC.cxx:603
 AliAnalysisTaskPi0FlowMC.cxx:604
 AliAnalysisTaskPi0FlowMC.cxx:605
 AliAnalysisTaskPi0FlowMC.cxx:606
 AliAnalysisTaskPi0FlowMC.cxx:607
 AliAnalysisTaskPi0FlowMC.cxx:608
 AliAnalysisTaskPi0FlowMC.cxx:609
 AliAnalysisTaskPi0FlowMC.cxx:610
 AliAnalysisTaskPi0FlowMC.cxx:611
 AliAnalysisTaskPi0FlowMC.cxx:612
 AliAnalysisTaskPi0FlowMC.cxx:613
 AliAnalysisTaskPi0FlowMC.cxx:614
 AliAnalysisTaskPi0FlowMC.cxx:615
 AliAnalysisTaskPi0FlowMC.cxx:616
 AliAnalysisTaskPi0FlowMC.cxx:617
 AliAnalysisTaskPi0FlowMC.cxx:618
 AliAnalysisTaskPi0FlowMC.cxx:619
 AliAnalysisTaskPi0FlowMC.cxx:620
 AliAnalysisTaskPi0FlowMC.cxx:621
 AliAnalysisTaskPi0FlowMC.cxx:622
 AliAnalysisTaskPi0FlowMC.cxx:623
 AliAnalysisTaskPi0FlowMC.cxx:624
 AliAnalysisTaskPi0FlowMC.cxx:625
 AliAnalysisTaskPi0FlowMC.cxx:626
 AliAnalysisTaskPi0FlowMC.cxx:627
 AliAnalysisTaskPi0FlowMC.cxx:628
 AliAnalysisTaskPi0FlowMC.cxx:629
 AliAnalysisTaskPi0FlowMC.cxx:630
 AliAnalysisTaskPi0FlowMC.cxx:631
 AliAnalysisTaskPi0FlowMC.cxx:632
 AliAnalysisTaskPi0FlowMC.cxx:633
 AliAnalysisTaskPi0FlowMC.cxx:634
 AliAnalysisTaskPi0FlowMC.cxx:635
 AliAnalysisTaskPi0FlowMC.cxx:636
 AliAnalysisTaskPi0FlowMC.cxx:637
 AliAnalysisTaskPi0FlowMC.cxx:638
 AliAnalysisTaskPi0FlowMC.cxx:639
 AliAnalysisTaskPi0FlowMC.cxx:640
 AliAnalysisTaskPi0FlowMC.cxx:641
 AliAnalysisTaskPi0FlowMC.cxx:642
 AliAnalysisTaskPi0FlowMC.cxx:643
 AliAnalysisTaskPi0FlowMC.cxx:644
 AliAnalysisTaskPi0FlowMC.cxx:645
 AliAnalysisTaskPi0FlowMC.cxx:646
 AliAnalysisTaskPi0FlowMC.cxx:647
 AliAnalysisTaskPi0FlowMC.cxx:648
 AliAnalysisTaskPi0FlowMC.cxx:649
 AliAnalysisTaskPi0FlowMC.cxx:650
 AliAnalysisTaskPi0FlowMC.cxx:651
 AliAnalysisTaskPi0FlowMC.cxx:652
 AliAnalysisTaskPi0FlowMC.cxx:653
 AliAnalysisTaskPi0FlowMC.cxx:654
 AliAnalysisTaskPi0FlowMC.cxx:655
 AliAnalysisTaskPi0FlowMC.cxx:656
 AliAnalysisTaskPi0FlowMC.cxx:657
 AliAnalysisTaskPi0FlowMC.cxx:658
 AliAnalysisTaskPi0FlowMC.cxx:659
 AliAnalysisTaskPi0FlowMC.cxx:660
 AliAnalysisTaskPi0FlowMC.cxx:661
 AliAnalysisTaskPi0FlowMC.cxx:662
 AliAnalysisTaskPi0FlowMC.cxx:663
 AliAnalysisTaskPi0FlowMC.cxx:664
 AliAnalysisTaskPi0FlowMC.cxx:665
 AliAnalysisTaskPi0FlowMC.cxx:666
 AliAnalysisTaskPi0FlowMC.cxx:667
 AliAnalysisTaskPi0FlowMC.cxx:668
 AliAnalysisTaskPi0FlowMC.cxx:669
 AliAnalysisTaskPi0FlowMC.cxx:670
 AliAnalysisTaskPi0FlowMC.cxx:671
 AliAnalysisTaskPi0FlowMC.cxx:672
 AliAnalysisTaskPi0FlowMC.cxx:673
 AliAnalysisTaskPi0FlowMC.cxx:674
 AliAnalysisTaskPi0FlowMC.cxx:675
 AliAnalysisTaskPi0FlowMC.cxx:676
 AliAnalysisTaskPi0FlowMC.cxx:677
 AliAnalysisTaskPi0FlowMC.cxx:678
 AliAnalysisTaskPi0FlowMC.cxx:679
 AliAnalysisTaskPi0FlowMC.cxx:680
 AliAnalysisTaskPi0FlowMC.cxx:681
 AliAnalysisTaskPi0FlowMC.cxx:682
 AliAnalysisTaskPi0FlowMC.cxx:683
 AliAnalysisTaskPi0FlowMC.cxx:684
 AliAnalysisTaskPi0FlowMC.cxx:685
 AliAnalysisTaskPi0FlowMC.cxx:686
 AliAnalysisTaskPi0FlowMC.cxx:687
 AliAnalysisTaskPi0FlowMC.cxx:688
 AliAnalysisTaskPi0FlowMC.cxx:689
 AliAnalysisTaskPi0FlowMC.cxx:690
 AliAnalysisTaskPi0FlowMC.cxx:691
 AliAnalysisTaskPi0FlowMC.cxx:692
 AliAnalysisTaskPi0FlowMC.cxx:693
 AliAnalysisTaskPi0FlowMC.cxx:694
 AliAnalysisTaskPi0FlowMC.cxx:695
 AliAnalysisTaskPi0FlowMC.cxx:696
 AliAnalysisTaskPi0FlowMC.cxx:697
 AliAnalysisTaskPi0FlowMC.cxx:698
 AliAnalysisTaskPi0FlowMC.cxx:699
 AliAnalysisTaskPi0FlowMC.cxx:700
 AliAnalysisTaskPi0FlowMC.cxx:701
 AliAnalysisTaskPi0FlowMC.cxx:702
 AliAnalysisTaskPi0FlowMC.cxx:703
 AliAnalysisTaskPi0FlowMC.cxx:704
 AliAnalysisTaskPi0FlowMC.cxx:705
 AliAnalysisTaskPi0FlowMC.cxx:706
 AliAnalysisTaskPi0FlowMC.cxx:707
 AliAnalysisTaskPi0FlowMC.cxx:708
 AliAnalysisTaskPi0FlowMC.cxx:709
 AliAnalysisTaskPi0FlowMC.cxx:710
 AliAnalysisTaskPi0FlowMC.cxx:711
 AliAnalysisTaskPi0FlowMC.cxx:712
 AliAnalysisTaskPi0FlowMC.cxx:713
 AliAnalysisTaskPi0FlowMC.cxx:714
 AliAnalysisTaskPi0FlowMC.cxx:715
 AliAnalysisTaskPi0FlowMC.cxx:716
 AliAnalysisTaskPi0FlowMC.cxx:717
 AliAnalysisTaskPi0FlowMC.cxx:718
 AliAnalysisTaskPi0FlowMC.cxx:719
 AliAnalysisTaskPi0FlowMC.cxx:720
 AliAnalysisTaskPi0FlowMC.cxx:721
 AliAnalysisTaskPi0FlowMC.cxx:722
 AliAnalysisTaskPi0FlowMC.cxx:723
 AliAnalysisTaskPi0FlowMC.cxx:724
 AliAnalysisTaskPi0FlowMC.cxx:725
 AliAnalysisTaskPi0FlowMC.cxx:726
 AliAnalysisTaskPi0FlowMC.cxx:727
 AliAnalysisTaskPi0FlowMC.cxx:728
 AliAnalysisTaskPi0FlowMC.cxx:729
 AliAnalysisTaskPi0FlowMC.cxx:730
 AliAnalysisTaskPi0FlowMC.cxx:731
 AliAnalysisTaskPi0FlowMC.cxx:732
 AliAnalysisTaskPi0FlowMC.cxx:733
 AliAnalysisTaskPi0FlowMC.cxx:734
 AliAnalysisTaskPi0FlowMC.cxx:735
 AliAnalysisTaskPi0FlowMC.cxx:736
 AliAnalysisTaskPi0FlowMC.cxx:737
 AliAnalysisTaskPi0FlowMC.cxx:738
 AliAnalysisTaskPi0FlowMC.cxx:739
 AliAnalysisTaskPi0FlowMC.cxx:740
 AliAnalysisTaskPi0FlowMC.cxx:741
 AliAnalysisTaskPi0FlowMC.cxx:742
 AliAnalysisTaskPi0FlowMC.cxx:743
 AliAnalysisTaskPi0FlowMC.cxx:744
 AliAnalysisTaskPi0FlowMC.cxx:745
 AliAnalysisTaskPi0FlowMC.cxx:746
 AliAnalysisTaskPi0FlowMC.cxx:747
 AliAnalysisTaskPi0FlowMC.cxx:748
 AliAnalysisTaskPi0FlowMC.cxx:749
 AliAnalysisTaskPi0FlowMC.cxx:750
 AliAnalysisTaskPi0FlowMC.cxx:751
 AliAnalysisTaskPi0FlowMC.cxx:752
 AliAnalysisTaskPi0FlowMC.cxx:753
 AliAnalysisTaskPi0FlowMC.cxx:754
 AliAnalysisTaskPi0FlowMC.cxx:755
 AliAnalysisTaskPi0FlowMC.cxx:756
 AliAnalysisTaskPi0FlowMC.cxx:757
 AliAnalysisTaskPi0FlowMC.cxx:758
 AliAnalysisTaskPi0FlowMC.cxx:759
 AliAnalysisTaskPi0FlowMC.cxx:760
 AliAnalysisTaskPi0FlowMC.cxx:761
 AliAnalysisTaskPi0FlowMC.cxx:762
 AliAnalysisTaskPi0FlowMC.cxx:763
 AliAnalysisTaskPi0FlowMC.cxx:764
 AliAnalysisTaskPi0FlowMC.cxx:765
 AliAnalysisTaskPi0FlowMC.cxx:766
 AliAnalysisTaskPi0FlowMC.cxx:767
 AliAnalysisTaskPi0FlowMC.cxx:768
 AliAnalysisTaskPi0FlowMC.cxx:769
 AliAnalysisTaskPi0FlowMC.cxx:770
 AliAnalysisTaskPi0FlowMC.cxx:771
 AliAnalysisTaskPi0FlowMC.cxx:772
 AliAnalysisTaskPi0FlowMC.cxx:773
 AliAnalysisTaskPi0FlowMC.cxx:774
 AliAnalysisTaskPi0FlowMC.cxx:775
 AliAnalysisTaskPi0FlowMC.cxx:776
 AliAnalysisTaskPi0FlowMC.cxx:777
 AliAnalysisTaskPi0FlowMC.cxx:778
 AliAnalysisTaskPi0FlowMC.cxx:779
 AliAnalysisTaskPi0FlowMC.cxx:780
 AliAnalysisTaskPi0FlowMC.cxx:781
 AliAnalysisTaskPi0FlowMC.cxx:782
 AliAnalysisTaskPi0FlowMC.cxx:783
 AliAnalysisTaskPi0FlowMC.cxx:784
 AliAnalysisTaskPi0FlowMC.cxx:785
 AliAnalysisTaskPi0FlowMC.cxx:786
 AliAnalysisTaskPi0FlowMC.cxx:787
 AliAnalysisTaskPi0FlowMC.cxx:788
 AliAnalysisTaskPi0FlowMC.cxx:789
 AliAnalysisTaskPi0FlowMC.cxx:790
 AliAnalysisTaskPi0FlowMC.cxx:791
 AliAnalysisTaskPi0FlowMC.cxx:792
 AliAnalysisTaskPi0FlowMC.cxx:793
 AliAnalysisTaskPi0FlowMC.cxx:794
 AliAnalysisTaskPi0FlowMC.cxx:795
 AliAnalysisTaskPi0FlowMC.cxx:796
 AliAnalysisTaskPi0FlowMC.cxx:797
 AliAnalysisTaskPi0FlowMC.cxx:798
 AliAnalysisTaskPi0FlowMC.cxx:799
 AliAnalysisTaskPi0FlowMC.cxx:800
 AliAnalysisTaskPi0FlowMC.cxx:801
 AliAnalysisTaskPi0FlowMC.cxx:802
 AliAnalysisTaskPi0FlowMC.cxx:803
 AliAnalysisTaskPi0FlowMC.cxx:804
 AliAnalysisTaskPi0FlowMC.cxx:805
 AliAnalysisTaskPi0FlowMC.cxx:806
 AliAnalysisTaskPi0FlowMC.cxx:807
 AliAnalysisTaskPi0FlowMC.cxx:808
 AliAnalysisTaskPi0FlowMC.cxx:809
 AliAnalysisTaskPi0FlowMC.cxx:810
 AliAnalysisTaskPi0FlowMC.cxx:811
 AliAnalysisTaskPi0FlowMC.cxx:812
 AliAnalysisTaskPi0FlowMC.cxx:813
 AliAnalysisTaskPi0FlowMC.cxx:814
 AliAnalysisTaskPi0FlowMC.cxx:815
 AliAnalysisTaskPi0FlowMC.cxx:816
 AliAnalysisTaskPi0FlowMC.cxx:817
 AliAnalysisTaskPi0FlowMC.cxx:818
 AliAnalysisTaskPi0FlowMC.cxx:819
 AliAnalysisTaskPi0FlowMC.cxx:820
 AliAnalysisTaskPi0FlowMC.cxx:821
 AliAnalysisTaskPi0FlowMC.cxx:822
 AliAnalysisTaskPi0FlowMC.cxx:823
 AliAnalysisTaskPi0FlowMC.cxx:824
 AliAnalysisTaskPi0FlowMC.cxx:825
 AliAnalysisTaskPi0FlowMC.cxx:826
 AliAnalysisTaskPi0FlowMC.cxx:827
 AliAnalysisTaskPi0FlowMC.cxx:828
 AliAnalysisTaskPi0FlowMC.cxx:829
 AliAnalysisTaskPi0FlowMC.cxx:830
 AliAnalysisTaskPi0FlowMC.cxx:831
 AliAnalysisTaskPi0FlowMC.cxx:832
 AliAnalysisTaskPi0FlowMC.cxx:833
 AliAnalysisTaskPi0FlowMC.cxx:834
 AliAnalysisTaskPi0FlowMC.cxx:835
 AliAnalysisTaskPi0FlowMC.cxx:836
 AliAnalysisTaskPi0FlowMC.cxx:837
 AliAnalysisTaskPi0FlowMC.cxx:838
 AliAnalysisTaskPi0FlowMC.cxx:839
 AliAnalysisTaskPi0FlowMC.cxx:840
 AliAnalysisTaskPi0FlowMC.cxx:841
 AliAnalysisTaskPi0FlowMC.cxx:842
 AliAnalysisTaskPi0FlowMC.cxx:843
 AliAnalysisTaskPi0FlowMC.cxx:844
 AliAnalysisTaskPi0FlowMC.cxx:845
 AliAnalysisTaskPi0FlowMC.cxx:846
 AliAnalysisTaskPi0FlowMC.cxx:847
 AliAnalysisTaskPi0FlowMC.cxx:848
 AliAnalysisTaskPi0FlowMC.cxx:849
 AliAnalysisTaskPi0FlowMC.cxx:850
 AliAnalysisTaskPi0FlowMC.cxx:851
 AliAnalysisTaskPi0FlowMC.cxx:852
 AliAnalysisTaskPi0FlowMC.cxx:853
 AliAnalysisTaskPi0FlowMC.cxx:854
 AliAnalysisTaskPi0FlowMC.cxx:855
 AliAnalysisTaskPi0FlowMC.cxx:856
 AliAnalysisTaskPi0FlowMC.cxx:857
 AliAnalysisTaskPi0FlowMC.cxx:858
 AliAnalysisTaskPi0FlowMC.cxx:859
 AliAnalysisTaskPi0FlowMC.cxx:860
 AliAnalysisTaskPi0FlowMC.cxx:861
 AliAnalysisTaskPi0FlowMC.cxx:862
 AliAnalysisTaskPi0FlowMC.cxx:863
 AliAnalysisTaskPi0FlowMC.cxx:864
 AliAnalysisTaskPi0FlowMC.cxx:865
 AliAnalysisTaskPi0FlowMC.cxx:866
 AliAnalysisTaskPi0FlowMC.cxx:867
 AliAnalysisTaskPi0FlowMC.cxx:868
 AliAnalysisTaskPi0FlowMC.cxx:869
 AliAnalysisTaskPi0FlowMC.cxx:870
 AliAnalysisTaskPi0FlowMC.cxx:871
 AliAnalysisTaskPi0FlowMC.cxx:872
 AliAnalysisTaskPi0FlowMC.cxx:873
 AliAnalysisTaskPi0FlowMC.cxx:874
 AliAnalysisTaskPi0FlowMC.cxx:875
 AliAnalysisTaskPi0FlowMC.cxx:876
 AliAnalysisTaskPi0FlowMC.cxx:877
 AliAnalysisTaskPi0FlowMC.cxx:878
 AliAnalysisTaskPi0FlowMC.cxx:879
 AliAnalysisTaskPi0FlowMC.cxx:880
 AliAnalysisTaskPi0FlowMC.cxx:881
 AliAnalysisTaskPi0FlowMC.cxx:882
 AliAnalysisTaskPi0FlowMC.cxx:883
 AliAnalysisTaskPi0FlowMC.cxx:884
 AliAnalysisTaskPi0FlowMC.cxx:885
 AliAnalysisTaskPi0FlowMC.cxx:886
 AliAnalysisTaskPi0FlowMC.cxx:887
 AliAnalysisTaskPi0FlowMC.cxx:888
 AliAnalysisTaskPi0FlowMC.cxx:889
 AliAnalysisTaskPi0FlowMC.cxx:890
 AliAnalysisTaskPi0FlowMC.cxx:891
 AliAnalysisTaskPi0FlowMC.cxx:892
 AliAnalysisTaskPi0FlowMC.cxx:893
 AliAnalysisTaskPi0FlowMC.cxx:894
 AliAnalysisTaskPi0FlowMC.cxx:895
 AliAnalysisTaskPi0FlowMC.cxx:896
 AliAnalysisTaskPi0FlowMC.cxx:897
 AliAnalysisTaskPi0FlowMC.cxx:898
 AliAnalysisTaskPi0FlowMC.cxx:899
 AliAnalysisTaskPi0FlowMC.cxx:900
 AliAnalysisTaskPi0FlowMC.cxx:901
 AliAnalysisTaskPi0FlowMC.cxx:902
 AliAnalysisTaskPi0FlowMC.cxx:903
 AliAnalysisTaskPi0FlowMC.cxx:904
 AliAnalysisTaskPi0FlowMC.cxx:905
 AliAnalysisTaskPi0FlowMC.cxx:906
 AliAnalysisTaskPi0FlowMC.cxx:907
 AliAnalysisTaskPi0FlowMC.cxx:908
 AliAnalysisTaskPi0FlowMC.cxx:909
 AliAnalysisTaskPi0FlowMC.cxx:910
 AliAnalysisTaskPi0FlowMC.cxx:911
 AliAnalysisTaskPi0FlowMC.cxx:912
 AliAnalysisTaskPi0FlowMC.cxx:913
 AliAnalysisTaskPi0FlowMC.cxx:914
 AliAnalysisTaskPi0FlowMC.cxx:915
 AliAnalysisTaskPi0FlowMC.cxx:916
 AliAnalysisTaskPi0FlowMC.cxx:917
 AliAnalysisTaskPi0FlowMC.cxx:918
 AliAnalysisTaskPi0FlowMC.cxx:919
 AliAnalysisTaskPi0FlowMC.cxx:920
 AliAnalysisTaskPi0FlowMC.cxx:921
 AliAnalysisTaskPi0FlowMC.cxx:922
 AliAnalysisTaskPi0FlowMC.cxx:923
 AliAnalysisTaskPi0FlowMC.cxx:924
 AliAnalysisTaskPi0FlowMC.cxx:925
 AliAnalysisTaskPi0FlowMC.cxx:926
 AliAnalysisTaskPi0FlowMC.cxx:927
 AliAnalysisTaskPi0FlowMC.cxx:928
 AliAnalysisTaskPi0FlowMC.cxx:929
 AliAnalysisTaskPi0FlowMC.cxx:930
 AliAnalysisTaskPi0FlowMC.cxx:931
 AliAnalysisTaskPi0FlowMC.cxx:932
 AliAnalysisTaskPi0FlowMC.cxx:933
 AliAnalysisTaskPi0FlowMC.cxx:934
 AliAnalysisTaskPi0FlowMC.cxx:935
 AliAnalysisTaskPi0FlowMC.cxx:936
 AliAnalysisTaskPi0FlowMC.cxx:937
 AliAnalysisTaskPi0FlowMC.cxx:938
 AliAnalysisTaskPi0FlowMC.cxx:939
 AliAnalysisTaskPi0FlowMC.cxx:940
 AliAnalysisTaskPi0FlowMC.cxx:941
 AliAnalysisTaskPi0FlowMC.cxx:942
 AliAnalysisTaskPi0FlowMC.cxx:943
 AliAnalysisTaskPi0FlowMC.cxx:944
 AliAnalysisTaskPi0FlowMC.cxx:945
 AliAnalysisTaskPi0FlowMC.cxx:946
 AliAnalysisTaskPi0FlowMC.cxx:947
 AliAnalysisTaskPi0FlowMC.cxx:948
 AliAnalysisTaskPi0FlowMC.cxx:949
 AliAnalysisTaskPi0FlowMC.cxx:950
 AliAnalysisTaskPi0FlowMC.cxx:951
 AliAnalysisTaskPi0FlowMC.cxx:952
 AliAnalysisTaskPi0FlowMC.cxx:953
 AliAnalysisTaskPi0FlowMC.cxx:954
 AliAnalysisTaskPi0FlowMC.cxx:955
 AliAnalysisTaskPi0FlowMC.cxx:956
 AliAnalysisTaskPi0FlowMC.cxx:957
 AliAnalysisTaskPi0FlowMC.cxx:958
 AliAnalysisTaskPi0FlowMC.cxx:959
 AliAnalysisTaskPi0FlowMC.cxx:960
 AliAnalysisTaskPi0FlowMC.cxx:961
 AliAnalysisTaskPi0FlowMC.cxx:962
 AliAnalysisTaskPi0FlowMC.cxx:963
 AliAnalysisTaskPi0FlowMC.cxx:964
 AliAnalysisTaskPi0FlowMC.cxx:965
 AliAnalysisTaskPi0FlowMC.cxx:966
 AliAnalysisTaskPi0FlowMC.cxx:967
 AliAnalysisTaskPi0FlowMC.cxx:968
 AliAnalysisTaskPi0FlowMC.cxx:969
 AliAnalysisTaskPi0FlowMC.cxx:970
 AliAnalysisTaskPi0FlowMC.cxx:971
 AliAnalysisTaskPi0FlowMC.cxx:972
 AliAnalysisTaskPi0FlowMC.cxx:973
 AliAnalysisTaskPi0FlowMC.cxx:974
 AliAnalysisTaskPi0FlowMC.cxx:975
 AliAnalysisTaskPi0FlowMC.cxx:976
 AliAnalysisTaskPi0FlowMC.cxx:977
 AliAnalysisTaskPi0FlowMC.cxx:978
 AliAnalysisTaskPi0FlowMC.cxx:979
 AliAnalysisTaskPi0FlowMC.cxx:980
 AliAnalysisTaskPi0FlowMC.cxx:981
 AliAnalysisTaskPi0FlowMC.cxx:982
 AliAnalysisTaskPi0FlowMC.cxx:983
 AliAnalysisTaskPi0FlowMC.cxx:984
 AliAnalysisTaskPi0FlowMC.cxx:985
 AliAnalysisTaskPi0FlowMC.cxx:986
 AliAnalysisTaskPi0FlowMC.cxx:987
 AliAnalysisTaskPi0FlowMC.cxx:988
 AliAnalysisTaskPi0FlowMC.cxx:989
 AliAnalysisTaskPi0FlowMC.cxx:990
 AliAnalysisTaskPi0FlowMC.cxx:991
 AliAnalysisTaskPi0FlowMC.cxx:992
 AliAnalysisTaskPi0FlowMC.cxx:993
 AliAnalysisTaskPi0FlowMC.cxx:994
 AliAnalysisTaskPi0FlowMC.cxx:995
 AliAnalysisTaskPi0FlowMC.cxx:996
 AliAnalysisTaskPi0FlowMC.cxx:997
 AliAnalysisTaskPi0FlowMC.cxx:998
 AliAnalysisTaskPi0FlowMC.cxx:999
 AliAnalysisTaskPi0FlowMC.cxx:1000
 AliAnalysisTaskPi0FlowMC.cxx:1001
 AliAnalysisTaskPi0FlowMC.cxx:1002
 AliAnalysisTaskPi0FlowMC.cxx:1003
 AliAnalysisTaskPi0FlowMC.cxx:1004
 AliAnalysisTaskPi0FlowMC.cxx:1005
 AliAnalysisTaskPi0FlowMC.cxx:1006
 AliAnalysisTaskPi0FlowMC.cxx:1007
 AliAnalysisTaskPi0FlowMC.cxx:1008
 AliAnalysisTaskPi0FlowMC.cxx:1009
 AliAnalysisTaskPi0FlowMC.cxx:1010
 AliAnalysisTaskPi0FlowMC.cxx:1011
 AliAnalysisTaskPi0FlowMC.cxx:1012
 AliAnalysisTaskPi0FlowMC.cxx:1013
 AliAnalysisTaskPi0FlowMC.cxx:1014
 AliAnalysisTaskPi0FlowMC.cxx:1015
 AliAnalysisTaskPi0FlowMC.cxx:1016
 AliAnalysisTaskPi0FlowMC.cxx:1017
 AliAnalysisTaskPi0FlowMC.cxx:1018
 AliAnalysisTaskPi0FlowMC.cxx:1019
 AliAnalysisTaskPi0FlowMC.cxx:1020
 AliAnalysisTaskPi0FlowMC.cxx:1021
 AliAnalysisTaskPi0FlowMC.cxx:1022
 AliAnalysisTaskPi0FlowMC.cxx:1023
 AliAnalysisTaskPi0FlowMC.cxx:1024
 AliAnalysisTaskPi0FlowMC.cxx:1025
 AliAnalysisTaskPi0FlowMC.cxx:1026
 AliAnalysisTaskPi0FlowMC.cxx:1027
 AliAnalysisTaskPi0FlowMC.cxx:1028
 AliAnalysisTaskPi0FlowMC.cxx:1029
 AliAnalysisTaskPi0FlowMC.cxx:1030
 AliAnalysisTaskPi0FlowMC.cxx:1031
 AliAnalysisTaskPi0FlowMC.cxx:1032
 AliAnalysisTaskPi0FlowMC.cxx:1033
 AliAnalysisTaskPi0FlowMC.cxx:1034
 AliAnalysisTaskPi0FlowMC.cxx:1035
 AliAnalysisTaskPi0FlowMC.cxx:1036
 AliAnalysisTaskPi0FlowMC.cxx:1037
 AliAnalysisTaskPi0FlowMC.cxx:1038
 AliAnalysisTaskPi0FlowMC.cxx:1039
 AliAnalysisTaskPi0FlowMC.cxx:1040
 AliAnalysisTaskPi0FlowMC.cxx:1041
 AliAnalysisTaskPi0FlowMC.cxx:1042
 AliAnalysisTaskPi0FlowMC.cxx:1043
 AliAnalysisTaskPi0FlowMC.cxx:1044
 AliAnalysisTaskPi0FlowMC.cxx:1045
 AliAnalysisTaskPi0FlowMC.cxx:1046
 AliAnalysisTaskPi0FlowMC.cxx:1047
 AliAnalysisTaskPi0FlowMC.cxx:1048
 AliAnalysisTaskPi0FlowMC.cxx:1049
 AliAnalysisTaskPi0FlowMC.cxx:1050
 AliAnalysisTaskPi0FlowMC.cxx:1051
 AliAnalysisTaskPi0FlowMC.cxx:1052
 AliAnalysisTaskPi0FlowMC.cxx:1053
 AliAnalysisTaskPi0FlowMC.cxx:1054
 AliAnalysisTaskPi0FlowMC.cxx:1055
 AliAnalysisTaskPi0FlowMC.cxx:1056
 AliAnalysisTaskPi0FlowMC.cxx:1057
 AliAnalysisTaskPi0FlowMC.cxx:1058
 AliAnalysisTaskPi0FlowMC.cxx:1059
 AliAnalysisTaskPi0FlowMC.cxx:1060
 AliAnalysisTaskPi0FlowMC.cxx:1061
 AliAnalysisTaskPi0FlowMC.cxx:1062
 AliAnalysisTaskPi0FlowMC.cxx:1063
 AliAnalysisTaskPi0FlowMC.cxx:1064
 AliAnalysisTaskPi0FlowMC.cxx:1065
 AliAnalysisTaskPi0FlowMC.cxx:1066
 AliAnalysisTaskPi0FlowMC.cxx:1067
 AliAnalysisTaskPi0FlowMC.cxx:1068
 AliAnalysisTaskPi0FlowMC.cxx:1069
 AliAnalysisTaskPi0FlowMC.cxx:1070
 AliAnalysisTaskPi0FlowMC.cxx:1071
 AliAnalysisTaskPi0FlowMC.cxx:1072
 AliAnalysisTaskPi0FlowMC.cxx:1073
 AliAnalysisTaskPi0FlowMC.cxx:1074
 AliAnalysisTaskPi0FlowMC.cxx:1075
 AliAnalysisTaskPi0FlowMC.cxx:1076
 AliAnalysisTaskPi0FlowMC.cxx:1077
 AliAnalysisTaskPi0FlowMC.cxx:1078
 AliAnalysisTaskPi0FlowMC.cxx:1079
 AliAnalysisTaskPi0FlowMC.cxx:1080
 AliAnalysisTaskPi0FlowMC.cxx:1081
 AliAnalysisTaskPi0FlowMC.cxx:1082
 AliAnalysisTaskPi0FlowMC.cxx:1083
 AliAnalysisTaskPi0FlowMC.cxx:1084
 AliAnalysisTaskPi0FlowMC.cxx:1085
 AliAnalysisTaskPi0FlowMC.cxx:1086
 AliAnalysisTaskPi0FlowMC.cxx:1087
 AliAnalysisTaskPi0FlowMC.cxx:1088
 AliAnalysisTaskPi0FlowMC.cxx:1089
 AliAnalysisTaskPi0FlowMC.cxx:1090
 AliAnalysisTaskPi0FlowMC.cxx:1091
 AliAnalysisTaskPi0FlowMC.cxx:1092
 AliAnalysisTaskPi0FlowMC.cxx:1093
 AliAnalysisTaskPi0FlowMC.cxx:1094
 AliAnalysisTaskPi0FlowMC.cxx:1095
 AliAnalysisTaskPi0FlowMC.cxx:1096
 AliAnalysisTaskPi0FlowMC.cxx:1097
 AliAnalysisTaskPi0FlowMC.cxx:1098
 AliAnalysisTaskPi0FlowMC.cxx:1099
 AliAnalysisTaskPi0FlowMC.cxx:1100
 AliAnalysisTaskPi0FlowMC.cxx:1101
 AliAnalysisTaskPi0FlowMC.cxx:1102
 AliAnalysisTaskPi0FlowMC.cxx:1103
 AliAnalysisTaskPi0FlowMC.cxx:1104
 AliAnalysisTaskPi0FlowMC.cxx:1105
 AliAnalysisTaskPi0FlowMC.cxx:1106
 AliAnalysisTaskPi0FlowMC.cxx:1107
 AliAnalysisTaskPi0FlowMC.cxx:1108
 AliAnalysisTaskPi0FlowMC.cxx:1109
 AliAnalysisTaskPi0FlowMC.cxx:1110
 AliAnalysisTaskPi0FlowMC.cxx:1111
 AliAnalysisTaskPi0FlowMC.cxx:1112
 AliAnalysisTaskPi0FlowMC.cxx:1113
 AliAnalysisTaskPi0FlowMC.cxx:1114
 AliAnalysisTaskPi0FlowMC.cxx:1115
 AliAnalysisTaskPi0FlowMC.cxx:1116
 AliAnalysisTaskPi0FlowMC.cxx:1117
 AliAnalysisTaskPi0FlowMC.cxx:1118
 AliAnalysisTaskPi0FlowMC.cxx:1119
 AliAnalysisTaskPi0FlowMC.cxx:1120
 AliAnalysisTaskPi0FlowMC.cxx:1121
 AliAnalysisTaskPi0FlowMC.cxx:1122
 AliAnalysisTaskPi0FlowMC.cxx:1123
 AliAnalysisTaskPi0FlowMC.cxx:1124
 AliAnalysisTaskPi0FlowMC.cxx:1125
 AliAnalysisTaskPi0FlowMC.cxx:1126
 AliAnalysisTaskPi0FlowMC.cxx:1127
 AliAnalysisTaskPi0FlowMC.cxx:1128
 AliAnalysisTaskPi0FlowMC.cxx:1129
 AliAnalysisTaskPi0FlowMC.cxx:1130
 AliAnalysisTaskPi0FlowMC.cxx:1131
 AliAnalysisTaskPi0FlowMC.cxx:1132
 AliAnalysisTaskPi0FlowMC.cxx:1133
 AliAnalysisTaskPi0FlowMC.cxx:1134
 AliAnalysisTaskPi0FlowMC.cxx:1135
 AliAnalysisTaskPi0FlowMC.cxx:1136
 AliAnalysisTaskPi0FlowMC.cxx:1137
 AliAnalysisTaskPi0FlowMC.cxx:1138
 AliAnalysisTaskPi0FlowMC.cxx:1139
 AliAnalysisTaskPi0FlowMC.cxx:1140
 AliAnalysisTaskPi0FlowMC.cxx:1141
 AliAnalysisTaskPi0FlowMC.cxx:1142
 AliAnalysisTaskPi0FlowMC.cxx:1143
 AliAnalysisTaskPi0FlowMC.cxx:1144
 AliAnalysisTaskPi0FlowMC.cxx:1145
 AliAnalysisTaskPi0FlowMC.cxx:1146
 AliAnalysisTaskPi0FlowMC.cxx:1147
 AliAnalysisTaskPi0FlowMC.cxx:1148
 AliAnalysisTaskPi0FlowMC.cxx:1149
 AliAnalysisTaskPi0FlowMC.cxx:1150
 AliAnalysisTaskPi0FlowMC.cxx:1151
 AliAnalysisTaskPi0FlowMC.cxx:1152
 AliAnalysisTaskPi0FlowMC.cxx:1153
 AliAnalysisTaskPi0FlowMC.cxx:1154
 AliAnalysisTaskPi0FlowMC.cxx:1155
 AliAnalysisTaskPi0FlowMC.cxx:1156
 AliAnalysisTaskPi0FlowMC.cxx:1157
 AliAnalysisTaskPi0FlowMC.cxx:1158
 AliAnalysisTaskPi0FlowMC.cxx:1159
 AliAnalysisTaskPi0FlowMC.cxx:1160
 AliAnalysisTaskPi0FlowMC.cxx:1161
 AliAnalysisTaskPi0FlowMC.cxx:1162
 AliAnalysisTaskPi0FlowMC.cxx:1163
 AliAnalysisTaskPi0FlowMC.cxx:1164
 AliAnalysisTaskPi0FlowMC.cxx:1165
 AliAnalysisTaskPi0FlowMC.cxx:1166
 AliAnalysisTaskPi0FlowMC.cxx:1167
 AliAnalysisTaskPi0FlowMC.cxx:1168
 AliAnalysisTaskPi0FlowMC.cxx:1169
 AliAnalysisTaskPi0FlowMC.cxx:1170
 AliAnalysisTaskPi0FlowMC.cxx:1171
 AliAnalysisTaskPi0FlowMC.cxx:1172
 AliAnalysisTaskPi0FlowMC.cxx:1173
 AliAnalysisTaskPi0FlowMC.cxx:1174
 AliAnalysisTaskPi0FlowMC.cxx:1175
 AliAnalysisTaskPi0FlowMC.cxx:1176
 AliAnalysisTaskPi0FlowMC.cxx:1177
 AliAnalysisTaskPi0FlowMC.cxx:1178
 AliAnalysisTaskPi0FlowMC.cxx:1179
 AliAnalysisTaskPi0FlowMC.cxx:1180
 AliAnalysisTaskPi0FlowMC.cxx:1181
 AliAnalysisTaskPi0FlowMC.cxx:1182
 AliAnalysisTaskPi0FlowMC.cxx:1183
 AliAnalysisTaskPi0FlowMC.cxx:1184
 AliAnalysisTaskPi0FlowMC.cxx:1185
 AliAnalysisTaskPi0FlowMC.cxx:1186
 AliAnalysisTaskPi0FlowMC.cxx:1187
 AliAnalysisTaskPi0FlowMC.cxx:1188
 AliAnalysisTaskPi0FlowMC.cxx:1189
 AliAnalysisTaskPi0FlowMC.cxx:1190
 AliAnalysisTaskPi0FlowMC.cxx:1191
 AliAnalysisTaskPi0FlowMC.cxx:1192
 AliAnalysisTaskPi0FlowMC.cxx:1193
 AliAnalysisTaskPi0FlowMC.cxx:1194
 AliAnalysisTaskPi0FlowMC.cxx:1195
 AliAnalysisTaskPi0FlowMC.cxx:1196
 AliAnalysisTaskPi0FlowMC.cxx:1197
 AliAnalysisTaskPi0FlowMC.cxx:1198
 AliAnalysisTaskPi0FlowMC.cxx:1199
 AliAnalysisTaskPi0FlowMC.cxx:1200
 AliAnalysisTaskPi0FlowMC.cxx:1201
 AliAnalysisTaskPi0FlowMC.cxx:1202
 AliAnalysisTaskPi0FlowMC.cxx:1203
 AliAnalysisTaskPi0FlowMC.cxx:1204
 AliAnalysisTaskPi0FlowMC.cxx:1205
 AliAnalysisTaskPi0FlowMC.cxx:1206
 AliAnalysisTaskPi0FlowMC.cxx:1207
 AliAnalysisTaskPi0FlowMC.cxx:1208
 AliAnalysisTaskPi0FlowMC.cxx:1209
 AliAnalysisTaskPi0FlowMC.cxx:1210
 AliAnalysisTaskPi0FlowMC.cxx:1211
 AliAnalysisTaskPi0FlowMC.cxx:1212
 AliAnalysisTaskPi0FlowMC.cxx:1213
 AliAnalysisTaskPi0FlowMC.cxx:1214
 AliAnalysisTaskPi0FlowMC.cxx:1215
 AliAnalysisTaskPi0FlowMC.cxx:1216
 AliAnalysisTaskPi0FlowMC.cxx:1217
 AliAnalysisTaskPi0FlowMC.cxx:1218
 AliAnalysisTaskPi0FlowMC.cxx:1219
 AliAnalysisTaskPi0FlowMC.cxx:1220
 AliAnalysisTaskPi0FlowMC.cxx:1221
 AliAnalysisTaskPi0FlowMC.cxx:1222
 AliAnalysisTaskPi0FlowMC.cxx:1223
 AliAnalysisTaskPi0FlowMC.cxx:1224
 AliAnalysisTaskPi0FlowMC.cxx:1225
 AliAnalysisTaskPi0FlowMC.cxx:1226
 AliAnalysisTaskPi0FlowMC.cxx:1227
 AliAnalysisTaskPi0FlowMC.cxx:1228
 AliAnalysisTaskPi0FlowMC.cxx:1229
 AliAnalysisTaskPi0FlowMC.cxx:1230
 AliAnalysisTaskPi0FlowMC.cxx:1231
 AliAnalysisTaskPi0FlowMC.cxx:1232
 AliAnalysisTaskPi0FlowMC.cxx:1233
 AliAnalysisTaskPi0FlowMC.cxx:1234
 AliAnalysisTaskPi0FlowMC.cxx:1235
 AliAnalysisTaskPi0FlowMC.cxx:1236
 AliAnalysisTaskPi0FlowMC.cxx:1237
 AliAnalysisTaskPi0FlowMC.cxx:1238
 AliAnalysisTaskPi0FlowMC.cxx:1239
 AliAnalysisTaskPi0FlowMC.cxx:1240
 AliAnalysisTaskPi0FlowMC.cxx:1241
 AliAnalysisTaskPi0FlowMC.cxx:1242
 AliAnalysisTaskPi0FlowMC.cxx:1243
 AliAnalysisTaskPi0FlowMC.cxx:1244
 AliAnalysisTaskPi0FlowMC.cxx:1245
 AliAnalysisTaskPi0FlowMC.cxx:1246
 AliAnalysisTaskPi0FlowMC.cxx:1247
 AliAnalysisTaskPi0FlowMC.cxx:1248
 AliAnalysisTaskPi0FlowMC.cxx:1249
 AliAnalysisTaskPi0FlowMC.cxx:1250
 AliAnalysisTaskPi0FlowMC.cxx:1251
 AliAnalysisTaskPi0FlowMC.cxx:1252
 AliAnalysisTaskPi0FlowMC.cxx:1253
 AliAnalysisTaskPi0FlowMC.cxx:1254
 AliAnalysisTaskPi0FlowMC.cxx:1255
 AliAnalysisTaskPi0FlowMC.cxx:1256
 AliAnalysisTaskPi0FlowMC.cxx:1257
 AliAnalysisTaskPi0FlowMC.cxx:1258
 AliAnalysisTaskPi0FlowMC.cxx:1259
 AliAnalysisTaskPi0FlowMC.cxx:1260
 AliAnalysisTaskPi0FlowMC.cxx:1261
 AliAnalysisTaskPi0FlowMC.cxx:1262
 AliAnalysisTaskPi0FlowMC.cxx:1263
 AliAnalysisTaskPi0FlowMC.cxx:1264
 AliAnalysisTaskPi0FlowMC.cxx:1265
 AliAnalysisTaskPi0FlowMC.cxx:1266
 AliAnalysisTaskPi0FlowMC.cxx:1267
 AliAnalysisTaskPi0FlowMC.cxx:1268
 AliAnalysisTaskPi0FlowMC.cxx:1269
 AliAnalysisTaskPi0FlowMC.cxx:1270
 AliAnalysisTaskPi0FlowMC.cxx:1271
 AliAnalysisTaskPi0FlowMC.cxx:1272
 AliAnalysisTaskPi0FlowMC.cxx:1273
 AliAnalysisTaskPi0FlowMC.cxx:1274
 AliAnalysisTaskPi0FlowMC.cxx:1275
 AliAnalysisTaskPi0FlowMC.cxx:1276
 AliAnalysisTaskPi0FlowMC.cxx:1277
 AliAnalysisTaskPi0FlowMC.cxx:1278
 AliAnalysisTaskPi0FlowMC.cxx:1279
 AliAnalysisTaskPi0FlowMC.cxx:1280
 AliAnalysisTaskPi0FlowMC.cxx:1281
 AliAnalysisTaskPi0FlowMC.cxx:1282
 AliAnalysisTaskPi0FlowMC.cxx:1283
 AliAnalysisTaskPi0FlowMC.cxx:1284
 AliAnalysisTaskPi0FlowMC.cxx:1285
 AliAnalysisTaskPi0FlowMC.cxx:1286
 AliAnalysisTaskPi0FlowMC.cxx:1287
 AliAnalysisTaskPi0FlowMC.cxx:1288
 AliAnalysisTaskPi0FlowMC.cxx:1289
 AliAnalysisTaskPi0FlowMC.cxx:1290
 AliAnalysisTaskPi0FlowMC.cxx:1291
 AliAnalysisTaskPi0FlowMC.cxx:1292
 AliAnalysisTaskPi0FlowMC.cxx:1293
 AliAnalysisTaskPi0FlowMC.cxx:1294
 AliAnalysisTaskPi0FlowMC.cxx:1295
 AliAnalysisTaskPi0FlowMC.cxx:1296
 AliAnalysisTaskPi0FlowMC.cxx:1297
 AliAnalysisTaskPi0FlowMC.cxx:1298
 AliAnalysisTaskPi0FlowMC.cxx:1299
 AliAnalysisTaskPi0FlowMC.cxx:1300
 AliAnalysisTaskPi0FlowMC.cxx:1301
 AliAnalysisTaskPi0FlowMC.cxx:1302
 AliAnalysisTaskPi0FlowMC.cxx:1303
 AliAnalysisTaskPi0FlowMC.cxx:1304
 AliAnalysisTaskPi0FlowMC.cxx:1305
 AliAnalysisTaskPi0FlowMC.cxx:1306
 AliAnalysisTaskPi0FlowMC.cxx:1307
 AliAnalysisTaskPi0FlowMC.cxx:1308
 AliAnalysisTaskPi0FlowMC.cxx:1309
 AliAnalysisTaskPi0FlowMC.cxx:1310
 AliAnalysisTaskPi0FlowMC.cxx:1311
 AliAnalysisTaskPi0FlowMC.cxx:1312
 AliAnalysisTaskPi0FlowMC.cxx:1313
 AliAnalysisTaskPi0FlowMC.cxx:1314
 AliAnalysisTaskPi0FlowMC.cxx:1315
 AliAnalysisTaskPi0FlowMC.cxx:1316
 AliAnalysisTaskPi0FlowMC.cxx:1317
 AliAnalysisTaskPi0FlowMC.cxx:1318
 AliAnalysisTaskPi0FlowMC.cxx:1319
 AliAnalysisTaskPi0FlowMC.cxx:1320
 AliAnalysisTaskPi0FlowMC.cxx:1321
 AliAnalysisTaskPi0FlowMC.cxx:1322
 AliAnalysisTaskPi0FlowMC.cxx:1323
 AliAnalysisTaskPi0FlowMC.cxx:1324
 AliAnalysisTaskPi0FlowMC.cxx:1325
 AliAnalysisTaskPi0FlowMC.cxx:1326
 AliAnalysisTaskPi0FlowMC.cxx:1327
 AliAnalysisTaskPi0FlowMC.cxx:1328
 AliAnalysisTaskPi0FlowMC.cxx:1329
 AliAnalysisTaskPi0FlowMC.cxx:1330
 AliAnalysisTaskPi0FlowMC.cxx:1331
 AliAnalysisTaskPi0FlowMC.cxx:1332
 AliAnalysisTaskPi0FlowMC.cxx:1333
 AliAnalysisTaskPi0FlowMC.cxx:1334
 AliAnalysisTaskPi0FlowMC.cxx:1335
 AliAnalysisTaskPi0FlowMC.cxx:1336
 AliAnalysisTaskPi0FlowMC.cxx:1337
 AliAnalysisTaskPi0FlowMC.cxx:1338
 AliAnalysisTaskPi0FlowMC.cxx:1339
 AliAnalysisTaskPi0FlowMC.cxx:1340
 AliAnalysisTaskPi0FlowMC.cxx:1341
 AliAnalysisTaskPi0FlowMC.cxx:1342
 AliAnalysisTaskPi0FlowMC.cxx:1343
 AliAnalysisTaskPi0FlowMC.cxx:1344
 AliAnalysisTaskPi0FlowMC.cxx:1345
 AliAnalysisTaskPi0FlowMC.cxx:1346
 AliAnalysisTaskPi0FlowMC.cxx:1347
 AliAnalysisTaskPi0FlowMC.cxx:1348
 AliAnalysisTaskPi0FlowMC.cxx:1349
 AliAnalysisTaskPi0FlowMC.cxx:1350
 AliAnalysisTaskPi0FlowMC.cxx:1351
 AliAnalysisTaskPi0FlowMC.cxx:1352
 AliAnalysisTaskPi0FlowMC.cxx:1353
 AliAnalysisTaskPi0FlowMC.cxx:1354
 AliAnalysisTaskPi0FlowMC.cxx:1355
 AliAnalysisTaskPi0FlowMC.cxx:1356
 AliAnalysisTaskPi0FlowMC.cxx:1357
 AliAnalysisTaskPi0FlowMC.cxx:1358
 AliAnalysisTaskPi0FlowMC.cxx:1359
 AliAnalysisTaskPi0FlowMC.cxx:1360
 AliAnalysisTaskPi0FlowMC.cxx:1361
 AliAnalysisTaskPi0FlowMC.cxx:1362
 AliAnalysisTaskPi0FlowMC.cxx:1363
 AliAnalysisTaskPi0FlowMC.cxx:1364
 AliAnalysisTaskPi0FlowMC.cxx:1365
 AliAnalysisTaskPi0FlowMC.cxx:1366
 AliAnalysisTaskPi0FlowMC.cxx:1367
 AliAnalysisTaskPi0FlowMC.cxx:1368
 AliAnalysisTaskPi0FlowMC.cxx:1369
 AliAnalysisTaskPi0FlowMC.cxx:1370
 AliAnalysisTaskPi0FlowMC.cxx:1371
 AliAnalysisTaskPi0FlowMC.cxx:1372
 AliAnalysisTaskPi0FlowMC.cxx:1373
 AliAnalysisTaskPi0FlowMC.cxx:1374
 AliAnalysisTaskPi0FlowMC.cxx:1375
 AliAnalysisTaskPi0FlowMC.cxx:1376
 AliAnalysisTaskPi0FlowMC.cxx:1377
 AliAnalysisTaskPi0FlowMC.cxx:1378
 AliAnalysisTaskPi0FlowMC.cxx:1379
 AliAnalysisTaskPi0FlowMC.cxx:1380
 AliAnalysisTaskPi0FlowMC.cxx:1381
 AliAnalysisTaskPi0FlowMC.cxx:1382
 AliAnalysisTaskPi0FlowMC.cxx:1383
 AliAnalysisTaskPi0FlowMC.cxx:1384
 AliAnalysisTaskPi0FlowMC.cxx:1385
 AliAnalysisTaskPi0FlowMC.cxx:1386
 AliAnalysisTaskPi0FlowMC.cxx:1387
 AliAnalysisTaskPi0FlowMC.cxx:1388
 AliAnalysisTaskPi0FlowMC.cxx:1389
 AliAnalysisTaskPi0FlowMC.cxx:1390
 AliAnalysisTaskPi0FlowMC.cxx:1391
 AliAnalysisTaskPi0FlowMC.cxx:1392
 AliAnalysisTaskPi0FlowMC.cxx:1393
 AliAnalysisTaskPi0FlowMC.cxx:1394
 AliAnalysisTaskPi0FlowMC.cxx:1395
 AliAnalysisTaskPi0FlowMC.cxx:1396
 AliAnalysisTaskPi0FlowMC.cxx:1397
 AliAnalysisTaskPi0FlowMC.cxx:1398
 AliAnalysisTaskPi0FlowMC.cxx:1399
 AliAnalysisTaskPi0FlowMC.cxx:1400
 AliAnalysisTaskPi0FlowMC.cxx:1401
 AliAnalysisTaskPi0FlowMC.cxx:1402
 AliAnalysisTaskPi0FlowMC.cxx:1403
 AliAnalysisTaskPi0FlowMC.cxx:1404
 AliAnalysisTaskPi0FlowMC.cxx:1405
 AliAnalysisTaskPi0FlowMC.cxx:1406
 AliAnalysisTaskPi0FlowMC.cxx:1407
 AliAnalysisTaskPi0FlowMC.cxx:1408
 AliAnalysisTaskPi0FlowMC.cxx:1409
 AliAnalysisTaskPi0FlowMC.cxx:1410
 AliAnalysisTaskPi0FlowMC.cxx:1411
 AliAnalysisTaskPi0FlowMC.cxx:1412
 AliAnalysisTaskPi0FlowMC.cxx:1413