anchor.diff:      // resolve the problem. Luckily Chrome will automatically reattempt the
       // request. We just have to be ready for it.
       _enableErrorMode();
  -  }
  -
  -  /**
  -   * This gets run on every single request the browser makes. It is pertinent
  -   * that it be FAST!
  -   */
  -  JsObject _onBeforeRequestAction(JsObject data) {
  -    if (_errorMode &&
  -        new DateTime.now().subtract(_ERROR_COOL_DOWN_PERIOD).isAfter(_lastErrorTime)) {
  -      _disableErrorMode();
  -    }
  -
  -    Uri url;
  -    try {
  -      url = Uri.parse(data['url']);
  -    } on FormatException {
  -      // Some websites like to add invalid characters to their query strings
  -      // that their servers must like but the uri parser has beef with.
  -      // We'll just continue on with life like the request never happened.
  -      return null;
  -    }
  -
  -    String redirectUrl = '';
  -    if (_isIpfsUrl(url)) {
  -      redirectUrl = _handleIpfsRequest(data, url);
  -    } else {
  -      redirectUrl = _handleOtherRequest(url);
  -    }
  -
  -    if (redirectUrl != '') {
  -      return new JsObject.jsify({
  -        'redirectUrl': redirectUrl
  -      });
  -    }
  -
  -    return null;
     }
   
     /**
  
positive.code:     return Uri.parse(Uri.decodeComponent(fileUrl));
    }
  
    void _setErrorListener() {
      dartifyChromeEvent(chromeWebRequest, 'onErrorOccurred')
          .callMethod('addListener', [
            _onErrorAction,
  
negative.code: 
  class DomainCacheItem {
    DateTime cacheTime;
    bool ipnsAvailable;
  
    DomainCacheItem(this.cacheTime, this.ipnsAvailable);
  }
  
  class WebRequestRedirect {
  