@Override
    public List<WebElement> findElements(SearchContext context) {
        Object response = executeScript(context);
        if (response == null) {
            return new ArrayList<WebElement>();
        }
        if (response instanceof WebElement) {
            ArrayList<WebElement> webElementList = new ArrayList<WebElement>();
            webElementList.add((WebElement) response);
            return webElementList;
        }
        if (response instanceof List) {
            return (List<WebElement>) response;
        }
        throw new SeleniumException("Unexpected response for " + this + ", response=" + response);
    }