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

/// Compute the number of Muons tracks as a function of the SPD tracklets multiplicity
/// Compare with Monte Carlo tracks
/// Author Matthieu LENHARDT - SUBATECH, Nantes


//PWG3/muon includes
#include "AliAnalysisTaskMuonCollisionMultiplicity.h"

//STEER includes
#include "AliAODEvent.h"
#include "AliAODVertex.h"
#include "AliESDEvent.h"
#include "AliESDVertex.h"
#include "AliAODTrack.h"
#include "AliESDMuonTrack.h"
#include "AliAODTracklets.h"
#include "AliAODInputHandler.h"
#include "AliAnalysisManager.h"
#include "AliAODDimuon.h"
#include "AliMCEvent.h"
#include "AliMCParticle.h"
#include "AliMultiplicity.h"

//ROOT includes
#include <TH2D.h>
#include <THnSparse.h>
#include <TChain.h>
#include <TList.h>
#include <TArrayD.h>
#include <Riostream.h>
#include <TParticle.h>
#include <TLorentzVector.h>

//___________________________________________________
AliAnalysisTaskMuonCollisionMultiplicity::AliAnalysisTaskMuonCollisionMultiplicity()
  :
  AliAnalysisTaskSE(),
  fIsInit(kFALSE),
  fAOD(0x0),
  fESD(0x0),
  fEtaCut(0),
  fTrackletMultiplicity(0),
  fTriggerList(0),
  fSingleMuonList(0),
  fDimuonList(0),
  fMonteCarloList(0)
{
  ///Default Constructor
}


//___________________________________________________
AliAnalysisTaskMuonCollisionMultiplicity::AliAnalysisTaskMuonCollisionMultiplicity(const AliAnalysisTaskMuonCollisionMultiplicity& src)
  :
  AliAnalysisTaskSE(),
  fIsInit(kFALSE),
  fAOD(0x0),
  fESD(0x0),
  fEtaCut(0),
  fTrackletMultiplicity(0),
  fTriggerList(0),
  fSingleMuonList(0),
  fDimuonList(0),
  fMonteCarloList(0)
{
  /// copy ctor
  src.Copy(*this);

}

//___________________________________________________
AliAnalysisTaskMuonCollisionMultiplicity& AliAnalysisTaskMuonCollisionMultiplicity::operator=(const AliAnalysisTaskMuonCollisionMultiplicity& src)
{
  /// assignement operator
  if ( this != &src ) 
  {
    src.Copy(*this);
  }
  return *this;
}




//___________________________________________________
AliAnalysisTaskMuonCollisionMultiplicity::AliAnalysisTaskMuonCollisionMultiplicity(const Char_t *name)
  :
  AliAnalysisTaskSE(name),
  fIsInit(kFALSE),
  fAOD(0x0),
  fESD(0x0),
  fEtaCut(0),
  fTrackletMultiplicity(0),
  fTriggerList(0),
  fSingleMuonList(0),
  fDimuonList(0),
  fMonteCarloList(0)
{
  // Define Inputs and outputs
  //DefineInput(0, TChain::Class());
  //DefineInput(1, TChain::Class());
  DefineOutput(0, TList::Class());
  DefineOutput(1, TList::Class());
  DefineOutput(2, TList::Class());
  DefineOutput(3, TList::Class());
  DefineOutput(4, TList::Class());
}


//______________________________________________________________________________
AliAnalysisTaskMuonCollisionMultiplicity::~AliAnalysisTaskMuonCollisionMultiplicity()
{
// Destructor.
  delete fAOD;
  delete fESD;
  delete fTriggerList;
  delete fSingleMuonList;
  delete fDimuonList;
  delete fMonteCarloList;
}



//________________________________________________________________________
void AliAnalysisTaskMuonCollisionMultiplicity::UserCreateOutputObjects()
{
  // Initialise the object, and open the file.
  if (!fIsInit)
    Init();
  OpenFile(0);
}




//________________________________________________________________________
void AliAnalysisTaskMuonCollisionMultiplicity::UserExec(Option_t */*option*/)
{
  // Execute the analysis task
  fAOD = 0x0;
  fESD = 0x0;

  if (!fIsInit)
    Init();

  fAOD = dynamic_cast<AliAODEvent *> (InputEvent());
  if (!fAOD)
    fESD = dynamic_cast<AliESDEvent *> (InputEvent());
  
 
  if (fAOD)
    CheckEventAOD();

  if (fESD)
    CheckEventESD();

  PostData(1, fTriggerList);
  PostData(2, fSingleMuonList);
  PostData(3, fDimuonList);
  PostData(4, fMonteCarloList);
}



//________________________________________________________________________
void AliAnalysisTaskMuonCollisionMultiplicity::NotifyRun()
{
  // Notify run
}


//________________________________________________________________________
void AliAnalysisTaskMuonCollisionMultiplicity::FinishTaskOutput()
{
  // Finish the task
}


//__________________________________________________________________________
Bool_t AliAnalysisTaskMuonCollisionMultiplicity::CheckEventAOD()
{
  // Check if the AOD event pass the cuts
  AliAODVertex *vertex = fAOD->GetPrimaryVertex();
  
  if (!vertex)
     return kFALSE;

  if (vertex->GetNContributors() < 1)
    return kFALSE;
  
  ComputeMultiplicity();
  
  // Variables use to determine the type of trigger :
  // 0 for minimum bias : CINT1B, CINT1-B or MB1
  // 1 for muon events : CMUS1B, CMUS1-B or MULow
  // -1 for everything else
  TString trigger = fAOD->GetFiredTriggerClasses();
  Int_t triggerClass = -1; 

  if (trigger.Contains("CINT1B") || trigger.Contains("CINT1-B") || trigger.Contains("MB1"))
    triggerClass = 0;

  if (trigger.Contains("CMUS1B") || trigger.Contains("CMUS1-B") || trigger.Contains("MULow"))
    triggerClass = 1;

  if (triggerClass >= 0)
    FillHistosAOD(triggerClass);
  
  return kTRUE;
}



//__________________________________________________________________________
Bool_t AliAnalysisTaskMuonCollisionMultiplicity::CheckEventESD()
{
  // Check if the ESD event pass the cuts
  const AliESDVertex *vertex = fESD->GetPrimaryVertex();
  
  if (!vertex)
    return kFALSE;

  if (vertex->GetNContributors() < 1)
    return kFALSE;

  ComputeMultiplicity();

  // Variables use to determine the type of trigger :
  // 0 for minimum bias : CINT1B, CINT1-B or MB1
  // 1 for muon events : CMUS1B, CMUS1-B or MULow
  // -1 for everything else
  TString trigger = fESD->GetFiredTriggerClasses();
  Int_t triggerClass = -1; 

  if (trigger.Contains("CINT1B") || trigger.Contains("CINT1-B") || trigger.Contains("MB1") || trigger.Contains("CMBAC-B") || trigger.Contains("CMBACS2-B"))
    triggerClass = 0;

  if (trigger.Contains("CMUS1B") || trigger.Contains("CMUS1-B") || trigger.Contains("MULow"))
    triggerClass = 1;

  if (triggerClass >= 0)
    FillHistosESD(triggerClass);

  if (fMCEvent)
    FillHistosMC();

  return kTRUE;
}




//________________________________________________________________________
void AliAnalysisTaskMuonCollisionMultiplicity::FillHistosAOD(Int_t triggerClass)
{
  // Fill histos for AOD events
  Int_t nTracks = fAOD->GetNumberOfTracks();
  Int_t nDimuons = fAOD->GetNDimuons();
  
  // Fill histos
  Double_t vertexPosition = fAOD->GetPrimaryVertex()->GetZ();
  Double_t pileUp = !(fAOD->IsPileupFromSPD());
  
  Double_t valuesTrigger[3] = {static_cast<Double_t>(fTrackletMultiplicity), vertexPosition, pileUp};
  ((THnSparseD *)fTriggerList->At(triggerClass))->Fill(valuesTrigger);
  

  // Loop on the muons tracks
  for (Int_t ii = 0; ii < nTracks; ii++){
    AliAODTrack * aodtrack = dynamic_cast<AliAODTrack*>(fAOD->GetTrack(ii));
    if(!aodtrack) AliFatal("Not a standard AOD");
    if (IsUsableMuon(aodtrack))
      {
	Double_t matchTrigger = aodtrack->GetMatchTrigger();
	if (matchTrigger > 1.0)
	  matchTrigger = 1.0;                                            // We don't care what type of trigger it is (low or high pT)
	
	Double_t thetaAbs = (180.0 / TMath::Pi()) * TMath::ATan(aodtrack->GetRAtAbsorberEnd()/505.0);
	Double_t eta = aodtrack->Eta();
	Double_t p = aodtrack->P();
	Double_t pT = aodtrack->Pt();
	// For the p used in the pDCA, we want the mean between the p before the muon go through the absorber (p corrected) and after (p uncorrected)
	// However p uncorrected is not saved in the AODs
	// Instead we define p uncorrected as p corrected minus the mean p lost when a muon go through the absorber
	// p lost for muons (it depends of theta_abs) :
	// 2.0 < theta_abs < 3.0 ---> 2.98 GeV
	// 3.0 < theta_abs < 10.0 --->	2.4 GeV
	// No correction applied otherwise
	Double_t pDCA = p*aodtrack->DCA();
	if (2.0 < thetaAbs && thetaAbs < 3.0)
	  pDCA = (p-2.98/2.0) * aodtrack->DCA();
	if (3.0 < thetaAbs && thetaAbs < 10.0)
	  pDCA = (p-2.4/2.0) * aodtrack->DCA();
	
	Double_t valuesMuon[9] = {static_cast<Double_t>(fTrackletMultiplicity), vertexPosition, pileUp, matchTrigger, thetaAbs, eta, pDCA, static_cast<Double_t>(p), static_cast<Double_t>(pT)};
	((THnSparseD *)fSingleMuonList->At(triggerClass))->Fill(valuesMuon);
      }
  }
  // Loop on Dimuons
  for (Int_t ii = 0; ii < nDimuons; ii++)
    if (fAOD->GetDimuon(ii)->Charge() == 0.0)
      if (IsUsableMuon(fAOD->GetDimuon(ii)->GetMu(0)))
        if (IsUsableMuon(fAOD->GetDimuon(ii)->GetMu(1)))
	  {
	    Double_t matchTrigger1 = fAOD->GetDimuon(ii)->GetMu(0)->GetMatchTrigger();
	    if (matchTrigger1 > 0.0)
	      matchTrigger1 = 1.0;
	    Double_t matchTrigger2 = fAOD->GetDimuon(ii)->GetMu(1)->GetMatchTrigger();
	    if (matchTrigger2 > 0.0)
	      matchTrigger2 = 1.0;
	    
	    Double_t nMatchTrigger = matchTrigger1 + matchTrigger2;
	    
	    Double_t thetaAbs1 = (180.0 / TMath::Pi()) * TMath::ATan(fAOD->GetDimuon(ii)->GetMu(0)->GetRAtAbsorberEnd()/505.0);
	    Double_t thetaAbs2 = (180.0 / TMath::Pi()) * TMath::ATan(fAOD->GetDimuon(ii)->GetMu(1)->GetRAtAbsorberEnd()/505.0);
	    Double_t eta1 = fAOD->GetDimuon(ii)->GetMu(0)->Eta();
	    Double_t eta2 = fAOD->GetDimuon(ii)->GetMu(1)->Eta();
	    
	    Double_t p1 = fAOD->GetDimuon(ii)->GetMu(0)->P();
	    Double_t p2 = fAOD->GetDimuon(ii)->GetMu(1)->P();
	    // See the explanation on how the pDCA is computed in the single muon loop
	    Double_t pDCA1 = p1*fAOD->GetDimuon(ii)->GetMu(0)->DCA();
	    if (2.0 < thetaAbs1 && thetaAbs1 < 3.0)
	      pDCA1 = (p1-2.98/2.0) * fAOD->GetDimuon(ii)->GetMu(0)->DCA();
	    if (3.0 < thetaAbs1 && thetaAbs1 < 10.0)
	      pDCA1 = (p1-2.4/2.0) * fAOD->GetDimuon(ii)->GetMu(0)->DCA();
	    Double_t pDCA2 = p2*fAOD->GetDimuon(ii)->GetMu(1)->DCA();
	    if (2.0 < thetaAbs2 && thetaAbs2 < 3.0)
	      pDCA2 = (p2-2.98/2.0) * fAOD->GetDimuon(ii)->GetMu(1)->DCA();
	    if (3.0 < thetaAbs2 && thetaAbs2 < 10.0)
	      pDCA2 = (p2-2.4/2.0) * fAOD->GetDimuon(ii)->GetMu(1)->DCA();
	    
	    Double_t y = fAOD->GetDimuon(ii)->Y();
	    Double_t p = fAOD->GetDimuon(ii)->P();
	    Double_t pT = fAOD->GetDimuon(ii)->Pt();
	    Double_t M = fAOD->GetDimuon(ii)->M();
	    
	    Double_t valuesDimuon[18] = {static_cast<Double_t>(fTrackletMultiplicity), vertexPosition, pileUp, matchTrigger1, matchTrigger2, static_cast<Double_t>(nMatchTrigger), thetaAbs1, thetaAbs2,
					 eta1, eta2, pDCA1, pDCA2, static_cast<Double_t>(p1), p2, y, p, pT, M};
	    ((THnSparseD *)fDimuonList->At(triggerClass))->Fill(valuesDimuon);
	  }
}



void AliAnalysisTaskMuonCollisionMultiplicity::FillHistosESD(Int_t triggerClass)
{
  // Fill the histos for ESD events 
  Int_t nTracks = fESD->GetNumberOfMuonTracks();

  Double_t vertexPosition = fESD->GetPrimaryVertex()->GetZ();
  Double_t pileUp = !(fESD->IsPileupFromSPD());
  
  Double_t valuesTrigger[3] = {static_cast<Double_t>(fTrackletMultiplicity), vertexPosition, pileUp};
  ((THnSparseD *)fTriggerList->At(triggerClass))->Fill(valuesTrigger);
  

  // Loop on the muons tracks
  for (Int_t ii = 0; ii < nTracks; ii++)
    if (IsUsableMuon(fESD->GetMuonTrack(ii)))
      {
	Double_t matchTrigger1 = fESD->GetMuonTrack(ii)->GetMatchTrigger();
	if (matchTrigger1 > 1.0)
	  matchTrigger1 = 1.0;                                            // We don't care what type of trigger it is (low or high pT)
	
	Double_t thetaAbs1 = (180.0 / TMath::Pi()) * TMath::ATan(fESD->GetMuonTrack(ii)->GetRAtAbsorberEnd()/505.0);
	Double_t eta1 = fESD->GetMuonTrack(ii)->Eta();
	Double_t p1 = fESD->GetMuonTrack(ii)->P();
	Double_t pT1 = fESD->GetMuonTrack(ii)->Pt();

	// For the p used in the pDCA, we want the mean between the p before the muon go through the absorber (p corrected) and after (p uncorrected)
	// These are respectively AliESDMuonTrack::P() and AliESDMuonTrack::PUncorrected()
	Double_t pUncor1 = fESD->GetMuonTrack(ii)->PUncorrected();
	Double_t pDCA1 = (p1+pUncor1) * fESD->GetMuonTrack(ii)->GetDCA() / 2.0;
	
	Double_t valuesMuon[9] = {static_cast<Double_t>(fTrackletMultiplicity), vertexPosition, pileUp, matchTrigger1, thetaAbs1, eta1, pDCA1, p1, pT1};
	((THnSparseD *)fSingleMuonList->At(triggerClass))->Fill(valuesMuon);
	
	// Second loop on muons, to fill the dimuons histos
	for (Int_t jj = ii+1; jj < nTracks; jj++)
	  if (IsUsableMuon(fESD->GetMuonTrack(jj)))
	    if (fESD->GetMuonTrack(ii)->Charge() + fESD->GetMuonTrack(jj)->Charge() == 0.0)
	      {
		Double_t matchTrigger2 = fESD->GetMuonTrack(jj)->GetMatchTrigger();
		if (matchTrigger2 > 0.0)
		  matchTrigger2 = 1.0;
		
		Double_t nMatchTrigger = matchTrigger1 + matchTrigger2;

		Double_t thetaAbs2 = (180.0 / TMath::Pi()) * TMath::ATan(fESD->GetMuonTrack(jj)->GetRAtAbsorberEnd()/505.0);
		Double_t eta2 = fESD->GetMuonTrack(jj)->Eta();
		Double_t p2 = fESD->GetMuonTrack(jj)->P();

		// For the p used in the pDCA, we want the mean between the p before the muon go through the absorber (p corrected) and after (p uncorrected)
		// These are respectively AliESDMuonTrack::P() and AliESDMuonTrack::PUncorrected()
		Double_t pUncor2 = fESD->GetMuonTrack(jj)->PUncorrected();
		Double_t pDCA2 = (p2+pUncor2) * fESD->GetMuonTrack(jj)->GetDCA() / 2.0;
		
		// To compute the p, pT and M of the dimuon, we need a TLorentz vector of the dimuon
		Double_t E = fESD->GetMuonTrack(ii)->E() + fESD->GetMuonTrack(jj)->E();
		Double_t pX = fESD->GetMuonTrack(ii)->Px() + fESD->GetMuonTrack(jj)->Px();
		Double_t pY = fESD->GetMuonTrack(ii)->Py() + fESD->GetMuonTrack(jj)->Py();
		Double_t pZ = fESD->GetMuonTrack(ii)->Pz() + fESD->GetMuonTrack(jj)->Pz();
		TLorentzVector *dimuonVector = new TLorentzVector(pX, pY, pZ, E);
		dimuonVector->SetPxPyPzE(pX, pY, pZ, E);
		
		Double_t y = dimuonVector->Rapidity();
		Double_t p = dimuonVector->P();
		Double_t pT = TMath::Sqrt(pX*pX + pY*pY);
		Double_t M = dimuonVector->M();
		
		Double_t valuesDimuon[18] = {static_cast<Double_t>(fTrackletMultiplicity), vertexPosition, pileUp, matchTrigger1, matchTrigger2, static_cast<Double_t>(nMatchTrigger), thetaAbs1, thetaAbs2,
					     eta1, eta2, pDCA1, pDCA2, p1, p2, y, p, pT, M};
		((THnSparseD *)fDimuonList->At(triggerClass))->Fill(valuesDimuon);
		delete dimuonVector;
	      }
      }
  

  // Since this is the ESD, we are also going to fill a the V0amp vs multiplicity histos
  if (triggerClass == 0)
    {
      AliESDVZERO *v0 = fESD->GetVZEROData();
      Float_t multV0 = 0;
      Float_t multV0A = 0;
      Float_t multV0C = 0;

      for (Int_t ii = 0; ii < 64; ii++)
	{
	  multV0 += v0->GetMultiplicity(ii);
	  if (ii < 32)
	    {
	      multV0C += v0->GetMultiplicityV0C(ii);
	      multV0A += v0->GetMultiplicityV0A(ii);
	    }
	}

      ((TH2D *)fTriggerList->At(2))->Fill(fTrackletMultiplicity, multV0);
      ((TH2D *)fTriggerList->At(3))->Fill(fTrackletMultiplicity, multV0A);
      ((TH2D *)fTriggerList->At(4))->Fill(fTrackletMultiplicity, multV0C);
    }


}


//________________________________________________________________________
void AliAnalysisTaskMuonCollisionMultiplicity::FillHistosMC()
{
  // Fill the histo of the correlation between MC tracks and ESD tracks

  Int_t multiplicityGenerated = 0;
  const AliESDVertex *vertex = fESD->GetPrimaryVertexTracks();

  for (Int_t nn = 0; nn < fMCEvent->GetNumberOfTracks(); nn++)
    {
      AliMCParticle *particle = (AliMCParticle *) fMCEvent->GetTrack(nn);
      Bool_t isGoodMult = kTRUE;
      
      if (particle->Particle()->GetStatusCode() != 1)
	isGoodMult = kFALSE;
      
      if (particle->Charge() == 0)
	isGoodMult = kFALSE;

      if (TMath::Abs(particle->Eta()) > 1.6)
	isGoodMult = kFALSE;

      // Check if the particle is a pion, kaon, proton, electron or muon
      if (TMath::Abs(particle->PdgCode()) != 211 && TMath::Abs(particle->PdgCode()) != 321 && TMath::Abs(particle->PdgCode()) != 2212 &&
	  TMath::Abs(particle->PdgCode()) != 11 && TMath::Abs(particle->PdgCode()) != 13)
	isGoodMult = kFALSE;

      // Check if the distance to vertex is inferior to 1 cm
      Double_t distanceToVertex = TMath::Sqrt((particle->Xv() - vertex->GetX())*(particle->Xv() - vertex->GetX()) + 
					      (particle->Yv() - vertex->GetY())*(particle->Yv() - vertex->GetY()) + 
					      (particle->Zv() - vertex->GetZ())*(particle->Zv() - vertex->GetZ()));
      if (distanceToVertex > 1.0)
	isGoodMult = kFALSE;
	
      if (isGoodMult)
	multiplicityGenerated += 1;
    }

  ((TH2D *)fMonteCarloList->At(0))->Fill(multiplicityGenerated, fTrackletMultiplicity);
}



//________________________________________________________________________
void AliAnalysisTaskMuonCollisionMultiplicity::ComputeMultiplicity()
{
  // Compute the collision multiplicity based on AOD or ESD tracklets

  Int_t multiplicity = 0;
  
  if (fAOD)
    {
      AliAODTracklets *tracklets = fAOD->GetTracklets();
      Int_t nTracklets = tracklets->GetNumberOfTracklets();
      for (Int_t nn = 0; nn < nTracklets; nn++)
	{
	  Double_t theta = tracklets->GetTheta(nn);
	  Double_t eta = -TMath::Log(TMath::Tan(theta/2.0));
	  
	  if (TMath::Abs(eta) < fEtaCut)
	    multiplicity += 1;
	}
    }


  if (fESD)
    {
      // In ESDs, we use the EstimateMultiplicity function
      Int_t multTracklets = 0;
      Int_t multTPC = 0;
      Int_t multITSSA = 0;
      fESD->EstimateMultiplicity(multTracklets, multTPC, multITSSA, fEtaCut);
      multiplicity = multTracklets;
    }

  fTrackletMultiplicity =  multiplicity;
}



//________________________________________________________________________
Bool_t AliAnalysisTaskMuonCollisionMultiplicity::IsUsableMuon(AliAODTrack *track)
{
  // Check if the track is a usable muon track
  // Cuts applied :
  // - is it a muon track?
  // - does it have a pT > 0.0?

  Bool_t isGood = kFALSE;

  if (!track->IsMuonTrack())
    return isGood;

  if (!(track->Pt() > 0.0))
    return isGood;

  isGood = kTRUE;
  return isGood;
}



//________________________________________________________________________
Bool_t AliAnalysisTaskMuonCollisionMultiplicity::IsUsableMuon(AliESDMuonTrack *track)
{
  // Check if the track is a usable muon track
  // Cuts applied :
  // - is it a muon track?
  // - does it have a pT > 0.0?

  Bool_t isGood = kFALSE;

  if (!track->ContainTrackerData())
    return isGood;

  if (!(track->Pt() > 0.0))
    return isGood;

  isGood = kTRUE;
  return isGood;
}



//________________________________________________________________________
void AliAnalysisTaskMuonCollisionMultiplicity::Init()
{
  // Initialize the object

  fTriggerList = new TList();
  fSingleMuonList = new TList();
  fDimuonList = new TList();
  fMonteCarloList = new TList();

  fTriggerList->SetOwner();
  fSingleMuonList->SetOwner();
  fDimuonList->SetOwner();
  fMonteCarloList->SetOwner();



  // Trigger histos
  // dimension 0 : multiplicity of the event
  // dimension 1 : z vertex of the event
  // dimension 2 : is it an event without pile up (0 for no, 1 for yes)?
  Int_t nBinsTrigger[3] =       {  150,    60,   2};
  Double_t minRangeTrigger[3] = {  0.0, -30.0, 0.0};
  Double_t maxRangeTrigger[3] = {150.0,  30.0, 2.0};
  THnSparseD *CINT1B = new THnSparseD ("CINT1B", "CINT1B", 3, nBinsTrigger, minRangeTrigger, maxRangeTrigger);
  THnSparseD *CMUS1B = new THnSparseD ("CMUS1B", "CMUS1B", 3, nBinsTrigger, minRangeTrigger, maxRangeTrigger);
  CINT1B->Sumw2();
  CMUS1B->Sumw2();

  TH2D *CompSPDV0 = new TH2D ("CompSPDV0", "CompSPDV0", 150, 0.0, 150.0, 2000, 0.0, 2000.0);
  CompSPDV0->Sumw2();
  TH2D *CompSPDV0A = new TH2D ("CompSPDV0A", "CompSPDV0A", 150, 0.0, 150.0, 1000, 0.0, 1000.0);
  CompSPDV0A->Sumw2();
  TH2D *CompSPDV0C = new TH2D ("CompSPDV0C", "CompSPDV0C", 150, 0.0, 150.0, 1000, 0.0, 1000.0);
  CompSPDV0C->Sumw2();

  fTriggerList->AddAt(CINT1B, 0);
  fTriggerList->AddAt(CMUS1B, 1);
  fTriggerList->AddAt(CompSPDV0, 2);
  fTriggerList->AddAt(CompSPDV0A, 3);
  fTriggerList->AddAt(CompSPDV0C, 4);




  // Muons histos
  // dimension 0 : multiplicity of the event
  // dimension 1 : z vertex of the event
  // dimension 2 : is it an event without pile up (0 for no, 1 for yes)?
  // dimension 3 : does the muon match the trigger (0 for no, 1 for yes)?
  // dimension 4 : theta_abs of the muon
  // dimension 5 : eta of the muon
  // dimension 6 : p DCA of the muon
  // dimension 7 : p of the muon
  // dimension 8 : pT of the muon

  Int_t nBinsMuon[9] =       {  150,    60,   2,   2,  110,   35,   300,   300,  300};
  Double_t minRangeMuon[9] = {  0.0, -30.0, 0.0, 0.0,  0.0, -5.0,   0.0,   0.0,  0.0};
  Double_t maxRangeMuon[9] = {150.0,  30.0, 2.0, 2.0, 11.0, -1.5, 300.0, 150.0, 30.0};

  THnSparseD *muonCINT1B = new THnSparseD("muonCINT1B", "muonCINT1B", 9, nBinsMuon, minRangeMuon, maxRangeMuon);
  THnSparseD *muonCMUS1B = new THnSparseD("muonCMUS1B", "muonCMUS1B", 9, nBinsMuon, minRangeMuon, maxRangeMuon);
  muonCINT1B->Sumw2();
  muonCMUS1B->Sumw2();

  fSingleMuonList->AddAt(muonCINT1B, 0);
  fSingleMuonList->AddAt(muonCMUS1B, 1);


  // Dimuons histos
  // dimension 0  : multiplicity of the event
  // dimension 1  : z range (0 for no, 1 for yes)?
  // dimension 2  : is it an event without pile up (0 for no, 1 for yes)?
  // dimension 3  : does the first muon match the trigger (0 for no, 1 for yes)?
  // dimension 4  : does the second muon match the trigger (0 for no, 1 for yes)?
  // dimension 5  : number of muons matching the trigger in the dimuon
  // dimension 6  : theta_abs of the first muon
  // dimension 7  : theta_abs of the second muon
  // dimension 8  : eta of the first muon
  // dimension 9  : eta of the second muon
  // dimension 10 : p DCA of the first muon
  // dimension 11 : p DCA of the second muon
  // dimension 12 : p of the first muon
  // dimension 13 : p of the second muon
  // dimension 14 : y of the dimuon
  // dimension 15 : p of the dimuon
  // dimension 16 : pT of the dimuon
  // dimension 17 : invariant mass of the dimuon

  Int_t nBinsDimuon[18] =       {  150,    60,   2,   2,   2,   3,  110,  110,   35,   35,   200,   200,   300,   300,   35,   300,  300,  375};
  Double_t minRangeDimuon[18] = {  0.0, -30.0, 0.0, 0.0, 0.0, 0.0,  0.0,  0.0, -5.0, -5.0,   0.0,   0.0,   0.0,   0.0, -5.0,   0.0,  0.0,  0.0};
  Double_t maxRangeDimuon[18] = {150.0,  30.0, 2.0, 2.0, 2.0, 3.0, 11.0, 11.0, -1.5, -1.5, 600.0, 600.0, 150.0, 150.0, -1.5, 300.0, 30.0, 15.0};

  THnSparseD *dimuonCINT1B = new THnSparseD("dimuonCINT1B", "dimuonCINT1B", 18, nBinsDimuon, minRangeDimuon, maxRangeDimuon);
  THnSparseD *dimuonCMUS1B = new THnSparseD("dimuonCMUS1B", "dimuonCMUS1B", 18, nBinsDimuon, minRangeDimuon, maxRangeDimuon);

  dimuonCINT1B->Sumw2();
  dimuonCMUS1B->Sumw2();

  fDimuonList->AddAt(dimuonCINT1B, 0);
  fDimuonList->AddAt(dimuonCMUS1B, 1);

  // MonteCarlo Histo
  TH2D *correlGenerReco = new TH2D("correlGenerReco", "correlGenerReco", 250, 0.0, 250.0, 250, 0.0, 250.0);
  correlGenerReco->GetXaxis()->SetTitle("N ch gener");
  correlGenerReco->GetYaxis()->SetTitle("N reco tracklets");

  correlGenerReco->Sumw2();

  fMonteCarloList->AddAt(correlGenerReco, 0);

  fIsInit = kTRUE;
}





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