anchor.diff:  
     RootScope(Object context, Parser parser, ASTParser astParser,
               FieldGetterFactory fieldGetterFactory, FormatterMap formatters, this._exceptionHandler,
  -            ScopeDigestTTL ttl, this._zone, ScopeStats _scopeStats)
  +            ScopeDigestTTL ttl, this._zone, ScopeStats _scopeStats, CacheRegister cacheRegister)
         : _scopeStats = _scopeStats,
           _ttl = ttl,
           _parser = parser,
  
positive.code:     for(num i = 0; i <= _ttl.ttl; i++) {
        _digestTags.add(new UserTag('NgDigest${i}'));
      }
    }
  
    RootScope get rootScope => this;
  
negative.code:       }
      }
  
      String astKey =
          "${collection ? "C" : "."}${formatters == null ? "." : formatters.hashCode}$expression";
      AST ast = rootScope.astCache[astKey];
      if (ast == null) {
        ast = rootScope.astCache[astKey] =
            rootScope._astParser(expression,
                formatters: formatters, collection: collection);
      }
  
      return watch = watchAST(ast, fn, canChangeModel: canChangeModel);
    }
  