//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------

function write(v) { WScript.Echo(v + ""); }

function foo() {}

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