code: private Route parse(String input, int line) throws ParseException {
  		StringTokenizer st = new StringTokenizer(input, " \t");
  		if (st.countTokens() != 3) {
  			throw new ParseException("Unrecognized format", line);
  		}
  
  		// retrieve and validate the three arguments
  		String httpMethod = validateHttpMethod( st.nextToken().trim(), line );
  		String path = validatePath( st.nextToken().trim(), line );
  		String controllerAndMethod = validateControllerAndMethod( st.nextToken().trim(), line );
  
  		// retrieve controller name
  		int hashPos = controllerAndMethod.indexOf('#');
  		String controllerName = controllerAndMethod.substring(0, hashPos);
  
  		// retrieve controller method
  		String controllerMethod = controllerAndMethod.substring(hashPos + 1);
  
  		return buildRoute(httpMethod, path, controllerName, controllerMethod);
  	}
docs: Helper method. Creates a {@link Route} object from the input string.
  
  @param input the string to parse.
  
  @return a {@link Route} object.
  @throws ParseException if the line has an invalid format.