code: public StateVertex crawlIndex() {
  		LOG.debug("Setting up vertex of the index page");
  
  		if (basicAuthUrl != null) {
  			browser.goToUrl(basicAuthUrl);
  		}
  
  		browser.goToUrl(url);
  
  		// Run url first load plugin to clear the application state
  		plugins.runOnUrlFirstLoadPlugins(context);
  
  		plugins.runOnUrlLoadPlugins(context);
  		StateVertex index = vertexFactory.createIndex(url.toString(), browser.getStrippedDom(),
  				stateComparator.getStrippedDom(browser), browser);
  		Preconditions.checkArgument(index.getId() == StateVertex.INDEX_ID,
  				"It seems some the index state is crawled more than once.");
  
  		LOG.debug("Parsing the index for candidate elements");
  		ImmutableList<CandidateElement> extract = candidateExtractor.extract(index);
  
  		plugins.runPreStateCrawlingPlugins(context, extract, index);
  
  		candidateActionCache.addActions(extract, index);
  
  		return index;
  
  	}
docs: This method calls the index state. It should be called once per crawl in order to setup the
  crawl.
  
  @return The initial state.