!7 sclass Entry { S originalRule, replacements, modifiedRule; } cmodule TestRuleEngine2 > DynObjectTable { S input; visualize { ret northAndCenterWithMargins( dm_textFieldAndSubmit_q('input, 'calc), super.visualize()); } void calc { S input = this.input; RuleEngine2 engine = new(dm_allRulesFromRulesModuleWithComments()); L l = ai_ruleEngine2_rulesForInput_3(engine, input); setList(map(l, func(RuleEngine2_MatchedRule r) -> Entry { //S x = map(r.matchedLines, func(Pair p -> S {})); nu(Entry, originalRule := r.rule.asText(), replacements := str(r.map) /*modifiedRule := x*/) })); } }