diff --git a/JugTrack/src/components/TrackProjector.cpp b/JugTrack/src/components/TrackProjector.cpp
index 8c57f5535113ff7ab9396ed5c8404ac4f422fadd..b0cfaebf9647396cc7bb6b1598b46d7c260bbd65 100644
--- a/JugTrack/src/components/TrackProjector.cpp
+++ b/JugTrack/src/components/TrackProjector.cpp
@@ -22,6 +22,7 @@
 #include "Acts/EventData/MultiTrajectoryHelpers.hpp"
 
 // Event Model related classes
+#include "edm4eic/EDM4eicVersion.h"
 #include "edm4eic/TrackerHitCollection.h"
 #include "edm4eic/TrackParametersCollection.h"
 #include "edm4eic/TrajectoryCollection.h"
@@ -178,8 +179,17 @@ namespace Jug::Reco {
           const float pathLength = static_cast<float>(trackstate.pathLength());
           const float pathLengthError = 0;
 
+#if EDM4EIC_VERSION_MAJOR >= 3
+          uint64_t surface = 0; // trackstate.referenceSurface().geometryId().value(); FIXME - ASAN is not happy with this
+          uint32_t system = 0;
+#endif
+
           // Store track point
           track_segment.addToPoints({
+#if EDM4EIC_VERSION_MAJOR >= 3
+            surface,
+            system,
+#endif
             position,
             positionError,
             momentum,
diff --git a/external/algorithms/acts/include/algorithms/acts/TrackProjector.h b/external/algorithms/acts/include/algorithms/acts/TrackProjector.h
index 620e1d13f3efd9b7e2e243976144654b77af7570..6c6ff9f3589510cd3accc74c396fd18f5e4973a1 100644
--- a/external/algorithms/acts/include/algorithms/acts/TrackProjector.h
+++ b/external/algorithms/acts/include/algorithms/acts/TrackProjector.h
@@ -22,6 +22,7 @@
 #include "Acts/EventData/MultiTrajectoryHelpers.hpp"
 
 // Event Model related classes
+#include "edm4eic/EDM4eicVersion.h"
 #include "edm4eic/TrackerHitCollection.h"
 #include "edm4eic/TrackParametersCollection.h"
 #include "edm4eic/TrajectoryCollection.h"
@@ -179,8 +180,17 @@ namespace Jug::Reco {
           const float pathLength = static_cast<float>(trackstate.pathLength());
           const float pathLengthError = 0;
 
+#if EDM4EIC_VERSION_MAJOR >= 3
+          uint64_t surface = 0; // trackstate.referenceSurface().geometryId().value(); FIXME - ASAN is not happy with this
+          uint32_t system = 0;
+#endif
+
           // Store track point
           track_segment.addToPoints({
+#if EDM4EIC_VERSION_MAJOR >= 3
+            surface,
+            system,
+#endif
             position,
             positionError,
             momentum,