//>>built define(["../_base/kernel","../_base/lang","../when","../_base/array"],function(c,h,p,u){c=function(b){function c(a,l){var d=b[a];d&&(b[a]=function(q){var f;"put"===a&&(f=b.getIdentity(q));if(r)return d.apply(this,arguments);r=!0;try{var c=d.apply(this,arguments);p(c,function(b){l("object"==typeof b&&b||q,f)});return c}finally{r=!1}})}var m=[],v=0;b=h.delegate(b);b.notify=function(b,l){v++;for(var d=m.slice(),a=0,f=d.length;aq.indexOf(w))){p=w;n=g;!f&& a||e.splice(g,1);break}}}f?a&&(f.matches?f.matches(a):f([a]).length)&&(g=-1