public async Task <IElementHandle> QuerySelectorAsync(string selector, IElementHandle scope = null)
        {
            var handle = await EvaluateHandleAsync(
                "(injected, selector, scope) => injected.querySelector(selector, scope || document)",
                await GetInjectedAsync().ConfigureAwait(false),
                Dom.NormalizeSelector(selector),
                scope).ConfigureAwait(false);

            if (!(handle is ElementHandle))
            {
                await handle.DisposeAsync().ConfigureAwait(false);
            }

            return(handle as ElementHandle);
        }
 internal async Task <JSHandle> QuerySelectorArrayAsync(string selector, ElementHandle scope = null)
 => await EvaluateHandleAsync(
     "(injected, selector, scope) => injected.querySelectorAll(selector, scope || document)",
     await GetInjectedAsync().ConfigureAwait(false),
     Dom.NormalizeSelector(selector),
     scope).ConfigureAwait(false);