anchor.diff:    // What do the dart VM and dart2js timers do here?
     static const _minDuration = Duration.ZERO;
   
  -  _FakeTimer._(Duration duration, this._callback, this._isPeriodic, this._time,
  -      this._id)
  +  _FakeTimer._(Duration duration, this._callback, this._isPeriodic, this._time)
         : _duration = duration < _minDuration ? _minDuration : duration {
       _nextCall = _time.clock.now().add(_duration);
     }
   
  -  bool get isActive => _time._timers.containsKey(_id);
  +  bool get isActive => _time._timers.contains(this);
   
     cancel() => _time._cancelTimer(this);
   }
  
positive.code:       timer._nextCall = timer._nextCall.add(timer._duration);
      } else {
        timer._callback();
        _timers.remove(timer._id);
      }
    }
  
  
negative.code: 
    Queue<Function> _microTasks = new Queue();
  
    Set<_FakeTimer> _timers = new Set<_FakeTimer>();
    bool _waitingForTimer = false;
  
    Timer _createTimer(Duration duration, Function callback, bool isPeriodic) {
      var timer = new _FakeTimer._(duration, callback, isPeriodic, this);
      _timers.add(timer);
      return timer;
    }
  
    _FakeTimer _getNextTimer() {
      return min(_timers.where((timer) =>
          timer._nextCall.millisecondsSinceEpoch <= _now.millisecondsSinceEpoch ||
          (_elapsingTo != null &&
           timer._nextCall.millisecondsSinceEpoch <=
  