// returns remaining conditions static Exp nlLogic_checkFirstConditions(NLLogicChecker_v2 c, IfThen rule, NLLogicChecker_v2.Matching m) { Exp exp = rule.in; while ping (exp != null) { Pair p = c.checkFirstCondition(exp, m); if (!p.a) break; exp = p.b; } ret exp; }