{
  "programs": [
    "Program {\n    span: 1..2088,\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}"
  ],
  "stmts": [
    "Decl(\n    _,\n)",
    "Empty(\n    EmptyStmt {\n        span: 39..40,\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: 359..371,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 370..382,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 381..389,\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)",
    "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: 836..846,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 845..851,\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)",
    "Throw(\n    ThrowStmt {\n        span: 1190..1228,\n        arg: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 1297..1324,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 1336..1357,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Switch(\n    SwitchStmt {\n        span: 1259..1359,\n        discriminant: _,\n        cases: [\n            SwitchCase {\n                span: 1280..1324,\n                test: Some(\n                    _,\n                ),\n                cons: [\n                    _,\n                ],\n            },\n            SwitchCase {\n                span: 1320..1357,\n                test: Some(\n                    _,\n                ),\n                cons: [\n                    _,\n                ],\n            },\n        ],\n    },\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 1428..1455,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 1467..1488,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Switch(\n    SwitchStmt {\n        span: 1390..1499,\n        discriminant: _,\n        cases: [\n            SwitchCase {\n                span: 1411..1455,\n                test: Some(\n                    _,\n                ),\n                cons: [\n                    _,\n                ],\n            },\n            SwitchCase {\n                span: 1451..1488,\n                test: Some(\n                    _,\n                ),\n                cons: [\n                    _,\n                ],\n            },\n        ],\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 1493..1517,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 1572..1580,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 1562..1589,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1600..1608,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 1590..1610,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 1555..1610,\n        test: _,\n        cons: _,\n        alt: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 1680..1688,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 1670..1697,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1708..1716,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 1698..1718,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 1648..1718,\n        test: _,\n        cons: _,\n        alt: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 1878..1902,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 1914..1931,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Switch(\n    SwitchStmt {\n        span: 1835..1933,\n        discriminant: _,\n        cases: [\n            SwitchCase {\n                span: 1861..1902,\n                test: Some(\n                    _,\n                ),\n                cons: [\n                    _,\n                ],\n            },\n            SwitchCase {\n                span: 1898..1931,\n                test: Some(\n                    _,\n                ),\n                cons: [\n                    _,\n                ],\n            },\n        ],\n    },\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 2006..2030,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 2042..2059,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Switch(\n    SwitchStmt {\n        span: 1963..2070,\n        discriminant: _,\n        cases: [\n            SwitchCase {\n                span: 1989..2030,\n                test: Some(\n                    _,\n                ),\n                cons: [\n                    _,\n                ],\n            },\n            SwitchCase {\n                span: 2026..2059,\n                test: Some(\n                    _,\n                ),\n                cons: [\n                    _,\n                ],\n            },\n        ],\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 2064..2088,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)"
  ],
  "decls": [
    "TsEnum(\n    TsEnumDecl {\n        span: 1..40,\n        ident: Ident {\n            span: 12..18,\n            sym: \"Choice\",\n        },\n        declare: false,\n        is_const: true,\n        members: [\n            TsEnumMember {\n                span: 21..29,\n                name: Ident(\n                    Ident {\n                        span: 21..28,\n                        sym: \"Unknown\",\n                    },\n                ),\n                init: None,\n            },\n            TsEnumMember {\n                span: 30..34,\n                name: Ident(\n                    Ident {\n                        span: 30..33,\n                        sym: \"Yes\",\n                    },\n                ),\n                init: None,\n            },\n            TsEnumMember {\n                span: 35..39,\n                name: Ident(\n                    Ident {\n                        span: 35..37,\n                        sym: \"No\",\n                    },\n                ),\n                init: None,\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 42..83,\n        ident: Ident {\n            span: 47..52,\n            sym: \"YesNo\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 79..120,\n        ident: Ident {\n            span: 84..89,\n            sym: \"NoYes\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 116..186,\n        ident: Ident {\n            span: 121..133,\n            sym: \"UnknownYesNo\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 198..219,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 198..211,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 216..237,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 216..229,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 234..272,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 234..264,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 269..301,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 269..299,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 178..311,\n        ident: Ident {\n            span: 187..189,\n            sym: \"f1\",\n        },\n        declare: false,\n        params: [],\n        body: [\n            _,\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 303..399,\n        ident: Ident {\n            span: 312..314,\n            sym: \"f2\",\n        },\n        declare: false,\n        params: [\n            _,\n            _,\n            _,\n        ],\n        body: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 434..456,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 434..448,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 453..475,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 453..467,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 472..494,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 472..486,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 491..513,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 491..505,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 510..532,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 510..524,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 529..551,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 529..543,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 548..570,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 548..562,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 567..589,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 567..581,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 586..605,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 586..597,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 602..621,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 602..613,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 618..641,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 618..633,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 638..661,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 638..653,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 658..682,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 658..674,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 679..703,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 679..695,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 700..722,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 700..714,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 719..741,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 719..733,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 738..761,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 738..753,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 758..781,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 758..773,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 778..791,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 778..789,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 391..801,\n        ident: Ident {\n            span: 400..402,\n            sym: \"f3\",\n        },\n        declare: false,\n        params: [\n            _,\n            _,\n        ],\n        body: [\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 793..860,\n        ident: Ident {\n            span: 802..804,\n            sym: \"f4\",\n        },\n        declare: false,\n        params: [\n            _,\n            _,\n        ],\n        body: [\n            _,\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 861..903,\n        ident: Ident {\n            span: 870..871,\n            sym: \"g\",\n        },\n        declare: true,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 904..946,\n        ident: Ident {\n            span: 913..914,\n            sym: \"g\",\n        },\n        declare: true,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 947..987,\n        ident: Ident {\n            span: 956..957,\n            sym: \"g\",\n        },\n        declare: true,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1035..1066,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1035..1058,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1063..1093,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1063..1085,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1090..1112,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1090..1104,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1109..1131,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1109..1123,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1128..1144,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1128..1142,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 979..1154,\n        ident: Ident {\n            span: 988..990,\n            sym: \"f5\",\n        },\n        declare: false,\n        params: [\n            _,\n            _,\n            _,\n        ],\n        body: [\n            _,\n            _,\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1146..1238,\n        ident: Ident {\n            span: 1155..1166,\n            sym: \"assertNever\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1230..1369,\n        ident: Ident {\n            span: 1239..1242,\n            sym: \"f10\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1361..1527,\n        ident: Ident {\n            span: 1370..1373,\n            sym: \"f11\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1519..1620,\n        ident: Ident {\n            span: 1528..1531,\n            sym: \"f12\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1612..1724,\n        ident: Ident {\n            span: 1621..1624,\n            sym: \"f13\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1720..1815,\n        ident: Ident {\n            span: 1725..1729,\n            sym: \"Item\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1807..1943,\n        ident: Ident {\n            span: 1816..1819,\n            sym: \"f20\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1935..2088,\n        ident: Ident {\n            span: 1944..1947,\n            sym: \"f21\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n            _,\n        ],\n    },\n)"
  ],
  "pats": [
    "Ident(\n    Ident {\n        span: 202..203,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 220..221,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 238..239,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 273..274,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 315..316,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 325..326,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 342..343,\n        sym: \"c\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 359..360,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 370..371,\n        sym: \"c\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 381..382,\n        sym: \"c\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 403..404,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 418..419,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 438..439,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 440..448,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 457..458,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 459..467,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 476..477,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 478..486,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 495..496,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 497..505,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 514..515,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 516..524,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 533..534,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 535..543,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 552..553,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 554..562,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 571..572,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 573..581,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 590..591,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 592..597,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 606..607,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 608..613,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 622..623,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 624..633,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 642..643,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 644..653,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 662..663,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 664..674,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 683..684,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 685..695,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 704..705,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 706..714,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 723..724,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 725..733,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 742..743,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 744..753,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 762..763,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 764..773,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 782..783,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 784..789,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 805..806,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 820..821,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 872..873,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 915..916,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 958..959,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 991..992,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1001..1002,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1018..1019,\n        sym: \"c\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1039..1041,\n        sym: \"z1\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 1042..1058,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1067..1069,\n        sym: \"z2\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 1070..1085,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1094..1096,\n        sym: \"z3\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 1097..1104,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1113..1115,\n        sym: \"z4\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 1116..1123,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1132..1134,\n        sym: \"z5\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 1135..1142,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1167..1168,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1243..1244,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1374..1375,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1532..1533,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1625..1626,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1820..1821,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1948..1949,\n        sym: \"x\",\n    },\n)"
  ],
  "exprs": [
    "Ident(\n    Ident {\n        span: 363..364,\n        sym: \"a\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 361..365,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 374..375,\n        sym: \"a\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 372..376,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 385..386,\n        sym: \"b\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 383..387,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 442..443,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 446..447,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 444..448,\n        op: Add,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 461..462,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 465..466,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 463..467,\n        op: Sub,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 480..481,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 484..485,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 482..486,\n        op: Mul,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 499..500,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 503..504,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 501..505,\n        op: Div,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 518..519,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 522..523,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 520..524,\n        op: Mod,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 537..538,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 541..542,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 539..543,\n        op: BitOr,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 556..557,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 560..561,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 558..562,\n        op: BitAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 575..576,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 579..580,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 577..581,\n        op: BitXor,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 595..596,\n        sym: \"b\",\n    },\n)",
    "Unary(\n    UnaryExpr {\n        span: 594..597,\n        op: Minus,\n        arg: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 611..612,\n        sym: \"b\",\n    },\n)",
    "Unary(\n    UnaryExpr {\n        span: 610..613,\n        op: Tilde,\n        arg: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 626..627,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 631..632,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 628..633,\n        op: EqEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 646..647,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 651..652,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 648..653,\n        op: NotEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 666..667,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 672..673,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 668..674,\n        op: EqEqEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 687..688,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 693..694,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 689..695,\n        op: NotEqEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 708..709,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 712..713,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 710..714,\n        op: Gt,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 727..728,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 731..732,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 729..733,\n        op: Lt,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 746..747,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 751..752,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 748..753,\n        op: GtEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 766..767,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 771..772,\n        sym: \"b\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 768..773,\n        op: LtEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 787..788,\n        sym: \"b\",\n    },\n)",
    "Unary(\n    UnaryExpr {\n        span: 786..789,\n        op: Bang,\n        arg: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 836..837,\n        sym: \"a\",\n    },\n)",
    "Update(\n    UpdateExpr {\n        span: 837..840,\n        op: PlusPlus,\n        arg: _,\n        prefix: false,\n    },\n)",
    "Ident(\n    Ident {\n        span: 845..846,\n        sym: \"b\",\n    },\n)",
    "Update(\n    UpdateExpr {\n        span: 846..849,\n        op: PlusPlus,\n        arg: _,\n        prefix: false,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1044..1045,\n        sym: \"g\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1046..1052,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1052..1057,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1053..1056,\n                sym: \"Yes\",\n            },\n        ),\n    },\n)",
    "Call(\n    CallExpr {\n        span: 1045..1058,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1072..1073,\n        sym: \"g\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1074..1080,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1080..1084,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1081..1083,\n                sym: \"No\",\n            },\n        ),\n    },\n)",
    "Call(\n    CallExpr {\n        span: 1073..1085,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1099..1100,\n        sym: \"g\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1101..1102,\n        sym: \"a\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 1100..1104,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1118..1119,\n        sym: \"g\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1120..1121,\n        sym: \"b\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 1119..1123,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1137..1138,\n        sym: \"g\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1139..1140,\n        sym: \"c\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 1138..1142,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1200..1205,\n        sym: \"Error\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1206..1224,\n            value: \"Unexpected value\",\n        },\n    ),\n)",
    "Call(\n    CallExpr {\n        span: 1205..1226,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "New(\n    NewExpr {\n        span: 1196..1226,\n        callee: _,\n        args: [],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1267..1268,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1285..1291,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1291..1296,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1292..1295,\n                sym: \"Yes\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1304..1310,\n            value: \"true\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 1325..1331,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1331..1335,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1332..1334,\n                sym: \"No\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1343..1350,\n            value: \"false\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 1398..1399,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1416..1422,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1422..1427,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1423..1426,\n                sym: \"Yes\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1435..1441,\n            value: \"true\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 1456..1462,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1462..1466,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1463..1465,\n                sym: \"No\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 1474..1481,\n            value: \"false\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 1500..1511,\n        sym: \"assertNever\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1512..1513,\n        sym: \"x\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 1511..1515,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1559..1560,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1572..1573,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1600..1601,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1652..1653,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1658..1664,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1664..1669,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1665..1668,\n                sym: \"Yes\",\n            },\n        ),\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 1654..1669,\n        op: EqEqEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1680..1681,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1708..1709,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1843..1844,\n        sym: \"x\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1844..1850,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1845..1849,\n                sym: \"kind\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1866..1872,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1872..1877,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1873..1876,\n                sym: \"Yes\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1885..1886,\n        sym: \"x\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1886..1889,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1887..1888,\n                sym: \"a\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1903..1909,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1909..1913,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1910..1912,\n                sym: \"No\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1921..1922,\n        sym: \"x\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1922..1925,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1923..1924,\n                sym: \"b\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1971..1972,\n        sym: \"x\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1972..1978,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1973..1977,\n                sym: \"kind\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1994..2000,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2000..2005,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2001..2004,\n                sym: \"Yes\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2013..2014,\n        sym: \"x\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2014..2017,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2015..2016,\n                sym: \"a\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2031..2037,\n        sym: \"Choice\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2037..2041,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2038..2040,\n                sym: \"No\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2049..2050,\n        sym: \"x\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2050..2053,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2051..2052,\n                sym: \"b\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2071..2082,\n        sym: \"assertNever\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2083..2084,\n        sym: \"x\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 2082..2086,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)"
  ],
  "module_decls": [],
  "functions": [],
  "classes": [],
  "class_members": [],
  "jsx_elements": [],
  "ts_types": [
    "TypeRef(\n    TsTypeRef {\n        span: 55..67,\n        name: Ident {\n            span: 55..67,\n            sym: \"Choice.Yes\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 68..78,\n        name: Ident {\n            span: 68..78,\n            sym: \"Choice.No\",\n        },\n        type_args: [],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 55..78,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 92..103,\n        name: Ident {\n            span: 92..103,\n            sym: \"Choice.No\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 104..115,\n        name: Ident {\n            span: 104..115,\n            sym: \"Choice.Yes\",\n        },\n        type_args: [],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 92..115,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 136..152,\n        name: Ident {\n            span: 136..152,\n            sym: \"Choice.Unknown\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 153..165,\n        name: Ident {\n            span: 153..165,\n            sym: \"Choice.Yes\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 166..176,\n        name: Ident {\n            span: 166..176,\n            sym: \"Choice.No\",\n        },\n        type_args: [],\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 136..176,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 1744..1755,\n        name: Ident {\n            span: 1744..1755,\n            sym: \"Choice.Yes\",\n        },\n        type_args: [],\n    },\n)",
    "Keyword(\n    String,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1736..1769,\n        members: [\n            TsTypeMember {\n                span: 1738..1757,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1738..1742,\n                            sym: \"kind\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1756..1767,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1756..1757,\n                            sym: \"a\",\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: 1782..1792,\n        name: Ident {\n            span: 1782..1792,\n            sym: \"Choice.No\",\n        },\n        type_args: [],\n    },\n)",
    "Keyword(\n    String,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 1774..1805,\n        members: [\n            TsTypeMember {\n                span: 1776..1794,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1776..1780,\n                            sym: \"kind\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 1793..1804,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 1793..1794,\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: 1736..1805,\n        types: [\n            _,\n            _,\n        ],\n    },\n)"
  ]
}
