protected static PPElement PPGroupWithDelimiters(PPElement separator, IEnumerable<PPElement> children) { return new PPGroup( new PPNewline(), new PPText("{"), new PPIncIndent( new PPGroup( separator, children.Select<PPElement, PPElement>(c => new PPGroup( new PPNewline(), c)))), new PPNewline(), new PPText("}")); }