<script>
if (window.testRunner)
    window.testRunner.dumpAsText(false);
</script>
<div style="-webkit-filter: blur(1px);" width="0px" height="0px"></div>
<p>If you can read this, the test passed.</p>
