public async Task <bool> RunPage()
            {
                var payload = owner.GetPayload(variables);
                var data    = await connection.Run(payload);

                var json     = deserializer.Deserialize(data);
                var pageInfo = owner.PageInfo(json);

                Result = owner.ResultBuilder(json);

                foreach (var i in (IList)Result)
                {
                    finalResult.Add(i);
                }

                if ((bool)pageInfo["hasNextPage"] == true)
                {
                    variables["__after"] = (string)pageInfo["endCursor"];
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            /// <inheritdoc />
            public async Task <bool> RunPage(CancellationToken cancellationToken = default)
            {
                var payload = owner.GetPayload(variables);
                var data    = await connection.Run(payload, cancellationToken).ConfigureAwait(false);

                var json     = deserializer.Deserialize(data);
                var pageInfo = owner.PageInfo(json);

                Result = owner.ResultBuilder(json);

                foreach (var i in (IList)Result)
                {
                    addResult(i);
                }

                if ((bool)pageInfo["hasNextPage"] == true)
                {
                    variables["__after"] = (string)pageInfo["endCursor"];
                    return(true);
                }
                else
                {
                    return(false);
                }
            }