function ListObj (obj, str) { // dump objects and contents
var s = new Array ();
var i;
var j = 0;
  for (i in obj) {   // get all objects, and contents
    s[j] = i + ": " + obj[i];
    j = j + 1;
  }
  s.sort ();         // sort them data down
  document.open ("text/html");  // open a new document
  document.writeln ("<html><head>",
                    "<title>Dump page</title>",
                    "</head><body>",
                    "<p><b>",
                    str, " contents.<br />",
                    navigator.appName, "<br />",
                    navigator.userAgent, "</b><br /><br />");
  for (i=0; i<j; i++) {
    document.writeln (s[i], "<br />");
  }
  document.writeln ("</p></body></html>");
  document.close ();  // close down output stream
}