var isObject = require('./isObject');

/** Built-in value references. */ var objectCreate = Object.create;

/**

* The base implementation of `_.create` without support for assigning
* properties to the created object.
*
* @private
* @param {Object} proto The object to inherit from.
* @returns {Object} Returns the new object.
*/

var baseCreate = (function() {

function object() {}
return function(proto) {
  if (!isObject(proto)) {
    return {};
  }
  if (objectCreate) {
    return objectCreate(proto);
  }
  object.prototype = proto;
  var result = new object;
  object.prototype = undefined;
  return result;
};

}());

module.exports = baseCreate;