{"ScriptPreparationCode":"const doc = document.createDocumentFragment()\r\nconst parser = new DOMParser\r\nlet temp\r\nlet div\r\nlet range\r\nlet html = \u0060\u003Cdiv\u003E${\u0027\u003Cbutton\u003Ehii\u003C/button\u003E\u0027.repeat(200)}\u003C/div\u003E\u0060\r\nfunction go(parseMode) {\r\n switch (parseMode) {\r\n case \u0027DOMParser\u0027:\r\n var element = document.adoptNode(parser.parseFromString(html, \u0027text/html\u0027).body.firstElementChild)\r\n break\r\n case \u0027write\u0027: {\r\n let doc = document.implementation.createHTMLDocument()\r\n doc.write(html)\r\n var element = document.adoptNode(doc.body.firstElementChild)\r\n }\r\n break\r\n case \u0027setHTMLUnsafe\u0027: {\r\n temp ??= document.createElement(\u0027template\u0027)\r\n temp.setHTMLUnsafe(html)\r\n var element = document.adoptNode(temp.content.firstElementChild)\r\n }\r\n break\r\n case \u0027innerHTML\u0027: {\r\n div ??= document.createElement(\u0027div\u0027)\r\n div.innerHTML = html\r\n var element = div.removeChild(div.firstElementChild)\r\n }\r\n break\r\n case \u0027createHTMLDocument\u0027: {\r\n let n = document.implementation.createHTMLDocument()\r\n n.body.innerHTML = html\r\n var element = document.adoptNode(n.body.firstElementChild)\r\n }\r\n break\r\n case \u0027createRange\u0027:\r\n var element = document.adoptNode((range ??= document.createRange()).createContextualFragment(html).firstElementChild)\r\n break\r\n case \u0027template\u0027: {\r\n temp ??= document.createElement(\u0027template\u0027)\r\n temp.innerHTML = html\r\n var element = document.adoptNode(temp.content.firstElementChild)\r\n }\r\n break\r\n case \u0027parseHTMLUnsafe\u0027:\r\n var element = document.adoptNode(Document.parseHTMLUnsafe(html).body.firstElementChild)\r\n break\r\n }\r\n return element\r\n}","TestCases":[{"Name":"DOMParser","Code":"go(\u0027DOMParser\u0027)","IsDeferred":false},{"Name":"write","Code":"go(\u0027write\u0027)","IsDeferred":false},{"Name":"setHTMLUnsafe","Code":"go(\u0027setHTMLUnsafe\u0027)","IsDeferred":false},{"Name":"innerHTML","Code":"go(\u0027innerHTML\u0027)","IsDeferred":false},{"Name":"createHTMLDocument","Code":"go(\u0027createHTMLDocument\u0027)","IsDeferred":false},{"Name":"createRange","Code":"go(\u0027createRange\u0027)","IsDeferred":false},{"Name":"template","Code":"go(\u0027template\u0027)","IsDeferred":false},{"Name":"parseHTMLUnsafe","Code":"go(\u0027parseHTMLUnsafe\u0027)","IsDeferred":false}]}