diff --git a/ForwardDetectors/ZDC/ZdcNtuple/Root/ZdcNtuple.cxx b/ForwardDetectors/ZDC/ZdcNtuple/Root/ZdcNtuple.cxx
index 9bd4dfd935b2c275639783c84ff6b2cfa3758455..c3d953466c44beb0ebf25f55632a90adf19580a0 100644
--- a/ForwardDetectors/ZDC/ZdcNtuple/Root/ZdcNtuple.cxx
+++ b/ForwardDetectors/ZDC/ZdcNtuple/Root/ZdcNtuple.cxx
@@ -217,6 +217,8 @@ StatusCode ZdcNtuple :: initialize ()
 	  m_outputTree->Branch("zdc_ZdcTruthParticlePy",&t_ZdcTruthParticlePy);
 	  m_outputTree->Branch("zdc_ZdcTruthParticlePz",&t_ZdcTruthParticlePz);
 	  m_outputTree->Branch("zdc_ZdcTruthParticleEnergy",&t_ZdcTruthParticleEnergy);
+	  m_outputTree->Branch("zdc_ZdcTruthParticlePid",&t_ZdcTruthParticlePid);
+	  m_outputTree->Branch("zdc_ZdcTruthParticleStatus",&t_ZdcTruthParticleStatus);
 	}
       }
     if (enableRPD)
@@ -1097,6 +1099,8 @@ void ZdcNtuple::processMCEventCollection(){
   t_ZdcTruthParticlePy.clear();
   t_ZdcTruthParticlePz.clear();
   t_ZdcTruthParticleEnergy.clear();
+  t_ZdcTruthParticlePid.clear();
+  t_ZdcTruthParticleStatus.clear();
 
   /******************************************
    * Sort the particles into sides and add
@@ -1114,6 +1118,8 @@ void ZdcNtuple::processMCEventCollection(){
         t_ZdcTruthParticlePy.push_back(particle->momentum().y());
         t_ZdcTruthParticlePz.push_back(particle->momentum().z());
         t_ZdcTruthParticleEnergy.push_back(particle->momentum().e());
+        t_ZdcTruthParticlePid.push_back(particle->pid());
+        t_ZdcTruthParticleStatus.push_back(particle->status());
       } // end loop over particles
     }// end loop over vertices
   }// end loop over HepMC events
diff --git a/ForwardDetectors/ZDC/ZdcNtuple/ZdcNtuple/ZdcNtuple.h b/ForwardDetectors/ZDC/ZdcNtuple/ZdcNtuple/ZdcNtuple.h
index ac79520d1f034abdebf9b9089dd79d6fcda0854d..3764169f104aa4f12ebea912e79c1841cc9a99e8 100644
--- a/ForwardDetectors/ZDC/ZdcNtuple/ZdcNtuple/ZdcNtuple.h
+++ b/ForwardDetectors/ZDC/ZdcNtuple/ZdcNtuple/ZdcNtuple.h
@@ -208,7 +208,9 @@ public:
   std::vector< float > t_ZdcTruthParticlePy;
   std::vector< float > t_ZdcTruthParticlePz;
   std::vector< float > t_ZdcTruthParticleEnergy;
-
+  std::vector< int > t_ZdcTruthParticlePid;
+  std::vector< int > t_ZdcTruthParticleStatus;
+  
   float t_ZdcModuleAmp[2][4];
   float t_ZdcModuleTime[2][4];
   float t_ZdcModuleFitAmp[2][4];