anchor.diff:    }
   
     void _initCacheCleaner() {
  -    new Timer.periodic(_CACHE_DURATION * 10, (_) {
  +    new Timer.periodic(new Duration(minutes: 5), (_) {
         var keysToRemove = [];
         var oldestCacheTime = new DateTime.now().subtract(_CACHE_DURATION);
         _domainCache.forEach((k, v) {
  
positive.code:     var req = new HttpRequest();
      req.open('GET', 'http://${settings.host}:${settings.port}/ipns/${host}', async: false);
  
      bool ipnsAvailable;
      req.onLoad.listen((event) {
        ipnsAvailable = (event.target as HttpRequest).status < 400;
      });
  
      req.send();
  
      return ipnsAvailable;
    }
  
negative.code: }
  
  class WebRequestRedirect {
    static const _CACHE_DURATION = const Duration(minutes: 10);
    static const _ERROR_COOL_DOWN_PERIOD = const Duration(seconds: 30);
  
    final JsObject chromeWebRequest;
  