diff --git a/NPSimulation/Process/BeamReaction.cc b/NPSimulation/Process/BeamReaction.cc
index 3f9bb927c71e87a6c70d9a5b03ba4d25be5a51e7..6d395b9b2512306972f72e1449750de9fdea76a0 100644
--- a/NPSimulation/Process/BeamReaction.cc
+++ b/NPSimulation/Process/BeamReaction.cc
@@ -68,7 +68,7 @@ void NPS::BeamReaction::ReadConfiguration() {
 
   if (input.GetAllBlocksWithToken("TwoBodyReaction").size() > 0)
     m_ReactionType = TwoBody;
-  if (input.GetAllBlocksWithToken("InelasticBreakup").size() > 0)
+  else if (input.GetAllBlocksWithToken("InelasticBreakup").size() > 0)
     m_ReactionType = InelasticBreakup;
   else if (input.GetAllBlocksWithToken("QFSReaction").size() > 0)
     m_ReactionType = QFS;
@@ -92,7 +92,7 @@ void NPS::BeamReaction::ReadConfiguration() {
   }
 
   // Inelastic Breakup
-  if (m_ReactionType == InelasticBreakup) {
+  else if (m_ReactionType == InelasticBreakup) {
     m_InelasticBreakup.ReadConfigurationFile(input);
     m_BeamName = NPL::ChangeNameToG4Standard(m_InelasticBreakup.GetParticleBeam()->GetName());
     if (m_InelasticBreakup.GetParticleLight()->GetName() != "") {
@@ -438,7 +438,7 @@ void NPS::BeamReaction::DoIt(const G4FastTrack& fastTrack, G4FastStep& fastStep)
   ////////////////////////////////////////
   // Inelastic Breakup Reaction Case /////
   ////////////////////////////////////////
-  if (m_ReactionType == InelasticBreakup) {
+  else if (m_ReactionType == InelasticBreakup) {
 
     static G4IonTable* IonTable = G4ParticleTable::GetParticleTable()->GetIonTable();
     //////Define the kind of particle to shoot////////