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