//-------------------------------------------------------------------------------------------------------
// 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));
