{"ScriptPreparationCode":"var arr = Array(5000).fill(1);","TestCases":[{"Name":"ECMA .flat()","Code":"function flatten(list) {\r\n return list.flat(9999)\r\n}\r\n\r\nflatten(arr);\r\n","IsDeferred":false},{"Name":"Custom .flatten()","Code":"function flatten(list, dst) {\r\n if (dst === undefined) dst = list;\r\n for (let i = 0; i \u003C list.length; i\u002B\u002B) {\r\n let item = list[i];\r\n if (Array.isArray(item)) {\r\n // we need to inline it.\r\n if (dst === list) {\r\n // Our assumption that the list was already flat was wrong and\r\n // we need to clone flat since we need to write to it.\r\n dst = list.slice(0, i);\r\n }\r\n flatten(item, dst);\r\n } else if (dst !== list) {\r\n dst.push(item);\r\n }\r\n }\r\n return dst;\r\n}\r\n\r\nflatten(arr);","IsDeferred":false}]}