{ "type": "Script", "span": { "start": 41, "end": 5351, "ctxt": 0 }, "body": [ { "type": "VariableDeclaration", "span": { "start": 41, "end": 99, "ctxt": 0 }, "kind": "let", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 53, "end": 98, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 53, "end": 55, "ctxt": 0 }, "value": "f1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 55, "end": 98, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 57, "end": 98, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 58, "end": 89, "ctxt": 0 }, "rest": { "start": 58, "end": 61, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 61, "end": 62, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 62, "end": 89, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 64, "end": 89, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 65, "end": 71, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 65, "end": 71, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 73, "end": 79, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 73, "end": 79, "ctxt": 0 }, "kind": "string" } }, { "type": "TsTupleElement", "span": { "start": 81, "end": 88, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 81, "end": 88, "ctxt": 0 }, "kind": "boolean" } } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 91, "end": 98, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 94, "end": 98, "ctxt": 0 }, "kind": "void" } } } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 100, "end": 162, "ctxt": 0 }, "kind": "let", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 112, "end": 161, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 112, "end": 114, "ctxt": 0 }, "value": "f2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 114, "end": 161, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 116, "end": 161, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 117, "end": 127, "ctxt": 0 }, "value": "x0", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 119, "end": 127, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 121, "end": 127, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 129, "end": 139, "ctxt": 0 }, "value": "x1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 131, "end": 139, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 133, "end": 139, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 141, "end": 152, "ctxt": 0 }, "value": "x2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 143, "end": 152, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 145, "end": 152, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 154, "end": 161, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 157, "end": 161, "ctxt": 0 }, "kind": "void" } } } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 164, "end": 172, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 164, "end": 171, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 164, "end": 166, "ctxt": 0 }, "value": "f1", "optional": false, "typeAnnotation": null }, "right": { "type": "Identifier", "span": { "start": 169, "end": 171, "ctxt": 0 }, "value": "f2", "optional": false } } }, { "type": "ExpressionStatement", "span": { "start": 173, "end": 181, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 173, "end": 180, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 173, "end": 175, "ctxt": 0 }, "value": "f2", "optional": false, "typeAnnotation": null }, "right": { "type": "Identifier", "span": { "start": 178, "end": 180, "ctxt": 0 }, "value": "f1", "optional": false } } }, { "type": "VariableDeclaration", "span": { "start": 183, "end": 227, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 197, "end": 226, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 197, "end": 199, "ctxt": 0 }, "value": "t3", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 199, "end": 226, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 201, "end": 226, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 202, "end": 208, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 202, "end": 208, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 210, "end": 216, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 210, "end": 216, "ctxt": 0 }, "kind": "string" } }, { "type": "TsTupleElement", "span": { "start": 218, "end": 225, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 218, "end": 225, "ctxt": 0 }, "kind": "boolean" } } ] } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 228, "end": 264, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 242, "end": 263, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 242, "end": 244, "ctxt": 0 }, "value": "t2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 244, "end": 263, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 246, "end": 263, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 247, "end": 253, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 247, "end": 253, "ctxt": 0 }, "kind": "string" } }, { "type": "TsTupleElement", "span": { "start": 255, "end": 262, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 255, "end": 262, "ctxt": 0 }, "kind": "boolean" } } ] } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 265, "end": 293, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 279, "end": 292, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 279, "end": 281, "ctxt": 0 }, "value": "t1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 281, "end": 292, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 283, "end": 292, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 284, "end": 291, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 284, "end": 291, "ctxt": 0 }, "kind": "boolean" } } ] } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 294, "end": 315, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 308, "end": 314, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 308, "end": 310, "ctxt": 0 }, "value": "t0", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 310, "end": 314, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 312, "end": 314, "ctxt": 0 }, "elemTypes": [] } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 317, "end": 352, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 331, "end": 351, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 331, "end": 333, "ctxt": 0 }, "value": "ns", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 333, "end": 351, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 335, "end": 351, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 336, "end": 342, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 336, "end": 342, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 344, "end": 350, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 344, "end": 350, "ctxt": 0 }, "kind": "string" } } ] } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 353, "end": 388, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 367, "end": 387, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 367, "end": 369, "ctxt": 0 }, "value": "sn", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 369, "end": 387, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 371, "end": 387, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 372, "end": 378, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 372, "end": 378, "ctxt": 0 }, "kind": "string" } }, { "type": "TsTupleElement", "span": { "start": 380, "end": 386, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 380, "end": 386, "ctxt": 0 }, "kind": "number" } } ] } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 390, "end": 412, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 390, "end": 411, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 390, "end": 392, "ctxt": 0 }, "value": "f1", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 393, "end": 395, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 397, "end": 404, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 406, "end": 410, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 413, "end": 437, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 413, "end": 436, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 413, "end": 415, "ctxt": 0 }, "value": "f1", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 416, "end": 421, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 416, "end": 418, "ctxt": 0 }, "value": "t3", "optional": false }, "property": { "type": "Computed", "span": { "start": 418, "end": 421, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 419, "end": 420, "ctxt": 0 }, "value": 0.0, "raw": "0" } } } }, { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 423, "end": 428, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 423, "end": 425, "ctxt": 0 }, "value": "t3", "optional": false }, "property": { "type": "Computed", "span": { "start": 425, "end": 428, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 426, "end": 427, "ctxt": 0 }, "value": 1.0, "raw": "1" } } } }, { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 430, "end": 435, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 430, "end": 432, "ctxt": 0 }, "value": "t3", "optional": false }, "property": { "type": "Computed", "span": { "start": 432, "end": 435, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 433, "end": 434, "ctxt": 0 }, "value": 2.0, "raw": "2" } } } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 438, "end": 448, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 438, "end": 447, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 438, "end": 440, "ctxt": 0 }, "value": "f1", "optional": false }, "arguments": [ { "spread": { "start": 441, "end": 444, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 444, "end": 446, "ctxt": 0 }, "value": "t3", "optional": false } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 449, "end": 463, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 449, "end": 462, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 449, "end": 451, "ctxt": 0 }, "value": "f1", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 452, "end": 454, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": { "start": 456, "end": 459, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 459, "end": 461, "ctxt": 0 }, "value": "t2", "optional": false } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 464, "end": 487, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 464, "end": 486, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 464, "end": 466, "ctxt": 0 }, "value": "f1", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 467, "end": 469, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 471, "end": 478, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": { "start": 480, "end": 483, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 483, "end": 485, "ctxt": 0 }, "value": "t1", "optional": false } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 488, "end": 517, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 488, "end": 516, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 488, "end": 490, "ctxt": 0 }, "value": "f1", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 491, "end": 493, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 495, "end": 502, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 504, "end": 508, "ctxt": 0 }, "value": true } }, { "spread": { "start": 510, "end": 513, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 513, "end": 515, "ctxt": 0 }, "value": "t0", "optional": false } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 518, "end": 541, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 518, "end": 540, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 518, "end": 520, "ctxt": 0 }, "value": "f1", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 521, "end": 526, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 521, "end": 523, "ctxt": 0 }, "value": "ns", "optional": false }, "property": { "type": "Computed", "span": { "start": 523, "end": 526, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 524, "end": 525, "ctxt": 0 }, "value": 0.0, "raw": "0" } } } }, { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 528, "end": 533, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 528, "end": 530, "ctxt": 0 }, "value": "ns", "optional": false }, "property": { "type": "Computed", "span": { "start": 530, "end": 533, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 531, "end": 532, "ctxt": 0 }, "value": 1.0, "raw": "1" } } } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 535, "end": 539, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 542, "end": 558, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 542, "end": 557, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 542, "end": 544, "ctxt": 0 }, "value": "f1", "optional": false }, "arguments": [ { "spread": { "start": 545, "end": 548, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 548, "end": 550, "ctxt": 0 }, "value": "ns", "optional": false } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 552, "end": 556, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 626, "end": 648, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 626, "end": 647, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 626, "end": 628, "ctxt": 0 }, "value": "f2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 629, "end": 631, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 633, "end": 640, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 642, "end": 646, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 649, "end": 673, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 649, "end": 672, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 649, "end": 651, "ctxt": 0 }, "value": "f2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 652, "end": 657, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 652, "end": 654, "ctxt": 0 }, "value": "t3", "optional": false }, "property": { "type": "Computed", "span": { "start": 654, "end": 657, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 655, "end": 656, "ctxt": 0 }, "value": 0.0, "raw": "0" } } } }, { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 659, "end": 664, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 659, "end": 661, "ctxt": 0 }, "value": "t3", "optional": false }, "property": { "type": "Computed", "span": { "start": 661, "end": 664, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 662, "end": 663, "ctxt": 0 }, "value": 1.0, "raw": "1" } } } }, { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 666, "end": 671, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 666, "end": 668, "ctxt": 0 }, "value": "t3", "optional": false }, "property": { "type": "Computed", "span": { "start": 668, "end": 671, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 669, "end": 670, "ctxt": 0 }, "value": 2.0, "raw": "2" } } } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 674, "end": 684, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 674, "end": 683, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 674, "end": 676, "ctxt": 0 }, "value": "f2", "optional": false }, "arguments": [ { "spread": { "start": 677, "end": 680, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 680, "end": 682, "ctxt": 0 }, "value": "t3", "optional": false } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 685, "end": 699, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 685, "end": 698, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 685, "end": 687, "ctxt": 0 }, "value": "f2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 688, "end": 690, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": { "start": 692, "end": 695, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 695, "end": 697, "ctxt": 0 }, "value": "t2", "optional": false } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 700, "end": 723, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 700, "end": 722, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 700, "end": 702, "ctxt": 0 }, "value": "f2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 703, "end": 705, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 707, "end": 714, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": { "start": 716, "end": 719, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 719, "end": 721, "ctxt": 0 }, "value": "t1", "optional": false } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 724, "end": 753, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 724, "end": 752, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 724, "end": 726, "ctxt": 0 }, "value": "f2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 727, "end": 729, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 731, "end": 738, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 740, "end": 744, "ctxt": 0 }, "value": true } }, { "spread": { "start": 746, "end": 749, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 749, "end": 751, "ctxt": 0 }, "value": "t0", "optional": false } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 754, "end": 777, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 754, "end": 776, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 754, "end": 756, "ctxt": 0 }, "value": "f2", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 757, "end": 762, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 757, "end": 759, "ctxt": 0 }, "value": "ns", "optional": false }, "property": { "type": "Computed", "span": { "start": 759, "end": 762, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 760, "end": 761, "ctxt": 0 }, "value": 0.0, "raw": "0" } } } }, { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 764, "end": 769, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 764, "end": 766, "ctxt": 0 }, "value": "ns", "optional": false }, "property": { "type": "Computed", "span": { "start": 766, "end": 769, "ctxt": 0 }, "expression": { "type": "NumericLiteral", "span": { "start": 767, "end": 768, "ctxt": 0 }, "value": 1.0, "raw": "1" } } } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 771, "end": 775, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 778, "end": 794, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 778, "end": 793, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 778, "end": 780, "ctxt": 0 }, "value": "f2", "optional": false }, "arguments": [ { "spread": { "start": 781, "end": 784, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 784, "end": 786, "ctxt": 0 }, "value": "ns", "optional": false } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 788, "end": 792, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 879, "end": 882, "ctxt": 0 }, "value": "f10", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 904, "end": 914, "ctxt": 0 }, "decorators": [], "pat": { "type": "RestElement", "span": { "start": 904, "end": 914, "ctxt": 0 }, "rest": { "start": 904, "end": 907, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 907, "end": 911, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 911, "end": 914, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 913, "end": 914, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 913, "end": 914, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 862, "end": 919, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 882, "end": 903, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 883, "end": 902, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 883, "end": 884, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 893, "end": 902, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 893, "end": 900, "ctxt": 0 }, "kind": "unknown" } }, "default": null } ] }, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 915, "end": 918, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 917, "end": 918, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 917, "end": 918, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "VariableDeclaration", "span": { "start": 921, "end": 956, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 927, "end": 955, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 927, "end": 930, "ctxt": 0 }, "value": "x10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 933, "end": 955, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 933, "end": 936, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 937, "end": 939, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 941, "end": 948, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 950, "end": 954, "ctxt": 0 }, "value": true } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 987, "end": 1016, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 993, "end": 1015, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 993, "end": 996, "ctxt": 0 }, "value": "x11", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 999, "end": 1015, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 999, "end": 1002, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1003, "end": 1005, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1007, "end": 1014, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1038, "end": 1058, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1044, "end": 1057, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1044, "end": 1047, "ctxt": 0 }, "value": "x12", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1050, "end": 1057, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1050, "end": 1053, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1054, "end": 1056, "ctxt": 0 }, "value": 42.0, "raw": "42" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1072, "end": 1090, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1078, "end": 1089, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1078, "end": 1081, "ctxt": 0 }, "value": "x13", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1084, "end": 1089, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1084, "end": 1087, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1098, "end": 1121, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1104, "end": 1120, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1104, "end": 1107, "ctxt": 0 }, "value": "x14", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1110, "end": 1120, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1110, "end": 1113, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": { "start": 1114, "end": 1117, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1117, "end": 1119, "ctxt": 0 }, "value": "t3", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1152, "end": 1179, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1158, "end": 1178, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1158, "end": 1161, "ctxt": 0 }, "value": "x15", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1164, "end": 1178, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1164, "end": 1167, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1168, "end": 1170, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": { "start": 1172, "end": 1175, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1175, "end": 1177, "ctxt": 0 }, "value": "t2", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1210, "end": 1246, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1216, "end": 1245, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1216, "end": 1219, "ctxt": 0 }, "value": "x16", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1222, "end": 1245, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1222, "end": 1225, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1226, "end": 1228, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1230, "end": 1237, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": { "start": 1239, "end": 1242, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1242, "end": 1244, "ctxt": 0 }, "value": "t1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1277, "end": 1319, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1283, "end": 1318, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1283, "end": 1286, "ctxt": 0 }, "value": "x17", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1289, "end": 1318, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1289, "end": 1292, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1293, "end": 1295, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1297, "end": 1304, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 1306, "end": 1310, "ctxt": 0 }, "value": true } }, { "spread": { "start": 1312, "end": 1315, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1315, "end": 1317, "ctxt": 0 }, "value": "t0", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1350, "end": 1379, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1356, "end": 1378, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1356, "end": 1359, "ctxt": 0 }, "value": "x18", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1362, "end": 1378, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1362, "end": 1365, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": { "start": 1366, "end": 1369, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1369, "end": 1371, "ctxt": 0 }, "value": "ns", "optional": false } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 1373, "end": 1377, "ctxt": 0 }, "value": true } } ], "typeArguments": null }, "definite": false } ] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1424, "end": 1427, "ctxt": 0 }, "value": "g10", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 1476, "end": 1480, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1476, "end": 1480, "ctxt": 0 }, "value": "u", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1477, "end": 1480, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1479, "end": 1480, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1479, "end": 1480, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } }, { "type": "Parameter", "span": { "start": 1482, "end": 1486, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 1482, "end": 1486, "ctxt": 0 }, "value": "v", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1483, "end": 1486, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1485, "end": 1486, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1485, "end": 1486, "ctxt": 0 }, "value": "V", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 1415, "end": 1658, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 1488, "end": 1658, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 1494, "end": 1513, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1498, "end": 1512, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1498, "end": 1500, "ctxt": 0 }, "value": "x1", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1503, "end": 1512, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1503, "end": 1506, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": { "start": 1507, "end": 1510, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1510, "end": 1511, "ctxt": 0 }, "value": "u", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1524, "end": 1543, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1528, "end": 1542, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1528, "end": 1530, "ctxt": 0 }, "value": "x2", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1533, "end": 1542, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1533, "end": 1536, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": { "start": 1537, "end": 1540, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1540, "end": 1541, "ctxt": 0 }, "value": "v", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1554, "end": 1576, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1558, "end": 1575, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1558, "end": 1560, "ctxt": 0 }, "value": "x3", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1563, "end": 1575, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1563, "end": 1566, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1567, "end": 1568, "ctxt": 0 }, "value": 1.0, "raw": "1" } }, { "spread": { "start": 1570, "end": 1573, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1573, "end": 1574, "ctxt": 0 }, "value": "u", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1607, "end": 1632, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1611, "end": 1631, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1611, "end": 1613, "ctxt": 0 }, "value": "x4", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1616, "end": 1631, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1616, "end": 1619, "ctxt": 0 }, "value": "f10", "optional": false }, "arguments": [ { "spread": { "start": 1620, "end": 1623, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1623, "end": 1624, "ctxt": 0 }, "value": "u", "optional": false } }, { "spread": { "start": 1626, "end": 1629, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1629, "end": 1630, "ctxt": 0 }, "value": "v", "optional": false } } ], "typeArguments": null }, "definite": false } ] } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1427, "end": 1475, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1428, "end": 1446, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1428, "end": 1429, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 1438, "end": 1446, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 1438, "end": 1444, "ctxt": 0 }, "kind": "string" } }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 1448, "end": 1474, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1448, "end": 1449, "ctxt": 0 }, "value": "V", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTupleType", "span": { "start": 1458, "end": 1474, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 1459, "end": 1465, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 1459, "end": 1465, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 1467, "end": 1473, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 1467, "end": 1473, "ctxt": 0 }, "kind": "number" } } ] }, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 1677, "end": 1680, "ctxt": 0 }, "value": "f11", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 1722, "end": 1732, "ctxt": 0 }, "decorators": [], "pat": { "type": "RestElement", "span": { "start": 1722, "end": 1732, "ctxt": 0 }, "rest": { "start": 1722, "end": 1725, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 1725, "end": 1729, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 1729, "end": 1732, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1731, "end": 1732, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1731, "end": 1732, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 1660, "end": 1737, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 1680, "end": 1721, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 1681, "end": 1720, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 1681, "end": 1682, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 1691, "end": 1720, "ctxt": 0 }, "elemType": { "type": "TsParenthesizedType", "span": { "start": 1691, "end": 1718, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 1692, "end": 1717, "ctxt": 0 }, "types": [ { "type": "TsKeywordType", "span": { "start": 1692, "end": 1698, "ctxt": 0 }, "kind": "string" }, { "type": "TsKeywordType", "span": { "start": 1701, "end": 1707, "ctxt": 0 }, "kind": "number" }, { "type": "TsKeywordType", "span": { "start": 1710, "end": 1717, "ctxt": 0 }, "kind": "boolean" } ] } } }, "default": null } ] }, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 1733, "end": 1736, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 1735, "end": 1736, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 1735, "end": 1736, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "VariableDeclaration", "span": { "start": 1739, "end": 1774, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1745, "end": 1773, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1745, "end": 1748, "ctxt": 0 }, "value": "z10", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1751, "end": 1773, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1751, "end": 1754, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1755, "end": 1757, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1759, "end": 1766, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 1768, "end": 1772, "ctxt": 0 }, "value": true } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1799, "end": 1828, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1805, "end": 1827, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1805, "end": 1808, "ctxt": 0 }, "value": "z11", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1811, "end": 1827, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1811, "end": 1814, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1815, "end": 1817, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 1819, "end": 1826, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1847, "end": 1867, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1853, "end": 1866, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1853, "end": 1856, "ctxt": 0 }, "value": "z12", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1859, "end": 1866, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1859, "end": 1862, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1863, "end": 1865, "ctxt": 0 }, "value": 42.0, "raw": "42" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1877, "end": 1895, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1883, "end": 1894, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1883, "end": 1886, "ctxt": 0 }, "value": "z13", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1889, "end": 1894, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1889, "end": 1892, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1903, "end": 1926, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1909, "end": 1925, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1909, "end": 1912, "ctxt": 0 }, "value": "z14", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1915, "end": 1925, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1915, "end": 1918, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": { "start": 1919, "end": 1922, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1922, "end": 1924, "ctxt": 0 }, "value": "t3", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 1957, "end": 1984, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 1963, "end": 1983, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 1963, "end": 1966, "ctxt": 0 }, "value": "z15", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 1969, "end": 1983, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 1969, "end": 1972, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 1973, "end": 1975, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": { "start": 1977, "end": 1980, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 1980, "end": 1982, "ctxt": 0 }, "value": "t2", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2011, "end": 2047, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2017, "end": 2046, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2017, "end": 2020, "ctxt": 0 }, "value": "z16", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2023, "end": 2046, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2023, "end": 2026, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2027, "end": 2029, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2031, "end": 2038, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": { "start": 2040, "end": 2043, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2043, "end": 2045, "ctxt": 0 }, "value": "t1", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2075, "end": 2117, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2081, "end": 2116, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2081, "end": 2084, "ctxt": 0 }, "value": "z17", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2087, "end": 2116, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2087, "end": 2090, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2091, "end": 2093, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2095, "end": 2102, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 2104, "end": 2108, "ctxt": 0 }, "value": true } }, { "spread": { "start": 2110, "end": 2113, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2113, "end": 2115, "ctxt": 0 }, "value": "t0", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2142, "end": 2171, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2148, "end": 2170, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2148, "end": 2151, "ctxt": 0 }, "value": "z18", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2154, "end": 2170, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2154, "end": 2157, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": { "start": 2158, "end": 2161, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2161, "end": 2163, "ctxt": 0 }, "value": "ns", "optional": false } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 2165, "end": 2169, "ctxt": 0 }, "value": true } } ], "typeArguments": null }, "definite": false } ] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2213, "end": 2216, "ctxt": 0 }, "value": "g11", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 2265, "end": 2269, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2265, "end": 2269, "ctxt": 0 }, "value": "u", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2266, "end": 2269, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2268, "end": 2269, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2268, "end": 2269, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } }, { "type": "Parameter", "span": { "start": 2271, "end": 2275, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2271, "end": 2275, "ctxt": 0 }, "value": "v", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2272, "end": 2275, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2274, "end": 2275, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2274, "end": 2275, "ctxt": 0 }, "value": "V", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 2204, "end": 2442, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 2277, "end": 2442, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 2283, "end": 2302, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2287, "end": 2301, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2287, "end": 2289, "ctxt": 0 }, "value": "x1", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2292, "end": 2301, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2292, "end": 2295, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": { "start": 2296, "end": 2299, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2299, "end": 2300, "ctxt": 0 }, "value": "u", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2313, "end": 2332, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2317, "end": 2331, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2317, "end": 2319, "ctxt": 0 }, "value": "x2", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2322, "end": 2331, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2322, "end": 2325, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": { "start": 2326, "end": 2329, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2329, "end": 2330, "ctxt": 0 }, "value": "v", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2343, "end": 2365, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2347, "end": 2364, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2347, "end": 2349, "ctxt": 0 }, "value": "x3", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2352, "end": 2364, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2352, "end": 2355, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2356, "end": 2357, "ctxt": 0 }, "value": 1.0, "raw": "1" } }, { "spread": { "start": 2359, "end": 2362, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2362, "end": 2363, "ctxt": 0 }, "value": "u", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2391, "end": 2416, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2395, "end": 2415, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2395, "end": 2397, "ctxt": 0 }, "value": "x4", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2400, "end": 2415, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2400, "end": 2403, "ctxt": 0 }, "value": "f11", "optional": false }, "arguments": [ { "spread": { "start": 2404, "end": 2407, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2407, "end": 2408, "ctxt": 0 }, "value": "u", "optional": false } }, { "spread": { "start": 2410, "end": 2413, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2413, "end": 2414, "ctxt": 0 }, "value": "v", "optional": false } } ], "typeArguments": null }, "definite": false } ] } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 2216, "end": 2264, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2217, "end": 2235, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2217, "end": 2218, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 2227, "end": 2235, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2227, "end": 2233, "ctxt": 0 }, "kind": "string" } }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 2237, "end": 2263, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2237, "end": 2238, "ctxt": 0 }, "value": "V", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTupleType", "span": { "start": 2247, "end": 2263, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 2248, "end": 2254, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2248, "end": 2254, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 2256, "end": 2262, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2256, "end": 2262, "ctxt": 0 }, "kind": "number" } } ] }, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2453, "end": 2457, "ctxt": 0 }, "value": "call", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 2482, "end": 2502, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2482, "end": 2502, "ctxt": 0 }, "value": "f", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2483, "end": 2502, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2485, "end": 2502, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 2486, "end": 2496, "ctxt": 0 }, "rest": { "start": 2486, "end": 2489, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 2489, "end": 2493, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2493, "end": 2496, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2495, "end": 2496, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2495, "end": 2496, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2498, "end": 2502, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2501, "end": 2502, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2501, "end": 2502, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } }, { "type": "Parameter", "span": { "start": 2504, "end": 2514, "ctxt": 0 }, "decorators": [], "pat": { "type": "RestElement", "span": { "start": 2504, "end": 2514, "ctxt": 0 }, "rest": { "start": 2504, "end": 2507, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 2507, "end": 2511, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2511, "end": 2514, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2513, "end": 2514, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2513, "end": 2514, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 2444, "end": 2542, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 2516, "end": 2542, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 2522, "end": 2540, "ctxt": 0 }, "argument": { "type": "CallExpression", "span": { "start": 2529, "end": 2539, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2529, "end": 2530, "ctxt": 0 }, "value": "f", "optional": false }, "arguments": [ { "spread": { "start": 2531, "end": 2534, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2534, "end": 2538, "ctxt": 0 }, "value": "args", "optional": false } } ], "typeArguments": null } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 2457, "end": 2481, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2458, "end": 2477, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2458, "end": 2459, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 2468, "end": 2477, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2468, "end": 2475, "ctxt": 0 }, "kind": "unknown" } }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 2479, "end": 2480, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2479, "end": 2480, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2553, "end": 2558, "ctxt": 0 }, "value": "callr", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 2583, "end": 2590, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2583, "end": 2590, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2587, "end": 2590, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2589, "end": 2590, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2589, "end": 2590, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } }, { "type": "Parameter", "span": { "start": 2592, "end": 2612, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2592, "end": 2612, "ctxt": 0 }, "value": "f", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2593, "end": 2612, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 2595, "end": 2612, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 2596, "end": 2606, "ctxt": 0 }, "rest": { "start": 2596, "end": 2599, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 2599, "end": 2603, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2603, "end": 2606, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2605, "end": 2606, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2605, "end": 2606, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2608, "end": 2612, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2611, "end": 2612, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2611, "end": 2612, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } } } ], "decorators": [], "span": { "start": 2544, "end": 2640, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 2614, "end": 2640, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 2620, "end": 2638, "ctxt": 0 }, "argument": { "type": "CallExpression", "span": { "start": 2627, "end": 2637, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2627, "end": 2628, "ctxt": 0 }, "value": "f", "optional": false }, "arguments": [ { "spread": { "start": 2629, "end": 2632, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 2632, "end": 2636, "ctxt": 0 }, "value": "args", "optional": false } } ], "typeArguments": null } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 2558, "end": 2582, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2559, "end": 2578, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2559, "end": 2560, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 2569, "end": 2578, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 2569, "end": 2576, "ctxt": 0 }, "kind": "unknown" } }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 2580, "end": 2581, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2580, "end": 2581, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2659, "end": 2662, "ctxt": 0 }, "value": "f15", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2663, "end": 2672, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2663, "end": 2672, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2664, "end": 2672, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2666, "end": 2672, "ctxt": 0 }, "kind": "string" } } } }, { "type": "Parameter", "span": { "start": 2674, "end": 2683, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2674, "end": 2683, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2675, "end": 2683, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 2677, "end": 2683, "ctxt": 0 }, "kind": "number" } } } } ], "decorators": [], "span": { "start": 2642, "end": 2702, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": null, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2684, "end": 2701, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 2686, "end": 2701, "ctxt": 0 }, "types": [ { "type": "TsKeywordType", "span": { "start": 2686, "end": 2692, "ctxt": 0 }, "kind": "string" }, { "type": "TsKeywordType", "span": { "start": 2695, "end": 2701, "ctxt": 0 }, "kind": "number" } ] } } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 2720, "end": 2723, "ctxt": 0 }, "value": "f16", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 2730, "end": 2734, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2730, "end": 2734, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2731, "end": 2734, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2733, "end": 2734, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2733, "end": 2734, "ctxt": 0 }, "value": "A", "optional": false }, "typeParams": null } } } }, { "type": "Parameter", "span": { "start": 2736, "end": 2740, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 2736, "end": 2740, "ctxt": 0 }, "value": "b", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 2737, "end": 2740, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 2739, "end": 2740, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2739, "end": 2740, "ctxt": 0 }, "value": "B", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 2703, "end": 2749, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 2723, "end": 2729, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 2724, "end": 2725, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2724, "end": 2725, "ctxt": 0 }, "value": "A", "optional": false }, "in": false, "out": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 2727, "end": 2728, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 2727, "end": 2728, "ctxt": 0 }, "value": "B", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 2741, "end": 2748, "ctxt": 0 }, "typeAnnotation": { "type": "TsUnionType", "span": { "start": 2743, "end": 2748, "ctxt": 0 }, "types": [ { "type": "TsTypeReference", "span": { "start": 2743, "end": 2744, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2743, "end": 2744, "ctxt": 0 }, "value": "A", "optional": false }, "typeParams": null }, { "type": "TsTypeReference", "span": { "start": 2747, "end": 2748, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 2747, "end": 2748, "ctxt": 0 }, "value": "B", "optional": false }, "typeParams": null } ] } } }, { "type": "VariableDeclaration", "span": { "start": 2751, "end": 2791, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2755, "end": 2790, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2755, "end": 2758, "ctxt": 0 }, "value": "x20", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2761, "end": 2790, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2761, "end": 2765, "ctxt": 0 }, "value": "call", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 2766, "end": 2781, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2767, "end": 2768, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 2770, "end": 2771, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": null } ], "body": { "type": "BinaryExpression", "span": { "start": 2776, "end": 2781, "ctxt": 0 }, "operator": "+", "left": { "type": "Identifier", "span": { "start": 2776, "end": 2777, "ctxt": 0 }, "value": "x", "optional": false }, "right": { "type": "Identifier", "span": { "start": 2780, "end": 2781, "ctxt": 0 }, "value": "y", "optional": false } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2783, "end": 2785, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2787, "end": 2789, "ctxt": 0 }, "value": 20.0, "raw": "20" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2803, "end": 2848, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2807, "end": 2847, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2807, "end": 2810, "ctxt": 0 }, "value": "x21", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2813, "end": 2847, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2813, "end": 2817, "ctxt": 0 }, "value": "call", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 2818, "end": 2833, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 2819, "end": 2820, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 2822, "end": 2823, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": null } ], "body": { "type": "BinaryExpression", "span": { "start": 2828, "end": 2833, "ctxt": 0 }, "operator": "+", "left": { "type": "Identifier", "span": { "start": 2828, "end": 2829, "ctxt": 0 }, "value": "x", "optional": false }, "right": { "type": "Identifier", "span": { "start": 2832, "end": 2833, "ctxt": 0 }, "value": "y", "optional": false } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2835, "end": 2837, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2839, "end": 2846, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2860, "end": 2893, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2864, "end": 2892, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2864, "end": 2867, "ctxt": 0 }, "value": "x22", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2870, "end": 2892, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2870, "end": 2874, "ctxt": 0 }, "value": "call", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2875, "end": 2878, "ctxt": 0 }, "value": "f15", "optional": false } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2880, "end": 2887, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2889, "end": 2891, "ctxt": 0 }, "value": 42.0, "raw": "42" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2914, "end": 2947, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2918, "end": 2946, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2918, "end": 2921, "ctxt": 0 }, "value": "x23", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2924, "end": 2946, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2924, "end": 2928, "ctxt": 0 }, "value": "call", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 2929, "end": 2932, "ctxt": 0 }, "value": "f16", "optional": false } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 2934, "end": 2941, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 2943, "end": 2945, "ctxt": 0 }, "value": 42.0, "raw": "42" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 2960, "end": 3028, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 2964, "end": 3027, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 2964, "end": 2967, "ctxt": 0 }, "value": "x24", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 2970, "end": 3027, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 2970, "end": 2974, "ctxt": 0 }, "value": "call", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3010, "end": 3013, "ctxt": 0 }, "value": "f16", "optional": false } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3015, "end": 3022, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 3024, "end": 3026, "ctxt": 0 }, "value": 42.0, "raw": "42" } } ], "typeArguments": { "type": "TsTypeParameterInstantiation", "span": { "start": 2974, "end": 3009, "ctxt": 0 }, "params": [ { "type": "TsTupleType", "span": { "start": 2975, "end": 2991, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 2976, "end": 2982, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2976, "end": 2982, "ctxt": 0 }, "kind": "string" } }, { "type": "TsTupleElement", "span": { "start": 2984, "end": 2990, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 2984, "end": 2990, "ctxt": 0 }, "kind": "number" } } ] }, { "type": "TsUnionType", "span": { "start": 2993, "end": 3008, "ctxt": 0 }, "types": [ { "type": "TsKeywordType", "span": { "start": 2993, "end": 2999, "ctxt": 0 }, "kind": "string" }, { "type": "TsKeywordType", "span": { "start": 3002, "end": 3008, "ctxt": 0 }, "kind": "number" } ] } ] } }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3050, "end": 3087, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3054, "end": 3086, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3054, "end": 3057, "ctxt": 0 }, "value": "x30", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3060, "end": 3086, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3060, "end": 3065, "ctxt": 0 }, "value": "callr", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3066, "end": 3068, "ctxt": 0 }, "value": "sn", "optional": false } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 3070, "end": 3085, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3071, "end": 3072, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null }, { "type": "Identifier", "span": { "start": 3074, "end": 3075, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": null } ], "body": { "type": "BinaryExpression", "span": { "start": 3080, "end": 3085, "ctxt": 0 }, "operator": "+", "left": { "type": "Identifier", "span": { "start": 3080, "end": 3081, "ctxt": 0 }, "value": "x", "optional": false }, "right": { "type": "Identifier", "span": { "start": 3084, "end": 3085, "ctxt": 0 }, "value": "y", "optional": false } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3099, "end": 3124, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3103, "end": 3123, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3103, "end": 3106, "ctxt": 0 }, "value": "x31", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3109, "end": 3123, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3109, "end": 3114, "ctxt": 0 }, "value": "callr", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3115, "end": 3117, "ctxt": 0 }, "value": "sn", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3119, "end": 3122, "ctxt": 0 }, "value": "f15", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3145, "end": 3170, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3149, "end": 3169, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3149, "end": 3152, "ctxt": 0 }, "value": "x32", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3155, "end": 3169, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3155, "end": 3160, "ctxt": 0 }, "value": "callr", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3161, "end": 3163, "ctxt": 0 }, "value": "sn", "optional": false } }, { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3165, "end": 3168, "ctxt": 0 }, "value": "f16", "optional": false } } ], "typeArguments": null }, "definite": false } ] }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 3201, "end": 3205, "ctxt": 0 }, "value": "bind", "optional": false }, "declare": false, "params": [ { "type": "Parameter", "span": { "start": 3233, "end": 3259, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 3233, "end": 3259, "ctxt": 0 }, "value": "f", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3234, "end": 3259, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3236, "end": 3259, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3237, "end": 3241, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3238, "end": 3241, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3240, "end": 3241, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3240, "end": 3241, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } }, { "type": "RestElement", "span": { "start": 3243, "end": 3253, "ctxt": 0 }, "rest": { "start": 3243, "end": 3246, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 3246, "end": 3250, "ctxt": 0 }, "value": "rest", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3250, "end": 3253, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3252, "end": 3253, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3252, "end": 3253, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3255, "end": 3259, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3258, "end": 3259, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3258, "end": 3259, "ctxt": 0 }, "value": "V", "optional": false }, "typeParams": null } } } } } }, { "type": "Parameter", "span": { "start": 3261, "end": 3265, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 3261, "end": 3265, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3262, "end": 3265, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3264, "end": 3265, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3264, "end": 3265, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 3192, "end": 3312, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 3267, "end": 3312, "ctxt": 0 }, "stmts": [ { "type": "ReturnStatement", "span": { "start": 3273, "end": 3310, "ctxt": 0 }, "argument": { "type": "ArrowFunctionExpression", "span": { "start": 3280, "end": 3309, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 3281, "end": 3291, "ctxt": 0 }, "rest": { "start": 3281, "end": 3284, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 3284, "end": 3288, "ctxt": 0 }, "value": "rest", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3288, "end": 3291, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 3290, "end": 3291, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 3290, "end": 3291, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } ], "body": { "type": "CallExpression", "span": { "start": 3296, "end": 3309, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3296, "end": 3297, "ctxt": 0 }, "value": "f", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3298, "end": 3299, "ctxt": 0 }, "value": "x", "optional": false } }, { "spread": { "start": 3301, "end": 3304, "ctxt": 0 }, "expression": { "type": "Identifier", "span": { "start": 3304, "end": 3308, "ctxt": 0 }, "value": "rest", "optional": false } } ], "typeArguments": null }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ] }, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 3205, "end": 3232, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 3206, "end": 3207, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3206, "end": 3207, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3209, "end": 3228, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3209, "end": 3210, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 3219, "end": 3228, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 3219, "end": 3226, "ctxt": 0 }, "kind": "unknown" } }, "default": null }, { "type": "TsTypeParameter", "span": { "start": 3230, "end": 3231, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 3230, "end": 3231, "ctxt": 0 }, "value": "V", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "returnType": null }, { "type": "VariableDeclaration", "span": { "start": 3314, "end": 3380, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3328, "end": 3379, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3328, "end": 3331, "ctxt": 0 }, "value": "f20", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3331, "end": 3379, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3333, "end": 3379, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3334, "end": 3343, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3335, "end": 3343, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3337, "end": 3343, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 3345, "end": 3354, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3346, "end": 3354, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3348, "end": 3354, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 3356, "end": 3366, "ctxt": 0 }, "value": "z", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3357, "end": 3366, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3359, "end": 3366, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3368, "end": 3379, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 3371, "end": 3379, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 3371, "end": 3377, "ctxt": 0 }, "kind": "string" } } } } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3382, "end": 3408, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3388, "end": 3407, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3388, "end": 3391, "ctxt": 0 }, "value": "f21", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3394, "end": 3407, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3394, "end": 3398, "ctxt": 0 }, "value": "bind", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3399, "end": 3402, "ctxt": 0 }, "value": "f20", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 3404, "end": 3406, "ctxt": 0 }, "value": 42.0, "raw": "42" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3449, "end": 3480, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3455, "end": 3479, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3455, "end": 3458, "ctxt": 0 }, "value": "f22", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3461, "end": 3479, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3461, "end": 3465, "ctxt": 0 }, "value": "bind", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3466, "end": 3469, "ctxt": 0 }, "value": "f21", "optional": false } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3471, "end": 3478, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3510, "end": 3538, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3516, "end": 3537, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3516, "end": 3519, "ctxt": 0 }, "value": "f23", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3522, "end": 3537, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3522, "end": 3526, "ctxt": 0 }, "value": "bind", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3527, "end": 3530, "ctxt": 0 }, "value": "f22", "optional": false } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 3532, "end": 3536, "ctxt": 0 }, "value": true } } ], "typeArguments": null }, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 3559, "end": 3582, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3559, "end": 3581, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3559, "end": 3562, "ctxt": 0 }, "value": "f20", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 3563, "end": 3565, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3567, "end": 3574, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 3576, "end": 3580, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3583, "end": 3602, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3583, "end": 3601, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3583, "end": 3586, "ctxt": 0 }, "value": "f21", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3587, "end": 3594, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 3596, "end": 3600, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3603, "end": 3613, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3603, "end": 3612, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3603, "end": 3606, "ctxt": 0 }, "value": "f22", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 3607, "end": 3611, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3614, "end": 3620, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3614, "end": 3619, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3614, "end": 3617, "ctxt": 0 }, "value": "f23", "optional": false }, "arguments": [], "typeArguments": null } }, { "type": "VariableDeclaration", "span": { "start": 3622, "end": 3690, "ctxt": 0 }, "kind": "const", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3636, "end": 3689, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3636, "end": 3639, "ctxt": 0 }, "value": "g20", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3639, "end": 3689, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 3641, "end": 3689, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 3642, "end": 3651, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3643, "end": 3651, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3645, "end": 3651, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 3653, "end": 3663, "ctxt": 0 }, "value": "y", "optional": true, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3655, "end": 3663, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3657, "end": 3663, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 3665, "end": 3676, "ctxt": 0 }, "value": "z", "optional": true, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3667, "end": 3676, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 3669, "end": 3676, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 3678, "end": 3689, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 3681, "end": 3689, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 3681, "end": 3687, "ctxt": 0 }, "kind": "string" } } } } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3692, "end": 3718, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3698, "end": 3717, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3698, "end": 3701, "ctxt": 0 }, "value": "g21", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3704, "end": 3717, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3704, "end": 3708, "ctxt": 0 }, "value": "bind", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3709, "end": 3712, "ctxt": 0 }, "value": "g20", "optional": false } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 3714, "end": 3716, "ctxt": 0 }, "value": 42.0, "raw": "42" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3759, "end": 3790, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3765, "end": 3789, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3765, "end": 3768, "ctxt": 0 }, "value": "g22", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3771, "end": 3789, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3771, "end": 3775, "ctxt": 0 }, "value": "bind", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3776, "end": 3779, "ctxt": 0 }, "value": "g21", "optional": false } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3781, "end": 3788, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 3820, "end": 3848, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 3826, "end": 3847, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 3826, "end": 3829, "ctxt": 0 }, "value": "g23", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 3832, "end": 3847, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3832, "end": 3836, "ctxt": 0 }, "value": "bind", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 3837, "end": 3840, "ctxt": 0 }, "value": "g22", "optional": false } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 3842, "end": 3846, "ctxt": 0 }, "value": true } } ], "typeArguments": null }, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 3869, "end": 3892, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3869, "end": 3891, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3869, "end": 3872, "ctxt": 0 }, "value": "g20", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 3873, "end": 3875, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3877, "end": 3884, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 3886, "end": 3890, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3893, "end": 3910, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3893, "end": 3909, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3893, "end": 3896, "ctxt": 0 }, "value": "g20", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 3897, "end": 3899, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3901, "end": 3908, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3911, "end": 3919, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3911, "end": 3918, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3911, "end": 3914, "ctxt": 0 }, "value": "g20", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 3915, "end": 3917, "ctxt": 0 }, "value": 42.0, "raw": "42" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3920, "end": 3939, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3920, "end": 3938, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3920, "end": 3923, "ctxt": 0 }, "value": "g21", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3924, "end": 3931, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } }, { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 3933, "end": 3937, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3940, "end": 3953, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3940, "end": 3952, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3940, "end": 3943, "ctxt": 0 }, "value": "g21", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 3944, "end": 3951, "ctxt": 0 }, "value": "hello", "raw": "\"hello\"" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3954, "end": 3960, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3954, "end": 3959, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3954, "end": 3957, "ctxt": 0 }, "value": "g21", "optional": false }, "arguments": [], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3961, "end": 3971, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3961, "end": 3970, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3961, "end": 3964, "ctxt": 0 }, "value": "g22", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "BooleanLiteral", "span": { "start": 3965, "end": 3969, "ctxt": 0 }, "value": true } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3972, "end": 3978, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3972, "end": 3977, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3972, "end": 3975, "ctxt": 0 }, "value": "g22", "optional": false }, "arguments": [], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 3979, "end": 3985, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 3979, "end": 3984, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 3979, "end": 3982, "ctxt": 0 }, "value": "g23", "optional": false }, "arguments": [], "typeArguments": null } }, { "type": "FunctionDeclaration", "identifier": { "type": "Identifier", "span": { "start": 4004, "end": 4007, "ctxt": 0 }, "value": "f30", "optional": false }, "declare": true, "params": [ { "type": "Parameter", "span": { "start": 4040, "end": 4044, "ctxt": 0 }, "decorators": [], "pat": { "type": "Identifier", "span": { "start": 4040, "end": 4044, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4041, "end": 4044, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4043, "end": 4044, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4043, "end": 4044, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } }, { "type": "Parameter", "span": { "start": 4046, "end": 4056, "ctxt": 0 }, "decorators": [], "pat": { "type": "RestElement", "span": { "start": 4046, "end": 4056, "ctxt": 0 }, "rest": { "start": 4046, "end": 4049, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4049, "end": 4053, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4053, "end": 4056, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4055, "end": 4056, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4055, "end": 4056, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } } } ], "decorators": [], "span": { "start": 3987, "end": 4061, "ctxt": 0 }, "body": null, "generator": false, "async": false, "typeParameters": { "type": "TsTypeParameterDeclaration", "span": { "start": 4007, "end": 4039, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4008, "end": 4009, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4008, "end": 4009, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null }, { "type": "TsTypeParameter", "span": { "start": 4011, "end": 4038, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4011, "end": 4012, "ctxt": 0 }, "value": "U", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 4021, "end": 4038, "ctxt": 0 }, "elemType": { "type": "TsParenthesizedType", "span": { "start": 4021, "end": 4036, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 4022, "end": 4035, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4023, "end": 4027, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4024, "end": 4027, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4026, "end": 4027, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4026, "end": 4027, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4029, "end": 4035, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4032, "end": 4035, "ctxt": 0 }, "kind": "any" } } } } }, "default": null } ] }, "returnType": { "type": "TsTypeAnnotation", "span": { "start": 4057, "end": 4060, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4059, "end": 4060, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4059, "end": 4060, "ctxt": 0 }, "value": "U", "optional": false }, "typeParams": null } } }, { "type": "VariableDeclaration", "span": { "start": 4063, "end": 4108, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 4069, "end": 4107, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 4069, "end": 4072, "ctxt": 0 }, "value": "c30", "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 4075, "end": 4107, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 4075, "end": 4078, "ctxt": 0 }, "value": "f30", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 4079, "end": 4081, "ctxt": 0 }, "value": 42.0, "raw": "42" } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 4083, "end": 4094, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4083, "end": 4084, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null } ], "body": { "type": "BinaryExpression", "span": { "start": 4088, "end": 4094, "ctxt": 0 }, "operator": "+", "left": { "type": "StringLiteral", "span": { "start": 4088, "end": 4090, "ctxt": 0 }, "value": "", "raw": "\"\"" }, "right": { "type": "Identifier", "span": { "start": 4093, "end": 4094, "ctxt": 0 }, "value": "x", "optional": false } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } }, { "spread": null, "expression": { "type": "ArrowFunctionExpression", "span": { "start": 4096, "end": 4106, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4096, "end": 4097, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": null } ], "body": { "type": "BinaryExpression", "span": { "start": 4101, "end": 4106, "ctxt": 0 }, "operator": "+", "left": { "type": "Identifier", "span": { "start": 4101, "end": 4102, "ctxt": 0 }, "value": "x", "optional": false }, "right": { "type": "NumericLiteral", "span": { "start": 4105, "end": 4106, "ctxt": 0 }, "value": 1.0, "raw": "1" } }, "async": false, "generator": false, "typeParameters": null, "returnType": null } } ], "typeArguments": null }, "definite": false } ] }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4161, "end": 4227, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4166, "end": 4169, "ctxt": 0 }, "value": "T01", "optional": false }, "typeParams": null, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4172, "end": 4226, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4172, "end": 4182, "ctxt": 0 }, "value": "Parameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4182, "end": 4226, "ctxt": 0 }, "params": [ { "type": "TsFunctionType", "span": { "start": 4183, "end": 4225, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4184, "end": 4193, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4185, "end": 4193, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4187, "end": 4193, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 4195, "end": 4204, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4196, "end": 4204, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4198, "end": 4204, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 4206, "end": 4216, "ctxt": 0 }, "value": "z", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4207, "end": 4216, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4209, "end": 4216, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4218, "end": 4225, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4221, "end": 4225, "ctxt": 0 }, "kind": "void" } } } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4228, "end": 4296, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4233, "end": 4236, "ctxt": 0 }, "value": "T02", "optional": false }, "typeParams": null, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4239, "end": 4295, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4239, "end": 4249, "ctxt": 0 }, "value": "Parameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4249, "end": 4295, "ctxt": 0 }, "params": [ { "type": "TsFunctionType", "span": { "start": 4250, "end": 4294, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4251, "end": 4285, "ctxt": 0 }, "rest": { "start": 4251, "end": 4254, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4254, "end": 4258, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4258, "end": 4285, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 4260, "end": 4285, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 4261, "end": 4267, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 4261, "end": 4267, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 4269, "end": 4275, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 4269, "end": 4275, "ctxt": 0 }, "kind": "string" } }, { "type": "TsTupleElement", "span": { "start": 4277, "end": 4284, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 4277, "end": 4284, "ctxt": 0 }, "kind": "boolean" } } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4287, "end": 4294, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4290, "end": 4294, "ctxt": 0 }, "kind": "void" } } } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4297, "end": 4378, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4302, "end": 4305, "ctxt": 0 }, "value": "T03", "optional": false }, "typeParams": null, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4308, "end": 4377, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4308, "end": 4329, "ctxt": 0 }, "value": "ConstructorParameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4329, "end": 4377, "ctxt": 0 }, "params": [ { "type": "TsConstructorType", "span": { "start": 4330, "end": 4376, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 4335, "end": 4344, "ctxt": 0 }, "value": "x", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4336, "end": 4344, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4338, "end": 4344, "ctxt": 0 }, "kind": "number" } } }, { "type": "Identifier", "span": { "start": 4346, "end": 4355, "ctxt": 0 }, "value": "y", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4347, "end": 4355, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4349, "end": 4355, "ctxt": 0 }, "kind": "string" } } }, { "type": "Identifier", "span": { "start": 4357, "end": 4367, "ctxt": 0 }, "value": "z", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4358, "end": 4367, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4360, "end": 4367, "ctxt": 0 }, "kind": "boolean" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4369, "end": 4376, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4372, "end": 4376, "ctxt": 0 }, "kind": "void" } }, "isAbstract": false } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4379, "end": 4462, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4384, "end": 4387, "ctxt": 0 }, "value": "T04", "optional": false }, "typeParams": null, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4390, "end": 4461, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4390, "end": 4411, "ctxt": 0 }, "value": "ConstructorParameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4411, "end": 4461, "ctxt": 0 }, "params": [ { "type": "TsConstructorType", "span": { "start": 4412, "end": 4460, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4417, "end": 4451, "ctxt": 0 }, "rest": { "start": 4417, "end": 4420, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4420, "end": 4424, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4424, "end": 4451, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 4426, "end": 4451, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 4427, "end": 4433, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 4427, "end": 4433, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 4435, "end": 4441, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 4435, "end": 4441, "ctxt": 0 }, "kind": "string" } }, { "type": "TsTupleElement", "span": { "start": 4443, "end": 4450, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 4443, "end": 4450, "ctxt": 0 }, "kind": "boolean" } } ] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4453, "end": 4460, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4456, "end": 4460, "ctxt": 0 }, "kind": "void" } }, "isAbstract": false } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4463, "end": 4512, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4468, "end": 4471, "ctxt": 0 }, "value": "T05", "optional": false }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4471, "end": 4474, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4472, "end": 4473, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4472, "end": 4473, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4477, "end": 4511, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4477, "end": 4487, "ctxt": 0 }, "value": "Parameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4487, "end": 4511, "ctxt": 0 }, "params": [ { "type": "TsFunctionType", "span": { "start": 4488, "end": 4510, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4489, "end": 4501, "ctxt": 0 }, "rest": { "start": 4489, "end": 4492, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4492, "end": 4496, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4496, "end": 4501, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 4498, "end": 4501, "ctxt": 0 }, "elemType": { "type": "TsTypeReference", "span": { "start": 4498, "end": 4499, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4498, "end": 4499, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4503, "end": 4510, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4506, "end": 4510, "ctxt": 0 }, "kind": "void" } } } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4513, "end": 4576, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4518, "end": 4521, "ctxt": 0 }, "value": "T06", "optional": false }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4521, "end": 4524, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4522, "end": 4523, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4522, "end": 4523, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4527, "end": 4575, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4527, "end": 4548, "ctxt": 0 }, "value": "ConstructorParameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4548, "end": 4575, "ctxt": 0 }, "params": [ { "type": "TsConstructorType", "span": { "start": 4549, "end": 4574, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4554, "end": 4565, "ctxt": 0 }, "rest": { "start": 4554, "end": 4557, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4557, "end": 4561, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4561, "end": 4565, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 4563, "end": 4565, "ctxt": 0 }, "elemTypes": [] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4567, "end": 4574, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4570, "end": 4574, "ctxt": 0 }, "kind": "void" } }, "isAbstract": false } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4577, "end": 4638, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4582, "end": 4585, "ctxt": 0 }, "value": "T07", "optional": false }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4585, "end": 4602, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4586, "end": 4601, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4586, "end": 4587, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 4596, "end": 4601, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 4596, "end": 4599, "ctxt": 0 }, "kind": "any" } }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4605, "end": 4637, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4605, "end": 4615, "ctxt": 0 }, "value": "Parameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4615, "end": 4637, "ctxt": 0 }, "params": [ { "type": "TsFunctionType", "span": { "start": 4616, "end": 4636, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4617, "end": 4627, "ctxt": 0 }, "rest": { "start": 4617, "end": 4620, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4620, "end": 4624, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4624, "end": 4627, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4626, "end": 4627, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4626, "end": 4627, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4629, "end": 4636, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4632, "end": 4636, "ctxt": 0 }, "kind": "void" } } } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4639, "end": 4715, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4644, "end": 4647, "ctxt": 0 }, "value": "T08", "optional": false }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4647, "end": 4664, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4648, "end": 4663, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4648, "end": 4649, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsArrayType", "span": { "start": 4658, "end": 4663, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 4658, "end": 4661, "ctxt": 0 }, "kind": "any" } }, "default": null } ] }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4667, "end": 4714, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4667, "end": 4688, "ctxt": 0 }, "value": "ConstructorParameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4688, "end": 4714, "ctxt": 0 }, "params": [ { "type": "TsConstructorType", "span": { "start": 4689, "end": 4713, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 4694, "end": 4704, "ctxt": 0 }, "rest": { "start": 4694, "end": 4697, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4697, "end": 4701, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4701, "end": 4704, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4703, "end": 4704, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4703, "end": 4704, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4706, "end": 4713, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4709, "end": 4713, "ctxt": 0 }, "kind": "void" } }, "isAbstract": false } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4716, "end": 4748, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4721, "end": 4724, "ctxt": 0 }, "value": "T09", "optional": false }, "typeParams": null, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4727, "end": 4747, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4727, "end": 4737, "ctxt": 0 }, "value": "Parameters", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 4737, "end": 4747, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 4738, "end": 4746, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4738, "end": 4746, "ctxt": 0 }, "value": "Function", "optional": false }, "typeParams": null } ] } } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4750, "end": 4865, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4755, "end": 4762, "ctxt": 0 }, "value": "Record1", "optional": false }, "typeParams": null, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 4765, "end": 4865, "ctxt": 0 }, "members": [ { "type": "TsPropertySignature", "span": { "start": 4769, "end": 4802, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4769, "end": 4773, "ctxt": 0 }, "value": "move", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4773, "end": 4801, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 4775, "end": 4801, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 4776, "end": 4782, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 4776, "end": 4782, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 4784, "end": 4800, "ctxt": 0 }, "label": null, "ty": { "type": "TsUnionType", "span": { "start": 4784, "end": 4800, "ctxt": 0 }, "types": [ { "type": "TsLiteralType", "span": { "start": 4784, "end": 4790, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 4784, "end": 4790, "ctxt": 0 }, "value": "left", "raw": "'left'" } }, { "type": "TsLiteralType", "span": { "start": 4793, "end": 4800, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 4793, "end": 4800, "ctxt": 0 }, "value": "right", "raw": "'right'" } } ] } } ] } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 4805, "end": 4835, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4805, "end": 4809, "ctxt": 0 }, "value": "jump", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4809, "end": 4834, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 4811, "end": 4834, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 4812, "end": 4818, "ctxt": 0 }, "label": null, "ty": { "type": "TsKeywordType", "span": { "start": 4812, "end": 4818, "ctxt": 0 }, "kind": "number" } }, { "type": "TsTupleElement", "span": { "start": 4820, "end": 4833, "ctxt": 0 }, "label": null, "ty": { "type": "TsUnionType", "span": { "start": 4820, "end": 4833, "ctxt": 0 }, "types": [ { "type": "TsLiteralType", "span": { "start": 4820, "end": 4824, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 4820, "end": 4824, "ctxt": 0 }, "value": "up", "raw": "'up'" } }, { "type": "TsLiteralType", "span": { "start": 4827, "end": 4833, "ctxt": 0 }, "literal": { "type": "StringLiteral", "span": { "start": 4827, "end": 4833, "ctxt": 0 }, "value": "down", "raw": "'down'" } } ] } } ] } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 4838, "end": 4851, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4838, "end": 4842, "ctxt": 0 }, "value": "stop", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4842, "end": 4850, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4844, "end": 4850, "ctxt": 0 }, "kind": "string" } }, "typeParams": null }, { "type": "TsPropertySignature", "span": { "start": 4854, "end": 4863, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4854, "end": 4858, "ctxt": 0 }, "value": "done", "optional": false }, "computed": false, "optional": false, "init": null, "params": [], "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4858, "end": 4862, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 4860, "end": 4862, "ctxt": 0 }, "elemTypes": [] } }, "typeParams": null } ] } }, { "type": "TsTypeAliasDeclaration", "span": { "start": 4867, "end": 4988, "ctxt": 0 }, "declare": false, "id": { "type": "Identifier", "span": { "start": 4872, "end": 4881, "ctxt": 0 }, "value": "EventType", "optional": false }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4881, "end": 4884, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4882, "end": 4883, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4882, "end": 4883, "ctxt": 0 }, "value": "T", "optional": false }, "in": false, "out": false, "constraint": null, "default": null } ] }, "typeAnnotation": { "type": "TsTypeLiteral", "span": { "start": 4887, "end": 4988, "ctxt": 0 }, "members": [ { "type": "TsMethodSignature", "span": { "start": 4891, "end": 4985, "ctxt": 0 }, "readonly": false, "key": { "type": "Identifier", "span": { "start": 4891, "end": 4895, "ctxt": 0 }, "value": "emit", "optional": false }, "computed": false, "optional": false, "params": [ { "type": "Identifier", "span": { "start": 4925, "end": 4929, "ctxt": 0 }, "value": "e", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4926, "end": 4929, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4928, "end": 4929, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4928, "end": 4929, "ctxt": 0 }, "value": "K", "optional": false }, "typeParams": null } } }, { "type": "RestElement", "span": { "start": 4931, "end": 4977, "ctxt": 0 }, "rest": { "start": 4931, "end": 4934, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 4934, "end": 4941, "ctxt": 0 }, "value": "payload", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 4941, "end": 4977, "ctxt": 0 }, "typeAnnotation": { "type": "TsConditionalType", "span": { "start": 4943, "end": 4977, "ctxt": 0 }, "checkType": { "type": "TsIndexedAccessType", "span": { "start": 4943, "end": 4947, "ctxt": 0 }, "readonly": false, "objectType": { "type": "TsTypeReference", "span": { "start": 4943, "end": 4944, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4943, "end": 4944, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, "indexType": { "type": "TsTypeReference", "span": { "start": 4945, "end": 4946, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4945, "end": 4946, "ctxt": 0 }, "value": "K", "optional": false }, "typeParams": null } }, "extendsType": { "type": "TsArrayType", "span": { "start": 4956, "end": 4961, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 4956, "end": 4959, "ctxt": 0 }, "kind": "any" } }, "trueType": { "type": "TsIndexedAccessType", "span": { "start": 4964, "end": 4968, "ctxt": 0 }, "readonly": false, "objectType": { "type": "TsTypeReference", "span": { "start": 4964, "end": 4965, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4964, "end": 4965, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, "indexType": { "type": "TsTypeReference", "span": { "start": 4966, "end": 4967, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4966, "end": 4967, "ctxt": 0 }, "value": "K", "optional": false }, "typeParams": null } }, "falseType": { "type": "TsTupleType", "span": { "start": 4971, "end": 4977, "ctxt": 0 }, "elemTypes": [ { "type": "TsTupleElement", "span": { "start": 4972, "end": 4976, "ctxt": 0 }, "label": null, "ty": { "type": "TsIndexedAccessType", "span": { "start": 4972, "end": 4976, "ctxt": 0 }, "readonly": false, "objectType": { "type": "TsTypeReference", "span": { "start": 4972, "end": 4973, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4972, "end": 4973, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null }, "indexType": { "type": "TsTypeReference", "span": { "start": 4974, "end": 4975, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4974, "end": 4975, "ctxt": 0 }, "value": "K", "optional": false }, "typeParams": null } } } ] } } } } ], "typeAnn": { "type": "TsTypeAnnotation", "span": { "start": 4978, "end": 4984, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 4980, "end": 4984, "ctxt": 0 }, "kind": "void" } }, "typeParams": { "type": "TsTypeParameterDeclaration", "span": { "start": 4895, "end": 4924, "ctxt": 0 }, "parameters": [ { "type": "TsTypeParameter", "span": { "start": 4896, "end": 4923, "ctxt": 0 }, "name": { "type": "Identifier", "span": { "start": 4896, "end": 4897, "ctxt": 0 }, "value": "K", "optional": false }, "in": false, "out": false, "constraint": { "type": "TsTypeOperator", "span": { "start": 4906, "end": 4913, "ctxt": 0 }, "op": "keyof", "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4912, "end": 4913, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4912, "end": 4913, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } }, "default": { "type": "TsTypeOperator", "span": { "start": 4916, "end": 4923, "ctxt": 0 }, "op": "keyof", "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 4922, "end": 4923, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 4922, "end": 4923, "ctxt": 0 }, "value": "T", "optional": false }, "typeParams": null } } } ] } } ] } }, { "type": "VariableDeclaration", "span": { "start": 4990, "end": 5029, "ctxt": 0 }, "kind": "var", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5002, "end": 5028, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5002, "end": 5008, "ctxt": 0 }, "value": "events", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5008, "end": 5028, "ctxt": 0 }, "typeAnnotation": { "type": "TsTypeReference", "span": { "start": 5010, "end": 5028, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5010, "end": 5019, "ctxt": 0 }, "value": "EventType", "optional": false }, "typeParams": { "type": "TsTypeParameterInstantiation", "span": { "start": 5019, "end": 5028, "ctxt": 0 }, "params": [ { "type": "TsTypeReference", "span": { "start": 5020, "end": 5027, "ctxt": 0 }, "typeName": { "type": "Identifier", "span": { "start": 5020, "end": 5027, "ctxt": 0 }, "value": "Record1", "optional": false }, "typeParams": null } ] } } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 5030, "end": 5062, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 5030, "end": 5061, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 5030, "end": 5041, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 5030, "end": 5036, "ctxt": 0 }, "value": "events", "optional": false }, "property": { "type": "Identifier", "span": { "start": 5037, "end": 5041, "ctxt": 0 }, "value": "emit", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 5042, "end": 5048, "ctxt": 0 }, "value": "move", "raw": "'move'" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 5050, "end": 5052, "ctxt": 0 }, "value": 10.0, "raw": "10" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 5054, "end": 5060, "ctxt": 0 }, "value": "left", "raw": "'left'" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 5063, "end": 5093, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 5063, "end": 5092, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 5063, "end": 5074, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 5063, "end": 5069, "ctxt": 0 }, "value": "events", "optional": false }, "property": { "type": "Identifier", "span": { "start": 5070, "end": 5074, "ctxt": 0 }, "value": "emit", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 5075, "end": 5081, "ctxt": 0 }, "value": "jump", "raw": "'jump'" } }, { "spread": null, "expression": { "type": "NumericLiteral", "span": { "start": 5083, "end": 5085, "ctxt": 0 }, "value": 20.0, "raw": "20" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 5087, "end": 5091, "ctxt": 0 }, "value": "up", "raw": "'up'" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 5094, "end": 5122, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 5094, "end": 5121, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 5094, "end": 5105, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 5094, "end": 5100, "ctxt": 0 }, "value": "events", "optional": false }, "property": { "type": "Identifier", "span": { "start": 5101, "end": 5105, "ctxt": 0 }, "value": "emit", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 5106, "end": 5112, "ctxt": 0 }, "value": "stop", "raw": "'stop'" } }, { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 5114, "end": 5120, "ctxt": 0 }, "value": "Bye!", "raw": "'Bye!'" } } ], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 5123, "end": 5143, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 5123, "end": 5142, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 5123, "end": 5134, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 5123, "end": 5129, "ctxt": 0 }, "value": "events", "optional": false }, "property": { "type": "Identifier", "span": { "start": 5130, "end": 5134, "ctxt": 0 }, "value": "emit", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 5135, "end": 5141, "ctxt": 0 }, "value": "done", "raw": "'done'" } } ], "typeArguments": null } }, { "type": "VariableDeclaration", "span": { "start": 5167, "end": 5210, "ctxt": 0 }, "kind": "var", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5179, "end": 5209, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5179, "end": 5182, "ctxt": 0 }, "value": "ff1", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5182, "end": 5209, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 5184, "end": 5209, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 5185, "end": 5200, "ctxt": 0 }, "rest": { "start": 5185, "end": 5188, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 5189, "end": 5193, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5193, "end": 5200, "ctxt": 0 }, "typeAnnotation": { "type": "TsArrayType", "span": { "start": 5195, "end": 5200, "ctxt": 0 }, "elemType": { "type": "TsKeywordType", "span": { "start": 5195, "end": 5198, "ctxt": 0 }, "kind": "any" } } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5202, "end": 5209, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5205, "end": 5209, "ctxt": 0 }, "kind": "void" } } } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5212, "end": 5240, "ctxt": 0 }, "kind": "var", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5224, "end": 5239, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5224, "end": 5227, "ctxt": 0 }, "value": "ff2", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5227, "end": 5239, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 5229, "end": 5239, "ctxt": 0 }, "params": [], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5232, "end": 5239, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5235, "end": 5239, "ctxt": 0 }, "kind": "void" } } } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5241, "end": 5280, "ctxt": 0 }, "kind": "var", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5253, "end": 5279, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5253, "end": 5256, "ctxt": 0 }, "value": "ff3", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5256, "end": 5279, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 5258, "end": 5279, "ctxt": 0 }, "params": [ { "type": "RestElement", "span": { "start": 5259, "end": 5270, "ctxt": 0 }, "rest": { "start": 5259, "end": 5262, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 5262, "end": 5266, "ctxt": 0 }, "value": "args", "optional": false, "typeAnnotation": null }, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5266, "end": 5270, "ctxt": 0 }, "typeAnnotation": { "type": "TsTupleType", "span": { "start": 5268, "end": 5270, "ctxt": 0 }, "elemTypes": [] } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5272, "end": 5279, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5275, "end": 5279, "ctxt": 0 }, "kind": "void" } } } } }, "init": null, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 5281, "end": 5317, "ctxt": 0 }, "kind": "var", "declare": true, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 5293, "end": 5316, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 5293, "end": 5296, "ctxt": 0 }, "value": "ff4", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5296, "end": 5316, "ctxt": 0 }, "typeAnnotation": { "type": "TsFunctionType", "span": { "start": 5298, "end": 5316, "ctxt": 0 }, "params": [ { "type": "Identifier", "span": { "start": 5299, "end": 5307, "ctxt": 0 }, "value": "a", "optional": false, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5300, "end": 5307, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5302, "end": 5307, "ctxt": 0 }, "kind": "never" } } } ], "typeParams": null, "typeAnnotation": { "type": "TsTypeAnnotation", "span": { "start": 5309, "end": 5316, "ctxt": 0 }, "typeAnnotation": { "type": "TsKeywordType", "span": { "start": 5312, "end": 5316, "ctxt": 0 }, "kind": "void" } } } } }, "init": null, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 5319, "end": 5329, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 5319, "end": 5328, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 5319, "end": 5322, "ctxt": 0 }, "value": "ff1", "optional": false, "typeAnnotation": null }, "right": { "type": "Identifier", "span": { "start": 5325, "end": 5328, "ctxt": 0 }, "value": "ff2", "optional": false } } }, { "type": "ExpressionStatement", "span": { "start": 5330, "end": 5340, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 5330, "end": 5339, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 5330, "end": 5333, "ctxt": 0 }, "value": "ff1", "optional": false, "typeAnnotation": null }, "right": { "type": "Identifier", "span": { "start": 5336, "end": 5339, "ctxt": 0 }, "value": "ff3", "optional": false } } }, { "type": "ExpressionStatement", "span": { "start": 5341, "end": 5351, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 5341, "end": 5350, "ctxt": 0 }, "operator": "=", "left": { "type": "Identifier", "span": { "start": 5341, "end": 5344, "ctxt": 0 }, "value": "ff1", "optional": false, "typeAnnotation": null }, "right": { "type": "Identifier", "span": { "start": 5347, "end": 5350, "ctxt": 0 }, "value": "ff4", "optional": false } } } ], "interpreter": null }