<head>
<style> </style>
</head>
<body>
<script>
testRunner.dumpAsText();
testRunner.waitUntilDone();
var docElement = document.documentElement;
textArea = document.createElement("textarea");
textArea.setAttribute("autofocus", "");
textArea.appendChild(document.head);
textArea.addEventListener("DOMFocusIn", function () { docElement.innerHTML = ""; }, false);
docElement.appendChild(textArea);
document.implementation.createDocument("http://www.w3.org/1999/xhtml", "html", null).adoptNode(textArea);
window.setTimeout(function() {
    document.body.innerHTML = "PASS unless crash.";
    testRunner.notifyDone();
}, 0);
</script>
</body>
