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