anchor.diff:    final Window _window;
     _Route _defaultRoute;
     _Route _currentRoute;
  -  String _lastTail = '';
  +  String _lastHead = '';
   
     /**
      * [useFragment] determines whether this Router uses pure paths with
  
positive.code:     if (route != null) {
        var match = _getMatch(route, path);
        if (!identical(route, _currentRoute)) {
          return _processNewRoute(path, match, route, prefix + match.match);
        } else if (route.child != null)  {
          return route.child.route(match.tail, prefix: prefix + match.match);
        }
      }
      return new Future.value(true);
    }
  
    Future go(String routePath, Map parameters, {bool replace: false}) {
      String newUrl = _lastTail + _getTailUrl(routePath, parameters);
      return route(newUrl, prefix: _lastTail).then((success) {
        if (success) {
          _go(newUrl, null, replace);
        }
  
negative.code:    * If the UrlPattern contains a fragment (#), the handler is always called
     * with the path version of the URL by converting the # to a /.
     */
    Future<bool> route(String path, {String head: ''}) {
      _lastHead = head;
      _Route route;
      List matchingRoutes = _routes.values.where(
          (r) => r.path.match(path) != null).toList();
  