anchor.diff:      importedURIs[importUri] = true;
       //route.addEventListener('lazy-loaded', pageLoadedCallback);
       router._ajax.url = route.imp;
  -    router._ajax.onCoreResponse.first.then((Event e) => pageLoadedCallback(e, router, contentHtml, importUri, route, url, eventDetail));
  +    router._ajax.onCoreResponse.first.then((CustomEvent e) => pageLoadedCallback(e, router, contentHtml, importUri, route, url, eventDetail));
       router._ajax.onError.first.then(onError);
       router._ajax.go();
     } else {
  
positive.code:   // Import and activate a custom element or template
  void importAndActivate(AppRouter router, String importUri, AppRoute route, RouteUri url, Map eventDetail){
    Element contentHtml;
    pageLoadedCallback(Event e, AppRouter router, Element contentHtml, String importUri, AppRoute route, RouteUri url, Map eventDetail) {
      final String content = e.detail['response'];
  
      if (route.active) {
  
negative.code:   }
  
    String get search {
      if(uri.query.length == 0) return '';
      return '?'+uri.query;
    }
  
    toString() => uri.toString()+" isHashPath: $isHashPath";
  
    toMap() {
      Map map = new Map();
      map['path'] = this.path;
      map['hash'] = this.hash;
      map['search'] = this.search;
      map['isHashPath'] = this.isHashPath;
      return map;
    }
  
    Uri replacePathAndQuery(Uri uri, String pathAndQuery){
      int index = pathAndQuery.indexOf("?");
      String path = pathAndQuery;
      String query = "";
      if(index != -1){
        path = pathAndQuery.substring(0, index);
        query = pathAndQuery.substring(index+1);
      }
      uri = uri.replace(path: path, query: query);
      return uri;
    }
  
    // parseUrl(location, mode) - Augment the native URL() constructor to get info about hash paths
    //
  