function dd(){this.pp={};ad.$$(null,dd.d2,!1)}m("AdfProfiler",dd);dd.zg=0;dd.Zfa="___JSProfilerClassId";dd.e2="___JSProfilerInstumentation";dd.EDa="___JSProfilerCheckpoint";dd.f2="___JSProfilerInstrumentedMethod";dd.rtb="___JSProfilerMethodName";dd.$fa="___JSProfilerObjectRef";dd.FDa="___JSProfilerObjectIsPresent";dd.qtb="___JSProfilerClassName";dd.d2="___JSProfilerGroup";dd.E4a=/function\s+([\S^]+)\s*\(/;dd.D4a=/function[\s\S]*?\{([\s\S]+)\}/m;dd.F4a=/.*?\/(.+)\/(.*)/;dd.G4a=/\$methodid\$/mgi;
dd.Qga=null;dd.$=function(){null==dd.Qga&&(dd.Qga=new dd);return dd.Qga};m("AdfProfiler.getInstance",dd.$);dd.lW=function(a){return a==window};dd.Tgb=function(a,b){return dd.lW(a)?!0:a.hasOwnProperty(b)};dd.mka=function(a){var b=null,d=typeof a;if(dd.lW(a))return"window";b="object"==d?a.constructor._typeName:a._typeName;if(null==b){var e=null;"object"==d?e=a.constructor.toString():"function"==d&&(e=a.toString());a=null;null!=e&&(a=dd.E4a.exec(e));null!=a&&(b=a[1])}null==b&&(b="[anonymous]");return b};
dd.lib=function(a,b){if(!dd.lW(a)&&(null==b&&(b=dd.mka(a)),"[anonymous]"!=b)){var d=window[b].prototype;return"object"==typeof a&&d==a}return!1};dd.ieb=function(a){var b=dd.mka(a);if("function"==typeof a||dd.lW(a))return b;if(dd.lib(a,b))return b+".prototype";null==a[dd.Zfa]&&(a[dd.Zfa]="[INSTANCE"+dd.zg++ +"]");return b+"."+a[dd.Zfa]};dd.IKa=function(a,b){var d="";dd.lW(b)||(d=dd.ieb(b)+".");return d+a};dd.I5=function(a){return null!=a[dd.e2]};
dd.Ohb=function(){var a=dd.$().pp.$methodId$,b=a[dd.EDa],d=null,e=null;try{e=b.start(a,arguments),d=a[dd.f2].apply(this,arguments)}finally{b.stop(e)}return d};dd.Nhb=function(a,b,d,e){var f=dd.D4a.exec(dd.Ohb.toString())[1];b=new Function(f.replace(dd.G4a,b));f=d[a];b[dd.EDa]=e;b[dd.f2]=f;b[dd.$fa]=d;b[dd.e2]=a;b[dd.FDa]=dd.Tgb(d,a);for(property in f)f.hasOwnProperty(property)&&(b[property]=f[property]);return d[a]=b};
dd.Ipa=function(a){if(a[dd.FDa]){var b=a[dd.e2],d=a[dd.f2];for(property in a)"__JSProfiler"!=property.substring(0,12)&&(d[property]=a[property]);a[dd.$fa][b]=a[dd.f2]}else delete a[a[dd.e2]]};dd.gib=function(a){var b=property;a=a[b];(b="function"==typeof a&&!dd.I5(a)&&"constructor"!=b)&&(b=null==dd.F4a.exec(a.toString()));return b};
dd.prototype.MZ=function(a,b){u.assert(null!=a,"You cannot run registerMethod with a null object");if(null==b)for(property in a)dd.gib(a)&&this.MZ(a,property);else if(u.assert(null!=a[b],"The method "+b+" does not exist in the object "+dd.mka(a)+"."),!dd.I5(a[b])){var d=dd.IKa(b,a),e=ad.sm(d,dd.d2),e=dd.Nhb(b,d,a,e);this.pp[d]=e}};r.a("AdfProfiler.prototype.registerMethod",{MZ:dd.prototype.MZ});
dd.prototype.vUa=function(a){u.assert(null!=a,"You cannot run registerFunction with a null functionName");this.MZ(window,a)};r.a("AdfProfiler.prototype.registerFunction",{vUa:dd.prototype.vUa});dd.prototype.register=function(a,b){this.MZ(a,b)};r.a("AdfProfiler.prototype.register",{register:dd.prototype.register});
dd.prototype.Uaa=function(a,b){u.assert(null!=a,"Object cannot be null in the unregister method");if(null==b)for(e in this.pp){var d=this.pp[e];"function"==typeof d&&d[dd.$fa]==a&&(dd.Ipa(d),delete this.pp[e])}else{var e=dd.IKa(b,a),d=this.pp[e];null!=d&&(dd.Ipa(d),delete this.pp[e])}};r.a("AdfProfiler.prototype.unregisterMethod",{Uaa:dd.prototype.Uaa});dd.prototype.WVa=function(a){u.assert(null!=a,"functionName cannot be null in unregisterFunction");this.Uaa(window,a)};
r.a("AdfProfiler.prototype.unregisterFunction",{WVa:dd.prototype.WVa});dd.prototype.unregister=function(a,b){this.Uaa(a,b)};r.a("AdfProfiler.prototype.unregister",{unregister:dd.prototype.unregister});dd.prototype.VVa=function(){for(methodId in this.pp){var a=this.pp[methodId];"function"==typeof a&&dd.I5(a)&&dd.Ipa(a)}this.pp={}};r.a("AdfProfiler.prototype.unregisterAll",{VVa:dd.prototype.VVa});dd.prototype.sva=function(){ad.$$(null,dd.d2,!0)};r.a("AdfProfiler.prototype.startProfiling",{sva:dd.prototype.sva});
dd.prototype.uva=function(){ad.$$(null,dd.d2,!1)};r.a("AdfProfiler.prototype.stopProfiling",{uva:dd.prototype.uva});dd.prototype.eGa=function(){var a=[];for(methodId in this.pp)dd.I5(this.pp[methodId])&&a.push(methodId);return a.join(",")};r.a("AdfProfiler.prototype.__getRegisteredMethods",{eGa:dd.prototype.eGa});