{
  "programs": [
    "Program {\n    span: 164..4673,\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}"
  ],
  "stmts": [
    "Return(\n    ReturnStmt {\n        span: 205..225,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 278..297,\n        expr: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 327..347,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 371..391,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 420..441,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 733..759,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 755..779,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 809..832,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 795..838,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 777..838,\n        test: _,\n        cons: _,\n        alt: None,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 923..949,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 945..969,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 999..1022,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 985..1028,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 967..1028,\n        test: _,\n        cons: _,\n        alt: None,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 1118..1144,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1140..1164,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1194..1217,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 1180..1223,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 1162..1223,\n        test: _,\n        cons: _,\n        alt: None,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 1320..1346,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1342..1366,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1396..1419,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 1382..1425,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 1364..1425,\n        test: _,\n        cons: _,\n        alt: None,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 1528..1554,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1550..1574,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1604..1627,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 1590..1633,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 1572..1633,\n        test: _,\n        cons: _,\n        alt: None,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1468..1646,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 1756..1782,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1778..1802,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1832..1855,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 1818..1861,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 1800..1861,\n        test: _,\n        cons: _,\n        alt: None,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1696..1986,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2294..2348,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 2344..2391,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 2804..2858,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 2854..2901,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 3132..3142,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 3394..3421,\n        expr: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 3472..3492,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 3527..3548,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 3553..3580,\n        expr: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 3688..3712,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 3755..3780,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 3791..3817,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 3814..3884,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 3948..3956,\n        expr: _,\n    },\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 4207..4265,\n        expr: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 4366..4390,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 4451..4475,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 4530..4556,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 4626..4634,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 4631..4641,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 4638..4655,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 4652..4665,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 4662..4673,\n        expr: _,\n    },\n)"
  ],
  "decls": [
    "Var(\n    VarDecl {\n        span: 164..545,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 164..444,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 541..663,\n        ident: Ident {\n            span: 546..551,\n            sym: \"Point\",\n        },\n        declare: false,\n        type_params: [],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 660..846,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 660..841,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 843..1036,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 843..1031,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1033..1231,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1033..1226,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1228..1437,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1228..1428,\n                name: _,\n                init: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1438..1470,\n        ident: Ident {\n            span: 1447..1449,\n            sym: \"f1\",\n        },\n        declare: true,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 1647..1698,\n        ident: Ident {\n            span: 1656..1658,\n            sym: \"f2\",\n        },\n        declare: true,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 1982..2112,\n        ident: Ident {\n            span: 1987..2003,\n            sym: \"ObjectDescriptor\",\n        },\n        declare: false,\n        type_params: [\n            Ident {\n                span: 2004..2005,\n                sym: \"D\",\n            },\n            Ident {\n                span: 2007..2008,\n                sym: \"M\",\n            },\n        ],\n        ty: _,\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 2113..2181,\n        ident: Ident {\n            span: 2122..2132,\n            sym: \"makeObject\",\n        },\n        declare: true,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2178..2532,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2178..2401,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 2528..2620,\n        ident: Ident {\n            span: 2533..2550,\n            sym: \"ObjectDescriptor2\",\n        },\n        declare: false,\n        type_params: [\n            Ident {\n                span: 2551..2552,\n                sym: \"D\",\n            },\n            Ident {\n                span: 2554..2555,\n                sym: \"M\",\n            },\n        ],\n        ty: _,\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 2621..2690,\n        ident: Ident {\n            span: 2630..2641,\n            sym: \"makeObject2\",\n        },\n        declare: true,\n        params: [\n            _,\n        ],\n        body: [],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 2687..2996,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 2687..2911,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 2992..3076,\n        ident: Ident {\n            span: 2997..3005,\n            sym: \"PropDesc\",\n        },\n        declare: false,\n        type_params: [\n            Ident {\n                span: 3006..3007,\n                sym: \"T\",\n            },\n        ],\n        ty: _,\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 3143..3264,\n        ident: Ident {\n            span: 3152..3162,\n            sym: \"defineProp\",\n        },\n        declare: true,\n        params: [\n            _,\n            _,\n            _,\n        ],\n        body: [],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 3265..3349,\n        ident: Ident {\n            span: 3274..3285,\n            sym: \"defineProps\",\n        },\n        declare: true,\n        params: [\n            _,\n            _,\n        ],\n        body: [],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3346..3397,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3346..3393,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3418..3556,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3418..3552,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 3577..3794,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 3577..3790,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 3952..3997,\n        ident: Ident {\n            span: 3957..3967,\n            sym: \"Dictionary\",\n        },\n        declare: false,\n        type_params: [\n            Ident {\n                span: 3968..3969,\n                sym: \"T\",\n            },\n        ],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 3993..4062,\n        ident: Ident {\n            span: 3998..4006,\n            sym: \"Computed\",\n        },\n        declare: false,\n        type_params: [\n            Ident {\n                span: 4007..4008,\n                sym: \"T\",\n            },\n        ],\n        ty: _,\n    },\n)",
    "TsTypeAlias(\n    TsTypeAliasDecl {\n        span: 4058..4191,\n        ident: Ident {\n            span: 4063..4073,\n            sym: \"VueOptions\",\n        },\n        declare: false,\n        type_params: [\n            Ident {\n                span: 4074..4075,\n                sym: \"D\",\n            },\n            Ident {\n                span: 4077..4078,\n                sym: \"M\",\n            },\n            Ident {\n                span: 4080..4081,\n                sym: \"P\",\n            },\n        ],\n        ty: _,\n    },\n)",
    "Var(\n    VarDecl {\n        span: 4192..4208,\n        kind: Const,\n        declare: true,\n        declarators: [\n            VarDeclarator {\n                span: 4192..4208,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 4262..4629,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 4262..4624,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)"
  ],
  "pats": [
    "Ident(\n    Ident {\n        span: 168..172,\n        sym: \"obj1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 403..408,\n        sym: \"value\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Assign(\n    AssignPat {\n        span: 173..444,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 664..666,\n        sym: \"p1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 711..713,\n        sym: \"dx\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 715..717,\n        sym: \"dy\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 719..721,\n        sym: \"dz\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 847..849,\n        sym: \"p2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 901..903,\n        sym: \"dx\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 905..907,\n        sym: \"dy\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 909..911,\n        sym: \"dz\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1037..1039,\n        sym: \"p3\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1096..1098,\n        sym: \"dx\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1100..1102,\n        sym: \"dy\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1104..1106,\n        sym: \"dz\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1232..1234,\n        sym: \"p4\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1298..1300,\n        sym: \"dx\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1302..1304,\n        sym: \"dy\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1306..1308,\n        sym: \"dz\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1450..1451,\n        sym: \"p\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1506..1508,\n        sym: \"dx\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1510..1512,\n        sym: \"dy\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1514..1516,\n        sym: \"dz\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1659..1660,\n        sym: \"p\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1734..1736,\n        sym: \"dx\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1738..1740,\n        sym: \"dy\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1742..1744,\n        sym: \"dz\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 2139..2143,\n        sym: \"desc\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2182..2184,\n        sym: \"x1\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2256..2258,\n        sym: \"dx\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2268..2270,\n        sym: \"dy\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Assign(\n    AssignPat {\n        span: 2185..2401,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2648..2652,\n        sym: \"desc\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2691..2693,\n        sym: \"x2\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2766..2768,\n        sym: \"dx\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 2778..2780,\n        sym: \"dy\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Assign(\n    AssignPat {\n        span: 2694..2911,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3187..3190,\n        sym: \"obj\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3195..3199,\n        sym: \"name\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3204..3208,\n        sym: \"desc\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3292..3295,\n        sym: \"obj\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3300..3305,\n        sym: \"descs\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3350..3353,\n        sym: \"p10\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 3354..3393,\n        left: _,\n        right: _,\n    },\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 3422..3425,\n        sym: \"p11\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3502..3507,\n        sym: \"value\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Assign(\n    AssignPat {\n        span: 3426..3552,\n        left: _,\n        right: _,\n    },\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 3581..3584,\n        sym: \"p12\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3726..3731,\n        sym: \"value\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Assign(\n    AssignPat {\n        span: 3585..3790,\n        left: _,\n        right: _,\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 4198..4201,\n        sym: \"Vue\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4217..4224,\n        sym: \"options\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4266..4269,\n        sym: \"vue\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4341..4342,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4574..4579,\n        sym: \"value\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 4270..4624,\n        left: _,\n        right: _,\n    },\n)"
  ],
  "exprs": [
    "Lit(\n    Num(\n        NumberLit {\n            span: 184..185,\n            value: 1.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 212..216,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 216..219,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 217..218,\n                sym: \"a\",\n            },\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 234..241,\n            value: \"hello\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 278..282,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 282..285,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 283..284,\n                sym: \"g\",\n            },\n        ),\n    },\n)",
    "Call(\n    CallExpr {\n        span: 284..287,\n        callee: _,\n        args: [],\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 250..304,\n        props: [\n            KeyValueProp {\n                span: 260..303,\n                key: Ident(\n                    Ident {\n                        span: 260..261,\n                        sym: \"g\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 334..338,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 338..341,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 339..340,\n                sym: \"a\",\n            },\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 378..382,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 382..385,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 383..384,\n                sym: \"b\",\n            },\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 420..424,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 424..428,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 425..426,\n                sym: \"b\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 429..434,\n        sym: \"value\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 427..435,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 175..444,\n        props: [\n            KeyValueProp {\n                span: 181..186,\n                key: Ident(\n                    Ident {\n                        span: 181..182,\n                        sym: \"a\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 191..226,\n                key: Ident(\n                    Ident {\n                        span: 191..192,\n                        sym: \"f\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 231..242,\n                key: Ident(\n                    Ident {\n                        span: 231..232,\n                        sym: \"b\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 247..304,\n                key: Ident(\n                    Ident {\n                        span: 247..248,\n                        sym: \"c\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 309..348,\n                key: Ident(\n                    Ident {\n                        span: 313..314,\n                        sym: \"d\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 353..392,\n                key: Ident(\n                    Ident {\n                        span: 357..358,\n                        sym: \"e\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 397..443,\n                key: Ident(\n                    Ident {\n                        span: 401..402,\n                        sym: \"e\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 685..687,\n            value: 10.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 696..698,\n            value: 20.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 733..737,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 737..742,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 738..739,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 743..745,\n        sym: \"dx\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 740..746,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 755..759,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 759..764,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 760..761,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 765..767,\n        sym: \"dy\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 762..768,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 781..785,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 785..790,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 786..787,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 791..793,\n        sym: \"dz\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 788..794,\n        op: LogicalAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 809..813,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 813..818,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 814..815,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 819..821,\n        sym: \"dz\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 816..822,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 676..841,\n        props: [\n            KeyValueProp {\n                span: 682..688,\n                key: Ident(\n                    Ident {\n                        span: 682..683,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 693..699,\n                key: Ident(\n                    Ident {\n                        span: 693..694,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 704..840,\n                key: Ident(\n                    Ident {\n                        span: 704..710,\n                        sym: \"moveBy\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 875..877,\n            value: 10.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 886..888,\n            value: 20.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 923..927,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 927..932,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 928..929,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 933..935,\n        sym: \"dx\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 930..936,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 945..949,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 949..954,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 950..951,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 955..957,\n        sym: \"dy\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 952..958,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 971..975,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 975..980,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 976..977,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 981..983,\n        sym: \"dz\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 978..984,\n        op: LogicalAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 999..1003,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1003..1008,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1004..1005,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1009..1011,\n        sym: \"dz\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1006..1012,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 866..1031,\n        props: [\n            KeyValueProp {\n                span: 872..878,\n                key: Ident(\n                    Ident {\n                        span: 872..873,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 883..889,\n                key: Ident(\n                    Ident {\n                        span: 883..884,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 894..1030,\n                key: Ident(\n                    Ident {\n                        span: 894..900,\n                        sym: \"moveBy\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1070..1072,\n            value: 10.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1081..1083,\n            value: 20.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 1118..1122,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1122..1127,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1123..1124,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1128..1130,\n        sym: \"dx\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1125..1131,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1140..1144,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1144..1149,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1145..1146,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1150..1152,\n        sym: \"dy\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1147..1153,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1166..1170,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1170..1175,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1171..1172,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1176..1178,\n        sym: \"dz\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 1173..1179,\n        op: LogicalAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1194..1198,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1198..1203,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1199..1200,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1204..1206,\n        sym: \"dz\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1201..1207,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 1061..1226,\n        props: [\n            KeyValueProp {\n                span: 1067..1073,\n                key: Ident(\n                    Ident {\n                        span: 1067..1068,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1078..1084,\n                key: Ident(\n                    Ident {\n                        span: 1078..1079,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1089..1225,\n                key: Ident(\n                    Ident {\n                        span: 1089..1095,\n                        sym: \"moveBy\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1272..1274,\n            value: 10.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1283..1285,\n            value: 20.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 1320..1324,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1324..1329,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1325..1326,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1330..1332,\n        sym: \"dx\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1327..1333,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1342..1346,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1346..1351,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1347..1348,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1352..1354,\n        sym: \"dy\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1349..1355,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1368..1372,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1372..1377,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1373..1374,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1378..1380,\n        sym: \"dz\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 1375..1381,\n        op: LogicalAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1396..1400,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1400..1405,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1401..1402,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1406..1408,\n        sym: \"dz\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1403..1409,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 1263..1428,\n        props: [\n            KeyValueProp {\n                span: 1269..1275,\n                key: Ident(\n                    Ident {\n                        span: 1269..1270,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1280..1286,\n                key: Ident(\n                    Ident {\n                        span: 1280..1281,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1291..1427,\n                key: Ident(\n                    Ident {\n                        span: 1291..1297,\n                        sym: \"moveBy\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1468..1470,\n        sym: \"f1\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1480..1482,\n            value: 10.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1491..1493,\n            value: 20.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 1528..1532,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1532..1537,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1533..1534,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1538..1540,\n        sym: \"dx\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1535..1541,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1550..1554,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1554..1559,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1555..1556,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1560..1562,\n        sym: \"dy\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1557..1563,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1576..1580,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1580..1585,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1581..1582,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1586..1588,\n        sym: \"dz\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 1583..1589,\n        op: LogicalAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1604..1608,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1608..1613,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1609..1610,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1614..1616,\n        sym: \"dz\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1611..1617,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 1471..1636,\n        props: [\n            KeyValueProp {\n                span: 1477..1483,\n                key: Ident(\n                    Ident {\n                        span: 1477..1478,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1488..1494,\n                key: Ident(\n                    Ident {\n                        span: 1488..1489,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1499..1635,\n                key: Ident(\n                    Ident {\n                        span: 1499..1505,\n                        sym: \"moveBy\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 1470..1637,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1696..1698,\n        sym: \"f2\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1708..1710,\n            value: 10.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1719..1721,\n            value: 20.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 1756..1760,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1760..1765,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1761..1762,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1766..1768,\n        sym: \"dx\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1763..1769,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1778..1782,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1782..1787,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1783..1784,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1788..1790,\n        sym: \"dy\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1785..1791,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1804..1808,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1808..1813,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1809..1810,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1814..1816,\n        sym: \"dz\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 1811..1817,\n        op: LogicalAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1832..1836,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1836..1841,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1837..1838,\n                sym: \"z\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1842..1844,\n        sym: \"dz\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1839..1845,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 1699..1864,\n        props: [\n            KeyValueProp {\n                span: 1705..1711,\n                key: Ident(\n                    Ident {\n                        span: 1705..1706,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1716..1722,\n                key: Ident(\n                    Ident {\n                        span: 1716..1717,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1727..1863,\n                key: Ident(\n                    Ident {\n                        span: 1727..1733,\n                        sym: \"moveBy\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 1698..1865,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 2187..2197,\n        sym: \"makeObject\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2215..2216,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2221..2222,\n            value: 0.0,\n        },\n    ),\n)",
    "Object(\n    ObjectExpr {\n        span: 2210..2225,\n        props: [\n            KeyValueProp {\n                span: 2212..2217,\n                key: Ident(\n                    Ident {\n                        span: 2212..2213,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 2218..2224,\n                key: Ident(\n                    Ident {\n                        span: 2218..2219,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 2294..2298,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2298..2303,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2299..2300,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2304..2306,\n        sym: \"dx\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 2301..2307,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2344..2348,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2348..2353,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2349..2350,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2354..2356,\n        sym: \"dy\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 2351..2357,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 2239..2399,\n        props: [\n            KeyValueProp {\n                span: 2249..2397,\n                key: Ident(\n                    Ident {\n                        span: 2249..2255,\n                        sym: \"moveBy\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 2198..2400,\n        props: [\n            KeyValueProp {\n                span: 2204..2225,\n                key: Ident(\n                    Ident {\n                        span: 2204..2208,\n                        sym: \"data\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 2230..2399,\n                key: Ident(\n                    Ident {\n                        span: 2230..2237,\n                        sym: \"methods\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 2197..2401,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 2696..2707,\n        sym: \"makeObject2\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2725..2726,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 2731..2732,\n            value: 0.0,\n        },\n    ),\n)",
    "Object(\n    ObjectExpr {\n        span: 2720..2735,\n        props: [\n            KeyValueProp {\n                span: 2722..2727,\n                key: Ident(\n                    Ident {\n                        span: 2722..2723,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 2728..2734,\n                key: Ident(\n                    Ident {\n                        span: 2728..2729,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 2804..2808,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2808..2813,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2809..2810,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2814..2816,\n        sym: \"dx\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 2811..2817,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 2854..2858,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 2858..2863,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 2859..2860,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 2864..2866,\n        sym: \"dy\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 2861..2867,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 2749..2909,\n        props: [\n            KeyValueProp {\n                span: 2759..2907,\n                key: Ident(\n                    Ident {\n                        span: 2759..2765,\n                        sym: \"moveBy\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 2708..2910,\n        props: [\n            KeyValueProp {\n                span: 2714..2735,\n                key: Ident(\n                    Ident {\n                        span: 2714..2718,\n                        sym: \"data\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 2740..2909,\n                key: Ident(\n                    Ident {\n                        span: 2740..2747,\n                        sym: \"methods\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 2707..2911,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Lit(\n    Null(\n        NullLit {\n            span: 0..0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 3356..3366,\n        sym: \"defineProp\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3367..3369,\n        sym: \"p1\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3371..3376,\n            value: \"foo\",\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3387..3389,\n            value: 42.0,\n        },\n    ),\n)",
    "Object(\n    ObjectExpr {\n        span: 3378..3392,\n        props: [\n            KeyValueProp {\n                span: 3380..3391,\n                key: Ident(\n                    Ident {\n                        span: 3380..3385,\n                        sym: \"value\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 3366..3393,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 3394..3397,\n        sym: \"p10\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3397..3403,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3398..3401,\n                sym: \"foo\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3404..3407,\n        sym: \"p10\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3407..3413,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3408..3411,\n                sym: \"foo\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3414..3415,\n            value: 1.0,\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 3412..3416,\n        op: Add,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 3402..3416,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3428..3438,\n        sym: \"defineProp\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3439..3441,\n        sym: \"p1\",\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 3443..3448,\n            value: \"bar\",\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 3479..3483,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3483..3486,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3484..3485,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 3527..3531,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3531..3535,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3532..3533,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3536..3541,\n        sym: \"value\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 3534..3542,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 3450..3551,\n        props: [\n            KeyValueProp {\n                span: 3456..3493,\n                key: Ident(\n                    Ident {\n                        span: 3456..3459,\n                        sym: \"get\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 3498..3550,\n                key: Ident(\n                    Ident {\n                        span: 3498..3501,\n                        sym: \"set\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 3438..3552,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 3553..3556,\n        sym: \"p11\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3556..3562,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3557..3560,\n                sym: \"bar\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3563..3566,\n        sym: \"p11\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3566..3572,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3567..3570,\n                sym: \"bar\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3573..3574,\n            value: 1.0,\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 3571..3575,\n        op: Add,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 3561..3575,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3587..3598,\n        sym: \"defineProps\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 3599..3601,\n        sym: \"p1\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3631..3633,\n            value: 42.0,\n        },\n    ),\n)",
    "Object(\n    ObjectExpr {\n        span: 3614..3640,\n        props: [\n            KeyValueProp {\n                span: 3624..3639,\n                key: Ident(\n                    Ident {\n                        span: 3624..3629,\n                        sym: \"value\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 3695..3699,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3699..3702,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3700..3701,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 3755..3759,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3759..3763,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3760..3761,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3764..3769,\n        sym: \"value\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 3762..3770,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 3650..3788,\n        props: [\n            KeyValueProp {\n                span: 3660..3713,\n                key: Ident(\n                    Ident {\n                        span: 3660..3663,\n                        sym: \"get\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 3722..3786,\n                key: Ident(\n                    Ident {\n                        span: 3722..3725,\n                        sym: \"set\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 3603..3789,\n        props: [\n            KeyValueProp {\n                span: 3609..3640,\n                key: Ident(\n                    Ident {\n                        span: 3609..3612,\n                        sym: \"foo\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 3645..3788,\n                key: Ident(\n                    Ident {\n                        span: 3645..3648,\n                        sym: \"bar\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 3598..3790,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 3791..3794,\n        sym: \"p12\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3794..3800,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3795..3798,\n                sym: \"foo\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3801..3804,\n        sym: \"p12\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3804..3810,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3805..3808,\n                sym: \"foo\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3811..3812,\n            value: 1.0,\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 3809..3813,\n        op: Add,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 3799..3813,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 3814..3817,\n        sym: \"p12\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3817..3823,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3818..3821,\n                sym: \"bar\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 3824..3827,\n        sym: \"p12\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 3827..3833,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 3828..3831,\n                sym: \"bar\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 3834..3835,\n            value: 1.0,\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 3832..3836,\n        op: Add,\n        left: _,\n        right: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 3822..3836,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Lit(\n    Null(\n        NullLit {\n            span: 0..0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 4250..4251,\n        sym: \"D\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4254..4255,\n        sym: \"M\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 4252..4257,\n        op: BitAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 4258..4259,\n        sym: \"P\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 4256..4260,\n        op: BitAnd,\n        left: _,\n        right: _,\n    },\n)",
    "Arrow(\n    ArrowExpr {\n        span: 4216..4260,\n        params: [\n            _,\n        ],\n        body: Expr(\n            _,\n        ),\n        is_async: false,\n    },\n)",
    "Ident(\n    Ident {\n        span: 4276..4279,\n        sym: \"Vue\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 4304..4305,\n            value: 1.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 4310..4311,\n            value: 2.0,\n        },\n    ),\n)",
    "Object(\n    ObjectExpr {\n        span: 4299..4314,\n        props: [\n            KeyValueProp {\n                span: 4301..4306,\n                key: Ident(\n                    Ident {\n                        span: 4301..4302,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 4307..4313,\n                key: Ident(\n                    Ident {\n                        span: 4307..4308,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Paren(\n    ParenExpr {\n        span: 4298..4315,\n        expr: _,\n    },\n)",
    "Arrow(\n    ArrowExpr {\n        span: 4292..4315,\n        params: [],\n        body: Expr(\n            _,\n        ),\n        is_async: false,\n    },\n)",
    "Ident(\n    Ident {\n        span: 4373..4377,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 4377..4380,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 4378..4379,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 4329..4397,\n        props: [\n            KeyValueProp {\n                span: 4339..4396,\n                key: Ident(\n                    Ident {\n                        span: 4339..4340,\n                        sym: \"f\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 4458..4462,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 4462..4465,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 4463..4464,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4537..4541,\n            value: \"hi\",\n        },\n    ),\n)",
    "Function(\n    _,\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 4492..4620,\n        props: [\n            KeyValueProp {\n                span: 4506..4557,\n                key: Ident(\n                    Ident {\n                        span: 4506..4509,\n                        sym: \"get\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 4570..4614,\n                key: Ident(\n                    Ident {\n                        span: 4570..4573,\n                        sym: \"set\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 4412..4622,\n        props: [\n            KeyValueProp {\n                span: 4422..4476,\n                key: Ident(\n                    Ident {\n                        span: 4422..4426,\n                        sym: \"test\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 4485..4620,\n                key: Ident(\n                    Ident {\n                        span: 4485..4490,\n                        sym: \"hello\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Object(\n    ObjectExpr {\n        span: 4280..4623,\n        props: [\n            KeyValueProp {\n                span: 4286..4315,\n                key: Ident(\n                    Ident {\n                        span: 4286..4290,\n                        sym: \"data\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 4320..4397,\n                key: Ident(\n                    Ident {\n                        span: 4320..4327,\n                        sym: \"methods\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 4402..4622,\n                key: Ident(\n                    Ident {\n                        span: 4402..4410,\n                        sym: \"computed\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 4279..4624,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "New(\n    NewExpr {\n        span: 4272..4624,\n        callee: _,\n        args: [],\n    },\n)",
    "Ident(\n    Ident {\n        span: 4626..4629,\n        sym: \"vue\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 4631..4634,\n        sym: \"vue\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 4634..4637,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 4635..4636,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 4638..4641,\n        sym: \"vue\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 4641..4644,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 4642..4643,\n                sym: \"f\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Str(\n        StrLit {\n            span: 4644..4649,\n            value: \"abc\",\n        },\n    ),\n)",
    "Call(\n    CallExpr {\n        span: 4643..4651,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Ident(\n    Ident {\n        span: 4652..4655,\n        sym: \"vue\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 4655..4661,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 4656..4660,\n                sym: \"test\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 4662..4665,\n        sym: \"vue\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 4665..4672,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 4666..4671,\n                sym: \"hello\",\n            },\n        ),\n    },\n)"
  ],
  "module_decls": [],
  "functions": [
    "Function {\n    span: 191..226,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 260..303,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 309..348,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 353..392,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 397..443,\n    params: [\n        Param {\n            span: 403..409,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 704..840,\n    params: [\n        Param {\n            span: 711..714,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 715..718,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 719..722,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 894..1030,\n    params: [\n        Param {\n            span: 901..904,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 905..908,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 909..912,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 1089..1225,\n    params: [\n        Param {\n            span: 1096..1099,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 1100..1103,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 1104..1107,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 1291..1427,\n    params: [\n        Param {\n            span: 1298..1301,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 1302..1305,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 1306..1309,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 1499..1635,\n    params: [\n        Param {\n            span: 1506..1509,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 1510..1513,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 1514..1517,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 1727..1863,\n    params: [\n        Param {\n            span: 1734..1737,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 1738..1741,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 1742..1745,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 2249..2397,\n    params: [\n        Param {\n            span: 2256..2267,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 2268..2279,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 2759..2907,\n    params: [\n        Param {\n            span: 2766..2777,\n            decorators: [],\n            pat: _,\n        },\n        Param {\n            span: 2778..2789,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 3456..3493,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 3498..3550,\n    params: [\n        Param {\n            span: 3502..3516,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 3660..3713,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 3722..3786,\n    params: [\n        Param {\n            span: 3726..3740,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 4339..4396,\n    params: [\n        Param {\n            span: 4341..4351,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 4422..4476,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 4506..4557,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 4570..4614,\n    params: [\n        Param {\n            span: 4574..4588,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [],\n    is_async: false,\n    is_generator: false,\n}"
  ],
  "classes": [],
  "class_members": [],
  "jsx_elements": [],
  "ts_types": [
    "Keyword(\n    Number,\n)",
    "Keyword(\n    Number,\n)",
    "Keyword(\n    Number,\n)",
    "Keyword(\n    Number,\n)",
    "Keyword(\n    Number,\n)",
    "Keyword(\n    Number,\n)",
    "Keyword(\n    Void,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 554..663,\n        members: [\n            TsTypeMember {\n                span: 560..576,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 560..561,\n                            sym: \"x\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 575..591,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 575..576,\n                            sym: \"y\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 590..612,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 590..591,\n                            sym: \"z\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 606..658,\n                kind: Method,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 606..612,\n                            sym: \"moveBy\",\n                        },\n                    ),\n                ),\n                optional: false,\n                readonly: false,\n                params: [\n                    TsFnParam {\n                        span: 613..624,\n                        name: Some(\n                            Ident {\n                                span: 613..615,\n                                sym: \"dx\",\n                            },\n                        ),\n                        ty: Some(\n                            _,\n                        ),\n                        is_rest: false,\n                        optional: false,\n                    },\n                    TsFnParam {\n                        span: 625..636,\n                        name: Some(\n                            Ident {\n                                span: 625..627,\n                                sym: \"dy\",\n                            },\n                        ),\n                        ty: Some(\n                            _,\n                        ),\n                        is_rest: false,\n                        optional: false,\n                    },\n                    TsFnParam {\n                        span: 637..649,\n                        name: Some(\n                            Ident {\n                                span: 637..639,\n                                sym: \"dz\",\n                            },\n                        ),\n                        ty: Some(\n                            _,\n                        ),\n                        is_rest: false,\n                        optional: true,\n                    },\n                ],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2025..2027,\n        name: Ident {\n            span: 2025..2027,\n            sym: \"D\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2042..2045,\n        name: Ident {\n            span: 2042..2045,\n            sym: \"M\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2055..2058,\n        name: Ident {\n            span: 2055..2058,\n            sym: \"D\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2059..2061,\n        name: Ident {\n            span: 2059..2061,\n            sym: \"M\",\n        },\n        type_args: [],\n    },\n)",
    "Intersection(\n    TsIntersectionType {\n        span: 2055..2061,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2046..2062,\n        name: Ident {\n            span: 2046..2055,\n            sym: \"ThisType\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "Intersection(\n    TsIntersectionType {\n        span: 2042..2062,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2012..2112,\n        members: [\n            TsTypeMember {\n                span: 2018..2039,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2018..2022,\n                            sym: \"data\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2032..2103,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2032..2039,\n                            sym: \"methods\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2568..2571,\n        name: Ident {\n            span: 2568..2571,\n            sym: \"D\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2572..2574,\n        name: Ident {\n            span: 2572..2574,\n            sym: \"M\",\n        },\n        type_args: [],\n    },\n)",
    "Intersection(\n    TsIntersectionType {\n        span: 2568..2574,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2559..2576,\n        name: Ident {\n            span: 2559..2568,\n            sym: \"ThisType\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2590..2592,\n        name: Ident {\n            span: 2590..2592,\n            sym: \"D\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 2607..2609,\n        name: Ident {\n            span: 2607..2609,\n            sym: \"M\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 2577..2620,\n        members: [\n            TsTypeMember {\n                span: 2583..2604,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2583..2587,\n                            sym: \"data\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 2597..2611,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 2597..2604,\n                            sym: \"methods\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Intersection(\n    TsIntersectionType {\n        span: 2559..2620,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 3025..3027,\n        name: Ident {\n            span: 3025..3027,\n            sym: \"T\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 3040..3042,\n        name: Ident {\n            span: 3040..3042,\n            sym: \"T\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 3059..3061,\n        name: Ident {\n            span: 3059..3061,\n            sym: \"T\",\n        },\n        type_args: [],\n    },\n)",
    "Keyword(\n    Void,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 3011..3076,\n        members: [\n            TsTypeMember {\n                span: 3017..3035,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 3017..3022,\n                            sym: \"value\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 3032..3050,\n                kind: Method,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 3032..3035,\n                            sym: \"get\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 3047..3070,\n                kind: Method,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 3047..3050,\n                            sym: \"set\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [\n                    TsFnParam {\n                        span: 3052..3061,\n                        name: Some(\n                            Ident {\n                                span: 3052..3057,\n                                sym: \"value\",\n                            },\n                        ),\n                        ty: Some(\n                            _,\n                        ),\n                        is_rest: false,\n                        optional: false,\n                    },\n                ],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Keyword(\n    String,\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 3988..3991,\n        name: Ident {\n            span: 3988..3991,\n            sym: \"T\",\n        },\n        type_args: [],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 3973..3997,\n        members: [\n            TsTypeMember {\n                span: 3975..3991,\n                kind: Index,\n                name: None,\n                optional: false,\n                readonly: false,\n                params: [\n                    TsFnParam {\n                        span: 3976..3977,\n                        name: Some(\n                            Ident {\n                                span: 3976..3977,\n                                sym: \"x\",\n                            },\n                        ),\n                        ty: Some(\n                            _,\n                        ),\n                        is_rest: false,\n                        optional: false,\n                    },\n                ],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4026..4028,\n        name: Ident {\n            span: 4026..4028,\n            sym: \"T\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4045..4047,\n        name: Ident {\n            span: 4045..4047,\n            sym: \"T\",\n        },\n        type_args: [],\n    },\n)",
    "Keyword(\n    Void,\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 4012..4062,\n        members: [\n            TsTypeMember {\n                span: 4018..4036,\n                kind: Method,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4018..4021,\n                            sym: \"get\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 4033..4056,\n                kind: Method,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4033..4036,\n                            sym: \"set\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [\n                    TsFnParam {\n                        span: 4038..4047,\n                        name: Some(\n                            Ident {\n                                span: 4038..4043,\n                                sym: \"value\",\n                            },\n                        ),\n                        ty: Some(\n                            _,\n                        ),\n                        is_rest: false,\n                        optional: false,\n                    },\n                ],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4094..4097,\n        name: Ident {\n            span: 4094..4097,\n            sym: \"D\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4098..4101,\n        name: Ident {\n            span: 4098..4101,\n            sym: \"M\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4102..4104,\n        name: Ident {\n            span: 4102..4104,\n            sym: \"P\",\n        },\n        type_args: [],\n    },\n)",
    "Intersection(\n    TsIntersectionType {\n        span: 4094..4104,\n        types: [\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4085..4106,\n        name: Ident {\n            span: 4085..4094,\n            sym: \"ThisType\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4120..4123,\n        name: Ident {\n            span: 4120..4123,\n            sym: \"D\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4131..4133,\n        name: Ident {\n            span: 4131..4133,\n            sym: \"D\",\n        },\n        type_args: [],\n    },\n)",
    "Fn(\n    TsFnType {\n        span: 4125..4133,\n        params: [],\n        return_type: _,\n    },\n)",
    "Parenthesized(\n    TsParenthesizedType {\n        span: 4124..4134,\n        ty: _,\n    },\n)",
    "Union(\n    TsUnionType {\n        span: 4120..4134,\n        types: [\n            _,\n            _,\n        ],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4149..4151,\n        name: Ident {\n            span: 4149..4151,\n            sym: \"M\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4177..4179,\n        name: Ident {\n            span: 4177..4179,\n            sym: \"P\",\n        },\n        type_args: [],\n    },\n)",
    "TypeRef(\n    TsTypeRef {\n        span: 4167..4180,\n        name: Ident {\n            span: 4167..4177,\n            sym: \"Accessors\",\n        },\n        type_args: [\n            _,\n        ],\n    },\n)",
    "TypeLit(\n    TsTypeLit {\n        span: 4107..4191,\n        members: [\n            TsTypeMember {\n                span: 4113..4146,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4113..4117,\n                            sym: \"data\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 4139..4164,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4139..4146,\n                            sym: \"methods\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n            TsTypeMember {\n                span: 4156..4182,\n                kind: Property,\n                name: Some(\n                    Ident(\n                        Ident {\n                            span: 4156..4164,\n                            sym: \"computed\",\n                        },\n                    ),\n                ),\n                optional: true,\n                readonly: false,\n                params: [],\n                ty: Some(\n                    _,\n                ),\n            },\n        ],\n    },\n)",
    "Intersection(\n    TsIntersectionType {\n        span: 4085..4191,\n        types: [\n            _,\n            _,\n        ],\n    },\n)"
  ]
}
