if (!children[children.length - 1].isSkippable())
{
particlesMatchingAfter(children[0], suspectSet, result, eliminate, false);
break recurse;
}
QNameSetBuilder remainingSuspects = new QNameSetBuilder(suspectSet);
QNameSetBuilder suspectsToEliminate = new QNameSetBuilder();
for (int i = children.length - 1; i >= 0; i--)
{
particlesMatchingAfter(children[i], remainingSuspects, result, suspectsToEliminate, false);
eliminate.addAll(suspectsToEliminate);
if (!children[i].isSkippable())
break recurse;
remainingSuspects.removeAll(suspectsToEliminate);
if (remainingSuspects.isEmpty())
break recurse;
suspectsToEliminate.clear();
}
break recurse;
}
}