//____________________________________________________________________
//
// Class with information on systematics
//
// This class holds all information for a systematic, i.e. the
// pointer to the nominal and the systematic histograms. In order to
// keep the class structure simple and efficient, the
// class only stores information for _one_ process at a time.
//
// Please use the ChangeProcess("processname") function to change processes.
//
// There are two operation modes:
// - This class can be used with a MCPlotter file to extract the histograms
// and save them in a template file.
// - The template file should then be used to perform shape tests, extract
// rate uncertainties, etc. 
//
// The derived class need to implement the functions:
// - Initialize:
//   Function for reading MCPlotter files and extracting a list of
//   histograms that are needed for ComputeUpDownVariation().
//   (The histograms can then be accessed for each process by calling
//    ChangeProcess() )
//
// - GetHistsFromFile:
//   Read systematic templates from template file for a given process.
//
// - ComputeUpDownVariation:
//   Function for computing the up and down variation for this systematic
//   given the histograms from any MCPlotter file.
//
//
// If this class is used with MCPlotter files:
// -------------------------------------------
// To prevent open and closing of files, the user should get all infos
// for all processes, before going to the next systematic.
// - see AtlHistFactoryTask as example
// 
// 
//  
// Author: Soeren Stamm <mailto: stamm@physik.hu-berlin.de>
// Update: $Id: AtlHistFactorySystematic.cxx,v 1.9 2016/04/19 07:46:17 stamm Exp $
// Copyright: 2015 (C) Soeren Stamm
//
#ifndef ATLAS_AtlHistFactorySystematic
#include <AtlHistFactorySystematic.h>
#endif
#include <TSystem.h>
#include <TMath.h>
#include <TRandom3.h>
#include <TStyle.h>
#include <TCanvas.h>
#include <TPad.h>
#include <TROOT.h>
#include <TGraphAsymmErrors.h>
#include <TLegend.h>
#include <TLatex.h>

#ifndef __CINT__
ClassImp(AtlHistFactorySystematic);
#endif

//____________________________________________________________________

AtlHistFactorySystematic::AtlHistFactorySystematic() {
    //
    // Default constructor
    //
}

//____________________________________________________________________

AtlHistFactorySystematic::AtlHistFactorySystematic(const char *systname,
						   const char *systtitle,
						   Bool_t useShape) :
    TNamed(systname, systtitle) {
    //
    // Default constructor
    //
    fHistUp   = 0;
    fHistDown = 0;
    fHistNom  = 0;

    fHistShapeResidual = 0;
    fGraphShapeQQPlot = 0;

    fTemplateFile = 0;
    fDiscriminant = 0;

    fIsNominal = kFALSE;
    fUseShape  = useShape;
    fUseFullStats = kFALSE;

    fNPseudoExp   = 30000;
    fUsePseudoExp = kFALSE;
    fHistChi2 = 0;
}

//____________________________________________________________________

AtlHistFactorySystematic::~AtlHistFactorySystematic() {
    //
    // Default destructor
    //
    if ( fDiscriminant != 0 ) delete fDiscriminant;
    fTemplateFile = 0; // we do not own the template file!
}

//____________________________________________________________________

void AtlHistFactorySystematic::PerformShapeTest(Double_t& pval_min,
						Double_t& kstest_min) {
    //
    // Perform shape test, returns p-value for up and down variations.
    //
    // If a systematic does not have a up/down histogram for shape
    // comparisons this function can be overloaded for this particular
    // systematic.
    //

    // Method only works with a shape template file
    if ( fTemplateFile == 0 ) {
	Error("PerformShapeTest",
	      "You need to set a template file. Abort!");
	gSystem->Abort();
    }

    // Clone histos to leave data member unchanged
    TH1 *h_up   = (TH1*) fHistUp->Clone("syst_up");
    TH1 *h_down = (TH1*) fHistDown->Clone("syst_down");
    
    // Normalize the systematic histograms to the nominal event yield
    h_up->Scale(fHistNom->Integral()/h_up->Integral());
    h_down->Scale(fHistNom->Integral()/h_down->Integral());

    Int_t n_res = fHistNom->GetNbinsX();
    Double_t *res_up   = new Double_t[n_res];
    Double_t *res_down = new Double_t[n_res];
    Double_t *res;

    fPValue_up   = 0.;
    fPValue_down = 0.;

    if ( fUsePseudoExp ) {
	Double_t chi2_up   = fHistNom->Chi2Test(h_up,   "WWCHI2", res_up);
	Double_t chi2_down = fHistNom->Chi2Test(h_down, "WWCHI2", res_down);

	Int_t bin_chi2_up   = fHistChi2->FindBin(chi2_up);
	Int_t bin_chi2_down = fHistChi2->FindBin(chi2_down);

	fPValue_up   = fHistChi2->Integral(bin_chi2_up,
					fHistChi2->GetNbinsX()+1);
	fPValue_down = fHistChi2->Integral(bin_chi2_down,
					fHistChi2->GetNbinsX()+1);
    } else {
	fPValue_up   = fHistNom->Chi2Test(h_up, "WW", res_up);
	fPValue_down = fHistNom->Chi2Test(h_down, "WW", res_down);
    }

    pval_min  = TMath::Min(fPValue_up, fPValue_down);
    if ( fPValue_up < fPValue_down)
	res = res_up;
    else
	res = res_down;
    
    // Create chi2 residual plots
    fHistShapeResidual = (TH1*) fHistNom->Clone("residuals");
    for ( Int_t i = 0; i < n_res; i++ ) {
	fHistShapeResidual->SetBinContent(i+1, res[i]);
	// residuals do not have an associated error, thus set it to zero
	fHistShapeResidual->SetBinError(i+1, 0.);
    }
    
    // Create chi2 residual Q-Q plot
    // =============================
    // first approach use normal distribution
    // although the residuals might follow a student t distribution.
    fGraphShapeQQPlot = new TGraph(n_res);
    
    // Sort residuals
    // ---------------
    // Create index array
    TArrayI *index = new TArrayI(n_res);
    TMath::Sort(n_res, res, index->GetArray(), kFALSE);
    
    Double_t *sorted_res = new Double_t[n_res];
    // Fill sorted residual list
    for ( Int_t j = 0; j < n_res; j++){
	sorted_res[j] = res[index->At(j)];
    }
    
    for ( Int_t k = 0; k < n_res; k++ ) {
	// Evaluate qunatiles at (m-0.5)/n
	// m -> Number of residual (1, 2, ..., n_res)
	// n -> n_res
	// m-0.5 == k+0.5
	fGraphShapeQQPlot->SetPoint(k,
				    TMath::NormQuantile((k+0.5)/n_res),
				    sorted_res[k]);
    }
    
    Double_t kstest_up   = fHistNom->KolmogorovTest(h_up);
    Double_t kstest_down = fHistNom->KolmogorovTest(h_down);
    kstest_min  = TMath::Min(kstest_up, kstest_down);

    // clean-up
    delete h_up;
    delete h_down;
}

//____________________________________________________________________

void AtlHistFactorySystematic::SetDiscriminant(const char* discriminant) {
    //
    // Setter function for the histogram name and it's directory
    // within the MCPlotter file.
    //

    if ( fDiscriminant != 0 ) delete fDiscriminant;
    fDiscriminant = new TString(discriminant);
}

//____________________________________________________________________

void AtlHistFactorySystematic::GetRateUnc(Double_t& rate_up,
					  Double_t& rate_down) {
    //
    // Return the relative rate uncertainties
    //
    //   rate_up   = (up - nom)/nom;
    //   rate_down = (nom - down)/nom;
    //
    //   up/down/nom = Number of Events (up/down/nom)
    //

    if ( fHistNom == 0 || fHistUp == 0 || fHistDown == 0 ) {
	Error("AtlHistFactorySystematic",
	      "Please provide all three histograms: nominal, up-var. and down-variation. Abort!");
	gSystem->Abort();
    }

    Double_t nom  = fHistNom->Integral();
    Double_t up   = fHistUp->Integral();
    Double_t down = fHistDown->Integral();
    
    rate_up   = (up - nom)/nom;
    rate_down = (nom - down)/nom;
}

//____________________________________________________________________

void AtlHistFactorySystematic::ChangeProcess(const char* process) {
    //
    // Change the process and load the corresponding informations
    // into the class data members.
    //

    // To check the histograms here might cause problems.
    //
    // 1. We assume that a systematic always has up/down variations
    //    - Is this true?
    //    - Do we need to treat a systematic always with up/down
    //      variations?
    //    - Can the histfactory deal with one sided systematics
    //      that are not symmetriezed?
    // 2. The systematic 'nominal' has by definition only one
    //    histogram...
    // 3. When creating the file holding all templates, we assume
    //    that we save always the up/down variation
    //    - What do we do with nominal or if we don't have both
    //      variations?
    //
    // --> Possible solution:
    //     - Make this function pure virtual, each systematic has
    //       to define its own way of retrieving histograms
    //     - GetRateUncertainty() has to be a virtual function
    //     - For saving templates, we return a list of templates
    //       to be saved.
    //
    
    if ( fTemplateFile != 0 ) {
	// we get the histos directly from the template file
	fHistNom = (TH1*) fTemplateFile->Get(Form("%s_%s",
						  process,
						  "nominal"));
	GetHistsFromFile(process);

	// For nominal systematic only nominal histogram exists
	if ( fIsNominal ) {
	    if ( fHistNom == 0 ) {
		Error("ChangeProcess",
		      "Could not find histogram '%s_nominal' in file %s\n. Abort!",
		      process, fTemplateFile->GetName());
		gSystem->Abort();
	    }
	} else if ( fHistUp == 0 || fHistDown == 0 || fHistNom == 0 ) {
	    // For all other sytematics, all three histograms must exist
	    Error("ChangeProcess",
		  "Could not find histograms for process '%s' in file '%s'.\n Abort!",
		  process,
		  fTemplateFile->GetName());
	    gSystem->Abort();
	}
    } else {
	// Compute the variation using MCPlotter files
	ComputeUpDownVariation(process);

	// Check if templates for systematic up/down have been created
	//
	// This is problematic if one chooses to have not a up down variation
	// or nominal. What happens then?
	if ( (fHistUp == 0 || fHistDown == 0) && fHistNom == 0) {
	    Error("ChangeProcess",
		  "Could not find histogram for process '%s'. Abort!",
		  process);
	    gSystem->Abort();
	}
    }
}

//____________________________________________________________________

void AtlHistFactorySystematic::SaveTemplates(TFile *fout) {
    //
    // Save the templates of the up/down variations in the
    // output file.
    //
    // Systematics that do not produce a up and down varied histogram
    // can overwrite this function, e.g. for the nominal case.
    //

    // Write() will save it to the current directory
    // therefore change the current directory
    fout->cd();

    // fHistUp->SetDirectory(fout);
    fHistUp->Write();
    
    // fHistDown->SetDirectory(fout);
    fHistDown->Write();
}

//____________________________________________________________________

void AtlHistFactorySystematic::SaveShapeCtrlPlots(TFile *fout,
						  const char *process) {
    //
    // Save the residual and Q-Q ctrl plots for this systematic
    // in given output file
    //
    // Systematics that do not produce a up and down varied histogram
    // can overwrite this function
    //

    // Write() will save it to the current directory
    // therefore change the current directory
    fout->cd();
    if ( fout->GetDirectory(GetName()) == 0 ) {
	fout->mkdir(GetName(), GetName());
    }
    fout->cd(GetName());


    fHistShapeResidual->SetName(Form("%s_%s_residuals",
				     process,
				     GetName()));
    fGraphShapeQQPlot->SetName(Form("%s_%s_QQplot",
				    process,
				    GetName()));
    fGraphShapeQQPlot->GetXaxis()->SetTitle("expected residuals");
    fGraphShapeQQPlot->GetYaxis()->SetTitle("sample residuals");
    
    fHistShapeResidual->Write();
    fGraphShapeQQPlot->Write();

    if ( fHistChi2 != 0 ) fHistChi2->Write();
    
    // clean up histograms
    delete fHistShapeResidual;
    delete fGraphShapeQQPlot;
}

//____________________________________________________________________

void AtlHistFactorySystematic::ComputeChi2Distribution() {
    // 
    // Compute the chi square distribution for the reference
    // histogram using pseudo experiments and assuming gaussian
    // errors in each bin.
    //
    // The resulting chi2 distribution can be used to compute p-values
    // without assuming a chi square distribution.
    //

    // Redirect all the info statements from Chi2Test during
    // pseudo experiments to trash bin
    gSystem->RedirectOutput("/dev/null");

    
    // Delete old chi2 histogram if it exists
    if ( fHistChi2 != 0 ) delete fHistChi2;
    fHistChi2 = new TH1F(Form("%s_Chi2Dist", fHistNom->GetName()),
			 "Chi2 Distriubtion",
			 200., 0., 80.);
    
    // The nominal histogram holds the reference histogram
    TH1F *hVaried_a = (TH1F*) fHistNom->Clone("Varied_A");
    TH1F *hVaried_b = (TH1F*) fHistNom->Clone("Varied_B");

    TRandom3 rnd1;
    rnd1.SetSeed();
    TRandom3 rnd2;
    rnd2.SetSeed();

    for(Int_t i = 0; i < fNPseudoExp; i++) {
	for( Int_t j = 1; j <= fHistNom->GetNbinsX(); j++) {
	    hVaried_a->SetBinContent(j,
				     rnd1.Gaus(fHistNom->GetBinContent(j),
					       fHistNom->GetBinError(j)));
	    hVaried_b->SetBinContent(j,
				     rnd2.Gaus(fHistNom->GetBinContent(j),
					       fHistNom->GetBinError(j)));
	    // keep the relative error of the bin fixed
	    // --> scale nominal error by the ratio of the bin contents
	    Double_t errVar_a = fHistNom->GetBinError(j);
	    errVar_a *= hVaried_a->GetBinContent(j)/fHistNom->GetBinContent(j);
	    hVaried_a->SetBinError(j, errVar_a);
	    
	    Double_t errVar_b = fHistNom->GetBinError(j);
	    errVar_b *= hVaried_b->GetBinContent(j)/fHistNom->GetBinContent(j);
	    hVaried_b->SetBinError(j, errVar_b);
	}
	fHistChi2->Fill(hVaried_a->Chi2Test(hVaried_b, "WWCHI2"));
    }
    // normalize distribution
    fHistChi2->Scale(1.0/fHistChi2->Integral());
    delete hVaried_a;
    delete hVaried_b;

    // restore std_out/std_err
    gSystem->RedirectOutput(0);
}

//____________________________________________________________________

TH1F* AtlHistFactorySystematic::GetChi2Distribution() {
    //
    // Return the chi2 distribution (compute dist. if necessary)
    //
    if ( fHistChi2 == 0 )
	ComputeChi2Distribution();

    // Check if it is the correct chi2 distriubtion for
    // the current histogram
    TString chi2name = fHistChi2->GetName();
    if ( !chi2name.Contains(fHistNom->GetName()) )
	ComputeChi2Distribution();
        
    return fHistChi2;
}

//____________________________________________________________________

void AtlHistFactorySystematic::ExportShapePlots(const char *process,
						const char *dir) {
    //
    // Export shape plots to pdf for given process in directory 'dir'
    //

    // set batch mode to suppress canvas
    Bool_t IsBatch = gROOT->IsBatch();
    if ( !IsBatch ) gROOT->SetBatch(kTRUE);
    
    // Setup Atlas Style if possible
    TStyle *AtlasStyle = gROOT->GetStyle("ATLAS");
    if ( AtlasStyle == 0 ) {
	Warning("ExportShapePlots",
		"Could not find ATLAS Style! Using current style.");
    } else {
	gROOT->SetStyle("ATLAS");
	gROOT->ForceStyle();
    }

    // Setup Main and Ratio Pad
    // - see HepDataMCPlot::SetupPad() for details
    TCanvas *Canvas = gROOT->MakeDefCanvas();

    Double_t RatioHeight = 0.4;
    Double_t addspace  = RatioHeight - gStyle->GetPadBottomMargin() + gStyle->GetLabelSize()*0.5;
    Double_t newheight = (1. + addspace);

    TPad *MainPad  = new TPad("MainPad", "", 0., 1.- 1./newheight, 1., 1.);
    TPad *RatioPad = new TPad("RatioPad", "", 0., 0., 1., RatioHeight/newheight);
    RatioPad->SetBottomMargin(gStyle->GetPadBottomMargin()/RatioHeight);

    Canvas->SetWindowSize(Canvas->GetWindowWidth(),
			  Canvas->GetWindowHeight()*(1 + addspace));

    // Main Pad
    // - Draw distributions normalized (-> to unity or nominal?)
    //
    // Ratio Pad
    // - Draw a) (up - nom)/nom
    //        b) (nom - down)/nom
    // - for a), and b): up/down are scaled to nominal
    //   (i.e. comparing shapes only)
    //
    // - Uncertainty band:
    //   relativ error of nominal histogram

    // Clone histos to leave data member unchanged
    TH1 *h_up   = (TH1*) fHistUp->Clone("syst_up");
    TH1 *h_down = (TH1*) fHistDown->Clone("syst_down");
    TH1 *h_nom  = (TH1*) fHistNom->Clone("nominal");
    
    // Normalize the systematic histograms to the nominal event yield
    h_up->Scale(h_nom->Integral()/h_up->Integral());
    h_down->Scale(h_nom->Integral()/h_down->Integral());

    // Histo Shapes
    Canvas->cd();
    MainPad->Draw();
    MainPad->cd();

    // Setup
    // - colors
    h_nom->SetLineColor(kBlack);
    h_up->SetLineColor(kBlue);
    h_down->SetLineColor(kRed);
    // - fill style
    h_nom->SetFillStyle(0);
    h_up->SetFillStyle(0);
    h_down->SetFillStyle(0);
    
    // - axis labels
    h_nom->SetLabelSize(0., "X");
    h_nom->SetTitleSize(0., "X");
    h_nom->GetXaxis()->SetDecimals(kTRUE);
    h_nom->GetYaxis()->SetDecimals(kTRUE);

    // - axis range
    h_nom->SetMaximum(h_nom->GetMaximum()*1.4);

    // Draw main
    h_nom->Draw("hist");
    h_up->Draw("same,hist");
    h_down->Draw("same,hist");

    h_nom->SetYTitle("Entries");
    h_nom->SetTitleOffset(1.2, "Y");

    // Draw legend
    TLegend *leg = new TLegend(0.45, 0.75, 0.8, 0.92);
    leg->SetHeader(process);
    leg->AddEntry((TObject*)0, Form("%s", GetTitle()), "");
    leg->AddEntry(h_nom, "Nominal", "l");
    leg->AddEntry(h_up,
		  Form("up, p-value = %3.2f", fPValue_up),
		  "l");
    leg->AddEntry(h_down,
		  Form("down, p-value = %3.2f", fPValue_down),
		  "l");
    leg->SetFillColor(0);
    leg->SetFillStyle(0);
    leg->SetLineColor(0);
    leg->SetBorderSize(0);
    leg->Draw();
    
    // Draw Atlas label
    // -> see HepDataMCPlot::DrawAtlasLabel() for details
    TLatex l; //l.SetTextAlign(12); l.SetTextSize(tsize); 
    l.SetNDC();
    l.SetTextFont(72);
    l.SetTextColor(kBlack);

    double delx = 0.115*696*gPad->GetWh()/(604*gPad->GetWw());

    Double_t x = 0.2;
    Double_t y = 0.87;
    
    l.DrawLatex(x,y,"ATLAS");

    TLatex p; 
    p.SetNDC();
    p.SetTextFont(42);
    p.SetTextColor(kBlack);
    p.DrawLatex(x+delx,y, "Internal");

    
    // Shape and uncertainty band
    Canvas->cd();
    RatioPad->Draw();
    RatioPad->cd();

    TH1 *h_shape_up   = (TH1*) h_up->Clone("shape_up");
    h_shape_up->Add(fHistNom, -1.);
    h_shape_up->Divide(fHistNom);
    h_shape_up->SetYTitle("shape diff.");
    
    TH1 *h_shape_down = (TH1*) h_down->Clone("shape_down");
    h_shape_down->Add(fHistNom, -1.);
    h_shape_down->Divide(fHistNom);
    
    TH1 *h_err = (TH1*) fHistNom->Clone("err_band");
    for ( Int_t i = 1; i <= h_err->GetNbinsX(); i++ ) {
	h_err->SetBinError(i, h_err->GetBinError(i)/h_err->GetBinContent(i));
	h_err->SetBinContent(i, 0.);
    }

    // Setup
    // - colors
    h_shape_up->SetLineColor(kBlue);
    h_shape_down->SetLineColor(kRed);

    // - axis labels
    h_shape_up->SetTitleSize(1./RatioHeight*gStyle->GetTitleSize("X"), "X");
    h_shape_up->SetLabelSize(1./RatioHeight*gStyle->GetLabelSize("X"), "X");

    h_shape_up->SetTitleOffset(0.5, "Y");
    h_shape_up->GetYaxis()->SetTitle("shape diff.");
    
    h_shape_up->SetTitleSize(1./RatioHeight*gStyle->GetTitleSize("Y"), "Y");
    h_shape_up->SetLabelSize(1./RatioHeight*gStyle->GetLabelSize("Y"), "Y");

    h_shape_up->GetXaxis()->SetDecimals(kTRUE);
    h_shape_up->GetYaxis()->SetDecimals(kTRUE);

    h_shape_up->GetXaxis()->SetNdivisions(505);
    h_shape_up->GetYaxis()->SetNdivisions(505);

    Double_t min = h_shape_up->GetMinimum();
    Double_t max = h_shape_up->GetMaximum();

    if ( min > h_shape_down->GetMinimum() ) min = h_shape_down->GetMinimum();
    if ( max < h_shape_down->GetMaximum() ) max = h_shape_down->GetMaximum();

    h_shape_up->SetMaximum(max + 0.1);
    h_shape_up->SetMinimum(min - 0.1);

    // Draw ratio
    h_shape_up->SetYTitle("shape diff.");
    h_shape_down->SetYTitle("shape diff.");
    
    h_shape_up->Draw("hist");
    h_shape_up->GetYaxis()->SetTitle("shape diff.");
    h_shape_down->Draw("hist,same");

    TGraphAsymmErrors *h_errorband = new TGraphAsymmErrors(h_err);
    h_errorband->SetFillStyle(3254);
    h_errorband->SetFillColor(16);
    h_errorband->SetLineColor(16);
    h_errorband->SetMarkerSize(0.);
    h_errorband->Draw("5,same");

    Canvas->SaveAs(Form("%s/%s.pdf",
			dir, process));

    delete h_up;
    delete h_down;
    delete h_nom;
    delete leg;

    // Restore old batch mode
    gROOT->SetBatch(IsBatch);
}

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