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