diff --git a/corsika/detail/modules/sibyll/Interaction.inl b/corsika/detail/modules/sibyll/Interaction.inl
index ed42473ec865d339e540e7b7e1904df763136e09..07f390b7385a6be73b155b8fe8dd8a64b4308c7a 100644
--- a/corsika/detail/modules/sibyll/Interaction.inl
+++ b/corsika/detail/modules/sibyll/Interaction.inl
@@ -127,7 +127,10 @@ namespace corsika::sibyll {
 
       si::CrossSectionType weightedProdCrossSection = mediumComposition.getWeightedSum(
           [=](corsika::Code targetID) -> si::CrossSectionType {
-            return std::get<0>(this->getCrossSection(corsikaBeamId, targetID, ECoM));
+            // Argon needs special handling ....
+            return targetID == Code::Argon ? CrossSectionType::zero()
+                                           : std::get<0>(this->getCrossSection(
+                                                 corsikaBeamId, targetID, ECoM));
           });
 
       CORSIKA_LOG_DEBUG(
@@ -243,6 +246,7 @@ namespace corsika::sibyll {
 
     for (size_t i = 0; i < compVec.size(); ++i) {
       auto const targetId = compVec[i];
+      if (targetId == Code::Argon) continue; // skip Argon ....
       const auto [sigProd, sigEla] = getCrossSection(corsikaBeamId, targetId, Ecm);
       [[maybe_unused]] const auto& dummy_sigEla = sigEla;
       cross_section_of_components[i] = sigProd;
diff --git a/corsika/detail/modules/sibyll/NuclearInteraction.inl b/corsika/detail/modules/sibyll/NuclearInteraction.inl
index db7788a117dd5a6cb5cb75422a10e37ebee0cffb..1460b1133616c1347cdd2eaa156bbcd06ac307b1 100644
--- a/corsika/detail/modules/sibyll/NuclearInteraction.inl
+++ b/corsika/detail/modules/sibyll/NuclearInteraction.inl
@@ -51,6 +51,10 @@ namespace corsika::sibyll {
 
   template <typename TEnvironment>
   inline void NuclearInteraction<TEnvironment>::printCrossSectionTable(Code pCode) {
+    if (pCode == Code::Argon) {
+      CORSIKA_LOG_WARN("SIBYLL cannot handle Argon as target!");
+      return;
+    }
     const int k = targetComponentsIndex_.at(pCode);
     Code pNuclei[] = {Code::Helium, Code::Lithium7, Code::Oxygen,
                       Code::Neon,   Code::Argon,    Code::Iron};
@@ -97,6 +101,7 @@ namespace corsika::sibyll {
     // loop over target components, at most 4!!
     int k = -1;
     for (auto& ptarg : allElementsInUniverse) {
+      if (ptarg == Code::Argon) continue; // NEED TO IGNORE Argon ....
       ++k;
       CORSIKA_LOG_DEBUG("NuclearInteraction: init target component: {}", ptarg);
       const int ib = get_nucleus_A(ptarg);
@@ -265,6 +270,7 @@ namespace corsika::sibyll {
       const auto& w = mediumComposition.getFractions();
       // loop over components in medium
       for (auto const targetId : mediumComposition.getComponents()) {
+        if (targetId == Code::Argon) continue; // NEED TO IGNORE Argon ....
         i++;
         CORSIKA_LOG_DEBUG("NuclearInteraction: get interaction length for target: {}",
                           get_name(targetId));
@@ -422,6 +428,7 @@ namespace corsika::sibyll {
 
     for (size_t i = 0; i < compVec.size(); ++i) {
       auto const targetId = compVec[i];
+      if (targetId == Code::Argon) continue; // NEED TO IGNORE Argon ....
       CORSIKA_LOG_DEBUG("target component: {}", get_name(targetId));
       CORSIKA_LOG_DEBUG("beam id: {}", get_name(beamId));
       const auto [sigProd, sigEla] =