ROOT logo
#if !defined(__CINT__) || defined(__MAKECINT__)

/// !!!!!!!!!!!!!!!!!!
///
///      WARNING
///
/// !!!!!!!!!!!!!!!!!!
///
/// THIS IS A QUICK HACK IN ORDER TO TEST THE PYTHIA6 TUNED FOR DIFFRACTION
///
/// IT'S A MERE CUT & PASTE OF THE ORIGIGNAL ALIGENPYTHIA.H/.CXX (VERSION AROUND ALIROOT V5-04-REV-18
/// WITH TRIVIAL ADDITIONS TO TREAT 8 TEV PP AS 7 TEV PP ...
///
/// IT'S NOT THE WAY TO DO IT ON A PERMANENT BASIS...
///
///

#include "AliGenMC.h"
#include "AliPythia.h"

class AliPythia;
class TParticle;
class AliGenPythiaEventHeader;
class AliGenEventHeader;
class AliStack;
class AliRunLoader;
class TObjArray;

class AliGenPythia6Diff : public AliGenMC
{
public:
  
  typedef enum {kFlavorSelection, kParentSelection, kHeavyFlavor} StackFillOpt_t;
  typedef enum {kCountAll, kCountParents, kCountTrackables} CountMode_t;
  typedef enum {kCluster, kCell} JetRecMode_t;
  
  AliGenPythia6Diff();
  AliGenPythia6Diff(Int_t npart);
  virtual ~AliGenPythia6Diff();
  virtual void    Generate();
  virtual void    Init();
  // Range of events to be printed
  virtual void    SetEventListRange(Int_t eventFirst=-1, Int_t eventLast=-1);
  // Select process type
  virtual void    SetProcess(Process_t proc = kPyCharm) {fProcess = proc;}
  virtual void    SetTune(Int_t itune) {fItune = itune;}
  
  // Select structure function
  virtual void    SetStrucFunc(StrucFunc_t func =  kCTEQ5L) {fStrucFunc = func;}
  // Select pt of hard scattering
  virtual void    SetPtHard(Float_t ptmin = 0, Float_t ptmax = 1.e10)
	{fPtHardMin = ptmin; fPtHardMax = ptmax; }
  // y of hard scattering
  virtual void    SetYHard(Float_t ymin = -1.e10, Float_t ymax = 1.e10)
	{fYHardMin = ymin; fYHardMax = ymax; }
  // Set initial and final state gluon radiation
  virtual void    SetGluonRadiation(Int_t iIn, Int_t iFin)
	{fGinit = iIn; fGfinal = iFin;}
  // Intrinsic kT
  virtual void    SetPtKick(Float_t kt = 1.)
	{fPtKick = kt;}
  // Use the Pythia 6.3 new multiple interations scenario
  virtual void    UseNewMultipleInteractionsScenario() {fNewMIS = kTRUE;}
  // Switch off heavy flavors
  virtual void    SwitchHFOff() {fHFoff = kTRUE;}
  // Set centre of mass energy
  virtual void    SetEnergyCMS(Float_t energy = 5500) {fEnergyCMS = energy;}
  // Treat protons as inside nuclei with mass numbers a1 and a2
  virtual void    SetNuclei(Int_t a1, Int_t a2, Int_t pdfset = 0);
  // Set colliding nuclei ("p","n",...)
  virtual void    SetCollisionSystem(TString projectile, TString target) { fProjectile = projectile; fTarget = target; }
  virtual void    SetNuclearPDF(Int_t pdf) {fNucPdf = pdf;}
  virtual void    SetUseNuclearPDF(Bool_t val) {fUseNuclearPDF = val;}
  virtual void    SetUseLorentzBoost(Bool_t val) {fUseLorentzBoost = val;}
  //
  // Trigger options
  //
  // Energy range for jet trigger
  virtual void    SetJetEtRange(Float_t etmin = 0., Float_t etmax = 1.e4)
	{fEtMinJet = etmin; fEtMaxJet = etmax;}
  // Eta range for jet trigger
  virtual void    SetJetEtaRange(Float_t etamin = -20., Float_t etamax = 20.)
	{fEtaMinJet = etamin; fEtaMaxJet = etamax;}
  // Phi range for jet trigger
  virtual void    SetJetPhiRange(Float_t phimin = 0., Float_t phimax = 360.)
	{fPhiMinJet = TMath::Pi()*phimin/180.; fPhiMaxJet = TMath::Pi()*phimax/180.;}
  // Jet reconstruction mode; default is cone algorithm
  virtual void    SetJetReconstructionMode(Int_t mode = kCell) {fJetReconstruction = mode;}
  // Eta range for gamma trigger
  virtual void    SetGammaEtaRange(Float_t etamin = -20., Float_t etamax = 20.)
	{fEtaMinGamma = etamin; fEtaMaxGamma = etamax;}
  // Phi range for gamma trigger
  virtual void    SetGammaPhiRange(Float_t phimin = 0., Float_t phimax = 360.)
	{fPhiMinGamma = TMath::Pi()*phimin/180.; fPhiMaxGamma = TMath::Pi()*phimax/180.;}
  
  // Select events with fragmentation photon, decay photon, pi0 or eta going to PHOS or EMCAL and central barrel
  virtual Bool_t TriggerOnSelectedParticles(Int_t np);
  
  virtual void  SetCheckPHOS         (Bool_t b) {fCheckPHOS    = b;}
  virtual void  SetCheckEMCAL        (Bool_t b) {fCheckEMCAL   = b;}
  virtual void  SetCheckBarrel       (Bool_t b) {fCheckBarrel  = b;}
  
  //virtual void  SetElectronInEMCAL   (Bool_t b) {fEleInEMCAL   = b;}
  //virtual void  SetPhotonInPHOS      (Bool_t b) {fCheckPHOS    = b; fPhotonInCalo     = b;} // Not in use
  
  virtual void  SetFragPhotonInCalo  (Bool_t b) {                   fFragPhotonInCalo = b;}
  virtual void  SetFragPhotonInBarrel(Bool_t b) {fCheckBarrel  = b; fFragPhotonInCalo = b;}
  virtual void  SetFragPhotonInEMCAL (Bool_t b) {fCheckEMCAL   = b; fFragPhotonInCalo = b;}
  virtual void  SetFragPhotonInPHOS  (Bool_t b) {fCheckPHOS    = b; fFragPhotonInCalo = b;}
  
  virtual void  SetHadronInCalo      (Bool_t b) {                   fHadronInCalo     = b;}
  virtual void  SetHadronInBarrel    (Bool_t b) {fCheckBarrel  = b; fHadronInCalo     = b;}
  virtual void  SetHadronInEMCAL     (Bool_t b) {fCheckEMCAL   = b; fHadronInCalo     = b;}
  virtual void  SetHadronInPHOS      (Bool_t b) {fCheckPHOS    = b; fHadronInCalo     = b;}
  
  virtual void  SetElectronInCalo    (Bool_t b) {                   fEleInCalo        = b;}
  virtual void  SetElectronInBarrel  (Bool_t b) {fCheckBarrel  = b; fEleInCalo        = b;}
  virtual void  SetElectronInEMCAL   (Bool_t b) {fCheckEMCAL   = b; fEleInCalo        = b;}
  virtual void  SetElectronInPHOS    (Bool_t b) {fCheckPHOS    = b; fEleInCalo        = b;}
  
  virtual void  SetDecayPhotonInCalo (Bool_t d)  {fDecayPhotonInCalo = d;}
  virtual void  SetDecayPhotonInBarrel(Bool_t d) {fDecayPhotonInCalo = d; fCheckBarrel  = d;}
  virtual void  SetDecayPhotonInEMCAL(Bool_t d)  {fDecayPhotonInCalo = d; fCheckEMCAL   = d;}
  virtual void  SetDecayPhotonInPHOS (Bool_t d)  {fDecayPhotonInCalo = d; fCheckPHOS    = d;}
  
  virtual void  SetPi0InCalo         (Bool_t b, Bool_t f = kFALSE) {fPi0InCalo = b; fForceNeutralMeson2PhotonDecay = f;}
  virtual void  SetPi0InBarrel       (Bool_t b, Bool_t f = kFALSE) {fPi0InCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckBarrel= b; }
  virtual void  SetPi0InEMCAL        (Bool_t b, Bool_t f = kFALSE) {fPi0InCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckEMCAL = b; }
  virtual void  SetPi0InPHOS         (Bool_t b, Bool_t f = kFALSE) {fPi0InCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckPHOS  = b; }
  
  virtual void  SetEtaInCalo         (Bool_t b, Bool_t f = kFALSE) {fEtaInCalo = b; fForceNeutralMeson2PhotonDecay = f;}
  virtual void  SetEtaInBarrel       (Bool_t b, Bool_t f = kFALSE) {fEtaInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckBarrel= b; }
  virtual void  SetEtaInEMCAL        (Bool_t b, Bool_t f = kFALSE) {fEtaInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckEMCAL = b; }
  virtual void  SetEtaInPHOS         (Bool_t b, Bool_t f = kFALSE) {fEtaInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckPHOS  = b; }
  
  virtual void  SetPi0PhotonDecayInBarrel(Bool_t b, Bool_t f = kFALSE) {fPi0InCalo = b; fDecayPhotonInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckBarrel  = b; }
  virtual void  SetPi0PhotonDecayInEMCAL (Bool_t b, Bool_t f = kFALSE) {fPi0InCalo = b; fDecayPhotonInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckEMCAL   = b; }
  virtual void  SetPi0PhotonDecayInPHOS  (Bool_t b, Bool_t f = kFALSE) {fPi0InCalo = b; fDecayPhotonInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckPHOS    = b; }
  
  virtual void  SetEtaPhotonDecayInBarrel(Bool_t b, Bool_t f = kFALSE) {fEtaInCalo = b; fDecayPhotonInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckBarrel  = b; }
  virtual void  SetEtaPhotonDecayInEMCAL (Bool_t b, Bool_t f = kFALSE) {fEtaInCalo = b; fDecayPhotonInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckEMCAL   = b; }
  virtual void  SetEtaPhotonDecayInPHOS  (Bool_t b, Bool_t f = kFALSE) {fEtaInCalo = b; fDecayPhotonInCalo = b; fForceNeutralMeson2PhotonDecay = f; fCheckPHOS    = b; }
  
  
  // Trigger on a minimum multiplicity
  virtual void  SetTriggerChargedMultiplicity(Int_t multiplicity, Float_t etamax = 0, Float_t ptmin = -1.)
  {fTriggerMultiplicity = multiplicity; fTriggerMultiplicityEta = etamax;
    fTriggerMultiplicityPtMin = ptmin;}
	
  // Calorimeters acceptance
  // Set Phi in degrees, and Eta coverage, should not be negative
  virtual void  SetBarrelAcceptance(Float_t deta) {fTriggerEta = deta ;}
  virtual void  SetEMCALAcceptance (Float_t phimin, Float_t phimax, Float_t deta) {fEMCALMinPhi = phimin ; fEMCALMaxPhi = phimax ; fEMCALEta = deta ; }
  virtual void  SetPHOSAcceptance  (Float_t phimin, Float_t phimax, Float_t deta) {fPHOSMinPhi  = phimin ; fPHOSMaxPhi  = phimax ; fPHOSEta  = deta ; }
  virtual void  SetRotateParticleInPHOSeta(Bool_t b) {fCheckPHOSeta = b;}
  
  virtual void  SetTriggerParticleMinPt(Float_t pt) {fTriggerParticleMinPt = pt;}
  //    virtual void  SetPhotonMinPt(Float_t pt)          {fPhotonMinPt = pt;}
  //    virtual void  SetElectronMinPt(Float_t pt)        {fElectronMinPt = pt;}
  // Trigger and rotate event
  void RotatePhi(Bool_t& okdd);
  
  // Trigger on a single particle (not related to calorimeter trigger above)
  virtual void    SetTriggerParticle(Int_t particle = 0, Float_t etamax = 0.9, Float_t ptmin = -1, Float_t ptmax = 1000)
	{fTriggerParticle = particle; fTriggerEta = etamax; fTriggerMinPt = ptmin; fTriggerMaxPt = ptmax;}
  
  //
  // Heavy flavor options
  //
  // Set option for feed down from higher family
  virtual void SetFeedDownHigherFamily(Bool_t opt) {
    fFeedDownOpt = opt;
  }
  // Set option for selecting particles kept in stack according to flavor
  // or to parent selection
  virtual void SetStackFillOpt(StackFillOpt_t opt) {
    fStackFillOpt = opt;
  }
  // Set fragmentation option
  virtual void SetFragmentation(Bool_t opt) {
    fFragmentation = opt;
  }
  // Set counting mode
  virtual void SetCountMode(CountMode_t mode) {
    fCountMode = mode;
  }
  //
  // Quenching
  //
  // Set quenching mode 0 = no, 1 = AM, 2 = IL,  3 = NA, 4 = ACS
  virtual void SetQuench(Int_t flag = 0) {fQuench = flag;}
  // Set transport coefficient.
  void SetQhat(Float_t qhat) {fQhat = qhat;}
  //Set initial medium length.
  void SetLength(Float_t length) {fLength = length;}
  //set parameters for pyquen afterburner
  virtual void SetPyquenPar(Float_t t0=1., Float_t tau0=0.1, Int_t nf=0,Int_t iengl=0, Int_t iangl=3)
  {fpyquenT = t0; fpyquenTau = tau0; fpyquenNf=nf;fpyquenEloss=iengl;fpyquenAngle=iangl;}
  virtual void SetHadronisation(Int_t flag = 1) {fHadronisation = flag;}
  virtual void SetPatchOmegaDalitz(Int_t flag = 1) {fPatchOmegaDalitz = flag;}
  virtual void SetReadFromFile(const Text_t *filname) {fkFileName = filname;  fReadFromFile = 1;}
  virtual void SetReadLHEF(const Text_t *filename) {fkNameLHEF = filename; fReadLHEF = 1;}
  
  //
  // Pile-up
  //
  // Get interaction rate for pileup studies
  virtual void    SetInteractionRate(Float_t rate,Float_t timewindow = 90.e-6);
  virtual Float_t GetInteractionRate() const {return fInteractionRate;}
  // get cross section of process
  virtual Float_t GetXsection() const {return fXsection;}
  // get triggered jets
  void GetJets(Int_t& njets, Int_t& ntrig, Float_t jets[4][10]);
//  void RecJetsUA1(Int_t& njets, Float_t jets[4][50]);
  void SetPycellParameters(Float_t etamax = 2., Int_t neta = 274, Int_t nphi = 432,
                           Float_t thresh = 0., Float_t etseed = 4.,
                           Float_t minet = 10., Float_t r = 1.);
  
  void LoadEvent(AliStack* stack, Int_t flag = 0, Int_t reHadr = 0);
  void LoadEvent(const TObjArray* stack, Int_t flag = 0, Int_t reHadr = 0);
  // Getters
  virtual Process_t    GetProcess() const {return fProcess;}
  virtual StrucFunc_t  GetStrucFunc() const {return fStrucFunc;}
  virtual void         GetPtHard(Float_t& ptmin, Float_t& ptmax) const
	{ptmin = fPtHardMin; ptmax = fPtHardMax;}
  virtual void         GetNuclei(Int_t&  a1, Int_t& a2) const
	{a1 = fAProjectile; a2 = fATarget;}
  virtual void         GetJetEtRange(Float_t& etamin, Float_t& etamax) const
	{etamin = fEtaMinJet; etamax = fEtaMaxJet;}
  virtual void         GetJetPhiRange(Float_t& phimin, Float_t& phimax) const
	{phimin = fPhiMinJet*180./TMath::Pi(); phimax = fPhiMaxJet*180/TMath::Pi();}
  virtual void         GetGammaEtaRange(Float_t& etamin, Float_t& etamax) const
	{etamin = fEtaMinGamma; etamax = fEtaMaxGamma;}
  virtual void         GetGammaPhiRange(Float_t& phimin, Float_t& phimax) const
	{phimin = fPhiMinGamma*180./TMath::Pi(); phimax = fPhiMaxGamma*180./TMath::Pi();}
  //
  Bool_t CheckDetectorAcceptance(Float_t phi, Float_t eta, Int_t iparticle);
  Bool_t IsInEMCAL (Float_t phi, Float_t eta) const;
  Bool_t IsInPHOS  (Float_t phi, Float_t eta, Int_t iparticle) ;
  Bool_t IsInBarrel(Float_t eta) const;
  Bool_t IsFromHeavyFlavor(Int_t ipart);
  //
  virtual void FinishRun();
  Bool_t CheckTrigger(const TParticle* jet1, const TParticle* jet2);
  //Used in some processes to selected child properties
  Bool_t CheckKinematicsOnChild();
  void     GetSubEventTime();
  
  void SetTuneForDiff(Bool_t a=kTRUE) {fkTuneForDiff=a;}
  AliDecayer * GetDecayer(){return fDecayer;}
  
protected:
  // adjust the weight from kinematic cuts
  void     AdjustWeights() const;
  Int_t    GenerateMB();
  void     MakeHeader();
  void     GeneratePileup();
  Process_t   fProcess;           //Process type
  Int_t       fItune;             // Pythia tune > 6.4
  StrucFunc_t fStrucFunc;         //Structure Function
  Float_t     fKineBias;          //!Bias from kinematic selection
  Int_t       fTrials;            //!Number of trials for current event
  Int_t       fTrialsRun;         //!Number of trials for run
  Float_t     fQ;                 //Mean Q
  Float_t     fX1;                //Mean x1
  Float_t     fX2;                //Mean x2
  Float_t     fEventTime;         //Time of the subevent
  Float_t     fInteractionRate;   //Interaction rate (set by user)
  Float_t     fTimeWindow;        //Time window for pileup events (set by user)
  Int_t       fCurSubEvent;       //Index of the current sub-event
  TArrayF     *fEventsTime;       //Subevents time for pileup
  Int_t       fNev;               //Number of events
  Int_t       fFlavorSelect;      //Heavy Flavor Selection
  Float_t     fXsection;          //Cross-section
  AliPythia   *fPythia;           //!Pythia
  Float_t     fPtHardMin;         //lower pT-hard cut
  Float_t     fPtHardMax;         //higher pT-hard cut
  Float_t     fYHardMin;          //lower  y-hard cut
  Float_t     fYHardMax;          //higher y-hard cut
  Int_t       fGinit;             //initial state gluon radiation
  Int_t       fGfinal;            //final state gluon radiation
  Int_t       fHadronisation;     //hadronisation
  Bool_t      fPatchOmegaDalitz;  //flag for omega dalitz decay patch
  Int_t       fNpartons;          //Number of partons before hadronisation
  Int_t       fReadFromFile;      //read partons from file
  Int_t       fReadLHEF;          //read lhef file
  Int_t       fQuench;            //Flag for quenching
  Float_t     fQhat;              //Transport coefficient (GeV^2/fm)
  Float_t     fLength;            //Medium length (fm)
  Float_t     fpyquenT;           //Pyquen initial temperature
  Float_t     fpyquenTau;         //Pyquen initial proper time
  Int_t       fpyquenNf;          //Pyquen number of flavours into the game
  Int_t       fpyquenEloss;       //Pyquen type of energy loss
  Int_t       fpyquenAngle;       //Pyquen radiation angle for gluons
  Float_t     fImpact;            //Impact parameter for quenching simulation (q-pythia)
  Float_t     fPtKick;            //Transverse momentum kick
  Bool_t      fFullEvent;         //!Write Full event if true
  AliDecayer  *fDecayer;          //!Pointer to the decayer instance
  Int_t       fDebugEventFirst;   //!First event to debug
  Int_t       fDebugEventLast;    //!Last  event to debug
  Float_t     fEtMinJet;          //Minimum et of triggered Jet
  Float_t     fEtMaxJet;          //Maximum et of triggered Jet
  Float_t     fEtaMinJet;         //Minimum eta of triggered Jet
  Float_t     fEtaMaxJet;         //Maximum eta of triggered Jet
  Float_t     fPhiMinJet;         //Minimum phi of triggered Jet
  Float_t     fPhiMaxJet;         //Maximum phi of triggered Jet
  Int_t       fJetReconstruction; //Jet Reconstruction mode
  Float_t     fEtaMinGamma;       // Minimum eta of triggered gamma
  Float_t     fEtaMaxGamma;       // Maximum eta of triggered gamma
  Float_t     fPhiMinGamma;       // Minimum phi of triggered gamma
  Float_t     fPhiMaxGamma;       // Maximum phi of triggered gamma
  Float_t     fPycellEtaMax;      // Max. eta for Pycell
  Int_t       fPycellNEta;        // Number of eta bins for Pycell
  Int_t       fPycellNPhi;        // Number of phi bins for Pycell
  Float_t	fPycellThreshold;   // Pycell threshold
  Float_t 	fPycellEtSeed;      // Pycell seed
  Float_t	fPycellMinEtJet;    // Pycell min. jet et
  Float_t	fPycellMaxRadius;   // Pycell cone radius
  StackFillOpt_t fStackFillOpt;   // Stack filling with all particles with
  // that flavour or only with selected
  // parents and their decays
  Bool_t fFeedDownOpt;            // Option to set feed down from higher
  // quark families (e.g. b->c)
  Bool_t  fFragmentation;         // Option to activate fragmentation by Pythia
  Bool_t  fSetNuclei;             // Flag indicating that SetNuclei has been called
  Bool_t  fUseNuclearPDF;         // flag if nuclear pdf should be applied
  Bool_t  fUseLorentzBoost;       // flag if lorentz boost should be applied
  Bool_t  fNewMIS;                // Flag for the new multipple interactions scenario
  Bool_t  fHFoff;                 // Flag for switching heafy flavor production off
  Int_t   fNucPdf;                // Nuclear pdf 0: EKS98 1: EPS08
  Int_t   fTriggerParticle;       // Trigger on this particle ...
  Float_t fTriggerEta;            // .. within |eta| < fTriggerEta
  Float_t fTriggerMinPt;          // .. within pt > fTriggerMinPt
  Float_t fTriggerMaxPt;          // .. within pt < fTriggerMaxPt
  Int_t       fTriggerMultiplicity;       // Trigger on events with a minimum charged multiplicity
  Float_t     fTriggerMultiplicityEta;    // in a given eta range
  Float_t     fTriggerMultiplicityPtMin;  // above this pT
  CountMode_t fCountMode;         // Options for counting when the event will be finished.
  // fCountMode = kCountAll         --> All particles that end up in the
  //                                    stack are counted
  // fCountMode = kCountParents     --> Only selected parents are counted
  // fCountMode = kCountTrackabless --> Only particles flagged for tracking
  //                                     are counted
  //
  //
  
  AliGenPythiaEventHeader* fHeader;  //! Event header
  AliRunLoader*            fRL;      //! Run Loader
  const Text_t* fkFileName;          //! Name of file to read from
  const Text_t* fkNameLHEF;          //! Name of lhef file to read from
  Bool_t fFragPhotonInCalo; // Option to ask for Fragmentation Photon in calorimeters acceptance
  Bool_t fHadronInCalo;     // Option to ask for hadron (not pi0) in calorimeters acceptance
  Bool_t fPi0InCalo;        // Option to ask for Pi0 in calorimeters acceptance
  Bool_t fEtaInCalo;        // Option to ask for Eta in calorimeters acceptance
  Bool_t fPhotonInCalo;     // Option to ask for Photon in calorimeter acceptance (not in use)
  Bool_t fDecayPhotonInCalo;// Option to ask for Decay Photon in calorimeter acceptance
  Bool_t fForceNeutralMeson2PhotonDecay; // Option to ask for Pi0/Eta in calorimeters acceptance when decay into 2 photons
  Bool_t fEleInCalo;        // Option to ask for Electron in EMCAL acceptance
  Bool_t fEleInEMCAL;       // Option to ask for Electron in EMCAL acceptance (not in use)
  Bool_t fCheckBarrel;      // Option to ask for FragPhoton or Pi0 or Eta or gamma decays in central barrel acceptance
  Bool_t fCheckEMCAL;       // Option to ask for FragPhoton or Pi0 or Eta or gamma decays in calorimeters EMCAL acceptance
  Bool_t fCheckPHOS;        // Option to ask for FragPhoton or Pi0 or Eta or gamma decays in calorimeters PHOS acceptance
  Bool_t fCheckPHOSeta;     // Option to ask for rotate event particles in phi to have in PHOS acceptance a requested particle that previously had the good eta
  Int_t  fPHOSRotateCandidate; // Internal member to select the particle candidate to trigger the event phi rotation, to put it in PHOS phi acceptance
  Float_t fTriggerParticleMinPt; // Minimum momentum of Fragmentation Photon or Pi0 or other hadron
  Float_t fPhotonMinPt;          // Minimum momentum of Photon  (not in use)
  Float_t fElectronMinPt;        // Minimum momentum of Electron (not in use)
  //Calorimeters eta-phi acceptance
  Float_t fPHOSMinPhi;           // Minimum phi PHOS, degrees
  Float_t fPHOSMaxPhi;           // Maximum phi PHOS, degrees
  Float_t fPHOSEta;              // Minimum eta PHOS, coverage delta eta
  Float_t fEMCALMinPhi;          // Minimum phi EMCAL, degrees
  Float_t fEMCALMaxPhi;          // Maximum phi EMCAL, degrees
  Float_t fEMCALEta;             // Maximum eta EMCAL, coverage delta eta
  
  Bool_t fkTuneForDiff;    // Pythia tune
  Int_t  fProcDiff;
private:
  AliGenPythia6Diff(const AliGenPythia6Diff &Pythia);
  AliGenPythia6Diff & operator=(const AliGenPythia6Diff & rhs);
  
  
  Bool_t CheckDiffraction();
  Bool_t GetWeightsDiffraction(Double_t M, Double_t &Mmin, Double_t &Mmax,
                               Double_t &wSD, Double_t &wDD, Double_t &wND);
  
  ClassDef(AliGenPythia6Diff, 14) // AliGenerator interface to Pythia
};

#endif

#include <TClonesArray.h>
#include <TDatabasePDG.h>
#include <TParticle.h>
#include <TPDGCode.h>
#include <TObjArray.h>
#include <TSystem.h>
#include <TTree.h>
#include "AliConst.h"
#include "AliDecayerPythia.h"
#include "AliFastGlauber.h"
#include "AliHeader.h"
#include "AliGenPythiaEventHeader.h"
#include "AliPythia.h"
#include "AliPythiaRndm.h"
#include "AliRun.h"
#include "AliStack.h"
#include "AliRunLoader.h"
#include "AliMC.h"
#include "AliLog.h"
#include "PyquenCommon.h"

ClassImp(AliGenPythia6Diff)


AliGenPythia6Diff::AliGenPythia6Diff():
AliGenMC(),
fProcess(kPyCharm),
fItune(-1),
fStrucFunc(kCTEQ5L),
fKineBias(0.),
fTrials(0),
fTrialsRun(0),
fQ(0.),
fX1(0.),
fX2(0.),
fEventTime(0.),
fInteractionRate(0.),
fTimeWindow(0.),
fCurSubEvent(0),
fEventsTime(0),
fNev(0),
fFlavorSelect(0),
fXsection(0.),
fPythia(0),
fPtHardMin(0.),
fPtHardMax(1.e4),
fYHardMin(-1.e10),
fYHardMax(1.e10),
fGinit(1),
fGfinal(1),
fHadronisation(1),
fPatchOmegaDalitz(0),
fNpartons(0),
fReadFromFile(0),
fReadLHEF(0),
fQuench(0),
fQhat(0.),
fLength(0.),
fpyquenT(1.),
fpyquenTau(0.1),
fpyquenNf(0),
fpyquenEloss(0),
fpyquenAngle(0),
fImpact(0.),
fPtKick(1.),
fFullEvent(kTRUE),
fDecayer(new AliDecayerPythia()),
fDebugEventFirst(-1),
fDebugEventLast(-1),
fEtMinJet(0.),
fEtMaxJet(1.e4),
fEtaMinJet(-20.),
fEtaMaxJet(20.),
fPhiMinJet(0.),
fPhiMaxJet(2.* TMath::Pi()),
fJetReconstruction(kCell),
fEtaMinGamma(-20.),
fEtaMaxGamma(20.),
fPhiMinGamma(0.),
fPhiMaxGamma(2. * TMath::Pi()),
fPycellEtaMax(2.),
fPycellNEta(274),
fPycellNPhi(432),
fPycellThreshold(0.),
fPycellEtSeed(4.),
fPycellMinEtJet(10.),
fPycellMaxRadius(1.),
fStackFillOpt(kFlavorSelection),
fFeedDownOpt(kTRUE),
fFragmentation(kTRUE),
fSetNuclei(kFALSE),
fUseNuclearPDF(kFALSE),
fUseLorentzBoost(kTRUE),
fNewMIS(kFALSE),
fHFoff(kFALSE),
fNucPdf(0),
fTriggerParticle(0),
fTriggerEta(0.9),
fTriggerMinPt(-1),
fTriggerMaxPt(1000),
fTriggerMultiplicity(0),
fTriggerMultiplicityEta(0),
fTriggerMultiplicityPtMin(0),
fCountMode(kCountAll),
fHeader(0),
fRL(0),
fkFileName(0),
fkNameLHEF(0),
fFragPhotonInCalo(kFALSE),
fHadronInCalo(kFALSE) ,
fPi0InCalo(kFALSE) ,
fEtaInCalo(kFALSE) ,
fPhotonInCalo(kFALSE), // not in use
fDecayPhotonInCalo(kFALSE),
fForceNeutralMeson2PhotonDecay(kFALSE),
fEleInCalo(kFALSE),
fEleInEMCAL(kFALSE), // not in use
fCheckBarrel(kFALSE),
fCheckEMCAL(kFALSE),
fCheckPHOS(kFALSE),
fCheckPHOSeta(kFALSE),
fPHOSRotateCandidate(-1),
fTriggerParticleMinPt(0),
fPhotonMinPt(0), // not in use
fElectronMinPt(0), // not in use
fPHOSMinPhi(219.),
fPHOSMaxPhi(321.),
fPHOSEta(0.13),
fEMCALMinPhi(79.),
fEMCALMaxPhi(191.),
fEMCALEta(0.71),
fkTuneForDiff(0),
fProcDiff(0)
{
  // Default Constructor
  fEnergyCMS = 5500.;
  if (!AliPythiaRndm::GetPythiaRandom())
    AliPythiaRndm::SetPythiaRandom(GetRandom());
}

AliGenPythia6Diff::AliGenPythia6Diff(Int_t npart)
:AliGenMC(npart),
fProcess(kPyCharm),
fItune(-1),
fStrucFunc(kCTEQ5L),
fKineBias(0.),
fTrials(0),
fTrialsRun(0),
fQ(0.),
fX1(0.),
fX2(0.),
fEventTime(0.),
fInteractionRate(0.),
fTimeWindow(0.),
fCurSubEvent(0),
fEventsTime(0),
fNev(0),
fFlavorSelect(0),
fXsection(0.),
fPythia(0),
fPtHardMin(0.),
fPtHardMax(1.e4),
fYHardMin(-1.e10),
fYHardMax(1.e10),
fGinit(kTRUE),
fGfinal(kTRUE),
fHadronisation(kTRUE),
fPatchOmegaDalitz(0),
fNpartons(0),
fReadFromFile(kFALSE),
fReadLHEF(0),
fQuench(kFALSE),
fQhat(0.),
fLength(0.),
fpyquenT(1.),
fpyquenTau(0.1),
fpyquenNf(0),
fpyquenEloss(0),
fpyquenAngle(0),
fImpact(0.),
fPtKick(1.),
fFullEvent(kTRUE),
fDecayer(new AliDecayerPythia()),
fDebugEventFirst(-1),
fDebugEventLast(-1),
fEtMinJet(0.),
fEtMaxJet(1.e4),
fEtaMinJet(-20.),
fEtaMaxJet(20.),
fPhiMinJet(0.),
fPhiMaxJet(2.* TMath::Pi()),
fJetReconstruction(kCell),
fEtaMinGamma(-20.),
fEtaMaxGamma(20.),
fPhiMinGamma(0.),
fPhiMaxGamma(2. * TMath::Pi()),
fPycellEtaMax(2.),
fPycellNEta(274),
fPycellNPhi(432),
fPycellThreshold(0.),
fPycellEtSeed(4.),
fPycellMinEtJet(10.),
fPycellMaxRadius(1.),
fStackFillOpt(kFlavorSelection),
fFeedDownOpt(kTRUE),
fFragmentation(kTRUE),
fSetNuclei(kFALSE),
fUseNuclearPDF(kFALSE),
fUseLorentzBoost(kTRUE),
fNewMIS(kFALSE),
fHFoff(kFALSE),
fNucPdf(0),
fTriggerParticle(0),
fTriggerEta(0.9),
fTriggerMinPt(-1),
fTriggerMaxPt(1000),
fTriggerMultiplicity(0),
fTriggerMultiplicityEta(0),
fTriggerMultiplicityPtMin(0),
fCountMode(kCountAll),
fHeader(0),
fRL(0),
fkFileName(0),
fkNameLHEF(0),
fFragPhotonInCalo(kFALSE),
fHadronInCalo(kFALSE) ,
fPi0InCalo(kFALSE) ,
fEtaInCalo(kFALSE) ,
fPhotonInCalo(kFALSE), // not in use
fDecayPhotonInCalo(kFALSE),
fForceNeutralMeson2PhotonDecay(kFALSE),
fEleInCalo(kFALSE),
fEleInEMCAL(kFALSE), // not in use
fCheckBarrel(kFALSE),
fCheckEMCAL(kFALSE),
fCheckPHOS(kFALSE),
fCheckPHOSeta(kFALSE),
fPHOSRotateCandidate(-1),
fTriggerParticleMinPt(0),
fPhotonMinPt(0), // not in use
fElectronMinPt(0), // not in use
fPHOSMinPhi(219.),
fPHOSMaxPhi(321.),
fPHOSEta(0.13),
fEMCALMinPhi(79.),
fEMCALMaxPhi(191.),
fEMCALEta(0.71),
fkTuneForDiff(0),
fProcDiff(0)
{
  // default charm production at 5. 5 TeV
  // semimuonic decay
  // structure function GRVHO
  //
  fEnergyCMS = 5500.;
  fName = "Pythia";
  fTitle= "Particle Generator using PYTHIA";
  SetForceDecay();
  // Set random number generator
  if (!AliPythiaRndm::GetPythiaRandom())
    AliPythiaRndm::SetPythiaRandom(GetRandom());
}

AliGenPythia6Diff::~AliGenPythia6Diff()
{
  // Destructor
  if(fEventsTime) delete fEventsTime;
}

void AliGenPythia6Diff::SetInteractionRate(Float_t rate,Float_t timewindow)
{
  // Generate pileup using user specified rate
  fInteractionRate = rate;
  fTimeWindow = timewindow;
  GeneratePileup();
}

void AliGenPythia6Diff::GeneratePileup()
{
  // Generate sub events time for pileup
  fEventsTime = 0;
  if(fInteractionRate == 0.) {
    Warning("GeneratePileup","Zero interaction specified. Skipping pileup generation.\n");
    return;
  }
  
  Int_t npart = NumberParticles();
  if(npart < 0) {
    Warning("GeneratePileup","Negative number of particles. Skipping pileup generation.\n");
    return;
  }
  
  if(fEventsTime) delete fEventsTime;
  fEventsTime = new TArrayF(npart);
  TArrayF &array = *fEventsTime;
  for(Int_t ipart = 0; ipart < npart; ipart++)
    array[ipart] = 0.;
  
  Float_t eventtime = 0.;
  while(1)
  {
    eventtime += (AliPythiaRndm::GetPythiaRandom())->Exp(1./fInteractionRate);
    if(eventtime > fTimeWindow) break;
    array.Set(array.GetSize()+1);
    array[array.GetSize()-1] = eventtime;
  }
  
  eventtime = 0.;
  while(1)
  {
    eventtime -= (AliPythiaRndm::GetPythiaRandom())->Exp(1./fInteractionRate);
    if(TMath::Abs(eventtime) > fTimeWindow) break;
    array.Set(array.GetSize()+1);
    array[array.GetSize()-1] = eventtime;
  }
  
  SetNumberParticles(fEventsTime->GetSize());
}

void AliGenPythia6Diff::SetPycellParameters(Float_t etamax, Int_t neta, Int_t nphi,
                                            Float_t thresh, Float_t etseed, Float_t minet, Float_t r)
{
  // Set pycell parameters
  fPycellEtaMax    =  etamax;
  fPycellNEta      =  neta;
  fPycellNPhi      =  nphi;
  fPycellThreshold =  thresh;
  fPycellEtSeed    =  etseed;
  fPycellMinEtJet  =  minet;
  fPycellMaxRadius =  r;
}



void AliGenPythia6Diff::SetEventListRange(Int_t eventFirst, Int_t eventLast)
{
  // Set a range of event numbers, for which a table
  // of generated particle will be printed
  fDebugEventFirst = eventFirst;
  fDebugEventLast  = eventLast;
  if (fDebugEventLast==-1) fDebugEventLast=fDebugEventFirst;
}

void AliGenPythia6Diff::Init()
{
  // Initialisation
  
  SetMC(AliPythia::Instance());
  fPythia=(AliPythia*) fMCEvGen;
  
  //
  fParentWeight=1./Float_t(fNpart);
  //
  
  
  fPythia->SetCKIN(3,fPtHardMin);
  fPythia->SetCKIN(4,fPtHardMax);
  fPythia->SetCKIN(7,fYHardMin);
  fPythia->SetCKIN(8,fYHardMax);
  
  if (fProjectile != "p" || fTarget != "p") fPythia->SetCollisionSystem(fProjectile,fTarget);
  
  if(fUseNuclearPDF)
    fPythia->SetNuclei(fAProjectile, fATarget, fNucPdf);
  // Fragmentation?
  if (fFragmentation) {
    fPythia->SetMSTP(111,1);
  } else {
    fPythia->SetMSTP(111,0);
  }
  
  
  //  initial state radiation
  fPythia->SetMSTP(61,fGinit);
  //  final state radiation
  fPythia->SetMSTP(71,fGfinal);
  //  pt - kick
  if (fPtKick > 0.) {
    fPythia->SetMSTP(91,1);
    fPythia->SetPARP(91,fPtKick);
    fPythia->SetPARP(93, 4. * fPtKick);
  } else {
    fPythia->SetMSTP(91,0);
  }
  
  if (fReadLHEF) fPythia->OpenFortranFile(97, const_cast<char*>(fkNameLHEF));
	
  if (fReadFromFile) {
    fRL  =  AliRunLoader::Open(fkFileName, "Partons");
    fRL->LoadKinematics();
    fRL->LoadHeader();
  } else {
    fRL = 0x0;
  }
  //
  fPythia->ProcInit(fProcess,fEnergyCMS,fStrucFunc, fItune);
  //  Forward Paramters to the AliPythia object
  fDecayer->SetForceDecay(fForceDecay);
  // Switch off Heavy Flavors on request
  if (fHFoff) {
    // Maximum number of quark flavours used in pdf
    fPythia->SetMSTP(58, 3);
    // Maximum number of flavors that can be used in showers
    fPythia->SetMSTJ(45, 3);
    // Switch off g->QQbar splitting in decay table
    ((AliDecayerPythia*) fDecayer)->HeavyFlavourOff();
  }
  
  fDecayer->Init();
  
  
  //  Parent and Children Selection
  switch (fProcess)
  {
    case kPyOldUEQ2ordered:
    case kPyOldUEQ2ordered2:
    case kPyOldPopcorn:
      break;
    case kPyCharm:
    case kPyCharmUnforced:
    case kPyCharmPbPbMNR:
    case kPyCharmpPbMNR:
    case kPyCharmppMNR:
    case kPyCharmppMNRwmi:
      break;
    case kPyD0PbPbMNR:
    case kPyD0pPbMNR:
    case kPyD0ppMNR:
      fParentSelect[0] =   421;
      fFlavorSelect    =   4;
      break;
    case kPyDPlusPbPbMNR:
    case kPyDPluspPbMNR:
    case kPyDPlusppMNR:
      fParentSelect[0] =   411;
      fFlavorSelect    =   4;
      break;
    case kPyDPlusStrangePbPbMNR:
    case kPyDPlusStrangepPbMNR:
    case kPyDPlusStrangeppMNR:
      fParentSelect[0] =   431;
      fFlavorSelect    =   4;
      break;
    case kPyLambdacppMNR:
      fParentSelect[0] =  4122;
      fFlavorSelect    =   4;
      break;
    case kPyBeauty:
    case kPyBeautyJets:
    case kPyBeautyPbPbMNR:
    case kPyBeautypPbMNR:
    case kPyBeautyppMNR:
    case kPyBeautyppMNRwmi:
       break;
    case kPyBeautyUnforced:
      fParentSelect[0] =  511;
      fParentSelect[1] =  521;
      fParentSelect[2] =  531;
      fParentSelect[3] = 5122;
      fParentSelect[4] = 5132;
      fParentSelect[5] = 5232;
      fParentSelect[6] = 5332;
      fFlavorSelect    = 5;
      break;
    case kPyJpsiChi:
    case kPyJpsi:
      fParentSelect[0] = 443;
      break;
    case kPyMbDefault:
    case kPyMbAtlasTuneMC09:
    case kPyMb:
    case kPyMbWithDirectPhoton:
    case kPyMbNonDiffr:
    case kPyMbMSEL1:
    case kPyJets:
    case kPyDirectGamma:
    case kPyLhwgMb:
      break;
    case kPyW:
    case kPyZ:
    case kPyMBRSingleDiffraction:
    case kPyMBRDoubleDiffraction:
    case kPyMBRCentralDiffraction:
      break;
  }
  //
  //
  //  JetFinder for Trigger
  //
  //  Configure detector (EMCAL like)
  //
  fPythia->SetPARU(51, fPycellEtaMax);
  fPythia->SetMSTU(51, fPycellNEta);
  fPythia->SetMSTU(52, fPycellNPhi);
  //
  //  Configure Jet Finder
  //
  fPythia->SetPARU(58,  fPycellThreshold);
  fPythia->SetPARU(52,  fPycellEtSeed);
  fPythia->SetPARU(53,  fPycellMinEtJet);
  fPythia->SetPARU(54,  fPycellMaxRadius);
  fPythia->SetMSTU(54,  2);
  //
  //  This counts the total number of calls to Pyevnt() per run.
  fTrialsRun = 0;
  fQ         = 0.;
  fX1        = 0.;
  fX2        = 0.;
  fNev       = 0 ;
  //
  //
  //
  AliGenMC::Init();
  
  // Reset Lorentz boost if demanded
  if(!fUseLorentzBoost) {
    fDyBoost = 0;
    Warning("Init","Demand to discard Lorentz boost.\n");
  }
  //
  //
  //
  if (fSetNuclei) {
    fDyBoost = 0;
    Warning("Init","Deprecated function SetNuclei() used (nPDFs + no boost). Use SetProjectile + SetTarget + SetUseNuclearPDF + SetUseLorentzBoost instead.\n");
  }
  fPythia->SetPARJ(200, 0.0);
  fPythia->SetPARJ(199, 0.0);
  fPythia->SetPARJ(198, 0.0);
  fPythia->SetPARJ(197, 0.0);
  
  if (fQuench == 1) {
    fPythia->InitQuenching(0., 0.1, 0.6e6, 0);
  }
  
  if(fQuench ==2){fPythia->SetPyquenParameters(fpyquenT,fpyquenTau,fpyquenNf,fpyquenEloss,fpyquenAngle);}
  
  if (fQuench == 3) {
    // Nestor's change of the splittings
    fPythia->SetPARJ(200, 0.8);
    fPythia->SetMSTJ(41, 1);  // QCD radiation only
    fPythia->SetMSTJ(42, 2);  // angular ordering
    fPythia->SetMSTJ(44, 2);  // option to run alpha_s
    fPythia->SetMSTJ(47, 0);  // No correction back to hard scattering element
    fPythia->SetMSTJ(50, 0);  // No coherence in first branching
    fPythia->SetPARJ(82, 1.); // Cut off for parton showers
  } else if (fQuench == 4) {
    // Armesto-Cunqueiro-Salgado change of the splittings.
    AliFastGlauber* glauber = AliFastGlauber::Instance();
    glauber->Init(2);
    //read and store transverse almonds corresponding to differnt
    //impact parameters.
    glauber->SetCentralityClass(0.,0.1);
    fPythia->SetPARJ(200, 1.);
    fPythia->SetPARJ(198, fQhat);
    fPythia->SetPARJ(199, fLength);
    fPythia->SetMSTJ(42, 2);  // angular ordering
    fPythia->SetMSTJ(44, 2);  // option to run alpha_s
    fPythia->SetPARJ(82, 1.); // Cut off for parton showers
  }
  
  if ( AliLog::GetDebugLevel("","AliGenPythia6Diff") >= 1 ) {
    fPythia->Pystat(4);
    fPythia->Pystat(5);
  }
}

void AliGenPythia6Diff::Generate()
{
  // Generate one event
  if (!fPythia) fPythia=(AliPythia*) fMCEvGen;
  fDecayer->ForceDecay();
  
  Double_t polar[3]   =   {0,0,0};
  Double_t origin[3]  =   {0,0,0};
  Double_t p[4];
  //  converts from mm/c to s
  const Float_t kconv=0.001/2.999792458e8;
  //
  Int_t nt=0;
  Int_t jev=0;
  Int_t j, kf;
  fTrials=0;
  fEventTime = 0.;
  
  
  
  //  Set collision vertex position
  if (fVertexSmear == kPerEvent) Vertex();
  
  //  event loop
  while(1)
  {
    //
    // Produce event
    //
    //
    // Switch hadronisation off
    //
    fPythia->SetMSTJ(1, 0);
    
    if (fQuench ==4){
	    Double_t bimp;
	    // Quenching comes through medium-modified splitting functions.
	    AliFastGlauber::Instance()->GetRandomBHard(bimp);
	    fPythia->SetPARJ(197, bimp);
	    fImpact = bimp;
	    fPythia->Qpygin0();
    }
    //
    // Either produce new event or read partons from file
    //
    if (!fReadFromFile) {
	    if (!fNewMIS) {
        fPythia->Pyevnt();
	    } else {
        fPythia->Pyevnw();
	    }
	    fNpartons = fPythia->GetN();
    } else {
	    printf("Loading Event %d\n",AliRunLoader::Instance()->GetEventNumber());
	    fRL->GetEvent(AliRunLoader::Instance()->GetEventNumber());
	    fPythia->SetN(0);
	    LoadEvent(fRL->Stack(), 0 , 1);
	    fPythia->Pyedit(21);
    }
    
    //
    //  Run quenching routine
    //
    if (fQuench == 1) {
	    fPythia->Quench();
    } else if (fQuench == 2){
	    fPythia->Pyquen(208., 0, 0.);
    } else if (fQuench == 3) {
	    // Quenching is via multiplicative correction of the splittings
    }
    
    //
    // Switch hadronisation on
    //
    if (fHadronisation) {
	    fPythia->SetMSTJ(1, 1);
      //
      // .. and perform hadronisation
      //	printf("Calling hadronisation %d\n", fPythia->GetN());
      
	    if (fPatchOmegaDalitz) {
	      fPythia->SetMDCY(fPythia->Pycomp(111) ,1, 0);
	      fPythia->Pyexec();
	      fPythia->DalitzDecays();
	      fPythia->SetMDCY(fPythia->Pycomp(111) ,1, 1);
	    }
	    fPythia->Pyexec();
    }
    fTrials++;
    fPythia->ImportParticles(&fParticles,"All");
    
    if (TMath::Abs(fDyBoost) > 1.e-4) Boost();
    if(TMath::Abs(fXingAngleY) > 1.e-10) BeamCrossAngle();
    
    //
    //
    //
    Int_t i;
    
    fNprimaries = 0;
    Int_t np = fParticles.GetEntriesFast();
    
    if (np == 0) continue;
    //
    
    //
    Int_t* pParent   = new Int_t[np];
    Int_t* pSelected = new Int_t[np];
    Int_t* trackIt   = new Int_t[np];
    for (i = 0; i < np; i++) {
	    pParent[i]   = -1;
	    pSelected[i] =  0;
	    trackIt[i]   =  0;
    }
    
    Int_t nc = 0;        // Total n. of selected particles
    Int_t nParents = 0;  // Selected parents
    Int_t nTkbles = 0;   // Trackable particles
    if (fProcess != kPyMbDefault &&
        fProcess != kPyMb &&
        fProcess != kPyMbAtlasTuneMC09 &&
        fProcess != kPyMbWithDirectPhoton &&
        fProcess != kPyJets &&
        fProcess != kPyDirectGamma &&
        fProcess != kPyMbNonDiffr  &&
        fProcess != kPyMbMSEL1     &&
        fProcess != kPyW &&
        fProcess != kPyZ &&
        fProcess != kPyCharmppMNRwmi &&
        fProcess != kPyBeautyppMNRwmi &&
        fProcess != kPyBeautyJets) {
	    
	    for (i = 0; i < np; i++) {
        TParticle* iparticle = (TParticle *) fParticles.At(i);
        Int_t ks = iparticle->GetStatusCode();
        kf = CheckPDGCode(iparticle->GetPdgCode());
        // No initial state partons
        if (ks==21) continue;
        //
        // Heavy Flavor Selection
        //
        // quark ?
        kf = TMath::Abs(kf);
        Int_t kfl = kf;
        // Resonance
        
        if (kfl > 100000) kfl %= 100000;
        if (kfl > 10000)  kfl %= 10000;
        // meson ?
        if  (kfl > 10) kfl/=100;
        // baryon
        if (kfl > 10) kfl/=10;
        Int_t ipa = iparticle->GetFirstMother()-1;
        Int_t kfMo = 0;
        //
        // Establish mother daughter relation between heavy quarks and mesons
        //
        if (kf >= fFlavorSelect && kf <= 6) {
          Int_t idau = iparticle->GetFirstDaughter() - 1;
          if (idau > -1) {
            TParticle* daughter = (TParticle *) fParticles.At(idau);
            Int_t pdgD = daughter->GetPdgCode();
            if (pdgD == 91 || pdgD == 92) {
              Int_t jmin = daughter->GetFirstDaughter() - 1;
              Int_t jmax = daughter->GetLastDaughter()  - 1;
              for (Int_t jp = jmin; jp <= jmax; jp++)
                ((TParticle *) fParticles.At(jp))->SetFirstMother(i+1);
            } // is string or cluster
          } // has daughter
        } // heavy quark
        
        
        if (ipa > -1) {
          TParticle *  mother = (TParticle *) fParticles.At(ipa);
          kfMo = TMath::Abs(mother->GetPdgCode());
        }
        
        // What to keep in Stack?
        Bool_t flavorOK = kFALSE;
        Bool_t selectOK = kFALSE;
        if (fFeedDownOpt) {
          if (kfl >= fFlavorSelect) flavorOK = kTRUE;
        } else {
          if (kfl > fFlavorSelect) {
            nc = -1;
            break;
          }
          if (kfl == fFlavorSelect) flavorOK = kTRUE;
        }
        switch (fStackFillOpt) {
          case kHeavyFlavor:
          case kFlavorSelection:
            selectOK = kTRUE;
            break;
          case kParentSelection:
            if (ParentSelected(kf) || kf <= 10) selectOK = kTRUE;
            break;
        }
        if (flavorOK && selectOK) {
          //
          // Heavy flavor hadron or quark
          //
          // Kinematic seletion on final state heavy flavor mesons
          if (ParentSelected(kf) && !KinematicSelection(iparticle, 0))
          {
            continue;
          }
          pSelected[i] = 1;
          if (ParentSelected(kf)) ++nParents; // Update parent count
          //		    printf("\n particle (HF)  %d %d %d", i, pSelected[i], kf);
        } else {
          // Kinematic seletion on decay products
          if (fCutOnChild && ParentSelected(kfMo) && ChildSelected(kf)
              && !KinematicSelection(iparticle, 1))
          {
            continue;
          }
          //
          // Decay products
          // Select if mother was selected and is not tracked
          
          if (pSelected[ipa] &&
              !trackIt[ipa]  &&     // mother will be  tracked ?
              kfMo !=  5 &&         // mother is b-quark, don't store fragments
              kfMo !=  4 &&         // mother is c-quark, don't store fragments
              kf   != 92)           // don't store string
          {
            //
            // Semi-stable or de-selected: diselect decay products:
            //
            //
            if (pSelected[i] == -1 ||  fDecayer->GetLifetime(kf) > fMaxLifeTime)
            {
              Int_t ipF = iparticle->GetFirstDaughter();
              Int_t ipL = iparticle->GetLastDaughter();
              if (ipF > 0) for (j = ipF-1; j < ipL; j++) pSelected[j] = -1;
            }
            //			printf("\n particle (decay)  %d %d %d", i, pSelected[i], kf);
            pSelected[i] = (pSelected[i] == -1) ? 0 : 1;
          }
        }
        if (pSelected[i] == -1) pSelected[i] = 0;
        if (!pSelected[i]) continue;
        // Count quarks only if you did not include fragmentation
        if (fFragmentation && kf <= 10) continue;
        
        nc++;
        // Decision on tracking
        trackIt[i] = 0;
        //
        // Track final state particle
        if (ks == 1) trackIt[i] = 1;
        // Track semi-stable particles
        if ((ks == 1) || (fDecayer->GetLifetime(kf) > fMaxLifeTime))  trackIt[i] = 1;
        // Track particles selected by process if undecayed.
        if (fForceDecay == kNoDecay) {
          if (ParentSelected(kf)) trackIt[i] = 1;
        } else {
          if (ParentSelected(kf)) trackIt[i] = 0;
        }
        if (trackIt[i] == 1) ++nTkbles; // Update trackable counter
        //
        //
        
      } // particle selection loop
	    if (nc > 0) {
        for (i = 0; i<np; i++) {
          if (!pSelected[i]) continue;
          TParticle *  iparticle = (TParticle *) fParticles.At(i);
          kf = CheckPDGCode(iparticle->GetPdgCode());
          Int_t ks = iparticle->GetStatusCode();
          p[0] = iparticle->Px();
          p[1] = iparticle->Py();
          p[2] = iparticle->Pz();
          p[3] = iparticle->Energy();
          
          origin[0] = fVertex[0]+iparticle->Vx()/10; // [cm]
          origin[1] = fVertex[1]+iparticle->Vy()/10; // [cm]
          origin[2] = fVertex[2]+iparticle->Vz()/10; // [cm]
          
          Float_t tof   = fTime + kconv*iparticle->T();
          Int_t ipa     = iparticle->GetFirstMother()-1;
          Int_t iparent = (ipa > -1) ? pParent[ipa] : -1;
          
          PushTrack(fTrackIt*trackIt[i], iparent, kf,
                    p[0], p[1], p[2], p[3],
                    origin[0], origin[1], origin[2], tof,
                    polar[0], polar[1], polar[2],
                    kPPrimary, nt, 1., ks);
          pParent[i] = nt;
          KeepTrack(nt);
          fNprimaries++;
        } //  PushTrack loop
	    }
  	} else {
	    nc = GenerateMB();
    } // mb ?
    
    GetSubEventTime();
    
    delete[] pParent;
    delete[] pSelected;
    delete[] trackIt;
    
    if (nc > 0) {
      switch (fCountMode) {
        case kCountAll:
          // printf(" Count all \n");
          jev += nc;
          break;
        case kCountParents:
          // printf(" Count parents \n");
          jev += nParents;
          break;
        case kCountTrackables:
          // printf(" Count trackable \n");
          jev += nTkbles;
          break;
      }
	    if (jev >= fNpart || fNpart == -1) {
        fKineBias=Float_t(fNpart)/Float_t(fTrials);
        
        fQ  += fPythia->GetVINT(51);
        fX1 += fPythia->GetVINT(41);
        fX2 += fPythia->GetVINT(42);
        fTrialsRun += fTrials;
        fNev++;
        MakeHeader();
        break;
	    }
    }
  } // event loop
  SetHighWaterMark(nt);
  //  adjust weight due to kinematic selection
  //    AdjustWeights();
  //  get cross-section
  fXsection=fPythia->GetPARI(1);
}

Int_t  AliGenPythia6Diff::GenerateMB()
{
  //
  // Min Bias selection and other global selections
  //
  Int_t i, kf, nt, iparent;
  Int_t nc = 0;
  Double_t p[4];
  Double_t polar[3]   =   {0,0,0};
  Double_t origin[3]  =   {0,0,0};
  //  converts from mm/c to s
  const Float_t kconv=0.001/2.999792458e8;
  
  
  Int_t np = (fHadronisation) ? fParticles.GetEntriesFast() : fNpartons;
  
  
  
  Int_t* pParent = new Int_t[np];
  for (i=0; i< np; i++) pParent[i] = -1;
  if ((fProcess == kPyJets || fProcess == kPyDirectGamma || fProcess == kPyBeautyJets || fProcess == kPyBeautyppMNRwmi )
      && fEtMinJet > 0.) {
    TParticle* jet1 = (TParticle *) fParticles.At(6);
    TParticle* jet2 = (TParticle *) fParticles.At(7);
    
    if (!jet1 || ! jet2 || !CheckTrigger(jet1, jet2)) {
      delete [] pParent;
      return 0;
    }
  }
  
  
  // Select events with fragmentation photon, decay photon, pi0, eta or other hadrons going to PHOS or EMCAL or central barrel,
  // implemented primaryly for kPyJets, but extended to any kind of process.
  if ((fFragPhotonInCalo || fPi0InCalo || fEtaInCalo || fEleInCalo || fHadronInCalo || fDecayPhotonInCalo) &&
      (fCheckPHOS || fCheckEMCAL || fCheckBarrel) ) {
    Bool_t ok = TriggerOnSelectedParticles(np);
    
    if(!ok) {
      delete[] pParent;
      return 0;
    }
  }
  
  // Check for diffraction
  if(fkTuneForDiff) {
    if(fItune==320 && ( (TMath::Abs(fEnergyCMS - 900) < 1) || (TMath::Abs(fEnergyCMS - 2760) < 1) || (TMath::Abs(fEnergyCMS - 7000) < 1) || ( TMath::Abs(fEnergyCMS - 8000) < 1 ) ) ) {
      if(!CheckDiffraction()) {
        delete [] pParent;
        return 0;
      }
    }
  }
  
  // Check for minimum multiplicity
  if (fTriggerMultiplicity > 0) {
    Int_t multiplicity = 0;
    for (i = 0; i < np; i++) {
      TParticle *  iparticle = (TParticle *) fParticles.At(i);
      
      Int_t statusCode = iparticle->GetStatusCode();
      
      // Initial state particle
      if (statusCode != 1)
        continue;
      // eta cut
      if (fTriggerMultiplicityEta > 0 && TMath::Abs(iparticle->Eta()) > fTriggerMultiplicityEta)
        continue;
      // pt cut
      if (iparticle->Pt() < fTriggerMultiplicityPtMin)
        continue;
      
      TParticlePDG* pdgPart = iparticle->GetPDG();
      if (pdgPart && pdgPart->Charge() == 0)
        continue;
      
      ++multiplicity;
    }
    
    if (multiplicity < fTriggerMultiplicity) {
      delete [] pParent;
      return 0;
    }
    Printf("Triggered on event with multiplicity of %d >= %d", multiplicity, fTriggerMultiplicity);
  }
  
  
  if (fTriggerParticle) {
    Bool_t triggered = kFALSE;
    for (i = 0; i < np; i++) {
	    TParticle *  iparticle = (TParticle *) fParticles.At(i);
	    kf = CheckPDGCode(iparticle->GetPdgCode());
	    if (kf != fTriggerParticle) continue;
	    if (iparticle->Pt() == 0.) continue;
	    if (TMath::Abs(iparticle->Eta()) > fTriggerEta) continue;
	    if ( iparticle->Pt() > fTriggerMaxPt || iparticle->Pt() < fTriggerMinPt ) continue;
	    triggered = kTRUE;
	    break;
    }
    if (!triggered) {
      delete [] pParent;
      return 0;
    }
  }
	
  
  // Check if there is a ccbar or bbbar pair with at least one of the two
  // in fYMin < y < fYMax
  
  if (fProcess == kPyCharmppMNRwmi || fProcess == kPyBeautyppMNRwmi || fProcess == kPyBeautyJets) {
    TParticle *partCheck;
    TParticle *mother;
    Bool_t  theQ=kFALSE,theQbar=kFALSE,inYcut=kFALSE;
    Bool_t  theChild=kFALSE;
    Bool_t  triggered=kFALSE;
    Float_t y;
    Int_t   pdg,mpdg,mpdgUpperFamily;
    for(i=0; i<np; i++) {
      partCheck = (TParticle*)fParticles.At(i);
      pdg = partCheck->GetPdgCode();
      if(TMath::Abs(pdg) == fFlavorSelect) { // quark
        if(pdg>0) { theQ=kTRUE; } else { theQbar=kTRUE; }
        y = 0.5*TMath::Log((partCheck->Energy()+partCheck->Pz()+1.e-13)/
                           (partCheck->Energy()-partCheck->Pz()+1.e-13));
        if(y>fYMin && y<fYMax) inYcut=kTRUE;
      }
      if(fTriggerParticle) {
        if(TMath::Abs(pdg)==fTriggerParticle) triggered=kTRUE;
      }
      if(fCutOnChild && TMath::Abs(pdg) == fPdgCodeParticleforAcceptanceCut) {
        Int_t mi = partCheck->GetFirstMother() - 1;
        if(mi<0) continue;
        mother = (TParticle*)fParticles.At(mi);
        mpdg=TMath::Abs(mother->GetPdgCode());
        mpdgUpperFamily=(mpdg>1000 ? mpdg+1000 : mpdg+100); // keep e from c from b
        if ( ParentSelected(mpdg) ||
            (fFlavorSelect==5 && ParentSelected(mpdgUpperFamily))) {
          if (KinematicSelection(partCheck,1)) {
            theChild=kTRUE;
          }
        }
      }
    }
    if (!theQ || !theQbar || !inYcut) { // one of the c/b conditions not satisfied
      delete[] pParent;
      return 0;
    }
    if (fCutOnChild && !theChild) { // one of the child conditions not satisfied
      delete[] pParent;
      return 0;
    }
    if(fTriggerParticle && !triggered) { // particle requested is not produced
      delete[] pParent;
      return 0;
    }
    
  }
  
  //Introducing child cuts in case kPyW, kPyZ, kPyMb, and kPyMbNonDiff
  if ( (
        
        fProcess == kPyW ||
        fProcess == kPyZ ||
        fProcess == kPyMbDefault ||
        fProcess == kPyMb ||
        fProcess == kPyMbAtlasTuneMC09 ||
        fProcess == kPyMbWithDirectPhoton ||
        fProcess == kPyMbNonDiffr)
      && (fCutOnChild == 1) ) {
    if ( !CheckKinematicsOnChild() ) {
      delete[] pParent;
      return 0;
    }
  }
  
  
  for (i = 0; i < np; i++) {
    Int_t trackIt = 0;
    TParticle *  iparticle = (TParticle *) fParticles.At(i);
    kf = CheckPDGCode(iparticle->GetPdgCode());
    Int_t ks = iparticle->GetStatusCode();
    Int_t km = iparticle->GetFirstMother();
    if (
        (((ks == 1  && kf!=0 && KinematicSelection(iparticle, 0)) || (ks !=1)) && ((fStackFillOpt != kHeavyFlavor) || IsFromHeavyFlavor(i))) ||
        ((fProcess == kPyJets || fProcess == kPyBeautyJets) && ks == 21 && km == 0 && i>1)
        )
	  {
      nc++;
	    if (ks == 1) trackIt = 1;
	    Int_t ipa = iparticle->GetFirstMother()-1;
	    
	    iparent = (ipa > -1) ? pParent[ipa] : -1;
	    
      //
      // store track information
	    p[0] = iparticle->Px();
	    p[1] = iparticle->Py();
	    p[2] = iparticle->Pz();
	    p[3] = iparticle->Energy();
      
	    
	    origin[0] = fVertex[0]+iparticle->Vx()/10; // [cm]
	    origin[1] = fVertex[1]+iparticle->Vy()/10; // [cm]
	    origin[2] = fVertex[2]+iparticle->Vz()/10; // [cm]
	    
	    Float_t tof = fTime + fEventTime + kconv * iparticle->T();
      
	    PushTrack(fTrackIt*trackIt, iparent, kf,
                p[0], p[1], p[2], p[3],
                origin[0], origin[1], origin[2], tof,
                polar[0], polar[1], polar[2],
                kPPrimary, nt, 1., ks);
	    fNprimaries++;
	    KeepTrack(nt);
	    pParent[i] = nt;
	    SetHighWaterMark(nt);
	    
    } // select particle
  } // particle loop
  
  delete[] pParent;
  
  return 1;
}


void AliGenPythia6Diff::FinishRun()
{
  // Print x-section summary
  fPythia->Pystat(1);
  
  if (fNev > 0.) {
    fQ  /= fNev;
    fX1 /= fNev;
    fX2 /= fNev;
  }
  
  printf("\nTotal number of Pyevnt() calls %d\n", fTrialsRun);
  printf("\nMean Q, x1, x2: %f %f %f\n", fQ, fX1, fX2);
}

void AliGenPythia6Diff::AdjustWeights() const
{
  // Adjust the weights after generation of all events
  //
  if (gAlice) {
    TParticle *part;
    Int_t ntrack=gAlice->GetMCApp()->GetNtrack();
    for (Int_t i=0; i<ntrack; i++) {
	    part= gAlice->GetMCApp()->Particle(i);
	    part->SetWeight(part->GetWeight()*fKineBias);
    }
  }
}

void AliGenPythia6Diff::SetNuclei(Int_t a1, Int_t a2, Int_t pdfset)
{
  // Treat protons as inside nuclei with mass numbers a1 and a2
  
  fAProjectile   = a1;
  fATarget       = a2;
  fNucPdf        = pdfset;  // 0 EKS98 9 EPS09LO 19 EPS09NLO
  fUseNuclearPDF = kTRUE;
  fSetNuclei     = kTRUE;
}


void AliGenPythia6Diff::MakeHeader()
{
  //
  // Make header for the simulated event
  //
  if (gAlice) {
    if (gAlice->GetEvNumber()>=fDebugEventFirst &&
        gAlice->GetEvNumber()<=fDebugEventLast) fPythia->Pylist(2);
  }
  
  // Builds the event header, to be called after each event
  if (fHeader) delete fHeader;
  fHeader = new AliGenPythiaEventHeader("Pythia");
  //
  // Event type
  if(fProcDiff>0){
    //      if(fProcDiff == 92 || fProcDiff == 93) printf("\n\n\n\n\n");
    //      printf("fPythia->GetMSTI(1) = %d   fProcDiff = %d\n",fPythia->GetMSTI(1), fProcDiff);
    ((AliGenPythiaEventHeader*) fHeader)->SetProcessType(fProcDiff);
  }
  else
    ((AliGenPythiaEventHeader*) fHeader)->SetProcessType(fPythia->GetMSTI(1));
  //
  // Number of trials
  ((AliGenPythiaEventHeader*) fHeader)->SetTrials(fTrials);
  //
  // Event Vertex
  fHeader->SetPrimaryVertex(fVertex);
  fHeader->SetInteractionTime(fTime+fEventTime);
  //
  // Number of primaries
  fHeader->SetNProduced(fNprimaries);
  //
  // Event weight
  fHeader->SetEventWeight(fPythia->GetVINT(97));
  //
  // Jets that have triggered
  
  //Need to store jets for b-jet studies too!
  if (fProcess == kPyJets || fProcess == kPyDirectGamma || fProcess == kPyBeautyJets || fProcess == kPyBeautyppMNRwmi)
  {
    Int_t ntrig, njet;
    Float_t jets[4][10];
    GetJets(njet, ntrig, jets);
    
    
    for (Int_t i = 0; i < ntrig; i++) {
	    ((AliGenPythiaEventHeader*) fHeader)->AddJet(jets[0][i], jets[1][i], jets[2][i],
                                                   jets[3][i]);
    }
  }
  //
  // Copy relevant information from external header, if present.
  //
  Float_t uqJet[4];
  
  if (fRL) {
    AliGenPythiaEventHeader* exHeader = (AliGenPythiaEventHeader*) (fRL->GetHeader()->GenEventHeader());
    for (Int_t i = 0; i < exHeader->NTriggerJets(); i++)
    {
	    printf("Adding Jet %d %d \n", i,  exHeader->NTriggerJets());
	    
	    
	    exHeader->TriggerJet(i, uqJet);
	    ((AliGenPythiaEventHeader*) fHeader)->AddUQJet(uqJet[0], uqJet[1], uqJet[2], uqJet[3]);
    }
  }
  //
  // Store quenching parameters
  //
  if (fQuench){
    Double_t z[4] = {0.};
    Double_t xp = 0.;
    Double_t yp = 0.;
    
    if (fQuench == 1) {
	    // Pythia::Quench()
	    fPythia->GetQuenchingParameters(xp, yp, z);
    } else if (fQuench == 2){
	    // Pyquen
	    Double_t r1 = PARIMP.rb1;
	    Double_t r2 = PARIMP.rb2;
	    Double_t b  = PARIMP.b1;
	    Double_t r   = 0.5 * TMath::Sqrt(2. * (r1 * r1 + r2 * r2) - b * b);
	    Double_t phi = PARIMP.psib1;
	    xp = r * TMath::Cos(phi);
	    yp = r * TMath::Sin(phi);
	    
    } else if (fQuench == 4) {
	    // QPythia
	    Double_t xy[2];
	    Double_t i0i1[2];
	    AliFastGlauber::Instance()->GetSavedXY(xy);
	    AliFastGlauber::Instance()->GetSavedI0I1(i0i1);
	    xp = xy[0];
	    yp = xy[1];
	    ((AliGenPythiaEventHeader*) fHeader)->SetImpactParameter(fImpact);
    }
    
    ((AliGenPythiaEventHeader*) fHeader)->SetXYJet(xp, yp);
    ((AliGenPythiaEventHeader*) fHeader)->SetZQuench(z);
  }
  //
  // Store pt^hard and cross-section
  ((AliGenPythiaEventHeader*) fHeader)->SetPtHard(fPythia->GetVINT(47));
//  ((AliGenPythiaEventHeader*) fHeader)->SetXsection(fPythia->GetPARI(1));
  
  //
  // Store Event Weight
  ((AliGenPythiaEventHeader*) fHeader)->SetEventWeight(fPythia->GetPARI(7));
  
  //
  //  Pass header
  //
  AddHeader(fHeader);
  fHeader = 0x0;
}

Bool_t AliGenPythia6Diff::CheckTrigger(const TParticle* jet1, const TParticle* jet2)
{
  // Check the kinematic trigger condition
  //
  Double_t eta[2];
  eta[0] = jet1->Eta();
  eta[1] = jet2->Eta();
  Double_t phi[2];
  phi[0] = jet1->Phi();
  phi[1] = jet2->Phi();
  Int_t    pdg[2];
  pdg[0] = jet1->GetPdgCode();
  pdg[1] = jet2->GetPdgCode();
  Bool_t   triggered = kFALSE;
  
  if (fProcess == kPyJets || fProcess == kPyBeautyJets || fProcess ==  kPyBeautyppMNRwmi) {
    Int_t njets = 0;
    Int_t ntrig = 0;
    Float_t jets[4][10];
    //
    // Use Pythia clustering on parton level to determine jet axis
    //
    GetJets(njets, ntrig, jets);
    
    if (ntrig || fEtMinJet == 0.) triggered = kTRUE;
    //
  } else {
    Int_t ij = 0;
    Int_t ig = 1;
    if (pdg[0] == kGamma) {
	    ij = 1;
	    ig = 0;
    }
    //Check eta range first...
    if ((eta[ij] < fEtaMaxJet   && eta[ij] > fEtaMinJet) &&
        (eta[ig] < fEtaMaxGamma && eta[ig] > fEtaMinGamma))
    {
	    //Eta is okay, now check phi range
	    if ((phi[ij] < fPhiMaxJet   && phi[ij] > fPhiMinJet) &&
          (phi[ig] < fPhiMaxGamma && phi[ig] > fPhiMinGamma))
	    {
        triggered = kTRUE;
	    }
    }
  }
  return triggered;
}



Bool_t AliGenPythia6Diff::CheckKinematicsOnChild(){
  //
  //Checking Kinematics on Child (status code 1, particle code ?, kin cuts
  //
  Bool_t checking = kFALSE;
  Int_t j, kcode, ks, km;
  Int_t nPartAcc = 0; //number of particles in the acceptance range
  Int_t numberOfAcceptedParticles = 1;
  if (fNumberOfAcceptedParticles != 0) { numberOfAcceptedParticles = fNumberOfAcceptedParticles; }
  Int_t npart = fParticles.GetEntriesFast();
  
  for (j = 0; j<npart; j++) {
    TParticle *  jparticle = (TParticle *) fParticles.At(j);
    kcode = TMath::Abs( CheckPDGCode(jparticle->GetPdgCode()) );
    ks = jparticle->GetStatusCode();
    km = jparticle->GetFirstMother();
    
    if( (ks == 1)  &&  (kcode == fPdgCodeParticleforAcceptanceCut)  &&  (KinematicSelection(jparticle,1)) ){
	    nPartAcc++;
    }
    if( numberOfAcceptedParticles <= nPartAcc){
      checking = kTRUE;
      break;
    }
  }
  
  return checking;
}

void  AliGenPythia6Diff::LoadEvent(AliStack* stack, Int_t flag, Int_t reHadr)
{
  //
  // Load event into Pythia Common Block
  //
  
  Int_t npart = stack -> GetNprimary();
  Int_t n0 = 0;
  
  if (!flag) {
    (fPythia->GetPyjets())->N = npart;
  } else {
    n0 = (fPythia->GetPyjets())->N;
    (fPythia->GetPyjets())->N = n0 + npart;
  }
  
  
  for (Int_t part = 0; part < npart; part++) {
    TParticle *mPart = stack->Particle(part);
    
    Int_t kf     =  mPart->GetPdgCode();
    Int_t ks     =  mPart->GetStatusCode();
    Int_t idf    =  mPart->GetFirstDaughter();
    Int_t idl    =  mPart->GetLastDaughter();
    
    if (reHadr) {
	    if (ks == 11 || ks == 12) {
        ks  -= 10;
        idf  = -1;
        idl  = -1;
	    }
    }
    
    Float_t px = mPart->Px();
    Float_t py = mPart->Py();
    Float_t pz = mPart->Pz();
    Float_t e  = mPart->Energy();
    Float_t m  = mPart->GetCalcMass();
    
    
    (fPythia->GetPyjets())->P[0][part+n0] = px;
    (fPythia->GetPyjets())->P[1][part+n0] = py;
    (fPythia->GetPyjets())->P[2][part+n0] = pz;
    (fPythia->GetPyjets())->P[3][part+n0] = e;
    (fPythia->GetPyjets())->P[4][part+n0] = m;
    
    (fPythia->GetPyjets())->K[1][part+n0] = kf;
    (fPythia->GetPyjets())->K[0][part+n0] = ks;
    (fPythia->GetPyjets())->K[3][part+n0] = idf + 1;
    (fPythia->GetPyjets())->K[4][part+n0] = idl + 1;
    (fPythia->GetPyjets())->K[2][part+n0] = mPart->GetFirstMother() + 1;
  }
}

void  AliGenPythia6Diff::LoadEvent(const TObjArray* stack, Int_t flag, Int_t reHadr)
{
  //
  // Load event into Pythia Common Block
  //
  
  Int_t npart = stack -> GetEntries();
  Int_t n0 = 0;
  
  if (!flag) {
    (fPythia->GetPyjets())->N = npart;
  } else {
    n0 = (fPythia->GetPyjets())->N;
    (fPythia->GetPyjets())->N = n0 + npart;
  }
  
  
  for (Int_t part = 0; part < npart; part++) {
    TParticle *mPart = dynamic_cast<TParticle *>(stack->At(part));
    if (!mPart) continue;
    
    Int_t kf     =  mPart->GetPdgCode();
    Int_t ks     =  mPart->GetStatusCode();
    Int_t idf    =  mPart->GetFirstDaughter();
    Int_t idl    =  mPart->GetLastDaughter();
    
    if (reHadr) {
      if (ks == 11 || ks == 12) {
        ks  -= 10;
        idf  = -1;
        idl  = -1;
      }
    }
    
    Float_t px = mPart->Px();
    Float_t py = mPart->Py();
    Float_t pz = mPart->Pz();
    Float_t e  = mPart->Energy();
    Float_t m  = mPart->GetCalcMass();
    
    
    (fPythia->GetPyjets())->P[0][part+n0] = px;
    (fPythia->GetPyjets())->P[1][part+n0] = py;
    (fPythia->GetPyjets())->P[2][part+n0] = pz;
    (fPythia->GetPyjets())->P[3][part+n0] = e;
    (fPythia->GetPyjets())->P[4][part+n0] = m;
    
    (fPythia->GetPyjets())->K[1][part+n0] = kf;
    (fPythia->GetPyjets())->K[0][part+n0] = ks;
    (fPythia->GetPyjets())->K[3][part+n0] = idf + 1;
    (fPythia->GetPyjets())->K[4][part+n0] = idl + 1;
    (fPythia->GetPyjets())->K[2][part+n0] = mPart->GetFirstMother() + 1;
  }
}


//void AliGenPythia6Diff::RecJetsUA1(Int_t& njets, Float_t jets [4][50])
//{
//  //
//  //  Calls the Pythia jet finding algorithm to find jets in the current event
//  //
//  //
//  //
//  //  Save jets
//  Int_t n     = fPythia->GetN();
//  
//  //
//  //  Run Jet Finder
//  fPythia->Pycell(njets);
//  Int_t i;
//  for (i = 0; i < njets; i++) {
//    Float_t px    = (fPythia->GetPyjets())->P[0][n+i];
//    Float_t py    = (fPythia->GetPyjets())->P[1][n+i];
//    Float_t pz    = (fPythia->GetPyjets())->P[2][n+i];
//    Float_t e     = (fPythia->GetPyjets())->P[3][n+i];
//    
//    jets[0][i] = px;
//    jets[1][i] = py;
//    jets[2][i] = pz;
//    jets[3][i] = e;
//  }
//}
//
//

void  AliGenPythia6Diff::GetJets(Int_t& nJets, Int_t& nJetsTrig, Float_t jets[4][10])
{
  //
  //  Calls the Pythia clustering algorithm to find jets in the current event
  //
  Int_t n     = fPythia->GetN();
  nJets       = 0;
  nJetsTrig   = 0;
  if (fJetReconstruction == kCluster) {
    //
    //  Configure cluster algorithm
    //
    fPythia->SetPARU(43, 2.);
    fPythia->SetMSTU(41, 1);
    //
    //  Call cluster algorithm
    //
    fPythia->Pyclus(nJets);
    //
    //  Loading jets from common block
    //
  } else {
    
    //
    //  Run Jet Finder
    fPythia->Pycell(nJets);
  }
  
  Int_t i;
  for (i = 0; i < nJets; i++) {
    Float_t px    = (fPythia->GetPyjets())->P[0][n+i];
    Float_t py    = (fPythia->GetPyjets())->P[1][n+i];
    Float_t pz    = (fPythia->GetPyjets())->P[2][n+i];
    Float_t e     = (fPythia->GetPyjets())->P[3][n+i];
    Float_t pt    = TMath::Sqrt(px * px + py * py);
    Float_t phi   = TMath::Pi() + TMath::ATan2(-py, -px);
    Float_t theta = TMath::ATan2(pt,pz);
    Float_t et    = e * TMath::Sin(theta);
    Float_t eta   = -TMath::Log(TMath::Tan(theta / 2.));
    if (
        eta > fEtaMinJet && eta < fEtaMaxJet &&
        phi > fPhiMinJet && phi < fPhiMaxJet &&
        et  > fEtMinJet  && et  < fEtMaxJet
        )
    {
	    jets[0][nJetsTrig] = px;
	    jets[1][nJetsTrig] = py;
	    jets[2][nJetsTrig] = pz;
	    jets[3][nJetsTrig] = e;
	    nJetsTrig++;
      //	    printf("\n........-Jet #%d: %10.3f %10.3f %10.3f %10.3f \n", i, pt, et, eta, phi * kRaddeg);
    } else {
      //	    printf("\n........-Jet #%d: %10.3f %10.3f %10.3f %10.3f \n", i, pt, et, eta, phi * kRaddeg);
    }
  }
}

void AliGenPythia6Diff::GetSubEventTime()
{
  // Calculates time of the next subevent
  fEventTime = 0.;
  if (fEventsTime) {
    TArrayF &array = *fEventsTime;
    fEventTime = array[fCurSubEvent++];
  }
  //  printf(" Event time: %d %f %p",fCurSubEvent,fEventTime,fEventsTime);
  return;
}

Bool_t AliGenPythia6Diff::IsInBarrel(Float_t eta) const
{
  // Is particle in Central Barrel acceptance?
  // etamin=-etamax
  if( eta < fTriggerEta  )
    return kTRUE;
  else
    return kFALSE;
}

Bool_t AliGenPythia6Diff::IsInEMCAL(Float_t phi, Float_t eta) const
{
  // Is particle in EMCAL acceptance?
  // phi in degrees, etamin=-etamax
  if(phi > fEMCALMinPhi  && phi < fEMCALMaxPhi &&
     eta < fEMCALEta  )
    return kTRUE;
  else
    return kFALSE;
}

Bool_t AliGenPythia6Diff::IsInPHOS(Float_t phi, Float_t eta, Int_t iparticle)
{
  // Is particle in PHOS acceptance?
  // Acceptance slightly larger considered.
  // phi in degrees, etamin=-etamax
  // iparticle is the index of the particle to be checked, for PHOS rotation case
  
  if(phi > fPHOSMinPhi  && phi < fPHOSMaxPhi &&
     eta < fPHOSEta  )
    return kTRUE;
  else
  {
    if( fCheckPHOSeta && eta < fPHOSEta) fPHOSRotateCandidate = iparticle;
    
    return kFALSE;
  }
}

void AliGenPythia6Diff::RotatePhi(Bool_t& okdd)
{
  //Rotate event in phi to enhance events in PHOS acceptance
  
  if(fPHOSRotateCandidate < 0) return ;
  
  //calculate the new position random between fPHOSMinPhi and fPHOSMaxPhi
  Double_t phiPHOSmin = TMath::Pi()*fPHOSMinPhi/180;
  Double_t phiPHOSmax = TMath::Pi()*fPHOSMaxPhi/180;
  Double_t phiPHOS = (AliPythiaRndm::GetPythiaRandom())->Uniform(phiPHOSmin,phiPHOSmax);
  
  //calculate deltaphi
  TParticle* ph = (TParticle *) fParticles.At(fPHOSRotateCandidate);
  Double_t phphi = ph->Phi();
  Double_t deltaphi = phiPHOS - phphi;
  
  
  
  //loop for all particles and produce the phi rotation
  Int_t np = (fHadronisation) ? fParticles.GetEntriesFast() : fNpartons;
  Double_t oldphi, newphi;
  Double_t newVx, newVy, r, vZ, time;
  Double_t newPx, newPy, pt, pz, e;
  for(Int_t i=0; i< np; i++) {
    TParticle* iparticle = (TParticle *) fParticles.At(i);
    oldphi = iparticle->Phi();
    newphi = oldphi + deltaphi;
    if(newphi < 0) newphi = 2*TMath::Pi() + newphi; // correct angle
    if(newphi > 2*TMath::Pi()) newphi = newphi - 2*TMath::Pi(); // correct angle
    
    r = iparticle->R();
    newVx = r * TMath::Cos(newphi);
    newVy = r * TMath::Sin(newphi);
    vZ   = iparticle->Vz(); // don't transform
    time = iparticle->T(); // don't transform
    
    pt = iparticle->Pt();
    newPx = pt * TMath::Cos(newphi);
    newPy = pt * TMath::Sin(newphi);
    pz = iparticle->Pz(); // don't transform
    e  = iparticle->Energy(); // don't transform
    
    // apply rotation
    iparticle->SetProductionVertex(newVx, newVy, vZ, time);
    iparticle->SetMomentum(newPx, newPy, pz, e);
    
  } //end particle loop
  
  // now let's check that we put correctly the candidate photon in PHOS
  Float_t phi = ph->Phi()*180./TMath::Pi(); //Convert to degrees
  Float_t eta =TMath::Abs(ph->Eta());//in calos etamin=-etamax
  if(IsInPHOS(phi,eta,-1))
    okdd = kTRUE;
  
  // reset the value for next event
  fPHOSRotateCandidate = -1;
  
}


Bool_t AliGenPythia6Diff::CheckDiffraction()
{
  // use this method only with Perugia-0 tune!
  
  //  printf("AAA\n");
  
  Int_t np = (fHadronisation) ? fParticles.GetEntriesFast() : fNpartons;
  
  Int_t iPart1=-1;
  Int_t iPart2=-1;
  
  Double_t y1 = 1e10;
  Double_t y2 = -1e10;
  
  const Int_t kNstable=20;
  const Int_t pdgStable[20] = {
    22,             // Photon
    11,             // Electron
    12,             // Electron Neutrino
    13,             // Muon
    14,             // Muon Neutrino
    15,             // Tau
    16,             // Tau Neutrino
    211,            // Pion
    321,            // Kaon
    311,            // K0
    130,            // K0s
    310,            // K0l
    2212,           // Proton
    2112,           // Neutron
    3122,           // Lambda_0
    3112,           // Sigma Minus
    3222,           // Sigma Plus
    3312,           // Xsi Minus
    3322,           // Xsi0
    3334            // Omega
  };
  
  for (Int_t i = 0; i < np; i++) {
    TParticle *  part = (TParticle *) fParticles.At(i);
    
    Int_t statusCode = part->GetStatusCode();
    
    // Initial state particle
    if (statusCode != 1)
      continue;
    
    Int_t pdg = TMath::Abs(part->GetPdgCode());
    Bool_t isStable = kFALSE;
    for (Int_t i1 = 0; i1 < kNstable; i1++) {
      if (pdg == pdgStable[i1]) {
        isStable = kTRUE;
        break;
      }
    }
    if(!isStable)
      continue;
    
    Double_t y = part->Y();
    
    if (y < y1)
	  {
	    y1 = y;
	    iPart1 = i;
	  }
    if (y > y2)
    {
      y2 = y;
      iPart2 = i;
    }
  }
  
  if(iPart1<0 || iPart2<0) return kFALSE;
  
  y1=TMath::Abs(y1);
  y2=TMath::Abs(y2);
  
  TParticle *  part1 = (TParticle *) fParticles.At(iPart1);
  TParticle *  part2 = (TParticle *) fParticles.At(iPart2);
  
  Int_t pdg1 = part1->GetPdgCode();
  Int_t pdg2 = part2->GetPdgCode();
  
  
  Int_t iPart = -1;
  if (pdg1 == 2212 && pdg2 == 2212)
  {
    if(y1 > y2)
      iPart = iPart1;
    else if(y1 < y2)
      iPart = iPart2;
    else {
      iPart = iPart1;
      if((AliPythiaRndm::GetPythiaRandom())->Uniform(0.,1.)>0.5) iPart = iPart2;
    }
  }
  else if (pdg1 == 2212)
    iPart = iPart1;
  else if (pdg2 == 2212)
    iPart = iPart2;
  
  
  
  
  
  Double_t M=-1.;
  if(iPart>0) {
    TParticle *  part = (TParticle *) fParticles.At(iPart);
    Double_t E= part->Energy();
    Double_t P= part->P();
    Double_t M2 = (fEnergyCMS-E-P)*(fEnergyCMS-E+P);
    if(M2<0)  return kFALSE;
    M= TMath::Sqrt(M2);
  }
  
  Double_t Mmin, Mmax, wSD, wDD, wND;
  if(!GetWeightsDiffraction(M, Mmin, Mmax, wSD, wDD, wND)) return kFALSE;
  
  if(M>-1 && M<Mmin) return kFALSE;
  if(M>Mmax) M=-1;
  
  Int_t procType=fPythia->GetMSTI(1);
  Int_t proc0=2;
  if(procType== 94) proc0=1;
  if(procType== 92 || procType== 93) proc0=0;
  
  Int_t proc=2;
  if(M>0) proc=0;
  else if(proc0==1) proc=1;
  
  if(proc==1 && (AliPythiaRndm::GetPythiaRandom())->Uniform(0.,1.) > wDD) return kFALSE;
  if(proc==2 && (AliPythiaRndm::GetPythiaRandom())->Uniform(0.,1.) > wND) return kFALSE;
  
  
  //     if(proc==1 || proc==2) return kFALSE;
  
  if(proc!=0) {
    if(proc0!=0) fProcDiff = procType;
    else       fProcDiff = 95;
    return kTRUE;
  }
  
  if(wSD<0)  AliError("wSD<0 ! \n");
  
  if((AliPythiaRndm::GetPythiaRandom())->Uniform(0.,1.)> wSD) return kFALSE;
  
  //    printf("iPart = %d\n", iPart);
  
  if(iPart==iPart1) fProcDiff=93;
  else if(iPart==iPart2) fProcDiff=92;
  else {
    printf("EROOR:  iPart!=iPart1 && iPart!=iPart2\n");
    
  }
  
  return kTRUE;
}



Bool_t AliGenPythia6Diff::GetWeightsDiffraction(Double_t M, Double_t &Mmin, Double_t &Mmax,
                                                Double_t &wSD, Double_t &wDD, Double_t &wND)
{
  
  // 900 GeV
  if(TMath::Abs(fEnergyCMS-900)<1 ){
    
    const Int_t nbin=400;
    Double_t bin[]={
      1.080000, 1.577300, 2.074600, 2.571900, 3.069200, 3.566500,
      4.063800, 4.561100, 5.058400, 5.555700, 6.053000, 6.550300,
      7.047600, 7.544900, 8.042200, 8.539500, 9.036800, 9.534100,
      10.031400, 10.528700, 11.026000, 11.523300, 12.020600, 12.517900,
      13.015200, 13.512500, 14.009800, 14.507100, 15.004400, 15.501700,
      15.999000, 16.496300, 16.993600, 17.490900, 17.988200, 18.485500,
      18.982800, 19.480100, 19.977400, 20.474700, 20.972000, 21.469300,
      21.966600, 22.463900, 22.961200, 23.458500, 23.955800, 24.453100,
      24.950400, 25.447700, 25.945000, 26.442300, 26.939600, 27.436900,
      27.934200, 28.431500, 28.928800, 29.426100, 29.923400, 30.420700,
      30.918000, 31.415300, 31.912600, 32.409900, 32.907200, 33.404500,
      33.901800, 34.399100, 34.896400, 35.393700, 35.891000, 36.388300,
      36.885600, 37.382900, 37.880200, 38.377500, 38.874800, 39.372100,
      39.869400, 40.366700, 40.864000, 41.361300, 41.858600, 42.355900,
      42.853200, 43.350500, 43.847800, 44.345100, 44.842400, 45.339700,
      45.837000, 46.334300, 46.831600, 47.328900, 47.826200, 48.323500,
      48.820800, 49.318100, 49.815400, 50.312700, 50.810000, 51.307300,
      51.804600, 52.301900, 52.799200, 53.296500, 53.793800, 54.291100,
      54.788400, 55.285700, 55.783000, 56.280300, 56.777600, 57.274900,
      57.772200, 58.269500, 58.766800, 59.264100, 59.761400, 60.258700,
      60.756000, 61.253300, 61.750600, 62.247900, 62.745200, 63.242500,
      63.739800, 64.237100, 64.734400, 65.231700, 65.729000, 66.226300,
      66.723600, 67.220900, 67.718200, 68.215500, 68.712800, 69.210100,
      69.707400, 70.204700, 70.702000, 71.199300, 71.696600, 72.193900,
      72.691200, 73.188500, 73.685800, 74.183100, 74.680400, 75.177700,
      75.675000, 76.172300, 76.669600, 77.166900, 77.664200, 78.161500,
      78.658800, 79.156100, 79.653400, 80.150700, 80.648000, 81.145300,
      81.642600, 82.139900, 82.637200, 83.134500, 83.631800, 84.129100,
      84.626400, 85.123700, 85.621000, 86.118300, 86.615600, 87.112900,
      87.610200, 88.107500, 88.604800, 89.102100, 89.599400, 90.096700,
      90.594000, 91.091300, 91.588600, 92.085900, 92.583200, 93.080500,
      93.577800, 94.075100, 94.572400, 95.069700, 95.567000, 96.064300,
      96.561600, 97.058900, 97.556200, 98.053500, 98.550800, 99.048100,
      99.545400, 100.042700, 100.540000, 101.037300, 101.534600, 102.031900,
      102.529200, 103.026500, 103.523800, 104.021100, 104.518400, 105.015700,
      105.513000, 106.010300, 106.507600, 107.004900, 107.502200, 107.999500,
      108.496800, 108.994100, 109.491400, 109.988700, 110.486000, 110.983300,
      111.480600, 111.977900, 112.475200, 112.972500, 113.469800, 113.967100,
      114.464400, 114.961700, 115.459000, 115.956300, 116.453600, 116.950900,
      117.448200, 117.945500, 118.442800, 118.940100, 119.437400, 119.934700,
      120.432000, 120.929300, 121.426600, 121.923900, 122.421200, 122.918500,
      123.415800, 123.913100, 124.410400, 124.907700, 125.405000, 125.902300,
      126.399600, 126.896900, 127.394200, 127.891500, 128.388800, 128.886100,
      129.383400, 129.880700, 130.378000, 130.875300, 131.372600, 131.869900,
      132.367200, 132.864500, 133.361800, 133.859100, 134.356400, 134.853700,
      135.351000, 135.848300, 136.345600, 136.842900, 137.340200, 137.837500,
      138.334800, 138.832100, 139.329400, 139.826700, 140.324000, 140.821300,
      141.318600, 141.815900, 142.313200, 142.810500, 143.307800, 143.805100,
      144.302400, 144.799700, 145.297000, 145.794300, 146.291600, 146.788900,
      147.286200, 147.783500, 148.280800, 148.778100, 149.275400, 149.772700,
      150.270000, 150.767300, 151.264600, 151.761900, 152.259200, 152.756500,
      153.253800, 153.751100, 154.248400, 154.745700, 155.243000, 155.740300,
      156.237600, 156.734900, 157.232200, 157.729500, 158.226800, 158.724100,
      159.221400, 159.718700, 160.216000, 160.713300, 161.210600, 161.707900,
      162.205200, 162.702500, 163.199800, 163.697100, 164.194400, 164.691700,
      165.189000, 165.686300, 166.183600, 166.680900, 167.178200, 167.675500,
      168.172800, 168.670100, 169.167400, 169.664700, 170.162000, 170.659300,
      171.156600, 171.653900, 172.151200, 172.648500, 173.145800, 173.643100,
      174.140400, 174.637700, 175.135000, 175.632300, 176.129600, 176.626900,
      177.124200, 177.621500, 178.118800, 178.616100, 179.113400, 179.610700,
      180.108000, 180.605300, 181.102600, 181.599900, 182.097200, 182.594500,
      183.091800, 183.589100, 184.086400, 184.583700, 185.081000, 185.578300,
      186.075600, 186.572900, 187.070200, 187.567500, 188.064800, 188.562100,
      189.059400, 189.556700, 190.054000, 190.551300, 191.048600, 191.545900,
      192.043200, 192.540500, 193.037800, 193.535100, 194.032400, 194.529700,
      195.027000, 195.524300, 196.021600, 196.518900, 197.016200, 197.513500,
      198.010800, 198.508100, 199.005400, 199.502700, 200.000000};
    Double_t w[]={
      1.000000, 0.643457, 0.645609, 0.648347, 0.604563, 0.605002,
      0.602819, 0.611473, 0.576412, 0.562354, 0.550216, 0.529285,
      0.534558, 0.534364, 0.530358, 0.518475, 0.489253, 0.469754,
      0.469825, 0.450513, 0.455849, 0.435312, 0.437210, 0.456686,
      0.413577, 0.427093, 0.426894, 0.418834, 0.409475, 0.388483,
      0.412208, 0.388912, 0.389611, 0.382572, 0.389220, 0.370964,
      0.380463, 0.370873, 0.363701, 0.369363, 0.357361, 0.365759,
      0.348566, 0.337062, 0.348190, 0.332330, 0.359001, 0.335836,
      0.339154, 0.335599, 0.336035, 0.335204, 0.353440, 0.337836,
      0.333874, 0.307120, 0.294963, 0.324978, 0.313359, 0.317688,
      0.323758, 0.319304, 0.335317, 0.301765, 0.317257, 0.356331,
      0.323119, 0.297732, 0.303188, 0.326102, 0.316467, 0.294728,
      0.308135, 0.288857, 0.325692, 0.312493, 0.291100, 0.325921,
      0.313317, 0.295980, 0.308481, 0.328380, 0.313081, 0.296763,
      0.295431, 0.317325, 0.320462, 0.286918, 0.316035, 0.335208,
      0.283193, 0.333945, 0.292534, 0.294164, 0.330680, 0.296992,
      0.285509, 0.317260, 0.298269, 0.311299, 0.312129, 0.286822,
      0.287442, 0.319139, 0.283314, 0.318454, 0.297727, 0.301597,
      0.282483, 0.294792, 0.305569, 0.290957, 0.297817, 0.282908,
      0.272401, 0.305584, 0.300220, 0.297020, 0.298781, 0.278008,
      0.277727, 0.323777, 0.287419, 0.342074, 0.287259, 0.303658,
      0.302668, 0.279622, 0.280586, 0.313630, 0.276068, 0.257051,
      0.309996, 0.265534, 0.297138, 0.281738, 0.294610, 0.292882,
      0.286860, 0.312686, 0.293244, 0.293744, 0.271375, 0.278734,
      0.280308, 0.304739, 0.287907, 0.285261, 0.311180, 0.313476,
      0.289660, 0.289282, 0.319505, 0.271285, 0.272008, 0.289245,
      0.281038, 0.285284, 0.295836, 0.281416, 0.283501, 0.295417,
      0.304372, 0.297764, 0.291378, 0.321530, 0.315604, 0.329507,
      0.282609, 0.275576, 0.283721, 0.311714, 0.283760, 0.273188,
      0.312193, 0.264347, 0.281532, 0.301226, 0.281718, 0.336408,
      0.283157, 0.332010, 0.289974, 0.290256, 0.301569, 0.332228,
      0.288282, 0.326339, 0.313653, 0.300361, 0.289470, 0.264830,
      0.298659, 0.272359, 0.278878, 0.306001, 0.328168, 0.294991,
      0.327737, 0.278056, 0.302435, 0.284183, 0.279270, 0.307279,
      0.307917, 0.315196, 0.283803, 0.313333, 0.315730, 0.304818,
      0.307171, 0.295223, 0.333741, 0.346911, 0.310143, 0.336686,
      0.275459, 0.334781, 0.295405, 0.275816, 0.301678, 0.327242,
      0.320717, 0.309230, 0.292145, 0.294489, 0.305088, 0.300969,
      0.277438, 0.326159, 0.297065, 0.301177, 0.303843, 0.275382,
      0.304019, 0.284166, 0.289610, 0.331611, 0.317131, 0.310880,
      0.360456, 0.294052, 0.342694, 0.327166, 0.336797, 0.298040,
      0.295767, 0.260053, 0.325544, 0.335310, 0.320182, 0.301072,
      0.313117, 0.283407, 0.299206, 0.293525, 0.305067, 0.255978,
      0.327055, 0.316382, 0.317700, 0.278993, 0.283120, 0.314000,
      0.274396, 0.291208, 0.348813, 0.319603, 0.313076, 0.289155,
      0.343988, 0.311426, 0.322896, 0.328726, 0.337062, 0.389093,
      0.284122, 0.312184, 0.304008, 0.319170, 0.320778, 0.288390,
      0.337272, 0.356273, 0.343310, 0.312209, 0.330709, 0.297977,
      0.346146, 0.369162, 0.324385, 0.339831, 0.337037, 0.318739,
      0.343157, 0.277720, 0.368407, 0.321330, 0.338997, 0.314220,
      0.328861, 0.321824, 0.328013, 0.356925, 0.359144, 0.296314,
      0.345415, 0.396711, 0.347032, 0.294928, 0.343799, 0.322331,
      0.328656, 0.326098, 0.337338, 0.337038, 0.300179, 0.351391,
      0.324337, 0.330896, 0.302842, 0.310522, 0.337052, 0.359989,
      0.383250, 0.359355, 0.315382, 0.333113, 0.342598, 0.355348,
      0.320751, 0.320475, 0.351762, 0.351475, 0.338358, 0.326153,
      0.302507, 0.340048, 0.318685, 0.381646, 0.339320, 0.299453,
      0.426599, 0.393515, 0.353929, 0.328435, 0.413976, 0.292558,
      0.379340, 0.358344, 0.409259, 0.313821, 0.336675, 0.324521,
      0.408382, 0.346273, 0.312939, 0.362453, 0.343152, 0.330577,
      0.332831, 0.353299, 0.347745, 0.334818, 0.332234, 0.385585,
      0.395483, 0.395316, 0.326972, 0.349434, 0.317604, 0.328980,
      0.375056, 0.317290, 0.357083, 0.346165, 0.310444, 0.356873,
      0.359523, 0.365308, 0.365122, 0.383685, 0.370975, 0.396928,
      0.407654, 0.307755, 0.323033, 0.350580, 0.345231, 0.342462,
      0.400000, 0.318309, 0.403570, 0.322856, 0.383053, 0.422252,
      0.386112, 0.364314, 0.434375, 0.334629};
    wDD = 0.379611;
    wND = 0.496961;
    wSD = -1;
    
    Mmin = bin[0];
    Mmax = bin[nbin];
    if(M<Mmin || M>Mmax) return kTRUE;
    
    Int_t ibin=nbin-1;
    for(Int_t i=1; i<=nbin; i++)
      if(M<=bin[i]) {
        ibin=i-1;
        //	printf("Mi> %f && Mi< %f\n", bin[i-1], bin[i]);
        break;
      }
    wSD=w[ibin];
    return kTRUE;
  }
  else if(TMath::Abs(fEnergyCMS-2760)<1 ){
    
    const Int_t nbin=400;
    Double_t bin[]={
      1.080000, 1.577300, 2.074600, 2.571900, 3.069200, 3.566500,
      4.063800, 4.561100, 5.058400, 5.555700, 6.053000, 6.550300,
      7.047600, 7.544900, 8.042200, 8.539500, 9.036800, 9.534100,
      10.031400, 10.528700, 11.026000, 11.523300, 12.020600, 12.517900,
      13.015200, 13.512500, 14.009800, 14.507100, 15.004400, 15.501700,
      15.999000, 16.496300, 16.993600, 17.490900, 17.988200, 18.485500,
      18.982800, 19.480100, 19.977400, 20.474700, 20.972000, 21.469300,
      21.966600, 22.463900, 22.961200, 23.458500, 23.955800, 24.453100,
      24.950400, 25.447700, 25.945000, 26.442300, 26.939600, 27.436900,
      27.934200, 28.431500, 28.928800, 29.426100, 29.923400, 30.420700,
      30.918000, 31.415300, 31.912600, 32.409900, 32.907200, 33.404500,
      33.901800, 34.399100, 34.896400, 35.393700, 35.891000, 36.388300,
      36.885600, 37.382900, 37.880200, 38.377500, 38.874800, 39.372100,
      39.869400, 40.366700, 40.864000, 41.361300, 41.858600, 42.355900,
      42.853200, 43.350500, 43.847800, 44.345100, 44.842400, 45.339700,
      45.837000, 46.334300, 46.831600, 47.328900, 47.826200, 48.323500,
      48.820800, 49.318100, 49.815400, 50.312700, 50.810000, 51.307300,
      51.804600, 52.301900, 52.799200, 53.296500, 53.793800, 54.291100,
      54.788400, 55.285700, 55.783000, 56.280300, 56.777600, 57.274900,
      57.772200, 58.269500, 58.766800, 59.264100, 59.761400, 60.258700,
      60.756000, 61.253300, 61.750600, 62.247900, 62.745200, 63.242500,
      63.739800, 64.237100, 64.734400, 65.231700, 65.729000, 66.226300,
      66.723600, 67.220900, 67.718200, 68.215500, 68.712800, 69.210100,
      69.707400, 70.204700, 70.702000, 71.199300, 71.696600, 72.193900,
      72.691200, 73.188500, 73.685800, 74.183100, 74.680400, 75.177700,
      75.675000, 76.172300, 76.669600, 77.166900, 77.664200, 78.161500,
      78.658800, 79.156100, 79.653400, 80.150700, 80.648000, 81.145300,
      81.642600, 82.139900, 82.637200, 83.134500, 83.631800, 84.129100,
      84.626400, 85.123700, 85.621000, 86.118300, 86.615600, 87.112900,
      87.610200, 88.107500, 88.604800, 89.102100, 89.599400, 90.096700,
      90.594000, 91.091300, 91.588600, 92.085900, 92.583200, 93.080500,
      93.577800, 94.075100, 94.572400, 95.069700, 95.567000, 96.064300,
      96.561600, 97.058900, 97.556200, 98.053500, 98.550800, 99.048100,
      99.545400, 100.042700, 100.540000, 101.037300, 101.534600, 102.031900,
      102.529200, 103.026500, 103.523800, 104.021100, 104.518400, 105.015700,
      105.513000, 106.010300, 106.507600, 107.004900, 107.502200, 107.999500,
      108.496800, 108.994100, 109.491400, 109.988700, 110.486000, 110.983300,
      111.480600, 111.977900, 112.475200, 112.972500, 113.469800, 113.967100,
      114.464400, 114.961700, 115.459000, 115.956300, 116.453600, 116.950900,
      117.448200, 117.945500, 118.442800, 118.940100, 119.437400, 119.934700,
      120.432000, 120.929300, 121.426600, 121.923900, 122.421200, 122.918500,
      123.415800, 123.913100, 124.410400, 124.907700, 125.405000, 125.902300,
      126.399600, 126.896900, 127.394200, 127.891500, 128.388800, 128.886100,
      129.383400, 129.880700, 130.378000, 130.875300, 131.372600, 131.869900,
      132.367200, 132.864500, 133.361800, 133.859100, 134.356400, 134.853700,
      135.351000, 135.848300, 136.345600, 136.842900, 137.340200, 137.837500,
      138.334800, 138.832100, 139.329400, 139.826700, 140.324000, 140.821300,
      141.318600, 141.815900, 142.313200, 142.810500, 143.307800, 143.805100,
      144.302400, 144.799700, 145.297000, 145.794300, 146.291600, 146.788900,
      147.286200, 147.783500, 148.280800, 148.778100, 149.275400, 149.772700,
      150.270000, 150.767300, 151.264600, 151.761900, 152.259200, 152.756500,
      153.253800, 153.751100, 154.248400, 154.745700, 155.243000, 155.740300,
      156.237600, 156.734900, 157.232200, 157.729500, 158.226800, 158.724100,
      159.221400, 159.718700, 160.216000, 160.713300, 161.210600, 161.707900,
      162.205200, 162.702500, 163.199800, 163.697100, 164.194400, 164.691700,
      165.189000, 165.686300, 166.183600, 166.680900, 167.178200, 167.675500,
      168.172800, 168.670100, 169.167400, 169.664700, 170.162000, 170.659300,
      171.156600, 171.653900, 172.151200, 172.648500, 173.145800, 173.643100,
      174.140400, 174.637700, 175.135000, 175.632300, 176.129600, 176.626900,
      177.124200, 177.621500, 178.118800, 178.616100, 179.113400, 179.610700,
      180.108000, 180.605300, 181.102600, 181.599900, 182.097200, 182.594500,
      183.091800, 183.589100, 184.086400, 184.583700, 185.081000, 185.578300,
      186.075600, 186.572900, 187.070200, 187.567500, 188.064800, 188.562100,
      189.059400, 189.556700, 190.054000, 190.551300, 191.048600, 191.545900,
      192.043200, 192.540500, 193.037800, 193.535100, 194.032400, 194.529700,
      195.027000, 195.524300, 196.021600, 196.518900, 197.016200, 197.513500,
      198.010800, 198.508100, 199.005400, 199.502700, 200.000000};
    Double_t w[]={
      1.000000, 0.692593, 0.673384, 0.666273, 0.657285, 0.637723,
      0.625881, 0.643590, 0.606100, 0.589007, 0.567824, 0.578705,
      0.538530, 0.517937, 0.528278, 0.515918, 0.539461, 0.466186,
      0.489869, 0.468402, 0.465017, 0.453336, 0.460769, 0.474638,
      0.456347, 0.434471, 0.427478, 0.435435, 0.410934, 0.366431,
      0.382240, 0.379513, 0.394249, 0.386837, 0.353103, 0.382138,
      0.377497, 0.389479, 0.378736, 0.347933, 0.354605, 0.352077,
      0.324443, 0.358792, 0.339968, 0.359052, 0.330734, 0.318291,
      0.333703, 0.358644, 0.335819, 0.332213, 0.309051, 0.309975,
      0.331626, 0.304407, 0.309819, 0.312097, 0.312462, 0.320411,
      0.280401, 0.302311, 0.315863, 0.281479, 0.310003, 0.296911,
      0.313676, 0.281071, 0.294163, 0.306500, 0.283462, 0.274867,
      0.307149, 0.270555, 0.282264, 0.287373, 0.307849, 0.278675,
      0.286990, 0.278269, 0.300105, 0.286799, 0.265674, 0.275140,
      0.285702, 0.257352, 0.267714, 0.248204, 0.252220, 0.255678,
      0.282946, 0.268257, 0.282375, 0.262675, 0.275564, 0.248345,
      0.236259, 0.291914, 0.259936, 0.241338, 0.267389, 0.285044,
      0.289419, 0.253594, 0.284568, 0.231840, 0.260008, 0.268527,
      0.275363, 0.224115, 0.281260, 0.257913, 0.295152, 0.264399,
      0.232287, 0.282533, 0.223431, 0.255756, 0.244471, 0.221695,
      0.272450, 0.284244, 0.253682, 0.270717, 0.275403, 0.240323,
      0.245081, 0.241859, 0.216340, 0.244789, 0.220291, 0.238478,
      0.224691, 0.244058, 0.266117, 0.271478, 0.242012, 0.267321,
      0.248494, 0.253343, 0.255606, 0.235458, 0.241079, 0.233223,
      0.226813, 0.259224, 0.234239, 0.258606, 0.210892, 0.238186,
      0.243271, 0.222678, 0.213437, 0.273939, 0.247966, 0.232548,
      0.263438, 0.222089, 0.272111, 0.248818, 0.244295, 0.238368,
      0.236908, 0.248776, 0.232604, 0.231194, 0.227117, 0.231152,
      0.282140, 0.229778, 0.232631, 0.261794, 0.216633, 0.253471,
      0.242157, 0.227406, 0.269335, 0.230547, 0.210618, 0.285872,
      0.248776, 0.229875, 0.242728, 0.227388, 0.220567, 0.222062,
      0.235950, 0.224087, 0.228895, 0.208287, 0.235999, 0.208696,
      0.230367, 0.267667, 0.220484, 0.233402, 0.233815, 0.250455,
      0.253120, 0.219556, 0.230980, 0.236661, 0.222395, 0.226111,
      0.198315, 0.210555, 0.202813, 0.208594, 0.235976, 0.221490,
      0.243059, 0.204901, 0.216987, 0.229039, 0.231466, 0.221975,
      0.231220, 0.253638, 0.250448, 0.260291, 0.328345, 0.205739,
      0.222014, 0.251513, 0.279427, 0.270506, 0.248409, 0.222472,
      0.291632, 0.227796, 0.248769, 0.276896, 0.214742, 0.200139,
      0.230693, 0.226031, 0.268900, 0.185160, 0.245353, 0.205843,
      0.231155, 0.219122, 0.214811, 0.199763, 0.274179, 0.217598,
      0.274988, 0.237244, 0.211820, 0.225459, 0.252799, 0.235948,
      0.224986, 0.245385, 0.237770, 0.213373, 0.229737, 0.215487,
      0.234453, 0.249684, 0.239435, 0.250422, 0.257194, 0.214762,
      0.212266, 0.228988, 0.253798, 0.201607, 0.239946, 0.205245,
      0.231670, 0.212774, 0.206768, 0.231563, 0.189388, 0.227926,
      0.227203, 0.237754, 0.221628, 0.211138, 0.203322, 0.200985,
      0.231780, 0.220294, 0.232686, 0.234243, 0.218264, 0.255870,
      0.223213, 0.238670, 0.213713, 0.213064, 0.246700, 0.233446,
      0.221503, 0.206767, 0.200722, 0.226179, 0.237425, 0.239229,
      0.238611, 0.240419, 0.247806, 0.215923, 0.205298, 0.232778,
      0.272312, 0.226773, 0.258103, 0.223287, 0.269404, 0.203398,
      0.223782, 0.204213, 0.229664, 0.234040, 0.228419, 0.203936,
      0.263686, 0.199141, 0.236127, 0.214058, 0.204611, 0.224324,
      0.292140, 0.190735, 0.235157, 0.213018, 0.257085, 0.190554,
      0.203197, 0.213044, 0.237023, 0.214243, 0.193562, 0.262403,
      0.206256, 0.221396, 0.233588, 0.256611, 0.249731, 0.226683,
      0.199330, 0.251026, 0.222596, 0.201941, 0.186374, 0.221038,
      0.196555, 0.222560, 0.299419, 0.231979, 0.242924, 0.198310,
      0.217628, 0.235458, 0.278595, 0.218624, 0.277305, 0.239109,
      0.205600, 0.253715, 0.221173, 0.218195, 0.277647, 0.241974,
      0.268748, 0.268128, 0.292258, 0.249420, 0.191034, 0.219506,
      0.216502, 0.250677, 0.193386, 0.201310, 0.259464, 0.255351,
      0.269628, 0.221063, 0.294079, 0.196726, 0.233634, 0.221870,
      0.216236, 0.197259, 0.247433, 0.272765, 0.294079, 0.236336,
      0.206396, 0.238524, 0.247846, 0.269519, 0.237141, 0.230611,
      0.201712, 0.242225, 0.255565, 0.258738};
    wDD = 0.512813;
    wND = 0.518820;
    wSD = -1;
    
    Mmin = bin[0];
    Mmax = bin[nbin];
    if(M<Mmin || M>Mmax) return kTRUE;
    
    Int_t ibin=nbin-1;
    for(Int_t i=1; i<=nbin; i++)
      if(M<=bin[i]) {
        ibin=i-1;
        //	printf("Mi> %f && Mi< %f\n", bin[i-1], bin[i]);
        break;
      }
    wSD=w[ibin];
    return kTRUE;
  }
  
  
  else if(TMath::Abs(fEnergyCMS-7000)<1  || TMath::Abs(fEnergyCMS-8000)<1){
    const Int_t nbin=400;
    Double_t bin[]={
      1.080000, 1.577300, 2.074600, 2.571900, 3.069200, 3.566500,
      4.063800, 4.561100, 5.058400, 5.555700, 6.053000, 6.550300,
      7.047600, 7.544900, 8.042200, 8.539500, 9.036800, 9.534100,
      10.031400, 10.528700, 11.026000, 11.523300, 12.020600, 12.517900,
      13.015200, 13.512500, 14.009800, 14.507100, 15.004400, 15.501700,
      15.999000, 16.496300, 16.993600, 17.490900, 17.988200, 18.485500,
      18.982800, 19.480100, 19.977400, 20.474700, 20.972000, 21.469300,
      21.966600, 22.463900, 22.961200, 23.458500, 23.955800, 24.453100,
      24.950400, 25.447700, 25.945000, 26.442300, 26.939600, 27.436900,
      27.934200, 28.431500, 28.928800, 29.426100, 29.923400, 30.420700,
      30.918000, 31.415300, 31.912600, 32.409900, 32.907200, 33.404500,
      33.901800, 34.399100, 34.896400, 35.393700, 35.891000, 36.388300,
      36.885600, 37.382900, 37.880200, 38.377500, 38.874800, 39.372100,
      39.869400, 40.366700, 40.864000, 41.361300, 41.858600, 42.355900,
      42.853200, 43.350500, 43.847800, 44.345100, 44.842400, 45.339700,
      45.837000, 46.334300, 46.831600, 47.328900, 47.826200, 48.323500,
      48.820800, 49.318100, 49.815400, 50.312700, 50.810000, 51.307300,
      51.804600, 52.301900, 52.799200, 53.296500, 53.793800, 54.291100,
      54.788400, 55.285700, 55.783000, 56.280300, 56.777600, 57.274900,
      57.772200, 58.269500, 58.766800, 59.264100, 59.761400, 60.258700,
      60.756000, 61.253300, 61.750600, 62.247900, 62.745200, 63.242500,
      63.739800, 64.237100, 64.734400, 65.231700, 65.729000, 66.226300,
      66.723600, 67.220900, 67.718200, 68.215500, 68.712800, 69.210100,
      69.707400, 70.204700, 70.702000, 71.199300, 71.696600, 72.193900,
      72.691200, 73.188500, 73.685800, 74.183100, 74.680400, 75.177700,
      75.675000, 76.172300, 76.669600, 77.166900, 77.664200, 78.161500,
      78.658800, 79.156100, 79.653400, 80.150700, 80.648000, 81.145300,
      81.642600, 82.139900, 82.637200, 83.134500, 83.631800, 84.129100,
      84.626400, 85.123700, 85.621000, 86.118300, 86.615600, 87.112900,
      87.610200, 88.107500, 88.604800, 89.102100, 89.599400, 90.096700,
      90.594000, 91.091300, 91.588600, 92.085900, 92.583200, 93.080500,
      93.577800, 94.075100, 94.572400, 95.069700, 95.567000, 96.064300,
      96.561600, 97.058900, 97.556200, 98.053500, 98.550800, 99.048100,
      99.545400, 100.042700, 100.540000, 101.037300, 101.534600, 102.031900,
      102.529200, 103.026500, 103.523800, 104.021100, 104.518400, 105.015700,
      105.513000, 106.010300, 106.507600, 107.004900, 107.502200, 107.999500,
      108.496800, 108.994100, 109.491400, 109.988700, 110.486000, 110.983300,
      111.480600, 111.977900, 112.475200, 112.972500, 113.469800, 113.967100,
      114.464400, 114.961700, 115.459000, 115.956300, 116.453600, 116.950900,
      117.448200, 117.945500, 118.442800, 118.940100, 119.437400, 119.934700,
      120.432000, 120.929300, 121.426600, 121.923900, 122.421200, 122.918500,
      123.415800, 123.913100, 124.410400, 124.907700, 125.405000, 125.902300,
      126.399600, 126.896900, 127.394200, 127.891500, 128.388800, 128.886100,
      129.383400, 129.880700, 130.378000, 130.875300, 131.372600, 131.869900,
      132.367200, 132.864500, 133.361800, 133.859100, 134.356400, 134.853700,
      135.351000, 135.848300, 136.345600, 136.842900, 137.340200, 137.837500,
      138.334800, 138.832100, 139.329400, 139.826700, 140.324000, 140.821300,
      141.318600, 141.815900, 142.313200, 142.810500, 143.307800, 143.805100,
      144.302400, 144.799700, 145.297000, 145.794300, 146.291600, 146.788900,
      147.286200, 147.783500, 148.280800, 148.778100, 149.275400, 149.772700,
      150.270000, 150.767300, 151.264600, 151.761900, 152.259200, 152.756500,
      153.253800, 153.751100, 154.248400, 154.745700, 155.243000, 155.740300,
      156.237600, 156.734900, 157.232200, 157.729500, 158.226800, 158.724100,
      159.221400, 159.718700, 160.216000, 160.713300, 161.210600, 161.707900,
      162.205200, 162.702500, 163.199800, 163.697100, 164.194400, 164.691700,
      165.189000, 165.686300, 166.183600, 166.680900, 167.178200, 167.675500,
      168.172800, 168.670100, 169.167400, 169.664700, 170.162000, 170.659300,
      171.156600, 171.653900, 172.151200, 172.648500, 173.145800, 173.643100,
      174.140400, 174.637700, 175.135000, 175.632300, 176.129600, 176.626900,
      177.124200, 177.621500, 178.118800, 178.616100, 179.113400, 179.610700,
      180.108000, 180.605300, 181.102600, 181.599900, 182.097200, 182.594500,
      183.091800, 183.589100, 184.086400, 184.583700, 185.081000, 185.578300,
      186.075600, 186.572900, 187.070200, 187.567500, 188.064800, 188.562100,
      189.059400, 189.556700, 190.054000, 190.551300, 191.048600, 191.545900,
      192.043200, 192.540500, 193.037800, 193.535100, 194.032400, 194.529700,
      195.027000, 195.524300, 196.021600, 196.518900, 197.016200, 197.513500,
      198.010800, 198.508100, 199.005400, 199.502700, 200.000000};
    Double_t w[]={
      1.000000, 0.798640, 0.770197, 0.717990, 0.699434, 0.692093,
      0.620940, 0.655294, 0.636496, 0.633483, 0.600518, 0.594548,
      0.550759, 0.550413, 0.528926, 0.525877, 0.506701, 0.504117,
      0.486973, 0.492930, 0.461833, 0.488695, 0.438874, 0.460274,
      0.451551, 0.454424, 0.449270, 0.387571, 0.427556, 0.428740,
      0.401682, 0.402260, 0.408961, 0.395417, 0.387426, 0.378602,
      0.357826, 0.359125, 0.348494, 0.363710, 0.356117, 0.340363,
      0.337637, 0.396084, 0.341777, 0.340551, 0.348838, 0.344014,
      0.340468, 0.317654, 0.355584, 0.326023, 0.373416, 0.312298,
      0.326522, 0.290540, 0.335557, 0.318689, 0.327544, 0.319501,
      0.331754, 0.312728, 0.282263, 0.274937, 0.303867, 0.307820,
      0.289344, 0.268934, 0.288908, 0.290018, 0.291369, 0.295242,
      0.289067, 0.277685, 0.267957, 0.267559, 0.320229, 0.265060,
      0.305931, 0.305352, 0.262064, 0.281879, 0.287780, 0.270033,
      0.270814, 0.276667, 0.271531, 0.275283, 0.258189, 0.287969,
      0.251247, 0.301527, 0.267230, 0.245860, 0.293125, 0.253421,
      0.272396, 0.243637, 0.236206, 0.278452, 0.246544, 0.263165,
      0.230484, 0.231102, 0.258281, 0.244707, 0.270111, 0.248295,
      0.246942, 0.245592, 0.272766, 0.254243, 0.199647, 0.262590,
      0.226710, 0.243836, 0.214153, 0.233535, 0.235207, 0.234245,
      0.247698, 0.248379, 0.241463, 0.265230, 0.223242, 0.236191,
      0.252700, 0.231865, 0.228352, 0.229101, 0.237385, 0.246485,
      0.254706, 0.245565, 0.224841, 0.257301, 0.240968, 0.202379,
      0.236943, 0.241683, 0.220809, 0.219014, 0.213015, 0.244470,
      0.221042, 0.198996, 0.225295, 0.264466, 0.200600, 0.228143,
      0.250138, 0.216784, 0.268002, 0.275734, 0.218144, 0.229866,
      0.235443, 0.208909, 0.215067, 0.189743, 0.216741, 0.242686,
      0.200234, 0.218882, 0.245991, 0.222815, 0.219576, 0.209773,
      0.205247, 0.203855, 0.202534, 0.192536, 0.223447, 0.225810,
      0.220583, 0.248421, 0.223424, 0.206033, 0.203130, 0.221225,
      0.223763, 0.239216, 0.252311, 0.206893, 0.228461, 0.233591,
      0.201512, 0.242382, 0.215147, 0.232578, 0.207116, 0.239213,
      0.196215, 0.184367, 0.235135, 0.189768, 0.274084, 0.206267,
      0.203283, 0.248828, 0.250214, 0.217465, 0.232080, 0.215150,
      0.207936, 0.176789, 0.191338, 0.188655, 0.196181, 0.223691,
      0.254257, 0.216874, 0.213536, 0.221399, 0.192024, 0.212534,
      0.218169, 0.226635, 0.201191, 0.212700, 0.211634, 0.232353,
      0.223636, 0.208605, 0.249132, 0.183681, 0.221842, 0.187136,
      0.203772, 0.249575, 0.217713, 0.205193, 0.193941, 0.219707,
      0.264226, 0.182105, 0.207183, 0.220845, 0.236571, 0.182390,
      0.212914, 0.186266, 0.195361, 0.217665, 0.204527, 0.188804,
      0.222832, 0.191193, 0.201073, 0.185616, 0.195011, 0.200828,
      0.181434, 0.233707, 0.202925, 0.211992, 0.173100, 0.205258,
      0.182695, 0.216520, 0.218422, 0.209490, 0.211257, 0.215801,
      0.220652, 0.211409, 0.195731, 0.194957, 0.198888, 0.234926,
      0.221377, 0.229822, 0.176700, 0.172322, 0.212265, 0.206133,
      0.170355, 0.253305, 0.198688, 0.240043, 0.225384, 0.174729,
      0.195820, 0.200093, 0.196912, 0.212308, 0.200490, 0.240415,
      0.159744, 0.173686, 0.223853, 0.213604, 0.193779, 0.179328,
      0.180873, 0.237481, 0.179640, 0.235857, 0.202847, 0.167690,
      0.245093, 0.215504, 0.205848, 0.184408, 0.201626, 0.209651,
      0.236306, 0.217803, 0.188534, 0.187861, 0.161663, 0.221718,
      0.152044, 0.190412, 0.173505, 0.208995, 0.174575, 0.180734,
      0.247704, 0.203388, 0.194184, 0.169679, 0.182703, 0.213402,
      0.191808, 0.178604, 0.178116, 0.198452, 0.174687, 0.169809,
      0.222851, 0.156811, 0.229170, 0.210359, 0.178557, 0.248570,
      0.208536, 0.192571, 0.178912, 0.224505, 0.170822, 0.205492,
      0.330973, 0.160924, 0.203724, 0.213255, 0.205827, 0.187162,
      0.181252, 0.191723, 0.238106, 0.182398, 0.202358, 0.212066,
      0.201255, 0.168159, 0.185219, 0.229176, 0.158222, 0.164092,
      0.215405, 0.200724, 0.234811, 0.184488, 0.213112, 0.198577,
      0.219622, 0.160671, 0.179349, 0.206681, 0.206091, 0.165618,
      0.165203, 0.174442, 0.179287, 0.187318, 0.163481, 0.217440,
      0.160381, 0.177025, 0.204385, 0.163676, 0.210733, 0.186519,
      0.230701, 0.191764, 0.185119, 0.190770, 0.242987, 0.186812,
      0.202906, 0.161935, 0.182426, 0.197922, 0.181475, 0.155903,
      0.175006, 0.223482, 0.202706, 0.218108};
    wDD = 0.207705;
    wND = 0.289628;
    wSD = -1;
    
    Mmin = bin[0];
    Mmax = bin[nbin];
    
    if(M<Mmin || M>Mmax) return kTRUE;
    
    Int_t ibin=nbin-1;
    for(Int_t i=1; i<=nbin; i++)
      if(M<=bin[i]) {
        ibin=i-1;
        //	printf("Mi> %f && Mi< %f\n", bin[i-1], bin[i]);
        break;
      }
    wSD=w[ibin];
    return kTRUE;
  }
  
  return kFALSE;
}

Bool_t AliGenPythia6Diff::IsFromHeavyFlavor(Int_t ipart)
{
  // Check if this is a heavy flavor decay product
  TParticle *  part = (TParticle *) fParticles.At(ipart);
  Int_t mpdg = TMath::Abs(part->GetPdgCode());
  Int_t mfl  = Int_t (mpdg / TMath::Power(10, Int_t(TMath::Log10(mpdg))));
  //
  // Light hadron
  if (mfl >= 4 && mfl < 6) return kTRUE;
  
  Int_t imo = part->GetFirstMother()-1;
  TParticle* pm = part;
  //
  // Heavy flavor hadron produced by generator
  while (imo >  -1) {
    pm  =  (TParticle*)fParticles.At(imo);
    mpdg = TMath::Abs(pm->GetPdgCode());
    mfl  = Int_t (mpdg / TMath::Power(10, Int_t(TMath::Log10(mpdg))));
    if ((mfl > 3) && (mfl <6) && mpdg > 400) return kTRUE;
    imo = pm->GetFirstMother()-1;
  }
  return kFALSE;
}

Bool_t AliGenPythia6Diff::CheckDetectorAcceptance(Float_t phi, Float_t eta, Int_t iparticle)
{
  // check the eta/phi correspond to the detectors acceptance
  // iparticle is the index of the particle to be checked, for PHOS rotation case
  if     (fCheckPHOS   && IsInPHOS  (phi,eta,iparticle)) return kTRUE;
  else if(fCheckEMCAL  && IsInEMCAL (phi,eta)) return kTRUE;
  else if(fCheckBarrel && IsInBarrel(    eta)) return kTRUE;
  else                                         return kFALSE;
}

Bool_t AliGenPythia6Diff::TriggerOnSelectedParticles(Int_t np)
{
  // Select events with fragmentation photon, decay photon, pi0, eta or other hadrons going to PHOS or EMCAL or central barrel,
  // implemented primaryly for kPyJets, but extended to any kind of process.
  
  //printf("Check: frag photon %d, pi0 %d, eta %d, electron %d, hadron %d, decay %d, PHOS %d, EMCAL %d, Barrel %d \n",
  //       fFragPhotonInCalo,fPi0InCalo, fEtaInCalo,fEleInCalo,fHadronInCalo,fDecayPhotonInCalo,fCheckPHOS,fCheckEMCAL, fCheckBarrel);
  
  Bool_t ok = kFALSE;
  for (Int_t i=0; i< np; i++) {
    
    TParticle* iparticle = (TParticle *) fParticles.At(i);
    
    Int_t pdg          = iparticle->GetPdgCode();
    Int_t status       = iparticle->GetStatusCode();
    Int_t imother      = iparticle->GetFirstMother() - 1;
    
    TParticle* pmother = 0x0;
    Int_t momStatus    = -1;
    Int_t momPdg       = -1;
    if(imother > 0 ){
      pmother = (TParticle *) fParticles.At(imother);
      momStatus    = pmother->GetStatusCode();
      momPdg       = pmother->GetPdgCode();
    }
    
    ok = kFALSE;
    
    //
    // Check the particle type: hadron (not pi0 or eta), electron, decay photon (from pi0 or eta or any), pi0 or eta
    //
    // Hadron
    if (fHadronInCalo && status == 1)
    {
      if(TMath::Abs(pdg) > 23 && pdg !=221 && pdg != 111) // avoid photons, electrons, muons, neutrinos and eta or pi0
        // (in case neutral mesons were declared stable)
        ok = kTRUE;
    }
    //Electron
    else if (fEleInCalo && status == 1 && TMath::Abs(pdg) == 11)
    {
      ok = kTRUE;
    }
    //Fragmentation photon
    else if (fFragPhotonInCalo && pdg == 22 && status == 1)
    {
      if(momStatus != 11) ok = kTRUE ;  // No photon from hadron decay
    }
    // Decay photon
    else if (fDecayPhotonInCalo && !fForceNeutralMeson2PhotonDecay && pdg == 22) // pi0 status can be 1 or 11 depending on decay settings, work only for 11
    {
      if( momStatus == 11)
      {
        //if(iparticle->Pt() > fTriggerParticleMinPt) printf("Decay photon! pdg %d, status %d, pt %2.2f, mom: pdg %d, pt %2.2f\n",
        //                                                   pdg,status,iparticle->Pt(),momPdg,pmother->Pt());
        ok = kTRUE ;  // photon from hadron decay
        
        //In case only decays from pi0 or eta requested
        if(fPi0InCalo && momPdg!=111) ok = kFALSE;
        if(fEtaInCalo && momPdg!=221) ok = kFALSE;
      }
      
    }
    // Pi0 or Eta particle
    else if ((fPi0InCalo || fEtaInCalo))
    {
      if(fDecayPhotonInCalo && !fForceNeutralMeson2PhotonDecay ) continue ;
      
      if (fPi0InCalo && pdg == 111) // pi0 status can be 1 or 11 depending on decay settings
      {
        //if(iparticle->Pt() > fTriggerParticleMinPt) printf("Pi0! pdg %d, status %d, pt %2.2f\n",pdg,status,iparticle->Pt());
        ok = kTRUE;
      }
      else if (fEtaInCalo && pdg == 221)
      {
        //if(iparticle->Pt() > fTriggerParticleMinPt) printf("Eta! pdg %d, status %d, pt %2.2f\n",pdg,status,iparticle->Pt());
        ok = kTRUE;
      }
      
    }// pi0 or eta
    
    //
    // Check that the selected particle is in the calorimeter acceptance
    //
    if(ok && iparticle->Pt() > fTriggerParticleMinPt)
    {
      //Just check if the selected particle falls in the acceptance
      if(!fForceNeutralMeson2PhotonDecay )
      {
        //printf("\t Check acceptance! \n");
        Float_t phi = iparticle->Phi()*180./TMath::Pi(); //Convert to degrees
        Float_t eta =TMath::Abs(iparticle->Eta()); //in calos etamin=-etamax
        
        if(CheckDetectorAcceptance(phi,eta,i))
        {
          ok =kTRUE;
          AliDebug(1,Form("Selected trigger pdg %d, status %d, pt %2.2f, eta %2.2f, phi %2.2f\n",pdg,status,iparticle->Pt(), eta, phi));
          //printf("\t Accept \n");
          break;
        }
        else ok = kFALSE;
      }
      //Mesons have several decay modes, select only those decaying into 2 photons
      else if(fForceNeutralMeson2PhotonDecay && (fPi0InCalo || fEtaInCalo))
      {
        // In case we want the pi0/eta trigger, 
        // check the decay mode (2 photons)
        
        //printf("\t Force decay 2 gamma\n");          
        
        Int_t ndaughters = iparticle->GetNDaughters();
        if(ndaughters != 2){
          ok=kFALSE;
          continue;
        }
        
        TParticle*d1 = (TParticle *) fParticles.At(iparticle->GetDaughter(0)-1);
        TParticle*d2 = (TParticle *) fParticles.At(iparticle->GetDaughter(1)-1);
        if(!d1 || !d2) {
          ok=kFALSE;
          continue;
        }
        
        //iparticle->Print();
        //d1->Print();
        //d2->Print();
        
        Int_t pdgD1 = d1->GetPdgCode();
        Int_t pdgD2 = d2->GetPdgCode();
        //printf("\t \t 2 daughters pdg = %d - %d\n",pdgD1,pdgD2);
        //printf("mother %d - %d\n",d1->GetFirstMother(),d2->GetFirstMother());
        
        if(pdgD1 != 22  || pdgD2 != 22){ 
          ok = kFALSE;
          continue;
        }
        
        //printf("\t accept decay\n");
        
        //Trigger on the meson, not on the daughter
        if(!fDecayPhotonInCalo){    
          
          Float_t phi = iparticle->Phi()*180./TMath::Pi(); //Convert to degrees
          Float_t eta =TMath::Abs(iparticle->Eta()); //in calos etamin=-etamax	
          
          if(CheckDetectorAcceptance(phi,eta,i))
          {
            //printf("\t Accept meson pdg %d\n",pdg);
            ok =kTRUE;
            AliDebug(1,Form("Selected trigger pdg %d (decay), status %d, pt %2.2f, eta %2.2f, phi %2.2f\n",pdg,status,iparticle->Pt(), eta, phi));
            break;
          } else {
            ok=kFALSE;
            continue;
          }
        }
        
        //printf("Check daughters acceptance\n");
        
        //Trigger on the meson daughters
        //Photon 1
        Float_t phi = d1->Phi()*180./TMath::Pi(); //Convert to degrees
        Float_t eta =TMath::Abs(d1->Eta()); //in calos etamin=-etamax	  
        if(d1->Pt() > fTriggerParticleMinPt)
        {
          //printf("\t Check acceptance photon 1! \n");
          if(CheckDetectorAcceptance(phi,eta,i))
          {
            //printf("\t Accept Photon 1\n");
            ok =kTRUE;
            AliDebug(1,Form("Selected trigger pdg %d (decay), status %d, pt %2.2f, eta %2.2f, phi %2.2f\n",pdg,status,iparticle->Pt(), eta, phi));
            break;
          }
          else ok = kFALSE;
        } // pt cut
        else  ok = kFALSE;
        
        //Photon 2
        phi = d2->Phi()*180./TMath::Pi(); //Convert to degrees
        eta =TMath::Abs(d2->Eta()); //in calos etamin=-etamax	
        
        if(d2->Pt() > fTriggerParticleMinPt)
        {
          //printf("\t Check acceptance photon 2! \n");
          if(CheckDetectorAcceptance(phi,eta,i))
          {
            //printf("\t Accept Photon 2\n");
            ok =kTRUE;
            AliDebug(1,Form("Selected trigger pdg %d (decay), status %d, pt %2.2f, eta %2.2f, phi %2.2f\n",pdg,status,iparticle->Pt(), eta, phi));
            break;
          } 
          else ok = kFALSE;         
        } // pt cut
        else ok = kFALSE;
      } // force 2 photon daughters in pi0/eta decays
      else ok = kFALSE;
    } else ok = kFALSE; // check acceptance
  } // primary loop
  
  //
  // If requested, rotate the particles event in phi to enhance/speed PHOS selection
  // A particle passing all trigger conditions except phi position in PHOS, is used as reference
  //
  if(fCheckPHOSeta)
  {
    RotatePhi(ok);
  }
  
  return ok;
}


AliGenerator* GenPythia6Diff()
{
  AliGenPythia6Diff* pythia = new AliGenPythia6Diff(-1);
  pythia->SetMomentumRange(0, 999999.);
  pythia->SetThetaRange(0., 180.);
  pythia->SetYRange(-12.,12.);
  pythia->SetPtRange(0,1000.);
  pythia->SetProcess(kPyMb);
  pythia->SetEnergyCMS(VAR_PYTHIA6_CMS_ENERGY);
  //    Tune
  //    320     Perugia 0
  pythia->SetTune(320);
  pythia->UseNewMultipleInteractionsScenario();
  pythia->SetCrossingAngle(0,0.000280);
  pythia->SetTuneForDiff();
  
  return pythia;
}
 GenPythia6Diff.C:1
 GenPythia6Diff.C:2
 GenPythia6Diff.C:3
 GenPythia6Diff.C:4
 GenPythia6Diff.C:5
 GenPythia6Diff.C:6
 GenPythia6Diff.C:7
 GenPythia6Diff.C:8
 GenPythia6Diff.C:9
 GenPythia6Diff.C:10
 GenPythia6Diff.C:11
 GenPythia6Diff.C:12
 GenPythia6Diff.C:13
 GenPythia6Diff.C:14
 GenPythia6Diff.C:15
 GenPythia6Diff.C:16
 GenPythia6Diff.C:17
 GenPythia6Diff.C:18
 GenPythia6Diff.C:19
 GenPythia6Diff.C:20
 GenPythia6Diff.C:21
 GenPythia6Diff.C:22
 GenPythia6Diff.C:23
 GenPythia6Diff.C:24
 GenPythia6Diff.C:25
 GenPythia6Diff.C:26
 GenPythia6Diff.C:27
 GenPythia6Diff.C:28
 GenPythia6Diff.C:29
 GenPythia6Diff.C:30
 GenPythia6Diff.C:31
 GenPythia6Diff.C:32
 GenPythia6Diff.C:33
 GenPythia6Diff.C:34
 GenPythia6Diff.C:35
 GenPythia6Diff.C:36
 GenPythia6Diff.C:37
 GenPythia6Diff.C:38
 GenPythia6Diff.C:39
 GenPythia6Diff.C:40
 GenPythia6Diff.C:41
 GenPythia6Diff.C:42
 GenPythia6Diff.C:43
 GenPythia6Diff.C:44
 GenPythia6Diff.C:45
 GenPythia6Diff.C:46
 GenPythia6Diff.C:47
 GenPythia6Diff.C:48
 GenPythia6Diff.C:49
 GenPythia6Diff.C:50
 GenPythia6Diff.C:51
 GenPythia6Diff.C:52
 GenPythia6Diff.C:53
 GenPythia6Diff.C:54
 GenPythia6Diff.C:55
 GenPythia6Diff.C:56
 GenPythia6Diff.C:57
 GenPythia6Diff.C:58
 GenPythia6Diff.C:59
 GenPythia6Diff.C:60
 GenPythia6Diff.C:61
 GenPythia6Diff.C:62
 GenPythia6Diff.C:63
 GenPythia6Diff.C:64
 GenPythia6Diff.C:65
 GenPythia6Diff.C:66
 GenPythia6Diff.C:67
 GenPythia6Diff.C:68
 GenPythia6Diff.C:69
 GenPythia6Diff.C:70
 GenPythia6Diff.C:71
 GenPythia6Diff.C:72
 GenPythia6Diff.C:73
 GenPythia6Diff.C:74
 GenPythia6Diff.C:75
 GenPythia6Diff.C:76
 GenPythia6Diff.C:77
 GenPythia6Diff.C:78
 GenPythia6Diff.C:79
 GenPythia6Diff.C:80
 GenPythia6Diff.C:81
 GenPythia6Diff.C:82
 GenPythia6Diff.C:83
 GenPythia6Diff.C:84
 GenPythia6Diff.C:85
 GenPythia6Diff.C:86
 GenPythia6Diff.C:87
 GenPythia6Diff.C:88
 GenPythia6Diff.C:89
 GenPythia6Diff.C:90
 GenPythia6Diff.C:91
 GenPythia6Diff.C:92
 GenPythia6Diff.C:93
 GenPythia6Diff.C:94
 GenPythia6Diff.C:95
 GenPythia6Diff.C:96
 GenPythia6Diff.C:97
 GenPythia6Diff.C:98
 GenPythia6Diff.C:99
 GenPythia6Diff.C:100
 GenPythia6Diff.C:101
 GenPythia6Diff.C:102
 GenPythia6Diff.C:103
 GenPythia6Diff.C:104
 GenPythia6Diff.C:105
 GenPythia6Diff.C:106
 GenPythia6Diff.C:107
 GenPythia6Diff.C:108
 GenPythia6Diff.C:109
 GenPythia6Diff.C:110
 GenPythia6Diff.C:111
 GenPythia6Diff.C:112
 GenPythia6Diff.C:113
 GenPythia6Diff.C:114
 GenPythia6Diff.C:115
 GenPythia6Diff.C:116
 GenPythia6Diff.C:117
 GenPythia6Diff.C:118
 GenPythia6Diff.C:119
 GenPythia6Diff.C:120
 GenPythia6Diff.C:121
 GenPythia6Diff.C:122
 GenPythia6Diff.C:123
 GenPythia6Diff.C:124
 GenPythia6Diff.C:125
 GenPythia6Diff.C:126
 GenPythia6Diff.C:127
 GenPythia6Diff.C:128
 GenPythia6Diff.C:129
 GenPythia6Diff.C:130
 GenPythia6Diff.C:131
 GenPythia6Diff.C:132
 GenPythia6Diff.C:133
 GenPythia6Diff.C:134
 GenPythia6Diff.C:135
 GenPythia6Diff.C:136
 GenPythia6Diff.C:137
 GenPythia6Diff.C:138
 GenPythia6Diff.C:139
 GenPythia6Diff.C:140
 GenPythia6Diff.C:141
 GenPythia6Diff.C:142
 GenPythia6Diff.C:143
 GenPythia6Diff.C:144
 GenPythia6Diff.C:145
 GenPythia6Diff.C:146
 GenPythia6Diff.C:147
 GenPythia6Diff.C:148
 GenPythia6Diff.C:149
 GenPythia6Diff.C:150
 GenPythia6Diff.C:151
 GenPythia6Diff.C:152
 GenPythia6Diff.C:153
 GenPythia6Diff.C:154
 GenPythia6Diff.C:155
 GenPythia6Diff.C:156
 GenPythia6Diff.C:157
 GenPythia6Diff.C:158
 GenPythia6Diff.C:159
 GenPythia6Diff.C:160
 GenPythia6Diff.C:161
 GenPythia6Diff.C:162
 GenPythia6Diff.C:163
 GenPythia6Diff.C:164
 GenPythia6Diff.C:165
 GenPythia6Diff.C:166
 GenPythia6Diff.C:167
 GenPythia6Diff.C:168
 GenPythia6Diff.C:169
 GenPythia6Diff.C:170
 GenPythia6Diff.C:171
 GenPythia6Diff.C:172
 GenPythia6Diff.C:173
 GenPythia6Diff.C:174
 GenPythia6Diff.C:175
 GenPythia6Diff.C:176
 GenPythia6Diff.C:177
 GenPythia6Diff.C:178
 GenPythia6Diff.C:179
 GenPythia6Diff.C:180
 GenPythia6Diff.C:181
 GenPythia6Diff.C:182
 GenPythia6Diff.C:183
 GenPythia6Diff.C:184
 GenPythia6Diff.C:185
 GenPythia6Diff.C:186
 GenPythia6Diff.C:187
 GenPythia6Diff.C:188
 GenPythia6Diff.C:189
 GenPythia6Diff.C:190
 GenPythia6Diff.C:191
 GenPythia6Diff.C:192
 GenPythia6Diff.C:193
 GenPythia6Diff.C:194
 GenPythia6Diff.C:195
 GenPythia6Diff.C:196
 GenPythia6Diff.C:197
 GenPythia6Diff.C:198
 GenPythia6Diff.C:199
 GenPythia6Diff.C:200
 GenPythia6Diff.C:201
 GenPythia6Diff.C:202
 GenPythia6Diff.C:203
 GenPythia6Diff.C:204
 GenPythia6Diff.C:205
 GenPythia6Diff.C:206
 GenPythia6Diff.C:207
 GenPythia6Diff.C:208
 GenPythia6Diff.C:209
 GenPythia6Diff.C:210
 GenPythia6Diff.C:211
 GenPythia6Diff.C:212
 GenPythia6Diff.C:213
 GenPythia6Diff.C:214
 GenPythia6Diff.C:215
 GenPythia6Diff.C:216
 GenPythia6Diff.C:217
 GenPythia6Diff.C:218
 GenPythia6Diff.C:219
 GenPythia6Diff.C:220
 GenPythia6Diff.C:221
 GenPythia6Diff.C:222
 GenPythia6Diff.C:223
 GenPythia6Diff.C:224
 GenPythia6Diff.C:225
 GenPythia6Diff.C:226
 GenPythia6Diff.C:227
 GenPythia6Diff.C:228
 GenPythia6Diff.C:229
 GenPythia6Diff.C:230
 GenPythia6Diff.C:231
 GenPythia6Diff.C:232
 GenPythia6Diff.C:233
 GenPythia6Diff.C:234
 GenPythia6Diff.C:235
 GenPythia6Diff.C:236
 GenPythia6Diff.C:237
 GenPythia6Diff.C:238
 GenPythia6Diff.C:239
 GenPythia6Diff.C:240
 GenPythia6Diff.C:241
 GenPythia6Diff.C:242
 GenPythia6Diff.C:243
 GenPythia6Diff.C:244
 GenPythia6Diff.C:245
 GenPythia6Diff.C:246
 GenPythia6Diff.C:247
 GenPythia6Diff.C:248
 GenPythia6Diff.C:249
 GenPythia6Diff.C:250
 GenPythia6Diff.C:251
 GenPythia6Diff.C:252
 GenPythia6Diff.C:253
 GenPythia6Diff.C:254
 GenPythia6Diff.C:255
 GenPythia6Diff.C:256
 GenPythia6Diff.C:257
 GenPythia6Diff.C:258
 GenPythia6Diff.C:259
 GenPythia6Diff.C:260
 GenPythia6Diff.C:261
 GenPythia6Diff.C:262
 GenPythia6Diff.C:263
 GenPythia6Diff.C:264
 GenPythia6Diff.C:265
 GenPythia6Diff.C:266
 GenPythia6Diff.C:267
 GenPythia6Diff.C:268
 GenPythia6Diff.C:269
 GenPythia6Diff.C:270
 GenPythia6Diff.C:271
 GenPythia6Diff.C:272
 GenPythia6Diff.C:273
 GenPythia6Diff.C:274
 GenPythia6Diff.C:275
 GenPythia6Diff.C:276
 GenPythia6Diff.C:277
 GenPythia6Diff.C:278
 GenPythia6Diff.C:279
 GenPythia6Diff.C:280
 GenPythia6Diff.C:281
 GenPythia6Diff.C:282
 GenPythia6Diff.C:283
 GenPythia6Diff.C:284
 GenPythia6Diff.C:285
 GenPythia6Diff.C:286
 GenPythia6Diff.C:287
 GenPythia6Diff.C:288
 GenPythia6Diff.C:289
 GenPythia6Diff.C:290
 GenPythia6Diff.C:291
 GenPythia6Diff.C:292
 GenPythia6Diff.C:293
 GenPythia6Diff.C:294
 GenPythia6Diff.C:295
 GenPythia6Diff.C:296
 GenPythia6Diff.C:297
 GenPythia6Diff.C:298
 GenPythia6Diff.C:299
 GenPythia6Diff.C:300
 GenPythia6Diff.C:301
 GenPythia6Diff.C:302
 GenPythia6Diff.C:303
 GenPythia6Diff.C:304
 GenPythia6Diff.C:305
 GenPythia6Diff.C:306
 GenPythia6Diff.C:307
 GenPythia6Diff.C:308
 GenPythia6Diff.C:309
 GenPythia6Diff.C:310
 GenPythia6Diff.C:311
 GenPythia6Diff.C:312
 GenPythia6Diff.C:313
 GenPythia6Diff.C:314
 GenPythia6Diff.C:315
 GenPythia6Diff.C:316
 GenPythia6Diff.C:317
 GenPythia6Diff.C:318
 GenPythia6Diff.C:319
 GenPythia6Diff.C:320
 GenPythia6Diff.C:321
 GenPythia6Diff.C:322
 GenPythia6Diff.C:323
 GenPythia6Diff.C:324
 GenPythia6Diff.C:325
 GenPythia6Diff.C:326
 GenPythia6Diff.C:327
 GenPythia6Diff.C:328
 GenPythia6Diff.C:329
 GenPythia6Diff.C:330
 GenPythia6Diff.C:331
 GenPythia6Diff.C:332
 GenPythia6Diff.C:333
 GenPythia6Diff.C:334
 GenPythia6Diff.C:335
 GenPythia6Diff.C:336
 GenPythia6Diff.C:337
 GenPythia6Diff.C:338
 GenPythia6Diff.C:339
 GenPythia6Diff.C:340
 GenPythia6Diff.C:341
 GenPythia6Diff.C:342
 GenPythia6Diff.C:343
 GenPythia6Diff.C:344
 GenPythia6Diff.C:345
 GenPythia6Diff.C:346
 GenPythia6Diff.C:347
 GenPythia6Diff.C:348
 GenPythia6Diff.C:349
 GenPythia6Diff.C:350
 GenPythia6Diff.C:351
 GenPythia6Diff.C:352
 GenPythia6Diff.C:353
 GenPythia6Diff.C:354
 GenPythia6Diff.C:355
 GenPythia6Diff.C:356
 GenPythia6Diff.C:357
 GenPythia6Diff.C:358
 GenPythia6Diff.C:359
 GenPythia6Diff.C:360
 GenPythia6Diff.C:361
 GenPythia6Diff.C:362
 GenPythia6Diff.C:363
 GenPythia6Diff.C:364
 GenPythia6Diff.C:365
 GenPythia6Diff.C:366
 GenPythia6Diff.C:367
 GenPythia6Diff.C:368
 GenPythia6Diff.C:369
 GenPythia6Diff.C:370
 GenPythia6Diff.C:371
 GenPythia6Diff.C:372
 GenPythia6Diff.C:373
 GenPythia6Diff.C:374
 GenPythia6Diff.C:375
 GenPythia6Diff.C:376
 GenPythia6Diff.C:377
 GenPythia6Diff.C:378
 GenPythia6Diff.C:379
 GenPythia6Diff.C:380
 GenPythia6Diff.C:381
 GenPythia6Diff.C:382
 GenPythia6Diff.C:383
 GenPythia6Diff.C:384
 GenPythia6Diff.C:385
 GenPythia6Diff.C:386
 GenPythia6Diff.C:387
 GenPythia6Diff.C:388
 GenPythia6Diff.C:389
 GenPythia6Diff.C:390
 GenPythia6Diff.C:391
 GenPythia6Diff.C:392
 GenPythia6Diff.C:393
 GenPythia6Diff.C:394
 GenPythia6Diff.C:395
 GenPythia6Diff.C:396
 GenPythia6Diff.C:397
 GenPythia6Diff.C:398
 GenPythia6Diff.C:399
 GenPythia6Diff.C:400
 GenPythia6Diff.C:401
 GenPythia6Diff.C:402
 GenPythia6Diff.C:403
 GenPythia6Diff.C:404
 GenPythia6Diff.C:405
 GenPythia6Diff.C:406
 GenPythia6Diff.C:407
 GenPythia6Diff.C:408
 GenPythia6Diff.C:409
 GenPythia6Diff.C:410
 GenPythia6Diff.C:411
 GenPythia6Diff.C:412
 GenPythia6Diff.C:413
 GenPythia6Diff.C:414
 GenPythia6Diff.C:415
 GenPythia6Diff.C:416
 GenPythia6Diff.C:417
 GenPythia6Diff.C:418
 GenPythia6Diff.C:419
 GenPythia6Diff.C:420
 GenPythia6Diff.C:421
 GenPythia6Diff.C:422
 GenPythia6Diff.C:423
 GenPythia6Diff.C:424
 GenPythia6Diff.C:425
 GenPythia6Diff.C:426
 GenPythia6Diff.C:427
 GenPythia6Diff.C:428
 GenPythia6Diff.C:429
 GenPythia6Diff.C:430
 GenPythia6Diff.C:431
 GenPythia6Diff.C:432
 GenPythia6Diff.C:433
 GenPythia6Diff.C:434
 GenPythia6Diff.C:435
 GenPythia6Diff.C:436
 GenPythia6Diff.C:437
 GenPythia6Diff.C:438
 GenPythia6Diff.C:439
 GenPythia6Diff.C:440
 GenPythia6Diff.C:441
 GenPythia6Diff.C:442
 GenPythia6Diff.C:443
 GenPythia6Diff.C:444
 GenPythia6Diff.C:445
 GenPythia6Diff.C:446
 GenPythia6Diff.C:447
 GenPythia6Diff.C:448
 GenPythia6Diff.C:449
 GenPythia6Diff.C:450
 GenPythia6Diff.C:451
 GenPythia6Diff.C:452
 GenPythia6Diff.C:453
 GenPythia6Diff.C:454
 GenPythia6Diff.C:455
 GenPythia6Diff.C:456
 GenPythia6Diff.C:457
 GenPythia6Diff.C:458
 GenPythia6Diff.C:459
 GenPythia6Diff.C:460
 GenPythia6Diff.C:461
 GenPythia6Diff.C:462
 GenPythia6Diff.C:463
 GenPythia6Diff.C:464
 GenPythia6Diff.C:465
 GenPythia6Diff.C:466
 GenPythia6Diff.C:467
 GenPythia6Diff.C:468
 GenPythia6Diff.C:469
 GenPythia6Diff.C:470
 GenPythia6Diff.C:471
 GenPythia6Diff.C:472
 GenPythia6Diff.C:473
 GenPythia6Diff.C:474
 GenPythia6Diff.C:475
 GenPythia6Diff.C:476
 GenPythia6Diff.C:477
 GenPythia6Diff.C:478
 GenPythia6Diff.C:479
 GenPythia6Diff.C:480
 GenPythia6Diff.C:481
 GenPythia6Diff.C:482
 GenPythia6Diff.C:483
 GenPythia6Diff.C:484
 GenPythia6Diff.C:485
 GenPythia6Diff.C:486
 GenPythia6Diff.C:487
 GenPythia6Diff.C:488
 GenPythia6Diff.C:489
 GenPythia6Diff.C:490
 GenPythia6Diff.C:491
 GenPythia6Diff.C:492
 GenPythia6Diff.C:493
 GenPythia6Diff.C:494
 GenPythia6Diff.C:495
 GenPythia6Diff.C:496
 GenPythia6Diff.C:497
 GenPythia6Diff.C:498
 GenPythia6Diff.C:499
 GenPythia6Diff.C:500
 GenPythia6Diff.C:501
 GenPythia6Diff.C:502
 GenPythia6Diff.C:503
 GenPythia6Diff.C:504
 GenPythia6Diff.C:505
 GenPythia6Diff.C:506
 GenPythia6Diff.C:507
 GenPythia6Diff.C:508
 GenPythia6Diff.C:509
 GenPythia6Diff.C:510
 GenPythia6Diff.C:511
 GenPythia6Diff.C:512
 GenPythia6Diff.C:513
 GenPythia6Diff.C:514
 GenPythia6Diff.C:515
 GenPythia6Diff.C:516
 GenPythia6Diff.C:517
 GenPythia6Diff.C:518
 GenPythia6Diff.C:519
 GenPythia6Diff.C:520
 GenPythia6Diff.C:521
 GenPythia6Diff.C:522
 GenPythia6Diff.C:523
 GenPythia6Diff.C:524
 GenPythia6Diff.C:525
 GenPythia6Diff.C:526
 GenPythia6Diff.C:527
 GenPythia6Diff.C:528
 GenPythia6Diff.C:529
 GenPythia6Diff.C:530
 GenPythia6Diff.C:531
 GenPythia6Diff.C:532
 GenPythia6Diff.C:533
 GenPythia6Diff.C:534
 GenPythia6Diff.C:535
 GenPythia6Diff.C:536
 GenPythia6Diff.C:537
 GenPythia6Diff.C:538
 GenPythia6Diff.C:539
 GenPythia6Diff.C:540
 GenPythia6Diff.C:541
 GenPythia6Diff.C:542
 GenPythia6Diff.C:543
 GenPythia6Diff.C:544
 GenPythia6Diff.C:545
 GenPythia6Diff.C:546
 GenPythia6Diff.C:547
 GenPythia6Diff.C:548
 GenPythia6Diff.C:549
 GenPythia6Diff.C:550
 GenPythia6Diff.C:551
 GenPythia6Diff.C:552
 GenPythia6Diff.C:553
 GenPythia6Diff.C:554
 GenPythia6Diff.C:555
 GenPythia6Diff.C:556
 GenPythia6Diff.C:557
 GenPythia6Diff.C:558
 GenPythia6Diff.C:559
 GenPythia6Diff.C:560
 GenPythia6Diff.C:561
 GenPythia6Diff.C:562
 GenPythia6Diff.C:563
 GenPythia6Diff.C:564
 GenPythia6Diff.C:565
 GenPythia6Diff.C:566
 GenPythia6Diff.C:567
 GenPythia6Diff.C:568
 GenPythia6Diff.C:569
 GenPythia6Diff.C:570
 GenPythia6Diff.C:571
 GenPythia6Diff.C:572
 GenPythia6Diff.C:573
 GenPythia6Diff.C:574
 GenPythia6Diff.C:575
 GenPythia6Diff.C:576
 GenPythia6Diff.C:577
 GenPythia6Diff.C:578
 GenPythia6Diff.C:579
 GenPythia6Diff.C:580
 GenPythia6Diff.C:581
 GenPythia6Diff.C:582
 GenPythia6Diff.C:583
 GenPythia6Diff.C:584
 GenPythia6Diff.C:585
 GenPythia6Diff.C:586
 GenPythia6Diff.C:587
 GenPythia6Diff.C:588
 GenPythia6Diff.C:589
 GenPythia6Diff.C:590
 GenPythia6Diff.C:591
 GenPythia6Diff.C:592
 GenPythia6Diff.C:593
 GenPythia6Diff.C:594
 GenPythia6Diff.C:595
 GenPythia6Diff.C:596
 GenPythia6Diff.C:597
 GenPythia6Diff.C:598
 GenPythia6Diff.C:599
 GenPythia6Diff.C:600
 GenPythia6Diff.C:601
 GenPythia6Diff.C:602
 GenPythia6Diff.C:603
 GenPythia6Diff.C:604
 GenPythia6Diff.C:605
 GenPythia6Diff.C:606
 GenPythia6Diff.C:607
 GenPythia6Diff.C:608
 GenPythia6Diff.C:609
 GenPythia6Diff.C:610
 GenPythia6Diff.C:611
 GenPythia6Diff.C:612
 GenPythia6Diff.C:613
 GenPythia6Diff.C:614
 GenPythia6Diff.C:615
 GenPythia6Diff.C:616
 GenPythia6Diff.C:617
 GenPythia6Diff.C:618
 GenPythia6Diff.C:619
 GenPythia6Diff.C:620
 GenPythia6Diff.C:621
 GenPythia6Diff.C:622
 GenPythia6Diff.C:623
 GenPythia6Diff.C:624
 GenPythia6Diff.C:625
 GenPythia6Diff.C:626
 GenPythia6Diff.C:627
 GenPythia6Diff.C:628
 GenPythia6Diff.C:629
 GenPythia6Diff.C:630
 GenPythia6Diff.C:631
 GenPythia6Diff.C:632
 GenPythia6Diff.C:633
 GenPythia6Diff.C:634
 GenPythia6Diff.C:635
 GenPythia6Diff.C:636
 GenPythia6Diff.C:637
 GenPythia6Diff.C:638
 GenPythia6Diff.C:639
 GenPythia6Diff.C:640
 GenPythia6Diff.C:641
 GenPythia6Diff.C:642
 GenPythia6Diff.C:643
 GenPythia6Diff.C:644
 GenPythia6Diff.C:645
 GenPythia6Diff.C:646
 GenPythia6Diff.C:647
 GenPythia6Diff.C:648
 GenPythia6Diff.C:649
 GenPythia6Diff.C:650
 GenPythia6Diff.C:651
 GenPythia6Diff.C:652
 GenPythia6Diff.C:653
 GenPythia6Diff.C:654
 GenPythia6Diff.C:655
 GenPythia6Diff.C:656
 GenPythia6Diff.C:657
 GenPythia6Diff.C:658
 GenPythia6Diff.C:659
 GenPythia6Diff.C:660
 GenPythia6Diff.C:661
 GenPythia6Diff.C:662
 GenPythia6Diff.C:663
 GenPythia6Diff.C:664
 GenPythia6Diff.C:665
 GenPythia6Diff.C:666
 GenPythia6Diff.C:667
 GenPythia6Diff.C:668
 GenPythia6Diff.C:669
 GenPythia6Diff.C:670
 GenPythia6Diff.C:671
 GenPythia6Diff.C:672
 GenPythia6Diff.C:673
 GenPythia6Diff.C:674
 GenPythia6Diff.C:675
 GenPythia6Diff.C:676
 GenPythia6Diff.C:677
 GenPythia6Diff.C:678
 GenPythia6Diff.C:679
 GenPythia6Diff.C:680
 GenPythia6Diff.C:681
 GenPythia6Diff.C:682
 GenPythia6Diff.C:683
 GenPythia6Diff.C:684
 GenPythia6Diff.C:685
 GenPythia6Diff.C:686
 GenPythia6Diff.C:687
 GenPythia6Diff.C:688
 GenPythia6Diff.C:689
 GenPythia6Diff.C:690
 GenPythia6Diff.C:691
 GenPythia6Diff.C:692
 GenPythia6Diff.C:693
 GenPythia6Diff.C:694
 GenPythia6Diff.C:695
 GenPythia6Diff.C:696
 GenPythia6Diff.C:697
 GenPythia6Diff.C:698
 GenPythia6Diff.C:699
 GenPythia6Diff.C:700
 GenPythia6Diff.C:701
 GenPythia6Diff.C:702
 GenPythia6Diff.C:703
 GenPythia6Diff.C:704
 GenPythia6Diff.C:705
 GenPythia6Diff.C:706
 GenPythia6Diff.C:707
 GenPythia6Diff.C:708
 GenPythia6Diff.C:709
 GenPythia6Diff.C:710
 GenPythia6Diff.C:711
 GenPythia6Diff.C:712
 GenPythia6Diff.C:713
 GenPythia6Diff.C:714
 GenPythia6Diff.C:715
 GenPythia6Diff.C:716
 GenPythia6Diff.C:717
 GenPythia6Diff.C:718
 GenPythia6Diff.C:719
 GenPythia6Diff.C:720
 GenPythia6Diff.C:721
 GenPythia6Diff.C:722
 GenPythia6Diff.C:723
 GenPythia6Diff.C:724
 GenPythia6Diff.C:725
 GenPythia6Diff.C:726
 GenPythia6Diff.C:727
 GenPythia6Diff.C:728
 GenPythia6Diff.C:729
 GenPythia6Diff.C:730
 GenPythia6Diff.C:731
 GenPythia6Diff.C:732
 GenPythia6Diff.C:733
 GenPythia6Diff.C:734
 GenPythia6Diff.C:735
 GenPythia6Diff.C:736
 GenPythia6Diff.C:737
 GenPythia6Diff.C:738
 GenPythia6Diff.C:739
 GenPythia6Diff.C:740
 GenPythia6Diff.C:741
 GenPythia6Diff.C:742
 GenPythia6Diff.C:743
 GenPythia6Diff.C:744
 GenPythia6Diff.C:745
 GenPythia6Diff.C:746
 GenPythia6Diff.C:747
 GenPythia6Diff.C:748
 GenPythia6Diff.C:749
 GenPythia6Diff.C:750
 GenPythia6Diff.C:751
 GenPythia6Diff.C:752
 GenPythia6Diff.C:753
 GenPythia6Diff.C:754
 GenPythia6Diff.C:755
 GenPythia6Diff.C:756
 GenPythia6Diff.C:757
 GenPythia6Diff.C:758
 GenPythia6Diff.C:759
 GenPythia6Diff.C:760
 GenPythia6Diff.C:761
 GenPythia6Diff.C:762
 GenPythia6Diff.C:763
 GenPythia6Diff.C:764
 GenPythia6Diff.C:765
 GenPythia6Diff.C:766
 GenPythia6Diff.C:767
 GenPythia6Diff.C:768
 GenPythia6Diff.C:769
 GenPythia6Diff.C:770
 GenPythia6Diff.C:771
 GenPythia6Diff.C:772
 GenPythia6Diff.C:773
 GenPythia6Diff.C:774
 GenPythia6Diff.C:775
 GenPythia6Diff.C:776
 GenPythia6Diff.C:777
 GenPythia6Diff.C:778
 GenPythia6Diff.C:779
 GenPythia6Diff.C:780
 GenPythia6Diff.C:781
 GenPythia6Diff.C:782
 GenPythia6Diff.C:783
 GenPythia6Diff.C:784
 GenPythia6Diff.C:785
 GenPythia6Diff.C:786
 GenPythia6Diff.C:787
 GenPythia6Diff.C:788
 GenPythia6Diff.C:789
 GenPythia6Diff.C:790
 GenPythia6Diff.C:791
 GenPythia6Diff.C:792
 GenPythia6Diff.C:793
 GenPythia6Diff.C:794
 GenPythia6Diff.C:795
 GenPythia6Diff.C:796
 GenPythia6Diff.C:797
 GenPythia6Diff.C:798
 GenPythia6Diff.C:799
 GenPythia6Diff.C:800
 GenPythia6Diff.C:801
 GenPythia6Diff.C:802
 GenPythia6Diff.C:803
 GenPythia6Diff.C:804
 GenPythia6Diff.C:805
 GenPythia6Diff.C:806
 GenPythia6Diff.C:807
 GenPythia6Diff.C:808
 GenPythia6Diff.C:809
 GenPythia6Diff.C:810
 GenPythia6Diff.C:811
 GenPythia6Diff.C:812
 GenPythia6Diff.C:813
 GenPythia6Diff.C:814
 GenPythia6Diff.C:815
 GenPythia6Diff.C:816
 GenPythia6Diff.C:817
 GenPythia6Diff.C:818
 GenPythia6Diff.C:819
 GenPythia6Diff.C:820
 GenPythia6Diff.C:821
 GenPythia6Diff.C:822
 GenPythia6Diff.C:823
 GenPythia6Diff.C:824
 GenPythia6Diff.C:825
 GenPythia6Diff.C:826
 GenPythia6Diff.C:827
 GenPythia6Diff.C:828
 GenPythia6Diff.C:829
 GenPythia6Diff.C:830
 GenPythia6Diff.C:831
 GenPythia6Diff.C:832
 GenPythia6Diff.C:833
 GenPythia6Diff.C:834
 GenPythia6Diff.C:835
 GenPythia6Diff.C:836
 GenPythia6Diff.C:837
 GenPythia6Diff.C:838
 GenPythia6Diff.C:839
 GenPythia6Diff.C:840
 GenPythia6Diff.C:841
 GenPythia6Diff.C:842
 GenPythia6Diff.C:843
 GenPythia6Diff.C:844
 GenPythia6Diff.C:845
 GenPythia6Diff.C:846
 GenPythia6Diff.C:847
 GenPythia6Diff.C:848
 GenPythia6Diff.C:849
 GenPythia6Diff.C:850
 GenPythia6Diff.C:851
 GenPythia6Diff.C:852
 GenPythia6Diff.C:853
 GenPythia6Diff.C:854
 GenPythia6Diff.C:855
 GenPythia6Diff.C:856
 GenPythia6Diff.C:857
 GenPythia6Diff.C:858
 GenPythia6Diff.C:859
 GenPythia6Diff.C:860
 GenPythia6Diff.C:861
 GenPythia6Diff.C:862
 GenPythia6Diff.C:863
 GenPythia6Diff.C:864
 GenPythia6Diff.C:865
 GenPythia6Diff.C:866
 GenPythia6Diff.C:867
 GenPythia6Diff.C:868
 GenPythia6Diff.C:869
 GenPythia6Diff.C:870
 GenPythia6Diff.C:871
 GenPythia6Diff.C:872
 GenPythia6Diff.C:873
 GenPythia6Diff.C:874
 GenPythia6Diff.C:875
 GenPythia6Diff.C:876
 GenPythia6Diff.C:877
 GenPythia6Diff.C:878
 GenPythia6Diff.C:879
 GenPythia6Diff.C:880
 GenPythia6Diff.C:881
 GenPythia6Diff.C:882
 GenPythia6Diff.C:883
 GenPythia6Diff.C:884
 GenPythia6Diff.C:885
 GenPythia6Diff.C:886
 GenPythia6Diff.C:887
 GenPythia6Diff.C:888
 GenPythia6Diff.C:889
 GenPythia6Diff.C:890
 GenPythia6Diff.C:891
 GenPythia6Diff.C:892
 GenPythia6Diff.C:893
 GenPythia6Diff.C:894
 GenPythia6Diff.C:895
 GenPythia6Diff.C:896
 GenPythia6Diff.C:897
 GenPythia6Diff.C:898
 GenPythia6Diff.C:899
 GenPythia6Diff.C:900
 GenPythia6Diff.C:901
 GenPythia6Diff.C:902
 GenPythia6Diff.C:903
 GenPythia6Diff.C:904
 GenPythia6Diff.C:905
 GenPythia6Diff.C:906
 GenPythia6Diff.C:907
 GenPythia6Diff.C:908
 GenPythia6Diff.C:909
 GenPythia6Diff.C:910
 GenPythia6Diff.C:911
 GenPythia6Diff.C:912
 GenPythia6Diff.C:913
 GenPythia6Diff.C:914
 GenPythia6Diff.C:915
 GenPythia6Diff.C:916
 GenPythia6Diff.C:917
 GenPythia6Diff.C:918
 GenPythia6Diff.C:919
 GenPythia6Diff.C:920
 GenPythia6Diff.C:921
 GenPythia6Diff.C:922
 GenPythia6Diff.C:923
 GenPythia6Diff.C:924
 GenPythia6Diff.C:925
 GenPythia6Diff.C:926
 GenPythia6Diff.C:927
 GenPythia6Diff.C:928
 GenPythia6Diff.C:929
 GenPythia6Diff.C:930
 GenPythia6Diff.C:931
 GenPythia6Diff.C:932
 GenPythia6Diff.C:933
 GenPythia6Diff.C:934
 GenPythia6Diff.C:935
 GenPythia6Diff.C:936
 GenPythia6Diff.C:937
 GenPythia6Diff.C:938
 GenPythia6Diff.C:939
 GenPythia6Diff.C:940
 GenPythia6Diff.C:941
 GenPythia6Diff.C:942
 GenPythia6Diff.C:943
 GenPythia6Diff.C:944
 GenPythia6Diff.C:945
 GenPythia6Diff.C:946
 GenPythia6Diff.C:947
 GenPythia6Diff.C:948
 GenPythia6Diff.C:949
 GenPythia6Diff.C:950
 GenPythia6Diff.C:951
 GenPythia6Diff.C:952
 GenPythia6Diff.C:953
 GenPythia6Diff.C:954
 GenPythia6Diff.C:955
 GenPythia6Diff.C:956
 GenPythia6Diff.C:957
 GenPythia6Diff.C:958
 GenPythia6Diff.C:959
 GenPythia6Diff.C:960
 GenPythia6Diff.C:961
 GenPythia6Diff.C:962
 GenPythia6Diff.C:963
 GenPythia6Diff.C:964
 GenPythia6Diff.C:965
 GenPythia6Diff.C:966
 GenPythia6Diff.C:967
 GenPythia6Diff.C:968
 GenPythia6Diff.C:969
 GenPythia6Diff.C:970
 GenPythia6Diff.C:971
 GenPythia6Diff.C:972
 GenPythia6Diff.C:973
 GenPythia6Diff.C:974
 GenPythia6Diff.C:975
 GenPythia6Diff.C:976
 GenPythia6Diff.C:977
 GenPythia6Diff.C:978
 GenPythia6Diff.C:979
 GenPythia6Diff.C:980
 GenPythia6Diff.C:981
 GenPythia6Diff.C:982
 GenPythia6Diff.C:983
 GenPythia6Diff.C:984
 GenPythia6Diff.C:985
 GenPythia6Diff.C:986
 GenPythia6Diff.C:987
 GenPythia6Diff.C:988
 GenPythia6Diff.C:989
 GenPythia6Diff.C:990
 GenPythia6Diff.C:991
 GenPythia6Diff.C:992
 GenPythia6Diff.C:993
 GenPythia6Diff.C:994
 GenPythia6Diff.C:995
 GenPythia6Diff.C:996
 GenPythia6Diff.C:997
 GenPythia6Diff.C:998
 GenPythia6Diff.C:999
 GenPythia6Diff.C:1000
 GenPythia6Diff.C:1001
 GenPythia6Diff.C:1002
 GenPythia6Diff.C:1003
 GenPythia6Diff.C:1004
 GenPythia6Diff.C:1005
 GenPythia6Diff.C:1006
 GenPythia6Diff.C:1007
 GenPythia6Diff.C:1008
 GenPythia6Diff.C:1009
 GenPythia6Diff.C:1010
 GenPythia6Diff.C:1011
 GenPythia6Diff.C:1012
 GenPythia6Diff.C:1013
 GenPythia6Diff.C:1014
 GenPythia6Diff.C:1015
 GenPythia6Diff.C:1016
 GenPythia6Diff.C:1017
 GenPythia6Diff.C:1018
 GenPythia6Diff.C:1019
 GenPythia6Diff.C:1020
 GenPythia6Diff.C:1021
 GenPythia6Diff.C:1022
 GenPythia6Diff.C:1023
 GenPythia6Diff.C:1024
 GenPythia6Diff.C:1025
 GenPythia6Diff.C:1026
 GenPythia6Diff.C:1027
 GenPythia6Diff.C:1028
 GenPythia6Diff.C:1029
 GenPythia6Diff.C:1030
 GenPythia6Diff.C:1031
 GenPythia6Diff.C:1032
 GenPythia6Diff.C:1033
 GenPythia6Diff.C:1034
 GenPythia6Diff.C:1035
 GenPythia6Diff.C:1036
 GenPythia6Diff.C:1037
 GenPythia6Diff.C:1038
 GenPythia6Diff.C:1039
 GenPythia6Diff.C:1040
 GenPythia6Diff.C:1041
 GenPythia6Diff.C:1042
 GenPythia6Diff.C:1043
 GenPythia6Diff.C:1044
 GenPythia6Diff.C:1045
 GenPythia6Diff.C:1046
 GenPythia6Diff.C:1047
 GenPythia6Diff.C:1048
 GenPythia6Diff.C:1049
 GenPythia6Diff.C:1050
 GenPythia6Diff.C:1051
 GenPythia6Diff.C:1052
 GenPythia6Diff.C:1053
 GenPythia6Diff.C:1054
 GenPythia6Diff.C:1055
 GenPythia6Diff.C:1056
 GenPythia6Diff.C:1057
 GenPythia6Diff.C:1058
 GenPythia6Diff.C:1059
 GenPythia6Diff.C:1060
 GenPythia6Diff.C:1061
 GenPythia6Diff.C:1062
 GenPythia6Diff.C:1063
 GenPythia6Diff.C:1064
 GenPythia6Diff.C:1065
 GenPythia6Diff.C:1066
 GenPythia6Diff.C:1067
 GenPythia6Diff.C:1068
 GenPythia6Diff.C:1069
 GenPythia6Diff.C:1070
 GenPythia6Diff.C:1071
 GenPythia6Diff.C:1072
 GenPythia6Diff.C:1073
 GenPythia6Diff.C:1074
 GenPythia6Diff.C:1075
 GenPythia6Diff.C:1076
 GenPythia6Diff.C:1077
 GenPythia6Diff.C:1078
 GenPythia6Diff.C:1079
 GenPythia6Diff.C:1080
 GenPythia6Diff.C:1081
 GenPythia6Diff.C:1082
 GenPythia6Diff.C:1083
 GenPythia6Diff.C:1084
 GenPythia6Diff.C:1085
 GenPythia6Diff.C:1086
 GenPythia6Diff.C:1087
 GenPythia6Diff.C:1088
 GenPythia6Diff.C:1089
 GenPythia6Diff.C:1090
 GenPythia6Diff.C:1091
 GenPythia6Diff.C:1092
 GenPythia6Diff.C:1093
 GenPythia6Diff.C:1094
 GenPythia6Diff.C:1095
 GenPythia6Diff.C:1096
 GenPythia6Diff.C:1097
 GenPythia6Diff.C:1098
 GenPythia6Diff.C:1099
 GenPythia6Diff.C:1100
 GenPythia6Diff.C:1101
 GenPythia6Diff.C:1102
 GenPythia6Diff.C:1103
 GenPythia6Diff.C:1104
 GenPythia6Diff.C:1105
 GenPythia6Diff.C:1106
 GenPythia6Diff.C:1107
 GenPythia6Diff.C:1108
 GenPythia6Diff.C:1109
 GenPythia6Diff.C:1110
 GenPythia6Diff.C:1111
 GenPythia6Diff.C:1112
 GenPythia6Diff.C:1113
 GenPythia6Diff.C:1114
 GenPythia6Diff.C:1115
 GenPythia6Diff.C:1116
 GenPythia6Diff.C:1117
 GenPythia6Diff.C:1118
 GenPythia6Diff.C:1119
 GenPythia6Diff.C:1120
 GenPythia6Diff.C:1121
 GenPythia6Diff.C:1122
 GenPythia6Diff.C:1123
 GenPythia6Diff.C:1124
 GenPythia6Diff.C:1125
 GenPythia6Diff.C:1126
 GenPythia6Diff.C:1127
 GenPythia6Diff.C:1128
 GenPythia6Diff.C:1129
 GenPythia6Diff.C:1130
 GenPythia6Diff.C:1131
 GenPythia6Diff.C:1132
 GenPythia6Diff.C:1133
 GenPythia6Diff.C:1134
 GenPythia6Diff.C:1135
 GenPythia6Diff.C:1136
 GenPythia6Diff.C:1137
 GenPythia6Diff.C:1138
 GenPythia6Diff.C:1139
 GenPythia6Diff.C:1140
 GenPythia6Diff.C:1141
 GenPythia6Diff.C:1142
 GenPythia6Diff.C:1143
 GenPythia6Diff.C:1144
 GenPythia6Diff.C:1145
 GenPythia6Diff.C:1146
 GenPythia6Diff.C:1147
 GenPythia6Diff.C:1148
 GenPythia6Diff.C:1149
 GenPythia6Diff.C:1150
 GenPythia6Diff.C:1151
 GenPythia6Diff.C:1152
 GenPythia6Diff.C:1153
 GenPythia6Diff.C:1154
 GenPythia6Diff.C:1155
 GenPythia6Diff.C:1156
 GenPythia6Diff.C:1157
 GenPythia6Diff.C:1158
 GenPythia6Diff.C:1159
 GenPythia6Diff.C:1160
 GenPythia6Diff.C:1161
 GenPythia6Diff.C:1162
 GenPythia6Diff.C:1163
 GenPythia6Diff.C:1164
 GenPythia6Diff.C:1165
 GenPythia6Diff.C:1166
 GenPythia6Diff.C:1167
 GenPythia6Diff.C:1168
 GenPythia6Diff.C:1169
 GenPythia6Diff.C:1170
 GenPythia6Diff.C:1171
 GenPythia6Diff.C:1172
 GenPythia6Diff.C:1173
 GenPythia6Diff.C:1174
 GenPythia6Diff.C:1175
 GenPythia6Diff.C:1176
 GenPythia6Diff.C:1177
 GenPythia6Diff.C:1178
 GenPythia6Diff.C:1179
 GenPythia6Diff.C:1180
 GenPythia6Diff.C:1181
 GenPythia6Diff.C:1182
 GenPythia6Diff.C:1183
 GenPythia6Diff.C:1184
 GenPythia6Diff.C:1185
 GenPythia6Diff.C:1186
 GenPythia6Diff.C:1187
 GenPythia6Diff.C:1188
 GenPythia6Diff.C:1189
 GenPythia6Diff.C:1190
 GenPythia6Diff.C:1191
 GenPythia6Diff.C:1192
 GenPythia6Diff.C:1193
 GenPythia6Diff.C:1194
 GenPythia6Diff.C:1195
 GenPythia6Diff.C:1196
 GenPythia6Diff.C:1197
 GenPythia6Diff.C:1198
 GenPythia6Diff.C:1199
 GenPythia6Diff.C:1200
 GenPythia6Diff.C:1201
 GenPythia6Diff.C:1202
 GenPythia6Diff.C:1203
 GenPythia6Diff.C:1204
 GenPythia6Diff.C:1205
 GenPythia6Diff.C:1206
 GenPythia6Diff.C:1207
 GenPythia6Diff.C:1208
 GenPythia6Diff.C:1209
 GenPythia6Diff.C:1210
 GenPythia6Diff.C:1211
 GenPythia6Diff.C:1212
 GenPythia6Diff.C:1213
 GenPythia6Diff.C:1214
 GenPythia6Diff.C:1215
 GenPythia6Diff.C:1216
 GenPythia6Diff.C:1217
 GenPythia6Diff.C:1218
 GenPythia6Diff.C:1219
 GenPythia6Diff.C:1220
 GenPythia6Diff.C:1221
 GenPythia6Diff.C:1222
 GenPythia6Diff.C:1223
 GenPythia6Diff.C:1224
 GenPythia6Diff.C:1225
 GenPythia6Diff.C:1226
 GenPythia6Diff.C:1227
 GenPythia6Diff.C:1228
 GenPythia6Diff.C:1229
 GenPythia6Diff.C:1230
 GenPythia6Diff.C:1231
 GenPythia6Diff.C:1232
 GenPythia6Diff.C:1233
 GenPythia6Diff.C:1234
 GenPythia6Diff.C:1235
 GenPythia6Diff.C:1236
 GenPythia6Diff.C:1237
 GenPythia6Diff.C:1238
 GenPythia6Diff.C:1239
 GenPythia6Diff.C:1240
 GenPythia6Diff.C:1241
 GenPythia6Diff.C:1242
 GenPythia6Diff.C:1243
 GenPythia6Diff.C:1244
 GenPythia6Diff.C:1245
 GenPythia6Diff.C:1246
 GenPythia6Diff.C:1247
 GenPythia6Diff.C:1248
 GenPythia6Diff.C:1249
 GenPythia6Diff.C:1250
 GenPythia6Diff.C:1251
 GenPythia6Diff.C:1252
 GenPythia6Diff.C:1253
 GenPythia6Diff.C:1254
 GenPythia6Diff.C:1255
 GenPythia6Diff.C:1256
 GenPythia6Diff.C:1257
 GenPythia6Diff.C:1258
 GenPythia6Diff.C:1259
 GenPythia6Diff.C:1260
 GenPythia6Diff.C:1261
 GenPythia6Diff.C:1262
 GenPythia6Diff.C:1263
 GenPythia6Diff.C:1264
 GenPythia6Diff.C:1265
 GenPythia6Diff.C:1266
 GenPythia6Diff.C:1267
 GenPythia6Diff.C:1268
 GenPythia6Diff.C:1269
 GenPythia6Diff.C:1270
 GenPythia6Diff.C:1271
 GenPythia6Diff.C:1272
 GenPythia6Diff.C:1273
 GenPythia6Diff.C:1274
 GenPythia6Diff.C:1275
 GenPythia6Diff.C:1276
 GenPythia6Diff.C:1277
 GenPythia6Diff.C:1278
 GenPythia6Diff.C:1279
 GenPythia6Diff.C:1280
 GenPythia6Diff.C:1281
 GenPythia6Diff.C:1282
 GenPythia6Diff.C:1283
 GenPythia6Diff.C:1284
 GenPythia6Diff.C:1285
 GenPythia6Diff.C:1286
 GenPythia6Diff.C:1287
 GenPythia6Diff.C:1288
 GenPythia6Diff.C:1289
 GenPythia6Diff.C:1290
 GenPythia6Diff.C:1291
 GenPythia6Diff.C:1292
 GenPythia6Diff.C:1293
 GenPythia6Diff.C:1294
 GenPythia6Diff.C:1295
 GenPythia6Diff.C:1296
 GenPythia6Diff.C:1297
 GenPythia6Diff.C:1298
 GenPythia6Diff.C:1299
 GenPythia6Diff.C:1300
 GenPythia6Diff.C:1301
 GenPythia6Diff.C:1302
 GenPythia6Diff.C:1303
 GenPythia6Diff.C:1304
 GenPythia6Diff.C:1305
 GenPythia6Diff.C:1306
 GenPythia6Diff.C:1307
 GenPythia6Diff.C:1308
 GenPythia6Diff.C:1309
 GenPythia6Diff.C:1310
 GenPythia6Diff.C:1311
 GenPythia6Diff.C:1312
 GenPythia6Diff.C:1313
 GenPythia6Diff.C:1314
 GenPythia6Diff.C:1315
 GenPythia6Diff.C:1316
 GenPythia6Diff.C:1317
 GenPythia6Diff.C:1318
 GenPythia6Diff.C:1319
 GenPythia6Diff.C:1320
 GenPythia6Diff.C:1321
 GenPythia6Diff.C:1322
 GenPythia6Diff.C:1323
 GenPythia6Diff.C:1324
 GenPythia6Diff.C:1325
 GenPythia6Diff.C:1326
 GenPythia6Diff.C:1327
 GenPythia6Diff.C:1328
 GenPythia6Diff.C:1329
 GenPythia6Diff.C:1330
 GenPythia6Diff.C:1331
 GenPythia6Diff.C:1332
 GenPythia6Diff.C:1333
 GenPythia6Diff.C:1334
 GenPythia6Diff.C:1335
 GenPythia6Diff.C:1336
 GenPythia6Diff.C:1337
 GenPythia6Diff.C:1338
 GenPythia6Diff.C:1339
 GenPythia6Diff.C:1340
 GenPythia6Diff.C:1341
 GenPythia6Diff.C:1342
 GenPythia6Diff.C:1343
 GenPythia6Diff.C:1344
 GenPythia6Diff.C:1345
 GenPythia6Diff.C:1346
 GenPythia6Diff.C:1347
 GenPythia6Diff.C:1348
 GenPythia6Diff.C:1349
 GenPythia6Diff.C:1350
 GenPythia6Diff.C:1351
 GenPythia6Diff.C:1352
 GenPythia6Diff.C:1353
 GenPythia6Diff.C:1354
 GenPythia6Diff.C:1355
 GenPythia6Diff.C:1356
 GenPythia6Diff.C:1357
 GenPythia6Diff.C:1358
 GenPythia6Diff.C:1359
 GenPythia6Diff.C:1360
 GenPythia6Diff.C:1361
 GenPythia6Diff.C:1362
 GenPythia6Diff.C:1363
 GenPythia6Diff.C:1364
 GenPythia6Diff.C:1365
 GenPythia6Diff.C:1366
 GenPythia6Diff.C:1367
 GenPythia6Diff.C:1368
 GenPythia6Diff.C:1369
 GenPythia6Diff.C:1370
 GenPythia6Diff.C:1371
 GenPythia6Diff.C:1372
 GenPythia6Diff.C:1373
 GenPythia6Diff.C:1374
 GenPythia6Diff.C:1375
 GenPythia6Diff.C:1376
 GenPythia6Diff.C:1377
 GenPythia6Diff.C:1378
 GenPythia6Diff.C:1379
 GenPythia6Diff.C:1380
 GenPythia6Diff.C:1381
 GenPythia6Diff.C:1382
 GenPythia6Diff.C:1383
 GenPythia6Diff.C:1384
 GenPythia6Diff.C:1385
 GenPythia6Diff.C:1386
 GenPythia6Diff.C:1387
 GenPythia6Diff.C:1388
 GenPythia6Diff.C:1389
 GenPythia6Diff.C:1390
 GenPythia6Diff.C:1391
 GenPythia6Diff.C:1392
 GenPythia6Diff.C:1393
 GenPythia6Diff.C:1394
 GenPythia6Diff.C:1395
 GenPythia6Diff.C:1396
 GenPythia6Diff.C:1397
 GenPythia6Diff.C:1398
 GenPythia6Diff.C:1399
 GenPythia6Diff.C:1400
 GenPythia6Diff.C:1401
 GenPythia6Diff.C:1402
 GenPythia6Diff.C:1403
 GenPythia6Diff.C:1404
 GenPythia6Diff.C:1405
 GenPythia6Diff.C:1406
 GenPythia6Diff.C:1407
 GenPythia6Diff.C:1408
 GenPythia6Diff.C:1409
 GenPythia6Diff.C:1410
 GenPythia6Diff.C:1411
 GenPythia6Diff.C:1412
 GenPythia6Diff.C:1413
 GenPythia6Diff.C:1414
 GenPythia6Diff.C:1415
 GenPythia6Diff.C:1416
 GenPythia6Diff.C:1417
 GenPythia6Diff.C:1418
 GenPythia6Diff.C:1419
 GenPythia6Diff.C:1420
 GenPythia6Diff.C:1421
 GenPythia6Diff.C:1422
 GenPythia6Diff.C:1423
 GenPythia6Diff.C:1424
 GenPythia6Diff.C:1425
 GenPythia6Diff.C:1426
 GenPythia6Diff.C:1427
 GenPythia6Diff.C:1428
 GenPythia6Diff.C:1429
 GenPythia6Diff.C:1430
 GenPythia6Diff.C:1431
 GenPythia6Diff.C:1432
 GenPythia6Diff.C:1433
 GenPythia6Diff.C:1434
 GenPythia6Diff.C:1435
 GenPythia6Diff.C:1436
 GenPythia6Diff.C:1437
 GenPythia6Diff.C:1438
 GenPythia6Diff.C:1439
 GenPythia6Diff.C:1440
 GenPythia6Diff.C:1441
 GenPythia6Diff.C:1442
 GenPythia6Diff.C:1443
 GenPythia6Diff.C:1444
 GenPythia6Diff.C:1445
 GenPythia6Diff.C:1446
 GenPythia6Diff.C:1447
 GenPythia6Diff.C:1448
 GenPythia6Diff.C:1449
 GenPythia6Diff.C:1450
 GenPythia6Diff.C:1451
 GenPythia6Diff.C:1452
 GenPythia6Diff.C:1453
 GenPythia6Diff.C:1454
 GenPythia6Diff.C:1455
 GenPythia6Diff.C:1456
 GenPythia6Diff.C:1457
 GenPythia6Diff.C:1458
 GenPythia6Diff.C:1459
 GenPythia6Diff.C:1460
 GenPythia6Diff.C:1461
 GenPythia6Diff.C:1462
 GenPythia6Diff.C:1463
 GenPythia6Diff.C:1464
 GenPythia6Diff.C:1465
 GenPythia6Diff.C:1466
 GenPythia6Diff.C:1467
 GenPythia6Diff.C:1468
 GenPythia6Diff.C:1469
 GenPythia6Diff.C:1470
 GenPythia6Diff.C:1471
 GenPythia6Diff.C:1472
 GenPythia6Diff.C:1473
 GenPythia6Diff.C:1474
 GenPythia6Diff.C:1475
 GenPythia6Diff.C:1476
 GenPythia6Diff.C:1477
 GenPythia6Diff.C:1478
 GenPythia6Diff.C:1479
 GenPythia6Diff.C:1480
 GenPythia6Diff.C:1481
 GenPythia6Diff.C:1482
 GenPythia6Diff.C:1483
 GenPythia6Diff.C:1484
 GenPythia6Diff.C:1485
 GenPythia6Diff.C:1486
 GenPythia6Diff.C:1487
 GenPythia6Diff.C:1488
 GenPythia6Diff.C:1489
 GenPythia6Diff.C:1490
 GenPythia6Diff.C:1491
 GenPythia6Diff.C:1492
 GenPythia6Diff.C:1493
 GenPythia6Diff.C:1494
 GenPythia6Diff.C:1495
 GenPythia6Diff.C:1496
 GenPythia6Diff.C:1497
 GenPythia6Diff.C:1498
 GenPythia6Diff.C:1499
 GenPythia6Diff.C:1500
 GenPythia6Diff.C:1501
 GenPythia6Diff.C:1502
 GenPythia6Diff.C:1503
 GenPythia6Diff.C:1504
 GenPythia6Diff.C:1505
 GenPythia6Diff.C:1506
 GenPythia6Diff.C:1507
 GenPythia6Diff.C:1508
 GenPythia6Diff.C:1509
 GenPythia6Diff.C:1510
 GenPythia6Diff.C:1511
 GenPythia6Diff.C:1512
 GenPythia6Diff.C:1513
 GenPythia6Diff.C:1514
 GenPythia6Diff.C:1515
 GenPythia6Diff.C:1516
 GenPythia6Diff.C:1517
 GenPythia6Diff.C:1518
 GenPythia6Diff.C:1519
 GenPythia6Diff.C:1520
 GenPythia6Diff.C:1521
 GenPythia6Diff.C:1522
 GenPythia6Diff.C:1523
 GenPythia6Diff.C:1524
 GenPythia6Diff.C:1525
 GenPythia6Diff.C:1526
 GenPythia6Diff.C:1527
 GenPythia6Diff.C:1528
 GenPythia6Diff.C:1529
 GenPythia6Diff.C:1530
 GenPythia6Diff.C:1531
 GenPythia6Diff.C:1532
 GenPythia6Diff.C:1533
 GenPythia6Diff.C:1534
 GenPythia6Diff.C:1535
 GenPythia6Diff.C:1536
 GenPythia6Diff.C:1537
 GenPythia6Diff.C:1538
 GenPythia6Diff.C:1539
 GenPythia6Diff.C:1540
 GenPythia6Diff.C:1541
 GenPythia6Diff.C:1542
 GenPythia6Diff.C:1543
 GenPythia6Diff.C:1544
 GenPythia6Diff.C:1545
 GenPythia6Diff.C:1546
 GenPythia6Diff.C:1547
 GenPythia6Diff.C:1548
 GenPythia6Diff.C:1549
 GenPythia6Diff.C:1550
 GenPythia6Diff.C:1551
 GenPythia6Diff.C:1552
 GenPythia6Diff.C:1553
 GenPythia6Diff.C:1554
 GenPythia6Diff.C:1555
 GenPythia6Diff.C:1556
 GenPythia6Diff.C:1557
 GenPythia6Diff.C:1558
 GenPythia6Diff.C:1559
 GenPythia6Diff.C:1560
 GenPythia6Diff.C:1561
 GenPythia6Diff.C:1562
 GenPythia6Diff.C:1563
 GenPythia6Diff.C:1564
 GenPythia6Diff.C:1565
 GenPythia6Diff.C:1566
 GenPythia6Diff.C:1567
 GenPythia6Diff.C:1568
 GenPythia6Diff.C:1569
 GenPythia6Diff.C:1570
 GenPythia6Diff.C:1571
 GenPythia6Diff.C:1572
 GenPythia6Diff.C:1573
 GenPythia6Diff.C:1574
 GenPythia6Diff.C:1575
 GenPythia6Diff.C:1576
 GenPythia6Diff.C:1577
 GenPythia6Diff.C:1578
 GenPythia6Diff.C:1579
 GenPythia6Diff.C:1580
 GenPythia6Diff.C:1581
 GenPythia6Diff.C:1582
 GenPythia6Diff.C:1583
 GenPythia6Diff.C:1584
 GenPythia6Diff.C:1585
 GenPythia6Diff.C:1586
 GenPythia6Diff.C:1587
 GenPythia6Diff.C:1588
 GenPythia6Diff.C:1589
 GenPythia6Diff.C:1590
 GenPythia6Diff.C:1591
 GenPythia6Diff.C:1592
 GenPythia6Diff.C:1593
 GenPythia6Diff.C:1594
 GenPythia6Diff.C:1595
 GenPythia6Diff.C:1596
 GenPythia6Diff.C:1597
 GenPythia6Diff.C:1598
 GenPythia6Diff.C:1599
 GenPythia6Diff.C:1600
 GenPythia6Diff.C:1601
 GenPythia6Diff.C:1602
 GenPythia6Diff.C:1603
 GenPythia6Diff.C:1604
 GenPythia6Diff.C:1605
 GenPythia6Diff.C:1606
 GenPythia6Diff.C:1607
 GenPythia6Diff.C:1608
 GenPythia6Diff.C:1609
 GenPythia6Diff.C:1610
 GenPythia6Diff.C:1611
 GenPythia6Diff.C:1612
 GenPythia6Diff.C:1613
 GenPythia6Diff.C:1614
 GenPythia6Diff.C:1615
 GenPythia6Diff.C:1616
 GenPythia6Diff.C:1617
 GenPythia6Diff.C:1618
 GenPythia6Diff.C:1619
 GenPythia6Diff.C:1620
 GenPythia6Diff.C:1621
 GenPythia6Diff.C:1622
 GenPythia6Diff.C:1623
 GenPythia6Diff.C:1624
 GenPythia6Diff.C:1625
 GenPythia6Diff.C:1626
 GenPythia6Diff.C:1627
 GenPythia6Diff.C:1628
 GenPythia6Diff.C:1629
 GenPythia6Diff.C:1630
 GenPythia6Diff.C:1631
 GenPythia6Diff.C:1632
 GenPythia6Diff.C:1633
 GenPythia6Diff.C:1634
 GenPythia6Diff.C:1635
 GenPythia6Diff.C:1636
 GenPythia6Diff.C:1637
 GenPythia6Diff.C:1638
 GenPythia6Diff.C:1639
 GenPythia6Diff.C:1640
 GenPythia6Diff.C:1641
 GenPythia6Diff.C:1642
 GenPythia6Diff.C:1643
 GenPythia6Diff.C:1644
 GenPythia6Diff.C:1645
 GenPythia6Diff.C:1646
 GenPythia6Diff.C:1647
 GenPythia6Diff.C:1648
 GenPythia6Diff.C:1649
 GenPythia6Diff.C:1650
 GenPythia6Diff.C:1651
 GenPythia6Diff.C:1652
 GenPythia6Diff.C:1653
 GenPythia6Diff.C:1654
 GenPythia6Diff.C:1655
 GenPythia6Diff.C:1656
 GenPythia6Diff.C:1657
 GenPythia6Diff.C:1658
 GenPythia6Diff.C:1659
 GenPythia6Diff.C:1660
 GenPythia6Diff.C:1661
 GenPythia6Diff.C:1662
 GenPythia6Diff.C:1663
 GenPythia6Diff.C:1664
 GenPythia6Diff.C:1665
 GenPythia6Diff.C:1666
 GenPythia6Diff.C:1667
 GenPythia6Diff.C:1668
 GenPythia6Diff.C:1669
 GenPythia6Diff.C:1670
 GenPythia6Diff.C:1671
 GenPythia6Diff.C:1672
 GenPythia6Diff.C:1673
 GenPythia6Diff.C:1674
 GenPythia6Diff.C:1675
 GenPythia6Diff.C:1676
 GenPythia6Diff.C:1677
 GenPythia6Diff.C:1678
 GenPythia6Diff.C:1679
 GenPythia6Diff.C:1680
 GenPythia6Diff.C:1681
 GenPythia6Diff.C:1682
 GenPythia6Diff.C:1683
 GenPythia6Diff.C:1684
 GenPythia6Diff.C:1685
 GenPythia6Diff.C:1686
 GenPythia6Diff.C:1687
 GenPythia6Diff.C:1688
 GenPythia6Diff.C:1689
 GenPythia6Diff.C:1690
 GenPythia6Diff.C:1691
 GenPythia6Diff.C:1692
 GenPythia6Diff.C:1693
 GenPythia6Diff.C:1694
 GenPythia6Diff.C:1695
 GenPythia6Diff.C:1696
 GenPythia6Diff.C:1697
 GenPythia6Diff.C:1698
 GenPythia6Diff.C:1699
 GenPythia6Diff.C:1700
 GenPythia6Diff.C:1701
 GenPythia6Diff.C:1702
 GenPythia6Diff.C:1703
 GenPythia6Diff.C:1704
 GenPythia6Diff.C:1705
 GenPythia6Diff.C:1706
 GenPythia6Diff.C:1707
 GenPythia6Diff.C:1708
 GenPythia6Diff.C:1709
 GenPythia6Diff.C:1710
 GenPythia6Diff.C:1711
 GenPythia6Diff.C:1712
 GenPythia6Diff.C:1713
 GenPythia6Diff.C:1714
 GenPythia6Diff.C:1715
 GenPythia6Diff.C:1716
 GenPythia6Diff.C:1717
 GenPythia6Diff.C:1718
 GenPythia6Diff.C:1719
 GenPythia6Diff.C:1720
 GenPythia6Diff.C:1721
 GenPythia6Diff.C:1722
 GenPythia6Diff.C:1723
 GenPythia6Diff.C:1724
 GenPythia6Diff.C:1725
 GenPythia6Diff.C:1726
 GenPythia6Diff.C:1727
 GenPythia6Diff.C:1728
 GenPythia6Diff.C:1729
 GenPythia6Diff.C:1730
 GenPythia6Diff.C:1731
 GenPythia6Diff.C:1732
 GenPythia6Diff.C:1733
 GenPythia6Diff.C:1734
 GenPythia6Diff.C:1735
 GenPythia6Diff.C:1736
 GenPythia6Diff.C:1737
 GenPythia6Diff.C:1738
 GenPythia6Diff.C:1739
 GenPythia6Diff.C:1740
 GenPythia6Diff.C:1741
 GenPythia6Diff.C:1742
 GenPythia6Diff.C:1743
 GenPythia6Diff.C:1744
 GenPythia6Diff.C:1745
 GenPythia6Diff.C:1746
 GenPythia6Diff.C:1747
 GenPythia6Diff.C:1748
 GenPythia6Diff.C:1749
 GenPythia6Diff.C:1750
 GenPythia6Diff.C:1751
 GenPythia6Diff.C:1752
 GenPythia6Diff.C:1753
 GenPythia6Diff.C:1754
 GenPythia6Diff.C:1755
 GenPythia6Diff.C:1756
 GenPythia6Diff.C:1757
 GenPythia6Diff.C:1758
 GenPythia6Diff.C:1759
 GenPythia6Diff.C:1760
 GenPythia6Diff.C:1761
 GenPythia6Diff.C:1762
 GenPythia6Diff.C:1763
 GenPythia6Diff.C:1764
 GenPythia6Diff.C:1765
 GenPythia6Diff.C:1766
 GenPythia6Diff.C:1767
 GenPythia6Diff.C:1768
 GenPythia6Diff.C:1769
 GenPythia6Diff.C:1770
 GenPythia6Diff.C:1771
 GenPythia6Diff.C:1772
 GenPythia6Diff.C:1773
 GenPythia6Diff.C:1774
 GenPythia6Diff.C:1775
 GenPythia6Diff.C:1776
 GenPythia6Diff.C:1777
 GenPythia6Diff.C:1778
 GenPythia6Diff.C:1779
 GenPythia6Diff.C:1780
 GenPythia6Diff.C:1781
 GenPythia6Diff.C:1782
 GenPythia6Diff.C:1783
 GenPythia6Diff.C:1784
 GenPythia6Diff.C:1785
 GenPythia6Diff.C:1786
 GenPythia6Diff.C:1787
 GenPythia6Diff.C:1788
 GenPythia6Diff.C:1789
 GenPythia6Diff.C:1790
 GenPythia6Diff.C:1791
 GenPythia6Diff.C:1792
 GenPythia6Diff.C:1793
 GenPythia6Diff.C:1794
 GenPythia6Diff.C:1795
 GenPythia6Diff.C:1796
 GenPythia6Diff.C:1797
 GenPythia6Diff.C:1798
 GenPythia6Diff.C:1799
 GenPythia6Diff.C:1800
 GenPythia6Diff.C:1801
 GenPythia6Diff.C:1802
 GenPythia6Diff.C:1803
 GenPythia6Diff.C:1804
 GenPythia6Diff.C:1805
 GenPythia6Diff.C:1806
 GenPythia6Diff.C:1807
 GenPythia6Diff.C:1808
 GenPythia6Diff.C:1809
 GenPythia6Diff.C:1810
 GenPythia6Diff.C:1811
 GenPythia6Diff.C:1812
 GenPythia6Diff.C:1813
 GenPythia6Diff.C:1814
 GenPythia6Diff.C:1815
 GenPythia6Diff.C:1816
 GenPythia6Diff.C:1817
 GenPythia6Diff.C:1818
 GenPythia6Diff.C:1819
 GenPythia6Diff.C:1820
 GenPythia6Diff.C:1821
 GenPythia6Diff.C:1822
 GenPythia6Diff.C:1823
 GenPythia6Diff.C:1824
 GenPythia6Diff.C:1825
 GenPythia6Diff.C:1826
 GenPythia6Diff.C:1827
 GenPythia6Diff.C:1828
 GenPythia6Diff.C:1829
 GenPythia6Diff.C:1830
 GenPythia6Diff.C:1831
 GenPythia6Diff.C:1832
 GenPythia6Diff.C:1833
 GenPythia6Diff.C:1834
 GenPythia6Diff.C:1835
 GenPythia6Diff.C:1836
 GenPythia6Diff.C:1837
 GenPythia6Diff.C:1838
 GenPythia6Diff.C:1839
 GenPythia6Diff.C:1840
 GenPythia6Diff.C:1841
 GenPythia6Diff.C:1842
 GenPythia6Diff.C:1843
 GenPythia6Diff.C:1844
 GenPythia6Diff.C:1845
 GenPythia6Diff.C:1846
 GenPythia6Diff.C:1847
 GenPythia6Diff.C:1848
 GenPythia6Diff.C:1849
 GenPythia6Diff.C:1850
 GenPythia6Diff.C:1851
 GenPythia6Diff.C:1852
 GenPythia6Diff.C:1853
 GenPythia6Diff.C:1854
 GenPythia6Diff.C:1855
 GenPythia6Diff.C:1856
 GenPythia6Diff.C:1857
 GenPythia6Diff.C:1858
 GenPythia6Diff.C:1859
 GenPythia6Diff.C:1860
 GenPythia6Diff.C:1861
 GenPythia6Diff.C:1862
 GenPythia6Diff.C:1863
 GenPythia6Diff.C:1864
 GenPythia6Diff.C:1865
 GenPythia6Diff.C:1866
 GenPythia6Diff.C:1867
 GenPythia6Diff.C:1868
 GenPythia6Diff.C:1869
 GenPythia6Diff.C:1870
 GenPythia6Diff.C:1871
 GenPythia6Diff.C:1872
 GenPythia6Diff.C:1873
 GenPythia6Diff.C:1874
 GenPythia6Diff.C:1875
 GenPythia6Diff.C:1876
 GenPythia6Diff.C:1877
 GenPythia6Diff.C:1878
 GenPythia6Diff.C:1879
 GenPythia6Diff.C:1880
 GenPythia6Diff.C:1881
 GenPythia6Diff.C:1882
 GenPythia6Diff.C:1883
 GenPythia6Diff.C:1884
 GenPythia6Diff.C:1885
 GenPythia6Diff.C:1886
 GenPythia6Diff.C:1887
 GenPythia6Diff.C:1888
 GenPythia6Diff.C:1889
 GenPythia6Diff.C:1890
 GenPythia6Diff.C:1891
 GenPythia6Diff.C:1892
 GenPythia6Diff.C:1893
 GenPythia6Diff.C:1894
 GenPythia6Diff.C:1895
 GenPythia6Diff.C:1896
 GenPythia6Diff.C:1897
 GenPythia6Diff.C:1898
 GenPythia6Diff.C:1899
 GenPythia6Diff.C:1900
 GenPythia6Diff.C:1901
 GenPythia6Diff.C:1902
 GenPythia6Diff.C:1903
 GenPythia6Diff.C:1904
 GenPythia6Diff.C:1905
 GenPythia6Diff.C:1906
 GenPythia6Diff.C:1907
 GenPythia6Diff.C:1908
 GenPythia6Diff.C:1909
 GenPythia6Diff.C:1910
 GenPythia6Diff.C:1911
 GenPythia6Diff.C:1912
 GenPythia6Diff.C:1913
 GenPythia6Diff.C:1914
 GenPythia6Diff.C:1915
 GenPythia6Diff.C:1916
 GenPythia6Diff.C:1917
 GenPythia6Diff.C:1918
 GenPythia6Diff.C:1919
 GenPythia6Diff.C:1920
 GenPythia6Diff.C:1921
 GenPythia6Diff.C:1922
 GenPythia6Diff.C:1923
 GenPythia6Diff.C:1924
 GenPythia6Diff.C:1925
 GenPythia6Diff.C:1926
 GenPythia6Diff.C:1927
 GenPythia6Diff.C:1928
 GenPythia6Diff.C:1929
 GenPythia6Diff.C:1930
 GenPythia6Diff.C:1931
 GenPythia6Diff.C:1932
 GenPythia6Diff.C:1933
 GenPythia6Diff.C:1934
 GenPythia6Diff.C:1935
 GenPythia6Diff.C:1936
 GenPythia6Diff.C:1937
 GenPythia6Diff.C:1938
 GenPythia6Diff.C:1939
 GenPythia6Diff.C:1940
 GenPythia6Diff.C:1941
 GenPythia6Diff.C:1942
 GenPythia6Diff.C:1943
 GenPythia6Diff.C:1944
 GenPythia6Diff.C:1945
 GenPythia6Diff.C:1946
 GenPythia6Diff.C:1947
 GenPythia6Diff.C:1948
 GenPythia6Diff.C:1949
 GenPythia6Diff.C:1950
 GenPythia6Diff.C:1951
 GenPythia6Diff.C:1952
 GenPythia6Diff.C:1953
 GenPythia6Diff.C:1954
 GenPythia6Diff.C:1955
 GenPythia6Diff.C:1956
 GenPythia6Diff.C:1957
 GenPythia6Diff.C:1958
 GenPythia6Diff.C:1959
 GenPythia6Diff.C:1960
 GenPythia6Diff.C:1961
 GenPythia6Diff.C:1962
 GenPythia6Diff.C:1963
 GenPythia6Diff.C:1964
 GenPythia6Diff.C:1965
 GenPythia6Diff.C:1966
 GenPythia6Diff.C:1967
 GenPythia6Diff.C:1968
 GenPythia6Diff.C:1969
 GenPythia6Diff.C:1970
 GenPythia6Diff.C:1971
 GenPythia6Diff.C:1972
 GenPythia6Diff.C:1973
 GenPythia6Diff.C:1974
 GenPythia6Diff.C:1975
 GenPythia6Diff.C:1976
 GenPythia6Diff.C:1977
 GenPythia6Diff.C:1978
 GenPythia6Diff.C:1979
 GenPythia6Diff.C:1980
 GenPythia6Diff.C:1981
 GenPythia6Diff.C:1982
 GenPythia6Diff.C:1983
 GenPythia6Diff.C:1984
 GenPythia6Diff.C:1985
 GenPythia6Diff.C:1986
 GenPythia6Diff.C:1987
 GenPythia6Diff.C:1988
 GenPythia6Diff.C:1989
 GenPythia6Diff.C:1990
 GenPythia6Diff.C:1991
 GenPythia6Diff.C:1992
 GenPythia6Diff.C:1993
 GenPythia6Diff.C:1994
 GenPythia6Diff.C:1995
 GenPythia6Diff.C:1996
 GenPythia6Diff.C:1997
 GenPythia6Diff.C:1998
 GenPythia6Diff.C:1999
 GenPythia6Diff.C:2000
 GenPythia6Diff.C:2001
 GenPythia6Diff.C:2002
 GenPythia6Diff.C:2003
 GenPythia6Diff.C:2004
 GenPythia6Diff.C:2005
 GenPythia6Diff.C:2006
 GenPythia6Diff.C:2007
 GenPythia6Diff.C:2008
 GenPythia6Diff.C:2009
 GenPythia6Diff.C:2010
 GenPythia6Diff.C:2011
 GenPythia6Diff.C:2012
 GenPythia6Diff.C:2013
 GenPythia6Diff.C:2014
 GenPythia6Diff.C:2015
 GenPythia6Diff.C:2016
 GenPythia6Diff.C:2017
 GenPythia6Diff.C:2018
 GenPythia6Diff.C:2019
 GenPythia6Diff.C:2020
 GenPythia6Diff.C:2021
 GenPythia6Diff.C:2022
 GenPythia6Diff.C:2023
 GenPythia6Diff.C:2024
 GenPythia6Diff.C:2025
 GenPythia6Diff.C:2026
 GenPythia6Diff.C:2027
 GenPythia6Diff.C:2028
 GenPythia6Diff.C:2029
 GenPythia6Diff.C:2030
 GenPythia6Diff.C:2031
 GenPythia6Diff.C:2032
 GenPythia6Diff.C:2033
 GenPythia6Diff.C:2034
 GenPythia6Diff.C:2035
 GenPythia6Diff.C:2036
 GenPythia6Diff.C:2037
 GenPythia6Diff.C:2038
 GenPythia6Diff.C:2039
 GenPythia6Diff.C:2040
 GenPythia6Diff.C:2041
 GenPythia6Diff.C:2042
 GenPythia6Diff.C:2043
 GenPythia6Diff.C:2044
 GenPythia6Diff.C:2045
 GenPythia6Diff.C:2046
 GenPythia6Diff.C:2047
 GenPythia6Diff.C:2048
 GenPythia6Diff.C:2049
 GenPythia6Diff.C:2050
 GenPythia6Diff.C:2051
 GenPythia6Diff.C:2052
 GenPythia6Diff.C:2053
 GenPythia6Diff.C:2054
 GenPythia6Diff.C:2055
 GenPythia6Diff.C:2056
 GenPythia6Diff.C:2057
 GenPythia6Diff.C:2058
 GenPythia6Diff.C:2059
 GenPythia6Diff.C:2060
 GenPythia6Diff.C:2061
 GenPythia6Diff.C:2062
 GenPythia6Diff.C:2063
 GenPythia6Diff.C:2064
 GenPythia6Diff.C:2065
 GenPythia6Diff.C:2066
 GenPythia6Diff.C:2067
 GenPythia6Diff.C:2068
 GenPythia6Diff.C:2069
 GenPythia6Diff.C:2070
 GenPythia6Diff.C:2071
 GenPythia6Diff.C:2072
 GenPythia6Diff.C:2073
 GenPythia6Diff.C:2074
 GenPythia6Diff.C:2075
 GenPythia6Diff.C:2076
 GenPythia6Diff.C:2077
 GenPythia6Diff.C:2078
 GenPythia6Diff.C:2079
 GenPythia6Diff.C:2080
 GenPythia6Diff.C:2081
 GenPythia6Diff.C:2082
 GenPythia6Diff.C:2083
 GenPythia6Diff.C:2084
 GenPythia6Diff.C:2085
 GenPythia6Diff.C:2086
 GenPythia6Diff.C:2087
 GenPythia6Diff.C:2088
 GenPythia6Diff.C:2089
 GenPythia6Diff.C:2090
 GenPythia6Diff.C:2091
 GenPythia6Diff.C:2092
 GenPythia6Diff.C:2093
 GenPythia6Diff.C:2094
 GenPythia6Diff.C:2095
 GenPythia6Diff.C:2096
 GenPythia6Diff.C:2097
 GenPythia6Diff.C:2098
 GenPythia6Diff.C:2099
 GenPythia6Diff.C:2100
 GenPythia6Diff.C:2101
 GenPythia6Diff.C:2102
 GenPythia6Diff.C:2103
 GenPythia6Diff.C:2104
 GenPythia6Diff.C:2105
 GenPythia6Diff.C:2106
 GenPythia6Diff.C:2107
 GenPythia6Diff.C:2108
 GenPythia6Diff.C:2109
 GenPythia6Diff.C:2110
 GenPythia6Diff.C:2111
 GenPythia6Diff.C:2112
 GenPythia6Diff.C:2113
 GenPythia6Diff.C:2114
 GenPythia6Diff.C:2115
 GenPythia6Diff.C:2116
 GenPythia6Diff.C:2117
 GenPythia6Diff.C:2118
 GenPythia6Diff.C:2119
 GenPythia6Diff.C:2120
 GenPythia6Diff.C:2121
 GenPythia6Diff.C:2122
 GenPythia6Diff.C:2123
 GenPythia6Diff.C:2124
 GenPythia6Diff.C:2125
 GenPythia6Diff.C:2126
 GenPythia6Diff.C:2127
 GenPythia6Diff.C:2128
 GenPythia6Diff.C:2129
 GenPythia6Diff.C:2130
 GenPythia6Diff.C:2131
 GenPythia6Diff.C:2132
 GenPythia6Diff.C:2133
 GenPythia6Diff.C:2134
 GenPythia6Diff.C:2135
 GenPythia6Diff.C:2136
 GenPythia6Diff.C:2137
 GenPythia6Diff.C:2138
 GenPythia6Diff.C:2139
 GenPythia6Diff.C:2140
 GenPythia6Diff.C:2141
 GenPythia6Diff.C:2142
 GenPythia6Diff.C:2143
 GenPythia6Diff.C:2144
 GenPythia6Diff.C:2145
 GenPythia6Diff.C:2146
 GenPythia6Diff.C:2147
 GenPythia6Diff.C:2148
 GenPythia6Diff.C:2149
 GenPythia6Diff.C:2150
 GenPythia6Diff.C:2151
 GenPythia6Diff.C:2152
 GenPythia6Diff.C:2153
 GenPythia6Diff.C:2154
 GenPythia6Diff.C:2155
 GenPythia6Diff.C:2156
 GenPythia6Diff.C:2157
 GenPythia6Diff.C:2158
 GenPythia6Diff.C:2159
 GenPythia6Diff.C:2160
 GenPythia6Diff.C:2161
 GenPythia6Diff.C:2162
 GenPythia6Diff.C:2163
 GenPythia6Diff.C:2164
 GenPythia6Diff.C:2165
 GenPythia6Diff.C:2166
 GenPythia6Diff.C:2167
 GenPythia6Diff.C:2168
 GenPythia6Diff.C:2169
 GenPythia6Diff.C:2170
 GenPythia6Diff.C:2171
 GenPythia6Diff.C:2172
 GenPythia6Diff.C:2173
 GenPythia6Diff.C:2174
 GenPythia6Diff.C:2175
 GenPythia6Diff.C:2176
 GenPythia6Diff.C:2177
 GenPythia6Diff.C:2178
 GenPythia6Diff.C:2179
 GenPythia6Diff.C:2180
 GenPythia6Diff.C:2181
 GenPythia6Diff.C:2182
 GenPythia6Diff.C:2183
 GenPythia6Diff.C:2184
 GenPythia6Diff.C:2185
 GenPythia6Diff.C:2186
 GenPythia6Diff.C:2187
 GenPythia6Diff.C:2188
 GenPythia6Diff.C:2189
 GenPythia6Diff.C:2190
 GenPythia6Diff.C:2191
 GenPythia6Diff.C:2192
 GenPythia6Diff.C:2193
 GenPythia6Diff.C:2194
 GenPythia6Diff.C:2195
 GenPythia6Diff.C:2196
 GenPythia6Diff.C:2197
 GenPythia6Diff.C:2198
 GenPythia6Diff.C:2199
 GenPythia6Diff.C:2200
 GenPythia6Diff.C:2201
 GenPythia6Diff.C:2202
 GenPythia6Diff.C:2203
 GenPythia6Diff.C:2204
 GenPythia6Diff.C:2205
 GenPythia6Diff.C:2206
 GenPythia6Diff.C:2207
 GenPythia6Diff.C:2208
 GenPythia6Diff.C:2209
 GenPythia6Diff.C:2210
 GenPythia6Diff.C:2211
 GenPythia6Diff.C:2212
 GenPythia6Diff.C:2213
 GenPythia6Diff.C:2214
 GenPythia6Diff.C:2215
 GenPythia6Diff.C:2216
 GenPythia6Diff.C:2217
 GenPythia6Diff.C:2218
 GenPythia6Diff.C:2219
 GenPythia6Diff.C:2220
 GenPythia6Diff.C:2221
 GenPythia6Diff.C:2222
 GenPythia6Diff.C:2223
 GenPythia6Diff.C:2224
 GenPythia6Diff.C:2225
 GenPythia6Diff.C:2226
 GenPythia6Diff.C:2227
 GenPythia6Diff.C:2228
 GenPythia6Diff.C:2229
 GenPythia6Diff.C:2230
 GenPythia6Diff.C:2231
 GenPythia6Diff.C:2232
 GenPythia6Diff.C:2233
 GenPythia6Diff.C:2234
 GenPythia6Diff.C:2235
 GenPythia6Diff.C:2236
 GenPythia6Diff.C:2237
 GenPythia6Diff.C:2238
 GenPythia6Diff.C:2239
 GenPythia6Diff.C:2240
 GenPythia6Diff.C:2241
 GenPythia6Diff.C:2242
 GenPythia6Diff.C:2243
 GenPythia6Diff.C:2244
 GenPythia6Diff.C:2245
 GenPythia6Diff.C:2246
 GenPythia6Diff.C:2247
 GenPythia6Diff.C:2248
 GenPythia6Diff.C:2249
 GenPythia6Diff.C:2250
 GenPythia6Diff.C:2251
 GenPythia6Diff.C:2252
 GenPythia6Diff.C:2253
 GenPythia6Diff.C:2254
 GenPythia6Diff.C:2255
 GenPythia6Diff.C:2256
 GenPythia6Diff.C:2257
 GenPythia6Diff.C:2258
 GenPythia6Diff.C:2259
 GenPythia6Diff.C:2260
 GenPythia6Diff.C:2261
 GenPythia6Diff.C:2262
 GenPythia6Diff.C:2263
 GenPythia6Diff.C:2264
 GenPythia6Diff.C:2265
 GenPythia6Diff.C:2266
 GenPythia6Diff.C:2267
 GenPythia6Diff.C:2268
 GenPythia6Diff.C:2269
 GenPythia6Diff.C:2270
 GenPythia6Diff.C:2271
 GenPythia6Diff.C:2272
 GenPythia6Diff.C:2273
 GenPythia6Diff.C:2274
 GenPythia6Diff.C:2275
 GenPythia6Diff.C:2276
 GenPythia6Diff.C:2277
 GenPythia6Diff.C:2278
 GenPythia6Diff.C:2279
 GenPythia6Diff.C:2280
 GenPythia6Diff.C:2281
 GenPythia6Diff.C:2282
 GenPythia6Diff.C:2283
 GenPythia6Diff.C:2284
 GenPythia6Diff.C:2285
 GenPythia6Diff.C:2286
 GenPythia6Diff.C:2287
 GenPythia6Diff.C:2288
 GenPythia6Diff.C:2289
 GenPythia6Diff.C:2290
 GenPythia6Diff.C:2291
 GenPythia6Diff.C:2292
 GenPythia6Diff.C:2293
 GenPythia6Diff.C:2294
 GenPythia6Diff.C:2295
 GenPythia6Diff.C:2296
 GenPythia6Diff.C:2297
 GenPythia6Diff.C:2298
 GenPythia6Diff.C:2299
 GenPythia6Diff.C:2300
 GenPythia6Diff.C:2301
 GenPythia6Diff.C:2302
 GenPythia6Diff.C:2303
 GenPythia6Diff.C:2304
 GenPythia6Diff.C:2305
 GenPythia6Diff.C:2306
 GenPythia6Diff.C:2307
 GenPythia6Diff.C:2308
 GenPythia6Diff.C:2309
 GenPythia6Diff.C:2310
 GenPythia6Diff.C:2311
 GenPythia6Diff.C:2312
 GenPythia6Diff.C:2313
 GenPythia6Diff.C:2314
 GenPythia6Diff.C:2315
 GenPythia6Diff.C:2316
 GenPythia6Diff.C:2317
 GenPythia6Diff.C:2318
 GenPythia6Diff.C:2319
 GenPythia6Diff.C:2320
 GenPythia6Diff.C:2321
 GenPythia6Diff.C:2322
 GenPythia6Diff.C:2323
 GenPythia6Diff.C:2324
 GenPythia6Diff.C:2325
 GenPythia6Diff.C:2326
 GenPythia6Diff.C:2327
 GenPythia6Diff.C:2328
 GenPythia6Diff.C:2329
 GenPythia6Diff.C:2330
 GenPythia6Diff.C:2331
 GenPythia6Diff.C:2332
 GenPythia6Diff.C:2333
 GenPythia6Diff.C:2334
 GenPythia6Diff.C:2335
 GenPythia6Diff.C:2336
 GenPythia6Diff.C:2337
 GenPythia6Diff.C:2338
 GenPythia6Diff.C:2339
 GenPythia6Diff.C:2340
 GenPythia6Diff.C:2341
 GenPythia6Diff.C:2342
 GenPythia6Diff.C:2343
 GenPythia6Diff.C:2344
 GenPythia6Diff.C:2345
 GenPythia6Diff.C:2346
 GenPythia6Diff.C:2347
 GenPythia6Diff.C:2348
 GenPythia6Diff.C:2349
 GenPythia6Diff.C:2350
 GenPythia6Diff.C:2351
 GenPythia6Diff.C:2352
 GenPythia6Diff.C:2353
 GenPythia6Diff.C:2354
 GenPythia6Diff.C:2355
 GenPythia6Diff.C:2356
 GenPythia6Diff.C:2357
 GenPythia6Diff.C:2358
 GenPythia6Diff.C:2359
 GenPythia6Diff.C:2360
 GenPythia6Diff.C:2361
 GenPythia6Diff.C:2362
 GenPythia6Diff.C:2363
 GenPythia6Diff.C:2364
 GenPythia6Diff.C:2365
 GenPythia6Diff.C:2366
 GenPythia6Diff.C:2367
 GenPythia6Diff.C:2368
 GenPythia6Diff.C:2369
 GenPythia6Diff.C:2370
 GenPythia6Diff.C:2371
 GenPythia6Diff.C:2372
 GenPythia6Diff.C:2373
 GenPythia6Diff.C:2374
 GenPythia6Diff.C:2375
 GenPythia6Diff.C:2376
 GenPythia6Diff.C:2377
 GenPythia6Diff.C:2378
 GenPythia6Diff.C:2379
 GenPythia6Diff.C:2380
 GenPythia6Diff.C:2381
 GenPythia6Diff.C:2382
 GenPythia6Diff.C:2383
 GenPythia6Diff.C:2384
 GenPythia6Diff.C:2385
 GenPythia6Diff.C:2386
 GenPythia6Diff.C:2387
 GenPythia6Diff.C:2388
 GenPythia6Diff.C:2389
 GenPythia6Diff.C:2390
 GenPythia6Diff.C:2391
 GenPythia6Diff.C:2392
 GenPythia6Diff.C:2393
 GenPythia6Diff.C:2394
 GenPythia6Diff.C:2395
 GenPythia6Diff.C:2396
 GenPythia6Diff.C:2397
 GenPythia6Diff.C:2398
 GenPythia6Diff.C:2399
 GenPythia6Diff.C:2400
 GenPythia6Diff.C:2401
 GenPythia6Diff.C:2402
 GenPythia6Diff.C:2403
 GenPythia6Diff.C:2404
 GenPythia6Diff.C:2405
 GenPythia6Diff.C:2406
 GenPythia6Diff.C:2407
 GenPythia6Diff.C:2408
 GenPythia6Diff.C:2409
 GenPythia6Diff.C:2410
 GenPythia6Diff.C:2411
 GenPythia6Diff.C:2412
 GenPythia6Diff.C:2413
 GenPythia6Diff.C:2414
 GenPythia6Diff.C:2415
 GenPythia6Diff.C:2416
 GenPythia6Diff.C:2417
 GenPythia6Diff.C:2418
 GenPythia6Diff.C:2419
 GenPythia6Diff.C:2420
 GenPythia6Diff.C:2421
 GenPythia6Diff.C:2422
 GenPythia6Diff.C:2423
 GenPythia6Diff.C:2424
 GenPythia6Diff.C:2425
 GenPythia6Diff.C:2426
 GenPythia6Diff.C:2427
 GenPythia6Diff.C:2428
 GenPythia6Diff.C:2429
 GenPythia6Diff.C:2430
 GenPythia6Diff.C:2431
 GenPythia6Diff.C:2432
 GenPythia6Diff.C:2433
 GenPythia6Diff.C:2434
 GenPythia6Diff.C:2435
 GenPythia6Diff.C:2436
 GenPythia6Diff.C:2437
 GenPythia6Diff.C:2438
 GenPythia6Diff.C:2439
 GenPythia6Diff.C:2440
 GenPythia6Diff.C:2441
 GenPythia6Diff.C:2442
 GenPythia6Diff.C:2443
 GenPythia6Diff.C:2444
 GenPythia6Diff.C:2445
 GenPythia6Diff.C:2446
 GenPythia6Diff.C:2447
 GenPythia6Diff.C:2448
 GenPythia6Diff.C:2449
 GenPythia6Diff.C:2450
 GenPythia6Diff.C:2451
 GenPythia6Diff.C:2452
 GenPythia6Diff.C:2453
 GenPythia6Diff.C:2454
 GenPythia6Diff.C:2455
 GenPythia6Diff.C:2456
 GenPythia6Diff.C:2457
 GenPythia6Diff.C:2458
 GenPythia6Diff.C:2459
 GenPythia6Diff.C:2460
 GenPythia6Diff.C:2461
 GenPythia6Diff.C:2462
 GenPythia6Diff.C:2463
 GenPythia6Diff.C:2464
 GenPythia6Diff.C:2465
 GenPythia6Diff.C:2466
 GenPythia6Diff.C:2467
 GenPythia6Diff.C:2468
 GenPythia6Diff.C:2469
 GenPythia6Diff.C:2470
 GenPythia6Diff.C:2471
 GenPythia6Diff.C:2472
 GenPythia6Diff.C:2473
 GenPythia6Diff.C:2474
 GenPythia6Diff.C:2475
 GenPythia6Diff.C:2476
 GenPythia6Diff.C:2477
 GenPythia6Diff.C:2478
 GenPythia6Diff.C:2479
 GenPythia6Diff.C:2480
 GenPythia6Diff.C:2481
 GenPythia6Diff.C:2482
 GenPythia6Diff.C:2483
 GenPythia6Diff.C:2484
 GenPythia6Diff.C:2485
 GenPythia6Diff.C:2486
 GenPythia6Diff.C:2487
 GenPythia6Diff.C:2488
 GenPythia6Diff.C:2489
 GenPythia6Diff.C:2490
 GenPythia6Diff.C:2491
 GenPythia6Diff.C:2492
 GenPythia6Diff.C:2493
 GenPythia6Diff.C:2494
 GenPythia6Diff.C:2495
 GenPythia6Diff.C:2496
 GenPythia6Diff.C:2497
 GenPythia6Diff.C:2498
 GenPythia6Diff.C:2499
 GenPythia6Diff.C:2500
 GenPythia6Diff.C:2501
 GenPythia6Diff.C:2502
 GenPythia6Diff.C:2503
 GenPythia6Diff.C:2504
 GenPythia6Diff.C:2505
 GenPythia6Diff.C:2506
 GenPythia6Diff.C:2507
 GenPythia6Diff.C:2508
 GenPythia6Diff.C:2509
 GenPythia6Diff.C:2510
 GenPythia6Diff.C:2511
 GenPythia6Diff.C:2512
 GenPythia6Diff.C:2513
 GenPythia6Diff.C:2514
 GenPythia6Diff.C:2515
 GenPythia6Diff.C:2516
 GenPythia6Diff.C:2517
 GenPythia6Diff.C:2518
 GenPythia6Diff.C:2519
 GenPythia6Diff.C:2520
 GenPythia6Diff.C:2521
 GenPythia6Diff.C:2522
 GenPythia6Diff.C:2523
 GenPythia6Diff.C:2524
 GenPythia6Diff.C:2525
 GenPythia6Diff.C:2526
 GenPythia6Diff.C:2527
 GenPythia6Diff.C:2528
 GenPythia6Diff.C:2529
 GenPythia6Diff.C:2530
 GenPythia6Diff.C:2531
 GenPythia6Diff.C:2532
 GenPythia6Diff.C:2533
 GenPythia6Diff.C:2534
 GenPythia6Diff.C:2535
 GenPythia6Diff.C:2536
 GenPythia6Diff.C:2537
 GenPythia6Diff.C:2538
 GenPythia6Diff.C:2539
 GenPythia6Diff.C:2540
 GenPythia6Diff.C:2541
 GenPythia6Diff.C:2542
 GenPythia6Diff.C:2543
 GenPythia6Diff.C:2544
 GenPythia6Diff.C:2545
 GenPythia6Diff.C:2546
 GenPythia6Diff.C:2547
 GenPythia6Diff.C:2548
 GenPythia6Diff.C:2549
 GenPythia6Diff.C:2550
 GenPythia6Diff.C:2551
 GenPythia6Diff.C:2552
 GenPythia6Diff.C:2553
 GenPythia6Diff.C:2554
 GenPythia6Diff.C:2555
 GenPythia6Diff.C:2556
 GenPythia6Diff.C:2557
 GenPythia6Diff.C:2558
 GenPythia6Diff.C:2559
 GenPythia6Diff.C:2560
 GenPythia6Diff.C:2561
 GenPythia6Diff.C:2562
 GenPythia6Diff.C:2563
 GenPythia6Diff.C:2564
 GenPythia6Diff.C:2565
 GenPythia6Diff.C:2566
 GenPythia6Diff.C:2567
 GenPythia6Diff.C:2568
 GenPythia6Diff.C:2569
 GenPythia6Diff.C:2570
 GenPythia6Diff.C:2571
 GenPythia6Diff.C:2572
 GenPythia6Diff.C:2573
 GenPythia6Diff.C:2574
 GenPythia6Diff.C:2575
 GenPythia6Diff.C:2576
 GenPythia6Diff.C:2577
 GenPythia6Diff.C:2578
 GenPythia6Diff.C:2579
 GenPythia6Diff.C:2580
 GenPythia6Diff.C:2581
 GenPythia6Diff.C:2582
 GenPythia6Diff.C:2583
 GenPythia6Diff.C:2584
 GenPythia6Diff.C:2585
 GenPythia6Diff.C:2586
 GenPythia6Diff.C:2587
 GenPythia6Diff.C:2588
 GenPythia6Diff.C:2589
 GenPythia6Diff.C:2590
 GenPythia6Diff.C:2591
 GenPythia6Diff.C:2592
 GenPythia6Diff.C:2593
 GenPythia6Diff.C:2594
 GenPythia6Diff.C:2595
 GenPythia6Diff.C:2596
 GenPythia6Diff.C:2597
 GenPythia6Diff.C:2598
 GenPythia6Diff.C:2599
 GenPythia6Diff.C:2600
 GenPythia6Diff.C:2601
 GenPythia6Diff.C:2602
 GenPythia6Diff.C:2603
 GenPythia6Diff.C:2604
 GenPythia6Diff.C:2605
 GenPythia6Diff.C:2606
 GenPythia6Diff.C:2607
 GenPythia6Diff.C:2608
 GenPythia6Diff.C:2609
 GenPythia6Diff.C:2610
 GenPythia6Diff.C:2611
 GenPythia6Diff.C:2612
 GenPythia6Diff.C:2613
 GenPythia6Diff.C:2614
 GenPythia6Diff.C:2615
 GenPythia6Diff.C:2616
 GenPythia6Diff.C:2617
 GenPythia6Diff.C:2618
 GenPythia6Diff.C:2619
 GenPythia6Diff.C:2620
 GenPythia6Diff.C:2621
 GenPythia6Diff.C:2622
 GenPythia6Diff.C:2623
 GenPythia6Diff.C:2624
 GenPythia6Diff.C:2625
 GenPythia6Diff.C:2626
 GenPythia6Diff.C:2627
 GenPythia6Diff.C:2628
 GenPythia6Diff.C:2629
 GenPythia6Diff.C:2630
 GenPythia6Diff.C:2631
 GenPythia6Diff.C:2632
 GenPythia6Diff.C:2633
 GenPythia6Diff.C:2634
 GenPythia6Diff.C:2635
 GenPythia6Diff.C:2636
 GenPythia6Diff.C:2637
 GenPythia6Diff.C:2638
 GenPythia6Diff.C:2639
 GenPythia6Diff.C:2640
 GenPythia6Diff.C:2641
 GenPythia6Diff.C:2642
 GenPythia6Diff.C:2643
 GenPythia6Diff.C:2644
 GenPythia6Diff.C:2645
 GenPythia6Diff.C:2646
 GenPythia6Diff.C:2647
 GenPythia6Diff.C:2648
 GenPythia6Diff.C:2649
 GenPythia6Diff.C:2650
 GenPythia6Diff.C:2651
 GenPythia6Diff.C:2652
 GenPythia6Diff.C:2653
 GenPythia6Diff.C:2654
 GenPythia6Diff.C:2655
 GenPythia6Diff.C:2656
 GenPythia6Diff.C:2657
 GenPythia6Diff.C:2658
 GenPythia6Diff.C:2659
 GenPythia6Diff.C:2660
 GenPythia6Diff.C:2661
 GenPythia6Diff.C:2662
 GenPythia6Diff.C:2663
 GenPythia6Diff.C:2664
 GenPythia6Diff.C:2665
 GenPythia6Diff.C:2666
 GenPythia6Diff.C:2667
 GenPythia6Diff.C:2668
 GenPythia6Diff.C:2669
 GenPythia6Diff.C:2670
 GenPythia6Diff.C:2671
 GenPythia6Diff.C:2672
 GenPythia6Diff.C:2673
 GenPythia6Diff.C:2674
 GenPythia6Diff.C:2675
 GenPythia6Diff.C:2676
 GenPythia6Diff.C:2677
 GenPythia6Diff.C:2678
 GenPythia6Diff.C:2679
 GenPythia6Diff.C:2680
 GenPythia6Diff.C:2681
 GenPythia6Diff.C:2682
 GenPythia6Diff.C:2683
 GenPythia6Diff.C:2684
 GenPythia6Diff.C:2685
 GenPythia6Diff.C:2686
 GenPythia6Diff.C:2687
 GenPythia6Diff.C:2688
 GenPythia6Diff.C:2689
 GenPythia6Diff.C:2690
 GenPythia6Diff.C:2691
 GenPythia6Diff.C:2692
 GenPythia6Diff.C:2693
 GenPythia6Diff.C:2694
 GenPythia6Diff.C:2695
 GenPythia6Diff.C:2696
 GenPythia6Diff.C:2697
 GenPythia6Diff.C:2698
 GenPythia6Diff.C:2699
 GenPythia6Diff.C:2700
 GenPythia6Diff.C:2701
 GenPythia6Diff.C:2702
 GenPythia6Diff.C:2703
 GenPythia6Diff.C:2704
 GenPythia6Diff.C:2705
 GenPythia6Diff.C:2706
 GenPythia6Diff.C:2707
 GenPythia6Diff.C:2708
 GenPythia6Diff.C:2709
 GenPythia6Diff.C:2710
 GenPythia6Diff.C:2711
 GenPythia6Diff.C:2712
 GenPythia6Diff.C:2713
 GenPythia6Diff.C:2714
 GenPythia6Diff.C:2715
 GenPythia6Diff.C:2716
 GenPythia6Diff.C:2717
 GenPythia6Diff.C:2718
 GenPythia6Diff.C:2719
 GenPythia6Diff.C:2720
 GenPythia6Diff.C:2721
 GenPythia6Diff.C:2722
 GenPythia6Diff.C:2723
 GenPythia6Diff.C:2724
 GenPythia6Diff.C:2725
 GenPythia6Diff.C:2726
 GenPythia6Diff.C:2727
 GenPythia6Diff.C:2728
 GenPythia6Diff.C:2729
 GenPythia6Diff.C:2730
 GenPythia6Diff.C:2731
 GenPythia6Diff.C:2732
 GenPythia6Diff.C:2733
 GenPythia6Diff.C:2734
 GenPythia6Diff.C:2735
 GenPythia6Diff.C:2736
 GenPythia6Diff.C:2737
 GenPythia6Diff.C:2738
 GenPythia6Diff.C:2739
 GenPythia6Diff.C:2740
 GenPythia6Diff.C:2741
 GenPythia6Diff.C:2742
 GenPythia6Diff.C:2743
 GenPythia6Diff.C:2744
 GenPythia6Diff.C:2745
 GenPythia6Diff.C:2746
 GenPythia6Diff.C:2747
 GenPythia6Diff.C:2748
 GenPythia6Diff.C:2749
 GenPythia6Diff.C:2750
 GenPythia6Diff.C:2751
 GenPythia6Diff.C:2752
 GenPythia6Diff.C:2753
 GenPythia6Diff.C:2754
 GenPythia6Diff.C:2755
 GenPythia6Diff.C:2756
 GenPythia6Diff.C:2757
 GenPythia6Diff.C:2758
 GenPythia6Diff.C:2759
 GenPythia6Diff.C:2760
 GenPythia6Diff.C:2761
 GenPythia6Diff.C:2762
 GenPythia6Diff.C:2763
 GenPythia6Diff.C:2764
 GenPythia6Diff.C:2765
 GenPythia6Diff.C:2766
 GenPythia6Diff.C:2767
 GenPythia6Diff.C:2768
 GenPythia6Diff.C:2769
 GenPythia6Diff.C:2770
 GenPythia6Diff.C:2771
 GenPythia6Diff.C:2772
 GenPythia6Diff.C:2773
 GenPythia6Diff.C:2774
 GenPythia6Diff.C:2775
 GenPythia6Diff.C:2776
 GenPythia6Diff.C:2777
 GenPythia6Diff.C:2778
 GenPythia6Diff.C:2779
 GenPythia6Diff.C:2780
 GenPythia6Diff.C:2781
 GenPythia6Diff.C:2782
 GenPythia6Diff.C:2783
 GenPythia6Diff.C:2784
 GenPythia6Diff.C:2785
 GenPythia6Diff.C:2786
 GenPythia6Diff.C:2787
 GenPythia6Diff.C:2788
 GenPythia6Diff.C:2789
 GenPythia6Diff.C:2790
 GenPythia6Diff.C:2791
 GenPythia6Diff.C:2792
 GenPythia6Diff.C:2793
 GenPythia6Diff.C:2794
 GenPythia6Diff.C:2795
 GenPythia6Diff.C:2796
 GenPythia6Diff.C:2797
 GenPythia6Diff.C:2798
 GenPythia6Diff.C:2799
 GenPythia6Diff.C:2800
 GenPythia6Diff.C:2801
 GenPythia6Diff.C:2802
 GenPythia6Diff.C:2803
 GenPythia6Diff.C:2804
 GenPythia6Diff.C:2805
 GenPythia6Diff.C:2806
 GenPythia6Diff.C:2807
 GenPythia6Diff.C:2808
 GenPythia6Diff.C:2809
 GenPythia6Diff.C:2810
 GenPythia6Diff.C:2811
 GenPythia6Diff.C:2812
 GenPythia6Diff.C:2813
 GenPythia6Diff.C:2814
 GenPythia6Diff.C:2815
 GenPythia6Diff.C:2816
 GenPythia6Diff.C:2817
 GenPythia6Diff.C:2818
 GenPythia6Diff.C:2819
 GenPythia6Diff.C:2820
 GenPythia6Diff.C:2821
 GenPythia6Diff.C:2822
 GenPythia6Diff.C:2823
 GenPythia6Diff.C:2824
 GenPythia6Diff.C:2825
 GenPythia6Diff.C:2826
 GenPythia6Diff.C:2827
 GenPythia6Diff.C:2828
 GenPythia6Diff.C:2829
 GenPythia6Diff.C:2830
 GenPythia6Diff.C:2831
 GenPythia6Diff.C:2832
 GenPythia6Diff.C:2833
 GenPythia6Diff.C:2834
 GenPythia6Diff.C:2835
 GenPythia6Diff.C:2836
 GenPythia6Diff.C:2837
 GenPythia6Diff.C:2838
 GenPythia6Diff.C:2839
 GenPythia6Diff.C:2840
 GenPythia6Diff.C:2841
 GenPythia6Diff.C:2842
 GenPythia6Diff.C:2843
 GenPythia6Diff.C:2844
 GenPythia6Diff.C:2845
 GenPythia6Diff.C:2846
 GenPythia6Diff.C:2847
 GenPythia6Diff.C:2848
 GenPythia6Diff.C:2849
 GenPythia6Diff.C:2850
 GenPythia6Diff.C:2851
 GenPythia6Diff.C:2852
 GenPythia6Diff.C:2853
 GenPythia6Diff.C:2854
 GenPythia6Diff.C:2855
 GenPythia6Diff.C:2856
 GenPythia6Diff.C:2857
 GenPythia6Diff.C:2858
 GenPythia6Diff.C:2859
 GenPythia6Diff.C:2860
 GenPythia6Diff.C:2861
 GenPythia6Diff.C:2862
 GenPythia6Diff.C:2863
 GenPythia6Diff.C:2864
 GenPythia6Diff.C:2865
 GenPythia6Diff.C:2866
 GenPythia6Diff.C:2867
 GenPythia6Diff.C:2868
 GenPythia6Diff.C:2869
 GenPythia6Diff.C:2870
 GenPythia6Diff.C:2871
 GenPythia6Diff.C:2872
 GenPythia6Diff.C:2873
 GenPythia6Diff.C:2874
 GenPythia6Diff.C:2875
 GenPythia6Diff.C:2876
 GenPythia6Diff.C:2877
 GenPythia6Diff.C:2878
 GenPythia6Diff.C:2879
 GenPythia6Diff.C:2880
 GenPythia6Diff.C:2881
 GenPythia6Diff.C:2882
 GenPythia6Diff.C:2883
 GenPythia6Diff.C:2884
 GenPythia6Diff.C:2885
 GenPythia6Diff.C:2886
 GenPythia6Diff.C:2887
 GenPythia6Diff.C:2888
 GenPythia6Diff.C:2889
 GenPythia6Diff.C:2890
 GenPythia6Diff.C:2891
 GenPythia6Diff.C:2892
 GenPythia6Diff.C:2893
 GenPythia6Diff.C:2894
 GenPythia6Diff.C:2895
 GenPythia6Diff.C:2896
 GenPythia6Diff.C:2897
 GenPythia6Diff.C:2898
 GenPythia6Diff.C:2899
 GenPythia6Diff.C:2900
 GenPythia6Diff.C:2901
 GenPythia6Diff.C:2902
 GenPythia6Diff.C:2903
 GenPythia6Diff.C:2904
 GenPythia6Diff.C:2905
 GenPythia6Diff.C:2906
 GenPythia6Diff.C:2907
 GenPythia6Diff.C:2908
 GenPythia6Diff.C:2909
 GenPythia6Diff.C:2910
 GenPythia6Diff.C:2911
 GenPythia6Diff.C:2912
 GenPythia6Diff.C:2913
 GenPythia6Diff.C:2914
 GenPythia6Diff.C:2915
 GenPythia6Diff.C:2916
 GenPythia6Diff.C:2917
 GenPythia6Diff.C:2918
 GenPythia6Diff.C:2919
 GenPythia6Diff.C:2920
 GenPythia6Diff.C:2921
 GenPythia6Diff.C:2922
 GenPythia6Diff.C:2923
 GenPythia6Diff.C:2924
 GenPythia6Diff.C:2925
 GenPythia6Diff.C:2926
 GenPythia6Diff.C:2927
 GenPythia6Diff.C:2928
 GenPythia6Diff.C:2929
 GenPythia6Diff.C:2930
 GenPythia6Diff.C:2931
 GenPythia6Diff.C:2932
 GenPythia6Diff.C:2933
 GenPythia6Diff.C:2934
 GenPythia6Diff.C:2935
 GenPythia6Diff.C:2936
 GenPythia6Diff.C:2937
 GenPythia6Diff.C:2938
 GenPythia6Diff.C:2939
 GenPythia6Diff.C:2940
 GenPythia6Diff.C:2941
 GenPythia6Diff.C:2942
 GenPythia6Diff.C:2943
 GenPythia6Diff.C:2944
 GenPythia6Diff.C:2945
 GenPythia6Diff.C:2946
 GenPythia6Diff.C:2947
 GenPythia6Diff.C:2948
 GenPythia6Diff.C:2949
 GenPythia6Diff.C:2950
 GenPythia6Diff.C:2951
 GenPythia6Diff.C:2952
 GenPythia6Diff.C:2953
 GenPythia6Diff.C:2954
 GenPythia6Diff.C:2955
 GenPythia6Diff.C:2956
 GenPythia6Diff.C:2957
 GenPythia6Diff.C:2958
 GenPythia6Diff.C:2959
 GenPythia6Diff.C:2960
 GenPythia6Diff.C:2961
 GenPythia6Diff.C:2962
 GenPythia6Diff.C:2963
 GenPythia6Diff.C:2964
 GenPythia6Diff.C:2965
 GenPythia6Diff.C:2966
 GenPythia6Diff.C:2967
 GenPythia6Diff.C:2968
 GenPythia6Diff.C:2969
 GenPythia6Diff.C:2970
 GenPythia6Diff.C:2971
 GenPythia6Diff.C:2972
 GenPythia6Diff.C:2973
 GenPythia6Diff.C:2974
 GenPythia6Diff.C:2975