diff --git a/benchmarks/clustering/options/full_cal_reco.py b/benchmarks/clustering/options/full_cal_reco.py
index fcf9ed628a8f0dffa53625930e51209053700049..9dfd7a15061f124c416de6cd18f9179c2fbb3145 100644
--- a/benchmarks/clustering/options/full_cal_reco.py
+++ b/benchmarks/clustering/options/full_cal_reco.py
@@ -55,12 +55,19 @@ from Configurables import Jug__Reco__ImagingClusterReco as ImagingClusterReco
 sim_coll = [
     "MCParticles",
     "EcalEndcapNHits",
+    "EcalEndcapNHitsContributions",
     "EcalEndcapPHits",
+    "EcalEndcapPHitsContributions",
     "EcalBarrelHits",
+    "EcalBarrelHitsContributions",
     "EcalBarrelScFiHits",
+    "EcalBarrelScFiHitsContributions",
     "HcalBarrelHits",
+    "HcalBarrelHitsContributions",
     "HcalEndcapPHits",
+    "HcalEndcapPHitsContributions",
     "HcalEndcapNHits",
+    "HcalEndcapNHitsContributions",
 ]
 
 # input and output
diff --git a/benchmarks/ecal/options/barrel.py b/benchmarks/ecal/options/barrel.py
index f4bfd902d218f08950ca2849051a34ef9f0f7cf9..41977b818ab18fb61b07618e61f8d4b5af58e94e 100644
--- a/benchmarks/ecal/options/barrel.py
+++ b/benchmarks/ecal/options/barrel.py
@@ -40,6 +40,7 @@ from Configurables import Jug__Reco__ImagingClusterReco as ImagingClusterReco
 sim_coll = [
     "MCParticles",
     "EcalBarrelHits",
+    "EcalBarrelHitsContributions",
 ]
 
 # input and output
diff --git a/benchmarks/ecal/options/endcap_e.py b/benchmarks/ecal/options/endcap_e.py
index 1b89fd08e630a71d90b8751b4e0b599ce3d60499..5a6b997eca51166f5eb753673587079f09de655a 100644
--- a/benchmarks/ecal/options/endcap_e.py
+++ b/benchmarks/ecal/options/endcap_e.py
@@ -33,6 +33,7 @@ from Configurables import Jug__Reco__ClusterRecoCoG as RecoCoG
 sim_coll = [
     "MCParticles",
     "EcalEndcapNHits",
+    "EcalEndcapNHitsContributions",
 ]
 
 # input and output
diff --git a/benchmarks/ecal/options/endcap_i.py b/benchmarks/ecal/options/endcap_i.py
index e8a091b789b8daadd44ca1ec90844ead4e63e863..b1baf62fadc4812f83536b8a76425c38c8472464 100644
--- a/benchmarks/ecal/options/endcap_i.py
+++ b/benchmarks/ecal/options/endcap_i.py
@@ -36,6 +36,7 @@ from Configurables import Jug__Reco__ClusterRecoCoG as RecoCoG
 sim_coll = [
     "MCParticles",
     "EcalEndcapPHits",
+    "EcalEndcapPHitsContributions",
 ]
 
 # input and output
diff --git a/benchmarks/far_forward/options/zdc_reconstruction.py b/benchmarks/far_forward/options/zdc_reconstruction.py
index 695d5fb3e1629c3f1a3cf5ba1c2e7335535a543a..71d9edab2dc8897a8eb75a8fa8b48c64a919aacf 100644
--- a/benchmarks/far_forward/options/zdc_reconstruction.py
+++ b/benchmarks/far_forward/options/zdc_reconstruction.py
@@ -32,7 +32,9 @@ podioevent = EICDataSvc('EventDataSvc', inputs=kwargs['input'].split(','), Outpu
 sim_colls = [
     'MCParticles',
     'ZDCEcalHits',
-    'ZDCHcalHits'
+    'ZDCEcalHitsContributions',
+    'ZDCHcalHits',
+    'ZDCHcalHitsContributions',
 ]
 
 podin = PodioInput('PodioReader', collections=sim_colls, OutputLevel=DEBUG)
diff --git a/benchmarks/imaging_ecal/options/hybrid_cluster.py b/benchmarks/imaging_ecal/options/hybrid_cluster.py
index 1d62058e5ccc678c0a74b35882f8bdbe590cf716..dbb19edef63726bc6026ffbb5f631fe8e52953d2 100644
--- a/benchmarks/imaging_ecal/options/hybrid_cluster.py
+++ b/benchmarks/imaging_ecal/options/hybrid_cluster.py
@@ -48,7 +48,9 @@ podioevent = EICDataSvc('EventDataSvc', inputs=kwargs['input'].split(','), Outpu
 sim_colls = [
     'MCParticles',
     'EcalBarrelHits',
+    'EcalBarrelHitsContributions',
     'EcalBarrelScFiHits',
+    'EcalBarrelScFiHitsContributions',
 ]
 podin = PodioInput('PodioReader', collections=sim_colls, OutputLevel=DEBUG)
 podout = PodioOutput('podout', filename=kwargs['output'])
diff --git a/benchmarks/imaging_ecal/options/imaging_2dcluster.py b/benchmarks/imaging_ecal/options/imaging_2dcluster.py
index d7dd39bb3242ff3e931b0289c40360464d9d86ae..226241f92aeabc51ae5121cc552689f41b92e695 100644
--- a/benchmarks/imaging_ecal/options/imaging_2dcluster.py
+++ b/benchmarks/imaging_ecal/options/imaging_2dcluster.py
@@ -36,7 +36,7 @@ print(kwargs)
 geo_service = GeoSvc('GeoSvc', detectors=kwargs['compact'].split(','), OutputLevel=INFO)
 podioevent = EICDataSvc('EventDataSvc', inputs=kwargs['input'].split(','), OutputLevel=DEBUG)
 
-podin = PodioInput('PodioReader', collections=['MCParticles', 'EcalBarrelHits'], OutputLevel=DEBUG)
+podin = PodioInput('PodioReader', collections=['MCParticles', 'EcalBarrelHits',  'EcalBarrelHitsContributions'], OutputLevel=DEBUG)
 podout = PodioOutput('out', filename=kwargs['output'])
 
 
diff --git a/benchmarks/imaging_ecal/options/imaging_topocluster.py b/benchmarks/imaging_ecal/options/imaging_topocluster.py
index 9117d9b34a8b701d0720a36f3e1409769918fc15..bb60dcb2fc48b3eb47eec7a71f6c6da10c7a5f5b 100644
--- a/benchmarks/imaging_ecal/options/imaging_topocluster.py
+++ b/benchmarks/imaging_ecal/options/imaging_topocluster.py
@@ -37,7 +37,7 @@ geo_service = GeoSvc("GeoSvc", detectors=kwargs['compact'].split(','), OutputLev
 podioevent = EICDataSvc("EventDataSvc", inputs=kwargs['input'].split(','), OutputLevel=DEBUG)
 out = PodioOutput("out", filename=kwargs['output'])
 
-podioinput = PodioInput("PodioReader", collections=["MCParticles", "EcalBarrelHits"], OutputLevel=DEBUG)
+podioinput = PodioInput("PodioReader", collections=["MCParticles", "EcalBarrelHits", "EcalBarrelHitsContributions"], OutputLevel=DEBUG)
 
 # use the same daq_setting for digi/reco pair
 daq_setting = dict(
diff --git a/benchmarks/imaging_ecal/options/scfi_cluster.py b/benchmarks/imaging_ecal/options/scfi_cluster.py
index f356da04a105e4d92733c35a479b2e6179dc570f..bb55aba30a55e2090c825d7d1eaff0d89010fd79 100644
--- a/benchmarks/imaging_ecal/options/scfi_cluster.py
+++ b/benchmarks/imaging_ecal/options/scfi_cluster.py
@@ -38,7 +38,7 @@ sf = float(os.environ.get('CB_EMCAL_SAMP_FRAC', '1.0'))
 geo_service = GeoSvc("GeoSvc", detectors=kwargs['compact'].split(','), OutputLevel=INFO)
 podioevent = EICDataSvc("EventDataSvc", inputs=kwargs['input'].split(','), OutputLevel=DEBUG)
 
-podin = PodioInput("PodioReader", collections=["MCParticles", "EcalBarrelScFiHits"], OutputLevel=DEBUG)
+podin = PodioInput("PodioReader", collections=["MCParticles", "EcalBarrelScFiHits", "EcalBarrelScFiHitsContributions"], OutputLevel=DEBUG)
 podout = PodioOutput("out", filename=kwargs['output'])
 
 # use the same daq_setting for digi/reco pair
diff --git a/benchmarks/imaging_shower_ML/options/imaging_ml_data.py b/benchmarks/imaging_shower_ML/options/imaging_ml_data.py
index 4b8188c94be9d272276070d9d3ce76ad682c7aa7..8881fad3a97b6a031f39ac48bca43cb5746446cf 100644
--- a/benchmarks/imaging_shower_ML/options/imaging_ml_data.py
+++ b/benchmarks/imaging_shower_ML/options/imaging_ml_data.py
@@ -34,7 +34,7 @@ sf = float(os.environ.get('JUGGLER_SAMP_FRAC', '1.0'))
 geo_service  = GeoSvc('GeoSvc', detectors=[f.strip() for f in kwargs['compact'].split(',')])
 podev = EICDataSvc('EventDataSvc', inputs=[f.strip() for f in kwargs['input'].split(',')])
 
-podin = PodioInput('PodioReader', collections=['MCParticles', 'EcalBarrelHits', 'EcalBarrelScFiHits'])
+podin = PodioInput('PodioReader', collections=['MCParticles', 'EcalBarrelHits', 'EcalBarrelHitsContributions', 'EcalBarrelScFiHits', 'EcalBarrelScFiHitsContributions'])
 podout = PodioOutput('out', filename=kwargs['output'])
 
 # Central Barrel Ecal (Imaging Cal.)