{
    "tests": [
        {
            "description": "<body><template>Hello</template>",
            "input": "<body><template>Hello</template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "Character",
                    "Hello"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<template>Hello</template>",
            "input": "<template>Hello</template>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "Character",
                    "Hello"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<template></template><div></div>",
            "input": "<template></template><div></div>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ]
            ]
        },
        {
            "description": "<html><template>Hello</template>",
            "input": "<html><template>Hello</template>",
            "output": [
                [
                    "StartTag",
                    "html",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "Character",
                    "Hello"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<head><template><div></div></template></head>",
            "input": "<head><template><div></div></template></head>",
            "output": [
                [
                    "StartTag",
                    "head",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "head"
                ]
            ]
        },
        {
            "description": "<div><template><div><span></template><b>",
            "input": "<div><template><div><span></template><b>",
            "output": [
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "b",
                    {}
                ]
            ]
        },
        {
            "description": "<div><template></div>Hello",
            "input": "<div><template></div>Hello",
            "output": [
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "Character",
                    "Hello"
                ]
            ]
        },
        {
            "description": "<div></template></div>",
            "input": "<div></template></div>",
            "output": [
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "div"
                ]
            ]
        },
        {
            "description": "<table><template></template></table>",
            "input": "<table><template></template></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><template></template></div>",
            "input": "<table><template></template></div>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "div"
                ]
            ]
        },
        {
            "description": "<table><div><template></template></div>",
            "input": "<table><div><template></template></div>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "div"
                ]
            ]
        },
        {
            "description": "<table><template></template><div></div>",
            "input": "<table><template></template><div></div>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ]
            ]
        },
        {
            "description": "<table>   <template></template></table>",
            "input": "<table>   <template></template></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "Character",
                    "   "
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><tbody><template></template></tbody>",
            "input": "<table><tbody><template></template></tbody>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "tbody"
                ]
            ]
        },
        {
            "description": "<table><tbody><template></tbody></template>",
            "input": "<table><tbody><template></tbody></template>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "tbody"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<table><tbody><template></template></tbody></table>",
            "input": "<table><tbody><template></template></tbody></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "tbody"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><thead><template></template></thead>",
            "input": "<table><thead><template></template></thead>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "thead",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "thead"
                ]
            ]
        },
        {
            "description": "<table><tfoot><template></template></tfoot>",
            "input": "<table><tfoot><template></template></tfoot>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "tfoot",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "tfoot"
                ]
            ]
        },
        {
            "description": "<select><template></template></select>",
            "input": "<select><template></template></select>",
            "output": [
                [
                    "StartTag",
                    "select",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "select"
                ]
            ]
        },
        {
            "description": "<select><template><option></option></template></select>",
            "input": "<select><template><option></option></template></select>",
            "output": [
                [
                    "StartTag",
                    "select",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "option",
                    {}
                ],
                [
                    "EndTag",
                    "option"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "select"
                ]
            ]
        },
        {
            "description": "<template><option></option></select><option></option></template>",
            "input": "<template><option></option></select><option></option></template>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "option",
                    {}
                ],
                [
                    "EndTag",
                    "option"
                ],
                [
                    "EndTag",
                    "select"
                ],
                [
                    "StartTag",
                    "option",
                    {}
                ],
                [
                    "EndTag",
                    "option"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<select><template></template><option></select>",
            "input": "<select><template></template><option></select>",
            "output": [
                [
                    "StartTag",
                    "select",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "option",
                    {}
                ],
                [
                    "EndTag",
                    "select"
                ]
            ]
        },
        {
            "description": "<select><option><template></template></select>",
            "input": "<select><option><template></template></select>",
            "output": [
                [
                    "StartTag",
                    "select",
                    {}
                ],
                [
                    "StartTag",
                    "option",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "select"
                ]
            ]
        },
        {
            "description": "<select><template>",
            "input": "<select><template>",
            "output": [
                [
                    "StartTag",
                    "select",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ]
            ]
        },
        {
            "description": "<select><option></option><template>",
            "input": "<select><option></option><template>",
            "output": [
                [
                    "StartTag",
                    "select",
                    {}
                ],
                [
                    "StartTag",
                    "option",
                    {}
                ],
                [
                    "EndTag",
                    "option"
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ]
            ]
        },
        {
            "description": "<select><option></option><template><option>",
            "input": "<select><option></option><template><option>",
            "output": [
                [
                    "StartTag",
                    "select",
                    {}
                ],
                [
                    "StartTag",
                    "option",
                    {}
                ],
                [
                    "EndTag",
                    "option"
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "option",
                    {}
                ]
            ]
        },
        {
            "description": "<table><thead><template><td></template></table>",
            "input": "<table><thead><template><td></template></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "thead",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><template><thead></template></table>",
            "input": "<table><template><thead></template></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "thead",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<body><table><template><td></tr><div></template></table>",
            "input": "<body><table><template><td></tr><div></template></table>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><template><thead></template></thead></table>",
            "input": "<table><template><thead></template></thead></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "thead",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "thead"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><thead><template><tr></template></table>",
            "input": "<table><thead><template><tr></template></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "thead",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><template><tr></template></table>",
            "input": "<table><template><tr></template></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><tr><template><td>",
            "input": "<table><tr><template><td>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ]
            ]
        },
        {
            "description": "<table><template><tr><template><td></template></tr></template></table>",
            "input": "<table><template><tr><template><td></template></tr></template></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><template><tr><template><td></td></template></tr></template></table>",
            "input": "<table><template><tr><template><td></td></template></tr></template></table>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<table><template><td></template>",
            "input": "<table><template><td></template>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><td></td></template>",
            "input": "<body><template><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><template><tr></tr></template><td></td></template>",
            "input": "<body><template><template><tr></tr></template><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<table><colgroup><template><col>",
            "input": "<table><colgroup><template><col>",
            "output": [
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "colgroup",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ]
            ]
        },
        {
            "description": "<frameset><template><frame></frame></template></frameset>",
            "input": "<frameset><template><frame></frame></template></frameset>",
            "output": [
                [
                    "StartTag",
                    "frameset",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "frame",
                    {}
                ],
                [
                    "EndTag",
                    "frame"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "frameset"
                ]
            ]
        },
        {
            "description": "<template><frame></frame></frameset><frame></frame></template>",
            "input": "<template><frame></frame></frameset><frame></frame></template>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "frame",
                    {}
                ],
                [
                    "EndTag",
                    "frame"
                ],
                [
                    "EndTag",
                    "frameset"
                ],
                [
                    "StartTag",
                    "frame",
                    {}
                ],
                [
                    "EndTag",
                    "frame"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<template><div><frameset><span></span></div><span></span></template>",
            "input": "<template><div><frameset><span></span></div><span></span></template>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "frameset",
                    {}
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "EndTag",
                    "span"
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "EndTag",
                    "span"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><div><frameset><span></span></div><span></span></template></body>",
            "input": "<body><template><div><frameset><span></span></div><span></span></template></body>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "frameset",
                    {}
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "EndTag",
                    "span"
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "EndTag",
                    "span"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "body"
                ]
            ]
        },
        {
            "description": "<body><template><script>var i = 1;</script><td></td></template>",
            "input": "<body><template><script>var i = 1;</script><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "script",
                    {}
                ],
                [
                    "Character",
                    "var i = 1;"
                ],
                [
                    "EndTag",
                    "script"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><tr><div></div></tr></template>",
            "input": "<body><template><tr><div></div></tr></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><tr></tr><td></td></template>",
            "input": "<body><template><tr></tr><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><td></td></tr><td></td></template>",
            "input": "<body><template><td></td></tr><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><td></td><tbody><td></td></template>",
            "input": "<body><template><td></td><tbody><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><td></td><caption></caption><td></td></template>",
            "input": "<body><template><td></td><caption></caption><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "StartTag",
                    "caption",
                    {}
                ],
                [
                    "EndTag",
                    "caption"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><td></td><colgroup></caption><td></td></template>",
            "input": "<body><template><td></td><colgroup></caption><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "StartTag",
                    "colgroup",
                    {}
                ],
                [
                    "EndTag",
                    "caption"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><td></td></table><td></td></template>",
            "input": "<body><template><td></td></table><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "table"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><tr></tr><tbody><tr></tr></template>",
            "input": "<body><template><tr></tr><tbody><tr></tr></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><tr></tr><caption><tr></tr></template>",
            "input": "<body><template><tr></tr><caption><tr></tr></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "StartTag",
                    "caption",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><tr></tr></table><tr></tr></template>",
            "input": "<body><template><tr></tr></table><tr></tr></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "table"
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><thead></thead><caption></caption><tbody></tbody></template>",
            "input": "<body><template><thead></thead><caption></caption><tbody></tbody></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "thead",
                    {}
                ],
                [
                    "EndTag",
                    "thead"
                ],
                [
                    "StartTag",
                    "caption",
                    {}
                ],
                [
                    "EndTag",
                    "caption"
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ],
                [
                    "EndTag",
                    "tbody"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><thead></thead></table><tbody></tbody></template></body>",
            "input": "<body><template><thead></thead></table><tbody></tbody></template></body>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "thead",
                    {}
                ],
                [
                    "EndTag",
                    "thead"
                ],
                [
                    "EndTag",
                    "table"
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ],
                [
                    "EndTag",
                    "tbody"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "body"
                ]
            ]
        },
        {
            "description": "<body><template><div><tr></tr></div></template>",
            "input": "<body><template><div><tr></tr></div></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><em>Hello</em></template>",
            "input": "<body><template><em>Hello</em></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "em",
                    {}
                ],
                [
                    "Character",
                    "Hello"
                ],
                [
                    "EndTag",
                    "em"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><!--comment--></template>",
            "input": "<body><template><!--comment--></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "Comment",
                    "comment"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><style></style><td></td></template>",
            "input": "<body><template><style></style><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "style",
                    {}
                ],
                [
                    "EndTag",
                    "style"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><meta><td></td></template>",
            "input": "<body><template><meta><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "meta",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><link><td></td></template>",
            "input": "<body><template><link><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "link",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><template><tr></tr></template><td></td></template>",
            "input": "<body><template><template><tr></tr></template><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><table><colgroup><template><col></col></template></colgroup></table></body>",
            "input": "<body><table><colgroup><template><col></col></template></colgroup></table></body>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "colgroup",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "EndTag",
                    "col"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "colgroup"
                ],
                [
                    "EndTag",
                    "table"
                ],
                [
                    "EndTag",
                    "body"
                ]
            ]
        },
        {
            "description": "<body a=b><template><div></div><body c=d><div></div></body></template></body>",
            "input": "<body a=b><template><div></div><body c=d><div></div></body></template></body>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {
                        "a": "b"
                    }
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "StartTag",
                    "body",
                    {
                        "c": "d"
                    }
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "EndTag",
                    "body"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "body"
                ]
            ]
        },
        {
            "description": "<html a=b><template><div><html b=c><span></template>",
            "input": "<html a=b><template><div><html b=c><span></template>",
            "output": [
                [
                    "StartTag",
                    "html",
                    {
                        "a": "b"
                    }
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "html",
                    {
                        "b": "c"
                    }
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<html a=b><template><col></col><html b=c><col></col></template>",
            "input": "<html a=b><template><col></col><html b=c><col></col></template>",
            "output": [
                [
                    "StartTag",
                    "html",
                    {
                        "a": "b"
                    }
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "EndTag",
                    "col"
                ],
                [
                    "StartTag",
                    "html",
                    {
                        "b": "c"
                    }
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "EndTag",
                    "col"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<html a=b><template><frame></frame><html b=c><frame></frame></template>",
            "input": "<html a=b><template><frame></frame><html b=c><frame></frame></template>",
            "output": [
                [
                    "StartTag",
                    "html",
                    {
                        "a": "b"
                    }
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "frame",
                    {}
                ],
                [
                    "EndTag",
                    "frame"
                ],
                [
                    "StartTag",
                    "html",
                    {
                        "b": "c"
                    }
                ],
                [
                    "StartTag",
                    "frame",
                    {}
                ],
                [
                    "EndTag",
                    "frame"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><tr></tr><template></template><td></td></template>",
            "input": "<body><template><tr></tr><template></template><td></td></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><thead></thead><template><tr></tr></template><tr></tr><tfoot></tfoot></template>",
            "input": "<body><template><thead></thead><template><tr></tr></template><tr></tr><tfoot></tfoot></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "thead",
                    {}
                ],
                [
                    "EndTag",
                    "thead"
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "StartTag",
                    "tfoot",
                    {}
                ],
                [
                    "EndTag",
                    "tfoot"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><template><b><template></template></template>text</template>",
            "input": "<body><template><template><b><template></template></template>text</template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "b",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "Character",
                    "text"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<body><template><col><colgroup>",
            "input": "<body><template><col><colgroup>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "StartTag",
                    "colgroup",
                    {}
                ]
            ]
        },
        {
            "description": "<body><template><col></colgroup>",
            "input": "<body><template><col></colgroup>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "EndTag",
                    "colgroup"
                ]
            ]
        },
        {
            "description": "<body><template><col><colgroup></template></body>",
            "input": "<body><template><col><colgroup></template></body>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "StartTag",
                    "colgroup",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "EndTag",
                    "body"
                ]
            ]
        },
        {
            "description": "<body><template><col><div>",
            "input": "<body><template><col><div>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ]
            ]
        },
        {
            "description": "<body><template><col></div>",
            "input": "<body><template><col></div>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ]
            ]
        },
        {
            "description": "<body><template><col>Hello",
            "input": "<body><template><col>Hello",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ],
                [
                    "Character",
                    "Hello"
                ]
            ]
        },
        {
            "description": "<body><template><i><menu>Foo</i>",
            "input": "<body><template><i><menu>Foo</i>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "i",
                    {}
                ],
                [
                    "StartTag",
                    "menu",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ],
                [
                    "EndTag",
                    "i"
                ]
            ]
        },
        {
            "description": "<body><template></div><div>Foo</div><template></template><tr></tr>",
            "input": "<body><template></div><div>Foo</div><template></template><tr></tr>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "EndTag",
                    "tr"
                ]
            ]
        },
        {
            "description": "<body><div><template></div><tr><td>Foo</td></tr></template>",
            "input": "<body><div><template></div><tr><td>Foo</td></tr></template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "div"
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ],
                [
                    "EndTag",
                    "td"
                ],
                [
                    "EndTag",
                    "tr"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<template></figcaption><sub><table></table>",
            "input": "<template></figcaption><sub><table></table>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "EndTag",
                    "figcaption"
                ],
                [
                    "StartTag",
                    "sub",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<template><template>",
            "input": "<template><template>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ]
            ]
        },
        {
            "description": "<template><div>",
            "input": "<template><div>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><div>",
            "input": "<template><template><div>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><table>",
            "input": "<template><template><table>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><tbody>",
            "input": "<template><template><tbody>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><tr>",
            "input": "<template><template><tr>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><td>",
            "input": "<template><template><td>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><caption>",
            "input": "<template><template><caption>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "caption",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><colgroup>",
            "input": "<template><template><colgroup>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "colgroup",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><col>",
            "input": "<template><template><col>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "col",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><tbody><select>",
            "input": "<template><template><tbody><select>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "tbody",
                    {}
                ],
                [
                    "StartTag",
                    "select",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><table>Foo",
            "input": "<template><template><table>Foo",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ]
            ]
        },
        {
            "description": "<template><template><frame>",
            "input": "<template><template><frame>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "frame",
                    {}
                ]
            ]
        },
        {
            "description": "<template><template><script>var i",
            "input": "<template><template><script>var i",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "script",
                    {}
                ],
                [
                    "Character",
                    "var i"
                ]
            ]
        },
        {
            "description": "<template><template><style>var i",
            "input": "<template><template><style>var i",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "style",
                    {}
                ],
                [
                    "Character",
                    "var i"
                ]
            ]
        },
        {
            "description": "<template><table></template><body><span>Foo",
            "input": "<template><table></template><body><span>Foo",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ]
            ]
        },
        {
            "description": "<template><td></template><body><span>Foo",
            "input": "<template><td></template><body><span>Foo",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ]
            ]
        },
        {
            "description": "<template><object></template><body><span>Foo",
            "input": "<template><object></template><body><span>Foo",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "object",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ]
            ]
        },
        {
            "description": "<template><svg><template>",
            "input": "<template><svg><template>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "svg",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ]
            ]
        },
        {
            "description": "<template><svg><foo><template><foreignObject><div></template><div>",
            "input": "<template><svg><foo><template><foreignObject><div></template><div>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "svg",
                    {}
                ],
                [
                    "StartTag",
                    "foo",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "foreignObject",
                    {}
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "div",
                    {}
                ]
            ]
        },
        {
            "description": "<dummy><template><span></dummy>",
            "input": "<dummy><template><span></dummy>",
            "output": [
                [
                    "StartTag",
                    "dummy",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "span",
                    {}
                ],
                [
                    "EndTag",
                    "dummy"
                ]
            ]
        },
        {
            "description": "<body><table><tr><td><select><template>Foo</template><caption>A</table>",
            "input": "<body><table><tr><td><select><template>Foo</template><caption>A</table>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "tr",
                    {}
                ],
                [
                    "StartTag",
                    "td",
                    {}
                ],
                [
                    "StartTag",
                    "select",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ],
                [
                    "EndTag",
                    "template"
                ],
                [
                    "StartTag",
                    "caption",
                    {}
                ],
                [
                    "Character",
                    "A"
                ],
                [
                    "EndTag",
                    "table"
                ]
            ]
        },
        {
            "description": "<body></body><template>",
            "input": "<body></body><template>",
            "output": [
                [
                    "StartTag",
                    "body",
                    {}
                ],
                [
                    "EndTag",
                    "body"
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ]
            ]
        },
        {
            "description": "<head></head><template>",
            "input": "<head></head><template>",
            "output": [
                [
                    "StartTag",
                    "head",
                    {}
                ],
                [
                    "EndTag",
                    "head"
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ]
            ]
        },
        {
            "description": "<head></head><template>Foo</template>",
            "input": "<head></head><template>Foo</template>",
            "output": [
                [
                    "StartTag",
                    "head",
                    {}
                ],
                [
                    "EndTag",
                    "head"
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "Character",
                    "Foo"
                ],
                [
                    "EndTag",
                    "template"
                ]
            ]
        },
        {
            "description": "<!DOCTYPE HTML><dummy><table><template><table><template><table><script>",
            "input": "<!DOCTYPE HTML><dummy><table><template><table><template><table><script>",
            "output": [
                [
                    "DOCTYPE",
                    "html",
                    null,
                    null,
                    true
                ],
                [
                    "StartTag",
                    "dummy",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "script",
                    {}
                ]
            ]
        },
        {
            "description": "<template><a><table><a>",
            "input": "<template><a><table><a>",
            "output": [
                [
                    "StartTag",
                    "template",
                    {}
                ],
                [
                    "StartTag",
                    "a",
                    {}
                ],
                [
                    "StartTag",
                    "table",
                    {}
                ],
                [
                    "StartTag",
                    "a",
                    {}
                ]
            ]
        }
    ]
}