(function(){var e,n,o,r=[].slice;o=require("types.js"),e=require("deep-freeze"),n=function(){var i,t,l,u,a;return l=arguments[0],t=arguments[1],a=arguments[2],u=4<=arguments.length?r.call(arguments,3):[],(t=o.forceString(t))?o.notFunction(l)&&"object"!=typeof l?void n.log("define-prop: error, invalid or missing object!"):(i={enumerable:~u.indexOf("enumerable")},o.isObject(a)&&o.hasFunction(a.get,a.set)?(i.get=o.forceFunction(a.get),i.set=o.forceFunction(a.set)):(i.value=a,i.configurable=~u.indexOf("configurable"),i.writable=~u.indexOf("writable"),i.writable||(i.value=e(i.value))),Object.defineProperty(l,t,i),l):void n.log("define-prop: error, invalid or missing key!")},n.log="undefined"!=typeof console&&null!==console?console.log:void 0,module.exports=n}).call(this);