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