anchor.diff:      holder[name] = null;
       holder[getterName] = function() {
         var initializer = compile(name, descriptor);
  -      holder[getterName] = function() { #(name) };  // cyclicThrowHelper
  +      holder[getterName] = function() { #cyclicThrow(name) };
         var result;
         var sentinelInProgress = descriptor;
         try {
  
positive.code:   setupProgram();
  
    // Initialize globals.
    #;
  
    // Initialize constants.
    #;
  
    // Initialize static non-final fields.
    #;
  
    // Initialize eager classes.
    #;
  
    var end = Date.now();
    print('Setup: ' + (end - start) + ' ms.');
  
    if (true) #();  // Start main.
  
  }(Date.now(), #)
  }""";
  
  }
  
negative.code:     js.Expression code = new js.ArrayInitializer.from(elements);
      return js.js.statement(
          boilerplate,
          {'deferredInitializer': emitDeferredInitializerGlobal(program.loadMap),
           'holders': emitHolders(unit.holders),
           'cyclicThrow': namer.elementAccess(backend.getCyclicThrowHelper()),
           'outputContainsConstantList': program.outputContainsConstantList,
           'embeddedGlobals': emitEmbeddedGlobals(program.loadMap),
           'constants': emitConstants(unit.constants),
           'staticNonFinals': emitStaticNonFinalFields(unit.staticNonFinalFields),
           'eagerClasses': emitEagerClassInitializations(unit.libraries),
           'main': unit.main,
           'code': code});
    }
  
    js.Block emitHolders(List<Holder> holders) {
  