//------------------------------------------------------------------------------------------------------- // Copyright (C) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. //------------------------------------------------------------------------------------------------------- function write(v) { WScript.Echo(v + ""); } function foo() {} write(+0.0 >> ''); write(+0.0 >> 0xa); write(+0.0 >> 04); write(+0.0 >> 'hello'); write(+0.0 >> 'hel' + 'lo'); write(+0.0 >> String('')); write(+0.0 >> String('hello')); write(+0.0 >> String('h' + 'ello')); write(+0.0 >> new String('')); write(+0.0 >> new String('hello')); write(+0.0 >> new String('he' + 'llo')); write(+0.0 >> new Object()); write(+0.0 >> new Object()); write(+0.0 >> [1, 2, 3]); write(+0.0 >> [1 ,2 , 3]); write(+0.0 >> new Array(3)); write(+0.0 >> Array(3)); write(+0.0 >> new Array(1 ,2 ,3)); write(+0.0 >> Array(1)); write(+0.0 >> foo); write(1 >> undefined); write(1 >> null); write(1 >> true); write(1 >> false); write(1 >> Boolean(true)); write(1 >> Boolean(false)); write(1 >> new Boolean(true)); write(1 >> new Boolean(false)); write(1 >> NaN); write(1 >> +0); write(1 >> -0); write(1 >> 0); write(1 >> 0.0); write(1 >> -0.0); write(1 >> +0.0); write(1 >> 1); write(1 >> 10); write(1 >> 10.0); write(1 >> 10.1); write(1 >> -1); write(1 >> -10); write(1 >> -10.0); write(1 >> -10.1); write(1 >> Number.MAX_VALUE); write(1 >> Number.MIN_VALUE); write(1 >> Number.NaN); write(1 >> Number.POSITIVE_INFINITY); write(1 >> Number.NEGATIVE_INFINITY); write(1 >> new Number(NaN)); write(1 >> new Number(+0)); write(1 >> new Number(-0)); write(1 >> new Number(0)); write(1 >> new Number(0.0)); write(1 >> new Number(-0.0)); write(1 >> new Number(+0.0)); write(1 >> new Number(1)); write(1 >> new Number(10)); write(1 >> new Number(10.0)); write(1 >> new Number(10.1)); write(1 >> new Number(-1)); write(1 >> new Number(-10)); write(1 >> new Number(-10.0)); write(1 >> new Number(-10.1)); write(1 >> new Number(Number.MAX_VALUE)); write(1 >> new Number(Number.MIN_VALUE)); write(1 >> new Number(Number.NaN)); write(1 >> new Number(Number.POSITIVE_INFINITY)); write(1 >> new Number(Number.NEGATIVE_INFINITY)); write(1 >> ''); write(1 >> 0xa); write(1 >> 04); write(1 >> 'hello'); write(1 >> 'hel' + 'lo'); write(1 >> String('')); write(1 >> String('hello')); write(1 >> String('h' + 'ello')); write(1 >> new String('')); write(1 >> new String('hello')); write(1 >> new String('he' + 'llo')); write(1 >> new Object()); write(1 >> new Object()); write(1 >> [1, 2, 3]); write(1 >> [1 ,2 , 3]); write(1 >> new Array(3)); write(1 >> Array(3)); write(1 >> new Array(1 ,2 ,3)); write(1 >> Array(1)); write(1 >> foo); write(10 >> undefined); write(10 >> null); write(10 >> true); write(10 >> false); write(10 >> Boolean(true)); write(10 >> Boolean(false)); write(10 >> new Boolean(true)); write(10 >> new Boolean(false)); write(10 >> NaN); write(10 >> +0); write(10 >> -0); write(10 >> 0); write(10 >> 0.0); write(10 >> -0.0); write(10 >> +0.0); write(10 >> 1); write(10 >> 10); write(10 >> 10.0); write(10 >> 10.1); write(10 >> -1); write(10 >> -10); write(10 >> -10.0); write(10 >> -10.1); write(10 >> Number.MAX_VALUE); write(10 >> Number.MIN_VALUE); write(10 >> Number.NaN); write(10 >> Number.POSITIVE_INFINITY); write(10 >> Number.NEGATIVE_INFINITY); write(10 >> new Number(NaN)); write(10 >> new Number(+0)); write(10 >> new Number(-0)); write(10 >> new Number(0)); write(10 >> new Number(0.0)); write(10 >> new Number(-0.0)); write(10 >> new Number(+0.0)); write(10 >> new Number(1)); write(10 >> new Number(10)); write(10 >> new Number(10.0)); write(10 >> new Number(10.1)); write(10 >> new Number(-1)); write(10 >> new Number(-10)); write(10 >> new Number(-10.0)); write(10 >> new Number(-10.1)); write(10 >> new Number(Number.MAX_VALUE)); write(10 >> new Number(Number.MIN_VALUE)); write(10 >> new Number(Number.NaN)); write(10 >> new Number(Number.POSITIVE_INFINITY)); write(10 >> new Number(Number.NEGATIVE_INFINITY)); write(10 >> ''); write(10 >> 0xa); write(10 >> 04); write(10 >> 'hello'); write(10 >> 'hel' + 'lo'); write(10 >> String('')); write(10 >> String('hello')); write(10 >> String('h' + 'ello')); write(10 >> new String('')); write(10 >> new String('hello')); write(10 >> new String('he' + 'llo')); write(10 >> new Object()); write(10 >> new Object()); write(10 >> [1, 2, 3]); write(10 >> [1 ,2 , 3]); write(10 >> new Array(3)); write(10 >> Array(3)); write(10 >> new Array(1 ,2 ,3)); write(10 >> Array(1)); write(10 >> foo); write(10.0 >> undefined); write(10.0 >> null); write(10.0 >> true); write(10.0 >> false); write(10.0 >> Boolean(true)); write(10.0 >> Boolean(false)); write(10.0 >> new Boolean(true)); write(10.0 >> new Boolean(false)); write(10.0 >> NaN); write(10.0 >> +0); write(10.0 >> -0); write(10.0 >> 0); write(10.0 >> 0.0); write(10.0 >> -0.0); write(10.0 >> +0.0); write(10.0 >> 1); write(10.0 >> 10); write(10.0 >> 10.0); write(10.0 >> 10.1); write(10.0 >> -1); write(10.0 >> -10); write(10.0 >> -10.0); write(10.0 >> -10.1); write(10.0 >> Number.MAX_VALUE); write(10.0 >> Number.MIN_VALUE); write(10.0 >> Number.NaN); write(10.0 >> Number.POSITIVE_INFINITY); write(10.0 >> Number.NEGATIVE_INFINITY); write(10.0 >> new Number(NaN)); write(10.0 >> new Number(+0)); write(10.0 >> new Number(-0)); write(10.0 >> new Number(0)); write(10.0 >> new Number(0.0)); write(10.0 >> new Number(-0.0)); write(10.0 >> new Number(+0.0)); write(10.0 >> new Number(1)); write(10.0 >> new Number(10)); write(10.0 >> new Number(10.0)); write(10.0 >> new Number(10.1)); write(10.0 >> new Number(-1)); write(10.0 >> new Number(-10)); write(10.0 >> new Number(-10.0)); write(10.0 >> new Number(-10.1)); write(10.0 >> new Number(Number.MAX_VALUE)); write(10.0 >> new Number(Number.MIN_VALUE)); write(10.0 >> new Number(Number.NaN)); write(10.0 >> new Number(Number.POSITIVE_INFINITY)); write(10.0 >> new Number(Number.NEGATIVE_INFINITY)); write(10.0 >> ''); write(10.0 >> 0xa); write(10.0 >> 04); write(10.0 >> 'hello'); write(10.0 >> 'hel' + 'lo'); write(10.0 >> String('')); write(10.0 >> String('hello')); write(10.0 >> String('h' + 'ello')); write(10.0 >> new String('')); write(10.0 >> new String('hello')); write(10.0 >> new String('he' + 'llo')); write(10.0 >> new Object()); write(10.0 >> new Object()); write(10.0 >> [1, 2, 3]); write(10.0 >> [1 ,2 , 3]); write(10.0 >> new Array(3)); write(10.0 >> Array(3)); write(10.0 >> new Array(1 ,2 ,3)); write(10.0 >> Array(1)); write(10.0 >> foo); write(10.1 >> undefined); write(10.1 >> null); write(10.1 >> true); write(10.1 >> false); write(10.1 >> Boolean(true)); write(10.1 >> Boolean(false)); write(10.1 >> new Boolean(true)); write(10.1 >> new Boolean(false)); write(10.1 >> NaN); write(10.1 >> +0); write(10.1 >> -0); write(10.1 >> 0); write(10.1 >> 0.0); write(10.1 >> -0.0); write(10.1 >> +0.0); write(10.1 >> 1); write(10.1 >> 10); write(10.1 >> 10.0); write(10.1 >> 10.1); write(10.1 >> -1); write(10.1 >> -10); write(10.1 >> -10.0); write(10.1 >> -10.1); write(10.1 >> Number.MAX_VALUE); write(10.1 >> Number.MIN_VALUE); write(10.1 >> Number.NaN); write(10.1 >> Number.POSITIVE_INFINITY); write(10.1 >> Number.NEGATIVE_INFINITY); write(10.1 >> new Number(NaN)); write(10.1 >> new Number(+0)); write(10.1 >> new Number(-0)); write(10.1 >> new Number(0)); write(10.1 >> new Number(0.0)); write(10.1 >> new Number(-0.0)); write(10.1 >> new Number(+0.0)); write(10.1 >> new Number(1)); write(10.1 >> new Number(10)); write(10.1 >> new Number(10.0)); write(10.1 >> new Number(10.1)); write(10.1 >> new Number(-1)); write(10.1 >> new Number(-10)); write(10.1 >> new Number(-10.0)); write(10.1 >> new Number(-10.1)); write(10.1 >> new Number(Number.MAX_VALUE)); write(10.1 >> new Number(Number.MIN_VALUE)); write(10.1 >> new Number(Number.NaN)); write(10.1 >> new Number(Number.POSITIVE_INFINITY)); write(10.1 >> new Number(Number.NEGATIVE_INFINITY)); write(10.1 >> ''); write(10.1 >> 0xa); write(10.1 >> 04); write(10.1 >> 'hello'); write(10.1 >> 'hel' + 'lo'); write(10.1 >> String('')); write(10.1 >> String('hello')); write(10.1 >> String('h' + 'ello')); write(10.1 >> new String('')); write(10.1 >> new String('hello')); write(10.1 >> new String('he' + 'llo')); write(10.1 >> new Object()); write(10.1 >> new Object()); write(10.1 >> [1, 2, 3]); write(10.1 >> [1 ,2 , 3]); write(10.1 >> new Array(3)); write(10.1 >> Array(3)); write(10.1 >> new Array(1 ,2 ,3)); write(10.1 >> Array(1)); write(10.1 >> foo); write(-1 >> undefined); write(-1 >> null); write(-1 >> true); write(-1 >> false); write(-1 >> Boolean(true)); write(-1 >> Boolean(false)); write(-1 >> new Boolean(true)); write(-1 >> new Boolean(false)); write(-1 >> NaN); write(-1 >> +0); write(-1 >> -0); write(-1 >> 0); write(-1 >> 0.0); write(-1 >> -0.0); write(-1 >> +0.0); write(-1 >> 1); write(-1 >> 10); write(-1 >> 10.0); write(-1 >> 10.1); write(-1 >> -1); write(-1 >> -10); write(-1 >> -10.0); write(-1 >> -10.1); write(-1 >> Number.MAX_VALUE); write(-1 >> Number.MIN_VALUE); write(-1 >> Number.NaN); write(-1 >> Number.POSITIVE_INFINITY); write(-1 >> Number.NEGATIVE_INFINITY); write(-1 >> new Number(NaN)); write(-1 >> new Number(+0)); write(-1 >> new Number(-0)); write(-1 >> new Number(0)); write(-1 >> new Number(0.0)); write(-1 >> new Number(-0.0)); write(-1 >> new Number(+0.0)); write(-1 >> new Number(1)); write(-1 >> new Number(10)); write(-1 >> new Number(10.0)); write(-1 >> new Number(10.1)); write(-1 >> new Number(-1)); write(-1 >> new Number(-10)); write(-1 >> new Number(-10.0)); write(-1 >> new Number(-10.1)); write(-1 >> new Number(Number.MAX_VALUE)); write(-1 >> new Number(Number.MIN_VALUE)); write(-1 >> new Number(Number.NaN)); write(-1 >> new Number(Number.POSITIVE_INFINITY)); write(-1 >> new Number(Number.NEGATIVE_INFINITY)); write(-1 >> ''); write(-1 >> 0xa); write(-1 >> 04); write(-1 >> 'hello'); write(-1 >> 'hel' + 'lo'); write(-1 >> String('')); write(-1 >> String('hello')); write(-1 >> String('h' + 'ello')); write(-1 >> new String('')); write(-1 >> new String('hello')); write(-1 >> new String('he' + 'llo')); write(-1 >> new Object()); write(-1 >> new Object()); write(-1 >> [1, 2, 3]); write(-1 >> [1 ,2 , 3]); write(-1 >> new Array(3)); write(-1 >> Array(3)); write(-1 >> new Array(1 ,2 ,3)); write(-1 >> Array(1)); write(-1 >> foo); write(-10 >> undefined); write(-10 >> null); write(-10 >> true); write(-10 >> false); write(-10 >> Boolean(true)); write(-10 >> Boolean(false)); write(-10 >> new Boolean(true)); write(-10 >> new Boolean(false)); write(-10 >> NaN); write(-10 >> +0); write(-10 >> -0); write(-10 >> 0); write(-10 >> 0.0); write(-10 >> -0.0); write(-10 >> +0.0); write(-10 >> 1); write(-10 >> 10); write(-10 >> 10.0); write(-10 >> 10.1); write(-10 >> -1); write(-10 >> -10); write(-10 >> -10.0); write(-10 >> -10.1); write(-10 >> Number.MAX_VALUE); write(-10 >> Number.MIN_VALUE); write(-10 >> Number.NaN); write(-10 >> Number.POSITIVE_INFINITY); write(-10 >> Number.NEGATIVE_INFINITY); write(-10 >> new Number(NaN)); write(-10 >> new Number(+0)); write(-10 >> new Number(-0)); write(-10 >> new Number(0)); write(-10 >> new Number(0.0)); write(-10 >> new Number(-0.0)); write(-10 >> new Number(+0.0)); write(-10 >> new Number(1)); write(-10 >> new Number(10)); write(-10 >> new Number(10.0)); write(-10 >> new Number(10.1)); write(-10 >> new Number(-1)); write(-10 >> new Number(-10)); write(-10 >> new Number(-10.0)); write(-10 >> new Number(-10.1)); write(-10 >> new Number(Number.MAX_VALUE)); write(-10 >> new Number(Number.MIN_VALUE)); write(-10 >> new Number(Number.NaN)); write(-10 >> new Number(Number.POSITIVE_INFINITY)); write(-10 >> new Number(Number.NEGATIVE_INFINITY)); write(-10 >> ''); write(-10 >> 0xa); write(-10 >> 04); write(-10 >> 'hello'); write(-10 >> 'hel' + 'lo'); write(-10 >> String('')); write(-10 >> String('hello')); write(-10 >> String('h' + 'ello')); write(-10 >> new String('')); write(-10 >> new String('hello')); write(-10 >> new String('he' + 'llo')); write(-10 >> new Object()); write(-10 >> new Object()); write(-10 >> [1, 2, 3]); write(-10 >> [1 ,2 , 3]); write(-10 >> new Array(3)); write(-10 >> Array(3)); write(-10 >> new Array(1 ,2 ,3)); write(-10 >> Array(1)); write(-10 >> foo); write(-10.0 >> undefined); write(-10.0 >> null); write(-10.0 >> true); write(-10.0 >> false); write(-10.0 >> Boolean(true)); write(-10.0 >> Boolean(false)); write(-10.0 >> new Boolean(true)); write(-10.0 >> new Boolean(false)); write(-10.0 >> NaN); write(-10.0 >> +0); write(-10.0 >> -0); write(-10.0 >> 0); write(-10.0 >> 0.0); write(-10.0 >> -0.0); write(-10.0 >> +0.0); write(-10.0 >> 1); write(-10.0 >> 10); write(-10.0 >> 10.0); write(-10.0 >> 10.1); write(-10.0 >> -1); write(-10.0 >> -10); write(-10.0 >> -10.0); write(-10.0 >> -10.1); write(-10.0 >> Number.MAX_VALUE); write(-10.0 >> Number.MIN_VALUE); write(-10.0 >> Number.NaN); write(-10.0 >> Number.POSITIVE_INFINITY); write(-10.0 >> Number.NEGATIVE_INFINITY); write(-10.0 >> new Number(NaN)); write(-10.0 >> new Number(+0)); write(-10.0 >> new Number(-0)); write(-10.0 >> new Number(0)); write(-10.0 >> new Number(0.0)); write(-10.0 >> new Number(-0.0)); write(-10.0 >> new Number(+0.0)); write(-10.0 >> new Number(1)); write(-10.0 >> new Number(10)); write(-10.0 >> new Number(10.0)); write(-10.0 >> new Number(10.1)); write(-10.0 >> new Number(-1)); write(-10.0 >> new Number(-10)); write(-10.0 >> new Number(-10.0)); write(-10.0 >> new Number(-10.1)); write(-10.0 >> new Number(Number.MAX_VALUE)); write(-10.0 >> new Number(Number.MIN_VALUE)); write(-10.0 >> new Number(Number.NaN)); write(-10.0 >> new Number(Number.POSITIVE_INFINITY)); write(-10.0 >> new Number(Number.NEGATIVE_INFINITY)); write(-10.0 >> ''); write(-10.0 >> 0xa); write(-10.0 >> 04); write(-10.0 >> 'hello'); write(-10.0 >> 'hel' + 'lo'); write(-10.0 >> String('')); write(-10.0 >> String('hello')); write(-10.0 >> String('h' + 'ello')); write(-10.0 >> new String('')); write(-10.0 >> new String('hello')); write(-10.0 >> new String('he' + 'llo')); write(-10.0 >> new Object()); write(-10.0 >> new Object()); write(-10.0 >> [1, 2, 3]); write(-10.0 >> [1 ,2 , 3]); write(-10.0 >> new Array(3)); write(-10.0 >> Array(3)); write(-10.0 >> new Array(1 ,2 ,3)); write(-10.0 >> Array(1)); write(-10.0 >> foo); write(-10.1 >> undefined); write(-10.1 >> null); write(-10.1 >> true); write(-10.1 >> false); write(-10.1 >> Boolean(true)); write(-10.1 >> Boolean(false)); write(-10.1 >> new Boolean(true)); write(-10.1 >> new Boolean(false)); write(-10.1 >> NaN); write(-10.1 >> +0); write(-10.1 >> -0); write(-10.1 >> 0); write(-10.1 >> 0.0); write(-10.1 >> -0.0); write(-10.1 >> +0.0); write(-10.1 >> 1); write(-10.1 >> 10); write(-10.1 >> 10.0); write(-10.1 >> 10.1); write(-10.1 >> -1); write(-10.1 >> -10); write(-10.1 >> -10.0); write(-10.1 >> -10.1); write(-10.1 >> Number.MAX_VALUE); write(-10.1 >> Number.MIN_VALUE); write(-10.1 >> Number.NaN); write(-10.1 >> Number.POSITIVE_INFINITY); write(-10.1 >> Number.NEGATIVE_INFINITY); write(-10.1 >> new Number(NaN)); write(-10.1 >> new Number(+0)); write(-10.1 >> new Number(-0)); write(-10.1 >> new Number(0)); write(-10.1 >> new Number(0.0)); write(-10.1 >> new Number(-0.0)); write(-10.1 >> new Number(+0.0)); write(-10.1 >> new Number(1)); write(-10.1 >> new Number(10)); write(-10.1 >> new Number(10.0)); write(-10.1 >> new Number(10.1)); write(-10.1 >> new Number(-1)); write(-10.1 >> new Number(-10)); write(-10.1 >> new Number(-10.0)); write(-10.1 >> new Number(-10.1)); write(-10.1 >> new Number(Number.MAX_VALUE)); write(-10.1 >> new Number(Number.MIN_VALUE)); write(-10.1 >> new Number(Number.NaN)); write(-10.1 >> new Number(Number.POSITIVE_INFINITY)); write(-10.1 >> new Number(Number.NEGATIVE_INFINITY)); write(-10.1 >> ''); write(-10.1 >> 0xa); write(-10.1 >> 04); write(-10.1 >> 'hello'); write(-10.1 >> 'hel' + 'lo'); write(-10.1 >> String('')); write(-10.1 >> String('hello')); write(-10.1 >> String('h' + 'ello')); write(-10.1 >> new String('')); write(-10.1 >> new String('hello')); write(-10.1 >> new String('he' + 'llo')); write(-10.1 >> new Object()); write(-10.1 >> new Object()); write(-10.1 >> [1, 2, 3]); write(-10.1 >> [1 ,2 , 3]); write(-10.1 >> new Array(3)); write(-10.1 >> Array(3)); write(-10.1 >> new Array(1 ,2 ,3)); write(-10.1 >> Array(1)); write(-10.1 >> foo); write(Number.MAX_VALUE >> undefined); write(Number.MAX_VALUE >> null); write(Number.MAX_VALUE >> true); write(Number.MAX_VALUE >> false); write(Number.MAX_VALUE >> Boolean(true)); write(Number.MAX_VALUE >> Boolean(false)); write(Number.MAX_VALUE >> new Boolean(true)); write(Number.MAX_VALUE >> new Boolean(false)); write(Number.MAX_VALUE >> NaN); write(Number.MAX_VALUE >> +0); write(Number.MAX_VALUE >> -0); write(Number.MAX_VALUE >> 0); write(Number.MAX_VALUE >> 0.0); write(Number.MAX_VALUE >> -0.0); write(Number.MAX_VALUE >> +0.0); write(Number.MAX_VALUE >> 1); write(Number.MAX_VALUE >> 10); write(Number.MAX_VALUE >> 10.0); write(Number.MAX_VALUE >> 10.1); write(Number.MAX_VALUE >> -1); write(Number.MAX_VALUE >> -10); write(Number.MAX_VALUE >> -10.0); write(Number.MAX_VALUE >> -10.1); write(Number.MAX_VALUE >> Number.MAX_VALUE); write(Number.MAX_VALUE >> Number.MIN_VALUE); write(Number.MAX_VALUE >> Number.NaN); write(Number.MAX_VALUE >> Number.POSITIVE_INFINITY); write(Number.MAX_VALUE >> Number.NEGATIVE_INFINITY); write(Number.MAX_VALUE >> new Number(NaN)); write(Number.MAX_VALUE >> new Number(+0)); write(Number.MAX_VALUE >> new Number(-0)); write(Number.MAX_VALUE >> new Number(0)); write(Number.MAX_VALUE >> new Number(0.0)); write(Number.MAX_VALUE >> new Number(-0.0)); write(Number.MAX_VALUE >> new Number(+0.0)); write(Number.MAX_VALUE >> new Number(1)); write(Number.MAX_VALUE >> new Number(10)); write(Number.MAX_VALUE >> new Number(10.0)); write(Number.MAX_VALUE >> new Number(10.1)); write(Number.MAX_VALUE >> new Number(-1)); write(Number.MAX_VALUE >> new Number(-10)); write(Number.MAX_VALUE >> new Number(-10.0)); write(Number.MAX_VALUE >> new Number(-10.1)); write(Number.MAX_VALUE >> new Number(Number.MAX_VALUE)); write(Number.MAX_VALUE >> new Number(Number.MIN_VALUE)); write(Number.MAX_VALUE >> new Number(Number.NaN)); write(Number.MAX_VALUE >> new Number(Number.POSITIVE_INFINITY)); write(Number.MAX_VALUE >> new Number(Number.NEGATIVE_INFINITY)); write(Number.MAX_VALUE >> ''); write(Number.MAX_VALUE >> 0xa); write(Number.MAX_VALUE >> 04); write(Number.MAX_VALUE >> 'hello'); write(Number.MAX_VALUE >> 'hel' + 'lo'); write(Number.MAX_VALUE >> String('')); write(Number.MAX_VALUE >> String('hello')); write(Number.MAX_VALUE >> String('h' + 'ello')); write(Number.MAX_VALUE >> new String('')); write(Number.MAX_VALUE >> new String('hello')); write(Number.MAX_VALUE >> new String('he' + 'llo')); write(Number.MAX_VALUE >> new Object()); write(Number.MAX_VALUE >> new Object()); write(Number.MAX_VALUE >> [1, 2, 3]); write(Number.MAX_VALUE >> [1 ,2 , 3]); write(Number.MAX_VALUE >> new Array(3)); write(Number.MAX_VALUE >> Array(3)); write(Number.MAX_VALUE >> new Array(1 ,2 ,3)); write(Number.MAX_VALUE >> Array(1)); write(Number.MAX_VALUE >> foo); write(Number.MIN_VALUE >> undefined); write(Number.MIN_VALUE >> null); write(Number.MIN_VALUE >> true); write(Number.MIN_VALUE >> false); write(Number.MIN_VALUE >> Boolean(true)); write(Number.MIN_VALUE >> Boolean(false)); write(Number.MIN_VALUE >> new Boolean(true)); write(Number.MIN_VALUE >> new Boolean(false)); write(Number.MIN_VALUE >> NaN); write(Number.MIN_VALUE >> +0); write(Number.MIN_VALUE >> -0); write(Number.MIN_VALUE >> 0); write(Number.MIN_VALUE >> 0.0); write(Number.MIN_VALUE >> -0.0); write(Number.MIN_VALUE >> +0.0); write(Number.MIN_VALUE >> 1); write(Number.MIN_VALUE >> 10); write(Number.MIN_VALUE >> 10.0); write(Number.MIN_VALUE >> 10.1); write(Number.MIN_VALUE >> -1); write(Number.MIN_VALUE >> -10); write(Number.MIN_VALUE >> -10.0); write(Number.MIN_VALUE >> -10.1); write(Number.MIN_VALUE >> Number.MAX_VALUE); write(Number.MIN_VALUE >> Number.MIN_VALUE); write(Number.MIN_VALUE >> Number.NaN); write(Number.MIN_VALUE >> Number.POSITIVE_INFINITY); write(Number.MIN_VALUE >> Number.NEGATIVE_INFINITY); write(Number.MIN_VALUE >> new Number(NaN)); write(Number.MIN_VALUE >> new Number(+0)); write(Number.MIN_VALUE >> new Number(-0)); write(Number.MIN_VALUE >> new Number(0)); write(Number.MIN_VALUE >> new Number(0.0)); write(Number.MIN_VALUE >> new Number(-0.0)); write(Number.MIN_VALUE >> new Number(+0.0)); write(Number.MIN_VALUE >> new Number(1)); write(Number.MIN_VALUE >> new Number(10)); write(Number.MIN_VALUE >> new Number(10.0)); write(Number.MIN_VALUE >> new Number(10.1)); write(Number.MIN_VALUE >> new Number(-1)); write(Number.MIN_VALUE >> new Number(-10)); write(Number.MIN_VALUE >> new Number(-10.0)); write(Number.MIN_VALUE >> new Number(-10.1)); write(Number.MIN_VALUE >> new Number(Number.MAX_VALUE)); write(Number.MIN_VALUE >> new Number(Number.MIN_VALUE)); write(Number.MIN_VALUE >> new Number(Number.NaN)); write(Number.MIN_VALUE >> new Number(Number.POSITIVE_INFINITY)); write(Number.MIN_VALUE >> new Number(Number.NEGATIVE_INFINITY)); write(Number.MIN_VALUE >> ''); write(Number.MIN_VALUE >> 0xa); write(Number.MIN_VALUE >> 04); write(Number.MIN_VALUE >> 'hello'); write(Number.MIN_VALUE >> 'hel' + 'lo'); write(Number.MIN_VALUE >> String('')); write(Number.MIN_VALUE >> String('hello')); write(Number.MIN_VALUE >> String('h' + 'ello')); write(Number.MIN_VALUE >> new String('')); write(Number.MIN_VALUE >> new String('hello')); write(Number.MIN_VALUE >> new String('he' + 'llo')); write(Number.MIN_VALUE >> new Object()); write(Number.MIN_VALUE >> new Object()); write(Number.MIN_VALUE >> [1, 2, 3]); write(Number.MIN_VALUE >> [1 ,2 , 3]); write(Number.MIN_VALUE >> new Array(3)); write(Number.MIN_VALUE >> Array(3)); write(Number.MIN_VALUE >> new Array(1 ,2 ,3)); write(Number.MIN_VALUE >> Array(1)); write(Number.MIN_VALUE >> foo); write(Number.NaN >> undefined); write(Number.NaN >> null); write(Number.NaN >> true); write(Number.NaN >> false); write(Number.NaN >> Boolean(true)); write(Number.NaN >> Boolean(false)); write(Number.NaN >> new Boolean(true)); write(Number.NaN >> new Boolean(false)); write(Number.NaN >> NaN); write(Number.NaN >> +0); write(Number.NaN >> -0); write(Number.NaN >> 0); write(Number.NaN >> 0.0); write(Number.NaN >> -0.0); write(Number.NaN >> +0.0); write(Number.NaN >> 1); write(Number.NaN >> 10); write(Number.NaN >> 10.0); write(Number.NaN >> 10.1); write(Number.NaN >> -1); write(Number.NaN >> -10); write(Number.NaN >> -10.0); write(Number.NaN >> -10.1); write(Number.NaN >> Number.MAX_VALUE); write(Number.NaN >> Number.MIN_VALUE); write(Number.NaN >> Number.NaN); write(Number.NaN >> Number.POSITIVE_INFINITY); write(Number.NaN >> Number.NEGATIVE_INFINITY); write(Number.NaN >> new Number(NaN)); write(Number.NaN >> new Number(+0)); write(Number.NaN >> new Number(-0)); write(Number.NaN >> new Number(0)); write(Number.NaN >> new Number(0.0)); write(Number.NaN >> new Number(-0.0)); write(Number.NaN >> new Number(+0.0)); write(Number.NaN >> new Number(1)); write(Number.NaN >> new Number(10)); write(Number.NaN >> new Number(10.0)); write(Number.NaN >> new Number(10.1)); write(Number.NaN >> new Number(-1)); write(Number.NaN >> new Number(-10)); write(Number.NaN >> new Number(-10.0)); write(Number.NaN >> new Number(-10.1)); write(Number.NaN >> new Number(Number.MAX_VALUE)); write(Number.NaN >> new Number(Number.MIN_VALUE)); write(Number.NaN >> new Number(Number.NaN)); write(Number.NaN >> new Number(Number.POSITIVE_INFINITY)); write(Number.NaN >> new Number(Number.NEGATIVE_INFINITY)); write(Number.NaN >> ''); write(Number.NaN >> 0xa); write(Number.NaN >> 04); write(Number.NaN >> 'hello'); write(Number.NaN >> 'hel' + 'lo'); write(Number.NaN >> String('')); write(Number.NaN >> String('hello')); write(Number.NaN >> String('h' + 'ello')); write(Number.NaN >> new String('')); write(Number.NaN >> new String('hello')); write(Number.NaN >> new String('he' + 'llo')); write(Number.NaN >> new Object()); write(Number.NaN >> new Object()); write(Number.NaN >> [1, 2, 3]); write(Number.NaN >> [1 ,2 , 3]); write(Number.NaN >> new Array(3)); write(Number.NaN >> Array(3)); write(Number.NaN >> new Array(1 ,2 ,3)); write(Number.NaN >> Array(1)); write(Number.NaN >> foo); write(Number.POSITIVE_INFINITY >> undefined); write(Number.POSITIVE_INFINITY >> null); write(Number.POSITIVE_INFINITY >> true); write(Number.POSITIVE_INFINITY >> false); write(Number.POSITIVE_INFINITY >> Boolean(true)); write(Number.POSITIVE_INFINITY >> Boolean(false)); write(Number.POSITIVE_INFINITY >> new Boolean(true)); write(Number.POSITIVE_INFINITY >> new Boolean(false)); write(Number.POSITIVE_INFINITY >> NaN); write(Number.POSITIVE_INFINITY >> +0); write(Number.POSITIVE_INFINITY >> -0); write(Number.POSITIVE_INFINITY >> 0); write(Number.POSITIVE_INFINITY >> 0.0); write(Number.POSITIVE_INFINITY >> -0.0); write(Number.POSITIVE_INFINITY >> +0.0); write(Number.POSITIVE_INFINITY >> 1); write(Number.POSITIVE_INFINITY >> 10); write(Number.POSITIVE_INFINITY >> 10.0); write(Number.POSITIVE_INFINITY >> 10.1); write(Number.POSITIVE_INFINITY >> -1); write(Number.POSITIVE_INFINITY >> -10); write(Number.POSITIVE_INFINITY >> -10.0); write(Number.POSITIVE_INFINITY >> -10.1); write(Number.POSITIVE_INFINITY >> Number.MAX_VALUE); write(Number.POSITIVE_INFINITY >> Number.MIN_VALUE); write(Number.POSITIVE_INFINITY >> Number.NaN); write(Number.POSITIVE_INFINITY >> Number.POSITIVE_INFINITY); write(Number.POSITIVE_INFINITY >> Number.NEGATIVE_INFINITY); write(Number.POSITIVE_INFINITY >> new Number(NaN)); write(Number.POSITIVE_INFINITY >> new Number(+0)); write(Number.POSITIVE_INFINITY >> new Number(-0)); write(Number.POSITIVE_INFINITY >> new Number(0)); write(Number.POSITIVE_INFINITY >> new Number(0.0)); write(Number.POSITIVE_INFINITY >> new Number(-0.0)); write(Number.POSITIVE_INFINITY >> new Number(+0.0)); write(Number.POSITIVE_INFINITY >> new Number(1)); write(Number.POSITIVE_INFINITY >> new Number(10)); write(Number.POSITIVE_INFINITY >> new Number(10.0)); write(Number.POSITIVE_INFINITY >> new Number(10.1)); write(Number.POSITIVE_INFINITY >> new Number(-1)); write(Number.POSITIVE_INFINITY >> new Number(-10)); write(Number.POSITIVE_INFINITY >> new Number(-10.0)); write(Number.POSITIVE_INFINITY >> new Number(-10.1)); write(Number.POSITIVE_INFINITY >> new Number(Number.MAX_VALUE)); write(Number.POSITIVE_INFINITY >> new Number(Number.MIN_VALUE)); write(Number.POSITIVE_INFINITY >> new Number(Number.NaN)); write(Number.POSITIVE_INFINITY >> new Number(Number.POSITIVE_INFINITY)); write(Number.POSITIVE_INFINITY >> new Number(Number.NEGATIVE_INFINITY)); write(Number.POSITIVE_INFINITY >> ''); write(Number.POSITIVE_INFINITY >> 0xa); write(Number.POSITIVE_INFINITY >> 04); write(Number.POSITIVE_INFINITY >> 'hello'); write(Number.POSITIVE_INFINITY >> 'hel' + 'lo'); write(Number.POSITIVE_INFINITY >> String('')); write(Number.POSITIVE_INFINITY >> String('hello')); write(Number.POSITIVE_INFINITY >> String('h' + 'ello')); write(Number.POSITIVE_INFINITY >> new String('')); write(Number.POSITIVE_INFINITY >> new String('hello')); write(Number.POSITIVE_INFINITY >> new String('he' + 'llo')); write(Number.POSITIVE_INFINITY >> new Object()); write(Number.POSITIVE_INFINITY >> new Object()); write(Number.POSITIVE_INFINITY >> [1, 2, 3]); write(Number.POSITIVE_INFINITY >> [1 ,2 , 3]); write(Number.POSITIVE_INFINITY >> new Array(3)); write(Number.POSITIVE_INFINITY >> Array(3)); write(Number.POSITIVE_INFINITY >> new Array(1 ,2 ,3)); write(Number.POSITIVE_INFINITY >> Array(1)); write(Number.POSITIVE_INFINITY >> foo); write(Number.NEGATIVE_INFINITY >> undefined); write(Number.NEGATIVE_INFINITY >> null); write(Number.NEGATIVE_INFINITY >> true); write(Number.NEGATIVE_INFINITY >> false); write(Number.NEGATIVE_INFINITY >> Boolean(true)); write(Number.NEGATIVE_INFINITY >> Boolean(false)); write(Number.NEGATIVE_INFINITY >> new Boolean(true)); write(Number.NEGATIVE_INFINITY >> new Boolean(false)); write(Number.NEGATIVE_INFINITY >> NaN); write(Number.NEGATIVE_INFINITY >> +0); write(Number.NEGATIVE_INFINITY >> -0); write(Number.NEGATIVE_INFINITY >> 0); write(Number.NEGATIVE_INFINITY >> 0.0); write(Number.NEGATIVE_INFINITY >> -0.0); write(Number.NEGATIVE_INFINITY >> +0.0); write(Number.NEGATIVE_INFINITY >> 1); write(Number.NEGATIVE_INFINITY >> 10); write(Number.NEGATIVE_INFINITY >> 10.0); write(Number.NEGATIVE_INFINITY >> 10.1); write(Number.NEGATIVE_INFINITY >> -1); write(Number.NEGATIVE_INFINITY >> -10); write(Number.NEGATIVE_INFINITY >> -10.0); write(Number.NEGATIVE_INFINITY >> -10.1); write(Number.NEGATIVE_INFINITY >> Number.MAX_VALUE); write(Number.NEGATIVE_INFINITY >> Number.MIN_VALUE); write(Number.NEGATIVE_INFINITY >> Number.NaN); write(Number.NEGATIVE_INFINITY >> Number.POSITIVE_INFINITY); write(Number.NEGATIVE_INFINITY >> Number.NEGATIVE_INFINITY); write(Number.NEGATIVE_INFINITY >> new Number(NaN)); write(Number.NEGATIVE_INFINITY >> new Number(+0)); write(Number.NEGATIVE_INFINITY >> new Number(-0)); write(Number.NEGATIVE_INFINITY >> new Number(0)); write(Number.NEGATIVE_INFINITY >> new Number(0.0)); write(Number.NEGATIVE_INFINITY >> new Number(-0.0)); write(Number.NEGATIVE_INFINITY >> new Number(+0.0)); write(Number.NEGATIVE_INFINITY >> new Number(1)); write(Number.NEGATIVE_INFINITY >> new Number(10)); write(Number.NEGATIVE_INFINITY >> new Number(10.0)); write(Number.NEGATIVE_INFINITY >> new Number(10.1)); write(Number.NEGATIVE_INFINITY >> new Number(-1)); write(Number.NEGATIVE_INFINITY >> new Number(-10)); write(Number.NEGATIVE_INFINITY >> new Number(-10.0)); write(Number.NEGATIVE_INFINITY >> new Number(-10.1)); write(Number.NEGATIVE_INFINITY >> new Number(Number.MAX_VALUE)); write(Number.NEGATIVE_INFINITY >> new Number(Number.MIN_VALUE)); write(Number.NEGATIVE_INFINITY >> new Number(Number.NaN)); write(Number.NEGATIVE_INFINITY >> new Number(Number.POSITIVE_INFINITY)); write(Number.NEGATIVE_INFINITY >> new Number(Number.NEGATIVE_INFINITY)); write(Number.NEGATIVE_INFINITY >> ''); write(Number.NEGATIVE_INFINITY >> 0xa); write(Number.NEGATIVE_INFINITY >> 04); write(Number.NEGATIVE_INFINITY >> 'hello'); write(Number.NEGATIVE_INFINITY >> 'hel' + 'lo'); write(Number.NEGATIVE_INFINITY >> String('')); write(Number.NEGATIVE_INFINITY >> String('hello')); write(Number.NEGATIVE_INFINITY >> String('h' + 'ello')); write(Number.NEGATIVE_INFINITY >> new String('')); write(Number.NEGATIVE_INFINITY >> new String('hello')); write(Number.NEGATIVE_INFINITY >> new String('he' + 'llo')); write(Number.NEGATIVE_INFINITY >> new Object()); write(Number.NEGATIVE_INFINITY >> new Object()); write(Number.NEGATIVE_INFINITY >> [1, 2, 3]); write(Number.NEGATIVE_INFINITY >> [1 ,2 , 3]); write(Number.NEGATIVE_INFINITY >> new Array(3)); write(Number.NEGATIVE_INFINITY >> Array(3)); write(Number.NEGATIVE_INFINITY >> new Array(1 ,2 ,3)); write(Number.NEGATIVE_INFINITY >> Array(1)); write(Number.NEGATIVE_INFINITY >> foo); write(new Number(NaN) >> undefined); write(new Number(NaN) >> null); write(new Number(NaN) >> true); write(new Number(NaN) >> false); write(new Number(NaN) >> Boolean(true)); write(new Number(NaN) >> Boolean(false)); write(new Number(NaN) >> new Boolean(true)); write(new Number(NaN) >> new Boolean(false)); write(new Number(NaN) >> NaN); write(new Number(NaN) >> +0); write(new Number(NaN) >> -0); write(new Number(NaN) >> 0); write(new Number(NaN) >> 0.0); write(new Number(NaN) >> -0.0); write(new Number(NaN) >> +0.0); write(new Number(NaN) >> 1); write(new Number(NaN) >> 10); write(new Number(NaN) >> 10.0); write(new Number(NaN) >> 10.1); write(new Number(NaN) >> -1); write(new Number(NaN) >> -10); write(new Number(NaN) >> -10.0); write(new Number(NaN) >> -10.1); write(new Number(NaN) >> Number.MAX_VALUE); write(new Number(NaN) >> Number.MIN_VALUE); write(new Number(NaN) >> Number.NaN); write(new Number(NaN) >> Number.POSITIVE_INFINITY); write(new Number(NaN) >> Number.NEGATIVE_INFINITY); write(new Number(NaN) >> new Number(NaN)); write(new Number(NaN) >> new Number(+0)); write(new Number(NaN) >> new Number(-0)); write(new Number(NaN) >> new Number(0)); write(new Number(NaN) >> new Number(0.0)); write(new Number(NaN) >> new Number(-0.0)); write(new Number(NaN) >> new Number(+0.0)); write(new Number(NaN) >> new Number(1)); write(new Number(NaN) >> new Number(10)); write(new Number(NaN) >> new Number(10.0)); write(new Number(NaN) >> new Number(10.1)); write(new Number(NaN) >> new Number(-1)); write(new Number(NaN) >> new Number(-10)); write(new Number(NaN) >> new Number(-10.0)); write(new Number(NaN) >> new Number(-10.1)); write(new Number(NaN) >> new Number(Number.MAX_VALUE)); write(new Number(NaN) >> new Number(Number.MIN_VALUE)); write(new Number(NaN) >> new Number(Number.NaN)); write(new Number(NaN) >> new Number(Number.POSITIVE_INFINITY)); write(new Number(NaN) >> new Number(Number.NEGATIVE_INFINITY)); write(new Number(NaN) >> ''); write(new Number(NaN) >> 0xa); write(new Number(NaN) >> 04); write(new Number(NaN) >> 'hello'); write(new Number(NaN) >> 'hel' + 'lo'); write(new Number(NaN) >> String('')); write(new Number(NaN) >> String('hello')); write(new Number(NaN) >> String('h' + 'ello')); write(new Number(NaN) >> new String('')); write(new Number(NaN) >> new String('hello')); write(new Number(NaN) >> new String('he' + 'llo')); write(new Number(NaN) >> new Object()); write(new Number(NaN) >> new Object()); write(new Number(NaN) >> [1, 2, 3]); write(new Number(NaN) >> [1 ,2 , 3]); write(new Number(NaN) >> new Array(3)); write(new Number(NaN) >> Array(3)); write(new Number(NaN) >> new Array(1 ,2 ,3)); write(new Number(NaN) >> Array(1)); write(new Number(NaN) >> foo); write(new Number(+0) >> undefined); write(new Number(+0) >> null); write(new Number(+0) >> true); write(new Number(+0) >> false); write(new Number(+0) >> Boolean(true)); write(new Number(+0) >> Boolean(false)); write(new Number(+0) >> new Boolean(true)); write(new Number(+0) >> new Boolean(false)); write(new Number(+0) >> NaN); write(new Number(+0) >> +0); write(new Number(+0) >> -0); write(new Number(+0) >> 0); write(new Number(+0) >> 0.0); write(new Number(+0) >> -0.0); write(new Number(+0) >> +0.0); write(new Number(+0) >> 1); write(new Number(+0) >> 10); write(new Number(+0) >> 10.0); write(new Number(+0) >> 10.1); write(new Number(+0) >> -1); write(new Number(+0) >> -10); write(new Number(+0) >> -10.0); write(new Number(+0) >> -10.1); write(new Number(+0) >> Number.MAX_VALUE); write(new Number(+0) >> Number.MIN_VALUE); write(new Number(+0) >> Number.NaN); write(new Number(+0) >> Number.POSITIVE_INFINITY); write(new Number(+0) >> Number.NEGATIVE_INFINITY); write(new Number(+0) >> new Number(NaN));