<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
         class="reftest-wait"
onload="
var result = '';
try {
  document.commandDispatcher.advanceFocusIntoSubtree({});
  result += '1';
} catch (ex) {
  result += '.';
}

try {
  document.commandDispatcher.advanceFocusIntoSubtree(document.documentElement);
  result += '2';
} catch (ex) {
  result += '.';
}

try {
  document.commandDispatcher.advanceFocusIntoSubtree(null);
  result += '3';
} catch (ex) {
  result += '.';
}

try {
  document.commandDispatcher.focusedElement = {};
  result += '4';
} catch (ex) {
  result += '.';
}

try {
  document.commandDispatcher.focusedElement = document.documentElement;
  result += '5';
} catch (ex) {
  result += '.';
}

try {
  document.commandDispatcher.focusedElement = null;
  result += '6';
} catch (ex) {
  result += '.';
}

try {
  document.popupNode = {};
  result += '7';
} catch (ex) {
  result += '.';
}

try {
  document.popupNode = document.documentElement;
  result += '8';
} catch (ex) {
  result += '.';
}

try {
  document.popupNode = null;
  result += '9';
} catch (ex) {
  result += '.';
}

try {
  document.commandDispatcher.focusedWindow = {};
  result += 'a';
} catch (ex) {
  result += '.';
}

try {
  document.commandDispatcher.focusedWindow = null;
  result += 'b';
} catch (ex) {
  result += '.';
}

try {
  document.commandDispatcher.focusedWindow = window;
  result += 'c';
} catch (ex) {
  result += '.';
}

document.documentElement.textContent = result == '.23.56.89.bc' ? 'PASSED' : 'FAILED';
if (document.documentElement.textContent == 'PASSED') {
  document.documentElement.removeAttribute('class');
}
"/>
