{ "type": "File", "start": 0, "end": 3138, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 91, "column": 0 } }, "program": { "type": "Program", "start": 0, "end": 3138, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 91, "column": 0 } }, "sourceType": "module", "body": [ { "type": "ImportDeclaration", "start": 1, "end": 35, "loc": { "start": { "line": 2, "column": 0 }, "end": { "line": 2, "column": 34 } }, "specifiers": [ { "type": "ImportDefaultSpecifier", "start": 8, "end": 12, "loc": { "start": { "line": 2, "column": 7 }, "end": { "line": 2, "column": 11 } }, "local": { "type": "Identifier", "start": 8, "end": 12, "loc": { "start": { "line": 2, "column": 7 }, "end": { "line": 2, "column": 11 }, "identifierName": "Tree" }, "name": "Tree" } } ], "source": { "type": "StringLiteral", "start": 18, "end": 35, "loc": { "start": { "line": 2, "column": 17 }, "end": { "line": 2, "column": 34 } }, "extra": { "rawValue": "../Util/Tree.js", "raw": "'../Util/Tree.js'" }, "value": "../Util/Tree.js" } }, { "type": "ImportDeclaration", "start": 36, "end": 69, "loc": { "start": { "line": 3, "column": 0 }, "end": { "line": 3, "column": 33 } }, "specifiers": [ { "type": "ImportDefaultSpecifier", "start": 43, "end": 45, "loc": { "start": { "line": 3, "column": 7 }, "end": { "line": 3, "column": 9 } }, "local": { "type": "Identifier", "start": 43, "end": 45, "loc": { "start": { "line": 3, "column": 7 }, "end": { "line": 3, "column": 9 }, "identifierName": "ID" }, "name": "ID" } } ], "source": { "type": "StringLiteral", "start": 51, "end": 69, "loc": { "start": { "line": 3, "column": 15 }, "end": { "line": 3, "column": 33 } }, "extra": { "rawValue": "../Util/ID/ID.js", "raw": "'../Util/ID/ID.js'" }, "value": "../Util/ID/ID.js" } }, { "type": "ClassDeclaration", "start": 71, "end": 243, "loc": { "start": { "line": 5, "column": 0 }, "end": { "line": 14, "column": 1 } }, "id": { "type": "Identifier", "start": 77, "end": 83, "loc": { "start": { "line": 5, "column": 6 }, "end": { "line": 5, "column": 12 }, "identifierName": "DSNode" }, "name": "DSNode" }, "superClass": null, "body": { "type": "ClassBody", "start": 84, "end": 243, "loc": { "start": { "line": 5, "column": 13 }, "end": { "line": 14, "column": 1 } }, "body": [ { "type": "ClassMethod", "start": 88, "end": 173, "loc": { "start": { "line": 6, "column": 2 }, "end": { "line": 10, "column": 3 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 88, "end": 99, "loc": { "start": { "line": 6, "column": 2 }, "end": { "line": 6, "column": 13 }, "identifierName": "constructor" }, "name": "constructor" }, "kind": "constructor", "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", "start": 101, "end": 103, "loc": { "start": { "line": 6, "column": 15 }, "end": { "line": 6, "column": 17 }, "identifierName": "id" }, "name": "id" }, { "type": "Identifier", "start": 105, "end": 108, "loc": { "start": { "line": 6, "column": 19 }, "end": { "line": 6, "column": 22 }, "identifierName": "len" }, "name": "len" }, { "type": "Identifier", "start": 110, "end": 112, "loc": { "start": { "line": 6, "column": 24 }, "end": { "line": 6, "column": 26 }, "identifierName": "gc" }, "name": "gc" } ], "body": { "type": "BlockStatement", "start": 114, "end": 173, "loc": { "start": { "line": 6, "column": 28 }, "end": { "line": 10, "column": 3 } }, "body": [ { "type": "ExpressionStatement", "start": 120, "end": 133, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 17 } }, "expression": { "type": "AssignmentExpression", "start": 120, "end": 133, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 17 } }, "operator": "=", "left": { "type": "MemberExpression", "start": 120, "end": 128, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 12 } }, "object": { "type": "ThisExpression", "start": 120, "end": 124, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 8 } } }, "property": { "type": "Identifier", "start": 125, "end": 128, "loc": { "start": { "line": 7, "column": 9 }, "end": { "line": 7, "column": 12 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "right": { "type": "Identifier", "start": 131, "end": 133, "loc": { "start": { "line": 7, "column": 15 }, "end": { "line": 7, "column": 17 }, "identifierName": "id" }, "name": "id" } } }, { "type": "ExpressionStatement", "start": 138, "end": 152, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 18 } }, "expression": { "type": "AssignmentExpression", "start": 138, "end": 152, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 18 } }, "operator": "=", "left": { "type": "MemberExpression", "start": 138, "end": 146, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 12 } }, "object": { "type": "ThisExpression", "start": 138, "end": 142, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 8 } } }, "property": { "type": "Identifier", "start": 143, "end": 146, "loc": { "start": { "line": 8, "column": 9 }, "end": { "line": 8, "column": 12 }, "identifierName": "len" }, "name": "len" }, "computed": false }, "right": { "type": "Identifier", "start": 149, "end": 152, "loc": { "start": { "line": 8, "column": 15 }, "end": { "line": 8, "column": 18 }, "identifierName": "len" }, "name": "len" } } }, { "type": "ExpressionStatement", "start": 157, "end": 169, "loc": { "start": { "line": 9, "column": 4 }, "end": { "line": 9, "column": 16 } }, "expression": { "type": "AssignmentExpression", "start": 157, "end": 169, "loc": { "start": { "line": 9, "column": 4 }, "end": { "line": 9, "column": 16 } }, "operator": "=", "left": { "type": "MemberExpression", "start": 157, "end": 164, "loc": { "start": { "line": 9, "column": 4 }, "end": { "line": 9, "column": 11 } }, "object": { "type": "ThisExpression", "start": 157, "end": 161, "loc": { "start": { "line": 9, "column": 4 }, "end": { "line": 9, "column": 8 } } }, "property": { "type": "Identifier", "start": 162, "end": 164, "loc": { "start": { "line": 9, "column": 9 }, "end": { "line": 9, "column": 11 }, "identifierName": "gc" }, "name": "gc" }, "computed": false }, "right": { "type": "Identifier", "start": 167, "end": 169, "loc": { "start": { "line": 9, "column": 14 }, "end": { "line": 9, "column": 16 }, "identifierName": "gc" }, "name": "gc" } } } ], "directives": [] } }, { "type": "ClassMethod", "start": 176, "end": 241, "loc": { "start": { "line": 11, "column": 2 }, "end": { "line": 13, "column": 3 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 176, "end": 181, "loc": { "start": { "line": 11, "column": 2 }, "end": { "line": 11, "column": 7 }, "identifierName": "clone" }, "name": "clone" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 185, "end": 241, "loc": { "start": { "line": 11, "column": 11 }, "end": { "line": 13, "column": 3 } }, "body": [ { "type": "ReturnStatement", "start": 191, "end": 237, "loc": { "start": { "line": 12, "column": 4 }, "end": { "line": 12, "column": 50 } }, "argument": { "type": "NewExpression", "start": 198, "end": 237, "loc": { "start": { "line": 12, "column": 11 }, "end": { "line": 12, "column": 50 } }, "callee": { "type": "Identifier", "start": 202, "end": 208, "loc": { "start": { "line": 12, "column": 15 }, "end": { "line": 12, "column": 21 }, "identifierName": "DSNode" }, "name": "DSNode" }, "arguments": [ { "type": "MemberExpression", "start": 209, "end": 217, "loc": { "start": { "line": 12, "column": 22 }, "end": { "line": 12, "column": 30 } }, "object": { "type": "ThisExpression", "start": 209, "end": 213, "loc": { "start": { "line": 12, "column": 22 }, "end": { "line": 12, "column": 26 } } }, "property": { "type": "Identifier", "start": 214, "end": 217, "loc": { "start": { "line": 12, "column": 27 }, "end": { "line": 12, "column": 30 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, { "type": "MemberExpression", "start": 219, "end": 227, "loc": { "start": { "line": 12, "column": 32 }, "end": { "line": 12, "column": 40 } }, "object": { "type": "ThisExpression", "start": 219, "end": 223, "loc": { "start": { "line": 12, "column": 32 }, "end": { "line": 12, "column": 36 } } }, "property": { "type": "Identifier", "start": 224, "end": 227, "loc": { "start": { "line": 12, "column": 37 }, "end": { "line": 12, "column": 40 }, "identifierName": "len" }, "name": "len" }, "computed": false }, { "type": "MemberExpression", "start": 229, "end": 236, "loc": { "start": { "line": 12, "column": 42 }, "end": { "line": 12, "column": 49 } }, "object": { "type": "ThisExpression", "start": 229, "end": 233, "loc": { "start": { "line": 12, "column": 42 }, "end": { "line": 12, "column": 46 } } }, "property": { "type": "Identifier", "start": 234, "end": 236, "loc": { "start": { "line": 12, "column": 47 }, "end": { "line": 12, "column": 49 }, "identifierName": "gc" }, "name": "gc" }, "computed": false } ] } } ], "directives": [] } } ] } }, { "type": "ExportDefaultDeclaration", "start": 245, "end": 3137, "loc": { "start": { "line": 16, "column": 0 }, "end": { "line": 90, "column": 1 } }, "declaration": { "type": "ClassDeclaration", "start": 260, "end": 3137, "loc": { "start": { "line": 16, "column": 15 }, "end": { "line": 90, "column": 1 } }, "id": { "type": "Identifier", "start": 266, "end": 277, "loc": { "start": { "line": 16, "column": 21 }, "end": { "line": 16, "column": 32 }, "identifierName": "DeleteStore" }, "name": "DeleteStore" }, "superClass": { "type": "Identifier", "start": 286, "end": 290, "loc": { "start": { "line": 16, "column": 41 }, "end": { "line": 16, "column": 45 }, "identifierName": "Tree" }, "name": "Tree" }, "body": { "type": "ClassBody", "start": 291, "end": 3137, "loc": { "start": { "line": 16, "column": 46 }, "end": { "line": 90, "column": 1 } }, "body": [ { "type": "ClassMethod", "start": 295, "end": 534, "loc": { "start": { "line": 17, "column": 2 }, "end": { "line": 28, "column": 3 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 295, "end": 303, "loc": { "start": { "line": 17, "column": 2 }, "end": { "line": 17, "column": 10 }, "identifierName": "logTable" }, "name": "logTable" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 307, "end": 534, "loc": { "start": { "line": 17, "column": 14 }, "end": { "line": 28, "column": 3 } }, "body": [ { "type": "VariableDeclaration", "start": 313, "end": 331, "loc": { "start": { "line": 18, "column": 4 }, "end": { "line": 18, "column": 22 } }, "declarations": [ { "type": "VariableDeclarator", "start": 319, "end": 331, "loc": { "start": { "line": 18, "column": 10 }, "end": { "line": 18, "column": 22 } }, "id": { "type": "Identifier", "start": 319, "end": 326, "loc": { "start": { "line": 18, "column": 10 }, "end": { "line": 18, "column": 17 }, "identifierName": "deletes" }, "name": "deletes" }, "init": { "type": "ArrayExpression", "start": 329, "end": 331, "loc": { "start": { "line": 18, "column": 20 }, "end": { "line": 18, "column": 22 } }, "elements": [] } } ], "kind": "const" }, { "type": "ExpressionStatement", "start": 336, "end": 503, "loc": { "start": { "line": 19, "column": 4 }, "end": { "line": 26, "column": 6 } }, "expression": { "type": "CallExpression", "start": 336, "end": 503, "loc": { "start": { "line": 19, "column": 4 }, "end": { "line": 26, "column": 6 } }, "callee": { "type": "MemberExpression", "start": 336, "end": 348, "loc": { "start": { "line": 19, "column": 4 }, "end": { "line": 19, "column": 16 } }, "object": { "type": "ThisExpression", "start": 336, "end": 340, "loc": { "start": { "line": 19, "column": 4 }, "end": { "line": 19, "column": 8 } } }, "property": { "type": "Identifier", "start": 341, "end": 348, "loc": { "start": { "line": 19, "column": 9 }, "end": { "line": 19, "column": 16 }, "identifierName": "iterate" }, "name": "iterate" }, "computed": false }, "arguments": [ { "type": "NullLiteral", "start": 349, "end": 353, "loc": { "start": { "line": 19, "column": 17 }, "end": { "line": 19, "column": 21 } } }, { "type": "NullLiteral", "start": 355, "end": 359, "loc": { "start": { "line": 19, "column": 23 }, "end": { "line": 19, "column": 27 } } }, { "type": "FunctionExpression", "start": 361, "end": 502, "loc": { "start": { "line": 19, "column": 29 }, "end": { "line": 26, "column": 5 } }, "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", "start": 371, "end": 372, "loc": { "start": { "line": 19, "column": 39 }, "end": { "line": 19, "column": 40 }, "identifierName": "n" }, "name": "n" } ], "body": { "type": "BlockStatement", "start": 374, "end": 502, "loc": { "start": { "line": 19, "column": 42 }, "end": { "line": 26, "column": 5 } }, "body": [ { "type": "ExpressionStatement", "start": 382, "end": 496, "loc": { "start": { "line": 20, "column": 6 }, "end": { "line": 25, "column": 8 } }, "expression": { "type": "CallExpression", "start": 382, "end": 496, "loc": { "start": { "line": 20, "column": 6 }, "end": { "line": 25, "column": 8 } }, "callee": { "type": "MemberExpression", "start": 382, "end": 394, "loc": { "start": { "line": 20, "column": 6 }, "end": { "line": 20, "column": 18 } }, "object": { "type": "Identifier", "start": 382, "end": 389, "loc": { "start": { "line": 20, "column": 6 }, "end": { "line": 20, "column": 13 }, "identifierName": "deletes" }, "name": "deletes" }, "property": { "type": "Identifier", "start": 390, "end": 394, "loc": { "start": { "line": 20, "column": 14 }, "end": { "line": 20, "column": 18 }, "identifierName": "push" }, "name": "push" }, "computed": false }, "arguments": [ { "type": "ObjectExpression", "start": 395, "end": 495, "loc": { "start": { "line": 20, "column": 19 }, "end": { "line": 25, "column": 7 } }, "properties": [ { "type": "ObjectProperty", "start": 405, "end": 421, "loc": { "start": { "line": 21, "column": 8 }, "end": { "line": 21, "column": 24 } }, "method": false, "shorthand": false, "computed": false, "key": { "type": "Identifier", "start": 405, "end": 409, "loc": { "start": { "line": 21, "column": 8 }, "end": { "line": 21, "column": 12 }, "identifierName": "user" }, "name": "user" }, "value": { "type": "MemberExpression", "start": 411, "end": 421, "loc": { "start": { "line": 21, "column": 14 }, "end": { "line": 21, "column": 24 } }, "object": { "type": "MemberExpression", "start": 411, "end": 416, "loc": { "start": { "line": 21, "column": 14 }, "end": { "line": 21, "column": 19 } }, "object": { "type": "Identifier", "start": 411, "end": 412, "loc": { "start": { "line": 21, "column": 14 }, "end": { "line": 21, "column": 15 }, "identifierName": "n" }, "name": "n" }, "property": { "type": "Identifier", "start": 413, "end": 416, "loc": { "start": { "line": 21, "column": 16 }, "end": { "line": 21, "column": 19 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 417, "end": 421, "loc": { "start": { "line": 21, "column": 20 }, "end": { "line": 21, "column": 24 }, "identifierName": "user" }, "name": "user" }, "computed": false } }, { "type": "ObjectProperty", "start": 431, "end": 449, "loc": { "start": { "line": 22, "column": 8 }, "end": { "line": 22, "column": 26 } }, "method": false, "shorthand": false, "computed": false, "key": { "type": "Identifier", "start": 431, "end": 436, "loc": { "start": { "line": 22, "column": 8 }, "end": { "line": 22, "column": 13 }, "identifierName": "clock" }, "name": "clock" }, "value": { "type": "MemberExpression", "start": 438, "end": 449, "loc": { "start": { "line": 22, "column": 15 }, "end": { "line": 22, "column": 26 } }, "object": { "type": "MemberExpression", "start": 438, "end": 443, "loc": { "start": { "line": 22, "column": 15 }, "end": { "line": 22, "column": 20 } }, "object": { "type": "Identifier", "start": 438, "end": 439, "loc": { "start": { "line": 22, "column": 15 }, "end": { "line": 22, "column": 16 }, "identifierName": "n" }, "name": "n" }, "property": { "type": "Identifier", "start": 440, "end": 443, "loc": { "start": { "line": 22, "column": 17 }, "end": { "line": 22, "column": 20 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 444, "end": 449, "loc": { "start": { "line": 22, "column": 21 }, "end": { "line": 22, "column": 26 }, "identifierName": "clock" }, "name": "clock" }, "computed": false } }, { "type": "ObjectProperty", "start": 459, "end": 469, "loc": { "start": { "line": 23, "column": 8 }, "end": { "line": 23, "column": 18 } }, "method": false, "shorthand": false, "computed": false, "key": { "type": "Identifier", "start": 459, "end": 462, "loc": { "start": { "line": 23, "column": 8 }, "end": { "line": 23, "column": 11 }, "identifierName": "len" }, "name": "len" }, "value": { "type": "MemberExpression", "start": 464, "end": 469, "loc": { "start": { "line": 23, "column": 13 }, "end": { "line": 23, "column": 18 } }, "object": { "type": "Identifier", "start": 464, "end": 465, "loc": { "start": { "line": 23, "column": 13 }, "end": { "line": 23, "column": 14 }, "identifierName": "n" }, "name": "n" }, "property": { "type": "Identifier", "start": 466, "end": 469, "loc": { "start": { "line": 23, "column": 15 }, "end": { "line": 23, "column": 18 }, "identifierName": "len" }, "name": "len" }, "computed": false } }, { "type": "ObjectProperty", "start": 479, "end": 487, "loc": { "start": { "line": 24, "column": 8 }, "end": { "line": 24, "column": 16 } }, "method": false, "shorthand": false, "computed": false, "key": { "type": "Identifier", "start": 479, "end": 481, "loc": { "start": { "line": 24, "column": 8 }, "end": { "line": 24, "column": 10 }, "identifierName": "gc" }, "name": "gc" }, "value": { "type": "MemberExpression", "start": 483, "end": 487, "loc": { "start": { "line": 24, "column": 12 }, "end": { "line": 24, "column": 16 } }, "object": { "type": "Identifier", "start": 483, "end": 484, "loc": { "start": { "line": 24, "column": 12 }, "end": { "line": 24, "column": 13 }, "identifierName": "n" }, "name": "n" }, "property": { "type": "Identifier", "start": 485, "end": 487, "loc": { "start": { "line": 24, "column": 14 }, "end": { "line": 24, "column": 16 }, "identifierName": "gc" }, "name": "gc" }, "computed": false } } ] } ] } } ], "directives": [] } } ] } }, { "type": "ExpressionStatement", "start": 508, "end": 530, "loc": { "start": { "line": 27, "column": 4 }, "end": { "line": 27, "column": 26 } }, "expression": { "type": "CallExpression", "start": 508, "end": 530, "loc": { "start": { "line": 27, "column": 4 }, "end": { "line": 27, "column": 26 } }, "callee": { "type": "MemberExpression", "start": 508, "end": 521, "loc": { "start": { "line": 27, "column": 4 }, "end": { "line": 27, "column": 17 } }, "object": { "type": "Identifier", "start": 508, "end": 515, "loc": { "start": { "line": 27, "column": 4 }, "end": { "line": 27, "column": 11 }, "identifierName": "console" }, "name": "console" }, "property": { "type": "Identifier", "start": 516, "end": 521, "loc": { "start": { "line": 27, "column": 12 }, "end": { "line": 27, "column": 17 }, "identifierName": "table" }, "name": "table" }, "computed": false }, "arguments": [ { "type": "Identifier", "start": 522, "end": 529, "loc": { "start": { "line": 27, "column": 18 }, "end": { "line": 27, "column": 25 }, "identifierName": "deletes" }, "name": "deletes" } ] } } ], "directives": [] } }, { "type": "ClassMethod", "start": 537, "end": 679, "loc": { "start": { "line": 29, "column": 2 }, "end": { "line": 32, "column": 3 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 537, "end": 546, "loc": { "start": { "line": 29, "column": 2 }, "end": { "line": 29, "column": 11 }, "identifierName": "isDeleted" }, "name": "isDeleted" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", "start": 548, "end": 550, "loc": { "start": { "line": 29, "column": 13 }, "end": { "line": 29, "column": 15 }, "identifierName": "id" }, "name": "id" } ], "body": { "type": "BlockStatement", "start": 552, "end": 679, "loc": { "start": { "line": 29, "column": 17 }, "end": { "line": 32, "column": 3 } }, "body": [ { "type": "VariableDeclaration", "start": 558, "end": 593, "loc": { "start": { "line": 30, "column": 4 }, "end": { "line": 30, "column": 39 } }, "declarations": [ { "type": "VariableDeclarator", "start": 562, "end": 593, "loc": { "start": { "line": 30, "column": 8 }, "end": { "line": 30, "column": 39 } }, "id": { "type": "Identifier", "start": 562, "end": 563, "loc": { "start": { "line": 30, "column": 8 }, "end": { "line": 30, "column": 9 }, "identifierName": "n" }, "name": "n" }, "init": { "type": "CallExpression", "start": 566, "end": 593, "loc": { "start": { "line": 30, "column": 12 }, "end": { "line": 30, "column": 39 } }, "callee": { "type": "MemberExpression", "start": 566, "end": 589, "loc": { "start": { "line": 30, "column": 12 }, "end": { "line": 30, "column": 35 } }, "object": { "type": "ThisExpression", "start": 566, "end": 570, "loc": { "start": { "line": 30, "column": 12 }, "end": { "line": 30, "column": 16 } } }, "property": { "type": "Identifier", "start": 571, "end": 589, "loc": { "start": { "line": 30, "column": 17 }, "end": { "line": 30, "column": 35 }, "identifierName": "findWithUpperBound" }, "name": "findWithUpperBound" }, "computed": false }, "arguments": [ { "type": "Identifier", "start": 590, "end": 592, "loc": { "start": { "line": 30, "column": 36 }, "end": { "line": 30, "column": 38 }, "identifierName": "id" }, "name": "id" } ] } } ], "kind": "var" }, { "type": "ReturnStatement", "start": 598, "end": 675, "loc": { "start": { "line": 31, "column": 4 }, "end": { "line": 31, "column": 81 } }, "argument": { "type": "LogicalExpression", "start": 605, "end": 675, "loc": { "start": { "line": 31, "column": 11 }, "end": { "line": 31, "column": 81 } }, "left": { "type": "LogicalExpression", "start": 605, "end": 641, "loc": { "start": { "line": 31, "column": 11 }, "end": { "line": 31, "column": 47 } }, "left": { "type": "BinaryExpression", "start": 605, "end": 615, "loc": { "start": { "line": 31, "column": 11 }, "end": { "line": 31, "column": 21 } }, "left": { "type": "Identifier", "start": 605, "end": 606, "loc": { "start": { "line": 31, "column": 11 }, "end": { "line": 31, "column": 12 }, "identifierName": "n" }, "name": "n" }, "operator": "!==", "right": { "type": "NullLiteral", "start": 611, "end": 615, "loc": { "start": { "line": 31, "column": 17 }, "end": { "line": 31, "column": 21 } } } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 619, "end": 641, "loc": { "start": { "line": 31, "column": 25 }, "end": { "line": 31, "column": 47 } }, "left": { "type": "MemberExpression", "start": 619, "end": 629, "loc": { "start": { "line": 31, "column": 25 }, "end": { "line": 31, "column": 35 } }, "object": { "type": "MemberExpression", "start": 619, "end": 624, "loc": { "start": { "line": 31, "column": 25 }, "end": { "line": 31, "column": 30 } }, "object": { "type": "Identifier", "start": 619, "end": 620, "loc": { "start": { "line": 31, "column": 25 }, "end": { "line": 31, "column": 26 }, "identifierName": "n" }, "name": "n" }, "property": { "type": "Identifier", "start": 621, "end": 624, "loc": { "start": { "line": 31, "column": 27 }, "end": { "line": 31, "column": 30 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 625, "end": 629, "loc": { "start": { "line": 31, "column": 31 }, "end": { "line": 31, "column": 35 }, "identifierName": "user" }, "name": "user" }, "computed": false }, "operator": "===", "right": { "type": "MemberExpression", "start": 634, "end": 641, "loc": { "start": { "line": 31, "column": 40 }, "end": { "line": 31, "column": 47 } }, "object": { "type": "Identifier", "start": 634, "end": 636, "loc": { "start": { "line": 31, "column": 40 }, "end": { "line": 31, "column": 42 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 637, "end": 641, "loc": { "start": { "line": 31, "column": 43 }, "end": { "line": 31, "column": 47 }, "identifierName": "user" }, "name": "user" }, "computed": false } } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 645, "end": 675, "loc": { "start": { "line": 31, "column": 51 }, "end": { "line": 31, "column": 81 } }, "left": { "type": "MemberExpression", "start": 645, "end": 653, "loc": { "start": { "line": 31, "column": 51 }, "end": { "line": 31, "column": 59 } }, "object": { "type": "Identifier", "start": 645, "end": 647, "loc": { "start": { "line": 31, "column": 51 }, "end": { "line": 31, "column": 53 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 648, "end": 653, "loc": { "start": { "line": 31, "column": 54 }, "end": { "line": 31, "column": 59 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "<", "right": { "type": "BinaryExpression", "start": 656, "end": 675, "loc": { "start": { "line": 31, "column": 62 }, "end": { "line": 31, "column": 81 } }, "left": { "type": "MemberExpression", "start": 656, "end": 667, "loc": { "start": { "line": 31, "column": 62 }, "end": { "line": 31, "column": 73 } }, "object": { "type": "MemberExpression", "start": 656, "end": 661, "loc": { "start": { "line": 31, "column": 62 }, "end": { "line": 31, "column": 67 } }, "object": { "type": "Identifier", "start": 656, "end": 657, "loc": { "start": { "line": 31, "column": 62 }, "end": { "line": 31, "column": 63 }, "identifierName": "n" }, "name": "n" }, "property": { "type": "Identifier", "start": 658, "end": 661, "loc": { "start": { "line": 31, "column": 64 }, "end": { "line": 31, "column": 67 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 662, "end": 667, "loc": { "start": { "line": 31, "column": 68 }, "end": { "line": 31, "column": 73 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "MemberExpression", "start": 670, "end": 675, "loc": { "start": { "line": 31, "column": 76 }, "end": { "line": 31, "column": 81 } }, "object": { "type": "Identifier", "start": 670, "end": 671, "loc": { "start": { "line": 31, "column": 76 }, "end": { "line": 31, "column": 77 }, "identifierName": "n" }, "name": "n" }, "property": { "type": "Identifier", "start": 672, "end": 675, "loc": { "start": { "line": 31, "column": 78 }, "end": { "line": 31, "column": 81 }, "identifierName": "len" }, "name": "len" }, "computed": false } } } } } ], "directives": [] } }, { "type": "ClassMethod", "start": 682, "end": 3026, "loc": { "start": { "line": 33, "column": 2 }, "end": { "line": 85, "column": 3 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 682, "end": 686, "loc": { "start": { "line": 33, "column": 2 }, "end": { "line": 33, "column": 6 }, "identifierName": "mark" }, "name": "mark" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", "start": 688, "end": 690, "loc": { "start": { "line": 33, "column": 8 }, "end": { "line": 33, "column": 10 }, "identifierName": "id" }, "name": "id" }, { "type": "Identifier", "start": 692, "end": 698, "loc": { "start": { "line": 33, "column": 12 }, "end": { "line": 33, "column": 18 }, "identifierName": "length" }, "name": "length" }, { "type": "Identifier", "start": 700, "end": 702, "loc": { "start": { "line": 33, "column": 20 }, "end": { "line": 33, "column": 22 }, "identifierName": "gc" }, "name": "gc" } ], "body": { "type": "BlockStatement", "start": 704, "end": 3026, "loc": { "start": { "line": 33, "column": 24 }, "end": { "line": 85, "column": 3 } }, "body": [ { "type": "IfStatement", "start": 710, "end": 734, "loc": { "start": { "line": 34, "column": 4 }, "end": { "line": 34, "column": 28 } }, "test": { "type": "BinaryExpression", "start": 714, "end": 726, "loc": { "start": { "line": 34, "column": 8 }, "end": { "line": 34, "column": 20 } }, "left": { "type": "Identifier", "start": 714, "end": 720, "loc": { "start": { "line": 34, "column": 8 }, "end": { "line": 34, "column": 14 }, "identifierName": "length" }, "name": "length" }, "operator": "===", "right": { "type": "NumericLiteral", "start": 725, "end": 726, "loc": { "start": { "line": 34, "column": 19 }, "end": { "line": 34, "column": 20 } }, "extra": { "rawValue": 0, "raw": "0" }, "value": 0 } }, "consequent": { "type": "ReturnStatement", "start": 728, "end": 734, "loc": { "start": { "line": 34, "column": 22 }, "end": { "line": 34, "column": 28 } }, "argument": null, "leadingComments": null, "trailingComments": null }, "alternate": null, "trailingComments": [ { "type": "CommentLine", "value": " Step 1. Unmark range", "start": 739, "end": 762, "loc": { "start": { "line": 35, "column": 4 }, "end": { "line": 35, "column": 27 } } } ] }, { "type": "VariableDeclaration", "start": 767, "end": 835, "loc": { "start": { "line": 36, "column": 4 }, "end": { "line": 36, "column": 72 } }, "declarations": [ { "type": "VariableDeclarator", "start": 773, "end": 835, "loc": { "start": { "line": 36, "column": 10 }, "end": { "line": 36, "column": 72 } }, "id": { "type": "Identifier", "start": 773, "end": 778, "loc": { "start": { "line": 36, "column": 10 }, "end": { "line": 36, "column": 15 }, "identifierName": "leftD" }, "name": "leftD", "leadingComments": null }, "init": { "type": "CallExpression", "start": 781, "end": 835, "loc": { "start": { "line": 36, "column": 18 }, "end": { "line": 36, "column": 72 } }, "callee": { "type": "MemberExpression", "start": 781, "end": 804, "loc": { "start": { "line": 36, "column": 18 }, "end": { "line": 36, "column": 41 } }, "object": { "type": "ThisExpression", "start": 781, "end": 785, "loc": { "start": { "line": 36, "column": 18 }, "end": { "line": 36, "column": 22 } } }, "property": { "type": "Identifier", "start": 786, "end": 804, "loc": { "start": { "line": 36, "column": 23 }, "end": { "line": 36, "column": 41 }, "identifierName": "findWithUpperBound" }, "name": "findWithUpperBound" }, "computed": false }, "arguments": [ { "type": "NewExpression", "start": 805, "end": 834, "loc": { "start": { "line": 36, "column": 42 }, "end": { "line": 36, "column": 71 } }, "callee": { "type": "Identifier", "start": 809, "end": 811, "loc": { "start": { "line": 36, "column": 46 }, "end": { "line": 36, "column": 48 }, "identifierName": "ID" }, "name": "ID" }, "arguments": [ { "type": "MemberExpression", "start": 812, "end": 819, "loc": { "start": { "line": 36, "column": 49 }, "end": { "line": 36, "column": 56 } }, "object": { "type": "Identifier", "start": 812, "end": 814, "loc": { "start": { "line": 36, "column": 49 }, "end": { "line": 36, "column": 51 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 815, "end": 819, "loc": { "start": { "line": 36, "column": 52 }, "end": { "line": 36, "column": 56 }, "identifierName": "user" }, "name": "user" }, "computed": false }, { "type": "BinaryExpression", "start": 821, "end": 833, "loc": { "start": { "line": 36, "column": 58 }, "end": { "line": 36, "column": 70 } }, "left": { "type": "MemberExpression", "start": 821, "end": 829, "loc": { "start": { "line": 36, "column": 58 }, "end": { "line": 36, "column": 66 } }, "object": { "type": "Identifier", "start": 821, "end": 823, "loc": { "start": { "line": 36, "column": 58 }, "end": { "line": 36, "column": 60 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 824, "end": 829, "loc": { "start": { "line": 36, "column": 61 }, "end": { "line": 36, "column": 66 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "-", "right": { "type": "NumericLiteral", "start": 832, "end": 833, "loc": { "start": { "line": 36, "column": 69 }, "end": { "line": 36, "column": 70 } }, "extra": { "rawValue": 1, "raw": "1" }, "value": 1 } } ] } ], "trailingComments": null }, "leadingComments": null, "trailingComments": null } ], "kind": "const", "leadingComments": [ { "type": "CommentLine", "value": " Step 1. Unmark range", "start": 739, "end": 762, "loc": { "start": { "line": 35, "column": 4 }, "end": { "line": 35, "column": 27 } } } ], "trailingComments": [ { "type": "CommentLine", "value": " Resize left DSNode if necessary", "start": 840, "end": 874, "loc": { "start": { "line": 37, "column": 4 }, "end": { "line": 37, "column": 38 } } } ] }, { "type": "IfStatement", "start": 879, "end": 1497, "loc": { "start": { "line": 38, "column": 4 }, "end": { "line": 49, "column": 5 } }, "test": { "type": "LogicalExpression", "start": 883, "end": 927, "loc": { "start": { "line": 38, "column": 8 }, "end": { "line": 38, "column": 52 } }, "left": { "type": "BinaryExpression", "start": 883, "end": 897, "loc": { "start": { "line": 38, "column": 8 }, "end": { "line": 38, "column": 22 } }, "left": { "type": "Identifier", "start": 883, "end": 888, "loc": { "start": { "line": 38, "column": 8 }, "end": { "line": 38, "column": 13 }, "identifierName": "leftD" }, "name": "leftD", "leadingComments": null }, "operator": "!==", "right": { "type": "NullLiteral", "start": 893, "end": 897, "loc": { "start": { "line": 38, "column": 18 }, "end": { "line": 38, "column": 22 } } }, "leadingComments": null }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 901, "end": 927, "loc": { "start": { "line": 38, "column": 26 }, "end": { "line": 38, "column": 52 } }, "left": { "type": "MemberExpression", "start": 901, "end": 915, "loc": { "start": { "line": 38, "column": 26 }, "end": { "line": 38, "column": 40 } }, "object": { "type": "MemberExpression", "start": 901, "end": 910, "loc": { "start": { "line": 38, "column": 26 }, "end": { "line": 38, "column": 35 } }, "object": { "type": "Identifier", "start": 901, "end": 906, "loc": { "start": { "line": 38, "column": 26 }, "end": { "line": 38, "column": 31 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 907, "end": 910, "loc": { "start": { "line": 38, "column": 32 }, "end": { "line": 38, "column": 35 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 911, "end": 915, "loc": { "start": { "line": 38, "column": 36 }, "end": { "line": 38, "column": 40 }, "identifierName": "user" }, "name": "user" }, "computed": false }, "operator": "===", "right": { "type": "MemberExpression", "start": 920, "end": 927, "loc": { "start": { "line": 38, "column": 45 }, "end": { "line": 38, "column": 52 } }, "object": { "type": "Identifier", "start": 920, "end": 922, "loc": { "start": { "line": 38, "column": 45 }, "end": { "line": 38, "column": 47 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 923, "end": 927, "loc": { "start": { "line": 38, "column": 48 }, "end": { "line": 38, "column": 52 }, "identifierName": "user" }, "name": "user" }, "computed": false } }, "leadingComments": null }, "consequent": { "type": "BlockStatement", "start": 929, "end": 1497, "loc": { "start": { "line": 38, "column": 54 }, "end": { "line": 49, "column": 5 } }, "body": [ { "type": "IfStatement", "start": 937, "end": 1454, "loc": { "start": { "line": 39, "column": 6 }, "end": { "line": 48, "column": 7 } }, "test": { "type": "LogicalExpression", "start": 941, "end": 1009, "loc": { "start": { "line": 39, "column": 10 }, "end": { "line": 39, "column": 78 } }, "left": { "type": "BinaryExpression", "start": 941, "end": 967, "loc": { "start": { "line": 39, "column": 10 }, "end": { "line": 39, "column": 36 } }, "left": { "type": "MemberExpression", "start": 941, "end": 956, "loc": { "start": { "line": 39, "column": 10 }, "end": { "line": 39, "column": 25 } }, "object": { "type": "MemberExpression", "start": 941, "end": 950, "loc": { "start": { "line": 39, "column": 10 }, "end": { "line": 39, "column": 19 } }, "object": { "type": "Identifier", "start": 941, "end": 946, "loc": { "start": { "line": 39, "column": 10 }, "end": { "line": 39, "column": 15 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 947, "end": 950, "loc": { "start": { "line": 39, "column": 16 }, "end": { "line": 39, "column": 19 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 951, "end": 956, "loc": { "start": { "line": 39, "column": 20 }, "end": { "line": 39, "column": 25 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "<", "right": { "type": "MemberExpression", "start": 959, "end": 967, "loc": { "start": { "line": 39, "column": 28 }, "end": { "line": 39, "column": 36 } }, "object": { "type": "Identifier", "start": 959, "end": 961, "loc": { "start": { "line": 39, "column": 28 }, "end": { "line": 39, "column": 30 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 962, "end": 967, "loc": { "start": { "line": 39, "column": 31 }, "end": { "line": 39, "column": 36 }, "identifierName": "clock" }, "name": "clock" }, "computed": false } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 971, "end": 1009, "loc": { "start": { "line": 39, "column": 40 }, "end": { "line": 39, "column": 78 } }, "left": { "type": "MemberExpression", "start": 971, "end": 979, "loc": { "start": { "line": 39, "column": 40 }, "end": { "line": 39, "column": 48 } }, "object": { "type": "Identifier", "start": 971, "end": 973, "loc": { "start": { "line": 39, "column": 40 }, "end": { "line": 39, "column": 42 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 974, "end": 979, "loc": { "start": { "line": 39, "column": 43 }, "end": { "line": 39, "column": 48 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "<", "right": { "type": "BinaryExpression", "start": 982, "end": 1009, "loc": { "start": { "line": 39, "column": 51 }, "end": { "line": 39, "column": 78 } }, "left": { "type": "MemberExpression", "start": 982, "end": 997, "loc": { "start": { "line": 39, "column": 51 }, "end": { "line": 39, "column": 66 } }, "object": { "type": "MemberExpression", "start": 982, "end": 991, "loc": { "start": { "line": 39, "column": 51 }, "end": { "line": 39, "column": 60 } }, "object": { "type": "Identifier", "start": 982, "end": 987, "loc": { "start": { "line": 39, "column": 51 }, "end": { "line": 39, "column": 56 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 988, "end": 991, "loc": { "start": { "line": 39, "column": 57 }, "end": { "line": 39, "column": 60 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 992, "end": 997, "loc": { "start": { "line": 39, "column": 61 }, "end": { "line": 39, "column": 66 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "MemberExpression", "start": 1000, "end": 1009, "loc": { "start": { "line": 39, "column": 69 }, "end": { "line": 39, "column": 78 } }, "object": { "type": "Identifier", "start": 1000, "end": 1005, "loc": { "start": { "line": 39, "column": 69 }, "end": { "line": 39, "column": 74 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 1006, "end": 1009, "loc": { "start": { "line": 39, "column": 75 }, "end": { "line": 39, "column": 78 }, "identifierName": "len" }, "name": "len" }, "computed": false } } } }, "consequent": { "type": "BlockStatement", "start": 1011, "end": 1454, "loc": { "start": { "line": 39, "column": 80 }, "end": { "line": 48, "column": 7 } }, "body": [ { "type": "IfStatement", "start": 1068, "end": 1369, "loc": { "start": { "line": 41, "column": 8 }, "end": { "line": 45, "column": 9 } }, "test": { "type": "BinaryExpression", "start": 1072, "end": 1119, "loc": { "start": { "line": 41, "column": 12 }, "end": { "line": 41, "column": 59 } }, "left": { "type": "BinaryExpression", "start": 1072, "end": 1089, "loc": { "start": { "line": 41, "column": 12 }, "end": { "line": 41, "column": 29 } }, "left": { "type": "MemberExpression", "start": 1072, "end": 1080, "loc": { "start": { "line": 41, "column": 12 }, "end": { "line": 41, "column": 20 } }, "object": { "type": "Identifier", "start": 1072, "end": 1074, "loc": { "start": { "line": 41, "column": 12 }, "end": { "line": 41, "column": 14 }, "identifierName": "id" }, "name": "id", "leadingComments": null }, "property": { "type": "Identifier", "start": 1075, "end": 1080, "loc": { "start": { "line": 41, "column": 15 }, "end": { "line": 41, "column": 20 }, "identifierName": "clock" }, "name": "clock" }, "computed": false, "leadingComments": null }, "operator": "+", "right": { "type": "Identifier", "start": 1083, "end": 1089, "loc": { "start": { "line": 41, "column": 23 }, "end": { "line": 41, "column": 29 }, "identifierName": "length" }, "name": "length" }, "leadingComments": null }, "operator": "<", "right": { "type": "BinaryExpression", "start": 1092, "end": 1119, "loc": { "start": { "line": 41, "column": 32 }, "end": { "line": 41, "column": 59 } }, "left": { "type": "MemberExpression", "start": 1092, "end": 1107, "loc": { "start": { "line": 41, "column": 32 }, "end": { "line": 41, "column": 47 } }, "object": { "type": "MemberExpression", "start": 1092, "end": 1101, "loc": { "start": { "line": 41, "column": 32 }, "end": { "line": 41, "column": 41 } }, "object": { "type": "Identifier", "start": 1092, "end": 1097, "loc": { "start": { "line": 41, "column": 32 }, "end": { "line": 41, "column": 37 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 1098, "end": 1101, "loc": { "start": { "line": 41, "column": 38 }, "end": { "line": 41, "column": 41 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1102, "end": 1107, "loc": { "start": { "line": 41, "column": 42 }, "end": { "line": 41, "column": 47 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "MemberExpression", "start": 1110, "end": 1119, "loc": { "start": { "line": 41, "column": 50 }, "end": { "line": 41, "column": 59 } }, "object": { "type": "Identifier", "start": 1110, "end": 1115, "loc": { "start": { "line": 41, "column": 50 }, "end": { "line": 41, "column": 55 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 1116, "end": 1119, "loc": { "start": { "line": 41, "column": 56 }, "end": { "line": 41, "column": 59 }, "identifierName": "len" }, "name": "len" }, "computed": false } }, "leadingComments": null }, "consequent": { "type": "BlockStatement", "start": 1121, "end": 1369, "loc": { "start": { "line": 41, "column": 61 }, "end": { "line": 45, "column": 9 } }, "body": [ { "type": "ExpressionStatement", "start": 1244, "end": 1359, "loc": { "start": { "line": 44, "column": 10 }, "end": { "line": 44, "column": 125 } }, "expression": { "type": "CallExpression", "start": 1244, "end": 1359, "loc": { "start": { "line": 44, "column": 10 }, "end": { "line": 44, "column": 125 } }, "callee": { "type": "MemberExpression", "start": 1244, "end": 1252, "loc": { "start": { "line": 44, "column": 10 }, "end": { "line": 44, "column": 18 } }, "object": { "type": "ThisExpression", "start": 1244, "end": 1248, "loc": { "start": { "line": 44, "column": 10 }, "end": { "line": 44, "column": 14 } }, "leadingComments": null }, "property": { "type": "Identifier", "start": 1249, "end": 1252, "loc": { "start": { "line": 44, "column": 15 }, "end": { "line": 44, "column": 18 }, "identifierName": "put" }, "name": "put" }, "computed": false, "leadingComments": null }, "arguments": [ { "type": "NewExpression", "start": 1253, "end": 1358, "loc": { "start": { "line": 44, "column": 19 }, "end": { "line": 44, "column": 124 } }, "callee": { "type": "Identifier", "start": 1257, "end": 1263, "loc": { "start": { "line": 44, "column": 23 }, "end": { "line": 44, "column": 29 }, "identifierName": "DSNode" }, "name": "DSNode" }, "arguments": [ { "type": "NewExpression", "start": 1264, "end": 1298, "loc": { "start": { "line": 44, "column": 30 }, "end": { "line": 44, "column": 64 } }, "callee": { "type": "Identifier", "start": 1268, "end": 1270, "loc": { "start": { "line": 44, "column": 34 }, "end": { "line": 44, "column": 36 }, "identifierName": "ID" }, "name": "ID" }, "arguments": [ { "type": "MemberExpression", "start": 1271, "end": 1278, "loc": { "start": { "line": 44, "column": 37 }, "end": { "line": 44, "column": 44 } }, "object": { "type": "Identifier", "start": 1271, "end": 1273, "loc": { "start": { "line": 44, "column": 37 }, "end": { "line": 44, "column": 39 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1274, "end": 1278, "loc": { "start": { "line": 44, "column": 40 }, "end": { "line": 44, "column": 44 }, "identifierName": "user" }, "name": "user" }, "computed": false }, { "type": "BinaryExpression", "start": 1280, "end": 1297, "loc": { "start": { "line": 44, "column": 46 }, "end": { "line": 44, "column": 63 } }, "left": { "type": "MemberExpression", "start": 1280, "end": 1288, "loc": { "start": { "line": 44, "column": 46 }, "end": { "line": 44, "column": 54 } }, "object": { "type": "Identifier", "start": 1280, "end": 1282, "loc": { "start": { "line": 44, "column": 46 }, "end": { "line": 44, "column": 48 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1283, "end": 1288, "loc": { "start": { "line": 44, "column": 49 }, "end": { "line": 44, "column": 54 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "Identifier", "start": 1291, "end": 1297, "loc": { "start": { "line": 44, "column": 57 }, "end": { "line": 44, "column": 63 }, "identifierName": "length" }, "name": "length" } } ] }, { "type": "BinaryExpression", "start": 1300, "end": 1347, "loc": { "start": { "line": 44, "column": 66 }, "end": { "line": 44, "column": 113 } }, "left": { "type": "BinaryExpression", "start": 1300, "end": 1338, "loc": { "start": { "line": 44, "column": 66 }, "end": { "line": 44, "column": 104 } }, "left": { "type": "BinaryExpression", "start": 1300, "end": 1327, "loc": { "start": { "line": 44, "column": 66 }, "end": { "line": 44, "column": 93 } }, "left": { "type": "MemberExpression", "start": 1300, "end": 1315, "loc": { "start": { "line": 44, "column": 66 }, "end": { "line": 44, "column": 81 } }, "object": { "type": "MemberExpression", "start": 1300, "end": 1309, "loc": { "start": { "line": 44, "column": 66 }, "end": { "line": 44, "column": 75 } }, "object": { "type": "Identifier", "start": 1300, "end": 1305, "loc": { "start": { "line": 44, "column": 66 }, "end": { "line": 44, "column": 71 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 1306, "end": 1309, "loc": { "start": { "line": 44, "column": 72 }, "end": { "line": 44, "column": 75 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1310, "end": 1315, "loc": { "start": { "line": 44, "column": 76 }, "end": { "line": 44, "column": 81 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "MemberExpression", "start": 1318, "end": 1327, "loc": { "start": { "line": 44, "column": 84 }, "end": { "line": 44, "column": 93 } }, "object": { "type": "Identifier", "start": 1318, "end": 1323, "loc": { "start": { "line": 44, "column": 84 }, "end": { "line": 44, "column": 89 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 1324, "end": 1327, "loc": { "start": { "line": 44, "column": 90 }, "end": { "line": 44, "column": 93 }, "identifierName": "len" }, "name": "len" }, "computed": false } }, "operator": "-", "right": { "type": "MemberExpression", "start": 1330, "end": 1338, "loc": { "start": { "line": 44, "column": 96 }, "end": { "line": 44, "column": 104 } }, "object": { "type": "Identifier", "start": 1330, "end": 1332, "loc": { "start": { "line": 44, "column": 96 }, "end": { "line": 44, "column": 98 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1333, "end": 1338, "loc": { "start": { "line": 44, "column": 99 }, "end": { "line": 44, "column": 104 }, "identifierName": "clock" }, "name": "clock" }, "computed": false } }, "operator": "-", "right": { "type": "Identifier", "start": 1341, "end": 1347, "loc": { "start": { "line": 44, "column": 107 }, "end": { "line": 44, "column": 113 }, "identifierName": "length" }, "name": "length" } }, { "type": "MemberExpression", "start": 1349, "end": 1357, "loc": { "start": { "line": 44, "column": 115 }, "end": { "line": 44, "column": 123 } }, "object": { "type": "Identifier", "start": 1349, "end": 1354, "loc": { "start": { "line": 44, "column": 115 }, "end": { "line": 44, "column": 120 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 1355, "end": 1357, "loc": { "start": { "line": 44, "column": 121 }, "end": { "line": 44, "column": 123 }, "identifierName": "gc" }, "name": "gc" }, "computed": false } ] } ], "leadingComments": null }, "leadingComments": [ { "type": "CommentLine", "value": " overlaps new mark range and some more", "start": 1133, "end": 1173, "loc": { "start": { "line": 42, "column": 10 }, "end": { "line": 42, "column": 50 } } }, { "type": "CommentLine", "value": " create another DSNode to the right of new mark", "start": 1184, "end": 1233, "loc": { "start": { "line": 43, "column": 10 }, "end": { "line": 43, "column": 59 } } } ] } ], "directives": [], "trailingComments": null }, "alternate": null, "leadingComments": [ { "type": "CommentLine", "value": " node is overlapping. need to resize", "start": 1021, "end": 1059, "loc": { "start": { "line": 40, "column": 8 }, "end": { "line": 40, "column": 46 } } } ], "trailingComments": [ { "type": "CommentLine", "value": " resize left DSNode", "start": 1378, "end": 1399, "loc": { "start": { "line": 46, "column": 8 }, "end": { "line": 46, "column": 29 } } } ] }, { "type": "ExpressionStatement", "start": 1408, "end": 1446, "loc": { "start": { "line": 47, "column": 8 }, "end": { "line": 47, "column": 46 } }, "expression": { "type": "AssignmentExpression", "start": 1408, "end": 1446, "loc": { "start": { "line": 47, "column": 8 }, "end": { "line": 47, "column": 46 } }, "operator": "=", "left": { "type": "MemberExpression", "start": 1408, "end": 1417, "loc": { "start": { "line": 47, "column": 8 }, "end": { "line": 47, "column": 17 } }, "object": { "type": "Identifier", "start": 1408, "end": 1413, "loc": { "start": { "line": 47, "column": 8 }, "end": { "line": 47, "column": 13 }, "identifierName": "leftD" }, "name": "leftD", "leadingComments": null }, "property": { "type": "Identifier", "start": 1414, "end": 1417, "loc": { "start": { "line": 47, "column": 14 }, "end": { "line": 47, "column": 17 }, "identifierName": "len" }, "name": "len" }, "computed": false, "leadingComments": null }, "right": { "type": "BinaryExpression", "start": 1420, "end": 1446, "loc": { "start": { "line": 47, "column": 20 }, "end": { "line": 47, "column": 46 } }, "left": { "type": "MemberExpression", "start": 1420, "end": 1428, "loc": { "start": { "line": 47, "column": 20 }, "end": { "line": 47, "column": 28 } }, "object": { "type": "Identifier", "start": 1420, "end": 1422, "loc": { "start": { "line": 47, "column": 20 }, "end": { "line": 47, "column": 22 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1423, "end": 1428, "loc": { "start": { "line": 47, "column": 23 }, "end": { "line": 47, "column": 28 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "-", "right": { "type": "MemberExpression", "start": 1431, "end": 1446, "loc": { "start": { "line": 47, "column": 31 }, "end": { "line": 47, "column": 46 } }, "object": { "type": "MemberExpression", "start": 1431, "end": 1440, "loc": { "start": { "line": 47, "column": 31 }, "end": { "line": 47, "column": 40 } }, "object": { "type": "Identifier", "start": 1431, "end": 1436, "loc": { "start": { "line": 47, "column": 31 }, "end": { "line": 47, "column": 36 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 1437, "end": 1440, "loc": { "start": { "line": 47, "column": 37 }, "end": { "line": 47, "column": 40 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1441, "end": 1446, "loc": { "start": { "line": 47, "column": 41 }, "end": { "line": 47, "column": 46 }, "identifierName": "clock" }, "name": "clock" }, "computed": false } }, "leadingComments": null }, "leadingComments": [ { "type": "CommentLine", "value": " resize left DSNode", "start": 1378, "end": 1399, "loc": { "start": { "line": 46, "column": 8 }, "end": { "line": 46, "column": 29 } } } ] } ], "directives": [], "trailingComments": null }, "alternate": null, "trailingComments": [ { "type": "CommentLine", "value": " Otherwise there is no overlapping", "start": 1455, "end": 1491, "loc": { "start": { "line": 48, "column": 8 }, "end": { "line": 48, "column": 44 } } } ] } ], "directives": [], "trailingComments": null }, "alternate": null, "leadingComments": [ { "type": "CommentLine", "value": " Resize left DSNode if necessary", "start": 840, "end": 874, "loc": { "start": { "line": 37, "column": 4 }, "end": { "line": 37, "column": 38 } } } ], "trailingComments": [ { "type": "CommentLine", "value": " Resize right DSNode if necessary", "start": 1502, "end": 1537, "loc": { "start": { "line": 50, "column": 4 }, "end": { "line": 50, "column": 39 } } } ] }, { "type": "VariableDeclaration", "start": 1542, "end": 1594, "loc": { "start": { "line": 51, "column": 4 }, "end": { "line": 51, "column": 56 } }, "declarations": [ { "type": "VariableDeclarator", "start": 1548, "end": 1594, "loc": { "start": { "line": 51, "column": 10 }, "end": { "line": 51, "column": 56 } }, "id": { "type": "Identifier", "start": 1548, "end": 1553, "loc": { "start": { "line": 51, "column": 10 }, "end": { "line": 51, "column": 15 }, "identifierName": "upper" }, "name": "upper", "leadingComments": null }, "init": { "type": "NewExpression", "start": 1556, "end": 1594, "loc": { "start": { "line": 51, "column": 18 }, "end": { "line": 51, "column": 56 } }, "callee": { "type": "Identifier", "start": 1560, "end": 1562, "loc": { "start": { "line": 51, "column": 22 }, "end": { "line": 51, "column": 24 }, "identifierName": "ID" }, "name": "ID" }, "arguments": [ { "type": "MemberExpression", "start": 1563, "end": 1570, "loc": { "start": { "line": 51, "column": 25 }, "end": { "line": 51, "column": 32 } }, "object": { "type": "Identifier", "start": 1563, "end": 1565, "loc": { "start": { "line": 51, "column": 25 }, "end": { "line": 51, "column": 27 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1566, "end": 1570, "loc": { "start": { "line": 51, "column": 28 }, "end": { "line": 51, "column": 32 }, "identifierName": "user" }, "name": "user" }, "computed": false }, { "type": "BinaryExpression", "start": 1572, "end": 1593, "loc": { "start": { "line": 51, "column": 34 }, "end": { "line": 51, "column": 55 } }, "left": { "type": "BinaryExpression", "start": 1572, "end": 1589, "loc": { "start": { "line": 51, "column": 34 }, "end": { "line": 51, "column": 51 } }, "left": { "type": "MemberExpression", "start": 1572, "end": 1580, "loc": { "start": { "line": 51, "column": 34 }, "end": { "line": 51, "column": 42 } }, "object": { "type": "Identifier", "start": 1572, "end": 1574, "loc": { "start": { "line": 51, "column": 34 }, "end": { "line": 51, "column": 36 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1575, "end": 1580, "loc": { "start": { "line": 51, "column": 37 }, "end": { "line": 51, "column": 42 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "Identifier", "start": 1583, "end": 1589, "loc": { "start": { "line": 51, "column": 45 }, "end": { "line": 51, "column": 51 }, "identifierName": "length" }, "name": "length" } }, "operator": "-", "right": { "type": "NumericLiteral", "start": 1592, "end": 1593, "loc": { "start": { "line": 51, "column": 54 }, "end": { "line": 51, "column": 55 } }, "extra": { "rawValue": 1, "raw": "1" }, "value": 1 } } ] }, "leadingComments": null } ], "kind": "const", "leadingComments": [ { "type": "CommentLine", "value": " Resize right DSNode if necessary", "start": 1502, "end": 1537, "loc": { "start": { "line": 50, "column": 4 }, "end": { "line": 50, "column": 39 } } } ] }, { "type": "VariableDeclaration", "start": 1599, "end": 1644, "loc": { "start": { "line": 52, "column": 4 }, "end": { "line": 52, "column": 49 } }, "declarations": [ { "type": "VariableDeclarator", "start": 1605, "end": 1644, "loc": { "start": { "line": 52, "column": 10 }, "end": { "line": 52, "column": 49 } }, "id": { "type": "Identifier", "start": 1605, "end": 1611, "loc": { "start": { "line": 52, "column": 10 }, "end": { "line": 52, "column": 16 }, "identifierName": "rightD" }, "name": "rightD" }, "init": { "type": "CallExpression", "start": 1614, "end": 1644, "loc": { "start": { "line": 52, "column": 19 }, "end": { "line": 52, "column": 49 } }, "callee": { "type": "MemberExpression", "start": 1614, "end": 1637, "loc": { "start": { "line": 52, "column": 19 }, "end": { "line": 52, "column": 42 } }, "object": { "type": "ThisExpression", "start": 1614, "end": 1618, "loc": { "start": { "line": 52, "column": 19 }, "end": { "line": 52, "column": 23 } } }, "property": { "type": "Identifier", "start": 1619, "end": 1637, "loc": { "start": { "line": 52, "column": 24 }, "end": { "line": 52, "column": 42 }, "identifierName": "findWithUpperBound" }, "name": "findWithUpperBound" }, "computed": false }, "arguments": [ { "type": "Identifier", "start": 1638, "end": 1643, "loc": { "start": { "line": 52, "column": 43 }, "end": { "line": 52, "column": 48 }, "identifierName": "upper" }, "name": "upper" } ] } } ], "kind": "const" }, { "type": "IfStatement", "start": 1649, "end": 2051, "loc": { "start": { "line": 53, "column": 4 }, "end": { "line": 59, "column": 5 } }, "test": { "type": "LogicalExpression", "start": 1653, "end": 1699, "loc": { "start": { "line": 53, "column": 8 }, "end": { "line": 53, "column": 54 } }, "left": { "type": "BinaryExpression", "start": 1653, "end": 1668, "loc": { "start": { "line": 53, "column": 8 }, "end": { "line": 53, "column": 23 } }, "left": { "type": "Identifier", "start": 1653, "end": 1659, "loc": { "start": { "line": 53, "column": 8 }, "end": { "line": 53, "column": 14 }, "identifierName": "rightD" }, "name": "rightD" }, "operator": "!==", "right": { "type": "NullLiteral", "start": 1664, "end": 1668, "loc": { "start": { "line": 53, "column": 19 }, "end": { "line": 53, "column": 23 } } } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 1672, "end": 1699, "loc": { "start": { "line": 53, "column": 27 }, "end": { "line": 53, "column": 54 } }, "left": { "type": "MemberExpression", "start": 1672, "end": 1687, "loc": { "start": { "line": 53, "column": 27 }, "end": { "line": 53, "column": 42 } }, "object": { "type": "MemberExpression", "start": 1672, "end": 1682, "loc": { "start": { "line": 53, "column": 27 }, "end": { "line": 53, "column": 37 } }, "object": { "type": "Identifier", "start": 1672, "end": 1678, "loc": { "start": { "line": 53, "column": 27 }, "end": { "line": 53, "column": 33 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1679, "end": 1682, "loc": { "start": { "line": 53, "column": 34 }, "end": { "line": 53, "column": 37 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1683, "end": 1687, "loc": { "start": { "line": 53, "column": 38 }, "end": { "line": 53, "column": 42 }, "identifierName": "user" }, "name": "user" }, "computed": false }, "operator": "===", "right": { "type": "MemberExpression", "start": 1692, "end": 1699, "loc": { "start": { "line": 53, "column": 47 }, "end": { "line": 53, "column": 54 } }, "object": { "type": "Identifier", "start": 1692, "end": 1694, "loc": { "start": { "line": 53, "column": 47 }, "end": { "line": 53, "column": 49 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1695, "end": 1699, "loc": { "start": { "line": 53, "column": 50 }, "end": { "line": 53, "column": 54 }, "identifierName": "user" }, "name": "user" }, "computed": false } } }, "consequent": { "type": "BlockStatement", "start": 1701, "end": 2051, "loc": { "start": { "line": 53, "column": 56 }, "end": { "line": 59, "column": 5 } }, "body": [ { "type": "IfStatement", "start": 1709, "end": 2045, "loc": { "start": { "line": 54, "column": 6 }, "end": { "line": 58, "column": 7 } }, "test": { "type": "LogicalExpression", "start": 1713, "end": 1834, "loc": { "start": { "line": 54, "column": 10 }, "end": { "line": 54, "column": 131 } }, "left": { "type": "LogicalExpression", "start": 1713, "end": 1781, "loc": { "start": { "line": 54, "column": 10 }, "end": { "line": 54, "column": 78 } }, "left": { "type": "BinaryExpression", "start": 1713, "end": 1749, "loc": { "start": { "line": 54, "column": 10 }, "end": { "line": 54, "column": 46 } }, "left": { "type": "MemberExpression", "start": 1713, "end": 1729, "loc": { "start": { "line": 54, "column": 10 }, "end": { "line": 54, "column": 26 } }, "object": { "type": "MemberExpression", "start": 1713, "end": 1723, "loc": { "start": { "line": 54, "column": 10 }, "end": { "line": 54, "column": 20 } }, "object": { "type": "Identifier", "start": 1713, "end": 1719, "loc": { "start": { "line": 54, "column": 10 }, "end": { "line": 54, "column": 16 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1720, "end": 1723, "loc": { "start": { "line": 54, "column": 17 }, "end": { "line": 54, "column": 20 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1724, "end": 1729, "loc": { "start": { "line": 54, "column": 21 }, "end": { "line": 54, "column": 26 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "<", "right": { "type": "BinaryExpression", "start": 1732, "end": 1749, "loc": { "start": { "line": 54, "column": 29 }, "end": { "line": 54, "column": 46 } }, "left": { "type": "MemberExpression", "start": 1732, "end": 1740, "loc": { "start": { "line": 54, "column": 29 }, "end": { "line": 54, "column": 37 } }, "object": { "type": "Identifier", "start": 1732, "end": 1734, "loc": { "start": { "line": 54, "column": 29 }, "end": { "line": 54, "column": 31 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1735, "end": 1740, "loc": { "start": { "line": 54, "column": 32 }, "end": { "line": 54, "column": 37 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "Identifier", "start": 1743, "end": 1749, "loc": { "start": { "line": 54, "column": 40 }, "end": { "line": 54, "column": 46 }, "identifierName": "length" }, "name": "length" } } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 1753, "end": 1781, "loc": { "start": { "line": 54, "column": 50 }, "end": { "line": 54, "column": 78 } }, "left": { "type": "MemberExpression", "start": 1753, "end": 1761, "loc": { "start": { "line": 54, "column": 50 }, "end": { "line": 54, "column": 58 } }, "object": { "type": "Identifier", "start": 1753, "end": 1755, "loc": { "start": { "line": 54, "column": 50 }, "end": { "line": 54, "column": 52 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1756, "end": 1761, "loc": { "start": { "line": 54, "column": 53 }, "end": { "line": 54, "column": 58 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "<=", "right": { "type": "MemberExpression", "start": 1765, "end": 1781, "loc": { "start": { "line": 54, "column": 62 }, "end": { "line": 54, "column": 78 } }, "object": { "type": "MemberExpression", "start": 1765, "end": 1775, "loc": { "start": { "line": 54, "column": 62 }, "end": { "line": 54, "column": 72 } }, "object": { "type": "Identifier", "start": 1765, "end": 1771, "loc": { "start": { "line": 54, "column": 62 }, "end": { "line": 54, "column": 68 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1772, "end": 1775, "loc": { "start": { "line": 54, "column": 69 }, "end": { "line": 54, "column": 72 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1776, "end": 1781, "loc": { "start": { "line": 54, "column": 73 }, "end": { "line": 54, "column": 78 }, "identifierName": "clock" }, "name": "clock" }, "computed": false } } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 1785, "end": 1834, "loc": { "start": { "line": 54, "column": 82 }, "end": { "line": 54, "column": 131 } }, "left": { "type": "BinaryExpression", "start": 1785, "end": 1802, "loc": { "start": { "line": 54, "column": 82 }, "end": { "line": 54, "column": 99 } }, "left": { "type": "MemberExpression", "start": 1785, "end": 1793, "loc": { "start": { "line": 54, "column": 82 }, "end": { "line": 54, "column": 90 } }, "object": { "type": "Identifier", "start": 1785, "end": 1787, "loc": { "start": { "line": 54, "column": 82 }, "end": { "line": 54, "column": 84 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1788, "end": 1793, "loc": { "start": { "line": 54, "column": 85 }, "end": { "line": 54, "column": 90 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "Identifier", "start": 1796, "end": 1802, "loc": { "start": { "line": 54, "column": 93 }, "end": { "line": 54, "column": 99 }, "identifierName": "length" }, "name": "length" } }, "operator": "<", "right": { "type": "BinaryExpression", "start": 1805, "end": 1834, "loc": { "start": { "line": 54, "column": 102 }, "end": { "line": 54, "column": 131 } }, "left": { "type": "MemberExpression", "start": 1805, "end": 1821, "loc": { "start": { "line": 54, "column": 102 }, "end": { "line": 54, "column": 118 } }, "object": { "type": "MemberExpression", "start": 1805, "end": 1815, "loc": { "start": { "line": 54, "column": 102 }, "end": { "line": 54, "column": 112 } }, "object": { "type": "Identifier", "start": 1805, "end": 1811, "loc": { "start": { "line": 54, "column": 102 }, "end": { "line": 54, "column": 108 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1812, "end": 1815, "loc": { "start": { "line": 54, "column": 109 }, "end": { "line": 54, "column": 112 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1816, "end": 1821, "loc": { "start": { "line": 54, "column": 113 }, "end": { "line": 54, "column": 118 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "MemberExpression", "start": 1824, "end": 1834, "loc": { "start": { "line": 54, "column": 121 }, "end": { "line": 54, "column": 131 } }, "object": { "type": "Identifier", "start": 1824, "end": 1830, "loc": { "start": { "line": 54, "column": 121 }, "end": { "line": 54, "column": 127 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1831, "end": 1834, "loc": { "start": { "line": 54, "column": 128 }, "end": { "line": 54, "column": 131 }, "identifierName": "len" }, "name": "len" }, "computed": false } } } }, "consequent": { "type": "BlockStatement", "start": 1836, "end": 2045, "loc": { "start": { "line": 54, "column": 133 }, "end": { "line": 58, "column": 7 } }, "body": [ { "type": "VariableDeclaration", "start": 1900, "end": 1946, "loc": { "start": { "line": 55, "column": 8 }, "end": { "line": 55, "column": 54 } }, "declarations": [ { "type": "VariableDeclarator", "start": 1906, "end": 1946, "loc": { "start": { "line": 55, "column": 14 }, "end": { "line": 55, "column": 54 } }, "id": { "type": "Identifier", "start": 1906, "end": 1907, "loc": { "start": { "line": 55, "column": 14 }, "end": { "line": 55, "column": 15 }, "identifierName": "d" }, "name": "d", "leadingComments": null }, "init": { "type": "BinaryExpression", "start": 1910, "end": 1946, "loc": { "start": { "line": 55, "column": 18 }, "end": { "line": 55, "column": 54 } }, "left": { "type": "BinaryExpression", "start": 1910, "end": 1927, "loc": { "start": { "line": 55, "column": 18 }, "end": { "line": 55, "column": 35 } }, "left": { "type": "MemberExpression", "start": 1910, "end": 1918, "loc": { "start": { "line": 55, "column": 18 }, "end": { "line": 55, "column": 26 } }, "object": { "type": "Identifier", "start": 1910, "end": 1912, "loc": { "start": { "line": 55, "column": 18 }, "end": { "line": 55, "column": 20 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 1913, "end": 1918, "loc": { "start": { "line": 55, "column": 21 }, "end": { "line": 55, "column": 26 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "Identifier", "start": 1921, "end": 1927, "loc": { "start": { "line": 55, "column": 29 }, "end": { "line": 55, "column": 35 }, "identifierName": "length" }, "name": "length" } }, "operator": "-", "right": { "type": "MemberExpression", "start": 1930, "end": 1946, "loc": { "start": { "line": 55, "column": 38 }, "end": { "line": 55, "column": 54 } }, "object": { "type": "MemberExpression", "start": 1930, "end": 1940, "loc": { "start": { "line": 55, "column": 38 }, "end": { "line": 55, "column": 48 } }, "object": { "type": "Identifier", "start": 1930, "end": 1936, "loc": { "start": { "line": 55, "column": 38 }, "end": { "line": 55, "column": 44 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1937, "end": 1940, "loc": { "start": { "line": 55, "column": 45 }, "end": { "line": 55, "column": 48 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1941, "end": 1946, "loc": { "start": { "line": 55, "column": 49 }, "end": { "line": 55, "column": 54 }, "identifierName": "clock" }, "name": "clock" }, "computed": false } }, "leadingComments": null } ], "kind": "const", "leadingComments": [ { "type": "CommentLine", "value": " we only consider the case where we resize the node", "start": 1838, "end": 1891, "loc": { "start": { "line": 54, "column": 135 }, "end": { "line": 54, "column": 188 } } } ] }, { "type": "ExpressionStatement", "start": 1955, "end": 2013, "loc": { "start": { "line": 56, "column": 8 }, "end": { "line": 56, "column": 66 } }, "expression": { "type": "AssignmentExpression", "start": 1955, "end": 2013, "loc": { "start": { "line": 56, "column": 8 }, "end": { "line": 56, "column": 66 } }, "operator": "=", "left": { "type": "MemberExpression", "start": 1955, "end": 1965, "loc": { "start": { "line": 56, "column": 8 }, "end": { "line": 56, "column": 18 } }, "object": { "type": "Identifier", "start": 1955, "end": 1961, "loc": { "start": { "line": 56, "column": 8 }, "end": { "line": 56, "column": 14 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1962, "end": 1965, "loc": { "start": { "line": 56, "column": 15 }, "end": { "line": 56, "column": 18 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "right": { "type": "NewExpression", "start": 1968, "end": 2013, "loc": { "start": { "line": 56, "column": 21 }, "end": { "line": 56, "column": 66 } }, "callee": { "type": "Identifier", "start": 1972, "end": 1974, "loc": { "start": { "line": 56, "column": 25 }, "end": { "line": 56, "column": 27 }, "identifierName": "ID" }, "name": "ID" }, "arguments": [ { "type": "MemberExpression", "start": 1975, "end": 1990, "loc": { "start": { "line": 56, "column": 28 }, "end": { "line": 56, "column": 43 } }, "object": { "type": "MemberExpression", "start": 1975, "end": 1985, "loc": { "start": { "line": 56, "column": 28 }, "end": { "line": 56, "column": 38 } }, "object": { "type": "Identifier", "start": 1975, "end": 1981, "loc": { "start": { "line": 56, "column": 28 }, "end": { "line": 56, "column": 34 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1982, "end": 1985, "loc": { "start": { "line": 56, "column": 35 }, "end": { "line": 56, "column": 38 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 1986, "end": 1990, "loc": { "start": { "line": 56, "column": 39 }, "end": { "line": 56, "column": 43 }, "identifierName": "user" }, "name": "user" }, "computed": false }, { "type": "BinaryExpression", "start": 1992, "end": 2012, "loc": { "start": { "line": 56, "column": 45 }, "end": { "line": 56, "column": 65 } }, "left": { "type": "MemberExpression", "start": 1992, "end": 2008, "loc": { "start": { "line": 56, "column": 45 }, "end": { "line": 56, "column": 61 } }, "object": { "type": "MemberExpression", "start": 1992, "end": 2002, "loc": { "start": { "line": 56, "column": 45 }, "end": { "line": 56, "column": 55 } }, "object": { "type": "Identifier", "start": 1992, "end": 1998, "loc": { "start": { "line": 56, "column": 45 }, "end": { "line": 56, "column": 51 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 1999, "end": 2002, "loc": { "start": { "line": 56, "column": 52 }, "end": { "line": 56, "column": 55 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 2003, "end": 2008, "loc": { "start": { "line": 56, "column": 56 }, "end": { "line": 56, "column": 61 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "Identifier", "start": 2011, "end": 2012, "loc": { "start": { "line": 56, "column": 64 }, "end": { "line": 56, "column": 65 }, "identifierName": "d" }, "name": "d" } } ] } } }, { "type": "ExpressionStatement", "start": 2022, "end": 2037, "loc": { "start": { "line": 57, "column": 8 }, "end": { "line": 57, "column": 23 } }, "expression": { "type": "AssignmentExpression", "start": 2022, "end": 2037, "loc": { "start": { "line": 57, "column": 8 }, "end": { "line": 57, "column": 23 } }, "operator": "-=", "left": { "type": "MemberExpression", "start": 2022, "end": 2032, "loc": { "start": { "line": 57, "column": 8 }, "end": { "line": 57, "column": 18 } }, "object": { "type": "Identifier", "start": 2022, "end": 2028, "loc": { "start": { "line": 57, "column": 8 }, "end": { "line": 57, "column": 14 }, "identifierName": "rightD" }, "name": "rightD" }, "property": { "type": "Identifier", "start": 2029, "end": 2032, "loc": { "start": { "line": 57, "column": 15 }, "end": { "line": 57, "column": 18 }, "identifierName": "len" }, "name": "len" }, "computed": false }, "right": { "type": "Identifier", "start": 2036, "end": 2037, "loc": { "start": { "line": 57, "column": 22 }, "end": { "line": 57, "column": 23 }, "identifierName": "d" }, "name": "d" } } } ], "directives": [] }, "alternate": null } ], "directives": [], "trailingComments": null }, "alternate": null, "trailingComments": [ { "type": "CommentLine", "value": " Now we only have to delete all inner marks", "start": 2056, "end": 2101, "loc": { "start": { "line": 60, "column": 4 }, "end": { "line": 60, "column": 49 } } } ] }, { "type": "VariableDeclaration", "start": 2106, "end": 2130, "loc": { "start": { "line": 61, "column": 4 }, "end": { "line": 61, "column": 28 } }, "declarations": [ { "type": "VariableDeclarator", "start": 2112, "end": 2130, "loc": { "start": { "line": 61, "column": 10 }, "end": { "line": 61, "column": 28 } }, "id": { "type": "Identifier", "start": 2112, "end": 2125, "loc": { "start": { "line": 61, "column": 10 }, "end": { "line": 61, "column": 23 }, "identifierName": "deleteNodeIds" }, "name": "deleteNodeIds", "leadingComments": null }, "init": { "type": "ArrayExpression", "start": 2128, "end": 2130, "loc": { "start": { "line": 61, "column": 26 }, "end": { "line": 61, "column": 28 } }, "elements": [] }, "leadingComments": null } ], "kind": "const", "leadingComments": [ { "type": "CommentLine", "value": " Now we only have to delete all inner marks", "start": 2056, "end": 2101, "loc": { "start": { "line": 60, "column": 4 }, "end": { "line": 60, "column": 49 } } } ] }, { "type": "ExpressionStatement", "start": 2135, "end": 2204, "loc": { "start": { "line": 62, "column": 4 }, "end": { "line": 64, "column": 6 } }, "expression": { "type": "CallExpression", "start": 2135, "end": 2204, "loc": { "start": { "line": 62, "column": 4 }, "end": { "line": 64, "column": 6 } }, "callee": { "type": "MemberExpression", "start": 2135, "end": 2147, "loc": { "start": { "line": 62, "column": 4 }, "end": { "line": 62, "column": 16 } }, "object": { "type": "ThisExpression", "start": 2135, "end": 2139, "loc": { "start": { "line": 62, "column": 4 }, "end": { "line": 62, "column": 8 } } }, "property": { "type": "Identifier", "start": 2140, "end": 2147, "loc": { "start": { "line": 62, "column": 9 }, "end": { "line": 62, "column": 16 }, "identifierName": "iterate" }, "name": "iterate" }, "computed": false }, "arguments": [ { "type": "Identifier", "start": 2148, "end": 2150, "loc": { "start": { "line": 62, "column": 17 }, "end": { "line": 62, "column": 19 }, "identifierName": "id" }, "name": "id" }, { "type": "Identifier", "start": 2152, "end": 2157, "loc": { "start": { "line": 62, "column": 21 }, "end": { "line": 62, "column": 26 }, "identifierName": "upper" }, "name": "upper" }, { "type": "ArrowFunctionExpression", "start": 2159, "end": 2203, "loc": { "start": { "line": 62, "column": 28 }, "end": { "line": 64, "column": 5 } }, "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", "start": 2159, "end": 2160, "loc": { "start": { "line": 62, "column": 28 }, "end": { "line": 62, "column": 29 }, "identifierName": "m" }, "name": "m" } ], "body": { "type": "BlockStatement", "start": 2164, "end": 2203, "loc": { "start": { "line": 62, "column": 33 }, "end": { "line": 64, "column": 5 } }, "body": [ { "type": "ExpressionStatement", "start": 2172, "end": 2197, "loc": { "start": { "line": 63, "column": 6 }, "end": { "line": 63, "column": 31 } }, "expression": { "type": "CallExpression", "start": 2172, "end": 2197, "loc": { "start": { "line": 63, "column": 6 }, "end": { "line": 63, "column": 31 } }, "callee": { "type": "MemberExpression", "start": 2172, "end": 2190, "loc": { "start": { "line": 63, "column": 6 }, "end": { "line": 63, "column": 24 } }, "object": { "type": "Identifier", "start": 2172, "end": 2185, "loc": { "start": { "line": 63, "column": 6 }, "end": { "line": 63, "column": 19 }, "identifierName": "deleteNodeIds" }, "name": "deleteNodeIds" }, "property": { "type": "Identifier", "start": 2186, "end": 2190, "loc": { "start": { "line": 63, "column": 20 }, "end": { "line": 63, "column": 24 }, "identifierName": "push" }, "name": "push" }, "computed": false }, "arguments": [ { "type": "MemberExpression", "start": 2191, "end": 2196, "loc": { "start": { "line": 63, "column": 25 }, "end": { "line": 63, "column": 30 } }, "object": { "type": "Identifier", "start": 2191, "end": 2192, "loc": { "start": { "line": 63, "column": 25 }, "end": { "line": 63, "column": 26 }, "identifierName": "m" }, "name": "m" }, "property": { "type": "Identifier", "start": 2193, "end": 2196, "loc": { "start": { "line": 63, "column": 27 }, "end": { "line": 63, "column": 30 }, "identifierName": "_id" }, "name": "_id" }, "computed": false } ] } } ], "directives": [] } } ] } }, { "type": "ForStatement", "start": 2209, "end": 2304, "loc": { "start": { "line": 65, "column": 4 }, "end": { "line": 67, "column": 5 } }, "init": { "type": "VariableDeclaration", "start": 2214, "end": 2246, "loc": { "start": { "line": 65, "column": 9 }, "end": { "line": 65, "column": 41 } }, "declarations": [ { "type": "VariableDeclarator", "start": 2218, "end": 2246, "loc": { "start": { "line": 65, "column": 13 }, "end": { "line": 65, "column": 41 } }, "id": { "type": "Identifier", "start": 2218, "end": 2219, "loc": { "start": { "line": 65, "column": 13 }, "end": { "line": 65, "column": 14 }, "identifierName": "i" }, "name": "i" }, "init": { "type": "BinaryExpression", "start": 2222, "end": 2246, "loc": { "start": { "line": 65, "column": 17 }, "end": { "line": 65, "column": 41 } }, "left": { "type": "MemberExpression", "start": 2222, "end": 2242, "loc": { "start": { "line": 65, "column": 17 }, "end": { "line": 65, "column": 37 } }, "object": { "type": "Identifier", "start": 2222, "end": 2235, "loc": { "start": { "line": 65, "column": 17 }, "end": { "line": 65, "column": 30 }, "identifierName": "deleteNodeIds" }, "name": "deleteNodeIds" }, "property": { "type": "Identifier", "start": 2236, "end": 2242, "loc": { "start": { "line": 65, "column": 31 }, "end": { "line": 65, "column": 37 }, "identifierName": "length" }, "name": "length" }, "computed": false }, "operator": "-", "right": { "type": "NumericLiteral", "start": 2245, "end": 2246, "loc": { "start": { "line": 65, "column": 40 }, "end": { "line": 65, "column": 41 } }, "extra": { "rawValue": 1, "raw": "1" }, "value": 1 } } } ], "kind": "let" }, "test": { "type": "BinaryExpression", "start": 2248, "end": 2254, "loc": { "start": { "line": 65, "column": 43 }, "end": { "line": 65, "column": 49 } }, "left": { "type": "Identifier", "start": 2248, "end": 2249, "loc": { "start": { "line": 65, "column": 43 }, "end": { "line": 65, "column": 44 }, "identifierName": "i" }, "name": "i" }, "operator": ">=", "right": { "type": "NumericLiteral", "start": 2253, "end": 2254, "loc": { "start": { "line": 65, "column": 48 }, "end": { "line": 65, "column": 49 } }, "extra": { "rawValue": 0, "raw": "0" }, "value": 0 } }, "update": { "type": "UpdateExpression", "start": 2256, "end": 2259, "loc": { "start": { "line": 65, "column": 51 }, "end": { "line": 65, "column": 54 } }, "operator": "--", "prefix": false, "argument": { "type": "Identifier", "start": 2256, "end": 2257, "loc": { "start": { "line": 65, "column": 51 }, "end": { "line": 65, "column": 52 }, "identifierName": "i" }, "name": "i" } }, "body": { "type": "BlockStatement", "start": 2261, "end": 2304, "loc": { "start": { "line": 65, "column": 56 }, "end": { "line": 67, "column": 5 } }, "body": [ { "type": "ExpressionStatement", "start": 2269, "end": 2298, "loc": { "start": { "line": 66, "column": 6 }, "end": { "line": 66, "column": 35 } }, "expression": { "type": "CallExpression", "start": 2269, "end": 2298, "loc": { "start": { "line": 66, "column": 6 }, "end": { "line": 66, "column": 35 } }, "callee": { "type": "MemberExpression", "start": 2269, "end": 2280, "loc": { "start": { "line": 66, "column": 6 }, "end": { "line": 66, "column": 17 } }, "object": { "type": "ThisExpression", "start": 2269, "end": 2273, "loc": { "start": { "line": 66, "column": 6 }, "end": { "line": 66, "column": 10 } } }, "property": { "type": "Identifier", "start": 2274, "end": 2280, "loc": { "start": { "line": 66, "column": 11 }, "end": { "line": 66, "column": 17 }, "identifierName": "delete" }, "name": "delete" }, "computed": false }, "arguments": [ { "type": "MemberExpression", "start": 2281, "end": 2297, "loc": { "start": { "line": 66, "column": 18 }, "end": { "line": 66, "column": 34 } }, "object": { "type": "Identifier", "start": 2281, "end": 2294, "loc": { "start": { "line": 66, "column": 18 }, "end": { "line": 66, "column": 31 }, "identifierName": "deleteNodeIds" }, "name": "deleteNodeIds" }, "property": { "type": "Identifier", "start": 2295, "end": 2296, "loc": { "start": { "line": 66, "column": 32 }, "end": { "line": 66, "column": 33 }, "identifierName": "i" }, "name": "i" }, "computed": true } ] } } ], "directives": [] } }, { "type": "VariableDeclaration", "start": 2309, "end": 2349, "loc": { "start": { "line": 68, "column": 4 }, "end": { "line": 68, "column": 44 } }, "declarations": [ { "type": "VariableDeclarator", "start": 2313, "end": 2349, "loc": { "start": { "line": 68, "column": 8 }, "end": { "line": 68, "column": 44 } }, "id": { "type": "Identifier", "start": 2313, "end": 2320, "loc": { "start": { "line": 68, "column": 8 }, "end": { "line": 68, "column": 15 }, "identifierName": "newMark" }, "name": "newMark" }, "init": { "type": "NewExpression", "start": 2323, "end": 2349, "loc": { "start": { "line": 68, "column": 18 }, "end": { "line": 68, "column": 44 } }, "callee": { "type": "Identifier", "start": 2327, "end": 2333, "loc": { "start": { "line": 68, "column": 22 }, "end": { "line": 68, "column": 28 }, "identifierName": "DSNode" }, "name": "DSNode" }, "arguments": [ { "type": "Identifier", "start": 2334, "end": 2336, "loc": { "start": { "line": 68, "column": 29 }, "end": { "line": 68, "column": 31 }, "identifierName": "id" }, "name": "id" }, { "type": "Identifier", "start": 2338, "end": 2344, "loc": { "start": { "line": 68, "column": 33 }, "end": { "line": 68, "column": 39 }, "identifierName": "length" }, "name": "length" }, { "type": "Identifier", "start": 2346, "end": 2348, "loc": { "start": { "line": 68, "column": 41 }, "end": { "line": 68, "column": 43 }, "identifierName": "gc" }, "name": "gc" } ], "trailingComments": null }, "trailingComments": null } ], "kind": "let", "trailingComments": [ { "type": "CommentLine", "value": " Step 2. Check if we can extend left or right", "start": 2354, "end": 2401, "loc": { "start": { "line": 69, "column": 4 }, "end": { "line": 69, "column": 51 } } } ] }, { "type": "IfStatement", "start": 2406, "end": 2602, "loc": { "start": { "line": 70, "column": 4 }, "end": { "line": 74, "column": 5 } }, "test": { "type": "LogicalExpression", "start": 2410, "end": 2517, "loc": { "start": { "line": 70, "column": 8 }, "end": { "line": 70, "column": 115 } }, "left": { "type": "LogicalExpression", "start": 2410, "end": 2498, "loc": { "start": { "line": 70, "column": 8 }, "end": { "line": 70, "column": 96 } }, "left": { "type": "LogicalExpression", "start": 2410, "end": 2454, "loc": { "start": { "line": 70, "column": 8 }, "end": { "line": 70, "column": 52 } }, "left": { "type": "BinaryExpression", "start": 2410, "end": 2424, "loc": { "start": { "line": 70, "column": 8 }, "end": { "line": 70, "column": 22 } }, "left": { "type": "Identifier", "start": 2410, "end": 2415, "loc": { "start": { "line": 70, "column": 8 }, "end": { "line": 70, "column": 13 }, "identifierName": "leftD" }, "name": "leftD", "leadingComments": null }, "operator": "!==", "right": { "type": "NullLiteral", "start": 2420, "end": 2424, "loc": { "start": { "line": 70, "column": 18 }, "end": { "line": 70, "column": 22 } } }, "leadingComments": null }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 2428, "end": 2454, "loc": { "start": { "line": 70, "column": 26 }, "end": { "line": 70, "column": 52 } }, "left": { "type": "MemberExpression", "start": 2428, "end": 2442, "loc": { "start": { "line": 70, "column": 26 }, "end": { "line": 70, "column": 40 } }, "object": { "type": "MemberExpression", "start": 2428, "end": 2437, "loc": { "start": { "line": 70, "column": 26 }, "end": { "line": 70, "column": 35 } }, "object": { "type": "Identifier", "start": 2428, "end": 2433, "loc": { "start": { "line": 70, "column": 26 }, "end": { "line": 70, "column": 31 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 2434, "end": 2437, "loc": { "start": { "line": 70, "column": 32 }, "end": { "line": 70, "column": 35 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 2438, "end": 2442, "loc": { "start": { "line": 70, "column": 36 }, "end": { "line": 70, "column": 40 }, "identifierName": "user" }, "name": "user" }, "computed": false }, "operator": "===", "right": { "type": "MemberExpression", "start": 2447, "end": 2454, "loc": { "start": { "line": 70, "column": 45 }, "end": { "line": 70, "column": 52 } }, "object": { "type": "Identifier", "start": 2447, "end": 2449, "loc": { "start": { "line": 70, "column": 45 }, "end": { "line": 70, "column": 47 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 2450, "end": 2454, "loc": { "start": { "line": 70, "column": 48 }, "end": { "line": 70, "column": 52 }, "identifierName": "user" }, "name": "user" }, "computed": false } }, "leadingComments": null }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 2458, "end": 2498, "loc": { "start": { "line": 70, "column": 56 }, "end": { "line": 70, "column": 96 } }, "left": { "type": "BinaryExpression", "start": 2458, "end": 2485, "loc": { "start": { "line": 70, "column": 56 }, "end": { "line": 70, "column": 83 } }, "left": { "type": "MemberExpression", "start": 2458, "end": 2473, "loc": { "start": { "line": 70, "column": 56 }, "end": { "line": 70, "column": 71 } }, "object": { "type": "MemberExpression", "start": 2458, "end": 2467, "loc": { "start": { "line": 70, "column": 56 }, "end": { "line": 70, "column": 65 } }, "object": { "type": "Identifier", "start": 2458, "end": 2463, "loc": { "start": { "line": 70, "column": 56 }, "end": { "line": 70, "column": 61 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 2464, "end": 2467, "loc": { "start": { "line": 70, "column": 62 }, "end": { "line": 70, "column": 65 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 2468, "end": 2473, "loc": { "start": { "line": 70, "column": 66 }, "end": { "line": 70, "column": 71 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "MemberExpression", "start": 2476, "end": 2485, "loc": { "start": { "line": 70, "column": 74 }, "end": { "line": 70, "column": 83 } }, "object": { "type": "Identifier", "start": 2476, "end": 2481, "loc": { "start": { "line": 70, "column": 74 }, "end": { "line": 70, "column": 79 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 2482, "end": 2485, "loc": { "start": { "line": 70, "column": 80 }, "end": { "line": 70, "column": 83 }, "identifierName": "len" }, "name": "len" }, "computed": false } }, "operator": "===", "right": { "type": "MemberExpression", "start": 2490, "end": 2498, "loc": { "start": { "line": 70, "column": 88 }, "end": { "line": 70, "column": 96 } }, "object": { "type": "Identifier", "start": 2490, "end": 2492, "loc": { "start": { "line": 70, "column": 88 }, "end": { "line": 70, "column": 90 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 2493, "end": 2498, "loc": { "start": { "line": 70, "column": 91 }, "end": { "line": 70, "column": 96 }, "identifierName": "clock" }, "name": "clock" }, "computed": false } }, "leadingComments": null }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 2502, "end": 2517, "loc": { "start": { "line": 70, "column": 100 }, "end": { "line": 70, "column": 115 } }, "left": { "type": "MemberExpression", "start": 2502, "end": 2510, "loc": { "start": { "line": 70, "column": 100 }, "end": { "line": 70, "column": 108 } }, "object": { "type": "Identifier", "start": 2502, "end": 2507, "loc": { "start": { "line": 70, "column": 100 }, "end": { "line": 70, "column": 105 }, "identifierName": "leftD" }, "name": "leftD" }, "property": { "type": "Identifier", "start": 2508, "end": 2510, "loc": { "start": { "line": 70, "column": 106 }, "end": { "line": 70, "column": 108 }, "identifierName": "gc" }, "name": "gc" }, "computed": false }, "operator": "===", "right": { "type": "Identifier", "start": 2515, "end": 2517, "loc": { "start": { "line": 70, "column": 113 }, "end": { "line": 70, "column": 115 }, "identifierName": "gc" }, "name": "gc" } }, "leadingComments": null }, "consequent": { "type": "BlockStatement", "start": 2519, "end": 2602, "loc": { "start": { "line": 70, "column": 117 }, "end": { "line": 74, "column": 5 } }, "body": [ { "type": "ExpressionStatement", "start": 2555, "end": 2574, "loc": { "start": { "line": 72, "column": 6 }, "end": { "line": 72, "column": 25 } }, "expression": { "type": "AssignmentExpression", "start": 2555, "end": 2574, "loc": { "start": { "line": 72, "column": 6 }, "end": { "line": 72, "column": 25 } }, "operator": "+=", "left": { "type": "MemberExpression", "start": 2555, "end": 2564, "loc": { "start": { "line": 72, "column": 6 }, "end": { "line": 72, "column": 15 } }, "object": { "type": "Identifier", "start": 2555, "end": 2560, "loc": { "start": { "line": 72, "column": 6 }, "end": { "line": 72, "column": 11 }, "identifierName": "leftD" }, "name": "leftD", "leadingComments": null }, "property": { "type": "Identifier", "start": 2561, "end": 2564, "loc": { "start": { "line": 72, "column": 12 }, "end": { "line": 72, "column": 15 }, "identifierName": "len" }, "name": "len" }, "computed": false, "leadingComments": null }, "right": { "type": "Identifier", "start": 2568, "end": 2574, "loc": { "start": { "line": 72, "column": 19 }, "end": { "line": 72, "column": 25 }, "identifierName": "length" }, "name": "length" }, "leadingComments": null }, "leadingComments": [ { "type": "CommentLine", "value": " We can extend left", "start": 2527, "end": 2548, "loc": { "start": { "line": 71, "column": 6 }, "end": { "line": 71, "column": 27 } } } ] }, { "type": "ExpressionStatement", "start": 2581, "end": 2596, "loc": { "start": { "line": 73, "column": 6 }, "end": { "line": 73, "column": 21 } }, "expression": { "type": "AssignmentExpression", "start": 2581, "end": 2596, "loc": { "start": { "line": 73, "column": 6 }, "end": { "line": 73, "column": 21 } }, "operator": "=", "left": { "type": "Identifier", "start": 2581, "end": 2588, "loc": { "start": { "line": 73, "column": 6 }, "end": { "line": 73, "column": 13 }, "identifierName": "newMark" }, "name": "newMark" }, "right": { "type": "Identifier", "start": 2591, "end": 2596, "loc": { "start": { "line": 73, "column": 16 }, "end": { "line": 73, "column": 21 }, "identifierName": "leftD" }, "name": "leftD" } } } ], "directives": [] }, "alternate": null, "leadingComments": [ { "type": "CommentLine", "value": " Step 2. Check if we can extend left or right", "start": 2354, "end": 2401, "loc": { "start": { "line": 69, "column": 4 }, "end": { "line": 69, "column": 51 } } } ] }, { "type": "VariableDeclaration", "start": 2607, "end": 2670, "loc": { "start": { "line": 75, "column": 4 }, "end": { "line": 75, "column": 67 } }, "declarations": [ { "type": "VariableDeclarator", "start": 2613, "end": 2670, "loc": { "start": { "line": 75, "column": 10 }, "end": { "line": 75, "column": 67 } }, "id": { "type": "Identifier", "start": 2613, "end": 2622, "loc": { "start": { "line": 75, "column": 10 }, "end": { "line": 75, "column": 19 }, "identifierName": "rightNext" }, "name": "rightNext" }, "init": { "type": "CallExpression", "start": 2625, "end": 2670, "loc": { "start": { "line": 75, "column": 22 }, "end": { "line": 75, "column": 67 } }, "callee": { "type": "MemberExpression", "start": 2625, "end": 2634, "loc": { "start": { "line": 75, "column": 22 }, "end": { "line": 75, "column": 31 } }, "object": { "type": "ThisExpression", "start": 2625, "end": 2629, "loc": { "start": { "line": 75, "column": 22 }, "end": { "line": 75, "column": 26 } } }, "property": { "type": "Identifier", "start": 2630, "end": 2634, "loc": { "start": { "line": 75, "column": 27 }, "end": { "line": 75, "column": 31 }, "identifierName": "find" }, "name": "find" }, "computed": false }, "arguments": [ { "type": "NewExpression", "start": 2635, "end": 2669, "loc": { "start": { "line": 75, "column": 32 }, "end": { "line": 75, "column": 66 } }, "callee": { "type": "Identifier", "start": 2639, "end": 2641, "loc": { "start": { "line": 75, "column": 36 }, "end": { "line": 75, "column": 38 }, "identifierName": "ID" }, "name": "ID" }, "arguments": [ { "type": "MemberExpression", "start": 2642, "end": 2649, "loc": { "start": { "line": 75, "column": 39 }, "end": { "line": 75, "column": 46 } }, "object": { "type": "Identifier", "start": 2642, "end": 2644, "loc": { "start": { "line": 75, "column": 39 }, "end": { "line": 75, "column": 41 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 2645, "end": 2649, "loc": { "start": { "line": 75, "column": 42 }, "end": { "line": 75, "column": 46 }, "identifierName": "user" }, "name": "user" }, "computed": false }, { "type": "BinaryExpression", "start": 2651, "end": 2668, "loc": { "start": { "line": 75, "column": 48 }, "end": { "line": 75, "column": 65 } }, "left": { "type": "MemberExpression", "start": 2651, "end": 2659, "loc": { "start": { "line": 75, "column": 48 }, "end": { "line": 75, "column": 56 } }, "object": { "type": "Identifier", "start": 2651, "end": 2653, "loc": { "start": { "line": 75, "column": 48 }, "end": { "line": 75, "column": 50 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 2654, "end": 2659, "loc": { "start": { "line": 75, "column": 51 }, "end": { "line": 75, "column": 56 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "Identifier", "start": 2662, "end": 2668, "loc": { "start": { "line": 75, "column": 59 }, "end": { "line": 75, "column": 65 }, "identifierName": "length" }, "name": "length" } } ] } ] } } ], "kind": "const" }, { "type": "IfStatement", "start": 2675, "end": 2920, "loc": { "start": { "line": 76, "column": 4 }, "end": { "line": 80, "column": 5 } }, "test": { "type": "LogicalExpression", "start": 2679, "end": 2799, "loc": { "start": { "line": 76, "column": 8 }, "end": { "line": 76, "column": 128 } }, "left": { "type": "LogicalExpression", "start": 2679, "end": 2776, "loc": { "start": { "line": 76, "column": 8 }, "end": { "line": 76, "column": 105 } }, "left": { "type": "LogicalExpression", "start": 2679, "end": 2731, "loc": { "start": { "line": 76, "column": 8 }, "end": { "line": 76, "column": 60 } }, "left": { "type": "BinaryExpression", "start": 2679, "end": 2697, "loc": { "start": { "line": 76, "column": 8 }, "end": { "line": 76, "column": 26 } }, "left": { "type": "Identifier", "start": 2679, "end": 2688, "loc": { "start": { "line": 76, "column": 8 }, "end": { "line": 76, "column": 17 }, "identifierName": "rightNext" }, "name": "rightNext" }, "operator": "!==", "right": { "type": "NullLiteral", "start": 2693, "end": 2697, "loc": { "start": { "line": 76, "column": 22 }, "end": { "line": 76, "column": 26 } } } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 2701, "end": 2731, "loc": { "start": { "line": 76, "column": 30 }, "end": { "line": 76, "column": 60 } }, "left": { "type": "MemberExpression", "start": 2701, "end": 2719, "loc": { "start": { "line": 76, "column": 30 }, "end": { "line": 76, "column": 48 } }, "object": { "type": "MemberExpression", "start": 2701, "end": 2714, "loc": { "start": { "line": 76, "column": 30 }, "end": { "line": 76, "column": 43 } }, "object": { "type": "Identifier", "start": 2701, "end": 2710, "loc": { "start": { "line": 76, "column": 30 }, "end": { "line": 76, "column": 39 }, "identifierName": "rightNext" }, "name": "rightNext" }, "property": { "type": "Identifier", "start": 2711, "end": 2714, "loc": { "start": { "line": 76, "column": 40 }, "end": { "line": 76, "column": 43 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 2715, "end": 2719, "loc": { "start": { "line": 76, "column": 44 }, "end": { "line": 76, "column": 48 }, "identifierName": "user" }, "name": "user" }, "computed": false }, "operator": "===", "right": { "type": "MemberExpression", "start": 2724, "end": 2731, "loc": { "start": { "line": 76, "column": 53 }, "end": { "line": 76, "column": 60 } }, "object": { "type": "Identifier", "start": 2724, "end": 2726, "loc": { "start": { "line": 76, "column": 53 }, "end": { "line": 76, "column": 55 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 2727, "end": 2731, "loc": { "start": { "line": 76, "column": 56 }, "end": { "line": 76, "column": 60 }, "identifierName": "user" }, "name": "user" }, "computed": false } } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 2735, "end": 2776, "loc": { "start": { "line": 76, "column": 64 }, "end": { "line": 76, "column": 105 } }, "left": { "type": "BinaryExpression", "start": 2735, "end": 2752, "loc": { "start": { "line": 76, "column": 64 }, "end": { "line": 76, "column": 81 } }, "left": { "type": "MemberExpression", "start": 2735, "end": 2743, "loc": { "start": { "line": 76, "column": 64 }, "end": { "line": 76, "column": 72 } }, "object": { "type": "Identifier", "start": 2735, "end": 2737, "loc": { "start": { "line": 76, "column": 64 }, "end": { "line": 76, "column": 66 }, "identifierName": "id" }, "name": "id" }, "property": { "type": "Identifier", "start": 2738, "end": 2743, "loc": { "start": { "line": 76, "column": 67 }, "end": { "line": 76, "column": 72 }, "identifierName": "clock" }, "name": "clock" }, "computed": false }, "operator": "+", "right": { "type": "Identifier", "start": 2746, "end": 2752, "loc": { "start": { "line": 76, "column": 75 }, "end": { "line": 76, "column": 81 }, "identifierName": "length" }, "name": "length" } }, "operator": "===", "right": { "type": "MemberExpression", "start": 2757, "end": 2776, "loc": { "start": { "line": 76, "column": 86 }, "end": { "line": 76, "column": 105 } }, "object": { "type": "MemberExpression", "start": 2757, "end": 2770, "loc": { "start": { "line": 76, "column": 86 }, "end": { "line": 76, "column": 99 } }, "object": { "type": "Identifier", "start": 2757, "end": 2766, "loc": { "start": { "line": 76, "column": 86 }, "end": { "line": 76, "column": 95 }, "identifierName": "rightNext" }, "name": "rightNext" }, "property": { "type": "Identifier", "start": 2767, "end": 2770, "loc": { "start": { "line": 76, "column": 96 }, "end": { "line": 76, "column": 99 }, "identifierName": "_id" }, "name": "_id" }, "computed": false }, "property": { "type": "Identifier", "start": 2771, "end": 2776, "loc": { "start": { "line": 76, "column": 100 }, "end": { "line": 76, "column": 105 }, "identifierName": "clock" }, "name": "clock" }, "computed": false } } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 2780, "end": 2799, "loc": { "start": { "line": 76, "column": 109 }, "end": { "line": 76, "column": 128 } }, "left": { "type": "Identifier", "start": 2780, "end": 2782, "loc": { "start": { "line": 76, "column": 109 }, "end": { "line": 76, "column": 111 }, "identifierName": "gc" }, "name": "gc" }, "operator": "===", "right": { "type": "MemberExpression", "start": 2787, "end": 2799, "loc": { "start": { "line": 76, "column": 116 }, "end": { "line": 76, "column": 128 } }, "object": { "type": "Identifier", "start": 2787, "end": 2796, "loc": { "start": { "line": 76, "column": 116 }, "end": { "line": 76, "column": 125 }, "identifierName": "rightNext" }, "name": "rightNext" }, "property": { "type": "Identifier", "start": 2797, "end": 2799, "loc": { "start": { "line": 76, "column": 126 }, "end": { "line": 76, "column": 128 }, "identifierName": "gc" }, "name": "gc" }, "computed": false } } }, "consequent": { "type": "BlockStatement", "start": 2801, "end": 2920, "loc": { "start": { "line": 76, "column": 130 }, "end": { "line": 80, "column": 5 } }, "body": [ { "type": "ExpressionStatement", "start": 2853, "end": 2881, "loc": { "start": { "line": 78, "column": 6 }, "end": { "line": 78, "column": 34 } }, "expression": { "type": "AssignmentExpression", "start": 2853, "end": 2881, "loc": { "start": { "line": 78, "column": 6 }, "end": { "line": 78, "column": 34 } }, "operator": "+=", "left": { "type": "MemberExpression", "start": 2853, "end": 2864, "loc": { "start": { "line": 78, "column": 6 }, "end": { "line": 78, "column": 17 } }, "object": { "type": "Identifier", "start": 2853, "end": 2860, "loc": { "start": { "line": 78, "column": 6 }, "end": { "line": 78, "column": 13 }, "identifierName": "newMark" }, "name": "newMark", "leadingComments": null }, "property": { "type": "Identifier", "start": 2861, "end": 2864, "loc": { "start": { "line": 78, "column": 14 }, "end": { "line": 78, "column": 17 }, "identifierName": "len" }, "name": "len" }, "computed": false, "leadingComments": null }, "right": { "type": "MemberExpression", "start": 2868, "end": 2881, "loc": { "start": { "line": 78, "column": 21 }, "end": { "line": 78, "column": 34 } }, "object": { "type": "Identifier", "start": 2868, "end": 2877, "loc": { "start": { "line": 78, "column": 21 }, "end": { "line": 78, "column": 30 }, "identifierName": "rightNext" }, "name": "rightNext" }, "property": { "type": "Identifier", "start": 2878, "end": 2881, "loc": { "start": { "line": 78, "column": 31 }, "end": { "line": 78, "column": 34 }, "identifierName": "len" }, "name": "len" }, "computed": false }, "leadingComments": null }, "leadingComments": [ { "type": "CommentLine", "value": " We can merge newMark and rightNext", "start": 2809, "end": 2846, "loc": { "start": { "line": 77, "column": 6 }, "end": { "line": 77, "column": 43 } } } ] }, { "type": "ExpressionStatement", "start": 2888, "end": 2914, "loc": { "start": { "line": 79, "column": 6 }, "end": { "line": 79, "column": 32 } }, "expression": { "type": "CallExpression", "start": 2888, "end": 2914, "loc": { "start": { "line": 79, "column": 6 }, "end": { "line": 79, "column": 32 } }, "callee": { "type": "MemberExpression", "start": 2888, "end": 2899, "loc": { "start": { "line": 79, "column": 6 }, "end": { "line": 79, "column": 17 } }, "object": { "type": "ThisExpression", "start": 2888, "end": 2892, "loc": { "start": { "line": 79, "column": 6 }, "end": { "line": 79, "column": 10 } } }, "property": { "type": "Identifier", "start": 2893, "end": 2899, "loc": { "start": { "line": 79, "column": 11 }, "end": { "line": 79, "column": 17 }, "identifierName": "delete" }, "name": "delete" }, "computed": false }, "arguments": [ { "type": "MemberExpression", "start": 2900, "end": 2913, "loc": { "start": { "line": 79, "column": 18 }, "end": { "line": 79, "column": 31 } }, "object": { "type": "Identifier", "start": 2900, "end": 2909, "loc": { "start": { "line": 79, "column": 18 }, "end": { "line": 79, "column": 27 }, "identifierName": "rightNext" }, "name": "rightNext" }, "property": { "type": "Identifier", "start": 2910, "end": 2913, "loc": { "start": { "line": 79, "column": 28 }, "end": { "line": 79, "column": 31 }, "identifierName": "_id" }, "name": "_id" }, "computed": false } ] } } ], "directives": [] }, "alternate": null }, { "type": "IfStatement", "start": 2925, "end": 3022, "loc": { "start": { "line": 81, "column": 4 }, "end": { "line": 84, "column": 5 } }, "test": { "type": "BinaryExpression", "start": 2929, "end": 2946, "loc": { "start": { "line": 81, "column": 8 }, "end": { "line": 81, "column": 25 } }, "left": { "type": "Identifier", "start": 2929, "end": 2934, "loc": { "start": { "line": 81, "column": 8 }, "end": { "line": 81, "column": 13 }, "identifierName": "leftD" }, "name": "leftD" }, "operator": "!==", "right": { "type": "Identifier", "start": 2939, "end": 2946, "loc": { "start": { "line": 81, "column": 18 }, "end": { "line": 81, "column": 25 }, "identifierName": "newMark" }, "name": "newMark" } }, "consequent": { "type": "BlockStatement", "start": 2948, "end": 3022, "loc": { "start": { "line": 81, "column": 27 }, "end": { "line": 84, "column": 5 } }, "body": [ { "type": "ExpressionStatement", "start": 2999, "end": 3016, "loc": { "start": { "line": 83, "column": 6 }, "end": { "line": 83, "column": 23 } }, "expression": { "type": "CallExpression", "start": 2999, "end": 3016, "loc": { "start": { "line": 83, "column": 6 }, "end": { "line": 83, "column": 23 } }, "callee": { "type": "MemberExpression", "start": 2999, "end": 3007, "loc": { "start": { "line": 83, "column": 6 }, "end": { "line": 83, "column": 14 } }, "object": { "type": "ThisExpression", "start": 2999, "end": 3003, "loc": { "start": { "line": 83, "column": 6 }, "end": { "line": 83, "column": 10 } }, "leadingComments": null }, "property": { "type": "Identifier", "start": 3004, "end": 3007, "loc": { "start": { "line": 83, "column": 11 }, "end": { "line": 83, "column": 14 }, "identifierName": "put" }, "name": "put" }, "computed": false, "leadingComments": null }, "arguments": [ { "type": "Identifier", "start": 3008, "end": 3015, "loc": { "start": { "line": 83, "column": 15 }, "end": { "line": 83, "column": 22 }, "identifierName": "newMark" }, "name": "newMark" } ], "leadingComments": null }, "leadingComments": [ { "type": "CommentLine", "value": " only put if we didn't extend left", "start": 2956, "end": 2992, "loc": { "start": { "line": 82, "column": 6 }, "end": { "line": 82, "column": 42 } } } ] } ], "directives": [] }, "alternate": null } ], "directives": [], "trailingComments": null }, "trailingComments": [ { "type": "CommentLine", "value": " TODO: exchange markDeleted for mark()", "start": 3029, "end": 3069, "loc": { "start": { "line": 86, "column": 2 }, "end": { "line": 86, "column": 42 } } } ] }, { "type": "ClassMethod", "start": 3072, "end": 3135, "loc": { "start": { "line": 87, "column": 2 }, "end": { "line": 89, "column": 3 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 3072, "end": 3083, "loc": { "start": { "line": 87, "column": 2 }, "end": { "line": 87, "column": 13 }, "identifierName": "markDeleted" }, "name": "markDeleted", "leadingComments": null }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", "start": 3085, "end": 3087, "loc": { "start": { "line": 87, "column": 15 }, "end": { "line": 87, "column": 17 }, "identifierName": "id" }, "name": "id" }, { "type": "Identifier", "start": 3089, "end": 3095, "loc": { "start": { "line": 87, "column": 19 }, "end": { "line": 87, "column": 25 }, "identifierName": "length" }, "name": "length" } ], "body": { "type": "BlockStatement", "start": 3097, "end": 3135, "loc": { "start": { "line": 87, "column": 27 }, "end": { "line": 89, "column": 3 } }, "body": [ { "type": "ExpressionStatement", "start": 3103, "end": 3131, "loc": { "start": { "line": 88, "column": 4 }, "end": { "line": 88, "column": 32 } }, "expression": { "type": "CallExpression", "start": 3103, "end": 3131, "loc": { "start": { "line": 88, "column": 4 }, "end": { "line": 88, "column": 32 } }, "callee": { "type": "MemberExpression", "start": 3103, "end": 3112, "loc": { "start": { "line": 88, "column": 4 }, "end": { "line": 88, "column": 13 } }, "object": { "type": "ThisExpression", "start": 3103, "end": 3107, "loc": { "start": { "line": 88, "column": 4 }, "end": { "line": 88, "column": 8 } } }, "property": { "type": "Identifier", "start": 3108, "end": 3112, "loc": { "start": { "line": 88, "column": 9 }, "end": { "line": 88, "column": 13 }, "identifierName": "mark" }, "name": "mark" }, "computed": false }, "arguments": [ { "type": "Identifier", "start": 3113, "end": 3115, "loc": { "start": { "line": 88, "column": 14 }, "end": { "line": 88, "column": 16 }, "identifierName": "id" }, "name": "id" }, { "type": "Identifier", "start": 3117, "end": 3123, "loc": { "start": { "line": 88, "column": 18 }, "end": { "line": 88, "column": 24 }, "identifierName": "length" }, "name": "length" }, { "type": "BooleanLiteral", "start": 3125, "end": 3130, "loc": { "start": { "line": 88, "column": 26 }, "end": { "line": 88, "column": 31 } }, "value": false } ] } } ], "directives": [] }, "leadingComments": [ { "type": "CommentLine", "value": " TODO: exchange markDeleted for mark()", "start": 3029, "end": 3069, "loc": { "start": { "line": 86, "column": 2 }, "end": { "line": 86, "column": 42 } } } ] } ] }, "leadingComments": [], "trailingComments": [] } } ], "directives": [] }, "comments": [ { "type": "CommentLine", "value": " Step 1. Unmark range", "start": 739, "end": 762, "loc": { "start": { "line": 35, "column": 4 }, "end": { "line": 35, "column": 27 } } }, { "type": "CommentLine", "value": " Resize left DSNode if necessary", "start": 840, "end": 874, "loc": { "start": { "line": 37, "column": 4 }, "end": { "line": 37, "column": 38 } } }, { "type": "CommentLine", "value": " node is overlapping. need to resize", "start": 1021, "end": 1059, "loc": { "start": { "line": 40, "column": 8 }, "end": { "line": 40, "column": 46 } } }, { "type": "CommentLine", "value": " overlaps new mark range and some more", "start": 1133, "end": 1173, "loc": { "start": { "line": 42, "column": 10 }, "end": { "line": 42, "column": 50 } } }, { "type": "CommentLine", "value": " create another DSNode to the right of new mark", "start": 1184, "end": 1233, "loc": { "start": { "line": 43, "column": 10 }, "end": { "line": 43, "column": 59 } } }, { "type": "CommentLine", "value": " resize left DSNode", "start": 1378, "end": 1399, "loc": { "start": { "line": 46, "column": 8 }, "end": { "line": 46, "column": 29 } } }, { "type": "CommentLine", "value": " Otherwise there is no overlapping", "start": 1455, "end": 1491, "loc": { "start": { "line": 48, "column": 8 }, "end": { "line": 48, "column": 44 } } }, { "type": "CommentLine", "value": " Resize right DSNode if necessary", "start": 1502, "end": 1537, "loc": { "start": { "line": 50, "column": 4 }, "end": { "line": 50, "column": 39 } } }, { "type": "CommentLine", "value": " we only consider the case where we resize the node", "start": 1838, "end": 1891, "loc": { "start": { "line": 54, "column": 135 }, "end": { "line": 54, "column": 188 } } }, { "type": "CommentLine", "value": " Now we only have to delete all inner marks", "start": 2056, "end": 2101, "loc": { "start": { "line": 60, "column": 4 }, "end": { "line": 60, "column": 49 } } }, { "type": "CommentLine", "value": " Step 2. Check if we can extend left or right", "start": 2354, "end": 2401, "loc": { "start": { "line": 69, "column": 4 }, "end": { "line": 69, "column": 51 } } }, { "type": "CommentLine", "value": " We can extend left", "start": 2527, "end": 2548, "loc": { "start": { "line": 71, "column": 6 }, "end": { "line": 71, "column": 27 } } }, { "type": "CommentLine", "value": " We can merge newMark and rightNext", "start": 2809, "end": 2846, "loc": { "start": { "line": 77, "column": 6 }, "end": { "line": 77, "column": 43 } } }, { "type": "CommentLine", "value": " only put if we didn't extend left", "start": 2956, "end": 2992, "loc": { "start": { "line": 82, "column": 6 }, "end": { "line": 82, "column": 42 } } }, { "type": "CommentLine", "value": " TODO: exchange markDeleted for mark()", "start": 3029, "end": 3069, "loc": { "start": { "line": 86, "column": 2 }, "end": { "line": 86, "column": 42 } } } ], "tokens": [ { "type": { "label": "import", "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "import", "start": 1, "end": 7, "loc": { "start": { "line": 2, "column": 0 }, "end": { "line": 2, "column": 6 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "Tree", "start": 8, "end": 12, "loc": { "start": { "line": 2, "column": 7 }, "end": { "line": 2, "column": 11 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "from", "start": 13, "end": 17, "loc": { "start": { "line": 2, "column": 12 }, "end": { "line": 2, "column": 16 } } }, { "type": { "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "../Util/Tree.js", "start": 18, "end": 35, "loc": { "start": { "line": 2, "column": 17 }, "end": { "line": 2, "column": 34 } } }, { "type": { "label": "import", "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "import", "start": 36, "end": 42, "loc": { "start": { "line": 3, "column": 0 }, "end": { "line": 3, "column": 6 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "ID", "start": 43, "end": 45, "loc": { "start": { "line": 3, "column": 7 }, "end": { "line": 3, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "from", "start": 46, "end": 50, "loc": { "start": { "line": 3, "column": 10 }, "end": { "line": 3, "column": 14 } } }, { "type": { "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "../Util/ID/ID.js", "start": 51, "end": 69, "loc": { "start": { "line": 3, "column": 15 }, "end": { "line": 3, "column": 33 } } }, { "type": { "label": "class", "keyword": "class", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "class", "start": 71, "end": 76, "loc": { "start": { "line": 5, "column": 0 }, "end": { "line": 5, "column": 5 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "DSNode", "start": 77, "end": 83, "loc": { "start": { "line": 5, "column": 6 }, "end": { "line": 5, "column": 12 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 84, "end": 85, "loc": { "start": { "line": 5, "column": 13 }, "end": { "line": 5, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "constructor", "start": 88, "end": 99, "loc": { "start": { "line": 6, "column": 2 }, "end": { "line": 6, "column": 13 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 100, "end": 101, "loc": { "start": { "line": 6, "column": 14 }, "end": { "line": 6, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 101, "end": 103, "loc": { "start": { "line": 6, "column": 15 }, "end": { "line": 6, "column": 17 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 103, "end": 104, "loc": { "start": { "line": 6, "column": 17 }, "end": { "line": 6, "column": 18 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 105, "end": 108, "loc": { "start": { "line": 6, "column": 19 }, "end": { "line": 6, "column": 22 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 108, "end": 109, "loc": { "start": { "line": 6, "column": 22 }, "end": { "line": 6, "column": 23 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 110, "end": 112, "loc": { "start": { "line": 6, "column": 24 }, "end": { "line": 6, "column": 26 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 112, "end": 113, "loc": { "start": { "line": 6, "column": 26 }, "end": { "line": 6, "column": 27 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 114, "end": 115, "loc": { "start": { "line": 6, "column": 28 }, "end": { "line": 6, "column": 29 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 120, "end": 124, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 8 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 124, "end": 125, "loc": { "start": { "line": 7, "column": 8 }, "end": { "line": 7, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 125, "end": 128, "loc": { "start": { "line": 7, "column": 9 }, "end": { "line": 7, "column": 12 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 129, "end": 130, "loc": { "start": { "line": 7, "column": 13 }, "end": { "line": 7, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 131, "end": 133, "loc": { "start": { "line": 7, "column": 15 }, "end": { "line": 7, "column": 17 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 138, "end": 142, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 8 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 142, "end": 143, "loc": { "start": { "line": 8, "column": 8 }, "end": { "line": 8, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 143, "end": 146, "loc": { "start": { "line": 8, "column": 9 }, "end": { "line": 8, "column": 12 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 147, "end": 148, "loc": { "start": { "line": 8, "column": 13 }, "end": { "line": 8, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 149, "end": 152, "loc": { "start": { "line": 8, "column": 15 }, "end": { "line": 8, "column": 18 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 157, "end": 161, "loc": { "start": { "line": 9, "column": 4 }, "end": { "line": 9, "column": 8 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 161, "end": 162, "loc": { "start": { "line": 9, "column": 8 }, "end": { "line": 9, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 162, "end": 164, "loc": { "start": { "line": 9, "column": 9 }, "end": { "line": 9, "column": 11 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 165, "end": 166, "loc": { "start": { "line": 9, "column": 12 }, "end": { "line": 9, "column": 13 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 167, "end": 169, "loc": { "start": { "line": 9, "column": 14 }, "end": { "line": 9, "column": 16 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 172, "end": 173, "loc": { "start": { "line": 10, "column": 2 }, "end": { "line": 10, "column": 3 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clone", "start": 176, "end": 181, "loc": { "start": { "line": 11, "column": 2 }, "end": { "line": 11, "column": 7 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 182, "end": 183, "loc": { "start": { "line": 11, "column": 8 }, "end": { "line": 11, "column": 9 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 183, "end": 184, "loc": { "start": { "line": 11, "column": 9 }, "end": { "line": 11, "column": 10 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 185, "end": 186, "loc": { "start": { "line": 11, "column": 11 }, "end": { "line": 11, "column": 12 } } }, { "type": { "label": "return", "keyword": "return", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "return", "start": 191, "end": 197, "loc": { "start": { "line": 12, "column": 4 }, "end": { "line": 12, "column": 10 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 198, "end": 201, "loc": { "start": { "line": 12, "column": 11 }, "end": { "line": 12, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "DSNode", "start": 202, "end": 208, "loc": { "start": { "line": 12, "column": 15 }, "end": { "line": 12, "column": 21 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 208, "end": 209, "loc": { "start": { "line": 12, "column": 21 }, "end": { "line": 12, "column": 22 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 209, "end": 213, "loc": { "start": { "line": 12, "column": 22 }, "end": { "line": 12, "column": 26 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 213, "end": 214, "loc": { "start": { "line": 12, "column": 26 }, "end": { "line": 12, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 214, "end": 217, "loc": { "start": { "line": 12, "column": 27 }, "end": { "line": 12, "column": 30 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 217, "end": 218, "loc": { "start": { "line": 12, "column": 30 }, "end": { "line": 12, "column": 31 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 219, "end": 223, "loc": { "start": { "line": 12, "column": 32 }, "end": { "line": 12, "column": 36 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 223, "end": 224, "loc": { "start": { "line": 12, "column": 36 }, "end": { "line": 12, "column": 37 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 224, "end": 227, "loc": { "start": { "line": 12, "column": 37 }, "end": { "line": 12, "column": 40 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 227, "end": 228, "loc": { "start": { "line": 12, "column": 40 }, "end": { "line": 12, "column": 41 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 229, "end": 233, "loc": { "start": { "line": 12, "column": 42 }, "end": { "line": 12, "column": 46 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 233, "end": 234, "loc": { "start": { "line": 12, "column": 46 }, "end": { "line": 12, "column": 47 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 234, "end": 236, "loc": { "start": { "line": 12, "column": 47 }, "end": { "line": 12, "column": 49 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 236, "end": 237, "loc": { "start": { "line": 12, "column": 49 }, "end": { "line": 12, "column": 50 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 240, "end": 241, "loc": { "start": { "line": 13, "column": 2 }, "end": { "line": 13, "column": 3 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 242, "end": 243, "loc": { "start": { "line": 14, "column": 0 }, "end": { "line": 14, "column": 1 } } }, { "type": { "label": "export", "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "export", "start": 245, "end": 251, "loc": { "start": { "line": 16, "column": 0 }, "end": { "line": 16, "column": 6 } } }, { "type": { "label": "default", "keyword": "default", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "default", "start": 252, "end": 259, "loc": { "start": { "line": 16, "column": 7 }, "end": { "line": 16, "column": 14 } } }, { "type": { "label": "class", "keyword": "class", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "class", "start": 260, "end": 265, "loc": { "start": { "line": 16, "column": 15 }, "end": { "line": 16, "column": 20 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "DeleteStore", "start": 266, "end": 277, "loc": { "start": { "line": 16, "column": 21 }, "end": { "line": 16, "column": 32 } } }, { "type": { "label": "extends", "keyword": "extends", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "extends", "start": 278, "end": 285, "loc": { "start": { "line": 16, "column": 33 }, "end": { "line": 16, "column": 40 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "Tree", "start": 286, "end": 290, "loc": { "start": { "line": 16, "column": 41 }, "end": { "line": 16, "column": 45 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 291, "end": 292, "loc": { "start": { "line": 16, "column": 46 }, "end": { "line": 16, "column": 47 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "logTable", "start": 295, "end": 303, "loc": { "start": { "line": 17, "column": 2 }, "end": { "line": 17, "column": 10 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 304, "end": 305, "loc": { "start": { "line": 17, "column": 11 }, "end": { "line": 17, "column": 12 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 305, "end": 306, "loc": { "start": { "line": 17, "column": 12 }, "end": { "line": 17, "column": 13 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 307, "end": 308, "loc": { "start": { "line": 17, "column": 14 }, "end": { "line": 17, "column": 15 } } }, { "type": { "label": "const", "keyword": "const", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "const", "start": 313, "end": 318, "loc": { "start": { "line": 18, "column": 4 }, "end": { "line": 18, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "deletes", "start": 319, "end": 326, "loc": { "start": { "line": 18, "column": 10 }, "end": { "line": 18, "column": 17 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 327, "end": 328, "loc": { "start": { "line": 18, "column": 18 }, "end": { "line": 18, "column": 19 } } }, { "type": { "label": "[", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 329, "end": 330, "loc": { "start": { "line": 18, "column": 20 }, "end": { "line": 18, "column": 21 } } }, { "type": { "label": "]", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 330, "end": 331, "loc": { "start": { "line": 18, "column": 21 }, "end": { "line": 18, "column": 22 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 336, "end": 340, "loc": { "start": { "line": 19, "column": 4 }, "end": { "line": 19, "column": 8 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 340, "end": 341, "loc": { "start": { "line": 19, "column": 8 }, "end": { "line": 19, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "iterate", "start": 341, "end": 348, "loc": { "start": { "line": 19, "column": 9 }, "end": { "line": 19, "column": 16 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 348, "end": 349, "loc": { "start": { "line": 19, "column": 16 }, "end": { "line": 19, "column": 17 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 349, "end": 353, "loc": { "start": { "line": 19, "column": 17 }, "end": { "line": 19, "column": 21 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 353, "end": 354, "loc": { "start": { "line": 19, "column": 21 }, "end": { "line": 19, "column": 22 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 355, "end": 359, "loc": { "start": { "line": 19, "column": 23 }, "end": { "line": 19, "column": 27 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 359, "end": 360, "loc": { "start": { "line": 19, "column": 27 }, "end": { "line": 19, "column": 28 } } }, { "type": { "label": "function", "keyword": "function", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "function", "start": 361, "end": 369, "loc": { "start": { "line": 19, "column": 29 }, "end": { "line": 19, "column": 37 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 370, "end": 371, "loc": { "start": { "line": 19, "column": 38 }, "end": { "line": 19, "column": 39 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 371, "end": 372, "loc": { "start": { "line": 19, "column": 39 }, "end": { "line": 19, "column": 40 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 372, "end": 373, "loc": { "start": { "line": 19, "column": 40 }, "end": { "line": 19, "column": 41 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 374, "end": 375, "loc": { "start": { "line": 19, "column": 42 }, "end": { "line": 19, "column": 43 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "deletes", "start": 382, "end": 389, "loc": { "start": { "line": 20, "column": 6 }, "end": { "line": 20, "column": 13 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 389, "end": 390, "loc": { "start": { "line": 20, "column": 13 }, "end": { "line": 20, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "push", "start": 390, "end": 394, "loc": { "start": { "line": 20, "column": 14 }, "end": { "line": 20, "column": 18 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 394, "end": 395, "loc": { "start": { "line": 20, "column": 18 }, "end": { "line": 20, "column": 19 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 395, "end": 396, "loc": { "start": { "line": 20, "column": 19 }, "end": { "line": 20, "column": 20 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 405, "end": 409, "loc": { "start": { "line": 21, "column": 8 }, "end": { "line": 21, "column": 12 } } }, { "type": { "label": ":", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 409, "end": 410, "loc": { "start": { "line": 21, "column": 12 }, "end": { "line": 21, "column": 13 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 411, "end": 412, "loc": { "start": { "line": 21, "column": 14 }, "end": { "line": 21, "column": 15 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 412, "end": 413, "loc": { "start": { "line": 21, "column": 15 }, "end": { "line": 21, "column": 16 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 413, "end": 416, "loc": { "start": { "line": 21, "column": 16 }, "end": { "line": 21, "column": 19 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 416, "end": 417, "loc": { "start": { "line": 21, "column": 19 }, "end": { "line": 21, "column": 20 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 417, "end": 421, "loc": { "start": { "line": 21, "column": 20 }, "end": { "line": 21, "column": 24 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 421, "end": 422, "loc": { "start": { "line": 21, "column": 24 }, "end": { "line": 21, "column": 25 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 431, "end": 436, "loc": { "start": { "line": 22, "column": 8 }, "end": { "line": 22, "column": 13 } } }, { "type": { "label": ":", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 436, "end": 437, "loc": { "start": { "line": 22, "column": 13 }, "end": { "line": 22, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 438, "end": 439, "loc": { "start": { "line": 22, "column": 15 }, "end": { "line": 22, "column": 16 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 439, "end": 440, "loc": { "start": { "line": 22, "column": 16 }, "end": { "line": 22, "column": 17 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 440, "end": 443, "loc": { "start": { "line": 22, "column": 17 }, "end": { "line": 22, "column": 20 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 443, "end": 444, "loc": { "start": { "line": 22, "column": 20 }, "end": { "line": 22, "column": 21 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 444, "end": 449, "loc": { "start": { "line": 22, "column": 21 }, "end": { "line": 22, "column": 26 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 449, "end": 450, "loc": { "start": { "line": 22, "column": 26 }, "end": { "line": 22, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 459, "end": 462, "loc": { "start": { "line": 23, "column": 8 }, "end": { "line": 23, "column": 11 } } }, { "type": { "label": ":", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 462, "end": 463, "loc": { "start": { "line": 23, "column": 11 }, "end": { "line": 23, "column": 12 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 464, "end": 465, "loc": { "start": { "line": 23, "column": 13 }, "end": { "line": 23, "column": 14 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 465, "end": 466, "loc": { "start": { "line": 23, "column": 14 }, "end": { "line": 23, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 466, "end": 469, "loc": { "start": { "line": 23, "column": 15 }, "end": { "line": 23, "column": 18 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 469, "end": 470, "loc": { "start": { "line": 23, "column": 18 }, "end": { "line": 23, "column": 19 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 479, "end": 481, "loc": { "start": { "line": 24, "column": 8 }, "end": { "line": 24, "column": 10 } } }, { "type": { "label": ":", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 481, "end": 482, "loc": { "start": { "line": 24, "column": 10 }, "end": { "line": 24, "column": 11 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 483, "end": 484, "loc": { "start": { "line": 24, "column": 12 }, "end": { "line": 24, "column": 13 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 484, "end": 485, "loc": { "start": { "line": 24, "column": 13 }, "end": { "line": 24, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 485, "end": 487, "loc": { "start": { "line": 24, "column": 14 }, "end": { "line": 24, "column": 16 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 494, "end": 495, "loc": { "start": { "line": 25, "column": 6 }, "end": { "line": 25, "column": 7 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 495, "end": 496, "loc": { "start": { "line": 25, "column": 7 }, "end": { "line": 25, "column": 8 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 501, "end": 502, "loc": { "start": { "line": 26, "column": 4 }, "end": { "line": 26, "column": 5 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 502, "end": 503, "loc": { "start": { "line": 26, "column": 5 }, "end": { "line": 26, "column": 6 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "console", "start": 508, "end": 515, "loc": { "start": { "line": 27, "column": 4 }, "end": { "line": 27, "column": 11 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 515, "end": 516, "loc": { "start": { "line": 27, "column": 11 }, "end": { "line": 27, "column": 12 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "table", "start": 516, "end": 521, "loc": { "start": { "line": 27, "column": 12 }, "end": { "line": 27, "column": 17 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 521, "end": 522, "loc": { "start": { "line": 27, "column": 17 }, "end": { "line": 27, "column": 18 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "deletes", "start": 522, "end": 529, "loc": { "start": { "line": 27, "column": 18 }, "end": { "line": 27, "column": 25 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 529, "end": 530, "loc": { "start": { "line": 27, "column": 25 }, "end": { "line": 27, "column": 26 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 533, "end": 534, "loc": { "start": { "line": 28, "column": 2 }, "end": { "line": 28, "column": 3 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "isDeleted", "start": 537, "end": 546, "loc": { "start": { "line": 29, "column": 2 }, "end": { "line": 29, "column": 11 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 547, "end": 548, "loc": { "start": { "line": 29, "column": 12 }, "end": { "line": 29, "column": 13 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 548, "end": 550, "loc": { "start": { "line": 29, "column": 13 }, "end": { "line": 29, "column": 15 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 550, "end": 551, "loc": { "start": { "line": 29, "column": 15 }, "end": { "line": 29, "column": 16 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 552, "end": 553, "loc": { "start": { "line": 29, "column": 17 }, "end": { "line": 29, "column": 18 } } }, { "type": { "label": "var", "keyword": "var", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "var", "start": 558, "end": 561, "loc": { "start": { "line": 30, "column": 4 }, "end": { "line": 30, "column": 7 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 562, "end": 563, "loc": { "start": { "line": 30, "column": 8 }, "end": { "line": 30, "column": 9 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 564, "end": 565, "loc": { "start": { "line": 30, "column": 10 }, "end": { "line": 30, "column": 11 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 566, "end": 570, "loc": { "start": { "line": 30, "column": 12 }, "end": { "line": 30, "column": 16 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 570, "end": 571, "loc": { "start": { "line": 30, "column": 16 }, "end": { "line": 30, "column": 17 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "findWithUpperBound", "start": 571, "end": 589, "loc": { "start": { "line": 30, "column": 17 }, "end": { "line": 30, "column": 35 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 589, "end": 590, "loc": { "start": { "line": 30, "column": 35 }, "end": { "line": 30, "column": 36 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 590, "end": 592, "loc": { "start": { "line": 30, "column": 36 }, "end": { "line": 30, "column": 38 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 592, "end": 593, "loc": { "start": { "line": 30, "column": 38 }, "end": { "line": 30, "column": 39 } } }, { "type": { "label": "return", "keyword": "return", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "return", "start": 598, "end": 604, "loc": { "start": { "line": 31, "column": 4 }, "end": { "line": 31, "column": 10 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 605, "end": 606, "loc": { "start": { "line": 31, "column": 11 }, "end": { "line": 31, "column": 12 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!==", "start": 607, "end": 610, "loc": { "start": { "line": 31, "column": 13 }, "end": { "line": 31, "column": 16 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 611, "end": 615, "loc": { "start": { "line": 31, "column": 17 }, "end": { "line": 31, "column": 21 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 616, "end": 618, "loc": { "start": { "line": 31, "column": 22 }, "end": { "line": 31, "column": 24 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 619, "end": 620, "loc": { "start": { "line": 31, "column": 25 }, "end": { "line": 31, "column": 26 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 620, "end": 621, "loc": { "start": { "line": 31, "column": 26 }, "end": { "line": 31, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 621, "end": 624, "loc": { "start": { "line": 31, "column": 27 }, "end": { "line": 31, "column": 30 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 624, "end": 625, "loc": { "start": { "line": 31, "column": 30 }, "end": { "line": 31, "column": 31 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 625, "end": 629, "loc": { "start": { "line": 31, "column": 31 }, "end": { "line": 31, "column": 35 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 630, "end": 633, "loc": { "start": { "line": 31, "column": 36 }, "end": { "line": 31, "column": 39 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 634, "end": 636, "loc": { "start": { "line": 31, "column": 40 }, "end": { "line": 31, "column": 42 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 636, "end": 637, "loc": { "start": { "line": 31, "column": 42 }, "end": { "line": 31, "column": 43 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 637, "end": 641, "loc": { "start": { "line": 31, "column": 43 }, "end": { "line": 31, "column": 47 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 642, "end": 644, "loc": { "start": { "line": 31, "column": 48 }, "end": { "line": 31, "column": 50 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 645, "end": 647, "loc": { "start": { "line": 31, "column": 51 }, "end": { "line": 31, "column": 53 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 647, "end": 648, "loc": { "start": { "line": 31, "column": 53 }, "end": { "line": 31, "column": 54 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 648, "end": 653, "loc": { "start": { "line": 31, "column": 54 }, "end": { "line": 31, "column": 59 } } }, { "type": { "label": "", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 7, "updateContext": null }, "value": "<", "start": 654, "end": 655, "loc": { "start": { "line": 31, "column": 60 }, "end": { "line": 31, "column": 61 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 656, "end": 657, "loc": { "start": { "line": 31, "column": 62 }, "end": { "line": 31, "column": 63 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 657, "end": 658, "loc": { "start": { "line": 31, "column": 63 }, "end": { "line": 31, "column": 64 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 658, "end": 661, "loc": { "start": { "line": 31, "column": 64 }, "end": { "line": 31, "column": 67 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 661, "end": 662, "loc": { "start": { "line": 31, "column": 67 }, "end": { "line": 31, "column": 68 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 662, "end": 667, "loc": { "start": { "line": 31, "column": 68 }, "end": { "line": 31, "column": 73 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 668, "end": 669, "loc": { "start": { "line": 31, "column": 74 }, "end": { "line": 31, "column": 75 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "n", "start": 670, "end": 671, "loc": { "start": { "line": 31, "column": 76 }, "end": { "line": 31, "column": 77 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 671, "end": 672, "loc": { "start": { "line": 31, "column": 77 }, "end": { "line": 31, "column": 78 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 672, "end": 675, "loc": { "start": { "line": 31, "column": 78 }, "end": { "line": 31, "column": 81 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 678, "end": 679, "loc": { "start": { "line": 32, "column": 2 }, "end": { "line": 32, "column": 3 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "mark", "start": 682, "end": 686, "loc": { "start": { "line": 33, "column": 2 }, "end": { "line": 33, "column": 6 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 687, "end": 688, "loc": { "start": { "line": 33, "column": 7 }, "end": { "line": 33, "column": 8 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 688, "end": 690, "loc": { "start": { "line": 33, "column": 8 }, "end": { "line": 33, "column": 10 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 690, "end": 691, "loc": { "start": { "line": 33, "column": 10 }, "end": { "line": 33, "column": 11 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 692, "end": 698, "loc": { "start": { "line": 33, "column": 12 }, "end": { "line": 33, "column": 18 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 698, "end": 699, "loc": { "start": { "line": 33, "column": 18 }, "end": { "line": 33, "column": 19 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 700, "end": 702, "loc": { "start": { "line": 33, "column": 20 }, "end": { "line": 33, "column": 22 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 702, "end": 703, "loc": { "start": { "line": 33, "column": 22 }, "end": { "line": 33, "column": 23 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 704, "end": 705, "loc": { "start": { "line": 33, "column": 24 }, "end": { "line": 33, "column": 25 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 710, "end": 712, "loc": { "start": { "line": 34, "column": 4 }, "end": { "line": 34, "column": 6 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 713, "end": 714, "loc": { "start": { "line": 34, "column": 7 }, "end": { "line": 34, "column": 8 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 714, "end": 720, "loc": { "start": { "line": 34, "column": 8 }, "end": { "line": 34, "column": 14 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 721, "end": 724, "loc": { "start": { "line": 34, "column": 15 }, "end": { "line": 34, "column": 18 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 0, "start": 725, "end": 726, "loc": { "start": { "line": 34, "column": 19 }, "end": { "line": 34, "column": 20 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 726, "end": 727, "loc": { "start": { "line": 34, "column": 20 }, "end": { "line": 34, "column": 21 } } }, { "type": { "label": "return", "keyword": "return", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "return", "start": 728, "end": 734, "loc": { "start": { "line": 34, "column": 22 }, "end": { "line": 34, "column": 28 } } }, { "type": "CommentLine", "value": " Step 1. Unmark range", "start": 739, "end": 762, "loc": { "start": { "line": 35, "column": 4 }, "end": { "line": 35, "column": 27 } } }, { "type": { "label": "const", "keyword": "const", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "const", "start": 767, "end": 772, "loc": { "start": { "line": 36, "column": 4 }, "end": { "line": 36, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 773, "end": 778, "loc": { "start": { "line": 36, "column": 10 }, "end": { "line": 36, "column": 15 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 779, "end": 780, "loc": { "start": { "line": 36, "column": 16 }, "end": { "line": 36, "column": 17 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 781, "end": 785, "loc": { "start": { "line": 36, "column": 18 }, "end": { "line": 36, "column": 22 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 785, "end": 786, "loc": { "start": { "line": 36, "column": 22 }, "end": { "line": 36, "column": 23 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "findWithUpperBound", "start": 786, "end": 804, "loc": { "start": { "line": 36, "column": 23 }, "end": { "line": 36, "column": 41 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 804, "end": 805, "loc": { "start": { "line": 36, "column": 41 }, "end": { "line": 36, "column": 42 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 805, "end": 808, "loc": { "start": { "line": 36, "column": 42 }, "end": { "line": 36, "column": 45 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "ID", "start": 809, "end": 811, "loc": { "start": { "line": 36, "column": 46 }, "end": { "line": 36, "column": 48 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 811, "end": 812, "loc": { "start": { "line": 36, "column": 48 }, "end": { "line": 36, "column": 49 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 812, "end": 814, "loc": { "start": { "line": 36, "column": 49 }, "end": { "line": 36, "column": 51 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 814, "end": 815, "loc": { "start": { "line": 36, "column": 51 }, "end": { "line": 36, "column": 52 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 815, "end": 819, "loc": { "start": { "line": 36, "column": 52 }, "end": { "line": 36, "column": 56 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 819, "end": 820, "loc": { "start": { "line": 36, "column": 56 }, "end": { "line": 36, "column": 57 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 821, "end": 823, "loc": { "start": { "line": 36, "column": 58 }, "end": { "line": 36, "column": 60 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 823, "end": 824, "loc": { "start": { "line": 36, "column": 60 }, "end": { "line": 36, "column": 61 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 824, "end": 829, "loc": { "start": { "line": 36, "column": 61 }, "end": { "line": 36, "column": 66 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "-", "start": 830, "end": 831, "loc": { "start": { "line": 36, "column": 67 }, "end": { "line": 36, "column": 68 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 1, "start": 832, "end": 833, "loc": { "start": { "line": 36, "column": 69 }, "end": { "line": 36, "column": 70 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 833, "end": 834, "loc": { "start": { "line": 36, "column": 70 }, "end": { "line": 36, "column": 71 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 834, "end": 835, "loc": { "start": { "line": 36, "column": 71 }, "end": { "line": 36, "column": 72 } } }, { "type": "CommentLine", "value": " Resize left DSNode if necessary", "start": 840, "end": 874, "loc": { "start": { "line": 37, "column": 4 }, "end": { "line": 37, "column": 38 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 879, "end": 881, "loc": { "start": { "line": 38, "column": 4 }, "end": { "line": 38, "column": 6 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 882, "end": 883, "loc": { "start": { "line": 38, "column": 7 }, "end": { "line": 38, "column": 8 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 883, "end": 888, "loc": { "start": { "line": 38, "column": 8 }, "end": { "line": 38, "column": 13 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!==", "start": 889, "end": 892, "loc": { "start": { "line": 38, "column": 14 }, "end": { "line": 38, "column": 17 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 893, "end": 897, "loc": { "start": { "line": 38, "column": 18 }, "end": { "line": 38, "column": 22 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 898, "end": 900, "loc": { "start": { "line": 38, "column": 23 }, "end": { "line": 38, "column": 25 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 901, "end": 906, "loc": { "start": { "line": 38, "column": 26 }, "end": { "line": 38, "column": 31 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 906, "end": 907, "loc": { "start": { "line": 38, "column": 31 }, "end": { "line": 38, "column": 32 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 907, "end": 910, "loc": { "start": { "line": 38, "column": 32 }, "end": { "line": 38, "column": 35 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 910, "end": 911, "loc": { "start": { "line": 38, "column": 35 }, "end": { "line": 38, "column": 36 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 911, "end": 915, "loc": { "start": { "line": 38, "column": 36 }, "end": { "line": 38, "column": 40 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 916, "end": 919, "loc": { "start": { "line": 38, "column": 41 }, "end": { "line": 38, "column": 44 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 920, "end": 922, "loc": { "start": { "line": 38, "column": 45 }, "end": { "line": 38, "column": 47 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 922, "end": 923, "loc": { "start": { "line": 38, "column": 47 }, "end": { "line": 38, "column": 48 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 923, "end": 927, "loc": { "start": { "line": 38, "column": 48 }, "end": { "line": 38, "column": 52 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 927, "end": 928, "loc": { "start": { "line": 38, "column": 52 }, "end": { "line": 38, "column": 53 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 929, "end": 930, "loc": { "start": { "line": 38, "column": 54 }, "end": { "line": 38, "column": 55 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 937, "end": 939, "loc": { "start": { "line": 39, "column": 6 }, "end": { "line": 39, "column": 8 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 940, "end": 941, "loc": { "start": { "line": 39, "column": 9 }, "end": { "line": 39, "column": 10 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 941, "end": 946, "loc": { "start": { "line": 39, "column": 10 }, "end": { "line": 39, "column": 15 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 946, "end": 947, "loc": { "start": { "line": 39, "column": 15 }, "end": { "line": 39, "column": 16 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 947, "end": 950, "loc": { "start": { "line": 39, "column": 16 }, "end": { "line": 39, "column": 19 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 950, "end": 951, "loc": { "start": { "line": 39, "column": 19 }, "end": { "line": 39, "column": 20 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 951, "end": 956, "loc": { "start": { "line": 39, "column": 20 }, "end": { "line": 39, "column": 25 } } }, { "type": { "label": "", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 7, "updateContext": null }, "value": "<", "start": 957, "end": 958, "loc": { "start": { "line": 39, "column": 26 }, "end": { "line": 39, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 959, "end": 961, "loc": { "start": { "line": 39, "column": 28 }, "end": { "line": 39, "column": 30 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 961, "end": 962, "loc": { "start": { "line": 39, "column": 30 }, "end": { "line": 39, "column": 31 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 962, "end": 967, "loc": { "start": { "line": 39, "column": 31 }, "end": { "line": 39, "column": 36 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 968, "end": 970, "loc": { "start": { "line": 39, "column": 37 }, "end": { "line": 39, "column": 39 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 971, "end": 973, "loc": { "start": { "line": 39, "column": 40 }, "end": { "line": 39, "column": 42 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 973, "end": 974, "loc": { "start": { "line": 39, "column": 42 }, "end": { "line": 39, "column": 43 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 974, "end": 979, "loc": { "start": { "line": 39, "column": 43 }, "end": { "line": 39, "column": 48 } } }, { "type": { "label": "", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 7, "updateContext": null }, "value": "<", "start": 980, "end": 981, "loc": { "start": { "line": 39, "column": 49 }, "end": { "line": 39, "column": 50 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 982, "end": 987, "loc": { "start": { "line": 39, "column": 51 }, "end": { "line": 39, "column": 56 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 987, "end": 988, "loc": { "start": { "line": 39, "column": 56 }, "end": { "line": 39, "column": 57 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 988, "end": 991, "loc": { "start": { "line": 39, "column": 57 }, "end": { "line": 39, "column": 60 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 991, "end": 992, "loc": { "start": { "line": 39, "column": 60 }, "end": { "line": 39, "column": 61 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 992, "end": 997, "loc": { "start": { "line": 39, "column": 61 }, "end": { "line": 39, "column": 66 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 998, "end": 999, "loc": { "start": { "line": 39, "column": 67 }, "end": { "line": 39, "column": 68 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 1000, "end": 1005, "loc": { "start": { "line": 39, "column": 69 }, "end": { "line": 39, "column": 74 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1005, "end": 1006, "loc": { "start": { "line": 39, "column": 74 }, "end": { "line": 39, "column": 75 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 1006, "end": 1009, "loc": { "start": { "line": 39, "column": 75 }, "end": { "line": 39, "column": 78 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1009, "end": 1010, "loc": { "start": { "line": 39, "column": 78 }, "end": { "line": 39, "column": 79 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1011, "end": 1012, "loc": { "start": { "line": 39, "column": 80 }, "end": { "line": 39, "column": 81 } } }, { "type": "CommentLine", "value": " node is overlapping. need to resize", "start": 1021, "end": 1059, "loc": { "start": { "line": 40, "column": 8 }, "end": { "line": 40, "column": 46 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 1068, "end": 1070, "loc": { "start": { "line": 41, "column": 8 }, "end": { "line": 41, "column": 10 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1071, "end": 1072, "loc": { "start": { "line": 41, "column": 11 }, "end": { "line": 41, "column": 12 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1072, "end": 1074, "loc": { "start": { "line": 41, "column": 12 }, "end": { "line": 41, "column": 14 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1074, "end": 1075, "loc": { "start": { "line": 41, "column": 14 }, "end": { "line": 41, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1075, "end": 1080, "loc": { "start": { "line": 41, "column": 15 }, "end": { "line": 41, "column": 20 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1081, "end": 1082, "loc": { "start": { "line": 41, "column": 21 }, "end": { "line": 41, "column": 22 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 1083, "end": 1089, "loc": { "start": { "line": 41, "column": 23 }, "end": { "line": 41, "column": 29 } } }, { "type": { "label": "", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 7, "updateContext": null }, "value": "<", "start": 1090, "end": 1091, "loc": { "start": { "line": 41, "column": 30 }, "end": { "line": 41, "column": 31 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 1092, "end": 1097, "loc": { "start": { "line": 41, "column": 32 }, "end": { "line": 41, "column": 37 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1097, "end": 1098, "loc": { "start": { "line": 41, "column": 37 }, "end": { "line": 41, "column": 38 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1098, "end": 1101, "loc": { "start": { "line": 41, "column": 38 }, "end": { "line": 41, "column": 41 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1101, "end": 1102, "loc": { "start": { "line": 41, "column": 41 }, "end": { "line": 41, "column": 42 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1102, "end": 1107, "loc": { "start": { "line": 41, "column": 42 }, "end": { "line": 41, "column": 47 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1108, "end": 1109, "loc": { "start": { "line": 41, "column": 48 }, "end": { "line": 41, "column": 49 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 1110, "end": 1115, "loc": { "start": { "line": 41, "column": 50 }, "end": { "line": 41, "column": 55 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1115, "end": 1116, "loc": { "start": { "line": 41, "column": 55 }, "end": { "line": 41, "column": 56 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 1116, "end": 1119, "loc": { "start": { "line": 41, "column": 56 }, "end": { "line": 41, "column": 59 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1119, "end": 1120, "loc": { "start": { "line": 41, "column": 59 }, "end": { "line": 41, "column": 60 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1121, "end": 1122, "loc": { "start": { "line": 41, "column": 61 }, "end": { "line": 41, "column": 62 } } }, { "type": "CommentLine", "value": " overlaps new mark range and some more", "start": 1133, "end": 1173, "loc": { "start": { "line": 42, "column": 10 }, "end": { "line": 42, "column": 50 } } }, { "type": "CommentLine", "value": " create another DSNode to the right of new mark", "start": 1184, "end": 1233, "loc": { "start": { "line": 43, "column": 10 }, "end": { "line": 43, "column": 59 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 1244, "end": 1248, "loc": { "start": { "line": 44, "column": 10 }, "end": { "line": 44, "column": 14 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1248, "end": 1249, "loc": { "start": { "line": 44, "column": 14 }, "end": { "line": 44, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "put", "start": 1249, "end": 1252, "loc": { "start": { "line": 44, "column": 15 }, "end": { "line": 44, "column": 18 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1252, "end": 1253, "loc": { "start": { "line": 44, "column": 18 }, "end": { "line": 44, "column": 19 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 1253, "end": 1256, "loc": { "start": { "line": 44, "column": 19 }, "end": { "line": 44, "column": 22 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "DSNode", "start": 1257, "end": 1263, "loc": { "start": { "line": 44, "column": 23 }, "end": { "line": 44, "column": 29 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1263, "end": 1264, "loc": { "start": { "line": 44, "column": 29 }, "end": { "line": 44, "column": 30 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 1264, "end": 1267, "loc": { "start": { "line": 44, "column": 30 }, "end": { "line": 44, "column": 33 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "ID", "start": 1268, "end": 1270, "loc": { "start": { "line": 44, "column": 34 }, "end": { "line": 44, "column": 36 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1270, "end": 1271, "loc": { "start": { "line": 44, "column": 36 }, "end": { "line": 44, "column": 37 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1271, "end": 1273, "loc": { "start": { "line": 44, "column": 37 }, "end": { "line": 44, "column": 39 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1273, "end": 1274, "loc": { "start": { "line": 44, "column": 39 }, "end": { "line": 44, "column": 40 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 1274, "end": 1278, "loc": { "start": { "line": 44, "column": 40 }, "end": { "line": 44, "column": 44 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1278, "end": 1279, "loc": { "start": { "line": 44, "column": 44 }, "end": { "line": 44, "column": 45 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1280, "end": 1282, "loc": { "start": { "line": 44, "column": 46 }, "end": { "line": 44, "column": 48 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1282, "end": 1283, "loc": { "start": { "line": 44, "column": 48 }, "end": { "line": 44, "column": 49 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1283, "end": 1288, "loc": { "start": { "line": 44, "column": 49 }, "end": { "line": 44, "column": 54 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1289, "end": 1290, "loc": { "start": { "line": 44, "column": 55 }, "end": { "line": 44, "column": 56 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 1291, "end": 1297, "loc": { "start": { "line": 44, "column": 57 }, "end": { "line": 44, "column": 63 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1297, "end": 1298, "loc": { "start": { "line": 44, "column": 63 }, "end": { "line": 44, "column": 64 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1298, "end": 1299, "loc": { "start": { "line": 44, "column": 64 }, "end": { "line": 44, "column": 65 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 1300, "end": 1305, "loc": { "start": { "line": 44, "column": 66 }, "end": { "line": 44, "column": 71 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1305, "end": 1306, "loc": { "start": { "line": 44, "column": 71 }, "end": { "line": 44, "column": 72 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1306, "end": 1309, "loc": { "start": { "line": 44, "column": 72 }, "end": { "line": 44, "column": 75 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1309, "end": 1310, "loc": { "start": { "line": 44, "column": 75 }, "end": { "line": 44, "column": 76 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1310, "end": 1315, "loc": { "start": { "line": 44, "column": 76 }, "end": { "line": 44, "column": 81 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1316, "end": 1317, "loc": { "start": { "line": 44, "column": 82 }, "end": { "line": 44, "column": 83 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 1318, "end": 1323, "loc": { "start": { "line": 44, "column": 84 }, "end": { "line": 44, "column": 89 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1323, "end": 1324, "loc": { "start": { "line": 44, "column": 89 }, "end": { "line": 44, "column": 90 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 1324, "end": 1327, "loc": { "start": { "line": 44, "column": 90 }, "end": { "line": 44, "column": 93 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "-", "start": 1328, "end": 1329, "loc": { "start": { "line": 44, "column": 94 }, "end": { "line": 44, "column": 95 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1330, "end": 1332, "loc": { "start": { "line": 44, "column": 96 }, "end": { "line": 44, "column": 98 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1332, "end": 1333, "loc": { "start": { "line": 44, "column": 98 }, "end": { "line": 44, "column": 99 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1333, "end": 1338, "loc": { "start": { "line": 44, "column": 99 }, "end": { "line": 44, "column": 104 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "-", "start": 1339, "end": 1340, "loc": { "start": { "line": 44, "column": 105 }, "end": { "line": 44, "column": 106 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 1341, "end": 1347, "loc": { "start": { "line": 44, "column": 107 }, "end": { "line": 44, "column": 113 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1347, "end": 1348, "loc": { "start": { "line": 44, "column": 113 }, "end": { "line": 44, "column": 114 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 1349, "end": 1354, "loc": { "start": { "line": 44, "column": 115 }, "end": { "line": 44, "column": 120 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1354, "end": 1355, "loc": { "start": { "line": 44, "column": 120 }, "end": { "line": 44, "column": 121 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 1355, "end": 1357, "loc": { "start": { "line": 44, "column": 121 }, "end": { "line": 44, "column": 123 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1357, "end": 1358, "loc": { "start": { "line": 44, "column": 123 }, "end": { "line": 44, "column": 124 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1358, "end": 1359, "loc": { "start": { "line": 44, "column": 124 }, "end": { "line": 44, "column": 125 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1368, "end": 1369, "loc": { "start": { "line": 45, "column": 8 }, "end": { "line": 45, "column": 9 } } }, { "type": "CommentLine", "value": " resize left DSNode", "start": 1378, "end": 1399, "loc": { "start": { "line": 46, "column": 8 }, "end": { "line": 46, "column": 29 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 1408, "end": 1413, "loc": { "start": { "line": 47, "column": 8 }, "end": { "line": 47, "column": 13 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1413, "end": 1414, "loc": { "start": { "line": 47, "column": 13 }, "end": { "line": 47, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 1414, "end": 1417, "loc": { "start": { "line": 47, "column": 14 }, "end": { "line": 47, "column": 17 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 1418, "end": 1419, "loc": { "start": { "line": 47, "column": 18 }, "end": { "line": 47, "column": 19 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1420, "end": 1422, "loc": { "start": { "line": 47, "column": 20 }, "end": { "line": 47, "column": 22 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1422, "end": 1423, "loc": { "start": { "line": 47, "column": 22 }, "end": { "line": 47, "column": 23 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1423, "end": 1428, "loc": { "start": { "line": 47, "column": 23 }, "end": { "line": 47, "column": 28 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "-", "start": 1429, "end": 1430, "loc": { "start": { "line": 47, "column": 29 }, "end": { "line": 47, "column": 30 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 1431, "end": 1436, "loc": { "start": { "line": 47, "column": 31 }, "end": { "line": 47, "column": 36 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1436, "end": 1437, "loc": { "start": { "line": 47, "column": 36 }, "end": { "line": 47, "column": 37 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1437, "end": 1440, "loc": { "start": { "line": 47, "column": 37 }, "end": { "line": 47, "column": 40 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1440, "end": 1441, "loc": { "start": { "line": 47, "column": 40 }, "end": { "line": 47, "column": 41 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1441, "end": 1446, "loc": { "start": { "line": 47, "column": 41 }, "end": { "line": 47, "column": 46 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1453, "end": 1454, "loc": { "start": { "line": 48, "column": 6 }, "end": { "line": 48, "column": 7 } } }, { "type": "CommentLine", "value": " Otherwise there is no overlapping", "start": 1455, "end": 1491, "loc": { "start": { "line": 48, "column": 8 }, "end": { "line": 48, "column": 44 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1496, "end": 1497, "loc": { "start": { "line": 49, "column": 4 }, "end": { "line": 49, "column": 5 } } }, { "type": "CommentLine", "value": " Resize right DSNode if necessary", "start": 1502, "end": 1537, "loc": { "start": { "line": 50, "column": 4 }, "end": { "line": 50, "column": 39 } } }, { "type": { "label": "const", "keyword": "const", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "const", "start": 1542, "end": 1547, "loc": { "start": { "line": 51, "column": 4 }, "end": { "line": 51, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "upper", "start": 1548, "end": 1553, "loc": { "start": { "line": 51, "column": 10 }, "end": { "line": 51, "column": 15 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 1554, "end": 1555, "loc": { "start": { "line": 51, "column": 16 }, "end": { "line": 51, "column": 17 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 1556, "end": 1559, "loc": { "start": { "line": 51, "column": 18 }, "end": { "line": 51, "column": 21 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "ID", "start": 1560, "end": 1562, "loc": { "start": { "line": 51, "column": 22 }, "end": { "line": 51, "column": 24 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1562, "end": 1563, "loc": { "start": { "line": 51, "column": 24 }, "end": { "line": 51, "column": 25 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1563, "end": 1565, "loc": { "start": { "line": 51, "column": 25 }, "end": { "line": 51, "column": 27 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1565, "end": 1566, "loc": { "start": { "line": 51, "column": 27 }, "end": { "line": 51, "column": 28 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 1566, "end": 1570, "loc": { "start": { "line": 51, "column": 28 }, "end": { "line": 51, "column": 32 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1570, "end": 1571, "loc": { "start": { "line": 51, "column": 32 }, "end": { "line": 51, "column": 33 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1572, "end": 1574, "loc": { "start": { "line": 51, "column": 34 }, "end": { "line": 51, "column": 36 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1574, "end": 1575, "loc": { "start": { "line": 51, "column": 36 }, "end": { "line": 51, "column": 37 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1575, "end": 1580, "loc": { "start": { "line": 51, "column": 37 }, "end": { "line": 51, "column": 42 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1581, "end": 1582, "loc": { "start": { "line": 51, "column": 43 }, "end": { "line": 51, "column": 44 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 1583, "end": 1589, "loc": { "start": { "line": 51, "column": 45 }, "end": { "line": 51, "column": 51 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "-", "start": 1590, "end": 1591, "loc": { "start": { "line": 51, "column": 52 }, "end": { "line": 51, "column": 53 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 1, "start": 1592, "end": 1593, "loc": { "start": { "line": 51, "column": 54 }, "end": { "line": 51, "column": 55 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1593, "end": 1594, "loc": { "start": { "line": 51, "column": 55 }, "end": { "line": 51, "column": 56 } } }, { "type": { "label": "const", "keyword": "const", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "const", "start": 1599, "end": 1604, "loc": { "start": { "line": 52, "column": 4 }, "end": { "line": 52, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1605, "end": 1611, "loc": { "start": { "line": 52, "column": 10 }, "end": { "line": 52, "column": 16 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 1612, "end": 1613, "loc": { "start": { "line": 52, "column": 17 }, "end": { "line": 52, "column": 18 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 1614, "end": 1618, "loc": { "start": { "line": 52, "column": 19 }, "end": { "line": 52, "column": 23 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1618, "end": 1619, "loc": { "start": { "line": 52, "column": 23 }, "end": { "line": 52, "column": 24 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "findWithUpperBound", "start": 1619, "end": 1637, "loc": { "start": { "line": 52, "column": 24 }, "end": { "line": 52, "column": 42 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1637, "end": 1638, "loc": { "start": { "line": 52, "column": 42 }, "end": { "line": 52, "column": 43 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "upper", "start": 1638, "end": 1643, "loc": { "start": { "line": 52, "column": 43 }, "end": { "line": 52, "column": 48 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1643, "end": 1644, "loc": { "start": { "line": 52, "column": 48 }, "end": { "line": 52, "column": 49 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 1649, "end": 1651, "loc": { "start": { "line": 53, "column": 4 }, "end": { "line": 53, "column": 6 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1652, "end": 1653, "loc": { "start": { "line": 53, "column": 7 }, "end": { "line": 53, "column": 8 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1653, "end": 1659, "loc": { "start": { "line": 53, "column": 8 }, "end": { "line": 53, "column": 14 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!==", "start": 1660, "end": 1663, "loc": { "start": { "line": 53, "column": 15 }, "end": { "line": 53, "column": 18 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 1664, "end": 1668, "loc": { "start": { "line": 53, "column": 19 }, "end": { "line": 53, "column": 23 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 1669, "end": 1671, "loc": { "start": { "line": 53, "column": 24 }, "end": { "line": 53, "column": 26 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1672, "end": 1678, "loc": { "start": { "line": 53, "column": 27 }, "end": { "line": 53, "column": 33 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1678, "end": 1679, "loc": { "start": { "line": 53, "column": 33 }, "end": { "line": 53, "column": 34 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1679, "end": 1682, "loc": { "start": { "line": 53, "column": 34 }, "end": { "line": 53, "column": 37 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1682, "end": 1683, "loc": { "start": { "line": 53, "column": 37 }, "end": { "line": 53, "column": 38 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 1683, "end": 1687, "loc": { "start": { "line": 53, "column": 38 }, "end": { "line": 53, "column": 42 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 1688, "end": 1691, "loc": { "start": { "line": 53, "column": 43 }, "end": { "line": 53, "column": 46 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1692, "end": 1694, "loc": { "start": { "line": 53, "column": 47 }, "end": { "line": 53, "column": 49 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1694, "end": 1695, "loc": { "start": { "line": 53, "column": 49 }, "end": { "line": 53, "column": 50 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 1695, "end": 1699, "loc": { "start": { "line": 53, "column": 50 }, "end": { "line": 53, "column": 54 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1699, "end": 1700, "loc": { "start": { "line": 53, "column": 54 }, "end": { "line": 53, "column": 55 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1701, "end": 1702, "loc": { "start": { "line": 53, "column": 56 }, "end": { "line": 53, "column": 57 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 1709, "end": 1711, "loc": { "start": { "line": 54, "column": 6 }, "end": { "line": 54, "column": 8 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1712, "end": 1713, "loc": { "start": { "line": 54, "column": 9 }, "end": { "line": 54, "column": 10 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1713, "end": 1719, "loc": { "start": { "line": 54, "column": 10 }, "end": { "line": 54, "column": 16 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1719, "end": 1720, "loc": { "start": { "line": 54, "column": 16 }, "end": { "line": 54, "column": 17 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1720, "end": 1723, "loc": { "start": { "line": 54, "column": 17 }, "end": { "line": 54, "column": 20 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1723, "end": 1724, "loc": { "start": { "line": 54, "column": 20 }, "end": { "line": 54, "column": 21 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1724, "end": 1729, "loc": { "start": { "line": 54, "column": 21 }, "end": { "line": 54, "column": 26 } } }, { "type": { "label": "", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 7, "updateContext": null }, "value": "<", "start": 1730, "end": 1731, "loc": { "start": { "line": 54, "column": 27 }, "end": { "line": 54, "column": 28 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1732, "end": 1734, "loc": { "start": { "line": 54, "column": 29 }, "end": { "line": 54, "column": 31 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1734, "end": 1735, "loc": { "start": { "line": 54, "column": 31 }, "end": { "line": 54, "column": 32 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1735, "end": 1740, "loc": { "start": { "line": 54, "column": 32 }, "end": { "line": 54, "column": 37 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1741, "end": 1742, "loc": { "start": { "line": 54, "column": 38 }, "end": { "line": 54, "column": 39 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 1743, "end": 1749, "loc": { "start": { "line": 54, "column": 40 }, "end": { "line": 54, "column": 46 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 1750, "end": 1752, "loc": { "start": { "line": 54, "column": 47 }, "end": { "line": 54, "column": 49 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1753, "end": 1755, "loc": { "start": { "line": 54, "column": 50 }, "end": { "line": 54, "column": 52 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1755, "end": 1756, "loc": { "start": { "line": 54, "column": 52 }, "end": { "line": 54, "column": 53 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1756, "end": 1761, "loc": { "start": { "line": 54, "column": 53 }, "end": { "line": 54, "column": 58 } } }, { "type": { "label": "", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 7, "updateContext": null }, "value": "<=", "start": 1762, "end": 1764, "loc": { "start": { "line": 54, "column": 59 }, "end": { "line": 54, "column": 61 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1765, "end": 1771, "loc": { "start": { "line": 54, "column": 62 }, "end": { "line": 54, "column": 68 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1771, "end": 1772, "loc": { "start": { "line": 54, "column": 68 }, "end": { "line": 54, "column": 69 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1772, "end": 1775, "loc": { "start": { "line": 54, "column": 69 }, "end": { "line": 54, "column": 72 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1775, "end": 1776, "loc": { "start": { "line": 54, "column": 72 }, "end": { "line": 54, "column": 73 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1776, "end": 1781, "loc": { "start": { "line": 54, "column": 73 }, "end": { "line": 54, "column": 78 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 1782, "end": 1784, "loc": { "start": { "line": 54, "column": 79 }, "end": { "line": 54, "column": 81 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1785, "end": 1787, "loc": { "start": { "line": 54, "column": 82 }, "end": { "line": 54, "column": 84 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1787, "end": 1788, "loc": { "start": { "line": 54, "column": 84 }, "end": { "line": 54, "column": 85 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1788, "end": 1793, "loc": { "start": { "line": 54, "column": 85 }, "end": { "line": 54, "column": 90 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1794, "end": 1795, "loc": { "start": { "line": 54, "column": 91 }, "end": { "line": 54, "column": 92 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 1796, "end": 1802, "loc": { "start": { "line": 54, "column": 93 }, "end": { "line": 54, "column": 99 } } }, { "type": { "label": "", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 7, "updateContext": null }, "value": "<", "start": 1803, "end": 1804, "loc": { "start": { "line": 54, "column": 100 }, "end": { "line": 54, "column": 101 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1805, "end": 1811, "loc": { "start": { "line": 54, "column": 102 }, "end": { "line": 54, "column": 108 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1811, "end": 1812, "loc": { "start": { "line": 54, "column": 108 }, "end": { "line": 54, "column": 109 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1812, "end": 1815, "loc": { "start": { "line": 54, "column": 109 }, "end": { "line": 54, "column": 112 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1815, "end": 1816, "loc": { "start": { "line": 54, "column": 112 }, "end": { "line": 54, "column": 113 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1816, "end": 1821, "loc": { "start": { "line": 54, "column": 113 }, "end": { "line": 54, "column": 118 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1822, "end": 1823, "loc": { "start": { "line": 54, "column": 119 }, "end": { "line": 54, "column": 120 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1824, "end": 1830, "loc": { "start": { "line": 54, "column": 121 }, "end": { "line": 54, "column": 127 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1830, "end": 1831, "loc": { "start": { "line": 54, "column": 127 }, "end": { "line": 54, "column": 128 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 1831, "end": 1834, "loc": { "start": { "line": 54, "column": 128 }, "end": { "line": 54, "column": 131 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1834, "end": 1835, "loc": { "start": { "line": 54, "column": 131 }, "end": { "line": 54, "column": 132 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1836, "end": 1837, "loc": { "start": { "line": 54, "column": 133 }, "end": { "line": 54, "column": 134 } } }, { "type": "CommentLine", "value": " we only consider the case where we resize the node", "start": 1838, "end": 1891, "loc": { "start": { "line": 54, "column": 135 }, "end": { "line": 54, "column": 188 } } }, { "type": { "label": "const", "keyword": "const", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "const", "start": 1900, "end": 1905, "loc": { "start": { "line": 55, "column": 8 }, "end": { "line": 55, "column": 13 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "d", "start": 1906, "end": 1907, "loc": { "start": { "line": 55, "column": 14 }, "end": { "line": 55, "column": 15 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 1908, "end": 1909, "loc": { "start": { "line": 55, "column": 16 }, "end": { "line": 55, "column": 17 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 1910, "end": 1912, "loc": { "start": { "line": 55, "column": 18 }, "end": { "line": 55, "column": 20 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1912, "end": 1913, "loc": { "start": { "line": 55, "column": 20 }, "end": { "line": 55, "column": 21 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1913, "end": 1918, "loc": { "start": { "line": 55, "column": 21 }, "end": { "line": 55, "column": 26 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 1919, "end": 1920, "loc": { "start": { "line": 55, "column": 27 }, "end": { "line": 55, "column": 28 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 1921, "end": 1927, "loc": { "start": { "line": 55, "column": 29 }, "end": { "line": 55, "column": 35 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "-", "start": 1928, "end": 1929, "loc": { "start": { "line": 55, "column": 36 }, "end": { "line": 55, "column": 37 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1930, "end": 1936, "loc": { "start": { "line": 55, "column": 38 }, "end": { "line": 55, "column": 44 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1936, "end": 1937, "loc": { "start": { "line": 55, "column": 44 }, "end": { "line": 55, "column": 45 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1937, "end": 1940, "loc": { "start": { "line": 55, "column": 45 }, "end": { "line": 55, "column": 48 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1940, "end": 1941, "loc": { "start": { "line": 55, "column": 48 }, "end": { "line": 55, "column": 49 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 1941, "end": 1946, "loc": { "start": { "line": 55, "column": 49 }, "end": { "line": 55, "column": 54 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1955, "end": 1961, "loc": { "start": { "line": 56, "column": 8 }, "end": { "line": 56, "column": 14 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1961, "end": 1962, "loc": { "start": { "line": 56, "column": 14 }, "end": { "line": 56, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1962, "end": 1965, "loc": { "start": { "line": 56, "column": 15 }, "end": { "line": 56, "column": 18 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 1966, "end": 1967, "loc": { "start": { "line": 56, "column": 19 }, "end": { "line": 56, "column": 20 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 1968, "end": 1971, "loc": { "start": { "line": 56, "column": 21 }, "end": { "line": 56, "column": 24 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "ID", "start": 1972, "end": 1974, "loc": { "start": { "line": 56, "column": 25 }, "end": { "line": 56, "column": 27 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 1974, "end": 1975, "loc": { "start": { "line": 56, "column": 27 }, "end": { "line": 56, "column": 28 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1975, "end": 1981, "loc": { "start": { "line": 56, "column": 28 }, "end": { "line": 56, "column": 34 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1981, "end": 1982, "loc": { "start": { "line": 56, "column": 34 }, "end": { "line": 56, "column": 35 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1982, "end": 1985, "loc": { "start": { "line": 56, "column": 35 }, "end": { "line": 56, "column": 38 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1985, "end": 1986, "loc": { "start": { "line": 56, "column": 38 }, "end": { "line": 56, "column": 39 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 1986, "end": 1990, "loc": { "start": { "line": 56, "column": 39 }, "end": { "line": 56, "column": 43 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1990, "end": 1991, "loc": { "start": { "line": 56, "column": 43 }, "end": { "line": 56, "column": 44 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 1992, "end": 1998, "loc": { "start": { "line": 56, "column": 45 }, "end": { "line": 56, "column": 51 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 1998, "end": 1999, "loc": { "start": { "line": 56, "column": 51 }, "end": { "line": 56, "column": 52 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 1999, "end": 2002, "loc": { "start": { "line": 56, "column": 52 }, "end": { "line": 56, "column": 55 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2002, "end": 2003, "loc": { "start": { "line": 56, "column": 55 }, "end": { "line": 56, "column": 56 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 2003, "end": 2008, "loc": { "start": { "line": 56, "column": 56 }, "end": { "line": 56, "column": 61 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 2009, "end": 2010, "loc": { "start": { "line": 56, "column": 62 }, "end": { "line": 56, "column": 63 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "d", "start": 2011, "end": 2012, "loc": { "start": { "line": 56, "column": 64 }, "end": { "line": 56, "column": 65 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2012, "end": 2013, "loc": { "start": { "line": 56, "column": 65 }, "end": { "line": 56, "column": 66 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightD", "start": 2022, "end": 2028, "loc": { "start": { "line": 57, "column": 8 }, "end": { "line": 57, "column": 14 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2028, "end": 2029, "loc": { "start": { "line": 57, "column": 14 }, "end": { "line": 57, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 2029, "end": 2032, "loc": { "start": { "line": 57, "column": 15 }, "end": { "line": 57, "column": 18 } } }, { "type": { "label": "_=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "-=", "start": 2033, "end": 2035, "loc": { "start": { "line": 57, "column": 19 }, "end": { "line": 57, "column": 21 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "d", "start": 2036, "end": 2037, "loc": { "start": { "line": 57, "column": 22 }, "end": { "line": 57, "column": 23 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2044, "end": 2045, "loc": { "start": { "line": 58, "column": 6 }, "end": { "line": 58, "column": 7 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2050, "end": 2051, "loc": { "start": { "line": 59, "column": 4 }, "end": { "line": 59, "column": 5 } } }, { "type": "CommentLine", "value": " Now we only have to delete all inner marks", "start": 2056, "end": 2101, "loc": { "start": { "line": 60, "column": 4 }, "end": { "line": 60, "column": 49 } } }, { "type": { "label": "const", "keyword": "const", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "const", "start": 2106, "end": 2111, "loc": { "start": { "line": 61, "column": 4 }, "end": { "line": 61, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "deleteNodeIds", "start": 2112, "end": 2125, "loc": { "start": { "line": 61, "column": 10 }, "end": { "line": 61, "column": 23 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 2126, "end": 2127, "loc": { "start": { "line": 61, "column": 24 }, "end": { "line": 61, "column": 25 } } }, { "type": { "label": "[", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2128, "end": 2129, "loc": { "start": { "line": 61, "column": 26 }, "end": { "line": 61, "column": 27 } } }, { "type": { "label": "]", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2129, "end": 2130, "loc": { "start": { "line": 61, "column": 27 }, "end": { "line": 61, "column": 28 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 2135, "end": 2139, "loc": { "start": { "line": 62, "column": 4 }, "end": { "line": 62, "column": 8 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2139, "end": 2140, "loc": { "start": { "line": 62, "column": 8 }, "end": { "line": 62, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "iterate", "start": 2140, "end": 2147, "loc": { "start": { "line": 62, "column": 9 }, "end": { "line": 62, "column": 16 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2147, "end": 2148, "loc": { "start": { "line": 62, "column": 16 }, "end": { "line": 62, "column": 17 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 2148, "end": 2150, "loc": { "start": { "line": 62, "column": 17 }, "end": { "line": 62, "column": 19 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2150, "end": 2151, "loc": { "start": { "line": 62, "column": 19 }, "end": { "line": 62, "column": 20 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "upper", "start": 2152, "end": 2157, "loc": { "start": { "line": 62, "column": 21 }, "end": { "line": 62, "column": 26 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2157, "end": 2158, "loc": { "start": { "line": 62, "column": 26 }, "end": { "line": 62, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "m", "start": 2159, "end": 2160, "loc": { "start": { "line": 62, "column": 28 }, "end": { "line": 62, "column": 29 } } }, { "type": { "label": "=>", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2161, "end": 2163, "loc": { "start": { "line": 62, "column": 30 }, "end": { "line": 62, "column": 32 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2164, "end": 2165, "loc": { "start": { "line": 62, "column": 33 }, "end": { "line": 62, "column": 34 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "deleteNodeIds", "start": 2172, "end": 2185, "loc": { "start": { "line": 63, "column": 6 }, "end": { "line": 63, "column": 19 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2185, "end": 2186, "loc": { "start": { "line": 63, "column": 19 }, "end": { "line": 63, "column": 20 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "push", "start": 2186, "end": 2190, "loc": { "start": { "line": 63, "column": 20 }, "end": { "line": 63, "column": 24 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2190, "end": 2191, "loc": { "start": { "line": 63, "column": 24 }, "end": { "line": 63, "column": 25 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "m", "start": 2191, "end": 2192, "loc": { "start": { "line": 63, "column": 25 }, "end": { "line": 63, "column": 26 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2192, "end": 2193, "loc": { "start": { "line": 63, "column": 26 }, "end": { "line": 63, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 2193, "end": 2196, "loc": { "start": { "line": 63, "column": 27 }, "end": { "line": 63, "column": 30 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2196, "end": 2197, "loc": { "start": { "line": 63, "column": 30 }, "end": { "line": 63, "column": 31 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2202, "end": 2203, "loc": { "start": { "line": 64, "column": 4 }, "end": { "line": 64, "column": 5 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2203, "end": 2204, "loc": { "start": { "line": 64, "column": 5 }, "end": { "line": 64, "column": 6 } } }, { "type": { "label": "for", "keyword": "for", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": true, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "for", "start": 2209, "end": 2212, "loc": { "start": { "line": 65, "column": 4 }, "end": { "line": 65, "column": 7 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2213, "end": 2214, "loc": { "start": { "line": 65, "column": 8 }, "end": { "line": 65, "column": 9 } } }, { "type": { "label": "let", "keyword": "let", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "let", "start": 2214, "end": 2217, "loc": { "start": { "line": 65, "column": 9 }, "end": { "line": 65, "column": 12 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "i", "start": 2218, "end": 2219, "loc": { "start": { "line": 65, "column": 13 }, "end": { "line": 65, "column": 14 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 2220, "end": 2221, "loc": { "start": { "line": 65, "column": 15 }, "end": { "line": 65, "column": 16 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "deleteNodeIds", "start": 2222, "end": 2235, "loc": { "start": { "line": 65, "column": 17 }, "end": { "line": 65, "column": 30 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2235, "end": 2236, "loc": { "start": { "line": 65, "column": 30 }, "end": { "line": 65, "column": 31 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 2236, "end": 2242, "loc": { "start": { "line": 65, "column": 31 }, "end": { "line": 65, "column": 37 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "-", "start": 2243, "end": 2244, "loc": { "start": { "line": 65, "column": 38 }, "end": { "line": 65, "column": 39 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 1, "start": 2245, "end": 2246, "loc": { "start": { "line": 65, "column": 40 }, "end": { "line": 65, "column": 41 } } }, { "type": { "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2246, "end": 2247, "loc": { "start": { "line": 65, "column": 41 }, "end": { "line": 65, "column": 42 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "i", "start": 2248, "end": 2249, "loc": { "start": { "line": 65, "column": 43 }, "end": { "line": 65, "column": 44 } } }, { "type": { "label": "", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 7, "updateContext": null }, "value": ">=", "start": 2250, "end": 2252, "loc": { "start": { "line": 65, "column": 45 }, "end": { "line": 65, "column": 47 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 0, "start": 2253, "end": 2254, "loc": { "start": { "line": 65, "column": 48 }, "end": { "line": 65, "column": 49 } } }, { "type": { "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2254, "end": 2255, "loc": { "start": { "line": 65, "column": 49 }, "end": { "line": 65, "column": 50 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "i", "start": 2256, "end": 2257, "loc": { "start": { "line": 65, "column": 51 }, "end": { "line": 65, "column": 52 } } }, { "type": { "label": "++/--", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": true, "binop": null }, "value": "--", "start": 2257, "end": 2259, "loc": { "start": { "line": 65, "column": 52 }, "end": { "line": 65, "column": 54 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2259, "end": 2260, "loc": { "start": { "line": 65, "column": 54 }, "end": { "line": 65, "column": 55 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2261, "end": 2262, "loc": { "start": { "line": 65, "column": 56 }, "end": { "line": 65, "column": 57 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 2269, "end": 2273, "loc": { "start": { "line": 66, "column": 6 }, "end": { "line": 66, "column": 10 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2273, "end": 2274, "loc": { "start": { "line": 66, "column": 10 }, "end": { "line": 66, "column": 11 } } }, { "type": { "label": "delete", "keyword": "delete", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": null, "updateContext": null }, "value": "delete", "start": 2274, "end": 2280, "loc": { "start": { "line": 66, "column": 11 }, "end": { "line": 66, "column": 17 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2280, "end": 2281, "loc": { "start": { "line": 66, "column": 17 }, "end": { "line": 66, "column": 18 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "deleteNodeIds", "start": 2281, "end": 2294, "loc": { "start": { "line": 66, "column": 18 }, "end": { "line": 66, "column": 31 } } }, { "type": { "label": "[", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2294, "end": 2295, "loc": { "start": { "line": 66, "column": 31 }, "end": { "line": 66, "column": 32 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "i", "start": 2295, "end": 2296, "loc": { "start": { "line": 66, "column": 32 }, "end": { "line": 66, "column": 33 } } }, { "type": { "label": "]", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2296, "end": 2297, "loc": { "start": { "line": 66, "column": 33 }, "end": { "line": 66, "column": 34 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2297, "end": 2298, "loc": { "start": { "line": 66, "column": 34 }, "end": { "line": 66, "column": 35 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2303, "end": 2304, "loc": { "start": { "line": 67, "column": 4 }, "end": { "line": 67, "column": 5 } } }, { "type": { "label": "let", "keyword": "let", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "let", "start": 2309, "end": 2312, "loc": { "start": { "line": 68, "column": 4 }, "end": { "line": 68, "column": 7 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "newMark", "start": 2313, "end": 2320, "loc": { "start": { "line": 68, "column": 8 }, "end": { "line": 68, "column": 15 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 2321, "end": 2322, "loc": { "start": { "line": 68, "column": 16 }, "end": { "line": 68, "column": 17 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 2323, "end": 2326, "loc": { "start": { "line": 68, "column": 18 }, "end": { "line": 68, "column": 21 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "DSNode", "start": 2327, "end": 2333, "loc": { "start": { "line": 68, "column": 22 }, "end": { "line": 68, "column": 28 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2333, "end": 2334, "loc": { "start": { "line": 68, "column": 28 }, "end": { "line": 68, "column": 29 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 2334, "end": 2336, "loc": { "start": { "line": 68, "column": 29 }, "end": { "line": 68, "column": 31 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2336, "end": 2337, "loc": { "start": { "line": 68, "column": 31 }, "end": { "line": 68, "column": 32 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 2338, "end": 2344, "loc": { "start": { "line": 68, "column": 33 }, "end": { "line": 68, "column": 39 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2344, "end": 2345, "loc": { "start": { "line": 68, "column": 39 }, "end": { "line": 68, "column": 40 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 2346, "end": 2348, "loc": { "start": { "line": 68, "column": 41 }, "end": { "line": 68, "column": 43 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2348, "end": 2349, "loc": { "start": { "line": 68, "column": 43 }, "end": { "line": 68, "column": 44 } } }, { "type": "CommentLine", "value": " Step 2. Check if we can extend left or right", "start": 2354, "end": 2401, "loc": { "start": { "line": 69, "column": 4 }, "end": { "line": 69, "column": 51 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 2406, "end": 2408, "loc": { "start": { "line": 70, "column": 4 }, "end": { "line": 70, "column": 6 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2409, "end": 2410, "loc": { "start": { "line": 70, "column": 7 }, "end": { "line": 70, "column": 8 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 2410, "end": 2415, "loc": { "start": { "line": 70, "column": 8 }, "end": { "line": 70, "column": 13 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!==", "start": 2416, "end": 2419, "loc": { "start": { "line": 70, "column": 14 }, "end": { "line": 70, "column": 17 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 2420, "end": 2424, "loc": { "start": { "line": 70, "column": 18 }, "end": { "line": 70, "column": 22 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 2425, "end": 2427, "loc": { "start": { "line": 70, "column": 23 }, "end": { "line": 70, "column": 25 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 2428, "end": 2433, "loc": { "start": { "line": 70, "column": 26 }, "end": { "line": 70, "column": 31 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2433, "end": 2434, "loc": { "start": { "line": 70, "column": 31 }, "end": { "line": 70, "column": 32 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 2434, "end": 2437, "loc": { "start": { "line": 70, "column": 32 }, "end": { "line": 70, "column": 35 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2437, "end": 2438, "loc": { "start": { "line": 70, "column": 35 }, "end": { "line": 70, "column": 36 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 2438, "end": 2442, "loc": { "start": { "line": 70, "column": 36 }, "end": { "line": 70, "column": 40 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 2443, "end": 2446, "loc": { "start": { "line": 70, "column": 41 }, "end": { "line": 70, "column": 44 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 2447, "end": 2449, "loc": { "start": { "line": 70, "column": 45 }, "end": { "line": 70, "column": 47 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2449, "end": 2450, "loc": { "start": { "line": 70, "column": 47 }, "end": { "line": 70, "column": 48 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 2450, "end": 2454, "loc": { "start": { "line": 70, "column": 48 }, "end": { "line": 70, "column": 52 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 2455, "end": 2457, "loc": { "start": { "line": 70, "column": 53 }, "end": { "line": 70, "column": 55 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 2458, "end": 2463, "loc": { "start": { "line": 70, "column": 56 }, "end": { "line": 70, "column": 61 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2463, "end": 2464, "loc": { "start": { "line": 70, "column": 61 }, "end": { "line": 70, "column": 62 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 2464, "end": 2467, "loc": { "start": { "line": 70, "column": 62 }, "end": { "line": 70, "column": 65 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2467, "end": 2468, "loc": { "start": { "line": 70, "column": 65 }, "end": { "line": 70, "column": 66 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 2468, "end": 2473, "loc": { "start": { "line": 70, "column": 66 }, "end": { "line": 70, "column": 71 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 2474, "end": 2475, "loc": { "start": { "line": 70, "column": 72 }, "end": { "line": 70, "column": 73 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 2476, "end": 2481, "loc": { "start": { "line": 70, "column": 74 }, "end": { "line": 70, "column": 79 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2481, "end": 2482, "loc": { "start": { "line": 70, "column": 79 }, "end": { "line": 70, "column": 80 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 2482, "end": 2485, "loc": { "start": { "line": 70, "column": 80 }, "end": { "line": 70, "column": 83 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 2486, "end": 2489, "loc": { "start": { "line": 70, "column": 84 }, "end": { "line": 70, "column": 87 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 2490, "end": 2492, "loc": { "start": { "line": 70, "column": 88 }, "end": { "line": 70, "column": 90 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2492, "end": 2493, "loc": { "start": { "line": 70, "column": 90 }, "end": { "line": 70, "column": 91 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 2493, "end": 2498, "loc": { "start": { "line": 70, "column": 91 }, "end": { "line": 70, "column": 96 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 2499, "end": 2501, "loc": { "start": { "line": 70, "column": 97 }, "end": { "line": 70, "column": 99 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 2502, "end": 2507, "loc": { "start": { "line": 70, "column": 100 }, "end": { "line": 70, "column": 105 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2507, "end": 2508, "loc": { "start": { "line": 70, "column": 105 }, "end": { "line": 70, "column": 106 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 2508, "end": 2510, "loc": { "start": { "line": 70, "column": 106 }, "end": { "line": 70, "column": 108 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 2511, "end": 2514, "loc": { "start": { "line": 70, "column": 109 }, "end": { "line": 70, "column": 112 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 2515, "end": 2517, "loc": { "start": { "line": 70, "column": 113 }, "end": { "line": 70, "column": 115 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2517, "end": 2518, "loc": { "start": { "line": 70, "column": 115 }, "end": { "line": 70, "column": 116 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2519, "end": 2520, "loc": { "start": { "line": 70, "column": 117 }, "end": { "line": 70, "column": 118 } } }, { "type": "CommentLine", "value": " We can extend left", "start": 2527, "end": 2548, "loc": { "start": { "line": 71, "column": 6 }, "end": { "line": 71, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 2555, "end": 2560, "loc": { "start": { "line": 72, "column": 6 }, "end": { "line": 72, "column": 11 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2560, "end": 2561, "loc": { "start": { "line": 72, "column": 11 }, "end": { "line": 72, "column": 12 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 2561, "end": 2564, "loc": { "start": { "line": 72, "column": 12 }, "end": { "line": 72, "column": 15 } } }, { "type": { "label": "_=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "+=", "start": 2565, "end": 2567, "loc": { "start": { "line": 72, "column": 16 }, "end": { "line": 72, "column": 18 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 2568, "end": 2574, "loc": { "start": { "line": 72, "column": 19 }, "end": { "line": 72, "column": 25 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "newMark", "start": 2581, "end": 2588, "loc": { "start": { "line": 73, "column": 6 }, "end": { "line": 73, "column": 13 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 2589, "end": 2590, "loc": { "start": { "line": 73, "column": 14 }, "end": { "line": 73, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 2591, "end": 2596, "loc": { "start": { "line": 73, "column": 16 }, "end": { "line": 73, "column": 21 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2601, "end": 2602, "loc": { "start": { "line": 74, "column": 4 }, "end": { "line": 74, "column": 5 } } }, { "type": { "label": "const", "keyword": "const", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "const", "start": 2607, "end": 2612, "loc": { "start": { "line": 75, "column": 4 }, "end": { "line": 75, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightNext", "start": 2613, "end": 2622, "loc": { "start": { "line": 75, "column": 10 }, "end": { "line": 75, "column": 19 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 2623, "end": 2624, "loc": { "start": { "line": 75, "column": 20 }, "end": { "line": 75, "column": 21 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 2625, "end": 2629, "loc": { "start": { "line": 75, "column": 22 }, "end": { "line": 75, "column": 26 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2629, "end": 2630, "loc": { "start": { "line": 75, "column": 26 }, "end": { "line": 75, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "find", "start": 2630, "end": 2634, "loc": { "start": { "line": 75, "column": 27 }, "end": { "line": 75, "column": 31 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2634, "end": 2635, "loc": { "start": { "line": 75, "column": 31 }, "end": { "line": 75, "column": 32 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 2635, "end": 2638, "loc": { "start": { "line": 75, "column": 32 }, "end": { "line": 75, "column": 35 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "ID", "start": 2639, "end": 2641, "loc": { "start": { "line": 75, "column": 36 }, "end": { "line": 75, "column": 38 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2641, "end": 2642, "loc": { "start": { "line": 75, "column": 38 }, "end": { "line": 75, "column": 39 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 2642, "end": 2644, "loc": { "start": { "line": 75, "column": 39 }, "end": { "line": 75, "column": 41 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2644, "end": 2645, "loc": { "start": { "line": 75, "column": 41 }, "end": { "line": 75, "column": 42 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 2645, "end": 2649, "loc": { "start": { "line": 75, "column": 42 }, "end": { "line": 75, "column": 46 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2649, "end": 2650, "loc": { "start": { "line": 75, "column": 46 }, "end": { "line": 75, "column": 47 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 2651, "end": 2653, "loc": { "start": { "line": 75, "column": 48 }, "end": { "line": 75, "column": 50 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2653, "end": 2654, "loc": { "start": { "line": 75, "column": 50 }, "end": { "line": 75, "column": 51 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 2654, "end": 2659, "loc": { "start": { "line": 75, "column": 51 }, "end": { "line": 75, "column": 56 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 2660, "end": 2661, "loc": { "start": { "line": 75, "column": 57 }, "end": { "line": 75, "column": 58 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 2662, "end": 2668, "loc": { "start": { "line": 75, "column": 59 }, "end": { "line": 75, "column": 65 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2668, "end": 2669, "loc": { "start": { "line": 75, "column": 65 }, "end": { "line": 75, "column": 66 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2669, "end": 2670, "loc": { "start": { "line": 75, "column": 66 }, "end": { "line": 75, "column": 67 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 2675, "end": 2677, "loc": { "start": { "line": 76, "column": 4 }, "end": { "line": 76, "column": 6 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2678, "end": 2679, "loc": { "start": { "line": 76, "column": 7 }, "end": { "line": 76, "column": 8 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightNext", "start": 2679, "end": 2688, "loc": { "start": { "line": 76, "column": 8 }, "end": { "line": 76, "column": 17 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!==", "start": 2689, "end": 2692, "loc": { "start": { "line": 76, "column": 18 }, "end": { "line": 76, "column": 21 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 2693, "end": 2697, "loc": { "start": { "line": 76, "column": 22 }, "end": { "line": 76, "column": 26 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 2698, "end": 2700, "loc": { "start": { "line": 76, "column": 27 }, "end": { "line": 76, "column": 29 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightNext", "start": 2701, "end": 2710, "loc": { "start": { "line": 76, "column": 30 }, "end": { "line": 76, "column": 39 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2710, "end": 2711, "loc": { "start": { "line": 76, "column": 39 }, "end": { "line": 76, "column": 40 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 2711, "end": 2714, "loc": { "start": { "line": 76, "column": 40 }, "end": { "line": 76, "column": 43 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2714, "end": 2715, "loc": { "start": { "line": 76, "column": 43 }, "end": { "line": 76, "column": 44 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 2715, "end": 2719, "loc": { "start": { "line": 76, "column": 44 }, "end": { "line": 76, "column": 48 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 2720, "end": 2723, "loc": { "start": { "line": 76, "column": 49 }, "end": { "line": 76, "column": 52 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 2724, "end": 2726, "loc": { "start": { "line": 76, "column": 53 }, "end": { "line": 76, "column": 55 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2726, "end": 2727, "loc": { "start": { "line": 76, "column": 55 }, "end": { "line": 76, "column": 56 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "user", "start": 2727, "end": 2731, "loc": { "start": { "line": 76, "column": 56 }, "end": { "line": 76, "column": 60 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 2732, "end": 2734, "loc": { "start": { "line": 76, "column": 61 }, "end": { "line": 76, "column": 63 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 2735, "end": 2737, "loc": { "start": { "line": 76, "column": 64 }, "end": { "line": 76, "column": 66 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2737, "end": 2738, "loc": { "start": { "line": 76, "column": 66 }, "end": { "line": 76, "column": 67 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 2738, "end": 2743, "loc": { "start": { "line": 76, "column": 67 }, "end": { "line": 76, "column": 72 } } }, { "type": { "label": "+/-", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": 9, "updateContext": null }, "value": "+", "start": 2744, "end": 2745, "loc": { "start": { "line": 76, "column": 73 }, "end": { "line": 76, "column": 74 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 2746, "end": 2752, "loc": { "start": { "line": 76, "column": 75 }, "end": { "line": 76, "column": 81 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 2753, "end": 2756, "loc": { "start": { "line": 76, "column": 82 }, "end": { "line": 76, "column": 85 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightNext", "start": 2757, "end": 2766, "loc": { "start": { "line": 76, "column": 86 }, "end": { "line": 76, "column": 95 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2766, "end": 2767, "loc": { "start": { "line": 76, "column": 95 }, "end": { "line": 76, "column": 96 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 2767, "end": 2770, "loc": { "start": { "line": 76, "column": 96 }, "end": { "line": 76, "column": 99 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2770, "end": 2771, "loc": { "start": { "line": 76, "column": 99 }, "end": { "line": 76, "column": 100 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "clock", "start": 2771, "end": 2776, "loc": { "start": { "line": 76, "column": 100 }, "end": { "line": 76, "column": 105 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 2777, "end": 2779, "loc": { "start": { "line": 76, "column": 106 }, "end": { "line": 76, "column": 108 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 2780, "end": 2782, "loc": { "start": { "line": 76, "column": 109 }, "end": { "line": 76, "column": 111 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "===", "start": 2783, "end": 2786, "loc": { "start": { "line": 76, "column": 112 }, "end": { "line": 76, "column": 115 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightNext", "start": 2787, "end": 2796, "loc": { "start": { "line": 76, "column": 116 }, "end": { "line": 76, "column": 125 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2796, "end": 2797, "loc": { "start": { "line": 76, "column": 125 }, "end": { "line": 76, "column": 126 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "gc", "start": 2797, "end": 2799, "loc": { "start": { "line": 76, "column": 126 }, "end": { "line": 76, "column": 128 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2799, "end": 2800, "loc": { "start": { "line": 76, "column": 128 }, "end": { "line": 76, "column": 129 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2801, "end": 2802, "loc": { "start": { "line": 76, "column": 130 }, "end": { "line": 76, "column": 131 } } }, { "type": "CommentLine", "value": " We can merge newMark and rightNext", "start": 2809, "end": 2846, "loc": { "start": { "line": 77, "column": 6 }, "end": { "line": 77, "column": 43 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "newMark", "start": 2853, "end": 2860, "loc": { "start": { "line": 78, "column": 6 }, "end": { "line": 78, "column": 13 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2860, "end": 2861, "loc": { "start": { "line": 78, "column": 13 }, "end": { "line": 78, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 2861, "end": 2864, "loc": { "start": { "line": 78, "column": 14 }, "end": { "line": 78, "column": 17 } } }, { "type": { "label": "_=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "+=", "start": 2865, "end": 2867, "loc": { "start": { "line": 78, "column": 18 }, "end": { "line": 78, "column": 20 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightNext", "start": 2868, "end": 2877, "loc": { "start": { "line": 78, "column": 21 }, "end": { "line": 78, "column": 30 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2877, "end": 2878, "loc": { "start": { "line": 78, "column": 30 }, "end": { "line": 78, "column": 31 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "len", "start": 2878, "end": 2881, "loc": { "start": { "line": 78, "column": 31 }, "end": { "line": 78, "column": 34 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 2888, "end": 2892, "loc": { "start": { "line": 79, "column": 6 }, "end": { "line": 79, "column": 10 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2892, "end": 2893, "loc": { "start": { "line": 79, "column": 10 }, "end": { "line": 79, "column": 11 } } }, { "type": { "label": "delete", "keyword": "delete", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": true, "postfix": false, "binop": null, "updateContext": null }, "value": "delete", "start": 2893, "end": 2899, "loc": { "start": { "line": 79, "column": 11 }, "end": { "line": 79, "column": 17 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2899, "end": 2900, "loc": { "start": { "line": 79, "column": 17 }, "end": { "line": 79, "column": 18 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "rightNext", "start": 2900, "end": 2909, "loc": { "start": { "line": 79, "column": 18 }, "end": { "line": 79, "column": 27 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 2909, "end": 2910, "loc": { "start": { "line": 79, "column": 27 }, "end": { "line": 79, "column": 28 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "_id", "start": 2910, "end": 2913, "loc": { "start": { "line": 79, "column": 28 }, "end": { "line": 79, "column": 31 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2913, "end": 2914, "loc": { "start": { "line": 79, "column": 31 }, "end": { "line": 79, "column": 32 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2919, "end": 2920, "loc": { "start": { "line": 80, "column": 4 }, "end": { "line": 80, "column": 5 } } }, { "type": { "label": "if", "keyword": "if", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "if", "start": 2925, "end": 2927, "loc": { "start": { "line": 81, "column": 4 }, "end": { "line": 81, "column": 6 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2928, "end": 2929, "loc": { "start": { "line": 81, "column": 7 }, "end": { "line": 81, "column": 8 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "leftD", "start": 2929, "end": 2934, "loc": { "start": { "line": 81, "column": 8 }, "end": { "line": 81, "column": 13 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!==", "start": 2935, "end": 2938, "loc": { "start": { "line": 81, "column": 14 }, "end": { "line": 81, "column": 17 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "newMark", "start": 2939, "end": 2946, "loc": { "start": { "line": 81, "column": 18 }, "end": { "line": 81, "column": 25 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2946, "end": 2947, "loc": { "start": { "line": 81, "column": 25 }, "end": { "line": 81, "column": 26 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 2948, "end": 2949, "loc": { "start": { "line": 81, "column": 27 }, "end": { "line": 81, "column": 28 } } }, { "type": "CommentLine", "value": " only put if we didn't extend left", "start": 2956, "end": 2992, "loc": { "start": { "line": 82, "column": 6 }, "end": { "line": 82, "column": 42 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 2999, "end": 3003, "loc": { "start": { "line": 83, "column": 6 }, "end": { "line": 83, "column": 10 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 3003, "end": 3004, "loc": { "start": { "line": 83, "column": 10 }, "end": { "line": 83, "column": 11 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "put", "start": 3004, "end": 3007, "loc": { "start": { "line": 83, "column": 11 }, "end": { "line": 83, "column": 14 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3007, "end": 3008, "loc": { "start": { "line": 83, "column": 14 }, "end": { "line": 83, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "newMark", "start": 3008, "end": 3015, "loc": { "start": { "line": 83, "column": 15 }, "end": { "line": 83, "column": 22 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3015, "end": 3016, "loc": { "start": { "line": 83, "column": 22 }, "end": { "line": 83, "column": 23 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3021, "end": 3022, "loc": { "start": { "line": 84, "column": 4 }, "end": { "line": 84, "column": 5 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3025, "end": 3026, "loc": { "start": { "line": 85, "column": 2 }, "end": { "line": 85, "column": 3 } } }, { "type": "CommentLine", "value": " TODO: exchange markDeleted for mark()", "start": 3029, "end": 3069, "loc": { "start": { "line": 86, "column": 2 }, "end": { "line": 86, "column": 42 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "markDeleted", "start": 3072, "end": 3083, "loc": { "start": { "line": 87, "column": 2 }, "end": { "line": 87, "column": 13 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3084, "end": 3085, "loc": { "start": { "line": 87, "column": 14 }, "end": { "line": 87, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 3085, "end": 3087, "loc": { "start": { "line": 87, "column": 15 }, "end": { "line": 87, "column": 17 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 3087, "end": 3088, "loc": { "start": { "line": 87, "column": 17 }, "end": { "line": 87, "column": 18 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 3089, "end": 3095, "loc": { "start": { "line": 87, "column": 19 }, "end": { "line": 87, "column": 25 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3095, "end": 3096, "loc": { "start": { "line": 87, "column": 25 }, "end": { "line": 87, "column": 26 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3097, "end": 3098, "loc": { "start": { "line": 87, "column": 27 }, "end": { "line": 87, "column": 28 } } }, { "type": { "label": "this", "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "this", "start": 3103, "end": 3107, "loc": { "start": { "line": 88, "column": 4 }, "end": { "line": 88, "column": 8 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 3107, "end": 3108, "loc": { "start": { "line": 88, "column": 8 }, "end": { "line": 88, "column": 9 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "mark", "start": 3108, "end": 3112, "loc": { "start": { "line": 88, "column": 9 }, "end": { "line": 88, "column": 13 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3112, "end": 3113, "loc": { "start": { "line": 88, "column": 13 }, "end": { "line": 88, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "id", "start": 3113, "end": 3115, "loc": { "start": { "line": 88, "column": 14 }, "end": { "line": 88, "column": 16 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 3115, "end": 3116, "loc": { "start": { "line": 88, "column": 16 }, "end": { "line": 88, "column": 17 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "length", "start": 3117, "end": 3123, "loc": { "start": { "line": 88, "column": 18 }, "end": { "line": 88, "column": 24 } } }, { "type": { "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 3123, "end": 3124, "loc": { "start": { "line": 88, "column": 24 }, "end": { "line": 88, "column": 25 } } }, { "type": { "label": "false", "keyword": "false", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "false", "start": 3125, "end": 3130, "loc": { "start": { "line": 88, "column": 26 }, "end": { "line": 88, "column": 31 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3130, "end": 3131, "loc": { "start": { "line": 88, "column": 31 }, "end": { "line": 88, "column": 32 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3134, "end": 3135, "loc": { "start": { "line": 89, "column": 2 }, "end": { "line": 89, "column": 3 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 3136, "end": 3137, "loc": { "start": { "line": 90, "column": 0 }, "end": { "line": 90, "column": 1 } } }, { "type": { "label": "eof", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 3138, "end": 3138, "loc": { "start": { "line": 91, "column": 0 }, "end": { "line": 91, "column": 0 } } } ] }