{"ScriptPreparationCode":"var t = document.createElement(\u0027template\u0027);\r\nt.innerHTML = \u0027\u003Ctr\u003E\u003Ctd class=\u0022col-md-1\u0022\u003E\u003C/td\u003E\u003Ctd class=\u0022col-md-4\u0022\u003E\u003Ca\u003E\u003C/a\u003E\u003C/td\u003E\u003Ctd class=\u0022col-md-1\u0022\u003E\u003Ca\u003E\u003Cspan class=\u0022glyphicon glyphicon-remove\u0022 aria-hidden=\u0022true\u0022 /\u003E\u003C/a\u003E\u003C/td\u003E\u003Ctd class=\u0022col-md-6\u0022 /\u003E\u003C/tr\u003E\u0027;\r\nvar template = t.content.firstChild;\r\n\r\nfunction childNodes(tree) {\r\n let index = 0;\r\n const result = {};\r\n const walk = (node) =\u003E {\r\n result[index\u002B\u002B] = node;\r\n node.childNodes.forEach(walk);\r\n };\r\n walk(tree);\r\n return result;\r\n}\r\n\r\nfunction nextSibling(tree) {\r\n let index = 0;\r\n const result = {};\r\n const walk = (node) =\u003E {\r\n result[index\u002B\u002B] = node;\r\n let child = node.firstChild;\r\n while(child) {\r\n walk(child);\r\n child = child.nextSibling;\r\n }\r\n };\r\n walk(tree);\r\n return result;\r\n}","TestCases":[{"Name":"ChildNodes","Code":"childNodes(template)","IsDeferred":false},{"Name":"NextSibling","Code":"nextSibling(template)","IsDeferred":false}]}