| 12345678910111213141516171819 | "use strict";var aFrom  = require("../array/from")  , assign = require("./assign")  , value  = require("./valid-value");module.exports = function (obj/*, propertyNames, options*/) {	var copy = Object(value(obj)), propertyNames = arguments[1], options = Object(arguments[2]);	if (copy !== obj && !propertyNames) return copy;	var result = {};	if (propertyNames) {		aFrom(propertyNames, function (propertyName) {			if (options.ensure || propertyName in obj) result[propertyName] = obj[propertyName];		});	} else {		assign(result, obj);	}	return result;};
 |