anchor.diff:    }
   
     List<String> readStringReferenceList() {
  -    return new List<String>.generate(readUInt(), (i) => readStringReference());
  +    int length = readUInt();
  +    List<String> result = new List<String>(length);
  +    for (int i = 0; i < length; ++i) {
  +      result[i] = readStringReference();
  +    }
  +    return result;
     }
   
     String readStringOrNullIfEmpty() {
  
positive.code:   }
  
    List<VariableDeclaration> readAndPushVariableDeclarationList() {
      return new List<VariableDeclaration>.generate(
          readUInt(), (i) => readAndPushVariableDeclaration());
    }
  
    VariableDeclaration readAndPushVariableDeclarationOption() {
  
negative.code:   }
  
    List<Expression> readExpressionList() {
      int length = readUInt();
      List<Expression> result = new List<Expression>(length);
      for (int i = 0; i < length; ++i) {
        result[i] = readExpression();
      }
      return result;
    }
  
    Expression readExpressionOption() {
  