ROOT logo
// **************************************
// Full pp jet task - ESD input only
// Extract the jet spectrum and all the 
// systematic uncertainties
// -R. Ma, Mar 2011
// **************************************

#include <TCanvas.h>
#include <TChain.h>
#include <TFormula.h>
#include <TH1.h>
#include <TH2.h>
#include <TH3.h>
#include <TProfile2D.h>
#include <THnSparse.h>
#include <TROOT.h>
#include <TTree.h>
#include <TArrayI.h>
#include <TClonesArray.h>
#include <TRandom3.h>
#include <TFile.h>
#include <TF1.h>

#include "AliAODEvent.h"
#include "AliAODInputHandler.h"
#include "AliAnalysisManager.h"
#include "AliAnalysisTask.h"
#include "AliCentrality.h"
#include "AliAnalysisTaskFullppJet.h"
#include "AliESDEvent.h"
#include "AliESDInputHandler.h"
#include "AliESDtrackCuts.h"
#include "AliVParticle.h"
#include "AliInputEventHandler.h"
#include "AliEMCALGeometry.h"
#include "AliEMCALRecoUtils.h"
#include "TGeoManager.h"
#include "AliMCEvent.h"
#include "AliMCParticle.h"
#include "AliStack.h"
#include "AliGenEventHeader.h"
#include "AliGenPythiaEventHeader.h"
#include "TGeoGlobalMagField.h"

#include "AliAODJet.h"
#include "AliFJWrapper.h"

#include <iostream>
using std::cout;
using std::cerr;
using std::endl;
using std::vector;

ClassImp(AliAnalysisTaskFullppJet)

const Float_t kRadius[3] = {0.4,0.2,0.3};
const Double_t kPI = TMath::Pi();
const Double_t kdRCut[3] = {0.25,0.1,0.15};

//________________________________________________________________________
AliAnalysisTaskFullppJet::AliAnalysisTaskFullppJet() : 
  AliAnalysisTaskSE("default"), 
  fVerbosity(0), fEDSFileCounter(0), fNTracksPerChunk(0), fRejectPileup(kFALSE), fRejectExoticTrigger(kTRUE),
  fAnaType(0), fPeriod("lhc11a"), fESD(0), fAOD(0), fMC(0), fStack(0), fTrackArray(0x0), fClusterArray(0x0), fMcPartArray(0x0),
  fIsMC(kFALSE), fPhySelForMC(kFALSE), fChargedMC(kFALSE), fXsecScale(0.),
  fCentrality(99), fZVtxMax(10), 
  fTriggerType(-1), fCheckTriggerMask(kTRUE), fIsTPCOnlyVtx(kFALSE),
  fIsExoticEvent3GeV(kFALSE), fIsExoticEvent5GeV(kFALSE), fIsEventTriggerBit(kFALSE), fOfflineTrigger(kFALSE), fTriggerMask(0x0),
  fGeom(0x0), fRecoUtil(0x0),
  fEsdTrackCuts(0x0), fHybridTrackCuts1(0x0), fHybridTrackCuts2(0x0),fTrackCutsType(0), fKinCutType(0), fTrkEtaMax(0.9),
  fdEdxMin(73), fdEdxMax(90), fEoverPMin(0.8), fEoverPMax(1.2),
  fMatchType(0), fRejectExoticCluster(kTRUE), fRemoveBadChannel(kFALSE), fUseGoodSM(kFALSE),
  fStudySubEInHC(kFALSE), fStudyMcOverSubE(kFALSE),
  fElectronRejection(kFALSE), fHadronicCorrection(kFALSE), fFractionHC(0.), fHCLowerPtCutMIP(1e4), fClusterEResolution(0x0),
  fJetNEFMin(0.01), fJetNEFMax(0.98),
  fSpotGoodJet(kFALSE), fFindChargedOnlyJet(kFALSE), fFindNeutralOnlyJet(kFALSE),
  fCheckTrkEffCorr(kFALSE), fTrkEffCorrCutZ(0.3), fRandomGen(0x0), fRunUE(0), fCheckTPCOnlyVtx(0), fRunSecondaries(0),
  fSysJetTrigEff(kFALSE), fVaryJetTrigEff(0), 
  fSysTrkPtRes(kFALSE), fVaryTrkPtRes(0), fSysTrkEff(kFALSE), fVaryTrkEff(0.), 
  fSysTrkClsMth(kFALSE), fCutdEta(0.05), fCutdPhi(0.05),
  fSysNonLinearity(kFALSE), fNonLinear(0x0), fSysClusterEScale(kFALSE), fVaryClusterEScale(0), fSysClusterERes(kFALSE), fVaryClusterERes(0),
  fSysClusterizer(0),
  fNonStdBranch(""), fNonStdFile(""), fAlgorithm("aKt"), fRadius("0.4"), fRecombinationScheme(5),
  fConstrainChInEMCal(kFALSE), fRejectNK(kFALSE), fRejectWD(kFALSE), fSmearMC(kFALSE), fTrkPtResData(0x0),
  fOutputList(0x0), fSaveQAHistos(kTRUE), fhJetEventCount(0x0), fhJetEventStat(0x0), fhEventStatTPCVtx(0x0), fhChunkQA(0x0)
{
  // Constructor

  // Define input and output slots here
  // Input slot #0 works with a TChain
  DefineInput(0, TChain::Class());
  DefineOutput(1, TList::Class());
  // Output slot #0 id reserved by the base class for AOD
  for(Int_t i=0; i<2; i++)
    {
      fTrkPtMin[i] = 0.15;
      fTrkPtMax[i] = 200;
      fClsEtMin[i] = 0.15;
      fClsEtMax[i] = 200;

      fVertexGenZ[i]       = 0x0;
      fEventZ[i]           = 0x0;
      fhNTrials[i]         = 0x0;
      fhNMatchedTrack[i]   = 0x0;
      fhClsE[i]            = 0x0;
      for(Int_t k=0; k<2; k++)
	{
	  fhSysClusterE[i][k]     = 0x0;
	  fhSysNCellVsClsE[i][k]  = 0x0;
	}
    }

  for(Int_t r=0; r<kNRadii; r++)
    {
      for(Int_t j=0; j<5; j++)
	{
	  fHCOverSubE[r][j]       = 0x0;
	  fHCOverSubEFrac[r][j]   = 0x0;
	  for(Int_t k=0; k<2; k++)
	    {
	      fhSubClsEVsJetPt[k][r][j] = 0x0;
	      fhHCTrkPtClean[k][r][j]   = 0x0;
	      fhHCTrkPtAmbig[k][r][j]   = 0x0;
	    }

	  if(j<4) fhSubEVsTrkPt[r][j] = 0x0; 

	  if(j<3)
	    {
	      fJetCount[j][r]          = 0x0;
	      fhNeutralPtInJet[j][r]   = 0x0;
	      fhTrigNeuPtInJet[j][r]   = 0x0;
	      fhChargedPtInJet[j][r]   = 0x0;
	      fhLeadNePtInJet[j][r]    = 0x0;
	      fhLeadChPtInJet[j][r]    = 0x0;
	      fJetEnergyFraction[j][r] = 0x0;
	      fJetNPartFraction[j][r]  = 0x0;
	    }
	  if(j<2)
	    {
	      fRelTrkCon[j][r]         = 0x0;
	      fhFcrossVsZleading[j][r] = 0x0;
	      fhChLeadZVsJetPt[j][r]   = 0x0;
	      fhJetPtWithTrkThres[j][r]= 0x0;
	      fhJetPtWithClsThres[j][r]= 0x0;
	      for(Int_t k=0; k<2; k++)
		{
		  fhJetPtVsLowPtCons[j][r][k] = 0x0;
		}
	      fhJetPtInExoticEvent[j][r] = 0x0;
	      fhJetInTPCOnlyVtx[j][r]  = 0x0;
	      fhCorrTrkEffPtBin[j][r] = 0x0;
	      for(Int_t i=0; i<kNBins; i++)
		{
		  fhCorrTrkEffSample[j][r][i] = 0x0;
		}
	    }

	  if(r==0 && j<3)
	    {
	      for(Int_t k=0; k<2; k++)
		{
		  for(Int_t l=0; l<2; l++)
		    {
		      fhUEJetPtNorm[j][k][l] = 0x0;
		      fhUEJetPtVsSumPt[j][k][l] = 0x0;
		      fhUEJetPtVsConsPt[j][k][l] = 0x0;
		    }
		}
	    }
	}
      for(Int_t i=0; i<2; i++)
	{
	  fhNKFracVsJetPt[i][r]     = 0x0;
	  fhWeakFracVsJetPt[i][r]   = 0x0;
	  fhJetResponseNK[i][r]     = 0x0;
	  fhJetResponseWP[i][r]     = 0x0;
	  fhJetResolutionNK[i][r]   = 0x0;
	  fhJetResolutionWP[i][r]   = 0x0;
	  fhJetResponseNKSM[i][r]   = 0x0;
	  fhJetResponseWPSM[i][r]   = 0x0;
	  fhJetResolutionNKSM[i][r] = 0x0;
	  fhJetResolutionWPSM[i][r] = 0x0;
	}
    }

  for(Int_t s=0; s<3; s++)
    {
      for(Int_t a=0; a<2; a++)
	{
	  for(Int_t r=0; r<kNRadii; r++)
	    {
	      fDetJetFinder[s][a][r] = 0x0;
	      fJetTCA[s][a][r] = 0x0;
	      if(s==0 && a==0)
		{
		  fTrueJetFinder[r] = 0x0;
		  fMcTruthAntikt[r] = 0x0;
		}
	    }
	}
    }

  for(Int_t j=0; j<3; j++)
    {
      fTrkEffFunc[j] = 0x0;
      fhSecondaryResponse[j] = 0x0;
    }
  for(Int_t i=0; i<10; i++)
    { 
      fTriggerCurve[i] = 0x0;
      fTriggerEfficiency[i] = 0x0; 
    }

}

//________________________________________________________________________
AliAnalysisTaskFullppJet::AliAnalysisTaskFullppJet(const char *name) : 
  AliAnalysisTaskSE(name), 
  fVerbosity(0), fEDSFileCounter(0), fNTracksPerChunk(0), fRejectPileup(kFALSE), fRejectExoticTrigger(kTRUE), 
  fAnaType(0), fPeriod("lhc11a"), fESD(0), fAOD(0), fMC(0), fStack(0), fTrackArray(0x0), fClusterArray(0x0), fMcPartArray(0x0),
  fIsMC(kFALSE), fPhySelForMC(kFALSE), fChargedMC(kFALSE), fXsecScale(0.),
  fCentrality(99), fZVtxMax(10), 
  fTriggerType(-1), fCheckTriggerMask(kTRUE), fIsTPCOnlyVtx(kFALSE),
  fIsExoticEvent3GeV(kFALSE), fIsExoticEvent5GeV(kFALSE), fIsEventTriggerBit(kFALSE), fOfflineTrigger(kFALSE), fTriggerMask(0x0),
  fGeom(0x0), fRecoUtil(0x0),
  fEsdTrackCuts(0x0), fHybridTrackCuts1(0x0), fHybridTrackCuts2(0x0), fTrackCutsType(0), fKinCutType(0), fTrkEtaMax(0.9),
  fdEdxMin(73), fdEdxMax(90), fEoverPMin(0.8), fEoverPMax(1.2),
  fMatchType(0), fRejectExoticCluster(kTRUE), fRemoveBadChannel(kFALSE), fUseGoodSM(kFALSE),
  fStudySubEInHC(kFALSE), fStudyMcOverSubE(kFALSE),
  fElectronRejection(kFALSE), fHadronicCorrection(kFALSE), fFractionHC(0.), fHCLowerPtCutMIP(1e4), fClusterEResolution(0x0),
  fJetNEFMin(0.01), fJetNEFMax(0.98),
  fSpotGoodJet(kFALSE), fFindChargedOnlyJet(kFALSE), fFindNeutralOnlyJet(kFALSE),
  fCheckTrkEffCorr(kFALSE), fTrkEffCorrCutZ(0.3), fRandomGen(0x0), fRunUE(0), fCheckTPCOnlyVtx(0), fRunSecondaries(0),
  fSysJetTrigEff(kFALSE), fVaryJetTrigEff(0), 
  fSysTrkPtRes(kFALSE), fVaryTrkPtRes(0), fSysTrkEff(kFALSE), fVaryTrkEff(0.), 
  fSysTrkClsMth(kFALSE), fCutdEta(0.05), fCutdPhi(0.05),
  fSysNonLinearity(kFALSE), fNonLinear(0x0), fSysClusterEScale(kFALSE), fVaryClusterEScale(0), fSysClusterERes(kFALSE), fVaryClusterERes(0),
  fSysClusterizer(0), 
  fNonStdBranch(""), fNonStdFile(""), fAlgorithm("aKt"), fRadius("0.4"), fRecombinationScheme(5),
  fConstrainChInEMCal(kFALSE), fRejectNK(kFALSE), fRejectWD(kFALSE), fSmearMC(kFALSE), fTrkPtResData(0x0),
  fOutputList(0x0), fSaveQAHistos(kTRUE), fhJetEventCount(0x0), fhJetEventStat(0x0), fhEventStatTPCVtx(0x0), fhChunkQA(0x0)
{
  // Constructor

  // Define input and output slots here
  // Input slot #0 works with a TChain
  DefineInput(0, TChain::Class());
  DefineOutput(1, TList::Class());
  // Output slot #0 id reserved by the base class for AOD
  for(Int_t i=0; i<2; i++)
    {
      fTrkPtMin[i] = 0.15;
      fTrkPtMax[i] = 200;
      fClsEtMin[i] = 0.15;
      fClsEtMax[i] = 200;

      fVertexGenZ[i]       = 0x0;
      fEventZ[i]           = 0x0;
      fhNTrials[i]         = 0x0;
      fhNMatchedTrack[i]   = 0x0;
      fhClsE[i]            = 0x0;
      for(Int_t k=0; k<2; k++)
	{
	  fhSysClusterE[i][k]     = 0x0;
	  fhSysNCellVsClsE[i][k]  = 0x0;
	}
    }

  for(Int_t r=0; r<kNRadii; r++)
    {
      for(Int_t j=0; j<5; j++)
	{
	  fHCOverSubE[r][j]       = 0x0;
	  fHCOverSubEFrac[r][j]   = 0x0;
	  for(Int_t k=0; k<2; k++)
	    {
	      fhSubClsEVsJetPt[k][r][j] = 0x0;
	      fhHCTrkPtClean[k][r][j]   = 0x0;
	      fhHCTrkPtAmbig[k][r][j]   = 0x0;
	    }

	  if(j<4) fhSubEVsTrkPt[r][j] = 0x0; 

	  if(j<3)
	    {
	      fJetCount[j][r]          = 0x0;
	      fhNeutralPtInJet[j][r]   = 0x0;
	      fhTrigNeuPtInJet[j][r]   = 0x0;
	      fhChargedPtInJet[j][r]   = 0x0;
	      fhLeadNePtInJet[j][r]    = 0x0;
	      fhLeadChPtInJet[j][r]    = 0x0;
	      fJetEnergyFraction[j][r] = 0x0;
	      fJetNPartFraction[j][r]  = 0x0;
	    }
	  if(j<2)
	    {
	      fRelTrkCon[j][r]         = 0x0;
	      fhFcrossVsZleading[j][r] = 0x0;
	      fhChLeadZVsJetPt[j][r]   = 0x0;
	      fhJetPtWithTrkThres[j][r]= 0x0;
	      fhJetPtWithClsThres[j][r]= 0x0;
	      for(Int_t k=0; k<2; k++)
		{
		  fhJetPtVsLowPtCons[j][r][k] = 0x0;
		}
	      fhJetPtInExoticEvent[j][r] = 0x0;
	      fhJetInTPCOnlyVtx[j][r]  = 0x0;
	      fhCorrTrkEffPtBin[j][r] = 0x0;
	      for(Int_t i=0; i<kNBins; i++)
		{
		  fhCorrTrkEffSample[j][r][i] = 0x0;
		}
	    }

	  if(r==0 && j<3)
	    {
	      for(Int_t k=0; k<2; k++)
		{
		  for(Int_t l=0; l<2; l++)
		    {
		      fhUEJetPtNorm[j][k][l] = 0x0;
		      fhUEJetPtVsSumPt[j][k][l] = 0x0;
		      fhUEJetPtVsConsPt[j][k][l] = 0x0;
		    }
		}
	    }
	}
      for(Int_t i=0; i<2; i++)
	{
	  fhNKFracVsJetPt[i][r]     = 0x0;
	  fhWeakFracVsJetPt[i][r]   = 0x0;
	  fhJetResponseNK[i][r]     = 0x0;
	  fhJetResponseWP[i][r]     = 0x0;
	  fhJetResolutionNK[i][r]   = 0x0;
	  fhJetResolutionWP[i][r]   = 0x0;
	  fhJetResponseNKSM[i][r]   = 0x0;
	  fhJetResponseWPSM[i][r]   = 0x0;
	  fhJetResolutionNKSM[i][r] = 0x0;
	  fhJetResolutionWPSM[i][r] = 0x0;
	}
    }

  for(Int_t s=0; s<3; s++)
    {
      for(Int_t a=0; a<2; a++)
	{
	  for(Int_t r=0; r<kNRadii; r++)
	    {
	      fDetJetFinder[s][a][r] = 0x0;
	      fJetTCA[s][a][r] = 0x0;
	      if(s==0 && a==0)
		{
		  fTrueJetFinder[r] = 0x0;
		  fMcTruthAntikt[r] = 0x0;
		}
	    }
	}
    }

  for(Int_t j=0; j<3; j++)
    {
      fTrkEffFunc[j] = 0x0;
      fhSecondaryResponse[j] = 0x0;
    }
  for(Int_t i=0; i<10; i++)
    { 
      fTriggerCurve[i] = 0x0;
      fTriggerEfficiency[i] = 0x0; 
    }
}

//________________________________________________________________________
AliAnalysisTaskFullppJet::~AliAnalysisTaskFullppJet()
{
  //Destructor

  if(fEsdTrackCuts) delete fEsdTrackCuts;
  if(fHybridTrackCuts1) delete fHybridTrackCuts1;
  if(fHybridTrackCuts2) delete fHybridTrackCuts2;
  if(fOutputList)
    { fOutputList->Delete(); delete fOutputList;}
  for(Int_t s=0; s<3; s++)
    {
      for(Int_t a=0; a<2; a++)
	{
	  for(Int_t r=0; r<kNRadii; r++)
	    {
	      if(fDetJetFinder[s][a][r]) delete fDetJetFinder[s][a][r];
	      if(fJetTCA[s][a][r]) { fJetTCA[s][a][r]->Delete(); delete fJetTCA[s][a][r]; }
	      if(s==0 && a==0)
		{
		  if(fTrueJetFinder[r]) delete fTrueJetFinder[r];
		  if(fMcTruthAntikt[r]) { fMcTruthAntikt[r]->Delete(); delete fMcTruthAntikt[r]; }
		}
	    }
	}
    }
  if(fRandomGen) delete fRandomGen;
  for(Int_t i=0; i<3; i++)
    {
      if(fTrkEffFunc[i]) delete fTrkEffFunc[i];
      if(fhSecondaryResponse[i]) delete fhSecondaryResponse[i];
    }
  for(Int_t i=0; i<10; i++)
    { 
      if(fTriggerEfficiency[i]) delete fTriggerEfficiency[i];
      if(fTriggerCurve[i]) delete fTriggerCurve[i];
    }
  for(Int_t r=0; r<kNRadii; r++)
    {
      for(Int_t j=0; j<2; j++)
	{
	  if(fhCorrTrkEffPtBin[j][r]) delete fhCorrTrkEffPtBin[j][r];
	  for(Int_t i=0; i<kNBins; i++)
	    {
	      if(fhCorrTrkEffSample[j][r][i]) delete fhCorrTrkEffSample[j][r][i];
	    }
	}
    }
  if(fTrackArray)   { fTrackArray->Delete(); delete fTrackArray; }
  if(fClusterArray) { fClusterArray->Delete(); delete fClusterArray; }
  if(fMcPartArray)  { fMcPartArray->Reset(); delete fMcPartArray; }

  if(fRecoUtil) delete fRecoUtil;
  if(fClusterEResolution) delete fClusterEResolution;
  if(fNonLinear) delete fNonLinear;
  if(fTrkPtResData) delete fTrkPtResData;
}

//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::Notify()
{
  //
  // Fill the number of tracks per chunk
  // 

  fhChunkQA->SetBinContent(fEDSFileCounter,fNTracksPerChunk);
  fNTracksPerChunk = 0;
  fEDSFileCounter++;
  return kTRUE;
}

//________________________________________________________________________
void AliAnalysisTaskFullppJet::UserCreateOutputObjects()
{
  // Create histograms
  // Called once
  //

  if(fRunUE) fFindChargedOnlyJet = kTRUE;
  
  const Int_t nTrkPtBins = 100;
  const Float_t lowTrkPtBin=0, upTrkPtBin=100.;

  const Int_t nbins = 220;
  Double_t xbins[221];
  for(Int_t i=0; i<nbins+1; i++)
    xbins[i] = i;

  OpenFile(1);
  fOutputList = new TList();
  fOutputList->SetOwner(1);

  fhJetEventStat = new TH1F("fhJetEventStat","Event statistics for jet analysis",12,0,12);
  fhJetEventStat->GetXaxis()->SetBinLabel(1,"ALL");
  fhJetEventStat->GetXaxis()->SetBinLabel(2,"MB");
  fhJetEventStat->GetXaxis()->SetBinLabel(3,"MB+vtx+10cm");
  fhJetEventStat->GetXaxis()->SetBinLabel(4,"EMC");
  fhJetEventStat->GetXaxis()->SetBinLabel(5,"EMC+vtx+10cm");
  fhJetEventStat->GetXaxis()->SetBinLabel(6,"MB+vtx");
  fhJetEventStat->GetXaxis()->SetBinLabel(7,"EMC+vtx");
  fhJetEventStat->GetXaxis()->SetBinLabel(8,"TriggerBit");
  fhJetEventStat->GetXaxis()->SetBinLabel(9,"LED");
  fhJetEventStat->GetXaxis()->SetBinLabel(10,"MB+TVtx+10cm");
  fhJetEventStat->GetXaxis()->SetBinLabel(11,"EMC+TVtx+10cm");
  fhJetEventStat->GetXaxis()->SetBinLabel(12,"ALL-Pileup");
  fOutputList->Add(fhJetEventStat);

  fhJetEventCount = new TH1F("fhJetEventCount","Event statistics for jet analysis",12,0,12); 
  fhJetEventCount->GetXaxis()->SetBinLabel(1,"ALL");
  fhJetEventCount->GetXaxis()->SetBinLabel(2,"MB");
  fhJetEventCount->GetXaxis()->SetBinLabel(3,"MB-pileup");
  fhJetEventCount->GetXaxis()->SetBinLabel(4,"MB+Vtx");
  fhJetEventCount->GetXaxis()->SetBinLabel(5,"MB+Vtx+10cm");
  fhJetEventCount->GetXaxis()->SetBinLabel(6,"EMC");
  fhJetEventCount->GetXaxis()->SetBinLabel(7,"EMC-pileup");
  fhJetEventCount->GetXaxis()->SetBinLabel(8,"EMC+Vtx");
  fhJetEventCount->GetXaxis()->SetBinLabel(9,"EMC+Vtx+10cm");
  fhJetEventCount->GetXaxis()->SetBinLabel(10,"Good EMC");
  fOutputList->Add(fhJetEventCount);

  if(fCheckTPCOnlyVtx)
    {
      fhEventStatTPCVtx = new TH1F("fhEventStatTPCVtx","Event statistics for TPC only vertex",9,0,9);
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(1,"FastOnly");
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(2,"FastOnly+PVtx");
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(3,"FastOnly+TVtx");
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(4,"MB");
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(5,"MB+PVtx");
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(6,"MB+TVtx");
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(7,"EMC");
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(8,"EMC+PVtx");
      fhEventStatTPCVtx->GetXaxis()->SetBinLabel(9,"EMC+TVtx");
      fOutputList->Add(fhEventStatTPCVtx);
    }

  fhChunkQA = new TH1F("fhChunkQA","# of hybrid tracks per chunk",200,0,200);
  fOutputList->Add(fhChunkQA);

  const Int_t dim1 = 3;
  Int_t nBins1[dim1]     = {200,50,110};
  Double_t lowBin1[dim1] = {0,0,0,};
  Double_t upBin1[dim1]  = {200,0.5,1.1};

  const Int_t dim2 = 3;
  Int_t nBins2[dim2]     = {200,50,50};
  Double_t lowBin2[dim2] = {0,0,0,};
  Double_t upBin2[dim2]  = {200,0.5,50};

  const char* triggerName[3] = {"MB","EMC","MC"};
  const char* triggerTitle[3] = {"MB","EMCal-trigger","MC true"};
  const char* fraction[5] = {"MIP","30","50","70","100"};
  const char* exotic[2] = {"3GeV","5GeV"};
  const char* vertexType[2] = {"All MB","MB with vertex"};
  const char *vertexName[2] = {"All","Vertex"};
  const char *clusterizerName[2] = {"before","after"};
  const char *UEName[2] = {"charged","charged_neutral"};
  const char *UETitle[2] = {"charged","charged+neutral"};
  const char *UEEventName[2] = {"LeadingJet","Back-To-Back"};

  if(fIsMC)
    { 
      for(Int_t i=0; i<2; i++)
	{
	  fhNTrials[i] = new TH1F(Form("MC_%s_fhNTrials",triggerName[i]),Form("MC-%s: # of trials",triggerName[i]),1,0,1);
	  fOutputList->Add(fhNTrials[i]);
	  
	  fVertexGenZ[i] = new TH1F(Form("%s_fVertexGenZ",vertexName[i]),Form("Distribution of vertex z (%s); z (cm)",vertexType[i]),60,-30,30);
	  fOutputList->Add(fVertexGenZ[i]);
	}
    }

  for(Int_t i=0; i<3; i++)
    {
      if(!fIsMC && i==2) continue;

      if(fSaveQAHistos)
	{
	  if(i<2)
	    {	      
	      fEventZ[i] = new TH1F(Form("%s_fEventZ",triggerName[i]),Form("%s: Distribution of vertex z; z (cm)",triggerTitle[i]),60,-30,30);
	      fOutputList->Add(fEventZ[i]);
	    }

	  for(Int_t r=0; r<kNRadii; r++)
	    {
	      if(!fRadius.Contains("0.4") && r==0) continue;
	      if(!fRadius.Contains("0.2") && r==1) continue;
	      if(!fRadius.Contains("0.3") && r==2) continue;

	      fJetCount[i][r] = new TH1F(Form("%s_fJetCount_%1.1f",triggerName[i],kRadius[r]),Form("%s: jet p_{T} in EMCal (R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c)",triggerTitle[i],kRadius[r]),nbins,xbins);
	      fOutputList->Add(fJetCount[i][r]);
	      
	      fhNeutralPtInJet[i][r] = new TH2F(Form("%s_fhNeutralPtInJet_%1.1f",triggerName[i],kRadius[r]),Form("%s: p_{T} of neutral constituents vs jet p_{T} in EMCal(R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c); p_{T} (GeV/c)",triggerTitle[i],kRadius[r]),nbins,xbins,nTrkPtBins*10,lowTrkPtBin,upTrkPtBin);
	      fOutputList->Add(fhNeutralPtInJet[i][r]);

	      fhTrigNeuPtInJet[i][r] = new TH2F(Form("%s_fhTrigNeuPtInJet_%1.1f",triggerName[i],kRadius[r]),Form("%s: p_{T} of triggered neutral constituents vs jet p_{T} in EMCal(R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c); p_{T} (GeV/c)",triggerTitle[i],kRadius[r]),nbins,xbins,nTrkPtBins*10,lowTrkPtBin,upTrkPtBin);
	      fOutputList->Add(fhTrigNeuPtInJet[i][r]);
	      
	      fhChargedPtInJet[i][r] = new TH2F(Form("%s_fhChargedPtInJet_%1.1f",triggerName[i],kRadius[r]),Form("%s: p_{T} of charged constituents vs jet p_{T} in EMCal (R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c); p_{T} (GeV/c)",triggerTitle[i],kRadius[r]),nbins,xbins,nTrkPtBins*10,lowTrkPtBin,upTrkPtBin);
	      fOutputList->Add(fhChargedPtInJet[i][r]);
	      
	      fhLeadNePtInJet[i][r] = new TH2F(Form("%s_fhLeadNePtInJet_%1.1f",triggerName[i],kRadius[r]),Form("%s: p_{T} of leading neutral constituent vs jet p_{T} in EMCal(R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c); p_{T}^{ne} (GeV/c)",triggerTitle[i],kRadius[r]),nbins,xbins,100,0,100);
	      fOutputList->Add(fhLeadNePtInJet[i][r]);
	      
	      fhLeadChPtInJet[i][r] = new TH2F(Form("%s_fhLeadChPtInJet_%1.1f",triggerName[i],kRadius[r]),Form("%s: p_{T} of leading charged constituent vs jet p_{T} in EMCal(R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c); p_{T}^{ch} (GeV/c)",triggerTitle[i],kRadius[r]),nbins,xbins,100,0,100);
	      fOutputList->Add(fhLeadChPtInJet[i][r]);
	      
	      fhJetPtVsZ[i][r] = new TH3F(Form("%s_fhJetPtVsZ_%1.1f",triggerName[i],kRadius[r]),Form("%s: jet p_{T} vs Z_{h} vs constituent type in EMCal (R=%1.1f);p_{T}^{jet} (GeV/c); Z_{h};constituent type",triggerTitle[i],kRadius[r]),200,0,200,110,-0.05,1.05,4,0,4);
	      fOutputList->Add(fhJetPtVsZ[i][r]);
	      
	      fJetEnergyFraction[i][r] = new THnSparseF(Form("%s_fJetEnergyFraction_%1.1f",triggerName[i],kRadius[r]),Form("%s: Jet p_{T} vs radius vs energy fraction in EMCal (R=%1.1f,Z<0.98); p_{T};R;Fraction",triggerName[i],kRadius[r]),dim1,nBins1,lowBin1,upBin1);
	      fOutputList->Add(fJetEnergyFraction[i][r]);
	      
	      fJetNPartFraction[i][r] = new THnSparseF(Form("%s_fJetNPartFraction_%1.1f",triggerName[i],kRadius[r]),Form("%s: Jet p_{T} vs radius vs NPart in EMCal (R=%1.1f,Z<0.98); p_{T};R;NPart",triggerName[i],kRadius[r]),dim2,nBins2,lowBin2,upBin2);
	      fOutputList->Add(fJetNPartFraction[i][r]);
	      
	      if(i<2)
		{
		  fhJetPtInExoticEvent[i][r] = new TH1F(Form("EMC_fhJetPtInExoticEvent_%1.1f_%s",kRadius[r],exotic[i]),Form("EMC: jet p_{T} in events with exotic cluster > %s (R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c)",exotic[i],kRadius[r]),nbins,xbins);
		  fOutputList->Add(fhJetPtInExoticEvent[i][r]);
		  
		  fRelTrkCon[i][r] = new TH3F(Form("%s_fRelTrkCon_%1.1f",triggerName[i],kRadius[r]),Form("%s: jet p_{T} vs (sum p_{T}^{ch})/p_{T}^{jet} vs track class in EMCal (R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c); (sum p_{T}^{ch})/p_{T}^{jet}; track class",triggerTitle[i],kRadius[r]),200,0,200,110,-0.05,1.05,3,0,3);
		  fOutputList->Add(fRelTrkCon[i][r]);
		  
		  fhFcrossVsZleading[i][r] = new TH3F(Form("%s_fhFcrossVsZleading_%1.1f",triggerName[i],kRadius[r]),Form("%s: jet p_{T} vs F_{cross} vs Z_{leading}^{ne} in EMCal (R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c);F_{cross};Z_{leading}^{ne}",triggerTitle[i],kRadius[r]),200,0,200,55,-0.05,1.05,55,-0.05,1.05);
		  fOutputList->Add(fhFcrossVsZleading[i][r]);
		  
		  fhChLeadZVsJetPt[i][r]   = new TH2F(Form("%s_fhChLeadZVsJetPt_%1.1f",triggerName[i],kRadius[r]),Form("%s: Z of leading charged constituent vs jet p_{T} in EMCal(R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c); Z_{leading}^{ch}",triggerTitle[i],kRadius[r]),nbins,xbins,100,0,1);
		  fOutputList->Add(fhChLeadZVsJetPt[i][r]);
		  
		  fhJetPtWithTrkThres[i][r]   = new TH2F(Form("%s_fhJetPtWithTrkThres_%1.1f",triggerName[i],kRadius[r]),Form("%s: p_{T} of jets containing tracks above certain threshold (15,25,40 GeV/c) (EMCal, R=%1.1f,Z<0.98);Threshold type;p_{T}^{jet} (GeV/c)",triggerTitle[i],kRadius[r]),3,0,3,nbins,xbins);
		  fOutputList->Add(fhJetPtWithTrkThres[i][r]);
		  
		  fhJetPtWithClsThres[i][r]   = new TH2F(Form("%s_fhJetPtWithClsThres_%1.1f",triggerName[i],kRadius[r]),Form("%s: p_{T} of jets containing clusters above certain threshold (15,25,40 GeV) (EMCal, R=%1.1f,Z<0.98);Threshold type;p_{T}^{jet} (GeV/c)",triggerTitle[i],kRadius[r]),3,0,3,nbins,xbins);
		  fOutputList->Add(fhJetPtWithClsThres[i][r]);
		  
		  fhJetPtVsLowPtCons[i][r][0]   = new TH2F(Form("%s_fhJetPtVsLowPtCons_150-300MeV_%1.1f",triggerName[i],kRadius[r]),Form("%s: energy carried by constituents in 150-300MeV (EMCal, R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c);p_{T,em}^{low} (GeV/c)",triggerTitle[i],kRadius[r]),nbins,xbins,100,0,1);
		  fOutputList->Add(fhJetPtVsLowPtCons[i][r][0]);

		  fhJetPtVsLowPtCons[i][r][1]   = new TH2F(Form("%s_fhJetPtVsLowPtCons_300-500MeV_%1.1f",triggerName[i],kRadius[r]),Form("%s: energy carried by constituents in 300-500MeV (EMCal, R=%1.1f,Z<0.98);p_{T}^{jet} (GeV/c);p_{T,em}^{low} (GeV/c)",triggerTitle[i],kRadius[r]),nbins,xbins,100,0,1);
		  fOutputList->Add(fhJetPtVsLowPtCons[i][r][1]);

		  if(fCheckTPCOnlyVtx)
		    {
		      fhJetInTPCOnlyVtx[i][r] = new TH3F(Form("%s_fhJetInTPCOnlyVtx_%1.1f",triggerName[i],kRadius[r]),Form("%s: jet pt in events with only TPC vertex (Full, R=%1.1f);p_{T}^{jet} (GeV/c);#phi;#eta",triggerTitle[i],kRadius[r]),20,0,100,36,0,360,20,-1,1);
		      fOutputList->Add(fhJetInTPCOnlyVtx[i][r]);
		    }

		  if(fStudySubEInHC)
		    {
		      for(Int_t k=0; k<5; k++)
			{
			  fhSubClsEVsJetPt[i][r][k] = new TH2F(Form("%s_fhSubClsEVsJetPt_%s_%1.1f",triggerName[i],fraction[k],kRadius[r]),Form("%s: relative %s%% subtracted cluster Et vs jet pt (R=%1.1f);jet p_{T} (GeV/c);E_{t}^{sub}/p_{T,jet}",triggerTitle[i],fraction[k], kRadius[r]),nbins,xbins,50,0,0.5);
			  fOutputList->Add(fhSubClsEVsJetPt[i][r][k]);
		      
			  fhHCTrkPtClean[i][r][k] = new TH2F(Form("%s_fhHCTrkPtClean_%s_%1.1f",triggerName[i],fraction[k],kRadius[r]),Form("%s: sum of track p_{T} that are cleanly subtracted  vs jet pt (%s%%, R=%1.1f);jet p_{T} (GeV/c);#sum(p_{T,trk}^{clean})/p_{T,jet}",triggerTitle[i],fraction[k], kRadius[r]),nbins,xbins,100,-0.005,0.995);
			  fOutputList->Add(fhHCTrkPtClean[i][r][k]);
			  
			  fhHCTrkPtAmbig[i][r][k] = new TH2F(Form("%s_fhHCTrkPtAmbig_%s_%1.1f",triggerName[i],fraction[k],kRadius[r]),Form("%s: sum of track p_{T} that are ambiguously subtracted vs jet pt (%s%%, R=%1.1f);jet p_{T} (GeV/c);#sum(p_{T,trk}^{ambig})/p_{T,jet}",triggerTitle[i],fraction[k], kRadius[r]),nbins,xbins,100,-0.005,0.995);
			  fOutputList->Add(fhHCTrkPtAmbig[i][r][k]);
			}
		    }
		}
	    }
	  if(i<2)
	    {
	      fhNMatchedTrack[i] = new TH1F(Form("%s_fhNMatchedTrack",triggerName[i]),Form("%s: # of matched tracks per cluster; N_{mth}",triggerTitle[i]),5,0,5);
	      fOutputList->Add(fhNMatchedTrack[i]);
	      
	      for(Int_t j=0; j<4; j++) 
		{
		  fhSubEVsTrkPt[i][j] = new TH2F(Form("%s_fhSubEVsTrkPt_%s",triggerName[i],fraction[j+1]),Form("%s: fractional subtracted energy (%s%% HC);#sum(p_{ch,T}^{mth}) (GeV/c);E_{sub}/#sum(P_{ch}^{mth})",triggerTitle[i],fraction[j+1]),50,0,50,110,0,1.1);
		  fOutputList->Add(fhSubEVsTrkPt[i][j]);
		} 
	    }
	}

      if(fRunUE)
	{
	  for(Int_t k=0; k<2; k++)
	    {
	      for(Int_t l=0; l<2; l++)
		{
		  fhUEJetPtNorm[i][k][l] = new TH1F(Form("%s_fhUEJetPtNorm_%s_%s",triggerName[i],UEName[k],UEEventName[l]),Form("%s: leading jet p_{T} in TPC (%s in %s event);p_{T,jet}^{ch} (GeV/c)",triggerTitle[i],UETitle[k], UEEventName[l]),nbins,xbins);
		  fOutputList->Add(fhUEJetPtNorm[i][k][l]);
	  
		  fhUEJetPtVsSumPt[i][k][l] = new TH2F(Form("%s_fhUEJetPtVsSumPt_%s_%s",triggerName[i],UEName[k],UEEventName[l]),Form("%s: leading jet p_{T} vs underlying event contribution (R=0.4,%s in %s event);p_{T,jet}^{ch} (GeV/c);p_{T,UE}^{ch} (GeV/c)",triggerTitle[i],UETitle[k], UEEventName[l]),nbins,xbins,500,0,50);
		  fOutputList->Add(fhUEJetPtVsSumPt[i][k][l]);
	  
		  fhUEJetPtVsConsPt[i][k][l] = new TH2F(Form("%s_fhUEJetPtVsConsPt_%s_%s",triggerName[i],UEName[k],UEEventName[l]),Form("%s: leading jet p_{T} vs constituent pt in UE (R=0.4,%s in %s event);p_{T,jet}^{ch} (GeV/c);p_{T,cons}^{ch} (GeV/c)",triggerTitle[i],UETitle[k], UEEventName[l]),nbins,xbins,500,0,50);
		  fOutputList->Add(fhUEJetPtVsConsPt[i][k][l]);
		}
	    }
	}

      if(fSysJetTrigEff)
	{
	  fhClsE[i] = new TH1F(Form("%s_fhClsE",triggerName[i]),Form("%s: cluster E;E (GeV)",triggerTitle[i]),1000,0,100);
	  fOutputList->Add(fhClsE[i]);
	}

      if(fSysClusterizer)
	{
	  for(Int_t k=0; k<2; k++)
	    {
	      fhSysClusterE[i][k] = new TH1F(Form("%s_fhSysClusterE_%sHC",triggerName[i],clusterizerName[k]),Form("%s: cluster E %s hadronic correction;E (GeV)",triggerTitle[i],clusterizerName[k]),100,0,100);
	      fOutputList->Add(fhSysClusterE[i][k]);

	      fhSysNCellVsClsE[i][k] = new TH2F(Form("%s_fhSysNCellVsClsE_%sHC",triggerName[i],clusterizerName[k]),Form("%s: NCell vs cluster E %s hadronic correction;E (GeV);NCell",triggerTitle[i],clusterizerName[k]),100,0,100,50,0,50);
	      fOutputList->Add(fhSysNCellVsClsE[i][k]);
	    }
	}
    }


  if(fIsMC)
    {
      if(fStudyMcOverSubE)
	{
	  for(Int_t r=0; r<kNRadii; r++)
	    {
	      if(!fRadius.Contains("0.4") && r==0) continue;
	      if(!fRadius.Contains("0.2") && r==1) continue;
	      if(!fRadius.Contains("0.3") && r==2) continue;
	      for(Int_t i=0; i<5; i++)
		{
		  fHCOverSubE[r][i] = new TH2F(Form("%s_HC_over_sub_e_%s_%1.1f",triggerName[2],fraction[i],kRadius[r]),Form("%s: oversubtracted neutral Et by %s%% HC (R=%1.1f);particle jet p_{T} (GeV/c);#DeltaE_{t} (GeV)",triggerName[2],fraction[i],kRadius[r]),nbins,xbins,200,-49.75,50.25);
		  fOutputList->Add(fHCOverSubE[r][i]);
		  fHCOverSubEFrac[r][i] = new TH2F(Form("%s_HC_over_sub_e_frac_%s_%1.1f",triggerName[2],fraction[i],kRadius[r]),Form("%s: relative oversubtracted neutral Et fraction by %s%% HC (R=%1.1f);jet p_{T} (GeV/c);#DeltaE_{t}/p_{T}^{jet}",triggerName[2],fraction[i],kRadius[r]),nbins,xbins,200,-0.995,1.005);
		  fOutputList->Add(fHCOverSubEFrac[r][i]);
		}
	    }
	}
      if(fRunSecondaries && fAnaType==0)
	{
	  for(Int_t i=0; i<2; i++)
	    {
	      for(Int_t r=0; r<3; r++)
		{
		  fhNKFracVsJetPt[i][r]  = new TH2F(Form("%s_fhNKFracVsJetPt_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: energy fraction carried by n,k^{0}_{L} vs jet p_{T} (R=%1.1f,|#eta|<%1.1f);p_{T,jet} (GeV/c);fraction",triggerName[2],kRadius[r],i*0.5+0.5),nbins,xbins,200,0,1);
		  fOutputList->Add(fhNKFracVsJetPt[i][r]);

		  fhWeakFracVsJetPt[i][r]  = new TH2F(Form("%s_fhWeakFracVsJetPt_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: energy fraction carried by k^{0}_{S},hyperon vs jet p_{T} (R=%1.1f,|#eta|<%1.1f);p_{T,jet} (GeV/c);fraction",triggerName[2],kRadius[r],i*0.5+0.5),nbins,xbins,200,0,1);
		  fOutputList->Add(fhWeakFracVsJetPt[i][r]);
		  
		  fhJetResponseNK[i][r]  = new TH2F(Form("%s_fhJetResponseNK_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: jet response due to missing n and k^{0}_{L} (R=%1.1f,|#eta|<%1.1f);p_{T,jet}^{gen} (GeV/c);p_{T,jet}^{rec} (GeV/c)",triggerName[2],kRadius[r],i*0.5+0.5),nbins,xbins,nbins,xbins);
		  fOutputList->Add(fhJetResponseNK[i][r]);
		  
		  fhJetResponseWP[i][r]  = new TH2F(Form("%s_fhJetResponseWP_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: jet response due to k^{0}_{S}, #Lambda and hyperon (R=%1.1f,|#eta|<%1.1f);p_{T,jet}^{gen} (GeV/c);p_{T,jet}^{rec} (GeV/c)",triggerName[2],kRadius[r],i*0.5+0.5),nbins,xbins,nbins,xbins);
		  fOutputList->Add(fhJetResponseWP[i][r]);

		  fhJetResolutionNK[i][r] = new TH2F(Form("%s_fhJetResolutionNK_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: jet response due to missing n and k^{0}_{L}: (p_{T,jet}^{rec}-p_{T,jet}^{gen})/p_{T,jet}^{rec} vs p_{T,jet}^{rec} (R=%1.1f,|#eta|<%1.1f);p_{T,jet}^{rec} (GeV/c);#Deltap_{T}/p_{T}",triggerName[2],kRadius[r],i*0.5+0.5),nbins,xbins,200,-0.995,1.005);
		  fOutputList->Add(fhJetResolutionNK[i][r]);
		  
		  fhJetResolutionWP[i][r] = new TH2F(Form("%s_fhJetResolutionWP_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: jet response due to k^{0}_{S}, #Lambda and hyperon: (p_{T,jet}^{rec}-p_{T,jet}^{gen})/p_{T,jet}^{rec} vs p_{T,jet}^{rec} (R=%1.1f,|#eta|<%1.1f);p_{T,jet}^{rec} (GeV/c);#Deltap_{T}/p_{T}",triggerName[2],kRadius[r],i*0.5+0.5),nbins,xbins,200,-0.995,1.005);
		  fOutputList->Add(fhJetResolutionWP[i][r]);
		  
		  fhJetResponseNKSM[i][r]  = new TH2F(Form("%s_fhJetResponseNKSM_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: jet response due to missing n and k^{0}_{L} via matching (R=%1.1f,|#eta|<%1.1f);p_{T,jet}^{gen} (GeV/c);p_{T,jet}^{rec} (GeV/c)",triggerName[2],kRadius[r],i*0.5+0.5),nbins,xbins,nbins,xbins);
		  fOutputList->Add(fhJetResponseNKSM[i][r]);
		  
		  fhJetResponseWPSM[i][r]  = new TH2F(Form("%s_fhJetResponseWPSM_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: jet response due to k^{0}_{S}, #Lambda and hyperon via matching(R=%1.1f,|#eta|<%1.1f);p_{T,jet}^{gen} (GeV/c);p_{T,jet}^{rec} (GeV/c)",triggerName[2],kRadius[r],i*0.5+0.5),nbins,xbins,nbins,xbins);
		  fOutputList->Add(fhJetResponseWPSM[i][r]);
		  
		  fhJetResolutionNKSM[i][r] = new TH3F(Form("%s_fhJetResolutionNKSM_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: jet resolution due to missing n and k^{0}_{L} via matching (R=%1.1f,|#eta|<%1.1f);p_{T,jet}^{rec} (GeV/c);#Deltap_{T,jet}/p_{T,jet}^{rec};dR",triggerName[2],kRadius[r],i*0.5+0.5),220,0,220,200,-0.995,1.005,100,0,1);
		  fOutputList->Add(fhJetResolutionNKSM[i][r]);
		  
		  fhJetResolutionWPSM[i][r] = new TH3F(Form("%s_fhJetResolutionWPSM_%1.1f_EtaCut%1.1f",triggerName[2],kRadius[r],i*0.5+0.5),Form("%s: jet resolution due tok^{0}_{S}, #Lambda and hyperon via matching (R=%1.1f,|#eta|<%1.1f);p_{T,jet}^{rec} (GeV/c);#Deltap_{T,jet}/p_{T,jet}^{rec};dR",triggerName[2],kRadius[r],i*0.5+0.5),220,0,220,200,-0.995,1.005,100,0,1);
		  fOutputList->Add(fhJetResolutionWPSM[i][r]);
		}
	    }
	}
    }

  printf("\n=======================================\n");
  printf("===== Jet task configuration ==========\n");

  if(fNonStdBranch.Length()!=0)
    {      
      const char* species[3] = {"in","ch","ne"};
      const char* algorithm[2] = {"akt","kt"};
      const char* radii[kNRadii] = {"04","02","03"};
      for(Int_t s=0; s<3; s++)
	{
	  if(!fFindChargedOnlyJet && s==1) continue;
	  if(!fFindNeutralOnlyJet && s==2) continue;
	  for(Int_t a=0; a<2; a++)
	    {
	      if(!fAlgorithm.Contains("aKt") && a==0) continue;
	      if(!fAlgorithm.Contains("kt")  && a==1) continue;
	      for(Int_t r=0; r<kNRadii; r++)
		{
		  if(!fRadius.Contains("0.4") && r==0) continue;
		  if(!fRadius.Contains("0.2") && r==1) continue;
		  if(!fRadius.Contains("0.3") && r==2) continue;
		  if(fAnaType==0)
		    {
		      fJetTCA[s][a][r] = new TClonesArray("AliAODJet",0);
		      fJetTCA[s][a][r]->SetName(Form("Jet_%s_%s_%s_%s",species[s],algorithm[a],radii[r],fNonStdBranch.Data()));
		      AddAODBranch("TClonesArray",&fJetTCA[s][a][r],fNonStdFile.Data());
		      printf("Add branch: Jet_%s_%s_%s_%s\n",species[s],algorithm[a],radii[r],fNonStdBranch.Data());
		    }

		  fDetJetFinder[s][a][r] = new AliFJWrapper(Form("DetJetFinder_%s_%s_%s_%s",species[s],algorithm[a],radii[r],fNonStdBranch.Data()),Form("DetJetFinder_%s_%s_%s_%s",species[s],algorithm[a],radii[r],fNonStdBranch.Data()));
		  if(a==0) fDetJetFinder[s][a][r]->SetAlgorithm(fastjet::antikt_algorithm);
		  if(a==1) fDetJetFinder[s][a][r]->SetAlgorithm(fastjet::kt_algorithm);
		  if(fRecombinationScheme==0)     fDetJetFinder[s][a][r]->SetRecombScheme(fastjet::E_scheme);
		  fDetJetFinder[s][a][r]->SetR(kRadius[r]);
		  fDetJetFinder[s][a][r]->SetMaxRap(0.9);
		  fDetJetFinder[s][a][r]->Clear();

		  if(s==0 && a==0)
		    {
		      if(fIsMC && fNonStdBranch.Contains("Baseline",TString::kIgnoreCase))
			{
			  if(fAnaType==0)
			    {
			      fMcTruthAntikt[r] = new TClonesArray("AliAODJet",0);
			      fMcTruthAntikt[r]->SetName(Form("Jet_mc_truth_in_akt_%s_%s",radii[r],fNonStdBranch.Data()));
			      AddAODBranch("TClonesArray",&fMcTruthAntikt[r],fNonStdFile.Data());
			      printf("Add branch: Jet_mc_truth_in_akt_%s_%s\n",radii[r],fNonStdBranch.Data());
			    }

			  fTrueJetFinder[r] = new AliFJWrapper(Form("TrueJetFinder_%s_%s_%s_%s",species[s],algorithm[a],radii[r],fNonStdBranch.Data()),Form("TrueJetFinder_%s_%s_%s_%s",species[s],algorithm[a],radii[r],fNonStdBranch.Data()));
			  fTrueJetFinder[r]->SetAlgorithm(fastjet::antikt_algorithm);
			  fTrueJetFinder[r]->SetR(kRadius[r]);
			  fTrueJetFinder[r]->SetMaxRap(0.9);
			  if(fRecombinationScheme==0) fTrueJetFinder[r]->SetRecombScheme(fastjet::E_scheme);
			  fTrueJetFinder[r]->Clear();
			}
		    }
		}
	    }
	}
    }

  fRandomGen = new TRandom3(0);
  if(fCheckTrkEffCorr && fAnaType==0)
    {
      TFile f ("/project/projectdirs/alice/marr/Analysis/2.76Jet/CorrectionFunctions/TrkEffFit.root","read");
      for(Int_t i=0; i<3; i++)
	{
	  fTrkEffFunc[i] = new TF1(*((TF1*)f.Get(Form("Trk_eff_fit_%d",i+1))));
	}
      f.Close();

      if(fPeriod.CompareTo("lhc11a",TString::kIgnoreCase)==0 || fPeriod.CompareTo("lhc11aJet",TString::kIgnoreCase)==0)
	{
	  TFile f1 ("/project/projectdirs/alice/marr/Analysis/2.76Jet/CorrectionFunctions/TrkEffSampling.root","read");
	  for(Int_t j=0; j<2; j++)
	    {
	      Int_t tmp = j;
	      if(fPeriod.CompareTo("lhc11aJet",TString::kIgnoreCase)==0) tmp = 2;
	      for(Int_t r=0; r<kNRadii; r++)
		{
		  fhCorrTrkEffPtBin[j][r] = new TH1F(*((TH1F*)f1.Get(Form("%s_%s_NTrackPerPtBin_%1.1f",fPeriod.Data(),triggerName[tmp],kRadius[r]))));
		  for(Int_t i=0; i<kNBins; i++)
		    {
		      fhCorrTrkEffSample[j][r][i] = new TH1F(*((TH1F*)f1.Get(Form("%s_%s_ChTrkPt_Bin%d_%1.1f",fPeriod.Data(),triggerName[tmp],i+1,kRadius[r]))));
		    }
		}
	    }
	  f1.Close();
	}
    }

  if(fRunSecondaries && fAnaType==0)
    {
      const char *secondaryName[3] = {"k0S","lamda","hyperon"};
      TFile f2 ("/project/projectdirs/alice/marr/Analysis/2.76Jet/CorrectionFunctions/SecondaryResponse.root","read");
      for(Int_t j=0; j<3; j++)
	{
	  fhSecondaryResponse[j] = new TH2F(*((TH2F*)f2.Get(Form("DetectorReponse_%s",secondaryName[j]))));
	}
    }

  if(fCheckTriggerMask)
    {
      TString name = "TriggerCurve.root";
      if(fAnaType==0) name = "/project/projectdirs/alice/marr/Analysis/2.76Jet/CorrectionFunctions/TriggerCurve.root";
      TFile f (name.Data(),"read");
      fTriggerMask = new TH2F(*((TH2F*)f.Get("lhc11a_TriggerMask")));
      if(fOfflineTrigger)
	{
	  for(Int_t i=0; i<10; i++)
	    {
	      fTriggerEfficiency[i] = new TF1(*((TF1*)f.Get(Form("lhc11a_TriggerEfficiency_SM%d_fit",i))));
	      fTriggerCurve[i] = new TH1D(*((TH1D*)f.Get(Form("lhc11a_TriggerCurve_SM%d",i))));
	    }   
	}
      f.Close();
    }

  fClusterEResolution = new TF1("fClusterEResolution","sqrt([0]^2+[1]^2*x+([2]*x)^2)*0.01");
  fClusterEResolution->SetParameters(4.35,9.07,1.63);

  fGeom =  AliEMCALGeometry::GetInstance("EMCAL_COMPLETEV1");
  if(!fGeom)
    {
      AliError("No EMCal geometry is available!");
      return;
    }
  fRecoUtil = new AliEMCALRecoUtils();
  if(fRejectExoticCluster || fRejectExoticTrigger)
    fRecoUtil->SwitchOnRejectExoticCluster();
  else
    {
      fRecoUtil->SwitchOffRejectExoticCluster();
      fRecoUtil->SwitchOffRejectExoticCell();
    }
  if(fRemoveBadChannel)
    {
      fRecoUtil->SwitchOnBadChannelsRemoval();
      // Remove the problematic SM4 region due to wrong event sequence
      for(Int_t ieta=0; ieta<36; ieta++)
	for(Int_t iphi=0; iphi<8; iphi++)
	  fRecoUtil->SetEMCALChannelStatus(4,ieta,iphi);
    }
  else   
    fRecoUtil->SwitchOffBadChannelsRemoval();

  fRecoUtil->SetNonLinearityFunction(AliEMCALRecoUtils::kBeamTestCorrected);
  if(fSysNonLinearity) 
    {
      fNonLinear = new TF1("TB_oldBest","([0])*(1./(1.+[1]*exp(-x/[2]))*1./(1.+[3]*exp((x-[4])/[5])))*1/([6])",0.1,110.);
      fNonLinear->SetParameters(0.99078, 0.161499, 0.655166, 0.134101, 163.282, 23.6904, 0.978);
    }
  if(fSysTrkClsMth)
    {
      fRecoUtil->SwitchOnCutEtaPhiSeparate();
      fRecoUtil->SetCutEta(fCutdEta);
      fRecoUtil->SetCutPhi(fCutdPhi);
    }

  fTrackArray   = new TObjArray();
  fTrackArray->SetOwner(1);
  fClusterArray = new TObjArray();
  fClusterArray->SetOwner(1);
  fMcPartArray = new TArrayI();


  //error calculation in THnSparse
  Int_t nObj = fOutputList->GetEntries();
  for(Int_t i=0; i<nObj; i++)
    {
      TObject *obj = (TObject*) fOutputList->At(i);
      if (obj->IsA()->InheritsFrom( "THnSparse" ))
      	{
      	  THnSparseF *hn = (THnSparseF*)obj;
      	  hn->Sumw2();
      	}
    }


  PrintConfig();
  BookHistos();
  PostData(1, fOutputList);
}



//________________________________________________________________________
void AliAnalysisTaskFullppJet::BookHistos()
{
  // Book histograms.

  if(fVerbosity>10) printf("[i] Booking histograms \n");
  return;
}

//________________________________________________________________________
void AliAnalysisTaskFullppJet::UserExec(Option_t *) 
{
  //
  // Main loop, called for each event.
  //

  // Get event pointers, check for signs of life
  Double_t vtxTrueZ = -100;
  if(fIsMC)
    {
      fMC = MCEvent();
      if (!fMC) 
	{
	  printf("ERROR: Could not retrieve MC event");
	  return;
	}
      fStack = fMC->Stack();
      TParticle *particle = fStack->Particle(0);
      if(particle) 
	{
	  vtxTrueZ = particle->Vz(); // True vertex z in MC events
	  if(fVerbosity>10) printf("Generated vertex coordinate: (x,y,z) = (%4.2f, %4.2f, %4.2f)\n", particle->Vx(), particle->Vy(), particle->Vz());
	}
    }

  fESD = dynamic_cast<AliESDEvent*>(InputEvent());
  if (!fESD) 
    {
      AliError("fESD is not available");
      return;
    }

  fhJetEventStat->Fill(0.5);
  fhJetEventCount->Fill(0.5);
  if(fIsMC)
    {
      GetMCInfo();
      if(fVertexGenZ[0]) fVertexGenZ[0]->Fill(vtxTrueZ);
    }

  // Centrality, vertex, other event variables...
  UInt_t trigger = ((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected();
  if (trigger==0)  return; 
  if(fCheckTPCOnlyVtx) CheckTPCOnlyVtx(trigger);
  if(!fIsMC)
    {
      if (trigger & AliVEvent::kFastOnly) return;  // Reject fast trigger cluster
      if(fPeriod.CompareTo("lhc11a",TString::kIgnoreCase)==0)
	{
	  if (trigger & AliVEvent::kMB)       fTriggerType = 0;
	  else if(trigger & AliVEvent::kEMC1) fTriggerType = 1;
	  else fTriggerType = -1;
	}
      else if (fPeriod.CompareTo("lhc11c",TString::kIgnoreCase)==0 || fPeriod.CompareTo("lhc11d",TString::kIgnoreCase)==0)
	{
	  if (trigger & AliVEvent::kINT7)     fTriggerType = 0;
	  else if(trigger & AliVEvent::kEMC7) fTriggerType = 1;
	  else fTriggerType = -1;
	}
      else
	{
	  return;
	}
    }
  else
    {
      if(!fPhySelForMC) fTriggerType = 0;
      else if (trigger & AliVEvent::kAnyINT) fTriggerType = 0;
      else fTriggerType = -1;
      
      if(fOfflineTrigger)
	{
	  RunOfflineTrigger();
	  if(fIsEventTriggerBit) fTriggerType = 1;
	}
    }
  
  if(fTriggerType==-1)
    {
      if(fVerbosity>10) printf("Error: worng trigger type %s\n",(fESD->GetFiredTriggerClasses()).Data());
      return;
    }

  fhJetEventCount->Fill(1.5+fTriggerType*4);
  if(fRejectPileup && fESD->IsPileupFromSPD() ) return; // reject pileup
  fhJetEventStat->Fill(11.5);
  fhJetEventCount->Fill(2.5+fTriggerType*4);

 
  fIsTPCOnlyVtx = 0;
  // Reject LED events
  if (IsLEDEvent()) 
    {
      fhJetEventStat->Fill(8.5);
      return;
    }

  fhJetEventStat->Fill(1.5+fTriggerType*2);

  // Check if primary vertex exists
  if (!HasPrimaryVertex()) return;
  fhJetEventStat->Fill(5.5+fTriggerType);
  fhJetEventCount->Fill(3.5+fTriggerType*4);

  const AliESDVertex* vtx = fESD->GetPrimaryVertex();
  Double_t zVertex    = vtx->GetZ();
  if(fEventZ[fTriggerType]) fEventZ[fTriggerType]->Fill(zVertex);
  if(fVertexGenZ[1]) fVertexGenZ[1]->Fill(vtxTrueZ);

  // Check if |Z_vtx|<10cm
  if( TMath::Abs(zVertex) > fZVtxMax ) return;
  fhJetEventCount->Fill(4.5+fTriggerType*4);
  
  // Check if only TPC vertex exists primitive
  fIsTPCOnlyVtx = IsTPCOnlyVtx();

  if(!fIsMC && fTriggerType==1) 
    {
      // Check if event has valid trigger bit
      CheckEventTriggerBit();
      if(fIsEventTriggerBit) 
	{
	  fhJetEventStat->Fill(7.5);
	  fhJetEventCount->Fill(9.5);
	}
      else return;
    }
  fhJetEventStat->Fill(2.5+fTriggerType*2);
  if(fIsTPCOnlyVtx) fhJetEventStat->Fill(9.5+fTriggerType);

  // Check if event contains exotic clusters
  CheckExoticEvent();

  // Write jet tree into AOD output in local analysis mode
  if(fAnaType==0) AliAnalysisManager::GetAnalysisManager()->GetOutputEventHandler()->SetFillAOD(kTRUE);
   
  // Clean up arrays
  for(Int_t s=0; s<3; s++)
    {
      for(Int_t a=0; a<2; a++)
	{
	  for(Int_t r=0; r<kNRadii; r++)
	    {
	      if(fJetTCA[s][a][r])       fJetTCA[s][a][r]->Delete();
	      if(fDetJetFinder[s][a][r]) fDetJetFinder[s][a][r]->Clear();

	      if(s==0 && a==0)
		{
		  if(fMcTruthAntikt[r]) fMcTruthAntikt[r]->Delete();
		  if(fTrueJetFinder[r]) fTrueJetFinder[r]->Clear();
		}
	    }
	}
    }

  if(fVerbosity>5) printf("# of jets after clear: %d\n",fJetTCA[0][0][0]->GetEntries());

  if(fTrackArray) fTrackArray->Delete();
  if(fClusterArray) fClusterArray->Delete();
  fMcPartArray->Reset();


  // get the tracks and fill the input vector for the jet finders
  GetESDTrax();
  
  // get EMCal clusters and fill the input vector for the jet finders
  GetESDEMCalClusters();

  for(Int_t s=0; s<3; s++)
    {
      for(Int_t a=0; a<2; a++)
	{
	  for(Int_t r=0; r<kNRadii; r++)
	    {
	      //Detector jets
	      if(fDetJetFinder[s][a][r]) 
		{
		  FindDetJets(s,a,r);
		  if(fJetTCA[s][a][r]) FillAODJets(fJetTCA[s][a][r], fDetJetFinder[s][a][r], 0);
		  if(s==0 && a==0 && fNonStdBranch.Contains("Baseline",TString::kIgnoreCase))
		    {
		      if(fSaveQAHistos)    AnalyzeJets(fDetJetFinder[s][a][r],fTriggerType, r); // run analysis on jets
		    }
		}
	    }
	}
    }
  if(fRunUE && fDetJetFinder[1][0][0]) RunAnalyzeUE(fDetJetFinder[1][0][0],fTriggerType,0); // Run analysis on underlying event

  if(fIsMC)
    {
      for(Int_t r=0; r<kNRadii; r++)
	if(fTrueJetFinder[r]) ProcessMC(r); // find particle level jets
    }
  
  // Fast Jet calls END --------------------------------------------------------
  
  PostData(1, fOutputList);
  return;
}


//________________________________________________________________________
void AliAnalysisTaskFullppJet::FindDetJets(const Int_t s, const Int_t a, const Int_t r)
{
  // 
  // Jet finding is happening here
  //

  Bool_t isCh = kTRUE;
  Bool_t isNe = kTRUE;
  if(s==1) isNe = kFALSE;
  if(s==2) isCh = kFALSE;

  if(isCh)
    {
      // Feed in charged tracks
      Int_t countTracks = 0;
      Int_t ntracks = fTrackArray->GetEntriesFast();
      for(Int_t it=0; it<ntracks; it++)
	{
	  AliESDtrack *t = (AliESDtrack*) fTrackArray->At(it);
	  if(!t) continue;
	  countTracks++;
	  Double_t e = t->P();
	  Double_t pt = t->Pt();
	  if(s==1 && fRunUE && pt<1) continue;
	  if(fRecombinationScheme==0) e = TMath::Sqrt(t->P()*t->P()+0.139*0.139);
	  if(fSysTrkPtRes) pt += GetSmearedTrackPt(t);
	  Double_t phi = t->Phi();
	  Double_t eta = t->Eta();
	  Double_t px = pt*TMath::Cos(phi);
	  Double_t py = pt*TMath::Sin(phi);
	  if(fConstrainChInEMCal && ( TMath::Abs(eta)>0.7 || phi>kPI || phi<TMath::DegToRad()*80) ) continue;
	  fDetJetFinder[s][a][r]->AddInputVector(px,py,t->Pz(), e, it+1);
	  if(fVerbosity>10) printf("%d: m_{ch}=%f\n",it+1,t->P()*t->P()-t->Px()*t->Px()-t->Py()*t->Py()-t->Pz()*t->Pz());
	}
      if(fVerbosity>5) printf("[i] # of tracks filled: %d\n",countTracks);
    }
  if(isNe)
    {
      // Feed in EMCal clusters
      Double_t vertex[3] = {0, 0, 0};
      fESD->GetVertex()->GetXYZ(vertex) ;
      TLorentzVector gamma;
      
      Int_t countClusters = 0;
      Int_t nclusters = fClusterArray->GetEntriesFast();
      for (Int_t ic = 0; ic < nclusters; ic++)
	{
	  AliESDCaloCluster * cl = (AliESDCaloCluster *)fClusterArray->At(ic);
	  if(!cl) continue;
	  cl->GetMomentum(gamma, vertex);
	  countClusters++;
	  Double_t e = gamma.P();
	  if(fRecombinationScheme==0) e = TMath::Sqrt(gamma.P()*gamma.P()+0.139*0.139);
	  fDetJetFinder[s][a][r]->AddInputVector(gamma.Px(), gamma.Py(), gamma.Pz(), e, (ic+1)*(-1));
	}
      if(fVerbosity>5) printf("[i] # of clusters filled: %d\n",countClusters);
    }
  // Run jet finding
  fDetJetFinder[s][a][r]->Run();
}


//________________________________________________________________________
void AliAnalysisTaskFullppJet::FillAODJets(TClonesArray *fJetArray, AliFJWrapper *jetFinder, const Bool_t isTruth)
{
  //
  // Fill the found jets into AOD output
  // Only consider jets pointing to EMCal and with pt above 1GeV/c
  //

  Int_t radiusIndex = 0;
  TString arrayName = fJetArray->GetName();
  if(arrayName.Contains("_02_"))  radiusIndex = 1;
  if(arrayName.Contains("_03_"))  radiusIndex = 2;
  std::vector<fastjet::PseudoJet> jetsIncl = jetFinder->GetInclusiveJets();
  if(fVerbosity>5 && radiusIndex==0) printf("[i] # of jets in %s : %d\n",fJetArray->GetName(),(Int_t)jetsIncl.size());
  AliAODJet *jet = 0;
  Int_t jetCount = 0;
  for(UInt_t ij=0; ij<jetsIncl.size(); ij++)
    {
      if(fVerbosity>10) printf("fastjet: eta=%f, phi=%f\n",jetsIncl[ij].eta(),jetsIncl[ij].phi()*TMath::RadToDeg());
      if(!IsGoodJet(jetsIncl[ij],0)) continue;

      AliAODJet tmpJet (jetsIncl[ij].px(), jetsIncl[ij].py(), jetsIncl[ij].pz(), jetsIncl[ij].E());
      jet = new ((*fJetArray)[jetCount]) AliAODJet(tmpJet);
      jetCount++;
      if(fVerbosity>10 && radiusIndex==0) printf("AOD jet: ij=%d, pt=%f, eta=%f, phi=%f\n",ij, jet->Pt(), jet->Eta(),jet->Phi()*TMath::RadToDeg());

      jet->GetRefTracks()->Clear();
      std::vector<fastjet::PseudoJet> constituents = jetFinder->GetJetConstituents(ij);
      Double_t totE=0, totPt=0, totChPt=0, leadChPt=0, neE=0, totNePt=0, leadNePt=0, leadPt=0;
      Double_t leadTrkType=0, nChPart = 0, nNePart = 0;
      Bool_t isHighPtTrigger = kFALSE, isTriggering = kFALSE, isHyperTrack = kFALSE;
      Int_t leadIndex = -1;
      for(UInt_t ic=0; ic<constituents.size(); ic++)
	{
	  if(fVerbosity>10 && radiusIndex==0) printf("ic=%d: user_index=%d, E=%f\n",ic,constituents[ic].user_index(),constituents[ic].E());
	  if(constituents[ic].user_index()<0)
	    {
	      nNePart ++;
	      totNePt += constituents[ic].perp();
	      if(constituents[ic].perp()>leadNePt)
		leadNePt = constituents[ic].perp();

	      neE += constituents[ic].E();
	      if(constituents[ic].perp()>fClsEtMax[fTriggerType])
		isHighPtTrigger = kTRUE;
              if(!isTruth)
                {
                  AliESDCaloCluster *cluster = (AliESDCaloCluster *)fClusterArray->At(constituents[ic].user_index()*(-1)-1);
                  if(cluster->Chi2()>0.5) isTriggering = kTRUE;
                }
	    }
	  else
	    {
	      totChPt += constituents[ic].perp();
	      nChPart ++;
	      if(constituents[ic].perp()>leadChPt)
		{
		  leadChPt = constituents[ic].perp();
		  if(!isTruth)
		    {
		      AliESDtrack *track = (AliESDtrack*) fTrackArray->At(constituents[ic].user_index()-1);
		      leadTrkType = track->GetTRDQuality();
		      if(track->GetIntegratedLength()>500) isHyperTrack = kTRUE;
		    }    
		}
	      if(constituents[ic].perp()>fTrkPtMax[fTriggerType])
		isHighPtTrigger = kTRUE;
	    }
          TParticle part;
          part.SetMomentum(constituents[ic].px(),constituents[ic].py(),constituents[ic].pz(),constituents[ic].E());
          jet->AddTrack(&part); //The references are not usable, this line is aimed to count the number of contituents
	  totE  += constituents[ic].E();
	  totPt += constituents[ic].perp();
	  if(constituents[ic].perp()>leadPt)
	    {
	      leadPt = constituents[ic].perp();
	      leadIndex = ic;
	    } 
	}
      if(fIsEventTriggerBit)   jet->SetTrigger(AliAODJet::kTRDTriggered);
      if(isHighPtTrigger)  jet->SetTrigger(AliAODJet::kHighTrackPtTriggered);
      if(fTriggerType==1)  jet->SetTrigger(AliAODJet::kEMCALTriggered);
      if(GetLeadingZ(ij,jetFinder) > 0.98 )  jet->SetTrigger(AliAnalysisTaskFullppJet::kHighZ);
      if(isTriggering) jet->SetTrigger(AliAnalysisTaskFullppJet::kTrigger);
      if(isHyperTrack) jet->SetTrigger(AliAnalysisTaskFullppJet::kSuspicious);
      if(fIsTPCOnlyVtx) jet->SetTrigger(AliAnalysisTaskFullppJet::kTPCOnlyVtx);
      if(constituents[leadIndex].user_index()>0) jet->SetTrigger(AliAnalysisTaskFullppJet::kLeadCh);

      if(jetsIncl[ij].E()>0)  jet->SetNEF(neE/jetsIncl[ij].E());
      jet->SetPtLeading(leadPt);
      jet->SetPtSubtracted(leadTrkType,0);

      Double_t  effAErrCh = 0, effAErrNe = leadTrkType;
      Double_t chBgEnergy = 10, neBgEnergy = nNePart;
      if(!isTruth)
	{
	  effAErrCh = GetMeasuredJetPtResolution(ij,jetFinder);
	  if(fIsMC && constituents[leadIndex].user_index()>0)
	    {
	      AliESDtrack *track = (AliESDtrack*) fTrackArray->At(constituents[leadIndex].user_index()-1);
	      Double_t pt = track->Pt();
	      Int_t ipart = track->GetLabel();
	      if(ipart>-1 && ipart<fMC->GetNumberOfTracks())
		{
		  AliVParticle* vParticle = fMC->GetTrack(ipart);
		  if(vParticle)
		    {
		      Double_t truePt = vParticle->Pt();
		      chBgEnergy = (truePt-pt)/truePt;
		    }
		}
	    }
	}

      jet->SetEffArea(leadPt, jetFinder->GetJetArea(ij),effAErrCh,effAErrNe);
      jet->SetBgEnergy(chBgEnergy,neBgEnergy);
      if(fVerbosity>10 && isTruth) cout<<jet->ErrorEffectiveAreaCharged()<<"  "<<jet->ErrorEffectiveAreaNeutral()<<endl;
      if(fVerbosity>10) cout<<"jet pt="<<jetsIncl[ij].perp()<<", nef="<<jet->GetNEF()<<", trk eff corr="<<chBgEnergy<<endl;

      if(fVerbosity>5)
	printf("# of ref tracks: %d = %d, and nef=%f\n",jet->GetRefTracks()->GetEntries(), (Int_t)constituents.size(), jet->GetNEF());

      // For catch good high-E jets
      if(fSpotGoodJet && !isTruth)
	{
	  if(jetsIncl[ij].perp()>100)  
	    {
	      printf("\n\n--- HAHAHA: High pt jets ---\n");
	      printf("File: %s, event = %d, pt=%f\n",CurrentFileName(),(Int_t)Entry(),jetsIncl[ij].perp());
	      printf("%s , pt < %f\n", fJetArray->GetName(), fTrkPtMax[1]);
	      printf("Jet: E=%f, eta=%f, phi=%f, # of constituents=%d, nef=%f\n",jetsIncl[ij].E(),jetsIncl[ij].eta(), jetsIncl[ij].phi()*TMath::RadToDeg(), (Int_t)constituents.size(),jet->GetNEF());
	      for(UInt_t ic=0; ic<constituents.size(); ic++)
		{
		  if(constituents[ic].user_index()<0)
		    {
		      AliESDCaloCluster *cluster = (AliESDCaloCluster *)fClusterArray->At(constituents[ic].user_index()*(-1)-1);
		      printf("id = %d, cluster with pt = %f, ncell = %d\n",ic,constituents[ic].perp(), cluster->GetNCells());
		    }
		  else
		    {
		      AliESDtrack *track = (AliESDtrack*) fTrackArray->At(constituents[ic].user_index()-1);
		      printf("id = %d, track with pt = %f, track class = %d, originalPt = %f\n",ic,constituents[ic].perp(),(Int_t)track->GetTRDQuality(), track->GetIntegratedLength());

		    }
		}
	      printf("==============================\n\n");
	    }
	}
      // End of catching good high-E jets
    }
  if(fVerbosity>5) printf("%s has %d jets\n",fJetArray->GetName(), fJetArray->GetEntries());
}

//________________________________________________________________________
Int_t AliAnalysisTaskFullppJet::GetParentParton(const Int_t ipart)
{
  // 
  // Find the parent parton for a given MC particle by tracing back the parent
  // DUMMY; NEED improvement

  return ipart;
}


//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::IsGoodJet(fastjet::PseudoJet jet, Double_t rad)
{
  //
  // Check if the jet pt and direction fulfill the requirement
  //

  if(jet.perp()<1) return kFALSE;
  if(TMath::Abs(jet.eta())>(0.7-rad)) return kFALSE;
  if(jet.phi() < (80*TMath::DegToRad()+rad) || jet.phi() > (180*TMath::DegToRad()-rad) ) return kFALSE;
  return kTRUE;
}


//________________________________________________________________________
void AliAnalysisTaskFullppJet::ProcessMC(const Int_t r)
{
  //
  // Main function for jet finding in MC
  //

  Int_t npart = fMC->GetNumberOfTracks();
  fMcPartArray->Set(npart);
  Int_t countPart = 0;
  for(Int_t ipart=0; ipart<npart; ipart++)
    {
      AliVParticle* vParticle = fMC->GetTrack(ipart);
      if(!IsGoodMcPartilce(vParticle,ipart)) continue;

      Int_t pdgCode = vParticle->PdgCode();
      if( fRejectNK && (pdgCode==130 || pdgCode==2112) ) continue;

      if( fRejectWD && (pdgCode==310 || pdgCode==3112 || pdgCode==3122 || pdgCode==3222 || pdgCode==3312 || pdgCode==3322 || pdgCode==3334)) continue;

      if( fChargedMC && vParticle->Charge()==0 ) continue;

      Int_t index = 1;
      if(vParticle->Charge()==0) { index=-1; }     
      fMcPartArray->AddAt(ipart, countPart);
      countPart++;

      fTrueJetFinder[r]->AddInputVector(vParticle->Px(), vParticle->Py(), vParticle->Pz(), vParticle->P(), (ipart+1)*index);
      if(fVerbosity>10) 
	printf("Input particle: ipart=%d, pdg=%d, species=%s, charge=%d, E=%4.3f\n",(ipart+1)*index,pdgCode,vParticle->GetName(), vParticle->Charge(),vParticle->P());
    }
  fMcPartArray->Set(countPart);
  fTrueJetFinder[r]->Run();

  if(fMcTruthAntikt[r]) FillAODJets(fMcTruthAntikt[r], fTrueJetFinder[r], 1);
  if(fSaveQAHistos)     AnalyzeJets(fTrueJetFinder[r], 2, r);
  if(fRunUE && r==0)    RunAnalyzeUE(fTrueJetFinder[r], 2, 1);

  // Run analysis on secondary particles
  if(fRunSecondaries && fAnaType==0) 
    {
      for(Int_t i=0; i<2; i++)
	{
	  AnalyzeSecondaryContribution(fTrueJetFinder[r],r,i);
	  AnalyzeSecondaryContributionViaMatching(fTrueJetFinder[r],r,0,i);
	  AnalyzeSecondaryContributionViaMatching(fTrueJetFinder[r],r,1,i);
	}
    }
}


//________________________________________________________________________
void AliAnalysisTaskFullppJet::AnalyzeJets(AliFJWrapper *jetFinder, const Int_t type,  const Int_t r)
{
  //
  // Fill all the QA plots for jets
  // Especailly all the constituents plot must be filled here since the information
  // is not available in the output AOD

  Double_t vertex[3] = {0, 0, 0};
  fESD->GetVertex()->GetXYZ(vertex) ;
  TLorentzVector gamma;

  const Int_t nBins = fJetEnergyFraction[type][r]->GetAxis(1)->GetNbins();
  Float_t radiusCut[nBins];
  Float_t eFraction[nBins];
  Int_t   nPart[nBins];
  for(Int_t i=0; i<nBins; i++)
    {
      radiusCut[i] = (fJetEnergyFraction[type][r]->GetAxis(1)->GetBinWidth(1)) * (i+1);
      eFraction[i] = 0.;
      nPart[nBins] = 0;
    }
  std::vector<fastjet::PseudoJet> jetsIncl = jetFinder->GetInclusiveJets();

  for(UInt_t ij=0; ij<jetsIncl.size(); ij++)
    {
      if(type<2 && fCheckTPCOnlyVtx && fIsTPCOnlyVtx) 
      	{
      	  fhJetInTPCOnlyVtx[type][r]->Fill(jetsIncl[ij].perp(),jetsIncl[ij].phi()*TMath::RadToDeg(),jetsIncl[ij].eta());
      	}
      if(!IsGoodJet(jetsIncl[ij],kRadius[r])) continue; // Fidiual cut
      Float_t jetEta = jetsIncl[ij].eta();
      Float_t jetPhi = jetsIncl[ij].phi();
      Float_t jetE   = jetsIncl[ij].E();
      Float_t jetPt  = jetsIncl[ij].perp();

      std::vector<fastjet::PseudoJet> constituents = jetFinder->GetJetConstituents(ij);
      Double_t neE=0, leadingZ = 0, maxPt = 0;
      Int_t constituentType = -1, leadingIndex = 0; 
      for(UInt_t ic=0; ic<constituents.size(); ic++)
	{
	  if(constituents[ic].perp()>maxPt)
	    {
	      maxPt = constituents[ic].perp();
	      leadingIndex = constituents[ic].user_index();
	    }

	  if(constituents[ic].user_index()<0)
	    {
	      neE += constituents[ic].E();
	      constituentType = 3;
	    }
	  else
	    {
	      if(type==2) constituentType = 0;
	      else
		{
		  AliESDtrack *track = (AliESDtrack*) fTrackArray->At(constituents[ic].user_index()-1);
		  constituentType = (Int_t)track->GetTRDQuality();
		}
	    }
	  Double_t cz = GetZ(constituents[ic].px(),constituents[ic].py(),constituents[ic].pz(),jetsIncl[ij].px(),jetsIncl[ij].py(),jetsIncl[ij].pz());
	  fhJetPtVsZ[type][r]->Fill(jetPt,cz, constituentType);
	  if(cz>leadingZ) leadingZ = cz;
	}

      if(type<2 && leadingIndex<0)
	{
	  AliESDCaloCluster *cluster = (AliESDCaloCluster *)fClusterArray->At(leadingIndex*(-1)-1);
	  fhFcrossVsZleading[type][r]->Fill(jetPt,GetExoticEnergyFraction(cluster),leadingZ);
	}

      if(leadingZ > 0.98) continue;  // Z cut

      fJetCount[type][r]->Fill(jetPt);
      if(type==1 && fIsExoticEvent3GeV) fhJetPtInExoticEvent[0][r]->Fill(jetPt);
      if(type==1 && fIsExoticEvent5GeV) fhJetPtInExoticEvent[1][r]->Fill(jetPt);

      Double_t totTrkPt[3] = {0.,0.,0.};
      Double_t chPt = 0;
      for(Int_t i=0; i<nBins; i++) { eFraction[i] = 0.; nPart[i] = 0;}
      Double_t mcSubE=0.;
      Double_t subClsE[5] = {0,0,0,0,0};
      Double_t subTrkPtClean[5] = {0,0,0,0,0};
      Double_t subTrkPtAmbig[5] = {0,0,0,0,0};
      Double_t fraction[5] = {270,0.3,0.5,0.7,1};
      Double_t leadChPt=0., leadNePt=0.;
      Int_t leadChIndex = -1;
      for(UInt_t ic=0; ic<constituents.size(); ic++)
	{
	  Float_t partEta = constituents[ic].eta();
	  Float_t partPhi = constituents[ic].phi();
	  Float_t partE   = constituents[ic].E();
	  Float_t partPt  = constituents[ic].perp();

	  if(constituents[ic].user_index()<0)
	    {
	      fhNeutralPtInJet[type][r]->Fill(jetPt, partPt);
	      if(partPt>leadNePt)
		leadNePt = partPt;
	      if(type<2)
		{
		  AliESDCaloCluster *cluster = (AliESDCaloCluster *)fClusterArray->At(constituents[ic].user_index()*(-1)-1);
		  Double_t clsE = cluster->E();
		  if(cluster->Chi2()>0.5) fhTrigNeuPtInJet[type][r]->Fill(jetPt, partPt);
		  if(fStudySubEInHC || fStudyMcOverSubE)
		    {
		      cluster->GetMomentum(gamma, vertex);
		      Double_t sinTheta = TMath::Sqrt(1-TMath::Power(gamma.CosTheta(),2));
		      
		      Double_t subEtmp = cluster->GetDispersion();
		      Double_t mipETmp = cluster->GetEmcCpvDistance();
		      mcSubE += cluster->GetDistanceToBadChannel()*sinTheta;
		      subClsE[0]   += ((mipETmp>clsE)?clsE:mipETmp)*sinTheta;
		      for(Int_t j=1; j<5; j++)
			{
			  subClsE[j]   += ((fraction[j]*subEtmp>clsE)?clsE:fraction[j]*subEtmp)*sinTheta;
			}
		    }
		}
	    }
	  else
	    {
	      if(partPt>leadChPt) {leadChPt = partPt;leadChIndex=ic;}
	      fhChargedPtInJet[type][r]->Fill(jetPt, partPt);
	      chPt += constituents[ic].perp();
	      if(type<2)
		{
		  AliESDtrack *track = (AliESDtrack*) fTrackArray->At(constituents[ic].user_index()-1);
		  Int_t trkType = (Int_t)track->GetTRDQuality();
		  totTrkPt[trkType] += partPt;
		  Int_t clusterIndex = track->GetEMCALcluster();
		  Int_t clusterPos = -1;
		  Bool_t isExist = kFALSE;
		  for(Int_t j=0; j<fClusterArray->GetEntriesFast(); j++)
		    {
		      AliESDCaloCluster *cluster = (AliESDCaloCluster*)fClusterArray->At(j);
		      if( clusterIndex == cluster->GetID() )
			{
			  isExist = kTRUE;
			  clusterPos = j;
			  break;
			}
		    }
		  if(isExist)
		    {
		      AliESDCaloCluster *cluster = (AliESDCaloCluster*)fClusterArray->At(clusterPos);
		      Double_t subEtmp = cluster->GetDispersion();
		      Double_t mipETmp = cluster->GetEmcCpvDistance();
		      for(Int_t k=0; k<5; k++)
			{
			  if(k==0)
			    {
			      if(mipETmp>cluster->E()) subTrkPtClean[k] += partPt;
			      else             subTrkPtAmbig[k] += partPt;
			    }
			  else
			    {
			      if(fraction[k]*subEtmp>cluster->E()) subTrkPtClean[k] += partPt;
			      else                         subTrkPtAmbig[k] += partPt;
			    }
			}
		    }
		}
	    }

	  Float_t dR = TMath::Sqrt( (partEta-jetEta)*(partEta-jetEta) + (partPhi-jetPhi)*(partPhi-jetPhi) );
	  for(Int_t i=0; i<nBins; i++)
	    {
	      if( dR < radiusCut[i] )
		{
		  eFraction[i] += partE;
		  nPart[i]++;
		}
	    }
	}

      fhLeadNePtInJet[type][r]->Fill(jetPt, leadNePt);
      fhLeadChPtInJet[type][r]->Fill(jetPt, leadChPt);
      if(type<2 && leadChIndex>-1)
	{
	  Double_t cz = GetZ(constituents[leadChIndex].px(),constituents[leadChIndex].py(),constituents[leadChIndex].pz(),jetsIncl[ij].px(),jetsIncl[ij].py(),jetsIncl[ij].pz());
	  fhChLeadZVsJetPt[type][r]->Fill(jetPt, cz);
	}

      if((fStudySubEInHC||fStudyMcOverSubE) && type<2)
	{
	  for(Int_t i=0; i<5; i++)
	    {
	      if(fStudySubEInHC) 
		{
		  fhSubClsEVsJetPt[type][r][i]->Fill(jetPt-subClsE[4],subClsE[i]/(jetPt-subClsE[4]));
		  fhHCTrkPtClean[type][r][i]->Fill(jetPt-subClsE[4],subTrkPtClean[i]/(jetPt-subClsE[4]));
		  fhHCTrkPtAmbig[type][r][i]->Fill(jetPt-subClsE[4],subTrkPtAmbig[i]/(jetPt-subClsE[4]));
		}
	      if(type==0 && fIsMC && fStudyMcOverSubE)
		{
		  fHCOverSubE[r][i]->Fill(jetPt-subClsE[4],subClsE[i]-mcSubE);
		  fHCOverSubEFrac[r][i]->Fill(jetPt-subClsE[4],(subClsE[i]-mcSubE)/(jetPt-subClsE[4]));
		}
	    }
	}
      if(type<2 && chPt>0)
	{
	  for(Int_t i=0; i<3; i++)
	    {
	      fRelTrkCon[type][r]->Fill(jetPt,totTrkPt[i]/chPt,i);
	    }
	}


      for(Int_t ibin=0; ibin<nBins; ibin++)
	{
	  Double_t fill1[3] = {jetPt,radiusCut[ibin]-0.005,eFraction[ibin]/jetE};
	  fJetEnergyFraction[type][r]->Fill(fill1);
	  Double_t fill2[3] = {jetPt,radiusCut[ibin]-0.005,static_cast<Double_t>(nPart[ibin])};
	  fJetNPartFraction[type][r]->Fill(fill2);
	}

      // Get the jet pt containing tracks or clusters above some threshold
      if(type<2)
	{
	  Double_t thres[3] = {15,25,40};
	  Int_t okCh[3] = {0,0,0};
	  Int_t okNe[3] = {0,0,0};
	  Double_t lowPt[2] = {0.,0.};
	  for(UInt_t ic=0; ic<constituents.size(); ic++)
	    {
	      Float_t partPt  = constituents[ic].perp();

	      if(partPt<0.3) lowPt[0] += partPt;
	      else if(partPt<0.5) lowPt[1] += partPt;

	      if(constituents[ic].user_index()>0)
		{
		  for(Int_t it=0; it<3; it++)
		    {
		      if(partPt>thres[it]) okCh[it] = 1;
		    }
		}
	      else
		{
		  for(Int_t icl=0; icl<3; icl++)
		    {
		      if(partPt>thres[icl]) okNe[icl] = 1;
		    }
		}
	    }
	  for(Int_t i=0; i<3; i++)
	    {
	      if(okCh[i]==1)
		fhJetPtWithTrkThres[type][r]->Fill(i,jetPt);
	      if(okNe[i]==1)
		fhJetPtWithClsThres[type][r]->Fill(i,jetPt);
	    }
	  for(Int_t k=0; k<2; k++) fhJetPtVsLowPtCons[type][r][k]->Fill(jetPt,lowPt[k]/jetPt);
	}
    }
}

//________________________________________________________________________
void AliAnalysisTaskFullppJet::AnalyzeSecondaryContribution(AliFJWrapper *jetFinder, const Int_t r, const Int_t etaCut)
{
  //
  // Analyze secondaries
  //

  std::vector<fastjet::PseudoJet> jetsIncl = jetFinder->GetInclusiveJets();
  for(UInt_t ij=0; ij<jetsIncl.size(); ij++)
    {
      Float_t jetEta = jetsIncl[ij].eta();
      Float_t jetPt  = jetsIncl[ij].perp();
      if(TMath::Abs(jetEta)>0.5*etaCut+0.5 || jetPt<1) continue;
      std::vector<fastjet::PseudoJet> constituents = jetFinder->GetJetConstituents(ij);
      Double_t dNKPt = 0, dWPPt = 0, weakPt=0, nkPt=0;
      Int_t type = -1;
      for(UInt_t ic=0; ic<constituents.size(); ic++)
	{
	  Int_t ipart = TMath::Abs(constituents[ic].user_index())-1;
	  AliMCParticle* mcParticle = (AliMCParticle*)fMC->GetTrack(ipart);
	  if(!mcParticle) continue;
	  Int_t pdg = mcParticle->PdgCode();
	  if(pdg==310 || (pdg<=3400 && pdg>=3100)) weakPt += mcParticle->Pt();
	  if(pdg==130 || pdg==2112)  nkPt += mcParticle->Pt();

	  // Weak decaying particles
	  if(pdg==310) type=0;
	  else if (pdg==3122) type=1;
	  else if (pdg<=3400 && pdg>=3100) type=2;
	  else type=-1;
	  if(type>-1)
	    {
	      Int_t binx = fhSecondaryResponse[type]->GetXaxis()->FindFixBin(mcParticle->Pt());
	      TH1F *htmp = (TH1F*)fhSecondaryResponse[type]->ProjectionY(Form("hpro_%d_%d_%d",(Int_t)Entry(),ij,ic),binx,binx);
	      Double_t pro = htmp->GetRandom(); 
	      dWPPt += pro*mcParticle->Pt() - mcParticle->Pt();
	      delete htmp;
	    }

	  // Missing neutron and K0L
	  if(pdg==130 || pdg==2112) dNKPt -= mcParticle->Pt();
	}

      fhNKFracVsJetPt[etaCut][r]->Fill(jetPt,nkPt/jetPt);
      fhWeakFracVsJetPt[etaCut][r]->Fill(jetPt,weakPt/jetPt);

      Double_t jetNewWPPt = jetPt + dWPPt;
      fhJetResponseWP[etaCut][r]->Fill(jetPt,jetNewWPPt);
      fhJetResolutionWP[etaCut][r]->Fill(jetPt,(jetPt-jetNewWPPt)/jetPt);

      Double_t jetNewNKPt = jetPt + dNKPt;
      fhJetResponseNK[etaCut][r]->Fill(jetPt,jetNewNKPt);
      fhJetResolutionNK[etaCut][r]->Fill(jetPt,(jetPt-jetNewNKPt)/jetPt);
    }
}


//________________________________________________________________________
void AliAnalysisTaskFullppJet::AnalyzeSecondaryContributionViaMatching(AliFJWrapper *jetFinder, const Int_t r, const Int_t type, const Int_t etaCut)
{
  //
  // Estimate the contribution of missing energies via matching
  // type = 0 -> NK
  // type = 1 -> WP
  //

  if(type!=0 && type!=1) return;

  AliFJWrapper fj("fj","fj");
  fj.CopySettingsFrom(*jetFinder);

  Int_t npart = fMC->GetNumberOfTracks();
  Int_t pType = -1;
  for(Int_t ipart=0; ipart<npart; ipart++)
    {
      AliVParticle* vParticle = fMC->GetTrack(ipart);
      if(!IsGoodMcPartilce(vParticle,ipart)) continue;
      Int_t pdgCode = vParticle->PdgCode();
      Double_t pt = vParticle->Pt();
      if( type==0 && (pdgCode==130 || pdgCode==2112) ) continue; // Reject NK
      if(type==1)
	{
	  if(pdgCode==310) pType=0;
	  else if (pdgCode==3122) pType=1;
	  else if (pdgCode<=3400 && pdgCode>=3100) pType=2;
	  else pType=-1;
	  if(pType>-1)
	    {
	      Int_t binx = fhSecondaryResponse[pType]->GetXaxis()->FindFixBin(vParticle->Pt());
	      TH1F *htmp = (TH1F*)fhSecondaryResponse[pType]->ProjectionY(Form("hpro_%d_%d",(Int_t)Entry(),ipart),binx,binx);
	      Double_t pro = htmp->GetRandom(); 
	      pt = pro * vParticle->Pt();
	      delete htmp;
	    }
	}
      Int_t index = 1;
      if(vParticle->Charge()==0) { index=-1; }     
      fj.AddInputVector(vParticle->Px()*pt/vParticle->Pt(), vParticle->Py()*pt/vParticle->Pt(), vParticle->Pz(), vParticle->P(), (ipart+1)*index);
    }

  fj.Run(); 
  std::vector<fastjet::PseudoJet> jets_incl_mc = fj.GetInclusiveJets(); 
  std::vector<fastjet::PseudoJet> jets_incl_mc_std = jetFinder->GetInclusiveJets(); 

  for(UInt_t ij=0; ij<jets_incl_mc.size(); ij++)
    {
      Float_t jetEta = jets_incl_mc[ij].eta();
      Float_t jetPt  = jets_incl_mc[ij].perp();
      if(TMath::Abs(jetEta)>0.5*etaCut+0.5 || jetPt<5) continue;
      Double_t dEta, dPhi;
      Int_t index = FindSpatialMatchedJet(jets_incl_mc[ij], jetFinder, dEta, dPhi, 1);
      if(index>-1)
	{
	  Double_t jetPtStd = jets_incl_mc_std[index].perp();
	  Double_t dR = TMath::Sqrt(dEta*dEta+dPhi*dPhi);
	  if(type==0) fhJetResolutionNKSM[etaCut][r]->Fill(jetPtStd,(jetPtStd-jetPt)/jetPtStd,dR);
	  if(type==1) fhJetResolutionWPSM[etaCut][r]->Fill(jetPtStd,(jetPtStd-jetPt)/jetPtStd,dR);

	  if(dR<kdRCut[r])
	    {
	      if(type==0) fhJetResponseNKSM[etaCut][r]->Fill(jetPtStd,jetPt);
	      if(type==1) fhJetResponseWPSM[etaCut][r]->Fill(jetPtStd,jetPt);
	    }
	}
    }
}

//________________________________________________________________________
void AliAnalysisTaskFullppJet::RunAnalyzeUE(AliFJWrapper *jetFinder, const Int_t type, const Bool_t isMCTruth)
{
  //
  // Run analysis to estimate the underlying event
  // Adapted from Oliver

  std::vector<fastjet::PseudoJet> jetsIncl = jetFinder->GetInclusiveJets();
  Double_t leadpt=0, leadPhi = -999, leadEta = -999;
  Int_t leadIndex = -1;
  for(UInt_t ij=0; ij<jetsIncl.size(); ij++)
    {
      Double_t jetEta = jetsIncl[ij].eta();
      Double_t jetPt = jetsIncl[ij].perp();
      Double_t jetPhi = jetsIncl[ij].phi();
      if(leadpt<jetPt)
	{
	  leadpt = jetPt;
	  leadPhi = jetPhi;
	  leadEta = jetEta;
	  leadIndex = ij;
	}
    }
  if(leadpt<1 || TMath::Abs(leadEta)>0.5 ) return;

  Int_t backIndex = -1;
  Bool_t isBackToBack = kFALSE;
  for(UInt_t ij=0; ij<jetsIncl.size(); ij++)
    {
      Double_t dPhi = TMath::Abs(jetsIncl[ij].phi()-leadPhi);
      if(dPhi > kPI) dPhi = 2*kPI - dPhi;
      if(dPhi>150*TMath::DegToRad() && jetsIncl[ij].perp()/leadpt > 0.8)
	{
	  backIndex = ij;
	  isBackToBack = kTRUE;
	}
    }

  for(Int_t ij=0; ij<(Int_t)jetsIncl.size(); ij++)
    {
      if(ij==leadIndex || ij==backIndex) continue;
      if(TMath::Abs(jetsIncl[ij].eta())>0.5) continue;
      if(jetsIncl[ij].perp()>15) isBackToBack = kFALSE;
    }


  Double_t axis[2] = {leadPhi+0.5 * kPI, leadPhi-0.5 * kPI};
  if(axis[0]>2*kPI) axis[0] -= 2*kPI;
  if(axis[1]<0) axis[1] += 2*kPI;

  fhUEJetPtNorm[type][0][0]->Fill(leadpt);
  if(isBackToBack)  fhUEJetPtNorm[type][0][1]->Fill(leadpt);

  if(!isMCTruth)
    {
      Int_t ntracks = fTrackArray->GetEntriesFast();
      Double_t vertex[3] = {0, 0, 0};
      fESD->GetVertex()->GetXYZ(vertex) ;
      TLorentzVector gamma;
      Int_t nclusters = fClusterArray->GetEntriesFast();
      
      for(Int_t j=0; j<2; j++)
	{
	  Double_t ueCh = 0, ueChNe = 0.;
	  for(Int_t it=0; it<ntracks; it++)
	    {
	      AliESDtrack *t = (AliESDtrack*) fTrackArray->At(it);
	      if(!t) continue;
	      Double_t dPhi = TMath::Abs(axis[j]-t->Phi());
	      Double_t dEta = TMath::Abs(leadEta-t->Eta());
	      if(dPhi > kPI) dPhi = 2*kPI - dPhi;
	      if(TMath::Sqrt(dPhi*dPhi+dEta*dEta)<0.4) 
		{
		  fhUEJetPtVsConsPt[type][0][0]->Fill(leadpt,t->Pt());
		  if(isBackToBack) fhUEJetPtVsConsPt[type][0][1]->Fill(leadpt,t->Pt());
		  ueCh += t->Pt();
		  if(TMath::Abs(leadEta-0.4)<0.7 && axis[j]>80*TMath::DegToRad()+0.4 && axis[j]<180*TMath::DegToRad()-0.4)
		    {
		      fhUEJetPtVsConsPt[type][1][0]->Fill(leadpt,t->Pt());
		      if(isBackToBack) fhUEJetPtVsConsPt[type][1][1]->Fill(leadpt,t->Pt());
		      ueChNe  += t->Pt();
		    }
		}
	    }
	  fhUEJetPtVsSumPt[type][0][0]->Fill(leadpt,ueCh);
	  if(isBackToBack) fhUEJetPtVsSumPt[type][0][1]->Fill(leadpt,ueCh);
	  
	  if(!(TMath::Abs(leadEta-0.4)<0.7 && axis[j]>80*TMath::DegToRad()+0.4 && axis[j]<180*TMath::DegToRad()-0.4)) continue;
	  fhUEJetPtNorm[type][1][0]->Fill(leadpt);
	  if(isBackToBack) fhUEJetPtNorm[type][1][1]->Fill(leadpt);
	  for(Int_t ic=0; ic<nclusters; ic++)
	    {
	      AliESDCaloCluster * cl = (AliESDCaloCluster *)fClusterArray->At(ic);
	      if(!cl) continue;
	      cl->GetMomentum(gamma, vertex);
	      Double_t clsPhi = gamma.Phi();
	      if(clsPhi<0) clsPhi += 2*kPI;
	      Double_t dPhi = TMath::Abs(axis[j]-clsPhi);
	      Double_t dEta = TMath::Abs(leadEta-gamma.Eta());
	      if(dPhi > kPI) dPhi = 2*kPI - dPhi;
	      if(TMath::Sqrt(dPhi*dPhi+dEta*dEta)<0.4) 
		{
		  ueChNe  += gamma.Pt();
		  fhUEJetPtVsConsPt[type][1][0]->Fill(leadpt,gamma.Pt());
		  if(isBackToBack) fhUEJetPtVsConsPt[type][1][1]->Fill(leadpt,gamma.Pt());
		}
	    }
	  fhUEJetPtVsSumPt[type][1][0]->Fill(leadpt,ueChNe);
	  if(isBackToBack)  fhUEJetPtVsSumPt[type][1][1]->Fill(leadpt,ueChNe); 
	}
    }
  else
    {
      fhUEJetPtNorm[type][1][0]->Fill(leadpt);
      if(isBackToBack) fhUEJetPtNorm[type][1][1]->Fill(leadpt);
      Int_t npart = fMcPartArray->GetSize();
      for(Int_t j=0; j<2; j++)
	{
	  Double_t ueCh = 0, ueChNe = 0., ueChNe2 = 0.;
	  for(Int_t ipos=0; ipos<npart; ipos++)
	    {
	      AliVParticle* vParticle = fMC->GetTrack(fMcPartArray->At(ipos));
	      if(!vParticle) continue;
	      Double_t dPhi = TMath::Abs(axis[j]-vParticle->Phi());
	      Double_t dEta = TMath::Abs(leadEta-vParticle->Eta());
	      if(dPhi > kPI) dPhi = 2*kPI - dPhi;
	      if(TMath::Sqrt(dPhi*dPhi+dEta*dEta)<0.4) 
		{
		  Double_t pt = vParticle->Pt();
		  ueChNe += pt;
		  fhUEJetPtVsConsPt[type][1][0]->Fill(leadpt,pt);
		  if(isBackToBack)  fhUEJetPtVsConsPt[type][1][1]->Fill(leadpt,pt);
		  if( vParticle->Charge()!=0 ) 
		    {
		      fhUEJetPtVsConsPt[type][0][0]->Fill(leadpt,pt);
		      if(isBackToBack) fhUEJetPtVsConsPt[type][0][1]->Fill(leadpt,pt);
		      ueCh += pt;
		      ueChNe2 += pt;
		    }
		  else
		    {
		      if(pt>0.5) ueChNe2 += pt;
		    }
		}
	    }
	  fhUEJetPtVsSumPt[type][0][0]->Fill(leadpt,ueCh);
	  fhUEJetPtVsSumPt[type][1][0]->Fill(leadpt,ueChNe);
	  if(isBackToBack) fhUEJetPtVsSumPt[type][0][1]->Fill(leadpt,ueCh);
	  if(isBackToBack) fhUEJetPtVsSumPt[type][1][1]->Fill(leadpt,ueChNe);
	}
    }
}

//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::IsGoodJet(AliAODJet *jet, Double_t rad)
{
  // 
  // Check if it is a good jet 
  //

  if(jet->Pt()<1) return kFALSE;
  if(TMath::Abs(jet->Eta())>(0.7-rad)) return kFALSE;
  if(jet->Phi() < (80*TMath::DegToRad()+rad) || jet->Phi() > (180*TMath::DegToRad()-rad) ) return kFALSE;
  return kTRUE;
}


//________________________________________________________________________
Double_t AliAnalysisTaskFullppJet::GetLeadingZ(const Int_t jetIndex, AliFJWrapper *jetFinder)
{
  //
  // Get the leading z of the input jet
  //

  Double_t z = 0;
  std::vector<fastjet::PseudoJet> constituents = jetFinder->GetJetConstituents(jetIndex);
  std::vector<fastjet::PseudoJet> jetsIncl = jetFinder->GetInclusiveJets();
  Int_t index = -1;
  Double_t maxPt = 0;
  for(UInt_t ic=0; ic<constituents.size(); ic++)
    {
      if(constituents[ic].perp()>maxPt)
	{
	  maxPt = constituents[ic].perp();
	  index = ic;
	}
    }
  if(index>-1)
    z = GetZ(constituents[index].px(),constituents[index].py(),constituents[index].pz(),jetsIncl[jetIndex].px(),jetsIncl[jetIndex].py(),jetsIncl[jetIndex].pz());
  return z;
}

//________________________________________________________________________
Double_t AliAnalysisTaskFullppJet::GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz, const Double_t jetPx, const Double_t jetPy, const Double_t jetPz) const
{
  // 
  // Get the z of a constituent inside of a jet
  //

  return (trkPx*jetPx+trkPy*jetPy+trkPz*jetPz)/(jetPx*jetPx+jetPy*jetPy+jetPz*jetPz);
}

//________________________________________________________________________
Double_t AliAnalysisTaskFullppJet::GetMeasuredJetPtResolution(const Int_t jetIndex, AliFJWrapper *jetFinder)
{
  //
  // Get jet energy resoultion due to intrinsic detector effects
  //

  Double_t jetSigma2 = 0;
  std::vector<fastjet::PseudoJet> constituents = jetFinder->GetJetConstituents(jetIndex);
  for(UInt_t ic=0; ic<constituents.size(); ic++)
    {
      if(constituents[ic].user_index()>0)
	{
	  AliESDtrack *track = (AliESDtrack*) fTrackArray->At(constituents[ic].user_index()-1);
	  jetSigma2 += TMath::Power(track->Pt()*track->Pt()*TMath::Sqrt(track->GetSigma1Pt2()),2);
	}
      else
	{
	  AliESDCaloCluster *cluster = (AliESDCaloCluster *)fClusterArray->At(constituents[ic].user_index()*(-1)-1);
	  jetSigma2 += TMath::Power(cluster->GetTOF(),2);
	}
    }
  return TMath::Sqrt(jetSigma2);
}



//________________________________________________________________________
Double_t AliAnalysisTaskFullppJet::GetJetMissPtDueToTrackingEfficiency(const Int_t jetIndex, AliFJWrapper *jetFinder, const Int_t radiusIndex)
{
  //
  // Correct the tracking inefficiency explicitly
  //

  Double_t misspt = 0;
  std::vector<fastjet::PseudoJet> jetsIncl = jetFinder->GetInclusiveJets();
  Double_t jetPt = jetsIncl[jetIndex].perp();
  if(!fhCorrTrkEffPtBin[fTriggerType][radiusIndex])
    {
      printf("Warning: can't get the mean # of tracks per jet with pt=%f in: trigger=%d, radiusIndex=%d\n",jetPt,fTriggerType,radiusIndex);
      return 0;
    }
  Int_t ibin = fhCorrTrkEffPtBin[fTriggerType][radiusIndex]->FindFixBin(jetPt);
  if(!fhCorrTrkEffSample[fTriggerType][radiusIndex][ibin-1] || fhCorrTrkEffSample[fTriggerType][radiusIndex][ibin-1]->Integral()<0.001)
    {
      printf("Warning: no sampling distrubtion for jet with pt=%f\n",jetPt);
      return 0;
    }
  Double_t ntrack = fhCorrTrkEffPtBin[fTriggerType][radiusIndex]->GetBinContent(ibin);
  Int_t nTrk = (Int_t) ntrack;
  Double_t res = ntrack-nTrk;
  Double_t pro1 = fRandomGen->Uniform();
  if(pro1<res) nTrk++;
  for(Int_t itry=0; itry<nTrk; itry++)
    {
      Double_t trkPt = fhCorrTrkEffSample[fTriggerType][radiusIndex][ibin-1]->GetRandom();
      if(trkPt/jetPt>fTrkEffCorrCutZ) continue;
      Double_t eff = GetTrkEff(trkPt);
      Double_t pro = fRandomGen->Uniform();
      if(pro>eff) misspt += trkPt;
    }
  return misspt;
}


//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::IsGoodMcPartilce(const AliVParticle* vParticle, const Int_t ipart)
{
  //
  // Select good primary particles to feed into jet finder
  //

  if(!vParticle) return kFALSE;
  if(!fMC->IsPhysicalPrimary(ipart)) return kFALSE;
  if (TMath::Abs(vParticle->Eta())>2) return kFALSE;
  return kTRUE;
}

//________________________________________________________________________
Int_t AliAnalysisTaskFullppJet::FindSpatialMatchedJet(fastjet::PseudoJet jet, AliFJWrapper *jetFinder, Double_t &dEta, Double_t &dPhi, Double_t maxR)
{
  //
  // Find spatially matched detector and particle jets
  //

  Int_t index=-1;
  dEta=-999, dPhi=-999;
  std::vector<fastjet::PseudoJet> jets_incl = jetFinder->GetInclusiveJets();  
  for(UInt_t ij=0; ij<jets_incl.size(); ij++)
    {
      if(jets_incl[ij].perp()<5) continue;
      if(TMath::Abs(jets_incl[ij].eta())>1) continue;
      Double_t tmpR = TMath::Sqrt( TMath::Power(jet.eta()-jets_incl[ij].eta(), 2) + TMath::Power(jet.phi()-jets_incl[ij].phi(), 2) );
      if(tmpR<maxR)
	{
	  maxR=tmpR;
	  index=ij;
	  dEta = jet.eta()-jets_incl[ij].eta();
	  dPhi = jet.phi()-jets_incl[ij].phi();
	}
    }
  return index;
}

//________________________________________________________________________
Int_t AliAnalysisTaskFullppJet::FindEnergyMatchedJet(AliFJWrapper *jetFinder1, const Int_t index1, AliFJWrapper *jetFinder2, const Double_t fraction)
{
  //
  // Find matched detector and particle jets based on shared constituents
  //

  Int_t matchedIndex = -1;
  std::vector<fastjet::PseudoJet> jetsIncl1 = jetFinder1->GetInclusiveJets();  
  std::vector<fastjet::PseudoJet> jetsIncl2 = jetFinder2->GetInclusiveJets();
  std::vector<fastjet::PseudoJet> constituents1 = jetFinder1->GetJetConstituents(index1);
  Double_t jetPt1 = jetsIncl1[index1].perp();
  if(jetPt1<0) return matchedIndex;

  for(UInt_t ij2=0; ij2<jetsIncl2.size(); ij2++)
    {
      Double_t jetPt2  = jetsIncl2[ij2].perp();
      if(jetPt2<0) return matchedIndex;
      std::vector<fastjet::PseudoJet> constituents2 = jetFinder2->GetJetConstituents(ij2);
      Double_t sharedPt1 = 0., sharedPt2 = 0.;
      for(UInt_t ic2=0; ic2<constituents2.size(); ic2++)
	{
	  Int_t mcLabel = constituents2[ic2].user_index()-1;
	  Double_t consPt2 = constituents2[ic2].perp();
	  for(UInt_t ic1=0; ic1<constituents1.size(); ic1++)
	    {
	      Double_t consPt1 = constituents1[ic1].perp();
	      if(constituents1[ic1].user_index()>0)
		{
		  AliESDtrack *track = (AliESDtrack*) fTrackArray->At(constituents1[ic1].user_index()-1);
		  if(track->GetLabel()==mcLabel)  {sharedPt2 += consPt2; sharedPt1 += consPt1; cout<<"Found a matched track"<<endl;break;}
		}
	      else
		{
		  AliESDCaloCluster *cluster = (AliESDCaloCluster *)fClusterArray->At(constituents1[ic1].user_index()*(-1)-1);
		  if(cluster->GetLabel()==mcLabel) {sharedPt2 += consPt2; sharedPt1 += consPt1; cout<<"Found a matched cluster"<<endl;break;}
		}
	    }
	}
      cout<<sharedPt1/jetPt1<<"  "<<sharedPt2/jetPt2<<endl;
      if(sharedPt1/jetPt1 > fraction && sharedPt2/jetPt2 > fraction)
	{
	  matchedIndex = ij2;
	  break;
	} 
    }
  return matchedIndex;
}

//________________________________________________________________________
void AliAnalysisTaskFullppJet::GetESDTrax()
{
  //
  // Get esd tracks.
  //

  Int_t nTrax = fESD->GetNumberOfTracks();
  if(fVerbosity>5) printf("[i] # of tracks in event: %d\n",nTrax);

  for (Int_t i = 0; i < nTrax; ++i) 
    {
      AliESDtrack* esdtrack = fESD->GetTrack(i);
      if (!esdtrack) 
	{
	  AliError(Form("Couldn't get ESD track %d\n", i));
	  continue;
	}

      AliESDtrack *newtrack = GetAcceptTrack(esdtrack);
      if(!newtrack) continue;

      Double_t pt  = newtrack->Pt();
      Double_t eta = newtrack->Eta();
      if (pt < fTrkPtMin[fTriggerType] || pt > fTrkPtMax[fTriggerType] || TMath::Abs(eta) > fTrkEtaMax)
	{
	  delete newtrack;
	  continue;
	}

      if(fSysTrkEff)
	{
	  Double_t rand = fRandomGen->Uniform();
	  if(rand<fVaryTrkEff)
	    {
	      delete newtrack;
	      continue;
	    }
	}
      newtrack->SetIntegratedLength(esdtrack->Pt());
      fTrackArray->Add(newtrack);
    }
  if(fVerbosity>5) printf("[i] # of tracks in event: %d\n", fTrackArray->GetEntries());
  fNTracksPerChunk += fTrackArray->GetEntries();
}

//
//________________________________________________________________________
//
AliESDtrack *AliAnalysisTaskFullppJet::GetAcceptTrack(AliESDtrack *esdtrack)
{
  //
  // Get the hybrid tracks
  //

  AliESDtrack *newTrack = 0x0;

  if(fTrackCutsType==0 || fTrackCutsType==3)
    {
      if(fEsdTrackCuts->AcceptTrack(esdtrack))
	{
	  newTrack = new AliESDtrack(*esdtrack);
	  newTrack->SetTRDQuality(0);
	}
      else if(fHybridTrackCuts1->AcceptTrack(esdtrack))
	{
	  if(esdtrack->GetConstrainedParam())
	    {
	      newTrack = new AliESDtrack(*esdtrack);
	      const AliExternalTrackParam* constrainParam = esdtrack->GetConstrainedParam();
	      newTrack->Set(constrainParam->GetX(),constrainParam->GetAlpha(),constrainParam->GetParameter(),constrainParam->GetCovariance());
	      newTrack->SetTRDQuality(1);		
	    }
	  else 
	    return 0x0;
	}
      else if(fHybridTrackCuts2->AcceptTrack(esdtrack))
	{
	  if(esdtrack->GetConstrainedParam())
	    {
	      newTrack = new AliESDtrack(*esdtrack);
	      const AliExternalTrackParam* constrainParam = esdtrack->GetConstrainedParam();
	      newTrack->Set(constrainParam->GetX(),constrainParam->GetAlpha(),constrainParam->GetParameter(),constrainParam->GetCovariance());
	      newTrack->SetTRDQuality(2);		
	    }
	  else 
	    return 0x0;
	}
      else
	{
	  return 0x0;
	}
    }
  else if(fTrackCutsType==1)
    {
      if(fEsdTrackCuts->AcceptTrack(esdtrack))
	{
	  newTrack = AliESDtrackCuts::GetTPCOnlyTrack(const_cast<AliESDEvent*>(fESD),esdtrack->GetID());// use TPC only tracks with non default SPD vertex
	  if(!newTrack) return 0x0;  
	  AliExternalTrackParam exParam;
	  Bool_t relate = newTrack->RelateToVertexTPC(fESD->GetPrimaryVertexSPD(),fESD->GetMagneticField(),kVeryBig,&exParam); //constrain to SPD vertex
	  if( !relate )
	    {
	      delete newTrack;
	      return 0x0;
	    }
	  newTrack->Set(exParam.GetX(),exParam.GetAlpha(),exParam.GetParameter(),exParam.GetCovariance());
	  newTrack->SetTRDQuality(1);
	}
      else
	{
	  return 0x0;
	}
    }
  else if (fTrackCutsType==2)
    {
      if(fEsdTrackCuts->AcceptTrack(esdtrack))
	{
	  newTrack = new AliESDtrack(*esdtrack);
	  newTrack->SetTRDQuality(0);
	}
      else
	return 0x0;
    }
  else
    {
      printf("Unknown track cuts type: %d\n",fTrackCutsType);
      return 0x0;
    }

  return newTrack;
}

//________________________________________________________________________
void AliAnalysisTaskFullppJet::GetESDEMCalClusters()
{
  //
  // Get emcal clusters - selected
  //

  if(fSysTrkClsMth)
    {
      if (!TGeoGlobalMagField::Instance()->GetField()) fESD->InitMagneticField();
      fRecoUtil->FindMatches(fESD,0x0,fGeom);
      fRecoUtil->SetClusterMatchedToTrack(fESD);
      fRecoUtil->SetTracksMatchedToCluster(fESD);
    }

  const Int_t nCaloClusters = fESD->GetNumberOfCaloClusters();
  for(Int_t i = 0 ; i < nCaloClusters; i++) 
    {
      AliESDCaloCluster * cl = (AliESDCaloCluster *) fESD->GetCaloCluster(i);
      if(!IsGoodCluster(cl)) continue;
      AliESDCaloCluster *newCluster = new AliESDCaloCluster(*cl);
      if (newCluster->E() < fClsEtMin[fTriggerType] || newCluster->E() > fClsEtMax[fTriggerType]) 
	{delete newCluster; continue;}

      // Absolute scale
      if(fPeriod.Contains("lhc11a",TString::kIgnoreCase)) 
	{
	  Double_t newE = newCluster->E() * 1.02;
	  newCluster->SetE(newE);
	}

      // Trigger efficiency systematic uncertainty
      if(fSysJetTrigEff)
	{
	  Double_t newE = newCluster->E() * (1+fVaryJetTrigEff);
	  newCluster->SetE(newE);
	  if(fTriggerType==0) fhClsE[fTriggerType]->Fill(newCluster->E());
	  if(fTriggerType==1)
	    {
	      if(fPeriod.Contains("lhc12a15a",TString::kIgnoreCase)) fhClsE[0]->Fill(newCluster->E());
	      if(newCluster->Chi2()>0.5) fhClsE[fTriggerType]->Fill(newCluster->E());
	    }
	}

      // Cluster energy scale systematic uncertainty
      if(fSysClusterEScale)
	{
	  Double_t newE = newCluster->E() * (1+fVaryClusterEScale);
	  newCluster->SetE(newE);
	}

      // Cluster energy resolution systematic uncertainty
      if(fSysClusterERes)
        {
          Double_t oldE = newCluster->E();
          Double_t resolution = fClusterEResolution->Eval(oldE);
          Double_t smear = resolution * TMath::Sqrt((1+fVaryClusterERes)*(1+fVaryClusterERes)-1);
          Double_t newE = oldE + fRandomGen->Gaus(0, smear);
          newCluster->SetE(newE);
        }

      // non-linearity systematic uncertainty
      if(fSysNonLinearity)
	{
	  Double_t oldE = newCluster->E();
	  Double_t newE = oldE/fNonLinear->Eval(oldE) * 1.012;
	  newCluster->SetE(newE);
	}

      // clusterizer systematic uncertainty
      if(fSysClusterizer)
	{
	  fhSysClusterE[fTriggerType][0]->Fill(newCluster->E());
	  fhSysNCellVsClsE[fTriggerType][0]->Fill(newCluster->E(),newCluster->GetNCells());
	}

      // hadronic correction
      Double_t clsE = newCluster->E();
      Double_t subE = 0., eRes = 0., mcSubE = 0, MIPE = 0.;
      if(fElectronRejection || fHadronicCorrection)
	subE= SubtractClusterEnergy(newCluster,  eRes, MIPE, mcSubE);

      if(!fStudySubEInHC && !fStudyMcOverSubE)  clsE -= subE;
      if(clsE<0) {delete newCluster; continue;}
      newCluster->SetE(clsE);
      newCluster->SetTOF(eRes);
      newCluster->SetDispersion(subE);
      newCluster->SetEmcCpvDistance(MIPE);
      newCluster->SetDistanceToBadChannel(mcSubE);
      fClusterArray->Add(newCluster);

      // clusterizer systematic uncertainty
      if(fSysClusterizer)
	{
	  fhSysClusterE[fTriggerType][1]->Fill(newCluster->E());
	  fhSysNCellVsClsE[fTriggerType][1]->Fill(newCluster->E(),newCluster->GetNCells());
	}
    }

  if(fVerbosity>5) printf("[i] # of EMCal clusters in event: %d\n", fClusterArray->GetEntries());

}


//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::IsGoodCluster(AliESDCaloCluster *cluster)
{
  //
  // Select good clusters
  //

  if(!cluster) return kFALSE;
  if (!cluster->IsEMCAL()) return kFALSE;
  if(fRejectExoticCluster && fRecoUtil->IsExoticCluster(cluster, (AliVCaloCells*)fESD->GetEMCALCells())) return kFALSE;
  if(fRemoveBadChannel && fRecoUtil->ClusterContainsBadChannel(fGeom, cluster->GetCellsAbsId(),cluster->GetNCells())) return kFALSE;
  return kTRUE;
}


//________________________________________________________________________
Double_t AliAnalysisTaskFullppJet::SubtractClusterEnergy(AliESDCaloCluster *cluster, Double_t &eRes, Double_t &MIPE, Double_t &mcSubE)
{
  //
  // Hadronic correction
  //

  mcSubE = 0;
  eRes = 0; 
  MIPE = 0;

  eRes += TMath::Power(fClusterEResolution->Eval(cluster->E()),2);
  Double_t subE = 0., sumTrkPt = 0., sumTrkP = 0.;
  Int_t nTrack = 0;
  TArrayI *matched = cluster->GetTracksMatched();
  if(!matched) return 0;
  for(Int_t im=0; im<matched->GetSize(); im++)
    {
      Int_t trkIndex = matched->At(im);
      if(trkIndex<0 || trkIndex>=fESD->GetNumberOfTracks()) continue;
      Bool_t isSelected = kFALSE;
      Int_t index = -1;
      for(Int_t j=0; j<fTrackArray->GetEntriesFast(); j++)
	{
	  AliESDtrack *tr = (AliESDtrack*)fTrackArray->At(j);
	  if( trkIndex == tr->GetID() )
	    {
	      isSelected = kTRUE;
	      index = j;
	      break;
	    }
	}
      if(!isSelected) continue;
      nTrack++;
      AliESDtrack *track = (AliESDtrack*)fTrackArray->At(index);
      Double_t trkP = track->P();
      sumTrkPt += track->Pt(); sumTrkP += track->P();
      if(fSysTrkPtRes) trkP = TMath::Sqrt(TMath::Power(track->Pt()+GetSmearedTrackPt(track),2)+TMath::Power(track->Pz(),2));
      if(IsElectron(track,cluster->E())) //electrons
	{
	  if(fElectronRejection)
	    {
	      subE+= trkP;
	      MIPE+= trkP;
	      eRes += TMath::Power(track->Pt()*track->Pt()*TMath::Sqrt(track->GetSigma1Pt2()),2);
	    }
	}
      else //hadrons
	{
	  if(fHadronicCorrection)
	    {
	      MIPE += (trkP>0.27)?0.27:trkP; //MIP correction
	      if(fFractionHC>2)
		{
		  if(trkP>0.27)
		    {
		      subE+=0.27;
		    }
		  else
		    {
		      subE+=trkP;
		      eRes += TMath::Power(track->Pt()*track->Pt()*TMath::Sqrt(track->GetSigma1Pt2()),2);
		    }
		}
	      else
		{
		  if(trkP>fHCLowerPtCutMIP) subE += 0.27;
		  else subE+=fFractionHC*trkP;
		  eRes += TMath::Power(fFractionHC*track->Pt()*track->Pt()*TMath::Sqrt(track->GetSigma1Pt2()),2);
		}
	    }
	}
    }

  if(fSaveQAHistos) fhNMatchedTrack[fTriggerType]->Fill(nTrack);
  if(nTrack>0)
    {
      Double_t fraction[4] = {0.3,0.5,0.7,1.0};
      for(Int_t j=0; j<4; j++)
	{
	  Double_t subETmp = sumTrkP*fraction[j];
	  if(subETmp>cluster->E()) subETmp = cluster->E();
	  if(fSaveQAHistos) fhSubEVsTrkPt[fTriggerType][j]->Fill(sumTrkPt,subETmp/sumTrkP);
	}
    }

  eRes = TMath::Sqrt(eRes);

  if(fIsMC && nTrack>0)
    {
      Double_t neutralE = 0;
      TArrayI* labels = cluster->GetLabelsArray();
      if(labels)
	{
	  for(Int_t il=0; il<labels->GetSize(); il++)
	    {
	      Int_t ipart = labels->At(il);
	      if(ipart>-1 && ipart<fMC->GetNumberOfTracks())
		{
		  AliVParticle* vParticle = fMC->GetTrack(ipart);
		  if(vParticle->Charge()==0)
		    {
		      neutralE += vParticle->E();
		    }
		}
	    }
	}
      mcSubE = cluster->E() - neutralE;
      if(mcSubE<0)
	mcSubE=0;
    }


  return subE;
}


//
//________________________________________________________________________
//
Double_t AliAnalysisTaskFullppJet::GetExoticEnergyFraction(AliESDCaloCluster *cluster)
{
  // 
  // Exotic fraction: f_cross
  // Adpated from AliEMCalRecoUtils

  if(!cluster) return -1;
  AliVCaloCells *cells = (AliVCaloCells*)fESD->GetEMCALCells();
  if(!cells)  return -1;
  
  // Get highest energy tower
  Int_t iSupMod = -1, absID = -1, ieta = -1, iphi = -1,iTower = -1, iIphi = -1, iIeta = -1; 
  Bool_t share = kFALSE;
  fRecoUtil->GetMaxEnergyCell(fGeom, cells, cluster, absID, iSupMod, ieta, iphi, share);
  fGeom->GetCellIndex(absID,iSupMod,iTower,iIphi,iIeta); 
  fGeom->GetCellPhiEtaIndexInSModule(iSupMod,iTower,iIphi, iIeta,iphi,ieta);

  Int_t absID1 = fGeom-> GetAbsCellIdFromCellIndexes(iSupMod, iphi+1, ieta);
  Int_t absID2 = fGeom-> GetAbsCellIdFromCellIndexes(iSupMod, iphi-1, ieta);
  Int_t absID3 = fGeom-> GetAbsCellIdFromCellIndexes(iSupMod, iphi, ieta+1);
  Int_t absID4 = fGeom-> GetAbsCellIdFromCellIndexes(iSupMod, iphi, ieta-1);
  
  Float_t  ecell  = 0, ecell1  = 0, ecell2  = 0, ecell3  = 0, ecell4  = 0;
  Double_t tcell  = 0, tcell1  = 0, tcell2  = 0, tcell3  = 0, tcell4  = 0;
  Bool_t   accept = 0, accept1 = 0, accept2 = 0, accept3 = 0, accept4 = 0;
  const Int_t bc  = 0;
  
  accept  = fRecoUtil->AcceptCalibrateCell(absID, bc, ecell ,tcell ,cells); 
    
  if(!accept) return -1;
  
  if(ecell < 0.5) return -1;
  
  accept1 = fRecoUtil->AcceptCalibrateCell(absID1,bc, ecell1,tcell1,cells); 
  accept2 = fRecoUtil->AcceptCalibrateCell(absID2,bc, ecell2,tcell2,cells); 
  accept3 = fRecoUtil->AcceptCalibrateCell(absID3,bc, ecell3,tcell3,cells); 
  accept4 = fRecoUtil->AcceptCalibrateCell(absID4,bc, ecell4,tcell4,cells); 
  
  const Double_t exoticCellDiffTime = 1e6;
  if(TMath::Abs(tcell-tcell1)*1.e9 > exoticCellDiffTime) ecell1 = 0 ;
  if(TMath::Abs(tcell-tcell2)*1.e9 > exoticCellDiffTime) ecell2 = 0 ;
  if(TMath::Abs(tcell-tcell3)*1.e9 > exoticCellDiffTime) ecell3 = 0 ;
  if(TMath::Abs(tcell-tcell4)*1.e9 > exoticCellDiffTime) ecell4 = 0 ;

  Float_t eCross = ecell1+ecell2+ecell3+ecell4;

  return 1-eCross/ecell;
}


//________________________________________________________________________
void AliAnalysisTaskFullppJet::GetMCInfo()
{
  //
  // Get # of trials per ESD event
  //

  AliStack *stack = fMC->Stack();
  if(stack)
    {
      AliGenEventHeader *head = dynamic_cast<AliGenEventHeader*>(fMC->GenEventHeader());
      if (head == 0x0)
       {
         AliError("Could not get the event header");
         return;
       }

     AliGenPythiaEventHeader *headPy = dynamic_cast<AliGenPythiaEventHeader*>(head);
     if (headPy != 0x0)
       {
         if (headPy->Trials() > 0)
           {
             fhNTrials[0]->Fill(0.5,headPy->Trials());
             
	   }
       }
    }
}



//________________________________________________________________________
void AliAnalysisTaskFullppJet::Terminate(Option_t *) 
{
  //
  // Called once at the end of the query
  //
  Info("Terminate","Terminate");
  AliAnalysisTaskSE::Terminate();

}

//
//________________________________________________________________________
//
Int_t AliAnalysisTaskFullppJet::RunOfflineTrigger() 
{
  //
  // Run trigger offline
  //

  fIsEventTriggerBit = 0;
  Int_t isTrigger = 0;
  Int_t ncl = fESD->GetNumberOfCaloClusters();
  for(Int_t icl=0; icl<ncl; icl++)
    {
      // Check every cluster
      AliESDCaloCluster *cluster = fESD->GetCaloCluster(icl);
      if(!IsGoodCluster(cluster)) continue;
      Double_t pro = GetOfflineTriggerProbability(cluster);
      Double_t rand = fRandomGen->Uniform();
      if(rand<pro)
	{
	  isTrigger = 1;
	  fIsEventTriggerBit = 1;
	  cluster->SetChi2(1);
	}
      else 
	cluster->SetChi2(0);
    }
  return isTrigger;
}


//
//________________________________________________________________________
//
Double_t AliAnalysisTaskFullppJet::GetOfflineTriggerProbability(AliESDCaloCluster *cluster)
{  
  //
  // Get the probablity of the given cluster to trigger the event
  //

  Double_t pro = 0;
  // Check the trigger mask
  AliVCaloCells *cells = (AliVCaloCells*)fESD->GetEMCALCells();
  Int_t iSupMod = -1, absID = -1, ieta = -1, iphi = -1,iTower = -1, iIphi = -1, iIeta = -1; 
  Bool_t share = kFALSE;
  fRecoUtil->GetMaxEnergyCell(fGeom, cells, cluster, absID, iSupMod, ieta, iphi, share); // Get the position of the most energetic cell in the cluster
  fGeom->GetCellIndex(absID,iSupMod,iTower,iIphi,iIeta); 
  fGeom->GetCellPhiEtaIndexInSModule(iSupMod,iTower,iIphi, iIeta,iphi,ieta);
  // convert co global phi eta
  Int_t gphi = iphi + 24*(iSupMod/2);
  Int_t geta = ieta + 48*(iSupMod%2);
  // get corresponding FALTRO
  Int_t fphi = gphi / 2;
  Int_t feta = geta / 2;
  if(fCheckTriggerMask && fTriggerMask->GetBinContent(feta+1,fphi+1)>0.5 && iSupMod>-1) // check the trigger mask
    {
      Double_t clsE = cluster->E();
      if(fSysClusterEScale) clsE = clsE * (1+fVaryClusterEScale); // Used for systematic uncertainty. Not needed for regular analysis
      if(clsE>10) pro = 1; // Probability is 1 at high E
      else
	{
	  Int_t bin = fTriggerCurve[iSupMod]->FindFixBin(clsE);
	  pro = fTriggerCurve[iSupMod]->GetBinContent(bin)/fTriggerEfficiency[iSupMod]->Eval(10); // Read the probability from trigger turn-on curves
	}
    }
  return pro;
}



//
//________________________________________________________________________
//
Int_t AliAnalysisTaskFullppJet::GetClusterSuperModule(AliESDCaloCluster *cluster)
{
  //
  // Return the given cluster supermodule
  //

  Float_t pos[3];
  cluster->GetPosition(pos);
  TVector3 clsVec(pos[0],pos[1],pos[2]);

  Int_t sMod=-1;
  fGeom->SuperModuleNumberFromEtaPhi(clsVec.Eta(), clsVec.Phi(), sMod);
  return sMod;
}


//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::IsElectron(AliESDtrack *track, Double_t clsE) const
{
  //
  // Check if the given track is an electron candidate based on de/dx
  //

  if(track->GetTPCsignal()<=fdEdxMax && track->GetTPCsignal()>=fdEdxMin && (clsE/track->P())<=fEoverPMax && (clsE/track->P())>=fEoverPMin )
    return kTRUE;
  else
    return kFALSE;
}


//________________________________________________________________________
Double_t AliAnalysisTaskFullppJet::GetTrkEff(Double_t inPt)
{
  // 
  // Get tracking efficiency estimated from simulation
  //

  Double_t eff = 1;
  Double_t ptBound[4] = {0, 0.5, 3.8, 300};

  for(Int_t i=0; i<3; i++)
    {
      if( inPt < ptBound[i+1] && inPt >= ptBound[i])
	{
	  eff = fTrkEffFunc[i]->Eval(inPt);
	  break;
	}
    }
  return eff;
}

//________________________________________________________________________
Double_t AliAnalysisTaskFullppJet::GetSmearedTrackPt(AliESDtrack *track)
{
  //
  // Smear track momentum
  //

  Double_t resolution = track->Pt()*track->Pt()*TMath::Sqrt(track->GetSigma1Pt2());
  Double_t smear = resolution*TMath::Sqrt((1+fVaryTrkPtRes)*(1+fVaryTrkPtRes)-1);
  return fRandomGen->Gaus(0, smear);

}


//________________________________________________________________________
void AliAnalysisTaskFullppJet::CheckEventTriggerBit()
{
  //
  // Check if the triggered events have correct trigger bit
  //

 fIsEventTriggerBit = 0;
  // constants
  const Int_t nColsModule = 2;
  const Int_t nRowsModule = 5;
  const Int_t nRowsFeeModule = 24;
  const Int_t nColsFeeModule = 48;
  const Int_t nColsFaltroModule = 24;
  const Int_t nRowsFaltroModule = 12;

  // part 1, trigger extraction -------------------------------------
  Int_t trigtimes[30], globCol, globRow, ntimes;
  Int_t trigger[nColsFaltroModule*nColsModule][nRowsFaltroModule*nRowsModule];

  // erase trigger maps
  for( Int_t i = 0; i < nColsFaltroModule*nColsModule; i++ )
    {
      for( Int_t j = 0; j < nRowsFaltroModule*nRowsModule; j++ )
	{
	  trigger[i][j] = 0;
	}
    }

  Int_t fTrigCutLow = 7, fTrigCutHigh = 10, trigInCut = 0;
  AliESDCaloTrigger * fCaloTrigger = fESD->GetCaloTrigger( "EMCAL" );
  // go through triggers
  if( fCaloTrigger->GetEntries() > 0 )
    {
      // needs reset
      fCaloTrigger->Reset();
      while( fCaloTrigger->Next() )
	{
	  fCaloTrigger->GetPosition( globCol, globRow );  // get position in global 2x2 tower coordinates
	  fCaloTrigger->GetNL0Times( ntimes );   // get dimension of time arrays
	  if( ntimes < 1 ) continue;    // no L0s in this channel. Presence of the channel in the iterator still does not guarantee that L0 was produced!!
	  fCaloTrigger->GetL0Times( trigtimes );  // get timing array
	  if(fCheckTriggerMask && fTriggerMask->GetBinContent(globCol+1,globRow+1)<0.5) continue;
	  trigInCut = 0;
	  for( Int_t i = 0; i < ntimes; i++ )
	    {
	      if( trigtimes[i] > fTrigCutLow && trigtimes[i] < fTrigCutHigh )  // check if in cut
		{
		  trigInCut = 1;
		}
	    }
	  if(trigInCut==1) trigger[globCol][globRow] = 1;
	} // calo trigger entries
    } // has calo trigger entries


  
  // part 2 go through the clusters here -----------------------------------
  Int_t nCell, iCell;
  UShort_t *cellAddrs;
  Int_t absID = -1, nSupMod=-1, nModule=-1, nIphi=-1, nIeta=-1, iphi=-1, ieta=-1, gphi=-1, geta=-1, feta=-1, fphi=-1;
  Bool_t share = kFALSE;
  AliVCaloCells *cells = (AliVCaloCells*)fESD->GetEMCALCells();
  for(Int_t icl=0; icl<fESD->GetNumberOfCaloClusters(); icl++)
    {
      AliESDCaloCluster *cluster = fESD->GetCaloCluster(icl);
      if(!cluster || !cluster->IsEMCAL()) continue;
      cluster->SetChi2(0);
      if(!IsGoodCluster(cluster)) continue;

      //Clusters with most energetic cell in dead region can't be triggered
      fRecoUtil->GetMaxEnergyCell(fGeom, cells, cluster, absID, nSupMod, ieta, iphi, share);
      fGeom->GetCellIndex(absID,nSupMod,nModule, nIphi, nIeta); 
      fGeom->GetCellPhiEtaIndexInSModule(nSupMod,nModule, nIphi, nIeta, iphi, ieta);
      gphi = iphi + nRowsFeeModule*(nSupMod/2);
      geta = ieta + nColsFeeModule*(nSupMod%2);
      fphi = gphi / 2;
      feta = geta / 2;

      if(fCheckTriggerMask && fTriggerMask->GetBinContent(feta+1,fphi+1)>0.5)
	{
	  nCell = cluster->GetNCells();  // get cluster cells
	  cellAddrs = cluster->GetCellsAbsId();  // get the cell addresses
	  for( iCell = 0; iCell < nCell; iCell++ )
	    {
	      // get cell position
	      fGeom->GetCellIndex( cellAddrs[iCell], nSupMod, nModule, nIphi, nIeta );
	      fGeom->GetCellPhiEtaIndexInSModule( nSupMod,nModule, nIphi, nIeta, iphi, ieta);
	      
	      // convert co global phi eta
	      gphi = iphi + nRowsFeeModule*(nSupMod/2);
	      geta = ieta + nColsFeeModule*(nSupMod%2);
	      
	      // get corresponding FALTRO
	      fphi = gphi / 2;
	      feta = geta / 2;
	      // try to match with a triggered
	      if( trigger[feta][fphi] == 1)
		{
		  cluster->SetChi2(1);
		  fIsEventTriggerBit = 1;
		  //break;
		}
	    } // cells
	}
    } // clusters
}


//________________________________________________________________________
void AliAnalysisTaskFullppJet::PrintConfig()
{
  //
  // Print configuration
  //

  const char *trackCutName[3] = {"Hybrid tracks","TPCOnly tracks","Golden tracks"};
  const char *triggerType[2]  = {"MB","EMC"};
  const char *decision[2] = {"no","yes"};
  const char *recombination[] = {"E_scheme","pt_scheme","pt2_scheme","Et_scheme","Et2_scheme","BIpt_scheme","BIpt2_scheme"};
  const char *type[2] = {"local","grid"};
  if(fStudySubEInHC || fStudyMcOverSubE)
    {
      printf("\n\n=================================\n");
      printf("======WARNING: HC is ingored!======\n");
      printf("======    NOT for PHYSICS!   ======\n\n");
    }
  printf("Run period: %s\n",fPeriod.Data());
  printf("Reject SPD pileup: %s\n",decision[fRejectPileup]);
  printf("Reject exotic triggered events: %s\n",decision[fRejectExoticTrigger]);
  printf("Is this MC data: %s\n",decision[fIsMC]);
  printf("Only find charged jets in MC: %s\n",decision[fChargedMC]);
  printf("Analyze on local or grid? %s\n",type[fAnaType]);
  printf("Run offline trigger on MC: %s\n",decision[fOfflineTrigger]);
  if(fIsMC)
    printf("Is K0 and n included: %s\n",decision[1-fRejectNK]);
  printf("Constrain tracks in EMCal acceptance: %s\n",decision[fConstrainChInEMCal]);
  printf("Track selection:    %s, |eta| < %2.1f\n",trackCutName[fTrackCutsType], fTrkEtaMax);
  for(Int_t i=0; i<2; i++)
    {
      printf("Track pt cut:       %s -> %2.2f < pT < %2.1f\n",triggerType[i], fTrkPtMin[i], fTrkPtMax[i]);
    }
  for(Int_t i=0; i<2; i++)
    {
      printf("Cluster selection:  %s -> %2.2f < Et < %2.1f\n",triggerType[i],fClsEtMin[i], fClsEtMax[i]);
    }
  printf("Electron selectoin: %2.0f < dE/dx < %2.0f, %1.1f < E/P < %1.1f\n",fdEdxMin, fdEdxMax, fEoverPMin, fEoverPMax);
  printf("Reject exotic cluster: %s\n",decision[fRejectExoticCluster]);
  printf("Remove problematic region in SM4: %s\n",decision[fRemoveBadChannel]);
  printf("Use only good SM (1,2,6,7,8,9) for trigger: %s\n",decision[fUseGoodSM]);
  printf("Reject electron: %s\n", decision[fElectronRejection]);
  printf("Correct hadron: %s\n",decision[fHadronicCorrection]);
  printf("HC fraction: %2.1f up to %2.0f GeV/c\n",fFractionHC,fHCLowerPtCutMIP);
  printf("Find charged jets: %s\n", decision[fFindChargedOnlyJet]);
  printf("Find netural jets: %s\n", decision[fFindNeutralOnlyJet]);
  printf("Find good jets: %s\n",decision[fSpotGoodJet]);
  printf("Jet radius: %s\n",fRadius.Data());
  printf("Jet recombination scheme: %s\n",recombination[fRecombinationScheme]);
  printf("Correct tracking efficiency: %s\n",decision[fCheckTrkEffCorr]);
  printf("Save jet QA histos: %s\n",decision[fSaveQAHistos]);
  printf("Systematics: jet efficiency: %s with variation %1.0f%%\n",decision[fSysJetTrigEff],fVaryJetTrigEff*100);
  printf("Systematics: tracking efficiency: %s with variation %1.0f%%\n",decision[fSysTrkEff],fVaryTrkEff*100);
  printf("Systematics: track pt resolution: %s with variation %1.0f%%\n",decision[fSysTrkPtRes],fVaryTrkPtRes*100);
  printf("Systematics: track-cluster matching: %s with |dEta|<%2.3f, |dPhi|<%2.3f\n",decision[fSysTrkClsMth],fCutdEta,fCutdPhi);
  printf("Systematics: EMCal non-linearity: %s\n",decision[fSysNonLinearity]);
  printf("Systematics: EMCal energy scale: %s with uncertainty of %1.0f%%\n",decision[fSysClusterEScale],fVaryClusterEScale*100);
  printf("Systematics: EMCal energy resolution: %s with uncertainty of %1.0f%%\n",decision[fSysClusterERes],fVaryClusterERes*100);
  printf("Smear lhc12a15a: %s\n",decision[fSmearMC]);
  printf("Run UE analysis: %s\n",decision[fRunUE]);
  printf("Run secondaries: %s\n",decision[fRunSecondaries]);
  printf("=======================================\n\n");
}

//________________________________________________________________________
void AliAnalysisTaskFullppJet::CheckExoticEvent()
{
  //
  // Check if the event containts exotic clusters
  //

  Double_t leadingE = 0;
  Int_t nCls = fESD->GetNumberOfCaloClusters();
  for(Int_t icl=0; icl<nCls; icl++)
    {
      AliESDCaloCluster *cluster = fESD->GetCaloCluster(icl);
      if(!cluster) continue;
      if (!cluster->IsEMCAL()) continue;
      if(fRecoUtil->IsExoticCluster(cluster, (AliVCaloCells*)fESD->GetEMCALCells()) && cluster->E()>leadingE)
	{
	  leadingE = cluster->E();
	}
    }
  if(leadingE>3) fIsExoticEvent3GeV = kTRUE;
  if(leadingE>5) fIsExoticEvent5GeV = kTRUE;
}


//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::HasPrimaryVertex() const
{
  //
  // Check if the primary vertex exists
  //
  const AliESDVertex* vtx = fESD->GetPrimaryVertex();
  if (!vtx || vtx->GetNContributors()<1) return kFALSE;
  else return kTRUE;
}


//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::IsPrimaryVertexOk() const
{
  //
  // Check if the event vertex is good
  //
  return kTRUE;
}

//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::IsTPCOnlyVtx() const
{
  //
  // Check if the event only has valid TPC vertex
  //

  const Bool_t isPrimaryVtx = HasPrimaryVertex();

  Bool_t isGoodVtx = kTRUE;
  AliESDVertex* goodvtx = const_cast<AliESDVertex*>(fESD->GetPrimaryVertexTracks());
  if(!goodvtx || goodvtx->GetNContributors()<1)
    goodvtx = const_cast<AliESDVertex*>(fESD->GetPrimaryVertexSPD()); // SPD vertex
  if(!goodvtx || !goodvtx->GetStatus()) isGoodVtx = kFALSE;  // Event rejected

  if( isPrimaryVtx && !isGoodVtx )
    return kTRUE;
  else
    return kFALSE;
}

//________________________________________________________________________
void AliAnalysisTaskFullppJet::CheckTPCOnlyVtx(const UInt_t trigger)
{
  //
  // Check the fraction of accepted events that have only TPC vertex
  //
  Int_t lTriggerType = -1;
  if (trigger & AliVEvent::kMB)       lTriggerType = 1;
  if (trigger & AliVEvent::kFastOnly) lTriggerType = 0;
  if (trigger & AliVEvent::kEMC1)     lTriggerType = 2;
  if(lTriggerType==-1) return;
  fhEventStatTPCVtx->Fill(0.5+lTriggerType*3);
  if(HasPrimaryVertex()) fhEventStatTPCVtx->Fill(1.5+lTriggerType*3);
  if(IsTPCOnlyVtx()) fhEventStatTPCVtx->Fill(2.5+lTriggerType*3);
}

//________________________________________________________________________
Bool_t AliAnalysisTaskFullppJet::IsLEDEvent() const
{
  // 
  // Check if the event is contaminated by LED signal
  //

  AliESDCaloCells *cells = fESD->GetEMCALCells();
  Short_t nCells = cells->GetNumberOfCells();
  Int_t nCellCount[2] = {0,0};
  for(Int_t iCell=0; iCell<nCells; iCell++)
    {
      Int_t cellId = cells->GetCellNumber(iCell);
      Double_t cellE = cells->GetCellAmplitude(cellId);
      Int_t sMod = fGeom->GetSuperModuleNumber(cellId);
      
      if(sMod==3 || sMod==4)
	{
	  if(cellE>0.1)
	    nCellCount[sMod-3]++;
	}
    }
  Bool_t isLED=kFALSE;

  if(fPeriod.CompareTo("lhc11a")==0)
    {
      if (nCellCount[1] > 100)
	isLED = kTRUE;
      Int_t runN = fESD->GetRunNumber();
      if (runN>=146858 && runN<=146860)
	{
	  if(fTriggerType==0 && nCellCount[0]>=21) isLED=kTRUE;
	  if(fTriggerType==1 && nCellCount[0]>=35) isLED=kTRUE;
	}
    }

  return isLED;
}
 AliAnalysisTaskFullppJet.cxx:1
 AliAnalysisTaskFullppJet.cxx:2
 AliAnalysisTaskFullppJet.cxx:3
 AliAnalysisTaskFullppJet.cxx:4
 AliAnalysisTaskFullppJet.cxx:5
 AliAnalysisTaskFullppJet.cxx:6
 AliAnalysisTaskFullppJet.cxx:7
 AliAnalysisTaskFullppJet.cxx:8
 AliAnalysisTaskFullppJet.cxx:9
 AliAnalysisTaskFullppJet.cxx:10
 AliAnalysisTaskFullppJet.cxx:11
 AliAnalysisTaskFullppJet.cxx:12
 AliAnalysisTaskFullppJet.cxx:13
 AliAnalysisTaskFullppJet.cxx:14
 AliAnalysisTaskFullppJet.cxx:15
 AliAnalysisTaskFullppJet.cxx:16
 AliAnalysisTaskFullppJet.cxx:17
 AliAnalysisTaskFullppJet.cxx:18
 AliAnalysisTaskFullppJet.cxx:19
 AliAnalysisTaskFullppJet.cxx:20
 AliAnalysisTaskFullppJet.cxx:21
 AliAnalysisTaskFullppJet.cxx:22
 AliAnalysisTaskFullppJet.cxx:23
 AliAnalysisTaskFullppJet.cxx:24
 AliAnalysisTaskFullppJet.cxx:25
 AliAnalysisTaskFullppJet.cxx:26
 AliAnalysisTaskFullppJet.cxx:27
 AliAnalysisTaskFullppJet.cxx:28
 AliAnalysisTaskFullppJet.cxx:29
 AliAnalysisTaskFullppJet.cxx:30
 AliAnalysisTaskFullppJet.cxx:31
 AliAnalysisTaskFullppJet.cxx:32
 AliAnalysisTaskFullppJet.cxx:33
 AliAnalysisTaskFullppJet.cxx:34
 AliAnalysisTaskFullppJet.cxx:35
 AliAnalysisTaskFullppJet.cxx:36
 AliAnalysisTaskFullppJet.cxx:37
 AliAnalysisTaskFullppJet.cxx:38
 AliAnalysisTaskFullppJet.cxx:39
 AliAnalysisTaskFullppJet.cxx:40
 AliAnalysisTaskFullppJet.cxx:41
 AliAnalysisTaskFullppJet.cxx:42
 AliAnalysisTaskFullppJet.cxx:43
 AliAnalysisTaskFullppJet.cxx:44
 AliAnalysisTaskFullppJet.cxx:45
 AliAnalysisTaskFullppJet.cxx:46
 AliAnalysisTaskFullppJet.cxx:47
 AliAnalysisTaskFullppJet.cxx:48
 AliAnalysisTaskFullppJet.cxx:49
 AliAnalysisTaskFullppJet.cxx:50
 AliAnalysisTaskFullppJet.cxx:51
 AliAnalysisTaskFullppJet.cxx:52
 AliAnalysisTaskFullppJet.cxx:53
 AliAnalysisTaskFullppJet.cxx:54
 AliAnalysisTaskFullppJet.cxx:55
 AliAnalysisTaskFullppJet.cxx:56
 AliAnalysisTaskFullppJet.cxx:57
 AliAnalysisTaskFullppJet.cxx:58
 AliAnalysisTaskFullppJet.cxx:59
 AliAnalysisTaskFullppJet.cxx:60
 AliAnalysisTaskFullppJet.cxx:61
 AliAnalysisTaskFullppJet.cxx:62
 AliAnalysisTaskFullppJet.cxx:63
 AliAnalysisTaskFullppJet.cxx:64
 AliAnalysisTaskFullppJet.cxx:65
 AliAnalysisTaskFullppJet.cxx:66
 AliAnalysisTaskFullppJet.cxx:67
 AliAnalysisTaskFullppJet.cxx:68
 AliAnalysisTaskFullppJet.cxx:69
 AliAnalysisTaskFullppJet.cxx:70
 AliAnalysisTaskFullppJet.cxx:71
 AliAnalysisTaskFullppJet.cxx:72
 AliAnalysisTaskFullppJet.cxx:73
 AliAnalysisTaskFullppJet.cxx:74
 AliAnalysisTaskFullppJet.cxx:75
 AliAnalysisTaskFullppJet.cxx:76
 AliAnalysisTaskFullppJet.cxx:77
 AliAnalysisTaskFullppJet.cxx:78
 AliAnalysisTaskFullppJet.cxx:79
 AliAnalysisTaskFullppJet.cxx:80
 AliAnalysisTaskFullppJet.cxx:81
 AliAnalysisTaskFullppJet.cxx:82
 AliAnalysisTaskFullppJet.cxx:83
 AliAnalysisTaskFullppJet.cxx:84
 AliAnalysisTaskFullppJet.cxx:85
 AliAnalysisTaskFullppJet.cxx:86
 AliAnalysisTaskFullppJet.cxx:87
 AliAnalysisTaskFullppJet.cxx:88
 AliAnalysisTaskFullppJet.cxx:89
 AliAnalysisTaskFullppJet.cxx:90
 AliAnalysisTaskFullppJet.cxx:91
 AliAnalysisTaskFullppJet.cxx:92
 AliAnalysisTaskFullppJet.cxx:93
 AliAnalysisTaskFullppJet.cxx:94
 AliAnalysisTaskFullppJet.cxx:95
 AliAnalysisTaskFullppJet.cxx:96
 AliAnalysisTaskFullppJet.cxx:97
 AliAnalysisTaskFullppJet.cxx:98
 AliAnalysisTaskFullppJet.cxx:99
 AliAnalysisTaskFullppJet.cxx:100
 AliAnalysisTaskFullppJet.cxx:101
 AliAnalysisTaskFullppJet.cxx:102
 AliAnalysisTaskFullppJet.cxx:103
 AliAnalysisTaskFullppJet.cxx:104
 AliAnalysisTaskFullppJet.cxx:105
 AliAnalysisTaskFullppJet.cxx:106
 AliAnalysisTaskFullppJet.cxx:107
 AliAnalysisTaskFullppJet.cxx:108
 AliAnalysisTaskFullppJet.cxx:109
 AliAnalysisTaskFullppJet.cxx:110
 AliAnalysisTaskFullppJet.cxx:111
 AliAnalysisTaskFullppJet.cxx:112
 AliAnalysisTaskFullppJet.cxx:113
 AliAnalysisTaskFullppJet.cxx:114
 AliAnalysisTaskFullppJet.cxx:115
 AliAnalysisTaskFullppJet.cxx:116
 AliAnalysisTaskFullppJet.cxx:117
 AliAnalysisTaskFullppJet.cxx:118
 AliAnalysisTaskFullppJet.cxx:119
 AliAnalysisTaskFullppJet.cxx:120
 AliAnalysisTaskFullppJet.cxx:121
 AliAnalysisTaskFullppJet.cxx:122
 AliAnalysisTaskFullppJet.cxx:123
 AliAnalysisTaskFullppJet.cxx:124
 AliAnalysisTaskFullppJet.cxx:125
 AliAnalysisTaskFullppJet.cxx:126
 AliAnalysisTaskFullppJet.cxx:127
 AliAnalysisTaskFullppJet.cxx:128
 AliAnalysisTaskFullppJet.cxx:129
 AliAnalysisTaskFullppJet.cxx:130
 AliAnalysisTaskFullppJet.cxx:131
 AliAnalysisTaskFullppJet.cxx:132
 AliAnalysisTaskFullppJet.cxx:133
 AliAnalysisTaskFullppJet.cxx:134
 AliAnalysisTaskFullppJet.cxx:135
 AliAnalysisTaskFullppJet.cxx:136
 AliAnalysisTaskFullppJet.cxx:137
 AliAnalysisTaskFullppJet.cxx:138
 AliAnalysisTaskFullppJet.cxx:139
 AliAnalysisTaskFullppJet.cxx:140
 AliAnalysisTaskFullppJet.cxx:141
 AliAnalysisTaskFullppJet.cxx:142
 AliAnalysisTaskFullppJet.cxx:143
 AliAnalysisTaskFullppJet.cxx:144
 AliAnalysisTaskFullppJet.cxx:145
 AliAnalysisTaskFullppJet.cxx:146
 AliAnalysisTaskFullppJet.cxx:147
 AliAnalysisTaskFullppJet.cxx:148
 AliAnalysisTaskFullppJet.cxx:149
 AliAnalysisTaskFullppJet.cxx:150
 AliAnalysisTaskFullppJet.cxx:151
 AliAnalysisTaskFullppJet.cxx:152
 AliAnalysisTaskFullppJet.cxx:153
 AliAnalysisTaskFullppJet.cxx:154
 AliAnalysisTaskFullppJet.cxx:155
 AliAnalysisTaskFullppJet.cxx:156
 AliAnalysisTaskFullppJet.cxx:157
 AliAnalysisTaskFullppJet.cxx:158
 AliAnalysisTaskFullppJet.cxx:159
 AliAnalysisTaskFullppJet.cxx:160
 AliAnalysisTaskFullppJet.cxx:161
 AliAnalysisTaskFullppJet.cxx:162
 AliAnalysisTaskFullppJet.cxx:163
 AliAnalysisTaskFullppJet.cxx:164
 AliAnalysisTaskFullppJet.cxx:165
 AliAnalysisTaskFullppJet.cxx:166
 AliAnalysisTaskFullppJet.cxx:167
 AliAnalysisTaskFullppJet.cxx:168
 AliAnalysisTaskFullppJet.cxx:169
 AliAnalysisTaskFullppJet.cxx:170
 AliAnalysisTaskFullppJet.cxx:171
 AliAnalysisTaskFullppJet.cxx:172
 AliAnalysisTaskFullppJet.cxx:173
 AliAnalysisTaskFullppJet.cxx:174
 AliAnalysisTaskFullppJet.cxx:175
 AliAnalysisTaskFullppJet.cxx:176
 AliAnalysisTaskFullppJet.cxx:177
 AliAnalysisTaskFullppJet.cxx:178
 AliAnalysisTaskFullppJet.cxx:179
 AliAnalysisTaskFullppJet.cxx:180
 AliAnalysisTaskFullppJet.cxx:181
 AliAnalysisTaskFullppJet.cxx:182
 AliAnalysisTaskFullppJet.cxx:183
 AliAnalysisTaskFullppJet.cxx:184
 AliAnalysisTaskFullppJet.cxx:185
 AliAnalysisTaskFullppJet.cxx:186
 AliAnalysisTaskFullppJet.cxx:187
 AliAnalysisTaskFullppJet.cxx:188
 AliAnalysisTaskFullppJet.cxx:189
 AliAnalysisTaskFullppJet.cxx:190
 AliAnalysisTaskFullppJet.cxx:191
 AliAnalysisTaskFullppJet.cxx:192
 AliAnalysisTaskFullppJet.cxx:193
 AliAnalysisTaskFullppJet.cxx:194
 AliAnalysisTaskFullppJet.cxx:195
 AliAnalysisTaskFullppJet.cxx:196
 AliAnalysisTaskFullppJet.cxx:197
 AliAnalysisTaskFullppJet.cxx:198
 AliAnalysisTaskFullppJet.cxx:199
 AliAnalysisTaskFullppJet.cxx:200
 AliAnalysisTaskFullppJet.cxx:201
 AliAnalysisTaskFullppJet.cxx:202
 AliAnalysisTaskFullppJet.cxx:203
 AliAnalysisTaskFullppJet.cxx:204
 AliAnalysisTaskFullppJet.cxx:205
 AliAnalysisTaskFullppJet.cxx:206
 AliAnalysisTaskFullppJet.cxx:207
 AliAnalysisTaskFullppJet.cxx:208
 AliAnalysisTaskFullppJet.cxx:209
 AliAnalysisTaskFullppJet.cxx:210
 AliAnalysisTaskFullppJet.cxx:211
 AliAnalysisTaskFullppJet.cxx:212
 AliAnalysisTaskFullppJet.cxx:213
 AliAnalysisTaskFullppJet.cxx:214
 AliAnalysisTaskFullppJet.cxx:215
 AliAnalysisTaskFullppJet.cxx:216
 AliAnalysisTaskFullppJet.cxx:217
 AliAnalysisTaskFullppJet.cxx:218
 AliAnalysisTaskFullppJet.cxx:219
 AliAnalysisTaskFullppJet.cxx:220
 AliAnalysisTaskFullppJet.cxx:221
 AliAnalysisTaskFullppJet.cxx:222
 AliAnalysisTaskFullppJet.cxx:223
 AliAnalysisTaskFullppJet.cxx:224
 AliAnalysisTaskFullppJet.cxx:225
 AliAnalysisTaskFullppJet.cxx:226
 AliAnalysisTaskFullppJet.cxx:227
 AliAnalysisTaskFullppJet.cxx:228
 AliAnalysisTaskFullppJet.cxx:229
 AliAnalysisTaskFullppJet.cxx:230
 AliAnalysisTaskFullppJet.cxx:231
 AliAnalysisTaskFullppJet.cxx:232
 AliAnalysisTaskFullppJet.cxx:233
 AliAnalysisTaskFullppJet.cxx:234
 AliAnalysisTaskFullppJet.cxx:235
 AliAnalysisTaskFullppJet.cxx:236
 AliAnalysisTaskFullppJet.cxx:237
 AliAnalysisTaskFullppJet.cxx:238
 AliAnalysisTaskFullppJet.cxx:239
 AliAnalysisTaskFullppJet.cxx:240
 AliAnalysisTaskFullppJet.cxx:241
 AliAnalysisTaskFullppJet.cxx:242
 AliAnalysisTaskFullppJet.cxx:243
 AliAnalysisTaskFullppJet.cxx:244
 AliAnalysisTaskFullppJet.cxx:245
 AliAnalysisTaskFullppJet.cxx:246
 AliAnalysisTaskFullppJet.cxx:247
 AliAnalysisTaskFullppJet.cxx:248
 AliAnalysisTaskFullppJet.cxx:249
 AliAnalysisTaskFullppJet.cxx:250
 AliAnalysisTaskFullppJet.cxx:251
 AliAnalysisTaskFullppJet.cxx:252
 AliAnalysisTaskFullppJet.cxx:253
 AliAnalysisTaskFullppJet.cxx:254
 AliAnalysisTaskFullppJet.cxx:255
 AliAnalysisTaskFullppJet.cxx:256
 AliAnalysisTaskFullppJet.cxx:257
 AliAnalysisTaskFullppJet.cxx:258
 AliAnalysisTaskFullppJet.cxx:259
 AliAnalysisTaskFullppJet.cxx:260
 AliAnalysisTaskFullppJet.cxx:261
 AliAnalysisTaskFullppJet.cxx:262
 AliAnalysisTaskFullppJet.cxx:263
 AliAnalysisTaskFullppJet.cxx:264
 AliAnalysisTaskFullppJet.cxx:265
 AliAnalysisTaskFullppJet.cxx:266
 AliAnalysisTaskFullppJet.cxx:267
 AliAnalysisTaskFullppJet.cxx:268
 AliAnalysisTaskFullppJet.cxx:269
 AliAnalysisTaskFullppJet.cxx:270
 AliAnalysisTaskFullppJet.cxx:271
 AliAnalysisTaskFullppJet.cxx:272
 AliAnalysisTaskFullppJet.cxx:273
 AliAnalysisTaskFullppJet.cxx:274
 AliAnalysisTaskFullppJet.cxx:275
 AliAnalysisTaskFullppJet.cxx:276
 AliAnalysisTaskFullppJet.cxx:277
 AliAnalysisTaskFullppJet.cxx:278
 AliAnalysisTaskFullppJet.cxx:279
 AliAnalysisTaskFullppJet.cxx:280
 AliAnalysisTaskFullppJet.cxx:281
 AliAnalysisTaskFullppJet.cxx:282
 AliAnalysisTaskFullppJet.cxx:283
 AliAnalysisTaskFullppJet.cxx:284
 AliAnalysisTaskFullppJet.cxx:285
 AliAnalysisTaskFullppJet.cxx:286
 AliAnalysisTaskFullppJet.cxx:287
 AliAnalysisTaskFullppJet.cxx:288
 AliAnalysisTaskFullppJet.cxx:289
 AliAnalysisTaskFullppJet.cxx:290
 AliAnalysisTaskFullppJet.cxx:291
 AliAnalysisTaskFullppJet.cxx:292
 AliAnalysisTaskFullppJet.cxx:293
 AliAnalysisTaskFullppJet.cxx:294
 AliAnalysisTaskFullppJet.cxx:295
 AliAnalysisTaskFullppJet.cxx:296
 AliAnalysisTaskFullppJet.cxx:297
 AliAnalysisTaskFullppJet.cxx:298
 AliAnalysisTaskFullppJet.cxx:299
 AliAnalysisTaskFullppJet.cxx:300
 AliAnalysisTaskFullppJet.cxx:301
 AliAnalysisTaskFullppJet.cxx:302
 AliAnalysisTaskFullppJet.cxx:303
 AliAnalysisTaskFullppJet.cxx:304
 AliAnalysisTaskFullppJet.cxx:305
 AliAnalysisTaskFullppJet.cxx:306
 AliAnalysisTaskFullppJet.cxx:307
 AliAnalysisTaskFullppJet.cxx:308
 AliAnalysisTaskFullppJet.cxx:309
 AliAnalysisTaskFullppJet.cxx:310
 AliAnalysisTaskFullppJet.cxx:311
 AliAnalysisTaskFullppJet.cxx:312
 AliAnalysisTaskFullppJet.cxx:313
 AliAnalysisTaskFullppJet.cxx:314
 AliAnalysisTaskFullppJet.cxx:315
 AliAnalysisTaskFullppJet.cxx:316
 AliAnalysisTaskFullppJet.cxx:317
 AliAnalysisTaskFullppJet.cxx:318
 AliAnalysisTaskFullppJet.cxx:319
 AliAnalysisTaskFullppJet.cxx:320
 AliAnalysisTaskFullppJet.cxx:321
 AliAnalysisTaskFullppJet.cxx:322
 AliAnalysisTaskFullppJet.cxx:323
 AliAnalysisTaskFullppJet.cxx:324
 AliAnalysisTaskFullppJet.cxx:325
 AliAnalysisTaskFullppJet.cxx:326
 AliAnalysisTaskFullppJet.cxx:327
 AliAnalysisTaskFullppJet.cxx:328
 AliAnalysisTaskFullppJet.cxx:329
 AliAnalysisTaskFullppJet.cxx:330
 AliAnalysisTaskFullppJet.cxx:331
 AliAnalysisTaskFullppJet.cxx:332
 AliAnalysisTaskFullppJet.cxx:333
 AliAnalysisTaskFullppJet.cxx:334
 AliAnalysisTaskFullppJet.cxx:335
 AliAnalysisTaskFullppJet.cxx:336
 AliAnalysisTaskFullppJet.cxx:337
 AliAnalysisTaskFullppJet.cxx:338
 AliAnalysisTaskFullppJet.cxx:339
 AliAnalysisTaskFullppJet.cxx:340
 AliAnalysisTaskFullppJet.cxx:341
 AliAnalysisTaskFullppJet.cxx:342
 AliAnalysisTaskFullppJet.cxx:343
 AliAnalysisTaskFullppJet.cxx:344
 AliAnalysisTaskFullppJet.cxx:345
 AliAnalysisTaskFullppJet.cxx:346
 AliAnalysisTaskFullppJet.cxx:347
 AliAnalysisTaskFullppJet.cxx:348
 AliAnalysisTaskFullppJet.cxx:349
 AliAnalysisTaskFullppJet.cxx:350
 AliAnalysisTaskFullppJet.cxx:351
 AliAnalysisTaskFullppJet.cxx:352
 AliAnalysisTaskFullppJet.cxx:353
 AliAnalysisTaskFullppJet.cxx:354
 AliAnalysisTaskFullppJet.cxx:355
 AliAnalysisTaskFullppJet.cxx:356
 AliAnalysisTaskFullppJet.cxx:357
 AliAnalysisTaskFullppJet.cxx:358
 AliAnalysisTaskFullppJet.cxx:359
 AliAnalysisTaskFullppJet.cxx:360
 AliAnalysisTaskFullppJet.cxx:361
 AliAnalysisTaskFullppJet.cxx:362
 AliAnalysisTaskFullppJet.cxx:363
 AliAnalysisTaskFullppJet.cxx:364
 AliAnalysisTaskFullppJet.cxx:365
 AliAnalysisTaskFullppJet.cxx:366
 AliAnalysisTaskFullppJet.cxx:367
 AliAnalysisTaskFullppJet.cxx:368
 AliAnalysisTaskFullppJet.cxx:369
 AliAnalysisTaskFullppJet.cxx:370
 AliAnalysisTaskFullppJet.cxx:371
 AliAnalysisTaskFullppJet.cxx:372
 AliAnalysisTaskFullppJet.cxx:373
 AliAnalysisTaskFullppJet.cxx:374
 AliAnalysisTaskFullppJet.cxx:375
 AliAnalysisTaskFullppJet.cxx:376
 AliAnalysisTaskFullppJet.cxx:377
 AliAnalysisTaskFullppJet.cxx:378
 AliAnalysisTaskFullppJet.cxx:379
 AliAnalysisTaskFullppJet.cxx:380
 AliAnalysisTaskFullppJet.cxx:381
 AliAnalysisTaskFullppJet.cxx:382
 AliAnalysisTaskFullppJet.cxx:383
 AliAnalysisTaskFullppJet.cxx:384
 AliAnalysisTaskFullppJet.cxx:385
 AliAnalysisTaskFullppJet.cxx:386
 AliAnalysisTaskFullppJet.cxx:387
 AliAnalysisTaskFullppJet.cxx:388
 AliAnalysisTaskFullppJet.cxx:389
 AliAnalysisTaskFullppJet.cxx:390
 AliAnalysisTaskFullppJet.cxx:391
 AliAnalysisTaskFullppJet.cxx:392
 AliAnalysisTaskFullppJet.cxx:393
 AliAnalysisTaskFullppJet.cxx:394
 AliAnalysisTaskFullppJet.cxx:395
 AliAnalysisTaskFullppJet.cxx:396
 AliAnalysisTaskFullppJet.cxx:397
 AliAnalysisTaskFullppJet.cxx:398
 AliAnalysisTaskFullppJet.cxx:399
 AliAnalysisTaskFullppJet.cxx:400
 AliAnalysisTaskFullppJet.cxx:401
 AliAnalysisTaskFullppJet.cxx:402
 AliAnalysisTaskFullppJet.cxx:403
 AliAnalysisTaskFullppJet.cxx:404
 AliAnalysisTaskFullppJet.cxx:405
 AliAnalysisTaskFullppJet.cxx:406
 AliAnalysisTaskFullppJet.cxx:407
 AliAnalysisTaskFullppJet.cxx:408
 AliAnalysisTaskFullppJet.cxx:409
 AliAnalysisTaskFullppJet.cxx:410
 AliAnalysisTaskFullppJet.cxx:411
 AliAnalysisTaskFullppJet.cxx:412
 AliAnalysisTaskFullppJet.cxx:413
 AliAnalysisTaskFullppJet.cxx:414
 AliAnalysisTaskFullppJet.cxx:415
 AliAnalysisTaskFullppJet.cxx:416
 AliAnalysisTaskFullppJet.cxx:417
 AliAnalysisTaskFullppJet.cxx:418
 AliAnalysisTaskFullppJet.cxx:419
 AliAnalysisTaskFullppJet.cxx:420
 AliAnalysisTaskFullppJet.cxx:421
 AliAnalysisTaskFullppJet.cxx:422
 AliAnalysisTaskFullppJet.cxx:423
 AliAnalysisTaskFullppJet.cxx:424
 AliAnalysisTaskFullppJet.cxx:425
 AliAnalysisTaskFullppJet.cxx:426
 AliAnalysisTaskFullppJet.cxx:427
 AliAnalysisTaskFullppJet.cxx:428
 AliAnalysisTaskFullppJet.cxx:429
 AliAnalysisTaskFullppJet.cxx:430
 AliAnalysisTaskFullppJet.cxx:431
 AliAnalysisTaskFullppJet.cxx:432
 AliAnalysisTaskFullppJet.cxx:433
 AliAnalysisTaskFullppJet.cxx:434
 AliAnalysisTaskFullppJet.cxx:435
 AliAnalysisTaskFullppJet.cxx:436
 AliAnalysisTaskFullppJet.cxx:437
 AliAnalysisTaskFullppJet.cxx:438
 AliAnalysisTaskFullppJet.cxx:439
 AliAnalysisTaskFullppJet.cxx:440
 AliAnalysisTaskFullppJet.cxx:441
 AliAnalysisTaskFullppJet.cxx:442
 AliAnalysisTaskFullppJet.cxx:443
 AliAnalysisTaskFullppJet.cxx:444
 AliAnalysisTaskFullppJet.cxx:445
 AliAnalysisTaskFullppJet.cxx:446
 AliAnalysisTaskFullppJet.cxx:447
 AliAnalysisTaskFullppJet.cxx:448
 AliAnalysisTaskFullppJet.cxx:449
 AliAnalysisTaskFullppJet.cxx:450
 AliAnalysisTaskFullppJet.cxx:451
 AliAnalysisTaskFullppJet.cxx:452
 AliAnalysisTaskFullppJet.cxx:453
 AliAnalysisTaskFullppJet.cxx:454
 AliAnalysisTaskFullppJet.cxx:455
 AliAnalysisTaskFullppJet.cxx:456
 AliAnalysisTaskFullppJet.cxx:457
 AliAnalysisTaskFullppJet.cxx:458
 AliAnalysisTaskFullppJet.cxx:459
 AliAnalysisTaskFullppJet.cxx:460
 AliAnalysisTaskFullppJet.cxx:461
 AliAnalysisTaskFullppJet.cxx:462
 AliAnalysisTaskFullppJet.cxx:463
 AliAnalysisTaskFullppJet.cxx:464
 AliAnalysisTaskFullppJet.cxx:465
 AliAnalysisTaskFullppJet.cxx:466
 AliAnalysisTaskFullppJet.cxx:467
 AliAnalysisTaskFullppJet.cxx:468
 AliAnalysisTaskFullppJet.cxx:469
 AliAnalysisTaskFullppJet.cxx:470
 AliAnalysisTaskFullppJet.cxx:471
 AliAnalysisTaskFullppJet.cxx:472
 AliAnalysisTaskFullppJet.cxx:473
 AliAnalysisTaskFullppJet.cxx:474
 AliAnalysisTaskFullppJet.cxx:475
 AliAnalysisTaskFullppJet.cxx:476
 AliAnalysisTaskFullppJet.cxx:477
 AliAnalysisTaskFullppJet.cxx:478
 AliAnalysisTaskFullppJet.cxx:479
 AliAnalysisTaskFullppJet.cxx:480
 AliAnalysisTaskFullppJet.cxx:481
 AliAnalysisTaskFullppJet.cxx:482
 AliAnalysisTaskFullppJet.cxx:483
 AliAnalysisTaskFullppJet.cxx:484
 AliAnalysisTaskFullppJet.cxx:485
 AliAnalysisTaskFullppJet.cxx:486
 AliAnalysisTaskFullppJet.cxx:487
 AliAnalysisTaskFullppJet.cxx:488
 AliAnalysisTaskFullppJet.cxx:489
 AliAnalysisTaskFullppJet.cxx:490
 AliAnalysisTaskFullppJet.cxx:491
 AliAnalysisTaskFullppJet.cxx:492
 AliAnalysisTaskFullppJet.cxx:493
 AliAnalysisTaskFullppJet.cxx:494
 AliAnalysisTaskFullppJet.cxx:495
 AliAnalysisTaskFullppJet.cxx:496
 AliAnalysisTaskFullppJet.cxx:497
 AliAnalysisTaskFullppJet.cxx:498
 AliAnalysisTaskFullppJet.cxx:499
 AliAnalysisTaskFullppJet.cxx:500
 AliAnalysisTaskFullppJet.cxx:501
 AliAnalysisTaskFullppJet.cxx:502
 AliAnalysisTaskFullppJet.cxx:503
 AliAnalysisTaskFullppJet.cxx:504
 AliAnalysisTaskFullppJet.cxx:505
 AliAnalysisTaskFullppJet.cxx:506
 AliAnalysisTaskFullppJet.cxx:507
 AliAnalysisTaskFullppJet.cxx:508
 AliAnalysisTaskFullppJet.cxx:509
 AliAnalysisTaskFullppJet.cxx:510
 AliAnalysisTaskFullppJet.cxx:511
 AliAnalysisTaskFullppJet.cxx:512
 AliAnalysisTaskFullppJet.cxx:513
 AliAnalysisTaskFullppJet.cxx:514
 AliAnalysisTaskFullppJet.cxx:515
 AliAnalysisTaskFullppJet.cxx:516
 AliAnalysisTaskFullppJet.cxx:517
 AliAnalysisTaskFullppJet.cxx:518
 AliAnalysisTaskFullppJet.cxx:519
 AliAnalysisTaskFullppJet.cxx:520
 AliAnalysisTaskFullppJet.cxx:521
 AliAnalysisTaskFullppJet.cxx:522
 AliAnalysisTaskFullppJet.cxx:523
 AliAnalysisTaskFullppJet.cxx:524
 AliAnalysisTaskFullppJet.cxx:525
 AliAnalysisTaskFullppJet.cxx:526
 AliAnalysisTaskFullppJet.cxx:527
 AliAnalysisTaskFullppJet.cxx:528
 AliAnalysisTaskFullppJet.cxx:529
 AliAnalysisTaskFullppJet.cxx:530
 AliAnalysisTaskFullppJet.cxx:531
 AliAnalysisTaskFullppJet.cxx:532
 AliAnalysisTaskFullppJet.cxx:533
 AliAnalysisTaskFullppJet.cxx:534
 AliAnalysisTaskFullppJet.cxx:535
 AliAnalysisTaskFullppJet.cxx:536
 AliAnalysisTaskFullppJet.cxx:537
 AliAnalysisTaskFullppJet.cxx:538
 AliAnalysisTaskFullppJet.cxx:539
 AliAnalysisTaskFullppJet.cxx:540
 AliAnalysisTaskFullppJet.cxx:541
 AliAnalysisTaskFullppJet.cxx:542
 AliAnalysisTaskFullppJet.cxx:543
 AliAnalysisTaskFullppJet.cxx:544
 AliAnalysisTaskFullppJet.cxx:545
 AliAnalysisTaskFullppJet.cxx:546
 AliAnalysisTaskFullppJet.cxx:547
 AliAnalysisTaskFullppJet.cxx:548
 AliAnalysisTaskFullppJet.cxx:549
 AliAnalysisTaskFullppJet.cxx:550
 AliAnalysisTaskFullppJet.cxx:551
 AliAnalysisTaskFullppJet.cxx:552
 AliAnalysisTaskFullppJet.cxx:553
 AliAnalysisTaskFullppJet.cxx:554
 AliAnalysisTaskFullppJet.cxx:555
 AliAnalysisTaskFullppJet.cxx:556
 AliAnalysisTaskFullppJet.cxx:557
 AliAnalysisTaskFullppJet.cxx:558
 AliAnalysisTaskFullppJet.cxx:559
 AliAnalysisTaskFullppJet.cxx:560
 AliAnalysisTaskFullppJet.cxx:561
 AliAnalysisTaskFullppJet.cxx:562
 AliAnalysisTaskFullppJet.cxx:563
 AliAnalysisTaskFullppJet.cxx:564
 AliAnalysisTaskFullppJet.cxx:565
 AliAnalysisTaskFullppJet.cxx:566
 AliAnalysisTaskFullppJet.cxx:567
 AliAnalysisTaskFullppJet.cxx:568
 AliAnalysisTaskFullppJet.cxx:569
 AliAnalysisTaskFullppJet.cxx:570
 AliAnalysisTaskFullppJet.cxx:571
 AliAnalysisTaskFullppJet.cxx:572
 AliAnalysisTaskFullppJet.cxx:573
 AliAnalysisTaskFullppJet.cxx:574
 AliAnalysisTaskFullppJet.cxx:575
 AliAnalysisTaskFullppJet.cxx:576
 AliAnalysisTaskFullppJet.cxx:577
 AliAnalysisTaskFullppJet.cxx:578
 AliAnalysisTaskFullppJet.cxx:579
 AliAnalysisTaskFullppJet.cxx:580
 AliAnalysisTaskFullppJet.cxx:581
 AliAnalysisTaskFullppJet.cxx:582
 AliAnalysisTaskFullppJet.cxx:583
 AliAnalysisTaskFullppJet.cxx:584
 AliAnalysisTaskFullppJet.cxx:585
 AliAnalysisTaskFullppJet.cxx:586
 AliAnalysisTaskFullppJet.cxx:587
 AliAnalysisTaskFullppJet.cxx:588
 AliAnalysisTaskFullppJet.cxx:589
 AliAnalysisTaskFullppJet.cxx:590
 AliAnalysisTaskFullppJet.cxx:591
 AliAnalysisTaskFullppJet.cxx:592
 AliAnalysisTaskFullppJet.cxx:593
 AliAnalysisTaskFullppJet.cxx:594
 AliAnalysisTaskFullppJet.cxx:595
 AliAnalysisTaskFullppJet.cxx:596
 AliAnalysisTaskFullppJet.cxx:597
 AliAnalysisTaskFullppJet.cxx:598
 AliAnalysisTaskFullppJet.cxx:599
 AliAnalysisTaskFullppJet.cxx:600
 AliAnalysisTaskFullppJet.cxx:601
 AliAnalysisTaskFullppJet.cxx:602
 AliAnalysisTaskFullppJet.cxx:603
 AliAnalysisTaskFullppJet.cxx:604
 AliAnalysisTaskFullppJet.cxx:605
 AliAnalysisTaskFullppJet.cxx:606
 AliAnalysisTaskFullppJet.cxx:607
 AliAnalysisTaskFullppJet.cxx:608
 AliAnalysisTaskFullppJet.cxx:609
 AliAnalysisTaskFullppJet.cxx:610
 AliAnalysisTaskFullppJet.cxx:611
 AliAnalysisTaskFullppJet.cxx:612
 AliAnalysisTaskFullppJet.cxx:613
 AliAnalysisTaskFullppJet.cxx:614
 AliAnalysisTaskFullppJet.cxx:615
 AliAnalysisTaskFullppJet.cxx:616
 AliAnalysisTaskFullppJet.cxx:617
 AliAnalysisTaskFullppJet.cxx:618
 AliAnalysisTaskFullppJet.cxx:619
 AliAnalysisTaskFullppJet.cxx:620
 AliAnalysisTaskFullppJet.cxx:621
 AliAnalysisTaskFullppJet.cxx:622
 AliAnalysisTaskFullppJet.cxx:623
 AliAnalysisTaskFullppJet.cxx:624
 AliAnalysisTaskFullppJet.cxx:625
 AliAnalysisTaskFullppJet.cxx:626
 AliAnalysisTaskFullppJet.cxx:627
 AliAnalysisTaskFullppJet.cxx:628
 AliAnalysisTaskFullppJet.cxx:629
 AliAnalysisTaskFullppJet.cxx:630
 AliAnalysisTaskFullppJet.cxx:631
 AliAnalysisTaskFullppJet.cxx:632
 AliAnalysisTaskFullppJet.cxx:633
 AliAnalysisTaskFullppJet.cxx:634
 AliAnalysisTaskFullppJet.cxx:635
 AliAnalysisTaskFullppJet.cxx:636
 AliAnalysisTaskFullppJet.cxx:637
 AliAnalysisTaskFullppJet.cxx:638
 AliAnalysisTaskFullppJet.cxx:639
 AliAnalysisTaskFullppJet.cxx:640
 AliAnalysisTaskFullppJet.cxx:641
 AliAnalysisTaskFullppJet.cxx:642
 AliAnalysisTaskFullppJet.cxx:643
 AliAnalysisTaskFullppJet.cxx:644
 AliAnalysisTaskFullppJet.cxx:645
 AliAnalysisTaskFullppJet.cxx:646
 AliAnalysisTaskFullppJet.cxx:647
 AliAnalysisTaskFullppJet.cxx:648
 AliAnalysisTaskFullppJet.cxx:649
 AliAnalysisTaskFullppJet.cxx:650
 AliAnalysisTaskFullppJet.cxx:651
 AliAnalysisTaskFullppJet.cxx:652
 AliAnalysisTaskFullppJet.cxx:653
 AliAnalysisTaskFullppJet.cxx:654
 AliAnalysisTaskFullppJet.cxx:655
 AliAnalysisTaskFullppJet.cxx:656
 AliAnalysisTaskFullppJet.cxx:657
 AliAnalysisTaskFullppJet.cxx:658
 AliAnalysisTaskFullppJet.cxx:659
 AliAnalysisTaskFullppJet.cxx:660
 AliAnalysisTaskFullppJet.cxx:661
 AliAnalysisTaskFullppJet.cxx:662
 AliAnalysisTaskFullppJet.cxx:663
 AliAnalysisTaskFullppJet.cxx:664
 AliAnalysisTaskFullppJet.cxx:665
 AliAnalysisTaskFullppJet.cxx:666
 AliAnalysisTaskFullppJet.cxx:667
 AliAnalysisTaskFullppJet.cxx:668
 AliAnalysisTaskFullppJet.cxx:669
 AliAnalysisTaskFullppJet.cxx:670
 AliAnalysisTaskFullppJet.cxx:671
 AliAnalysisTaskFullppJet.cxx:672
 AliAnalysisTaskFullppJet.cxx:673
 AliAnalysisTaskFullppJet.cxx:674
 AliAnalysisTaskFullppJet.cxx:675
 AliAnalysisTaskFullppJet.cxx:676
 AliAnalysisTaskFullppJet.cxx:677
 AliAnalysisTaskFullppJet.cxx:678
 AliAnalysisTaskFullppJet.cxx:679
 AliAnalysisTaskFullppJet.cxx:680
 AliAnalysisTaskFullppJet.cxx:681
 AliAnalysisTaskFullppJet.cxx:682
 AliAnalysisTaskFullppJet.cxx:683
 AliAnalysisTaskFullppJet.cxx:684
 AliAnalysisTaskFullppJet.cxx:685
 AliAnalysisTaskFullppJet.cxx:686
 AliAnalysisTaskFullppJet.cxx:687
 AliAnalysisTaskFullppJet.cxx:688
 AliAnalysisTaskFullppJet.cxx:689
 AliAnalysisTaskFullppJet.cxx:690
 AliAnalysisTaskFullppJet.cxx:691
 AliAnalysisTaskFullppJet.cxx:692
 AliAnalysisTaskFullppJet.cxx:693
 AliAnalysisTaskFullppJet.cxx:694
 AliAnalysisTaskFullppJet.cxx:695
 AliAnalysisTaskFullppJet.cxx:696
 AliAnalysisTaskFullppJet.cxx:697
 AliAnalysisTaskFullppJet.cxx:698
 AliAnalysisTaskFullppJet.cxx:699
 AliAnalysisTaskFullppJet.cxx:700
 AliAnalysisTaskFullppJet.cxx:701
 AliAnalysisTaskFullppJet.cxx:702
 AliAnalysisTaskFullppJet.cxx:703
 AliAnalysisTaskFullppJet.cxx:704
 AliAnalysisTaskFullppJet.cxx:705
 AliAnalysisTaskFullppJet.cxx:706
 AliAnalysisTaskFullppJet.cxx:707
 AliAnalysisTaskFullppJet.cxx:708
 AliAnalysisTaskFullppJet.cxx:709
 AliAnalysisTaskFullppJet.cxx:710
 AliAnalysisTaskFullppJet.cxx:711
 AliAnalysisTaskFullppJet.cxx:712
 AliAnalysisTaskFullppJet.cxx:713
 AliAnalysisTaskFullppJet.cxx:714
 AliAnalysisTaskFullppJet.cxx:715
 AliAnalysisTaskFullppJet.cxx:716
 AliAnalysisTaskFullppJet.cxx:717
 AliAnalysisTaskFullppJet.cxx:718
 AliAnalysisTaskFullppJet.cxx:719
 AliAnalysisTaskFullppJet.cxx:720
 AliAnalysisTaskFullppJet.cxx:721
 AliAnalysisTaskFullppJet.cxx:722
 AliAnalysisTaskFullppJet.cxx:723
 AliAnalysisTaskFullppJet.cxx:724
 AliAnalysisTaskFullppJet.cxx:725
 AliAnalysisTaskFullppJet.cxx:726
 AliAnalysisTaskFullppJet.cxx:727
 AliAnalysisTaskFullppJet.cxx:728
 AliAnalysisTaskFullppJet.cxx:729
 AliAnalysisTaskFullppJet.cxx:730
 AliAnalysisTaskFullppJet.cxx:731
 AliAnalysisTaskFullppJet.cxx:732
 AliAnalysisTaskFullppJet.cxx:733
 AliAnalysisTaskFullppJet.cxx:734
 AliAnalysisTaskFullppJet.cxx:735
 AliAnalysisTaskFullppJet.cxx:736
 AliAnalysisTaskFullppJet.cxx:737
 AliAnalysisTaskFullppJet.cxx:738
 AliAnalysisTaskFullppJet.cxx:739
 AliAnalysisTaskFullppJet.cxx:740
 AliAnalysisTaskFullppJet.cxx:741
 AliAnalysisTaskFullppJet.cxx:742
 AliAnalysisTaskFullppJet.cxx:743
 AliAnalysisTaskFullppJet.cxx:744
 AliAnalysisTaskFullppJet.cxx:745
 AliAnalysisTaskFullppJet.cxx:746
 AliAnalysisTaskFullppJet.cxx:747
 AliAnalysisTaskFullppJet.cxx:748
 AliAnalysisTaskFullppJet.cxx:749
 AliAnalysisTaskFullppJet.cxx:750
 AliAnalysisTaskFullppJet.cxx:751
 AliAnalysisTaskFullppJet.cxx:752
 AliAnalysisTaskFullppJet.cxx:753
 AliAnalysisTaskFullppJet.cxx:754
 AliAnalysisTaskFullppJet.cxx:755
 AliAnalysisTaskFullppJet.cxx:756
 AliAnalysisTaskFullppJet.cxx:757
 AliAnalysisTaskFullppJet.cxx:758
 AliAnalysisTaskFullppJet.cxx:759
 AliAnalysisTaskFullppJet.cxx:760
 AliAnalysisTaskFullppJet.cxx:761
 AliAnalysisTaskFullppJet.cxx:762
 AliAnalysisTaskFullppJet.cxx:763
 AliAnalysisTaskFullppJet.cxx:764
 AliAnalysisTaskFullppJet.cxx:765
 AliAnalysisTaskFullppJet.cxx:766
 AliAnalysisTaskFullppJet.cxx:767
 AliAnalysisTaskFullppJet.cxx:768
 AliAnalysisTaskFullppJet.cxx:769
 AliAnalysisTaskFullppJet.cxx:770
 AliAnalysisTaskFullppJet.cxx:771
 AliAnalysisTaskFullppJet.cxx:772
 AliAnalysisTaskFullppJet.cxx:773
 AliAnalysisTaskFullppJet.cxx:774
 AliAnalysisTaskFullppJet.cxx:775
 AliAnalysisTaskFullppJet.cxx:776
 AliAnalysisTaskFullppJet.cxx:777
 AliAnalysisTaskFullppJet.cxx:778
 AliAnalysisTaskFullppJet.cxx:779
 AliAnalysisTaskFullppJet.cxx:780
 AliAnalysisTaskFullppJet.cxx:781
 AliAnalysisTaskFullppJet.cxx:782
 AliAnalysisTaskFullppJet.cxx:783
 AliAnalysisTaskFullppJet.cxx:784
 AliAnalysisTaskFullppJet.cxx:785
 AliAnalysisTaskFullppJet.cxx:786
 AliAnalysisTaskFullppJet.cxx:787
 AliAnalysisTaskFullppJet.cxx:788
 AliAnalysisTaskFullppJet.cxx:789
 AliAnalysisTaskFullppJet.cxx:790
 AliAnalysisTaskFullppJet.cxx:791
 AliAnalysisTaskFullppJet.cxx:792
 AliAnalysisTaskFullppJet.cxx:793
 AliAnalysisTaskFullppJet.cxx:794
 AliAnalysisTaskFullppJet.cxx:795
 AliAnalysisTaskFullppJet.cxx:796
 AliAnalysisTaskFullppJet.cxx:797
 AliAnalysisTaskFullppJet.cxx:798
 AliAnalysisTaskFullppJet.cxx:799
 AliAnalysisTaskFullppJet.cxx:800
 AliAnalysisTaskFullppJet.cxx:801
 AliAnalysisTaskFullppJet.cxx:802
 AliAnalysisTaskFullppJet.cxx:803
 AliAnalysisTaskFullppJet.cxx:804
 AliAnalysisTaskFullppJet.cxx:805
 AliAnalysisTaskFullppJet.cxx:806
 AliAnalysisTaskFullppJet.cxx:807
 AliAnalysisTaskFullppJet.cxx:808
 AliAnalysisTaskFullppJet.cxx:809
 AliAnalysisTaskFullppJet.cxx:810
 AliAnalysisTaskFullppJet.cxx:811
 AliAnalysisTaskFullppJet.cxx:812
 AliAnalysisTaskFullppJet.cxx:813
 AliAnalysisTaskFullppJet.cxx:814
 AliAnalysisTaskFullppJet.cxx:815
 AliAnalysisTaskFullppJet.cxx:816
 AliAnalysisTaskFullppJet.cxx:817
 AliAnalysisTaskFullppJet.cxx:818
 AliAnalysisTaskFullppJet.cxx:819
 AliAnalysisTaskFullppJet.cxx:820
 AliAnalysisTaskFullppJet.cxx:821
 AliAnalysisTaskFullppJet.cxx:822
 AliAnalysisTaskFullppJet.cxx:823
 AliAnalysisTaskFullppJet.cxx:824
 AliAnalysisTaskFullppJet.cxx:825
 AliAnalysisTaskFullppJet.cxx:826
 AliAnalysisTaskFullppJet.cxx:827
 AliAnalysisTaskFullppJet.cxx:828
 AliAnalysisTaskFullppJet.cxx:829
 AliAnalysisTaskFullppJet.cxx:830
 AliAnalysisTaskFullppJet.cxx:831
 AliAnalysisTaskFullppJet.cxx:832
 AliAnalysisTaskFullppJet.cxx:833
 AliAnalysisTaskFullppJet.cxx:834
 AliAnalysisTaskFullppJet.cxx:835
 AliAnalysisTaskFullppJet.cxx:836
 AliAnalysisTaskFullppJet.cxx:837
 AliAnalysisTaskFullppJet.cxx:838
 AliAnalysisTaskFullppJet.cxx:839
 AliAnalysisTaskFullppJet.cxx:840
 AliAnalysisTaskFullppJet.cxx:841
 AliAnalysisTaskFullppJet.cxx:842
 AliAnalysisTaskFullppJet.cxx:843
 AliAnalysisTaskFullppJet.cxx:844
 AliAnalysisTaskFullppJet.cxx:845
 AliAnalysisTaskFullppJet.cxx:846
 AliAnalysisTaskFullppJet.cxx:847
 AliAnalysisTaskFullppJet.cxx:848
 AliAnalysisTaskFullppJet.cxx:849
 AliAnalysisTaskFullppJet.cxx:850
 AliAnalysisTaskFullppJet.cxx:851
 AliAnalysisTaskFullppJet.cxx:852
 AliAnalysisTaskFullppJet.cxx:853
 AliAnalysisTaskFullppJet.cxx:854
 AliAnalysisTaskFullppJet.cxx:855
 AliAnalysisTaskFullppJet.cxx:856
 AliAnalysisTaskFullppJet.cxx:857
 AliAnalysisTaskFullppJet.cxx:858
 AliAnalysisTaskFullppJet.cxx:859
 AliAnalysisTaskFullppJet.cxx:860
 AliAnalysisTaskFullppJet.cxx:861
 AliAnalysisTaskFullppJet.cxx:862
 AliAnalysisTaskFullppJet.cxx:863
 AliAnalysisTaskFullppJet.cxx:864
 AliAnalysisTaskFullppJet.cxx:865
 AliAnalysisTaskFullppJet.cxx:866
 AliAnalysisTaskFullppJet.cxx:867
 AliAnalysisTaskFullppJet.cxx:868
 AliAnalysisTaskFullppJet.cxx:869
 AliAnalysisTaskFullppJet.cxx:870
 AliAnalysisTaskFullppJet.cxx:871
 AliAnalysisTaskFullppJet.cxx:872
 AliAnalysisTaskFullppJet.cxx:873
 AliAnalysisTaskFullppJet.cxx:874
 AliAnalysisTaskFullppJet.cxx:875
 AliAnalysisTaskFullppJet.cxx:876
 AliAnalysisTaskFullppJet.cxx:877
 AliAnalysisTaskFullppJet.cxx:878
 AliAnalysisTaskFullppJet.cxx:879
 AliAnalysisTaskFullppJet.cxx:880
 AliAnalysisTaskFullppJet.cxx:881
 AliAnalysisTaskFullppJet.cxx:882
 AliAnalysisTaskFullppJet.cxx:883
 AliAnalysisTaskFullppJet.cxx:884
 AliAnalysisTaskFullppJet.cxx:885
 AliAnalysisTaskFullppJet.cxx:886
 AliAnalysisTaskFullppJet.cxx:887
 AliAnalysisTaskFullppJet.cxx:888
 AliAnalysisTaskFullppJet.cxx:889
 AliAnalysisTaskFullppJet.cxx:890
 AliAnalysisTaskFullppJet.cxx:891
 AliAnalysisTaskFullppJet.cxx:892
 AliAnalysisTaskFullppJet.cxx:893
 AliAnalysisTaskFullppJet.cxx:894
 AliAnalysisTaskFullppJet.cxx:895
 AliAnalysisTaskFullppJet.cxx:896
 AliAnalysisTaskFullppJet.cxx:897
 AliAnalysisTaskFullppJet.cxx:898
 AliAnalysisTaskFullppJet.cxx:899
 AliAnalysisTaskFullppJet.cxx:900
 AliAnalysisTaskFullppJet.cxx:901
 AliAnalysisTaskFullppJet.cxx:902
 AliAnalysisTaskFullppJet.cxx:903
 AliAnalysisTaskFullppJet.cxx:904
 AliAnalysisTaskFullppJet.cxx:905
 AliAnalysisTaskFullppJet.cxx:906
 AliAnalysisTaskFullppJet.cxx:907
 AliAnalysisTaskFullppJet.cxx:908
 AliAnalysisTaskFullppJet.cxx:909
 AliAnalysisTaskFullppJet.cxx:910
 AliAnalysisTaskFullppJet.cxx:911
 AliAnalysisTaskFullppJet.cxx:912
 AliAnalysisTaskFullppJet.cxx:913
 AliAnalysisTaskFullppJet.cxx:914
 AliAnalysisTaskFullppJet.cxx:915
 AliAnalysisTaskFullppJet.cxx:916
 AliAnalysisTaskFullppJet.cxx:917
 AliAnalysisTaskFullppJet.cxx:918
 AliAnalysisTaskFullppJet.cxx:919
 AliAnalysisTaskFullppJet.cxx:920
 AliAnalysisTaskFullppJet.cxx:921
 AliAnalysisTaskFullppJet.cxx:922
 AliAnalysisTaskFullppJet.cxx:923
 AliAnalysisTaskFullppJet.cxx:924
 AliAnalysisTaskFullppJet.cxx:925
 AliAnalysisTaskFullppJet.cxx:926
 AliAnalysisTaskFullppJet.cxx:927
 AliAnalysisTaskFullppJet.cxx:928
 AliAnalysisTaskFullppJet.cxx:929
 AliAnalysisTaskFullppJet.cxx:930
 AliAnalysisTaskFullppJet.cxx:931
 AliAnalysisTaskFullppJet.cxx:932
 AliAnalysisTaskFullppJet.cxx:933
 AliAnalysisTaskFullppJet.cxx:934
 AliAnalysisTaskFullppJet.cxx:935
 AliAnalysisTaskFullppJet.cxx:936
 AliAnalysisTaskFullppJet.cxx:937
 AliAnalysisTaskFullppJet.cxx:938
 AliAnalysisTaskFullppJet.cxx:939
 AliAnalysisTaskFullppJet.cxx:940
 AliAnalysisTaskFullppJet.cxx:941
 AliAnalysisTaskFullppJet.cxx:942
 AliAnalysisTaskFullppJet.cxx:943
 AliAnalysisTaskFullppJet.cxx:944
 AliAnalysisTaskFullppJet.cxx:945
 AliAnalysisTaskFullppJet.cxx:946
 AliAnalysisTaskFullppJet.cxx:947
 AliAnalysisTaskFullppJet.cxx:948
 AliAnalysisTaskFullppJet.cxx:949
 AliAnalysisTaskFullppJet.cxx:950
 AliAnalysisTaskFullppJet.cxx:951
 AliAnalysisTaskFullppJet.cxx:952
 AliAnalysisTaskFullppJet.cxx:953
 AliAnalysisTaskFullppJet.cxx:954
 AliAnalysisTaskFullppJet.cxx:955
 AliAnalysisTaskFullppJet.cxx:956
 AliAnalysisTaskFullppJet.cxx:957
 AliAnalysisTaskFullppJet.cxx:958
 AliAnalysisTaskFullppJet.cxx:959
 AliAnalysisTaskFullppJet.cxx:960
 AliAnalysisTaskFullppJet.cxx:961
 AliAnalysisTaskFullppJet.cxx:962
 AliAnalysisTaskFullppJet.cxx:963
 AliAnalysisTaskFullppJet.cxx:964
 AliAnalysisTaskFullppJet.cxx:965
 AliAnalysisTaskFullppJet.cxx:966
 AliAnalysisTaskFullppJet.cxx:967
 AliAnalysisTaskFullppJet.cxx:968
 AliAnalysisTaskFullppJet.cxx:969
 AliAnalysisTaskFullppJet.cxx:970
 AliAnalysisTaskFullppJet.cxx:971
 AliAnalysisTaskFullppJet.cxx:972
 AliAnalysisTaskFullppJet.cxx:973
 AliAnalysisTaskFullppJet.cxx:974
 AliAnalysisTaskFullppJet.cxx:975
 AliAnalysisTaskFullppJet.cxx:976
 AliAnalysisTaskFullppJet.cxx:977
 AliAnalysisTaskFullppJet.cxx:978
 AliAnalysisTaskFullppJet.cxx:979
 AliAnalysisTaskFullppJet.cxx:980
 AliAnalysisTaskFullppJet.cxx:981
 AliAnalysisTaskFullppJet.cxx:982
 AliAnalysisTaskFullppJet.cxx:983
 AliAnalysisTaskFullppJet.cxx:984
 AliAnalysisTaskFullppJet.cxx:985
 AliAnalysisTaskFullppJet.cxx:986
 AliAnalysisTaskFullppJet.cxx:987
 AliAnalysisTaskFullppJet.cxx:988
 AliAnalysisTaskFullppJet.cxx:989
 AliAnalysisTaskFullppJet.cxx:990
 AliAnalysisTaskFullppJet.cxx:991
 AliAnalysisTaskFullppJet.cxx:992
 AliAnalysisTaskFullppJet.cxx:993
 AliAnalysisTaskFullppJet.cxx:994
 AliAnalysisTaskFullppJet.cxx:995
 AliAnalysisTaskFullppJet.cxx:996
 AliAnalysisTaskFullppJet.cxx:997
 AliAnalysisTaskFullppJet.cxx:998
 AliAnalysisTaskFullppJet.cxx:999
 AliAnalysisTaskFullppJet.cxx:1000
 AliAnalysisTaskFullppJet.cxx:1001
 AliAnalysisTaskFullppJet.cxx:1002
 AliAnalysisTaskFullppJet.cxx:1003
 AliAnalysisTaskFullppJet.cxx:1004
 AliAnalysisTaskFullppJet.cxx:1005
 AliAnalysisTaskFullppJet.cxx:1006
 AliAnalysisTaskFullppJet.cxx:1007
 AliAnalysisTaskFullppJet.cxx:1008
 AliAnalysisTaskFullppJet.cxx:1009
 AliAnalysisTaskFullppJet.cxx:1010
 AliAnalysisTaskFullppJet.cxx:1011
 AliAnalysisTaskFullppJet.cxx:1012
 AliAnalysisTaskFullppJet.cxx:1013
 AliAnalysisTaskFullppJet.cxx:1014
 AliAnalysisTaskFullppJet.cxx:1015
 AliAnalysisTaskFullppJet.cxx:1016
 AliAnalysisTaskFullppJet.cxx:1017
 AliAnalysisTaskFullppJet.cxx:1018
 AliAnalysisTaskFullppJet.cxx:1019
 AliAnalysisTaskFullppJet.cxx:1020
 AliAnalysisTaskFullppJet.cxx:1021
 AliAnalysisTaskFullppJet.cxx:1022
 AliAnalysisTaskFullppJet.cxx:1023
 AliAnalysisTaskFullppJet.cxx:1024
 AliAnalysisTaskFullppJet.cxx:1025
 AliAnalysisTaskFullppJet.cxx:1026
 AliAnalysisTaskFullppJet.cxx:1027
 AliAnalysisTaskFullppJet.cxx:1028
 AliAnalysisTaskFullppJet.cxx:1029
 AliAnalysisTaskFullppJet.cxx:1030
 AliAnalysisTaskFullppJet.cxx:1031
 AliAnalysisTaskFullppJet.cxx:1032
 AliAnalysisTaskFullppJet.cxx:1033
 AliAnalysisTaskFullppJet.cxx:1034
 AliAnalysisTaskFullppJet.cxx:1035
 AliAnalysisTaskFullppJet.cxx:1036
 AliAnalysisTaskFullppJet.cxx:1037
 AliAnalysisTaskFullppJet.cxx:1038
 AliAnalysisTaskFullppJet.cxx:1039
 AliAnalysisTaskFullppJet.cxx:1040
 AliAnalysisTaskFullppJet.cxx:1041
 AliAnalysisTaskFullppJet.cxx:1042
 AliAnalysisTaskFullppJet.cxx:1043
 AliAnalysisTaskFullppJet.cxx:1044
 AliAnalysisTaskFullppJet.cxx:1045
 AliAnalysisTaskFullppJet.cxx:1046
 AliAnalysisTaskFullppJet.cxx:1047
 AliAnalysisTaskFullppJet.cxx:1048
 AliAnalysisTaskFullppJet.cxx:1049
 AliAnalysisTaskFullppJet.cxx:1050
 AliAnalysisTaskFullppJet.cxx:1051
 AliAnalysisTaskFullppJet.cxx:1052
 AliAnalysisTaskFullppJet.cxx:1053
 AliAnalysisTaskFullppJet.cxx:1054
 AliAnalysisTaskFullppJet.cxx:1055
 AliAnalysisTaskFullppJet.cxx:1056
 AliAnalysisTaskFullppJet.cxx:1057
 AliAnalysisTaskFullppJet.cxx:1058
 AliAnalysisTaskFullppJet.cxx:1059
 AliAnalysisTaskFullppJet.cxx:1060
 AliAnalysisTaskFullppJet.cxx:1061
 AliAnalysisTaskFullppJet.cxx:1062
 AliAnalysisTaskFullppJet.cxx:1063
 AliAnalysisTaskFullppJet.cxx:1064
 AliAnalysisTaskFullppJet.cxx:1065
 AliAnalysisTaskFullppJet.cxx:1066
 AliAnalysisTaskFullppJet.cxx:1067
 AliAnalysisTaskFullppJet.cxx:1068
 AliAnalysisTaskFullppJet.cxx:1069
 AliAnalysisTaskFullppJet.cxx:1070
 AliAnalysisTaskFullppJet.cxx:1071
 AliAnalysisTaskFullppJet.cxx:1072
 AliAnalysisTaskFullppJet.cxx:1073
 AliAnalysisTaskFullppJet.cxx:1074
 AliAnalysisTaskFullppJet.cxx:1075
 AliAnalysisTaskFullppJet.cxx:1076
 AliAnalysisTaskFullppJet.cxx:1077
 AliAnalysisTaskFullppJet.cxx:1078
 AliAnalysisTaskFullppJet.cxx:1079
 AliAnalysisTaskFullppJet.cxx:1080
 AliAnalysisTaskFullppJet.cxx:1081
 AliAnalysisTaskFullppJet.cxx:1082
 AliAnalysisTaskFullppJet.cxx:1083
 AliAnalysisTaskFullppJet.cxx:1084
 AliAnalysisTaskFullppJet.cxx:1085
 AliAnalysisTaskFullppJet.cxx:1086
 AliAnalysisTaskFullppJet.cxx:1087
 AliAnalysisTaskFullppJet.cxx:1088
 AliAnalysisTaskFullppJet.cxx:1089
 AliAnalysisTaskFullppJet.cxx:1090
 AliAnalysisTaskFullppJet.cxx:1091
 AliAnalysisTaskFullppJet.cxx:1092
 AliAnalysisTaskFullppJet.cxx:1093
 AliAnalysisTaskFullppJet.cxx:1094
 AliAnalysisTaskFullppJet.cxx:1095
 AliAnalysisTaskFullppJet.cxx:1096
 AliAnalysisTaskFullppJet.cxx:1097
 AliAnalysisTaskFullppJet.cxx:1098
 AliAnalysisTaskFullppJet.cxx:1099
 AliAnalysisTaskFullppJet.cxx:1100
 AliAnalysisTaskFullppJet.cxx:1101
 AliAnalysisTaskFullppJet.cxx:1102
 AliAnalysisTaskFullppJet.cxx:1103
 AliAnalysisTaskFullppJet.cxx:1104
 AliAnalysisTaskFullppJet.cxx:1105
 AliAnalysisTaskFullppJet.cxx:1106
 AliAnalysisTaskFullppJet.cxx:1107
 AliAnalysisTaskFullppJet.cxx:1108
 AliAnalysisTaskFullppJet.cxx:1109
 AliAnalysisTaskFullppJet.cxx:1110
 AliAnalysisTaskFullppJet.cxx:1111
 AliAnalysisTaskFullppJet.cxx:1112
 AliAnalysisTaskFullppJet.cxx:1113
 AliAnalysisTaskFullppJet.cxx:1114
 AliAnalysisTaskFullppJet.cxx:1115
 AliAnalysisTaskFullppJet.cxx:1116
 AliAnalysisTaskFullppJet.cxx:1117
 AliAnalysisTaskFullppJet.cxx:1118
 AliAnalysisTaskFullppJet.cxx:1119
 AliAnalysisTaskFullppJet.cxx:1120
 AliAnalysisTaskFullppJet.cxx:1121
 AliAnalysisTaskFullppJet.cxx:1122
 AliAnalysisTaskFullppJet.cxx:1123
 AliAnalysisTaskFullppJet.cxx:1124
 AliAnalysisTaskFullppJet.cxx:1125
 AliAnalysisTaskFullppJet.cxx:1126
 AliAnalysisTaskFullppJet.cxx:1127
 AliAnalysisTaskFullppJet.cxx:1128
 AliAnalysisTaskFullppJet.cxx:1129
 AliAnalysisTaskFullppJet.cxx:1130
 AliAnalysisTaskFullppJet.cxx:1131
 AliAnalysisTaskFullppJet.cxx:1132
 AliAnalysisTaskFullppJet.cxx:1133
 AliAnalysisTaskFullppJet.cxx:1134
 AliAnalysisTaskFullppJet.cxx:1135
 AliAnalysisTaskFullppJet.cxx:1136
 AliAnalysisTaskFullppJet.cxx:1137
 AliAnalysisTaskFullppJet.cxx:1138
 AliAnalysisTaskFullppJet.cxx:1139
 AliAnalysisTaskFullppJet.cxx:1140
 AliAnalysisTaskFullppJet.cxx:1141
 AliAnalysisTaskFullppJet.cxx:1142
 AliAnalysisTaskFullppJet.cxx:1143
 AliAnalysisTaskFullppJet.cxx:1144
 AliAnalysisTaskFullppJet.cxx:1145
 AliAnalysisTaskFullppJet.cxx:1146
 AliAnalysisTaskFullppJet.cxx:1147
 AliAnalysisTaskFullppJet.cxx:1148
 AliAnalysisTaskFullppJet.cxx:1149
 AliAnalysisTaskFullppJet.cxx:1150
 AliAnalysisTaskFullppJet.cxx:1151
 AliAnalysisTaskFullppJet.cxx:1152
 AliAnalysisTaskFullppJet.cxx:1153
 AliAnalysisTaskFullppJet.cxx:1154
 AliAnalysisTaskFullppJet.cxx:1155
 AliAnalysisTaskFullppJet.cxx:1156
 AliAnalysisTaskFullppJet.cxx:1157
 AliAnalysisTaskFullppJet.cxx:1158
 AliAnalysisTaskFullppJet.cxx:1159
 AliAnalysisTaskFullppJet.cxx:1160
 AliAnalysisTaskFullppJet.cxx:1161
 AliAnalysisTaskFullppJet.cxx:1162
 AliAnalysisTaskFullppJet.cxx:1163
 AliAnalysisTaskFullppJet.cxx:1164
 AliAnalysisTaskFullppJet.cxx:1165
 AliAnalysisTaskFullppJet.cxx:1166
 AliAnalysisTaskFullppJet.cxx:1167
 AliAnalysisTaskFullppJet.cxx:1168
 AliAnalysisTaskFullppJet.cxx:1169
 AliAnalysisTaskFullppJet.cxx:1170
 AliAnalysisTaskFullppJet.cxx:1171
 AliAnalysisTaskFullppJet.cxx:1172
 AliAnalysisTaskFullppJet.cxx:1173
 AliAnalysisTaskFullppJet.cxx:1174
 AliAnalysisTaskFullppJet.cxx:1175
 AliAnalysisTaskFullppJet.cxx:1176
 AliAnalysisTaskFullppJet.cxx:1177
 AliAnalysisTaskFullppJet.cxx:1178
 AliAnalysisTaskFullppJet.cxx:1179
 AliAnalysisTaskFullppJet.cxx:1180
 AliAnalysisTaskFullppJet.cxx:1181
 AliAnalysisTaskFullppJet.cxx:1182
 AliAnalysisTaskFullppJet.cxx:1183
 AliAnalysisTaskFullppJet.cxx:1184
 AliAnalysisTaskFullppJet.cxx:1185
 AliAnalysisTaskFullppJet.cxx:1186
 AliAnalysisTaskFullppJet.cxx:1187
 AliAnalysisTaskFullppJet.cxx:1188
 AliAnalysisTaskFullppJet.cxx:1189
 AliAnalysisTaskFullppJet.cxx:1190
 AliAnalysisTaskFullppJet.cxx:1191
 AliAnalysisTaskFullppJet.cxx:1192
 AliAnalysisTaskFullppJet.cxx:1193
 AliAnalysisTaskFullppJet.cxx:1194
 AliAnalysisTaskFullppJet.cxx:1195
 AliAnalysisTaskFullppJet.cxx:1196
 AliAnalysisTaskFullppJet.cxx:1197
 AliAnalysisTaskFullppJet.cxx:1198
 AliAnalysisTaskFullppJet.cxx:1199
 AliAnalysisTaskFullppJet.cxx:1200
 AliAnalysisTaskFullppJet.cxx:1201
 AliAnalysisTaskFullppJet.cxx:1202
 AliAnalysisTaskFullppJet.cxx:1203
 AliAnalysisTaskFullppJet.cxx:1204
 AliAnalysisTaskFullppJet.cxx:1205
 AliAnalysisTaskFullppJet.cxx:1206
 AliAnalysisTaskFullppJet.cxx:1207
 AliAnalysisTaskFullppJet.cxx:1208
 AliAnalysisTaskFullppJet.cxx:1209
 AliAnalysisTaskFullppJet.cxx:1210
 AliAnalysisTaskFullppJet.cxx:1211
 AliAnalysisTaskFullppJet.cxx:1212
 AliAnalysisTaskFullppJet.cxx:1213
 AliAnalysisTaskFullppJet.cxx:1214
 AliAnalysisTaskFullppJet.cxx:1215
 AliAnalysisTaskFullppJet.cxx:1216
 AliAnalysisTaskFullppJet.cxx:1217
 AliAnalysisTaskFullppJet.cxx:1218
 AliAnalysisTaskFullppJet.cxx:1219
 AliAnalysisTaskFullppJet.cxx:1220
 AliAnalysisTaskFullppJet.cxx:1221
 AliAnalysisTaskFullppJet.cxx:1222
 AliAnalysisTaskFullppJet.cxx:1223
 AliAnalysisTaskFullppJet.cxx:1224
 AliAnalysisTaskFullppJet.cxx:1225
 AliAnalysisTaskFullppJet.cxx:1226
 AliAnalysisTaskFullppJet.cxx:1227
 AliAnalysisTaskFullppJet.cxx:1228
 AliAnalysisTaskFullppJet.cxx:1229
 AliAnalysisTaskFullppJet.cxx:1230
 AliAnalysisTaskFullppJet.cxx:1231
 AliAnalysisTaskFullppJet.cxx:1232
 AliAnalysisTaskFullppJet.cxx:1233
 AliAnalysisTaskFullppJet.cxx:1234
 AliAnalysisTaskFullppJet.cxx:1235
 AliAnalysisTaskFullppJet.cxx:1236
 AliAnalysisTaskFullppJet.cxx:1237
 AliAnalysisTaskFullppJet.cxx:1238
 AliAnalysisTaskFullppJet.cxx:1239
 AliAnalysisTaskFullppJet.cxx:1240
 AliAnalysisTaskFullppJet.cxx:1241
 AliAnalysisTaskFullppJet.cxx:1242
 AliAnalysisTaskFullppJet.cxx:1243
 AliAnalysisTaskFullppJet.cxx:1244
 AliAnalysisTaskFullppJet.cxx:1245
 AliAnalysisTaskFullppJet.cxx:1246
 AliAnalysisTaskFullppJet.cxx:1247
 AliAnalysisTaskFullppJet.cxx:1248
 AliAnalysisTaskFullppJet.cxx:1249
 AliAnalysisTaskFullppJet.cxx:1250
 AliAnalysisTaskFullppJet.cxx:1251
 AliAnalysisTaskFullppJet.cxx:1252
 AliAnalysisTaskFullppJet.cxx:1253
 AliAnalysisTaskFullppJet.cxx:1254
 AliAnalysisTaskFullppJet.cxx:1255
 AliAnalysisTaskFullppJet.cxx:1256
 AliAnalysisTaskFullppJet.cxx:1257
 AliAnalysisTaskFullppJet.cxx:1258
 AliAnalysisTaskFullppJet.cxx:1259
 AliAnalysisTaskFullppJet.cxx:1260
 AliAnalysisTaskFullppJet.cxx:1261
 AliAnalysisTaskFullppJet.cxx:1262
 AliAnalysisTaskFullppJet.cxx:1263
 AliAnalysisTaskFullppJet.cxx:1264
 AliAnalysisTaskFullppJet.cxx:1265
 AliAnalysisTaskFullppJet.cxx:1266
 AliAnalysisTaskFullppJet.cxx:1267
 AliAnalysisTaskFullppJet.cxx:1268
 AliAnalysisTaskFullppJet.cxx:1269
 AliAnalysisTaskFullppJet.cxx:1270
 AliAnalysisTaskFullppJet.cxx:1271
 AliAnalysisTaskFullppJet.cxx:1272
 AliAnalysisTaskFullppJet.cxx:1273
 AliAnalysisTaskFullppJet.cxx:1274
 AliAnalysisTaskFullppJet.cxx:1275
 AliAnalysisTaskFullppJet.cxx:1276
 AliAnalysisTaskFullppJet.cxx:1277
 AliAnalysisTaskFullppJet.cxx:1278
 AliAnalysisTaskFullppJet.cxx:1279
 AliAnalysisTaskFullppJet.cxx:1280
 AliAnalysisTaskFullppJet.cxx:1281
 AliAnalysisTaskFullppJet.cxx:1282
 AliAnalysisTaskFullppJet.cxx:1283
 AliAnalysisTaskFullppJet.cxx:1284
 AliAnalysisTaskFullppJet.cxx:1285
 AliAnalysisTaskFullppJet.cxx:1286
 AliAnalysisTaskFullppJet.cxx:1287
 AliAnalysisTaskFullppJet.cxx:1288
 AliAnalysisTaskFullppJet.cxx:1289
 AliAnalysisTaskFullppJet.cxx:1290
 AliAnalysisTaskFullppJet.cxx:1291
 AliAnalysisTaskFullppJet.cxx:1292
 AliAnalysisTaskFullppJet.cxx:1293
 AliAnalysisTaskFullppJet.cxx:1294
 AliAnalysisTaskFullppJet.cxx:1295
 AliAnalysisTaskFullppJet.cxx:1296
 AliAnalysisTaskFullppJet.cxx:1297
 AliAnalysisTaskFullppJet.cxx:1298
 AliAnalysisTaskFullppJet.cxx:1299
 AliAnalysisTaskFullppJet.cxx:1300
 AliAnalysisTaskFullppJet.cxx:1301
 AliAnalysisTaskFullppJet.cxx:1302
 AliAnalysisTaskFullppJet.cxx:1303
 AliAnalysisTaskFullppJet.cxx:1304
 AliAnalysisTaskFullppJet.cxx:1305
 AliAnalysisTaskFullppJet.cxx:1306
 AliAnalysisTaskFullppJet.cxx:1307
 AliAnalysisTaskFullppJet.cxx:1308
 AliAnalysisTaskFullppJet.cxx:1309
 AliAnalysisTaskFullppJet.cxx:1310
 AliAnalysisTaskFullppJet.cxx:1311
 AliAnalysisTaskFullppJet.cxx:1312
 AliAnalysisTaskFullppJet.cxx:1313
 AliAnalysisTaskFullppJet.cxx:1314
 AliAnalysisTaskFullppJet.cxx:1315
 AliAnalysisTaskFullppJet.cxx:1316
 AliAnalysisTaskFullppJet.cxx:1317
 AliAnalysisTaskFullppJet.cxx:1318
 AliAnalysisTaskFullppJet.cxx:1319
 AliAnalysisTaskFullppJet.cxx:1320
 AliAnalysisTaskFullppJet.cxx:1321
 AliAnalysisTaskFullppJet.cxx:1322
 AliAnalysisTaskFullppJet.cxx:1323
 AliAnalysisTaskFullppJet.cxx:1324
 AliAnalysisTaskFullppJet.cxx:1325
 AliAnalysisTaskFullppJet.cxx:1326
 AliAnalysisTaskFullppJet.cxx:1327
 AliAnalysisTaskFullppJet.cxx:1328
 AliAnalysisTaskFullppJet.cxx:1329
 AliAnalysisTaskFullppJet.cxx:1330
 AliAnalysisTaskFullppJet.cxx:1331
 AliAnalysisTaskFullppJet.cxx:1332
 AliAnalysisTaskFullppJet.cxx:1333
 AliAnalysisTaskFullppJet.cxx:1334
 AliAnalysisTaskFullppJet.cxx:1335
 AliAnalysisTaskFullppJet.cxx:1336
 AliAnalysisTaskFullppJet.cxx:1337
 AliAnalysisTaskFullppJet.cxx:1338
 AliAnalysisTaskFullppJet.cxx:1339
 AliAnalysisTaskFullppJet.cxx:1340
 AliAnalysisTaskFullppJet.cxx:1341
 AliAnalysisTaskFullppJet.cxx:1342
 AliAnalysisTaskFullppJet.cxx:1343
 AliAnalysisTaskFullppJet.cxx:1344
 AliAnalysisTaskFullppJet.cxx:1345
 AliAnalysisTaskFullppJet.cxx:1346
 AliAnalysisTaskFullppJet.cxx:1347
 AliAnalysisTaskFullppJet.cxx:1348
 AliAnalysisTaskFullppJet.cxx:1349
 AliAnalysisTaskFullppJet.cxx:1350
 AliAnalysisTaskFullppJet.cxx:1351
 AliAnalysisTaskFullppJet.cxx:1352
 AliAnalysisTaskFullppJet.cxx:1353
 AliAnalysisTaskFullppJet.cxx:1354
 AliAnalysisTaskFullppJet.cxx:1355
 AliAnalysisTaskFullppJet.cxx:1356
 AliAnalysisTaskFullppJet.cxx:1357
 AliAnalysisTaskFullppJet.cxx:1358
 AliAnalysisTaskFullppJet.cxx:1359
 AliAnalysisTaskFullppJet.cxx:1360
 AliAnalysisTaskFullppJet.cxx:1361
 AliAnalysisTaskFullppJet.cxx:1362
 AliAnalysisTaskFullppJet.cxx:1363
 AliAnalysisTaskFullppJet.cxx:1364
 AliAnalysisTaskFullppJet.cxx:1365
 AliAnalysisTaskFullppJet.cxx:1366
 AliAnalysisTaskFullppJet.cxx:1367
 AliAnalysisTaskFullppJet.cxx:1368
 AliAnalysisTaskFullppJet.cxx:1369
 AliAnalysisTaskFullppJet.cxx:1370
 AliAnalysisTaskFullppJet.cxx:1371
 AliAnalysisTaskFullppJet.cxx:1372
 AliAnalysisTaskFullppJet.cxx:1373
 AliAnalysisTaskFullppJet.cxx:1374
 AliAnalysisTaskFullppJet.cxx:1375
 AliAnalysisTaskFullppJet.cxx:1376
 AliAnalysisTaskFullppJet.cxx:1377
 AliAnalysisTaskFullppJet.cxx:1378
 AliAnalysisTaskFullppJet.cxx:1379
 AliAnalysisTaskFullppJet.cxx:1380
 AliAnalysisTaskFullppJet.cxx:1381
 AliAnalysisTaskFullppJet.cxx:1382
 AliAnalysisTaskFullppJet.cxx:1383
 AliAnalysisTaskFullppJet.cxx:1384
 AliAnalysisTaskFullppJet.cxx:1385
 AliAnalysisTaskFullppJet.cxx:1386
 AliAnalysisTaskFullppJet.cxx:1387
 AliAnalysisTaskFullppJet.cxx:1388
 AliAnalysisTaskFullppJet.cxx:1389
 AliAnalysisTaskFullppJet.cxx:1390
 AliAnalysisTaskFullppJet.cxx:1391
 AliAnalysisTaskFullppJet.cxx:1392
 AliAnalysisTaskFullppJet.cxx:1393
 AliAnalysisTaskFullppJet.cxx:1394
 AliAnalysisTaskFullppJet.cxx:1395
 AliAnalysisTaskFullppJet.cxx:1396
 AliAnalysisTaskFullppJet.cxx:1397
 AliAnalysisTaskFullppJet.cxx:1398
 AliAnalysisTaskFullppJet.cxx:1399
 AliAnalysisTaskFullppJet.cxx:1400
 AliAnalysisTaskFullppJet.cxx:1401
 AliAnalysisTaskFullppJet.cxx:1402
 AliAnalysisTaskFullppJet.cxx:1403
 AliAnalysisTaskFullppJet.cxx:1404
 AliAnalysisTaskFullppJet.cxx:1405
 AliAnalysisTaskFullppJet.cxx:1406
 AliAnalysisTaskFullppJet.cxx:1407
 AliAnalysisTaskFullppJet.cxx:1408
 AliAnalysisTaskFullppJet.cxx:1409
 AliAnalysisTaskFullppJet.cxx:1410
 AliAnalysisTaskFullppJet.cxx:1411
 AliAnalysisTaskFullppJet.cxx:1412
 AliAnalysisTaskFullppJet.cxx:1413
 AliAnalysisTaskFullppJet.cxx:1414
 AliAnalysisTaskFullppJet.cxx:1415
 AliAnalysisTaskFullppJet.cxx:1416
 AliAnalysisTaskFullppJet.cxx:1417
 AliAnalysisTaskFullppJet.cxx:1418
 AliAnalysisTaskFullppJet.cxx:1419
 AliAnalysisTaskFullppJet.cxx:1420
 AliAnalysisTaskFullppJet.cxx:1421
 AliAnalysisTaskFullppJet.cxx:1422
 AliAnalysisTaskFullppJet.cxx:1423
 AliAnalysisTaskFullppJet.cxx:1424
 AliAnalysisTaskFullppJet.cxx:1425
 AliAnalysisTaskFullppJet.cxx:1426
 AliAnalysisTaskFullppJet.cxx:1427
 AliAnalysisTaskFullppJet.cxx:1428
 AliAnalysisTaskFullppJet.cxx:1429
 AliAnalysisTaskFullppJet.cxx:1430
 AliAnalysisTaskFullppJet.cxx:1431
 AliAnalysisTaskFullppJet.cxx:1432
 AliAnalysisTaskFullppJet.cxx:1433
 AliAnalysisTaskFullppJet.cxx:1434
 AliAnalysisTaskFullppJet.cxx:1435
 AliAnalysisTaskFullppJet.cxx:1436
 AliAnalysisTaskFullppJet.cxx:1437
 AliAnalysisTaskFullppJet.cxx:1438
 AliAnalysisTaskFullppJet.cxx:1439
 AliAnalysisTaskFullppJet.cxx:1440
 AliAnalysisTaskFullppJet.cxx:1441
 AliAnalysisTaskFullppJet.cxx:1442
 AliAnalysisTaskFullppJet.cxx:1443
 AliAnalysisTaskFullppJet.cxx:1444
 AliAnalysisTaskFullppJet.cxx:1445
 AliAnalysisTaskFullppJet.cxx:1446
 AliAnalysisTaskFullppJet.cxx:1447
 AliAnalysisTaskFullppJet.cxx:1448
 AliAnalysisTaskFullppJet.cxx:1449
 AliAnalysisTaskFullppJet.cxx:1450
 AliAnalysisTaskFullppJet.cxx:1451
 AliAnalysisTaskFullppJet.cxx:1452
 AliAnalysisTaskFullppJet.cxx:1453
 AliAnalysisTaskFullppJet.cxx:1454
 AliAnalysisTaskFullppJet.cxx:1455
 AliAnalysisTaskFullppJet.cxx:1456
 AliAnalysisTaskFullppJet.cxx:1457
 AliAnalysisTaskFullppJet.cxx:1458
 AliAnalysisTaskFullppJet.cxx:1459
 AliAnalysisTaskFullppJet.cxx:1460
 AliAnalysisTaskFullppJet.cxx:1461
 AliAnalysisTaskFullppJet.cxx:1462
 AliAnalysisTaskFullppJet.cxx:1463
 AliAnalysisTaskFullppJet.cxx:1464
 AliAnalysisTaskFullppJet.cxx:1465
 AliAnalysisTaskFullppJet.cxx:1466
 AliAnalysisTaskFullppJet.cxx:1467
 AliAnalysisTaskFullppJet.cxx:1468
 AliAnalysisTaskFullppJet.cxx:1469
 AliAnalysisTaskFullppJet.cxx:1470
 AliAnalysisTaskFullppJet.cxx:1471
 AliAnalysisTaskFullppJet.cxx:1472
 AliAnalysisTaskFullppJet.cxx:1473
 AliAnalysisTaskFullppJet.cxx:1474
 AliAnalysisTaskFullppJet.cxx:1475
 AliAnalysisTaskFullppJet.cxx:1476
 AliAnalysisTaskFullppJet.cxx:1477
 AliAnalysisTaskFullppJet.cxx:1478
 AliAnalysisTaskFullppJet.cxx:1479
 AliAnalysisTaskFullppJet.cxx:1480
 AliAnalysisTaskFullppJet.cxx:1481
 AliAnalysisTaskFullppJet.cxx:1482
 AliAnalysisTaskFullppJet.cxx:1483
 AliAnalysisTaskFullppJet.cxx:1484
 AliAnalysisTaskFullppJet.cxx:1485
 AliAnalysisTaskFullppJet.cxx:1486
 AliAnalysisTaskFullppJet.cxx:1487
 AliAnalysisTaskFullppJet.cxx:1488
 AliAnalysisTaskFullppJet.cxx:1489
 AliAnalysisTaskFullppJet.cxx:1490
 AliAnalysisTaskFullppJet.cxx:1491
 AliAnalysisTaskFullppJet.cxx:1492
 AliAnalysisTaskFullppJet.cxx:1493
 AliAnalysisTaskFullppJet.cxx:1494
 AliAnalysisTaskFullppJet.cxx:1495
 AliAnalysisTaskFullppJet.cxx:1496
 AliAnalysisTaskFullppJet.cxx:1497
 AliAnalysisTaskFullppJet.cxx:1498
 AliAnalysisTaskFullppJet.cxx:1499
 AliAnalysisTaskFullppJet.cxx:1500
 AliAnalysisTaskFullppJet.cxx:1501
 AliAnalysisTaskFullppJet.cxx:1502
 AliAnalysisTaskFullppJet.cxx:1503
 AliAnalysisTaskFullppJet.cxx:1504
 AliAnalysisTaskFullppJet.cxx:1505
 AliAnalysisTaskFullppJet.cxx:1506
 AliAnalysisTaskFullppJet.cxx:1507
 AliAnalysisTaskFullppJet.cxx:1508
 AliAnalysisTaskFullppJet.cxx:1509
 AliAnalysisTaskFullppJet.cxx:1510
 AliAnalysisTaskFullppJet.cxx:1511
 AliAnalysisTaskFullppJet.cxx:1512
 AliAnalysisTaskFullppJet.cxx:1513
 AliAnalysisTaskFullppJet.cxx:1514
 AliAnalysisTaskFullppJet.cxx:1515
 AliAnalysisTaskFullppJet.cxx:1516
 AliAnalysisTaskFullppJet.cxx:1517
 AliAnalysisTaskFullppJet.cxx:1518
 AliAnalysisTaskFullppJet.cxx:1519
 AliAnalysisTaskFullppJet.cxx:1520
 AliAnalysisTaskFullppJet.cxx:1521
 AliAnalysisTaskFullppJet.cxx:1522
 AliAnalysisTaskFullppJet.cxx:1523
 AliAnalysisTaskFullppJet.cxx:1524
 AliAnalysisTaskFullppJet.cxx:1525
 AliAnalysisTaskFullppJet.cxx:1526
 AliAnalysisTaskFullppJet.cxx:1527
 AliAnalysisTaskFullppJet.cxx:1528
 AliAnalysisTaskFullppJet.cxx:1529
 AliAnalysisTaskFullppJet.cxx:1530
 AliAnalysisTaskFullppJet.cxx:1531
 AliAnalysisTaskFullppJet.cxx:1532
 AliAnalysisTaskFullppJet.cxx:1533
 AliAnalysisTaskFullppJet.cxx:1534
 AliAnalysisTaskFullppJet.cxx:1535
 AliAnalysisTaskFullppJet.cxx:1536
 AliAnalysisTaskFullppJet.cxx:1537
 AliAnalysisTaskFullppJet.cxx:1538
 AliAnalysisTaskFullppJet.cxx:1539
 AliAnalysisTaskFullppJet.cxx:1540
 AliAnalysisTaskFullppJet.cxx:1541
 AliAnalysisTaskFullppJet.cxx:1542
 AliAnalysisTaskFullppJet.cxx:1543
 AliAnalysisTaskFullppJet.cxx:1544
 AliAnalysisTaskFullppJet.cxx:1545
 AliAnalysisTaskFullppJet.cxx:1546
 AliAnalysisTaskFullppJet.cxx:1547
 AliAnalysisTaskFullppJet.cxx:1548
 AliAnalysisTaskFullppJet.cxx:1549
 AliAnalysisTaskFullppJet.cxx:1550
 AliAnalysisTaskFullppJet.cxx:1551
 AliAnalysisTaskFullppJet.cxx:1552
 AliAnalysisTaskFullppJet.cxx:1553
 AliAnalysisTaskFullppJet.cxx:1554
 AliAnalysisTaskFullppJet.cxx:1555
 AliAnalysisTaskFullppJet.cxx:1556
 AliAnalysisTaskFullppJet.cxx:1557
 AliAnalysisTaskFullppJet.cxx:1558
 AliAnalysisTaskFullppJet.cxx:1559
 AliAnalysisTaskFullppJet.cxx:1560
 AliAnalysisTaskFullppJet.cxx:1561
 AliAnalysisTaskFullppJet.cxx:1562
 AliAnalysisTaskFullppJet.cxx:1563
 AliAnalysisTaskFullppJet.cxx:1564
 AliAnalysisTaskFullppJet.cxx:1565
 AliAnalysisTaskFullppJet.cxx:1566
 AliAnalysisTaskFullppJet.cxx:1567
 AliAnalysisTaskFullppJet.cxx:1568
 AliAnalysisTaskFullppJet.cxx:1569
 AliAnalysisTaskFullppJet.cxx:1570
 AliAnalysisTaskFullppJet.cxx:1571
 AliAnalysisTaskFullppJet.cxx:1572
 AliAnalysisTaskFullppJet.cxx:1573
 AliAnalysisTaskFullppJet.cxx:1574
 AliAnalysisTaskFullppJet.cxx:1575
 AliAnalysisTaskFullppJet.cxx:1576
 AliAnalysisTaskFullppJet.cxx:1577
 AliAnalysisTaskFullppJet.cxx:1578
 AliAnalysisTaskFullppJet.cxx:1579
 AliAnalysisTaskFullppJet.cxx:1580
 AliAnalysisTaskFullppJet.cxx:1581
 AliAnalysisTaskFullppJet.cxx:1582
 AliAnalysisTaskFullppJet.cxx:1583
 AliAnalysisTaskFullppJet.cxx:1584
 AliAnalysisTaskFullppJet.cxx:1585
 AliAnalysisTaskFullppJet.cxx:1586
 AliAnalysisTaskFullppJet.cxx:1587
 AliAnalysisTaskFullppJet.cxx:1588
 AliAnalysisTaskFullppJet.cxx:1589
 AliAnalysisTaskFullppJet.cxx:1590
 AliAnalysisTaskFullppJet.cxx:1591
 AliAnalysisTaskFullppJet.cxx:1592
 AliAnalysisTaskFullppJet.cxx:1593
 AliAnalysisTaskFullppJet.cxx:1594
 AliAnalysisTaskFullppJet.cxx:1595
 AliAnalysisTaskFullppJet.cxx:1596
 AliAnalysisTaskFullppJet.cxx:1597
 AliAnalysisTaskFullppJet.cxx:1598
 AliAnalysisTaskFullppJet.cxx:1599
 AliAnalysisTaskFullppJet.cxx:1600
 AliAnalysisTaskFullppJet.cxx:1601
 AliAnalysisTaskFullppJet.cxx:1602
 AliAnalysisTaskFullppJet.cxx:1603
 AliAnalysisTaskFullppJet.cxx:1604
 AliAnalysisTaskFullppJet.cxx:1605
 AliAnalysisTaskFullppJet.cxx:1606
 AliAnalysisTaskFullppJet.cxx:1607
 AliAnalysisTaskFullppJet.cxx:1608
 AliAnalysisTaskFullppJet.cxx:1609
 AliAnalysisTaskFullppJet.cxx:1610
 AliAnalysisTaskFullppJet.cxx:1611
 AliAnalysisTaskFullppJet.cxx:1612
 AliAnalysisTaskFullppJet.cxx:1613
 AliAnalysisTaskFullppJet.cxx:1614
 AliAnalysisTaskFullppJet.cxx:1615
 AliAnalysisTaskFullppJet.cxx:1616
 AliAnalysisTaskFullppJet.cxx:1617
 AliAnalysisTaskFullppJet.cxx:1618
 AliAnalysisTaskFullppJet.cxx:1619
 AliAnalysisTaskFullppJet.cxx:1620
 AliAnalysisTaskFullppJet.cxx:1621
 AliAnalysisTaskFullppJet.cxx:1622
 AliAnalysisTaskFullppJet.cxx:1623
 AliAnalysisTaskFullppJet.cxx:1624
 AliAnalysisTaskFullppJet.cxx:1625
 AliAnalysisTaskFullppJet.cxx:1626
 AliAnalysisTaskFullppJet.cxx:1627
 AliAnalysisTaskFullppJet.cxx:1628
 AliAnalysisTaskFullppJet.cxx:1629
 AliAnalysisTaskFullppJet.cxx:1630
 AliAnalysisTaskFullppJet.cxx:1631
 AliAnalysisTaskFullppJet.cxx:1632
 AliAnalysisTaskFullppJet.cxx:1633
 AliAnalysisTaskFullppJet.cxx:1634
 AliAnalysisTaskFullppJet.cxx:1635
 AliAnalysisTaskFullppJet.cxx:1636
 AliAnalysisTaskFullppJet.cxx:1637
 AliAnalysisTaskFullppJet.cxx:1638
 AliAnalysisTaskFullppJet.cxx:1639
 AliAnalysisTaskFullppJet.cxx:1640
 AliAnalysisTaskFullppJet.cxx:1641
 AliAnalysisTaskFullppJet.cxx:1642
 AliAnalysisTaskFullppJet.cxx:1643
 AliAnalysisTaskFullppJet.cxx:1644
 AliAnalysisTaskFullppJet.cxx:1645
 AliAnalysisTaskFullppJet.cxx:1646
 AliAnalysisTaskFullppJet.cxx:1647
 AliAnalysisTaskFullppJet.cxx:1648
 AliAnalysisTaskFullppJet.cxx:1649
 AliAnalysisTaskFullppJet.cxx:1650
 AliAnalysisTaskFullppJet.cxx:1651
 AliAnalysisTaskFullppJet.cxx:1652
 AliAnalysisTaskFullppJet.cxx:1653
 AliAnalysisTaskFullppJet.cxx:1654
 AliAnalysisTaskFullppJet.cxx:1655
 AliAnalysisTaskFullppJet.cxx:1656
 AliAnalysisTaskFullppJet.cxx:1657
 AliAnalysisTaskFullppJet.cxx:1658
 AliAnalysisTaskFullppJet.cxx:1659
 AliAnalysisTaskFullppJet.cxx:1660
 AliAnalysisTaskFullppJet.cxx:1661
 AliAnalysisTaskFullppJet.cxx:1662
 AliAnalysisTaskFullppJet.cxx:1663
 AliAnalysisTaskFullppJet.cxx:1664
 AliAnalysisTaskFullppJet.cxx:1665
 AliAnalysisTaskFullppJet.cxx:1666
 AliAnalysisTaskFullppJet.cxx:1667
 AliAnalysisTaskFullppJet.cxx:1668
 AliAnalysisTaskFullppJet.cxx:1669
 AliAnalysisTaskFullppJet.cxx:1670
 AliAnalysisTaskFullppJet.cxx:1671
 AliAnalysisTaskFullppJet.cxx:1672
 AliAnalysisTaskFullppJet.cxx:1673
 AliAnalysisTaskFullppJet.cxx:1674
 AliAnalysisTaskFullppJet.cxx:1675
 AliAnalysisTaskFullppJet.cxx:1676
 AliAnalysisTaskFullppJet.cxx:1677
 AliAnalysisTaskFullppJet.cxx:1678
 AliAnalysisTaskFullppJet.cxx:1679
 AliAnalysisTaskFullppJet.cxx:1680
 AliAnalysisTaskFullppJet.cxx:1681
 AliAnalysisTaskFullppJet.cxx:1682
 AliAnalysisTaskFullppJet.cxx:1683
 AliAnalysisTaskFullppJet.cxx:1684
 AliAnalysisTaskFullppJet.cxx:1685
 AliAnalysisTaskFullppJet.cxx:1686
 AliAnalysisTaskFullppJet.cxx:1687
 AliAnalysisTaskFullppJet.cxx:1688
 AliAnalysisTaskFullppJet.cxx:1689
 AliAnalysisTaskFullppJet.cxx:1690
 AliAnalysisTaskFullppJet.cxx:1691
 AliAnalysisTaskFullppJet.cxx:1692
 AliAnalysisTaskFullppJet.cxx:1693
 AliAnalysisTaskFullppJet.cxx:1694
 AliAnalysisTaskFullppJet.cxx:1695
 AliAnalysisTaskFullppJet.cxx:1696
 AliAnalysisTaskFullppJet.cxx:1697
 AliAnalysisTaskFullppJet.cxx:1698
 AliAnalysisTaskFullppJet.cxx:1699
 AliAnalysisTaskFullppJet.cxx:1700
 AliAnalysisTaskFullppJet.cxx:1701
 AliAnalysisTaskFullppJet.cxx:1702
 AliAnalysisTaskFullppJet.cxx:1703
 AliAnalysisTaskFullppJet.cxx:1704
 AliAnalysisTaskFullppJet.cxx:1705
 AliAnalysisTaskFullppJet.cxx:1706
 AliAnalysisTaskFullppJet.cxx:1707
 AliAnalysisTaskFullppJet.cxx:1708
 AliAnalysisTaskFullppJet.cxx:1709
 AliAnalysisTaskFullppJet.cxx:1710
 AliAnalysisTaskFullppJet.cxx:1711
 AliAnalysisTaskFullppJet.cxx:1712
 AliAnalysisTaskFullppJet.cxx:1713
 AliAnalysisTaskFullppJet.cxx:1714
 AliAnalysisTaskFullppJet.cxx:1715
 AliAnalysisTaskFullppJet.cxx:1716
 AliAnalysisTaskFullppJet.cxx:1717
 AliAnalysisTaskFullppJet.cxx:1718
 AliAnalysisTaskFullppJet.cxx:1719
 AliAnalysisTaskFullppJet.cxx:1720
 AliAnalysisTaskFullppJet.cxx:1721
 AliAnalysisTaskFullppJet.cxx:1722
 AliAnalysisTaskFullppJet.cxx:1723
 AliAnalysisTaskFullppJet.cxx:1724
 AliAnalysisTaskFullppJet.cxx:1725
 AliAnalysisTaskFullppJet.cxx:1726
 AliAnalysisTaskFullppJet.cxx:1727
 AliAnalysisTaskFullppJet.cxx:1728
 AliAnalysisTaskFullppJet.cxx:1729
 AliAnalysisTaskFullppJet.cxx:1730
 AliAnalysisTaskFullppJet.cxx:1731
 AliAnalysisTaskFullppJet.cxx:1732
 AliAnalysisTaskFullppJet.cxx:1733
 AliAnalysisTaskFullppJet.cxx:1734
 AliAnalysisTaskFullppJet.cxx:1735
 AliAnalysisTaskFullppJet.cxx:1736
 AliAnalysisTaskFullppJet.cxx:1737
 AliAnalysisTaskFullppJet.cxx:1738
 AliAnalysisTaskFullppJet.cxx:1739
 AliAnalysisTaskFullppJet.cxx:1740
 AliAnalysisTaskFullppJet.cxx:1741
 AliAnalysisTaskFullppJet.cxx:1742
 AliAnalysisTaskFullppJet.cxx:1743
 AliAnalysisTaskFullppJet.cxx:1744
 AliAnalysisTaskFullppJet.cxx:1745
 AliAnalysisTaskFullppJet.cxx:1746
 AliAnalysisTaskFullppJet.cxx:1747
 AliAnalysisTaskFullppJet.cxx:1748
 AliAnalysisTaskFullppJet.cxx:1749
 AliAnalysisTaskFullppJet.cxx:1750
 AliAnalysisTaskFullppJet.cxx:1751
 AliAnalysisTaskFullppJet.cxx:1752
 AliAnalysisTaskFullppJet.cxx:1753
 AliAnalysisTaskFullppJet.cxx:1754
 AliAnalysisTaskFullppJet.cxx:1755
 AliAnalysisTaskFullppJet.cxx:1756
 AliAnalysisTaskFullppJet.cxx:1757
 AliAnalysisTaskFullppJet.cxx:1758
 AliAnalysisTaskFullppJet.cxx:1759
 AliAnalysisTaskFullppJet.cxx:1760
 AliAnalysisTaskFullppJet.cxx:1761
 AliAnalysisTaskFullppJet.cxx:1762
 AliAnalysisTaskFullppJet.cxx:1763
 AliAnalysisTaskFullppJet.cxx:1764
 AliAnalysisTaskFullppJet.cxx:1765
 AliAnalysisTaskFullppJet.cxx:1766
 AliAnalysisTaskFullppJet.cxx:1767
 AliAnalysisTaskFullppJet.cxx:1768
 AliAnalysisTaskFullppJet.cxx:1769
 AliAnalysisTaskFullppJet.cxx:1770
 AliAnalysisTaskFullppJet.cxx:1771
 AliAnalysisTaskFullppJet.cxx:1772
 AliAnalysisTaskFullppJet.cxx:1773
 AliAnalysisTaskFullppJet.cxx:1774
 AliAnalysisTaskFullppJet.cxx:1775
 AliAnalysisTaskFullppJet.cxx:1776
 AliAnalysisTaskFullppJet.cxx:1777
 AliAnalysisTaskFullppJet.cxx:1778
 AliAnalysisTaskFullppJet.cxx:1779
 AliAnalysisTaskFullppJet.cxx:1780
 AliAnalysisTaskFullppJet.cxx:1781
 AliAnalysisTaskFullppJet.cxx:1782
 AliAnalysisTaskFullppJet.cxx:1783
 AliAnalysisTaskFullppJet.cxx:1784
 AliAnalysisTaskFullppJet.cxx:1785
 AliAnalysisTaskFullppJet.cxx:1786
 AliAnalysisTaskFullppJet.cxx:1787
 AliAnalysisTaskFullppJet.cxx:1788
 AliAnalysisTaskFullppJet.cxx:1789
 AliAnalysisTaskFullppJet.cxx:1790
 AliAnalysisTaskFullppJet.cxx:1791
 AliAnalysisTaskFullppJet.cxx:1792
 AliAnalysisTaskFullppJet.cxx:1793
 AliAnalysisTaskFullppJet.cxx:1794
 AliAnalysisTaskFullppJet.cxx:1795
 AliAnalysisTaskFullppJet.cxx:1796
 AliAnalysisTaskFullppJet.cxx:1797
 AliAnalysisTaskFullppJet.cxx:1798
 AliAnalysisTaskFullppJet.cxx:1799
 AliAnalysisTaskFullppJet.cxx:1800
 AliAnalysisTaskFullppJet.cxx:1801
 AliAnalysisTaskFullppJet.cxx:1802
 AliAnalysisTaskFullppJet.cxx:1803
 AliAnalysisTaskFullppJet.cxx:1804
 AliAnalysisTaskFullppJet.cxx:1805
 AliAnalysisTaskFullppJet.cxx:1806
 AliAnalysisTaskFullppJet.cxx:1807
 AliAnalysisTaskFullppJet.cxx:1808
 AliAnalysisTaskFullppJet.cxx:1809
 AliAnalysisTaskFullppJet.cxx:1810
 AliAnalysisTaskFullppJet.cxx:1811
 AliAnalysisTaskFullppJet.cxx:1812
 AliAnalysisTaskFullppJet.cxx:1813
 AliAnalysisTaskFullppJet.cxx:1814
 AliAnalysisTaskFullppJet.cxx:1815
 AliAnalysisTaskFullppJet.cxx:1816
 AliAnalysisTaskFullppJet.cxx:1817
 AliAnalysisTaskFullppJet.cxx:1818
 AliAnalysisTaskFullppJet.cxx:1819
 AliAnalysisTaskFullppJet.cxx:1820
 AliAnalysisTaskFullppJet.cxx:1821
 AliAnalysisTaskFullppJet.cxx:1822
 AliAnalysisTaskFullppJet.cxx:1823
 AliAnalysisTaskFullppJet.cxx:1824
 AliAnalysisTaskFullppJet.cxx:1825
 AliAnalysisTaskFullppJet.cxx:1826
 AliAnalysisTaskFullppJet.cxx:1827
 AliAnalysisTaskFullppJet.cxx:1828
 AliAnalysisTaskFullppJet.cxx:1829
 AliAnalysisTaskFullppJet.cxx:1830
 AliAnalysisTaskFullppJet.cxx:1831
 AliAnalysisTaskFullppJet.cxx:1832
 AliAnalysisTaskFullppJet.cxx:1833
 AliAnalysisTaskFullppJet.cxx:1834
 AliAnalysisTaskFullppJet.cxx:1835
 AliAnalysisTaskFullppJet.cxx:1836
 AliAnalysisTaskFullppJet.cxx:1837
 AliAnalysisTaskFullppJet.cxx:1838
 AliAnalysisTaskFullppJet.cxx:1839
 AliAnalysisTaskFullppJet.cxx:1840
 AliAnalysisTaskFullppJet.cxx:1841
 AliAnalysisTaskFullppJet.cxx:1842
 AliAnalysisTaskFullppJet.cxx:1843
 AliAnalysisTaskFullppJet.cxx:1844
 AliAnalysisTaskFullppJet.cxx:1845
 AliAnalysisTaskFullppJet.cxx:1846
 AliAnalysisTaskFullppJet.cxx:1847
 AliAnalysisTaskFullppJet.cxx:1848
 AliAnalysisTaskFullppJet.cxx:1849
 AliAnalysisTaskFullppJet.cxx:1850
 AliAnalysisTaskFullppJet.cxx:1851
 AliAnalysisTaskFullppJet.cxx:1852
 AliAnalysisTaskFullppJet.cxx:1853
 AliAnalysisTaskFullppJet.cxx:1854
 AliAnalysisTaskFullppJet.cxx:1855
 AliAnalysisTaskFullppJet.cxx:1856
 AliAnalysisTaskFullppJet.cxx:1857
 AliAnalysisTaskFullppJet.cxx:1858
 AliAnalysisTaskFullppJet.cxx:1859
 AliAnalysisTaskFullppJet.cxx:1860
 AliAnalysisTaskFullppJet.cxx:1861
 AliAnalysisTaskFullppJet.cxx:1862
 AliAnalysisTaskFullppJet.cxx:1863
 AliAnalysisTaskFullppJet.cxx:1864
 AliAnalysisTaskFullppJet.cxx:1865
 AliAnalysisTaskFullppJet.cxx:1866
 AliAnalysisTaskFullppJet.cxx:1867
 AliAnalysisTaskFullppJet.cxx:1868
 AliAnalysisTaskFullppJet.cxx:1869
 AliAnalysisTaskFullppJet.cxx:1870
 AliAnalysisTaskFullppJet.cxx:1871
 AliAnalysisTaskFullppJet.cxx:1872
 AliAnalysisTaskFullppJet.cxx:1873
 AliAnalysisTaskFullppJet.cxx:1874
 AliAnalysisTaskFullppJet.cxx:1875
 AliAnalysisTaskFullppJet.cxx:1876
 AliAnalysisTaskFullppJet.cxx:1877
 AliAnalysisTaskFullppJet.cxx:1878
 AliAnalysisTaskFullppJet.cxx:1879
 AliAnalysisTaskFullppJet.cxx:1880
 AliAnalysisTaskFullppJet.cxx:1881
 AliAnalysisTaskFullppJet.cxx:1882
 AliAnalysisTaskFullppJet.cxx:1883
 AliAnalysisTaskFullppJet.cxx:1884
 AliAnalysisTaskFullppJet.cxx:1885
 AliAnalysisTaskFullppJet.cxx:1886
 AliAnalysisTaskFullppJet.cxx:1887
 AliAnalysisTaskFullppJet.cxx:1888
 AliAnalysisTaskFullppJet.cxx:1889
 AliAnalysisTaskFullppJet.cxx:1890
 AliAnalysisTaskFullppJet.cxx:1891
 AliAnalysisTaskFullppJet.cxx:1892
 AliAnalysisTaskFullppJet.cxx:1893
 AliAnalysisTaskFullppJet.cxx:1894
 AliAnalysisTaskFullppJet.cxx:1895
 AliAnalysisTaskFullppJet.cxx:1896
 AliAnalysisTaskFullppJet.cxx:1897
 AliAnalysisTaskFullppJet.cxx:1898
 AliAnalysisTaskFullppJet.cxx:1899
 AliAnalysisTaskFullppJet.cxx:1900
 AliAnalysisTaskFullppJet.cxx:1901
 AliAnalysisTaskFullppJet.cxx:1902
 AliAnalysisTaskFullppJet.cxx:1903
 AliAnalysisTaskFullppJet.cxx:1904
 AliAnalysisTaskFullppJet.cxx:1905
 AliAnalysisTaskFullppJet.cxx:1906
 AliAnalysisTaskFullppJet.cxx:1907
 AliAnalysisTaskFullppJet.cxx:1908
 AliAnalysisTaskFullppJet.cxx:1909
 AliAnalysisTaskFullppJet.cxx:1910
 AliAnalysisTaskFullppJet.cxx:1911
 AliAnalysisTaskFullppJet.cxx:1912
 AliAnalysisTaskFullppJet.cxx:1913
 AliAnalysisTaskFullppJet.cxx:1914
 AliAnalysisTaskFullppJet.cxx:1915
 AliAnalysisTaskFullppJet.cxx:1916
 AliAnalysisTaskFullppJet.cxx:1917
 AliAnalysisTaskFullppJet.cxx:1918
 AliAnalysisTaskFullppJet.cxx:1919
 AliAnalysisTaskFullppJet.cxx:1920
 AliAnalysisTaskFullppJet.cxx:1921
 AliAnalysisTaskFullppJet.cxx:1922
 AliAnalysisTaskFullppJet.cxx:1923
 AliAnalysisTaskFullppJet.cxx:1924
 AliAnalysisTaskFullppJet.cxx:1925
 AliAnalysisTaskFullppJet.cxx:1926
 AliAnalysisTaskFullppJet.cxx:1927
 AliAnalysisTaskFullppJet.cxx:1928
 AliAnalysisTaskFullppJet.cxx:1929
 AliAnalysisTaskFullppJet.cxx:1930
 AliAnalysisTaskFullppJet.cxx:1931
 AliAnalysisTaskFullppJet.cxx:1932
 AliAnalysisTaskFullppJet.cxx:1933
 AliAnalysisTaskFullppJet.cxx:1934
 AliAnalysisTaskFullppJet.cxx:1935
 AliAnalysisTaskFullppJet.cxx:1936
 AliAnalysisTaskFullppJet.cxx:1937
 AliAnalysisTaskFullppJet.cxx:1938
 AliAnalysisTaskFullppJet.cxx:1939
 AliAnalysisTaskFullppJet.cxx:1940
 AliAnalysisTaskFullppJet.cxx:1941
 AliAnalysisTaskFullppJet.cxx:1942
 AliAnalysisTaskFullppJet.cxx:1943
 AliAnalysisTaskFullppJet.cxx:1944
 AliAnalysisTaskFullppJet.cxx:1945
 AliAnalysisTaskFullppJet.cxx:1946
 AliAnalysisTaskFullppJet.cxx:1947
 AliAnalysisTaskFullppJet.cxx:1948
 AliAnalysisTaskFullppJet.cxx:1949
 AliAnalysisTaskFullppJet.cxx:1950
 AliAnalysisTaskFullppJet.cxx:1951
 AliAnalysisTaskFullppJet.cxx:1952
 AliAnalysisTaskFullppJet.cxx:1953
 AliAnalysisTaskFullppJet.cxx:1954
 AliAnalysisTaskFullppJet.cxx:1955
 AliAnalysisTaskFullppJet.cxx:1956
 AliAnalysisTaskFullppJet.cxx:1957
 AliAnalysisTaskFullppJet.cxx:1958
 AliAnalysisTaskFullppJet.cxx:1959
 AliAnalysisTaskFullppJet.cxx:1960
 AliAnalysisTaskFullppJet.cxx:1961
 AliAnalysisTaskFullppJet.cxx:1962
 AliAnalysisTaskFullppJet.cxx:1963
 AliAnalysisTaskFullppJet.cxx:1964
 AliAnalysisTaskFullppJet.cxx:1965
 AliAnalysisTaskFullppJet.cxx:1966
 AliAnalysisTaskFullppJet.cxx:1967
 AliAnalysisTaskFullppJet.cxx:1968
 AliAnalysisTaskFullppJet.cxx:1969
 AliAnalysisTaskFullppJet.cxx:1970
 AliAnalysisTaskFullppJet.cxx:1971
 AliAnalysisTaskFullppJet.cxx:1972
 AliAnalysisTaskFullppJet.cxx:1973
 AliAnalysisTaskFullppJet.cxx:1974
 AliAnalysisTaskFullppJet.cxx:1975
 AliAnalysisTaskFullppJet.cxx:1976
 AliAnalysisTaskFullppJet.cxx:1977
 AliAnalysisTaskFullppJet.cxx:1978
 AliAnalysisTaskFullppJet.cxx:1979
 AliAnalysisTaskFullppJet.cxx:1980
 AliAnalysisTaskFullppJet.cxx:1981
 AliAnalysisTaskFullppJet.cxx:1982
 AliAnalysisTaskFullppJet.cxx:1983
 AliAnalysisTaskFullppJet.cxx:1984
 AliAnalysisTaskFullppJet.cxx:1985
 AliAnalysisTaskFullppJet.cxx:1986
 AliAnalysisTaskFullppJet.cxx:1987
 AliAnalysisTaskFullppJet.cxx:1988
 AliAnalysisTaskFullppJet.cxx:1989
 AliAnalysisTaskFullppJet.cxx:1990
 AliAnalysisTaskFullppJet.cxx:1991
 AliAnalysisTaskFullppJet.cxx:1992
 AliAnalysisTaskFullppJet.cxx:1993
 AliAnalysisTaskFullppJet.cxx:1994
 AliAnalysisTaskFullppJet.cxx:1995
 AliAnalysisTaskFullppJet.cxx:1996
 AliAnalysisTaskFullppJet.cxx:1997
 AliAnalysisTaskFullppJet.cxx:1998
 AliAnalysisTaskFullppJet.cxx:1999
 AliAnalysisTaskFullppJet.cxx:2000
 AliAnalysisTaskFullppJet.cxx:2001
 AliAnalysisTaskFullppJet.cxx:2002
 AliAnalysisTaskFullppJet.cxx:2003
 AliAnalysisTaskFullppJet.cxx:2004
 AliAnalysisTaskFullppJet.cxx:2005
 AliAnalysisTaskFullppJet.cxx:2006
 AliAnalysisTaskFullppJet.cxx:2007
 AliAnalysisTaskFullppJet.cxx:2008
 AliAnalysisTaskFullppJet.cxx:2009
 AliAnalysisTaskFullppJet.cxx:2010
 AliAnalysisTaskFullppJet.cxx:2011
 AliAnalysisTaskFullppJet.cxx:2012
 AliAnalysisTaskFullppJet.cxx:2013
 AliAnalysisTaskFullppJet.cxx:2014
 AliAnalysisTaskFullppJet.cxx:2015
 AliAnalysisTaskFullppJet.cxx:2016
 AliAnalysisTaskFullppJet.cxx:2017
 AliAnalysisTaskFullppJet.cxx:2018
 AliAnalysisTaskFullppJet.cxx:2019
 AliAnalysisTaskFullppJet.cxx:2020
 AliAnalysisTaskFullppJet.cxx:2021
 AliAnalysisTaskFullppJet.cxx:2022
 AliAnalysisTaskFullppJet.cxx:2023
 AliAnalysisTaskFullppJet.cxx:2024
 AliAnalysisTaskFullppJet.cxx:2025
 AliAnalysisTaskFullppJet.cxx:2026
 AliAnalysisTaskFullppJet.cxx:2027
 AliAnalysisTaskFullppJet.cxx:2028
 AliAnalysisTaskFullppJet.cxx:2029
 AliAnalysisTaskFullppJet.cxx:2030
 AliAnalysisTaskFullppJet.cxx:2031
 AliAnalysisTaskFullppJet.cxx:2032
 AliAnalysisTaskFullppJet.cxx:2033
 AliAnalysisTaskFullppJet.cxx:2034
 AliAnalysisTaskFullppJet.cxx:2035
 AliAnalysisTaskFullppJet.cxx:2036
 AliAnalysisTaskFullppJet.cxx:2037
 AliAnalysisTaskFullppJet.cxx:2038
 AliAnalysisTaskFullppJet.cxx:2039
 AliAnalysisTaskFullppJet.cxx:2040
 AliAnalysisTaskFullppJet.cxx:2041
 AliAnalysisTaskFullppJet.cxx:2042
 AliAnalysisTaskFullppJet.cxx:2043
 AliAnalysisTaskFullppJet.cxx:2044
 AliAnalysisTaskFullppJet.cxx:2045
 AliAnalysisTaskFullppJet.cxx:2046
 AliAnalysisTaskFullppJet.cxx:2047
 AliAnalysisTaskFullppJet.cxx:2048
 AliAnalysisTaskFullppJet.cxx:2049
 AliAnalysisTaskFullppJet.cxx:2050
 AliAnalysisTaskFullppJet.cxx:2051
 AliAnalysisTaskFullppJet.cxx:2052
 AliAnalysisTaskFullppJet.cxx:2053
 AliAnalysisTaskFullppJet.cxx:2054
 AliAnalysisTaskFullppJet.cxx:2055
 AliAnalysisTaskFullppJet.cxx:2056
 AliAnalysisTaskFullppJet.cxx:2057
 AliAnalysisTaskFullppJet.cxx:2058
 AliAnalysisTaskFullppJet.cxx:2059
 AliAnalysisTaskFullppJet.cxx:2060
 AliAnalysisTaskFullppJet.cxx:2061
 AliAnalysisTaskFullppJet.cxx:2062
 AliAnalysisTaskFullppJet.cxx:2063
 AliAnalysisTaskFullppJet.cxx:2064
 AliAnalysisTaskFullppJet.cxx:2065
 AliAnalysisTaskFullppJet.cxx:2066
 AliAnalysisTaskFullppJet.cxx:2067
 AliAnalysisTaskFullppJet.cxx:2068
 AliAnalysisTaskFullppJet.cxx:2069
 AliAnalysisTaskFullppJet.cxx:2070
 AliAnalysisTaskFullppJet.cxx:2071
 AliAnalysisTaskFullppJet.cxx:2072
 AliAnalysisTaskFullppJet.cxx:2073
 AliAnalysisTaskFullppJet.cxx:2074
 AliAnalysisTaskFullppJet.cxx:2075
 AliAnalysisTaskFullppJet.cxx:2076
 AliAnalysisTaskFullppJet.cxx:2077
 AliAnalysisTaskFullppJet.cxx:2078
 AliAnalysisTaskFullppJet.cxx:2079
 AliAnalysisTaskFullppJet.cxx:2080
 AliAnalysisTaskFullppJet.cxx:2081
 AliAnalysisTaskFullppJet.cxx:2082
 AliAnalysisTaskFullppJet.cxx:2083
 AliAnalysisTaskFullppJet.cxx:2084
 AliAnalysisTaskFullppJet.cxx:2085
 AliAnalysisTaskFullppJet.cxx:2086
 AliAnalysisTaskFullppJet.cxx:2087
 AliAnalysisTaskFullppJet.cxx:2088
 AliAnalysisTaskFullppJet.cxx:2089
 AliAnalysisTaskFullppJet.cxx:2090
 AliAnalysisTaskFullppJet.cxx:2091
 AliAnalysisTaskFullppJet.cxx:2092
 AliAnalysisTaskFullppJet.cxx:2093
 AliAnalysisTaskFullppJet.cxx:2094
 AliAnalysisTaskFullppJet.cxx:2095
 AliAnalysisTaskFullppJet.cxx:2096
 AliAnalysisTaskFullppJet.cxx:2097
 AliAnalysisTaskFullppJet.cxx:2098
 AliAnalysisTaskFullppJet.cxx:2099
 AliAnalysisTaskFullppJet.cxx:2100
 AliAnalysisTaskFullppJet.cxx:2101
 AliAnalysisTaskFullppJet.cxx:2102
 AliAnalysisTaskFullppJet.cxx:2103
 AliAnalysisTaskFullppJet.cxx:2104
 AliAnalysisTaskFullppJet.cxx:2105
 AliAnalysisTaskFullppJet.cxx:2106
 AliAnalysisTaskFullppJet.cxx:2107
 AliAnalysisTaskFullppJet.cxx:2108
 AliAnalysisTaskFullppJet.cxx:2109
 AliAnalysisTaskFullppJet.cxx:2110
 AliAnalysisTaskFullppJet.cxx:2111
 AliAnalysisTaskFullppJet.cxx:2112
 AliAnalysisTaskFullppJet.cxx:2113
 AliAnalysisTaskFullppJet.cxx:2114
 AliAnalysisTaskFullppJet.cxx:2115
 AliAnalysisTaskFullppJet.cxx:2116
 AliAnalysisTaskFullppJet.cxx:2117
 AliAnalysisTaskFullppJet.cxx:2118
 AliAnalysisTaskFullppJet.cxx:2119
 AliAnalysisTaskFullppJet.cxx:2120
 AliAnalysisTaskFullppJet.cxx:2121
 AliAnalysisTaskFullppJet.cxx:2122
 AliAnalysisTaskFullppJet.cxx:2123
 AliAnalysisTaskFullppJet.cxx:2124
 AliAnalysisTaskFullppJet.cxx:2125
 AliAnalysisTaskFullppJet.cxx:2126
 AliAnalysisTaskFullppJet.cxx:2127
 AliAnalysisTaskFullppJet.cxx:2128
 AliAnalysisTaskFullppJet.cxx:2129
 AliAnalysisTaskFullppJet.cxx:2130
 AliAnalysisTaskFullppJet.cxx:2131
 AliAnalysisTaskFullppJet.cxx:2132
 AliAnalysisTaskFullppJet.cxx:2133
 AliAnalysisTaskFullppJet.cxx:2134
 AliAnalysisTaskFullppJet.cxx:2135
 AliAnalysisTaskFullppJet.cxx:2136
 AliAnalysisTaskFullppJet.cxx:2137
 AliAnalysisTaskFullppJet.cxx:2138
 AliAnalysisTaskFullppJet.cxx:2139
 AliAnalysisTaskFullppJet.cxx:2140
 AliAnalysisTaskFullppJet.cxx:2141
 AliAnalysisTaskFullppJet.cxx:2142
 AliAnalysisTaskFullppJet.cxx:2143
 AliAnalysisTaskFullppJet.cxx:2144
 AliAnalysisTaskFullppJet.cxx:2145
 AliAnalysisTaskFullppJet.cxx:2146
 AliAnalysisTaskFullppJet.cxx:2147
 AliAnalysisTaskFullppJet.cxx:2148
 AliAnalysisTaskFullppJet.cxx:2149
 AliAnalysisTaskFullppJet.cxx:2150
 AliAnalysisTaskFullppJet.cxx:2151
 AliAnalysisTaskFullppJet.cxx:2152
 AliAnalysisTaskFullppJet.cxx:2153
 AliAnalysisTaskFullppJet.cxx:2154
 AliAnalysisTaskFullppJet.cxx:2155
 AliAnalysisTaskFullppJet.cxx:2156
 AliAnalysisTaskFullppJet.cxx:2157
 AliAnalysisTaskFullppJet.cxx:2158
 AliAnalysisTaskFullppJet.cxx:2159
 AliAnalysisTaskFullppJet.cxx:2160
 AliAnalysisTaskFullppJet.cxx:2161
 AliAnalysisTaskFullppJet.cxx:2162
 AliAnalysisTaskFullppJet.cxx:2163
 AliAnalysisTaskFullppJet.cxx:2164
 AliAnalysisTaskFullppJet.cxx:2165
 AliAnalysisTaskFullppJet.cxx:2166
 AliAnalysisTaskFullppJet.cxx:2167
 AliAnalysisTaskFullppJet.cxx:2168
 AliAnalysisTaskFullppJet.cxx:2169
 AliAnalysisTaskFullppJet.cxx:2170
 AliAnalysisTaskFullppJet.cxx:2171
 AliAnalysisTaskFullppJet.cxx:2172
 AliAnalysisTaskFullppJet.cxx:2173
 AliAnalysisTaskFullppJet.cxx:2174
 AliAnalysisTaskFullppJet.cxx:2175
 AliAnalysisTaskFullppJet.cxx:2176
 AliAnalysisTaskFullppJet.cxx:2177
 AliAnalysisTaskFullppJet.cxx:2178
 AliAnalysisTaskFullppJet.cxx:2179
 AliAnalysisTaskFullppJet.cxx:2180
 AliAnalysisTaskFullppJet.cxx:2181
 AliAnalysisTaskFullppJet.cxx:2182
 AliAnalysisTaskFullppJet.cxx:2183
 AliAnalysisTaskFullppJet.cxx:2184
 AliAnalysisTaskFullppJet.cxx:2185
 AliAnalysisTaskFullppJet.cxx:2186
 AliAnalysisTaskFullppJet.cxx:2187
 AliAnalysisTaskFullppJet.cxx:2188
 AliAnalysisTaskFullppJet.cxx:2189
 AliAnalysisTaskFullppJet.cxx:2190
 AliAnalysisTaskFullppJet.cxx:2191
 AliAnalysisTaskFullppJet.cxx:2192
 AliAnalysisTaskFullppJet.cxx:2193
 AliAnalysisTaskFullppJet.cxx:2194
 AliAnalysisTaskFullppJet.cxx:2195
 AliAnalysisTaskFullppJet.cxx:2196
 AliAnalysisTaskFullppJet.cxx:2197
 AliAnalysisTaskFullppJet.cxx:2198
 AliAnalysisTaskFullppJet.cxx:2199
 AliAnalysisTaskFullppJet.cxx:2200
 AliAnalysisTaskFullppJet.cxx:2201
 AliAnalysisTaskFullppJet.cxx:2202
 AliAnalysisTaskFullppJet.cxx:2203
 AliAnalysisTaskFullppJet.cxx:2204
 AliAnalysisTaskFullppJet.cxx:2205
 AliAnalysisTaskFullppJet.cxx:2206
 AliAnalysisTaskFullppJet.cxx:2207
 AliAnalysisTaskFullppJet.cxx:2208
 AliAnalysisTaskFullppJet.cxx:2209
 AliAnalysisTaskFullppJet.cxx:2210
 AliAnalysisTaskFullppJet.cxx:2211
 AliAnalysisTaskFullppJet.cxx:2212
 AliAnalysisTaskFullppJet.cxx:2213
 AliAnalysisTaskFullppJet.cxx:2214
 AliAnalysisTaskFullppJet.cxx:2215
 AliAnalysisTaskFullppJet.cxx:2216
 AliAnalysisTaskFullppJet.cxx:2217
 AliAnalysisTaskFullppJet.cxx:2218
 AliAnalysisTaskFullppJet.cxx:2219
 AliAnalysisTaskFullppJet.cxx:2220
 AliAnalysisTaskFullppJet.cxx:2221
 AliAnalysisTaskFullppJet.cxx:2222
 AliAnalysisTaskFullppJet.cxx:2223
 AliAnalysisTaskFullppJet.cxx:2224
 AliAnalysisTaskFullppJet.cxx:2225
 AliAnalysisTaskFullppJet.cxx:2226
 AliAnalysisTaskFullppJet.cxx:2227
 AliAnalysisTaskFullppJet.cxx:2228
 AliAnalysisTaskFullppJet.cxx:2229
 AliAnalysisTaskFullppJet.cxx:2230
 AliAnalysisTaskFullppJet.cxx:2231
 AliAnalysisTaskFullppJet.cxx:2232
 AliAnalysisTaskFullppJet.cxx:2233
 AliAnalysisTaskFullppJet.cxx:2234
 AliAnalysisTaskFullppJet.cxx:2235
 AliAnalysisTaskFullppJet.cxx:2236
 AliAnalysisTaskFullppJet.cxx:2237
 AliAnalysisTaskFullppJet.cxx:2238
 AliAnalysisTaskFullppJet.cxx:2239
 AliAnalysisTaskFullppJet.cxx:2240
 AliAnalysisTaskFullppJet.cxx:2241
 AliAnalysisTaskFullppJet.cxx:2242
 AliAnalysisTaskFullppJet.cxx:2243
 AliAnalysisTaskFullppJet.cxx:2244
 AliAnalysisTaskFullppJet.cxx:2245
 AliAnalysisTaskFullppJet.cxx:2246
 AliAnalysisTaskFullppJet.cxx:2247
 AliAnalysisTaskFullppJet.cxx:2248
 AliAnalysisTaskFullppJet.cxx:2249
 AliAnalysisTaskFullppJet.cxx:2250
 AliAnalysisTaskFullppJet.cxx:2251
 AliAnalysisTaskFullppJet.cxx:2252
 AliAnalysisTaskFullppJet.cxx:2253
 AliAnalysisTaskFullppJet.cxx:2254
 AliAnalysisTaskFullppJet.cxx:2255
 AliAnalysisTaskFullppJet.cxx:2256
 AliAnalysisTaskFullppJet.cxx:2257
 AliAnalysisTaskFullppJet.cxx:2258
 AliAnalysisTaskFullppJet.cxx:2259
 AliAnalysisTaskFullppJet.cxx:2260
 AliAnalysisTaskFullppJet.cxx:2261
 AliAnalysisTaskFullppJet.cxx:2262
 AliAnalysisTaskFullppJet.cxx:2263
 AliAnalysisTaskFullppJet.cxx:2264
 AliAnalysisTaskFullppJet.cxx:2265
 AliAnalysisTaskFullppJet.cxx:2266
 AliAnalysisTaskFullppJet.cxx:2267
 AliAnalysisTaskFullppJet.cxx:2268
 AliAnalysisTaskFullppJet.cxx:2269
 AliAnalysisTaskFullppJet.cxx:2270
 AliAnalysisTaskFullppJet.cxx:2271
 AliAnalysisTaskFullppJet.cxx:2272
 AliAnalysisTaskFullppJet.cxx:2273
 AliAnalysisTaskFullppJet.cxx:2274
 AliAnalysisTaskFullppJet.cxx:2275
 AliAnalysisTaskFullppJet.cxx:2276
 AliAnalysisTaskFullppJet.cxx:2277
 AliAnalysisTaskFullppJet.cxx:2278
 AliAnalysisTaskFullppJet.cxx:2279
 AliAnalysisTaskFullppJet.cxx:2280
 AliAnalysisTaskFullppJet.cxx:2281
 AliAnalysisTaskFullppJet.cxx:2282
 AliAnalysisTaskFullppJet.cxx:2283
 AliAnalysisTaskFullppJet.cxx:2284
 AliAnalysisTaskFullppJet.cxx:2285
 AliAnalysisTaskFullppJet.cxx:2286
 AliAnalysisTaskFullppJet.cxx:2287
 AliAnalysisTaskFullppJet.cxx:2288
 AliAnalysisTaskFullppJet.cxx:2289
 AliAnalysisTaskFullppJet.cxx:2290
 AliAnalysisTaskFullppJet.cxx:2291
 AliAnalysisTaskFullppJet.cxx:2292
 AliAnalysisTaskFullppJet.cxx:2293
 AliAnalysisTaskFullppJet.cxx:2294
 AliAnalysisTaskFullppJet.cxx:2295
 AliAnalysisTaskFullppJet.cxx:2296
 AliAnalysisTaskFullppJet.cxx:2297
 AliAnalysisTaskFullppJet.cxx:2298
 AliAnalysisTaskFullppJet.cxx:2299
 AliAnalysisTaskFullppJet.cxx:2300
 AliAnalysisTaskFullppJet.cxx:2301
 AliAnalysisTaskFullppJet.cxx:2302
 AliAnalysisTaskFullppJet.cxx:2303
 AliAnalysisTaskFullppJet.cxx:2304
 AliAnalysisTaskFullppJet.cxx:2305
 AliAnalysisTaskFullppJet.cxx:2306
 AliAnalysisTaskFullppJet.cxx:2307
 AliAnalysisTaskFullppJet.cxx:2308
 AliAnalysisTaskFullppJet.cxx:2309
 AliAnalysisTaskFullppJet.cxx:2310
 AliAnalysisTaskFullppJet.cxx:2311
 AliAnalysisTaskFullppJet.cxx:2312
 AliAnalysisTaskFullppJet.cxx:2313
 AliAnalysisTaskFullppJet.cxx:2314
 AliAnalysisTaskFullppJet.cxx:2315
 AliAnalysisTaskFullppJet.cxx:2316
 AliAnalysisTaskFullppJet.cxx:2317
 AliAnalysisTaskFullppJet.cxx:2318
 AliAnalysisTaskFullppJet.cxx:2319
 AliAnalysisTaskFullppJet.cxx:2320
 AliAnalysisTaskFullppJet.cxx:2321
 AliAnalysisTaskFullppJet.cxx:2322
 AliAnalysisTaskFullppJet.cxx:2323
 AliAnalysisTaskFullppJet.cxx:2324
 AliAnalysisTaskFullppJet.cxx:2325
 AliAnalysisTaskFullppJet.cxx:2326
 AliAnalysisTaskFullppJet.cxx:2327
 AliAnalysisTaskFullppJet.cxx:2328
 AliAnalysisTaskFullppJet.cxx:2329
 AliAnalysisTaskFullppJet.cxx:2330
 AliAnalysisTaskFullppJet.cxx:2331
 AliAnalysisTaskFullppJet.cxx:2332
 AliAnalysisTaskFullppJet.cxx:2333
 AliAnalysisTaskFullppJet.cxx:2334
 AliAnalysisTaskFullppJet.cxx:2335
 AliAnalysisTaskFullppJet.cxx:2336
 AliAnalysisTaskFullppJet.cxx:2337
 AliAnalysisTaskFullppJet.cxx:2338
 AliAnalysisTaskFullppJet.cxx:2339
 AliAnalysisTaskFullppJet.cxx:2340
 AliAnalysisTaskFullppJet.cxx:2341
 AliAnalysisTaskFullppJet.cxx:2342
 AliAnalysisTaskFullppJet.cxx:2343
 AliAnalysisTaskFullppJet.cxx:2344
 AliAnalysisTaskFullppJet.cxx:2345
 AliAnalysisTaskFullppJet.cxx:2346
 AliAnalysisTaskFullppJet.cxx:2347
 AliAnalysisTaskFullppJet.cxx:2348
 AliAnalysisTaskFullppJet.cxx:2349
 AliAnalysisTaskFullppJet.cxx:2350
 AliAnalysisTaskFullppJet.cxx:2351
 AliAnalysisTaskFullppJet.cxx:2352
 AliAnalysisTaskFullppJet.cxx:2353
 AliAnalysisTaskFullppJet.cxx:2354
 AliAnalysisTaskFullppJet.cxx:2355
 AliAnalysisTaskFullppJet.cxx:2356
 AliAnalysisTaskFullppJet.cxx:2357
 AliAnalysisTaskFullppJet.cxx:2358
 AliAnalysisTaskFullppJet.cxx:2359
 AliAnalysisTaskFullppJet.cxx:2360
 AliAnalysisTaskFullppJet.cxx:2361
 AliAnalysisTaskFullppJet.cxx:2362
 AliAnalysisTaskFullppJet.cxx:2363
 AliAnalysisTaskFullppJet.cxx:2364
 AliAnalysisTaskFullppJet.cxx:2365
 AliAnalysisTaskFullppJet.cxx:2366
 AliAnalysisTaskFullppJet.cxx:2367
 AliAnalysisTaskFullppJet.cxx:2368
 AliAnalysisTaskFullppJet.cxx:2369
 AliAnalysisTaskFullppJet.cxx:2370
 AliAnalysisTaskFullppJet.cxx:2371
 AliAnalysisTaskFullppJet.cxx:2372
 AliAnalysisTaskFullppJet.cxx:2373
 AliAnalysisTaskFullppJet.cxx:2374
 AliAnalysisTaskFullppJet.cxx:2375
 AliAnalysisTaskFullppJet.cxx:2376
 AliAnalysisTaskFullppJet.cxx:2377
 AliAnalysisTaskFullppJet.cxx:2378
 AliAnalysisTaskFullppJet.cxx:2379
 AliAnalysisTaskFullppJet.cxx:2380
 AliAnalysisTaskFullppJet.cxx:2381
 AliAnalysisTaskFullppJet.cxx:2382
 AliAnalysisTaskFullppJet.cxx:2383
 AliAnalysisTaskFullppJet.cxx:2384
 AliAnalysisTaskFullppJet.cxx:2385
 AliAnalysisTaskFullppJet.cxx:2386
 AliAnalysisTaskFullppJet.cxx:2387
 AliAnalysisTaskFullppJet.cxx:2388
 AliAnalysisTaskFullppJet.cxx:2389
 AliAnalysisTaskFullppJet.cxx:2390
 AliAnalysisTaskFullppJet.cxx:2391
 AliAnalysisTaskFullppJet.cxx:2392
 AliAnalysisTaskFullppJet.cxx:2393
 AliAnalysisTaskFullppJet.cxx:2394
 AliAnalysisTaskFullppJet.cxx:2395
 AliAnalysisTaskFullppJet.cxx:2396
 AliAnalysisTaskFullppJet.cxx:2397
 AliAnalysisTaskFullppJet.cxx:2398
 AliAnalysisTaskFullppJet.cxx:2399
 AliAnalysisTaskFullppJet.cxx:2400
 AliAnalysisTaskFullppJet.cxx:2401
 AliAnalysisTaskFullppJet.cxx:2402
 AliAnalysisTaskFullppJet.cxx:2403
 AliAnalysisTaskFullppJet.cxx:2404
 AliAnalysisTaskFullppJet.cxx:2405
 AliAnalysisTaskFullppJet.cxx:2406
 AliAnalysisTaskFullppJet.cxx:2407
 AliAnalysisTaskFullppJet.cxx:2408
 AliAnalysisTaskFullppJet.cxx:2409
 AliAnalysisTaskFullppJet.cxx:2410
 AliAnalysisTaskFullppJet.cxx:2411
 AliAnalysisTaskFullppJet.cxx:2412
 AliAnalysisTaskFullppJet.cxx:2413
 AliAnalysisTaskFullppJet.cxx:2414
 AliAnalysisTaskFullppJet.cxx:2415
 AliAnalysisTaskFullppJet.cxx:2416
 AliAnalysisTaskFullppJet.cxx:2417
 AliAnalysisTaskFullppJet.cxx:2418
 AliAnalysisTaskFullppJet.cxx:2419
 AliAnalysisTaskFullppJet.cxx:2420
 AliAnalysisTaskFullppJet.cxx:2421
 AliAnalysisTaskFullppJet.cxx:2422
 AliAnalysisTaskFullppJet.cxx:2423
 AliAnalysisTaskFullppJet.cxx:2424
 AliAnalysisTaskFullppJet.cxx:2425
 AliAnalysisTaskFullppJet.cxx:2426
 AliAnalysisTaskFullppJet.cxx:2427
 AliAnalysisTaskFullppJet.cxx:2428
 AliAnalysisTaskFullppJet.cxx:2429
 AliAnalysisTaskFullppJet.cxx:2430
 AliAnalysisTaskFullppJet.cxx:2431
 AliAnalysisTaskFullppJet.cxx:2432
 AliAnalysisTaskFullppJet.cxx:2433
 AliAnalysisTaskFullppJet.cxx:2434
 AliAnalysisTaskFullppJet.cxx:2435
 AliAnalysisTaskFullppJet.cxx:2436
 AliAnalysisTaskFullppJet.cxx:2437
 AliAnalysisTaskFullppJet.cxx:2438
 AliAnalysisTaskFullppJet.cxx:2439
 AliAnalysisTaskFullppJet.cxx:2440
 AliAnalysisTaskFullppJet.cxx:2441
 AliAnalysisTaskFullppJet.cxx:2442
 AliAnalysisTaskFullppJet.cxx:2443
 AliAnalysisTaskFullppJet.cxx:2444
 AliAnalysisTaskFullppJet.cxx:2445
 AliAnalysisTaskFullppJet.cxx:2446
 AliAnalysisTaskFullppJet.cxx:2447
 AliAnalysisTaskFullppJet.cxx:2448
 AliAnalysisTaskFullppJet.cxx:2449
 AliAnalysisTaskFullppJet.cxx:2450
 AliAnalysisTaskFullppJet.cxx:2451
 AliAnalysisTaskFullppJet.cxx:2452
 AliAnalysisTaskFullppJet.cxx:2453
 AliAnalysisTaskFullppJet.cxx:2454
 AliAnalysisTaskFullppJet.cxx:2455
 AliAnalysisTaskFullppJet.cxx:2456
 AliAnalysisTaskFullppJet.cxx:2457
 AliAnalysisTaskFullppJet.cxx:2458
 AliAnalysisTaskFullppJet.cxx:2459
 AliAnalysisTaskFullppJet.cxx:2460
 AliAnalysisTaskFullppJet.cxx:2461
 AliAnalysisTaskFullppJet.cxx:2462
 AliAnalysisTaskFullppJet.cxx:2463
 AliAnalysisTaskFullppJet.cxx:2464
 AliAnalysisTaskFullppJet.cxx:2465
 AliAnalysisTaskFullppJet.cxx:2466
 AliAnalysisTaskFullppJet.cxx:2467
 AliAnalysisTaskFullppJet.cxx:2468
 AliAnalysisTaskFullppJet.cxx:2469
 AliAnalysisTaskFullppJet.cxx:2470
 AliAnalysisTaskFullppJet.cxx:2471
 AliAnalysisTaskFullppJet.cxx:2472
 AliAnalysisTaskFullppJet.cxx:2473
 AliAnalysisTaskFullppJet.cxx:2474
 AliAnalysisTaskFullppJet.cxx:2475
 AliAnalysisTaskFullppJet.cxx:2476
 AliAnalysisTaskFullppJet.cxx:2477
 AliAnalysisTaskFullppJet.cxx:2478
 AliAnalysisTaskFullppJet.cxx:2479
 AliAnalysisTaskFullppJet.cxx:2480
 AliAnalysisTaskFullppJet.cxx:2481
 AliAnalysisTaskFullppJet.cxx:2482
 AliAnalysisTaskFullppJet.cxx:2483
 AliAnalysisTaskFullppJet.cxx:2484
 AliAnalysisTaskFullppJet.cxx:2485
 AliAnalysisTaskFullppJet.cxx:2486
 AliAnalysisTaskFullppJet.cxx:2487
 AliAnalysisTaskFullppJet.cxx:2488
 AliAnalysisTaskFullppJet.cxx:2489
 AliAnalysisTaskFullppJet.cxx:2490
 AliAnalysisTaskFullppJet.cxx:2491
 AliAnalysisTaskFullppJet.cxx:2492
 AliAnalysisTaskFullppJet.cxx:2493
 AliAnalysisTaskFullppJet.cxx:2494
 AliAnalysisTaskFullppJet.cxx:2495
 AliAnalysisTaskFullppJet.cxx:2496
 AliAnalysisTaskFullppJet.cxx:2497
 AliAnalysisTaskFullppJet.cxx:2498
 AliAnalysisTaskFullppJet.cxx:2499
 AliAnalysisTaskFullppJet.cxx:2500
 AliAnalysisTaskFullppJet.cxx:2501
 AliAnalysisTaskFullppJet.cxx:2502
 AliAnalysisTaskFullppJet.cxx:2503
 AliAnalysisTaskFullppJet.cxx:2504
 AliAnalysisTaskFullppJet.cxx:2505
 AliAnalysisTaskFullppJet.cxx:2506
 AliAnalysisTaskFullppJet.cxx:2507
 AliAnalysisTaskFullppJet.cxx:2508
 AliAnalysisTaskFullppJet.cxx:2509
 AliAnalysisTaskFullppJet.cxx:2510
 AliAnalysisTaskFullppJet.cxx:2511
 AliAnalysisTaskFullppJet.cxx:2512
 AliAnalysisTaskFullppJet.cxx:2513
 AliAnalysisTaskFullppJet.cxx:2514
 AliAnalysisTaskFullppJet.cxx:2515
 AliAnalysisTaskFullppJet.cxx:2516
 AliAnalysisTaskFullppJet.cxx:2517
 AliAnalysisTaskFullppJet.cxx:2518
 AliAnalysisTaskFullppJet.cxx:2519
 AliAnalysisTaskFullppJet.cxx:2520
 AliAnalysisTaskFullppJet.cxx:2521
 AliAnalysisTaskFullppJet.cxx:2522
 AliAnalysisTaskFullppJet.cxx:2523
 AliAnalysisTaskFullppJet.cxx:2524
 AliAnalysisTaskFullppJet.cxx:2525
 AliAnalysisTaskFullppJet.cxx:2526
 AliAnalysisTaskFullppJet.cxx:2527
 AliAnalysisTaskFullppJet.cxx:2528
 AliAnalysisTaskFullppJet.cxx:2529
 AliAnalysisTaskFullppJet.cxx:2530
 AliAnalysisTaskFullppJet.cxx:2531
 AliAnalysisTaskFullppJet.cxx:2532
 AliAnalysisTaskFullppJet.cxx:2533
 AliAnalysisTaskFullppJet.cxx:2534
 AliAnalysisTaskFullppJet.cxx:2535
 AliAnalysisTaskFullppJet.cxx:2536
 AliAnalysisTaskFullppJet.cxx:2537
 AliAnalysisTaskFullppJet.cxx:2538
 AliAnalysisTaskFullppJet.cxx:2539
 AliAnalysisTaskFullppJet.cxx:2540
 AliAnalysisTaskFullppJet.cxx:2541
 AliAnalysisTaskFullppJet.cxx:2542
 AliAnalysisTaskFullppJet.cxx:2543
 AliAnalysisTaskFullppJet.cxx:2544
 AliAnalysisTaskFullppJet.cxx:2545
 AliAnalysisTaskFullppJet.cxx:2546
 AliAnalysisTaskFullppJet.cxx:2547
 AliAnalysisTaskFullppJet.cxx:2548
 AliAnalysisTaskFullppJet.cxx:2549
 AliAnalysisTaskFullppJet.cxx:2550
 AliAnalysisTaskFullppJet.cxx:2551
 AliAnalysisTaskFullppJet.cxx:2552
 AliAnalysisTaskFullppJet.cxx:2553
 AliAnalysisTaskFullppJet.cxx:2554
 AliAnalysisTaskFullppJet.cxx:2555
 AliAnalysisTaskFullppJet.cxx:2556
 AliAnalysisTaskFullppJet.cxx:2557
 AliAnalysisTaskFullppJet.cxx:2558
 AliAnalysisTaskFullppJet.cxx:2559
 AliAnalysisTaskFullppJet.cxx:2560
 AliAnalysisTaskFullppJet.cxx:2561
 AliAnalysisTaskFullppJet.cxx:2562
 AliAnalysisTaskFullppJet.cxx:2563
 AliAnalysisTaskFullppJet.cxx:2564
 AliAnalysisTaskFullppJet.cxx:2565
 AliAnalysisTaskFullppJet.cxx:2566
 AliAnalysisTaskFullppJet.cxx:2567
 AliAnalysisTaskFullppJet.cxx:2568
 AliAnalysisTaskFullppJet.cxx:2569
 AliAnalysisTaskFullppJet.cxx:2570
 AliAnalysisTaskFullppJet.cxx:2571
 AliAnalysisTaskFullppJet.cxx:2572
 AliAnalysisTaskFullppJet.cxx:2573
 AliAnalysisTaskFullppJet.cxx:2574
 AliAnalysisTaskFullppJet.cxx:2575
 AliAnalysisTaskFullppJet.cxx:2576
 AliAnalysisTaskFullppJet.cxx:2577
 AliAnalysisTaskFullppJet.cxx:2578
 AliAnalysisTaskFullppJet.cxx:2579
 AliAnalysisTaskFullppJet.cxx:2580
 AliAnalysisTaskFullppJet.cxx:2581
 AliAnalysisTaskFullppJet.cxx:2582
 AliAnalysisTaskFullppJet.cxx:2583
 AliAnalysisTaskFullppJet.cxx:2584
 AliAnalysisTaskFullppJet.cxx:2585
 AliAnalysisTaskFullppJet.cxx:2586
 AliAnalysisTaskFullppJet.cxx:2587
 AliAnalysisTaskFullppJet.cxx:2588
 AliAnalysisTaskFullppJet.cxx:2589
 AliAnalysisTaskFullppJet.cxx:2590
 AliAnalysisTaskFullppJet.cxx:2591
 AliAnalysisTaskFullppJet.cxx:2592
 AliAnalysisTaskFullppJet.cxx:2593
 AliAnalysisTaskFullppJet.cxx:2594
 AliAnalysisTaskFullppJet.cxx:2595
 AliAnalysisTaskFullppJet.cxx:2596
 AliAnalysisTaskFullppJet.cxx:2597
 AliAnalysisTaskFullppJet.cxx:2598
 AliAnalysisTaskFullppJet.cxx:2599
 AliAnalysisTaskFullppJet.cxx:2600
 AliAnalysisTaskFullppJet.cxx:2601
 AliAnalysisTaskFullppJet.cxx:2602
 AliAnalysisTaskFullppJet.cxx:2603
 AliAnalysisTaskFullppJet.cxx:2604
 AliAnalysisTaskFullppJet.cxx:2605
 AliAnalysisTaskFullppJet.cxx:2606
 AliAnalysisTaskFullppJet.cxx:2607
 AliAnalysisTaskFullppJet.cxx:2608
 AliAnalysisTaskFullppJet.cxx:2609
 AliAnalysisTaskFullppJet.cxx:2610
 AliAnalysisTaskFullppJet.cxx:2611
 AliAnalysisTaskFullppJet.cxx:2612
 AliAnalysisTaskFullppJet.cxx:2613
 AliAnalysisTaskFullppJet.cxx:2614
 AliAnalysisTaskFullppJet.cxx:2615
 AliAnalysisTaskFullppJet.cxx:2616
 AliAnalysisTaskFullppJet.cxx:2617
 AliAnalysisTaskFullppJet.cxx:2618
 AliAnalysisTaskFullppJet.cxx:2619
 AliAnalysisTaskFullppJet.cxx:2620
 AliAnalysisTaskFullppJet.cxx:2621
 AliAnalysisTaskFullppJet.cxx:2622
 AliAnalysisTaskFullppJet.cxx:2623
 AliAnalysisTaskFullppJet.cxx:2624
 AliAnalysisTaskFullppJet.cxx:2625
 AliAnalysisTaskFullppJet.cxx:2626
 AliAnalysisTaskFullppJet.cxx:2627
 AliAnalysisTaskFullppJet.cxx:2628
 AliAnalysisTaskFullppJet.cxx:2629
 AliAnalysisTaskFullppJet.cxx:2630
 AliAnalysisTaskFullppJet.cxx:2631
 AliAnalysisTaskFullppJet.cxx:2632
 AliAnalysisTaskFullppJet.cxx:2633
 AliAnalysisTaskFullppJet.cxx:2634
 AliAnalysisTaskFullppJet.cxx:2635
 AliAnalysisTaskFullppJet.cxx:2636
 AliAnalysisTaskFullppJet.cxx:2637
 AliAnalysisTaskFullppJet.cxx:2638
 AliAnalysisTaskFullppJet.cxx:2639
 AliAnalysisTaskFullppJet.cxx:2640
 AliAnalysisTaskFullppJet.cxx:2641
 AliAnalysisTaskFullppJet.cxx:2642
 AliAnalysisTaskFullppJet.cxx:2643
 AliAnalysisTaskFullppJet.cxx:2644
 AliAnalysisTaskFullppJet.cxx:2645
 AliAnalysisTaskFullppJet.cxx:2646
 AliAnalysisTaskFullppJet.cxx:2647
 AliAnalysisTaskFullppJet.cxx:2648
 AliAnalysisTaskFullppJet.cxx:2649
 AliAnalysisTaskFullppJet.cxx:2650
 AliAnalysisTaskFullppJet.cxx:2651
 AliAnalysisTaskFullppJet.cxx:2652
 AliAnalysisTaskFullppJet.cxx:2653
 AliAnalysisTaskFullppJet.cxx:2654
 AliAnalysisTaskFullppJet.cxx:2655
 AliAnalysisTaskFullppJet.cxx:2656
 AliAnalysisTaskFullppJet.cxx:2657
 AliAnalysisTaskFullppJet.cxx:2658
 AliAnalysisTaskFullppJet.cxx:2659
 AliAnalysisTaskFullppJet.cxx:2660
 AliAnalysisTaskFullppJet.cxx:2661
 AliAnalysisTaskFullppJet.cxx:2662
 AliAnalysisTaskFullppJet.cxx:2663
 AliAnalysisTaskFullppJet.cxx:2664
 AliAnalysisTaskFullppJet.cxx:2665
 AliAnalysisTaskFullppJet.cxx:2666
 AliAnalysisTaskFullppJet.cxx:2667
 AliAnalysisTaskFullppJet.cxx:2668
 AliAnalysisTaskFullppJet.cxx:2669
 AliAnalysisTaskFullppJet.cxx:2670
 AliAnalysisTaskFullppJet.cxx:2671
 AliAnalysisTaskFullppJet.cxx:2672
 AliAnalysisTaskFullppJet.cxx:2673
 AliAnalysisTaskFullppJet.cxx:2674
 AliAnalysisTaskFullppJet.cxx:2675
 AliAnalysisTaskFullppJet.cxx:2676
 AliAnalysisTaskFullppJet.cxx:2677
 AliAnalysisTaskFullppJet.cxx:2678
 AliAnalysisTaskFullppJet.cxx:2679
 AliAnalysisTaskFullppJet.cxx:2680
 AliAnalysisTaskFullppJet.cxx:2681
 AliAnalysisTaskFullppJet.cxx:2682
 AliAnalysisTaskFullppJet.cxx:2683
 AliAnalysisTaskFullppJet.cxx:2684
 AliAnalysisTaskFullppJet.cxx:2685
 AliAnalysisTaskFullppJet.cxx:2686
 AliAnalysisTaskFullppJet.cxx:2687
 AliAnalysisTaskFullppJet.cxx:2688
 AliAnalysisTaskFullppJet.cxx:2689
 AliAnalysisTaskFullppJet.cxx:2690
 AliAnalysisTaskFullppJet.cxx:2691
 AliAnalysisTaskFullppJet.cxx:2692
 AliAnalysisTaskFullppJet.cxx:2693
 AliAnalysisTaskFullppJet.cxx:2694
 AliAnalysisTaskFullppJet.cxx:2695
 AliAnalysisTaskFullppJet.cxx:2696
 AliAnalysisTaskFullppJet.cxx:2697
 AliAnalysisTaskFullppJet.cxx:2698
 AliAnalysisTaskFullppJet.cxx:2699
 AliAnalysisTaskFullppJet.cxx:2700
 AliAnalysisTaskFullppJet.cxx:2701
 AliAnalysisTaskFullppJet.cxx:2702
 AliAnalysisTaskFullppJet.cxx:2703
 AliAnalysisTaskFullppJet.cxx:2704
 AliAnalysisTaskFullppJet.cxx:2705
 AliAnalysisTaskFullppJet.cxx:2706
 AliAnalysisTaskFullppJet.cxx:2707
 AliAnalysisTaskFullppJet.cxx:2708
 AliAnalysisTaskFullppJet.cxx:2709
 AliAnalysisTaskFullppJet.cxx:2710
 AliAnalysisTaskFullppJet.cxx:2711
 AliAnalysisTaskFullppJet.cxx:2712
 AliAnalysisTaskFullppJet.cxx:2713
 AliAnalysisTaskFullppJet.cxx:2714
 AliAnalysisTaskFullppJet.cxx:2715
 AliAnalysisTaskFullppJet.cxx:2716
 AliAnalysisTaskFullppJet.cxx:2717
 AliAnalysisTaskFullppJet.cxx:2718
 AliAnalysisTaskFullppJet.cxx:2719
 AliAnalysisTaskFullppJet.cxx:2720
 AliAnalysisTaskFullppJet.cxx:2721
 AliAnalysisTaskFullppJet.cxx:2722
 AliAnalysisTaskFullppJet.cxx:2723
 AliAnalysisTaskFullppJet.cxx:2724
 AliAnalysisTaskFullppJet.cxx:2725
 AliAnalysisTaskFullppJet.cxx:2726
 AliAnalysisTaskFullppJet.cxx:2727
 AliAnalysisTaskFullppJet.cxx:2728
 AliAnalysisTaskFullppJet.cxx:2729
 AliAnalysisTaskFullppJet.cxx:2730
 AliAnalysisTaskFullppJet.cxx:2731
 AliAnalysisTaskFullppJet.cxx:2732
 AliAnalysisTaskFullppJet.cxx:2733
 AliAnalysisTaskFullppJet.cxx:2734
 AliAnalysisTaskFullppJet.cxx:2735
 AliAnalysisTaskFullppJet.cxx:2736
 AliAnalysisTaskFullppJet.cxx:2737
 AliAnalysisTaskFullppJet.cxx:2738
 AliAnalysisTaskFullppJet.cxx:2739
 AliAnalysisTaskFullppJet.cxx:2740
 AliAnalysisTaskFullppJet.cxx:2741
 AliAnalysisTaskFullppJet.cxx:2742
 AliAnalysisTaskFullppJet.cxx:2743
 AliAnalysisTaskFullppJet.cxx:2744
 AliAnalysisTaskFullppJet.cxx:2745
 AliAnalysisTaskFullppJet.cxx:2746
 AliAnalysisTaskFullppJet.cxx:2747
 AliAnalysisTaskFullppJet.cxx:2748
 AliAnalysisTaskFullppJet.cxx:2749
 AliAnalysisTaskFullppJet.cxx:2750
 AliAnalysisTaskFullppJet.cxx:2751
 AliAnalysisTaskFullppJet.cxx:2752
 AliAnalysisTaskFullppJet.cxx:2753
 AliAnalysisTaskFullppJet.cxx:2754
 AliAnalysisTaskFullppJet.cxx:2755
 AliAnalysisTaskFullppJet.cxx:2756
 AliAnalysisTaskFullppJet.cxx:2757
 AliAnalysisTaskFullppJet.cxx:2758
 AliAnalysisTaskFullppJet.cxx:2759
 AliAnalysisTaskFullppJet.cxx:2760
 AliAnalysisTaskFullppJet.cxx:2761
 AliAnalysisTaskFullppJet.cxx:2762
 AliAnalysisTaskFullppJet.cxx:2763
 AliAnalysisTaskFullppJet.cxx:2764
 AliAnalysisTaskFullppJet.cxx:2765
 AliAnalysisTaskFullppJet.cxx:2766
 AliAnalysisTaskFullppJet.cxx:2767
 AliAnalysisTaskFullppJet.cxx:2768
 AliAnalysisTaskFullppJet.cxx:2769
 AliAnalysisTaskFullppJet.cxx:2770
 AliAnalysisTaskFullppJet.cxx:2771
 AliAnalysisTaskFullppJet.cxx:2772
 AliAnalysisTaskFullppJet.cxx:2773
 AliAnalysisTaskFullppJet.cxx:2774
 AliAnalysisTaskFullppJet.cxx:2775
 AliAnalysisTaskFullppJet.cxx:2776
 AliAnalysisTaskFullppJet.cxx:2777
 AliAnalysisTaskFullppJet.cxx:2778
 AliAnalysisTaskFullppJet.cxx:2779
 AliAnalysisTaskFullppJet.cxx:2780
 AliAnalysisTaskFullppJet.cxx:2781
 AliAnalysisTaskFullppJet.cxx:2782
 AliAnalysisTaskFullppJet.cxx:2783
 AliAnalysisTaskFullppJet.cxx:2784
 AliAnalysisTaskFullppJet.cxx:2785
 AliAnalysisTaskFullppJet.cxx:2786
 AliAnalysisTaskFullppJet.cxx:2787
 AliAnalysisTaskFullppJet.cxx:2788
 AliAnalysisTaskFullppJet.cxx:2789
 AliAnalysisTaskFullppJet.cxx:2790
 AliAnalysisTaskFullppJet.cxx:2791
 AliAnalysisTaskFullppJet.cxx:2792
 AliAnalysisTaskFullppJet.cxx:2793
 AliAnalysisTaskFullppJet.cxx:2794
 AliAnalysisTaskFullppJet.cxx:2795
 AliAnalysisTaskFullppJet.cxx:2796
 AliAnalysisTaskFullppJet.cxx:2797
 AliAnalysisTaskFullppJet.cxx:2798
 AliAnalysisTaskFullppJet.cxx:2799
 AliAnalysisTaskFullppJet.cxx:2800
 AliAnalysisTaskFullppJet.cxx:2801
 AliAnalysisTaskFullppJet.cxx:2802
 AliAnalysisTaskFullppJet.cxx:2803
 AliAnalysisTaskFullppJet.cxx:2804
 AliAnalysisTaskFullppJet.cxx:2805
 AliAnalysisTaskFullppJet.cxx:2806
 AliAnalysisTaskFullppJet.cxx:2807
 AliAnalysisTaskFullppJet.cxx:2808
 AliAnalysisTaskFullppJet.cxx:2809
 AliAnalysisTaskFullppJet.cxx:2810
 AliAnalysisTaskFullppJet.cxx:2811
 AliAnalysisTaskFullppJet.cxx:2812
 AliAnalysisTaskFullppJet.cxx:2813
 AliAnalysisTaskFullppJet.cxx:2814
 AliAnalysisTaskFullppJet.cxx:2815
 AliAnalysisTaskFullppJet.cxx:2816
 AliAnalysisTaskFullppJet.cxx:2817
 AliAnalysisTaskFullppJet.cxx:2818
 AliAnalysisTaskFullppJet.cxx:2819
 AliAnalysisTaskFullppJet.cxx:2820
 AliAnalysisTaskFullppJet.cxx:2821
 AliAnalysisTaskFullppJet.cxx:2822
 AliAnalysisTaskFullppJet.cxx:2823
 AliAnalysisTaskFullppJet.cxx:2824
 AliAnalysisTaskFullppJet.cxx:2825
 AliAnalysisTaskFullppJet.cxx:2826
 AliAnalysisTaskFullppJet.cxx:2827
 AliAnalysisTaskFullppJet.cxx:2828
 AliAnalysisTaskFullppJet.cxx:2829
 AliAnalysisTaskFullppJet.cxx:2830
 AliAnalysisTaskFullppJet.cxx:2831
 AliAnalysisTaskFullppJet.cxx:2832
 AliAnalysisTaskFullppJet.cxx:2833
 AliAnalysisTaskFullppJet.cxx:2834
 AliAnalysisTaskFullppJet.cxx:2835
 AliAnalysisTaskFullppJet.cxx:2836
 AliAnalysisTaskFullppJet.cxx:2837
 AliAnalysisTaskFullppJet.cxx:2838
 AliAnalysisTaskFullppJet.cxx:2839
 AliAnalysisTaskFullppJet.cxx:2840
 AliAnalysisTaskFullppJet.cxx:2841
 AliAnalysisTaskFullppJet.cxx:2842
 AliAnalysisTaskFullppJet.cxx:2843
 AliAnalysisTaskFullppJet.cxx:2844
 AliAnalysisTaskFullppJet.cxx:2845
 AliAnalysisTaskFullppJet.cxx:2846
 AliAnalysisTaskFullppJet.cxx:2847
 AliAnalysisTaskFullppJet.cxx:2848
 AliAnalysisTaskFullppJet.cxx:2849
 AliAnalysisTaskFullppJet.cxx:2850
 AliAnalysisTaskFullppJet.cxx:2851
 AliAnalysisTaskFullppJet.cxx:2852
 AliAnalysisTaskFullppJet.cxx:2853
 AliAnalysisTaskFullppJet.cxx:2854
 AliAnalysisTaskFullppJet.cxx:2855
 AliAnalysisTaskFullppJet.cxx:2856
 AliAnalysisTaskFullppJet.cxx:2857
 AliAnalysisTaskFullppJet.cxx:2858
 AliAnalysisTaskFullppJet.cxx:2859
 AliAnalysisTaskFullppJet.cxx:2860
 AliAnalysisTaskFullppJet.cxx:2861
 AliAnalysisTaskFullppJet.cxx:2862
 AliAnalysisTaskFullppJet.cxx:2863
 AliAnalysisTaskFullppJet.cxx:2864
 AliAnalysisTaskFullppJet.cxx:2865
 AliAnalysisTaskFullppJet.cxx:2866
 AliAnalysisTaskFullppJet.cxx:2867
 AliAnalysisTaskFullppJet.cxx:2868
 AliAnalysisTaskFullppJet.cxx:2869
 AliAnalysisTaskFullppJet.cxx:2870
 AliAnalysisTaskFullppJet.cxx:2871
 AliAnalysisTaskFullppJet.cxx:2872
 AliAnalysisTaskFullppJet.cxx:2873
 AliAnalysisTaskFullppJet.cxx:2874
 AliAnalysisTaskFullppJet.cxx:2875
 AliAnalysisTaskFullppJet.cxx:2876
 AliAnalysisTaskFullppJet.cxx:2877
 AliAnalysisTaskFullppJet.cxx:2878
 AliAnalysisTaskFullppJet.cxx:2879
 AliAnalysisTaskFullppJet.cxx:2880
 AliAnalysisTaskFullppJet.cxx:2881
 AliAnalysisTaskFullppJet.cxx:2882
 AliAnalysisTaskFullppJet.cxx:2883
 AliAnalysisTaskFullppJet.cxx:2884
 AliAnalysisTaskFullppJet.cxx:2885
 AliAnalysisTaskFullppJet.cxx:2886
 AliAnalysisTaskFullppJet.cxx:2887
 AliAnalysisTaskFullppJet.cxx:2888
 AliAnalysisTaskFullppJet.cxx:2889
 AliAnalysisTaskFullppJet.cxx:2890
 AliAnalysisTaskFullppJet.cxx:2891
 AliAnalysisTaskFullppJet.cxx:2892
 AliAnalysisTaskFullppJet.cxx:2893
 AliAnalysisTaskFullppJet.cxx:2894
 AliAnalysisTaskFullppJet.cxx:2895
 AliAnalysisTaskFullppJet.cxx:2896
 AliAnalysisTaskFullppJet.cxx:2897
 AliAnalysisTaskFullppJet.cxx:2898
 AliAnalysisTaskFullppJet.cxx:2899
 AliAnalysisTaskFullppJet.cxx:2900
 AliAnalysisTaskFullppJet.cxx:2901
 AliAnalysisTaskFullppJet.cxx:2902
 AliAnalysisTaskFullppJet.cxx:2903
 AliAnalysisTaskFullppJet.cxx:2904
 AliAnalysisTaskFullppJet.cxx:2905
 AliAnalysisTaskFullppJet.cxx:2906
 AliAnalysisTaskFullppJet.cxx:2907
 AliAnalysisTaskFullppJet.cxx:2908
 AliAnalysisTaskFullppJet.cxx:2909
 AliAnalysisTaskFullppJet.cxx:2910
 AliAnalysisTaskFullppJet.cxx:2911
 AliAnalysisTaskFullppJet.cxx:2912
 AliAnalysisTaskFullppJet.cxx:2913
 AliAnalysisTaskFullppJet.cxx:2914
 AliAnalysisTaskFullppJet.cxx:2915
 AliAnalysisTaskFullppJet.cxx:2916
 AliAnalysisTaskFullppJet.cxx:2917
 AliAnalysisTaskFullppJet.cxx:2918
 AliAnalysisTaskFullppJet.cxx:2919
 AliAnalysisTaskFullppJet.cxx:2920
 AliAnalysisTaskFullppJet.cxx:2921
 AliAnalysisTaskFullppJet.cxx:2922
 AliAnalysisTaskFullppJet.cxx:2923
 AliAnalysisTaskFullppJet.cxx:2924
 AliAnalysisTaskFullppJet.cxx:2925
 AliAnalysisTaskFullppJet.cxx:2926
 AliAnalysisTaskFullppJet.cxx:2927
 AliAnalysisTaskFullppJet.cxx:2928
 AliAnalysisTaskFullppJet.cxx:2929
 AliAnalysisTaskFullppJet.cxx:2930
 AliAnalysisTaskFullppJet.cxx:2931
 AliAnalysisTaskFullppJet.cxx:2932
 AliAnalysisTaskFullppJet.cxx:2933
 AliAnalysisTaskFullppJet.cxx:2934
 AliAnalysisTaskFullppJet.cxx:2935
 AliAnalysisTaskFullppJet.cxx:2936
 AliAnalysisTaskFullppJet.cxx:2937
 AliAnalysisTaskFullppJet.cxx:2938
 AliAnalysisTaskFullppJet.cxx:2939
 AliAnalysisTaskFullppJet.cxx:2940
 AliAnalysisTaskFullppJet.cxx:2941
 AliAnalysisTaskFullppJet.cxx:2942
 AliAnalysisTaskFullppJet.cxx:2943
 AliAnalysisTaskFullppJet.cxx:2944
 AliAnalysisTaskFullppJet.cxx:2945
 AliAnalysisTaskFullppJet.cxx:2946
 AliAnalysisTaskFullppJet.cxx:2947
 AliAnalysisTaskFullppJet.cxx:2948
 AliAnalysisTaskFullppJet.cxx:2949
 AliAnalysisTaskFullppJet.cxx:2950
 AliAnalysisTaskFullppJet.cxx:2951
 AliAnalysisTaskFullppJet.cxx:2952
 AliAnalysisTaskFullppJet.cxx:2953
 AliAnalysisTaskFullppJet.cxx:2954
 AliAnalysisTaskFullppJet.cxx:2955
 AliAnalysisTaskFullppJet.cxx:2956
 AliAnalysisTaskFullppJet.cxx:2957
 AliAnalysisTaskFullppJet.cxx:2958
 AliAnalysisTaskFullppJet.cxx:2959
 AliAnalysisTaskFullppJet.cxx:2960
 AliAnalysisTaskFullppJet.cxx:2961
 AliAnalysisTaskFullppJet.cxx:2962
 AliAnalysisTaskFullppJet.cxx:2963
 AliAnalysisTaskFullppJet.cxx:2964
 AliAnalysisTaskFullppJet.cxx:2965
 AliAnalysisTaskFullppJet.cxx:2966
 AliAnalysisTaskFullppJet.cxx:2967
 AliAnalysisTaskFullppJet.cxx:2968
 AliAnalysisTaskFullppJet.cxx:2969
 AliAnalysisTaskFullppJet.cxx:2970
 AliAnalysisTaskFullppJet.cxx:2971
 AliAnalysisTaskFullppJet.cxx:2972
 AliAnalysisTaskFullppJet.cxx:2973
 AliAnalysisTaskFullppJet.cxx:2974
 AliAnalysisTaskFullppJet.cxx:2975
 AliAnalysisTaskFullppJet.cxx:2976
 AliAnalysisTaskFullppJet.cxx:2977
 AliAnalysisTaskFullppJet.cxx:2978
 AliAnalysisTaskFullppJet.cxx:2979
 AliAnalysisTaskFullppJet.cxx:2980
 AliAnalysisTaskFullppJet.cxx:2981
 AliAnalysisTaskFullppJet.cxx:2982
 AliAnalysisTaskFullppJet.cxx:2983
 AliAnalysisTaskFullppJet.cxx:2984
 AliAnalysisTaskFullppJet.cxx:2985
 AliAnalysisTaskFullppJet.cxx:2986
 AliAnalysisTaskFullppJet.cxx:2987
 AliAnalysisTaskFullppJet.cxx:2988
 AliAnalysisTaskFullppJet.cxx:2989
 AliAnalysisTaskFullppJet.cxx:2990
 AliAnalysisTaskFullppJet.cxx:2991
 AliAnalysisTaskFullppJet.cxx:2992
 AliAnalysisTaskFullppJet.cxx:2993
 AliAnalysisTaskFullppJet.cxx:2994
 AliAnalysisTaskFullppJet.cxx:2995
 AliAnalysisTaskFullppJet.cxx:2996
 AliAnalysisTaskFullppJet.cxx:2997
 AliAnalysisTaskFullppJet.cxx:2998
 AliAnalysisTaskFullppJet.cxx:2999
 AliAnalysisTaskFullppJet.cxx:3000
 AliAnalysisTaskFullppJet.cxx:3001
 AliAnalysisTaskFullppJet.cxx:3002
 AliAnalysisTaskFullppJet.cxx:3003
 AliAnalysisTaskFullppJet.cxx:3004
 AliAnalysisTaskFullppJet.cxx:3005
 AliAnalysisTaskFullppJet.cxx:3006
 AliAnalysisTaskFullppJet.cxx:3007
 AliAnalysisTaskFullppJet.cxx:3008
 AliAnalysisTaskFullppJet.cxx:3009
 AliAnalysisTaskFullppJet.cxx:3010
 AliAnalysisTaskFullppJet.cxx:3011
 AliAnalysisTaskFullppJet.cxx:3012
 AliAnalysisTaskFullppJet.cxx:3013
 AliAnalysisTaskFullppJet.cxx:3014
 AliAnalysisTaskFullppJet.cxx:3015
 AliAnalysisTaskFullppJet.cxx:3016
 AliAnalysisTaskFullppJet.cxx:3017
 AliAnalysisTaskFullppJet.cxx:3018
 AliAnalysisTaskFullppJet.cxx:3019
 AliAnalysisTaskFullppJet.cxx:3020
 AliAnalysisTaskFullppJet.cxx:3021
 AliAnalysisTaskFullppJet.cxx:3022
 AliAnalysisTaskFullppJet.cxx:3023
 AliAnalysisTaskFullppJet.cxx:3024
 AliAnalysisTaskFullppJet.cxx:3025
 AliAnalysisTaskFullppJet.cxx:3026
 AliAnalysisTaskFullppJet.cxx:3027
 AliAnalysisTaskFullppJet.cxx:3028
 AliAnalysisTaskFullppJet.cxx:3029
 AliAnalysisTaskFullppJet.cxx:3030
 AliAnalysisTaskFullppJet.cxx:3031
 AliAnalysisTaskFullppJet.cxx:3032
 AliAnalysisTaskFullppJet.cxx:3033
 AliAnalysisTaskFullppJet.cxx:3034
 AliAnalysisTaskFullppJet.cxx:3035
 AliAnalysisTaskFullppJet.cxx:3036
 AliAnalysisTaskFullppJet.cxx:3037
 AliAnalysisTaskFullppJet.cxx:3038
 AliAnalysisTaskFullppJet.cxx:3039
 AliAnalysisTaskFullppJet.cxx:3040
 AliAnalysisTaskFullppJet.cxx:3041
 AliAnalysisTaskFullppJet.cxx:3042
 AliAnalysisTaskFullppJet.cxx:3043
 AliAnalysisTaskFullppJet.cxx:3044
 AliAnalysisTaskFullppJet.cxx:3045
 AliAnalysisTaskFullppJet.cxx:3046
 AliAnalysisTaskFullppJet.cxx:3047
 AliAnalysisTaskFullppJet.cxx:3048
 AliAnalysisTaskFullppJet.cxx:3049
 AliAnalysisTaskFullppJet.cxx:3050
 AliAnalysisTaskFullppJet.cxx:3051
 AliAnalysisTaskFullppJet.cxx:3052
 AliAnalysisTaskFullppJet.cxx:3053
 AliAnalysisTaskFullppJet.cxx:3054
 AliAnalysisTaskFullppJet.cxx:3055
 AliAnalysisTaskFullppJet.cxx:3056
 AliAnalysisTaskFullppJet.cxx:3057
 AliAnalysisTaskFullppJet.cxx:3058
 AliAnalysisTaskFullppJet.cxx:3059
 AliAnalysisTaskFullppJet.cxx:3060
 AliAnalysisTaskFullppJet.cxx:3061
 AliAnalysisTaskFullppJet.cxx:3062
 AliAnalysisTaskFullppJet.cxx:3063
 AliAnalysisTaskFullppJet.cxx:3064
 AliAnalysisTaskFullppJet.cxx:3065
 AliAnalysisTaskFullppJet.cxx:3066
 AliAnalysisTaskFullppJet.cxx:3067
 AliAnalysisTaskFullppJet.cxx:3068
 AliAnalysisTaskFullppJet.cxx:3069
 AliAnalysisTaskFullppJet.cxx:3070
 AliAnalysisTaskFullppJet.cxx:3071
 AliAnalysisTaskFullppJet.cxx:3072
 AliAnalysisTaskFullppJet.cxx:3073
 AliAnalysisTaskFullppJet.cxx:3074