91    std::vector<std::ostream *> streams;  
 
   96    friend std::ostream &operator<<(std::ostream &out, 
TempIndent &ti) {
 
   97        ti.streams.push_back(&out);
 
  100    friend std::ostream &operator<<(std::ostream &out, 
TempIndent &&ti) {
 
  101        ti.streams.push_back(&out);
 
  102        return out << indent;
 
  104    const char *pop_back() {
 
  105        if (!streams.empty()) {
 
  106            *streams.back() << unindent;
 
  111    const char *reset() {
 
  112        for (
auto *out : streams) *out << unindent;
 
  117        for (
auto *out : streams) *out << unindent;