anchor.diff:     * braces. Variable name consists of [a-zA-Z0-9_] characters, with the first
      * character being a letter.
      */
  -  Route(pattern) {
  +  Route(String pattern) {
       if (pattern.isEmpty || pattern[0] != '/') {
         throw new FormatException("Url pattern has to begin with '/' character.");
       }
  +    if(pattern[pattern.length - 1] == '*'){
  +      _anyTail = true;
  +      pattern = pattern.substring(0, pattern.length - 1);
  +    }
  +
       if (pattern[pattern.length - 1] != '/') {
  -      throw new FormatException("Url pattern has to end with '/' character.");
  +      throw new FormatException("Url pattern has to end with '/' or '/*' characters.");
       }
   
       RegExp exp = new RegExp(r"^(?:([\w-]*)|{([^{}]*)})$");
  
positive.code:     Map result = new Map();
      for (var i = 0; i < _variables.length; i++) {
        result[_variables[i]] = Uri.decodeComponent(match.group(i + 1));
      }
  
      return result;
  
negative.code: // Copyright (c) 2013, the Clean project authors.  Please see the AUTHORS file
  // for details. All rights reserved. Use of this source code is governed by a
  // BSD-style license that can be found in the LICENSE file.
  
  //TODO comment new /* feature
  
  library clean_router.common;
  
  