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