{
  "programs": [
    "Program {\n    span: 149..1600,\n    kind: Module,\n    body: [\n        _,\n        _,\n        _,\n        _,\n        _,\n        _,\n    ],\n}"
  ],
  "stmts": [
    "Expr(\n    ExprStmt {\n        span: 220..252,\n        expr: _,\n    },\n)",
    "ModuleDecl(\n    _,\n)",
    "Throw(\n    ThrowStmt {\n        span: 403..488,\n        arg: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 389..500,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 339..500,\n        test: _,\n        cons: _,\n        alt: None,\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 578..632,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 564..647,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "For(\n    ForStmt {\n        span: 518..647,\n        head: Classic(\n            ForClassicHead {\n                init: Some(\n                    Decl(\n                        _,\n                    ),\n                ),\n                test: Some(\n                    _,\n                ),\n                update: Some(\n                    _,\n                ),\n            },\n        ),\n        body: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 641..658,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Decl(\n    _,\n)",
    "Expr(\n    ExprStmt {\n        span: 767..807,\n        expr: _,\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 753..822,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "For(\n    ForStmt {\n        span: 707..822,\n        head: Classic(\n            ForClassicHead {\n                init: Some(\n                    Decl(\n                        _,\n                    ),\n                ),\n                test: Some(\n                    _,\n                ),\n                update: Some(\n                    _,\n                ),\n            },\n        ),\n        body: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 816..844,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 254..904,\n        expr: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 976..1007,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Block(\n    BlockStmt {\n        span: 966..1015,\n        stmts: [\n            _,\n        ],\n    },\n)",
    "If(\n    IfStmt {\n        span: 934..1015,\n        test: _,\n        cons: _,\n        alt: None,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1012..1039,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1035..1055,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1051..1064,\n        expr: _,\n    },\n)",
    "ModuleDecl(\n    _,\n)",
    "Return(\n    ReturnStmt {\n        span: 1130..1159,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1225..1251,\n        expr: _,\n    },\n)",
    "Return(\n    ReturnStmt {\n        span: 1275..1304,\n        arg: Some(\n            _,\n        ),\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1370..1396,\n        expr: _,\n    },\n)",
    "Expr(\n    ExprStmt {\n        span: 1066..1436,\n        expr: _,\n    },\n)",
    "ModuleDecl(\n    _,\n)",
    "ModuleDecl(\n    _,\n)"
  ],
  "decls": [
    "Fn(\n    FnDecl {\n        span: 156..257,\n        ident: Ident {\n            span: 165..168,\n            sym: \"Vec\",\n        },\n        declare: false,\n        params: [\n            _,\n        ],\n        body: [\n            _,\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 497..521,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 497..509,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 523..533,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 523..533,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 686..710,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 686..698,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 712..722,\n        kind: Let,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 712..722,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)",
    "Fn(\n    FnDecl {\n        span: 905..1073,\n        ident: Ident {\n            span: 914..921,\n            sym: \"Point2D\",\n        },\n        declare: false,\n        params: [\n            _,\n            _,\n        ],\n        body: [\n            _,\n            _,\n            _,\n            _,\n        ],\n    },\n)",
    "Var(\n    VarDecl {\n        span: 1472..1600,\n        kind: Const,\n        declare: false,\n        declarators: [\n            VarDeclarator {\n                span: 1472..1505,\n                name: _,\n                init: None,\n            },\n        ],\n    },\n)"
  ],
  "pats": [
    "Ident(\n    Ident {\n        span: 169..172,\n        sym: \"len\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 322..327,\n        sym: \"other\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 501..504,\n        sym: \"sum\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 505..509,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 527..528,\n        sym: \"i\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 529..533,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 578..581,\n        sym: \"sum\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 690..693,\n        sym: \"sum\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 694..698,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 716..717,\n        sym: \"i\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 718..722,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 767..770,\n        sym: \"sum\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 922..923,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 925..926,\n        sym: \"y\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1212..1213,\n        sym: \"x\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1357..1358,\n        sym: \"y\",\n    },\n)",
    "Expr(\n    _,\n)",
    "Expr(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1478..1484,\n        sym: \"origin\",\n    },\n)",
    "Assign(\n    AssignPat {\n        span: 1485..1505,\n        left: _,\n        right: _,\n    },\n)"
  ],
  "exprs": [
    "Ident(\n    Ident {\n        span: 220..224,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 224..234,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 225..232,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 239..244,\n        sym: \"Array\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 245..248,\n        sym: \"len\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 244..250,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "New(\n    NewExpr {\n        span: 235..250,\n        callee: _,\n        args: [],\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 233..250,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 254..257,\n        sym: \"Vec\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 257..269,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 258..267,\n                sym: \"prototype\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 343..348,\n        sym: \"other\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 348..357,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 349..356,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 356..367,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 357..363,\n                sym: \"length\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 368..372,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 372..381,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 373..380,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 380..388,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 381..387,\n                sym: \"length\",\n            },\n        ),\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 364..388,\n        op: NotEqEq,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 413..418,\n        sym: \"Error\",\n    },\n)",
    "Template(\n    TemplateExpr {\n        span: 419..476,\n        quasis: [\n            StrLit {\n                span: 419..476,\n                value: \"Dot product only applicable for vectors of equal length\",\n            },\n        ],\n        exprs: [],\n    },\n)",
    "Call(\n    CallExpr {\n        span: 418..478,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "New(\n    NewExpr {\n        span: 409..478,\n        callee: _,\n        args: [],\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 507..508,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 531..532,\n            value: 0.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 534..535,\n        sym: \"i\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 538..542,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 542..551,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 543..550,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 550..558,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 551..557,\n                sym: \"length\",\n            },\n        ),\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 536..558,\n        op: Lt,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 559..560,\n        sym: \"i\",\n    },\n)",
    "Update(\n    UpdateExpr {\n        span: 560..563,\n        op: PlusPlus,\n        arg: _,\n        prefix: false,\n    },\n)",
    "Ident(\n    Ident {\n        span: 586..590,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 590..599,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 591..598,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 599..600,\n        sym: \"i\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 598..603,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 604..609,\n        sym: \"other\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 609..618,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 610..617,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 618..619,\n        sym: \"i\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 617..621,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 602..621,\n        op: Mul,\n        left: _,\n        right: _,\n    },\n)",
    "Paren(\n    ParenExpr {\n        span: 585..622,\n        expr: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 582..622,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 648..651,\n        sym: \"sum\",\n    },\n)",
    "Function(\n    _,\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 696..697,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 720..721,\n            value: 0.0,\n        },\n    ),\n)",
    "Ident(\n    Ident {\n        span: 723..724,\n        sym: \"i\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 727..731,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 731..740,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 732..739,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 739..747,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 740..746,\n                sym: \"length\",\n            },\n        ),\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 725..747,\n        op: Lt,\n        left: _,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 748..749,\n        sym: \"i\",\n    },\n)",
    "Update(\n    UpdateExpr {\n        span: 749..752,\n        op: PlusPlus,\n        arg: _,\n        prefix: false,\n    },\n)",
    "Ident(\n    Ident {\n        span: 775..779,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 779..788,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 780..787,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 788..789,\n        sym: \"i\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 787..793,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 794..795,\n            value: 2.0,\n        },\n    ),\n)",
    "Binary(\n    BinaryExpr {\n        span: 791..796,\n        op: Exp,\n        left: _,\n        right: _,\n    },\n)",
    "Paren(\n    ParenExpr {\n        span: 774..797,\n        expr: _,\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 771..797,\n        left: _,\n        op: AddAssign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 823..827,\n        sym: \"Math\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 827..833,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 828..832,\n                sym: \"sqrt\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 833..836,\n        sym: \"sum\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 832..838,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 270..904,\n        props: [\n            KeyValueProp {\n                span: 318..659,\n                key: Ident(\n                    Ident {\n                        span: 318..321,\n                        sym: \"dot\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 664..846,\n                key: Ident(\n                    Ident {\n                        span: 664..673,\n                        sym: \"magnitude\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 268..904,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 940..944,\n        sym: \"this\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 956..963,\n        sym: \"Point2D\",\n    },\n)",
    "Binary(\n    BinaryExpr {\n        span: 945..964,\n        op: InstanceOf,\n        left: _,\n        right: _,\n    },\n)",
    "Paren(\n    ParenExpr {\n        span: 939..965,\n        expr: _,\n    },\n)",
    "Unary(\n    UnaryExpr {\n        span: 938..965,\n        op: Bang,\n        arg: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 987..994,\n        sym: \"Point2D\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 995..996,\n        sym: \"x\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 998..999,\n        sym: \"y\",\n    },\n)",
    "Call(\n    CallExpr {\n        span: 994..1001,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "New(\n    NewExpr {\n        span: 983..1001,\n        callee: _,\n        args: [],\n    },\n)",
    "Ident(\n    Ident {\n        span: 1012..1015,\n        sym: \"Vec\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1015..1021,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1016..1020,\n                sym: \"call\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1021..1025,\n        sym: \"this\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1027..1028,\n            value: 2.0,\n        },\n    ),\n)",
    "Call(\n    CallExpr {\n        span: 1020..1030,\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: 1035..1039,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1039..1043,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1040..1041,\n                sym: \"x\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1044..1045,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1042..1046,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1051..1055,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1055..1059,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1056..1057,\n                sym: \"y\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1060..1061,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1058..1062,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1066..1073,\n        sym: \"Point2D\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1073..1085,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1074..1083,\n                sym: \"prototype\",\n            },\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1103..1106,\n        sym: \"Vec\",\n    },\n)",
    "Ident(\n    Ident {\n        span: 1137..1141,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1141..1150,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1142..1149,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1150..1151,\n            value: 0.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 1149..1153,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1225..1229,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1229..1238,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1230..1237,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1238..1239,\n            value: 0.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 1237..1242,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1243..1244,\n        sym: \"x\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1241..1245,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1282..1286,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1286..1295,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1287..1294,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1295..1296,\n            value: 1.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 1294..1298,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Function(\n    _,\n)",
    "Ident(\n    Ident {\n        span: 1370..1374,\n        sym: \"this\",\n    },\n)",
    "Member(\n    MemberExpr {\n        span: 1374..1383,\n        obj: _,\n        prop: Ident(\n            Ident {\n                span: 1375..1382,\n                sym: \"storage\",\n            },\n        ),\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1383..1384,\n            value: 1.0,\n        },\n    ),\n)",
    "Member(\n    MemberExpr {\n        span: 1382..1387,\n        obj: _,\n        prop: Computed(\n            _,\n        ),\n    },\n)",
    "Ident(\n    Ident {\n        span: 1388..1389,\n        sym: \"y\",\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1386..1390,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Function(\n    _,\n)",
    "Object(\n    ObjectExpr {\n        span: 1086..1399,\n        props: [\n            KeyValueProp {\n                span: 1092..1107,\n                key: Ident(\n                    Ident {\n                        span: 1092..1101,\n                        sym: \"__proto__\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1112..1160,\n                key: Ident(\n                    Ident {\n                        span: 1116..1117,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1206..1252,\n                key: Ident(\n                    Ident {\n                        span: 1210..1211,\n                        sym: \"x\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1257..1305,\n                key: Ident(\n                    Ident {\n                        span: 1261..1262,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n            KeyValueProp {\n                span: 1351..1398,\n                key: Ident(\n                    Ident {\n                        span: 1355..1356,\n                        sym: \"y\",\n                    },\n                ),\n                value: _,\n            },\n        ],\n    },\n)",
    "Assign(\n    AssignExpr {\n        span: 1084..1399,\n        left: _,\n        op: Assign,\n        right: _,\n    },\n)",
    "Ident(\n    Ident {\n        span: 1491..1498,\n        sym: \"Point2D\",\n    },\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1499..1500,\n            value: 0.0,\n        },\n    ),\n)",
    "Lit(\n    Num(\n        NumberLit {\n            span: 1502..1503,\n            value: 0.0,\n        },\n    ),\n)",
    "Call(\n    CallExpr {\n        span: 1498..1505,\n        callee: _,\n        args: [\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n            ExprOrSpread {\n                spread: false,\n                expr: _,\n            },\n        ],\n    },\n)",
    "New(\n    NewExpr {\n        span: 1487..1505,\n        callee: _,\n        args: [],\n    },\n)"
  ],
  "module_decls": [
    "ExportDecl(\n    ExportDecl {\n        span: 149..257,\n        decl: _,\n    },\n)",
    "ExportDecl(\n    ExportDecl {\n        span: 898..1073,\n        decl: _,\n    },\n)",
    "Import(\n    ImportDecl {\n        span: 1430..1471,\n        specifiers: [\n            Named(\n                ImportNamedSpecifier {\n                    local: Ident {\n                        span: 1438..1445,\n                        sym: \"Point2D\",\n                    },\n                    imported: Some(\n                        Ident {\n                            span: 1438..1445,\n                            sym: \"Point2D\",\n                        },\n                    ),\n                    is_type_only: false,\n                },\n            ),\n        ],\n        type_only: false,\n        src: StrLit {\n            span: 1452..1462,\n            value: \"./source\",\n        },\n        with: [],\n    },\n)",
    "ExportDecl(\n    ExportDecl {\n        span: 1465..1600,\n        decl: _,\n    },\n)"
  ],
  "functions": [
    "Function {\n    span: 318..659,\n    params: [\n        Param {\n            span: 322..328,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 664..846,\n    params: [],\n    body: [\n        _,\n        _,\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 1112..1160,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 1206..1252,\n    params: [\n        Param {\n            span: 1212..1214,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 1257..1305,\n    params: [],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}",
    "Function {\n    span: 1351..1398,\n    params: [\n        Param {\n            span: 1357..1359,\n            decorators: [],\n            pat: _,\n        },\n    ],\n    body: [\n        _,\n    ],\n    is_async: false,\n    is_generator: false,\n}"
  ],
  "classes": [],
  "class_members": [],
  "jsx_elements": [],
  "ts_types": []
}
