anchor.diff:    }
   
     /// Writes indentation based on [_indentation].
  -  void _writeIndentation() {
  -    for (var i = 0; i < _indentation * _indentWidth; i++) {
  -      _buffer.writeCharCode(_indentCharacter);
  +  void _writeIndentation() =>
  +      _writeTimes(_indentCharacter, _indentation * _indentWidth);
  +
  +  /// Writes [char] to [_buffer] with [times] repetitions.
  +  void _writeTimes(int char, int times) {
  +    for (var i = 0; i < times; i++) {
  +      _buffer.writeCharCode(char);
       }
     }
   
  
positive.code:     if (minimumIndentation == null) {
        _buffer.write(value);
        return;
      }
  
      if (node.value.span != null) {
  
negative.code:       while (!scanner.isDone && scanner.readChar() != $lf) {}
      }
  
      return min ?? -1;
    }
  
    /// Writes [text] to [_buffer], replacing [minimumIndentation] with
    /// [_indentation] for each non-empty line after the first.
    ///
    /// Compresses trailing empty lines of [text] into a single trailing space.
    void _writeWithIndent(String text, int minimumIndentation) {
      var scanner = new LineScanner(text);
  
      // Write the first line as-is.
      while (!scanner.isDone) {
        var next = scanner.readChar();
        if (next == $lf) break;
        _buffer.writeCharCode(next);
      }
  
      while (true) {
        assert(isWhitespace(scanner.peekChar(-1)));
  
        // Scan forward until we hit non-whitespace or the end of [text].
        var lineStart = scanner.position;
        var newlines = 1;
        while (true) {
          // If we hit the end of [text], we still need to preserve the fact that
          // whitespace exists because it could matter for custom properties.
          if (scanner.isDone) {
            _buffer.writeCharCode($space);
            return;
          }
  
          var next = scanner.readChar();
          if (next == $space || next == $tab) continue;
          if (next != $lf) break;
          lineStart = scanner.position;
          newlines++;
        }
  
        _writeTimes($lf, newlines);
        _writeIndentation();
        _buffer.write(scanner.substring(lineStart + minimumIndentation));
  
        // Scan and write until we hit a newline or the end of [text].
        while (true) {
          if (scanner.isDone) return;
          var next = scanner.readChar();
          if (next == $lf) break;
          _buffer.writeCharCode(next);
        }
      }
    }
  