<SCRIPT>
  if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
  }
  setTimeout(function () {
    document.open();
    document.write("1<br>");
    document.write("2<br>");
    document.close();
    if (window.testRunner)
      testRunner.notifyDone();
  }, 0);
</SCRIPT>
