//>>built
define("dojox/lang/oo/mixin",["dijit","dojo","dojox","dojo/require!dojox/lang/oo/Filter,dojox/lang/oo/Decorator"],function(A,n,v){n.provide("dojox.lang.oo.mixin");n.experimental("dojox.lang.oo.mixin");n.require("dojox.lang.oo.Filter");n.require("dojox.lang.oo.Decorator");(function(){var m=v.lang.oo,w=m.Filter,r=m.Decorator,h={},x=function(b){return b},y=function(b,a,c){return a},z=function(b,a,c,f){b[a]=c},t=n._extraNames,u=t.length,q=m.applyDecorator=function(b,a,c,f){if(c instanceof r){var k=c.decorator;
c=q(b,a,c.value,f);return k(a,c,f)}return b(a,c,f)};m.__mixin=function(b,a,c,f,k){var d,p;for(g in a){var e=a[g];if(!(g in h&&h[g]===e||!(d=f(g,b,a,e))||d in b&&d in h&&h[d]===e)){var l=b[d];e=q(c,d,e,l);l!==e&&k(b,d,e,l)}}if(u)for(p=0;p<u;++p){var g=t[p];e=a[g];g in h&&h[g]===e||!(d=f(g,b,a,e))||d in b&&d in h&&h[d]===e||(l=b[d],e=q(c,d,e,l),l!==e&&k(b,d,e,l))}return b};m.mixin=function(b,a){for(var c,f,k=1,d=arguments.length;k<d;++k)a=arguments[k],a instanceof w?(f=a.filter,a=a.bag):f=x,a instanceof
r?(c=a.decorator,a=a.value):c=y,m.__mixin(b,a,c,f,z);return b}})()});