//-------------------------------------------------------------------------------------------------------
// 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(new Number(+0) >= new Number(+0));
write(new Number(+0) >= new Number(-0));
write(new Number(+0) >= new Number(0));
write(new Number(+0) >= new Number(0.0));
write(new Number(+0) >= new Number(-0.0));
write(new Number(+0) >= new Number(+0.0));
write(new Number(+0) >= new Number(1));
write(new Number(+0) >= new Number(10));
write(new Number(+0) >= new Number(10.0));
write(new Number(+0) >= new Number(10.1));
write(new Number(+0) >= new Number(-1));
write(new Number(+0) >= new Number(-10));
write(new Number(+0) >= new Number(-10.0));
write(new Number(+0) >= new Number(-10.1));
write(new Number(+0) >= new Number(Number.MAX_VALUE));
write(new Number(+0) >= new Number(Number.MIN_VALUE));
write(new Number(+0) >= new Number(Number.NaN));
write(new Number(+0) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(+0) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(+0) >= '');
write(new Number(+0) >= 0xa);
write(new Number(+0) >= 04);
write(new Number(+0) >= 'hello');
write(new Number(+0) >= 'hel' + 'lo');
write(new Number(+0) >= String(''));
write(new Number(+0) >= String('hello'));
write(new Number(+0) >= String('h' + 'ello'));
write(new Number(+0) >= new String(''));
write(new Number(+0) >= new String('hello'));
write(new Number(+0) >= new String('he' + 'llo'));
write(new Number(+0) >= new Object());
write(new Number(+0) >= new Object());
write(new Number(+0) >= [1, 2, 3]);
write(new Number(+0) >= [1 ,2 , 3]);
write(new Number(+0) >= new Array(3));
write(new Number(+0) >= Array(3));
write(new Number(+0) >= new Array(1 ,2 ,3));
write(new Number(+0) >= Array(1));
write(new Number(+0) >= 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));
write(new Number(-0) >= new Number(+0));
write(new Number(-0) >= new Number(-0));
write(new Number(-0) >= new Number(0));
write(new Number(-0) >= new Number(0.0));
write(new Number(-0) >= new Number(-0.0));
write(new Number(-0) >= new Number(+0.0));
write(new Number(-0) >= new Number(1));
write(new Number(-0) >= new Number(10));
write(new Number(-0) >= new Number(10.0));
write(new Number(-0) >= new Number(10.1));
write(new Number(-0) >= new Number(-1));
write(new Number(-0) >= new Number(-10));
write(new Number(-0) >= new Number(-10.0));
write(new Number(-0) >= new Number(-10.1));
write(new Number(-0) >= new Number(Number.MAX_VALUE));
write(new Number(-0) >= new Number(Number.MIN_VALUE));
write(new Number(-0) >= new Number(Number.NaN));
write(new Number(-0) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(-0) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(-0) >= '');
write(new Number(-0) >= 0xa);
write(new Number(-0) >= 04);
write(new Number(-0) >= 'hello');
write(new Number(-0) >= 'hel' + 'lo');
write(new Number(-0) >= String(''));
write(new Number(-0) >= String('hello'));
write(new Number(-0) >= String('h' + 'ello'));
write(new Number(-0) >= new String(''));
write(new Number(-0) >= new String('hello'));
write(new Number(-0) >= new String('he' + 'llo'));
write(new Number(-0) >= new Object());
write(new Number(-0) >= new Object());
write(new Number(-0) >= [1, 2, 3]);
write(new Number(-0) >= [1 ,2 , 3]);
write(new Number(-0) >= new Array(3));
write(new Number(-0) >= Array(3));
write(new Number(-0) >= new Array(1 ,2 ,3));
write(new Number(-0) >= Array(1));
write(new Number(-0) >= 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));
write(new Number(0) >= new Number(+0));
write(new Number(0) >= new Number(-0));
write(new Number(0) >= new Number(0));
write(new Number(0) >= new Number(0.0));
write(new Number(0) >= new Number(-0.0));
write(new Number(0) >= new Number(+0.0));
write(new Number(0) >= new Number(1));
write(new Number(0) >= new Number(10));
write(new Number(0) >= new Number(10.0));
write(new Number(0) >= new Number(10.1));
write(new Number(0) >= new Number(-1));
write(new Number(0) >= new Number(-10));
write(new Number(0) >= new Number(-10.0));
write(new Number(0) >= new Number(-10.1));
write(new Number(0) >= new Number(Number.MAX_VALUE));
write(new Number(0) >= new Number(Number.MIN_VALUE));
write(new Number(0) >= new Number(Number.NaN));
write(new Number(0) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(0) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(0) >= '');
write(new Number(0) >= 0xa);
write(new Number(0) >= 04);
write(new Number(0) >= 'hello');
write(new Number(0) >= 'hel' + 'lo');
write(new Number(0) >= String(''));
write(new Number(0) >= String('hello'));
write(new Number(0) >= String('h' + 'ello'));
write(new Number(0) >= new String(''));
write(new Number(0) >= new String('hello'));
write(new Number(0) >= new String('he' + 'llo'));
write(new Number(0) >= new Object());
write(new Number(0) >= new Object());
write(new Number(0) >= [1, 2, 3]);
write(new Number(0) >= [1 ,2 , 3]);
write(new Number(0) >= new Array(3));
write(new Number(0) >= Array(3));
write(new Number(0) >= new Array(1 ,2 ,3));
write(new Number(0) >= Array(1));
write(new Number(0) >= foo);
write(new Number(0.0) >= undefined);
write(new Number(0.0) >= null);
write(new Number(0.0) >= true);
write(new Number(0.0) >= false);
write(new Number(0.0) >= Boolean(true));
write(new Number(0.0) >= Boolean(false));
write(new Number(0.0) >= new Boolean(true));
write(new Number(0.0) >= new Boolean(false));
write(new Number(0.0) >= NaN);
write(new Number(0.0) >= +0);
write(new Number(0.0) >= -0);
write(new Number(0.0) >= 0);
write(new Number(0.0) >= 0.0);
write(new Number(0.0) >= -0.0);
write(new Number(0.0) >= +0.0);
write(new Number(0.0) >= 1);
write(new Number(0.0) >= 10);
write(new Number(0.0) >= 10.0);
write(new Number(0.0) >= 10.1);
write(new Number(0.0) >= -1);
write(new Number(0.0) >= -10);
write(new Number(0.0) >= -10.0);
write(new Number(0.0) >= -10.1);
write(new Number(0.0) >= Number.MAX_VALUE);
write(new Number(0.0) >= Number.MIN_VALUE);
write(new Number(0.0) >= Number.NaN);
write(new Number(0.0) >= Number.POSITIVE_INFINITY);
write(new Number(0.0) >= Number.NEGATIVE_INFINITY);
write(new Number(0.0) >= new Number(NaN));
write(new Number(0.0) >= new Number(+0));
write(new Number(0.0) >= new Number(-0));
write(new Number(0.0) >= new Number(0));
write(new Number(0.0) >= new Number(0.0));
write(new Number(0.0) >= new Number(-0.0));
write(new Number(0.0) >= new Number(+0.0));
write(new Number(0.0) >= new Number(1));
write(new Number(0.0) >= new Number(10));
write(new Number(0.0) >= new Number(10.0));
write(new Number(0.0) >= new Number(10.1));
write(new Number(0.0) >= new Number(-1));
write(new Number(0.0) >= new Number(-10));
write(new Number(0.0) >= new Number(-10.0));
write(new Number(0.0) >= new Number(-10.1));
write(new Number(0.0) >= new Number(Number.MAX_VALUE));
write(new Number(0.0) >= new Number(Number.MIN_VALUE));
write(new Number(0.0) >= new Number(Number.NaN));
write(new Number(0.0) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(0.0) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(0.0) >= '');
write(new Number(0.0) >= 0xa);
write(new Number(0.0) >= 04);
write(new Number(0.0) >= 'hello');
write(new Number(0.0) >= 'hel' + 'lo');
write(new Number(0.0) >= String(''));
write(new Number(0.0) >= String('hello'));
write(new Number(0.0) >= String('h' + 'ello'));
write(new Number(0.0) >= new String(''));
write(new Number(0.0) >= new String('hello'));
write(new Number(0.0) >= new String('he' + 'llo'));
write(new Number(0.0) >= new Object());
write(new Number(0.0) >= new Object());
write(new Number(0.0) >= [1, 2, 3]);
write(new Number(0.0) >= [1 ,2 , 3]);
write(new Number(0.0) >= new Array(3));
write(new Number(0.0) >= Array(3));
write(new Number(0.0) >= new Array(1 ,2 ,3));
write(new Number(0.0) >= Array(1));
write(new Number(0.0) >= foo);
write(new Number(-0.0) >= undefined);
write(new Number(-0.0) >= null);
write(new Number(-0.0) >= true);
write(new Number(-0.0) >= false);
write(new Number(-0.0) >= Boolean(true));
write(new Number(-0.0) >= Boolean(false));
write(new Number(-0.0) >= new Boolean(true));
write(new Number(-0.0) >= new Boolean(false));
write(new Number(-0.0) >= NaN);
write(new Number(-0.0) >= +0);
write(new Number(-0.0) >= -0);
write(new Number(-0.0) >= 0);
write(new Number(-0.0) >= 0.0);
write(new Number(-0.0) >= -0.0);
write(new Number(-0.0) >= +0.0);
write(new Number(-0.0) >= 1);
write(new Number(-0.0) >= 10);
write(new Number(-0.0) >= 10.0);
write(new Number(-0.0) >= 10.1);
write(new Number(-0.0) >= -1);
write(new Number(-0.0) >= -10);
write(new Number(-0.0) >= -10.0);
write(new Number(-0.0) >= -10.1);
write(new Number(-0.0) >= Number.MAX_VALUE);
write(new Number(-0.0) >= Number.MIN_VALUE);
write(new Number(-0.0) >= Number.NaN);
write(new Number(-0.0) >= Number.POSITIVE_INFINITY);
write(new Number(-0.0) >= Number.NEGATIVE_INFINITY);
write(new Number(-0.0) >= new Number(NaN));
write(new Number(-0.0) >= new Number(+0));
write(new Number(-0.0) >= new Number(-0));
write(new Number(-0.0) >= new Number(0));
write(new Number(-0.0) >= new Number(0.0));
write(new Number(-0.0) >= new Number(-0.0));
write(new Number(-0.0) >= new Number(+0.0));
write(new Number(-0.0) >= new Number(1));
write(new Number(-0.0) >= new Number(10));
write(new Number(-0.0) >= new Number(10.0));
write(new Number(-0.0) >= new Number(10.1));
write(new Number(-0.0) >= new Number(-1));
write(new Number(-0.0) >= new Number(-10));
write(new Number(-0.0) >= new Number(-10.0));
write(new Number(-0.0) >= new Number(-10.1));
write(new Number(-0.0) >= new Number(Number.MAX_VALUE));
write(new Number(-0.0) >= new Number(Number.MIN_VALUE));
write(new Number(-0.0) >= new Number(Number.NaN));
write(new Number(-0.0) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(-0.0) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(-0.0) >= '');
write(new Number(-0.0) >= 0xa);
write(new Number(-0.0) >= 04);
write(new Number(-0.0) >= 'hello');
write(new Number(-0.0) >= 'hel' + 'lo');
write(new Number(-0.0) >= String(''));
write(new Number(-0.0) >= String('hello'));
write(new Number(-0.0) >= String('h' + 'ello'));
write(new Number(-0.0) >= new String(''));
write(new Number(-0.0) >= new String('hello'));
write(new Number(-0.0) >= new String('he' + 'llo'));
write(new Number(-0.0) >= new Object());
write(new Number(-0.0) >= new Object());
write(new Number(-0.0) >= [1, 2, 3]);
write(new Number(-0.0) >= [1 ,2 , 3]);
write(new Number(-0.0) >= new Array(3));
write(new Number(-0.0) >= Array(3));
write(new Number(-0.0) >= new Array(1 ,2 ,3));
write(new Number(-0.0) >= Array(1));
write(new Number(-0.0) >= foo);
write(new Number(+0.0) >= undefined);
write(new Number(+0.0) >= null);
write(new Number(+0.0) >= true);
write(new Number(+0.0) >= false);
write(new Number(+0.0) >= Boolean(true));
write(new Number(+0.0) >= Boolean(false));
write(new Number(+0.0) >= new Boolean(true));
write(new Number(+0.0) >= new Boolean(false));
write(new Number(+0.0) >= NaN);
write(new Number(+0.0) >= +0);
write(new Number(+0.0) >= -0);
write(new Number(+0.0) >= 0);
write(new Number(+0.0) >= 0.0);
write(new Number(+0.0) >= -0.0);
write(new Number(+0.0) >= +0.0);
write(new Number(+0.0) >= 1);
write(new Number(+0.0) >= 10);
write(new Number(+0.0) >= 10.0);
write(new Number(+0.0) >= 10.1);
write(new Number(+0.0) >= -1);
write(new Number(+0.0) >= -10);
write(new Number(+0.0) >= -10.0);
write(new Number(+0.0) >= -10.1);
write(new Number(+0.0) >= Number.MAX_VALUE);
write(new Number(+0.0) >= Number.MIN_VALUE);
write(new Number(+0.0) >= Number.NaN);
write(new Number(+0.0) >= Number.POSITIVE_INFINITY);
write(new Number(+0.0) >= Number.NEGATIVE_INFINITY);
write(new Number(+0.0) >= new Number(NaN));
write(new Number(+0.0) >= new Number(+0));
write(new Number(+0.0) >= new Number(-0));
write(new Number(+0.0) >= new Number(0));
write(new Number(+0.0) >= new Number(0.0));
write(new Number(+0.0) >= new Number(-0.0));
write(new Number(+0.0) >= new Number(+0.0));
write(new Number(+0.0) >= new Number(1));
write(new Number(+0.0) >= new Number(10));
write(new Number(+0.0) >= new Number(10.0));
write(new Number(+0.0) >= new Number(10.1));
write(new Number(+0.0) >= new Number(-1));
write(new Number(+0.0) >= new Number(-10));
write(new Number(+0.0) >= new Number(-10.0));
write(new Number(+0.0) >= new Number(-10.1));
write(new Number(+0.0) >= new Number(Number.MAX_VALUE));
write(new Number(+0.0) >= new Number(Number.MIN_VALUE));
write(new Number(+0.0) >= new Number(Number.NaN));
write(new Number(+0.0) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(+0.0) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(+0.0) >= '');
write(new Number(+0.0) >= 0xa);
write(new Number(+0.0) >= 04);
write(new Number(+0.0) >= 'hello');
write(new Number(+0.0) >= 'hel' + 'lo');
write(new Number(+0.0) >= String(''));
write(new Number(+0.0) >= String('hello'));
write(new Number(+0.0) >= String('h' + 'ello'));
write(new Number(+0.0) >= new String(''));
write(new Number(+0.0) >= new String('hello'));
write(new Number(+0.0) >= new String('he' + 'llo'));
write(new Number(+0.0) >= new Object());
write(new Number(+0.0) >= new Object());
write(new Number(+0.0) >= [1, 2, 3]);
write(new Number(+0.0) >= [1 ,2 , 3]);
write(new Number(+0.0) >= new Array(3));
write(new Number(+0.0) >= Array(3));
write(new Number(+0.0) >= new Array(1 ,2 ,3));
write(new Number(+0.0) >= Array(1));
write(new Number(+0.0) >= foo);
write(new Number(1) >= undefined);
write(new Number(1) >= null);
write(new Number(1) >= true);
write(new Number(1) >= false);
write(new Number(1) >= Boolean(true));
write(new Number(1) >= Boolean(false));
write(new Number(1) >= new Boolean(true));
write(new Number(1) >= new Boolean(false));
write(new Number(1) >= NaN);
write(new Number(1) >= +0);
write(new Number(1) >= -0);
write(new Number(1) >= 0);
write(new Number(1) >= 0.0);
write(new Number(1) >= -0.0);
write(new Number(1) >= +0.0);
write(new Number(1) >= 1);
write(new Number(1) >= 10);
write(new Number(1) >= 10.0);
write(new Number(1) >= 10.1);
write(new Number(1) >= -1);
write(new Number(1) >= -10);
write(new Number(1) >= -10.0);
write(new Number(1) >= -10.1);
write(new Number(1) >= Number.MAX_VALUE);
write(new Number(1) >= Number.MIN_VALUE);
write(new Number(1) >= Number.NaN);
write(new Number(1) >= Number.POSITIVE_INFINITY);
write(new Number(1) >= Number.NEGATIVE_INFINITY);
write(new Number(1) >= new Number(NaN));
write(new Number(1) >= new Number(+0));
write(new Number(1) >= new Number(-0));
write(new Number(1) >= new Number(0));
write(new Number(1) >= new Number(0.0));
write(new Number(1) >= new Number(-0.0));
write(new Number(1) >= new Number(+0.0));
write(new Number(1) >= new Number(1));
write(new Number(1) >= new Number(10));
write(new Number(1) >= new Number(10.0));
write(new Number(1) >= new Number(10.1));
write(new Number(1) >= new Number(-1));
write(new Number(1) >= new Number(-10));
write(new Number(1) >= new Number(-10.0));
write(new Number(1) >= new Number(-10.1));
write(new Number(1) >= new Number(Number.MAX_VALUE));
write(new Number(1) >= new Number(Number.MIN_VALUE));
write(new Number(1) >= new Number(Number.NaN));
write(new Number(1) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(1) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(1) >= '');
write(new Number(1) >= 0xa);
write(new Number(1) >= 04);
write(new Number(1) >= 'hello');
write(new Number(1) >= 'hel' + 'lo');
write(new Number(1) >= String(''));
write(new Number(1) >= String('hello'));
write(new Number(1) >= String('h' + 'ello'));
write(new Number(1) >= new String(''));
write(new Number(1) >= new String('hello'));
write(new Number(1) >= new String('he' + 'llo'));
write(new Number(1) >= new Object());
write(new Number(1) >= new Object());
write(new Number(1) >= [1, 2, 3]);
write(new Number(1) >= [1 ,2 , 3]);
write(new Number(1) >= new Array(3));
write(new Number(1) >= Array(3));
write(new Number(1) >= new Array(1 ,2 ,3));
write(new Number(1) >= Array(1));
write(new Number(1) >= foo);
write(new Number(10) >= undefined);
write(new Number(10) >= null);
write(new Number(10) >= true);
write(new Number(10) >= false);
write(new Number(10) >= Boolean(true));
write(new Number(10) >= Boolean(false));
write(new Number(10) >= new Boolean(true));
write(new Number(10) >= new Boolean(false));
write(new Number(10) >= NaN);
write(new Number(10) >= +0);
write(new Number(10) >= -0);
write(new Number(10) >= 0);
write(new Number(10) >= 0.0);
write(new Number(10) >= -0.0);
write(new Number(10) >= +0.0);
write(new Number(10) >= 1);
write(new Number(10) >= 10);
write(new Number(10) >= 10.0);
write(new Number(10) >= 10.1);
write(new Number(10) >= -1);
write(new Number(10) >= -10);
write(new Number(10) >= -10.0);
write(new Number(10) >= -10.1);
write(new Number(10) >= Number.MAX_VALUE);
write(new Number(10) >= Number.MIN_VALUE);
write(new Number(10) >= Number.NaN);
write(new Number(10) >= Number.POSITIVE_INFINITY);
write(new Number(10) >= Number.NEGATIVE_INFINITY);
write(new Number(10) >= new Number(NaN));
write(new Number(10) >= new Number(+0));
write(new Number(10) >= new Number(-0));
write(new Number(10) >= new Number(0));
write(new Number(10) >= new Number(0.0));
write(new Number(10) >= new Number(-0.0));
write(new Number(10) >= new Number(+0.0));
write(new Number(10) >= new Number(1));
write(new Number(10) >= new Number(10));
write(new Number(10) >= new Number(10.0));
write(new Number(10) >= new Number(10.1));
write(new Number(10) >= new Number(-1));
write(new Number(10) >= new Number(-10));
write(new Number(10) >= new Number(-10.0));
write(new Number(10) >= new Number(-10.1));
write(new Number(10) >= new Number(Number.MAX_VALUE));
write(new Number(10) >= new Number(Number.MIN_VALUE));
write(new Number(10) >= new Number(Number.NaN));
write(new Number(10) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(10) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(10) >= '');
write(new Number(10) >= 0xa);
write(new Number(10) >= 04);
write(new Number(10) >= 'hello');
write(new Number(10) >= 'hel' + 'lo');
write(new Number(10) >= String(''));
write(new Number(10) >= String('hello'));
write(new Number(10) >= String('h' + 'ello'));
write(new Number(10) >= new String(''));
write(new Number(10) >= new String('hello'));
write(new Number(10) >= new String('he' + 'llo'));
write(new Number(10) >= new Object());
write(new Number(10) >= new Object());
write(new Number(10) >= [1, 2, 3]);
write(new Number(10) >= [1 ,2 , 3]);
write(new Number(10) >= new Array(3));
write(new Number(10) >= Array(3));
write(new Number(10) >= new Array(1 ,2 ,3));
write(new Number(10) >= Array(1));
write(new Number(10) >= foo);
write(new Number(10.0) >= undefined);
write(new Number(10.0) >= null);
write(new Number(10.0) >= true);
write(new Number(10.0) >= false);
write(new Number(10.0) >= Boolean(true));
write(new Number(10.0) >= Boolean(false));
write(new Number(10.0) >= new Boolean(true));
write(new Number(10.0) >= new Boolean(false));
write(new Number(10.0) >= NaN);
write(new Number(10.0) >= +0);
write(new Number(10.0) >= -0);
write(new Number(10.0) >= 0);
write(new Number(10.0) >= 0.0);
write(new Number(10.0) >= -0.0);
write(new Number(10.0) >= +0.0);
write(new Number(10.0) >= 1);
write(new Number(10.0) >= 10);
write(new Number(10.0) >= 10.0);
write(new Number(10.0) >= 10.1);
write(new Number(10.0) >= -1);
write(new Number(10.0) >= -10);
write(new Number(10.0) >= -10.0);
write(new Number(10.0) >= -10.1);
write(new Number(10.0) >= Number.MAX_VALUE);
write(new Number(10.0) >= Number.MIN_VALUE);
write(new Number(10.0) >= Number.NaN);
write(new Number(10.0) >= Number.POSITIVE_INFINITY);
write(new Number(10.0) >= Number.NEGATIVE_INFINITY);
write(new Number(10.0) >= new Number(NaN));
write(new Number(10.0) >= new Number(+0));
write(new Number(10.0) >= new Number(-0));
write(new Number(10.0) >= new Number(0));
write(new Number(10.0) >= new Number(0.0));
write(new Number(10.0) >= new Number(-0.0));
write(new Number(10.0) >= new Number(+0.0));
write(new Number(10.0) >= new Number(1));
write(new Number(10.0) >= new Number(10));
write(new Number(10.0) >= new Number(10.0));
write(new Number(10.0) >= new Number(10.1));
write(new Number(10.0) >= new Number(-1));
write(new Number(10.0) >= new Number(-10));
write(new Number(10.0) >= new Number(-10.0));
write(new Number(10.0) >= new Number(-10.1));
write(new Number(10.0) >= new Number(Number.MAX_VALUE));
write(new Number(10.0) >= new Number(Number.MIN_VALUE));
write(new Number(10.0) >= new Number(Number.NaN));
write(new Number(10.0) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(10.0) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(10.0) >= '');
write(new Number(10.0) >= 0xa);
write(new Number(10.0) >= 04);
write(new Number(10.0) >= 'hello');
write(new Number(10.0) >= 'hel' + 'lo');
write(new Number(10.0) >= String(''));
write(new Number(10.0) >= String('hello'));
write(new Number(10.0) >= String('h' + 'ello'));
write(new Number(10.0) >= new String(''));
write(new Number(10.0) >= new String('hello'));
write(new Number(10.0) >= new String('he' + 'llo'));
write(new Number(10.0) >= new Object());
write(new Number(10.0) >= new Object());
write(new Number(10.0) >= [1, 2, 3]);
write(new Number(10.0) >= [1 ,2 , 3]);
write(new Number(10.0) >= new Array(3));
write(new Number(10.0) >= Array(3));
write(new Number(10.0) >= new Array(1 ,2 ,3));
write(new Number(10.0) >= Array(1));
write(new Number(10.0) >= foo);
write(new Number(10.1) >= undefined);
write(new Number(10.1) >= null);
write(new Number(10.1) >= true);
write(new Number(10.1) >= false);
write(new Number(10.1) >= Boolean(true));
write(new Number(10.1) >= Boolean(false));
write(new Number(10.1) >= new Boolean(true));
write(new Number(10.1) >= new Boolean(false));
write(new Number(10.1) >= NaN);
write(new Number(10.1) >= +0);
write(new Number(10.1) >= -0);
write(new Number(10.1) >= 0);
write(new Number(10.1) >= 0.0);
write(new Number(10.1) >= -0.0);
write(new Number(10.1) >= +0.0);
write(new Number(10.1) >= 1);
write(new Number(10.1) >= 10);
write(new Number(10.1) >= 10.0);
write(new Number(10.1) >= 10.1);
write(new Number(10.1) >= -1);
write(new Number(10.1) >= -10);
write(new Number(10.1) >= -10.0);
write(new Number(10.1) >= -10.1);
write(new Number(10.1) >= Number.MAX_VALUE);
write(new Number(10.1) >= Number.MIN_VALUE);
write(new Number(10.1) >= Number.NaN);
write(new Number(10.1) >= Number.POSITIVE_INFINITY);
write(new Number(10.1) >= Number.NEGATIVE_INFINITY);
write(new Number(10.1) >= new Number(NaN));
write(new Number(10.1) >= new Number(+0));
write(new Number(10.1) >= new Number(-0));
write(new Number(10.1) >= new Number(0));
write(new Number(10.1) >= new Number(0.0));
write(new Number(10.1) >= new Number(-0.0));
write(new Number(10.1) >= new Number(+0.0));
write(new Number(10.1) >= new Number(1));
write(new Number(10.1) >= new Number(10));
write(new Number(10.1) >= new Number(10.0));
write(new Number(10.1) >= new Number(10.1));
write(new Number(10.1) >= new Number(-1));
write(new Number(10.1) >= new Number(-10));
write(new Number(10.1) >= new Number(-10.0));
write(new Number(10.1) >= new Number(-10.1));
write(new Number(10.1) >= new Number(Number.MAX_VALUE));
write(new Number(10.1) >= new Number(Number.MIN_VALUE));
write(new Number(10.1) >= new Number(Number.NaN));
write(new Number(10.1) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(10.1) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(10.1) >= '');
write(new Number(10.1) >= 0xa);
write(new Number(10.1) >= 04);
write(new Number(10.1) >= 'hello');
write(new Number(10.1) >= 'hel' + 'lo');
write(new Number(10.1) >= String(''));
write(new Number(10.1) >= String('hello'));
write(new Number(10.1) >= String('h' + 'ello'));
write(new Number(10.1) >= new String(''));
write(new Number(10.1) >= new String('hello'));
write(new Number(10.1) >= new String('he' + 'llo'));
write(new Number(10.1) >= new Object());
write(new Number(10.1) >= new Object());
write(new Number(10.1) >= [1, 2, 3]);
write(new Number(10.1) >= [1 ,2 , 3]);
write(new Number(10.1) >= new Array(3));
write(new Number(10.1) >= Array(3));
write(new Number(10.1) >= new Array(1 ,2 ,3));
write(new Number(10.1) >= Array(1));
write(new Number(10.1) >= foo);
write(new Number(-1) >= undefined);
write(new Number(-1) >= null);
write(new Number(-1) >= true);
write(new Number(-1) >= false);
write(new Number(-1) >= Boolean(true));
write(new Number(-1) >= Boolean(false));
write(new Number(-1) >= new Boolean(true));
write(new Number(-1) >= new Boolean(false));
write(new Number(-1) >= NaN);
write(new Number(-1) >= +0);
write(new Number(-1) >= -0);
write(new Number(-1) >= 0);
write(new Number(-1) >= 0.0);
write(new Number(-1) >= -0.0);
write(new Number(-1) >= +0.0);
write(new Number(-1) >= 1);
write(new Number(-1) >= 10);
write(new Number(-1) >= 10.0);
write(new Number(-1) >= 10.1);
write(new Number(-1) >= -1);
write(new Number(-1) >= -10);
write(new Number(-1) >= -10.0);
write(new Number(-1) >= -10.1);
write(new Number(-1) >= Number.MAX_VALUE);
write(new Number(-1) >= Number.MIN_VALUE);
write(new Number(-1) >= Number.NaN);
write(new Number(-1) >= Number.POSITIVE_INFINITY);
write(new Number(-1) >= Number.NEGATIVE_INFINITY);
write(new Number(-1) >= new Number(NaN));
write(new Number(-1) >= new Number(+0));
write(new Number(-1) >= new Number(-0));
write(new Number(-1) >= new Number(0));
write(new Number(-1) >= new Number(0.0));
write(new Number(-1) >= new Number(-0.0));
write(new Number(-1) >= new Number(+0.0));
write(new Number(-1) >= new Number(1));
write(new Number(-1) >= new Number(10));
write(new Number(-1) >= new Number(10.0));
write(new Number(-1) >= new Number(10.1));
write(new Number(-1) >= new Number(-1));
write(new Number(-1) >= new Number(-10));
write(new Number(-1) >= new Number(-10.0));
write(new Number(-1) >= new Number(-10.1));
write(new Number(-1) >= new Number(Number.MAX_VALUE));
write(new Number(-1) >= new Number(Number.MIN_VALUE));
write(new Number(-1) >= new Number(Number.NaN));
write(new Number(-1) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(-1) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(-1) >= '');
write(new Number(-1) >= 0xa);
write(new Number(-1) >= 04);
write(new Number(-1) >= 'hello');
write(new Number(-1) >= 'hel' + 'lo');
write(new Number(-1) >= String(''));
write(new Number(-1) >= String('hello'));
write(new Number(-1) >= String('h' + 'ello'));
write(new Number(-1) >= new String(''));
write(new Number(-1) >= new String('hello'));
write(new Number(-1) >= new String('he' + 'llo'));
write(new Number(-1) >= new Object());
write(new Number(-1) >= new Object());
write(new Number(-1) >= [1, 2, 3]);
write(new Number(-1) >= [1 ,2 , 3]);
write(new Number(-1) >= new Array(3));
write(new Number(-1) >= Array(3));
write(new Number(-1) >= new Array(1 ,2 ,3));
write(new Number(-1) >= Array(1));
write(new Number(-1) >= foo);
write(new Number(-10) >= undefined);
write(new Number(-10) >= null);
write(new Number(-10) >= true);
write(new Number(-10) >= false);
write(new Number(-10) >= Boolean(true));
write(new Number(-10) >= Boolean(false));
write(new Number(-10) >= new Boolean(true));
write(new Number(-10) >= new Boolean(false));
write(new Number(-10) >= NaN);
write(new Number(-10) >= +0);
write(new Number(-10) >= -0);
write(new Number(-10) >= 0);
write(new Number(-10) >= 0.0);
write(new Number(-10) >= -0.0);
write(new Number(-10) >= +0.0);
write(new Number(-10) >= 1);
write(new Number(-10) >= 10);
write(new Number(-10) >= 10.0);
write(new Number(-10) >= 10.1);
write(new Number(-10) >= -1);
write(new Number(-10) >= -10);
write(new Number(-10) >= -10.0);
write(new Number(-10) >= -10.1);
write(new Number(-10) >= Number.MAX_VALUE);
write(new Number(-10) >= Number.MIN_VALUE);
write(new Number(-10) >= Number.NaN);
write(new Number(-10) >= Number.POSITIVE_INFINITY);
write(new Number(-10) >= Number.NEGATIVE_INFINITY);
write(new Number(-10) >= new Number(NaN));
write(new Number(-10) >= new Number(+0));
write(new Number(-10) >= new Number(-0));
write(new Number(-10) >= new Number(0));
write(new Number(-10) >= new Number(0.0));
write(new Number(-10) >= new Number(-0.0));
write(new Number(-10) >= new Number(+0.0));
write(new Number(-10) >= new Number(1));
write(new Number(-10) >= new Number(10));
write(new Number(-10) >= new Number(10.0));
write(new Number(-10) >= new Number(10.1));
write(new Number(-10) >= new Number(-1));
write(new Number(-10) >= new Number(-10));
write(new Number(-10) >= new Number(-10.0));
write(new Number(-10) >= new Number(-10.1));
write(new Number(-10) >= new Number(Number.MAX_VALUE));
write(new Number(-10) >= new Number(Number.MIN_VALUE));
write(new Number(-10) >= new Number(Number.NaN));
write(new Number(-10) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(-10) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(-10) >= '');
write(new Number(-10) >= 0xa);
write(new Number(-10) >= 04);
write(new Number(-10) >= 'hello');
write(new Number(-10) >= 'hel' + 'lo');
write(new Number(-10) >= String(''));
write(new Number(-10) >= String('hello'));
write(new Number(-10) >= String('h' + 'ello'));
write(new Number(-10) >= new String(''));
write(new Number(-10) >= new String('hello'));
write(new Number(-10) >= new String('he' + 'llo'));
write(new Number(-10) >= new Object());
write(new Number(-10) >= new Object());
write(new Number(-10) >= [1, 2, 3]);
write(new Number(-10) >= [1 ,2 , 3]);
write(new Number(-10) >= new Array(3));
write(new Number(-10) >= Array(3));
write(new Number(-10) >= new Array(1 ,2 ,3));
write(new Number(-10) >= Array(1));
write(new Number(-10) >= foo);
write(new Number(-10.0) >= undefined);
write(new Number(-10.0) >= null);
write(new Number(-10.0) >= true);
write(new Number(-10.0) >= false);
write(new Number(-10.0) >= Boolean(true));
write(new Number(-10.0) >= Boolean(false));
write(new Number(-10.0) >= new Boolean(true));
write(new Number(-10.0) >= new Boolean(false));
write(new Number(-10.0) >= NaN);
write(new Number(-10.0) >= +0);
write(new Number(-10.0) >= -0);
write(new Number(-10.0) >= 0);
write(new Number(-10.0) >= 0.0);
write(new Number(-10.0) >= -0.0);
write(new Number(-10.0) >= +0.0);
write(new Number(-10.0) >= 1);
write(new Number(-10.0) >= 10);
write(new Number(-10.0) >= 10.0);
write(new Number(-10.0) >= 10.1);
write(new Number(-10.0) >= -1);
write(new Number(-10.0) >= -10);
write(new Number(-10.0) >= -10.0);
write(new Number(-10.0) >= -10.1);
write(new Number(-10.0) >= Number.MAX_VALUE);
write(new Number(-10.0) >= Number.MIN_VALUE);
write(new Number(-10.0) >= Number.NaN);
write(new Number(-10.0) >= Number.POSITIVE_INFINITY);
write(new Number(-10.0) >= Number.NEGATIVE_INFINITY);
write(new Number(-10.0) >= new Number(NaN));
write(new Number(-10.0) >= new Number(+0));
write(new Number(-10.0) >= new Number(-0));
write(new Number(-10.0) >= new Number(0));
write(new Number(-10.0) >= new Number(0.0));
write(new Number(-10.0) >= new Number(-0.0));
write(new Number(-10.0) >= new Number(+0.0));
write(new Number(-10.0) >= new Number(1));
write(new Number(-10.0) >= new Number(10));
write(new Number(-10.0) >= new Number(10.0));
write(new Number(-10.0) >= new Number(10.1));
write(new Number(-10.0) >= new Number(-1));
write(new Number(-10.0) >= new Number(-10));
write(new Number(-10.0) >= new Number(-10.0));
write(new Number(-10.0) >= new Number(-10.1));
write(new Number(-10.0) >= new Number(Number.MAX_VALUE));
write(new Number(-10.0) >= new Number(Number.MIN_VALUE));
write(new Number(-10.0) >= new Number(Number.NaN));
write(new Number(-10.0) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(-10.0) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(-10.0) >= '');
write(new Number(-10.0) >= 0xa);
write(new Number(-10.0) >= 04);
write(new Number(-10.0) >= 'hello');
write(new Number(-10.0) >= 'hel' + 'lo');
write(new Number(-10.0) >= String(''));
write(new Number(-10.0) >= String('hello'));
write(new Number(-10.0) >= String('h' + 'ello'));
write(new Number(-10.0) >= new String(''));
write(new Number(-10.0) >= new String('hello'));
write(new Number(-10.0) >= new String('he' + 'llo'));
write(new Number(-10.0) >= new Object());
write(new Number(-10.0) >= new Object());
write(new Number(-10.0) >= [1, 2, 3]);
write(new Number(-10.0) >= [1 ,2 , 3]);
write(new Number(-10.0) >= new Array(3));
write(new Number(-10.0) >= Array(3));
write(new Number(-10.0) >= new Array(1 ,2 ,3));
write(new Number(-10.0) >= Array(1));
write(new Number(-10.0) >= foo);
write(new Number(-10.1) >= undefined);
write(new Number(-10.1) >= null);
write(new Number(-10.1) >= true);
write(new Number(-10.1) >= false);
write(new Number(-10.1) >= Boolean(true));
write(new Number(-10.1) >= Boolean(false));
write(new Number(-10.1) >= new Boolean(true));
write(new Number(-10.1) >= new Boolean(false));
write(new Number(-10.1) >= NaN);
write(new Number(-10.1) >= +0);
write(new Number(-10.1) >= -0);
write(new Number(-10.1) >= 0);
write(new Number(-10.1) >= 0.0);
write(new Number(-10.1) >= -0.0);
write(new Number(-10.1) >= +0.0);
write(new Number(-10.1) >= 1);
write(new Number(-10.1) >= 10);
write(new Number(-10.1) >= 10.0);
write(new Number(-10.1) >= 10.1);
write(new Number(-10.1) >= -1);
write(new Number(-10.1) >= -10);
write(new Number(-10.1) >= -10.0);
write(new Number(-10.1) >= -10.1);
write(new Number(-10.1) >= Number.MAX_VALUE);
write(new Number(-10.1) >= Number.MIN_VALUE);
write(new Number(-10.1) >= Number.NaN);
write(new Number(-10.1) >= Number.POSITIVE_INFINITY);
write(new Number(-10.1) >= Number.NEGATIVE_INFINITY);
write(new Number(-10.1) >= new Number(NaN));
write(new Number(-10.1) >= new Number(+0));
write(new Number(-10.1) >= new Number(-0));
write(new Number(-10.1) >= new Number(0));
write(new Number(-10.1) >= new Number(0.0));
write(new Number(-10.1) >= new Number(-0.0));
write(new Number(-10.1) >= new Number(+0.0));
write(new Number(-10.1) >= new Number(1));
write(new Number(-10.1) >= new Number(10));
write(new Number(-10.1) >= new Number(10.0));
write(new Number(-10.1) >= new Number(10.1));
write(new Number(-10.1) >= new Number(-1));
write(new Number(-10.1) >= new Number(-10));
write(new Number(-10.1) >= new Number(-10.0));
write(new Number(-10.1) >= new Number(-10.1));
write(new Number(-10.1) >= new Number(Number.MAX_VALUE));
write(new Number(-10.1) >= new Number(Number.MIN_VALUE));
write(new Number(-10.1) >= new Number(Number.NaN));
write(new Number(-10.1) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(-10.1) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(-10.1) >= '');
write(new Number(-10.1) >= 0xa);
write(new Number(-10.1) >= 04);
write(new Number(-10.1) >= 'hello');
write(new Number(-10.1) >= 'hel' + 'lo');
write(new Number(-10.1) >= String(''));
write(new Number(-10.1) >= String('hello'));
write(new Number(-10.1) >= String('h' + 'ello'));
write(new Number(-10.1) >= new String(''));
write(new Number(-10.1) >= new String('hello'));
write(new Number(-10.1) >= new String('he' + 'llo'));
write(new Number(-10.1) >= new Object());
write(new Number(-10.1) >= new Object());
write(new Number(-10.1) >= [1, 2, 3]);
write(new Number(-10.1) >= [1 ,2 , 3]);
write(new Number(-10.1) >= new Array(3));
write(new Number(-10.1) >= Array(3));
write(new Number(-10.1) >= new Array(1 ,2 ,3));
write(new Number(-10.1) >= Array(1));
write(new Number(-10.1) >= foo);
write(new Number(Number.MAX_VALUE) >= undefined);
write(new Number(Number.MAX_VALUE) >= null);
write(new Number(Number.MAX_VALUE) >= true);
write(new Number(Number.MAX_VALUE) >= false);
write(new Number(Number.MAX_VALUE) >= Boolean(true));
write(new Number(Number.MAX_VALUE) >= Boolean(false));
write(new Number(Number.MAX_VALUE) >= new Boolean(true));
write(new Number(Number.MAX_VALUE) >= new Boolean(false));
write(new Number(Number.MAX_VALUE) >= NaN);
write(new Number(Number.MAX_VALUE) >= +0);
write(new Number(Number.MAX_VALUE) >= -0);
write(new Number(Number.MAX_VALUE) >= 0);
write(new Number(Number.MAX_VALUE) >= 0.0);
write(new Number(Number.MAX_VALUE) >= -0.0);
write(new Number(Number.MAX_VALUE) >= +0.0);
write(new Number(Number.MAX_VALUE) >= 1);
write(new Number(Number.MAX_VALUE) >= 10);
write(new Number(Number.MAX_VALUE) >= 10.0);
write(new Number(Number.MAX_VALUE) >= 10.1);
write(new Number(Number.MAX_VALUE) >= -1);
write(new Number(Number.MAX_VALUE) >= -10);
write(new Number(Number.MAX_VALUE) >= -10.0);
write(new Number(Number.MAX_VALUE) >= -10.1);
write(new Number(Number.MAX_VALUE) >= Number.MAX_VALUE);
write(new Number(Number.MAX_VALUE) >= Number.MIN_VALUE);
write(new Number(Number.MAX_VALUE) >= Number.NaN);
write(new Number(Number.MAX_VALUE) >= Number.POSITIVE_INFINITY);
write(new Number(Number.MAX_VALUE) >= Number.NEGATIVE_INFINITY);
write(new Number(Number.MAX_VALUE) >= new Number(NaN));
write(new Number(Number.MAX_VALUE) >= new Number(+0));
write(new Number(Number.MAX_VALUE) >= new Number(-0));
write(new Number(Number.MAX_VALUE) >= new Number(0));
write(new Number(Number.MAX_VALUE) >= new Number(0.0));
write(new Number(Number.MAX_VALUE) >= new Number(-0.0));
write(new Number(Number.MAX_VALUE) >= new Number(+0.0));
write(new Number(Number.MAX_VALUE) >= new Number(1));
write(new Number(Number.MAX_VALUE) >= new Number(10));
write(new Number(Number.MAX_VALUE) >= new Number(10.0));
write(new Number(Number.MAX_VALUE) >= new Number(10.1));
write(new Number(Number.MAX_VALUE) >= new Number(-1));
write(new Number(Number.MAX_VALUE) >= new Number(-10));
write(new Number(Number.MAX_VALUE) >= new Number(-10.0));
write(new Number(Number.MAX_VALUE) >= new Number(-10.1));
write(new Number(Number.MAX_VALUE) >= new Number(Number.MAX_VALUE));
write(new Number(Number.MAX_VALUE) >= new Number(Number.MIN_VALUE));
write(new Number(Number.MAX_VALUE) >= new Number(Number.NaN));
write(new Number(Number.MAX_VALUE) >= new Number(Number.POSITIVE_INFINITY));
write(new Number(Number.MAX_VALUE) >= new Number(Number.NEGATIVE_INFINITY));
write(new Number(Number.MAX_VALUE) >= '');
write(new Number(Number.MAX_VALUE) >= 0xa);
write(new Number(Number.MAX_VALUE) >= 04);
write(new Number(Number.MAX_VALUE) >= 'hello');
write(new Number(Number.MAX_VALUE) >= 'hel' + 'lo');
write(new Number(Number.MAX_VALUE) >= String(''));
write(new Number(Number.MAX_VALUE) >= String('hello'));
write(new Number(Number.MAX_VALUE) >= String('h' + 'ello'));
write(new Number(Number.MAX_VALUE) >= new String(''));
write(new Number(Number.MAX_VALUE) >= new String('hello'));
write(new Number(Number.MAX_VALUE) >= new String('he' + 'llo'));
write(new Number(Number.MAX_VALUE) >= new Object());
write(new Number(Number.MAX_VALUE) >= new Object());
write(new Number(Number.MAX_VALUE) >= [1, 2, 3]);
write(new Number(Number.MAX_VALUE) >= [1 ,2 , 3]);
write(new Number(Number.MAX_VALUE) >= new Array(3));
write(new Number(Number.MAX_VALUE) >= Array(3));
write(new Number(Number.MAX_VALUE) >= new Array(1 ,2 ,3));
write(new Number(Number.MAX_VALUE) >= Array(1));
write(new Number(Number.MAX_VALUE) >= foo);
write(new Number(Number.MIN_VALUE) >= undefined);
write(new Number(Number.MIN_VALUE) >= null);
write(new Number(Number.MIN_VALUE) >= true);
write(new Number(Number.MIN_VALUE) >= false);
write(new Number(Number.MIN_VALUE) >= Boolean(true));
write(new Number(Number.MIN_VALUE) >= Boolean(false));
write(new Number(Number.MIN_VALUE) >= new Boolean(true));
write(new Number(Number.MIN_VALUE) >= new Boolean(false));
write(new Number(Number.MIN_VALUE) >= NaN);
write(new Number(Number.MIN_VALUE) >= +0);
