This page tests var declarations that attempt to shadow interesting global properties in interesting ways. Bug 16644.

If the test passes, you'll see a series of PASS messages below.

PASS: Node == undefined should be false and is.
PASS: eval('Node == undefined') should be false and is.
PASS: Element == undefined should be false and is.
PASS: eval('Element == undefined') should be false and is.
PASS: toString != undefined should be false and is.
PASS: eval('toString != undefined') should be false and is.
PASS: valueOf == undefined should be false and is.
PASS: eval('valueOf == undefined') should be false and is.
-----
PASS: HTMLElement == marker should be true and is.
PASS: eval('HTMLElement == marker') should be true and is.
PASS: HTMLLinkElement == marker should be true and is.
PASS: eval('HTMLLinkElement == marker') should be true and is.
PASS: moveBy == marker should be true and is.
PASS: eval('moveBy == marker') should be true and is.
PASS: find == marker should be true and is.
PASS: eval('find == marker') should be true and is.
-----
PASS: locationbar == marker should be true and is.
PASS: eval('locationbar == marker') should be true and is.
PASS: menubar == marker should be true and is.
PASS: eval('menubar == marker') should be true and is.
PASS: personalbar == marker should be true and is.
PASS: eval('personalbar == marker') should be true and is.
PASS: scrollbars == marker should be true and is.
PASS: eval('scrollbars == marker') should be true and is.
PASS: statusbar == marker should be true and is.
PASS: eval('statusbar == marker') should be true and is.
PASS: toolbar == marker should be true and is.
PASS: eval('toolbar == marker') should be true and is.
PASS: offscreenBuffering == marker should be true and is.
PASS: eval('offscreenBuffering == marker') should be true and is.
PASS: outerHeight == marker should be true and is.
PASS: eval('outerHeight == marker') should be true and is.
PASS: outerWidth == marker should be true and is.
PASS: eval('outerWidth == marker') should be true and is.
PASS: innerHeight == marker should be true and is.
PASS: eval('innerHeight == marker') should be true and is.
PASS: innerWidth == marker should be true and is.
PASS: eval('innerWidth == marker') should be true and is.
PASS: screenX == marker should be true and is.
PASS: eval('screenX == marker') should be true and is.
PASS: screenY == marker should be true and is.
PASS: eval('screenY == marker') should be true and is.
PASS: screenLeft == marker should be true and is.
PASS: eval('screenLeft == marker') should be true and is.
PASS: screenTop == marker should be true and is.
PASS: eval('screenTop == marker') should be true and is.
PASS: scrollX == marker should be true and is.
PASS: eval('scrollX == marker') should be true and is.
PASS: scrollY == marker should be true and is.
PASS: eval('scrollY == marker') should be true and is.
PASS: length == marker should be true and is.
PASS: eval('length == marker') should be true and is.
PASS: self == marker should be true and is.
PASS: eval('self == marker') should be true and is.
PASS: frames == marker should be true and is.
PASS: eval('frames == marker') should be true and is.
PASS: opener == marker should be true and is.
PASS: eval('opener == marker') should be true and is.
PASS: parent == marker should be true and is.
PASS: eval('parent == marker') should be true and is.
PASS: devicePixelRatio == marker should be true and is.
PASS: eval('devicePixelRatio == marker') should be true and is.
PASS: devicePixelRatio == marker should be true and is.
PASS: eval('devicePixelRatio == marker') should be true and is.
PASS: navigator == marker should be false and is.
PASS: eval('navigator == marker') should be false and is.
PASS: clientInformation == marker should be true and is.
PASS: eval('clientInformation == marker') should be true and is.
PASS: status == marker should be true and is.
PASS: eval('status == marker') should be true and is.
PASS: defaultStatus == marker should be true and is.
PASS: eval('defaultStatus == marker') should be true and is.
PASS: defaultstatus == marker should be true and is.
PASS: eval('defaultstatus == marker') should be true and is.
PASS: screen == marker should be true and is.
PASS: eval('screen == marker') should be true and is.
PASS: history == marker should be false and is.
PASS: eval('history == marker') should be false and is.
-----
PASS: frameElement == marker should be false and is.
PASS: eval('frameElement == marker') should be false and is.
PASS: pageXOffset == marker should be true and is.
PASS: eval('pageXOffset == marker') should be true and is.
PASS: pageYOffset == marker should be true and is.
PASS: eval('pageYOffset == marker') should be true and is.
PASS: closed == marker should be false and is.
PASS: eval('closed == marker') should be false and is.
PASS: window == marker should be false and is.
PASS: eval('window == marker') should be false and is.
PASS: document == marker should be false and is.
PASS: eval('document == marker') should be false and is.
PASS: crypto == marker should be false and is.
PASS: eval('crypto == marker') should be false and is.
PASS: top == marker should be false and is.
PASS: eval('top == marker') should be false and is.

