Work on return types; deferred collection methods are collecting data, they need to be combined properly and untraced assertion errors are likely indications of why it's not happening.