ROOT logo
/*************************************************************************
* Copyright(c) 1998-2009, 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.                  *
**************************************************************************/

///////////////////////////////////////////////////////////////////////////
//                                                                       //
//                        Basic Analysis Task                            //
//                                                                       //
///////////////////////////////////////////////////////////////////////////

#include <TChain.h>
#include <TH1D.h>

#include <AliCFContainer.h>
#include <AliInputEventHandler.h>
#include <AliESDInputHandler.h>
#include <AliAODInputHandler.h>
#include <AliAnalysisManager.h>
#include <AliVEvent.h>
#include <AliTriggerAnalysis.h>
#include <AliPIDResponse.h>
#include <AliTPCPIDResponse.h>

#include "AliDielectron.h"
#include "AliDielectronHistos.h"
#include "AliDielectronCF.h"
#include "AliDielectronMC.h"
#include "AliDielectronMixingHandler.h"
#include "AliAnalysisTaskMultiDielectronTG.h"

#include "AliESDtrack.h"
#include "AliESDtrackCuts.h"

#include "AliLog.h"

#include <vector>
#include <deque>
#include <cstdlib> 
#include <TRandom.h>

const char* kPairClassNamesTG[7] = {
  "unlike",
  "like_pp",
  "like_ee",
  "mixunlike_pe",
  "mixunlike_ep",
  "mixlike_pp",
  "mixlike_ee"
};


ClassImp(AliDielectronSingleTG)
ClassImp(AliAnalysisTaskMultiDielectronTG)

//_________________________________________________________________________________
AliAnalysisTaskMultiDielectronTG::AliAnalysisTaskMultiDielectronTG() :
  AliAnalysisTaskSE(),
  fListDielectron(),
  fListHistos(),
  fListCF(),
  fQAElectron(),
  fSelectPhysics(kFALSE),
  fTriggerMask(AliVEvent::kMB),
  fExcludeTriggerMask(0),
  fTriggerOnV0AND(kFALSE),
  fRejectPileup(kFALSE),
  fTriggerLogic(kAny),
  fTriggerAnalysis(0x0),
  fEventFilter(0x0),
  fCutsMother(0x0),   
  fEventStat(0x0),
  fEvent(0x0),
  fdEdXvsPt(0x0),
  fdEdXnSigmaElecvsPt(0x0),
  fdEdXvsPtTOF(0x0),
  fdEdXnSigmaElecvsPtTOF(0x0),
  fTOFbetavsPt(0x0),
  fTOFnSigmaElecvsPt(0x0),
  fNCrossedRowsTPC(0x0),
  fChi2ClusTPC(0x0),
  fRatioCrossClusTPC(0x0),
  fVem(0x0),
  fVep(0x0),
  fVemtmp(0x0),
  fVeptmp(0x0),
  fdconvphiv(acos(-1.0)),
  fdconvMee(100),
  fdop(0),
  fbz(0),
  fdv0mixing(kTRUE),
  fBGRejUnlike(kFALSE),
  fBGRejLike(kTRUE)
{
  //
  // Constructor
  //
}

//_________________________________________________________________________________
AliAnalysisTaskMultiDielectronTG::AliAnalysisTaskMultiDielectronTG(const char *name) :
  AliAnalysisTaskSE(name),
  fListDielectron(),
  fListHistos(),
  fListCF(),
  fQAElectron(),
  fSelectPhysics(kFALSE),
  fTriggerMask(AliVEvent::kMB),
  fExcludeTriggerMask(0),
  fTriggerOnV0AND(kFALSE),
  fRejectPileup(kFALSE),
  fTriggerLogic(kAny),
  fTriggerAnalysis(0x0),
  fEventFilter(0x0),
  fCutsMother(0x0),   
  fEventStat(0x0),
  fEvent(0x0),
  fdEdXvsPt(0x0),
  fdEdXnSigmaElecvsPt(0x0),
  fdEdXvsPtTOF(0x0),
  fdEdXnSigmaElecvsPtTOF(0x0),
  fTOFbetavsPt(0x0),
  fTOFnSigmaElecvsPt(0x0),
  fNCrossedRowsTPC(0x0),
  fChi2ClusTPC(0x0),
  fRatioCrossClusTPC(0x0),
  fVem(0x0),
  fVep(0x0),
  fVemtmp(0x0),
  fVeptmp(0x0),
  fdconvphiv(acos(-1.0)),
  fdconvMee(100),
  fdop(0),
  fbz(0),
  fdv0mixing(kTRUE),
  fBGRejUnlike(kFALSE),
  fBGRejLike(kTRUE)
{
  //
  // Constructor
  //
  DefineInput(0,TChain::Class());
  DefineOutput(1, TList::Class());
  DefineOutput(2, TList::Class());
  DefineOutput(3, TH1D::Class());
  fListHistos.SetName("Dielectron_Histos_Multi");
  fListCF.SetName("Dielectron_CF_Multi");
  fListDielectron.SetOwner();
  fListHistos.SetOwner();
  fListCF.SetOwner();

  ///////////////
  for(int i=0;i<fgkNDIE; i++){
    for(int j=0;j<fgkNZBIN;j++){
      for(int k=0;k<fgkNCENT;k++){
	for(int l=0; l<fgkNRPBIN; l++){
	  fibuf[i][j][k][l] = 0;
	  fpoolp[i][j][k][l].clear();
	  fpoolm[i][j][k][l].clear();
	  for(int ib=0;ib<fgkNBUF; ib++){
	    fvep[ib][i][j][k][l].clear();
	    fvem[ib][i][j][k][l].clear();
	  }
	}
      }
    }
  }



}

//_________________________________________________________________________________
AliAnalysisTaskMultiDielectronTG::~AliAnalysisTaskMultiDielectronTG()
{
  //
  // Destructor
  //

  //histograms and CF are owned by the dielectron framework.
  //however they are streamed to file, so in the first place the
  //lists need to be owner...
  fListHistos.SetOwner(kFALSE);
  fListCF.SetOwner(kFALSE);
  
  for(int i=0;i<fgkNDIE; i++){
    for(int j=0;j<fgkNZBIN;j++){
      for(int k=0;k<fgkNCENT;k++){
	for(int l=0; l<fgkNRPBIN; l++){
	  fibuf[i][j][k][l] = 0;
	  fpoolp[i][j][k][l].clear();
	  fpoolm[i][j][k][l].clear();
	  for(int ib=0;ib<fgkNBUF; ib++){
	    fvep[ib][i][j][k][l].clear();
	    fvem[ib][i][j][k][l].clear();
	  }
	}
      }
    }
  }
}
//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::UserCreateOutputObjects()
{
  //
  // Add all histogram manager histogram lists to the output TList
  //

  if (!fListHistos.IsEmpty()||!fListCF.IsEmpty()) return; //already initialised

//   AliAnalysisManager *man=AliAnalysisManager::GetAnalysisManager();
//   Bool_t isESD=man->GetInputEventHandler()->IsA()==AliESDInputHandler::Class();
//   Bool_t isAOD=man->GetInputEventHandler()->IsA()==AliAODInputHandler::Class();
  
  TIter nextDie(&fListDielectron);
  AliDielectron *die=0;
  while ( (die=static_cast<AliDielectron*>(nextDie())) ){
    die->Init();
    if (die->GetHistogramList()) fListHistos.Add(const_cast<THashList*>(die->GetHistogramList()));
    if (die->GetCFManagerPair()) fListCF.Add(const_cast<AliCFContainer*>(die->GetCFManagerPair()->GetContainer()));
  }

  Int_t cuts=fListDielectron.GetEntries();
  Int_t nbins=kNbinsEvent+2*cuts;
  if (!fEventStat){
    fEventStat=new TH1D("hEventStat","Event statistics",nbins,0,nbins);
    fEventStat->GetXaxis()->SetBinLabel(1,"Before Phys. Sel.");
    fEventStat->GetXaxis()->SetBinLabel(2,"After Phys. Sel.");

    //default names
    fEventStat->GetXaxis()->SetBinLabel(3,"Bin3 not used");
    fEventStat->GetXaxis()->SetBinLabel(4,"Bin4 not used");
    fEventStat->GetXaxis()->SetBinLabel(5,"Bin5 not used");
    
    if(fTriggerOnV0AND) fEventStat->GetXaxis()->SetBinLabel(3,"V0and triggers");
    if (fEventFilter) fEventStat->GetXaxis()->SetBinLabel(4,"After Event Filter");
    if (fRejectPileup) fEventStat->GetXaxis()->SetBinLabel(5,"After Pileup rejection");
    
    for (Int_t i=0; i<cuts; ++i){
      fEventStat->GetXaxis()->SetBinLabel((kNbinsEvent+1)+2*i,Form("#splitline{1 candidate}{%s}",fListDielectron.At(i)->GetName()));
      fEventStat->GetXaxis()->SetBinLabel((kNbinsEvent+2)+2*i,Form("#splitline{With >1 candidate}{%s}",fListDielectron.At(i)->GetName()));
    }
  }

  if (!fTriggerAnalysis) fTriggerAnalysis=new AliTriggerAnalysis;
  fTriggerAnalysis->EnableHistograms();
  fTriggerAnalysis->SetAnalyzeMC(AliDielectronMC::Instance()->HasMC());
  

  
  int nbinx=400;
  float maxx=20;
  float minx=0.2;
  float binw = (TMath::Log(maxx)-TMath::Log(minx))/nbinx;
  double xbin[401];
  for(int ii=0;ii<nbinx+1;ii++){
    xbin[ii] = TMath::Exp(TMath::Log(minx) + 0.5*binw+binw*ii);
  }

  
  fQAElectron = new TList();
  fQAElectron->SetName("QAElectron");
  fQAElectron->SetOwner();


  fEvent = new TH1D("Event","centrality",   100,0,100);
  fQAElectron->Add(fEvent);
  fdEdXvsPt = new TH2D("dEdXvsPt","dE/dX vs. PT of TPC", nbinx, xbin, 2000,0,200);
  fQAElectron->Add(fdEdXvsPt);
  fdEdXnSigmaElecvsPt = new TH2D("fdEdXnSigmaElecvsPt"," dE/dX normalized to electron vs. pT of TPC",
                                 nbinx, xbin, 2000, -10, 10);
  fQAElectron->Add(fdEdXnSigmaElecvsPt);

  fdEdXvsPtTOF = new TH2D("dEdXvsPtTOF","dE/dX vs. PT of TPC", nbinx, xbin, 2000,0,200);
  fQAElectron->Add(fdEdXvsPtTOF);
  fdEdXnSigmaElecvsPtTOF = new TH2D("fdEdXnSigmaElecvsPtTOF"," dE/dX normalized to electron vs. pT of TPC",
                                 nbinx, xbin, 2000, -10, 10);
  fQAElectron->Add(fdEdXnSigmaElecvsPtTOF);



  fTOFbetavsPt = new TH2D("fTOFbetavsPt","TOF beta vs. p", 400, 0, 20, 1200, 0, 1.2);
  fQAElectron->Add(fTOFbetavsPt);
  fTOFnSigmaElecvsPt = new TH2D("fTOFnSigmaElecvsPt","TOF nsigma for electron", 400, 0, 20, 2000, -10, 10);
  fQAElectron->Add(fTOFnSigmaElecvsPt);

  fNCrossedRowsTPC = new TH2F("fNCrossedRowsTPC", "TPC nCrossed Rows vs. pT", 200, 0, 20, 200, 0, 200);
  fQAElectron->Add(fNCrossedRowsTPC);
  fChi2ClusTPC = new TH2F("fChi2ClusTPC", "hChi2ClusTPC vs. pT", 200, 0, 20, 200, 0, 10);
  fQAElectron->Add(fChi2ClusTPC);
  
  fRatioCrossClusTPC = new TH2F("fRatioCrossClusTPC", "hRatioCrossClusTPC vs. pT", 200, 0, 20, 200, 0, 10);     
  fQAElectron->Add(fRatioCrossClusTPC);

  fListHistos.Add(fQAElectron);

  fListHistos.SetOwner();  
  
  PostData(1, &fListHistos);
  PostData(2, &fListCF);
  PostData(3, fEventStat);

  fCutsMother = new AliESDtrackCuts;
  fCutsMother->SetDCAToVertex2D(kTRUE);
  fCutsMother->SetMaxDCAToVertexZ(3.0);
  fCutsMother->SetMaxDCAToVertexXY(1.0);
  fCutsMother->SetPtRange(  0.05 , 200.0);
  fCutsMother->SetEtaRange( -0.84 , 0.84 );
  fCutsMother->SetAcceptKinkDaughters(kFALSE);
  fCutsMother->SetRequireITSRefit(kTRUE);
  fCutsMother->SetClusterRequirementITS(AliESDtrackCuts::kSPD,AliESDtrackCuts::kFirst);
  fCutsMother->SetMinNClustersITS(3);
  fCutsMother->SetRequireTPCRefit(kTRUE);


  AliInfo(Form("PairCutType = %d %d %d %d %d",
	       fRejectPairFlag[0],
	       fRejectPairFlag[1],
	       fRejectPairFlag[2],
	       fRejectPairFlag[3],
	       fRejectPairFlag[4]));

}

//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::UserExec(Option_t *)
{
  //
  // Main loop. Called for every event
  //

  if (fListHistos.IsEmpty()&&fListCF.IsEmpty()) return;

  AliAnalysisManager *man=AliAnalysisManager::GetAnalysisManager();
  Bool_t isESD=man->GetInputEventHandler()->IsA()==AliESDInputHandler::Class();
  Bool_t isAOD=man->GetInputEventHandler()->IsA()==AliAODInputHandler::Class();
  
  AliInputEventHandler* inputHandler = (AliInputEventHandler*) (man->GetInputEventHandler());
  if (!inputHandler) return;
  
//   AliPIDResponse *pidRes=inputHandler->GetPIDResponse();
  if ( inputHandler->GetPIDResponse() ){
    // for the 2.76 pass2 MC private train. Together with a sigma shift of -0.169
//    pidRes->GetTPCResponse().SetSigma(4.637e-3,2.41332105409873257e+04);
    AliDielectronVarManager::SetPIDResponse( inputHandler->GetPIDResponse() );
  } else {
    AliFatal("This task needs the PID response attached to the input event handler!");
  }
  
  // Was event selected ?
  ULong64_t isSelected = AliVEvent::kAny;
  Bool_t isRejected = kFALSE;
  if( fSelectPhysics && inputHandler){
    if((isESD && inputHandler->GetEventSelection()) || isAOD){
      isSelected = inputHandler->IsEventSelected();
      if (fExcludeTriggerMask && (isSelected&fExcludeTriggerMask)) isRejected=kTRUE;
      if (fTriggerLogic==kAny) isSelected&=fTriggerMask;
      else if (fTriggerLogic==kExact) isSelected=((isSelected&fTriggerMask)==fTriggerMask);
    }
   }
 
 
  //Before physics selection
  fEventStat->Fill(kAllEvents);
  if (isSelected==0||isRejected) {
    PostData(3,fEventStat);
    return;
  }
  //after physics selection
  fEventStat->Fill(kSelectedEvents);

  //V0and
  if(fTriggerOnV0AND){
    if(isESD){if (!fTriggerAnalysis->IsOfflineTriggerFired(static_cast<AliESDEvent*>(InputEvent()), AliTriggerAnalysis::kV0AND))
            return;}
    if(isAOD){if(!((static_cast<AliAODEvent*>(InputEvent()))->GetVZEROData()->GetV0ADecision() == AliVVZERO::kV0BB &&
		   (static_cast<AliAODEvent*>(InputEvent()))->GetVZEROData()->GetV0CDecision() == AliVVZERO::kV0BB) )
	return;}
  }
  

  fEventStat->Fill(kV0andEvents);

  //Fill Event histograms before the event filter
  TIter nextDie(&fListDielectron);
  AliDielectron *die=0;
  Double_t values[AliDielectronVarManager::kNMaxValues]={0};
  Double_t valuesMC[AliDielectronVarManager::kNMaxValues]={0};
  AliDielectronVarManager::SetEvent(InputEvent());
  AliDielectronVarManager::Fill(InputEvent(),values);
  AliDielectronVarManager::Fill(InputEvent(),valuesMC);
  Bool_t hasMC=AliDielectronMC::Instance()->HasMC();
  if (hasMC) {
    if (AliDielectronMC::Instance()->ConnectMCEvent())
      AliDielectronVarManager::Fill(AliDielectronMC::Instance()->GetMCEvent(),valuesMC);
  }

  while ( (die=static_cast<AliDielectron*>(nextDie())) ){
    AliDielectronHistos *h=die->GetHistoManager();
    if (h){
      if (h->GetHistogramList()->FindObject("Event_noCuts"))
        h->FillClass("Event_noCuts",AliDielectronVarManager::kNMaxValues,values);
      if (hasMC && h->GetHistogramList()->FindObject("MCEvent_noCuts"))
        h->FillClass("Event_noCuts",AliDielectronVarManager::kNMaxValues,valuesMC);
    }
  }
  nextDie.Reset();
  
  //event filter
  if (fEventFilter) {
    if (!fEventFilter->IsSelected(InputEvent())) return;
  }
  fEventStat->Fill(kFilteredEvents);
  
  //pileup
  if (fRejectPileup){
    if (InputEvent()->IsPileupFromSPD(3,0.8,3.,2.,5.)) return;
  }
  fEventStat->Fill(kPileupEvents);
  
  //bz for AliKF
  fbz = InputEvent()->GetMagneticField();
  AliKFParticle::SetField( fbz );
  AliDielectronPID::SetCorrVal((Double_t)InputEvent()->GetRunNumber());
  
  //Process event in all AliDielectron instances
  //   TIter nextDie(&fListDielectron);
  //   AliDielectron *die=0;
  Int_t idie=0;
  while ( (die=static_cast<AliDielectron*>(nextDie())) ){
    //AliInfo(Form(" **************** die->Process(InputEvent()) : %d **************************", idie));
    die->SetDontClearArrays(kTRUE);
    die->Process(InputEvent());
    if (die->HasCandidates()){
      Int_t ncandidates=die->GetPairArray(1)->GetEntriesFast();
      if (ncandidates==1) fEventStat->Fill((kNbinsEvent)+2*idie);
      else if (ncandidates>1) fEventStat->Fill((kNbinsEvent+1)+2*idie);
    }


    AliDielectronVarManager::Fill(InputEvent(), fgValues);
    for (Int_t ii=0; ii<2; ++ii){ 
      TObjArray *obj = (TObjArray*)die->GetTrackArray(ii);
      Int_t ntracks=obj->GetEntriesFast();
      //AliInfo(Form(" ************** # of tracks = %d", ntracks));
      for (Int_t itrack=0; itrack<ntracks; ++itrack){
	
	////////////////////////////////////////////////////////////////////
	AliDielectronVarManager::Fill(obj->UncheckedAt(itrack), fgValues);
        ////////////////////////////////////////////////////////////////////

	if(fgValues[AliDielectronVarManager::kCharge]>0){
	  fVeptmp.push_back(new  AliDielectronSingleTG(1, 
						       fgValues[AliDielectronVarManager::kCentrality],
						       fgValues[AliDielectronVarManager::kXv],
						       fgValues[AliDielectronVarManager::kYv],
						       fgValues[AliDielectronVarManager::kZv],
						       fgValues[AliDielectronVarManager::kPx],
						       fgValues[AliDielectronVarManager::kPy],
						       fgValues[AliDielectronVarManager::kPz],
						       fgValues[AliDielectronVarManager::kPt],
						       fgValues[AliDielectronVarManager::kEta],
						       fgValues[AliDielectronVarManager::kPhi],
						       fgValues[AliDielectronVarManager::kTheta],
						       1, 1, static_cast<AliVTrack*>(obj->UncheckedAt(itrack)))
			    );
	}else if(fgValues[AliDielectronVarManager::kCharge]<0){
	  fVemtmp.push_back(new  AliDielectronSingleTG(-1, 
						       fgValues[AliDielectronVarManager::kCentrality],
						       fgValues[AliDielectronVarManager::kXv],
						       fgValues[AliDielectronVarManager::kYv],
						       fgValues[AliDielectronVarManager::kZv],
						       fgValues[AliDielectronVarManager::kPx],
						       fgValues[AliDielectronVarManager::kPy],
						       fgValues[AliDielectronVarManager::kPz],
						       fgValues[AliDielectronVarManager::kPt],
						       fgValues[AliDielectronVarManager::kEta],
						       fgValues[AliDielectronVarManager::kPhi],
						       fgValues[AliDielectronVarManager::kTheta],
						       1, 1, static_cast<AliVTrack*>(obj->UncheckedAt(itrack)))
			    );
	}
      }
    }
    //AliInfo(Form("size of e and p = %d %d", (int)fVeptmp.size(), (int)fVemtmp.size()));
    

    CheckGhostPairs(fVeptmp);
    CheckGhostPairs(fVemtmp);
    if(fRejectPairFlag[idie]==1 || fRejectPairFlag[idie]==2){
      RejectPairs(fVeptmp, fVemtmp, idie);
    }
    RandomizePool(fVeptmp, fVemtmp);    
    CalcPair(fVep, fVem, die, idie);

    //    AliInfo(Form("size of e and p (after) = %d %d", (int)fVep.size(), (int)fVem.size()));

    double dwcent = 100.0/fgkNCENT;
    double dwiz = 20.0/fgkNZBIN;
    double dwrp = acos(-1.0)/fgkNRPBIN;

    int icent = (int)(fgValues[AliDielectronVarManager::kCentrality]/dwcent);
    int izbin = (int)((fgValues[AliDielectronVarManager::kZvPrim]+10)/dwiz);
    int irp = (int)((fgValues[AliDielectronVarManager::kV0ACrpH2])/dwrp);
    
    if(icent<0) icent=0;
    if(icent>=fgkNCENT) icent=fgkNCENT-1;
    if(izbin<0) izbin=0;
    if(izbin>=fgkNZBIN) izbin=fgkNZBIN-1;
    if(irp<0) irp=0;
    if(irp>=fgkNRPBIN) irp=fgkNRPBIN-1;
    
    fvep[fibuf[idie][izbin][icent][irp]][idie][izbin][icent][irp].clear();
    for(int iep = 0; iep<(int)fVep.size();iep++) {
      fvep[fibuf[idie][izbin][icent][irp]][idie][izbin][icent][irp].push_back(fVep[iep]);
      fpoolp[idie][izbin][icent][irp].push_back(fVep[iep]);
      if(fpoolp[idie][izbin][icent][irp].size()>fgkMAXPOOL) {
	fpoolp[idie][izbin][icent][irp].pop_front();
      }
    }
    fvem[fibuf[idie][izbin][icent][irp]][idie][izbin][icent][irp].clear();
    for(int iem = 0; iem<(int)fVem.size();iem++) {
      fvem[fibuf[idie][izbin][icent][irp]][idie][izbin][icent][irp].push_back(fVem[iem]);
      fpoolm[idie][izbin][icent][irp].push_back(fVem[iem]);
      if(fpoolm[idie][izbin][icent][irp].size()>fgkMAXPOOL) {
	fpoolm[idie][izbin][icent][irp].pop_front();
      }
    }


    fibuf[idie][izbin][icent][irp]++;
    if(fibuf[idie][izbin][icent][irp]>= fgkNBUF) fibuf[idie][izbin][icent][irp]=0; 


    fVeptmp.clear();
    fVemtmp.clear();
    fVep.clear();
    fVem.clear();


    ++idie;
  }


  AliESDEvent *fESD = dynamic_cast<AliESDEvent*>(InputEvent());
  fEvent->Fill(values[AliDielectronVarManager::kCentrality]);
  for (Int_t iTracks = 0; iTracks < fESD->GetNumberOfTracks(); iTracks++) {
    AliESDtrack* track = fESD->GetTrack(iTracks);
    if (!track) {
      Printf("ERROR: Could not receive track %d", iTracks);
      continue;
    }
    if(!fCutsMother->AcceptTrack(track)) continue;
    fdEdXvsPt->Fill(track->GetTPCmomentum(), track->GetTPCsignal());
    fdEdXnSigmaElecvsPt->Fill(track->GetTPCmomentum(), 
                              AliDielectronVarManager::GetPIDResponse()->NumberOfSigmasTPC(track,
                                                                                      AliPID::kElectron)
                              -AliDielectronPID::GetCorrVal());
    /// for beta caliculaton 
    Double_t l = track->GetIntegratedLength();  // cm
    Double_t t = track->GetTOFsignal();
    Double_t t0 = AliDielectronVarManager::GetPIDResponse()->GetTOFResponse().GetTimeZero(); // ps
    Double_t beta = 0;
    if( (l < 360. || l > 800.) || (t <= 0.) || (t0 >999990.0) ) {
      beta=-9999;
    }
    else {
      t -= t0; // subtract the T0
      l *= 0.01;  // cm ->m
      t *= 1e-12; //ps -> s
    
      Double_t v = l / t;
      beta = v / TMath::C();
    }

    fTOFbetavsPt->Fill(track->GetTPCmomentum(), beta);
    fTOFnSigmaElecvsPt->Fill(track->GetTPCmomentum(), 
                             AliDielectronVarManager::GetPIDResponse()->NumberOfSigmasTOF(track,
                                                                                     AliPID::kElectron));
    ////rough PID is required 
    if( fabs(AliDielectronVarManager::GetPIDResponse()->NumberOfSigmasTOF(track, AliPID::kElectron))<3){
      fdEdXvsPtTOF->Fill(track->GetTPCmomentum(), track->GetTPCsignal());
      fdEdXnSigmaElecvsPtTOF->Fill(track->GetTPCmomentum(), 
				   AliDielectronVarManager::GetPIDResponse()->NumberOfSigmasTPC(track,
												AliPID::kElectron)
				   -AliDielectronPID::GetCorrVal());

      
      if(track->GetTPCsignal()>70 && track->GetTPCsignal()<90){
	fNCrossedRowsTPC->Fill(track->GetTPCmomentum(), track->GetTPCCrossedRows());
	//fChi2ClusTPC->Fill(track->GetTPCmomentum(), track->GetTPCchi2()/track->GetTPCNcls());
	fChi2ClusTPC->Fill(track->GetTPCmomentum(), track->GetTPCchi2());
	fRatioCrossClusTPC->Fill(track->GetTPCmomentum(), track->GetTPCCrossedRows()/track->GetTPCNclsF());
      }
    }
  }
  
  PostData(1, &fListHistos);
  PostData(2, &fListCF);
  PostData(3,fEventStat);
}

//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::FinishTaskOutput()
{
  //
  // Write debug tree
  //
  TIter nextDie(&fListDielectron);
  AliDielectron *die=0;
  while ( (die=static_cast<AliDielectron*>(nextDie())) ){
    die->SaveDebugTree();
    AliDielectronMixingHandler *mix=die->GetMixingHandler();
//    printf("\n\n\n===============\ncall mix in Terminate: %p (%p)\n=================\n\n",mix,die);
    if(!mix) continue;
    for (Int_t ipool=0; ipool<mix->GetNumberOfBins(); ++ipool){
      mix->MixRemaining(die, ipool);
    }
  }
  PostData(1, &fListHistos);
  PostData(2, &fListCF);
}

//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::CheckGhostPairs(vector<AliDielectronSingleTG*> e1)
{
  ////// Check whether the pairs are in ghost pairs 
  /////  ghost means that one of the pairs is highly associated but reconstructed as a true particle


  bool reject = false;
  if(e1.size()>1){
    for(int i1=0; i1<(int)e1.size(); i1++){
      reject = false;
      for(int i2=i1+1; i2<(int)e1.size(); i2++){
        if( fabs(e1[i1]->Phi() - e1[i2]->Phi())<0.01 && 
	    fabs(e1[i1]->Eta() - e1[i2]->Eta())<0.005
	    ){
          reject = true;
          e1[i2]->SetGstFlag(0);
        }
      }
      if(reject==true)e1[i1]->SetGstFlag(0);
    }
  }
}

//_________________________________________________________________________________
Bool_t AliAnalysisTaskMultiDielectronTG::CheckGhost(vector<AliDielectronSingleTG*> e1, vector<AliDielectronSingleTG*> e2)
{
  ////// To be sure whether there are no ghost pairs in h event mixing 

  if(e1.size()>0 && e2.size()>0){
    for(int i1=0; i1<(int)e1.size(); i1++){
      for(int i2=0; i2<(int)e2.size(); i2++){
        if( fabs(e1[i1]->Phi() - e2[i2]->Phi())<0.01 && 
	    fabs(e1[i1]->Eta() - e2[i2]->Eta())<0.005
	    ){
	  return true;
        }
      }
    }
  }
  return false;
}

//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::RandomizePool(vector<AliDielectronSingleTG*> e1, vector<AliDielectronSingleTG*> e2)
{
  
  ///// Randomize the pool constent to cancel the filling scheme of the single tracks
  //// 


  int size1 = e1.size();
  int usedindex[1000];
  for(int i=0;i<1000;i++){
    usedindex[i] = -1;
  }
  for(int i=0;i<size1;i++){
    usedindex[i] = 0;
  }

  for(int i=0;i<size1;i++){
    int j = (int)(gRandom->Uniform(0,size1));
    while(usedindex[j]==1){
      j = (int)(gRandom->Uniform(0,size1));
    }
    if( (e1[j]->GetGstFlag()==1) &&
	(e1[j]->GetConvFlag()==1)
        ){
      fVep.push_back(e1[j]);
    }
    usedindex[j] = 1;
  }
  

  int size2 = e2.size();
  for(int i=0;i<1000;i++){
    usedindex[i] = -1;
  }
  for(int i=0;i<size2;i++){
    usedindex[i] = 0;
  }

  for(int i=0;i<size2;i++){
    int j = (int)(gRandom->Uniform(0,size2));
    while(usedindex[j]==1){
      j = (int)(gRandom->Uniform(0,size2));
    }
    if( (e2[j]->GetGstFlag()==1) &&
	(e2[j]->GetConvFlag()==1)
        ){
      fVem.push_back(e2[j]);
    }
    usedindex[j] = 1;
  }
}


//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::CalcPair(vector<AliDielectronSingleTG*> ve1, 
						vector<AliDielectronSingleTG*> ve2, AliDielectron *die, Int_t idie)
{

  //
  // main routine for the pair procesing 
  //


  for(int i1=0; i1<(int)ve1.size(); i1++){
    for(int i2=0; i2<(int)ve2.size(); i2++){
      FillPair(ve1[i1], ve2[i2], 0, die, idie);  
    }    
  }

  for(int i1=0; i1<(int)ve1.size(); i1++){
    for(int i2=i1+1; i2<(int)ve1.size(); i2++){
      FillPair(ve1[i1], ve1[i2], 1, die, idie);  
    }    
  }

  for(int i1=0; i1<(int)ve2.size(); i1++){
    for(int i2=i1+1; i2<(int)ve2.size(); i2++){
      FillPair(ve2[i1], ve2[i2], 2, die, idie );  
    }    
  }


  double dwcent = 100.0/fgkNCENT;
  double dwiz = 20.0/fgkNZBIN;
  double dwrp = acos(-1.0)/fgkNRPBIN;

  int icent = (int)(fgValues[AliDielectronVarManager::kCentrality]/dwcent);
  int izbin = (int)((fgValues[AliDielectronVarManager::kZvPrim]+10)/dwiz);
  int irp = (int)((fgValues[AliDielectronVarManager::kV0ACrpH2])/dwrp);

  if(icent<0) icent=0;
  if(icent>=fgkNCENT) icent=fgkNCENT-1;
  if(izbin<0) izbin=0;
  if(izbin>=fgkNZBIN) izbin=fgkNZBIN-1;
  if(irp<0) irp=0;
  if(irp>=fgkNRPBIN) irp=fgkNRPBIN-1;

  int nmixed;
  if(ve1.size()>0) {
    //
    // Now mixed event for +- pairs
    //
    nmixed = 0;
    for(int ibuf=0;(nmixed<fgkNMix);ibuf++) {
      int ntry = 0;
      while((fBGRejUnlike && CheckGhost(ve1, fvem[ibuf][idie][izbin][icent][irp])) &&  ntry<fgkMAXTRY) {
        ReshuffleBuffer(fvem[ibuf][idie][izbin][icent][irp],fpoolm[idie][izbin][icent][irp]);
        ntry++;
      }
      for(int i1=0; i1<(int)ve1.size(); i1++){
	for(int i2=0; i2<(int)fvem[ibuf][idie][izbin][icent][irp].size(); i2++){
          FillPair(ve1[i1],fvem[ibuf][idie][izbin][icent][irp][i2], 3, die, idie);
        }
      }
      ++nmixed;
    }//for(ibuf)
  }
  if(ve2.size()>0) {
    //
    // Now mixed event for -+ pairs
    //
    nmixed = 0;
    for(int ibuf=0;(nmixed<fgkNMix);ibuf++) {
      int ntry = 0;
      while((fBGRejUnlike && CheckGhost(ve2, fvep[ibuf][idie][izbin][icent][irp])) &&  ntry<fgkMAXTRY) {
        ReshuffleBuffer(fvep[ibuf][idie][izbin][icent][irp],fpoolp[idie][izbin][icent][irp]);
        ntry++;
      }
      for(int i1=0; i1<(int)ve2.size(); i1++){
        for(int i2=0; i2<(int)fvep[ibuf][idie][izbin][icent][irp].size(); i2++){
	  FillPair(fvep[ibuf][idie][izbin][icent][irp][i2],ve2[i1],4, die, idie);
        }
      }
      ++nmixed;
    }//for(ibuf)
  }

  if(ve1.size()>0) {
    //
    // Now mixed event for ++ pairs
    //
    nmixed = 0;
    for(int ibuf=0;(nmixed<fgkNMix);ibuf++) {
      int ntry = 0;
      while((fBGRejLike && CheckGhost(ve1, fvep[ibuf][idie][izbin][icent][irp])) &&  ntry<fgkMAXTRY) {
        ReshuffleBuffer(fvep[ibuf][idie][izbin][icent][irp],fpoolp[idie][izbin][icent][irp]);
        ntry++;
      }
      for(int i1=0; i1<(int)ve1.size(); i1++){
        for(int i2=0;i2<(int)fvep[ibuf][idie][izbin][icent][irp].size(); i2++){
          FillPair(ve1[i1],fvep[ibuf][idie][izbin][icent][irp][i2], 5, die, idie);
        }
      }
      ++nmixed;
    }//for(ibuf)
  }

  if(ve2.size()>0) {
    //
    // Now mixed event for +- pairs
    //
    nmixed = 0;
    for(int ibuf=0;(nmixed<fgkNMix);ibuf++) {
      int ntry = 0;
      while((fBGRejLike && CheckGhost(ve2, fvem[ibuf][idie][izbin][icent][irp])) &&  ntry<fgkMAXTRY) {
        ReshuffleBuffer(fvem[ibuf][idie][izbin][icent][irp],fpoolm[idie][izbin][icent][irp]);
        ntry++;
      }
      for(int i1=0; i1<(int)ve2.size(); i1++){
        for(int i2=0; i2<(int)fvem[ibuf][idie][izbin][icent][irp].size(); i2++){
          FillPair(ve2[i1],fvem[ibuf][idie][izbin][icent][irp][i2],6, die, idie);
        }
      }
      ++nmixed;
    }//for(ibuf)
  }

}


//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::FillPair(AliDielectronSingleTG *iep, 
						AliDielectronSingleTG *iem, int type, AliDielectron *die, Int_t idie)
{                      

  //
  // main routine for filling kinematics of pairs
  //


  
  double dmass, dphiv, dpxpair, dpypair, dpzpair;
  double dptpair, depair, dphipair, detapair, dcos, dpsi;

  CalcVars(iep, iem, dmass, dphiv, dpxpair, dpypair, dpzpair, 
            dptpair, depair, dphipair, detapair, dcos, dpsi);


  double dopeningangle =  -9999;
  double dv0mass =  -9999;
  double dv0pxpair = -9999;
  double dv0pypair = -9999;
  double dv0pzpair = -9999;
  double dv0ptpair = -9999;
  double dv0epair = -9999;
  double dv0xvpair = -9999;
  double dv0yvpair = -9999;
  double dv0zvpair = -9999;
  double dv0phipair = -9999;
  double dv0etapair = -9999;
  double dv0rpair = -9999;
  double dpsipair =  -9999;
  double dphivpair =  -9999;

  ////////////////////////////
  ///// calculate v0 ////////
  ///////////////////////////
  Bool_t v0OFF=kFALSE;
  /// for the moment, this doesn't work for MC
  if(fdv0mixing == kFALSE && (type==3 || type==4 || type==5 || type==6)){
    v0OFF = kTRUE;
  }
  if(die->GetHasMC()==kTRUE && (type==3 || type==4 || type==5 || type==6)){
    v0OFF = kTRUE;
  }
  if(type==0 || type==1 || type==2){
    v0OFF = kFALSE;
  }
  

  if(v0OFF==kFALSE){
    AliVTrack* trackob1= iep->GetTrack();    
    AliVTrack* trackob2= iem->GetTrack();    

    if(!trackob1 || !trackob2){
      return; 
    }

    AliDielectronPair candidate;
    candidate.SetTracks(trackob1, (int)(11*iep->Charge()), 
			trackob2, (int)(11*iem->Charge()));
    
    if(trackob1==trackob2){
      AliInfo("Same Objects!!");
      return; 
    }

    //const AliKFParticle &kfPairLeg1 = candidate.GetKFFirstDaughter();
    //const AliKFParticle &kfPairLeg2 = candidate.GetKFSecondDaughter();
    
    const AliKFParticle &kfPair = candidate.GetKFParticle();

    /*
    dv0mass = candidate.M();
    dv0pxpair = candidate.Px();
    dv0pypair = candidate.Py();
    dv0pzpair = candidate.Pz();
    dv0ptpair = candidate.Pt();
    dv0epair = candidate.E();
    dv0xvpair = candidate.Xv();
    dv0yvpair = candidate.Yv();
    dv0zvpair = candidate.Zv();
    dv0phipair = candidate.Phi();
    dv0etapair = candidate.Eta();
    */
    dv0mass = kfPair.GetMass();
    dv0pxpair = kfPair.GetPx();
    dv0pypair = kfPair.GetPy();
    dv0pzpair = kfPair.GetPz();
    dv0ptpair = kfPair.GetPt();
    dv0epair = kfPair.GetE();
    dv0xvpair = kfPair.GetX();
    dv0yvpair = kfPair.GetY();
    dv0zvpair = kfPair.GetZ();
    dv0phipair = kfPair.GetPhi();
    dv0etapair = kfPair.GetEta();
    dv0rpair =  kfPair.GetR();

    dopeningangle = candidate.OpeningAngle();    
    dpsipair = candidate.PsiPair(fbz);
    dphivpair = candidate.PhivPair(fbz);


  }

  Double_t values[AliDielectronVarManager::kNMaxValues];
  TString  className1;
  TString  className2;
  className1.Form("MyPair_%s",kPairClassNamesTG[type]);
  className2.Form("MyPairV0_%s",kPairClassNamesTG[type]);
  
  AliDielectronHistos *fHistos = die->GetHistoManager();
  Bool_t pairClass1=fHistos->GetHistogramList()->FindObject(className1.Data())!=0x0;
  Bool_t pairClass2=fHistos->GetHistogramList()->FindObject(className2.Data())!=0x0;

  if (pairClass1 && PairTrackcut(dphiv, dcos, dmass, idie)==true){
    ///import pair variables to values!!
    values[AliDielectronVarManager::kPx] = dpxpair;
    values[AliDielectronVarManager::kPy] = dpypair;
    values[AliDielectronVarManager::kPz] = dpzpair;
    values[AliDielectronVarManager::kPt] = dptpair;
    values[AliDielectronVarManager::kXv] = dv0xvpair;
    values[AliDielectronVarManager::kYv] = dv0yvpair;
    values[AliDielectronVarManager::kZv] = dv0zvpair;
    values[AliDielectronVarManager::kR] = dv0rpair;
    values[AliDielectronVarManager::kE] = depair;
    values[AliDielectronVarManager::kEta] = detapair;
    values[AliDielectronVarManager::kM] = dmass;
    values[AliDielectronVarManager::kPsiPair] = dphiv;
    values[AliDielectronVarManager::kPhivPair] = dphiv;
    values[AliDielectronVarManager::kPhi]  = dphipair;
    values[AliDielectronVarManager::kOpeningAngle]  = dcos;
    values[AliDielectronVarManager::kCosPointingAngle]  = TMath::Abs(TMath::ATan2(TMath::Sin(iep->Phi()-iem->Phi()),TMath::Cos(iep->Phi()-iem->Phi())));
    fHistos->FillClass(className1, AliDielectronVarManager::kNMaxValues, values);
  }


  if (pairClass2 && PairTrackcut(dphiv, dopeningangle, dv0mass, idie)==true){
    values[AliDielectronVarManager::kPx] = dv0pxpair;
    values[AliDielectronVarManager::kPy] = dv0pypair;
    values[AliDielectronVarManager::kPz] = dv0pzpair;
    values[AliDielectronVarManager::kPt] = dv0ptpair;
    values[AliDielectronVarManager::kXv] = dv0xvpair;
    values[AliDielectronVarManager::kYv] = dv0yvpair;
    values[AliDielectronVarManager::kZv] = dv0zvpair;
    values[AliDielectronVarManager::kR] = dv0rpair;
    values[AliDielectronVarManager::kE] = dv0epair;
    values[AliDielectronVarManager::kEta] = dv0etapair;
    values[AliDielectronVarManager::kM] = dv0mass;
    values[AliDielectronVarManager::kPsiPair] = dpsipair;
    values[AliDielectronVarManager::kPhivPair] = dphivpair;
    values[AliDielectronVarManager::kPhi]  = dv0phipair;
    values[AliDielectronVarManager::kOpeningAngle]  = dopeningangle;
    values[AliDielectronVarManager::kCosPointingAngle]  = TMath::Abs(TMath::ATan2(TMath::Sin(iep->Phi()-iem->Phi()),TMath::Cos(iep->Phi()-iem->Phi())));
    fHistos->FillClass(className2, AliDielectronVarManager::kNMaxValues, values);
  }


  
}

//_________________________________________________________________________________
bool AliAnalysisTaskMultiDielectronTG::PairTrackcut(double phiv, double op, double mass, int idie)
{

  //
  // pair-by-pair cuts
  //
  

  bool pairOK = true;

  if(fRejectPairFlag[idie] == 1 || fRejectPairFlag[idie] == 2 ||
     fRejectPairFlag[idie] == 3 || fRejectPairFlag[idie] == 4 ){
    if(fRejectPairFlag[idie] == 2 || fRejectPairFlag[idie] == 4 ){
      if(fbz>0 && (phiv>fdconvphiv && mass < fdconvMee) ){
	pairOK = false;
      }else if(fbz<0 && phiv<acos(-1.0)-fdconvphiv  && mass < fdconvMee){
	pairOK = false;
      }
    }else if(fRejectPairFlag[idie] == 1 || fRejectPairFlag[idie] == 3){
      if(op<fdop){
	pairOK = false;
      }
    }
  }

  return pairOK;

}


//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::CalcVars(AliDielectronSingleTG *iep, AliDielectronSingleTG *iem, 
						double &mass, double &phiv, double &px, double &py, double&pz,
						double &pt, double &e, double &phi, 
						double &eta, double &cos, double &psi)
{


  //
  // standalone calculator for the pair variables
  //

  px = iep->Px()+iem->Px();
  py = iep->Py()+iem->Py();
  pz = iep->Pz()+iem->Pz();
  pt = sqrt(px*px+py*py);
  double dppair = sqrt(pt*pt+pz*pz);
  static const double me=0.0005109989;
  e = sqrt(me*me+iep->Px()*iep->Px()+iep->Py()*iep->Py()+iep->Pz()*iep->Pz())
    + sqrt(me*me+iem->Px()*iem->Px()+iem->Py()*iem->Py()+iem->Pz()*iem->Pz());
  
  mass =  e*e-px*px-py*py-pz*pz;
  if(mass>=0){
    mass = sqrt(mass);
  }
   
  
  phi = atan2(py, px);
  eta = -0.5*TMath::Log((dppair+pz)/(dppair-pz));
  double p1 = sqrt(pow(iep->Px(),2)+pow(iep->Py(),2)+pow(iep->Pz(),2));
  double p2 = sqrt(pow(iem->Px(),2)+pow(iem->Py(),2)+pow(iem->Pz(),2));
  cos = acos((iep->Px()*iem->Px()+iep->Py()*iem->Py()+iep->Pz()*iem->Pz())/(p1*p2));

  double dtheta = iep->Theta()-iem->Theta();
  psi = asin(dtheta/cos);


  //unit vector of (pep+pem) 
  double pl = dppair;
  double ux = px/pl;
  double uy = py/pl;
  double uz = pz/pl;
  double ax = uy/sqrt(ux*ux+uy*uy);
  double ay = -ux/sqrt(ux*ux+uy*uy); 
  
  //momentum of e+ and e- in (ax,ay,az) axis. Note that az=0 by 
  //definition. 
  //double ptep = iep->Px()*ax + iep->Py()*ay; 
  //double ptem = iem->Px()*ax + iem->Py()*ay; 
  
  double pxep = iep->Px();
  double pyep = iep->Py();
  double pzep = iep->Pz();
  double pxem = iem->Px();
  double pyem = iem->Py();
  double pzem = iem->Pz();
  
  
  //vector product of pep X pem 
  double vpx = pyep*pzem - pzep*pyem; 
  double vpy = pzep*pxem - pxep*pzem; 
  double vpz = pxep*pyem - pyep*pxem; 
  double vp = sqrt(vpx*vpx+vpy*vpy+vpz*vpz); 
  //double thev = acos(vpz/vp); 
  
  //unit vector of pep X pem 
  double vx = vpx/vp; 
  double vy = vpy/vp; 
  double vz = vpz/vp; 

  //The third axis defined by vector product (ux,uy,uz)X(vx,vy,vz) 
  double wx = uy*vz - uz*vy; 
  double wy = uz*vx - ux*vz; 
  double wz = ux*vy - uy*vx; 
  double wl = sqrt(wx*wx+wy*wy+wz*wz); 
  // by construction, (wx,wy,wz) must be a unit vector. 
  if(fabs(wl - 1.0) > 0.00001) std::cout << "Calculation error in W vector"<<std::endl; 
  // measure angle between (wx,wy,wz) and (ax,ay,0). The angle between them 
  // should be small if the pair is conversion 
  //
  double cosPhiV = wx*ax + wy*ay; 
  phiv = acos(cosPhiV); 
  
}

//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::ReshuffleBuffer(vector<AliDielectronSingleTG*> ve, deque<AliDielectronSingleTG*> pool)
{
  //If there is not enough electron in the pool, give up
  //
  // ReshuffleBuffer for th event mixing 
  //

  unsigned int ne = ve.size();
  unsigned int poolsize = pool.size();
  int used[fgkMAXPOOL];
  for(int i=0;i<(int)fgkMAXPOOL;i++){
    used[i]=0;
  }

  if(poolsize < ne) {
    std::cout <<" pool size="<<poolsize<<" ne"<<ne<<std::endl;
    return;
  }
  for(unsigned int ie=0; ie < ne; ie++) {
    int j = rand()%poolsize;
    while(used[j]==1){
      j = rand()%poolsize;    
    }
    ve[ie] = pool[j];
    used[j]=1;
  }

}

//_________________________________________________________________________________
void AliAnalysisTaskMultiDielectronTG::RejectPairs(vector<AliDielectronSingleTG*> e1, vector<AliDielectronSingleTG*> e2, Int_t idie){

  ////////////////////////////////////
  ///// to reject pairs from track arrays 
  ///// conversions, ghost ..
  ///////////////////////////////////
  if(e1.size()>0 && e2.size()>0){
    for(int i1=0; i1<(int)e1.size(); i1++){
      for(int i2=0; i2<(int)e2.size(); i2++){
	if(fRejectPairFlag[idie]==1){
	  Double_t cosine = GetOpeningAngle(e1[i1], e2[i2]);
	  if(cosine<fdop){
	    e1[i1]->SetConvFlag(0);
	    e2[i2]->SetConvFlag(0);
	  }
	}else if(fRejectPairFlag[idie]==2){
	  Double_t phiv = GetPhiv(e1[i1], e2[i2]);
	  Double_t mee = GetMass(e1[i1], e2[i2]);
	  if(fbz>0 && ( phiv>fdconvphiv && mee < fdconvMee) ){
	    e1[i1]->SetConvFlag(0);
	    e2[i2]->SetConvFlag(0);
	  }else if(fbz<0 && phiv<acos(-1.0)-fdconvphiv && mee < fdconvMee){
	    e1[i1]->SetConvFlag(0);
	    e2[i2]->SetConvFlag(0);
	  }
	}
      }
    }
  }
  if(e1.size()>0){
    for(int i1=0; i1<(int)e1.size(); i1++){
      for(int i2=i1+1; i2<(int)e1.size(); i2++){
	if(fRejectPairFlag[idie]==1){
	  Double_t cosine = GetOpeningAngle(e1[i1], e1[i2]);
	  if(cosine<fdop){
	    e1[i1]->SetConvFlag(0);
	    e1[i2]->SetConvFlag(0);
	  }
	}else if(fRejectPairFlag[idie]==2){
	  Double_t phiv = GetPhiv(e1[i1], e1[i2]);
	  Double_t mee = GetMass(e1[i1], e1[i2]);
	  if(fbz>0 && phiv>fdconvphiv && mee < fdconvMee){
	    e1[i1]->SetConvFlag(0);
	    e1[i2]->SetConvFlag(0);
	  }else if(fbz<0 && phiv<acos(-1.0)-fdconvphiv && mee < fdconvMee){
	    e1[i1]->SetConvFlag(0);
	    e1[i2]->SetConvFlag(0);
	  }
	}
      }
    }
  }

  if(e2.size()>0){
    for(int i1=0; i1<(int)e2.size(); i1++){
      for(int i2=i1+1; i2<(int)e2.size(); i2++){
	if(fRejectPairFlag[idie]==1){
	  Double_t cosine = GetOpeningAngle(e2[i1], e2[i2]);
	  if(cosine<fdop){
	    e2[i1]->SetConvFlag(0);
	    e2[i2]->SetConvFlag(0);
	  }
	}else if(fRejectPairFlag[idie]==2){
	  Double_t phiv = GetPhiv(e2[i1], e2[i2]);
	  Double_t mee = GetMass(e2[i1], e2[i2]);
	  if(fbz>0 && phiv>fdconvphiv && mee < fdconvMee){
	    e2[i1]->SetConvFlag(0);
	    e2[i2]->SetConvFlag(0);
	  }else if(fbz<0 && phiv<acos(-1.0)-fdconvphiv && mee < fdconvMee){
	    e2[i1]->SetConvFlag(0);
	    e2[i2]->SetConvFlag(0);
	  }
	}
      }
    }
  }
}


//_________________________________________________________________________________
Double_t AliAnalysisTaskMultiDielectronTG::GetOpeningAngle(AliDielectronSingleTG* e1, AliDielectronSingleTG* e2){

  //////////////////////
  //////// calculate pairs and get opening angle 
  //////////////////////

  double dmass, dphiv, dpxpair, dpypair, dpzpair;
  double dptpair, depair, dphipair, detapair, dcos, dpsi;

  CalcVars(e1, e2, dmass, dphiv, dpxpair, dpypair, dpzpair, 
            dptpair, depair, dphipair, detapair, dcos, dpsi);

  return dcos;
}

//_________________________________________________________________________________
Double_t AliAnalysisTaskMultiDielectronTG::GetPhiv(AliDielectronSingleTG* e1, AliDielectronSingleTG* e2){

  //////////////////////
  //////// calculate pairs and get phiv
  //////////////////////

  double dmass, dphiv, dpxpair, dpypair, dpzpair;
  double dptpair, depair, dphipair, detapair, dcos, dpsi;

  CalcVars(e1, e2, dmass, dphiv, dpxpair, dpypair, dpzpair, 
            dptpair, depair, dphipair, detapair, dcos, dpsi);

  return dphiv;
}

//_________________________________________________________________________________
Double_t AliAnalysisTaskMultiDielectronTG::GetMass(AliDielectronSingleTG* e1, AliDielectronSingleTG* e2){

  //////////////////////
  //////// calculate pairs and get mass
  //////////////////////

  double dmass, dphiv, dpxpair, dpypair, dpzpair;
  double dptpair, depair, dphipair, detapair, dcos, dpsi;
  
  CalcVars(e1, e2, dmass, dphiv, dpxpair, dpypair, dpzpair, 
            dptpair, depair, dphipair, detapair, dcos, dpsi);

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