diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/CMakeLists.txt b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/CMakeLists.txt
index 70c1c4590fc656549f4d433ea6541ffdc2ecd5ab..a0c7cd55653d92c4231e5fe4d2a059711400d344 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/CMakeLists.txt
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/CMakeLists.txt
@@ -17,6 +17,7 @@ atlas_depends_on_subdirs( PUBLIC
                           DetectorDescription/AtlasDetDescr
                           DetectorDescription/GeoPrimitives
                           Generators/GeneratorObjects
+                          Simulation/Barcode/BarcodeEvent
                           Simulation/Barcode/BarcodeInterfaces
                           Simulation/G4Atlas/G4AtlasTools
                           Simulation/G4Sim/MCTruth
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/cmt/requirements b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/cmt/requirements
index 000ca5454a0d9f4c8c6dea8b354794ddc41dcce2..2cc0515c23121c06f69a21856692f4bd39b59cc0 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/cmt/requirements
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/cmt/requirements
@@ -15,6 +15,7 @@ use AtlasDetDescr         AtlasDetDescr-*         DetectorDescription
 use GeoPrimitives         GeoPrimitives-*         DetectorDescription
 use AtlasHepMC            AtlasHepMC-*            External
 use AtlasROOT             AtlasROOT-*             External
+use BarcodeEvent          BarcodeEvent-*          Simulation/Barcode
 use BarcodeInterfaces     BarcodeInterfaces-*     Simulation/Barcode
 use G4AtlasTools          G4AtlasTools-*          Simulation/G4Atlas
 use GeneratorObjects      GeneratorObjects-*      Generators
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/python/ISF_Geant4ToolsConfig.py b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/python/ISF_Geant4ToolsConfig.py
index 5cf4d28446574f7463f1797fcf72c691e954ece5..1d41cd086d9d60044ffd97600fc8efa5ae6c89ac 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/python/ISF_Geant4ToolsConfig.py
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/python/ISF_Geant4ToolsConfig.py
@@ -127,6 +127,8 @@ def getG4TransportTool(name='ISFG4TransportTool', **kwargs):
     else:
         kwargs.setdefault('UserActionSvc','ISFUserActionSvc')
         kwargs.setdefault('UserActionSvcV2', '')
+    if hasattr(simFlags, 'RecordFlux') and simFlags.RecordFlux.statusOn:
+        kwargs.setdefault('RecordFlux',simFlags.RecordFlux())
     # Multi-threading settinggs
     from AthenaCommon.ConcurrencyFlags import jobproperties as concurrencyProps
     if concurrencyProps.ConcurrencyFlags.NumThreads() > 0:
@@ -134,8 +136,6 @@ def getG4TransportTool(name='ISFG4TransportTool', **kwargs):
     else:
         is_hive = False
     kwargs.setdefault('MultiThreading', is_hive)
-    # Set commands for the G4AtlasAlg
-    kwargs.setdefault("G4Commands", simFlags.G4Commands.get_Value())
     from ISF_Geant4Tools.ISF_Geant4ToolsConf import iGeant4__G4TransportTool
     return iGeant4__G4TransportTool(name, **kwargs)
 ### Specialized Versions
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/G4AtlasRunManager.cxx b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/G4AtlasRunManager.cxx
index 98ad23bec797866f76ee57d525bf087cd420eb6f..83c60aceeb12980c8aaa533ae2047225b120e060 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/G4AtlasRunManager.cxx
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/G4AtlasRunManager.cxx
@@ -134,6 +134,7 @@ void iGeant4::G4AtlasRunManager::InitializeGeometry()
 void iGeant4::G4AtlasRunManager::EndEvent()
 {
   ATH_MSG_DEBUG( "G4AtlasRunManager::EndEvent" );
+  // ZLM Note 1.12.2016: This function is not called
 }
 
 //________________________________________________________________________
@@ -277,6 +278,22 @@ bool iGeant4::G4AtlasRunManager::ProcessEvent(G4Event* event)
       return true;
     }
 
+  if (m_recordFlux){
+    G4ScoringManager* ScM = G4ScoringManager::GetScoringManagerIfExist();
+    if(ScM){
+      G4int nPar = ScM->GetNumberOfMesh();
+      G4HCofThisEvent* HCE = currentEvent->GetHCofThisEvent();
+      if(HCE && nPar>0){;
+        G4int nColl = HCE->GetCapacity();
+        for(G4int i=0;i<nColl;i++)
+          {
+            G4VHitsCollection* HC = HCE->GetHC(i);
+            if(HC) ScM->Accumulate(HC);
+          }
+      }
+    }
+  }
+
   // stateManager->SetNewState(G4State_GeomClosed);
   StackPreviousEvent(currentEvent);
   bool abort=currentEvent->IsAborted();
@@ -289,6 +306,15 @@ bool iGeant4::G4AtlasRunManager::ProcessEvent(G4Event* event)
 //________________________________________________________________________
 void iGeant4::G4AtlasRunManager::RunTermination()
 {
+  if (m_recordFlux){
+    G4UImanager *ui=G4UImanager::GetUIpointer();
+    ui->ApplyCommand("/score/dumpQuantityToFile cylMesh_1 eDep edep.txt");
+    ui->ApplyCommand("/score/dumpQuantityToFile cylMesh_1 CF_neutron neutron.txt");
+    ui->ApplyCommand("/score/dumpQuantityToFile cylMesh_1 CF_HEneutron HEneutron.txt");
+    ui->ApplyCommand("/score/dumpQuantityToFile cylMesh_1 CF_photon photon.txt");
+    ui->ApplyCommand("/score/dumpQuantityToFile cylMesh_1 dose dose.txt");
+  }
+
   // std::cout<<" this is G4AtlasRunManager::RunTermination() "<<std::endl;
 #if G4VERSION_NUMBER < 1010
   for (size_t itr=0;itr<previousEvents->size();itr++) { delete (*previousEvents)[itr]; }
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/Geant4TruthIncident.cxx b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/Geant4TruthIncident.cxx
index e9423a38b2276b385b4ca6b3b9313c1da4969fa3..df3f46eaf7895bb36e5609ea115d8c9e00c882b0 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/Geant4TruthIncident.cxx
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/Geant4TruthIncident.cxx
@@ -17,7 +17,6 @@
 #include "MCTruth/TrackBarcodeInfo.h"
 #include "MCTruth/TrackHelper.h"
 #include "MCTruth/TrackInformation.h"
-#include "MCTruth/PrimaryParticleInformation.h"
 #include "SimHelpers/SecondaryTracksHelper.h"
 
 // Units
@@ -41,6 +40,9 @@
 #include "G4EventManager.hh"
 #include "G4Event.hh"
 
+// ISF includes
+#include "ISF_Event/ISFParticle.h"
+
 /*
   Comments:
   what about parent particle surviving (e.g. bremstrahlung)
@@ -67,6 +69,7 @@
 
 
 iGeant4::Geant4TruthIncident::Geant4TruthIncident( const G4Step *step,
+                                               const ISF::ISFParticle& baseISP,
                                                AtlasDetDescr::AtlasRegion geoID,
                                                int numChildren,
                                                SecondaryTracksHelper &sHelper,
@@ -75,6 +78,7 @@ iGeant4::Geant4TruthIncident::Geant4TruthIncident( const G4Step *step,
   m_positionSet(false),
   m_position(),
   m_step(step),
+  m_baseISP(baseISP),
   m_sHelper( sHelper),
   m_eventInfo(eventInfo),
   m_childrenPrepared(false),
@@ -138,6 +142,11 @@ HepMC::GenParticle* iGeant4::Geant4TruthIncident::parentParticle() const {
   return hepParticle;
 }
 
+int iGeant4::Geant4TruthIncident::parentBCID() const { 
+  return m_baseISP.getBCID();
+}
+
+
 bool iGeant4::Geant4TruthIncident::parentSurvivesIncident() const { 
   const G4Track *track = m_step->GetTrack();
 
@@ -162,10 +171,12 @@ HepMC::GenParticle* iGeant4::Geant4TruthIncident::parentParticleAfterIncident(Ba
   if ( !m_parentParticleAfterIncident ) {
     // create new HepMC particle, using momentum and energy
     // from G4DynamicParticle (which should be equivalent to postStep)
-    m_parentParticleAfterIncident = convert(track, newBarcode, false);
+    m_parentParticleAfterIncident = convert(track);
     
     m_eventInfo->SetCurrentlyTraced( m_parentParticleAfterIncident );
     
+    m_parentParticleAfterIncident->suggest_barcode( newBarcode );
+
     // store (new) hepmc particle in track's UserInformation
     TrackHelper       tHelper(track);
     TrackInformation *tInfo = tHelper.GetTrackInformation();
@@ -259,7 +270,8 @@ HepMC::GenParticle* iGeant4::Geant4TruthIncident::childParticle(unsigned short i
   //     secondary could decay right away and create further particles which pass the
   //     truth strategies.
 
-  HepMC::GenParticle* hepParticle = convert( thisChildTrack , newBarcode , true );
+  HepMC::GenParticle* hepParticle = convert( thisChildTrack );
+  hepParticle->suggest_barcode( newBarcode );
 
   TrackHelper tHelper(thisChildTrack);
   TrackInformation *trackInfo = tHelper.GetTrackInformation();
@@ -290,7 +302,7 @@ bool iGeant4::Geant4TruthIncident::particleAlive(const G4Track *track) const {
 }
 
 
-HepMC::GenParticle* iGeant4::Geant4TruthIncident::convert(const G4Track *track, const int barcode, const bool secondary) const {
+HepMC::GenParticle* iGeant4::Geant4TruthIncident::convert(const G4Track *track) const {
 
   const G4ThreeVector & mom =  track->GetMomentum();
   const double energy =  track->GetTotalEnergy();
@@ -300,21 +312,6 @@ HepMC::GenParticle* iGeant4::Geant4TruthIncident::convert(const G4Track *track,
   int status = 1; // stable particle not decayed by EventGenerator
   HepMC::GenParticle* newParticle = new HepMC::GenParticle(fourMomentum, pdgCode, status);
 
-  // This should be a *secondary* track.  If it has a primary, it was a decay and 
-  //  we are running with quasi-stable particle simulation.  Note that if the primary
-  //  track is passed in as a secondary that survived the interaction, then this was
-  //  *not* a decay and we should not treat it in this way
-  if (secondary &&
-      track->GetDynamicParticle() &&
-      track->GetDynamicParticle()->GetPrimaryParticle() &&
-      track->GetDynamicParticle()->GetPrimaryParticle()->GetUserInformation()){
-    // Then the new particle should use the same barcode as the old one!!
-    PrimaryParticleInformation* ppi = dynamic_cast<PrimaryParticleInformation*>( track->GetDynamicParticle()->GetPrimaryParticle()->GetUserInformation() );
-    newParticle->suggest_barcode( ppi->GetParticleBarcode() );
-  } else {
-    newParticle->suggest_barcode( barcode );
-  }
-
   return newParticle;
 }
 
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/Geant4TruthIncident.h b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/Geant4TruthIncident.h
index 9379e9931de674a05e373db841046f486dd027dc..a32aaab9a9dd644e5c95c8a522506c98f146b9fd 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/Geant4TruthIncident.h
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/Geant4TruthIncident.h
@@ -21,13 +21,19 @@
 // HepMC includes
 #include "HepMC/SimpleVector.h"
 
+
+// forward declarations
 class G4Step;
 class G4Track;
 class EventInformation;
 
-namespace iGeant4 {
+namespace ISF {
+  class ISFParticle;
+}
 
 
+namespace iGeant4 {
+
   /** @class Geant4TruthIncident
 
       ISF_Geant4 specific implementation of the ISF::ITruthIncident
@@ -43,6 +49,7 @@ namespace iGeant4 {
   class Geant4TruthIncident : public ISF::ITruthIncident {
     public:
       Geant4TruthIncident( const G4Step*,
+                           const ISF::ISFParticle& baseISP,
                            AtlasDetDescr::AtlasRegion geoID,
                            int numChildren,
                            SecondaryTracksHelper& sHelper,
@@ -67,6 +74,8 @@ namespace iGeant4 {
       int                       parentPdgCode() const override final;
       /** Return the barcode of the parent particle */
       Barcode::ParticleBarcode  parentBarcode() const override final;
+      /** Return the bunch-crossing identifier of the parent particle */
+      int                       parentBCID() const override final;
       /** Return a boolean whether or not the parent particle survives the incident */
       bool                      parentSurvivesIncident() const override final;
       /** Return the parent particle after the TruthIncident vertex (and give
@@ -103,11 +112,12 @@ namespace iGeant4 {
       /** check if the given G4Track represents a particle that is alive in ISF or ISF-G4 */
       inline bool particleAlive(const G4Track *track) const;
 
-      HepMC::GenParticle* convert(const G4Track *particle, const int barcode, const bool secondary) const; //*AS* might be put static
+      HepMC::GenParticle* convert(const G4Track *particle) const; //*AS* might be put static
 
       mutable bool                  m_positionSet;
       mutable HepMC::FourVector     m_position;
       const G4Step*                 m_step;
+      const ISF::ISFParticle&       m_baseISP;
 
       SecondaryTracksHelper&        m_sHelper;
       EventInformation*             m_eventInfo;
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFG4Helpers.cxx b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFG4Helpers.cxx
index 23dc8941205f09244daff616dd4ef08a11d005ed..94ab5875d476acb817ffd6d9812b3e1c01646bd9 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFG4Helpers.cxx
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFG4Helpers.cxx
@@ -44,18 +44,6 @@ ISF::ISFParticle*
 iGeant4::ISFG4Helpers::convertG4TrackToISFParticle(const G4Track& aTrack,
                                                    const ISF::ISFParticle& parent,
                                                    ISF::TruthBinding* truth)
-{
-  const ISF::DetRegionSvcIDPair regionSimSvcPair( parent.nextGeoID(), parent.nextSimID() );
-  return ISFG4Helpers::convertG4TrackToISFParticle( aTrack,
-                                                    regionSimSvcPair,
-                                                    truth );
-}
-
-/** convert the given G4Track into an ISFParticle */
-ISF::ISFParticle*
-iGeant4::ISFG4Helpers::convertG4TrackToISFParticle(const G4Track& aTrack,
-                                                   const ISF::DetRegionSvcIDPair& regionSimSvcPair,
-                                                   ISF::TruthBinding* truth)
 {
   const G4ThreeVector& g4pos = aTrack.GetPosition();
   const double         gTime = aTrack.GetGlobalTime();
@@ -78,7 +66,7 @@ iGeant4::ISFG4Helpers::convertG4TrackToISFParticle(const G4Track& aTrack,
                                                 charge,
                                                 pdgID,
                                                 gTime,
-                                                regionSimSvcPair,
+                                                parent,
                                                 barcode,
                                                 truth
                                                );
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFG4Helpers.h b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFG4Helpers.h
index ace5404e032f585488fb8a3a5d3cf66110815ede..14c4add800967c278983c79a00616b564788c1e4 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFG4Helpers.h
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFG4Helpers.h
@@ -6,7 +6,7 @@
 #define ISF_GEANT4TOOLS_ISFG4HELPERS_H
 
 // Barcode includes
-#include "BarcodeInterfaces/Barcode.h"
+#include "BarcodeEvent/Barcode.h"
 
 // ISF Includes
 #include "ISF_Event/ISFParticle.h"
@@ -41,11 +41,6 @@ namespace iGeant4 {
                                                          const ISF::ISFParticle& parent,
                                                          ISF::TruthBinding* truth = nullptr);
 
-    /** convert the given G4Track into an ISFParticle */
-    static ISF::ISFParticle* convertG4TrackToISFParticle(const G4Track& aTrack,
-                                                         const ISF::DetRegionSvcIDPair& regionSimSvcPair,
-                                                         ISF::TruthBinding* truth = nullptr);
-
     /** return a valid UserInformation object of the G4Track for use within the ISF */
     static VTrackInformation* getISFTrackInfo(const G4Track& aTrack);
 
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFTrajectory.cxx b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFTrajectory.cxx
index 511ce7d3f36709af524f93c0cff629b2233c926e..3e64d72e4ef2f1f5d0b582387cb782da4c93a436 100755
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFTrajectory.cxx
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/ISFTrajectory.cxx
@@ -102,7 +102,7 @@ void iGeant4::ISFTrajectory::AppendStep(const G4Step* aStep)
     AtlasDetDescr::AtlasRegion geoID = baseIsp->nextGeoID();
 
     auto* eventInfo = ISFG4Helpers::getEventInformation();
-    iGeant4::Geant4TruthIncident truth(aStep, geoID, numSecondaries, m_sHelper, eventInfo);
+    iGeant4::Geant4TruthIncident truth(aStep, *baseIsp, geoID, numSecondaries, m_sHelper, eventInfo);
 
     if (m_truthRecordSvcQuick) {
       m_truthRecordSvcQuick->registerTruthIncident(truth);
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/PhysicsValidationUserAction.cxx b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/PhysicsValidationUserAction.cxx
index e7608fa721fbcf666784bb1b67418dae6e439b31..8eacfbe62ae5c0b2afbe155bebdcde7bbbaaba51 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/PhysicsValidationUserAction.cxx
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/PhysicsValidationUserAction.cxx
@@ -365,7 +365,9 @@ void iGeant4::PhysicsValidationUserAction::Step(const G4Step* aStep)
     if (process->GetProcessSubType()==3 ) m_radloss+=eloss;
 
     EventInformation* eventInfo = static_cast<EventInformation*> (G4EventManager::GetEventManager()->GetConstCurrentEvent()->GetUserInformation());
-    iGeant4::Geant4TruthIncident truth( aStep, geoID, m_sHelper.NrOfNewSecondaries(), m_sHelper, eventInfo);
+    VTrackInformation * trackInfo = static_cast<VTrackInformation*>(track->GetUserInformation());
+    const auto baseISP = const_cast<ISF::ISFParticle*>( trackInfo->GetBaseISFParticle() );
+    iGeant4::Geant4TruthIncident truth( aStep, *baseISP, geoID, m_sHelper.NrOfNewSecondaries(), m_sHelper, eventInfo);
     unsigned int nSec = truth.numberOfChildren();
     if (nSec>0 || track->GetTrackStatus()!=fAlive ) {      // save interaction info
       //std::cout <<"interaction:"<< process->GetProcessSubType() <<":"<<nSec<< std::endl;
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TrackProcessorUserActionFullG4.cxx b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TrackProcessorUserActionFullG4.cxx
index d38fb36a681f8c1136a832a13343fb07e4d81ca1..a18f6f7a91e32d8fd2de2cd398888dd05e55f9f7 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TrackProcessorUserActionFullG4.cxx
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TrackProcessorUserActionFullG4.cxx
@@ -144,12 +144,13 @@ void iGeant4::TrackProcessorUserActionFullG4::ISFSteppingAction(const G4Step* aS
 
       AtlasDetDescr::AtlasRegion nextGeoID = nextGeoId(aStep);
 
-      const ISF::DetRegionSvcIDPair detRegionSimSvcPair(nextGeoID, ISF::fUndefinedSimID );
-
       ISF::ISFParticle *tmpISP = ::iGeant4::ISFG4Helpers::convertG4TrackToISFParticle( *aTrack,
-                                                                            detRegionSimSvcPair,
+                                                                            *curISP,
                                                                             nullptr // truthBinding
                                                                             );
+      tmpISP->setNextGeoID(nextGeoID);
+      tmpISP->setNextSimID(ISF::fUndefinedSimID);
+
       auto generationZeroBarcode = tHelp.GetBarcode();
       tmpISP->setBarcode(generationZeroBarcode);
 
@@ -456,12 +457,13 @@ namespace G4UA{
 
           AtlasDetDescr::AtlasRegion nextGeoID = nextGeoId(aStep);
 
-          const ISF::DetRegionSvcIDPair detRegionSimSvcPair(nextGeoID, ISF::fUndefinedSimID );
-
           ISF::ISFParticle *tmpISP = ::iGeant4::ISFG4Helpers::convertG4TrackToISFParticle( *aTrack,
-                                                                                detRegionSimSvcPair,
+                                                                                *curISP,
                                                                                 nullptr // truthBinding
                                                                                 );
+          tmpISP->setNextGeoID(nextGeoID);
+          tmpISP->setNextSimID(ISF::fUndefinedSimID);
+
           auto generationZeroBarcode = tHelp.GetBarcode();
           tmpISP->setBarcode(generationZeroBarcode);
 
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TransportTool.cxx b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TransportTool.cxx
index 61b643a5752fb7d438afd076d8bf3256217d25ab..b057bb45447766f4fd19ee1e40d0b174dbb5f4cd 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TransportTool.cxx
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TransportTool.cxx
@@ -436,10 +436,6 @@ G4PrimaryParticle* iGeant4::G4TransportTool::getPrimaryParticle(const HepMC::Gen
     particle->SetProperTime( (lv1-lv0).mag()/CLHEP::c_light );
   }
 
-  // Set the user information for this primary to point to the HepMcParticleLink...
-  PrimaryParticleInformation* ppi = new PrimaryParticleInformation(&gp);
-  particle->SetUserInformation(ppi);
-
   return particle;
 }
 
diff --git a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TransportTool.h b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TransportTool.h
index 3ed8f6a42ede8997fb8b06cae2b96266207519d4..6f46f5377c72c61299f78adf4218d5597d4b2bd0 100644
--- a/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TransportTool.h
+++ b/Simulation/ISF/ISF_Geant4/ISF_Geant4Tools/src/TransportTool.h
@@ -15,7 +15,7 @@
 #include "GaudiKernel/ServiceHandle.h"
 #include "AthenaKernel/IAtRndmGenSvc.h"
 
-#include "BarcodeInterfaces/Barcode.h"
+#include "BarcodeEvent/Barcode.h"
 
 #include "ISF_Geant4Interfaces/ITransportTool.h"
 #include "ISF_Geant4Tools/IG4RunManagerHelper.h"