{"ScriptPreparationCode":"let c1 = 0;\r\nfunction f1() {\r\n \t\u0027use strict\u0027;\r\n\tc1\u002B\u002B;\r\n}\r\n\r\nlet c2 = 0;\r\nfunction f2() {\r\n \t\u0027use strict\u0027;\r\n\tc2\u002B\u002B;\r\n}\r\n\r\nlet c3 = 0;\r\nfunction f3() {\r\n \t\u0027use strict\u0027;\r\n\tc3\u002B\u002B;\r\n}\r\n\r\nlet c4 = 0;\r\nfunction f4() {\r\n \t\u0027use strict\u0027;\r\n\tc4\u002B\u002B;\r\n}\r\n\r\nfunction testRestArgsSpread(...args) {\r\n \tf1(...args);\r\n}\r\n\r\nfunction testRestArgsApply(...args) {\r\n \tf2.apply(undefined, args);\r\n}\r\n\r\nfunction testArgumentsSpread() {\r\n \tf3(...arguments);\r\n}\r\n\r\nfunction testArgumentsApply() {\r\n \tf4.apply(undefined, arguments);\r\n}\r\n","TestCases":[{"Name":"rest args spread","Code":"testRestArgsSpread(\u0027a\u0027, 1, \u0027b\u0027, 2, \u0027c\u0027, 3);","IsDeferred":false},{"Name":"rest args apply","Code":"testRestArgsApply(\u0027a\u0027, 1, \u0027b\u0027, 2, \u0027c\u0027, 3);","IsDeferred":false},{"Name":"arguments spread","Code":"testArgumentsSpread(\u0027a\u0027, 1, \u0027b\u0027, 2, \u0027c\u0027, 3);","IsDeferred":false},{"Name":"arguments apply","Code":"testArgumentsApply(\u0027a\u0027, 1, \u0027b\u0027, 2, \u0027c\u0027, 3);","IsDeferred":false}]}