From ab1810e2d5e221a8e7d699c7dc9a4d3d0f15c137 Mon Sep 17 00:00:00 2001
From: Johannes Junggeburth <johannes.josef.junggeburth@cern.ch>
Date: Tue, 5 Nov 2024 18:33:10 +0100
Subject: [PATCH] Move throwExcept macro into the Kernel

---
 .../GeoModelHelpers/variantHelpers.h          |   2 +-
 .../GeoModelHelpers/src/GeoLogVolSorter.cxx   |   2 +-
 .../GeoModelHelpers/src/GeoPhysVolSorter.cxx  |   3 +-
 .../GeoModelHelpers/src/GeoShapeSorter.cxx    |   2 +-
 .../GeoModelHelpers/src/GeoShapeUtils.cxx     |   2 +-
 .../GeoModelHelpers/src/MaterialManager.cxx   |   2 +-
 .../GeoModelHelpers/src/StringUtils.cxx       |   2 +-
 .../GeoModelHelpers/src/TransformSorter.cxx   |   3 +-
 .../GeoModelHelpers/src/cloneVolume.cxx       |   4 +-
 .../GeoModelHelpers/tests/testStringUtils.cxx |   2 +-
 .../GeoModelKernel/CellBinning.h              |   2 +-
 .../GeoModelKernel/CellPartitioning.h         |   2 +-
 .../GeoModelKernel/GeoAccessSurfaceAction.h   |   2 +-
 .../GeoModelKernel/GeoAccessVolAndSTAction.h  |   2 +-
 .../GeoModelKernel/GeoAccessVolumeAction.h    |   2 +-
 .../GeoModelKernel/GeoAlignableTransform.h    |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoBox.h    |   2 +-
 .../GeoModelKernel/GeoClearAbsPosAction.h     |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoCons.h   |   2 +-
 .../GeoModelKernel/GeoCountSurfaceAction.h    |   2 +-
 .../GeoModelKernel/GeoCountVolAction.h        |   2 +-
 .../GeoModelKernel/GeoCountVolAndSTAction.h   |   2 +-
 .../GeoModelKernel/GeoCutVolAction.h          |   2 +-
 .../GeoModelKernel/GeoElement.h               |   2 +-
 .../GeoModelKernel/GeoEllipticalTube.h        |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoFacet.h  |   2 +-
 .../GeoModelKernel/GeoFullPhysVol.h           |   2 +-
 .../GeoModelKernel/GeoGenericTrap.h           |   2 +-
 .../GeoModelKernel/GeoGeometryPluginLoader.h  |   2 +-
 .../GeoModelKernel/GeoGraphNode.h             |   2 +-
 .../GeoModelKernel/GeoIdentifierTag.h         |   2 +-
 .../GeoModelKernel/GeoIntrusivePtr.h          |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoLogVol.h |   2 +-
 .../GeoModelKernel/GeoMaterial.h              |   2 +-
 .../GeoModelKernel/GeoNameTag.h               |   2 +-
 .../GeoModelKernel/GeoNodeAction.h            |   2 +-
 .../GeoModelKernel/GeoNodePath.h              |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoPara.h   |   2 +-
 .../GeoModelKernel/GeoPerfUtils.h             |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoPgon.h   |   2 +-
 .../GeoModelKernel/GeoPhysVol.h               |   2 +-
 .../GeoModelKernel/GeoPluginLoader.h          |   2 +-
 .../GeoModelKernel/GeoPolyhedrizeAction.h     |   2 +-
 .../GeoModelKernel/GeoPolyhedron.h            |   2 +-
 .../GeoModelKernel/GeoPrintGraphAction.h      |   2 +-
 .../GeoModelKernel/GeoPublisher.h             |   2 +-
 .../GeoModelKernel/GeoSerialDenominator.h     |   2 +-
 .../GeoModelKernel/GeoSerialIdentifier.h      |   2 +-
 .../GeoModelKernel/GeoSerialTransformer.h     |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoShape.h  |   2 +-
 .../GeoModelKernel/GeoShapeAction.h           |   2 +-
 .../GeoModelKernel/GeoShapeIntersection.h     |   2 +-
 .../GeoModelKernel/GeoShapePath.h             |   2 +-
 .../GeoModelKernel/GeoShapeShift.h            |   2 +-
 .../GeoModelKernel/GeoShapeSubtraction.h      |   2 +-
 .../GeoModelKernel/GeoShapeUnion.h            |   2 +-
 .../GeoModelKernel/GeoSimplePolygonBrep.h     |   2 +-
 .../GeoModelKernel/GeoTessellatedSolid.h      |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoTorus.h  |   2 +-
 .../GeoModelKernel/GeoTransform.h             |   2 +-
 .../GeoModelKernel/GeoTraversalState.h        |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoTrd.h    |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoTube.h   |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoTubs.h   |   2 +-
 .../GeoModelKernel/GeoTwistedTrap.h           |   2 +-
 .../GeoModelKernel/GeoUnidentifiedShape.h     |   2 +-
 .../GeoModelKernel/GeoUtilFunctions.h         |   2 +-
 .../GeoModelKernel/GeoVAlignmentStore.h       |   2 +-
 .../GeoModelKernel/GeoVDetectorElement.h      |   2 +-
 .../GeoModelKernel/GeoVDetectorFactory.h      |   2 +-
 .../GeoModelKernel/GeoVDetectorManager.h      |   2 +-
 .../GeoModelKernel/GeoVG4ExtensionSolid.h     |   2 +-
 .../GeoModelKernel/GeoVGeometryPlugin.h       |   2 +-
 .../GeoModelKernel/GeoVSurface.h              |  10 +-
 .../GeoModelKernel/GeoVSurfaceShape.h         |  10 +-
 .../GeoModelKernel/GeoVolumeAction.h          |   2 +-
 .../GeoModelKernel/GeoVolumeCursor.h          |   2 +-
 .../GeoModelKernel/GeoModelKernel/GeoXF.h     |   2 +-
 .../GeoModelKernel/GeometryMap.h              |   2 +-
 .../GeoModelKernel/GeoModelKernel/Path.h      |   2 +-
 .../GeoModelKernel/GeoModelKernel/Query.h     |   2 +-
 .../GeoModelKernel/GeoModelKernel/RCBase.h    |   2 +-
 .../GeoModelKernel/TemplateVolAction.h        |   2 +-
 .../GeoModelKernel/TinyHepTransform.h         |   2 +-
 .../GeoModelKernel}/throwExcept.h             |   0
 GeoModelCore/GeoModelKernel/doc/packagedoc.h  |   2 +-
 .../GeoModelKernel/src/CellBinning.cxx        |   2 +-
 .../GeoModelKernel/src/CellPartitioning.cxx   |   2 +-
 .../src/GeoAccessSurfaceAction.cxx            |   2 +-
 .../src/GeoAccessVolAndSTAction.cxx           |   2 +-
 .../src/GeoAccessVolumeAction.cxx             |   2 +-
 .../src/GeoAlignableTransform.cxx             |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoBox.cxx    |   2 +-
 .../src/GeoClearAbsPosAction.cxx              |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoCons.cxx   |   2 +-
 .../src/GeoCountSurfaceAction.cxx             |   2 +-
 .../GeoModelKernel/src/GeoCountVolAction.cxx  |   2 +-
 .../src/GeoCountVolAndSTAction.cxx            |   2 +-
 .../GeoModelKernel/src/GeoCutVolAction.cxx    |   2 +-
 .../GeoModelKernel/src/GeoElement.cxx         |   2 +-
 .../GeoModelKernel/src/GeoEllipticalTube.cxx  |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoFacet.cxx  |   2 +-
 .../GeoModelKernel/src/GeoFullPhysVol.cxx     |   2 +-
 .../GeoModelKernel/src/GeoGenericTrap.cxx     |   2 +-
 .../GeoModelKernel/src/GeoGraphNode.cxx       |   2 +-
 .../GeoModelKernel/src/GeoIdentifierTag.cxx   |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoLogVol.cxx |   2 +-
 .../GeoModelKernel/src/GeoMaterial.cxx        |   2 +-
 .../GeoModelKernel/src/GeoNameTag.cxx         |   2 +-
 .../GeoModelKernel/src/GeoNodeAction.cxx      |   2 +-
 .../GeoModelKernel/src/GeoNodePositioning.cxx |   9 +-
 GeoModelCore/GeoModelKernel/src/GeoPara.cxx   |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoPcon.cxx   |   7 +-
 .../GeoModelKernel/src/GeoPerfUtils.cxx       |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoPgon.cxx   |  18 +-
 .../GeoModelKernel/src/GeoPlacement.cxx       |   4 +-
 .../src/GeoPolyhedrizeAction.cxx              |   2 +-
 .../src/GeoPrintGraphAction.cxx               |   2 +-
 .../GeoModelKernel/src/GeoPublisher.cxx       |   2 +-
 .../src/GeoSelClearAbsPosAction.cxx           |   2 +-
 .../src/GeoSelClearAbsPosAction.h             |   2 +-
 .../src/GeoSerialDenominator.cxx              |   2 +-
 .../src/GeoSerialIdentifier.cxx               |   2 +-
 .../src/GeoSerialTransformer.cxx              |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoShape.cxx  |   2 +-
 .../GeoModelKernel/src/GeoShapeAction.cxx     |   2 +-
 .../src/GeoShapeIntersection.cxx              |   2 +-
 .../src/GeoSimplePolygonBrep.cxx              |   7 +-
 .../src/GeoTessellatedSolid.cxx               |  12 +-
 GeoModelCore/GeoModelKernel/src/GeoTorus.cxx  |   2 +-
 .../GeoModelKernel/src/GeoTransform.cxx       |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoTrap.cxx   |   2 +-
 .../GeoModelKernel/src/GeoTraversalState.cxx  |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoTrd.cxx    |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoTube.cxx   |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoTubs.cxx   |   2 +-
 .../GeoModelKernel/src/GeoTwistedTrap.cxx     |   2 +-
 .../src/GeoUnidentifiedShape.cxx              |  11 +-
 .../src/GeoVDetectorElement.cxx               |   2 +-
 .../src/GeoVDetectorFactory.cxx               |   2 +-
 .../src/GeoVDetectorManager.cxx               |   2 +-
 .../GeoModelKernel/src/GeoVFullPhysVol.cxx    |  13 +-
 .../GeoModelKernel/src/GeoVPhysVol.cxx        |   2 +-
 .../GeoModelKernel/src/GeoVolumeAction.cxx    |   2 +-
 .../GeoModelKernel/src/GeoVolumeCursor.cxx    |   2 +-
 GeoModelCore/GeoModelKernel/src/GeoXF.cxx     |   2 +-
 .../GeoModelKernel/src/GeometryMap.cxx        |   2 +-
 .../GeoModelKernel/src/TemplateVolAction.cxx  |   2 +-
 .../GeoModelKernel/tests/testEulerAngles.cxx  |   2 +-
 .../tests/testGeoIntrusivePtr.cxx             |   2 +-
 ...ep1_create_store_geo_and_publish_nodes.cpp |   2 +-
 GeoModelIO/GeoModelDBManager/CMakeLists.txt   |   2 +-
 .../GeoModelDBManager/src/GMDBManager.cpp     |   2 +-
 .../GeoModelIOHelpers/GMIO.h                  |   2 +-
 .../GeoModelRead/ReadGeoModel.tpp             |   2 +-
 .../src/BuildGeoShapes_GenericTrap.cpp        |   2 +-
 .../GeoModelRead/src/BuildGeoShapes_Pcon.cpp  |   2 +-
 .../GeoModelRead/src/BuildGeoShapes_Pgon.cpp  |   2 +-
 .../src/BuildGeoShapes_SimplePolygonBrep.cpp  |   2 +-
 GeoModelIO/GeoModelRead/src/ReadGeoModel.cpp  |   2 +-
 .../GeoModelWrite/src/WriteGeoModel.cpp       |   2 +-
 .../GeoModelXML/GMXPlugin/src/GMXPlugin.cxx   |   2 +-
 .../GeoModelXml/GeoModelXml/GmxInterface.h    |   2 +-
 .../GeoModelXml/src/AssemblyrefProcessor.cxx  |   2 +-
 .../GeoModelXml/src/Element2GeoItem.cxx       |   2 +-
 .../GeoModelXML/GeoModelXml/src/Gmx2Geo.cxx   |   2 +-
 .../GeoModelXML/GeoModelXml/src/GmxUtil.cxx   |   2 +-
 .../GeoModelXml/src/LogvolProcessor.cxx       |   2 +-
 .../GeoModelXml/src/MakeIntersection.cxx      |   2 +-
 .../GeoModelXml/src/MakeMaterial.cxx          |   2 +-
 .../GeoModelXML/GeoModelXml/src/MakePcon.cxx  |   2 +-
 .../GeoModelXml/src/MakeShapeShift.cxx        |   2 +-
 .../GeoModelXml/src/MakeSimplePolygonBrep.cxx |   2 +-
 .../GeoModelXml/src/MakeSubtraction.cxx       |   2 +-
 .../GeoModelXML/GeoModelXml/src/MakeUnion.cxx |   2 +-
 .../GeoModelXml/src/MulticopyProcessor.cxx    |   2 +-
 .../GeoModelXml/src/ReplicaZProcessor.cxx     |   2 +-
 .../GeoModelXml/src/TransformrefProcessor.cxx |   2 +-
 .../GeoModelXMLDumper/src/GeoXMLDumper.cxx    |   2 +-
 .../GeoModelXMLParser/CMakeLists.txt          |   2 +-
 .../GeoModelXMLParser/src/XMLHandler.cxx      |   2 +-
 .../VP1GeometrySystems/src/DumpShape.cxx      |   2 +-
 .../patches/0001-Move-throw-except.patch      | 584 ++++++++++++++++++
 183 files changed, 803 insertions(+), 228 deletions(-)
 rename GeoModelCore/{GeoModelHelpers/GeoModelHelpers => GeoModelKernel/GeoModelKernel}/throwExcept.h (100%)
 create mode 100644 athena_ci/patches/0001-Move-throw-except.patch

diff --git a/GeoModelCore/GeoModelHelpers/GeoModelHelpers/variantHelpers.h b/GeoModelCore/GeoModelHelpers/GeoModelHelpers/variantHelpers.h
index a68a3a933..ec6702d98 100644
--- a/GeoModelCore/GeoModelHelpers/GeoModelHelpers/variantHelpers.h
+++ b/GeoModelCore/GeoModelHelpers/GeoModelHelpers/variantHelpers.h
@@ -12,7 +12,7 @@
 #ifndef GEOMODELHELPERS_VARIANTHELPERS_H
 #define GEOMODELHELPERS_VARIANTHELPERS_H
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include <iostream> 
 #include <string> 
diff --git a/GeoModelCore/GeoModelHelpers/src/GeoLogVolSorter.cxx b/GeoModelCore/GeoModelHelpers/src/GeoLogVolSorter.cxx
index 381c9896f..c848f2e68 100644
--- a/GeoModelCore/GeoModelHelpers/src/GeoLogVolSorter.cxx
+++ b/GeoModelCore/GeoModelHelpers/src/GeoLogVolSorter.cxx
@@ -2,7 +2,7 @@
   Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 #include "GeoModelHelpers/GeoLogVolSorter.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelHelpers/GeoShapeSorter.h"
 
 bool GeoLogVolSorter::operator()(const GeoLogVol* a, const GeoLogVol* b) const{
diff --git a/GeoModelCore/GeoModelHelpers/src/GeoPhysVolSorter.cxx b/GeoModelCore/GeoModelHelpers/src/GeoPhysVolSorter.cxx
index 73ee5dc0f..c92d64b6b 100644
--- a/GeoModelCore/GeoModelHelpers/src/GeoPhysVolSorter.cxx
+++ b/GeoModelCore/GeoModelHelpers/src/GeoPhysVolSorter.cxx
@@ -3,12 +3,13 @@
 */
 #include "GeoModelHelpers/GeoPhysVolSorter.h"
 #include "GeoModelKernel/GeoFullPhysVol.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include "GeoModelHelpers/TransformSorter.h"
 #include "GeoModelHelpers/GeoLogVolSorter.h"
 #include "GeoModelKernel/GeoVolumeCursor.h"
 #include "GeoModelHelpers/getChildNodesWithTrf.h"
-#include "GeoModelHelpers/throwExcept.h"
+
 
 
 int GeoPhysVolSorter::compare(const GeoVPhysVol* a, const GeoVPhysVol* b) const {
diff --git a/GeoModelCore/GeoModelHelpers/src/GeoShapeSorter.cxx b/GeoModelCore/GeoModelHelpers/src/GeoShapeSorter.cxx
index b103d3ef9..667201f3d 100644
--- a/GeoModelCore/GeoModelHelpers/src/GeoShapeSorter.cxx
+++ b/GeoModelCore/GeoModelHelpers/src/GeoShapeSorter.cxx
@@ -5,7 +5,7 @@
 #include "GeoModelHelpers/TransformSorter.h"
 #include "GeoModelHelpers/TransformToStringConverter.h"
 #include "GeoModelHelpers/GeoShapeUtils.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include "GeoModelKernel/Units.h"
 
diff --git a/GeoModelCore/GeoModelHelpers/src/GeoShapeUtils.cxx b/GeoModelCore/GeoModelHelpers/src/GeoShapeUtils.cxx
index 413e02074..e026be00a 100644
--- a/GeoModelCore/GeoModelHelpers/src/GeoShapeUtils.cxx
+++ b/GeoModelCore/GeoModelHelpers/src/GeoShapeUtils.cxx
@@ -3,7 +3,7 @@
 */
 #include "GeoModelHelpers/GeoShapeUtils.h"
 #include "GeoModelHelpers/TransformToStringConverter.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 /// Boolean volume shapes
 #include "GeoModelKernel/GeoShapeUnion.h"
diff --git a/GeoModelCore/GeoModelHelpers/src/MaterialManager.cxx b/GeoModelCore/GeoModelHelpers/src/MaterialManager.cxx
index 808e23f8f..f9b996e23 100644
--- a/GeoModelCore/GeoModelHelpers/src/MaterialManager.cxx
+++ b/GeoModelCore/GeoModelHelpers/src/MaterialManager.cxx
@@ -10,7 +10,7 @@
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/Units.h"
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelHelpers/StringUtils.h"
 
 #include <cstdio>
diff --git a/GeoModelCore/GeoModelHelpers/src/StringUtils.cxx b/GeoModelCore/GeoModelHelpers/src/StringUtils.cxx
index 51059a1e3..02965abcf 100644
--- a/GeoModelCore/GeoModelHelpers/src/StringUtils.cxx
+++ b/GeoModelCore/GeoModelHelpers/src/StringUtils.cxx
@@ -2,7 +2,7 @@
   Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 #include "GeoModelHelpers/StringUtils.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include <limits>
 #include <array>
 #include <functional>
diff --git a/GeoModelCore/GeoModelHelpers/src/TransformSorter.cxx b/GeoModelCore/GeoModelHelpers/src/TransformSorter.cxx
index bf77383bf..b5cf8ec4c 100644
--- a/GeoModelCore/GeoModelHelpers/src/TransformSorter.cxx
+++ b/GeoModelCore/GeoModelHelpers/src/TransformSorter.cxx
@@ -1,9 +1,10 @@
 /*
   Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelHelpers/TransformSorter.h"
 #include "GeoModelKernel/GeoAlignableTransform.h"
-#include "GeoModelHelpers/throwExcept.h"
+
 
 namespace GeoTrf {
     bool TransformSorter::operator()(const std::unique_ptr<Transform3D>& a, 
diff --git a/GeoModelCore/GeoModelHelpers/src/cloneVolume.cxx b/GeoModelCore/GeoModelHelpers/src/cloneVolume.cxx
index 46f721b38..63f625ae5 100644
--- a/GeoModelCore/GeoModelHelpers/src/cloneVolume.cxx
+++ b/GeoModelCore/GeoModelHelpers/src/cloneVolume.cxx
@@ -12,9 +12,9 @@ PVLink cloneVolume(const PVLink& volume,
     PVLink newVolume{volume};
     if (!allowShared || hasFullPhysVolInTree(volume)) {
         if (typeid(*volume) == typeid(GeoPhysVol)) {
-            newVolume = new GeoPhysVol(volume->getLogVol());
+            newVolume = make_intrusive<GeoPhysVol>(volume->getLogVol());
         } else if (typeid(*volume) == typeid(GeoFullPhysVol)) {
-            newVolume = new GeoFullPhysVol(volume->getLogVol());
+            newVolume = make_intrusive<GeoFullPhysVol>(volume->getLogVol());
         }
         for (unsigned int ch = 0; ch < volume->getNChildNodes(); ++ch){
           const GeoGraphNode* node = (*volume->getChildNode(ch));
diff --git a/GeoModelCore/GeoModelHelpers/tests/testStringUtils.cxx b/GeoModelCore/GeoModelHelpers/tests/testStringUtils.cxx
index 66bdb22c9..cbcbf4531 100644
--- a/GeoModelCore/GeoModelHelpers/tests/testStringUtils.cxx
+++ b/GeoModelCore/GeoModelHelpers/tests/testStringUtils.cxx
@@ -3,7 +3,7 @@
 */
 
 #include "GeoModelHelpers/StringUtils.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include <cstdlib>
 #include <iostream>
 using namespace GeoStrUtils;
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/CellBinning.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/CellBinning.h
index 966ffdd6d..1446c28ba 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/CellBinning.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/CellBinning.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_CELLBINNING_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/CellPartitioning.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/CellPartitioning.h
index 96ef57366..54a4e3896 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/CellPartitioning.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/CellPartitioning.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_CELLPARTITIONING_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessSurfaceAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessSurfaceAction.h
index a3a617acc..00f68f895 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessSurfaceAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessSurfaceAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GeoAccessSurfaceAction_h
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessVolAndSTAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessVolAndSTAction.h
index da372256e..3789197b8 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessVolAndSTAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessVolAndSTAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOACCESSVOLANDSTACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessVolumeAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessVolumeAction.h
index 1418bfe05..2399f4c4a 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessVolumeAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAccessVolumeAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GeoAccessVolumeAction_h
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAlignableTransform.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAlignableTransform.h
index b7c85ebc5..0e498a406 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAlignableTransform.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoAlignableTransform.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOALIGNABLETRANSFORM_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoBox.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoBox.h
index d823885ac..78c30c263 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoBox.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoBox.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOBOX_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoClearAbsPosAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoClearAbsPosAction.h
index e079a39b2..5dce280d0 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoClearAbsPosAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoClearAbsPosAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 /**
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCons.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCons.h
index 722131221..28a13ef9f 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCons.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCons.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOCONS_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountSurfaceAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountSurfaceAction.h
index 5295fa6b9..b56a9c676 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountSurfaceAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountSurfaceAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOCOUNTSURFACEACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountVolAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountVolAction.h
index 48bf26163..34cfc02c7 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountVolAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountVolAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOCOUNTVOLACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountVolAndSTAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountVolAndSTAction.h
index 7d49c5f1b..71abc4a43 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountVolAndSTAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCountVolAndSTAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOCOUNTVOLANDSTACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCutVolAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCutVolAction.h
index ceee9b818..95d0ad375 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCutVolAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoCutVolAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOCUTVOLACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoElement.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoElement.h
index 9eee6bc9e..f8cfeee60 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoElement.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoElement.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOELEMENT_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoEllipticalTube.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoEllipticalTube.h
index 79dfdb04c..65f9128e8 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoEllipticalTube.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoEllipticalTube.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOELLIPTICALTUBE_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoFacet.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoFacet.h
index d73cb975f..14e3a3d8c 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoFacet.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoFacet.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOFACET_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoFullPhysVol.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoFullPhysVol.h
index e1fafcec3..3d3f9aa92 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoFullPhysVol.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoFullPhysVol.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOFULLPHYSVOL_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGenericTrap.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGenericTrap.h
index 4cf59192d..167c4cb1b 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGenericTrap.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGenericTrap.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOGENERICTRAP_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGeometryPluginLoader.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGeometryPluginLoader.h
index 73b0b93bd..d929f9db1 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGeometryPluginLoader.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGeometryPluginLoader.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOGEOMETRYPLUGINLOADER_H_
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGraphNode.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGraphNode.h
index 1f8a2ae52..ace8fd4ef 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGraphNode.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoGraphNode.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOGRAPHNODE_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoIdentifierTag.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoIdentifierTag.h
index f7b37647e..a3eb36847 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoIdentifierTag.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoIdentifierTag.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOIDENTIFIERTAG_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoIntrusivePtr.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoIntrusivePtr.h
index dcd1c028c..73910a75b 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoIntrusivePtr.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoIntrusivePtr.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 #ifndef GEOMODELKERNEL_GeoIntrusivePtr_H
 #define GEOMODELKERNEL_GeoIntrusivePtr_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoLogVol.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoLogVol.h
index 7885deaad..301a76d22 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoLogVol.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoLogVol.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOLOGVOL_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoMaterial.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoMaterial.h
index faa40989f..78a1e6e38 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoMaterial.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoMaterial.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOMATERIAL_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNameTag.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNameTag.h
index 3d3781301..fcb7fe55d 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNameTag.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNameTag.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEONAMETAG_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNodeAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNodeAction.h
index 8232f0010..ba80f9198 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNodeAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNodeAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEONODEACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNodePath.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNodePath.h
index b2cd5f73e..e796f3178 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNodePath.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoNodePath.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEONODEPATH_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPara.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPara.h
index c98a41f15..aa0a7abbc 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPara.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPara.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOPARA_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPerfUtils.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPerfUtils.h
index a3e23d913..37233d345 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPerfUtils.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPerfUtils.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOPERFUTILS_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPgon.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPgon.h
index 4ca4e1d9e..cfca2b3b0 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPgon.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPgon.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOPGON_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPhysVol.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPhysVol.h
index 160065c67..379957b8c 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPhysVol.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPhysVol.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOPHYSVOL_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPluginLoader.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPluginLoader.h
index 4470c8c49..e0d456925 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPluginLoader.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPluginLoader.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOPLUGINLOADER_H_
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPolyhedrizeAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPolyhedrizeAction.h
index 58d2a0456..2817492d6 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPolyhedrizeAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPolyhedrizeAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOPOLYHEDRIZEACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPolyhedron.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPolyhedron.h
index 99a5a92b0..dac4b3636 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPolyhedron.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPolyhedron.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GeoPolyhedron_h
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPrintGraphAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPrintGraphAction.h
index cfa8bd2bf..07ce459dd 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPrintGraphAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPrintGraphAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOPRINTGRAPHACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPublisher.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPublisher.h
index bd5a7a468..a0cb9da1d 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPublisher.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPublisher.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSTORE_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialDenominator.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialDenominator.h
index 6e85abef4..5f2235fb0 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialDenominator.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialDenominator.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSERIALDENOMINATOR_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialIdentifier.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialIdentifier.h
index 63a06d475..b98285bda 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialIdentifier.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialIdentifier.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSERIALIDENTIFIER_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialTransformer.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialTransformer.h
index ffd4d146c..cdd09dc21 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialTransformer.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSerialTransformer.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSERIALTRANSFORMER_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShape.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShape.h
index 452139ca1..c58e237e0 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShape.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShape.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSHAPE_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeAction.h
index a6ec5e36d..94280aa97 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSHAPEACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeIntersection.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeIntersection.h
index bb8f4dd2a..78b4ea838 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeIntersection.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeIntersection.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSHAPEINTERSECTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapePath.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapePath.h
index 865b0ac6c..d2edb52b3 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapePath.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapePath.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSHAPEPATH_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeShift.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeShift.h
index 1ce417748..595a86752 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeShift.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeShift.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSHAPESHIFT_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeSubtraction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeSubtraction.h
index ca9cb5816..48367a8f8 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeSubtraction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeSubtraction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSHAPESUBTRACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeUnion.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeUnion.h
index 47b66b8ce..c660548d2 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeUnion.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoShapeUnion.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSHAPEUNION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSimplePolygonBrep.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSimplePolygonBrep.h
index 8e55f021e..b1671f196 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSimplePolygonBrep.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoSimplePolygonBrep.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSIMPLEPOLYGONBREP_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTessellatedSolid.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTessellatedSolid.h
index 44980db31..f6782f9b0 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTessellatedSolid.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTessellatedSolid.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOTESSELLATEDSOLID_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTorus.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTorus.h
index 2dba24c3a..990900232 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTorus.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTorus.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOTORUS_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTransform.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTransform.h
index d03655065..43e1d9019 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTransform.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTransform.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOTRANSFORM_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTraversalState.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTraversalState.h
index 93dd009ce..1a084ab2c 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTraversalState.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTraversalState.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOTRAVERSALSTATE_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTrd.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTrd.h
index 1912351c6..c37337767 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTrd.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTrd.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOTRD_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTube.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTube.h
index 46630438d..6e7f496b2 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTube.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTube.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOTUBE_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTubs.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTubs.h
index 5e41b2238..59180eb1e 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTubs.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTubs.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOTUBS_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTwistedTrap.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTwistedTrap.h
index 6142d633e..a552821c9 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTwistedTrap.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoTwistedTrap.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOTWISTEDTRAP_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoUnidentifiedShape.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoUnidentifiedShape.h
index 34d4efa1e..47a3c5957 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoUnidentifiedShape.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoUnidentifiedShape.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 //=========================================================================
 //
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoUtilFunctions.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoUtilFunctions.h
index ef800864a..5a0027315 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoUtilFunctions.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoUtilFunctions.h
@@ -1,5 +1,5 @@
 /*
-Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOUTILFUNCTIONS_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVAlignmentStore.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVAlignmentStore.h
index 2d0c8746b..a6afe8ec1 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVAlignmentStore.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVAlignmentStore.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOVALIGNMENTSTORE_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorElement.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorElement.h
index cd87452a3..61876a6a3 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorElement.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorElement.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOVDETECTORELEMENT_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorFactory.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorFactory.h
index 55e508910..2d094be6d 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorFactory.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorFactory.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOVDETECTORFACTORY_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorManager.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorManager.h
index 0526ce309..596cf01ff 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorManager.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVDetectorManager.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOVDETECTORMANAGER_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVG4ExtensionSolid.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVG4ExtensionSolid.h
index 163105864..3e021c193 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVG4ExtensionSolid.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVG4ExtensionSolid.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOVG4EXTENSIONSOLID_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVGeometryPlugin.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVGeometryPlugin.h
index ff028c3bf..ee6ad6902 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVGeometryPlugin.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVGeometryPlugin.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOVGEOMETRYPLUGIN_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVSurface.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVSurface.h
index fef8ee09f..c1a6f3a1b 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVSurface.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVSurface.h
@@ -20,19 +20,13 @@
 #include "GeoModelKernel/GeoPlacement.h"
 #include "GeoModelKernel/GeoNodePositioning.h"
 #include "GeoModelKernel/GeoDefinitions.h"
+#include "GeoModelKernel/throwExcept.h"
 #include <iostream>
 
 #include <exception>
 #include <sstream>
 
-#define THROW_EXCEPTION(MESSAGE)                      \
-    {                                                 \
-        std::stringstream except_str{};               \
-        except_str<<__FILE__<<":"<<__LINE__<<" --- "; \
-        except_str<<MESSAGE;                          \
-        throw std::runtime_error(except_str.str());   \
-    }
-    
+
 class GeoVSurface : public GeoPlacement, public GeoNodePositioning {
  public:
     using VSConstLink = GeoIntrusivePtr<const GeoVSurface>;
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVSurfaceShape.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVSurfaceShape.h
index 720047192..35a2e1286 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVSurfaceShape.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVSurfaceShape.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
  * 
  *
  * Created on: Jul, 2024
@@ -14,17 +14,11 @@
 #include "GeoModelKernel/RCBase.h"
 #include "GeoModelKernel/GeoShapeAction.h"
 #include <GeoModelKernel/GeoDefinitions.h>
+#include <GeoModelKernel/throwExcept.h>
 #include <string>
 #include <exception>
 #include <sstream>
 
-#define THROW_EXCEPTION(MESSAGE)                      \
-    {                                                 \
-        std::stringstream except_str{};               \
-        except_str<<__FILE__<<":"<<__LINE__<<" --- "; \
-        except_str<<MESSAGE;                          \
-        throw std::runtime_error(except_str.str());   \
-    }
 using SurfaceShapeType = unsigned int; // here use decimal numbers. (why use hexadecimal int?)
 
 class GeoVSurfaceShape : public RCBase
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVolumeAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVolumeAction.h
index 9a8f387cb..e9b24a7f1 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVolumeAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVolumeAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOVOLUMEACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVolumeCursor.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVolumeCursor.h
index b70ae1bef..bdd3db174 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVolumeCursor.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoVolumeCursor.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOVOLUMECURSOR_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoXF.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoXF.h
index 24ec71226..98fd22b63 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoXF.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoXF.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 //------------------------GeoTransformFunction--------------------------//
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeometryMap.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeometryMap.h
index b4001ecd6..47f4030ae 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeometryMap.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeometryMap.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOMETRYMAP_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/Path.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/Path.h
index c9604266e..d7e96808f 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/Path.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/Path.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_PATH_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/Query.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/Query.h
index 34487da8b..f3cde970c 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/Query.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/Query.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_QUERY_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/RCBase.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/RCBase.h
index fb1ea2a4d..6c2e8b4b6 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/RCBase.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/RCBase.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 /**
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/TemplateVolAction.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/TemplateVolAction.h
index 788d81d98..ea27c2c98 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/TemplateVolAction.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/TemplateVolAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_TEMPLATEVOLACTION_H
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/TinyHepTransform.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/TinyHepTransform.h
index d0d162fa2..f815d6150 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/TinyHepTransform.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/TinyHepTransform.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef _TINYHEPTRANSFORM_H_
diff --git a/GeoModelCore/GeoModelHelpers/GeoModelHelpers/throwExcept.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/throwExcept.h
similarity index 100%
rename from GeoModelCore/GeoModelHelpers/GeoModelHelpers/throwExcept.h
rename to GeoModelCore/GeoModelKernel/GeoModelKernel/throwExcept.h
diff --git a/GeoModelCore/GeoModelKernel/doc/packagedoc.h b/GeoModelCore/GeoModelKernel/doc/packagedoc.h
index e7b866ef3..5491c0d28 100755
--- a/GeoModelCore/GeoModelKernel/doc/packagedoc.h
+++ b/GeoModelCore/GeoModelKernel/doc/packagedoc.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 /**
diff --git a/GeoModelCore/GeoModelKernel/src/CellBinning.cxx b/GeoModelCore/GeoModelKernel/src/CellBinning.cxx
index b146f30dd..9aaddd2eb 100755
--- a/GeoModelCore/GeoModelKernel/src/CellBinning.cxx
+++ b/GeoModelCore/GeoModelKernel/src/CellBinning.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/CellBinning.h"
diff --git a/GeoModelCore/GeoModelKernel/src/CellPartitioning.cxx b/GeoModelCore/GeoModelKernel/src/CellPartitioning.cxx
index f2f2fe999..e8d43baef 100755
--- a/GeoModelCore/GeoModelKernel/src/CellPartitioning.cxx
+++ b/GeoModelCore/GeoModelKernel/src/CellPartitioning.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/CellPartitioning.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoAccessSurfaceAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoAccessSurfaceAction.cxx
index ed9ecd431..26ab0c963 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoAccessSurfaceAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoAccessSurfaceAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoAccessSurfaceAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoAccessVolAndSTAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoAccessVolAndSTAction.cxx
index 45bee9481..a7b1ac2a3 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoAccessVolAndSTAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoAccessVolAndSTAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoAccessVolAndSTAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoAccessVolumeAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoAccessVolumeAction.cxx
index 9b7713902..82bf0cc65 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoAccessVolumeAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoAccessVolumeAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoAccessVolumeAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoAlignableTransform.cxx b/GeoModelCore/GeoModelKernel/src/GeoAlignableTransform.cxx
index e5c08560f..8e41590c9 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoAlignableTransform.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoAlignableTransform.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoAlignableTransform.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoBox.cxx b/GeoModelCore/GeoModelKernel/src/GeoBox.cxx
index 327b72cee..5d5ded7d1 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoBox.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoBox.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoBox.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoClearAbsPosAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoClearAbsPosAction.cxx
index 7383e12e3..307223527 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoClearAbsPosAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoClearAbsPosAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoClearAbsPosAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoCons.cxx b/GeoModelCore/GeoModelKernel/src/GeoCons.cxx
index 4c0809462..3c0f6428c 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoCons.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoCons.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoCons.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoCountSurfaceAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoCountSurfaceAction.cxx
index 359901d08..d81389bd5 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoCountSurfaceAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoCountSurfaceAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoCountSurfaceAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoCountVolAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoCountVolAction.cxx
index 613d35e9f..9d65fc518 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoCountVolAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoCountVolAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoCountVolAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoCountVolAndSTAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoCountVolAndSTAction.cxx
index 1bc7b55b0..cd612b29c 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoCountVolAndSTAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoCountVolAndSTAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoCountVolAndSTAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoCutVolAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoCutVolAction.cxx
index 884503f5d..8f4e43578 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoCutVolAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoCutVolAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoCutVolAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoElement.cxx b/GeoModelCore/GeoModelKernel/src/GeoElement.cxx
index 5b4db7973..d2225aeb4 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoElement.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoElement.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoElement.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoEllipticalTube.cxx b/GeoModelCore/GeoModelKernel/src/GeoEllipticalTube.cxx
index f1e9e487d..4a3a0c5ed 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoEllipticalTube.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoEllipticalTube.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoPolyhedrizeAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoFacet.cxx b/GeoModelCore/GeoModelKernel/src/GeoFacet.cxx
index 3c20b5ee6..1ddd24a6e 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoFacet.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoFacet.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include <utility>
diff --git a/GeoModelCore/GeoModelKernel/src/GeoFullPhysVol.cxx b/GeoModelCore/GeoModelKernel/src/GeoFullPhysVol.cxx
index e5407da50..c3c09efc7 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoFullPhysVol.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoFullPhysVol.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoFullPhysVol.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoGenericTrap.cxx b/GeoModelCore/GeoModelKernel/src/GeoGenericTrap.cxx
index fe87f7fc0..9cff4f84a 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoGenericTrap.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoGenericTrap.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoGenericTrap.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoGraphNode.cxx b/GeoModelCore/GeoModelKernel/src/GeoGraphNode.cxx
index d39f2cd75..9872b3646 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoGraphNode.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoGraphNode.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoGraphNode.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoIdentifierTag.cxx b/GeoModelCore/GeoModelKernel/src/GeoIdentifierTag.cxx
index fe6a9bf5f..df18f9cce 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoIdentifierTag.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoIdentifierTag.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoIdentifierTag.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoLogVol.cxx b/GeoModelCore/GeoModelKernel/src/GeoLogVol.cxx
index 3f86839f0..394b2d64d 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoLogVol.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoLogVol.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoLogVol.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoMaterial.cxx b/GeoModelCore/GeoModelKernel/src/GeoMaterial.cxx
index bff4f32eb..af6582782 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoMaterial.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoMaterial.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoMaterial.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoNameTag.cxx b/GeoModelCore/GeoModelKernel/src/GeoNameTag.cxx
index 1dc26acea..cfab262a9 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoNameTag.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoNameTag.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoNameTag.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoNodeAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoNodeAction.cxx
index bd12c594f..7732f697c 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoNodeAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoNodeAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoNodeAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoNodePositioning.cxx b/GeoModelCore/GeoModelKernel/src/GeoNodePositioning.cxx
index 51914d11d..dc33be766 100644
--- a/GeoModelCore/GeoModelKernel/src/GeoNodePositioning.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoNodePositioning.cxx
@@ -3,6 +3,7 @@
 */
 
 #include "GeoModelKernel/GeoNodePositioning.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelKernel/GeoVPhysVol.h"
 
 #include <mutex>
@@ -19,7 +20,7 @@ GeoNodePositioning::GeoNodePositioning(const GeoPlacement* node):
     GeoTrf::Transform3D tProd{GeoTrf::Transform3D::Identity()};
     
     if(m_node->isShared()) {
-      throw std::runtime_error("GeoPlacement node is shared");
+      THROW_EXCEPTION("GeoPlacement node is shared");
     }
     GeoIntrusivePtr<const GeoPlacement> child{m_node}, parent{m_node->getParent()};
     while (parent) {
@@ -27,7 +28,7 @@ GeoNodePositioning::GeoNodePositioning(const GeoPlacement* node):
       tProd = transform * tProd;
       child = parent;
       if(child->isShared()) {
-        throw std::runtime_error("GeoPlacement node is shared.");
+        THROW_EXCEPTION("GeoPlacement node is shared.");
       } else {
         parent = child->getParent();
       }
@@ -70,7 +71,7 @@ const GeoTrf::Transform3D& GeoNodePositioning::getCachedAbsoluteTransform(const
       assert(storedPos != nullptr);    
       if(storedPos) return *storedPos;
   }
-  throw std::runtime_error("Failed to find the cached absolute transform ");
+  THROW_EXCEPTION("Failed to find the cached absolute transform ");
 }
 
 void GeoNodePositioning::clearPositionInfo() const {
@@ -115,7 +116,7 @@ const GeoTrf::Transform3D&
     
     if(storedPos) return *storedPos;
   }
-  throw std::runtime_error("Failed to find the cached default absolute transform. ");
+  THROW_EXCEPTION("Failed to find the cached default absolute transform. ");
 }
 
 
diff --git a/GeoModelCore/GeoModelKernel/src/GeoPara.cxx b/GeoModelCore/GeoModelKernel/src/GeoPara.cxx
index cd195a954..e13e431b0 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoPara.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoPara.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include <cmath>
diff --git a/GeoModelCore/GeoModelKernel/src/GeoPcon.cxx b/GeoModelCore/GeoModelKernel/src/GeoPcon.cxx
index 23c617cb9..f294264bc 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoPcon.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoPcon.cxx
@@ -1,9 +1,10 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoPcon.h"
 #include "GeoModelKernel/GeoShapeAction.h"
+#include "GeoModelKernel/throwExcept.h"
 #include <cmath>
 #include <stdexcept>
 
@@ -18,7 +19,7 @@ GeoPcon::GeoPcon (double SPhi, double DPhi)
 double GeoPcon::volume (int) const
 {
   if (!isValid ())
-    throw std::runtime_error ("Volume requested for incomplete polycone");
+    THROW_EXCEPTION("Volume requested for incomplete polycone");
   double vol = 0;
   for (size_t k = 0; k < getNPlanes() - 1; ++k)
   {
@@ -38,7 +39,7 @@ void GeoPcon::extent (double& xmin, double& ymin, double& zmin,
                       double& xmax, double& ymax, double& zmax) const
 {
   if (!isValid ())
-    throw std::runtime_error ("Extent requested for incomplete polycone");
+    THROW_EXCEPTION("Extent requested for incomplete polycone");
   double rmin = getRMinPlane(0);
   double rmax = getRMaxPlane(0);
   zmin = zmax = getZPlane(0);
diff --git a/GeoModelCore/GeoModelKernel/src/GeoPerfUtils.cxx b/GeoModelCore/GeoModelKernel/src/GeoPerfUtils.cxx
index 57405a2dd..83175c165 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoPerfUtils.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoPerfUtils.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoPerfUtils.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoPgon.cxx b/GeoModelCore/GeoModelKernel/src/GeoPgon.cxx
index 2ad286208..1a55a617e 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoPgon.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoPgon.cxx
@@ -1,9 +1,10 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoPgon.h"
 #include "GeoModelKernel/GeoShapeAction.h"
+#include "GeoModelKernel/throwExcept.h"
 #include <cmath>
 #include <stdexcept>
 
@@ -16,13 +17,10 @@ GeoPgon::GeoPgon (double SPhi, double DPhi, unsigned int NSides)
   , m_nSides (NSides)
 {}
 
-double GeoPgon::volume (int) const
-{
-#ifndef M_PI
-  constexpr double M_PI = 3.14159265358979323846;
-#endif
+double GeoPgon::volume (int) const {
+
   if (!isValid ())
-    throw std::runtime_error ("Volume requested for incomplete polygon");
+    THROW_EXCEPTION("Volume requested for incomplete polygon");
   double vol = 0.0;
   for (size_t k = 0; k < getNPlanes() - 1; ++k) {
     double z1 = getZPlane(k);
@@ -45,11 +43,9 @@ double GeoPgon::volume (int) const
 void GeoPgon::extent (double& xmin, double& ymin, double& zmin,
                       double& xmax, double& ymax, double& zmax) const
 {
-#ifndef M_PI
-  constexpr double M_PI = 3.14159265358979323846;
-#endif
+
   if (!isValid ())
-    throw std::runtime_error ("Extent requested for incomplete polygon");
+    THROW_EXCEPTION("Extent requested for incomplete polygon");
   double rmin = getRMinPlane(0);
   double rmax = getRMaxPlane(0);
   zmin = zmax = getZPlane(0);
diff --git a/GeoModelCore/GeoModelKernel/src/GeoPlacement.cxx b/GeoModelCore/GeoModelKernel/src/GeoPlacement.cxx
index 258b08962..b59161d4f 100644
--- a/GeoModelCore/GeoModelKernel/src/GeoPlacement.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoPlacement.cxx
@@ -31,7 +31,7 @@ GeoTrf::Transform3D GeoPlacement::getX(const GeoVAlignmentStore* store) const {
   //
   // Check we are not shared:
   //
-  if (isShared()) throw std::runtime_error("Transform requested from shared volume");
+  if (isShared()) THROW_EXCEPTION("Transform requested from shared volume");
   GeoTrf::Transform3D xform{GeoTrf::Transform3D::Identity()};
 
   if (!m_parentPtr) {
@@ -74,7 +74,7 @@ GeoTrf::Transform3D GeoPlacement::getDefX(const GeoVAlignmentStore* store) const
   //
   // Check we are not shared:
   //
-  if (isShared()) throw std::runtime_error("Transform requested from shared volume");
+  if (isShared()) THROW_EXCEPTION("Transform requested from shared volume");
   GeoTrf::Transform3D xform{GeoTrf::Transform3D::Identity()};
 
   if (!m_parentPtr) {
diff --git a/GeoModelCore/GeoModelKernel/src/GeoPolyhedrizeAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoPolyhedrizeAction.cxx
index c4f0d8b8b..4d07344d3 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoPolyhedrizeAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoPolyhedrizeAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoPolyhedrizeAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoPrintGraphAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoPrintGraphAction.cxx
index 737d56e14..7e951a8a4 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoPrintGraphAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoPrintGraphAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoPrintGraphAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoPublisher.cxx b/GeoModelCore/GeoModelKernel/src/GeoPublisher.cxx
index 6be9fb15a..99874c512 100644
--- a/GeoModelCore/GeoModelKernel/src/GeoPublisher.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoPublisher.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 // Author: Riccardo Maria Bianchi @ CERN
diff --git a/GeoModelCore/GeoModelKernel/src/GeoSelClearAbsPosAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoSelClearAbsPosAction.cxx
index a1c32a615..aa469ebbc 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoSelClearAbsPosAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoSelClearAbsPosAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoSelClearAbsPosAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoSelClearAbsPosAction.h b/GeoModelCore/GeoModelKernel/src/GeoSelClearAbsPosAction.h
index 251dae805..abdcde181 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoSelClearAbsPosAction.h
+++ b/GeoModelCore/GeoModelKernel/src/GeoSelClearAbsPosAction.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELKERNEL_GEOSELCLEARABSPOSACTION_H
diff --git a/GeoModelCore/GeoModelKernel/src/GeoSerialDenominator.cxx b/GeoModelCore/GeoModelKernel/src/GeoSerialDenominator.cxx
index af65ced10..96c1bc962 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoSerialDenominator.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoSerialDenominator.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoSerialDenominator.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoSerialIdentifier.cxx b/GeoModelCore/GeoModelKernel/src/GeoSerialIdentifier.cxx
index c5984b962..6aa2479ca 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoSerialIdentifier.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoSerialIdentifier.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoSerialIdentifier.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoSerialTransformer.cxx b/GeoModelCore/GeoModelKernel/src/GeoSerialTransformer.cxx
index 99aa495ad..dfe66684a 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoSerialTransformer.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoSerialTransformer.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoSerialTransformer.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoShape.cxx b/GeoModelCore/GeoModelKernel/src/GeoShape.cxx
index 78aa1cb78..1731dc669 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoShape.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoShape.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoShape.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoShapeAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoShapeAction.cxx
index 283854ba9..36b7f656c 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoShapeAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoShapeAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoShapeAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoShapeIntersection.cxx b/GeoModelCore/GeoModelKernel/src/GeoShapeIntersection.cxx
index 219f0109c..71b9f8d75 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoShapeIntersection.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoShapeIntersection.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoShapeIntersection.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoSimplePolygonBrep.cxx b/GeoModelCore/GeoModelKernel/src/GeoSimplePolygonBrep.cxx
index 001088ace..e8c6ddfc1 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoSimplePolygonBrep.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoSimplePolygonBrep.cxx
@@ -1,9 +1,10 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoSimplePolygonBrep.h"
 #include "GeoModelKernel/GeoShapeAction.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "PolygonTriangulator.h"//For volume.
 #include <cmath>
 #include <stdexcept>
@@ -17,7 +18,7 @@ GeoSimplePolygonBrep::GeoSimplePolygonBrep(double dz)
 
 double GeoSimplePolygonBrep::volume (int) const {
   if (!isValid())
-    throw std::runtime_error ("Volume requested for incomplete simple polygon brep");
+    THROW_EXCEPTION("Volume requested for incomplete simple polygon brep");
   int n = getNVertices();
   double area = m_xVertices[n - 1] * m_yVertices[0] - m_xVertices[0] * m_yVertices[n - 1];
   for (int k = 1; k < n; ++k)
@@ -31,7 +32,7 @@ void GeoSimplePolygonBrep::extent (double& xmin, double& ymin, double& zmin,
                                    double& xmax, double& ymax, double& zmax) const
 {
   if (!isValid())
-    throw std::runtime_error ("Extent requested for incomplete simple polygon brep");
+    THROW_EXCEPTION("Extent requested for incomplete simple polygon brep");
   xmin = xmax = m_xVertices[0];
   ymin = ymax = m_yVertices[0];
   for (size_t k = 1; k < getNVertices(); ++k)
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTessellatedSolid.cxx b/GeoModelCore/GeoModelKernel/src/GeoTessellatedSolid.cxx
index 19fcfee86..8f1a9feff 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTessellatedSolid.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTessellatedSolid.cxx
@@ -1,9 +1,9 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
-
 #include "GeoModelKernel/GeoTessellatedSolid.h"
 #include "GeoModelKernel/GeoShapeAction.h"
+#include "GeoModelKernel/throwExcept.h"
 #include <stdexcept>
 
 const std::string GeoTessellatedSolid::s_classType = "TessellatedSolid";
@@ -16,7 +16,7 @@ GeoTessellatedSolid::GeoTessellatedSolid()
 double GeoTessellatedSolid::volume(int) const
 {
   if (!isValid ())
-    throw std::runtime_error ("Volume requested for incomplete tessellated solid");
+    THROW_EXCEPTION("Volume requested for incomplete tessellated solid");
   double v = 0.;
   for (size_t i = 0; i < getNumberOfFacets(); ++i)
   {
@@ -28,7 +28,7 @@ double GeoTessellatedSolid::volume(int) const
     v += facet->getVertex(0).dot(e1.cross(e2));
   }
   if (v < 0.)
-    throw std::runtime_error ("Incorrect order of vertices in tessellated solid");
+    THROW_EXCEPTION("Incorrect order of vertices in tessellated solid");
   return v*(1./6.);
 }
 
@@ -36,7 +36,7 @@ void GeoTessellatedSolid::extent (double& xmin, double& ymin, double& zmin,
                                   double& xmax, double& ymax, double& zmax) const
 {
   if (!isValid ())
-    throw std::runtime_error ("Extent requested for incomplete tessellated solid");
+    THROW_EXCEPTION("Extent requested for incomplete tessellated solid");
   GeoFacet* facet = getFacet(0);
   GeoTrf::Vector3D vertex = facet->getVertex(0);
   xmin = xmax = vertex.x();
@@ -63,7 +63,7 @@ void GeoTessellatedSolid::extent (double& xmin, double& ymin, double& zmin,
 
 bool GeoTessellatedSolid::contains (double x, double y, double z) const
 {
-  throw std::runtime_error ("GeoTessellatedSolid::contains(x,y,z) is not implemented");
+  THROW_EXCEPTION("GeoTessellatedSolid::contains(x,y,z) is not implemented");
   return false;
 }
 
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTorus.cxx b/GeoModelCore/GeoModelKernel/src/GeoTorus.cxx
index 8626a6cb1..def70e342 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTorus.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTorus.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoTorus.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTransform.cxx b/GeoModelCore/GeoModelKernel/src/GeoTransform.cxx
index d9543ee34..26b963e44 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTransform.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTransform.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoTransform.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTrap.cxx b/GeoModelCore/GeoModelKernel/src/GeoTrap.cxx
index 45b39da98..56adb9600 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTrap.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTrap.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoTrap.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTraversalState.cxx b/GeoModelCore/GeoModelKernel/src/GeoTraversalState.cxx
index 644d1c9ad..054f2d7eb 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTraversalState.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTraversalState.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoTraversalState.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTrd.cxx b/GeoModelCore/GeoModelKernel/src/GeoTrd.cxx
index 3d35073e9..287e5f38f 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTrd.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTrd.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoTrd.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTube.cxx b/GeoModelCore/GeoModelKernel/src/GeoTube.cxx
index 35f10c2fa..431086fbd 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTube.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTube.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoTube.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTubs.cxx b/GeoModelCore/GeoModelKernel/src/GeoTubs.cxx
index ea699ee07..1c1a0dd93 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTubs.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTubs.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoTubs.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoTwistedTrap.cxx b/GeoModelCore/GeoModelKernel/src/GeoTwistedTrap.cxx
index 35311e4d9..239b3d7d3 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoTwistedTrap.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoTwistedTrap.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoTwistedTrap.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoUnidentifiedShape.cxx b/GeoModelCore/GeoModelKernel/src/GeoUnidentifiedShape.cxx
index a5292a185..77433f524 100644
--- a/GeoModelCore/GeoModelKernel/src/GeoUnidentifiedShape.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoUnidentifiedShape.cxx
@@ -1,14 +1,17 @@
+/*
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+*/
 #include "GeoModelKernel/GeoUnidentifiedShape.h"
 #include "GeoModelKernel/Query.h"
 #include "GeoModelKernel/GeoShapeAction.h"
+#include "GeoModelKernel/throwExcept.h"
 #include <stdexcept>
 
 const std::string         GeoUnidentifiedShape::_classType="UnidentifiedShape";
 const ShapeType           GeoUnidentifiedShape::_classTypeID=0xFFFFFFFF;
 
 // Destructor:
-GeoUnidentifiedShape::~GeoUnidentifiedShape() {
-}
+GeoUnidentifiedShape::~GeoUnidentifiedShape() = default;
 
 // Constructor:
 GeoUnidentifiedShape::GeoUnidentifiedShape(const std::string & name):
@@ -44,14 +47,14 @@ double GeoUnidentifiedShape::volume () const {
 void GeoUnidentifiedShape::extent (double& xmin, double& ymin, double& zmin,
                                    double& xmax, double& ymax, double& zmax) const
 {
-  throw std::runtime_error ("GeoUndefinedShape::extent is not implemented");
+  THROW_EXCEPTION("GeoUndefinedShape::extent is not implemented");
   xmin = ymin = zmin = xmax = ymax = zmax = 0.;
 }
 
 // Returns true if the shape contains the point, false otherwise
 bool GeoUnidentifiedShape::contains (double x, double y, double z) const
 {
-  throw std::runtime_error ("GeoUndefinedShape::contains(x,y,z) is not implemented");
+  THROW_EXCEPTION("GeoUndefinedShape::contains(x,y,z) is not implemented");
   return false;
 }
 
diff --git a/GeoModelCore/GeoModelKernel/src/GeoVDetectorElement.cxx b/GeoModelCore/GeoModelKernel/src/GeoVDetectorElement.cxx
index d84ed8e2c..73e6ae3dd 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoVDetectorElement.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoVDetectorElement.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoVDetectorElement.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoVDetectorFactory.cxx b/GeoModelCore/GeoModelKernel/src/GeoVDetectorFactory.cxx
index 25daefa33..1009fec35 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoVDetectorFactory.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoVDetectorFactory.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoVDetectorFactory.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoVDetectorManager.cxx b/GeoModelCore/GeoModelKernel/src/GeoVDetectorManager.cxx
index c5b8370f5..679dc5a0d 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoVDetectorManager.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoVDetectorManager.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoVDetectorManager.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoVFullPhysVol.cxx b/GeoModelCore/GeoModelKernel/src/GeoVFullPhysVol.cxx
index 1c014d7ee..472570979 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoVFullPhysVol.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoVFullPhysVol.cxx
@@ -1,9 +1,10 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoVFullPhysVol.h"
 #include "GeoModelKernel/GeoVAlignmentStore.h"
+#include "GeoModelKernel/throwExcept.h"
 #include <string>
 GeoVFullPhysVol::GeoVFullPhysVol(const GeoLogVol* logVol)
   : GeoVPhysVol{logVol},
@@ -16,12 +17,11 @@ const std::string &  GeoVFullPhysVol::getAbsoluteName () const
   //                                                                                                //     
   // Get ready for something to go wrong:                                                           //     
   //                                                                                                //     
-  static std::string errorMessage("Full Physical Volume errroneously placed in a shared portion of a detector description graph.\nName of shared volume:  ");
   //                                                                                                //     
   //------------------------------------------------------------------------------------------------//     
 
   if(m_absName == "") {
-    if(isShared()) throw std::runtime_error(errorMessage);
+    if(isShared()) THROW_EXCEPTION("Full Physical Volume errroneously placed in a shared portion of a detector description graph.\nName of shared volume: ");
 
     //
     // Check the cache.  If it is empty, compute the absolute position from the
@@ -37,7 +37,7 @@ const std::string &  GeoVFullPhysVol::getAbsoluteName () const
       tProd = tProd + "/" + name;
       child = parent;
       if (child->isShared ()) {
-        throw std::runtime_error(errorMessage);
+        THROW_EXCEPTION("Full Physical Volume errroneously placed in a shared portion of a detector description graph.\nName of shared volume: ");
       }
       else {
         parent = child->getParent ();
@@ -55,12 +55,11 @@ unsigned int GeoVFullPhysVol::getId () const
   //                                                                                                //     
   // Get ready for something to go wrong:                                                           //     
   //                                                                                                //     
-  static std::string errorMessage("Full Physical Volume errroneously placed in a shared portion of a detector description graph.\nName of shared volume:  ");
   //                                                                                                //     
   //------------------------------------------------------------------------------------------------//     
 
   if(!m_id) {
-    if(isShared()) throw std::runtime_error(errorMessage);
+    if(isShared()) THROW_EXCEPTION("Full Physical Volume errroneously placed in a shared portion of a detector description graph.\nName of shared volume:  ");
 
     //     
     // Check the cache.  If it is empty, compute the absolute position from the     
@@ -68,7 +67,7 @@ unsigned int GeoVFullPhysVol::getId () const
     //     
     PVConstLink child = this, parent = nullptr;
     if(child->isShared()) {
-      throw std::runtime_error(errorMessage);
+      THROW_EXCEPTION("Full Physical Volume errroneously placed in a shared portion of a detector description graph.\nName of shared volume:  ");
     }	
     else {
       parent = child->getParent();
diff --git a/GeoModelCore/GeoModelKernel/src/GeoVPhysVol.cxx b/GeoModelCore/GeoModelKernel/src/GeoVPhysVol.cxx
index b53c82778..11a554b67 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoVPhysVol.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoVPhysVol.cxx
@@ -67,7 +67,7 @@ void GeoVPhysVol::apply(GeoVolumeAction *action) const {
     if(action->shouldTerminate()) return;  // To Do: do I need this?
     break;
   default:
-    throw std::runtime_error("GeoVPhysVol::apply(). Unsupported GeoVolumeAction type " + std::to_string((unsigned)action->getType()));
+    THROW_EXCEPTION("GeoVPhysVol::apply(). Unsupported GeoVolumeAction type "<<action->getType());
   }
 }
 
diff --git a/GeoModelCore/GeoModelKernel/src/GeoVolumeAction.cxx b/GeoModelCore/GeoModelKernel/src/GeoVolumeAction.cxx
index 5dbf90ff2..819f53c4c 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoVolumeAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoVolumeAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoVolumeAction.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoVolumeCursor.cxx b/GeoModelCore/GeoModelKernel/src/GeoVolumeCursor.cxx
index a6d9575d3..d28c9d1c1 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoVolumeCursor.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoVolumeCursor.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoVolumeCursor.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeoXF.cxx b/GeoModelCore/GeoModelKernel/src/GeoXF.cxx
index 23cac3f88..32b17b399 100755
--- a/GeoModelCore/GeoModelKernel/src/GeoXF.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeoXF.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeoXF.h"
diff --git a/GeoModelCore/GeoModelKernel/src/GeometryMap.cxx b/GeoModelCore/GeoModelKernel/src/GeometryMap.cxx
index 5e01d9de3..1dc84d971 100755
--- a/GeoModelCore/GeoModelKernel/src/GeometryMap.cxx
+++ b/GeoModelCore/GeoModelKernel/src/GeometryMap.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/GeometryMap.h"
diff --git a/GeoModelCore/GeoModelKernel/src/TemplateVolAction.cxx b/GeoModelCore/GeoModelKernel/src/TemplateVolAction.cxx
index e1dccfb17..68bd84060 100755
--- a/GeoModelCore/GeoModelKernel/src/TemplateVolAction.cxx
+++ b/GeoModelCore/GeoModelKernel/src/TemplateVolAction.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "GeoModelKernel/TemplateVolAction.h"
diff --git a/GeoModelCore/GeoModelKernel/tests/testEulerAngles.cxx b/GeoModelCore/GeoModelKernel/tests/testEulerAngles.cxx
index ce40c595c..861c1fdc6 100644
--- a/GeoModelCore/GeoModelKernel/tests/testEulerAngles.cxx
+++ b/GeoModelCore/GeoModelKernel/tests/testEulerAngles.cxx
@@ -1,4 +1,4 @@
-// Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+// Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 
 
 
diff --git a/GeoModelCore/GeoModelKernel/tests/testGeoIntrusivePtr.cxx b/GeoModelCore/GeoModelKernel/tests/testGeoIntrusivePtr.cxx
index 29c1a5bfd..e3c211a4b 100644
--- a/GeoModelCore/GeoModelKernel/tests/testGeoIntrusivePtr.cxx
+++ b/GeoModelCore/GeoModelKernel/tests/testGeoIntrusivePtr.cxx
@@ -1,4 +1,4 @@
-// Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+// Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 
 
 #include <GeoModelKernel/GeoFullPhysVol.h>
diff --git a/GeoModelExamples/HelloToy/step1_create_store_geo_and_publish_nodes.cpp b/GeoModelExamples/HelloToy/step1_create_store_geo_and_publish_nodes.cpp
index b0ed32fe4..872340795 100644
--- a/GeoModelExamples/HelloToy/step1_create_store_geo_and_publish_nodes.cpp
+++ b/GeoModelExamples/HelloToy/step1_create_store_geo_and_publish_nodes.cpp
@@ -54,7 +54,7 @@
 
 #include "GeoModelWrite/WriteGeoModel.h"
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 
 // Units
diff --git a/GeoModelIO/GeoModelDBManager/CMakeLists.txt b/GeoModelIO/GeoModelDBManager/CMakeLists.txt
index 52ee219c2..513943cf4 100644
--- a/GeoModelIO/GeoModelDBManager/CMakeLists.txt
+++ b/GeoModelIO/GeoModelDBManager/CMakeLists.txt
@@ -14,7 +14,7 @@ file( GLOB HEADERS GeoModelDBManager/*.h )
 
 # Set up the library.
 add_library( GeoModelDBManager SHARED ${HEADERS} ${SOURCES} )
-target_link_libraries( GeoModelDBManager PRIVATE SQLite::SQLite3 GeoModelHelpers )
+target_link_libraries( GeoModelDBManager PRIVATE SQLite::SQLite3 GeoModelHelpers GeoModelKernel )
 target_include_directories( GeoModelDBManager PUBLIC
    $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
    $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> )
diff --git a/GeoModelIO/GeoModelDBManager/src/GMDBManager.cpp b/GeoModelIO/GeoModelDBManager/src/GMDBManager.cpp
index 70d3382bc..742eb9f3a 100644
--- a/GeoModelIO/GeoModelDBManager/src/GMDBManager.cpp
+++ b/GeoModelIO/GeoModelDBManager/src/GMDBManager.cpp
@@ -25,7 +25,7 @@
 
 #include <GeoModelDBManager/GMDBManager.h>
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelHelpers/StringUtils.h"
 
 
diff --git a/GeoModelIO/GeoModelIOHelpers/GeoModelIOHelpers/GMIO.h b/GeoModelIO/GeoModelIOHelpers/GeoModelIOHelpers/GMIO.h
index 3235063c0..df56bc2bc 100644
--- a/GeoModelIO/GeoModelIOHelpers/GeoModelIOHelpers/GMIO.h
+++ b/GeoModelIO/GeoModelIOHelpers/GeoModelIOHelpers/GMIO.h
@@ -22,7 +22,7 @@
 #include "GeoModelRead/ReadGeoModel.h"
 #include "GeoModelWrite/WriteGeoModel.h"
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 namespace GeoModelIO {
 
diff --git a/GeoModelIO/GeoModelRead/GeoModelRead/ReadGeoModel.tpp b/GeoModelIO/GeoModelRead/GeoModelRead/ReadGeoModel.tpp
index 006813743..ad08d01cd 100644
--- a/GeoModelIO/GeoModelRead/GeoModelRead/ReadGeoModel.tpp
+++ b/GeoModelIO/GeoModelRead/GeoModelRead/ReadGeoModel.tpp
@@ -15,7 +15,7 @@
 #include "GeoModelKernel/GeoFullPhysVol.h"
 
 #include "GeoModelHelpers/variantHelpers.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 
 
diff --git a/GeoModelIO/GeoModelRead/src/BuildGeoShapes_GenericTrap.cpp b/GeoModelIO/GeoModelRead/src/BuildGeoShapes_GenericTrap.cpp
index dc265b92c..8d2987dfe 100644
--- a/GeoModelIO/GeoModelRead/src/BuildGeoShapes_GenericTrap.cpp
+++ b/GeoModelIO/GeoModelRead/src/BuildGeoShapes_GenericTrap.cpp
@@ -11,7 +11,7 @@
 
 #include "GeoModelKernel/GeoGenericTrap.h"
 #include "GeoModelHelpers/variantHelpers.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include <vector>
 #include <iostream>
diff --git a/GeoModelIO/GeoModelRead/src/BuildGeoShapes_Pcon.cpp b/GeoModelIO/GeoModelRead/src/BuildGeoShapes_Pcon.cpp
index 6a7a303be..d1bd3ec57 100644
--- a/GeoModelIO/GeoModelRead/src/BuildGeoShapes_Pcon.cpp
+++ b/GeoModelIO/GeoModelRead/src/BuildGeoShapes_Pcon.cpp
@@ -11,7 +11,7 @@
 
 #include "GeoModelKernel/GeoPcon.h"
 #include "GeoModelHelpers/variantHelpers.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include <vector>
 #include <iostream>
diff --git a/GeoModelIO/GeoModelRead/src/BuildGeoShapes_Pgon.cpp b/GeoModelIO/GeoModelRead/src/BuildGeoShapes_Pgon.cpp
index 666ede875..dcf90921b 100644
--- a/GeoModelIO/GeoModelRead/src/BuildGeoShapes_Pgon.cpp
+++ b/GeoModelIO/GeoModelRead/src/BuildGeoShapes_Pgon.cpp
@@ -11,7 +11,7 @@
 
 #include "GeoModelKernel/GeoPgon.h"
 #include "GeoModelHelpers/variantHelpers.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include <vector>
 #include <iostream>
diff --git a/GeoModelIO/GeoModelRead/src/BuildGeoShapes_SimplePolygonBrep.cpp b/GeoModelIO/GeoModelRead/src/BuildGeoShapes_SimplePolygonBrep.cpp
index 3a73172d1..9ba3f5b6d 100644
--- a/GeoModelIO/GeoModelRead/src/BuildGeoShapes_SimplePolygonBrep.cpp
+++ b/GeoModelIO/GeoModelRead/src/BuildGeoShapes_SimplePolygonBrep.cpp
@@ -11,7 +11,7 @@
 
 #include "GeoModelKernel/GeoSimplePolygonBrep.h"
 #include "GeoModelHelpers/variantHelpers.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include <vector>
 #include <iostream>
diff --git a/GeoModelIO/GeoModelRead/src/ReadGeoModel.cpp b/GeoModelIO/GeoModelRead/src/ReadGeoModel.cpp
index 60044fa1d..79461fb44 100644
--- a/GeoModelIO/GeoModelRead/src/ReadGeoModel.cpp
+++ b/GeoModelIO/GeoModelRead/src/ReadGeoModel.cpp
@@ -100,7 +100,7 @@
 #include "GeoModelKernel/GeoUnidentifiedShape.h"
 
 #include "GeoModelHelpers/variantHelpers.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelHelpers/StringUtils.h"
 
 // Units
diff --git a/GeoModelIO/GeoModelWrite/src/WriteGeoModel.cpp b/GeoModelIO/GeoModelWrite/src/WriteGeoModel.cpp
index 4091dc8da..b0c362b01 100644
--- a/GeoModelIO/GeoModelWrite/src/WriteGeoModel.cpp
+++ b/GeoModelIO/GeoModelWrite/src/WriteGeoModel.cpp
@@ -65,7 +65,7 @@
 #include "GeoModelKernel/GeoAnnulusSurface.h"
 #include "GeoModelKernel/GeoDiamondSurface.h"
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelHelpers/StringUtils.h"
 
 // C++ includes
diff --git a/GeoModelTools/GeoModelXML/GMXPlugin/src/GMXPlugin.cxx b/GeoModelTools/GeoModelXML/GMXPlugin/src/GMXPlugin.cxx
index 2c4e93db3..df8b57edb 100644
--- a/GeoModelTools/GeoModelXML/GMXPlugin/src/GMXPlugin.cxx
+++ b/GeoModelTools/GeoModelXML/GMXPlugin/src/GMXPlugin.cxx
@@ -6,7 +6,7 @@
 
 #include "GeoModelHelpers/StringUtils.h"
 #include "GeoModelHelpers/FileUtils.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelKernel/GeoPhysVol.h"
 
 #include "GeoModelXml/GmxInterface.h"
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/GeoModelXml/GmxInterface.h b/GeoModelTools/GeoModelXML/GeoModelXml/GeoModelXml/GmxInterface.h
index c14562e5a..bcbb3f5d2 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/GeoModelXml/GmxInterface.h
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/GeoModelXml/GmxInterface.h
@@ -21,7 +21,7 @@
 #include <variant>
 #include "GeoModelKernel/GeoVFullPhysVol.h"
 #include "GeoModelKernel/GeoAlignableTransform.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 class GeoPublisher;
 
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/AssemblyrefProcessor.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/AssemblyrefProcessor.cxx
index 455526fcd..399751f21 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/AssemblyrefProcessor.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/AssemblyrefProcessor.cxx
@@ -7,7 +7,7 @@
 //
 #include "OutputDirector.h"
 #include "GeoModelXml/AssemblyrefProcessor.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include "xercesc/util/XercesDefs.hpp"
 #include <xercesc/dom/DOM.hpp>
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/Element2GeoItem.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/Element2GeoItem.cxx
index 09c48a79f..e780aac18 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/Element2GeoItem.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/Element2GeoItem.cxx
@@ -12,7 +12,7 @@
 
 #include "GeoModelXml/GmxUtil.h"
 #include "GeoModelKernel/RCBase.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 using namespace std;
 using namespace xercesc;
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/Gmx2Geo.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/Gmx2Geo.cxx
index faba52648..875861a56 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/Gmx2Geo.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/Gmx2Geo.cxx
@@ -29,7 +29,7 @@
 #include "GeoModelXml/GmxInterface.h"
 #include "GeoModelXml/createdomdocument.h"
 #include "GeoModelHelpers/MaterialManager.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 using namespace std;
 using namespace xercesc;
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/GmxUtil.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/GmxUtil.cxx
index 2445aae34..5e173dca0 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/GmxUtil.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/GmxUtil.cxx
@@ -11,7 +11,7 @@
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoLogVol.h"
 #include "GeoModelXml/GmxInterface.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include <cstdlib>
 #include <sstream>
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/LogvolProcessor.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/LogvolProcessor.cxx
index bd4850c41..8638d8794 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/LogvolProcessor.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/LogvolProcessor.cxx
@@ -35,7 +35,7 @@
 #include "GeoModelXml/GeoNodeList.h"
 #include "xercesc/util/XMLString.hpp"
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 // using namespace CLHEP;
 
 using namespace std;
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeIntersection.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeIntersection.cxx
index d047d0ea3..310772468 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeIntersection.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeIntersection.cxx
@@ -14,7 +14,7 @@
 
 #include "GeoModelHelpers/TransformSorter.h"
 #include "GeoModelHelpers/GeoShapeUtils.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "xercesc/util/XMLString.hpp"
 #include "GeoModelXml/GmxUtil.h"
 
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeMaterial.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeMaterial.cxx
index 32fb28956..1ae9b3f6d 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeMaterial.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeMaterial.cxx
@@ -11,7 +11,7 @@
 #include "xercesc/util/XMLString.hpp"
 #include "GeoModelXml/GmxUtil.h"
 #include "GeoModelKernel/Units.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 using namespace xercesc;
 using namespace std;
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakePcon.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakePcon.cxx
index e1129d4c9..c23c58dba 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakePcon.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakePcon.cxx
@@ -8,7 +8,7 @@
 #include <xercesc/dom/DOM.hpp>
 #include "GeoModelKernel/GeoPcon.h"
 #include "GeoModelHelpers/GeoShapeUtils.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "xercesc/util/XMLString.hpp"
 #include "GeoModelXml/GmxUtil.h"
 
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeShapeShift.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeShapeShift.cxx
index 2e6b9fae5..973c27461 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeShapeShift.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeShapeShift.cxx
@@ -14,7 +14,7 @@
 #include "GeoModelXml/GmxUtil.h"
 
 #include "GeoModelHelpers/TransformSorter.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelHelpers/GeoShapeUtils.h"
 
 #include "xercesc/util/XMLString.hpp"
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeSimplePolygonBrep.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeSimplePolygonBrep.cxx
index 7f0411cff..c2a8bc713 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeSimplePolygonBrep.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeSimplePolygonBrep.cxx
@@ -10,7 +10,7 @@
 #include "GeoModelXml/shape/MakeSimplePolygonBrep.h"
 #include "GeoModelKernel/GeoSimplePolygonBrep.h"
 #include <xercesc/dom/DOM.hpp>
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "xercesc/util/XMLString.hpp"
 #include "GeoModelXml/GmxUtil.h"
 
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeSubtraction.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeSubtraction.cxx
index 9fa649711..144378430 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeSubtraction.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeSubtraction.cxx
@@ -11,7 +11,7 @@
 #include "GeoModelKernel/GeoShapeSubtraction.h"
 #include "GeoModelKernel/GeoShapeShift.h"
 #include "GeoModelKernel/GeoTransform.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 #include "xercesc/util/XMLString.hpp"
 #include "GeoModelXml/GmxUtil.h"
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeUnion.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeUnion.cxx
index 6ad32a0c2..459fb0098 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeUnion.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/MakeUnion.cxx
@@ -8,7 +8,7 @@
 #include <xercesc/dom/DOM.hpp>
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "xercesc/util/XMLString.hpp"
 #include "GeoModelXml/GmxUtil.h"
 
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/MulticopyProcessor.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/MulticopyProcessor.cxx
index 4401360d1..127732a4f 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/MulticopyProcessor.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/MulticopyProcessor.cxx
@@ -37,7 +37,7 @@
 #include "GeoModelXml/ProcessorRegistry.h"
 #include "GeoModelXml/GmxUtil.h"
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 using namespace xercesc;
 using namespace std;
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/ReplicaZProcessor.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/ReplicaZProcessor.cxx
index 5c493bbbd..840fb2f46 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/ReplicaZProcessor.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/ReplicaZProcessor.cxx
@@ -19,7 +19,7 @@
 #include "GeoModelKernel/GeoNameTag.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoModelHelpers/StringUtils.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 
 #include "xercesc/util/XMLString.hpp"
diff --git a/GeoModelTools/GeoModelXML/GeoModelXml/src/TransformrefProcessor.cxx b/GeoModelTools/GeoModelXML/GeoModelXml/src/TransformrefProcessor.cxx
index a0e57980f..387054801 100644
--- a/GeoModelTools/GeoModelXML/GeoModelXml/src/TransformrefProcessor.cxx
+++ b/GeoModelTools/GeoModelXML/GeoModelXml/src/TransformrefProcessor.cxx
@@ -12,7 +12,7 @@
 #include "GeoModelXml/GmxUtil.h"
 #include "GeoModelXml/GeoNodeList.h"
 #include "xercesc/util/XMLString.hpp"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 
 using namespace std;
 using namespace xercesc;
diff --git a/GeoModelTools/GeoModelXMLDumper/src/GeoXMLDumper.cxx b/GeoModelTools/GeoModelXMLDumper/src/GeoXMLDumper.cxx
index f78ca6c1f..6d220d674 100644
--- a/GeoModelTools/GeoModelXMLDumper/src/GeoXMLDumper.cxx
+++ b/GeoModelTools/GeoModelXMLDumper/src/GeoXMLDumper.cxx
@@ -27,7 +27,7 @@
 
 #include "GeoModelHelpers/GeoShapeUtils.h"
 #include "GeoModelHelpers/getChildNodesWithTrf.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "GeoModelHelpers/TransformToStringConverter.h"
 #include "GeoModelHelpers/StringUtils.h"
 #include "GeoModelHelpers/FileUtils.h"
diff --git a/GeoModelTools/GeoModelXMLParser/CMakeLists.txt b/GeoModelTools/GeoModelXMLParser/CMakeLists.txt
index 1b98523de..6f68ec6a8 100644
--- a/GeoModelTools/GeoModelXMLParser/CMakeLists.txt
+++ b/GeoModelTools/GeoModelXMLParser/CMakeLists.txt
@@ -21,7 +21,7 @@ set_target_properties( GeoModelXMLParser PROPERTIES
 # version of the library.
 add_library( GeoModelTools::GeoModelXMLParser ALIAS GeoModelXMLParser )
 
-target_link_libraries( GeoModelXMLParser PRIVATE GeoModelCore::GeoModelHelpers  )
+target_link_libraries( GeoModelXMLParser PRIVATE GeoModelCore::GeoModelKernel GeoModelCore::GeoModelHelpers  )
 
 # Install the library.
 install(TARGETS GeoModelXMLParser
diff --git a/GeoModelTools/GeoModelXMLParser/src/XMLHandler.cxx b/GeoModelTools/GeoModelXMLParser/src/XMLHandler.cxx
index 935156303..c82f54be1 100644
--- a/GeoModelTools/GeoModelXMLParser/src/XMLHandler.cxx
+++ b/GeoModelTools/GeoModelXMLParser/src/XMLHandler.cxx
@@ -5,7 +5,7 @@
 #include "GeoModelXMLParser/XMLHandler.h"
 #include "GeoModelXMLParser/XMLHandlerStore.h"
 #include "GeoModelHelpers/StringUtils.h"
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "ExpressionEvaluator/ExpressionEvaluator.h"
 
 #include <vector>
diff --git a/GeoModelVisualization/VP1GeometrySystems/src/DumpShape.cxx b/GeoModelVisualization/VP1GeometrySystems/src/DumpShape.cxx
index ffbbf43e9..18b48ee43 100644
--- a/GeoModelVisualization/VP1GeometrySystems/src/DumpShape.cxx
+++ b/GeoModelVisualization/VP1GeometrySystems/src/DumpShape.cxx
@@ -26,7 +26,7 @@
 #include "GeoModelKernel/GeoAnnulusSurface.h"
 #include "GeoModelKernel/GeoDiamondSurface.h"
 
-#include "GeoModelHelpers/throwExcept.h"
+#include "GeoModelKernel/throwExcept.h"
 #include "Inventor/SbMatrix.h"
 #include <cassert>
 
diff --git a/athena_ci/patches/0001-Move-throw-except.patch b/athena_ci/patches/0001-Move-throw-except.patch
new file mode 100644
index 000000000..36cec4b22
--- /dev/null
+++ b/athena_ci/patches/0001-Move-throw-except.patch
@@ -0,0 +1,584 @@
+From eca80303324ee9b19f75dd507a7d13da0fbe6b2c Mon Sep 17 00:00:00 2001
+From: Johannes Josef Junggeburth <johannes.josef.junggeburth@cern.ch>
+Date: Thu, 24 Oct 2024 10:06:45 +0200
+Subject: [PATCH] Move throw except
+
+---
+ .../GeoModelUtilities/GeoModelUtilities/TransformMap.icc        | 2 +-
+ .../MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx     | 2 +-
+ .../MuonCalib/MdtCalib/MdtCalibData/src/BFieldCorFunc.cxx       | 2 +-
+ .../MuonCalib/MdtCalib/MdtCalibData/src/RtChebyshev.cxx         | 2 +-
+ .../MdtCalib/MdtCalibData/src/RtResolutionChebyshev.cxx         | 2 +-
+ .../MuonCalib/MdtCalib/MdtCalibInterfaces/src/MdtCalibInput.cxx | 2 +-
+ .../MuonCalib/MdtCalib/MdtCalibSvc/src/MdtCalibrationTool.cxx   | 2 +-
+ .../MuonCalibUtils/MuonCalibMath/src/BaseFunctionFitter.cxx     | 2 +-
+ .../MuonCalib/MuonCalibUtils/MuonCalibMath/src/PolygonBase.cxx  | 2 +-
+ .../MuonCnv/MuonRPC_CnvTools/src/RpcRdoToPrepDataToolMT.cxx     | 2 +-
+ .../MuonCondGeneral/MuonCondAlg/src/MdtAsBuiltCondAlg.cxx       | 2 +-
+ .../MuonCondGeneral/MuonCondAlg/src/MdtCalibDbAlg.cxx           | 2 +-
+ .../MuonCondGeneral/MuonCondAlg/src/NswCalibDbAlg.cxx           | 2 +-
+ .../MuonCondGeneral/MuonCondAlg/src/NswDcsDbAlg.cxx             | 2 +-
+ .../MuonCondGeneral/MuonCondData/src/DigitEffiData.cxx          | 2 +-
+ .../MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx          | 2 +-
+ .../MuonCondData/src/NswCalibDbTimeChargeData.cxx               | 2 +-
+ .../MuonCondGeneral/MuonCondData/src/NswDcsDbData.cxx           | 2 +-
+ .../MuonCondGeneral/MuonCondData/src/NswErrorCalibData.cxx      | 2 +-
+ .../MuonCondGeneral/MuonCondData/src/NswT0Data.cxx              | 2 +-
+ .../MuonDetDescr/MuonReadoutGeometry/src/MdtReadoutElement.cxx  | 2 +-
+ .../MuonReadoutGeometry/src/MuonDetectorManager.cxx             | 2 +-
+ .../RPC_Digitization/src/RpcDigitizationTool.cxx                | 2 +-
+ .../MuonPhaseII/Event/MuonSpacePoint/src/UtilFunctions.cxx      | 2 +-
+ .../Event/xAOD/xAODMuonPrepData/Root/UtilFunctions.cxx          | 2 +-
+ .../xAODMuonPrepData/xAODMuonPrepData/versions/AccessorMacros.h | 2 +-
+ .../Event/xAOD/xAODMuonViews/xAODMuonViews/ChamberViewer.h      | 2 +-
+ .../MuonAlignmentDataR4/src/MdtAlignmentStore.cxx               | 2 +-
+ .../MuonDigitizationR4/src/MuonDigitizationTool.cxx             | 2 +-
+ .../MuonSensitiveDetectorsR4/src/MdtSensitiveDetector.cxx       | 2 +-
+ .../MuonG4/MuonSensitiveDetectorsR4/src/MmSensitiveDetector.cxx | 2 +-
+ .../MuonSensitiveDetectorsR4/src/RpcSensitiveDetector.cxx       | 2 +-
+ .../MuonSensitiveDetectorsR4/src/TgcSensitiveDetector.cxx       | 2 +-
+ .../MuonSensitiveDetectorsR4/src/sTgcSensitiveDetector.cxx      | 2 +-
+ .../MuonPatternHelpers/Root/SegmentFitHelperFunctions.cxx       | 2 +-
+ .../MuonValidation/MuonPRDTestR4/Root/TesterModuleBase.cxx      | 2 +-
+ .../MuonStationIntersectCond/src/MdtIntersectGeometry.cxx       | 2 +-
+ Simulation/G4Utilities/Geo2G4/src/Geo2G4Builder.cxx             | 2 +-
+ Tracking/Acts/ActsGeoUtils/src/SurfaceCache.cxx                 | 2 +-
+ Tracking/Acts/ActsGeometry/src/ActsDetectorElement.cxx          | 2 +-
+ .../TrkDriftCircleMath/src/MdtChamberGeometry.cxx               | 2 +-
+ 41 files changed, 41 insertions(+), 41 deletions(-)
+
+diff --git a/DetectorDescription/GeoModel/GeoModelUtilities/GeoModelUtilities/TransformMap.icc b/DetectorDescription/GeoModel/GeoModelUtilities/GeoModelUtilities/TransformMap.icc
+index 9d71a8653a2..45134100c37 100755
+--- a/DetectorDescription/GeoModel/GeoModelUtilities/GeoModelUtilities/TransformMap.icc
++++ b/DetectorDescription/GeoModel/GeoModelUtilities/GeoModelUtilities/TransformMap.icc
+@@ -5,7 +5,7 @@
+ #ifndef GEOMODELUTILITIES_TRANSFORMMAP_ICC
+ #define GEOMODELUTILITIES_TRANSFORMMAP_ICC
+ 
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ #include "CxxUtils/inline_hints.h"
+ 
+ 
+diff --git a/MuonSpectrometer/MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx b/MuonSpectrometer/MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx
+index 6796d45aa05..5d83f76571a 100644
+--- a/MuonSpectrometer/MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx
++++ b/MuonSpectrometer/MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx
+@@ -11,7 +11,7 @@
+ #include "CxxUtils/ArrayHelper.h"
+ #include "StoreGate/StoreGateSvc.h"
+ #include "Identifier/Identifier.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ namespace {
+ /// Four mezzanine channels explicitly break the cabling schema in the legacy
+diff --git a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/BFieldCorFunc.cxx b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/BFieldCorFunc.cxx
+index c991661e9c3..c481008c31e 100644
+--- a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/BFieldCorFunc.cxx
++++ b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/BFieldCorFunc.cxx
+@@ -9,7 +9,7 @@
+ #include "MdtCalibData/IRtRelation.h"
+ #include "MuonCalibMath/BaseFunctionFitter.h"
+ #include "MuonCalibMath/LegendrePolynomial.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ #include "cmath"
+ 
+ using namespace MuonCalib;
+diff --git a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/RtChebyshev.cxx b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/RtChebyshev.cxx
+index 6a75398569e..813dc50bfd5 100644
+--- a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/RtChebyshev.cxx
++++ b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/RtChebyshev.cxx
+@@ -3,7 +3,7 @@
+ */
+ #include "MdtCalibData/RtChebyshev.h"
+ #include "MuonCalibMath/ChebychevPoly.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ using namespace MuonCalib;
+ 
+ RtChebyshev::RtChebyshev(const ParVec& vec) : 
+diff --git a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/RtResolutionChebyshev.cxx b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/RtResolutionChebyshev.cxx
+index 111b63529c1..24e70884ff4 100644
+--- a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/RtResolutionChebyshev.cxx
++++ b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/src/RtResolutionChebyshev.cxx
+@@ -3,7 +3,7 @@
+ */
+ #include "MdtCalibData/RtResolutionChebyshev.h"
+ #include "MuonCalibMath/ChebychevPoly.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ using namespace MuonCalib;
+ 
+diff --git a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibInterfaces/src/MdtCalibInput.cxx b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibInterfaces/src/MdtCalibInput.cxx
+index a1862fa9c16..e9643299143 100644
+--- a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibInterfaces/src/MdtCalibInput.cxx
++++ b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibInterfaces/src/MdtCalibInput.cxx
+@@ -16,7 +16,7 @@
+ #include <MuonDigitContainer/MdtDigit.h>
+ #include <MuonPrepRawData/MdtPrepData.h>
+ #include <TrkSurfaces/StraightLineSurface.h>
+-#include <GeoModelHelpers/throwExcept.h>
++#include <GeoModelKernel/throwExcept.h>
+ 
+ std::ostream& operator<<(std::ostream& ostr, const MdtCalibInput& input){
+    ostr<<"adc: "<<input.adc()<<", ";
+diff --git a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibSvc/src/MdtCalibrationTool.cxx b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibSvc/src/MdtCalibrationTool.cxx
+index e556c062c44..88903fcbf18 100644
+--- a/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibSvc/src/MdtCalibrationTool.cxx
++++ b/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibSvc/src/MdtCalibrationTool.cxx
+@@ -23,7 +23,7 @@
+ #include "MagFieldElements/AtlasFieldCache.h"
+ #include "MuonCalibEvent/MdtCalibHit.h"
+ 
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ namespace {
+   static double const twoBySqrt12 = 2/std::sqrt(12);
+ }
+diff --git a/MuonSpectrometer/MuonCalib/MuonCalibUtils/MuonCalibMath/src/BaseFunctionFitter.cxx b/MuonSpectrometer/MuonCalib/MuonCalibUtils/MuonCalibMath/src/BaseFunctionFitter.cxx
+index 641e9aca192..1a52a629edb 100644
+--- a/MuonSpectrometer/MuonCalib/MuonCalibUtils/MuonCalibMath/src/BaseFunctionFitter.cxx
++++ b/MuonSpectrometer/MuonCalib/MuonCalibUtils/MuonCalibMath/src/BaseFunctionFitter.cxx
+@@ -3,7 +3,7 @@
+ */
+ 
+ #include "MuonCalibMath/BaseFunctionFitter.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ #include <cmath>
+ 
+ namespace MuonCalib {
+diff --git a/MuonSpectrometer/MuonCalib/MuonCalibUtils/MuonCalibMath/src/PolygonBase.cxx b/MuonSpectrometer/MuonCalib/MuonCalibUtils/MuonCalibMath/src/PolygonBase.cxx
+index 14143d0b8c3..876165a4aa0 100644
+--- a/MuonSpectrometer/MuonCalib/MuonCalibUtils/MuonCalibMath/src/PolygonBase.cxx
++++ b/MuonSpectrometer/MuonCalib/MuonCalibUtils/MuonCalibMath/src/PolygonBase.cxx
+@@ -5,7 +5,7 @@
+ #include <iostream>
+ #include <cstdlib>
+ #include "MuonCalibMath/PolygonBase.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ using namespace MuonCalib;
+ 
+ PolygonBase::PolygonBase(const std::vector<double> & x) {
+diff --git a/MuonSpectrometer/MuonCnv/MuonRPC_CnvTools/src/RpcRdoToPrepDataToolMT.cxx b/MuonSpectrometer/MuonCnv/MuonRPC_CnvTools/src/RpcRdoToPrepDataToolMT.cxx
+index 3c3b0aadfef..714c9adc230 100755
+--- a/MuonSpectrometer/MuonCnv/MuonRPC_CnvTools/src/RpcRdoToPrepDataToolMT.cxx
++++ b/MuonSpectrometer/MuonCnv/MuonRPC_CnvTools/src/RpcRdoToPrepDataToolMT.cxx
+@@ -13,7 +13,7 @@
+ #include "TrkSurfaces/Surface.h"
+ #include "xAODMuonPrepData/RpcStripAuxContainer.h"
+ #include "MuonIdHelpers/IdentifierByDetElSorter.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ using namespace MuonGM;
+ using namespace Trk;
+ namespace Muon{
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/MdtAsBuiltCondAlg.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/MdtAsBuiltCondAlg.cxx
+index 4c64dca466f..0f2b2e2486d 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/MdtAsBuiltCondAlg.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/MdtAsBuiltCondAlg.cxx
+@@ -8,7 +8,7 @@
+ #include <AthenaKernel/IOVInfiniteRange.h>
+ #include <PathResolver/PathResolver.h>
+ #include <CxxUtils/StringUtils.h>
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ MdtAsBuiltCondAlg::MdtAsBuiltCondAlg(const std::string& name, ISvcLocator* pSvcLocator):
+         AthReentrantAlgorithm{name, pSvcLocator} {}
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/MdtCalibDbAlg.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/MdtCalibDbAlg.cxx
+index c55a2f88544..01816d4ced2 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/MdtCalibDbAlg.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/MdtCalibDbAlg.cxx
+@@ -41,7 +41,7 @@
+ 
+ #include "TFile.h"
+ #include "TSpline.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ using namespace MuonCalib;
+ using namespace CxxUtils;
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/NswCalibDbAlg.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/NswCalibDbAlg.cxx
+index 9511c7aee35..50dbfd82214 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/NswCalibDbAlg.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/NswCalibDbAlg.cxx
+@@ -15,7 +15,7 @@
+ #include "MuonNSWCommonDecode/NSWResourceId.h"
+ #include "MuonNSWCommonDecode/NSWOfflineHelper.h"
+ #include "AthenaKernel/IOVInfiniteRange.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ #include<ctime>
+ 
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/NswDcsDbAlg.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/NswDcsDbAlg.cxx
+index 1e678614884..4178c37054a 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/NswDcsDbAlg.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondAlg/src/NswDcsDbAlg.cxx
+@@ -10,7 +10,7 @@
+ #include <regex>
+ #include "nlohmann/json.hpp"
+ #include "MuonIdHelpers/IMuonIdHelperSvc.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ // Initialize
+ StatusCode
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/DigitEffiData.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/DigitEffiData.cxx
+index 762b59cb827..b5b5eeadd53 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/DigitEffiData.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/DigitEffiData.cxx
+@@ -2,7 +2,7 @@
+   Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+ */
+ #include "MuonCondData/DigitEffiData.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ namespace Muon{
+     DigitEffiData::DigitEffiData(const Muon::IMuonIdHelperSvc* idHelperSvc, double defaultEffi):
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx
+index 7749ba87665..10629c98e83 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx
+@@ -4,7 +4,7 @@
+ 
+ #include "MuonCondData/MdtCondDbData.h"
+ #include "MuonIdHelpers/MdtIdHelper.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ using DcsConstants = MdtCondDbData::DcsConstants;
+ // --- writing identifiers -------
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswCalibDbTimeChargeData.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswCalibDbTimeChargeData.cxx
+index ca2082f1832..97d5dd92a42 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswCalibDbTimeChargeData.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswCalibDbTimeChargeData.cxx
+@@ -5,7 +5,7 @@
+ #include "MuonCondData/NswCalibDbTimeChargeData.h"
+ #include "MuonIdHelpers/IMuonIdHelperSvc.h"
+ #include "Identifier/Identifier.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ std::ostream& operator<<(std::ostream& ostr, const NswCalibDbTimeChargeData::CalibConstants& obj) {
+     ostr<<"slope: "<<std::setprecision(15)<<obj.slope;//<<" pm "<<std::setprecision(15)<<obj.slopeError;
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswDcsDbData.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswDcsDbData.cxx
+index ed816396bcb..17fcf8345e6 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswDcsDbData.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswDcsDbData.cxx
+@@ -14,7 +14,7 @@
+ #include "MuonNSWCommonDecode/MapperSTG.h"
+ #include "MuonNSWCommonDecode/MapperMMG.h"
+ 
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ 
+ 
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswErrorCalibData.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswErrorCalibData.cxx
+index e56a569c825..b9c76271b03 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswErrorCalibData.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswErrorCalibData.cxx
+@@ -1,6 +1,6 @@
+ #include "MuonCondData/NswErrorCalibData.h"
+ #include <sstream>
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ using errorParametrizer = NswErrorCalibData::errorParametrizer;
+ using Input = NswErrorCalibData::Input;
+diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswT0Data.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswT0Data.cxx
+index cd09fe770c1..54b03336b10 100644
+--- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswT0Data.cxx
++++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/NswT0Data.cxx
+@@ -6,7 +6,7 @@
+ #include "MuonIdHelpers/sTgcIdHelper.h"
+ #include "Identifier/Identifier.h"
+ #include "AthenaKernel/IOVInfiniteRange.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ 
+ NswT0Data::NswT0Data(const Muon::IMuonIdHelperSvc* idHelperSvc): 
+diff --git a/MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry/src/MdtReadoutElement.cxx b/MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry/src/MdtReadoutElement.cxx
+index 77af374334f..ac8a3342658 100644
+--- a/MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry/src/MdtReadoutElement.cxx
++++ b/MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry/src/MdtReadoutElement.cxx
+@@ -17,7 +17,7 @@
+ #include "GeoModelUtilities/GeoGetIds.h"
+ #include "GeoPrimitives/GeoPrimitivesHelpers.h"
+ #include "GeoPrimitives/GeoPrimitivesToStringConverter.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ #include "GeoModelHelpers/TransformToStringConverter.h"
+ #include "GeoModelHelpers/GeoShapeUtils.h"
+ 
+diff --git a/MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry/src/MuonDetectorManager.cxx b/MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry/src/MuonDetectorManager.cxx
+index 2e1ba678861..2db3e773178 100644
+--- a/MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry/src/MuonDetectorManager.cxx
++++ b/MuonSpectrometer/MuonDetDescr/MuonReadoutGeometry/src/MuonDetectorManager.cxx
+@@ -8,7 +8,7 @@
+ #include <utility>
+ 
+ #include "GeoPrimitives/GeoPrimitivesHelpers.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ #include "MuonAlignmentData/ALinePar.h"
+ #include "MuonAlignmentData/BLinePar.h"
+ #include "MuonReadoutGeometry/CscReadoutElement.h"
+diff --git a/MuonSpectrometer/MuonDigitization/RPC_Digitization/src/RpcDigitizationTool.cxx b/MuonSpectrometer/MuonDigitization/RPC_Digitization/src/RpcDigitizationTool.cxx
+index b1628ab290f..a9b640dbdf8 100644
+--- a/MuonSpectrometer/MuonDigitization/RPC_Digitization/src/RpcDigitizationTool.cxx
++++ b/MuonSpectrometer/MuonDigitization/RPC_Digitization/src/RpcDigitizationTool.cxx
+@@ -39,7 +39,7 @@
+ #include "AtlasHepMC/GenParticle.h"
+ #include "TruthUtils/HepMCHelpers.h"
+ #include "GeneratorObjects/HepMcParticleLink.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ // Random Numbers
+ #include "AthenaKernel/RNGWrapper.h"
+ #include "CLHEP/Random/RandExponential.h"
+diff --git a/MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/UtilFunctions.cxx b/MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/UtilFunctions.cxx
+index 95f2a7f5780..e8e72592e8c 100644
+--- a/MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/UtilFunctions.cxx
++++ b/MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/UtilFunctions.cxx
+@@ -2,7 +2,7 @@
+    Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+ */
+ #include <MuonSpacePoint/UtilFunctions.h>
+-#include <GeoModelHelpers/throwExcept.h>
++#include <GeoModelKernel/throwExcept.h>
+ #include <GeoPrimitives/GeoPrimitivesToStringConverter.h>
+ #include <GaudiKernel/SystemOfUnits.h>
+ namespace MuonR4{
+diff --git a/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/Root/UtilFunctions.cxx b/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/Root/UtilFunctions.cxx
+index cefb331b5ad..77bdddfb10f 100644
+--- a/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/Root/UtilFunctions.cxx
++++ b/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/Root/UtilFunctions.cxx
+@@ -2,7 +2,7 @@
+    Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+ */
+ #include "xAODMuonPrepData/UtilFunctions.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ #include "MuonReadoutGeometryR4/MdtReadoutElement.h"
+ #include "MuonReadoutGeometryR4/RpcReadoutElement.h"
+diff --git a/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/xAODMuonPrepData/versions/AccessorMacros.h b/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/xAODMuonPrepData/versions/AccessorMacros.h
+index 275e9350f11..9756d6fd564 100644
+--- a/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/xAODMuonPrepData/versions/AccessorMacros.h
++++ b/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/xAODMuonPrepData/versions/AccessorMacros.h
+@@ -3,7 +3,7 @@
+ */
+ #ifndef XAODMUONPREPDATA_ACCESSOR_MACROS_H
+ #define XAODMUONPREPDATA_ACCESSOR_MACROS_H
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ /**
+  *  Macros to implement the scalar variables of the xAOD::MuonPrepData objects
+ */
+diff --git a/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonViews/xAODMuonViews/ChamberViewer.h b/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonViews/xAODMuonViews/ChamberViewer.h
+index 0f6933d6ecc..ef944aa67cb 100644
+--- a/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonViews/xAODMuonViews/ChamberViewer.h
++++ b/MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonViews/xAODMuonViews/ChamberViewer.h
+@@ -8,7 +8,7 @@
+ 
+ #include <xAODMeasurementBase/MeasurementDefs.h>
+ #include <MuonIdHelpers/IMuonIdHelperSvc.h>
+-#include <GeoModelHelpers/throwExcept.h>
++#include <GeoModelKernel/throwExcept.h>
+ 
+ #define BUILD_TRAIT(traitName, conceptPass) \
+     template <typename T> struct traitName{}; \
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonConditions/MuonAlignmentDataR4/src/MdtAlignmentStore.cxx b/MuonSpectrometer/MuonPhaseII/MuonConditions/MuonAlignmentDataR4/src/MdtAlignmentStore.cxx
+index c27ed232615..6ef58b6ec92 100644
+--- a/MuonSpectrometer/MuonPhaseII/MuonConditions/MuonAlignmentDataR4/src/MdtAlignmentStore.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonConditions/MuonAlignmentDataR4/src/MdtAlignmentStore.cxx
+@@ -3,7 +3,7 @@
+ */
+ #include <MuonAlignmentDataR4/MdtAlignmentStore.h>
+ 
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ MdtAlignmentStore::MdtAlignmentStore(const Muon::IMuonIdHelperSvc* idHelperSvc):
+     m_idHelperSvc{idHelperSvc}{
+     /// Reserve enough space in the vector
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonDigitization/MuonDigitizationR4/src/MuonDigitizationTool.cxx b/MuonSpectrometer/MuonPhaseII/MuonDigitization/MuonDigitizationR4/src/MuonDigitizationTool.cxx
+index 3f30fa61b65..e3c11c9ee49 100644
+--- a/MuonSpectrometer/MuonPhaseII/MuonDigitization/MuonDigitizationR4/src/MuonDigitizationTool.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonDigitization/MuonDigitizationR4/src/MuonDigitizationTool.cxx
+@@ -5,7 +5,7 @@
+ 
+ #include <xAODMuonSimHit/MuonSimHitAuxContainer.h>
+ #include <AthenaKernel/RNGWrapper.h>
+-#include <GeoModelHelpers/throwExcept.h>
++#include <GeoModelKernel/throwExcept.h>
+ 
+ namespace MuonR4{
+ 
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/MdtSensitiveDetector.cxx b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/MdtSensitiveDetector.cxx
+index 78daca7ed52..01e8f3b2893 100755
+--- a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/MdtSensitiveDetector.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/MdtSensitiveDetector.cxx
+@@ -13,7 +13,7 @@
+ #include <limits>
+ #include <iostream>
+ #include <GeoPrimitives/CLHEPtoEigenConverter.h>
+-#include <GeoModelHelpers/throwExcept.h>
++#include <GeoModelKernel/throwExcept.h>
+ #include <xAODMuonSimHit/MuonSimHitAuxContainer.h>
+ #include <GaudiKernel/SystemOfUnits.h>
+ #include <StoreGate/ReadHandle.h>
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/MmSensitiveDetector.cxx b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/MmSensitiveDetector.cxx
+index 32d6995e9df..92de5defbec 100644
+--- a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/MmSensitiveDetector.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/MmSensitiveDetector.cxx
+@@ -14,7 +14,7 @@
+ 
+ #include "GeoPrimitives/CLHEPtoEigenConverter.h"
+ #include "xAODMuonSimHit/MuonSimHitAuxContainer.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ #include "GaudiKernel/SystemOfUnits.h"
+ 
+ 
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/RpcSensitiveDetector.cxx b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/RpcSensitiveDetector.cxx
+index 9692f835173..8d4f974a8ae 100755
+--- a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/RpcSensitiveDetector.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/RpcSensitiveDetector.cxx
+@@ -15,7 +15,7 @@
+ #include "GeoPrimitives/CLHEPtoEigenConverter.h"
+ #include "xAODMuonSimHit/MuonSimHitAuxContainer.h"
+ #include "GaudiKernel/SystemOfUnits.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ using namespace MuonGMR4;
+ using namespace CxxUtils;
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/TgcSensitiveDetector.cxx b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/TgcSensitiveDetector.cxx
+index 06563ce7cbb..48ecda92fed 100644
+--- a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/TgcSensitiveDetector.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/TgcSensitiveDetector.cxx
+@@ -16,7 +16,7 @@
+ #include "GeoPrimitives/CLHEPtoEigenConverter.h"
+ #include "xAODMuonSimHit/MuonSimHitAuxContainer.h"
+ #include "GaudiKernel/SystemOfUnits.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ using namespace ActsTrk;
+ 
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/sTgcSensitiveDetector.cxx b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/sTgcSensitiveDetector.cxx
+index 66bab981140..9631290cc90 100755
+--- a/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/sTgcSensitiveDetector.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonG4/MuonSensitiveDetectorsR4/src/sTgcSensitiveDetector.cxx
+@@ -15,7 +15,7 @@
+ #include "GeoPrimitives/CLHEPtoEigenConverter.h"
+ #include "xAODMuonSimHit/MuonSimHitAuxContainer.h"
+ #include "GaudiKernel/SystemOfUnits.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ 
+ using namespace MuonGMR4;
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonPatternRecognition/MuonPatternHelpers/Root/SegmentFitHelperFunctions.cxx b/MuonSpectrometer/MuonPhaseII/MuonPatternRecognition/MuonPatternHelpers/Root/SegmentFitHelperFunctions.cxx
+index f8bb93dade5..397a74a1862 100644
+--- a/MuonSpectrometer/MuonPhaseII/MuonPatternRecognition/MuonPatternHelpers/Root/SegmentFitHelperFunctions.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonPatternRecognition/MuonPatternHelpers/Root/SegmentFitHelperFunctions.cxx
+@@ -8,7 +8,7 @@
+ #include "GeoPrimitives/GeoPrimitivesHelpers.h"
+ #include "AthenaBaseComps/AthMessaging.h"
+ #include "GaudiKernel/PhysicalConstants.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ #include "xAODMuonPrepData/MdtDriftCircle.h"
+ #include "MuonSpacePoint/UtilFunctions.h"
+ 
+diff --git a/MuonSpectrometer/MuonPhaseII/MuonValidation/MuonPRDTestR4/Root/TesterModuleBase.cxx b/MuonSpectrometer/MuonPhaseII/MuonValidation/MuonPRDTestR4/Root/TesterModuleBase.cxx
+index f4014b412d7..a783fb300bf 100644
+--- a/MuonSpectrometer/MuonPhaseII/MuonValidation/MuonPRDTestR4/Root/TesterModuleBase.cxx
++++ b/MuonSpectrometer/MuonPhaseII/MuonValidation/MuonPRDTestR4/Root/TesterModuleBase.cxx
+@@ -3,7 +3,7 @@
+ */
+ 
+ #include "MuonPRDTestR4/TesterModuleBase.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ #include "StoreGate/ReadHandle.h"
+ #include "StoreGate/StoreGateSvc.h"
+ 
+diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecUtils/MuonStationIntersectCond/src/MdtIntersectGeometry.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecUtils/MuonStationIntersectCond/src/MdtIntersectGeometry.cxx
+index 58da3a4c40c..9d79d6073a3 100755
+--- a/MuonSpectrometer/MuonReconstruction/MuonRecUtils/MuonStationIntersectCond/src/MdtIntersectGeometry.cxx
++++ b/MuonSpectrometer/MuonReconstruction/MuonRecUtils/MuonStationIntersectCond/src/MdtIntersectGeometry.cxx
+@@ -15,7 +15,7 @@
+ #include "MuonReadoutGeometry/MuonDetectorManager.h"
+ #include "TrkDriftCircleMath/MdtChamberGeometry.h"
+ #include "TrkDriftCircleMath/MdtId.h"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ // maxNTubesPerLayer is included via MdtChamberGeometry.h -> DriftCircle.h
+ 
+ namespace Muon {
+diff --git a/Simulation/G4Utilities/Geo2G4/src/Geo2G4Builder.cxx b/Simulation/G4Utilities/Geo2G4/src/Geo2G4Builder.cxx
+index f0cf086271e..70c3bf4be2d 100644
+--- a/Simulation/G4Utilities/Geo2G4/src/Geo2G4Builder.cxx
++++ b/Simulation/G4Utilities/Geo2G4/src/Geo2G4Builder.cxx
+@@ -23,7 +23,7 @@
+ #include "G4ReflectionFactory.hh"
+ #include "G4LogicalBorderSurface.hh"
+ #include "G4OpticalSurface.hh"
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ #include <map>
+ #include <iostream>
+diff --git a/Tracking/Acts/ActsGeoUtils/src/SurfaceCache.cxx b/Tracking/Acts/ActsGeoUtils/src/SurfaceCache.cxx
+index fe3cd686a02..ce0e87c38e4 100644
+--- a/Tracking/Acts/ActsGeoUtils/src/SurfaceCache.cxx
++++ b/Tracking/Acts/ActsGeoUtils/src/SurfaceCache.cxx
+@@ -5,7 +5,7 @@
+ #include <ActsGeoUtils/SurfaceCache.h>
+ #ifndef SIMULATIONBASE
+ #include <Acts/Surfaces/Surface.hpp>
+-#include <GeoModelHelpers/throwExcept.h>
++#include <GeoModelKernel/throwExcept.h>
+ 
+ namespace ActsTrk{
+ 
+diff --git a/Tracking/Acts/ActsGeometry/src/ActsDetectorElement.cxx b/Tracking/Acts/ActsGeometry/src/ActsDetectorElement.cxx
+index 73a6866b88b..d02b6374f4a 100644
+--- a/Tracking/Acts/ActsGeometry/src/ActsDetectorElement.cxx
++++ b/Tracking/Acts/ActsGeometry/src/ActsDetectorElement.cxx
+@@ -4,7 +4,7 @@
+ 
+ #include "ActsGeometry/ActsDetectorElement.h"
+ 
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ // ATHENA
+ #include "ActsInterop/IdentityHelper.h"
+diff --git a/Tracking/TrkUtilityPackages/TrkDriftCircleMath/src/MdtChamberGeometry.cxx b/Tracking/TrkUtilityPackages/TrkDriftCircleMath/src/MdtChamberGeometry.cxx
+index 22ef92a3ca6..b39defbc350 100644
+--- a/Tracking/TrkUtilityPackages/TrkDriftCircleMath/src/MdtChamberGeometry.cxx
++++ b/Tracking/TrkUtilityPackages/TrkDriftCircleMath/src/MdtChamberGeometry.cxx
+@@ -10,7 +10,7 @@
+ #include "TrkDriftCircleMath/SortDcsByY.h"
+ #include <AthenaKernel/getMessageSvc.h>
+ #include <MuonReadoutGeometry/MdtReadoutElement.h>
+-#include "GeoModelHelpers/throwExcept.h"
++#include "GeoModelKernel/throwExcept.h"
+ 
+ namespace {
+     constexpr int maxNTubesPerLayer = MdtIdHelper::maxNTubesPerLayer;
+-- 
+2.34.1
+
-- 
GitLab