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