{
  "programs": [
    "Program {\n    span: 75..4991,\n    kind: Script,\n    body: [\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n    ],\n}"
  ],
  "stmts": [
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 411..419,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 784..792,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 1212..1220,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 1636..1644,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2390..2398,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2747..2773,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 2772..2798,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 2797..2829,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 3136..3179,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 3534..3565,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 3520..3570,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 3585..3611,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 3571..3617,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 3508..3617,\n        test: _,\n        cons: _,\n        alt: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 3716..3744,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 4085..4138,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 4375..4441,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)"
  ],
  "decls": [
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 100..151,\n        ident: Ident {\n            span: 105..106,\n            sym: \"S\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 147..268,\n        ident: Ident {\n            span: 152..153,\n            sym: \"T\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 269..290,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 269..278,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 291..412,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 291..300,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 75..460,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 85..93,\n                sym: \"Example1\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 476..513,\n        ident: Ident {\n            span: 481..482,\n            sym: \"S\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 509..654,\n        ident: Ident {\n            span: 514..515,\n            sym: \"T\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 655..676,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 655..664,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 677..785,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 677..686,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 451..830,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 461..469,\n                sym: \"Example2\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 846..883,\n        ident: Ident {\n            span: 851..852,\n            sym: \"S\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 879..1024,\n        ident: Ident {\n            span: 884..885,\n            sym: \"T\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1025..1046,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 1025..1034,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1047..1213,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 1047..1056,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 821..1262,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 831..839,\n                sym: \"Example3\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1278..1315,\n        ident: Ident {\n            span: 1283..1284,\n            sym: \"S\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1311..1480,\n        ident: Ident {\n            span: 1316..1317,\n            sym: \"T\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1481..1502,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 1481..1490,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1503..1637,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 1503..1512,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 1253..1692,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 1263..1271,\n                sym: \"Example4\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1893..1921,\n        ident: Ident {\n            span: 1898..1899,\n            sym: \"N\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1917..1956,\n        ident: Ident {\n            span: 1922..1923,\n            sym: \"S\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1952..2266,\n        ident: Ident {\n            span: 1957..1958,\n            sym: \"T\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2267..2288,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 2267..2276,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2289..2391,\n        kind: Let,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 2289..2298,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 1683..2465,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 1693..1701,\n                sym: \"Example5\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 2480..2604,\n        ident: Ident {\n            span: 2485..2491,\n            sym: \"Style1\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 2600..2679,\n        ident: Ident {\n            span: 2605..2611,\n            sym: \"Style2\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2674..2731,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2674..2723,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2728..2748,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2728..2742,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 2456..2896,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 2466..2473,\n                sym: \"GH14865\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 2911..2969,\n        ident: Ident {\n            span: 2921..2925,\n            sym: \"Blue\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 2936..2955,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2936..2941,\n                            sym: \"color\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 2960..3023,\n        ident: Ident {\n            span: 2970..2976,\n            sym: \"Yellow\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 2987..3010,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2987..2992,\n                            sym: \"color\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 3015..3066,\n        ident: Ident {\n            span: 3024..3028,\n            sym: \"draw\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 3058..3181,\n        ident: Ident {\n            span: 3067..3080,\n            sym: \"drawWithColor\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 2887..3248,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 2897..2904,\n                sym: \"GH30170\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 3263..3319,\n        ident: Ident {\n            span: 3273..3284,\n            sym: \"ILinearAxis\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 3287..3304,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 3287..3291,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 3310..3371,\n        ident: Ident {\n            span: 3320..3336,\n            sym: \"ICategoricalAxis\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 3339..3361,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 3339..3343,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 3367..3420,\n        ident: Ident {\n            span: 3372..3377,\n            sym: \"IAxis\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 3416..3472,\n        ident: Ident {\n            span: 3421..3430,\n            sym: \"IAxisType\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 3464..3628,\n        ident: Ident {\n            span: 3473..3484,\n            sym: \"getAxisType\",\n        },\n        declare: false,\n        params: [],\n        body: [\n            _,\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3623..3676,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3623..3666,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3671..3720,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3671..3711,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 3239..3811,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 3249..3256,\n                sym: \"GH12052\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 3826..3892,\n        ident: Ident {\n            span: 3836..3848,\n            sym: \"ThingTypeOne\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 3859..3877,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 3859..3863,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 3883..3944,\n        ident: Ident {\n            span: 3893..3905,\n            sym: \"ThingTypeTwo\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 3916..3934,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 3916..3920,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 3940..3981,\n        ident: Ident {\n            span: 3945..3954,\n            sym: \"ThingType\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 3977..4032,\n        ident: Ident {\n            span: 3982..3987,\n            sym: \"Thing\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 4024..4140,\n        ident: Ident {\n            span: 4033..4045,\n            sym: \"makeNewThing\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 3802..4207,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 3812..3819,\n                sym: \"GH18421\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 4222..4297,\n        ident: Ident {\n            span: 4227..4233,\n            sym: \"Action\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 4289..4354,\n        ident: Ident {\n            span: 4298..4312,\n            sym: \"dispatchAction\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 4349..4389,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 4349..4369,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 4198..4508,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 4208..4215,\n                sym: \"GH15907\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 4523..4577,\n        ident: Ident {\n            span: 4533..4535,\n            sym: \"A1\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 4546..4563,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4546..4550,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 4568..4617,\n        ident: Ident {\n            span: 4578..4580,\n            sym: \"A2\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 4591..4608,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4591..4595,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 4613..4645,\n        ident: Ident {\n            span: 4618..4620,\n            sym: \"AU\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 4670..4733,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 4670..4727,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 4637..4735,\n        ident: Ident {\n            span: 4646..4649,\n            sym: \"foo\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 4499..4802,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 4509..4516,\n                sym: \"GH20889\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 4817..4881,\n        ident: Ident {\n            span: 4822..4823,\n            sym: \"A\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 4877..4914,\n        ident: Ident {\n            span: 4882..4883,\n            sym: \"B\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 4915..4936,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 4915..4926,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 4931..4990,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 4931..4988,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsModule(\n    TsModuleDecl {\n        span: 4793..4991,\n        declare: false,\n        global: false,\n        namespace: true,\n        id: Ident(\n            Ident {\n                span: 4803..4810,\n                sym: \"GH39357\",\n            },\n        ),\n        body: Some(\n            ModuleBlock(\n                [\n                    _,\n                    _,\n                    _,\n                    _,\n                ],\n            ),\n        ),\n    },\n)"
  ],
  "pats": [
    "Ident(\n    Ident {\n        span: 273..274,\n        sym: \"s\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 295..296,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 411..412,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 659..660,\n        sym: \"s\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 681..682,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 784..785,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1029..1030,\n        sym: \"s\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1051..1052,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1212..1213,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1485..1486,\n        sym: \"s\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1507..1508,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1636..1637,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2271..2272,\n        sym: \"s\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2293..2294,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2390..2391,\n        sym: \"t\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2680..2681,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2732..2733,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2797..2798,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3029..3032,\n        sym: \"val\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3081..3093,\n        sym: \"currentColor\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3629..3632,\n        sym: \"bad\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3677..3681,\n        sym: \"good\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 4046..4055,\n        sym: \"thingType\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4313..4319,\n        sym: \"action\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4355..4361,\n        sym: \"active\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 4362..4369,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 4650..4654,\n        sym: \"obj1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4676..4680,\n        sym: \"obj2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4921..4922,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4937..4938,\n        sym: \"a\",\n    },\n)"
  ],
  "exprs": [
    "Ident(\n    Ident {\n        span: 415..416,\n        sym: \"s\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 413..417,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 788..789,\n        sym: \"s\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 786..790,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1216..1217,\n        sym: \"s\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1214..1218,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1640..1641,\n        sym: \"s\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1638..1642,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2394..2395,\n        sym: \"s\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 2392..2396,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2700..2703,\n            value: \"A\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2711..2720,\n            value: \"whatevs\",\n        },\n    ),\n)",
    "Object(\n    ObjectExpr {\n        span: 2692..2723,\n        props: [\n            KeyValueProp {\n                span: 2694..2704,\n                key: Ident(\n                    Ident {\n                        span: 2694..2698,\n                        sym: \"type\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 2705..2722,\n                key: Ident(\n                    Ident {\n                        span: 2705..2709,\n                        sym: \"data\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 2747..2748,\n        sym: \"a\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2748..2754,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2749..2753,\n                sym: \"type\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2772..2773,\n        sym: \"b\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2773..2779,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2774..2778,\n                sym: \"type\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2801..2802,\n        sym: \"a\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 2799..2803,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3143..3147,\n        sym: \"draw\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3157..3169,\n        sym: \"currentColor\",\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 3148..3172,\n        props: [\n            KeyValueProp {\n                span: 3150..3171,\n                key: Ident(\n                    Ident {\n                        span: 3150..3155,\n                        sym: \"color\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 3147..3173,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3512..3513,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3517..3518,\n            value: 1.0,\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 3514..3519,\n        op: EqEq,\n        left: _,\n        right: _,\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3541..3554,\n            value: \"categorical\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3592..3600,\n            value: \"linear\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 3650..3661,\n        sym: \"getAxisType\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 3661..3665,\n        callee: _,\n        args: [],\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 3642..3666,\n        props: [\n            KeyValueProp {\n                span: 3644..3665,\n                key: Ident(\n                    Ident {\n                        span: 3644..3648,\n                        sym: \"type\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 3699..3708,\n        sym: \"undefined\",\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 3691..3711,\n        props: [\n            KeyValueProp {\n                span: 3693..3710,\n                key: Ident(\n                    Ident {\n                        span: 3693..3697,\n                        sym: \"type\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 3716..3720,\n        sym: \"good\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3720..3727,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3721..3725,\n                sym: \"type\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3728..3739,\n        sym: \"getAxisType\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 3739..3742,\n        callee: _,\n        args: [],\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 3726..3742,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 4112..4121,\n        sym: \"thingType\",\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 4092..4132,\n        props: [\n            KeyValueProp {\n                span: 4106..4131,\n                key: Ident(\n                    Ident {\n                        span: 4106..4110,\n                        sym: \"type\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Lit(\n    Bool(\n        BoolLit {\n            span: 4364..4368,\n            value: true,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 4375..4389,\n        sym: \"dispatchAction\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4400..4406,\n        sym: \"active\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4408..4421,\n            value: \"disactivate\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4424..4434,\n            value: \"activate\",\n        },\n    ),\n)",
    "Cond(\n    CondExpr {\n        span: 4406..4435,\n        test: _,\n        cons: _,\n        alt: _,\n    },\n)",
    "Paren(\n    ParenExpr {\n        span: 4399..4437,\n        expr: _,\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 4390..4438,\n        props: [\n            KeyValueProp {\n                span: 4392..4437,\n                key: Ident(\n                    Ident {\n                        span: 4392..4396,\n                        sym: \"type\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 4389..4439,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 4707..4711,\n        sym: \"obj1\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 4711..4726,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 4712..4716,\n                sym: \"type\",\n            },\n        ),\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 4687..4727,\n        props: [\n            KeyValueProp {\n                span: 4701..4726,\n                key: Ident(\n                    Ident {\n                        span: 4701..4705,\n                        sym: \"type\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 4944..4945,\n        sym: \"b\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4950..4953,\n            value: \"a\",\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 4946..4956,\n        op: EqEqEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 4957..4958,\n        sym: \"b\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4963..4966,\n            value: \"b\",\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 4959..4968,\n        op: EqEqEq,\n        left: _,\n        right: _,\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 4954..4968,\n        op: LogicalOr,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 4970..4971,\n        sym: \"b\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 4973..4974,\n            value: 1.0,\n        },\n    ),\n)",
    "Array(\n    ArrayExpr {\n        span: 4969..4977,\n        elems: [\n            Some(\n                ExprOrSpread {\n                    spread: false,\n                    expr: _,\n                },\n            ),\n            Some(\n                ExprOrSpread {\n                    spread: false,\n                    expr: _,\n                },\n            ),\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4979..4982,\n            value: \"c\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4984..4986,\n            value: \"\",\n        },\n    ),\n)",
    "Array(\n    ArrayExpr {\n        span: 4978..4988,\n        elems: [\n            Some(\n                ExprOrSpread {\n                    spread: false,\n                    expr: _,\n                },\n            ),\n            Some(\n                ExprOrSpread {\n                    spread: false,\n                    expr: _,\n                },\n            ),\n        ],\n    },\n)",
    "Cond(\n    CondExpr {\n        span: 4967..4988,\n        test: _,\n        cons: _,\n        alt: _,\n    },\n)"
  ],
  "module_decls": [],
  "functions": [],
  "classes": [],
  "class_members": [],
  "jsx_elements": [],
  "ts_types": [
    "Keyword(\n    Boolean,\n)",
    "Keyword(\n    Number,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 109..142,\n        members: [\n            TsTypeMember {\n                span: 111..131,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 111..115,\n                            sym: \"done\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 126..141,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 126..131,\n                            sym: \"value\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Bool(\n        BoolLit {\n            span: 174..178,\n            value: true,\n        },\n    ),\n)",
    "Keyword(\n    Number,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 166..215,\n        members: [\n            TsTypeMember {\n                span: 168..185,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 168..172,\n                            sym: \"done\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 180..195,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 180..185,\n                            sym: \"value\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Bool(\n        BoolLit {\n            span: 224..229,\n            value: false,\n        },\n    ),\n)",
    "Keyword(\n    Number,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 216..247,\n        members: [\n            TsTypeMember {\n                span: 218..236,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 218..222,\n                            sym: \"done\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 231..246,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 231..236,\n                            sym: \"value\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 164..247,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 490..491,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 494..495,\n            value: 2.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 490..496,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 500..501,\n            value: 4.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 485..504,\n        members: [\n            TsTypeMember {\n                span: 487..498,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 487..488,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 497..503,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 497..498,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 523..524,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 533..534,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 537..538,\n            value: 4.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 533..540,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 518..563,\n        members: [\n            TsTypeMember {\n                span: 520..531,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 520..521,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 530..540,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 530..531,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 569..570,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 579..580,\n            value: 2.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 564..609,\n        members: [\n            TsTypeMember {\n                span: 566..577,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 566..567,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 576..582,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 576..577,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 615..616,\n            value: 2.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 625..626,\n            value: 3.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 629..630,\n            value: 4.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 625..632,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 610..633,\n        members: [\n            TsTypeMember {\n                span: 612..623,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 612..613,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 622..632,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 622..623,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 518..633,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 860..861,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 864..865,\n            value: 2.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 860..866,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 870..871,\n            value: 4.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 855..874,\n        members: [\n            TsTypeMember {\n                span: 857..868,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 857..858,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 867..873,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 867..868,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 893..894,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 903..904,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 907..908,\n            value: 4.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 903..910,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 888..933,\n        members: [\n            TsTypeMember {\n                span: 890..901,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 890..891,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 900..910,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 900..901,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 939..940,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 949..950,\n            value: 2.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 953..954,\n            value: 4.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 949..956,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 934..979,\n        members: [\n            TsTypeMember {\n                span: 936..947,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 936..937,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 946..956,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 946..947,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 985..986,\n            value: 2.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 995..996,\n            value: 3.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 980..999,\n        members: [\n            TsTypeMember {\n                span: 982..993,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 982..983,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 992..998,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 992..993,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 888..999,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1292..1293,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1296..1297,\n            value: 2.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 1292..1298,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1302..1303,\n            value: 4.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1287..1306,\n        members: [\n            TsTypeMember {\n                span: 1289..1300,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1289..1290,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1299..1305,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1299..1300,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1325..1326,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1335..1336,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1339..1340,\n            value: 4.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 1335..1342,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1320..1373,\n        members: [\n            TsTypeMember {\n                span: 1322..1333,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1322..1323,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1332..1342,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1332..1333,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1379..1380,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1389..1390,\n            value: 2.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1374..1427,\n        members: [\n            TsTypeMember {\n                span: 1376..1387,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1376..1377,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1386..1392,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1386..1387,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1433..1434,\n            value: 2.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1443..1444,\n            value: 3.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1447..1448,\n            value: 4.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 1443..1449,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Keyword(\n    String,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1428..1462,\n        members: [\n            TsTypeMember {\n                span: 1430..1441,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1430..1431,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1440..1451,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1440..1441,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1450..1461,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1450..1451,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 1320..1462,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1902..1903,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1906..1907,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1910..1911,\n            value: 2.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 1902..1912,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1931..1933,\n        name: Ident {\n            span: 1931..1933,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1937..1939,\n        name: Ident {\n            span: 1937..1939,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1943..1946,\n        name: Ident {\n            span: 1943..1946,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1926..1947,\n        members: [\n            TsTypeMember {\n                span: 1928..1935,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1928..1929,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1934..1941,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1934..1935,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1940..1946,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1940..1941,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1966..1967,\n            value: 0.0,\n        },\n    ),\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1972..1974,\n        name: Ident {\n            span: 1972..1974,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1978..1981,\n        name: Ident {\n            span: 1978..1981,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1961..1994,\n        members: [\n            TsTypeMember {\n                span: 1963..1970,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1963..1964,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1969..1976,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1969..1970,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1975..1981,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1975..1976,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2000..2001,\n            value: 1.0,\n        },\n    ),\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2006..2008,\n        name: Ident {\n            span: 2006..2008,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2012..2015,\n        name: Ident {\n            span: 2012..2015,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1995..2028,\n        members: [\n            TsTypeMember {\n                span: 1997..2004,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1997..1998,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2003..2010,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2003..2004,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2009..2015,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2009..2010,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2034..2035,\n            value: 2.0,\n        },\n    ),\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2040..2042,\n        name: Ident {\n            span: 2040..2042,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2046..2049,\n        name: Ident {\n            span: 2046..2049,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2029..2062,\n        members: [\n            TsTypeMember {\n                span: 2031..2038,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2031..2032,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2037..2044,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2037..2038,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2043..2049,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2043..2044,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2068..2070,\n        name: Ident {\n            span: 2068..2070,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2074..2075,\n            value: 0.0,\n        },\n    ),\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2080..2083,\n        name: Ident {\n            span: 2080..2083,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2063..2096,\n        members: [\n            TsTypeMember {\n                span: 2065..2072,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2065..2066,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2071..2078,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2071..2072,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2077..2083,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2077..2078,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2102..2104,\n        name: Ident {\n            span: 2102..2104,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2108..2109,\n            value: 1.0,\n        },\n    ),\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2114..2117,\n        name: Ident {\n            span: 2114..2117,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2097..2130,\n        members: [\n            TsTypeMember {\n                span: 2099..2106,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2099..2100,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2105..2112,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2105..2106,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2111..2117,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2111..2112,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2136..2138,\n        name: Ident {\n            span: 2136..2138,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2142..2143,\n            value: 2.0,\n        },\n    ),\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2148..2151,\n        name: Ident {\n            span: 2148..2151,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2131..2164,\n        members: [\n            TsTypeMember {\n                span: 2133..2140,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2133..2134,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2139..2146,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2139..2140,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2145..2151,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2145..2146,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2170..2172,\n        name: Ident {\n            span: 2170..2172,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2176..2178,\n        name: Ident {\n            span: 2176..2178,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2182..2183,\n            value: 0.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2165..2198,\n        members: [\n            TsTypeMember {\n                span: 2167..2174,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2167..2168,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2173..2180,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2173..2174,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2179..2185,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2179..2180,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2204..2206,\n        name: Ident {\n            span: 2204..2206,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2210..2212,\n        name: Ident {\n            span: 2210..2212,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2216..2217,\n            value: 1.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2199..2232,\n        members: [\n            TsTypeMember {\n                span: 2201..2208,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2201..2202,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2207..2214,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2207..2208,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2213..2219,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2213..2214,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2238..2240,\n        name: Ident {\n            span: 2238..2240,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2244..2246,\n        name: Ident {\n            span: 2244..2246,\n            sym: \"N\",\n        },\n        type_args: [],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2250..2251,\n            value: 2.0,\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2233..2254,\n        members: [\n            TsTypeMember {\n                span: 2235..2242,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2235..2236,\n                            sym: \"a\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2241..2248,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2241..2242,\n                            sym: \"b\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2247..2253,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2247..2248,\n                            sym: \"c\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 1961..2254,\n        types: [\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2510..2513,\n            value: \"A\",\n        },\n    ),\n)",
    "Keyword(\n    String,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2494..2544,\n        members: [\n            TsTypeMember {\n                span: 2504..2527,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2504..2508,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2523..2542,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2523..2527,\n                            sym: \"data\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2561..2564,\n            value: \"B\",\n        },\n    ),\n)",
    "Keyword(\n    String,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2545..2594,\n        members: [\n            TsTypeMember {\n                span: 2555..2578,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2555..2559,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2574..2593,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2574..2578,\n                            sym: \"data\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 2494..2594,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2630..2633,\n            value: \"A\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2636..2639,\n            value: \"B\",\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 2630..2640,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Keyword(\n    String,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2614..2679,\n        members: [\n            TsTypeMember {\n                span: 2624..2653,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2624..2628,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2649..2668,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2649..2653,\n                            sym: \"data\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2943..2949,\n            value: \"blue\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2995..3003,\n            value: \"yellow\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3293..3301,\n            value: \"linear\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3345..3358,\n            value: \"categorical\",\n        },\n    ),\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 3380..3393,\n        name: Ident {\n            span: 3380..3393,\n            sym: \"ILinearAxis\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 3394..3411,\n        name: Ident {\n            span: 3394..3411,\n            sym: \"ICategoricalAxis\",\n        },\n        type_args: [],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 3380..3411,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3433..3441,\n            value: \"linear\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3444..3457,\n            value: \"categorical\",\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 3433..3458,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3865..3870,\n            value: \"one\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3922..3927,\n            value: \"two\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3957..3962,\n            value: \"one\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3965..3970,\n            value: \"two\",\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 3957..3971,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 3990..4004,\n        name: Ident {\n            span: 3990..4004,\n            sym: \"ThingTypeOne\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4005..4018,\n        name: Ident {\n            span: 4005..4018,\n            sym: \"ThingTypeTwo\",\n        },\n        type_args: [],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 3990..4018,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4244..4254,\n            value: \"activate\",\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 4236..4258,\n        members: [\n            TsTypeMember {\n                span: 4238..4256,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4238..4242,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4267..4280,\n            value: \"disactivate\",\n        },\n    ),\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 4259..4283,\n        members: [\n            TsTypeMember {\n                span: 4261..4282,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4261..4265,\n                            sym: \"type\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 4236..4283,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4552..4556,\n            value: \"A1\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4597..4601,\n            value: \"A2\",\n        },\n    ),\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4623..4627,\n        name: Ident {\n            span: 4623..4627,\n            sym: \"A1\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4628..4631,\n        name: Ident {\n            span: 4628..4631,\n            sym: \"A2\",\n        },\n        type_args: [],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 4623..4631,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4827..4830,\n            value: \"a\",\n        },\n    ),\n)",
    "Keyword(\n    Number,\n)",
    "Tuple(\n    TsTupleType {\n        span: 4826..4841,\n        elem_types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4843..4846,\n            value: \"b\",\n        },\n    ),\n)",
    "Keyword(\n    Number,\n)",
    "Tuple(\n    TsTupleType {\n        span: 4842..4857,\n        elem_types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4859..4862,\n            value: \"c\",\n        },\n    ),\n)",
    "Keyword(\n    String,\n)",
    "Tuple(\n    TsTupleType {\n        span: 4858..4872,\n        elem_types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 4826..4872,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4886..4889,\n            value: \"a\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4892..4895,\n            value: \"b\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4898..4901,\n            value: \"c\",\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 4886..4902,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)"
  ]
}
