anchor.diff:    async.Timer _onCreateTimer(async.Zone self, async.ZoneDelegate delegate, async.Zone zone, Duration duration, fn()) {
       var s = traceEnter(VmTurnZone_createTimer);
       try {
  -      return new _WrappedTimer(this, delegate, zone, duration, fn);
  +      return onCreateTimer(delegate, zone, duration, fn);
       } finally {
         traceLeave(s);
       }
  
positive.code:     onTurnDone = _defaultOnTurnDone;
      onTurnStart = _defaultOnTurnStart;
      onScheduleMicrotask = _defaultOnScheduleMicrotask;
      countPendingAsync = _defaultCountPendingAsync;
    }
  
  
negative.code:   ZoneScheduleMicrotask onScheduleMicrotask;
    void _defaultOnScheduleMicrotask(fn) => _asyncQueue.add(fn);
  
    /**
     * Called any time a timer is created. If you override [onCreateTimer],
     * you are expected to return a [Timer] which call the function at some point.
     */
    ZoneCreateTimer onCreateTimer;
    async.Timer _defaultOnCreateTimer(async.ZoneDelegate delegate,
        async.Zone zone, Duration duration, fn())
        => new _WrappedTimer(this, delegate, zone, duration, fn);
  
    LongStackTrace _longStacktrace = null;
  
    LongStackTrace _getLongStacktrace(name) {
  