public static By parse(String elementLocator) throws InvalidSeleneseCommandArgumentException {
		String matched;
		for(ElementLocator locator : ElementLocator.values()) {
			if((matched = locator.find(elementLocator)) != null) {
				switch(locator) {
					case ID   : return By.id(matched);
					case NAME : return By.name(matched);
					case XPATH: return By.xpath(matched);
					case LINK : return By.linkText(matched);
					case CSS  : return By.cssSelector(matched);
				}
			}
		}
		throw new InvalidSeleneseCommandArgumentException(elementLocator);
	}