diff --git a/Framework/ProcessSequence/ContinuousProcess.h b/Framework/ProcessSequence/ContinuousProcess.h
index 546f368b2f2d677de5faf61fe3660e48956cca21..4da02a77e38423f7d7e0a5c0a8ab39afdea3097a 100644
--- a/Framework/ProcessSequence/ContinuousProcess.h
+++ b/Framework/ProcessSequence/ContinuousProcess.h
@@ -28,8 +28,14 @@ namespace corsika::process {
   private:
   protected:
   public:
-    using TDerived = derived;
+    using _TDerived = TDerived;
 
+<<<<<<< HEAD
+=======
+    TDerived& GetRef() { return static_cast<TDerived&>(*this); }
+    const TDerived& GetRef() const { return static_cast<const TDerived&>(*this); }
+
+>>>>>>> renamed base process templates
     // here starts the interface part
     // -> enforce TDerived to implement DoContinuous...
     template <typename TParticle, typename TTrack>
diff --git a/Framework/ProcessSequence/InteractionProcess.h b/Framework/ProcessSequence/InteractionProcess.h
index 880fbe2070c697a38b1d3704df83a860df57b06e..f413203801b2b61500bb19e9cc74bf5d840893fb 100644
--- a/Framework/ProcessSequence/InteractionProcess.h
+++ b/Framework/ProcessSequence/InteractionProcess.h
@@ -26,7 +26,9 @@ namespace corsika::process {
 
   template <typename TDerived>
   class InteractionProcess : public BaseProcess<TDerived> {
-
+    public:
+    using _TDerived = TDerived;
+    
     using BaseProcess<TDerived>::GetRef;
 
     /// here starts the interface-definition part
diff --git a/Framework/ProcessSequence/SecondariesProcess.h b/Framework/ProcessSequence/SecondariesProcess.h
index e3f1dfff8719807f08757b0762faf2f311640c9b..8bfd37102c76735970a624b54c6f96527cc965f3 100644
--- a/Framework/ProcessSequence/SecondariesProcess.h
+++ b/Framework/ProcessSequence/SecondariesProcess.h
@@ -26,7 +26,9 @@ namespace corsika::process {
 
   template <typename TDerived>
   class SecondariesProcess : public BaseProcess<TDerived> {
-
+    public:
+    using _TDerived = TDerived;
+    
     /// here starts the interface-definition part
     // -> enforce TDerived to implement DoSecondaries...
     template <typename TSecondaries>
diff --git a/Framework/ProcessSequence/StackProcess.h b/Framework/ProcessSequence/StackProcess.h
index d54c7944d12b03ee09160c3aec0665bbcc54d469..ad39f1193231378b4a951212c9ee23a1f54ba012 100644
--- a/Framework/ProcessSequence/StackProcess.h
+++ b/Framework/ProcessSequence/StackProcess.h
@@ -25,13 +25,22 @@ namespace corsika::process {
    */
 
   template <typename TDerived>
-  class StackProcess : public BaseProcess<TDerived> {
+  class StackProcess : public BaseProcess<TDerived>{
+  private:
+  protected:
+    using _TDerived = TDerived;
 
   public:
     StackProcess() = delete;
     StackProcess(const unsigned int nStep)
         : fNStep(nStep) {}
 
+<<<<<<< HEAD
+=======
+    TDerived& GetRef() { return static_cast<TDerived&>(*this); }
+    const TDerived& GetRef() const { return static_cast<const TDerived&>(*this); }
+
+>>>>>>> renamed base process templates
     /// here starts the interface-definition part
     // -> enforce TDerived to implement DoStack...
     template <typename TStack>