{ "type": "Script", "span": { "start": 18, "end": 426, "ctxt": 0 }, "body": [ { "type": "VariableDeclaration", "span": { "start": 18, "end": 41, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 32, "end": 40, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 32, "end": 35, "ctxt": 0 }, "value": "obj", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 35, "end": 40, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 37, "end": 40, "ctxt": 0 }, "kind": "any" } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 43, "end": 52, "ctxt": 0 }, "expression": { "type": "UpdateExpression", "span": { "start": 43, "end": 51, "ctxt": 0 }, "operator": "++", "prefix": false, "argument": { "type": "OptionalChainingExpression", "span": { "start": 43, "end": 49, "ctxt": 0 }, "questionDotToken": { "start": 46, "end": 47, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 43, "end": 49, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 43, "end": 46, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 48, "end": 49, "ctxt": 0 }, "value": "a", "optional": false } } } } }, { "type": "ExpressionStatement", "span": { "start": 53, "end": 64, "ctxt": 0 }, "expression": { "type": "UpdateExpression", "span": { "start": 53, "end": 63, "ctxt": 0 }, "operator": "++", "prefix": false, "argument": { "type": "MemberExpression", "span": { "start": 53, "end": 61, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 53, "end": 59, "ctxt": 0 }, "questionDotToken": { "start": 56, "end": 57, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 53, "end": 59, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 53, "end": 56, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 58, "end": 59, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 60, "end": 61, "ctxt": 0 }, "value": "b", "optional": false } } } }, { "type": "ExpressionStatement", "span": { "start": 65, "end": 74, "ctxt": 0 }, "expression": { "type": "UpdateExpression", "span": { "start": 65, "end": 73, "ctxt": 0 }, "operator": "--", "prefix": false, "argument": { "type": "OptionalChainingExpression", "span": { "start": 65, "end": 71, "ctxt": 0 }, "questionDotToken": { "start": 68, "end": 69, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 65, "end": 71, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 65, "end": 68, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 70, "end": 71, "ctxt": 0 }, "value": "a", "optional": false } } } } }, { "type": "ExpressionStatement", "span": { "start": 75, "end": 86, "ctxt": 0 }, "expression": { "type": "UpdateExpression", "span": { "start": 75, "end": 85, "ctxt": 0 }, "operator": "--", "prefix": false, "argument": { "type": "MemberExpression", "span": { "start": 75, "end": 83, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 75, "end": 81, "ctxt": 0 }, "questionDotToken": { "start": 78, "end": 79, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 75, "end": 81, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 75, "end": 78, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 80, "end": 81, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 82, "end": 83, "ctxt": 0 }, "value": "b", "optional": false } } } }, { "type": "ExpressionStatement", "span": { "start": 88, "end": 97, "ctxt": 0 }, "expression": { "type": "UpdateExpression", "span": { "start": 88, "end": 96, "ctxt": 0 }, "operator": "++", "prefix": true, "argument": { "type": "OptionalChainingExpression", "span": { "start": 90, "end": 96, "ctxt": 0 }, "questionDotToken": { "start": 93, "end": 94, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 90, "end": 96, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 90, "end": 93, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 95, "end": 96, "ctxt": 0 }, "value": "a", "optional": false } } } } }, { "type": "ExpressionStatement", "span": { "start": 98, "end": 109, "ctxt": 0 }, "expression": { "type": "UpdateExpression", "span": { "start": 98, "end": 108, "ctxt": 0 }, "operator": "++", "prefix": true, "argument": { "type": "MemberExpression", "span": { "start": 100, "end": 108, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 100, "end": 106, "ctxt": 0 }, "questionDotToken": { "start": 103, "end": 104, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 100, "end": 106, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 100, "end": 103, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 105, "end": 106, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 107, "end": 108, "ctxt": 0 }, "value": "b", "optional": false } } } }, { "type": "ExpressionStatement", "span": { "start": 110, "end": 119, "ctxt": 0 }, "expression": { "type": "UpdateExpression", "span": { "start": 110, "end": 118, "ctxt": 0 }, "operator": "--", "prefix": true, "argument": { "type": "OptionalChainingExpression", "span": { "start": 112, "end": 118, "ctxt": 0 }, "questionDotToken": { "start": 115, "end": 116, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 112, "end": 118, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 112, "end": 115, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 117, "end": 118, "ctxt": 0 }, "value": "a", "optional": false } } } } }, { "type": "ExpressionStatement", "span": { "start": 120, "end": 131, "ctxt": 0 }, "expression": { "type": "UpdateExpression", "span": { "start": 120, "end": 130, "ctxt": 0 }, "operator": "--", "prefix": true, "argument": { "type": "MemberExpression", "span": { "start": 122, "end": 130, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 122, "end": 128, "ctxt": 0 }, "questionDotToken": { "start": 125, "end": 126, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 122, "end": 128, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 122, "end": 125, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 127, "end": 128, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 129, "end": 130, "ctxt": 0 }, "value": "b", "optional": false } } } }, { "type": "ExpressionStatement", "span": { "start": 133, "end": 144, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 133, "end": 143, "ctxt": 0 }, "operator": "=", "left": { "type": "OptionalChainingExpression", "span": { "start": 133, "end": 139, "ctxt": 0 }, "questionDotToken": { "start": 136, "end": 137, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 133, "end": 139, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 133, "end": 136, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 138, "end": 139, "ctxt": 0 }, "value": "a", "optional": false } } }, "right": { "type": "NumericLiteral", "span": { "start": 142, "end": 143, "ctxt": 0 }, "value": 1.0 } } }, { "type": "ExpressionStatement", "span": { "start": 145, "end": 158, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 145, "end": 157, "ctxt": 0 }, "operator": "=", "left": { "type": "MemberExpression", "span": { "start": 145, "end": 153, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 145, "end": 151, "ctxt": 0 }, "questionDotToken": { "start": 148, "end": 149, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 145, "end": 151, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 145, "end": 148, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 150, "end": 151, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 152, "end": 153, "ctxt": 0 }, "value": "b", "optional": false } }, "right": { "type": "NumericLiteral", "span": { "start": 156, "end": 157, "ctxt": 0 }, "value": 1.0 } } }, { "type": "ExpressionStatement", "span": { "start": 159, "end": 171, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 159, "end": 170, "ctxt": 0 }, "operator": "+=", "left": { "type": "OptionalChainingExpression", "span": { "start": 159, "end": 165, "ctxt": 0 }, "questionDotToken": { "start": 162, "end": 163, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 159, "end": 165, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 159, "end": 162, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 164, "end": 165, "ctxt": 0 }, "value": "a", "optional": false } } }, "right": { "type": "NumericLiteral", "span": { "start": 169, "end": 170, "ctxt": 0 }, "value": 1.0 } } }, { "type": "ExpressionStatement", "span": { "start": 172, "end": 186, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 172, "end": 185, "ctxt": 0 }, "operator": "+=", "left": { "type": "MemberExpression", "span": { "start": 172, "end": 180, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 172, "end": 178, "ctxt": 0 }, "questionDotToken": { "start": 175, "end": 176, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 172, "end": 178, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 172, "end": 175, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 177, "end": 178, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 179, "end": 180, "ctxt": 0 }, "value": "b", "optional": false } }, "right": { "type": "NumericLiteral", "span": { "start": 184, "end": 185, "ctxt": 0 }, "value": 1.0 } } }, { "type": "ForInStatement", "span": { "start": 188, "end": 207, "ctxt": 0 }, "left": { "type": "OptionalChainingExpression", "span": { "start": 193, "end": 199, "ctxt": 0 }, "questionDotToken": { "start": 196, "end": 197, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 193, "end": 199, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 193, "end": 196, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 198, "end": 199, "ctxt": 0 }, "value": "a", "optional": false } } }, "right": { "type": "ObjectExpression", "span": { "start": 203, "end": 205, "ctxt": 0 }, "properties": [] }, "body": { "type": "EmptyStatement", "span": { "start": 206, "end": 207, "ctxt": 0 } } }, { "type": "ForInStatement", "span": { "start": 208, "end": 229, "ctxt": 0 }, "left": { "type": "MemberExpression", "span": { "start": 213, "end": 221, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 213, "end": 219, "ctxt": 0 }, "questionDotToken": { "start": 216, "end": 217, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 213, "end": 219, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 213, "end": 216, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 218, "end": 219, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 220, "end": 221, "ctxt": 0 }, "value": "b", "optional": false } }, "right": { "type": "ObjectExpression", "span": { "start": 225, "end": 227, "ctxt": 0 }, "properties": [] }, "body": { "type": "EmptyStatement", "span": { "start": 228, "end": 229, "ctxt": 0 } } }, { "type": "ForOfStatement", "span": { "start": 230, "end": 249, "ctxt": 0 }, "await": null, "left": { "type": "OptionalChainingExpression", "span": { "start": 235, "end": 241, "ctxt": 0 }, "questionDotToken": { "start": 238, "end": 239, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 235, "end": 241, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 235, "end": 238, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 240, "end": 241, "ctxt": 0 }, "value": "a", "optional": false } } }, "right": { "type": "ArrayExpression", "span": { "start": 245, "end": 247, "ctxt": 0 }, "elements": [] }, "body": { "type": "EmptyStatement", "span": { "start": 248, "end": 249, "ctxt": 0 } } }, { "type": "ForOfStatement", "span": { "start": 250, "end": 271, "ctxt": 0 }, "await": null, "left": { "type": "MemberExpression", "span": { "start": 255, "end": 263, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 255, "end": 261, "ctxt": 0 }, "questionDotToken": { "start": 258, "end": 259, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 255, "end": 261, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 255, "end": 258, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 260, "end": 261, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 262, "end": 263, "ctxt": 0 }, "value": "b", "optional": false } }, "right": { "type": "ArrayExpression", "span": { "start": 267, "end": 269, "ctxt": 0 }, "elements": [] }, "body": { "type": "EmptyStatement", "span": { "start": 270, "end": 271, "ctxt": 0 } } }, { "type": "ExpressionStatement", "span": { "start": 273, "end": 300, "ctxt": 0 }, "expression": { "type": "ParenthesisExpression", "span": { "start": 273, "end": 299, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 274, "end": 298, "ctxt": 0 }, "operator": "=", "left": { "type": "ObjectPattern", "span": { "start": 274, "end": 287, "ctxt": 0 }, "properties": [ { "type": "KeyValuePatternProperty", "key": { "type": "Identifier", "span": { "start": 276, "end": 277, "ctxt": 0 }, "value": "a", "optional": false }, "value": { "type": "Invalid", "span": { "start": 279, "end": 285, "ctxt": 0 } } } ], "optional": false, "typeAnnotation": null }, "right": { "type": "ObjectExpression", "span": { "start": 290, "end": 298, "ctxt": 0 }, "properties": [ { "type": "KeyValueProperty", "key": { "type": "Identifier", "span": { "start": 292, "end": 293, "ctxt": 0 }, "value": "a", "optional": false }, "value": { "type": "NumericLiteral", "span": { "start": 295, "end": 296, "ctxt": 0 }, "value": 1.0 } } ] } } } }, { "type": "ExpressionStatement", "span": { "start": 301, "end": 330, "ctxt": 0 }, "expression": { "type": "ParenthesisExpression", "span": { "start": 301, "end": 329, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 302, "end": 328, "ctxt": 0 }, "operator": "=", "left": { "type": "ObjectPattern", "span": { "start": 302, "end": 317, "ctxt": 0 }, "properties": [ { "type": "KeyValuePatternProperty", "key": { "type": "Identifier", "span": { "start": 304, "end": 305, "ctxt": 0 }, "value": "a", "optional": false }, "value": { "type": "MemberExpression", "span": { "start": 307, "end": 315, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 307, "end": 313, "ctxt": 0 }, "questionDotToken": { "start": 310, "end": 311, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 307, "end": 313, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 307, "end": 310, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 312, "end": 313, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 314, "end": 315, "ctxt": 0 }, "value": "b", "optional": false } } } ], "optional": false, "typeAnnotation": null }, "right": { "type": "ObjectExpression", "span": { "start": 320, "end": 328, "ctxt": 0 }, "properties": [ { "type": "KeyValueProperty", "key": { "type": "Identifier", "span": { "start": 322, "end": 323, "ctxt": 0 }, "value": "a", "optional": false }, "value": { "type": "NumericLiteral", "span": { "start": 325, "end": 326, "ctxt": 0 }, "value": 1.0 } } ] } } } }, { "type": "ExpressionStatement", "span": { "start": 331, "end": 358, "ctxt": 0 }, "expression": { "type": "ParenthesisExpression", "span": { "start": 331, "end": 357, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 332, "end": 356, "ctxt": 0 }, "operator": "=", "left": { "type": "ObjectPattern", "span": { "start": 332, "end": 345, "ctxt": 0 }, "properties": [ { "type": "RestElement", "span": { "start": 334, "end": 343, "ctxt": 0 }, "rest": { "start": 334, "end": 337, "ctxt": 0 }, "argument": { "type": "Invalid", "span": { "start": 337, "end": 343, "ctxt": 0 } }, "typeAnnotation": null } ], "optional": false, "typeAnnotation": null }, "right": { "type": "ObjectExpression", "span": { "start": 348, "end": 356, "ctxt": 0 }, "properties": [ { "type": "KeyValueProperty", "key": { "type": "Identifier", "span": { "start": 350, "end": 351, "ctxt": 0 }, "value": "a", "optional": false }, "value": { "type": "NumericLiteral", "span": { "start": 353, "end": 354, "ctxt": 0 }, "value": 1.0 } } ] } } } }, { "type": "ExpressionStatement", "span": { "start": 359, "end": 388, "ctxt": 0 }, "expression": { "type": "ParenthesisExpression", "span": { "start": 359, "end": 387, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 360, "end": 386, "ctxt": 0 }, "operator": "=", "left": { "type": "ObjectPattern", "span": { "start": 360, "end": 375, "ctxt": 0 }, "properties": [ { "type": "RestElement", "span": { "start": 362, "end": 373, "ctxt": 0 }, "rest": { "start": 362, "end": 365, "ctxt": 0 }, "argument": { "type": "MemberExpression", "span": { "start": 365, "end": 373, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 365, "end": 371, "ctxt": 0 }, "questionDotToken": { "start": 368, "end": 369, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 365, "end": 371, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 365, "end": 368, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 370, "end": 371, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 372, "end": 373, "ctxt": 0 }, "value": "b", "optional": false } }, "typeAnnotation": null } ], "optional": false, "typeAnnotation": null }, "right": { "type": "ObjectExpression", "span": { "start": 378, "end": 386, "ctxt": 0 }, "properties": [ { "type": "KeyValueProperty", "key": { "type": "Identifier", "span": { "start": 380, "end": 381, "ctxt": 0 }, "value": "a", "optional": false }, "value": { "type": "NumericLiteral", "span": { "start": 383, "end": 384, "ctxt": 0 }, "value": 1.0 } } ] } } } }, { "type": "ExpressionStatement", "span": { "start": 389, "end": 406, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 389, "end": 405, "ctxt": 0 }, "operator": "=", "left": { "type": "ArrayPattern", "span": { "start": 389, "end": 400, "ctxt": 0 }, "elements": [ { "type": "RestElement", "span": { "start": 393, "end": 399, "ctxt": 0 }, "rest": { "start": 390, "end": 393, "ctxt": 0 }, "argument": { "type": "Invalid", "span": { "start": 393, "end": 399, "ctxt": 0 } }, "typeAnnotation": null } ], "optional": false, "typeAnnotation": null }, "right": { "type": "ArrayExpression", "span": { "start": 403, "end": 405, "ctxt": 0 }, "elements": [] } } }, { "type": "ExpressionStatement", "span": { "start": 407, "end": 426, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 407, "end": 425, "ctxt": 0 }, "operator": "=", "left": { "type": "ArrayPattern", "span": { "start": 407, "end": 420, "ctxt": 0 }, "elements": [ { "type": "RestElement", "span": { "start": 411, "end": 419, "ctxt": 0 }, "rest": { "start": 408, "end": 411, "ctxt": 0 }, "argument": { "type": "MemberExpression", "span": { "start": 411, "end": 419, "ctxt": 0 }, "object": { "type": "OptionalChainingExpression", "span": { "start": 411, "end": 417, "ctxt": 0 }, "questionDotToken": { "start": 414, "end": 415, "ctxt": 0 }, "base": { "type": "MemberExpression", "span": { "start": 411, "end": 417, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 411, "end": 414, "ctxt": 0 }, "value": "obj", "optional": false }, "property": { "type": "Identifier", "span": { "start": 416, "end": 417, "ctxt": 0 }, "value": "a", "optional": false } } }, "property": { "type": "Identifier", "span": { "start": 418, "end": 419, "ctxt": 0 }, "value": "b", "optional": false } }, "typeAnnotation": null } ], "optional": false, "typeAnnotation": null }, "right": { "type": "ArrayExpression", "span": { "start": 423, "end": 425, "ctxt": 0 }, "elements": [] } } } ], "interpreter": null }