ROOT logo
//
// Dijet response analysis task.
//
// Author: M.Verweij

#include <TClonesArray.h>
#include <TH1F.h>
#include <TH2F.h>
#include <TH3F.h>
#include <THnSparse.h>
#include <TList.h>
#include <TLorentzVector.h>
#include <TProfile.h>
#include <TChain.h>
#include <TSystem.h>
#include <TFile.h>
#include <TKey.h>

#include "AliVCluster.h"
#include "AliVTrack.h"
#include "AliEmcalJet.h"
#include "AliRhoParameter.h"
#include "AliLog.h"
#include "AliEmcalParticle.h"
#include "AliMCEvent.h"
#include "AliGenPythiaEventHeader.h"
#include "AliAODMCHeader.h"
#include "AliMCEvent.h"
#include "AliAnalysisManager.h"
#include "AliJetContainer.h"

#include "AliAnalysisTaskEmcalDiJetResponse.h"

ClassImp(AliAnalysisTaskEmcalDiJetResponse)

//________________________________________________________________________
AliAnalysisTaskEmcalDiJetResponse::AliAnalysisTaskEmcalDiJetResponse() : 
  AliAnalysisTaskEmcalDiJetBase("AliAnalysisTaskEmcalDiJetResponse"),
  fDoMatchFullCharged(kTRUE),
  fhnDiJetResponseCharged(0),
  fhnDiJetResponseFullCharged(0),
  fh1TriggersLostCharged(0),
  fh1TriggersLostFull(0),
  fh3AssocLostPtDeltaPhiCharged(0),
  fh3AssocLostPtDeltaPhiFull(0),
  fhnMatchingCharged(0),
  fhnMatchingFull(0),
  fnUsedResponseVar(0)
{
  // Default constructor.
  
  SetMakeGeneralHistograms(kTRUE);

  for(Int_t i = 0; i<2; i++) {
    fh1TriggersCharged[i] = 0;
    fh1TriggersFull[i] = 0;
  }

}

//________________________________________________________________________
AliAnalysisTaskEmcalDiJetResponse::AliAnalysisTaskEmcalDiJetResponse(const char *name) : 
  AliAnalysisTaskEmcalDiJetBase(name),
  fDoMatchFullCharged(kTRUE),
  fhnDiJetResponseCharged(0),
  fhnDiJetResponseFullCharged(0),
  fh1TriggersLostCharged(0),
  fh1TriggersLostFull(0),
  fh3AssocLostPtDeltaPhiCharged(0),
  fh3AssocLostPtDeltaPhiFull(0),
  fhnMatchingCharged(0),
  fhnMatchingFull(0),
  fnUsedResponseVar(0)
{
  // Standard constructor.

  SetMakeGeneralHistograms(kTRUE);

  for(Int_t i = 0; i<2; i++) {
    fh1TriggersCharged[i] = 0;
    fh1TriggersFull[i] = 0;
  }

}

//________________________________________________________________________
AliAnalysisTaskEmcalDiJetResponse::~AliAnalysisTaskEmcalDiJetResponse()
{
  // Destructor.
}


//________________________________________________________________________
void AliAnalysisTaskEmcalDiJetResponse::UserCreateOutputObjects()
{
  // Create user output.

  AliAnalysisTaskEmcalDiJetBase::UserCreateOutputObjects();

  Bool_t oldStatus = TH1::AddDirectoryStatus();
  TH1::AddDirectory(kFALSE);

  //Store dijet vars: pt,trig MC, pt,trig DET, pt,ass MC, pt,ass DET, dPhi MC, dPhi Det, kT MC, kT Det 
  const Int_t nBinsSparse0 = 10;
  const Int_t nBinsPt = 250;
  const Int_t nBinsDPhi     = 36;
  const Int_t nBinsKt       = 25;
  const Int_t nBinsDiJetEta = 40;
  const Int_t nBinsAj       = 50;
  const Int_t nBinsVar[2] = {nBinsKt,nBinsDiJetEta};

  const Int_t nBins0[nBinsSparse0] = {nBinsPt,nBinsPt,nBinsPt,nBinsPt,nBinsDPhi,nBinsDPhi,nBinsVar[fnUsedResponseVar],nBinsVar[fnUsedResponseVar],nBinsAj,nBinsAj};

  const Double_t minPt = 0.;
  const Double_t maxPt = 250.;
  const Double_t minVar[2] = {   0.,-1.};
  const Double_t maxVar[2] = { 100., 1.};

  const Double_t xmin0[nBinsSparse0]  = {  minPt, minPt, minPt, minPt, 0.5*TMath::Pi(), 0.5*TMath::Pi(), minVar[fnUsedResponseVar], minVar[fnUsedResponseVar],0.,0.};
  const Double_t xmax0[nBinsSparse0]  = {  maxPt, maxPt, maxPt, maxPt, 1.5*TMath::Pi(), 1.5*TMath::Pi(), maxVar[fnUsedResponseVar], maxVar[fnUsedResponseVar],1.,1.};

  fhnDiJetResponseCharged = new THnSparseF("fhnDiJetResponseCharged","fhnDiJetResponseCharged;p_{T,trig}^{part};p_{T,trig}^{det};p_{T,ass}^{part};p_{T,ass}^{det};#Delta#varphi_{part};#Delta#varphi_{det};k_{T}^{part},k_{T}^{det};A_{j}^{part}A_{j}^{det}",nBinsSparse0,nBins0,xmin0,xmax0);

  fhnDiJetResponseFullCharged = new THnSparseF("fhnDiJetResponseFullCharged","fhnDiJetResponseFullCharged;p_{T,trig}^{part};p_{T,trig}^{det};p_{T,ass}^{part};p_{T,ass}^{det};#Delta#varphi_{part};#Delta#varphi_{det};k_{T}^{part},k_{T}^{det};A_{j}^{part}A_{j}^{det}",nBinsSparse0,nBins0,xmin0,xmax0);

  if(fnUsedResponseVar==1) {
    fhnDiJetResponseCharged->SetTitle("fhnDiJetResponseCharged DiJetEta"); 
    fhnDiJetResponseCharged->GetAxis(6)->SetTitle("#eta_{dijet}^{part}");
    fhnDiJetResponseCharged->GetAxis(7)->SetTitle("#eta_{dijet}^{det}");

    fhnDiJetResponseFullCharged->SetTitle("fhnDiJetResponseFullCharged DiJetEta"); 
    fhnDiJetResponseFullCharged->GetAxis(6)->SetTitle("#eta_{dijet}^{part}");
    fhnDiJetResponseFullCharged->GetAxis(7)->SetTitle("#eta_{dijet}^{det}");
  }

  fOutput->Add(fhnDiJetResponseCharged);
  fOutput->Add(fhnDiJetResponseFullCharged);

  TString strType = "";
  for(Int_t i = 0; i<2; i++) {
    if(i==0)      strType="Part";
    else if(i==1) strType="Det";
    fh1TriggersCharged[i] = new TH1F(Form("fh1TriggersCharged%s",strType.Data()),Form("fh1TriggersCharged%s;p_{T,trig}^{ch}",strType.Data()),nBinsPt,minPt,maxPt);
    fOutput->Add(fh1TriggersCharged[i]);
  
    fh1TriggersFull[i] = new TH1F(Form("fh1TriggersFull%s",strType.Data()),Form("fh1TriggersFull%s;p_{T,trig}^{ch}",strType.Data()),nBinsPt,minPt,maxPt);
    fOutput->Add(fh1TriggersFull[i]);
  }

  fh1TriggersLostCharged = new TH1F("fh1TriggersLostCharged","fh1TriggersLostCharged;p_{T,trig}^{ch}",nBinsPt,minPt,maxPt);
  fOutput->Add(fh1TriggersLostCharged);

  fh1TriggersLostFull = new TH1F("fh1TriggersLostFull","fh1TriggersLostFull;p_{T,trig}^{ch}",nBinsPt,minPt,maxPt);
  fOutput->Add(fh1TriggersLostFull);

  fh3AssocLostPtDeltaPhiCharged = new TH3F("fh3AssocLostPtDeltaPhiCharged","fh3AssocLostPtDeltaPhiCharged;p_{T,trig}^{ch};p_{T,assoc}^{ch};#Delta#varphi",nBinsPt,minPt,maxPt,nBinsPt,minPt,maxPt,nBinsDPhi,-0.5*TMath::Pi(),1.5*TMath::Pi());
  fOutput->Add(fh3AssocLostPtDeltaPhiCharged);

  fh3AssocLostPtDeltaPhiFull = new TH3F("fh3AssocLostPtDeltaPhiFull","fh3AssocLostPtDeltaPhiFull;p_{T,trig}^{ch};p_{T,assoc}^{ch};#Delta#varphi",nBinsPt,minPt,maxPt,nBinsPt,minPt,maxPt,nBinsDPhi,-0.5*TMath::Pi(),1.5*TMath::Pi());
  fOutput->Add(fh3AssocLostPtDeltaPhiFull);

  const Int_t nBinsSparseMatch = 6;
  const Int_t nBinsDPhiMatch = 80;
  const Int_t nBinsDEtaMatch = 80;
  const Int_t nBinsDR = 20;
  const Int_t nBinsType = 3;
  const Int_t nBinsMatch[nBinsSparseMatch] = {nBinsPt,nBinsPt,nBinsDPhiMatch,nBinsDEtaMatch,nBinsDR,nBinsType};
  //pTpart, pTdet, deltaPhi, deltaEta, deltaR, jet type (leading,subleading,other)
  const Double_t xminMatch[nBinsSparseMatch]  = { minPt, minPt, -0.5,-0.5, 0., 0};
  const Double_t xmaxMatch[nBinsSparseMatch]  = { maxPt, maxPt,  0.5, 0.5, 0.5,3};
  fhnMatchingCharged = new THnSparseF("fhnMatchingCharged","fhnMatchingCharged;#it{p}_{T,part} (GeV/#it{c});#it{p}_{T,det} (GeV/#it{c});#Delta#varphi;#Delta#eta;#Delta R;type",
					  nBinsSparseMatch,nBinsMatch,xminMatch,xmaxMatch);
  fOutput->Add(fhnMatchingCharged);

  fhnMatchingFull = new THnSparseF("fhnMatchingFull","fhnMatchingFull;#it{p}_{T,part} (GeV/#it{c});#it{p}_{T,det} (GeV/#it{c});#Delta#varphi;#Delta#eta;#Delta R;type",
					  nBinsSparseMatch,nBinsMatch,xminMatch,xmaxMatch);
  fOutput->Add(fhnMatchingFull);


  // =========== Switch on Sumw2 for all histos ===========
  for (Int_t i=0; i<fOutput->GetEntries(); ++i) {
    TH1 *h1 = dynamic_cast<TH1*>(fOutput->At(i));
    if (h1){
      h1->Sumw2();
      continue;
    }
    THnSparse *hn = dynamic_cast<THnSparse*>(fOutput->At(i));
    if(hn)hn->Sumw2();
  }

  TH1::AddDirectory(oldStatus);

  PostData(1, fOutput); // Post data for ALL output slots > 0 here.
}

//________________________________________________________________________
Bool_t AliAnalysisTaskEmcalDiJetResponse::Run()
{
  // Run analysis code here, if needed. It will be executed before FillHistograms().
      
  //Check if event is selected (vertex & pile-up)
  if(!SelectEvent())
    return kFALSE;

  if(fRhoType==0) {
    fRhoFullVal = 0.;
    fRhoChVal = 0.;
  }
  if(fRhoType==1) {
    fRhoFullVal = GetRhoVal(fContainerFull);
    fRhoChVal = GetRhoVal(fContainerCharged);
  }
  

  //Do matching
  MatchJetsGeo(fContainerCharged,fContainerChargedMC,0,0.3,1);
  MatchJetsGeo(fContainerFull,fContainerFullMC,0,0.3,2);

  //Fill particle-detector level matching histos
  
  if(fDoChargedCharged)   CorrelateJets(1);

  if(fDoFullCharged) {
    SetChargedFractionIndexMC();
    CorrelateJets(2);
  }
  
  return kTRUE;  // If return kFALSE FillHistogram() will NOT be executed.
}

//________________________________________________________________________
void AliAnalysisTaskEmcalDiJetResponse::CorrelateJets(const Int_t type) {
  //
  // Correlate jets and fill histos
  //

  if( fJetCorrelationType==kCorrelateAll )
    CorrelateAllJets(type);
  else if( fJetCorrelationType==kCorrelateTwo )
    CorrelateTwoJets(type);
  else if( fJetCorrelationType==kCorrelateLS )
    AliWarning(Form("%s: leading-subleading correlation not implemented for response!",GetName()));

  return;

}


//________________________________________________________________________
void AliAnalysisTaskEmcalDiJetResponse::CorrelateAllJets(const Int_t type) {
  //
  // Correlate jets and fill histos
  //

  Int_t typet = 0;
  Int_t typetMC = 0;
  Int_t typeaMC = 0;
  if(type==0) { //full-full
    typetMC = fContainerFullMC;
    typeaMC = fContainerFullMC;
    typet = fContainerFull;
  }
  else if(type==1) { //charged-charged
    typetMC = fContainerChargedMC;
    typeaMC = fContainerChargedMC;
    typet = fContainerCharged;
  }
  else if(type==2) { //full-charged
    typetMC = fContainerFullMC;
    typeaMC = fContainerChargedMC;
    typet = fContainerFull;
  }
  else {
    AliWarning(Form("%s: type %d of dijet correlation not defined!",GetName(),type));
    return;
  }

  Int_t nJetsTrig  = 0;
  Int_t nJetsAssoc = 0;
  if(type==0) {
    nJetsTrig  = GetNJets(fContainerFullMC);
    nJetsAssoc = nJetsTrig;
  }
  else if(type==1) {
    nJetsTrig  = GetNJets(fContainerChargedMC);
    nJetsAssoc = nJetsTrig;
  }
  else if(type==2) {
    nJetsTrig  = GetNJets(fContainerFullMC);
    nJetsAssoc = GetNJets(fContainerChargedMC);
  }


  for(Int_t ijt=0; ijt<nJetsTrig; ijt++) {

    AliEmcalJet *jetTrigMC = static_cast<AliEmcalJet*>(GetAcceptJetFromArray(ijt, typetMC));
    if(!jetTrigMC) continue; //jet not selected

    Double_t jetTrigPtMC = GetJetPt(jetTrigMC,typetMC);

    if(jetTrigPtMC<fPtMinTriggerJet)
      continue;

    if(type==1)
      fh1TriggersCharged[0]->Fill(jetTrigPtMC);
    if(type==2)
      fh1TriggersFull[0]->Fill(jetTrigPtMC);

    AliEmcalJet *jetTrigDet = jetTrigMC->ClosestJet();
    if(!jetTrigDet) {
      //trigger is lost
      if(type==1)
	fh1TriggersLostCharged->Fill(jetTrigPtMC);
      if(type==2)
	fh1TriggersLostFull->Fill(jetTrigPtMC);
      
      continue;
    }

    if(type==1)
      fh1TriggersCharged[1]->Fill(GetJetPt(jetTrigDet,typet));
    if(type==2)
      fh1TriggersFull[1]->Fill(GetJetPt(jetTrigDet,typet));

    for(Int_t ija=0; ija<nJetsAssoc; ija++) {
      if(IsSameJet(ijt,ija,type,kTRUE)) continue;

      AliEmcalJet *jetAssocMC = static_cast<AliEmcalJet*>(GetAcceptJetFromArray(ija, typeaMC));
      if(!jetAssocMC) continue;

      Double_t jetAssocPtMC = GetJetPt(jetAssocMC,typeaMC);

      //Now check if jets are also there on detector level
      AliEmcalJet *jetAssocDet = jetAssocMC->ClosestJet();
      if(!jetAssocDet) {
	//dijet is lost
      if(type==1)
	fh3AssocLostPtDeltaPhiCharged->Fill(jetTrigPtMC,jetAssocPtMC,GetDeltaPhi(jetTrigMC,jetAssocMC));
      if(type==2)
	fh3AssocLostPtDeltaPhiFull->Fill(jetTrigPtMC,jetAssocPtMC,GetDeltaPhi(jetTrigMC,jetAssocMC));
	continue;
      }

      FillDiJetResponse(jetTrigMC,jetAssocMC,jetTrigDet,jetAssocDet,type);

    } // associate jet loop
  }//trigger jet loop

}

//________________________________________________________________________
void AliAnalysisTaskEmcalDiJetResponse::CorrelateTwoJets(const Int_t type) {
  //
  // Correlate jets and fill histos
  //

  Int_t typet = 0;
  Int_t typea = 0;
  Int_t typetMC = 0;
  Int_t typeaMC = 0;
  if(type==0) { //full-full
    typetMC = fContainerFullMC;
    typeaMC = fContainerFullMC;
    typet = fContainerFull;
    typea = fContainerFull;
  }
  else if(type==1) { //charged-charged
    typetMC = fContainerChargedMC;
    typeaMC = fContainerChargedMC;
    typet = fContainerCharged;
    typea = fContainerCharged;
  }
  else if(type==2) { //full-charged
    typetMC = fContainerFullMC;
    typeaMC = fContainerChargedMC;
    typet = fContainerFull;
    typea = fContainerCharged;
  }
  else {
    AliWarning(Form("%s: type %d of dijet correlation not defined!",GetName(),type));
    return;
  }

  Int_t nJetsTrig  = 0;
  if(type==0) {
    nJetsTrig  = GetNJets(fContainerFullMC);
  }
  else if(type==1) {
    nJetsTrig  = GetNJets(fContainerChargedMC);
  }
  else if(type==2) {
    nJetsTrig  = GetNJets(fContainerFullMC);
  }

  for(Int_t ijt=0; ijt<nJetsTrig; ijt++) {

    AliEmcalJet *jetTrigMC = static_cast<AliEmcalJet*>(GetAcceptJetFromArray(ijt, typetMC));
    if(!jetTrigMC) continue; //jet not selected

    Double_t jetTrigPtMC = GetJetPt(jetTrigMC,typetMC);

    if(jetTrigPtMC<fPtMinTriggerJet)
      continue;

    if(type==1)
      fh1TriggersCharged[0]->Fill(jetTrigPtMC);
    if(type==2)
      fh1TriggersFull[0]->Fill(jetTrigPtMC);

    AliEmcalJet *jetTrigDet = jetTrigMC->ClosestJet();
    if(!jetTrigDet) {
      //trigger is lost
      if(type==1)
	fh1TriggersLostCharged->Fill(jetTrigPtMC);
      if(type==2)
	fh1TriggersLostFull->Fill(jetTrigPtMC);
      continue;
    }

    if(type==1)
      fh1TriggersCharged[1]->Fill(GetJetPt(jetTrigDet,typet));
    if(type==2)
      fh1TriggersFull[1]->Fill(GetJetPt(jetTrigDet,typet));


    AliEmcalJet *jetAssocMC = GetLeadingJetOppositeHemisphere(type,typeaMC,jetTrigMC);
    if(!jetAssocMC) continue;

    Double_t jetAssocPtMC = GetJetPt(jetAssocMC,typeaMC);
      
    //Now check if jets are also there on detector level
    AliEmcalJet *jetAssocDet = jetAssocMC->ClosestJet();
    if(!jetAssocDet) {
      //dijet is lost
      if(type==1)
	fh3AssocLostPtDeltaPhiCharged->Fill(jetTrigPtMC,jetAssocPtMC,GetDeltaPhi(jetTrigMC,jetAssocMC));
      if(type==2)
	fh3AssocLostPtDeltaPhiFull->Fill(jetTrigPtMC,jetAssocPtMC,GetDeltaPhi(jetTrigMC,jetAssocMC));
      continue;
    }

    if(fDoPtBias) {
      if(type==0 || type==1) {
	if(GetJetPt(jetAssocDet,typea)>GetJetPt(jetTrigDet,typet))
	  continue;
      }
    }

    FillDiJetResponse(jetTrigMC,jetAssocMC,jetTrigDet,jetAssocDet,type);


  }//trigger jet loop

}

//________________________________________________________________________
void AliAnalysisTaskEmcalDiJetResponse::FillDiJetResponse(const AliEmcalJet *jetTrigMC, const AliEmcalJet *jetAssocMC, const AliEmcalJet *jetTrigDet, const AliEmcalJet *jetAssocDet, Int_t type) {

  //Fill dijet response

  Int_t typet = 0;
  Int_t typea = 0;
  Int_t typetMC = 0;
  Int_t typeaMC = 0;
  if(type==0) { //full-full
    typetMC = fContainerFullMC;
    typeaMC = fContainerFullMC;
    typet = fContainerFull;
    typea = fContainerFull;
  }
  else if(type==1) { //charged-charged
    typetMC = fContainerChargedMC;
    typeaMC = fContainerChargedMC;
    typet = fContainerCharged;
    typea = fContainerCharged;
  }
  else if(type==2) { //full-charged
    typetMC = fContainerFullMC;
    typeaMC = fContainerChargedMC;
    typet = fContainerFull;
    typea = fContainerCharged;
  }
  else {
    AliWarning(Form("%s: type %d of dijet correlation not defined!",GetName(),type));
    return;
  }

  Double_t jetTrigPtMC  = GetJetPt(jetTrigMC,typetMC);
  Double_t jetAssocPtMC = GetJetPt(jetAssocMC,typeaMC);

  Double_t varDet[2] = {TMath::Abs(GetJetPt(jetTrigDet,typet)*TMath::Sin(GetDeltaPhi(jetTrigDet,jetAssocDet))),(jetTrigDet->Eta()+jetAssocDet->Eta())/2.};
  Double_t varPart[2] = {TMath::Abs(jetTrigPtMC*TMath::Sin(GetDeltaPhi(jetTrigMC,jetAssocMC))),(jetTrigMC->Eta()+jetAssocMC->Eta())/2.};

  Double_t ajDet  = (GetJetPt(jetTrigDet,typet)-GetJetPt(jetAssocDet,typea))/(GetJetPt(jetTrigDet,typet)+GetJetPt(jetAssocDet,typea));
  Double_t ajPart = (jetTrigPtMC-jetAssocPtMC)/(jetTrigPtMC+jetAssocPtMC);

  //Store dijet vars: pt,trig MC; pt,trig DET; pt,ass MC; pt,ass DET; dPhi MC; dPhi Det; kT MC; kT Det;
  Double_t diJetVars[10] = {
    jetTrigPtMC,
    GetJetPt(jetTrigDet,typet),
    jetAssocPtMC,
    GetJetPt(jetAssocDet,typea),
    GetDeltaPhi(jetTrigMC,jetAssocMC),
    GetDeltaPhi(jetTrigDet,jetAssocDet),
    varPart[fnUsedResponseVar],
    varDet[fnUsedResponseVar],
    ajDet,
    ajPart
  }; 
  
  if(type==1)
    fhnDiJetResponseCharged->Fill(diJetVars);
  else if(type==2)
    fhnDiJetResponseFullCharged->Fill(diJetVars);


}

//________________________________________________________________________
void AliAnalysisTaskEmcalDiJetResponse::FillMatchHistos() {
  //
  // Fill Particle-Detector level matching histos
  //

  for(int i = 0; i < GetNJets(fContainerFull);++i) {
    AliEmcalJet *jetDet = static_cast<AliEmcalJet*>(GetAcceptJetFromArray(i, fContainerFull));
    if(!jetDet) continue;

    AliEmcalJet *jetPart = jetDet->ClosestJet();
    if(!jetPart) continue;

    Double_t matchVars[6] = {
      jetPart->Pt(),
      jetDet->Pt(),
      GetDeltaPhi(jetPart->Phi(),jetDet->Phi()),
      jetPart->Eta()-jetDet->Eta(),
      GetDeltaR(jetPart,jetDet),
      TMath::Min((Float_t)i+0.5,2.5)
    };
    fhnMatchingFull->Fill(matchVars);

  }//loop over full jets

  for(int i = 0; i < GetNJets(fContainerCharged);++i) {
    AliEmcalJet *jetDet = static_cast<AliEmcalJet*>(GetAcceptJetFromArray(i, fContainerCharged));
    if(!jetDet) continue;

    AliEmcalJet *jetPart = jetDet->ClosestJet();
    if(!jetPart) continue;

    Double_t matchVars[6] = {
      jetPart->Pt(),
      jetDet->Pt(),
      GetDeltaPhi(jetPart->Phi(),jetDet->Phi()),
      jetPart->Eta()-jetDet->Eta(),
      GetDeltaR(jetPart,jetDet),
      TMath::Min((Float_t)i+0.5,2.5)
    };
    fhnMatchingCharged->Fill(matchVars);

  }//loop over charged jets

}


//________________________________________________________________________
Bool_t AliAnalysisTaskEmcalDiJetResponse::RetrieveEventObjects() {
  //
  // retrieve event objects
  //

  if (!AliAnalysisTaskEmcalDiJetBase::RetrieveEventObjects())
    return kFALSE;

  return kTRUE;

}

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