{
  "programs": [
    "Program {\n    span: 47..778,\n    kind: Script,\n    body: [\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)",
    "Block(\n    BlockStmt {\n        span: 401..422,\n        stmts: [],\n    },\n)",
    "For(\n    ForStmt {\n        span: 359..422,\n        head: Classic(\n            ForClassicHead {\n                init: Some(\n                    Decl(\n                        _,\n                    ),\n                ),\n                test: Some(\n                    _,\n                ),\n                update: Some(\n                    _,\n                ),\n            },\n        ),\n        body: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 469..523,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 47..532,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Block(\n    BlockStmt {\n        span: 601..617,\n        stmts: [],\n    },\n)",
    "For(\n    ForStmt {\n        span: 582..617,\n        head: Of(\n            ForOfHead {\n                is_await: false,\n                left: Decl(\n                    _,\n                ),\n                right: _,\n            },\n        ),\n        body: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 633..649,\n        stmts: [],\n    },\n)",
    "For(\n    ForStmt {\n        span: 614..649,\n        head: Of(\n            ForOfHead {\n                is_await: false,\n                left: Decl(\n                    _,\n                ),\n                right: _,\n            },\n        ),\n        body: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 667..683,\n        stmts: [],\n    },\n)",
    "For(\n    ForStmt {\n        span: 646..683,\n        head: Of(\n            ForOfHead {\n                is_await: false,\n                left: Decl(\n                    _,\n                ),\n                right: _,\n            },\n        ),\n        body: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 699..715,\n        stmts: [],\n    },\n)",
    "For(\n    ForStmt {\n        span: 680..715,\n        head: Of(\n            ForOfHead {\n                is_await: false,\n                left: Decl(\n                    _,\n                ),\n                right: _,\n            },\n        ),\n        body: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 731..747,\n        stmts: [],\n    },\n)",
    "For(\n    ForStmt {\n        span: 712..747,\n        head: Of(\n            ForOfHead {\n                is_await: false,\n                left: Decl(\n                    _,\n                ),\n                right: _,\n            },\n        ),\n        body: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 765..774,\n        stmts: [],\n    },\n)",
    "For(\n    ForStmt {\n        span: 744..774,\n        head: Of(\n            ForOfHead {\n                is_await: false,\n                left: Decl(\n                    _,\n                ),\n                right: _,\n            },\n        ),\n        body: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 531..778,\n        expr: _,\n    },\n)"
  ],
  "decls": [
    "Var(\n    VarDecl {\n        span: 66..86,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 66..77,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 83..102,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 83..94,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 99..120,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 99..110,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 115..137,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 115..128,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 134..153,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 134..145,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 150..171,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 150..161,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 166..188,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 166..179,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 185..212,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 185..196,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n            VarDeclarator {\n                span: 185..204,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 209..238,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 209..220,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n            VarDeclarator {\n                span: 209..228,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 233..263,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 233..246,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n            VarDeclarator {\n                span: 233..254,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 260..295,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 260..287,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 292..329,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 292..319,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 324..362,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 324..353,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 364..385,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 364..376,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n            VarDeclarator {\n                span: 364..385,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 414..525,\n        ident: Ident {\n            span: 423..424,\n            sym: \"f\",\n        },\n        declare: false,\n        params: [\n            _,\n            _,\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 550..585,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 550..576,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 587..596,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 587..596,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 619..628,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 619..628,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 651..662,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 651..662,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 685..694,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 685..694,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 717..726,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 717..726,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 749..760,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 749..760,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)"
  ],
  "pats": [
    "Ident(\n    Ident {\n        span: 70..71,\n        sym: \"a\",\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 87..91,\n        props: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 103..107,\n        props: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 121..125,\n        props: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 138..142,\n        elems: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 154..158,\n        elems: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 172..176,\n        elems: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 189..193,\n        props: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 197..201,\n        elems: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 213..217,\n        props: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 221..225,\n        elems: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 239..243,\n        props: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 247..251,\n        elems: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 270..273,\n        props: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 278..282,\n        elems: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 264..284,\n        props: [\n            KeyValue(\n                ObjectPatKeyValue {\n                    span: 266..273,\n                    key: Ident(\n                        Ident {\n                            span: 266..268,\n                            sym: \"p1\",\n                        },\n                    ),\n                    value: _,\n                },\n            ),\n            KeyValue(\n                ObjectPatKeyValue {\n                    span: 274..282,\n                    key: Ident(\n                        Ident {\n                            span: 274..276,\n                            sym: \"p2\",\n                        },\n                    ),\n                    value: _,\n                },\n            ),\n        ],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 302..305,\n        props: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 310..314,\n        elems: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 296..316,\n        props: [\n            KeyValue(\n                ObjectPatKeyValue {\n                    span: 298..305,\n                    key: Ident(\n                        Ident {\n                            span: 298..300,\n                            sym: \"p1\",\n                        },\n                    ),\n                    value: _,\n                },\n            ),\n            KeyValue(\n                ObjectPatKeyValue {\n                    span: 306..314,\n                    key: Ident(\n                        Ident {\n                            span: 306..308,\n                            sym: \"p2\",\n                        },\n                    ),\n                    value: _,\n                },\n            ),\n        ],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 336..339,\n        props: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 344..348,\n        elems: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 330..350,\n        props: [\n            KeyValue(\n                ObjectPatKeyValue {\n                    span: 332..339,\n                    key: Ident(\n                        Ident {\n                            span: 332..334,\n                            sym: \"p1\",\n                        },\n                    ),\n                    value: _,\n                },\n            ),\n            KeyValue(\n                ObjectPatKeyValue {\n                    span: 340..348,\n                    key: Ident(\n                        Ident {\n                            span: 340..342,\n                            sym: \"p2\",\n                        },\n                    ),\n                    value: _,\n                },\n            ),\n        ],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 368..372,\n        props: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 377..381,\n        props: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 425..429,\n        props: [],\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 428..432,\n        left: _,\n        right: _,\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 433..437,\n        elems: [],\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 436..440,\n        left: _,\n        right: _,\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 446..450,\n        props: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 441..455,\n        props: [\n            KeyValue(\n                ObjectPatKeyValue {\n                    span: 443..450,\n                    key: Ident(\n                        Ident {\n                            span: 443..444,\n                            sym: \"p\",\n                        },\n                    ),\n                    value: _,\n                },\n            ),\n            Assign(\n                ObjectPatAssign {\n                    span: 451..453,\n                    key: Ident {\n                        span: 451..452,\n                        sym: \"a\",\n                    },\n                    value: None,\n                },\n            ),\n        ],\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 454..458,\n        left: _,\n        right: _,\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 477..481,\n        props: [],\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 480..484,\n        left: _,\n        right: _,\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 485..489,\n        elems: [],\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 488..492,\n        left: _,\n        right: _,\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 498..502,\n        props: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 493..508,\n        props: [\n            KeyValue(\n                ObjectPatKeyValue {\n                    span: 495..502,\n                    key: Ident(\n                        Ident {\n                            span: 495..496,\n                            sym: \"p\",\n                        },\n                    ),\n                    value: _,\n                },\n            ),\n            Assign(\n                ObjectPatAssign {\n                    span: 503..506,\n                    key: Ident {\n                        span: 503..504,\n                        sym: \"a\",\n                    },\n                    value: None,\n                },\n            ),\n        ],\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 507..511,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 556..558,\n        sym: \"ns\",\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 591..596,\n        props: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 623..628,\n        props: [],\n    },\n)",
    "Object(\n    ObjectPat {\n        span: 657..662,\n        props: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 689..694,\n        elems: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 721..726,\n        elems: [],\n    },\n)",
    "Array(\n    ArrayPat {\n        span: 755..760,\n        elems: [],\n    },\n)"
  ],
  "exprs": [
    "Ident(\n    Ident {\n        span: 92..93,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 108..109,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 126..127,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 143..144,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 159..160,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 177..178,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 194..195,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 202..203,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 218..219,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 226..227,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 244..245,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 252..253,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 285..286,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 317..318,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 351..352,\n        sym: \"a\",\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 373..376,\n        props: [],\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 382..385,\n        props: [],\n    },\n)",
    "Lit(\n    Bool(\n        BoolLit {\n            span: 386..391,\n            value: false,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 398..399,\n            value: 0.0,\n        },\n    ),\n)",
    "Unary(\n    UnaryExpr {\n        span: 393..400,\n        op: Void,\n        arg: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 430..431,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 438..439,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 456..457,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 482..483,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 490..491,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 509..510,\n        sym: \"a\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 515..516,\n        sym: \"a\",\n    },\n)",
    "Arrow(\n    ArrowExpr {\n        span: 476..517,\n        params: [\n            _,\n            _,\n            _,\n        ],\n        body: Expr(\n            _,\n        ),\n        is_async: false,\n    },\n)",
    "Function(\n    _,\n)",
    "Paren(\n    ParenExpr {\n        span: 47..527,\n        expr: _,\n    },\n)",
    "Call(\n    CallExpr {\n        span: 526..529,\n        callee: _,\n        args: [],\n    },\n)",
    "Array(\n    ArrayExpr {\n        span: 573..576,\n        elems: [],\n    },\n)",
    "Ident(\n    Ident {\n        span: 597..599,\n        sym: \"ns\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 629..631,\n        sym: \"ns\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 663..665,\n        sym: \"ns\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 695..697,\n        sym: \"ns\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 727..729,\n        sym: \"ns\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 761..763,\n        sym: \"ns\",\n    },\n)",
    "Function(\n    _,\n)",
    "Paren(\n    ParenExpr {\n        span: 531..776,\n        expr: _,\n    },\n)",
    "Call(\n    CallExpr {\n        span: 775..778,\n        callee: _,\n        args: [],\n    },\n)"
  ],
  "module_decls": [],
  "functions": [
    "Function {\n    span: 48..526,\n    params: [],\n    body: [\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 532..775,\n    params: [],\n    body: [\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}"
  ],
  "classes": [],
  "class_members": [],
  "jsx_elements": [],
  "ts_types": []
}
