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