//____________________________________________________________________
//
// BEGIN_HTML
// <h2>Customised base class for A++ tasks</h2>
// <h3>Description:</h3>
// <p>
// Tasks provide a folder-like structure for running analysis jobs,
// drawing plots etc. For a general description see the parent class
// TTask. The AtlAPPAnalysiTask class is especially designed for
// running A++ analysis jobs made of analysis selectors inheriting from
// AtlSelector (like the AtlExampleAnalysis). The common case is that
// the same analysis is run several times. First over DATA and
// afterwards over various Monte Carlo samples (signal and
// background). Often the MC samples are grouped into different
// processes (ttbar production, W+jets etc.) With the help of the
// AtlAppAnalysisTask class this probem can be easily solved.
// </p>
// <p>
// Execution of analysis tasks is possible on a local machine
// (interactive running), on a batch system or on the GRID via the
// PANDA distributed analysis system. Details are described below.
// </p>
// <p>
// Two things are needed for running analysis tasks:
// <ol>
// <li>A task class inheriting from this class. Here, the
// implementation of the InitSelector() routine is mandatory. In this
// routine the analysis selector is created and configured,
// i.e. analysis cuts can be set (via the routine SetCut() and
// analysis tools (see class AtlAnalysisTool) can be added and
// configured as well (via SetToolCut()). The advantage of this method
// is that the cuts and configurations given here apply likewise to
// each of the analyses managed by this task. As an example, the
// analysis task for the single-top t-channel analysis is shown.<br>
// Atl_tChannelTask.C:
// <pre>
// //____________________________________________________________________
// //
// // Single-top t-channel analysis task
// // 
// //  
// // Author: Oliver Maria Kind <mailto: kind@mail.desy.de>
// // Update: $Id: AtlAppAnalysisTask.cxx,v 1.77 2017/08/08 11:32:07 kaphle Exp $
// // Copyright: 2009 (C) Oliver Maria Kind
// //
// #ifndef SINGLETOP_Atl_tChannelTask
// #define SINGLETOP_Atl_tChannelTask
// #ifndef ATLAS_AtlAppAnalysisTask
// #include <AtlAppAnalysisTask.h>
// #endif
// #ifndef ATLAS_AtlOverlapRemoval
// #include <AtlOverlapRemoval.h>
// #endif
// #ifndef ATLAS_AtlSgTop_tChannelFinder
// #include <AtlSgTop_tChannelFinder.h>
// #endif
// #include <Atl_tChannelAnalysis.h>
//
// class Atl_tChannelTask : public AtlAppAnalysisTask {
//    
// public:
//     Atl_tChannelTask(const char* name, const char* title);
//     virtual ~Atl_tChannelTask();
//     virtual void InitSelector();
//    
//     ClassDef(Atl_tChannelTask,0) // Single-top t-channel analysis task
// };
// #endif
//
// #ifndef __CINT__
// ClassImp(Atl_tChannelTask);
// #endif
//
// //____________________________________________________________________
//
// Atl_tChannelTask::Atl_tChannelTask(const char* name,
// 				   const char* title) :
//     AtlAppAnalysisTask(name, title) {
//     //
//     // Normal constructor
//     //
//     SetInputTreeName("t_app");
//     AddUserEnv("LIBSINGLETOP");
// }
//
// //____________________________________________________________________
//
// Atl_tChannelTask::~Atl_tChannelTask() {
//     //
//     // Default destructor
//     //
// }
//
// //____________________________________________________________________
//
// void Atl_tChannelTask::InitSelector() {
//     //
//     // Initialise the t-channel analysis selector
//     //
//
//     // Create single-top t-channel analysis selector
//     fSelector = new Atl_tChannelAnalysis(fOutputFileName->Data());
//
//     // ============================    
//     // Definition of selection cuts  
//     // ============================
//  
//     //
//     // Leptons
//     // -------
//
//     // Electrons
//     SetCut("fSignalElectronAuthor",        "AtlEMShower::kHighPtElectron");// | AtlEMShower::kSoftElectron");
//     SetCut("fSignalElectronIsEM",          "AtlEMShower::kElectronTight");
//     SetCut("fSignalElectron_Pt_min",       "10.");
//     SetCut("fSignalElectron_Pt_max",       "10.e10");
//     SetCut("fSignalElectron_Eta_min",      "-2.5");
//     SetCut("fSignalElectron_Eta_max",      "2.5");
//     SetCut("fSignalElectron_EtCone20_max", "6.");
//     ...
//
//     // Add overlap removal procedure
//     AtlOverlapRemoval *overlap = new AtlOverlapRemoval("overlap_removal",
//  						       "Overlap Removal Single-Top t-Channel");
//     SetToolCut("overlap_removal","fFindWorkingPoint", "kFALSE");
//     SetToolCut("overlap_removal","fElDeltaRMax",      "0.2");
//     ...
//     fSelector->AddTool(overlap);
//    
//     // Add single-top t-channel kinematic fitter
//     AtlSgTop_tChannelFinder *kinfit =
// 	new AtlSgTop_tChannelFinder("sgtop_finder_kinfitter",
// 	    "Single-Top t-Channel Reconstruction by KinFitter");
//     SetToolCut("sgtop_finder_kinfitter", "fMode", "AtlSgTop_tChannelFinder::kKinFit");
//     ...
//     fSelector->AddTool(kinfit);
// }
// </pre>
// </li>
// <li>
// A task script which defines the task folder structure. Note that
// such a script can contain different taks, e.g. analysis and
// plotting. For example the script corresponding to the single-top
// task above, given below.<br>
// task_tChannelAnalysis.C:
// <pre>
// // {
//     gROOT->LoadMacro("Atl_tChannelTask.C+");
//
//     // ===============================  
//     // Luminosities of the MC samples
//     // ===============================
//
//     //-----------
//     // single top
//     //-----------
//     Float_t Lumi_singletop_tchannel_enu = (19750/14.46);
//     Float_t Lumi_singletop_tchannel_munu = (19999/14.46);
//     Float_t Lumi_singletop_tchannel_taunu = (19500/14.46) ;
//     ...
//    
//     // Main task
//     TTask *tChannel = new TTask("tChannel", "Single-top t-Channel Analysis");
//
//     //////////////////////////////////////////////////////////////////////
//     //
//     // Single-top production
//     //
//     //////////////////////////////////////////////////////////////////////
//     TTask *sgtop = new TTask("single-top", "Single-top production");
//     tChannel->Add(sgtop);
//  
//     // =========
//     // t-channel
//     // =========
//     TTask *sgtop_tchannel = new TTask("t_channel", "t-channel");
//     sgtop->Add(sgtop_tchannel);
//
//     // e-nu
//     Atl_tChannelTask *sgtop_tchannel_enu
// 	= new Atl_tChannelTask("sgtop_tchannel_enu", "e-nu decay");
//     sgtop_tchannel_enu->AddInputFiles("/dats3/atlas/mandry/user10.RoccoMandrysch.mc09_7TeV.108340.st_tchan_enu_McAtNlo_Jimmy.merge.AOD.e508_s765_s767_r1250_r1260.22.05.2010.app.test_2/user10.RoccoMandrysch.mc09_7TeV.108340.st_tchan_enu_McAtNlo_Jimmy.merge.AOD.e508_s765_s767_r1250_r1260.22.05.2010.app.test_2*.root");
//     sgtop_tchannel_enu->SetOutputFile("$LIBSINGLETOP/hist/tChannelAnalysis/tchannel_enu.root");
//     sgtop_tchannel->Add(sgtop_tchannel_enu);
//  
//     // mu-nu
//     Atl_tChannelTask *sgtop_tchannel_munu
// 	= new Atl_tChannelTask("sgtop_tchannel_munu", "mu-nu decay");
//     sgtop_tchannel_munu->AddInputFiles("/dats3/atlas/mandry/user10.RoccoMandrysch.mc09_7TeV.108341.st_tchan_munu_McAtNlo_Jimmy.merge.AOD.e508_s765_s767_r1250_r1260.22.05.2010.app.test/user10.RoccoMandrysch.mc09_7TeV.108341.st_tchan_munu_McAtNlo_Jimmy.merge.AOD.e508_s765_s767_r1250_r1260.22.05.2010.app.test*.root");
//     sgtop_tchannel_munu->SetOutputFile("$LIBSINGLETOP/hist/tChannelAnalysis/tchannel_munu.root");
//     sgtop_tchannel->Add(sgtop_tchannel_munu);
//  
//     // tau-nu
//     Atl_tChannelTask *sgtop_tchannel_taunu
// 	= new Atl_tChannelTask("sgtop_tchannel_taunu", "tau-nu decay");
//     sgtop_tchannel_taunu->AddInputFiles("/dats3/atlas/mandry/app_20_02_2010/user09.RoccoMandrysch.ganga.mc08.108342.st_tchan_taunu_McAtNlo_Jimmy.merge.AOD.e405_s495_s520_r808_r838.app.test_20.02.2010.WUPPERTALPROD_SCRATCHDISK/user09.RoccoMandrysch.ganga.mc08.108342.st_tchan_taunu_McAtNlo_Jimmy.merge.AOD.e405_s495_s520_r808_r838.app.test_*.root");
//     sgtop_tchannel_taunu->AddInputFiles("/dats3/atlas/mandry/user10.RoccoMandrysch.mc09_7TeV.108342.st_tchan_taunu_McAtNlo_Jimmy.merge.AOD.e508_s765_s767_r1250_r1260.22.05.2010.app.test/user10.RoccoMandrysch.mc09_7TeV.108342.st_tchan_taunu_McAtNlo_Jimmy.merge.AOD.e508_s765_s767_r1250_r1260.22.05.2010.app.test*.root");
//     sgtop_tchannel_taunu->SetOutputFile("$LIBSINGLETOP/hist/tChannelAnalysis/tchannel_taunu.root");
//     sgtop_tchannel->Add(sgtop_tchannel_taunu);
//
//     // =========
//     // s-channel
//     // =========
//     TTask *sgtop_schannel = new TTask("s_channel", "s-channel");
//     sgtop->Add(sgtop_schannel);
//  
//     // e-nu
//     Atl_tChannelTask *sgtop_schannel_enu
// 	= new Atl_tChannelTask("sgtop_schannel_enu", "e-nu decay");
//     sgtop_schannel_enu->AddInputFiles("/dats3/atlas/mandry/user10.RoccoMandrysch.mc09_7TeV.108343.st_schan_enu_McAtNlo_Jimmy.merge.AOD.e534_s765_s767_r1250_r1260.22.05.2010.app.test/user10.RoccoMandrysch.mc09_7TeV.108343.st_schan_enu_McAtNlo_Jimmy.merge.AOD.e534_s765_s767_r1250_r1260.22.05.2010.app.test*.root");
//     sgtop_schannel_enu->SetOutputFile("$LIBSINGLETOP/hist/tChannelAnalysis/schannel_enu.root");
//     sgtop_schannel->Add(sgtop_schannel_enu);
//     ...  
//    
//     //////////////////////////////////////////////////////////////////////
//     //
//     // W + jets production
//     //
//     //////////////////////////////////////////////////////////////////////
//     TTask *WplusJets = new TTask("WplusJets", "W + Jets production");
//     tChannel->Add(WplusJets);
//  
//     // ============
//     // e-nu channel
//     // ============
//     TTask *WplusJets_enu = new TTask("WplusJets_enu", "W+Jets, enu channel");
//     WplusJets->Add(WplusJets_enu);
//  
//     // Np0
//     Atl_tChannelTask *WplusJets_enu_Np0
// 	= new Atl_tChannelTask("WplusJets_enu_Np0", "W+Jets, enu channel, Np0");
//     WplusJets_enu_Np0->AddInputFiles("/dats5/atlas/mandry/user10.RoccoMandrysch.mc09_7TeV.107680.AlpgenJimmyWenuNp0_pt20.merge.AOD.e511_s765_s767_r1250_r1260.22.05.2010.app.test_2/user10.RoccoMandrysch.mc09_7TeV.107680.AlpgenJimmyWenuNp0_pt20.merge.AOD.e511_s765_s767_r1250_r1260.22.05.2010.app.test_2*.root");   
//     WplusJets_enu_Np0->SetOutputFile("$LIBSINGLETOP/hist/tChannelAnalysis/Wjets_enu_np0.root");
//     WplusJets_enu->Add(WplusJets_enu_Np0);
//     ...
//
//     //////////////////////////////////////////////////////////////////////
//     //
//     // DATA
//     //
//     //////////////////////////////////////////////////////////////////////
//
//     // L1Calo Trigger Stream (new)
//     Atl_tChannelTask *data_l1calo = new Atl_tChannelTask("data-l1-calo", "Data from L1Calo trigger stream");
//     data_l1calo->AddInputFiles("/dats2/atlas/mandry/user10.RoccoMandrysch.data10_7TeV.00154813.physics_L1Calo.merge.AOD.f255_m471.22.05.2010.app.test/user10.RoccoMandrysch.data10_7TeV.00154813.physics_L1Calo.merge.AOD.f255_m471.22.05.2010.app.test*.root");
//     data_l1calo->SetOutputFile("$LIBSINGLETOP/hist/tChannelAnalysis/data_l1calo.root");
//     tChannel->Add(data_l1calo);
//     ...  
//
//
//     //////////////////////////////////////////////////////////////////////
//     //
//     // Draw all MC-DATA plots
//     //
//     //////////////////////////////////////////////////////////////////////
//     HepDataMCPlotter *pl_sgtop = new HepDataMCPlotter("DATA-MC plotter", "Create all Data-MC plots");
//     pl_sgtop->SetWorkingDir("$LIBSINGLETOP/hist/tChannelAnalysis/plots_datamc/");
//     pl_sgtop->SetLumiDATA(0.003260);
//
//     // Enable/disable grouping of histograms
//     Bool_t group_histograms = kTRUE;
//
//     // ==========
//     // Single-top
//     // ==========
//     //Set grouping of histograms
//     pl_sgtop->SetGroupHistograms(group_histograms);
//     pl_sgtop->AddMCFolder("sgtop", "sgtop incl", kRed);
//
//     pl_sgtop->AddMCSample("sgtop","$LIBSINGLETOP/hist/tChannelAnalysis/tchannel_enu.root",
//                     "MC single-top t-channel e#nu", Lumi_singletop_tchannel_enu, kRed);
//     pl_sgtop->AddMCSample("sgtop","$LIBSINGLETOP/hist/tChannelAnalysis/tchannel_munu.root",
//                     "MC single-top t-channel #mu#nu", Lumi_singletop_tchannel_munu, kRed-4);
//     pl_sgtop->AddMCSample("sgtop","$LIBSINGLETOP/hist/tChannelAnalysis/tchannel_taunu.root",
//                     "MC single-top t-channel #tau#nu", Lumi_singletop_tchannel_taunu, kRed-7);
//     ...
//     tChannel->Add(pl_sgtop);
//
//
//     // Open task folder in Root's TObject browser
//     gROOT->GetListOfTasks()->Add(tChannel);
//     gROOT->GetListOfBrowsables()->Add(tChannel);
//     new TBrowser;
// }
// </pre>
// </li>
// </ol>
//
//
// <h3Selection cuts:</h3>
// Selection cuts are defined by calling the member function SetCut().
//
// <h3>Job submission (at HU cluster):</h3>
// Use SetBatchNodeAll(), SetBatchNode() or SetBatchNodeAutomatic() to set
// the type of batch job submssion. For details see AtlTask.cxx.
//
// <h3>Project libraries:</h3>
// User-defined project libraries beside the standard libraries
// libHepEvent, libAtlasRun, ... must be made known to the task
// object. The environment variable containing the path to each such
// library has to be given by the AddUserEnv() function in the ctor
// of the derived class, eg <br>
// <pre>
//    Atl_tChannelTask::Atl_tChannelTask(const char* name,
//                                    const char* title) :
//        AtlAppAnalysisTask(name, title) {
//        //
//        // Normal constructor
//        //
//        SetInputTreeName("t_app");
//        AddUserEnv("LIBSINGLETOP");
//    }
// </pre>
//
// <h3>Entry lists:</h3>
// You can apply a TEntryList onto your chain, previously created by the
// AtlSelector. Your chain and the trees have to be the same. 
// Just use task->AddInputEntryLists("elist.root") and set 
// task->SetLoadEntryList(1) to get the list applied to your chain. Your 
// analysis will now run only on the events stored in this list.
// If the flag fUseAntiList is set, the analysis will run on events which 
// are not stored in the lists (events stored in the lists will be skipped).
//
// END_HTML
//  
// Author: Oliver Maria Kind <mailto: kind@mail.desy.de>
// Update: $Id: AtlAppAnalysisTask.cxx,v 1.77 2017/08/08 11:32:07 kaphle Exp $
// Copyright: 2009 (C) Oliver Maria Kind
//
#ifndef ATLAS_AtlAppAnalysisTask
#include <AtlAppAnalysisTask.h>
#endif
#include <TChain.h>
#include <TString.h>
#include <TSystem.h>
#include <AtlSelector.h>
#include <iostream>
#include <fstream>
#include <TClass.h>
#include <TDataMember.h>
#include <TROOT.h>
#include <AtlAnalysisTool.h>
#include "AtlSubselectionCuts.h"

using namespace std;

#ifndef __CINT__
ClassImp(AtlAppAnalysisTask);
#endif

//____________________________________________________________________

AtlAppAnalysisTask::AtlAppAnalysisTask(const char* name, const char* title) :
    AtlTask(name, title),
    fReaderClass(new TString()),
    fReaderArgs(new TString()) {
    //
    // Default constructor
    //
    SetBatchJob(kTRUE);
    fCtrlPlots        = kTRUE;
    fRootScript = 0;
    fNEvents = TChain::kBigNumber;
    fListOfCuts     = new TList;
    fListOfSubselectionCuts = new TList;
    fListOfToolCuts = new TList;
    fListOfUserEnvs = new TList;
    fListOfTools    = new TList;
    fWriteEntryList   = kFALSE;
    fLoadEntryList    = kFALSE;
    fUseAntiList      = kFALSE;
    fPrintEvent       = kFALSE;
    fPrintObjectTable = kFALSE;
    fSelector      = 0;
    fInputTreeName = 0;
    
    // Set environment variables for common libraries
    AddUserEnv("LIBHEPEVENT");
    AddUserEnv("LIBATLASRUN");
    AddUserEnv("LIBATLASEVENT");
    AddUserEnv("LIBATLASANALYSIS");
}

//____________________________________________________________________

AtlAppAnalysisTask::~AtlAppAnalysisTask() {
    //
    // Default destructor
    //
    if ( fRootScript != 0 ) delete fRootScript;
    delete fListOfSubselectionCuts;
    fListOfCuts->Delete();     delete fListOfCuts;
    fListOfToolCuts->Delete(); delete fListOfToolCuts;
    fListOfUserEnvs->Delete(); delete fListOfUserEnvs;
    fListOfTools->Delete();    delete fListOfTools;
    delete fReaderClass;
    delete fReaderArgs;
}

//____________________________________________________________________

void AtlAppAnalysisTask::SetInputTreeName(const char* TreeName) {
    //
    // Set input tree name
    //
    fInputTreeName = new TString(TreeName);  
}

//____________________________________________________________________

void AtlAppAnalysisTask::SetSelector(const char* Selector) {
    //
    // Set Analysis Selector name
    //
    fSelector = new TString(Selector);  
}

//____________________________________________________________________

void AtlAppAnalysisTask::ExecInteractiveJob(Option_t *option) {
    //
    // Interactive execution
    //
    // The interactive execution is done via an intermediate step of
    // an analysis run .C script in the same manner as for batch
    // jobs. Thus only a single way of job execution has to be
    // defined. In particular all selection cuts are set in the same
    // way.
    //
    TString opt = option;
    
    // Control plots option
    if ( fCtrlPlots == kTRUE ) opt.Append(",CTRL");
    
    // Start analysis process

    // Check input chain
    CheckInputChain();

    // Create analysis selector
    InitSelector();
    
    CreateRootScript(opt.Data());
    gROOT->Macro(Form("%s/analysis_run.C", fJobHome->Data()));
}    

//____________________________________________________________________

Bool_t AtlAppAnalysisTask::ExecBatchJob(Option_t *option) {
    //
    // Batch job submission
    //
    // Returns kFALSE in case of error.
    //
    TString opt = option;
    
    // Control plots option
    if ( fCtrlPlots == kTRUE ) opt.Append(",CTRL");

    // Check input chain
    CheckInputChain();
    
    // Create analysis selector
    InitSelector();

    // Create submit scripts
    CreateRootScript(opt.Data());
    CreateRunScript();

    // Submit batch job
    return SubmitBatchJob();
}

//____________________________________________________________________

void AtlAppAnalysisTask::ExecNAFBatchJob(Option_t *option) {
    //
    // Batch job submission
    //
    TString opt = option;

    // Control plots option
    if ( fCtrlPlots == kTRUE ) opt.Append(",CTRL");

    // Check input chain
    CheckInputChain();

    // Create analysis selector
    InitSelector();

    // Create submit scripts
    CreateNAFBatchRootScript(opt.Data());
    CreateNAFBatchRunScript();

    // Submit batch job
    SubmitNAFBatchJob();

}

//____________________________________________________________________

void AtlAppAnalysisTask::ExecGridJob(Option_t *option) {
    //
    // Grid job submission
    //
    TString opt = option;

    // Control plots option
    if ( fCtrlPlots == kTRUE ) opt.Append(",CTRL");

    // Create analysis selector
    InitSelector(); 

    // Create submit scripts
    CreateRootScript(opt.Data());
    CreateGridRunScript();

    // Submit grid job
    SubmitGridJob();

}

//____________________________________________________________________

void AtlAppAnalysisTask::CreateRootScript(Option_t *option) {
    //
    // Create Root script for A++ analysis job execution
    //
    TString opt = option;

    //
    // Check first if all cut variables are valid data members of the
    // selector
    //

    // Class introspection possible for this selector ?
    if ( fSelector == 0 ) {
	Error("CreateRootScript",
	      "Selector unknown. Please use SetSelector(). Abort!");
 	gSystem->Abort(0);
    }
    
    TClass *sel_cl = (TClass*)gROOT->GetClass( fSelector->Data() );
    if ( sel_cl == 0 ) {
     	Error("CreateRootScript",
	      "Class description for class \"%s\" not found. Abort!",
	      fSelector->Data());
 	gSystem->Abort(0);
    }
    
    // Selector cut variables exist ?
    TIter next_cut(GetListOfCuts());
    AtlCut *cut = 0;
    TDataMember *cut_memb = 0;
    TClass *cut_memb_base = 0; // return value is of type TClass not TDatamember
    while ( (cut = (AtlCut*)next_cut()) ) {

	// Find data member
	cut_memb = FindDataMember(sel_cl, cut->GetVar());
	
	// Data member not found ?
	if ( cut_memb == 0 ) {
	    Error("CreateRootScript",
		  "Selector - Data member of name \"%s\" does not exist. Abort!",
		  cut->GetVar());
	    gSystem->Abort(0);
	}
    }
    
    // Analysis tools cut variables exist ?
    TIter next_toolcut(GetListOfToolCuts());
    AtlToolCut *toolcut = 0;
    cut_memb = 0;
    cut_memb_base = 0;
    
    TClass *tool_cl = 0;
    while ( (toolcut = (AtlToolCut*)next_toolcut()) ) {
      tool_cl = (TClass*)gROOT->GetClass(((AtlAnalysisTool*)fListOfTools->FindObject(toolcut->GetTool().Data()))->ClassName());
	
      if ( tool_cl == 0 ) {
	Error("CreateRootScript",
	      "Class description for class \"%s\" not found. Abort!",
	      toolcut->GetTool().Data());
	gSystem->Abort(0);
      }
      
      cut_memb = tool_cl->GetDataMember(toolcut->GetVariable().Data());
      cut_memb_base = tool_cl->GetBaseDataMember(toolcut->GetVariable().Data());
      if ( cut_memb == 0 && cut_memb_base == 0) {
	  Error("CreateRootScript",
		"Toolcut - Data member of name \"%s\" does not exist. Abort!",
		toolcut->GetVariable().Data());
	  gSystem->Abort(0);
      }
    }

    // =============
    // Create script
    // =============
    if ( fRootScript != 0 ) delete fRootScript;
    fRootScript = new TString(fJobHome->Data());
    fRootScript->Append("/analysis_run.C");
    fRootScript->ReplaceAll("//","/");
    
    ofstream out;
    out.open(fRootScript->Data());
    
    // Header
    out << "{" << endl
	<< "// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "// !!! This is an automatically generated file !!!" << endl
	<< "// !!! D O   N O T   E D I T                   !!!" << endl
	<< "// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "//" << endl;
    if ( fGridJob ) {
	out << "// Root script for A++ analysis grid job execution" << endl;
    } else {
	out << "// Root script for A++ analysis batch job execution" << endl;
    }
    out << "//" << endl;
    
    // Turn on debugging
    if ( fDebug > 0 ) {
	out << "gDebug = " << fDebug << ";" << endl;
    }
    
    // Init selector
    out << fSelector->Data() << " *sel = new ";

    if ( fGridJob ) {
        out << fSelector->Data() << "(\"" << fGridAnalysisName->Data() << ".root\");" << endl;
    } else if ( fTempOutputFileName != 0 && !fInteractiveJob ) {
        out << fSelector->Data() << "(\"" << fTempOutputFileName->Data() << "\");" << endl;
    } else {
        out << fSelector->Data() << "(\"" << fOutputFileName->Data() << "\");" << endl;
    }

    // Set reader
    if ( !fReaderClass->IsNull() ) {
        out << *fReaderClass << " * reader = new " << *fReaderClass << "(sel";
        if ( !fReaderArgs->IsNull() ) {
            out << ", " << *fReaderArgs;
        }
        out << ");\n";
        out << "sel->SetEvtReader(reader);\n";
    }

    // Create input chain
    if ( fInputTreeName->IsNull() ) {
        out << "TChain *ch = new TChain(reader->GetTreeName());" << endl;
    }
    else {
        out << "TChain *ch = new TChain(\"" << fInputTreeName->Data() << "\");" << endl;
    }

    if ( fGridJob ) {
	out << "ch->Add(\"app.root\");" << endl;
    } else {
    
	// Add input files
	TIter next(fInputFiles);
	TObjString *item = 0;
	while ( (item = (TObjString*)next()) ) {
	    out << "ch->Add(\"" << item->GetString().Data() << "\");" << endl;
	}
    }
    
    // Create full entry list (containing all events) for creation of anti entry list (if wanted)
    if ( fLoadEntryList && fUseAntiList ) {
	out << "ch->Draw(\">>antilist\",\"\",\"app_entrylist\");" << endl;
	out << "TEntryList *antilist = (TEntryList*)gDirectory->Get(\"antilist\");" << endl;
    }
    // Apply entry list if wanted (and subtract from full list if anti list is wanted)
    if(fLoadEntryList)  {
      TIter next2(fInputEntryLists);
      TObjString *item2 = 0;
      out << "TEntryList *inputentrylist = new TEntryList();" << endl;
      while ( (item2 = (TObjString*)next2()) ) {
	  out << "TFile *entrylistfile = new TFile(\""
	      << item2->GetString().Data() << "\",\"read\");" << endl;
	  out << "inputentrylist->Add((TEntryList*)entrylistfile->Get(\"app_entrylist\"));" << endl;
      }
      // Subtract from full list for anti list and apply on chain
      if ( fUseAntiList )  {
	  out << "antilist->Subtract(inputentrylist);" << endl;
	  out << "ch->SetEntryList(antilist);" << endl;
      }
      else  {
	  out << "ch->SetEntryList(inputentrylist);" << endl;
      }
    }
    
    // Set output tree (if any)
    if ( fOutputTreeName != 0 ) {
	out << "sel->SetOutputTree(\""
	    << fOutputTreeName->GetName() << "\", \""
	    << fOutputTreeName->GetTitle() << "\");" << endl;
    }
    
    // Switch on/off entry list creation
    out << "sel->SetWriteEntryList("
	<< fWriteEntryList << ");" << endl;

    // Switch on/off printing every event
    out << "sel->SetPrintEvent("
	<< fPrintEvent << ");" << endl;

    // Switch on/off printing Root's object table
    out << "sel->SetPrintObjectTable("
	<< fPrintObjectTable << ");" << endl;
    
    // Set selection cuts
    next_cut.Reset();
    while ( (cut = (AtlCut*)next_cut()) ) {
      out << "sel->" << cut->GetVar() << " = "
	    << cut->GetVal() << ";" << endl;
    }

    // Subselection
    bool subsel_declared = false;
    for ( TIter next(GetListOfSubselectionCuts()); AtlSubselectionCuts * subsel_cuts = static_cast<AtlSubselectionCuts *>(next()); ) {
        if ( !subsel_declared ) {
            out << *fSelector << "::Subselection * ";
            subsel_declared = true;
        }
        out << "subsel = new " << *fSelector << "::Subselection(\"" << subsel_cuts->GetName() << "\");\n";
        for ( TIter next2(subsel_cuts->GetListOfCuts()); cut = static_cast<AtlCut *>(next2()); ) {
            out << "subsel->" << cut->GetVar() << " = " << cut->GetVal() << ";\n";
        }
        out << "sel->fListOfSubselections->Add(subsel);\n";
    }

    // Init tools
    TIter next_tool(fListOfTools);
    AtlAnalysisTool *tool = 0;
    Int_t i = 0;
    while ( (tool = (AtlAnalysisTool*)next_tool()) ) {
	i++;
	out << tool->ClassName() << " *tool" << i << " = new "
	    << tool->ClassName() << "(\"" << tool->GetName()
	    << "\", \"" << tool->GetTitle() << "\");" << endl
	    << "sel->AddTool(tool" << i << ");" << endl;

	// Loop over all cuts
	// TIter next_cut(GetListOfToolCuts());
	next_toolcut.Reset();
	toolcut = 0;
	while ( (toolcut = (AtlToolCut*)next_toolcut()) ) {
	  if ( strcmp(tool->GetName(), toolcut->GetTool().Data()) != 0 ) continue;

	    // Get datamember associated with cut
	    TClass *cl = gROOT->GetClass(tool->ClassName());
	    TClass *mem_class = cl->GetBaseDataMember(toolcut->GetVariable().Data());
	    TDataMember *mem = mem_class->GetDataMember(toolcut->GetVariable().Data());

	    // debug
	    if ( fDebugBuild > 1 ) {
		Info(__FUNCTION__, "\n"
		     "Tool Cut info: \n"
		     "  tool name: %s\n"
		     "  toolcut var: %s\n"
		     "  toolcut val: %s\n"
		     "  var TrueTypeName: %s",
		     tool->GetName(), toolcut->GetVariable().Data(),
		     toolcut->GetVal(), mem->GetTrueTypeName());
		Info(__FUNCTION__, "Data member dump:\n");
		mem->Dump();
	    }

	    // Check if cut is a public datamember
	    if ( mem->Property() & kIsPublic == 0 ) {
		Error(__FUNCTION__,
		      "Given cut \"%s\" is not a public datamember in tool class \"%s\", which is necessary. Abort!",
		      toolcut->GetVariable().Data(), tool->ClassName());
		gSystem->Abort();
	    }

	    // Set cut value.
	    // In case of TStrings or TLists the values are appended
	    out << "tool" << i << "->" << toolcut->GetVariable().Data();
	    if ( strcmp(mem->GetTrueTypeName(), "TString*") == 0 ) {
		out << "->Append(\"" << toolcut->GetVal() << "\");" << endl;
	    } else if ( strcmp(mem->GetTrueTypeName(), "TString") == 0 ) {
		out << " = \"" << toolcut->GetVal() << "\";" << endl;
	    } else if ( strcmp(mem->GetTrueTypeName(), "TList*") == 0 ) {
		out << "->Add(" << toolcut->GetVal() << ");" << endl;
	    } else {
		out << " = " << toolcut->GetVal() << ";" << endl;
	    }
	}
    }
    
    // Process chain
    out << "ch->Process((TSelector*)sel, \"" << opt.Data() << "\", " << fNEvents 
	<< ", " << fFirstEntry << ");" << endl; 

//     if ( fGridJob ) {
// 	// sel->SetOutputTree("t_app","");    
// 	out << "sel->SetOutputTree(\"t_app\",\"\");" << endl;	
//     }
    
    out << "}" << endl;

    out.close();
}

//____________________________________________________________________

void AtlAppAnalysisTask::CreateNAFBatchRootScript(Option_t *option) {
    //
    // Create Root script for A++ analysis job execution
    //
    TString opt = option;

    //
    // Check first if all cut variables are valid data members of the
    // selector
    //
    
    // Class introspection possible ?
    TClass *cl = (TClass*)gROOT->GetListOfClasses()
	->FindObject(fSelector->Data());
    if ( cl == 0 ) {
	Error("SetCut", "Class description for class \"%s\" not found. Abort!",
	      fSelector->Data());
	gSystem->Abort(0);
    }
    
    // Cut variable exists ?
    TIter next_cut(GetListOfCuts());
    TNamed *cut = 0;
    TDataMember *cut_memb = 0;
    while ( (cut = (TNamed*)next_cut()) ) { 
	cut_memb = cl->GetDataMember(cut->GetName());
	if ( cut_memb == 0 ) {
	    Error("SetCut", "Data member of name \"%s\" does not exist. Abort!",
		  cut->GetName());
	    gSystem->Abort(0);
	}
    }

    //
    // Create script
    //
    if ( fRootScript != 0 ) delete fRootScript;
    fRootScript = new TString(fJobHome->Data());
    fRootScript->Append("/analysis_run.C");
    
    ofstream out;
    out.open(fRootScript->Data());
    
    // Header
    out << "{" << endl
	<< "// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "// !!! This is an automatically generated file !!!" << endl
	<< "// !!! D O   N O T   E D I T                   !!!" << endl
	<< "// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "//" << endl
	<< "// Root script for A++ analysis batch job execution" << endl
	<< "//" << endl;
    
    // Turn on debugging
    if ( fDebug > 0 ) {
	out << "gDebug = " << fDebug << ";" << endl;
    }

    // Init selector
    std::string output_file_name = fOutputFileName->Data();
    size_t found=output_file_name.find_last_of("/\\");
    out << cl->ClassName() << " *sel = new "
        << cl->ClassName() << "(\"" << output_file_name.substr(found+1) << "\");" << endl;

    // Set reader
    if ( !fReaderClass->IsNull() ) {
        out << *fReaderClass << " * reader = new " << *fReaderClass << "(sel";
        if ( !fReaderArgs->IsNull() ) {
            out << ", " << *fReaderArgs;
        }
        out << ");\n";
        out << "sel->SetEvtReader(reader);\n";
    }

    // Create input chain
    if ( fInputTreeName->IsNull() ) {
        out << "TChain *ch = new TChain(reader->GetTreeName());" << endl;
    }
    else {
        out << "TChain *ch = new TChain(\"" << fInputTreeName->Data() << "\");" << endl;
    }
    
    // Add input files
    TIter next(fInputFiles);
    TObjString *item = 0;
    while ( (item = (TObjString*)next()) ) {
      TString input_file_path_item = item->GetString();
      if ( input_file_path_item.Contains("pnfs") ) {
	
	TObjArray *v_input_file_path;
	v_input_file_path = input_file_path_item.Tokenize(";");
		
	for (Int_t i=0; i<v_input_file_path->GetEntries(); i++) {
	  
	  TObjString *in_path  = (TObjString*)v_input_file_path->At(i);
	  TString input_file_path  = in_path->GetString();
	  TString command = "rm log; dcls ";
	  command.Append(input_file_path);
	  command.Append(" >> log");
	  gSystem->Exec(command.Data());
	  
	  string line;
	  ifstream inputfile ("log");
	  if (inputfile.is_open())
	    {
	      while ( inputfile.good() ) {
		getline (inputfile,line);
		TString newline = line;
		if ( newline.EndsWith("app.root") ) {
		  TString input_file_list;
		  if ( input_file_path.Contains("ifh.de") != 0 )
		    input_file_list = "dcap://lcg-dc0.ifh.de:22125";
		  if ( input_file_path.Contains("desy.de") )
		    input_file_list = "dcap://dcache-atlas-dcap.desy.de:22125";
		  input_file_list.Append(input_file_path).Append("/").Append(newline);
		  out << "ch->Add(\"" << input_file_list.Data() << "\");" << endl;
		}
	      }
	      inputfile.close();
	    }
	  else cout << "Unable to open file eith list";
	}
      }
      
     else {
       
       // Add input files
       TIter next(fInputFiles);
       TObjString *item = 0;
       while ( (item = (TObjString*)next()) ) {
	 out << "ch->Add(\"" << item->GetString().Data() << "\");" << endl;
       }
     }
      
    }
    
    // Apply entry list if wanted
    if(fLoadEntryList)  {
      TIter next2(fInputEntryLists);
      TObjString *item2 = 0;
      out << "TEntryList *inputentrylist = new TEntryList();" << endl;
      while ( (item2 = (TObjString*)next2()) ) {
	out << "TFile *entrylistfile = new TFile(\"" << item2->GetString().Data() << "\",\"read\");" << endl;
	out << "inputentrylist->Add((TEntryList*)entrylistfile->Get(\"app_entrylist\"));" << endl;
      }
      out << "ch->SetEntryList(inputentrylist);" << endl;
    }
    
    // Set output tree (if any)
    if ( fOutputTreeName != 0 ) {
	out << "sel->SetOutputTree(\""
	    << fOutputTreeName->GetName() << "\", \""
	    << fOutputTreeName->GetTitle() << "\");" << endl;
    }
    
    // Switch on/off entry list creation
    out << "sel->SetWriteEntryList("
	<< fWriteEntryList << ");" << endl;

    // Switch on/off printing every event
    out << "sel->SetPrintEvent("
	<< fPrintEvent << ");" << endl;

    // Switch on/off printing Root's object table
    out << "sel->SetPrintObjectTable("
	<< fPrintObjectTable << ");" << endl;

    // Set selection cuts
    next_cut.Reset();
    while ( (cut = (TNamed*)next_cut()) ) {
	out << "sel->" << cut->GetName() << " = "
	    << cut->GetTitle() << ";" << endl;
    }

    // Init tools
    TIter next_tool(fListOfTools);
    AtlAnalysisTool *tool = 0;
    Int_t i = 0;
    while ( (tool = (AtlAnalysisTool*)next_tool()) ) {
	i++;
	out << tool->ClassName() << " *tool" << i << " = new "
	    << tool->ClassName() << "(\"" << tool->GetName()
	    << "\", \"" << tool->GetTitle() << "\");" << endl
	    << "sel->AddTool(tool" << i << ");" << endl;

	// Loop over all cuts
	TIter next_cut(GetListOfToolCuts());
	AtlToolCut* cut = 0;
	while ( (cut = (AtlToolCut*)next_cut()) ) {
	  if ( strcmp(tool->GetName(), cut->GetTool().Data()) != 0 ) continue;

	    // Check if cut is a public datamember
	    TClass *cl = gROOT->GetClass(tool->ClassName());
	    if ( cl->GetListOfAllPublicDataMembers()
		 ->FindObject(cut->GetVariable().Data()) == 0 ) {
		Error("CreateRootScript",
		      "Given cut \"%s\" is not a public datamember in tool class \"%s\", which is necessary. Abort!",
		      cut->GetVariable().Data(), tool->ClassName());
		gSystem->Abort();
	    }

	    // Set cut value (do this differently for strings)
	    out << "tool" << i << "->" << cut->GetVariable().Data();
	    TDataMember *mem = (TDataMember*)cl->GetListOfAllPublicDataMembers()
	      ->FindObject(cut->GetVariable().Data());
	    if ( strcmp(mem->GetTrueTypeName(), "TString*") == 0 ) {
		out << "->Append(\"" << cut->GetVal() << "\");" << endl;
	    } else {
		out << " = " << cut->GetVal() << ";" << endl;
	    }
	}
    }
        
    // Process chain
    out << "ch->Process((TSelector*)sel, \"" << opt.Data() << "\", " << fNEvents << ");" << endl; 

    out << "}" << endl;

    out.close();
}

//____________________________________________________________________

void AtlAppAnalysisTask::CreateRunScript(Option_t *option) {
    //
    // Create run script for job submission
    //
    ofstream out;
    out.open(fRunScript->Data());
    out << "#!/bin/sh" << endl
	<< "# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "# !!! This is an automatically generated file !!!" << endl
	<< "# !!! D O   N O T   E D I T                   !!!" << endl
	<< "# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "#" << endl
	<< "# Run script for A++ analysis job submission" << endl
	<< "#" << endl << endl
	<< "# Set environment" << endl;

    // Platform
    if ( gSystem->Getenv("ARCH_TYPE") != 0 ) {
	out << "export ARCH_TYPE=" << gSystem->Getenv("ARCH_TYPE") << endl;
    } else {
	Error("CreateRunScript", "Environment variable ARCH_TYPE not set. Abort!");
	gSystem->Abort(0);
    }

    if (!WriteEnvSetup(out)) {

    // ROOT
    out << "export ROOTSYS=" << gSystem->Getenv("ROOTSYS") << endl
	<< "export PATH=${ROOTSYS}/bin:${PATH}" << endl
	<< "export LD_LIBRARY_PATH=${ROOTSYS}/lib:${LD_LIBRARY_PATH}" << endl;

    // A++ and user-defined libraries
    TIter next_lib(fListOfUserEnvs);
    TNamed *env = 0;
    while ( (env = (TNamed*)next_lib()) ) {
	if ( gSystem->Getenv(env->GetName()) != 0 ) {
	    TString host2(gSystem->HostName());
	    if ( host2.Contains("lx") ) {	    
		out << "source /home/grid/lcg/sw/root_setup_sles11.sh-v5.34" << endl;
	    }
	    out << "export " << env->GetName() << "="
		<< gSystem->Getenv(env->GetName()) << endl
		<< "export LD_LIBRARY_PATH=${"
		<< env->GetName() << "}/lib/${ARCH_TYPE}:${LD_LIBRARY_PATH}"
		<< endl;
	} else {
	    Error("CreateRunScript", "Environment variable %s not set. Abort!",
		  env->GetName());
	    gSystem->Abort(0);
	}
    }

    }
    out	<< endl << endl
	<< "# Job execution" << endl;
//	<< "export PBS_O_HOME=" << fTempOutputPath->Data() << endl
//	<< "export PBS_O_WORKDIR=" << fTempOutputPath->Data() << endl;
//	<< "cd $PBS_O_WORKDIR" << endl;

    if (  fTempOutputFileName != 0 ) {
	out << "if [ ! -d " << gSystem->DirName( fTempOutputFileName->Data() ) << " ]; then " << endl
	    << "   mkdir -p " << gSystem->DirName( fTempOutputFileName->Data() ) << endl
	    << "fi" << endl;
    }
    
    if ( fTempOutputPath != 0 && fTempLogFilePath != 0 ) {
	out << "mkdir -p " << fTempOutputPath->Data() << endl
	    << "cp " << fJobHome->Data() << "/analysis_run.C " << fTempOutputPath->Data() << endl
	    << "cd " << fTempOutputPath->Data() << endl
	    << endl
	    << "# Remove old Logfiles " << endl
	    << "rm " << fTempLogFilePath->Data() << endl
	    << "rm " << fLogFilePath->Data() << endl
	    << "root -q -l -b analysis_run.C > " << fTempLogFilePath->Data()
	    << " 2>&1" << endl
	    << "mv " << fTempLogFilePath->Data() << " " << fLogFilePath->Data() << endl
	    << "chmod g+w -R " << gSystem->DirName(fLogFilePath->Data()) << endl;
    } else {
	out << "JOBHOME=" << fJobHome->Data() << endl
	    << "cd $JOBHOME" << endl	
	    << "root -q -l -b analysis_run.C > " << fLogFilePath->Data()
	    << " 2>&1" << endl
	    << "chmod g+w -R " << fLogFilePath->Data() << endl;
    }
    
    if (  fTempOutputFileName != 0 )
	out << "mv " << fTempOutputFileName->Data() << " " << fOutputFileName->Data() << endl
	    << "chmod g+w " << fOutputFileName->Data() << endl;
    
    out.close();
}

//____________________________________________________________________

void AtlAppAnalysisTask::CreateNAFBatchRunScript() {
    //
    // Create run script for job submission
    //
    ofstream out;
    out.open(fRunScript->Data());
    out << "# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "# !!! This is an automatically generated file !!!" << endl
	<< "# !!! D O   N O T   E D I T                   !!!" << endl
	<< "# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "#" << endl
	<< "# Run script for A++ analysis job submission" << endl
	<< "#" << endl
	<< "# Set environment" << endl
	<< "#" << endl
	<< "#" << endl
	<< "# (only accept jobs with correct resources)" << endl
	<< "#$ -w e" << endl
	<< "#" << endl
	<< "# (stderr and stdout are merged together to stdout)" << endl
	<< "#$ -j y" << endl
	<< "#" << endl
	<< "#$ -o "<< fJobHome->Data() << endl //"##$ -o /dev/null" << endl
	<< "#$ -e " << fJobHome->Data() << endl //"##$ -e /dev/null" << endl
	<< "#" << endl
	<< "# (send mail on job's end and abort)" << endl
	<< "##$ -m ae -M rocco.mandrysch@desy.de" << endl
	<< "#" << endl
	<< "# (put log files into current working directory)" << endl
	<< "#$ -cwd" << endl
	<< "#" << endl
	<< "# (use ATLAS project)" << endl
	<< "#$ -P atlas" << endl
	<< "#" << endl
	<< "# (choose memory and disc usage)" << endl
	<< "#$ -l h_vmem=1G" << endl
	<< "#$ -l h_stack=10M" << endl
	<< "#$ -l h_fsize=10G" << endl
	<< "#" << endl
	<< "# (choose time)" << endl
	<< "#$ -l h_cpu=12:00:00" << endl
	<< "" << endl
	<< "# change to scratch directory" << endl
	<< "cd $TMPDIR" << endl
	<< "#" << endl
	<< "#" << endl;
    if ( gSystem->Getenv("ARCH_TYPE") != 0 ) {
	out << "export ARCH_TYPE=" << gSystem->Getenv("ARCH_TYPE") << endl;
    } else {
	Error("CreateRunScript", "Environment variable ARCH_TYPE not set. Abort!");
	gSystem->Abort(0);
    }
    out << "export ROOTSYS=" << gSystem->Getenv("ROOTSYS") << endl
	<< "export PATH=${ROOTSYS}/bin:${PATH}" << endl
	<< "export LD_LIBRARY_PATH=${ROOTSYS}/lib:${LD_LIBRARY_PATH}" << endl;

    // A++ and user-defined libraries
    TIter next_lib(fListOfUserEnvs);
    TNamed *env = 0;
    while ( (env = (TNamed*)next_lib()) ) {
	if ( gSystem->Getenv(env->GetName()) != 0 ) {
	    out << "export " << env->GetName() << "="
		<< gSystem->Getenv(env->GetName()) << endl
		<< "export LD_LIBRARY_PATH=${"
		<< env->GetName() << "}/lib/${ARCH_TYPE}:${LD_LIBRARY_PATH}"
		<< endl;
	} else {
	    Error("CreateRunScript", "Environment variable %s not set. Abort!",
		  env->GetName());
	    gSystem->Abort(0);
	}
    }
    out	<< endl << endl
	<< "# Job execution" << endl
    	<< "cp " << fJobHome->Data() << "/analysis_run.C ." << endl
	<< "" << endl
	<< "root -q -l -b analysis_run.C" << endl
	<< "" << endl;
    
    std::string output_file_name = fOutputFileName->Data();
    size_t found=output_file_name.find_last_of("/\\");
    out	<< "cp " << output_file_name.substr(found+1) << " " << fOutputFileName->Data() << endl
	<< "" << endl;
    out << "exit 0" << endl;
    
    out.close();
}

//____________________________________________________________________

void AtlAppAnalysisTask::CreateGridRunScript() {
    //
    // Create run script for grid job submission
    //
    ofstream out;
    out.open(fRunScript->Data());
    out << "# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "# !!! This is an automatically generated file !!!" << endl
	<< "# !!! D O   N O T   E D I T                   !!!" << endl
	<< "# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl
	<< "#" << endl
	<< "# Run script for A++ analysis grid job submission" << endl
	<< "#" << endl
	<< endl << endl
	
	<< "# Job execution" << endl;

    //
    // Get input folder name
    //
    TString inputfolder = ((TObjString*)fInputFiles->At(0))->GetString();

    //
    // Build output folder name
    //
    TObjArray* array = inputfolder.Tokenize(".");
    TString outputfolder =
	"user."
	+(*fGridUser)
	+"."
	+((TObjString*)array->At(2))->String() // project tag
	+"."
	+((TObjString*)array->At(3))->String() // MC sample number / DATA period or run number
	+"."
	+((TObjString*)array->At(4))->String();// MC sample name / DATA stream
    
    // DATA?
    if ( ((TObjString*)array->At(2))->String().Contains("data") )
	outputfolder += ((TObjString*)array->At(5))->String();
    
    outputfolder +=
	+"."
	+(*fGridAnalysisName)
	+"_"
	+GetName()
	+"_"
	+(*fGridSuffix)
	+"/";

    //
    // Build general prun command
    //
    TString generalcmd =
	"prun --inDS "
	+inputfolder
	+" --outDS "
	+outputfolder
	+" --athenaTag="
	+(*fAthenaTag)
	+" --extFile=*.root --noBuild --nGBPerJob=MAX --crossSite=50" //--mergeOutput
	+" --excludedSite="
	+(*fExcludedSites);

    TString generalcmd2 =
	+" --site="
	+(*fSingleSite);
    
    //
    // Build analysis command
    //
    TString analysiscmd=
	" --exec \'[ $(ls|grep APP) ]&&cd APPonGrid; source aplusplus_setup.sh; ./setAnalysisInput.sh \"%IN\"; root -b -l -q analysis_run.C | tee analysis.log\' --outputs analysis.log,"
	+(*fGridAnalysisName)
	+".root";

    //
    // Write out complete prun command
    //
    if ( *fSingleSite != "" ) {
	out << generalcmd+generalcmd2+analysiscmd << endl
	    << "" << endl
	    << "exit 0" << endl;
    } else {
	out << generalcmd+analysiscmd << endl
	    << "" << endl
	    << "exit 0" << endl;
    }

    
    out.close();

    //
    // Copy runscript and analysis root script to grid working directory
    //
    TString cp_cmd("cp ");
    cp_cmd.Append(fRunScript->Data());
    cp_cmd.Append(" ");
    cp_cmd.Append(gSystem->ExpandPathName("$GRID_HOME"));
    gSystem->Exec(cp_cmd.Data());

    cp_cmd.Clear();
    cp_cmd.Append("cp ");
    cp_cmd.Append(fRootScript->Data());
    cp_cmd.Append(" ");
    cp_cmd.Append(gSystem->ExpandPathName("$GRID_HOME"));
    gSystem->Exec(cp_cmd.Data());

}

//____________________________________________________________________

void AtlAppAnalysisTask::CheckInputChain() {
    //
    // Check the input chain
    //
    Info("CheckInputChain", "Check input chain \"%s\" ...",
	 fInputTreeName->Data());
    TChain *InputChain = new TChain(fInputTreeName->Data());

    // Concatenate input files
    TIter next(fInputFiles);
    TObjString *item = 0;
    Int_t nfiles = 0;
    while ( (item = (TObjString*)next()) ) {
	Int_t nfiles_item = InputChain->Add(item->GetString().Data());
	if ( nfiles_item == 0 )
	    Warning("CheckInputChain", "No files found for search string %s",
		    item->GetString().Data());
	nfiles += nfiles_item;
    }
    if ( nfiles == 0 ) {
	Error("CheckInputChain", "No input files given. Abort!");
	gSystem->Abort(0);
    } else {
	Info("CheckInputChain", "Added %-d input files to chain \"%s\".",
	     nfiles, fInputTreeName->Data());
    }
    delete InputChain;
}

//____________________________________________________________________

void AtlAppAnalysisTask::SetCut(const char* var, const char* val) {
    //
    // Set cut value for analysis selector.
    //
    // The variable name must be a valid data member of the underlying
    // analysis selector class (see AtlSelector). This function can
    // also be used in order to change the value for an already
    // existing cut
    //

    // Cut already in list ? Otherwise add new object
    AtlCut *item = (AtlCut*)fListOfCuts->FindObject(var);
    if ( item != 0 ) {
	item->SetVal(val);
    } else {
	fListOfCuts->Add(new AtlCut(var, val));
    }
}

//____________________________________________________________________

void AtlAppAnalysisTask::SetToolCut(const char* tool, const char* var,
		         const char* val) {
    //
    // Set cut value for an A++ selector tool.
    //
    // The variable name must be a valid data member of the given A++
    // analysis tool class (see AtlAnalysisTool). This function can
    // also be used in order to change the value for an already
    // existing cut
    //

    // Cut already in list ? Otherwise add new object
    AtlToolCut *item = FindToolCut(tool, var);
    if ( item != 0 ) {
	item->SetVal(val);
    } else {
	fListOfToolCuts->Add(new AtlToolCut(tool, var, val));
    }
}

//____________________________________________________________________

AtlToolCut* AtlAppAnalysisTask::FindToolCut(const char* tool,
					    const char* var) {
    //
    // Find A++ analysis tool cut
    //
    TString name(tool);
    name.Append(";;");
    name.Append(var);
    return (AtlToolCut*)fListOfToolCuts->FindObject(name.Data());
}

//____________________________________________________________________

AtlCut* AtlAppAnalysisTask::FindCut(const char* var) {
    //
    // Find A++ analysis selector cut
    //
    return (AtlCut*)fListOfCuts->FindObject(var);
}

//____________________________________________________________________

void AtlAppAnalysisTask::AddUserEnv(const char* env) {
    //
    // Add user-defined environment variable for shared library search
    // paths
    //
    fListOfUserEnvs->Add(new TNamed(env, ""));
}

//____________________________________________________________________

void AtlAppAnalysisTask::Print( Option_t *option ) const {
    //
    // Print config
    //
    cout << "=============================" << endl;
    cout << " Task: " << fName << endl;
    cout << " ---------------------------" << endl;
    cout << " TreeName: " << fInputTreeName->Data() << endl;
    cout << " Selector: " << fSelector->Data() << endl;
    cout << " ---------------------------" << endl;
    cout << " JobHome : " << fJobHome->Data() << endl;
    cout << " OutputFileName: " << fOutputFileName->Data() << endl;
    cout << " " << endl;
    cout << " " << endl;
    cout << " " << endl;
    cout << "=============================" << endl;
}

//____________________________________________________________________

void AtlAppAnalysisTask::SetEvtReader(char const * readerClass, char const * readerArgs) {
    *fReaderClass = (readerClass ? readerClass : "");
    *fReaderArgs = (readerArgs ? readerArgs : "");
}

//____________________________________________________________________

TDataMember* AtlAppAnalysisTask::FindDataMember(TClass *cl,
						const char* DMName) const {
    //
    // Find data nember of given namen in the given class. If it's not
    // found inside the given class, all parent classes are searched
    // recursively.
    //

    // Test given class
    TDataMember *dm = cl->GetDataMember(DMName);
    if ( dm != 0 ) return dm;

    // Test list (multiple inheritance) of all parent classes
    // recursively
    TClass *cl_base = 0;
    TNamed *cl_base_name = 0;
    TIter next_base(cl->GetListOfBases());
    while ( (cl_base_name = (TNamed*)next_base()) ) {
	cl_base = (TClass*)gROOT->GetClass(cl_base_name->GetName());
	dm = FindDataMember(cl_base, DMName);
	if ( dm != 0 ) return dm;
    }

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