apollo-parser 0.8.5

Spec-compliant GraphQL parser.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
- DOCUMENT@0..7494
    - SCHEMA_DEFINITION@0..153
        - schema_KW@0..6 "schema"
        - WHITESPACE@6..7 "\n"
        - DIRECTIVES@7..113
            - DIRECTIVE@7..59
                - AT@7..8 "@"
                - NAME@8..12
                    - IDENT@8..12 "core"
                - ARGUMENTS@12..59
                    - L_PAREN@12..13 "("
                    - ARGUMENT@13..58
                        - NAME@13..20
                            - IDENT@13..20 "feature"
                        - COLON@20..21 ":"
                        - WHITESPACE@21..22 " "
                        - STRING_VALUE@22..58
                            - STRING@22..58 "\"https://specs.apollo.dev/core/v0.1\""
                    - R_PAREN@58..59 ")"
            - COMMA@59..60 ","
            - WHITESPACE@60..61 "\n"
            - DIRECTIVE@61..113
                - AT@61..62 "@"
                - NAME@62..66
                    - IDENT@62..66 "core"
                - ARGUMENTS@66..113
                    - L_PAREN@66..67 "("
                    - ARGUMENT@67..112
                        - NAME@67..74
                            - IDENT@67..74 "feature"
                        - COLON@74..75 ":"
                        - WHITESPACE@75..76 " "
                        - STRING_VALUE@76..112
                            - STRING@76..112 "\"https://specs.apollo.dev/join/v0.1\""
                    - R_PAREN@112..113 ")"
        - WHITESPACE@113..114 "\n"
        - L_CURLY@114..115 "{"
        - WHITESPACE@115..118 "\n  "
        - ROOT_OPERATION_TYPE_DEFINITION@118..130
            - OPERATION_TYPE@118..123
                - query_KW@118..123 "query"
            - COLON@123..124 ":"
            - WHITESPACE@124..125 " "
            - NAMED_TYPE@125..130
                - NAME@125..130
                    - IDENT@125..130 "Query"
        - WHITESPACE@130..133 "\n  "
        - ROOT_OPERATION_TYPE_DEFINITION@133..151
            - OPERATION_TYPE@133..141
                - mutation_KW@133..141 "mutation"
            - COLON@141..142 ":"
            - WHITESPACE@142..143 " "
            - NAMED_TYPE@143..151
                - NAME@143..151
                    - IDENT@143..151 "Mutation"
        - WHITESPACE@151..152 "\n"
        - R_CURLY@152..153 "}"
    - WHITESPACE@153..155 "\n\n"
    - DIRECTIVE_DEFINITION@155..209
        - directive_KW@155..164 "directive"
        - WHITESPACE@164..165 " "
        - AT@165..166 "@"
        - NAME@166..170
            - IDENT@166..170 "core"
        - ARGUMENTS_DEFINITION@170..188
            - L_PAREN@170..171 "("
            - INPUT_VALUE_DEFINITION@171..187
                - NAME@171..178
                    - IDENT@171..178 "feature"
                - COLON@178..179 ":"
                - WHITESPACE@179..180 " "
                - NON_NULL_TYPE@180..187
                    - NAMED_TYPE@180..186
                        - NAME@180..186
                            - IDENT@180..186 "String"
                    - BANG@186..187 "!"
            - R_PAREN@187..188 ")"
        - WHITESPACE@188..189 " "
        - repeatable_KW@189..199 "repeatable"
        - WHITESPACE@199..200 " "
        - on_KW@200..202 "on"
        - WHITESPACE@202..203 " "
        - DIRECTIVE_LOCATIONS@203..209
            - DIRECTIVE_LOCATION@203..209
                - SCHEMA_KW@203..209 "SCHEMA"
    - WHITESPACE@209..210 "\n"
    - DIRECTIVE_DEFINITION@210..324
        - directive_KW@210..219 "directive"
        - WHITESPACE@219..220 " "
        - AT@220..221 "@"
        - NAME@221..232
            - IDENT@221..232 "join__field"
        - ARGUMENTS_DEFINITION@232..304
            - L_PAREN@232..233 "("
            - INPUT_VALUE_DEFINITION@233..251
                - NAME@233..238
                    - IDENT@233..238 "graph"
                - COLON@238..239 ":"
                - WHITESPACE@239..240 " "
                - NAMED_TYPE@240..251
                    - NAME@240..251
                        - IDENT@240..251 "join__Graph"
            - COMMA@251..252 ","
            - WHITESPACE@252..253 " "
            - INPUT_VALUE_DEFINITION@253..277
                - NAME@253..261
                    - IDENT@253..261 "requires"
                - COLON@261..262 ":"
                - WHITESPACE@262..263 " "
                - NAMED_TYPE@263..277
                    - NAME@263..277
                        - IDENT@263..277 "join__FieldSet"
            - COMMA@277..278 ","
            - WHITESPACE@278..279 " "
            - INPUT_VALUE_DEFINITION@279..303
                - NAME@279..287
                    - IDENT@279..287 "provides"
                - COLON@287..288 ":"
                - WHITESPACE@288..289 " "
                - NAMED_TYPE@289..303
                    - NAME@289..303
                        - IDENT@289..303 "join__FieldSet"
            - R_PAREN@303..304 ")"
        - WHITESPACE@304..305 " "
        - on_KW@305..307 "on"
        - WHITESPACE@307..308 " "
        - DIRECTIVE_LOCATIONS@308..324
            - DIRECTIVE_LOCATION@308..324
                - FIELD_DEFINITION_KW@308..324 "FIELD_DEFINITION"
    - WHITESPACE@324..325 "\n"
    - DIRECTIVE_DEFINITION@325..421
        - directive_KW@325..334 "directive"
        - WHITESPACE@334..335 " "
        - AT@335..336 "@"
        - NAME@336..346
            - IDENT@336..346 "join__type"
        - ARGUMENTS_DEFINITION@346..388
            - L_PAREN@346..347 "("
            - INPUT_VALUE_DEFINITION@347..366
                - NAME@347..352
                    - IDENT@347..352 "graph"
                - COLON@352..353 ":"
                - WHITESPACE@353..354 " "
                - NON_NULL_TYPE@354..366
                    - NAMED_TYPE@354..365
                        - NAME@354..365
                            - IDENT@354..365 "join__Graph"
                    - BANG@365..366 "!"
            - COMMA@366..367 ","
            - WHITESPACE@367..368 " "
            - INPUT_VALUE_DEFINITION@368..387
                - NAME@368..371
                    - IDENT@368..371 "key"
                - COLON@371..372 ":"
                - WHITESPACE@372..373 " "
                - NAMED_TYPE@373..387
                    - NAME@373..387
                        - IDENT@373..387 "join__FieldSet"
            - R_PAREN@387..388 ")"
        - WHITESPACE@388..389 " "
        - repeatable_KW@389..399 "repeatable"
        - WHITESPACE@399..400 " "
        - on_KW@400..402 "on"
        - WHITESPACE@402..403 " "
        - DIRECTIVE_LOCATIONS@403..421
            - DIRECTIVE_LOCATION@403..409
                - OBJECT_KW@403..409 "OBJECT"
            - WHITESPACE@409..410 " "
            - PIPE@410..411 "|"
            - WHITESPACE@411..412 " "
            - DIRECTIVE_LOCATION@412..421
                - INTERFACE_KW@412..421 "INTERFACE"
    - WHITESPACE@421..422 "\n"
    - DIRECTIVE_DEFINITION@422..487
        - directive_KW@422..431 "directive"
        - WHITESPACE@431..432 " "
        - AT@432..433 "@"
        - NAME@433..444
            - IDENT@433..444 "join__owner"
        - ARGUMENTS_DEFINITION@444..465
            - L_PAREN@444..445 "("
            - INPUT_VALUE_DEFINITION@445..464
                - NAME@445..450
                    - IDENT@445..450 "graph"
                - COLON@450..451 ":"
                - WHITESPACE@451..452 " "
                - NON_NULL_TYPE@452..464
                    - NAMED_TYPE@452..463
                        - NAME@452..463
                            - IDENT@452..463 "join__Graph"
                    - BANG@463..464 "!"
            - R_PAREN@464..465 ")"
        - WHITESPACE@465..466 " "
        - on_KW@466..468 "on"
        - WHITESPACE@468..469 " "
        - DIRECTIVE_LOCATIONS@469..487
            - DIRECTIVE_LOCATION@469..475
                - OBJECT_KW@469..475 "OBJECT"
            - WHITESPACE@475..476 " "
            - PIPE@476..477 "|"
            - WHITESPACE@477..478 " "
            - DIRECTIVE_LOCATION@478..487
                - INTERFACE_KW@478..487 "INTERFACE"
    - WHITESPACE@487..488 "\n"
    - DIRECTIVE_DEFINITION@488..553
        - directive_KW@488..497 "directive"
        - WHITESPACE@497..498 " "
        - AT@498..499 "@"
        - NAME@499..510
            - IDENT@499..510 "join__graph"
        - ARGUMENTS_DEFINITION@510..539
            - L_PAREN@510..511 "("
            - INPUT_VALUE_DEFINITION@511..524
                - NAME@511..515
                    - IDENT@511..515 "name"
                - COLON@515..516 ":"
                - WHITESPACE@516..517 " "
                - NON_NULL_TYPE@517..524
                    - NAMED_TYPE@517..523
                        - NAME@517..523
                            - IDENT@517..523 "String"
                    - BANG@523..524 "!"
            - COMMA@524..525 ","
            - WHITESPACE@525..526 " "
            - INPUT_VALUE_DEFINITION@526..538
                - NAME@526..529
                    - IDENT@526..529 "url"
                - COLON@529..530 ":"
                - WHITESPACE@530..531 " "
                - NON_NULL_TYPE@531..538
                    - NAMED_TYPE@531..537
                        - NAME@531..537
                            - IDENT@531..537 "String"
                    - BANG@537..538 "!"
            - R_PAREN@538..539 ")"
        - WHITESPACE@539..540 " "
        - on_KW@540..542 "on"
        - WHITESPACE@542..543 " "
        - DIRECTIVE_LOCATIONS@543..553
            - DIRECTIVE_LOCATION@543..553
                - ENUM_VALUE_KW@543..553 "ENUM_VALUE"
    - WHITESPACE@553..554 "\n"
    - DIRECTIVE_DEFINITION@554..580
        - directive_KW@554..563 "directive"
        - WHITESPACE@563..564 " "
        - AT@564..565 "@"
        - NAME@565..571
            - IDENT@565..571 "stream"
        - WHITESPACE@571..572 " "
        - on_KW@572..574 "on"
        - WHITESPACE@574..575 " "
        - DIRECTIVE_LOCATIONS@575..580
            - DIRECTIVE_LOCATION@575..580
                - FIELD_KW@575..580 "FIELD"
    - WHITESPACE@580..581 "\n"
    - DIRECTIVE_DEFINITION@581..625
        - directive_KW@581..590 "directive"
        - WHITESPACE@590..591 " "
        - AT@591..592 "@"
        - NAME@592..601
            - IDENT@592..601 "transform"
        - ARGUMENTS_DEFINITION@601..616
            - L_PAREN@601..602 "("
            - INPUT_VALUE_DEFINITION@602..615
                - NAME@602..606
                    - IDENT@602..606 "from"
                - COLON@606..607 ":"
                - WHITESPACE@607..608 " "
                - NON_NULL_TYPE@608..615
                    - NAMED_TYPE@608..614
                        - NAME@608..614
                            - IDENT@608..614 "String"
                    - BANG@614..615 "!"
            - R_PAREN@615..616 ")"
        - WHITESPACE@616..617 " "
        - on_KW@617..619 "on"
        - WHITESPACE@619..620 " "
        - DIRECTIVE_LOCATIONS@620..625
            - DIRECTIVE_LOCATION@620..625
                - FIELD_KW@620..625 "FIELD"
    - WHITESPACE@625..627 "\n\n"
    - UNION_TYPE_DEFINITION@627..675
        - union_KW@627..632 "union"
        - WHITESPACE@632..633 " "
        - NAME@633..644
            - IDENT@633..644 "AccountType"
        - WHITESPACE@644..645 " "
        - UNION_MEMBER_TYPES@645..675
            - EQ@645..646 "="
            - WHITESPACE@646..647 " "
            - NAMED_TYPE@647..662
                - NAME@647..662
                    - IDENT@647..662 "PasswordAccount"
            - WHITESPACE@662..663 " "
            - PIPE@663..664 "|"
            - WHITESPACE@664..665 " "
            - NAMED_TYPE@665..675
                - NAME@665..675
                    - IDENT@665..675 "SMSAccount"
    - WHITESPACE@675..677 "\n\n"
    - OBJECT_TYPE_DEFINITION@677..711
        - type_KW@677..681 "type"
        - WHITESPACE@681..682 " "
        - NAME@682..688
            - IDENT@682..688 "Amazon"
        - WHITESPACE@688..689 " "
        - FIELDS_DEFINITION@689..711
            - L_CURLY@689..690 "{"
            - WHITESPACE@690..693 "\n  "
            - FIELD_DEFINITION@693..709
                - NAME@693..701
                    - IDENT@693..701 "referrer"
                - COLON@701..702 ":"
                - WHITESPACE@702..703 " "
                - NAMED_TYPE@703..709
                    - NAME@703..709
                        - IDENT@703..709 "String"
            - WHITESPACE@709..710 "\n"
            - R_CURLY@710..711 "}"
    - WHITESPACE@711..713 "\n\n"
    - UNION_TYPE_DEFINITION@713..738
        - union_KW@713..718 "union"
        - WHITESPACE@718..719 " "
        - NAME@719..723
            - IDENT@719..723 "Body"
        - WHITESPACE@723..724 " "
        - UNION_MEMBER_TYPES@724..738
            - EQ@724..725 "="
            - WHITESPACE@725..726 " "
            - NAMED_TYPE@726..731
                - NAME@726..731
                    - IDENT@726..731 "Image"
            - WHITESPACE@731..732 " "
            - PIPE@732..733 "|"
            - WHITESPACE@733..734 " "
            - NAMED_TYPE@734..738
                - NAME@734..738
                    - IDENT@734..738 "Text"
    - WHITESPACE@738..740 "\n\n"
    - OBJECT_TYPE_DEFINITION@740..1725
        - type_KW@740..744 "type"
        - WHITESPACE@744..745 " "
        - NAME@745..749
            - IDENT@745..749 "Book"
        - WHITESPACE@749..750 " "
        - IMPLEMENTS_INTERFACES@750..768
            - implements_KW@750..760 "implements"
            - WHITESPACE@760..761 " "
            - NAMED_TYPE@761..768
                - NAME@761..768
                    - IDENT@761..768 "Product"
        - WHITESPACE@768..769 "\n"
        - DIRECTIVES@769..959
            - DIRECTIVE@769..795
                - AT@769..770 "@"
                - NAME@770..781
                    - IDENT@770..781 "join__owner"
                - ARGUMENTS@781..795
                    - L_PAREN@781..782 "("
                    - ARGUMENT@782..794
                        - NAME@782..787
                            - IDENT@782..787 "graph"
                        - COLON@787..788 ":"
                        - WHITESPACE@788..789 " "
                        - ENUM_VALUE@789..794
                            - NAME@789..794
                                - IDENT@789..794 "BOOKS"
                    - R_PAREN@794..795 ")"
            - WHITESPACE@795..796 "\n"
            - DIRECTIVE@796..834
                - AT@796..797 "@"
                - NAME@797..807
                    - IDENT@797..807 "join__type"
                - ARGUMENTS@807..834
                    - L_PAREN@807..808 "("
                    - ARGUMENT@808..820
                        - NAME@808..813
                            - IDENT@808..813 "graph"
                        - COLON@813..814 ":"
                        - WHITESPACE@814..815 " "
                        - ENUM_VALUE@815..820
                            - NAME@815..820
                                - IDENT@815..820 "BOOKS"
                    - COMMA@820..821 ","
                    - WHITESPACE@821..822 " "
                    - ARGUMENT@822..833
                        - NAME@822..825
                            - IDENT@822..825 "key"
                        - COLON@825..826 ":"
                        - WHITESPACE@826..827 " "
                        - STRING_VALUE@827..833
                            - STRING@827..833 "\"isbn\""
                    - R_PAREN@833..834 ")"
            - WHITESPACE@834..835 "\n"
            - DIRECTIVE@835..877
                - AT@835..836 "@"
                - NAME@836..846
                    - IDENT@836..846 "join__type"
                - ARGUMENTS@846..877
                    - L_PAREN@846..847 "("
                    - ARGUMENT@847..863
                        - NAME@847..852
                            - IDENT@847..852 "graph"
                        - COLON@852..853 ":"
                        - WHITESPACE@853..854 " "
                        - ENUM_VALUE@854..863
                            - NAME@854..863
                                - IDENT@854..863 "INVENTORY"
                    - COMMA@863..864 ","
                    - WHITESPACE@864..865 " "
                    - ARGUMENT@865..876
                        - NAME@865..868
                            - IDENT@865..868 "key"
                        - COLON@868..869 ":"
                        - WHITESPACE@869..870 " "
                        - STRING_VALUE@870..876
                            - STRING@870..876 "\"isbn\""
                    - R_PAREN@876..877 ")"
            - WHITESPACE@877..878 "\n"
            - DIRECTIVE@878..918
                - AT@878..879 "@"
                - NAME@879..889
                    - IDENT@879..889 "join__type"
                - ARGUMENTS@889..918
                    - L_PAREN@889..890 "("
                    - ARGUMENT@890..904
                        - NAME@890..895
                            - IDENT@890..895 "graph"
                        - COLON@895..896 ":"
                        - WHITESPACE@896..897 " "
                        - ENUM_VALUE@897..904
                            - NAME@897..904
                                - IDENT@897..904 "PRODUCT"
                    - COMMA@904..905 ","
                    - WHITESPACE@905..906 " "
                    - ARGUMENT@906..917
                        - NAME@906..909
                            - IDENT@906..909 "key"
                        - COLON@909..910 ":"
                        - WHITESPACE@910..911 " "
                        - STRING_VALUE@911..917
                            - STRING@911..917 "\"isbn\""
                    - R_PAREN@917..918 ")"
            - WHITESPACE@918..919 "\n"
            - DIRECTIVE@919..959
                - AT@919..920 "@"
                - NAME@920..930
                    - IDENT@920..930 "join__type"
                - ARGUMENTS@930..959
                    - L_PAREN@930..931 "("
                    - ARGUMENT@931..945
                        - NAME@931..936
                            - IDENT@931..936 "graph"
                        - COLON@936..937 ":"
                        - WHITESPACE@937..938 " "
                        - ENUM_VALUE@938..945
                            - NAME@938..945
                                - IDENT@938..945 "REVIEWS"
                    - COMMA@945..946 ","
                    - WHITESPACE@946..947 " "
                    - ARGUMENT@947..958
                        - NAME@947..950
                            - IDENT@947..950 "key"
                        - COLON@950..951 ":"
                        - WHITESPACE@951..952 " "
                        - STRING_VALUE@952..958
                            - STRING@952..958 "\"isbn\""
                    - R_PAREN@958..959 ")"
        - WHITESPACE@959..960 "\n"
        - FIELDS_DEFINITION@960..1725
            - L_CURLY@960..961 "{"
            - WHITESPACE@961..964 "\n  "
            - FIELD_DEFINITION@964..1004
                - NAME@964..968
                    - IDENT@964..968 "isbn"
                - COLON@968..969 ":"
                - WHITESPACE@969..970 " "
                - NON_NULL_TYPE@970..977
                    - NAMED_TYPE@970..976
                        - NAME@970..976
                            - IDENT@970..976 "String"
                    - BANG@976..977 "!"
                - WHITESPACE@977..978 " "
                - DIRECTIVES@978..1004
                    - DIRECTIVE@978..1004
                        - AT@978..979 "@"
                        - NAME@979..990
                            - IDENT@979..990 "join__field"
                        - ARGUMENTS@990..1004
                            - L_PAREN@990..991 "("
                            - ARGUMENT@991..1003
                                - NAME@991..996
                                    - IDENT@991..996 "graph"
                                - COLON@996..997 ":"
                                - WHITESPACE@997..998 " "
                                - ENUM_VALUE@998..1003
                                    - NAME@998..1003
                                        - IDENT@998..1003 "BOOKS"
                            - R_PAREN@1003..1004 ")"
            - WHITESPACE@1004..1007 "\n  "
            - FIELD_DEFINITION@1007..1047
                - NAME@1007..1012
                    - IDENT@1007..1012 "title"
                - COLON@1012..1013 ":"
                - WHITESPACE@1013..1014 " "
                - NAMED_TYPE@1014..1020
                    - NAME@1014..1020
                        - IDENT@1014..1020 "String"
                - WHITESPACE@1020..1021 " "
                - DIRECTIVES@1021..1047
                    - DIRECTIVE@1021..1047
                        - AT@1021..1022 "@"
                        - NAME@1022..1033
                            - IDENT@1022..1033 "join__field"
                        - ARGUMENTS@1033..1047
                            - L_PAREN@1033..1034 "("
                            - ARGUMENT@1034..1046
                                - NAME@1034..1039
                                    - IDENT@1034..1039 "graph"
                                - COLON@1039..1040 ":"
                                - WHITESPACE@1040..1041 " "
                                - ENUM_VALUE@1041..1046
                                    - NAME@1041..1046
                                        - IDENT@1041..1046 "BOOKS"
                            - R_PAREN@1046..1047 ")"
            - WHITESPACE@1047..1050 "\n  "
            - FIELD_DEFINITION@1050..1086
                - NAME@1050..1054
                    - IDENT@1050..1054 "year"
                - COLON@1054..1055 ":"
                - WHITESPACE@1055..1056 " "
                - NAMED_TYPE@1056..1059
                    - NAME@1056..1059
                        - IDENT@1056..1059 "Int"
                - WHITESPACE@1059..1060 " "
                - DIRECTIVES@1060..1086
                    - DIRECTIVE@1060..1086
                        - AT@1060..1061 "@"
                        - NAME@1061..1072
                            - IDENT@1061..1072 "join__field"
                        - ARGUMENTS@1072..1086
                            - L_PAREN@1072..1073 "("
                            - ARGUMENT@1073..1085
                                - NAME@1073..1078
                                    - IDENT@1073..1078 "graph"
                                - COLON@1078..1079 ":"
                                - WHITESPACE@1079..1080 " "
                                - ENUM_VALUE@1080..1085
                                    - NAME@1080..1085
                                        - IDENT@1080..1085 "BOOKS"
                            - R_PAREN@1085..1086 ")"
            - WHITESPACE@1086..1089 "\n  "
            - FIELD_DEFINITION@1089..1137
                - NAME@1089..1101
                    - IDENT@1089..1101 "similarBooks"
                - COLON@1101..1102 ":"
                - WHITESPACE@1102..1103 " "
                - NON_NULL_TYPE@1103..1110
                    - LIST_TYPE@1103..1109
                        - L_BRACK@1103..1104 "["
                        - NAMED_TYPE@1104..1108
                            - NAME@1104..1108
                                - IDENT@1104..1108 "Book"
                        - R_BRACK@1108..1109 "]"
                    - BANG@1109..1110 "!"
                - WHITESPACE@1110..1111 " "
                - DIRECTIVES@1111..1137
                    - DIRECTIVE@1111..1137
                        - AT@1111..1112 "@"
                        - NAME@1112..1123
                            - IDENT@1112..1123 "join__field"
                        - ARGUMENTS@1123..1137
                            - L_PAREN@1123..1124 "("
                            - ARGUMENT@1124..1136
                                - NAME@1124..1129
                                    - IDENT@1124..1129 "graph"
                                - COLON@1129..1130 ":"
                                - WHITESPACE@1130..1131 " "
                                - ENUM_VALUE@1131..1136
                                    - NAME@1131..1136
                                        - IDENT@1131..1136 "BOOKS"
                            - R_PAREN@1136..1137 ")"
            - WHITESPACE@1137..1140 "\n  "
            - FIELD_DEFINITION@1140..1194
                - NAME@1140..1148
                    - IDENT@1140..1148 "metadata"
                - COLON@1148..1149 ":"
                - WHITESPACE@1149..1150 " "
                - LIST_TYPE@1150..1167
                    - L_BRACK@1150..1151 "["
                    - NAMED_TYPE@1151..1166
                        - NAME@1151..1166
                            - IDENT@1151..1166 "MetadataOrError"
                    - R_BRACK@1166..1167 "]"
                - WHITESPACE@1167..1168 " "
                - DIRECTIVES@1168..1194
                    - DIRECTIVE@1168..1194
                        - AT@1168..1169 "@"
                        - NAME@1169..1180
                            - IDENT@1169..1180 "join__field"
                        - ARGUMENTS@1180..1194
                            - L_PAREN@1180..1181 "("
                            - ARGUMENT@1181..1193
                                - NAME@1181..1186
                                    - IDENT@1181..1186 "graph"
                                - COLON@1186..1187 ":"
                                - WHITESPACE@1187..1188 " "
                                - ENUM_VALUE@1188..1193
                                    - NAME@1188..1193
                                        - IDENT@1188..1193 "BOOKS"
                            - R_PAREN@1193..1194 ")"
            - WHITESPACE@1194..1197 "\n  "
            - FIELD_DEFINITION@1197..1244
                - NAME@1197..1204
                    - IDENT@1197..1204 "inStock"
                - COLON@1204..1205 ":"
                - WHITESPACE@1205..1206 " "
                - NAMED_TYPE@1206..1213
                    - NAME@1206..1213
                        - IDENT@1206..1213 "Boolean"
                - WHITESPACE@1213..1214 " "
                - DIRECTIVES@1214..1244
                    - DIRECTIVE@1214..1244
                        - AT@1214..1215 "@"
                        - NAME@1215..1226
                            - IDENT@1215..1226 "join__field"
                        - ARGUMENTS@1226..1244
                            - L_PAREN@1226..1227 "("
                            - ARGUMENT@1227..1243
                                - NAME@1227..1232
                                    - IDENT@1227..1232 "graph"
                                - COLON@1232..1233 ":"
                                - WHITESPACE@1233..1234 " "
                                - ENUM_VALUE@1234..1243
                                    - NAME@1234..1243
                                        - IDENT@1234..1243 "INVENTORY"
                            - R_PAREN@1243..1244 ")"
            - WHITESPACE@1244..1247 "\n  "
            - FIELD_DEFINITION@1247..1299
                - NAME@1247..1259
                    - IDENT@1247..1259 "isCheckedOut"
                - COLON@1259..1260 ":"
                - WHITESPACE@1260..1261 " "
                - NAMED_TYPE@1261..1268
                    - NAME@1261..1268
                        - IDENT@1261..1268 "Boolean"
                - WHITESPACE@1268..1269 " "
                - DIRECTIVES@1269..1299
                    - DIRECTIVE@1269..1299
                        - AT@1269..1270 "@"
                        - NAME@1270..1281
                            - IDENT@1270..1281 "join__field"
                        - ARGUMENTS@1281..1299
                            - L_PAREN@1281..1282 "("
                            - ARGUMENT@1282..1298
                                - NAME@1282..1287
                                    - IDENT@1282..1287 "graph"
                                - COLON@1287..1288 ":"
                                - WHITESPACE@1288..1289 " "
                                - ENUM_VALUE@1289..1298
                                    - NAME@1289..1298
                                        - IDENT@1289..1298 "INVENTORY"
                            - R_PAREN@1298..1299 ")"
            - WHITESPACE@1299..1302 "\n  "
            - FIELD_DEFINITION@1302..1343
                - NAME@1302..1305
                    - IDENT@1302..1305 "upc"
                - COLON@1305..1306 ":"
                - WHITESPACE@1306..1307 " "
                - NON_NULL_TYPE@1307..1314
                    - NAMED_TYPE@1307..1313
                        - NAME@1307..1313
                            - IDENT@1307..1313 "String"
                    - BANG@1313..1314 "!"
                - WHITESPACE@1314..1315 " "
                - DIRECTIVES@1315..1343
                    - DIRECTIVE@1315..1343
                        - AT@1315..1316 "@"
                        - NAME@1316..1327
                            - IDENT@1316..1327 "join__field"
                        - ARGUMENTS@1327..1343
                            - L_PAREN@1327..1328 "("
                            - ARGUMENT@1328..1342
                                - NAME@1328..1333
                                    - IDENT@1328..1333 "graph"
                                - COLON@1333..1334 ":"
                                - WHITESPACE@1334..1335 " "
                                - ENUM_VALUE@1335..1342
                                    - NAME@1335..1342
                                        - IDENT@1335..1342 "PRODUCT"
                            - R_PAREN@1342..1343 ")"
            - WHITESPACE@1343..1346 "\n  "
            - FIELD_DEFINITION@1346..1387
                - NAME@1346..1349
                    - IDENT@1346..1349 "sku"
                - COLON@1349..1350 ":"
                - WHITESPACE@1350..1351 " "
                - NON_NULL_TYPE@1351..1358
                    - NAMED_TYPE@1351..1357
                        - NAME@1351..1357
                            - IDENT@1351..1357 "String"
                    - BANG@1357..1358 "!"
                - WHITESPACE@1358..1359 " "
                - DIRECTIVES@1359..1387
                    - DIRECTIVE@1359..1387
                        - AT@1359..1360 "@"
                        - NAME@1360..1371
                            - IDENT@1360..1371 "join__field"
                        - ARGUMENTS@1371..1387
                            - L_PAREN@1371..1372 "("
                            - ARGUMENT@1372..1386
                                - NAME@1372..1377
                                    - IDENT@1372..1377 "graph"
                                - COLON@1377..1378 ":"
                                - WHITESPACE@1378..1379 " "
                                - ENUM_VALUE@1379..1386
                                    - NAME@1379..1386
                                        - IDENT@1379..1386 "PRODUCT"
                            - R_PAREN@1386..1387 ")"
            - WHITESPACE@1387..1390 "\n  "
            - FIELD_DEFINITION@1390..1480
                - NAME@1390..1394
                    - IDENT@1390..1394 "name"
                - ARGUMENTS_DEFINITION@1394..1419
                    - L_PAREN@1394..1395 "("
                    - INPUT_VALUE_DEFINITION@1395..1418
                        - NAME@1395..1404
                            - IDENT@1395..1404 "delimeter"
                        - COLON@1404..1405 ":"
                        - WHITESPACE@1405..1406 " "
                        - NAMED_TYPE@1406..1412
                            - NAME@1406..1412
                                - IDENT@1406..1412 "String"
                        - WHITESPACE@1412..1413 " "
                        - DEFAULT_VALUE@1413..1418
                            - EQ@1413..1414 "="
                            - WHITESPACE@1414..1415 " "
                            - STRING_VALUE@1415..1418
                                - STRING@1415..1418 "\" \""
                    - R_PAREN@1418..1419 ")"
                - COLON@1419..1420 ":"
                - WHITESPACE@1420..1421 " "
                - NAMED_TYPE@1421..1427
                    - NAME@1421..1427
                        - IDENT@1421..1427 "String"
                - WHITESPACE@1427..1428 " "
                - DIRECTIVES@1428..1480
                    - DIRECTIVE@1428..1480
                        - AT@1428..1429 "@"
                        - NAME@1429..1440
                            - IDENT@1429..1440 "join__field"
                        - ARGUMENTS@1440..1480
                            - L_PAREN@1440..1441 "("
                            - ARGUMENT@1441..1455
                                - NAME@1441..1446
                                    - IDENT@1441..1446 "graph"
                                - COLON@1446..1447 ":"
                                - WHITESPACE@1447..1448 " "
                                - ENUM_VALUE@1448..1455
                                    - NAME@1448..1455
                                        - IDENT@1448..1455 "PRODUCT"
                            - COMMA@1455..1456 ","
                            - WHITESPACE@1456..1457 " "
                            - ARGUMENT@1457..1479
                                - NAME@1457..1465
                                    - IDENT@1457..1465 "requires"
                                - COLON@1465..1466 ":"
                                - WHITESPACE@1466..1467 " "
                                - STRING_VALUE@1467..1479
                                    - STRING@1467..1479 "\"title year\""
                            - R_PAREN@1479..1480 ")"
            - WHITESPACE@1480..1483 "\n  "
            - FIELD_DEFINITION@1483..1525
                - NAME@1483..1488
                    - IDENT@1483..1488 "price"
                - COLON@1488..1489 ":"
                - WHITESPACE@1489..1490 " "
                - NAMED_TYPE@1490..1496
                    - NAME@1490..1496
                        - IDENT@1490..1496 "String"
                - WHITESPACE@1496..1497 " "
                - DIRECTIVES@1497..1525
                    - DIRECTIVE@1497..1525
                        - AT@1497..1498 "@"
                        - NAME@1498..1509
                            - IDENT@1498..1509 "join__field"
                        - ARGUMENTS@1509..1525
                            - L_PAREN@1509..1510 "("
                            - ARGUMENT@1510..1524
                                - NAME@1510..1515
                                    - IDENT@1510..1515 "graph"
                                - COLON@1515..1516 ":"
                                - WHITESPACE@1516..1517 " "
                                - ENUM_VALUE@1517..1524
                                    - NAME@1517..1524
                                        - IDENT@1517..1524 "PRODUCT"
                            - R_PAREN@1524..1525 ")"
            - WHITESPACE@1525..1528 "\n  "
            - FIELD_DEFINITION@1528..1584
                - NAME@1528..1535
                    - IDENT@1528..1535 "details"
                - COLON@1535..1536 ":"
                - WHITESPACE@1536..1537 " "
                - NAMED_TYPE@1537..1555
                    - NAME@1537..1555
                        - IDENT@1537..1555 "ProductDetailsBook"
                - WHITESPACE@1555..1556 " "
                - DIRECTIVES@1556..1584
                    - DIRECTIVE@1556..1584
                        - AT@1556..1557 "@"
                        - NAME@1557..1568
                            - IDENT@1557..1568 "join__field"
                        - ARGUMENTS@1568..1584
                            - L_PAREN@1568..1569 "("
                            - ARGUMENT@1569..1583
                                - NAME@1569..1574
                                    - IDENT@1569..1574 "graph"
                                - COLON@1574..1575 ":"
                                - WHITESPACE@1575..1576 " "
                                - ENUM_VALUE@1576..1583
                                    - NAME@1576..1583
                                        - IDENT@1576..1583 "PRODUCT"
                            - R_PAREN@1583..1584 ")"
            - WHITESPACE@1584..1587 "\n  "
            - FIELD_DEFINITION@1587..1633
                - NAME@1587..1594
                    - IDENT@1587..1594 "reviews"
                - COLON@1594..1595 ":"
                - WHITESPACE@1595..1596 " "
                - LIST_TYPE@1596..1604
                    - L_BRACK@1596..1597 "["
                    - NAMED_TYPE@1597..1603
                        - NAME@1597..1603
                            - IDENT@1597..1603 "Review"
                    - R_BRACK@1603..1604 "]"
                - WHITESPACE@1604..1605 " "
                - DIRECTIVES@1605..1633
                    - DIRECTIVE@1605..1633
                        - AT@1605..1606 "@"
                        - NAME@1606..1617
                            - IDENT@1606..1617 "join__field"
                        - ARGUMENTS@1617..1633
                            - L_PAREN@1617..1618 "("
                            - ARGUMENT@1618..1632
                                - NAME@1618..1623
                                    - IDENT@1618..1623 "graph"
                                - COLON@1623..1624 ":"
                                - WHITESPACE@1624..1625 " "
                                - ENUM_VALUE@1625..1632
                                    - NAME@1625..1632
                                        - IDENT@1625..1632 "REVIEWS"
                            - R_PAREN@1632..1633 ")"
            - WHITESPACE@1633..1636 "\n  "
            - FIELD_DEFINITION@1636..1723
                - NAME@1636..1650
                    - IDENT@1636..1650 "relatedReviews"
                - COLON@1650..1651 ":"
                - WHITESPACE@1651..1652 " "
                - NON_NULL_TYPE@1652..1662
                    - LIST_TYPE@1652..1661
                        - L_BRACK@1652..1653 "["
                        - NON_NULL_TYPE@1653..1660
                            - NAMED_TYPE@1653..1659
                                - NAME@1653..1659
                                    - IDENT@1653..1659 "Review"
                            - BANG@1659..1660 "!"
                        - R_BRACK@1660..1661 "]"
                    - BANG@1661..1662 "!"
                - WHITESPACE@1662..1663 " "
                - DIRECTIVES@1663..1723
                    - DIRECTIVE@1663..1723
                        - AT@1663..1664 "@"
                        - NAME@1664..1675
                            - IDENT@1664..1675 "join__field"
                        - ARGUMENTS@1675..1723
                            - L_PAREN@1675..1676 "("
                            - ARGUMENT@1676..1690
                                - NAME@1676..1681
                                    - IDENT@1676..1681 "graph"
                                - COLON@1681..1682 ":"
                                - WHITESPACE@1682..1683 " "
                                - ENUM_VALUE@1683..1690
                                    - NAME@1683..1690
                                        - IDENT@1683..1690 "REVIEWS"
                            - COMMA@1690..1691 ","
                            - WHITESPACE@1691..1692 " "
                            - ARGUMENT@1692..1722
                                - NAME@1692..1700
                                    - IDENT@1692..1700 "requires"
                                - COLON@1700..1701 ":"
                                - WHITESPACE@1701..1702 " "
                                - STRING_VALUE@1702..1722
                                    - STRING@1702..1722 "\"similarBooks{isbn}\""
                            - R_PAREN@1722..1723 ")"
            - WHITESPACE@1723..1724 "\n"
            - R_CURLY@1724..1725 "}"
    - WHITESPACE@1725..1727 "\n\n"
    - UNION_TYPE_DEFINITION@1727..1754
        - union_KW@1727..1732 "union"
        - WHITESPACE@1732..1733 " "
        - NAME@1733..1738
            - IDENT@1733..1738 "Brand"
        - WHITESPACE@1738..1739 " "
        - UNION_MEMBER_TYPES@1739..1754
            - EQ@1739..1740 "="
            - WHITESPACE@1740..1741 " "
            - NAMED_TYPE@1741..1745
                - NAME@1741..1745
                    - IDENT@1741..1745 "Ikea"
            - WHITESPACE@1745..1746 " "
            - PIPE@1746..1747 "|"
            - WHITESPACE@1747..1748 " "
            - NAMED_TYPE@1748..1754
                - NAME@1748..1754
                    - IDENT@1748..1754 "Amazon"
    - WHITESPACE@1754..1756 "\n\n"
    - OBJECT_TYPE_DEFINITION@1756..2103
        - type_KW@1756..1760 "type"
        - WHITESPACE@1760..1761 " "
        - NAME@1761..1764
            - IDENT@1761..1764 "Car"
        - WHITESPACE@1764..1765 " "
        - IMPLEMENTS_INTERFACES@1765..1783
            - implements_KW@1765..1775 "implements"
            - WHITESPACE@1775..1776 " "
            - NAMED_TYPE@1776..1783
                - NAME@1776..1783
                    - IDENT@1776..1783 "Vehicle"
        - WHITESPACE@1783..1784 "\n"
        - DIRECTIVES@1784..1890
            - DIRECTIVE@1784..1812
                - AT@1784..1785 "@"
                - NAME@1785..1796
                    - IDENT@1785..1796 "join__owner"
                - ARGUMENTS@1796..1812
                    - L_PAREN@1796..1797 "("
                    - ARGUMENT@1797..1811
                        - NAME@1797..1802
                            - IDENT@1797..1802 "graph"
                        - COLON@1802..1803 ":"
                        - WHITESPACE@1803..1804 " "
                        - ENUM_VALUE@1804..1811
                            - NAME@1804..1811
                                - IDENT@1804..1811 "PRODUCT"
                    - R_PAREN@1811..1812 ")"
            - WHITESPACE@1812..1813 "\n"
            - DIRECTIVE@1813..1851
                - AT@1813..1814 "@"
                - NAME@1814..1824
                    - IDENT@1814..1824 "join__type"
                - ARGUMENTS@1824..1851
                    - L_PAREN@1824..1825 "("
                    - ARGUMENT@1825..1839
                        - NAME@1825..1830
                            - IDENT@1825..1830 "graph"
                        - COLON@1830..1831 ":"
                        - WHITESPACE@1831..1832 " "
                        - ENUM_VALUE@1832..1839
                            - NAME@1832..1839
                                - IDENT@1832..1839 "PRODUCT"
                    - COMMA@1839..1840 ","
                    - WHITESPACE@1840..1841 " "
                    - ARGUMENT@1841..1850
                        - NAME@1841..1844
                            - IDENT@1841..1844 "key"
                        - COLON@1844..1845 ":"
                        - WHITESPACE@1845..1846 " "
                        - STRING_VALUE@1846..1850
                            - STRING@1846..1850 "\"id\""
                    - R_PAREN@1850..1851 ")"
            - WHITESPACE@1851..1852 "\n"
            - DIRECTIVE@1852..1890
                - AT@1852..1853 "@"
                - NAME@1853..1863
                    - IDENT@1853..1863 "join__type"
                - ARGUMENTS@1863..1890
                    - L_PAREN@1863..1864 "("
                    - ARGUMENT@1864..1878
                        - NAME@1864..1869
                            - IDENT@1864..1869 "graph"
                        - COLON@1869..1870 ":"
                        - WHITESPACE@1870..1871 " "
                        - ENUM_VALUE@1871..1878
                            - NAME@1871..1878
                                - IDENT@1871..1878 "REVIEWS"
                    - COMMA@1878..1879 ","
                    - WHITESPACE@1879..1880 " "
                    - ARGUMENT@1880..1889
                        - NAME@1880..1883
                            - IDENT@1880..1883 "key"
                        - COLON@1883..1884 ":"
                        - WHITESPACE@1884..1885 " "
                        - STRING_VALUE@1885..1889
                            - STRING@1885..1889 "\"id\""
                    - R_PAREN@1889..1890 ")"
        - WHITESPACE@1890..1891 "\n"
        - FIELDS_DEFINITION@1891..2103
            - L_CURLY@1891..1892 "{"
            - WHITESPACE@1892..1895 "\n  "
            - FIELD_DEFINITION@1895..1935
                - NAME@1895..1897
                    - IDENT@1895..1897 "id"
                - COLON@1897..1898 ":"
                - WHITESPACE@1898..1899 " "
                - NON_NULL_TYPE@1899..1906
                    - NAMED_TYPE@1899..1905
                        - NAME@1899..1905
                            - IDENT@1899..1905 "String"
                    - BANG@1905..1906 "!"
                - WHITESPACE@1906..1907 " "
                - DIRECTIVES@1907..1935
                    - DIRECTIVE@1907..1935
                        - AT@1907..1908 "@"
                        - NAME@1908..1919
                            - IDENT@1908..1919 "join__field"
                        - ARGUMENTS@1919..1935
                            - L_PAREN@1919..1920 "("
                            - ARGUMENT@1920..1934
                                - NAME@1920..1925
                                    - IDENT@1920..1925 "graph"
                                - COLON@1925..1926 ":"
                                - WHITESPACE@1926..1927 " "
                                - ENUM_VALUE@1927..1934
                                    - NAME@1927..1934
                                        - IDENT@1927..1934 "PRODUCT"
                            - R_PAREN@1934..1935 ")"
            - WHITESPACE@1935..1938 "\n  "
            - FIELD_DEFINITION@1938..1986
                - NAME@1938..1949
                    - IDENT@1938..1949 "description"
                - COLON@1949..1950 ":"
                - WHITESPACE@1950..1951 " "
                - NAMED_TYPE@1951..1957
                    - NAME@1951..1957
                        - IDENT@1951..1957 "String"
                - WHITESPACE@1957..1958 " "
                - DIRECTIVES@1958..1986
                    - DIRECTIVE@1958..1986
                        - AT@1958..1959 "@"
                        - NAME@1959..1970
                            - IDENT@1959..1970 "join__field"
                        - ARGUMENTS@1970..1986
                            - L_PAREN@1970..1971 "("
                            - ARGUMENT@1971..1985
                                - NAME@1971..1976
                                    - IDENT@1971..1976 "graph"
                                - COLON@1976..1977 ":"
                                - WHITESPACE@1977..1978 " "
                                - ENUM_VALUE@1978..1985
                                    - NAME@1978..1985
                                        - IDENT@1978..1985 "PRODUCT"
                            - R_PAREN@1985..1986 ")"
            - WHITESPACE@1986..1989 "\n  "
            - FIELD_DEFINITION@1989..2031
                - NAME@1989..1994
                    - IDENT@1989..1994 "price"
                - COLON@1994..1995 ":"
                - WHITESPACE@1995..1996 " "
                - NAMED_TYPE@1996..2002
                    - NAME@1996..2002
                        - IDENT@1996..2002 "String"
                - WHITESPACE@2002..2003 " "
                - DIRECTIVES@2003..2031
                    - DIRECTIVE@2003..2031
                        - AT@2003..2004 "@"
                        - NAME@2004..2015
                            - IDENT@2004..2015 "join__field"
                        - ARGUMENTS@2015..2031
                            - L_PAREN@2015..2016 "("
                            - ARGUMENT@2016..2030
                                - NAME@2016..2021
                                    - IDENT@2016..2021 "graph"
                                - COLON@2021..2022 ":"
                                - WHITESPACE@2022..2023 " "
                                - ENUM_VALUE@2023..2030
                                    - NAME@2023..2030
                                        - IDENT@2023..2030 "PRODUCT"
                            - R_PAREN@2030..2031 ")"
            - WHITESPACE@2031..2034 "\n  "
            - FIELD_DEFINITION@2034..2101
                - NAME@2034..2045
                    - IDENT@2034..2045 "retailPrice"
                - COLON@2045..2046 ":"
                - WHITESPACE@2046..2047 " "
                - NAMED_TYPE@2047..2053
                    - NAME@2047..2053
                        - IDENT@2047..2053 "String"
                - WHITESPACE@2053..2054 " "
                - DIRECTIVES@2054..2101
                    - DIRECTIVE@2054..2101
                        - AT@2054..2055 "@"
                        - NAME@2055..2066
                            - IDENT@2055..2066 "join__field"
                        - ARGUMENTS@2066..2101
                            - L_PAREN@2066..2067 "("
                            - ARGUMENT@2067..2081
                                - NAME@2067..2072
                                    - IDENT@2067..2072 "graph"
                                - COLON@2072..2073 ":"
                                - WHITESPACE@2073..2074 " "
                                - ENUM_VALUE@2074..2081
                                    - NAME@2074..2081
                                        - IDENT@2074..2081 "REVIEWS"
                            - COMMA@2081..2082 ","
                            - WHITESPACE@2082..2083 " "
                            - ARGUMENT@2083..2100
                                - NAME@2083..2091
                                    - IDENT@2083..2091 "requires"
                                - COLON@2091..2092 ":"
                                - WHITESPACE@2092..2093 " "
                                - STRING_VALUE@2093..2100
                                    - STRING@2093..2100 "\"price\""
                            - R_PAREN@2100..2101 ")"
            - WHITESPACE@2101..2102 "\n"
            - R_CURLY@2102..2103 "}"
    - WHITESPACE@2103..2105 "\n\n"
    - OBJECT_TYPE_DEFINITION@2105..2149
        - type_KW@2105..2109 "type"
        - WHITESPACE@2109..2110 " "
        - NAME@2110..2115
            - IDENT@2110..2115 "Error"
        - WHITESPACE@2115..2116 " "
        - FIELDS_DEFINITION@2116..2149
            - L_CURLY@2116..2117 "{"
            - WHITESPACE@2117..2120 "\n  "
            - FIELD_DEFINITION@2120..2129
                - NAME@2120..2124
                    - IDENT@2120..2124 "code"
                - COLON@2124..2125 ":"
                - WHITESPACE@2125..2126 " "
                - NAMED_TYPE@2126..2129
                    - NAME@2126..2129
                        - IDENT@2126..2129 "Int"
            - WHITESPACE@2129..2132 "\n  "
            - FIELD_DEFINITION@2132..2147
                - NAME@2132..2139
                    - IDENT@2132..2139 "message"
                - COLON@2139..2140 ":"
                - WHITESPACE@2140..2141 " "
                - NAMED_TYPE@2141..2147
                    - NAME@2141..2147
                        - IDENT@2141..2147 "String"
            - WHITESPACE@2147..2148 "\n"
            - R_CURLY@2148..2149 "}"
    - WHITESPACE@2149..2151 "\n\n"
    - OBJECT_TYPE_DEFINITION@2151..2872
        - type_KW@2151..2155 "type"
        - WHITESPACE@2155..2156 " "
        - NAME@2156..2165
            - IDENT@2156..2165 "Furniture"
        - WHITESPACE@2165..2166 " "
        - IMPLEMENTS_INTERFACES@2166..2184
            - implements_KW@2166..2176 "implements"
            - WHITESPACE@2176..2177 " "
            - NAMED_TYPE@2177..2184
                - NAME@2177..2184
                    - IDENT@2177..2184 "Product"
        - WHITESPACE@2184..2185 "\n"
        - DIRECTIVES@2185..2375
            - DIRECTIVE@2185..2213
                - AT@2185..2186 "@"
                - NAME@2186..2197
                    - IDENT@2186..2197 "join__owner"
                - ARGUMENTS@2197..2213
                    - L_PAREN@2197..2198 "("
                    - ARGUMENT@2198..2212
                        - NAME@2198..2203
                            - IDENT@2198..2203 "graph"
                        - COLON@2203..2204 ":"
                        - WHITESPACE@2204..2205 " "
                        - ENUM_VALUE@2205..2212
                            - NAME@2205..2212
                                - IDENT@2205..2212 "PRODUCT"
                    - R_PAREN@2212..2213 ")"
            - WHITESPACE@2213..2214 "\n"
            - DIRECTIVE@2214..2253
                - AT@2214..2215 "@"
                - NAME@2215..2225
                    - IDENT@2215..2225 "join__type"
                - ARGUMENTS@2225..2253
                    - L_PAREN@2225..2226 "("
                    - ARGUMENT@2226..2240
                        - NAME@2226..2231
                            - IDENT@2226..2231 "graph"
                        - COLON@2231..2232 ":"
                        - WHITESPACE@2232..2233 " "
                        - ENUM_VALUE@2233..2240
                            - NAME@2233..2240
                                - IDENT@2233..2240 "PRODUCT"
                    - COMMA@2240..2241 ","
                    - WHITESPACE@2241..2242 " "
                    - ARGUMENT@2242..2252
                        - NAME@2242..2245
                            - IDENT@2242..2245 "key"
                        - COLON@2245..2246 ":"
                        - WHITESPACE@2246..2247 " "
                        - STRING_VALUE@2247..2252
                            - STRING@2247..2252 "\"upc\""
                    - R_PAREN@2252..2253 ")"
            - WHITESPACE@2253..2254 "\n"
            - DIRECTIVE@2254..2293
                - AT@2254..2255 "@"
                - NAME@2255..2265
                    - IDENT@2255..2265 "join__type"
                - ARGUMENTS@2265..2293
                    - L_PAREN@2265..2266 "("
                    - ARGUMENT@2266..2280
                        - NAME@2266..2271
                            - IDENT@2266..2271 "graph"
                        - COLON@2271..2272 ":"
                        - WHITESPACE@2272..2273 " "
                        - ENUM_VALUE@2273..2280
                            - NAME@2273..2280
                                - IDENT@2273..2280 "PRODUCT"
                    - COMMA@2280..2281 ","
                    - WHITESPACE@2281..2282 " "
                    - ARGUMENT@2282..2292
                        - NAME@2282..2285
                            - IDENT@2282..2285 "key"
                        - COLON@2285..2286 ":"
                        - WHITESPACE@2286..2287 " "
                        - STRING_VALUE@2287..2292
                            - STRING@2287..2292 "\"sku\""
                    - R_PAREN@2292..2293 ")"
            - WHITESPACE@2293..2294 "\n"
            - DIRECTIVE@2294..2335
                - AT@2294..2295 "@"
                - NAME@2295..2305
                    - IDENT@2295..2305 "join__type"
                - ARGUMENTS@2305..2335
                    - L_PAREN@2305..2306 "("
                    - ARGUMENT@2306..2322
                        - NAME@2306..2311
                            - IDENT@2306..2311 "graph"
                        - COLON@2311..2312 ":"
                        - WHITESPACE@2312..2313 " "
                        - ENUM_VALUE@2313..2322
                            - NAME@2313..2322
                                - IDENT@2313..2322 "INVENTORY"
                    - COMMA@2322..2323 ","
                    - WHITESPACE@2323..2324 " "
                    - ARGUMENT@2324..2334
                        - NAME@2324..2327
                            - IDENT@2324..2327 "key"
                        - COLON@2327..2328 ":"
                        - WHITESPACE@2328..2329 " "
                        - STRING_VALUE@2329..2334
                            - STRING@2329..2334 "\"sku\""
                    - R_PAREN@2334..2335 ")"
            - WHITESPACE@2335..2336 "\n"
            - DIRECTIVE@2336..2375
                - AT@2336..2337 "@"
                - NAME@2337..2347
                    - IDENT@2337..2347 "join__type"
                - ARGUMENTS@2347..2375
                    - L_PAREN@2347..2348 "("
                    - ARGUMENT@2348..2362
                        - NAME@2348..2353
                            - IDENT@2348..2353 "graph"
                        - COLON@2353..2354 ":"
                        - WHITESPACE@2354..2355 " "
                        - ENUM_VALUE@2355..2362
                            - NAME@2355..2362
                                - IDENT@2355..2362 "REVIEWS"
                    - COMMA@2362..2363 ","
                    - WHITESPACE@2363..2364 " "
                    - ARGUMENT@2364..2374
                        - NAME@2364..2367
                            - IDENT@2364..2367 "key"
                        - COLON@2367..2368 ":"
                        - WHITESPACE@2368..2369 " "
                        - STRING_VALUE@2369..2374
                            - STRING@2369..2374 "\"upc\""
                    - R_PAREN@2374..2375 ")"
        - WHITESPACE@2375..2376 "\n"
        - FIELDS_DEFINITION@2376..2872
            - L_CURLY@2376..2377 "{"
            - WHITESPACE@2377..2380 "\n  "
            - FIELD_DEFINITION@2380..2421
                - NAME@2380..2383
                    - IDENT@2380..2383 "upc"
                - COLON@2383..2384 ":"
                - WHITESPACE@2384..2385 " "
                - NON_NULL_TYPE@2385..2392
                    - NAMED_TYPE@2385..2391
                        - NAME@2385..2391
                            - IDENT@2385..2391 "String"
                    - BANG@2391..2392 "!"
                - WHITESPACE@2392..2393 " "
                - DIRECTIVES@2393..2421
                    - DIRECTIVE@2393..2421
                        - AT@2393..2394 "@"
                        - NAME@2394..2405
                            - IDENT@2394..2405 "join__field"
                        - ARGUMENTS@2405..2421
                            - L_PAREN@2405..2406 "("
                            - ARGUMENT@2406..2420
                                - NAME@2406..2411
                                    - IDENT@2406..2411 "graph"
                                - COLON@2411..2412 ":"
                                - WHITESPACE@2412..2413 " "
                                - ENUM_VALUE@2413..2420
                                    - NAME@2413..2420
                                        - IDENT@2413..2420 "PRODUCT"
                            - R_PAREN@2420..2421 ")"
            - WHITESPACE@2421..2424 "\n  "
            - FIELD_DEFINITION@2424..2465
                - NAME@2424..2427
                    - IDENT@2424..2427 "sku"
                - COLON@2427..2428 ":"
                - WHITESPACE@2428..2429 " "
                - NON_NULL_TYPE@2429..2436
                    - NAMED_TYPE@2429..2435
                        - NAME@2429..2435
                            - IDENT@2429..2435 "String"
                    - BANG@2435..2436 "!"
                - WHITESPACE@2436..2437 " "
                - DIRECTIVES@2437..2465
                    - DIRECTIVE@2437..2465
                        - AT@2437..2438 "@"
                        - NAME@2438..2449
                            - IDENT@2438..2449 "join__field"
                        - ARGUMENTS@2449..2465
                            - L_PAREN@2449..2450 "("
                            - ARGUMENT@2450..2464
                                - NAME@2450..2455
                                    - IDENT@2450..2455 "graph"
                                - COLON@2455..2456 ":"
                                - WHITESPACE@2456..2457 " "
                                - ENUM_VALUE@2457..2464
                                    - NAME@2457..2464
                                        - IDENT@2457..2464 "PRODUCT"
                            - R_PAREN@2464..2465 ")"
            - WHITESPACE@2465..2468 "\n  "
            - FIELD_DEFINITION@2468..2509
                - NAME@2468..2472
                    - IDENT@2468..2472 "name"
                - COLON@2472..2473 ":"
                - WHITESPACE@2473..2474 " "
                - NAMED_TYPE@2474..2480
                    - NAME@2474..2480
                        - IDENT@2474..2480 "String"
                - WHITESPACE@2480..2481 " "
                - DIRECTIVES@2481..2509
                    - DIRECTIVE@2481..2509
                        - AT@2481..2482 "@"
                        - NAME@2482..2493
                            - IDENT@2482..2493 "join__field"
                        - ARGUMENTS@2493..2509
                            - L_PAREN@2493..2494 "("
                            - ARGUMENT@2494..2508
                                - NAME@2494..2499
                                    - IDENT@2494..2499 "graph"
                                - COLON@2499..2500 ":"
                                - WHITESPACE@2500..2501 " "
                                - ENUM_VALUE@2501..2508
                                    - NAME@2501..2508
                                        - IDENT@2501..2508 "PRODUCT"
                            - R_PAREN@2508..2509 ")"
            - WHITESPACE@2509..2512 "\n  "
            - FIELD_DEFINITION@2512..2554
                - NAME@2512..2517
                    - IDENT@2512..2517 "price"
                - COLON@2517..2518 ":"
                - WHITESPACE@2518..2519 " "
                - NAMED_TYPE@2519..2525
                    - NAME@2519..2525
                        - IDENT@2519..2525 "String"
                - WHITESPACE@2525..2526 " "
                - DIRECTIVES@2526..2554
                    - DIRECTIVE@2526..2554
                        - AT@2526..2527 "@"
                        - NAME@2527..2538
                            - IDENT@2527..2538 "join__field"
                        - ARGUMENTS@2538..2554
                            - L_PAREN@2538..2539 "("
                            - ARGUMENT@2539..2553
                                - NAME@2539..2544
                                    - IDENT@2539..2544 "graph"
                                - COLON@2544..2545 ":"
                                - WHITESPACE@2545..2546 " "
                                - ENUM_VALUE@2546..2553
                                    - NAME@2546..2553
                                        - IDENT@2546..2553 "PRODUCT"
                            - R_PAREN@2553..2554 ")"
            - WHITESPACE@2554..2557 "\n  "
            - FIELD_DEFINITION@2557..2598
                - NAME@2557..2562
                    - IDENT@2557..2562 "brand"
                - COLON@2562..2563 ":"
                - WHITESPACE@2563..2564 " "
                - NAMED_TYPE@2564..2569
                    - NAME@2564..2569
                        - IDENT@2564..2569 "Brand"
                - WHITESPACE@2569..2570 " "
                - DIRECTIVES@2570..2598
                    - DIRECTIVE@2570..2598
                        - AT@2570..2571 "@"
                        - NAME@2571..2582
                            - IDENT@2571..2582 "join__field"
                        - ARGUMENTS@2582..2598
                            - L_PAREN@2582..2583 "("
                            - ARGUMENT@2583..2597
                                - NAME@2583..2588
                                    - IDENT@2583..2588 "graph"
                                - COLON@2588..2589 ":"
                                - WHITESPACE@2589..2590 " "
                                - ENUM_VALUE@2590..2597
                                    - NAME@2590..2597
                                        - IDENT@2590..2597 "PRODUCT"
                            - R_PAREN@2597..2598 ")"
            - WHITESPACE@2598..2601 "\n  "
            - FIELD_DEFINITION@2601..2657
                - NAME@2601..2609
                    - IDENT@2601..2609 "metadata"
                - COLON@2609..2610 ":"
                - WHITESPACE@2610..2611 " "
                - LIST_TYPE@2611..2628
                    - L_BRACK@2611..2612 "["
                    - NAMED_TYPE@2612..2627
                        - NAME@2612..2627
                            - IDENT@2612..2627 "MetadataOrError"
                    - R_BRACK@2627..2628 "]"
                - WHITESPACE@2628..2629 " "
                - DIRECTIVES@2629..2657
                    - DIRECTIVE@2629..2657
                        - AT@2629..2630 "@"
                        - NAME@2630..2641
                            - IDENT@2630..2641 "join__field"
                        - ARGUMENTS@2641..2657
                            - L_PAREN@2641..2642 "("
                            - ARGUMENT@2642..2656
                                - NAME@2642..2647
                                    - IDENT@2642..2647 "graph"
                                - COLON@2647..2648 ":"
                                - WHITESPACE@2648..2649 " "
                                - ENUM_VALUE@2649..2656
                                    - NAME@2649..2656
                                        - IDENT@2649..2656 "PRODUCT"
                            - R_PAREN@2656..2657 ")"
            - WHITESPACE@2657..2660 "\n  "
            - FIELD_DEFINITION@2660..2721
                - NAME@2660..2667
                    - IDENT@2660..2667 "details"
                - COLON@2667..2668 ":"
                - WHITESPACE@2668..2669 " "
                - NAMED_TYPE@2669..2692
                    - NAME@2669..2692
                        - IDENT@2669..2692 "ProductDetailsFurniture"
                - WHITESPACE@2692..2693 " "
                - DIRECTIVES@2693..2721
                    - DIRECTIVE@2693..2721
                        - AT@2693..2694 "@"
                        - NAME@2694..2705
                            - IDENT@2694..2705 "join__field"
                        - ARGUMENTS@2705..2721
                            - L_PAREN@2705..2706 "("
                            - ARGUMENT@2706..2720
                                - NAME@2706..2711
                                    - IDENT@2706..2711 "graph"
                                - COLON@2711..2712 ":"
                                - WHITESPACE@2712..2713 " "
                                - ENUM_VALUE@2713..2720
                                    - NAME@2713..2720
                                        - IDENT@2713..2720 "PRODUCT"
                            - R_PAREN@2720..2721 ")"
            - WHITESPACE@2721..2724 "\n  "
            - FIELD_DEFINITION@2724..2771
                - NAME@2724..2731
                    - IDENT@2724..2731 "inStock"
                - COLON@2731..2732 ":"
                - WHITESPACE@2732..2733 " "
                - NAMED_TYPE@2733..2740
                    - NAME@2733..2740
                        - IDENT@2733..2740 "Boolean"
                - WHITESPACE@2740..2741 " "
                - DIRECTIVES@2741..2771
                    - DIRECTIVE@2741..2771
                        - AT@2741..2742 "@"
                        - NAME@2742..2753
                            - IDENT@2742..2753 "join__field"
                        - ARGUMENTS@2753..2771
                            - L_PAREN@2753..2754 "("
                            - ARGUMENT@2754..2770
                                - NAME@2754..2759
                                    - IDENT@2754..2759 "graph"
                                - COLON@2759..2760 ":"
                                - WHITESPACE@2760..2761 " "
                                - ENUM_VALUE@2761..2770
                                    - NAME@2761..2770
                                        - IDENT@2761..2770 "INVENTORY"
                            - R_PAREN@2770..2771 ")"
            - WHITESPACE@2771..2774 "\n  "
            - FIELD_DEFINITION@2774..2821
                - NAME@2774..2781
                    - IDENT@2774..2781 "isHeavy"
                - COLON@2781..2782 ":"
                - WHITESPACE@2782..2783 " "
                - NAMED_TYPE@2783..2790
                    - NAME@2783..2790
                        - IDENT@2783..2790 "Boolean"
                - WHITESPACE@2790..2791 " "
                - DIRECTIVES@2791..2821
                    - DIRECTIVE@2791..2821
                        - AT@2791..2792 "@"
                        - NAME@2792..2803
                            - IDENT@2792..2803 "join__field"
                        - ARGUMENTS@2803..2821
                            - L_PAREN@2803..2804 "("
                            - ARGUMENT@2804..2820
                                - NAME@2804..2809
                                    - IDENT@2804..2809 "graph"
                                - COLON@2809..2810 ":"
                                - WHITESPACE@2810..2811 " "
                                - ENUM_VALUE@2811..2820
                                    - NAME@2811..2820
                                        - IDENT@2811..2820 "INVENTORY"
                            - R_PAREN@2820..2821 ")"
            - WHITESPACE@2821..2824 "\n  "
            - FIELD_DEFINITION@2824..2870
                - NAME@2824..2831
                    - IDENT@2824..2831 "reviews"
                - COLON@2831..2832 ":"
                - WHITESPACE@2832..2833 " "
                - LIST_TYPE@2833..2841
                    - L_BRACK@2833..2834 "["
                    - NAMED_TYPE@2834..2840
                        - NAME@2834..2840
                            - IDENT@2834..2840 "Review"
                    - R_BRACK@2840..2841 "]"
                - WHITESPACE@2841..2842 " "
                - DIRECTIVES@2842..2870
                    - DIRECTIVE@2842..2870
                        - AT@2842..2843 "@"
                        - NAME@2843..2854
                            - IDENT@2843..2854 "join__field"
                        - ARGUMENTS@2854..2870
                            - L_PAREN@2854..2855 "("
                            - ARGUMENT@2855..2869
                                - NAME@2855..2860
                                    - IDENT@2855..2860 "graph"
                                - COLON@2860..2861 ":"
                                - WHITESPACE@2861..2862 " "
                                - ENUM_VALUE@2862..2869
                                    - NAME@2862..2869
                                        - IDENT@2862..2869 "REVIEWS"
                            - R_PAREN@2869..2870 ")"
            - WHITESPACE@2870..2871 "\n"
            - R_CURLY@2871..2872 "}"
    - WHITESPACE@2872..2874 "\n\n"
    - OBJECT_TYPE_DEFINITION@2874..2900
        - type_KW@2874..2878 "type"
        - WHITESPACE@2878..2879 " "
        - NAME@2879..2883
            - IDENT@2879..2883 "Ikea"
        - WHITESPACE@2883..2884 " "
        - FIELDS_DEFINITION@2884..2900
            - L_CURLY@2884..2885 "{"
            - WHITESPACE@2885..2888 "\n  "
            - FIELD_DEFINITION@2888..2898
                - NAME@2888..2893
                    - IDENT@2888..2893 "asile"
                - COLON@2893..2894 ":"
                - WHITESPACE@2894..2895 " "
                - NAMED_TYPE@2895..2898
                    - NAME@2895..2898
                        - IDENT@2895..2898 "Int"
            - WHITESPACE@2898..2899 "\n"
            - R_CURLY@2899..2900 "}"
    - WHITESPACE@2900..2902 "\n\n"
    - OBJECT_TYPE_DEFINITION@2902..2986
        - type_KW@2902..2906 "type"
        - WHITESPACE@2906..2907 " "
        - NAME@2907..2912
            - IDENT@2907..2912 "Image"
        - WHITESPACE@2912..2913 " "
        - IMPLEMENTS_INTERFACES@2913..2935
            - implements_KW@2913..2923 "implements"
            - WHITESPACE@2923..2924 " "
            - NAMED_TYPE@2924..2935
                - NAME@2924..2935
                    - IDENT@2924..2935 "NamedObject"
        - WHITESPACE@2935..2936 " "
        - FIELDS_DEFINITION@2936..2986
            - L_CURLY@2936..2937 "{"
            - WHITESPACE@2937..2940 "\n  "
            - FIELD_DEFINITION@2940..2953
                - NAME@2940..2944
                    - IDENT@2940..2944 "name"
                - COLON@2944..2945 ":"
                - WHITESPACE@2945..2946 " "
                - NON_NULL_TYPE@2946..2953
                    - NAMED_TYPE@2946..2952
                        - NAME@2946..2952
                            - IDENT@2946..2952 "String"
                    - BANG@2952..2953 "!"
            - WHITESPACE@2953..2956 "\n  "
            - FIELD_DEFINITION@2956..2984
                - NAME@2956..2966
                    - IDENT@2956..2966 "attributes"
                - COLON@2966..2967 ":"
                - WHITESPACE@2967..2968 " "
                - NON_NULL_TYPE@2968..2984
                    - NAMED_TYPE@2968..2983
                        - NAME@2968..2983
                            - IDENT@2968..2983 "ImageAttributes"
                    - BANG@2983..2984 "!"
            - WHITESPACE@2984..2985 "\n"
            - R_CURLY@2985..2986 "}"
    - WHITESPACE@2986..2988 "\n\n"
    - OBJECT_TYPE_DEFINITION@2988..3027
        - type_KW@2988..2992 "type"
        - WHITESPACE@2992..2993 " "
        - NAME@2993..3008
            - IDENT@2993..3008 "ImageAttributes"
        - WHITESPACE@3008..3009 " "
        - FIELDS_DEFINITION@3009..3027
            - L_CURLY@3009..3010 "{"
            - WHITESPACE@3010..3013 "\n  "
            - FIELD_DEFINITION@3013..3025
                - NAME@3013..3016
                    - IDENT@3013..3016 "url"
                - COLON@3016..3017 ":"
                - WHITESPACE@3017..3018 " "
                - NON_NULL_TYPE@3018..3025
                    - NAMED_TYPE@3018..3024
                        - NAME@3018..3024
                            - IDENT@3018..3024 "String"
                    - BANG@3024..3025 "!"
            - WHITESPACE@3025..3026 "\n"
            - R_CURLY@3026..3027 "}"
    - WHITESPACE@3027..3029 "\n\n"
    - SCALAR_TYPE_DEFINITION@3029..3050
        - scalar_KW@3029..3035 "scalar"
        - WHITESPACE@3035..3036 " "
        - NAME@3036..3050
            - IDENT@3036..3050 "join__FieldSet"
    - WHITESPACE@3050..3052 "\n\n"
    - ENUM_TYPE_DEFINITION@3052..3354
        - enum_KW@3052..3056 "enum"
        - WHITESPACE@3056..3057 " "
        - NAME@3057..3068
            - IDENT@3057..3068 "join__Graph"
        - WHITESPACE@3068..3069 " "
        - ENUM_VALUES_DEFINITION@3069..3354
            - L_CURLY@3069..3070 "{"
            - WHITESPACE@3070..3071 "\n"
            - ENUM_VALUE_DEFINITION@3071..3118
                - ENUM_VALUE@3071..3079
                    - NAME@3071..3079
                        - IDENT@3071..3079 "ACCOUNTS"
                - WHITESPACE@3079..3080 " "
                - DIRECTIVES@3080..3118
                    - DIRECTIVE@3080..3118
                        - AT@3080..3081 "@"
                        - NAME@3081..3092
                            - IDENT@3081..3092 "join__graph"
                        - ARGUMENTS@3092..3118
                            - L_PAREN@3092..3093 "("
                            - ARGUMENT@3093..3109
                                - NAME@3093..3097
                                    - IDENT@3093..3097 "name"
                                - COLON@3097..3098 ":"
                                - WHITESPACE@3098..3099 " "
                                - STRING_VALUE@3099..3109
                                    - STRING@3099..3109 "\"accounts\""
                            - WHITESPACE@3109..3110 " "
                            - ARGUMENT@3110..3117
                                - NAME@3110..3113
                                    - IDENT@3110..3113 "url"
                                - COLON@3113..3114 ":"
                                - WHITESPACE@3114..3115 " "
                                - STRING_VALUE@3115..3117
                                    - STRING@3115..3117 "\"\""
                            - R_PAREN@3117..3118 ")"
            - WHITESPACE@3118..3119 "\n"
            - ENUM_VALUE_DEFINITION@3119..3160
                - ENUM_VALUE@3119..3124
                    - NAME@3119..3124
                        - IDENT@3119..3124 "BOOKS"
                - WHITESPACE@3124..3125 " "
                - DIRECTIVES@3125..3160
                    - DIRECTIVE@3125..3160
                        - AT@3125..3126 "@"
                        - NAME@3126..3137
                            - IDENT@3126..3137 "join__graph"
                        - ARGUMENTS@3137..3160
                            - L_PAREN@3137..3138 "("
                            - ARGUMENT@3138..3151
                                - NAME@3138..3142
                                    - IDENT@3138..3142 "name"
                                - COLON@3142..3143 ":"
                                - WHITESPACE@3143..3144 " "
                                - STRING_VALUE@3144..3151
                                    - STRING@3144..3151 "\"books\""
                            - WHITESPACE@3151..3152 " "
                            - ARGUMENT@3152..3159
                                - NAME@3152..3155
                                    - IDENT@3152..3155 "url"
                                - COLON@3155..3156 ":"
                                - WHITESPACE@3156..3157 " "
                                - STRING_VALUE@3157..3159
                                    - STRING@3157..3159 "\"\""
                            - R_PAREN@3159..3160 ")"
            - WHITESPACE@3160..3161 "\n"
            - ENUM_VALUE_DEFINITION@3161..3210
                - ENUM_VALUE@3161..3170
                    - NAME@3161..3170
                        - IDENT@3161..3170 "DOCUMENTS"
                - WHITESPACE@3170..3171 " "
                - DIRECTIVES@3171..3210
                    - DIRECTIVE@3171..3210
                        - AT@3171..3172 "@"
                        - NAME@3172..3183
                            - IDENT@3172..3183 "join__graph"
                        - ARGUMENTS@3183..3210
                            - L_PAREN@3183..3184 "("
                            - ARGUMENT@3184..3201
                                - NAME@3184..3188
                                    - IDENT@3184..3188 "name"
                                - COLON@3188..3189 ":"
                                - WHITESPACE@3189..3190 " "
                                - STRING_VALUE@3190..3201
                                    - STRING@3190..3201 "\"documents\""
                            - WHITESPACE@3201..3202 " "
                            - ARGUMENT@3202..3209
                                - NAME@3202..3205
                                    - IDENT@3202..3205 "url"
                                - COLON@3205..3206 ":"
                                - WHITESPACE@3206..3207 " "
                                - STRING_VALUE@3207..3209
                                    - STRING@3207..3209 "\"\""
                            - R_PAREN@3209..3210 ")"
            - WHITESPACE@3210..3211 "\n"
            - ENUM_VALUE_DEFINITION@3211..3260
                - ENUM_VALUE@3211..3220
                    - NAME@3211..3220
                        - IDENT@3211..3220 "INVENTORY"
                - WHITESPACE@3220..3221 " "
                - DIRECTIVES@3221..3260
                    - DIRECTIVE@3221..3260
                        - AT@3221..3222 "@"
                        - NAME@3222..3233
                            - IDENT@3222..3233 "join__graph"
                        - ARGUMENTS@3233..3260
                            - L_PAREN@3233..3234 "("
                            - ARGUMENT@3234..3251
                                - NAME@3234..3238
                                    - IDENT@3234..3238 "name"
                                - COLON@3238..3239 ":"
                                - WHITESPACE@3239..3240 " "
                                - STRING_VALUE@3240..3251
                                    - STRING@3240..3251 "\"inventory\""
                            - WHITESPACE@3251..3252 " "
                            - ARGUMENT@3252..3259
                                - NAME@3252..3255
                                    - IDENT@3252..3255 "url"
                                - COLON@3255..3256 ":"
                                - WHITESPACE@3256..3257 " "
                                - STRING_VALUE@3257..3259
                                    - STRING@3257..3259 "\"\""
                            - R_PAREN@3259..3260 ")"
            - WHITESPACE@3260..3261 "\n"
            - ENUM_VALUE_DEFINITION@3261..3306
                - ENUM_VALUE@3261..3268
                    - NAME@3261..3268
                        - IDENT@3261..3268 "PRODUCT"
                - WHITESPACE@3268..3269 " "
                - DIRECTIVES@3269..3306
                    - DIRECTIVE@3269..3306
                        - AT@3269..3270 "@"
                        - NAME@3270..3281
                            - IDENT@3270..3281 "join__graph"
                        - ARGUMENTS@3281..3306
                            - L_PAREN@3281..3282 "("
                            - ARGUMENT@3282..3297
                                - NAME@3282..3286
                                    - IDENT@3282..3286 "name"
                                - COLON@3286..3287 ":"
                                - WHITESPACE@3287..3288 " "
                                - STRING_VALUE@3288..3297
                                    - STRING@3288..3297 "\"product\""
                            - WHITESPACE@3297..3298 " "
                            - ARGUMENT@3298..3305
                                - NAME@3298..3301
                                    - IDENT@3298..3301 "url"
                                - COLON@3301..3302 ":"
                                - WHITESPACE@3302..3303 " "
                                - STRING_VALUE@3303..3305
                                    - STRING@3303..3305 "\"\""
                            - R_PAREN@3305..3306 ")"
            - WHITESPACE@3306..3307 "\n"
            - ENUM_VALUE_DEFINITION@3307..3352
                - ENUM_VALUE@3307..3314
                    - NAME@3307..3314
                        - IDENT@3307..3314 "REVIEWS"
                - WHITESPACE@3314..3315 " "
                - DIRECTIVES@3315..3352
                    - DIRECTIVE@3315..3352
                        - AT@3315..3316 "@"
                        - NAME@3316..3327
                            - IDENT@3316..3327 "join__graph"
                        - ARGUMENTS@3327..3352
                            - L_PAREN@3327..3328 "("
                            - ARGUMENT@3328..3343
                                - NAME@3328..3332
                                    - IDENT@3328..3332 "name"
                                - COLON@3332..3333 ":"
                                - WHITESPACE@3333..3334 " "
                                - STRING_VALUE@3334..3343
                                    - STRING@3334..3343 "\"reviews\""
                            - WHITESPACE@3343..3344 " "
                            - ARGUMENT@3344..3351
                                - NAME@3344..3347
                                    - IDENT@3344..3347 "url"
                                - COLON@3347..3348 ":"
                                - WHITESPACE@3348..3349 " "
                                - STRING_VALUE@3349..3351
                                    - STRING@3349..3351 "\"\""
                            - R_PAREN@3351..3352 ")"
            - WHITESPACE@3352..3353 "\n"
            - R_CURLY@3353..3354 "}"
    - WHITESPACE@3354..3356 "\n\n"
    - OBJECT_TYPE_DEFINITION@3356..3405
        - type_KW@3356..3360 "type"
        - WHITESPACE@3360..3361 " "
        - NAME@3361..3369
            - IDENT@3361..3369 "KeyValue"
        - WHITESPACE@3369..3370 " "
        - FIELDS_DEFINITION@3370..3405
            - L_CURLY@3370..3371 "{"
            - WHITESPACE@3371..3374 "\n  "
            - FIELD_DEFINITION@3374..3386
                - NAME@3374..3377
                    - IDENT@3374..3377 "key"
                - COLON@3377..3378 ":"
                - WHITESPACE@3378..3379 " "
                - NON_NULL_TYPE@3379..3386
                    - NAMED_TYPE@3379..3385
                        - NAME@3379..3385
                            - IDENT@3379..3385 "String"
                    - BANG@3385..3386 "!"
            - WHITESPACE@3386..3389 "\n  "
            - FIELD_DEFINITION@3389..3403
                - NAME@3389..3394
                    - IDENT@3389..3394 "value"
                - COLON@3394..3395 ":"
                - WHITESPACE@3395..3396 " "
                - NON_NULL_TYPE@3396..3403
                    - NAMED_TYPE@3396..3402
                        - NAME@3396..3402
                            - IDENT@3396..3402 "String"
                    - BANG@3402..3403 "!"
            - WHITESPACE@3403..3404 "\n"
            - R_CURLY@3404..3405 "}"
    - WHITESPACE@3405..3407 "\n\n"
    - OBJECT_TYPE_DEFINITION@3407..3687
        - type_KW@3407..3411 "type"
        - WHITESPACE@3411..3412 " "
        - NAME@3412..3419
            - IDENT@3412..3419 "Library"
        - WHITESPACE@3419..3420 "\n"
        - DIRECTIVES@3420..3523
            - DIRECTIVE@3420..3446
                - AT@3420..3421 "@"
                - NAME@3421..3432
                    - IDENT@3421..3432 "join__owner"
                - ARGUMENTS@3432..3446
                    - L_PAREN@3432..3433 "("
                    - ARGUMENT@3433..3445
                        - NAME@3433..3438
                            - IDENT@3433..3438 "graph"
                        - COLON@3438..3439 ":"
                        - WHITESPACE@3439..3440 " "
                        - ENUM_VALUE@3440..3445
                            - NAME@3440..3445
                                - IDENT@3440..3445 "BOOKS"
                    - R_PAREN@3445..3446 ")"
            - WHITESPACE@3446..3447 "\n"
            - DIRECTIVE@3447..3483
                - AT@3447..3448 "@"
                - NAME@3448..3458
                    - IDENT@3448..3458 "join__type"
                - ARGUMENTS@3458..3483
                    - L_PAREN@3458..3459 "("
                    - ARGUMENT@3459..3471
                        - NAME@3459..3464
                            - IDENT@3459..3464 "graph"
                        - COLON@3464..3465 ":"
                        - WHITESPACE@3465..3466 " "
                        - ENUM_VALUE@3466..3471
                            - NAME@3466..3471
                                - IDENT@3466..3471 "BOOKS"
                    - COMMA@3471..3472 ","
                    - WHITESPACE@3472..3473 " "
                    - ARGUMENT@3473..3482
                        - NAME@3473..3476
                            - IDENT@3473..3476 "key"
                        - COLON@3476..3477 ":"
                        - WHITESPACE@3477..3478 " "
                        - STRING_VALUE@3478..3482
                            - STRING@3478..3482 "\"id\""
                    - R_PAREN@3482..3483 ")"
            - WHITESPACE@3483..3484 "\n"
            - DIRECTIVE@3484..3523
                - AT@3484..3485 "@"
                - NAME@3485..3495
                    - IDENT@3485..3495 "join__type"
                - ARGUMENTS@3495..3523
                    - L_PAREN@3495..3496 "("
                    - ARGUMENT@3496..3511
                        - NAME@3496..3501
                            - IDENT@3496..3501 "graph"
                        - COLON@3501..3502 ":"
                        - WHITESPACE@3502..3503 " "
                        - ENUM_VALUE@3503..3511
                            - NAME@3503..3511
                                - IDENT@3503..3511 "ACCOUNTS"
                    - COMMA@3511..3512 ","
                    - WHITESPACE@3512..3513 " "
                    - ARGUMENT@3513..3522
                        - NAME@3513..3516
                            - IDENT@3513..3516 "key"
                        - COLON@3516..3517 ":"
                        - WHITESPACE@3517..3518 " "
                        - STRING_VALUE@3518..3522
                            - STRING@3518..3522 "\"id\""
                    - R_PAREN@3522..3523 ")"
        - WHITESPACE@3523..3524 "\n"
        - FIELDS_DEFINITION@3524..3687
            - L_CURLY@3524..3525 "{"
            - WHITESPACE@3525..3528 "\n  "
            - FIELD_DEFINITION@3528..3562
                - NAME@3528..3530
                    - IDENT@3528..3530 "id"
                - COLON@3530..3531 ":"
                - WHITESPACE@3531..3532 " "
                - NON_NULL_TYPE@3532..3535
                    - NAMED_TYPE@3532..3534
                        - NAME@3532..3534
                            - IDENT@3532..3534 "ID"
                    - BANG@3534..3535 "!"
                - WHITESPACE@3535..3536 " "
                - DIRECTIVES@3536..3562
                    - DIRECTIVE@3536..3562
                        - AT@3536..3537 "@"
                        - NAME@3537..3548
                            - IDENT@3537..3548 "join__field"
                        - ARGUMENTS@3548..3562
                            - L_PAREN@3548..3549 "("
                            - ARGUMENT@3549..3561
                                - NAME@3549..3554
                                    - IDENT@3549..3554 "graph"
                                - COLON@3554..3555 ":"
                                - WHITESPACE@3555..3556 " "
                                - ENUM_VALUE@3556..3561
                                    - NAME@3556..3561
                                        - IDENT@3556..3561 "BOOKS"
                            - R_PAREN@3561..3562 ")"
            - WHITESPACE@3562..3565 "\n  "
            - FIELD_DEFINITION@3565..3604
                - NAME@3565..3569
                    - IDENT@3565..3569 "name"
                - COLON@3569..3570 ":"
                - WHITESPACE@3570..3571 " "
                - NAMED_TYPE@3571..3577
                    - NAME@3571..3577
                        - IDENT@3571..3577 "String"
                - WHITESPACE@3577..3578 " "
                - DIRECTIVES@3578..3604
                    - DIRECTIVE@3578..3604
                        - AT@3578..3579 "@"
                        - NAME@3579..3590
                            - IDENT@3579..3590 "join__field"
                        - ARGUMENTS@3590..3604
                            - L_PAREN@3590..3591 "("
                            - ARGUMENT@3591..3603
                                - NAME@3591..3596
                                    - IDENT@3591..3596 "graph"
                                - COLON@3596..3597 ":"
                                - WHITESPACE@3597..3598 " "
                                - ENUM_VALUE@3598..3603
                                    - NAME@3598..3603
                                        - IDENT@3598..3603 "BOOKS"
                            - R_PAREN@3603..3604 ")"
            - WHITESPACE@3604..3607 "\n  "
            - FIELD_DEFINITION@3607..3685
                - NAME@3607..3618
                    - IDENT@3607..3618 "userAccount"
                - ARGUMENTS_DEFINITION@3618..3631
                    - L_PAREN@3618..3619 "("
                    - INPUT_VALUE_DEFINITION@3619..3630
                        - NAME@3619..3621
                            - IDENT@3619..3621 "id"
                        - COLON@3621..3622 ":"
                        - WHITESPACE@3622..3623 " "
                        - NON_NULL_TYPE@3623..3626
                            - NAMED_TYPE@3623..3625
                                - NAME@3623..3625
                                    - IDENT@3623..3625 "ID"
                            - BANG@3625..3626 "!"
                        - WHITESPACE@3626..3627 " "
                        - DEFAULT_VALUE@3627..3630
                            - EQ@3627..3628 "="
                            - WHITESPACE@3628..3629 " "
                            - INT_VALUE@3629..3630
                                - INT@3629..3630 "1"
                    - R_PAREN@3630..3631 ")"
                - COLON@3631..3632 ":"
                - WHITESPACE@3632..3633 " "
                - NAMED_TYPE@3633..3637
                    - NAME@3633..3637
                        - IDENT@3633..3637 "User"
                - WHITESPACE@3637..3638 " "
                - DIRECTIVES@3638..3685
                    - DIRECTIVE@3638..3685
                        - AT@3638..3639 "@"
                        - NAME@3639..3650
                            - IDENT@3639..3650 "join__field"
                        - ARGUMENTS@3650..3685
                            - L_PAREN@3650..3651 "("
                            - ARGUMENT@3651..3666
                                - NAME@3651..3656
                                    - IDENT@3651..3656 "graph"
                                - COLON@3656..3657 ":"
                                - WHITESPACE@3657..3658 " "
                                - ENUM_VALUE@3658..3666
                                    - NAME@3658..3666
                                        - IDENT@3658..3666 "ACCOUNTS"
                            - COMMA@3666..3667 ","
                            - WHITESPACE@3667..3668 " "
                            - ARGUMENT@3668..3684
                                - NAME@3668..3676
                                    - IDENT@3668..3676 "requires"
                                - COLON@3676..3677 ":"
                                - WHITESPACE@3677..3678 " "
                                - STRING_VALUE@3678..3684
                                    - STRING@3678..3684 "\"name\""
                            - R_PAREN@3684..3685 ")"
            - WHITESPACE@3685..3686 "\n"
            - R_CURLY@3686..3687 "}"
    - WHITESPACE@3687..3689 "\n\n"
    - UNION_TYPE_DEFINITION@3689..3729
        - union_KW@3689..3694 "union"
        - WHITESPACE@3694..3695 " "
        - NAME@3695..3710
            - IDENT@3695..3710 "MetadataOrError"
        - WHITESPACE@3710..3711 " "
        - UNION_MEMBER_TYPES@3711..3729
            - EQ@3711..3712 "="
            - WHITESPACE@3712..3713 " "
            - NAMED_TYPE@3713..3721
                - NAME@3713..3721
                    - IDENT@3713..3721 "KeyValue"
            - WHITESPACE@3721..3722 " "
            - PIPE@3722..3723 "|"
            - WHITESPACE@3723..3724 " "
            - NAMED_TYPE@3724..3729
                - NAME@3724..3729
                    - IDENT@3724..3729 "Error"
    - WHITESPACE@3729..3731 "\n\n"
    - OBJECT_TYPE_DEFINITION@3731..4055
        - type_KW@3731..3735 "type"
        - WHITESPACE@3735..3736 " "
        - NAME@3736..3744
            - IDENT@3736..3744 "Mutation"
        - WHITESPACE@3744..3745 " "
        - FIELDS_DEFINITION@3745..4055
            - L_CURLY@3745..3746 "{"
            - WHITESPACE@3746..3749 "\n  "
            - FIELD_DEFINITION@3749..3828
                - NAME@3749..3754
                    - IDENT@3749..3754 "login"
                - ARGUMENTS_DEFINITION@3754..3792
                    - L_PAREN@3754..3755 "("
                    - INPUT_VALUE_DEFINITION@3755..3772
                        - NAME@3755..3763
                            - IDENT@3755..3763 "username"
                        - COLON@3763..3764 ":"
                        - WHITESPACE@3764..3765 " "
                        - NON_NULL_TYPE@3765..3772
                            - NAMED_TYPE@3765..3771
                                - NAME@3765..3771
                                    - IDENT@3765..3771 "String"
                            - BANG@3771..3772 "!"
                    - COMMA@3772..3773 ","
                    - WHITESPACE@3773..3774 " "
                    - INPUT_VALUE_DEFINITION@3774..3791
                        - NAME@3774..3782
                            - IDENT@3774..3782 "password"
                        - COLON@3782..3783 ":"
                        - WHITESPACE@3783..3784 " "
                        - NON_NULL_TYPE@3784..3791
                            - NAMED_TYPE@3784..3790
                                - NAME@3784..3790
                                    - IDENT@3784..3790 "String"
                            - BANG@3790..3791 "!"
                    - R_PAREN@3791..3792 ")"
                - COLON@3792..3793 ":"
                - WHITESPACE@3793..3794 " "
                - NAMED_TYPE@3794..3798
                    - NAME@3794..3798
                        - IDENT@3794..3798 "User"
                - WHITESPACE@3798..3799 " "
                - DIRECTIVES@3799..3828
                    - DIRECTIVE@3799..3828
                        - AT@3799..3800 "@"
                        - NAME@3800..3811
                            - IDENT@3800..3811 "join__field"
                        - ARGUMENTS@3811..3828
                            - L_PAREN@3811..3812 "("
                            - ARGUMENT@3812..3827
                                - NAME@3812..3817
                                    - IDENT@3812..3817 "graph"
                                - COLON@3817..3818 ":"
                                - WHITESPACE@3818..3819 " "
                                - ENUM_VALUE@3819..3827
                                    - NAME@3819..3827
                                        - IDENT@3819..3827 "ACCOUNTS"
                            - R_PAREN@3827..3828 ")"
            - WHITESPACE@3828..3831 "\n  "
            - FIELD_DEFINITION@3831..3911
                - NAME@3831..3844
                    - IDENT@3831..3844 "reviewProduct"
                - ARGUMENTS_DEFINITION@3844..3873
                    - L_PAREN@3844..3845 "("
                    - INPUT_VALUE_DEFINITION@3845..3857
                        - NAME@3845..3848
                            - IDENT@3845..3848 "upc"
                        - COLON@3848..3849 ":"
                        - WHITESPACE@3849..3850 " "
                        - NON_NULL_TYPE@3850..3857
                            - NAMED_TYPE@3850..3856
                                - NAME@3850..3856
                                    - IDENT@3850..3856 "String"
                            - BANG@3856..3857 "!"
                    - COMMA@3857..3858 ","
                    - WHITESPACE@3858..3859 " "
                    - INPUT_VALUE_DEFINITION@3859..3872
                        - NAME@3859..3863
                            - IDENT@3859..3863 "body"
                        - COLON@3863..3864 ":"
                        - WHITESPACE@3864..3865 " "
                        - NON_NULL_TYPE@3865..3872
                            - NAMED_TYPE@3865..3871
                                - NAME@3865..3871
                                    - IDENT@3865..3871 "String"
                            - BANG@3871..3872 "!"
                    - R_PAREN@3872..3873 ")"
                - COLON@3873..3874 ":"
                - WHITESPACE@3874..3875 " "
                - NAMED_TYPE@3875..3882
                    - NAME@3875..3882
                        - IDENT@3875..3882 "Product"
                - WHITESPACE@3882..3883 " "
                - DIRECTIVES@3883..3911
                    - DIRECTIVE@3883..3911
                        - AT@3883..3884 "@"
                        - NAME@3884..3895
                            - IDENT@3884..3895 "join__field"
                        - ARGUMENTS@3895..3911
                            - L_PAREN@3895..3896 "("
                            - ARGUMENT@3896..3910
                                - NAME@3896..3901
                                    - IDENT@3896..3901 "graph"
                                - COLON@3901..3902 ":"
                                - WHITESPACE@3902..3903 " "
                                - ENUM_VALUE@3903..3910
                                    - NAME@3903..3910
                                        - IDENT@3903..3910 "REVIEWS"
                            - R_PAREN@3910..3911 ")"
            - WHITESPACE@3911..3914 "\n  "
            - FIELD_DEFINITION@3914..3991
                - NAME@3914..3926
                    - IDENT@3914..3926 "updateReview"
                - ARGUMENTS_DEFINITION@3926..3954
                    - L_PAREN@3926..3927 "("
                    - INPUT_VALUE_DEFINITION@3927..3953
                        - NAME@3927..3933
                            - IDENT@3927..3933 "review"
                        - COLON@3933..3934 ":"
                        - WHITESPACE@3934..3935 " "
                        - NON_NULL_TYPE@3935..3953
                            - NAMED_TYPE@3935..3952
                                - NAME@3935..3952
                                    - IDENT@3935..3952 "UpdateReviewInput"
                            - BANG@3952..3953 "!"
                    - R_PAREN@3953..3954 ")"
                - COLON@3954..3955 ":"
                - WHITESPACE@3955..3956 " "
                - NAMED_TYPE@3956..3962
                    - NAME@3956..3962
                        - IDENT@3956..3962 "Review"
                - WHITESPACE@3962..3963 " "
                - DIRECTIVES@3963..3991
                    - DIRECTIVE@3963..3991
                        - AT@3963..3964 "@"
                        - NAME@3964..3975
                            - IDENT@3964..3975 "join__field"
                        - ARGUMENTS@3975..3991
                            - L_PAREN@3975..3976 "("
                            - ARGUMENT@3976..3990
                                - NAME@3976..3981
                                    - IDENT@3976..3981 "graph"
                                - COLON@3981..3982 ":"
                                - WHITESPACE@3982..3983 " "
                                - ENUM_VALUE@3983..3990
                                    - NAME@3983..3990
                                        - IDENT@3983..3990 "REVIEWS"
                            - R_PAREN@3990..3991 ")"
            - WHITESPACE@3991..3994 "\n  "
            - FIELD_DEFINITION@3994..4053
                - NAME@3994..4006
                    - IDENT@3994..4006 "deleteReview"
                - ARGUMENTS_DEFINITION@4006..4015
                    - L_PAREN@4006..4007 "("
                    - INPUT_VALUE_DEFINITION@4007..4014
                        - NAME@4007..4009
                            - IDENT@4007..4009 "id"
                        - COLON@4009..4010 ":"
                        - WHITESPACE@4010..4011 " "
                        - NON_NULL_TYPE@4011..4014
                            - NAMED_TYPE@4011..4013
                                - NAME@4011..4013
                                    - IDENT@4011..4013 "ID"
                            - BANG@4013..4014 "!"
                    - R_PAREN@4014..4015 ")"
                - COLON@4015..4016 ":"
                - WHITESPACE@4016..4017 " "
                - NAMED_TYPE@4017..4024
                    - NAME@4017..4024
                        - IDENT@4017..4024 "Boolean"
                - WHITESPACE@4024..4025 " "
                - DIRECTIVES@4025..4053
                    - DIRECTIVE@4025..4053
                        - AT@4025..4026 "@"
                        - NAME@4026..4037
                            - IDENT@4026..4037 "join__field"
                        - ARGUMENTS@4037..4053
                            - L_PAREN@4037..4038 "("
                            - ARGUMENT@4038..4052
                                - NAME@4038..4043
                                    - IDENT@4038..4043 "graph"
                                - COLON@4043..4044 ":"
                                - WHITESPACE@4044..4045 " "
                                - ENUM_VALUE@4045..4052
                                    - NAME@4045..4052
                                        - IDENT@4045..4052 "REVIEWS"
                            - R_PAREN@4052..4053 ")"
            - WHITESPACE@4053..4054 "\n"
            - R_CURLY@4054..4055 "}"
    - WHITESPACE@4055..4057 "\n\n"
    - OBJECT_TYPE_DEFINITION@4057..4101
        - type_KW@4057..4061 "type"
        - WHITESPACE@4061..4062 " "
        - NAME@4062..4066
            - IDENT@4062..4066 "Name"
        - WHITESPACE@4066..4067 " "
        - FIELDS_DEFINITION@4067..4101
            - L_CURLY@4067..4068 "{"
            - WHITESPACE@4068..4071 "\n  "
            - FIELD_DEFINITION@4071..4084
                - NAME@4071..4076
                    - IDENT@4071..4076 "first"
                - COLON@4076..4077 ":"
                - WHITESPACE@4077..4078 " "
                - NAMED_TYPE@4078..4084
                    - NAME@4078..4084
                        - IDENT@4078..4084 "String"
            - WHITESPACE@4084..4087 "\n  "
            - FIELD_DEFINITION@4087..4099
                - NAME@4087..4091
                    - IDENT@4087..4091 "last"
                - COLON@4091..4092 ":"
                - WHITESPACE@4092..4093 " "
                - NAMED_TYPE@4093..4099
                    - NAME@4093..4099
                        - IDENT@4093..4099 "String"
            - WHITESPACE@4099..4100 "\n"
            - R_CURLY@4100..4101 "}"
    - WHITESPACE@4101..4103 "\n\n"
    - INTERFACE_TYPE_DEFINITION@4103..4144
        - interface_KW@4103..4112 "interface"
        - WHITESPACE@4112..4113 " "
        - NAME@4113..4124
            - IDENT@4113..4124 "NamedObject"
        - WHITESPACE@4124..4125 " "
        - FIELDS_DEFINITION@4125..4144
            - L_CURLY@4125..4126 "{"
            - WHITESPACE@4126..4129 "\n  "
            - FIELD_DEFINITION@4129..4142
                - NAME@4129..4133
                    - IDENT@4129..4133 "name"
                - COLON@4133..4134 ":"
                - WHITESPACE@4134..4135 " "
                - NON_NULL_TYPE@4135..4142
                    - NAMED_TYPE@4135..4141
                        - NAME@4135..4141
                            - IDENT@4135..4141 "String"
                    - BANG@4141..4142 "!"
            - WHITESPACE@4142..4143 "\n"
            - R_CURLY@4143..4144 "}"
    - WHITESPACE@4144..4146 "\n\n"
    - OBJECT_TYPE_DEFINITION@4146..4290
        - type_KW@4146..4150 "type"
        - WHITESPACE@4150..4151 " "
        - NAME@4151..4166
            - IDENT@4151..4166 "PasswordAccount"
        - WHITESPACE@4166..4167 "\n"
        - DIRECTIVES@4167..4239
            - DIRECTIVE@4167..4196
                - AT@4167..4168 "@"
                - NAME@4168..4179
                    - IDENT@4168..4179 "join__owner"
                - ARGUMENTS@4179..4196
                    - L_PAREN@4179..4180 "("
                    - ARGUMENT@4180..4195
                        - NAME@4180..4185
                            - IDENT@4180..4185 "graph"
                        - COLON@4185..4186 ":"
                        - WHITESPACE@4186..4187 " "
                        - ENUM_VALUE@4187..4195
                            - NAME@4187..4195
                                - IDENT@4187..4195 "ACCOUNTS"
                    - R_PAREN@4195..4196 ")"
            - WHITESPACE@4196..4197 "\n"
            - DIRECTIVE@4197..4239
                - AT@4197..4198 "@"
                - NAME@4198..4208
                    - IDENT@4198..4208 "join__type"
                - ARGUMENTS@4208..4239
                    - L_PAREN@4208..4209 "("
                    - ARGUMENT@4209..4224
                        - NAME@4209..4214
                            - IDENT@4209..4214 "graph"
                        - COLON@4214..4215 ":"
                        - WHITESPACE@4215..4216 " "
                        - ENUM_VALUE@4216..4224
                            - NAME@4216..4224
                                - IDENT@4216..4224 "ACCOUNTS"
                    - COMMA@4224..4225 ","
                    - WHITESPACE@4225..4226 " "
                    - ARGUMENT@4226..4238
                        - NAME@4226..4229
                            - IDENT@4226..4229 "key"
                        - COLON@4229..4230 ":"
                        - WHITESPACE@4230..4231 " "
                        - STRING_VALUE@4231..4238
                            - STRING@4231..4238 "\"email\""
                    - R_PAREN@4238..4239 ")"
        - WHITESPACE@4239..4240 "\n"
        - FIELDS_DEFINITION@4240..4290
            - L_CURLY@4240..4241 "{"
            - WHITESPACE@4241..4244 "\n  "
            - FIELD_DEFINITION@4244..4288
                - NAME@4244..4249
                    - IDENT@4244..4249 "email"
                - COLON@4249..4250 ":"
                - WHITESPACE@4250..4251 " "
                - NON_NULL_TYPE@4251..4258
                    - NAMED_TYPE@4251..4257
                        - NAME@4251..4257
                            - IDENT@4251..4257 "String"
                    - BANG@4257..4258 "!"
                - WHITESPACE@4258..4259 " "
                - DIRECTIVES@4259..4288
                    - DIRECTIVE@4259..4288
                        - AT@4259..4260 "@"
                        - NAME@4260..4271
                            - IDENT@4260..4271 "join__field"
                        - ARGUMENTS@4271..4288
                            - L_PAREN@4271..4272 "("
                            - ARGUMENT@4272..4287
                                - NAME@4272..4277
                                    - IDENT@4272..4277 "graph"
                                - COLON@4277..4278 ":"
                                - WHITESPACE@4278..4279 " "
                                - ENUM_VALUE@4279..4287
                                    - NAME@4279..4287
                                        - IDENT@4279..4287 "ACCOUNTS"
                            - R_PAREN@4287..4288 ")"
            - WHITESPACE@4288..4289 "\n"
            - R_CURLY@4289..4290 "}"
    - WHITESPACE@4290..4292 "\n\n"
    - INTERFACE_TYPE_DEFINITION@4292..4439
        - interface_KW@4292..4301 "interface"
        - WHITESPACE@4301..4302 " "
        - NAME@4302..4309
            - IDENT@4302..4309 "Product"
        - WHITESPACE@4309..4310 " "
        - FIELDS_DEFINITION@4310..4439
            - L_CURLY@4310..4311 "{"
            - WHITESPACE@4311..4314 "\n  "
            - FIELD_DEFINITION@4314..4326
                - NAME@4314..4317
                    - IDENT@4314..4317 "upc"
                - COLON@4317..4318 ":"
                - WHITESPACE@4318..4319 " "
                - NON_NULL_TYPE@4319..4326
                    - NAMED_TYPE@4319..4325
                        - NAME@4319..4325
                            - IDENT@4319..4325 "String"
                    - BANG@4325..4326 "!"
            - WHITESPACE@4326..4329 "\n  "
            - FIELD_DEFINITION@4329..4341
                - NAME@4329..4332
                    - IDENT@4329..4332 "sku"
                - COLON@4332..4333 ":"
                - WHITESPACE@4333..4334 " "
                - NON_NULL_TYPE@4334..4341
                    - NAMED_TYPE@4334..4340
                        - NAME@4334..4340
                            - IDENT@4334..4340 "String"
                    - BANG@4340..4341 "!"
            - WHITESPACE@4341..4344 "\n  "
            - FIELD_DEFINITION@4344..4356
                - NAME@4344..4348
                    - IDENT@4344..4348 "name"
                - COLON@4348..4349 ":"
                - WHITESPACE@4349..4350 " "
                - NAMED_TYPE@4350..4356
                    - NAME@4350..4356
                        - IDENT@4350..4356 "String"
            - WHITESPACE@4356..4359 "\n  "
            - FIELD_DEFINITION@4359..4372
                - NAME@4359..4364
                    - IDENT@4359..4364 "price"
                - COLON@4364..4365 ":"
                - WHITESPACE@4365..4366 " "
                - NAMED_TYPE@4366..4372
                    - NAME@4366..4372
                        - IDENT@4366..4372 "String"
            - WHITESPACE@4372..4375 "\n  "
            - FIELD_DEFINITION@4375..4398
                - NAME@4375..4382
                    - IDENT@4375..4382 "details"
                - COLON@4382..4383 ":"
                - WHITESPACE@4383..4384 " "
                - NAMED_TYPE@4384..4398
                    - NAME@4384..4398
                        - IDENT@4384..4398 "ProductDetails"
            - WHITESPACE@4398..4401 "\n  "
            - FIELD_DEFINITION@4401..4417
                - NAME@4401..4408
                    - IDENT@4401..4408 "inStock"
                - COLON@4408..4409 ":"
                - WHITESPACE@4409..4410 " "
                - NAMED_TYPE@4410..4417
                    - NAME@4410..4417
                        - IDENT@4410..4417 "Boolean"
            - WHITESPACE@4417..4420 "\n  "
            - FIELD_DEFINITION@4420..4437
                - NAME@4420..4427
                    - IDENT@4420..4427 "reviews"
                - COLON@4427..4428 ":"
                - WHITESPACE@4428..4429 " "
                - LIST_TYPE@4429..4437
                    - L_BRACK@4429..4430 "["
                    - NAMED_TYPE@4430..4436
                        - NAME@4430..4436
                            - IDENT@4430..4436 "Review"
                    - R_BRACK@4436..4437 "]"
            - WHITESPACE@4437..4438 "\n"
            - R_CURLY@4438..4439 "}"
    - WHITESPACE@4439..4441 "\n\n"
    - INTERFACE_TYPE_DEFINITION@4441..4487
        - interface_KW@4441..4450 "interface"
        - WHITESPACE@4450..4451 " "
        - NAME@4451..4465
            - IDENT@4451..4465 "ProductDetails"
        - WHITESPACE@4465..4466 " "
        - FIELDS_DEFINITION@4466..4487
            - L_CURLY@4466..4467 "{"
            - WHITESPACE@4467..4470 "\n  "
            - FIELD_DEFINITION@4470..4485
                - NAME@4470..4477
                    - IDENT@4470..4477 "country"
                - COLON@4477..4478 ":"
                - WHITESPACE@4478..4479 " "
                - NAMED_TYPE@4479..4485
                    - NAME@4479..4485
                        - IDENT@4479..4485 "String"
            - WHITESPACE@4485..4486 "\n"
            - R_CURLY@4486..4487 "}"
    - WHITESPACE@4487..4489 "\n\n"
    - OBJECT_TYPE_DEFINITION@4489..4573
        - type_KW@4489..4493 "type"
        - WHITESPACE@4493..4494 " "
        - NAME@4494..4512
            - IDENT@4494..4512 "ProductDetailsBook"
        - WHITESPACE@4512..4513 " "
        - IMPLEMENTS_INTERFACES@4513..4538
            - implements_KW@4513..4523 "implements"
            - WHITESPACE@4523..4524 " "
            - NAMED_TYPE@4524..4538
                - NAME@4524..4538
                    - IDENT@4524..4538 "ProductDetails"
        - WHITESPACE@4538..4539 " "
        - FIELDS_DEFINITION@4539..4573
            - L_CURLY@4539..4540 "{"
            - WHITESPACE@4540..4543 "\n  "
            - FIELD_DEFINITION@4543..4558
                - NAME@4543..4550
                    - IDENT@4543..4550 "country"
                - COLON@4550..4551 ":"
                - WHITESPACE@4551..4552 " "
                - NAMED_TYPE@4552..4558
                    - NAME@4552..4558
                        - IDENT@4552..4558 "String"
            - WHITESPACE@4558..4561 "\n  "
            - FIELD_DEFINITION@4561..4571
                - NAME@4561..4566
                    - IDENT@4561..4566 "pages"
                - COLON@4566..4567 ":"
                - WHITESPACE@4567..4568 " "
                - NAMED_TYPE@4568..4571
                    - NAME@4568..4571
                        - IDENT@4568..4571 "Int"
            - WHITESPACE@4571..4572 "\n"
            - R_CURLY@4572..4573 "}"
    - WHITESPACE@4573..4575 "\n\n"
    - OBJECT_TYPE_DEFINITION@4575..4667
        - type_KW@4575..4579 "type"
        - WHITESPACE@4579..4580 " "
        - NAME@4580..4603
            - IDENT@4580..4603 "ProductDetailsFurniture"
        - WHITESPACE@4603..4604 " "
        - IMPLEMENTS_INTERFACES@4604..4629
            - implements_KW@4604..4614 "implements"
            - WHITESPACE@4614..4615 " "
            - NAMED_TYPE@4615..4629
                - NAME@4615..4629
                    - IDENT@4615..4629 "ProductDetails"
        - WHITESPACE@4629..4630 " "
        - FIELDS_DEFINITION@4630..4667
            - L_CURLY@4630..4631 "{"
            - WHITESPACE@4631..4634 "\n  "
            - FIELD_DEFINITION@4634..4649
                - NAME@4634..4641
                    - IDENT@4634..4641 "country"
                - COLON@4641..4642 ":"
                - WHITESPACE@4642..4643 " "
                - NAMED_TYPE@4643..4649
                    - NAME@4643..4649
                        - IDENT@4643..4649 "String"
            - WHITESPACE@4649..4652 "\n  "
            - FIELD_DEFINITION@4652..4665
                - NAME@4652..4657
                    - IDENT@4652..4657 "color"
                - COLON@4657..4658 ":"
                - WHITESPACE@4658..4659 " "
                - NAMED_TYPE@4659..4665
                    - NAME@4659..4665
                        - IDENT@4659..4665 "String"
            - WHITESPACE@4665..4666 "\n"
            - R_CURLY@4666..4667 "}"
    - WHITESPACE@4667..4669 "\n\n"
    - OBJECT_TYPE_DEFINITION@4669..5297
        - type_KW@4669..4673 "type"
        - WHITESPACE@4673..4674 " "
        - NAME@4674..4679
            - IDENT@4674..4679 "Query"
        - WHITESPACE@4679..4680 " "
        - FIELDS_DEFINITION@4680..5297
            - L_CURLY@4680..4681 "{"
            - WHITESPACE@4681..4684 "\n  "
            - FIELD_DEFINITION@4684..4733
                - NAME@4684..4688
                    - IDENT@4684..4688 "user"
                - ARGUMENTS_DEFINITION@4688..4697
                    - L_PAREN@4688..4689 "("
                    - INPUT_VALUE_DEFINITION@4689..4696
                        - NAME@4689..4691
                            - IDENT@4689..4691 "id"
                        - COLON@4691..4692 ":"
                        - WHITESPACE@4692..4693 " "
                        - NON_NULL_TYPE@4693..4696
                            - NAMED_TYPE@4693..4695
                                - NAME@4693..4695
                                    - IDENT@4693..4695 "ID"
                            - BANG@4695..4696 "!"
                    - R_PAREN@4696..4697 ")"
                - COLON@4697..4698 ":"
                - WHITESPACE@4698..4699 " "
                - NAMED_TYPE@4699..4703
                    - NAME@4699..4703
                        - IDENT@4699..4703 "User"
                - WHITESPACE@4703..4704 " "
                - DIRECTIVES@4704..4733
                    - DIRECTIVE@4704..4733
                        - AT@4704..4705 "@"
                        - NAME@4705..4716
                            - IDENT@4705..4716 "join__field"
                        - ARGUMENTS@4716..4733
                            - L_PAREN@4716..4717 "("
                            - ARGUMENT@4717..4732
                                - NAME@4717..4722
                                    - IDENT@4717..4722 "graph"
                                - COLON@4722..4723 ":"
                                - WHITESPACE@4723..4724 " "
                                - ENUM_VALUE@4724..4732
                                    - NAME@4724..4732
                                        - IDENT@4724..4732 "ACCOUNTS"
                            - R_PAREN@4732..4733 ")"
            - WHITESPACE@4733..4736 "\n  "
            - FIELD_DEFINITION@4736..4774
                - NAME@4736..4738
                    - IDENT@4736..4738 "me"
                - COLON@4738..4739 ":"
                - WHITESPACE@4739..4740 " "
                - NAMED_TYPE@4740..4744
                    - NAME@4740..4744
                        - IDENT@4740..4744 "User"
                - WHITESPACE@4744..4745 " "
                - DIRECTIVES@4745..4774
                    - DIRECTIVE@4745..4774
                        - AT@4745..4746 "@"
                        - NAME@4746..4757
                            - IDENT@4746..4757 "join__field"
                        - ARGUMENTS@4757..4774
                            - L_PAREN@4757..4758 "("
                            - ARGUMENT@4758..4773
                                - NAME@4758..4763
                                    - IDENT@4758..4763 "graph"
                                - COLON@4763..4764 ":"
                                - WHITESPACE@4764..4765 " "
                                - ENUM_VALUE@4765..4773
                                    - NAME@4765..4773
                                        - IDENT@4765..4773 "ACCOUNTS"
                            - R_PAREN@4773..4774 ")"
            - WHITESPACE@4774..4777 "\n  "
            - FIELD_DEFINITION@4777..4829
                - NAME@4777..4781
                    - IDENT@4777..4781 "book"
                - ARGUMENTS_DEFINITION@4781..4796
                    - L_PAREN@4781..4782 "("
                    - INPUT_VALUE_DEFINITION@4782..4795
                        - NAME@4782..4786
                            - IDENT@4782..4786 "isbn"
                        - COLON@4786..4787 ":"
                        - WHITESPACE@4787..4788 " "
                        - NON_NULL_TYPE@4788..4795
                            - NAMED_TYPE@4788..4794
                                - NAME@4788..4794
                                    - IDENT@4788..4794 "String"
                            - BANG@4794..4795 "!"
                    - R_PAREN@4795..4796 ")"
                - COLON@4796..4797 ":"
                - WHITESPACE@4797..4798 " "
                - NAMED_TYPE@4798..4802
                    - NAME@4798..4802
                        - IDENT@4798..4802 "Book"
                - WHITESPACE@4802..4803 " "
                - DIRECTIVES@4803..4829
                    - DIRECTIVE@4803..4829
                        - AT@4803..4804 "@"
                        - NAME@4804..4815
                            - IDENT@4804..4815 "join__field"
                        - ARGUMENTS@4815..4829
                            - L_PAREN@4815..4816 "("
                            - ARGUMENT@4816..4828
                                - NAME@4816..4821
                                    - IDENT@4816..4821 "graph"
                                - COLON@4821..4822 ":"
                                - WHITESPACE@4822..4823 " "
                                - ENUM_VALUE@4823..4828
                                    - NAME@4823..4828
                                        - IDENT@4823..4828 "BOOKS"
                            - R_PAREN@4828..4829 ")"
            - WHITESPACE@4829..4832 "\n  "
            - FIELD_DEFINITION@4832..4872
                - NAME@4832..4837
                    - IDENT@4832..4837 "books"
                - COLON@4837..4838 ":"
                - WHITESPACE@4838..4839 " "
                - LIST_TYPE@4839..4845
                    - L_BRACK@4839..4840 "["
                    - NAMED_TYPE@4840..4844
                        - NAME@4840..4844
                            - IDENT@4840..4844 "Book"
                    - R_BRACK@4844..4845 "]"
                - WHITESPACE@4845..4846 " "
                - DIRECTIVES@4846..4872
                    - DIRECTIVE@4846..4872
                        - AT@4846..4847 "@"
                        - NAME@4847..4858
                            - IDENT@4847..4858 "join__field"
                        - ARGUMENTS@4858..4872
                            - L_PAREN@4858..4859 "("
                            - ARGUMENT@4859..4871
                                - NAME@4859..4864
                                    - IDENT@4859..4864 "graph"
                                - COLON@4864..4865 ":"
                                - WHITESPACE@4865..4866 " "
                                - ENUM_VALUE@4866..4871
                                    - NAME@4866..4871
                                        - IDENT@4866..4871 "BOOKS"
                            - R_PAREN@4871..4872 ")"
            - WHITESPACE@4872..4875 "\n  "
            - FIELD_DEFINITION@4875..4927
                - NAME@4875..4882
                    - IDENT@4875..4882 "library"
                - ARGUMENTS_DEFINITION@4882..4891
                    - L_PAREN@4882..4883 "("
                    - INPUT_VALUE_DEFINITION@4883..4890
                        - NAME@4883..4885
                            - IDENT@4883..4885 "id"
                        - COLON@4885..4886 ":"
                        - WHITESPACE@4886..4887 " "
                        - NON_NULL_TYPE@4887..4890
                            - NAMED_TYPE@4887..4889
                                - NAME@4887..4889
                                    - IDENT@4887..4889 "ID"
                            - BANG@4889..4890 "!"
                    - R_PAREN@4890..4891 ")"
                - COLON@4891..4892 ":"
                - WHITESPACE@4892..4893 " "
                - NAMED_TYPE@4893..4900
                    - NAME@4893..4900
                        - IDENT@4893..4900 "Library"
                - WHITESPACE@4900..4901 " "
                - DIRECTIVES@4901..4927
                    - DIRECTIVE@4901..4927
                        - AT@4901..4902 "@"
                        - NAME@4902..4913
                            - IDENT@4902..4913 "join__field"
                        - ARGUMENTS@4913..4927
                            - L_PAREN@4913..4914 "("
                            - ARGUMENT@4914..4926
                                - NAME@4914..4919
                                    - IDENT@4914..4919 "graph"
                                - COLON@4919..4920 ":"
                                - WHITESPACE@4920..4921 " "
                                - ENUM_VALUE@4921..4926
                                    - NAME@4921..4926
                                        - IDENT@4921..4926 "BOOKS"
                            - R_PAREN@4926..4927 ")"
            - WHITESPACE@4927..4930 "\n  "
            - FIELD_DEFINITION@4930..4972
                - NAME@4930..4934
                    - IDENT@4930..4934 "body"
                - COLON@4934..4935 ":"
                - WHITESPACE@4935..4936 " "
                - NON_NULL_TYPE@4936..4941
                    - NAMED_TYPE@4936..4940
                        - NAME@4936..4940
                            - IDENT@4936..4940 "Body"
                    - BANG@4940..4941 "!"
                - WHITESPACE@4941..4942 " "
                - DIRECTIVES@4942..4972
                    - DIRECTIVE@4942..4972
                        - AT@4942..4943 "@"
                        - NAME@4943..4954
                            - IDENT@4943..4954 "join__field"
                        - ARGUMENTS@4954..4972
                            - L_PAREN@4954..4955 "("
                            - ARGUMENT@4955..4971
                                - NAME@4955..4960
                                    - IDENT@4955..4960 "graph"
                                - COLON@4960..4961 ":"
                                - WHITESPACE@4961..4962 " "
                                - ENUM_VALUE@4962..4971
                                    - NAME@4962..4971
                                        - IDENT@4962..4971 "DOCUMENTS"
                            - R_PAREN@4971..4972 ")"
            - WHITESPACE@4972..4975 "\n  "
            - FIELD_DEFINITION@4975..5034
                - NAME@4975..4982
                    - IDENT@4975..4982 "product"
                - ARGUMENTS_DEFINITION@4982..4996
                    - L_PAREN@4982..4983 "("
                    - INPUT_VALUE_DEFINITION@4983..4995
                        - NAME@4983..4986
                            - IDENT@4983..4986 "upc"
                        - COLON@4986..4987 ":"
                        - WHITESPACE@4987..4988 " "
                        - NON_NULL_TYPE@4988..4995
                            - NAMED_TYPE@4988..4994
                                - NAME@4988..4994
                                    - IDENT@4988..4994 "String"
                            - BANG@4994..4995 "!"
                    - R_PAREN@4995..4996 ")"
                - COLON@4996..4997 ":"
                - WHITESPACE@4997..4998 " "
                - NAMED_TYPE@4998..5005
                    - NAME@4998..5005
                        - IDENT@4998..5005 "Product"
                - WHITESPACE@5005..5006 " "
                - DIRECTIVES@5006..5034
                    - DIRECTIVE@5006..5034
                        - AT@5006..5007 "@"
                        - NAME@5007..5018
                            - IDENT@5007..5018 "join__field"
                        - ARGUMENTS@5018..5034
                            - L_PAREN@5018..5019 "("
                            - ARGUMENT@5019..5033
                                - NAME@5019..5024
                                    - IDENT@5019..5024 "graph"
                                - COLON@5024..5025 ":"
                                - WHITESPACE@5025..5026 " "
                                - ENUM_VALUE@5026..5033
                                    - NAME@5026..5033
                                        - IDENT@5026..5033 "PRODUCT"
                            - R_PAREN@5033..5034 ")"
            - WHITESPACE@5034..5037 "\n  "
            - FIELD_DEFINITION@5037..5095
                - NAME@5037..5044
                    - IDENT@5037..5044 "vehicle"
                - ARGUMENTS_DEFINITION@5044..5057
                    - L_PAREN@5044..5045 "("
                    - INPUT_VALUE_DEFINITION@5045..5056
                        - NAME@5045..5047
                            - IDENT@5045..5047 "id"
                        - COLON@5047..5048 ":"
                        - WHITESPACE@5048..5049 " "
                        - NON_NULL_TYPE@5049..5056
                            - NAMED_TYPE@5049..5055
                                - NAME@5049..5055
                                    - IDENT@5049..5055 "String"
                            - BANG@5055..5056 "!"
                    - R_PAREN@5056..5057 ")"
                - COLON@5057..5058 ":"
                - WHITESPACE@5058..5059 " "
                - NAMED_TYPE@5059..5066
                    - NAME@5059..5066
                        - IDENT@5059..5066 "Vehicle"
                - WHITESPACE@5066..5067 " "
                - DIRECTIVES@5067..5095
                    - DIRECTIVE@5067..5095
                        - AT@5067..5068 "@"
                        - NAME@5068..5079
                            - IDENT@5068..5079 "join__field"
                        - ARGUMENTS@5079..5095
                            - L_PAREN@5079..5080 "("
                            - ARGUMENT@5080..5094
                                - NAME@5080..5085
                                    - IDENT@5080..5085 "graph"
                                - COLON@5085..5086 ":"
                                - WHITESPACE@5086..5087 " "
                                - ENUM_VALUE@5087..5094
                                    - NAME@5087..5094
                                        - IDENT@5087..5094 "PRODUCT"
                            - R_PAREN@5094..5095 ")"
            - WHITESPACE@5095..5098 "\n  "
            - FIELD_DEFINITION@5098..5165
                - NAME@5098..5109
                    - IDENT@5098..5109 "topProducts"
                - ARGUMENTS_DEFINITION@5109..5125
                    - L_PAREN@5109..5110 "("
                    - INPUT_VALUE_DEFINITION@5110..5124
                        - NAME@5110..5115
                            - IDENT@5110..5115 "first"
                        - COLON@5115..5116 ":"
                        - WHITESPACE@5116..5117 " "
                        - NAMED_TYPE@5117..5120
                            - NAME@5117..5120
                                - IDENT@5117..5120 "Int"
                        - WHITESPACE@5120..5121 " "
                        - DEFAULT_VALUE@5121..5124
                            - EQ@5121..5122 "="
                            - WHITESPACE@5122..5123 " "
                            - INT_VALUE@5123..5124
                                - INT@5123..5124 "5"
                    - R_PAREN@5124..5125 ")"
                - COLON@5125..5126 ":"
                - WHITESPACE@5126..5127 " "
                - LIST_TYPE@5127..5136
                    - L_BRACK@5127..5128 "["
                    - NAMED_TYPE@5128..5135
                        - NAME@5128..5135
                            - IDENT@5128..5135 "Product"
                    - R_BRACK@5135..5136 "]"
                - WHITESPACE@5136..5137 " "
                - DIRECTIVES@5137..5165
                    - DIRECTIVE@5137..5165
                        - AT@5137..5138 "@"
                        - NAME@5138..5149
                            - IDENT@5138..5149 "join__field"
                        - ARGUMENTS@5149..5165
                            - L_PAREN@5149..5150 "("
                            - ARGUMENT@5150..5164
                                - NAME@5150..5155
                                    - IDENT@5150..5155 "graph"
                                - COLON@5155..5156 ":"
                                - WHITESPACE@5156..5157 " "
                                - ENUM_VALUE@5157..5164
                                    - NAME@5157..5164
                                        - IDENT@5157..5164 "PRODUCT"
                            - R_PAREN@5164..5165 ")"
            - WHITESPACE@5165..5168 "\n  "
            - FIELD_DEFINITION@5168..5227
                - NAME@5168..5175
                    - IDENT@5168..5175 "topCars"
                - ARGUMENTS_DEFINITION@5175..5191
                    - L_PAREN@5175..5176 "("
                    - INPUT_VALUE_DEFINITION@5176..5190
                        - NAME@5176..5181
                            - IDENT@5176..5181 "first"
                        - COLON@5181..5182 ":"
                        - WHITESPACE@5182..5183 " "
                        - NAMED_TYPE@5183..5186
                            - NAME@5183..5186
                                - IDENT@5183..5186 "Int"
                        - WHITESPACE@5186..5187 " "
                        - DEFAULT_VALUE@5187..5190
                            - EQ@5187..5188 "="
                            - WHITESPACE@5188..5189 " "
                            - INT_VALUE@5189..5190
                                - INT@5189..5190 "5"
                    - R_PAREN@5190..5191 ")"
                - COLON@5191..5192 ":"
                - WHITESPACE@5192..5193 " "
                - LIST_TYPE@5193..5198
                    - L_BRACK@5193..5194 "["
                    - NAMED_TYPE@5194..5197
                        - NAME@5194..5197
                            - IDENT@5194..5197 "Car"
                    - R_BRACK@5197..5198 "]"
                - WHITESPACE@5198..5199 " "
                - DIRECTIVES@5199..5227
                    - DIRECTIVE@5199..5227
                        - AT@5199..5200 "@"
                        - NAME@5200..5211
                            - IDENT@5200..5211 "join__field"
                        - ARGUMENTS@5211..5227
                            - L_PAREN@5211..5212 "("
                            - ARGUMENT@5212..5226
                                - NAME@5212..5217
                                    - IDENT@5212..5217 "graph"
                                - COLON@5217..5218 ":"
                                - WHITESPACE@5218..5219 " "
                                - ENUM_VALUE@5219..5226
                                    - NAME@5219..5226
                                        - IDENT@5219..5226 "PRODUCT"
                            - R_PAREN@5226..5227 ")"
            - WHITESPACE@5227..5230 "\n  "
            - FIELD_DEFINITION@5230..5295
                - NAME@5230..5240
                    - IDENT@5230..5240 "topReviews"
                - ARGUMENTS_DEFINITION@5240..5256
                    - L_PAREN@5240..5241 "("
                    - INPUT_VALUE_DEFINITION@5241..5255
                        - NAME@5241..5246
                            - IDENT@5241..5246 "first"
                        - COLON@5246..5247 ":"
                        - WHITESPACE@5247..5248 " "
                        - NAMED_TYPE@5248..5251
                            - NAME@5248..5251
                                - IDENT@5248..5251 "Int"
                        - WHITESPACE@5251..5252 " "
                        - DEFAULT_VALUE@5252..5255
                            - EQ@5252..5253 "="
                            - WHITESPACE@5253..5254 " "
                            - INT_VALUE@5254..5255
                                - INT@5254..5255 "5"
                    - R_PAREN@5255..5256 ")"
                - COLON@5256..5257 ":"
                - WHITESPACE@5257..5258 " "
                - LIST_TYPE@5258..5266
                    - L_BRACK@5258..5259 "["
                    - NAMED_TYPE@5259..5265
                        - NAME@5259..5265
                            - IDENT@5259..5265 "Review"
                    - R_BRACK@5265..5266 "]"
                - WHITESPACE@5266..5267 " "
                - DIRECTIVES@5267..5295
                    - DIRECTIVE@5267..5295
                        - AT@5267..5268 "@"
                        - NAME@5268..5279
                            - IDENT@5268..5279 "join__field"
                        - ARGUMENTS@5279..5295
                            - L_PAREN@5279..5280 "("
                            - ARGUMENT@5280..5294
                                - NAME@5280..5285
                                    - IDENT@5280..5285 "graph"
                                - COLON@5285..5286 ":"
                                - WHITESPACE@5286..5287 " "
                                - ENUM_VALUE@5287..5294
                                    - NAME@5287..5294
                                        - IDENT@5287..5294 "REVIEWS"
                            - R_PAREN@5294..5295 ")"
            - WHITESPACE@5295..5296 "\n"
            - R_CURLY@5296..5297 "}"
    - WHITESPACE@5297..5299 "\n\n"
    - OBJECT_TYPE_DEFINITION@5299..5663
        - type_KW@5299..5303 "type"
        - WHITESPACE@5303..5304 " "
        - NAME@5304..5310
            - IDENT@5304..5310 "Review"
        - WHITESPACE@5310..5311 "\n"
        - DIRECTIVES@5311..5378
            - DIRECTIVE@5311..5339
                - AT@5311..5312 "@"
                - NAME@5312..5323
                    - IDENT@5312..5323 "join__owner"
                - ARGUMENTS@5323..5339
                    - L_PAREN@5323..5324 "("
                    - ARGUMENT@5324..5338
                        - NAME@5324..5329
                            - IDENT@5324..5329 "graph"
                        - COLON@5329..5330 ":"
                        - WHITESPACE@5330..5331 " "
                        - ENUM_VALUE@5331..5338
                            - NAME@5331..5338
                                - IDENT@5331..5338 "REVIEWS"
                    - R_PAREN@5338..5339 ")"
            - WHITESPACE@5339..5340 "\n"
            - DIRECTIVE@5340..5378
                - AT@5340..5341 "@"
                - NAME@5341..5351
                    - IDENT@5341..5351 "join__type"
                - ARGUMENTS@5351..5378
                    - L_PAREN@5351..5352 "("
                    - ARGUMENT@5352..5366
                        - NAME@5352..5357
                            - IDENT@5352..5357 "graph"
                        - COLON@5357..5358 ":"
                        - WHITESPACE@5358..5359 " "
                        - ENUM_VALUE@5359..5366
                            - NAME@5359..5366
                                - IDENT@5359..5366 "REVIEWS"
                    - COMMA@5366..5367 ","
                    - WHITESPACE@5367..5368 " "
                    - ARGUMENT@5368..5377
                        - NAME@5368..5371
                            - IDENT@5368..5371 "key"
                        - COLON@5371..5372 ":"
                        - WHITESPACE@5372..5373 " "
                        - STRING_VALUE@5373..5377
                            - STRING@5373..5377 "\"id\""
                    - R_PAREN@5377..5378 ")"
        - WHITESPACE@5378..5379 "\n"
        - FIELDS_DEFINITION@5379..5663
            - L_CURLY@5379..5380 "{"
            - WHITESPACE@5380..5383 "\n  "
            - FIELD_DEFINITION@5383..5419
                - NAME@5383..5385
                    - IDENT@5383..5385 "id"
                - COLON@5385..5386 ":"
                - WHITESPACE@5386..5387 " "
                - NON_NULL_TYPE@5387..5390
                    - NAMED_TYPE@5387..5389
                        - NAME@5387..5389
                            - IDENT@5387..5389 "ID"
                    - BANG@5389..5390 "!"
                - WHITESPACE@5390..5391 " "
                - DIRECTIVES@5391..5419
                    - DIRECTIVE@5391..5419
                        - AT@5391..5392 "@"
                        - NAME@5392..5403
                            - IDENT@5392..5403 "join__field"
                        - ARGUMENTS@5403..5419
                            - L_PAREN@5403..5404 "("
                            - ARGUMENT@5404..5418
                                - NAME@5404..5409
                                    - IDENT@5404..5409 "graph"
                                - COLON@5409..5410 ":"
                                - WHITESPACE@5410..5411 " "
                                - ENUM_VALUE@5411..5418
                                    - NAME@5411..5418
                                        - IDENT@5411..5418 "REVIEWS"
                            - R_PAREN@5418..5419 ")"
            - WHITESPACE@5419..5422 "\n  "
            - FIELD_DEFINITION@5422..5488
                - NAME@5422..5426
                    - IDENT@5422..5426 "body"
                - ARGUMENTS_DEFINITION@5426..5451
                    - L_PAREN@5426..5427 "("
                    - INPUT_VALUE_DEFINITION@5427..5450
                        - NAME@5427..5433
                            - IDENT@5427..5433 "format"
                        - COLON@5433..5434 ":"
                        - WHITESPACE@5434..5435 " "
                        - NAMED_TYPE@5435..5442
                            - NAME@5435..5442
                                - IDENT@5435..5442 "Boolean"
                        - WHITESPACE@5442..5443 " "
                        - DEFAULT_VALUE@5443..5450
                            - EQ@5443..5444 "="
                            - WHITESPACE@5444..5445 " "
                            - BOOLEAN_VALUE@5445..5450
                                - false_KW@5445..5450 "false"
                    - R_PAREN@5450..5451 ")"
                - COLON@5451..5452 ":"
                - WHITESPACE@5452..5453 " "
                - NAMED_TYPE@5453..5459
                    - NAME@5453..5459
                        - IDENT@5453..5459 "String"
                - WHITESPACE@5459..5460 " "
                - DIRECTIVES@5460..5488
                    - DIRECTIVE@5460..5488
                        - AT@5460..5461 "@"
                        - NAME@5461..5472
                            - IDENT@5461..5472 "join__field"
                        - ARGUMENTS@5472..5488
                            - L_PAREN@5472..5473 "("
                            - ARGUMENT@5473..5487
                                - NAME@5473..5478
                                    - IDENT@5473..5478 "graph"
                                - COLON@5478..5479 ":"
                                - WHITESPACE@5479..5480 " "
                                - ENUM_VALUE@5480..5487
                                    - NAME@5480..5487
                                        - IDENT@5480..5487 "REVIEWS"
                            - R_PAREN@5487..5488 ")"
            - WHITESPACE@5488..5491 "\n  "
            - FIELD_DEFINITION@5491..5554
                - NAME@5491..5497
                    - IDENT@5491..5497 "author"
                - COLON@5497..5498 ":"
                - WHITESPACE@5498..5499 " "
                - NAMED_TYPE@5499..5503
                    - NAME@5499..5503
                        - IDENT@5499..5503 "User"
                - WHITESPACE@5503..5504 " "
                - DIRECTIVES@5504..5554
                    - DIRECTIVE@5504..5554
                        - AT@5504..5505 "@"
                        - NAME@5505..5516
                            - IDENT@5505..5516 "join__field"
                        - ARGUMENTS@5516..5554
                            - L_PAREN@5516..5517 "("
                            - ARGUMENT@5517..5531
                                - NAME@5517..5522
                                    - IDENT@5517..5522 "graph"
                                - COLON@5522..5523 ":"
                                - WHITESPACE@5523..5524 " "
                                - ENUM_VALUE@5524..5531
                                    - NAME@5524..5531
                                        - IDENT@5524..5531 "REVIEWS"
                            - COMMA@5531..5532 ","
                            - WHITESPACE@5532..5533 " "
                            - ARGUMENT@5533..5553
                                - NAME@5533..5541
                                    - IDENT@5533..5541 "provides"
                                - COLON@5541..5542 ":"
                                - WHITESPACE@5542..5543 " "
                                - STRING_VALUE@5543..5553
                                    - STRING@5543..5553 "\"username\""
                            - R_PAREN@5553..5554 ")"
            - WHITESPACE@5554..5557 "\n  "
            - FIELD_DEFINITION@5557..5602
                - NAME@5557..5564
                    - IDENT@5557..5564 "product"
                - COLON@5564..5565 ":"
                - WHITESPACE@5565..5566 " "
                - NAMED_TYPE@5566..5573
                    - NAME@5566..5573
                        - IDENT@5566..5573 "Product"
                - WHITESPACE@5573..5574 " "
                - DIRECTIVES@5574..5602
                    - DIRECTIVE@5574..5602
                        - AT@5574..5575 "@"
                        - NAME@5575..5586
                            - IDENT@5575..5586 "join__field"
                        - ARGUMENTS@5586..5602
                            - L_PAREN@5586..5587 "("
                            - ARGUMENT@5587..5601
                                - NAME@5587..5592
                                    - IDENT@5587..5592 "graph"
                                - COLON@5592..5593 ":"
                                - WHITESPACE@5593..5594 " "
                                - ENUM_VALUE@5594..5601
                                    - NAME@5594..5601
                                        - IDENT@5594..5601 "REVIEWS"
                            - R_PAREN@5601..5602 ")"
            - WHITESPACE@5602..5605 "\n  "
            - FIELD_DEFINITION@5605..5661
                - NAME@5605..5613
                    - IDENT@5605..5613 "metadata"
                - COLON@5613..5614 ":"
                - WHITESPACE@5614..5615 " "
                - LIST_TYPE@5615..5632
                    - L_BRACK@5615..5616 "["
                    - NAMED_TYPE@5616..5631
                        - NAME@5616..5631
                            - IDENT@5616..5631 "MetadataOrError"
                    - R_BRACK@5631..5632 "]"
                - WHITESPACE@5632..5633 " "
                - DIRECTIVES@5633..5661
                    - DIRECTIVE@5633..5661
                        - AT@5633..5634 "@"
                        - NAME@5634..5645
                            - IDENT@5634..5645 "join__field"
                        - ARGUMENTS@5645..5661
                            - L_PAREN@5645..5646 "("
                            - ARGUMENT@5646..5660
                                - NAME@5646..5651
                                    - IDENT@5646..5651 "graph"
                                - COLON@5651..5652 ":"
                                - WHITESPACE@5652..5653 " "
                                - ENUM_VALUE@5653..5660
                                    - NAME@5653..5660
                                        - IDENT@5653..5660 "REVIEWS"
                            - R_PAREN@5660..5661 ")"
            - WHITESPACE@5661..5662 "\n"
            - R_CURLY@5662..5663 "}"
    - WHITESPACE@5663..5665 "\n\n"
    - OBJECT_TYPE_DEFINITION@5665..5805
        - type_KW@5665..5669 "type"
        - WHITESPACE@5669..5670 " "
        - NAME@5670..5680
            - IDENT@5670..5680 "SMSAccount"
        - WHITESPACE@5680..5681 "\n"
        - DIRECTIVES@5681..5754
            - DIRECTIVE@5681..5710
                - AT@5681..5682 "@"
                - NAME@5682..5693
                    - IDENT@5682..5693 "join__owner"
                - ARGUMENTS@5693..5710
                    - L_PAREN@5693..5694 "("
                    - ARGUMENT@5694..5709
                        - NAME@5694..5699
                            - IDENT@5694..5699 "graph"
                        - COLON@5699..5700 ":"
                        - WHITESPACE@5700..5701 " "
                        - ENUM_VALUE@5701..5709
                            - NAME@5701..5709
                                - IDENT@5701..5709 "ACCOUNTS"
                    - R_PAREN@5709..5710 ")"
            - WHITESPACE@5710..5711 "\n"
            - DIRECTIVE@5711..5754
                - AT@5711..5712 "@"
                - NAME@5712..5722
                    - IDENT@5712..5722 "join__type"
                - ARGUMENTS@5722..5754
                    - L_PAREN@5722..5723 "("
                    - ARGUMENT@5723..5738
                        - NAME@5723..5728
                            - IDENT@5723..5728 "graph"
                        - COLON@5728..5729 ":"
                        - WHITESPACE@5729..5730 " "
                        - ENUM_VALUE@5730..5738
                            - NAME@5730..5738
                                - IDENT@5730..5738 "ACCOUNTS"
                    - COMMA@5738..5739 ","
                    - WHITESPACE@5739..5740 " "
                    - ARGUMENT@5740..5753
                        - NAME@5740..5743
                            - IDENT@5740..5743 "key"
                        - COLON@5743..5744 ":"
                        - WHITESPACE@5744..5745 " "
                        - STRING_VALUE@5745..5753
                            - STRING@5745..5753 "\"number\""
                    - R_PAREN@5753..5754 ")"
        - WHITESPACE@5754..5755 "\n"
        - FIELDS_DEFINITION@5755..5805
            - L_CURLY@5755..5756 "{"
            - WHITESPACE@5756..5759 "\n  "
            - FIELD_DEFINITION@5759..5803
                - NAME@5759..5765
                    - IDENT@5759..5765 "number"
                - COLON@5765..5766 ":"
                - WHITESPACE@5766..5767 " "
                - NAMED_TYPE@5767..5773
                    - NAME@5767..5773
                        - IDENT@5767..5773 "String"
                - WHITESPACE@5773..5774 " "
                - DIRECTIVES@5774..5803
                    - DIRECTIVE@5774..5803
                        - AT@5774..5775 "@"
                        - NAME@5775..5786
                            - IDENT@5775..5786 "join__field"
                        - ARGUMENTS@5786..5803
                            - L_PAREN@5786..5787 "("
                            - ARGUMENT@5787..5802
                                - NAME@5787..5792
                                    - IDENT@5787..5792 "graph"
                                - COLON@5792..5793 ":"
                                - WHITESPACE@5793..5794 " "
                                - ENUM_VALUE@5794..5802
                                    - NAME@5794..5802
                                        - IDENT@5794..5802 "ACCOUNTS"
                            - R_PAREN@5802..5803 ")"
            - WHITESPACE@5803..5804 "\n"
            - R_CURLY@5804..5805 "}"
    - WHITESPACE@5805..5807 "\n\n"
    - OBJECT_TYPE_DEFINITION@5807..5889
        - type_KW@5807..5811 "type"
        - WHITESPACE@5811..5812 " "
        - NAME@5812..5816
            - IDENT@5812..5816 "Text"
        - WHITESPACE@5816..5817 " "
        - IMPLEMENTS_INTERFACES@5817..5839
            - implements_KW@5817..5827 "implements"
            - WHITESPACE@5827..5828 " "
            - NAMED_TYPE@5828..5839
                - NAME@5828..5839
                    - IDENT@5828..5839 "NamedObject"
        - WHITESPACE@5839..5840 " "
        - FIELDS_DEFINITION@5840..5889
            - L_CURLY@5840..5841 "{"
            - WHITESPACE@5841..5844 "\n  "
            - FIELD_DEFINITION@5844..5857
                - NAME@5844..5848
                    - IDENT@5844..5848 "name"
                - COLON@5848..5849 ":"
                - WHITESPACE@5849..5850 " "
                - NON_NULL_TYPE@5850..5857
                    - NAMED_TYPE@5850..5856
                        - NAME@5850..5856
                            - IDENT@5850..5856 "String"
                    - BANG@5856..5857 "!"
            - WHITESPACE@5857..5860 "\n  "
            - FIELD_DEFINITION@5860..5887
                - NAME@5860..5870
                    - IDENT@5860..5870 "attributes"
                - COLON@5870..5871 ":"
                - WHITESPACE@5871..5872 " "
                - NON_NULL_TYPE@5872..5887
                    - NAMED_TYPE@5872..5886
                        - NAME@5872..5886
                            - IDENT@5872..5886 "TextAttributes"
                    - BANG@5886..5887 "!"
            - WHITESPACE@5887..5888 "\n"
            - R_CURLY@5888..5889 "}"
    - WHITESPACE@5889..5891 "\n\n"
    - OBJECT_TYPE_DEFINITION@5891..5945
        - type_KW@5891..5895 "type"
        - WHITESPACE@5895..5896 " "
        - NAME@5896..5910
            - IDENT@5896..5910 "TextAttributes"
        - WHITESPACE@5910..5911 " "
        - FIELDS_DEFINITION@5911..5945
            - L_CURLY@5911..5912 "{"
            - WHITESPACE@5912..5915 "\n  "
            - FIELD_DEFINITION@5915..5928
                - NAME@5915..5919
                    - IDENT@5915..5919 "bold"
                - COLON@5919..5920 ":"
                - WHITESPACE@5920..5921 " "
                - NAMED_TYPE@5921..5928
                    - NAME@5921..5928
                        - IDENT@5921..5928 "Boolean"
            - WHITESPACE@5928..5931 "\n  "
            - FIELD_DEFINITION@5931..5943
                - NAME@5931..5935
                    - IDENT@5931..5935 "text"
                - COLON@5935..5936 ":"
                - WHITESPACE@5936..5937 " "
                - NAMED_TYPE@5937..5943
                    - NAME@5937..5943
                        - IDENT@5937..5943 "String"
            - WHITESPACE@5943..5944 "\n"
            - R_CURLY@5944..5945 "}"
    - WHITESPACE@5945..5947 "\n\n"
    - UNION_TYPE_DEFINITION@5947..5971
        - union_KW@5947..5952 "union"
        - WHITESPACE@5952..5953 " "
        - NAME@5953..5958
            - IDENT@5953..5958 "Thing"
        - WHITESPACE@5958..5959 " "
        - UNION_MEMBER_TYPES@5959..5971
            - EQ@5959..5960 "="
            - WHITESPACE@5960..5961 " "
            - NAMED_TYPE@5961..5964
                - NAME@5961..5964
                    - IDENT@5961..5964 "Car"
            - WHITESPACE@5964..5965 " "
            - PIPE@5965..5966 "|"
            - WHITESPACE@5966..5967 " "
            - NAMED_TYPE@5967..5971
                - NAME@5967..5971
                    - IDENT@5967..5971 "Ikea"
    - WHITESPACE@5971..5973 "\n\n"
    - INPUT_OBJECT_TYPE_DEFINITION@5973..6025
        - input_KW@5973..5978 "input"
        - WHITESPACE@5978..5979 " "
        - NAME@5979..5996
            - IDENT@5979..5996 "UpdateReviewInput"
        - WHITESPACE@5996..5997 " "
        - INPUT_FIELDS_DEFINITION@5997..6025
            - L_CURLY@5997..5998 "{"
            - WHITESPACE@5998..6001 "\n  "
            - INPUT_VALUE_DEFINITION@6001..6008
                - NAME@6001..6003
                    - IDENT@6001..6003 "id"
                - COLON@6003..6004 ":"
                - WHITESPACE@6004..6005 " "
                - NON_NULL_TYPE@6005..6008
                    - NAMED_TYPE@6005..6007
                        - NAME@6005..6007
                            - IDENT@6005..6007 "ID"
                    - BANG@6007..6008 "!"
            - WHITESPACE@6008..6011 "\n  "
            - INPUT_VALUE_DEFINITION@6011..6023
                - NAME@6011..6015
                    - IDENT@6011..6015 "body"
                - COLON@6015..6016 ":"
                - WHITESPACE@6016..6017 " "
                - NAMED_TYPE@6017..6023
                    - NAME@6017..6023
                        - IDENT@6017..6023 "String"
            - WHITESPACE@6023..6024 "\n"
            - R_CURLY@6024..6025 "}"
    - WHITESPACE@6025..6027 "\n\n"
    - OBJECT_TYPE_DEFINITION@6027..6970
        - type_KW@6027..6031 "type"
        - WHITESPACE@6031..6032 " "
        - NAME@6032..6036
            - IDENT@6032..6036 "User"
        - WHITESPACE@6036..6037 "\n"
        - DIRECTIVES@6037..6288
            - DIRECTIVE@6037..6066
                - AT@6037..6038 "@"
                - NAME@6038..6049
                    - IDENT@6038..6049 "join__owner"
                - ARGUMENTS@6049..6066
                    - L_PAREN@6049..6050 "("
                    - ARGUMENT@6050..6065
                        - NAME@6050..6055
                            - IDENT@6050..6055 "graph"
                        - COLON@6055..6056 ":"
                        - WHITESPACE@6056..6057 " "
                        - ENUM_VALUE@6057..6065
                            - NAME@6057..6065
                                - IDENT@6057..6065 "ACCOUNTS"
                    - R_PAREN@6065..6066 ")"
            - WHITESPACE@6066..6067 "\n"
            - DIRECTIVE@6067..6106
                - AT@6067..6068 "@"
                - NAME@6068..6078
                    - IDENT@6068..6078 "join__type"
                - ARGUMENTS@6078..6106
                    - L_PAREN@6078..6079 "("
                    - ARGUMENT@6079..6094
                        - NAME@6079..6084
                            - IDENT@6079..6084 "graph"
                        - COLON@6084..6085 ":"
                        - WHITESPACE@6085..6086 " "
                        - ENUM_VALUE@6086..6094
                            - NAME@6086..6094
                                - IDENT@6086..6094 "ACCOUNTS"
                    - COMMA@6094..6095 ","
                    - WHITESPACE@6095..6096 " "
                    - ARGUMENT@6096..6105
                        - NAME@6096..6099
                            - IDENT@6096..6099 "key"
                        - COLON@6099..6100 ":"
                        - WHITESPACE@6100..6101 " "
                        - STRING_VALUE@6101..6105
                            - STRING@6101..6105 "\"id\""
                    - R_PAREN@6105..6106 ")"
            - WHITESPACE@6106..6107 "\n"
            - DIRECTIVE@6107..6169
                - AT@6107..6108 "@"
                - NAME@6108..6118
                    - IDENT@6108..6118 "join__type"
                - ARGUMENTS@6118..6169
                    - L_PAREN@6118..6119 "("
                    - ARGUMENT@6119..6134
                        - NAME@6119..6124
                            - IDENT@6119..6124 "graph"
                        - COLON@6124..6125 ":"
                        - WHITESPACE@6125..6126 " "
                        - ENUM_VALUE@6126..6134
                            - NAME@6126..6134
                                - IDENT@6126..6134 "ACCOUNTS"
                    - COMMA@6134..6135 ","
                    - WHITESPACE@6135..6136 " "
                    - ARGUMENT@6136..6168
                        - NAME@6136..6139
                            - IDENT@6136..6139 "key"
                        - COLON@6139..6140 ":"
                        - WHITESPACE@6140..6141 " "
                        - STRING_VALUE@6141..6168
                            - STRING@6141..6168 "\"username name{first last}\""
                    - R_PAREN@6168..6169 ")"
            - WHITESPACE@6169..6170 "\n"
            - DIRECTIVE@6170..6210
                - AT@6170..6171 "@"
                - NAME@6171..6181
                    - IDENT@6171..6181 "join__type"
                - ARGUMENTS@6181..6210
                    - L_PAREN@6181..6182 "("
                    - ARGUMENT@6182..6198
                        - NAME@6182..6187
                            - IDENT@6182..6187 "graph"
                        - COLON@6187..6188 ":"
                        - WHITESPACE@6188..6189 " "
                        - ENUM_VALUE@6189..6198
                            - NAME@6189..6198
                                - IDENT@6189..6198 "INVENTORY"
                    - COMMA@6198..6199 ","
                    - WHITESPACE@6199..6200 " "
                    - ARGUMENT@6200..6209
                        - NAME@6200..6203
                            - IDENT@6200..6203 "key"
                        - COLON@6203..6204 ":"
                        - WHITESPACE@6204..6205 " "
                        - STRING_VALUE@6205..6209
                            - STRING@6205..6209 "\"id\""
                    - R_PAREN@6209..6210 ")"
            - WHITESPACE@6210..6211 "\n"
            - DIRECTIVE@6211..6249
                - AT@6211..6212 "@"
                - NAME@6212..6222
                    - IDENT@6212..6222 "join__type"
                - ARGUMENTS@6222..6249
                    - L_PAREN@6222..6223 "("
                    - ARGUMENT@6223..6237
                        - NAME@6223..6228
                            - IDENT@6223..6228 "graph"
                        - COLON@6228..6229 ":"
                        - WHITESPACE@6229..6230 " "
                        - ENUM_VALUE@6230..6237
                            - NAME@6230..6237
                                - IDENT@6230..6237 "PRODUCT"
                    - COMMA@6237..6238 ","
                    - WHITESPACE@6238..6239 " "
                    - ARGUMENT@6239..6248
                        - NAME@6239..6242
                            - IDENT@6239..6242 "key"
                        - COLON@6242..6243 ":"
                        - WHITESPACE@6243..6244 " "
                        - STRING_VALUE@6244..6248
                            - STRING@6244..6248 "\"id\""
                    - R_PAREN@6248..6249 ")"
            - WHITESPACE@6249..6250 "\n"
            - DIRECTIVE@6250..6288
                - AT@6250..6251 "@"
                - NAME@6251..6261
                    - IDENT@6251..6261 "join__type"
                - ARGUMENTS@6261..6288
                    - L_PAREN@6261..6262 "("
                    - ARGUMENT@6262..6276
                        - NAME@6262..6267
                            - IDENT@6262..6267 "graph"
                        - COLON@6267..6268 ":"
                        - WHITESPACE@6268..6269 " "
                        - ENUM_VALUE@6269..6276
                            - NAME@6269..6276
                                - IDENT@6269..6276 "REVIEWS"
                    - COMMA@6276..6277 ","
                    - WHITESPACE@6277..6278 " "
                    - ARGUMENT@6278..6287
                        - NAME@6278..6281
                            - IDENT@6278..6281 "key"
                        - COLON@6281..6282 ":"
                        - WHITESPACE@6282..6283 " "
                        - STRING_VALUE@6283..6287
                            - STRING@6283..6287 "\"id\""
                    - R_PAREN@6287..6288 ")"
        - WHITESPACE@6288..6289 "\n"
        - FIELDS_DEFINITION@6289..6970
            - L_CURLY@6289..6290 "{"
            - WHITESPACE@6290..6293 "\n  "
            - FIELD_DEFINITION@6293..6330
                - NAME@6293..6295
                    - IDENT@6293..6295 "id"
                - COLON@6295..6296 ":"
                - WHITESPACE@6296..6297 " "
                - NON_NULL_TYPE@6297..6300
                    - NAMED_TYPE@6297..6299
                        - NAME@6297..6299
                            - IDENT@6297..6299 "ID"
                    - BANG@6299..6300 "!"
                - WHITESPACE@6300..6301 " "
                - DIRECTIVES@6301..6330
                    - DIRECTIVE@6301..6330
                        - AT@6301..6302 "@"
                        - NAME@6302..6313
                            - IDENT@6302..6313 "join__field"
                        - ARGUMENTS@6313..6330
                            - L_PAREN@6313..6314 "("
                            - ARGUMENT@6314..6329
                                - NAME@6314..6319
                                    - IDENT@6314..6319 "graph"
                                - COLON@6319..6320 ":"
                                - WHITESPACE@6320..6321 " "
                                - ENUM_VALUE@6321..6329
                                    - NAME@6321..6329
                                        - IDENT@6321..6329 "ACCOUNTS"
                            - R_PAREN@6329..6330 ")"
            - WHITESPACE@6330..6333 "\n  "
            - FIELD_DEFINITION@6333..6373
                - NAME@6333..6337
                    - IDENT@6333..6337 "name"
                - COLON@6337..6338 ":"
                - WHITESPACE@6338..6339 " "
                - NAMED_TYPE@6339..6343
                    - NAME@6339..6343
                        - IDENT@6339..6343 "Name"
                - WHITESPACE@6343..6344 " "
                - DIRECTIVES@6344..6373
                    - DIRECTIVE@6344..6373
                        - AT@6344..6345 "@"
                        - NAME@6345..6356
                            - IDENT@6345..6356 "join__field"
                        - ARGUMENTS@6356..6373
                            - L_PAREN@6356..6357 "("
                            - ARGUMENT@6357..6372
                                - NAME@6357..6362
                                    - IDENT@6357..6362 "graph"
                                - COLON@6362..6363 ":"
                                - WHITESPACE@6363..6364 " "
                                - ENUM_VALUE@6364..6372
                                    - NAME@6364..6372
                                        - IDENT@6364..6372 "ACCOUNTS"
                            - R_PAREN@6372..6373 ")"
            - WHITESPACE@6373..6376 "\n  "
            - FIELD_DEFINITION@6376..6422
                - NAME@6376..6384
                    - IDENT@6376..6384 "username"
                - COLON@6384..6385 ":"
                - WHITESPACE@6385..6386 " "
                - NAMED_TYPE@6386..6392
                    - NAME@6386..6392
                        - IDENT@6386..6392 "String"
                - WHITESPACE@6392..6393 " "
                - DIRECTIVES@6393..6422
                    - DIRECTIVE@6393..6422
                        - AT@6393..6394 "@"
                        - NAME@6394..6405
                            - IDENT@6394..6405 "join__field"
                        - ARGUMENTS@6405..6422
                            - L_PAREN@6405..6406 "("
                            - ARGUMENT@6406..6421
                                - NAME@6406..6411
                                    - IDENT@6406..6411 "graph"
                                - COLON@6411..6412 ":"
                                - WHITESPACE@6412..6413 " "
                                - ENUM_VALUE@6413..6421
                                    - NAME@6413..6421
                                        - IDENT@6413..6421 "ACCOUNTS"
                            - R_PAREN@6421..6422 ")"
            - WHITESPACE@6422..6425 "\n  "
            - FIELD_DEFINITION@6425..6488
                - NAME@6425..6434
                    - IDENT@6425..6434 "birthDate"
                - ARGUMENTS_DEFINITION@6434..6450
                    - L_PAREN@6434..6435 "("
                    - INPUT_VALUE_DEFINITION@6435..6449
                        - NAME@6435..6441
                            - IDENT@6435..6441 "locale"
                        - COLON@6441..6442 ":"
                        - WHITESPACE@6442..6443 " "
                        - NAMED_TYPE@6443..6449
                            - NAME@6443..6449
                                - IDENT@6443..6449 "String"
                    - R_PAREN@6449..6450 ")"
                - COLON@6450..6451 ":"
                - WHITESPACE@6451..6452 " "
                - NAMED_TYPE@6452..6458
                    - NAME@6452..6458
                        - IDENT@6452..6458 "String"
                - WHITESPACE@6458..6459 " "
                - DIRECTIVES@6459..6488
                    - DIRECTIVE@6459..6488
                        - AT@6459..6460 "@"
                        - NAME@6460..6471
                            - IDENT@6460..6471 "join__field"
                        - ARGUMENTS@6471..6488
                            - L_PAREN@6471..6472 "("
                            - ARGUMENT@6472..6487
                                - NAME@6472..6477
                                    - IDENT@6472..6477 "graph"
                                - COLON@6477..6478 ":"
                                - WHITESPACE@6478..6479 " "
                                - ENUM_VALUE@6479..6487
                                    - NAME@6479..6487
                                        - IDENT@6479..6487 "ACCOUNTS"
                            - R_PAREN@6487..6488 ")"
            - WHITESPACE@6488..6491 "\n  "
            - FIELD_DEFINITION@6491..6541
                - NAME@6491..6498
                    - IDENT@6491..6498 "account"
                - COLON@6498..6499 ":"
                - WHITESPACE@6499..6500 " "
                - NAMED_TYPE@6500..6511
                    - NAME@6500..6511
                        - IDENT@6500..6511 "AccountType"
                - WHITESPACE@6511..6512 " "
                - DIRECTIVES@6512..6541
                    - DIRECTIVE@6512..6541
                        - AT@6512..6513 "@"
                        - NAME@6513..6524
                            - IDENT@6513..6524 "join__field"
                        - ARGUMENTS@6524..6541
                            - L_PAREN@6524..6525 "("
                            - ARGUMENT@6525..6540
                                - NAME@6525..6530
                                    - IDENT@6525..6530 "graph"
                                - COLON@6530..6531 ":"
                                - WHITESPACE@6531..6532 " "
                                - ENUM_VALUE@6532..6540
                                    - NAME@6532..6540
                                        - IDENT@6532..6540 "ACCOUNTS"
                            - R_PAREN@6540..6541 ")"
            - WHITESPACE@6541..6544 "\n  "
            - FIELD_DEFINITION@6544..6598
                - NAME@6544..6552
                    - IDENT@6544..6552 "metadata"
                - COLON@6552..6553 ":"
                - WHITESPACE@6553..6554 " "
                - LIST_TYPE@6554..6568
                    - L_BRACK@6554..6555 "["
                    - NAMED_TYPE@6555..6567
                        - NAME@6555..6567
                            - IDENT@6555..6567 "UserMetadata"
                    - R_BRACK@6567..6568 "]"
                - WHITESPACE@6568..6569 " "
                - DIRECTIVES@6569..6598
                    - DIRECTIVE@6569..6598
                        - AT@6569..6570 "@"
                        - NAME@6570..6581
                            - IDENT@6570..6581 "join__field"
                        - ARGUMENTS@6581..6598
                            - L_PAREN@6581..6582 "("
                            - ARGUMENT@6582..6597
                                - NAME@6582..6587
                                    - IDENT@6582..6587 "graph"
                                - COLON@6587..6588 ":"
                                - WHITESPACE@6588..6589 " "
                                - ENUM_VALUE@6589..6597
                                    - NAME@6589..6597
                                        - IDENT@6589..6597 "ACCOUNTS"
                            - R_PAREN@6597..6598 ")"
            - WHITESPACE@6598..6601 "\n  "
            - FIELD_DEFINITION@6601..6691
                - NAME@6601..6616
                    - IDENT@6601..6616 "goodDescription"
                - COLON@6616..6617 ":"
                - WHITESPACE@6617..6618 " "
                - NAMED_TYPE@6618..6625
                    - NAME@6618..6625
                        - IDENT@6618..6625 "Boolean"
                - WHITESPACE@6625..6626 " "
                - DIRECTIVES@6626..6691
                    - DIRECTIVE@6626..6691
                        - AT@6626..6627 "@"
                        - NAME@6627..6638
                            - IDENT@6627..6638 "join__field"
                        - ARGUMENTS@6638..6691
                            - L_PAREN@6638..6639 "("
                            - ARGUMENT@6639..6655
                                - NAME@6639..6644
                                    - IDENT@6639..6644 "graph"
                                - COLON@6644..6645 ":"
                                - WHITESPACE@6645..6646 " "
                                - ENUM_VALUE@6646..6655
                                    - NAME@6646..6655
                                        - IDENT@6646..6655 "INVENTORY"
                            - COMMA@6655..6656 ","
                            - WHITESPACE@6656..6657 " "
                            - ARGUMENT@6657..6690
                                - NAME@6657..6665
                                    - IDENT@6657..6665 "requires"
                                - COLON@6665..6666 ":"
                                - WHITESPACE@6666..6667 " "
                                - STRING_VALUE@6667..6690
                                    - STRING@6667..6690 "\"metadata{description}\""
                            - R_PAREN@6690..6691 ")"
            - WHITESPACE@6691..6694 "\n  "
            - FIELD_DEFINITION@6694..6739
                - NAME@6694..6701
                    - IDENT@6694..6701 "vehicle"
                - COLON@6701..6702 ":"
                - WHITESPACE@6702..6703 " "
                - NAMED_TYPE@6703..6710
                    - NAME@6703..6710
                        - IDENT@6703..6710 "Vehicle"
                - WHITESPACE@6710..6711 " "
                - DIRECTIVES@6711..6739
                    - DIRECTIVE@6711..6739
                        - AT@6711..6712 "@"
                        - NAME@6712..6723
                            - IDENT@6712..6723 "join__field"
                        - ARGUMENTS@6723..6739
                            - L_PAREN@6723..6724 "("
                            - ARGUMENT@6724..6738
                                - NAME@6724..6729
                                    - IDENT@6724..6729 "graph"
                                - COLON@6729..6730 ":"
                                - WHITESPACE@6730..6731 " "
                                - ENUM_VALUE@6731..6738
                                    - NAME@6731..6738
                                        - IDENT@6731..6738 "PRODUCT"
                            - R_PAREN@6738..6739 ")"
            - WHITESPACE@6739..6742 "\n  "
            - FIELD_DEFINITION@6742..6783
                - NAME@6742..6747
                    - IDENT@6742..6747 "thing"
                - COLON@6747..6748 ":"
                - WHITESPACE@6748..6749 " "
                - NAMED_TYPE@6749..6754
                    - NAME@6749..6754
                        - IDENT@6749..6754 "Thing"
                - WHITESPACE@6754..6755 " "
                - DIRECTIVES@6755..6783
                    - DIRECTIVE@6755..6783
                        - AT@6755..6756 "@"
                        - NAME@6756..6767
                            - IDENT@6756..6767 "join__field"
                        - ARGUMENTS@6767..6783
                            - L_PAREN@6767..6768 "("
                            - ARGUMENT@6768..6782
                                - NAME@6768..6773
                                    - IDENT@6768..6773 "graph"
                                - COLON@6773..6774 ":"
                                - WHITESPACE@6774..6775 " "
                                - ENUM_VALUE@6775..6782
                                    - NAME@6775..6782
                                        - IDENT@6775..6782 "PRODUCT"
                            - R_PAREN@6782..6783 ")"
            - WHITESPACE@6783..6786 "\n  "
            - FIELD_DEFINITION@6786..6832
                - NAME@6786..6793
                    - IDENT@6786..6793 "reviews"
                - COLON@6793..6794 ":"
                - WHITESPACE@6794..6795 " "
                - LIST_TYPE@6795..6803
                    - L_BRACK@6795..6796 "["
                    - NAMED_TYPE@6796..6802
                        - NAME@6796..6802
                            - IDENT@6796..6802 "Review"
                    - R_BRACK@6802..6803 "]"
                - WHITESPACE@6803..6804 " "
                - DIRECTIVES@6804..6832
                    - DIRECTIVE@6804..6832
                        - AT@6804..6805 "@"
                        - NAME@6805..6816
                            - IDENT@6805..6816 "join__field"
                        - ARGUMENTS@6816..6832
                            - L_PAREN@6816..6817 "("
                            - ARGUMENT@6817..6831
                                - NAME@6817..6822
                                    - IDENT@6817..6822 "graph"
                                - COLON@6822..6823 ":"
                                - WHITESPACE@6823..6824 " "
                                - ENUM_VALUE@6824..6831
                                    - NAME@6824..6831
                                        - IDENT@6824..6831 "REVIEWS"
                            - R_PAREN@6831..6832 ")"
            - WHITESPACE@6832..6835 "\n  "
            - FIELD_DEFINITION@6835..6885
                - NAME@6835..6850
                    - IDENT@6835..6850 "numberOfReviews"
                - COLON@6850..6851 ":"
                - WHITESPACE@6851..6852 " "
                - NON_NULL_TYPE@6852..6856
                    - NAMED_TYPE@6852..6855
                        - NAME@6852..6855
                            - IDENT@6852..6855 "Int"
                    - BANG@6855..6856 "!"
                - WHITESPACE@6856..6857 " "
                - DIRECTIVES@6857..6885
                    - DIRECTIVE@6857..6885
                        - AT@6857..6858 "@"
                        - NAME@6858..6869
                            - IDENT@6858..6869 "join__field"
                        - ARGUMENTS@6869..6885
                            - L_PAREN@6869..6870 "("
                            - ARGUMENT@6870..6884
                                - NAME@6870..6875
                                    - IDENT@6870..6875 "graph"
                                - COLON@6875..6876 ":"
                                - WHITESPACE@6876..6877 " "
                                - ENUM_VALUE@6877..6884
                                    - NAME@6877..6884
                                        - IDENT@6877..6884 "REVIEWS"
                            - R_PAREN@6884..6885 ")"
            - WHITESPACE@6885..6888 "\n  "
            - FIELD_DEFINITION@6888..6968
                - NAME@6888..6899
                    - IDENT@6888..6899 "goodAddress"
                - COLON@6899..6900 ":"
                - WHITESPACE@6900..6901 " "
                - NAMED_TYPE@6901..6908
                    - NAME@6901..6908
                        - IDENT@6901..6908 "Boolean"
                - WHITESPACE@6908..6909 " "
                - DIRECTIVES@6909..6968
                    - DIRECTIVE@6909..6968
                        - AT@6909..6910 "@"
                        - NAME@6910..6921
                            - IDENT@6910..6921 "join__field"
                        - ARGUMENTS@6921..6968
                            - L_PAREN@6921..6922 "("
                            - ARGUMENT@6922..6936
                                - NAME@6922..6927
                                    - IDENT@6922..6927 "graph"
                                - COLON@6927..6928 ":"
                                - WHITESPACE@6928..6929 " "
                                - ENUM_VALUE@6929..6936
                                    - NAME@6929..6936
                                        - IDENT@6929..6936 "REVIEWS"
                            - COMMA@6936..6937 ","
                            - WHITESPACE@6937..6938 " "
                            - ARGUMENT@6938..6967
                                - NAME@6938..6946
                                    - IDENT@6938..6946 "requires"
                                - COLON@6946..6947 ":"
                                - WHITESPACE@6947..6948 " "
                                - STRING_VALUE@6948..6967
                                    - STRING@6948..6967 "\"metadata{address}\""
                            - R_PAREN@6967..6968 ")"
            - WHITESPACE@6968..6969 "\n"
            - R_CURLY@6969..6970 "}"
    - WHITESPACE@6970..6972 "\n\n"
    - OBJECT_TYPE_DEFINITION@6972..7048
        - type_KW@6972..6976 "type"
        - WHITESPACE@6976..6977 " "
        - NAME@6977..6989
            - IDENT@6977..6989 "UserMetadata"
        - WHITESPACE@6989..6990 " "
        - FIELDS_DEFINITION@6990..7048
            - L_CURLY@6990..6991 "{"
            - WHITESPACE@6991..6994 "\n  "
            - FIELD_DEFINITION@6994..7006
                - NAME@6994..6998
                    - IDENT@6994..6998 "name"
                - COLON@6998..6999 ":"
                - WHITESPACE@6999..7000 " "
                - NAMED_TYPE@7000..7006
                    - NAME@7000..7006
                        - IDENT@7000..7006 "String"
            - WHITESPACE@7006..7009 "\n  "
            - FIELD_DEFINITION@7009..7024
                - NAME@7009..7016
                    - IDENT@7009..7016 "address"
                - COLON@7016..7017 ":"
                - WHITESPACE@7017..7018 " "
                - NAMED_TYPE@7018..7024
                    - NAME@7018..7024
                        - IDENT@7018..7024 "String"
            - WHITESPACE@7024..7027 "\n  "
            - FIELD_DEFINITION@7027..7046
                - NAME@7027..7038
                    - IDENT@7027..7038 "description"
                - COLON@7038..7039 ":"
                - WHITESPACE@7039..7040 " "
                - NAMED_TYPE@7040..7046
                    - NAME@7040..7046
                        - IDENT@7040..7046 "String"
            - WHITESPACE@7046..7047 "\n"
            - R_CURLY@7047..7048 "}"
    - WHITESPACE@7048..7050 "\n\n"
    - OBJECT_TYPE_DEFINITION@7050..7397
        - type_KW@7050..7054 "type"
        - WHITESPACE@7054..7055 " "
        - NAME@7055..7058
            - IDENT@7055..7058 "Van"
        - WHITESPACE@7058..7059 " "
        - IMPLEMENTS_INTERFACES@7059..7077
            - implements_KW@7059..7069 "implements"
            - WHITESPACE@7069..7070 " "
            - NAMED_TYPE@7070..7077
                - NAME@7070..7077
                    - IDENT@7070..7077 "Vehicle"
        - WHITESPACE@7077..7078 "\n"
        - DIRECTIVES@7078..7184
            - DIRECTIVE@7078..7106
                - AT@7078..7079 "@"
                - NAME@7079..7090
                    - IDENT@7079..7090 "join__owner"
                - ARGUMENTS@7090..7106
                    - L_PAREN@7090..7091 "("
                    - ARGUMENT@7091..7105
                        - NAME@7091..7096
                            - IDENT@7091..7096 "graph"
                        - COLON@7096..7097 ":"
                        - WHITESPACE@7097..7098 " "
                        - ENUM_VALUE@7098..7105
                            - NAME@7098..7105
                                - IDENT@7098..7105 "PRODUCT"
                    - R_PAREN@7105..7106 ")"
            - WHITESPACE@7106..7107 "\n"
            - DIRECTIVE@7107..7145
                - AT@7107..7108 "@"
                - NAME@7108..7118
                    - IDENT@7108..7118 "join__type"
                - ARGUMENTS@7118..7145
                    - L_PAREN@7118..7119 "("
                    - ARGUMENT@7119..7133
                        - NAME@7119..7124
                            - IDENT@7119..7124 "graph"
                        - COLON@7124..7125 ":"
                        - WHITESPACE@7125..7126 " "
                        - ENUM_VALUE@7126..7133
                            - NAME@7126..7133
                                - IDENT@7126..7133 "PRODUCT"
                    - COMMA@7133..7134 ","
                    - WHITESPACE@7134..7135 " "
                    - ARGUMENT@7135..7144
                        - NAME@7135..7138
                            - IDENT@7135..7138 "key"
                        - COLON@7138..7139 ":"
                        - WHITESPACE@7139..7140 " "
                        - STRING_VALUE@7140..7144
                            - STRING@7140..7144 "\"id\""
                    - R_PAREN@7144..7145 ")"
            - WHITESPACE@7145..7146 "\n"
            - DIRECTIVE@7146..7184
                - AT@7146..7147 "@"
                - NAME@7147..7157
                    - IDENT@7147..7157 "join__type"
                - ARGUMENTS@7157..7184
                    - L_PAREN@7157..7158 "("
                    - ARGUMENT@7158..7172
                        - NAME@7158..7163
                            - IDENT@7158..7163 "graph"
                        - COLON@7163..7164 ":"
                        - WHITESPACE@7164..7165 " "
                        - ENUM_VALUE@7165..7172
                            - NAME@7165..7172
                                - IDENT@7165..7172 "REVIEWS"
                    - COMMA@7172..7173 ","
                    - WHITESPACE@7173..7174 " "
                    - ARGUMENT@7174..7183
                        - NAME@7174..7177
                            - IDENT@7174..7177 "key"
                        - COLON@7177..7178 ":"
                        - WHITESPACE@7178..7179 " "
                        - STRING_VALUE@7179..7183
                            - STRING@7179..7183 "\"id\""
                    - R_PAREN@7183..7184 ")"
        - WHITESPACE@7184..7185 "\n"
        - FIELDS_DEFINITION@7185..7397
            - L_CURLY@7185..7186 "{"
            - WHITESPACE@7186..7189 "\n  "
            - FIELD_DEFINITION@7189..7229
                - NAME@7189..7191
                    - IDENT@7189..7191 "id"
                - COLON@7191..7192 ":"
                - WHITESPACE@7192..7193 " "
                - NON_NULL_TYPE@7193..7200
                    - NAMED_TYPE@7193..7199
                        - NAME@7193..7199
                            - IDENT@7193..7199 "String"
                    - BANG@7199..7200 "!"
                - WHITESPACE@7200..7201 " "
                - DIRECTIVES@7201..7229
                    - DIRECTIVE@7201..7229
                        - AT@7201..7202 "@"
                        - NAME@7202..7213
                            - IDENT@7202..7213 "join__field"
                        - ARGUMENTS@7213..7229
                            - L_PAREN@7213..7214 "("
                            - ARGUMENT@7214..7228
                                - NAME@7214..7219
                                    - IDENT@7214..7219 "graph"
                                - COLON@7219..7220 ":"
                                - WHITESPACE@7220..7221 " "
                                - ENUM_VALUE@7221..7228
                                    - NAME@7221..7228
                                        - IDENT@7221..7228 "PRODUCT"
                            - R_PAREN@7228..7229 ")"
            - WHITESPACE@7229..7232 "\n  "
            - FIELD_DEFINITION@7232..7280
                - NAME@7232..7243
                    - IDENT@7232..7243 "description"
                - COLON@7243..7244 ":"
                - WHITESPACE@7244..7245 " "
                - NAMED_TYPE@7245..7251
                    - NAME@7245..7251
                        - IDENT@7245..7251 "String"
                - WHITESPACE@7251..7252 " "
                - DIRECTIVES@7252..7280
                    - DIRECTIVE@7252..7280
                        - AT@7252..7253 "@"
                        - NAME@7253..7264
                            - IDENT@7253..7264 "join__field"
                        - ARGUMENTS@7264..7280
                            - L_PAREN@7264..7265 "("
                            - ARGUMENT@7265..7279
                                - NAME@7265..7270
                                    - IDENT@7265..7270 "graph"
                                - COLON@7270..7271 ":"
                                - WHITESPACE@7271..7272 " "
                                - ENUM_VALUE@7272..7279
                                    - NAME@7272..7279
                                        - IDENT@7272..7279 "PRODUCT"
                            - R_PAREN@7279..7280 ")"
            - WHITESPACE@7280..7283 "\n  "
            - FIELD_DEFINITION@7283..7325
                - NAME@7283..7288
                    - IDENT@7283..7288 "price"
                - COLON@7288..7289 ":"
                - WHITESPACE@7289..7290 " "
                - NAMED_TYPE@7290..7296
                    - NAME@7290..7296
                        - IDENT@7290..7296 "String"
                - WHITESPACE@7296..7297 " "
                - DIRECTIVES@7297..7325
                    - DIRECTIVE@7297..7325
                        - AT@7297..7298 "@"
                        - NAME@7298..7309
                            - IDENT@7298..7309 "join__field"
                        - ARGUMENTS@7309..7325
                            - L_PAREN@7309..7310 "("
                            - ARGUMENT@7310..7324
                                - NAME@7310..7315
                                    - IDENT@7310..7315 "graph"
                                - COLON@7315..7316 ":"
                                - WHITESPACE@7316..7317 " "
                                - ENUM_VALUE@7317..7324
                                    - NAME@7317..7324
                                        - IDENT@7317..7324 "PRODUCT"
                            - R_PAREN@7324..7325 ")"
            - WHITESPACE@7325..7328 "\n  "
            - FIELD_DEFINITION@7328..7395
                - NAME@7328..7339
                    - IDENT@7328..7339 "retailPrice"
                - COLON@7339..7340 ":"
                - WHITESPACE@7340..7341 " "
                - NAMED_TYPE@7341..7347
                    - NAME@7341..7347
                        - IDENT@7341..7347 "String"
                - WHITESPACE@7347..7348 " "
                - DIRECTIVES@7348..7395
                    - DIRECTIVE@7348..7395
                        - AT@7348..7349 "@"
                        - NAME@7349..7360
                            - IDENT@7349..7360 "join__field"
                        - ARGUMENTS@7360..7395
                            - L_PAREN@7360..7361 "("
                            - ARGUMENT@7361..7375
                                - NAME@7361..7366
                                    - IDENT@7361..7366 "graph"
                                - COLON@7366..7367 ":"
                                - WHITESPACE@7367..7368 " "
                                - ENUM_VALUE@7368..7375
                                    - NAME@7368..7375
                                        - IDENT@7368..7375 "REVIEWS"
                            - COMMA@7375..7376 ","
                            - WHITESPACE@7376..7377 " "
                            - ARGUMENT@7377..7394
                                - NAME@7377..7385
                                    - IDENT@7377..7385 "requires"
                                - COLON@7385..7386 ":"
                                - WHITESPACE@7386..7387 " "
                                - STRING_VALUE@7387..7394
                                    - STRING@7387..7394 "\"price\""
                            - R_PAREN@7394..7395 ")"
            - WHITESPACE@7395..7396 "\n"
            - R_CURLY@7396..7397 "}"
    - WHITESPACE@7397..7399 "\n\n"
    - INTERFACE_TYPE_DEFINITION@7399..7494
        - interface_KW@7399..7408 "interface"
        - WHITESPACE@7408..7409 " "
        - NAME@7409..7416
            - IDENT@7409..7416 "Vehicle"
        - WHITESPACE@7416..7417 " "
        - FIELDS_DEFINITION@7417..7494
            - L_CURLY@7417..7418 "{"
            - WHITESPACE@7418..7421 "\n  "
            - FIELD_DEFINITION@7421..7432
                - NAME@7421..7423
                    - IDENT@7421..7423 "id"
                - COLON@7423..7424 ":"
                - WHITESPACE@7424..7425 " "
                - NON_NULL_TYPE@7425..7432
                    - NAMED_TYPE@7425..7431
                        - NAME@7425..7431
                            - IDENT@7425..7431 "String"
                    - BANG@7431..7432 "!"
            - WHITESPACE@7432..7435 "\n  "
            - FIELD_DEFINITION@7435..7454
                - NAME@7435..7446
                    - IDENT@7435..7446 "description"
                - COLON@7446..7447 ":"
                - WHITESPACE@7447..7448 " "
                - NAMED_TYPE@7448..7454
                    - NAME@7448..7454
                        - IDENT@7448..7454 "String"
            - WHITESPACE@7454..7457 "\n  "
            - FIELD_DEFINITION@7457..7470
                - NAME@7457..7462
                    - IDENT@7457..7462 "price"
                - COLON@7462..7463 ":"
                - WHITESPACE@7463..7464 " "
                - NAMED_TYPE@7464..7470
                    - NAME@7464..7470
                        - IDENT@7464..7470 "String"
            - WHITESPACE@7470..7473 "\n  "
            - FIELD_DEFINITION@7473..7492
                - NAME@7473..7484
                    - IDENT@7473..7484 "retailPrice"
                - COLON@7484..7485 ":"
                - WHITESPACE@7485..7486 " "
                - NAMED_TYPE@7486..7492
                    - NAME@7486..7492
                        - IDENT@7486..7492 "String"
            - WHITESPACE@7492..7493 "\n"
            - R_CURLY@7493..7494 "}"
recursion limit: 500, high: 1