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