docs: protected static File findGhostDriver(Capabilities desiredCapabilities, String docsLink, String downloadLink) {
          // Recover path to GhostDriver from the System Properties or the Capabilities
          String ghostdriverpath;
          if (desiredCapabilities != null &&
                  desiredCapabilities.getCapability(PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY) != null) {
              ghostdriverpath = (String) desiredCapabilities.getCapability(PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY);
          } else {
              ghostdriverpath = System.getProperty(PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY);
          }
  
          if (ghostdriverpath != null) {
              // Check few things on the file before returning it
              File ghostdriver = new File(ghostdriverpath);
              checkState(ghostdriver.exists(),
                      "The GhostDriver does not exist: %s",
                      ghostdriver.getAbsolutePath());
              checkState(ghostdriver.isFile(),
                      "The GhostDriver is a directory: %s",
                      ghostdriver.getAbsolutePath());
              checkState(ghostdriver.canRead(),
                      "The GhostDriver is not a readable file: %s",
                      ghostdriver.getAbsolutePath());
  
              return ghostdriver;
          }
  
          // This means that no GhostDriver System Property nor Capability was set
          return null;
      }