Breaking NTuple making for multiple identical daughter particles
The way the decays are written out to ntuples doesn't work properly in the case of multiple identical daughter particles https://gitlab.cern.ch/jwuerzin/Run3ModelGen/-/blob/main/source/Run3ModelGen/python/ntupling.py?ref_type=heads#L742
Here's an example of how it breaks (not sure if there are other decays that can break it too):
In the "for sDecay in slha.decays" loop, when sDecay is h1 --> N1 N2 then ids = {1000022,1000023} but then in the "for mm in decay" loop it hits mm = {100022, 1000022} first and breaks the loop because match=set({1000022, 1000022})={1000022} is a subset of ids={1000022,1000023}, and as a result h->N1 N2 gets the same idx as h->N1 N1 . So what's written out as BF_h_to_chi_10_chi_10 is actually the sum of BF(h-->N1 N2) + BF(h-->N1 N1)
Thanks to @bhodkins for reporting this!