{
  "programs": [
    "Program {\n    span: 1..737,\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}"
  ],
  "stmts": [
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 41..46,\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: 393..401,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 400..408,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 407..415,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 414..422,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 421..429,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 428..436,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 435..443,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 442..450,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 449..457,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 456..464,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 463..471,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 470..478,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 477..485,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 484..493,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 492..500,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 499..508,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 507..516,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 515..532,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 597..609,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 608..620,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 619..627,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)"
  ],
  "decls": [
    "Var(\n    VarDecl {\n        span: 1..19,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1..12,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 43..63,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 43..53,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsInterface(\n    TsInterfaceDecl {\n        span: 54..90,\n        ident: Ident {\n            span: 64..65,\n            sym: \"I\",\n        },\n        declare: false,\n        type_params: [],\n        extends: [],\n        body: [\n            TsTypeMember {\n                span: 72..86,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 72..75,\n                            sym: \"foo\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 87..103,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 87..97,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsEnum(\n    TsEnumDecl {\n        span: 99..115,\n        ident: Ident {\n            span: 104..105,\n            sym: \"E\",\n        },\n        declare: false,\n        is_const: false,\n        members: [\n            TsEnumMember {\n                span: 108..111,\n                name: Ident(\n                    Ident {\n                        span: 108..109,\n                        sym: \"A\",\n                    },\n                ),\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 112..127,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 112..122,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 124..142,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 124..138,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 139..157,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 139..153,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 154..173,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 154..169,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 170..186,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 170..182,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 183..198,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 183..194,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 195..211,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 195..207,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 208..226,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 208..222,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 223..237,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 223..233,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 234..254,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 234..250,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 251..271,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 251..267,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 268..301,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 268..297,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 298..318,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 298..314,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 315..342,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 315..338,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 339..348,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 339..348,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 362..380,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 362..376,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 377..394,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 377..391,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 524..737,\n        ident: Ident {\n            span: 533..536,\n            sym: \"foo\",\n        },\n        declare: false,\n        params: [\n            _,\n            _,\n            _,\n        ],\n        body: [\n            _,\n            _,\n            _,\n        ],\n    },\n)"
  ],
  "pats": [
    "Ident(\n    Ident {\n        span: 5..6,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 47..49,\n        sym: \"ac\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 91..93,\n        sym: \"ai\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 116..118,\n        sym: \"ae\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 128..129,\n        sym: \"b\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 143..144,\n        sym: \"c\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 158..159,\n        sym: \"d\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 174..175,\n        sym: \"e\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 187..188,\n        sym: \"f\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 199..200,\n        sym: \"g\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 212..213,\n        sym: \"h\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 227..228,\n        sym: \"i\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 238..239,\n        sym: \"j\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 255..256,\n        sym: \"k\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 272..273,\n        sym: \"l\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 302..303,\n        sym: \"m\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 319..320,\n        sym: \"n\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 343..344,\n        sym: \"o\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 366..367,\n        sym: \"p\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 381..382,\n        sym: \"q\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 393..394,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 400..401,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 407..408,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 414..415,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 421..422,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 428..429,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 435..436,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 442..443,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 449..450,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 456..457,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 463..464,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 470..471,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 477..478,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 484..485,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 492..493,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 499..500,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 507..508,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 515..516,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 573..574,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 579..580,\n        sym: \"y\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 585..586,\n        sym: \"z\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 597..598,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 608..609,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 619..620,\n        sym: \"a\",\n    },\n)"
  ],
  "exprs": [
    "Lit(\n    Null(\n        NullLit {\n            span: 0..0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 397..398,\n        sym: \"b\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 395..399,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 404..405,\n        sym: \"c\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 402..406,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 411..412,\n        sym: \"d\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 409..413,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 418..419,\n        sym: \"e\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 416..420,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 425..426,\n        sym: \"f\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 423..427,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 432..433,\n        sym: \"g\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 430..434,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 439..440,\n        sym: \"h\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 437..441,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 446..447,\n        sym: \"i\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 444..448,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 453..454,\n        sym: \"j\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 451..455,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 460..461,\n        sym: \"k\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 458..462,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 467..468,\n        sym: \"l\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 465..469,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 474..475,\n        sym: \"m\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 472..476,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 481..482,\n        sym: \"o\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 479..483,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 488..489,\n        sym: \"p\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 486..490,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 496..497,\n        sym: \"q\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 494..498,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 503..505,\n        sym: \"ac\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 501..506,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 511..513,\n        sym: \"ai\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 509..514,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 519..521,\n        sym: \"ae\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 517..522,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 601..602,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 599..603,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 612..613,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 610..614,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 623..624,\n        sym: \"z\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 621..625,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)"
  ],
  "module_decls": [],
  "functions": [],
  "classes": [],
  "class_members": [],
  "jsx_elements": [],
  "ts_types": [
    "Keyword(\n    String,\n)"
  ]
}
