sS renderLineCompedSingleWithBrackets(LineCompedSingle lc) { new StringBuilder buf; renderLineCompedSingleWithBrackets_step(lc, buf, lc.main); ret str(buf); } svoid renderLineCompedSingleWithBrackets_step(LineCompedSingle lc, StringBuilder buf, L chunks) { for (int idx : chunks) if (idx < l(lc.literals)) buf.append(lc.literals.get(idx)); else { buf.append("("); renderLineCompedSingleWithBrackets_step(lc, buf, intPairToList(lc.pairs.get(idx-l(lc.literals)))); buf.append(")"); } }