{
  "programs": [
    "Program {\n    span: 54..3593,\n    kind: Script,\n    body: [\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\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)",
    "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)",
    "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)",
    "Expr(\n    ExprStmt {\n        span: 1502..1535,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1529..1559,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1553..1582,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1576..1651,\n        expr: _,\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: 2056..2077,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 2172..2194,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 2274..2295,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2421..2437,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2447..2459,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2470..2483,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2493..2534,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2820..2889,\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)",
    "Expr(\n    ExprStmt {\n        span: 3491..3544,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)"
  ],
  "decls": [
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 54..156,\n        ident: Ident {\n            span: 59..75,\n            sym: \"CheckBooleanOnly\",\n        },\n        declare: false,\n        type_params: [\n            Ident {\n                span: 76..77,\n                sym: \"T\",\n            },\n        ],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 152..210,\n        ident: Ident {\n            span: 157..163,\n            sym: \"T_ERR1\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsEnum(\n    TsEnumDecl {\n        span: 206..240,\n        ident: Ident {\n            span: 211..223,\n            sym: \"NumericEnum1\",\n        },\n        declare: false,\n        is_const: false,\n        members: [\n            TsEnumMember {\n                span: 226..228,\n                name: Ident(\n                    Ident {\n                        span: 226..227,\n                        sym: \"A\",\n                    },\n                ),\n                init: None,\n            },\n            TsEnumMember {\n                span: 229..231,\n                name: Ident(\n                    Ident {\n                        span: 229..230,\n                        sym: \"B\",\n                    },\n                ),\n                init: None,\n            },\n            TsEnumMember {\n                span: 232..235,\n                name: Ident(\n                    Ident {\n                        span: 232..233,\n                        sym: \"C\",\n                    },\n                ),\n                init: None,\n            },\n        ],\n    },\n)",
    "TsEnum(\n    TsEnumDecl {\n        span: 236..283,\n        ident: Ident {\n            span: 241..253,\n            sym: \"NumericEnum2\",\n        },\n        declare: false,\n        is_const: false,\n        members: [\n            TsEnumMember {\n                span: 256..262,\n                name: Ident(\n                    Ident {\n                        span: 256..257,\n                        sym: \"A\",\n                    },\n                ),\n                init: Some(\n                    _,\n                ),\n            },\n            TsEnumMember {\n                span: 263..270,\n                name: Ident(\n                    Ident {\n                        span: 263..264,\n                        sym: \"B\",\n                    },\n                ),\n                init: Some(\n                    _,\n                ),\n            },\n            TsEnumMember {\n                span: 271..278,\n                name: Ident(\n                    Ident {\n                        span: 271..272,\n                        sym: \"C\",\n                    },\n                ),\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsEnum(\n    TsEnumDecl {\n        span: 279..332,\n        ident: Ident {\n            span: 284..295,\n            sym: \"StringEnum1\",\n        },\n        declare: false,\n        is_const: false,\n        members: [\n            TsEnumMember {\n                span: 298..310,\n                name: Ident(\n                    Ident {\n                        span: 298..299,\n                        sym: \"A\",\n                    },\n                ),\n                init: Some(\n                    _,\n                ),\n            },\n            TsEnumMember {\n                span: 311..323,\n                name: Ident(\n                    Ident {\n                        span: 311..312,\n                        sym: \"B\",\n                    },\n                ),\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 333..412,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 333..372,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 407..447,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 407..441,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 442..479,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 442..473,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 474..510,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 474..504,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 505..560,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 505..554,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 555..609,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 555..603,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 604..649,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 604..643,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 644..701,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 644..695,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 696..745,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 696..739,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 740..789,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 740..783,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 784..833,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 784..827,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 828..892,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 828..886,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 887..953,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 887..947,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 948..1014,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 948..1008,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1009..1073,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1009..1050,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1068..1121,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1068..1115,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1116..1166,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1116..1160,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1162..1222,\n        ident: Ident {\n            span: 1167..1172,\n            sym: \"T_OK1\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1218..1277,\n        ident: Ident {\n            span: 1223..1228,\n            sym: \"T_OK2\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1273..1340,\n        ident: Ident {\n            span: 1278..1283,\n            sym: \"T_OK3\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1336..1396,\n        ident: Ident {\n            span: 1341..1346,\n            sym: \"T_OK4\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1392..1508,\n        ident: Ident {\n            span: 1397..1402,\n            sym: \"T_OK5\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1652..1726,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 1652..1691,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1721..1762,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1721..1756,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1757..1808,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1757..1802,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1803..1853,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1803..1847,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1848..1902,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1848..1896,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1897..1967,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1897..1945,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1959..2086,\n        ident: Ident {\n            span: 1968..1976,\n            sym: \"generic1\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 2078..2203,\n        ident: Ident {\n            span: 2087..2095,\n            sym: \"generic2\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 2195..2350,\n        ident: Ident {\n            span: 2204..2212,\n            sym: \"generic3\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2351..2425,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 2351..2420,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2432..2451,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2432..2446,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2456..2474,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2456..2469,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2480..2497,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2480..2492,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2535..2627,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 2535..2605,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2622..2706,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2622..2670,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2707..2738,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 2707..2730,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2739..2778,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 2739..2772,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2773..2829,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2773..2806,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2890..2945,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 2890..2939,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2940..3011,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2940..2991,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3006..3107,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3006..3060,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3108..3158,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 3108..3150,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3159..3230,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 3159..3224,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3225..3329,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3225..3310,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3324..3428,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3324..3409,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3539..3590,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3539..3572,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3423..3593,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3423..3591,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)"
  ],
  "pats": [
    "Ident(\n    Ident {\n        span: 339..345,\n        sym: \"strMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 413..415,\n        sym: \"e1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 448..450,\n        sym: \"e2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 480..482,\n        sym: \"e3\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 511..513,\n        sym: \"e4\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 561..563,\n        sym: \"e5\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 610..612,\n        sym: \"e6\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 650..652,\n        sym: \"e7\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 702..704,\n        sym: \"e8\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 746..748,\n        sym: \"e9\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 790..793,\n        sym: \"e10\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 834..837,\n        sym: \"e11\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 893..896,\n        sym: \"e12\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 954..957,\n        sym: \"e13\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1015..1018,\n        sym: \"e14\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1074..1077,\n        sym: \"ok1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1122..1125,\n        sym: \"ok2\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1658..1664,\n        sym: \"numMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1727..1734,\n        sym: \"num_ok1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1763..1770,\n        sym: \"num_ok2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1809..1816,\n        sym: \"num_ok3\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1854..1861,\n        sym: \"num_ok4\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1903..1910,\n        sym: \"num_ok5\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2013..2016,\n        sym: \"arg\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2132..2135,\n        sym: \"arg\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2231..2234,\n        sym: \"arg\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2357..2361,\n        sym: \"obj1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2438..2439,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 2440..2446,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2460..2462,\n        sym: \"yy\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 2463..2469,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2484..2485,\n        sym: \"z\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 2486..2492,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2541..2552,\n        sym: \"strMapUnion\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2628..2630,\n        sym: \"f1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2713..2714,\n        sym: \"s\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2745..2754,\n        sym: \"symbolMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2779..2782,\n        sym: \"e15\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 2896..2915,\n        sym: \"nonEmptyStringArray\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2946..2957,\n        sym: \"variadicOk1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3012..3026,\n        sym: \"variadicError1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3114..3123,\n        sym: \"myRecord1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3165..3174,\n        sym: \"myRecord2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3231..3234,\n        sym: \"fn1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3274..3277,\n        sym: \"key\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 3235..3310,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3330..3333,\n        sym: \"fn2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3373..3376,\n        sym: \"key\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 3334..3409,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3429..3432,\n        sym: \"fn3\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3472..3475,\n        sym: \"key\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 3545..3546,\n        sym: \"v\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 3433..3591,\n        left: _,\n        right: _,\n    },\n)"
  ],
  "exprs": [
    "Lit(\n    Num(\n        NumberLit {\n            span: 260..261,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 267..268,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 275..276,\n            value: 2.0,\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 302..309,\n            value: \"Alpha\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 315..321,\n            value: \"Beta\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 427..433,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 434..439,\n            value: \"foo\",\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 433..441,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 462..468,\n        sym: \"strMap\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 468..473,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 469..472,\n                sym: \"bar\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 494..500,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 501..502,\n            value: 0.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 500..504,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 525..531,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 532..533,\n            value: 0.0,\n        },\n    ),\n)",
    "TsAs(\n    TsAsExpr {\n        span: 534..553,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 531..554,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 575..581,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 582..583,\n            value: 0.0,\n        },\n    ),\n)",
    "TsAs(\n    TsAsExpr {\n        span: 584..602,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 581..603,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 624..630,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 631..632,\n            value: 0.0,\n        },\n    ),\n)",
    "TsAs(\n    TsAsExpr {\n        span: 633..642,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 630..643,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 664..670,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 671..676,\n            value: \"foo\",\n        },\n    ),\n)",
    "TsAs(\n    TsAsExpr {\n        span: 677..694,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 670..695,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 716..722,\n        sym: \"strMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 723..735,\n        sym: \"NumericEnum1\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 735..738,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 736..737,\n                sym: \"A\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 722..739,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 760..766,\n        sym: \"strMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 767..779,\n        sym: \"NumericEnum2\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 779..782,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 780..781,\n                sym: \"A\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 766..783,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 805..811,\n        sym: \"strMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 812..823,\n        sym: \"StringEnum1\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 823..826,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 824..825,\n                sym: \"A\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 811..827,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 849..855,\n        sym: \"strMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 856..867,\n        sym: \"StringEnum1\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 867..872,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 868..869,\n                sym: \"A\",\n            },\n        ),\n    },\n)",
    "TsAs(\n    TsAsExpr {\n        span: 870..885,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 855..886,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 908..914,\n        sym: \"strMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 915..927,\n        sym: \"NumericEnum1\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 927..932,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 928..929,\n                sym: \"A\",\n            },\n        ),\n    },\n)",
    "TsAs(\n    TsAsExpr {\n        span: 930..946,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 914..947,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 969..975,\n        sym: \"strMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 976..988,\n        sym: \"NumericEnum2\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 988..993,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 989..990,\n                sym: \"A\",\n            },\n        ),\n    },\n)",
    "TsAs(\n    TsAsExpr {\n        span: 991..1007,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 975..1008,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1030..1036,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Null(\n        NullLit {\n            span: 1037..1041,\n        },\n    ),\n)",
    "TsAs(\n    TsAsExpr {\n        span: 1042..1049,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1036..1050,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1101..1107,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1108..1113,\n            value: \"foo\",\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 1107..1115,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1149..1155,\n        sym: \"strMap\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1155..1160,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1156..1159,\n                sym: \"bar\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1502..1508,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1509..1514,\n            value: \"baz\",\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 1508..1517,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1518..1527,\n        sym: \"undefined\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1516..1528,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1529..1535,\n        sym: \"strMap\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1535..1541,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1536..1539,\n                sym: \"qua\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1542..1551,\n        sym: \"undefined\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1540..1552,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1553..1559,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1560..1561,\n            value: 0.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 1559..1564,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1565..1574,\n        sym: \"undefined\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1563..1575,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1576..1582,\n        sym: \"strMap\",\n    },\n)",
    "Lit(\n    Null(\n        NullLit {\n            span: 1583..1587,\n        },\n    ),\n)",
    "TsAs(\n    TsAsExpr {\n        span: 1588..1595,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1582..1597,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1598..1607,\n        sym: \"undefined\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1596..1608,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1746..1752,\n        sym: \"numMap\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1753..1754,\n            value: 0.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 1752..1756,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1782..1788,\n        sym: \"numMap\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1789..1790,\n            value: 0.0,\n        },\n    ),\n)",
    "TsAs(\n    TsAsExpr {\n        span: 1791..1801,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1788..1802,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1828..1834,\n        sym: \"numMap\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1835..1836,\n            value: 0.0,\n        },\n    ),\n)",
    "TsAs(\n    TsAsExpr {\n        span: 1837..1846,\n        expr: _,\n        ty: _,\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1834..1847,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1873..1879,\n        sym: \"numMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1880..1892,\n        sym: \"NumericEnum1\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1892..1895,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1893..1894,\n                sym: \"A\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1879..1896,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1922..1928,\n        sym: \"numMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1929..1941,\n        sym: \"NumericEnum2\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1941..1944,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1942..1943,\n                sym: \"A\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1928..1945,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2063..2066,\n        sym: \"arg\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2067..2073,\n            value: \"blah\",\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 2066..2075,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2179..2182,\n        sym: \"arg\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2183..2189,\n            value: \"blah\",\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 2182..2191,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "TsNonNull(\n    TsNonNullExpr {\n        span: 2190..2192,\n        expr: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2281..2287,\n        sym: \"strMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2288..2291,\n        sym: \"arg\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2287..2293,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2421..2425,\n        sym: \"obj1\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2426..2429,\n            value: \"x\",\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 2425..2431,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2442..2445,\n            value: \"y\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 2447..2451,\n        sym: \"obj1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2452..2453,\n        sym: \"y\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2451..2455,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2465..2468,\n            value: \"y\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 2470..2474,\n        sym: \"obj1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2475..2477,\n        sym: \"yy\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2474..2479,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2488..2491,\n            value: \"z\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 2493..2497,\n        sym: \"obj1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2498..2499,\n        sym: \"z\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2497..2501,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2651..2662,\n        sym: \"strMapUnion\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 2663..2668,\n            value: \"foo\",\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 2662..2670,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2793..2802,\n        sym: \"symbolMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2803..2804,\n        sym: \"s\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2802..2806,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2820..2829,\n        sym: \"symbolMap\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2830..2831,\n        sym: \"s\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2829..2834,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2835..2844,\n        sym: \"undefined\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 2833..2845,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2968..2987,\n        sym: \"nonEmptyStringArray\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2988..2989,\n            value: 0.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 2987..2991,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3037..3056,\n        sym: \"nonEmptyStringArray\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3057..3058,\n            value: 1.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 3056..3060,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3295..3304,\n        sym: \"myRecord1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3305..3308,\n        sym: \"key\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3304..3310,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Arrow(\n    ArrowExpr {\n        span: 3273..3310,\n        params: [\n            _,\n        ],\n        body: Expr(\n            _,\n        ),\n        is_async: false,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3394..3403,\n        sym: \"myRecord2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3404..3407,\n        sym: \"key\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3403..3409,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Arrow(\n    ArrowExpr {\n        span: 3372..3409,\n        params: [\n            _,\n        ],\n        body: Expr(\n            _,\n        ),\n        is_async: false,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3491..3500,\n        sym: \"myRecord2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3501..3504,\n        sym: \"key\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3500..3507,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3508..3517,\n        sym: \"undefined\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 3506..3518,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3557..3566,\n        sym: \"myRecord2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3567..3570,\n        sym: \"key\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3566..3572,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Arrow(\n    ArrowExpr {\n        span: 3471..3591,\n        params: [\n            _,\n        ],\n        body: Block(\n            [\n                _,\n                _,\n            ],\n        ),\n        is_async: false,\n    },\n)"
  ],
  "module_decls": [],
  "functions": [],
  "classes": [],
  "class_members": [],
  "jsx_elements": [],
  "ts_types": [
    "Keyword(\n    Any,\n)",
    "Keyword(\n    Boolean,\n)",
    "Keyword(\n    Undefined,\n)",
    "Union(\n    TsUnionType {\n        span: 183..203,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 166..204,\n        name: Ident {\n            span: 166..183,\n            sym: \"CheckBooleanOnly\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "Keyword(\n    String,\n)",
    "Keyword(\n    Number,\n)",
    "Union(\n    TsUnionType {\n        span: 537..553,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Keyword(\n    String,\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 596..597,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 600..601,\n            value: 1.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 587..602,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 636..637,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 640..641,\n            value: 1.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 636..642,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 680..685,\n            value: \"foo\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 688..693,\n            value: \"baz\",\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 680..694,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 873..885,\n        name: Ident {\n            span: 873..885,\n            sym: \"StringEnum1\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 933..946,\n        name: Ident {\n            span: 933..946,\n            sym: \"NumericEnum1\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 994..1007,\n        name: Ident {\n            span: 994..1007,\n            sym: \"NumericEnum2\",\n        },\n        type_args: [],\n    },\n)",
    "Keyword(\n    Any,\n)",
    "TypeQuery(\n    TsTypeQuery {\n        span: 1193..1207,\n        expr_name: Ident {\n            span: 1200..1207,\n            sym: \"strMap\",\n        },\n        type_args: [],\n    },\n)",
    "Parenthesized(\n    TsParenthesizedType {\n        span: 1192..1208,\n        ty: _,\n    },\n)",
    "Keyword(\n    String,\n)",
    "IndexedAccess(\n    TsIndexedAccessType {\n        span: 1192..1216,\n        obj_type: _,\n        index_type: _,\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1175..1217,\n        name: Ident {\n            span: 1175..1192,\n            sym: \"CheckBooleanOnly\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "TypeQuery(\n    TsTypeQuery {\n        span: 1249..1263,\n        expr_name: Ident {\n            span: 1256..1263,\n            sym: \"strMap\",\n        },\n        type_args: [],\n    },\n)",
    "Parenthesized(\n    TsParenthesizedType {\n        span: 1248..1264,\n        ty: _,\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1264..1269,\n            value: \"foo\",\n        },\n    ),\n)",
    "IndexedAccess(\n    TsIndexedAccessType {\n        span: 1248..1271,\n        obj_type: _,\n        index_type: _,\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1231..1272,\n        name: Ident {\n            span: 1231..1248,\n            sym: \"CheckBooleanOnly\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "TypeQuery(\n    TsTypeQuery {\n        span: 1304..1318,\n        expr_name: Ident {\n            span: 1311..1318,\n            sym: \"strMap\",\n        },\n        type_args: [],\n    },\n)",
    "Parenthesized(\n    TsParenthesizedType {\n        span: 1303..1319,\n        ty: _,\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1319..1324,\n            value: \"bar\",\n        },\n    ),\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1327..1332,\n            value: \"baz\",\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 1319..1333,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "IndexedAccess(\n    TsIndexedAccessType {\n        span: 1303..1334,\n        obj_type: _,\n        index_type: _,\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1286..1335,\n        name: Ident {\n            span: 1286..1303,\n            sym: \"CheckBooleanOnly\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "TypeQuery(\n    TsTypeQuery {\n        span: 1367..1381,\n        expr_name: Ident {\n            span: 1374..1381,\n            sym: \"strMap\",\n        },\n        type_args: [],\n    },\n)",
    "Parenthesized(\n    TsParenthesizedType {\n        span: 1366..1382,\n        ty: _,\n    },\n)",
    "Keyword(\n    Number,\n)",
    "IndexedAccess(\n    TsIndexedAccessType {\n        span: 1366..1390,\n        obj_type: _,\n        index_type: _,\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1349..1391,\n        name: Ident {\n            span: 1349..1366,\n            sym: \"CheckBooleanOnly\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "TypeQuery(\n    TsTypeQuery {\n        span: 1423..1437,\n        expr_name: Ident {\n            span: 1430..1437,\n            sym: \"strMap\",\n        },\n        type_args: [],\n    },\n)",
    "Parenthesized(\n    TsParenthesizedType {\n        span: 1422..1438,\n        ty: _,\n    },\n)",
    "Keyword(\n    Any,\n)",
    "IndexedAccess(\n    TsIndexedAccessType {\n        span: 1422..1443,\n        obj_type: _,\n        index_type: _,\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1405..1444,\n        name: Ident {\n            span: 1405..1422,\n            sym: \"CheckBooleanOnly\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "Keyword(\n    Any,\n)",
    "Keyword(\n    Number,\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1840..1841,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1844..1845,\n            value: 1.0,\n        },\n    ),\n)",
    "Union(\n    TsUnionType {\n        span: 1840..1846,\n        types: [\n            _,\n            _,\n        ],\n    },\n)"
  ]
}
