.DataUtils;r.BehaviorUtils={extend:function(r){return Array.prototype.slice.call(arguments,1).forEach(function(n){var i,t;if(n)for(t in n)i=Object.getOwnPropertyDescriptor(n,t),Object.defineProperty(r,t,i)}),r},callProtochain:function(r,n,i){for(var t=n.behaviors,e=0;e<t.length;e++)t[e][r]&&t[e][r].apply(n,i)},findSuper:function(i,t){return n.isType(i,"array")?i.reduce(function(i,e,o,a){if(n.isType(e,"array"))return r.BehaviorUtils.findSuper(e,t);var c=e[t];return c&&c instanceof Function?c:i},Function()):i