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