[Rivet-svn] r1790 - in trunk: . include/Rivet include/Rivet/Analyses src/Analyses

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Mon Aug 31 11:52:48 BST 2009


Author: buckley
Date: Mon Aug 31 11:52:47 2009
New Revision: 1790

Log:
Removing headers for PDG analyses

Deleted:
   trunk/include/Rivet/Analyses/PDG_Hadron_Multiplicities.hh
   trunk/include/Rivet/Analyses/PDG_Hadron_Multiplicities_Ratios.hh
Modified:
   trunk/ChangeLog
   trunk/include/Rivet/Makefile.am
   trunk/src/Analyses/PDG_Hadron_Multiplicities.cc
   trunk/src/Analyses/PDG_Hadron_Multiplicities_Ratios.cc

Modified: trunk/ChangeLog
==============================================================================
--- trunk/ChangeLog	Mon Aug 31 11:42:59 2009	(r1789)
+++ trunk/ChangeLog	Mon Aug 31 11:52:47 2009	(r1790)
@@ -1,5 +1,7 @@
 2009-08-31  Andy Buckley  <andy at insectnation.org>
 
+	* Removing headers for PDG analyses.
+
 	* Removing headers for STAR analyses.
 
 	* Cleaning and removing headers from UA1 and UA5 analyses.

Modified: trunk/include/Rivet/Makefile.am
==============================================================================
--- trunk/include/Rivet/Makefile.am	Mon Aug 31 11:42:59 2009	(r1789)
+++ trunk/include/Rivet/Makefile.am	Mon Aug 31 11:52:47 2009	(r1790)
@@ -40,8 +40,6 @@
   Analyses/OPAL_1998_S3780481.hh \
   Analyses/OPAL_2004_S6132243.hh \
   Analyses/ZEUS_2001_S4815815.hh \
-  Analyses/PDG_Hadron_Multiplicities.hh \
-  Analyses/PDG_Hadron_Multiplicities_Ratios.hh \
   Analyses/MC_TVT1960_PHOTONJETS.hh \
   Analyses/MC_TVT1960_ZJETS.hh \
   Analyses/MC_JetAnalysis.hh \
@@ -49,6 +47,7 @@
   Analyses/MC_LHC_ZANALYSIS.hh \
   Analyses/MC_LHC_DIJET.hh
 
+
 ## Projections
 nobase_pkginclude_HEADERS +=   \
   Projections/AxesDefinition.hh \

Modified: trunk/src/Analyses/PDG_Hadron_Multiplicities.cc
==============================================================================
--- trunk/src/Analyses/PDG_Hadron_Multiplicities.cc	Mon Aug 31 11:42:59 2009	(r1789)
+++ trunk/src/Analyses/PDG_Hadron_Multiplicities.cc	Mon Aug 31 11:52:47 2009	(r1790)
@@ -1,7 +1,6 @@
 // -*- C++ -*-
-#include "Rivet/Rivet.hh"
+#include "Rivet/Analysis.hh"
 #include "Rivet/RivetAIDA.hh"
-#include "Rivet/Analyses/PDG_Hadron_Multiplicities.hh"
 #include "Rivet/Tools/ParticleIDMethods.hh"
 #include "Rivet/Projections/Beam.hh"
 #include "Rivet/Projections/FinalState.hh"
@@ -11,682 +10,823 @@
 namespace Rivet {
 
 
-  // Constructor
-  PDG_HADRON_MULTIPLICITIES::PDG_HADRON_MULTIPLICITIES() 
-    : Analysis("PDG_HADRON_MULTIPLICITIES")
-  {
-    setBeams(ELECTRON, POSITRON); 
-    addProjection(Beam(), "Beams");
-    addProjection(ChargedFinalState(), "FS");
-    addProjection(UnstableFinalState(), "UFS");
-  }
-
-
-  void PDG_HADRON_MULTIPLICITIES::analyze(const Event& e) {
-    // First, veto on leptonic events by requiring at least 4 charged FS particles
-    const FinalState& fs = applyProjection<FinalState>(e, "FS");
-    const size_t numParticles = fs.particles().size();
-
-    // Even if we only generate hadronic events, we still need a cut on numCharged >= 2.
-    if (numParticles < 2) {
-      getLog() << Log::DEBUG << "Failed leptonic event cut" << endl;
-      vetoEvent;
+  /// @brief Implementation of PDG hadron multiplicities
+  /// @author Hendrik Hoeth
+  class PDG_HADRON_MULTIPLICITIES : public Analysis {
+  public:
+    
+    /// Constructor
+    PDG_HADRON_MULTIPLICITIES() 
+      : Analysis("PDG_HADRON_MULTIPLICITIES")
+    {
+      setBeams(ELECTRON, POSITRON); 
+      addProjection(Beam(), "Beams");
+      addProjection(ChargedFinalState(), "FS");
+      addProjection(UnstableFinalState(), "UFS");
     }
-    getLog() << Log::DEBUG << "Passed leptonic event cut" << endl;
 
-    // Get event weight for histo filling
-    const double weight = e.weight();
 
-    // Get beams and average beam momentum
-    const ParticlePair& beams = applyProjection<Beam>(e, "Beams").beams();
-    const double meanBeamMom = ( beams.first.momentum().vector3().mod() + 
-                                 beams.second.momentum().vector3().mod() ) / 2.0;
-    getLog() << Log::DEBUG << "Avg beam momentum = " << meanBeamMom << endl;
-
-    // Final state of unstable particles to get particle spectra
-    const UnstableFinalState& ufs = applyProjection<UnstableFinalState>(e, "UFS");
-
-
-    if (2*meanBeamMom >= 9.5 && 2*meanBeamMom <= 10.5) {
-      for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
-        int id = abs(p->pdgId());
-        switch (id) {
-           case 211:
-              _hist10MeanMultiPiPlus->fill(_hist10MeanMultiPiPlus->binMean(0), weight);
-              break;
-           case 111:
-              _hist10MeanMultiPi0->fill(_hist10MeanMultiPi0->binMean(0), weight);
-              break;
-           case 321:
-              _hist10MeanMultiKPlus->fill(_hist10MeanMultiKPlus->binMean(0), weight);
-              break;
-           case 130:
-           case 310:
-              _hist10MeanMultiK0->fill(_hist10MeanMultiK0->binMean(0), weight);
-              break;
-           case 221:
-              _hist10MeanMultiEta->fill(_hist10MeanMultiEta->binMean(0), weight);
-              break;
-           case 331:
-              _hist10MeanMultiEtaPrime->fill(_hist10MeanMultiEtaPrime->binMean(0), weight);
-              break;
-           case 411:
-              _hist10MeanMultiDPlus->fill(_hist10MeanMultiDPlus->binMean(0), weight);
-              break;
-           case 421:
-              _hist10MeanMultiD0->fill(_hist10MeanMultiD0->binMean(0), weight);
-              break;
-           case 431:
-              _hist10MeanMultiDPlus_s->fill(_hist10MeanMultiDPlus_s->binMean(0), weight);
-              break;
-           case 9010221:
-              _hist10MeanMultiF0_980->fill(_hist10MeanMultiF0_980->binMean(0), weight);
-              break;
-           case 113:
-              _hist10MeanMultiRho770_0->fill(_hist10MeanMultiRho770_0->binMean(0), weight);
-              break;
-           case 223:
-              _hist10MeanMultiOmega782->fill(_hist10MeanMultiOmega782->binMean(0), weight);
-              break;
-           case 323:
-              _hist10MeanMultiKStar892Plus->fill(_hist10MeanMultiKStar892Plus->binMean(0), weight);
-              break;
-           case 313:
-              _hist10MeanMultiKStar892_0->fill(_hist10MeanMultiKStar892_0->binMean(0), weight);
-              break;
-           case 333:
-              _hist10MeanMultiPhi1020->fill(_hist10MeanMultiPhi1020->binMean(0), weight);
-              break;
-           case 413:
-              _hist10MeanMultiDStar2010Plus->fill(_hist10MeanMultiDStar2010Plus->binMean(0), weight);
-              break;
-           case 423:
-              _hist10MeanMultiDStar2007_0->fill(_hist10MeanMultiDStar2007_0->binMean(0), weight);
-              break;
-           case 433:
-              _hist10MeanMultiDStar_s2112Plus->fill(_hist10MeanMultiDStar_s2112Plus->binMean(0), weight);
-              break;
-           case 443:
-              _hist10MeanMultiJPsi1S->fill(_hist10MeanMultiJPsi1S->binMean(0), weight);
-              break;
-           case 225:
-              _hist10MeanMultiF2_1270->fill(_hist10MeanMultiF2_1270->binMean(0), weight);
-              break;
-           case 2212:
-              _hist10MeanMultiP->fill(_hist10MeanMultiP->binMean(0), weight);
-              break;
-           case 3122:
-              _hist10MeanMultiLambda->fill(_hist10MeanMultiLambda->binMean(0), weight);
-              break;
-           case 3212:
-              _hist10MeanMultiSigma0->fill(_hist10MeanMultiSigma0->binMean(0), weight);
-              break;
-           case 3312:
-              _hist10MeanMultiXiMinus->fill(_hist10MeanMultiXiMinus->binMean(0), weight);
-              break;
-           case 2224:
-              _hist10MeanMultiDelta1232PlusPlus->fill(_hist10MeanMultiDelta1232PlusPlus->binMean(0), weight);
-              break;
-           case 3114:
-              _hist10MeanMultiSigma1385Minus->fill(_hist10MeanMultiSigma1385Minus->binMean(0), weight);
-              _hist10MeanMultiSigma1385PlusMinus->fill(_hist10MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3224:
-              _hist10MeanMultiSigma1385Plus->fill(_hist10MeanMultiSigma1385Plus->binMean(0), weight);
-              _hist10MeanMultiSigma1385PlusMinus->fill(_hist10MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3324:
-              _hist10MeanMultiXi1530_0->fill(_hist10MeanMultiXi1530_0->binMean(0), weight);
-              break;
-           case 3334:
-              _hist10MeanMultiOmegaMinus->fill(_hist10MeanMultiOmegaMinus->binMean(0), weight);
-              break;
-           case 4122:
-              _hist10MeanMultiLambda_c_Plus->fill(_hist10MeanMultiLambda_c_Plus->binMean(0), weight);
-              break;
-           case 4222:
-           case 4112:
-              _hist10MeanMultiSigma_c_PlusPlus_0->fill(_hist10MeanMultiSigma_c_PlusPlus_0->binMean(0), weight);
-              break;
-           case 3124:
-              _hist10MeanMultiLambda1520->fill(_hist10MeanMultiLambda1520->binMean(0), weight);
-              break;
+    /// @name Analysis methods
+    //@{
+
+    void analyze(const Event& e) {
+      // First, veto on leptonic events by requiring at least 4 charged FS particles
+      const FinalState& fs = applyProjection<FinalState>(e, "FS");
+      const size_t numParticles = fs.particles().size();
+      
+      // Even if we only generate hadronic events, we still need a cut on numCharged >= 2.
+      if (numParticles < 2) {
+        getLog() << Log::DEBUG << "Failed leptonic event cut" << endl;
+        vetoEvent;
+      }
+      getLog() << Log::DEBUG << "Passed leptonic event cut" << endl;
+
+      // Get event weight for histo filling
+      const double weight = e.weight();
+
+      // Get beams and average beam momentum
+      const ParticlePair& beams = applyProjection<Beam>(e, "Beams").beams();
+      const double meanBeamMom = ( beams.first.momentum().vector3().mod() + 
+                                   beams.second.momentum().vector3().mod() ) / 2.0;
+      getLog() << Log::DEBUG << "Avg beam momentum = " << meanBeamMom << endl;
+
+      // Final state of unstable particles to get particle spectra
+      const UnstableFinalState& ufs = applyProjection<UnstableFinalState>(e, "UFS");
+
+
+      if (2*meanBeamMom >= 9.5 && 2*meanBeamMom <= 10.5) {
+        for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
+          int id = abs(p->pdgId());
+          switch (id) {
+             case 211:
+                _hist10MeanMultiPiPlus->fill(_hist10MeanMultiPiPlus->binMean(0), weight);
+                break;
+             case 111:
+                _hist10MeanMultiPi0->fill(_hist10MeanMultiPi0->binMean(0), weight);
+                break;
+             case 321:
+                _hist10MeanMultiKPlus->fill(_hist10MeanMultiKPlus->binMean(0), weight);
+                break;
+             case 130:
+             case 310:
+                _hist10MeanMultiK0->fill(_hist10MeanMultiK0->binMean(0), weight);
+                break;
+             case 221:
+                _hist10MeanMultiEta->fill(_hist10MeanMultiEta->binMean(0), weight);
+                break;
+             case 331:
+                _hist10MeanMultiEtaPrime->fill(_hist10MeanMultiEtaPrime->binMean(0), weight);
+                break;
+             case 411:
+                _hist10MeanMultiDPlus->fill(_hist10MeanMultiDPlus->binMean(0), weight);
+                break;
+             case 421:
+                _hist10MeanMultiD0->fill(_hist10MeanMultiD0->binMean(0), weight);
+                break;
+             case 431:
+                _hist10MeanMultiDPlus_s->fill(_hist10MeanMultiDPlus_s->binMean(0), weight);
+                break;
+             case 9010221:
+                _hist10MeanMultiF0_980->fill(_hist10MeanMultiF0_980->binMean(0), weight);
+                break;
+             case 113:
+                _hist10MeanMultiRho770_0->fill(_hist10MeanMultiRho770_0->binMean(0), weight);
+                break;
+             case 223:
+                _hist10MeanMultiOmega782->fill(_hist10MeanMultiOmega782->binMean(0), weight);
+                break;
+             case 323:
+                _hist10MeanMultiKStar892Plus->fill(_hist10MeanMultiKStar892Plus->binMean(0), weight);
+                break;
+             case 313:
+                _hist10MeanMultiKStar892_0->fill(_hist10MeanMultiKStar892_0->binMean(0), weight);
+                break;
+             case 333:
+                _hist10MeanMultiPhi1020->fill(_hist10MeanMultiPhi1020->binMean(0), weight);
+                break;
+             case 413:
+                _hist10MeanMultiDStar2010Plus->fill(_hist10MeanMultiDStar2010Plus->binMean(0), weight);
+                break;
+             case 423:
+                _hist10MeanMultiDStar2007_0->fill(_hist10MeanMultiDStar2007_0->binMean(0), weight);
+                break;
+             case 433:
+                _hist10MeanMultiDStar_s2112Plus->fill(_hist10MeanMultiDStar_s2112Plus->binMean(0), weight);
+                break;
+             case 443:
+                _hist10MeanMultiJPsi1S->fill(_hist10MeanMultiJPsi1S->binMean(0), weight);
+                break;
+             case 225:
+                _hist10MeanMultiF2_1270->fill(_hist10MeanMultiF2_1270->binMean(0), weight);
+                break;
+             case 2212:
+                _hist10MeanMultiP->fill(_hist10MeanMultiP->binMean(0), weight);
+                break;
+             case 3122:
+                _hist10MeanMultiLambda->fill(_hist10MeanMultiLambda->binMean(0), weight);
+                break;
+             case 3212:
+                _hist10MeanMultiSigma0->fill(_hist10MeanMultiSigma0->binMean(0), weight);
+                break;
+             case 3312:
+                _hist10MeanMultiXiMinus->fill(_hist10MeanMultiXiMinus->binMean(0), weight);
+                break;
+             case 2224:
+                _hist10MeanMultiDelta1232PlusPlus->fill(_hist10MeanMultiDelta1232PlusPlus->binMean(0), weight);
+                break;
+             case 3114:
+                _hist10MeanMultiSigma1385Minus->fill(_hist10MeanMultiSigma1385Minus->binMean(0), weight);
+                _hist10MeanMultiSigma1385PlusMinus->fill(_hist10MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3224:
+                _hist10MeanMultiSigma1385Plus->fill(_hist10MeanMultiSigma1385Plus->binMean(0), weight);
+                _hist10MeanMultiSigma1385PlusMinus->fill(_hist10MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3324:
+                _hist10MeanMultiXi1530_0->fill(_hist10MeanMultiXi1530_0->binMean(0), weight);
+                break;
+             case 3334:
+                _hist10MeanMultiOmegaMinus->fill(_hist10MeanMultiOmegaMinus->binMean(0), weight);
+                break;
+             case 4122:
+                _hist10MeanMultiLambda_c_Plus->fill(_hist10MeanMultiLambda_c_Plus->binMean(0), weight);
+                break;
+             case 4222:
+             case 4112:
+                _hist10MeanMultiSigma_c_PlusPlus_0->fill(_hist10MeanMultiSigma_c_PlusPlus_0->binMean(0), weight);
+                break;
+             case 3124:
+                _hist10MeanMultiLambda1520->fill(_hist10MeanMultiLambda1520->binMean(0), weight);
+                break;
+          }
         }
       }
-    }
 
-    if (2*meanBeamMom >= 29 && 2*meanBeamMom <= 35) {
-      for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
-        int id = abs(p->pdgId());
-        switch (id) {
-           case 211:
-              _hist32MeanMultiPiPlus->fill(_hist32MeanMultiPiPlus->binMean(0), weight);
-              break;
-           case 111:
-              _hist32MeanMultiPi0->fill(_hist32MeanMultiPi0->binMean(0), weight);
-              break;
-           case 321:
-              _hist32MeanMultiKPlus->fill(_hist32MeanMultiKPlus->binMean(0), weight);
-              break;
-           case 130:
-           case 310:
-              _hist32MeanMultiK0->fill(_hist32MeanMultiK0->binMean(0), weight);
-              break;
-           case 221:
-              _hist32MeanMultiEta->fill(_hist32MeanMultiEta->binMean(0), weight);
-              break;
-           case 331:
-              _hist32MeanMultiEtaPrime->fill(_hist32MeanMultiEtaPrime->binMean(0), weight);
-              break;
-           case 411:
-              _hist32MeanMultiDPlus->fill(_hist32MeanMultiDPlus->binMean(0), weight);
-              break;
-           case 421:
-              _hist32MeanMultiD0->fill(_hist32MeanMultiD0->binMean(0), weight);
-              break;
-           case 431:
-              _hist32MeanMultiDPlus_s->fill(_hist32MeanMultiDPlus_s->binMean(0), weight);
-              break;
-           case 9010221:
-              _hist32MeanMultiF0_980->fill(_hist32MeanMultiF0_980->binMean(0), weight);
-              break;
-           case 113:
-              _hist32MeanMultiRho770_0->fill(_hist32MeanMultiRho770_0->binMean(0), weight);
-              break;
-           case 323:
-              _hist32MeanMultiKStar892Plus->fill(_hist32MeanMultiKStar892Plus->binMean(0), weight);
-              break;
-           case 313:
-              _hist32MeanMultiKStar892_0->fill(_hist32MeanMultiKStar892_0->binMean(0), weight);
-              break;
-           case 333:
-              _hist32MeanMultiPhi1020->fill(_hist32MeanMultiPhi1020->binMean(0), weight);
-              break;
-           case 413:
-              _hist32MeanMultiDStar2010Plus->fill(_hist32MeanMultiDStar2010Plus->binMean(0), weight);
-              break;
-           case 423:
-              _hist32MeanMultiDStar2007_0->fill(_hist32MeanMultiDStar2007_0->binMean(0), weight);
-              break;
-           case 225:
-              _hist32MeanMultiF2_1270->fill(_hist32MeanMultiF2_1270->binMean(0), weight);
-              break;
-           case 325:
-              _hist32MeanMultiK2Star1430Plus->fill(_hist32MeanMultiK2Star1430Plus->binMean(0), weight);
-              break;
-           case 315:
-              _hist32MeanMultiK2Star1430_0->fill(_hist32MeanMultiK2Star1430_0->binMean(0), weight);
-              break;
-           case 2212:
-              _hist32MeanMultiP->fill(_hist32MeanMultiP->binMean(0), weight);
-              break;
-           case 3122:
-              _hist32MeanMultiLambda->fill(_hist32MeanMultiLambda->binMean(0), weight);
-              break;
-           case 3312:
-              _hist32MeanMultiXiMinus->fill(_hist32MeanMultiXiMinus->binMean(0), weight);
-              break;
-           case 3114:
-              _hist32MeanMultiSigma1385Minus->fill(_hist32MeanMultiSigma1385Minus->binMean(0), weight);
-              _hist32MeanMultiSigma1385PlusMinus->fill(_hist32MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3224:
-              _hist32MeanMultiSigma1385Plus->fill(_hist32MeanMultiSigma1385Plus->binMean(0), weight);
-              _hist32MeanMultiSigma1385PlusMinus->fill(_hist32MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3334:
-              _hist32MeanMultiOmegaMinus->fill(_hist32MeanMultiOmegaMinus->binMean(0), weight);
-              break;
-           case 4122:
-              _hist32MeanMultiLambda_c_Plus->fill(_hist32MeanMultiLambda_c_Plus->binMean(0), weight);
-              break;
+      if (2*meanBeamMom >= 29 && 2*meanBeamMom <= 35) {
+        for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
+          int id = abs(p->pdgId());
+          switch (id) {
+             case 211:
+                _hist32MeanMultiPiPlus->fill(_hist32MeanMultiPiPlus->binMean(0), weight);
+                break;
+             case 111:
+                _hist32MeanMultiPi0->fill(_hist32MeanMultiPi0->binMean(0), weight);
+                break;
+             case 321:
+                _hist32MeanMultiKPlus->fill(_hist32MeanMultiKPlus->binMean(0), weight);
+                break;
+             case 130:
+             case 310:
+                _hist32MeanMultiK0->fill(_hist32MeanMultiK0->binMean(0), weight);
+                break;
+             case 221:
+                _hist32MeanMultiEta->fill(_hist32MeanMultiEta->binMean(0), weight);
+                break;
+             case 331:
+                _hist32MeanMultiEtaPrime->fill(_hist32MeanMultiEtaPrime->binMean(0), weight);
+                break;
+             case 411:
+                _hist32MeanMultiDPlus->fill(_hist32MeanMultiDPlus->binMean(0), weight);
+                break;
+             case 421:
+                _hist32MeanMultiD0->fill(_hist32MeanMultiD0->binMean(0), weight);
+                break;
+             case 431:
+                _hist32MeanMultiDPlus_s->fill(_hist32MeanMultiDPlus_s->binMean(0), weight);
+                break;
+             case 9010221:
+                _hist32MeanMultiF0_980->fill(_hist32MeanMultiF0_980->binMean(0), weight);
+                break;
+             case 113:
+                _hist32MeanMultiRho770_0->fill(_hist32MeanMultiRho770_0->binMean(0), weight);
+                break;
+             case 323:
+                _hist32MeanMultiKStar892Plus->fill(_hist32MeanMultiKStar892Plus->binMean(0), weight);
+                break;
+             case 313:
+                _hist32MeanMultiKStar892_0->fill(_hist32MeanMultiKStar892_0->binMean(0), weight);
+                break;
+             case 333:
+                _hist32MeanMultiPhi1020->fill(_hist32MeanMultiPhi1020->binMean(0), weight);
+                break;
+             case 413:
+                _hist32MeanMultiDStar2010Plus->fill(_hist32MeanMultiDStar2010Plus->binMean(0), weight);
+                break;
+             case 423:
+                _hist32MeanMultiDStar2007_0->fill(_hist32MeanMultiDStar2007_0->binMean(0), weight);
+                break;
+             case 225:
+                _hist32MeanMultiF2_1270->fill(_hist32MeanMultiF2_1270->binMean(0), weight);
+                break;
+             case 325:
+                _hist32MeanMultiK2Star1430Plus->fill(_hist32MeanMultiK2Star1430Plus->binMean(0), weight);
+                break;
+             case 315:
+                _hist32MeanMultiK2Star1430_0->fill(_hist32MeanMultiK2Star1430_0->binMean(0), weight);
+                break;
+             case 2212:
+                _hist32MeanMultiP->fill(_hist32MeanMultiP->binMean(0), weight);
+                break;
+             case 3122:
+                _hist32MeanMultiLambda->fill(_hist32MeanMultiLambda->binMean(0), weight);
+                break;
+             case 3312:
+                _hist32MeanMultiXiMinus->fill(_hist32MeanMultiXiMinus->binMean(0), weight);
+                break;
+             case 3114:
+                _hist32MeanMultiSigma1385Minus->fill(_hist32MeanMultiSigma1385Minus->binMean(0), weight);
+                _hist32MeanMultiSigma1385PlusMinus->fill(_hist32MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3224:
+                _hist32MeanMultiSigma1385Plus->fill(_hist32MeanMultiSigma1385Plus->binMean(0), weight);
+                _hist32MeanMultiSigma1385PlusMinus->fill(_hist32MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3334:
+                _hist32MeanMultiOmegaMinus->fill(_hist32MeanMultiOmegaMinus->binMean(0), weight);
+                break;
+             case 4122:
+                _hist32MeanMultiLambda_c_Plus->fill(_hist32MeanMultiLambda_c_Plus->binMean(0), weight);
+                break;
+          }
         }
       }
-    }
 
 
 
-    if (2*meanBeamMom >= 89.5 && 2*meanBeamMom <= 91.8) {
-      for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
-        int id = abs(p->pdgId());
-        switch (id) {
-           case 211:
-              _hist91MeanMultiPiPlus->fill(_hist91MeanMultiPiPlus->binMean(0), weight);
-              break;
-           case 111:
-              _hist91MeanMultiPi0->fill(_hist91MeanMultiPi0->binMean(0), weight);
-              break;
-           case 321:
-              _hist91MeanMultiKPlus->fill(_hist91MeanMultiKPlus->binMean(0), weight);
-              break;
-           case 130:
-           case 310:
-              _hist91MeanMultiK0->fill(_hist91MeanMultiK0->binMean(0), weight);
-              break;
-           case 221:
-              _hist91MeanMultiEta->fill(_hist91MeanMultiEta->binMean(0), weight);
-              break;
-           case 331:
-              _hist91MeanMultiEtaPrime->fill(_hist91MeanMultiEtaPrime->binMean(0), weight);
-              break;
-           case 411:
-              _hist91MeanMultiDPlus->fill(_hist91MeanMultiDPlus->binMean(0), weight);
-              break;
-           case 421:
-              _hist91MeanMultiD0->fill(_hist91MeanMultiD0->binMean(0), weight);
-              break;
-           case 431:
-              _hist91MeanMultiDPlus_s->fill(_hist91MeanMultiDPlus_s->binMean(0), weight);
-              break;
-           case 511:
-              _hist91MeanMultiBPlus_B0_d->fill(_hist91MeanMultiBPlus_B0_d->binMean(0), weight);
-              break;
-           case 521:
-              _hist91MeanMultiBPlus_B0_d->fill(_hist91MeanMultiBPlus_B0_d->binMean(0), weight);
-              _hist91MeanMultiBPlus_u->fill(_hist91MeanMultiBPlus_u->binMean(0), weight);
-              break;
-           case 531:
-              _hist91MeanMultiB0_s->fill(_hist91MeanMultiB0_s->binMean(0), weight);
-              break;
-           case 9010221:
-              _hist91MeanMultiF0_980->fill(_hist91MeanMultiF0_980->binMean(0), weight);
-              break;
-           case 9000211:
-              _hist91MeanMultiA0_980Plus->fill(_hist91MeanMultiA0_980Plus->binMean(0), weight);
-              break;
-           case 113:
-              _hist91MeanMultiRho770_0->fill(_hist91MeanMultiRho770_0->binMean(0), weight);
-              break;
-           case 213:
-              _hist91MeanMultiRho770Plus->fill(_hist91MeanMultiRho770Plus->binMean(0), weight);
-              break;
-           case 223:
-              _hist91MeanMultiOmega782->fill(_hist91MeanMultiOmega782->binMean(0), weight);
-              break;
-           case 323:
-              _hist91MeanMultiKStar892Plus->fill(_hist91MeanMultiKStar892Plus->binMean(0), weight);
-              break;
-           case 313:
-              _hist91MeanMultiKStar892_0->fill(_hist91MeanMultiKStar892_0->binMean(0), weight);
-              break;
-           case 333:
-              _hist91MeanMultiPhi1020->fill(_hist91MeanMultiPhi1020->binMean(0), weight);
-              break;
-           case 413:
-              _hist91MeanMultiDStar2010Plus->fill(_hist91MeanMultiDStar2010Plus->binMean(0), weight);
-              break;
-           case 433:
-              _hist91MeanMultiDStar_s2112Plus->fill(_hist91MeanMultiDStar_s2112Plus->binMean(0), weight);
-              break;
-           case 513:
-           case 523:
-           case 533:
-              _hist91MeanMultiBStar->fill(_hist91MeanMultiBStar->binMean(0), weight);
-              break;
-           case 443:
-              _hist91MeanMultiJPsi1S->fill(_hist91MeanMultiJPsi1S->binMean(0), weight);
-              break;
-           case 100443:
-              _hist91MeanMultiPsi2S->fill(_hist91MeanMultiPsi2S->binMean(0), weight);
-              break;
-           case 553:
-              _hist91MeanMultiUpsilon1S->fill(_hist91MeanMultiUpsilon1S->binMean(0), weight);
-              break;
-           case 20223:
-              _hist91MeanMultiF1_1285->fill(_hist91MeanMultiF1_1285->binMean(0), weight);
-              break;
-           case 20333:
-              _hist91MeanMultiF1_1420->fill(_hist91MeanMultiF1_1420->binMean(0), weight);
-              break;
-           case 445:
-              _hist91MeanMultiChi_c1_3510->fill(_hist91MeanMultiChi_c1_3510->binMean(0), weight);
-              break;
-           case 225:
-              _hist91MeanMultiF2_1270->fill(_hist91MeanMultiF2_1270->binMean(0), weight);
-              break;
-           case 335:
-              _hist91MeanMultiF2Prime1525->fill(_hist91MeanMultiF2Prime1525->binMean(0), weight);
-              break;
-           case 315:
-              _hist91MeanMultiK2Star1430_0->fill(_hist91MeanMultiK2Star1430_0->binMean(0), weight);
-              break;
-           case 515:
-           case 525:
-           case 535:
-              _hist91MeanMultiBStarStar->fill(_hist91MeanMultiBStarStar->binMean(0), weight);
-              break;
-           case 10433:
-           case 20433:
-              _hist91MeanMultiDs1Plus->fill(_hist91MeanMultiDs1Plus->binMean(0), weight);
-              break;
-           case 435:
-              _hist91MeanMultiDs2Plus->fill(_hist91MeanMultiDs2Plus->binMean(0), weight);
-              break;
-           case 2212:
-              _hist91MeanMultiP->fill(_hist91MeanMultiP->binMean(0), weight);
-              break;
-           case 3122:
-              _hist91MeanMultiLambda->fill(_hist91MeanMultiLambda->binMean(0), weight);
-              break;
-           case 3212:
-              _hist91MeanMultiSigma0->fill(_hist91MeanMultiSigma0->binMean(0), weight);
-              break;
-           case 3112:
-              _hist91MeanMultiSigmaMinus->fill(_hist91MeanMultiSigmaMinus->binMean(0), weight);
-              _hist91MeanMultiSigmaPlusMinus->fill(_hist91MeanMultiSigmaPlusMinus->binMean(0), weight);
-              break;
-           case 3222:
-              _hist91MeanMultiSigmaPlus->fill(_hist91MeanMultiSigmaPlus->binMean(0), weight);
-              _hist91MeanMultiSigmaPlusMinus->fill(_hist91MeanMultiSigmaPlusMinus->binMean(0), weight);
-              break;
-           case 3312:
-              _hist91MeanMultiXiMinus->fill(_hist91MeanMultiXiMinus->binMean(0), weight);
-              break;
-           case 2224:
-              _hist91MeanMultiDelta1232PlusPlus->fill(_hist91MeanMultiDelta1232PlusPlus->binMean(0), weight);
-              break;
-           case 3114:
-              _hist91MeanMultiSigma1385Minus->fill(_hist91MeanMultiSigma1385Minus->binMean(0), weight);
-              _hist91MeanMultiSigma1385PlusMinus->fill(_hist91MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3224:
-              _hist91MeanMultiSigma1385Plus->fill(_hist91MeanMultiSigma1385Plus->binMean(0), weight);
-              _hist91MeanMultiSigma1385PlusMinus->fill(_hist91MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3324:
-              _hist91MeanMultiXi1530_0->fill(_hist91MeanMultiXi1530_0->binMean(0), weight);
-              break;
-           case 3334:
-              _hist91MeanMultiOmegaMinus->fill(_hist91MeanMultiOmegaMinus->binMean(0), weight);
-              break;
-           case 4122:
-              _hist91MeanMultiLambda_c_Plus->fill(_hist91MeanMultiLambda_c_Plus->binMean(0), weight);
-              break;
-           case 5122:
-              _hist91MeanMultiLambda_b_0->fill(_hist91MeanMultiLambda_b_0->binMean(0), weight);
-              break;
-           case 3124:
-              _hist91MeanMultiLambda1520->fill(_hist91MeanMultiLambda1520->binMean(0), weight);
-              break;
+      if (2*meanBeamMom >= 89.5 && 2*meanBeamMom <= 91.8) {
+        for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
+          int id = abs(p->pdgId());
+          switch (id) {
+             case 211:
+                _hist91MeanMultiPiPlus->fill(_hist91MeanMultiPiPlus->binMean(0), weight);
+                break;
+             case 111:
+                _hist91MeanMultiPi0->fill(_hist91MeanMultiPi0->binMean(0), weight);
+                break;
+             case 321:
+                _hist91MeanMultiKPlus->fill(_hist91MeanMultiKPlus->binMean(0), weight);
+                break;
+             case 130:
+             case 310:
+                _hist91MeanMultiK0->fill(_hist91MeanMultiK0->binMean(0), weight);
+                break;
+             case 221:
+                _hist91MeanMultiEta->fill(_hist91MeanMultiEta->binMean(0), weight);
+                break;
+             case 331:
+                _hist91MeanMultiEtaPrime->fill(_hist91MeanMultiEtaPrime->binMean(0), weight);
+                break;
+             case 411:
+                _hist91MeanMultiDPlus->fill(_hist91MeanMultiDPlus->binMean(0), weight);
+                break;
+             case 421:
+                _hist91MeanMultiD0->fill(_hist91MeanMultiD0->binMean(0), weight);
+                break;
+             case 431:
+                _hist91MeanMultiDPlus_s->fill(_hist91MeanMultiDPlus_s->binMean(0), weight);
+                break;
+             case 511:
+                _hist91MeanMultiBPlus_B0_d->fill(_hist91MeanMultiBPlus_B0_d->binMean(0), weight);
+                break;
+             case 521:
+                _hist91MeanMultiBPlus_B0_d->fill(_hist91MeanMultiBPlus_B0_d->binMean(0), weight);
+                _hist91MeanMultiBPlus_u->fill(_hist91MeanMultiBPlus_u->binMean(0), weight);
+                break;
+             case 531:
+                _hist91MeanMultiB0_s->fill(_hist91MeanMultiB0_s->binMean(0), weight);
+                break;
+             case 9010221:
+                _hist91MeanMultiF0_980->fill(_hist91MeanMultiF0_980->binMean(0), weight);
+                break;
+             case 9000211:
+                _hist91MeanMultiA0_980Plus->fill(_hist91MeanMultiA0_980Plus->binMean(0), weight);
+                break;
+             case 113:
+                _hist91MeanMultiRho770_0->fill(_hist91MeanMultiRho770_0->binMean(0), weight);
+                break;
+             case 213:
+                _hist91MeanMultiRho770Plus->fill(_hist91MeanMultiRho770Plus->binMean(0), weight);
+                break;
+             case 223:
+                _hist91MeanMultiOmega782->fill(_hist91MeanMultiOmega782->binMean(0), weight);
+                break;
+             case 323:
+                _hist91MeanMultiKStar892Plus->fill(_hist91MeanMultiKStar892Plus->binMean(0), weight);
+                break;
+             case 313:
+                _hist91MeanMultiKStar892_0->fill(_hist91MeanMultiKStar892_0->binMean(0), weight);
+                break;
+             case 333:
+                _hist91MeanMultiPhi1020->fill(_hist91MeanMultiPhi1020->binMean(0), weight);
+                break;
+             case 413:
+                _hist91MeanMultiDStar2010Plus->fill(_hist91MeanMultiDStar2010Plus->binMean(0), weight);
+                break;
+             case 433:
+                _hist91MeanMultiDStar_s2112Plus->fill(_hist91MeanMultiDStar_s2112Plus->binMean(0), weight);
+                break;
+             case 513:
+             case 523:
+             case 533:
+                _hist91MeanMultiBStar->fill(_hist91MeanMultiBStar->binMean(0), weight);
+                break;
+             case 443:
+                _hist91MeanMultiJPsi1S->fill(_hist91MeanMultiJPsi1S->binMean(0), weight);
+                break;
+             case 100443:
+                _hist91MeanMultiPsi2S->fill(_hist91MeanMultiPsi2S->binMean(0), weight);
+                break;
+             case 553:
+                _hist91MeanMultiUpsilon1S->fill(_hist91MeanMultiUpsilon1S->binMean(0), weight);
+                break;
+             case 20223:
+                _hist91MeanMultiF1_1285->fill(_hist91MeanMultiF1_1285->binMean(0), weight);
+                break;
+             case 20333:
+                _hist91MeanMultiF1_1420->fill(_hist91MeanMultiF1_1420->binMean(0), weight);
+                break;
+             case 445:
+                _hist91MeanMultiChi_c1_3510->fill(_hist91MeanMultiChi_c1_3510->binMean(0), weight);
+                break;
+             case 225:
+                _hist91MeanMultiF2_1270->fill(_hist91MeanMultiF2_1270->binMean(0), weight);
+                break;
+             case 335:
+                _hist91MeanMultiF2Prime1525->fill(_hist91MeanMultiF2Prime1525->binMean(0), weight);
+                break;
+             case 315:
+                _hist91MeanMultiK2Star1430_0->fill(_hist91MeanMultiK2Star1430_0->binMean(0), weight);
+                break;
+             case 515:
+             case 525:
+             case 535:
+                _hist91MeanMultiBStarStar->fill(_hist91MeanMultiBStarStar->binMean(0), weight);
+                break;
+             case 10433:
+             case 20433:
+                _hist91MeanMultiDs1Plus->fill(_hist91MeanMultiDs1Plus->binMean(0), weight);
+                break;
+             case 435:
+                _hist91MeanMultiDs2Plus->fill(_hist91MeanMultiDs2Plus->binMean(0), weight);
+                break;
+             case 2212:
+                _hist91MeanMultiP->fill(_hist91MeanMultiP->binMean(0), weight);
+                break;
+             case 3122:
+                _hist91MeanMultiLambda->fill(_hist91MeanMultiLambda->binMean(0), weight);
+                break;
+             case 3212:
+                _hist91MeanMultiSigma0->fill(_hist91MeanMultiSigma0->binMean(0), weight);
+                break;
+             case 3112:
+                _hist91MeanMultiSigmaMinus->fill(_hist91MeanMultiSigmaMinus->binMean(0), weight);
+                _hist91MeanMultiSigmaPlusMinus->fill(_hist91MeanMultiSigmaPlusMinus->binMean(0), weight);
+                break;
+             case 3222:
+                _hist91MeanMultiSigmaPlus->fill(_hist91MeanMultiSigmaPlus->binMean(0), weight);
+                _hist91MeanMultiSigmaPlusMinus->fill(_hist91MeanMultiSigmaPlusMinus->binMean(0), weight);
+                break;
+             case 3312:
+                _hist91MeanMultiXiMinus->fill(_hist91MeanMultiXiMinus->binMean(0), weight);
+                break;
+             case 2224:
+                _hist91MeanMultiDelta1232PlusPlus->fill(_hist91MeanMultiDelta1232PlusPlus->binMean(0), weight);
+                break;
+             case 3114:
+                _hist91MeanMultiSigma1385Minus->fill(_hist91MeanMultiSigma1385Minus->binMean(0), weight);
+                _hist91MeanMultiSigma1385PlusMinus->fill(_hist91MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3224:
+                _hist91MeanMultiSigma1385Plus->fill(_hist91MeanMultiSigma1385Plus->binMean(0), weight);
+                _hist91MeanMultiSigma1385PlusMinus->fill(_hist91MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3324:
+                _hist91MeanMultiXi1530_0->fill(_hist91MeanMultiXi1530_0->binMean(0), weight);
+                break;
+             case 3334:
+                _hist91MeanMultiOmegaMinus->fill(_hist91MeanMultiOmegaMinus->binMean(0), weight);
+                break;
+             case 4122:
+                _hist91MeanMultiLambda_c_Plus->fill(_hist91MeanMultiLambda_c_Plus->binMean(0), weight);
+                break;
+             case 5122:
+                _hist91MeanMultiLambda_b_0->fill(_hist91MeanMultiLambda_b_0->binMean(0), weight);
+                break;
+             case 3124:
+                _hist91MeanMultiLambda1520->fill(_hist91MeanMultiLambda1520->binMean(0), weight);
+                break;
+          }
         }
       }
-    }
 
 
 
-    if (2*meanBeamMom >= 130 && 2*meanBeamMom <= 200) {
-      for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
-        int id = abs(p->pdgId());
-        switch (id) {
-           case 211:
-              _hist165MeanMultiPiPlus->fill(_hist165MeanMultiPiPlus->binMean(0), weight);
-              break;
-           case 321:
-              _hist165MeanMultiKPlus->fill(_hist165MeanMultiKPlus->binMean(0), weight);
-              break;
-           case 130:
-           case 310:
-              _hist165MeanMultiK0->fill(_hist165MeanMultiK0->binMean(0), weight);
-              break;
-           case 2212:
-              _hist165MeanMultiP->fill(_hist165MeanMultiP->binMean(0), weight);
-              break;
-           case 3122:
-              _hist165MeanMultiLambda->fill(_hist165MeanMultiLambda->binMean(0), weight);
-              break;
+      if (2*meanBeamMom >= 130 && 2*meanBeamMom <= 200) {
+        for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
+          int id = abs(p->pdgId());
+          switch (id) {
+             case 211:
+                _hist165MeanMultiPiPlus->fill(_hist165MeanMultiPiPlus->binMean(0), weight);
+                break;
+             case 321:
+                _hist165MeanMultiKPlus->fill(_hist165MeanMultiKPlus->binMean(0), weight);
+                break;
+             case 130:
+             case 310:
+                _hist165MeanMultiK0->fill(_hist165MeanMultiK0->binMean(0), weight);
+                break;
+             case 2212:
+                _hist165MeanMultiP->fill(_hist165MeanMultiP->binMean(0), weight);
+                break;
+             case 3122:
+                _hist165MeanMultiLambda->fill(_hist165MeanMultiLambda->binMean(0), weight);
+                break;
+          }
         }
       }
+
+
+    }
+
+
+
+    void init() {
+      _hist10MeanMultiPiPlus             = bookHistogram1D( 1, 1, 1);
+      _hist10MeanMultiPi0                = bookHistogram1D( 2, 1, 1);
+      _hist10MeanMultiKPlus              = bookHistogram1D( 3, 1, 1);
+      _hist10MeanMultiK0                 = bookHistogram1D( 4, 1, 1);
+      _hist10MeanMultiEta                = bookHistogram1D( 5, 1, 1);
+      _hist10MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 1);
+      _hist10MeanMultiDPlus              = bookHistogram1D( 7, 1, 1);
+      _hist10MeanMultiD0                 = bookHistogram1D( 8, 1, 1);
+      _hist10MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 1);
+      _hist10MeanMultiF0_980             = bookHistogram1D(13, 1, 1);
+      _hist10MeanMultiRho770_0           = bookHistogram1D(15, 1, 1);
+      _hist10MeanMultiOmega782           = bookHistogram1D(17, 1, 1);
+      _hist10MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 1);
+      _hist10MeanMultiKStar892_0         = bookHistogram1D(19, 1, 1);
+      _hist10MeanMultiPhi1020            = bookHistogram1D(20, 1, 1);
+      _hist10MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 1);
+      _hist10MeanMultiDStar2007_0        = bookHistogram1D(22, 1, 1);
+      _hist10MeanMultiDStar_s2112Plus    = bookHistogram1D(23, 1, 1);
+      _hist10MeanMultiJPsi1S             = bookHistogram1D(25, 1, 1);
+      _hist10MeanMultiF2_1270            = bookHistogram1D(31, 1, 1);
+      _hist10MeanMultiP                  = bookHistogram1D(38, 1, 1);
+      _hist10MeanMultiLambda             = bookHistogram1D(39, 1, 1);
+      _hist10MeanMultiSigma0             = bookHistogram1D(40, 1, 1);
+      _hist10MeanMultiXiMinus            = bookHistogram1D(44, 1, 1);
+      _hist10MeanMultiDelta1232PlusPlus  = bookHistogram1D(45, 1, 1);
+      _hist10MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 1);
+      _hist10MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 1);
+      _hist10MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 1);
+      _hist10MeanMultiXi1530_0           = bookHistogram1D(49, 1, 1);
+      _hist10MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 1);
+      _hist10MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 1);
+      _hist10MeanMultiSigma_c_PlusPlus_0 = bookHistogram1D(53, 1, 1);
+      _hist10MeanMultiLambda1520         = bookHistogram1D(54, 1, 1);
+
+      _hist32MeanMultiPiPlus             = bookHistogram1D( 1, 1, 2);
+      _hist32MeanMultiPi0                = bookHistogram1D( 2, 1, 2);
+      _hist32MeanMultiKPlus              = bookHistogram1D( 3, 1, 2);
+      _hist32MeanMultiK0                 = bookHistogram1D( 4, 1, 2);
+      _hist32MeanMultiEta                = bookHistogram1D( 5, 1, 2);
+      _hist32MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 2);
+      _hist32MeanMultiDPlus              = bookHistogram1D( 7, 1, 2);
+      _hist32MeanMultiD0                 = bookHistogram1D( 8, 1, 2);
+      _hist32MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 2);
+      _hist32MeanMultiF0_980             = bookHistogram1D(13, 1, 2);
+      _hist32MeanMultiRho770_0           = bookHistogram1D(15, 1, 2);
+      _hist32MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 2);
+      _hist32MeanMultiKStar892_0         = bookHistogram1D(19, 1, 2);
+      _hist32MeanMultiPhi1020            = bookHistogram1D(20, 1, 2);
+      _hist32MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 2);
+      _hist32MeanMultiDStar2007_0        = bookHistogram1D(22, 1, 2);
+      _hist32MeanMultiF2_1270            = bookHistogram1D(31, 1, 2);
+      _hist32MeanMultiK2Star1430Plus     = bookHistogram1D(33, 1, 1);
+      _hist32MeanMultiK2Star1430_0       = bookHistogram1D(34, 1, 1);
+      _hist32MeanMultiP                  = bookHistogram1D(38, 1, 2);
+      _hist32MeanMultiLambda             = bookHistogram1D(39, 1, 2);
+      _hist32MeanMultiXiMinus            = bookHistogram1D(44, 1, 2);
+      _hist32MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 2);
+      _hist32MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 2);
+      _hist32MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 2);
+      _hist32MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 2);
+      _hist32MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 2);
+
+      _hist91MeanMultiPiPlus             = bookHistogram1D( 1, 1, 3);
+      _hist91MeanMultiPi0                = bookHistogram1D( 2, 1, 3);
+      _hist91MeanMultiKPlus              = bookHistogram1D( 3, 1, 3);
+      _hist91MeanMultiK0                 = bookHistogram1D( 4, 1, 3);
+      _hist91MeanMultiEta                = bookHistogram1D( 5, 1, 3);
+      _hist91MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 3);
+      _hist91MeanMultiDPlus              = bookHistogram1D( 7, 1, 3);
+      _hist91MeanMultiD0                 = bookHistogram1D( 8, 1, 3);
+      _hist91MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 3);
+      _hist91MeanMultiBPlus_B0_d         = bookHistogram1D(10, 1, 1);
+      _hist91MeanMultiBPlus_u            = bookHistogram1D(11, 1, 1);
+      _hist91MeanMultiB0_s               = bookHistogram1D(12, 1, 1);
+      _hist91MeanMultiF0_980             = bookHistogram1D(13, 1, 3);
+      _hist91MeanMultiA0_980Plus         = bookHistogram1D(14, 1, 1);
+      _hist91MeanMultiRho770_0           = bookHistogram1D(15, 1, 3);
+      _hist91MeanMultiRho770Plus         = bookHistogram1D(16, 1, 1);
+      _hist91MeanMultiOmega782           = bookHistogram1D(17, 1, 2);
+      _hist91MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 3);
+      _hist91MeanMultiKStar892_0         = bookHistogram1D(19, 1, 3);
+      _hist91MeanMultiPhi1020            = bookHistogram1D(20, 1, 3);
+      _hist91MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 3);
+      _hist91MeanMultiDStar_s2112Plus    = bookHistogram1D(23, 1, 2);
+      _hist91MeanMultiBStar              = bookHistogram1D(24, 1, 1);
+      _hist91MeanMultiJPsi1S             = bookHistogram1D(25, 1, 2);
+      _hist91MeanMultiPsi2S              = bookHistogram1D(26, 1, 1);
+      _hist91MeanMultiUpsilon1S          = bookHistogram1D(27, 1, 1);
+      _hist91MeanMultiF1_1285            = bookHistogram1D(28, 1, 1);
+      _hist91MeanMultiF1_1420            = bookHistogram1D(29, 1, 1);
+      _hist91MeanMultiChi_c1_3510        = bookHistogram1D(30, 1, 1);
+      _hist91MeanMultiF2_1270            = bookHistogram1D(31, 1, 3);
+      _hist91MeanMultiF2Prime1525        = bookHistogram1D(32, 1, 1);
+      _hist91MeanMultiK2Star1430_0       = bookHistogram1D(34, 1, 2);
+      _hist91MeanMultiBStarStar          = bookHistogram1D(35, 1, 1);
+      _hist91MeanMultiDs1Plus            = bookHistogram1D(36, 1, 1);
+      _hist91MeanMultiDs2Plus            = bookHistogram1D(37, 1, 1);
+      _hist91MeanMultiP                  = bookHistogram1D(38, 1, 3);
+      _hist91MeanMultiLambda             = bookHistogram1D(39, 1, 3);
+      _hist91MeanMultiSigma0             = bookHistogram1D(40, 1, 2);
+      _hist91MeanMultiSigmaMinus         = bookHistogram1D(41, 1, 1);
+      _hist91MeanMultiSigmaPlus          = bookHistogram1D(42, 1, 1);
+      _hist91MeanMultiSigmaPlusMinus     = bookHistogram1D(43, 1, 1);
+      _hist91MeanMultiXiMinus            = bookHistogram1D(44, 1, 3);
+      _hist91MeanMultiDelta1232PlusPlus  = bookHistogram1D(45, 1, 2);
+      _hist91MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 3);
+      _hist91MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 3);
+      _hist91MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 3);
+      _hist91MeanMultiXi1530_0           = bookHistogram1D(49, 1, 2);
+      _hist91MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 3);
+      _hist91MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 3);
+      _hist91MeanMultiLambda_b_0         = bookHistogram1D(52, 1, 1);
+      _hist91MeanMultiLambda1520         = bookHistogram1D(54, 1, 2);
+
+      _hist165MeanMultiPiPlus            = bookHistogram1D( 1, 1, 4);
+      _hist165MeanMultiKPlus             = bookHistogram1D( 3, 1, 4);
+      _hist165MeanMultiK0                = bookHistogram1D( 4, 1, 4);
+      _hist165MeanMultiP                 = bookHistogram1D(38, 1, 4);
+      _hist165MeanMultiLambda            = bookHistogram1D(39, 1, 4);
+    }
+
+
+
+    // Finalize
+    void finalize() {
+      scale(_hist10MeanMultiPiPlus            , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiPi0               , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiKPlus             , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiK0                , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiEta               , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiEtaPrime          , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiDPlus             , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiD0                , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiDPlus_s           , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiF0_980            , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiRho770_0          , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiOmega782          , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiKStar892Plus      , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiKStar892_0        , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiPhi1020           , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiDStar2010Plus     , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiDStar2007_0       , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiDStar_s2112Plus   , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiJPsi1S            , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiF2_1270           , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiP                 , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiLambda            , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiSigma0            , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiXiMinus           , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiDelta1232PlusPlus , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiSigma1385Minus    , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiSigma1385Plus     , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiSigma1385PlusMinus, 1.0/sumOfWeights());
+      scale(_hist10MeanMultiXi1530_0          , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiOmegaMinus        , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiLambda_c_Plus     , 1.0/sumOfWeights());
+      scale(_hist10MeanMultiSigma_c_PlusPlus_0, 1.0/sumOfWeights());
+      scale(_hist10MeanMultiLambda1520        , 1.0/sumOfWeights());
+
+      scale(_hist32MeanMultiPiPlus            , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiPi0               , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiKPlus             , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiK0                , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiEta               , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiEtaPrime          , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiDPlus             , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiD0                , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiDPlus_s           , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiF0_980            , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiRho770_0          , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiKStar892Plus      , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiKStar892_0        , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiPhi1020           , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiDStar2010Plus     , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiDStar2007_0       , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiF2_1270           , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiK2Star1430Plus    , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiK2Star1430_0      , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiP                 , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiLambda            , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiXiMinus           , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiSigma1385Minus    , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiSigma1385Plus     , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiSigma1385PlusMinus, 1.0/sumOfWeights());
+      scale(_hist32MeanMultiOmegaMinus        , 1.0/sumOfWeights());
+      scale(_hist32MeanMultiLambda_c_Plus     , 1.0/sumOfWeights());
+
+      scale(_hist91MeanMultiPiPlus            , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiPi0               , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiKPlus             , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiK0                , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiEta               , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiEtaPrime          , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiDPlus             , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiD0                , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiDPlus_s           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiBPlus_B0_d        , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiBPlus_u           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiB0_s              , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiF0_980            , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiA0_980Plus        , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiRho770_0          , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiRho770Plus        , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiOmega782          , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiKStar892Plus      , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiKStar892_0        , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiPhi1020           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiDStar2010Plus     , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiDStar_s2112Plus   , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiBStar             , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiJPsi1S            , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiPsi2S             , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiUpsilon1S         , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiF1_1285           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiF1_1420           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiChi_c1_3510       , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiF2_1270           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiF2Prime1525       , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiK2Star1430_0      , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiBStarStar         , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiDs1Plus           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiDs2Plus           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiP                 , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiLambda            , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiSigma0            , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiSigmaMinus        , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiSigmaPlus         , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiSigmaPlusMinus    , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiXiMinus           , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiDelta1232PlusPlus , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiSigma1385Minus    , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiSigma1385Plus     , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiSigma1385PlusMinus, 1.0/sumOfWeights());
+      scale(_hist91MeanMultiXi1530_0          , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiOmegaMinus        , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiLambda_c_Plus     , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiLambda_b_0        , 1.0/sumOfWeights());
+      scale(_hist91MeanMultiLambda1520        , 1.0/sumOfWeights());
+
+      scale(_hist165MeanMultiPiPlus           , 1.0/sumOfWeights());
+      scale(_hist165MeanMultiKPlus            , 1.0/sumOfWeights());
+      scale(_hist165MeanMultiK0               , 1.0/sumOfWeights());
+      scale(_hist165MeanMultiP                , 1.0/sumOfWeights());
+      scale(_hist165MeanMultiLambda           , 1.0/sumOfWeights());
     }
 
 
-  }
+    //@}
+
+
+  private:
+
+    AIDA::IHistogram1D *_hist10MeanMultiPiPlus;
+    AIDA::IHistogram1D *_hist10MeanMultiPi0;
+    AIDA::IHistogram1D *_hist10MeanMultiKPlus;
+    AIDA::IHistogram1D *_hist10MeanMultiK0;
+    AIDA::IHistogram1D *_hist10MeanMultiEta;
+    AIDA::IHistogram1D *_hist10MeanMultiEtaPrime;
+    AIDA::IHistogram1D *_hist10MeanMultiDPlus;
+    AIDA::IHistogram1D *_hist10MeanMultiD0;
+    AIDA::IHistogram1D *_hist10MeanMultiDPlus_s;
+    AIDA::IHistogram1D *_hist10MeanMultiF0_980;
+    AIDA::IHistogram1D *_hist10MeanMultiRho770_0;
+    AIDA::IHistogram1D *_hist10MeanMultiOmega782;
+    AIDA::IHistogram1D *_hist10MeanMultiKStar892Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiKStar892_0;
+    AIDA::IHistogram1D *_hist10MeanMultiPhi1020;
+    AIDA::IHistogram1D *_hist10MeanMultiDStar2010Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiDStar2007_0;
+    AIDA::IHistogram1D *_hist10MeanMultiDStar_s2112Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiJPsi1S;
+    AIDA::IHistogram1D *_hist10MeanMultiF2_1270;
+    AIDA::IHistogram1D *_hist10MeanMultiP;
+    AIDA::IHistogram1D *_hist10MeanMultiLambda;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma0;
+    AIDA::IHistogram1D *_hist10MeanMultiXiMinus;
+    AIDA::IHistogram1D *_hist10MeanMultiDelta1232PlusPlus;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma1385Minus;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma1385Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma1385PlusMinus;
+    AIDA::IHistogram1D *_hist10MeanMultiXi1530_0;
+    AIDA::IHistogram1D *_hist10MeanMultiOmegaMinus;
+    AIDA::IHistogram1D *_hist10MeanMultiLambda_c_Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma_c_PlusPlus_0;
+    AIDA::IHistogram1D *_hist10MeanMultiLambda1520;
+
+    AIDA::IHistogram1D *_hist32MeanMultiPiPlus;
+    AIDA::IHistogram1D *_hist32MeanMultiPi0;
+    AIDA::IHistogram1D *_hist32MeanMultiKPlus;
+    AIDA::IHistogram1D *_hist32MeanMultiK0;
+    AIDA::IHistogram1D *_hist32MeanMultiEta;
+    AIDA::IHistogram1D *_hist32MeanMultiEtaPrime;
+    AIDA::IHistogram1D *_hist32MeanMultiDPlus;
+    AIDA::IHistogram1D *_hist32MeanMultiD0;
+    AIDA::IHistogram1D *_hist32MeanMultiDPlus_s;
+    AIDA::IHistogram1D *_hist32MeanMultiF0_980;
+    AIDA::IHistogram1D *_hist32MeanMultiRho770_0;
+    AIDA::IHistogram1D *_hist32MeanMultiKStar892Plus;
+    AIDA::IHistogram1D *_hist32MeanMultiKStar892_0;
+    AIDA::IHistogram1D *_hist32MeanMultiPhi1020;
+    AIDA::IHistogram1D *_hist32MeanMultiDStar2010Plus;
+    AIDA::IHistogram1D *_hist32MeanMultiDStar2007_0;
+    AIDA::IHistogram1D *_hist32MeanMultiF2_1270;
+    AIDA::IHistogram1D *_hist32MeanMultiK2Star1430Plus;
+    AIDA::IHistogram1D *_hist32MeanMultiK2Star1430_0;
+    AIDA::IHistogram1D *_hist32MeanMultiP;
+    AIDA::IHistogram1D *_hist32MeanMultiLambda;
+    AIDA::IHistogram1D *_hist32MeanMultiXiMinus;
+    AIDA::IHistogram1D *_hist32MeanMultiSigma1385Minus;
+    AIDA::IHistogram1D *_hist32MeanMultiSigma1385Plus;
+    AIDA::IHistogram1D *_hist32MeanMultiSigma1385PlusMinus;
+    AIDA::IHistogram1D *_hist32MeanMultiOmegaMinus;
+    AIDA::IHistogram1D *_hist32MeanMultiLambda_c_Plus;
+
+    AIDA::IHistogram1D *_hist91MeanMultiPiPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiPi0;
+    AIDA::IHistogram1D *_hist91MeanMultiKPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiK0;
+    AIDA::IHistogram1D *_hist91MeanMultiEta;
+    AIDA::IHistogram1D *_hist91MeanMultiEtaPrime;
+    AIDA::IHistogram1D *_hist91MeanMultiDPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiD0;
+    AIDA::IHistogram1D *_hist91MeanMultiDPlus_s;
+    AIDA::IHistogram1D *_hist91MeanMultiBPlus_B0_d;
+    AIDA::IHistogram1D *_hist91MeanMultiBPlus_u;
+    AIDA::IHistogram1D *_hist91MeanMultiB0_s;
+    AIDA::IHistogram1D *_hist91MeanMultiF0_980;
+    AIDA::IHistogram1D *_hist91MeanMultiA0_980Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiRho770_0;
+    AIDA::IHistogram1D *_hist91MeanMultiRho770Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiOmega782;
+    AIDA::IHistogram1D *_hist91MeanMultiKStar892Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiKStar892_0;
+    AIDA::IHistogram1D *_hist91MeanMultiPhi1020;
+    AIDA::IHistogram1D *_hist91MeanMultiDStar2010Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiDStar_s2112Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiBStar;
+    AIDA::IHistogram1D *_hist91MeanMultiJPsi1S;
+    AIDA::IHistogram1D *_hist91MeanMultiPsi2S;
+    AIDA::IHistogram1D *_hist91MeanMultiUpsilon1S;
+    AIDA::IHistogram1D *_hist91MeanMultiF1_1285;
+    AIDA::IHistogram1D *_hist91MeanMultiF1_1420;
+    AIDA::IHistogram1D *_hist91MeanMultiChi_c1_3510;
+    AIDA::IHistogram1D *_hist91MeanMultiF2_1270;
+    AIDA::IHistogram1D *_hist91MeanMultiF2Prime1525;
+    AIDA::IHistogram1D *_hist91MeanMultiK2Star1430_0;
+    AIDA::IHistogram1D *_hist91MeanMultiBStarStar;
+    AIDA::IHistogram1D *_hist91MeanMultiDs1Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiDs2Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiP;
+    AIDA::IHistogram1D *_hist91MeanMultiLambda;
+    AIDA::IHistogram1D *_hist91MeanMultiSigma0;
+    AIDA::IHistogram1D *_hist91MeanMultiSigmaMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigmaPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigmaPlusMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiXiMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiDelta1232PlusPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigma1385Minus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigma1385Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigma1385PlusMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiXi1530_0;
+    AIDA::IHistogram1D *_hist91MeanMultiOmegaMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiLambda_c_Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiLambda_b_0;
+    AIDA::IHistogram1D *_hist91MeanMultiLambda1520;
+
+    AIDA::IHistogram1D *_hist165MeanMultiPiPlus;
+    AIDA::IHistogram1D *_hist165MeanMultiKPlus;
+    AIDA::IHistogram1D *_hist165MeanMultiK0;
+    AIDA::IHistogram1D *_hist165MeanMultiP;
+    AIDA::IHistogram1D *_hist165MeanMultiLambda;
 
+    //@}
 
+  };
 
-  void PDG_HADRON_MULTIPLICITIES::init() {
-    _hist10MeanMultiPiPlus             = bookHistogram1D( 1, 1, 1);
-    _hist10MeanMultiPi0                = bookHistogram1D( 2, 1, 1);
-    _hist10MeanMultiKPlus              = bookHistogram1D( 3, 1, 1);
-    _hist10MeanMultiK0                 = bookHistogram1D( 4, 1, 1);
-    _hist10MeanMultiEta                = bookHistogram1D( 5, 1, 1);
-    _hist10MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 1);
-    _hist10MeanMultiDPlus              = bookHistogram1D( 7, 1, 1);
-    _hist10MeanMultiD0                 = bookHistogram1D( 8, 1, 1);
-    _hist10MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 1);
-    _hist10MeanMultiF0_980             = bookHistogram1D(13, 1, 1);
-    _hist10MeanMultiRho770_0           = bookHistogram1D(15, 1, 1);
-    _hist10MeanMultiOmega782           = bookHistogram1D(17, 1, 1);
-    _hist10MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 1);
-    _hist10MeanMultiKStar892_0         = bookHistogram1D(19, 1, 1);
-    _hist10MeanMultiPhi1020            = bookHistogram1D(20, 1, 1);
-    _hist10MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 1);
-    _hist10MeanMultiDStar2007_0        = bookHistogram1D(22, 1, 1);
-    _hist10MeanMultiDStar_s2112Plus    = bookHistogram1D(23, 1, 1);
-    _hist10MeanMultiJPsi1S             = bookHistogram1D(25, 1, 1);
-    _hist10MeanMultiF2_1270            = bookHistogram1D(31, 1, 1);
-    _hist10MeanMultiP                  = bookHistogram1D(38, 1, 1);
-    _hist10MeanMultiLambda             = bookHistogram1D(39, 1, 1);
-    _hist10MeanMultiSigma0             = bookHistogram1D(40, 1, 1);
-    _hist10MeanMultiXiMinus            = bookHistogram1D(44, 1, 1);
-    _hist10MeanMultiDelta1232PlusPlus  = bookHistogram1D(45, 1, 1);
-    _hist10MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 1);
-    _hist10MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 1);
-    _hist10MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 1);
-    _hist10MeanMultiXi1530_0           = bookHistogram1D(49, 1, 1);
-    _hist10MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 1);
-    _hist10MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 1);
-    _hist10MeanMultiSigma_c_PlusPlus_0 = bookHistogram1D(53, 1, 1);
-    _hist10MeanMultiLambda1520         = bookHistogram1D(54, 1, 1);
-
-    _hist32MeanMultiPiPlus             = bookHistogram1D( 1, 1, 2);
-    _hist32MeanMultiPi0                = bookHistogram1D( 2, 1, 2);
-    _hist32MeanMultiKPlus              = bookHistogram1D( 3, 1, 2);
-    _hist32MeanMultiK0                 = bookHistogram1D( 4, 1, 2);
-    _hist32MeanMultiEta                = bookHistogram1D( 5, 1, 2);
-    _hist32MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 2);
-    _hist32MeanMultiDPlus              = bookHistogram1D( 7, 1, 2);
-    _hist32MeanMultiD0                 = bookHistogram1D( 8, 1, 2);
-    _hist32MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 2);
-    _hist32MeanMultiF0_980             = bookHistogram1D(13, 1, 2);
-    _hist32MeanMultiRho770_0           = bookHistogram1D(15, 1, 2);
-    _hist32MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 2);
-    _hist32MeanMultiKStar892_0         = bookHistogram1D(19, 1, 2);
-    _hist32MeanMultiPhi1020            = bookHistogram1D(20, 1, 2);
-    _hist32MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 2);
-    _hist32MeanMultiDStar2007_0        = bookHistogram1D(22, 1, 2);
-    _hist32MeanMultiF2_1270            = bookHistogram1D(31, 1, 2);
-    _hist32MeanMultiK2Star1430Plus     = bookHistogram1D(33, 1, 1);
-    _hist32MeanMultiK2Star1430_0       = bookHistogram1D(34, 1, 1);
-    _hist32MeanMultiP                  = bookHistogram1D(38, 1, 2);
-    _hist32MeanMultiLambda             = bookHistogram1D(39, 1, 2);
-    _hist32MeanMultiXiMinus            = bookHistogram1D(44, 1, 2);
-    _hist32MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 2);
-    _hist32MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 2);
-    _hist32MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 2);
-    _hist32MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 2);
-    _hist32MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 2);
-
-    _hist91MeanMultiPiPlus             = bookHistogram1D( 1, 1, 3);
-    _hist91MeanMultiPi0                = bookHistogram1D( 2, 1, 3);
-    _hist91MeanMultiKPlus              = bookHistogram1D( 3, 1, 3);
-    _hist91MeanMultiK0                 = bookHistogram1D( 4, 1, 3);
-    _hist91MeanMultiEta                = bookHistogram1D( 5, 1, 3);
-    _hist91MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 3);
-    _hist91MeanMultiDPlus              = bookHistogram1D( 7, 1, 3);
-    _hist91MeanMultiD0                 = bookHistogram1D( 8, 1, 3);
-    _hist91MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 3);
-    _hist91MeanMultiBPlus_B0_d         = bookHistogram1D(10, 1, 1);
-    _hist91MeanMultiBPlus_u            = bookHistogram1D(11, 1, 1);
-    _hist91MeanMultiB0_s               = bookHistogram1D(12, 1, 1);
-    _hist91MeanMultiF0_980             = bookHistogram1D(13, 1, 3);
-    _hist91MeanMultiA0_980Plus         = bookHistogram1D(14, 1, 1);
-    _hist91MeanMultiRho770_0           = bookHistogram1D(15, 1, 3);
-    _hist91MeanMultiRho770Plus         = bookHistogram1D(16, 1, 1);
-    _hist91MeanMultiOmega782           = bookHistogram1D(17, 1, 2);
-    _hist91MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 3);
-    _hist91MeanMultiKStar892_0         = bookHistogram1D(19, 1, 3);
-    _hist91MeanMultiPhi1020            = bookHistogram1D(20, 1, 3);
-    _hist91MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 3);
-    _hist91MeanMultiDStar_s2112Plus    = bookHistogram1D(23, 1, 2);
-    _hist91MeanMultiBStar              = bookHistogram1D(24, 1, 1);
-    _hist91MeanMultiJPsi1S             = bookHistogram1D(25, 1, 2);
-    _hist91MeanMultiPsi2S              = bookHistogram1D(26, 1, 1);
-    _hist91MeanMultiUpsilon1S          = bookHistogram1D(27, 1, 1);
-    _hist91MeanMultiF1_1285            = bookHistogram1D(28, 1, 1);
-    _hist91MeanMultiF1_1420            = bookHistogram1D(29, 1, 1);
-    _hist91MeanMultiChi_c1_3510        = bookHistogram1D(30, 1, 1);
-    _hist91MeanMultiF2_1270            = bookHistogram1D(31, 1, 3);
-    _hist91MeanMultiF2Prime1525        = bookHistogram1D(32, 1, 1);
-    _hist91MeanMultiK2Star1430_0       = bookHistogram1D(34, 1, 2);
-    _hist91MeanMultiBStarStar          = bookHistogram1D(35, 1, 1);
-    _hist91MeanMultiDs1Plus            = bookHistogram1D(36, 1, 1);
-    _hist91MeanMultiDs2Plus            = bookHistogram1D(37, 1, 1);
-    _hist91MeanMultiP                  = bookHistogram1D(38, 1, 3);
-    _hist91MeanMultiLambda             = bookHistogram1D(39, 1, 3);
-    _hist91MeanMultiSigma0             = bookHistogram1D(40, 1, 2);
-    _hist91MeanMultiSigmaMinus         = bookHistogram1D(41, 1, 1);
-    _hist91MeanMultiSigmaPlus          = bookHistogram1D(42, 1, 1);
-    _hist91MeanMultiSigmaPlusMinus     = bookHistogram1D(43, 1, 1);
-    _hist91MeanMultiXiMinus            = bookHistogram1D(44, 1, 3);
-    _hist91MeanMultiDelta1232PlusPlus  = bookHistogram1D(45, 1, 2);
-    _hist91MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 3);
-    _hist91MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 3);
-    _hist91MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 3);
-    _hist91MeanMultiXi1530_0           = bookHistogram1D(49, 1, 2);
-    _hist91MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 3);
-    _hist91MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 3);
-    _hist91MeanMultiLambda_b_0         = bookHistogram1D(52, 1, 1);
-    _hist91MeanMultiLambda1520         = bookHistogram1D(54, 1, 2);
-
-    _hist165MeanMultiPiPlus            = bookHistogram1D( 1, 1, 4);
-    _hist165MeanMultiKPlus             = bookHistogram1D( 3, 1, 4);
-    _hist165MeanMultiK0                = bookHistogram1D( 4, 1, 4);
-    _hist165MeanMultiP                 = bookHistogram1D(38, 1, 4);
-    _hist165MeanMultiLambda            = bookHistogram1D(39, 1, 4);
-  }
-
-  // Finalize
-  void PDG_HADRON_MULTIPLICITIES::finalize() {
-    scale(_hist10MeanMultiPiPlus            , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiPi0               , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiKPlus             , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiK0                , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiEta               , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiEtaPrime          , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiDPlus             , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiD0                , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiDPlus_s           , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiF0_980            , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiRho770_0          , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiOmega782          , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiKStar892Plus      , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiKStar892_0        , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiPhi1020           , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiDStar2010Plus     , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiDStar2007_0       , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiDStar_s2112Plus   , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiJPsi1S            , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiF2_1270           , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiP                 , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiLambda            , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiSigma0            , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiXiMinus           , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiDelta1232PlusPlus , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiSigma1385Minus    , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiSigma1385Plus     , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiSigma1385PlusMinus, 1.0/sumOfWeights());
-    scale(_hist10MeanMultiXi1530_0          , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiOmegaMinus        , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiLambda_c_Plus     , 1.0/sumOfWeights());
-    scale(_hist10MeanMultiSigma_c_PlusPlus_0, 1.0/sumOfWeights());
-    scale(_hist10MeanMultiLambda1520        , 1.0/sumOfWeights());
-
-    scale(_hist32MeanMultiPiPlus            , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiPi0               , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiKPlus             , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiK0                , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiEta               , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiEtaPrime          , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiDPlus             , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiD0                , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiDPlus_s           , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiF0_980            , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiRho770_0          , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiKStar892Plus      , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiKStar892_0        , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiPhi1020           , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiDStar2010Plus     , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiDStar2007_0       , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiF2_1270           , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiK2Star1430Plus    , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiK2Star1430_0      , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiP                 , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiLambda            , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiXiMinus           , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiSigma1385Minus    , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiSigma1385Plus     , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiSigma1385PlusMinus, 1.0/sumOfWeights());
-    scale(_hist32MeanMultiOmegaMinus        , 1.0/sumOfWeights());
-    scale(_hist32MeanMultiLambda_c_Plus     , 1.0/sumOfWeights());
-
-    scale(_hist91MeanMultiPiPlus            , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiPi0               , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiKPlus             , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiK0                , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiEta               , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiEtaPrime          , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiDPlus             , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiD0                , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiDPlus_s           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiBPlus_B0_d        , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiBPlus_u           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiB0_s              , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiF0_980            , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiA0_980Plus        , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiRho770_0          , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiRho770Plus        , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiOmega782          , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiKStar892Plus      , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiKStar892_0        , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiPhi1020           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiDStar2010Plus     , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiDStar_s2112Plus   , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiBStar             , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiJPsi1S            , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiPsi2S             , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiUpsilon1S         , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiF1_1285           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiF1_1420           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiChi_c1_3510       , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiF2_1270           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiF2Prime1525       , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiK2Star1430_0      , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiBStarStar         , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiDs1Plus           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiDs2Plus           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiP                 , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiLambda            , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiSigma0            , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiSigmaMinus        , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiSigmaPlus         , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiSigmaPlusMinus    , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiXiMinus           , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiDelta1232PlusPlus , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiSigma1385Minus    , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiSigma1385Plus     , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiSigma1385PlusMinus, 1.0/sumOfWeights());
-    scale(_hist91MeanMultiXi1530_0          , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiOmegaMinus        , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiLambda_c_Plus     , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiLambda_b_0        , 1.0/sumOfWeights());
-    scale(_hist91MeanMultiLambda1520        , 1.0/sumOfWeights());
-
-    scale(_hist165MeanMultiPiPlus           , 1.0/sumOfWeights());
-    scale(_hist165MeanMultiKPlus            , 1.0/sumOfWeights());
-    scale(_hist165MeanMultiK0               , 1.0/sumOfWeights());
-    scale(_hist165MeanMultiP                , 1.0/sumOfWeights());
-    scale(_hist165MeanMultiLambda           , 1.0/sumOfWeights());
-  }
 
 
   // This global object acts as a hook for the plugin system

Modified: trunk/src/Analyses/PDG_Hadron_Multiplicities_Ratios.cc
==============================================================================
--- trunk/src/Analyses/PDG_Hadron_Multiplicities_Ratios.cc	Mon Aug 31 11:42:59 2009	(r1789)
+++ trunk/src/Analyses/PDG_Hadron_Multiplicities_Ratios.cc	Mon Aug 31 11:52:47 2009	(r1790)
@@ -1,7 +1,6 @@
 // -*- C++ -*-
-#include "Rivet/Rivet.hh"
+#include "Rivet/Analysis.hh"
 #include "Rivet/RivetAIDA.hh"
-#include "Rivet/Analyses/PDG_Hadron_Multiplicities_Ratios.hh"
 #include "Rivet/Tools/ParticleIDMethods.hh"
 #include "Rivet/Projections/Beam.hh"
 #include "Rivet/Projections/FinalState.hh"
@@ -11,678 +10,817 @@
 namespace Rivet {
 
 
-  // Constructor.
-  PDG_HADRON_MULTIPLICITIES_RATIOS::PDG_HADRON_MULTIPLICITIES_RATIOS() 
-    : Analysis("PDG_HADRON_MULTIPLICITIES_RATIOS")
-  {
-    setBeams(ELECTRON, POSITRON); 
-    addProjection(Beam(), "Beams");
-    addProjection(ChargedFinalState(), "FS");
-    addProjection(UnstableFinalState(), "UFS");
-    _weightedTotalNumPiPlus10       = 0.;
-    _weightedTotalNumPiPlus32       = 0.;
-    _weightedTotalNumPiPlus91       = 0.;
-    _weightedTotalNumPiPlus165      = 0.;
-  }
-
-
-  void PDG_HADRON_MULTIPLICITIES_RATIOS::analyze(const Event& e) {
-    // First, veto on leptonic events by requiring at least 4 charged FS particles
-    const FinalState& fs = applyProjection<FinalState>(e, "FS");
-    const size_t numParticles = fs.particles().size();
-
-    // Even if we only generate hadronic events, we still need a cut on numCharged >= 2.
-    if (numParticles < 2) {
-      getLog() << Log::DEBUG << "Failed leptonic event cut" << endl;
-      vetoEvent;
+  /// @brief Implementation of PDG hadron multiplicities as ratios to pi+- multiplicity
+  /// @author Holger Schulz
+  class PDG_HADRON_MULTIPLICITIES_RATIOS : public Analysis {
+  public:
+    
+    /// Constructor
+    PDG_HADRON_MULTIPLICITIES_RATIOS() 
+      : Analysis("PDG_HADRON_MULTIPLICITIES_RATIOS")
+    {
+      setBeams(ELECTRON, POSITRON); 
+      addProjection(Beam(), "Beams");
+      addProjection(ChargedFinalState(), "FS");
+      addProjection(UnstableFinalState(), "UFS");
+      _weightedTotalNumPiPlus10 = 0;
+      _weightedTotalNumPiPlus32 = 0;
+      _weightedTotalNumPiPlus91 = 0;
+      _weightedTotalNumPiPlus165 = 0;
     }
-    getLog() << Log::DEBUG << "Passed leptonic event cut" << endl;
-
-    // Get event weight for histo filling
-    const double weight = e.weight();
-
-    // Get beams and average beam momentum
-    const ParticlePair& beams = applyProjection<Beam>(e, "Beams").beams();
-    const double meanBeamMom = ( beams.first.momentum().vector3().mod() + 
-                                 beams.second.momentum().vector3().mod() ) / 2.0;
-    getLog() << Log::DEBUG << "Avg beam momentum = " << meanBeamMom << endl;
-
-    // Final state of unstable particles to get particle spectra
-    const UnstableFinalState& ufs = applyProjection<UnstableFinalState>(e, "UFS");
-
-
-    if (2*meanBeamMom >= 9.5 && 2*meanBeamMom <= 10.5) {
-      for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
-        int id = abs(p->pdgId());
-        switch (id) {
-           case 211:
-              _weightedTotalNumPiPlus10 += weight;
-              break;
-           case 111:
-              _hist10MeanMultiPi0->fill(_hist10MeanMultiPi0->binMean(0), weight);
-              break;
-           case 321:
-              _hist10MeanMultiKPlus->fill(_hist10MeanMultiKPlus->binMean(0), weight);
-              break;
-           case 130:
-           case 310:
-              _hist10MeanMultiK0->fill(_hist10MeanMultiK0->binMean(0), weight);
-              break;
-           case 221:
-              _hist10MeanMultiEta->fill(_hist10MeanMultiEta->binMean(0), weight);
-              break;
-           case 331:
-              _hist10MeanMultiEtaPrime->fill(_hist10MeanMultiEtaPrime->binMean(0), weight);
-              break;
-           case 411:
-              _hist10MeanMultiDPlus->fill(_hist10MeanMultiDPlus->binMean(0), weight);
-              break;
-           case 421:
-              _hist10MeanMultiD0->fill(_hist10MeanMultiD0->binMean(0), weight);
-              break;
-           case 431:
-              _hist10MeanMultiDPlus_s->fill(_hist10MeanMultiDPlus_s->binMean(0), weight);
-              break;
-           case 9010221:
-              _hist10MeanMultiF0_980->fill(_hist10MeanMultiF0_980->binMean(0), weight);
-              break;
-           case 113:
-              _hist10MeanMultiRho770_0->fill(_hist10MeanMultiRho770_0->binMean(0), weight);
-              break;
-           case 223:
-              _hist10MeanMultiOmega782->fill(_hist10MeanMultiOmega782->binMean(0), weight);
-              break;
-           case 323:
-              _hist10MeanMultiKStar892Plus->fill(_hist10MeanMultiKStar892Plus->binMean(0), weight);
-              break;
-           case 313:
-              _hist10MeanMultiKStar892_0->fill(_hist10MeanMultiKStar892_0->binMean(0), weight);
-              break;
-           case 333:
-              _hist10MeanMultiPhi1020->fill(_hist10MeanMultiPhi1020->binMean(0), weight);
-              break;
-           case 413:
-              _hist10MeanMultiDStar2010Plus->fill(_hist10MeanMultiDStar2010Plus->binMean(0), weight);
-              break;
-           case 423:
-              _hist10MeanMultiDStar2007_0->fill(_hist10MeanMultiDStar2007_0->binMean(0), weight);
-              break;
-           case 433:
-              _hist10MeanMultiDStar_s2112Plus->fill(_hist10MeanMultiDStar_s2112Plus->binMean(0), weight);
-              break;
-           case 443:
-              _hist10MeanMultiJPsi1S->fill(_hist10MeanMultiJPsi1S->binMean(0), weight);
-              break;
-           case 225:
-              _hist10MeanMultiF2_1270->fill(_hist10MeanMultiF2_1270->binMean(0), weight);
-              break;
-           case 2212:
-              _hist10MeanMultiP->fill(_hist10MeanMultiP->binMean(0), weight);
-              break;
-           case 3122:
-              _hist10MeanMultiLambda->fill(_hist10MeanMultiLambda->binMean(0), weight);
-              break;
-           case 3212:
-              _hist10MeanMultiSigma0->fill(_hist10MeanMultiSigma0->binMean(0), weight);
-              break;
-           case 3312:
-              _hist10MeanMultiXiMinus->fill(_hist10MeanMultiXiMinus->binMean(0), weight);
-              break;
-           case 2224:
-              _hist10MeanMultiDelta1232PlusPlus->fill(_hist10MeanMultiDelta1232PlusPlus->binMean(0), weight);
-              break;
-           case 3114:
-              _hist10MeanMultiSigma1385Minus->fill(_hist10MeanMultiSigma1385Minus->binMean(0), weight);
-              _hist10MeanMultiSigma1385PlusMinus->fill(_hist10MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3224:
-              _hist10MeanMultiSigma1385Plus->fill(_hist10MeanMultiSigma1385Plus->binMean(0), weight);
-              _hist10MeanMultiSigma1385PlusMinus->fill(_hist10MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3324:
-              _hist10MeanMultiXi1530_0->fill(_hist10MeanMultiXi1530_0->binMean(0), weight);
-              break;
-           case 3334:
-              _hist10MeanMultiOmegaMinus->fill(_hist10MeanMultiOmegaMinus->binMean(0), weight);
-              break;
-           case 4122:
-              _hist10MeanMultiLambda_c_Plus->fill(_hist10MeanMultiLambda_c_Plus->binMean(0), weight);
-              break;
-           case 4222:
-           case 4112:
-              _hist10MeanMultiSigma_c_PlusPlus_0->fill(_hist10MeanMultiSigma_c_PlusPlus_0->binMean(0), weight);
-              break;
-           case 3124:
-              _hist10MeanMultiLambda1520->fill(_hist10MeanMultiLambda1520->binMean(0), weight);
-              break;
+    
+    
+    /// @name Analysis methods
+    //@{
+
+    void analyze(const Event& e) {
+      // First, veto on leptonic events by requiring at least 4 charged FS particles
+      const FinalState& fs = applyProjection<FinalState>(e, "FS");
+      const size_t numParticles = fs.particles().size();
+      
+      // Even if we only generate hadronic events, we still need a cut on numCharged >= 2.
+      if (numParticles < 2) {
+        getLog() << Log::DEBUG << "Failed leptonic event cut" << endl;
+        vetoEvent;
+      }
+      getLog() << Log::DEBUG << "Passed leptonic event cut" << endl;
+      
+      // Get event weight for histo filling
+      const double weight = e.weight();
+
+      // Get beams and average beam momentum
+      const ParticlePair& beams = applyProjection<Beam>(e, "Beams").beams();
+      const double meanBeamMom = ( beams.first.momentum().vector3().mod() + 
+                                   beams.second.momentum().vector3().mod() ) / 2.0;
+      getLog() << Log::DEBUG << "Avg beam momentum = " << meanBeamMom << endl;
+
+      // Final state of unstable particles to get particle spectra
+      const UnstableFinalState& ufs = applyProjection<UnstableFinalState>(e, "UFS");
+
+
+      if (2*meanBeamMom >= 9.5 && 2*meanBeamMom <= 10.5) {
+        for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
+          int id = abs(p->pdgId());
+          switch (id) {
+             case 211:
+                _weightedTotalNumPiPlus10 += weight;
+                break;
+             case 111:
+                _hist10MeanMultiPi0->fill(_hist10MeanMultiPi0->binMean(0), weight);
+                break;
+             case 321:
+                _hist10MeanMultiKPlus->fill(_hist10MeanMultiKPlus->binMean(0), weight);
+                break;
+             case 130:
+             case 310:
+                _hist10MeanMultiK0->fill(_hist10MeanMultiK0->binMean(0), weight);
+                break;
+             case 221:
+                _hist10MeanMultiEta->fill(_hist10MeanMultiEta->binMean(0), weight);
+                break;
+             case 331:
+                _hist10MeanMultiEtaPrime->fill(_hist10MeanMultiEtaPrime->binMean(0), weight);
+                break;
+             case 411:
+                _hist10MeanMultiDPlus->fill(_hist10MeanMultiDPlus->binMean(0), weight);
+                break;
+             case 421:
+                _hist10MeanMultiD0->fill(_hist10MeanMultiD0->binMean(0), weight);
+                break;
+             case 431:
+                _hist10MeanMultiDPlus_s->fill(_hist10MeanMultiDPlus_s->binMean(0), weight);
+                break;
+             case 9010221:
+                _hist10MeanMultiF0_980->fill(_hist10MeanMultiF0_980->binMean(0), weight);
+                break;
+             case 113:
+                _hist10MeanMultiRho770_0->fill(_hist10MeanMultiRho770_0->binMean(0), weight);
+                break;
+             case 223:
+                _hist10MeanMultiOmega782->fill(_hist10MeanMultiOmega782->binMean(0), weight);
+                break;
+             case 323:
+                _hist10MeanMultiKStar892Plus->fill(_hist10MeanMultiKStar892Plus->binMean(0), weight);
+                break;
+             case 313:
+                _hist10MeanMultiKStar892_0->fill(_hist10MeanMultiKStar892_0->binMean(0), weight);
+                break;
+             case 333:
+                _hist10MeanMultiPhi1020->fill(_hist10MeanMultiPhi1020->binMean(0), weight);
+                break;
+             case 413:
+                _hist10MeanMultiDStar2010Plus->fill(_hist10MeanMultiDStar2010Plus->binMean(0), weight);
+                break;
+             case 423:
+                _hist10MeanMultiDStar2007_0->fill(_hist10MeanMultiDStar2007_0->binMean(0), weight);
+                break;
+             case 433:
+                _hist10MeanMultiDStar_s2112Plus->fill(_hist10MeanMultiDStar_s2112Plus->binMean(0), weight);
+                break;
+             case 443:
+                _hist10MeanMultiJPsi1S->fill(_hist10MeanMultiJPsi1S->binMean(0), weight);
+                break;
+             case 225:
+                _hist10MeanMultiF2_1270->fill(_hist10MeanMultiF2_1270->binMean(0), weight);
+                break;
+             case 2212:
+                _hist10MeanMultiP->fill(_hist10MeanMultiP->binMean(0), weight);
+                break;
+             case 3122:
+                _hist10MeanMultiLambda->fill(_hist10MeanMultiLambda->binMean(0), weight);
+                break;
+             case 3212:
+                _hist10MeanMultiSigma0->fill(_hist10MeanMultiSigma0->binMean(0), weight);
+                break;
+             case 3312:
+                _hist10MeanMultiXiMinus->fill(_hist10MeanMultiXiMinus->binMean(0), weight);
+                break;
+             case 2224:
+                _hist10MeanMultiDelta1232PlusPlus->fill(_hist10MeanMultiDelta1232PlusPlus->binMean(0), weight);
+                break;
+             case 3114:
+                _hist10MeanMultiSigma1385Minus->fill(_hist10MeanMultiSigma1385Minus->binMean(0), weight);
+                _hist10MeanMultiSigma1385PlusMinus->fill(_hist10MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3224:
+                _hist10MeanMultiSigma1385Plus->fill(_hist10MeanMultiSigma1385Plus->binMean(0), weight);
+                _hist10MeanMultiSigma1385PlusMinus->fill(_hist10MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3324:
+                _hist10MeanMultiXi1530_0->fill(_hist10MeanMultiXi1530_0->binMean(0), weight);
+                break;
+             case 3334:
+                _hist10MeanMultiOmegaMinus->fill(_hist10MeanMultiOmegaMinus->binMean(0), weight);
+                break;
+             case 4122:
+                _hist10MeanMultiLambda_c_Plus->fill(_hist10MeanMultiLambda_c_Plus->binMean(0), weight);
+                break;
+             case 4222:
+             case 4112:
+                _hist10MeanMultiSigma_c_PlusPlus_0->fill(_hist10MeanMultiSigma_c_PlusPlus_0->binMean(0), weight);
+                break;
+             case 3124:
+                _hist10MeanMultiLambda1520->fill(_hist10MeanMultiLambda1520->binMean(0), weight);
+                break;
+          }
         }
       }
-    }
 
-    if (2*meanBeamMom >= 29 && 2*meanBeamMom <= 35) {
-      for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
-        int id = abs(p->pdgId());
-        switch (id) {
-           case 211:
-              _weightedTotalNumPiPlus32 += weight;
-              break;
-           case 111:
-              _hist32MeanMultiPi0->fill(_hist32MeanMultiPi0->binMean(0), weight);
-              break;
-           case 321:
-              _hist32MeanMultiKPlus->fill(_hist32MeanMultiKPlus->binMean(0), weight);
-              break;
-           case 130:
-           case 310:
-              _hist32MeanMultiK0->fill(_hist32MeanMultiK0->binMean(0), weight);
-              break;
-           case 221:
-              _hist32MeanMultiEta->fill(_hist32MeanMultiEta->binMean(0), weight);
-              break;
-           case 331:
-              _hist32MeanMultiEtaPrime->fill(_hist32MeanMultiEtaPrime->binMean(0), weight);
-              break;
-           case 411:
-              _hist32MeanMultiDPlus->fill(_hist32MeanMultiDPlus->binMean(0), weight);
-              break;
-           case 421:
-              _hist32MeanMultiD0->fill(_hist32MeanMultiD0->binMean(0), weight);
-              break;
-           case 431:
-              _hist32MeanMultiDPlus_s->fill(_hist32MeanMultiDPlus_s->binMean(0), weight);
-              break;
-           case 9010221:
-              _hist32MeanMultiF0_980->fill(_hist32MeanMultiF0_980->binMean(0), weight);
-              break;
-           case 113:
-              _hist32MeanMultiRho770_0->fill(_hist32MeanMultiRho770_0->binMean(0), weight);
-              break;
-           case 323:
-              _hist32MeanMultiKStar892Plus->fill(_hist32MeanMultiKStar892Plus->binMean(0), weight);
-              break;
-           case 313:
-              _hist32MeanMultiKStar892_0->fill(_hist32MeanMultiKStar892_0->binMean(0), weight);
-              break;
-           case 333:
-              _hist32MeanMultiPhi1020->fill(_hist32MeanMultiPhi1020->binMean(0), weight);
-              break;
-           case 413:
-              _hist32MeanMultiDStar2010Plus->fill(_hist32MeanMultiDStar2010Plus->binMean(0), weight);
-              break;
-           case 423:
-              _hist32MeanMultiDStar2007_0->fill(_hist32MeanMultiDStar2007_0->binMean(0), weight);
-              break;
-           case 225:
-              _hist32MeanMultiF2_1270->fill(_hist32MeanMultiF2_1270->binMean(0), weight);
-              break;
-           case 325:
-              _hist32MeanMultiK2Star1430Plus->fill(_hist32MeanMultiK2Star1430Plus->binMean(0), weight);
-              break;
-           case 315:
-              _hist32MeanMultiK2Star1430_0->fill(_hist32MeanMultiK2Star1430_0->binMean(0), weight);
-              break;
-           case 2212:
-              _hist32MeanMultiP->fill(_hist32MeanMultiP->binMean(0), weight);
-              break;
-           case 3122:
-              _hist32MeanMultiLambda->fill(_hist32MeanMultiLambda->binMean(0), weight);
-              break;
-           case 3312:
-              _hist32MeanMultiXiMinus->fill(_hist32MeanMultiXiMinus->binMean(0), weight);
-              break;
-           case 3114:
-              _hist32MeanMultiSigma1385Minus->fill(_hist32MeanMultiSigma1385Minus->binMean(0), weight);
-              _hist32MeanMultiSigma1385PlusMinus->fill(_hist32MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3224:
-              _hist32MeanMultiSigma1385Plus->fill(_hist32MeanMultiSigma1385Plus->binMean(0), weight);
-              _hist32MeanMultiSigma1385PlusMinus->fill(_hist32MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3334:
-              _hist32MeanMultiOmegaMinus->fill(_hist32MeanMultiOmegaMinus->binMean(0), weight);
-              break;
-           case 4122:
-              _hist32MeanMultiLambda_c_Plus->fill(_hist32MeanMultiLambda_c_Plus->binMean(0), weight);
-              break;
+      if (2*meanBeamMom >= 29 && 2*meanBeamMom <= 35) {
+        for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
+          int id = abs(p->pdgId());
+          switch (id) {
+             case 211:
+                _weightedTotalNumPiPlus32 += weight;
+                break;
+             case 111:
+                _hist32MeanMultiPi0->fill(_hist32MeanMultiPi0->binMean(0), weight);
+                break;
+             case 321:
+                _hist32MeanMultiKPlus->fill(_hist32MeanMultiKPlus->binMean(0), weight);
+                break;
+             case 130:
+             case 310:
+                _hist32MeanMultiK0->fill(_hist32MeanMultiK0->binMean(0), weight);
+                break;
+             case 221:
+                _hist32MeanMultiEta->fill(_hist32MeanMultiEta->binMean(0), weight);
+                break;
+             case 331:
+                _hist32MeanMultiEtaPrime->fill(_hist32MeanMultiEtaPrime->binMean(0), weight);
+                break;
+             case 411:
+                _hist32MeanMultiDPlus->fill(_hist32MeanMultiDPlus->binMean(0), weight);
+                break;
+             case 421:
+                _hist32MeanMultiD0->fill(_hist32MeanMultiD0->binMean(0), weight);
+                break;
+             case 431:
+                _hist32MeanMultiDPlus_s->fill(_hist32MeanMultiDPlus_s->binMean(0), weight);
+                break;
+             case 9010221:
+                _hist32MeanMultiF0_980->fill(_hist32MeanMultiF0_980->binMean(0), weight);
+                break;
+             case 113:
+                _hist32MeanMultiRho770_0->fill(_hist32MeanMultiRho770_0->binMean(0), weight);
+                break;
+             case 323:
+                _hist32MeanMultiKStar892Plus->fill(_hist32MeanMultiKStar892Plus->binMean(0), weight);
+                break;
+             case 313:
+                _hist32MeanMultiKStar892_0->fill(_hist32MeanMultiKStar892_0->binMean(0), weight);
+                break;
+             case 333:
+                _hist32MeanMultiPhi1020->fill(_hist32MeanMultiPhi1020->binMean(0), weight);
+                break;
+             case 413:
+                _hist32MeanMultiDStar2010Plus->fill(_hist32MeanMultiDStar2010Plus->binMean(0), weight);
+                break;
+             case 423:
+                _hist32MeanMultiDStar2007_0->fill(_hist32MeanMultiDStar2007_0->binMean(0), weight);
+                break;
+             case 225:
+                _hist32MeanMultiF2_1270->fill(_hist32MeanMultiF2_1270->binMean(0), weight);
+                break;
+             case 325:
+                _hist32MeanMultiK2Star1430Plus->fill(_hist32MeanMultiK2Star1430Plus->binMean(0), weight);
+                break;
+             case 315:
+                _hist32MeanMultiK2Star1430_0->fill(_hist32MeanMultiK2Star1430_0->binMean(0), weight);
+                break;
+             case 2212:
+                _hist32MeanMultiP->fill(_hist32MeanMultiP->binMean(0), weight);
+                break;
+             case 3122:
+                _hist32MeanMultiLambda->fill(_hist32MeanMultiLambda->binMean(0), weight);
+                break;
+             case 3312:
+                _hist32MeanMultiXiMinus->fill(_hist32MeanMultiXiMinus->binMean(0), weight);
+                break;
+             case 3114:
+                _hist32MeanMultiSigma1385Minus->fill(_hist32MeanMultiSigma1385Minus->binMean(0), weight);
+                _hist32MeanMultiSigma1385PlusMinus->fill(_hist32MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3224:
+                _hist32MeanMultiSigma1385Plus->fill(_hist32MeanMultiSigma1385Plus->binMean(0), weight);
+                _hist32MeanMultiSigma1385PlusMinus->fill(_hist32MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3334:
+                _hist32MeanMultiOmegaMinus->fill(_hist32MeanMultiOmegaMinus->binMean(0), weight);
+                break;
+             case 4122:
+                _hist32MeanMultiLambda_c_Plus->fill(_hist32MeanMultiLambda_c_Plus->binMean(0), weight);
+                break;
+          }
         }
       }
-    }
 
 
 
-    if (2*meanBeamMom >= 89.5 && 2*meanBeamMom <= 91.8) {
-      for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
-        int id = abs(p->pdgId());
-        switch (id) {
-           case 211:
-              _weightedTotalNumPiPlus91 += weight;
-              break;
-           case 111:
-              _hist91MeanMultiPi0->fill(_hist91MeanMultiPi0->binMean(0), weight);
-              break;
-           case 321:
-              _hist91MeanMultiKPlus->fill(_hist91MeanMultiKPlus->binMean(0), weight);
-              break;
-           case 130:
-           case 310:
-              _hist91MeanMultiK0->fill(_hist91MeanMultiK0->binMean(0), weight);
-              break;
-           case 221:
-              _hist91MeanMultiEta->fill(_hist91MeanMultiEta->binMean(0), weight);
-              break;
-           case 331:
-              _hist91MeanMultiEtaPrime->fill(_hist91MeanMultiEtaPrime->binMean(0), weight);
-              break;
-           case 411:
-              _hist91MeanMultiDPlus->fill(_hist91MeanMultiDPlus->binMean(0), weight);
-              break;
-           case 421:
-              _hist91MeanMultiD0->fill(_hist91MeanMultiD0->binMean(0), weight);
-              break;
-           case 431:
-              _hist91MeanMultiDPlus_s->fill(_hist91MeanMultiDPlus_s->binMean(0), weight);
-              break;
-           case 511:
-              _hist91MeanMultiBPlus_B0_d->fill(_hist91MeanMultiBPlus_B0_d->binMean(0), weight);
-              break;
-           case 521:
-              _hist91MeanMultiBPlus_B0_d->fill(_hist91MeanMultiBPlus_B0_d->binMean(0), weight);
-              _hist91MeanMultiBPlus_u->fill(_hist91MeanMultiBPlus_u->binMean(0), weight);
-              break;
-           case 531:
-              _hist91MeanMultiB0_s->fill(_hist91MeanMultiB0_s->binMean(0), weight);
-              break;
-           case 9010221:
-              _hist91MeanMultiF0_980->fill(_hist91MeanMultiF0_980->binMean(0), weight);
-              break;
-           case 9000211:
-              _hist91MeanMultiA0_980Plus->fill(_hist91MeanMultiA0_980Plus->binMean(0), weight);
-              break;
-           case 113:
-              _hist91MeanMultiRho770_0->fill(_hist91MeanMultiRho770_0->binMean(0), weight);
-              break;
-           case 213:
-              _hist91MeanMultiRho770Plus->fill(_hist91MeanMultiRho770Plus->binMean(0), weight);
-              break;
-           case 223:
-              _hist91MeanMultiOmega782->fill(_hist91MeanMultiOmega782->binMean(0), weight);
-              break;
-           case 323:
-              _hist91MeanMultiKStar892Plus->fill(_hist91MeanMultiKStar892Plus->binMean(0), weight);
-              break;
-           case 313:
-              _hist91MeanMultiKStar892_0->fill(_hist91MeanMultiKStar892_0->binMean(0), weight);
-              break;
-           case 333:
-              _hist91MeanMultiPhi1020->fill(_hist91MeanMultiPhi1020->binMean(0), weight);
-              break;
-           case 413:
-              _hist91MeanMultiDStar2010Plus->fill(_hist91MeanMultiDStar2010Plus->binMean(0), weight);
-              break;
-           case 433:
-              _hist91MeanMultiDStar_s2112Plus->fill(_hist91MeanMultiDStar_s2112Plus->binMean(0), weight);
-              break;
-           case 513:
-           case 523:
-           case 533:
-              _hist91MeanMultiBStar->fill(_hist91MeanMultiBStar->binMean(0), weight);
-              break;
-           case 443:
-              _hist91MeanMultiJPsi1S->fill(_hist91MeanMultiJPsi1S->binMean(0), weight);
-              break;
-           case 100443:
-              _hist91MeanMultiPsi2S->fill(_hist91MeanMultiPsi2S->binMean(0), weight);
-              break;
-           case 553:
-              _hist91MeanMultiUpsilon1S->fill(_hist91MeanMultiUpsilon1S->binMean(0), weight);
-              break;
-           case 20223:
-              _hist91MeanMultiF1_1285->fill(_hist91MeanMultiF1_1285->binMean(0), weight);
-              break;
-           case 20333:
-              _hist91MeanMultiF1_1420->fill(_hist91MeanMultiF1_1420->binMean(0), weight);
-              break;
-           case 445:
-              _hist91MeanMultiChi_c1_3510->fill(_hist91MeanMultiChi_c1_3510->binMean(0), weight);
-              break;
-           case 225:
-              _hist91MeanMultiF2_1270->fill(_hist91MeanMultiF2_1270->binMean(0), weight);
-              break;
-           case 335:
-              _hist91MeanMultiF2Prime1525->fill(_hist91MeanMultiF2Prime1525->binMean(0), weight);
-              break;
-           case 315:
-              _hist91MeanMultiK2Star1430_0->fill(_hist91MeanMultiK2Star1430_0->binMean(0), weight);
-              break;
-           case 515:
-           case 525:
-           case 535:
-              _hist91MeanMultiBStarStar->fill(_hist91MeanMultiBStarStar->binMean(0), weight);
-              break;
-           case 10433:
-           case 20433:
-              _hist91MeanMultiDs1Plus->fill(_hist91MeanMultiDs1Plus->binMean(0), weight);
-              break;
-           case 435:
-              _hist91MeanMultiDs2Plus->fill(_hist91MeanMultiDs2Plus->binMean(0), weight);
-              break;
-           case 2212:
-              _hist91MeanMultiP->fill(_hist91MeanMultiP->binMean(0), weight);
-              break;
-           case 3122:
-              _hist91MeanMultiLambda->fill(_hist91MeanMultiLambda->binMean(0), weight);
-              break;
-           case 3212:
-              _hist91MeanMultiSigma0->fill(_hist91MeanMultiSigma0->binMean(0), weight);
-              break;
-           case 3112:
-              _hist91MeanMultiSigmaMinus->fill(_hist91MeanMultiSigmaMinus->binMean(0), weight);
-              _hist91MeanMultiSigmaPlusMinus->fill(_hist91MeanMultiSigmaPlusMinus->binMean(0), weight);
-              break;
-           case 3222:
-              _hist91MeanMultiSigmaPlus->fill(_hist91MeanMultiSigmaPlus->binMean(0), weight);
-              _hist91MeanMultiSigmaPlusMinus->fill(_hist91MeanMultiSigmaPlusMinus->binMean(0), weight);
-              break;
-           case 3312:
-              _hist91MeanMultiXiMinus->fill(_hist91MeanMultiXiMinus->binMean(0), weight);
-              break;
-           case 2224:
-              _hist91MeanMultiDelta1232PlusPlus->fill(_hist91MeanMultiDelta1232PlusPlus->binMean(0), weight);
-              break;
-           case 3114:
-              _hist91MeanMultiSigma1385Minus->fill(_hist91MeanMultiSigma1385Minus->binMean(0), weight);
-              _hist91MeanMultiSigma1385PlusMinus->fill(_hist91MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3224:
-              _hist91MeanMultiSigma1385Plus->fill(_hist91MeanMultiSigma1385Plus->binMean(0), weight);
-              _hist91MeanMultiSigma1385PlusMinus->fill(_hist91MeanMultiSigma1385PlusMinus->binMean(0), weight);
-              break;
-           case 3324:
-              _hist91MeanMultiXi1530_0->fill(_hist91MeanMultiXi1530_0->binMean(0), weight);
-              break;
-           case 3334:
-              _hist91MeanMultiOmegaMinus->fill(_hist91MeanMultiOmegaMinus->binMean(0), weight);
-              break;
-           case 4122:
-              _hist91MeanMultiLambda_c_Plus->fill(_hist91MeanMultiLambda_c_Plus->binMean(0), weight);
-              break;
-           case 5122:
-              _hist91MeanMultiLambda_b_0->fill(_hist91MeanMultiLambda_b_0->binMean(0), weight);
-              break;
-           case 3124:
-              _hist91MeanMultiLambda1520->fill(_hist91MeanMultiLambda1520->binMean(0), weight);
-              break;
+      if (2*meanBeamMom >= 89.5 && 2*meanBeamMom <= 91.8) {
+        for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
+          int id = abs(p->pdgId());
+          switch (id) {
+             case 211:
+                _weightedTotalNumPiPlus91 += weight;
+                break;
+             case 111:
+                _hist91MeanMultiPi0->fill(_hist91MeanMultiPi0->binMean(0), weight);
+                break;
+             case 321:
+                _hist91MeanMultiKPlus->fill(_hist91MeanMultiKPlus->binMean(0), weight);
+                break;
+             case 130:
+             case 310:
+                _hist91MeanMultiK0->fill(_hist91MeanMultiK0->binMean(0), weight);
+                break;
+             case 221:
+                _hist91MeanMultiEta->fill(_hist91MeanMultiEta->binMean(0), weight);
+                break;
+             case 331:
+                _hist91MeanMultiEtaPrime->fill(_hist91MeanMultiEtaPrime->binMean(0), weight);
+                break;
+             case 411:
+                _hist91MeanMultiDPlus->fill(_hist91MeanMultiDPlus->binMean(0), weight);
+                break;
+             case 421:
+                _hist91MeanMultiD0->fill(_hist91MeanMultiD0->binMean(0), weight);
+                break;
+             case 431:
+                _hist91MeanMultiDPlus_s->fill(_hist91MeanMultiDPlus_s->binMean(0), weight);
+                break;
+             case 511:
+                _hist91MeanMultiBPlus_B0_d->fill(_hist91MeanMultiBPlus_B0_d->binMean(0), weight);
+                break;
+             case 521:
+                _hist91MeanMultiBPlus_B0_d->fill(_hist91MeanMultiBPlus_B0_d->binMean(0), weight);
+                _hist91MeanMultiBPlus_u->fill(_hist91MeanMultiBPlus_u->binMean(0), weight);
+                break;
+             case 531:
+                _hist91MeanMultiB0_s->fill(_hist91MeanMultiB0_s->binMean(0), weight);
+                break;
+             case 9010221:
+                _hist91MeanMultiF0_980->fill(_hist91MeanMultiF0_980->binMean(0), weight);
+                break;
+             case 9000211:
+                _hist91MeanMultiA0_980Plus->fill(_hist91MeanMultiA0_980Plus->binMean(0), weight);
+                break;
+             case 113:
+                _hist91MeanMultiRho770_0->fill(_hist91MeanMultiRho770_0->binMean(0), weight);
+                break;
+             case 213:
+                _hist91MeanMultiRho770Plus->fill(_hist91MeanMultiRho770Plus->binMean(0), weight);
+                break;
+             case 223:
+                _hist91MeanMultiOmega782->fill(_hist91MeanMultiOmega782->binMean(0), weight);
+                break;
+             case 323:
+                _hist91MeanMultiKStar892Plus->fill(_hist91MeanMultiKStar892Plus->binMean(0), weight);
+                break;
+             case 313:
+                _hist91MeanMultiKStar892_0->fill(_hist91MeanMultiKStar892_0->binMean(0), weight);
+                break;
+             case 333:
+                _hist91MeanMultiPhi1020->fill(_hist91MeanMultiPhi1020->binMean(0), weight);
+                break;
+             case 413:
+                _hist91MeanMultiDStar2010Plus->fill(_hist91MeanMultiDStar2010Plus->binMean(0), weight);
+                break;
+             case 433:
+                _hist91MeanMultiDStar_s2112Plus->fill(_hist91MeanMultiDStar_s2112Plus->binMean(0), weight);
+                break;
+             case 513:
+             case 523:
+             case 533:
+                _hist91MeanMultiBStar->fill(_hist91MeanMultiBStar->binMean(0), weight);
+                break;
+             case 443:
+                _hist91MeanMultiJPsi1S->fill(_hist91MeanMultiJPsi1S->binMean(0), weight);
+                break;
+             case 100443:
+                _hist91MeanMultiPsi2S->fill(_hist91MeanMultiPsi2S->binMean(0), weight);
+                break;
+             case 553:
+                _hist91MeanMultiUpsilon1S->fill(_hist91MeanMultiUpsilon1S->binMean(0), weight);
+                break;
+             case 20223:
+                _hist91MeanMultiF1_1285->fill(_hist91MeanMultiF1_1285->binMean(0), weight);
+                break;
+             case 20333:
+                _hist91MeanMultiF1_1420->fill(_hist91MeanMultiF1_1420->binMean(0), weight);
+                break;
+             case 445:
+                _hist91MeanMultiChi_c1_3510->fill(_hist91MeanMultiChi_c1_3510->binMean(0), weight);
+                break;
+             case 225:
+                _hist91MeanMultiF2_1270->fill(_hist91MeanMultiF2_1270->binMean(0), weight);
+                break;
+             case 335:
+                _hist91MeanMultiF2Prime1525->fill(_hist91MeanMultiF2Prime1525->binMean(0), weight);
+                break;
+             case 315:
+                _hist91MeanMultiK2Star1430_0->fill(_hist91MeanMultiK2Star1430_0->binMean(0), weight);
+                break;
+             case 515:
+             case 525:
+             case 535:
+                _hist91MeanMultiBStarStar->fill(_hist91MeanMultiBStarStar->binMean(0), weight);
+                break;
+             case 10433:
+             case 20433:
+                _hist91MeanMultiDs1Plus->fill(_hist91MeanMultiDs1Plus->binMean(0), weight);
+                break;
+             case 435:
+                _hist91MeanMultiDs2Plus->fill(_hist91MeanMultiDs2Plus->binMean(0), weight);
+                break;
+             case 2212:
+                _hist91MeanMultiP->fill(_hist91MeanMultiP->binMean(0), weight);
+                break;
+             case 3122:
+                _hist91MeanMultiLambda->fill(_hist91MeanMultiLambda->binMean(0), weight);
+                break;
+             case 3212:
+                _hist91MeanMultiSigma0->fill(_hist91MeanMultiSigma0->binMean(0), weight);
+                break;
+             case 3112:
+                _hist91MeanMultiSigmaMinus->fill(_hist91MeanMultiSigmaMinus->binMean(0), weight);
+                _hist91MeanMultiSigmaPlusMinus->fill(_hist91MeanMultiSigmaPlusMinus->binMean(0), weight);
+                break;
+             case 3222:
+                _hist91MeanMultiSigmaPlus->fill(_hist91MeanMultiSigmaPlus->binMean(0), weight);
+                _hist91MeanMultiSigmaPlusMinus->fill(_hist91MeanMultiSigmaPlusMinus->binMean(0), weight);
+                break;
+             case 3312:
+                _hist91MeanMultiXiMinus->fill(_hist91MeanMultiXiMinus->binMean(0), weight);
+                break;
+             case 2224:
+                _hist91MeanMultiDelta1232PlusPlus->fill(_hist91MeanMultiDelta1232PlusPlus->binMean(0), weight);
+                break;
+             case 3114:
+                _hist91MeanMultiSigma1385Minus->fill(_hist91MeanMultiSigma1385Minus->binMean(0), weight);
+                _hist91MeanMultiSigma1385PlusMinus->fill(_hist91MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3224:
+                _hist91MeanMultiSigma1385Plus->fill(_hist91MeanMultiSigma1385Plus->binMean(0), weight);
+                _hist91MeanMultiSigma1385PlusMinus->fill(_hist91MeanMultiSigma1385PlusMinus->binMean(0), weight);
+                break;
+             case 3324:
+                _hist91MeanMultiXi1530_0->fill(_hist91MeanMultiXi1530_0->binMean(0), weight);
+                break;
+             case 3334:
+                _hist91MeanMultiOmegaMinus->fill(_hist91MeanMultiOmegaMinus->binMean(0), weight);
+                break;
+             case 4122:
+                _hist91MeanMultiLambda_c_Plus->fill(_hist91MeanMultiLambda_c_Plus->binMean(0), weight);
+                break;
+             case 5122:
+                _hist91MeanMultiLambda_b_0->fill(_hist91MeanMultiLambda_b_0->binMean(0), weight);
+                break;
+             case 3124:
+                _hist91MeanMultiLambda1520->fill(_hist91MeanMultiLambda1520->binMean(0), weight);
+                break;
+          }
         }
       }
-    }
 
 
 
-    if (2*meanBeamMom >= 130 && 2*meanBeamMom <= 200) {
-      for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
-        int id = abs(p->pdgId());
-        switch (id) {
-           case 211:
-              _weightedTotalNumPiPlus165 += weight;
-              break;
-           case 321:
-              _hist165MeanMultiKPlus->fill(_hist165MeanMultiKPlus->binMean(0), weight);
-              break;
-           case 130:
-           case 310:
-              _hist165MeanMultiK0->fill(_hist165MeanMultiK0->binMean(0), weight);
-              break;
-           case 2212:
-              _hist165MeanMultiP->fill(_hist165MeanMultiP->binMean(0), weight);
-              break;
-           case 3122:
-              _hist165MeanMultiLambda->fill(_hist165MeanMultiLambda->binMean(0), weight);
-              break;
+      if (2*meanBeamMom >= 130 && 2*meanBeamMom <= 200) {
+        for (ParticleVector::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
+          int id = abs(p->pdgId());
+          switch (id) {
+             case 211:
+                _weightedTotalNumPiPlus165 += weight;
+                break;
+             case 321:
+                _hist165MeanMultiKPlus->fill(_hist165MeanMultiKPlus->binMean(0), weight);
+                break;
+             case 130:
+             case 310:
+                _hist165MeanMultiK0->fill(_hist165MeanMultiK0->binMean(0), weight);
+                break;
+             case 2212:
+                _hist165MeanMultiP->fill(_hist165MeanMultiP->binMean(0), weight);
+                break;
+             case 3122:
+                _hist165MeanMultiLambda->fill(_hist165MeanMultiLambda->binMean(0), weight);
+                break;
+          }
         }
       }
     }
 
 
-  }
 
+    void init() {
+      _hist10MeanMultiPi0                = bookHistogram1D( 2, 1, 1);
+      _hist10MeanMultiKPlus              = bookHistogram1D( 3, 1, 1);
+      _hist10MeanMultiK0                 = bookHistogram1D( 4, 1, 1);
+      _hist10MeanMultiEta                = bookHistogram1D( 5, 1, 1);
+      _hist10MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 1);
+      _hist10MeanMultiDPlus              = bookHistogram1D( 7, 1, 1);
+      _hist10MeanMultiD0                 = bookHistogram1D( 8, 1, 1);
+      _hist10MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 1);
+      _hist10MeanMultiF0_980             = bookHistogram1D(13, 1, 1);
+      _hist10MeanMultiRho770_0           = bookHistogram1D(15, 1, 1);
+      _hist10MeanMultiOmega782           = bookHistogram1D(17, 1, 1);
+      _hist10MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 1);
+      _hist10MeanMultiKStar892_0         = bookHistogram1D(19, 1, 1);
+      _hist10MeanMultiPhi1020            = bookHistogram1D(20, 1, 1);
+      _hist10MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 1);
+      _hist10MeanMultiDStar2007_0        = bookHistogram1D(22, 1, 1);
+      _hist10MeanMultiDStar_s2112Plus    = bookHistogram1D(23, 1, 1);
+      _hist10MeanMultiJPsi1S             = bookHistogram1D(25, 1, 1);
+      _hist10MeanMultiF2_1270            = bookHistogram1D(31, 1, 1);
+      _hist10MeanMultiP                  = bookHistogram1D(38, 1, 1);
+      _hist10MeanMultiLambda             = bookHistogram1D(39, 1, 1);
+      _hist10MeanMultiSigma0             = bookHistogram1D(40, 1, 1);
+      _hist10MeanMultiXiMinus            = bookHistogram1D(44, 1, 1);
+      _hist10MeanMultiDelta1232PlusPlus  = bookHistogram1D(45, 1, 1);
+      _hist10MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 1);
+      _hist10MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 1);
+      _hist10MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 1);
+      _hist10MeanMultiXi1530_0           = bookHistogram1D(49, 1, 1);
+      _hist10MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 1);
+      _hist10MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 1);
+      _hist10MeanMultiSigma_c_PlusPlus_0 = bookHistogram1D(53, 1, 1);
+      _hist10MeanMultiLambda1520         = bookHistogram1D(54, 1, 1);
+
+      _hist32MeanMultiPi0                = bookHistogram1D( 2, 1, 2);
+      _hist32MeanMultiKPlus              = bookHistogram1D( 3, 1, 2);
+      _hist32MeanMultiK0                 = bookHistogram1D( 4, 1, 2);
+      _hist32MeanMultiEta                = bookHistogram1D( 5, 1, 2);
+      _hist32MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 2);
+      _hist32MeanMultiDPlus              = bookHistogram1D( 7, 1, 2);
+      _hist32MeanMultiD0                 = bookHistogram1D( 8, 1, 2);
+      _hist32MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 2);
+      _hist32MeanMultiF0_980             = bookHistogram1D(13, 1, 2);
+      _hist32MeanMultiRho770_0           = bookHistogram1D(15, 1, 2);
+      _hist32MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 2);
+      _hist32MeanMultiKStar892_0         = bookHistogram1D(19, 1, 2);
+      _hist32MeanMultiPhi1020            = bookHistogram1D(20, 1, 2);
+      _hist32MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 2);
+      _hist32MeanMultiDStar2007_0        = bookHistogram1D(22, 1, 2);
+      _hist32MeanMultiF2_1270            = bookHistogram1D(31, 1, 2);
+      _hist32MeanMultiK2Star1430Plus     = bookHistogram1D(33, 1, 1);
+      _hist32MeanMultiK2Star1430_0       = bookHistogram1D(34, 1, 1);
+      _hist32MeanMultiP                  = bookHistogram1D(38, 1, 2);
+      _hist32MeanMultiLambda             = bookHistogram1D(39, 1, 2);
+      _hist32MeanMultiXiMinus            = bookHistogram1D(44, 1, 2);
+      _hist32MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 2);
+      _hist32MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 2);
+      _hist32MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 2);
+      _hist32MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 2);
+      _hist32MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 2);
+
+      _hist91MeanMultiPi0                = bookHistogram1D( 2, 1, 3);
+      _hist91MeanMultiKPlus              = bookHistogram1D( 3, 1, 3);
+      _hist91MeanMultiK0                 = bookHistogram1D( 4, 1, 3);
+      _hist91MeanMultiEta                = bookHistogram1D( 5, 1, 3);
+      _hist91MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 3);
+      _hist91MeanMultiDPlus              = bookHistogram1D( 7, 1, 3);
+      _hist91MeanMultiD0                 = bookHistogram1D( 8, 1, 3);
+      _hist91MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 3);
+      _hist91MeanMultiBPlus_B0_d         = bookHistogram1D(10, 1, 1);
+      _hist91MeanMultiBPlus_u            = bookHistogram1D(11, 1, 1);
+      _hist91MeanMultiB0_s               = bookHistogram1D(12, 1, 1);
+      _hist91MeanMultiF0_980             = bookHistogram1D(13, 1, 3);
+      _hist91MeanMultiA0_980Plus         = bookHistogram1D(14, 1, 1);
+      _hist91MeanMultiRho770_0           = bookHistogram1D(15, 1, 3);
+      _hist91MeanMultiRho770Plus         = bookHistogram1D(16, 1, 1);
+      _hist91MeanMultiOmega782           = bookHistogram1D(17, 1, 2);
+      _hist91MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 3);
+      _hist91MeanMultiKStar892_0         = bookHistogram1D(19, 1, 3);
+      _hist91MeanMultiPhi1020            = bookHistogram1D(20, 1, 3);
+      _hist91MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 3);
+      _hist91MeanMultiDStar_s2112Plus    = bookHistogram1D(23, 1, 2);
+      _hist91MeanMultiBStar              = bookHistogram1D(24, 1, 1);
+      _hist91MeanMultiJPsi1S             = bookHistogram1D(25, 1, 2);
+      _hist91MeanMultiPsi2S              = bookHistogram1D(26, 1, 1);
+      _hist91MeanMultiUpsilon1S          = bookHistogram1D(27, 1, 1);
+      _hist91MeanMultiF1_1285            = bookHistogram1D(28, 1, 1);
+      _hist91MeanMultiF1_1420            = bookHistogram1D(29, 1, 1);
+      _hist91MeanMultiChi_c1_3510        = bookHistogram1D(30, 1, 1);
+      _hist91MeanMultiF2_1270            = bookHistogram1D(31, 1, 3);
+      _hist91MeanMultiF2Prime1525        = bookHistogram1D(32, 1, 1);
+      _hist91MeanMultiK2Star1430_0       = bookHistogram1D(34, 1, 2);
+      _hist91MeanMultiBStarStar          = bookHistogram1D(35, 1, 1);
+      _hist91MeanMultiDs1Plus            = bookHistogram1D(36, 1, 1);
+      _hist91MeanMultiDs2Plus            = bookHistogram1D(37, 1, 1);
+      _hist91MeanMultiP                  = bookHistogram1D(38, 1, 3);
+      _hist91MeanMultiLambda             = bookHistogram1D(39, 1, 3);
+      _hist91MeanMultiSigma0             = bookHistogram1D(40, 1, 2);
+      _hist91MeanMultiSigmaMinus         = bookHistogram1D(41, 1, 1);
+      _hist91MeanMultiSigmaPlus          = bookHistogram1D(42, 1, 1);
+      _hist91MeanMultiSigmaPlusMinus     = bookHistogram1D(43, 1, 1);
+      _hist91MeanMultiXiMinus            = bookHistogram1D(44, 1, 3);
+      _hist91MeanMultiDelta1232PlusPlus  = bookHistogram1D(45, 1, 2);
+      _hist91MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 3);
+      _hist91MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 3);
+      _hist91MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 3);
+      _hist91MeanMultiXi1530_0           = bookHistogram1D(49, 1, 2);
+      _hist91MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 3);
+      _hist91MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 3);
+      _hist91MeanMultiLambda_b_0         = bookHistogram1D(52, 1, 1);
+      _hist91MeanMultiLambda1520         = bookHistogram1D(54, 1, 2);
+
+      _hist165MeanMultiKPlus             = bookHistogram1D( 3, 1, 4);
+      _hist165MeanMultiK0                = bookHistogram1D( 4, 1, 4);
+      _hist165MeanMultiP                 = bookHistogram1D(38, 1, 4);
+      _hist165MeanMultiLambda            = bookHistogram1D(39, 1, 4);
+    }
+
+
+
+    // Finalize
+    void finalize() {
+      scale(_hist10MeanMultiPi0               , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiKPlus             , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiK0                , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiEta               , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiEtaPrime          , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiDPlus             , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiD0                , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiDPlus_s           , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiF0_980            , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiRho770_0          , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiOmega782          , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiKStar892Plus      , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiKStar892_0        , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiPhi1020           , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiDStar2010Plus     , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiDStar2007_0       , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiDStar_s2112Plus   , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiJPsi1S            , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiF2_1270           , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiP                 , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiLambda            , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiSigma0            , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiXiMinus           , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiDelta1232PlusPlus , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiSigma1385Minus    , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiSigma1385Plus     , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiSigma1385PlusMinus, 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiXi1530_0          , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiOmegaMinus        , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiLambda_c_Plus     , 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiSigma_c_PlusPlus_0, 1.0/_weightedTotalNumPiPlus10);
+      scale(_hist10MeanMultiLambda1520        , 1.0/_weightedTotalNumPiPlus10);
+
+      scale(_hist32MeanMultiPi0               , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiKPlus             , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiK0                , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiEta               , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiEtaPrime          , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiDPlus             , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiD0                , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiDPlus_s           , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiF0_980            , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiRho770_0          , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiKStar892Plus      , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiKStar892_0        , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiPhi1020           , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiDStar2010Plus     , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiDStar2007_0       , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiF2_1270           , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiK2Star1430Plus    , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiK2Star1430_0      , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiP                 , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiLambda            , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiXiMinus           , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiSigma1385Minus    , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiSigma1385Plus     , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiSigma1385PlusMinus, 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiOmegaMinus        , 1.0/_weightedTotalNumPiPlus32);
+      scale(_hist32MeanMultiLambda_c_Plus     , 1.0/_weightedTotalNumPiPlus32);
+
+      scale(_hist91MeanMultiPi0               , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiKPlus             , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiK0                , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiEta               , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiEtaPrime          , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiDPlus             , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiD0                , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiDPlus_s           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiBPlus_B0_d        , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiBPlus_u           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiB0_s              , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiF0_980            , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiA0_980Plus        , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiRho770_0          , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiRho770Plus        , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiOmega782          , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiKStar892Plus      , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiKStar892_0        , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiPhi1020           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiDStar2010Plus     , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiDStar_s2112Plus   , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiBStar             , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiJPsi1S            , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiPsi2S             , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiUpsilon1S         , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiF1_1285           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiF1_1420           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiChi_c1_3510       , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiF2_1270           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiF2Prime1525       , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiK2Star1430_0      , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiBStarStar         , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiDs1Plus           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiDs2Plus           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiP                 , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiLambda            , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiSigma0            , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiSigmaMinus        , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiSigmaPlus         , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiSigmaPlusMinus    , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiXiMinus           , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiDelta1232PlusPlus , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiSigma1385Minus    , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiSigma1385Plus     , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiSigma1385PlusMinus, 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiXi1530_0          , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiOmegaMinus        , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiLambda_c_Plus     , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiLambda_b_0        , 1.0/_weightedTotalNumPiPlus91);
+      scale(_hist91MeanMultiLambda1520        , 1.0/_weightedTotalNumPiPlus91);
+
+      scale(_hist165MeanMultiKPlus            , 1.0/_weightedTotalNumPiPlus165);
+      scale(_hist165MeanMultiK0               , 1.0/_weightedTotalNumPiPlus165);
+      scale(_hist165MeanMultiP                , 1.0/_weightedTotalNumPiPlus165);
+      scale(_hist165MeanMultiLambda           , 1.0/_weightedTotalNumPiPlus165);
+    }
+
+    //@}
+
+
+  private:
+
+    double _weightedTotalNumPiPlus10;
+    double _weightedTotalNumPiPlus32;
+    double _weightedTotalNumPiPlus91;
+    double _weightedTotalNumPiPlus165;
+
+    AIDA::IHistogram1D *_hist10MeanMultiPi0;
+    AIDA::IHistogram1D *_hist10MeanMultiKPlus;
+    AIDA::IHistogram1D *_hist10MeanMultiK0;
+    AIDA::IHistogram1D *_hist10MeanMultiEta;
+    AIDA::IHistogram1D *_hist10MeanMultiEtaPrime;
+    AIDA::IHistogram1D *_hist10MeanMultiDPlus;
+    AIDA::IHistogram1D *_hist10MeanMultiD0;
+    AIDA::IHistogram1D *_hist10MeanMultiDPlus_s;
+    AIDA::IHistogram1D *_hist10MeanMultiF0_980;
+    AIDA::IHistogram1D *_hist10MeanMultiRho770_0;
+    AIDA::IHistogram1D *_hist10MeanMultiOmega782;
+    AIDA::IHistogram1D *_hist10MeanMultiKStar892Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiKStar892_0;
+    AIDA::IHistogram1D *_hist10MeanMultiPhi1020;
+    AIDA::IHistogram1D *_hist10MeanMultiDStar2010Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiDStar2007_0;
+    AIDA::IHistogram1D *_hist10MeanMultiDStar_s2112Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiJPsi1S;
+    AIDA::IHistogram1D *_hist10MeanMultiF2_1270;
+    AIDA::IHistogram1D *_hist10MeanMultiP;
+    AIDA::IHistogram1D *_hist10MeanMultiLambda;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma0;
+    AIDA::IHistogram1D *_hist10MeanMultiXiMinus;
+    AIDA::IHistogram1D *_hist10MeanMultiDelta1232PlusPlus;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma1385Minus;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma1385Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma1385PlusMinus;
+    AIDA::IHistogram1D *_hist10MeanMultiXi1530_0;
+    AIDA::IHistogram1D *_hist10MeanMultiOmegaMinus;
+    AIDA::IHistogram1D *_hist10MeanMultiLambda_c_Plus;
+    AIDA::IHistogram1D *_hist10MeanMultiSigma_c_PlusPlus_0;
+    AIDA::IHistogram1D *_hist10MeanMultiLambda1520;
+
+    AIDA::IHistogram1D *_hist32MeanMultiPi0;
+    AIDA::IHistogram1D *_hist32MeanMultiKPlus;
+    AIDA::IHistogram1D *_hist32MeanMultiK0;
+    AIDA::IHistogram1D *_hist32MeanMultiEta;
+    AIDA::IHistogram1D *_hist32MeanMultiEtaPrime;
+    AIDA::IHistogram1D *_hist32MeanMultiDPlus;
+    AIDA::IHistogram1D *_hist32MeanMultiD0;
+    AIDA::IHistogram1D *_hist32MeanMultiDPlus_s;
+    AIDA::IHistogram1D *_hist32MeanMultiF0_980;
+    AIDA::IHistogram1D *_hist32MeanMultiRho770_0;
+    AIDA::IHistogram1D *_hist32MeanMultiKStar892Plus;
+    AIDA::IHistogram1D *_hist32MeanMultiKStar892_0;
+    AIDA::IHistogram1D *_hist32MeanMultiPhi1020;
+    AIDA::IHistogram1D *_hist32MeanMultiDStar2010Plus;
+    AIDA::IHistogram1D *_hist32MeanMultiDStar2007_0;
+    AIDA::IHistogram1D *_hist32MeanMultiF2_1270;
+    AIDA::IHistogram1D *_hist32MeanMultiK2Star1430Plus;
+    AIDA::IHistogram1D *_hist32MeanMultiK2Star1430_0;
+    AIDA::IHistogram1D *_hist32MeanMultiP;
+    AIDA::IHistogram1D *_hist32MeanMultiLambda;
+    AIDA::IHistogram1D *_hist32MeanMultiXiMinus;
+    AIDA::IHistogram1D *_hist32MeanMultiSigma1385Minus;
+    AIDA::IHistogram1D *_hist32MeanMultiSigma1385Plus;
+    AIDA::IHistogram1D *_hist32MeanMultiSigma1385PlusMinus;
+    AIDA::IHistogram1D *_hist32MeanMultiOmegaMinus;
+    AIDA::IHistogram1D *_hist32MeanMultiLambda_c_Plus;
+
+    AIDA::IHistogram1D *_hist91MeanMultiPi0;
+    AIDA::IHistogram1D *_hist91MeanMultiKPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiK0;
+    AIDA::IHistogram1D *_hist91MeanMultiEta;
+    AIDA::IHistogram1D *_hist91MeanMultiEtaPrime;
+    AIDA::IHistogram1D *_hist91MeanMultiDPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiD0;
+    AIDA::IHistogram1D *_hist91MeanMultiDPlus_s;
+    AIDA::IHistogram1D *_hist91MeanMultiBPlus_B0_d;
+    AIDA::IHistogram1D *_hist91MeanMultiBPlus_u;
+    AIDA::IHistogram1D *_hist91MeanMultiB0_s;
+    AIDA::IHistogram1D *_hist91MeanMultiF0_980;
+    AIDA::IHistogram1D *_hist91MeanMultiA0_980Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiRho770_0;
+    AIDA::IHistogram1D *_hist91MeanMultiRho770Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiOmega782;
+    AIDA::IHistogram1D *_hist91MeanMultiKStar892Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiKStar892_0;
+    AIDA::IHistogram1D *_hist91MeanMultiPhi1020;
+    AIDA::IHistogram1D *_hist91MeanMultiDStar2010Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiDStar_s2112Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiBStar;
+    AIDA::IHistogram1D *_hist91MeanMultiJPsi1S;
+    AIDA::IHistogram1D *_hist91MeanMultiPsi2S;
+    AIDA::IHistogram1D *_hist91MeanMultiUpsilon1S;
+    AIDA::IHistogram1D *_hist91MeanMultiF1_1285;
+    AIDA::IHistogram1D *_hist91MeanMultiF1_1420;
+    AIDA::IHistogram1D *_hist91MeanMultiChi_c1_3510;
+    AIDA::IHistogram1D *_hist91MeanMultiF2_1270;
+    AIDA::IHistogram1D *_hist91MeanMultiF2Prime1525;
+    AIDA::IHistogram1D *_hist91MeanMultiK2Star1430_0;
+    AIDA::IHistogram1D *_hist91MeanMultiBStarStar;
+    AIDA::IHistogram1D *_hist91MeanMultiDs1Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiDs2Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiP;
+    AIDA::IHistogram1D *_hist91MeanMultiLambda;
+    AIDA::IHistogram1D *_hist91MeanMultiSigma0;
+    AIDA::IHistogram1D *_hist91MeanMultiSigmaMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigmaPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigmaPlusMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiXiMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiDelta1232PlusPlus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigma1385Minus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigma1385Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiSigma1385PlusMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiXi1530_0;
+    AIDA::IHistogram1D *_hist91MeanMultiOmegaMinus;
+    AIDA::IHistogram1D *_hist91MeanMultiLambda_c_Plus;
+    AIDA::IHistogram1D *_hist91MeanMultiLambda_b_0;
+    AIDA::IHistogram1D *_hist91MeanMultiLambda1520;
+
+    AIDA::IHistogram1D *_hist165MeanMultiKPlus;
+    AIDA::IHistogram1D *_hist165MeanMultiK0;
+    AIDA::IHistogram1D *_hist165MeanMultiP;
+    AIDA::IHistogram1D *_hist165MeanMultiLambda;
+
+    //@}
 
+  };
 
-  void PDG_HADRON_MULTIPLICITIES_RATIOS::init() {
-    _hist10MeanMultiPi0                = bookHistogram1D( 2, 1, 1);
-    _hist10MeanMultiKPlus              = bookHistogram1D( 3, 1, 1);
-    _hist10MeanMultiK0                 = bookHistogram1D( 4, 1, 1);
-    _hist10MeanMultiEta                = bookHistogram1D( 5, 1, 1);
-    _hist10MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 1);
-    _hist10MeanMultiDPlus              = bookHistogram1D( 7, 1, 1);
-    _hist10MeanMultiD0                 = bookHistogram1D( 8, 1, 1);
-    _hist10MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 1);
-    _hist10MeanMultiF0_980             = bookHistogram1D(13, 1, 1);
-    _hist10MeanMultiRho770_0           = bookHistogram1D(15, 1, 1);
-    _hist10MeanMultiOmega782           = bookHistogram1D(17, 1, 1);
-    _hist10MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 1);
-    _hist10MeanMultiKStar892_0         = bookHistogram1D(19, 1, 1);
-    _hist10MeanMultiPhi1020            = bookHistogram1D(20, 1, 1);
-    _hist10MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 1);
-    _hist10MeanMultiDStar2007_0        = bookHistogram1D(22, 1, 1);
-    _hist10MeanMultiDStar_s2112Plus    = bookHistogram1D(23, 1, 1);
-    _hist10MeanMultiJPsi1S             = bookHistogram1D(25, 1, 1);
-    _hist10MeanMultiF2_1270            = bookHistogram1D(31, 1, 1);
-    _hist10MeanMultiP                  = bookHistogram1D(38, 1, 1);
-    _hist10MeanMultiLambda             = bookHistogram1D(39, 1, 1);
-    _hist10MeanMultiSigma0             = bookHistogram1D(40, 1, 1);
-    _hist10MeanMultiXiMinus            = bookHistogram1D(44, 1, 1);
-    _hist10MeanMultiDelta1232PlusPlus  = bookHistogram1D(45, 1, 1);
-    _hist10MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 1);
-    _hist10MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 1);
-    _hist10MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 1);
-    _hist10MeanMultiXi1530_0           = bookHistogram1D(49, 1, 1);
-    _hist10MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 1);
-    _hist10MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 1);
-    _hist10MeanMultiSigma_c_PlusPlus_0 = bookHistogram1D(53, 1, 1);
-    _hist10MeanMultiLambda1520         = bookHistogram1D(54, 1, 1);
-
-    _hist32MeanMultiPi0                = bookHistogram1D( 2, 1, 2);
-    _hist32MeanMultiKPlus              = bookHistogram1D( 3, 1, 2);
-    _hist32MeanMultiK0                 = bookHistogram1D( 4, 1, 2);
-    _hist32MeanMultiEta                = bookHistogram1D( 5, 1, 2);
-    _hist32MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 2);
-    _hist32MeanMultiDPlus              = bookHistogram1D( 7, 1, 2);
-    _hist32MeanMultiD0                 = bookHistogram1D( 8, 1, 2);
-    _hist32MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 2);
-    _hist32MeanMultiF0_980             = bookHistogram1D(13, 1, 2);
-    _hist32MeanMultiRho770_0           = bookHistogram1D(15, 1, 2);
-    _hist32MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 2);
-    _hist32MeanMultiKStar892_0         = bookHistogram1D(19, 1, 2);
-    _hist32MeanMultiPhi1020            = bookHistogram1D(20, 1, 2);
-    _hist32MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 2);
-    _hist32MeanMultiDStar2007_0        = bookHistogram1D(22, 1, 2);
-    _hist32MeanMultiF2_1270            = bookHistogram1D(31, 1, 2);
-    _hist32MeanMultiK2Star1430Plus     = bookHistogram1D(33, 1, 1);
-    _hist32MeanMultiK2Star1430_0       = bookHistogram1D(34, 1, 1);
-    _hist32MeanMultiP                  = bookHistogram1D(38, 1, 2);
-    _hist32MeanMultiLambda             = bookHistogram1D(39, 1, 2);
-    _hist32MeanMultiXiMinus            = bookHistogram1D(44, 1, 2);
-    _hist32MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 2);
-    _hist32MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 2);
-    _hist32MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 2);
-    _hist32MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 2);
-    _hist32MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 2);
-
-    _hist91MeanMultiPi0                = bookHistogram1D( 2, 1, 3);
-    _hist91MeanMultiKPlus              = bookHistogram1D( 3, 1, 3);
-    _hist91MeanMultiK0                 = bookHistogram1D( 4, 1, 3);
-    _hist91MeanMultiEta                = bookHistogram1D( 5, 1, 3);
-    _hist91MeanMultiEtaPrime           = bookHistogram1D( 6, 1, 3);
-    _hist91MeanMultiDPlus              = bookHistogram1D( 7, 1, 3);
-    _hist91MeanMultiD0                 = bookHistogram1D( 8, 1, 3);
-    _hist91MeanMultiDPlus_s            = bookHistogram1D( 9, 1, 3);
-    _hist91MeanMultiBPlus_B0_d         = bookHistogram1D(10, 1, 1);
-    _hist91MeanMultiBPlus_u            = bookHistogram1D(11, 1, 1);
-    _hist91MeanMultiB0_s               = bookHistogram1D(12, 1, 1);
-    _hist91MeanMultiF0_980             = bookHistogram1D(13, 1, 3);
-    _hist91MeanMultiA0_980Plus         = bookHistogram1D(14, 1, 1);
-    _hist91MeanMultiRho770_0           = bookHistogram1D(15, 1, 3);
-    _hist91MeanMultiRho770Plus         = bookHistogram1D(16, 1, 1);
-    _hist91MeanMultiOmega782           = bookHistogram1D(17, 1, 2);
-    _hist91MeanMultiKStar892Plus       = bookHistogram1D(18, 1, 3);
-    _hist91MeanMultiKStar892_0         = bookHistogram1D(19, 1, 3);
-    _hist91MeanMultiPhi1020            = bookHistogram1D(20, 1, 3);
-    _hist91MeanMultiDStar2010Plus      = bookHistogram1D(21, 1, 3);
-    _hist91MeanMultiDStar_s2112Plus    = bookHistogram1D(23, 1, 2);
-    _hist91MeanMultiBStar              = bookHistogram1D(24, 1, 1);
-    _hist91MeanMultiJPsi1S             = bookHistogram1D(25, 1, 2);
-    _hist91MeanMultiPsi2S              = bookHistogram1D(26, 1, 1);
-    _hist91MeanMultiUpsilon1S          = bookHistogram1D(27, 1, 1);
-    _hist91MeanMultiF1_1285            = bookHistogram1D(28, 1, 1);
-    _hist91MeanMultiF1_1420            = bookHistogram1D(29, 1, 1);
-    _hist91MeanMultiChi_c1_3510        = bookHistogram1D(30, 1, 1);
-    _hist91MeanMultiF2_1270            = bookHistogram1D(31, 1, 3);
-    _hist91MeanMultiF2Prime1525        = bookHistogram1D(32, 1, 1);
-    _hist91MeanMultiK2Star1430_0       = bookHistogram1D(34, 1, 2);
-    _hist91MeanMultiBStarStar          = bookHistogram1D(35, 1, 1);
-    _hist91MeanMultiDs1Plus            = bookHistogram1D(36, 1, 1);
-    _hist91MeanMultiDs2Plus            = bookHistogram1D(37, 1, 1);
-    _hist91MeanMultiP                  = bookHistogram1D(38, 1, 3);
-    _hist91MeanMultiLambda             = bookHistogram1D(39, 1, 3);
-    _hist91MeanMultiSigma0             = bookHistogram1D(40, 1, 2);
-    _hist91MeanMultiSigmaMinus         = bookHistogram1D(41, 1, 1);
-    _hist91MeanMultiSigmaPlus          = bookHistogram1D(42, 1, 1);
-    _hist91MeanMultiSigmaPlusMinus     = bookHistogram1D(43, 1, 1);
-    _hist91MeanMultiXiMinus            = bookHistogram1D(44, 1, 3);
-    _hist91MeanMultiDelta1232PlusPlus  = bookHistogram1D(45, 1, 2);
-    _hist91MeanMultiSigma1385Minus     = bookHistogram1D(46, 1, 3);
-    _hist91MeanMultiSigma1385Plus      = bookHistogram1D(47, 1, 3);
-    _hist91MeanMultiSigma1385PlusMinus = bookHistogram1D(48, 1, 3);
-    _hist91MeanMultiXi1530_0           = bookHistogram1D(49, 1, 2);
-    _hist91MeanMultiOmegaMinus         = bookHistogram1D(50, 1, 3);
-    _hist91MeanMultiLambda_c_Plus      = bookHistogram1D(51, 1, 3);
-    _hist91MeanMultiLambda_b_0         = bookHistogram1D(52, 1, 1);
-    _hist91MeanMultiLambda1520         = bookHistogram1D(54, 1, 2);
-
-    _hist165MeanMultiKPlus             = bookHistogram1D( 3, 1, 4);
-    _hist165MeanMultiK0                = bookHistogram1D( 4, 1, 4);
-    _hist165MeanMultiP                 = bookHistogram1D(38, 1, 4);
-    _hist165MeanMultiLambda            = bookHistogram1D(39, 1, 4);
-  }
-
-  // Finalize
-  void PDG_HADRON_MULTIPLICITIES_RATIOS::finalize() {
-    scale(_hist10MeanMultiPi0               , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiKPlus             , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiK0                , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiEta               , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiEtaPrime          , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiDPlus             , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiD0                , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiDPlus_s           , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiF0_980            , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiRho770_0          , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiOmega782          , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiKStar892Plus      , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiKStar892_0        , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiPhi1020           , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiDStar2010Plus     , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiDStar2007_0       , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiDStar_s2112Plus   , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiJPsi1S            , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiF2_1270           , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiP                 , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiLambda            , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiSigma0            , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiXiMinus           , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiDelta1232PlusPlus , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiSigma1385Minus    , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiSigma1385Plus     , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiSigma1385PlusMinus, 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiXi1530_0          , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiOmegaMinus        , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiLambda_c_Plus     , 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiSigma_c_PlusPlus_0, 1.0/_weightedTotalNumPiPlus10);
-    scale(_hist10MeanMultiLambda1520        , 1.0/_weightedTotalNumPiPlus10);
-
-    scale(_hist32MeanMultiPi0               , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiKPlus             , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiK0                , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiEta               , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiEtaPrime          , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiDPlus             , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiD0                , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiDPlus_s           , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiF0_980            , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiRho770_0          , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiKStar892Plus      , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiKStar892_0        , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiPhi1020           , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiDStar2010Plus     , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiDStar2007_0       , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiF2_1270           , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiK2Star1430Plus    , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiK2Star1430_0      , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiP                 , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiLambda            , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiXiMinus           , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiSigma1385Minus    , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiSigma1385Plus     , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiSigma1385PlusMinus, 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiOmegaMinus        , 1.0/_weightedTotalNumPiPlus32);
-    scale(_hist32MeanMultiLambda_c_Plus     , 1.0/_weightedTotalNumPiPlus32);
-
-    scale(_hist91MeanMultiPi0               , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiKPlus             , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiK0                , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiEta               , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiEtaPrime          , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiDPlus             , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiD0                , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiDPlus_s           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiBPlus_B0_d        , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiBPlus_u           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiB0_s              , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiF0_980            , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiA0_980Plus        , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiRho770_0          , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiRho770Plus        , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiOmega782          , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiKStar892Plus      , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiKStar892_0        , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiPhi1020           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiDStar2010Plus     , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiDStar_s2112Plus   , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiBStar             , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiJPsi1S            , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiPsi2S             , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiUpsilon1S         , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiF1_1285           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiF1_1420           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiChi_c1_3510       , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiF2_1270           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiF2Prime1525       , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiK2Star1430_0      , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiBStarStar         , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiDs1Plus           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiDs2Plus           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiP                 , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiLambda            , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiSigma0            , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiSigmaMinus        , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiSigmaPlus         , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiSigmaPlusMinus    , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiXiMinus           , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiDelta1232PlusPlus , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiSigma1385Minus    , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiSigma1385Plus     , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiSigma1385PlusMinus, 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiXi1530_0          , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiOmegaMinus        , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiLambda_c_Plus     , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiLambda_b_0        , 1.0/_weightedTotalNumPiPlus91);
-    scale(_hist91MeanMultiLambda1520        , 1.0/_weightedTotalNumPiPlus91);
-
-    scale(_hist165MeanMultiKPlus            , 1.0/_weightedTotalNumPiPlus165);
-    scale(_hist165MeanMultiK0               , 1.0/_weightedTotalNumPiPlus165);
-    scale(_hist165MeanMultiP                , 1.0/_weightedTotalNumPiPlus165);
-    scale(_hist165MeanMultiLambda           , 1.0/_weightedTotalNumPiPlus165);
-  }
 
 
   // This global object acts as a hook for the plugin system


More information about the Rivet-svn mailing list