anchor.diff:      DiffNode variables = diff["variables"];
       if (variables.hasAdded) {
         io.writeln("New variables:\n");
  -      writeCodeblock(() => variables.added.values.map(variableSignature).join("\n"));
  -      io.writeln("---\n");
  +      writeCodeblockHr(variables.added.values.map(variableSignature).join("\n"));
       }
   
       if (variables.hasRemoved) {
         io.writeln("Removed variables:\n");
  -      writeCodeblock(() => variables.removed.values.map(variableSignature).join("\n"));
  -      io.writeln("---\n");
  +      writeCodeblockHr(variables.removed.values.map(variableSignature).join("\n"));
       }
   
       if (variables.hasChanged) {
  
positive.code:   void reportEachMethodThing(String methodCategory, DiffNode d) {
      d.forEachAdded((k, v) {
        //print("New ${singularize(methodCategory)} '$k': ${pretty(v)}");
        io.writeln(
  """New ${singularize(methodCategory)} [$k](#):
  
  ```dart
  ${methodSignature(v as Map)}
  ```
  ---
  """);
      });
      
      d.forEachRemoved((k, v) {
        //print("New ${singularize(methodCategory)} '$k': ${pretty(v)}");
        if (k == '') { k = diff.metadata['name']; }
        io.writeln(
  """Removed ${singularize(methodCategory)} [$k](#):
  
  ```dart
  ${methodSignature(v as Map, includeComment: false)}
  ```
  ---
  """);
      });
            
      // iterate over the methods
  
negative.code:     });
    }
    
    void writeCodeblockHr(String s) {
      io.write("```dart\n${s}\n```\n---\n");
    }
  
    String h1(String s) {
  