code: public static String applySpecialPaths(String path) throws IllegalArgumentException {
          List<String> tokens = getTokens(path);
          if (tokens == null) { return null; }
          int i = 0;
          for (int j = 0; j < tokens.size(); j++) {
              String token = tokens.get(j);
              if (isCurrentToken(token)) { continue; } else if (isReverseToken(token)) { i--; } else { tokens.set(i++, token); }
              if (i < 0) {
                  throw VFSMessages.MESSAGES.onRootPath();
              }
          }
          return getRemainingPath(tokens, 0, i);
      }
docs: Apply any . or .. paths in the path param.
  
  @param path the path
  @return simple path, containing no . or .. paths