diff --git a/Processes/Sibyll/CMakeLists.txt b/Processes/Sibyll/CMakeLists.txt
index 0f31d5c6b6e40c98e0e08b31db8393b79dbd717e..f57b022f4b606f6bd27341259bc8732080270a6d 100644
--- a/Processes/Sibyll/CMakeLists.txt
+++ b/Processes/Sibyll/CMakeLists.txt
@@ -21,17 +21,17 @@ set (
   Interaction.cc
   Decay.cc
   NuclearInteraction.cc
-  sibyll2.3c.f
+  sibyll2.3d.f
   nuclib.f
   signuc.f
-  sibyll2.3c.cc
+  sibyll2.3d.cc
   gasdev.f
   )
 
 set (
   MODEL_HEADERS
   ParticleConversion.h
-  sibyll2.3c.h
+  sibyll2.3d.h
   nuclib.h
   SibStack.h
   Decay.h
diff --git a/Processes/Sibyll/Interaction.cc b/Processes/Sibyll/Interaction.cc
index 9f0d210ca8db8a9d4875e7a2b42c647148f8c7e6..916ea2ec0829f6de41b4055428bac17b78f0fb62 100644
--- a/Processes/Sibyll/Interaction.cc
+++ b/Processes/Sibyll/Interaction.cc
@@ -15,7 +15,7 @@
 #include <corsika/geometry/FourVector.h>
 #include <corsika/process/sibyll/ParticleConversion.h>
 #include <corsika/process/sibyll/SibStack.h>
-#include <corsika/process/sibyll/sibyll2.3c.h>
+#include <corsika/process/sibyll/sibyll2.3d.h>
 #include <corsika/setup/SetupStack.h>
 #include <corsika/setup/SetupTrajectory.h>
 #include <corsika/utl/COMBoost.h>
diff --git a/Processes/Sibyll/SibStack.h b/Processes/Sibyll/SibStack.h
index f0d979547c80f3bf45ae176f88b73a0dee75f590..86956435bacf36b1675a4ecd0deb7359995a48e2 100644
--- a/Processes/Sibyll/SibStack.h
+++ b/Processes/Sibyll/SibStack.h
@@ -14,7 +14,7 @@
 #include <corsika/geometry/RootCoordinateSystem.h>
 #include <corsika/geometry/Vector.h>
 #include <corsika/process/sibyll/ParticleConversion.h>
-#include <corsika/process/sibyll/sibyll2.3c.h>
+#include <corsika/process/sibyll/sibyll2.3d.h>
 #include <corsika/stack/Stack.h>
 #include <corsika/units/PhysicalUnits.h>
 
diff --git a/Processes/Sibyll/sibyll2.3c.cc b/Processes/Sibyll/sibyll2.3d.cc
similarity index 93%
rename from Processes/Sibyll/sibyll2.3c.cc
rename to Processes/Sibyll/sibyll2.3d.cc
index 7cb2c027dc45948c5db2eeae473bc883305b604b..2bfb2ef9c078c0b871f8c0a89567bd67cda75c76 100644
--- a/Processes/Sibyll/sibyll2.3c.cc
+++ b/Processes/Sibyll/sibyll2.3d.cc
@@ -8,7 +8,7 @@
  * the license.
  */
 
-#include <corsika/process/sibyll/sibyll2.3c.h>
+#include <corsika/process/sibyll/sibyll2.3d.h>
 
 #include <corsika/random/RNGManager.h>
 #include <random>
diff --git a/Processes/Sibyll/sibyll2.3c.f b/Processes/Sibyll/sibyll2.3d.f
similarity index 99%
rename from Processes/Sibyll/sibyll2.3c.f
rename to Processes/Sibyll/sibyll2.3d.f
index 2073dcfbe6fdc9c2c08fafda23ed1e6503790cc2..8fccb7a42026eef3621cd80ef20797e27a65a4e1 100644
--- a/Processes/Sibyll/sibyll2.3c.f
+++ b/Processes/Sibyll/sibyll2.3d.f
@@ -7,12 +7,13 @@ C         SSSSSS    IIIIIII  BBBBB       YY       LLLLLLL  LLLLLLL
 C=======================================================================
 C  Code for SIBYLL:  hadronic interaction Monte Carlo event generator
 C=======================================================================
-C   Version 2.3c03 (Jun-01-2017, modified Aug-22-2019)
+C   Version 2.3d (Jun-01-2017, modified May-20-2020)
 C
 C     with CHARM production
 C
 C       By   Eun-Joo Ahn
 C            Ralph Engel
+C            A. Fedynitch      
 C            R.S. Fletcher
 C            T.K. Gaisser
 C            Paolo Lipari
@@ -26,12 +27,14 @@ C
 C      For a correct copy contact:
 C                sein@fnal.gov
 C                ralph.engel@kit.edu
+C                afedynitch@gmail.com 
 C                gaisser@bartol.udel.edu
 C                paolo.lipari@roma1.infn.it
 C                friehn@lip.pt
 C                stanev@bartol.udel.edu
 C     
 C     last changes relative to Sibyll 2.3c:
+C     * no pi0 suppression in minijets
 C     * added cross section tables for hadron-nitrogen and hadron-oxygen
 C       (changed S_CCSIG common)
 C     * no remnant in high mass diff. events (pi0-had scattering)
@@ -458,20 +461,18 @@ C-----------------------------------------------------------------------
       WRITE(*,100)
  100  FORMAT(' ','====================================================',
      *     /,' ','|                                                  |',
-     *     /,' ','|                 S I B Y L L  2.3c                |',
+     *     /,' ','|                 S I B Y L L  2.3d                |',
      *     /,' ','|                                                  |',
      *     /,' ','|         HADRONIC INTERACTION MONTE CARLO         |',
      *     /,' ','|                        BY                        |',
      *     /,' ','|            Eun-Joo AHN, Felix RIEHN              |',
-     *     /,' ','|     R. ENGEL, R.S. FLETCHER, T.K. GAISSER        |',
-     *     /,' ','|               P. LIPARI, T. STANEV               |',
+     *     /,' ','|      R. ENGEL, A. FEDYNITCH, R.S. FLETCHER,      |',
+     *     /,' ','|       T.K. GAISSER, P. LIPARI, T. STANEV         |',
      *     /,' ','|                                                  |',
      *     /,' ','| Publication to be cited when using this program: |',
      *     /,' ','| Eun-Joo AHN et al., Phys.Rev. D80 (2009) 094003  |',
-     *     /,' ','| F. RIEHN et al., Proc. 35th Int. Cosmic Ray Conf.|',
-     *     /,' ','|           Bexco, Busan, Korea, cont. 301 (2017)  |',
-     *     /,' ','|                                                  |',
-     *     /,' ','| last modifications: F. Riehn (08/22/2019)        |',
+     *     /,' ','| F. RIEHN et al., hep-ph: 1912.03300              |',
+     *     /,' ','| last modifications: F. Riehn (05/20/2020)        |',
      *     /,' ','====================================================',
      *     /)
 
@@ -851,7 +852,7 @@ c     23rc5.4frgB1 aka retune5 aka Sibyll 2.3.5
       IPAR(92) = 1
       IPAR(93) = 1
       IPAR(94) = 0
-      IPAR(95) = 0
+      IPAR(95) = 1
       IPAR(96) = 0
       IPAR(97) = 0
       IPAR(98) = 0
@@ -10313,7 +10314,7 @@ C     f = 1/(1+exp((x-x0)/alpha))
 C-----------------------------------------------------------------------
       IMPLICIT NONE
 c     externals
-      DOUBLE PRECISION XARG,X0,XALPH
+      DOUBLE PRECISION XARG,X0,XALPH,XE
 c     COMMONs
 
 C--------------------------------------------------------------------
@@ -10331,7 +10332,8 @@ C--------------------------------------------------------------------
       SAVE
 
 c     internals
-      fermi=1.D0+exp((xarg-x0)/xalph)
+      xe = max((xarg-x0)/xalph,-10.D0)
+      fermi=1.D0+exp(xe)
       fermi=1.D0/fermi
       END
 C=======================================================================
@@ -10591,7 +10593,8 @@ C--------------------------------------------------------------------
      &     PAR1_def,PAR24_def,PAR3_def,PAR2_1_def,PAR2_2_def,PAR5_def,
      &     PAR6_def,PAR24_2_def,XM,QMASS,DBETJ      
       DIMENSION PST(5),PBM(5),PTG(5)
-      INTEGER IST,ITGST,IBMST,IPID,IFLB,IFLT,NOLD,IS,IFL1,IFBAD,IDM
+      INTEGER IST,ITGST,IBMST,IPID,IFLB,IFLT,NOLD,IS,IFL1,IFBAD,IDM,
+     &     ipar82_def
       SAVE
       DATA PGG /1.D0/
 
@@ -10674,7 +10677,15 @@ c     change vector rate and kaon vector rate
          PAR(6) = PAR(74)       ! P_K* from K
          
       ENDIF
-
+      
+C...  switch off pi0 suppression
+c     should only be applied for remnant, diff and valence
+c     in case of meson projectile
+      ipar82_def = IPAR(82)
+      IF(IPAR(95).eq.1)THEN
+         IPAR(82) = 0
+      ENDIF
+      
       NOLD = NP
       IF ( (E0.LT.8.D0) .OR. (S_RNDM(0).GT.PGG)) THEN
 C...  one string case, q - qbar
@@ -10725,7 +10736,8 @@ c     leading charm fraction
             PAR(2) = PAR2_1_def
             PAR(5) = PAR5_def
             PAR(6) = PAR6_def
-            PAR(3) = PAR3_def 
+            PAR(3) = PAR3_def
+            IPAR(82) = ipar82_def       
             RETURN
          ENDIF
       ELSE
@@ -10744,7 +10756,8 @@ c      DBETJ = (DX1J-DX2J)/(DX1J+DX2J)
       PAR(2) = PAR2_1_def
       PAR(5) = PAR5_def
       PAR(6) = PAR6_def
-      PAR(3) = PAR3_def 
+      PAR(3) = PAR3_def
+      IPAR(82) = ipar82_def  
       IBAD = 0
       END
 C=======================================================================
@@ -14108,7 +14121,7 @@ C                  SIGela     elastic cross section
 C-----------------------------------------------------------------------
 Cf2py integer, intent(in) :: L,IAT
 Cf2py double precision, intent(in) :: SQS
-Cf2py double precision, intent(out) :: SIGprod,SIGbdif
+Cf2py double precision, intent(out) :: SIGprod,SIGbdif,SIGela
       IMPLICIT NONE
 
       INTEGER NS_max, NH_max
diff --git a/Processes/Sibyll/sibyll2.3c.h b/Processes/Sibyll/sibyll2.3d.h
similarity index 97%
rename from Processes/Sibyll/sibyll2.3c.h
rename to Processes/Sibyll/sibyll2.3d.h
index b7030ad32578a14cd5d9ed5be1f82b4b082b7d58..f5893db903924277b60bb461e33720d4a6cafb7a 100644
--- a/Processes/Sibyll/sibyll2.3c.h
+++ b/Processes/Sibyll/sibyll2.3d.h
@@ -8,8 +8,8 @@
  * the license.
  */
 
-#ifndef _include_sib23c_interface_h_
-#define _include_sib23c_interface_h_
+#ifndef _include_sib23d_interface_h_
+#define _include_sib23d_interface_h_
 //----------------------------------------------
 //  C++ interface for the SIBYLL event generator
 //----------------------------------------------
diff --git a/Processes/Sibyll/testSibyll.cc b/Processes/Sibyll/testSibyll.cc
index 0453220f4593d55a5250e2cfddbd1f5942f90854..d4d87a3da82664ef134e4c725608126d8300c25e 100644
--- a/Processes/Sibyll/testSibyll.cc
+++ b/Processes/Sibyll/testSibyll.cc
@@ -75,7 +75,7 @@ TEST_CASE("Sibyll", "[processes]") {
 #include <corsika/environment/Environment.h>
 #include <corsika/environment/HomogeneousMedium.h>
 #include <corsika/environment/NuclearComposition.h>
-#include <corsika/process/sibyll/sibyll2.3c.h>
+#include <corsika/process/sibyll/sibyll2.3d.h>
 
 using namespace corsika::units::si;
 using namespace corsika::units;