Index: examples/CMakeLists.txt
===================================================================
--- examples/CMakeLists.txt	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,22 +1,0 @@
-include_directories(
-  ${CMAKE_SOURCE_DIR}
-  ${DelphesExternals_INCLUDE_DIR}
-)
-
-file(GLOB executables RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp)
-file(GLOB macros *.C *.tcl *.tfs)
-
-# build all executables and put them into bin/
-foreach(sourcefile ${executables})
-  string(REPLACE ".cpp" "" name ${sourcefile})
-  add_executable(${name} ${sourcefile})
-  target_link_libraries(${name} Delphes)
-  install(TARGETS ${name} DESTINATION bin)
-endforeach()
-
-# take all other relevant files and put them into examples/
-install(FILES ${macros} DESTINATION examples)
-install(DIRECTORY ExternalFastJet DESTINATION examples)
-if(PYTHIA8_FOUND)
-  install(DIRECTORY Pythia8 DESTINATION examples)
-endif()
Index: examples/CaloGrid.cpp
===================================================================
--- examples/CaloGrid.cpp	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,151 +1,0 @@
-//calorimeter grid
-#include <algorithm>
-#include <cassert>
-#include <iostream>
-#include <map>
-#include <set>
-#include <sstream>
-#include <utility>
-#include <vector>
-
-#include "ExRootAnalysis/ExRootConfReader.h"
-#include "classes/DelphesClasses.h"
-#include "display/Delphes3DGeometry.h"
-
-#include "TCanvas.h"
-#include "TH2F.h"
-#include "TLine.h"
-#include "TString.h"
-#include "TStyle.h"
-#include "TText.h"
-
-using namespace std;
-
-Bool_t debug = false;
-//Bool_t debug = true;
-
-int main(int argc, char *argv[])
-{
-
-  if(argc != 3)
-  {
-    cout << " Usage: ./CaloGrid [detector card] [calo name]" << endl;
-    cout << "Example: ./CaloGrid cards/delphes_card_CMS.tcl ECal" << endl;
-    return 0;
-  }
-
-  TString card(argv[1]);
-
-  ExRootConfReader *confReader = new ExRootConfReader;
-  confReader->ReadFile(card);
-
-  std::vector<std::string> calorimeters_;
-  std::map<std::string, std::set<std::pair<Double_t, Int_t> > > caloBinning_;
-
-  std::string s(argv[2]);
-  std::replace(s.begin(), s.end(), ',', ' ');
-  std::istringstream stream(s);
-  std::string word;
-  while(stream >> word) calorimeters_.push_back(word);
-
-  caloBinning_.clear(); // calo binning
-
-  TCanvas c("", "", 1600, 838);
-
-  gPad->SetLeftMargin(0.16);
-  gPad->SetTopMargin(0.16);
-  gPad->SetBottomMargin(0.20);
-  gStyle->SetOptStat(0000000);
-
-  gStyle->SetTextFont(132);
-
-  TH2F h2("h2", "", 1, -6, 6, 1, 0, 6.28);
-
-  h2.GetXaxis()->SetTitle("#eta");
-  h2.GetYaxis()->SetTitle("#phi");
-
-  h2.GetXaxis()->SetTitleFont(132);
-  h2.GetYaxis()->SetTitleFont(132);
-  h2.GetZaxis()->SetTitleFont(132);
-  h2.GetXaxis()->SetLabelFont(132);
-  h2.GetYaxis()->SetLabelFont(132);
-
-  h2.GetXaxis()->SetTitleOffset(1.4);
-  h2.GetYaxis()->SetTitleOffset(1.1);
-  h2.GetXaxis()->SetLabelOffset(0.02);
-  h2.GetYaxis()->SetLabelOffset(0.02);
-  h2.GetXaxis()->SetTitleSize(0.06);
-  h2.GetYaxis()->SetTitleSize(0.06);
-  h2.GetXaxis()->SetLabelSize(0.06);
-  h2.GetYaxis()->SetLabelSize(0.06);
-
-  h2.GetXaxis()->SetTickLength(0.0);
-  h2.GetYaxis()->SetTickLength(0.0);
-
-  h2.Draw();
-
-  // fake loop just keeping it for convenience right now
-  for(std::vector<std::string>::const_iterator calo = calorimeters_.begin(); calo != calorimeters_.end(); ++calo)
-  {
-
-    //first entry is eta bin, second is number of phi bins
-    set<pair<Double_t, Int_t> > caloBinning;
-    ExRootConfParam paramEtaBins, paramPhiBins;
-    ExRootConfParam param = confReader->GetParam(Form("%s::EtaPhiBins", calo->c_str()));
-    Int_t size = param.GetSize();
-
-    for(int i = 0; i < size / 2; ++i)
-    {
-      paramEtaBins = param[i * 2];
-      paramPhiBins = param[i * 2 + 1];
-      assert(paramEtaBins.GetSize() == 1);
-
-      caloBinning.insert(std::make_pair(paramEtaBins[0].GetDouble(), paramPhiBins.GetSize() - 1));
-    }
-    caloBinning_[*calo] = caloBinning;
-
-    TLine *liney;
-    TLine *linex;
-
-    //loop over calo binning
-    std::set<std::pair<Double_t, Int_t> >::iterator it;
-
-    Int_t n = -1;
-    for(it = caloBinning.begin(); it != caloBinning.end(); ++it)
-    {
-      n++;
-
-      if(debug) cout << "-----------------------" << endl;
-      if(debug) cout << it->first << "," << it->second << endl;
-      liney = new TLine(it->first, 0, it->first, 6.28);
-      liney->SetLineColor(kRed + 3);
-      liney->Draw();
-
-      set<std::pair<Double_t, Int_t> >::iterator it2 = it;
-      it2--;
-
-      for(int j = 0; j <= it->second; j++)
-      {
-
-        Double_t yval0 = 0 + 6.28 * j / it->second;
-
-        if(debug) cout << it2->first << "," << yval0 << "," << it->first << "," << yval0 << endl;
-
-        linex = new TLine(it->first, yval0, it2->first, yval0);
-        linex->SetLineColor(kRed + 3);
-        linex->Draw();
-      }
-    }
-  }
-
-  TString text = TString(s);
-  TText *th1 = new TText(5.00, 6.45, text);
-  th1->SetTextAlign(31);
-  th1->SetTextFont(132);
-  th1->SetTextSize(0.075);
-  th1->Draw();
-
-  TString output = TString(s);
-  c.Print(output + ".png", "png");
-  c.Print(output + ".pdf", "pdf");
-}
Index: examples/DelphesBrowser.C
===================================================================
--- examples/DelphesBrowser.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ examples/DelphesBrowser.C	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -18,5 +18,5 @@
   TObjArray *partonOutputArray = modularDelphes->ExportArray("partons");
 
-  confReader->ReadFile("cards/delphes_card_CMS.tcl");
+  confReader->ReadFile("examples/delphes_card_CMS.tcl");
 
   modularDelphes->SetConfReader(confReader);
Index: examples/DelphesCMSFWLite.cpp
===================================================================
--- examples/DelphesCMSFWLite.cpp	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
+++ examples/DelphesCMSFWLite.cpp	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -0,0 +1,232 @@
+#include <stdexcept>
+#include <iostream>
+#include <sstream>
+#include <memory>
+
+#include <map>
+
+#include <stdlib.h>
+#include <signal.h>
+#include <stdio.h>
+
+#include "TROOT.h"
+#include "TApplication.h"
+
+#include "TFile.h"
+#include "TObjArray.h"
+#include "TStopwatch.h"
+#include "TDatabasePDG.h"
+#include "TParticlePDG.h"
+#include "TLorentzVector.h"
+
+#include "modules/Delphes.h"
+#include "classes/DelphesStream.h"
+#include "classes/DelphesClasses.h"
+#include "classes/DelphesFactory.h"
+
+#include "ExRootAnalysis/ExRootTreeWriter.h"
+#include "ExRootAnalysis/ExRootTreeBranch.h"
+#include "ExRootAnalysis/ExRootProgressBar.h"
+
+#include "FWCore/FWLite/interface/AutoLibraryLoader.h"
+
+#include "DataFormats/FWLite/interface/Event.h"
+#include "DataFormats/FWLite/interface/Handle.h"
+#include "DataFormats/HepMCCandidate/interface/GenParticle.h"
+
+using namespace std;
+
+//---------------------------------------------------------------------------
+
+void ConvertInput(fwlite::Event &event, DelphesFactory *factory, TObjArray *allParticleOutputArray, TObjArray *stableParticleOutputArray, TObjArray *partonOutputArray)
+{
+  size_t i;
+  fwlite::Handle< vector< reco::GenParticle > > handleParticle;
+  handleParticle.getByLabel(event, "genParticles");
+
+  Candidate *candidate;
+  TDatabasePDG *pdg;
+  TParticlePDG *pdgParticle;
+  Int_t pdgCode;
+
+  Int_t pid, status;
+  Double_t px, py, pz, e;
+  Double_t x, y, z;
+
+  pdg = TDatabasePDG::Instance();
+
+  for(i = 0; i < handleParticle->size(); ++i)
+  {
+    const reco::GenParticle &particle = (*handleParticle)[i];
+
+     pid = particle.pdgId();
+     status = particle.status();
+     px = particle.px(), py = particle.py(), pz = particle.phi(), e = particle.energy();
+     x = particle.vx(), y = particle.vy(), z = particle.vz();
+
+    if(status == 1 || status == 2)
+    {
+      candidate = factory->NewCandidate();
+
+      candidate->PID = pid;
+      pdgCode = TMath::Abs(candidate->PID);
+
+      candidate->Status = status;
+
+      pdgParticle = pdg->GetParticle(pid);
+      candidate->Charge = pdgParticle ? Int_t(pdgParticle->Charge()/3.0) : -999;
+      candidate->Mass = pdgParticle ? pdgParticle->Mass() : -999.9;
+
+      candidate->Momentum.SetPxPyPzE(px, py, pz, e);
+
+      candidate->Position.SetXYZT(x, y, z, 0.0);
+
+      allParticleOutputArray->Add(candidate);
+
+      if(!pdgParticle) return;
+
+      if(status == 1)
+      {
+        stableParticleOutputArray->Add(candidate);
+      }
+      else if(pdgCode <= 5 || pdgCode == 21 || pdgCode == 15)
+      {
+        partonOutputArray->Add(candidate);
+      }
+    }
+  }
+}
+
+//---------------------------------------------------------------------------
+
+static bool interrupted = false;
+
+void SignalHandler(int sig)
+{
+  interrupted = true;
+}
+
+//---------------------------------------------------------------------------
+
+int main(int argc, char *argv[])
+{
+  char appName[] = "DelphesCMSFWLite";
+  stringstream message;
+  TFile *inputFile = 0;
+  TFile *outputFile = 0;
+  TStopwatch eventStopWatch;
+  ExRootTreeWriter *treeWriter = 0;
+  ExRootConfReader *confReader = 0;
+  Delphes *modularDelphes = 0;
+  DelphesFactory *factory = 0;
+  TObjArray *allParticleOutputArray = 0, *stableParticleOutputArray = 0, *partonOutputArray = 0;
+  Int_t i;
+  Long64_t entry, allEntries;
+
+  if(argc < 4)
+  {
+    cout << " Usage: " << appName << " config_file" << " output_file" << " input_file(s)" << endl;
+    cout << " config_file - configuration file in Tcl format," << endl;
+    cout << " output_file - output file in ROOT format," << endl;
+    cout << " input_file(s) - input file(s) in ROOT format." << endl;
+    return 1;
+  }
+
+  signal(SIGINT, SignalHandler);
+
+  gROOT->SetBatch();
+
+  int appargc = 1;
+  char *appargv[] = {appName};
+  TApplication app(appName, &appargc, appargv);
+
+  AutoLibraryLoader::enable();
+
+  try
+  {
+    outputFile = TFile::Open(argv[2], "CREATE");
+
+    if(outputFile == NULL)
+    {
+      message << "can't open " << argv[2] << endl;
+      throw runtime_error(message.str());
+    }
+
+    treeWriter = new ExRootTreeWriter(outputFile, "Delphes");
+
+    confReader = new ExRootConfReader;
+    confReader->ReadFile(argv[1]);
+
+    modularDelphes = new Delphes("Delphes");
+    modularDelphes->SetConfReader(confReader);
+    modularDelphes->SetTreeWriter(treeWriter);
+
+    factory = modularDelphes->GetFactory();
+    allParticleOutputArray = modularDelphes->ExportArray("allParticles");
+    stableParticleOutputArray = modularDelphes->ExportArray("stableParticles");
+    partonOutputArray = modularDelphes->ExportArray("partons");
+
+    modularDelphes->InitTask();
+
+    for(i = 3; i < argc && !interrupted; ++i)
+    {
+      cout << "** Reading " << argv[i] << endl;
+
+      inputFile = TFile::Open(argv[i]);
+
+      if(inputFile == NULL)
+      {
+        message << "can't open " << argv[i] << endl;
+        throw runtime_error(message.str());
+      }
+
+      fwlite::Event event(inputFile);
+
+      allEntries = event.size();
+
+      if(allEntries <= 0) continue;
+
+      ExRootProgressBar progressBar(allEntries - 1);
+
+      // Loop over all objects
+      entry = 0;
+      modularDelphes->Clear();
+      treeWriter->Clear();
+      for(event.toBegin(); !event.atEnd() && !interrupted; ++event)
+      {
+        ConvertInput(event, factory, allParticleOutputArray, stableParticleOutputArray, partonOutputArray);
+        modularDelphes->ProcessTask();
+
+        treeWriter->Fill();
+
+        modularDelphes->Clear();
+        treeWriter->Clear();
+
+        progressBar.Update(entry);
+        ++entry;
+      }
+      progressBar.Finish();
+
+      inputFile->Close();
+    }
+
+    modularDelphes->FinishTask();
+    treeWriter->Write();
+
+    cout << "** Exiting..." << endl;
+
+    delete modularDelphes;
+    delete confReader;
+    delete treeWriter;
+    delete outputFile;
+
+    return 0;
+  }
+  catch(runtime_error &e)
+  {
+    if(treeWriter) delete treeWriter;
+    if(outputFile) delete outputFile;
+    cerr << "** ERROR: " << e.what() << endl;
+    return 1;
+  }
+}
Index: examples/DelphesCMSFWLite.sh
===================================================================
--- examples/DelphesCMSFWLite.sh	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
+++ examples/DelphesCMSFWLite.sh	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -0,0 +1,7 @@
+
+INC="`echo -I$CMSSW_FWLITE_INCLUDE_PATH | sed 's/:/ -I/g'` -I$CMSSW_RELEASE_BASE/src"
+
+LIB="`echo -L$LD_LIBRARY_PATH | sed 's/include/lib/g; s/:/ -L/g'` `echo -L$CMSSW_FWLITE_INCLUDE_PATH | sed 's/include/lib/g; s/:/ -L/g'` -lFWCoreFWLite -lDataFormatsFWLite -lDataFormatsPatCandidates -lDataFormatsLuminosity -lCommonToolsUtils"
+
+g++ -std=c++0x -I. -Iexternal $INC `root-config --cflags --ldflags --evelibs` -L. -lDelphes $LIB -o DelphesCMSFWLite examples/DelphesCMSFWLite.cpp
+
Index: examples/DenseTracks.C
===================================================================
--- examples/DenseTracks.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,156 +1,0 @@
-/*
-This macro shows how to access the particle-level reference for reconstructed objects.
-It is also shown how to loop over the jet constituents.
-
-root -l examples/Example3.C'("delphes_output.root")'
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "external/ExRootAnalysis/ExRootResult.h"
-#else
-class ExRootTreeReader;
-class ExRootResult;
-#endif
-
-//------------------------------------------------------------------------------
-
-struct TestPlots
-{
-  TH1 *fhistDen;
-  TH1 *fhistNum;
-
-};
-
-//------------------------------------------------------------------------------
-
-void BookHistograms(ExRootResult *result, TestPlots *plots)
-{
-  TLegend *legend;
-  TPaveText *comment;
-
-  plots->fhistDen = result->AddHist1D(
-    "den", "",
-    "", "",
-    200, -5.0, 0.0);
-
-  plots->fhistNum = result->AddHist1D(
-    "num", "",
-    "", "",
-    200, -5.0, 0.0);
-}
-
-//------------------------------------------------------------------------------
-
-void AnalyseEvents(ExRootTreeReader *treeReader, TestPlots *plots)
-{
-  TClonesArray *branchParticle = treeReader->UseBranch("Particle");
-  TClonesArray *branchEFlowTrack = treeReader->UseBranch("EFlowTrack");
-  TClonesArray *branchEFlowPhoton = treeReader->UseBranch("EFlowPhoton");
-  TClonesArray *branchEFlowNeutralHadron = treeReader->UseBranch("EFlowNeutralHadron");
-  TClonesArray *branchJet = treeReader->UseBranch("FatJet");
-
-  Long64_t allEntries = treeReader->GetEntries();
-
-  cout << "** Chain contains " << allEntries << " events" << endl;
-
-  GenParticle *particle, *gentrack;
-  Photon *photon;
-
-  Track *track;
-  Tower *tower;
-
-  Jet *jet;
-  TObject *object;
-
-  TLorentzVector momentum;
-
-  Long64_t entry;
-
-  Int_t i, j, k, pdgCode;
-
-  // Loop over all events
-  for(entry = 0; entry < allEntries; ++entry)
-  {
-    // Load selected branches with data from specified event
-    treeReader->ReadEntry(entry);
-
-    if(entry %100 == 0) cout<<entry<< endl;
-
-    jet = (Jet*) branchJet->At(0);
-
-    // Loop over all genparticles
-    for(k = 0; k < branchParticle->GetEntriesFast(); ++k)
-    {
-
-      particle = (GenParticle*) branchParticle->At(k);
-      if (particle->Status != 1)  continue;
-      if (particle->Charge == 0)  continue;
-      if (particle->PT < 1.0)  continue;
-
-      plots->fhistDen->Fill(TMath::Log10(particle->P4().DeltaR(jet->P4())));
-
-      // Loop over all jet's constituents
-      for(j = 0; j < jet->Constituents.GetEntriesFast(); ++j)
-      {
-        object = jet->Constituents.At(j);
-
-        // Check if the constituent is accessible
-        if(object == 0) continue;
-
-        if(object->IsA() == Track::Class())
-        {
-          track = (Track*) object;
-          gentrack = (GenParticle*) track->Particle.GetObject();
-          if(gentrack->GetUniqueID() == particle->GetUniqueID())
-          {
-            //cout<<"found: "<<gentrack->GetUniqueID()<<endl;
-            plots->fhistNum->Fill(TMath::Log10(particle->P4().DeltaR(jet->P4())));
-          }
-        }
-      }
-    }
-  }
-  //plots->fhistNum->Divide(plots->fhistDen);
-}
-
-//------------------------------------------------------------------------------
-
-void PrintHistograms(ExRootResult *result, TestPlots *plots)
-{
-  result->Print("png");
-}
-
-//------------------------------------------------------------------------------
-
-void DenseTracks(const char *inputFile)
-{
-  gSystem->Load("libDelphes");
-
-  TChain *chain = new TChain("Delphes");
-  chain->Add(inputFile);
-
-  ExRootTreeReader *treeReader = new ExRootTreeReader(chain);
-  ExRootResult *result = new ExRootResult();
-
-  TestPlots *plots = new TestPlots;
-
-  BookHistograms(result, plots);
-
-  AnalyseEvents(treeReader, plots);
-
-  PrintHistograms(result, plots);
-
-  result->Write("results.root");
-
-  cout << "** Exiting..." << endl;
-
-  delete plots;
-  delete result;
-  delete treeReader;
-  delete chain;
-}
-
-//------------------------------------------------------------------------------
Index: examples/EventDisplay.C
===================================================================
--- examples/EventDisplay.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ examples/EventDisplay.C	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -1,45 +1,260 @@
-/* Example:
- * root -l examples/EventDisplay.C'("cards/delphes_card_CMS.tcl","delphes_output.root")'
- * root -l examples/EventDisplay.C'("cards/delphes_card_FCC_basic.tcl","delphes_output.root","ParticlePropagator","ChargedHadronTrackingEfficiency","MuonTrackingEfficiency","Ecal,Hcal")'
- */
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libEve)
-R__LOAD_LIBRARY(libDelphesDisplay)
-#include "display/DelphesEventDisplay.h"
-#include "display/Delphes3DGeometry.h"
-#endif
-
-void EventDisplay(const char *configfile = "delphes_card_CMS.tcl",
-                  const char *datafile = "delphes_output.root",
-                  const char *ParticlePropagator = "ParticlePropagator",
-                  const char *TrackingEfficiency = "ChargedHadronTrackingEfficiency",
-                  const char *MuonEfficiency = "MuonEfficiency",
-                  const char *Calorimeters = "HCal",
-                  bool displayGeometryOnly = false)
+/*
+root -l examples/EventDisplay.C\(\"examples/delphes_card_CMS.tcl\",\"delphes_output.root\"\)
+ShowEvent(1);
+ShowEvent(2);
+*/
+
+//------------------------------------------------------------------------------
+
+// radius of the barrel, in m
+Double_t gRadius = 1.29;
+
+// half-length of the barrel, in m
+Double_t gHalfLength = 3.0;
+
+// magnetic field
+Double_t gBz = 3.8;
+
+TAxis *gEtaAxis = 0;
+TAxis *gPhiAxis = 0;
+
+//------------------------------------------------------------------------------
+
+#include <set>
+#include <vector>
+
+using namespace std;
+
+class ExRootTreeReader;
+class DelphesCaloData;
+class DelphesDisplay;
+
+TChain gChain("Delphes");
+
+ExRootTreeReader *gTreeReader = 0;
+
+TClonesArray *gBranchTower = 0;
+TClonesArray *gBranchTrack = 0;
+TClonesArray *gBranchJet = 0;
+
+DelphesCaloData *gCaloData = 0;
+TEveElementList *gJetList = 0;
+TEveTrackList *gTrackList = 0;
+
+DelphesDisplay *gDelphesDisplay = 0;
+
+//------------------------------------------------------------------------------
+
+void EventDisplay(const char *configFile, const char *inputFile)
 {
-  // load the libraries
-  gSystem->Load("libGeom");
-  gSystem->Load("libGuiHtml");
-  gSystem->Load("libDelphesDisplay");
-
-  if(displayGeometryOnly)
-  {
-    // create the detector representation without transparency
-    Delphes3DGeometry det3D_geom(new TGeoManager("delphes", "Delphes geometry"), false);
-    det3D_geom.readFile(configfile, ParticlePropagator, TrackingEfficiency, MuonEfficiency, Calorimeters);
-
-    // display
-    det3D_geom.getDetector()->Draw("ogl");
-  } 
-  else
-  {
-    // create the detector representation
-    Delphes3DGeometry det3D(new TGeoManager("delphes", "Delphes geometry"), true);
-    det3D.readFile(configfile, ParticlePropagator, TrackingEfficiency, MuonEfficiency, Calorimeters);
-
-    // create the application
-    DelphesEventDisplay *display = new DelphesEventDisplay(configfile, datafile, det3D);
-  }
+  gSystem->Load("libDelphes");
+
+  TEveManager::Create(kTRUE, "IV");
+
+  ExRootConfParam param, paramEtaBins;
+  Long_t i, j, size, sizeEtaBins;
+  set< Double_t > etaSet;
+  set< Double_t >::iterator itEtaSet;
+
+  Double_t *etaBins;
+
+  ExRootConfReader *confReader = new ExRootConfReader;
+  confReader->ReadFile(configFile);
+
+  gRadius = confReader->GetDouble("ParticlePropagator::Radius", 1.0);
+  gHalfLength = confReader->GetDouble("ParticlePropagator::HalfLength", 3.0);
+  gBz = confReader->GetDouble("ParticlePropagator::Bz", 0.0);
+
+  // read eta and phi bins
+  param = confReader->GetParam("Calorimeter::EtaPhiBins");
+  size = param.GetSize();
+  etaSet.clear();
+  for(i = 0; i < size/2; ++i)
+  {
+    paramEtaBins = param[i*2];
+    sizeEtaBins = paramEtaBins.GetSize();
+
+    for(j = 0; j < sizeEtaBins; ++j)
+    {
+      etaSet.insert(paramEtaBins[j].GetDouble());
+    }
+  }
+
+  delete confReader;
+
+  etaBins = new Double_t[etaSet.size()];
+  i = 0;
+
+  for(itEtaSet = etaSet.begin(); itEtaSet != etaSet.end(); ++itEtaSet)
+  {
+    etaBins[i] = *itEtaSet;
+    ++i;
+  }
+
+  gEtaAxis = new TAxis(etaSet.size() - 1, etaBins);
+  gPhiAxis = new TAxis(72, -TMath::Pi(), TMath::Pi());
+
+  // Create chain of root trees
+  gChain.Add(inputFile);
+
+  // Create object of class ExRootTreeReader
+  gTreeReader = new ExRootTreeReader(&gChain);
+
+  // Get pointers to branches
+  gBranchTower = gTreeReader->UseBranch("Tower");
+  gBranchTrack = gTreeReader->UseBranch("Track");
+  gBranchJet = gTreeReader->UseBranch("Jet");
+
+  // data
+  gCaloData = new DelphesCaloData(2);
+  gCaloData->RefSliceInfo(0).Setup("ECAL", 0.1, kRed);
+  gCaloData->RefSliceInfo(1).Setup("HCAL", 0.1, kBlue);
+  gCaloData->SetEtaBins(gEtaAxis);
+  gCaloData->SetPhiBins(gPhiAxis);
+  gCaloData->IncDenyDestroy();
+
+  gJetList = new TEveElementList("Jets");
+  gEve->AddElement(gJetList);
+
+  gTrackList = new TEveTrackList("Tracks");
+  gTrackList->SetMainColor(kBlue);
+  gTrackList->SetMarkerColor(kRed);
+  gTrackList->SetMarkerStyle(kCircle);
+  gTrackList->SetMarkerSize(0.5);
+  gEve->AddElement(gTrackList);
+
+  TEveTrackPropagator *trkProp = gTrackList->GetPropagator();
+  trkProp->SetMagField(0.0, 0.0, -gBz);
+  trkProp->SetMaxR(gRadius*100.0);
+  trkProp->SetMaxZ(gHalfLength*100.0);
+
+  // viewers and scenes
+
+  TEveElementList *geometry = new TEveElementList("Geometry");
+
+  TEveGeoShape *barell = new TEveGeoShape("Barell");
+  barell->SetShape(new TGeoTube(gRadius*100.0 - 1, gRadius*100.0, gHalfLength*100.0));
+  barell->SetMainColor(kCyan);
+  barell->SetMainTransparency(80);
+  geometry->AddElement(barell);
+
+  TEveCalo3D *calo = new TEveCalo3D(gCaloData);
+  calo->SetBarrelRadius(gRadius*100.0);
+  calo->SetEndCapPos(gHalfLength*100.0);
+
+  gStyle->SetPalette(1, 0);
+  TEveCaloLego *lego = new TEveCaloLego(gCaloData);
+  lego->InitMainTrans();
+  lego->RefMainTrans().SetScale(TMath::TwoPi(), TMath::TwoPi(), TMath::Pi());
+  lego->SetAutoRebin(kFALSE);
+  lego->Set2DMode(TEveCaloLego::kValSizeOutline);
+
+  gDelphesDisplay = new DelphesDisplay;
+
+  gEve->AddGlobalElement(geometry);
+  gEve->AddGlobalElement(calo);
+
+  gDelphesDisplay->ImportGeomRPhi(geometry);
+  gDelphesDisplay->ImportCaloRPhi(calo);
+
+  gDelphesDisplay->ImportGeomRhoZ(geometry);
+  gDelphesDisplay->ImportCaloRhoZ(calo);
+
+  gDelphesDisplay->ImportCaloLego(lego);
+
+  gEve->Redraw3D(kTRUE);
 }
 
+//------------------------------------------------------------------------------
+
+void ShowEvent(Long64_t event)
+{
+  TIter itTower(gBranchTower);
+  TIter itTrack(gBranchTrack);
+  TIter itJet(gBranchJet);
+
+  Tower *tower;
+  Track *track;
+  Jet *jet;
+
+  TEveJetCone *eveJetCone;
+  TEveTrack *eveTrack;
+
+  Int_t counter;
+
+  TEveElement *currentEvent = gEve->GetCurrentEvent();
+
+  TEveTrackPropagator *trkProp = gTrackList->GetPropagator();
+
+  if(event >= gTreeReader->GetEntries()) return;
+
+  // Load selected branches with data from specified event
+  gTreeReader->ReadEntry(event);
+
+  gCaloData->ClearTowers();
+  gJetList->DestroyElements();
+  gTrackList->DestroyElements();
+
+  // Loop over all towers
+  itTower.Reset();
+  while((tower = (Tower *) itTower.Next()))
+  {
+    gCaloData->AddTower(tower->Edges[0], tower->Edges[1], tower->Edges[2], tower->Edges[3]);
+    gCaloData->FillSlice(0, tower->Eem);
+    gCaloData->FillSlice(1, tower->Ehad);
+  }
+  gCaloData->DataChanged();
+
+  // Loop over all tracks
+  itTrack.Reset();
+  counter = 0;
+  while((track = (Track *) itTrack.Next()))
+  {
+    TParticle pb(track->PID, 1, 0, 0, 0, 0,
+                 track->P4().Px(), track->P4().Py(),
+                 track->P4().Pz(), track->P4().E(),
+                 track->X, track->Y, track->Z, 0.0);
+
+    eveTrack = new TEveTrack(&pb, counter, trkProp);
+    eveTrack->SetName(Form("%s [%d]", pb.GetName(), counter++));
+    eveTrack->SetStdTitle();
+    eveTrack->SetAttLineAttMarker(gTrackList);
+
+    switch(TMath::Abs(track->PID))
+    {
+      case 11:
+        eveTrack->SetLineColor(kRed);
+        break;
+      case 13:
+        eveTrack->SetLineColor(kGreen);
+        break;
+      default:
+        eveTrack->SetLineColor(kBlue);
+    }
+    gTrackList->AddElement(eveTrack);
+    eveTrack->MakeTrack();
+  }
+
+  // Loop over all jets
+  itJet.Reset();
+  counter = 0;
+  while((jet = (Jet *) itJet.Next()))
+  {
+    eveJetCone = new TEveJetCone();
+    eveJetCone->SetName(Form("jet [%d]", counter++));
+    eveJetCone->SetMainTransparency(60);
+    eveJetCone->SetLineColor(kYellow);
+    eveJetCone->SetCylinder(gRadius*100.0 - 10, gHalfLength*100.0 - 10);
+    eveJetCone->SetPickable(kTRUE);
+    eveJetCone->AddEllipticCone(jet->Eta, jet->Phi, jet->DeltaEta, jet->DeltaPhi);
+    gJetList->AddElement(eveJetCone);
+  }
+
+  gDelphesDisplay->DestroyEventRPhi();
+  gDelphesDisplay->ImportEventRPhi(currentEvent);
+
+  gDelphesDisplay->DestroyEventRhoZ();
+  gDelphesDisplay->ImportEventRhoZ(currentEvent);
+
+  gEve->Redraw3D(kTRUE);
+}
Index: examples/Example1.C
===================================================================
--- examples/Example1.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ examples/Example1.C	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -1,15 +1,5 @@
 /*
-Simple macro showing how to access branches from the delphes output root file,
-loop over events, and plot simple quantities such as the jet pt and the di-electron invariant
-mass.
-
-root -l examples/Example1.C'("delphes_output.root")'
+root -l examples/Example1.C\(\"delphes_output.root\"\)
 */
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#endif
 
 //------------------------------------------------------------------------------
@@ -22,14 +12,13 @@
   TChain chain("Delphes");
   chain.Add(inputFile);
-
+  
   // Create object of class ExRootTreeReader
   ExRootTreeReader *treeReader = new ExRootTreeReader(&chain);
   Long64_t numberOfEntries = treeReader->GetEntries();
-
+  
   // Get pointers to branches used in this analysis
   TClonesArray *branchJet = treeReader->UseBranch("Jet");
   TClonesArray *branchElectron = treeReader->UseBranch("Electron");
-  TClonesArray *branchEvent = treeReader->UseBranch("Event");
-
+  
   // Book histograms
   TH1 *histJetPT = new TH1F("jet_pt", "jet P_{T}", 100, 0.0, 100.0);
@@ -41,10 +30,5 @@
     // Load selected branches with data from specified event
     treeReader->ReadEntry(entry);
-
-    
-    //HepMCEvent *event = (HepMCEvent*) branchEvent -> At(0);
-    //LHEFEvent *event = (LHEFEvent*) branchEvent -> At(0);
-    //Float_t weight = event->Weight;
-
+  
     // If event contains at least 1 jet
     if(branchJet->GetEntries() > 0)
@@ -52,10 +36,10 @@
       // Take first jet
       Jet *jet = (Jet*) branchJet->At(0);
-
+      
       // Plot jet transverse momentum
       histJetPT->Fill(jet->PT);
-
+      
       // Print jet transverse momentum
-      cout << "Jet pt: "<<jet->PT << endl;
+      cout << jet->PT << endl;
     }
 
@@ -78,3 +62,2 @@
   histMass->Draw();
 }
-
Index: examples/Example1.cpp
===================================================================
--- examples/Example1.cpp	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,80 +1,0 @@
-/*
- *  Delphes: a framework for fast simulation of a generic collider experiment
- *  Copyright (C) 2012-2014  Universite catholique de Louvain (UCL), Belgium
- *
- *  This program is free software: you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation, either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include <iostream>
-#include <utility>
-#include <vector>
-
-#include "TApplication.h"
-#include "TROOT.h"
-#include "TSystem.h"
-
-#include "TString.h"
-
-#include "TClonesArray.h"
-#include "TH2.h"
-#include "THStack.h"
-#include "TLegend.h"
-#include "TLorentzVector.h"
-#include "TPaveText.h"
-
-#include "classes/DelphesClasses.h"
-
-#include "ExRootAnalysis/ExRootResult.h"
-#include "ExRootAnalysis/ExRootTreeBranch.h"
-#include "ExRootAnalysis/ExRootTreeReader.h"
-#include "ExRootAnalysis/ExRootTreeWriter.h"
-#include "ExRootAnalysis/ExRootUtilities.h"
-
-using namespace std;
-
-//------------------------------------------------------------------------------
-
-// Here you can put your analysis macro
-
-#include "Example1.C"
-
-//------------------------------------------------------------------------------
-
-int main(int argc, char *argv[])
-{
-  char *appName = "Example1";
-
-  if(argc != 2)
-  {
-    cout << " Usage: " << appName << " input_file" << endl;
-    cout << " input_file - input file in ROOT format ('Delphes' tree)," << endl;
-    return 1;
-  }
-
-  gROOT->SetBatch();
-
-  int appargc = 1;
-  char *appargv[] = {appName};
-  TApplication app(appName, &appargc, appargv);
-
-  TString inputFile(argv[1]);
-
-  //------------------------------------------------------------------------------
-
-  // Here you call your macro's main function
-
-  Example1(inputFile);
-
-  //------------------------------------------------------------------------------
-}
Index: examples/Example1.py
===================================================================
--- examples/Example1.py	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,71 +1,0 @@
-#!/usr/bin/env python
-
-import sys
-
-import ROOT
-
-try:
-  input = raw_input
-except:
-  pass
-
-if len(sys.argv) < 2:
-  print(" Usage: Example1.py input_file")
-  sys.exit(1)
-
-ROOT.gSystem.Load("libDelphes")
-
-try:
-  ROOT.gInterpreter.Declare('#include "classes/DelphesClasses.h"')
-  ROOT.gInterpreter.Declare('#include "external/ExRootAnalysis/ExRootTreeReader.h"')
-except:
-  pass
-
-inputFile = sys.argv[1]
-
-# Create chain of root trees
-chain = ROOT.TChain("Delphes")
-chain.Add(inputFile)
-
-# Create object of class ExRootTreeReader
-treeReader = ROOT.ExRootTreeReader(chain)
-numberOfEntries = treeReader.GetEntries()
-
-# Get pointers to branches used in this analysis
-branchJet = treeReader.UseBranch("Jet")
-branchElectron = treeReader.UseBranch("Electron")
-
-# Book histograms
-histJetPT = ROOT.TH1F("jet_pt", "jet P_{T}", 100, 0.0, 100.0)
-histMass = ROOT.TH1F("mass", "M_{inv}(e_{1}, e_{2})", 100, 40.0, 140.0)
-
-# Loop over all events
-for entry in range(0, numberOfEntries):
-  # Load selected branches with data from specified event
-  treeReader.ReadEntry(entry)
-
-  # If event contains at least 1 jet
-  if branchJet.GetEntries() > 0:
-    # Take first jet
-    jet = branchJet.At(0)
-
-    # Plot jet transverse momentum
-    histJetPT.Fill(jet.PT)
-
-    # Print jet transverse momentum
-    print(jet.PT)
-
-  # If event contains at least 2 electrons
-  if branchElectron.GetEntries() > 1:
-    # Take first two electrons
-    elec1 = branchElectron.At(0)
-    elec2 = branchElectron.At(1)
-
-    # Plot their invariant mass
-    histMass.Fill(((elec1.P4()) + (elec2.P4())).M())
-
-# Show resulting histograms
-histJetPT.Draw()
-histMass.Draw()
-
-input("Press Enter to continue...")
Index: examples/Example2.C
===================================================================
--- examples/Example2.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ examples/Example2.C	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -1,18 +1,8 @@
 /*
-Simple macro showing how to access branches from the delphes output root file,
-loop over events, store histograms in a root file and print them as image files.
-
-root -l examples/Example2.C'("delphes_output.root")'
+root -l examples/Example2.C\(\"delphes_output.root\"\)
 */
 
 #include "TH1.h"
 #include "TSystem.h"
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "external/ExRootAnalysis/ExRootResult.h"
-#endif
 
 //------------------------------------------------------------------------------
Index: examples/Example3.C
===================================================================
--- examples/Example3.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ examples/Example3.C	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -1,18 +1,5 @@
 /*
-This macro shows how to access the particle-level reference for reconstructed objects.
-It is also shown how to loop over the jet constituents.
-
-root -l examples/Example3.C'("delphes_output.root")'
+root -l examples/Example3.C\(\"delphes_output.root\"\)
 */
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "external/ExRootAnalysis/ExRootResult.h"
-#else
-class ExRootTreeReader;
-class ExRootResult;
-#endif
 
 //------------------------------------------------------------------------------
@@ -30,4 +17,10 @@
   TH1 *fMuonDeltaEta;
 
+  TH1 *fTrackDeltaPT;
+  TH1 *fTrackDeltaEta;
+
+  TH1 *fTowerDeltaEem;
+  TH1 *fTowerDeltaEhad;
+
   TH1 *fJetDeltaPT;
 };
@@ -35,4 +28,9 @@
 //------------------------------------------------------------------------------
 
+class ExRootResult;
+class ExRootTreeReader;
+
+//------------------------------------------------------------------------------
+
 void BookHistograms(ExRootResult *result, TestPlots *plots)
 {
@@ -41,42 +39,62 @@
 
   plots->fElectronDeltaPT = result->AddHist1D(
-    "electron_delta_pt", "(p_{T}^{particle} - p_{T}^{electron})/p_{T}^{particle}",
+    "electron delta pt", "(p_{T}^{particle} - p_{T}^{electron})/p_{T}^{particle}",
     "(p_{T}^{particle} - p_{T}^{electron})/p_{T}^{particle}", "number of electrons",
     100, -0.1, 0.1);
 
   plots->fElectronDeltaEta = result->AddHist1D(
-    "electron_delta_eta", "(#eta^{particle} - #eta^{electron})/#eta^{particle}",
+    "electron delta eta", "(#eta^{particle} - #eta^{electron})/#eta^{particle}",
     "(#eta^{particle} - #eta^{electron})/#eta^{particle}", "number of electrons",
     100, -0.1, 0.1);
 
   plots->fPhotonDeltaPT = result->AddHist1D(
-    "photon_delta_pt", "(p_{T}^{particle} - p_{T}^{photon})/p_{T}^{particle}",
+    "photon delta pt", "(p_{T}^{particle} - p_{T}^{photon})/p_{T}^{particle}",
     "(p_{T}^{particle} - p_{T}^{photon})/p_{T}^{particle}", "number of photons",
     100, -0.1, 0.1);
 
   plots->fPhotonDeltaEta = result->AddHist1D(
-    "photon_delta_eta", "(#eta^{particle} - #eta^{photon})/#eta^{particle}",
+    "photon delta eta", "(#eta^{particle} - #eta^{photon})/#eta^{particle}",
     "(#eta^{particle} - #eta^{photon})/#eta^{particle}", "number of photons",
     100, -0.1, 0.1);
 
   plots->fPhotonDeltaE = result->AddHist1D(
-    "photon_delta_energy", "(E^{particle} - E^{photon})/E^{particle}",
+    "photon delta energy", "(E^{particle} - E^{photon})/E^{particle}",
     "(E^{particle} - E^{photon})/E^{particle}", "number of photons",
     100, -0.1, 0.1);
 
   plots->fMuonDeltaPT = result->AddHist1D(
-    "muon_delta_pt", "(p_{T}^{particle} - p_{T}^{muon})/p_{T}^{particle}",
+    "muon delta pt", "(p_{T}^{particle} - p_{T}^{muon})/p_{T}^{particle}",
     "(p_{T}^{particle} - p_{T}^{muon})/p_{T}^{particle}", "number of muons",
     100, -0.1, 0.1);
 
   plots->fMuonDeltaEta = result->AddHist1D(
-    "muon_delta_eta", "(#eta^{particle} - #eta^{muon})/#eta^{particle}",
+    "muon delta eta", "(#eta^{particle} - #eta^{muon})/#eta^{particle}",
     "(#eta^{particle} - #eta^{muon})/#eta^{particle}", "number of muons",
     100, -0.1, 0.1);
 
+  plots->fTrackDeltaPT = result->AddHist1D(
+    "track delta pt", "(p_{T}^{particle} - p_{T}^{track})/p_{T}^{particle}",
+    "(p_{T}^{particle} - p_{T}^{track})/p_{T}^{particle}", "number of tracks",
+    100, -0.1, 0.1);
+
+  plots->fTrackDeltaEta = result->AddHist1D(
+    "track delta eta", "(#eta^{particle} - #eta^{track})/#eta^{particle}",
+    "(#eta^{particle} - #eta^{track})/#eta^{particle}", "number of tracks",
+    100, -0.1, 0.1);
+
+  plots->fTowerDeltaEem = result->AddHist1D(
+    "tower delta Eem", "(Eem^{particles} - Eem^{tower})/Eem^{particles}",
+    "(Eem^{particles} - Eem^{tower})/Eem^{particles}", "number of tower",
+    100, -0.5, 0.5);
+
+  plots->fTowerDeltaEhad = result->AddHist1D(
+    "tower delta Ehad", "(Ehad^{particles} - Ehad^{tower})/Ehad^{particles}",
+    "(Ehad^{particles} - Ehad^{tower})/Ehad^{particles}", "number of tower",
+    100, -5.0, 5.0);
+
   plots->fJetDeltaPT = result->AddHist1D(
-    "jet_delta_pt", "(p_{T}^{jet} - p_{T}^{constituents})/p_{T}^{jet}",
+    "jet delta pt", "(p_{T}^{jet} - p_{T}^{constituents})/p_{T}^{jet}",
     "(p_{T}^{jet} - p_{T}^{constituents})/p_{T}^{jet}", "number of jets",
-    100, -1.0e-1, 1.0e-1);
+    100, -1.0e-7, 1.0e-7);
 
 }
@@ -90,7 +108,8 @@
   TClonesArray *branchPhoton = treeReader->UseBranch("Photon");
   TClonesArray *branchMuon = treeReader->UseBranch("Muon");
+
   TClonesArray *branchEFlowTrack = treeReader->UseBranch("EFlowTrack");
-  TClonesArray *branchEFlowPhoton = treeReader->UseBranch("EFlowPhoton");
-  TClonesArray *branchEFlowNeutralHadron = treeReader->UseBranch("EFlowNeutralHadron");
+  TClonesArray *branchEFlowTower = treeReader->UseBranch("EFlowTower");
+  TClonesArray *branchEFlowMuon = treeReader->UseBranch("EFlowMuon");
   TClonesArray *branchJet = treeReader->UseBranch("Jet");
 
@@ -144,8 +163,8 @@
 
       particle = (GenParticle*) photon->Particles.At(0);
+
       plots->fPhotonDeltaPT->Fill((particle->PT - photon->PT)/particle->PT);
       plots->fPhotonDeltaEta->Fill((particle->Eta - photon->Eta)/particle->Eta);
       plots->fPhotonDeltaE->Fill((particle->E - photon->E)/particle->E);
-          
     }
 
@@ -160,5 +179,52 @@
     }
 
-    // cout << "--  New event -- " << endl;
+    // Loop over all tracks in event
+    for(i = 0; i < branchEFlowTrack->GetEntriesFast(); ++i)
+    {
+      track = (Track*) branchEFlowTrack->At(i);
+      particle = (GenParticle*) track->Particle.GetObject();
+
+      plots->fTrackDeltaPT->Fill((particle->PT - track->PT)/particle->PT);
+      plots->fTrackDeltaEta->Fill((particle->Eta - track->Eta)/particle->Eta);
+    }
+
+    // Loop over all towers in event
+    for(i = 0; i < branchEFlowTower->GetEntriesFast(); ++i)
+    {
+      tower = (Tower*) branchEFlowTower->At(i);
+
+      Eem = 0.0;
+      Ehad = 0.0;
+      skip = kFALSE;
+      for(j = 0; j < tower->Particles.GetEntriesFast(); ++j)
+      {
+        particle = (GenParticle*) tower->Particles.At(j);
+        pdgCode = TMath::Abs(particle->PID);
+
+        // skip muons and neutrinos
+        if(pdgCode == 12 || pdgCode == 13 || pdgCode == 14 || pdgCode == 16)
+        {
+          continue;
+        }
+
+        // skip K0short and Lambda
+        if(pdgCode == 310 || pdgCode == 3122)
+        {
+          skip = kTRUE;
+        }
+
+        if(pdgCode == 11 || pdgCode == 22)
+        {
+          Eem += particle->E;
+        }
+        else
+        {
+          Ehad += particle->E;
+        }
+      }
+      if(skip) continue;
+      if(Eem > 0.0 && tower->Eem > 0.0) plots->fTowerDeltaEem->Fill((Eem - tower->Eem)/Eem);
+      if(Ehad > 0.0 && tower->Ehad > 0.0) plots->fTowerDeltaEhad->Fill((Ehad - tower->Ehad)/Ehad);
+    }
 
     // Loop over all jets in event
@@ -168,6 +234,4 @@
 
       momentum.SetPxPyPzE(0.0, 0.0, 0.0, 0.0);
-
-      // cout<<"Looping over jet constituents. Jet pt: "<<jet->PT<<", eta: "<<jet->Eta<<", phi: "<<jet->Phi<<endl;
 
       // Loop over all jet's constituents
@@ -181,22 +245,20 @@
         if(object->IsA() == GenParticle::Class())
         {
-          particle = (GenParticle*) object;
-          // cout << "    GenPart pt: " << particle->PT << ", eta: " << particle->Eta << ", phi: " << particle->Phi << endl;
-          momentum += particle->P4();
+          momentum += ((GenParticle*) object)->P4();
         }
         else if(object->IsA() == Track::Class())
         {
-          track = (Track*) object;
-          // cout << "    Track pt: " << track->PT << ", eta: " << track->Eta << ", phi: " << track->Phi << endl;
-          momentum += track->P4();
+          momentum += ((Track*) object)->P4();
         }
         else if(object->IsA() == Tower::Class())
         {
-          tower = (Tower*) object;
-          // cout << "    Tower pt: " << tower->ET << ", eta: " << tower->Eta << ", phi: " << tower->Phi << endl;
-          momentum += tower->P4();
+          momentum += ((Tower*) object)->P4();
+        }
+        else if(object->IsA() == Muon::Class())
+        {
+          momentum += ((Muon*) object)->P4();
         }
       }
-      plots->fJetDeltaPT->Fill((jet->PT - momentum.Pt())/jet->PT);
+      plots->fJetDeltaPT->Fill((jet->PT - momentum.Pt())/jet->PT );
     }
   }
Index: examples/Example4.C
===================================================================
--- examples/Example4.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,270 +1,0 @@
-/*
-This macro shows how to compute jet energy scale.
-root -l examples/Example4.C'("delphes_output.root", "plots.root")'
-
-The output ROOT file contains the pT(MC)/pT(Reco) distributions for
-various pT(Reco) and |eta| bins. The peak value of such distribution is
-interpreted as the jet energy correction to be applied for that
-given pT(Reco), |eta| bin.
-
-This can be done by modifying the "ScaleFormula" input parameter to
-the JetEnergyScale module in the delphes_card_XXX.tcl
-
-e.g  a smooth function:
-
-  set ScaleFormula { sqrt(3.0 - 0.1*(abs(eta)))^2 / pt + 1.0) }
-
-or a binned function:
-
-  set ScaleFormula {(abs(eta) > 0.0 && abs(eta) <= 2.5) * (pt > 20.0 && pt <= 50.0)  * (1.10) +
-                    (abs(eta) > 0.0 && abs(eta) <= 2.5) * (pt > 50.0 && pt <= 100.0) * (1.05) +
-                    (abs(eta) > 0.0 && abs(eta) <= 2.5) * (pt > 100.0)               * (1.00) +
-                    (abs(eta) > 2.5 && abs(eta) <= 5.0) * (pt > 20.0 && pt <= 50.0)  * (1.10) +
-                    (abs(eta) > 2.5 && abs(eta) <= 5.0) * (pt > 50.0 && pt <= 100.0) * (1.05) +
-                    (abs(eta) > 2.5 && abs(eta) <= 5.0) * (pt > 100.0)               * (1.00)}
-
-Be aware that a binned jet energy scale can produce "steps" in the corrected
-jet pt distribution ...
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "external/ExRootAnalysis/ExRootResult.h"
-#else
-class ExRootTreeReader;
-class ExRootResult;
-#endif
-
-//------------------------------------------------------------------------------
-
-struct TestPlots
-{
-  TH1 *fJetPT;
-
-  TH1 *fJetRes_Pt_20_50_Eta_0_25;
-  TH1 *fJetRes_Pt_20_50_Eta_25_5;
-
-  TH1 *fJetRes_Pt_50_100_Eta_0_25;
-  TH1 *fJetRes_Pt_50_100_Eta_25_5;
-
-  TH1 *fJetRes_Pt_100_200_Eta_0_25;
-  TH1 *fJetRes_Pt_100_200_Eta_25_5;
-
-  TH1 *fJetRes_Pt_200_500_Eta_0_25;
-  TH1 *fJetRes_Pt_200_500_Eta_25_5;
-
-  TH1 *fJetRes_Pt_500_inf_Eta_0_25;
-  TH1 *fJetRes_Pt_500_inf_Eta_25_5;
-
-};
-
-//------------------------------------------------------------------------------
-
-class ExRootResult;
-class ExRootTreeReader;
-
-//------------------------------------------------------------------------------
-
-void BookHistograms(ExRootResult *result, TestPlots *plots)
-{
-  TLegend *legend;
-  TPaveText *comment;
-
-  plots->fJetPT = result->AddHist1D(
-    "jet_pt", "p_{T}^{jet}",
-    "p_{T}^{jet}  GeV/c", "number of jets",
-    100, 0.0, 1000.0);
-
-  plots->fJetRes_Pt_20_50_Eta_0_25 = result->AddHist1D(
-    "jet_delta_pt_20_50_cen", "p_{T}^{truth,parton}/p_{T}^{jet} , 20 < p_{T} < 50 , 0 < | #eta | < 2.5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_20_50_Eta_0_25->SetStats();
-
-  plots->fJetRes_Pt_20_50_Eta_25_5 = result->AddHist1D(
-    "jet_delta_pt_20_50_fwd", "p_{T}^{truth,parton}/p_{T}^{jet} , 20 < p_{T} < 50 , 2.5 < | #eta | < 5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_20_50_Eta_25_5->SetStats();
-
-  plots->fJetRes_Pt_50_100_Eta_0_25 = result->AddHist1D(
-    "jet_delta_pt_50_100_cen", "p_{T}^{truth,parton}/p_{T}^{jet} , 50 < p_{T} < 100 , 0 < | #eta | < 2.5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_50_100_Eta_0_25->SetStats();
-
-  plots->fJetRes_Pt_50_100_Eta_25_5 = result->AddHist1D(
-    "jet_delta_pt_50_100_fwd", "p_{T}^{truth,parton}/p_{T}^{jet} , 50 < p_{T} < 100 , 2.5 < | #eta | < 5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_50_100_Eta_25_5->SetStats();
-
-
-  plots->fJetRes_Pt_100_200_Eta_0_25 = result->AddHist1D(
-    "jet_delta_pt_100_200_cen", "p_{T}^{truth,parton}/p_{T}^{jet} , 100 < p_{T} < 200 , 0 < | #eta | < 2.5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_100_200_Eta_0_25->SetStats();
-
-  plots->fJetRes_Pt_100_200_Eta_25_5 = result->AddHist1D(
-    "jet_delta_pt_100_200_fwd", "p_{T}^{truth,parton}/p_{T}^{jet} , 100 < p_{T} < 200 , 2.5 < | #eta | < 5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_100_200_Eta_25_5->SetStats();
-
-  plots->fJetRes_Pt_200_500_Eta_0_25 = result->AddHist1D(
-    "jet_delta_pt_200_500_cen", "p_{T}^{truth,parton}/p_{T}^{jet} , 200 < p_{T} < 500 , 0 < | #eta | < 2.5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_200_500_Eta_0_25->SetStats();
-
-  plots->fJetRes_Pt_200_500_Eta_25_5 = result->AddHist1D(
-    "jet_delta_pt_200_500_fwd", "p_{T}^{truth,parton}/p_{T}^{jet} , 200 < p_{T} < 500 , 2.5 < | #eta | < 5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_200_500_Eta_25_5->SetStats();
-
-  plots->fJetRes_Pt_500_inf_Eta_0_25 = result->AddHist1D(
-    "jet_delta_pt_500_1000_cen", "p_{T}^{truth,parton}/p_{T}^{jet} , 500 < p_{T} < 1000, 0 < | #eta | < 2.5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_500_inf_Eta_0_25->SetStats();
-
-  plots->fJetRes_Pt_500_inf_Eta_25_5 = result->AddHist1D(
-    "jet_delta_pt_500_1000_fwd", "p_{T}^{truth,parton}/p_{T}^{jet} , 500 < p_{T} < 1000, 2.5 < | #eta | < 5 ",
-    "p_{T}^{truth,parton}/p_{T}^{jet}", "number of jets",
-    100, 0.0, 2.0);
-
-  plots->fJetRes_Pt_500_inf_Eta_25_5->SetStats();
-
-
-}
-
-//------------------------------------------------------------------------------
-
-void AnalyseEvents(ExRootTreeReader *treeReader, TestPlots *plots)
-{
-  TClonesArray *branchParticle = treeReader->UseBranch("Particle");
-  TClonesArray *branchGenJet = treeReader->UseBranch("GenJet");
-  TClonesArray *branchJet = treeReader->UseBranch("Jet");
-
-  Long64_t allEntries = treeReader->GetEntries();
-
-  cout << "** Chain contains " << allEntries << " events" << endl;
-
-  Jet *jet, *genjet;
-  GenParticle *particle;
-  TObject *object;
-
-  TLorentzVector jetMomentum, genJetMomentum, bestGenJetMomentum;
-
-  Float_t deltaR;
-  Float_t pt, eta;
-  Long64_t entry;
-
-  Int_t i, j;
-
-  // Loop over all events
-  for(entry = 0; entry < allEntries; ++entry)
-  {
-    // Load selected branches with data from specified event
-    treeReader->ReadEntry(entry);
-
-    if(entry%500 == 0) cout << "Event number: "<< entry <<endl;
-
-    // Loop over all reconstructed jets in event
-    for(i = 0; i < branchJet->GetEntriesFast(); ++i)
-    {
-
-      jet = (Jet*) branchJet->At(i);
-      jetMomentum = jet->P4();
-
-      plots->fJetPT->Fill(jetMomentum.Pt());
-
-      deltaR = 999;
-
-     // Loop over all hard partons in event
-     for(j = 0; j < branchParticle->GetEntriesFast(); ++j)
-     {
-        particle = (GenParticle*) branchParticle->At(j);
-
-        genJetMomentum = particle->P4();
-
-	// this is simply to avoid warnings from initial state particle
-        // having infite rapidity ...
-	if(genJetMomentum.Px() == 0 && genJetMomentum.Py() == 0) continue;
-
-        // take the closest parton candidate
-        if(genJetMomentum.DeltaR(jetMomentum) < deltaR)
-        {
-           deltaR = genJetMomentum.DeltaR(jetMomentum);
-           bestGenJetMomentum = genJetMomentum;
-        }
-      }
-
-      if(deltaR < 0.3)
-      {
-        pt  = jetMomentum.Pt();
-        eta = TMath::Abs(jetMomentum.Eta());
-
-
-        if(pt > 20.0 && pt < 50.0 && eta > 0.0 && eta < 2.5) plots -> fJetRes_Pt_20_50_Eta_0_25->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-        if(pt > 20.0 && pt < 50.0 && eta > 2.5 && eta < 5.0) plots -> fJetRes_Pt_20_50_Eta_25_5->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-
-        if(pt > 50.0 && pt < 100.0 && eta > 0.0 && eta < 2.5) plots -> fJetRes_Pt_50_100_Eta_0_25->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-        if(pt > 50.0 && pt < 100.0 && eta > 2.5 && eta < 5.0) plots -> fJetRes_Pt_50_100_Eta_25_5->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-
-        if(pt > 100.0 && pt < 200.0 && eta > 0.0 && eta < 2.5) plots -> fJetRes_Pt_100_200_Eta_0_25->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-        if(pt > 100.0 && pt < 200.0 && eta > 2.5 && eta < 5.0) plots -> fJetRes_Pt_100_200_Eta_25_5->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-
-        if(pt > 200.0 && pt < 500.0 && eta > 0.0 && eta < 2.5) plots -> fJetRes_Pt_200_500_Eta_0_25->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-        if(pt > 200.0 && pt < 500.0 && eta > 2.5 && eta < 5.0) plots -> fJetRes_Pt_200_500_Eta_25_5->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-
-        if(pt > 500.0               && eta > 0.0 && eta < 2.5) plots -> fJetRes_Pt_500_inf_Eta_0_25->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-        if(pt > 500.0               && eta > 2.5 && eta < 5.0) plots -> fJetRes_Pt_500_inf_Eta_25_5->Fill(bestGenJetMomentum.Pt()/jetMomentum.Pt());
-
-      }
-    }
-  }
-}
-
-//------------------------------------------------------------------------------
-
-void Example4(const char *inputFile, const char *outputFile)
-{
-  gSystem->Load("libDelphes");
-
-  TChain *chain = new TChain("Delphes");
-  chain->Add(inputFile);
-
-  ExRootTreeReader *treeReader = new ExRootTreeReader(chain);
-  ExRootResult *result = new ExRootResult();
-
-  TestPlots *plots = new TestPlots;
-
-  BookHistograms(result, plots);
-
-  AnalyseEvents(treeReader, plots);
-
-  result->Write(outputFile);
-
-  cout << "** Exiting..." << endl;
-
-  delete plots;
-  delete result;
-  delete treeReader;
-  delete chain;
-}
-
-//------------------------------------------------------------------------------
Index: examples/Example5.C
===================================================================
--- examples/Example5.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,53 +1,0 @@
-/*
-Prints complete input particle arborescence for the first 10 events. Useful for debugging purposes.
-root -l examples/Example5.C'("delphes_output.root")'
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "external/ExRootAnalysis/ExRootResult.h"
-#else
-class ExRootTreeReader;
-class ExRootResult;
-#endif
-
-
-//------------------------------------------------------------------------------
-
-void Example5(const char *inputFile)
-{
-  gSystem->Load("libDelphes");
-
-  // Create chain of root trees
-  TChain chain("Delphes");
-  chain.Add(inputFile);
-
-  // Create object of class ExRootTreeReader
-  ExRootTreeReader *treeReader = new ExRootTreeReader(&chain);
-  Long64_t numberOfEntries = treeReader->GetEntries();
-
-  // Get pointers to branches used in this analysis
-  TClonesArray *branchParticle = treeReader->UseBranch("Particle");
-
-  // Loop over all events
-  for(Int_t entry = 0; entry < numberOfEntries; ++entry)
-  {
-    // Load selected branches with data from specified event
-    treeReader->ReadEntry(entry);
-
-    if(entry>10) break;
-
-    cout<<"" <<endl;
-    cout<<"--------- New Event ---------" <<endl;
-    cout<<"" <<endl;
-
-    // loop over all input particles in the event
-    for(Int_t i=0; i < branchParticle->GetEntriesFast(); i++)
-    {
-     GenParticle *gen = (GenParticle*) branchParticle->At(i);
-     cout<<"N: "<<i<<", St: "<<gen->Status<<", PID: "<<gen->PID<<", E: "<<gen->E<<", Px: "<<gen->Px<<", Py: "<<gen->Py<<", Pz: "<<gen->Pz<<", M: "<<gen->Mass<<", T: "<<gen->T<<", X: "<<gen->X<<", Y: "<<gen->Y<<", Z: "<<gen->Z<<", M1: "<<gen->M1<<", M2: "<<gen->M2<<", D1: "<<gen->D1<<", D2: "<<gen->D2<<endl;
-    }
-  }
-}
Index: examples/Example5.py
===================================================================
--- examples/Example5.py	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,67 +1,0 @@
-#!/usr/bin/env python
-import sys
-import ROOT, math
-from collections import OrderedDict
-from ROOT import TLorentzVector
-import array
-
-#_________________________________________________________________________________________
-
-
-if len(sys.argv) < 2:
-  print " Usage: Example1.py input_file"
-  sys.exit(1)
-
-ROOT.gSystem.Load("libDelphes")
-
-try:
-  ROOT.gInterpreter.Declare('#include "classes/DelphesClasses.h"')
-  ROOT.gInterpreter.Declare('#include "external/ExRootAnalysis/ExRootTreeReader.h"')
-except:
-  pass
-
-inputFile = sys.argv[1]
-outputFile = sys.argv[2]
-
-# Create chain of root trees
-chain = ROOT.TChain("Delphes")
-chain.Add(inputFile)
-
-# Create object of class ExRootTreeReader
-treeReader = ROOT.ExRootTreeReader(chain)
-numberOfEntries = treeReader.GetEntries()
-
-# Get pointers to branches used in this analysis
-
-branchParticle   = treeReader.UseBranch("Particle")
-
-## fill histogram with particle status
-hStatus            = ROOT.TH1F("hStatus", "hStatus",  101, -0.5,  100.5)
-
-debug = True
-if debug: numberOfEntries = 10
-
-
-# Loop over all events
-for entry in range(0, numberOfEntries):
-    # Load selected branches with data from specified event
-    treeReader.ReadEntry(entry)
-
-    if (entry+1)%100 == 0:
-       print ' ... processed {} events ...'.format(entry+1)
-    i=0
-
-    print '---------------------------------------------------------------------------------------'
-    print ''
-
-
-    for gen in branchParticle:
-        i +=1
-        print "N: ", i, ", St: ", gen.Status,", PID: ",gen.PID,", E: ",gen.E,", PT: ",gen.PT,", Eta: ",gen.Eta,", M: ",gen.Mass,", M1: ",gen.M1,", M2: ",gen.M2,", D1: ",gen.D1,", D2: ",gen.D2        
-
-        hStatus.Fill(gen.Status)
-
-# Show resulting histograms
-out_root = ROOT.TFile(outputFile,"RECREATE")
- 
-hStatus.Write()
Index: examples/Example6.C
===================================================================
--- examples/Example6.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,306 +1,0 @@
-/*
-Simple macro showing how to access branches from the delphes output root file,
-loop over events, and plot track pulls and geometrical acceptance.
-
-root -l examples/Example6.C'("delphes_output.root")'
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "modules/TrackCovariance.h"
-#include "external/TrackCovariance/TrkUtil.h"
-#endif
-
-
-//------------------------------------------------------------------------------
-
-void Example6(const char* inputFile)
-{
-	gSystem->Load("libDelphes");
-
-	// Create chain of root trees
-	TChain chain("Delphes");
-	chain.Add(inputFile);
-
-	// Create object of class ExRootTreeReader
-	ExRootTreeReader* treeReader = new ExRootTreeReader(&chain);
-	Long64_t numberOfEntries = treeReader->GetEntries();
-
-	// Get pointers to branches used in this analysis
-	TClonesArray* branchGenPart = treeReader->UseBranch("Particle");
-	TClonesArray* branchTrack = treeReader->UseBranch("Track");
-
-	// Book histograms
-	//
-	// Generated track parameters
-	TH1* histDgen = new TH1F("h_Dgen", "Generated impact parameter", 100, -2., 2.);			// mm
-	TH1* histP0gen = new TH1F("h_P0gen", "Generated #phi_{0}", 100, -TMath::Pi(), TMath::Pi());	// rad
-	TH1* histCgen = new TH1F("h_Cgen", "Generated half curvature", 200, -.01, .01);				// mm
-	TH1* histZ0gen = new TH1F("h_Z0gen", "Generated Z_{0}", 100, -2., 2.);							// mm
-	TH1* histCtgen = new TH1F("h_Ctgen", "Generated cotg(#theta)", 100, -10., 10.);
-	//
-	// Reconstructed impact parameters
-	TH1* histDobs = new TH1F("h_Dobs", "Reconstructed impact parameter", 100, -2., 2.);			// mm
-	TH1* histP0obs = new TH1F("h_P0obs", "Reconstructed #phi_{0}", 100, -TMath::Pi(), TMath::Pi());	// rad
-	TH1* histCobs = new TH1F("h_Cobs", "Reconstructed half curvature", 200, -.01, .01);				// mm
-	TH1* histZ0obs = new TH1F("h_Z0obs", "Reconstructed Z_{0}", 100, -2., 2.);							// mm
-	TH1* histCtobs = new TH1F("h_Ctobs", "Reconstructed cotg(#theta)", 100, -10., 10.);
-	//
-	// Track parameter pulls
-	TH1* histDpull = new TH1F("h_Dpull", "Pull impact parameter", 100, -10., 10.);
-	TH1* histP0pull = new TH1F("h_P0pull", "Pull #phi_{0}", 100, -10., 10.);
-	TH1* histCpull = new TH1F("h_Cpull", "Pull half curvature", 100, -10., 10.);
-	TH1* histZ0pull = new TH1F("h_Z0pull", "Pull Z_{0}", 100, -10., 10.);
-	TH1* histCtpull = new TH1F("h_Ctpull", "Pull cotg(#theta)", 100, -10., 10.);
-	//
-	// Accptance plots
-	Double_t minPtAcc = 1.0;	// 1 GeV
-	Double_t maxCtAcc = 1.0;	// 45 degrees
-	// All tracks
-	TH1* histPtgen = new TH1F("h_Ptgen", "Generated Pt", 500, 0., 50.);
-	TH1* histPtobs = new TH1F("h_Ptobs", "Reconstructed Pt", 500, 0., 50.);
-	// CEntral track over min Pt
-	TH1* histPtgenC = new TH1F("h_PtgenC", "Generated Pt - Central", 500, 0., 50.);		// pt for central tracks;
-	TH1* histPtobsC = new TH1F("h_PtobsC", "Reconstructed Pt - Central", 500, 0., 50.);	// pt for central
-	TH1* histCtgenH = new TH1F("h_CtgenH", "Generateded Cotangent", 100, -10., 10.);		// cot(theta) for high pt tracks;
-	TH1* histCtobsH = new TH1F("h_CtobsH", "Reconstructed Cotangent", 100, -10., 10.);	// cot(theta) for high pt tracks
-	// All tracks
-	TH1* histAccCtg = new TH1F("h_AccCtg", "Cotangent acceptance", 100, -10., 10.);
-	TH1* histAccPt = new TH1F("h_AccPt", "Pt acceptance", 500, 0., 50.);
-	// Tracks over min pt
-	TH1* histAccCtgH = new TH1F("h_AccCtgH", "Cotangent acceptance (high pt)", 100, -10., 10.);
-	// tracks above min angle
-	TH1* histAccPtC = new TH1F("h_AccPtC", "Pt acceptance (central tracks)", 500, 0., 50.);
-
-	//
-	// Get magnetifc field
-	Double_t Bz = treeReader->GetInfo("Bz");
-
-	// Loop over all events
-	for (Int_t entry = 0; entry < numberOfEntries; ++entry)
-	{
-		// Load selected branches with data from specified event
-		treeReader->ReadEntry(entry);
-
-		// If event contains at least 1 track
-		//
-		if (branchTrack->GetEntries() > 0)
-		{
-			// Loop on tracks
-			for (Int_t it = 0; it < branchTrack->GetEntries(); it++)
-			{
-				Track* trk = (Track*)branchTrack->At(it);
-				//
-				// Reconstructed track parameters
-				Double_t obsD0  = trk->D0;
-				Double_t obsPhi = trk->Phi;
-				Double_t obsC   = trk->C;
-				Double_t obsZ0  = trk->DZ;
-				Double_t obsCtg = trk->CtgTheta;
-				// Fill histograms
-				histDobs ->Fill(obsD0);
-				histP0obs->Fill(obsPhi);
-				histCobs ->Fill(obsC);
-				histZ0obs->Fill(obsZ0);
-				histCtobs->Fill(obsCtg);
-				//
-				// Get associated generated particle
-				GenParticle* gp = (GenParticle*)trk->Particle.GetObject();
-				//
-				// Position of origin in meters
-				Double_t x = 1.0e-3 * gp->X;
-				Double_t y = 1.0e-3 * gp->Y;
-				Double_t z = 1.0e-3 * gp->Z;
-				TVector3 xv(x, y, z);
-				//
-				// Momentum at origin
-				Double_t px = gp->Px;
-				Double_t py = gp->Py;
-				Double_t pz = gp->Pz;
-				TVector3 pv(px, py, pz);
-				//
-				// Unsmeared original parameters
-				Double_t Q = gp->Charge;
-				TVectorD gPar   = TrkUtil::XPtoPar(xv, pv, Q, Bz);	// Get parameters from position and momentum
-				TVectorD genPar = TrkUtil::ParToMm(gPar);			// Convert to mm
-				// Unpack parameters
-				Double_t genD0  = genPar(0);
-				Double_t genPhi = genPar(1);
-				Double_t genC   = genPar(2);
-				Double_t genZ0  = genPar(3);
-				Double_t genCtg = genPar(4);
-				Double_t genPt  = pv.Pt();
-				//
-				// Calculate and fill pulls
-				Double_t pullD0  = (obsD0  - genD0)  / trk->ErrorD0;
-				Double_t pullPhi = (obsPhi - genPhi) / trk->ErrorPhi;
-				Double_t pullC   = (obsC   - genC)   / trk->ErrorC;
-				Double_t pullZ0  = (obsZ0  - genZ0)  / trk->ErrorDZ;
-				Double_t pullCtg = (obsCtg - genCtg) / trk->ErrorCtgTheta;
-				//
-				histDpull ->Fill(pullD0);
-				histP0pull->Fill(pullPhi);
-				histCpull ->Fill(pullC);
-				histZ0pull->Fill(pullZ0);
-				histCtpull->Fill(pullCtg);
-				//
-				// Acceptance plots
-				Double_t obsPt = trk->PT;
-				histPtobs->Fill(obsPt);
-				if (TMath::Abs(genCtg) < maxCtAcc)histPtobsC->Fill(obsPt); // pt for central tracks
-				if (obsPt > minPtAcc)histCtobsH->Fill(obsCtg);				// cot(theta) for high pt tracks
-			}		// End loop on tracks
-
-			// If event contains at least 1 generated charged
-			//
-			if (branchGenPart->GetEntries() > 0)
-			{
-				// Loop on generated particles
-				for (Int_t it = 0; it < branchGenPart->GetEntries(); it++) {
-					GenParticle* gpart = (GenParticle*)branchGenPart->At(it);
-					//
-					// Plot charged particle parameters
-					// Only final state particles (Status = 1)
-					if (gpart->Status == 1 && TMath::Abs(gpart->Charge) > 0) {
-						//
-						// Position of origin in meters
-						Double_t x = 1.0e-3 * gpart->X;
-						Double_t y = 1.0e-3 * gpart->Y;
-						Double_t z = 1.0e-3 * gpart->Z;
-						TVector3 xv(x, y, z);
-						//
-						// Momentum at origin
-						Double_t px = gpart->Px;
-						Double_t py = gpart->Py;
-						Double_t pz = gpart->Pz;
-						TVector3 pv(px, py, pz);
-						//
-						// Original parameters
-						Double_t Q = gpart->Charge;
-						TVectorD gPar = TrkUtil::XPtoPar(xv, pv, Q, Bz);	// Get parameters from position and momentum
-						TVectorD genPar = TrkUtil::ParToMm(gPar);			// Convert to mm
-						// Unpack parameters
-						Double_t genD0  = genPar(0);
-						Double_t genPhi = genPar(1);
-						Double_t genC   = genPar(2);
-						Double_t genZ0  = genPar(3);
-						Double_t genCtg = genPar(4);
-						Double_t genPt  = pv.Pt();
-						// Fill histograms
-						histDgen ->Fill(genD0);
-						histP0gen->Fill(genPhi);
-						histCgen ->Fill(genC);
-						histZ0gen->Fill(genZ0);
-						histCtgen->Fill(genCtg);
-						//
-						// Acceptance plots
-						histPtgen->Fill(genPt);
-						if (TMath::Abs(genCtg) < maxCtAcc)histPtgenC->Fill(genPt);
-						if (genPt > minPtAcc)histCtgenH->Fill(genCtg);
-					}
-				}
-			}
-		}
-	}
-	//
-	// Show resulting histograms
-	//
-	TCanvas* Cnv = new TCanvas("Cnv", "Delphes generated track plots", 50, 50, 900, 500);
-	Cnv->Divide(3, 2);
-	Cnv->cd(1); histDgen->Draw();
-	Cnv->cd(2); histP0gen->Draw();
-	Cnv->cd(3); histCgen->Draw();
-	Cnv->cd(4); histZ0gen->Draw();
-	Cnv->cd(5); histCtgen->Draw();
-	//
-	TCanvas* Cnv1 = new TCanvas("Cnv1", "Delphes observed track plots", 100, 100, 900, 500);
-	Cnv1->Divide(3, 2);
-	Cnv1->cd(1); histDobs->Draw();
-	Cnv1->cd(2); histP0obs->Draw();
-	Cnv1->cd(3); histCobs->Draw();
-	Cnv1->cd(4); histZ0obs->Draw();
-	Cnv1->cd(5); histCtobs->Draw();
-	//
-	TCanvas* Cnv2 = new TCanvas("Cnv2", "Delphes observed track pulls", 150, 150, 900, 500);
-	Cnv2->Divide(3, 2);
-	Cnv2->cd(1); gPad->SetLogy(1);
-	histDpull->Draw();
-	Cnv2->cd(2); gPad->SetLogy(1);
-	histP0pull->Draw();
-	Cnv2->cd(3); gPad->SetLogy(1);
-	histCpull->Draw();
-	Cnv2->cd(4); gPad->SetLogy(1);
-	histZ0pull->Draw();
-	Cnv2->cd(5); gPad->SetLogy(1);
-	histCtpull->Draw();
-	//
-	// Acceptance plots
-	//
-	TCanvas* Cnv4 = new TCanvas("Cnv4", "Delphes acceptance", 200, 200, 500, 500);
-	Cnv4->Divide(2, 2);
-	Cnv4->cd(1);
-	histCtgen->Draw();
-	histCtobs->SetLineColor(kRed);
-	histCtobs->Draw("SAME");
-	Cnv4->cd(2);
-	Int_t NbCt = histCtgen->GetNbinsX();
-	for (Int_t i = 1; i < NbCt + 1; i++)
-	{
-		Float_t cgen = histCtgen->GetBinContent(i);
-		Float_t cobs = histCtobs->GetBinContent(i);
-		Float_t AccCtg = 0.0;
-		if (cgen > 0.0) AccCtg = cobs / cgen;
-		histAccCtg->SetBinContent(i, AccCtg);
-	}
-	histAccCtg->Draw();
-	Cnv4->cd(3); gPad->SetLogy(1);
-	histPtgen->Draw();
-	histPtobs->SetLineColor(kRed);
-	histPtobs->Draw("SAME");
-	Cnv4->cd(4);
-	Int_t NbPt = histPtgen->GetNbinsX();
-	for (Int_t i = 1; i < NbPt + 1; i++)
-	{
-		Float_t pgen = histPtgen->GetBinContent(i);
-		Float_t pobs = histPtobs->GetBinContent(i);
-		Float_t AccPt = 0.0;
-		if (pgen > 0.0) AccPt = pobs / pgen;
-		histAccPt->SetBinContent(i, AccPt);
-	}
-	histAccPt->Draw();
-	//
-	TCanvas* Cnv5 = new TCanvas("Cnv5", "Delphes acceptance (constrained)", 250, 250, 500, 500);
-	Cnv5->Divide(2, 2);
-	Cnv5->cd(1);
-	histCtgenH->Draw();
-	histCtobsH->SetLineColor(kRed);
-	histCtobsH->Draw("SAME");
-	Cnv5->cd(2);
-	NbCt = histCtgenH->GetNbinsX();
-	for (Int_t i = 1; i < NbCt + 1; i++)
-	{
-		Float_t cgen = histCtgenH->GetBinContent(i);
-		Float_t cobs = histCtobsH->GetBinContent(i);
-		Float_t AccCtg = 0.0;
-		if (cgen > 0.0) AccCtg = cobs / cgen;
-		histAccCtgH->SetBinContent(i, AccCtg);
-	}
-	histAccCtgH->Draw();
-	Cnv5->cd(3); gPad->SetLogy(1);
-	histPtgenC->Draw();
-	histPtobsC->SetLineColor(kRed);
-	histPtobsC->Draw("SAME");
-	Cnv5->cd(4);
-	NbPt = histPtgenC->GetNbinsX();
-	for (Int_t i = 1; i < NbPt + 1; i++)
-	{
-		Float_t pgen = histPtgenC->GetBinContent(i);
-		Float_t pobs = histPtobsC->GetBinContent(i);
-		Float_t AccPt = 0.0;
-		if (pgen > 0.0) AccPt = pobs / pgen;
-		histAccPtC->SetBinContent(i, AccPt);
-	}
-	histAccPtC->Draw();
-}
Index: examples/Example7.C
===================================================================
--- examples/Example7.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,112 +1,0 @@
-/*
-Simple macro showing how to access branches from the delphes output root file for Snowmass studies,
-loop over events, and plot simple quantities such as the leading electron and jet pt.
-
-root -l examples/Example7.C'("delphes_output.root")'
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#endif
-
-//------------------------------------------------------------------------------
-
-void Example7(const char *inputFile)
-{
-  gSystem->Load("libDelphes");
-
-  // Create chain of root trees
-  TChain chain("Delphes");
-  chain.Add(inputFile);
-
-  // Create object of class ExRootTreeReader
-  ExRootTreeReader *treeReader = new ExRootTreeReader(&chain);
-  Long64_t numberOfEntries = treeReader->GetEntries();
-
-  // Get pointers to branches used in this analysis
-  TClonesArray *branchJet = treeReader->UseBranch("JetPUPPITight");
-  TClonesArray *branchElectron = treeReader->UseBranch("ElectronMedium");
-  TClonesArray *branchWeight = treeReader->UseBranch("Weight");
-  TClonesArray *branchEvent = treeReader->UseBranch("Event");
-
-  // Book histograms
-  TH1 *histJetPT = new TH1F("jet_pt", "jet P_{T}", 100, 0.0, 1000.0);
-  TH1 *histElectronPT = new TH1F("ele_pt", "electron P_{T}", 100, 0.0, 1000.0);
-
-  // Loop over all events
-  for(Int_t entry = 0; entry < numberOfEntries; ++entry)
-  {
-    // Load selected branches with data from specified event
-    treeReader->ReadEntry(entry);
-    
-    // main MC event weight
-    HepMCEvent *event = (HepMCEvent*) branchEvent -> At(0);
-    Double_t w = event->Weight;
-    
-    // read lhe event weights
-    for(Int_t i = 0; i < branchWeight->GetEntriesFast(); ++i)
-    {
-      Weight *weight = (Weight*) branchWeight -> At(i);
-      Double_t lhe_weight = weight->Weight;
-      
-      //cout<<lhe_weight<<endl;
-      // do stuff ...
-    }
-
-    // If event contains at least 1 jet
-    if(branchJet->GetEntries() > 0)
-    {
-      // Take first jet
-      Jet *jet = (Jet*) branchJet->At(0);
-
-      // 0 - Loose , 1 - Medium, 2 - Tight
-      Int_t wp = 1;
-
-      Bool_t BtagOk = ( jet->BTag & (1 << wp) );
-      Double_t pt = jet->PT;
-      Double_t eta = TMath::Abs(jet->Eta);
-
-      // require jet to be within acceptance and btagged with Medium WP
-      if (BtagOk && pt > 30. && eta < 5.)  
-        histJetPT->Fill(jet->PT, w);
-    }
-
-    // If event contains at least 1 jet
-    if(branchElectron->GetEntries() > 0)
-    {
-      // Take first jet
-      Electron *electron = (Electron*) branchElectron->At(0);
-
-      Double_t pt = electron->PT;
-      Double_t eta = TMath::Abs(electron->Eta);
-
-      // 0.1 - Loose , 0.2 - Medium, 0.3 - Tight
-      Double_t IsoCut = 0.2;
-      Bool_t IsoOk = electron->IsolationVar < IsoCut;
-
-      // Plot jet transverse momentum
-      if (IsoOk && pt > 10. && eta < 5.)  
-        histElectronPT->Fill(electron->PT, w);
-    }
-  }
-
-
-  //
-  TCanvas *cnv = new TCanvas("cnv", "cnv", 50, 50, 800, 500);
-  cnv->Divide(2, 1);
-  cnv->cd(1);
-  gStyle->SetOptStat(0);
-
-  histJetPT->Draw();
-
-  cnv->cd(2);
-  gStyle->SetOptStat(0);
-  // Show resulting histograms
-  histElectronPT->Draw();
-
-  cnv->Print("example7.png", "png");
-
-}
-
Index: examples/Example7.py
===================================================================
--- examples/Example7.py	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,104 +1,0 @@
-#!/usr/bin/env python
-
-import sys
-
-import ROOT
-
-try:
-  input = raw_input
-except:
-  pass
-
-if len(sys.argv) < 2:
-  print(" Usage: Example1.py input_file")
-  sys.exit(1)
-
-ROOT.gSystem.Load("libDelphes")
-
-try:
-  ROOT.gInterpreter.Declare('#include "classes/DelphesClasses.h"')
-  ROOT.gInterpreter.Declare('#include "external/ExRootAnalysis/ExRootTreeReader.h"')
-except:
-  pass
-
-inputFile = sys.argv[1]
-
-# Create chain of root trees
-chain = ROOT.TChain("Delphes")
-chain.Add(inputFile)
-
-# Create object of class ExRootTreeReader
-treeReader = ROOT.ExRootTreeReader(chain)
-numberOfEntries = treeReader.GetEntries()
-
-# Get pointers to branches used in this analysis
-branchJet      = treeReader.UseBranch("JetPUPPITight")
-branchElectron = treeReader.UseBranch("ElectronMedium")
-branchWeight   = treeReader.UseBranch("Weight")
-branchEvent    = treeReader.UseBranch("Event")
-
-# Book histograms
-histJetPT = ROOT.TH1F("jet_pt", "jet P_{T}", 100, 0.0, 1000.0)
-histElectronPT = ROOT.TH1F("Electron_pt", "electron P_{T}", 100, 0.0, 1000.0)
-
-# Loop over all events
-for entry in range(0, numberOfEntries):
-  # Load selected branches with data from specified event
-  treeReader.ReadEntry(entry)
-
-  ## main MC event weight
-  w =  branchEvent[0].Weight
-
-  ## read lhe event weight
-  for weight in branchWeight:  
-    lhe_weight = weight.Weight 
-    ## do stuff ... 
-    ## print lhe_weight
-    
-  # If event contains at least 1 jet
-  if branchJet.GetEntries() > 0:
-    # Take first jet
-    jet = branchJet.At(0)
-
-    ## 0 - Loose , 1 - Medium, 2 - Tight
-    wp = 1
-
-    BtagOk = ( jet.BTag & (1 << wp) )
-    pt = jet.PT
-    eta = abs(jet.Eta)
-
-    # Plot jet transverse momentum
-    if (BtagOk and pt > 30. and eta < 5.):
-        histJetPT.Fill(jet.PT, w)
-
-
-  # If event contains at least 1 electron
-  if branchElectron.GetEntries() > 0:
-    # Take first electron
-    electron = branchElectron.At(0)
-
-    pt = electron.PT
-    eta = abs(electron.Eta)
-
-    ## looseCut = 0.3, mediumCut = 0.2, tightCut = 0.1
-    IsoCut = 0.2
-    IsoOk = electron.IsolationVar < IsoCut
-
-    # Plot electron transverse momentum
-    if (IsoOk and pt > 10. and eta < 5.):
-        histElectronPT.Fill(electron.PT, w)
-
-
-# Show resulting histograms
-cnv = ROOT.TCanvas("cnv", "cnv", 50, 50, 800, 500)
-cnv.Divide(2, 1)
-cnv.cd(1)
-ROOT.gStyle.SetOptStat(0)
-
-histJetPT.Draw()
-
-cnv.cd(2)
-ROOT.gStyle.SetOptStat(0)
-histElectronPT.Draw()
-
-input("Press Enter to continue...")
Index: examples/ExampleClCount.C
===================================================================
--- examples/ExampleClCount.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,173 +1,0 @@
-#include <iostream>
-#include <TMath.h>
-#include <TVectorD.h>
-#include <TVector3.h>
-#include <TH2.h>
-#include <TF1.h>
-#include <TGraph.h>
-#include <TLine.h>
-#include <TRandom.h>
-#include <TCanvas.h>
-#include <TStyle.h>
-#include <TLegend.h>
-#include "external/TrackCovariance/TrkUtil.h"
-
-
-void ExampleClCount(Int_t Nev = 1000, Double_t ang = 90., Int_t Opt=0)
-{
-	//
-	// Constants
-	Double_t angRad = ang*TMath::Pi() / 180.;	// To radians
-	Double_t KpMass = 0.493677;		// Charged Kaon mass
-	Double_t PiMass = 0.13957018;	// Charged Pion mass
-	Double_t Bz = 2.0;				// Field
-	TVector3 x(0.0, 0.0, 0.0);		// Track origin
-	//
-	Double_t pmin = 0.1;				// Momentum range
-	Double_t pmax = 50.;
-	//
-	// Setup chamber
-	//
-	TrkUtil *TU = new TrkUtil(Bz);
-	//cout << "TU done" << endl;
-	Double_t Rmin = 0.35;
-	Double_t Rmax = 2.0;
-	Double_t Zmin = -2.0;
-	Double_t Zmax = 2.0;
-	TU->SetDchBoundaries(Rmin, Rmax, Zmin, Zmax);
-	TU->SetGasMix(Opt);	// gas selection
-	char title[50];
-	Double_t y_min = 0.0;
-	Double_t y_max = 0.0;
-	switch (Opt)
-	{
-	case 0:
-	{
-		sprintf(title, "Helium 90 - Isobutane 10");	// He-Isobutane
-		y_min = 1500.; y_max = 3500;
-		break;
-	}
-	case 1:
-	{
-		sprintf(title, "Helium 100");				// pure He
-		y_min = 400.; y_max = 1000;
-		break;
-	}
-	case 2:
-	{
-		sprintf(title, "Argon 50 - Ethane 50");		// Argon - Ethane
-		y_min = 6000.; y_max = 8500.;
-		break;
-	}
-	case 3:
-	{
-		sprintf(title, "Argon 100");				// pure Argon
-		y_min = 4000.; y_max = 6000.;
-		break;
-	}
-	}
-	//cout << "DchBoundaries set" << endl;
-	//
-	// Histograms
-	//
-	TH2F *h_kaon = new TH2F("h_kaon", "Nclusters distribution", 200, 0., 50., 50, y_min, y_max);
-	TH2F *h_pion = new TH2F("h_pion", "Nclusters distribution", 200, 0., 50., 50, y_min, y_max);
-	//cout << "histograms booked" << endl;
-	//
-	// Fill plots
-	//
-	for (Int_t n = 0; n < Nev; n++)
-	{
-		Double_t R = gRandom->Rndm();
-		Double_t pval = pmin + R*(pmax - pmin);
-		Double_t px = pval*TMath::Sin(angRad);
-		Double_t pz = pval*TMath::Cos(angRad);
-		TVector3 p(px, 0.0, pz);
-		Double_t Q = 1.0;
-		TVectorD Par = TrkUtil::XPtoPar(x, p, Q, Bz);
-		//cout << "Parameters done. pval = "<< pval << endl;
-		//
-		Double_t Ncl = 0.0;
-		if (TU->IonClusters(Ncl, KpMass, Par))
-		{
-			//cout << "Kaon extracted. pval = "<< pval << endl;
-			h_kaon->Fill(pval, Ncl);
-			//cout << "Kaon filled. Ncl = "<<Ncl << endl;
-		}
-		if (TU->IonClusters(Ncl, PiMass, Par))
-		{
-			//cout << "Pion extracted. pval = "<<pval << endl;
-			h_pion->Fill(pval, Ncl);
-			//cout << "Pion filled. Ncl = "<<Ncl << endl;
-		}
-	}
-	//
-	// graph K/pi separation
-	//
-	const Int_t Nint = 501;
-	Double_t pmom[Nint];
-	Double_t pmn = 0.2; Double_t pmx = 100.;
-	Double_t stp = (TMath::Log(pmx) - TMath::Log(pmn)) / (Double_t)(Nint - 1);
-	for (Int_t i = 0; i < Nint; i++)pmom[i] = TMath::Exp(i * stp + TMath::Log(pmn));
-	Double_t SigDiff[Nint];
-	for (Int_t i = 0; i < Nint; i++)
-	{
-		Double_t bgK = pmom[i] / KpMass;
-		Double_t bgP = pmom[i] / PiMass;
-		Double_t px = pmom[i]*TMath::Sin(angRad);
-		Double_t pz = pmom[i]*TMath::Cos(angRad);
-		TVector3 p(px, 0.0, pz);
-		Double_t Q = 1.0;
-		TVectorD Par = TrkUtil::XPtoPar(x, p, Q, Bz);
-		Double_t tLen = TU->TrkLen(Par);
-		Double_t CluKp = TrkUtil::Nclusters(bgK,Opt)*tLen;
-		Double_t CluKpErr = TMath::Sqrt(CluKp);
-		Double_t CluPi = TrkUtil::Nclusters(bgP,Opt)*tLen;
-		Double_t CluPiErr = TMath::Sqrt(CluPi);
-		//cout << "Momentum = " << pmom[i] << ", length= " << tLen
-		//	<< ", CluKp = " << CluKp << ", CluPi = " << CluPi << endl;
-		//if (CluKp + CluPi > 0.0)SigDiff[i] = TMath::Abs(CluPi - CluKp) / TMath::Sqrt(CluKp + CluPi);
-		if (CluKp + CluPi > 0.0)SigDiff[i] = TMath::Abs(CluPi - CluKp) / (0.5*(CluKpErr + CluPiErr));
-	}
-	//
-	// Plots
-	//
-	TCanvas *cnv = new TCanvas("cnv", title, 50, 50, 800, 500);
-	cnv->Divide(2, 1);
-	cnv->cd(1);
-	gStyle->SetOptStat(0);
-	h_kaon->SetMarkerColor(kRed);
-	h_kaon->SetLineColor(kRed);
-	h_kaon->GetXaxis()->SetTitle("Momentum (GeV)");
-	h_kaon->Draw();
-	h_pion->SetMarkerColor(kBlack);
-	h_pion->SetLineColor(kBlack);
-	h_pion->Draw("SAME");
-	//
-	TLegend* lg = new TLegend(0.1, 0.9, 0.3, 0.70);
-	TString LgTitle = "Particle type:";
-	lg->SetHeader(LgTitle);
-	lg->AddEntry(h_pion, "#pi", "L");
-	lg->AddEntry(h_kaon, "#color[2]{K}", "L");
-	lg->Draw();
-	cnv->cd(2);
-	gPad->SetLogx();
-	TGraph *gr = new TGraph(Nint, pmom, SigDiff);
-	gr->SetMinimum(0.0);
-	gr->SetMaximum(8.0);
-	gr->GetXaxis()->SetLimits(0.,100.);
-	gr->SetTitle("K/#pi separation in nr. of #sigma");
-	gr->GetXaxis()->SetTitle("Momentum (GeV)");
-	gr->SetLineColor(kBlue);
-	gr->Draw("APC");
-	TLine *line = new TLine(0.0, 3.0, 100., 3.0);
-	line->Draw("SAME");
-	//
-	TCanvas* cnvf = new TCanvas("cnvf", "Interpolating function", 100, 100, 800, 500);
-	cnvf->Divide(1, 1);
-	cnvf->cd(1);
-	gPad->SetLogx();
-	TF1* f_ncl = new TF1("f_ncl", TU, &TrkUtil::funcNcl, 0.5, 1000., 1);
-	f_ncl->SetNpx(500);
-	f_ncl->Draw();
-}
Index: examples/ExampleCscCluster.py
===================================================================
--- examples/ExampleCscCluster.py	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,108 +1,0 @@
-"""
-This script computes and prints the signal efficiency when reinterpreting the CMS analysis searching for LLPs that decay in the endcap muon detectors (https://arxiv.org/abs/2107.04838)
-The event-level and cluster-level selections follow the exact selections applied in the paper and the recasting instructions provided in the HEPData entry (https://www.hepdata.net/record/104408)
-The user would need to normalize to the correct signal cross section and luminosity to get the expected signal yield.
-"""
-
-import sys
-import ROOT
-import math
-def deltaR(eta1, phi1, eta2, phi2):
-    return (dPhi(phi1,phi2)**2+(eta1-eta2)**2)**0.5
-
-def dPhi(phi1, phi2):
-    delta = phi1-phi2
-    while delta > math.pi: delta -= 2* math.pi
-    while delta < math.pi: delta += 2* math.pi
-    return delta
-
-if __name__ == '__main__':
-    try:
-      input = raw_input
-    except:
-      pass
-
-    if len(sys.argv) < 2:
-      print(" Usage: ExampleCscCluster.py input_file")
-      sys.exit(1)
-
-    ROOT.gSystem.Load("libDelphes")
-
-    try:
-      ROOT.gInterpreter.Declare('#include "classes/DelphesClasses.h"')
-      ROOT.gInterpreter.Declare('#include "external/ExRootAnalysis/ExRootTreeReader.h"')
-    except:
-      pass
-
-    inputFile = sys.argv[1]
-
-    # Create chain of root trees
-    chain = ROOT.TChain("Delphes")
-    chain.Add(inputFile)
-
-    # Create object of class ExRootTreeReader
-    treeReader = ROOT.ExRootTreeReader(chain)
-    numberOfEntries = treeReader.GetEntries()
-
-    # Get pointers to branches used in this analysis
-    branchCluster      = treeReader.UseBranch("CscCluster")
-    branchMET      = treeReader.UseBranch("MissingET")
-    branchElectron = treeReader.UseBranch("Electron")
-    branchMuon = treeReader.UseBranch("Muon")
-    branchJet = treeReader.UseBranch("Jet")
-    branchWeight   = treeReader.UseBranch("Weight")
-    branchEvent    = treeReader.UseBranch("Event")
-
-
-    signal_yield = 0
-    total_weight = 0
-
-    # Loop over all events
-    for entry in range(0, numberOfEntries):
-      # Load selected branches with data from specified event
-      treeReader.ReadEntry(entry)
-
-      ## main MC event weight
-      w =  branchWeight[0].Weight
-      total_weight += w
-
-      ################################
-      # Event-level selections
-      ################################
-      # Require MET > 200 GeV
-      if branchMET.At(0).MET < 200: continue
-
-      # Require at least 1 jet with pT > 50 GeV and abs(eta) < 2.4
-      nJet = 0
-      for i in range(branchJet.GetEntries()):
-          jet = branchJet.At(i)
-          if jet.PT > 50 and abs(jet.Eta)< 2.4: nJet+=1
-      if nJet == 0: continue
-
-      # Require 0 lepton
-      nLeptons = 0
-      for i in range(branchElectron.GetEntries()):
-          if branchElectron.At(i).PT > 35 and abs(branchElectron.At(i).Eta)< 2.5: nLeptons+=1
-      for i in range(branchElectron.GetEntries()):
-          if branchElectron.At(i).PT > 25 and abs(branchElectron.At(i).Eta)< 2.4: nLeptons+=1
-      if nLeptons > 0:continue
-      ################################
-      # Cluster-level selections
-      ################################
-      nCscCluster = 0
-      for i in range(branchCluster.GetEntries()):
-        cluster = branchCluster.At(i)
-
-        # check for jet veto
-        maxJetVetoPt = 0
-        for j in range(branchJet.GetEntries()):
-            jet = branchJet.At(j)
-            if deltaR(cluster.Eta, cluster.Phi, jet.Eta, jet.Phi) < 0.4:
-                maxJetVetoPt = max(maxJetVetoPt, jet.PT)
-        nCscCluster+=1
-        if (maxJetVetoPt<10 and abs(dPhi(cluster.Phi, branchMET.At(0).Phi)) < 0.75 and cluster.T < 12.5 and cluster.T > -5): nCscCluster+=1
-      if nCscCluster == 0:continue
-
-      signal_yield+= w
-
-    print("final signal efficiency is:" + str(signal_yield/total_weight))
Index: examples/ExampleKsVtxFit.C
===================================================================
--- examples/ExampleKsVtxFit.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,210 +1,0 @@
-/*
-Example of using vertex fitter class to fit primary vertex
-assumed to be generated in (0,0,0)
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "modules/TrackCovariance.h"
-#include "external/TrackCovariance/TrkUtil.h"
-#include "external/TrackCovariance/VertexFit.h"
-#include <TVectorD.h>
-#include <TMath.h>
-
-#endif
-
-
-
-//------------------------------------------------------------------------------
-
-void ExampleKsVtxFit(const char* inputFile, Int_t Nevent = 5)
-{
-	// Create chain of root trees
-	TChain chain("Delphes");
-	chain.Add(inputFile);
-
-	// Create object of class ExRootTreeReader
-	ExRootTreeReader* treeReader = new ExRootTreeReader(&chain);
-	Long64_t numberOfEntries = treeReader->GetEntries();
-
-	// Get pointers to branches used in this analysis
-	TClonesArray* branchGenPart = treeReader->UseBranch("Particle");
-	TClonesArray* branchTrack = treeReader->UseBranch("Track");
-
-	// Book histograms
-	Int_t Nbin = 100;
-	TH1D* hXpull = new TH1D("hXpull", "Pull X vertex component", Nbin, -10., 10.);
-	TH1D* hYpull = new TH1D("hYpull", "Pull Y vertex component", Nbin, -10., 10.);
-	TH1D* hZpull = new TH1D("hZpull", "Pull Z vertex component", Nbin, -10., 10.);
-	TH1D* hChi2 = new TH1D("hChi2", "Vertex #chi^{2}/N_{dof}", Nbin, 0., 10.);
-	//
-	// Loop over all events
-	Int_t Nev = TMath::Min(Nevent, (Int_t)numberOfEntries);
-	for (Int_t entry = 0; entry < Nev; ++entry)
-	{
-		// Load selected branches with data from specified event
-		treeReader->ReadEntry(entry);
-		// 
-		Int_t NtrG = branchTrack->GetEntries();
-		const Int_t NtFit = 2;
-		TVectorD** pr = new TVectorD * [NtFit];
-		TMatrixDSym** cv = new TMatrixDSym * [NtFit];
-		std::cout<<"Start of event "<<entry<<std::endl;
-		//
-		// Search for generated Ks--> pi+ pi-
-		Int_t KsID = 310;
-		Int_t NKs = 0;
-		std::vector<GenParticle*> gpi1;
-		std::vector<GenParticle*> gpi2;
-		std::vector<Track*> gti1;
-		std::vector<Track*> gti2;
-		std::vector<TVectorD*> gKsVtx;
-		std::vector<TVectorD*> rKsVtx;
-		//
-		if (branchGenPart->GetEntries() > 1)
-		{
-		    for(Int_t ig=0; ig<branchGenPart->GetEntries(); ig++)
-		    {
-			GenParticle* gp = (GenParticle*)branchGenPart->At(ig);
-			if(gp->PID == KsID)	// Found Ks
-			{
-				// Store daughters
-				gpi1.push_back( (GenParticle*)branchGenPart->At(gp->D1));
-				gpi2.push_back( (GenParticle*)branchGenPart->At(gp->D2));
-				Track* Tnull = 0;
-				gti1.push_back(Tnull);
-				gti2.push_back(Tnull);
-				// Store vertex
-				Double_t Vnull[3] = {0.,0.,0.};
-				TVectorD rVnull(3,Vnull);
-				Double_t Vgen[3] = {gpi1[NKs]->X,gpi1[NKs]->Y,gpi1[NKs]->Z};
-				TVectorD gVert(3,Vgen);
-				gKsVtx.push_back(new TVectorD(gVert));
-				rKsVtx.push_back(new TVectorD(rVnull));
-				//
-				NKs++;
-			}
-		    }
-		}	// Done searching
-		std::cout<<"Done searching. Found "<<NKs<<" K0s"<<std::endl;
-		//
-		// If event contains at least 1 Ks and 1 track
-		//
-		if (branchTrack->GetEntries() > 1 && NKs > 0)
-		{
-			// Loop on tracks
-			for (Int_t it = 0; it < branchTrack->GetEntries(); it++)
-			{
-				//std::cout<<"Start track loop. it ="<<it<<std::endl;
-				Track* trk = (Track*)branchTrack->At(it);
-				//
-				// Get associated generated particle
-				GenParticle* gt = (GenParticle*)trk->Particle.GetObject();
-				Int_t mp = gt->M1;	// Mother
-				GenParticle* gm = (GenParticle*)branchGenPart->At(mp);
-				if(gm->PID == KsID)	// Mother is Ks
-				{
-				   for(Int_t k=0; k<NKs; k++)
-				   {
-					if(gt == gpi1[k]) gti1[k] = trk;
-					if(gt == gpi2[k]) gti2[k] = trk;
-				   }
-				}
-				//std::cout<<"End track loop"<<std::endl;
-			}		// End loop on tracks
-			//
-			//	Look for K0s to fit
-			//
-			for(Int_t k=0; k<NKs; k++)	//Scan Ks
-			{
-				Bool_t found = (gti1[k] != 0) && (gti2[k] != 0);
-				//std::cout<<"Prepare Ks # "<<k<<" for fitting. Found = "<<found<<std::endl;
-				TVectorD gVtx = *gKsVtx[k];
-				if(gti1[k] != 0 && gti2[k] != 0)	// if both tracks found
-				{	
-					//std::cout<<"Both tracks found"<<std::endl;
-					// First leg
-					Double_t obsD0 = gti1[k]->D0;
-					Double_t obsPhi = gti1[k]->Phi;
-					Double_t obsC = gti1[k]->C;
-					Double_t obsZ0 = gti1[k]->DZ;
-					Double_t obsCtg = gti1[k]->CtgTheta;
-					// 
-					Double_t oPar1[5] = { obsD0, obsPhi, obsC, obsZ0, obsCtg };
-					TVectorD obsPar1(5, oPar1);	// Fill observed parameters
-					pr[0] = new TVectorD(obsPar1);
-					cv[0] = new TMatrixDSym(gti1[k]->CovarianceMatrix());
-					// Second leg
-					obsD0 = gti2[k]->D0;
-					obsPhi = gti2[k]->Phi;
-					obsC = gti2[k]->C;
-					obsZ0 = gti2[k]->DZ;
-					obsCtg = gti2[k]->CtgTheta;
-					// 
-					Double_t oPar2[5] = { obsD0, obsPhi, obsC, obsZ0, obsCtg };
-					TVectorD obsPar2(5, oPar2);	// Fill observed parameters
-					pr[1] = new TVectorD(obsPar2);
-					cv[1] = new TMatrixDSym(gti2[k]->CovarianceMatrix());
-					//
-					// Fit vertex
-					//
-					Double_t Rmin = 17.;	// Lowest layer
-					Double_t Rvtx = TMath::Sqrt(gVtx(0)*gVtx(0)+gVtx(0)*gVtx(0));
-					VertexFit* Vtx = new VertexFit(NtFit, pr, cv);
-					if(Rvtx > Rmin)Vtx->SetStartR(Rvtx+10.);
-					//std::cout<<"BEFORE VERTEX FIT. Rvtx = "<<Rvtx<<std::endl;
-					TVectorD xvtx = Vtx->GetVtx();
-					TMatrixDSym covX = Vtx->GetVtxCov();
-					Double_t Chi2 = Vtx->GetVtxChi2();
-					//
-					// Fill plots
-					//
-					Double_t PullX = (xvtx(0)-gVtx(0)) / TMath::Sqrt(covX(0, 0));
-					Double_t PullY = (xvtx(1)-gVtx(1)) / TMath::Sqrt(covX(1, 1));
-					Double_t PullZ = (xvtx(2)-gVtx(2)) / TMath::Sqrt(covX(2, 2));
-					hXpull->Fill(PullX);
-					hYpull->Fill(PullY);
-					hZpull->Fill(PullZ);
-					hChi2->Fill(Chi2);
-					std::cout<<"xg: "<<gVtx(0)<<", yg: "<<gVtx(1)<<", zg: "<<gVtx(2)<<std::endl;
-					std::cout<<"xr: "<<xvtx(0)<<", yr: "<<xvtx(1)<<", zr: "<<xvtx(2)<<std::endl;
-					// Cleanup
-					for (Int_t i = 0; i < NtFit; i++) delete pr[i];
-					for (Int_t i = 0; i < NtFit; i++) delete cv[i];
-				}
-			} // End loop on Ks
-			//std::cout<<"Joust out of Ks loop"<<std::endl;
-			//
-			// Clean
-			delete[] pr;
-			delete[] cv;
-			for(Int_t k=0; k<NKs; k++)
-			{
-				delete gKsVtx[k];
-				delete rKsVtx[k];
-			}
-			gpi1.clear();;
-			gpi2.clear();
-			gti1.clear();
-			gti2.clear();
-			gKsVtx.clear();
-			rKsVtx.clear();
-			//std::cout<<"Finished cleanup"<<std::endl;
-		} // End if on Ks present
-	}
-	//
-	// Show resulting histograms
-	//
-	TCanvas* Cnv = new TCanvas("Cnv", "Delphes Ks vertex pulls", 50, 50, 900, 500);
-	Cnv->Divide(2, 2);
-	Cnv->cd(1); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hXpull->Fit("gaus"); hXpull->Draw();
-	Cnv->cd(2); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hYpull->Fit("gaus"); hYpull->Draw();
-	Cnv->cd(3); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hZpull->Fit("gaus"); hZpull->Draw();
-	Cnv->cd(4); hChi2->Draw();
-}
Index: examples/ExamplePVtxFind.C
===================================================================
--- examples/ExamplePVtxFind.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,308 +1,0 @@
-/*
-Example of using vertex fitter class to fit primary vertex
-assumed to be generated with Pythia8/ee_zh_smr-shf.cmn
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "modules/TrackCovariance.h"
-#include "external/TrackCovariance/TrkUtil.h"
-#include "external/TrackCovariance/VertexFit.h"
-
-#endif
-
-
-//------------------------------------------------------------------------------
-
-void ExamplePVtxFind(const char* inputFile, Int_t Nevent = 5)
-{
-	// Create chain of root trees
-	TChain chain("Delphes");
-	chain.Add(inputFile);
-
-	// Create object of class ExRootTreeReader
-	ExRootTreeReader* treeReader = new ExRootTreeReader(&chain);
-	Long64_t numberOfEntries = treeReader->GetEntries();
-
-	// Get pointers to branches used in this analysis
-	TClonesArray* branchGenPart = treeReader->UseBranch("Particle");
-	TClonesArray* branchTrack = treeReader->UseBranch("Track");
-
-	// Book histograms
-	// Vertex fit pulls
-	Int_t Nbin = 100;
-	TH1D* hXpull = new TH1D("hXpull", "Pull X vertex component", Nbin, -10., 10.);
-	TH1D* hYpull = new TH1D("hYpull", "Pull Y vertex component", Nbin, -10., 10.);
-	TH1D* hZpull = new TH1D("hZpull", "Pull Z vertex component", Nbin, -10., 10.);
-	TH1D* hChi2 = new TH1D("hChi2", "Vertex #chi^{2}/N_{dof}", Nbin, 0., 10.);
-	// Track vertex associations
-	TH1D* hTrPrim = new TH1D("hTrPrim", "Available primary tracks", 41, -0.5, 40.5);
-	TH1D* hTrFound = new TH1D("hTrFound", "Found primary tracks", 41, -0.5, 40.5);
-	TH1D* hTrFoundG = new TH1D("hTrFoundG", "Found GOOD primary tracks", 41, -0.5, 40.5);
-	TH1D* hTrFoundB = new TH1D("hTrFoundB", "Found BAD  primary tracks", 41, -0.5, 40.5);
-	TH1D* hTrDiff = new TH1D("hTrDiff", "Found - available tracks", 21, -10.5, 10.5);
-	// Chi2 for cuts
-	TH1D* hChi2SngP = new TH1D("hChi2SngP", "#chi^2 for single tracks", 200, 0., 50.);
-	TH1D* hChi2MaxP = new TH1D("hChi2MaxP", "#chi^2 max contribution", 200, 0., 50.);
-	TH1D* hChi2SngN = new TH1D("hChi2SngN", "#chi^2 for single tracks", 200, 0., 50.);
-	TH1D* hChi2MaxN = new TH1D("hChi2MaxN", "#chi^2 max contribution", 200, 0., 50.);
-	
-	
-	//
-	// Loop over all events
-	Int_t Nev = TMath::Min(Nevent, (Int_t)numberOfEntries);
-	for (Int_t entry = 0; entry < Nev; ++entry)
-	{
-		// Load selected branches with data from specified event
-		treeReader->ReadEntry(entry);
-		Int_t NtrG = branchTrack->GetEntries();
-		TVectorD** pr = new TVectorD * [NtrG];		// Track Parameters
-		TMatrixDSym** cv = new TMatrixDSym * [NtrG];	// Track covariances
-		Bool_t *fprvx = new Bool_t[NtrG];		// Primary vertex flag
-		//
-		// test Particle branch
-		Int_t Ngen = branchGenPart->GetEntries();
-		//std::cout << "Nr. of generated particles: " << Ngen << std::endl;
-		// If event contains at least 1 track
-		//
-		Double_t Nprim = 0.0;
-		Double_t xpv = 0.0;		// Init true primary vertex position
-		Double_t ypv = 0.0;
-		Double_t zpv = 0.0;
-		if (branchTrack->GetEntries() > 0)
-		{
-			// Loop on tracks
-			for (Int_t it = 0; it < branchTrack->GetEntries(); it++)
-			{
-				Track* trk = (Track*)branchTrack->At(it);
-				//
-				// Start fitting all available tracks
-				//
-				// Reconstructed track parameters
-				Double_t obsD0 = trk->D0;
-				Double_t obsPhi = trk->Phi;
-				Double_t obsC = trk->C;
-				Double_t obsZ0 = trk->DZ;
-				Double_t obsCtg = trk->CtgTheta;
-				//std::cout << "Got track parameters for track " << it << std::endl;
-				//
-				// Load all tracks for vertex fit 
-				Double_t oPar[5] = { obsD0, obsPhi, obsC, obsZ0, obsCtg };
-				TVectorD obsPar(5, oPar);	// Fill observed parameters
-				pr[it] = new TVectorD(obsPar);
-				cv[it] = new TMatrixDSym(trk->CovarianceMatrix());
-			//
-			// Find true primary vertex
-				GenParticle* gp = (GenParticle*)trk->Particle.GetObject();
-				//std::cout << "GenParticle pointer "<<gp << std::endl;
-				//
-				// Position of origin in mm
-				Double_t x = gp->X;
-				Double_t y = gp->Y;
-				Double_t z = gp->Z;
-				Bool_t prim = kTRUE;	// Is primary?
-				fprvx[it] = kFALSE;
-				Int_t mp = gp->M1;	// Mother
-				while (mp > 0) {
-					GenParticle* gm =
-						(GenParticle*)branchGenPart->At(mp);
-					Double_t xm = gm->X;
-					Double_t ym = gm->Y;
-					Double_t zm = gm->Z;
-					if (x != xm || y != ym || z != zm) {
-						prim = kFALSE;
-						break;
-					}
-					else mp = gm->M1;
-				}
-				if (prim) {		// It's a primary track
-					Nprim++;
-					fprvx[it] = kTRUE;
-					xpv = x;	// Store true primary
-					ypv = y;
-					zpv = z;
-				}
-
-			}		// End loop on tracks
-		}
-		if(entry%500 ==0){
-		  std::cout << "Event "<<entry<<" opened containing " << NtrG << " / "<< Nprim 
-		  << "   Total / primary tracks"<< std::endl;
-		}
-		//std::cout<<"PVtxFind true vertex: Nprim= "<<Nprim<<", x,y,z= "<<xpv<<", "<<ypv<<", "<<zpv<<std::endl;
-		//
-		// Find primary vertex
-		//
-		//Beam constraint
-		TVectorD xpvc(3);
-		xpvc(0) = 1.0;
-		xpvc(1) = -2.0;
-		xpvc(2) = 10.0;
-		TMatrixDSym covpvc(3); covpvc.Zero();
-		covpvc(0, 0) = 0.0097 * 0.0097;
-		covpvc(1, 1) = 2.55e-05 * 2.55e-05;
-		covpvc(2, 2) = 0.64 * 0.64;
-		if(Nprim == 0){
-			xpv = xpvc(0);
-			ypv = xpvc(1);
-			zpv = xpvc(2);
-		}
-		//
-		//
-		// Skim tracks
-		Int_t nSkim = 0;
-		Int_t* nSkimmed = new Int_t[NtrG];
-		TVectorD** PrSk = new TVectorD * [1];
-		TMatrixDSym** CvSk = new TMatrixDSym * [1];
-		Double_t MaxChi2 = 9.;
-		for (Int_t n = 0; n < NtrG; n++) {
-			PrSk[0] = new TVectorD(*pr[n]);
-			CvSk[0] = new TMatrixDSym(*cv[n]);
-			VertexFit* Vskim = new VertexFit(1,PrSk, CvSk);
-			Vskim->AddVtxConstraint(xpvc, covpvc);
-			Double_t Chi2One = Vskim->GetVtxChi2();
-			//std::cout<<"Track "<<n<<", Chi2 = "<<Chi2One<<std::endl;
-			if(fprvx[n])hChi2SngP->Fill(Chi2One);
-			else hChi2SngN->Fill(Chi2One);
-			//
-			if (Chi2One < MaxChi2) {
-				nSkimmed[nSkim] = n;
-				//std::cout << "nSkimmed[" << nSkim << "] = " << n << std::endl;
-				nSkim++;
-			}
-			// Cleanup
-			delete Vskim;
-		}
-		delete PrSk[0];
-		delete CvSk[0];
-		delete[] PrSk;
-		delete[] CvSk;
-		//
-		// Load tracks for primary fit
-		Int_t MinTrk = 1;	// Minumum # tracks for vertex fit
-		std::vector<Int_t> trnum;
-		if (nSkim >= MinTrk) {
-			TVectorD** PrFit = new TVectorD * [nSkim];
-			TMatrixDSym** CvFit = new TMatrixDSym * [nSkim];
-			for (Int_t n = 0; n < nSkim; n++) {
-				PrFit[n] = new TVectorD(*pr[nSkimmed[n]]);
-				CvFit[n] = new TMatrixDSym(*cv[nSkimmed[n]]);
-				trnum.push_back(nSkimmed[n]);
-			}
-			delete[] nSkimmed;
-			Int_t Nfound = nSkim;
-			if(entry%500 ==0)std::cout << "Found tracks "<<Nfound << std::endl;
-			const Int_t MaxFound = 100; Double_t Chi2LL[MaxFound]; Double_t *Chi2L = Chi2LL;
-			VertexFit* Vtx = new VertexFit(nSkim, PrFit, CvFit);
-			//std::cout << "Vertex fit created " << std::endl;
-			Vtx->AddVtxConstraint(xpvc, covpvc);
-			//
-			// Remove tracks with large chi2
-			Double_t MaxChi2Fit = 8.0;
-			Bool_t Done = kFALSE;
-			while (!Done) {
-				//std::cout << "After while " << std::endl;
-				// Find largest Chi2 contribution
-				TVectorD Chi2List = Vtx->GetVtxChi2List();	// Get contributions to Chi2
-				//std::cout << "After Chi2List.  " << std::endl; Chi2List.Print();
-				//Double_t* Chi2L = new Double_t[Nfound];
-				Chi2L = Chi2List.GetMatrixArray();
-				Int_t iMax = TMath::LocMax(Nfound, Chi2L);
-				//std::cout << "iMax =  "<<iMax << std::endl;
-				Double_t Chi2Mx = Chi2L[iMax];
-				//std::cout << "Chi2Mx "<<Chi2Mx << std::endl;
-				if(fprvx[trnum[iMax]])hChi2MaxP->Fill(Chi2Mx);
-				else hChi2MaxN->Fill(Chi2Mx);
-				if (Chi2Mx > MaxChi2Fit && Nfound > 1) {
-					//std::cout << "Before remove.  Nfound = "<<Nfound << std::endl;
-					Vtx->RemoveTrk(iMax);
-					trnum.erase(trnum.begin() + iMax);
-					//std::cout << "After remove." << std::endl;
-					Nfound--;
-				}
-				else {
-					Done = kTRUE;
-				}
-			}
-			//
-			//std::cout << "Before getting vertex " << std::endl;
-			//
-			// Require minimum number of tracks in vertex
-			Int_t Nmin = 1;
-			if (Nfound >= Nmin) {
-				TVectorD xvtx = Vtx->GetVtx();
-				//std::cout << "Found vertex " << xvtx(0)<<", "<<xvtx(1)<<", "<<xvtx(2) << std::endl;
-				TMatrixDSym covX = Vtx->GetVtxCov();
-				Double_t Chi2 = Vtx->GetVtxChi2();
-				Double_t Ndof = 2 * (Double_t)Nfound;
-				Double_t PullX = (xvtx(0) - xpv) / TMath::Sqrt(covX(0, 0));
-				Double_t PullY = (xvtx(1) - ypv) / TMath::Sqrt(covX(1, 1));
-				Double_t PullZ = (xvtx(2) - zpv) / TMath::Sqrt(covX(2, 2));
-				//
-				// Fill histograms
-				hXpull->Fill(PullX);
-				hYpull->Fill(PullY);
-				hZpull->Fill(PullZ);
-				hChi2->Fill(Chi2 / Ndof);
-				//
-				hTrPrim->Fill(Nprim);
-				hTrFound->Fill((Double_t)Nfound);
-				hTrDiff->Fill((Double_t)Nfound-Nprim);
-				//std::cout << "Histograms filled " << std::endl;
-			}
-			//
-			// Clean
-			delete Vtx;
-			for (Int_t i = 0; i < nSkim; i++) delete PrFit[i];
-			for (Int_t i = 0; i < nSkim; i++) delete CvFit[i];
-			delete[] PrFit;
-			delete[] CvFit;
-			delete[] fprvx;
-			trnum.clear();
-		}
-
-		//std::cout << "Vertex chi2/Ndof = " << Chi2 / Ndof << std::endl;
-		//
-		// Cleanup
-		for (Int_t i = 0; i < NtrG; i++) delete pr[i];
-		for (Int_t i = 0; i < NtrG; i++) delete cv[i];
-		delete[] pr;
-		delete[] cv;
-	}
-	//
-	// Show resulting histograms
-	//
-	TCanvas* Cnv = new TCanvas("Cnv", "Delphes primary vertex pulls", 50, 50, 900, 500);
-	Cnv->Divide(2, 2);
-	Cnv->cd(1); gPad->SetLogy(1); gStyle->SetOptFit(1111); gStyle->SetOptStat(111111);
-	hXpull->Fit("gaus"); hXpull->Draw();
-	Cnv->cd(2); gPad->SetLogy(1); gStyle->SetOptFit(1111); gStyle->SetOptStat(111111);
-	hYpull->Fit("gaus"); hYpull->Draw();
-	Cnv->cd(3); gPad->SetLogy(1); gStyle->SetOptFit(1111); gStyle->SetOptStat(111111);
-	hZpull->Fit("gaus"); hZpull->Draw();
-	Cnv->cd(4); hChi2->Draw();
-	//
-	TCanvas* CnvN = new TCanvas("CnvN", "Primary tracks found", 100, 100, 900, 500);
-	CnvN->Divide(2, 2);
-	CnvN->cd(1);
-	hTrPrim->Draw();
-	CnvN->cd(2);
-	hTrFound->SetLineColor(kRed);
-	hTrFound->Draw();
-	CnvN->cd(3);
-	hTrDiff->Draw();
-	//
-	TCanvas* CnvCh = new TCanvas("CnvCh", "#chi^2", 200, 200, 900, 500);
-	CnvCh->Divide(2,1);
-	CnvCh->cd(1);
-	hChi2SngP->Draw();
-	hChi2SngN->SetLineColor(kRed);
-	hChi2SngN->Draw("SAME");
-	CnvCh->cd(2);
-	hChi2MaxP->Draw();
-	hChi2MaxN->SetLineColor(kRed);
-	hChi2MaxN->Draw("SAME");
-}
Index: examples/ExamplePVtxFit.C
===================================================================
--- examples/ExamplePVtxFit.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,165 +1,0 @@
-/*
-Example of using vertex fitter class to fit primary vertex
-assumed to be generated in (0,0,0)
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "modules/TrackCovariance.h"
-#include "external/TrackCovariance/TrkUtil.h"
-#include "external/TrackCovariance/VertexFit.h"
-
-#endif
-
-
-
-//------------------------------------------------------------------------------
-
-void ExamplePVtxFit(const char* inputFile, Int_t Nevent = 5)
-{
-	// Create chain of root trees
-	TChain chain("Delphes");
-	chain.Add(inputFile);
-
-	// Create object of class ExRootTreeReader
-	ExRootTreeReader* treeReader = new ExRootTreeReader(&chain);
-	Long64_t numberOfEntries = treeReader->GetEntries();
-
-	// Get pointers to branches used in this analysis
-	TClonesArray* branchGenPart = treeReader->UseBranch("Particle");
-	TClonesArray* branchTrack = treeReader->UseBranch("Track");
-
-	// Book histograms
-	Int_t Nbin = 100;
-	TH1D* hXpull = new TH1D("hXpull", "Pull X vertex component", Nbin, -10., 10.);
-	TH1D* hYpull = new TH1D("hYpull", "Pull Y vertex component", Nbin, -10., 10.);
-	TH1D* hZpull = new TH1D("hZpull", "Pull Z vertex component", Nbin, -10., 10.);
-	TH1D* hChi2 = new TH1D("hChi2", "Vertex #chi^{2}/N_{dof}", Nbin, 0., 10.);
-	//
-	// Loop over all events
-	Int_t Nev = TMath::Min(Nevent, (Int_t)numberOfEntries);
-	for (Int_t entry = 0; entry < Nev; ++entry)
-	{
-		// Load selected branches with data from specified event
-		treeReader->ReadEntry(entry);
-		// 
-		Int_t Ntr = 0;	// # of tracks from primary vertex
-		Int_t NtrG = branchTrack->GetEntries();
-		TVectorD** pr = new TVectorD * [NtrG];
-		TMatrixDSym** cv = new TMatrixDSym * [NtrG];
-		//
-		// True vertex
-		Double_t xpv, ypv, zpv;
-		// If event contains at least 1 track
-		//
-		if (branchTrack->GetEntries() > 0)
-		{
-			// Loop on tracks
-			for (Int_t it = 0; it < branchTrack->GetEntries(); it++)
-			{
-				Track* trk = (Track*)branchTrack->At(it);
-				//
-				// Get associated generated particle
-				GenParticle* gp = (GenParticle*)trk->Particle.GetObject();
-				TVector3 xg(1.e-3*gp->X,1.e-3*gp->Y,1.e-3*gp->Z);
-				TVector3 pg(gp->Px,gp->Py,gp->Pz);
-				Double_t Q = (Double_t)gp->Charge;
-				Double_t Bz = 2.0;
-				TVectorD genParM =TrkUtil:: XPtoPar(xg, pg, Q, Bz);
-				TVectorD genPar = TrkUtil::ParToMm(genParM);
-				//
-				// Position of origin in mm
-				Double_t x = gp->X;
-				Double_t y = gp->Y;
-				Double_t z = gp->Z;
-				Bool_t prim = kTRUE;	// Is primary?
-				Int_t mp = gp->M1;	// Mother
-				while(mp>0){
-					GenParticle* gm = 
-					(GenParticle*)branchGenPart->At(mp);
-					Double_t xm = gm->X;
-                                	Double_t ym = gm->Y;
-                                	Double_t zm = gm->Z;
-					if(x!=xm || y!=ym || z!=zm){
-						prim = kFALSE;
-						break;
-					}else mp = gm->M1;
-				}
-				//
-				// group tracks originating from the primary vertex
-				if (prim)
-				{
-					//std::cout<<"Event: "<<entry<<", track: "<<it;
-					//std::cout<<", x = "<<x<<", y = "<<y<<", z = "<<z<<std::endl; 
-					xpv = x;
-					ypv = y;
-					zpv = z; 
-					//
-					// Reconstructed track parameters
-					Double_t obsD0 = trk->D0;
-					Double_t obsPhi = trk->Phi;
-					Double_t obsC = trk->C;
-					Double_t obsZ0 = trk->DZ;
-					//std::cout<<"Z0 track = "<< obsZ0
-					//<<", gen Z0 = "<<genPar(3)
-					//<<", gen cot = "<<genPar(4)<<std::endl;
-					Double_t obsCtg = trk->CtgTheta;
-					Double_t oPar[5] = { obsD0, obsPhi, obsC, obsZ0, obsCtg };
-					TVectorD obsPar(5, oPar);	// Fill observed parameters
-					//
-					pr[Ntr] = new TVectorD(obsPar);
-					//std::cout<<"Cov Matrix:"<<std::endl;
-					//trk->CovarianceMatrix().Print();
-					cv[Ntr] = new TMatrixDSym(trk->CovarianceMatrix());
-					Ntr++;
-				}
-			}		// End loop on tracks
-		}
-		//
-		// Fit primary vertex
-		Int_t MinTrk = 2;	// Minumum # tracks for vertex fit
-		if (Ntr >= MinTrk) {
-			VertexFit* Vtx = new VertexFit(Ntr, pr, cv);
-			TVectorD xvtx = Vtx->GetVtx();
-			TMatrixDSym covX = Vtx->GetVtxCov();
-			Double_t Chi2 = Vtx->GetVtxChi2();
-			Double_t Ndof = 2 * (Double_t)Ntr - 3;
-			Double_t PullX = (xvtx(0)-xpv) / TMath::Sqrt(covX(0, 0));
-			Double_t PullY = (xvtx(1)-ypv) / TMath::Sqrt(covX(1, 1));
-			Double_t PullZ = (xvtx(2)-zpv) / TMath::Sqrt(covX(2, 2));
-			//std::cout<<"**** True  vertex (x, y, z) "<<xpv<<", "
-			//<<ypv<<", "<<zpv<<std::endl;
-			//std::cout<<"**** Found vertex (x, y, z) "<<xvtx(0)<<", "
-                        //<<xvtx(1)<<", "<<xvtx(2)<<std::endl;
-			//
-			// Fill histograms
-			hXpull->Fill(PullX);
-			hYpull->Fill(PullY);
-			hZpull->Fill(PullZ);
-			hChi2->Fill(Chi2 / Ndof);
-		}
-
-		//std::cout << "Vertex chi2/Ndof = " << Chi2 / Ndof << std::endl;
-		//
-		// Cleanup
-		for (Int_t i = 0; i < Ntr; i++) delete pr[i];
-		for (Int_t i = 0; i < Ntr; i++) delete cv[i];
-		delete[] pr;
-		delete[] cv;
-	}
-	//
-	// Show resulting histograms
-	//
-	TCanvas* Cnv = new TCanvas("Cnv", "Delphes primary vertex pulls", 50, 50, 900, 500);
-	Cnv->Divide(2, 2);
-	Cnv->cd(1); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hXpull->Fit("gaus"); hXpull->Draw();
-	Cnv->cd(2); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hYpull->Fit("gaus"); hYpull->Draw();
-	Cnv->cd(3); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hZpull->Fit("gaus"); hZpull->Draw();
-	Cnv->cd(4); hChi2->Draw();
-}
Index: examples/ExamplePVtxFitEC.C
===================================================================
--- examples/ExamplePVtxFitEC.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,203 +1,0 @@
-/*
-Example of using vertex fitter class to fit primary vertex
-assumed to be generated with Pythia8/ee_zh_smr-shf.cmn
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#include "modules/TrackCovariance.h"
-#include "external/TrackCovariance/TrkUtil.h"
-#include "external/TrackCovariance/VertexFit.h"
-
-#endif
-
-
-
-//------------------------------------------------------------------------------
-
-void ExamplePVtxFitEC(const char* inputFile, Int_t Nevent = 5)
-{
-	//
-	// Beam constraint 
-	// (consistent with generation with ee_zh_smr-shf.cmnd)
-	//
-	// Mean beam position
-	TVectorD xpvc(3);
-	xpvc(0) = 1.0;
-	xpvc(1) = -2.0;
-	xpvc(2) = 10.0;
-	// Interaction region covariance
-	TMatrixDSym covpvc(3); covpvc.Zero();
-	covpvc(0, 0) = 0.0097 * 0.0097;
-	covpvc(1, 1) = 2.55e-05 * 2.55e-05;
-	covpvc(2, 2) = 0.64 * 0.64;
-
-	//
-	// Create chain of root trees
-	TChain chain("Delphes");
-	chain.Add(inputFile);
-
-	// Create object of class ExRootTreeReader
-	ExRootTreeReader* treeReader = new ExRootTreeReader(&chain);
-	Long64_t numberOfEntries = treeReader->GetEntries();
-
-	// Get pointers to branches used in this analysis
-	TClonesArray* branchGenPart = treeReader->UseBranch("Particle");
-	TClonesArray* branchTrack = treeReader->UseBranch("Track");
-
-	// Book histograms
-	Int_t Nbin = 100;
-	// Vertex fit pulls
-	TH1D* hXpull = new TH1D("hXpull", "Pull X vertex component", Nbin, -10., 10.);
-	TH1D* hYpull = new TH1D("hYpull", "Pull Y vertex component", Nbin, -10., 10.);
-	TH1D* hZpull = new TH1D("hZpull", "Pull Z vertex component", Nbin, -10., 10.);
-	TH1D* hChi2 = new TH1D("hChi2", "Vertex #chi^{2}/N_{dof}", Nbin, 0., 10.);
-	// Generation check
-	TH1D* hXvpull = new TH1D("hXvpull", "Pull X generated vertex", Nbin, -10., 10.);
-	TH1D* hYvpull = new TH1D("hYvpull", "Pull Y generated vertex", Nbin, -10., 10.);
-	TH1D* hZvpull = new TH1D("hZvpull", "Pull Z generated vertex", Nbin, -10., 10.);
-
-	//
-	// Loop over all events
-	Int_t Nev = TMath::Min(Nevent, (Int_t)numberOfEntries);
-	for (Int_t entry = 0; entry < Nev; ++entry)
-	{
-		// Load selected branches with data from specified event
-		treeReader->ReadEntry(entry);
-		// 
-		Int_t Ntr = 0;	// # of tracks from primary vertex
-		Int_t NtrG = branchTrack->GetEntries();
-		TVectorD** pr = new TVectorD * [NtrG];
-		TMatrixDSym** cv = new TMatrixDSym * [NtrG];
-		//
-		// True vertex
-		Double_t xpv, ypv, zpv;
-		// If event contains at least 1 track
-		//
-		if (branchTrack->GetEntries() > 0)
-		{
-			// Loop on tracks
-			for (Int_t it = 0; it < branchTrack->GetEntries(); it++)
-			{
-				Track* trk = (Track*)branchTrack->At(it);
-				//
-				// Get associated generated particle
-				GenParticle* gp = (GenParticle*)trk->Particle.GetObject();
-				TVector3 xg(1.e-3*gp->X,1.e-3*gp->Y,1.e-3*gp->Z); 	// mm -> meters
-				TVector3 pg(gp->Px,gp->Py,gp->Pz);
-				Double_t Q = (Double_t)gp->Charge;
-				Double_t Bz = 2.0;
-				TVectorD genParM =TrkUtil:: XPtoPar(xg, pg, Q, Bz);
-				TVectorD genPar = TrkUtil::ParToMm(genParM); 		// -> back to mm
-
-				// 
-				// Check if original track is from primary vertex
-				//
-				// Position of origin in mm
-				Double_t x = gp->X;
-				Double_t y = gp->Y;
-				Double_t z = gp->Z;
-				Bool_t prim = kTRUE;	// Is primary?
-				Int_t mp = gp->M1;	// Mother
-				while(mp>0){
-					GenParticle* gm = (GenParticle*)branchGenPart->At(mp);
-					Double_t xm = gm->X;
-                                	Double_t ym = gm->Y;
-                                	Double_t zm = gm->Z;
-					if(x!=xm || y!=ym || z!=zm){
-						prim = kFALSE;	// Not primary
-						break;
-					}else mp = gm->M1;
-				}
-
-				//
-				// group tracks originating from the primary vertex
-				if (prim)
-				{
-					//
-					// Store true primary vertex for this event
-					xpv = x;
-					ypv = y;
-					zpv = z; 
-					//
-					// Reconstructed track parameters
-					Double_t obsD0 = trk->D0;
-					Double_t obsPhi = trk->Phi;
-					Double_t obsC = trk->C;
-					Double_t obsZ0 = trk->DZ;
-					Double_t obsCtg = trk->CtgTheta;
-					Double_t oPar[5] = { obsD0, obsPhi, obsC, obsZ0, obsCtg };
-					TVectorD obsPar(5, oPar);	// Fill observed parameters
-					//
-					pr[Ntr] = new TVectorD(obsPar);
-					cv[Ntr] = new TMatrixDSym(trk->CovarianceMatrix());
-					Ntr++;
-				}
-			}		// End loop on tracks
-		}
-		//
-		// Fit primary vertex with beam constraint
-		//
-		Int_t MinTrk = 3;	// Minumum # tracks for vertex fit
-		if (Ntr >= MinTrk) {
-			VertexFit* Vtx = new VertexFit(Ntr, pr, cv);
-			Vtx->AddVtxConstraint(xpvc, covpvc);
-			TVectorD xvtx = Vtx->GetVtx();
-			TMatrixDSym covX = Vtx->GetVtxCov();
-			Double_t Chi2 = Vtx->GetVtxChi2();
-			Double_t Ndof = 2 * (Double_t)Ntr;
-			delete Vtx;
-			//
-			Double_t PullX = (xvtx(0)-xpv) / TMath::Sqrt(covX(0, 0));
-			Double_t PullY = (xvtx(1)-ypv) / TMath::Sqrt(covX(1, 1));
-			Double_t PullZ = (xvtx(2)-zpv) / TMath::Sqrt(covX(2, 2));
-			//
-			Double_t PullXv = (xpvc(0)-xpv) / TMath::Sqrt(covpvc(0, 0));
-			Double_t PullYv = (xpvc(1)-ypv) / TMath::Sqrt(covpvc(1, 1));
-			Double_t PullZv = (xpvc(2)-zpv) / TMath::Sqrt(covpvc(2, 2));
-			//
-			//
-			// Fill histograms
-			hXpull->Fill(PullX);
-			hYpull->Fill(PullY);
-			hZpull->Fill(PullZ);
-			hChi2->Fill(Chi2 / Ndof);
-			//
-			hXvpull->Fill(PullXv);
-			hYvpull->Fill(PullYv);
-			hZvpull->Fill(PullZv);
-		}
-
-		//
-		// Cleanup
-		for (Int_t i = 0; i < Ntr; i++) delete pr[i];
-		for (Int_t i = 0; i < Ntr; i++) delete cv[i];
-		delete[] pr;
-		delete[] cv;
-	}
-
-	//
-	// Show resulting histograms
-	//
-	TCanvas* Cnv = new TCanvas("Cnv", "Delphes primary vertex pulls", 50, 50, 900, 500);
-	Cnv->Divide(2, 2);
-	Cnv->cd(1); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hXpull->Fit("gaus"); hXpull->Draw();
-	Cnv->cd(2); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hYpull->Fit("gaus"); hYpull->Draw();
-	Cnv->cd(3); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hZpull->Fit("gaus"); hZpull->Draw();
-	Cnv->cd(4); hChi2->Draw();
-	//
-	TCanvas* Cnv1 = new TCanvas("Cnv1", "Generated primary vertex pulls", 100, 100, 900, 500);
-	Cnv1->Divide(3, 1);
-	Cnv1->cd(1); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hXvpull->Fit("gaus"); hXvpull->Draw();
-	Cnv1->cd(2); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hYvpull->Fit("gaus"); hYvpull->Draw();
-	Cnv1->cd(3); gPad->SetLogy(1); gStyle->SetOptFit(1111);
-	hZvpull->Fit("gaus"); hZvpull->Draw();
-}
Index: examples/ExternalFastJet/ExternalFastJetBasic.cpp
===================================================================
--- examples/ExternalFastJet/ExternalFastJetBasic.cpp	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,303 +1,0 @@
-/*
- *  Delphes: a framework for fast simulation of a generic collider experiment
- *  Copyright (C) 2012-2014  Universite catholique de Louvain (UCL), Belgium
- *
- *  This program is free software: you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation, either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-/*
-########################################################################
-
-
-This simple example shows how to use Delphes with an external FastJet installation.
-Events are specified via the multidimensional array "EVENTS" (for an example reading 
-an HepMC file see ExternalFastJetHepMC.cpp). 
-
-In order to run this example you first need to set the paths to your Delphes, FastJet
-and ROOT installations (DELPHES_DIR, FASTJET_DIR and ROOT_DIR):
-
-DELPHES_DIR=<path to Delphes installation>
-FASTJET_DIR=<path to FastJet installation>
-ROOT_DIR=<path to ROOT installation>
-
-Then run the following commands to build the executable:
-
-DELPHES_LIB="-Wl,-rpath,$DELPHES_DIR -L$DELPHES_DIR -lDelphesNoFastJet"
-
-FASTJET_INC=`$FASTJET_DIR/bin/fastjet-config --cxxflags`
-FASTJET_LIB=`$FASTJET_DIR/bin/fastjet-config --libs`
-
-ROOT_INC=`$ROOT_DIR/bin/root-config --incdir`
-ROOT_LIB=`$ROOT_DIR/bin/root-config --libs`
-
-CXXFLAGS="$FASTJET_INC -I$ROOT_INC -I$DELPHES_DIR -I$DELPHES_DIR/external"
-LDFLAGS="$FASTJET_LIB $ROOT_LIB -lEG $DELPHES_LIB"
-
-g++ $CXXFLAGS examples/ExternalFastJet/ExternalFastJetBasic.cpp $LDFLAGS -o ExternalFastJetBasic
-
-Then run:
-
-./ExternalFastJetBasic cards/delphes_card_CMS_NoFastJet.tcl
-
-
-########################################################################
-*/
-
-#include <stdexcept>
-#include <iostream>
-#include <sstream>
-
-#include <stdio.h>
-
-#include "TROOT.h"
-#include "TApplication.h"
-
-#include "TFile.h"
-#include "TObjArray.h"
-#include "TDatabasePDG.h"
-#include "TParticlePDG.h"
-#include "TLorentzVector.h"
-
-#include "modules/Delphes.h"
-#include "classes/DelphesClasses.h"
-#include "classes/DelphesFactory.h"
-
-#include "ExRootAnalysis/ExRootTreeWriter.h"
-#include "ExRootAnalysis/ExRootTreeBranch.h"
-#include "ExRootAnalysis/ExRootProgressBar.h"
-
-#include "fastjet/PseudoJet.hh"
-#include "fastjet/JetDefinition.hh"
-#include "fastjet/ClusterSequence.hh"
-
-using namespace std;
-using namespace fastjet;
-
-//---------------------------------------------------------------------------
-
-const int NEVENTS = 2;
-const int NPARTICLES = 4;
-
-float EVENTS[NEVENTS][NPARTICLES][11] =
-{
-  {
-    {-211, 1, -2.91e-01,  1.99e-01, -1.30e+00, 1.35e+00, 1.3957e-01, 0.0, 0.0, 0.0, 0.0},
-    { 211, 1, -2.62e-02,  1.90e-01,  1.42e+00, 1.44e+00, 1.3957e-01, 0.0, 0.0, 0.0, 0.0},
-    {-211, 1, -3.08e-02, -2.30e-01,  5.13e+00, 5.14e+00, 1.3957e-01, 0.0, 0.0, 0.0, 0.0},
-    { 211, 1,  1.21e-01, -3.52e-01,  2.12e+01, 2.12e+01, 1.3957e-01, 0.0, 0.0, 0.0, 0.0}
-  },
-  {
-    {22, 1, -7.80e-02, -9.70e-02, 2.03e+01, 2.03e+01, 0.0, 0.0, 0.0, 0.0, 0.0},
-    {22, 1, -1.16e-02, -2.08e-02, 4.89e-01, 4.90e-01, 0.0, 0.0, 0.0, 0.0, 0.0},
-    {22, 1,  5.64e-02, -1.34e-02, 5.81e+00, 5.82e+00, 0.0, 0.0, 0.0, 0.0, 0.0},
-    {22, 1,  2.35e-01, -1.04e-01, 9.12e+00, 9.12e+00, 0.0, 0.0, 0.0, 0.0, 0.0}
-  }
-};
-
-//---------------------------------------------------------------------------
-
-
-// this function converts input event array into Delphes candidates (defined below)
-
-void ConvertInput(Int_t event, DelphesFactory *factory, TObjArray *allParticleOutputArray, TObjArray *stableParticleOutputArray, TObjArray *partonOutputArray);
-
-
-//----------------------------------------------------------------------------------------------------------------------------
-
-int main(int argc, char *argv[])
-{
-  // Declaration of variables
-  ExRootConfReader *confReader = 0;
-  Delphes *modularDelphes = 0;
-  DelphesFactory *factory = 0;
-  TObjArray *allParticleOutputArray = 0;
-  TObjArray *stableParticleOutputArray = 0;
-  TObjArray *partonOutputArray = 0;
-
-  Int_t event;
-
-  TObjArray *inputArray = 0;
-  TIterator *inputIterator = 0;
-  Candidate *candidate = 0;
-  TLorentzVector momentum;
-
-  JetDefinition *definition = 0;
-  vector<PseudoJet> inputList, outputList;
-  PseudoJet jet;
-
-  gROOT->SetBatch();
-
-  int appargc = 1;
-  char appName[] = "ExternalFastJetBasic";
-  char *appargv[] = {appName};
-  TApplication app(appName, &appargc, appargv);
-
-  if(argc != 2)
-  {
-    cout << " Usage: " << appName << " config_file" << endl;
-    cout << " config_file - configuration file in Tcl format." << endl;
-    return 1;
-  }
-
-  try
-  {
-    // Initialization
-    confReader = new ExRootConfReader;
-    confReader->ReadFile(argv[1]);
-
-    modularDelphes = new Delphes("Delphes");
-    modularDelphes->SetConfReader(confReader);
-
-    factory = modularDelphes->GetFactory();
-
-    allParticleOutputArray = modularDelphes->ExportArray("allParticles");
-    stableParticleOutputArray = modularDelphes->ExportArray("stableParticles");
-    partonOutputArray = modularDelphes->ExportArray("partons");
-
-    modularDelphes->InitTask();
-
-    
-    // fastjet definition
-    ClusterSequence::print_banner();
-    definition = new JetDefinition(antikt_algorithm, 0.5);
-    
-    // Define your input candidates to fastjet (by default particle-flow objects).
-    // If you want pure calorimeter towers change "EFlowMerger/eflow" into "Calorimeter/towers":
-     
-    inputArray = modularDelphes->ImportArray("EFlowMerger/eflow");
-      
-    inputIterator = inputArray->MakeIterator();
-
-    // Event loop
-    for(event = 0; event < NEVENTS; ++event)
-    {
-      modularDelphes->Clear();
-      
-      // convert EVENT input array into Delphes internal format
-      ConvertInput(event, factory, allParticleOutputArray, stableParticleOutputArray, partonOutputArray);
-      
-      // run Delphes reconstruction
-      modularDelphes->ProcessTask();
-
-      inputList.clear();
-      inputIterator->Reset();
-      
-      
-      // pass delphes candidates to fastjet clustering  
-      while((candidate = static_cast<Candidate*>(inputIterator->Next())))
-      {
-        momentum = candidate->Momentum;
-        jet = PseudoJet(momentum.Px(), momentum.Py(), momentum.Pz(), momentum.E());
-        inputList.push_back(jet);
-      }
-     
-      // run clustering 
-      ClusterSequence sequence(inputList, *definition);
-      outputList.clear();
-      outputList = sorted_by_pt(sequence.inclusive_jets(0.0));
-
-      // tell the user what was done
-      //  - the description of the algorithm used
-      //  - show the inclusive jets as
-      //      {index, rapidity, phi, pt}
-      //----------------------------------------------------------
-      cout << "Ran " << definition->description() << endl;
-
-      // label the columns
-      printf("%5s %15s %15s %15s\n","jet #", "rapidity", "phi", "pt");
-
-      // print out the details for each jet
-      for (unsigned int i = 0; i < outputList.size(); i++) {
-        printf("%5u %15.8f %15.8f %15.8f\n",
-               i, outputList[i].rap(), outputList[i].phi(),
-               outputList[i].perp());
-      }
-    }
-
-    // Finalization
-    modularDelphes->FinishTask();
-    delete modularDelphes;
-    delete confReader;
-    return 0;
-  }
-  catch(runtime_error &e)
-  {
-    cerr << "** ERROR: " << e.what() << endl;
-    return 1;
-  }
-}
-
-
-// ------------------------------------------------------------------------------------------------------------------------------------
-
-void ConvertInput(Int_t event, DelphesFactory *factory, TObjArray *allParticleOutputArray, TObjArray *stableParticleOutputArray, TObjArray *partonOutputArray)
-{
-  Int_t particle;
-
-  Candidate *candidate;
-  TDatabasePDG *pdg;
-  TParticlePDG *pdgParticle;
-  Int_t pdgCode;
-
-  Int_t pid, status;
-  Double_t px, py, pz, e, mass;
-  Double_t x, y, z, t;
-
-  pdg = TDatabasePDG::Instance();
-
-  for(particle = 0; particle < NPARTICLES; ++particle)
-  {
-    pid = EVENTS[event][particle][0];
-    status = EVENTS[event][particle][1];
-    px = EVENTS[event][particle][2];
-    py = EVENTS[event][particle][3];
-    pz = EVENTS[event][particle][4];
-    e = EVENTS[event][particle][5];
-    mass = EVENTS[event][particle][6];
-    x = EVENTS[event][particle][7];
-    y = EVENTS[event][particle][8];
-    z = EVENTS[event][particle][9];
-    t = EVENTS[event][particle][10];
-
-    candidate = factory->NewCandidate();
-
-    candidate->PID = pid;
-    pdgCode = TMath::Abs(candidate->PID);
-
-    candidate->Status = status;
-
-    pdgParticle = pdg->GetParticle(pid);
-    candidate->Charge = pdgParticle ? Int_t(pdgParticle->Charge()/3.0) : -999;
-    candidate->Mass = mass;
-
-    candidate->Momentum.SetPxPyPzE(px, py, pz, e);
-
-    candidate->Position.SetXYZT(x, y, z, t);
-
-    allParticleOutputArray->Add(candidate);
-
-    if(!pdgParticle) return;
-
-    if(status == 1)
-    {
-      stableParticleOutputArray->Add(candidate);
-    }
-    else if(pdgCode <= 5 || pdgCode == 21 || pdgCode == 15)
-    {
-      partonOutputArray->Add(candidate);
-    }
-  }
-}
-
Index: examples/ExternalFastJet/ExternalFastJetHepMC.cpp
===================================================================
--- examples/ExternalFastJet/ExternalFastJetHepMC.cpp	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,321 +1,0 @@
-/*
- *  Delphes: a framework for fast simulation of a generic collider experiment
- *  Copyright (C) 2012-2014  Universite catholique de Louvain (UCL), Belgium
- *
- *  This program is free software: you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation, either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-/*
-########################################################################
-
-
-This simple example shows how to use Delphes with an external FastJet installation.
-Events in HepMC format are read via the DelphesHepMC reader. 
-
-In order to run this example you first need to set the paths to your Delphes, FastJet
-and ROOT installations (DELPHES_DIR, FASTJET_DIR and ROOT_DIR):
-
-DELPHES_DIR=<path to Delphes installation>
-FASTJET_DIR=<path to FastJet installation>
-ROOT_DIR=<path to ROOT installation>
-
-Then run the following commands to build the executable:
-
-DELPHES_LIB="-Wl,-rpath,$DELPHES_DIR -L$DELPHES_DIR -lDelphesNoFastJet"
-
-FASTJET_INC=`$FASTJET_DIR/bin/fastjet-config --cxxflags`
-FASTJET_LIB=`$FASTJET_DIR/bin/fastjet-config --libs`
-
-ROOT_INC=`$ROOT_DIR/bin/root-config --incdir`
-ROOT_LIB=`$ROOT_DIR/bin/root-config --libs`
-
-CXXFLAGS="$FASTJET_INC -I$ROOT_INC -I$DELPHES_DIR -I$DELPHES_DIR/external"
-LDFLAGS="$FASTJET_LIB $ROOT_LIB -lEG $DELPHES_LIB"
-
-g++ $CXXFLAGS examples/ExternalFastJet/ExternalFastJetHepMC.cpp $LDFLAGS -o ExternalFastJetHepMC
-
-Then run (you need an event file in HepMC format):
-
-./ExternalFastJetHepMC cards/delphes_card_CMS_NoFastJet.tcl file.hepmc
-
-
-########################################################################
-*/
-
-#include <stdexcept>
-#include <iostream>
-#include <sstream>
-
-#include <vector>
-
-#include <signal.h>
-
-#include "TROOT.h"
-#include "TApplication.h"
-
-#include "TFile.h"
-#include "TObjArray.h"
-#include "TDatabasePDG.h"
-#include "TParticlePDG.h"
-#include "TLorentzVector.h"
-
-#include "modules/Delphes.h"
-#include "classes/DelphesClasses.h"
-#include "classes/DelphesFactory.h"
-#include "classes/DelphesHepMCReader.h"
-
-#include "ExRootAnalysis/ExRootTreeWriter.h"
-#include "ExRootAnalysis/ExRootTreeBranch.h"
-#include "ExRootAnalysis/ExRootProgressBar.h"
-
-#include "fastjet/PseudoJet.hh"
-#include "fastjet/JetDefinition.hh"
-#include "fastjet/ClusterSequence.hh"
-
-// #include "fastjet/contrib/Nsubjettiness.hh"
-// #include "fastjet/contrib/Njettiness.hh"
-// #include "fastjet/contrib/NjettinessPlugin.hh"
-// #include "fastjet/contrib/WinnerTakeAllRecombiner.hh"
-
-using namespace std;
-using namespace fastjet;
-// using namespace fastjet::contrib;
-
-//---------------------------------------------------------------------------
-
-static bool interrupted = false;
-
-void SignalHandler(int sig)
-{
-  interrupted = true;
-}
-
-//---------------------------------------------------------------------------
-
-int main(int argc, char *argv[])
-{
-  char appName[] = "ExternalFastJetHepMC";
-  stringstream message;
-  FILE *inputFile = 0;
-  ExRootConfReader *confReader = 0;
-  Delphes *modularDelphes = 0;
-  DelphesFactory *factory = 0;
-  TObjArray *stableParticleOutputArray = 0, *allParticleOutputArray = 0, *partonOutputArray = 0;
-  DelphesHepMCReader *reader = 0;
-  Int_t i, maxEvents, skipEvents;
-  Long64_t length, eventCounter;
-  
-  TObjArray *inputArray = 0;
-  TIterator *inputIterator = 0;
-  Candidate *candidate = 0;
-  TLorentzVector momentum;
-
-  JetDefinition *definition = 0;
-//  JetDefinition::Recombiner *recomb = 0;
-  vector<PseudoJet> inputList, outputList;
-  PseudoJet jet;
-
-  if(argc < 2)
-  {
-    cout << " Usage: " << appName << " config_file" << " [input_file(s)]" << endl;
-    cout << " config_file - configuration file in Tcl format," << endl;
-    cout << " input_file(s) - input file(s) in HepMC format," << endl;
-    cout << " with no input_file, or when input_file is -, read standard input." << endl;
-    return 1;
-  }
-
-  signal(SIGINT, SignalHandler);
-
-  gROOT->SetBatch();
-
-  int appargc = 1;
-  char *appargv[] = {appName};
-  TApplication app(appName, &appargc, appargv);
-
-  try
-  {
-    confReader = new ExRootConfReader;
-    confReader->ReadFile(argv[1]);
-
-    maxEvents = confReader->GetInt("::MaxEvents", 0);
-    skipEvents = confReader->GetInt("::SkipEvents", 0);
-
-    if(maxEvents < 0)
-    {
-      throw runtime_error("MaxEvents must be zero or positive");
-    }
-
-    if(skipEvents < 0)
-    {
-      throw runtime_error("SkipEvents must be zero or positive");
-    }
-
-    modularDelphes = new Delphes("Delphes");
-    modularDelphes->SetConfReader(confReader);
-
-    factory = modularDelphes->GetFactory();
-    allParticleOutputArray = modularDelphes->ExportArray("allParticles");
-    stableParticleOutputArray = modularDelphes->ExportArray("stableParticles");
-    partonOutputArray = modularDelphes->ExportArray("partons");
-
-    reader = new DelphesHepMCReader;
-
-    modularDelphes->InitTask();
-
-    ClusterSequence::print_banner();
-
-//    recomb = new WinnerTakeAllRecombiner();
-//    definition = new JetDefinition(antikt_algorithm, 0.5, recomb, Best);
-  
-    definition = new JetDefinition(antikt_algorithm, 0.5);
-    
-    
-    // Define your input candidates to fastjet (by default particle-flow objects).
-    // If you want pure calorimeter towers change "EFlowMerger/eflow" into "Calorimeter/towers":
-     
-    inputArray = modularDelphes->ImportArray("EFlowMerger/eflow");
-
-    inputIterator = inputArray->MakeIterator();
-
-
-    // start reading hepmc file
-
-    i = 2;
-    do
-    {
-      if(interrupted) break;
-
-      if(i == argc || strncmp(argv[i], "-", 2) == 0)
-      {
-        cout << "** Reading standard input" << endl;
-        inputFile = stdin;
-        length = -1;
-      }
-      else
-      {
-        cout << "** Reading " << argv[i] << endl;
-        inputFile = fopen(argv[i], "r");
-
-        if(inputFile == NULL)
-        {
-          message << "can't open " << argv[i];
-          throw runtime_error(message.str());
-        }
-
-        fseek(inputFile, 0L, SEEK_END);
-        length = ftello(inputFile);
-        fseek(inputFile, 0L, SEEK_SET);
-
-        if(length <= 0)
-        {
-          fclose(inputFile);
-          ++i;
-          continue;
-        }
-      }
-
-      
-      reader->SetInputFile(inputFile);
-
-      // Loop over all objects
-      eventCounter = 0;
-      modularDelphes->Clear();
-      reader->Clear();
-      while((maxEvents <= 0 || eventCounter - skipEvents < maxEvents) &&
-        reader->ReadBlock(factory, allParticleOutputArray,
-        stableParticleOutputArray, partonOutputArray) && !interrupted)
-      {
-	
-	 // loop over events
-	if(reader->EventReady())
-        {
-          ++eventCounter;
-
-          if(eventCounter > skipEvents)
-          {
-            
-	    // run delphes reconstruction
-	    modularDelphes->ProcessTask();
-            
-            inputList.clear();
-            inputIterator->Reset();
-	
-	
-	    // pass delphes candidates to fastjet clustering  
-             while((candidate = static_cast<Candidate*>(inputIterator->Next())))
-            {
-              momentum = candidate->Momentum;
-              jet = PseudoJet(momentum.Px(), momentum.Py(), momentum.Pz(), momentum.E());
-              inputList.push_back(jet);
-            }
-           
-	    // run fastjet clustering 
-	    ClusterSequence sequence(inputList, *definition);
-            outputList.clear();
-            outputList = sorted_by_pt(sequence.inclusive_jets(0.0));
-
-            
-	    // Prints for the first event:
-            //  - the description of the algorithm used
-            //  - show the inclusive jets as
-            //      {index, rapidity, phi, pt}
-            //----------------------------------------------------------
-           
-	    if(eventCounter == skipEvents + 1)
-            {
-              cout << "Ran " << definition->description() << endl;
-
-              // label the columns
-              printf("%5s %15s %15s %15s\n","jet #", "rapidity", "phi", "pt");
-
-              // print out the details for each jet
-              for (unsigned int i = 0; i < outputList.size(); i++) {
-                printf("%5u %15.8f %15.8f %15.8f\n",
-                       i, outputList[i].rap(), outputList[i].phi(),
-                       outputList[i].perp());
-              }
-            }
-          }
-
-          modularDelphes->Clear();
-          reader->Clear();
-        }
-      } // end of event loop
-
-      if(inputFile != stdin) fclose(inputFile);
-
-      ++i;
-    }
-    while(i < argc);
-
-    modularDelphes->FinishTask();
-
-    cout << "** Exiting..." << endl;
-
-    delete definition;
-//    delete recomb;
-
-    delete reader;
-    delete modularDelphes;
-    delete confReader;
-
-    return 0;
-  }
-  catch(runtime_error &e)
-  {
-    cerr << "** ERROR: " << e.what() << endl;
-    return 1;
-  }
-}
Index: examples/ExternalFastJet/Makefile
===================================================================
--- examples/ExternalFastJet/Makefile	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,31 +1,0 @@
-# 'make' builds everything
-# 'make clean' deletes everything except source files and Makefile
-#
-# You need to set ROOT_DIR, DELPHES_DIR and FASTJET_DIR for your project.
-
-# FastJet directory
-FASTJET_DIR = /opt/fastjet
-
-# ROOT directory
-ROOT_DIR = /opt/root
-
-# Delphes directory
-DELPHES_DIR = ../..
-
-#
-
-CXXFLAGS += $(shell $(FASTJET_DIR)/bin/fastjet-config --cxxflags)
-CXXFLAGS += $(shell $(ROOT_DIR)/bin/root-config --cflags)
-CXXFLAGS += -I$(DELPHES_DIR) -I$(DELPHES_DIR)/external
-
-LDFLAGS += $(shell $(FASTJET_DIR)/bin/fastjet-config --libs)
-LDFLAGS += $(shell $(ROOT_DIR)/bin/root-config --libs) -lEG
-LDFLAGS += -Wl,-rpath,$(DELPHES_DIR) -L$(DELPHES_DIR) -lDelphesNoFastJet
-
-all: ExternalFastJetBasic ExternalFastJetHepMC
-
-clean:
-	rm -f ExternalFastJetBasic ExternalFastJetHepMC
-
-%: %.cpp
-	$(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -o $@
Index: examples/ExternalFastJet/README
===================================================================
--- examples/ExternalFastJet/README	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,12 +1,0 @@
-This example shows how to run Delphes as a library with external FastJet
-
-First, you need to modify Makefile by setting ROOT_DIR, DELPHES_DIR, FASTJET_DIR
-
-Then you can build the examples with the following command:
-
-  make
-
-For more details, please visit:
-
-  https://cp3.irmp.ucl.ac.be/projects/delphes/wiki/WorkBook/ExternalFastJet
-
Index: examples/LoadPVtxFit.C
===================================================================
--- examples/LoadPVtxFit.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,9 +1,0 @@
-#include <TROOT.h>
-
-void LoadPVtxFit()
-{
-gROOT->Reset();
-gROOT->ProcessLine(".L libDelphes.so");
-gROOT->ProcessLine(".L external/TrackCovariance/VertexFit.cc+");
-gROOT->ProcessLine(".L examples/ExamplePVtxFit.C+");
-}
Index: examples/MemoryUsage.C
===================================================================
--- examples/MemoryUsage.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,120 +1,0 @@
-/*
-root -l examples/MemoryUsage.C'("ps_output.txt")'
-*/
-
-#include "Riostream.h"
-
-static const Font_t kExRootFont = 42;
-static const Float_t kExRootFontSize = 0.04;
-static const Color_t kExRootBackgroundColor = 10;
-
-//------------------------------------------------------------------------------
-
-TGraph grvsz, grrss;
-TLegend legend(0.41, 0.59, 0.77, 0.68);
-
-TCanvas *canvas;
-
-//------------------------------------------------------------------------------
-
-void MemoryUsage(const char *inputFile)
-{
-  Int_t i, vsz, rss;
-  ifstream in;
-
-  TDirectory *currentDirectory = gDirectory;
-
-  // Graphics style parameters to avoid grey background on figures
-  gStyle->SetCanvasColor(kExRootBackgroundColor);
-  gStyle->SetStatColor(kExRootBackgroundColor);
-  //  gStyle->SetTitleColor(kExRootBackgroundColor);
-  gStyle->SetPadColor(kExRootBackgroundColor);
-
-  gStyle->SetPadTopMargin(0.10);
-  gStyle->SetPadRightMargin(0.10);
-  gStyle->SetPadBottomMargin(0.15);
-  gStyle->SetPadLeftMargin(0.15);
-
-  gStyle->SetStatFont(kExRootFont);
-  gStyle->SetStatFontSize(kExRootFontSize);
-
-  gStyle->SetTitleFont(kExRootFont, "");
-  gStyle->SetTitleFont(kExRootFont, "X");
-  gStyle->SetTitleFont(kExRootFont, "Y");
-  gStyle->SetTitleFont(kExRootFont, "Z");
-  gStyle->SetTitleSize(kExRootFontSize, "");
-  gStyle->SetTitleSize(kExRootFontSize, "X");
-  gStyle->SetTitleSize(kExRootFontSize, "Y");
-  gStyle->SetTitleSize(kExRootFontSize, "Z");
-
-  gStyle->SetLabelFont(kExRootFont, "X");
-  gStyle->SetLabelFont(kExRootFont, "Y");
-  gStyle->SetLabelFont(kExRootFont, "Z");
-  gStyle->SetLabelSize(kExRootFontSize, "X");
-  gStyle->SetLabelSize(kExRootFontSize, "Y");
-  gStyle->SetLabelSize(kExRootFontSize, "Z");
-
-  gStyle->SetPadTickX(1);
-  gStyle->SetPadTickY(1);
-
-  gStyle->SetTextFont(kExRootFont);
-  gStyle->SetTextSize(kExRootFontSize);
-
-  gStyle->SetOptStat(111110);
-  // gStyle->SetOptFit(101);
-
-  canvas = static_cast<TCanvas*>(gROOT->FindObject("c1"));
-  if(canvas)
-  {
-    canvas->Clear();
-    canvas->UseCurrentStyle();
-    canvas->SetWindowSize(800, 650);
-  }
-  else
-  {
-    canvas = new TCanvas("c1", "c1", 800, 650);
-  }
-  canvas->SetGrid();
-  canvas->SetHighLightColor(kExRootBackgroundColor);
-
-  currentDirectory->cd();
-
-  grvsz.SetPoint(0, 0.0, 0.0);
-  grrss.SetPoint(0, 0.0, 0.0);
-
-  in.open(inputFile);
-  i = 1;
-  while(1)
-  {
-    in >> vsz  >> rss;
-    if(!in.good()) break; 
-    grvsz.SetPoint(i, (i-1)*0.1, vsz/1024.0);
-    grrss.SetPoint(i, (i-1)*0.1, rss/1024.0);
-    ++i;
-  }
-  grvsz.SetPoint(i, (i-1)*0.1, 0.0);
-  grrss.SetPoint(i, (i-1)*0.1, 0.0);
-
-  grvsz.GetXaxis()->SetLimits(0, 30);
-  grvsz.GetXaxis()->SetTitleOffset(1.5);
-  grvsz.GetYaxis()->SetTitleOffset(1.75);
-  grvsz.GetXaxis()->SetTitle("time, s");
-  grvsz.GetYaxis()->SetTitle("memory usage, MB");
-  grvsz.SetLineColor(15);
-  grrss.SetLineColor(kBlack);
-  grvsz.SetLineStyle(kSolid);
-  grrss.SetLineStyle(kSolid);
-  grvsz.SetLineWidth(3);
-  grrss.SetLineWidth(3);
-  grvsz.Draw("AL");
-  grrss.Draw("L");
-
-  legend.SetTextSize(kExRootFontSize);
-  legend.SetTextFont(kExRootFont);
-  legend.SetFillColor(kExRootBackgroundColor);
-  legend.SetBorderSize(0);
-  legend.AddEntry(&grvsz, "virtual memory", "l");
-  legend.AddEntry(&grrss, "physical memory", "l");
-  legend.Draw();
-}
-
Index: examples/ProcessingTime.C
===================================================================
--- examples/ProcessingTime.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ examples/ProcessingTime.C	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -1,17 +1,9 @@
 /*
-root -l examples/ProcessingTime.C'("delphes_output.root")'
+root -l examples/ProcessingTime.C\(\"delphes_output.root\"\)
 */
-
-static const Font_t kExRootFont = 42;
-static const Float_t kExRootFontSize = 0.04;
-static const Color_t kExRootBackgroundColor = 10;
 
 //------------------------------------------------------------------------------
 
-TGraph gr;
-TGraphErrors grerr;
-TPaveText comment(0.20, 0.75, 0.50, 0.84, "brNDC");
-
-TCanvas *canvas;
+TGraphErrors gr;
 
 //------------------------------------------------------------------------------
@@ -25,91 +17,16 @@
   Int_t i;
 
-  TDirectory *currentDirectory = gDirectory;
-
-  // Graphics style parameters to avoid grey background on figures
-  gStyle->SetCanvasColor(kExRootBackgroundColor);
-  gStyle->SetStatColor(kExRootBackgroundColor);
-  //  gStyle->SetTitleColor(kExRootBackgroundColor);
-  gStyle->SetPadColor(kExRootBackgroundColor);
-
-  gStyle->SetPadTopMargin(0.10);
-  gStyle->SetPadRightMargin(0.10);
-  gStyle->SetPadBottomMargin(0.15);
-  gStyle->SetPadLeftMargin(0.15);
-
-  gStyle->SetStatFont(kExRootFont);
-  gStyle->SetStatFontSize(kExRootFontSize);
-
-  gStyle->SetTitleFont(kExRootFont, "");
-  gStyle->SetTitleFont(kExRootFont, "X");
-  gStyle->SetTitleFont(kExRootFont, "Y");
-  gStyle->SetTitleFont(kExRootFont, "Z");
-  gStyle->SetTitleSize(kExRootFontSize, "");
-  gStyle->SetTitleSize(kExRootFontSize, "X");
-  gStyle->SetTitleSize(kExRootFontSize, "Y");
-  gStyle->SetTitleSize(kExRootFontSize, "Z");
-
-  gStyle->SetLabelFont(kExRootFont, "X");
-  gStyle->SetLabelFont(kExRootFont, "Y");
-  gStyle->SetLabelFont(kExRootFont, "Z");
-  gStyle->SetLabelSize(kExRootFontSize, "X");
-  gStyle->SetLabelSize(kExRootFontSize, "Y");
-  gStyle->SetLabelSize(kExRootFontSize, "Z");
-
-  gStyle->SetPadTickX(1);
-  gStyle->SetPadTickY(1);
-
-  gStyle->SetTextFont(kExRootFont);
-  gStyle->SetTextSize(kExRootFontSize);
-
-  gStyle->SetOptStat(111110);
-  // gStyle->SetOptFit(101);
-
-  canvas = static_cast<TCanvas*>(gROOT->FindObject("c1"));
-  if(canvas)
+  for(i = 1; i < 8; ++i)
   {
-    canvas->Clear();
-    canvas->UseCurrentStyle();
-    canvas->SetWindowSize(800, 650);
-  }
-  else
-  {
-    canvas = new TCanvas("c1", "c1", 800, 650);
-  }
-  canvas->SetGrid();
-  canvas->SetHighLightColor(kExRootBackgroundColor);
-
-  currentDirectory->cd();
-
-  for(i = 0; i < 9; ++i)
-  {
-    chain->Draw("Event.ProcTime >> time", TString::Format("Jet_size == %d", i+2));
-    gr.SetPoint(i, i+2, hist.GetMean()*1000);
-    grerr.SetPoint(i, i+2, hist.GetMean()*1000);
-    grerr.SetPointError(i, 0, hist.GetRMS()*1000);
+    chain->Draw("Event.ProcTime >> time", TString::Format("Jet_size == %d", i+1));
+    gr.SetPoint(i, i+1, hist.GetMean()*1000);
+    gr.SetPointError(i, 0, hist.GetRMS()*1000);
   }
 
-  grerr.GetXaxis()->SetLimits(1.0, 11.0);
-  grerr.GetXaxis()->SetTitleOffset(1.5);
-  grerr.GetYaxis()->SetTitleOffset(1.75);
-  grerr.GetXaxis()->SetTitle("jet multiplicity");
-  grerr.GetYaxis()->SetTitle("processing time per event, ms");
-  gr.SetMarkerStyle(kFullCircle);
-  gr.SetMarkerColor(kBlack);
-  gr.SetMarkerSize(1);
-  gr.SetLineColor(kBlack);
-  gr.SetLineWidth(2);
-  grerr.SetFillStyle(1001);
-  grerr.SetFillColor(17);
-  grerr.Draw("A3");
-  gr.Draw("P");
-
-  comment.SetTextSize(kExRootFontSize);
-  comment.SetTextFont(kExRootFont);
-  comment.SetTextAlign(22);
-  comment.SetFillColor(kExRootBackgroundColor);
-  comment.SetBorderSize(0);
-  comment.AddText("ttbar + jets events");
-  comment.Draw();
+  gr.GetXaxis()->SetLimits(1.0, 9.0);
+  gr.GetXaxis()->SetTitle("number of jets");
+  gr.GetYaxis()->SetTitle("processing time per event, ms");
+  gr.SetMarkerStyle(kFullDotMedium);
+  gr.Draw("AP");
 }
 
Index: examples/Pythia8/configLHE.cmnd
===================================================================
--- examples/Pythia8/configLHE.cmnd	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,18 +1,0 @@
-! 1) Settings used in the main program.
-
-Main:numberOfEvents = 10         ! number of events to generate
-Main:timesAllowErrors = 3          ! how many aborts before run stops
-
-! 2) Settings related to output in init(), next() and stat().
-
-Init:showChangedSettings = on      ! list changed settings
-Init:showChangedParticleData = off ! list changed particle data
-Next:numberCount = 100             ! print message every n events
-Next:numberShowInfo = 1            ! print event information n times
-Next:numberShowProcess = 1         ! print process record n times
-Next:numberShowEvent = 0           ! print event record n times
-
-! 3) Set the input LHE file
-
-Beams:frameType = 4
-Beams:LHEF = examples/Pythia8/events.lhe    
Index: examples/Pythia8/configNoLHE.cmnd
===================================================================
--- examples/Pythia8/configNoLHE.cmnd	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,34 +1,0 @@
-! 1) Settings used in the main program.
-Main:numberOfEvents = 1000         ! number of events to generate
-Main:timesAllowErrors = 3          ! how many aborts before run stops
-
-! 2) Settings related to output in init(), next() and stat().
-Init:showChangedSettings = on      ! list changed settings
-Init:showChangedParticleData = off ! list changed particle data
-Next:numberCount = 100             ! print message every n events
-Next:numberShowInfo = 1            ! print event information n times
-Next:numberShowProcess = 1         ! print process record n times
-Next:numberShowEvent = 0           ! print event record n times
-
-! 3) Beam parameter settings. Values below agree with default ones.
-Beams:idA = 2212                   ! first beam, p = 2212, pbar = -2212
-Beams:idB = 2212                   ! second beam, p = 2212, pbar = -2212
-Beams:eCM = 14000.                 ! CM energy of collision
-
-! 4) Settings for the hard-process generation.
-
-Top:gg2ttbar = on                  ! g g -> t tbar
-Top:qqbar2ttbar = on               ! q qbar -> t tbar
-
-! 5) Switch on/off the key event generation steps.
-#PartonLevel:MPI = off              ! no multiparton interactions
-#PartonLevel:ISR = off              ! no initial-state radiation
-#PartonLevel:FSR = off              ! no final-state radiation
-#HadronLevel:Hadronize = off        ! no hadronization
-#HadronLevel:Decay = off            ! no decays
-
-! 6) Other settings. Can be expanded as desired.
-#Tune:preferLHAPDF = off            ! use internal PDFs when LHAPDF not linked
-Tune:pp = 6                        ! use Tune 4Cx
-ParticleDecays:limitTau0 = on      ! set long-lived particle stable ...
-ParticleDecays:tau0Max = 10        ! ... if c*tau0 > 10 mm
Index: examples/Pythia8/configParticleGun.cmnd
===================================================================
--- examples/Pythia8/configParticleGun.cmnd	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,23 +1,0 @@
-ProcessLevel:all = off
-
-! 1) Settings used in the main program.
-
-Main:numberOfEvents = 10000        ! number of events to generate
-Main:timesAllowErrors = 3          ! how many aborts before run stops
-Main:spareFlag1 = on               ! true means particle gun
-Main:spareMode1 = 11               ! 1-5 - di-quark, 21 - di-gluon, 11 - single electron, 13 - single muon, 15 - single tau, 22 - single photon
-Main:spareParm1 = 50000            ! max energy
-Main:spareParm2 = 6.0              ! max eta
-
-! 2) Settings related to output in init(), next() and stat().
-
-Init:showChangedSettings = on      ! list changed settings
-Init:showChangedParticleData = off ! list changed particle data
-Next:numberCount = 100             ! print message every n events
-Next:numberShowInfo = 1            ! print event information n times
-Next:numberShowProcess = 1         ! print process record n times
-Next:numberShowEvent = 0           ! print event record n times
-
-! 3) Set the input LHE file
-
-! Beams:frameType = 4
Index: examples/Pythia8/ee_zh.cmnd
===================================================================
--- examples/Pythia8/ee_zh.cmnd	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,22 +1,0 @@
-
-! number of events to generate
-Main:numberOfEvents = 1000       ! number of events to generate
-
-Beams:idA = 11                   ! first beam, e- = -11
-Beams:idB = -11                  ! second beam, e+ = 11
-Beams:eCM = 240.                 ! CM energy of collision
-
-! Vertex smearing :
-
-Beams:allowVertexSpread = on
-Beams:sigmaVertexX = 9.70e-3   !  13.7 mum / sqrt2
-Beams:sigmaVertexY = 25.5E-6   !  36.1 nm / sqrt2
-Beams:sigmaVertexZ = 0.64      !  0.64 mm
-Beams:sigmaTime    = 0.64      !  0.64 mm
-
-! Higgsstrahlung process
-HiggsSM:ffbar2HZ = on
-
-! 5) Force the Z decays to muons
-23:onMode = off
-23:onIfAny = 13 -13
Index: examples/Pythia8/events.lhe
===================================================================
--- examples/Pythia8/events.lhe	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,2218 +1,0 @@
-<LesHouchesEvents version="3.0">
-  <header>
-  <MG5ProcCard>
-#************************************************************           
-#*                     MadGraph5_aMC@NLO                    *           
-#*                                                          *           
-#*                *                       *                 *           
-#*                  *        * *        *                   *           
-#*                    * * * * 5 * * * *                     *           
-#*                  *        * *        *                   *           
-#*                *                       *                 *           
-#*                                                          *           
-#*                                                          *           
-#*         VERSION 2.2.2                 2014-11-06         *           
-#*                                                          *           
-#*    The MadGraph5_aMC@NLO Development Team - Find us at   *           
-#*    https://server06.fynu.ucl.ac.be/projects/madgraph     *           
-#*                                                          *           
-#************************************************************           
-#*                                                          *           
-#*               Command File for MadGraph5_aMC@NLO         *           
-#*                                                          *           
-#*     run as ./bin/mg5_aMC  filename                       *           
-#*                                                          *           
-#************************************************************           
-set group_subprocesses Auto                                             
-set ignore_six_quark_processes False                                    
-set loop_optimized_output True                                          
-set complex_mass_scheme False                                           
-import model sm                                                         
-define p = g u c d s u~ c~ d~ s~                                        
-define j = g u c d s u~ c~ d~ s~                                        
-define l+ = e+ mu+                                                      
-define l- = e- mu-                                                      
-define vl = ve vm vt                                                    
-define vl~ = ve~ vm~ vt~                                                
-import model loop_sm                                                    
-generate p p > b b~ [QCD]                                               
-output pp_bb_py8                                                        
-  </MG5ProcCard>
-  <slha>
-######################################################################  
-## PARAM_CARD AUTOMATICALY GENERATED BY MG5 FOLLOWING UFO MODEL   ####  
-######################################################################  
-##                                                                  ##  
-##  Width set on Auto will be computed following the information    ##  
-##        present in the decay.py files of the model.               ##  
-##        See  arXiv:1402.1178 for more details.                    ##  
-##                                                                  ##  
-######################################################################  
-                                                                        
-###################################                                     
-## INFORMATION FOR LOOP                                                 
-###################################                                     
-Block loop                                                              
-    1 9.118800e+01 # MU_R                                               
-                                                                        
-###################################                                     
-## INFORMATION FOR MASS                                                 
-###################################                                     
-Block mass                                                              
-    5 4.700000e+00 # MB                                                 
-    6 1.730000e+02 # MT                                                 
-   15 1.777000e+00 # MTA                                                
-   23 9.118800e+01 # MZ                                                 
-   25 1.250000e+02 # MH                                                 
-## Dependent parameters, given by model restrictions.                   
-## Those values should be edited following the                          
-## analytical expression. MG5 ignores those values                      
-## but they are important for interfacing the output of MG5             
-## to external program such as Pythia.                                  
-  1 0.000000 # d : 0.0                                                  
-  2 0.000000 # u : 0.0                                                  
-  3 0.000000 # s : 0.0                                                  
-  4 0.000000 # c : 0.0                                                  
-  11 0.000000 # e- : 0.0                                                
-  12 0.000000 # ve : 0.0                                                
-  13 0.000000 # mu- : 0.0                                               
-  14 0.000000 # vm : 0.0                                                
-  16 0.000000 # vt : 0.0                                                
-  21 0.000000 # g : 0.0                                                 
-  22 0.000000 # a : 0.0                                                 
-  24 80.419002 # w+ : cmath.sqrt(MZ__exp__2/2. + cmath.sqrt(MZ__exp__4/4
-                                                                        
-###################################                                     
-## INFORMATION FOR SMINPUTS                                             
-###################################                                     
-Block sminputs                                                          
-    1 1.325070e+02 # aEWM1                                              
-    2 1.166390e-05 # Gf                                                 
-    3 1.180000e-01 # aS                                                 
-                                                                        
-###################################                                     
-## INFORMATION FOR YUKAWA                                               
-###################################                                     
-Block yukawa                                                            
-    5 4.700000e+00 # ymb                                                
-    6 1.730000e+02 # ymt                                                
-   15 1.777000e+00 # ymtau                                              
-                                                                        
-###################################                                     
-## INFORMATION FOR DECAY                                                
-###################################                                     
-DECAY   6 1.491500e+00 # WT                                             
-DECAY  23 2.441404e+00 # WZ                                             
-DECAY  24 2.047600e+00 # WW                                             
-DECAY  25 6.382339e-03 # WH                                             
-## Dependent parameters, given by model restrictions.                   
-## Those values should be edited following the                          
-## analytical expression. MG5 ignores those values                      
-## but they are important for interfacing the output of MG5             
-## to external program such as Pythia.                                  
-DECAY  1 0.000000 # d : 0.0                                             
-DECAY  2 0.000000 # u : 0.0                                             
-DECAY  3 0.000000 # s : 0.0                                             
-DECAY  4 0.000000 # c : 0.0                                             
-DECAY  5 0.000000 # b : 0.0                                             
-DECAY  11 0.000000 # e- : 0.0                                           
-DECAY  12 0.000000 # ve : 0.0                                           
-DECAY  13 0.000000 # mu- : 0.0                                          
-DECAY  14 0.000000 # vm : 0.0                                           
-DECAY  15 0.000000 # ta- : 0.0                                          
-DECAY  16 0.000000 # vt : 0.0                                           
-DECAY  21 0.000000 # g : 0.0                                            
-DECAY  22 0.000000 # a : 0.0                                            
-  </slha>
-  <MGRunCard>
-#***********************************************************************
-#                        MadGraph5_aMC@NLO                             *
-#                                                                      *
-#                      run_card.dat aMC@NLO                            *
-#                                                                      *
-#  This file is used to set the parameters of the run.                 *
-#                                                                      *
-#  Some notation/conventions:                                          *
-#                                                                      *
-#   Lines starting with a hash (#) are info or comments                *
-#                                                                      *
-#   mind the format:   value    = variable     ! comment               *
-#***********************************************************************
-#                                                                       
-#*******************                                                    
-# Running parameters                                                    
-#*******************                                                    
-#                                                                       
-#***********************************************************************
-# Tag name for the run (one word)                                      *
-#***********************************************************************
-  tag_1     = run_tag ! name of the run                                 
-#***********************************************************************
-# Number of LHE events (and their normalization) and the required      *
-# (relative) accuracy on the Xsec.                                     *
-# These values are ignored for fixed order runs                        *
-#***********************************************************************
-        100 = nevents                                                   
-    -1 = req_acc ! Required accuracy (-1=auto determined from nevents)  
-    -1 = nevt_job! Max number of events per job in event generation.    
-                 !  (-1= no split).                                     
-#***********************************************************************
-# Normalize the weights of LHE events such that they sum or average to *
-# the total cross section                                              *
-#***********************************************************************
- average = event_norm      ! average or sum                             
-#***********************************************************************
-# Number of points per itegration channel (ignored for aMC@NLO runs)   *
-#***********************************************************************
- 0.01   = req_acc_FO       ! Required accuracy (-1=ignored, and use the 
- 	                   ! number of points and iter. below)                
-# These numbers are ignored except if req_acc_FO is equal to -1         
- 5000   = npoints_FO_grid  ! number of points to setup grids            
- 4      = niters_FO_grid   ! number of iter. to setup grids             
- 10000  = npoints_FO       ! number of points to compute Xsec           
- 6      = niters_FO        ! number of iter. to compute Xsec            
-#***********************************************************************
-# Random number seed                                                   *
-#***********************************************************************
-         33 =  iseed                                                    
-#***********************************************************************
-# Collider type and energy                                             *
-#***********************************************************************
-    1   = lpp1    ! beam 1 type (0 = no PDF)                            
-    1   = lpp2    ! beam 2 type (0 = no PDF)                            
- 6500   = ebeam1  ! beam 1 energy in GeV                                
- 6500   = ebeam2  ! beam 2 energy in GeV                                
-#***********************************************************************
-# PDF choice: this automatically fixes also alpha_s(MZ) and its evol.  *
-#***********************************************************************
- nn23nlo   = pdlabel   ! PDF set                                        
- 244600    = lhaid     ! if pdlabel=lhapdf, this is the lhapdf number   
-#***********************************************************************
-# Include the NLO Monte Carlo subtr. terms for the following parton    *
-# shower (HERWIG6 | HERWIGPP | PYTHIA6Q | PYTHIA6PT | PYTHIA8)         *
-# WARNING: PYTHIA6PT works only for processes without FSR!!!!          *
-#***********************************************************************
-  PYTHIA8   = parton_shower                                             
-#***********************************************************************
-# Renormalization and factorization scales                             *
-# (Default functional form for the non-fixed scales is the sum of      *
-# the transverse masses of all final state particles and partons. This *
-# can be changed in SubProcesses/set_scales.f)                         *
-#***********************************************************************
- F        = fixed_ren_scale  ! if .true. use fixed ren scale            
- F        = fixed_fac_scale  ! if .true. use fixed fac scale            
- 91.188   = muR_ref_fixed    ! fixed ren reference scale                
- 91.188   = muF1_ref_fixed   ! fixed fact reference scale for pdf1      
- 91.188   = muF2_ref_fixed   ! fixed fact reference scale for pdf2      
-#***********************************************************************
-# Renormalization and factorization scales (advanced and NLO options)  *
-#***********************************************************************
- F        = fixed_QES_scale  ! if .true. use fixed Ellis-Sexton scale   
- 91.188   = QES_ref_fixed    ! fixed Ellis-Sexton reference scale       
- 1        = muR_over_ref     ! ratio of current muR over reference muR  
- 1        = muF1_over_ref    ! ratio of current muF1 over reference muF1
- 1        = muF2_over_ref    ! ratio of current muF2 over reference muF2
- 1        = QES_over_ref     ! ratio of current QES over reference QES  
-#***********************************************************************
-# Reweight flags to get scale dependence and PDF uncertainty           *
-# For scale dependence: factor rw_scale_up/down around central scale   *
-# For PDF uncertainty: use LHAPDF with supported set                   *
-#***********************************************************************
- .true.   = reweight_scale   ! reweight to get scale dependence         
-  0.5     = rw_Rscale_down   ! lower bound for ren scale variations     
-  2.0     = rw_Rscale_up     ! upper bound for ren scale variations     
-  0.5     = rw_Fscale_down   ! lower bound for fact scale variations    
-  2.0     = rw_Fscale_up     ! upper bound for fact scale variations    
- .false.  = reweight_PDF     ! reweight to get PDF uncertainty          
- 244601   = PDF_set_min      ! First of the error PDF sets              
- 244700   = PDF_set_max      ! Last of the error PDF sets               
-#***********************************************************************
-# Merging - WARNING! Applies merging only at the hard-event level.     *
-# After showering an MLM-type merging should be applied as well.       *
-# See http://amcatnlo.cern.ch/FxFx_merging.htm for more details.       *
-#***********************************************************************
- 0        = ickkw            ! 0 no merging, 3 FxFx merging, 4 UNLOPS   
-#***********************************************************************
-#                                                                       
-#***********************************************************************
-# BW cutoff (M+/-bwcutoff*Gamma)                                       *
-#***********************************************************************
- 15  = bwcutoff                                                         
-#***********************************************************************
-# Cuts on the jets                                                     *
-# Jet clustering is performed by FastJet.                               
-# When matching to a parton shower, these generation cuts should be    *
-# considerably softer than the analysis cuts.                          *
-# (more specific cuts can be specified in SubProcesses/cuts.f)         *
-#***********************************************************************
-   1  = jetalgo   ! FastJet jet algorithm (1=kT, 0=C/A, -1=anti-kT)     
- 0.7  = jetradius ! The radius parameter for the jet algorithm          
-  10  = ptj       ! Min jet transverse momentum                         
-  -1  = etaj      ! Max jet abs(pseudo-rap) (a value .lt.0 means no cut)
-#***********************************************************************
-# Cuts on the charged leptons (e+, e-, mu+, mu-, tau+ and tau-)        *
-# (more specific gen cuts can be specified in SubProcesses/cuts.f)     *
-#***********************************************************************
-   0  = ptl     ! Min lepton transverse momentum                        
-  -1  = etal    ! Max lepton abs(pseudo-rap) (a value .lt.0 means no cut
-   0  = drll    ! Min distance between opposite sign lepton pairs       
-   0  = drll_sf ! Min distance between opp. sign same-flavor lepton pair
-   0  = mll     ! Min inv. mass of all opposite sign lepton pairs       
-  30  = mll_sf  ! Min inv. mass of all opp. sign same-flavor lepton pair
-#***********************************************************************
-# Photon-isolation cuts, according to hep-ph/9801442                   *
-# When ptgmin=0, all the other parameters are ignored                  *
-#***********************************************************************
-  20  = ptgmin    ! Min photon transverse momentum                      
-  -1  = etagamma  ! Max photon abs(pseudo-rap)                          
- 0.4  = R0gamma   ! Radius of isolation code                            
- 1.0  = xn        ! n parameter of eq.(3.4) in hep-ph/9801442           
- 1.0  = epsgamma  ! epsilon_gamma parameter of eq.(3.4) in hep-ph/980144
- .true.  = isoEM  ! isolate photons from EM energy (photons and leptons)
-#***********************************************************************
-# Maximal PDG code for quark to be considered a jet when applying cuts.*
-# At least all massless quarks of the model should be included here.   *
-#***********************************************************************
- 4 = maxjetflavor                                                       
-#***********************************************************************
-# For aMCfast+APPLGRID use in PDF fitting (http://amcfast.hepforge.org)*
-#***********************************************************************
- 0 = iappl   ! aMCfast switch (0=OFF, 1=prepare APPLgrids, 2=fill grids)
-#***********************************************************************
-  </MGRunCard>
-  <scalesfunctionalform>
-    muR  H_T/2 := sum_i mT(i)/2, i=final state
-    muF1 H_T/2 := sum_i mT(i)/2, i=final state
-    muF2 H_T/2 := sum_i mT(i)/2, i=final state
-    QES  H_T/2 := sum_i mT(i)/2, i=final state
-  </scalesfunctionalform>
-  <MonteCarloMasses>
-       1   0.330000E+00
-       2   0.330000E+00
-       3   0.500000E+00
-       4   0.150000E+01
-       5   0.480000E+01
-      11   0.510999E-03
-      13   0.105658E+00
-      15   0.177682E+01
-      21   0.000000E+00
-  </MonteCarloMasses>
-  <initrwgt>
-    <weightgroup type='scale_variation' combine='envelope'>
-      <weight id='1001'> muR=0.10000E+01 muF=0.10000E+01 </weight>
-      <weight id='1002'> muR=0.10000E+01 muF=0.20000E+01 </weight>
-      <weight id='1003'> muR=0.10000E+01 muF=0.50000E+00 </weight>
-      <weight id='1004'> muR=0.20000E+01 muF=0.10000E+01 </weight>
-      <weight id='1005'> muR=0.20000E+01 muF=0.20000E+01 </weight>
-      <weight id='1006'> muR=0.20000E+01 muF=0.50000E+00 </weight>
-      <weight id='1007'> muR=0.50000E+00 muF=0.10000E+01 </weight>
-      <weight id='1008'> muR=0.50000E+00 muF=0.20000E+01 </weight>
-      <weight id='1009'> muR=0.50000E+00 muF=0.50000E+00 </weight>
-    </weightgroup>
-  </initrwgt>
-  </header>
-  <init>
-   2212   2212 0.65000000E+04 0.65000000E+04 -1 -1 244600 244600 -4   1
- 0.15466170E+09 0.59355081E+06 0.15466170E+09      0
-  </init>
-  <event>
-  4      0 0.15466170E+09 0.14408522E+02 0.75467716E-02 0.11800000E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.24151420E+04 0.24151420E+04 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.21489991E-01 0.21489991E-01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.28982975E+01 -.17071976E+01 0.48666107E+03 0.48669539E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.28982975E+01 0.17071976E+01 0.19284594E+04 0.19284681E+04 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.62832192E+00 0.18001862E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.17554E+09 </wgt>
-   <wgt id='1003'> 0.13727E+09 </wgt>
-   <wgt id='1004'> 0.10949E+09 </wgt>
-   <wgt id='1005'> 0.12427E+09 </wgt>
-   <wgt id='1006'> 0.97177E+08 </wgt>
-   <wgt id='1007'> 0.24532E+09 </wgt>
-   <wgt id='1008'> 0.27842E+09 </wgt>
-   <wgt id='1009'> 0.21772E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.96903197E+01 0.75467716E-02 0.21949032E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.44463081E+00 0.44463081E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.52797901E+02 0.52797901E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.11988829E+00 0.19865088E+00 -.19836039E+02 0.20386571E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.11988829E+00 -.19865088E+00 -.32517231E+02 0.32855961E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.14907467E+00 0.37140696E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.34382E+09 </wgt>
-   <wgt id='1003'> 0.33230E+08 </wgt>
-   <wgt id='1004'> 0.10731E+09 </wgt>
-   <wgt id='1005'> 0.23855E+09 </wgt>
-   <wgt id='1006'> 0.23056E+08 </wgt>
-   <wgt id='1007'> 0.25840E+09 </wgt>
-   <wgt id='1008'> 0.57442E+09 </wgt>
-   <wgt id='1009'> 0.55519E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.10290814E+02 0.75467716E-02 0.11800000E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.10568362E+00 0.10568362E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.25051387E+03 0.25051387E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.20557413E+01 0.49099799E-01 -.13484551E+03 0.13494306E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.20557413E+01 -.49099799E-01 -.11556267E+03 0.11567649E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999995E+00 0.30430704E+00 0.28242757E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.26750E+09 </wgt>
-   <wgt id='1003'> 0.67243E+08 </wgt>
-   <wgt id='1004'> 0.10825E+09 </wgt>
-   <wgt id='1005'> 0.18722E+09 </wgt>
-   <wgt id='1006'> 0.47065E+08 </wgt>
-   <wgt id='1007'> 0.25255E+09 </wgt>
-   <wgt id='1008'> 0.43681E+09 </wgt>
-   <wgt id='1009'> 0.10980E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.32484602E+02 0.75467716E-02 0.19292153E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.76388852E+02 0.76388852E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.34535451E+01 0.34535451E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.52034312E+01 0.28450245E+01 0.11435436E+01 0.76529441E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.52034312E+01 -.28450245E+01 0.71791763E+02 0.72189453E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.33724070E+00 0.23632640E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24394E+09 </wgt>
-   <wgt id='1003'> 0.71988E+08 </wgt>
-   <wgt id='1004'> 0.11206E+09 </wgt>
-   <wgt id='1005'> 0.17674E+09 </wgt>
-   <wgt id='1006'> 0.52158E+08 </wgt>
-   <wgt id='1007'> 0.23173E+09 </wgt>
-   <wgt id='1008'> 0.36551E+09 </wgt>
-   <wgt id='1009'> 0.10786E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14231002E+02 0.75467716E-02 0.19853591E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.54653855E+02 0.54653855E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.92638213E+00 0.92638213E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.46334006E+01 0.15055953E+01 0.35424998E+02 0.36065991E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.46334006E+01 -.15055953E+01 0.18302475E+02 0.19514246E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.25281406E+00 0.28031328E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28299E+09 </wgt>
-   <wgt id='1003'> 0.54464E+08 </wgt>
-   <wgt id='1004'> 0.11103E+09 </wgt>
-   <wgt id='1005'> 0.20317E+09 </wgt>
-   <wgt id='1006'> 0.39100E+08 </wgt>
-   <wgt id='1007'> 0.23694E+09 </wgt>
-   <wgt id='1008'> 0.43354E+09 </wgt>
-   <wgt id='1009'> 0.83437E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.22647156E+02 0.75467716E-02 0.21700263E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.14500041E+01 0.14500041E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.88429692E+02 0.88429692E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.26469957E+00 0.13406128E+01 -.29651719E+01 0.57227225E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.26469957E+00 -.13406128E+01 -.84014516E+02 0.84156974E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999992E+00 0.17610814E+00 0.32016752E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.29956E+09 </wgt>
-   <wgt id='1003'> 0.39098E+08 </wgt>
-   <wgt id='1004'> 0.10774E+09 </wgt>
-   <wgt id='1005'> 0.20868E+09 </wgt>
-   <wgt id='1006'> 0.27237E+08 </wgt>
-   <wgt id='1007'> 0.25567E+09 </wgt>
-   <wgt id='1008'> 0.49517E+09 </wgt>
-   <wgt id='1009'> 0.64632E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14276067E+02 0.75467716E-02 0.20331931E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.19615611E+02 0.19615611E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.25974987E+01 0.25974987E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.39707546E+01 -.65537196E+00 0.14046450E+02 0.15348914E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.39707546E+01 0.65537196E+00 0.29716623E+01 0.68641956E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.21723390E+00 0.30327378E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30034E+09 </wgt>
-   <wgt id='1003'> 0.47165E+08 </wgt>
-   <wgt id='1004'> 0.11018E+09 </wgt>
-   <wgt id='1005'> 0.21394E+09 </wgt>
-   <wgt id='1006'> 0.33597E+08 </wgt>
-   <wgt id='1007'> 0.24154E+09 </wgt>
-   <wgt id='1008'> 0.46905E+09 </wgt>
-   <wgt id='1009'> 0.73661E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12138130E+02 0.75467716E-02 0.21126621E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.12847674E+03 0.12847674E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.28669429E+00 0.28669429E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.24414215E+01 -.94175780E+00 0.34286041E+02 0.34705476E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.24414215E+01 0.94175780E+00 0.93904009E+02 0.94057962E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.23408417E+00 0.30399837E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.29138E+09 </wgt>
-   <wgt id='1003'> 0.51487E+08 </wgt>
-   <wgt id='1004'> 0.10875E+09 </wgt>
-   <wgt id='1005'> 0.20488E+09 </wgt>
-   <wgt id='1006'> 0.36204E+08 </wgt>
-   <wgt id='1007'> 0.24956E+09 </wgt>
-   <wgt id='1008'> 0.47016E+09 </wgt>
-   <wgt id='1009'> 0.83081E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.17916185E+02 0.75467716E-02 0.21421364E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.72459276E-01 0.72459276E-01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.11074831E+04 0.11074831E+04 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.19745484E+01 -.48785004E+00 -.10080648E+04 0.10080778E+04 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.19745484E+01 0.48785004E+00 -.99345817E+02 0.99477727E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.42020904E+00 0.23436353E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.22188E+09 </wgt>
-   <wgt id='1003'> 0.92870E+08 </wgt>
-   <wgt id='1004'> 0.10823E+09 </wgt>
-   <wgt id='1005'> 0.15527E+09 </wgt>
-   <wgt id='1006'> 0.64990E+08 </wgt>
-   <wgt id='1007'> 0.25266E+09 </wgt>
-   <wgt id='1008'> 0.36247E+09 </wgt>
-   <wgt id='1009'> 0.15172E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14676249E+02 0.75467716E-02 0.11800000E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.43777462E+01 0.43777462E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.12300410E+02 0.12300410E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.54976693E+00 0.36120841E+01 -.88371134E+01 0.10655232E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.54976693E+00 -.36120841E+01 0.91444985E+00 0.60229240E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.20654233E+00 0.31078404E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30511E+09 </wgt>
-   <wgt id='1003'> 0.45001E+08 </wgt>
-   <wgt id='1004'> 0.10979E+09 </wgt>
-   <wgt id='1005'> 0.21659E+09 </wgt>
-   <wgt id='1006'> 0.31944E+08 </wgt>
-   <wgt id='1007'> 0.24365E+09 </wgt>
-   <wgt id='1008'> 0.48067E+09 </wgt>
-   <wgt id='1009'> 0.70891E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13147316E+02 0.75467716E-02 0.21581464E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.10261593E+01 0.10261593E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.42111372E+02 0.42111372E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.64969506E+00 0.15425532E+01 -.64983886E+01 0.81927180E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.64969506E+00 -.15425532E+01 -.34586825E+02 0.34944814E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.15136161E+00 0.35056468E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.32964E+09 </wgt>
-   <wgt id='1003'> 0.33539E+08 </wgt>
-   <wgt id='1004'> 0.10795E+09 </wgt>
-   <wgt id='1005'> 0.23009E+09 </wgt>
-   <wgt id='1006'> 0.23410E+08 </wgt>
-   <wgt id='1007'> 0.25438E+09 </wgt>
-   <wgt id='1008'> 0.54219E+09 </wgt>
-   <wgt id='1009'> 0.55164E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12324213E+02 0.75467716E-02 0.20375659E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.41275557E+01 0.41275557E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.91995257E+01 0.91995257E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.38038919E+01 0.10579781E+01 -.19509990E+01 0.64409090E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.38038919E+01 -.10579781E+01 -.31209710E+01 0.68861725E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.20539312E+00 0.31355869E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30997E+09 </wgt>
-   <wgt id='1003'> 0.44627E+08 </wgt>
-   <wgt id='1004'> 0.11009E+09 </wgt>
-   <wgt id='1005'> 0.22064E+09 </wgt>
-   <wgt id='1006'> 0.31766E+08 </wgt>
-   <wgt id='1007'> 0.24198E+09 </wgt>
-   <wgt id='1008'> 0.48495E+09 </wgt>
-   <wgt id='1009'> 0.69819E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12143557E+02 0.75467716E-02 0.21043694E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.20267245E+00 0.20267245E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.18190185E+03 0.18190185E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.94098225E+00 0.26056270E+01 -.13081255E+03 0.13092627E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.94098225E+00 -.26056270E+01 -.50886630E+02 0.51178255E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999997E+00 0.26877388E+00 0.28832481E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27731E+09 </wgt>
-   <wgt id='1003'> 0.59037E+08 </wgt>
-   <wgt id='1004'> 0.10890E+09 </wgt>
-   <wgt id='1005'> 0.19526E+09 </wgt>
-   <wgt id='1006'> 0.41569E+08 </wgt>
-   <wgt id='1007'> 0.24870E+09 </wgt>
-   <wgt id='1008'> 0.44592E+09 </wgt>
-   <wgt id='1009'> 0.94935E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12317168E+02 0.75467716E-02 0.21778750E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.68748652E+02 0.68748652E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.55169309E+00 0.55169309E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.13800777E+00 0.11206707E+01 0.55569518E+02 0.55779354E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.13800777E+00 -.11206707E+01 0.12627441E+02 0.13520992E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999994E+00 0.15859532E+00 0.35107003E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.32737E+09 </wgt>
-   <wgt id='1003'> 0.35255E+08 </wgt>
-   <wgt id='1004'> 0.10761E+09 </wgt>
-   <wgt id='1005'> 0.22776E+09 </wgt>
-   <wgt id='1006'> 0.24528E+08 </wgt>
-   <wgt id='1007'> 0.25652E+09 </wgt>
-   <wgt id='1008'> 0.54297E+09 </wgt>
-   <wgt id='1009'> 0.58474E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14479693E+02 0.75467716E-02 0.19684096E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.40131979E+01 0.40131979E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.13060752E+02 0.13060752E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.89612937E+00 0.51041169E+01 -.23271333E+01 0.73729646E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.89612937E+00 -.51041169E+01 -.67204204E+01 0.97009849E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.25299025E+00 0.28230483E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28693E+09 </wgt>
-   <wgt id='1003'> 0.54351E+08 </wgt>
-   <wgt id='1004'> 0.11134E+09 </wgt>
-   <wgt id='1005'> 0.20656E+09 </wgt>
-   <wgt id='1006'> 0.39127E+08 </wgt>
-   <wgt id='1007'> 0.23535E+09 </wgt>
-   <wgt id='1008'> 0.43662E+09 </wgt>
-   <wgt id='1009'> 0.82704E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13787688E+02 0.75467716E-02 0.21518084E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.11398170E+03 0.11398170E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.41695364E+00 0.41695364E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.17288417E+01 0.57489372E+00 0.17763053E+02 0.18464437E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.17288417E+01 -.57489372E+00 0.95801692E+02 0.95934215E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.19647734E+00 0.32202499E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30362E+09 </wgt>
-   <wgt id='1003'> 0.43491E+08 </wgt>
-   <wgt id='1004'> 0.10806E+09 </wgt>
-   <wgt id='1005'> 0.21214E+09 </wgt>
-   <wgt id='1006'> 0.30388E+08 </wgt>
-   <wgt id='1007'> 0.25370E+09 </wgt>
-   <wgt id='1008'> 0.49805E+09 </wgt>
-   <wgt id='1009'> 0.71342E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.18385219E+02 0.75467716E-02 0.20115263E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.28475792E+00 0.28475792E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.29675758E+03 0.29675758E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.30670166E+01 -.31609625E+01 -.25420168E+03 0.25428327E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.30670166E+01 0.31609625E+01 -.42271146E+02 0.42759070E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.31950908E+00 0.25081457E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.25057E+09 </wgt>
-   <wgt id='1003'> 0.69126E+08 </wgt>
-   <wgt id='1004'> 0.11056E+09 </wgt>
-   <wgt id='1005'> 0.17912E+09 </wgt>
-   <wgt id='1006'> 0.49416E+08 </wgt>
-   <wgt id='1007'> 0.23943E+09 </wgt>
-   <wgt id='1008'> 0.38791E+09 </wgt>
-   <wgt id='1009'> 0.10702E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.11184694E+03 0.75467716E-02 0.18847016E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.28630648E+02 0.28630648E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.10923379E+03 0.10923379E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.68336419E+01 -.45158055E+00 0.27866070E+02 0.29077662E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.68336419E+01 0.45158055E+00 -.10846921E+03 0.10878678E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.47536135E+00 0.18939452E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.19891E+09 </wgt>
-   <wgt id='1003'> 0.10073E+09 </wgt>
-   <wgt id='1004'> 0.11288E+09 </wgt>
-   <wgt id='1005'> 0.14517E+09 </wgt>
-   <wgt id='1006'> 0.73520E+08 </wgt>
-   <wgt id='1007'> 0.22776E+09 </wgt>
-   <wgt id='1008'> 0.29292E+09 </wgt>
-   <wgt id='1009'> 0.14834E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14804492E+02 0.75467716E-02 0.19443890E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.47659097E+02 0.47659097E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.11496912E+01 0.11496912E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.35847011E+01 -.43477914E+01 0.20041511E+02 0.21342575E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.35847011E+01 0.43477914E+01 0.26467896E+02 0.27466213E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.27535324E+00 0.26828177E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27528E+09 </wgt>
-   <wgt id='1003'> 0.58923E+08 </wgt>
-   <wgt id='1004'> 0.11178E+09 </wgt>
-   <wgt id='1005'> 0.19895E+09 </wgt>
-   <wgt id='1006'> 0.42586E+08 </wgt>
-   <wgt id='1007'> 0.23312E+09 </wgt>
-   <wgt id='1008'> 0.41493E+09 </wgt>
-   <wgt id='1009'> 0.88815E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.19785852E+02 0.75467716E-02 0.20512234E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.20864966E+03 0.20864966E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.46906370E+00 0.46906370E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.36852334E+01 0.43390297E+00 0.18731873E+03 0.18741442E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.36852334E+01 -.43390297E+00 0.20861866E+02 0.21704301E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.26955806E+00 0.26956214E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.26500E+09 </wgt>
-   <wgt id='1003'> 0.58698E+08 </wgt>
-   <wgt id='1004'> 0.10984E+09 </wgt>
-   <wgt id='1005'> 0.18822E+09 </wgt>
-   <wgt id='1006'> 0.41690E+08 </wgt>
-   <wgt id='1007'> 0.24332E+09 </wgt>
-   <wgt id='1008'> 0.41691E+09 </wgt>
-   <wgt id='1009'> 0.92348E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.15188050E+02 0.75467716E-02 0.20555389E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.21073276E+03 0.21073276E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.27366043E+00 0.27366043E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.20520833E+01 -.30011133E+01 0.17092632E+03 0.17102958E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.20520833E+01 0.30011133E+01 0.39532780E+02 0.39976848E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.28306983E+00 0.27161641E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.26655E+09 </wgt>
-   <wgt id='1003'> 0.61684E+08 </wgt>
-   <wgt id='1004'> 0.10977E+09 </wgt>
-   <wgt id='1005'> 0.18918E+09 </wgt>
-   <wgt id='1006'> 0.43780E+08 </wgt>
-   <wgt id='1007'> 0.24375E+09 </wgt>
-   <wgt id='1008'> 0.42008E+09 </wgt>
-   <wgt id='1009'> 0.97216E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12649357E+02 0.75467716E-02 0.20265758E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.10219974E+00 0.10219974E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.39140568E+03 0.39140568E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.41153499E+01 -.45127425E+00 -.16846072E+03 0.16857712E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.41153499E+01 0.45127425E+00 -.22284275E+03 0.22293076E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.36645484E+00 0.24388244E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24217E+09 </wgt>
-   <wgt id='1003'> 0.79479E+08 </wgt>
-   <wgt id='1004'> 0.11029E+09 </wgt>
-   <wgt id='1005'> 0.17269E+09 </wgt>
-   <wgt id='1006'> 0.56677E+08 </wgt>
-   <wgt id='1007'> 0.24089E+09 </wgt>
-   <wgt id='1008'> 0.37720E+09 </wgt>
-   <wgt id='1009'> 0.12379E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.16061952E+02 0.75467716E-02 0.19924815E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.29151365E+02 0.29151365E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.22124720E+01 0.22124720E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.24307499E+01 -.40732324E+01 0.47571691E+01 0.81988064E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.24307499E+01 0.40732324E+01 0.22181723E+02 0.23165030E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.24802792E+00 0.28311325E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28501E+09 </wgt>
-   <wgt id='1003'> 0.53495E+08 </wgt>
-   <wgt id='1004'> 0.11091E+09 </wgt>
-   <wgt id='1005'> 0.20437E+09 </wgt>
-   <wgt id='1006'> 0.38361E+08 </wgt>
-   <wgt id='1007'> 0.23761E+09 </wgt>
-   <wgt id='1008'> 0.43787E+09 </wgt>
-   <wgt id='1009'> 0.82186E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.22792674E+02 0.75467716E-02 0.20448893E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.44849304E+01 0.44849304E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.28958419E+02 0.28958419E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.36032204E+01 -.12710776E+01 -.26400997E+02 0.27086925E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.36032204E+01 0.12710776E+01 0.19275093E+01 0.63564241E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.24078665E+00 0.28485464E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28076E+09 </wgt>
-   <wgt id='1003'> 0.52379E+08 </wgt>
-   <wgt id='1004'> 0.10996E+09 </wgt>
-   <wgt id='1005'> 0.19961E+09 </wgt>
-   <wgt id='1006'> 0.37240E+08 </wgt>
-   <wgt id='1007'> 0.24270E+09 </wgt>
-   <wgt id='1008'> 0.44056E+09 </wgt>
-   <wgt id='1009'> 0.82193E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13200746E+02 0.75467716E-02 0.20518595E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.39721218E+00 0.39721218E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.10967671E+03 0.10967671E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.26327720E+01 -.25991835E+01 -.77909415E+02 0.78138685E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.26327720E+01 0.25991835E+01 -.31370087E+02 0.31935241E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999995E+00 0.24504992E+00 0.28984603E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28486E+09 </wgt>
-   <wgt id='1003'> 0.53368E+08 </wgt>
-   <wgt id='1004'> 0.10984E+09 </wgt>
-   <wgt id='1005'> 0.20230E+09 </wgt>
-   <wgt id='1006'> 0.37900E+08 </wgt>
-   <wgt id='1007'> 0.24338E+09 </wgt>
-   <wgt id='1008'> 0.44828E+09 </wgt>
-   <wgt id='1009'> 0.83982E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.19203752E+02 0.75467716E-02 0.18617593E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.84737510E+01 0.84737510E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.10880190E+02 0.10880190E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.10374824E+01 -.72840649E+01 0.28245413E+01 0.91761651E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.10374824E+01 0.72840649E+01 -.52309804E+01 0.10177776E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.33000831E+00 0.24303001E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.25750E+09 </wgt>
-   <wgt id='1003'> 0.69669E+08 </wgt>
-   <wgt id='1004'> 0.11331E+09 </wgt>
-   <wgt id='1005'> 0.18864E+09 </wgt>
-   <wgt id='1006'> 0.51040E+08 </wgt>
-   <wgt id='1007'> 0.22576E+09 </wgt>
-   <wgt id='1008'> 0.37588E+09 </wgt>
-   <wgt id='1009'> 0.10170E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14352316E+02 0.75467716E-02 0.21711723E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.46153433E+02 0.46153433E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.11157835E+01 0.11157835E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.11473539E+01 -.68057751E+00 0.39830068E+02 0.40128593E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.11473539E+01 0.68057751E+00 0.52075809E+01 0.71406236E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.14856892E+00 0.35148499E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.32869E+09 </wgt>
-   <wgt id='1003'> 0.32990E+08 </wgt>
-   <wgt id='1004'> 0.10772E+09 </wgt>
-   <wgt id='1005'> 0.22894E+09 </wgt>
-   <wgt id='1006'> 0.22978E+08 </wgt>
-   <wgt id='1007'> 0.25579E+09 </wgt>
-   <wgt id='1008'> 0.54361E+09 </wgt>
-   <wgt id='1009'> 0.54562E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.16187791E+02 0.75467716E-02 0.19276577E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.25258918E+00 0.25258918E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.25935849E+03 0.25935849E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.15525866E+01 0.57554635E+01 -.17458728E+03 0.17475224E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.15525866E+01 -.57554635E+01 -.84518621E+02 0.84858842E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.35621928E+00 0.23568702E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24342E+09 </wgt>
-   <wgt id='1003'> 0.76019E+08 </wgt>
-   <wgt id='1004'> 0.11208E+09 </wgt>
-   <wgt id='1005'> 0.17642E+09 </wgt>
-   <wgt id='1006'> 0.55094E+08 </wgt>
-   <wgt id='1007'> 0.23159E+09 </wgt>
-   <wgt id='1008'> 0.36451E+09 </wgt>
-   <wgt id='1009'> 0.11384E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.34343236E+02 0.75467716E-02 0.16622136E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.15107482E+01 0.15107482E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.19517777E+03 0.19517777E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.40871509E+01 0.12875447E+02 -.42412863E+02 0.44759612E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.40871509E+01 -.12875447E+02 -.15125416E+03 0.15192891E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.49019792E+00 0.18575800E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.20720E+09 </wgt>
-   <wgt id='1003'> 0.10015E+09 </wgt>
-   <wgt id='1004'> 0.11709E+09 </wgt>
-   <wgt id='1005'> 0.15686E+09 </wgt>
-   <wgt id='1006'> 0.75815E+08 </wgt>
-   <wgt id='1007'> 0.21444E+09 </wgt>
-   <wgt id='1008'> 0.28729E+09 </wgt>
-   <wgt id='1009'> 0.13886E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12253149E+02 0.75467716E-02 0.21722320E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.20330319E+04 0.20330319E+04 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.18462532E-01 0.18462532E-01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.11740774E+01 -.56606220E+00 0.40134530E+03 0.40137494E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.11740774E+01 0.56606220E+00 0.16316681E+04 0.16316754E+04 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.60297446E+00 0.19679709E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.18395E+09 </wgt>
-   <wgt id='1003'> 0.13391E+09 </wgt>
-   <wgt id='1004'> 0.10771E+09 </wgt>
-   <wgt id='1005'> 0.12810E+09 </wgt>
-   <wgt id='1006'> 0.93257E+08 </wgt>
-   <wgt id='1007'> 0.25590E+09 </wgt>
-   <wgt id='1008'> 0.30437E+09 </wgt>
-   <wgt id='1009'> 0.22158E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.18763854E+02 0.75467716E-02 0.20817228E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.10945853E+01 0.10945853E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.80414517E+02 0.80414517E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.27606197E+01 0.15728129E+01 -.72005723E+01 0.91669517E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.27606197E+01 -.15728129E+01 -.72119360E+02 0.72342151E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.21561966E+00 0.29752183E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28885E+09 </wgt>
-   <wgt id='1003'> 0.47188E+08 </wgt>
-   <wgt id='1004'> 0.10930E+09 </wgt>
-   <wgt id='1005'> 0.20413E+09 </wgt>
-   <wgt id='1006'> 0.33348E+08 </wgt>
-   <wgt id='1007'> 0.24639E+09 </wgt>
-   <wgt id='1008'> 0.46016E+09 </wgt>
-   <wgt id='1009'> 0.75172E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.11449149E+02 0.75467716E-02 0.21081070E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.32123649E+00 0.32123649E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.10201441E+03 0.10201441E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.26146970E+01 -.67934006E+00 -.34407427E+02 0.34831870E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.26146970E+01 0.67934006E+00 -.67285750E+02 0.67503780E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.22191301E+00 0.31059451E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.29827E+09 </wgt>
-   <wgt id='1003'> 0.48774E+08 </wgt>
-   <wgt id='1004'> 0.10883E+09 </wgt>
-   <wgt id='1005'> 0.20988E+09 </wgt>
-   <wgt id='1006'> 0.34321E+08 </wgt>
-   <wgt id='1007'> 0.24910E+09 </wgt>
-   <wgt id='1008'> 0.48037E+09 </wgt>
-   <wgt id='1009'> 0.78553E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13873196E+02 0.75467716E-02 0.21212349E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.18453251E+02 0.18453251E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.26074751E+01 0.26074751E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.17222286E+01 -.17484438E+01 0.14712536E+02 0.15638793E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.17222286E+01 0.17484438E+01 0.11332398E+01 0.54219332E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.16860396E+00 0.33852914E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.32332E+09 </wgt>
-   <wgt id='1003'> 0.37136E+08 </wgt>
-   <wgt id='1004'> 0.10860E+09 </wgt>
-   <wgt id='1005'> 0.22702E+09 </wgt>
-   <wgt id='1006'> 0.26077E+08 </wgt>
-   <wgt id='1007'> 0.25046E+09 </wgt>
-   <wgt id='1008'> 0.52358E+09 </wgt>
-   <wgt id='1009'> 0.60139E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13418761E+02 0.75467716E-02 0.21750180E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.14524171E+03 0.14524171E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.30993706E+00 0.30993706E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.46871796E+00 -.11263431E+01 0.12268756E+03 0.12278361E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.46871796E+00 0.11263431E+01 0.22244212E+02 0.22768032E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.20808326E+00 0.32161459E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30026E+09 </wgt>
-   <wgt id='1003'> 0.46235E+08 </wgt>
-   <wgt id='1004'> 0.10765E+09 </wgt>
-   <wgt id='1005'> 0.20900E+09 </wgt>
-   <wgt id='1006'> 0.32183E+08 </wgt>
-   <wgt id='1007'> 0.25621E+09 </wgt>
-   <wgt id='1008'> 0.49742E+09 </wgt>
-   <wgt id='1009'> 0.76591E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.16147130E+02 0.75467716E-02 0.19747976E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.11145055E+03 0.11145055E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.58485538E+00 0.58485538E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.33596378E+01 0.37896306E+01 0.26453885E+02 0.27341297E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.33596378E+01 -.37896306E+01 0.84411811E+02 0.84694110E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.28239755E+00 0.26422042E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.26787E+09 </wgt>
-   <wgt id='1003'> 0.60732E+08 </wgt>
-   <wgt id='1004'> 0.11122E+09 </wgt>
-   <wgt id='1005'> 0.19264E+09 </wgt>
-   <wgt id='1006'> 0.43676E+08 </wgt>
-   <wgt id='1007'> 0.23595E+09 </wgt>
-   <wgt id='1008'> 0.40865E+09 </wgt>
-   <wgt id='1009'> 0.92649E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.34645645E+02 0.75467716E-02 0.16378239E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.29889355E+01 0.29889355E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.10039701E+03 0.10039701E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.80710169E+01 -.12146909E+02 -.24589754E+02 0.28972999E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.80710169E+01 0.12146909E+02 -.72818318E+02 0.74412944E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999993E+00 0.49109760E+00 0.18597388E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.20861E+09 </wgt>
-   <wgt id='1003'> 0.99928E+08 </wgt>
-   <wgt id='1004'> 0.11755E+09 </wgt>
-   <wgt id='1005'> 0.15856E+09 </wgt>
-   <wgt id='1006'> 0.75954E+08 </wgt>
-   <wgt id='1007'> 0.21325E+09 </wgt>
-   <wgt id='1008'> 0.28763E+09 </wgt>
-   <wgt id='1009'> 0.13778E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.29149576E+02 0.75467716E-02 0.21279804E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.46930336E+01 0.46930336E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.45263782E+02 0.45263782E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.55875156E+00 -.22546684E+01 -.43591840E+02 0.43905970E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.55875156E+00 0.22546684E+01 0.30210916E+01 0.60508452E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999983E+00 0.21361091E+00 0.29768549E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28351E+09 </wgt>
-   <wgt id='1003'> 0.47102E+08 </wgt>
-   <wgt id='1004'> 0.10848E+09 </wgt>
-   <wgt id='1005'> 0.19885E+09 </wgt>
-   <wgt id='1006'> 0.33038E+08 </wgt>
-   <wgt id='1007'> 0.25116E+09 </wgt>
-   <wgt id='1008'> 0.46041E+09 </wgt>
-   <wgt id='1009'> 0.76491E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.20252677E+02 0.75467716E-02 0.18023924E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.68576137E+01 0.68576137E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.14953122E+02 0.14953122E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.18885087E+01 -.86143379E+01 -.58105859E+01 0.11559680E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.18885087E+01 0.86143379E+01 -.22849224E+01 0.10251056E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.36622884E+00 0.22843249E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24663E+09 </wgt>
-   <wgt id='1003'> 0.76566E+08 </wgt>
-   <wgt id='1004'> 0.11441E+09 </wgt>
-   <wgt id='1005'> 0.18245E+09 </wgt>
-   <wgt id='1006'> 0.56642E+08 </wgt>
-   <wgt id='1007'> 0.22155E+09 </wgt>
-   <wgt id='1008'> 0.35330E+09 </wgt>
-   <wgt id='1009'> 0.10968E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.10744289E+02 0.75467716E-02 0.11800000E+00
-        2 -1    0    0  502    0 0.00000000E+00 0.00000000E+00 0.20746836E+03 0.20746862E+03 0.33000000E+00 0.0000E+00 0.9000E+01
-       -2 -1    0    0    0  501 0.00000000E+00 0.00000000E+00 -.54998346E-02 0.27226925E+00 0.27221370E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  502    0 -.17044882E+01 -.10562146E+01 0.13578946E+03 0.13588557E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  501 0.17044882E+01 0.10562146E+01 0.71673400E+02 0.71855321E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.40406974E+00 0.24954343E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.23611E+09 </wgt>
-   <wgt id='1003'> 0.89322E+08 </wgt>
-   <wgt id='1004'> 0.10821E+09 </wgt>
-   <wgt id='1005'> 0.16519E+09 </wgt>
-   <wgt id='1006'> 0.62494E+08 </wgt>
-   <wgt id='1007'> 0.25281E+09 </wgt>
-   <wgt id='1008'> 0.38595E+09 </wgt>
-   <wgt id='1009'> 0.14600E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.26904314E+02 0.75467716E-02 0.18710314E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.33324371E+00 0.33324371E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.54302757E+03 0.54302757E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.59912121E+01 0.38996730E+01 -.61688787E+02 0.62279198E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.59912121E+01 -.38996730E+01 -.48100554E+03 0.48108161E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.41757466E+00 0.20835200E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.21998E+09 </wgt>
-   <wgt id='1003'> 0.88290E+08 </wgt>
-   <wgt id='1004'> 0.11313E+09 </wgt>
-   <wgt id='1005'> 0.16090E+09 </wgt>
-   <wgt id='1006'> 0.64583E+08 </wgt>
-   <wgt id='1007'> 0.22657E+09 </wgt>
-   <wgt id='1008'> 0.32224E+09 </wgt>
-   <wgt id='1009'> 0.12934E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.18406157E+02 0.75467716E-02 0.19128891E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.15147741E+00 0.15147741E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.55913721E+03 0.55913721E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.46507014E+01 0.41866824E+01 -.13235039E+03 0.13258158E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.46507014E+01 -.41866824E+01 -.42663534E+03 0.42670712E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.41614191E+00 0.21565755E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.22403E+09 </wgt>
-   <wgt id='1003'> 0.88593E+08 </wgt>
-   <wgt id='1004'> 0.11236E+09 </wgt>
-   <wgt id='1005'> 0.16275E+09 </wgt>
-   <wgt id='1006'> 0.64362E+08 </wgt>
-   <wgt id='1007'> 0.23027E+09 </wgt>
-   <wgt id='1008'> 0.33354E+09 </wgt>
-   <wgt id='1009'> 0.13190E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.15664766E+02 0.75467716E-02 0.19295575E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.49920094E+02 0.49920094E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.12288884E+01 0.12288884E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.12973056E+00 0.59222456E+01 0.31010504E+02 0.31919135E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.12973056E+00 -.59222456E+01 0.17680702E+02 0.19229848E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.28723220E+00 0.26202853E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27043E+09 </wgt>
-   <wgt id='1003'> 0.61316E+08 </wgt>
-   <wgt id='1004'> 0.11205E+09 </wgt>
-   <wgt id='1005'> 0.19593E+09 </wgt>
-   <wgt id='1006'> 0.44424E+08 </wgt>
-   <wgt id='1007'> 0.23177E+09 </wgt>
-   <wgt id='1008'> 0.40526E+09 </wgt>
-   <wgt id='1009'> 0.91885E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.15030031E+02 0.75467716E-02 0.20245690E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.45687089E+03 0.45687089E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.12361361E+00 0.12361361E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.40670526E+01 -.94380925E+00 0.10317943E+03 0.10337078E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.40670526E+01 0.94380925E+00 0.35356784E+03 0.35362372E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.36818001E+00 0.24032184E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.23883E+09 </wgt>
-   <wgt id='1003'> 0.79826E+08 </wgt>
-   <wgt id='1004'> 0.11032E+09 </wgt>
-   <wgt id='1005'> 0.17036E+09 </wgt>
-   <wgt id='1006'> 0.56943E+08 </wgt>
-   <wgt id='1007'> 0.24070E+09 </wgt>
-   <wgt id='1008'> 0.37168E+09 </wgt>
-   <wgt id='1009'> 0.12424E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.25509387E+02 0.75467716E-02 0.21505520E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.14098658E+02 0.14098658E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.11538843E+02 0.11538843E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.13905365E+01 -.12206977E+01 -.10490809E+02 0.11643486E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.13905365E+01 0.12206977E+01 0.13050624E+02 0.13994016E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000003E+01 0.19097731E+00 0.31597334E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.29807E+09 </wgt>
-   <wgt id='1003'> 0.42266E+08 </wgt>
-   <wgt id='1004'> 0.10808E+09 </wgt>
-   <wgt id='1005'> 0.20830E+09 </wgt>
-   <wgt id='1006'> 0.29537E+08 </wgt>
-   <wgt id='1007'> 0.25356E+09 </wgt>
-   <wgt id='1008'> 0.48869E+09 </wgt>
-   <wgt id='1009'> 0.69293E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.22102407E+02 0.75467716E-02 0.19213663E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.24036687E+00 0.24036687E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.50809454E+03 0.50809454E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.54899430E+01 0.26277796E+01 -.43646846E+03 0.43653620E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.54899430E+01 -.26277796E+01 -.71385709E+02 0.71798706E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.39519879E+00 0.21927884E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.22703E+09 </wgt>
-   <wgt id='1003'> 0.84251E+08 </wgt>
-   <wgt id='1004'> 0.11221E+09 </wgt>
-   <wgt id='1005'> 0.16471E+09 </wgt>
-   <wgt id='1006'> 0.61122E+08 </wgt>
-   <wgt id='1007'> 0.23103E+09 </wgt>
-   <wgt id='1008'> 0.33914E+09 </wgt>
-   <wgt id='1009'> 0.12585E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.36770565E+02 0.75467716E-02 0.15776496E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.55450014E+02 0.55450014E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.60959157E+01 0.60959157E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.13347852E+02 0.11652591E+02 0.27032600E+02 0.32661897E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.13347852E+02 -.11652591E+02 0.22321498E+02 0.28884032E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.51524187E+00 0.17978574E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.20444E+09 </wgt>
-   <wgt id='1003'> 0.10381E+09 </wgt>
-   <wgt id='1004'> 0.11873E+09 </wgt>
-   <wgt id='1005'> 0.15694E+09 </wgt>
-   <wgt id='1006'> 0.79688E+08 </wgt>
-   <wgt id='1007'> 0.21036E+09 </wgt>
-   <wgt id='1008'> 0.27806E+09 </wgt>
-   <wgt id='1009'> 0.14119E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.25815306E+02 0.75467716E-02 0.21052011E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.17544446E+01 0.17544446E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.94963105E+02 0.94963105E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.24965118E+01 -.11652622E+01 -.90444549E+02 0.90608481E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.24965118E+01 0.11652622E+01 -.27641118E+01 0.61090688E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.22127616E+00 0.29038897E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27920E+09 </wgt>
-   <wgt id='1003'> 0.48611E+08 </wgt>
-   <wgt id='1004'> 0.10888E+09 </wgt>
-   <wgt id='1005'> 0.19656E+09 </wgt>
-   <wgt id='1006'> 0.34223E+08 </wgt>
-   <wgt id='1007'> 0.24879E+09 </wgt>
-   <wgt id='1008'> 0.44913E+09 </wgt>
-   <wgt id='1009'> 0.78196E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.44718569E+02 0.75467716E-02 0.18171397E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.53885241E+02 0.53885241E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.92778205E+01 0.92778205E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.37139026E+01 0.75723217E+01 -.61815433E+01 0.11464493E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.37139026E+01 -.75723217E+01 0.50788963E+02 0.51698568E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.42052681E+00 0.20662580E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.22231E+09 </wgt>
-   <wgt id='1003'> 0.88131E+08 </wgt>
-   <wgt id='1004'> 0.11414E+09 </wgt>
-   <wgt id='1005'> 0.16406E+09 </wgt>
-   <wgt id='1006'> 0.65039E+08 </wgt>
-   <wgt id='1007'> 0.22232E+09 </wgt>
-   <wgt id='1008'> 0.31957E+09 </wgt>
-   <wgt id='1009'> 0.12669E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13707978E+02 0.75467716E-02 0.20770801E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.41193322E+02 0.41193322E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.11404073E+01 0.11404073E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.30295431E+01 -.12015412E+01 0.31690634E+02 0.32202611E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.30295431E+01 0.12015412E+01 0.83622806E+01 0.10131119E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.19571225E+00 0.31587286E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30725E+09 </wgt>
-   <wgt id='1003'> 0.42798E+08 </wgt>
-   <wgt id='1004'> 0.10939E+09 </wgt>
-   <wgt id='1005'> 0.21731E+09 </wgt>
-   <wgt id='1006'> 0.30270E+08 </wgt>
-   <wgt id='1007'> 0.24592E+09 </wgt>
-   <wgt id='1008'> 0.48853E+09 </wgt>
-   <wgt id='1009'> 0.68050E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.10619566E+02 0.75467716E-02 0.21828252E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.40666097E+01 0.40666097E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.69329970E+01 0.69329970E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.86024208E+00 0.41364361E+00 0.92709977E+00 0.48847345E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.86024208E+00 -.41364361E+00 -.37934871E+01 0.61148722E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.12435949E+00 0.38768472E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.36075E+09 </wgt>
-   <wgt id='1003'> 0.27667E+08 </wgt>
-   <wgt id='1004'> 0.10752E+09 </wgt>
-   <wgt id='1005'> 0.25078E+09 </wgt>
-   <wgt id='1006'> 0.19233E+08 </wgt>
-   <wgt id='1007'> 0.25706E+09 </wgt>
-   <wgt id='1008'> 0.59960E+09 </wgt>
-   <wgt id='1009'> 0.45986E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13782772E+02 0.75467716E-02 0.20179479E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.17003798E+00 0.17003798E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.27929762E+03 0.27929762E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.29815604E+00 -.42808749E+01 -.19315853E+03 0.19326335E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.29815604E+00 0.42808749E+01 -.85969049E+02 0.86204305E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999996E+00 0.33194550E+00 0.25306074E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.25216E+09 </wgt>
-   <wgt id='1003'> 0.71893E+08 </wgt>
-   <wgt id='1004'> 0.11044E+09 </wgt>
-   <wgt id='1005'> 0.18007E+09 </wgt>
-   <wgt id='1006'> 0.51340E+08 </wgt>
-   <wgt id='1007'> 0.24006E+09 </wgt>
-   <wgt id='1008'> 0.39139E+09 </wgt>
-   <wgt id='1009'> 0.11159E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12164683E+02 0.75467716E-02 0.20649822E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.88238058E+02 0.88238058E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.41926218E+00 0.41926218E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.54497424E+00 -.34280224E+01 0.31591563E+02 0.32127327E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.54497424E+00 0.34280224E+01 0.56227233E+02 0.56529993E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999997E+00 0.22834412E+00 0.30047173E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.29373E+09 </wgt>
-   <wgt id='1003'> 0.49835E+08 </wgt>
-   <wgt id='1004'> 0.10960E+09 </wgt>
-   <wgt id='1005'> 0.20815E+09 </wgt>
-   <wgt id='1006'> 0.35316E+08 </wgt>
-   <wgt id='1007'> 0.24469E+09 </wgt>
-   <wgt id='1008'> 0.46471E+09 </wgt>
-   <wgt id='1009'> 0.78846E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.10459827E+02 0.75467716E-02 0.21707075E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.37160395E+01 0.37160395E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.73605231E+01 0.73605231E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.38882952E+00 -.12899374E+01 0.14380034E+00 0.48914012E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.38882952E+00 0.12899374E+01 -.37882839E+01 0.61851614E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999992E+00 0.12903221E+00 0.38169802E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.35702E+09 </wgt>
-   <wgt id='1003'> 0.28650E+08 </wgt>
-   <wgt id='1004'> 0.10773E+09 </wgt>
-   <wgt id='1005'> 0.24868E+09 </wgt>
-   <wgt id='1006'> 0.19957E+08 </wgt>
-   <wgt id='1007'> 0.25574E+09 </wgt>
-   <wgt id='1008'> 0.59034E+09 </wgt>
-   <wgt id='1009'> 0.47374E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.10370028E+02 0.75467716E-02 0.21396887E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.29012028E+00 0.29012028E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.92666293E+02 0.92666293E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.17867846E+01 0.10754074E+01 -.40206571E+02 0.40534028E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.17867846E+01 -.10754074E+01 -.52169602E+02 0.52422385E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.20852706E+00 0.32478350E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30780E+09 </wgt>
-   <wgt id='1003'> 0.46068E+08 </wgt>
-   <wgt id='1004'> 0.10827E+09 </wgt>
-   <wgt id='1005'> 0.21548E+09 </wgt>
-   <wgt id='1006'> 0.32251E+08 </wgt>
-   <wgt id='1007'> 0.25240E+09 </wgt>
-   <wgt id='1008'> 0.50231E+09 </wgt>
-   <wgt id='1009'> 0.75182E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.17707536E+02 0.75467716E-02 0.19222764E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.48753825E+02 0.48753825E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.16078575E+01 0.16078575E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.34204074E+01 -.50124040E+01 0.36124322E+02 0.36930746E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.34204074E+01 0.50124040E+01 0.11021646E+02 0.13430936E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.29763298E+00 0.25646437E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.26545E+09 </wgt>
-   <wgt id='1003'> 0.63461E+08 </wgt>
-   <wgt id='1004'> 0.11218E+09 </wgt>
-   <wgt id='1005'> 0.19255E+09 </wgt>
-   <wgt id='1006'> 0.46033E+08 </wgt>
-   <wgt id='1007'> 0.23111E+09 </wgt>
-   <wgt id='1008'> 0.39665E+09 </wgt>
-   <wgt id='1009'> 0.94829E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.19838491E+02 0.75467716E-02 0.18134709E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.73716659E+02 0.73716659E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.13347245E+01 0.13347245E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.69503086E+01 -.49422212E+01 0.43338051E+02 0.44418566E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.69503086E+01 0.49422212E+01 0.29043883E+02 0.30632817E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.37002591E+00 0.22531072E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24262E+09 </wgt>
-   <wgt id='1003'> 0.77501E+08 </wgt>
-   <wgt id='1004'> 0.11421E+09 </wgt>
-   <wgt id='1005'> 0.17916E+09 </wgt>
-   <wgt id='1006'> 0.57229E+08 </wgt>
-   <wgt id='1007'> 0.22213E+09 </wgt>
-   <wgt id='1008'> 0.34847E+09 </wgt>
-   <wgt id='1009'> 0.11131E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.32434568E+02 0.75467716E-02 0.21484939E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.38040730E+03 0.38040730E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.12393838E+01 0.12393838E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.15257432E+01 0.11259962E+01 0.40314459E+01 0.64759799E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.15257432E+01 -.11259962E+01 0.37513647E+03 0.37517070E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999989E+00 0.24299729E+00 0.26587650E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.25103E+09 </wgt>
-   <wgt id='1003'> 0.53760E+08 </wgt>
-   <wgt id='1004'> 0.10812E+09 </wgt>
-   <wgt id='1005'> 0.17549E+09 </wgt>
-   <wgt id='1006'> 0.37583E+08 </wgt>
-   <wgt id='1007'> 0.25334E+09 </wgt>
-   <wgt id='1008'> 0.41121E+09 </wgt>
-   <wgt id='1009'> 0.88061E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13977726E+02 0.75467716E-02 0.20912389E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.20745439E+00 0.20745439E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.23544553E+03 0.23544553E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.27756008E+01 -.11593749E+01 -.18856013E+03 0.18864268E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.27756008E+01 0.11593749E+01 -.46677951E+02 0.47010309E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.28544451E+00 0.27656829E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.26745E+09 </wgt>
-   <wgt id='1003'> 0.62565E+08 </wgt>
-   <wgt id='1004'> 0.10914E+09 </wgt>
-   <wgt id='1005'> 0.18872E+09 </wgt>
-   <wgt id='1006'> 0.44148E+08 </wgt>
-   <wgt id='1007'> 0.24735E+09 </wgt>
-   <wgt id='1008'> 0.42774E+09 </wgt>
-   <wgt id='1009'> 0.10006E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.15766371E+02 0.75467716E-02 0.20199839E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.83757347E+00 0.83757347E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.74196011E+02 0.74196011E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.57844353E+00 0.42159923E+01 -.58973627E+02 0.59313471E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.57844353E+00 -.42159923E+01 -.14384811E+02 0.15720114E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999993E+00 0.24346984E+00 0.28430188E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28306E+09 </wgt>
-   <wgt id='1003'> 0.52748E+08 </wgt>
-   <wgt id='1004'> 0.11041E+09 </wgt>
-   <wgt id='1005'> 0.20207E+09 </wgt>
-   <wgt id='1006'> 0.37655E+08 </wgt>
-   <wgt id='1007'> 0.24025E+09 </wgt>
-   <wgt id='1008'> 0.43970E+09 </wgt>
-   <wgt id='1009'> 0.81940E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.11434025E+02 0.75467716E-02 0.21918112E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.12659097E+02 0.12659097E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.25818772E+01 0.25818772E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.51676599E+00 -.47259421E-01 0.93217040E+01 0.10452437E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.51676599E+00 0.47259421E-01 0.75551560E+00 0.47885368E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.12370337E+00 0.38637630E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.35815E+09 </wgt>
-   <wgt id='1003'> 0.27561E+08 </wgt>
-   <wgt id='1004'> 0.10736E+09 </wgt>
-   <wgt id='1005'> 0.24862E+09 </wgt>
-   <wgt id='1006'> 0.19132E+08 </wgt>
-   <wgt id='1007'> 0.25806E+09 </wgt>
-   <wgt id='1008'> 0.59758E+09 </wgt>
-   <wgt id='1009'> 0.45986E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12513180E+02 0.75467716E-02 0.21277235E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.40132690E+01 0.40132690E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.97538742E+01 0.97538742E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.20980221E+01 0.10087597E+01 -.66232376E+01 0.84484655E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.20980221E+01 -.10087597E+01 0.88263245E+00 0.53186777E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.15935993E+00 0.34902289E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.33243E+09 </wgt>
-   <wgt id='1003'> 0.35137E+08 </wgt>
-   <wgt id='1004'> 0.10849E+09 </wgt>
-   <wgt id='1005'> 0.23318E+09 </wgt>
-   <wgt id='1006'> 0.24647E+08 </wgt>
-   <wgt id='1007'> 0.25114E+09 </wgt>
-   <wgt id='1008'> 0.53981E+09 </wgt>
-   <wgt id='1009'> 0.57056E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.11839397E+02 0.75467716E-02 0.21934252E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.40157450E+01 0.40157450E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.87263581E+01 0.87263581E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.25187407E+00 0.30503081E+00 -.62052514E+01 0.77943331E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.25187407E+00 -.30503081E+00 0.14946382E+01 0.49477700E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.12500967E+00 0.38591451E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.35747E+09 </wgt>
-   <wgt id='1003'> 0.27859E+08 </wgt>
-   <wgt id='1004'> 0.10733E+09 </wgt>
-   <wgt id='1005'> 0.24808E+09 </wgt>
-   <wgt id='1006'> 0.19334E+08 </wgt>
-   <wgt id='1007'> 0.25823E+09 </wgt>
-   <wgt id='1008'> 0.59687E+09 </wgt>
-   <wgt id='1009'> 0.46516E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.31154086E+02 0.75467716E-02 0.19922429E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.49118242E+02 0.49118242E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.49400032E+01 0.49400032E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.41891645E+01 0.22341330E+01 -.23280142E+01 0.70746095E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.41891645E+01 -.22341330E+01 0.46506254E+02 0.46983636E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999987E+00 0.29484291E+00 0.25512053E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.25685E+09 </wgt>
-   <wgt id='1003'> 0.63589E+08 </wgt>
-   <wgt id='1004'> 0.11091E+09 </wgt>
-   <wgt id='1005'> 0.18420E+09 </wgt>
-   <wgt id='1006'> 0.45601E+08 </wgt>
-   <wgt id='1007'> 0.23759E+09 </wgt>
-   <wgt id='1008'> 0.39458E+09 </wgt>
-   <wgt id='1009'> 0.97687E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.11664159E+02 0.75467716E-02 0.21636041E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.14403010E+00 0.14403010E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.23615309E+03 0.23615309E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.67046700E+00 0.13845840E+01 -.55378387E+02 0.55598762E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.67046700E+00 -.13845840E+01 -.18063067E+03 0.18069836E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.27767943E+00 0.29353765E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27538E+09 </wgt>
-   <wgt id='1003'> 0.61585E+08 </wgt>
-   <wgt id='1004'> 0.10786E+09 </wgt>
-   <wgt id='1005'> 0.19204E+09 </wgt>
-   <wgt id='1006'> 0.42947E+08 </wgt>
-   <wgt id='1007'> 0.25497E+09 </wgt>
-   <wgt id='1008'> 0.45399E+09 </wgt>
-   <wgt id='1009'> 0.10152E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.19752445E+02 0.75467716E-02 0.18085383E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.73811238E+01 0.73811238E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.13214759E+02 0.13214759E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.84905695E+01 -.16872925E+01 -.21699634E+01 0.10086400E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.84905695E+01 0.16872925E+01 -.36636714E+01 0.10509482E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.36102332E+00 0.23042625E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24842E+09 </wgt>
-   <wgt id='1003'> 0.75555E+08 </wgt>
-   <wgt id='1004'> 0.11430E+09 </wgt>
-   <wgt id='1005'> 0.18359E+09 </wgt>
-   <wgt id='1006'> 0.55837E+08 </wgt>
-   <wgt id='1007'> 0.22188E+09 </wgt>
-   <wgt id='1008'> 0.35638E+09 </wgt>
-   <wgt id='1009'> 0.10839E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.19412438E+02 0.75467716E-02 0.20027232E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.57054357E+02 0.57054357E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.16512443E+01 0.16512443E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.43723799E+01 -.12956944E+01 0.49366640E+02 0.49799113E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.43723799E+01 0.12956944E+01 0.60364729E+01 0.89064884E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.25832731E+00 0.27473314E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27543E+09 </wgt>
-   <wgt id='1003'> 0.55809E+08 </wgt>
-   <wgt id='1004'> 0.11072E+09 </wgt>
-   <wgt id='1005'> 0.19719E+09 </wgt>
-   <wgt id='1006'> 0.39954E+08 </wgt>
-   <wgt id='1007'> 0.23859E+09 </wgt>
-   <wgt id='1008'> 0.42491E+09 </wgt>
-   <wgt id='1009'> 0.86095E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12904370E+02 0.75467716E-02 0.20585346E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.84192140E+00 0.84192140E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.49447242E+02 0.49447242E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.29088127E+00 0.35716468E+01 -.14215796E+02 0.15395458E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.29088127E+00 -.35716468E+01 -.34389525E+02 0.34893705E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999997E+00 0.20738463E+00 0.30896677E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30283E+09 </wgt>
-   <wgt id='1003'> 0.45214E+08 </wgt>
-   <wgt id='1004'> 0.10972E+09 </wgt>
-   <wgt id='1005'> 0.21482E+09 </wgt>
-   <wgt id='1006'> 0.32075E+08 </wgt>
-   <wgt id='1007'> 0.24405E+09 </wgt>
-   <wgt id='1008'> 0.47785E+09 </wgt>
-   <wgt id='1009'> 0.71346E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.30000000E+02 0.75467716E-02 0.19020677E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.42716503E+00 0.42716503E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.54937680E+03 0.54937680E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.20046391E+01 -.61624650E+01 -.40094219E+02 0.40885583E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.20046391E+01 0.61624650E+01 -.50885542E+03 0.50891838E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.40002692E+00 0.21244202E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.22162E+09 </wgt>
-   <wgt id='1003'> 0.85011E+08 </wgt>
-   <wgt id='1004'> 0.11256E+09 </wgt>
-   <wgt id='1005'> 0.16129E+09 </wgt>
-   <wgt id='1006'> 0.61868E+08 </wgt>
-   <wgt id='1007'> 0.22930E+09 </wgt>
-   <wgt id='1008'> 0.32856E+09 </wgt>
-   <wgt id='1009'> 0.12604E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.24378444E+02 0.75467716E-02 0.17290250E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.59850625E+02 0.59850625E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.24824659E+01 0.24824659E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.61182356E+01 0.91468519E+01 0.22748215E+02 0.25703482E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.61182356E+01 -.91468519E+01 0.34619944E+02 0.36629608E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.42073375E+00 0.20759145E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.22801E+09 </wgt>
-   <wgt id='1003'> 0.86907E+08 </wgt>
-   <wgt id='1004'> 0.11580E+09 </wgt>
-   <wgt id='1005'> 0.17073E+09 </wgt>
-   <wgt id='1006'> 0.65071E+08 </wgt>
-   <wgt id='1007'> 0.21778E+09 </wgt>
-   <wgt id='1008'> 0.32107E+09 </wgt>
-   <wgt id='1009'> 0.12237E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.15886585E+02 0.75467716E-02 0.21775215E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.56754310E+01 0.56754310E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.11117376E+02 0.11117376E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.38432520E+00 -.10740168E+01 0.39396312E+01 0.62379413E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.38432520E+00 0.10740168E+01 -.93815758E+01 0.10554865E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.14809533E+00 0.35725693E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.33319E+09 </wgt>
-   <wgt id='1003'> 0.32920E+08 </wgt>
-   <wgt id='1004'> 0.10761E+09 </wgt>
-   <wgt id='1005'> 0.23183E+09 </wgt>
-   <wgt id='1006'> 0.22905E+08 </wgt>
-   <wgt id='1007'> 0.25648E+09 </wgt>
-   <wgt id='1008'> 0.55254E+09 </wgt>
-   <wgt id='1009'> 0.54591E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.26571058E+02 0.75467716E-02 0.21748981E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.26469894E+01 0.26469894E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.66681519E+02 0.66681519E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.11113612E+01 -.51208994E+00 -.64282305E+02 0.64465511E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.11113612E+01 0.51208994E+00 0.24777467E+00 0.48629983E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000002E+01 0.18244332E+00 0.31670585E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.29570E+09 </wgt>
-   <wgt id='1003'> 0.40537E+08 </wgt>
-   <wgt id='1004'> 0.10766E+09 </wgt>
-   <wgt id='1005'> 0.20583E+09 </wgt>
-   <wgt id='1006'> 0.28217E+08 </wgt>
-   <wgt id='1007'> 0.25620E+09 </wgt>
-   <wgt id='1008'> 0.48983E+09 </wgt>
-   <wgt id='1009'> 0.67149E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.79516325E+02 0.75467716E-02 0.13500636E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.39037463E+03 0.39037463E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.45325050E+01 0.45325050E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.22715197E+02 0.34924494E+02 0.17694411E+03 0.18184336E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.22715197E+02 -.34924494E+02 0.20889802E+03 0.21306378E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.68831296E+00 0.14296632E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.17093E+09 </wgt>
-   <wgt id='1003'> 0.13354E+09 </wgt>
-   <wgt id='1004'> 0.12329E+09 </wgt>
-   <wgt id='1005'> 0.13625E+09 </wgt>
-   <wgt id='1006'> 0.10646E+09 </wgt>
-   <wgt id='1007'> 0.20008E+09 </wgt>
-   <wgt id='1008'> 0.22111E+09 </wgt>
-   <wgt id='1009'> 0.17275E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.24883860E+02 0.75467716E-02 0.18538727E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.26734340E+02 0.26734340E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.57903666E+01 0.57903666E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.62304974E+01 -.42448151E+01 0.21857230E+02 0.23593772E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.62304974E+01 0.42448151E+01 -.91325701E+00 0.89309346E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.35358157E+00 0.23200063E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24656E+09 </wgt>
-   <wgt id='1003'> 0.74550E+08 </wgt>
-   <wgt id='1004'> 0.11345E+09 </wgt>
-   <wgt id='1005'> 0.18086E+09 </wgt>
-   <wgt id='1006'> 0.54686E+08 </wgt>
-   <wgt id='1007'> 0.22508E+09 </wgt>
-   <wgt id='1008'> 0.35882E+09 </wgt>
-   <wgt id='1009'> 0.10849E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.30000000E+02 0.75467716E-02 0.20188249E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.43914380E+00 0.43914380E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.56788162E+03 0.56788162E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.40129559E+01 0.14761341E+01 -.54386513E+03 0.54390225E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.40129559E+01 -.14761341E+01 -.23577343E+02 0.24418515E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.33716420E+00 0.23449196E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.23358E+09 </wgt>
-   <wgt id='1003'> 0.73033E+08 </wgt>
-   <wgt id='1004'> 0.11043E+09 </wgt>
-   <wgt id='1005'> 0.16677E+09 </wgt>
-   <wgt id='1006'> 0.52146E+08 </wgt>
-   <wgt id='1007'> 0.24014E+09 </wgt>
-   <wgt id='1008'> 0.36267E+09 </wgt>
-   <wgt id='1009'> 0.11340E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.11373868E+02 0.75467716E-02 0.20818014E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.84989708E+02 0.84989708E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.38053101E+00 0.38053101E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.29912490E+01 -.10669419E+01 0.45356083E+02 0.45709411E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.29912490E+01 0.10669419E+01 0.39253093E+02 0.39660828E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999994E+00 0.22130174E+00 0.30761163E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.29864E+09 </wgt>
-   <wgt id='1003'> 0.48432E+08 </wgt>
-   <wgt id='1004'> 0.10930E+09 </wgt>
-   <wgt id='1005'> 0.21105E+09 </wgt>
-   <wgt id='1006'> 0.34227E+08 </wgt>
-   <wgt id='1007'> 0.24639E+09 </wgt>
-   <wgt id='1008'> 0.47576E+09 </wgt>
-   <wgt id='1009'> 0.77156E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.16375533E+02 0.75467716E-02 0.19794341E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.28170363E+01 0.28170363E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.23797890E+02 0.23797890E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.20216119E+01 0.45507569E+01 -.31941380E+01 0.75557144E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.20216119E+01 -.45507569E+01 -.17786716E+02 0.19059212E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.25573470E+00 0.27917975E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28251E+09 </wgt>
-   <wgt id='1003'> 0.55039E+08 </wgt>
-   <wgt id='1004'> 0.11114E+09 </wgt>
-   <wgt id='1005'> 0.20302E+09 </wgt>
-   <wgt id='1006'> 0.39553E+08 </wgt>
-   <wgt id='1007'> 0.23638E+09 </wgt>
-   <wgt id='1008'> 0.43179E+09 </wgt>
-   <wgt id='1009'> 0.84121E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.99217180E+01 0.75467716E-02 0.21680248E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.20816462E+00 0.20816462E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.11822433E+03 0.11822433E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.26073166E-01 -.14215500E+01 -.67437093E+02 0.67615627E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.26073166E-01 0.14215500E+01 -.50579071E+02 0.50816866E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.22359526E+00 0.32383529E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30324E+09 </wgt>
-   <wgt id='1003'> 0.49625E+08 </wgt>
-   <wgt id='1004'> 0.10778E+09 </wgt>
-   <wgt id='1005'> 0.21131E+09 </wgt>
-   <wgt id='1006'> 0.34581E+08 </wgt>
-   <wgt id='1007'> 0.25545E+09 </wgt>
-   <wgt id='1008'> 0.50085E+09 </wgt>
-   <wgt id='1009'> 0.81963E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.30025010E+02 0.75467716E-02 0.19368639E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.43120486E+01 0.43120486E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.52266410E+02 0.52266410E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.20164604E-01 -.57804924E+01 0.58276067E+00 0.74728916E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.20164604E-01 0.57804924E+01 -.48537123E+02 0.49105568E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.32405203E+00 0.24262435E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24969E+09 </wgt>
-   <wgt id='1003'> 0.69259E+08 </wgt>
-   <wgt id='1004'> 0.11192E+09 </wgt>
-   <wgt id='1005'> 0.18068E+09 </wgt>
-   <wgt id='1006'> 0.50118E+08 </wgt>
-   <wgt id='1007'> 0.23243E+09 </wgt>
-   <wgt id='1008'> 0.37525E+09 </wgt>
-   <wgt id='1009'> 0.10409E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.20646064E+02 0.75467716E-02 0.21196719E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.17995039E+03 0.17995039E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.59219095E+00 0.59219095E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.16528296E+01 0.18545324E+01 0.12298169E+02 0.13397989E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.16528296E+01 -.18545324E+01 0.16706003E+03 0.16714459E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999996E+00 0.22281352E+00 0.29266942E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27970E+09 </wgt>
-   <wgt id='1003'> 0.49064E+08 </wgt>
-   <wgt id='1004'> 0.10863E+09 </wgt>
-   <wgt id='1005'> 0.19645E+09 </wgt>
-   <wgt id='1006'> 0.34461E+08 </wgt>
-   <wgt id='1007'> 0.25029E+09 </wgt>
-   <wgt id='1008'> 0.45265E+09 </wgt>
-   <wgt id='1009'> 0.79403E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.23216653E+02 0.75467716E-02 0.19427503E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.96319291E+02 0.96319291E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.13990265E+01 0.13990265E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.23916735E+01 0.51370792E+01 0.96838913E+01 0.12164598E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.23916735E+01 -.51370792E+01 0.85236373E+02 0.85553720E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.30959093E+00 0.24833315E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.25497E+09 </wgt>
-   <wgt id='1003'> 0.66232E+08 </wgt>
-   <wgt id='1004'> 0.11181E+09 </wgt>
-   <wgt id='1005'> 0.18433E+09 </wgt>
-   <wgt id='1006'> 0.47881E+08 </wgt>
-   <wgt id='1007'> 0.23297E+09 </wgt>
-   <wgt id='1008'> 0.38407E+09 </wgt>
-   <wgt id='1009'> 0.99767E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.11574804E+02 0.75467716E-02 0.20704156E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.18024025E+00 0.18024025E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.18582988E+03 0.18582988E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.33696904E+01 0.20777037E+00 -.91575648E+02 0.91758309E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.33696904E+01 -.20777037E+00 -.94073993E+02 0.94251812E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.28719284E+00 0.27793915E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27110E+09 </wgt>
-   <wgt id='1003'> 0.62734E+08 </wgt>
-   <wgt id='1004'> 0.10950E+09 </wgt>
-   <wgt id='1005'> 0.19195E+09 </wgt>
-   <wgt id='1006'> 0.44418E+08 </wgt>
-   <wgt id='1007'> 0.24524E+09 </wgt>
-   <wgt id='1008'> 0.42987E+09 </wgt>
-   <wgt id='1009'> 0.99477E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.19275020E+02 0.75467716E-02 0.21868415E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.24899127E+03 0.24899127E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.37303154E+00 0.37303154E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.64441381E+00 0.45392891E+00 0.23268085E+03 0.23272965E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.64441381E+00 -.45392891E+00 0.15937380E+02 0.16634645E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.21694311E+00 0.30592548E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28419E+09 </wgt>
-   <wgt id='1003'> 0.48296E+08 </wgt>
-   <wgt id='1004'> 0.10745E+09 </wgt>
-   <wgt id='1005'> 0.19742E+09 </wgt>
-   <wgt id='1006'> 0.33553E+08 </wgt>
-   <wgt id='1007'> 0.25751E+09 </wgt>
-   <wgt id='1008'> 0.47315E+09 </wgt>
-   <wgt id='1009'> 0.80411E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.11451600E+02 0.75467716E-02 0.20857442E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.10120230E+04 0.10120230E+04 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.32395297E-01 0.32395297E-01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.28814202E+01 -.11594979E+01 0.59645819E+03 0.59648480E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.28814202E+01 0.11594979E+01 0.41553240E+03 0.41557059E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.47662654E+00 0.21960819E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.21285E+09 </wgt>
-   <wgt id='1003'> 0.10438E+09 </wgt>
-   <wgt id='1004'> 0.10923E+09 </wgt>
-   <wgt id='1005'> 0.15032E+09 </wgt>
-   <wgt id='1006'> 0.73716E+08 </wgt>
-   <wgt id='1007'> 0.24679E+09 </wgt>
-   <wgt id='1008'> 0.33965E+09 </wgt>
-   <wgt id='1009'> 0.16655E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.18414511E+02 0.75467716E-02 0.19014132E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.79411740E+02 0.79411740E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.10675191E+01 0.10675191E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.34176937E+01 -.55218457E+01 0.19378306E+02 0.20970936E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.34176937E+01 0.55218457E+01 0.58965915E+02 0.59508323E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999994E+00 0.31823844E+00 0.24627543E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.25698E+09 </wgt>
-   <wgt id='1003'> 0.67623E+08 </wgt>
-   <wgt id='1004'> 0.11257E+09 </wgt>
-   <wgt id='1005'> 0.18704E+09 </wgt>
-   <wgt id='1006'> 0.49220E+08 </wgt>
-   <wgt id='1007'> 0.22924E+09 </wgt>
-   <wgt id='1008'> 0.38089E+09 </wgt>
-   <wgt id='1009'> 0.10023E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14653248E+02 0.75467716E-02 0.21771063E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.37140531E+00 0.37140531E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.14453056E+03 0.14453056E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.37999322E+00 0.10898250E+01 -.12647414E+03 0.12656670E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.37999322E+00 -.10898250E+01 -.17685013E+02 0.18335261E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.19828252E+00 0.32310022E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.30139E+09 </wgt>
-   <wgt id='1003'> 0.44072E+08 </wgt>
-   <wgt id='1004'> 0.10762E+09 </wgt>
-   <wgt id='1005'> 0.20971E+09 </wgt>
-   <wgt id='1006'> 0.30666E+08 </wgt>
-   <wgt id='1007'> 0.25644E+09 </wgt>
-   <wgt id='1008'> 0.49971E+09 </wgt>
-   <wgt id='1009'> 0.73074E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.12998510E+02 0.75467716E-02 0.21062721E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.31728880E+00 0.31728880E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.13312891E+03 0.13312891E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.37498917E-01 0.27351144E+01 -.10294573E+03 0.10308926E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.37498917E-01 -.27351144E+01 -.29865888E+02 0.30356935E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999997E+00 0.23411996E+00 0.30098420E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28925E+09 </wgt>
-   <wgt id='1003'> 0.51441E+08 </wgt>
-   <wgt id='1004'> 0.10886E+09 </wgt>
-   <wgt id='1005'> 0.20360E+09 </wgt>
-   <wgt id='1006'> 0.36209E+08 </wgt>
-   <wgt id='1007'> 0.24890E+09 </wgt>
-   <wgt id='1008'> 0.46550E+09 </wgt>
-   <wgt id='1009'> 0.82786E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.20263280E+02 0.75467716E-02 0.20785405E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.32073011E+00 0.32073011E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.32005144E+03 0.32005144E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.21658128E+01 0.24008550E+01 -.29224475E+03 0.29230043E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.21658128E+01 -.24008550E+01 -.27485956E+02 0.28071741E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999992E+00 0.28609703E+00 0.26510900E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.25772E+09 </wgt>
-   <wgt id='1003'> 0.62579E+08 </wgt>
-   <wgt id='1004'> 0.10936E+09 </wgt>
-   <wgt id='1005'> 0.18223E+09 </wgt>
-   <wgt id='1006'> 0.44248E+08 </wgt>
-   <wgt id='1007'> 0.24606E+09 </wgt>
-   <wgt id='1008'> 0.41003E+09 </wgt>
-   <wgt id='1009'> 0.99561E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.10285625E+02 0.75467716E-02 0.21519325E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.77373034E+03 0.77373034E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.34183126E-01 0.34183126E-01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.25924491E+00 -.18005312E+01 0.30978454E+03 0.30982554E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.25924491E+00 0.18005312E+01 0.46391161E+03 0.46393898E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999994E+00 0.45189149E+00 0.23607007E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.22257E+09 </wgt>
-   <wgt id='1003'> 0.10003E+09 </wgt>
-   <wgt id='1004'> 0.10806E+09 </wgt>
-   <wgt id='1005'> 0.15551E+09 </wgt>
-   <wgt id='1006'> 0.69890E+08 </wgt>
-   <wgt id='1007'> 0.25372E+09 </wgt>
-   <wgt id='1008'> 0.36511E+09 </wgt>
-   <wgt id='1009'> 0.16410E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.30824446E+02 0.75467716E-02 0.16590879E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.11020111E+04 0.11020111E+04 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.21554831E+00 0.21554831E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.11285269E+02 -.76628284E+01 0.74468737E+03 0.74482713E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.11285269E+02 0.76628284E+01 0.35710814E+03 0.35739949E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.54962023E+00 0.17177228E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.19174E+09 </wgt>
-   <wgt id='1003'> 0.11223E+09 </wgt>
-   <wgt id='1004'> 0.11715E+09 </wgt>
-   <wgt id='1005'> 0.14523E+09 </wgt>
-   <wgt id='1006'> 0.85005E+08 </wgt>
-   <wgt id='1007'> 0.21429E+09 </wgt>
-   <wgt id='1008'> 0.26567E+09 </wgt>
-   <wgt id='1009'> 0.15550E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.15118938E+02 0.75467716E-02 0.19612954E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.78427278E+02 0.78427278E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.72864407E+00 0.72864407E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.12753628E+01 -.51592792E+01 0.25185782E+02 0.26165977E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.12753628E+01 0.51592792E+01 0.52512851E+02 0.52989945E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.27690514E+00 0.26717792E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27232E+09 </wgt>
-   <wgt id='1003'> 0.59419E+08 </wgt>
-   <wgt id='1004'> 0.11148E+09 </wgt>
-   <wgt id='1005'> 0.19628E+09 </wgt>
-   <wgt id='1006'> 0.42827E+08 </wgt>
-   <wgt id='1007'> 0.23468E+09 </wgt>
-   <wgt id='1008'> 0.41323E+09 </wgt>
-   <wgt id='1009'> 0.90162E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14256503E+02 0.75467716E-02 0.21292794E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.18075050E+03 0.18075050E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.28111661E+00 0.28111661E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.13192030E+01 0.18806137E+01 0.15171927E+03 0.15180944E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.13192030E+01 -.18806137E+01 0.28750112E+02 0.29222182E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  4  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999998E+00 0.24270559E+00 0.29750409E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.28318E+09 </wgt>
-   <wgt id='1003'> 0.53528E+08 </wgt>
-   <wgt id='1004'> 0.10846E+09 </wgt>
-   <wgt id='1005'> 0.19858E+09 </wgt>
-   <wgt id='1006'> 0.37537E+08 </wgt>
-   <wgt id='1007'> 0.25130E+09 </wgt>
-   <wgt id='1008'> 0.46013E+09 </wgt>
-   <wgt id='1009'> 0.86976E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.21016172E+02 0.75467716E-02 0.19043095E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.62559835E+03 0.62559835E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.17650282E+00 0.17650282E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.60439916E+01 -.22053527E+01 0.51670598E+03 0.51676741E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.60439916E+01 0.22053527E+01 0.10871586E+03 0.10900744E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.42210405E+00 0.21192071E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.22088E+09 </wgt>
-   <wgt id='1003'> 0.89736E+08 </wgt>
-   <wgt id='1004'> 0.11251E+09 </wgt>
-   <wgt id='1005'> 0.16070E+09 </wgt>
-   <wgt id='1006'> 0.65283E+08 </wgt>
-   <wgt id='1007'> 0.22950E+09 </wgt>
-   <wgt id='1008'> 0.32776E+09 </wgt>
-   <wgt id='1009'> 0.13315E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.17668122E+02 0.75467716E-02 0.20321488E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.65285794E+00 0.65285794E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.11953693E+03 0.11953693E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.31508006E+01 -.25329418E+01 -.16630109E+02 0.17748067E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.31508006E+01 0.25329418E+01 -.10225396E+03 0.10244172E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.25392518E+00 0.27755629E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27499E+09 </wgt>
-   <wgt id='1003'> 0.55122E+08 </wgt>
-   <wgt id='1004'> 0.11019E+09 </wgt>
-   <wgt id='1005'> 0.19592E+09 </wgt>
-   <wgt id='1006'> 0.39273E+08 </wgt>
-   <wgt id='1007'> 0.24144E+09 </wgt>
-   <wgt id='1008'> 0.42927E+09 </wgt>
-   <wgt id='1009'> 0.86052E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.13788366E+02 0.75467716E-02 0.21293414E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.24918501E+03 0.24918501E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.19074085E+00 0.19074085E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.14723386E+01 0.17616957E+01 0.20571979E+03 0.20578628E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.14723386E+01 -.17616957E+01 0.43274472E+02 0.43589463E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.27820701E+00 0.28431462E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.27061E+09 </wgt>
-   <wgt id='1003'> 0.61358E+08 </wgt>
-   <wgt id='1004'> 0.10846E+09 </wgt>
-   <wgt id='1005'> 0.18978E+09 </wgt>
-   <wgt id='1006'> 0.43028E+08 </wgt>
-   <wgt id='1007'> 0.25131E+09 </wgt>
-   <wgt id='1008'> 0.43973E+09 </wgt>
-   <wgt id='1009'> 0.99702E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14641932E+02 0.75467716E-02 0.20308738E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.42791369E+01 0.42791369E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.12525083E+02 0.12525083E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.35877620E+01 0.19109338E+01 0.31942073E+00 0.62221969E+01 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.35877620E+01 -.19109338E+01 -.85653668E+01 0.10582023E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  1  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.21922941E+00 0.30261320E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.29996E+09 </wgt>
-   <wgt id='1003'> 0.47581E+08 </wgt>
-   <wgt id='1004'> 0.11022E+09 </wgt>
-   <wgt id='1005'> 0.21375E+09 </wgt>
-   <wgt id='1006'> 0.33906E+08 </wgt>
-   <wgt id='1007'> 0.24131E+09 </wgt>
-   <wgt id='1008'> 0.46803E+09 </wgt>
-   <wgt id='1009'> 0.74240E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.30000000E+02 0.75467716E-02 0.19380304E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.12369197E+02 0.12369197E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 -.00000000E+00 -.00000000E+00 -.32680562E+02 0.32680562E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.57566551E+01 0.11717176E+00 -.31084907E+02 0.31961137E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 -.57566551E+01 -.11717176E+00 0.10773542E+02 0.13088622E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000001E+01 0.34292220E+00 0.23453349E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24126E+09 </wgt>
-   <wgt id='1003'> 0.73306E+08 </wgt>
-   <wgt id='1004'> 0.11190E+09 </wgt>
-   <wgt id='1005'> 0.17454E+09 </wgt>
-   <wgt id='1006'> 0.53036E+08 </wgt>
-   <wgt id='1007'> 0.23254E+09 </wgt>
-   <wgt id='1008'> 0.36273E+09 </wgt>
-   <wgt id='1009'> 0.11022E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.10329754E+02 0.75467716E-02 0.21463426E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.11361541E+01 0.11361541E+01 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.23479169E+02 0.23479169E+02 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.19353433E+01 0.17793730E+00 -.90285188E+01 0.10362498E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.19353433E+01 -.17793730E+00 -.13314496E+02 0.14252825E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.14304049E+00 0.36380108E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.34381E+09 </wgt>
-   <wgt id='1003'> 0.31635E+08 </wgt>
-   <wgt id='1004'> 0.10816E+09 </wgt>
-   <wgt id='1005'> 0.24043E+09 </wgt>
-   <wgt id='1006'> 0.22122E+08 </wgt>
-   <wgt id='1007'> 0.25311E+09 </wgt>
-   <wgt id='1008'> 0.56267E+09 </wgt>
-   <wgt id='1009'> 0.51773E+08 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.10401270E+02 0.75467716E-02 0.21412810E+00
-       21 -1    0    0  503  502 0.00000000E+00 0.00000000E+00 0.49660422E+03 0.49660422E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  501  503 0.00000000E+00 0.00000000E+00 -.54463098E-01 0.54463098E-01 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.95750691E+00 -.18149240E+01 0.20703729E+03 0.20710080E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  502 0.95750691E+00 0.18149240E+01 0.28951246E+03 0.28955788E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999999E+00 0.38780401E+00 0.25303460E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.23964E+09 </wgt>
-   <wgt id='1003'> 0.85696E+08 </wgt>
-   <wgt id='1004'> 0.10824E+09 </wgt>
-   <wgt id='1005'> 0.16773E+09 </wgt>
-   <wgt id='1006'> 0.59978E+08 </wgt>
-   <wgt id='1007'> 0.25257E+09 </wgt>
-   <wgt id='1008'> 0.39135E+09 </wgt>
-   <wgt id='1009'> 0.13995E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.21981433E+02 0.75467716E-02 0.19813070E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.21991547E+00 0.21991547E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 -.00000000E+00 -.00000000E+00 -.54928306E+03 0.54928306E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 -.33505358E+01 -.36375066E+01 -.59125812E+02 0.59518141E+02 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 0.33505358E+01 0.36375066E+01 -.48993734E+03 0.48998484E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  3  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.99999994E+00 0.37376186E+00 0.22878774E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.23135E+09 </wgt>
-   <wgt id='1003'> 0.80467E+08 </wgt>
-   <wgt id='1004'> 0.11111E+09 </wgt>
-   <wgt id='1005'> 0.16619E+09 </wgt>
-   <wgt id='1006'> 0.57807E+08 </wgt>
-   <wgt id='1007'> 0.23655E+09 </wgt>
-   <wgt id='1008'> 0.35385E+09 </wgt>
-   <wgt id='1009'> 0.12307E+09 </wgt>
-  </rwgt>
-  </event>
-  <event>
-  4      0 0.15466170E+09 0.14090630E+02 0.75467716E-02 0.20024995E+00
-       21 -1    0    0  501  502 0.00000000E+00 0.00000000E+00 0.34453202E+03 0.34453202E+03 0.00000000E+00 0.0000E+00 0.9000E+01
-       21 -1    0    0  502  503 0.00000000E+00 0.00000000E+00 -.14406924E+00 0.14406924E+00 0.00000000E+00 0.0000E+00 0.9000E+01
-        5  1    1    2  501    0 0.41326091E+00 -.45455539E+01 0.23557499E+03 0.23566607E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-       -5  1    1    2    0  503 -.41326091E+00 0.45455539E+01 0.10881297E+03 0.10901002E+03 0.47000000E+01 0.0000E+00 0.9000E+01
-#aMCatNLO 1  5  2  0  0 0.00000000E+00 0.00000000E+00 9  0  0 0.10000000E+01 0.35498143E+00 0.24370745E+01 0.00000000E+00 0.00000000E+00
-  <rwgt>
-   <wgt id='1001'> 0.15466E+09 </wgt>
-   <wgt id='1002'> 0.24435E+09 </wgt>
-   <wgt id='1003'> 0.76688E+08 </wgt>
-   <wgt id='1004'> 0.11073E+09 </wgt>
-   <wgt id='1005'> 0.17493E+09 </wgt>
-   <wgt id='1006'> 0.54902E+08 </wgt>
-   <wgt id='1007'> 0.23857E+09 </wgt>
-   <wgt id='1008'> 0.37692E+09 </wgt>
-   <wgt id='1009'> 0.11829E+09 </wgt>
-  </rwgt>
-  </event>
-</LesHouchesEvents>
Index: examples/Pythia8/generatePileUp.cmnd
===================================================================
--- examples/Pythia8/generatePileUp.cmnd	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,35 +1,0 @@
-! File: generatePileUp.cmnd
-! This file contains commands to be read in for a Pythia8 run.
-! Lines not beginning with a letter or digit are comments.
-! Names are case-insensitive  -  but spellings-sensitive!
-! The changes here are illustrative, not always physics-motivated.
-
-! 1) Settings that will be used in a main program.
-Main:numberOfEvents = 1000          ! number of events to generate
-Main:timesAllowErrors = 3          ! abort run after this many flawed events
-
-! 2) Settings related to output in init(), next() and stat().
-Init:showChangedSettings = on      ! list changed settings
-Init:showAllSettings = off         ! list all settings
-Init:showChangedParticleData = on  ! list changed particle data
-Init:showAllParticleData = off     ! list all particle data
-Next:numberCount = 5            ! print message every n events
-Next:numberShowLHA = 1             ! print LHA information n times
-Next:numberShowInfo = 1            ! print event information n times
-Next:numberShowProcess = 1         ! print process record n times
-Next:numberShowEvent = 1           ! print event record n times
-Stat:showPartonLevel = on          ! additional statistics on MPI
-Random:setSeed = on
-Random:setSeed = 10
-
-! 3) Beam parameter settings. Values below agree with default ones.
-Beams:idA = 2212                   ! first beam, p = 2212, pbar = -2212
-Beams:idB = 2212                   ! second beam, p = 2212, pbar = -2212
-Beams:eCM = 13000.                 ! CM energy of collision
-
-! 4a) Pick processes and kinematics cuts.
-SoftQCD:all = on                   ! Allow total sigma = elastic/SD/DD/ND
-
-! 4b) Other settings. Can be expanded as desired.
-Tune:pp = 5                         ! use Tune 5
-
Index: examples/Pythia8/generatePileUpCMS.cmnd
===================================================================
--- examples/Pythia8/generatePileUpCMS.cmnd	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,53 +1,0 @@
-! Lines not beginning with a letter or digit are comments.
-! Names are case-insensitive  -  but spellings-sensitive!
-! The changes here are illustrative, not always physics-motivated.
-
-! 1) Settings that will be used in a main program.
-Main:numberOfEvents = 100000          ! number of events to generate
-Main:timesAllowErrors = 3          ! abort run after this many flawed events
-
-! 2) Settings related to output in init(), next() and stat().
-Init:showChangedSettings = on      ! list changed settings
-Init:showAllSettings = off         ! list all settings
-Init:showChangedParticleData = on  ! list changed particle data
-Init:showAllParticleData = off     ! list all particle data
-Next:numberCount = 5            ! print message every n events
-Next:numberShowLHA = 1             ! print LHA information n times
-Next:numberShowInfo = 1            ! print event information n times
-Next:numberShowProcess = 1         ! print process record n times
-Next:numberShowEvent = 1           ! print event record n times
-Stat:showPartonLevel = on          ! additional statistics on MPI
-Random:setSeed = on
-Random:setSeed = 10
-
-! 3) Beam parameter settings. Values below agree with default ones.
-Beams:idA = 2212                   ! first beam, p = 2212, pbar = -2212
-Beams:idB = 2212                   ! second beam, p = 2212, pbar = -2212
-Beams:eCM = 14000.                 ! CM energy of collision
-
-! Common Settings
-
-Tune:preferLHAPDF = 2
-Main:timesAllowErrors = 10000
-Check:epTolErr = 0.01
-Beams:setProductionScalesFromLHEF = off
-SLHA:keepSM = on
-SLHA:minMassSM = 1000.
-ParticleDecays:limitTau0 = on
-ParticleDecays:tau0Max = 10
-ParticleDecays:allowPhotonRadiation = on
-
-! CUEP8M1 Settings
-
-Tune:pp 14
-Tune:ee 7
-MultipartonInteractions:pT0Ref=2.4024
-MultipartonInteractions:ecmPow=0.25208
-MultipartonInteractions:expPow=1.6
-
-! Process parameters
-
-SoftQCD:nonDiffractive = on
-SoftQCD:singleDiffractive = on
-SoftQCD:doubleDiffractive = on
-
Index: examples/converter_card.tcl
===================================================================
--- examples/converter_card.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
+++ examples/converter_card.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -0,0 +1,17 @@
+#######################################
+# Order of execution of various modules
+#######################################
+
+set ExecutionPath {
+  TreeWriter
+}
+
+##################
+# ROOT tree writer
+##################
+
+module TreeWriter TreeWriter {
+# add Branch InputArray BranchName BranchClass
+  add Branch Delphes/stableParticles Particle GenParticle
+}
+
Index: examples/delphes_card_ATLAS.tcl
===================================================================
--- examples/delphes_card_ATLAS.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
+++ examples/delphes_card_ATLAS.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -0,0 +1,553 @@
+#######################################
+# Order of execution of various modules
+#######################################
+
+set ExecutionPath {
+  ParticlePropagator
+
+  ChargedHadronTrackingEfficiency
+  ElectronTrackingEfficiency
+  MuonTrackingEfficiency
+
+  ChargedHadronMomentumSmearing
+  ElectronEnergySmearing
+  MuonMomentumSmearing
+
+  TrackMerger
+  Calorimeter
+  EFlowMerger
+
+  PhotonEfficiency
+  PhotonIsolation
+
+  ElectronEfficiency
+  ElectronIsolation
+
+  MuonEfficiency
+  MuonIsolation
+
+  MissingET
+
+  GenJetFinder
+  FastJetFinder
+
+  ConstituentFilter
+
+  BTagging
+  TauTagging
+
+  UniqueObjectFinder
+
+  ScalarHT
+
+  TreeWriter
+}
+
+#################################
+# Propagate particles in cylinder
+#################################
+
+module ParticlePropagator ParticlePropagator {
+  set InputArray Delphes/stableParticles
+
+  set OutputArray stableParticles
+  set ChargedHadronOutputArray chargedHadrons
+  set ElectronOutputArray electrons
+  set MuonOutputArray muons
+
+  # radius of the magnetic field coverage, in m
+  set Radius 1.15
+  # half-length of the magnetic field coverage, in m
+  set HalfLength 3.51
+
+  # magnetic field
+  set Bz 2.0
+}
+
+####################################
+# Charged hadron tracking efficiency
+####################################
+
+module Efficiency ChargedHadronTrackingEfficiency {
+  set InputArray ParticlePropagator/chargedHadrons
+  set OutputArray chargedHadrons
+
+  # add EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for charged hadrons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0)                  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.60) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0)                  * (0.85) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+##############################
+# Electron tracking efficiency
+##############################
+
+module Efficiency ElectronTrackingEfficiency {
+  set InputArray ParticlePropagator/electrons
+  set OutputArray electrons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for electrons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.73) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e2) * (0.95) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e2)                * (0.99) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.50) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e2) * (0.83) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2)                * (0.90) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+##########################
+# Muon tracking efficiency
+##########################
+
+module Efficiency MuonTrackingEfficiency {
+  set InputArray ParticlePropagator/muons
+  set OutputArray muons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for muons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.75) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0)                  * (0.99) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0)                  * (0.98) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+########################################
+# Momentum resolution for charged tracks
+########################################
+
+module MomentumSmearing ChargedHadronMomentumSmearing {
+  set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
+  set OutputArray chargedHadrons
+
+  # set ResolutionFormula {resolution formula as a function of eta and pt}
+
+  # resolution formula for charged hadrons
+  set ResolutionFormula {                  (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.02) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.01) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2)                * (0.05)}
+}
+
+#################################
+# Energy resolution for electrons
+#################################
+
+module EnergySmearing ElectronEnergySmearing {
+  set InputArray ElectronTrackingEfficiency/electrons
+  set OutputArray electrons
+
+  # set ResolutionFormula {resolution formula as a function of eta and energy}
+
+  set ResolutionFormula {                  (abs(eta) <= 2.5) * (energy > 0.1   && energy <= 2.5e1) * (energy*0.015) + \
+                                           (abs(eta) <= 2.5) * (energy > 2.5e1)                    * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                         (abs(eta) > 2.5 && abs(eta) <= 3.0)                                       * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                         (abs(eta) > 3.0 && abs(eta) <= 5.0)                                       * sqrt(energy^2*0.107^2 + energy*2.08^2)}
+
+}
+
+###############################
+# Momentum resolution for muons
+###############################
+
+module MomentumSmearing MuonMomentumSmearing {
+  set InputArray MuonTrackingEfficiency/muons
+  set OutputArray muons
+
+  # set ResolutionFormula {resolution formula as a function of eta and pt}
+
+  # resolution formula for muons
+  set ResolutionFormula {                  (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e1) * (0.03) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2)                * (0.05)}
+}
+
+##############
+# Track merger
+##############
+
+module Merger TrackMerger {
+# add InputArray InputArray
+  add InputArray ChargedHadronMomentumSmearing/chargedHadrons
+  add InputArray ElectronEnergySmearing/electrons
+  set OutputArray tracks
+}
+
+#############
+# Calorimeter
+#############
+
+module Calorimeter Calorimeter {
+  set ParticleInputArray ParticlePropagator/stableParticles
+  set TrackInputArray TrackMerger/tracks
+
+  set TowerOutputArray towers
+  set PhotonOutputArray photons
+
+  set EFlowTrackOutputArray eflowTracks
+  set EFlowTowerOutputArray eflowTowers
+
+  set pi [expr {acos(-1)}]
+
+  # lists of the edges of each tower in eta and phi
+  # each list starts with the lower edge of the first tower
+  # the list ends with the higher edged of the last tower
+
+  # 10 degrees towers
+  set PhiBins {}
+  for {set i -18} {$i <= 18} {incr i} {
+    add PhiBins [expr {$i * $pi/18.0}]
+  }
+  foreach eta {-3.2 -2.5 -2.4 -2.3 -2.2 -2.1 -2 -1.9 -1.8 -1.7 -1.6 -1.5 -1.4 -1.3 -1.2 -1.1 -1 -0.9 -0.8 -0.7 -0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5 2.6 3.3} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # 20 degrees towers
+  set PhiBins {}
+  for {set i -9} {$i <= 9} {incr i} {
+    add PhiBins [expr {$i * $pi/9.0}]
+  }
+  foreach eta {-4.9 -4.7 -4.5 -4.3 -4.1 -3.9 -3.7 -3.5 -3.3 -3 -2.8 -2.6 2.8 3 3.2 3.5 3.7 3.9 4.1 4.3 4.5 4.7 4.9} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # default energy fractions {abs(PDG code)} {Fecal Fhcal}
+  add EnergyFraction {0} {0.0 1.0}
+  # energy fractions for e, gamma and pi0
+  add EnergyFraction {11} {1.0 0.0}
+  add EnergyFraction {22} {1.0 0.0}
+  add EnergyFraction {111} {1.0 0.0}
+  # energy fractions for muon, neutrinos and neutralinos
+  add EnergyFraction {12} {0.0 0.0}
+  add EnergyFraction {13} {0.0 0.0}
+  add EnergyFraction {14} {0.0 0.0}
+  add EnergyFraction {16} {0.0 0.0}
+  add EnergyFraction {1000022} {0.0 0.0}
+  add EnergyFraction {1000023} {0.0 0.0}
+  add EnergyFraction {1000025} {0.0 0.0}
+  add EnergyFraction {1000035} {0.0 0.0}
+  add EnergyFraction {1000045} {0.0 0.0}
+  # energy fractions for K0short and Lambda
+  add EnergyFraction {310} {0.3 0.7}
+  add EnergyFraction {3122} {0.3 0.7}
+
+  # set ECalResolutionFormula {resolution formula as a function of eta and energy}
+  # http://arxiv.org/pdf/physics/0608012v1 jinst8_08_s08003
+  # http://villaolmo.mib.infn.it/ICATPP9th_2005/Calorimetry/Schram.p.pdf
+  # http://www.physics.utoronto.ca/~krieger/procs/ComoProceedings.pdf
+  set ECalResolutionFormula {                  (abs(eta) <= 3.2) * sqrt(energy^2*0.0017^2 + energy*0.101^2) + \
+                             (abs(eta) > 3.2 && abs(eta) <= 4.9) * sqrt(energy^2*0.0350^2 + energy*0.285^2)}
+
+  # set HCalResolutionFormula {resolution formula as a function of eta and energy}
+  # http://arxiv.org/pdf/hep-ex/0004009v1
+  # http://villaolmo.mib.infn.it/ICATPP9th_2005/Calorimetry/Schram.p.pdf
+  set HCalResolutionFormula {                  (abs(eta) <= 1.7) * sqrt(energy^2*0.0302^2 + energy*0.5205^2 + 1.59^2) + \
+                             (abs(eta) > 1.7 && abs(eta) <= 3.2) * sqrt(energy^2*0.0500^2 + energy*0.706^2) + \
+                             (abs(eta) > 3.2 && abs(eta) <= 4.9) * sqrt(energy^2*0.9420^2 + energy*0.075^2)}
+}
+
+####################
+# Energy flow merger
+####################
+
+module Merger EFlowMerger {
+# add InputArray InputArray
+  add InputArray Calorimeter/eflowTracks
+  add InputArray Calorimeter/eflowTowers
+  add InputArray MuonMomentumSmearing/muons
+  set OutputArray eflow
+}
+
+###################
+# Photon efficiency
+###################
+
+module Efficiency PhotonEfficiency {
+  set InputArray Calorimeter/photons
+  set OutputArray photons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # efficiency formula for photons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.5)                                   * (0.00)}
+}
+
+##################
+# Photon isolation
+##################
+
+module Isolation PhotonIsolation {
+  set CandidateInputArray PhotonEfficiency/photons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray photons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+#####################
+# Electron efficiency
+#####################
+
+module Efficiency ElectronEfficiency {
+  set InputArray ElectronEnergySmearing/electrons
+  set OutputArray electrons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # efficiency formula for electrons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.5)                                   * (0.00)}
+}
+
+####################
+# Electron isolation
+####################
+
+module Isolation ElectronIsolation {
+  set CandidateInputArray ElectronEfficiency/electrons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray electrons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+#################
+# Muon efficiency
+#################
+
+module Efficiency MuonEfficiency {
+  set InputArray MuonMomentumSmearing/muons
+  set OutputArray muons
+
+  # set EfficiencyFormula {efficiency as a function of eta and pt}
+
+  # efficiency formula for muons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.7) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.7)                                   * (0.00)}
+}
+
+################
+# Muon isolation
+################
+
+module Isolation MuonIsolation {
+  set CandidateInputArray MuonEfficiency/muons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray muons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+###################
+# Missing ET merger
+###################
+
+module Merger MissingET {
+# add InputArray InputArray
+  add InputArray EFlowMerger/eflow
+  set MomentumOutputArray momentum
+}
+
+##################
+# Scalar HT merger
+##################
+
+module Merger ScalarHT {
+# add InputArray InputArray
+  add InputArray UniqueObjectFinder/jets
+  add InputArray UniqueObjectFinder/electrons
+  add InputArray UniqueObjectFinder/photons
+  add InputArray MuonIsolation/muons
+  set EnergyOutputArray energy
+}
+
+#####################
+# MC truth jet finder
+#####################
+
+module FastJetFinder GenJetFinder {
+  set InputArray Delphes/stableParticles
+
+  set OutputArray jets
+
+  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 6
+  set ParameterR 0.7
+
+  set ConeRadius 0.5
+  set SeedThreshold 1.0
+  set ConeAreaFraction 1.0
+  set AdjacencyCut 2.0
+  set OverlapThreshold 0.75
+
+  set MaxIterations 100
+  set MaxPairSize 2
+  set Iratch 1
+
+  set JetPTMin 20.0
+}
+
+############
+# Jet finder
+############
+
+module FastJetFinder FastJetFinder {
+#  set InputArray Calorimeter/towers
+  set InputArray EFlowMerger/eflow
+
+  set OutputArray jets
+
+  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 6
+  set ParameterR 0.7
+
+  set ConeRadius 0.5
+  set SeedThreshold 1.0
+  set ConeAreaFraction 1.0
+  set AdjacencyCut 2.0
+  set OverlapThreshold 0.75
+
+  set MaxIterations 100
+  set MaxPairSize 2
+  set Iratch 1
+
+  set JetPTMin 20.0
+}
+
+####################
+# Constituent filter
+####################
+
+module ConstituentFilter ConstituentFilter {
+
+# add JetInputArray InputArray
+  add JetInputArray GenJetFinder/jets
+  add JetInputArray FastJetFinder/jets
+
+# add ConstituentInputArray InputArray OutputArray
+  add ConstituentInputArray Delphes/stableParticles stableParticles
+  add ConstituentInputArray Calorimeter/eflowTracks eflowTracks
+  add ConstituentInputArray Calorimeter/eflowTowers eflowTowers
+  add ConstituentInputArray MuonMomentumSmearing/muons muons
+}
+
+###########
+# b-tagging
+###########
+
+module BTagging BTagging {
+  set PartonInputArray Delphes/partons
+  set JetInputArray FastJetFinder/jets
+
+  set DeltaR 0.5
+
+  set PartonPTMin 1.0
+
+  set PartonEtaMax 2.5
+
+  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
+  # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
+  # gluon's PDG code has the lowest priority
+
+  # default efficiency formula (misidentification rate)
+  add EfficiencyFormula {0} {0.001}
+  # efficiency formula for c-jets (misidentification rate)
+  add EfficiencyFormula {4} {0.1}
+  # efficiency formula for b-jets
+  add EfficiencyFormula {5} {0.4}
+}
+
+module TauTagging TauTagging {
+  set ParticleInputArray Delphes/allParticles
+  set PartonInputArray Delphes/partons
+  set JetInputArray FastJetFinder/jets
+
+  set DeltaR 0.5
+
+  set TauPTMin 1.0
+
+  set TauEtaMax 2.5
+
+  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
+
+  # default efficiency formula (misidentification rate)
+  add EfficiencyFormula {0} {0.001}
+  # efficiency formula for tau-jets
+  add EfficiencyFormula {15} {0.4}
+}
+
+#####################################################
+# Find uniquely identified photons/electrons/tau/jets
+#####################################################
+
+module UniqueObjectFinder UniqueObjectFinder {
+# earlier arrays take precedence over later ones
+# add InputArray InputArray OutputArray
+  add InputArray PhotonIsolation/photons photons
+  add InputArray ElectronIsolation/electrons electrons
+  add InputArray FastJetFinder/jets jets
+}
+
+##################
+# ROOT tree writer
+##################
+
+module TreeWriter TreeWriter {
+# add Branch InputArray BranchName BranchClass
+  add Branch Delphes/allParticles Particle GenParticle
+  add Branch TrackMerger/tracks Track Track
+  add Branch Calorimeter/towers Tower Tower
+  add Branch ConstituentFilter/eflowTracks EFlowTrack Track
+  add Branch ConstituentFilter/eflowTowers EFlowTower Tower
+  add Branch ConstituentFilter/muons EFlowMuon Muon
+  add Branch GenJetFinder/jets GenJet Jet
+  add Branch UniqueObjectFinder/jets Jet Jet
+  add Branch UniqueObjectFinder/electrons Electron Electron
+  add Branch UniqueObjectFinder/photons Photon Photon
+  add Branch MuonIsolation/muons Muon Muon
+  add Branch MissingET/momentum MissingET MissingET
+  add Branch ScalarHT/energy ScalarHT ScalarHT
+}
+
Index: examples/delphes_card_CMS.tcl
===================================================================
--- examples/delphes_card_CMS.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
+++ examples/delphes_card_CMS.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -0,0 +1,565 @@
+#######################################
+# Order of execution of various modules
+#######################################
+
+set ExecutionPath {
+  ParticlePropagator
+
+  ChargedHadronTrackingEfficiency
+  ElectronTrackingEfficiency
+  MuonTrackingEfficiency
+
+  ChargedHadronMomentumSmearing
+  ElectronEnergySmearing
+  MuonMomentumSmearing
+
+  TrackMerger
+  Calorimeter
+  EFlowMerger
+
+  PhotonEfficiency
+  PhotonIsolation
+
+  ElectronEfficiency
+  ElectronIsolation
+
+  MuonEfficiency
+  MuonIsolation
+
+  MissingET
+
+  GenJetFinder
+  FastJetFinder
+
+  ConstituentFilter
+
+  BTagging
+  TauTagging
+
+  UniqueObjectFinder
+
+  ScalarHT
+
+  TreeWriter
+}
+
+#################################
+# Propagate particles in cylinder
+#################################
+
+module ParticlePropagator ParticlePropagator {
+  set InputArray Delphes/stableParticles
+
+  set OutputArray stableParticles
+  set ChargedHadronOutputArray chargedHadrons
+  set ElectronOutputArray electrons
+  set MuonOutputArray muons
+
+  # radius of the magnetic field coverage, in m
+  set Radius 1.29
+  # half-length of the magnetic field coverage, in m
+  set HalfLength 3.00
+
+  # magnetic field
+  set Bz 3.8
+}
+
+####################################
+# Charged hadron tracking efficiency
+####################################
+
+module Efficiency ChargedHadronTrackingEfficiency {
+  set InputArray ParticlePropagator/chargedHadrons
+  set OutputArray chargedHadrons
+
+  # add EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for charged hadrons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0)                  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.60) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0)                  * (0.85) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+##############################
+# Electron tracking efficiency
+##############################
+
+module Efficiency ElectronTrackingEfficiency {
+  set InputArray ParticlePropagator/electrons
+  set OutputArray electrons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for electrons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.73) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e2) * (0.95) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e2)                * (0.99) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.50) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e2) * (0.83) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2)                * (0.90) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+##########################
+# Muon tracking efficiency
+##########################
+
+module Efficiency MuonTrackingEfficiency {
+  set InputArray ParticlePropagator/muons
+  set OutputArray muons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for muons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.75) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0)                  * (0.99) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0)                  * (0.98) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+########################################
+# Momentum resolution for charged tracks
+########################################
+
+module MomentumSmearing ChargedHadronMomentumSmearing {
+  set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
+  set OutputArray chargedHadrons
+
+  # set ResolutionFormula {resolution formula as a function of eta and pt}
+
+  # resolution formula for charged hadrons
+  set ResolutionFormula {                  (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.02) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.01) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2)                * (0.05)}
+}
+
+#################################
+# Energy resolution for electrons
+#################################
+
+module EnergySmearing ElectronEnergySmearing {
+  set InputArray ElectronTrackingEfficiency/electrons
+  set OutputArray electrons
+
+  # set ResolutionFormula {resolution formula as a function of eta and energy}
+
+  set ResolutionFormula {                  (abs(eta) <= 2.5) * (energy > 0.1   && energy <= 2.5e1) * (energy*0.015) + \
+                                           (abs(eta) <= 2.5) * (energy > 2.5e1)                    * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                         (abs(eta) > 2.5 && abs(eta) <= 3.0)                                       * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                         (abs(eta) > 3.0 && abs(eta) <= 5.0)                                       * sqrt(energy^2*0.107^2 + energy*2.08^2)}
+
+}
+
+###############################
+# Momentum resolution for muons
+###############################
+
+module MomentumSmearing MuonMomentumSmearing {
+  set InputArray MuonTrackingEfficiency/muons
+  set OutputArray muons
+
+  # set ResolutionFormula {resolution formula as a function of eta and pt}
+
+  # resolution formula for muons
+  set ResolutionFormula {                  (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e1) * (0.03) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2)                * (0.05)}
+}
+
+##############
+# Track merger
+##############
+
+module Merger TrackMerger {
+# add InputArray InputArray
+  add InputArray ChargedHadronMomentumSmearing/chargedHadrons
+  add InputArray ElectronEnergySmearing/electrons
+  set OutputArray tracks
+}
+
+#############
+# Calorimeter
+#############
+
+module Calorimeter Calorimeter {
+  set ParticleInputArray ParticlePropagator/stableParticles
+  set TrackInputArray TrackMerger/tracks
+
+  set TowerOutputArray towers
+  set PhotonOutputArray photons
+
+  set EFlowTrackOutputArray eflowTracks
+  set EFlowTowerOutputArray eflowTowers
+
+  set pi [expr {acos(-1)}]
+
+  # lists of the edges of each tower in eta and phi
+  # each list starts with the lower edge of the first tower
+  # the list ends with the higher edged of the last tower
+
+  # 5 degrees towers
+  set PhiBins {}
+  for {set i -36} {$i <= 36} {incr i} {
+    add PhiBins [expr {$i * $pi/36.0}]
+  }
+  foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.653} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # 10 degrees towers
+  set PhiBins {}
+  for {set i -18} {$i <= 18} {incr i} {
+    add PhiBins [expr {$i * $pi/18.0}]
+  }
+  foreach eta {-4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.95 -2.868 -2.65 -2.5 -2.322 -2.172 -2.043 -1.93 -1.83 -1.74 -1.653 1.74 1.83 1.93 2.043 2.172 2.322 2.5 2.65 2.868 2.95 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # 20 degrees towers
+  set PhiBins {}
+  for {set i -9} {$i <= 9} {incr i} {
+    add PhiBins [expr {$i * $pi/9.0}]
+  }
+  foreach eta {-5 -4.7 -4.525 4.7 5} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # default energy fractions {abs(PDG code)} {Fecal Fhcal}
+  add EnergyFraction {0} {0.0 1.0}
+  # energy fractions for e, gamma and pi0
+  add EnergyFraction {11} {1.0 0.0}
+  add EnergyFraction {22} {1.0 0.0}
+  add EnergyFraction {111} {1.0 0.0}
+  # energy fractions for muon, neutrinos and neutralinos
+  add EnergyFraction {12} {0.0 0.0}
+  add EnergyFraction {13} {0.0 0.0}
+  add EnergyFraction {14} {0.0 0.0}
+  add EnergyFraction {16} {0.0 0.0}
+  add EnergyFraction {1000022} {0.0 0.0}
+  add EnergyFraction {1000023} {0.0 0.0}
+  add EnergyFraction {1000025} {0.0 0.0}
+  add EnergyFraction {1000035} {0.0 0.0}
+  add EnergyFraction {1000045} {0.0 0.0}
+  # energy fractions for K0short and Lambda
+  add EnergyFraction {310} {0.3 0.7}
+  add EnergyFraction {3122} {0.3 0.7}
+
+  # set ECalResolutionFormula {resolution formula as a function of eta and energy}
+  set ECalResolutionFormula {                  (abs(eta) <= 3.0) * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                             (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.107^2 + energy*2.08^2)}
+
+  # set HCalResolutionFormula {resolution formula as a function of eta and energy}
+  set HCalResolutionFormula {                  (abs(eta) <= 3.0) * sqrt(energy^2*0.050^2 + energy*1.50^2) + \
+                             (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.130^2 + energy*2.70^2)}
+}
+
+####################
+# Energy flow merger
+####################
+
+module Merger EFlowMerger {
+# add InputArray InputArray
+  add InputArray Calorimeter/eflowTracks
+  add InputArray Calorimeter/eflowTowers
+  add InputArray MuonMomentumSmearing/muons
+  set OutputArray eflow
+}
+
+###################
+# Photon efficiency
+###################
+
+module Efficiency PhotonEfficiency {
+  set InputArray Calorimeter/photons
+  set OutputArray photons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # efficiency formula for photons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.5)                                   * (0.00)}
+}
+
+##################
+# Photon isolation
+##################
+
+module Isolation PhotonIsolation {
+  set CandidateInputArray PhotonEfficiency/photons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray photons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+#####################
+# Electron efficiency
+#####################
+
+module Efficiency ElectronEfficiency {
+  set InputArray ElectronEnergySmearing/electrons
+  set OutputArray electrons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # efficiency formula for electrons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.5)                                   * (0.00)}
+}
+
+####################
+# Electron isolation
+####################
+
+module Isolation ElectronIsolation {
+  set CandidateInputArray ElectronEfficiency/electrons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray electrons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+#################
+# Muon efficiency
+#################
+
+module Efficiency MuonEfficiency {
+  set InputArray MuonMomentumSmearing/muons
+  set OutputArray muons
+
+  # set EfficiencyFormula {efficiency as a function of eta and pt}
+
+  # efficiency formula for muons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.4) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.4)                                   * (0.00)}
+}
+
+################
+# Muon isolation
+################
+
+module Isolation MuonIsolation {
+  set CandidateInputArray MuonEfficiency/muons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray muons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+###################
+# Missing ET merger
+###################
+
+module Merger MissingET {
+# add InputArray InputArray
+  add InputArray EFlowMerger/eflow
+  set MomentumOutputArray momentum
+}
+
+##################
+# Scalar HT merger
+##################
+
+module Merger ScalarHT {
+# add InputArray InputArray
+  add InputArray UniqueObjectFinder/jets
+  add InputArray UniqueObjectFinder/electrons
+  add InputArray UniqueObjectFinder/photons
+  add InputArray MuonIsolation/muons
+  set EnergyOutputArray energy
+}
+
+#####################
+# MC truth jet finder
+#####################
+
+module FastJetFinder GenJetFinder {
+  set InputArray Delphes/stableParticles
+
+  set OutputArray jets
+
+  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 6
+  set ParameterR 0.7
+
+  set ConeRadius 0.5
+  set SeedThreshold 1.0
+  set ConeAreaFraction 1.0
+  set AdjacencyCut 2.0
+  set OverlapThreshold 0.75
+
+  set MaxIterations 100
+  set MaxPairSize 2
+  set Iratch 1
+
+  set JetPTMin 20.0
+}
+
+############
+# Jet finder
+############
+
+module FastJetFinder FastJetFinder {
+#  set InputArray Calorimeter/towers
+  set InputArray EFlowMerger/eflow
+
+  set OutputArray jets
+
+  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 6
+  set ParameterR 0.7
+
+  set ConeRadius 0.5
+  set SeedThreshold 1.0
+  set ConeAreaFraction 1.0
+  set AdjacencyCut 2.0
+  set OverlapThreshold 0.75
+
+  set MaxIterations 100
+  set MaxPairSize 2
+  set Iratch 1
+
+  set JetPTMin 20.0
+}
+
+####################
+# Constituent filter
+####################
+
+module ConstituentFilter ConstituentFilter {
+
+# add JetInputArray InputArray
+  add JetInputArray GenJetFinder/jets
+  add JetInputArray FastJetFinder/jets
+
+# add ConstituentInputArray InputArray OutputArray
+  add ConstituentInputArray Delphes/stableParticles stableParticles
+  add ConstituentInputArray Calorimeter/eflowTracks eflowTracks
+  add ConstituentInputArray Calorimeter/eflowTowers eflowTowers
+  add ConstituentInputArray MuonMomentumSmearing/muons muons
+}
+
+###########
+# b-tagging
+###########
+
+module BTagging BTagging {
+  set PartonInputArray Delphes/partons
+  set JetInputArray FastJetFinder/jets
+
+  set DeltaR 0.5
+
+  set PartonPTMin 1.0
+
+  set PartonEtaMax 2.5
+
+  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
+  # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
+  # gluon's PDG code has the lowest priority
+
+  # https://twiki.cern.ch/twiki/bin/view/CMSPublic/PhysicsResultsBTV
+  # default efficiency formula (misidentification rate)
+  add EfficiencyFormula {0} {0.001}
+
+  # efficiency formula for c-jets (misidentification rate)
+  add EfficiencyFormula {4} {                                      (pt <= 15.0) * (0.000) + \
+                                                (abs(eta) <= 1.2) * (pt > 15.0) * (0.2*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.1*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 2.5)                                  * (0.000)}
+
+  # efficiency formula for b-jets
+  add EfficiencyFormula {5} {                                      (pt <= 15.0) * (0.000) + \
+                                                (abs(eta) <= 1.2) * (pt > 15.0) * (0.5*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.4*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 2.5)                                  * (0.000)}
+}
+
+module TauTagging TauTagging {
+  set ParticleInputArray Delphes/allParticles
+  set PartonInputArray Delphes/partons
+  set JetInputArray FastJetFinder/jets
+
+  set DeltaR 0.5
+
+  set TauPTMin 1.0
+
+  set TauEtaMax 2.5
+
+  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
+
+  # default efficiency formula (misidentification rate)
+  add EfficiencyFormula {0} {0.001}
+  # efficiency formula for tau-jets
+  add EfficiencyFormula {15} {0.4}
+}
+
+#####################################################
+# Find uniquely identified photons/electrons/tau/jets
+#####################################################
+
+module UniqueObjectFinder UniqueObjectFinder {
+# earlier arrays take precedence over later ones
+# add InputArray InputArray OutputArray
+  add InputArray PhotonIsolation/photons photons
+  add InputArray ElectronIsolation/electrons electrons
+  add InputArray FastJetFinder/jets jets
+}
+
+##################
+# ROOT tree writer
+##################
+
+module TreeWriter TreeWriter {
+# add Branch InputArray BranchName BranchClass
+  add Branch Delphes/allParticles Particle GenParticle
+  add Branch TrackMerger/tracks Track Track
+  add Branch Calorimeter/towers Tower Tower
+  add Branch ConstituentFilter/eflowTracks EFlowTrack Track
+  add Branch ConstituentFilter/eflowTowers EFlowTower Tower
+  add Branch ConstituentFilter/muons EFlowMuon Muon
+  add Branch GenJetFinder/jets GenJet Jet
+  add Branch UniqueObjectFinder/jets Jet Jet
+  add Branch UniqueObjectFinder/electrons Electron Electron
+  add Branch UniqueObjectFinder/photons Photon Photon
+  add Branch MuonIsolation/muons Muon Muon
+  add Branch MissingET/momentum MissingET MissingET
+  add Branch ScalarHT/energy ScalarHT ScalarHT
+}
+
Index: examples/delphes_card_CMS_NoVFC.tcl
===================================================================
--- examples/delphes_card_CMS_NoVFC.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
+++ examples/delphes_card_CMS_NoVFC.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -0,0 +1,553 @@
+#######################################
+# Order of execution of various modules
+#######################################
+
+set ExecutionPath {
+  ParticlePropagator
+
+  ChargedHadronTrackingEfficiency
+  ElectronTrackingEfficiency
+  MuonTrackingEfficiency
+
+  ChargedHadronMomentumSmearing
+  ElectronEnergySmearing
+  MuonMomentumSmearing
+
+  TrackMerger
+  Calorimeter
+  EFlowMerger
+
+  PhotonEfficiency
+  PhotonIsolation
+
+  ElectronEfficiency
+  ElectronIsolation
+
+  MuonEfficiency
+  MuonIsolation
+
+  MissingET
+
+  GenJetFinder
+  FastJetFinder
+
+  ConstituentFilter
+
+  BTagging
+  TauTagging
+
+  UniqueObjectFinder
+
+  ScalarHT
+
+  TreeWriter
+}
+
+#################################
+# Propagate particles in cylinder
+#################################
+
+module ParticlePropagator ParticlePropagator {
+  set InputArray Delphes/stableParticles
+
+  set OutputArray stableParticles
+  set ChargedHadronOutputArray chargedHadrons
+  set ElectronOutputArray electrons
+  set MuonOutputArray muons
+
+  # radius of the magnetic field coverage, in m
+  set Radius 1.29
+  # half-length of the magnetic field coverage, in m
+  set HalfLength 3.00
+
+  # magnetic field
+  set Bz 3.8
+}
+
+####################################
+# Charged hadron tracking efficiency
+####################################
+
+module Efficiency ChargedHadronTrackingEfficiency {
+  set InputArray ParticlePropagator/chargedHadrons
+  set OutputArray chargedHadrons
+
+  # add EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for charged hadrons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0)                  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.60) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0)                  * (0.85) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+##############################
+# Electron tracking efficiency
+##############################
+
+module Efficiency ElectronTrackingEfficiency {
+  set InputArray ParticlePropagator/electrons
+  set OutputArray electrons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for electrons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.73) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e2) * (0.95) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e2)                * (0.99) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.50) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e2) * (0.83) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2)                * (0.90) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+##########################
+# Muon tracking efficiency
+##########################
+
+module Efficiency MuonTrackingEfficiency {
+  set InputArray ParticlePropagator/muons
+  set OutputArray muons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for muons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.75) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0)                  * (0.99) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0)                  * (0.98) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+########################################
+# Momentum resolution for charged tracks
+########################################
+
+module MomentumSmearing ChargedHadronMomentumSmearing {
+  set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
+  set OutputArray chargedHadrons
+
+  # set ResolutionFormula {resolution formula as a function of eta and pt}
+
+  # resolution formula for charged hadrons
+  set ResolutionFormula {                  (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.02) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.01) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2)                * (0.05)}
+}
+
+#################################
+# Energy resolution for electrons
+#################################
+
+module EnergySmearing ElectronEnergySmearing {
+  set InputArray ElectronTrackingEfficiency/electrons
+  set OutputArray electrons
+
+  # set ResolutionFormula {resolution formula as a function of eta and energy}
+
+  set ResolutionFormula {                  (abs(eta) <= 2.5) * (energy > 0.1   && energy <= 2.5e1) * (energy*0.015) + \
+                                           (abs(eta) <= 2.5) * (energy > 2.5e1)                    * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                         (abs(eta) > 2.5 && abs(eta) <= 3.0)                                       * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2)}
+
+}
+
+###############################
+# Momentum resolution for muons
+###############################
+
+module MomentumSmearing MuonMomentumSmearing {
+  set InputArray MuonTrackingEfficiency/muons
+  set OutputArray muons
+
+  # set ResolutionFormula {resolution formula as a function of eta and pt}
+
+  # resolution formula for muons
+  set ResolutionFormula {                  (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e1) * (0.03) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2)                * (0.05)}
+}
+
+##############
+# Track merger
+##############
+
+module Merger TrackMerger {
+# add InputArray InputArray
+  add InputArray ChargedHadronMomentumSmearing/chargedHadrons
+  add InputArray ElectronEnergySmearing/electrons
+  set OutputArray tracks
+}
+
+#############
+# Calorimeter
+#############
+
+module Calorimeter Calorimeter {
+  set ParticleInputArray ParticlePropagator/stableParticles
+  set TrackInputArray TrackMerger/tracks
+
+  set TowerOutputArray towers
+  set PhotonOutputArray photons
+
+  set EFlowTrackOutputArray eflowTracks
+  set EFlowTowerOutputArray eflowTowers
+
+  set pi [expr {acos(-1)}]
+
+  # lists of the edges of each tower in eta and phi
+  # each list starts with the lower edge of the first tower
+  # the list ends with the higher edged of the last tower
+
+  # 5 degrees towers
+  set PhiBins {}
+  for {set i -36} {$i <= 36} {incr i} {
+    add PhiBins [expr {$i * $pi/36.0}]
+  }
+  foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.653} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # 10 degrees towers
+  set PhiBins {}
+  for {set i -18} {$i <= 18} {incr i} {
+    add PhiBins [expr {$i * $pi/18.0}]
+  }
+  foreach eta {-3.0 -2.65 -2.5 -2.322 -2.172 -2.043 -1.93 -1.83 -1.74 -1.653 1.74 1.83 1.93 2.043 2.172 2.322 2.5 2.65 3.0} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # default energy fractions {abs(PDG code)} {Fecal Fhcal}
+  add EnergyFraction {0} {0.0 1.0}
+  # energy fractions for e, gamma and pi0
+  add EnergyFraction {11} {1.0 0.0}
+  add EnergyFraction {22} {1.0 0.0}
+  add EnergyFraction {111} {1.0 0.0}
+  # energy fractions for muon, neutrinos and neutralinos
+  add EnergyFraction {12} {0.0 0.0}
+  add EnergyFraction {13} {0.0 0.0}
+  add EnergyFraction {14} {0.0 0.0}
+  add EnergyFraction {16} {0.0 0.0}
+  add EnergyFraction {1000022} {0.0 0.0}
+  add EnergyFraction {1000023} {0.0 0.0}
+  add EnergyFraction {1000025} {0.0 0.0}
+  add EnergyFraction {1000035} {0.0 0.0}
+  add EnergyFraction {1000045} {0.0 0.0}
+  # energy fractions for K0short and Lambda
+  add EnergyFraction {310} {0.3 0.7}
+  add EnergyFraction {3122} {0.3 0.7}
+
+  # set ECalResolutionFormula {resolution formula as a function of eta and energy}
+  set ECalResolutionFormula {sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2)}
+
+  # set HCalResolutionFormula {resolution formula as a function of eta and energy}
+  set HCalResolutionFormula {sqrt(energy^2*0.050^2 + energy*1.50^2)}
+}
+
+####################
+# Energy flow merger
+####################
+
+module Merger EFlowMerger {
+# add InputArray InputArray
+  add InputArray Calorimeter/eflowTracks
+  add InputArray Calorimeter/eflowTowers
+  add InputArray MuonMomentumSmearing/muons
+  set OutputArray eflow
+}
+
+###################
+# Photon efficiency
+###################
+
+module Efficiency PhotonEfficiency {
+  set InputArray Calorimeter/photons
+  set OutputArray photons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # efficiency formula for photons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.5)                                   * (0.00)}
+}
+
+##################
+# Photon isolation
+##################
+
+module Isolation PhotonIsolation {
+  set CandidateInputArray PhotonEfficiency/photons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray photons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+#####################
+# Electron efficiency
+#####################
+
+module Efficiency ElectronEfficiency {
+  set InputArray ElectronEnergySmearing/electrons
+  set OutputArray electrons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # efficiency formula for electrons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.5)                                   * (0.00)}
+}
+
+####################
+# Electron isolation
+####################
+
+module Isolation ElectronIsolation {
+  set CandidateInputArray ElectronEfficiency/electrons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray electrons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+#################
+# Muon efficiency
+#################
+
+module Efficiency MuonEfficiency {
+  set InputArray MuonMomentumSmearing/muons
+  set OutputArray muons
+
+  # set EfficiencyFormula {efficiency as a function of eta and pt}
+
+  # efficiency formula for muons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.4) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.4)                                   * (0.00)}
+}
+
+################
+# Muon isolation
+################
+
+module Isolation MuonIsolation {
+  set CandidateInputArray MuonEfficiency/muons
+  set IsolationInputArray EFlowMerger/eflow
+
+  set OutputArray muons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+###################
+# Missing ET merger
+###################
+
+module Merger MissingET {
+# add InputArray InputArray
+  add InputArray EFlowMerger/eflow
+  set MomentumOutputArray momentum
+}
+
+##################
+# Scalar HT merger
+##################
+
+module Merger ScalarHT {
+# add InputArray InputArray
+  add InputArray UniqueObjectFinder/jets
+  add InputArray UniqueObjectFinder/electrons
+  add InputArray UniqueObjectFinder/photons
+  add InputArray MuonIsolation/muons
+  set EnergyOutputArray energy
+}
+
+#####################
+# MC truth jet finder
+#####################
+
+module FastJetFinder GenJetFinder {
+  set InputArray Delphes/stableParticles
+
+  set OutputArray jets
+
+  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 6
+  set ParameterR 0.7
+
+  set ConeRadius 0.5
+  set SeedThreshold 1.0
+  set ConeAreaFraction 1.0
+  set AdjacencyCut 2.0
+  set OverlapThreshold 0.75
+
+  set MaxIterations 100
+  set MaxPairSize 2
+  set Iratch 1
+
+  set JetPTMin 20.0
+}
+
+############
+# Jet finder
+############
+
+module FastJetFinder FastJetFinder {
+#  set InputArray Calorimeter/towers
+  set InputArray EFlowMerger/eflow
+
+  set OutputArray jets
+
+  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 6
+  set ParameterR 0.7
+
+  set ConeRadius 0.5
+  set SeedThreshold 1.0
+  set ConeAreaFraction 1.0
+  set AdjacencyCut 2.0
+  set OverlapThreshold 0.75
+
+  set MaxIterations 100
+  set MaxPairSize 2
+  set Iratch 1
+
+  set JetPTMin 20.0
+}
+
+####################
+# Constituent filter
+####################
+
+module ConstituentFilter ConstituentFilter {
+
+# add JetInputArray InputArray
+  add JetInputArray GenJetFinder/jets
+  add JetInputArray FastJetFinder/jets
+
+# add ConstituentInputArray InputArray OutputArray
+  add ConstituentInputArray Delphes/stableParticles stableParticles
+  add ConstituentInputArray Calorimeter/eflowTracks eflowTracks
+  add ConstituentInputArray Calorimeter/eflowTowers eflowTowers
+  add ConstituentInputArray MuonMomentumSmearing/muons muons
+}
+
+###########
+# b-tagging
+###########
+
+module BTagging BTagging {
+  set PartonInputArray Delphes/partons
+  set JetInputArray FastJetFinder/jets
+
+  set DeltaR 0.5
+
+  set PartonPTMin 1.0
+
+  set PartonEtaMax 2.5
+
+  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
+  # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
+  # gluon's PDG code has the lowest priority
+
+  # https://twiki.cern.ch/twiki/bin/view/CMSPublic/PhysicsResultsBTV
+  # default efficiency formula (misidentification rate)
+  add EfficiencyFormula {0} {0.001}
+
+  # efficiency formula for c-jets (misidentification rate)
+  add EfficiencyFormula {4} {                                      (pt <= 15.0) * (0.000) + \
+                                                (abs(eta) <= 1.2) * (pt > 15.0) * (0.2*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.1*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 2.5)                                  * (0.000)}
+
+  # efficiency formula for b-jets
+  add EfficiencyFormula {5} {                                      (pt <= 15.0) * (0.000) + \
+                                                (abs(eta) <= 1.2) * (pt > 15.0) * (0.5*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.4*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 2.5)                                  * (0.000)}
+}
+
+module TauTagging TauTagging {
+  set ParticleInputArray Delphes/allParticles
+  set PartonInputArray Delphes/partons
+  set JetInputArray FastJetFinder/jets
+
+  set DeltaR 0.5
+
+  set TauPTMin 1.0
+
+  set TauEtaMax 2.5
+
+  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
+
+  # default efficiency formula (misidentification rate)
+  add EfficiencyFormula {0} {0.001}
+  # efficiency formula for tau-jets
+  add EfficiencyFormula {15} {0.4}
+}
+
+#####################################################
+# Find uniquely identified photons/electrons/tau/jets
+#####################################################
+
+module UniqueObjectFinder UniqueObjectFinder {
+# earlier arrays take precedence over later ones
+# add InputArray InputArray OutputArray
+  add InputArray PhotonIsolation/photons photons
+  add InputArray ElectronIsolation/electrons electrons
+  add InputArray FastJetFinder/jets jets
+}
+
+##################
+# ROOT tree writer
+##################
+
+module TreeWriter TreeWriter {
+# add Branch InputArray BranchName BranchClass
+  add Branch Delphes/allParticles Particle GenParticle
+  add Branch TrackMerger/tracks Track Track
+  add Branch Calorimeter/towers Tower Tower
+  add Branch ConstituentFilter/eflowTracks EFlowTrack Track
+  add Branch ConstituentFilter/eflowTowers EFlowTower Tower
+  add Branch ConstituentFilter/muons EFlowMuon Muon
+  add Branch GenJetFinder/jets GenJet Jet
+  add Branch UniqueObjectFinder/jets Jet Jet
+  add Branch UniqueObjectFinder/electrons Electron Electron
+  add Branch UniqueObjectFinder/photons Photon Photon
+  add Branch MuonIsolation/muons Muon Muon
+  add Branch MissingET/momentum MissingET MissingET
+  add Branch ScalarHT/energy ScalarHT ScalarHT
+}
+
Index: examples/delphes_card_CMS_PileUp.tcl
===================================================================
--- examples/delphes_card_CMS_PileUp.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
+++ examples/delphes_card_CMS_PileUp.tcl	(revision d7d2da362406b9e37fdf238970417c94779b54b0)
@@ -0,0 +1,627 @@
+#######################################
+# Order of execution of various modules
+#######################################
+
+set ExecutionPath {
+
+  PileUpMerger
+  ParticlePropagator
+
+  ChargedHadronTrackingEfficiency
+  ElectronTrackingEfficiency
+  MuonTrackingEfficiency
+
+  ChargedHadronMomentumSmearing
+  ElectronEnergySmearing
+  MuonMomentumSmearing
+
+  TrackMerger
+  Calorimeter
+  TrackPileUpSubtractor
+  EFlowMerger
+
+  GenJetFinder
+
+  Rho
+  FastJetFinder
+  JetPileUpSubtractor
+
+  ConstituentFilter
+
+  PhotonEfficiency
+  PhotonIsolation
+
+  ElectronEfficiency
+  ElectronIsolation
+
+  MuonEfficiency
+  MuonIsolation
+
+  MissingET
+
+  BTagging
+  TauTagging
+
+  UniqueObjectFinder
+
+  ScalarHT
+
+  TreeWriter
+}
+
+###############
+# PileUp Merger
+###############
+
+module PileUpMerger PileUpMerger {
+  set InputArray Delphes/stableParticles
+
+  set OutputArray stableParticles
+
+  # pre-generated minbias input file
+  set PileUpFile MinBias.pileup
+
+  # average expected pile up
+  set MeanPileUp 50
+  # spread in the beam direction in m (assumes gaussian)
+  set ZVertexSpread 0.07
+}
+
+#################################
+# Propagate particles in cylinder
+#################################
+
+module ParticlePropagator ParticlePropagator {
+  set InputArray PileUpMerger/stableParticles
+
+  set OutputArray stableParticles
+  set ChargedHadronOutputArray chargedHadrons
+  set ElectronOutputArray electrons
+  set MuonOutputArray muons
+
+  # radius of the magnetic field coverage, in m
+  set Radius 1.29
+  # half-length of the magnetic field coverage, in m
+  set HalfLength 3.00
+
+  # magnetic field
+  set Bz 3.8
+}
+
+####################################
+# Charged hadron tracking efficiency
+####################################
+
+module Efficiency ChargedHadronTrackingEfficiency {
+  set InputArray ParticlePropagator/chargedHadrons
+  set OutputArray chargedHadrons
+
+  # add EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for charged hadrons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0)                  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.60) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0)                  * (0.85) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+##############################
+# Electron tracking efficiency
+##############################
+
+module Efficiency ElectronTrackingEfficiency {
+  set InputArray ParticlePropagator/electrons
+  set OutputArray electrons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for electrons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.73) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e2) * (0.95) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e2)                * (0.99) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.50) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e2) * (0.83) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2)                * (0.90) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+##########################
+# Muon tracking efficiency
+##########################
+
+module Efficiency MuonTrackingEfficiency {
+  set InputArray ParticlePropagator/muons
+  set OutputArray muons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # tracking efficiency formula for muons
+  set EfficiencyFormula {                                                    (pt <= 0.1)   * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.75) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0)                  * (0.99) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0)                  * (0.98) + \
+                         (abs(eta) > 2.5)                                                  * (0.00)}
+}
+
+########################################
+# Momentum resolution for charged tracks
+########################################
+
+module MomentumSmearing ChargedHadronMomentumSmearing {
+  set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
+  set OutputArray chargedHadrons
+
+  # set ResolutionFormula {resolution formula as a function of eta and pt}
+
+  # resolution formula for charged hadrons
+  set ResolutionFormula {                  (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.02) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.01) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2)                * (0.05)}
+}
+
+#################################
+# Energy resolution for electrons
+#################################
+
+module EnergySmearing ElectronEnergySmearing {
+  set InputArray ElectronTrackingEfficiency/electrons
+  set OutputArray electrons
+
+  # set ResolutionFormula {resolution formula as a function of eta and energy}
+
+  set ResolutionFormula {                  (abs(eta) <= 2.5) * (energy > 0.1   && energy <= 2.5e1) * (energy*0.015) + \
+                                           (abs(eta) <= 2.5) * (energy > 2.5e1)                    * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                         (abs(eta) > 2.5 && abs(eta) <= 3.0)                                       * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                         (abs(eta) > 3.0 && abs(eta) <= 5.0)                                       * sqrt(energy^2*0.107^2 + energy*2.08^2)}
+
+}
+
+###############################
+# Momentum resolution for muons
+###############################
+
+module MomentumSmearing MuonMomentumSmearing {
+  set InputArray MuonTrackingEfficiency/muons
+  set OutputArray muons
+
+  # set ResolutionFormula {resolution formula as a function of eta and pt}
+
+  # resolution formula for muons
+  set ResolutionFormula {                  (abs(eta) <= 1.5) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
+                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
+                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1   && pt <= 1.0)   * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0   && pt <= 1.0e1) * (0.03) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2)                * (0.05)}
+}
+
+##############
+# Track merger
+##############
+
+module Merger TrackMerger {
+# add InputArray InputArray
+  add InputArray ChargedHadronMomentumSmearing/chargedHadrons
+  add InputArray ElectronEnergySmearing/electrons
+  set OutputArray tracks
+}
+
+#############
+# Calorimeter
+#############
+
+module Calorimeter Calorimeter {
+  set ParticleInputArray ParticlePropagator/stableParticles
+  set TrackInputArray TrackMerger/tracks
+
+  set TowerOutputArray towers
+  set PhotonOutputArray photons
+
+  set EFlowTrackOutputArray eflowTracks
+  set EFlowTowerOutputArray eflowTowers
+
+  set pi [expr {acos(-1)}]
+
+  # lists of the edges of each tower in eta and phi
+  # each list starts with the lower edge of the first tower
+  # the list ends with the higher edged of the last tower
+
+  # 5 degrees towers
+  set PhiBins {}
+  for {set i -36} {$i <= 36} {incr i} {
+    add PhiBins [expr {$i * $pi/36.0}]
+  }
+  foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.653} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # 10 degrees towers
+  set PhiBins {}
+  for {set i -18} {$i <= 18} {incr i} {
+    add PhiBins [expr {$i * $pi/18.0}]
+  }
+  foreach eta {-4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.95 -2.868 -2.65 -2.5 -2.322 -2.172 -2.043 -1.93 -1.83 -1.74 -1.653 1.74 1.83 1.93 2.043 2.172 2.322 2.5 2.65 2.868 2.95 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # 20 degrees towers
+  set PhiBins {}
+  for {set i -9} {$i <= 9} {incr i} {
+    add PhiBins [expr {$i * $pi/9.0}]
+  }
+  foreach eta {-5 -4.7 -4.525 4.7 5} {
+    add EtaPhiBins $eta $PhiBins
+  }
+
+  # default energy fractions {abs(PDG code)} {Fecal Fhcal}
+  add EnergyFraction {0} {0.0 1.0}
+  # energy fractions for e, gamma and pi0
+  add EnergyFraction {11} {1.0 0.0}
+  add EnergyFraction {22} {1.0 0.0}
+  add EnergyFraction {111} {1.0 0.0}
+  # energy fractions for muon, neutrinos and neutralinos
+  add EnergyFraction {12} {0.0 0.0}
+  add EnergyFraction {13} {0.0 0.0}
+  add EnergyFraction {14} {0.0 0.0}
+  add EnergyFraction {16} {0.0 0.0}
+  add EnergyFraction {1000022} {0.0 0.0}
+  add EnergyFraction {1000023} {0.0 0.0}
+  add EnergyFraction {1000025} {0.0 0.0}
+  add EnergyFraction {1000035} {0.0 0.0}
+  add EnergyFraction {1000045} {0.0 0.0}
+  # energy fractions for K0short and Lambda
+  add EnergyFraction {310} {0.3 0.7}
+  add EnergyFraction {3122} {0.3 0.7}
+
+  # set ECalResolutionFormula {resolution formula as a function of eta and energy}
+  set ECalResolutionFormula {                  (abs(eta) <= 3.0) * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
+                             (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.107^2 + energy*2.08^2)}
+
+  # set HCalResolutionFormula {resolution formula as a function of eta and energy}
+  set HCalResolutionFormula {                  (abs(eta) <= 3.0) * sqrt(energy^2*0.050^2 + energy*1.50^2) + \
+                             (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.130^2 + energy*2.70^2)}
+}
+
+##########################
+# Track pile-up subtractor
+##########################
+
+module TrackPileUpSubtractor TrackPileUpSubtractor {
+# add InputArray InputArray OutputArray
+  add InputArray Calorimeter/eflowTracks eflowTracks
+  add InputArray ElectronEnergySmearing/electrons electrons
+  add InputArray MuonMomentumSmearing/muons muons
+
+  # assume perfect pile-up subtraction for tracks with |z| > fZVertexResolution
+  # Z vertex resolution in m
+  set ZVertexResolution 0.0001
+}
+
+####################
+# Energy flow merger
+####################
+
+module Merger EFlowMerger {
+# add InputArray InputArray
+  add InputArray TrackPileUpSubtractor/eflowTracks
+  add InputArray Calorimeter/eflowTowers
+  add InputArray MuonMomentumSmearing/muons
+  set OutputArray eflow
+}
+
+#############
+# Rho pile-up
+#############
+
+module FastJetFinder Rho {
+#  set InputArray Calorimeter/towers
+  set InputArray EFlowMerger/eflow
+
+  set ComputeRho true
+  set RhoOutputArray rho
+
+  # area algorithm: 0 Do not compute area, 1 Active area explicit ghosts, 2 One ghost passive area, 3 Passive area, 4 Voronoi, 5 Active area
+  set AreaAlgorithm 5
+
+  # jet algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 4
+  set ParameterR 0.6
+  set GhostEtaMax 5.0
+  set RhoEtaMax 5.0
+
+  set JetPTMin 0.0
+}
+
+#####################
+# MC truth jet finder
+#####################
+
+module FastJetFinder GenJetFinder {
+  set InputArray Delphes/stableParticles
+
+  set OutputArray jets
+
+  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 6
+  set ParameterR 0.5
+
+  set JetPTMin 20.0
+}
+
+############
+# Jet finder
+############
+
+module FastJetFinder FastJetFinder {
+#  set InputArray Calorimeter/towers
+  set InputArray EFlowMerger/eflow
+
+  set OutputArray jets
+
+  # area algorithm: 0 Do not compute area, 1 Active area explicit ghosts, 2 One ghost passive area, 3 Passive area, 4 Voronoi, 5 Active area
+  set AreaAlgorithm 5
+
+  # jet algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
+  set JetAlgorithm 6
+  set ParameterR 0.5
+
+  set JetPTMin 20.0
+}
+
+####################
+# Constituent filter
+####################
+
+module ConstituentFilter ConstituentFilter {
+
+# add JetInputArray InputArray
+  add JetInputArray GenJetFinder/jets
+  add JetInputArray FastJetFinder/jets
+
+# add ConstituentInputArray InputArray OutputArray
+  add ConstituentInputArray Delphes/stableParticles stableParticles
+  add ConstituentInputArray TrackPileUpSubtractor/eflowTracks eflowTracks
+  add ConstituentInputArray Calorimeter/eflowTowers eflowTowers
+  add ConstituentInputArray MuonMomentumSmearing/muons muons
+}
+
+###########################
+# Jet Pile-Up Subtraction
+###########################
+
+module JetPileUpSubtractor JetPileUpSubtractor {
+  set JetInputArray FastJetFinder/jets
+  set RhoInputArray Rho/rho
+
+  set OutputArray jets
+
+  set JetPTMin 20.0
+}
+
+###################
+# Photon efficiency
+###################
+
+module Efficiency PhotonEfficiency {
+  set InputArray Calorimeter/photons
+  set OutputArray photons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # efficiency formula for photons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.5)                                   * (0.00)}
+}
+
+##################
+# Photon isolation
+##################
+
+module Isolation PhotonIsolation {
+  set CandidateInputArray PhotonEfficiency/photons
+  set IsolationInputArray EFlowMerger/eflow
+  set RhoInputArray Rho/rho
+
+  set OutputArray photons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+#####################
+# Electron efficiency
+#####################
+
+module Efficiency ElectronEfficiency {
+  set InputArray TrackPileUpSubtractor/electrons
+  set OutputArray electrons
+
+  # set EfficiencyFormula {efficiency formula as a function of eta and pt}
+
+  # efficiency formula for electrons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.5)                                   * (0.00)}
+}
+
+####################
+# Electron isolation
+####################
+
+module Isolation ElectronIsolation {
+  set CandidateInputArray ElectronEfficiency/electrons
+  set IsolationInputArray EFlowMerger/eflow
+  set RhoInputArray Rho/rho
+
+  set OutputArray electrons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+#################
+# Muon efficiency
+#################
+
+module Efficiency MuonEfficiency {
+  set InputArray TrackPileUpSubtractor/muons
+  set OutputArray muons
+
+  # set EfficiencyFormula {efficiency as a function of eta and pt}
+
+  # efficiency formula for muons
+  set EfficiencyFormula {                                      (pt <= 10.0) * (0.00) + \
+                                           (abs(eta) <= 1.5) * (pt > 10.0)  * (0.95) + \
+                         (abs(eta) > 1.5 && abs(eta) <= 2.4) * (pt > 10.0)  * (0.85) + \
+                         (abs(eta) > 2.4)                                   * (0.00)}
+}
+
+################
+# Muon isolation
+################
+
+module Isolation MuonIsolation {
+  set CandidateInputArray MuonEfficiency/muons
+  set IsolationInputArray EFlowMerger/eflow
+  set RhoInputArray Rho/rho
+
+  set OutputArray muons
+
+  set DeltaRMax 0.5
+
+  set PTMin 0.5
+
+  set PTRatioMax 0.1
+}
+
+###################
+# Missing ET merger
+###################
+
+module Merger MissingET {
+# add InputArray InputArray
+  add InputArray EFlowMerger/eflow
+  set MomentumOutputArray momentum
+}
+
+##################
+# Scalar HT merger
+##################
+
+module Merger ScalarHT {
+# add InputArray InputArray
+  add InputArray UniqueObjectFinder/jets
+  add InputArray UniqueObjectFinder/electrons
+  add InputArray UniqueObjectFinder/photons
+  add InputArray MuonIsolation/muons
+  set EnergyOutputArray energy
+}
+
+
+###########
+# b-tagging
+###########
+
+module BTagging BTagging {
+  set PartonInputArray Delphes/partons
+  set JetInputArray FastJetFinder/jets
+
+  set DeltaR 0.5
+
+  set PartonPTMin 1.0
+
+  set PartonEtaMax 2.5
+
+  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
+  # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
+  # gluon's PDG code has the lowest priority
+
+  # https://twiki.cern.ch/twiki/bin/view/CMSPublic/PhysicsResultsBTV
+  # default efficiency formula (misidentification rate)
+  add EfficiencyFormula {0} {0.001}
+
+  # efficiency formula for c-jets (misidentification rate)
+  add EfficiencyFormula {4} {                                      (pt <= 15.0) * (0.000) + \
+                                                (abs(eta) <= 1.2) * (pt > 15.0) * (0.2*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.1*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 2.5)                                  * (0.000)}
+
+  # efficiency formula for b-jets
+  add EfficiencyFormula {5} {                                      (pt <= 15.0) * (0.000) + \
+                                                (abs(eta) <= 1.2) * (pt > 15.0) * (0.5*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.4*tanh(pt*0.03 - 0.4)) + \
+                              (abs(eta) > 2.5)                                  * (0.000)}
+}
+
+module TauTagging TauTagging {
+  set ParticleInputArray Delphes/allParticles
+  set PartonInputArray Delphes/partons
+  set JetInputArray FastJetFinder/jets
+
+  set DeltaR 0.5
+
+  set TauPTMin 1.0
+
+  set TauEtaMax 2.5
+
+  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
+
+  # default efficiency formula (misidentification rate)
+  add EfficiencyFormula {0} {0.001}
+  # efficiency formula for tau-jets
+  add EfficiencyFormula {15} {0.4}
+}
+
+#####################################################
+# Find uniquely identified photons/electrons/tau/jets
+#####################################################
+
+module UniqueObjectFinder UniqueObjectFinder {
+# earlier arrays take precedence over later ones
+# add InputArray InputArray OutputArray
+  add InputArray PhotonIsolation/photons photons
+  add InputArray ElectronIsolation/electrons electrons
+  add InputArray JetPileUpSubtractor/jets jets
+}
+
+##################
+# ROOT tree writer
+##################
+
+module TreeWriter TreeWriter {
+# add Branch InputArray BranchName BranchClass
+  add Branch Delphes/allParticles Particle GenParticle
+  add Branch TrackMerger/tracks Track Track
+  add Branch Calorimeter/towers Tower Tower
+  add Branch ConstituentFilter/eflowTracks EFlowTrack Track
+  add Branch ConstituentFilter/eflowTowers EFlowTower Tower
+  add Branch ConstituentFilter/muons EFlowMuon Muon
+  add Branch GenJetFinder/jets GenJet Jet
+  add Branch UniqueObjectFinder/jets Jet Jet
+  add Branch UniqueObjectFinder/electrons Electron Electron
+  add Branch UniqueObjectFinder/photons Photon Photon
+  add Branch MuonIsolation/muons Muon Muon
+  add Branch MissingET/momentum MissingET MissingET
+  add Branch ScalarHT/energy ScalarHT ScalarHT
+}
+
Index: examples/vertexAnalyzer.C
===================================================================
--- examples/vertexAnalyzer.C	(revision 4564cba9fa0180ca6c293da8cea545291a6d0116)
+++ 	(revision )
@@ -1,165 +1,0 @@
-/*
-Simple macro showing how to access vertex information, and tracks associated to vertices.
-Computes vertex reconstruction efficiencies, merging, fake and duplicate rates.
-The input file needs to be produced with cards/CMS_PhaseII/testVertexing.tcl
-
-root -l examples/vertexAnalyzer.C'("delphes_output.root")'
-*/
-
-#ifdef __CLING__
-R__LOAD_LIBRARY(libDelphes)
-#include "classes/DelphesClasses.h"
-#include "external/ExRootAnalysis/ExRootTreeReader.h"
-#endif
-
-//------------------------------------------------------------------------------
-
-void vertexAnalyzer(const char *inputFile)
-{
-  gSystem->Load("libDelphes");
-
-  // Create chain of root trees
-  TChain chain("Delphes");
-  chain.Add(inputFile);
-
-  // Create object of class ExRootTreeReader
-  ExRootTreeReader *treeReader = new ExRootTreeReader(&chain);
-  Long64_t numberOfEntries = treeReader->GetEntries();
-
-  // Get pointers to branches used in this analysis
-  TClonesArray *branchParticle = treeReader->UseBranch("Particle");
-  TClonesArray *branchGenVtx = treeReader->UseBranch("GenVertex");
-  TClonesArray *branchVtx = treeReader->UseBranch("Vertex");
-  TClonesArray *branchTrack = treeReader->UseBranch("Track");
-
-  Vertex *bestgenvtx, *bestvtx, *vtx, *recovtx;
-
-  Track *track;
-  GenParticle *particle;
-
-  TObject *object;
-
-  Double_t sumpt2;
-
-  Int_t nGen = 0, nReco = 0, ndenReco = 0, nMerge = 0;
-  Int_t nGenTot = 0, nRecoTot = 0, nFake = 0, nDuplicate = 0, nOverall = 0;
-  Int_t nmatch;
-
-  Double_t distance;
-  // Loop over all events
-  for(Int_t entry = 0; entry < numberOfEntries; ++entry)
-  {
-    //cout<<"------------- New event --------------------  "<<endl;
-    //cout<<"  "<<endl;
-    //cout<<" Reconstructed vertices: "<<branchGenVtx->GetEntriesFast()<<endl;
-
-    // Load selected branches with data from specified event
-    treeReader->ReadEntry(entry);
-
-    sumpt2 = - 999;
-
-    // If event contains at least 1 genvtx
-    for(Int_t i = 0; i < branchGenVtx->GetEntriesFast(); ++i)
-    {
-
-      nGenTot++;
-      // Take vtx
-      vtx = (Vertex*) branchGenVtx->At(i);
-      //cout<<"gen vertex, Sumpt2: "<<vtx->SumPT2<<", Z: "<<vtx->Z<<", T:"<<vtx->T<<endl;
-
-      // Loop over gen vertex attached tracks
-      for(Int_t j = 0; j < vtx->Constituents.GetEntriesFast(); ++j)
-      {
-        object = vtx->Constituents.At(j);
-
-        // Check if the constituent is accessible
-        if(object == 0) continue;
-
-        if(object->IsA() == GenParticle::Class())
-        {
-          particle = (GenParticle*) object;
-          //cout << "    GenPart pt: " << particle->PT << ", z: " << particle->Z << ", t: " << particle->T <<", PID: "<<particle->PID<<", Status: "<<particle->Status<<", PU: "<<particle->IsPU<<endl;
-
-          if(particle->IsPU == 0) bestgenvtx = (Vertex*) branchGenVtx->At(i);
-        }
-
-
-      }
-
-      nmatch = 0;
-      // loop of reco vertices
-      for(Int_t j = 0; j < branchVtx->GetEntriesFast(); ++j)
-      {
-
-        recovtx = (Vertex*) branchVtx->At(j);
-
-        distance = TMath::Sqrt( (vtx->Z - recovtx->Z)*(vtx->Z - recovtx->Z)/(recovtx->ErrorZ*recovtx->ErrorZ) +
-                            (vtx->T - recovtx->T)*(vtx->T - recovtx->T)/(recovtx->ErrorT*recovtx->ErrorT) );
-
-        if(distance < 3.0)
-        {
-          nmatch++;
-        }
-
-      }
-
-      if(nmatch > 1) nDuplicate++;
-      if(nmatch > 0) nOverall++;
-
-     }
-
-     nGen++;
-
-     Bool_t found = false;
-
-     for(Int_t i = 0; i < branchVtx->GetEntriesFast(); ++i)
-     {
-
-       nRecoTot++;
-       recovtx = (Vertex*) branchVtx->At(i);
-
-       distance = TMath::Sqrt( (bestgenvtx->Z - recovtx->Z)*(bestgenvtx->Z - recovtx->Z)/(recovtx->ErrorZ*recovtx->ErrorZ) +
-                            (bestgenvtx->T - recovtx->T)*(bestgenvtx->T - recovtx->T)/(recovtx->ErrorT*recovtx->ErrorT) );
-
-
-       if(distance < 3.0 && !found)
-       {
-         nReco++;
-         found = true;
-       }
-
-
-       nmatch = 0;
-       // start loop over gen vertices to find out merging rate
-       for(Int_t i = 0; i < branchGenVtx->GetEntriesFast(); ++i)
-       {
-
-         // Take vtx
-         vtx = (Vertex*) branchGenVtx->At(i);
-         // Loop over gen vertex attached tracks
-         distance = TMath::Sqrt( (vtx->Z - recovtx->Z)*(vtx->Z - recovtx->Z)/(recovtx->ErrorZ*recovtx->ErrorZ) +
-                            (vtx->T - recovtx->T)*(vtx->T - recovtx->T)/(recovtx->ErrorT*recovtx->ErrorT) );
-
-         if(distance < 3.0)
-         {
-           nmatch++;
-         }
-
-
-       }
-
-       if(nmatch > 1) nMerge++;
-       if(nmatch == 0) nFake++;
-
-
-     }
-
-  } // end event loop
-
-  cout<<"hard vertex reco eff: "<<double(nReco)/nGen<<endl;
-  cout<<"all vertex reco eff: "<<double(nOverall)/nGenTot<<endl;
-  cout<<"merge rate: "<<double(nMerge)/nRecoTot<<endl;
-  cout<<"fake rate: "<<double(nFake)/nRecoTot<<endl;
-  cout<<"duplicate rate: "<<double(nDuplicate)/nGenTot<<endl;
-}
-
