<iframe src="resources/shattered-nocollision-1.pdf" width=100 height=30></iframe>
<iframe src="resources/shattered-nocollision-2.pdf" width=100 height=30></iframe>
<iframe src="resources/shattered-nocollision-1.pdf" width=100 height=30></iframe>
<iframe src="resources/shattered-nocollision-2.pdf" width=100 height=30></iframe>
<script>
if (window.testRunner)
    testRunner.waitUntilDone();

onload = function() {
    setTimeout(function() {
        if (window.testRunner)
            testRunner.notifyDone();
    }, 1000);
}
</script>
