static ExecutedRule nlLogic_executedRuleFromRuleWithParams(RuleWithParams r) { ret nlLogic_executedRuleFromRuleWithParams(r, null); } static ExecutedRule nlLogic_executedRuleFromRuleWithParams(RuleWithParams r, NLLogicChecker_v2 logicChecker) { L l = nlLogic_unrollAndApplyRuleWithParams(r); if (r cast FailedRule) { new ExecutedRule e; e.logicChecker = logicChecker; e.rule = r; assertNotNull(r.remainingCondition); ret e; } ExecutedRule e = ExecutedRule(r, nlLogic_certainOperatorArgs(l, 'output, 'say), nlLogic_certainOperatorArgs(l, 'fact), nlLogic_certainOperatorArgs(l, 'input)); e.logicChecker = logicChecker; ret e; }