code: protected static String getRemainingPath(List<String> tokens, int i, int end) {
          if (tokens == null) {
              throw MESSAGES.nullArgument("tokens");
          }
          if (i < 0 || i >= end) { throw new IllegalArgumentException("i is not in the range of tokens: 0-" + (end - 1)); }
          if (i == end - 1) { return tokens.get(end - 1); }
          StringBuilder buffer = new StringBuilder();
          for (; i < end - 1; ++i) {
              buffer.append(tokens.get(i));
              buffer.append("/");
          }
          buffer.append(tokens.get(end - 1));
          return buffer.toString();
      }
docs: Get the remaining path from some tokens
  
  @param tokens the tokens
  @param i      the current location
  @param end    the end index
  @return the remaining path
  @throws IllegalArgumentException for null tokens or i is out of range