ROOT logo
// Configuration macro for analysis of photon-jet analysis
// Author: Adam Matyja
// based on AddTaskIsoPhoton by Gustavo Conesa & Marie Germain.

//new macro
TString kGammaJetCorrelationName          = "";

AliAnalysisTaskCaloTrackCorrelation *AddTaskGammaJetCorrelation(const Float_t  isoCone       = 0.4,
								const Float_t  isoPth        = 0.5,
								const Double_t maxLambda0Cut = 0.5,
								const Int_t    maxNLMcut     = 2,
								const Bool_t   timecut       = kFALSE,
								const TString  calorimeter   = "EMCAL",
								const Bool_t   simulation    = kFALSE,
								const Bool_t   eventsel      = kFALSE,
								const Bool_t   exotic        = kTRUE,
								const Bool_t   nonlin        = kFALSE,
								const TString  collision     = "pp",
								const TString  trigger       = "MB",
								const TString  firedTrigger  = "EG1",
								const TString  clustersArray = "V1",
								const Bool_t   mix           = kTRUE,
								const Bool_t   tm            = kTRUE,
								const Int_t    minCen        = -1,
								const Int_t    maxCen        = -1,
								const TString  jetBranchName = "clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip00",
								const TString  jetBkgBranchName = "jeteventbackground_clustersAOD_KT04_B0_Filter00768_Cut00150_Skip00",
                const Float_t  jetMinPt      = 0,
                const Float_t  minDeltaPhi   = 1.5,
								const Float_t  maxDeltaPhi   = 4.5,
								const Float_t  minPtRatio    = 0,
								const Float_t  maxPtRatio    = 5,   
								const Int_t    debug         = -1,
								const Bool_t   printSettings = kFALSE,
								const Double_t scaleFactor   = -1
								)
{
  // Creates a CaloTrackCorr task, configures it and adds it to the analysis manager.

  // Get the pointer to the existing analysis manager via the static access method.
  
  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr) 
  {
    ::Error("AddTask", "No analysis manager to connect to.");
    return NULL;
  }  
  
  // Check the analysis type using the event handlers connected to the analysis manager.
  
  if (!mgr->GetInputEventHandler()) 
  {
    ::Error("AddTask", "This task requires an input event handler");
    return NULL;
  }
  
  // Make sure the B field is enabled for track selection, some cuts need it
  ((AliInputEventHandler*)mgr->GetInputEventHandler())->SetNeedField(kTRUE);

//  inputDataType = "AOD";
//  if(!kData.Contains("delta"))
//    inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
  
  //input jets
  TString     deltaAODJetName   = "AliAOD.Jets.root"; //Jet input AOD name
  if(deltaAODJetName.Length()!=0)
    {
      // External file with Jets
     // aodHandler->AddFriend(deltaAODJetName.Data());
      mgr->RegisterExtraFile(deltaAODJetName.Data());
      cout<<"Jet file registered "<<endl;
      cout<<"Extra files: "<<mgr->GetExtraFiles()<<endl;
    }



  Bool_t useKinematics = kFALSE;
  useKinematics = (mgr->GetMCtruthEventHandler())?kTRUE:kFALSE;

  // Name for containers
  
  //kGammaJetCorrelationName = Form("%s_Trig%s_Cl%s_TM%d_R%1.1f_Pt%1.1f",calorimeter.Data(), trigger.Data(),clustersArray.Data(),tm,cone,pth);
  //  kGammaJetCorrelationName = Form("%s_Trig%s_Cl%s_TM%d",calorimeter.Data(), trigger.Data(),clustersArray.Data(),tm);
  kGammaJetCorrelationName = Form("%s_Trig%s_Fired%s_Cl%s_TM%d_l02%1.2f",calorimeter.Data(), trigger.Data(),firedTrigger.Data(),clustersArray.Data(),tm,maxLambda0Cut);//<<<---changed here

  
  if(collision=="PbPb" && maxCen>=0) kGammaJetCorrelationName+=Form("Cen%d_%d",minCen,maxCen);
    
  printf("<<<< NAME: %s >>>>>\n",kGammaJetCorrelationName.Data());
  
  // #### Configure analysis ####
    
  AliAnaCaloTrackCorrMaker * maker = new AliAnaCaloTrackCorrMaker();
  printf("SCALE FACTOR %e\n",scaleFactor);
  maker->SetScaleFactor(scaleFactor); // for MC, negative (not scaled) by default
  
  // General frame setting and configuration
  maker->SetReader   (ConfigureReader(mgr->GetInputEventHandler()->GetDataType(),calorimeter,useKinematics,simulation,eventsel,nonlin,timecut,collision,trigger,firedTrigger,clustersArray,jetBranchName,jetBkgBranchName,mix,minCen,maxCen,debug,printSettings)   ); 
  maker->SetCaloUtils(ConfigureCaloUtils(clustersArray,collision,nonlin,exotic,simulation,timecut,debug,printSettings)); 
  
  // Analysis tasks setting and configuration
  Int_t n = 0;//Analysis number, order is important

  // Isolation settings
  Int_t partInCone = AliIsolationCut::kNeutralAndCharged; // kOnlyCharged;
  Int_t thresType  = AliIsolationCut::kPtThresIC;//  AliIsolationCut::kSumPtFracIC ; 
  //Float_t isoCone = -1;
  //Float_t isoPth  = -1;
  
  maker->AddAnalysis(ConfigurePhotonAnalysis(calorimeter,tm,simulation,maxLambda0Cut,maxNLMcut,debug,printSettings), n++); // Photon cluster selection
  maker->AddAnalysis(ConfigureIsolationAnalysis(calorimeter,collision,"Photon", partInCone,thresType, isoCone, isoPth,tm,kFALSE,simulation,debug,printSettings), n++); // Photon isolation   
  maker->AddAnalysis(ConfigurePhotonJetAnalysis(calorimeter,isoCone,jetMinPt,minDeltaPhi,maxDeltaPhi,minPtRatio,maxPtRatio,simulation,debug,printSettings), n++);// photon-jet correlation analysis

  maker->SetAnaDebug(debug)  ;
  maker->SwitchOnHistogramsMaker()  ;
  //if(kData.Contains("delta")) maker->SwitchOffAODsMaker() ;
  //else                        maker->SwitchOnAODsMaker()  ;
  
  if(printSettings) maker->Print("");
  
  printf("<< End Configuration of %d analysis for calorimeter %s >>\n",n, calorimeter.Data());
  // Create task
  
  AliAnalysisTaskCaloTrackCorrelation * task = new AliAnalysisTaskCaloTrackCorrelation (Form("CaloTrackCorr%s",kGammaJetCorrelationName.Data()));
  task->SetConfigFileName(""); //Don't configure the analysis via configuration file.
  task->SetDebugLevel(debug);
  task->SetBranches("ESD:AliESDRun.,AliESDHeader"); 
  task->SetAnalysisMaker(maker);
  mgr->AddTask(task);
  
  //Create containers
  
  //if(outputfile.Length()==0) outputfile = AliAnalysisManager::GetCommonFileName(); 
  TString outputfile = AliAnalysisManager::GetCommonFileName();
  
  AliAnalysisDataContainer *cout_pc   = mgr->CreateContainer(kGammaJetCorrelationName, TList::Class(), 
                                                             AliAnalysisManager::kOutputContainer, 
                                                             Form("%s",outputfile.Data()));
	
  AliAnalysisDataContainer *cout_cuts = mgr->CreateContainer(Form("Param_%s",kGammaJetCorrelationName.Data()), TList::Class(), 
                                                             AliAnalysisManager::kParamContainer, 
                                                             "AnalysisParameters.root");
  
  // Create ONLY the output containers for the data produced by the task.
  // Get and connect other common input/output containers via the manager as below
  //==============================================================================
  mgr->ConnectInput  (task, 0, mgr->GetCommonInputContainer());
  // AOD output slot will be used in a different way in future
  //if(!kData.Contains("delta")   && outputAOD) mgr->ConnectOutput (task, 0, mgr->GetCommonOutputContainer());
  mgr->ConnectOutput (task, 1, cout_pc);
  mgr->ConnectOutput (task, 2, cout_cuts);
    
  if(!mix)
  {    
    UInt_t mask =  SetTriggerMaskFromName(trigger);
    task->SelectCollisionCandidates(mask);
  } 
  
  return task;
}

//____________________________________
AliCaloTrackReader * ConfigureReader(TString inputDataType = "AOD",TString calorimeter = "EMCAL",Bool_t useKinematics = kFALSE,
				     Bool_t simulation = kFALSE,Bool_t   eventsel      = kFALSE,Bool_t nonlin = kTRUE, Bool_t timecut = kFALSE,
				     TString  collision     = "pp",TString trigger="MB",TString firedTrigger="EG1",
				     TString  clustersArray = "V1", TString  jetBranchName = "jets", TString  jetBkgBranchName = "jets",
				     Bool_t  mix           = kFALSE,
				     Float_t minCen = -1, Float_t maxCen = -1,
				     Int_t debug = -1,Bool_t printSettings = kFALSE)
{
  
  Bool_t useTender=kTRUE;

  if(simulation)
  {
    if (!useKinematics && inputDataType=="AOD") useKinematics = kTRUE; //AOD primary should be available ...
  }
  
  cout<<"********* ACCESS KINE? "<<useKinematics<< endl;



  AliCaloTrackReader * reader = 0;
  if     (inputDataType == "AOD") reader = new AliCaloTrackAODReader();
  else if(inputDataType == "ESD") reader = new AliCaloTrackESDReader();
  else printf("AliCaloTrackReader::ConfigureReader() - Data not known InputData=%s\n",inputDataType.Data());
  
  reader->SetDebug(debug);//10 for lots of messages

  if(useTender){
    reader->SwitchOffTriggerPatchMatching();
    reader->SwitchOffBadTriggerEventsRemoval();
  }

  if(simulation)
  {
    // Event rejection cuts for jet-jet simulations, do not use in other
    reader->SetPtHardAndJetPtComparison(kTRUE);
    reader->SetPtHardAndJetPtFactor(4);
    
    reader->SetPtHardAndClusterPtComparison(kTRUE);
    reader->SetPtHardAndClusterPtFactor(1.5);
  }

  //Delta AOD?
  //reader->SetDeltaAODFileName("");
  //if(kOutputAOD) reader->SwitchOnWriteDeltaAOD()  ;
  
  // MC settings
  if(useKinematics){
    if(inputDataType == "ESD"){
      reader->SwitchOnStack();          
      reader->SwitchOffAODMCParticles(); 
    }
    else if(inputDataType == "AOD"){
      reader->SwitchOffStack();          
      reader->SwitchOnAODMCParticles(); 
    }
  }  
  
  //------------------------
  // Detector input filling
  //------------------------
  
  //Min cluster/track E
  reader->SetEMCALEMin(0.3); 
  //reader->SetEMCALEMin(0.);// <<<----changed here 
  reader->SetEMCALEMax(1000); 
  reader->SetPHOSEMin(0.3);
  reader->SetPHOSEMax(1000);
  //  reader->SetCTSPtMin(0.2);
  reader->SetCTSPtMin(0.15);// <<<----changed here 
  reader->SetCTSPtMax(1000);

  //-----------------------------------------------------------------
  // Jet part
  //-----------------------------------------------------------------
  reader->SwitchOnNonStandardJets();
  //reader->SetInputNonStandardJetBranchName("clustersAOD_ANTIKT04_B0_Filter00768_Cut00150_Skip00");
  //reader->SetInputNonStandardJetBranchName("clustersAOD_ANTIKT04_B1_Filter00768_Cut00150_Skip00");//in PbPb
  //reader->SetInputNonStandardJetBranchName("clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip00");//in pp 2.76 LHC11a,7 LHC11c
  //reader->SetInputNonStandardJetBranchName("clustersAOD_ANTIKT04_B0_Filter00768_Cut00150_Skip02");//in pp 7 LHC13e4 MC
  //reader->SetInputNonStandardJetBranchName("clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip00");//in pp 7 LHC12a15f MC
  reader->SetInputNonStandardJetBranchName(jetBranchName.Data());
  if(jetBkgBranchName.Length()!=0) {
    reader->SwitchOnBackgroundJets();
    reader->SetInputBackgroundJetBranchName(jetBkgBranchName.Data());
  } else {
    reader->SwitchOffBackgroundJets();
  }
  //reader->SetInputBackgroundJetBranchName("jeteventbackground_clustersAOD_KT04_B0_Filter00768_Cut00150_Skip00");//in pp 7 LHC13e4 MC


  // Time cuts
  if(simulation) 
  {
    reader->SwitchOffUseTrackTimeCut();
    reader->SetEMCALTimeCut(-1e10,1e10); // Open time cut
    reader->SwitchOffUseEMCALTimeCut() ;   
    reader->SwitchOffUseParametrizedTimeCut();
  }
  else
  {
    reader->SwitchOffUseParametrizedTimeCut();
    if(timecut)
     {
	printf("Set time cut \n");
	reader->SwitchOnUseEMCALTimeCut();
	//Absolute window
	reader->SetEMCALTimeCut(-30.,30.); // default is -25ns-20ns
      }
    else
      {
	printf("Off time cuts time cut \n");
	reader->SwitchOffUseEMCALTimeCut();
	//Absolute window
	reader->SetEMCALTimeCut(-1.e6,1.e6);
      }

    //if(kCalibT)
    //{ 
      //printf("Set time cut parameters for run %d\n",kRunNumber);
      //reader->SetEMCALTimeCut(-20,20); 
      //reader->SwitchOnUseParametrizedTimeCut();
      //if     (kRunNumber >= 151636 && kRunNumber <= 155384 )
      //{
      //  printf("Set time parameters for LHC11c\n");
      //  reader->SetEMCALParametrizedMinTimeCut(0,-5  ); reader->SetEMCALParametrizedMinTimeCut(1,-1 ); reader->SetEMCALParametrizedMinTimeCut(2, 1.87); reader->SetEMCALParametrizedMinTimeCut(3, 0.4);   
      //  reader->SetEMCALParametrizedMaxTimeCut(0, 3.5); reader->SetEMCALParametrizedMaxTimeCut(1, 50); reader->SetEMCALParametrizedMaxTimeCut(2, 0.15); reader->SetEMCALParametrizedMaxTimeCut(3, 1.6);   
      //}
      //else if(kRunNumber >= 156447 && kRunNumber <= 159635 )
      //{
      //  printf("Set time parameters for LHC11d\n");
      //  reader->SetEMCALParametrizedMinTimeCut(0,-5);  reader->SetEMCALParametrizedMinTimeCut(1,-1 );  reader->SetEMCALParametrizedMinTimeCut(2, 3.5 ); reader->SetEMCALParametrizedMinTimeCut(3, 1.  );   
      //  reader->SetEMCALParametrizedMaxTimeCut(0, 5);  reader->SetEMCALParametrizedMaxTimeCut(1, 50);  reader->SetEMCALParametrizedMaxTimeCut(2, 0.45); reader->SetEMCALParametrizedMaxTimeCut(3, 1.25);   
      //}
      //else 
      //{
      //  printf("*** Fixed time cut 20 ns *** \n");
      //  reader->SetEMCALTimeCut(-20,20);
      //}
//      
//    }
//    else
//    {
//      reader->SwitchOffUseEMCALTimeCut();
//      reader->SetEMCALTimeCut(-1e10,1e10); // Open time cut
//      reader->SwitchOffUseParametrizedTimeCut(); 
//    }

  }  
  
  reader->SwitchOnFiducialCut();
  //reader->SwitchOffFiducialCut();// <<<----changed here 
  //reader->GetFiducialCut()->SetSimpleCTSFiducialCut(0.8, 0, 360) ;
  reader->GetFiducialCut()->SetSimpleCTSFiducialCut(0.9, 0, 360) ;// <<<--- changed here

  // Tracks

  //  reader->SwitchOffCTS();//here changed 0n->off
  reader->SwitchOnCTS();//here changed 0n->off

  reader->SwitchOffRecalculateVertexBC();
  reader->SwitchOffVertexBCEventSelection();
  
  reader->SwitchOffUseTrackTimeCut();
  reader->SetTrackTimeCut(0,50);

  if(inputDataType=="ESD")
  {
    //Hybrids 2011
    AliESDtrackCuts * esdTrackCuts  = CreateTrackCutsPWGJE(10001008);
    reader->SetTrackCuts(esdTrackCuts);
    AliESDtrackCuts * esdTrackCuts2 = CreateTrackCutsPWGJE(10011008);
    reader->SetTrackComplementaryCuts(esdTrackCuts2);
    
    //Hybrids 2010
    //AliESDtrackCuts * esdTrackCuts  = CreateTrackCutsPWGJE(10001006);
    //reader->SetTrackCuts(esdTrackCuts);
    //AliESDtrackCuts * esdTrackCuts2 = CreateTrackCutsPWGJE(10041006);
    //reader->SetTrackComplementaryCuts(esdTrackCuts2);
  }
  else if(inputDataType=="AOD")
  {
    reader->SwitchOnAODHybridTrackSelection(); // Check that the AODs have Hybrids!!!!
    reader->SetTrackStatus(AliVTrack::kITSrefit);    
    //reader->SetTrackFilterMask(128);           // Filter bit, not mask, use if off hybrid
  }
  
  // Calorimeter
  
  reader->SetEMCALClusterListName(clustersArray);
  if(clustersArray == "" && !useTender)
  {
    printf("**************** Standard EMCAL clusters branch analysis **************** \n");
    reader->SwitchOnClusterRecalculation();
    // Check in ConfigureCaloUtils that the recalibration and bad map are ON 
  }
  else 
  {
    printf("**************** Input for analysis is Clusterizer %s **************** \n", clustersArray.Data());
    reader->SwitchOffClusterRecalculation();
  }  
  
  if(!nonlin) reader->SwitchOffClusterELinearityCorrection();
  else        reader->SwitchOnClusterELinearityCorrection();

  if(calorimeter == "EMCAL") {
    reader->SwitchOnEMCALCells();  
    reader->SwitchOnEMCAL();
  }
  if(calorimeter == "PHOS") { 
    reader->SwitchOnPHOSCells();  
    reader->SwitchOnPHOS();
  }
  
  // for case data="deltaAOD", no need to fill the EMCAL/PHOS cluster lists
  //if(kData.Contains("delta"))
  //{
  //  reader->SwitchOffEMCAL();
  //  reader->SwitchOffPHOS();
  //  reader->SwitchOffEMCALCells(); 
  //  reader->SwitchOffPHOSCells(); 
  //}
  
  //-----------------
  // Event selection
  //-----------------
  
  //if(!useKinematics) reader->SetFiredTriggerClassName("CEMC7EGA-B-NOPF-CENTNOTRD"); // L1 Gamma
  if(!useKinematics) {
    if(collision =="pPb" && trigger=="EMCEGA") {
      reader->SetFiredTriggerClassName(firedTrigger);
    }
  }

  // For mixing with AliAnaParticleHadronCorrelation switch it off
  if(mix)
  {
    reader->SwitchOffEventTriggerAtSE();
    UInt_t mask =  SetTriggerMaskFromName(trigger);
    reader->SetEventTriggerMaks(mask); // Only for mixing and SwitchOffEventTriggerAtSE();
    //reader->SetMixEventTriggerMaks(AliVEvent::kMB); // Careful, not all productions work with kMB, try kINT7, kINT1, kAnyINT
    reader->SetMixEventTriggerMaks(AliVEvent::kAnyINT); // Careful, not all productions work with kMB, try kINT7, kINT1, kAnyINT

    printf("---Trigger selection done in AliCaloTrackReader!!!\n");
  }
  else 
    reader->SwitchOnEventTriggerAtSE();
  
  reader->SetZvertexCut(10.);                // Open cut
  reader->SwitchOnPrimaryVertexSelection(); // and besides primary vertex
  reader->SwitchOnRejectNoTrackEvents();//<<<--- changed here, new added

  if(eventsel)
  {
    reader->SwitchOnPileUpEventRejection();   // remove pileup by default  
    reader->SwitchOnV0ANDSelection() ;        // and besides v0 AND
  }
  else 
  {
    reader->SwitchOffPileUpEventRejection();  // remove pileup by default   
    reader->SwitchOffV0ANDSelection() ;        // and besides v0 AND
  }
    
  if(collision=="PbPb") 
  {
    // Centrality
    reader->SetCentralityClass("V0M");
    reader->SetCentralityOpt(10);  // 10 (c= 0-10, 10-20 ...), 20  (c= 0-5, 5-10 ...) or 100 (c= 1, 2, 3 ..)
    reader->SetCentralityBin(minCen,maxCen); // Accept all events, if not select range
    
    // Event plane (only used in Maker and mixing for AliAnaPi0/AliAnaHadronCorrelation for the moment)
    reader->SetEventPlaneMethod("V0");
  }
  
  if(printSettings) reader->Print("");
  
  return reader;
  
}

//_______________________________________
AliCalorimeterUtils* ConfigureCaloUtils( TString  clustersArray = "V1",TString  collision     = "pp",Bool_t nonlin = kTRUE,Bool_t exotic = kTRUE ,Bool_t simulation = kFALSE,Bool_t timecut = kFALSE,Int_t debug = -1,Bool_t printSettings = kFALSE)
{
  
  Bool_t useTender=kTRUE;

  AliCalorimeterUtils *cu = new AliCalorimeterUtils;
  cu->SetDebug(debug);
  
  // Remove clusters close to borders, at least max energy cell is 1 cell away 
  //cu->SetNumberOfCellsFromEMCALBorder(0);// <<<----changed here 
  cu->SetNumberOfCellsFromEMCALBorder(1);
  cu->SetNumberOfCellsFromPHOSBorder(2);
  
  // Search of local maxima in cluster
  if(collision=="pp" || collision=="pPb")
  {
    cu->SetLocalMaximaCutE(0.1);
    cu->SetLocalMaximaCutEDiff(0.03);
  }
  else 
  {
    cu->SetLocalMaximaCutE(0.2);
    cu->SetLocalMaximaCutEDiff(0.03);
  }
  
  cu->SwitchOffClusterPlot();

  //if(kRecalTM) cu->SwitchOnRecalculateClusterTrackMatching(); // Done in clusterization
  //else         
  cu->SwitchOffRecalculateClusterTrackMatching();
  
  if(useTender)
    cu->SwitchOffBadChannelsRemoval() ;
  else
    cu->SwitchOnBadChannelsRemoval() ;

  //EMCAL settings
  if(!simulation)
    cu->SwitchOnLoadOwnEMCALGeometryMatrices();

  if(!useTender){  
    AliEMCALRecoUtils * recou = cu->GetEMCALRecoUtils();
    
    if(!simulation)
      {
	cu->SwitchOnRecalibration(); // Check the reader if it is taken into account during filtering
	//if(clustersArray == "" && !kTender) cu->SwitchOnRunDepCorrection(); 
	if(clustersArray == "") cu->SwitchOnRunDepCorrection(); 
      }
    
    cu->SwitchOnEMCALOADB();//FIX ME!!!

    gROOT->LoadMacro("$ALICE_ROOT/PWGGA/EMCALTasks/macros/ConfigureEMCALRecoUtils.C");
    ConfigureEMCALRecoUtils(recou,
			    simulation,                             
			    exotic,
			    nonlin,
			    kFALSE, // e calib
			    kFALSE, // bad map
			    kFALSE); // time calib
    //kCalibE, 
    //kBadMap,
    //kCalibT);   
    recou->SetExoticCellDiffTimeCut(1e10);
    if(timecut) recou->SetExoticCellDiffTimeCut(50.);
  }//end tender


  if( nonlin ) 
  { 
//    printf("ConfigureCaloUtils() - Apply non linearity to EMCAL\n");
//    //CAREFUL only for the latest simulation
//    recou->SetNonLinearityFunction(AliEMCALRecoUtils::kBeamTestCorrected);
//    recou->SetNonLinearityParam(0,9.81039e-01);
//    recou->SetNonLinearityParam(1,1.13508e-01);
//    recou->SetNonLinearityParam(2,1.00173e+00); 
//    recou->SetNonLinearityParam(3,9.67998e-02);
//    recou->SetNonLinearityParam(4,2.19381e+02);
//    recou->SetNonLinearityParam(5,6.31604e+01);
//    recou->SetNonLinearityParam(6,1);
    printf("*** SET cluster non linearity correction ***\n");
    cu->SwitchOnCorrectClusterLinearity();
  }
    
  if(!useTender){
    printf("ConfigureCaloUtils() - EMCAL Recalibration ON? %d %d\n",recou->IsRecalibrationOn(), cu->IsRecalibrationOn());
    printf("ConfigureCaloUtils() - EMCAL BadMap        ON? %d %d\n",recou->IsBadChannelsRemovalSwitchedOn(), cu->IsBadChannelsRemovalSwitchedOn());
  }

  cu->SetNumberOfSuperModulesUsed(10);
  // PHOS 
  cu->SwitchOffLoadOwnPHOSGeometryMatrices();
    
  if(printSettings) cu->Print("");
  
  return cu;
  
}

//_____________________________________
AliAnaPhoton* ConfigurePhotonAnalysis(TString calorimeter = "EMCAL",Bool_t tm = kFALSE,Bool_t simulation = kFALSE,Double_t maxLambda0Cut=0.5,Int_t maxNLMcut=2,Int_t debug = -1,Bool_t printSettings = kFALSE)
{
  
  AliAnaPhoton *ana = new AliAnaPhoton();
  ana->SetDebug(debug); //10 for lots of messages
  
  // cluster selection cuts
  
  ana->SwitchOffFiducialCut();

  ana->SetCalorimeter(calorimeter);
  
  if(calorimeter == "PHOS")
  {
    ana->SetNCellCut(2);// At least 3 cells
    ana->SetMinPt(0.3);
    ana->SetMinDistanceToBadChannel(2, 4, 5);
    ana->SetTimeCut(-1e10,1e10); // open cut
  }
  else 
  {//EMCAL
    ana->SetNCellCut(1);// At least 2 cells
    ana->SetMinEnergy(0.3); // avoid mip peak at E = 260 MeV
    ana->SetMaxEnergy(1000); 
    //ana->SetTimeCut(-1e10,1e10); // open cut, usual time window of [425-825] ns if time recalibration is off //<<<---modified here
    // restrict to less than 100 ns when time calibration is on 
    ana->SetMinDistanceToBadChannel(2, 4, 6); 
    // Not useful if M02 cut is already strong
    ana->SetNLMCut(1, maxNLMcut) ;//[1,2]
    //ana->SetNLMCut(1, 10) ;//<<<----changed here 
    //ana->SetNLMCut(1, 1) ;//<<<----changed here 
  }
  
  if(tm)
  {
    ana->SwitchOnTrackMatchRejection() ;
    ana->SwitchOffTMHistoFill() ;
  }
  else
  {
    ana->SwitchOffTrackMatchRejection() ;
    ana->SwitchOnTMHistoFill() ;
  }
  
  
  //PID cuts (shower shape)
  ana->SwitchOnCaloPID(); // do PID selection, unless specified in GetCaloPID, selection not based on bayesian
  AliCaloPID* caloPID = ana->GetCaloPID();
  //Not used in bayesian
  
  //EMCAL
  caloPID->SetEMCALLambda0CutMax(maxLambda0Cut);//0.27 was before//0.50//<<<----changed here
  caloPID->SetEMCALLambda0CutMin(0.10);
  
  caloPID->SetEMCALDEtaCut(0.025);
  caloPID->SetEMCALDPhiCut(0.030);
    
  //PHOS
  caloPID->SetPHOSDispersionCut(2.5);
  caloPID->SetPHOSRCut(2.);
  //if(kInputData=="AOD") caloPID->SetPHOSRCut(2000.); // Open cut since dX, dZ not stored
      
  ana->SwitchOnFillShowerShapeHistograms();  // Filled before photon shower shape selection <<<--- changed here
  //ana->SwitchOffFillShowerShapeHistograms();  // Filled before photon shower shape selection
  ana->SwitchOffFillPileUpHistograms();

  // Input / output delta AOD settings
  
  //if(!kData.Contains("delta")) 
  //{
  ana->SetOutputAODName(Form("Photon%s",kGammaJetCorrelationName.Data()));
  ana->SetOutputAODClassName("AliAODPWG4ParticleCorrelation");
  //  //ana->SetOutputAODClassName("AliAODPWG4Particle"); // use if no correlation done
  //}
  //else 
  ana->SetInputAODName(Form("Photon%s",kGammaJetCorrelationName.Data()));
  
  //Set Histograms name tag, bins and ranges
  
  ana->AddToHistogramsName(Form("AnaPhoton_TM%d_",tm));
  SetHistoRangeAndNBins(ana->GetHistogramRanges(),calorimeter); // see method below
  
  // Number of particle type MC histograms
  ana->FillNOriginHistograms(20);
  ana->FillNPrimaryHistograms(20);
  
  ConfigureMC(ana,simulation);
  
  if(printSettings) ana->Print("");
  
  return ana;
  
}

//____________________________________________________________________________________________________
AliAnaParticleIsolation* ConfigureIsolationAnalysis(TString calorimeter = "EMCAL",
						    TString  collision     = "pp",
						    TString particle="Photon", 
                                                    Int_t  partInCone = AliIsolationCut::kOnlyCharged,
                                                    Int_t  thresType  = AliIsolationCut::kSumPtFracIC,
                                                    Float_t cone = 0.3,
                                                    Float_t pth  = 0.3,
						    Bool_t tm = kFALSE,
                                                    Bool_t multi      = kFALSE,Bool_t simulation = kFALSE,
						    Int_t debug = -1,
						    Bool_t printSettings = kFALSE)
{
  
  AliAnaParticleIsolation *ana = new AliAnaParticleIsolation();
  ana->SetDebug(debug);
    
  ana->SwitchOnFiducialCut();
  //Avoid borders of EMCal
  if(calorimeter=="EMCAL")
    ana->GetFiducialCut()->SetSimpleEMCALFiducialCut(0.6, 86, 174) ;

  // Same Eta as EMCal, cut in phi if EMCAL was triggering
  if(particle=="Hadron"  || particle.Contains("CTS"))
  {
    //if(trigger.Contains("EMC"))
    //  ana->GetFiducialCut()->SetSimpleCTSFiducialCut  (0.6, 260, 360) ;
    //else
      ana->GetFiducialCut()->SetSimpleCTSFiducialCut  (0.6, 0, 360) ;    
  }
  
  ana->SetMinPt(10);//<<---changed here
  
  // Input / output delta AOD settings
  
  ana->SetInputAODName(Form("%s%s",particle.Data(),kGammaJetCorrelationName.Data()));
  ana->SetAODObjArrayName(Form("IC%s_%s",particle.Data(),kGammaJetCorrelationName.Data())); 
  
  ana->SetCalorimeter(calorimeter);
  
  if(!tm)  ana->SwitchOnTMHistoFill();
  else      ana->SwitchOffTMHistoFill();
  
  //if(particle=="Photon")ana->SwitchOnSSHistoFill();
  //else                  ana->SwitchOffSSHistoFill();
  
  ana->SwitchOffSSHistoFill();
  ana->SwitchOffFillPileUpHistograms();

  //Do settings for main isolation cut class
  AliIsolationCut * ic =  ana->GetIsolationCut();	
  ic->SetDebug(debug);
  
  if(cone >0 && pth > 0)
  {
    ic->SetPtThreshold(pth);
    ic->SetConeSize(cone);
  }
  else
  {
    if(collision=="pp") 
    {
      ic->SetPtThreshold(1.);//<<---changed here was 0.5,1
      ic->SetConeSize(0.3);//<<---changed here was 0.4
    }
    if(collision=="pPb")
      {
	ic->SetPtThreshold(1.0);
	ic->SetConeSize(0.3);
      }

    if(collision=="PbPb")
    {
      ic->SetPtThreshold(3.);
      //ic->SetPtThreshold(1.);
      ic->SetConeSize(0.3);
    }
  }
  
  ic->SetPtFraction(0.1);
  ic->SetSumPtThreshold(1.0) ;
  ic->SetParticleTypeInCone(partInCone);
  ic->SetICMethod(thresType);
  
  //Do or not do isolation with previously produced AODs.
  //No effect if use of SwitchOnSeveralIsolation()
  ana->SwitchOffReIsolation();
  
  //Multiple IC
  if(multi) 
  {
    ic->SetConeSize(1.);    // Take all for first iteration
    ic->SetPtThreshold(100);// Take all for first iteration
    ana->SwitchOnSeveralIsolation() ;
    ana->SetAODObjArrayName(Form("MultiIC%sTM%d",particle.Data(),tm));
     
    ana->SetNCones(4);
    ana->SetNPtThresFrac(4);
    ana->SetConeSizes(0,0.3);       ana->SetConeSizes(1,0.4);
    ana->SetConeSizes(2,0.5);       ana->SetConeSizes(3,0.6);
    ana->SetPtThresholds(0, 0.5);   ana->SetPtThresholds(1, 1);     ana->SetPtThresholds(2, 2);
    ana->SetPtFractions (0, 0.05) ; ana->SetPtFractions (1, 0.1);   ana->SetPtFractions (2, 0.2) ;  ana->SetPtFractions (3, 0.3) ;
    ana->SetSumPtThresholds(0, 1) ; ana->SetSumPtThresholds(1, 3) ; ana->SetSumPtThresholds(2, 5);  ana->SetSumPtThresholds(3, 7)  ;
    
    ana->SwitchOffTMHistoFill();
    ana->SwitchOffSSHistoFill();
  }
  else      
    ana->SwitchOffSeveralIsolation() ;
  
  AliCaloPID* caloPID = ana->GetCaloPID();
  caloPID->SetEMCALDEtaCut(0.025);
  caloPID->SetEMCALDPhiCut(0.030);
  
  //Set Histograms name tag, bins and ranges
  
  if(!multi)ana->AddToHistogramsName(Form("AnaIsol%s_TM%d_",particle.Data(),tm));
  else      ana->AddToHistogramsName(Form("AnaMultiIsol%s_TM%d_",particle.Data(),tm));

  SetHistoRangeAndNBins(ana->GetHistogramRanges(),calorimeter); // see method below
  
  if(particle=="Hadron"  || particle.Contains("CTS"))
  {
    ana->GetHistogramRanges()->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 200) ;
    ana->GetHistogramRanges()->SetHistoEtaRangeAndNBins(-1.5, 1.5, 300) ;
  }
  
  ConfigureMC(ana,simulation);
  
  if(printSettings) ic ->Print("");
  if(printSettings) ana->Print("");
  
  return ana;
  
}

//________________________________________________________
void ConfigureMC(AliAnaCaloTrackCorrBaseClass* ana,Bool_t simulation = kFALSE)
{
  if(simulation) ana->SwitchOnDataMC() ;//Access MC stack and fill more histograms, AOD MC not implemented yet.
  else            ana->SwitchOffDataMC() ;

  //Set here generator name, default pythia
  //ana->GetMCAnalysisUtils()->SetMCGenerator("");
}  

//________________________________________________________
void SetHistoRangeAndNBins (AliHistogramRanges* histoRanges,TString calorimeter = "EMCAL")
{
  // Set common bins for all analysis and MC histograms filling
    
  histoRanges->SetHistoPtRangeAndNBins(-0.25, 99.75, 200) ; // Energy and pt histograms
  
  if(calorimeter=="EMCAL")
  {
    histoRanges->SetHistoPhiRangeAndNBins(78*TMath::DegToRad(), 182*TMath::DegToRad(), 108) ;
    histoRanges->SetHistoXRangeAndNBins(-600,90,200); // QA
    histoRanges->SetHistoYRangeAndNBins(100,450,100); // QA

    histoRanges->SetHistoEtaRangeAndNBins(-0.72, 0.72, 144) ;
  }
  else
  {
    histoRanges->SetHistoPhiRangeAndNBins(260*TMath::DegToRad(), 320*TMath::DegToRad(), 60) ;
    histoRanges->SetHistoEtaRangeAndNBins(-0.13, 0.13, 130) ;
  }
  
  histoRanges->SetHistoShowerShapeRangeAndNBins(-0.1, 4.9, 500);
  
  // Invariant mass histoRangeslysis
  histoRanges->SetHistoMassRangeAndNBins(0., 1., 200) ;
  histoRanges->SetHistoAsymmetryRangeAndNBins(0., 1. , 100) ;
  
  // check if time calibration is on
  //histoRanges->SetHistoTimeRangeAndNBins(-1000.,1000,1000);
  histoRanges->SetHistoTimeRangeAndNBins(-400.,400,400);
  histoRanges->SetHistoDiffTimeRangeAndNBins(-200, 200, 800);
  
  // track-cluster residuals
  histoRanges->SetHistoTrackResidualEtaRangeAndNBins(-0.15,0.15,300);
  histoRanges->SetHistoTrackResidualPhiRangeAndNBins(-0.15,0.15,300);
  histoRanges->SetHistodRRangeAndNBins(0.,0.15,150);//QA

  // QA, electron, charged
  histoRanges->SetHistoPOverERangeAndNBins(0,10.,100);
  histoRanges->SetHistodEdxRangeAndNBins(0.,200.,200);
  
  // QA
  histoRanges->SetHistoFinePtRangeAndNBins(0, 10, 200) ; // bining for fhAmpId
  histoRanges->SetHistoRatioRangeAndNBins(0.,2.,100);
  histoRanges->SetHistoVertexDistRangeAndNBins(0.,500.,500);
  histoRanges->SetHistoNClusterCellRangeAndNBins(0,500,500);
  histoRanges->SetHistoZRangeAndNBins(-400,400,200);
  histoRanges->SetHistoRRangeAndNBins(400,450,25);
  histoRanges->SetHistoV0SignalRangeAndNBins(0,5000,500);
  histoRanges->SetHistoV0MultiplicityRangeAndNBins(0,5000,500);
  histoRanges->SetHistoTrackMultiplicityRangeAndNBins(0,5000,500);
  
  // Isolation
  histoRanges->SetHistoPtInConeRangeAndNBins(0, 50 , 250);
  histoRanges->SetHistoPtSumRangeAndNBins   (0, 100, 250);
  
}

//_________________
UInt_t SetTriggerMaskFromName(TString trigger)
{
  if(trigger=="EMC7")
  {
    printf("CaloTrackCorr trigger EMC7\n");
    return AliVEvent::kEMC7;
  }
  else if (trigger=="INT7")
  {
    printf("CaloTrackCorr trigger INT7\n");
    return AliVEvent::kINT7;
  }
  else if(trigger=="EMC1")
  {
    printf("CaloTrackCorr trigger EMC1\n");
    return AliVEvent::kEMC1;
  }
  else if(trigger=="MB")
  {
    printf("CaloTrackCorr trigger MB\n");
    return AliVEvent::kMB;
  }  
  else if(trigger=="PHOS")
  {
    printf("CaloTrackCorr trigger PHOS\n");
    return AliVEvent::kPHI7;
  }  
  else if(trigger=="PHOSPb")
  {
    printf("CaloTrackCorr trigger PHOSPb\n");
    return AliVEvent::kPHOSPb;
  }
  else if(trigger=="AnyINT")
  {
    printf("CaloTrackCorr trigger AnyINT\n");
    return AliVEvent::kAnyINT;
  }  
  else if(trigger=="INT")
  {
    printf("CaloTrackCorr trigger AnyINT\n");
    return AliVEvent::kAny;
  }
  else if(trigger=="EMCEGA")
  {
    printf("CaloTrackCorr trigger EMC Gamma\n");
    return AliVEvent::kEMCEGA;
  } 
  else if(trigger=="EMCEJE")
  {
    printf("CaloTrackCorr trigger EMC Jet\n");
    return AliVEvent::kEMCEJE;
  }
  else if(trigger=="Central")
  {
    printf("CaloTrackCorr trigger Central\n");
    return AliVEvent::kCentral;
  } 
  else if(trigger=="CentralEGA")
  {
    printf("CaloTrackCorr trigger Central+EMCEGA\n");
    return (AliVEvent::kCentral | AliVEvent::kEMCEGA);
  } 
  else if(trigger=="SemiCentral")
  {
    printf("CaloTrackCorr trigger SemiCentral\n");
    return AliVEvent::kSemiCentral;
  }
  else if(trigger=="SemiOrCentral")
  {
    printf("CaloTrackCorr trigger SemiCentral Or Central\n");
    return (AliVEvent::kSemiCentral | AliVEvent::kCentral);
  }  
  else if(trigger=="SemiOrCentralOrAnyINT")
    {
      printf("CaloTrackCorr trigger SemiCentral Or Central Or AnyINT\n");
      return (AliVEvent::kSemiCentral | AliVEvent::kCentral | AliVEvent::kAnyINT);
    }

}

AliAnaParticleJetFinderCorrelation* ConfigurePhotonJetAnalysis(TString calorimeter = "EMCAL",Float_t gammaConeSize = 0.3, Float_t  jetMinPt  = 0, 
							       Float_t  minDeltaPhi   = 1.5,Float_t  maxDeltaPhi   = 4.5,
							       Float_t  minPtRatio    = 0,Float_t  maxPtRatio    = 5,
							       Bool_t simulation = kFALSE,Int_t debug = -1,Bool_t printSettings = kFALSE){

  AliAnaParticleJetFinderCorrelation *ana = new AliAnaParticleJetFinderCorrelation();
  ana->SetDebug(debug);
  TString particle="Photon";
  ana->SetInputAODName(Form("%s%s",particle.Data(),kGammaJetCorrelationName.Data()));

  ana->SwitchOffFiducialCut();

  ana->SetConeSize(0.4); //was 1 - cone to calculate FF
  ana->SelectIsolated(kTRUE); // do correlation with isolated photons <<---changed here
  ana->SetMakeCorrelationInHistoMaker(kFALSE);
  ana->SetPtThresholdInCone(0.150);//<<---- change here
  //ana->SetDeltaPhiCutRange(TMath::Pi()/2.,TMath::Pi()*3./2.);//Mostly Open Cuts 
  ana->SetDeltaPhiCutRange(minDeltaPhi,maxDeltaPhi);  // Delta phi cut for correlation
  ana->SetJetConeSize(0.4);//jet cone size / check the reco jet name
  ana->SetJetMinPt(jetMinPt);//min jet pt
  ana->SetJetAreaFraction(0.8);//min area fraction was 0.6
  ana->SetMinPt(0.3);//min cluster pt repeated from reader
  ana->SetGammaConeSize(gammaConeSize);//isolation cone repeated from isolation ana
  //ana->SetRatioCutRange(0.01,5.); //Mostly Open Cuts //0.01-5//<<---- change here
  ana->SetRatioCutRange(minPtRatio,maxPtRatio); // Delta pt cut for correlation

  ana->UseJetRefTracks(kTRUE); //Working now
  //Set Histograms bins and ranges
  SetHistoRangeAndNBins(ana->GetHistogramRanges(),calorimeter); // see method below 0,100,200
  //ana->SetHistoPtRangeAndNBins(0, 50, 200) ;
  //      ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
  //      ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;

  //  ana->SwitchOnNonStandardJetFromReader();
  ana->SwitchOnBackgroundJetFromReader();
  //background subtraction for photons
  //ana->SwitchOnBackgroundSubtractionGamma();
  ana->SwitchOffBackgroundSubtractionGamma();

  ana->SwitchOnSaveGJTree();
  ana->SwitchOnMostOpposite();
  //ana->SwitchOnMostEnergetic();


  //if(useKinematics) ana->SwitchOnDataMC() ;//Access MC stack and fill more histograms
  if(printSettings) 
    ana->Print("");

  return ana;

}
 AddTaskGammaJetCorrelation.C:1
 AddTaskGammaJetCorrelation.C:2
 AddTaskGammaJetCorrelation.C:3
 AddTaskGammaJetCorrelation.C:4
 AddTaskGammaJetCorrelation.C:5
 AddTaskGammaJetCorrelation.C:6
 AddTaskGammaJetCorrelation.C:7
 AddTaskGammaJetCorrelation.C:8
 AddTaskGammaJetCorrelation.C:9
 AddTaskGammaJetCorrelation.C:10
 AddTaskGammaJetCorrelation.C:11
 AddTaskGammaJetCorrelation.C:12
 AddTaskGammaJetCorrelation.C:13
 AddTaskGammaJetCorrelation.C:14
 AddTaskGammaJetCorrelation.C:15
 AddTaskGammaJetCorrelation.C:16
 AddTaskGammaJetCorrelation.C:17
 AddTaskGammaJetCorrelation.C:18
 AddTaskGammaJetCorrelation.C:19
 AddTaskGammaJetCorrelation.C:20
 AddTaskGammaJetCorrelation.C:21
 AddTaskGammaJetCorrelation.C:22
 AddTaskGammaJetCorrelation.C:23
 AddTaskGammaJetCorrelation.C:24
 AddTaskGammaJetCorrelation.C:25
 AddTaskGammaJetCorrelation.C:26
 AddTaskGammaJetCorrelation.C:27
 AddTaskGammaJetCorrelation.C:28
 AddTaskGammaJetCorrelation.C:29
 AddTaskGammaJetCorrelation.C:30
 AddTaskGammaJetCorrelation.C:31
 AddTaskGammaJetCorrelation.C:32
 AddTaskGammaJetCorrelation.C:33
 AddTaskGammaJetCorrelation.C:34
 AddTaskGammaJetCorrelation.C:35
 AddTaskGammaJetCorrelation.C:36
 AddTaskGammaJetCorrelation.C:37
 AddTaskGammaJetCorrelation.C:38
 AddTaskGammaJetCorrelation.C:39
 AddTaskGammaJetCorrelation.C:40
 AddTaskGammaJetCorrelation.C:41
 AddTaskGammaJetCorrelation.C:42
 AddTaskGammaJetCorrelation.C:43
 AddTaskGammaJetCorrelation.C:44
 AddTaskGammaJetCorrelation.C:45
 AddTaskGammaJetCorrelation.C:46
 AddTaskGammaJetCorrelation.C:47
 AddTaskGammaJetCorrelation.C:48
 AddTaskGammaJetCorrelation.C:49
 AddTaskGammaJetCorrelation.C:50
 AddTaskGammaJetCorrelation.C:51
 AddTaskGammaJetCorrelation.C:52
 AddTaskGammaJetCorrelation.C:53
 AddTaskGammaJetCorrelation.C:54
 AddTaskGammaJetCorrelation.C:55
 AddTaskGammaJetCorrelation.C:56
 AddTaskGammaJetCorrelation.C:57
 AddTaskGammaJetCorrelation.C:58
 AddTaskGammaJetCorrelation.C:59
 AddTaskGammaJetCorrelation.C:60
 AddTaskGammaJetCorrelation.C:61
 AddTaskGammaJetCorrelation.C:62
 AddTaskGammaJetCorrelation.C:63
 AddTaskGammaJetCorrelation.C:64
 AddTaskGammaJetCorrelation.C:65
 AddTaskGammaJetCorrelation.C:66
 AddTaskGammaJetCorrelation.C:67
 AddTaskGammaJetCorrelation.C:68
 AddTaskGammaJetCorrelation.C:69
 AddTaskGammaJetCorrelation.C:70
 AddTaskGammaJetCorrelation.C:71
 AddTaskGammaJetCorrelation.C:72
 AddTaskGammaJetCorrelation.C:73
 AddTaskGammaJetCorrelation.C:74
 AddTaskGammaJetCorrelation.C:75
 AddTaskGammaJetCorrelation.C:76
 AddTaskGammaJetCorrelation.C:77
 AddTaskGammaJetCorrelation.C:78
 AddTaskGammaJetCorrelation.C:79
 AddTaskGammaJetCorrelation.C:80
 AddTaskGammaJetCorrelation.C:81
 AddTaskGammaJetCorrelation.C:82
 AddTaskGammaJetCorrelation.C:83
 AddTaskGammaJetCorrelation.C:84
 AddTaskGammaJetCorrelation.C:85
 AddTaskGammaJetCorrelation.C:86
 AddTaskGammaJetCorrelation.C:87
 AddTaskGammaJetCorrelation.C:88
 AddTaskGammaJetCorrelation.C:89
 AddTaskGammaJetCorrelation.C:90
 AddTaskGammaJetCorrelation.C:91
 AddTaskGammaJetCorrelation.C:92
 AddTaskGammaJetCorrelation.C:93
 AddTaskGammaJetCorrelation.C:94
 AddTaskGammaJetCorrelation.C:95
 AddTaskGammaJetCorrelation.C:96
 AddTaskGammaJetCorrelation.C:97
 AddTaskGammaJetCorrelation.C:98
 AddTaskGammaJetCorrelation.C:99
 AddTaskGammaJetCorrelation.C:100
 AddTaskGammaJetCorrelation.C:101
 AddTaskGammaJetCorrelation.C:102
 AddTaskGammaJetCorrelation.C:103
 AddTaskGammaJetCorrelation.C:104
 AddTaskGammaJetCorrelation.C:105
 AddTaskGammaJetCorrelation.C:106
 AddTaskGammaJetCorrelation.C:107
 AddTaskGammaJetCorrelation.C:108
 AddTaskGammaJetCorrelation.C:109
 AddTaskGammaJetCorrelation.C:110
 AddTaskGammaJetCorrelation.C:111
 AddTaskGammaJetCorrelation.C:112
 AddTaskGammaJetCorrelation.C:113
 AddTaskGammaJetCorrelation.C:114
 AddTaskGammaJetCorrelation.C:115
 AddTaskGammaJetCorrelation.C:116
 AddTaskGammaJetCorrelation.C:117
 AddTaskGammaJetCorrelation.C:118
 AddTaskGammaJetCorrelation.C:119
 AddTaskGammaJetCorrelation.C:120
 AddTaskGammaJetCorrelation.C:121
 AddTaskGammaJetCorrelation.C:122
 AddTaskGammaJetCorrelation.C:123
 AddTaskGammaJetCorrelation.C:124
 AddTaskGammaJetCorrelation.C:125
 AddTaskGammaJetCorrelation.C:126
 AddTaskGammaJetCorrelation.C:127
 AddTaskGammaJetCorrelation.C:128
 AddTaskGammaJetCorrelation.C:129
 AddTaskGammaJetCorrelation.C:130
 AddTaskGammaJetCorrelation.C:131
 AddTaskGammaJetCorrelation.C:132
 AddTaskGammaJetCorrelation.C:133
 AddTaskGammaJetCorrelation.C:134
 AddTaskGammaJetCorrelation.C:135
 AddTaskGammaJetCorrelation.C:136
 AddTaskGammaJetCorrelation.C:137
 AddTaskGammaJetCorrelation.C:138
 AddTaskGammaJetCorrelation.C:139
 AddTaskGammaJetCorrelation.C:140
 AddTaskGammaJetCorrelation.C:141
 AddTaskGammaJetCorrelation.C:142
 AddTaskGammaJetCorrelation.C:143
 AddTaskGammaJetCorrelation.C:144
 AddTaskGammaJetCorrelation.C:145
 AddTaskGammaJetCorrelation.C:146
 AddTaskGammaJetCorrelation.C:147
 AddTaskGammaJetCorrelation.C:148
 AddTaskGammaJetCorrelation.C:149
 AddTaskGammaJetCorrelation.C:150
 AddTaskGammaJetCorrelation.C:151
 AddTaskGammaJetCorrelation.C:152
 AddTaskGammaJetCorrelation.C:153
 AddTaskGammaJetCorrelation.C:154
 AddTaskGammaJetCorrelation.C:155
 AddTaskGammaJetCorrelation.C:156
 AddTaskGammaJetCorrelation.C:157
 AddTaskGammaJetCorrelation.C:158
 AddTaskGammaJetCorrelation.C:159
 AddTaskGammaJetCorrelation.C:160
 AddTaskGammaJetCorrelation.C:161
 AddTaskGammaJetCorrelation.C:162
 AddTaskGammaJetCorrelation.C:163
 AddTaskGammaJetCorrelation.C:164
 AddTaskGammaJetCorrelation.C:165
 AddTaskGammaJetCorrelation.C:166
 AddTaskGammaJetCorrelation.C:167
 AddTaskGammaJetCorrelation.C:168
 AddTaskGammaJetCorrelation.C:169
 AddTaskGammaJetCorrelation.C:170
 AddTaskGammaJetCorrelation.C:171
 AddTaskGammaJetCorrelation.C:172
 AddTaskGammaJetCorrelation.C:173
 AddTaskGammaJetCorrelation.C:174
 AddTaskGammaJetCorrelation.C:175
 AddTaskGammaJetCorrelation.C:176
 AddTaskGammaJetCorrelation.C:177
 AddTaskGammaJetCorrelation.C:178
 AddTaskGammaJetCorrelation.C:179
 AddTaskGammaJetCorrelation.C:180
 AddTaskGammaJetCorrelation.C:181
 AddTaskGammaJetCorrelation.C:182
 AddTaskGammaJetCorrelation.C:183
 AddTaskGammaJetCorrelation.C:184
 AddTaskGammaJetCorrelation.C:185
 AddTaskGammaJetCorrelation.C:186
 AddTaskGammaJetCorrelation.C:187
 AddTaskGammaJetCorrelation.C:188
 AddTaskGammaJetCorrelation.C:189
 AddTaskGammaJetCorrelation.C:190
 AddTaskGammaJetCorrelation.C:191
 AddTaskGammaJetCorrelation.C:192
 AddTaskGammaJetCorrelation.C:193
 AddTaskGammaJetCorrelation.C:194
 AddTaskGammaJetCorrelation.C:195
 AddTaskGammaJetCorrelation.C:196
 AddTaskGammaJetCorrelation.C:197
 AddTaskGammaJetCorrelation.C:198
 AddTaskGammaJetCorrelation.C:199
 AddTaskGammaJetCorrelation.C:200
 AddTaskGammaJetCorrelation.C:201
 AddTaskGammaJetCorrelation.C:202
 AddTaskGammaJetCorrelation.C:203
 AddTaskGammaJetCorrelation.C:204
 AddTaskGammaJetCorrelation.C:205
 AddTaskGammaJetCorrelation.C:206
 AddTaskGammaJetCorrelation.C:207
 AddTaskGammaJetCorrelation.C:208
 AddTaskGammaJetCorrelation.C:209
 AddTaskGammaJetCorrelation.C:210
 AddTaskGammaJetCorrelation.C:211
 AddTaskGammaJetCorrelation.C:212
 AddTaskGammaJetCorrelation.C:213
 AddTaskGammaJetCorrelation.C:214
 AddTaskGammaJetCorrelation.C:215
 AddTaskGammaJetCorrelation.C:216
 AddTaskGammaJetCorrelation.C:217
 AddTaskGammaJetCorrelation.C:218
 AddTaskGammaJetCorrelation.C:219
 AddTaskGammaJetCorrelation.C:220
 AddTaskGammaJetCorrelation.C:221
 AddTaskGammaJetCorrelation.C:222
 AddTaskGammaJetCorrelation.C:223
 AddTaskGammaJetCorrelation.C:224
 AddTaskGammaJetCorrelation.C:225
 AddTaskGammaJetCorrelation.C:226
 AddTaskGammaJetCorrelation.C:227
 AddTaskGammaJetCorrelation.C:228
 AddTaskGammaJetCorrelation.C:229
 AddTaskGammaJetCorrelation.C:230
 AddTaskGammaJetCorrelation.C:231
 AddTaskGammaJetCorrelation.C:232
 AddTaskGammaJetCorrelation.C:233
 AddTaskGammaJetCorrelation.C:234
 AddTaskGammaJetCorrelation.C:235
 AddTaskGammaJetCorrelation.C:236
 AddTaskGammaJetCorrelation.C:237
 AddTaskGammaJetCorrelation.C:238
 AddTaskGammaJetCorrelation.C:239
 AddTaskGammaJetCorrelation.C:240
 AddTaskGammaJetCorrelation.C:241
 AddTaskGammaJetCorrelation.C:242
 AddTaskGammaJetCorrelation.C:243
 AddTaskGammaJetCorrelation.C:244
 AddTaskGammaJetCorrelation.C:245
 AddTaskGammaJetCorrelation.C:246
 AddTaskGammaJetCorrelation.C:247
 AddTaskGammaJetCorrelation.C:248
 AddTaskGammaJetCorrelation.C:249
 AddTaskGammaJetCorrelation.C:250
 AddTaskGammaJetCorrelation.C:251
 AddTaskGammaJetCorrelation.C:252
 AddTaskGammaJetCorrelation.C:253
 AddTaskGammaJetCorrelation.C:254
 AddTaskGammaJetCorrelation.C:255
 AddTaskGammaJetCorrelation.C:256
 AddTaskGammaJetCorrelation.C:257
 AddTaskGammaJetCorrelation.C:258
 AddTaskGammaJetCorrelation.C:259
 AddTaskGammaJetCorrelation.C:260
 AddTaskGammaJetCorrelation.C:261
 AddTaskGammaJetCorrelation.C:262
 AddTaskGammaJetCorrelation.C:263
 AddTaskGammaJetCorrelation.C:264
 AddTaskGammaJetCorrelation.C:265
 AddTaskGammaJetCorrelation.C:266
 AddTaskGammaJetCorrelation.C:267
 AddTaskGammaJetCorrelation.C:268
 AddTaskGammaJetCorrelation.C:269
 AddTaskGammaJetCorrelation.C:270
 AddTaskGammaJetCorrelation.C:271
 AddTaskGammaJetCorrelation.C:272
 AddTaskGammaJetCorrelation.C:273
 AddTaskGammaJetCorrelation.C:274
 AddTaskGammaJetCorrelation.C:275
 AddTaskGammaJetCorrelation.C:276
 AddTaskGammaJetCorrelation.C:277
 AddTaskGammaJetCorrelation.C:278
 AddTaskGammaJetCorrelation.C:279
 AddTaskGammaJetCorrelation.C:280
 AddTaskGammaJetCorrelation.C:281
 AddTaskGammaJetCorrelation.C:282
 AddTaskGammaJetCorrelation.C:283
 AddTaskGammaJetCorrelation.C:284
 AddTaskGammaJetCorrelation.C:285
 AddTaskGammaJetCorrelation.C:286
 AddTaskGammaJetCorrelation.C:287
 AddTaskGammaJetCorrelation.C:288
 AddTaskGammaJetCorrelation.C:289
 AddTaskGammaJetCorrelation.C:290
 AddTaskGammaJetCorrelation.C:291
 AddTaskGammaJetCorrelation.C:292
 AddTaskGammaJetCorrelation.C:293
 AddTaskGammaJetCorrelation.C:294
 AddTaskGammaJetCorrelation.C:295
 AddTaskGammaJetCorrelation.C:296
 AddTaskGammaJetCorrelation.C:297
 AddTaskGammaJetCorrelation.C:298
 AddTaskGammaJetCorrelation.C:299
 AddTaskGammaJetCorrelation.C:300
 AddTaskGammaJetCorrelation.C:301
 AddTaskGammaJetCorrelation.C:302
 AddTaskGammaJetCorrelation.C:303
 AddTaskGammaJetCorrelation.C:304
 AddTaskGammaJetCorrelation.C:305
 AddTaskGammaJetCorrelation.C:306
 AddTaskGammaJetCorrelation.C:307
 AddTaskGammaJetCorrelation.C:308
 AddTaskGammaJetCorrelation.C:309
 AddTaskGammaJetCorrelation.C:310
 AddTaskGammaJetCorrelation.C:311
 AddTaskGammaJetCorrelation.C:312
 AddTaskGammaJetCorrelation.C:313
 AddTaskGammaJetCorrelation.C:314
 AddTaskGammaJetCorrelation.C:315
 AddTaskGammaJetCorrelation.C:316
 AddTaskGammaJetCorrelation.C:317
 AddTaskGammaJetCorrelation.C:318
 AddTaskGammaJetCorrelation.C:319
 AddTaskGammaJetCorrelation.C:320
 AddTaskGammaJetCorrelation.C:321
 AddTaskGammaJetCorrelation.C:322
 AddTaskGammaJetCorrelation.C:323
 AddTaskGammaJetCorrelation.C:324
 AddTaskGammaJetCorrelation.C:325
 AddTaskGammaJetCorrelation.C:326
 AddTaskGammaJetCorrelation.C:327
 AddTaskGammaJetCorrelation.C:328
 AddTaskGammaJetCorrelation.C:329
 AddTaskGammaJetCorrelation.C:330
 AddTaskGammaJetCorrelation.C:331
 AddTaskGammaJetCorrelation.C:332
 AddTaskGammaJetCorrelation.C:333
 AddTaskGammaJetCorrelation.C:334
 AddTaskGammaJetCorrelation.C:335
 AddTaskGammaJetCorrelation.C:336
 AddTaskGammaJetCorrelation.C:337
 AddTaskGammaJetCorrelation.C:338
 AddTaskGammaJetCorrelation.C:339
 AddTaskGammaJetCorrelation.C:340
 AddTaskGammaJetCorrelation.C:341
 AddTaskGammaJetCorrelation.C:342
 AddTaskGammaJetCorrelation.C:343
 AddTaskGammaJetCorrelation.C:344
 AddTaskGammaJetCorrelation.C:345
 AddTaskGammaJetCorrelation.C:346
 AddTaskGammaJetCorrelation.C:347
 AddTaskGammaJetCorrelation.C:348
 AddTaskGammaJetCorrelation.C:349
 AddTaskGammaJetCorrelation.C:350
 AddTaskGammaJetCorrelation.C:351
 AddTaskGammaJetCorrelation.C:352
 AddTaskGammaJetCorrelation.C:353
 AddTaskGammaJetCorrelation.C:354
 AddTaskGammaJetCorrelation.C:355
 AddTaskGammaJetCorrelation.C:356
 AddTaskGammaJetCorrelation.C:357
 AddTaskGammaJetCorrelation.C:358
 AddTaskGammaJetCorrelation.C:359
 AddTaskGammaJetCorrelation.C:360
 AddTaskGammaJetCorrelation.C:361
 AddTaskGammaJetCorrelation.C:362
 AddTaskGammaJetCorrelation.C:363
 AddTaskGammaJetCorrelation.C:364
 AddTaskGammaJetCorrelation.C:365
 AddTaskGammaJetCorrelation.C:366
 AddTaskGammaJetCorrelation.C:367
 AddTaskGammaJetCorrelation.C:368
 AddTaskGammaJetCorrelation.C:369
 AddTaskGammaJetCorrelation.C:370
 AddTaskGammaJetCorrelation.C:371
 AddTaskGammaJetCorrelation.C:372
 AddTaskGammaJetCorrelation.C:373
 AddTaskGammaJetCorrelation.C:374
 AddTaskGammaJetCorrelation.C:375
 AddTaskGammaJetCorrelation.C:376
 AddTaskGammaJetCorrelation.C:377
 AddTaskGammaJetCorrelation.C:378
 AddTaskGammaJetCorrelation.C:379
 AddTaskGammaJetCorrelation.C:380
 AddTaskGammaJetCorrelation.C:381
 AddTaskGammaJetCorrelation.C:382
 AddTaskGammaJetCorrelation.C:383
 AddTaskGammaJetCorrelation.C:384
 AddTaskGammaJetCorrelation.C:385
 AddTaskGammaJetCorrelation.C:386
 AddTaskGammaJetCorrelation.C:387
 AddTaskGammaJetCorrelation.C:388
 AddTaskGammaJetCorrelation.C:389
 AddTaskGammaJetCorrelation.C:390
 AddTaskGammaJetCorrelation.C:391
 AddTaskGammaJetCorrelation.C:392
 AddTaskGammaJetCorrelation.C:393
 AddTaskGammaJetCorrelation.C:394
 AddTaskGammaJetCorrelation.C:395
 AddTaskGammaJetCorrelation.C:396
 AddTaskGammaJetCorrelation.C:397
 AddTaskGammaJetCorrelation.C:398
 AddTaskGammaJetCorrelation.C:399
 AddTaskGammaJetCorrelation.C:400
 AddTaskGammaJetCorrelation.C:401
 AddTaskGammaJetCorrelation.C:402
 AddTaskGammaJetCorrelation.C:403
 AddTaskGammaJetCorrelation.C:404
 AddTaskGammaJetCorrelation.C:405
 AddTaskGammaJetCorrelation.C:406
 AddTaskGammaJetCorrelation.C:407
 AddTaskGammaJetCorrelation.C:408
 AddTaskGammaJetCorrelation.C:409
 AddTaskGammaJetCorrelation.C:410
 AddTaskGammaJetCorrelation.C:411
 AddTaskGammaJetCorrelation.C:412
 AddTaskGammaJetCorrelation.C:413
 AddTaskGammaJetCorrelation.C:414
 AddTaskGammaJetCorrelation.C:415
 AddTaskGammaJetCorrelation.C:416
 AddTaskGammaJetCorrelation.C:417
 AddTaskGammaJetCorrelation.C:418
 AddTaskGammaJetCorrelation.C:419
 AddTaskGammaJetCorrelation.C:420
 AddTaskGammaJetCorrelation.C:421
 AddTaskGammaJetCorrelation.C:422
 AddTaskGammaJetCorrelation.C:423
 AddTaskGammaJetCorrelation.C:424
 AddTaskGammaJetCorrelation.C:425
 AddTaskGammaJetCorrelation.C:426
 AddTaskGammaJetCorrelation.C:427
 AddTaskGammaJetCorrelation.C:428
 AddTaskGammaJetCorrelation.C:429
 AddTaskGammaJetCorrelation.C:430
 AddTaskGammaJetCorrelation.C:431
 AddTaskGammaJetCorrelation.C:432
 AddTaskGammaJetCorrelation.C:433
 AddTaskGammaJetCorrelation.C:434
 AddTaskGammaJetCorrelation.C:435
 AddTaskGammaJetCorrelation.C:436
 AddTaskGammaJetCorrelation.C:437
 AddTaskGammaJetCorrelation.C:438
 AddTaskGammaJetCorrelation.C:439
 AddTaskGammaJetCorrelation.C:440
 AddTaskGammaJetCorrelation.C:441
 AddTaskGammaJetCorrelation.C:442
 AddTaskGammaJetCorrelation.C:443
 AddTaskGammaJetCorrelation.C:444
 AddTaskGammaJetCorrelation.C:445
 AddTaskGammaJetCorrelation.C:446
 AddTaskGammaJetCorrelation.C:447
 AddTaskGammaJetCorrelation.C:448
 AddTaskGammaJetCorrelation.C:449
 AddTaskGammaJetCorrelation.C:450
 AddTaskGammaJetCorrelation.C:451
 AddTaskGammaJetCorrelation.C:452
 AddTaskGammaJetCorrelation.C:453
 AddTaskGammaJetCorrelation.C:454
 AddTaskGammaJetCorrelation.C:455
 AddTaskGammaJetCorrelation.C:456
 AddTaskGammaJetCorrelation.C:457
 AddTaskGammaJetCorrelation.C:458
 AddTaskGammaJetCorrelation.C:459
 AddTaskGammaJetCorrelation.C:460
 AddTaskGammaJetCorrelation.C:461
 AddTaskGammaJetCorrelation.C:462
 AddTaskGammaJetCorrelation.C:463
 AddTaskGammaJetCorrelation.C:464
 AddTaskGammaJetCorrelation.C:465
 AddTaskGammaJetCorrelation.C:466
 AddTaskGammaJetCorrelation.C:467
 AddTaskGammaJetCorrelation.C:468
 AddTaskGammaJetCorrelation.C:469
 AddTaskGammaJetCorrelation.C:470
 AddTaskGammaJetCorrelation.C:471
 AddTaskGammaJetCorrelation.C:472
 AddTaskGammaJetCorrelation.C:473
 AddTaskGammaJetCorrelation.C:474
 AddTaskGammaJetCorrelation.C:475
 AddTaskGammaJetCorrelation.C:476
 AddTaskGammaJetCorrelation.C:477
 AddTaskGammaJetCorrelation.C:478
 AddTaskGammaJetCorrelation.C:479
 AddTaskGammaJetCorrelation.C:480
 AddTaskGammaJetCorrelation.C:481
 AddTaskGammaJetCorrelation.C:482
 AddTaskGammaJetCorrelation.C:483
 AddTaskGammaJetCorrelation.C:484
 AddTaskGammaJetCorrelation.C:485
 AddTaskGammaJetCorrelation.C:486
 AddTaskGammaJetCorrelation.C:487
 AddTaskGammaJetCorrelation.C:488
 AddTaskGammaJetCorrelation.C:489
 AddTaskGammaJetCorrelation.C:490
 AddTaskGammaJetCorrelation.C:491
 AddTaskGammaJetCorrelation.C:492
 AddTaskGammaJetCorrelation.C:493
 AddTaskGammaJetCorrelation.C:494
 AddTaskGammaJetCorrelation.C:495
 AddTaskGammaJetCorrelation.C:496
 AddTaskGammaJetCorrelation.C:497
 AddTaskGammaJetCorrelation.C:498
 AddTaskGammaJetCorrelation.C:499
 AddTaskGammaJetCorrelation.C:500
 AddTaskGammaJetCorrelation.C:501
 AddTaskGammaJetCorrelation.C:502
 AddTaskGammaJetCorrelation.C:503
 AddTaskGammaJetCorrelation.C:504
 AddTaskGammaJetCorrelation.C:505
 AddTaskGammaJetCorrelation.C:506
 AddTaskGammaJetCorrelation.C:507
 AddTaskGammaJetCorrelation.C:508
 AddTaskGammaJetCorrelation.C:509
 AddTaskGammaJetCorrelation.C:510
 AddTaskGammaJetCorrelation.C:511
 AddTaskGammaJetCorrelation.C:512
 AddTaskGammaJetCorrelation.C:513
 AddTaskGammaJetCorrelation.C:514
 AddTaskGammaJetCorrelation.C:515
 AddTaskGammaJetCorrelation.C:516
 AddTaskGammaJetCorrelation.C:517
 AddTaskGammaJetCorrelation.C:518
 AddTaskGammaJetCorrelation.C:519
 AddTaskGammaJetCorrelation.C:520
 AddTaskGammaJetCorrelation.C:521
 AddTaskGammaJetCorrelation.C:522
 AddTaskGammaJetCorrelation.C:523
 AddTaskGammaJetCorrelation.C:524
 AddTaskGammaJetCorrelation.C:525
 AddTaskGammaJetCorrelation.C:526
 AddTaskGammaJetCorrelation.C:527
 AddTaskGammaJetCorrelation.C:528
 AddTaskGammaJetCorrelation.C:529
 AddTaskGammaJetCorrelation.C:530
 AddTaskGammaJetCorrelation.C:531
 AddTaskGammaJetCorrelation.C:532
 AddTaskGammaJetCorrelation.C:533
 AddTaskGammaJetCorrelation.C:534
 AddTaskGammaJetCorrelation.C:535
 AddTaskGammaJetCorrelation.C:536
 AddTaskGammaJetCorrelation.C:537
 AddTaskGammaJetCorrelation.C:538
 AddTaskGammaJetCorrelation.C:539
 AddTaskGammaJetCorrelation.C:540
 AddTaskGammaJetCorrelation.C:541
 AddTaskGammaJetCorrelation.C:542
 AddTaskGammaJetCorrelation.C:543
 AddTaskGammaJetCorrelation.C:544
 AddTaskGammaJetCorrelation.C:545
 AddTaskGammaJetCorrelation.C:546
 AddTaskGammaJetCorrelation.C:547
 AddTaskGammaJetCorrelation.C:548
 AddTaskGammaJetCorrelation.C:549
 AddTaskGammaJetCorrelation.C:550
 AddTaskGammaJetCorrelation.C:551
 AddTaskGammaJetCorrelation.C:552
 AddTaskGammaJetCorrelation.C:553
 AddTaskGammaJetCorrelation.C:554
 AddTaskGammaJetCorrelation.C:555
 AddTaskGammaJetCorrelation.C:556
 AddTaskGammaJetCorrelation.C:557
 AddTaskGammaJetCorrelation.C:558
 AddTaskGammaJetCorrelation.C:559
 AddTaskGammaJetCorrelation.C:560
 AddTaskGammaJetCorrelation.C:561
 AddTaskGammaJetCorrelation.C:562
 AddTaskGammaJetCorrelation.C:563
 AddTaskGammaJetCorrelation.C:564
 AddTaskGammaJetCorrelation.C:565
 AddTaskGammaJetCorrelation.C:566
 AddTaskGammaJetCorrelation.C:567
 AddTaskGammaJetCorrelation.C:568
 AddTaskGammaJetCorrelation.C:569
 AddTaskGammaJetCorrelation.C:570
 AddTaskGammaJetCorrelation.C:571
 AddTaskGammaJetCorrelation.C:572
 AddTaskGammaJetCorrelation.C:573
 AddTaskGammaJetCorrelation.C:574
 AddTaskGammaJetCorrelation.C:575
 AddTaskGammaJetCorrelation.C:576
 AddTaskGammaJetCorrelation.C:577
 AddTaskGammaJetCorrelation.C:578
 AddTaskGammaJetCorrelation.C:579
 AddTaskGammaJetCorrelation.C:580
 AddTaskGammaJetCorrelation.C:581
 AddTaskGammaJetCorrelation.C:582
 AddTaskGammaJetCorrelation.C:583
 AddTaskGammaJetCorrelation.C:584
 AddTaskGammaJetCorrelation.C:585
 AddTaskGammaJetCorrelation.C:586
 AddTaskGammaJetCorrelation.C:587
 AddTaskGammaJetCorrelation.C:588
 AddTaskGammaJetCorrelation.C:589
 AddTaskGammaJetCorrelation.C:590
 AddTaskGammaJetCorrelation.C:591
 AddTaskGammaJetCorrelation.C:592
 AddTaskGammaJetCorrelation.C:593
 AddTaskGammaJetCorrelation.C:594
 AddTaskGammaJetCorrelation.C:595
 AddTaskGammaJetCorrelation.C:596
 AddTaskGammaJetCorrelation.C:597
 AddTaskGammaJetCorrelation.C:598
 AddTaskGammaJetCorrelation.C:599
 AddTaskGammaJetCorrelation.C:600
 AddTaskGammaJetCorrelation.C:601
 AddTaskGammaJetCorrelation.C:602
 AddTaskGammaJetCorrelation.C:603
 AddTaskGammaJetCorrelation.C:604
 AddTaskGammaJetCorrelation.C:605
 AddTaskGammaJetCorrelation.C:606
 AddTaskGammaJetCorrelation.C:607
 AddTaskGammaJetCorrelation.C:608
 AddTaskGammaJetCorrelation.C:609
 AddTaskGammaJetCorrelation.C:610
 AddTaskGammaJetCorrelation.C:611
 AddTaskGammaJetCorrelation.C:612
 AddTaskGammaJetCorrelation.C:613
 AddTaskGammaJetCorrelation.C:614
 AddTaskGammaJetCorrelation.C:615
 AddTaskGammaJetCorrelation.C:616
 AddTaskGammaJetCorrelation.C:617
 AddTaskGammaJetCorrelation.C:618
 AddTaskGammaJetCorrelation.C:619
 AddTaskGammaJetCorrelation.C:620
 AddTaskGammaJetCorrelation.C:621
 AddTaskGammaJetCorrelation.C:622
 AddTaskGammaJetCorrelation.C:623
 AddTaskGammaJetCorrelation.C:624
 AddTaskGammaJetCorrelation.C:625
 AddTaskGammaJetCorrelation.C:626
 AddTaskGammaJetCorrelation.C:627
 AddTaskGammaJetCorrelation.C:628
 AddTaskGammaJetCorrelation.C:629
 AddTaskGammaJetCorrelation.C:630
 AddTaskGammaJetCorrelation.C:631
 AddTaskGammaJetCorrelation.C:632
 AddTaskGammaJetCorrelation.C:633
 AddTaskGammaJetCorrelation.C:634
 AddTaskGammaJetCorrelation.C:635
 AddTaskGammaJetCorrelation.C:636
 AddTaskGammaJetCorrelation.C:637
 AddTaskGammaJetCorrelation.C:638
 AddTaskGammaJetCorrelation.C:639
 AddTaskGammaJetCorrelation.C:640
 AddTaskGammaJetCorrelation.C:641
 AddTaskGammaJetCorrelation.C:642
 AddTaskGammaJetCorrelation.C:643
 AddTaskGammaJetCorrelation.C:644
 AddTaskGammaJetCorrelation.C:645
 AddTaskGammaJetCorrelation.C:646
 AddTaskGammaJetCorrelation.C:647
 AddTaskGammaJetCorrelation.C:648
 AddTaskGammaJetCorrelation.C:649
 AddTaskGammaJetCorrelation.C:650
 AddTaskGammaJetCorrelation.C:651
 AddTaskGammaJetCorrelation.C:652
 AddTaskGammaJetCorrelation.C:653
 AddTaskGammaJetCorrelation.C:654
 AddTaskGammaJetCorrelation.C:655
 AddTaskGammaJetCorrelation.C:656
 AddTaskGammaJetCorrelation.C:657
 AddTaskGammaJetCorrelation.C:658
 AddTaskGammaJetCorrelation.C:659
 AddTaskGammaJetCorrelation.C:660
 AddTaskGammaJetCorrelation.C:661
 AddTaskGammaJetCorrelation.C:662
 AddTaskGammaJetCorrelation.C:663
 AddTaskGammaJetCorrelation.C:664
 AddTaskGammaJetCorrelation.C:665
 AddTaskGammaJetCorrelation.C:666
 AddTaskGammaJetCorrelation.C:667
 AddTaskGammaJetCorrelation.C:668
 AddTaskGammaJetCorrelation.C:669
 AddTaskGammaJetCorrelation.C:670
 AddTaskGammaJetCorrelation.C:671
 AddTaskGammaJetCorrelation.C:672
 AddTaskGammaJetCorrelation.C:673
 AddTaskGammaJetCorrelation.C:674
 AddTaskGammaJetCorrelation.C:675
 AddTaskGammaJetCorrelation.C:676
 AddTaskGammaJetCorrelation.C:677
 AddTaskGammaJetCorrelation.C:678
 AddTaskGammaJetCorrelation.C:679
 AddTaskGammaJetCorrelation.C:680
 AddTaskGammaJetCorrelation.C:681
 AddTaskGammaJetCorrelation.C:682
 AddTaskGammaJetCorrelation.C:683
 AddTaskGammaJetCorrelation.C:684
 AddTaskGammaJetCorrelation.C:685
 AddTaskGammaJetCorrelation.C:686
 AddTaskGammaJetCorrelation.C:687
 AddTaskGammaJetCorrelation.C:688
 AddTaskGammaJetCorrelation.C:689
 AddTaskGammaJetCorrelation.C:690
 AddTaskGammaJetCorrelation.C:691
 AddTaskGammaJetCorrelation.C:692
 AddTaskGammaJetCorrelation.C:693
 AddTaskGammaJetCorrelation.C:694
 AddTaskGammaJetCorrelation.C:695
 AddTaskGammaJetCorrelation.C:696
 AddTaskGammaJetCorrelation.C:697
 AddTaskGammaJetCorrelation.C:698
 AddTaskGammaJetCorrelation.C:699
 AddTaskGammaJetCorrelation.C:700
 AddTaskGammaJetCorrelation.C:701
 AddTaskGammaJetCorrelation.C:702
 AddTaskGammaJetCorrelation.C:703
 AddTaskGammaJetCorrelation.C:704
 AddTaskGammaJetCorrelation.C:705
 AddTaskGammaJetCorrelation.C:706
 AddTaskGammaJetCorrelation.C:707
 AddTaskGammaJetCorrelation.C:708
 AddTaskGammaJetCorrelation.C:709
 AddTaskGammaJetCorrelation.C:710
 AddTaskGammaJetCorrelation.C:711
 AddTaskGammaJetCorrelation.C:712
 AddTaskGammaJetCorrelation.C:713
 AddTaskGammaJetCorrelation.C:714
 AddTaskGammaJetCorrelation.C:715
 AddTaskGammaJetCorrelation.C:716
 AddTaskGammaJetCorrelation.C:717
 AddTaskGammaJetCorrelation.C:718
 AddTaskGammaJetCorrelation.C:719
 AddTaskGammaJetCorrelation.C:720
 AddTaskGammaJetCorrelation.C:721
 AddTaskGammaJetCorrelation.C:722
 AddTaskGammaJetCorrelation.C:723
 AddTaskGammaJetCorrelation.C:724
 AddTaskGammaJetCorrelation.C:725
 AddTaskGammaJetCorrelation.C:726
 AddTaskGammaJetCorrelation.C:727
 AddTaskGammaJetCorrelation.C:728
 AddTaskGammaJetCorrelation.C:729
 AddTaskGammaJetCorrelation.C:730
 AddTaskGammaJetCorrelation.C:731
 AddTaskGammaJetCorrelation.C:732
 AddTaskGammaJetCorrelation.C:733
 AddTaskGammaJetCorrelation.C:734
 AddTaskGammaJetCorrelation.C:735
 AddTaskGammaJetCorrelation.C:736
 AddTaskGammaJetCorrelation.C:737
 AddTaskGammaJetCorrelation.C:738
 AddTaskGammaJetCorrelation.C:739
 AddTaskGammaJetCorrelation.C:740
 AddTaskGammaJetCorrelation.C:741
 AddTaskGammaJetCorrelation.C:742
 AddTaskGammaJetCorrelation.C:743
 AddTaskGammaJetCorrelation.C:744
 AddTaskGammaJetCorrelation.C:745
 AddTaskGammaJetCorrelation.C:746
 AddTaskGammaJetCorrelation.C:747
 AddTaskGammaJetCorrelation.C:748
 AddTaskGammaJetCorrelation.C:749
 AddTaskGammaJetCorrelation.C:750
 AddTaskGammaJetCorrelation.C:751
 AddTaskGammaJetCorrelation.C:752
 AddTaskGammaJetCorrelation.C:753
 AddTaskGammaJetCorrelation.C:754
 AddTaskGammaJetCorrelation.C:755
 AddTaskGammaJetCorrelation.C:756
 AddTaskGammaJetCorrelation.C:757
 AddTaskGammaJetCorrelation.C:758
 AddTaskGammaJetCorrelation.C:759
 AddTaskGammaJetCorrelation.C:760
 AddTaskGammaJetCorrelation.C:761
 AddTaskGammaJetCorrelation.C:762
 AddTaskGammaJetCorrelation.C:763
 AddTaskGammaJetCorrelation.C:764
 AddTaskGammaJetCorrelation.C:765
 AddTaskGammaJetCorrelation.C:766
 AddTaskGammaJetCorrelation.C:767
 AddTaskGammaJetCorrelation.C:768
 AddTaskGammaJetCorrelation.C:769
 AddTaskGammaJetCorrelation.C:770
 AddTaskGammaJetCorrelation.C:771
 AddTaskGammaJetCorrelation.C:772
 AddTaskGammaJetCorrelation.C:773
 AddTaskGammaJetCorrelation.C:774
 AddTaskGammaJetCorrelation.C:775
 AddTaskGammaJetCorrelation.C:776
 AddTaskGammaJetCorrelation.C:777
 AddTaskGammaJetCorrelation.C:778
 AddTaskGammaJetCorrelation.C:779
 AddTaskGammaJetCorrelation.C:780
 AddTaskGammaJetCorrelation.C:781
 AddTaskGammaJetCorrelation.C:782
 AddTaskGammaJetCorrelation.C:783
 AddTaskGammaJetCorrelation.C:784
 AddTaskGammaJetCorrelation.C:785
 AddTaskGammaJetCorrelation.C:786
 AddTaskGammaJetCorrelation.C:787
 AddTaskGammaJetCorrelation.C:788
 AddTaskGammaJetCorrelation.C:789
 AddTaskGammaJetCorrelation.C:790
 AddTaskGammaJetCorrelation.C:791
 AddTaskGammaJetCorrelation.C:792
 AddTaskGammaJetCorrelation.C:793
 AddTaskGammaJetCorrelation.C:794
 AddTaskGammaJetCorrelation.C:795
 AddTaskGammaJetCorrelation.C:796
 AddTaskGammaJetCorrelation.C:797
 AddTaskGammaJetCorrelation.C:798
 AddTaskGammaJetCorrelation.C:799
 AddTaskGammaJetCorrelation.C:800
 AddTaskGammaJetCorrelation.C:801
 AddTaskGammaJetCorrelation.C:802
 AddTaskGammaJetCorrelation.C:803
 AddTaskGammaJetCorrelation.C:804
 AddTaskGammaJetCorrelation.C:805
 AddTaskGammaJetCorrelation.C:806
 AddTaskGammaJetCorrelation.C:807
 AddTaskGammaJetCorrelation.C:808
 AddTaskGammaJetCorrelation.C:809
 AddTaskGammaJetCorrelation.C:810
 AddTaskGammaJetCorrelation.C:811
 AddTaskGammaJetCorrelation.C:812
 AddTaskGammaJetCorrelation.C:813
 AddTaskGammaJetCorrelation.C:814
 AddTaskGammaJetCorrelation.C:815
 AddTaskGammaJetCorrelation.C:816
 AddTaskGammaJetCorrelation.C:817
 AddTaskGammaJetCorrelation.C:818
 AddTaskGammaJetCorrelation.C:819
 AddTaskGammaJetCorrelation.C:820
 AddTaskGammaJetCorrelation.C:821
 AddTaskGammaJetCorrelation.C:822
 AddTaskGammaJetCorrelation.C:823
 AddTaskGammaJetCorrelation.C:824
 AddTaskGammaJetCorrelation.C:825
 AddTaskGammaJetCorrelation.C:826
 AddTaskGammaJetCorrelation.C:827
 AddTaskGammaJetCorrelation.C:828
 AddTaskGammaJetCorrelation.C:829
 AddTaskGammaJetCorrelation.C:830
 AddTaskGammaJetCorrelation.C:831
 AddTaskGammaJetCorrelation.C:832
 AddTaskGammaJetCorrelation.C:833
 AddTaskGammaJetCorrelation.C:834
 AddTaskGammaJetCorrelation.C:835
 AddTaskGammaJetCorrelation.C:836
 AddTaskGammaJetCorrelation.C:837
 AddTaskGammaJetCorrelation.C:838
 AddTaskGammaJetCorrelation.C:839
 AddTaskGammaJetCorrelation.C:840
 AddTaskGammaJetCorrelation.C:841
 AddTaskGammaJetCorrelation.C:842
 AddTaskGammaJetCorrelation.C:843
 AddTaskGammaJetCorrelation.C:844
 AddTaskGammaJetCorrelation.C:845
 AddTaskGammaJetCorrelation.C:846
 AddTaskGammaJetCorrelation.C:847
 AddTaskGammaJetCorrelation.C:848
 AddTaskGammaJetCorrelation.C:849
 AddTaskGammaJetCorrelation.C:850
 AddTaskGammaJetCorrelation.C:851
 AddTaskGammaJetCorrelation.C:852
 AddTaskGammaJetCorrelation.C:853
 AddTaskGammaJetCorrelation.C:854
 AddTaskGammaJetCorrelation.C:855
 AddTaskGammaJetCorrelation.C:856
 AddTaskGammaJetCorrelation.C:857
 AddTaskGammaJetCorrelation.C:858
 AddTaskGammaJetCorrelation.C:859
 AddTaskGammaJetCorrelation.C:860
 AddTaskGammaJetCorrelation.C:861
 AddTaskGammaJetCorrelation.C:862
 AddTaskGammaJetCorrelation.C:863
 AddTaskGammaJetCorrelation.C:864
 AddTaskGammaJetCorrelation.C:865
 AddTaskGammaJetCorrelation.C:866
 AddTaskGammaJetCorrelation.C:867
 AddTaskGammaJetCorrelation.C:868
 AddTaskGammaJetCorrelation.C:869
 AddTaskGammaJetCorrelation.C:870
 AddTaskGammaJetCorrelation.C:871
 AddTaskGammaJetCorrelation.C:872
 AddTaskGammaJetCorrelation.C:873
 AddTaskGammaJetCorrelation.C:874
 AddTaskGammaJetCorrelation.C:875
 AddTaskGammaJetCorrelation.C:876
 AddTaskGammaJetCorrelation.C:877
 AddTaskGammaJetCorrelation.C:878
 AddTaskGammaJetCorrelation.C:879
 AddTaskGammaJetCorrelation.C:880
 AddTaskGammaJetCorrelation.C:881
 AddTaskGammaJetCorrelation.C:882
 AddTaskGammaJetCorrelation.C:883
 AddTaskGammaJetCorrelation.C:884
 AddTaskGammaJetCorrelation.C:885
 AddTaskGammaJetCorrelation.C:886
 AddTaskGammaJetCorrelation.C:887
 AddTaskGammaJetCorrelation.C:888
 AddTaskGammaJetCorrelation.C:889
 AddTaskGammaJetCorrelation.C:890
 AddTaskGammaJetCorrelation.C:891
 AddTaskGammaJetCorrelation.C:892
 AddTaskGammaJetCorrelation.C:893
 AddTaskGammaJetCorrelation.C:894
 AddTaskGammaJetCorrelation.C:895
 AddTaskGammaJetCorrelation.C:896
 AddTaskGammaJetCorrelation.C:897
 AddTaskGammaJetCorrelation.C:898
 AddTaskGammaJetCorrelation.C:899
 AddTaskGammaJetCorrelation.C:900
 AddTaskGammaJetCorrelation.C:901
 AddTaskGammaJetCorrelation.C:902
 AddTaskGammaJetCorrelation.C:903
 AddTaskGammaJetCorrelation.C:904
 AddTaskGammaJetCorrelation.C:905
 AddTaskGammaJetCorrelation.C:906
 AddTaskGammaJetCorrelation.C:907
 AddTaskGammaJetCorrelation.C:908
 AddTaskGammaJetCorrelation.C:909
 AddTaskGammaJetCorrelation.C:910
 AddTaskGammaJetCorrelation.C:911
 AddTaskGammaJetCorrelation.C:912
 AddTaskGammaJetCorrelation.C:913
 AddTaskGammaJetCorrelation.C:914
 AddTaskGammaJetCorrelation.C:915
 AddTaskGammaJetCorrelation.C:916
 AddTaskGammaJetCorrelation.C:917
 AddTaskGammaJetCorrelation.C:918
 AddTaskGammaJetCorrelation.C:919
 AddTaskGammaJetCorrelation.C:920
 AddTaskGammaJetCorrelation.C:921
 AddTaskGammaJetCorrelation.C:922
 AddTaskGammaJetCorrelation.C:923
 AddTaskGammaJetCorrelation.C:924
 AddTaskGammaJetCorrelation.C:925
 AddTaskGammaJetCorrelation.C:926
 AddTaskGammaJetCorrelation.C:927
 AddTaskGammaJetCorrelation.C:928
 AddTaskGammaJetCorrelation.C:929
 AddTaskGammaJetCorrelation.C:930
 AddTaskGammaJetCorrelation.C:931
 AddTaskGammaJetCorrelation.C:932
 AddTaskGammaJetCorrelation.C:933
 AddTaskGammaJetCorrelation.C:934
 AddTaskGammaJetCorrelation.C:935
 AddTaskGammaJetCorrelation.C:936
 AddTaskGammaJetCorrelation.C:937
 AddTaskGammaJetCorrelation.C:938
 AddTaskGammaJetCorrelation.C:939
 AddTaskGammaJetCorrelation.C:940
 AddTaskGammaJetCorrelation.C:941
 AddTaskGammaJetCorrelation.C:942
 AddTaskGammaJetCorrelation.C:943
 AddTaskGammaJetCorrelation.C:944
 AddTaskGammaJetCorrelation.C:945
 AddTaskGammaJetCorrelation.C:946
 AddTaskGammaJetCorrelation.C:947
 AddTaskGammaJetCorrelation.C:948
 AddTaskGammaJetCorrelation.C:949
 AddTaskGammaJetCorrelation.C:950
 AddTaskGammaJetCorrelation.C:951
 AddTaskGammaJetCorrelation.C:952
 AddTaskGammaJetCorrelation.C:953
 AddTaskGammaJetCorrelation.C:954
 AddTaskGammaJetCorrelation.C:955
 AddTaskGammaJetCorrelation.C:956
 AddTaskGammaJetCorrelation.C:957
 AddTaskGammaJetCorrelation.C:958
 AddTaskGammaJetCorrelation.C:959
 AddTaskGammaJetCorrelation.C:960
 AddTaskGammaJetCorrelation.C:961
 AddTaskGammaJetCorrelation.C:962
 AddTaskGammaJetCorrelation.C:963
 AddTaskGammaJetCorrelation.C:964
 AddTaskGammaJetCorrelation.C:965
 AddTaskGammaJetCorrelation.C:966
 AddTaskGammaJetCorrelation.C:967
 AddTaskGammaJetCorrelation.C:968
 AddTaskGammaJetCorrelation.C:969
 AddTaskGammaJetCorrelation.C:970
 AddTaskGammaJetCorrelation.C:971
 AddTaskGammaJetCorrelation.C:972
 AddTaskGammaJetCorrelation.C:973
 AddTaskGammaJetCorrelation.C:974