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.                  *
**************************************************************************/
//
// Select events according to gap conditions, analyze two track events in pp
// collisions
//
// Author:
//  Xianguo Lu <lu@physi.uni-heidelberg.de>
//  continued by
//  Felix Reidt <Felix.Reidt@cern.ch>

#include <TH1.h>
#include <TH2.h>
#include <TList.h>
#include <THnSparse.h>

#include <TRandom3.h>

#include "AliAODInputHandler.h"
#include "AliAODHandler.h"
#include "AliESDInputHandler.h"
#include "AliPIDResponse.h"
#include "AliPhysicsSelection.h"
#include "AliGenEventHeader.h"
#include "AliGenPythiaEventHeader.h"
#include "AliGenDPMjetEventHeader.h"
#include "AliMCEvent.h"
#include "AliESDtrack.h"
#include "AliStack.h"

#include "AliCDMesonBase.h"
#include "AliCDMesonUtils.h"
#include "AliCDMesonTracks.h"
#include "AliAnalysisTaskCDMeson.h"


//------------------------------------------------------------------------------
AliAnalysisTaskCDMeson::AliAnalysisTaskCDMeson(const char* name, Long_t state):
	AliAnalysisTaskSE(name)
	, fDoAOD(kFALSE)
	, fAnalysisStatus(state)
	, fAnalysisStatusString(new TObjString(Form("0x%lx", fAnalysisStatus)))
	, fNoGapFraction(0.01)
	, fReducedGapFraction(0.02)
	, fMaxVtxDst(0.5) // value to be checked with the vertex study histograms

	, fESDEvent(0x0)
	, fAODEvent(0x0)
	, fPIDResponse(0x0)
	, fPhysicsSelection(0x0)
	, fTracks(new AliCDMesonTracks())
	, fVtxDst(-1.)
	, fVtxZ(-20)
	, fResidualTracks(0)
	, fResidualTracklets(0)
	, fMCprocessType(0)
	, fMCprocess(-1)

	, fRun(-999)
	, fPIDmode(0)

	, fTheta(0.)
	, fPhi(0.)
	, fMass(0.)
	, fCurrentGapCondition(0)

	, fGapRun(0x0)
	, fHist(0x0)
	, fThnMother(0x0)
	, fThnMotherSoft(0x0)
	, fThnMultiplicity(0x0)
	, fThnMC(0x0)
	, fThnEmptyEvents(0x0)
	, fPWAtree(0x0)

	, fv0ntrk(0x0)
	, fv0fmdntrk(0x0)
	, fv0fmdspdntrk(0x0)
	, fv0fmdspdtpcntrk(0x0)

	, fv0Rmntrk(0x0)
	, fv0fmdRmntrk(0x0)
	, fv0fmdspdRmntrk(0x0)
	, fv0fmdspdtpcRmntrk(0x0)

	, fMultStudy(0x0)
	, fMultStudyV0dg(0x0)
	, fMultStudyV0FMDdg(0x0)
	, fMultStudyV0FMDSPDdg(0x0)
	, fMultStudyV0FMDSPDTPCdg(0x0)

	, fMultResponseMC(0x0)
	, fMultResponseV0dgMC(0x0)
	, fMultResponseV0FMDdgMC(0x0)
	, fMultResponseV0FMDSPDdgMC(0x0)
	, fMultResponseV0FMDSPDTPCdgMC(0x0)

	, fMultRegionsMC(0x0)

	, fhspdV0dg(0x0)
	, fhspdV0FMDdg(0x0)
	, fhspdV0FMDSPDdg(0x0)
	, fhspdV0FMDSPDTPCdg(0x0)
	, fhspdAfterCuts(0x0)

	, fGapResponseMCv0Dg(0x0)
	, fGapResponseMCv0fmdDg(0x0)
	, fGapResponseMCv0fmdspdDg(0x0)
	, fGapResponseMCv0fmdspdtpcDg(0x0)

	, fhspd(0x0)
	, fhfo(0x0)
	, fhpriVtxDist(0x0)
	, fhpriVtxPos(0x0)
	, fhpriv(0x0)
	, fhntrk(0x0)
	, fhStatsFlow(0x0)
	, fhFOchans(0x0)

	, fVZEROhists(0x0)

	, fv0Map(0x0)
	, fv0fmdMap(0x0)
	, fv0fmdspdMap(0x0)
	, fv0fmdspdtpcMap(0x0)

	, fv0MapCutted(0x0)
	, fv0fmdMapCutted(0x0)
	, fv0fmdspdMapCutted(0x0)
	, fv0fmdspdtpcMapCutted(0x0)

	, fHitMapSPDinner(0x0)
	, fHitMapSPDouter(0x0)
	, fHitMapSPDtrklt(0x0)
	, fHitMapFMDa(0x0)
	, fHitMapFMDc(0x0)

	, fFMDsum1I(0x0)
	, fFMDsum2I(0x0)
	, fFMDsum2O(0x0)
	, fFMDsum3I(0x0)
	, fFMDsum3O(0x0)

	, fPriVtxX(0x0)
	, fPriVtxY(0x0)
	, fPriVtxZ(0x0)
	, fPriVtxDst(0x0)
	, fPriVtxDstV0dg(0x0)
	, fPriVtxDstV0FMDdg(0x0)
	, fPriVtxDstV0FMDSPDdg(0x0)
	, fPriVtxDstV0FMDSPDTPCdg(0x0)

	, fTPCGapDCAaSide(0x0)
	, fTPCGapDCAcSide(0x0)

	, fComb2trkPIDuls(0x0)
	, fComb2trkPIDls(0x0)
	, fComb2trkPIDulsDG(0x0)
	, fComb2trkPIDlsDG(0x0)
	, fComb2trkPIDulsMC(0x0)
	, fComb2trkPIDlsMC(0x0)
	, fComb2trkPIDulsDGmc(0x0)
	, fComb2trkPIDlsDGmc(0x0)
	, fMCProcessUls(0x0)
	, fMCProcessLs(0x0)

	, fMAllTrackMass(0x0)
{
	//
	// standard constructor (the one which should be used)
	//
	// slot in TaskSE must start from 1
	Int_t iOutputSlot = 1;
	DefineOutput(iOutputSlot++, TList::Class());
	if (!(fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) {
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitTHnMother)) {
			DefineOutput(iOutputSlot++, THnSparse::Class());
		}
		if (!fAnalysisStatus
		    || ((fAnalysisStatus & AliCDMesonBase::kBitSoftTracks)
		        && (fAnalysisStatus & AliCDMesonBase::kBitTHnMother))) {
			DefineOutput(iOutputSlot++, THnSparse::Class());
		}
		if (fAnalysisStatus & AliCDMesonBase::kBitMultStudy) {
			DefineOutput(iOutputSlot++, THnSparse::Class());
		}
		if (fAnalysisStatus & AliCDMesonBase::kBitTHnMC) {
			DefineOutput(iOutputSlot++, THnSparse::Class());
		}
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitPWAtree)) {
			DefineOutput(iOutputSlot++, TTree::Class());
		}
	}
	else { // create empty event THnSparse
		DefineOutput(iOutputSlot++, THnSparse::Class());
	}

	if (fAnalysisStatus & AliCDMesonBase::kBitEEStudy) { // empty event study
		fPhysicsSelection = new AliPhysicsSelection;
		fPhysicsSelection->SetSkipTriggerClassSelection();
		// accept all (A,C,E and I) triggers of a certain class
	}

	for (Int_t iGap = 0; iGap < kMax; ++iGap) {
		fGapInformation[iGap] = 0;
		fGapInformationWCent[iGap] = 0;
	}

	for (Int_t i = 0; i < 3; ++i) {
		fMomentum[i] = 0.;
	}

	// reset track pair pointers
	fTrkPair[0] = 0x0;
	fTrkPair[1] = 0x0;
}


//------------------------------------------------------------------------------
AliAnalysisTaskCDMeson::AliAnalysisTaskCDMeson():
	AliAnalysisTaskSE()
	, fDoAOD(kFALSE)
	, fAnalysisStatus(0x0)
	, fAnalysisStatusString(0x0)
	, fNoGapFraction(0.01)
	, fReducedGapFraction(0.02)
	, fMaxVtxDst(0.5)

	, fESDEvent(0x0)
	, fAODEvent(0x0)
	, fPIDResponse(0x0)
	, fPhysicsSelection(0x0)
	, fTracks(0x0)
	, fVtxDst(-1.)
	, fVtxZ(-20)
	, fResidualTracks(0)
	, fResidualTracklets(0)
	, fMCprocessType(0)
	, fMCprocess(-1)

	, fRun(-999)
	, fPIDmode(0)

	, fTheta(0.)
	, fPhi(0.)
	, fMass(0.)
	, fCurrentGapCondition(0)

	, fGapRun(0x0)
	, fHist(0x0)
	, fThnMother(0x0)
	, fThnMotherSoft(0x0)
	, fThnMultiplicity(0x0)
	, fThnMC(0x0)
	, fThnEmptyEvents(0x0)
	, fPWAtree(0x0)

	, fv0ntrk(0x0)
	, fv0fmdntrk(0x0)
	, fv0fmdspdntrk(0x0)
	, fv0fmdspdtpcntrk(0x0)

	, fv0Rmntrk(0x0)
	, fv0fmdRmntrk(0x0)
	, fv0fmdspdRmntrk(0x0)
	, fv0fmdspdtpcRmntrk(0x0)

	, fMultStudy(0x0)
	, fMultStudyV0dg(0x0)
	, fMultStudyV0FMDdg(0x0)
	, fMultStudyV0FMDSPDdg(0x0)
	, fMultStudyV0FMDSPDTPCdg(0x0)

	, fMultResponseMC(0x0)
	, fMultResponseV0dgMC(0x0)
	, fMultResponseV0FMDdgMC(0x0)
	, fMultResponseV0FMDSPDdgMC(0x0)
	, fMultResponseV0FMDSPDTPCdgMC(0x0)

	, fMultRegionsMC(0x0)

	, fhspdV0dg(0x0)
	, fhspdV0FMDdg(0x0)
	, fhspdV0FMDSPDdg(0x0)
	, fhspdV0FMDSPDTPCdg(0x0)
	, fhspdAfterCuts(0x0)

	, fGapResponseMCv0Dg(0x0)
	, fGapResponseMCv0fmdDg(0x0)
	, fGapResponseMCv0fmdspdDg(0x0)
	, fGapResponseMCv0fmdspdtpcDg(0x0)

	, fhspd(0x0)
	, fhfo(0x0)
	, fhpriVtxDist(0x0)
	, fhpriVtxPos(0x0)
	, fhpriv(0x0)
	, fhntrk(0x0)
	, fhStatsFlow(0x0)
	, fhFOchans(0x0)

	, fVZEROhists(0x0)

	, fv0Map(0x0)
	, fv0fmdMap(0x0)
	, fv0fmdspdMap(0x0)
	, fv0fmdspdtpcMap(0x0)

	, fv0MapCutted(0x0)
	, fv0fmdMapCutted(0x0)
	, fv0fmdspdMapCutted(0x0)
	, fv0fmdspdtpcMapCutted(0x0)

	, fHitMapSPDinner(0x0)
	, fHitMapSPDouter(0x0)
	, fHitMapSPDtrklt(0x0)
	, fHitMapFMDa(0x0)
	, fHitMapFMDc(0x0)

	, fFMDsum1I(0x0)
	, fFMDsum2I(0x0)
	, fFMDsum2O(0x0)
	, fFMDsum3I(0x0)
	, fFMDsum3O(0x0)

	, fPriVtxX(0x0)
	, fPriVtxY(0x0)
	, fPriVtxZ(0x0)
	, fPriVtxDst(0x0)
	, fPriVtxDstV0dg(0x0)
	, fPriVtxDstV0FMDdg(0x0)
	, fPriVtxDstV0FMDSPDdg(0x0)
	, fPriVtxDstV0FMDSPDTPCdg(0x0)

	, fTPCGapDCAaSide(0x0)
	, fTPCGapDCAcSide(0x0)

	, fComb2trkPIDuls(0x0)
	, fComb2trkPIDls(0x0)
	, fComb2trkPIDulsDG(0x0)
	, fComb2trkPIDlsDG(0x0)
	, fComb2trkPIDulsMC(0x0)
	, fComb2trkPIDlsMC(0x0)
	, fComb2trkPIDulsDGmc(0x0)
	, fComb2trkPIDlsDGmc(0x0)
	, fMCProcessUls(0x0)
	, fMCProcessLs(0x0)

	, fMAllTrackMass(0x0)
{
	//
	// default constructor (should not be used)
	//

	for (Int_t iGap = 0; iGap < kMax; ++iGap) {
		fGapInformation[iGap] = 0;
		fGapInformationWCent[iGap] = 0;
	}

	for (Int_t i = 0; i < 3; ++i) {
		fMomentum[i] = 0.;
	}

	fTrkPair[0] = 0x0;
	fTrkPair[1] = 0x0;
}


//------------------------------------------------------------------------------
AliAnalysisTaskCDMeson::~AliAnalysisTaskCDMeson()
{
	//
	//Destructor
	//
	//delete fESDEvent;
	//delete fESDpid;

	if (!(fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) { // normal operation
		if ((!fAnalysisStatus || (fAnalysisStatus && AliCDMesonBase::kBitTHnMother))
		    && fThnMother
		    && (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() !=
		        AliAnalysisManager::kProofAnalysis)) {
			delete fThnMother;
			fThnMother = 0x0;
		}
		if ((!fAnalysisStatus
		     || ((fAnalysisStatus && AliCDMesonBase::kBitSoftTracks)
		         && (fAnalysisStatus && AliCDMesonBase::kBitTHnMother)))
		    && fThnMotherSoft
		    && (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() !=
		        AliAnalysisManager::kProofAnalysis)) {
			delete fThnMotherSoft;
			fThnMotherSoft = 0x0;
		}
		if ((!fAnalysisStatus
		     || (fAnalysisStatus && AliCDMesonBase::kBitMultStudy))
		    && fThnMultiplicity
		    && (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() !=
		        AliAnalysisManager::kProofAnalysis)) {
			delete fThnMultiplicity;
			fThnMultiplicity = 0x0;
		}
		if ((!fAnalysisStatus || (fAnalysisStatus && AliCDMesonBase::kBitTHnMC))
		    && fThnMC
		    && (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() !=
		        AliAnalysisManager::kProofAnalysis)) {
			delete fThnMC;
			fThnMC = 0x0;
		}
	}
	else { // empty event study
		if (fPhysicsSelection
		    && (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() !=
		        AliAnalysisManager::kProofAnalysis)) {
			delete fPhysicsSelection;
			fPhysicsSelection = 0x0;
		}
		if (fThnEmptyEvents
		    && (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() !=
		        AliAnalysisManager::kProofAnalysis)) {
			delete fThnEmptyEvents;
			fThnEmptyEvents = 0x0;
		}
	}

	/*
	if (fHist
	    && (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() !=
	        AliAnalysisManager::kProofAnalysis)) {
		fHist->Clear();
		delete fHist;
		fHist = 0x0;
	}
	*/

	if (fTracks
	    && (AliAnalysisManager::GetAnalysisManager()->GetAnalysisType() !=
	        AliAnalysisManager::kProofAnalysis)) {
		delete fTracks;
		fTracks = 0x0;
	}

	if (fVZEROhists) {
		delete fVZEROhists;
		fVZEROhists = 0x0;
	}
}


//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::UserCreateOutputObjects()
{
	//
	//CreateOutputObjects
	//

	//= THnSparse ================================================================
	if (!(fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) { // normal operation
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitTHnMother)) {
			fThnMother = AliCDMesonBase::GetThnMother(/*"CDMeson_Mother"*/);
		}
		if (!fAnalysisStatus
		    || ((fAnalysisStatus & AliCDMesonBase::kBitSoftTracks)
		        && (fAnalysisStatus & AliCDMesonBase::kBitTHnMother))) {
			fThnMotherSoft =  AliCDMesonBase::GetThnMother("CDMeson_MotherSoft");
		}
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitMultStudy)){
			fThnMultiplicity =  AliCDMesonBase::GetThnMultiplicity();
		}
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitTHnMC)) {
			fThnMC = AliCDMesonBase::GetThnMother("CDMeson_MotherMC");
		}
	}
	else { // empty event studies
		fThnEmptyEvents = AliCDMesonBase::GetThnEmptyEvents();
	}

	//= TList for Histograms =====================================================
	fHist = new TList;
	fHist->SetOwner(); // ensures that the histograms are all deleted on exit!

	//fHist->Add(fAnalysisStatusString); // WARNING: CRASHES MERGING

	//= GAP RUN =
	if (!(fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) { // normal operation
		// LHC10 data
		// runa1=114649, runb1=117630, runc0=117631, runc1=121526, rund0=121527,
		// rund1=126460, rune0=126461, rune1 = 130930; runf0=130931
		// all checked on elog
		// LHC11 data
		//const Int_t rune0 = 160676;
		//const Int_t runf1 = 165462;

		// LHC10 + LHC11 data
		const Int_t runb0 = 114650; // first run of LHC10b
		const Int_t runf1 = 165462; // last run of LHC11f

		const Int_t run0 = runb0-1, run1 = runf1 + 1;

		const Int_t nrun = (Int_t)(run1-run0);

		const Int_t bins[2] = {nrun, static_cast<Int_t>(AliCDMesonBase::kBitGapMax - 1.)};
		const Double_t xmin[2] = {(Double_t)run0, 1.};
		const Double_t xmax[2] = {
			(Double_t)run1, (Double_t)AliCDMesonBase::kBitGapMax
		};

		fGapRun = new THnSparseI("GapRun", ";run number;gap condition", 2, bins,
		                         xmin, xmax);
		fHist->Add(fGapRun);
	}

	//= MULTIPLICITY PER GAP CONDITION =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitMultPerGapHists)) {
		fv0ntrk = new TH2D("b00_v0ntrk", ";number of tracks;gap condition",
		                   80, 0., 80., 4, 1., 5.);
		//x: ntrk; y: V0
		fHist->Add(fv0ntrk);

		fv0fmdntrk = new TH2D("b01_v0fmdntrk", ";number of tracks;gap condition",
		                      80, 0., 80., 4, 1., 5.);
		//x: ntrk; y: V0FMD
		fHist->Add(fv0fmdntrk);

		fv0fmdspdntrk =
			new TH2D("b02_v0fmdspdntrk", ";number of tracks;gap condition",
		         80, 0., 80., 4, 1., 5.);
		//x: ntrk; y: V0FMDSPD
		fHist->Add(fv0fmdspdntrk);

		fv0fmdspdtpcntrk =
			new TH2D("b03_v0fmdspdtpcntrk", ";number of tracks;gap condition",
			         80, 0., 80., 4, 1., 5.);
		//x: ntrk; y: V0FMDSPDTPC
		fHist->Add(fv0fmdspdtpcntrk);
	}

	//= MULTIPLICITY REMOVED PER GAP CONDITION =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitRmMultPerGapHists)) {
		fv0Rmntrk = new TH2F("b05_v0Rmntrk",
		                     ";number of removed tracks due to cuts;gap condition",
		                     80, 0., 80., 4, 1., 5.);
		//x: ntrk; y: V0
		fHist->Add(fv0Rmntrk);

		fv0fmdRmntrk =
			new TH2F("b06_v0fmdRmntrk",
			         ";number of removed tracks due to cuts;gap condition",
			         80, 0., 80., 4, 1., 5.);
		//x: ntrk; y: V0FMD
		fHist->Add(fv0fmdRmntrk);

		fv0fmdspdRmntrk =
			new TH2F("b07_v0fmdspdRmntrk",
			         ";number of removed tracks due to cuts;gap condition",
			         80, 0., 80., 4, 1., 5.);
		//x: ntrk; y: V0FMDSPD
		fHist->Add(fv0fmdspdRmntrk);

		fv0fmdspdtpcRmntrk =
			new TH2F("b08_v0fmdspdtpcRmntrk",
			         ";number of removed tracks due to cuts;gap condition",
			         80, 0., 80., 4, 1., 5.);
		//x: ntrk; y: V0FMDSPDTPC
		fHist->Add(fv0fmdspdtpcRmntrk);
	}

	//= SOFT TRACK INFLUENCE =
	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitSoftTracks)) {
		fMultStudy = new TH2F("b10_MultStudySoftInfluence",
		                      ";multiplicity;multiplicity (including ITSsa)",
		                      20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultStudy);

		fMultStudyV0dg =
			new TH2F("b11_MultStudySoftInfluence_V0_DoubleGap",
			         ";multiplicity;multiplicity (including ITSsa)",
			         20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultStudyV0dg);

		fMultStudyV0FMDdg =
			new TH2F("b12_MultStudySoftInfluence_V0FMD_DoubleGap",
			         ";multiplicity;multiplicity (including ITSsa)",
			         20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultStudyV0FMDdg);

		fMultStudyV0FMDSPDdg
			= new TH2F("b13_MultStudySoftInfluence_V0FMDSPD_DoubleGap",
			           ";multiplicity;multiplicity (including ITSsa)",
			           20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultStudyV0FMDSPDdg);

		fMultStudyV0FMDSPDTPCdg
			= new TH2F("b14_MultStudySoftInfluence_V0FMDSPDTPC_DoubleGap",
			           ";multiplicity;multiplicity (including ITSsa)",
			           20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultStudyV0FMDSPDTPCdg);
	}

	//= MULTIPLICITY RESPONSE DATA VS MC =
	if (fAnalysisStatus & AliCDMesonBase::kBitMultResponseMC) {
		fMultResponseMC
			= new TH2F("b15_MultResponseMC",
			           ";multiplicity from MC truth; reconstructed multiplicity",
			           20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultResponseMC);

		fMultResponseV0dgMC
			= new TH2F("b16_MultResponseV0dgMC",
			           ";multiplicity from MC truth; reconstructed multiplicity",
			           20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultResponseV0dgMC);

		fMultResponseV0FMDdgMC
			= new TH2F("b17_MultResponseV0FMDdgMC",
			           ";multiplicity from MC truth; reconstructed multiplicity",
			           20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultResponseV0FMDdgMC);

		fMultResponseV0FMDSPDdgMC
			= new TH2F("b18_MultResponseV0FMDSPDdgMC",
			           ";multiplicity from MC truth; reconstructed multiplicity",
			           20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultResponseV0FMDSPDdgMC);

		fMultResponseV0FMDSPDTPCdgMC
			= new TH2F("b19_MultResponseV0FMDSPDTPCdgMC",
			           ";multiplicity from MC truth; reconstructed multiplicity",
			           20, 0., 20., 20, 0., 20.);
		fHist->Add(fMultResponseV0FMDSPDTPCdgMC);

		fMultRegionsMC
			= new TH2F("b20_fMultRegionsMC", ";multiplicity;",
			           50, 0., 50., 4, 0., 4.);
		TAxis* a = fMultRegionsMC->GetYaxis();
		a->SetBinLabel(1, "A-side");
		a->SetBinLabel(2, "Center");
		a->SetBinLabel(3, "C-side");
		a->SetBinLabel(4, "A and C side");
		fHist->Add(fMultRegionsMC);

		fGapResponseMCv0Dg =
			new TH1I("b26_fGapResponseMCv0Dg", ";;counts", 3, 0., 3.);
		a = fGapResponseMCv0Dg->GetXaxis();
		a->SetBinLabel(1, "DG in MC, no DG in data");
		a->SetBinLabel(2, "DG in both MC and data");
		a->SetBinLabel(3, "DG in data, no DG in MC");
		fHist->Add(fGapResponseMCv0Dg);
		fGapResponseMCv0fmdDg =
			new TH1I("b27_fGapResponseMCv0fmdDg", ";;counts", 3, 0., 3.);
		a = fGapResponseMCv0fmdDg->GetXaxis();
		a->SetBinLabel(1, "DG in MC, no DG in data");
		a->SetBinLabel(2, "DG in both MC and data");
		a->SetBinLabel(3, "DG in data, no DG in MC");
		fHist->Add(fGapResponseMCv0fmdDg);
		fGapResponseMCv0fmdspdDg =
			new TH1I("b28_fGapResponseMCv0fmdspdDg", ";;counts", 3, 0., 3.);
		a = fGapResponseMCv0fmdspdDg->GetXaxis();
		a->SetBinLabel(1, "DG in MC, no DG in data");
		a->SetBinLabel(2, "DG in both MC and data");
		a->SetBinLabel(3, "DG in data, no DG in MC");
		fHist->Add(fGapResponseMCv0fmdspdDg);
		fGapResponseMCv0fmdspdtpcDg
			= new TH1I("b29_fGapResponseMCv0fmdspdtpcDg", ";;counts", 3, 0., 3.);
		a = fGapResponseMCv0fmdspdtpcDg->GetXaxis();
		a->SetBinLabel(1, "DG in MC, no DG in data");
		a->SetBinLabel(2, "DG in both MC and data");
		a->SetBinLabel(3, "DG in data, no DG in MC");
		fHist->Add(fGapResponseMCv0fmdspdtpcDg);
	}

	//= FAST-OR MULTIPLICITY STUDY =
	if (fAnalysisStatus & AliCDMesonBase::kBitFastORmultStudy) {
		fhspdV0dg =
			new TH1I("b21_spd_V0dg",
			         "V0 double gap;fired SPD FastOR chips; counts", 50, 0., 50.);
		fHist->Add(fhspdV0dg);
		fhspdV0FMDdg =
			new TH1I("b22_spd_V0FMDdg",
			         "V0-FMD double gap;fired SPD FastOR chips; counts", 50, 0., 50.);
		fHist->Add(fhspdV0FMDdg);
		fhspdV0FMDSPDdg =
			new TH1I("b23_spd_V0FMDSPDdg",
			         "V0-FMD-SPD double gap;fired SPD FastOR chips; counts",
			         50, 0., 50.);
		fHist->Add(fhspdV0FMDSPDdg);
		fhspdV0FMDSPDTPCdg =
			new TH1I("b24_spd_V0FMDSPDTPCdg",
			         "V0-FMD-SPD-TPC double gap;fired SPD FastOR chips; counts",
			         50, 0., 50.);
		fHist->Add(fhspdV0FMDSPDTPCdg);
		fhspdAfterCuts =
			new TH1I("b25_spd_afterCuts",
			         "after cuts;fired SPD FastOR chips; counts",
			         50, 0., 50.);
		fHist->Add(fhspdAfterCuts);
	}

	//= STATISTICS FLOW =
	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitStatsFlow)) {
		fhspd = new TH1I("a00_spd", ";fired SPD FastOR chips; counts", 50, 0., 50.);
		fHist->Add(fhspd);

		if (fAnalysisStatus & AliCDMesonBase::kBitFastORStudy) {
			fhfo =
				new TH2I("a05_fo", ";fired chips inner layer;fired chips outer layer",
				         50, 0., 50., 50, 0., 50.);
			fHist->Add(fhfo);

			fhFOchans =
				new TH1F("a06_foChans", ";channel key; counts", 1200, 0., 1200.);
			fHist->Add(fhFOchans);
		}

		fhpriVtxDist = new TH1I("a08_priVtxDist", ";vertex position (cm); counts",
		                        601, -30.05, 30.05);
		fHist->Add(fhpriVtxDist);

		fhpriVtxPos = new TH1I("a09_priVtxPos", ";vertex position (boolean);counts",
		                  2, 0., 2.);
		fhpriVtxPos->GetXaxis()->SetBinLabel(1,"inside");
		fhpriVtxPos->GetXaxis()->SetBinLabel(2,"outside");
		fHist->Add(fhpriVtxPos);


		fhpriv = new TH1I("a10_priv", ";vertex quality (boolean);counts",
		                  2, 0., 2.);
		fhpriv->GetXaxis()->SetBinLabel(1,"bad vertex");
		fhpriv->GetXaxis()->SetBinLabel(2,"good vertex");
		fHist->Add(fhpriv);

		fhntrk = new TH1I("a20_ntrk", ";track multiplicity after cuts;counts",
		                  10, 0., 10.);
		fHist->Add(fhntrk);

		fhStatsFlow = AliCDMesonBase::GetHistStatsFlow();
		fHist->Add(fhStatsFlow);
	}

	//= ETA-PHI MAPS FOR TRACKS =
	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitEtaPhiMaps)) {
		fv0Map = new TH2F("d0_v0Map", ";#eta;#phi", 40, -2., 2.,
		                  60, 0., TMath::TwoPi());
		fHist->Add(fv0Map);

		fv0fmdMap = new TH2F("d0_v0fmdMap", ";#eta;#phi", 40, -2., 2.,
		                     60, 0., TMath::TwoPi());
		fHist->Add(fv0fmdMap);

		fv0fmdspdMap = new TH2F("d0_v0fmdspdMap", ";#eta;#phi", 40, -2., 2.,
		                        60, 0., TMath::TwoPi());
		fHist->Add(fv0fmdspdMap);

		fv0fmdspdtpcMap = new TH2F("d0_v0fmdspdtpcMap", ";#eta;#phi", 30, -1.5, 1.5,
		                           60, 0., TMath::TwoPi());
		fHist->Add(fv0fmdspdtpcMap);
	}

	//= ETA-PHI MAPS FOR CUTTED TRACKS =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitEtaPhiMapsWithCuts)) {
		fv0MapCutted = new TH2F("d0_v0MapCutted", ";#eta;#phi", 24, -1.2, 1.2,
		                        60, 0., TMath::TwoPi());
		fHist->Add(fv0MapCutted);

		fv0fmdMapCutted = new TH2F("d0_v0fmdMapCutted", ";#eta;#phi", 24, -1.2, 1.2,
		                           60, 0., TMath::TwoPi());
		fHist->Add(fv0fmdMapCutted);

		fv0fmdspdMapCutted = new TH2F("d0_v0fmdspdMapCutted", ";#eta;#phi",
		                              24, -1.2, 1.2, 60, 0., TMath::TwoPi());
		fHist->Add(fv0fmdspdMapCutted);

		fv0fmdspdtpcMapCutted = new TH2F("d0_v0fmdspdtpcMapCutted", ";#eta;#phi",
		                                 24, -1.2, 1.2, 60, 0., TMath::TwoPi());
		fHist->Add(fv0fmdspdtpcMapCutted);
	}

	//= SPD HIT MAPS =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitHitMapSPD) ||
	    (fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) {
		fHitMapSPDinner = new TH2F("d1_HitMapSPDinner", ";#eta;#phi", 72, -3.6, 3.6,
		                           20, 0., TMath::TwoPi());
		fHist->Add(fHitMapSPDinner);

		fHitMapSPDouter = new TH2F("d2_HitMapSPDouter", ";#eta;#phi", 48, -2.4, 2.4,
		                           40, 0., TMath::TwoPi());
		fHist->Add(fHitMapSPDouter);

		fHitMapSPDtrklt = new TH2F("d3_HitMapSPDtrklt", ";#eta;#phi", 60, -3., 3.,
		                           72, 0., TMath::TwoPi());
		fHist->Add(fHitMapSPDtrklt);
	}

	//= FMD HIT MAPS =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitHitMapFMD) ||
	    (fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) {
		fHitMapFMDa = new TH2F("d4_HitMapFMDa", ";#eta;#phi",
		                       36, 1.5, 5.1, 40, 0., TMath::TwoPi());
		fHist->Add(fHitMapFMDa);
		fHitMapFMDc = new TH2F("d4_HitMapFMDc", ";#eta;#phi",
		                       20, -3.5, -1.5, 40, 0., TMath::TwoPi());
		fHist->Add(fHitMapFMDc);
	}

	//= FMD SUMMATION =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitFMDsum) ||
	    (fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) {
		fFMDsum1I = new TH1F("d5_FMDsum1I", ";sum;counts", 50, 0., 50.);
		fHist->Add(fFMDsum1I);
		fFMDsum2I = new TH1F("d5_FMDsum2I", ";sum;counts", 50, 0., 50.);
		fHist->Add(fFMDsum2I);
		fFMDsum2O = new TH1F("d5_FMDsum2O", ";sum;counts", 50, 0., 50.);
		fHist->Add(fFMDsum2O);
		fFMDsum3I = new TH1F("d5_FMDsum3I", ";sum;counts", 50, 0., 50.);
		fHist->Add(fFMDsum3I);
		fFMDsum3O = new TH1F("d5_FMDsum3O", ";sum;counts", 50, 0., 50.);
		fHist->Add(fFMDsum3O);
	}

	//= VERTEX STUDIES =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitVtxStudies)) {
		fPriVtxX = new TH1I("e0_PriVtxX", ";x (cm);counts", 100, -10., 10.);
		fHist->Add(fPriVtxX);
		fPriVtxY = new TH1I("e0_PriVtxY", ";y (cm);counts", 100, -10., 10.);
		fHist->Add(fPriVtxY);
		fPriVtxZ = new TH1I("e0_PriVtxZ", ";z (cm);counts", 100, -10., 10.);
		fHist->Add(fPriVtxZ);

		fPriVtxDst = new TH1I("e1_PriVtxDst", ";dst (cm);counts", 101, 0., 2.525);
		fHist->Add(fPriVtxDst);

		fPriVtxDstV0dg =
			new TH1I("e2_PriVtxDstV0dg", ";dst (cm);counts", 101, 0., 2.525);
		fHist->Add(fPriVtxDstV0dg);

		fPriVtxDstV0FMDdg =
			new TH1I("e3_PriVtxDstV0FMDdg", ";dst (cm);counts", 101, 0., 2.525);
		fHist->Add(fPriVtxDstV0FMDdg);

		fPriVtxDstV0FMDSPDdg =
			new TH1I("e4_PriVtxDstV0FMDSPDdg", ";dst (cm);counts", 101, 0., 2.525);
		fHist->Add(fPriVtxDstV0FMDSPDdg);

		fPriVtxDstV0FMDSPDTPCdg =
			new TH1I("e5_PriVtxDstV0FMDSPDTPCdg", ";dst (cm);counts", 101, 0., 2.525);
		fHist->Add(fPriVtxDstV0FMDSPDTPCdg);
	}

	//= TPC GAP STUDY =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitTPCGapStudy)) {
		if (!fDoAOD) {
			fTPCGapDCAaSide = new TH2F("i00_TPCGapDCAaSide", ";dca_{xy};dca_{z}",
			                           2000, 0., 1., 1000, 0., 5.);
			fHist->Add(fTPCGapDCAaSide);
			fTPCGapDCAcSide = new TH2F("i01_TPCGapDCAcSide", ";dca_{xy};dca_{z}",
			                           2000, 0., 1., 1000, 0., 5.);
			fHist->Add(fTPCGapDCAcSide);
		}
	}

	//= VZERO TRIGGER STUDY =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitVZEROStudy)) {
		if (!fDoAOD) { // not yet possible for AODs
			fVZEROhists = AliCDMesonBase::GetHistVZEROStudies(fHist);
		}
	}

	//= PID MATRIX FOR DATA AND MC =
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitPIDStudy)) {
		fComb2trkPIDuls = AliCDMesonBase::GetHistPIDStudies("f0_Comb2trkPIDuls");
		fHist->Add(fComb2trkPIDuls);

		fComb2trkPIDls = AliCDMesonBase::GetHistPIDStudies("f1_Comb2trkPIDls");
		fHist->Add(fComb2trkPIDls);

		fComb2trkPIDulsDG =
			AliCDMesonBase::GetHistPIDStudies("f2_Comb2trkPIDulsDG");
		fHist->Add(fComb2trkPIDulsDG);

		fComb2trkPIDlsDG = AliCDMesonBase::GetHistPIDStudies("f3_Comb2trkPIDlsDG");
		fHist->Add(fComb2trkPIDlsDG);

		if (fAnalysisStatus & AliCDMesonBase::kBitTHnMC) {
			fComb2trkPIDulsMC =
				AliCDMesonBase::GetHistPIDStudies("f4_Comb2trkPIDulsMC");
			fHist->Add(fComb2trkPIDulsMC);

			fComb2trkPIDlsMC = AliCDMesonBase::GetHistPIDStudies("f5_Comb2trkPIDlsMC");
			fHist->Add(fComb2trkPIDlsMC);

			fComb2trkPIDulsDGmc =
				AliCDMesonBase::GetHistPIDStudies("f6_Comb2trkPIDulsDGmc");
			fHist->Add(fComb2trkPIDulsDGmc);

			fComb2trkPIDlsDGmc =
				AliCDMesonBase::GetHistPIDStudies("f7_Comb2trkPIDlsDGmc");
			fHist->Add(fComb2trkPIDlsDGmc);
		}
	}

	//= MC PROCESS IDs =
	if (!fAnalysisStatus || fAnalysisStatus & AliCDMesonBase::kBitMCProcess) {
		fMCProcessUls = new TH2F("g0_MCProcessUls",
		                         ";MC Process ID;double-gap topology",
		                         105, 1., 106., 12, 0., 12.);
		TAxis* axis = fMCProcessUls->GetYaxis();
		axis->SetBinLabel(1, "V0");
		axis->SetBinLabel(2, "FMD");
		axis->SetBinLabel(3, "SPD");
		axis->SetBinLabel(4, "TPC");
		axis->SetBinLabel(5, "V0-FMD");
		axis->SetBinLabel(6, "V0-FMD-SPD");
		axis->SetBinLabel(7, "V0-FMD-SPD-TPC");
		axis->SetBinLabel(8, "TPC-SPD");
		axis->SetBinLabel(9, "TPC-SPD-FMD");
		axis->SetBinLabel(10, "TPC-SPD-FMD-V0");
		axis->SetBinLabel(11, "SPD-FMD");
		axis->SetBinLabel(12, "SPD-FMD-V0");
		fHist->Add(fMCProcessUls);

		fMCProcessLs = new TH2F("g1_MCProcessLs",
		                        ";MC Process ID;double-gap topology",
		                        105, 1., 106., 12, 0., 12.);
		axis = fMCProcessLs->GetYaxis();
		axis->SetBinLabel(1, "V0");
		axis->SetBinLabel(2, "FMD");
		axis->SetBinLabel(3, "SPD");
		axis->SetBinLabel(4, "TPC");
		axis->SetBinLabel(5, "V0-FMD");
		axis->SetBinLabel(6, "V0-FMD-SPD");
		axis->SetBinLabel(7, "V0-FMD-SPD-TPC");
		axis->SetBinLabel(8, "TPC-SPD");
		axis->SetBinLabel(9, "TPC-SPD-FMD");
		axis->SetBinLabel(10, "TPC-SPD-FMD-V0");
		axis->SetBinLabel(11, "SPD-FMD");
		axis->SetBinLabel(12, "SPD-FMD-V0");
		fHist->Add(fMCProcessLs);
	}

	//= ALL TRACK INVARIANT MASS =================================================
	if (fAnalysisStatus & AliCDMesonBase::kBitAllTrackMass) {
		fMAllTrackMass = new TH1F("j00_AllTrackInvMass",
		                          ";all track invariant mass (GeV);counts",
		                          95, 0.25, 5.);
		fHist->Add(fMAllTrackMass);
	}
	//= PWA TREE =================================================================
	if (!fAnalysisStatus || fAnalysisStatus & AliCDMesonBase::kBitPWAtree) {
		fPWAtree = new TTree("cd_pwa", "pwa");
		fPWAtree->Branch("theta", &fTheta);
		fPWAtree->Branch("phi", &fPhi);
		fPWAtree->Branch("m", &fMass);
		fPWAtree->Branch("theta", &fTheta);
		fPWAtree->Branch("pX", &fMomentum[0]);
		fPWAtree->Branch("pY", &fMomentum[1]);
		fPWAtree->Branch("pZ", &fMomentum[2]);
		fPWAtree->Branch("gapCondition", &fCurrentGapCondition);
	}

	PostOutputs();
}


//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::UserExec(Option_t *)
{
	//
	// Executed for every event which passed the physics selection
	//

	//printf("Entry: %ld\n", (Long_t)Entry()); // print current event number

	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitStatsFlow)) {
		fhStatsFlow->Fill(AliCDMesonBase::kBinTotalInput); // stats flow
	}

	//= INPUT DATA SANITY TESTS ==================================================
	if (!CheckInput()) {
		PostOutputs();
		return;
	}

	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitStatsFlow)) {
		fhStatsFlow->Fill(AliCDMesonBase::kBinGoodInput); // stats flow
	}

	//= ANALYZE ONLY PHOJET CD EVENTS ============================================
	if (fAnalysisStatus & AliCDMesonBase::kBitCDonly) {
		if (fMCEvent) {
			AliGenEventHeader* header = fMCEvent->GenEventHeader();
			if (header) {
				// Phojet
				if (TString(header->IsA()->GetName()) == "AliGenDPMjetEventHeader") {
					fMCprocess = ((AliGenDPMjetEventHeader*)header)->ProcessType();
					if (fMCprocess != 4) { // no central diffraction
						PostOutputs();
						return;
					}
					else{ // CD found
						fhStatsFlow->Fill(AliCDMesonBase::kBinCDonlyEvents); // statsflow
					}
				}
			}
		}
	}


	//= V0-AND/OR ================================================================
	if (!fDoAOD) {
		if (AliCDMesonUtils::V0AND(fESDEvent))
			fhStatsFlow->Fill(AliCDMesonBase::kBinV0OR);
		if (AliCDMesonUtils::V0OR(fESDEvent))
			fhStatsFlow->Fill(AliCDMesonBase::kBinV0AND);
	}

	//= EMPTY EVENT STUDY ========================================================
	// only implemented on ESDs!
	if (fAnalysisStatus & AliCDMesonBase::kBitEEStudy) {
		DoEmptyEventStudy();
		PostOutputs();
		return;
	}

	//= MC TRUTH =================================================================
	// for now only implemented on ESDs
	Int_t nMCprimaries = 0;
	DetermineMCprocessType();
	if (fAnalysisStatus & AliCDMesonBase::kBitTHnMC) {
		nMCprimaries = DoMCTruth();
	}

	//= EVENT SELECTION ==========================================================
	Int_t kfo =
		((fAnalysisStatus & AliCDMesonBase::kBitFastORStudy) && !fDoAOD) ? 1 : 0;
	Int_t ninnerp=-999, nouterp=-999;
	Bool_t eventIsValid = (fDoAOD) ?
		AliCDMesonUtils::CutEvent(fAODEvent, fhpriv, fPriVtxX, fPriVtxY, fPriVtxZ,
		                          fhpriVtxPos, fhpriVtxDist) :
		AliCDMesonUtils::CutEvent(fESDEvent, fhspd, fhpriv, fhpriVtxPos,
		                          fhpriVtxDist, fhfo, fhFOchans, kfo, ninnerp,
		                          nouterp, fPriVtxX, fPriVtxY, fPriVtxZ);
	if (!eventIsValid) {
		PostOutputs();
		return;
	}

	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitStatsFlow)) {
		fhStatsFlow->Fill(AliCDMesonBase::kBinEventsAfterCuts); // stats flow
	}

	//= PILE UP ==================================================================
	const Bool_t isPileup = (fDoAOD) ?
		fAODEvent->IsPileupFromSPD(2, 0.8, 3., 2., 5.) :
		fESDEvent->IsPileupFromSPD(2, 0.8, 3., 2., 5.);
	// using only 2 instead of three contributors

	if (isPileup) {
		PostOutputs();
		return;
	}

	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitStatsFlow)) {
		fhStatsFlow->Fill(AliCDMesonBase::kBinEventsWithOutPileUp); // stats flow
	}

	//= VZERO TRIGGER STUDY ======================================================
	// dtermine the VZERO signal distributions
	if (fVZEROhists) {
		AliCDMesonUtils::DoVZEROStudy(fESDEvent, fVZEROhists, fRun);
	}

	//= GAP ======================================================================
	// determine the complete gap configuration (for all gap-tagging detectors)
	if (!DetermineGap()) {
		PostOutputs();
		return;
	}

	// fill gaprun (determines the gap fraction per run)
	const Double_t x[2] = {(Double_t)fRun, (Double_t)fCurrentGapCondition};
	if (fGapRun) fGapRun->Fill(x);

	//= VERTEX COINCIDENCE AND POSITION ==========================================
	AnalyzeVtx();

	//= TRACK CUTS ===============================================================
	Bool_t doSoft = !fAnalysisStatus ||
		(fAnalysisStatus & AliCDMesonBase::kBitSoftTracks);

	fTracks->ProcessEvent(fAODEvent, fESDEvent, doSoft); // apply cuts
	DoMultiplicityStudy(nMCprimaries); // fill corresponding histograms
	if (fMAllTrackMass &&
	    (fGapInformation[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG)) {
		// calculate the invariant mass of all tracks in the event including soft
		// ones if the event is a full double gap event
		fMAllTrackMass->Fill(fTracks->GetInvariantMass());
	}

	// is multiplicity within the desired range of  2 to 3?
	Int_t nch = fTracks->GetTracks();
	Int_t ncombined = fTracks->GetCombinedTracks();
	Bool_t wSoft = ((ncombined >= 2) && (ncombined <=3)); // including soft tracks
	Bool_t woSoft = ((nch >= 2) && (nch <= 3)); // excluding soft tracks

	if (!wSoft && !woSoft) {
		// multiplicity out of range (both with soft and without soft track)
		PostOutputs();
		return;
	}

	//= TRACK PAIRS ==============================================================
	// loop over all track combinations
	for(Int_t ii=0; ii<ncombined; ii++){
		for(Int_t jj=ii+1; jj<ncombined; jj++){
			// assign current tracks
			fTrkPair[0] = fTracks->GetTrack(ii);
			fTrkPair[1] = fTracks->GetTrack(jj);

			// analyze track pairs
			if (wSoft) DoTrackPair(kTRUE);
			if (woSoft && (ii < nch) && (jj < nch)) DoTrackPair(kFALSE);
		}
	}

	//============================================================================
	PostOutputs();
}


//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::PostOutputs()
{
	//
	// PostData
	//

	Int_t iOutputSlot = 1; // dynamic output slot number handling
	PostData(iOutputSlot++, fHist);
	if (!(fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) { // normal operation
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitTHnMother)) {
			// THnSparse for invariant mass distributions
			PostData(iOutputSlot++, fThnMother);
		}
		if (!fAnalysisStatus
		    || ((fAnalysisStatus & AliCDMesonBase::kBitSoftTracks)
		        && (fAnalysisStatus & AliCDMesonBase::kBitTHnMother))) {
			// same including soft tracks
			PostData(iOutputSlot++, fThnMotherSoft);
		}
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitMultStudy)) {
			// multiplicity study
			PostData(iOutputSlot++, fThnMultiplicity);
		}
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitTHnMC)) {
			// MC truth study is active
			PostData(iOutputSlot++, fThnMC);
		}
		if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitPWAtree)) {
			// PWA tree active
			PostData(iOutputSlot++, fPWAtree);
		}
	}
	else if (fAnalysisStatus & AliCDMesonBase::kBitEEStudy) {
		// empty event study
		PostData(iOutputSlot++, fThnEmptyEvents);
	}
}


//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::FillEtaPhiMaps() const
{
	//
	// Controls which event contributes to which map
	//

	AliVEvent* event = (fDoAOD) ? (AliVEvent*)fAODEvent : (AliVEvent*)fESDEvent;

	if (fGapInformation[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG) {
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0fmdspdtpcMap,
		                               fv0fmdspdtpcMapCutted);
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0fmdspdMap,
		                               fv0fmdspdMapCutted);
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0fmdMap, fv0fmdMapCutted);
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0Map, fv0MapCutted);
	}
	else if (fGapInformation[kV0FMDSPD] == AliCDMesonBase::kBinDG) {
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0fmdspdMap,
		                               fv0fmdspdMapCutted);
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0fmdMap, fv0fmdMapCutted);
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0Map, fv0MapCutted);
	}
	else if (fGapInformation[kV0FMD] == AliCDMesonBase::kBinDG) {
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0fmdMap, fv0fmdMapCutted);
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0Map, fv0MapCutted);
	}
	else if (fGapInformation[kV0] == AliCDMesonBase::kBinDG) {
		AliCDMesonUtils::FillEtaPhiMap(event, fTracks, fv0Map, fv0MapCutted);
	}
}


//------------------------------------------------------------------------------
Bool_t AliAnalysisTaskCDMeson::CheckInput()
{
	//
	//general protection
	//
	if (const AliESDInputHandler *esdH =
	    dynamic_cast<AliESDInputHandler*>(fInputHandler)) {
		fESDEvent = esdH->GetEvent();
	}
	else if (const AliAODInputHandler *aodH =
	         dynamic_cast<AliAODInputHandler*>(fInputHandler)) {
		fAODEvent = aodH->GetEvent();
		fDoAOD = kTRUE;
	}
	else {
	  
	}
	fNoGapFraction = (fDoAOD) ? 1. : fNoGapFraction; // process all running on AOD
	fPIDResponse = (AliPIDResponse*)fInputHandler->GetPIDResponse();

	if(!fESDEvent && !fAODEvent){
		printf("AliAnalysisTaskCDMeson No valid event\n");
		return kFALSE;
	}

	if(!fPIDResponse){
		printf("AliAnalysisTaskCDMeson No PIDd\n");
		// PID is fixed to unknown
		//return kFALSE;
	}

	if(fDoAOD && fAODEvent && fabs(fAODEvent->GetMagneticField())<1){
		printf("AliAnalysisTaskCDMeson strange Bfield! %f\n",
		       fAODEvent->GetMagneticField());
		return kFALSE;
	}
	else if((!fDoAOD) && fESDEvent && fabs(fESDEvent->GetMagneticField())<1){
		printf("AliAnalysisTaskCDMeson strange Bfield! %f\n",
		       fESDEvent->GetMagneticField());
		return kFALSE;
	}

	Int_t tmprun = 0;
	if (fDoAOD && fAODEvent) {
		tmprun = fAODEvent->GetRunNumber();
	}
	else if (fESDEvent) {
		tmprun = fESDEvent->GetRunNumber();
	}

	if(fRun!=tmprun){
		fRun = tmprun;
		AliCDMesonUtils::SPDLoadGeom(fRun);

		// change PID cuts if necessary
		if ((fRun >= 162933) && (fRun <=  165462)) {
			fPIDmode = 1;
		}
		else {
			fPIDmode = 0;
		}
	}

	// get MC event
	fMCEvent = MCEvent();

	return kTRUE;
}

//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::DoEmptyEventStudy() {
	// Analyses the observables needed for the gap determination in empty events
	// for cross checks same observables are stored for A/C/I(B)-triggers as well
	//


	if (!(fAnalysisStatus & AliCDMesonBase::kBitEEStudy)) {
		// check whether empty event analysis is activated
		return;
	}

	if(!fESDEvent || fDoAOD) { // ensure that we are running on ESDs
		return;
	}

	Int_t eventType = AliCDMesonUtils::GetEventType(fESDEvent);
	TRandom3 rnd(0);
	if ((eventType != AliCDMesonBase::kBinEventUnknown) &&
	    ((rnd.Rndm() > 0.95) ||
	     (AliCDMesonBase::kBinEventE == eventType))) {
		Int_t fmdA = 0, fmdC = 0, spdIA = 0, spdIC = 0, spdOA = 0, spdOC = 0,
			spdTrklSum = 0, spdTrklCentral = 0, spdTrklForwardA = 0,
			spdTrklForwardC = 0;

		Float_t fmdSums[] = { 0., 0., 0., 0., 0. };
		AliCDMesonUtils::GetMultFMD(fESDEvent, fmdA, fmdC, fmdSums);
		// Obtain FMD multiplicity using FMDHitCombinations
		AliCDMesonUtils::GetMultSPD(fESDEvent, spdIA, spdIC, spdOA, spdOC);
		// Obtain SPD multiplicity using FastOR information
		AliCDMesonUtils::GetSPDTrackletMult(fESDEvent, spdTrklSum,
		                                    spdTrklForwardA, spdTrklForwardC,
		                                    spdTrklCentral);
		// obtain SPD multiplicity using tracklets via AliMultiplicity

		AliCDMesonBase::FillThnEmptyEvents(fThnEmptyEvents, eventType, fmdA, fmdC,
		                                   spdIA, spdIC, spdOA, spdOC,
		                                   spdTrklForwardA, spdTrklForwardC,
		                                   (Int_t)fmdSums[0], (Int_t)fmdSums[1],
		                                   (Int_t)fmdSums[2], (Int_t)fmdSums[3],
		                                   (Int_t)fmdSums[4]);
	}
	// the following code is only executed for empty events, this ensures, that
	// all the histograms contain only information on empty events, while the
	// THnSparse contains all information on A/C/I events
	if (AliCDMesonBase::kBinEventE == eventType) {
		TH1F* fmdSums[] = { fFMDsum1I, fFMDsum2I, fFMDsum2O, fFMDsum3I,
		                    fFMDsum3O };
		AliCDMesonUtils::GetGapConfig(fESDEvent, fHitMapSPDinner, fHitMapSPDouter,
		                              fHitMapSPDtrklt, fHitMapFMDa, fHitMapFMDc,
		                              (TH1**)fmdSums, fTPCGapDCAaSide,
		                              fTPCGapDCAcSide);
		// fill hit maps
	}
	return;
}


//------------------------------------------------------------------------------
Bool_t AliAnalysisTaskCDMeson::DetermineGap()
{
	// determines the gap configuration for all gap tagging detectors based on the
	// data set which is available
	//

	fCurrentGapCondition = 0x0; // initialize gap condition

	if (fDoAOD) {
		AliAODHandler* aodHandler =
			(AliAODHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
		TTree *aodTree = aodHandler->GetTree();
		if (aodTree) {
			aodTree->SetBranchAddress("gapCondition", &fCurrentGapCondition);
			aodTree->GetEvent(Entry()); // seems to be needed! (loads current event)
		}
		if (!fCurrentGapCondition) {
			fCurrentGapCondition = 0xfffe;
			puts("AliAnalysisTaskCDMeson - error while gap condition determination using AODs\n");
			return kFALSE;
		}
		// DEBUGGING STUFF
		//aodTree->ls();
		//aodTree->MakeCode();
		//aodTree->MakeClass();
		//aodTree->GetEvent(Entry());
		//aodTree->Show();
		//TBranch* branch = aodTree->GetBranch("gapCondition");
		//printf("AliAnalysisTaskCDMeson - branch=x%x\n",branch);
		//if (!fCurrentGapCondition) {
		//branch->SetAddress(&fCurrentGapCondition);
			//}
		//Int_t entry = Entry();
		//printf("Entry()=%d\n", entry);
		//branch->GetEvent(entry);
		//printf("AliAnalysisTaskCDMeson - gapcondition=0x%x\n", fCurrentGapCondition);
	}
	else {
		if (fAnalysisStatus & AliCDMesonBase::kBitReadPreprocessedGap) {
			// retrieve preprocessed gap information
			AliAnalysisManager *am = AliAnalysisManager::GetAnalysisManager();
			TTree* esdTree = am->GetInputEventHandler()->GetTree(); // get ESD tree
			if (esdTree) {
				esdTree->SetBranchAddress("gapCondition", &fCurrentGapCondition);
				esdTree->GetEvent(Entry()); // seems to be needed! (loads current event)
			}
		}
		else {
			// determine gaps from ESDs
			TH1F* fmdSums[] = {fFMDsum1I, fFMDsum2I, fFMDsum2O, fFMDsum3I, fFMDsum3O};
			fCurrentGapCondition = AliCDMesonUtils::GetGapConfig(fESDEvent,
			                                                     fHitMapSPDinner,
			                                                     fHitMapSPDouter,
			                                                     fHitMapSPDtrklt,
			                                                     fHitMapFMDa,
			                                                     fHitMapFMDc,
			                                                     (TH1**)fmdSums,
			                                                     fTPCGapDCAaSide,
			                                                     fTPCGapDCAcSide);
		}
		if (!fCurrentGapCondition) {
			fCurrentGapCondition = 0xfffe;
			puts("AliAnalysisTaskCDMeson - error while gap condition determination using ESDs\n");
			return kFALSE;
		}
	}
	//printf("AliAnalysisTaskCDMeson - Event: %ld, gapCondition: 0x%x\n", (Long_t)Entry(),
	//       fCurrentGapCondition);


	// disentagle the contributions to the gap conditions of different "tightness"
	fGapInformation[kV0] =
		AliCDMesonBase::GetGapBin("V0", fCurrentGapCondition, kFALSE);
	fGapInformation[kV0FMD] =
		AliCDMesonBase::GetGapBin("V0FMD", fCurrentGapCondition, kFALSE);
	fGapInformation[kV0FMDSPD] =
		AliCDMesonBase::GetGapBin("V0FMDSPD", fCurrentGapCondition, kFALSE);
	fGapInformation[kV0FMDSPDTPC] =
		AliCDMesonBase::GetGapBin("V0FMDSPDTPC", fCurrentGapCondition, kFALSE);
	fGapInformation[kFMD] =
		AliCDMesonBase::GetGapBin("FMD",fCurrentGapCondition, kFALSE);
	fGapInformation[kSPD] =
		AliCDMesonBase::GetGapBin("SPD",fCurrentGapCondition, kFALSE);
	fGapInformation[kTPC] =
		AliCDMesonBase::GetGapBin("TPC",fCurrentGapCondition, kFALSE);
	fGapInformation[kTPCSPD] =
		AliCDMesonBase::GetGapBin("TPCSPD",fCurrentGapCondition, kFALSE);
	fGapInformation[kTPCSPDFMD] =
		AliCDMesonBase::GetGapBin("TPCSPDFMD",fCurrentGapCondition, kFALSE);
	fGapInformation[kTPCSPDFMDV0] =
		AliCDMesonBase::GetGapBin("TPCSPDFMDV0",fCurrentGapCondition, kFALSE);
	fGapInformation[kSPDFMD] =
		AliCDMesonBase::GetGapBin("SPDFMD",fCurrentGapCondition, kFALSE);
	fGapInformation[kSPDFMDV0] =
		AliCDMesonBase::GetGapBin("SPDFMDV0",fCurrentGapCondition, kFALSE);

	fGapInformationWCent[kV0] = AliCDMesonBase::GetGapBin("V0", fCurrentGapCondition);
	fGapInformationWCent[kV0FMD] =
		AliCDMesonBase::GetGapBin("V0FMD", fCurrentGapCondition);
	fGapInformationWCent[kV0FMDSPD] =
		AliCDMesonBase::GetGapBin("V0FMDSPD", fCurrentGapCondition);
	fGapInformationWCent[kV0FMDSPDTPC] =
		AliCDMesonBase::GetGapBin("V0FMDSPDTPC", fCurrentGapCondition);
	fGapInformationWCent[kFMD] =
		AliCDMesonBase::GetGapBin("FMD",fCurrentGapCondition);
	fGapInformationWCent[kSPD] =
		AliCDMesonBase::GetGapBin("SPD",fCurrentGapCondition);
	fGapInformationWCent[kTPC] =
		AliCDMesonBase::GetGapBin("TPC",fCurrentGapCondition);
	fGapInformationWCent[kTPCSPD] =
		AliCDMesonBase::GetGapBin("TPCSPD",fCurrentGapCondition);
	fGapInformationWCent[kTPCSPDFMD] =
		AliCDMesonBase::GetGapBin("TPCSPDFMD",fCurrentGapCondition);
	fGapInformationWCent[kTPCSPDFMDV0] =
		AliCDMesonBase::GetGapBin("TPCSPDFMDV0",fCurrentGapCondition);
	fGapInformationWCent[kSPDFMD] =
		AliCDMesonBase::GetGapBin("SPDFMD",fCurrentGapCondition);
	fGapInformationWCent[kSPDFMDV0] =
		AliCDMesonBase::GetGapBin("SPDFMDV0",fCurrentGapCondition);

	return kTRUE;
}


//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::DoMultiplicityStudy(Int_t nMCprimaries)
{
	// stores the multiplicity distributions for different gap conditions and
	// compares the multiplicity distribution for "normal primary tracks (ITSTPC)"
	// and the multiplicity distribution furthermore taking also soft tracks into
	// account
	//

	// retrieve values from the track object
	Int_t ntrk0 = fTracks->GetTracksBeforeCuts();
	Int_t nch = fTracks->GetTracks();
	Int_t ncombined = fTracks->GetCombinedTracks();
	Int_t nITSpureSA = fTracks->GetITSpureSACount();

	// determine the residual tracks / tracklets
	fResidualTracks = ntrk0 - ncombined - nITSpureSA;
	fResidualTracklets = fTracks->GetRemainingTrackletsCentralBarrel();

	// soft track specific stuff
	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitSoftTracks)) {
		fMultStudy->Fill((Double_t)nch, (Double_t)ncombined);
		if (fGapInformation[kV0] == AliCDMesonBase::kBinDG) {
			fMultStudyV0dg->Fill((Double_t)nch, (Double_t)ncombined);
		}
		if (fGapInformation[kV0FMD] == AliCDMesonBase::kBinDG) {
			fMultStudyV0FMDdg->Fill((Double_t)nch, (Double_t)ncombined);
		}
		if (fGapInformation[kV0FMDSPD] == AliCDMesonBase::kBinDG) {
			fMultStudyV0FMDSPDdg->Fill((Double_t)nch, (Double_t)ncombined);
		}
		if (fGapInformation[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG) {
			fMultStudyV0FMDSPDTPCdg->Fill((Double_t)nch, (Double_t)ncombined);
		}
	}


	// multiplicity distributions for different gaps
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitMultPerGapHists)) {
		fv0ntrk->Fill(ncombined, fGapInformation[kV0]);
		fv0fmdntrk->Fill(ncombined, fGapInformation[kV0FMD]);
		fv0fmdspdntrk->Fill(ncombined, fGapInformation[kV0FMDSPD]);
		fv0fmdspdtpcntrk->Fill(ncombined, fGapInformation[kV0FMDSPDTPC]);
	}

	// multiplicity removed by cuts for different gaps
	if (!fAnalysisStatus ||
	    (fAnalysisStatus & AliCDMesonBase::kBitRmMultPerGapHists)) {
		fv0Rmntrk->Fill(ntrk0-ncombined-nITSpureSA, fGapInformation[kV0]);
		fv0fmdRmntrk->Fill(ntrk0-ncombined-nITSpureSA, fGapInformation[kV0FMD]);
		fv0fmdspdRmntrk->Fill(ntrk0-ncombined-nITSpureSA,
		                      fGapInformation[kV0FMDSPD]);
		fv0fmdspdtpcRmntrk->Fill(ntrk0-ncombined-nITSpureSA,
		                         fGapInformation[kV0FMDSPDTPC]);
	}


	// fill maps with eta phi information for QA purposes
	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitEtaPhiMaps) ||
	    (fAnalysisStatus & AliCDMesonBase::kBitEtaPhiMapsWithCuts)) {
		FillEtaPhiMaps();
	}

	// fill stats and general multiplicity histograms
	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitStatsFlow)) {
		fhntrk->Fill(ncombined); // multiplicity distribution

		if (fGapInformationWCent[kV0] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinv0Gap);
		}
		if (fGapInformationWCent[kV0FMD] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinv0fmdGap);
		}
		if (fGapInformationWCent[kV0FMDSPD] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinv0fmdspdGap);
		}
		if (fGapInformationWCent[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinv0fmdspdtpcGap);
		}
		if (fGapInformationWCent[kTPC] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBintpcGap);
		}
		if (fGapInformationWCent[kTPCSPD] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBintpcspdGap);
		}
		if (fGapInformationWCent[kTPCSPDFMD] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBintpcspdfmdGap);
		}
		if (fGapInformationWCent[kTPCSPDFMDV0] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBintpcspdfmdv0Gap);
		}
		if (fGapInformationWCent[kFMD] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinfmdGap);
		}
		if (fGapInformationWCent[kSPD] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinspdGap);
		}
		if (fGapInformationWCent[kSPDFMD] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinspdfmdGap);
		}
		if (fGapInformationWCent[kSPDFMDV0] == AliCDMesonBase::kBinDG) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinspdfmdv0Gap);
		}
		if (nch == 2) fhStatsFlow->Fill(AliCDMesonBase::kBinTwoTrackEvents);
		else if (nch == 3) fhStatsFlow->Fill(AliCDMesonBase::kBinThreeTrackEvents);
	}

	// fill multiplicity response histograms (data vs. MC)
	if (fAnalysisStatus & AliCDMesonBase::kBitMultResponseMC) {
		fMultResponseMC->Fill(nMCprimaries, ncombined);
		if (fGapInformation[kV0] == AliCDMesonBase::kBinDG) {
			fMultResponseV0dgMC->Fill(nMCprimaries, ncombined);
		}
		if (fGapInformation[kV0FMD] == AliCDMesonBase::kBinDG) {
			fMultResponseV0FMDdgMC->Fill(nMCprimaries, ncombined);
		}
		if (fGapInformation[kV0FMDSPD] == AliCDMesonBase::kBinDG) {
			fMultResponseV0FMDSPDdgMC->Fill(nMCprimaries, ncombined);
		}
		if (fGapInformation[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG) {
			fMultResponseV0FMDSPDTPCdgMC->Fill(nMCprimaries, ncombined);
		}
	}

	// event cleanliness
	if (fResidualTracks == 0 && fhStatsFlow) {
		fhStatsFlow->Fill(AliCDMesonBase::kBinResidualTracks);
	}
	if (fResidualTracklets == 0 && fhStatsFlow) {
		fhStatsFlow->Fill(AliCDMesonBase::kBinResidualTracklets);
	}


	// multiplicity THnSparse
	if (!fAnalysisStatus
	    || (fAnalysisStatus & AliCDMesonBase::kBitMultStudy)) {
		AliCDMesonBase::FillThnMultiplicity(fThnMultiplicity, nch,
		                                    ncombined-nch, ncombined,
		                                    fGapInformation[kV0],
		                                    fGapInformation[kFMD],
		                                    fGapInformation[kSPD],
		                                    fGapInformation[kTPC],
		                                    fResidualTracks, fResidualTracklets,
		                                    fVtxZ, fVtxDst, fMCprocessType);
	}

	if (fAnalysisStatus & AliCDMesonBase::kBitFastORmultStudy) {
		if (fhspdV0dg && fhspdV0FMDdg && fhspdV0FMDSPDdg && fhspdV0FMDSPDTPCdg &&
		    !fDoAOD) {
			Int_t mult = AliCDMesonUtils::GetFastORmultiplicity(fESDEvent);

			if (fGapInformation[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG) {
				fhspdV0FMDSPDTPCdg->Fill(mult);
				fhspdV0FMDSPDdg->Fill(mult);
				fhspdV0FMDdg->Fill(mult);
				fhspdV0dg->Fill(mult);
				fhspdAfterCuts->Fill(mult);
			}
			else if (fGapInformation[kV0FMDSPD] == AliCDMesonBase::kBinDG) {
				fhspdV0FMDSPDdg->Fill(mult);
				fhspdV0FMDdg->Fill(mult);
				fhspdV0dg->Fill(mult);
				fhspdAfterCuts->Fill(mult);
			}
			else if (fGapInformation[kV0FMD] == AliCDMesonBase::kBinDG) {
				fhspdV0FMDdg->Fill(mult);
				fhspdV0dg->Fill(mult);
				fhspdAfterCuts->Fill(mult);
			}
			else if (fGapInformation[kV0] == AliCDMesonBase::kBinDG) {
				fhspdV0dg->Fill(mult);
				fhspdAfterCuts->Fill(mult);
			}
			else {
				fhspdAfterCuts->Fill(mult);
			}
		}
	}
}


//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::DoTrackPair(Bool_t soft /* = kFALSE */)
{
	//
	// process a two track pair
	//

	AliCDMesonUtils::SwapTrack((const AliVTrack**)fTrkPair); // random order

	const Int_t combCh =
		AliCDMesonUtils::GetCombCh((const AliVTrack**)fTrkPair); // uls or ls?

	const Int_t combPID = DoPID(combCh); // retrieve PID information

	// analyze vertex quality
	Int_t vtxInRng = 0;
	Int_t vtxCoincidence = 0;

	vtxInRng = (fabs(fVtxZ) < 4.) ? 1 : 0;
	// 4cm range, determined from detector geometry

	vtxCoincidence = (fVtxDst < fMaxVtxDst) ? 1 : 0;
	// vertex coincidence of the track and SPD vertex

	// initialize kinematic values
	Double_t mass = -999., pt = -999., cts = -999., oa = -999.;
	const TVector3 p1(fTrkPair[0]->Px(), fTrkPair[0]->Py(), fTrkPair[0]->Pz());
	const TVector3 p2(fTrkPair[1]->Px(), fTrkPair[1]->Py(), fTrkPair[1]->Pz());
	const TVector3* momenta[2] = { &p1, &p2 };
	AliCDMesonUtils::GetMassPtCtsOA(combPID, momenta, mass, pt, cts, oa);

	//= THnMother ================================================================
	if (!fAnalysisStatus ||
	    ((fAnalysisStatus & AliCDMesonBase::kBitTHnMother)
	     && (!soft || fAnalysisStatus & AliCDMesonBase::kBitSoftTracks))) {
		TRandom3 rnd(0);
		if (((fGapInformation[kV0] == AliCDMesonBase::kBinDG)
		     && (!(fAnalysisStatus & AliCDMesonBase::kBitReduceGapEvents)
		         || (fGapInformation[kV0FMD] == AliCDMesonBase::kBinDG)
		         || (rnd.Rndm() > (1. - fReducedGapFraction))))
		    || (rnd.Rndm() > (1. - fNoGapFraction)) || fDoAOD
		    || (vtxInRng && vtxCoincidence && (fResidualTracks == 0)
		        && (fResidualTracklets == 0))) {
			// reduce amount of no-gap events by a factor of 10 in order to spare
			// memory and shrink the final data volume

			// do switching needed to process either events including soft or without
			THnSparseD* thn = (soft) ? fThnMotherSoft : fThnMother; // output variable
			Int_t mult = (soft) ? fTracks->GetCombinedTracks() : fTracks->GetTracks();
			// correct multiplicity value
			Int_t residualTracks = (soft) ?
				fResidualTracks : fResidualTracks + fTracks->GetSoftTracks();
			// if the analysis is done without soft tracks, they will be added to the
			// residualTracks

			// fill MC histograms
			if (fMCEvent && (!fAnalysisStatus ||
			                 fAnalysisStatus & AliCDMesonBase::kBitMCProcess)) {
				if (mult == 2) {
					FillMChists(combCh);
				}
			}

			AliCDMesonBase::FillThnMother(thn, (Double_t)mult, (Double_t)combCh,
			                              (Double_t)combPID,
			                              (Double_t)fGapInformation[kV0],
			                              (Double_t)fGapInformation[kFMD],
			                              (Double_t)fGapInformation[kSPD],
			                              (Double_t)fGapInformation[kTPC],
			                              mass, pt, cts, oa, fTrkPair[0]->Pt(),
			                              (residualTracks == 0) ? 0. : 1.,
			                              (Double_t)vtxInRng,
			                              (Double_t)fMCprocessType,
			                              (Double_t)vtxCoincidence,
			                              (fResidualTracklets == 0) ? 0. : 1.);
		}
	}

	//= PWA ======================================================================
	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitPWAtree)) {
		if ((soft && (fTracks->GetCombinedTracks() == 2))
		    || ((fTracks->GetTracks() == 2)
		        && !(!fAnalysisStatus
		             || (fAnalysisStatus & AliCDMesonBase::kBitSoftTracks)))) {
			// TODO refine this condition
			// TODO add flag for 3 track events and soft tracks and the other quality
			// flags
			// PWA is only done for two track events
			AliCDMesonUtils::GetPWAinfo(combPID, (const AliVTrack**)fTrkPair, fTheta,
			                            fPhi, fMass, fMomentum);
			TRandom3 rnd(0);
			if (((fGapInformation[kV0] == AliCDMesonBase::kBinDG)
			     && (!(fAnalysisStatus & AliCDMesonBase::kBitReduceGapEvents)
			         || (fGapInformation[kV0FMD] == AliCDMesonBase::kBinDG)
			         || (rnd.Rndm() > (1. - fReducedGapFraction)))) ||
			    (rnd.Rndm() > (1. - fNoGapFraction))) {
				fPWAtree->Fill();
			}
		}
	}
}


//------------------------------------------------------------------------------
Int_t AliAnalysisTaskCDMeson::DoPID(Int_t combCh)
{
	// determine the PID of the two tracks for full double gap events, store
	// the results in another histogram than for the remaining events
	//

	Int_t combPID = 0;
	if (fGapInformation[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG) {
		// double-gap events
		combPID = (combCh == AliCDMesonBase::kBinPM) ? // assignment to uls/ls histo
			AliCDMesonUtils::GetCombPID(fPIDResponse, (const AliVTrack**)fTrkPair,
			                            fPIDmode, fComb2trkPIDulsDG) :
			AliCDMesonUtils::GetCombPID(fPIDResponse, (const AliVTrack**)fTrkPair,
			                            fPIDmode, fComb2trkPIDlsDG);
	}
	else { // non full double-gap events
		combPID = (combCh == AliCDMesonBase::kBinPM) ? // assignment to uls/ls histo
			AliCDMesonUtils::GetCombPID(fPIDResponse, (const AliVTrack**)fTrkPair,
			                            fPIDmode, fComb2trkPIDuls) :
			AliCDMesonUtils::GetCombPID(fPIDResponse, (const AliVTrack**)fTrkPair,
			                            fPIDmode, fComb2trkPIDls);
	}

	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitStatsFlow)) {
		if (combPID == AliCDMesonBase::kBinPion ||
		    combPID == AliCDMesonBase::kBinPionE) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinPionEvents);
		}
		else if (combPID == AliCDMesonBase::kBinKaon ||
				         combPID == AliCDMesonBase::kBinKaonE) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinKaonEvents);
		}
		else if (combPID == AliCDMesonBase::kBinProton ||
		         combPID == AliCDMesonBase::kBinProtonE) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinProtonEvents);
		}
		else if (combPID == AliCDMesonBase::kBinElectron ||
		         combPID == AliCDMesonBase::kBinElectronE) {
			fhStatsFlow->Fill(AliCDMesonBase::kBinElectronEvents);
		}
		else {
			fhStatsFlow->Fill(AliCDMesonBase::kBinUnknownPIDEvents);
		}
	}

	return combPID;
}


//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::DetermineMCprocessType()
{
	//
	// retrieves the MC process type from the AliGenEventHeader and classifies
	// them
	//

	// get MC information
	fMCprocess = -1; //detailed MC sub process information
	fMCprocessType = AliCDMesonBase::kBinND; // ND is default, also for data

	if (fMCEvent) {
		AliGenEventHeader* header = fMCEvent->GenEventHeader();
		if (header) {
			// Pythia6
			if (TString(header->IsA()->GetName()) == "AliGenPythiaEventHeader") {
				fMCprocess = ((AliGenPythiaEventHeader*)header)->ProcessType();
				switch(fMCprocess) {
				case 92:
				case 93:
				case 103:
				case 104: fMCprocessType = AliCDMesonBase::kBinSD; break;
				case 94:
				case 105: fMCprocessType = AliCDMesonBase::kBinDD; break;
				default: fMCprocessType = AliCDMesonBase::kBinND; break;
				}
			}
			// Phojet
			else if (TString(header->IsA()->GetName()) == "AliGenDPMjetEventHeader") {
				fMCprocess = ((AliGenDPMjetEventHeader*)header)->ProcessType();
				switch(fMCprocess) {
				case 5:
				case 6: fMCprocessType = AliCDMesonBase::kBinSD; break;
				case 7: fMCprocessType = AliCDMesonBase::kBinDD; break;
				case 4: fMCprocessType = AliCDMesonBase::kBinCD; break;
				default: fMCprocessType = AliCDMesonBase::kBinND; break;
				}
			}
		}
	}
}

//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::FillMChists(Int_t combCh)
{
	// fill the MC histograms for different gap conditions. Only real two track
	// events are taken into account
	//

	if (fMCprocess > 0) { // MC process
		for (Int_t iGap = kV0; iGap < kMax; ++iGap) {
			if (fGapInformation[iGap] == AliCDMesonBase::kBinDG) {
				if (combCh == AliCDMesonBase::kBinPM) {
					fMCProcessUls->Fill(fMCprocess, iGap);
				}
				else if (combCh == AliCDMesonBase::kBinPPMM) {
					fMCProcessLs->Fill(fMCprocess, iGap);
				}
			}
		}
	}
}


//------------------------------------------------------------------------------
Int_t AliAnalysisTaskCDMeson::DoMCTruth()
{
	//
	// analyses the MC truth and does a gap selection based on the eta values of
	// the primaries
	//

	if (!fMCEvent) return -1;
	AliStack* stack = fMCEvent->Stack();
	if (!stack) return -1;

	//= Multiplicity =============================================================
	// determine number of charged physical primaries on the stack
	Int_t nPhysicalPrimaries = 0;
	Int_t nPrimaries = stack->GetNprimary();
	for (Int_t iTracks = 0; iTracks < nPrimaries; ++iTracks) {
		TParticle* part = stack->Particle(iTracks);
		if (stack->IsPhysicalPrimary(iTracks) && (part->GetPDG()->Charge() != 0.) &&
		    (part->Eta() < 0.9) && (part->Eta() > -0.9)) { // TODO add parameter
			++nPhysicalPrimaries;
		}
	}


	//= Track Gap && Multiplicity in Region Bins =================================
	Int_t gapA = 0;
	Int_t gapAv0 = 0;
	Int_t gapAv0fmd = 0;
	Int_t gapC = 0;
	Int_t gapCv0 = 0;
	Int_t gapCv0fmd = 0;
	Int_t central = 0;
	for (Int_t iTracks = 0; iTracks <  nPrimaries; ++iTracks) {
		TParticle* part = (TParticle*)stack->Particle(iTracks);
		if (part && stack->IsPhysicalPrimary(iTracks) &&
		    (part->GetPDG()->Charge() != 0.)) {
			if (part->Eta() > -0.9 && part->Eta() < 0.9) central++;
			if (part->Eta() > 0.9 && part->Eta() < 5.1) gapA++;
			if (part->Eta() > 2.8 && part->Eta() < 5.1) gapAv0++;
			if (part->Eta() > 1.7 && part->Eta() < 5.1) gapAv0fmd++;
			if (part->Eta() < -0.9 && part->Eta() > -3.7) gapC++;
			if (part->Eta() < -1.9 && part->Eta() > -3.7) gapCv0++;
			if (part->Eta() < -1.9 && part->Eta() > -3.7) gapCv0fmd++;
		}
	}

	if (fMultRegionsMC) {
		// multiplicity distribution separated in A-side, central barrel and C-side
		fMultRegionsMC->Fill(gapA, 0);
		fMultRegionsMC->Fill(central, 1);
		fMultRegionsMC->Fill(gapC, 2);
		fMultRegionsMC->Fill(gapA+gapC, 3);
	}

	// WARNING: gap response determination based on primaries only, method too
	// simple to obtain reliable results; at least decays should be taken into
	// account properly
	if (fGapResponseMCv0Dg) {
		Bool_t gapFromMC = (gapAv0 == 0) && (gapCv0 == 0);
		Bool_t gapFromData = (fGapInformation[kV0] == AliCDMesonBase::kBinDG);

		if (gapFromMC && !gapFromData) {
			fGapResponseMCv0Dg->Fill(0);
		}
		else if (gapFromMC && gapFromData) {
			fGapResponseMCv0Dg->Fill(1);
		}
		else if (!gapFromMC && gapFromData) {
			fGapResponseMCv0Dg->Fill(2);
		}
	}
	if (fGapResponseMCv0fmdDg) {
		Bool_t gapFromMC = (gapAv0fmd == 0) && (gapCv0fmd == 0);
		Bool_t gapFromData = (fGapInformation[kV0FMD] == AliCDMesonBase::kBinDG);

		if (gapFromMC && !gapFromData) {
			fGapResponseMCv0fmdDg->Fill(0);
		}
		else if (gapFromMC && gapFromData) {
			fGapResponseMCv0fmdDg->Fill(1);
		}
		else if (!gapFromMC && gapFromData) {
			fGapResponseMCv0fmdDg->Fill(2);
		}
	}
	if (fGapResponseMCv0fmdspdDg) {
		Bool_t gapFromMC = (gapA == 0) && (gapC == 0);
		Bool_t gapFromData = (fGapInformation[kV0FMDSPD] == AliCDMesonBase::kBinDG);

		if (gapFromMC && !gapFromData) {
			fGapResponseMCv0fmdspdDg->Fill(0);
		}
		else if (gapFromMC && gapFromData) {
			fGapResponseMCv0fmdspdDg->Fill(1);
		}
		else if (!gapFromMC && gapFromData) {
			fGapResponseMCv0fmdspdDg->Fill(2);
		}
	}
	if (fGapResponseMCv0fmdspdtpcDg) {
		Bool_t gapFromMC = (gapA == 0) && (gapC == 0);
		Bool_t gapFromData =
			(fGapInformation[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG);

		if (gapFromMC && !gapFromData) {
			fGapResponseMCv0fmdspdtpcDg->Fill(0);
		}
		else if (gapFromMC && gapFromData) {
			fGapResponseMCv0fmdspdtpcDg->Fill(1);
		}
		else if (!gapFromMC && gapFromData) {
			fGapResponseMCv0fmdspdtpcDg->Fill(2);
		}
	}

	if ((nPhysicalPrimaries < 2 ) || (nPhysicalPrimaries >= 4 ))
		return nPhysicalPrimaries;

	Int_t gapCond = AliCDMesonBase::kBinNG;
	if ((gapA == 0) && (gapC == 0) && (central > 0))
		gapCond = AliCDMesonBase::kBinDG;
	else if ((gapA == 0) && (gapC > 0)) gapCond = AliCDMesonBase::kBinGA;
	else if ((gapA > 0) && (gapC == 0)) gapCond = AliCDMesonBase::kBinGC;
	else if ((gapA > 0) && (gapC > 0)) gapCond = AliCDMesonBase::kBinNG;

	//= Two Track ================================================================
	for (Int_t iTracks = 0; iTracks < stack->GetNprimary(); ++iTracks) {
		TParticle* part1 =0x0;
		part1 = (TParticle*)stack->Particle(iTracks);
		if (part1) {
			if (stack->IsPhysicalPrimary(iTracks) &&
			    (part1->GetPDG()->Charge() != 0.) && (part1->Eta() < 0.9) &&
			    (part1->Eta() > -0.9)) {
				for (Int_t jTracks = iTracks; jTracks < stack->GetNprimary(); ++jTracks) {
					TParticle* part2 = 0x0;
					part2 = (TParticle*)stack->Particle(jTracks);
					if (part2) {
						if (stack->IsPhysicalPrimary(jTracks) &&
						    (part2->GetPDG()->Charge() != 0.) && (part2->Eta() < 0.9) &&
						    (part2->Eta() > -0.9)) {
							TParticle* particles[2] = { part1, part2 };
							DoMCTrackPair(particles, gapCond, nPhysicalPrimaries);
						}
					}
				}
			}
		}
	}
	return nPhysicalPrimaries;
}


//------------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::DoMCTrackPair(TParticle* particles[],
                                           Int_t gapCond, Int_t multiplicity)
{
	//
	// analyses a two track pair from MC truth
	//

	// swap tracks randomly
	TRandom3 rnd(0);
	if (rnd.Rndm() >= 0.5) {
		TParticle* t = particles[1];
		particles[1] = particles[0];
		particles[0] = t;
	}

	// determine whether the pair is like sign or unlike sign
	const Int_t combCh =
		(particles[0]->GetPDG()->Charge()*particles[1]->GetPDG()->Charge() > 0.) ?
		AliCDMesonBase::kBinPPMM : AliCDMesonBase::kBinPM;

	// determine PID
	Int_t combPID = 0;
	if (gapCond == AliCDMesonBase::kBinDG) {
		combPID = (combCh == AliCDMesonBase::kBinPM) ? // assignment to uls/ls histo
			AliCDMesonUtils::GetCombPID((const TParticle**)particles,
			                            fComb2trkPIDulsDGmc) :
			AliCDMesonUtils::GetCombPID((const TParticle**)particles,
			                            fComb2trkPIDlsDGmc);
	}
	else {
		combPID = (combCh == AliCDMesonBase::kBinPM) ? // assignment to uls/ls histo
			AliCDMesonUtils::GetCombPID((const TParticle**)particles,
			                            fComb2trkPIDulsMC) :
			AliCDMesonUtils::GetCombPID((const TParticle**)particles,
			                            fComb2trkPIDlsMC);
	}

	// vertex quality is always nice for MC truth ;)
	Int_t vtxInRng = 1;
	Int_t vtxCoincidence = 1;

	// initialize kinematic values
	Double_t mass = -999., pt = -999., cts = -999., oa = -999.;
	const TVector3 p1(particles[0]->Px(), particles[0]->Py(), particles[0]->Pz());
	const TVector3 p2(particles[1]->Px(), particles[1]->Py(), particles[1]->Pz());
	const TVector3* momenta[2] = { &p1, &p2 };
	AliCDMesonUtils::GetMassPtCtsOA(combPID, momenta, mass, pt, cts, oa);

	//= THnMother ================================================================
	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitTHnMother)) {
		if ((gapCond != AliCDMesonBase::kBinNG) ||
		    (rnd.Rndm() > (1. - fNoGapFraction)) || fDoAOD) {

			AliCDMesonBase::FillThnMother(fThnMC, multiplicity, (Double_t)combCh,
			                              (Double_t)combPID, (Double_t)gapCond,
			                              (Double_t)gapCond, (Double_t)gapCond,
			                              (Double_t)gapCond, mass, pt, cts, oa,
			                              particles[0]->Pt(), 0., (Double_t)vtxInRng,
			                              (Double_t)fMCprocessType,
			                              (Double_t)vtxCoincidence, 1.);
		}
	}

	//= PWA ======================================================================
	// TODO ? should this be implemented???
}


//--------------------------------------------------------------------------
void AliAnalysisTaskCDMeson::AnalyzeVtx()
{
	// calculates the distance between the vertex obtain from tracks and the
	// vertex obtain from spd tracklets
	// stores the z position of the primary vertex from tracks

	fVtxDst = 0.; // reset distance

	// retrieve the pointers of the current primary vertices
	AliVVertex* trackVtx = (fDoAOD) ?
		(AliVVertex*)fAODEvent->GetPrimaryVertex() :
		(AliVVertex*)fESDEvent->GetPrimaryVertexTracks();
	AliVVertex* spdVtx = (fDoAOD) ?
		(AliVVertex*)fAODEvent->GetPrimaryVertexSPD() :
		(AliVVertex*)fESDEvent->GetPrimaryVertexSPD();

	fVtxZ = trackVtx->GetZ(); // store the vertex z position

	if (fDoAOD && (trackVtx == spdVtx)) { // no primary track vertex in the AOD
		fVtxDst = -5; // set arbitrary distance (counted in underflow bin!)
	}
	else { // do proper calculation of the geometrical distance
		fVtxDst += (trackVtx->GetX()-spdVtx->GetX())
			* (trackVtx->GetX()-spdVtx->GetX());
		fVtxDst += (trackVtx->GetY()-spdVtx->GetY())
			* (trackVtx->GetY()-spdVtx->GetY());
		fVtxDst += (trackVtx->GetZ()-spdVtx->GetZ())
			* (trackVtx->GetZ()-spdVtx->GetZ());
		fVtxDst = TMath::Sqrt(fVtxDst);
	}

	if (!fAnalysisStatus || (fAnalysisStatus & AliCDMesonBase::kBitVtxStudies)) {
		fPriVtxDst->Fill(fVtxDst);
		if (fGapInformation[kV0FMDSPDTPC] == AliCDMesonBase::kBinDG) {
			fPriVtxDstV0FMDSPDTPCdg->Fill(fVtxDst);
			fPriVtxDstV0FMDSPDdg->Fill(fVtxDst);
			fPriVtxDstV0FMDdg->Fill(fVtxDst);
			fPriVtxDstV0dg->Fill(fVtxDst);
		}
		else if (fGapInformation[kV0FMDSPD] == AliCDMesonBase::kBinDG) {
			fPriVtxDstV0FMDSPDdg->Fill(fVtxDst);
			fPriVtxDstV0FMDdg->Fill(fVtxDst);
			fPriVtxDstV0dg->Fill(fVtxDst);
		}
		else if (fGapInformation[kV0FMD] == AliCDMesonBase::kBinDG) {
			fPriVtxDstV0FMDdg->Fill(fVtxDst);
			fPriVtxDstV0dg->Fill(fVtxDst);
		}
		else if (fGapInformation[kV0] == AliCDMesonBase::kBinDG) {
			fPriVtxDstV0dg->Fill(fVtxDst);
		}
	}
}
 AliAnalysisTaskCDMeson.cxx:1
 AliAnalysisTaskCDMeson.cxx:2
 AliAnalysisTaskCDMeson.cxx:3
 AliAnalysisTaskCDMeson.cxx:4
 AliAnalysisTaskCDMeson.cxx:5
 AliAnalysisTaskCDMeson.cxx:6
 AliAnalysisTaskCDMeson.cxx:7
 AliAnalysisTaskCDMeson.cxx:8
 AliAnalysisTaskCDMeson.cxx:9
 AliAnalysisTaskCDMeson.cxx:10
 AliAnalysisTaskCDMeson.cxx:11
 AliAnalysisTaskCDMeson.cxx:12
 AliAnalysisTaskCDMeson.cxx:13
 AliAnalysisTaskCDMeson.cxx:14
 AliAnalysisTaskCDMeson.cxx:15
 AliAnalysisTaskCDMeson.cxx:16
 AliAnalysisTaskCDMeson.cxx:17
 AliAnalysisTaskCDMeson.cxx:18
 AliAnalysisTaskCDMeson.cxx:19
 AliAnalysisTaskCDMeson.cxx:20
 AliAnalysisTaskCDMeson.cxx:21
 AliAnalysisTaskCDMeson.cxx:22
 AliAnalysisTaskCDMeson.cxx:23
 AliAnalysisTaskCDMeson.cxx:24
 AliAnalysisTaskCDMeson.cxx:25
 AliAnalysisTaskCDMeson.cxx:26
 AliAnalysisTaskCDMeson.cxx:27
 AliAnalysisTaskCDMeson.cxx:28
 AliAnalysisTaskCDMeson.cxx:29
 AliAnalysisTaskCDMeson.cxx:30
 AliAnalysisTaskCDMeson.cxx:31
 AliAnalysisTaskCDMeson.cxx:32
 AliAnalysisTaskCDMeson.cxx:33
 AliAnalysisTaskCDMeson.cxx:34
 AliAnalysisTaskCDMeson.cxx:35
 AliAnalysisTaskCDMeson.cxx:36
 AliAnalysisTaskCDMeson.cxx:37
 AliAnalysisTaskCDMeson.cxx:38
 AliAnalysisTaskCDMeson.cxx:39
 AliAnalysisTaskCDMeson.cxx:40
 AliAnalysisTaskCDMeson.cxx:41
 AliAnalysisTaskCDMeson.cxx:42
 AliAnalysisTaskCDMeson.cxx:43
 AliAnalysisTaskCDMeson.cxx:44
 AliAnalysisTaskCDMeson.cxx:45
 AliAnalysisTaskCDMeson.cxx:46
 AliAnalysisTaskCDMeson.cxx:47
 AliAnalysisTaskCDMeson.cxx:48
 AliAnalysisTaskCDMeson.cxx:49
 AliAnalysisTaskCDMeson.cxx:50
 AliAnalysisTaskCDMeson.cxx:51
 AliAnalysisTaskCDMeson.cxx:52
 AliAnalysisTaskCDMeson.cxx:53
 AliAnalysisTaskCDMeson.cxx:54
 AliAnalysisTaskCDMeson.cxx:55
 AliAnalysisTaskCDMeson.cxx:56
 AliAnalysisTaskCDMeson.cxx:57
 AliAnalysisTaskCDMeson.cxx:58
 AliAnalysisTaskCDMeson.cxx:59
 AliAnalysisTaskCDMeson.cxx:60
 AliAnalysisTaskCDMeson.cxx:61
 AliAnalysisTaskCDMeson.cxx:62
 AliAnalysisTaskCDMeson.cxx:63
 AliAnalysisTaskCDMeson.cxx:64
 AliAnalysisTaskCDMeson.cxx:65
 AliAnalysisTaskCDMeson.cxx:66
 AliAnalysisTaskCDMeson.cxx:67
 AliAnalysisTaskCDMeson.cxx:68
 AliAnalysisTaskCDMeson.cxx:69
 AliAnalysisTaskCDMeson.cxx:70
 AliAnalysisTaskCDMeson.cxx:71
 AliAnalysisTaskCDMeson.cxx:72
 AliAnalysisTaskCDMeson.cxx:73
 AliAnalysisTaskCDMeson.cxx:74
 AliAnalysisTaskCDMeson.cxx:75
 AliAnalysisTaskCDMeson.cxx:76
 AliAnalysisTaskCDMeson.cxx:77
 AliAnalysisTaskCDMeson.cxx:78
 AliAnalysisTaskCDMeson.cxx:79
 AliAnalysisTaskCDMeson.cxx:80
 AliAnalysisTaskCDMeson.cxx:81
 AliAnalysisTaskCDMeson.cxx:82
 AliAnalysisTaskCDMeson.cxx:83
 AliAnalysisTaskCDMeson.cxx:84
 AliAnalysisTaskCDMeson.cxx:85
 AliAnalysisTaskCDMeson.cxx:86
 AliAnalysisTaskCDMeson.cxx:87
 AliAnalysisTaskCDMeson.cxx:88
 AliAnalysisTaskCDMeson.cxx:89
 AliAnalysisTaskCDMeson.cxx:90
 AliAnalysisTaskCDMeson.cxx:91
 AliAnalysisTaskCDMeson.cxx:92
 AliAnalysisTaskCDMeson.cxx:93
 AliAnalysisTaskCDMeson.cxx:94
 AliAnalysisTaskCDMeson.cxx:95
 AliAnalysisTaskCDMeson.cxx:96
 AliAnalysisTaskCDMeson.cxx:97
 AliAnalysisTaskCDMeson.cxx:98
 AliAnalysisTaskCDMeson.cxx:99
 AliAnalysisTaskCDMeson.cxx:100
 AliAnalysisTaskCDMeson.cxx:101
 AliAnalysisTaskCDMeson.cxx:102
 AliAnalysisTaskCDMeson.cxx:103
 AliAnalysisTaskCDMeson.cxx:104
 AliAnalysisTaskCDMeson.cxx:105
 AliAnalysisTaskCDMeson.cxx:106
 AliAnalysisTaskCDMeson.cxx:107
 AliAnalysisTaskCDMeson.cxx:108
 AliAnalysisTaskCDMeson.cxx:109
 AliAnalysisTaskCDMeson.cxx:110
 AliAnalysisTaskCDMeson.cxx:111
 AliAnalysisTaskCDMeson.cxx:112
 AliAnalysisTaskCDMeson.cxx:113
 AliAnalysisTaskCDMeson.cxx:114
 AliAnalysisTaskCDMeson.cxx:115
 AliAnalysisTaskCDMeson.cxx:116
 AliAnalysisTaskCDMeson.cxx:117
 AliAnalysisTaskCDMeson.cxx:118
 AliAnalysisTaskCDMeson.cxx:119
 AliAnalysisTaskCDMeson.cxx:120
 AliAnalysisTaskCDMeson.cxx:121
 AliAnalysisTaskCDMeson.cxx:122
 AliAnalysisTaskCDMeson.cxx:123
 AliAnalysisTaskCDMeson.cxx:124
 AliAnalysisTaskCDMeson.cxx:125
 AliAnalysisTaskCDMeson.cxx:126
 AliAnalysisTaskCDMeson.cxx:127
 AliAnalysisTaskCDMeson.cxx:128
 AliAnalysisTaskCDMeson.cxx:129
 AliAnalysisTaskCDMeson.cxx:130
 AliAnalysisTaskCDMeson.cxx:131
 AliAnalysisTaskCDMeson.cxx:132
 AliAnalysisTaskCDMeson.cxx:133
 AliAnalysisTaskCDMeson.cxx:134
 AliAnalysisTaskCDMeson.cxx:135
 AliAnalysisTaskCDMeson.cxx:136
 AliAnalysisTaskCDMeson.cxx:137
 AliAnalysisTaskCDMeson.cxx:138
 AliAnalysisTaskCDMeson.cxx:139
 AliAnalysisTaskCDMeson.cxx:140
 AliAnalysisTaskCDMeson.cxx:141
 AliAnalysisTaskCDMeson.cxx:142
 AliAnalysisTaskCDMeson.cxx:143
 AliAnalysisTaskCDMeson.cxx:144
 AliAnalysisTaskCDMeson.cxx:145
 AliAnalysisTaskCDMeson.cxx:146
 AliAnalysisTaskCDMeson.cxx:147
 AliAnalysisTaskCDMeson.cxx:148
 AliAnalysisTaskCDMeson.cxx:149
 AliAnalysisTaskCDMeson.cxx:150
 AliAnalysisTaskCDMeson.cxx:151
 AliAnalysisTaskCDMeson.cxx:152
 AliAnalysisTaskCDMeson.cxx:153
 AliAnalysisTaskCDMeson.cxx:154
 AliAnalysisTaskCDMeson.cxx:155
 AliAnalysisTaskCDMeson.cxx:156
 AliAnalysisTaskCDMeson.cxx:157
 AliAnalysisTaskCDMeson.cxx:158
 AliAnalysisTaskCDMeson.cxx:159
 AliAnalysisTaskCDMeson.cxx:160
 AliAnalysisTaskCDMeson.cxx:161
 AliAnalysisTaskCDMeson.cxx:162
 AliAnalysisTaskCDMeson.cxx:163
 AliAnalysisTaskCDMeson.cxx:164
 AliAnalysisTaskCDMeson.cxx:165
 AliAnalysisTaskCDMeson.cxx:166
 AliAnalysisTaskCDMeson.cxx:167
 AliAnalysisTaskCDMeson.cxx:168
 AliAnalysisTaskCDMeson.cxx:169
 AliAnalysisTaskCDMeson.cxx:170
 AliAnalysisTaskCDMeson.cxx:171
 AliAnalysisTaskCDMeson.cxx:172
 AliAnalysisTaskCDMeson.cxx:173
 AliAnalysisTaskCDMeson.cxx:174
 AliAnalysisTaskCDMeson.cxx:175
 AliAnalysisTaskCDMeson.cxx:176
 AliAnalysisTaskCDMeson.cxx:177
 AliAnalysisTaskCDMeson.cxx:178
 AliAnalysisTaskCDMeson.cxx:179
 AliAnalysisTaskCDMeson.cxx:180
 AliAnalysisTaskCDMeson.cxx:181
 AliAnalysisTaskCDMeson.cxx:182
 AliAnalysisTaskCDMeson.cxx:183
 AliAnalysisTaskCDMeson.cxx:184
 AliAnalysisTaskCDMeson.cxx:185
 AliAnalysisTaskCDMeson.cxx:186
 AliAnalysisTaskCDMeson.cxx:187
 AliAnalysisTaskCDMeson.cxx:188
 AliAnalysisTaskCDMeson.cxx:189
 AliAnalysisTaskCDMeson.cxx:190
 AliAnalysisTaskCDMeson.cxx:191
 AliAnalysisTaskCDMeson.cxx:192
 AliAnalysisTaskCDMeson.cxx:193
 AliAnalysisTaskCDMeson.cxx:194
 AliAnalysisTaskCDMeson.cxx:195
 AliAnalysisTaskCDMeson.cxx:196
 AliAnalysisTaskCDMeson.cxx:197
 AliAnalysisTaskCDMeson.cxx:198
 AliAnalysisTaskCDMeson.cxx:199
 AliAnalysisTaskCDMeson.cxx:200
 AliAnalysisTaskCDMeson.cxx:201
 AliAnalysisTaskCDMeson.cxx:202
 AliAnalysisTaskCDMeson.cxx:203
 AliAnalysisTaskCDMeson.cxx:204
 AliAnalysisTaskCDMeson.cxx:205
 AliAnalysisTaskCDMeson.cxx:206
 AliAnalysisTaskCDMeson.cxx:207
 AliAnalysisTaskCDMeson.cxx:208
 AliAnalysisTaskCDMeson.cxx:209
 AliAnalysisTaskCDMeson.cxx:210
 AliAnalysisTaskCDMeson.cxx:211
 AliAnalysisTaskCDMeson.cxx:212
 AliAnalysisTaskCDMeson.cxx:213
 AliAnalysisTaskCDMeson.cxx:214
 AliAnalysisTaskCDMeson.cxx:215
 AliAnalysisTaskCDMeson.cxx:216
 AliAnalysisTaskCDMeson.cxx:217
 AliAnalysisTaskCDMeson.cxx:218
 AliAnalysisTaskCDMeson.cxx:219
 AliAnalysisTaskCDMeson.cxx:220
 AliAnalysisTaskCDMeson.cxx:221
 AliAnalysisTaskCDMeson.cxx:222
 AliAnalysisTaskCDMeson.cxx:223
 AliAnalysisTaskCDMeson.cxx:224
 AliAnalysisTaskCDMeson.cxx:225
 AliAnalysisTaskCDMeson.cxx:226
 AliAnalysisTaskCDMeson.cxx:227
 AliAnalysisTaskCDMeson.cxx:228
 AliAnalysisTaskCDMeson.cxx:229
 AliAnalysisTaskCDMeson.cxx:230
 AliAnalysisTaskCDMeson.cxx:231
 AliAnalysisTaskCDMeson.cxx:232
 AliAnalysisTaskCDMeson.cxx:233
 AliAnalysisTaskCDMeson.cxx:234
 AliAnalysisTaskCDMeson.cxx:235
 AliAnalysisTaskCDMeson.cxx:236
 AliAnalysisTaskCDMeson.cxx:237
 AliAnalysisTaskCDMeson.cxx:238
 AliAnalysisTaskCDMeson.cxx:239
 AliAnalysisTaskCDMeson.cxx:240
 AliAnalysisTaskCDMeson.cxx:241
 AliAnalysisTaskCDMeson.cxx:242
 AliAnalysisTaskCDMeson.cxx:243
 AliAnalysisTaskCDMeson.cxx:244
 AliAnalysisTaskCDMeson.cxx:245
 AliAnalysisTaskCDMeson.cxx:246
 AliAnalysisTaskCDMeson.cxx:247
 AliAnalysisTaskCDMeson.cxx:248
 AliAnalysisTaskCDMeson.cxx:249
 AliAnalysisTaskCDMeson.cxx:250
 AliAnalysisTaskCDMeson.cxx:251
 AliAnalysisTaskCDMeson.cxx:252
 AliAnalysisTaskCDMeson.cxx:253
 AliAnalysisTaskCDMeson.cxx:254
 AliAnalysisTaskCDMeson.cxx:255
 AliAnalysisTaskCDMeson.cxx:256
 AliAnalysisTaskCDMeson.cxx:257
 AliAnalysisTaskCDMeson.cxx:258
 AliAnalysisTaskCDMeson.cxx:259
 AliAnalysisTaskCDMeson.cxx:260
 AliAnalysisTaskCDMeson.cxx:261
 AliAnalysisTaskCDMeson.cxx:262
 AliAnalysisTaskCDMeson.cxx:263
 AliAnalysisTaskCDMeson.cxx:264
 AliAnalysisTaskCDMeson.cxx:265
 AliAnalysisTaskCDMeson.cxx:266
 AliAnalysisTaskCDMeson.cxx:267
 AliAnalysisTaskCDMeson.cxx:268
 AliAnalysisTaskCDMeson.cxx:269
 AliAnalysisTaskCDMeson.cxx:270
 AliAnalysisTaskCDMeson.cxx:271
 AliAnalysisTaskCDMeson.cxx:272
 AliAnalysisTaskCDMeson.cxx:273
 AliAnalysisTaskCDMeson.cxx:274
 AliAnalysisTaskCDMeson.cxx:275
 AliAnalysisTaskCDMeson.cxx:276
 AliAnalysisTaskCDMeson.cxx:277
 AliAnalysisTaskCDMeson.cxx:278
 AliAnalysisTaskCDMeson.cxx:279
 AliAnalysisTaskCDMeson.cxx:280
 AliAnalysisTaskCDMeson.cxx:281
 AliAnalysisTaskCDMeson.cxx:282
 AliAnalysisTaskCDMeson.cxx:283
 AliAnalysisTaskCDMeson.cxx:284
 AliAnalysisTaskCDMeson.cxx:285
 AliAnalysisTaskCDMeson.cxx:286
 AliAnalysisTaskCDMeson.cxx:287
 AliAnalysisTaskCDMeson.cxx:288
 AliAnalysisTaskCDMeson.cxx:289
 AliAnalysisTaskCDMeson.cxx:290
 AliAnalysisTaskCDMeson.cxx:291
 AliAnalysisTaskCDMeson.cxx:292
 AliAnalysisTaskCDMeson.cxx:293
 AliAnalysisTaskCDMeson.cxx:294
 AliAnalysisTaskCDMeson.cxx:295
 AliAnalysisTaskCDMeson.cxx:296
 AliAnalysisTaskCDMeson.cxx:297
 AliAnalysisTaskCDMeson.cxx:298
 AliAnalysisTaskCDMeson.cxx:299
 AliAnalysisTaskCDMeson.cxx:300
 AliAnalysisTaskCDMeson.cxx:301
 AliAnalysisTaskCDMeson.cxx:302
 AliAnalysisTaskCDMeson.cxx:303
 AliAnalysisTaskCDMeson.cxx:304
 AliAnalysisTaskCDMeson.cxx:305
 AliAnalysisTaskCDMeson.cxx:306
 AliAnalysisTaskCDMeson.cxx:307
 AliAnalysisTaskCDMeson.cxx:308
 AliAnalysisTaskCDMeson.cxx:309
 AliAnalysisTaskCDMeson.cxx:310
 AliAnalysisTaskCDMeson.cxx:311
 AliAnalysisTaskCDMeson.cxx:312
 AliAnalysisTaskCDMeson.cxx:313
 AliAnalysisTaskCDMeson.cxx:314
 AliAnalysisTaskCDMeson.cxx:315
 AliAnalysisTaskCDMeson.cxx:316
 AliAnalysisTaskCDMeson.cxx:317
 AliAnalysisTaskCDMeson.cxx:318
 AliAnalysisTaskCDMeson.cxx:319
 AliAnalysisTaskCDMeson.cxx:320
 AliAnalysisTaskCDMeson.cxx:321
 AliAnalysisTaskCDMeson.cxx:322
 AliAnalysisTaskCDMeson.cxx:323
 AliAnalysisTaskCDMeson.cxx:324
 AliAnalysisTaskCDMeson.cxx:325
 AliAnalysisTaskCDMeson.cxx:326
 AliAnalysisTaskCDMeson.cxx:327
 AliAnalysisTaskCDMeson.cxx:328
 AliAnalysisTaskCDMeson.cxx:329
 AliAnalysisTaskCDMeson.cxx:330
 AliAnalysisTaskCDMeson.cxx:331
 AliAnalysisTaskCDMeson.cxx:332
 AliAnalysisTaskCDMeson.cxx:333
 AliAnalysisTaskCDMeson.cxx:334
 AliAnalysisTaskCDMeson.cxx:335
 AliAnalysisTaskCDMeson.cxx:336
 AliAnalysisTaskCDMeson.cxx:337
 AliAnalysisTaskCDMeson.cxx:338
 AliAnalysisTaskCDMeson.cxx:339
 AliAnalysisTaskCDMeson.cxx:340
 AliAnalysisTaskCDMeson.cxx:341
 AliAnalysisTaskCDMeson.cxx:342
 AliAnalysisTaskCDMeson.cxx:343
 AliAnalysisTaskCDMeson.cxx:344
 AliAnalysisTaskCDMeson.cxx:345
 AliAnalysisTaskCDMeson.cxx:346
 AliAnalysisTaskCDMeson.cxx:347
 AliAnalysisTaskCDMeson.cxx:348
 AliAnalysisTaskCDMeson.cxx:349
 AliAnalysisTaskCDMeson.cxx:350
 AliAnalysisTaskCDMeson.cxx:351
 AliAnalysisTaskCDMeson.cxx:352
 AliAnalysisTaskCDMeson.cxx:353
 AliAnalysisTaskCDMeson.cxx:354
 AliAnalysisTaskCDMeson.cxx:355
 AliAnalysisTaskCDMeson.cxx:356
 AliAnalysisTaskCDMeson.cxx:357
 AliAnalysisTaskCDMeson.cxx:358
 AliAnalysisTaskCDMeson.cxx:359
 AliAnalysisTaskCDMeson.cxx:360
 AliAnalysisTaskCDMeson.cxx:361
 AliAnalysisTaskCDMeson.cxx:362
 AliAnalysisTaskCDMeson.cxx:363
 AliAnalysisTaskCDMeson.cxx:364
 AliAnalysisTaskCDMeson.cxx:365
 AliAnalysisTaskCDMeson.cxx:366
 AliAnalysisTaskCDMeson.cxx:367
 AliAnalysisTaskCDMeson.cxx:368
 AliAnalysisTaskCDMeson.cxx:369
 AliAnalysisTaskCDMeson.cxx:370
 AliAnalysisTaskCDMeson.cxx:371
 AliAnalysisTaskCDMeson.cxx:372
 AliAnalysisTaskCDMeson.cxx:373
 AliAnalysisTaskCDMeson.cxx:374
 AliAnalysisTaskCDMeson.cxx:375
 AliAnalysisTaskCDMeson.cxx:376
 AliAnalysisTaskCDMeson.cxx:377
 AliAnalysisTaskCDMeson.cxx:378
 AliAnalysisTaskCDMeson.cxx:379
 AliAnalysisTaskCDMeson.cxx:380
 AliAnalysisTaskCDMeson.cxx:381
 AliAnalysisTaskCDMeson.cxx:382
 AliAnalysisTaskCDMeson.cxx:383
 AliAnalysisTaskCDMeson.cxx:384
 AliAnalysisTaskCDMeson.cxx:385
 AliAnalysisTaskCDMeson.cxx:386
 AliAnalysisTaskCDMeson.cxx:387
 AliAnalysisTaskCDMeson.cxx:388
 AliAnalysisTaskCDMeson.cxx:389
 AliAnalysisTaskCDMeson.cxx:390
 AliAnalysisTaskCDMeson.cxx:391
 AliAnalysisTaskCDMeson.cxx:392
 AliAnalysisTaskCDMeson.cxx:393
 AliAnalysisTaskCDMeson.cxx:394
 AliAnalysisTaskCDMeson.cxx:395
 AliAnalysisTaskCDMeson.cxx:396
 AliAnalysisTaskCDMeson.cxx:397
 AliAnalysisTaskCDMeson.cxx:398
 AliAnalysisTaskCDMeson.cxx:399
 AliAnalysisTaskCDMeson.cxx:400
 AliAnalysisTaskCDMeson.cxx:401
 AliAnalysisTaskCDMeson.cxx:402
 AliAnalysisTaskCDMeson.cxx:403
 AliAnalysisTaskCDMeson.cxx:404
 AliAnalysisTaskCDMeson.cxx:405
 AliAnalysisTaskCDMeson.cxx:406
 AliAnalysisTaskCDMeson.cxx:407
 AliAnalysisTaskCDMeson.cxx:408
 AliAnalysisTaskCDMeson.cxx:409
 AliAnalysisTaskCDMeson.cxx:410
 AliAnalysisTaskCDMeson.cxx:411
 AliAnalysisTaskCDMeson.cxx:412
 AliAnalysisTaskCDMeson.cxx:413
 AliAnalysisTaskCDMeson.cxx:414
 AliAnalysisTaskCDMeson.cxx:415
 AliAnalysisTaskCDMeson.cxx:416
 AliAnalysisTaskCDMeson.cxx:417
 AliAnalysisTaskCDMeson.cxx:418
 AliAnalysisTaskCDMeson.cxx:419
 AliAnalysisTaskCDMeson.cxx:420
 AliAnalysisTaskCDMeson.cxx:421
 AliAnalysisTaskCDMeson.cxx:422
 AliAnalysisTaskCDMeson.cxx:423
 AliAnalysisTaskCDMeson.cxx:424
 AliAnalysisTaskCDMeson.cxx:425
 AliAnalysisTaskCDMeson.cxx:426
 AliAnalysisTaskCDMeson.cxx:427
 AliAnalysisTaskCDMeson.cxx:428
 AliAnalysisTaskCDMeson.cxx:429
 AliAnalysisTaskCDMeson.cxx:430
 AliAnalysisTaskCDMeson.cxx:431
 AliAnalysisTaskCDMeson.cxx:432
 AliAnalysisTaskCDMeson.cxx:433
 AliAnalysisTaskCDMeson.cxx:434
 AliAnalysisTaskCDMeson.cxx:435
 AliAnalysisTaskCDMeson.cxx:436
 AliAnalysisTaskCDMeson.cxx:437
 AliAnalysisTaskCDMeson.cxx:438
 AliAnalysisTaskCDMeson.cxx:439
 AliAnalysisTaskCDMeson.cxx:440
 AliAnalysisTaskCDMeson.cxx:441
 AliAnalysisTaskCDMeson.cxx:442
 AliAnalysisTaskCDMeson.cxx:443
 AliAnalysisTaskCDMeson.cxx:444
 AliAnalysisTaskCDMeson.cxx:445
 AliAnalysisTaskCDMeson.cxx:446
 AliAnalysisTaskCDMeson.cxx:447
 AliAnalysisTaskCDMeson.cxx:448
 AliAnalysisTaskCDMeson.cxx:449
 AliAnalysisTaskCDMeson.cxx:450
 AliAnalysisTaskCDMeson.cxx:451
 AliAnalysisTaskCDMeson.cxx:452
 AliAnalysisTaskCDMeson.cxx:453
 AliAnalysisTaskCDMeson.cxx:454
 AliAnalysisTaskCDMeson.cxx:455
 AliAnalysisTaskCDMeson.cxx:456
 AliAnalysisTaskCDMeson.cxx:457
 AliAnalysisTaskCDMeson.cxx:458
 AliAnalysisTaskCDMeson.cxx:459
 AliAnalysisTaskCDMeson.cxx:460
 AliAnalysisTaskCDMeson.cxx:461
 AliAnalysisTaskCDMeson.cxx:462
 AliAnalysisTaskCDMeson.cxx:463
 AliAnalysisTaskCDMeson.cxx:464
 AliAnalysisTaskCDMeson.cxx:465
 AliAnalysisTaskCDMeson.cxx:466
 AliAnalysisTaskCDMeson.cxx:467
 AliAnalysisTaskCDMeson.cxx:468
 AliAnalysisTaskCDMeson.cxx:469
 AliAnalysisTaskCDMeson.cxx:470
 AliAnalysisTaskCDMeson.cxx:471
 AliAnalysisTaskCDMeson.cxx:472
 AliAnalysisTaskCDMeson.cxx:473
 AliAnalysisTaskCDMeson.cxx:474
 AliAnalysisTaskCDMeson.cxx:475
 AliAnalysisTaskCDMeson.cxx:476
 AliAnalysisTaskCDMeson.cxx:477
 AliAnalysisTaskCDMeson.cxx:478
 AliAnalysisTaskCDMeson.cxx:479
 AliAnalysisTaskCDMeson.cxx:480
 AliAnalysisTaskCDMeson.cxx:481
 AliAnalysisTaskCDMeson.cxx:482
 AliAnalysisTaskCDMeson.cxx:483
 AliAnalysisTaskCDMeson.cxx:484
 AliAnalysisTaskCDMeson.cxx:485
 AliAnalysisTaskCDMeson.cxx:486
 AliAnalysisTaskCDMeson.cxx:487
 AliAnalysisTaskCDMeson.cxx:488
 AliAnalysisTaskCDMeson.cxx:489
 AliAnalysisTaskCDMeson.cxx:490
 AliAnalysisTaskCDMeson.cxx:491
 AliAnalysisTaskCDMeson.cxx:492
 AliAnalysisTaskCDMeson.cxx:493
 AliAnalysisTaskCDMeson.cxx:494
 AliAnalysisTaskCDMeson.cxx:495
 AliAnalysisTaskCDMeson.cxx:496
 AliAnalysisTaskCDMeson.cxx:497
 AliAnalysisTaskCDMeson.cxx:498
 AliAnalysisTaskCDMeson.cxx:499
 AliAnalysisTaskCDMeson.cxx:500
 AliAnalysisTaskCDMeson.cxx:501
 AliAnalysisTaskCDMeson.cxx:502
 AliAnalysisTaskCDMeson.cxx:503
 AliAnalysisTaskCDMeson.cxx:504
 AliAnalysisTaskCDMeson.cxx:505
 AliAnalysisTaskCDMeson.cxx:506
 AliAnalysisTaskCDMeson.cxx:507
 AliAnalysisTaskCDMeson.cxx:508
 AliAnalysisTaskCDMeson.cxx:509
 AliAnalysisTaskCDMeson.cxx:510
 AliAnalysisTaskCDMeson.cxx:511
 AliAnalysisTaskCDMeson.cxx:512
 AliAnalysisTaskCDMeson.cxx:513
 AliAnalysisTaskCDMeson.cxx:514
 AliAnalysisTaskCDMeson.cxx:515
 AliAnalysisTaskCDMeson.cxx:516
 AliAnalysisTaskCDMeson.cxx:517
 AliAnalysisTaskCDMeson.cxx:518
 AliAnalysisTaskCDMeson.cxx:519
 AliAnalysisTaskCDMeson.cxx:520
 AliAnalysisTaskCDMeson.cxx:521
 AliAnalysisTaskCDMeson.cxx:522
 AliAnalysisTaskCDMeson.cxx:523
 AliAnalysisTaskCDMeson.cxx:524
 AliAnalysisTaskCDMeson.cxx:525
 AliAnalysisTaskCDMeson.cxx:526
 AliAnalysisTaskCDMeson.cxx:527
 AliAnalysisTaskCDMeson.cxx:528
 AliAnalysisTaskCDMeson.cxx:529
 AliAnalysisTaskCDMeson.cxx:530
 AliAnalysisTaskCDMeson.cxx:531
 AliAnalysisTaskCDMeson.cxx:532
 AliAnalysisTaskCDMeson.cxx:533
 AliAnalysisTaskCDMeson.cxx:534
 AliAnalysisTaskCDMeson.cxx:535
 AliAnalysisTaskCDMeson.cxx:536
 AliAnalysisTaskCDMeson.cxx:537
 AliAnalysisTaskCDMeson.cxx:538
 AliAnalysisTaskCDMeson.cxx:539
 AliAnalysisTaskCDMeson.cxx:540
 AliAnalysisTaskCDMeson.cxx:541
 AliAnalysisTaskCDMeson.cxx:542
 AliAnalysisTaskCDMeson.cxx:543
 AliAnalysisTaskCDMeson.cxx:544
 AliAnalysisTaskCDMeson.cxx:545
 AliAnalysisTaskCDMeson.cxx:546
 AliAnalysisTaskCDMeson.cxx:547
 AliAnalysisTaskCDMeson.cxx:548
 AliAnalysisTaskCDMeson.cxx:549
 AliAnalysisTaskCDMeson.cxx:550
 AliAnalysisTaskCDMeson.cxx:551
 AliAnalysisTaskCDMeson.cxx:552
 AliAnalysisTaskCDMeson.cxx:553
 AliAnalysisTaskCDMeson.cxx:554
 AliAnalysisTaskCDMeson.cxx:555
 AliAnalysisTaskCDMeson.cxx:556
 AliAnalysisTaskCDMeson.cxx:557
 AliAnalysisTaskCDMeson.cxx:558
 AliAnalysisTaskCDMeson.cxx:559
 AliAnalysisTaskCDMeson.cxx:560
 AliAnalysisTaskCDMeson.cxx:561
 AliAnalysisTaskCDMeson.cxx:562
 AliAnalysisTaskCDMeson.cxx:563
 AliAnalysisTaskCDMeson.cxx:564
 AliAnalysisTaskCDMeson.cxx:565
 AliAnalysisTaskCDMeson.cxx:566
 AliAnalysisTaskCDMeson.cxx:567
 AliAnalysisTaskCDMeson.cxx:568
 AliAnalysisTaskCDMeson.cxx:569
 AliAnalysisTaskCDMeson.cxx:570
 AliAnalysisTaskCDMeson.cxx:571
 AliAnalysisTaskCDMeson.cxx:572
 AliAnalysisTaskCDMeson.cxx:573
 AliAnalysisTaskCDMeson.cxx:574
 AliAnalysisTaskCDMeson.cxx:575
 AliAnalysisTaskCDMeson.cxx:576
 AliAnalysisTaskCDMeson.cxx:577
 AliAnalysisTaskCDMeson.cxx:578
 AliAnalysisTaskCDMeson.cxx:579
 AliAnalysisTaskCDMeson.cxx:580
 AliAnalysisTaskCDMeson.cxx:581
 AliAnalysisTaskCDMeson.cxx:582
 AliAnalysisTaskCDMeson.cxx:583
 AliAnalysisTaskCDMeson.cxx:584
 AliAnalysisTaskCDMeson.cxx:585
 AliAnalysisTaskCDMeson.cxx:586
 AliAnalysisTaskCDMeson.cxx:587
 AliAnalysisTaskCDMeson.cxx:588
 AliAnalysisTaskCDMeson.cxx:589
 AliAnalysisTaskCDMeson.cxx:590
 AliAnalysisTaskCDMeson.cxx:591
 AliAnalysisTaskCDMeson.cxx:592
 AliAnalysisTaskCDMeson.cxx:593
 AliAnalysisTaskCDMeson.cxx:594
 AliAnalysisTaskCDMeson.cxx:595
 AliAnalysisTaskCDMeson.cxx:596
 AliAnalysisTaskCDMeson.cxx:597
 AliAnalysisTaskCDMeson.cxx:598
 AliAnalysisTaskCDMeson.cxx:599
 AliAnalysisTaskCDMeson.cxx:600
 AliAnalysisTaskCDMeson.cxx:601
 AliAnalysisTaskCDMeson.cxx:602
 AliAnalysisTaskCDMeson.cxx:603
 AliAnalysisTaskCDMeson.cxx:604
 AliAnalysisTaskCDMeson.cxx:605
 AliAnalysisTaskCDMeson.cxx:606
 AliAnalysisTaskCDMeson.cxx:607
 AliAnalysisTaskCDMeson.cxx:608
 AliAnalysisTaskCDMeson.cxx:609
 AliAnalysisTaskCDMeson.cxx:610
 AliAnalysisTaskCDMeson.cxx:611
 AliAnalysisTaskCDMeson.cxx:612
 AliAnalysisTaskCDMeson.cxx:613
 AliAnalysisTaskCDMeson.cxx:614
 AliAnalysisTaskCDMeson.cxx:615
 AliAnalysisTaskCDMeson.cxx:616
 AliAnalysisTaskCDMeson.cxx:617
 AliAnalysisTaskCDMeson.cxx:618
 AliAnalysisTaskCDMeson.cxx:619
 AliAnalysisTaskCDMeson.cxx:620
 AliAnalysisTaskCDMeson.cxx:621
 AliAnalysisTaskCDMeson.cxx:622
 AliAnalysisTaskCDMeson.cxx:623
 AliAnalysisTaskCDMeson.cxx:624
 AliAnalysisTaskCDMeson.cxx:625
 AliAnalysisTaskCDMeson.cxx:626
 AliAnalysisTaskCDMeson.cxx:627
 AliAnalysisTaskCDMeson.cxx:628
 AliAnalysisTaskCDMeson.cxx:629
 AliAnalysisTaskCDMeson.cxx:630
 AliAnalysisTaskCDMeson.cxx:631
 AliAnalysisTaskCDMeson.cxx:632
 AliAnalysisTaskCDMeson.cxx:633
 AliAnalysisTaskCDMeson.cxx:634
 AliAnalysisTaskCDMeson.cxx:635
 AliAnalysisTaskCDMeson.cxx:636
 AliAnalysisTaskCDMeson.cxx:637
 AliAnalysisTaskCDMeson.cxx:638
 AliAnalysisTaskCDMeson.cxx:639
 AliAnalysisTaskCDMeson.cxx:640
 AliAnalysisTaskCDMeson.cxx:641
 AliAnalysisTaskCDMeson.cxx:642
 AliAnalysisTaskCDMeson.cxx:643
 AliAnalysisTaskCDMeson.cxx:644
 AliAnalysisTaskCDMeson.cxx:645
 AliAnalysisTaskCDMeson.cxx:646
 AliAnalysisTaskCDMeson.cxx:647
 AliAnalysisTaskCDMeson.cxx:648
 AliAnalysisTaskCDMeson.cxx:649
 AliAnalysisTaskCDMeson.cxx:650
 AliAnalysisTaskCDMeson.cxx:651
 AliAnalysisTaskCDMeson.cxx:652
 AliAnalysisTaskCDMeson.cxx:653
 AliAnalysisTaskCDMeson.cxx:654
 AliAnalysisTaskCDMeson.cxx:655
 AliAnalysisTaskCDMeson.cxx:656
 AliAnalysisTaskCDMeson.cxx:657
 AliAnalysisTaskCDMeson.cxx:658
 AliAnalysisTaskCDMeson.cxx:659
 AliAnalysisTaskCDMeson.cxx:660
 AliAnalysisTaskCDMeson.cxx:661
 AliAnalysisTaskCDMeson.cxx:662
 AliAnalysisTaskCDMeson.cxx:663
 AliAnalysisTaskCDMeson.cxx:664
 AliAnalysisTaskCDMeson.cxx:665
 AliAnalysisTaskCDMeson.cxx:666
 AliAnalysisTaskCDMeson.cxx:667
 AliAnalysisTaskCDMeson.cxx:668
 AliAnalysisTaskCDMeson.cxx:669
 AliAnalysisTaskCDMeson.cxx:670
 AliAnalysisTaskCDMeson.cxx:671
 AliAnalysisTaskCDMeson.cxx:672
 AliAnalysisTaskCDMeson.cxx:673
 AliAnalysisTaskCDMeson.cxx:674
 AliAnalysisTaskCDMeson.cxx:675
 AliAnalysisTaskCDMeson.cxx:676
 AliAnalysisTaskCDMeson.cxx:677
 AliAnalysisTaskCDMeson.cxx:678
 AliAnalysisTaskCDMeson.cxx:679
 AliAnalysisTaskCDMeson.cxx:680
 AliAnalysisTaskCDMeson.cxx:681
 AliAnalysisTaskCDMeson.cxx:682
 AliAnalysisTaskCDMeson.cxx:683
 AliAnalysisTaskCDMeson.cxx:684
 AliAnalysisTaskCDMeson.cxx:685
 AliAnalysisTaskCDMeson.cxx:686
 AliAnalysisTaskCDMeson.cxx:687
 AliAnalysisTaskCDMeson.cxx:688
 AliAnalysisTaskCDMeson.cxx:689
 AliAnalysisTaskCDMeson.cxx:690
 AliAnalysisTaskCDMeson.cxx:691
 AliAnalysisTaskCDMeson.cxx:692
 AliAnalysisTaskCDMeson.cxx:693
 AliAnalysisTaskCDMeson.cxx:694
 AliAnalysisTaskCDMeson.cxx:695
 AliAnalysisTaskCDMeson.cxx:696
 AliAnalysisTaskCDMeson.cxx:697
 AliAnalysisTaskCDMeson.cxx:698
 AliAnalysisTaskCDMeson.cxx:699
 AliAnalysisTaskCDMeson.cxx:700
 AliAnalysisTaskCDMeson.cxx:701
 AliAnalysisTaskCDMeson.cxx:702
 AliAnalysisTaskCDMeson.cxx:703
 AliAnalysisTaskCDMeson.cxx:704
 AliAnalysisTaskCDMeson.cxx:705
 AliAnalysisTaskCDMeson.cxx:706
 AliAnalysisTaskCDMeson.cxx:707
 AliAnalysisTaskCDMeson.cxx:708
 AliAnalysisTaskCDMeson.cxx:709
 AliAnalysisTaskCDMeson.cxx:710
 AliAnalysisTaskCDMeson.cxx:711
 AliAnalysisTaskCDMeson.cxx:712
 AliAnalysisTaskCDMeson.cxx:713
 AliAnalysisTaskCDMeson.cxx:714
 AliAnalysisTaskCDMeson.cxx:715
 AliAnalysisTaskCDMeson.cxx:716
 AliAnalysisTaskCDMeson.cxx:717
 AliAnalysisTaskCDMeson.cxx:718
 AliAnalysisTaskCDMeson.cxx:719
 AliAnalysisTaskCDMeson.cxx:720
 AliAnalysisTaskCDMeson.cxx:721
 AliAnalysisTaskCDMeson.cxx:722
 AliAnalysisTaskCDMeson.cxx:723
 AliAnalysisTaskCDMeson.cxx:724
 AliAnalysisTaskCDMeson.cxx:725
 AliAnalysisTaskCDMeson.cxx:726
 AliAnalysisTaskCDMeson.cxx:727
 AliAnalysisTaskCDMeson.cxx:728
 AliAnalysisTaskCDMeson.cxx:729
 AliAnalysisTaskCDMeson.cxx:730
 AliAnalysisTaskCDMeson.cxx:731
 AliAnalysisTaskCDMeson.cxx:732
 AliAnalysisTaskCDMeson.cxx:733
 AliAnalysisTaskCDMeson.cxx:734
 AliAnalysisTaskCDMeson.cxx:735
 AliAnalysisTaskCDMeson.cxx:736
 AliAnalysisTaskCDMeson.cxx:737
 AliAnalysisTaskCDMeson.cxx:738
 AliAnalysisTaskCDMeson.cxx:739
 AliAnalysisTaskCDMeson.cxx:740
 AliAnalysisTaskCDMeson.cxx:741
 AliAnalysisTaskCDMeson.cxx:742
 AliAnalysisTaskCDMeson.cxx:743
 AliAnalysisTaskCDMeson.cxx:744
 AliAnalysisTaskCDMeson.cxx:745
 AliAnalysisTaskCDMeson.cxx:746
 AliAnalysisTaskCDMeson.cxx:747
 AliAnalysisTaskCDMeson.cxx:748
 AliAnalysisTaskCDMeson.cxx:749
 AliAnalysisTaskCDMeson.cxx:750
 AliAnalysisTaskCDMeson.cxx:751
 AliAnalysisTaskCDMeson.cxx:752
 AliAnalysisTaskCDMeson.cxx:753
 AliAnalysisTaskCDMeson.cxx:754
 AliAnalysisTaskCDMeson.cxx:755
 AliAnalysisTaskCDMeson.cxx:756
 AliAnalysisTaskCDMeson.cxx:757
 AliAnalysisTaskCDMeson.cxx:758
 AliAnalysisTaskCDMeson.cxx:759
 AliAnalysisTaskCDMeson.cxx:760
 AliAnalysisTaskCDMeson.cxx:761
 AliAnalysisTaskCDMeson.cxx:762
 AliAnalysisTaskCDMeson.cxx:763
 AliAnalysisTaskCDMeson.cxx:764
 AliAnalysisTaskCDMeson.cxx:765
 AliAnalysisTaskCDMeson.cxx:766
 AliAnalysisTaskCDMeson.cxx:767
 AliAnalysisTaskCDMeson.cxx:768
 AliAnalysisTaskCDMeson.cxx:769
 AliAnalysisTaskCDMeson.cxx:770
 AliAnalysisTaskCDMeson.cxx:771
 AliAnalysisTaskCDMeson.cxx:772
 AliAnalysisTaskCDMeson.cxx:773
 AliAnalysisTaskCDMeson.cxx:774
 AliAnalysisTaskCDMeson.cxx:775
 AliAnalysisTaskCDMeson.cxx:776
 AliAnalysisTaskCDMeson.cxx:777
 AliAnalysisTaskCDMeson.cxx:778
 AliAnalysisTaskCDMeson.cxx:779
 AliAnalysisTaskCDMeson.cxx:780
 AliAnalysisTaskCDMeson.cxx:781
 AliAnalysisTaskCDMeson.cxx:782
 AliAnalysisTaskCDMeson.cxx:783
 AliAnalysisTaskCDMeson.cxx:784
 AliAnalysisTaskCDMeson.cxx:785
 AliAnalysisTaskCDMeson.cxx:786
 AliAnalysisTaskCDMeson.cxx:787
 AliAnalysisTaskCDMeson.cxx:788
 AliAnalysisTaskCDMeson.cxx:789
 AliAnalysisTaskCDMeson.cxx:790
 AliAnalysisTaskCDMeson.cxx:791
 AliAnalysisTaskCDMeson.cxx:792
 AliAnalysisTaskCDMeson.cxx:793
 AliAnalysisTaskCDMeson.cxx:794
 AliAnalysisTaskCDMeson.cxx:795
 AliAnalysisTaskCDMeson.cxx:796
 AliAnalysisTaskCDMeson.cxx:797
 AliAnalysisTaskCDMeson.cxx:798
 AliAnalysisTaskCDMeson.cxx:799
 AliAnalysisTaskCDMeson.cxx:800
 AliAnalysisTaskCDMeson.cxx:801
 AliAnalysisTaskCDMeson.cxx:802
 AliAnalysisTaskCDMeson.cxx:803
 AliAnalysisTaskCDMeson.cxx:804
 AliAnalysisTaskCDMeson.cxx:805
 AliAnalysisTaskCDMeson.cxx:806
 AliAnalysisTaskCDMeson.cxx:807
 AliAnalysisTaskCDMeson.cxx:808
 AliAnalysisTaskCDMeson.cxx:809
 AliAnalysisTaskCDMeson.cxx:810
 AliAnalysisTaskCDMeson.cxx:811
 AliAnalysisTaskCDMeson.cxx:812
 AliAnalysisTaskCDMeson.cxx:813
 AliAnalysisTaskCDMeson.cxx:814
 AliAnalysisTaskCDMeson.cxx:815
 AliAnalysisTaskCDMeson.cxx:816
 AliAnalysisTaskCDMeson.cxx:817
 AliAnalysisTaskCDMeson.cxx:818
 AliAnalysisTaskCDMeson.cxx:819
 AliAnalysisTaskCDMeson.cxx:820
 AliAnalysisTaskCDMeson.cxx:821
 AliAnalysisTaskCDMeson.cxx:822
 AliAnalysisTaskCDMeson.cxx:823
 AliAnalysisTaskCDMeson.cxx:824
 AliAnalysisTaskCDMeson.cxx:825
 AliAnalysisTaskCDMeson.cxx:826
 AliAnalysisTaskCDMeson.cxx:827
 AliAnalysisTaskCDMeson.cxx:828
 AliAnalysisTaskCDMeson.cxx:829
 AliAnalysisTaskCDMeson.cxx:830
 AliAnalysisTaskCDMeson.cxx:831
 AliAnalysisTaskCDMeson.cxx:832
 AliAnalysisTaskCDMeson.cxx:833
 AliAnalysisTaskCDMeson.cxx:834
 AliAnalysisTaskCDMeson.cxx:835
 AliAnalysisTaskCDMeson.cxx:836
 AliAnalysisTaskCDMeson.cxx:837
 AliAnalysisTaskCDMeson.cxx:838
 AliAnalysisTaskCDMeson.cxx:839
 AliAnalysisTaskCDMeson.cxx:840
 AliAnalysisTaskCDMeson.cxx:841
 AliAnalysisTaskCDMeson.cxx:842
 AliAnalysisTaskCDMeson.cxx:843
 AliAnalysisTaskCDMeson.cxx:844
 AliAnalysisTaskCDMeson.cxx:845
 AliAnalysisTaskCDMeson.cxx:846
 AliAnalysisTaskCDMeson.cxx:847
 AliAnalysisTaskCDMeson.cxx:848
 AliAnalysisTaskCDMeson.cxx:849
 AliAnalysisTaskCDMeson.cxx:850
 AliAnalysisTaskCDMeson.cxx:851
 AliAnalysisTaskCDMeson.cxx:852
 AliAnalysisTaskCDMeson.cxx:853
 AliAnalysisTaskCDMeson.cxx:854
 AliAnalysisTaskCDMeson.cxx:855
 AliAnalysisTaskCDMeson.cxx:856
 AliAnalysisTaskCDMeson.cxx:857
 AliAnalysisTaskCDMeson.cxx:858
 AliAnalysisTaskCDMeson.cxx:859
 AliAnalysisTaskCDMeson.cxx:860
 AliAnalysisTaskCDMeson.cxx:861
 AliAnalysisTaskCDMeson.cxx:862
 AliAnalysisTaskCDMeson.cxx:863
 AliAnalysisTaskCDMeson.cxx:864
 AliAnalysisTaskCDMeson.cxx:865
 AliAnalysisTaskCDMeson.cxx:866
 AliAnalysisTaskCDMeson.cxx:867
 AliAnalysisTaskCDMeson.cxx:868
 AliAnalysisTaskCDMeson.cxx:869
 AliAnalysisTaskCDMeson.cxx:870
 AliAnalysisTaskCDMeson.cxx:871
 AliAnalysisTaskCDMeson.cxx:872
 AliAnalysisTaskCDMeson.cxx:873
 AliAnalysisTaskCDMeson.cxx:874
 AliAnalysisTaskCDMeson.cxx:875
 AliAnalysisTaskCDMeson.cxx:876
 AliAnalysisTaskCDMeson.cxx:877
 AliAnalysisTaskCDMeson.cxx:878
 AliAnalysisTaskCDMeson.cxx:879
 AliAnalysisTaskCDMeson.cxx:880
 AliAnalysisTaskCDMeson.cxx:881
 AliAnalysisTaskCDMeson.cxx:882
 AliAnalysisTaskCDMeson.cxx:883
 AliAnalysisTaskCDMeson.cxx:884
 AliAnalysisTaskCDMeson.cxx:885
 AliAnalysisTaskCDMeson.cxx:886
 AliAnalysisTaskCDMeson.cxx:887
 AliAnalysisTaskCDMeson.cxx:888
 AliAnalysisTaskCDMeson.cxx:889
 AliAnalysisTaskCDMeson.cxx:890
 AliAnalysisTaskCDMeson.cxx:891
 AliAnalysisTaskCDMeson.cxx:892
 AliAnalysisTaskCDMeson.cxx:893
 AliAnalysisTaskCDMeson.cxx:894
 AliAnalysisTaskCDMeson.cxx:895
 AliAnalysisTaskCDMeson.cxx:896
 AliAnalysisTaskCDMeson.cxx:897
 AliAnalysisTaskCDMeson.cxx:898
 AliAnalysisTaskCDMeson.cxx:899
 AliAnalysisTaskCDMeson.cxx:900
 AliAnalysisTaskCDMeson.cxx:901
 AliAnalysisTaskCDMeson.cxx:902
 AliAnalysisTaskCDMeson.cxx:903
 AliAnalysisTaskCDMeson.cxx:904
 AliAnalysisTaskCDMeson.cxx:905
 AliAnalysisTaskCDMeson.cxx:906
 AliAnalysisTaskCDMeson.cxx:907
 AliAnalysisTaskCDMeson.cxx:908
 AliAnalysisTaskCDMeson.cxx:909
 AliAnalysisTaskCDMeson.cxx:910
 AliAnalysisTaskCDMeson.cxx:911
 AliAnalysisTaskCDMeson.cxx:912
 AliAnalysisTaskCDMeson.cxx:913
 AliAnalysisTaskCDMeson.cxx:914
 AliAnalysisTaskCDMeson.cxx:915
 AliAnalysisTaskCDMeson.cxx:916
 AliAnalysisTaskCDMeson.cxx:917
 AliAnalysisTaskCDMeson.cxx:918
 AliAnalysisTaskCDMeson.cxx:919
 AliAnalysisTaskCDMeson.cxx:920
 AliAnalysisTaskCDMeson.cxx:921
 AliAnalysisTaskCDMeson.cxx:922
 AliAnalysisTaskCDMeson.cxx:923
 AliAnalysisTaskCDMeson.cxx:924
 AliAnalysisTaskCDMeson.cxx:925
 AliAnalysisTaskCDMeson.cxx:926
 AliAnalysisTaskCDMeson.cxx:927
 AliAnalysisTaskCDMeson.cxx:928
 AliAnalysisTaskCDMeson.cxx:929
 AliAnalysisTaskCDMeson.cxx:930
 AliAnalysisTaskCDMeson.cxx:931
 AliAnalysisTaskCDMeson.cxx:932
 AliAnalysisTaskCDMeson.cxx:933
 AliAnalysisTaskCDMeson.cxx:934
 AliAnalysisTaskCDMeson.cxx:935
 AliAnalysisTaskCDMeson.cxx:936
 AliAnalysisTaskCDMeson.cxx:937
 AliAnalysisTaskCDMeson.cxx:938
 AliAnalysisTaskCDMeson.cxx:939
 AliAnalysisTaskCDMeson.cxx:940
 AliAnalysisTaskCDMeson.cxx:941
 AliAnalysisTaskCDMeson.cxx:942
 AliAnalysisTaskCDMeson.cxx:943
 AliAnalysisTaskCDMeson.cxx:944
 AliAnalysisTaskCDMeson.cxx:945
 AliAnalysisTaskCDMeson.cxx:946
 AliAnalysisTaskCDMeson.cxx:947
 AliAnalysisTaskCDMeson.cxx:948
 AliAnalysisTaskCDMeson.cxx:949
 AliAnalysisTaskCDMeson.cxx:950
 AliAnalysisTaskCDMeson.cxx:951
 AliAnalysisTaskCDMeson.cxx:952
 AliAnalysisTaskCDMeson.cxx:953
 AliAnalysisTaskCDMeson.cxx:954
 AliAnalysisTaskCDMeson.cxx:955
 AliAnalysisTaskCDMeson.cxx:956
 AliAnalysisTaskCDMeson.cxx:957
 AliAnalysisTaskCDMeson.cxx:958
 AliAnalysisTaskCDMeson.cxx:959
 AliAnalysisTaskCDMeson.cxx:960
 AliAnalysisTaskCDMeson.cxx:961
 AliAnalysisTaskCDMeson.cxx:962
 AliAnalysisTaskCDMeson.cxx:963
 AliAnalysisTaskCDMeson.cxx:964
 AliAnalysisTaskCDMeson.cxx:965
 AliAnalysisTaskCDMeson.cxx:966
 AliAnalysisTaskCDMeson.cxx:967
 AliAnalysisTaskCDMeson.cxx:968
 AliAnalysisTaskCDMeson.cxx:969
 AliAnalysisTaskCDMeson.cxx:970
 AliAnalysisTaskCDMeson.cxx:971
 AliAnalysisTaskCDMeson.cxx:972
 AliAnalysisTaskCDMeson.cxx:973
 AliAnalysisTaskCDMeson.cxx:974
 AliAnalysisTaskCDMeson.cxx:975
 AliAnalysisTaskCDMeson.cxx:976
 AliAnalysisTaskCDMeson.cxx:977
 AliAnalysisTaskCDMeson.cxx:978
 AliAnalysisTaskCDMeson.cxx:979
 AliAnalysisTaskCDMeson.cxx:980
 AliAnalysisTaskCDMeson.cxx:981
 AliAnalysisTaskCDMeson.cxx:982
 AliAnalysisTaskCDMeson.cxx:983
 AliAnalysisTaskCDMeson.cxx:984
 AliAnalysisTaskCDMeson.cxx:985
 AliAnalysisTaskCDMeson.cxx:986
 AliAnalysisTaskCDMeson.cxx:987
 AliAnalysisTaskCDMeson.cxx:988
 AliAnalysisTaskCDMeson.cxx:989
 AliAnalysisTaskCDMeson.cxx:990
 AliAnalysisTaskCDMeson.cxx:991
 AliAnalysisTaskCDMeson.cxx:992
 AliAnalysisTaskCDMeson.cxx:993
 AliAnalysisTaskCDMeson.cxx:994
 AliAnalysisTaskCDMeson.cxx:995
 AliAnalysisTaskCDMeson.cxx:996
 AliAnalysisTaskCDMeson.cxx:997
 AliAnalysisTaskCDMeson.cxx:998
 AliAnalysisTaskCDMeson.cxx:999
 AliAnalysisTaskCDMeson.cxx:1000
 AliAnalysisTaskCDMeson.cxx:1001
 AliAnalysisTaskCDMeson.cxx:1002
 AliAnalysisTaskCDMeson.cxx:1003
 AliAnalysisTaskCDMeson.cxx:1004
 AliAnalysisTaskCDMeson.cxx:1005
 AliAnalysisTaskCDMeson.cxx:1006
 AliAnalysisTaskCDMeson.cxx:1007
 AliAnalysisTaskCDMeson.cxx:1008
 AliAnalysisTaskCDMeson.cxx:1009
 AliAnalysisTaskCDMeson.cxx:1010
 AliAnalysisTaskCDMeson.cxx:1011
 AliAnalysisTaskCDMeson.cxx:1012
 AliAnalysisTaskCDMeson.cxx:1013
 AliAnalysisTaskCDMeson.cxx:1014
 AliAnalysisTaskCDMeson.cxx:1015
 AliAnalysisTaskCDMeson.cxx:1016
 AliAnalysisTaskCDMeson.cxx:1017
 AliAnalysisTaskCDMeson.cxx:1018
 AliAnalysisTaskCDMeson.cxx:1019
 AliAnalysisTaskCDMeson.cxx:1020
 AliAnalysisTaskCDMeson.cxx:1021
 AliAnalysisTaskCDMeson.cxx:1022
 AliAnalysisTaskCDMeson.cxx:1023
 AliAnalysisTaskCDMeson.cxx:1024
 AliAnalysisTaskCDMeson.cxx:1025
 AliAnalysisTaskCDMeson.cxx:1026
 AliAnalysisTaskCDMeson.cxx:1027
 AliAnalysisTaskCDMeson.cxx:1028
 AliAnalysisTaskCDMeson.cxx:1029
 AliAnalysisTaskCDMeson.cxx:1030
 AliAnalysisTaskCDMeson.cxx:1031
 AliAnalysisTaskCDMeson.cxx:1032
 AliAnalysisTaskCDMeson.cxx:1033
 AliAnalysisTaskCDMeson.cxx:1034
 AliAnalysisTaskCDMeson.cxx:1035
 AliAnalysisTaskCDMeson.cxx:1036
 AliAnalysisTaskCDMeson.cxx:1037
 AliAnalysisTaskCDMeson.cxx:1038
 AliAnalysisTaskCDMeson.cxx:1039
 AliAnalysisTaskCDMeson.cxx:1040
 AliAnalysisTaskCDMeson.cxx:1041
 AliAnalysisTaskCDMeson.cxx:1042
 AliAnalysisTaskCDMeson.cxx:1043
 AliAnalysisTaskCDMeson.cxx:1044
 AliAnalysisTaskCDMeson.cxx:1045
 AliAnalysisTaskCDMeson.cxx:1046
 AliAnalysisTaskCDMeson.cxx:1047
 AliAnalysisTaskCDMeson.cxx:1048
 AliAnalysisTaskCDMeson.cxx:1049
 AliAnalysisTaskCDMeson.cxx:1050
 AliAnalysisTaskCDMeson.cxx:1051
 AliAnalysisTaskCDMeson.cxx:1052
 AliAnalysisTaskCDMeson.cxx:1053
 AliAnalysisTaskCDMeson.cxx:1054
 AliAnalysisTaskCDMeson.cxx:1055
 AliAnalysisTaskCDMeson.cxx:1056
 AliAnalysisTaskCDMeson.cxx:1057
 AliAnalysisTaskCDMeson.cxx:1058
 AliAnalysisTaskCDMeson.cxx:1059
 AliAnalysisTaskCDMeson.cxx:1060
 AliAnalysisTaskCDMeson.cxx:1061
 AliAnalysisTaskCDMeson.cxx:1062
 AliAnalysisTaskCDMeson.cxx:1063
 AliAnalysisTaskCDMeson.cxx:1064
 AliAnalysisTaskCDMeson.cxx:1065
 AliAnalysisTaskCDMeson.cxx:1066
 AliAnalysisTaskCDMeson.cxx:1067
 AliAnalysisTaskCDMeson.cxx:1068
 AliAnalysisTaskCDMeson.cxx:1069
 AliAnalysisTaskCDMeson.cxx:1070
 AliAnalysisTaskCDMeson.cxx:1071
 AliAnalysisTaskCDMeson.cxx:1072
 AliAnalysisTaskCDMeson.cxx:1073
 AliAnalysisTaskCDMeson.cxx:1074
 AliAnalysisTaskCDMeson.cxx:1075
 AliAnalysisTaskCDMeson.cxx:1076
 AliAnalysisTaskCDMeson.cxx:1077
 AliAnalysisTaskCDMeson.cxx:1078
 AliAnalysisTaskCDMeson.cxx:1079
 AliAnalysisTaskCDMeson.cxx:1080
 AliAnalysisTaskCDMeson.cxx:1081
 AliAnalysisTaskCDMeson.cxx:1082
 AliAnalysisTaskCDMeson.cxx:1083
 AliAnalysisTaskCDMeson.cxx:1084
 AliAnalysisTaskCDMeson.cxx:1085
 AliAnalysisTaskCDMeson.cxx:1086
 AliAnalysisTaskCDMeson.cxx:1087
 AliAnalysisTaskCDMeson.cxx:1088
 AliAnalysisTaskCDMeson.cxx:1089
 AliAnalysisTaskCDMeson.cxx:1090
 AliAnalysisTaskCDMeson.cxx:1091
 AliAnalysisTaskCDMeson.cxx:1092
 AliAnalysisTaskCDMeson.cxx:1093
 AliAnalysisTaskCDMeson.cxx:1094
 AliAnalysisTaskCDMeson.cxx:1095
 AliAnalysisTaskCDMeson.cxx:1096
 AliAnalysisTaskCDMeson.cxx:1097
 AliAnalysisTaskCDMeson.cxx:1098
 AliAnalysisTaskCDMeson.cxx:1099
 AliAnalysisTaskCDMeson.cxx:1100
 AliAnalysisTaskCDMeson.cxx:1101
 AliAnalysisTaskCDMeson.cxx:1102
 AliAnalysisTaskCDMeson.cxx:1103
 AliAnalysisTaskCDMeson.cxx:1104
 AliAnalysisTaskCDMeson.cxx:1105
 AliAnalysisTaskCDMeson.cxx:1106
 AliAnalysisTaskCDMeson.cxx:1107
 AliAnalysisTaskCDMeson.cxx:1108
 AliAnalysisTaskCDMeson.cxx:1109
 AliAnalysisTaskCDMeson.cxx:1110
 AliAnalysisTaskCDMeson.cxx:1111
 AliAnalysisTaskCDMeson.cxx:1112
 AliAnalysisTaskCDMeson.cxx:1113
 AliAnalysisTaskCDMeson.cxx:1114
 AliAnalysisTaskCDMeson.cxx:1115
 AliAnalysisTaskCDMeson.cxx:1116
 AliAnalysisTaskCDMeson.cxx:1117
 AliAnalysisTaskCDMeson.cxx:1118
 AliAnalysisTaskCDMeson.cxx:1119
 AliAnalysisTaskCDMeson.cxx:1120
 AliAnalysisTaskCDMeson.cxx:1121
 AliAnalysisTaskCDMeson.cxx:1122
 AliAnalysisTaskCDMeson.cxx:1123
 AliAnalysisTaskCDMeson.cxx:1124
 AliAnalysisTaskCDMeson.cxx:1125
 AliAnalysisTaskCDMeson.cxx:1126
 AliAnalysisTaskCDMeson.cxx:1127
 AliAnalysisTaskCDMeson.cxx:1128
 AliAnalysisTaskCDMeson.cxx:1129
 AliAnalysisTaskCDMeson.cxx:1130
 AliAnalysisTaskCDMeson.cxx:1131
 AliAnalysisTaskCDMeson.cxx:1132
 AliAnalysisTaskCDMeson.cxx:1133
 AliAnalysisTaskCDMeson.cxx:1134
 AliAnalysisTaskCDMeson.cxx:1135
 AliAnalysisTaskCDMeson.cxx:1136
 AliAnalysisTaskCDMeson.cxx:1137
 AliAnalysisTaskCDMeson.cxx:1138
 AliAnalysisTaskCDMeson.cxx:1139
 AliAnalysisTaskCDMeson.cxx:1140
 AliAnalysisTaskCDMeson.cxx:1141
 AliAnalysisTaskCDMeson.cxx:1142
 AliAnalysisTaskCDMeson.cxx:1143
 AliAnalysisTaskCDMeson.cxx:1144
 AliAnalysisTaskCDMeson.cxx:1145
 AliAnalysisTaskCDMeson.cxx:1146
 AliAnalysisTaskCDMeson.cxx:1147
 AliAnalysisTaskCDMeson.cxx:1148
 AliAnalysisTaskCDMeson.cxx:1149
 AliAnalysisTaskCDMeson.cxx:1150
 AliAnalysisTaskCDMeson.cxx:1151
 AliAnalysisTaskCDMeson.cxx:1152
 AliAnalysisTaskCDMeson.cxx:1153
 AliAnalysisTaskCDMeson.cxx:1154
 AliAnalysisTaskCDMeson.cxx:1155
 AliAnalysisTaskCDMeson.cxx:1156
 AliAnalysisTaskCDMeson.cxx:1157
 AliAnalysisTaskCDMeson.cxx:1158
 AliAnalysisTaskCDMeson.cxx:1159
 AliAnalysisTaskCDMeson.cxx:1160
 AliAnalysisTaskCDMeson.cxx:1161
 AliAnalysisTaskCDMeson.cxx:1162
 AliAnalysisTaskCDMeson.cxx:1163
 AliAnalysisTaskCDMeson.cxx:1164
 AliAnalysisTaskCDMeson.cxx:1165
 AliAnalysisTaskCDMeson.cxx:1166
 AliAnalysisTaskCDMeson.cxx:1167
 AliAnalysisTaskCDMeson.cxx:1168
 AliAnalysisTaskCDMeson.cxx:1169
 AliAnalysisTaskCDMeson.cxx:1170
 AliAnalysisTaskCDMeson.cxx:1171
 AliAnalysisTaskCDMeson.cxx:1172
 AliAnalysisTaskCDMeson.cxx:1173
 AliAnalysisTaskCDMeson.cxx:1174
 AliAnalysisTaskCDMeson.cxx:1175
 AliAnalysisTaskCDMeson.cxx:1176
 AliAnalysisTaskCDMeson.cxx:1177
 AliAnalysisTaskCDMeson.cxx:1178
 AliAnalysisTaskCDMeson.cxx:1179
 AliAnalysisTaskCDMeson.cxx:1180
 AliAnalysisTaskCDMeson.cxx:1181
 AliAnalysisTaskCDMeson.cxx:1182
 AliAnalysisTaskCDMeson.cxx:1183
 AliAnalysisTaskCDMeson.cxx:1184
 AliAnalysisTaskCDMeson.cxx:1185
 AliAnalysisTaskCDMeson.cxx:1186
 AliAnalysisTaskCDMeson.cxx:1187
 AliAnalysisTaskCDMeson.cxx:1188
 AliAnalysisTaskCDMeson.cxx:1189
 AliAnalysisTaskCDMeson.cxx:1190
 AliAnalysisTaskCDMeson.cxx:1191
 AliAnalysisTaskCDMeson.cxx:1192
 AliAnalysisTaskCDMeson.cxx:1193
 AliAnalysisTaskCDMeson.cxx:1194
 AliAnalysisTaskCDMeson.cxx:1195
 AliAnalysisTaskCDMeson.cxx:1196
 AliAnalysisTaskCDMeson.cxx:1197
 AliAnalysisTaskCDMeson.cxx:1198
 AliAnalysisTaskCDMeson.cxx:1199
 AliAnalysisTaskCDMeson.cxx:1200
 AliAnalysisTaskCDMeson.cxx:1201
 AliAnalysisTaskCDMeson.cxx:1202
 AliAnalysisTaskCDMeson.cxx:1203
 AliAnalysisTaskCDMeson.cxx:1204
 AliAnalysisTaskCDMeson.cxx:1205
 AliAnalysisTaskCDMeson.cxx:1206
 AliAnalysisTaskCDMeson.cxx:1207
 AliAnalysisTaskCDMeson.cxx:1208
 AliAnalysisTaskCDMeson.cxx:1209
 AliAnalysisTaskCDMeson.cxx:1210
 AliAnalysisTaskCDMeson.cxx:1211
 AliAnalysisTaskCDMeson.cxx:1212
 AliAnalysisTaskCDMeson.cxx:1213
 AliAnalysisTaskCDMeson.cxx:1214
 AliAnalysisTaskCDMeson.cxx:1215
 AliAnalysisTaskCDMeson.cxx:1216
 AliAnalysisTaskCDMeson.cxx:1217
 AliAnalysisTaskCDMeson.cxx:1218
 AliAnalysisTaskCDMeson.cxx:1219
 AliAnalysisTaskCDMeson.cxx:1220
 AliAnalysisTaskCDMeson.cxx:1221
 AliAnalysisTaskCDMeson.cxx:1222
 AliAnalysisTaskCDMeson.cxx:1223
 AliAnalysisTaskCDMeson.cxx:1224
 AliAnalysisTaskCDMeson.cxx:1225
 AliAnalysisTaskCDMeson.cxx:1226
 AliAnalysisTaskCDMeson.cxx:1227
 AliAnalysisTaskCDMeson.cxx:1228
 AliAnalysisTaskCDMeson.cxx:1229
 AliAnalysisTaskCDMeson.cxx:1230
 AliAnalysisTaskCDMeson.cxx:1231
 AliAnalysisTaskCDMeson.cxx:1232
 AliAnalysisTaskCDMeson.cxx:1233
 AliAnalysisTaskCDMeson.cxx:1234
 AliAnalysisTaskCDMeson.cxx:1235
 AliAnalysisTaskCDMeson.cxx:1236
 AliAnalysisTaskCDMeson.cxx:1237
 AliAnalysisTaskCDMeson.cxx:1238
 AliAnalysisTaskCDMeson.cxx:1239
 AliAnalysisTaskCDMeson.cxx:1240
 AliAnalysisTaskCDMeson.cxx:1241
 AliAnalysisTaskCDMeson.cxx:1242
 AliAnalysisTaskCDMeson.cxx:1243
 AliAnalysisTaskCDMeson.cxx:1244
 AliAnalysisTaskCDMeson.cxx:1245
 AliAnalysisTaskCDMeson.cxx:1246
 AliAnalysisTaskCDMeson.cxx:1247
 AliAnalysisTaskCDMeson.cxx:1248
 AliAnalysisTaskCDMeson.cxx:1249
 AliAnalysisTaskCDMeson.cxx:1250
 AliAnalysisTaskCDMeson.cxx:1251
 AliAnalysisTaskCDMeson.cxx:1252
 AliAnalysisTaskCDMeson.cxx:1253
 AliAnalysisTaskCDMeson.cxx:1254
 AliAnalysisTaskCDMeson.cxx:1255
 AliAnalysisTaskCDMeson.cxx:1256
 AliAnalysisTaskCDMeson.cxx:1257
 AliAnalysisTaskCDMeson.cxx:1258
 AliAnalysisTaskCDMeson.cxx:1259
 AliAnalysisTaskCDMeson.cxx:1260
 AliAnalysisTaskCDMeson.cxx:1261
 AliAnalysisTaskCDMeson.cxx:1262
 AliAnalysisTaskCDMeson.cxx:1263
 AliAnalysisTaskCDMeson.cxx:1264
 AliAnalysisTaskCDMeson.cxx:1265
 AliAnalysisTaskCDMeson.cxx:1266
 AliAnalysisTaskCDMeson.cxx:1267
 AliAnalysisTaskCDMeson.cxx:1268
 AliAnalysisTaskCDMeson.cxx:1269
 AliAnalysisTaskCDMeson.cxx:1270
 AliAnalysisTaskCDMeson.cxx:1271
 AliAnalysisTaskCDMeson.cxx:1272
 AliAnalysisTaskCDMeson.cxx:1273
 AliAnalysisTaskCDMeson.cxx:1274
 AliAnalysisTaskCDMeson.cxx:1275
 AliAnalysisTaskCDMeson.cxx:1276
 AliAnalysisTaskCDMeson.cxx:1277
 AliAnalysisTaskCDMeson.cxx:1278
 AliAnalysisTaskCDMeson.cxx:1279
 AliAnalysisTaskCDMeson.cxx:1280
 AliAnalysisTaskCDMeson.cxx:1281
 AliAnalysisTaskCDMeson.cxx:1282
 AliAnalysisTaskCDMeson.cxx:1283
 AliAnalysisTaskCDMeson.cxx:1284
 AliAnalysisTaskCDMeson.cxx:1285
 AliAnalysisTaskCDMeson.cxx:1286
 AliAnalysisTaskCDMeson.cxx:1287
 AliAnalysisTaskCDMeson.cxx:1288
 AliAnalysisTaskCDMeson.cxx:1289
 AliAnalysisTaskCDMeson.cxx:1290
 AliAnalysisTaskCDMeson.cxx:1291
 AliAnalysisTaskCDMeson.cxx:1292
 AliAnalysisTaskCDMeson.cxx:1293
 AliAnalysisTaskCDMeson.cxx:1294
 AliAnalysisTaskCDMeson.cxx:1295
 AliAnalysisTaskCDMeson.cxx:1296
 AliAnalysisTaskCDMeson.cxx:1297
 AliAnalysisTaskCDMeson.cxx:1298
 AliAnalysisTaskCDMeson.cxx:1299
 AliAnalysisTaskCDMeson.cxx:1300
 AliAnalysisTaskCDMeson.cxx:1301
 AliAnalysisTaskCDMeson.cxx:1302
 AliAnalysisTaskCDMeson.cxx:1303
 AliAnalysisTaskCDMeson.cxx:1304
 AliAnalysisTaskCDMeson.cxx:1305
 AliAnalysisTaskCDMeson.cxx:1306
 AliAnalysisTaskCDMeson.cxx:1307
 AliAnalysisTaskCDMeson.cxx:1308
 AliAnalysisTaskCDMeson.cxx:1309
 AliAnalysisTaskCDMeson.cxx:1310
 AliAnalysisTaskCDMeson.cxx:1311
 AliAnalysisTaskCDMeson.cxx:1312
 AliAnalysisTaskCDMeson.cxx:1313
 AliAnalysisTaskCDMeson.cxx:1314
 AliAnalysisTaskCDMeson.cxx:1315
 AliAnalysisTaskCDMeson.cxx:1316
 AliAnalysisTaskCDMeson.cxx:1317
 AliAnalysisTaskCDMeson.cxx:1318
 AliAnalysisTaskCDMeson.cxx:1319
 AliAnalysisTaskCDMeson.cxx:1320
 AliAnalysisTaskCDMeson.cxx:1321
 AliAnalysisTaskCDMeson.cxx:1322
 AliAnalysisTaskCDMeson.cxx:1323
 AliAnalysisTaskCDMeson.cxx:1324
 AliAnalysisTaskCDMeson.cxx:1325
 AliAnalysisTaskCDMeson.cxx:1326
 AliAnalysisTaskCDMeson.cxx:1327
 AliAnalysisTaskCDMeson.cxx:1328
 AliAnalysisTaskCDMeson.cxx:1329
 AliAnalysisTaskCDMeson.cxx:1330
 AliAnalysisTaskCDMeson.cxx:1331
 AliAnalysisTaskCDMeson.cxx:1332
 AliAnalysisTaskCDMeson.cxx:1333
 AliAnalysisTaskCDMeson.cxx:1334
 AliAnalysisTaskCDMeson.cxx:1335
 AliAnalysisTaskCDMeson.cxx:1336
 AliAnalysisTaskCDMeson.cxx:1337
 AliAnalysisTaskCDMeson.cxx:1338
 AliAnalysisTaskCDMeson.cxx:1339
 AliAnalysisTaskCDMeson.cxx:1340
 AliAnalysisTaskCDMeson.cxx:1341
 AliAnalysisTaskCDMeson.cxx:1342
 AliAnalysisTaskCDMeson.cxx:1343
 AliAnalysisTaskCDMeson.cxx:1344
 AliAnalysisTaskCDMeson.cxx:1345
 AliAnalysisTaskCDMeson.cxx:1346
 AliAnalysisTaskCDMeson.cxx:1347
 AliAnalysisTaskCDMeson.cxx:1348
 AliAnalysisTaskCDMeson.cxx:1349
 AliAnalysisTaskCDMeson.cxx:1350
 AliAnalysisTaskCDMeson.cxx:1351
 AliAnalysisTaskCDMeson.cxx:1352
 AliAnalysisTaskCDMeson.cxx:1353
 AliAnalysisTaskCDMeson.cxx:1354
 AliAnalysisTaskCDMeson.cxx:1355
 AliAnalysisTaskCDMeson.cxx:1356
 AliAnalysisTaskCDMeson.cxx:1357
 AliAnalysisTaskCDMeson.cxx:1358
 AliAnalysisTaskCDMeson.cxx:1359
 AliAnalysisTaskCDMeson.cxx:1360
 AliAnalysisTaskCDMeson.cxx:1361
 AliAnalysisTaskCDMeson.cxx:1362
 AliAnalysisTaskCDMeson.cxx:1363
 AliAnalysisTaskCDMeson.cxx:1364
 AliAnalysisTaskCDMeson.cxx:1365
 AliAnalysisTaskCDMeson.cxx:1366
 AliAnalysisTaskCDMeson.cxx:1367
 AliAnalysisTaskCDMeson.cxx:1368
 AliAnalysisTaskCDMeson.cxx:1369
 AliAnalysisTaskCDMeson.cxx:1370
 AliAnalysisTaskCDMeson.cxx:1371
 AliAnalysisTaskCDMeson.cxx:1372
 AliAnalysisTaskCDMeson.cxx:1373
 AliAnalysisTaskCDMeson.cxx:1374
 AliAnalysisTaskCDMeson.cxx:1375
 AliAnalysisTaskCDMeson.cxx:1376
 AliAnalysisTaskCDMeson.cxx:1377
 AliAnalysisTaskCDMeson.cxx:1378
 AliAnalysisTaskCDMeson.cxx:1379
 AliAnalysisTaskCDMeson.cxx:1380
 AliAnalysisTaskCDMeson.cxx:1381
 AliAnalysisTaskCDMeson.cxx:1382
 AliAnalysisTaskCDMeson.cxx:1383
 AliAnalysisTaskCDMeson.cxx:1384
 AliAnalysisTaskCDMeson.cxx:1385
 AliAnalysisTaskCDMeson.cxx:1386
 AliAnalysisTaskCDMeson.cxx:1387
 AliAnalysisTaskCDMeson.cxx:1388
 AliAnalysisTaskCDMeson.cxx:1389
 AliAnalysisTaskCDMeson.cxx:1390
 AliAnalysisTaskCDMeson.cxx:1391
 AliAnalysisTaskCDMeson.cxx:1392
 AliAnalysisTaskCDMeson.cxx:1393
 AliAnalysisTaskCDMeson.cxx:1394
 AliAnalysisTaskCDMeson.cxx:1395
 AliAnalysisTaskCDMeson.cxx:1396
 AliAnalysisTaskCDMeson.cxx:1397
 AliAnalysisTaskCDMeson.cxx:1398
 AliAnalysisTaskCDMeson.cxx:1399
 AliAnalysisTaskCDMeson.cxx:1400
 AliAnalysisTaskCDMeson.cxx:1401
 AliAnalysisTaskCDMeson.cxx:1402
 AliAnalysisTaskCDMeson.cxx:1403
 AliAnalysisTaskCDMeson.cxx:1404
 AliAnalysisTaskCDMeson.cxx:1405
 AliAnalysisTaskCDMeson.cxx:1406
 AliAnalysisTaskCDMeson.cxx:1407
 AliAnalysisTaskCDMeson.cxx:1408
 AliAnalysisTaskCDMeson.cxx:1409
 AliAnalysisTaskCDMeson.cxx:1410
 AliAnalysisTaskCDMeson.cxx:1411
 AliAnalysisTaskCDMeson.cxx:1412
 AliAnalysisTaskCDMeson.cxx:1413
 AliAnalysisTaskCDMeson.cxx:1414
 AliAnalysisTaskCDMeson.cxx:1415
 AliAnalysisTaskCDMeson.cxx:1416
 AliAnalysisTaskCDMeson.cxx:1417
 AliAnalysisTaskCDMeson.cxx:1418
 AliAnalysisTaskCDMeson.cxx:1419
 AliAnalysisTaskCDMeson.cxx:1420
 AliAnalysisTaskCDMeson.cxx:1421
 AliAnalysisTaskCDMeson.cxx:1422
 AliAnalysisTaskCDMeson.cxx:1423
 AliAnalysisTaskCDMeson.cxx:1424
 AliAnalysisTaskCDMeson.cxx:1425
 AliAnalysisTaskCDMeson.cxx:1426
 AliAnalysisTaskCDMeson.cxx:1427
 AliAnalysisTaskCDMeson.cxx:1428
 AliAnalysisTaskCDMeson.cxx:1429
 AliAnalysisTaskCDMeson.cxx:1430
 AliAnalysisTaskCDMeson.cxx:1431
 AliAnalysisTaskCDMeson.cxx:1432
 AliAnalysisTaskCDMeson.cxx:1433
 AliAnalysisTaskCDMeson.cxx:1434
 AliAnalysisTaskCDMeson.cxx:1435
 AliAnalysisTaskCDMeson.cxx:1436
 AliAnalysisTaskCDMeson.cxx:1437
 AliAnalysisTaskCDMeson.cxx:1438
 AliAnalysisTaskCDMeson.cxx:1439
 AliAnalysisTaskCDMeson.cxx:1440
 AliAnalysisTaskCDMeson.cxx:1441
 AliAnalysisTaskCDMeson.cxx:1442
 AliAnalysisTaskCDMeson.cxx:1443
 AliAnalysisTaskCDMeson.cxx:1444
 AliAnalysisTaskCDMeson.cxx:1445
 AliAnalysisTaskCDMeson.cxx:1446
 AliAnalysisTaskCDMeson.cxx:1447
 AliAnalysisTaskCDMeson.cxx:1448
 AliAnalysisTaskCDMeson.cxx:1449
 AliAnalysisTaskCDMeson.cxx:1450
 AliAnalysisTaskCDMeson.cxx:1451
 AliAnalysisTaskCDMeson.cxx:1452
 AliAnalysisTaskCDMeson.cxx:1453
 AliAnalysisTaskCDMeson.cxx:1454
 AliAnalysisTaskCDMeson.cxx:1455
 AliAnalysisTaskCDMeson.cxx:1456
 AliAnalysisTaskCDMeson.cxx:1457
 AliAnalysisTaskCDMeson.cxx:1458
 AliAnalysisTaskCDMeson.cxx:1459
 AliAnalysisTaskCDMeson.cxx:1460
 AliAnalysisTaskCDMeson.cxx:1461
 AliAnalysisTaskCDMeson.cxx:1462
 AliAnalysisTaskCDMeson.cxx:1463
 AliAnalysisTaskCDMeson.cxx:1464
 AliAnalysisTaskCDMeson.cxx:1465
 AliAnalysisTaskCDMeson.cxx:1466
 AliAnalysisTaskCDMeson.cxx:1467
 AliAnalysisTaskCDMeson.cxx:1468
 AliAnalysisTaskCDMeson.cxx:1469
 AliAnalysisTaskCDMeson.cxx:1470
 AliAnalysisTaskCDMeson.cxx:1471
 AliAnalysisTaskCDMeson.cxx:1472
 AliAnalysisTaskCDMeson.cxx:1473
 AliAnalysisTaskCDMeson.cxx:1474
 AliAnalysisTaskCDMeson.cxx:1475
 AliAnalysisTaskCDMeson.cxx:1476
 AliAnalysisTaskCDMeson.cxx:1477
 AliAnalysisTaskCDMeson.cxx:1478
 AliAnalysisTaskCDMeson.cxx:1479
 AliAnalysisTaskCDMeson.cxx:1480
 AliAnalysisTaskCDMeson.cxx:1481
 AliAnalysisTaskCDMeson.cxx:1482
 AliAnalysisTaskCDMeson.cxx:1483
 AliAnalysisTaskCDMeson.cxx:1484
 AliAnalysisTaskCDMeson.cxx:1485
 AliAnalysisTaskCDMeson.cxx:1486
 AliAnalysisTaskCDMeson.cxx:1487
 AliAnalysisTaskCDMeson.cxx:1488
 AliAnalysisTaskCDMeson.cxx:1489
 AliAnalysisTaskCDMeson.cxx:1490
 AliAnalysisTaskCDMeson.cxx:1491
 AliAnalysisTaskCDMeson.cxx:1492
 AliAnalysisTaskCDMeson.cxx:1493
 AliAnalysisTaskCDMeson.cxx:1494
 AliAnalysisTaskCDMeson.cxx:1495
 AliAnalysisTaskCDMeson.cxx:1496
 AliAnalysisTaskCDMeson.cxx:1497
 AliAnalysisTaskCDMeson.cxx:1498
 AliAnalysisTaskCDMeson.cxx:1499
 AliAnalysisTaskCDMeson.cxx:1500
 AliAnalysisTaskCDMeson.cxx:1501
 AliAnalysisTaskCDMeson.cxx:1502
 AliAnalysisTaskCDMeson.cxx:1503
 AliAnalysisTaskCDMeson.cxx:1504
 AliAnalysisTaskCDMeson.cxx:1505
 AliAnalysisTaskCDMeson.cxx:1506
 AliAnalysisTaskCDMeson.cxx:1507
 AliAnalysisTaskCDMeson.cxx:1508
 AliAnalysisTaskCDMeson.cxx:1509
 AliAnalysisTaskCDMeson.cxx:1510
 AliAnalysisTaskCDMeson.cxx:1511
 AliAnalysisTaskCDMeson.cxx:1512
 AliAnalysisTaskCDMeson.cxx:1513
 AliAnalysisTaskCDMeson.cxx:1514
 AliAnalysisTaskCDMeson.cxx:1515
 AliAnalysisTaskCDMeson.cxx:1516
 AliAnalysisTaskCDMeson.cxx:1517
 AliAnalysisTaskCDMeson.cxx:1518
 AliAnalysisTaskCDMeson.cxx:1519
 AliAnalysisTaskCDMeson.cxx:1520
 AliAnalysisTaskCDMeson.cxx:1521
 AliAnalysisTaskCDMeson.cxx:1522
 AliAnalysisTaskCDMeson.cxx:1523
 AliAnalysisTaskCDMeson.cxx:1524
 AliAnalysisTaskCDMeson.cxx:1525
 AliAnalysisTaskCDMeson.cxx:1526
 AliAnalysisTaskCDMeson.cxx:1527
 AliAnalysisTaskCDMeson.cxx:1528
 AliAnalysisTaskCDMeson.cxx:1529
 AliAnalysisTaskCDMeson.cxx:1530
 AliAnalysisTaskCDMeson.cxx:1531
 AliAnalysisTaskCDMeson.cxx:1532
 AliAnalysisTaskCDMeson.cxx:1533
 AliAnalysisTaskCDMeson.cxx:1534
 AliAnalysisTaskCDMeson.cxx:1535
 AliAnalysisTaskCDMeson.cxx:1536
 AliAnalysisTaskCDMeson.cxx:1537
 AliAnalysisTaskCDMeson.cxx:1538
 AliAnalysisTaskCDMeson.cxx:1539
 AliAnalysisTaskCDMeson.cxx:1540
 AliAnalysisTaskCDMeson.cxx:1541
 AliAnalysisTaskCDMeson.cxx:1542
 AliAnalysisTaskCDMeson.cxx:1543
 AliAnalysisTaskCDMeson.cxx:1544
 AliAnalysisTaskCDMeson.cxx:1545
 AliAnalysisTaskCDMeson.cxx:1546
 AliAnalysisTaskCDMeson.cxx:1547
 AliAnalysisTaskCDMeson.cxx:1548
 AliAnalysisTaskCDMeson.cxx:1549
 AliAnalysisTaskCDMeson.cxx:1550
 AliAnalysisTaskCDMeson.cxx:1551
 AliAnalysisTaskCDMeson.cxx:1552
 AliAnalysisTaskCDMeson.cxx:1553
 AliAnalysisTaskCDMeson.cxx:1554
 AliAnalysisTaskCDMeson.cxx:1555
 AliAnalysisTaskCDMeson.cxx:1556
 AliAnalysisTaskCDMeson.cxx:1557
 AliAnalysisTaskCDMeson.cxx:1558
 AliAnalysisTaskCDMeson.cxx:1559
 AliAnalysisTaskCDMeson.cxx:1560
 AliAnalysisTaskCDMeson.cxx:1561
 AliAnalysisTaskCDMeson.cxx:1562
 AliAnalysisTaskCDMeson.cxx:1563
 AliAnalysisTaskCDMeson.cxx:1564
 AliAnalysisTaskCDMeson.cxx:1565
 AliAnalysisTaskCDMeson.cxx:1566
 AliAnalysisTaskCDMeson.cxx:1567
 AliAnalysisTaskCDMeson.cxx:1568
 AliAnalysisTaskCDMeson.cxx:1569
 AliAnalysisTaskCDMeson.cxx:1570
 AliAnalysisTaskCDMeson.cxx:1571
 AliAnalysisTaskCDMeson.cxx:1572
 AliAnalysisTaskCDMeson.cxx:1573
 AliAnalysisTaskCDMeson.cxx:1574
 AliAnalysisTaskCDMeson.cxx:1575
 AliAnalysisTaskCDMeson.cxx:1576
 AliAnalysisTaskCDMeson.cxx:1577
 AliAnalysisTaskCDMeson.cxx:1578
 AliAnalysisTaskCDMeson.cxx:1579
 AliAnalysisTaskCDMeson.cxx:1580
 AliAnalysisTaskCDMeson.cxx:1581
 AliAnalysisTaskCDMeson.cxx:1582
 AliAnalysisTaskCDMeson.cxx:1583
 AliAnalysisTaskCDMeson.cxx:1584
 AliAnalysisTaskCDMeson.cxx:1585
 AliAnalysisTaskCDMeson.cxx:1586
 AliAnalysisTaskCDMeson.cxx:1587
 AliAnalysisTaskCDMeson.cxx:1588
 AliAnalysisTaskCDMeson.cxx:1589
 AliAnalysisTaskCDMeson.cxx:1590
 AliAnalysisTaskCDMeson.cxx:1591
 AliAnalysisTaskCDMeson.cxx:1592
 AliAnalysisTaskCDMeson.cxx:1593
 AliAnalysisTaskCDMeson.cxx:1594
 AliAnalysisTaskCDMeson.cxx:1595
 AliAnalysisTaskCDMeson.cxx:1596
 AliAnalysisTaskCDMeson.cxx:1597
 AliAnalysisTaskCDMeson.cxx:1598
 AliAnalysisTaskCDMeson.cxx:1599
 AliAnalysisTaskCDMeson.cxx:1600
 AliAnalysisTaskCDMeson.cxx:1601
 AliAnalysisTaskCDMeson.cxx:1602
 AliAnalysisTaskCDMeson.cxx:1603
 AliAnalysisTaskCDMeson.cxx:1604
 AliAnalysisTaskCDMeson.cxx:1605
 AliAnalysisTaskCDMeson.cxx:1606
 AliAnalysisTaskCDMeson.cxx:1607
 AliAnalysisTaskCDMeson.cxx:1608
 AliAnalysisTaskCDMeson.cxx:1609
 AliAnalysisTaskCDMeson.cxx:1610
 AliAnalysisTaskCDMeson.cxx:1611
 AliAnalysisTaskCDMeson.cxx:1612
 AliAnalysisTaskCDMeson.cxx:1613
 AliAnalysisTaskCDMeson.cxx:1614
 AliAnalysisTaskCDMeson.cxx:1615
 AliAnalysisTaskCDMeson.cxx:1616
 AliAnalysisTaskCDMeson.cxx:1617
 AliAnalysisTaskCDMeson.cxx:1618
 AliAnalysisTaskCDMeson.cxx:1619
 AliAnalysisTaskCDMeson.cxx:1620
 AliAnalysisTaskCDMeson.cxx:1621
 AliAnalysisTaskCDMeson.cxx:1622
 AliAnalysisTaskCDMeson.cxx:1623
 AliAnalysisTaskCDMeson.cxx:1624
 AliAnalysisTaskCDMeson.cxx:1625
 AliAnalysisTaskCDMeson.cxx:1626
 AliAnalysisTaskCDMeson.cxx:1627
 AliAnalysisTaskCDMeson.cxx:1628
 AliAnalysisTaskCDMeson.cxx:1629
 AliAnalysisTaskCDMeson.cxx:1630
 AliAnalysisTaskCDMeson.cxx:1631
 AliAnalysisTaskCDMeson.cxx:1632
 AliAnalysisTaskCDMeson.cxx:1633
 AliAnalysisTaskCDMeson.cxx:1634
 AliAnalysisTaskCDMeson.cxx:1635
 AliAnalysisTaskCDMeson.cxx:1636
 AliAnalysisTaskCDMeson.cxx:1637
 AliAnalysisTaskCDMeson.cxx:1638
 AliAnalysisTaskCDMeson.cxx:1639
 AliAnalysisTaskCDMeson.cxx:1640
 AliAnalysisTaskCDMeson.cxx:1641
 AliAnalysisTaskCDMeson.cxx:1642
 AliAnalysisTaskCDMeson.cxx:1643
 AliAnalysisTaskCDMeson.cxx:1644
 AliAnalysisTaskCDMeson.cxx:1645
 AliAnalysisTaskCDMeson.cxx:1646
 AliAnalysisTaskCDMeson.cxx:1647
 AliAnalysisTaskCDMeson.cxx:1648
 AliAnalysisTaskCDMeson.cxx:1649
 AliAnalysisTaskCDMeson.cxx:1650
 AliAnalysisTaskCDMeson.cxx:1651
 AliAnalysisTaskCDMeson.cxx:1652
 AliAnalysisTaskCDMeson.cxx:1653
 AliAnalysisTaskCDMeson.cxx:1654
 AliAnalysisTaskCDMeson.cxx:1655
 AliAnalysisTaskCDMeson.cxx:1656
 AliAnalysisTaskCDMeson.cxx:1657
 AliAnalysisTaskCDMeson.cxx:1658
 AliAnalysisTaskCDMeson.cxx:1659
 AliAnalysisTaskCDMeson.cxx:1660
 AliAnalysisTaskCDMeson.cxx:1661
 AliAnalysisTaskCDMeson.cxx:1662
 AliAnalysisTaskCDMeson.cxx:1663
 AliAnalysisTaskCDMeson.cxx:1664
 AliAnalysisTaskCDMeson.cxx:1665
 AliAnalysisTaskCDMeson.cxx:1666
 AliAnalysisTaskCDMeson.cxx:1667
 AliAnalysisTaskCDMeson.cxx:1668
 AliAnalysisTaskCDMeson.cxx:1669
 AliAnalysisTaskCDMeson.cxx:1670
 AliAnalysisTaskCDMeson.cxx:1671
 AliAnalysisTaskCDMeson.cxx:1672
 AliAnalysisTaskCDMeson.cxx:1673
 AliAnalysisTaskCDMeson.cxx:1674
 AliAnalysisTaskCDMeson.cxx:1675
 AliAnalysisTaskCDMeson.cxx:1676
 AliAnalysisTaskCDMeson.cxx:1677
 AliAnalysisTaskCDMeson.cxx:1678
 AliAnalysisTaskCDMeson.cxx:1679
 AliAnalysisTaskCDMeson.cxx:1680
 AliAnalysisTaskCDMeson.cxx:1681
 AliAnalysisTaskCDMeson.cxx:1682
 AliAnalysisTaskCDMeson.cxx:1683
 AliAnalysisTaskCDMeson.cxx:1684
 AliAnalysisTaskCDMeson.cxx:1685
 AliAnalysisTaskCDMeson.cxx:1686
 AliAnalysisTaskCDMeson.cxx:1687
 AliAnalysisTaskCDMeson.cxx:1688
 AliAnalysisTaskCDMeson.cxx:1689
 AliAnalysisTaskCDMeson.cxx:1690
 AliAnalysisTaskCDMeson.cxx:1691
 AliAnalysisTaskCDMeson.cxx:1692
 AliAnalysisTaskCDMeson.cxx:1693
 AliAnalysisTaskCDMeson.cxx:1694
 AliAnalysisTaskCDMeson.cxx:1695
 AliAnalysisTaskCDMeson.cxx:1696
 AliAnalysisTaskCDMeson.cxx:1697
 AliAnalysisTaskCDMeson.cxx:1698
 AliAnalysisTaskCDMeson.cxx:1699
 AliAnalysisTaskCDMeson.cxx:1700
 AliAnalysisTaskCDMeson.cxx:1701
 AliAnalysisTaskCDMeson.cxx:1702
 AliAnalysisTaskCDMeson.cxx:1703
 AliAnalysisTaskCDMeson.cxx:1704
 AliAnalysisTaskCDMeson.cxx:1705
 AliAnalysisTaskCDMeson.cxx:1706
 AliAnalysisTaskCDMeson.cxx:1707
 AliAnalysisTaskCDMeson.cxx:1708
 AliAnalysisTaskCDMeson.cxx:1709
 AliAnalysisTaskCDMeson.cxx:1710
 AliAnalysisTaskCDMeson.cxx:1711
 AliAnalysisTaskCDMeson.cxx:1712
 AliAnalysisTaskCDMeson.cxx:1713
 AliAnalysisTaskCDMeson.cxx:1714
 AliAnalysisTaskCDMeson.cxx:1715
 AliAnalysisTaskCDMeson.cxx:1716
 AliAnalysisTaskCDMeson.cxx:1717
 AliAnalysisTaskCDMeson.cxx:1718
 AliAnalysisTaskCDMeson.cxx:1719
 AliAnalysisTaskCDMeson.cxx:1720
 AliAnalysisTaskCDMeson.cxx:1721
 AliAnalysisTaskCDMeson.cxx:1722
 AliAnalysisTaskCDMeson.cxx:1723
 AliAnalysisTaskCDMeson.cxx:1724
 AliAnalysisTaskCDMeson.cxx:1725
 AliAnalysisTaskCDMeson.cxx:1726
 AliAnalysisTaskCDMeson.cxx:1727
 AliAnalysisTaskCDMeson.cxx:1728
 AliAnalysisTaskCDMeson.cxx:1729
 AliAnalysisTaskCDMeson.cxx:1730
 AliAnalysisTaskCDMeson.cxx:1731
 AliAnalysisTaskCDMeson.cxx:1732
 AliAnalysisTaskCDMeson.cxx:1733
 AliAnalysisTaskCDMeson.cxx:1734
 AliAnalysisTaskCDMeson.cxx:1735
 AliAnalysisTaskCDMeson.cxx:1736
 AliAnalysisTaskCDMeson.cxx:1737
 AliAnalysisTaskCDMeson.cxx:1738
 AliAnalysisTaskCDMeson.cxx:1739
 AliAnalysisTaskCDMeson.cxx:1740
 AliAnalysisTaskCDMeson.cxx:1741
 AliAnalysisTaskCDMeson.cxx:1742
 AliAnalysisTaskCDMeson.cxx:1743
 AliAnalysisTaskCDMeson.cxx:1744
 AliAnalysisTaskCDMeson.cxx:1745
 AliAnalysisTaskCDMeson.cxx:1746
 AliAnalysisTaskCDMeson.cxx:1747
 AliAnalysisTaskCDMeson.cxx:1748
 AliAnalysisTaskCDMeson.cxx:1749
 AliAnalysisTaskCDMeson.cxx:1750
 AliAnalysisTaskCDMeson.cxx:1751
 AliAnalysisTaskCDMeson.cxx:1752
 AliAnalysisTaskCDMeson.cxx:1753
 AliAnalysisTaskCDMeson.cxx:1754
 AliAnalysisTaskCDMeson.cxx:1755
 AliAnalysisTaskCDMeson.cxx:1756
 AliAnalysisTaskCDMeson.cxx:1757
 AliAnalysisTaskCDMeson.cxx:1758
 AliAnalysisTaskCDMeson.cxx:1759
 AliAnalysisTaskCDMeson.cxx:1760
 AliAnalysisTaskCDMeson.cxx:1761
 AliAnalysisTaskCDMeson.cxx:1762
 AliAnalysisTaskCDMeson.cxx:1763
 AliAnalysisTaskCDMeson.cxx:1764
 AliAnalysisTaskCDMeson.cxx:1765
 AliAnalysisTaskCDMeson.cxx:1766
 AliAnalysisTaskCDMeson.cxx:1767
 AliAnalysisTaskCDMeson.cxx:1768
 AliAnalysisTaskCDMeson.cxx:1769
 AliAnalysisTaskCDMeson.cxx:1770
 AliAnalysisTaskCDMeson.cxx:1771
 AliAnalysisTaskCDMeson.cxx:1772
 AliAnalysisTaskCDMeson.cxx:1773
 AliAnalysisTaskCDMeson.cxx:1774
 AliAnalysisTaskCDMeson.cxx:1775
 AliAnalysisTaskCDMeson.cxx:1776
 AliAnalysisTaskCDMeson.cxx:1777
 AliAnalysisTaskCDMeson.cxx:1778
 AliAnalysisTaskCDMeson.cxx:1779
 AliAnalysisTaskCDMeson.cxx:1780
 AliAnalysisTaskCDMeson.cxx:1781
 AliAnalysisTaskCDMeson.cxx:1782
 AliAnalysisTaskCDMeson.cxx:1783
 AliAnalysisTaskCDMeson.cxx:1784
 AliAnalysisTaskCDMeson.cxx:1785
 AliAnalysisTaskCDMeson.cxx:1786
 AliAnalysisTaskCDMeson.cxx:1787
 AliAnalysisTaskCDMeson.cxx:1788
 AliAnalysisTaskCDMeson.cxx:1789
 AliAnalysisTaskCDMeson.cxx:1790
 AliAnalysisTaskCDMeson.cxx:1791
 AliAnalysisTaskCDMeson.cxx:1792
 AliAnalysisTaskCDMeson.cxx:1793
 AliAnalysisTaskCDMeson.cxx:1794
 AliAnalysisTaskCDMeson.cxx:1795
 AliAnalysisTaskCDMeson.cxx:1796
 AliAnalysisTaskCDMeson.cxx:1797
 AliAnalysisTaskCDMeson.cxx:1798
 AliAnalysisTaskCDMeson.cxx:1799
 AliAnalysisTaskCDMeson.cxx:1800
 AliAnalysisTaskCDMeson.cxx:1801
 AliAnalysisTaskCDMeson.cxx:1802
 AliAnalysisTaskCDMeson.cxx:1803
 AliAnalysisTaskCDMeson.cxx:1804
 AliAnalysisTaskCDMeson.cxx:1805
 AliAnalysisTaskCDMeson.cxx:1806
 AliAnalysisTaskCDMeson.cxx:1807
 AliAnalysisTaskCDMeson.cxx:1808
 AliAnalysisTaskCDMeson.cxx:1809
 AliAnalysisTaskCDMeson.cxx:1810
 AliAnalysisTaskCDMeson.cxx:1811
 AliAnalysisTaskCDMeson.cxx:1812
 AliAnalysisTaskCDMeson.cxx:1813
 AliAnalysisTaskCDMeson.cxx:1814
 AliAnalysisTaskCDMeson.cxx:1815
 AliAnalysisTaskCDMeson.cxx:1816
 AliAnalysisTaskCDMeson.cxx:1817
 AliAnalysisTaskCDMeson.cxx:1818
 AliAnalysisTaskCDMeson.cxx:1819
 AliAnalysisTaskCDMeson.cxx:1820
 AliAnalysisTaskCDMeson.cxx:1821
 AliAnalysisTaskCDMeson.cxx:1822
 AliAnalysisTaskCDMeson.cxx:1823
 AliAnalysisTaskCDMeson.cxx:1824
 AliAnalysisTaskCDMeson.cxx:1825
 AliAnalysisTaskCDMeson.cxx:1826
 AliAnalysisTaskCDMeson.cxx:1827
 AliAnalysisTaskCDMeson.cxx:1828
 AliAnalysisTaskCDMeson.cxx:1829
 AliAnalysisTaskCDMeson.cxx:1830
 AliAnalysisTaskCDMeson.cxx:1831
 AliAnalysisTaskCDMeson.cxx:1832
 AliAnalysisTaskCDMeson.cxx:1833
 AliAnalysisTaskCDMeson.cxx:1834
 AliAnalysisTaskCDMeson.cxx:1835
 AliAnalysisTaskCDMeson.cxx:1836
 AliAnalysisTaskCDMeson.cxx:1837
 AliAnalysisTaskCDMeson.cxx:1838
 AliAnalysisTaskCDMeson.cxx:1839
 AliAnalysisTaskCDMeson.cxx:1840
 AliAnalysisTaskCDMeson.cxx:1841
 AliAnalysisTaskCDMeson.cxx:1842
 AliAnalysisTaskCDMeson.cxx:1843
 AliAnalysisTaskCDMeson.cxx:1844
 AliAnalysisTaskCDMeson.cxx:1845
 AliAnalysisTaskCDMeson.cxx:1846
 AliAnalysisTaskCDMeson.cxx:1847
 AliAnalysisTaskCDMeson.cxx:1848
 AliAnalysisTaskCDMeson.cxx:1849
 AliAnalysisTaskCDMeson.cxx:1850
 AliAnalysisTaskCDMeson.cxx:1851
 AliAnalysisTaskCDMeson.cxx:1852
 AliAnalysisTaskCDMeson.cxx:1853
 AliAnalysisTaskCDMeson.cxx:1854
 AliAnalysisTaskCDMeson.cxx:1855
 AliAnalysisTaskCDMeson.cxx:1856
 AliAnalysisTaskCDMeson.cxx:1857
 AliAnalysisTaskCDMeson.cxx:1858
 AliAnalysisTaskCDMeson.cxx:1859
 AliAnalysisTaskCDMeson.cxx:1860
 AliAnalysisTaskCDMeson.cxx:1861
 AliAnalysisTaskCDMeson.cxx:1862
 AliAnalysisTaskCDMeson.cxx:1863
 AliAnalysisTaskCDMeson.cxx:1864
 AliAnalysisTaskCDMeson.cxx:1865
 AliAnalysisTaskCDMeson.cxx:1866
 AliAnalysisTaskCDMeson.cxx:1867
 AliAnalysisTaskCDMeson.cxx:1868
 AliAnalysisTaskCDMeson.cxx:1869
 AliAnalysisTaskCDMeson.cxx:1870
 AliAnalysisTaskCDMeson.cxx:1871
 AliAnalysisTaskCDMeson.cxx:1872
 AliAnalysisTaskCDMeson.cxx:1873
 AliAnalysisTaskCDMeson.cxx:1874
 AliAnalysisTaskCDMeson.cxx:1875
 AliAnalysisTaskCDMeson.cxx:1876
 AliAnalysisTaskCDMeson.cxx:1877
 AliAnalysisTaskCDMeson.cxx:1878
 AliAnalysisTaskCDMeson.cxx:1879
 AliAnalysisTaskCDMeson.cxx:1880
 AliAnalysisTaskCDMeson.cxx:1881
 AliAnalysisTaskCDMeson.cxx:1882
 AliAnalysisTaskCDMeson.cxx:1883
 AliAnalysisTaskCDMeson.cxx:1884
 AliAnalysisTaskCDMeson.cxx:1885
 AliAnalysisTaskCDMeson.cxx:1886
 AliAnalysisTaskCDMeson.cxx:1887
 AliAnalysisTaskCDMeson.cxx:1888
 AliAnalysisTaskCDMeson.cxx:1889
 AliAnalysisTaskCDMeson.cxx:1890
 AliAnalysisTaskCDMeson.cxx:1891
 AliAnalysisTaskCDMeson.cxx:1892
 AliAnalysisTaskCDMeson.cxx:1893
 AliAnalysisTaskCDMeson.cxx:1894
 AliAnalysisTaskCDMeson.cxx:1895
 AliAnalysisTaskCDMeson.cxx:1896
 AliAnalysisTaskCDMeson.cxx:1897
 AliAnalysisTaskCDMeson.cxx:1898
 AliAnalysisTaskCDMeson.cxx:1899
 AliAnalysisTaskCDMeson.cxx:1900
 AliAnalysisTaskCDMeson.cxx:1901
 AliAnalysisTaskCDMeson.cxx:1902
 AliAnalysisTaskCDMeson.cxx:1903
 AliAnalysisTaskCDMeson.cxx:1904
 AliAnalysisTaskCDMeson.cxx:1905
 AliAnalysisTaskCDMeson.cxx:1906
 AliAnalysisTaskCDMeson.cxx:1907
 AliAnalysisTaskCDMeson.cxx:1908
 AliAnalysisTaskCDMeson.cxx:1909
 AliAnalysisTaskCDMeson.cxx:1910
 AliAnalysisTaskCDMeson.cxx:1911
 AliAnalysisTaskCDMeson.cxx:1912
 AliAnalysisTaskCDMeson.cxx:1913
 AliAnalysisTaskCDMeson.cxx:1914
 AliAnalysisTaskCDMeson.cxx:1915
 AliAnalysisTaskCDMeson.cxx:1916
 AliAnalysisTaskCDMeson.cxx:1917
 AliAnalysisTaskCDMeson.cxx:1918
 AliAnalysisTaskCDMeson.cxx:1919
 AliAnalysisTaskCDMeson.cxx:1920
 AliAnalysisTaskCDMeson.cxx:1921
 AliAnalysisTaskCDMeson.cxx:1922
 AliAnalysisTaskCDMeson.cxx:1923
 AliAnalysisTaskCDMeson.cxx:1924
 AliAnalysisTaskCDMeson.cxx:1925
 AliAnalysisTaskCDMeson.cxx:1926
 AliAnalysisTaskCDMeson.cxx:1927
 AliAnalysisTaskCDMeson.cxx:1928
 AliAnalysisTaskCDMeson.cxx:1929
 AliAnalysisTaskCDMeson.cxx:1930
 AliAnalysisTaskCDMeson.cxx:1931
 AliAnalysisTaskCDMeson.cxx:1932
 AliAnalysisTaskCDMeson.cxx:1933
 AliAnalysisTaskCDMeson.cxx:1934
 AliAnalysisTaskCDMeson.cxx:1935
 AliAnalysisTaskCDMeson.cxx:1936
 AliAnalysisTaskCDMeson.cxx:1937
 AliAnalysisTaskCDMeson.cxx:1938
 AliAnalysisTaskCDMeson.cxx:1939
 AliAnalysisTaskCDMeson.cxx:1940
 AliAnalysisTaskCDMeson.cxx:1941
 AliAnalysisTaskCDMeson.cxx:1942
 AliAnalysisTaskCDMeson.cxx:1943
 AliAnalysisTaskCDMeson.cxx:1944
 AliAnalysisTaskCDMeson.cxx:1945
 AliAnalysisTaskCDMeson.cxx:1946
 AliAnalysisTaskCDMeson.cxx:1947
 AliAnalysisTaskCDMeson.cxx:1948
 AliAnalysisTaskCDMeson.cxx:1949
 AliAnalysisTaskCDMeson.cxx:1950
 AliAnalysisTaskCDMeson.cxx:1951
 AliAnalysisTaskCDMeson.cxx:1952
 AliAnalysisTaskCDMeson.cxx:1953
 AliAnalysisTaskCDMeson.cxx:1954
 AliAnalysisTaskCDMeson.cxx:1955
 AliAnalysisTaskCDMeson.cxx:1956
 AliAnalysisTaskCDMeson.cxx:1957
 AliAnalysisTaskCDMeson.cxx:1958
 AliAnalysisTaskCDMeson.cxx:1959
 AliAnalysisTaskCDMeson.cxx:1960
 AliAnalysisTaskCDMeson.cxx:1961
 AliAnalysisTaskCDMeson.cxx:1962
 AliAnalysisTaskCDMeson.cxx:1963
 AliAnalysisTaskCDMeson.cxx:1964
 AliAnalysisTaskCDMeson.cxx:1965
 AliAnalysisTaskCDMeson.cxx:1966
 AliAnalysisTaskCDMeson.cxx:1967
 AliAnalysisTaskCDMeson.cxx:1968
 AliAnalysisTaskCDMeson.cxx:1969
 AliAnalysisTaskCDMeson.cxx:1970
 AliAnalysisTaskCDMeson.cxx:1971
 AliAnalysisTaskCDMeson.cxx:1972
 AliAnalysisTaskCDMeson.cxx:1973
 AliAnalysisTaskCDMeson.cxx:1974
 AliAnalysisTaskCDMeson.cxx:1975
 AliAnalysisTaskCDMeson.cxx:1976
 AliAnalysisTaskCDMeson.cxx:1977
 AliAnalysisTaskCDMeson.cxx:1978
 AliAnalysisTaskCDMeson.cxx:1979
 AliAnalysisTaskCDMeson.cxx:1980
 AliAnalysisTaskCDMeson.cxx:1981
 AliAnalysisTaskCDMeson.cxx:1982
 AliAnalysisTaskCDMeson.cxx:1983
 AliAnalysisTaskCDMeson.cxx:1984
 AliAnalysisTaskCDMeson.cxx:1985
 AliAnalysisTaskCDMeson.cxx:1986
 AliAnalysisTaskCDMeson.cxx:1987
 AliAnalysisTaskCDMeson.cxx:1988
 AliAnalysisTaskCDMeson.cxx:1989
 AliAnalysisTaskCDMeson.cxx:1990
 AliAnalysisTaskCDMeson.cxx:1991
 AliAnalysisTaskCDMeson.cxx:1992
 AliAnalysisTaskCDMeson.cxx:1993
 AliAnalysisTaskCDMeson.cxx:1994
 AliAnalysisTaskCDMeson.cxx:1995
 AliAnalysisTaskCDMeson.cxx:1996
 AliAnalysisTaskCDMeson.cxx:1997
 AliAnalysisTaskCDMeson.cxx:1998
 AliAnalysisTaskCDMeson.cxx:1999
 AliAnalysisTaskCDMeson.cxx:2000
 AliAnalysisTaskCDMeson.cxx:2001
 AliAnalysisTaskCDMeson.cxx:2002
 AliAnalysisTaskCDMeson.cxx:2003
 AliAnalysisTaskCDMeson.cxx:2004
 AliAnalysisTaskCDMeson.cxx:2005
 AliAnalysisTaskCDMeson.cxx:2006
 AliAnalysisTaskCDMeson.cxx:2007
 AliAnalysisTaskCDMeson.cxx:2008
 AliAnalysisTaskCDMeson.cxx:2009
 AliAnalysisTaskCDMeson.cxx:2010
 AliAnalysisTaskCDMeson.cxx:2011
 AliAnalysisTaskCDMeson.cxx:2012
 AliAnalysisTaskCDMeson.cxx:2013
 AliAnalysisTaskCDMeson.cxx:2014
 AliAnalysisTaskCDMeson.cxx:2015
 AliAnalysisTaskCDMeson.cxx:2016
 AliAnalysisTaskCDMeson.cxx:2017
 AliAnalysisTaskCDMeson.cxx:2018
 AliAnalysisTaskCDMeson.cxx:2019
 AliAnalysisTaskCDMeson.cxx:2020
 AliAnalysisTaskCDMeson.cxx:2021
 AliAnalysisTaskCDMeson.cxx:2022
 AliAnalysisTaskCDMeson.cxx:2023
 AliAnalysisTaskCDMeson.cxx:2024
 AliAnalysisTaskCDMeson.cxx:2025
 AliAnalysisTaskCDMeson.cxx:2026
 AliAnalysisTaskCDMeson.cxx:2027
 AliAnalysisTaskCDMeson.cxx:2028
 AliAnalysisTaskCDMeson.cxx:2029
 AliAnalysisTaskCDMeson.cxx:2030
 AliAnalysisTaskCDMeson.cxx:2031
 AliAnalysisTaskCDMeson.cxx:2032
 AliAnalysisTaskCDMeson.cxx:2033
 AliAnalysisTaskCDMeson.cxx:2034
 AliAnalysisTaskCDMeson.cxx:2035
 AliAnalysisTaskCDMeson.cxx:2036
 AliAnalysisTaskCDMeson.cxx:2037
 AliAnalysisTaskCDMeson.cxx:2038
 AliAnalysisTaskCDMeson.cxx:2039
 AliAnalysisTaskCDMeson.cxx:2040
 AliAnalysisTaskCDMeson.cxx:2041
 AliAnalysisTaskCDMeson.cxx:2042
 AliAnalysisTaskCDMeson.cxx:2043
 AliAnalysisTaskCDMeson.cxx:2044
 AliAnalysisTaskCDMeson.cxx:2045
 AliAnalysisTaskCDMeson.cxx:2046
 AliAnalysisTaskCDMeson.cxx:2047
 AliAnalysisTaskCDMeson.cxx:2048
 AliAnalysisTaskCDMeson.cxx:2049
 AliAnalysisTaskCDMeson.cxx:2050
 AliAnalysisTaskCDMeson.cxx:2051
 AliAnalysisTaskCDMeson.cxx:2052
 AliAnalysisTaskCDMeson.cxx:2053
 AliAnalysisTaskCDMeson.cxx:2054
 AliAnalysisTaskCDMeson.cxx:2055
 AliAnalysisTaskCDMeson.cxx:2056
 AliAnalysisTaskCDMeson.cxx:2057
 AliAnalysisTaskCDMeson.cxx:2058
 AliAnalysisTaskCDMeson.cxx:2059
 AliAnalysisTaskCDMeson.cxx:2060
 AliAnalysisTaskCDMeson.cxx:2061
 AliAnalysisTaskCDMeson.cxx:2062
 AliAnalysisTaskCDMeson.cxx:2063
 AliAnalysisTaskCDMeson.cxx:2064
 AliAnalysisTaskCDMeson.cxx:2065
 AliAnalysisTaskCDMeson.cxx:2066
 AliAnalysisTaskCDMeson.cxx:2067
 AliAnalysisTaskCDMeson.cxx:2068
 AliAnalysisTaskCDMeson.cxx:2069
 AliAnalysisTaskCDMeson.cxx:2070
 AliAnalysisTaskCDMeson.cxx:2071
 AliAnalysisTaskCDMeson.cxx:2072
 AliAnalysisTaskCDMeson.cxx:2073
 AliAnalysisTaskCDMeson.cxx:2074
 AliAnalysisTaskCDMeson.cxx:2075
 AliAnalysisTaskCDMeson.cxx:2076
 AliAnalysisTaskCDMeson.cxx:2077
 AliAnalysisTaskCDMeson.cxx:2078
 AliAnalysisTaskCDMeson.cxx:2079
 AliAnalysisTaskCDMeson.cxx:2080
 AliAnalysisTaskCDMeson.cxx:2081
 AliAnalysisTaskCDMeson.cxx:2082
 AliAnalysisTaskCDMeson.cxx:2083
 AliAnalysisTaskCDMeson.cxx:2084
 AliAnalysisTaskCDMeson.cxx:2085
 AliAnalysisTaskCDMeson.cxx:2086
 AliAnalysisTaskCDMeson.cxx:2087
 AliAnalysisTaskCDMeson.cxx:2088
 AliAnalysisTaskCDMeson.cxx:2089
 AliAnalysisTaskCDMeson.cxx:2090
 AliAnalysisTaskCDMeson.cxx:2091
 AliAnalysisTaskCDMeson.cxx:2092
 AliAnalysisTaskCDMeson.cxx:2093
 AliAnalysisTaskCDMeson.cxx:2094
 AliAnalysisTaskCDMeson.cxx:2095
 AliAnalysisTaskCDMeson.cxx:2096
 AliAnalysisTaskCDMeson.cxx:2097
 AliAnalysisTaskCDMeson.cxx:2098
 AliAnalysisTaskCDMeson.cxx:2099
 AliAnalysisTaskCDMeson.cxx:2100
 AliAnalysisTaskCDMeson.cxx:2101
 AliAnalysisTaskCDMeson.cxx:2102
 AliAnalysisTaskCDMeson.cxx:2103
 AliAnalysisTaskCDMeson.cxx:2104
 AliAnalysisTaskCDMeson.cxx:2105
 AliAnalysisTaskCDMeson.cxx:2106
 AliAnalysisTaskCDMeson.cxx:2107
 AliAnalysisTaskCDMeson.cxx:2108
 AliAnalysisTaskCDMeson.cxx:2109
 AliAnalysisTaskCDMeson.cxx:2110
 AliAnalysisTaskCDMeson.cxx:2111
 AliAnalysisTaskCDMeson.cxx:2112
 AliAnalysisTaskCDMeson.cxx:2113
 AliAnalysisTaskCDMeson.cxx:2114
 AliAnalysisTaskCDMeson.cxx:2115
 AliAnalysisTaskCDMeson.cxx:2116
 AliAnalysisTaskCDMeson.cxx:2117
 AliAnalysisTaskCDMeson.cxx:2118
 AliAnalysisTaskCDMeson.cxx:2119
 AliAnalysisTaskCDMeson.cxx:2120
 AliAnalysisTaskCDMeson.cxx:2121
 AliAnalysisTaskCDMeson.cxx:2122
 AliAnalysisTaskCDMeson.cxx:2123
 AliAnalysisTaskCDMeson.cxx:2124
 AliAnalysisTaskCDMeson.cxx:2125
 AliAnalysisTaskCDMeson.cxx:2126
 AliAnalysisTaskCDMeson.cxx:2127
 AliAnalysisTaskCDMeson.cxx:2128
 AliAnalysisTaskCDMeson.cxx:2129
 AliAnalysisTaskCDMeson.cxx:2130
 AliAnalysisTaskCDMeson.cxx:2131
 AliAnalysisTaskCDMeson.cxx:2132
 AliAnalysisTaskCDMeson.cxx:2133
 AliAnalysisTaskCDMeson.cxx:2134
 AliAnalysisTaskCDMeson.cxx:2135
 AliAnalysisTaskCDMeson.cxx:2136
 AliAnalysisTaskCDMeson.cxx:2137
 AliAnalysisTaskCDMeson.cxx:2138
 AliAnalysisTaskCDMeson.cxx:2139
 AliAnalysisTaskCDMeson.cxx:2140
 AliAnalysisTaskCDMeson.cxx:2141
 AliAnalysisTaskCDMeson.cxx:2142
 AliAnalysisTaskCDMeson.cxx:2143
 AliAnalysisTaskCDMeson.cxx:2144
 AliAnalysisTaskCDMeson.cxx:2145
 AliAnalysisTaskCDMeson.cxx:2146
 AliAnalysisTaskCDMeson.cxx:2147
 AliAnalysisTaskCDMeson.cxx:2148
 AliAnalysisTaskCDMeson.cxx:2149
 AliAnalysisTaskCDMeson.cxx:2150
 AliAnalysisTaskCDMeson.cxx:2151
 AliAnalysisTaskCDMeson.cxx:2152
 AliAnalysisTaskCDMeson.cxx:2153