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

////////////////////////////////////////////////
//--------------------------------------------- 
// Class doing conversion gamma dPhi correlations
// Gamma Conversion analysis
//---------------------------------------------
////////////////////////////////////////////////

#include "AliAnalysisTaskdPhi.h"

#include <TH2I.h>
#include <TList.h>
#include <TChain.h>
#include <TFile.h>
#include <AliAnalysisManager.h>
#include <AliInputEventHandler.h>
#include <AliESDInputHandler.h>
#include <AliAODInputHandler.h>
#include <TGeoGlobalMagField.h>

#include "AliConversionTrackCuts.h"
#include "AliConversionCuts.h"
#include "AliConversionMesonCuts.h"
#include "AliAODConversionPhoton.h"
#include "AliAODConversionMother.h"
#include "TGrid.h"
// #include "AliAnaConvCorrPhoton.h"
// #include "AliAnaConvCorrPion.h"
// #include "AliAnaConvIsolation.h"
#include "AliV0ReaderV1.h"
// Author Svein Lindal <slindal@fys.uio.no>
using namespace std;

ClassImp(AliAnalysisTaskdPhi)


//________________________________________________________________________
AliAnalysisTaskdPhi::AliAnalysisTaskdPhi(const char *name) : AliAnalysisTaskSE(name),
	fHistograms(NULL),
	fCorrSparse(NULL),
	fTrigSparse(NULL),
	fTrackSparse(NULL),
	fMassSparse(NULL),
	fV0Reader(NULL),
	fSaveReaderHists(kFALSE),
	fV0FilterEvent(NULL),
	fV0FilterPhoton(NULL),
	fV0Filters(),
	fEventFilters(),
	fEventFilter(NULL),
	fPhotonFilter(NULL),
	fMesonFilter(NULL),
	fMesonFilters(),
	fTrackFilter(NULL),
	fTrackFilters(),
	fGammas(),
	fTracks(),
	hMEvents(NULL),
	hTrackCent(NULL),
	hTrigPt(NULL),
	hTrackPt(NULL), 
	hTrigPhi(NULL),
	fDeltaAODBranchName("AliAODGammaConversion_gamma"), 
	fAxistPt(),
	fAxiscPt(),
	fAxisdEta(),
	fAxisTrigEta(),
	fAxisAssEta(),
	fAxisdPhi(),
	fAxisCent(),
	fAxisZ(), 
	fAxisPiM(), 
	fAxisTrackFilters(),							     
	fAxisV0Filters(),							     
	fAxisMesonFilters(),							     
	fkTrackAxis(kFALSE),
	fkV0Axis(kFALSE),
	fkPionAxis(kFALSE),
	fAxesList(), 
	fTrigAxesList(), 
	fTrackAxesList(), 
	fMassAxesList(),
	fDoPhoton(kFALSE), 
	fCorrectionMap(NULL)
{
	//constructor
	SetUpBins();

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

	fGammas.SetOwner(kTRUE);
	fTracks.SetOwner(kTRUE);
}



//________________________________________________________________________
AliAnalysisTaskdPhi::~AliAnalysisTaskdPhi(){
	//destructor

	if(fV0FilterEvent)
		delete fV0FilterEvent;
	fV0FilterEvent = NULL;

	if(fV0FilterPhoton)
		delete fV0FilterPhoton;
	fV0FilterPhoton = NULL;

	if(fMesonFilter)
		delete fMesonFilter;
	fMesonFilter = NULL;

	if(fEventFilter)
		delete fEventFilter;
	fEventFilter = NULL;

	if(fPhotonFilter)
		delete fPhotonFilter;
	fPhotonFilter = NULL;

	if(fHistograms)
		delete fHistograms;
	fHistograms = NULL;

	if(fTrackFilter)
		delete fTrackFilter;
	fTrackFilter = NULL;

	fGammas.Delete();
	fTracks.Delete();

}

///________________________________________________________________________
void AliAnalysisTaskdPhi::SetUpBins() {

	fAxisTrigEta.SetNameTitle("tEta", "Eta");
	fAxisTrigEta.Set(320, -0.8, 0.8);

	fAxisAssEta.SetNameTitle("aEta", "Eta");
	fAxisAssEta.Set(360, -0.9, 0.9);

	fAxisdEta.SetNameTitle("dEta", "Eta");
	fAxisdEta.Set(34, -1.7, 1.7);

	fAxisdPhi.SetNameTitle("dPhi", "delta Phi");
	fAxisdPhi.Set(32, -TMath::PiOver2(), 3*TMath::PiOver2());

	Double_t tptbins[10] = {0.1, 3.0, 4.0, 5.0, 6.0, 8.0, 10.0, 15, 50, 100};                                    fAxistPt.SetNameTitle("tPt", "tPt");
	fAxistPt.Set(9, tptbins);

	Double_t cptbins[13] = {0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 4.0, 5.0, 8.0, 10.0, 25, 50, 100};                     fAxiscPt.SetNameTitle("cPt", "cPt");
	fAxiscPt.Set(12, cptbins);

	fAxisZ.SetNameTitle("vertexz", "Z");
	fAxisZ.Set(4, -10, 10);

	Double_t centbins[5] = {0, 10, 30, 60, 100.1};
	fAxisCent.SetNameTitle("centrality", "Cent");
	fAxisCent.Set(4, centbins);

	fAxisPiM.SetNameTitle("InvMassPi0", "Invariant mass");
	Double_t mbins[7] = {0.1, 0.11, 0.12, 0.15, 0.16, 0.18, 0.2};
	fAxisPiM.Set(6, mbins);
}


///________________________________________________________________________
// void AliAnalysisTaskdPhi::SetUpCorrObjects() {
   // //Set up corr objects
   // AliDebug(AliLog::kDebug + 5, "Set Up corr objects");

   // if(fDoPhoton) {
   //   fPhotonCorr = new AliAnaConvCorrPhoton("PhotonCorr","photon %s");
   //   SetUpCorrAxes(fPhotonCorr);
   //   fPhotonCorr->CreateHistograms();
   //   fHistograms->Add(fPhotonCorr->GetHistograms());
   // }

   // fPionCorr = new AliAnaConvCorrPion("PionCorr", "pion");
   // SetUpCorrAxes(fPionCorr);
   // fPionCorr->GetAxisM().Set(fAxisPiM.GetNbins(), fAxisPiM.GetXbins()->GetArray());
   // fPionCorr->CreateHistograms();
   // fHistograms->Add(fPionCorr->GetHistograms());
   //}

 ///________________________________________________________________________    
// void AliAnalysisTaskdPhi::SetUpCorrAxes(AliAnaConvCorrBase * corr) {
   ///Set up axes in corr object
   // corr->GetAxisCent().Set(fAxisCent.GetNbins(), fAxisCent.GetXbins()->GetArray());
   // const Double_t * zbins = fAxisZ.GetXbins()->GetArray();
   // if(zbins) {
   //   corr->GetAxisZ().Set(fAxisZ.GetNbins(), fAxisZ.GetXbins()->GetArray());
   // } else {
   //   corr->GetAxisZ().Set(fAxisZ.GetNbins(), fAxisZ.GetBinLowEdge(1), fAxisZ.GetBinUpEdge(fAxisZ.GetNbins()));
   // }

   // corr->GetAxistPt().Set(fAxistPt.GetNbins(), fAxistPt.GetXbins()->GetArray());
   // corr->GetAxiscPt().Set(fAxiscPt.GetNbins(), fAxiscPt.GetXbins()->GetArray());
   //   corr->GetAxisdEta().Set(fAxisdEta.GetNbins(), fAxisdEta.GetBinLowEdge(1), fAxisdEta.GetBinUpEdge(fAxisdEta.GetNbins()));
   // corr->GetAxisTrigEta().Set(fAxisTrigEta.GetNbins(), fAxisTrigEta.GetBinLowEdge(1), fAxisTrigEta.GetBinUpEdge(fAxisTrigEta.GetNbins()));
   // corr->GetAxisAssEta().Set(fAxisAssEta.GetNbins(), fAxisAssEta.GetBinLowEdge(1), fAxisAssEta.GetBinUpEdge(fAxisAssEta.GetNbins()));
// }    


//________________________________________________________________________
void AliAnalysisTaskdPhi::UserCreateOutputObjects() {
	// Create histograms
	// TGrid::Connect("alien://",0,0,"t");
	// if(!gGrid) AliWarning("no GGrid");
	// TFile *tfile = TFile::Open("alien:///alice/cern.ch/user/s/slindal/trackMap.root", "READ");
	// if(tfile) {
	//   THnF * corrmap = dynamic_cast<THnF*>(tfile->Get("hTrackCorr"));
	//   if (corrmap) {
	//     fCorrectionMap = dynamic_cast<THnF*>(THn::CreateHn("corr", "corr", corrmap));
	//     for(Int_t i = 0; i < fCorrectionMap->GetNdimensions(); i++) {
	// 	TAxis * axis = fCorrectionMap->GetAxis(i);
	// 	axis->SetRange(1, axis->GetNbins());
	//     }
		
	//     cout << "yessssssssssssssssssssssssssssssssssssssssssssssssss"<<endl;
	//   } else {
	//     cout << "xxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxx xxxxxxxxxxxxxxxx"<<endl;
	//   }
	//   tfile->Close();
	// } else {
	//   cout << "no tfile shit shit shit "<<endl;
	//   AliFatal("file not ther!!!");
	// }

	
	fHistograms = new TList();
	fHistograms->SetName("dPhi_histograms");
	fHistograms->SetOwner(kTRUE);
	
	
	if(!fV0Reader){
		fV0Reader=(AliV0ReaderV1*)AliAnalysisManager::GetAnalysisManager()->GetTask("V0ReaderV1");
	}
	
	if(!fV0Reader){
		printf("Error: No V0 Reader");
	} // GetV0Reader
	
	
	if(fSaveReaderHists) {
		AliConversionPhotonCuts * v0cuts = fV0Reader->GetConversionCuts();
		if(v0cuts) {
			TList * histograms = v0cuts->GetCutHistograms();
			if(!histograms) {
				AliWarning("initializing v0 reader hists");
				v0cuts->InitCutHistograms("V0Reader", kTRUE);
			}
			histograms = v0cuts->GetCutHistograms();
			if(histograms) {
				fHistograms->Add(histograms);
			}
		}
	}
	
	for(Int_t igf = 0; igf < fV0Filters[0].GetEntriesFast(); igf ++){
		AliConversionPhotonCuts * f = dynamic_cast<AliConversionPhotonCuts*>(fV0Filters[0].At(igf));
		if(f) {
			TList * histograms = f->GetCutHistograms();
			if(histograms) fHistograms->Add(f->GetCutHistograms());
		}
	}

	for(Int_t igf = 0; igf < fV0Filters[1].GetEntriesFast(); igf ++){
		AliConversionPhotonCuts * f = dynamic_cast<AliConversionPhotonCuts*>(fV0Filters[1].At(igf));
		if(f) {
			TList * histograms = f->GetCutHistograms();
			if(histograms) fHistograms->Add(f->GetCutHistograms());
		}
	}

	for(Int_t igf = 0; igf < fMesonFilters[0].GetEntriesFast(); igf ++){
		AliConversionMesonCuts * f = dynamic_cast<AliConversionMesonCuts*>(fMesonFilters[0].At(igf));
		if(f) {
			TList * histograms = f->GetCutHistograms();
			if(histograms) fHistograms->Add(f->GetCutHistograms());
		}
	}

	for(Int_t igf = 0; igf < fMesonFilters[1].GetEntriesFast(); igf ++){
		AliConversionMesonCuts * f = dynamic_cast<AliConversionMesonCuts*>(fMesonFilters[1].At(igf));
		if(f) {
			TList * histograms = f->GetCutHistograms();
			if(histograms) fHistograms->Add(f->GetCutHistograms());
		}
	}

	if(fV0FilterEvent) {
		fV0FilterEvent->InitCutHistograms("V0FilterEvent", kFALSE);
		fHistograms->Add(fV0FilterEvent->GetCutHistograms());
	}
	if(fV0FilterPhoton) {
		fV0FilterPhoton->InitCutHistograms("V0FilterPhoton", kFALSE);
		fHistograms->Add(fV0FilterPhoton->GetCutHistograms());
	}
	if(fMesonFilter) {
		fMesonFilter->InitCutHistograms("PionFilter", kFALSE);
		fHistograms->Add(fMesonFilter->GetCutHistograms());
	}
	if(fPhotonFilter) {
		fPhotonFilter->InitCutHistograms("PhotonFilter", kFALSE);
		fHistograms->Add(fPhotonFilter->GetCutHistograms());
	}


	AliConversionTrackCuts * tc = dynamic_cast<AliConversionTrackCuts*>(fTrackFilter);
	if(tc) {
		fHistograms->Add(tc->CreateHistograms());
	}


	// for(Int_t i = 0; i < fTrackFilters.GetEntriesFast(); i++) {
	//   AliConversionTrackCuts * tc = dynamic_cast<AliConversionTrackCuts*>(fTrackFilters.At(i));
	//   if(tc) fHistograms->Add(tc->CreateHistograms());
	// }

	//SetUpCorrObjects();

	///Set up ME histograms
	TList * MEHistograms = new TList();
	MEHistograms->SetName("MEHistograms");
	MEHistograms->SetOwner(kTRUE);
	fHistograms->Add(MEHistograms);
	
	hMEvents = new TH2I("hMEvents", "Nevents vs centrality vertexz",
				fAxisZ.GetNbins(), fAxisZ.GetXbins()->GetArray(),
				fAxisCent.GetNbins(), fAxisCent.GetXbins()->GetArray());
	MEHistograms->Add(hMEvents);

	hTrackCent = new TH2I("hTrackCent", "N accepted tracks vs centrality",
				fAxisCent.GetNbins() > 1 ? (int) (10*(fAxisCent.GetXmax() - fAxisCent.GetXmin()))  : 1, 
				fAxisCent.GetXmin(), fAxisCent.GetXmax(),
				fAxisCent.GetNbins() > 1 ? 900 : 50, 
				0,
				fAxisCent.GetNbins() > 1 ? 1800 : 50);
	MEHistograms->Add(hTrackCent);

	hTrigPt = new TH3F("hTrigPt", "trigger pt", 100, 0., 10., 
				10, 0., 50., 
				5,  0.05, 0.2);
	MEHistograms->Add(hTrigPt);
	hTrackPt = new TH2F("hTrackPt", "track pt", 100, 0, 10, 10, 0, 50);//fAxisCent.GetNbins(), fAxisCent.GetXbins()->GetArray()); 
	MEHistograms->Add(hTrackPt);
	hTrigPhi = new TH1F("hTrigPhi", "trigger pt", 32, 0, 2*TMath::Pi());
	MEHistograms->Add(hTrigPhi);



	Int_t ntrackfilters[2] = {fTrackFilters[0].GetEntriesFast(), fTrackFilters[1].GetEntriesFast()};
	fkTrackAxis = kTRUE;
	fAxisTrackFilters.SetNameTitle("trackCuts", "trackCuts");
	fAxisTrackFilters.Set(ntrackfilters[0] + ntrackfilters[1] + 1, -ntrackfilters[0] -0.5, ntrackfilters[1]  + 0.5);

	Int_t nV0filters[2] = {fV0Filters[0].GetEntriesFast(), fV0Filters[1].GetEntriesFast()};
	fkV0Axis = kTRUE;
	fAxisV0Filters.SetNameTitle("V0Cuts", "V0Cuts");
	fAxisV0Filters.Set(nV0filters[0] + nV0filters[1] + 1, -nV0filters[0] -0.5, nV0filters[1]  + 0.5);
	
	Int_t nmesonfilters[2] = {fMesonFilters[0].GetEntriesFast(), fMesonFilters[1].GetEntriesFast()};
	fkPionAxis = kTRUE;
	fAxisMesonFilters.SetNameTitle("mesonCuts", "mesonCuts");
	fAxisMesonFilters.Set(nmesonfilters[0] + nmesonfilters[1] + 1, -nmesonfilters[0] -0.5, nmesonfilters[1]  + 0.5);
	
	fAxesList.AddAt(&fAxisdEta, 0);
	fAxesList.AddAt(&fAxisdPhi, 1);
	fAxesList.AddAt(&fAxistPt, 2);
	fAxesList.AddAt(&fAxiscPt, 3);
	fAxesList.AddAt(&fAxisCent, 4);
	fAxesList.AddAt(&fAxisZ, 5);
	fAxesList.AddAt(&fAxisPiM, 6);
	fAxesList.AddAt(&fAxisTrackFilters, 7);
	fAxesList.AddAt(&fAxisV0Filters, 8);
	fAxesList.AddAt(&fAxisMesonFilters, 9);
	
	fTrackAxesList.AddAt(&fAxisAssEta, 0);
	fTrackAxesList.AddAt(&fAxistPt, 1);
	fTrackAxesList.AddAt(&fAxiscPt, 2);
	fTrackAxesList.AddAt(&fAxisCent, 3);
	fTrackAxesList.AddAt(&fAxisZ, 4);
	//fTrackAxesList.AddAt(&fAxisPiM, 5);
	fTrackAxesList.AddAt(&fAxisTrackFilters, 5);
	fTrackAxesList.AddAt(&fAxisV0Filters, 6);
	fTrackAxesList.AddAt(&fAxisMesonFilters, 7);
	
	fTrigAxesList.AddAt(&fAxisTrigEta, 0);
	fTrigAxesList.AddAt(&fAxistPt, 1);
	fTrigAxesList.AddAt(&fAxisCent, 2);
	fTrigAxesList.AddAt(&fAxisZ, 3);
	fTrigAxesList.AddAt(&fAxisPiM, 4);
	fTrigAxesList.AddAt(&fAxisV0Filters, 5);
	fTrigAxesList.AddAt(&fAxisMesonFilters, 6);
	
	TList masslist;
	TAxis massax;
	massax.SetNameTitle("mass", "mass");
	massax.Set(360, 0.04, 0.4); //hardcoded! change also in filling!
	
	masslist.AddAt(&massax, 0);
	masslist.AddAt(&fAxistPt, 1);
	masslist.AddAt(&fAxisCent, 2);
	masslist.AddAt(&fAxisV0Filters, 3);
	masslist.AddAt(&fAxisMesonFilters, 4);
	
	fCorrSparse = CreateSparse(TString("pionSparse"), TString("pionSparse"), &fAxesList);
	fTrackSparse = CreateSparse(TString("trackSparse"), TString("trackSparse"), &fTrackAxesList);
	fTrigSparse = CreateSparse(TString("trigSparse"), TString("trigSparse"), &fTrigAxesList);
	fMassSparse = CreateSparse("massSparse", "massSparse", &masslist);
	
	fHistograms->Add(fCorrSparse);
	fHistograms->Add(fTrackSparse);
	fHistograms->Add(fTrigSparse);
	fHistograms->Add(fMassSparse);


	///Add gamma and track containers:
	for(Int_t i = 0; i < fV0Filters[1].GetEntriesFast() + 1; i++) {
		fGammas.Add(new TObjArray());
	}

	for(Int_t i = 0; i < fTrackFilters[1].GetEntriesFast() + 1; i++) {
		fTracks.Add(new TObjArray());
	}
	PostData(1, fHistograms);
}

///________________________________________________________________________
THnSparseF * AliAnalysisTaskdPhi::CreateSparse(TString nameString, TString titleString, TList * axesList) {
	//Create sparse
	const Int_t dim = axesList->GetSize();
	
	TAxis * axes[dim];
	Int_t   bins[dim];
	Double_t min[dim];
	Double_t max[dim];

	for(Int_t i = 0; i<dim; i++) {
		TAxis * axis = dynamic_cast<TAxis*>(axesList->At(i));
		if(axis) axes[i] = axis;
		else {
		cout << "AliAnalysisTaskdPhi::CreateSparse: Error error, all the axes are not present in axis list" << endl;
		return NULL;
		}
	}
	
	for(Int_t i = 0; i<dim; i++) {
		//cout << axes[i]->GetTitle() << endl;
		bins[i] = axes[i]->GetNbins(); 
		min[i] = axes[i]->GetBinLowEdge(1);
		max[i] = axes[i]->GetBinUpEdge(axes[i]->GetNbins());
	}

	THnSparseF * sparse = new THnSparseF(Form("%s", nameString.Data()), 
						Form("%s", titleString.Data()), 
						dim, bins, min, max);
	
	for(Int_t i = 0; i<dim; i++) {
		sparse->GetAxis(i)->SetNameTitle(axes[i]->GetName(), axes[i]->GetTitle() );
		if(axes[i]->GetXbins()->GetSize() > 0) {
		sparse->SetBinEdges(i, axes[i]->GetXbins()->GetArray() );
		}
	}
	return sparse;
}

//________________________________________________________________________
void AliAnalysisTaskdPhi::UserExec(Option_t *) {
	///User exec. 
	///This is a very ugly function, cut the complexity of the logic demands it.
	

	AliESDEvent * esdEvent = dynamic_cast<AliESDEvent*>(fInputEvent);
	if(esdEvent) {
		if (!TGeoGlobalMagField::Instance()->GetField()) esdEvent->InitMagneticField(); 
	}


	//if(! fV0Filter->EventIsSelected(fInputEvent)) return;
	if(!fV0Reader){
		AliError("Error: No V0 Reader");
		return;
	} // GetV0Reader
	
	if(!fV0Reader->IsEventSelected()) {
		return;
	}

	AliDebug(5, "Processing event");
	
	
	for(Int_t i = 0; i < fGammas.GetEntriesFast(); i++) {
		static_cast<TObjArray*>(fGammas.At(i))->Clear();
	}

	for(Int_t i = 0; i < fTracks.GetEntriesFast(); i++) {
		static_cast<TObjArray*>(fTracks.At(i))->Clear();
	}


	
	AliAnalysisManager *man=AliAnalysisManager::GetAnalysisManager();
	Bool_t isAOD=man->GetInputEventHandler()->IsA()==AliAODInputHandler::Class();
	
	AliInputEventHandler* inputHandler = (AliInputEventHandler*) (man->GetInputEventHandler());
	if (!inputHandler) {
		cout << "cout no input event handler"<<endl;
		return;
	}

	for(Int_t igf = 0; igf < fV0Filters[0].GetEntriesFast(); igf++) {
		AliConversionPhotonCuts * f = dynamic_cast<AliConversionPhotonCuts*>(fV0Filters[0].At(igf));
		if ( f && !f->GetPIDResponse() ) {
			if ( inputHandler->GetPIDResponse() ){
				f->SetPIDResponse( inputHandler->GetPIDResponse() );
			} else {
				if (isAOD){
					if (!f->GetPIDResponse()){
						f->InitAODpidUtil(1);
					}
				}
			}
		} else {
			break;
		}
	}

	for(Int_t igf = 0; igf < fV0Filters[1].GetEntriesFast(); igf++) {
		AliConversionPhotonCuts * f = dynamic_cast<AliConversionPhotonCuts*>(fV0Filters[1].At(igf));
		if ( f && !f->GetPIDResponse() ) {
			if ( inputHandler->GetPIDResponse() ){
				f->SetPIDResponse( inputHandler->GetPIDResponse() );
			} else {
				if (isAOD){
					if (!f->GetPIDResponse()){
						f->InitAODpidUtil(1);
					}
				}
			}
		} else {
			break;
		}
	}

	
	if ( fV0FilterPhoton && !fV0FilterPhoton->GetPIDResponse() ) {
		if ( inputHandler->GetPIDResponse() ){
			fV0FilterPhoton->SetPIDResponse( inputHandler->GetPIDResponse() );
		} else {
			//AOD case
			if (isAOD){
				if (!fV0FilterPhoton->GetPIDResponse()){
					fV0FilterPhoton->InitAODpidUtil(1);
				}
			}
		}
	}


	///Initialize track cuts. Delete tracks that have been constrained to vertex (copies)
	AliConversionTrackCuts * tc = dynamic_cast<AliConversionTrackCuts*>(fTrackFilter);
	if(tc) {
		tc->SetEvent(fInputEvent);
		tc->DeleteTracks();
	}
	
	for(Int_t i = 0; i < fTrackFilters[0].GetEntriesFast(); i++){
		AliConversionTrackCuts * tct = dynamic_cast<AliConversionTrackCuts*>(fTrackFilters[0].At(i));
		if(tct) {
			tct->SetEvent(fInputEvent);
			tct->DeleteTracks();
		}
	}
	for(Int_t i = 0; i < fTrackFilters[1].GetEntriesFast(); i++){
		AliConversionTrackCuts * tct = dynamic_cast<AliConversionTrackCuts*>(fTrackFilters[1].At(i));
		if(tct) {
			tct->SetEvent(fInputEvent);
			tct->DeleteTracks();
		}
	}
	
	Double_t centrality = 0.0;
	Double_t vertexz = fInputEvent->GetPrimaryVertex()->GetZ();
	if(isAOD) {
		AliAODHeader * header = static_cast<AliAODHeader*>(fInputEvent->GetHeader());
		centrality = header->GetCentrality();
	} else {
		centrality = static_cast<AliESDEvent*>(fInputEvent)->GetCentrality()->GetCentralityPercentile("V0M");
	}
	
	const Int_t centBin = GetBin(fAxisCent, centrality);
	const Int_t vertexBin = GetBin(fAxisZ, vertexz);
	
	if(DebugLevel () > 4) {
		cout << "centrality: " << centrality <<  " " << GetBin(fAxisCent, centrality) << endl;
		cout << "vertexz: " << vertexz <<  " " << GetBin(fAxisZ, vertexz) << endl;
	}
	
	if(centBin < 0 || vertexBin < 0) {
		//	AliError("bin out of range");
		return;
	}
	
	
	//TClonesArray * aodGammas = GetConversionGammas(isAOD);
	TClonesArray * aodGammas = fV0Reader->GetReconstructedGammas();
	if(!aodGammas) {
		AliError("no aod gammas found!");
		return;
	}
	
	TObjArray * ggammas = static_cast<TObjArray*>(fGammas.At(0));

	///Fill arrays of accepted gammas
	if(DebugLevel() > 1) printf("Number of conversion gammas %d \n", aodGammas->GetEntriesFast());
	for(Int_t ig = 0; ig < aodGammas->GetEntriesFast(); ig++) {
		AliAODConversionPhoton * photon = dynamic_cast<AliAODConversionPhoton*>(aodGammas->At(ig));
		if(!photon) continue;
		if(!fV0FilterPhoton || fV0FilterPhoton->PhotonIsSelected(photon, fInputEvent)) {
			ggammas->Add(photon);
		} else {
			for(Int_t igf = 0; igf < fV0Filters[1].GetEntriesFast(); igf++) {
				AliConversionPhotonCuts * gfilter = dynamic_cast<AliConversionPhotonCuts*>(fV0Filters[1].At(igf));
				if(gfilter && gfilter->PhotonIsSelected(photon, fInputEvent)) {
					static_cast<TObjArray*>(fGammas.At(igf+1))->Add(photon);
				}
			}
		}
	}

	Bool_t lowgmap[fV0Filters[0].GetEntriesFast()][ggammas->GetEntriesFast()];

	for(Int_t ig = 0; ig < ggammas->GetEntriesFast(); ig++ ) {
		AliAODConversionPhoton * gamma = static_cast<AliAODConversionPhoton*>(ggammas->At(ig));
		for(Int_t igf = 0; igf < fV0Filters[0].GetEntriesFast(); igf++) {
			
			AliConversionPhotonCuts * v0cuts = static_cast<AliConversionPhotonCuts*>(fV0Filters[0].At(igf));
			if(!(v0cuts->PhotonIsSelected(gamma, fInputEvent))) {
				lowgmap[igf][ig] = kTRUE;
			} else {
				lowgmap[igf][ig] = kFALSE;
			}
		}
	}
	

	if(DebugLevel() > 4) printf("Number of accepted gammas %d \n", ggammas->GetEntriesFast());
	hMEvents->Fill(vertexz, centrality);
	
	///create track array
	const Int_t ntrackfilters[2] = { fTrackFilters[0].GetEntriesFast(), fTrackFilters[1].GetEntriesFast()};
	
	TObjArray * ttracks = static_cast<TObjArray*>(fTracks.At(0));
	const Double_t aetalim[2] = { fAxisAssEta.GetXmin(), fAxisAssEta.GetXmax()};
	const Double_t aptlim[2] = { fAxiscPt.GetXmin(), fAxiscPt.GetXmax()};
	for(Int_t iTrack = 0; iTrack < fInputEvent->GetNumberOfTracks(); iTrack++) {
		AliVTrack * track = static_cast<AliVTrack*>(fInputEvent->GetTrack(iTrack));
		if(track->Pt() < aptlim[0] || track->Pt() > aptlim[1]) continue;
		if(track->Eta() < aetalim[0] || track->Eta() > aetalim[1]) continue;
		if(fTrackFilter->IsSelected(track)) {
			hTrackPt->Fill(track->Pt(), centrality);
			ttracks->Add(track);
		} else {
			///upside cuts
			for(Int_t itf = 1; itf < ntrackfilters[1] + 1; itf++) {
				AliAnalysisCuts * trackCuts = static_cast<AliAnalysisCuts*>(fTrackFilters[1].At(itf -1));
				if(trackCuts->IsSelected(track)) {
					static_cast<TObjArray*>(fTracks.At(itf))->Add(track);
				}
			}
		}
	}


	Bool_t lowtrackmap[ntrackfilters[0]][ttracks->GetEntriesFast()];
	///Check lowside cuts
	for(Int_t iTrack = 0; iTrack < ttracks->GetEntriesFast(); iTrack++ ) {
		AliVTrack * track = static_cast<AliVTrack*>(ttracks->At(iTrack));
		for(Int_t itf = 0; itf < ntrackfilters[0]; itf++) {
			AliAnalysisCuts * trackCuts = static_cast<AliAnalysisCuts*>(fTrackFilters[0].At(itf));
			if(!trackCuts->IsSelected(track)) {
				lowtrackmap[itf][iTrack] = kTRUE;
			} else {
				lowtrackmap[itf][iTrack] = kFALSE;
			}
		}
	}

	hTrackCent->Fill(centrality, ttracks->GetEntriesFast());
	
	const Double_t etalim[2] = { fAxisTrigEta.GetXmin(), fAxisTrigEta.GetXmax()};
	if(DebugLevel() > 4) printf("Number of accepted gammas, tracks %d  %d \n", ggammas->GetEntriesFast(), ttracks->GetEntriesFast());
	
	//AliAnaConvCorrBase * gCorr = fPhotonCorr; //GetCorrObject(vertexBin, centBin, fPhotonCorr);
	//  AliAnaConvCorrPion * piCorr = fPionCorr; //static_cast<AliAnaConvCorrPion*>(GetCorrObject(vertexBin, centBin, fPionCorr));
	// if(!piCorr) {
	//   AliError("corr object missing");
	//   return;
	// }
	
	TObjArray pions;

	///corr values
	Double_t dphivalues[fAxesList.GetSize()];
	dphivalues[4] = centrality;
	dphivalues[5] = vertexz;

	///Trigger me counters
	Double_t trigValues[7];
	trigValues[2] = centrality;
	trigValues[3] = vertexz;

	///Mass histogram
	Double_t massval[5];
	massval[2] = centrality;
	
	///Set up track me counters and initialize
	const Int_t nbins = fAxistPt.GetNbins();
	Bool_t tmap[fAxistPt.GetNbins()];
	Bool_t lv0tmap[fAxistPt.GetNbins()][fV0Filters[0].GetEntriesFast()];
	Bool_t uv0tmap[fAxistPt.GetNbins()][fV0Filters[1].GetEntriesFast()];

	Bool_t lpitmap[fAxistPt.GetNbins()][fMesonFilters[0].GetEntriesFast()];
	Bool_t upitmap[fAxistPt.GetNbins()][fMesonFilters[1].GetEntriesFast()];
	
	for(Int_t igf = 0; igf < fV0Filters[0].GetEntriesFast(); igf++) {
		for(Int_t ptbin = 0; ptbin < fAxistPt.GetNbins(); ptbin++) {
			lv0tmap[ptbin][igf] = kFALSE;
		}
	}

	for(Int_t igf = 0; igf < fV0Filters[1].GetEntriesFast(); igf++) {
		for(Int_t ptbin = 0; ptbin < fAxistPt.GetNbins(); ptbin++) {
			uv0tmap[ptbin][igf] = kFALSE;
		}
	}

	for(Int_t igf = 0; igf < fMesonFilters[0].GetEntriesFast(); igf++) {
		for(Int_t ptbin = 0; ptbin < fAxistPt.GetNbins(); ptbin++) {
			lpitmap[ptbin][igf] = kFALSE;
		}
	}

	for(Int_t igf = 0; igf < fMesonFilters[1].GetEntriesFast(); igf++) {
		for(Int_t ptbin = 0; ptbin < fAxistPt.GetNbins(); ptbin++) {
			upitmap[ptbin][igf] = kFALSE;
		}
	}

	for(Int_t ptbin = 0; ptbin < nbins; ptbin++){
		tmap[ptbin] = kFALSE;
	}

	/////////////////////////////////////////


	for(Int_t igf1 = 0; igf1 < fV0Filters[1].GetEntriesFast() + 1; igf1++) {
		TObjArray * gamm1 = static_cast<TObjArray*>(fGammas.At(igf1));
		for(Int_t i1 = 0; i1 < gamm1->GetEntriesFast(); i1++) {
			AliAODConversionPhoton * ph1 = static_cast<AliAODConversionPhoton*>(gamm1->UncheckedAt(i1));
			Int_t tIDs[4] = {ph1->GetLabel(0), ph1->GetLabel(1), -1, -1};
			
			///Combine gamma into pions
			Int_t igmax = 0;
			for(Int_t igf2 = 0; igf2 <= igf1; igf2++) {
			TObjArray * gamm2 = NULL;
			if(igf2 == igf1) {
				gamm2 = gamm1;
				igmax = i1;
			} else {
				gamm2 = static_cast<TObjArray*>(fGammas.At(igf2));
				igmax = gamm2->GetEntriesFast();
			}

			for(Int_t i2 = 0; i2 < igmax; i2++) {
				AliAODConversionPhoton * ph2 = static_cast<AliAODConversionPhoton*>(gamm2->UncheckedAt(i2));
				
				if( ph2->GetTrackLabelPositive()==ph1->GetTrackLabelPositive() 
					|| ph2->GetTrackLabelNegative()==ph1->GetTrackLabelNegative()
					|| ph2->GetTrackLabelNegative()==ph1->GetTrackLabelPositive()
					|| ph2->GetTrackLabelPositive()==ph1->GetTrackLabelNegative()) {
					continue;
				}
				
				AliAODConversionMother * pion = new AliAODConversionMother(ph1, ph2);
				if(pion->Eta() < etalim[0] || pion->Eta() > etalim[1]) continue;
				pion->CalculateDistanceOfClossetApproachToPrimVtx(fInputEvent->GetPrimaryVertex());	  


				tIDs[2] = ph2->GetLabel(0);
				tIDs[3] = ph2->GetLabel(1);

				massval[0] = pion->M();
				massval[1] = pion->Pt();
				massval[3] = igf1;
				massval[4] = 0;

				dphivalues[2] = pion->Pt();
				dphivalues[6] = pion->M();
				dphivalues[8] = igf1;
				dphivalues[9] = 0;
				
				trigValues[0] = pion->Eta();
				trigValues[1] = pion->Pt();
				trigValues[4] = pion->M();
				trigValues[5] = igf1; 
				trigValues[6] = 0;
				

				///Check that particle is in histo phase space
				if(pion->Pt() > fAxistPt.GetBinLowEdge(1) && pion->Pt() < fAxistPt.GetXmax() &&
					pion->Eta() > etalim[0] && pion->Eta() < etalim[1] &&
					pion->M() > 0.04 && pion->M() < 0.4
					) {
						
						
						if(fMesonFilter->MesonIsSelected(pion, kTRUE)) {

							fMassSparse->Fill(massval);

							Bool_t lpimap[fMesonFilters[0].GetEntriesFast()];
							///See if it passes lowside cuts
							if(igf1 == 0 && igf2 == 0) {

								///Low side pion
								massval[3] = 0;
								for(Int_t ilpf = 0; ilpf < fMesonFilters[0].GetEntriesFast(); ilpf++) {
									if(!(static_cast<AliConversionMesonCuts*>(fMesonFilters[0].At(ilpf))->MesonIsSelected(pion, kTRUE))) {
										lpimap[ilpf] = kTRUE;
										massval[4] = -(ilpf + 1);
										fMassSparse->Fill(massval);
									} else {
										lpimap[ilpf] = kFALSE;
									}
									massval[4] = 0;
								}
								///Lowside v0
								for(Int_t iglf = 0; iglf < fV0Filters[0].GetEntriesFast(); iglf++) {
									if(lowgmap[iglf][i1] || lowgmap[iglf][i2]){
										massval[3] = -(iglf+1);
										fMassSparse->Fill(massval);
									}
								}
								massval[3] = 0;
							}  /// End lowside mass histo fillers
									
							
							///Check that particle is in histo phase space
							if(pion->Pt() > fAxistPt.GetBinLowEdge(1) && pion->Pt() < fAxistPt.GetXmax() &&
								pion->M() > fAxisPiM.GetXmin() && pion->M() < fAxisPiM.GetXmax() &&
								pion->Eta() > etalim[0] && pion->Eta() < etalim[1]) {

								const Int_t tbin = fAxistPt.FindFixBin(pion->Pt());
								///Fill standard triggers including upside v0 filters
								fTrigSparse->Fill(trigValues);
								if(igf1 == 0 && igf2 == 0) {
									// piCorr->FillTriggerCounters(pion);
									// piCorr->CorrelateWithTracks(pion, &tracks[0], tIDs, centrality, vertexz);								
									////Only mix events with pion in signal region
									hTrigPt->Fill(pion->Pt(), centrality, pion->M());
									if(pion->M() > 0.1 && pion->M() < 0.15) {
										hTrigPhi->Fill(pion->Phi());
										///Check trigger bin
										if (tbin > 0 && tbin < (nbins + 1)) {
											tmap[tbin-1] = kTRUE;
										}
										///Check if trigger also in low side (both gamma present in low side!)
										for(Int_t ilgf = 0; ilgf < fV0Filters[0].GetEntriesFast(); ilgf++) {
											if(!lowgmap[ilgf][i1] || !lowgmap[ilgf][i2]) {
												lv0tmap[tbin-1][ilgf] = kTRUE;
											}
										}
										///See if the lowside pion filter also passes this, if not
										for(Int_t ilpf = 0; ilpf < fMesonFilters[0].GetEntriesFast(); ilpf++) {
											if(!lpimap[ilpf]) {
												lpitmap[tbin-1][ilpf] = kTRUE;
											}
										}
									}
								} else {
									if(pion->M() > 0.1 && pion->M() < 0.15) {
										uv0tmap[tbin-1][igf1 - 1] = kTRUE;
									}
								}
										
									
								///Fill the triggers not selected in lowside filters only if passsing standard v0 filter
								if(igf1 == 0 && igf2 == 0) {	
									///Lowside v0 filters
									for(Int_t iglf = 0; iglf < fV0Filters[0].GetEntriesFast(); iglf++) {
										if(lowgmap[iglf][i1] || lowgmap[iglf][i2]){
										trigValues[5] = -(iglf+1);
										fTrigSparse->Fill(trigValues);
										}
									}
									////Low side pion filters
									trigValues[5] = 0;
									for(Int_t iplf = 0; iplf < fMesonFilters[0].GetEntriesFast(); iplf ++) {
										if(lpimap[iplf]) {
										trigValues[6] = -(iplf + 1);
										fTrigSparse->Fill(trigValues);
										}
									}
								} // ifg1 == 0 
							
								trigValues[5] = igf1; 
								trigValues[6] = 0;

								///////////////////////////////////////////////
								/// Correlate with tracks
								///////////////////////////////////////////////

								Int_t ntf = 1;
								if(igf1 == 0 && igf2 == 0) { 
									ntf = fTrackFilters[1].GetEntriesFast() + 1;
								}

								for(Int_t itf = 0; itf < ntf; itf++) {
									TObjArray * tracks = static_cast<TObjArray*>(fTracks.At(itf));
									for(int ij = 0; ij < tracks->GetEntriesFast(); ij++) {
										AliVTrack * track = static_cast<AliVTrack*>(tracks->At(ij));
										Int_t tid = track->GetID();

										if(tid == tIDs[0] || tid == tIDs[1] || tid == tIDs[2] || tid == tIDs[3])  {
											continue;
										}
										
										if(tid < 0) {
											if(-tid-1 == tIDs[0]+1 || -tid-1 == tIDs[1]+1 || -tid-1 == tIDs[2]+1 || -tid-1 == tIDs[3]+1)  {
												continue;
											}
										}
									
										dphivalues[0] = pion->Eta() - track->Eta();
										dphivalues[1] = GetDPhi(pion->Phi() - track->Phi());
										dphivalues[3] = track->Pt();
										dphivalues[7] = itf;
										dphivalues[8] = igf1;
										dphivalues[9] = 0;
										fCorrSparse->Fill(dphivalues, GetTrackCorrection(vertexz, track));
								
										if(itf == 0 && igf1 == 0 && igf2 == 0) {
											///Fill the low side track filters
											for(Int_t itlf = 0; itlf < fTrackFilters[0].GetEntriesFast(); itlf++) {
												if(lowtrackmap[itlf][ij]){
													dphivalues[7] = -(itlf+1);
													fCorrSparse->Fill(dphivalues, GetTrackCorrection(vertexz, track));
												}
											}
											///Fill the low side v0 filters
											dphivalues[7] = 0;
											for(Int_t iglf = 0; iglf < fV0Filters[0].GetEntriesFast(); iglf++) {
												if(lowgmap[iglf][i1] || lowgmap[iglf][i2]){
													dphivalues[8] = -(iglf+1);
													fCorrSparse->Fill(dphivalues, GetTrackCorrection(vertexz, track));
												}
											}

											///Fill the low side pi filter
											dphivalues[7] = 0;
											dphivalues[8] = 0;
											for(Int_t iplf = 0; iplf < fMesonFilters[0].GetEntriesFast(); iplf ++) {
												if(lpimap[iplf]) {
													dphivalues[9] = -(iplf + 1);
													fCorrSparse->Fill(dphivalues, GetTrackCorrection(vertexz, track));
												}
											}
										}  /// end non standard filters track corr
									
									} // end for tracks
								} // end trackfilters loop
							} //end check pion in histogram range to prevent overflow
						} else {
							/////////////////////////////
							//// Not passing standard meson cuts, check upside filters	
							////////////////////////////
							
							///Only check the pions from standard v0 filter 
							if(igf1 == 0 && igf2 == 0) {
								for(Int_t ipuf = 0; ipuf < fMesonFilters[1].GetEntriesFast(); ipuf++) {
									if(static_cast<AliConversionMesonCuts*>(fMesonFilters[1].At(ipuf))->MesonIsSelected(pion, kTRUE)) {
										///Fill invariant mass hist
										massval[4] = (ipuf + 1);
										fMassSparse->Fill(massval);
										///Check that particle is in histo phase space --- redundant!
										
										

										if(pion->Pt() > fAxistPt.GetBinLowEdge(1) && pion->Pt() < fAxistPt.GetXmax() &&
										pion->M() > fAxisPiM.GetXmin() && pion->M() < fAxisPiM.GetXmax() &&
										pion->Eta() > etalim[0] && pion->Eta() < etalim[1]) {
											
											
											////Only mix events with pion in signal region
											if(pion->M() > 0.1 && pion->M() < 0.15) {
												const Int_t tbin = fAxistPt.FindFixBin(pion->Pt());
												upitmap[tbin-1][ipuf] = kTRUE;
											}
											
											///Fill trigger counters
											trigValues[6] = (ipuf + 1);
											fTrigSparse->Fill(trigValues);
											
											///Correlate with standard tracks
											for(int ij = 0; ij < ttracks->GetEntriesFast(); ij++) {
												AliVTrack * track = static_cast<AliVTrack*>(ttracks->At(ij));
												Int_t tid = track->GetID();
												
												if(tid == tIDs[0] || tid == tIDs[1] || tid == tIDs[2] || tid == tIDs[3] ) {
													continue;
												}

												if(tid < 0) {
													if(-tid-1 == tIDs[0]+1 || -tid-1 == tIDs[1]+1 || -tid-1 == tIDs[2]+1 || -tid-1 == tIDs[3]+1)  {
														continue;
													}
												}
										
												dphivalues[0] = pion->Eta() - track->Eta();
												dphivalues[1] = GetDPhi(pion->Phi() - track->Phi());
												dphivalues[3] = track->Pt();
												dphivalues[7] = 0; // track filter
												dphivalues[8] = 0; // v0 filter
												dphivalues[9] = ipuf + 1; // pion filter
												fCorrSparse->Fill(dphivalues, GetTrackCorrection(vertexz, track));
											} /// end track corr
										}
									} // MesonIsSelected
								}
							}
						} /// end else ..  end upside meson filters
							/////////////////////////////////////////////
					} ///Etalim && pt limits
				} // i2 second gamma
			}
		} // i1 first gamma
	}
	//FillCounters(&pions, tracks, ntrackfilters, centrality, vertexz);
	
	///////Fill track counters after entire event has been passed through
	////
	
	Double_t trackValues[fTrackAxesList.GetSize()];
	trackValues[3] = centrality;
	trackValues[4] = vertexz;
	//trackValues[5] = particle->M(); remove !!!
	
	for(Int_t tbin = 0; tbin < fAxistPt.GetNbins(); tbin++) {
		trackValues[1] = fAxistPt.GetBinCenter(tbin+1);
		
		if(tmap[tbin]) {
			
			for(Int_t itf = 0; itf < fTrackFilters[1].GetEntriesFast() + 1; itf++) {
				TObjArray * tracks = static_cast<TObjArray*>(fTracks.At(itf));
				for(Int_t iTrack = 0; iTrack < tracks->GetEntriesFast(); iTrack++) {
					AliVTrack * track = static_cast<AliVTrack*>(tracks->At(iTrack));
					trackValues[0] = track->Eta();
					trackValues[2] = track->Pt();
					trackValues[5] = itf;
					trackValues[6] = 0;  ///v0 filter
					trackValues[7] = 0; ////Pi filter
					fTrackSparse->Fill(trackValues, GetTrackCorrection(vertexz, track));

					if(itf == 0) {
						for(Int_t itlf = 0; itlf < fTrackFilters[0].GetEntriesFast(); itlf++) {
							if(lowtrackmap[itlf][iTrack]) {
								trackValues[5] = -(itlf + 1);
								fTrackSparse->Fill(trackValues, GetTrackCorrection(vertexz, track) );
							}
						}
						trackValues[5] = 0;
						
						///Check lowside gamma
						for(Int_t iglf = 0; iglf < fV0Filters[0].GetEntriesFast(); iglf++) {
							if(!lv0tmap[tbin][iglf]) {
								trackValues[6] = -(iglf + 1);
								fTrackSparse->Fill(trackValues, GetTrackCorrection(vertexz, track));
							}
						}
						trackValues[6] = 0;

						////Check lowside pion
						for(Int_t iplf = 0; iplf < fMesonFilters[0].GetEntriesFast(); iplf++) {
							if(!lpitmap[tbin][iplf]) {
								trackValues[7] = -(iplf + 1);
								fTrackSparse->Fill(trackValues, GetTrackCorrection(vertexz, track));
							}
						}
					} // itf == 00
				}
			}
		} else {
			///If not in main, see if in upside filters
			///Do upside v0 filters
			for(Int_t iguf = 0; iguf < fV0Filters[1].GetEntriesFast(); iguf++) {
				if (uv0tmap[tbin][iguf] ) {

					//cout << "c vtx " <<  centrality << vertexz << endl;

					for(Int_t iTrack = 0; iTrack < ttracks->GetEntriesFast(); iTrack++) {
						AliVTrack * track = static_cast<AliVTrack*>(ttracks->At(iTrack));
						trackValues[0] = track->Eta();
						trackValues[2] = track->Pt();
						trackValues[5] = 0;
						trackValues[6] = iguf+1;  ///v0 filter
						trackValues[7] = 0; ////Pi filter
						fTrackSparse->Fill(trackValues, GetTrackCorrection(vertexz, track));
					}
				}
			}
				///Do upside pi filter
			for(Int_t ipuf = 0; ipuf < fMesonFilters[1].GetEntriesFast(); ipuf++) {
				if (upitmap[tbin][ipuf] ) {
					//cout << "c2 vtx2 " <<  centrality << vertexz << endl;
					for(Int_t iTrack = 0; iTrack < ttracks->GetEntriesFast(); iTrack++) {
						AliVTrack * track = static_cast<AliVTrack*>(ttracks->At(iTrack));
						trackValues[0] = track->Eta();
						trackValues[2] = track->Pt();
						trackValues[5] = 0;
						trackValues[6] = 0;  ///v0 filter
						trackValues[7] = ipuf+1; ////Pi filter
						fTrackSparse->Fill(trackValues, GetTrackCorrection(vertexz, track));
					}
				}
			}
		}
	}
	//////
	//////

	//piCorr->FillCounters(&pions, tracks, centrality, vertexz);
	
	PostData(1, fHistograms);

}

//_______________________________________________________________________________
// void AliAnalysisTaskdPhi::FillCounters(TObjArray * particles, TObjArray tracks[], Int_t ntrackfilters, Float_t cent, Float_t vtxz) {
  
//   return;
  
  
//  //Fill ME Counters
//   const Int_t nbins = fAxistPt.GetNbins();
//   Bool_t tmap[nbins];
//   for(Int_t ptbin = 0; ptbin < nbins; ptbin++){
//       tmap[ptbin] = kFALSE;
//     }
//   }


//   Double_t trackValues[fTrackAxesList.GetSize()];
//   trackValues[3] = cent;
//   trackValues[4] = vtxz;

//   for(Int_t ip = 0; ip < particles->GetEntriesFast(); ip++){
//     AliAODConversionParticle * particle = static_cast<AliAODConversionParticle*>(particles->At(ip));

//     Int_t tbin = fAxistPt.FindFixBin(particle->Pt());
//     if (tbin > 0 && tbin < nbins + 1) {
//       if(tmap[tbin - 1] == kTRUE) {
//  	continue;
//       } else {
//  	tmap[tbin -1 ] = kTRUE;

//  	trackValues[5] = particle->M();
//  	trackValues[1] = particle->Pt();
	
//  	for(Int_t itf = 0; itf < ntrackfilters; itf++) {
//  	  if(fkTrackAxis) trackValues[6] = itf;
//  	  for(int ij = 0; ij < tracks[itf].GetEntriesFast(); ij++) {
//  	    AliVTrack * track = static_cast<AliVTrack*>(tracks->UncheckedAt(ij));
//  	    trackValues[0] = track->Eta();
//  	    trackValues[2] = track->Pt();
//  	    fTrackSparse->Fill(trackValues);	
//  	  }
//  	}
//       }
//     }
//   }
// }




// //________________________________________________________________
// void AliAnalysisTaskdPhi::CorrelateWithTracks(AliAODConversionParticle * particle, TObjArray tracks[], Int_t ntrackfilters, Bool_t ** lowtrackmap, Int_t nltf, Int_t const tIDs[4], Double_t dphivalues[]) {
//   //Correlate particle with tracks
//   ///Correlate with tracks

// }

//________________________________________________________________________
void AliAnalysisTaskdPhi::Terminate(Option_t *) {
	
	// Draw result to the screen
	// Called once at the end of the query
}

//________________________________________________________________________
TClonesArray * AliAnalysisTaskdPhi::GetConversionGammas(Bool_t isAOD) {
	if(isAOD) {

		TClonesArray * gammas = dynamic_cast<TClonesArray*>(fInputEvent->FindListObject(fDeltaAODBranchName.Data()));
		if(gammas) {
			return gammas;
		}
		
		FindDeltaAODBranchName(fInputEvent);
		gammas = dynamic_cast<TClonesArray*>(fInputEvent->FindListObject(fDeltaAODBranchName.Data()));
		return gammas;
		
	} else {
		TClonesArray * gammas = dynamic_cast<TClonesArray*>(GetInputData(1));
		return gammas;
	}
  
}

//________________________________________________________________________
void AliAnalysisTaskdPhi::FindDeltaAODBranchName(AliVEvent * event){
	///Find aod branch
	TList *list=event->GetList();
	for(Int_t ii=0;ii<list->GetEntries();ii++){
		TString name((list->At(ii))->GetName());
		if(name.BeginsWith("GammaConv")&&name.EndsWith("gamma")){
			fDeltaAODBranchName=name;
			AliDebug(AliLog::kDebug + 5, Form("Set DeltaAOD BranchName to: %s",fDeltaAODBranchName.Data()));
			return;
		}
	}
}
  

//________________________________________________________________________
Double_t AliAnalysisTaskdPhi::GetTrackCorrection(Double_t vtxz, AliVTrack * track) {
	////Get track correction from map
	Int_t coord[4] = {-1, -1, -1, -1};
	if(fCorrectionMap) {
		Double_t values[4] = { vtxz, track->Pt(), track->Eta(), track->Phi() };
		Double_t correction = fCorrectionMap->GetBinContent(fCorrectionMap->GetBin(values, kFALSE), coord);
		if (fCorrectionMap->IsInRange(coord)) {
			return correction;
		} 
	}
	return 1.0;
}


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