/// <summary>
        /// Return a local Firefox WebDriver instance.
        /// </summary>
        /// <param name="options"></param>
        /// <param name="windowSize"></param>
        /// <param name="windowCustomSize"></param>
        /// <returns></returns>
        public virtual IWebDriver GetWebDriver(FirefoxOptions options, WindowSize windowSize = WindowSize.Hd, Size windowCustomSize = new Size())
        {
            IWebDriver driver = InstalledDriverPath == null
                ? new FirefoxDriver(options)
                : new FirefoxDriver(InstalledDriverPath, options);

            return(WebDriverReSizer.SetWindowSize(driver, windowSize, windowCustomSize));
        }
        /// <summary>
        /// Return a local Safari WebDriver instance. (Only supported on Mac Os)
        /// </summary>
        /// <param name="options"></param>
        /// <param name="windowSize"></param>
        /// <param name="windowCustomSize"></param>
        /// <returns></returns>
        public virtual IWebDriver GetWebDriver(SafariOptions options, WindowSize windowSize = WindowSize.Hd, Size windowCustomSize = new Size())
        {
            if (!RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
            {
                throw new PlatformNotSupportedException("Safari is only available on Mac Os.");
            }

            IWebDriver driver = InstalledDriverPath == null
                ? new SafariDriver(options)
                : new SafariDriver(InstalledDriverPath, options);

            return(WebDriverReSizer.SetWindowSize(driver, windowSize, windowCustomSize));
        }
        /// <summary>
        /// Return a local Internet Explorer WebDriver instance. (Only supported on Microsoft Windows)
        /// </summary>
        /// <param name="options"></param>
        /// <param name="windowSize"></param>
        /// <param name="windowCustomSize"></param>
        /// <returns></returns>
        public virtual IWebDriver GetWebDriver(InternetExplorerOptions options, WindowSize windowSize = WindowSize.Hd, Size windowCustomSize = new Size())
        {
            if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
            {
                throw new PlatformNotSupportedException("Microsoft Internet Explorer is only available on Microsoft Windows.");
            }

            if (UseEdgeForInternetExplorer)
            {
                options.AttachToEdgeChrome = true;
                options.EdgeExecutablePath = EdgeExecutablePath;
            }

            IWebDriver driver = InstalledDriverPath == null
                ? new InternetExplorerDriver(options)
                : new InternetExplorerDriver(InstalledDriverPath, options);

            return(WebDriverReSizer.SetWindowSize(driver, windowSize, windowCustomSize));
        }