|                                                                                          |  | /*object-assign(c) Sindre Sorhus@license MIT*/
'use strict';/* eslint-disable no-unused-vars */var getOwnPropertySymbols = Object.getOwnPropertySymbols;var hasOwnProperty = Object.prototype.hasOwnProperty;var propIsEnumerable = Object.prototype.propertyIsEnumerable;
function toObject(val) {	if (val === null || val === undefined) {		throw new TypeError('Object.assign cannot be called with null or undefined');	}
	return Object(val);}
function shouldUseNative() {	try {		if (!Object.assign) {			return false;		}
		// Detect buggy property enumeration order in older V8 versions.
		// https://bugs.chromium.org/p/v8/issues/detail?id=4118
		var test1 = new String('abc');  // eslint-disable-line no-new-wrappers
		test1[5] = 'de';		if (Object.getOwnPropertyNames(test1)[0] === '5') {			return false;		}
		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test2 = {};		for (var i = 0; i < 10; i++) {			test2['_' + String.fromCharCode(i)] = i;		}		var order2 = Object.getOwnPropertyNames(test2).map(function (n) {			return test2[n];		});		if (order2.join('') !== '0123456789') {			return false;		}
		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test3 = {};		'abcdefghijklmnopqrst'.split('').forEach(function (letter) {			test3[letter] = letter;		});		if (Object.keys(Object.assign({}, test3)).join('') !==				'abcdefghijklmnopqrst') {			return false;		}
		return true;	} catch (err) {		// We don't expect any of the above to throw, but better to be safe.
		return false;	}}
module.exports = shouldUseNative() ? Object.assign : function (target, source) {	var from;	var to = toObject(target);	var symbols;
	for (var s = 1; s < arguments.length; s++) {		from = Object(arguments[s]);
		for (var key in from) {			if (hasOwnProperty.call(from, key)) {				to[key] = from[key];			}		}
		if (getOwnPropertySymbols) {			symbols = getOwnPropertySymbols(from);			for (var i = 0; i < symbols.length; i++) {				if (propIsEnumerable.call(from, symbols[i])) {					to[symbols[i]] = from[symbols[i]];				}			}		}	}
	return to;};
 |