diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6370f91f5351306512031f993b5715b1b5986c33..58db051142dcca39388325532def8b12ba333d2f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -26,7 +26,7 @@ build_image:
     - cd build
     - set +e && source ${ATLAS_LOCAL_ROOT_BASE}/user/atlasLocalSetup.sh; set -e
     - set +e && asetup --input=../../calypso/asetup.faser master,latest,Athena; set -e
-    - cmake  ../../calypso
+    - cmake  -DATLAS_PYTHON_CHECKER="" ../../calypso
     - make -j
   artifacts:
     paths:
diff --git a/Control/CalypsoCommon/CMakeLists.txt b/Control/CalypsoCommon/CMakeLists.txt
index 52a305d7e88c8a75090067e211911f4f87201acc..c8a782388b2773e7b97cb30a6776e062f4a2eb7e 100644
--- a/Control/CalypsoCommon/CMakeLists.txt
+++ b/Control/CalypsoCommon/CMakeLists.txt
@@ -13,7 +13,7 @@ atlas_depends_on_subdirs( PRIVATE
 find_package( six )
 
 # Install files from the package:
-atlas_install_python_modules( python/*.py python/Utils )
+atlas_install_python_modules( python/*.py )
 #atlas_install_joboptions( share/Preparation.py share/Execution.py share/Atlas.UnixStandardJob.py test/*.py 
 #                          share/zeroJO.py share/Atlas_Gen.UnixStandardJob.py share/MemTraceInclude.py share/runbatch.py)
 #atlas_install_scripts( share/athena.py share/athena3.py share/athena_preload.sh share/chappy.py share/find_cfg_dups.py share/test_cfg_pickling.py )
diff --git a/README.md b/README.md
index d2e2cc4cfdd11a35571ea372d32f1a3dec7d61af..5eaf819455b2824cf771ceaad3a0b2bd9db9b62b 100644
--- a/README.md
+++ b/README.md
@@ -15,6 +15,8 @@ asetup --input=calypso/asetup.faser master,latest,Athena
 mkdir build
 cd build
 #build calypso
-cmake -DCMAKE_INSTALL_PREFIX=../run ../calypso ; make ; make install
+cmake -DCMAKE_INSTALL_PREFIX=../run -DATLAS_PYTHON_CHECKER="" ../calypso ; make ; make install
+
+The ATLAS_PYTHON_CHECKER parameter to the cmake command is a temporary workaround for a problem with Flake
 
 It can be convenient to alias the "asetup --input=calypso/asetup.faser" to something like "fsetup"
\ No newline at end of file
diff --git a/Simulation/G4Faser/G4FaserAlg/CMakeLists.txt b/Simulation/G4Faser/G4FaserAlg/CMakeLists.txt
index 3b55f60e4b02b3d9db944a676d9971128a8a5041..1d48d115fdd52c6b0125ffa5b269c53fcc4c000b 100644
--- a/Simulation/G4Faser/G4FaserAlg/CMakeLists.txt
+++ b/Simulation/G4Faser/G4FaserAlg/CMakeLists.txt
@@ -16,6 +16,7 @@ atlas_depends_on_subdirs( PUBLIC
                           DetectorDescription/GeoModel/GeoModelInterfaces
                           Event/EventInfo
                           Generators/GeneratorObjects
+                          Generators/AtlasHepMC
                           Simulation/G4Atlas/G4AtlasAlg
                           Simulation/G4Atlas/G4AtlasInterfaces
                           Simulation/G4Sim/FaserMCTruthBase
@@ -25,7 +26,6 @@ atlas_depends_on_subdirs( PUBLIC
 # External dependencies:
 find_package( CLHEP )
 find_package( Geant4 )
-find_package( HepMC )
 find_package( XercesC )
 find_package( Eigen )
 
@@ -35,14 +35,14 @@ atlas_add_library( G4FaserAlgLib
                      src/*.cxx
                      NO_PUBLIC_HEADERS
                      INCLUDE_DIRS ${GEANT4_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${GEANT4_LIBRARIES} ${EIGEN_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPMC_LIBRARIES} G4AtlasAlgLib AthenaBaseComps AthenaKernel GaudiKernel G4AtlasInterfaces SGTools StoreGateLib SGtests EventInfo GeneratorObjects FaserMCTruthBaseLib )
+                     LINK_LIBRARIES ${GEANT4_LIBRARIES} ${EIGEN_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} AtlasHepMCLib G4AtlasAlgLib AthenaBaseComps AthenaKernel GaudiKernel G4AtlasInterfaces SGTools StoreGateLib SGtests EventInfo GeneratorObjects GeoModelInterfaces FaserISF_InterfacesLib FaserMCTruthBaseLib )
 
 # Component(s) in the package:
 atlas_add_component( G4FaserAlg
                      src/components/*.cxx
                      NO_PUBLIC_HEADERS
                      INCLUDE_DIRS ${GEANT4_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${GEANT4_LIBRARIES} ${EIGEN_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPMC_LIBRARIES} AthenaBaseComps AthenaKernel GaudiKernel G4AtlasInterfaces G4FaserAlgLib G4AtlasAlgLib SGTools StoreGateLib SGtests EventInfo GeneratorObjects FaserMCTruthBaseLib )
+                     LINK_LIBRARIES ${GEANT4_LIBRARIES} ${EIGEN_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} AtlasHepMCLib AthenaBaseComps AthenaKernel GaudiKernel G4AtlasInterfaces G4FaserAlgLib G4AtlasAlgLib SGTools StoreGateLib SGtests EventInfo GeneratorObjects FaserMCTruthBaseLib )
 
 atlas_add_test( G4FaserAlgConfig_Test
                 SCRIPT python ${CMAKE_CURRENT_SOURCE_DIR}/test/runG4.py
diff --git a/Simulation/G4Faser/G4FaserServices/CMakeLists.txt b/Simulation/G4Faser/G4FaserServices/CMakeLists.txt
index 0a6977360f27621163e5efd4d193ed18f713e333..db40497229de22b6c82f86cea0f698666eaa5fa6 100644
--- a/Simulation/G4Faser/G4FaserServices/CMakeLists.txt
+++ b/Simulation/G4Faser/G4FaserServices/CMakeLists.txt
@@ -10,32 +10,24 @@ atlas_depends_on_subdirs( PUBLIC
                           GaudiKernel
                           PRIVATE
                           Control/AthenaBaseComps
-                          Control/StoreGate
-                          DetectorDescription/AtlasDetDescr
+                          MagneticField/MagFieldInterfaces
                           Generators/GeneratorObjects
-                          Generators/TruthUtils
-                          Simulation/G4Sim/FaserMCTruth
-                          Simulation/G4Sim/SimHelpers
-                          Simulation/G4Sim/TrackRecord
-                          Simulation/ISF/ISF_Core/FaserISF_Event
-                          Simulation/ISF/ISF_Core/FaserISF_Interfaces
-                          Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Interfaces
-                          Tools/PmbCxxUtils )
+                          Simulation/G4Atlas/G4AtlasInterfaces
+                          Simulation/G4Atlas/G4AtlasTools
+                          Simulation/G4Utilities/G4PhysicsLists)
 
 # External dependencies:
 find_package( CLHEP )
-find_package( Eigen )
 find_package( Geant4 )
-find_package( HepMC )
-find_package( HepPDT )
-find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread )
+find_package( TBB )
+find_package( XercesC)
 
 # Component(s) in the package:
 #atlas_add_component( G4FaserServices
 #                     src/*.cxx
 #                     src/components/*.cxx
-#                     INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${GEANT4_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPPDT_INCLUDE_DIRS}
-#                     LINK_LIBRARIES ${ROOT_LIBRARIES} ${GEANT4_LIBRARIES} ${HEPMC_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPPDT_LIBRARIES} GaudiKernel AthenaBaseComps StoreGateLib SGtests GeneratorObjects FaserMCTruth SimHelpers FaserISF_Event FaserISF_Interfaces PmbCxxUtils TruthUtils )
+#                     INCLUDE_DIRS ${GEANT4_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${TBB_INCLUDE_DIRS}
+#                     LINK_LIBRARIES ${GEANT4_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} ${TBB_LIBRARIES} GaudiKernel AthenaBaseComps G4AtlasInterfaces G4AtlasToolsLib G4PhysicsLists MagFieldInterfaces )
 
 
 # Install files from the package:
diff --git a/Simulation/G4Sim/FaserMCTruth/CMakeLists.txt b/Simulation/G4Sim/FaserMCTruth/CMakeLists.txt
index 0b51decf5ec3e222c46e67cc74bf17f2ca438a04..1f5cff9b0e90c30227a4aa0b5fbcc97b2289e63b 100644
--- a/Simulation/G4Sim/FaserMCTruth/CMakeLists.txt
+++ b/Simulation/G4Sim/FaserMCTruth/CMakeLists.txt
@@ -8,6 +8,7 @@ atlas_subdir( FaserMCTruth )
 # Declare the package's dependencies:
 atlas_depends_on_subdirs( PUBLIC
                           Control/AthenaKernel
+                          Generators/AtlasHepMC
                           Generators/GeneratorObjects
                           PRIVATE
                           Simulation/ISF/ISF_Core/FaserISF_Event
@@ -17,7 +18,6 @@ atlas_depends_on_subdirs( PUBLIC
 # External dependencies:
 find_package( CLHEP )
 find_package( Geant4 )
-find_package( HepMC )
 find_package( XercesC )
 
 # Component(s) in the package:
@@ -26,5 +26,5 @@ atlas_add_library( FaserMCTruth
                    PUBLIC_HEADERS FaserMCTruth
                    INCLUDE_DIRS ${GEANT4_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS}
                    DEFINITIONS ${CLHEP_DEFINITIONS}
-                   LINK_LIBRARIES ${GEANT4_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPMC_LIBRARIES} AthenaKernel GeneratorObjects
+                   LINK_LIBRARIES ${GEANT4_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} AtlasHepMCLib AthenaKernel GeneratorObjects
                    PRIVATE_LINK_LIBRARIES ISF_Event FaserISF_Event SimHelpers )
diff --git a/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/FaserEventInformation.h b/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/FaserEventInformation.h
index 0ef0b9c6e84bedd03f9d829844d5bec54c95e467..8872cb45483c75aee16f9e09a49fb713a82a0308 100644
--- a/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/FaserEventInformation.h
+++ b/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/FaserEventInformation.h
@@ -5,7 +5,7 @@
 #ifndef FaserEventInformation_H
 #define FaserEventInformation_H
 
-#include "HepMC/GenEvent.h"
+#include "AtlasHepMC/GenEvent.h"
 #include "G4ThreeVector.hh"
 #include "G4VUserEventInformation.hh"
 
diff --git a/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/FaserPrimaryParticleInformation.h b/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/FaserPrimaryParticleInformation.h
index 535c8517d74424986e06040b5fa7d44321d29642..ca99344971a6fbb74e65e8a3478e4b3c242fbc03 100644
--- a/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/FaserPrimaryParticleInformation.h
+++ b/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/FaserPrimaryParticleInformation.h
@@ -6,7 +6,7 @@
 #define FaserPrimaryParticleInformation_H
 
 #include "G4VUserPrimaryParticleInformation.hh"
-#include "HepMC/GenEvent.h"
+#include "AtlasHepMC/GenEvent.h"
 
 namespace ISF {
   class FaserISFParticle;
diff --git a/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/TruthEvent.h b/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/TruthEvent.h
index 30142b631753fcd6420c70d92ba0c15b0263b2bc..d86c5e533d441aba23bb5a097e6913f5b2c99160 100644
--- a/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/TruthEvent.h
+++ b/Simulation/G4Sim/FaserMCTruth/FaserMCTruth/TruthEvent.h
@@ -5,7 +5,7 @@
 #ifndef TruthEvent_H
 #define TruthEvent_H
 
-#include "HepMC/GenEvent.h"
+#include "AtlasHepMC/GenEvent.h"
 #include "AthenaKernel/CLASS_DEF.h"
 
 typedef HepMC::GenEvent TruthEvent;
diff --git a/Simulation/G4Sim/FaserMCTruth/src/FaserTrackInformation.cxx b/Simulation/G4Sim/FaserMCTruth/src/FaserTrackInformation.cxx
index 3bd0d982c4ae0f8709a1f63b39db0b0fb87e0b3c..e6df0057db8d484f5bef6e1630404f9ba3fdaa65 100644
--- a/Simulation/G4Sim/FaserMCTruth/src/FaserTrackInformation.cxx
+++ b/Simulation/G4Sim/FaserMCTruth/src/FaserTrackInformation.cxx
@@ -3,7 +3,7 @@
 */
 
 #include "FaserMCTruth/FaserTrackInformation.h"
-#include "HepMC/GenEvent.h"
+#include "AtlasHepMC/GenEvent.h"
 
 FaserTrackInformation::FaserTrackInformation():m_regenerationNr(0),m_theParticle(0),m_theBaseISFParticle(0),m_returnedToISF(false)
 {
diff --git a/Simulation/G4Sim/FaserMCTruthBase/CMakeLists.txt b/Simulation/G4Sim/FaserMCTruthBase/CMakeLists.txt
index 6937f620b1b2d1c4ee644f192076a19b91a0424a..528338040e000e16e926b195afb991b5a6e36676 100644
--- a/Simulation/G4Sim/FaserMCTruthBase/CMakeLists.txt
+++ b/Simulation/G4Sim/FaserMCTruthBase/CMakeLists.txt
@@ -13,6 +13,7 @@ atlas_depends_on_subdirs( PUBLIC
                           Simulation/ISF/ISF_Core/ISF_Interfaces
                           Simulation/ISF/ISF_Core/FaserISF_Interfaces
                           PRIVATE
+                          Generators/AtlasHepMC
                           Control/AthenaBaseComps
                           Control/StoreGate
                           Simulation/G4Atlas/G4AtlasInterfaces
@@ -25,30 +26,29 @@ atlas_depends_on_subdirs( PUBLIC
 # External dependencies:
 find_package( CLHEP )
 find_package( Geant4 )
-find_package( HepMC )
 find_package( XercesC )
 
 # Component(s) in the package:
 atlas_add_library( FaserMCTruthBaseLib
                    src/*.cxx
                    PUBLIC_HEADERS FaserMCTruthBase
-                   INCLUDE_DIRS ${GEANT4_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS}
+                   INCLUDE_DIRS ${GEANT4_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS}
                    DEFINITIONS ${CLHEP_DEFINITIONS}
-                   LINK_LIBRARIES ${GEANT4_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPMC_LIBRARIES} AthenaKernel GaudiKernel StoreGateLib SGtests G4AtlasToolsLib
+                   LINK_LIBRARIES ${GEANT4_LIBRARIES} ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} AtlasHepMCLib AthenaKernel GaudiKernel StoreGateLib SGtests G4AtlasToolsLib
                    PRIVATE_LINK_LIBRARIES AthenaBaseComps
-                   G4AtlasInterfaces FaserMCTruth SimHelpers ISF_Interfaces FaserISF_Interfaces
+                   G4AtlasInterfaces FaserMCTruth SimHelpers ISF_InterfacesLib FaserISF_InterfacesLib
                    FaserDetDescr FaserISF_Geant4Event
                  )
 
 #atlas_add_component( FaserMCTruthBase
 #                     src/components/*.cxx
-#                     INCLUDE_DIRS ${GEANT4_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS}
+#                     INCLUDE_DIRS ${GEANT4_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} 
 #                     LINK_LIBRARIES ${GEANT4_LIBRARIES}
 #                     ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES}
-#                     ${HEPMC_LIBRARIES} AthenaKernel GaudiKernel
+#                     AtlasHepMCLib AthenaKernel GaudiKernel
 #                     AthenaBaseComps StoreGateLib SGtests
 #                     G4AtlasInterfaces G4AtlasToolsLib FaserMCTruth
-#                     SimHelpers ISF_Interfaces FaserISF_Interfaces
+#                     SimHelpers ISF_InterfacesLib FaserISF_InterfacesLib
 #                     FaserDetDescr FaserMCTruthBaseLib
 #                     FaserISF_Geant4Event )
 
diff --git a/Simulation/ISF/ISF_Core/FaserISF_Event/src/FaserParticleHelper.cxx b/Simulation/ISF/ISF_Core/FaserISF_Event/src/FaserParticleHelper.cxx
index a255fb0e79b2b8d50ff4b7b422425d9c48d4fb0f..a6ae7d43a5a1bdc8cd44976edd1fc33bd2dc25bb 100644
--- a/Simulation/ISF/ISF_Core/FaserISF_Event/src/FaserParticleHelper.cxx
+++ b/Simulation/ISF/ISF_Core/FaserISF_Event/src/FaserParticleHelper.cxx
@@ -10,9 +10,9 @@
 #include "FaserISF_Event/FaserParticleHelper.h"
 
 // HepMC includes
-#include "HepMC/GenParticle.h"
-#include "HepMC/Flow.h"
-#include "HepMC/SimpleVector.h" // HepMC::FourVector
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/Flow.h"
+#include "AtlasHepMC/SimpleVector.h" // HepMC::FourVector
 
 // ISF includes
 #include "FaserISF_Event/FaserISFParticle.h"
diff --git a/Simulation/ISF/ISF_Core/FaserISF_Interfaces/CMakeLists.txt b/Simulation/ISF/ISF_Core/FaserISF_Interfaces/CMakeLists.txt
index 901c6a10fdbc547e212fd0709728c93fe6c460f5..10af6070095dad3cec30b2868cd6fc9e17cef801 100644
--- a/Simulation/ISF/ISF_Core/FaserISF_Interfaces/CMakeLists.txt
+++ b/Simulation/ISF/ISF_Core/FaserISF_Interfaces/CMakeLists.txt
@@ -25,10 +25,10 @@ find_package( CLHEP )
 find_package( Eigen )
 
 # Component(s) in the package:
-atlas_add_library( FaserISF_Interfaces
+atlas_add_library( FaserISF_InterfacesLib
                    src/*.cxx
                    PUBLIC_HEADERS FaserISF_Interfaces
                    INCLUDE_DIRS ${CLHEP_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS}
                    DEFINITIONS ${CLHEP_DEFINITIONS}
-                   LINK_LIBRARIES ${CLHEP_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaKernel FaserDetDescr GeoPrimitives GaudiKernel GeneratorObjects FaserISF_Event ISF_Event StoreGateLib SGtests )
+                   LINK_LIBRARIES ${CLHEP_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaKernel FaserDetDescr GeoPrimitives GaudiKernel GeneratorObjects FaserISF_Event ISF_Event StoreGateLib SGtests TrackRecordLib )
 
diff --git a/Simulation/ISF/ISF_Core/FaserISF_Services/CMakeLists.txt b/Simulation/ISF/ISF_Core/FaserISF_Services/CMakeLists.txt
index 67cdc047c221481c5c8f04d11a110ad29de035ba..bbe952c4aa87b3a408cee6f2f02cb45f98531732 100644
--- a/Simulation/ISF/ISF_Core/FaserISF_Services/CMakeLists.txt
+++ b/Simulation/ISF/ISF_Core/FaserISF_Services/CMakeLists.txt
@@ -9,10 +9,11 @@ atlas_subdir( FaserISF_Services )
 atlas_depends_on_subdirs( PUBLIC
                           GaudiKernel
                           PRIVATE
-                          AtlasGeometryCommon/SubDetectorEnvelopes
+                          #AtlasGeometryCommon/SubDetectorEnvelopes
                           Control/AthenaBaseComps
                           Control/StoreGate
                           DetectorDescription/FaserDetDescr
+                          Generators/AtlasHepMC
                           Generators/GeneratorObjects
                           Generators/TruthUtils
                           Tracker/TrackerSimEvent
@@ -35,7 +36,6 @@ atlas_depends_on_subdirs( PUBLIC
 find_package( CLHEP )
 find_package( Eigen )
 find_package( Geant4 )
-find_package( HepMC )
 find_package( HepPDT )
 #find_package( GTest )
 #find_package( GMock )
@@ -47,8 +47,8 @@ find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread )
 atlas_add_component( FaserISF_Services
                      src/*.cxx
                      src/components/*.cxx
-                     INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${GEANT4_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPPDT_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${ROOT_LIBRARIES} ${GEANT4_LIBRARIES} ${HEPMC_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPPDT_LIBRARIES} GaudiKernel ScintSimEvent AthenaBaseComps StoreGateLib SGtests FaserDetDescr GeneratorObjects TrackerSimEvent G4AtlasInterfaces FaserMCTruth SimHelpers FaserISF_Event ISF_Event FaserISF_Interfaces ISF_Interfaces PmbCxxUtils TruthUtils )
+                     INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${GEANT4_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPPDT_INCLUDE_DIRS}
+                     LINK_LIBRARIES ${ROOT_LIBRARIES} ${GEANT4_LIBRARIES} AtlasHepMCLib ${CLHEP_LIBRARIES} ${HEPPDT_LIBRARIES} GaudiKernel BarcodeInterfacesLib ScintSimEvent AthenaBaseComps StoreGateLib SGtests FaserDetDescr GeneratorObjects TrackerSimEvent G4AtlasInterfaces FaserMCTruth SimHelpers FaserISF_Event ISF_Event FaserISF_InterfacesLib ISF_InterfacesLib PmbCxxUtils TruthUtils )
 
 #atlas_add_test( FaserTruthSvc_test
 #                SOURCES
diff --git a/Simulation/ISF/ISF_Core/FaserISF_Services/src/FaserInputConverter.cxx b/Simulation/ISF/ISF_Core/FaserISF_Services/src/FaserInputConverter.cxx
index da6cfd0fa4b600b44fc248ba6626c5f162c16ed6..77222a4cb81a30021aa1b10a4070a51cb613625d 100644
--- a/Simulation/ISF/ISF_Core/FaserISF_Services/src/FaserInputConverter.cxx
+++ b/Simulation/ISF/ISF_Core/FaserISF_Services/src/FaserInputConverter.cxx
@@ -40,8 +40,8 @@
 #include "G4LorentzVector.hh"
 #include "G4TransportationManager.hh"
 // HepMC includes
-#include "HepMC/GenParticle.h"
-#include "HepMC/GenEvent.h"
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/GenEvent.h"
 // CLHEP includes
 #include "CLHEP/Geometry/Point3D.h"
 #include "CLHEP/Geometry/Vector3D.h"
diff --git a/Simulation/ISF/ISF_Core/FaserISF_Services/src/FaserTruthSvc.cxx b/Simulation/ISF/ISF_Core/FaserISF_Services/src/FaserTruthSvc.cxx
index 93dd6023b8c65646f796dfce2449953386bd3f58..83b502ce8dd1a5a382dc8e2d19c237a21a217671 100644
--- a/Simulation/ISF/ISF_Core/FaserISF_Services/src/FaserTruthSvc.cxx
+++ b/Simulation/ISF/ISF_Core/FaserISF_Services/src/FaserTruthSvc.cxx
@@ -21,10 +21,10 @@
 //
 #include "TruthUtils/HepMCHelpers.h" // for MC::findChildren(...)
 // HepMC includes
-#include "HepMC/SimpleVector.h"
-#include "HepMC/GenParticle.h"
-#include "HepMC/GenEvent.h"
-#include "HepMC/GenVertex.h"
+#include "AtlasHepMC/SimpleVector.h"
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/GenEvent.h"
+#include "AtlasHepMC/GenVertex.h"
 // CLHEP includes
 #include "CLHEP/Geometry/Point3D.h"
 
diff --git a/Simulation/ISF/ISF_Core/FaserISF_Services/test/FaserTruthSvc_test.cxx b/Simulation/ISF/ISF_Core/FaserISF_Services/test/FaserTruthSvc_test.cxx
index 4b0d2d282e3798833a72c9ab8bf51614584cd77e..4816ae7541a5d2b442a8373ea796a8d7665f1b6e 100644
--- a/Simulation/ISF/ISF_Core/FaserISF_Services/test/FaserTruthSvc_test.cxx
+++ b/Simulation/ISF/ISF_Core/FaserISF_Services/test/FaserTruthSvc_test.cxx
@@ -41,9 +41,9 @@
 #include "CLHEP/Units/SystemOfUnits.h"
 
 // HepMC
-#include "HepMC/GenParticle.h"
-#include "HepMC/GenVertex.h"
-#include "HepMC/GenEvent.h"
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/GenVertex.h"
+#include "AtlasHepMC/GenEvent.h"
 
 // STL includes
 #include <cstdlib> // quick_exit
diff --git a/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/CMakeLists.txt b/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/CMakeLists.txt
index 0922e0b155e9e32f36cc2e4da647460144e18025..65bd837290dbc56c978797884253911b432174d5 100644
--- a/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/CMakeLists.txt
+++ b/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/CMakeLists.txt
@@ -15,6 +15,7 @@ atlas_depends_on_subdirs( PUBLIC
                           Simulation/Barcode/BarcodeEvent
                           Simulation/G4Sim/FaserMCTruth
                           PRIVATE
+                          Generators/AtlasHepMC
                           DetectorDescription/GeoPrimitives )
 
 
@@ -23,7 +24,6 @@ atlas_depends_on_subdirs( PUBLIC
 find_package( CLHEP )
 find_package( Eigen )
 find_package( Geant4 )
-find_package( HepMC )
 find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread )
 find_package( XercesC )
 
@@ -33,12 +33,12 @@ atlas_add_library( FaserISF_Geant4Event
                    PUBLIC_HEADERS FaserISF_Geant4Event
                    INCLUDE_DIRS ${ROOT_INCLUDE_DIRS}
                    ${XERCESC_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS}
-                   ${HEPMC_INCLUDE_DIRS} ${GEANT4_INCLUDE_DIRS}
+                   ${GEANT4_INCLUDE_DIRS}
                    ${EIGEN_INCLUDE_DIRS}
                    LINK_LIBRARIES ${ROOT_LIBRARIES}
-                   ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPMC_LIBRARIES}
+                   ${XERCESC_LIBRARIES} ${CLHEP_LIBRARIES} AtlasHepMCLib
                    ${GEANT4_LIBRARIES} ${EIGEN_LIBRARIES} FaserISF_Event ISF_Event
-                   SimHelpers GeoPrimitives FaserMCTruth)
+                   FaserISF_InterfacesLib ISF_InterfacesLib SimHelpers GeoPrimitives FaserMCTruth)
 
 #atlas_add_test(SOURCES
 #               INCLUDE_DIRS ${CLHEP_INCLUDE_DIRS}
diff --git a/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/FaserISF_Geant4Event/FaserGeant4TruthIncident.h b/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/FaserISF_Geant4Event/FaserGeant4TruthIncident.h
index da2d10d8a4d3bc4ac01b7162b492bdd07beef2aa..33a527793ea84d4b3888a9dd67bc9af39611f2eb 100644
--- a/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/FaserISF_Geant4Event/FaserGeant4TruthIncident.h
+++ b/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/FaserISF_Geant4Event/FaserGeant4TruthIncident.h
@@ -12,7 +12,7 @@
 #include "FaserISF_Event/IFaserTruthIncident.h"
 
 // HepMC includes
-#include "HepMC/SimpleVector.h"
+#include "AtlasHepMC/SimpleVector.h"
 
 //Geant4 includes
 #include "G4ThreeVector.hh"
diff --git a/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/src/FaserGeant4TruthIncident.cxx b/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/src/FaserGeant4TruthIncident.cxx
index 293dc427258089b80541c3610f4e972c3347e8f6..3af3e2fab4c074c6269fbead4aa69190e57dd82a 100644
--- a/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/src/FaserGeant4TruthIncident.cxx
+++ b/Simulation/ISF/ISF_Geant4/FaserISF_Geant4Event/src/FaserGeant4TruthIncident.cxx
@@ -19,7 +19,7 @@
 #include "GaudiKernel/PhysicalConstants.h"
 
 // HepMC includes
-#include "HepMC/GenParticle.h"
+#include "AtlasHepMC/GenParticle.h"
 
 // Geant4 includes
 #include "G4Step.hh"
diff --git a/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/CMakeLists.txt b/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/CMakeLists.txt
index f533d839fd02232f6b56c07cd6f2b9eadfb421df..0433e79bc462aabbd72a58597c5e9aa0d076cccb 100644
--- a/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/CMakeLists.txt
+++ b/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/CMakeLists.txt
@@ -11,6 +11,7 @@ atlas_depends_on_subdirs( PUBLIC
                           PRIVATE
                           Control/AthenaBaseComps
                           DetectorDescription/FaserDetDescr
+                          Generators/AtlasHepMC
                           Generators/TruthUtils
                           Simulation/ISF/ISF_Core/FaserISF_Event
                           Simulation/ISF/ISF_Core/FaserISF_Interfaces
@@ -19,7 +20,6 @@ atlas_depends_on_subdirs( PUBLIC
                           Tools/PathResolver )
 
 # External dependencies:
-find_package( HepMC )
 find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread )
 find_package( GTest )
 find_package( GMock )
@@ -31,7 +31,7 @@ atlas_add_component( FaserISF_HepMC_Tools
                      src/*.cxx
                      src/components/*.cxx
                      INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${ROOT_LIBRARIES} ${HEPMC_LIBRARIES} GaudiKernel FaserDetDescr AthenaBaseComps TruthUtils FaserISF_Event FaserISF_Interfaces PathResolver )
+                     LINK_LIBRARIES ${ROOT_LIBRARIES} ${HEPMC_LIBRARIES} GaudiKernel FaserDetDescr AthenaBaseComps TruthUtils FaserISF_Event ISF_HepMC_Interfaces FaserISF_InterfacesLib PathResolver )
 
 # Tests
 #atlas_add_test( GenParticleGenericFilter_test
diff --git a/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/src/FaserGenParticleGenericFilter.cxx b/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/src/FaserGenParticleGenericFilter.cxx
index 85666c627a53270c43ecff8c29d10aa7c79db5da..64aefe71592b1054d99c9c7a9bd71c85aaa1ab00 100644
--- a/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/src/FaserGenParticleGenericFilter.cxx
+++ b/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/src/FaserGenParticleGenericFilter.cxx
@@ -13,8 +13,8 @@
 #include "FaserGenParticleGenericFilter.h"
 
 // HepMC includes
-#include "HepMC/GenParticle.h"
-#include "HepMC/GenVertex.h"
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/GenVertex.h"
 
 // STL includes
 #include <limits>
diff --git a/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/src/FaserGenParticlePositionFilter.cxx b/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/src/FaserGenParticlePositionFilter.cxx
index 7c710b64945c61bf8bea40ae26fb661d1facce1e..0c090db1c5e27cda737f1da5d4fe213a59eaf234 100644
--- a/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/src/FaserGenParticlePositionFilter.cxx
+++ b/Simulation/ISF/ISF_HepMC/FaserISF_HepMC_Tools/src/FaserGenParticlePositionFilter.cxx
@@ -10,8 +10,8 @@
 #include "FaserGenParticlePositionFilter.h"
 
 // HepMC includes
-#include "HepMC/GenParticle.h"
-#include "HepMC/GenVertex.h"
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/GenVertex.h"
 
 /** Constructor **/
 ISF::FaserGenParticlePositionFilter::FaserGenParticlePositionFilter( const std::string& t,
diff --git a/Tracker/TrackerAlignTools/TrackerAlignGenTools/CMakeLists.txt b/Tracker/TrackerAlignTools/TrackerAlignGenTools/CMakeLists.txt
index a3a2597dc74438050f24130ca5116fa152f5e4f2..2bc84f26b9e233e75108e55480876e7c63fc34a5 100644
--- a/Tracker/TrackerAlignTools/TrackerAlignGenTools/CMakeLists.txt
+++ b/Tracker/TrackerAlignTools/TrackerAlignGenTools/CMakeLists.txt
@@ -28,6 +28,7 @@ atlas_depends_on_subdirs( PUBLIC
                           DetectorDescription/FaserDetDescr
                           DetectorDescription/DetDescrCond/DetDescrConditions
                           GaudiKernel
+                          Generators/AtlasHepMC
                           Tracker/TrackerDetDescr/TrackerIdentifier
                           Tracker/TrackerDetDescr/TrackerReadoutGeometry
 #                          Simulation/G4Sim/TrackRecord
@@ -44,16 +45,15 @@ atlas_depends_on_subdirs( PUBLIC
 find_package( CLHEP )
 find_package( CORAL COMPONENTS CoralBase CoralKernel RelationalAccess )
 find_package( Eigen )
-find_package( HepMC )
 find_package( HepPDT )
 
 # Component(s) in the package:
 atlas_add_component( TrackerAlignGenTools
                      src/*.cxx
                      src/components/*.cxx
-                     INCLUDE_DIRS ${CORAL_INCLUDE_DIRS} ${HEPPDT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${HEPMC_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${CORAL_LIBRARIES} ${HEPPDT_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPMC_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaPoolUtilities GeoPrimitives Identifier EventPrimitives AthenaKernel AthContainers FaserDetDescr DetDescrConditions GaudiKernel TrackerIdentifier TrackerReadoutGeometry )
-#                     LINK_LIBRARIES ${CORAL_LIBRARIES} ${HEPPDT_LIBRARIES} ${CLHEP_LIBRARIES} ${HEPMC_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaPoolUtilities GeoPrimitives Identifier EventPrimitives InDetAlignTrkInfo InDetPrepRawData TrkEventPrimitives TrkEventUtils TrkTrack TrkExInterfaces TrkToolInterfaces AthenaKernel AthContainers AtlasDetDescr DetDescrConditions GaudiKernel InDetIdentifier InDetReadoutGeometry TrkMeasurementBase TrkParameters TrkPrepRawData TrkRIO_OnTrack TrkTrackSummary TrkTruthData TrkFitterInterfaces EventContainers )
+                     INCLUDE_DIRS ${CORAL_INCLUDE_DIRS} ${HEPPDT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS}
+                     LINK_LIBRARIES ${CORAL_LIBRARIES} ${HEPPDT_LIBRARIES} ${CLHEP_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaPoolUtilities AtlasHepMCLib GeoPrimitives Identifier EventPrimitives AthenaKernel AthContainers FaserDetDescr DetDescrConditions GaudiKernel TrackerIdentifier TrackerReadoutGeometry )
+#                     LINK_LIBRARIES ${CORAL_LIBRARIES} ${HEPPDT_LIBRARIES} ${CLHEP_LIBRARIES} ${EIGEN_LIBRARIES} AthenaBaseComps AthenaPoolUtilities AtlasHepMCLib GeoPrimitives Identifier EventPrimitives InDetAlignTrkInfo InDetPrepRawData TrkEventPrimitives TrkEventUtils TrkTrack TrkExInterfaces TrkToolInterfaces AthenaKernel AthContainers AtlasDetDescr DetDescrConditions GaudiKernel InDetIdentifier InDetReadoutGeometry TrkMeasurementBase TrkParameters TrkPrepRawData TrkRIO_OnTrack TrkTrackSummary TrkTruthData TrkFitterInterfaces EventContainers )
 
 # Install files from the package:
 atlas_install_headers( TrackerAlignGenTools )
diff --git a/graphics/VTI12/VTI12Systems/VTI12TrackSystems/CMakeLists.txt b/graphics/VTI12/VTI12Systems/VTI12TrackSystems/CMakeLists.txt
index 578bdd147f0026ca323589539781e92f15d9e031..3c58b6fe6dab6c10852cc323ef278d66cf87fc00 100644
--- a/graphics/VTI12/VTI12Systems/VTI12TrackSystems/CMakeLists.txt
+++ b/graphics/VTI12/VTI12Systems/VTI12TrackSystems/CMakeLists.txt
@@ -13,6 +13,7 @@ atlas_depends_on_subdirs(
    DetectorDescription/Identifier
 #   Event/xAOD/xAODTracking
    GaudiKernel
+   Generators/AtlasHepMC
    Generators/GeneratorObjects
    Simulation/G4Sim/TrackRecord
    Tracking/TrkDetDescr/TrkDetDescrInterfaces
@@ -57,7 +58,6 @@ atlas_depends_on_subdirs(
 # External dependencies:
 find_package( CLHEP )
 find_package( Coin3D )
-find_package( HepMC )
 find_package( Qt5 COMPONENTS Core Gui Widgets  )
 find_package( GeoModelCore )
 
@@ -71,14 +71,14 @@ set( CMAKE_AUTOMOC TRUE )
 atlas_add_library( VTI12TrackSystems VTI12TrackSystems/*.h src/*.cxx
    PUBLIC_HEADERS VTI12TrackSystems
    PRIVATE_INCLUDE_DIRS ${COIN3D_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS}
-   ${HEPMC_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR}
+   ${CMAKE_CURRENT_BINARY_DIR}
    LINK_LIBRARIES ${GEOMODEL_LIBRARIES} GeoPrimitives Identifier 
    #xAODTracking
    GaudiKernel GeneratorObjects TrkDetDescrInterfaces TrkSurfaces
    TrkEventPrimitives TrkParameters VP1Base VTI12Utils StoreGateLib SGtests
    Qt5::Core Qt5::Gui
    PRIVATE_LINK_LIBRARIES ${COIN3D_LIBRARIES} ${CLHEP_LIBRARIES}
-   ${HEPMC_LIBRARIES} AthContainers FaserDetDescr EventPrimitives
+   AtlasHepMCLib AthContainers FaserDetDescr EventPrimitives
    ScintIdentifier ScintSimEvent ScintReadoutGeometry
    TrackerIdentifier TrackerReadoutGeometry TrackerSimEvent
    #InDetPrepRawData InDetRIO_OnTrack
diff --git a/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/AscObj_TruthPoint.cxx b/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/AscObj_TruthPoint.cxx
index 29b651441fd5cae38e26c0872877dc3a434fed7f..e865f1dafd9bf080b49466a37822e4ba4bc07fa2 100644
--- a/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/AscObj_TruthPoint.cxx
+++ b/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/AscObj_TruthPoint.cxx
@@ -15,8 +15,8 @@
 #include "VTI12TrackSystems/AscObj_TruthPoint.h"
 #include "VTI12TrackSystems/SimHitHandleBase.h"
 #include "VP1Base/VP1Msg.h"
-#include "HepMC/GenParticle.h"
-#include "HepMC/GenVertex.h"
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/GenVertex.h"
 
 // Eigen migration
 //#include "TrkEventPrimitives/GlobalPosition.h"
diff --git a/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/TrackCollHandle_TruthTracks.cxx b/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/TrackCollHandle_TruthTracks.cxx
index 8e9fe62329a54c4bbd7e838678b04c744f2082cd..222b15debe036aaf9fbd7b1a7acba2c47ebcbab9 100644
--- a/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/TrackCollHandle_TruthTracks.cxx
+++ b/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/TrackCollHandle_TruthTracks.cxx
@@ -25,9 +25,9 @@
 #include "VTI12Utils/VP1JobConfigInfo.h"
 #include "VTI12Utils/VP1ParticleData.h"
 
-#include "HepMC/GenEvent.h"
-#include "HepMC/GenParticle.h"
-#include "HepMC/GenVertex.h"
+#include "AtlasHepMC/GenEvent.h"
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/GenVertex.h"
 #include "GeneratorObjects/McEventCollection.h"
 
 #include "TrackRecord/TrackRecordCollection.h"
diff --git a/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/TrackHandle_TruthTrack.cxx b/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/TrackHandle_TruthTrack.cxx
index 6c9dddcb4c6f7109525c40dad880a1f2f6c7d739..1d003ab384abc7102e77de3121bc77c906614079 100644
--- a/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/TrackHandle_TruthTrack.cxx
+++ b/graphics/VTI12/VTI12Systems/VTI12TrackSystems/src/TrackHandle_TruthTrack.cxx
@@ -17,14 +17,14 @@
 #include "VP1Base/VP1Msg.h"
 
 #include "TrkTrack/Track.h"
-#include "HepMC/GenParticle.h"
-#include "HepMC/GenVertex.h"
+#include "AtlasHepMC/GenParticle.h"
+#include "AtlasHepMC/GenVertex.h"
 #include "CLHEP/Vector/LorentzVector.h"
 #include "TrkTrack/Track.h"
 #include "AthContainers/DataVector.h"
 #include "TrkParameters/TrackParameters.h"
 #include "TrkSurfaces/PlaneSurface.h"
-#include "HepMC/GenParticle.h"
+#include "AtlasHepMC/GenParticle.h"
 
 //____________________________________________________________________
 class TrackHandle_TruthTrack::Imp {