{"ScriptPreparationCode":"var arr = Array(5000).fill([0, [1], 2]);","TestCases":[{"Name":"Custom .flatten()2","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]);\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]);\r\n","IsDeferred":false}]}