{
  "programs": [
    "Program {\n    span: 93..875,\n    kind: Script,\n    body: [\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n    ],\n}"
  ],
  "stmts": [
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 167..182,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 137..185,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 183..200,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 198..216,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 214..251,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 307..329,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 249..334,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 412..423,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 365..426,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 424..518,\n        expr: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 588..629,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 516..632,\n        expr: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 668..681,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 630..712,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 737..785,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 782..836,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 833..875,\n        expr: _,\n    },\n)"
  ],
  "decls": [
    "Var(\n    VarDecl {\n        span: 93..139,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 93..111,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 288..309,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 288..302,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 331..367,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 331..364,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 709..740,\n        kind: Var,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 709..736,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)"
  ],
  "pats": [
    "Ident(\n    Ident {\n        span: 97..99,\n        sym: \"my\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 100..111,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 158..159,\n        sym: \"n\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 292..294,\n        sym: \"me\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 295..302,\n        left: _,\n        right: _,\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 335..336,\n        sym: \"q\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 337..364,\n        left: _,\n        right: _,\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 567..572,\n        sym: \"first\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 574..580,\n        sym: \"second\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 713..716,\n        sym: \"min\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 717..736,\n        left: _,\n        right: _,\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)"
  ],
  "exprs": [
    "Ident(\n    Ident {\n        span: 102..104,\n        sym: \"my\",\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 108..111,\n        props: [],\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 105..111,\n        op: NullishCoalescing,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 137..139,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 139..148,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 140..146,\n                sym: \"method\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 174..175,\n        sym: \"n\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 178..179,\n            value: 1.0,\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 176..180,\n        op: Add,\n        left: _,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Assign(\n    AssignExpr {\n        span: 147..185,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 183..185,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 185..194,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 186..192,\n                sym: \"number\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 195..196,\n            value: 1.0,\n        },\n    ),\n)",
    "Assign(\n    AssignExpr {\n        span: 193..197,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 198..200,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 200..209,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 201..207,\n                sym: \"object\",\n            },\n        ),\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 210..213,\n        props: [],\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 208..213,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 214..216,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 216..228,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 217..226,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 229..231,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 231..244,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 232..241,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 245..248,\n        props: [],\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 242..248,\n        op: NullishCoalescing,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 227..248,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 249..251,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 251..262,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 252..261,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 261..269,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 262..267,\n                sym: \"query\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 297..301,\n        sym: \"this\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 307..309,\n        sym: \"me\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 309..320,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 310..318,\n                sym: \"property\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Bool(\n        BoolLit {\n            span: 321..326,\n            value: false,\n        },\n    ),\n)",
    "Assign(\n    AssignExpr {\n        span: 319..327,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Assign(\n    AssignExpr {\n        span: 268..330,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 343..345,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 345..356,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 346..355,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 355..362,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 356..361,\n                sym: \"query\",\n            },\n        ),\n    },\n)",
    "Call(\n    CallExpr {\n        span: 361..364,\n        callee: _,\n        args: [],\n    },\n)",
    "New(\n    NewExpr {\n        span: 339..364,\n        callee: _,\n        args: [],\n    },\n)",
    "Ident(\n    Ident {\n        span: 365..367,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 367..378,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 368..377,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 377..384,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 378..383,\n                sym: \"query\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 383..393,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 384..391,\n                sym: \"another\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 419..420,\n            value: 1.0,\n        },\n    ),\n)",
    "Function(\n    _,\n)",
    "Assign(\n    AssignExpr {\n        span: 392..426,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 424..426,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 426..437,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 427..436,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 436..443,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 437..442,\n                sym: \"query\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 442..451,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 443..449,\n                sym: \"result\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 452..458,\n            value: \"none\",\n        },\n    ),\n)",
    "Assign(\n    AssignExpr {\n        span: 450..518,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 516..518,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 518..529,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 519..528,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 528..535,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 529..533,\n                sym: \"sort\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 536..538,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 538..549,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 539..548,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 548..556,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 549..553,\n                sym: \"sort\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 595..600,\n        sym: \"first\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 603..609,\n        sym: \"second\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 601..611,\n        op: Gt,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 612..617,\n        sym: \"first\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 620..626,\n        sym: \"second\",\n    },\n)",
    "Cond(\n    CondExpr {\n        span: 610..627,\n        test: _,\n        cons: _,\n        alt: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Binary(\n    BinaryExpr {\n        span: 554..632,\n        op: NullishCoalescing,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 534..632,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 630..632,\n        sym: \"my\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 632..643,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 633..642,\n                sym: \"predicate\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 642..649,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 643..647,\n                sym: \"type\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 675..678,\n            value: 101.0,\n        },\n    ),\n)",
    "Class(\n    _,\n)",
    "Assign(\n    AssignExpr {\n        span: 648..712,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 719..725,\n        sym: \"window\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 725..732,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 726..729,\n                sym: \"min\",\n            },\n        ),\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 733..736,\n        props: [],\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 730..736,\n        op: NullishCoalescing,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 737..740,\n        sym: \"min\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 740..747,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 741..745,\n                sym: \"nest\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 748..752,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 752..757,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 753..756,\n                sym: \"min\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 756..764,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 757..761,\n                sym: \"nest\",\n            },\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Binary(\n    BinaryExpr {\n        span: 762..781,\n        op: NullishCoalescing,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 746..781,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 782..785,\n        sym: \"min\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 785..791,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 786..790,\n                sym: \"nest\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 790..798,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 791..796,\n                sym: \"other\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 799..803,\n        sym: \"self\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 803..808,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 804..807,\n                sym: \"min\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 807..813,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 808..812,\n                sym: \"nest\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 812..821,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 813..818,\n                sym: \"other\",\n            },\n        ),\n    },\n)",
    "Class(\n    _,\n)",
    "Binary(\n    BinaryExpr {\n        span: 819..832,\n        op: NullishCoalescing,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 797..832,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 833..836,\n        sym: \"min\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 836..847,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 837..845,\n                sym: \"property\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 848..854,\n        sym: \"global\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 854..859,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 855..858,\n                sym: \"min\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 858..870,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 859..867,\n                sym: \"property\",\n            },\n        ),\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 871..874,\n        props: [],\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 868..874,\n        op: NullishCoalescing,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 846..874,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)"
  ],
  "module_decls": [],
  "functions": [
    "Function {\n    span: 149..185,\n    params: [\n        Param {\n            span: 149..149,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 270..330,\n    params: [],\n    body: [\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 394..426,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 557..632,\n    params: [\n        Param {\n            span: 557..557,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 557..557,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 662..683,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 765..781,\n    params: [],\n    body: [],\n    is_async: false,\n    is_generator: false,\n}"
  ],
  "classes": [
    "Class {\n    span: 650..712,\n    decorators: [],\n    ident: None,\n    super_class: None,\n    body: [\n        _,\n    ],\n}",
    "Class {\n    span: 822..832,\n    decorators: [],\n    ident: None,\n    super_class: None,\n    body: [],\n}"
  ],
  "class_members": [
    "Method(\n    ClassMethod {\n        span: 662..683,\n        decorators: [],\n        key: Ident(\n            Ident {\n                span: 662..663,\n                sym: \"m\",\n            },\n        ),\n        function: _,\n        is_static: false,\n        kind: Method,\n    },\n)"
  ],
  "jsx_elements": [],
  "ts_types": []
}
