anchor.diff:  
     $digest() {
       var innerAsyncQueue = _innerAsyncQueue;
  -    num length;
  +    int length;
       _Watch lastDirtyWatch = null;
       _Watch lastLoopLastDirtyWatch;
  -    num _ttlLeft = _ttl;
  +    int _ttlLeft = _ttl;
       List<List<String>> watchLog = [];
       List<_Watch> watchers;
       _Watch watch;
  
positive.code: 
      _beginPhase('\$digest');
      try {
        var watcherCount;
        var scopeCount;
        do { // "while dirty" loop
          lastLoopLastDirtyWatch = lastDirtyWatch;
          lastDirtyWatch = null;
  
negative.code:           // Insanity Warning: scope depth-first traversal
            // yes, this code is a bit crazy, but it works and we have tests to prove it!
            // this piece should be kept in sync with the traversal in $broadcast
            Scope childHead = current._childHead;
            while (childHead != null && childHead._disabled) {
              childHead = childHead._nextSibling;
            }
  