<script>
if (window.testRunner)
    testRunner.dumpAsText();

try {
    for (var i = 0; i < document.all.length; i++) {
        var child = document.all[i];
        child.parentNode.removeChild(child);
    }
    internals.isPageBoxVisible(document, 0);
} catch(e) {}
</script>
