Hi, here is the promised update on the truth matching in signal MC. At this point all my tests are using 20k events of nonres signal MC (in analysis-23). Out of the 20k events, 11598 make it to the point that we even initialize a RecoilMCUtil for them. The 8402 others apparently have an empty Breco list (according to the eventCat histogram). Why does this actually happen? We are running over the SemiExclusive skim after all. Why does the skim write events with an empty Breco candidate list? I changed the MC truth matching that is based on looking for a true lepton in the true B such that if we have two semileptonically decaying B, we pick out the b->ulnu decay and call that one the true signal B, if we have two of those, we use the same match as in the standard method. (Up to now, this truth matching method would not pick any candidate in the case of two semileptonically decaying B). Out of those 11598, the standard truth matching and this truth matching agree for 8344 events and disagree for 3254 events. That seems like pretty much disagreement. We write out 3730 events to the ntuple after more selection criteria are applied (most of the events that do not get written fail the reqirement of a lepton with pcms>1.). For these, the truth matching methods agree for 3325 events and disagree for 405 events. Much better, I think, after all we do expect some Breco candidates to pick up many of the signal particles. Currently (i.e. with the standard truth matching, the truth variables are not filled for 300 events, and the remaining 105 events are events with two true semileptonic decays and the truth variables are filled from the b->clnu decay. The numbers actually vary slightly (by 1 to 3 events). Is this due to track, neutral, and PID corrections that would affect the normal truth matching? Are there any objections to change to the CM1-type, i.e. truth lepton based, truth matching for signal MC? If not, I would make that change and also (beforehand) test it on resonant signal MC. Cheers, Kerstin