| 123456789101112131415161718192021222324252627282930313233 | 
							- 'use strict';
 
- var isObject = require('is-extendable');
 
- module.exports = function extend(o/*, objects*/) {
 
-   if (!isObject(o)) { o = {}; }
 
-   var len = arguments.length;
 
-   for (var i = 1; i < len; i++) {
 
-     var obj = arguments[i];
 
-     if (isObject(obj)) {
 
-       assign(o, obj);
 
-     }
 
-   }
 
-   return o;
 
- };
 
- function assign(a, b) {
 
-   for (var key in b) {
 
-     if (hasOwn(b, key)) {
 
-       a[key] = b[key];
 
-     }
 
-   }
 
- }
 
- /**
 
-  * Returns true if the given `key` is an own property of `obj`.
 
-  */
 
- function hasOwn(obj, key) {
 
-   return Object.prototype.hasOwnProperty.call(obj, key);
 
- }
 
 
  |