0..81 @13 OperationDefinition {
    operation_type: Query,
    name: Some(
        "ExampleQuery",
    ),
    variables: [
        19..33 @13 VariableDefinition {
            name: "variable",
            ty: 30..33 @13 Named(
                "Int",
            ),
            default_value: None,
            directives: [],
        },
    ],
    directives: [],
    selection_set: [
        Field(
            39..65 @13 Field {
                alias: None,
                name: "topProducts",
                arguments: [],
                directives: [],
                selection_set: [
                    Field(
                        57..61 @13 Field {
                            alias: None,
                            name: "name",
                            arguments: [],
                            directives: [],
                            selection_set: [],
                        },
                    ),
                ],
            },
        ),
        FragmentSpread(
            68..79 @13 FragmentSpread {
                fragment_name: "subFrag",
                directives: [],
            },
        ),
    ],
}
83..163 @13 FragmentDefinition {
    name: "subFrag",
    type_condition: "Query",
    directives: [],
    selection_set: [
        Field(
            113..161 @13 Field {
                alias: None,
                name: "topProducts",
                arguments: [],
                directives: [],
                selection_set: [
                    Field(
                        131..157 @13 Field {
                            alias: None,
                            name: "price",
                            arguments: [
                                137..156 @13 Argument {
                                    name: "setPrice",
                                    value: 147..156 @13 Variable(
                                        "variable",
                                    ),
                                },
                            ],
                            directives: [],
                            selection_set: [],
                        },
                    ),
                ],
            },
        ),
    ],
}
165..233 @13 ObjectTypeDefinition {
    description: None,
    name: "Query",
    implements_interfaces: [],
    directives: [],
    fields: [
        180..212 @13 FieldDefinition {
            description: None,
            name: "topProducts",
            arguments: [
                192..202 @13 InputValueDefinition {
                    description: None,
                    name: "first",
                    ty: 199..202 @13 Named(
                        "Int",
                    ),
                    default_value: None,
                    directives: [],
                },
            ],
            ty: Named(
                "Product",
            ),
            directives: [],
        },
        216..231 @13 FieldDefinition {
            description: None,
            name: "reviews",
            arguments: [],
            ty: Named(
                "Review",
            ),
            directives: [],
        },
    ],
}
235..269 @13 ObjectTypeDefinition {
    description: None,
    name: "Review",
    implements_interfaces: [],
    directives: [],
    fields: [
        251..267 @13 FieldDefinition {
            description: None,
            name: "message",
            arguments: [],
            ty: Named(
                "Message",
            ),
            directives: [],
        },
    ],
}
271..338 @13 ObjectTypeDefinition {
    description: None,
    name: "Message",
    implements_interfaces: [],
    directives: [],
    fields: [
        288..300 @13 FieldDefinition {
            description: None,
            name: "body",
            arguments: [],
            ty: Named(
                "String",
            ),
            directives: [],
        },
        303..336 @13 FieldDefinition {
            description: None,
            name: "sender",
            arguments: [
                310..327 @13 InputValueDefinition {
                    description: None,
                    name: "attribute",
                    ty: 321..327 @13 Named(
                        "String",
                    ),
                    default_value: None,
                    directives: [],
                },
            ],
            ty: Named(
                "String",
            ),
            directives: [],
        },
    ],
}
340..399 @13 ObjectTypeDefinition {
    description: None,
    name: "Product",
    implements_interfaces: [],
    directives: [],
    fields: [
        357..369 @13 FieldDefinition {
            description: None,
            name: "name",
            arguments: [],
            ty: Named(
                "String",
            ),
            directives: [],
        },
        372..397 @13 FieldDefinition {
            description: None,
            name: "price",
            arguments: [
                378..391 @13 InputValueDefinition {
                    description: None,
                    name: "setPrice",
                    ty: 388..391 @13 Named(
                        "Int",
                    ),
                    default_value: None,
                    directives: [],
                },
            ],
            ty: Named(
                "Int",
            ),
            directives: [],
        },
    ],
}

