anchor.diff:  
     /// Tracks the current stack chain so it can be set to [_currentChain] when
     /// [f] is run.
  -  ZoneUnaryCallback _registerUnaryCallback(
  -      Zone self, ZoneDelegate parent, Zone zone, Function f) {
  +  ZoneUnaryCallback<R, T> _registerUnaryCallback<R, T>(
  +      Zone self, ZoneDelegate parent, Zone zone, R f(T arg) {
       if (f == null || _disabled) return parent.registerUnaryCallback(zone, f);
       var node = _createNode(1);
       return parent.registerUnaryCallback(zone, (arg) {
  
positive.code: 
    /// Tracks the current stack chain so it can be set to [_currentChain] when
    /// [f] is run.
    ZoneCallback _registerCallback(
        Zone self, ZoneDelegate parent, Zone zone, Function f) {
      if (f == null || _disabled) return parent.registerCallback(zone, f);
      var node = _createNode(1);
      return parent.registerCallback(zone, () => _run(f, node));
  
negative.code:   ///
    /// If [f] throws an error, this associates [node] with that error's stack
    /// trace.
    T _run<T>(T f(), _Node node) {
      var previousNode = _currentNode;
      _currentNode = node;
      try {
  