trtc-sdk-v5 5.15.3-beta.9 → 5.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).TRTCDebugDialog=t()}(this,function(){var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=function(e){return e&&e.Math===Math&&e},i=t("object"==typeof globalThis&&globalThis)||t("object"==typeof window&&window)||t("object"==typeof self&&self)||t("object"==typeof e&&e)||t("object"==typeof e&&e)||function(){return this}()||Function("return this")(),r={},n=function(e){try{return!!e()}catch(t){return!0}},a=!n(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}),o=!n(function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}),s=o,c=Function.prototype.call,l=s?c.bind(c):function(){return c.apply(c,arguments)},d={},u={}.propertyIsEnumerable,h=Object.getOwnPropertyDescriptor,p=h&&!u.call({1:2},1);d.f=p?function(e){var t=h(this,e);return!!t&&t.enumerable}:u;var f,m,g=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},_=o,v=Function.prototype,y=v.call,E=_&&v.bind.bind(y,y),b=_?E:function(e){return function(){return y.apply(e,arguments)}},w=b,I=w({}.toString),T=w("".slice),S=function(e){return T(I(e),8,-1)},A=n,R=S,k=Object,C=b("".split),D=A(function(){return!k("z").propertyIsEnumerable(0)})?function(e){return"String"===R(e)?C(e,""):k(e)}:k,O=function(e){return null==e},L=O,N=TypeError,P=function(e){if(L(e))throw new N("Can't call method on "+e);return e},x=D,M=P,U=function(e){return x(M(e))},F="object"==typeof document&&document.all,B=void 0===F&&void 0!==F?function(e){return"function"==typeof e||e===F}:function(e){return"function"==typeof e},V=B,H=function(e){return"object"==typeof e?null!==e:V(e)},j=i,z=B,W=function(e,t){return arguments.length<2?(i=j[e],z(i)?i:void 0):j[e]&&j[e][t];var i},G=b({}.isPrototypeOf),q=i.navigator,K=q&&q.userAgent,Y=K?String(K):"",X=i,Z=Y,J=X.process,Q=X.Deno,$=J&&J.versions||Q&&Q.version,ee=$&&$.v8;ee&&(m=(f=ee.split("."))[0]>0&&f[0]<4?1:+(f[0]+f[1])),!m&&Z&&(!(f=Z.match(/Edge\/(\d+)/))||f[1]>=74)&&(f=Z.match(/Chrome\/(\d+)/))&&(m=+f[1]);var te=m,ie=te,re=n,ne=i.String,ae=!!Object.getOwnPropertySymbols&&!re(function(){var e=Symbol("symbol detection");return!ne(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&ie&&ie<41}),oe=ae&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,se=W,ce=B,le=G,de=Object,ue=oe?function(e){return"symbol"==typeof e}:function(e){var t=se("Symbol");return ce(t)&&le(t.prototype,de(e))},he=String,pe=function(e){try{return he(e)}catch(t){return"Object"}},fe=B,me=pe,ge=TypeError,_e=function(e){if(fe(e))return e;throw new ge(me(e)+" is not a function")},ve=_e,ye=O,Ee=function(e,t){var i=e[t];return ye(i)?void 0:ve(i)},be=l,we=B,Ie=H,Te=TypeError,Se={exports:{}},Ae=i,Re=Object.defineProperty,ke=function(e,t){try{Re(Ae,e,{value:t,configurable:!0,writable:!0})}catch(i){Ae[e]=t}return t},Ce=i,De=ke,Oe="__core-js_shared__",Le=Se.exports=Ce[Oe]||De(Oe,{});(Le.versions||(Le.versions=[])).push({version:"3.47.0",mode:"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru), 2025 CoreJS Company (core-js.io)",license:"https://github.com/zloirock/core-js/blob/v3.47.0/LICENSE",source:"https://github.com/zloirock/core-js"});var Ne=Se.exports,Pe=Ne,xe=function(e,t){return Pe[e]||(Pe[e]=t||{})},Me=P,Ue=Object,Fe=function(e){return Ue(Me(e))},Be=Fe,Ve=b({}.hasOwnProperty),He=Object.hasOwn||function(e,t){return Ve(Be(e),t)},je=b,ze=0,We=Math.random(),Ge=je(1.1.toString),qe=function(e){return"Symbol("+(void 0===e?"":e)+")_"+Ge(++ze+We,36)},Ke=xe,Ye=He,Xe=qe,Ze=ae,Je=oe,Qe=i.Symbol,$e=Ke("wks"),et=Je?Qe.for||Qe:Qe&&Qe.withoutSetter||Xe,tt=function(e){return Ye($e,e)||($e[e]=Ze&&Ye(Qe,e)?Qe[e]:et("Symbol."+e)),$e[e]},it=l,rt=H,nt=ue,at=Ee,ot=function(e,t){var i,r;if("string"===t&&we(i=e.toString)&&!Ie(r=be(i,e)))return r;if(we(i=e.valueOf)&&!Ie(r=be(i,e)))return r;if("string"!==t&&we(i=e.toString)&&!Ie(r=be(i,e)))return r;throw new Te("Can't convert object to primitive value")},st=TypeError,ct=tt("toPrimitive"),lt=function(e,t){if(!rt(e)||nt(e))return e;var i,r=at(e,ct);if(r){if(void 0===t&&(t="default"),i=it(r,e,t),!rt(i)||nt(i))return i;throw new st("Can't convert object to primitive value")}return void 0===t&&(t="number"),ot(e,t)},dt=lt,ut=ue,ht=function(e){var t=dt(e,"string");return ut(t)?t:t+""},pt=H,ft=i.document,mt=pt(ft)&&pt(ft.createElement),gt=function(e){return mt?ft.createElement(e):{}},_t=gt,vt=!a&&!n(function(){return 7!==Object.defineProperty(_t("div"),"a",{get:function(){return 7}}).a}),yt=a,Et=l,bt=d,wt=g,It=U,Tt=ht,St=He,At=vt,Rt=Object.getOwnPropertyDescriptor;r.f=yt?Rt:function(e,t){if(e=It(e),t=Tt(t),At)try{return Rt(e,t)}catch(i){}if(St(e,t))return wt(!Et(bt.f,e,t),e[t])};var kt={},Ct=a&&n(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype}),Dt=H,Ot=String,Lt=TypeError,Nt=function(e){if(Dt(e))return e;throw new Lt(Ot(e)+" is not an object")},Pt=a,xt=vt,Mt=Ct,Ut=Nt,Ft=ht,Bt=TypeError,Vt=Object.defineProperty,Ht=Object.getOwnPropertyDescriptor,jt="enumerable",zt="configurable",Wt="writable";kt.f=Pt?Mt?function(e,t,i){if(Ut(e),t=Ft(t),Ut(i),"function"==typeof e&&"prototype"===t&&"value"in i&&Wt in i&&!i[Wt]){var r=Ht(e,t);r&&r[Wt]&&(e[t]=i.value,i={configurable:zt in i?i[zt]:r[zt],enumerable:jt in i?i[jt]:r[jt],writable:!1})}return Vt(e,t,i)}:Vt:function(e,t,i){if(Ut(e),t=Ft(t),Ut(i),xt)try{return Vt(e,t,i)}catch(r){}if("get"in i||"set"in i)throw new Bt("Accessors not supported");return"value"in i&&(e[t]=i.value),e};var Gt=kt,qt=g,Kt=a?function(e,t,i){return Gt.f(e,t,qt(1,i))}:function(e,t,i){return e[t]=i,e},Yt={exports:{}},Xt=a,Zt=He,Jt=Function.prototype,Qt=Xt&&Object.getOwnPropertyDescriptor,$t=Zt(Jt,"name"),ei={EXISTS:$t,PROPER:$t&&"something"===function(){}.name,CONFIGURABLE:$t&&(!Xt||Xt&&Qt(Jt,"name").configurable)},ti=B,ii=Ne,ri=b(Function.toString);ti(ii.inspectSource)||(ii.inspectSource=function(e){return ri(e)});var ni,ai,oi,si=ii.inspectSource,ci=B,li=i.WeakMap,di=ci(li)&&/native code/.test(String(li)),ui=qe,hi=xe("keys"),pi=function(e){return hi[e]||(hi[e]=ui(e))},fi={},mi=di,gi=i,_i=H,vi=Kt,yi=He,Ei=Ne,bi=pi,wi=fi,Ii="Object already initialized",Ti=gi.TypeError,Si=gi.WeakMap;if(mi||Ei.state){var Ai=Ei.state||(Ei.state=new Si);Ai.get=Ai.get,Ai.has=Ai.has,Ai.set=Ai.set,ni=function(e,t){if(Ai.has(e))throw new Ti(Ii);return t.facade=e,Ai.set(e,t),t},ai=function(e){return Ai.get(e)||{}},oi=function(e){return Ai.has(e)}}else{var Ri=bi("state");wi[Ri]=!0,ni=function(e,t){if(yi(e,Ri))throw new Ti(Ii);return t.facade=e,vi(e,Ri,t),t},ai=function(e){return yi(e,Ri)?e[Ri]:{}},oi=function(e){return yi(e,Ri)}}var ki={set:ni,get:ai,has:oi,enforce:function(e){return oi(e)?ai(e):ni(e,{})},getterFor:function(e){return function(t){var i;if(!_i(t)||(i=ai(t)).type!==e)throw new Ti("Incompatible receiver, "+e+" required");return i}}},Ci=b,Di=n,Oi=B,Li=He,Ni=a,Pi=ei.CONFIGURABLE,xi=si,Mi=ki.enforce,Ui=ki.get,Fi=String,Bi=Object.defineProperty,Vi=Ci("".slice),Hi=Ci("".replace),ji=Ci([].join),zi=Ni&&!Di(function(){return 8!==Bi(function(){},"length",{value:8}).length}),Wi=String(String).split("String"),Gi=Yt.exports=function(e,t,i){"Symbol("===Vi(Fi(t),0,7)&&(t="["+Hi(Fi(t),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),i&&i.getter&&(t="get "+t),i&&i.setter&&(t="set "+t),(!Li(e,"name")||Pi&&e.name!==t)&&(Ni?Bi(e,"name",{value:t,configurable:!0}):e.name=t),zi&&i&&Li(i,"arity")&&e.length!==i.arity&&Bi(e,"length",{value:i.arity});try{i&&Li(i,"constructor")&&i.constructor?Ni&&Bi(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(n){}var r=Mi(e);return Li(r,"source")||(r.source=ji(Wi,"string"==typeof t?t:"")),e};Function.prototype.toString=Gi(function(){return Oi(this)&&Ui(this).source||xi(this)},"toString");var qi=Yt.exports,Ki=B,Yi=kt,Xi=qi,Zi=ke,Ji=function(e,t,i,r){r||(r={});var n=r.enumerable,a=void 0!==r.name?r.name:t;if(Ki(i)&&Xi(i,a,r),r.global)n?e[t]=i:Zi(t,i);else{try{r.unsafe?e[t]&&(n=!0):delete e[t]}catch(o){}n?e[t]=i:Yi.f(e,t,{value:i,enumerable:!1,configurable:!r.nonConfigurable,writable:!r.nonWritable})}return e},Qi={},$i=Math.ceil,er=Math.floor,tr=Math.trunc||function(e){var t=+e;return(t>0?er:$i)(t)},ir=function(e){var t=+e;return t!=t||0===t?0:tr(t)},rr=ir,nr=Math.max,ar=Math.min,or=function(e,t){var i=rr(e);return i<0?nr(i+t,0):ar(i,t)},sr=ir,cr=Math.min,lr=function(e){var t=sr(e);return t>0?cr(t,9007199254740991):0},dr=lr,ur=function(e){return dr(e.length)},hr=U,pr=or,fr=ur,mr=function(e){return function(t,i,r){var n=hr(t),a=fr(n);if(0===a)return!e&&-1;var o,s=pr(r,a);if(e&&i!=i){for(;a>s;)if((o=n[s++])!=o)return!0}else for(;a>s;s++)if((e||s in n)&&n[s]===i)return e||s||0;return!e&&-1}},gr={includes:mr(!0),indexOf:mr(!1)},_r=He,vr=U,yr=gr.indexOf,Er=fi,br=b([].push),wr=function(e,t){var i,r=vr(e),n=0,a=[];for(i in r)!_r(Er,i)&&_r(r,i)&&br(a,i);for(;t.length>n;)_r(r,i=t[n++])&&(~yr(a,i)||br(a,i));return a},Ir=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Tr=wr,Sr=Ir.concat("length","prototype");Qi.f=Object.getOwnPropertyNames||function(e){return Tr(e,Sr)};var Ar={};Ar.f=Object.getOwnPropertySymbols;var Rr=W,kr=Qi,Cr=Ar,Dr=Nt,Or=b([].concat),Lr=Rr("Reflect","ownKeys")||function(e){var t=kr.f(Dr(e)),i=Cr.f;return i?Or(t,i(e)):t},Nr=He,Pr=Lr,xr=r,Mr=kt,Ur=function(e,t,i){for(var r=Pr(t),n=Mr.f,a=xr.f,o=0;o<r.length;o++){var s=r[o];Nr(e,s)||i&&Nr(i,s)||n(e,s,a(t,s))}},Fr=n,Br=B,Vr=/#|\.prototype\./,Hr=function(e,t){var i=zr[jr(e)];return i===Gr||i!==Wr&&(Br(t)?Fr(t):!!t)},jr=Hr.normalize=function(e){return String(e).replace(Vr,".").toLowerCase()},zr=Hr.data={},Wr=Hr.NATIVE="N",Gr=Hr.POLYFILL="P",qr=Hr,Kr=i,Yr=r.f,Xr=Kt,Zr=Ji,Jr=ke,Qr=Ur,$r=qr,en=function(e,t){var i,r,n,a,o,s=e.target,c=e.global,l=e.stat;if(i=c?Kr:l?Kr[s]||Jr(s,{}):Kr[s]&&Kr[s].prototype)for(r in t){if(a=t[r],n=e.dontCallGetSet?(o=Yr(i,r))&&o.value:i[r],!$r(c?r:s+(l?".":"#")+r,e.forced)&&void 0!==n){if(typeof a==typeof n)continue;Qr(a,n)}(e.sham||n&&n.sham)&&Xr(a,"sham",!0),Zr(i,r,a,e)}},tn={};tn[tt("toStringTag")]="z";var rn="[object z]"===String(tn),nn=B,an=S,on=tt("toStringTag"),sn=Object,cn="Arguments"===an(function(){return arguments}()),ln=rn?an:function(e){var t,i,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(i=function(e,t){try{return e[t]}catch(i){}}(t=sn(e),on))?i:cn?an(t):"Object"===(r=an(t))&&nn(t.callee)?"Arguments":r},dn=ln,un=String,hn=function(e){if("Symbol"===dn(e))throw new TypeError("Cannot convert a Symbol value to a string");return un(e)},pn=qi,fn=kt,mn=function(e,t,i){return i.get&&pn(i.get,t,{getter:!0}),i.set&&pn(i.set,t,{setter:!0}),fn.f(e,t,i)},gn=en,_n=a,vn=b,yn=He,En=B,bn=G,wn=hn,In=mn,Tn=Ur,Sn=i.Symbol,An=Sn&&Sn.prototype;if(_n&&En(Sn)&&(!("description"in An)||void 0!==Sn().description)){var Rn={},kn=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:wn(arguments[0]),t=bn(An,this)?new Sn(e):void 0===e?Sn():Sn(e);return""===e&&(Rn[t]=!0),t};Tn(kn,Sn),kn.prototype=An,An.constructor=kn;var Cn="Symbol(description detection)"===String(Sn("description detection")),Dn=vn(An.valueOf),On=vn(An.toString),Ln=/^Symbol\((.*)\)[^)]+$/,Nn=vn("".replace),Pn=vn("".slice);In(An,"description",{configurable:!0,get:function(){var e=Dn(this);if(yn(Rn,e))return"";var t=On(e),i=Cn?Pn(t,7,-1):Nn(t,Ln,"$1");return""===i?void 0:i}}),gn({global:!0,constructor:!0,forced:!0},{Symbol:kn})}var xn={},Mn=wr,Un=Ir,Fn=Object.keys||function(e){return Mn(e,Un)},Bn=a,Vn=Ct,Hn=kt,jn=Nt,zn=U,Wn=Fn;xn.f=Bn&&!Vn?Object.defineProperties:function(e,t){jn(e);for(var i,r=zn(t),n=Wn(t),a=n.length,o=0;a>o;)Hn.f(e,i=n[o++],r[i]);return e};var Gn,qn=W("document","documentElement"),Kn=Nt,Yn=xn,Xn=Ir,Zn=fi,Jn=qn,Qn=gt,$n="prototype",ea="script",ta=pi("IE_PROTO"),ia=function(){},ra=function(e){return"<"+ea+">"+e+"</"+ea+">"},na=function(e){e.write(ra("")),e.close();var t=e.parentWindow.Object;return e=null,t},aa=function(){try{Gn=new ActiveXObject("htmlfile")}catch(n){}var e,t,i;aa="undefined"!=typeof document?document.domain&&Gn?na(Gn):(t=Qn("iframe"),i="java"+ea+":",t.style.display="none",Jn.appendChild(t),t.src=String(i),(e=t.contentWindow.document).open(),e.write(ra("document.F=Object")),e.close(),e.F):na(Gn);for(var r=Xn.length;r--;)delete aa[$n][Xn[r]];return aa()};Zn[ta]=!0;var oa=Object.create||function(e,t){var i;return null!==e?(ia[$n]=Kn(e),i=new ia,ia[$n]=null,i[ta]=e):i=aa(),void 0===t?i:Yn.f(i,t)},sa=tt,ca=oa,la=kt.f,da=sa("unscopables"),ua=Array.prototype;void 0===ua[da]&&la(ua,da,{configurable:!0,value:ca(null)});var ha=function(e){ua[da][e]=!0},pa=gr.includes,fa=ha;en({target:"Array",proto:!0,forced:n(function(){return!Array(1).includes()})},{includes:function(e){return pa(this,e,arguments.length>1?arguments[1]:void 0)}}),fa("includes");var ma,ga,_a,va={},ya=!n(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),Ea=He,ba=B,wa=Fe,Ia=ya,Ta=pi("IE_PROTO"),Sa=Object,Aa=Sa.prototype,Ra=Ia?Sa.getPrototypeOf:function(e){var t=wa(e);if(Ea(t,Ta))return t[Ta];var i=t.constructor;return ba(i)&&t instanceof i?i.prototype:t instanceof Sa?Aa:null},ka=n,Ca=B,Da=H,Oa=Ra,La=Ji,Na=tt("iterator"),Pa=!1;[].keys&&("next"in(_a=[].keys())?(ga=Oa(Oa(_a)))!==Object.prototype&&(ma=ga):Pa=!0);var xa=!Da(ma)||ka(function(){var e={};return ma[Na].call(e)!==e});xa&&(ma={}),Ca(ma[Na])||La(ma,Na,function(){return this});var Ma={IteratorPrototype:ma,BUGGY_SAFARI_ITERATORS:Pa},Ua=kt.f,Fa=He,Ba=tt("toStringTag"),Va=function(e,t,i){e&&!i&&(e=e.prototype),e&&!Fa(e,Ba)&&Ua(e,Ba,{configurable:!0,value:t})},Ha=Ma.IteratorPrototype,ja=oa,za=g,Wa=Va,Ga=va,qa=function(){return this},Ka=function(e,t,i,r){var n=t+" Iterator";return e.prototype=ja(Ha,{next:za(+!r,i)}),Wa(e,n,!1),Ga[n]=qa,e},Ya=b,Xa=_e,Za=H,Ja=function(e){return Za(e)||null===e},Qa=String,$a=TypeError,eo=function(e,t,i){try{return Ya(Xa(Object.getOwnPropertyDescriptor(e,t)[i]))}catch(r){}},to=H,io=P,ro=function(e){if(Ja(e))return e;throw new $a("Can't set "+Qa(e)+" as a prototype")},no=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,i={};try{(e=eo(Object.prototype,"__proto__","set"))(i,[]),t=i instanceof Array}catch(r){}return function(i,r){return io(i),ro(r),to(i)?(t?e(i,r):i.__proto__=r,i):i}}():void 0),ao=en,oo=l,so=B,co=Ka,lo=Ra,uo=no,ho=Va,po=Kt,fo=Ji,mo=va,go=ei.PROPER,_o=ei.CONFIGURABLE,vo=Ma.IteratorPrototype,yo=Ma.BUGGY_SAFARI_ITERATORS,Eo=tt("iterator"),bo="keys",wo="values",Io="entries",To=function(){return this},So=function(e,t,i,r,n,a,o){co(i,t,r);var s,c,l,d=function(e){if(e===n&&m)return m;if(!yo&&e&&e in p)return p[e];switch(e){case bo:case wo:case Io:return function(){return new i(this,e)}}return function(){return new i(this)}},u=t+" Iterator",h=!1,p=e.prototype,f=p[Eo]||p["@@iterator"]||n&&p[n],m=!yo&&f||d(n),g="Array"===t&&p.entries||f;if(g&&(s=lo(g.call(new e)))!==Object.prototype&&s.next&&(lo(s)!==vo&&(uo?uo(s,vo):so(s[Eo])||fo(s,Eo,To)),ho(s,u,!0)),go&&n===wo&&f&&f.name!==wo&&(_o?po(p,"name",wo):(h=!0,m=function(){return oo(f,this)})),n)if(c={values:d(wo),keys:a?m:d(bo),entries:d(Io)},o)for(l in c)(yo||h||!(l in p))&&fo(p,l,c[l]);else ao({target:t,proto:!0,forced:yo||h},c);return p[Eo]!==m&&fo(p,Eo,m,{name:n}),mo[t]=m,c},Ao=function(e,t){return{value:e,done:t}},Ro=U,ko=ha,Co=va,Do=ki,Oo=kt.f,Lo=So,No=Ao,Po=a,xo="Array Iterator",Mo=Do.set,Uo=Do.getterFor(xo),Fo=Lo(Array,"Array",function(e,t){Mo(this,{type:xo,target:Ro(e),index:0,kind:t})},function(){var e=Uo(this),t=e.target,i=e.index++;if(!t||i>=t.length)return e.target=null,No(void 0,!0);switch(e.kind){case"keys":return No(i,!1);case"values":return No(t[i],!1)}return No([i,t[i]],!1)},"values"),Bo=Co.Arguments=Co.Array;if(ko("keys"),ko("values"),ko("entries"),Po&&"values"!==Bo.name)try{Oo(Bo,"name",{value:"values"})}catch(zM){}var Vo=_e,Ho=Fe,jo=D,zo=ur,Wo=TypeError,Go="Reduce of empty array with no initial value",qo=function(e){return function(t,i,r,n){var a=Ho(t),o=jo(a),s=zo(a);if(Vo(i),0===s&&r<2)throw new Wo(Go);var c=e?s-1:0,l=e?-1:1;if(r<2)for(;;){if(c in o){n=o[c],c+=l;break}if(c+=l,e?c<0:s<=c)throw new Wo(Go)}for(;e?c>=0:s>c;c+=l)c in o&&(n=i(n,o[c],c,a));return n}},Ko={left:qo(!1),right:qo(!0)},Yo=n,Xo=function(e,t){var i=[][e];return!!i&&Yo(function(){i.call(null,t||function(){return 1},1)})},Zo=i,Jo=Y,Qo=S,$o=function(e){return Jo.slice(0,e.length)===e},es=$o("Bun/")?"BUN":$o("Cloudflare-Workers")?"CLOUDFLARE":$o("Deno/")?"DENO":$o("Node.js/")?"NODE":Zo.Bun&&"string"==typeof Bun.version?"BUN":Zo.Deno&&"object"==typeof Deno.version?"DENO":"process"===Qo(Zo.process)?"NODE":Zo.window&&Zo.document?"BROWSER":"REST",ts="NODE"===es,is=Ko.left;en({target:"Array",proto:!0,forced:!ts&&te>79&&te<83||!Xo("reduce")},{reduce:function(e){var t=arguments.length;return is(this,e,t,t>1?arguments[1]:void 0)}});var rs=Ko.right;en({target:"Array",proto:!0,forced:!ts&&te>79&&te<83||!Xo("reduceRight")},{reduceRight:function(e){return rs(this,e,arguments.length,arguments.length>1?arguments[1]:void 0)}});var ns=S,as=Array.isArray||function(e){return"Array"===ns(e)},os=en,ss=as,cs=b([].reverse),ls=[1,2];os({target:"Array",proto:!0,forced:String(ls)===String(ls.reverse())},{reverse:function(){return ss(this)&&(this.length=this.length),cs(this)}});var ds="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView,us=Ji,hs=function(e,t,i){for(var r in t)us(e,r,t[r],i);return e},ps=G,fs=TypeError,ms=function(e,t){if(ps(t,e))return e;throw new fs("Incorrect invocation")},gs=ir,_s=lr,vs=RangeError,ys=function(e){if(void 0===e)return 0;var t=gs(e),i=_s(t);if(t!==i)throw new vs("Wrong length or index");return i},Es=Math.sign||function(e){var t=+e;return 0===t||t!=t?t:t<0?-1:1},bs=4503599627370496,ws=Es,Is=function(e){return e+bs-bs},Ts=Math.abs,Ss=function(e,t,i,r){var n=+e,a=Ts(n),o=ws(n);if(a<r)return o*Is(a/r/t)*r*t;var s=(1+t/2220446049250313e-31)*a,c=s-(s-a);return c>i||c!=c?Infinity*o:o*c},As=Math.fround||function(e){return Ss(e,1.1920928955078125e-7,34028234663852886e22,11754943508222875e-54)},Rs=Array,ks=Math.abs,Cs=Math.pow,Ds=Math.floor,Os=Math.log,Ls=Math.LN2,Ns={pack:function(e,t,i){var r,n,a,o=Rs(i),s=8*i-t-1,c=(1<<s)-1,l=c>>1,d=23===t?Cs(2,-24)-Cs(2,-77):0,u=e<0||0===e&&1/e<0?1:0,h=0;for((e=ks(e))!=e||Infinity===e?(n=e!=e?1:0,r=c):(r=Ds(Os(e)/Ls),e*(a=Cs(2,-r))<1&&(r--,a*=2),(e+=r+l>=1?d/a:d*Cs(2,1-l))*a>=2&&(r++,a/=2),r+l>=c?(n=0,r=c):r+l>=1?(n=(e*a-1)*Cs(2,t),r+=l):(n=e*Cs(2,l-1)*Cs(2,t),r=0));t>=8;)o[h++]=255&n,n/=256,t-=8;for(r=r<<t|n,s+=t;s>0;)o[h++]=255&r,r/=256,s-=8;return o[h-1]|=128*u,o},unpack:function(e,t){var i,r=e.length,n=8*r-t-1,a=(1<<n)-1,o=a>>1,s=n-7,c=r-1,l=e[c--],d=127&l;for(l>>=7;s>0;)d=256*d+e[c--],s-=8;for(i=d&(1<<-s)-1,d>>=-s,s+=t;s>0;)i=256*i+e[c--],s-=8;if(0===d)d=1-o;else{if(d===a)return i?NaN:l?-Infinity:Infinity;i+=Cs(2,t),d-=o}return(l?-1:1)*i*Cs(2,d-t)}},Ps=Fe,xs=or,Ms=ur,Us=function(e){for(var t=Ps(this),i=Ms(t),r=arguments.length,n=xs(r>1?arguments[1]:void 0,i),a=r>2?arguments[2]:void 0,o=void 0===a?i:xs(a,i);o>n;)t[n++]=e;return t},Fs=b([].slice),Bs=B,Vs=H,Hs=no,js=function(e,t,i){var r,n;return Hs&&Bs(r=t.constructor)&&r!==i&&Vs(n=r.prototype)&&n!==i.prototype&&Hs(e,n),e},zs=i,Ws=b,Gs=a,qs=ds,Ks=Kt,Ys=mn,Xs=hs,Zs=n,Js=ms,Qs=ir,$s=lr,ec=ys,tc=As,ic=Ns,rc=Ra,nc=no,ac=Us,oc=Fs,sc=js,cc=Ur,lc=Va,dc=ki,uc=ei.PROPER,hc=ei.CONFIGURABLE,pc="ArrayBuffer",fc="DataView",mc="prototype",gc="Wrong index",_c=dc.getterFor(pc),vc=dc.getterFor(fc),yc=dc.set,Ec=zs[pc],bc=Ec,wc=bc&&bc[mc],Ic=zs[fc],Tc=Ic&&Ic[mc],Sc=Object.prototype,Ac=zs.Array,Rc=zs.RangeError,kc=Ws(ac),Cc=Ws([].reverse),Dc=ic.pack,Oc=ic.unpack,Lc=function(e){return[255&e]},Nc=function(e){return[255&e,e>>8&255]},Pc=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},xc=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},Mc=function(e){return Dc(tc(e),23,4)},Uc=function(e){return Dc(e,52,8)},Fc=function(e,t,i){Ys(e[mc],t,{configurable:!0,get:function(){return i(this)[t]}})},Bc=function(e,t,i,r){var n=vc(e),a=ec(i),o=!!r;if(a+t>n.byteLength)throw new Rc(gc);var s=n.bytes,c=a+n.byteOffset,l=oc(s,c,c+t);return o?l:Cc(l)},Vc=function(e,t,i,r,n,a){var o=vc(e),s=ec(i),c=r(+n),l=!!a;if(s+t>o.byteLength)throw new Rc(gc);for(var d=o.bytes,u=s+o.byteOffset,h=0;h<t;h++)d[u+h]=c[l?h:t-h-1]};if(qs){var Hc=uc&&Ec.name!==pc;Zs(function(){Ec(1)})&&Zs(function(){new Ec(-1)})&&!Zs(function(){return new Ec,new Ec(1.5),new Ec(NaN),1!==Ec.length||Hc&&!hc})?Hc&&hc&&Ks(Ec,"name",pc):((bc=function(e){return Js(this,wc),sc(new Ec(ec(e)),this,bc)})[mc]=wc,wc.constructor=bc,cc(bc,Ec)),nc&&rc(Tc)!==Sc&&nc(Tc,Sc);var jc=new Ic(new bc(2)),zc=Ws(Tc.setInt8);jc.setInt8(0,2147483648),jc.setInt8(1,2147483649),!jc.getInt8(0)&&jc.getInt8(1)||Xs(Tc,{setInt8:function(e,t){zc(this,e,t<<24>>24)},setUint8:function(e,t){zc(this,e,t<<24>>24)}},{unsafe:!0})}else wc=(bc=function(e){Js(this,wc);var t=ec(e);yc(this,{type:pc,bytes:kc(Ac(t),0),byteLength:t}),Gs||(this.byteLength=t,this.detached=!1)})[mc],Tc=(Ic=function(e,t,i){Js(this,Tc),Js(e,wc);var r=_c(e),n=r.byteLength,a=Qs(t);if(a<0||a>n)throw new Rc("Wrong offset");if(a+(i=void 0===i?n-a:$s(i))>n)throw new Rc("Wrong length");yc(this,{type:fc,buffer:e,byteLength:i,byteOffset:a,bytes:r.bytes}),Gs||(this.buffer=e,this.byteLength=i,this.byteOffset=a)})[mc],Gs&&(Fc(bc,"byteLength",_c),Fc(Ic,"buffer",vc),Fc(Ic,"byteLength",vc),Fc(Ic,"byteOffset",vc)),Xs(Tc,{getInt8:function(e){return Bc(this,1,e)[0]<<24>>24},getUint8:function(e){return Bc(this,1,e)[0]},getInt16:function(e){var t=Bc(this,2,e,arguments.length>1&&arguments[1]);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=Bc(this,2,e,arguments.length>1&&arguments[1]);return t[1]<<8|t[0]},getInt32:function(e){return xc(Bc(this,4,e,arguments.length>1&&arguments[1]))},getUint32:function(e){return xc(Bc(this,4,e,arguments.length>1&&arguments[1]))>>>0},getFloat32:function(e){return Oc(Bc(this,4,e,arguments.length>1&&arguments[1]),23)},getFloat64:function(e){return Oc(Bc(this,8,e,arguments.length>1&&arguments[1]),52)},setInt8:function(e,t){Vc(this,1,e,Lc,t)},setUint8:function(e,t){Vc(this,1,e,Lc,t)},setInt16:function(e,t){Vc(this,2,e,Nc,t,arguments.length>2&&arguments[2])},setUint16:function(e,t){Vc(this,2,e,Nc,t,arguments.length>2&&arguments[2])},setInt32:function(e,t){Vc(this,4,e,Pc,t,arguments.length>2&&arguments[2])},setUint32:function(e,t){Vc(this,4,e,Pc,t,arguments.length>2&&arguments[2])},setFloat32:function(e,t){Vc(this,4,e,Mc,t,arguments.length>2&&arguments[2])},setFloat64:function(e,t){Vc(this,8,e,Uc,t,arguments.length>2&&arguments[2])}});lc(bc,pc),lc(Ic,fc);var Wc={ArrayBuffer:bc,DataView:Ic},Gc=W,qc=mn,Kc=a,Yc=tt("species"),Xc=function(e){var t=Gc(e);Kc&&t&&!t[Yc]&&qc(t,Yc,{configurable:!0,get:function(){return this}})},Zc=Xc,Jc="ArrayBuffer",Qc=Wc[Jc];en({global:!0,constructor:!0,forced:i[Jc]!==Qc},{ArrayBuffer:Qc}),Zc(Jc);var $c=S,el=b,tl=function(e){if("Function"===$c(e))return el(e)},il=en,rl=tl,nl=n,al=Nt,ol=or,sl=lr,cl=Wc.ArrayBuffer,ll=Wc.DataView,dl=ll.prototype,ul=rl(cl.prototype.slice),hl=rl(dl.getUint8),pl=rl(dl.setUint8);il({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:nl(function(){return!new cl(2).slice(1,void 0).byteLength})},{slice:function(e,t){if(ul&&void 0===t)return ul(al(this),e);for(var i=al(this).byteLength,r=ol(e,i),n=ol(void 0===t?i:t,i),a=new cl(sl(n-r)),o=new ll(this),s=new ll(a),c=0;r<n;)pl(s,c++,hl(o,r++));return a}});var fl=i,ml=b,gl=n,_l=B,vl=ln,yl=si,El=function(){},bl=W("Reflect","construct"),wl=/^\s*(?:class|function)\b/,Il=ml(wl.exec),Tl=!wl.test(El),Sl=function(e){if(!_l(e))return!1;try{return bl(El,[],e),!0}catch(zM){return!1}},Al=function(e){if(!_l(e))return!1;switch(vl(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Tl||!!Il(wl,yl(e))}catch(zM){return!0}};Al.sham=!0;var Rl,kl,Cl,Dl,Ol=!bl||gl(function(){var e;return Sl(Sl.call)||!Sl(Object)||!Sl(function(){e=!0})||e})?Al:Sl,Ll=Ol,Nl=pe,Pl=TypeError,xl=function(e){if(Ll(e))return e;throw new Pl(Nl(e)+" is not a constructor")},Ml=Nt,Ul=xl,Fl=O,Bl=tt("species"),Vl=function(e,t){var i,r=Ml(e).constructor;return void 0===r||Fl(i=Ml(r)[Bl])?t:Ul(i)},Hl=o,jl=Function.prototype,zl=jl.apply,Wl=jl.call,Gl="object"==typeof Reflect&&Reflect.apply||(Hl?Wl.bind(zl):function(){return Wl.apply(zl,arguments)}),ql=_e,Kl=o,Yl=tl(tl.bind),Xl=function(e,t){return ql(e),void 0===t?e:Kl?Yl(e,t):function(){return e.apply(t,arguments)}},Zl=TypeError,Jl=function(e,t){if(e<t)throw new Zl("Not enough arguments");return e},Ql=/(?:ipad|iphone|ipod).*applewebkit/i.test(Y),$l=i,ed=Gl,td=Xl,id=B,rd=He,nd=n,ad=qn,od=Fs,sd=gt,cd=Jl,ld=Ql,dd=ts,ud=$l.setImmediate,hd=$l.clearImmediate,pd=$l.process,fd=$l.Dispatch,md=$l.Function,gd=$l.MessageChannel,_d=$l.String,vd=0,yd={},Ed="onreadystatechange";nd(function(){Rl=$l.location});var bd=function(e){if(rd(yd,e)){var t=yd[e];delete yd[e],t()}},wd=function(e){return function(){bd(e)}},Id=function(e){bd(e.data)},Td=function(e){$l.postMessage(_d(e),Rl.protocol+"//"+Rl.host)};ud&&hd||(ud=function(e){cd(arguments.length,1);var t=id(e)?e:md(e),i=od(arguments,1);return yd[++vd]=function(){ed(t,void 0,i)},kl(vd),vd},hd=function(e){delete yd[e]},dd?kl=function(e){pd.nextTick(wd(e))}:fd&&fd.now?kl=function(e){fd.now(wd(e))}:gd&&!ld?(Dl=(Cl=new gd).port2,Cl.port1.onmessage=Id,kl=td(Dl.postMessage,Dl)):$l.addEventListener&&id($l.postMessage)&&!$l.importScripts&&Rl&&"file:"!==Rl.protocol&&!nd(Td)?(kl=Td,$l.addEventListener("message",Id,!1)):kl=Ed in sd("script")?function(e){ad.appendChild(sd("script"))[Ed]=function(){ad.removeChild(this),bd(e)}}:function(e){setTimeout(wd(e),0)});var Sd={set:ud,clear:hd},Ad=i,Rd=a,kd=Object.getOwnPropertyDescriptor,Cd=function(e){if(!Rd)return Ad[e];var t=kd(Ad,e);return t&&t.value},Dd=function(){this.head=null,this.tail=null};Dd.prototype={add:function(e){var t={item:e,next:null},i=this.tail;i?i.next=t:this.head=t,this.tail=t},get:function(){var e=this.head;if(e)return null===(this.head=e.next)&&(this.tail=null),e.item}};var Od,Ld,Nd,Pd,xd,Md=Dd,Ud=/ipad|iphone|ipod/i.test(Y)&&"undefined"!=typeof Pebble,Fd=/web0s(?!.*chrome)/i.test(Y),Bd=i,Vd=Cd,Hd=Xl,jd=Sd.set,zd=Md,Wd=Ql,Gd=Ud,qd=Fd,Kd=ts,Yd=Bd.MutationObserver||Bd.WebKitMutationObserver,Xd=Bd.document,Zd=Bd.process,Jd=Bd.Promise,Qd=Vd("queueMicrotask");if(!Qd){var $d=new zd,eu=function(){var e,t;for(Kd&&(e=Zd.domain)&&e.exit();t=$d.get();)try{t()}catch(zM){throw $d.head&&Od(),zM}e&&e.enter()};Wd||Kd||qd||!Yd||!Xd?!Gd&&Jd&&Jd.resolve?((Pd=Jd.resolve(void 0)).constructor=Jd,xd=Hd(Pd.then,Pd),Od=function(){xd(eu)}):Kd?Od=function(){Zd.nextTick(eu)}:(jd=Hd(jd,Bd),Od=function(){jd(eu)}):(Ld=!0,Nd=Xd.createTextNode(""),new Yd(eu).observe(Nd,{characterData:!0}),Od=function(){Nd.data=Ld=!Ld}),Qd=function(e){$d.head||Od(),$d.add(e)}}var tu=Qd,iu=function(e){try{return{error:!1,value:e()}}catch(zM){return{error:!0,value:zM}}},ru=i.Promise,nu=i,au=ru,ou=B,su=qr,cu=si,lu=tt,du=es,uu=te;au&&au.prototype;var hu=lu("species"),pu=!1,fu=ou(nu.PromiseRejectionEvent),mu=su("Promise",function(){var e=cu(au),t=e!==String(au);if(!t&&66===uu)return!0;if(!uu||uu<51||!/native code/.test(e)){var i=new au(function(e){e(1)}),r=function(e){e(function(){},function(){})};if((i.constructor={})[hu]=r,!(pu=i.then(function(){})instanceof r))return!0}return!(t||"BROWSER"!==du&&"DENO"!==du||fu)}),gu={CONSTRUCTOR:mu,REJECTION_EVENT:fu,SUBCLASSING:pu},_u={},vu=_e,yu=TypeError,Eu=function(e){var t,i;this.promise=new e(function(e,r){if(void 0!==t||void 0!==i)throw new yu("Bad Promise constructor");t=e,i=r}),this.resolve=vu(t),this.reject=vu(i)};_u.f=function(e){return new Eu(e)};var bu,wu,Iu,Tu,Su=en,Au=ts,Ru=i,ku=fl,Cu=l,Du=Ji,Ou=no,Lu=Va,Nu=Xc,Pu=_e,xu=B,Mu=H,Uu=ms,Fu=Vl,Bu=Sd.set,Vu=tu,Hu=function(e,t){try{1===arguments.length?console.error(e):console.error(e,t)}catch(zM){}},ju=iu,zu=Md,Wu=ki,Gu=ru,qu=_u,Ku="Promise",Yu=gu.CONSTRUCTOR,Xu=gu.REJECTION_EVENT,Zu=gu.SUBCLASSING,Ju=Wu.getterFor(Ku),Qu=Wu.set,$u=Gu&&Gu.prototype,eh=Gu,th=$u,ih=Ru.TypeError,rh=Ru.document,nh=Ru.process,ah=qu.f,oh=ah,sh=!!(rh&&rh.createEvent&&Ru.dispatchEvent),ch="unhandledrejection",lh=function(e){var t;return!(!Mu(e)||!xu(t=e.then))&&t},dh=function(e,t){var i,r,n,a=t.value,o=1===t.state,s=o?e.ok:e.fail,c=e.resolve,l=e.reject,d=e.domain;try{s?(o||(2===t.rejection&&mh(t),t.rejection=1),!0===s?i=a:(d&&d.enter(),i=s(a),d&&(d.exit(),n=!0)),i===e.promise?l(new ih("Promise-chain cycle")):(r=lh(i))?Cu(r,i,c,l):c(i)):l(a)}catch(zM){d&&!n&&d.exit(),l(zM)}},uh=function(e,t){e.notified||(e.notified=!0,Vu(function(){for(var i,r=e.reactions;i=r.get();)dh(i,e);e.notified=!1,t&&!e.rejection&&ph(e)}))},hh=function(e,t,i){var r,n;sh?((r=rh.createEvent("Event")).promise=t,r.reason=i,r.initEvent(e,!1,!0),Ru.dispatchEvent(r)):r={promise:t,reason:i},!Xu&&(n=Ru["on"+e])?n(r):e===ch&&Hu("Unhandled promise rejection",i)},ph=function(e){Cu(Bu,Ru,function(){var t,i=e.facade,r=e.value;if(fh(e)&&(t=ju(function(){Au?nh.emit("unhandledRejection",r,i):hh(ch,i,r)}),e.rejection=Au||fh(e)?2:1,t.error))throw t.value})},fh=function(e){return 1!==e.rejection&&!e.parent},mh=function(e){Cu(Bu,Ru,function(){var t=e.facade;Au?nh.emit("rejectionHandled",t):hh("rejectionhandled",t,e.value)})},gh=function(e,t,i){return function(r){e(t,r,i)}},_h=function(e,t,i){e.done||(e.done=!0,i&&(e=i),e.value=t,e.state=2,uh(e,!0))},vh=function(e,t,i){if(!e.done){e.done=!0,i&&(e=i);try{if(e.facade===t)throw new ih("Promise can't be resolved itself");var r=lh(t);r?Vu(function(){var i={done:!1};try{Cu(r,t,gh(vh,i,e),gh(_h,i,e))}catch(zM){_h(i,zM,e)}}):(e.value=t,e.state=1,uh(e,!1))}catch(zM){_h({done:!1},zM,e)}}};if(Yu&&(th=(eh=function(e){Uu(this,th),Pu(e),Cu(bu,this);var t=Ju(this);try{e(gh(vh,t),gh(_h,t))}catch(zM){_h(t,zM)}}).prototype,(bu=function(e){Qu(this,{type:Ku,done:!1,notified:!1,parent:!1,reactions:new zu,rejection:!1,state:0,value:null})}).prototype=Du(th,"then",function(e,t){var i=Ju(this),r=ah(Fu(this,eh));return i.parent=!0,r.ok=!xu(e)||e,r.fail=xu(t)&&t,r.domain=Au?nh.domain:void 0,0===i.state?i.reactions.add(r):Vu(function(){dh(r,i)}),r.promise}),wu=function(){var e=new bu,t=Ju(e);this.promise=e,this.resolve=gh(vh,t),this.reject=gh(_h,t)},qu.f=ah=function(e){return e===eh||e===Iu?new wu(e):oh(e)},xu(Gu)&&$u!==Object.prototype)){Tu=$u.then,Zu||Du($u,"then",function(e,t){var i=this;return new eh(function(e,t){Cu(Tu,i,e,t)}).then(e,t)},{unsafe:!0});try{delete $u.constructor}catch(zM){}Ou&&Ou($u,th)}Su({global:!0,constructor:!0,wrap:!0,forced:Yu},{Promise:eh}),Iu=ku.Promise,Lu(eh,Ku,!1),Nu(Ku);var yh=va,Eh=tt("iterator"),bh=Array.prototype,wh=function(e){return void 0!==e&&(yh.Array===e||bh[Eh]===e)},Ih=ln,Th=Ee,Sh=O,Ah=va,Rh=tt("iterator"),kh=function(e){if(!Sh(e))return Th(e,Rh)||Th(e,"@@iterator")||Ah[Ih(e)]},Ch=l,Dh=_e,Oh=Nt,Lh=pe,Nh=kh,Ph=TypeError,xh=function(e,t){var i=arguments.length<2?Nh(e):t;if(Dh(i))return Oh(Ch(i,e));throw new Ph(Lh(e)+" is not iterable")},Mh=l,Uh=Nt,Fh=Ee,Bh=function(e,t,i){var r,n;Uh(e);try{if(!(r=Fh(e,"return"))){if("throw"===t)throw i;return i}r=Mh(r,e)}catch(zM){n=!0,r=zM}if("throw"===t)throw i;if(n)throw r;return Uh(r),i},Vh=Xl,Hh=l,jh=Nt,zh=pe,Wh=wh,Gh=ur,qh=G,Kh=xh,Yh=kh,Xh=Bh,Zh=TypeError,Jh=function(e,t){this.stopped=e,this.result=t},Qh=Jh.prototype,$h=function(e,t,i){var r,n,a,o,s,c,l,d=i&&i.that,u=!(!i||!i.AS_ENTRIES),h=!(!i||!i.IS_RECORD),p=!(!i||!i.IS_ITERATOR),f=!(!i||!i.INTERRUPTED),m=Vh(t,d),g=function(e){return r&&Xh(r,"normal"),new Jh(!0,e)},_=function(e){return u?(jh(e),f?m(e[0],e[1],g):m(e[0],e[1])):f?m(e,g):m(e)};if(h)r=e.iterator;else if(p)r=e;else{if(!(n=Yh(e)))throw new Zh(zh(e)+" is not iterable");if(Wh(n)){for(a=0,o=Gh(e);o>a;a++)if((s=_(e[a]))&&qh(Qh,s))return s;return new Jh(!1)}r=Kh(e,n)}for(c=h?e.next:r.next;!(l=Hh(c,r)).done;){try{s=_(l.value)}catch(zM){Xh(r,"throw",zM)}if("object"==typeof s&&s&&qh(Qh,s))return s}return new Jh(!1)},ep=tt("iterator"),tp=!1;try{var ip=0,rp={next:function(){return{done:!!ip++}},return:function(){tp=!0}};rp[ep]=function(){return this},Array.from(rp,function(){throw 2})}catch(zM){}var np=function(e,t){try{if(!t&&!tp)return!1}catch(zM){return!1}var i=!1;try{var r={};r[ep]=function(){return{next:function(){return{done:i=!0}}}},e(r)}catch(zM){}return i},ap=ru,op=gu.CONSTRUCTOR||!np(function(e){ap.all(e).then(void 0,function(){})}),sp=l,cp=_e,lp=_u,dp=iu,up=$h;en({target:"Promise",stat:!0,forced:op},{all:function(e){var t=this,i=lp.f(t),r=i.resolve,n=i.reject,a=dp(function(){var i=cp(t.resolve),a=[],o=0,s=1;up(e,function(e){var c=o++,l=!1;s++,sp(i,t,e).then(function(e){l||(l=!0,a[c]=e,--s||r(a))},n)}),--s||r(a)});return a.error&&n(a.value),i.promise}});var hp=en,pp=gu.CONSTRUCTOR,fp=ru,mp=W,gp=B,_p=Ji,vp=fp&&fp.prototype;if(hp({target:"Promise",proto:!0,forced:pp,real:!0},{catch:function(e){return this.then(void 0,e)}}),gp(fp)){var yp=mp("Promise").prototype.catch;vp.catch!==yp&&_p(vp,"catch",yp,{unsafe:!0})}var Ep=l,bp=_e,wp=_u,Ip=iu,Tp=$h;en({target:"Promise",stat:!0,forced:op},{race:function(e){var t=this,i=wp.f(t),r=i.reject,n=Ip(function(){var n=bp(t.resolve);Tp(e,function(e){Ep(n,t,e).then(i.resolve,r)})});return n.error&&r(n.value),i.promise}});var Sp=_u;en({target:"Promise",stat:!0,forced:gu.CONSTRUCTOR},{reject:function(e){var t=Sp.f(this);return(0,t.reject)(e),t.promise}});var Ap=Nt,Rp=H,kp=_u,Cp=function(e,t){if(Ap(e),Rp(t)&&t.constructor===e)return t;var i=kp.f(e);return(0,i.resolve)(t),i.promise},Dp=en,Op=gu.CONSTRUCTOR,Lp=Cp;W("Promise"),Dp({target:"Promise",stat:!0,forced:Op},{resolve:function(e){return Lp(this,e)}});var Np=en,Pp=ru,xp=n,Mp=W,Up=B,Fp=Vl,Bp=Cp,Vp=Ji,Hp=Pp&&Pp.prototype;if(Np({target:"Promise",proto:!0,real:!0,forced:!!Pp&&xp(function(){Hp.finally.call({then:function(){}},function(){})})},{finally:function(e){var t=Fp(this,Mp("Promise")),i=Up(e);return this.then(i?function(i){return Bp(t,e()).then(function(){return i})}:e,i?function(i){return Bp(t,e()).then(function(){throw i})}:e)}}),Up(Pp)){var jp=Mp("Promise").prototype.finally;Hp.finally!==jp&&Vp(Hp,"finally",jp,{unsafe:!0})}var zp=H,Wp=S,Gp=tt("match"),qp=function(e){var t;return zp(e)&&(void 0!==(t=e[Gp])?!!t:"RegExp"===Wp(e))},Kp=n,Yp=i.RegExp,Xp=!Kp(function(){var e=!0;try{Yp(".","d")}catch(zM){e=!1}var t={},i="",r=e?"dgimsy":"gimsy",n=function(e,r){Object.defineProperty(t,e,{get:function(){return i+=r,!0}})},a={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};for(var o in e&&(a.hasIndices="d"),a)n(o,a[o]);return Object.getOwnPropertyDescriptor(Yp.prototype,"flags").get.call(t)!==r||i!==r}),Zp={correct:Xp},Jp=Nt,Qp=function(){var e=Jp(this),t="";return e.hasIndices&&(t+="d"),e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.unicodeSets&&(t+="v"),e.sticky&&(t+="y"),t},$p=l,ef=He,tf=G,rf=Zp,nf=Qp,af=RegExp.prototype,of=rf.correct?function(e){return e.flags}:function(e){return rf.correct||!tf(af,e)||ef(e,"flags")?e.flags:$p(nf,e)},sf=n,cf=i.RegExp,lf=sf(function(){var e=cf("a","y");return e.lastIndex=2,null!==e.exec("abcd")}),df=lf||sf(function(){return!cf("a","y").sticky}),uf=lf||sf(function(){var e=cf("^r","gy");return e.lastIndex=2,null!==e.exec("str")}),hf={BROKEN_CARET:uf,MISSED_STICKY:df,UNSUPPORTED_Y:lf},pf=kt.f,ff=n,mf=i.RegExp,gf=ff(function(){var e=mf(".","s");return!(e.dotAll&&e.test("\n")&&"s"===e.flags)}),_f=n,vf=i.RegExp,yf=_f(function(){var e=vf("(?<a>b)","g");return"b"!==e.exec("b").groups.a||"bc"!=="b".replace(e,"$<a>c")}),Ef=a,bf=i,wf=b,If=qr,Tf=js,Sf=Kt,Af=oa,Rf=Qi.f,kf=G,Cf=qp,Df=hn,Of=of,Lf=hf,Nf=function(e,t,i){i in e||pf(e,i,{configurable:!0,get:function(){return t[i]},set:function(e){t[i]=e}})},Pf=Ji,xf=n,Mf=He,Uf=ki.enforce,Ff=Xc,Bf=gf,Vf=yf,Hf=tt("match"),jf=bf.RegExp,zf=jf.prototype,Wf=bf.SyntaxError,Gf=wf(zf.exec),qf=wf("".charAt),Kf=wf("".replace),Yf=wf("".indexOf),Xf=wf("".slice),Zf=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,Jf=/a/g,Qf=/a/g,$f=new jf(Jf)!==Jf,em=Lf.MISSED_STICKY,tm=Lf.UNSUPPORTED_Y,im=Ef&&(!$f||em||Bf||Vf||xf(function(){return Qf[Hf]=!1,jf(Jf)!==Jf||jf(Qf)===Qf||"/a/i"!==String(jf(Jf,"i"))}));if(If("RegExp",im)){for(var rm=function(e,t){var i,r,n,a,o,s,c=kf(zf,this),l=Cf(e),d=void 0===t,u=[],h=e;if(!c&&l&&d&&e.constructor===rm)return e;if((l||kf(zf,e))&&(e=e.source,d&&(t=Of(h))),e=void 0===e?"":Df(e),t=void 0===t?"":Df(t),h=e,Bf&&"dotAll"in Jf&&(r=!!t&&Yf(t,"s")>-1)&&(t=Kf(t,/s/g,"")),i=t,em&&"sticky"in Jf&&(n=!!t&&Yf(t,"y")>-1)&&tm&&(t=Kf(t,/y/g,"")),Vf&&(a=function(e){for(var t,i=e.length,r=0,n="",a=[],o=Af(null),s=!1,c=!1,l=0,d="";r<=i;r++){if("\\"===(t=qf(e,r)))t+=qf(e,++r);else if("]"===t)s=!1;else if(!s)switch(!0){case"["===t:s=!0;break;case"("===t:if(n+=t,"?:"===Xf(e,r+1,r+3))continue;Gf(Zf,Xf(e,r+1))&&(r+=2,c=!0),l++;continue;case">"===t&&c:if(""===d||Mf(o,d))throw new Wf("Invalid capture group name");o[d]=!0,a[a.length]=[d,l],c=!1,d="";continue}c?d+=t:n+=t}return[n,a]}(e),e=a[0],u=a[1]),o=Tf(jf(e,t),c?this:zf,rm),(r||n||u.length)&&(s=Uf(o),r&&(s.dotAll=!0,s.raw=rm(function(e){for(var t,i=e.length,r=0,n="",a=!1;r<=i;r++)"\\"!==(t=qf(e,r))?a||"."!==t?("["===t?a=!0:"]"===t&&(a=!1),n+=t):n+="[\\s\\S]":n+=t+qf(e,++r);return n}(e),i)),n&&(s.sticky=!0),u.length&&(s.groups=u)),e!==h)try{Sf(o,"source",""===h?"(?:)":h)}catch(zM){}return o},nm=Rf(jf),am=0;nm.length>am;)Nf(rm,jf,nm[am++]);zf.constructor=rm,rm.prototype=zf,Pf(bf,"RegExp",rm,{constructor:!0})}Ff("RegExp");var om=l,sm=b,cm=hn,lm=Qp,dm=hf,um=oa,hm=ki.get,pm=gf,fm=yf,mm=xe("native-string-replace",String.prototype.replace),gm=RegExp.prototype.exec,_m=gm,vm=sm("".charAt),ym=sm("".indexOf),Em=sm("".replace),bm=sm("".slice),wm=function(){var e=/a/,t=/b*/g;return om(gm,e,"a"),om(gm,t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),Im=dm.BROKEN_CARET,Tm=void 0!==/()??/.exec("")[1];(wm||Tm||Im||pm||fm)&&(_m=function(e){var t,i,r,n,a,o,s,c=this,l=hm(c),d=cm(e),u=l.raw;if(u)return u.lastIndex=c.lastIndex,t=om(_m,u,d),c.lastIndex=u.lastIndex,t;var h=l.groups,p=Im&&c.sticky,f=om(lm,c),m=c.source,g=0,_=d;if(p&&(f=Em(f,"y",""),-1===ym(f,"g")&&(f+="g"),_=bm(d,c.lastIndex),c.lastIndex>0&&(!c.multiline||c.multiline&&"\n"!==vm(d,c.lastIndex-1))&&(m="(?: "+m+")",_=" "+_,g++),i=new RegExp("^(?:"+m+")",f)),Tm&&(i=new RegExp("^"+m+"$(?!\\s)",f)),wm&&(r=c.lastIndex),n=om(gm,p?i:c,_),p?n?(n.input=bm(n.input,g),n[0]=bm(n[0],g),n.index=c.lastIndex,c.lastIndex+=n[0].length):c.lastIndex=0:wm&&n&&(c.lastIndex=c.global?n.index+n[0].length:r),Tm&&n&&n.length>1&&om(mm,n[0],i,function(){for(a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(n[a]=void 0)}),n&&h)for(n.groups=o=um(null),a=0;a<h.length;a++)o[(s=h[a])[0]]=n[s[1]];return n});var Sm=_m;en({target:"RegExp",proto:!0,forced:/./.exec!==Sm},{exec:Sm});var Am=mn,Rm=Zp,km=Qp;a&&!Rm.correct&&(Am(RegExp.prototype,"flags",{configurable:!0,get:km}),Rm.correct=!0);var Cm=ir,Dm=hn,Om=P,Lm=RangeError,Nm=b,Pm=lr,xm=hn,Mm=P,Um=Nm(function(e){var t=Dm(Om(this)),i="",r=Cm(e);if(r<0||Infinity===r)throw new Lm("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))1&r&&(i+=t);return i}),Fm=Nm("".slice),Bm=Math.ceil,Vm=function(e){return function(t,i,r){var n,a,o=xm(Mm(t)),s=Pm(i),c=o.length,l=void 0===r?" ":xm(r);return s<=c||""===l?o:((a=Um(l,Bm((n=s-c)/l.length))).length>n&&(a=Fm(a,0,n)),e?o+a:a+o)}},Hm={start:Vm(!1),end:Vm(!0)},jm=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(Y),zm=Hm.start;en({target:"String",proto:!0,forced:jm},{padStart:function(e){return zm(this,e,arguments.length>1?arguments[1]:void 0)}});var Wm=l,Gm=Ji,qm=Sm,Km=n,Ym=tt,Xm=Kt,Zm=Ym("species"),Jm=RegExp.prototype,Qm=b,$m=ir,eg=hn,tg=P,ig=Qm("".charAt),rg=Qm("".charCodeAt),ng=Qm("".slice),ag=function(e){return function(t,i){var r,n,a=eg(tg(t)),o=$m(i),s=a.length;return o<0||o>=s?e?"":void 0:(r=rg(a,o))<55296||r>56319||o+1===s||(n=rg(a,o+1))<56320||n>57343?e?ig(a,o):r:e?ng(a,o,o+2):n-56320+(r-55296<<10)+65536}},og={codeAt:ag(!1),charAt:ag(!0)},sg=og.charAt,cg=b,lg=Fe,dg=Math.floor,ug=cg("".charAt),hg=cg("".replace),pg=cg("".slice),fg=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,mg=/\$([$&'`]|\d{1,2})/g,gg=function(e,t,i,r,n,a){var o=i+e.length,s=r.length,c=mg;return void 0!==n&&(n=lg(n),c=fg),hg(a,c,function(a,c){var l;switch(ug(c,0)){case"$":return"$";case"&":return e;case"`":return pg(t,0,i);case"'":return pg(t,o);case"<":l=n[pg(c,1,-1)];break;default:var d=+c;if(0===d)return a;if(d>s){var u=dg(d/10);return 0===u?a:u<=s?void 0===r[u-1]?ug(c,1):r[u-1]+ug(c,1):a}l=r[d-1]}return void 0===l?"":l})},_g=l,vg=Nt,yg=B,Eg=S,bg=Sm,wg=TypeError,Ig=Gl,Tg=l,Sg=b,Ag=function(e,t,i,r){var n=Ym(e),a=!Km(function(){var t={};return t[n]=function(){return 7},7!==""[e](t)}),o=a&&!Km(function(){var t=!1,i=/a/;if("split"===e){var r={};r[Zm]=function(){return i},(i={constructor:r,flags:""})[n]=/./[n]}return i.exec=function(){return t=!0,null},i[n](""),!t});if(!a||!o||i){var s=/./[n],c=t(n,""[e],function(e,t,i,r,n){var o=t.exec;return o===qm||o===Jm.exec?a&&!n?{done:!0,value:Wm(s,t,i,r)}:{done:!0,value:Wm(e,i,t,r)}:{done:!1}});Gm(String.prototype,e,c[0]),Gm(Jm,n,c[1])}r&&Xm(Jm[n],"sham",!0)},Rg=n,kg=Nt,Cg=B,Dg=H,Og=ir,Lg=lr,Ng=hn,Pg=P,xg=function(e,t,i){return t+(i?sg(e,t).length:1)},Mg=Ee,Ug=gg,Fg=of,Bg=function(e,t){var i=e.exec;if(yg(i)){var r=_g(i,e,t);return null!==r&&vg(r),r}if("RegExp"===Eg(e))return _g(bg,e,t);throw new wg("RegExp#exec called on incompatible receiver")},Vg=tt("replace"),Hg=Math.max,jg=Math.min,zg=Sg([].concat),Wg=Sg([].push),Gg=Sg("".indexOf),qg=Sg("".slice),Kg=function(e){return void 0===e?e:String(e)},Yg="$0"==="a".replace(/./,"$0"),Xg=!!/./[Vg]&&""===/./[Vg]("a","$0"),Zg=!Rg(function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")});Ag("replace",function(e,t,i){var r=Xg?"$":"$0";return[function(e,i){var r=Pg(this),n=Dg(e)?Mg(e,Vg):void 0;return n?Tg(n,e,r,i):Tg(t,Ng(r),e,i)},function(e,n){var a=kg(this),o=Ng(e);if("string"==typeof n&&-1===Gg(n,r)&&-1===Gg(n,"$<")){var s=i(t,a,o,n);if(s.done)return s.value}var c=Cg(n);c||(n=Ng(n));var l,d=Ng(Fg(a)),u=-1!==Gg(d,"g");u&&(l=-1!==Gg(d,"u"),a.lastIndex=0);for(var h,p=[];null!==(h=Bg(a,o))&&(Wg(p,h),u);){""===Ng(h[0])&&(a.lastIndex=xg(o,Lg(a.lastIndex),l))}for(var f="",m=0,g=0;g<p.length;g++){for(var _,v=Ng((h=p[g])[0]),y=Hg(jg(Og(h.index),o.length),0),E=[],b=1;b<h.length;b++)Wg(E,Kg(h[b]));var w=h.groups;if(c){var I=zg([v],E,y,o);void 0!==w&&Wg(I,w),_=Ng(Ig(n,void 0,I))}else _=Ug(v,o,y,E,w,n);y>=m&&(f+=qg(o,m,y)+_,m=y+v.length)}return f+qg(o,m)}]},!Zg||!Yg||Xg);var Jg="\t\n\v\f\r                 \u2028\u2029\ufeff",Qg=P,$g=hn,e_=Jg,t_=b("".replace),i_=RegExp("^["+e_+"]+"),r_=RegExp("(^|[^"+e_+"])["+e_+"]+$"),n_=function(e){return function(t){var i=$g(Qg(t));return 1&e&&(i=t_(i,i_,"")),2&e&&(i=t_(i,r_,"$1")),i}},a_={start:n_(1),end:n_(2),trim:n_(3)},o_=ei.PROPER,s_=n,c_=Jg,l_=a_.trim;en({target:"String",proto:!0,forced:function(e){return s_(function(){return!!c_[e]()||"​…᠎"!=="​…᠎"[e]()||o_&&c_[e].name!==e})}("trim")},{trim:function(){return l_(this)}});var d_,u_,h_,p_={exports:{}},f_=ds,m_=a,g_=i,__=B,v_=H,y_=He,E_=ln,b_=pe,w_=Kt,I_=Ji,T_=mn,S_=G,A_=Ra,R_=no,k_=tt,C_=qe,D_=ki.enforce,O_=ki.get,L_=g_.Int8Array,N_=L_&&L_.prototype,P_=g_.Uint8ClampedArray,x_=P_&&P_.prototype,M_=L_&&A_(L_),U_=N_&&A_(N_),F_=Object.prototype,B_=g_.TypeError,V_=k_("toStringTag"),H_=C_("TYPED_ARRAY_TAG"),j_="TypedArrayConstructor",z_=f_&&!!R_&&"Opera"!==E_(g_.opera),W_=!1,G_={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},q_={BigInt64Array:8,BigUint64Array:8},K_=function(e){var t=A_(e);if(v_(t)){var i=O_(t);return i&&y_(i,j_)?i[j_]:K_(t)}},Y_=function(e){if(!v_(e))return!1;var t=E_(e);return y_(G_,t)||y_(q_,t)};for(d_ in G_)(h_=(u_=g_[d_])&&u_.prototype)?D_(h_)[j_]=u_:z_=!1;for(d_ in q_)(h_=(u_=g_[d_])&&u_.prototype)&&(D_(h_)[j_]=u_);if((!z_||!__(M_)||M_===Function.prototype)&&(M_=function(){throw new B_("Incorrect invocation")},z_))for(d_ in G_)g_[d_]&&R_(g_[d_],M_);if((!z_||!U_||U_===F_)&&(U_=M_.prototype,z_))for(d_ in G_)g_[d_]&&R_(g_[d_].prototype,U_);if(z_&&A_(x_)!==U_&&R_(x_,U_),m_&&!y_(U_,V_))for(d_ in W_=!0,T_(U_,V_,{configurable:!0,get:function(){return v_(this)?this[H_]:void 0}}),G_)g_[d_]&&w_(g_[d_],H_,d_);var X_={NATIVE_ARRAY_BUFFER_VIEWS:z_,TYPED_ARRAY_TAG:W_&&H_,aTypedArray:function(e){if(Y_(e))return e;throw new B_("Target is not a typed array")},aTypedArrayConstructor:function(e){if(__(e)&&(!R_||S_(M_,e)))return e;throw new B_(b_(e)+" is not a typed array constructor")},exportTypedArrayMethod:function(e,t,i,r){if(m_){if(i)for(var n in G_){var a=g_[n];if(a&&y_(a.prototype,e))try{delete a.prototype[e]}catch(zM){try{a.prototype[e]=t}catch(o){}}}U_[e]&&!i||I_(U_,e,i?t:z_&&N_[e]||t,r)}},exportTypedArrayStaticMethod:function(e,t,i){var r,n;if(m_){if(R_){if(i)for(r in G_)if((n=g_[r])&&y_(n,e))try{delete n[e]}catch(zM){}if(M_[e]&&!i)return;try{return I_(M_,e,i?t:z_&&M_[e]||t)}catch(zM){}}for(r in G_)!(n=g_[r])||n[e]&&!i||I_(n,e,t)}},getTypedArrayConstructor:K_,isView:function(e){if(!v_(e))return!1;var t=E_(e);return"DataView"===t||y_(G_,t)||y_(q_,t)},isTypedArray:Y_,TypedArray:M_,TypedArrayPrototype:U_},Z_=i,J_=n,Q_=np,$_=X_.NATIVE_ARRAY_BUFFER_VIEWS,ev=Z_.ArrayBuffer,tv=Z_.Int8Array,iv=!$_||!J_(function(){tv(1)})||!J_(function(){new tv(-1)})||!Q_(function(e){new tv,new tv(null),new tv(1.5),new tv(e)},!0)||J_(function(){return 1!==new tv(new ev(2),1,void 0).length}),rv=H,nv=Math.floor,av=Number.isInteger||function(e){return!rv(e)&&isFinite(e)&&nv(e)===e},ov=ir,sv=RangeError,cv=function(e){var t=ov(e);if(t<0)throw new sv("The argument can't be less than 0");return t},lv=RangeError,dv=function(e,t){var i=cv(e);if(i%t)throw new lv("Wrong offset");return i},uv=Math.round,hv=ln,pv=lt,fv=TypeError,mv=function(e){var t=pv(e,"number");if("number"==typeof t)throw new fv("Can't convert number to bigint");return BigInt(t)},gv=Xl,_v=l,vv=xl,yv=Fe,Ev=ur,bv=xh,wv=kh,Iv=wh,Tv=function(e){var t=hv(e);return"BigInt64Array"===t||"BigUint64Array"===t},Sv=X_.aTypedArrayConstructor,Av=mv,Rv=function(e){var t,i,r,n,a,o,s,c,l=vv(this),d=yv(e),u=arguments.length,h=u>1?arguments[1]:void 0,p=void 0!==h,f=wv(d);if(f&&!Iv(f))for(c=(s=bv(d,f)).next,d=[];!(o=_v(c,s)).done;)d.push(o.value);for(p&&u>2&&(h=gv(h,arguments[2])),i=Ev(d),r=new(Sv(l))(i),n=Tv(r),t=0;i>t;t++)a=p?h(d[t],t):d[t],r[t]=n?Av(a):+a;return r},kv=as,Cv=Ol,Dv=H,Ov=tt("species"),Lv=Array,Nv=function(e){var t;return kv(e)&&(t=e.constructor,(Cv(t)&&(t===Lv||kv(t.prototype))||Dv(t)&&null===(t=t[Ov]))&&(t=void 0)),void 0===t?Lv:t},Pv=Xl,xv=D,Mv=Fe,Uv=ur,Fv=function(e,t){return new(Nv(e))(0===t?0:t)},Bv=b([].push),Vv=function(e){var t=1===e,i=2===e,r=3===e,n=4===e,a=6===e,o=7===e,s=5===e||a;return function(c,l,d,u){for(var h,p,f=Mv(c),m=xv(f),g=Uv(m),_=Pv(l,d),v=0,y=u||Fv,E=t?y(c,g):i||o?y(c,0):void 0;g>v;v++)if((s||v in m)&&(p=_(h=m[v],v,f),e))if(t)E[v]=p;else if(p)switch(e){case 3:return!0;case 5:return h;case 6:return v;case 2:Bv(E,h)}else switch(e){case 4:return!1;case 7:Bv(E,h)}return a?-1:r||n?n:E}},Hv={forEach:Vv(0),map:Vv(1),filter:Vv(2),some:Vv(3),every:Vv(4),find:Vv(5),findIndex:Vv(6),filterReject:Vv(7)},jv=ur,zv=en,Wv=i,Gv=l,qv=a,Kv=iv,Yv=X_,Xv=Wc,Zv=ms,Jv=g,Qv=Kt,$v=av,ey=lr,ty=ys,iy=dv,ry=function(e){var t=uv(e);return t<0?0:t>255?255:255&t},ny=ht,ay=He,oy=ln,sy=H,cy=ue,ly=oa,dy=G,uy=no,hy=Qi.f,py=Rv,fy=Hv.forEach,my=Xc,gy=mn,_y=kt,vy=r,yy=function(e,t,i){for(var r=0,n=arguments.length>2?i:jv(t),a=new e(n);n>r;)a[r]=t[r++];return a},Ey=js,by=ki.get,wy=ki.set,Iy=ki.enforce,Ty=_y.f,Sy=vy.f,Ay=Wv.RangeError,Ry=Xv.ArrayBuffer,ky=Ry.prototype,Cy=Xv.DataView,Dy=Yv.NATIVE_ARRAY_BUFFER_VIEWS,Oy=Yv.TYPED_ARRAY_TAG,Ly=Yv.TypedArray,Ny=Yv.TypedArrayPrototype,Py=Yv.isTypedArray,xy="BYTES_PER_ELEMENT",My="Wrong length",Uy=function(e,t){gy(e,t,{configurable:!0,get:function(){return by(this)[t]}})},Fy=function(e){var t;return dy(ky,e)||"ArrayBuffer"===(t=oy(e))||"SharedArrayBuffer"===t},By=function(e,t){return Py(e)&&!cy(t)&&t in e&&$v(+t)&&t>=0},Vy=function(e,t){return t=ny(t),By(e,t)?Jv(2,e[t]):Sy(e,t)},Hy=function(e,t,i){return t=ny(t),!(By(e,t)&&sy(i)&&ay(i,"value"))||ay(i,"get")||ay(i,"set")||i.configurable||ay(i,"writable")&&!i.writable||ay(i,"enumerable")&&!i.enumerable?Ty(e,t,i):(e[t]=i.value,e)};qv?(Dy||(vy.f=Vy,_y.f=Hy,Uy(Ny,"buffer"),Uy(Ny,"byteOffset"),Uy(Ny,"byteLength"),Uy(Ny,"length")),zv({target:"Object",stat:!0,forced:!Dy},{getOwnPropertyDescriptor:Vy,defineProperty:Hy}),p_.exports=function(e,t,i){var r=e.match(/\d+/)[0]/8,n=e+(i?"Clamped":"")+"Array",a="get"+e,o="set"+e,s=Wv[n],c=s,l=c&&c.prototype,d={},u=function(e,t){Ty(e,t,{get:function(){return function(e,t){var i=by(e);return i.view[a](t*r+i.byteOffset,!0)}(this,t)},set:function(e){return function(e,t,n){var a=by(e);a.view[o](t*r+a.byteOffset,i?ry(n):n,!0)}(this,t,e)},enumerable:!0})};Dy?Kv&&(c=t(function(e,t,i,n){return Zv(e,l),Ey(sy(t)?Fy(t)?void 0!==n?new s(t,iy(i,r),n):void 0!==i?new s(t,iy(i,r)):new s(t):Py(t)?yy(c,t):Gv(py,c,t):new s(ty(t)),e,c)}),uy&&uy(c,Ly),fy(hy(s),function(e){e in c||Qv(c,e,s[e])}),c.prototype=l):(c=t(function(e,t,i,n){Zv(e,l);var a,o,s,d=0,h=0;if(sy(t)){if(!Fy(t))return Py(t)?yy(c,t):Gv(py,c,t);a=t,h=iy(i,r);var p=t.byteLength;if(void 0===n){if(p%r)throw new Ay(My);if((o=p-h)<0)throw new Ay(My)}else if((o=ey(n)*r)+h>p)throw new Ay(My);s=o/r}else s=ty(t),a=new Ry(o=s*r);for(wy(e,{buffer:a,byteOffset:h,byteLength:o,length:s,view:new Cy(a)});d<s;)u(e,d++)}),uy&&uy(c,Ly),l=c.prototype=ly(Ny)),l.constructor!==c&&Qv(l,"constructor",c),Iy(l).TypedArrayConstructor=c,Oy&&Qv(l,Oy,n);var h=c!==s;d[n]=c,zv({global:!0,constructor:!0,forced:h,sham:!Dy},d),xy in c||Qv(c,xy,r),xy in l||Qv(l,xy,r),my(n)}):p_.exports=function(){};var jy=p_.exports;jy("Float32",function(e){return function(t,i,r){return e(this,t,i,r)}}),jy("Int32",function(e){return function(t,i,r){return e(this,t,i,r)}}),jy("Uint8",function(e){return function(t,i,r){return e(this,t,i,r)}}),jy("Uint16",function(e){return function(t,i,r){return e(this,t,i,r)}}),jy("Uint32",function(e){return function(t,i,r){return e(this,t,i,r)}});var zy=Us,Wy=mv,Gy=ln,qy=l,Ky=n,Yy=X_.aTypedArray,Xy=X_.exportTypedArrayMethod,Zy=b("".slice);Xy("fill",function(e){var t=arguments.length;Yy(this);var i="Big"===Zy(Gy(this),0,3)?Wy(e):+e;return qy(zy,this,i,t>1?arguments[1]:void 0,t>2?arguments[2]:void 0)},Ky(function(){var e=0;return new Int8Array(2).fill({valueOf:function(){return e++}}),1!==e})),(0,X_.exportTypedArrayStaticMethod)("from",Rv,iv);var Jy=i,Qy=l,$y=X_,eE=ur,tE=dv,iE=Fe,rE=n,nE=Jy.RangeError,aE=Jy.Int8Array,oE=aE&&aE.prototype,sE=oE&&oE.set,cE=$y.aTypedArray,lE=$y.exportTypedArrayMethod,dE=!rE(function(){var e=new Uint8ClampedArray(2);return Qy(sE,e,{length:1,0:3},1),3!==e[1]}),uE=dE&&$y.NATIVE_ARRAY_BUFFER_VIEWS&&rE(function(){var e=new aE(2);return e.set(1),e.set("2",1),0!==e[0]||2!==e[1]});lE("set",function(e){cE(this);var t=tE(arguments.length>1?arguments[1]:void 0,1),i=iE(e);if(dE)return Qy(sE,this,i,t);var r=this.length,n=eE(i),a=0;if(n+t>r)throw new nE("Wrong length");for(;a<n;)this[t+a]=i[a++]},!dE||uE);var hE=Fs,pE=Math.floor,fE=function(e,t){var i=e.length;if(i<8)for(var r,n,a=1;a<i;){for(n=a,r=e[a];n&&t(e[n-1],r)>0;)e[n]=e[--n];n!==a++&&(e[n]=r)}else for(var o=pE(i/2),s=fE(hE(e,0,o),t),c=fE(hE(e,o),t),l=s.length,d=c.length,u=0,h=0;u<l||h<d;)e[u+h]=u<l&&h<d?t(s[u],c[h])<=0?s[u++]:c[h++]:u<l?s[u++]:c[h++];return e},mE=fE,gE=Y.match(/firefox\/(\d+)/i),_E=!!gE&&+gE[1],vE=/MSIE|Trident/.test(Y),yE=Y.match(/AppleWebKit\/(\d+)\./),EE=!!yE&&+yE[1],bE=tl,wE=n,IE=_e,TE=mE,SE=_E,AE=vE,RE=te,kE=EE,CE=X_.aTypedArray,DE=X_.exportTypedArrayMethod,OE=i.Uint16Array,LE=OE&&bE(OE.prototype.sort),NE=!(!LE||wE(function(){LE(new OE(2),null)})&&wE(function(){LE(new OE(2),{})})),PE=!!LE&&!wE(function(){if(RE)return RE<74;if(SE)return SE<67;if(AE)return!0;if(kE)return kE<602;var e,t,i=new OE(516),r=Array(516);for(e=0;e<516;e++)t=e%4,i[e]=515-e,r[e]=e-2*t+3;for(LE(i,function(e,t){return(e/4|0)-(t/4|0)}),e=0;e<516;e++)if(i[e]!==r[e])return!0});DE("sort",function(e){return void 0!==e&&IE(e),PE?LE(this,e):TE(CE(this),function(e){return function(t,i){return void 0!==e?+e(t,i)||0:i!=i?-1:t!=t?1:0===t&&0===i?1/t>0&&1/i<0?1:-1:t>i}}(e))},!PE||NE);var xE=en,ME=l,UE=b,FE=P,BE=B,VE=H,HE=qp,jE=hn,zE=Ee,WE=of,GE=gg,qE=tt("replace"),KE=TypeError,YE=UE("".indexOf);UE("".replace);var XE=UE("".slice),ZE=Math.max;xE({target:"String",proto:!0},{replaceAll:function(e,t){var i,r,n,a,o,s,c,l,d,u=FE(this),h=0,p="";if(VE(e)){if(HE(e)&&(i=jE(FE(WE(e))),!~YE(i,"g")))throw new KE("`.replaceAll` does not allow non-global regexes");if(r=zE(e,qE))return ME(r,e,u,t)}for(n=jE(u),a=jE(e),(o=BE(t))||(t=jE(t)),s=a.length,c=ZE(1,s),l=YE(n,a);-1!==l;)d=o?jE(t(a,l,n)):GE(a,n,l,[],void 0,t),p+=XE(n,h,l)+d,h=l+s,l=l+c>n.length?-1:YE(n,a,l+c);return h<n.length&&(p+=XE(n,h)),p}});var JE={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},QE=gt("span").classList,$E=QE&&QE.constructor&&QE.constructor.prototype,eb=$E===Object.prototype?void 0:$E,tb=Hv.forEach,ib=Xo("forEach")?[].forEach:function(e){return tb(this,e,arguments.length>1?arguments[1]:void 0)},rb=i,nb=JE,ab=eb,ob=ib,sb=Kt,cb=function(e){if(e&&e.forEach!==ob)try{sb(e,"forEach",ob)}catch(zM){e.forEach=ob}};for(var lb in nb)nb[lb]&&cb(rb[lb]&&rb[lb].prototype);cb(ab);var db=i,ub=JE,hb=eb,pb=Fo,fb=Kt,mb=Va,gb=tt("iterator"),_b=pb.values,vb=function(e,t){if(e){if(e[gb]!==_b)try{fb(e,gb,_b)}catch(zM){e[gb]=_b}if(mb(e,t,!0),ub[t])for(var i in pb)if(e[i]!==pb[i])try{fb(e,i,pb[i])}catch(zM){e[i]=pb[i]}}};for(var yb in ub)vb(db[yb]&&db[yb].prototype,yb);vb(hb,"DOMTokenList");var Eb=Sd.clear;en({global:!0,bind:!0,enumerable:!0,forced:i.clearImmediate!==Eb},{clearImmediate:Eb});var bb=i,wb=Gl,Ib=B,Tb=es,Sb=Y,Ab=Fs,Rb=Jl,kb=bb.Function,Cb=/MSIE .\./.test(Sb)||"BUN"===Tb&&function(){var e=bb.Bun.version.split(".");return e.length<3||"0"===e[0]&&(e[1]<3||"3"===e[1]&&"0"===e[2])}(),Db=en,Ob=i,Lb=Sd.set,Nb=function(e,t){var i=t?2:1;return Cb?function(r,n){var a=Rb(arguments.length,1)>i,o=Ib(r)?r:kb(r),s=a?Ab(arguments,i):[],c=a?function(){wb(o,this,s)}:o;return t?e(c,n):e(c)}:e},Pb=Ob.setImmediate?Nb(Lb,!1):Lb;Db({global:!0,bind:!0,enumerable:!0,forced:Ob.setImmediate!==Pb},{setImmediate:Pb});var xb=og.charAt,Mb=hn,Ub=ki,Fb=So,Bb=Ao,Vb="String Iterator",Hb=Ub.set,jb=Ub.getterFor(Vb);Fb(String,"String",function(e){Hb(this,{type:Vb,string:Mb(e),index:0})},function(){var e,t=jb(this),i=t.string,r=t.index;return r>=i.length?Bb(void 0,!0):(e=xb(i,r),t.index+=e.length,Bb(e,!1))});var zb=n,Wb=a,Gb=tt("iterator"),qb=!zb(function(){var e=new URL("b?a=1&b=2&c=3","https://a"),t=e.searchParams,i=new URLSearchParams("a=1&a=2&b=3"),r="";return e.pathname="c%20d",t.forEach(function(e,i){t.delete("b"),r+=i+e}),i.delete("a",2),i.delete("b",void 0),!t.size&&!Wb||!t.sort||"https://a/c%20d?a=1&c=3"!==e.href||"3"!==t.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!t[Gb]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("https://тест").host||"#%D0%B1"!==new URL("https://a#б").hash||"a1c3"!==r||"x"!==new URL("https://x",void 0).host}),Kb=a,Yb=b,Xb=l,Zb=n,Jb=Fn,Qb=Ar,$b=d,ew=Fe,tw=D,iw=Object.assign,rw=Object.defineProperty,nw=Yb([].concat),aw=!iw||Zb(function(){if(Kb&&1!==iw({b:1},iw(rw({},"a",{enumerable:!0,get:function(){rw(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},i=Symbol("assign detection"),r="abcdefghijklmnopqrst";return e[i]=7,r.split("").forEach(function(e){t[e]=e}),7!==iw({},e)[i]||Jb(iw({},t)).join("")!==r})?function(e,t){for(var i=ew(e),r=arguments.length,n=1,a=Qb.f,o=$b.f;r>n;)for(var s,c=tw(arguments[n++]),l=a?nw(Jb(c),a(c)):Jb(c),d=l.length,u=0;d>u;)s=l[u++],Kb&&!Xb(o,c,s)||(i[s]=c[s]);return i}:iw,ow=Nt,sw=Bh,cw=a,lw=kt,dw=g,uw=Xl,hw=l,pw=Fe,fw=function(e,t,i,r){try{return r?t(ow(i)[0],i[1]):t(i)}catch(zM){sw(e,"throw",zM)}},mw=wh,gw=Ol,_w=ur,vw=function(e,t,i){cw?lw.f(e,t,dw(0,i)):e[t]=i},yw=xh,Ew=kh,bw=Array,ww=b,Iw=2147483647,Tw=/[^\0-\u007E]/,Sw=/[.\u3002\uFF0E\uFF61]/g,Aw="Overflow: input needs wider integers to process",Rw=RangeError,kw=ww(Sw.exec),Cw=Math.floor,Dw=String.fromCharCode,Ow=ww("".charCodeAt),Lw=ww([].join),Nw=ww([].push),Pw=ww("".replace),xw=ww("".split),Mw=ww("".toLowerCase),Uw=function(e){return e+22+75*(e<26)},Fw=function(e,t,i){var r=0;for(e=i?Cw(e/700):e>>1,e+=Cw(e/t);e>455;)e=Cw(e/35),r+=36;return Cw(r+36*e/(e+38))},Bw=function(e){var t=[];e=function(e){for(var t=[],i=0,r=e.length;i<r;){var n=Ow(e,i++);if(n>=55296&&n<=56319&&i<r){var a=Ow(e,i++);56320==(64512&a)?Nw(t,((1023&n)<<10)+(1023&a)+65536):(Nw(t,n),i--)}else Nw(t,n)}return t}(e);var i,r,n=e.length,a=128,o=0,s=72;for(i=0;i<e.length;i++)(r=e[i])<128&&Nw(t,Dw(r));var c=t.length,l=c;for(c&&Nw(t,"-");l<n;){var d=Iw;for(i=0;i<e.length;i++)(r=e[i])>=a&&r<d&&(d=r);var u=l+1;if(d-a>Cw((Iw-o)/u))throw new Rw(Aw);for(o+=(d-a)*u,a=d,i=0;i<e.length;i++){if((r=e[i])<a&&++o>Iw)throw new Rw(Aw);if(r===a){for(var h=o,p=36;;){var f=p<=s?1:p>=s+26?26:p-s;if(h<f)break;var m=h-f,g=36-f;Nw(t,Dw(Uw(f+m%g))),h=Cw(m/g),p+=36}Nw(t,Dw(Uw(h))),s=Fw(o,u,l===c),o=0,l++}}o++,a++}return Lw(t,"")},Vw=en,Hw=b,jw=or,zw=RangeError,Ww=String.fromCharCode,Gw=String.fromCodePoint,qw=Hw([].join);Vw({target:"String",stat:!0,arity:1,forced:!!Gw&&1!==Gw.length},{fromCodePoint:function(e){for(var t,i=[],r=arguments.length,n=0;r>n;){if(t=+arguments[n++],jw(t,1114111)!==t)throw new zw(t+" is not a valid code point");i[n]=t<65536?Ww(t):Ww(55296+((t-=65536)>>10),t%1024+56320)}return qw(i,"")}});var Kw=en,Yw=i,Xw=Cd,Zw=W,Jw=l,Qw=b,$w=a,eI=qb,tI=Ji,iI=mn,rI=hs,nI=Va,aI=Ka,oI=ki,sI=ms,cI=B,lI=He,dI=Xl,uI=ln,hI=Nt,pI=H,fI=hn,mI=oa,gI=g,_I=xh,vI=kh,yI=Ao,EI=Jl,bI=mE,wI=tt("iterator"),II="URLSearchParams",TI=II+"Iterator",SI=oI.set,AI=oI.getterFor(II),RI=oI.getterFor(TI),kI=Xw("fetch"),CI=Xw("Request"),DI=Xw("Headers"),OI=CI&&CI.prototype,LI=DI&&DI.prototype,NI=Yw.TypeError,PI=Yw.encodeURIComponent,xI=String.fromCharCode,MI=Zw("String","fromCodePoint"),UI=parseInt,FI=Qw("".charAt),BI=Qw([].join),VI=Qw([].push),HI=Qw("".replace),jI=Qw([].shift),zI=Qw([].splice),WI=Qw("".split),GI=Qw("".slice),qI=Qw(/./.exec),KI=/\+/g,YI=/^[0-9a-f]+$/i,XI=function(e,t){var i=GI(e,t,t+2);return qI(YI,i)?UI(i,16):NaN},ZI=function(e){for(var t=0,i=128;i>0&&0!==(e&i);i>>=1)t++;return t},JI=function(e){var t=null;switch(e.length){case 1:t=e[0];break;case 2:t=(31&e[0])<<6|63&e[1];break;case 3:t=(15&e[0])<<12|(63&e[1])<<6|63&e[2];break;case 4:t=(7&e[0])<<18|(63&e[1])<<12|(63&e[2])<<6|63&e[3]}return t>1114111?null:t},QI=function(e){for(var t=(e=HI(e,KI," ")).length,i="",r=0;r<t;){var n=FI(e,r);if("%"===n){if("%"===FI(e,r+1)||r+3>t){i+="%",r++;continue}var a=XI(e,r+1);if(a!=a){i+=n,r++;continue}r+=2;var o=ZI(a);if(0===o)n=xI(a);else{if(1===o||o>4){i+="�",r++;continue}for(var s=[a],c=1;c<o&&!(++r+3>t||"%"!==FI(e,r));){var l=XI(e,r+1);if(l!=l){r+=3;break}if(l>191||l<128)break;VI(s,l),r+=2,c++}if(s.length!==o){i+="�";continue}var d=JI(s);null===d?i+="�":n=MI(d)}}i+=n,r++}return i},$I=/[!'()~]|%20/g,eT={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},tT=function(e){return eT[e]},iT=function(e){return HI(PI(e),$I,tT)},rT=aI(function(e,t){SI(this,{type:TI,target:AI(e).entries,index:0,kind:t})},II,function(){var e=RI(this),t=e.target,i=e.index++;if(!t||i>=t.length)return e.target=null,yI(void 0,!0);var r=t[i];switch(e.kind){case"keys":return yI(r.key,!1);case"values":return yI(r.value,!1)}return yI([r.key,r.value],!1)},!0),nT=function(e){this.entries=[],this.url=null,void 0!==e&&(pI(e)?this.parseObject(e):this.parseQuery("string"==typeof e?"?"===FI(e,0)?GI(e,1):e:fI(e)))};nT.prototype={type:II,bindURL:function(e){this.url=e,this.update()},parseObject:function(e){var t,i,r,n,a,o,s,c=this.entries,l=vI(e);if(l)for(i=(t=_I(e,l)).next;!(r=Jw(i,t)).done;){if(a=(n=_I(hI(r.value))).next,(o=Jw(a,n)).done||(s=Jw(a,n)).done||!Jw(a,n).done)throw new NI("Expected sequence with length 2");VI(c,{key:fI(o.value),value:fI(s.value)})}else for(var d in e)lI(e,d)&&VI(c,{key:d,value:fI(e[d])})},parseQuery:function(e){if(e)for(var t,i,r=this.entries,n=WI(e,"&"),a=0;a<n.length;)(t=n[a++]).length&&(i=WI(t,"="),VI(r,{key:QI(jI(i)),value:QI(BI(i,"="))}))},serialize:function(){for(var e,t=this.entries,i=[],r=0;r<t.length;)e=t[r++],VI(i,iT(e.key)+"="+iT(e.value));return BI(i,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var aT=function(){sI(this,oT);var e=SI(this,new nT(arguments.length>0?arguments[0]:void 0));$w||(this.size=e.entries.length)},oT=aT.prototype;if(rI(oT,{append:function(e,t){var i=AI(this);EI(arguments.length,2),VI(i.entries,{key:fI(e),value:fI(t)}),$w||this.size++,i.updateURL()},delete:function(e){for(var t=AI(this),i=EI(arguments.length,1),r=t.entries,n=fI(e),a=i<2?void 0:arguments[1],o=void 0===a?a:fI(a),s=0;s<r.length;){var c=r[s];if(c.key!==n||void 0!==o&&c.value!==o)s++;else if(zI(r,s,1),void 0!==o)break}$w||(this.size=r.length),t.updateURL()},get:function(e){var t=AI(this).entries;EI(arguments.length,1);for(var i=fI(e),r=0;r<t.length;r++)if(t[r].key===i)return t[r].value;return null},getAll:function(e){var t=AI(this).entries;EI(arguments.length,1);for(var i=fI(e),r=[],n=0;n<t.length;n++)t[n].key===i&&VI(r,t[n].value);return r},has:function(e){for(var t=AI(this).entries,i=EI(arguments.length,1),r=fI(e),n=i<2?void 0:arguments[1],a=void 0===n?n:fI(n),o=0;o<t.length;){var s=t[o++];if(s.key===r&&(void 0===a||s.value===a))return!0}return!1},set:function(e,t){var i=AI(this);EI(arguments.length,1);for(var r,n=i.entries,a=!1,o=fI(e),s=fI(t),c=0;c<n.length;c++)(r=n[c]).key===o&&(a?zI(n,c--,1):(a=!0,r.value=s));a||VI(n,{key:o,value:s}),$w||(this.size=n.length),i.updateURL()},sort:function(){var e=AI(this);bI(e.entries,function(e,t){return e.key>t.key?1:-1}),e.updateURL()},forEach:function(e){for(var t,i=AI(this).entries,r=dI(e,arguments.length>1?arguments[1]:void 0),n=0;n<i.length;)r((t=i[n++]).value,t.key,this)},keys:function(){return new rT(this,"keys")},values:function(){return new rT(this,"values")},entries:function(){return new rT(this,"entries")}},{enumerable:!0}),tI(oT,wI,oT.entries,{name:"entries"}),tI(oT,"toString",function(){return AI(this).serialize()},{enumerable:!0}),$w&&iI(oT,"size",{get:function(){return AI(this).entries.length},configurable:!0,enumerable:!0}),nI(aT,II),Kw({global:!0,constructor:!0,forced:!eI},{URLSearchParams:aT}),!eI&&cI(DI)){var sT=Qw(LI.has),cT=Qw(LI.set),lT=function(e){if(pI(e)){var t,i=e.body;if(uI(i)===II)return t=e.headers?new DI(e.headers):new DI,sT(t,"content-type")||cT(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),mI(e,{body:gI(0,fI(i)),headers:gI(0,t)})}return e};if(cI(kI)&&Kw({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return kI(e,arguments.length>1?lT(arguments[1]):{})}}),cI(CI)){var dT=function(e){return sI(this,OI),new CI(e,arguments.length>1?lT(arguments[1]):{})};OI.constructor=dT,dT.prototype=OI,Kw({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:dT})}}var uT,hT=en,pT=a,fT=qb,mT=i,gT=Xl,_T=b,vT=Ji,yT=mn,ET=ms,bT=He,wT=aw,IT=function(e){var t=pw(e),i=gw(this),r=arguments.length,n=r>1?arguments[1]:void 0,a=void 0!==n;a&&(n=uw(n,r>2?arguments[2]:void 0));var o,s,c,l,d,u,h=Ew(t),p=0;if(!h||this===bw&&mw(h))for(o=_w(t),s=i?new this(o):bw(o);o>p;p++)u=a?n(t[p],p):t[p],vw(s,p,u);else for(s=i?new this:[],d=(l=yw(t,h)).next;!(c=hw(d,l)).done;p++)u=a?fw(l,n,[c.value,p],!0):c.value,vw(s,p,u);return s.length=p,s},TT=Fs,ST=og.codeAt,AT=function(e){var t,i,r=[],n=xw(Pw(Mw(e),Sw,"."),".");for(t=0;t<n.length;t++)i=n[t],Nw(r,kw(Tw,i)?"xn--"+Bw(i):i);return Lw(r,".")},RT=hn,kT=Va,CT=Jl,DT={URLSearchParams:aT,getState:AI},OT=ki,LT=OT.set,NT=OT.getterFor("URL"),PT=DT.URLSearchParams,xT=DT.getState,MT=mT.URL,UT=mT.TypeError,FT=mT.parseInt,BT=Math.floor,VT=Math.pow,HT=_T("".charAt),jT=_T(/./.exec),zT=_T([].join),WT=_T(1.1.toString),GT=_T([].pop),qT=_T([].push),KT=_T("".replace),YT=_T([].shift),XT=_T("".split),ZT=_T("".slice),JT=_T("".toLowerCase),QT=_T([].unshift),$T="Invalid scheme",eS="Invalid host",tS="Invalid port",iS=/[a-z]/i,rS=/[\d+-.a-z]/i,nS=/\d/,aS=/^0x/i,oS=/^[0-7]+$/,sS=/^\d+$/,cS=/^[\da-f]+$/i,lS=/[\0\t\n\r #%/:<>?@[\\\]^|]/,dS=/[\0\t\n\r #/:<>?@[\\\]^|]/,uS=/^[\u0000-\u0020]+/,hS=/(^|[^\u0000-\u0020])[\u0000-\u0020]+$/,pS=/[\t\n\r]/g,fS=function(e){var t,i,r,n;if("number"==typeof e){for(t=[],i=0;i<4;i++)QT(t,e%256),e=BT(e/256);return zT(t,".")}if("object"==typeof e){for(t="",r=function(e){for(var t=null,i=1,r=null,n=0,a=0;a<8;a++)0!==e[a]?(n>i&&(t=r,i=n),r=null,n=0):(null===r&&(r=a),++n);return n>i?r:t}(e),i=0;i<8;i++)n&&0===e[i]||(n&&(n=!1),r===i?(t+=i?":":"::",n=!0):(t+=WT(e[i],16),i<7&&(t+=":")));return"["+t+"]"}return e},mS={},gS=wT({},mS,{" ":1,'"':1,"<":1,">":1,"`":1}),_S=wT({},gS,{"#":1,"?":1,"{":1,"}":1}),vS=wT({},_S,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),yS=function(e,t){var i=ST(e,0);return i>32&&i<127&&!bT(t,e)?e:encodeURIComponent(e)},ES={ftp:21,file:null,http:80,https:443,ws:80,wss:443},bS=function(e,t){var i;return 2===e.length&&jT(iS,HT(e,0))&&(":"===(i=HT(e,1))||!t&&"|"===i)},wS=function(e){var t;return e.length>1&&bS(ZT(e,0,2))&&(2===e.length||"/"===(t=HT(e,2))||"\\"===t||"?"===t||"#"===t)},IS=function(e){return"."===e||"%2e"===JT(e)},TS=function(e){return".."===(e=JT(e))||"%2e."===e||".%2e"===e||"%2e%2e"===e},SS={},AS={},RS={},kS={},CS={},DS={},OS={},LS={},NS={},PS={},xS={},MS={},US={},FS={},BS={},VS={},HS={},jS={},zS={},WS={},GS={},qS=function(e,t,i){var r,n,a,o=RT(e);if(t){if(n=this.parse(o))throw new UT(n);this.searchParams=null}else{if(void 0!==i&&(r=new qS(i,!0)),n=this.parse(o,null,r))throw new UT(n);(a=xT(new PT)).bindURL(this),this.searchParams=a}};qS.prototype={type:"URL",parse:function(e,t,i){var r,n,a,o,s=this,c=t||SS,l=0,d="",u=!1,h=!1,p=!1;for(e=RT(e),t||(s.scheme="",s.username="",s.password="",s.host=null,s.port=null,s.path=[],s.query=null,s.fragment=null,s.cannotBeABaseURL=!1,e=KT(e,uS,""),e=KT(e,hS,"$1")),e=KT(e,pS,""),r=IT(e);l<=r.length;){switch(n=r[l],c){case SS:if(!n||!jT(iS,n)){if(t)return $T;c=RS;continue}d+=JT(n),c=AS;break;case AS:if(n&&(jT(rS,n)||"+"===n||"-"===n||"."===n))d+=JT(n);else{if(":"!==n){if(t)return $T;d="",c=RS,l=0;continue}if(t&&(s.isSpecial()!==bT(ES,d)||"file"===d&&(s.includesCredentials()||null!==s.port)||"file"===s.scheme&&!s.host))return;if(s.scheme=d,t)return void(s.isSpecial()&&ES[s.scheme]===s.port&&(s.port=null));d="","file"===s.scheme?c=FS:s.isSpecial()&&i&&i.scheme===s.scheme?c=kS:s.isSpecial()?c=LS:"/"===r[l+1]?(c=CS,l++):(s.cannotBeABaseURL=!0,qT(s.path,""),c=zS)}break;case RS:if(!i||i.cannotBeABaseURL&&"#"!==n)return $T;if(i.cannotBeABaseURL&&"#"===n){s.scheme=i.scheme,s.path=TT(i.path),s.query=i.query,s.fragment="",s.cannotBeABaseURL=!0,c=GS;break}c="file"===i.scheme?FS:DS;continue;case kS:if("/"!==n||"/"!==r[l+1]){c=DS;continue}c=NS,l++;break;case CS:if("/"===n){c=PS;break}c=jS;continue;case DS:if(s.scheme=i.scheme,n===uT)s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,s.path=TT(i.path),s.query=i.query;else if("/"===n||"\\"===n&&s.isSpecial())c=OS;else if("?"===n)s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,s.path=TT(i.path),s.query="",c=WS;else{if("#"!==n){s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,s.path=TT(i.path),s.path.length--,c=jS;continue}s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,s.path=TT(i.path),s.query=i.query,s.fragment="",c=GS}break;case OS:if(!s.isSpecial()||"/"!==n&&"\\"!==n){if("/"!==n){s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,c=jS;continue}c=PS}else c=NS;break;case LS:if(c=NS,"/"!==n||"/"!==HT(d,l+1))continue;l++;break;case NS:if("/"!==n&&"\\"!==n){c=PS;continue}break;case PS:if("@"===n){u&&(d="%40"+d),u=!0,a=IT(d);for(var f=0;f<a.length;f++){var m=a[f];if(":"!==m||p){var g=yS(m,vS);p?s.password+=g:s.username+=g}else p=!0}d=""}else if(n===uT||"/"===n||"?"===n||"#"===n||"\\"===n&&s.isSpecial()){if(u&&""===d)return"Invalid authority";l-=IT(d).length+1,d="",c=xS}else d+=n;break;case xS:case MS:if(t&&"file"===s.scheme){c=VS;continue}if(":"!==n||h){if(n===uT||"/"===n||"?"===n||"#"===n||"\\"===n&&s.isSpecial()){if(s.isSpecial()&&""===d)return eS;if(t&&""===d&&(s.includesCredentials()||null!==s.port))return;if(o=s.parseHost(d))return o;if(d="",c=HS,t)return;continue}"["===n?h=!0:"]"===n&&(h=!1),d+=n}else{if(""===d)return eS;if(o=s.parseHost(d))return o;if(d="",c=US,t===MS)return}break;case US:if(!jT(nS,n)){if(n===uT||"/"===n||"?"===n||"#"===n||"\\"===n&&s.isSpecial()||t){if(""!==d){var _=FT(d,10);if(_>65535)return tS;s.port=s.isSpecial()&&_===ES[s.scheme]?null:_,d=""}if(t)return;c=HS;continue}return tS}d+=n;break;case FS:if(s.scheme="file","/"===n||"\\"===n)c=BS;else{if(!i||"file"!==i.scheme){c=jS;continue}switch(n){case uT:s.host=i.host,s.path=TT(i.path),s.query=i.query;break;case"?":s.host=i.host,s.path=TT(i.path),s.query="",c=WS;break;case"#":s.host=i.host,s.path=TT(i.path),s.query=i.query,s.fragment="",c=GS;break;default:wS(zT(TT(r,l),""))||(s.host=i.host,s.path=TT(i.path),s.shortenPath()),c=jS;continue}}break;case BS:if("/"===n||"\\"===n){c=VS;break}i&&"file"===i.scheme&&!wS(zT(TT(r,l),""))&&(bS(i.path[0],!0)?qT(s.path,i.path[0]):s.host=i.host),c=jS;continue;case VS:if(n===uT||"/"===n||"\\"===n||"?"===n||"#"===n){if(!t&&bS(d))c=jS;else if(""===d){if(s.host="",t)return;c=HS}else{if(o=s.parseHost(d))return o;if("localhost"===s.host&&(s.host=""),t)return;d="",c=HS}continue}d+=n;break;case HS:if(s.isSpecial()){if(c=jS,"/"!==n&&"\\"!==n)continue}else if(t||"?"!==n)if(t||"#"!==n){if(n!==uT&&(c=jS,"/"!==n))continue}else s.fragment="",c=GS;else s.query="",c=WS;break;case jS:if(n===uT||"/"===n||"\\"===n&&s.isSpecial()||!t&&("?"===n||"#"===n)){if(TS(d)?(s.shortenPath(),"/"===n||"\\"===n&&s.isSpecial()||qT(s.path,"")):IS(d)?"/"===n||"\\"===n&&s.isSpecial()||qT(s.path,""):("file"===s.scheme&&!s.path.length&&bS(d)&&(s.host&&(s.host=""),d=HT(d,0)+":"),qT(s.path,d)),d="","file"===s.scheme&&(n===uT||"?"===n||"#"===n))for(;s.path.length>1&&""===s.path[0];)YT(s.path);"?"===n?(s.query="",c=WS):"#"===n&&(s.fragment="",c=GS)}else d+=yS(n,_S);break;case zS:"?"===n?(s.query="",c=WS):"#"===n?(s.fragment="",c=GS):n!==uT&&(s.path[0]+=yS(n,mS));break;case WS:t||"#"!==n?n!==uT&&("'"===n&&s.isSpecial()?s.query+="%27":s.query+="#"===n?"%23":yS(n,mS)):(s.fragment="",c=GS);break;case GS:n!==uT&&(s.fragment+=yS(n,gS))}l++}},parseHost:function(e){var t,i,r;if("["===HT(e,0)){if("]"!==HT(e,e.length-1))return eS;if(t=function(e){var t,i,r,n,a,o,s,c=[0,0,0,0,0,0,0,0],l=0,d=null,u=0,h=function(){return HT(e,u)};if(":"===h()){if(":"!==HT(e,1))return;u+=2,d=++l}for(;h();){if(8===l)return;if(":"!==h()){for(t=i=0;i<4&&jT(cS,h());)t=16*t+FT(h(),16),u++,i++;if("."===h()){if(0===i)return;if(u-=i,l>6)return;for(r=0;h();){if(n=null,r>0){if(!("."===h()&&r<4))return;u++}if(!jT(nS,h()))return;for(;jT(nS,h());){if(a=FT(h(),10),null===n)n=a;else{if(0===n)return;n=10*n+a}if(n>255)return;u++}c[l]=256*c[l]+n,2!==++r&&4!==r||l++}if(4!==r)return;break}if(":"===h()){if(u++,!h())return}else if(h())return;c[l++]=t}else{if(null!==d)return;u++,d=++l}}if(null!==d)for(o=l-d,l=7;0!==l&&o>0;)s=c[l],c[l--]=c[d+o-1],c[d+--o]=s;else if(8!==l)return;return c}(ZT(e,1,-1)),!t)return eS;this.host=t}else if(this.isSpecial()){if(e=AT(e),jT(lS,e))return eS;if(t=function(e){var t,i,r,n,a,o,s,c=XT(e,".");if(c.length&&""===c[c.length-1]&&c.length--,(t=c.length)>4)return e;for(i=[],r=0;r<t;r++){if(""===(n=c[r]))return e;if(a=10,n.length>1&&"0"===HT(n,0)&&(a=jT(aS,n)?16:8,n=ZT(n,8===a?1:2)),""===n)o=0;else{if(!jT(10===a?sS:8===a?oS:cS,n))return e;o=FT(n,a)}qT(i,o)}for(r=0;r<t;r++)if(o=i[r],r===t-1){if(o>=VT(256,5-t))return null}else if(o>255)return null;for(s=GT(i),r=0;r<i.length;r++)s+=i[r]*VT(256,3-r);return s}(e),null===t)return eS;this.host=t}else{if(jT(dS,e))return eS;for(t="",i=IT(e),r=0;r<i.length;r++)t+=yS(i[r],mS);this.host=t}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||"file"===this.scheme},includesCredentials:function(){return""!==this.username||""!==this.password},isSpecial:function(){return bT(ES,this.scheme)},shortenPath:function(){var e=this.path,t=e.length;!t||"file"===this.scheme&&1===t&&bS(e[0],!0)||e.length--},serialize:function(){var e=this,t=e.scheme,i=e.username,r=e.password,n=e.host,a=e.port,o=e.path,s=e.query,c=e.fragment,l=t+":";return null!==n?(l+="//",e.includesCredentials()&&(l+=i+(r?":"+r:"")+"@"),l+=fS(n),null!==a&&(l+=":"+a)):"file"===t&&(l+="//"),l+=e.cannotBeABaseURL?o[0]:o.length?"/"+zT(o,"/"):"",null!==s&&(l+="?"+s),null!==c&&(l+="#"+c),l},setHref:function(e){var t=this.parse(e);if(t)throw new UT(t);this.searchParams.update()},getOrigin:function(){var e=this.scheme,t=this.port;if("blob"===e)try{return new KS(e.path[0]).origin}catch(zM){return"null"}return"file"!==e&&this.isSpecial()?e+"://"+fS(this.host)+(null!==t?":"+t:""):"null"},getProtocol:function(){return this.scheme+":"},setProtocol:function(e){this.parse(RT(e)+":",SS)},getUsername:function(){return this.username},setUsername:function(e){var t=IT(RT(e));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var i=0;i<t.length;i++)this.username+=yS(t[i],vS)}},getPassword:function(){return this.password},setPassword:function(e){var t=IT(RT(e));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var i=0;i<t.length;i++)this.password+=yS(t[i],vS)}},getHost:function(){var e=this.host,t=this.port;return null===e?"":null===t?fS(e):fS(e)+":"+t},setHost:function(e){this.cannotBeABaseURL||this.parse(e,xS)},getHostname:function(){var e=this.host;return null===e?"":fS(e)},setHostname:function(e){this.cannotBeABaseURL||this.parse(e,MS)},getPort:function(){var e=this.port;return null===e?"":RT(e)},setPort:function(e){this.cannotHaveUsernamePasswordPort()||(""===(e=RT(e))?this.port=null:this.parse(e,US))},getPathname:function(){var e=this.path;return this.cannotBeABaseURL?e[0]:e.length?"/"+zT(e,"/"):""},setPathname:function(e){this.cannotBeABaseURL||(this.path=[],this.parse(e,HS))},getSearch:function(){var e=this.query;return e?"?"+e:""},setSearch:function(e){""===(e=RT(e))?this.query=null:("?"===HT(e,0)&&(e=ZT(e,1)),this.query="",this.parse(e,WS)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var e=this.fragment;return e?"#"+e:""},setHash:function(e){""!==(e=RT(e))?("#"===HT(e,0)&&(e=ZT(e,1)),this.fragment="",this.parse(e,GS)):this.fragment=null},update:function(){this.query=this.searchParams.serialize()||null}};var KS=function(e){var t=ET(this,YS),i=CT(arguments.length,1)>1?arguments[1]:void 0,r=LT(t,new qS(e,!1,i));pT||(t.href=r.serialize(),t.origin=r.getOrigin(),t.protocol=r.getProtocol(),t.username=r.getUsername(),t.password=r.getPassword(),t.host=r.getHost(),t.hostname=r.getHostname(),t.port=r.getPort(),t.pathname=r.getPathname(),t.search=r.getSearch(),t.searchParams=r.getSearchParams(),t.hash=r.getHash())},YS=KS.prototype,XS=function(e,t){return{get:function(){return NT(this)[e]()},set:t&&function(e){return NT(this)[t](e)},configurable:!0,enumerable:!0}};if(pT&&(yT(YS,"href",XS("serialize","setHref")),yT(YS,"origin",XS("getOrigin")),yT(YS,"protocol",XS("getProtocol","setProtocol")),yT(YS,"username",XS("getUsername","setUsername")),yT(YS,"password",XS("getPassword","setPassword")),yT(YS,"host",XS("getHost","setHost")),yT(YS,"hostname",XS("getHostname","setHostname")),yT(YS,"port",XS("getPort","setPort")),yT(YS,"pathname",XS("getPathname","setPathname")),yT(YS,"search",XS("getSearch","setSearch")),yT(YS,"searchParams",XS("getSearchParams")),yT(YS,"hash",XS("getHash","setHash"))),vT(YS,"toJSON",function(){return NT(this).serialize()},{enumerable:!0}),vT(YS,"toString",function(){return NT(this).serialize()},{enumerable:!0}),MT){var ZS=MT.createObjectURL,JS=MT.revokeObjectURL;ZS&&vT(KS,"createObjectURL",gT(ZS,MT)),JS&&vT(KS,"revokeObjectURL",gT(JS,MT))}kT(KS,"URL"),hT({global:!0,constructor:!0,forced:!fT,sham:!pT},{URL:KS});var QS=l;en({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return QS(URL.prototype.toString,this)}});var $S,eA,tA=Object.create,iA=Object.defineProperty,rA=Object.defineProperties,nA=Object.getOwnPropertyDescriptor,aA=Object.getOwnPropertyDescriptors,oA=Object.getOwnPropertyNames,sA=Object.getOwnPropertySymbols,cA=Object.getPrototypeOf,lA=Object.prototype.hasOwnProperty,dA=Object.prototype.propertyIsEnumerable,uA=(e,t,i)=>t in e?iA(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,hA=(e,t)=>{for(var i in t||(t={}))lA.call(t,i)&&uA(e,i,t[i]);if(sA)for(var i of sA(t))dA.call(t,i)&&uA(e,i,t[i]);return e},pA=(e,t)=>rA(e,aA(t)),fA=($S=function(e){if("undefined"!=typeof require)return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')},"undefined"!=typeof require?require:"undefined"!=typeof Proxy?new Proxy($S,{get:(e,t)=>("undefined"!=typeof require?require:e)[t]}):$S),mA=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),gA=(e,t)=>{for(var i in t)iA(e,i,{get:t[i],enumerable:!0})},_A=(e,t,i)=>(i=null!=e?tA(cA(e)):{},((e,t,i,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let n of oA(t))!lA.call(e,n)&&n!==i&&iA(e,n,{get:()=>t[n],enumerable:!(r=nA(t,n))||r.enumerable});return e})(!t&&e&&e.__esModule?i:iA(i,"default",{value:e,enumerable:!0}),e)),vA=(e,t,i,r)=>{for(var n,a=r>1?void 0:r?nA(t,i):t,o=e.length-1;o>=0;o--)(n=e[o])&&(a=(r?n(t,i,a):n(a))||a);return r&&a&&iA(t,i,a),a},yA=(e,t,i)=>uA(e,"symbol"!=typeof t?t+"":t,i),EA=mA((e,t)=>{!function(i){"object"==typeof e&&void 0!==t?t.exports=i():"function"==typeof define&&define.amd?define([],i):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).JSZip=i()}(function(){return function e(t,i,r){function n(o,s){if(!i[o]){if(!t[o]){var c="function"==typeof fA&&fA;if(!s&&c)return c(o,!0);if(a)return a(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var d=i[o]={exports:{}};t[o][0].call(d.exports,function(e){return n(t[o][1][e]||e)},d,d.exports,e,t,i,r)}return i[o].exports}for(var a="function"==typeof fA&&fA,o=0;o<r.length;o++)n(r[o]);return n}({1:[function(e,t,i){var r=e("./utils"),n=e("./support"),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";i.encode=function(e){for(var t,i,n,o,s,c,l,d=[],u=0,h=e.length,p=h,f="string"!==r.getTypeOf(e);u<e.length;)p=h-u,n=f?(t=e[u++],i=u<h?e[u++]:0,u<h?e[u++]:0):(t=e.charCodeAt(u++),i=u<h?e.charCodeAt(u++):0,u<h?e.charCodeAt(u++):0),o=t>>2,s=(3&t)<<4|i>>4,c=1<p?(15&i)<<2|n>>6:64,l=2<p?63&n:64,d.push(a.charAt(o)+a.charAt(s)+a.charAt(c)+a.charAt(l));return d.join("")},i.decode=function(e){var t,i,r,o,s,c,l=0,d=0,u="data:";if(e.substr(0,5)===u)throw new Error("Invalid base64 input, it looks like a data url.");var h,p=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&p--,e.charAt(e.length-2)===a.charAt(64)&&p--,p%1!=0)throw new Error("Invalid base64 input, bad content length.");for(h=n.uint8array?new Uint8Array(0|p):new Array(0|p);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(o=a.indexOf(e.charAt(l++)))>>4,i=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,r=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),h[d++]=t,64!==s&&(h[d++]=i),64!==c&&(h[d++]=r);return h}},{"./support":30,"./utils":32}],2:[function(e,t,i){var r=e("./external"),n=e("./stream/DataWorker"),a=e("./stream/Crc32Probe"),o=e("./stream/DataLengthProbe");function s(e,t,i,r,n){this.compressedSize=e,this.uncompressedSize=t,this.crc32=i,this.compression=r,this.compressedContent=n}s.prototype={getContentWorker:function(){var e=new n(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o("data_length")),t=this;return e.on("end",function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),e},getCompressedWorker:function(){return new n(r.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},s.createWorkerFrom=function(e,t,i){return e.pipe(new a).pipe(new o("uncompressedSize")).pipe(t.compressWorker(i)).pipe(new o("compressedSize")).withStreamInfo("compression",t)},t.exports=s},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,i){var r=e("./stream/GenericWorker");i.STORE={magic:"\0\0",compressWorker:function(){return new r("STORE compression")},uncompressWorker:function(){return new r("STORE decompression")}},i.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,i){var r=e("./utils"),n=function(){for(var e,t=[],i=0;i<256;i++){e=i;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[i]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?"string"!==r.getTypeOf(e)?function(e,t,i){var r=n,a=0+i;e^=-1;for(var o=0;o<a;o++)e=e>>>8^r[255&(e^t[o])];return-1^e}(0|t,e,e.length):function(e,t,i){var r=n,a=0+i;e^=-1;for(var o=0;o<a;o++)e=e>>>8^r[255&(e^t.charCodeAt(o))];return-1^e}(0|t,e,e.length):0}},{"./utils":32}],5:[function(e,t,i){i.base64=!1,i.binary=!1,i.dir=!1,i.createFolders=!0,i.date=null,i.compression=null,i.compressionOptions=null,i.comment=null,i.unixPermissions=null,i.dosPermissions=null},{}],6:[function(e,t,i){var r;r="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:r}},{lie:37}],7:[function(e,t,i){var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,n=e("pako"),a=e("./utils"),o=e("./stream/GenericWorker"),s=r?"uint8array":"array";function c(e,t){o.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}i.magic="\b\0",a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new n[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},i.compressWorker=function(e){return new c("Deflate",e)},i.uncompressWorker=function(){return new c("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,i){function r(e,t){var i,r="";for(i=0;i<t;i++)r+=String.fromCharCode(255&e),e>>>=8;return r}function n(e,t,i,n,o,d){var u,h,p=e.file,f=e.compression,m=d!==s.utf8encode,g=a.transformTo("string",d(p.name)),_=a.transformTo("string",s.utf8encode(p.name)),v=p.comment,y=a.transformTo("string",d(v)),E=a.transformTo("string",s.utf8encode(v)),b=_.length!==p.name.length,w=E.length!==v.length,I="",T="",S="",A=p.dir,R=p.date,k={crc32:0,compressedSize:0,uncompressedSize:0};t&&!i||(k.crc32=e.crc32,k.compressedSize=e.compressedSize,k.uncompressedSize=e.uncompressedSize);var C=0;t&&(C|=8),m||!b&&!w||(C|=2048);var D,O,L,N=0,P=0;A&&(N|=16),"UNIX"===o?(P=798,N|=(D=p.unixPermissions,O=A,L=D,D||(L=O?16893:33204),(65535&L)<<16)):(P=20,N|=function(e){return 63&(e||0)}(p.dosPermissions)),u=R.getUTCHours(),u<<=6,u|=R.getUTCMinutes(),u<<=5,u|=R.getUTCSeconds()/2,h=R.getUTCFullYear()-1980,h<<=4,h|=R.getUTCMonth()+1,h<<=5,h|=R.getUTCDate(),b&&(T=r(1,1)+r(c(g),4)+_,I+="up"+r(T.length,2)+T),w&&(S=r(1,1)+r(c(y),4)+E,I+="uc"+r(S.length,2)+S);var x="";return x+="\n\0",x+=r(C,2),x+=f.magic,x+=r(u,2),x+=r(h,2),x+=r(k.crc32,4),x+=r(k.compressedSize,4),x+=r(k.uncompressedSize,4),x+=r(g.length,2),x+=r(I.length,2),{fileRecord:l.LOCAL_FILE_HEADER+x+g+I,dirRecord:l.CENTRAL_FILE_HEADER+r(P,2)+x+r(y.length,2)+"\0\0\0\0"+r(N,4)+r(n,4)+g+I+y}}var a=e("../utils"),o=e("../stream/GenericWorker"),s=e("../utf8"),c=e("../crc32"),l=e("../signature");function d(e,t,i,r){o.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=i,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}a.inherits(d,o),d.prototype.push=function(e){var t=e.meta.percent||0,i=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,o.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:i?(t+100*(i-r-1))/i:100}}))},d.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var i=n(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:i.fileRecord,meta:{percent:0}})}else this.accumulate=!0},d.prototype.closedSource=function(e){this.accumulate=!1;var t,i=this.streamFiles&&!e.file.dir,a=n(e,i,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(a.dirRecord),i)this.push({data:(t=e,l.DATA_DESCRIPTOR+r(t.crc32,4)+r(t.compressedSize,4)+r(t.uncompressedSize,4)),meta:{percent:100}});else for(this.push({data:a.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},d.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var i,n,o,s,c,d,u=this.bytesWritten-e,h=(i=this.dirRecords.length,n=u,o=e,s=this.zipComment,c=this.encodeFileName,d=a.transformTo("string",c(s)),l.CENTRAL_DIRECTORY_END+"\0\0\0\0"+r(i,2)+r(i,2)+r(n,4)+r(o,4)+r(d.length,2)+d);this.push({data:h,meta:{percent:100}})},d.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},d.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()}),e.on("error",function(e){t.error(e)}),this},d.prototype.resume=function(){return!!o.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},d.prototype.error=function(e){var t=this._sources;if(!o.prototype.error.call(this,e))return!1;for(var i=0;i<t.length;i++)try{t[i].error(e)}catch(r){}return!0},d.prototype.lock=function(){o.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=d},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,i){var r=e("../compressions"),n=e("./ZipFileWorker");i.generateWorker=function(e,t,i){var a=new n(t.streamFiles,i,t.platform,t.encodeFileName),o=0;try{e.forEach(function(e,i){o++;var n=function(e,t){var i=e||t,n=r[i];if(!n)throw new Error(i+" is not a valid compression method !");return n}(i.options.compression,t.compression),s=i.options.compressionOptions||t.compressionOptions||{},c=i.dir,l=i.date;i._compressWorker(n,s).withStreamInfo("file",{name:e,dir:c,date:l,comment:i.comment||"",unixPermissions:i.unixPermissions,dosPermissions:i.dosPermissions}).pipe(a)}),a.entriesCount=o}catch(s){a.error(s)}return a}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,i){function r(){if(!(this instanceof r))return new r;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var e=new r;for(var t in this)"function"!=typeof this[t]&&(e[t]=this[t]);return e}}(r.prototype=e("./object")).loadAsync=e("./load"),r.support=e("./support"),r.defaults=e("./defaults"),r.version="3.10.1",r.loadAsync=function(e,t){return(new r).loadAsync(e,t)},r.external=e("./external"),t.exports=r},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,i){var r=e("./utils"),n=e("./external"),a=e("./utf8"),o=e("./zipEntries"),s=e("./stream/Crc32Probe"),c=e("./nodejsUtils");function l(e){return new n.Promise(function(t,i){var r=e.decompressed.getContentWorker().pipe(new s);r.on("error",function(e){i(e)}).on("end",function(){r.streamInfo.crc32!==e.decompressed.crc32?i(new Error("Corrupted zip : CRC32 mismatch")):t()}).resume()})}t.exports=function(e,t){var i=this;return t=r.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:a.utf8decode}),c.isNode&&c.isStream(e)?n.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):r.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then(function(e){var i=new o(t);return i.load(e),i}).then(function(e){var i=[n.Promise.resolve(e)],r=e.files;if(t.checkCRC32)for(var a=0;a<r.length;a++)i.push(l(r[a]));return n.Promise.all(i)}).then(function(e){for(var n=e.shift(),a=n.files,o=0;o<a.length;o++){var s=a[o],c=s.fileNameStr,l=r.resolve(s.fileNameStr);i.file(l,s.decompressed,{binary:!0,optimizedBinaryString:!0,date:s.date,dir:s.dir,comment:s.fileCommentStr.length?s.fileCommentStr:null,unixPermissions:s.unixPermissions,dosPermissions:s.dosPermissions,createFolders:t.createFolders}),s.dir||(i.file(l).unsafeOriginalName=c)}return n.zipComment.length&&(i.comment=n.zipComment),i})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,i){var r=e("../utils"),n=e("../stream/GenericWorker");function a(e,t){n.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}r.inherits(a,n),a.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on("data",function(e){t.push({data:e,meta:{percent:0}})}).on("error",function(e){t.isPaused?this.generatedError=e:t.error(e)}).on("end",function(){t.isPaused?t._upstreamEnded=!0:t.end()})},a.prototype.pause=function(){return!!n.prototype.pause.call(this)&&(this._stream.pause(),!0)},a.prototype.resume=function(){return!!n.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=a},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,i){var r=e("readable-stream").Readable;function n(e,t,i){r.call(this,t),this._helper=e;var n=this;e.on("data",function(e,t){n.push(e)||n._helper.pause(),i&&i(t)}).on("error",function(e){n.emit("error",e)}).on("end",function(){n.push(null)})}e("../utils").inherits(n,r),n.prototype._read=function(){this._helper.resume()},t.exports=n},{"../utils":32,"readable-stream":16}],14:[function(e,t,i){t.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},{}],15:[function(e,t,i){function r(e,t,i){var r,n=a.getTypeOf(t),s=a.extend(i||{},c);s.date=s.date||new Date,null!==s.compression&&(s.compression=s.compression.toUpperCase()),"string"==typeof s.unixPermissions&&(s.unixPermissions=parseInt(s.unixPermissions,8)),s.unixPermissions&&16384&s.unixPermissions&&(s.dir=!0),s.dosPermissions&&16&s.dosPermissions&&(s.dir=!0),s.dir&&(e=m(e)),s.createFolders&&(r=f(e))&&g.call(this,r,!0);var u="string"===n&&!1===s.binary&&!1===s.base64;i&&void 0!==i.binary||(s.binary=!u),(t instanceof l&&0===t.uncompressedSize||s.dir||!t||0===t.length)&&(s.base64=!1,s.binary=!0,t="",s.compression="STORE",n="string");var _;_=t instanceof l||t instanceof o?t:h.isNode&&h.isStream(t)?new p(e,t):a.prepareContent(e,t,s.binary,s.optimizedBinaryString,s.base64);var v=new d(e,_,s);this.files[e]=v}var n=e("./utf8"),a=e("./utils"),o=e("./stream/GenericWorker"),s=e("./stream/StreamHelper"),c=e("./defaults"),l=e("./compressedObject"),d=e("./zipObject"),u=e("./generate"),h=e("./nodejsUtils"),p=e("./nodejs/NodejsStreamInputAdapter"),f=function(e){"/"===e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return 0<t?e.substring(0,t):""},m=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},g=function(e,t){return t=void 0!==t?t:c.createFolders,e=m(e),this.files[e]||r.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function _(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var v={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,i,r;for(t in this.files)r=this.files[t],(i=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(i,r)},filter:function(e){var t=[];return this.forEach(function(i,r){e(i,r)&&t.push(r)}),t},file:function(e,t,i){if(1!==arguments.length)return e=this.root+e,r.call(this,e,t,i),this;if(_(e)){var n=e;return this.filter(function(e,t){return!t.dir&&n.test(e)})}var a=this.files[this.root+e];return a&&!a.dir?a:null},folder:function(e){if(!e)return this;if(_(e))return this.filter(function(t,i){return i.dir&&e.test(t)});var t=this.root+e,i=g.call(this,t),r=this.clone();return r.root=i.name,r},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!==e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var i=this.filter(function(t,i){return i.name.slice(0,e.length)===e}),r=0;r<i.length;r++)delete this.files[i[r].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t,i={};try{if((i=a.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:n.utf8encode})).type=i.type.toLowerCase(),i.compression=i.compression.toUpperCase(),"binarystring"===i.type&&(i.type="string"),!i.type)throw new Error("No output type specified.");a.checkSupport(i.type),"darwin"!==i.platform&&"freebsd"!==i.platform&&"linux"!==i.platform&&"sunos"!==i.platform||(i.platform="UNIX"),"win32"===i.platform&&(i.platform="DOS");var r=i.comment||this.comment||"";t=u.generateWorker(this,i,r)}catch(c){(t=new o("error")).error(c)}return new s(t,i.type||"string",i.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}};t.exports=v},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,i){t.exports=e("stream")},{stream:void 0}],17:[function(e,t,i){var r=e("./DataReader");function n(e){r.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}e("../utils").inherits(n,r),n.prototype.byteAt=function(e){return this.data[this.zero+e]},n.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),i=e.charCodeAt(1),r=e.charCodeAt(2),n=e.charCodeAt(3),a=this.length-4;0<=a;--a)if(this.data[a]===t&&this.data[a+1]===i&&this.data[a+2]===r&&this.data[a+3]===n)return a-this.zero;return-1},n.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),i=e.charCodeAt(1),r=e.charCodeAt(2),n=e.charCodeAt(3),a=this.readData(4);return t===a[0]&&i===a[1]&&r===a[2]&&n===a[3]},n.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=n},{"../utils":32,"./DataReader":18}],18:[function(e,t,i){var r=e("../utils");function n(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}n.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,i=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)i=(i<<8)+this.byteAt(t);return this.index+=e,i},readString:function(e){return r.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=n},{"../utils":32}],19:[function(e,t,i){var r=e("./Uint8ArrayReader");function n(e){r.call(this,e)}e("../utils").inherits(n,r),n.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=n},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,i){var r=e("./DataReader");function n(e){r.call(this,e)}e("../utils").inherits(n,r),n.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},n.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},n.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},n.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=n},{"../utils":32,"./DataReader":18}],21:[function(e,t,i){var r=e("./ArrayReader");function n(e){r.call(this,e)}e("../utils").inherits(n,r),n.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=n},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,i){var r=e("../utils"),n=e("../support"),a=e("./ArrayReader"),o=e("./StringReader"),s=e("./NodeBufferReader"),c=e("./Uint8ArrayReader");t.exports=function(e){var t=r.getTypeOf(e);return r.checkSupport(t),"string"!==t||n.uint8array?"nodebuffer"===t?new s(e):n.uint8array?new c(r.transformTo("uint8array",e)):new a(r.transformTo("array",e)):new o(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,i){i.LOCAL_FILE_HEADER="PK",i.CENTRAL_FILE_HEADER="PK",i.CENTRAL_DIRECTORY_END="PK",i.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",i.ZIP64_CENTRAL_DIRECTORY_END="PK",i.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,i){var r=e("./GenericWorker"),n=e("../utils");function a(e){r.call(this,"ConvertWorker to "+e),this.destType=e}n.inherits(a,r),a.prototype.processChunk=function(e){this.push({data:n.transformTo(this.destType,e.data),meta:e.meta})},t.exports=a},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,i){var r=e("./GenericWorker"),n=e("../crc32");function a(){r.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(a,r),a.prototype.processChunk=function(e){this.streamInfo.crc32=n(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=a},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,i){var r=e("../utils"),n=e("./GenericWorker");function a(e){n.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(a,n),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}n.prototype.processChunk.call(this,e)},t.exports=a},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,i){var r=e("../utils"),n=e("./GenericWorker");function a(e){n.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=r.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}r.inherits(a,n),a.prototype.cleanUp=function(){n.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!n.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=a},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,i){function r(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}r.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var i=0;i<this._listeners[e].length;i++)this._listeners[e][i].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.end()}),e.on("error",function(e){t.error(e)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var e=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},t.exports=r},{}],29:[function(e,t,i){var r=e("../utils"),n=e("./ConvertWorker"),a=e("./GenericWorker"),o=e("../base64"),s=e("../support"),c=e("../external"),l=null;if(s.nodestream)try{l=e("../nodejs/NodejsStreamOutputAdapter")}catch(u){}function d(e,t,i){var o=t;switch(t){case"blob":case"arraybuffer":o="uint8array";break;case"base64":o="string"}try{this._internalType=o,this._outputType=t,this._mimeType=i,r.checkSupport(o),this._worker=e.pipe(new n(o)),e.lock()}catch(s){this._worker=new a("error"),this._worker.error(s)}}d.prototype={accumulate:function(e){return function(e,t){return new c.Promise(function(i,n){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on("data",function(e,i){a.push(e),t&&t(i)}).on("error",function(e){a=[],n(e)}).on("end",function(){try{var e=function(e,t,i){switch(e){case"blob":return r.newBlob(r.transformTo("arraybuffer",t),i);case"base64":return o.encode(t);default:return r.transformTo(e,t)}}(c,function(e,t){var i,r=0,n=null,a=0;for(i=0;i<t.length;i++)a+=t[i].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(n=new Uint8Array(a),i=0;i<t.length;i++)n.set(t[i],r),r+=t[i].length;return n;case"nodebuffer":return Buffer.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}(s,a),l);i(e)}catch(t){n(t)}a=[]}).resume()})}(this,e)},on:function(e,t){var i=this;return"data"===e?this._worker.on(e,function(e){t.call(i,e.data,e.meta)}):this._worker.on(e,function(){r.delay(t,arguments,i)}),this},resume:function(){return r.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(r.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new l(this,{objectMode:"nodebuffer"!==this._outputType},e)}},t.exports=d},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,i){if(i.base64=!0,i.array=!0,i.string=!0,i.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,i.nodebuffer="undefined"!=typeof Buffer,i.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)i.blob=!1;else{var r=new ArrayBuffer(0);try{i.blob=0===new Blob([r],{type:"application/zip"}).size}catch(a){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);n.append(r),i.blob=0===n.getBlob("application/zip").size}catch(LA){i.blob=!1}}}try{i.nodestream=!!e("readable-stream").Readable}catch(a){i.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,i){for(var r=e("./utils"),n=e("./support"),a=e("./nodejsUtils"),o=e("./stream/GenericWorker"),s=new Array(256),c=0;c<256;c++)s[c]=252<=c?6:248<=c?5:240<=c?4:224<=c?3:192<=c?2:1;function l(){o.call(this,"utf-8 decode"),this.leftOver=null}function d(){o.call(this,"utf-8 encode")}s[254]=s[254]=1,i.utf8encode=function(e){return n.nodebuffer?a.newBufferFrom(e,"utf-8"):function(e){var t,i,r,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(i=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(r=e.charCodeAt(a+1)))&&(i=65536+(i-55296<<10)+(r-56320),a++),c+=i<128?1:i<2048?2:i<65536?3:4;for(t=n.uint8array?new Uint8Array(c):new Array(c),a=o=0;o<c;a++)55296==(64512&(i=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(r=e.charCodeAt(a+1)))&&(i=65536+(i-55296<<10)+(r-56320),a++),i<128?t[o++]=i:(i<2048?t[o++]=192|i>>>6:(i<65536?t[o++]=224|i>>>12:(t[o++]=240|i>>>18,t[o++]=128|i>>>12&63),t[o++]=128|i>>>6&63),t[o++]=128|63&i);return t}(e)},i.utf8decode=function(e){return n.nodebuffer?r.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,i,n,a,o=e.length,c=new Array(2*o);for(t=i=0;t<o;)if((n=e[t++])<128)c[i++]=n;else if(4<(a=s[n]))c[i++]=65533,t+=a-1;else{for(n&=2===a?31:3===a?15:7;1<a&&t<o;)n=n<<6|63&e[t++],a--;1<a?c[i++]=65533:n<65536?c[i++]=n:(n-=65536,c[i++]=55296|n>>10&1023,c[i++]=56320|1023&n)}return c.length!==i&&(c.subarray?c=c.subarray(0,i):c.length=i),r.applyFromCharCode(c)}(e=r.transformTo(n.uint8array?"uint8array":"array",e))},r.inherits(l,o),l.prototype.processChunk=function(e){var t=r.transformTo(n.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(n.uint8array){var a=t;(t=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),t.set(a,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var o=function(e,t){var i;for((t=t||e.length)>e.length&&(t=e.length),i=t-1;0<=i&&128==(192&e[i]);)i--;return i<0||0===i?t:i+s[e[i]]>t?i:t}(t),c=t;o!==t.length&&(n.uint8array?(c=t.subarray(0,o),this.leftOver=t.subarray(o,t.length)):(c=t.slice(0,o),this.leftOver=t.slice(o,t.length))),this.push({data:i.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:i.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},i.Utf8DecodeWorker=l,r.inherits(d,o),d.prototype.processChunk=function(e){this.push({data:i.utf8encode(e.data),meta:e.meta})},i.Utf8EncodeWorker=d},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,i){var r=e("./support"),n=e("./base64"),a=e("./nodejsUtils"),o=e("./external");function s(e){return e}function c(e,t){for(var i=0;i<e.length;++i)t[i]=255&e.charCodeAt(i);return t}e("setimmediate"),i.newBlob=function(e,t){i.checkSupport("blob");try{return new Blob([e],{type:t})}catch(n){try{var r=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return r.append(e),r.getBlob(t)}catch(a){throw new Error("Bug : can't construct the Blob.")}}};var l={stringifyByChunk:function(e,t,i){var r=[],n=0,a=e.length;if(a<=i)return String.fromCharCode.apply(null,e);for(;n<a;)"array"===t||"nodebuffer"===t?r.push(String.fromCharCode.apply(null,e.slice(n,Math.min(n+i,a)))):r.push(String.fromCharCode.apply(null,e.subarray(n,Math.min(n+i,a)))),n+=i;return r.join("")},stringifyByChar:function(e){for(var t="",i=0;i<e.length;i++)t+=String.fromCharCode(e[i]);return t},applyCanBeUsed:{uint8array:function(){try{return r.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return r.nodebuffer&&1===String.fromCharCode.apply(null,a.allocBuffer(1)).length}catch(e){return!1}}()}};function d(e){var t=65536,r=i.getTypeOf(e),n=!0;if("uint8array"===r?n=l.applyCanBeUsed.uint8array:"nodebuffer"===r&&(n=l.applyCanBeUsed.nodebuffer),n)for(;1<t;)try{return l.stringifyByChunk(e,r,t)}catch(a){t=Math.floor(t/2)}return l.stringifyByChar(e)}function u(e,t){for(var i=0;i<e.length;i++)t[i]=e[i];return t}i.applyFromCharCode=d;var h={};h.string={string:s,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return h.string.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:function(e){return c(e,a.allocBuffer(e.length))}},h.array={string:d,array:s,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(e)}},h.arraybuffer={string:function(e){return d(new Uint8Array(e))},array:function(e){return u(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:s,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(new Uint8Array(e))}},h.uint8array={string:d,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:s,nodebuffer:function(e){return a.newBufferFrom(e)}},h.nodebuffer={string:d,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return h.nodebuffer.uint8array(e).buffer},uint8array:function(e){return u(e,new Uint8Array(e.length))},nodebuffer:s},i.transformTo=function(e,t){if(t=t||"",!e)return t;i.checkSupport(e);var r=i.getTypeOf(t);return h[r][e](t)},i.resolve=function(e){for(var t=e.split("/"),i=[],r=0;r<t.length;r++){var n=t[r];"."===n||""===n&&0!==r&&r!==t.length-1||(".."===n?i.pop():i.push(n))}return i.join("/")},i.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":r.nodebuffer&&a.isBuffer(e)?"nodebuffer":r.uint8array&&e instanceof Uint8Array?"uint8array":r.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},i.checkSupport=function(e){if(!r[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},i.MAX_VALUE_16BITS=65535,i.MAX_VALUE_32BITS=-1,i.pretty=function(e){var t,i,r="";for(i=0;i<(e||"").length;i++)r+="\\x"+((t=e.charCodeAt(i))<16?"0":"")+t.toString(16).toUpperCase();return r},i.delay=function(e,t,i){setImmediate(function(){e.apply(i||null,t||[])})},i.inherits=function(e,t){function i(){}i.prototype=t.prototype,e.prototype=new i},i.extend=function(){var e,t,i={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&void 0===i[t]&&(i[t]=arguments[e][t]);return i},i.prepareContent=function(e,t,a,s,l){return o.Promise.resolve(t).then(function(e){return r.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new o.Promise(function(t,i){var r=new FileReader;r.onload=function(e){t(e.target.result)},r.onerror=function(e){i(e.target.error)},r.readAsArrayBuffer(e)}):e}).then(function(t){var d,u=i.getTypeOf(t);return u?("arraybuffer"===u?t=i.transformTo("uint8array",t):"string"===u&&(l?t=n.decode(t):a&&!0!==s&&(t=c(d=t,r.uint8array?new Uint8Array(d.length):new Array(d.length)))),t):o.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(e,t,i){var r=e("./reader/readerFor"),n=e("./utils"),a=e("./signature"),o=e("./zipEntry"),s=e("./support");function c(e){this.files=[],this.loadOptions=e}c.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+n.pretty(t)+", expected "+n.pretty(e)+")")}},isSignature:function(e,t){var i=this.reader.index;this.reader.setIndex(e);var r=this.reader.readString(4)===t;return this.reader.setIndex(i),r},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=s.uint8array?"uint8array":"array",i=n.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(i)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,i,r=this.zip64EndOfCentralSize-44;0<r;)e=this.reader.readInt(2),t=this.reader.readInt(4),i=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:i}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(a.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(a.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(a.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,a.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(e);var t=e;if(this.checkSignature(a.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===n.MAX_VALUE_16BITS||this.diskWithCentralDirStart===n.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===n.MAX_VALUE_16BITS||this.centralDirRecords===n.MAX_VALUE_16BITS||this.centralDirSize===n.MAX_VALUE_32BITS||this.centralDirOffset===n.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,a.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var i=this.centralDirOffset+this.centralDirSize;this.zip64&&(i+=20,i+=12+this.zip64EndOfCentralSize);var r=t-i;if(0<r)this.isSignature(t,a.CENTRAL_FILE_HEADER)||(this.reader.zero=r);else if(r<0)throw new Error("Corrupted zip: missing "+Math.abs(r)+" bytes.")},prepareReader:function(e){this.reader=r(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=c},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(e,t,i){var r=e("./reader/readerFor"),n=e("./utils"),a=e("./compressedObject"),o=e("./crc32"),s=e("./utf8"),c=e("./compressions"),l=e("./support");function d(e,t){this.options=e,this.loadOptions=t}d.prototype={isEncrypted:function(){return!(1&~this.bitFlag)},useUTF8:function(){return!(2048&~this.bitFlag)},readLocalPart:function(e){var t,i;if(e.skip(22),this.fileNameLength=e.readInt(2),i=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(i),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in c)if(Object.prototype.hasOwnProperty.call(c,t)&&c[t].magic===e)return c[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+n.pretty(this.compressionMethod)+" unknown (inner file : "+n.transformTo("string",this.fileName)+")");this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=r(this.extraFields[1].value);this.uncompressedSize===n.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===n.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===n.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===n.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,i,r,n=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<n;)t=e.readInt(2),i=e.readInt(2),r=e.readData(i),this.extraFields[t]={id:t,length:i,value:r};e.setIndex(n)},handleUTF8:function(){var e=l.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=s.utf8decode(this.fileName),this.fileCommentStr=s.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(null!==t)this.fileNameStr=t;else{var i=n.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(i)}var r=this.findExtraFieldUnicodeComment();if(null!==r)this.fileCommentStr=r;else{var a=n.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(a)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=r(e.value);return 1!==t.readInt(1)||o(this.fileName)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=r(e.value);return 1!==t.readInt(1)||o(this.fileComment)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null}},t.exports=d},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,i){function r(e,t,i){this.name=e,this.dir=i.dir,this.date=i.date,this.comment=i.comment,this.unixPermissions=i.unixPermissions,this.dosPermissions=i.dosPermissions,this._data=t,this._dataBinary=i.binary,this.options={compression:i.compression,compressionOptions:i.compressionOptions}}var n=e("./stream/StreamHelper"),a=e("./stream/DataWorker"),o=e("./utf8"),s=e("./compressedObject"),c=e("./stream/GenericWorker");r.prototype={internalStream:function(e){var t=null,i="string";try{if(!e)throw new Error("No output type specified.");var r="string"===(i=e.toLowerCase())||"text"===i;"binarystring"!==i&&"text"!==i||(i="string"),t=this._decompressWorker();var a=!this._dataBinary;a&&!r&&(t=t.pipe(new o.Utf8EncodeWorker)),!a&&r&&(t=t.pipe(new o.Utf8DecodeWorker))}catch(s){(t=new c("error")).error(s)}return new n(t,i,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof s&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var i=this._decompressWorker();return this._dataBinary||(i=i.pipe(new o.Utf8EncodeWorker)),s.createWorkerFrom(i,e,t)},_decompressWorker:function(){return this._data instanceof s?this._data.getContentWorker():this._data instanceof c?this._data:new a(this._data)}};for(var l=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],d=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},u=0;u<l.length;u++)r.prototype[l[u]]=d;t.exports=r},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,i){(function(e){var i,r,n=e.MutationObserver||e.WebKitMutationObserver;if(n){var a=0,o=new n(d),s=e.document.createTextNode("");o.observe(s,{characterData:!0}),i=function(){s.data=a=++a%2}}else if(e.setImmediate||void 0===e.MessageChannel)i="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){d(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(d,0)};else{var c=new e.MessageChannel;c.port1.onmessage=d,i=function(){c.port2.postMessage(0)}}var l=[];function d(){var e,t;r=!0;for(var i=l.length;i;){for(t=l,l=[],e=-1;++e<i;)t[e]();i=l.length}r=!1}t.exports=function(e){1!==l.push(e)||r||i()}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],37:[function(e,t,i){var r=e("immediate");function n(){}var a={},o=["REJECTED"],s=["FULFILLED"],c=["PENDING"];function l(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=c,this.queue=[],this.outcome=void 0,e!==n&&p(this,e)}function d(e,t,i){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof i&&(this.onRejected=i,this.callRejected=this.otherCallRejected)}function u(e,t,i){r(function(){var r;try{r=t(i)}catch(MO){return a.reject(e,MO)}r===e?a.reject(e,new TypeError("Cannot resolve promise with itself")):a.resolve(e,r)})}function h(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function p(e,t){var i=!1;function r(t){i||(i=!0,a.reject(e,t))}function n(t){i||(i=!0,a.resolve(e,t))}var o=f(function(){t(n,r)});"error"===o.status&&r(o.value)}function f(e,t){var i={};try{i.value=e(t),i.status="success"}catch(r){i.status="error",i.value=r}return i}(t.exports=l).prototype.finally=function(e){if("function"!=typeof e)return this;var t=this.constructor;return this.then(function(i){return t.resolve(e()).then(function(){return i})},function(i){return t.resolve(e()).then(function(){throw i})})},l.prototype.catch=function(e){return this.then(null,e)},l.prototype.then=function(e,t){if("function"!=typeof e&&this.state===s||"function"!=typeof t&&this.state===o)return this;var i=new this.constructor(n);return this.state!==c?u(i,this.state===s?e:t,this.outcome):this.queue.push(new d(i,e,t)),i},d.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},d.prototype.otherCallFulfilled=function(e){u(this.promise,this.onFulfilled,e)},d.prototype.callRejected=function(e){a.reject(this.promise,e)},d.prototype.otherCallRejected=function(e){u(this.promise,this.onRejected,e)},a.resolve=function(e,t){var i=f(h,t);if("error"===i.status)return a.reject(e,i.value);var r=i.value;if(r)p(e,r);else{e.state=s,e.outcome=t;for(var n=-1,o=e.queue.length;++n<o;)e.queue[n].callFulfilled(t)}return e},a.reject=function(e,t){e.state=o,e.outcome=t;for(var i=-1,r=e.queue.length;++i<r;)e.queue[i].callRejected(t);return e},l.resolve=function(e){return e instanceof this?e:a.resolve(new this(n),e)},l.reject=function(e){var t=new this(n);return a.reject(t,e)},l.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var i=e.length,r=!1;if(!i)return this.resolve([]);for(var o=new Array(i),s=0,c=-1,l=new this(n);++c<i;)d(e[c],c);return l;function d(e,n){t.resolve(e).then(function(e){o[n]=e,++s!==i||r||(r=!0,a.resolve(l,o))},function(e){r||(r=!0,a.reject(l,e))})}},l.race=function(e){if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var t,i=e.length,r=!1;if(!i)return this.resolve([]);for(var o=-1,s=new this(n);++o<i;)t=e[o],this.resolve(t).then(function(e){r||(r=!0,a.resolve(s,e))},function(e){r||(r=!0,a.reject(s,e))});return s}},{immediate:36}],38:[function(e,t,i){var r={};(0,e("./lib/utils/common").assign)(r,e("./lib/deflate"),e("./lib/inflate"),e("./lib/zlib/constants")),t.exports=r},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,i){var r=e("./zlib/deflate"),n=e("./utils/common"),a=e("./utils/strings"),o=e("./zlib/messages"),s=e("./zlib/zstream"),c=Object.prototype.toString;function l(e){if(!(this instanceof l))return new l(e);this.options=n.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=this.options;t.raw&&0<t.windowBits?t.windowBits=-t.windowBits:t.gzip&&0<t.windowBits&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var i=r.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(0!==i)throw new Error(o[i]);if(t.header&&r.deflateSetHeader(this.strm,t.header),t.dictionary){var d;if(d="string"==typeof t.dictionary?a.string2buf(t.dictionary):"[object ArrayBuffer]"===c.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,0!==(i=r.deflateSetDictionary(this.strm,d)))throw new Error(o[i]);this._dict_set=!0}}function d(e,t){var i=new l(t);if(i.push(e,!0),i.err)throw i.msg||o[i.err];return i.result}l.prototype.push=function(e,t){var i,o,s=this.strm,l=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"==typeof e?s.input=a.string2buf(e):"[object ArrayBuffer]"===c.call(e)?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(0===s.avail_out&&(s.output=new n.Buf8(l),s.next_out=0,s.avail_out=l),1!==(i=r.deflate(s,o))&&0!==i)return this.onEnd(i),!(this.ended=!0);0!==s.avail_out&&(0!==s.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(a.buf2binstring(n.shrinkBuf(s.output,s.next_out))):this.onData(n.shrinkBuf(s.output,s.next_out)))}while((0<s.avail_in||0===s.avail_out)&&1!==i);return 4===o?(i=r.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,0===i):2!==o||(this.onEnd(0),!(s.avail_out=0))},l.prototype.onData=function(e){this.chunks.push(e)},l.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=n.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},i.Deflate=l,i.deflate=d,i.deflateRaw=function(e,t){return(t=t||{}).raw=!0,d(e,t)},i.gzip=function(e,t){return(t=t||{}).gzip=!0,d(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,i){var r=e("./zlib/inflate"),n=e("./utils/common"),a=e("./utils/strings"),o=e("./zlib/constants"),s=e("./zlib/messages"),c=e("./zlib/zstream"),l=e("./zlib/gzheader"),d=Object.prototype.toString;function u(e){if(!(this instanceof u))return new u(e);this.options=n.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&!(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new c,this.strm.avail_out=0;var i=r.inflateInit2(this.strm,t.windowBits);if(i!==o.Z_OK)throw new Error(s[i]);this.header=new l,r.inflateGetHeader(this.strm,this.header)}function h(e,t){var i=new u(t);if(i.push(e,!0),i.err)throw i.msg||s[i.err];return i.result}u.prototype.push=function(e,t){var i,s,c,l,u,h,p=this.strm,f=this.options.chunkSize,m=this.options.dictionary,g=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"==typeof e?p.input=a.binstring2buf(e):"[object ArrayBuffer]"===d.call(e)?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(0===p.avail_out&&(p.output=new n.Buf8(f),p.next_out=0,p.avail_out=f),(i=r.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&m&&(h="string"==typeof m?a.string2buf(m):"[object ArrayBuffer]"===d.call(m)?new Uint8Array(m):m,i=r.inflateSetDictionary(this.strm,h)),i===o.Z_BUF_ERROR&&!0===g&&(i=o.Z_OK,g=!1),i!==o.Z_STREAM_END&&i!==o.Z_OK)return this.onEnd(i),!(this.ended=!0);p.next_out&&(0!==p.avail_out&&i!==o.Z_STREAM_END&&(0!==p.avail_in||s!==o.Z_FINISH&&s!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(c=a.utf8border(p.output,p.next_out),l=p.next_out-c,u=a.buf2string(p.output,c),p.next_out=l,p.avail_out=f-l,l&&n.arraySet(p.output,p.output,c,l,0),this.onData(u)):this.onData(n.shrinkBuf(p.output,p.next_out)))),0===p.avail_in&&0===p.avail_out&&(g=!0)}while((0<p.avail_in||0===p.avail_out)&&i!==o.Z_STREAM_END);return i===o.Z_STREAM_END&&(s=o.Z_FINISH),s===o.Z_FINISH?(i=r.inflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===o.Z_OK):s!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),!(p.avail_out=0))},u.prototype.onData=function(e){this.chunks.push(e)},u.prototype.onEnd=function(e){e===o.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=n.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},i.Inflate=u,i.inflate=h,i.inflateRaw=function(e,t){return(t=t||{}).raw=!0,h(e,t)},i.ungzip=h},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(e,t,i){var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;i.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var i=t.shift();if(i){if("object"!=typeof i)throw new TypeError(i+"must be non-object");for(var r in i)i.hasOwnProperty(r)&&(e[r]=i[r])}}return e},i.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var n={arraySet:function(e,t,i,r,n){if(t.subarray&&e.subarray)e.set(t.subarray(i,i+r),n);else for(var a=0;a<r;a++)e[n+a]=t[i+a]},flattenChunks:function(e){var t,i,r,n,a,o;for(t=r=0,i=e.length;t<i;t++)r+=e[t].length;for(o=new Uint8Array(r),t=n=0,i=e.length;t<i;t++)a=e[t],o.set(a,n),n+=a.length;return o}},a={arraySet:function(e,t,i,r,n){for(var a=0;a<r;a++)e[n+a]=t[i+a]},flattenChunks:function(e){return[].concat.apply([],e)}};i.setTyped=function(e){e?(i.Buf8=Uint8Array,i.Buf16=Uint16Array,i.Buf32=Int32Array,i.assign(i,n)):(i.Buf8=Array,i.Buf16=Array,i.Buf32=Array,i.assign(i,a))},i.setTyped(r)},{}],42:[function(e,t,i){var r=e("./common"),n=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch(l){n=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(l){a=!1}for(var o=new r.Buf8(256),s=0;s<256;s++)o[s]=252<=s?6:248<=s?5:240<=s?4:224<=s?3:192<=s?2:1;function c(e,t){if(t<65537&&(e.subarray&&a||!e.subarray&&n))return String.fromCharCode.apply(null,r.shrinkBuf(e,t));for(var i="",o=0;o<t;o++)i+=String.fromCharCode(e[o]);return i}o[254]=o[254]=1,i.string2buf=function(e){var t,i,n,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(i=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(i=65536+(i-55296<<10)+(n-56320),a++),c+=i<128?1:i<2048?2:i<65536?3:4;for(t=new r.Buf8(c),a=o=0;o<c;a++)55296==(64512&(i=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(i=65536+(i-55296<<10)+(n-56320),a++),i<128?t[o++]=i:(i<2048?t[o++]=192|i>>>6:(i<65536?t[o++]=224|i>>>12:(t[o++]=240|i>>>18,t[o++]=128|i>>>12&63),t[o++]=128|i>>>6&63),t[o++]=128|63&i);return t},i.buf2binstring=function(e){return c(e,e.length)},i.binstring2buf=function(e){for(var t=new r.Buf8(e.length),i=0,n=t.length;i<n;i++)t[i]=e.charCodeAt(i);return t},i.buf2string=function(e,t){var i,r,n,a,s=t||e.length,l=new Array(2*s);for(i=r=0;i<s;)if((n=e[i++])<128)l[r++]=n;else if(4<(a=o[n]))l[r++]=65533,i+=a-1;else{for(n&=2===a?31:3===a?15:7;1<a&&i<s;)n=n<<6|63&e[i++],a--;1<a?l[r++]=65533:n<65536?l[r++]=n:(n-=65536,l[r++]=55296|n>>10&1023,l[r++]=56320|1023&n)}return c(l,r)},i.utf8border=function(e,t){var i;for((t=t||e.length)>e.length&&(t=e.length),i=t-1;0<=i&&128==(192&e[i]);)i--;return i<0||0===i?t:i+o[e[i]]>t?i:t}},{"./common":41}],43:[function(e,t,i){t.exports=function(e,t,i,r){for(var n=65535&e,a=e>>>16&65535,o=0;0!==i;){for(i-=o=2e3<i?2e3:i;a=a+(n=n+t[r++]|0)|0,--o;);n%=65521,a%=65521}return n|a<<16}},{}],44:[function(e,t,i){t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(e,t,i){var r=function(){for(var e,t=[],i=0;i<256;i++){e=i;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[i]=e}return t}();t.exports=function(e,t,i,n){var a=r,o=n+i;e^=-1;for(var s=n;s<o;s++)e=e>>>8^a[255&(e^t[s])];return-1^e}},{}],46:[function(e,t,i){var r,n=e("../utils/common"),a=e("./trees"),o=e("./adler32"),s=e("./crc32"),c=e("./messages"),l=-2,d=258,u=262,h=113;function p(e,t){return e.msg=c[t],t}function f(e){return(e<<1)-(4<e?9:0)}function m(e){for(var t=e.length;0<=--t;)e[t]=0}function g(e){var t=e.state,i=t.pending;i>e.avail_out&&(i=e.avail_out),0!==i&&(n.arraySet(e.output,t.pending_buf,t.pending_out,i,e.next_out),e.next_out+=i,t.pending_out+=i,e.total_out+=i,e.avail_out-=i,t.pending-=i,0===t.pending&&(t.pending_out=0))}function _(e,t){a._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,g(e.strm)}function v(e,t){e.pending_buf[e.pending++]=t}function y(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function E(e,t){var i,r,n=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-u?e.strstart-(e.w_size-u):0,l=e.window,h=e.w_mask,p=e.prev,f=e.strstart+d,m=l[a+o-1],g=l[a+o];e.prev_length>=e.good_match&&(n>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(i=t)+o]===g&&l[i+o-1]===m&&l[i]===l[a]&&l[++i]===l[a+1]){a+=2,i++;do{}while(l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&a<f);if(r=d-(f-a),a=f-d,o<r){if(e.match_start=t,s<=(o=r))break;m=l[a+o-1],g=l[a+o]}}}while((t=p[t&h])>c&&0!=--n);return o<=e.lookahead?o:e.lookahead}function b(e){var t,i,r,a,c,l,d,h,p,f,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-u)){for(n.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=i=e.hash_size;r=e.head[--t],e.head[t]=m<=r?r-m:0,--i;);for(t=i=m;r=e.prev[--t],e.prev[t]=m<=r?r-m:0,--i;);a+=m}if(0===e.strm.avail_in)break;if(l=e.strm,d=e.window,h=e.strstart+e.lookahead,f=void 0,(p=a)<(f=l.avail_in)&&(f=p),i=0===f?0:(l.avail_in-=f,n.arraySet(d,l.input,l.next_in,f,h),1===l.state.wrap?l.adler=o(l.adler,d,f,h):2===l.state.wrap&&(l.adler=s(l.adler,d,f,h)),l.next_in+=f,l.total_in+=f,f),e.lookahead+=i,e.lookahead+e.insert>=3)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+3-1])&e.hash_mask,e.prev[c&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=c,c++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<u&&0!==e.strm.avail_in)}function w(e,t){for(var i,r;;){if(e.lookahead<u){if(b(e),e.lookahead<u&&0===t)return 1;if(0===e.lookahead)break}if(i=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,i=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==i&&e.strstart-i<=e.w_size-u&&(e.match_length=E(e,i)),e.match_length>=3)if(r=a._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,i=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart,0!=--e.match_length;);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}function I(e,t){for(var i,r,n;;){if(e.lookahead<u){if(b(e),e.lookahead<u&&0===t)return 1;if(0===e.lookahead)break}if(i=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,i=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==i&&e.prev_length<e.max_lazy_match&&e.strstart-i<=e.w_size-u&&(e.match_length=E(e,i),e.match_length<=5&&(1===e.strategy||3===e.match_length&&4096<e.strstart-e.match_start)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){for(n=e.strstart+e.lookahead-3,r=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=n&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,i=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!=--e.prev_length;);if(e.match_available=0,e.match_length=2,e.strstart++,r&&(_(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((r=a._tr_tally(e,0,e.window[e.strstart-1]))&&_(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=a._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}function T(e,t,i,r,n){this.good_length=e,this.max_lazy=t,this.nice_length=i,this.max_chain=r,this.func=n}function S(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new n.Buf16(1146),this.dyn_dtree=new n.Buf16(122),this.bl_tree=new n.Buf16(78),m(this.dyn_ltree),m(this.dyn_dtree),m(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new n.Buf16(16),this.heap=new n.Buf16(573),m(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new n.Buf16(573),m(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function A(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:h,e.adler=2===t.wrap?0:1,t.last_flush=0,a._tr_init(t),0):p(e,l)}function R(e){var t,i=A(e);return 0===i&&((t=e.state).window_size=2*t.w_size,m(t.head),t.max_lazy_match=r[t.level].max_lazy,t.good_match=r[t.level].good_length,t.nice_match=r[t.level].nice_length,t.max_chain_length=r[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0),i}function k(e,t,i,r,a,o){if(!e)return l;var s=1;if(-1===t&&(t=6),r<0?(s=0,r=-r):15<r&&(s=2,r-=16),a<1||9<a||8!==i||r<8||15<r||t<0||9<t||o<0||4<o)return p(e,l);8===r&&(r=9);var c=new S;return(e.state=c).strm=e,c.wrap=s,c.gzhead=null,c.w_bits=r,c.w_size=1<<c.w_bits,c.w_mask=c.w_size-1,c.hash_bits=a+7,c.hash_size=1<<c.hash_bits,c.hash_mask=c.hash_size-1,c.hash_shift=~~((c.hash_bits+3-1)/3),c.window=new n.Buf8(2*c.w_size),c.head=new n.Buf16(c.hash_size),c.prev=new n.Buf16(c.w_size),c.lit_bufsize=1<<a+6,c.pending_buf_size=4*c.lit_bufsize,c.pending_buf=new n.Buf8(c.pending_buf_size),c.d_buf=1*c.lit_bufsize,c.l_buf=3*c.lit_bufsize,c.level=t,c.strategy=o,c.method=i,R(e)}r=[new T(0,0,0,0,function(e,t){var i=65535;for(i>e.pending_buf_size-5&&(i=e.pending_buf_size-5);;){if(e.lookahead<=1){if(b(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+i;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,_(e,!1),0===e.strm.avail_out)||e.strstart-e.block_start>=e.w_size-u&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(_(e,!1),e.strm.avail_out),1)}),new T(4,4,8,4,w),new T(4,5,16,8,w),new T(4,6,32,32,w),new T(4,4,16,16,I),new T(8,16,32,32,I),new T(8,16,128,128,I),new T(8,32,128,256,I),new T(32,128,258,1024,I),new T(32,258,258,4096,I)],i.deflateInit=function(e,t){return k(e,t,8,15,8,0)},i.deflateInit2=k,i.deflateReset=R,i.deflateResetKeep=A,i.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?l:(e.state.gzhead=t,0):l},i.deflate=function(e,t){var i,n,o,c;if(!e||!e.state||5<t||t<0)return e?p(e,l):l;if(n=e.state,!e.output||!e.input&&0!==e.avail_in||666===n.status&&4!==t)return p(e,0===e.avail_out?-5:l);if(n.strm=e,i=n.last_flush,n.last_flush=t,42===n.status)if(2===n.wrap)e.adler=0,v(n,31),v(n,139),v(n,8),n.gzhead?(v(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),v(n,255&n.gzhead.time),v(n,n.gzhead.time>>8&255),v(n,n.gzhead.time>>16&255),v(n,n.gzhead.time>>24&255),v(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),v(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(v(n,255&n.gzhead.extra.length),v(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=s(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(v(n,0),v(n,0),v(n,0),v(n,0),v(n,0),v(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),v(n,3),n.status=h);else{var u=8+(n.w_bits-8<<4)<<8;u|=(2<=n.strategy||n.level<2?0:n.level<6?1:6===n.level?2:3)<<6,0!==n.strstart&&(u|=32),u+=31-u%31,n.status=h,y(n,u),0!==n.strstart&&(y(n,e.adler>>>16),y(n,65535&e.adler)),e.adler=1}if(69===n.status)if(n.gzhead.extra){for(o=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),g(e),o=n.pending,n.pending!==n.pending_buf_size));)v(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){o=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),g(e),o=n.pending,n.pending===n.pending_buf_size)){c=1;break}c=n.gzindex<n.gzhead.name.length?255&n.gzhead.name.charCodeAt(n.gzindex++):0,v(n,c)}while(0!==c);n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),0===c&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){o=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),g(e),o=n.pending,n.pending===n.pending_buf_size)){c=1;break}c=n.gzindex<n.gzhead.comment.length?255&n.gzhead.comment.charCodeAt(n.gzindex++):0,v(n,c)}while(0!==c);n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),0===c&&(n.status=103)}else n.status=103;if(103===n.status&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&g(e),n.pending+2<=n.pending_buf_size&&(v(n,255&e.adler),v(n,e.adler>>8&255),e.adler=0,n.status=h)):n.status=h),0!==n.pending){if(g(e),0===e.avail_out)return n.last_flush=-1,0}else if(0===e.avail_in&&f(t)<=f(i)&&4!==t)return p(e,-5);if(666===n.status&&0!==e.avail_in)return p(e,-5);if(0!==e.avail_in||0!==n.lookahead||0!==t&&666!==n.status){var E=2===n.strategy?function(e,t){for(var i;;){if(0===e.lookahead&&(b(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,i=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,i&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}(n,t):3===n.strategy?function(e,t){for(var i,r,n,o,s=e.window;;){if(e.lookahead<=d){if(b(e),e.lookahead<=d&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&0<e.strstart&&(r=s[n=e.strstart-1])===s[++n]&&r===s[++n]&&r===s[++n]){o=e.strstart+d;do{}while(r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&n<o);e.match_length=d-(o-n),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(i=a._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(i=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),i&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}(n,t):r[n.level].func(n,t);if(3!==E&&4!==E||(n.status=666),1===E||3===E)return 0===e.avail_out&&(n.last_flush=-1),0;if(2===E&&(1===t?a._tr_align(n):5!==t&&(a._tr_stored_block(n,0,0,!1),3===t&&(m(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),g(e),0===e.avail_out))return n.last_flush=-1,0}return 4!==t?0:n.wrap<=0?1:(2===n.wrap?(v(n,255&e.adler),v(n,e.adler>>8&255),v(n,e.adler>>16&255),v(n,e.adler>>24&255),v(n,255&e.total_in),v(n,e.total_in>>8&255),v(n,e.total_in>>16&255),v(n,e.total_in>>24&255)):(y(n,e.adler>>>16),y(n,65535&e.adler)),g(e),0<n.wrap&&(n.wrap=-n.wrap),0!==n.pending?0:1)},i.deflateEnd=function(e){var t;return e&&e.state?42!==(t=e.state.status)&&69!==t&&73!==t&&91!==t&&103!==t&&t!==h&&666!==t?p(e,l):(e.state=null,t===h?p(e,-3):0):l},i.deflateSetDictionary=function(e,t){var i,r,a,s,c,d,u,h,p=t.length;if(!e||!e.state||2===(s=(i=e.state).wrap)||1===s&&42!==i.status||i.lookahead)return l;for(1===s&&(e.adler=o(e.adler,t,p,0)),i.wrap=0,p>=i.w_size&&(0===s&&(m(i.head),i.strstart=0,i.block_start=0,i.insert=0),h=new n.Buf8(i.w_size),n.arraySet(h,t,p-i.w_size,i.w_size,0),t=h,p=i.w_size),c=e.avail_in,d=e.next_in,u=e.input,e.avail_in=p,e.next_in=0,e.input=t,b(i);i.lookahead>=3;){for(r=i.strstart,a=i.lookahead-2;i.ins_h=(i.ins_h<<i.hash_shift^i.window[r+3-1])&i.hash_mask,i.prev[r&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=r,r++,--a;);i.strstart=r,i.lookahead=2,b(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,e.next_in=d,e.input=u,e.avail_in=c,i.wrap=s,0},i.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,i){t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(e,t,i){t.exports=function(e,t){var i,r,n,a,o,s,c,l,d,u,h,p,f,m,g,_,v,y,E,b,w,I,T,S,A;i=e.state,r=e.next_in,S=e.input,n=r+(e.avail_in-5),a=e.next_out,A=e.output,o=a-(t-e.avail_out),s=a+(e.avail_out-257),c=i.dmax,l=i.wsize,d=i.whave,u=i.wnext,h=i.window,p=i.hold,f=i.bits,m=i.lencode,g=i.distcode,_=(1<<i.lenbits)-1,v=(1<<i.distbits)-1;e:do{f<15&&(p+=S[r++]<<f,f+=8,p+=S[r++]<<f,f+=8),y=m[p&_];t:for(;;){if(p>>>=E=y>>>24,f-=E,0==(E=y>>>16&255))A[a++]=65535&y;else{if(!(16&E)){if(!(64&E)){y=m[(65535&y)+(p&(1<<E)-1)];continue t}if(32&E){i.mode=12;break e}e.msg="invalid literal/length code",i.mode=30;break e}b=65535&y,(E&=15)&&(f<E&&(p+=S[r++]<<f,f+=8),b+=p&(1<<E)-1,p>>>=E,f-=E),f<15&&(p+=S[r++]<<f,f+=8,p+=S[r++]<<f,f+=8),y=g[p&v];i:for(;;){if(p>>>=E=y>>>24,f-=E,!(16&(E=y>>>16&255))){if(!(64&E)){y=g[(65535&y)+(p&(1<<E)-1)];continue i}e.msg="invalid distance code",i.mode=30;break e}if(w=65535&y,f<(E&=15)&&(p+=S[r++]<<f,(f+=8)<E&&(p+=S[r++]<<f,f+=8)),c<(w+=p&(1<<E)-1)){e.msg="invalid distance too far back",i.mode=30;break e}if(p>>>=E,f-=E,(E=a-o)<w){if(d<(E=w-E)&&i.sane){e.msg="invalid distance too far back",i.mode=30;break e}if(T=h,(I=0)===u){if(I+=l-E,E<b){for(b-=E;A[a++]=h[I++],--E;);I=a-w,T=A}}else if(u<E){if(I+=l+u-E,(E-=u)<b){for(b-=E;A[a++]=h[I++],--E;);if(I=0,u<b){for(b-=E=u;A[a++]=h[I++],--E;);I=a-w,T=A}}}else if(I+=u-E,E<b){for(b-=E;A[a++]=h[I++],--E;);I=a-w,T=A}for(;2<b;)A[a++]=T[I++],A[a++]=T[I++],A[a++]=T[I++],b-=3;b&&(A[a++]=T[I++],1<b&&(A[a++]=T[I++]))}else{for(I=a-w;A[a++]=A[I++],A[a++]=A[I++],A[a++]=A[I++],2<(b-=3););b&&(A[a++]=A[I++],1<b&&(A[a++]=A[I++]))}break}}break}}while(r<n&&a<s);r-=b=f>>3,p&=(1<<(f-=b<<3))-1,e.next_in=r,e.next_out=a,e.avail_in=r<n?n-r+5:5-(r-n),e.avail_out=a<s?s-a+257:257-(a-s),i.hold=p,i.bits=f}},{}],49:[function(e,t,i){var r=e("../utils/common"),n=e("./adler32"),a=e("./crc32"),o=e("./inffast"),s=e("./inftrees"),c=-2;function l(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function d(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function u(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(852),t.distcode=t.distdyn=new r.Buf32(592),t.sane=1,t.back=-1,0):c}function h(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,u(e)):c}function p(e,t){var i,r;return e&&e.state?(r=e.state,t<0?(i=0,t=-t):(i=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t)?c:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=i,r.wbits=t,h(e))):c}function f(e,t){var i,r;return e?(r=new d,(e.state=r).window=null,0!==(i=p(e,t))&&(e.state=null),i):c}var m,g,_=!0;function v(e){if(_){var t;for(m=new r.Buf32(512),g=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(1,e.lens,0,288,m,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(2,e.lens,0,32,g,0,e.work,{bits:5}),_=!1}e.lencode=m,e.lenbits=9,e.distcode=g,e.distbits=5}function y(e,t,i,n){var a,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new r.Buf8(o.wsize)),n>=o.wsize?(r.arraySet(o.window,t,i-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(n<(a=o.wsize-o.wnext)&&(a=n),r.arraySet(o.window,t,i-n,a,o.wnext),(n-=a)?(r.arraySet(o.window,t,i-n,n,0),o.wnext=n,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=a))),0}i.inflateReset=h,i.inflateReset2=p,i.inflateResetKeep=u,i.inflateInit=function(e){return f(e,15)},i.inflateInit2=f,i.inflate=function(e,t){var i,d,u,h,p,f,m,g,_,E,b,w,I,T,S,A,R,k,C,D,O,L,N,P,x=0,M=new r.Buf8(4),U=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return c;12===(i=e.state).mode&&(i.mode=13),p=e.next_out,u=e.output,m=e.avail_out,h=e.next_in,d=e.input,f=e.avail_in,g=i.hold,_=i.bits,E=f,b=m,L=0;e:for(;;)switch(i.mode){case 1:if(0===i.wrap){i.mode=13;break}for(;_<16;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(2&i.wrap&&35615===g){M[i.check=0]=255&g,M[1]=g>>>8&255,i.check=a(i.check,M,2,0),_=g=0,i.mode=2;break}if(i.flags=0,i.head&&(i.head.done=!1),!(1&i.wrap)||(((255&g)<<8)+(g>>8))%31){e.msg="incorrect header check",i.mode=30;break}if(8!=(15&g)){e.msg="unknown compression method",i.mode=30;break}if(_-=4,O=8+(15&(g>>>=4)),0===i.wbits)i.wbits=O;else if(O>i.wbits){e.msg="invalid window size",i.mode=30;break}i.dmax=1<<O,e.adler=i.check=1,i.mode=512&g?10:12,_=g=0;break;case 2:for(;_<16;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(i.flags=g,8!=(255&i.flags)){e.msg="unknown compression method",i.mode=30;break}if(57344&i.flags){e.msg="unknown header flags set",i.mode=30;break}i.head&&(i.head.text=g>>8&1),512&i.flags&&(M[0]=255&g,M[1]=g>>>8&255,i.check=a(i.check,M,2,0)),_=g=0,i.mode=3;case 3:for(;_<32;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}i.head&&(i.head.time=g),512&i.flags&&(M[0]=255&g,M[1]=g>>>8&255,M[2]=g>>>16&255,M[3]=g>>>24&255,i.check=a(i.check,M,4,0)),_=g=0,i.mode=4;case 4:for(;_<16;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}i.head&&(i.head.xflags=255&g,i.head.os=g>>8),512&i.flags&&(M[0]=255&g,M[1]=g>>>8&255,i.check=a(i.check,M,2,0)),_=g=0,i.mode=5;case 5:if(1024&i.flags){for(;_<16;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}i.length=g,i.head&&(i.head.extra_len=g),512&i.flags&&(M[0]=255&g,M[1]=g>>>8&255,i.check=a(i.check,M,2,0)),_=g=0}else i.head&&(i.head.extra=null);i.mode=6;case 6:if(1024&i.flags&&(f<(w=i.length)&&(w=f),w&&(i.head&&(O=i.head.extra_len-i.length,i.head.extra||(i.head.extra=new Array(i.head.extra_len)),r.arraySet(i.head.extra,d,h,w,O)),512&i.flags&&(i.check=a(i.check,d,w,h)),f-=w,h+=w,i.length-=w),i.length))break e;i.length=0,i.mode=7;case 7:if(2048&i.flags){if(0===f)break e;for(w=0;O=d[h+w++],i.head&&O&&i.length<65536&&(i.head.name+=String.fromCharCode(O)),O&&w<f;);if(512&i.flags&&(i.check=a(i.check,d,w,h)),f-=w,h+=w,O)break e}else i.head&&(i.head.name=null);i.length=0,i.mode=8;case 8:if(4096&i.flags){if(0===f)break e;for(w=0;O=d[h+w++],i.head&&O&&i.length<65536&&(i.head.comment+=String.fromCharCode(O)),O&&w<f;);if(512&i.flags&&(i.check=a(i.check,d,w,h)),f-=w,h+=w,O)break e}else i.head&&(i.head.comment=null);i.mode=9;case 9:if(512&i.flags){for(;_<16;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(g!==(65535&i.check)){e.msg="header crc mismatch",i.mode=30;break}_=g=0}i.head&&(i.head.hcrc=i.flags>>9&1,i.head.done=!0),e.adler=i.check=0,i.mode=12;break;case 10:for(;_<32;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}e.adler=i.check=l(g),_=g=0,i.mode=11;case 11:if(0===i.havedict)return e.next_out=p,e.avail_out=m,e.next_in=h,e.avail_in=f,i.hold=g,i.bits=_,2;e.adler=i.check=1,i.mode=12;case 12:if(5===t||6===t)break e;case 13:if(i.last){g>>>=7&_,_-=7&_,i.mode=27;break}for(;_<3;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}switch(i.last=1&g,_-=1,3&(g>>>=1)){case 0:i.mode=14;break;case 1:if(v(i),i.mode=20,6!==t)break;g>>>=2,_-=2;break e;case 2:i.mode=17;break;case 3:e.msg="invalid block type",i.mode=30}g>>>=2,_-=2;break;case 14:for(g>>>=7&_,_-=7&_;_<32;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if((65535&g)!=(g>>>16^65535)){e.msg="invalid stored block lengths",i.mode=30;break}if(i.length=65535&g,_=g=0,i.mode=15,6===t)break e;case 15:i.mode=16;case 16:if(w=i.length){if(f<w&&(w=f),m<w&&(w=m),0===w)break e;r.arraySet(u,d,h,w,p),f-=w,h+=w,m-=w,p+=w,i.length-=w;break}i.mode=12;break;case 17:for(;_<14;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(i.nlen=257+(31&g),g>>>=5,_-=5,i.ndist=1+(31&g),g>>>=5,_-=5,i.ncode=4+(15&g),g>>>=4,_-=4,286<i.nlen||30<i.ndist){e.msg="too many length or distance symbols",i.mode=30;break}i.have=0,i.mode=18;case 18:for(;i.have<i.ncode;){for(;_<3;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}i.lens[U[i.have++]]=7&g,g>>>=3,_-=3}for(;i.have<19;)i.lens[U[i.have++]]=0;if(i.lencode=i.lendyn,i.lenbits=7,N={bits:i.lenbits},L=s(0,i.lens,0,19,i.lencode,0,i.work,N),i.lenbits=N.bits,L){e.msg="invalid code lengths set",i.mode=30;break}i.have=0,i.mode=19;case 19:for(;i.have<i.nlen+i.ndist;){for(;A=(x=i.lencode[g&(1<<i.lenbits)-1])>>>16&255,R=65535&x,!((S=x>>>24)<=_);){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(R<16)g>>>=S,_-=S,i.lens[i.have++]=R;else{if(16===R){for(P=S+2;_<P;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(g>>>=S,_-=S,0===i.have){e.msg="invalid bit length repeat",i.mode=30;break}O=i.lens[i.have-1],w=3+(3&g),g>>>=2,_-=2}else if(17===R){for(P=S+3;_<P;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}_-=S,O=0,w=3+(7&(g>>>=S)),g>>>=3,_-=3}else{for(P=S+7;_<P;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}_-=S,O=0,w=11+(127&(g>>>=S)),g>>>=7,_-=7}if(i.have+w>i.nlen+i.ndist){e.msg="invalid bit length repeat",i.mode=30;break}for(;w--;)i.lens[i.have++]=O}}if(30===i.mode)break;if(0===i.lens[256]){e.msg="invalid code -- missing end-of-block",i.mode=30;break}if(i.lenbits=9,N={bits:i.lenbits},L=s(1,i.lens,0,i.nlen,i.lencode,0,i.work,N),i.lenbits=N.bits,L){e.msg="invalid literal/lengths set",i.mode=30;break}if(i.distbits=6,i.distcode=i.distdyn,N={bits:i.distbits},L=s(2,i.lens,i.nlen,i.ndist,i.distcode,0,i.work,N),i.distbits=N.bits,L){e.msg="invalid distances set",i.mode=30;break}if(i.mode=20,6===t)break e;case 20:i.mode=21;case 21:if(6<=f&&258<=m){e.next_out=p,e.avail_out=m,e.next_in=h,e.avail_in=f,i.hold=g,i.bits=_,o(e,b),p=e.next_out,u=e.output,m=e.avail_out,h=e.next_in,d=e.input,f=e.avail_in,g=i.hold,_=i.bits,12===i.mode&&(i.back=-1);break}for(i.back=0;A=(x=i.lencode[g&(1<<i.lenbits)-1])>>>16&255,R=65535&x,!((S=x>>>24)<=_);){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(A&&!(240&A)){for(k=S,C=A,D=R;A=(x=i.lencode[D+((g&(1<<k+C)-1)>>k)])>>>16&255,R=65535&x,!(k+(S=x>>>24)<=_);){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}g>>>=k,_-=k,i.back+=k}if(g>>>=S,_-=S,i.back+=S,i.length=R,0===A){i.mode=26;break}if(32&A){i.back=-1,i.mode=12;break}if(64&A){e.msg="invalid literal/length code",i.mode=30;break}i.extra=15&A,i.mode=22;case 22:if(i.extra){for(P=i.extra;_<P;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}i.length+=g&(1<<i.extra)-1,g>>>=i.extra,_-=i.extra,i.back+=i.extra}i.was=i.length,i.mode=23;case 23:for(;A=(x=i.distcode[g&(1<<i.distbits)-1])>>>16&255,R=65535&x,!((S=x>>>24)<=_);){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(!(240&A)){for(k=S,C=A,D=R;A=(x=i.distcode[D+((g&(1<<k+C)-1)>>k)])>>>16&255,R=65535&x,!(k+(S=x>>>24)<=_);){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}g>>>=k,_-=k,i.back+=k}if(g>>>=S,_-=S,i.back+=S,64&A){e.msg="invalid distance code",i.mode=30;break}i.offset=R,i.extra=15&A,i.mode=24;case 24:if(i.extra){for(P=i.extra;_<P;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}i.offset+=g&(1<<i.extra)-1,g>>>=i.extra,_-=i.extra,i.back+=i.extra}if(i.offset>i.dmax){e.msg="invalid distance too far back",i.mode=30;break}i.mode=25;case 25:if(0===m)break e;if(w=b-m,i.offset>w){if((w=i.offset-w)>i.whave&&i.sane){e.msg="invalid distance too far back",i.mode=30;break}I=w>i.wnext?(w-=i.wnext,i.wsize-w):i.wnext-w,w>i.length&&(w=i.length),T=i.window}else T=u,I=p-i.offset,w=i.length;for(m<w&&(w=m),m-=w,i.length-=w;u[p++]=T[I++],--w;);0===i.length&&(i.mode=21);break;case 26:if(0===m)break e;u[p++]=i.length,m--,i.mode=21;break;case 27:if(i.wrap){for(;_<32;){if(0===f)break e;f--,g|=d[h++]<<_,_+=8}if(b-=m,e.total_out+=b,i.total+=b,b&&(e.adler=i.check=i.flags?a(i.check,u,b,p-b):n(i.check,u,b,p-b)),b=m,(i.flags?g:l(g))!==i.check){e.msg="incorrect data check",i.mode=30;break}_=g=0}i.mode=28;case 28:if(i.wrap&&i.flags){for(;_<32;){if(0===f)break e;f--,g+=d[h++]<<_,_+=8}if(g!==(4294967295&i.total)){e.msg="incorrect length check",i.mode=30;break}_=g=0}i.mode=29;case 29:L=1;break e;case 30:L=-3;break e;case 31:return-4;default:return c}return e.next_out=p,e.avail_out=m,e.next_in=h,e.avail_in=f,i.hold=g,i.bits=_,(i.wsize||b!==e.avail_out&&i.mode<30&&(i.mode<27||4!==t))&&y(e,e.output,e.next_out,b-e.avail_out)?(i.mode=31,-4):(E-=e.avail_in,b-=e.avail_out,e.total_in+=E,e.total_out+=b,i.total+=b,i.wrap&&b&&(e.adler=i.check=i.flags?a(i.check,u,b,e.next_out-b):n(i.check,u,b,e.next_out-b)),e.data_type=i.bits+(i.last?64:0)+(12===i.mode?128:0)+(20===i.mode||15===i.mode?256:0),(0==E&&0===b||4===t)&&0===L&&(L=-5),L)},i.inflateEnd=function(e){if(!e||!e.state)return c;var t=e.state;return t.window&&(t.window=null),e.state=null,0},i.inflateGetHeader=function(e,t){var i;return e&&e.state&&2&(i=e.state).wrap?((i.head=t).done=!1,0):c},i.inflateSetDictionary=function(e,t){var i,r=t.length;return e&&e.state?0!==(i=e.state).wrap&&11!==i.mode?c:11===i.mode&&n(1,t,r,0)!==i.check?-3:y(e,t,r,r)?(i.mode=31,-4):(i.havedict=1,0):c},i.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,i){var r=e("../utils/common"),n=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],a=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],o=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],s=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(e,t,i,c,l,d,u,h){var p,f,m,g,_,v,y,E,b,w=h.bits,I=0,T=0,S=0,A=0,R=0,k=0,C=0,D=0,O=0,L=0,N=null,P=0,x=new r.Buf16(16),M=new r.Buf16(16),U=null,F=0;for(I=0;I<=15;I++)x[I]=0;for(T=0;T<c;T++)x[t[i+T]]++;for(R=w,A=15;1<=A&&0===x[A];A--);if(A<R&&(R=A),0===A)return l[d++]=20971520,l[d++]=20971520,h.bits=1,0;for(S=1;S<A&&0===x[S];S++);for(R<S&&(R=S),I=D=1;I<=15;I++)if(D<<=1,(D-=x[I])<0)return-1;if(0<D&&(0===e||1!==A))return-1;for(M[1]=0,I=1;I<15;I++)M[I+1]=M[I]+x[I];for(T=0;T<c;T++)0!==t[i+T]&&(u[M[t[i+T]]++]=T);if(v=0===e?(N=U=u,19):1===e?(N=n,P-=257,U=a,F-=257,256):(N=o,U=s,-1),I=S,_=d,C=T=L=0,m=-1,g=(O=1<<(k=R))-1,1===e&&852<O||2===e&&592<O)return 1;for(;;){for(y=I-C,b=u[T]<v?(E=0,u[T]):u[T]>v?(E=U[F+u[T]],N[P+u[T]]):(E=96,0),p=1<<I-C,S=f=1<<k;l[_+(L>>C)+(f-=p)]=y<<24|E<<16|b,0!==f;);for(p=1<<I-1;L&p;)p>>=1;if(0!==p?(L&=p-1,L+=p):L=0,T++,0==--x[I]){if(I===A)break;I=t[i+u[T]]}if(R<I&&(L&g)!==m){for(0===C&&(C=R),_+=S,D=1<<(k=I-C);k+C<A&&!((D-=x[k+C])<=0);)k++,D<<=1;if(O+=1<<k,1===e&&852<O||2===e&&592<O)return 1;l[m=L&g]=R<<24|k<<16|_-d}}return 0!==L&&(l[_+L]=I-C<<24|64<<16),h.bits=R,0}},{"../utils/common":41}],51:[function(e,t,i){t.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(e,t,i){var r=e("../utils/common");function n(e){for(var t=e.length;0<=--t;)e[t]=0}var a=256,o=286,s=30,c=15,l=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],d=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],u=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],h=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],p=new Array(576);n(p);var f=new Array(60);n(f);var m=new Array(512);n(m);var g=new Array(256);n(g);var _=new Array(29);n(_);var v,y,E,b=new Array(s);function w(e,t,i,r,n){this.static_tree=e,this.extra_bits=t,this.extra_base=i,this.elems=r,this.max_length=n,this.has_stree=e&&e.length}function I(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function T(e){return e<256?m[e]:m[256+(e>>>7)]}function S(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function A(e,t,i){e.bi_valid>16-i?(e.bi_buf|=t<<e.bi_valid&65535,S(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=i-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=i)}function R(e,t,i){A(e,i[2*t],i[2*t+1])}function k(e,t){for(var i=0;i|=1&e,e>>>=1,i<<=1,0<--t;);return i>>>1}function C(e,t,i){var r,n,a=new Array(16),o=0;for(r=1;r<=c;r++)a[r]=o=o+i[r-1]<<1;for(n=0;n<=t;n++){var s=e[2*n+1];0!==s&&(e[2*n]=k(a[s]++,s))}}function D(e){var t;for(t=0;t<o;t++)e.dyn_ltree[2*t]=0;for(t=0;t<s;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function O(e){8<e.bi_valid?S(e,e.bi_buf):0<e.bi_valid&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function L(e,t,i,r){var n=2*t,a=2*i;return e[n]<e[a]||e[n]===e[a]&&r[t]<=r[i]}function N(e,t,i){for(var r=e.heap[i],n=i<<1;n<=e.heap_len&&(n<e.heap_len&&L(t,e.heap[n+1],e.heap[n],e.depth)&&n++,!L(t,r,e.heap[n],e.depth));)e.heap[i]=e.heap[n],i=n,n<<=1;e.heap[i]=r}function P(e,t,i){var r,n,o,s,c=0;if(0!==e.last_lit)for(;r=e.pending_buf[e.d_buf+2*c]<<8|e.pending_buf[e.d_buf+2*c+1],n=e.pending_buf[e.l_buf+c],c++,0===r?R(e,n,t):(R(e,(o=g[n])+a+1,t),0!==(s=l[o])&&A(e,n-=_[o],s),R(e,o=T(--r),i),0!==(s=d[o])&&A(e,r-=b[o],s)),c<e.last_lit;);R(e,256,t)}function x(e,t){var i,r,n,a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,l=t.stat_desc.elems,d=-1;for(e.heap_len=0,e.heap_max=573,i=0;i<l;i++)0!==a[2*i]?(e.heap[++e.heap_len]=d=i,e.depth[i]=0):a[2*i+1]=0;for(;e.heap_len<2;)a[2*(n=e.heap[++e.heap_len]=d<2?++d:0)]=1,e.depth[n]=0,e.opt_len--,s&&(e.static_len-=o[2*n+1]);for(t.max_code=d,i=e.heap_len>>1;1<=i;i--)N(e,a,i);for(n=l;i=e.heap[1],e.heap[1]=e.heap[e.heap_len--],N(e,a,1),r=e.heap[1],e.heap[--e.heap_max]=i,e.heap[--e.heap_max]=r,a[2*n]=a[2*i]+a[2*r],e.depth[n]=(e.depth[i]>=e.depth[r]?e.depth[i]:e.depth[r])+1,a[2*i+1]=a[2*r+1]=n,e.heap[1]=n++,N(e,a,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var i,r,n,a,o,s,l=t.dyn_tree,d=t.max_code,u=t.stat_desc.static_tree,h=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,f=t.stat_desc.extra_base,m=t.stat_desc.max_length,g=0;for(a=0;a<=c;a++)e.bl_count[a]=0;for(l[2*e.heap[e.heap_max]+1]=0,i=e.heap_max+1;i<573;i++)m<(a=l[2*l[2*(r=e.heap[i])+1]+1]+1)&&(a=m,g++),l[2*r+1]=a,d<r||(e.bl_count[a]++,o=0,f<=r&&(o=p[r-f]),s=l[2*r],e.opt_len+=s*(a+o),h&&(e.static_len+=s*(u[2*r+1]+o)));if(0!==g){do{for(a=m-1;0===e.bl_count[a];)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[m]--,g-=2}while(0<g);for(a=m;0!==a;a--)for(r=e.bl_count[a];0!==r;)d<(n=e.heap[--i])||(l[2*n+1]!==a&&(e.opt_len+=(a-l[2*n+1])*l[2*n],l[2*n+1]=a),r--)}}(e,t),C(a,d,e.bl_count)}function M(e,t,i){var r,n,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),t[2*(i+1)+1]=65535,r=0;r<=i;r++)n=o,o=t[2*(r+1)+1],++s<c&&n===o||(s<l?e.bl_tree[2*n]+=s:0!==n?(n!==a&&e.bl_tree[2*n]++,e.bl_tree[32]++):s<=10?e.bl_tree[34]++:e.bl_tree[36]++,a=n,l=(s=0)===o?(c=138,3):n===o?(c=6,3):(c=7,4))}function U(e,t,i){var r,n,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),r=0;r<=i;r++)if(n=o,o=t[2*(r+1)+1],!(++s<c&&n===o)){if(s<l)for(;R(e,n,e.bl_tree),0!=--s;);else 0!==n?(n!==a&&(R(e,n,e.bl_tree),s--),R(e,16,e.bl_tree),A(e,s-3,2)):s<=10?(R(e,17,e.bl_tree),A(e,s-3,3)):(R(e,18,e.bl_tree),A(e,s-11,7));a=n,l=(s=0)===o?(c=138,3):n===o?(c=6,3):(c=7,4)}}n(b);var F=!1;function B(e,t,i,n){var a,o,s;A(e,0+(n?1:0),3),o=t,s=i,O(a=e),S(a,s),S(a,~s),r.arraySet(a.pending_buf,a.window,o,s,a.pending),a.pending+=s}i._tr_init=function(e){F||(function(){var e,t,i,r,n,a=new Array(16);for(r=i=0;r<28;r++)for(_[r]=i,e=0;e<1<<l[r];e++)g[i++]=r;for(g[i-1]=r,r=n=0;r<16;r++)for(b[r]=n,e=0;e<1<<d[r];e++)m[n++]=r;for(n>>=7;r<s;r++)for(b[r]=n<<7,e=0;e<1<<d[r]-7;e++)m[256+n++]=r;for(t=0;t<=c;t++)a[t]=0;for(e=0;e<=143;)p[2*e+1]=8,e++,a[8]++;for(;e<=255;)p[2*e+1]=9,e++,a[9]++;for(;e<=279;)p[2*e+1]=7,e++,a[7]++;for(;e<=287;)p[2*e+1]=8,e++,a[8]++;for(C(p,287,a),e=0;e<s;e++)f[2*e+1]=5,f[2*e]=k(e,5);v=new w(p,l,257,o,c),y=new w(f,d,0,s,c),E=new w(new Array(0),u,0,19,7)}(),F=!0),e.l_desc=new I(e.dyn_ltree,v),e.d_desc=new I(e.dyn_dtree,y),e.bl_desc=new I(e.bl_tree,E),e.bi_buf=0,e.bi_valid=0,D(e)},i._tr_stored_block=B,i._tr_flush_block=function(e,t,i,r){var n,o,s=0;0<e.level?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,i=4093624447;for(t=0;t<=31;t++,i>>>=1)if(1&i&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<a;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),x(e,e.l_desc),x(e,e.d_desc),s=function(e){var t;for(M(e,e.dyn_ltree,e.l_desc.max_code),M(e,e.dyn_dtree,e.d_desc.max_code),x(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*h[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),n=e.opt_len+3+7>>>3,(o=e.static_len+3+7>>>3)<=n&&(n=o)):n=o=i+5,i+4<=n&&-1!==t?B(e,t,i,r):4===e.strategy||o===n?(A(e,2+(r?1:0),3),P(e,p,f)):(A(e,4+(r?1:0),3),function(e,t,i,r){var n;for(A(e,t-257,5),A(e,i-1,5),A(e,r-4,4),n=0;n<r;n++)A(e,e.bl_tree[2*h[n]+1],3);U(e,e.dyn_ltree,t-1),U(e,e.dyn_dtree,i-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,s+1),P(e,e.dyn_ltree,e.dyn_dtree)),D(e),r&&O(e)},i._tr_tally=function(e,t,i){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&i,e.last_lit++,0===t?e.dyn_ltree[2*i]++:(e.matches++,t--,e.dyn_ltree[2*(g[i]+a+1)]++,e.dyn_dtree[2*T(t)]++),e.last_lit===e.lit_bufsize-1},i._tr_align=function(e){var t;A(e,2,3),R(e,256,p),16===(t=e).bi_valid?(S(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):8<=t.bi_valid&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}},{"../utils/common":41}],53:[function(e,t,i){t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,i){(function(e){!function(e){if(!e.setImmediate){var t,i,r,n,a=1,o={},s=!1,c=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,t="[object process]"==={}.toString.call(e.process)?function(e){process.nextTick(function(){u(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,i=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=i,t}}()?(n="setImmediate$"+Math.random()+"$",e.addEventListener?e.addEventListener("message",h,!1):e.attachEvent("onmessage",h),function(t){e.postMessage(n+t,"*")}):e.MessageChannel?((r=new MessageChannel).port1.onmessage=function(e){u(e.data)},function(e){r.port2.postMessage(e)}):c&&"onreadystatechange"in c.createElement("script")?(i=c.documentElement,function(e){var t=c.createElement("script");t.onreadystatechange=function(){u(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):function(e){setTimeout(u,0,e)},l.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var i=new Array(arguments.length-1),r=0;r<i.length;r++)i[r]=arguments[r+1];var n={callback:e,args:i};return o[a]=n,t(a),a++},l.clearImmediate=d}function d(e){delete o[e]}function u(e){if(s)setTimeout(u,0,e);else{var t=o[e];if(t){s=!0;try{!function(e){var t=e.callback,i=e.args;switch(i.length){case 0:t();break;case 1:t(i[0]);break;case 2:t(i[0],i[1]);break;case 3:t(i[0],i[1],i[2]);break;default:t.apply(undefined,i)}}(t)}finally{d(e),s=!1}}}}function h(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(n)&&u(+t.data.slice(n.length))}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[10])(10)})}),bA=mA((e,t)=>{var i=Object.prototype.hasOwnProperty,r="~";function n(){}function a(e,t,i){this.fn=e,this.context=t,this.once=i||!1}function o(e,t,i,n,o){if("function"!=typeof i)throw new TypeError("The listener must be a function");var s=new a(i,n||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){0===--e._eventsCount?e._events=new n:delete e._events[t]}function c(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(r=!1)),c.prototype.eventNames=function(){var e,t,n=[];if(0===this._eventsCount)return n;for(t in e=this._events)i.call(e,t)&&n.push(r?t.slice(1):t);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(e)):n},c.prototype.listeners=function(e){var t=r?r+e:e,i=this._events[t];if(!i)return[];if(i.fn)return[i.fn];for(var n=0,a=i.length,o=new Array(a);n<a;n++)o[n]=i[n].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,i=this._events[t];return i?i.fn?1:i.length:0},c.prototype.emit=function(e,t,i,n,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c,l,d=this._events[s],u=arguments.length;if(d.fn){switch(d.once&&this.removeListener(e,d.fn,void 0,!0),u){case 1:return d.fn.call(d.context),!0;case 2:return d.fn.call(d.context,t),!0;case 3:return d.fn.call(d.context,t,i),!0;case 4:return d.fn.call(d.context,t,i,n),!0;case 5:return d.fn.call(d.context,t,i,n,a),!0;case 6:return d.fn.call(d.context,t,i,n,a,o),!0}for(l=1,c=new Array(u-1);l<u;l++)c[l-1]=arguments[l];d.fn.apply(d.context,c)}else{var h,p=d.length;for(l=0;l<p;l++)switch(d[l].once&&this.removeListener(e,d[l].fn,void 0,!0),u){case 1:d[l].fn.call(d[l].context);break;case 2:d[l].fn.call(d[l].context,t);break;case 3:d[l].fn.call(d[l].context,t,i);break;case 4:d[l].fn.call(d[l].context,t,i,n);break;default:if(!c)for(h=1,c=new Array(u-1);h<u;h++)c[h-1]=arguments[h];d[l].fn.apply(d[l].context,c)}}return!0},c.prototype.on=function(e,t,i){return o(this,e,t,i,!1)},c.prototype.once=function(e,t,i){return o(this,e,t,i,!0)},c.prototype.removeListener=function(e,t,i,n){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!n||o.once)&&(!i||o.context===i)&&s(this,a);else{for(var c=0,l=[],d=o.length;c<d;c++)(o[c].fn!==t||n&&!o[c].once||i&&o[c].context!==i)&&l.push(o[c]);l.length?this._events[a]=1===l.length?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new n,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,void 0!==t&&(t.exports=c)}),wA=mA((e,t)=>{var i=t.exports={v:[{name:"version",reg:/^(\d*)$/}],o:[{name:"origin",reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:["username","sessionId","sessionVersion","netType","ipVer","address"],format:"%s %s %d %s IP%d %s"}],s:[{name:"name"}],i:[{name:"description"}],u:[{name:"uri"}],e:[{name:"email"}],p:[{name:"phone"}],z:[{name:"timezones"}],r:[{name:"repeats"}],t:[{name:"timing",reg:/^(\d*) (\d*)/,names:["start","stop"],format:"%d %d"}],c:[{name:"connection",reg:/^IN IP(\d) (\S*)/,names:["version","ip"],format:"IN IP%d %s"}],b:[{push:"bandwidth",reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:["type","limit"],format:"%s:%s"}],m:[{reg:/^(\w*) (\d*) ([\w/]*)(?: (.*))?/,names:["type","port","protocol","payloads"],format:"%s %d %s %s"}],a:[{push:"rtp",reg:/^rtpmap:(\d*) ([\w\-.]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:["payload","codec","rate","encoding"],format:function(e){return e.encoding?"rtpmap:%d %s/%s/%s":e.rate?"rtpmap:%d %s/%s":"rtpmap:%d %s"}},{push:"fmtp",reg:/^fmtp:(\d*) ([\S| ]*)/,names:["payload","config"],format:"fmtp:%d %s"},{name:"control",reg:/^control:(.*)/,format:"control:%s"},{name:"rtcp",reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:["port","netType","ipVer","address"],format:function(e){return null!=e.address?"rtcp:%d %s IP%d %s":"rtcp:%d"}},{push:"rtcpFbTrrInt",reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:["payload","value"],format:"rtcp-fb:%s trr-int %d"},{push:"rtcpFb",reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:["payload","type","subtype"],format:function(e){return null!=e.subtype?"rtcp-fb:%s %s %s":"rtcp-fb:%s %s"}},{push:"ext",reg:/^extmap:(\d+)(?:\/(\w+))?(?: (urn:ietf:params:rtp-hdrext:encrypt))? (\S*)(?: (\S*))?/,names:["value","direction","encrypt-uri","uri","config"],format:function(e){return"extmap:%d"+(e.direction?"/%s":"%v")+(e["encrypt-uri"]?" %s":"%v")+" %s"+(e.config?" %s":"")}},{name:"extmapAllowMixed",reg:/^(extmap-allow-mixed)/},{push:"crypto",reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:["id","suite","config","sessionConfig"],format:function(e){return null!=e.sessionConfig?"crypto:%d %s %s %s":"crypto:%d %s %s"}},{name:"setup",reg:/^setup:(\w*)/,format:"setup:%s"},{name:"connectionType",reg:/^connection:(new|existing)/,format:"connection:%s"},{name:"mid",reg:/^mid:([^\s]*)/,format:"mid:%s"},{name:"msid",reg:/^msid:(.*)/,format:"msid:%s"},{name:"ptime",reg:/^ptime:(\d*(?:\.\d*)*)/,format:"ptime:%d"},{name:"maxptime",reg:/^maxptime:(\d*(?:\.\d*)*)/,format:"maxptime:%d"},{name:"direction",reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:"icelite",reg:/^(ice-lite)/},{name:"iceUfrag",reg:/^ice-ufrag:(\S*)/,format:"ice-ufrag:%s"},{name:"icePwd",reg:/^ice-pwd:(\S*)/,format:"ice-pwd:%s"},{name:"fingerprint",reg:/^fingerprint:(\S*) (\S*)/,names:["type","hash"],format:"fingerprint:%s %s"},{push:"candidates",reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?(?: network-id (\d*))?(?: network-cost (\d*))?/,names:["foundation","component","transport","priority","ip","port","type","raddr","rport","tcptype","generation","network-id","network-cost"],format:function(e){var t="candidate:%s %d %s %d %s %d typ %s";return t+=null!=e.raddr?" raddr %s rport %d":"%v%v",t+=null!=e.tcptype?" tcptype %s":"%v",null!=e.generation&&(t+=" generation %d"),t+=null!=e["network-id"]?" network-id %d":"%v",t+=null!=e["network-cost"]?" network-cost %d":"%v"}},{name:"endOfCandidates",reg:/^(end-of-candidates)/},{name:"remoteCandidates",reg:/^remote-candidates:(.*)/,format:"remote-candidates:%s"},{name:"iceOptions",reg:/^ice-options:(\S*)/,format:"ice-options:%s"},{push:"ssrcs",reg:/^ssrc:(\d*) ([\w_-]*)(?::(.*))?/,names:["id","attribute","value"],format:function(e){var t="ssrc:%d";return null!=e.attribute&&(t+=" %s",null!=e.value&&(t+=":%s")),t}},{push:"ssrcGroups",reg:/^ssrc-group:([\x21\x23\x24\x25\x26\x27\x2A\x2B\x2D\x2E\w]*) (.*)/,names:["semantics","ssrcs"],format:"ssrc-group:%s %s"},{name:"msidSemantic",reg:/^msid-semantic:\s?(\w*) (\S*)/,names:["semantic","token"],format:"msid-semantic: %s %s"},{push:"groups",reg:/^group:(\w*) (.*)/,names:["type","mids"],format:"group:%s %s"},{name:"rtcpMux",reg:/^(rtcp-mux)/},{name:"rtcpRsize",reg:/^(rtcp-rsize)/},{name:"sctpmap",reg:/^sctpmap:([\w_/]*) (\S*)(?: (\S*))?/,names:["sctpmapNumber","app","maxMessageSize"],format:function(e){return null!=e.maxMessageSize?"sctpmap:%s %s %s":"sctpmap:%s %s"}},{name:"xGoogleFlag",reg:/^x-google-flag:([^\s]*)/,format:"x-google-flag:%s"},{push:"rids",reg:/^rid:([\d\w]+) (\w+)(?: ([\S| ]*))?/,names:["id","direction","params"],format:function(e){return e.params?"rid:%s %s %s":"rid:%s %s"}},{push:"imageattrs",reg:new RegExp("^imageattr:(\\d+|\\*)[\\s\\t]+(send|recv)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*)(?:[\\s\\t]+(recv|send)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*))?"),names:["pt","dir1","attrs1","dir2","attrs2"],format:function(e){return"imageattr:%s %s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast",reg:new RegExp("^simulcast:(send|recv) ([a-zA-Z0-9\\-_~;,]+)(?:\\s?(send|recv) ([a-zA-Z0-9\\-_~;,]+))?$"),names:["dir1","list1","dir2","list2"],format:function(e){return"simulcast:%s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast_03",reg:/^simulcast:[\s\t]+([\S+\s\t]+)$/,names:["value"],format:"simulcast: %s"},{name:"framerate",reg:/^framerate:(\d+(?:$|\.\d+))/,format:"framerate:%s"},{name:"sourceFilter",reg:/^source-filter: *(excl|incl) (\S*) (IP4|IP6|\*) (\S*) (.*)/,names:["filterMode","netType","addressTypes","destAddress","srcList"],format:"source-filter: %s %s %s %s %s"},{name:"bundleOnly",reg:/^(bundle-only)/},{name:"label",reg:/^label:(.+)/,format:"label:%s"},{name:"sctpPort",reg:/^sctp-port:(\d+)$/,format:"sctp-port:%s"},{name:"maxMessageSize",reg:/^max-message-size:(\d+)$/,format:"max-message-size:%s"},{push:"tsRefClocks",reg:/^ts-refclk:([^\s=]*)(?:=(\S*))?/,names:["clksrc","clksrcExt"],format:function(e){return"ts-refclk:%s"+(null!=e.clksrcExt?"=%s":"")}},{name:"mediaClk",reg:/^mediaclk:(?:id=(\S*))? *([^\s=]*)(?:=(\S*))?(?: *rate=(\d+)\/(\d+))?/,names:["id","mediaClockName","mediaClockValue","rateNumerator","rateDenominator"],format:function(e){var t="mediaclk:";return t+=null!=e.id?"id=%s %s":"%v%s",t+=null!=e.mediaClockValue?"=%s":"",t+=null!=e.rateNumerator?" rate=%s":"",t+=null!=e.rateDenominator?"/%s":""}},{name:"keywords",reg:/^keywds:(.+)$/,format:"keywds:%s"},{name:"content",reg:/^content:(.+)/,format:"content:%s"},{name:"bfcpFloorCtrl",reg:/^floorctrl:(c-only|s-only|c-s)/,format:"floorctrl:%s"},{name:"bfcpConfId",reg:/^confid:(\d+)/,format:"confid:%s"},{name:"bfcpUserId",reg:/^userid:(\d+)/,format:"userid:%s"},{name:"bfcpFloorId",reg:/^floorid:(.+) (?:m-stream|mstrm):(.+)/,names:["id","mStream"],format:"floorid:%s mstrm:%s"},{push:"invalid",names:["value"]}]};Object.keys(i).forEach(function(e){i[e].forEach(function(e){e.reg||(e.reg=/(.*)/),e.format||(e.format="%s")})})}),IA=mA(e=>{var t=function(e){return String(Number(e))===e?Number(e):e},i=function(e,i,r){var n=e.name&&e.names;e.push&&!i[e.push]?i[e.push]=[]:n&&!i[e.name]&&(i[e.name]={});var a=e.push?{}:n?i[e.name]:i;(function(e,i,r,n){if(n&&!r)i[n]=t(e[1]);else for(var a=0;a<r.length;a+=1)null!=e[a+1]&&(i[r[a]]=t(e[a+1]))})(r.match(e.reg),a,e.names,e.name),e.push&&i[e.push].push(a)},r=wA(),n=RegExp.prototype.test.bind(/^([a-z])=(.*)/);e.parse=function(e){var t={},a=[],o=t;return e.split(/(\r\n|\r|\n)/).filter(n).forEach(function(e){var t=e[0],n=e.slice(2);"m"===t&&(a.push({rtp:[],fmtp:[]}),o=a[a.length-1]);for(var s=0;s<(r[t]||[]).length;s+=1){var c=r[t][s];if(c.reg.test(n))return i(c,o,n)}}),t.media=a,t};var a=function(e,i){var r=i.split(/=(.+)/,2);return 2===r.length?e[r[0]]=t(r[1]):1===r.length&&i.length>1&&(e[r[0]]=void 0),e};e.parseParams=function(e){return e.split(/;\s?/).reduce(a,{})},e.parseFmtpConfig=e.parseParams,e.parsePayloads=function(e){return e.toString().split(" ").map(Number)},e.parseRemoteCandidates=function(e){for(var i=[],r=e.split(" ").map(t),n=0;n<r.length;n+=3)i.push({component:r[n],ip:r[n+1],port:r[n+2]});return i},e.parseImageAttributes=function(e){return e.split(" ").map(function(e){return e.substring(1,e.length-1).split(",").reduce(a,{})})},e.parseSimulcastStreamList=function(e){return e.split(";").map(function(e){return e.split(",").map(function(e){var i,r=!1;return"~"!==e[0]?i=t(e):(i=t(e.substring(1,e.length)),r=!0),{scid:i,paused:r}})})}}),TA=mA((e,t)=>{var i=wA(),r=/%[sdv%]/g,n=function(e){var t=1,i=arguments,n=i.length;return e.replace(r,function(e){if(t>=n)return e;var r=i[t];switch(t+=1,e){case"%%":return"%";case"%s":return String(r);case"%d":return Number(r);case"%v":return""}})},a=function(e,t,i){var r=[e+"="+(t.format instanceof Function?t.format(t.push?i:i[t.name]):t.format)];if(t.names)for(var a=0;a<t.names.length;a+=1){var o=t.names[a];t.name?r.push(i[t.name][o]):r.push(i[t.names[a]])}else r.push(i[t.name]);return n.apply(null,r)},o=["v","o","s","i","u","e","p","c","b","t","r","z","a"],s=["i","c","b","a"];t.exports=function(e,t){t=t||{},null==e.version&&(e.version=0),null==e.name&&(e.name=" "),e.media.forEach(function(e){null==e.payloads&&(e.payloads="")});var r=t.outerOrder||o,n=t.innerOrder||s,c=[];return r.forEach(function(t){i[t].forEach(function(i){i.name in e&&null!=e[i.name]?c.push(a(t,i,e)):i.push in e&&null!=e[i.push]&&e[i.push].forEach(function(e){c.push(a(t,i,e))})})}),e.media.forEach(function(e){c.push(a("m",i.m[0],e)),n.forEach(function(t){i[t].forEach(function(i){i.name in e&&null!=e[i.name]?c.push(a(t,i,e)):i.push in e&&null!=e[i.push]&&e[i.push].forEach(function(e){c.push(a(t,i,e))})})})}),c.join("\r\n")+"\r\n"}}),SA=mA(e=>{var t=IA(),i=TA(),r=wA();e.grammar=r,e.write=i,e.parse=t.parse,e.parseParams=t.parseParams,e.parseFmtpConfig=t.parseFmtpConfig,e.parsePayloads=t.parsePayloads,e.parseRemoteCandidates=t.parseRemoteCandidates,e.parseImageAttributes=t.parseImageAttributes,e.parseSimulcastStreamList=t.parseSimulcastStreamList}),AA=((eA=AA||{}).ROOM_DESTROY="1",eA.JOIN_START="21",eA.JOIN_SCHEDULE_SUCCESS="22",eA.JOIN_SIGNAL_CONNECTION_START="23",eA.JOIN_SIGNAL_CONNECTION_END="24",eA.JOIN_SEND_CMD="25",eA.JOIN_RECEIVED_CMD_RES="26",eA.JOIN_SUCCESS="27",eA.JOIN_FAILED="28",eA.LEAVE_START="51",eA.LEAVE_SEND_CMD="52",eA.LEAVE_SUCCESS="53",eA.PUBLISH_START="61",eA.SEND_FIRST_VIDEO_FRAME="62",eA.PUBLISH_FAILED="63",eA.SUBSCRIBE_START="81",eA.SUBSCRIBE_SUCCESS="82",eA.SUBSCRIBE_FAILED="84",eA.UNSUBSCRIBE_SUCCESS="83",eA.LOCAL_TRACK_CAPTURE_START="101",eA.LOCAL_TRACK_CAPTURE_SUCCESS="102",eA.LOCAL_TRACK_CAPTURE_FAILED="103",eA.LOCAL_TRACK_PUBLISHED="104",eA.LOCAL_TRACK_UNPUBLISHED="105",eA.LOCAL_TRACK_REPLACED="106",eA.SWITCH_DEVICE_SUCCESS="107",eA.TRACK_MUTED="108",eA.TRACK_UNMUTED="109",eA.REMOTE_TRACK_SUBSCRIBED="110",eA.REMOTE_TRACK_UNSUBSCRIBED="111",eA.LOCAL_TRACK_RECAPTURE="112",eA.LOCAL_AUDIO_STARTED="113",eA.LOCAL_AUDIO_STOPPED="114",eA.REMOTE_AUDIO_STARTED="115",eA.REMOTE_AUDIO_STOPPED="116",eA.LOCAL_TRACK_STOPPED="117",eA.LOCAL_VIDEO_TRACK_PREPROCESSED="118",eA.PLAY_TRACK_START="151",eA.PLAYER_STATE_CHANGED="152",eA.VIDEO_LOADED_DATA="153",eA.AUTOPLAY_DIALOG_CLICK_CONFIRM="154",eA.AUDIO_CONTEXT_LONG_SUSPENDED="155",eA.REMOTE_VIDEO_PLAY_START="156",eA.REMOTE_VIDEO_PLAY_FINISH="157",eA.SIGNAL_CONNECTION_STATE_CHANGED="201",eA.PEER_CONNECTION_STATE_CHANGED="202",eA.SINGLE_CONNECTION_STAT="203",eA.SPC_RECONNECTED="204",eA.HEARTBEAT_REPORT="251",eA.RECEIVED_PUBLISHED_USER_LIST="252",eA.REMOTE_PUBLISH_STATE_CHANGED="253",eA.AUDIO_LEVEL_INTERVAL="260",eA.NETWORK_QUALITY="261",eA.VIDEO_CODEC_IMPLEMENTATION_CHANGED="262",eA.QUALITY_LIMITATION_CHANGED="263",eA.LOG="264",eA.AUDIO_PROCESSOR_DEBUG="265",eA.SSO_SWITCH="266",eA.SEI_MESSAGE="267",eA.USER_PAUSE_IN_PIP="268",eA.USER_RESUME_IN_PIP="269",eA.ENTER_PICTURE_IN_PICTURE="270",eA.LEAVE_PICTURE_IN_PICTURE="271",eA.SWITCH_ROOM_START="401",eA.SWITCH_ROOM_SUCCESS="407",eA.SWITCH_ROOM_FAILED="408",eA);function RA(e){return kA((t,i)=>async function(){for(var i=arguments.length,r=new Array(i),n=0;n<i;n++)r[n]=arguments[n];let a=await t.apply(this,r);return await e.call(this,...r),a})}function kA(e){return function(t,i,r){return r.value=e(r.value,i),r}}var CA=new WeakMap;function DA(e,t){return kA((i,r)=>function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];let o=CA.get(this);o||(o=new Map,CA.set(this,o));let s=t(...n),c=o.get(s);if(!c||c<=0){i.apply(this,n);let t=setTimeout(()=>{var e;null==(e=CA.get(this))||e.delete(s)},e);o.set(s,t)}else{clearTimeout(c);let t=window.setTimeout(()=>{var e;i.apply(this,n),null==(e=CA.get(this))||e.delete(s)},e);o.set(s,t)}})}var OA,LA,NA=((OA=NA||{})[OA.none=0]="none",OA[OA.horizontal=1]="horizontal",OA[OA.vertical=2]="vertical",OA),PA="5.0.0",xA="undefined"!=typeof importScripts,MA="undefined"!=typeof registerProcessor,UA="https://".concat("web.sdk.qcloud.com","/trtc/webrtc/doc"),FA="https://cloud.tencent.com/document/product/647/85386",BA="https://trtc.io/document/56025",VA="jssdk_log",HA="qcloud",jA=((LA=jA||{})[LA.TRACE=0]="TRACE",LA[LA.DEBUG=1]="DEBUG",LA[LA.INFO=2]="INFO",LA[LA.WARN=3]="WARN",LA[LA.ERROR=4]="ERROR",LA[LA.NONE=5]="NONE",LA),zA={unknown:0,wifi:1,"4g":2,"3g":3,"2g":4,wired:5,"5g":6},WA={width:640,height:480,frameRate:15,bitrate:500},GA="canvas",qA="audio",KA="video",YA="screen",XA="big",ZA="mute",JA="unmute",QA="ended",$A="playing",eR="pause",tR="error",iR="loadstart",rR="loadeddata",nR="loadedmetadata",aR="audioinput",oR="videoinput",sR="enterpictureinpicture",cR="leavepictureinpicture",lR="fullscreenchange",dR="resize",uR="player-error",hR="load-worklet",pR="getUserMedia-retry",fR="default",mR=2e3,gR=["width","height","frameRate","facingMode","sampleRate","sampleSize","channelCount","deviceId","min","max"],_R={alpha:!0,antialias:!1,premultipliedAlpha:!1,preserveDrawingBuffer:!1,depth:!1,stencil:!1,failIfMajorPerformanceCaveat:!0,powerPreference:"low-power"};function vR(e){let{frame:t,onDump:i}=e;return null==i||i(),t}function yR(e){let{frame:t,onDump:i}=e;return null==i||i(),t}function ER(e){let{frame:t,onDump:i}=e;return null==i||i(),t}function bR(e){let{frame:t,onDump:i}=e;return null==i||i(),t}var wR="Log",IR="Network",TR="Dump",SR="Dump (PCM)",AR="Dump (Opus)",RR="Dumping",kR="End",CR="Upload Log",DR="Export Log",OR="Hide",LR="goBottom",NR="backTop",PR="Clear Log",xR="Uplink",MR="Downlink",UR="No Data",FR="Basic",BR="Duration",VR="Video",HR="Audio",jR="Screen",zR={"play() error: NotAllowedError:":{tips:e=>e.includes("main <video>")||e.includes("main <audio>")?"Remote stream auto play is restricted and playback fails":"Local stream playback failure, generally only occurs in Android WeChat devices, no need to handle",color:"red",class:"red"},"updateStream() try to recover local stream":{tips:"Device acquisition exception, automatic recovery is in progress"},"updateStream() recover local stream successfully":{tips:"Device acquisition exception, automatic recovery is successful"},"updateStream() failed to recover local stream":{tips:"Device acquisition exception, automatic recovery failed"},"main stream - video track is muted":{tips:"Indicates that the received video data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"main stream - audio track is muted":{tips:"Indicates that the received audio data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"auxiliary stream - video track is muted":{tips:"Indicates that the received screen sharing data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"main stream - video track is unable to provide media output":{tips:"Indicates that the received video data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"main stream - audio track is unable to provide media output":{tips:"Indicates that the received audio data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"auxiliary stream - video track is unable to provide media output":{tips:"Indicates that the received screen sharing data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"main stream - video track is unmuted":{tips:"Received enough playback video data"},"main stream - audio track is unmuted":{tips:"Received enough playback audio data"},"auxiliary stream - video track is unmuted":{tips:"Received enough playback screen sharing data"},"main stream - audio player track is ended":{tips:"Remote audio track stopped"},"main stream - video player track is ended":{tips:"Remote video track stopped"},"auxiliary stream - video player track is ended":{tips:"Received enough playback screen sharing data"},"stream - video track is muted":{tips:"Camera capture is paused, usually due to the device being occupied by other applications or the browser media permission being revoked. The client needs to re-capture.",color:"orange"},"stream - video track is unable to provide media output":{tips:"The camera acquisition is paused, usually because the device is occupied by other applications or the browser media permissions are revoked, and the customer needs to re-acquire. SDK v4.11.4+ will automatically resume acquisition without customer intervention",color:"orange"},"video track is unable to provide media output":{tips:e=>e.includes("↓")?"The remote track is temporarily unable to decode data, which may be caused by network fluctuations":"The camera acquisition is paused, usually because the device is occupied by other applications or the browser media permissions are revoked. The SDK will automatically resume the acquisition.",color:"orange"},"stream - video player track is ended":{tips:"The camera acquisition stops, usually because the device is unplugged. In this case, the SDK will automatically resume acquisition, and the access side does not need to handle it. It may also be caused by the device being occupied by other applications or the browser media permissions being reclaimed. It is recommended to remind the user to re-acquire on the page."},"video player track is ended":{tips:"The camera acquisition stops, usually because the device is unplugged. In this case, the SDK will automatically resume acquisition, and the access side does not need to handle it. It may also be caused by the device being occupied by other applications or the browser media permissions being reclaimed. It is recommended to remind the user to re-acquire on the page."},"stream - audio track is muted":{tips:"Microphone capture is paused, usually due to the device being occupied by other applications or the browser media permission being revoked. The client needs to re-capture.",color:"orange"},"audio track is unable to provide media output":{tips:e=>e.includes("↓")?"The remote track is temporarily unable to decode data, which may be caused by network fluctuations":"Microphone acquisition is paused, usually because the device is occupied by other applications or the browser media permissions are revoked. The SDK will automatically resume the acquisition.",color:"orange"},"stream - audio track is unable to provide media output":{tips:"The microphone acquisition is paused, usually because the device is occupied by other applications or the browser media permissions are revoked. The SDK will automatically resume the acquisition.",color:"orange"},"stream - audio player track is ended":{tips:"The microphone acquisition stops, usually because the device is unplugged. In this case, the SDK will automatically resume acquisition, and the access side does not need to handle it. It may also be caused by the device being occupied by other applications or the browser media permissions being reclaimed. It is recommended to remind the user to re-acquire on the page."},"audio player track is ended":{tips:"The microphone acquisition stops, usually because the device is unplugged. In this case, the SDK will automatically resume acquisition, and the access side does not need to handle it. It may also be caused by the device being occupied by other applications or the browser media permissions being reclaimed. It is recommended to remind the user to re-acquire on the page."},"is adding audio track to current published local stream":{tips:"add audio track",color:"orange"},"is removing audio track from current published local stream":{tips:"remove audio track",color:"orange"},"is removing video track from current published local stream":{tips:"remove video track",color:"orange"},"is adding video track to current published local stream":{tips:"add video track",color:"orange"},"is replacing audio track to current published local main stream":{tips:"replace audio track",color:"orange"},"is replacing video track to current published local main stream":{tips:"replace video track",color:"orange"},"downlink network quality change":{tips:"Downstream network quality change: 1: excellent, 2: good, 3: average, 4: poor, 5: extremely poor"},"uplink network quality change":{tips:"Upstream network quality change: 1: excellent, 2: good, 3: average, 4: poor, 5: extremely poor"},"localStream mute video":{tips:"mute upstream video stream",color:"orange"},"localStream unmute video":{tips:"unmute upstream video stream",color:"orange"},"localStream mute audio":{tips:"mute upstream audio stream",color:"orange"},"localStream unmute audio":{tips:"unmute upstream audio stream",color:"orange"},"black detected":{tips:"Detect black screen, which means fps = 0. It is usually caused by network, and the network will be recovered after a while. If the network is normal but has not been restored, it is an abnormal situation."},'main stream start to play with options: {"muted":true}':{tips:"Play the remote stream in silent mode. Generally, the remote stream does not need to be played in silent mode. You need to confirm whether the parameters passed in the client stream.play API call are correct.",color:"orange"},"main stream - audio player is starting playing":{tips:"Remote stream audio playback success",color:"#0dd90d",class:"success"},"main stream - video player is starting playing":{tips:"Remote stream video playback success",color:"#0dd90d",class:"success"},"video player is playing":{tips:"Local video playback success",color:"#0dd90d",class:"success"},"audio player is playing":{tips:"Local audio playback success",color:"#0dd90d",class:"success"},"stream - video player is starting playing":{tips:"Local video playback success",color:"#0dd90d",class:"success"},"stream - audio player is starting playing":{tips:"Local audio playback success",color:"#0dd90d",class:"success"},"switch camera success":{tips:"Switch camera success",color:"#0dd90d",class:"success"},"switch microphone success":{tips:"Switch microphone success",color:"#0dd90d",class:"success"},gotStream:{tips:"Local stream capture success"},"local stream is published successfully":{tips:"Publish success",color:"#0dd90d",class:"success"},"encoderImplementation change to OpenH264":{tips:"Use software encoding"},"encoderImplementation change to ExternalEncoder":{tips:"Use hardware encoding"},"getUserMedia with constraints":{tips:"Start media (camera/microphone) capture"},"getDisplayMedia with constraints":{tips:"Start screen sharing capture"},"client-banned":{tips:"Kicked out of the room",color:"red",class:"red",textColor:"#fff"},user_timeout:{tips:"The backend is too long without receiving SDK heartbeat, which is usually caused by the JS thread being blocked for a long time. If the reproduction probability is high, the application browser Performance tool analyzes where the JS thread is blocked.",color:"red",class:"red",textColor:"#fff"},"schedule failed":{tips:"Signaling request failed, does not affect the normal room entry process, SDK will connect to the default signaling domain."},"updateStream() video flag is true, but no camera detected, set video to false":{tips:"When trying to resume camera acquisition, the camera acquisition is not resumed because it is detected that there is no camera.",color:"orange",class:"orange",textColor:"#fff"},"qualityLimitationReason change to bandwidth":{tips:"bandwidth estimation is not enough to limit the quality of the encoding, which may cause the code rate, frame rate, and resolution to be lowered.",color:"orange",class:"orange",textColor:"#fff"},"qualityLimitationReason change to cpu":{tips:"cpu load is too high to limit the quality of the encoding, which may cause the code rate, frame rate, and resolution to be lowered.",color:"orange",class:"orange",textColor:"#fff"},"visibility change: hidden":{tips:"User page switched to backend, in mobile devices, this will cause the device to pause the capture, and it will be restored when the user switches backend to the frontend.",color:"orange",class:"orange",textColor:"#fff"},"visibility change: visible":{tips:"User page switched to frontend",color:"orange",class:"orange",textColor:"#fff"},"main stream - audio player is paused":{tips:"The remote stream audio playback is paused, which usually has two possibilities:\n 1. The business side passes in the div tag container for playing audio and video to be removed by the business side from the DOM.\n 2. If the user is in Chrome 70 and below, when the div container is moved, the playback will be paused.",color:"orange",class:"orange",textColor:"#fff"},"main stream - video player is paused":{tips:"The remote stream video playback is paused, which usually has two possibilities:\n 1. The business side passes in the div tag container for playing audio and video to be removed by the business side from the DOM.\n 2. If the user is in Chrome 70 and below, when the div container is moved, the playback will be paused.",color:"orange",class:"orange",textColor:"#fff"},'"displaySurface":"window"':{tips:"Screen sharing captures the application window",color:"blue",class:"blue",textColor:"#fff"},'"displaySurface":"monitor"':{tips:"Screen sharing captures the entire screen",color:"blue",class:"blue",textColor:"#fff"},'"displaySurface":"browser"':{tips:"Screen sharing captures a certain tab page",color:"blue",class:"blue",textColor:"#fff"},updateMediaSettings:{tips:"The resolution and frame rate below are the actual resolution and frame rate captured",color:"blue",class:"blue",textColor:"#fff"},"main stream start to play with":{tips:"Call remoteStream.play interface",color:"blue",class:"blue",textColor:"#fff"},"stream start to play with":{tips:"Call localStream.play interface",color:"blue",class:"blue",textColor:"#fff"},"main setAudioVolume to 0":{tips:"Business side calls remoteStream.setAudioVolume(0) interface to set the playback volume to 0, which will cause the playback to be silent",color:"orange",class:"orange",textColor:"#fff"},"screen sharing was stopped because the video track is ended":{tips:"Screen sharing capture stopped, possible reasons: user clicks the stop button, the window/page shared by the user is closed, etc.",color:"orange",class:"orange",textColor:"#fff"},"Join() => joining room":{tips:"Call client.join interface",color:"blue",class:"blue",textColor:"#fff"},"publish() => publishing local stream":{tips:"Call client.publish interface",color:"blue",class:"blue",textColor:"#fff"},"subscribe() => subscribe to":{tips:"Call client.subscribe interface",color:"blue",class:"blue",textColor:"#fff"},"switchRole() => switch role":{tips:"Call client.switchRole interface",color:"blue",class:"blue",textColor:"#fff"}};["enterRoom","exitRoom","switchRole","destroy","startLocalAudio","updateLocalAudio","stopLocalAudio","startLocalVideo","updateLocalVideo","stopLocalVideo","startScreenShare","updateScreenShare","stopScreenShare","startRemoteVideo","updateRemoteVideo","stopRemoteVideo","muteRemoteAudio","setRemoteAudioVolume"].forEach(e=>{zR["".concat(e,"()")]={tips:"Call trtc.".concat(e),color:"blue",class:"blue",textColor:"#fff"}});var WR,GR=Object.keys(zR),qR=_A(EA()),KR=((WR=KR||{})[WR.INVALID_PARAMETER=4096]="INVALID_PARAMETER",WR[WR.INVALID_OPERATION=4097]="INVALID_OPERATION",WR[WR.NOT_SUPPORTED=4098]="NOT_SUPPORTED",WR[WR.DEVICE_NOT_FOUND=4099]="DEVICE_NOT_FOUND",WR[WR.INITIALIZE_FAILED=4100]="INITIALIZE_FAILED",WR[WR.SIGNAL_CHANNEL_SETUP_FAILED=16385]="SIGNAL_CHANNEL_SETUP_FAILED",WR[WR.SIGNAL_CHANNEL_ERROR=16386]="SIGNAL_CHANNEL_ERROR",WR[WR.ICE_TRANSPORT_ERROR=16387]="ICE_TRANSPORT_ERROR",WR[WR.JOIN_ROOM_FAILED=16388]="JOIN_ROOM_FAILED",WR[WR.CREATE_OFFER_FAILED=16389]="CREATE_OFFER_FAILED",WR[WR.SIGNAL_CHANNEL_RECONNECTION_FAILED=16390]="SIGNAL_CHANNEL_RECONNECTION_FAILED",WR[WR.UPLINK_RECONNECTION_FAILED=16391]="UPLINK_RECONNECTION_FAILED",WR[WR.DOWNLINK_RECONNECTION_FAILED=16392]="DOWNLINK_RECONNECTION_FAILED",WR[WR.REMOTE_STREAM_NOT_EXIST=16400]="REMOTE_STREAM_NOT_EXIST",WR[WR.CLIENT_BANNED=16448]="CLIENT_BANNED",WR[WR.SERVER_TIMEOUT=16449]="SERVER_TIMEOUT",WR[WR.SUBSCRIPTION_TIMEOUT=16450]="SUBSCRIPTION_TIMEOUT",WR[WR.PLAY_NOT_ALLOWED=16451]="PLAY_NOT_ALLOWED",WR[WR.DEVICE_AUTO_RECOVER_FAILED=16452]="DEVICE_AUTO_RECOVER_FAILED",WR[WR.START_PUBLISH_CDN_FAILED=16453]="START_PUBLISH_CDN_FAILED",WR[WR.STOP_PUBLISH_CDN_FAILED=16454]="STOP_PUBLISH_CDN_FAILED",WR[WR.START_MIX_TRANSCODE_FAILED=16455]="START_MIX_TRANSCODE_FAILED",WR[WR.STOP_MIX_TRANSCODE_FAILED=16456]="STOP_MIX_TRANSCODE_FAILED",WR[WR.NOT_SUPPORTED_H264=16457]="NOT_SUPPORTED_H264",WR[WR.SWITCH_ROLE_FAILED=16458]="SWITCH_ROLE_FAILED",WR[WR.API_CALL_TIMEOUT=16459]="API_CALL_TIMEOUT",WR[WR.SCHEDULE_FAILED=16460]="SCHEDULE_FAILED",WR[WR.API_CALL_ABORTED=16461]="API_CALL_ABORTED",WR[WR.SPC_INITIALIZED_FAILED=16462]="SPC_INITIALIZED_FAILED",WR[WR.VIDEO_MANAGER_ERROR=16463]="VIDEO_MANAGER_ERROR",WR[WR.SWITCH_ROOM_FAILED=16464]="SWITCH_ROOM_FAILED",WR[WR.VIDEO_ENCODE_FAILED=16465]="VIDEO_ENCODE_FAILED",WR[WR.AUDIO_ENCODE_FAILED=16466]="AUDIO_ENCODE_FAILED",WR[WR.UNKNOWN=65535]="UNKNOWN",WR),YR=KR,XR=class extends Error{constructor(e){let{name:t="RtcError",message:i,code:r=YR.UNKNOWN,extraCode:n=0,constraint:a}=e,o="<".concat(function(e){for(let t in YR)if(YR[t]===e)return t;return"UNKNOWN"}(r)," 0x").concat(r.toString(16),">"),s="".concat(i).concat(a?" constraint: ".concat(a):"").concat(null!=i&&i.includes(o)?"":" ".concat(o));super(s),yA(this,"code"),yA(this,"extraCode"),yA(this,"message"),yA(this,"originMessage"),yA(this,"name"),yA(this,"constraint"),this.code=r,this.extraCode=n,this.name=t,this.message=s,this.constraint=a,this.originMessage=i}getCode(){return this.code}getExtraCode(){return this.extraCode}toString(){return this.originMessage}},ZR=XR,JR=function(){return Date.now()+0},QR=function(){let e=new Date;return e.setTime(JR()),e.toLocaleString()};gA({},{REPORT_TYPE:()=>DC,buildSSOPackage:()=>OC,bytes2ms:()=>Ok,calculateScaleResolutionDownNumber:()=>AC,concatArrayBuffers:()=>LC,convertObjectNumberToInt:()=>bC,copyProperties:()=>Dk,deepClone:()=>uC,deepCloneBasic:()=>CC,deepMerge:()=>dC,delay:()=>wC,fibonacci:()=>Fk,formatedTime:()=>fC,getConstructorName:()=>Qk,getContainerFromElement:()=>pC,getEnv:()=>yk,getFirst16Bits:()=>PC,getInternalVersion:()=>nC,getLast16Bits:()=>NC,getLoggerUrl:()=>wk,getMediaStreamTrackInfo:()=>SC,getMuteStateFromFlag:()=>sC,getNetworkType:()=>Tk,getNumNetworkType:()=>Ck,getReconnectionTimeout:()=>Bk,getStringByteLength:()=>_C,getTestSignalDomain:()=>Ek,getTurnServer:()=>cC,getUint32Version:()=>EC,getValueType:()=>Vk,getViewListFromView:()=>hC,glog:()=>xk,ipv4ToUint32:()=>lC,isArray:()=>Kk,isAudioWorkletSupported:()=>$k,isBoolean:()=>Gk,isConstructor:()=>Jk,isEmpty:()=>oC,isFunction:()=>Hk,isLangChinese:()=>Mk,isMediaStreamTrack:()=>Yk,isNumber:()=>Wk,isObject:()=>qk,isOverseaSdkAppId:()=>bk,isPlainObject:()=>Uk,isPortrait:()=>vC,isPromise:()=>Zk,isRemoteTrack:()=>Xk,isRotate90Or270:()=>RC,isSetSinkIdSupported:()=>eC,isString:()=>zk,isUndefined:()=>jk,isVideoMixerOutputTrack:()=>xC,loadImage:()=>yC,loadVideo:()=>kC,ms2bytes:()=>Nk,ms2samples:()=>Pk,normalizeUrl:()=>TC,performanceNow:()=>iC,promiseAny:()=>tC,samples2ms:()=>Lk,setNetworkTypeFromWebRTC:()=>kk,stringify:()=>mC,stringifyIncludeValue:()=>gC,throttlePromise:()=>IC});var $R=function(e,t,i,r){return new(i||(i=Promise))(function(n,a){function o(e){try{c(r.next(e))}catch(t){a(t)}}function s(e){try{c(r.throw(e))}catch(t){a(t)}}function c(e){e.done?n(e.value):function(e){return e instanceof i?e:new i(function(t){t(e)})}(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},ek=Symbol(32),tk=Symbol(16),ik=Symbol(8),rk=class{constructor(e){this.g=e,this.consumed=0,e&&(this.need=e.next().value)}setG(e){this.g=e,this.demand(e.next().value,!0)}consume(){this.buffer&&this.consumed&&(this.buffer.copyWithin(0,this.consumed),this.buffer=this.buffer.subarray(0,this.buffer.length-this.consumed),this.consumed=0)}demand(e,t){return t&&this.consume(),this.need=e,this.flush()}read(e){return $R(this,void 0,void 0,function*(){return this.lastReadPromise&&(yield this.lastReadPromise),this.lastReadPromise=new Promise((t,i)=>{var r;this.reject=i,this.resolve=e=>{delete this.lastReadPromise,delete this.resolve,delete this.need,t(e)},this.demand(e,!0)||null===(r=this.pull)||void 0===r||r.call(this,e)})})}readU32(){return this.read(ek)}readU16(){return this.read(tk)}readU8(){return this.read(ik)}close(){var e;this.g&&this.g.return(),this.buffer&&this.buffer.subarray(0,0),null===(e=this.reject)||void 0===e||e.call(this,new Error("EOF")),delete this.lastReadPromise}flush(){if(!this.buffer||!this.need)return;let e=null,t=this.buffer.subarray(this.consumed),i=0,r=e=>t.length<(i=e);if("number"==typeof this.need){if(r(this.need))return;e=t.subarray(0,i)}else if(this.need===ek){if(r(4))return;e=t[0]<<24|t[1]<<16|t[2]<<8|t[3]}else if(this.need===tk){if(r(2))return;e=t[0]<<8|t[1]}else if(this.need===ik){if(r(1))return;e=t[0]}else if("buffer"in this.need){if("byteOffset"in this.need){if(r(this.need.byteLength-this.need.byteOffset))return;new Uint8Array(this.need.buffer,this.need.byteOffset).set(t.subarray(0,i)),e=this.need}else if(this.g)return void this.g.throw(new Error("Unsupported type"))}else{if(r(this.need.byteLength))return;new Uint8Array(this.need).set(t.subarray(0,i)),e=this.need}return this.consumed+=i,this.g?this.demand(this.g.next(e).value,!0):this.resolve&&this.resolve(e),e}write(e){if(e instanceof Uint8Array?this.malloc(e.length).set(e):"buffer"in e?this.malloc(e.byteLength).set(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)):this.malloc(e.byteLength).set(new Uint8Array(e)),!this.g&&!this.resolve)return new Promise(e=>this.pull=e);this.flush()}writeU32(e){this.malloc(4).set([e>>24&255,e>>16&255,e>>8&255,255&e]),this.flush()}writeU16(e){this.malloc(2).set([e>>8&255,255&e]),this.flush()}writeU8(e){this.malloc(1)[0]=e,this.flush()}malloc(e){if(this.buffer){let t=this.buffer.length,i=t+e;if(i<=this.buffer.buffer.byteLength-this.buffer.byteOffset)this.buffer=new Uint8Array(this.buffer.buffer,this.buffer.byteOffset,i);else{let e=new Uint8Array(i);e.set(this.buffer),this.buffer=e}return this.buffer.subarray(t,i)}return this.buffer=new Uint8Array(e),this.buffer}};rk.U32=ek,rk.U16=tk,rk.U8=ik;var nk=128;function ak(e){let t=new rk;for(;e>=128;)t.malloc(1)[0]=255&e|nk,e>>>=7;return t.malloc(1)[0]=255&e,t.buffer||new Uint8Array(0)}function ok(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=new rk,r=t<<3;switch(typeof e){case"boolean":let n=i.malloc(2);n[0]=r,n[1]=e?1:0;break;case"number":i.malloc(1)[0]=r,i.write(ak(e));break;case"string":i.malloc(1)[0]=2|r;let a=(new TextEncoder).encode(e);i.write(ak(a.length));let o=i.malloc(a.length);for(let e=0;e<a.length;e++)o[e]=a[e];break;case"object":let s=new rk;if(Array.isArray(e))for(let t=0;t<e.length;t++){let i=ok(e[t],t+1);i&&s.write(i)}else{let t=1;for(let i in e){let r=ok(e[i],t++);r&&s.write(r)}}0===t?s.buffer&&i.write(s.buffer):(i.malloc(1)[0]=2|r,s.buffer&&(i.write(ak(s.buffer.length)),i.write(s.buffer)))}return i.buffer||new Uint8Array(0)}var sk=class{constructor(){yA(this,"buffer"),this.buffer=[]}get data(){return this.buffer}get length(){return this.buffer.length}writeInt32(e){this.buffer.push(e>>>24&255),this.buffer.push(e>>>16&255),this.buffer.push(e>>>8&255),this.buffer.push(255&e)}writeInt16(e){this.buffer.push(e>>>8&255),this.buffer.push(255&e)}writeByte(e){this.buffer.push(255&e)}writeBytes(e){for(let t=0;t<e.length;t++)this.buffer.push(e[t])}};function ck(e,t,i){e[i]=t>>>24&255,e[i+1]=t>>>16&255,e[i+2]=t>>>8&255,e[i+3]=255&t}function lk(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function dk(e,t){return e[t]}function uk(e,t,i){return(new TextDecoder).decode(function(e,t,i){return e.slice(t,t+i)}(e,t,i))}var hk=0,pk=2654435769,fk=16,mk=2,gk=7;function _k(e,t){let i=new sk,r=function(e,t,i){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"AVQualityReportSvc.C2S";return{version:arguments.length>4&&void 0!==arguments[4]?arguments[4]:2e3,encryption:arguments.length>5&&void 0!==arguments[5]?arguments[5]:2,d2:"",d2Len:0,uinType:arguments.length>6&&void 0!==arguments[6]?arguments[6]:30,uin:"",uinLen:0,reqHead:{seqNumber:i,appId:e,appidAtThird:new Uint8Array(0),a2:"",a2Len:0,serviceCmd:r,serviceCmdLen:0,cookie:"",cookieLen:0,imei:"",imeiLen:0,ksid:"",ksidLen:0,clientVersionInfo:"",clientVersionInfoLen:0},busiBuff:t}}(t,e,hk);hk=hk+1&2147483647,i.writeInt32(0),i.writeInt32(r.version),i.writeByte(r.encryption);let n=(new TextEncoder).encode(r.d2);i.writeInt32(n.length+4),n&&i.writeBytes(n),i.writeByte(r.uinType);let a=(new TextEncoder).encode(r.uin);i.writeInt32(a.length+4),a.length&&i.writeBytes(a);let o=new sk;o.writeInt32(0),o.writeInt32(r.reqHead.seqNumber),o.writeInt32(r.reqHead.appId),o.writeByte(r.reqHead.appId>>>24&255),o.writeByte(r.reqHead.appId>>>16&255),o.writeByte(r.reqHead.appId>>>8&255),o.writeByte(255&r.reqHead.appId);for(let v=4;v<16;v++)o.writeByte(0);let s=(new TextEncoder).encode(r.reqHead.a2);o.writeInt32(s.length+4),s.length&&o.writeBytes(s);let c=(new TextEncoder).encode(r.reqHead.serviceCmd);o.writeInt32(c.length+4),c.length&&o.writeBytes(c);let l=(new TextEncoder).encode(r.reqHead.cookie);o.writeInt32(l.length+4),l.length&&o.writeBytes(l);let d=(new TextEncoder).encode(r.reqHead.imei);o.writeInt32(d.length+4),d.length&&o.writeBytes(d);let u=(new TextEncoder).encode(r.reqHead.ksid);o.writeInt32(u.length+4),u.length&&o.writeBytes(u);let h=(new TextEncoder).encode(r.reqHead.clientVersionInfo);o.writeInt16(h.length+2),h.length&&o.writeBytes(h);let p=o.length;o.data[0]=p>>>24&255,o.data[1]=p>>>16&255,o.data[2]=p>>>8&255,o.data[3]=255&p,zk(e)&&(e=(new TextEncoder).encode(e)),o.writeInt32(e.length+4),e.length&&o.writeBytes(e);let f=new Uint8Array(o.data),m=null;1===r.encryption?m=(new TextEncoder).encode(r.uin):2===r.encryption&&(m=new Uint8Array(16)),m&&(f=function(e,t){let i=e.length,r=(i+1+mk+gk)%8;r&&(r=8-r);let n=i+1+mk+gk+r,a=new Uint8Array(n),o=0,s=new Uint8Array(8),c=new Uint8Array(8),l=new Uint8Array(8),d=0;s[0]=248&Math.floor(256*Math.random())|r,d=1;for(let h=0;h<r;h++)s[d]=255&Math.floor(256*Math.random()),d+=1;for(let h=0;h<mk;)if(d<8&&(s[d]=255&Math.floor(256*Math.random()),d+=1,h+=1),8===d){vk(s,t,c,l,a,o),o+=8,d=0;for(let e=0;e<8;e++)l[e]=a[o-8+e]}let u=0;for(;u<i;)if(d<8&&(s[d]=e[u],d+=1,u+=1),8===d){vk(s,t,c,l,a,o),o+=8,d=0;for(let e=0;e<8;e++)l[e]=a[o-8+e]}for(let h=0;h<gk;)if(d<8&&(s[d]=0,d+=1,h+=1),8===d){vk(s,t,c,l,a,o),o+=8,d=0;for(let e=0;e<8;e++)l[e]=a[o-8+e]}return a}(f,m)),i.writeBytes(f);let g=new Uint8Array(i.data),_=g.length;return g[0]=_>>>24&255,g[1]=_>>>16&255,g[2]=_>>>8&255,g[3]=255&_,g}function vk(e,t,i,r,n,a){for(let o=0;o<8;o++)e[o]^=r[o];!function(e,t,i,r){let n=lk(e,0),a=lk(e,4),o=[];for(let c=0;c<4;c++)o[c]=lk(t,4*c);let s=0;for(let c=0;c<fk;c++)s+=pk,s>>>=0,n+=(a<<4)+o[0]^a+s^(a>>>5)+o[1],n>>>=0,a+=(n<<4)+o[2]^n+s^(n>>>5)+o[3],a>>>=0;ck(i,n,r),ck(i,a,r+4)}(e,t,n,a);for(let o=0;o<8;o++)n[a+o]^=i[o];for(let o=0;o<8;o++)i[o]=e[o]}var yk=function(){return new URLSearchParams(location.search).get("trtc_env")||""},Ek=function(e){return e.includes(".")?e:"".concat(e).concat(".rtc.qq.com")},bk=e=>Number(e)<14e8,wk=function(e,t){let i;i=bk(e)?"https://apisgp.my-imcloud.com":"https://yun.tim.qq.com";let r=Math.floor(Math.random()*2**31);return"".concat(i,"/v5/AVQualityReportSvc/C2S?random=").concat(r,"&sdkappid=").concat(e,"&cmdtype=").concat(t)},Ik="unknown";function Tk(){!function(){var e;Ak||(Ak=!0,null==(e=navigator.connection)||e.addEventListener("typechange",Sk))}();let{userAgent:e,connection:t}=navigator,i=(e.match(/NetType\/\S+/)||[])[0]||"";i=i.toLowerCase().replace("nettype/",""),"3gnet"===i&&(i="3g");let r=t&&t.type&&t.type.toLowerCase(),n=t&&t.effectiveType&&t.effectiveType.toLowerCase();return"slow-2"===n&&(n="2g"),r?Rk(r,n):Ik}function Sk(){kO.warn("netType changed",Tk())}var Ak=!1;function Rk(e,t){if(zA[e])return e;switch(e){case"cellular":case"wimax":return t||"unknown";case"ethernet":return"wired";default:return"unknown"}}function kk(e){Ik=Rk(e)}function Ck(){return zA[Tk()]}function Dk(e,t){for(let i of Reflect.ownKeys(t))if("constructor"!==i&&"prototype"!==i&&"name"!==i){let r=Object.getOwnPropertyDescriptor(t,i)||"";Object.defineProperty(e,i,r)}return e}function Ok(e){return Lk(e/4,arguments.length>1&&void 0!==arguments[1]?arguments[1]:48e3)}function Lk(e){return 1e3*e/(arguments.length>1&&void 0!==arguments[1]?arguments[1]:48e3)}function Nk(e){return 4*Pk(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:48e3)}function Pk(e){return e*(arguments.length>1&&void 0!==arguments[1]?arguments[1]:48e3)/1e3}var xk="undefined"!=typeof window&&"function"==typeof window.glog?window.glog:()=>{},Mk=()=>{let e=navigator.language;return e=e.substring(0,2),"zh"===e},Uk=function(e){if(!e||"object"!=typeof e||"[object Object]"!=Object.prototype.toString.call(e))return!1;let t=Object.getPrototypeOf(e);if(null===t)return!0;let i=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"==typeof i&&i instanceof i&&Function.prototype.toString.call(i)===Function.prototype.toString.call(Object)};function Fk(e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return e<=1?t:Fk(e-1,t,(arguments.length>1&&void 0!==arguments[1]?arguments[1]:1)+t)}function Bk(e){return e>8?3e4:1e3*Fk(e)}function Vk(e){return Reflect.apply(Object.prototype.toString,e,[]).replace(/^\[object\s(\w+)\]$/,"$1").toLowerCase()}var Hk=e=>"function"==typeof e,jk=e=>void 0===e,zk=e=>"string"==typeof e,Wk=e=>"number"==typeof e,Gk=e=>"boolean"==typeof e,qk=e=>"object"===Vk(e),Kk=e=>"array"===Vk(e),Yk=e=>Vk(e)==="MediaStreamTrack".toLowerCase(),Xk=e=>e.isRemote,Zk=e=>"promise"===Vk(e),Jk=e=>Hk(e)&&e.prototype.constructor===e,Qk=e=>Jk(e)?e.prototype.constructor.name:"",$k="undefined"!=typeof AudioWorkletNode,eC="undefined"!=typeof HTMLMediaElement&&"setSinkId"in HTMLMediaElement.prototype;function tC(e){return new Promise((t,i)=>{let r=[];e.forEach(n=>{n.then(t).catch(t=>{r.push(t),r.length===e.length&&i(r)})})})}function iC(){return performance&&performance.now?Math.floor(performance.now()):Date.now()}var rC=e=>+e<10?"0".concat(e):e,nC=e=>{let t=e.match(/^\d+\.\d+\.\d+/)[0];if(!t)return e;let i=t.split("."),r=rC(i[1])+rC(i[2]);return i[1]-15>0&&(i[1]="15"),i[2]-15>0&&(i[2]="15"),"".concat(i.join("."),".").concat(r)},aC=Object.prototype.hasOwnProperty;function oC(e){if(null==e)return!0;if("boolean"==typeof e)return!1;if("number"==typeof e)return 0===e;if("string"==typeof e||"function"==typeof e||Array.isArray(e))return 0===e.length;if(e instanceof Error)return""===e.message;if(Uk(e))switch(Object.prototype.toString.call(e)){case"[object File]":case"[object Map]":case"[object Set]":return 0===e.size;case"[object Object]":for(let t in e)if(aC.call(e,t))return!1;return!0}return!1}function sC(e,t){return{userId:t,hasAudio:!!(8&e),hasVideo:!!(1&e),hasAuxiliary:!!(4&e),hasSmall:!!(2&e),audioMuted:!!(64&e),videoMuted:!!(16&e),audioAvailable:!(!(8&e)||64&e),videoAvailable:!(!(1&e)||16&e),hasDatachannel:!!(256&e)}}function cC(e){let t={urls:e.url.startsWith("turn:")||e.url.startsWith("turns:")?e.url:"turn:".concat(e.url)};return!jk(e.username)&&!jk(e.credential)&&(t.username=e.username,t.credential=e.credential,t.credentialType="password",jk(e.credentialType)||(t.credentialType=e.credentialType)),t}function lC(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!zk(e))return 0;let i=e.split(".");return t?(Number(i[0])<<24|Number(i[1])<<16|Number(i[2])<<8|Number(i[3]))>>>0:(Number(i[3])<<24|Number(i[2])<<16|Number(i[1])<<8|Number(i[0]))>>>0}var dC=function(e,t,i,r){if(!qk(e)||!qk(t))return 0;let n,a=0,o=Object.keys(t);for(let s=0,c=o.length;s<c;s++)if(n=o[s],!(jk(t[n])||i&&i.includes(n)))if(qk(e[n])&&qk(t[n]))a+=dC(e[n],t[n],i,r);else{if(r&&r.includes(t[n]))continue;e[n]!==t[n]&&(e[n]=uC(t[n]),a+=1)}return a};function uC(e){if(Kk(e)){let t=[];return e.forEach((e,i)=>{t[i]=uC(e)}),t}if(qk(e)){let t={};return Object.keys(e).forEach(i=>{t[i]=uC(e[i])}),t}return e}var hC=e=>{let t=[];if(Kk(e))t=[...e];else if(zk(e)){let i=document.getElementById(e);i&&t.push(i)}else e&&t.push(e);return t},pC=e=>zk(e)?document.getElementById(e):e,fC=()=>(e=>{let t=e=>e<10?"0".concat(e):"".concat(e),i=e.getFullYear(),r=e.getMonth()+1,n=e.getDate(),a=t(e.getHours()),o=t(e.getMinutes()),s=t(e.getSeconds());return"".concat(i,"/").concat(r,"/").concat(n," ").concat(a,":").concat(o,":").concat(s)})(new Date);function mC(e,t){let{keysToInclude:i,keysToExclude:r}=t;try{if(Kk(e))return"[".concat(e.map(e=>mC(e,{keysToInclude:i,keysToExclude:r})).join(","),"]");if(!Uk(e)||!Kk(i)&&!Kk(r))return JSON.stringify(e);let t={},n=new Set(i),a=new Set(r);return Object.keys(e).forEach(o=>{(0===a.size&&n.has(o)||0===n.size&&!a.has(o))&&(t[o]=Uk(e[o])||Kk(e[o])?JSON.parse(mC(e[o],{keysToExclude:r,keysToInclude:i})):e[o])}),JSON.stringify(t)}catch(OA){return"{}"}}function gC(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=[];return Object.keys(e).forEach(r=>{t===e[r]&&i.push(r)}),mC(e,{keysToInclude:i})}function _C(e){return e.replace(/[\u4e00-\u9fa5]/g,"aa").length}var vC=()=>{var e,t,i,r;return null!=(e=window.screen)&&e.orientation?!(null==(r=null==(i=null==(t=window.screen)?void 0:t.orientation)?void 0:i.type)||!r.includes("portrait")):0===window.orientation||180===window.orientation},yC=async e=>new Promise((t,i)=>{let r;if(zk(e))r=new Image,r.crossOrigin="anonymous",r.src=e;else if(r=e,r.complete)return void t(r);r.onload=()=>t(r),r.onerror=()=>{i(new ZR({code:YR.INVALID_PARAMETER,message:"load image failed, url: ".concat(e)}))}}),EC=e=>{let t=e.split(".");return+t[0]<<24|+t[1]<<16|+t[2]<<8|+t[3]},bC=e=>(Object.keys(e).forEach(t=>{Wk(e[t])&&(t.startsWith("uint")||t.startsWith("int"))?e[t]=Math.floor(e[t]):(Uk(e[t])||Kk(e[t]))&&bC(e[t])}),e);function wC(e,t){return new Promise(i=>{let r=setTimeout(i,e);t&&t(r)})}function IC(e,t){let i=null;return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return i||(i=e.apply(t||this,n),i.finally(()=>i=null),i)}}function TC(e){return e.replace(/(^|[^:])\/{2,}/g,"$1/")}function SC(e){var t;try{let{width:i,height:r,frameRate:n,sampleRate:a,sampleSize:o,channelCount:s}=null==(t=e.getSettings)?void 0:t.call(e),c=e.kind===qA?"".concat(a,"x").concat(o,"@").concat(s):"".concat(i,"x").concat(r,"@").concat(n),l=e.stats?" stats: ".concat(JSON.stringify(e.stats).replaceAll('"',"")):"";return"".concat(e.id," ").concat(e.readyState," muted:").concat(e.muted," ").concat(e.kind," ").concat(e.label," ").concat(c).concat(l)}catch(_x){return""}}function AC(e,t){return e.width*e.height===t.width*t.height?1:vC()&&t.width>t.height&&e.height>t.width?Math.max(e.width/t.height,e.height/t.width,1):Math.max(e.width/t.width,e.height/t.height,1)}function RC(e){return 90===e||270===e}async function kC(e){return new Promise((t,i)=>{let r=document.createElement("video");r.crossOrigin="anonymous",r.src=e,r.muted=!0,r.loop=!0,r.playsInline=!0,r.play().then(()=>t(r)),r.onerror=()=>{i(r.error)}})}function CC(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if("object"!=typeof e||null===e)return e;if(t.has(e))return t.get(e);if(Array.isArray(e)){let i=[];return t.set(e,i),e.forEach((e,r)=>{i[r]=CC(e,t)}),i}if("[object Object]"===Object.prototype.toString.call(e)){let i={};return t.set(e,i),Reflect.ownKeys(e).forEach(r=>{i[r]=CC(e[r],t)}),i}return e}var DC=(e=>(e[e.END_REPORT=2001]="END_REPORT",e[e.LOG=2002]="LOG",e[e.KEY_METRIC_REPORT=2003]="KEY_METRIC_REPORT",e))(DC||{});function OC(e,t,i,r){try{let n=function(e,t,i,r){let n={data:e,random:Math.floor(2147483648*Math.random()),sdkAppId:i};return jk(r)||(n=pA(hA({},n),{gzip:+r})),{uint32_sdkappid:0,uint64_from_uin:0,uint32_timestamp:0,uint32_seq:0,msg_common_info:{msg_device_info:{enum_device_type:0,str_device_brand:"",str_device_model:"",str_device_board:"",str_device_cpu_abi:""},msg_system_info:{enum_os_type:0,str_os_version:"",msg_network_info:0},msg_network_info:{enum_network_type:0}},msg_report_content:{uint32_type:t,bytes_report_data:JSON.stringify(n)}}}(e,t,i,r);return _k(ok(n),i)}catch(n){return JSON.stringify(e)}}function LC(e,t){let i=new Uint8Array(e.byteLength+t.byteLength);return i.set(new Uint8Array(e),0),i.set(new Uint8Array(t),e.byteLength),i.buffer}function NC(e){return(65535&e)>>>0}function PC(e){return(4294901760&e)>>>0}function xC(e){return!!(e&&e instanceof CanvasCaptureMediaStreamTrack&&e.canvas.id.includes("trtc_mix"))}function MC(e){let t=function(e){try{let t={},i=0;t.totalLength=lk(e,i),i+=4,t.version=lk(e,i),i+=4,t.encryption=dk(e,i),i+=1,t.uinType=dk(e,i),i+=1,t.uinLength=lk(e,i),i+=4,t.uin=t.uinLength>4?uk(e,i,t.uinLength-4):"",i+=t.uinLength-4;let r=e.slice(i);if(2===t.encryption){e=function(e,t){let i=0,r=new Uint8Array(8).fill(0),n=new Uint8Array(e.slice(0,8)),a=UC(n,t),o=7&a[0],s=e.length-1-o-mk-gk,c=new Uint8Array(s),l=0,d=r,u=e.slice(0,8);i=8;let h=1;h+=o;for(let f=1;f<=mk;)if(h<8)h++,f++;else if(8===h){let r=FC(e,i,d,u,a,t);d=r.ivPreCrypt,u=r.ivCurCrypt,a=r.debiBuf,i=r.bufPos,h=0}let p=s;for(;p>0;)if(h<8)c[l++]=a[h]^d[h],h++,p--;else if(8===h){let r=FC(e,i,d,u,a,t);d=r.ivPreCrypt,u=r.ivCurCrypt,a=r.debiBuf,i=r.bufPos,h=0}for(let f=1;f<=gk;)if(h<8)a[h],d[h],h++,f++;else if(8===h){if(i>=e.length)break;let r=FC(e,i,d,u,a,t);if(!r.success)break;d=r.ivPreCrypt,u=r.ivCurCrypt,a=r.debiBuf,i=r.bufPos,h=0}return c}(r,new Uint8Array(16).fill(0)),t.decrypted=!0,i=0}else e=r,i=0;return t.rspHeadLength=lk(e,i),i+=4,t.seqNo=lk(e,i),i+=4,t.retCode=lk(e,i),i+=4,t.retStrLength=lk(e,i),i+=4,t.retStr=t.retStrLength?uk(e,i,t.retStrLength-4):"",i+=t.retStrLength-4,t.serviceCmdLength=lk(e,i),i+=4,t.serviceCmd=t.serviceCmdLength?uk(e,i,t.serviceCmdLength-4):"",i+=t.serviceCmdLength-4,t.cookieLength=lk(e,i),i+=4,t.cookie=t.cookieLength?uk(e,i,t.cookieLength-4):"",i+=t.cookieLength-4,t.flag=lk(e,i),i+=4,t.busiBuffLength=lk(e,i),i+=4,t.busiBuff=t.busiBuffLength?uk(e,i,t.busiBuffLength-4):"",i+=t.busiBuffLength-4,t}catch(t){}}(e);return null==t?void 0:t.busiBuff}function UC(e,t){let i=e[0]<<24|e[1]<<16|e[2]<<8|e[3],r=e[4]<<24|e[5]<<16|e[6]<<8|e[7];i>>>=0,r>>>=0;let n=pk*fk>>>0;for(let a=0;a<fk;a++)r-=(i<<4)+t[2]^i+n^(i>>>5)+t[3],r>>>=0,i-=(r<<4)+t[0]^r+n^(r>>>5)+t[1],i>>>=0,n-=pk,n>>>=0;return new Uint8Array([i>>>24&255,i>>>16&255,i>>>8&255,255&i,r>>>24&255,r>>>16&255,r>>>8&255,255&r])}function FC(e,t,i,r,n,a){if(t+8>e.length)return{success:!1};let o=new Uint8Array(r),s=e.slice(t,t+8),c=new Uint8Array(8);for(let l=0;l<8;l++)c[l]=n[l]^s[l];return{success:!0,ivPreCrypt:o,ivCurCrypt:s,debiBuf:UC(c,a),bufPos:t+8}}var BC="undefined"!=typeof TextDecoder?new TextDecoder:void 0;function VC(e){let{url:t,body:i,method:r="POST",timeout:n,priority:a}=e;return new Promise((e,o)=>{if("fetch"in window)return fetch(t,{method:r,body:i,priority:a}).then(e=>e.clone().json().then(e=>({data:e}),()=>e.arrayBuffer().then(e=>({data:MC(new Uint8Array(e))||(BC?BC.decode(e):e)})))).then(e,o);let s=new XMLHttpRequest;s.onreadystatechange=()=>{if(4===s.readyState)if(s.status>=200&&s.status<300)try{let t=JSON.parse(s.response);e({data:t})}catch(t){e({data:s.response})}else o({status:s.status,statusText:s.statusText||"request failed!"})},s.timeout=n||5e3,s.open(r,t,!0),s.send(i)})}var HC=Object.prototype.hasOwnProperty,jC=e=>"function"==typeof e,zC=e=>void 0===e,WC=e=>e.isRemote;function GC(e){if(null==e)return!0;if("boolean"==typeof e)return!1;if("number"==typeof e)return 0===e;if("string"==typeof e||"function"==typeof e||Array.isArray(e))return 0===e.length;if(e instanceof Error)return""===e.message;if(function(e){if(!e||"object"!=typeof e||"[object Object]"!=Object.prototype.toString.call(e))return!1;let t=Object.getPrototypeOf(e);if(null===t)return!0;let i=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"==typeof i&&i instanceof i&&Function.prototype.toString.call(i)===Function.prototype.toString.call(Object)}(e))switch(Object.prototype.toString.call(e)){case"[object File]":case"[object Map]":case"[object Set]":return 0===e.size;case"[object Object]":for(let t in e)if(HC.call(e,t))return!1;return!0}return!1}var qC=function(e){let{retryFunction:t,settings:i,onError:r,onRetrying:n,onRetryFailed:a,onRetrySuccess:o,context:s}=e;return function(){for(var e=arguments.length,c=new Array(e),l=0;l<e;l++)c[l]=arguments[l];let{retries:d=5,timeout:u=1e3}=i,h=0,p=-1,f=0,m=async(e,i)=>{let l=s||this;try{let i=await t.apply(l,c);h>0&&o&&o.call(this,h),h=0,e(i)}catch(g){let t=()=>{clearTimeout(p),h=0,f=2,i(g)},o=()=>{2!==f&&h<(jC(d)?d():d)?(h++,f=1,jC(n)&&n.call(this,h,t),p=window.setTimeout(()=>{p=-1,m(e,i)},jC(u)?u(h):u)):(t(),jC(a)&&a.call(this,g))};jC(r)?r.call(this,{error:g,retry:o,reject:i,retryFuncArgs:c,retriedCount:h}):o()}};return new Promise(m)}},KC=class e{constructor(e){yA(this,"_parentPath"),yA(this,"userId"),yA(this,"remoteUserId"),yA(this,"id"),yA(this,"sdkAppId"),yA(this,"type"),yA(this,"isLocal"),this.id=e.id,this.userId=e.userId,this.sdkAppId=e.sdkAppId,this.remoteUserId=e.remoteUserId,this.isLocal=!(e=>"boolean"==typeof e)(e.isLocal)||e.isLocal,this.type=this.isLocal?"":e.type}getFullId(){return this._parentPath&&this.id?"".concat(this._parentPath,"-").concat(this.id):this._parentPath?this._parentPath:this.id}createChild(t){let i=new e({id:t.id,userId:zC(t.userId)?this.userId:t.userId,sdkAppId:zC(t.sdkAppId)?this.sdkAppId:t.sdkAppId,type:zC(t.type)?this.type:t.type,isLocal:zC(t.isLocal)?this.isLocal:t.isLocal,remoteUserId:zC(t.remoteUserId)?this.remoteUserId:t.remoteUserId});return i.bindParent(this),i}bindParent(e){let t=e.getFullId();this._parentPath!==t&&(this.debug("bind logger parent: ".concat(e.id)),this._parentPath=t,this.userId=e.userId||this.userId,this.sdkAppId=e.sdkAppId||this.sdkAppId)}setUserId(e){this.userId=e}setSdkAppId(e){this.sdkAppId=e}log(e,t){let i=this.isLocal?this.userId:this.remoteUserId,r=this.getFullId();t.unshift("[".concat(this.isLocal?"↑":"↓").concat(this.type&&"main"!==this.type?"*":"").concat(r).concat(i?"|".concat(i):"","]")),kO.log(e,t,zC(this.userId)||GC(this.userId),this.userId,this.sdkAppId)}info(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(2,t)}debug(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(1,t)}warn(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(3,t)}error(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(4,t)}},YC="undefined"==typeof navigator?"":navigator.userAgent,XC=e=>new RegExp(e,"i").test(YC),ZC=e=>{if(XC(e)){let t=new RegExp("".concat(e,"\\/([\\d.]+)")),i=YC.match(t);if(i&&i[1])return i[1]}return""},JC=e=>{if(XC(e)){let t=new RegExp("".concat(e,"\\/(\\d+)")),i=YC.match(t);if(i&&i[1])return parseFloat(i[1])}return NaN},QC=/AppleWebKit\/([\d.]+)/i.exec(YC);QC&&parseFloat(QC[1]);var $C=XC("iPad"),eD="undefined"!=typeof navigator&&navigator.maxTouchPoints&&navigator.maxTouchPoints>2&&XC("Macintosh"),tD=XC("iPhone")&&!$C,iD=XC("iPod"),rD=tD||$C||iD||eD,nD=()=>{try{return rD&&navigator.maxTouchPoints>1&&navigator.vendor.includes("Apple")}catch($S){return rD}},aD=XC("Android"),oD=function(){if(aD){let e=YC.match(/Android (\d+)(?:\.(\d+))?(?:\.(\d+))*/i);if(e){let t=e[1]&&parseFloat(e[1]),i=e[2]&&parseFloat(e[2]);if(t&&i)return parseFloat("".concat(e[1],".").concat(e[2]));if(t)return t}}return NaN}();aD&&XC("webkit");var sD=XC("Firefox"),cD=ZC("Firefox"),lD=JC("Firefox"),dD=XC("Edge"),uD=ZC("Edge"),hD=XC("Edg"),pD=ZC("Edg"),fD=JC("Edg"),mD=XC("SogouMobileBrowser"),gD=ZC("SogouMobileBrowser"),_D=XC("MetaSr\\s"),vD=ZC("MetaSr\\s"),yD=XC("TBS"),ED=ZC("TBS"),bD=XC("XWEB"),wD=ZC("XWEB");XC("MSIE\\s8\\.0");var ID=XC("MSIE\\/\\d+");!function(){if(ID){let e=/MSIE\s(\d+)\.\d/.exec(YC),t=e&&parseFloat(e[1]);return!t&&/Trident\/7.0/i.test(YC)&&/rv:11.0/.test(YC)&&(t=11),t}}();var TD=XC("(micromessenger|webbrowser)"),SD=ZC("MicroMessenger"),AD=!yD&&XC("MQQBrowser")&&XC("COVC"),RD=!yD&&XC("MQQBrowser")&&!XC("COVC"),kD=RD||AD?ZC("MQQBrowser"):"",CD=!yD&&XC(" QQBrowser"),DD=ZC(" QQBrowser"),OD=!yD&&XC("QQBrowserLite"),LD=ZC("QQBrowserLite"),ND=!yD&&XC("MQBHD"),PD=ZC("MQBHD"),xD=XC("Windows"),MD=!rD&&XC("MAC OS X"),UD=!aD&&XC("Linux"),FD=XC("CrOS");XC("MicroMessenger");var BD=XC("UCBrowser");XC("Electron");var VD=XC("MiuiBrowser"),HD=ZC("MiuiBrowser"),jD=XC("HuaweiBrowser"),zD=XC("Huawei")||XC("HUAWEI"),WD=XC("Honor")||XC("HONOR"),GD=ZC("HuaweiBrowser"),qD=XC("SamsungBrowser"),KD=ZC("SamsungBrowser"),YD=XC("HeyTapBrowser"),XD=ZC("HeyTapBrowser"),ZD=XC("VivoBrowser"),JD=ZC("VivoBrowser"),QD=XC("OpenHarmony");ZC("OpenHarmony");var $D=()=>JC("Chrome"),eO=XC("CriOS"),tO=XC("Chrome"),iO=!dD&&!_D&&!mD&&!yD&&!bD&&!hD&&!CD&&!VD&&!jD&&!qD&&!YD&&!ZD&&tO,rO=XC("HeadlessChrome"),nO=$D(),aO=tO&&nO>=128&&nO<=143,oO=ZC("Chrome");JC("Electron");var sO=!tO&&!RD&&!AD&&!OD&&!ND&&XC("Safari"),cO=sO||rD,lO=ZC("Version");/Android.*(wv|.0.0.0)/.test(YC);var dO=(()=>{if(eD)return lO;if(rD){let e=YC.match(/OS (\d+)_(\d+)/i);if(e&&e[1]){let t=e[1];return e[2]&&(t+=".".concat(e[2])),t}}return""})();function uO(e,t){let i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=e.split(".").map(e=>Number(e)),n=t.split(".").map(e=>Number(e));for(let a=0;a<Math.max(r.length,n.length);a++){let e=r[a]||0,t=n[a]||0;if(e>t)return!0;if(e<t)return!1}return i}var hO=Number(dO.split(".")[0]),pO="15.1"===dO,fO=(()=>{let e=Number(dO.split(".")[0]);return 14===e||13===e})(),mO=eO&&"11.1.1"===lO,gO="undefined"!=typeof location&&("file:"===location.protocol||"localhost"===location.hostname||"127.0.0.1"===location.hostname),_O=(()=>{let e;return()=>{if(void 0===e)try{e=!!window.localStorage}catch(t){e=!1}return e}})(),vO=function(){let e=new Map([[sD,["Firefox",cD]],[hD,["Edg",pD]],[iO,["Chrome",oO]],[eO,["ChiOS",ZC("CriOS")]],[sO&&!eO,["Safari",lO]],[yD,["TBS",ED]],[bD,["XWEB",wD]],[TD&&tD,["WeChat",SD]],[CD,["QQ(Win)",DD]],[RD,["QQ(Mobile)",kD]],[AD,["QQ(Mobile X5)",kD]],[OD,["QQ(Mac)",LD]],[ND,["QQ(iPad)",PD]],[VD,["MI",HD]],[jD,["HW",GD]],[qD,["Samsung",KD]],[YD,["OPPO",XD]],[ZD,["VIVO",JD]],[dD,["EDGE",uD]],[mD,["SogouMobile",gD]],[_D,["Sogou",vD]]]),t="unknown",i="unknown";return e.has(!0)&&([t,i]=e.get(!0)),{name:t,version:i}}();function yO(){return function(){let e=/;\s*([^;)]+)\s+Build\//,t=YC.match(e);return null!=t&&t[1]?t[1].trim():null}()||""}var EO=new Map([[aD,"Android"],[rD,"iOS"],[xD,"Windows"],[MD,"MacOS"],[UD,"Linux"],[FD,"ChromeOS"]]),bO=function(){return EO.get(!0)?EO.get(!0):"unknown"};function wO(){return xD?1:aD?2:MD?3:rD?4:UD?5:FD?6:QD?7:0}var IO=()=>{let e=bO();return rD?e+="/".concat(dO):aD&&(e+="/".concat(oD)),e+="/".concat(vO.name,"/").concat(sO&&!eO?vO.version:vO.version.split(".")[0]),e},TO=new(_A(bA(),1).default),SO=AA,AO=new class{constructor(){yA(this,"enable",!1),yA(this,"ssoFailCount",0),TO.on("22",e=>{let{schedule:t}=e;var i;null!=(i=null==t?void 0:t.config)&&i.sso&&TO.emit("266",{enable:!0})}),TO.on("266",e=>{let{enable:t}=e;this.enable=t})}handleUploadFailed(){this.ssoFailCount++,this.ssoFailCount>3&&TO.emit("266",{enable:!1})}},RO=class e{constructor(){yA(this,"_isEnableUploadLog",!0),yA(this,"_localJoinedUser",new Map),yA(this,"_queue",[]),yA(this,"_timeoutId",-1),yA(this,"_logLevel",1),yA(this,"_logLevelToUpload",2),!xA&&!MA&&(this.checkURLParam(),this.installEvents())}get isAbleToUpload(){return this._isEnableUploadLog&&-1!==this._timeoutId}installEvents(){TO.on(SO.JOIN_SCHEDULE_SUCCESS,e=>{let{schedule:t}=e;var i;null!=(i=null==t?void 0:t.config)&&i.logLevelToUpload&&jA[t.config.logLevelToUpload]&&(this._logLevelToUpload=t.config.logLevelToUpload)}),TO.on(SO.JOIN_START,e=>{let{params:t}=e;this.addJoinedUser({userId:t.userId,sdkAppId:t.sdkAppId}),this.startUpload()}),TO.on(SO.LEAVE_SUCCESS,e=>{let{room:t}=e;this.deleteJoinedUser(t.userId)})}startUpload(){-1===this._timeoutId&&this.uploadInterval()}addJoinedUser(e){this._localJoinedUser.set(e.userId,e),this.startUpload()}deleteJoinedUser(e){this._localJoinedUser.delete(e)}uploadInterval(){this.upload().catch(()=>{}),this._timeoutId=window.setTimeout(()=>this.uploadInterval(),5e3)}getLogsToUpload(){let e={map:new Map,splicedQueue:[]};if(this._queue[0].forAllJoinedClients&&0===this._localJoinedUser.size)return e;let t=0;for(;t<this._queue.length&&50!==t;t++){let i=this._queue[t];if(i.forAllJoinedClients)this._localJoinedUser.forEach(t=>{let{userId:r,sdkAppId:n}=t;e.map.has(r)?e.map.get(r).logs.push(i):e.map.set(r,{userId:r,sdkAppId:n,logs:[i]})});else if(zk(i.userId)&&Wk(i.sdkAppId)){let{userId:t,sdkAppId:r}=i;e.map.has(t)?e.map.get(t).logs.push(i):e.map.set(t,{userId:t,sdkAppId:r,logs:[i]})}}return e.map.size>0&&(e.splicedQueue=this._queue.splice(0,t)),e}async upload(){if(0===this._queue.length||!this._isEnableUploadLog)return;let{map:e,splicedQueue:t}=this.getLogsToUpload();if(0===e.size)return;try{let t=[...e.values()];for(let e=0;e<t.length;e++){let{userId:i,sdkAppId:r,logs:n}=t[e],a={timestamp:QR(),sdkAppId:String(r),userId:i,version:PA,log:n.map(e=>e.log).join("\n")},o=JSON.stringify(a),s=AO.enable?OC(a,2002,r):o;await this.uploadLogWithRetry(s,r,s instanceof Uint8Array,o),n.forEach(e=>e.uploaded=!0)}}catch(r){}let i=t.filter(e=>!e.uploaded);i.length>0&&(this._queue=i.concat(this._queue))}uploadLogWithRetry(e,t,i,r){return qC({retryFunction:()=>VC({url:wk(t,VA),body:e,timeout:5e3,priority:"low"}).then(e=>{i&&"ok"!==e.data&&(AO.handleUploadFailed(),this.uploadLogWithRetry(r,t,!1,r))}),settings:{retries:3,timeout:2e3},onError:e=>{let{retry:t}=e;t()}})()}getPrefix(e){let t=new Date;return t.setTime(JR()),"[".concat(function(e){let t=String(e.getMilliseconds());return"padStart"in String.prototype&&(t=t.toString().padStart(3,"0")),"".concat(e.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/,"$1"),":").concat(t)}(t),"] <").concat(jA[e],">")}getLogLevel(){return this._logLevel}setLogLevel(e){jk(jA[e])||(this._logLevel!==e&&this.info("setLogLevel",e),this._logLevel=e)}enableUploadLog(){this._isEnableUploadLog=!0}disableUploadLog(){this.warn("disableUploadLog"),this._isEnableUploadLog=!1}logChunkToString(e){if(zk(e))return e;try{return e instanceof Error?e.toString():JSON.stringify(e)}catch(_x){return""}}addLogToQueue(e,t){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=arguments.length>3?arguments[3]:void 0,n=arguments.length>4?arguments[4]:void 0,a={log:t.reduce((e,t)=>"".concat(e," ").concat(this.logChunkToString(t)).trim(),""),level:e,userId:r,sdkAppId:n,forAllJoinedClients:i};TO.emit(SO.LOG,{log:a}),this._isEnableUploadLog&&e>=this._logLevelToUpload&&this._queue.push(a)}log(t,i){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;var o;if(i.unshift(this.getPrefix(t)),this.addLogToQueue(t,i,r,n,a),t<this._logLevel)return;let s=(null==(o=jA[t])?void 0:o.toLowerCase())||"info";e.PRINT_LOG_TAG?console[s]("%cTRTC%c%s","padding: 1px 4px;border-radius: 3px;color: #fff;background: #1E88E5;","display: inline",...i):console[s](...i)}debug(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(1,t)}info(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(2,t)}warn(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(3,t)}error(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(4,t)}createLogger(e){if(e.parent instanceof KC){let t=e,{parent:i}=t,r=((e,t)=>{var i={};for(var r in e)lA.call(e,r)&&t.indexOf(r)<0&&(i[r]=e[r]);if(null!=e&&sA)for(var r of sA(e))t.indexOf(r)<0&&dA.call(e,r)&&(i[r]=e[r]);return i})(t,["parent"]),n=new KC(r);return n.bindParent(i),n}return new KC(e)}checkURLParam(){let e=new URLSearchParams(location.search).get("logLevelToUpload"),t=e?Number(e):-1;jA[t]&&(this._logLevelToUpload=t)}getQueue(){return this._queue}};yA(RO,"PRINT_LOG_TAG",!(rD||aD||rO));var kO=new RO,CO=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})},DO=new class{constructor(){yA(this,"_prefix","TRTC"),yA(this,"_queue",new Map)}getRealKey(e){return"".concat(this._prefix,"_").concat(e)}checkStorage(){_O()&&(setInterval(this.doFlush.bind(this),2e4),Object.keys(localStorage).filter(e=>{if(e.startsWith(this._prefix))try{let t=localStorage.getItem(e);if(!t)return!1;let i=JSON.parse(t);if(i&&i.expiresIn<Date.now())return!0}catch(t){return!1}return!1}).forEach(e=>localStorage.removeItem(e)))}doFlush(){if(_O())try{for(let[e,t]of this._queue)localStorage.setItem(e,JSON.stringify(t))}catch(e){kO.warn(e)}}getItem(e){if(!_O())return null;try{let t=localStorage.getItem(this.getRealKey(e));if(!t)return null;let i=JSON.parse(t);return i&&i.expiresIn>=Date.now()?i.value:null}catch(_x){kO.warn(_x)}}setItem(e,t){if(_O())try{let i={expiresIn:Date.now()+6048e5,value:t};this._queue.set(this.getRealKey(e),i)}catch(OA){kO.warn(OA)}}deleteItem(e){if(!_O())return!1;try{return e=this.getRealKey(e),this._queue.delete(e),localStorage.removeItem(e),!0}catch(_x){return kO.warn(_x),!1}}clear(){if(_O())try{localStorage.clear()}catch(e){kO.warn(e)}}};gA({},{HTTPS_API:()=>sL,IS_GET_CAPABILITIES_FROM_INPUTDEVICE_SUPPORTED:()=>CL,IS_GET_CAPABILITIES_SUPPORTED:()=>kL,IS_GET_SETTINGS_SUPPORTED:()=>RL,IS_GET_SYNCHRONIZATION_SOURCES_SUPPORTED:()=>AL,IS_INSERTABLE_STREAM_SUPPORTED:()=>DL,IS_JITTER_BUFFER_TARGET_SUPPORTED:()=>zL,IS_RTC_RTP_SENDER_SUPPORTED:()=>IL,IS_SCRIPT_TRANSFORM_SUPPORTED:()=>OL,IS_SEI_SUPPORTED:()=>LL,IS_SPC_SUPPORTED:()=>bL,basis:()=>FL,capabilityCheck:()=>HL,checkSystemRequirementsInternal:()=>eL,decodeSupportStatus:()=>$O,detectH264SupportedByFakeStreaming:()=>aL,detectVideoCodecCapabilities:()=>qL,detectVideoDecoderCapabilities:()=>YL,detectVideoEncoderCapabilities:()=>KL,encodeSupportStatus:()=>QO,getBrowserInfo:()=>WO,getDisplayResolution:()=>lL,getH264ProfileLevelIds:()=>XL,isAddTransceiverSupported:()=>EL,isBrowserSupported:()=>GO,isCanvasCaptureStreamAPISupported:()=>hL,isCanvasSmallStreamSupported:()=>pL,isGetReceiversSupported:()=>_L,isGetSendersSupported:()=>vL,isGetTransceiversSupported:()=>yL,isGetUserMediaSupported:()=>dL,isMediaDevicesSupported:()=>KO,isMediaSessionSupported:()=>xL,isMediaStreamTrackGeneratorSupported:()=>JO,isMediaStreamTrackProcessorSupported:()=>ZO,isReplaceTrackSupported:()=>TL,isRequestVideoFrameCallbackSupported:()=>jL,isSIMDSupported:()=>UL,isScaleResolutionDownBySupported:()=>fL,isScreenCaptureApiAvailable:()=>iL,isSelectedCandidatePair:()=>cL,isSetParametersSupported:()=>SL,isSetSinkIdSupported:()=>rL,isSmallStreamSupported:()=>mL,isStopTransceiverSupported:()=>wL,isTRTCSupported:()=>tL,isUnifiedPlanDefault:()=>gL,isUsedInHttpProtocol:()=>XO,isWebAudioSupported:()=>uL,isWebCodecSupported:()=>PL,isWebCodecsSupported:()=>qO,isWebRTCSupported:()=>NL,isWebTransportSupported:()=>ML});var OO={AVOID_REPEATED_CALL:"AVOID_REPEATED_CALL",INVALID_PARAMETER_REQUIRED:"INVALID_PARAMETER_REQUIRED",INVALID_PARAMETER_TYPE:"INVALID_PARAMETER_TYPE",INVALID_PARAMETER_EMPTY:"INVALID_PARAMETER_EMPTY",INVALID_PARAMETER_INSTANCE:"INVALID_PARAMETER_INSTANCE",INVALID_PARAMETER_RANGE:"INVALID_PARAMETER_RANGE",INVALID_PARAMETER_MIN:"INVALID_PARAMETER_MIN",INVALID_PARAMETER_MAX:"INVALID_PARAMETER_MAX",INVALID_PARAMETER_STREAMTYPE:"INVALID_PARAMETER_STREAMTYPE",API_CALL_TIMEOUT:"API_CALL_TIMEOUT",SIGNAL_CHANNEL_RECONNECTION_FAILED:"SIGNAL_CHANNEL_RECONNECTION_FAILED",SIGNAL_CHANNEL_SETUP_FAILED:"SIGNAL_CHANNEL_SETUP_FAILED",ERROR_MESSAGE:"ERROR_MESSAGE",EXCHANGE_SDP_TIMEOUT:"EXCHANGE_SDP_TIMEOUT",DOWNLINK_RECONNECTION_FAILED:"DOWNLINK_RECONNECTION_FAILED",EXCHANGE_SDP_FAILED:"EXCHANGE_SDP_FAILED",UPDATE_OFFER_TIMEOUT:"UPDATE_OFFER_TIMEOUT",UPLINK_RECONNECTION_FAILED:"UPLINK_RECONNECTION_FAILED",INVALID_RECORDID:"INVALID_RECORDID",INVALID_PURE_AUDIO:"INVALID_PURE_AUDIO",INVALID_STREAMID:"INVALID_STREAMID",INVALID_USER_DEFINE_RECORDID:"INVALID_USER_DEFINE_RECORDID",INVALID_USER_DEFINE_PUSH_ARGS:"INVALID_USER_DEFINE_PUSH_ARGS",INVALID_PROXY:"INVALID_PROXY",INVALID_JOIN:"INVALID_JOIN",INVALID_ROOMID_STRING:"INVALID_ROOMID_STRING",INVALID_ROOMID_INTEGER:"INVALID_ROOMID_INTEGER",INVALID_SIGNAL_CHANNEL:"INVALID_SIGNAL_CHANNEL",JOIN_ROOM_TIMEOUT:"JOIN_ROOM_TIMEOUT",JOIN_ROOM_FAILED:"JOIN_ROOM_FAILED",REJOIN_ROOM_FAILED:"REJOIN_ROOM_FAILED",INVALID_DESTROY:"INVALID_DESTROY",INVALID_PUBLISH:"INVALID_PUBLISH",INVALID_UNPUBLISH:"INVALID_UNPUBLISH",INVALID_AUDIENCE:"INVALID_AUDIENCE",INVALID_INITIALIZE:"INVALID_INITIALIZE",INVALID_DUPLICATE_PUBLISHING:"INVALID_DUPLICATE_PUBLISHING",INVALID_SUBSCRIBE_UNDEFINED:"INVALID_SUBSCRIBE_UNDEFINED",INVALID_SUBSCRIBE_LOCAL:"INVALID_SUBSCRIBE_LOCAL",INVALID_REMOTE_STREAM:"INVALID_REMOTE_STREAM",SUBSCRIBE_FAILED:"SUBSCRIBE_FAILED",INVALID_ROLE:"INVALID_ROLE",INVALID_PARAMETER_SWITCH_ROLE:"INVALID_PARAMETER_SWITCH_ROLE",INVALID_OPERATION_SWITCH_ROLE:"INVALID_OPERATION_SWITCH_ROLE",SWITCH_ROLE_TIMEOUT:"SWITCH_ROLE_TIMEOUT",SWITCH_ROLE_FAILED:"SWITCH_ROLE_FAILED",CLIENT_BANNED:"CLIENT_BANNED",INVALID_OPERATION_START_PUBLISH_CDN:"INVALID_OPERATION_START_PUBLISH_CDN",INVALID_OPERATION_STOP_PUBLISH_CDN:"INVALID_OPERATION_STOP_PUBLISH_CDN",INVALID_STREAM_ID:"INVALID_STREAM_ID",START_PUBLISH_CDN_FAILED:"START_PUBLISH_CDN_FAILED",STOP_PUBLISH_CDN_FAILED:"STOP_PUBLISH_CDN_FAILED",START_MIX_TRANSCODE:"START_MIX_TRANSCODE",STOP_MIX_TRANSCODE:"STOP_MIX_TRANSCODE",INVALID_AUDIO_VOLUME:"INVALID_AUDIO_VOLUME",ENABLE_SMALL_STREAM_PUBLISHED:"ENABLE_SMALL_STREAM_PUBLISHED",DISABLE_SMALL_STREAM_PUBLISHED:"DISABLE_SMALL_STREAM_PUBLISHED",NOT_SUPPORTED_SMALL_STREAM:"NOT_SUPPORTED_SMALL_STREAM",INVALID_SMALL_STREAM_PROFILE:"INVALID_SMALL_STREAM_PROFILE",INVALID_PARAMETER_REMOTE_STREAM:"INVALID_PARAMETER_REMOTE_STREAM",INVALID_OPERATION_CHANGE_SMALL:"INVALID_OPERATION_CHANGE_SMALL",REMOTE_NOT_PUBLISH_SMALL_STREAM:"REMOTE_NOT_PUBLISH_SMALL_STREAM",INVALID_SWITCH_DEVICE:"INVALID_SWITCH_DEVICE",INVALID_SWITCH_DEVICE_PUBLISHING:"INVALID_SWITCH_DEVICE_PUBLISHING",INVALID_REPLACE_TRACK:"INVALID_REPLACE_TRACK",INVALID_INITIALIZE_LOCAL_STREAM:"INVALID_INITIALIZE_LOCAL_STREAM",INVALID_ADD_TRACK_REPETITIVE:"INVALID_ADD_TRACK_REPETITIVE",INVALID_ADD_TRACK_REMOVING:"INVALID_ADD_TRACK_REMOVING",INVALID_ADD_TRACK_PUBLISHING:"INVALID_ADD_TRACK_PUBLISHING",INVALID_STREAM_INITIALIZED:"INVALID_STREAM_INITIALIZED",INVALID_ADD_TRACK_NUMBER:"INVALID_ADD_TRACK_NUMBER",INVALID_REMOVE_AUDIO_TRACK:"INVALID_REMOVE_AUDIO_TRACK",INVALID_REMOVE_AUDIO_ADDING:"INVALID_REMOVE_AUDIO_ADDING",INVALID_REMOVE_AUDIO_ON:"INVALID_REMOVE_AUDIO_ON",INVALID_REMOVE_TRACK_PUBLISHING:"INVALID_REMOVE_TRACK_PUBLISHING",INVALID_REMOVE_TRACK_NOT_TRACK:"INVALID_REMOVE_TRACK_NOT_TRACK",INVALID_REMOVE_TRACK_NUMBER:"INVALID_REMOVE_TRACK_NUMBER",INVALID_REPLACE_TRACK_NO_TRACK:"INVALID_REPLACE_TRACK_NO_TRACK",REPEAT_JOIN:"REPEAT_JOIN",CLIENT_DESTROYED:"CLIENT_DESTROYED",NOT_BUG_PACKAGE:"NOT_BUG_PACKAGE",START_MIX_TRANSCODE_FAILED:"START_MIX_TRANSCODE_FAILED",STOP_MIX_TRANSCODE_FAILED:"STOP_MIX_TRANSCODE_FAILED",MIX_TRANSCODE_NOT_STARTED:"MIX_TRANSCODE_NOT_STARTED",CANNOT_LESS_THAN_ZERO:"CANNOT_LESS_THAN_ZERO",MIX_PARAMS_VIDEO_FRAMERATE:"MIX_PARAMS_VIDEO_FRAMERATE",MIX_PARAMS_VIDEO_GOP:"MIX_PARAMS_VIDEO_GOP",MIX_PARAMS_AUDIO_BITRATE:"MIX_PARAMS_AUDIO_BITRATE",MIX_PARAMS_USER_Z_ORDER:"MIX_PARAMS_USER_Z_ORDER",MIX_PARAMS_NOT_SELF:"MIX_PARAMS_NOT_SELF",MIX_PARAMS_USER_STREAM:"MIX_PARAMS_USER_STREAM",INVALID_PLAY:"INVALID_PLAY",INVALID_ELEMENT_ID:"INVALID_ELEMENT_ID",INVALID_ELEMENT_ID_TYPE:"INVALID_ELEMENT_ID_TYPE",PLAY_FAILED:"PLAY_FAILED",INVALID_USERID:"INVALID_USERID",INVALID_CREATE_STREAM_SOURCE:"INVALID_CREATE_STREAM_SOURCE",INVALID_CREATE_STREAM_SCREEN:"INVALID_CREATE_STREAM_SCREEN",INVALID_CREATE_STREAM_AUDIO:"INVALID_CREATE_STREAM_AUDIO",INVALID_CREATE_STREAM_SCREEN_AUDIO:"INVALID_CREATE_STREAM_SCREEN_AUDIO",NOT_SUPPORTED_HTTP:"NOT_SUPPORTED_HTTP",NOT_SUPPORTED_WEBRTC:"NOT_SUPPORTED_WEBRTC",NOT_SUPPORTED_PROFILE:"NOT_SUPPORTED_PROFILE",NOT_SUPPORTED_MEDIA:"NOT_SUPPORTED_MEDIA",NOT_SUPPORTED_H264ENCODE:"NOT_SUPPORTED_H264ENCODE",NOT_SUPPORTED_H264DECODE:"NOT_SUPPORTED_H264DECODE",NOT_SUPPORTED_TRACK:"NOT_SUPPORTED_TRACK",NOT_SUPPORTED_SWITCH_DEVICE:"NOT_SUPPORTED_SWITCH_DEVICE",NOT_SUPPORTED_CAPTURE:"NOT_SUPPORTED_CAPTURE",NOT_SUPPORTED_AUX:"NOT_SUPPORTED_AUX",MICROPHONE_NOT_FOUND:"MICROPHONE_NOT_FOUND",CAMERA_NOT_FOUND:"CAMERA_NOT_FOUND",SIGNAL_RESPONSE_FAILED:"SIGNAL_RESPONSE_FAILED",CATCH_HANDLER_ERROR:"CATCH_HANDLER_ERROR",API_NOT_EXIST:"API_NOT_EXIST",CONNECTION_CLOSED:"CONNECTION_CLOSED",SUBSCRIBE_ALL_FALSE:"SUBSCRIBE_ALL_FALSE",SEI_NOT_SUPPORT:"SEI_NOT_SUPPORT",SEI_DISABLED:"SEI_DISABLED",SEI_BEFORE_PUBLISH:"SEI_BEFORE_PUBLISH",SEI_NOT_VIDEO:"SEI_NOT_VIDEO",CALL_FREQUENCY_LIMIT:"CALL_FREQUENCY_LIMIT",CONNECTION_ABORTED:"CONNECTION_ABORTED",API_CALL_ABORTED:"API_CALL_ABORTED",DUPLICATE_AUX:"DUPLICATE_AUX",SWITCH_PLAYBACK_QUALITY_TIMEOUT:"SWITCH_PLAYBACK_QUALITY_TIMEOUT"},LO={AVOID_REPEATED_CALL:e=>"previous ".concat(e.name,"() is ongoing, please avoid repeated calls."),INVALID_PARAMETER_REQUIRED(e){let{key:t,rule:i,fnName:r,value:n}=e;return"'".concat(t||i.name,"' is a required param when calling ").concat(r,"(), received: ").concat(n,".")},INVALID_PARAMETER_TYPE(e){let{key:t,rule:i,fnName:r,value:n}=e,a="".concat(t||i.name),o="";return o=Array.isArray(i.type)?i.type.join("|"):i.type,"'".concat(a,"' must be type of ").concat(o," when calling ").concat(r,"(), received type: ").concat(Vk(n),".")},INVALID_PARAMETER_EMPTY(e){let{key:t,rule:i,fnName:r,value:n}=e;return"'".concat(t||i.name,"' cannot be '").concat(n,"' when calling ").concat(r,"().")},INVALID_PARAMETER_INSTANCE(e){let{key:t,rule:i,fnName:r,value:n}=e,a="".concat(t||i.name),o="".concat(i.instanceOf.name||i.instanceOf);return"'".concat(a,"' must be instanceof ").concat(o," when calling ").concat(r,"(), received type: ").concat(Vk(n),".")},INVALID_PARAMETER_RANGE(e){let{key:t,rule:i,fnName:r,value:n}=e;return"'".concat(t||i.name,"' must be one of ").concat(i.values.join("|")," when calling ").concat(r,"(), received: ").concat(n,".")},INVALID_PARAMETER_MIN(e){let{key:t,rule:i,fnName:r,value:n}=e;return"the min value of ".concat(t||i.name," is ").concat(i.min,", received: ").concat(n,".")},INVALID_PARAMETER_MAX(e){let{key:t,rule:i,fnName:r,value:n}=e;return"the max value of ".concat(t||i.name," is ").concat(i.max,", received: ").concat(n,".")},API_CALL_TIMEOUT:e=>"".concat(e.commandDesc||e.command," timeout observed."),SIGNAL_CHANNEL_RECONNECTION_FAILED:"signal channel reconnection failed, please check your network.",SIGNAL_CHANNEL_SETUP_FAILED:e=>"SignalChannel setup failure: (errorCode: ".concat(e.errorCode,", errorMsg: ").concat(e.errorMsg," })."),ERROR_MESSAGE(e){let t="".concat(e.type," failed");return e.message&&(t="".concat(t,": ").concat(e.message,".")),t},EXCHANGE_SDP_TIMEOUT:"exchange sdp timeout.",DOWNLINK_RECONNECTION_FAILED:"downlink reconnection failed, please check your network and re-join room.",EXCHANGE_SDP_FAILED:e=>"exchange sdp failed ".concat(e.errMsg,"."),UPDATE_OFFER_TIMEOUT:"update offer timeout observed.",UPLINK_RECONNECTION_FAILED:"uplink reconnection failed, please check your network and publish again.",INVALID_RECORDID:"recordId must be an integer number.",INVALID_PURE_AUDIO:"pureAudioPushMode must be 1 or 2.",INVALID_STREAMID:"streamId must be a sting literal within 64 bytes, and not be empty.",INVALID_USER_DEFINE_RECORDID:"userDefineRecordId must be a sting literal contains (a-zA-Z),(0-9), underline and hyphen, within 64 bytes, and not be empty.",INVALID_USER_DEFINE_PUSH_ARGS:"userDefinePushArgs must be a sting literal within 256 bytes, and not be empty.",INVALID_PROXY:'proxy server url must start with "wss://".',INVALID_JOIN:"duplicate join() called.",INVALID_ROOMID_STRING:e=>"'".concat(e,"' must be validate string when useStringRoomId is true."),INVALID_ROOMID_INTEGER:e=>"'".concat(e,"' must be an integer between [1, 4294967294] when useStringRoomId is false."),INVALID_SIGNAL_CHANNEL:"SignalChannel is not ready yet.",JOIN_ROOM_TIMEOUT:"join room timeout.",JOIN_ROOM_FAILED(e){let{error:t,code:i}=e;return"Failed to join room - ".concat(t," code: ").concat(i)},REJOIN_ROOM_FAILED:e=>"reJoin room: ".concat(e.roomId," failed, please check your network."),INVALID_DESTROY:"please call leave() before destroy().",INVALID_PUBLISH:"please call join() before publish().",INVALID_UNPUBLISH:"stream has not been published yet.",INVALID_AUDIENCE:'no permission to publish() under live/audience, please call switchRole("anchor") firstly before publish().',INVALID_INITIALIZE:"cannot publish stream because stream is not initialized, is switching device, or has been closed.",INVALID_DUPLICATE_PUBLISHING:e=>"duplicate ".concat(e," stream publishing, please unpublish your prev ").concat(e," stream and then re-publish."),INVALID_SUBSCRIBE_UNDEFINED:"stream is undefined or null.",INVALID_SUBSCRIBE_LOCAL:"stream cannot be LocalStream.",INVALID_REMOTE_STREAM:"remoteStream does not exist because it has been unpublished by remote peer.",SUBSCRIBE_FAILED(e){let{message:t,userId:i,streamType:r}=e;return"failed to subscribe ".concat(i," ").concat(r," stream, reason: ").concat(t,".")},INVALID_ROLE:"switchRole can only be called in live mode.",INVALID_PARAMETER_SWITCH_ROLE:"role could only be set to a value as anchor or audience.",INVALID_OPERATION_SWITCH_ROLE:"please call join() before switchRole().",SWITCH_ROLE_TIMEOUT:"switchRole timeout.",SWITCH_ROLE_FAILED:e=>"switchRole failed, errCode: ".concat(e.code," errMsg: ").concat(e.message,"."),CLIENT_BANNED:e=>"client was banned because of ".concat(e.message,"."),INVALID_OPERATION_START_PUBLISH_CDN:"please call startPublishCDNStream() after join room and publish the local stream.",INVALID_OPERATION_STOP_PUBLISH_CDN:"please call startPublishCDNStream() before stopPublishCDNStream().",START_PUBLISH_CDN_FAILED:e=>"startPublishCDNStream failed, errMsg: ".concat(e.message,"."),STOP_PUBLISH_CDN_FAILED:e=>"stopPublishCDNStream failed, errMsg: ".concat(e.message,"."),INVALID_STREAM_ID:e=>"'".concat(e,"' can only consist of uppercase and lowercase english letters (a-zA-Z), numbers (0-9), hyphens and underscores."),START_MIX_TRANSCODE:"please call startMixTranscode() after join().",STOP_MIX_TRANSCODE:"please call stopMixTranscode() after startMixTranscode().",INVALID_AUDIO_VOLUME:"interval must be a number.",ENABLE_SMALL_STREAM_PUBLISHED:"Cannot enable small stream after localStream published.",DISABLE_SMALL_STREAM_PUBLISHED:"Cannot disable small stream after localStream published.",NOT_SUPPORTED_SMALL_STREAM:"your browser does not support opening small stream.",INVALID_SMALL_STREAM_PROFILE:"small stream profile is invalid.",INVALID_PARAMETER_REMOTE_STREAM:"remoteStream is invalid.",INVALID_OPERATION_CHANGE_SMALL:"cannot switch to the small stream without subscribing to the video of remoteStream.",REMOTE_NOT_PUBLISH_SMALL_STREAM:"remote peer does not publish small stream.",INVALID_SWITCH_DEVICE:"cannot switch device on current stream.",INVALID_SWITCH_DEVICE_PUBLISHING:"cannot switch device when publishing localStream.",INVALID_REPLACE_TRACK:"cannot replace track when publishing localStream.",INVALID_INITIALIZE_LOCAL_STREAM:"local stream has not initialized yet.",INVALID_ADD_TRACK_REPETITIVE:"previous addTrack is ongoing, please avoid repetitive execution.",INVALID_ADD_TRACK_REMOVING:"cannot add track when a track is removing.",INVALID_ADD_TRACK_PUBLISHING:"cannot add track when publishing localStream.",INVALID_STREAM_INITIALIZED:"your local stream haven't been initialized yet.",INVALID_ADD_TRACK_NUMBER:"a Stream has at most one audio track and one video track.",INVALID_REMOVE_AUDIO_TRACK:"remove audio track is not supported on your browser.",INVALID_REMOVE_AUDIO_ADDING:"cannot remove track when a track is adding.",INVALID_REMOVE_AUDIO_ON:"previous removeTrack is ongoing, please avoid repetitive execution.",INVALID_REMOVE_TRACK_PUBLISHING:"cannot remove track when publishing localStream.",INVALID_REMOVE_TRACK_NOT_TRACK:"localStream has not this track.",INVALID_REMOVE_TRACK_NUMBER:"remove the only video track is not supported, please use replaceTrack or muteVideo.",INVALID_REPLACE_TRACK_NO_TRACK:e=>"cannot replace ".concat(e.kind," track because stream has not ").concat(e.kind," track"),NOT_BUG_PACKAGE:"You need to buy packages, refer to tencent console.",START_MIX_TRANSCODE_FAILED:e=>"startMixTranscode failed, errMsg: ".concat(e.message,"."),STOP_MIX_TRANSCODE_FAILED:e=>"stopMixTranscode failed, errMsg: ".concat(e.message,"."),MIX_TRANSCODE_NOT_STARTED:"mixTranscode has not been started.",CANNOT_LESS_THAN_ZERO(e){let{key:t,rule:i,fnName:r,value:n}=e;return"'".concat(t||i.name,"' cannot be less than 0 when calling ").concat(r,"().")},MIX_PARAMS_VIDEO_FRAMERATE:"'config.videoFramerate' should be an integer between 0 and 30, excluding 0.",MIX_PARAMS_VIDEO_GOP:"'config.videoGOP' should be an integer between 1 and 8.",MIX_PARAMS_AUDIO_BITRATE:"'config.audioBitrate' should be an integer between 32 and 192.",MIX_PARAMS_USER_Z_ORDER:e=>"'".concat(e,"' is required and must be between 1 and 15."),MIX_PARAMS_NOT_SELF:"'config.mixUsers' must contain self.",MIX_PARAMS_USER_STREAM:"'config.videoWidth' and 'config.videoHeight' of output stream should be contain all mix stream.",INVALID_PLAY:"duplicate play() call observed, please stop() firstly.",INVALID_ELEMENT_ID:e=>{let{key:t,fnName:i}=e;return"'".concat(t,"' is not found in the document object when calling ").concat(i,"().")},INVALID_ELEMENT_ID_TYPE:e=>{let{key:t,fnName:i,type:r}=e;return"the element corresponding to '".concat(t,"' must be instanceof HTMLElement when calling ").concat(i,"(), received: ").concat(r,".")},PLAY_FAILED:e=>"".concat(e.media," play failed, browser exception: ").concat(e.error.toString()),INVALID_USERID:"userId cannot be all spaces.",INVALID_CREATE_STREAM_SOURCE:"LocalStream must be created by createStream() with either audio/video or audioSource/videoSource, but can not be mixed with audio/video and audioSource/videoSource.",INVALID_CREATE_STREAM_SCREEN:"screen/video cannot be both true.",INVALID_CREATE_STREAM_AUDIO:"audio/screenAudio cannot be both true.",INVALID_CREATE_STREAM_SCREEN_AUDIO:"when screen is true, screenAudio can be configured.",NOT_SUPPORTED_HTTP:"http protocol does not support the ability to capture microphone, camera and screen. please use https to deploy your page.",NOT_SUPPORTED_WEBRTC:"your browser or environment does not support full WebRTC capabilities.",NOT_SUPPORTED_PROFILE:"your browser does not support setVideoProfile.",NOT_SUPPORTED_MEDIA:"your browser or environment does not support navigator.mediaDevices.",NOT_SUPPORTED_H264ENCODE:"your device does not support H.264 encoding.",NOT_SUPPORTED_H264DECODE:"your device does not support H.264 decoding.",NOT_SUPPORTED_TRACK:e=>"".concat(e,"Track is not supported on your browser."),NOT_SUPPORTED_SWITCH_DEVICE:"switchDevice is not supported on your browser.",NOT_SUPPORTED_CAPTURE:"Your browser or environment does not support screen sharing, please check whether the browser version.",MICROPHONE_NOT_FOUND:"no microphone detected, please check your microphone.",CAMERA_NOT_FOUND:"no camera detected, please check your camera.",SIGNAL_RESPONSE_FAILED:e=>"".concat(e.signalResponse," failed, response code is ").concat(e.code," , errMsg: ").concat(e.message,"."),CATCH_HANDLER_ERROR(e){let{name:t,event:i}=e;return"an error was caught in ".concat(t,".on('").concat(i,"', handler), please check your code in 'handler'.")},API_NOT_EXIST(e){let{name:t}=e;return"experimental api ".concat(t," does not exist.")},REPEAT_JOIN:e=>"please avoid repeated join.",CONNECTION_CLOSED:"remoteStream has been unsubscribed or unpublished by remote user.",SUBSCRIBE_ALL_FALSE:"cannot subscribe when both audio & video are false, use client.unsubscribe() instead",CLIENT_DESTROYED(e){let{funName:t}=e;return"failed to call ".concat(t,"() because client was destroyed.")},SEI_NOT_SUPPORT:e=>"not support to sendSEIMessage".concat(!1===e?" without using h264 codec":""),SEI_DISABLED:"SEI is disabled",SEI_BEFORE_PUBLISH:"please call sendSEIMessage() after publish() success",SEI_NOT_VIDEO:"cannot send sei when localStream has not video.",CALL_FREQUENCY_LIMIT:e=>{let{isSize:t,name:i,timesInSecond:r,maxSizeInSecond:n}=e;return"api ".concat(i," call ").concat(t?"size":"times"," is over ").concat(t?"".concat(n," bytes"):r," in a second.")},CONNECTION_ABORTED:e=>"connection aborted due to: ".concat(e),API_CALL_ABORTED(e){let t;return t=e.message.includes("REMOTE_STREAM_NOT_EXIST")?"Subscribe ".concat(e.userId," ").concat(e.streamType," stream aborted, reason: remote user ").concat(e.userId," unpublished stream."):"API aborted, reason: ".concat(e.message),t},DUPLICATE_AUX:"only one auxiliary stream can be published in a room.",NOT_SUPPORTED_AUX:"publish auxiliary stream is not supported on your browser.",INVALID_PARAMETER_STREAMTYPE:e=>"'streamType' is required when 'userId' is not '*', calling ".concat(e,"()"),SWITCH_PLAYBACK_QUALITY_TIMEOUT:e=>"switchPlaybackQuality timeout: waiting for first frame of user ".concat(e.userId,".")},NO=(e,t)=>t?"".concat(UA,"/").concat(e,"/").concat(t):"".concat(UA,"/").concat(e,"/index.html"),PO=()=>{if(window.TRTC_ERROR_INFO&&window.TRTC_ERROR_LINK)return{TRTC_ERROR_INFO:window.TRTC_ERROR_INFO,TRTC_ERROR_LINK:window.TRTC_ERROR_LINK};let e=null==localStorage?void 0:localStorage.getItem("trtc_error_assistance");if(e){e=JSON.parse(e);let t=document.createElement("script");t.type="text/javascript",t.text=e.message,document.body.appendChild(t);let i=window.TRTC_ERROR_INFO,r=window.TRTC_ERROR_LINK;return document.body.removeChild(t),{TRTC_ERROR_INFO:i,TRTC_ERROR_LINK:r}}return{}};function xO(e){let{key:t,data:i,link:r,addDocLink:n=!0}=e,a="",o="",s="";Hk(LO[t])?a=LO[t](i):zk(LO[t])&&(a=LO[t]);let{TRTC_ERROR_INFO:c,TRTC_ERROR_LINK:l}=PO();r?s="".concat(r.className,".html#").concat(r.fnName):l&&l[t]&&(Hk(l[t])?s=l[t](i):zk(l[t])&&(s=l[t]));let d=a;return Mk()&&(c&&c[t]&&(Hk(c[t])?o=c[t](i):zk(c[t])&&(o=c[t])),o&&(d=n?"".concat(o,"\n请查看文档: ").concat(NO("zh-cn",s),"\n\n"):"".concat(o,"\n\n"),d+=a)),n&&(d+=" \nRefer to: ".concat(NO("en",s),"\n")),d}var MO,UO=_A(SA(),1),FO=class{constructor(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];yA(this,"countMap",new Map),yA(this,"distributionMap",new Map),yA(this,"version"),yA(this,"log",kO.createLogger({id:"kv"})),e&&(TO.on("102",e=>{let{track:t,cost:i}=e;this.addSuccessEvent({key:t.kind===qA?501700:511700,cost:i})}),TO.on("103",e=>{let{track:t,error:i}=e;this.addFailedEvent({key:t.kind===qA?501700:511700,error:i})}),TO.on("266",e=>{let{enable:t}=e;this.log.info("".concat(t?"enable":"disable"," sso")),t?this.addSuccessEvent({key:525701}):this.addFailedEvent({key:525701})}))}getReportData(e,t){let i={msg_sdk_basic_info:{uint32_sdk_version:EC(this.version||PA),uint32_terminal_type:15,bytes_device_name:"",bytes_os_version:"",uint32_framework:30,uint32_network_type:0},stats_count:[...this.countMap.entries()].map(e=>{let[t,i]=e;return{uint32_key:t,uint32_count:i}}),stats_distribution:[...this.distributionMap.entries()].map(e=>{let[t,i]=e;return{uint32_key:t,distribution_items:[...i.entries()].map(e=>{let[t,i]=e;return{uint32_item_key:t,uint32_item_value:i}})}}),str_user_sig:e,bytes_report_token:t};return this.countMap.clear(),this.distributionMap.clear(),i}clear(){this.countMap.clear(),this.distributionMap.clear()}isEnumKey(e){let t=+String(e).slice(-3);return t>=700&&t<799}isErrorCodeKey(e){let t=+String(e).slice(-3);return t>=600&&t<699}isCountKey(e){let t=+String(e).slice(-3);return t>=0&&t<599}isNumberKey(e){let t=+String(e).slice(-3);return t>=800&&t<899}addCount(e){let{key:t,useUV:i=!1}=e;this.isCountKey(t)?i&&this.countMap.has(t)||this.countMap.set(t,(this.countMap.get(t)||0)+1):this.log.debug("".concat(t," is not count key, last 3 number should be 0~599"))}addEnum(e){let{key:t,value:i,useUV:r=!0}=e;var n;if(!this.isEnumKey(t))return this.log.debug("".concat(t," is not enum key, last 3 number should be 700~799"));if(r&&this.countMap.has(t))return;this.countMap.set(t,(this.countMap.get(t)||0)+1);let a=(null==(n=this.distributionMap)?void 0:n.get(t))||new Map;a.set(i,(a.get(i)||0)+1),this.distributionMap.set(t,a)}addNumber(e){let{key:t,value:i,split:r=100,useUV:n=!1,max:a=5e3}=e;var o;if(!this.isNumberKey(t))return this.log.debug("".concat(t," is not number key, last 3 number should be 800~899"));if(n&&this.countMap.has(t))return;i>a&&(i=a),this.countMap.set(t,(this.countMap.get(t)||0)+1);let s=(null==(o=this.distributionMap)?void 0:o.get(t))||new Map,c=0;if(Wk(r))c=Math.floor(i/r);else for(let l=r.length-1;l>0;l--)if(i>r[l]){c=l;break}s.set(c,(s.get(c)||0)+1),this.distributionMap.set(t,s)}addSuccessEvent(e){let{key:t,cost:i,timeKey:r,split:n}=e;if(t&&(this.addEnum({key:t,value:1,useUV:!1}),i)){let e=+String(t).slice(-3);e<800&&e>=700?this.addNumber({key:r||t+100,value:i,split:n}):r||this.log.debug("time stat ignored, ".concat(t))}}addFailedEvent(e){let{key:t,error:i}=e;if(!t)return;let r=YR.UNKNOWN;i&&(Wk(i)?r=i:(!jk(i.extraCode)||!jk(i.code))&&(r=i.extraCode||i.code)),this.addEnum({key:t,value:0,useUV:!1}),this.addEnum({key:t,value:Math.abs(r),useUV:!1})}},BO=((MO=BO||{})[MO.DECODER_TYPE=514700]="DECODER_TYPE",MO[MO.DECODER_HW_SW=514701]="DECODER_HW_SW",MO[MO.DECODE_RESULT=514702]="DECODE_RESULT",MO[MO.DECODE_FAILED_OS=514703]="DECODE_FAILED_OS",MO[MO.DOWNGRADE_RESULT=514704]="DOWNGRADE_RESULT",MO[MO.DOWNGRADE_WEBCODECS_VIDEO=514705]="DOWNGRADE_WEBCODECS_VIDEO",MO[MO.DOWNGRADE_WEBCODECS_2D=514706]="DOWNGRADE_WEBCODECS_2D",MO[MO.DOWNGRADE_WASM_WEGBL=514707]="DOWNGRADE_WASM_WEGBL",MO[MO.DOWNGRADE_WASM_VIDEO=514708]="DOWNGRADE_WASM_VIDEO",MO[MO.DOWNGRADE_WASM_2D=514709]="DOWNGRADE_WASM_2D",MO[MO.DECODE_H264_RESULT=514710]="DECODE_H264_RESULT",MO[MO.DECODE_H265_RESULT=514711]="DECODE_H265_RESULT",MO[MO.DECODE_VP8_RESULT=514712]="DECODE_VP8_RESULT",MO[MO.DECODE_CAPABILITIES=514713]="DECODE_CAPABILITIES",MO[MO.H264_PROFILE_LEVEL_ID_HIGH=514714]="H264_PROFILE_LEVEL_ID_HIGH",MO[MO.H264_PROFILE_LEVEL_ID_MAIN=514715]="H264_PROFILE_LEVEL_ID_MAIN",MO[MO.RENDER_FREEZE_RATE=514850]="RENDER_FREEZE_RATE",MO[MO.DATA_FREEZE_RATE=514851]="DATA_FREEZE_RATE",MO[MO.VIDEO_CONSUME_RENDER_RATE=514852]="VIDEO_CONSUME_RENDER_RATE",MO),VO=new FO(!0);new FO(!1);var HO=VO,jO={result:!1,detail:{isBrowserSupported:!1,isWebRTCSupported:!1,isWebCodecsSupported:!1,isMediaDevicesSupported:!1,isScreenShareSupported:!1,isSmallStreamSupported:!1,isH264EncodeSupported:!1,isVp8EncodeSupported:!1,isH265EncodeSupported:!1,isH264DecodeSupported:!1,isVp8DecodeSupported:!1,isH265DecodeSupported:!1}},zO=new Map([[sD,["Firefox",cD]],[hD,["Edg",pD]],[iO,["Chrome",oO]],[sO,["Safari",lO]],[yD,["TBS",ED]],[bD,["XWEB",wD]],[TD&&tD,["WeChat",SD]],[CD,["QQ(Win)",DD]],[RD,["QQ(Mobile)",kD]],[AD,["QQ(Mobile X5)",kD]],[OD,["QQ(Mac)",LD]],[ND,["QQ(iPad)",PD]],[VD,["MI",HD]],[jD,["HW",GD]],[qD,["Samsung",KD]],[YD,["OPPO",XD]],[ZD,["VIVO",JD]],[dD,["EDGE",uD]],[mD,["SogouMobile",gD]],[_D,["Sogou",vD]]]);function WO(){let e=zO.get(!0);return{browserName:e?e[0]:"unknown",browserVersion:e?e[1]:"unknown"}}var GO=function(){return!(BD||dD||hD&&fD<80||sD&&lD<56)},qO=function(){return["VideoDecoder","VideoEncoder","AudioEncoder","AudioDecoder"].every(e=>e in window)},KO=function(){if(!navigator.mediaDevices)return XO()||kO.error(LO.NOT_SUPPORTED_MEDIA),!1;let e=["getUserMedia","enumerateDevices"];return e.filter(e=>e in navigator.mediaDevices).length===e.length},YO=!1;function XO(){return"http:"===location.protocol&&!gO&&(YO||kO.error(xO({key:OO.NOT_SUPPORTED_HTTP})),YO=!0,!0)}var ZO=function(){return(null==window?void 0:window.OffscreenCanvas)&&(null==window?void 0:window.MediaStreamTrackProcessor)&&(null==window?void 0:window.MediaStreamTrackGenerator)},JO=function(){return!(null==window||!window.MediaStreamTrackGenerator)},QO=async function(){var e,t,i;if(jO.detail.isH264EncodeSupported&&jO.detail.isVp8EncodeSupported)return{isH264EncodeSupported:jO.detail.isH264EncodeSupported,isVp8EncodeSupported:jO.detail.isVp8EncodeSupported,isH265EncodeSupported:jO.detail.isH265EncodeSupported};let r,n=!1,a=!1,o=!1;try{let s=new RTCPeerConnection,c=document.createElement(GA);c.getContext("2d");let l=c.captureStream(0);return s.addTrack(l.getVideoTracks()[0],l),r=await s.createOffer(),n=-1!==(null==(e=r.sdp)?void 0:e.toLowerCase().indexOf("h264")),a=-1!==(null==(t=r.sdp)?void 0:t.toLowerCase().indexOf("vp8")),o=-1!==(null==(i=r.sdp)?void 0:i.toLowerCase().indexOf("h265")),s.close(),{isH264EncodeSupported:n,isVp8EncodeSupported:a,isH265EncodeSupported:o}}catch(s){return{isH264EncodeSupported:!1,isVp8EncodeSupported:!1,isH265EncodeSupported:!1}}},$O=async function(){var e;if(jO.detail.isH264DecodeSupported&&jO.detail.isVp8DecodeSupported)return{isH264DecodeSupported:jO.detail.isH264DecodeSupported,isVp8DecodeSupported:jO.detail.isVp8DecodeSupported,isH265DecodeSupported:jO.detail.isH265DecodeSupported};let t,i=!1,r=!1;try{let n=new RTCPeerConnection;EL()?(n.addTransceiver(KA,{direction:"recvonly"}),t=await n.createOffer()):t=await n.createOffer({offerToReceiveVideo:!0}),-1!==t.sdp.toLowerCase().indexOf("h264")&&(i=!0),-1!==t.sdp.toLowerCase().indexOf("vp8")&&(r=!0);let a=-1!==(null==(e=t.sdp)?void 0:e.toLowerCase().indexOf("h265"));return n.close(),{isH264DecodeSupported:i,isVp8DecodeSupported:r,isH265DecodeSupported:a}}catch(n){return{isH264DecodeSupported:!1,isVp8DecodeSupported:!1,isH265DecodeSupported:!1}}};var eL=IC(async e=>{let t=Date.now(),i=NL(),r=KO(),n=qO();if(jO.detail.isWebRTCSupported=i,jO.detail.isMediaDevicesSupported=r,jO.detail.isWebCodecsSupported=n,jO.detail.isScreenShareSupported=iL(),jO.detail.isSmallStreamSupported=mL(),37===e)return Object.assign(jO.detail,await async function(){return oL||(oL=new Promise(async e=>{let t={isH264EncodeSupported:!1,isH264DecodeSupported:!1,isVp8EncodeSupported:!1,isVp8DecodeSupported:!1};if(!qO())return void e(t);let i=null,r=null,n=null,a=()=>{n&&clearTimeout(n),i=null,r=null};try{i=document.createElement("canvas"),r=i.getContext("2d"),i.width=320,i.height=240;let o=0,s=()=>{!r||!i||(r.fillStyle="hsl(".concat(o%360,", 50%, 50%)"),r.fillRect(0,0,i.width,i.height),r.fillStyle="white",r.font="20px Arial",r.fillText("Frame ".concat(o),10,30),o++)};n=setTimeout(()=>{a(),e(t)},5e3);let c=[{type:"h264",encodeConfig:{codec:"avc1.42E01E",avc:{format:"annexb"},width:320,height:240,bitrate:1e6},decodeConfig:{codec:"avc1.42E01E",avc:{format:"annexb"}}},{type:"vp8",encodeConfig:{codec:"vp8",width:320,height:240,bitrate:1e6},decodeConfig:{codec:"vp8"}}];(await Promise.all(c.map(async e=>{let t,r={type:e.type,encodeSupported:!1,decodeSupported:!1};try{t=await new Promise(async(t,n)=>{try{let a=new VideoEncoder({output:e=>{t(e),r.encodeSupported=!0},error:n});a.configure(e.encodeConfig),s();let o=new VideoFrame(i,{timestamp:0});a.encode(o,{keyFrame:!0}),o.close(),await a.flush(),a.close()}catch(a){n(a)}})}catch(p){return kO.warn("".concat(e.type," encoder error:"),p),r}try{await new Promise(async(i,n)=>{try{let a=new VideoDecoder({output:e=>{r.decodeSupported=!0,i(0),e.close()},error:n});a.configure(e.decodeConfig),a.decode(t),await a.flush(),a.close()}catch(a){n(a)}})}catch(p){kO.warn("".concat(e.type," decoder error:"),p)}return r}))).forEach(e=>{"h264"===e.type?(t.isH264EncodeSupported=e.encodeSupported,t.isH264DecodeSupported=e.decodeSupported):"vp8"===e.type&&(t.isVp8EncodeSupported=e.encodeSupported,t.isVp8DecodeSupported=e.decodeSupported)}),a(),e(t)}catch(o){a(),kO.warn("detectWebCodecsSupported failed:",o),e(t)}}),oL)}()),jO.detail.isBrowserSupported=n,jO.result=r&&n,jO.result||kO.error("".concat(navigator.userAgent," ").concat(gC(jO.detail,!1))),VL(e),HO.addNumber({key:523800,value:Date.now()-t}),jO;if(jO.result&&jO.detail.isH264EncodeSupported&&jO.detail.isVp8EncodeSupported&&jO.detail.isH265EncodeSupported&&jO.detail.isH264DecodeSupported&&jO.detail.isVp8DecodeSupported&&jO.detail.isH265DecodeSupported)return jO;let a=GO(),{encode:o,decode:s}=await async function(){let[e,t]=await Promise.all([QO(),$O()]);return{encode:{h264:e.isH264EncodeSupported,vp8:e.isVp8EncodeSupported,h265:e.isH265EncodeSupported},decode:{h264:t.isH264DecodeSupported,vp8:t.isVp8DecodeSupported,h265:t.isH265DecodeSupported}}}(),{h264:c,vp8:l}=o,{h264:d}=s,{h265:u}=o,{vp8:h,h265:p}=s;if(!c||!l){let e=await QO();kO.warn("detect encode again h264:".concat(c," vp8:").concat(l," result: ").concat(JSON.stringify(e))),c=e.isH264EncodeSupported,l=e.isVp8EncodeSupported}if(c&&d&&aD&&tO&&!bD&&!yD&&(!YD||115!==nO)){let{encode:e,decode:t}=await aL();c=e,d=t}return jO.result=a&&i&&r&&(c||l)&&(d||h),jO.detail.isBrowserSupported=a,jO.detail.isWebRTCSupported=i,jO.detail.isH264EncodeSupported=c,jO.detail.isVp8EncodeSupported=l,jO.detail.isH265EncodeSupported=u,jO.detail.isH264DecodeSupported=d,jO.detail.isVp8DecodeSupported=h,jO.detail.isH265DecodeSupported=p,jO.result||kO.error("".concat(navigator.userAgent," ").concat(gC(jO.detail,!1))),VL(),HO.addNumber({key:523800,value:Date.now()-t}),jO}),tL=function(){return jO.result},iL=function(){return!(!navigator.mediaDevices||!navigator.mediaDevices.getDisplayMedia)},rL="undefined"!=typeof HTMLMediaElement&&"setSinkId"in HTMLMediaElement.prototype,nL=null;async function aL(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2e3;return nL||(nL=new Promise(async t=>{let i={encode:!1,decode:!1},r=()=>{};try{let n=document.createElement("canvas"),a=n.getContext("2d");n.width=640,n.height=480;let o=setInterval(()=>{a.fillText("test",Math.floor(640*Math.random()),Math.floor(480*Math.random()))},66),s=-1,c=-1;r=()=>{clearInterval(s),clearInterval(o),clearTimeout(c),d.close(),u.close(),l.getTracks().forEach(e=>e.stop())},c=setTimeout(()=>{r(),t(i)},e);let l=n.captureStream(),d=new RTCPeerConnection({}),u=new RTCPeerConnection({offerToReceiveAudio:!0,offerToReceiveVideo:!0});d.addEventListener("icecandidate",e=>u.addIceCandidate(e.candidate)),u.addEventListener("icecandidate",e=>d.addIceCandidate(e.candidate)),d.addTrack(l.getVideoTracks()[0],l);let h=await d.createOffer();await d.setLocalDescription(h),await u.setRemoteDescription(h);let p=await u.createAnswer(),f=UO.default.parse(p.sdp),m=f.media[0].rtp.findIndex(e=>"H264"===e.codec);f.media[0].rtp=[f.media[0].rtp[m]],f.media[0].fmtp=f.media[0].fmtp.filter(e=>e.payload===f.media[0].rtp[0].payload),f.media[0].rtcpFb&&(f.media[0].rtcpFb=f.media[0].rtcpFb.filter(e=>e.payload===f.media[0].rtp[0].payload)),p.sdp=UO.default.write(f),await u.setLocalDescription(p),await d.setRemoteDescription(p),s=setInterval(async()=>{i.encode&&i.decode&&(r(),t(i));let[e,n]=await Promise.all([d.getSenders()[0].getStats(),u.getReceivers()[0].getStats()]);i.encode||e.forEach(e=>{"outbound-rtp"===e.type&&(e.mediaType===KA||e.kind===KA)&&e.bytesSent>0&&(i.encode=!0)}),i.decode||n.forEach(e=>{"inbound-rtp"===e.type&&(e.mediaType===KA||e.kind===KA)&&e.bytesReceived>0&&(i.decode=!0)})},100)}catch(n){r(),kO.warn("detectH264Supported failed",n),t({encode:!0,decode:!0})}}).then(e=>(e.encode||(e.decode=!0),(!e.encode||!e.decode)&&kO.warn("detectH264Supported encode: ".concat(e.encode," decode: ").concat(e.decode," ").concat("")),e)),nL)}var oL=null;var sL=(e,t,i)=>{"http:"===location.protocol&&!gO&&(e[t]=()=>{throw new ZR({code:YR.INVALID_OPERATION,message:LO.NOT_SUPPORTED_HTTP})})},cL=function(e){return!("candidate-pair"!==e.type||!e.nominated||"in-progress"!==e.state&&"succeeded"!==e.state)&&!(Gk(e.selected)&&!e.selected)};function lL(){let e="";if(screen.width){let t=screen.width?screen.width*window.devicePixelRatio:"",i=screen.height?screen.height*window.devicePixelRatio:"";e+="".concat(t," * ").concat(i)}return e}function dL(){return navigator.getUserMedia||navigator.mediaDevices&&navigator.mediaDevices.getUserMedia}function uL(){let e={isSupported:!1},t=["AudioContext","webkitAudioContext","mozAudioContext","msAudioContext"];for(let i=0;i<t.length;i++)if(t[i]in window){e.isSupported=!0;break}return e.isSupported}function hL(){return"captureStream"in HTMLCanvasElement.prototype}function pL(){return!(TD||rD||nO&&nO<63)&&!(!GO()||!hL())}function fL(){return!(nO<74||dD||hO<11||lD<46)}function mL(){return pL()||fL()}var gL=function(){if(jk(window.RTCRtpTransceiver)||!EL()||!("currentDirection"in RTCRtpTransceiver.prototype))return!1;let e=null,t=!1;try{e=new RTCPeerConnection({sdpSemantics:"unified-plan"}),e.addTransceiver(qA),t=!0}catch(_x){}return null==e||e.close(),t};function _L(){return"RTCPeerConnection"in window&&"getReceivers"in window.RTCPeerConnection.prototype}function vL(){return"RTCPeerConnection"in window&&"getSenders"in window.RTCPeerConnection.prototype}function yL(){return"RTCPeerConnection"in window&&"getTransceivers"in window.RTCPeerConnection.prototype}function EL(){return!(11===hO&&!mO)&&("RTCPeerConnection"in window&&"addTransceiver"in window.RTCPeerConnection.prototype)}var bL=!(!EL()||tO&&nO<86);function wL(){return"RTCRtpTransceiver"in window&&"stop"in window.RTCRtpTransceiver.prototype}var IL="RTCRtpSender"in window;function TL(){return IL&&"replaceTrack"in window.RTCRtpSender.prototype}function SL(){return IL&&"setParameters"in window.RTCRtpSender.prototype&&vL()}var AL="RTCRtpReceiver"in window&&"getSynchronizationSources"in window.RTCRtpReceiver.prototype,RL=window.MediaStreamTrack&&"getSettings"in MediaStreamTrack.prototype,kL=window.MediaStreamTrack&&"getCapabilities"in MediaStreamTrack.prototype,CL="undefined"!=typeof InputDeviceInfo&&"getCapabilities"in InputDeviceInfo.prototype,DL=IL&&"createEncodedStreams"in window.RTCRtpSender.prototype&&$D()>=86,OL="RTCRtpScriptTransform"in window,LL=IL&&(DL||OL),NL=function(){return["RTCPeerConnection","webkitRTCPeerConnection","RTCIceGatherer"].filter(e=>e in window).length>0};function PL(){let e={AudioDecoder:!1,AudioEncoder:!1,VideoDecoder:!1,VideoEncoder:!1,ImageDecoder:!1};return jk(window.AudioDecoder)||(e.AudioDecoder=!0),jk(window.AudioEncoder)||(e.AudioEncoder=!0),jk(window.VideoDecoder)||(e.VideoDecoder=!0),jk(window.VideoEncoder)||(e.VideoEncoder=!0),jk(window.ImageDecoder)||(e.ImageDecoder=!0),e}function xL(){return"mediaSession"in navigator&&!jk(navigator.mediaSession.setActionHandler)}function ML(){return!jk(window.WebTransport)}function UL(){return"undefined"!=typeof WebAssembly&&WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]))}function FL(){let e={browser:"".concat(vO.name,"/").concat(vO.version),os:bO(),displayResolution:lL(),isScreenShareSupported:iL(),isWebRTCSupported:NL(),isGetUserMediaSupported:dL(),isWebAudioSupported:uL(),isWebSocketsSupported:"WebSocket"in window&&2===window.WebSocket.CLOSING,isWebCodecSupported:PL(),isMediaSessionSupported:xL(),isWebTransportSupported:ML()};return navigator.userAgent.includes("miniProgram")&&(e.browser="mini/".concat(e.browser)),e}var BL="checkResult";function VL(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:30;DO.setItem(BL+e,{ua:navigator.userAgent,checkResult:jO})}function HL(e){XO();let t=DO.getItem(BL+e);t&&t.ua===navigator.userAgent&&t.checkResult&&function(e,t){return!!qk(e)&&Object.keys(t).every(t=>t in e)}(t.checkResult.detail,jO.detail)&&(jO=t.checkResult),eL(e)}function jL(){return"requestVideoFrameCallback"in HTMLVideoElement.prototype}var zL="RTCRtpReceiver"in window&&"jitterBufferTarget"in window.RTCRtpReceiver.prototype;function WL(e){return{h264:1,h265:2,vp8:3,vp9:4,av1:5}[e]}var GL=!1;async function qL(){var e;try{if(GL||null==(e=null==navigator?void 0:navigator.mediaCapabilities)||!e.encodingInfo)return;let t=wO(),i=TD||bD?4:tO?1:sO?2:sD?3:0;if(0===t||0===i)return;GL=!0;let r=["H264","VP8","VP9","AV1","H265"],[n,a]=await Promise.all([KL(r),YL(r)]);n&&Object.keys(n).forEach(e=>{let r=WL(e.toLowerCase());HO.addEnum({key:513707,value:+"".concat(r).concat(+n[e].supported).concat(+n[e].powerEfficient).concat(t).concat(i),useUV:!1})}),a&&Object.keys(a).forEach(e=>{let r=WL(e.toLowerCase());HO.addEnum({key:514713,value:+"".concat(r).concat(+a[e].supported).concat(+a[e].powerEfficient).concat(t).concat(i),useUV:!1})});let{sender:o,receiver:s}=XL();HO.addEnum({key:513708,value:+"".concat(t).concat(i).concat(+o.high),useUV:!1}),HO.addEnum({key:513709,value:+"".concat(t).concat(i).concat(+o.main),useUV:!1}),HO.addEnum({key:514714,value:+"".concat(t).concat(i).concat(+s.high),useUV:!1}),HO.addEnum({key:514715,value:+"".concat(t).concat(i).concat(+s.main),useUV:!1})}catch(t){kO.info("detectVideoCodecCapabilities failed",t)}}async function KL(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1920,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1080,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:30,n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:3e3,a={};try{for(let o of e){let e=await navigator.mediaCapabilities.encodingInfo({type:"webrtc",video:{contentType:"video/".concat(o),width:t,height:i,bitrate:n,framerate:r}});a[o]=e}}catch(LA){}return a}async function YL(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1920,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1080,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:30,n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:3e3,a={};try{for(let o of e){let e=await navigator.mediaCapabilities.decodingInfo({type:"webrtc",video:{contentType:"video/".concat(o),width:t,height:i,bitrate:n,framerate:r}});a[o]=e}}catch(LA){}return a}function XL(){let e={sender:{base:!1,main:!1,high:!1},receiver:{base:!1,main:!1,high:!1}};try{if(RTCRtpSender&&"function"==typeof RTCRtpSender.getCapabilities){let t=RTCRtpSender.getCapabilities("video");t&&t.codecs&&t.codecs.filter(e=>"video/h264"===e.mimeType.toLowerCase()).forEach(t=>{if(t.sdpFmtpLine){let i=t.sdpFmtpLine.match(/profile-level-id=([0-9a-fA-F]+)/);if(i&&i[1])switch(i[1].slice(0,2)){case"42":e.sender.base=!0;break;case"4d":e.sender.main=!0;break;case"64":e.sender.high=!0}}})}if(RTCRtpReceiver&&"function"==typeof RTCRtpReceiver.getCapabilities){let t=RTCRtpReceiver.getCapabilities("video");t&&t.codecs&&t.codecs.filter(e=>"video/h264"===e.mimeType.toLowerCase()).forEach(t=>{if(t.sdpFmtpLine){let i=t.sdpFmtpLine.match(/profile-level-id=([0-9a-fA-F]+)/);if(i&&i[1])switch(i[1].slice(0,2)){case"42":e.receiver.base=!0;break;case"4d":e.receiver.main=!0;break;case"64":e.receiver.high=!0}}})}}catch(t){kO.warn("get H264 profile levelId failed",t)}return e}var ZL=_A(bA(),1),JL=Symbol("instance"),QL=Symbol("cacheResult"),$L=class{constructor(e,t,i){this.oldState=e,this.newState=t,this.action=i,this.aborted=!1}abort(e){this.aborted=!0,nN.call(e,this.oldState,new Error("action '".concat(this.action,"' aborted")))}toString(){return"".concat(this.action,"ing")}},eN=class extends Error{constructor(e,t,i){super(t),this.state=e,this.message=t,this.cause=i}};var tN=new Map;function iN(e,t){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return(r,n,a)=>{let o=i.action||n;if(!i.context){let i=tN.get(r)||[];tN.has(r)||tN.set(r,i),i.push({from:e,to:t,action:o})}let s=a.value;a.value=function(){let r=this;for(var n=arguments.length,a=new Array(n),c=0;c<n;c++)a[c]=arguments[c];if(i.context&&(r=aN.get("function"==typeof i.context?i.context.call(this,...a):i.context)),r.state===t)return i.sync?r[QL]:Promise.resolve(r[QL]);r.state instanceof $L&&r.state.action==i.abortAction&&r.state.abort(r);let l=null;Array.isArray(e)?0==e.length?r.state instanceof $L&&r.state.abort(r):("string"!=typeof r.state||!e.includes(r.state))&&(l=new eN(r._state,"".concat(r.name," ").concat(o," to ").concat(t," failed: current state ").concat(r._state," not from ").concat(e.join("|")))):e!==r.state&&(l=new eN(r._state,"".concat(r.name," ").concat(o," to ").concat(t," failed: current state ").concat(r._state," not from ").concat(e)));let d=e=>{if(i.fail&&i.fail.call(this,e),i.sync){if(i.ignoreError)return e;throw e}return i.ignoreError?Promise.resolve(e):Promise.reject(e)};if(l)return d(l);let u=r.state,h=new $L(u,t,o);nN.call(r,h);let p=e=>{var n;return r[QL]=e,h.aborted||(nN.call(r,t),null===(n=i.success)||void 0===n||n.call(this,r[QL])),e},f=e=>(nN.call(r,u,e),d(e));try{let e=s.apply(this,a);return function(e){return"object"==typeof e&&e&&"then"in e}(e)?e.then(p).catch(f):i.sync?p(e):Promise.resolve(p(e))}catch(m){return f(new eN(r._state,"".concat(r.name," ").concat(o," from ").concat(e," to ").concat(t," failed: ").concat(m),m instanceof Error?m:new Error(String(m))))}}}}var rN="undefined"!=typeof window&&window.__AFSM__?(e,t)=>{window.dispatchEvent(new CustomEvent(e,{detail:t}))}:"undefined"!=typeof importScripts?(e,t)=>{postMessage({type:e,payload:t})}:()=>{};function nN(e,t){let i=this._state;this._state=e;let r=e.toString();e&&this.emit(r,i),this.emit(aN.STATECHANGED,e,i,t),this.updateDevTools({value:e,old:i,err:t instanceof Error?t.message:String(t)})}var aN=class e extends ZL.default{constructor(t,i,r){super(),this.name=t,this.groupName=i,this._state=e.INIT,t||(t=Date.now().toString(36)),r?Object.setPrototypeOf(this,r):r=Object.getPrototypeOf(this),i||(this.groupName=this.constructor.name);let n=r[JL];n?this.name=n.name+"-"+n.count++:r[JL]={name:this.name,count:0},this.updateDevTools({diagram:this.stateDiagram})}get stateDiagram(){let e=Object.getPrototypeOf(this),t=tN.get(e)||[],i=new Set,r=[],n=[],a=new Set,o=Object.getPrototypeOf(e);tN.has(o)&&(o.stateDiagram.forEach(e=>i.add(e)),o.allStates.forEach(e=>a.add(e))),t.forEach(e=>{let{from:t,to:i,action:a}=e;"string"==typeof t?r.push({from:t,to:i,action:a}):t.length?t.forEach(e=>{r.push({from:e,to:i,action:a})}):n.push({to:i,action:a})}),r.forEach(e=>{let{from:t,to:r,action:n}=e;a.add(t),a.add(r),a.add(n+"ing"),i.add("".concat(t," --\x3e ").concat(n,"ing : ").concat(n)),i.add("".concat(n,"ing --\x3e ").concat(r," : ").concat(n," 🟢")),i.add("".concat(n,"ing --\x3e ").concat(t," : ").concat(n," 🔴"))}),n.forEach(e=>{let{to:t,action:r}=e;i.add("".concat(r,"ing --\x3e ").concat(t," : ").concat(r," 🟢")),a.forEach(e=>{e!==t&&i.add("".concat(e," --\x3e ").concat(r,"ing : ").concat(r))})});let s=[...i];return Object.defineProperties(e,{stateDiagram:{value:s},allStates:{value:a}}),s}static get(t){let i;return"string"==typeof t?(i=e.instances.get(t),i||e.instances.set(t,i=new e(t,void 0,Object.create(e.prototype)))):(i=e.instances2.get(t),i||e.instances2.set(t,i=new e(t.constructor.name,void 0,Object.create(e.prototype)))),i}static getState(t){var i;return null===(i=e.get(t))||void 0===i?void 0:i.state}updateDevTools(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};rN(e.UPDATEAFSM,Object.assign({name:this.name,group:this.groupName},t))}get state(){return this._state}set state(e){nN.call(this,e)}};aN.STATECHANGED="stateChanged",aN.UPDATEAFSM="updateAFSM",aN.INIT="[*]",aN.ON="on",aN.OFF="off",aN.instances=new Map,aN.instances2=new WeakMap;var oN="undefined"!=typeof window,sN=oN&&window.requestIdleCallback||function(e){let t=Date.now();return setTimeout(()=>{e({didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))})},1e3)},cN=oN&&window.cancelIdleCallback||function(e){clearTimeout(e)},lN=oN&&(window.cancelAnimationFrame||window.mozCancelAnimationFrame),dN=class e{static generateTaskID(){return this.currentTaskID++}static run(e,t,i){null!=i&&i.fps&&(i.delay=i.delay||Number((1e3/i.fps).toFixed(2))),i=hA("interval"===e?{delay:2e3,count:0,backgroundTask:!0}:"ric"===e?{delay:1e4,count:0}:"raf"===e?{fps:60,delay:16.6,count:0,backgroundTask:!0}:{delay:2e3,count:0,backgroundTask:!0},i);let r=pA(hA({taskID:this.generateTaskID(),loopCount:0,intervalID:null,timeoutID:null,rafID:null,ricID:null,taskName:e,callback:t},i),{delay:i.delay});return this.taskMap.set(r.taskID,r),this[e](r),r.taskID}static interval(t){return t.intervalID=setInterval(()=>{t.callback(),t.loopCount+=1,e.isBreakLoop(t)},t.delay)}static intervalInWorker(t){e.sharedWorker||(e.sharedWorker=new Worker(URL.createObjectURL(new Blob(["\n const timers = new Map();\n self.onmessage = function(e) {\n const { taskId, delay, type } = e.data;\n if (type === 'start') {\n timers.set(taskId, setInterval(() => {\n self.postMessage({ type: 'tick', taskId });\n }, delay));\n } else if (type === 'stop') {\n clearInterval(timers.get(taskId));\n timers.delete(taskId);\n }\n };\n "],{type:"application/javascript"}))),e.sharedWorker.onmessage=t=>{var i;if("tick"===t.data.type){let r=e.workerTasks.get(t.data.taskId);r&&(e.isBreakLoop(r)?(null==(i=e.sharedWorker)||i.postMessage({type:"stop",taskId:r.taskID}),e.workerTasks.delete(r.taskID)):(r.callback(),r.loopCount+=1))}}),e.workerTasks.set(t.taskID,t),e.sharedWorker.postMessage({taskId:t.taskID,delay:t.delay,type:"start"})}static timeout(t){let i=()=>{if(t.callback(),t.loopCount+=1,!e.isBreakLoop(t))return t.timeoutID=setTimeout(i,t.delay)};return t.timeoutID=setTimeout(i,t.delay)}static ric(t){let i,r=iC(),n=()=>{if(i=iC()-r,i>=t.delay&&(r=iC()-Math.floor(i%t.delay),t.callback(),t.loopCount+=1),!e.isBreakLoop(t))return t.ricID=sN(n,{timeout:t.delay})};return t.ricID=sN(n,{timeout:t.delay})}static raf(t){let i,r=iC(),n=()=>document.hidden&&t.backgroundTask?(i=iC()-r,r=iC(),t.callback(),t.loopCount+=1,e.isBreakLoop(t)?void 0:t.timeoutID=setTimeout(n,t.delay-Math.floor(i%t.delay))):(i=iC()-r,i>=t.delay&&(r=iC()-Math.floor(i%t.delay),t.callback(),t.loopCount+=1),e.isBreakLoop(t)?void 0:t.rafID=requestAnimationFrame(n));if(t.rafID=requestAnimationFrame(n),t.backgroundTask){let e=()=>{if(document.hidden){let e=iC()-r;e>=t.delay?n():t.timeoutID=setTimeout(n,t.delay-e)}};document.addEventListener("visibilitychange",e),t.onVisibilitychange=e,document.hidden&&e()}return t.taskID}static hasTask(e){return this.taskMap.has(e)}static clearTask(e){if(!this.taskMap.has(e))return!0;let{intervalID:t,timeoutID:i,rafID:r,ricID:n,onVisibilitychange:a}=this.taskMap.get(e);return t&&clearInterval(t),i&&clearTimeout(i),r&&lN&&lN(r),n&&cN(n),a&&document.removeEventListener("visibilitychange",a),this.taskMap.delete(e),!0}static isBreakLoop(e){return!this.hasTask(e.taskID)||0!==e.count&&e.loopCount>=e.count&&(this.clearTask(e.taskID),!0)}};yA(dN,"taskMap",new Map),yA(dN,"currentTaskID",1),yA(dN,"sharedWorker",null),yA(dN,"workerTasks",new Map);var uN=dN,hN={LOAD_START:iR,LOADED_DATA:rR,LOADED_META_DATA:nR,MEDIA_TRACK_CHANGED:"media-track-changed",PLAYER_STATE_CHANGED:"player-state-changed",ERROR:"error",AUTOPLAY_FAILED:"autoplay-failed",RESIZE:dR,TIME_UPDATE:"time-update",LEAVE_PICTURE_IN_PICTURE:cR,ENTER_PICTURE_IN_PICTURE:sR,USER_RESUME_IN_PIP_OR_FULL_SCREEN:"user-resume-in-pip-or-full-screen",USER_PAUSE_IN_PIP_OR_FULL_SCREEN:"user-pause-in-pip-or-full-screen",ENTER_FULL_SCREEN:"enter-full-screen",LEAVE_FULL_SCREEN:"leave-full-screen",VOLUME_CHANGE:"volume-change",FIRST_FRAME_RENDER:"first-frame-render"},pN={};gA(pN,{create:()=>mN,remove:()=>gN});var fN=new WeakMap;function mN(e,t){fN.has(e)||fN.set(e,[]);let i=fN.get(e),r={add:(e,n)=>("addEventListener"in t?(i.push(t.removeEventListener.bind(t,e,n)),t.addEventListener(e,n)):(i.push(t.off.bind(t,e,n)),t.on(e,n)),r)};return r}function gN(e){let t=fN.get(e);t&&(t.forEach(e=>e()),fN.delete(e))}var _N=new class{constructor(){yA(this,"_roomIdMap",new Map),yA(this,"_configs"),"undefined"==typeof registerProcessor&&(this._configs={sdkAppId:"",userId:"",version:PA,env:HA,browserVersion:vO.name+vO.version,ua:navigator.userAgent})}setConfig(e){let{sdkAppId:t,env:i,userId:r,roomId:n}=e;t!==this._configs.sdkAppId&&(this._configs.sdkAppId=String(t)),this._configs.env=i,this._configs.userId=r,this._roomIdMap.set(r,String(n))}logSuccessEvent(e){gO||!kO.isAbleToUpload||this._configs.env===HA&&this.uploadEventToKibana(pA(hA({},e),{result:"success"}))}logFailedEvent(e){if(gO||!kO.isAbleToUpload)return;let{eventType:t,code:i,error:r,userId:n}=e,a={roomId:this._roomIdMap.get(n||this._configs.userId),userId:n,eventType:t,result:"failed",code:i||(null==r?void 0:r.extraCode)||(null==r?void 0:r.code)||YR.UNKNOWN};this._configs.env===HA&&this.uploadEventToKibana(pA(hA({},a),{error:r}))}uploadEventToKibana(e){let t="stat-".concat(e.eventType,"-").concat(e.result);("delta-join"===e.eventType||"delta-leave"===e.eventType||"delta-publish"===e.eventType)&&(t="".concat(e.eventType,":").concat(e.delta)),this.uploadEvent({log:t,userId:e.userId}),"failed"===e.result&&(t="stat-".concat(e.eventType,"-").concat(e.result,"-").concat(e.code),this.uploadEvent({log:t,userId:e.userId,error:e.error}))}uploadEvent(e){let{log:t,userId:i,error:r}=e,n={timestamp:QR(),sdkAppId:this._configs.sdkAppId,userId:i||this._configs.userId,version:PA,log:t};r&&(n.errorInfo=r.message,r.stack&&(n.errorInfo+="\n".concat(r.stack)));let a=AO.enable?OC(n,2002,Number(this._configs.sdkAppId)):JSON.stringify(n);this.sendRequest(wk(this._configs.sdkAppId,VA),a)}sendRequest(e,t){setTimeout(()=>VC({url:e,body:t,priority:"low"}).catch(()=>{}),2e3)}},vN=new WeakMap;var yN=class extends aN{constructor(e,t){super(e.id,"".concat(t,"-player")),this.options=e,this.kind=t,yA(this,"id"),yA(this,"element",null),yA(this,"track"),yA(this,"url"),yA(this,"attr"),yA(this,"mode"),yA(this,"muted"),yA(this,"_log"),yA(this,"isPausedByUserCall",!1),yA(this,"_pausedRetryCount"),yA(this,"_isElementPlayingFired",!1),yA(this,"_interval"),yA(this,"_delayDestroyTimeoutId",0),yA(this,"_playSuccessResolve"),yA(this,"_isReplayByRecreateMediaStreamCalled",!1),yA(this,"isPlayCalled",!1),yA(this,"isInAutoPlayFailedState",!1),this.id=e.id,this._log=e.log,this.track=e.track,this.muted=e.muted,this._pausedRetryCount=5,this._state="STOPPED",this.bindTrackEvents(),this._log.info("create ".concat(t,"-player ").concat(this.id))}get isPlaying(){var e;return"PLAYING"===this._state&&!1===(null==(e=this.element)?void 0:e.paused)}get isPaused(){var e;return"PAUSED"===this._state||!0===(null==(e=this.element)?void 0:e.paused)}get isStopped(){return"STOPPED"===this._state}setAttr(e){this.attr=e}setUrl(e){this.track&&(this.unbindTrackEvents(),this.element&&(this.element.srcObject=null),this.track=null),e!==this.url&&(this.url=e,null!==e&&this.element&&(this.element.crossOrigin="anonymous",this.element.src=e))}async play(){if(!this.isPlaying)try{this.isPlayCalled=!0,this._delayDestroyTimeoutId&&(clearTimeout(this._delayDestroyTimeoutId),this._delayDestroyTimeoutId=0,this.bindTrackEvents(),this.bindElementEvents()),this.bindAutoPlayEvent(),await new Promise((e,t)=>{this._playSuccessResolve=e,this.element.play().then(e,t)})}catch(_x){let t=xO({key:OO.PLAY_FAILED,data:{media:this.kind,error:_x}});if(this._log.warn(_x),t.includes("NotAllowedError"))throw this.isInAutoPlayFailedState=!0,new ZR({code:YR.PLAY_NOT_ALLOWED,message:t})}}stop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;var t;this.isPlayCalled=!1,this.isPausedByUserCall=!1,this._isElementPlayingFired=!1,this.unbindEvents(),e>0&&!cO?this._delayDestroyTimeoutId||(null==(t=this.element)||t.remove(),this._log.info("destroy element after 3 * ".concat(e)),this._delayDestroyTimeoutId=setTimeout(()=>this.destroyElement(),3*e)):this.destroyElement(),this.handleStopped(QA),this._interval>0&&uN.clearTask(this._interval)}destroyElement(){this.element&&(this._log.debug("destroy element"),this.element.remove(),this.element.src="",this.element.srcObject=null,this.element=null),clearTimeout(this._delayDestroyTimeoutId),this._delayDestroyTimeoutId=0}pause(){this._log.info("pause"),this.isPausedByUserCall=!0,this.doPause()}doPause(){var e;null==(e=this.element)||e.pause()}resume(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.isPausedByUserCall=!1,this.doResume(e)}doResume(){return this._log.info("resume"),this.isPausedByUserCall||this.isPlaying?Promise.resolve():pO?this.replay():this.play().catch(()=>{})}setMuted(e){this.element&&(this.element.muted=e),this.muted=e}replay(){return this.stop(),this.play().catch(()=>{})}bindElementEvents(){if(this.element){let e=this.handleElementEvent.bind(this);return mN(this.element,this.element).add($A,e).add(QA,e).add(eR,e).add(tR,e).add(iR,e).add(rR,e).add(nR,e)}}bindTrackEvents(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.track;if(e){let t=this.handleTrackEvent.bind(this);null==pN||pN.create(e,e).add(QA,t).add(ZA,t).add(JA,t),e.readyState===QA&&this.handleTrackEvent({type:QA}),e.muted&&this.handleTrackEvent({type:ZA})}}bindAutoPlayEvent(){TO.listeners(SO.AUTOPLAY_DIALOG_CLICK_CONFIRM).includes(this.resume)||TO.on(SO.AUTOPLAY_DIALOG_CLICK_CONFIRM,this.resume,this)}unbindTrackEvents(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.track;e&&gN(e)}unbindEvents(){this.element&&gN(this.element),this.unbindTrackEvents(),TO.off(SO.AUTOPLAY_DIALOG_CLICK_CONFIRM,this.resume,this)}handleElementEvent(e){switch(e.type){case $A:UN()||(this.isInAutoPlayFailedState=!1),this._isElementPlayingFired=!0,this._log.info("".concat(this.kind," player is playing")),this.handlePlaying($A),this._interval&&(uN.clearTask(this._interval),this._interval=-1);break;case QA:this._log.info("".concat(this.kind," player is ended")),this.handleStopped(QA);break;case eR:this._log.info("".concat(this.kind," player is paused")),this.handlePaused(eR);break;case tR:if(this.element&&this.element.error){this.handlePaused(tR);let{code:e,message:t}=this.element.error;this._log.error("".concat(this.kind," ").concat(this._log.isLocal?"local":"remote"," MediaError code: ").concat(e," message: ").concat(t," userAgent: ").concat(navigator.userAgent)),_N.uploadEvent({log:"stat-".concat(this.kind,"-").concat(uR,"-").concat(e,"-").concat(navigator.userAgent),error:this.element.error}),WD||zD?this.emit(hN.ERROR,this.element.error):this.replayByRecreateMediaStream(this.element.error)}break;case rR:this.kind===KA&&this.emit(hN.LOADED_DATA);break;case nR:this.kind===KA&&this.emit(hN.LOADED_META_DATA);break;case iR:this.emit(hN.LOAD_START)}}replayByRecreateMediaStream(e){if(!this._isReplayByRecreateMediaStreamCalled)return this._isReplayByRecreateMediaStreamCalled=!0,this.doReplayByRecreateMediaStream(1e3).then(()=>{this._log.warn("replayByRecreateMediaStream success"),_N.uploadEvent({log:"stat-replayByRecreateMediaStream-success"}),HO.addSuccessEvent({key:this.kind===qA?506700:516700})}).catch(()=>{var t;this._log.error("replayByRecreateMediaStream failed"),_N.uploadEvent({log:"stat-replayByRecreateMediaStream-failed"}),HO.addFailedEvent({key:this.kind===qA?506700:516700,error:null==(t=this.element)?void 0:t.error}),this.emit(hN.ERROR,e)})}doReplayByRecreateMediaStream(e){return this._log.warn("delay ".concat(e,"ms to recreate mediaStream")),new Promise((t,i)=>{wC(e).then(()=>{this.element&&(this.element.srcObject=null,this.element.srcObject=new MediaStream([this.track]),this._log.warn("recreated mediaStream"),this.element.onerror=()=>{var e,t,r;this._log.warn("element onerror ".concat(null==(t=null==(e=this.element)?void 0:e.error)?void 0:t.code," fired after recreated mediaStream")),i(null==(r=this.element)?void 0:r.error)}),wC(5e3).then(()=>{var e,r;(!this.isPlaying||null!=(e=this.element)&&e.error)&&i(null==(r=this.element)?void 0:r.error),t()})})}).finally(()=>{this.element&&(this.element.onerror=null)})}async handleTrackEvent(e){let t=e.type;switch(this.options.enableLogTrackState&&this._log[t===JA?"info":"warn"]("track ".concat(t)),t){case QA:this.handleStopped(QA);break;case ZA:this.handlePaused(ZA);break;case JA:this.mode>0?this.handlePlaying(this.mode.toString()):this.element&&(this.element.paused&&!this.isPausedByUserCall&&(this._log.warn("track unmuted and element is paused, resume"),await this.doResume()),this.element&&!this.element.paused&&this._isElementPlayingFired&&this.handlePlaying(JA))}}handlePlaying(e){var t;return this._log.debug("handlePlaying",e),null==(t=this._playSuccessResolve)||t.call(this,e),e}handlePaused(e){return this._log.debug("handlePaused",e),e}handleStopped(e){return this._log.debug("handleStopped",e),e}getElement(){return this.element}};yA(yN,"PlayerEvent",hN),vA([function(e){let{settings:t={retries:5,timeout:2e3},onError:i,onRetrying:r,onRetryFailed:n}=e;return function(e,a,o){let s=qC({retryFunction:o.value,settings:t,onError(t){let{error:r,retry:n,reject:o,retryFuncArgs:s}=t;var c;i?i.call(this,r,()=>{var t;null!=(t=vN.get(e))&&t.has(a)?n():o(r)},o,s):null!=(c=vN.get(e))&&c.has(a)?n():o(r)},onRetrying(t,i){var n;jC(r)&&r.call(this,t,i),null!=(n=vN.get(e))&&n.has(a)&&(vN.get(e).get(a).stopRetry=i)},onRetryFailed:n});return o.value=function(){let t=vN.get(e);for(var i=arguments.length,r=new Array(i),n=0;n<i;n++)r[n]=arguments[n];return t?t.set(a,{args:r}):vN.set(e,new Map([[a,{args:r}]])),s.apply(this,r).finally(()=>{var t;return null==(t=vN.get(e))?void 0:t.delete(a)})},o}}({settings:{retries:2,timeout:0},onError(e,t,i,r){r[0]=(r[0]||1e3)+1e3,t()}})],yN.prototype,"doReplayByRecreateMediaStream",1),vA([iN([],"PLAYING",{sync:!0,success(e){this.emit(hN.PLAYER_STATE_CHANGED,{type:this.kind,state:"PLAYING",reason:e})}})],yN.prototype,"handlePlaying",1),vA([iN("PLAYING","PAUSED",{ignoreError:!0,sync:!0,success(e){this.emit(hN.PLAYER_STATE_CHANGED,{type:this.kind,state:"PAUSED",reason:e})}})],yN.prototype,"handlePaused",1),vA([iN([],"STOPPED",{sync:!0,success(e){this.emit(hN.PLAYER_STATE_CHANGED,{type:this.kind,state:"STOPPED",reason:e})}})],yN.prototype,"handleStopped",1);var EN="trtc_autoplay",bN="".concat(EN,"_mask"),wN="".concat(EN,"_wrapper"),IN="".concat(EN,"_header"),TN="".concat(EN,"_content"),SN="".concat(EN,"_action_wrapper"),AN="".concat(EN,"_question"),RN="".concat(EN,"_collapse"),kN="".concat(EN,"_action_confirm"),CN="".concat(EN,"_detail"),DN="#2473E8",ON="dialog",LN="".concat(ON,"-show"),NN="".concat(ON,"-1"),PN="".concat(ON,"-2"),xN=!1,MN=!1,UN=()=>MN,FN="".concat(UA,"/").concat(Mk()?"zh-cn":"en","/tutorial-21-advanced-auto-play-policy.html"),BN="<br><a href='".concat(FN,"' target='_blank'>").concat(Mk()?"其他方案?":"Any other solution?","</a>"),VN="".concat(Mk()?"浏览器自动播放策略:在用户与页面产生交互(点击、触摸)之前,浏览器禁止播放有声媒体。该弹窗用于帮助用户恢复音视频播放。".concat(BN):"Autoplay Policy: Before user interacts with the web page (clicking, touching), page will not be allowed to play media with sound. This Dialog is used to help users resume playback. ".concat(BN)),HN=class{constructor(){if(yA(this,"content","音视频播放被浏览器拦截,请点击“恢复播放”。"),yA(this,"_dialogNode",null),yA(this,"_bodyPosition",""),yA(this,"_showDetail",!1),yA(this,"_isCollapseClicked",!1),yA(this,"_isQuestionClicked",!1),Mk()||(this.content='Media playback failed. Click the "Resume" to resume playback.'),!xN){let e=document.createElement("style");e.innerHTML=".".concat(bN,"{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,0.5);z-index:1500;}.").concat(bN," div:not(.").concat(SN,"){display:block !important;}.").concat(wN,"{padding:14px;background:#fff;border-radius:3px;box-shadow:0px 3px 15px #434343;border:1px solid #d1cfcf;max-width:500px;}.").concat(wN," a{color:").concat(DN,";}.").concat(IN,"{overflow:hidden;text-overflow:ellipsis;font-size:16px;font-weight:600;}.").concat(TN,"{margin:8px 0;}.").concat(SN,"{width:100%;display:flex !important;align-items:center;justify-content:right;float:right;}.").concat(RN,"{margin-right:auto;cursor:pointer}.").concat(AN,"{height:100%;line-height:16px;cursor:pointer;}.").concat(kN,"{margin-left:8px;color:#fff;background:").concat(DN,";padding:4px 12px;outline:none;border:1px solid;border-radius:3px;font-weight:bold;}.").concat(kN,":hover{opacity:0.9;}.").concat(RN,",.").concat(kN,",.").concat(TN,",.").concat(AN,"{font-size:14px;}@media screen and (max-width:750px){.").concat(wN,"{width:80vw;}}"),document.head.appendChild(e),xN=!0}this.addDiaLog()}createDiaLog(){let e=document.createElement("template");e.innerHTML='<div class="'.concat(bN,"\"><div class='").concat(wN,"'><div class='").concat(IN,"'>").concat(location.host,"</div><div class='").concat(TN,"'>").concat(this.content,"</div><div class='").concat(CN,'\' style="visibility:hidden;width:100%;height:0;font-size:12px;color:gray;">').concat(VN,"</div><div class='").concat(SN,"'></div></div></div>").trim();let t=document.createElement("button");t.className=kN,t.innerText=Mk()?"恢复播放":"Resume",t.onclick=this.onConfirm.bind(this);let i=document.createElement("div");i.className=AN,i.innerHTML='<?xml version="1.0" encoding="UTF-8"?>\n <svg class="icon" width="18" height="18" p-id="2030" t="1639646523624" version="1.1" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg">\n <path d="m464 784.35c0 26.51 21.49 48 48 48s48-21.49 48-48-21.49-48-48-48-48 21.49-48 48z" p-id="2031"/>\n <path d="m512 960c-247.04 0-448-200.96-448-448s200.96-448 448-448 448 200.96 448 448-200.96 448-448 448zm0-831.71c-211.58 0-383.71 172.13-383.71 383.71 0 211.55 172.13 383.71 383.71 383.71 211.55 0 383.71-172.16 383.71-383.71 0-211.58-172.16-383.71-383.71-383.71z" p-id="2032"/>\n <path d="m512 673.7c-17.665 0-32.001-14.336-32.001-31.999v-54.112c0-52.353 40-92.352 75.328-127.65 25.887-25.92 52.672-52.672 52.672-74.017 0-53.343-43.072-96.735-95.999-96.735-53.823 0-95.999 41.536-95.999 94.559 0 17.665-14.336 31.999-32.001 31.999s-32.001-14.336-32.001-31.999c0-87.424 71.775-158.56 160-158.56s160 72.095 160 160.74c0 47.904-36.32 84.192-71.424 119.3-27.84 27.776-56.576 56.512-56.576 82.336v54.112c0 17.665-14.336 32.032-32.001 32.032z" p-id="2033"/>\n </svg>\n ',i.onclick=this.onQuestionClick.bind(this);let r=document.createElement("div");r.className=RN,r.innerText="".concat(Mk()?"详情 >":"Detail >"),r.onclick=this.onCollapseClick.bind(this);let n=e.content.firstChild,a=n.querySelector(".".concat(SN));return a.appendChild(r),a.appendChild(i),a.appendChild(t),n}addDiaLog(){UN()||(MN=!0,this._dialogNode=this.createDiaLog(),document.body.appendChild(this._dialogNode),this._dialogNode.onclick=this.onConfirm.bind(this),this._dialogNode.querySelector(".".concat(wN)).onclick=e=>e.stopPropagation(),this._bodyPosition=document.body.style.position,document.body.style.position="fixed",kO.info("show autoplay dialog"),_N.uploadEvent({log:LN}))}deleteDialog(){this._dialogNode&&(document.body.removeChild(this._dialogNode),document.body.style.position=this._bodyPosition,this._dialogNode=null,MN=!1),jN=null}onConfirm(){kO.warn("confirm clicked, try resume stream"),TO.emit(SO.AUTOPLAY_DIALOG_CLICK_CONFIRM),this.deleteDialog()}onCollapseClick(){let e=this._dialogNode.querySelector(".".concat(CN));e.style.visibility="".concat(this._showDetail?"hidden":"visible"),e.style.height="".concat(this._showDetail?0:"fit-content"),this._showDetail=!this._showDetail,this._isCollapseClicked||_N.uploadEvent({log:NN}),this._isCollapseClicked=!0}onQuestionClick(){window.open(FN,"_blank"),this._isQuestionClicked||_N.uploadEvent({log:PN}),this._isQuestionClicked=!0}},jN=null;var zN,WN=class extends yN{constructor(e){super(e,KA),yA(this,"stat",{}),yA(this,"_calculateTimeout",-1),yA(this,"viewMirror",!1),yA(this,"objectFit","cover"),yA(this,"container"),yA(this,"canvas"),yA(this,"shouldRenderAlpha",!1),yA(this,"_preSize",{width:0,height:0}),yA(this,"posterImg"),yA(this,"pipWindow"),yA(this,"enterPIPPromise"),yA(this,"_originContainerPosition"),yA(this,"_isResettingSrcObject",!1),yA(this,"_wrapper",null),yA(this,"_useWrapper",!1),yA(this,"_isFirstFrameRenderEmitted",!1),this.mode=e.canvas?1:0,this.container=e.container,this.canvas=e.canvas,jk(e.viewMirror)||(this.viewMirror=e.viewMirror),jk(e.objectFit)||(this.objectFit=e.objectFit),this.initializeElement()}get isPlaying(){var e;return!("PLAYING"!==this._state||this.element&&this.element.paused)&&("live"===(null==(e=this.track)?void 0:e.readyState)&&!this.track.muted)}initializeElement(){let e=document.createElement(KA);this.track&&2!==this.mode&&(e.srcObject=new MediaStream([this.track])),e.muted=!0,e.setAttribute("id","video_".concat(this.id)),e.setAttribute("style",this.styleAttribute),this.canvas&&this.canvas.setAttribute("style",this.styleAttribute),e.setAttribute("autoplay","autoplay"),e.setAttribute("playsinline","playsinline"),this.element=e,aD&&(e.poster="data:,"),this._appendToWrapper(),this.bindElementEvents(),this.calculateStat(),this._bindFirstFrameRenderEvent(e)}_bindFirstFrameRenderEvent(e){let t=()=>{if(this._isFirstFrameRenderEmitted)return;this._isFirstFrameRenderEmitted=!0;let t=e.videoWidth||0,i=e.videoHeight||0;this._log.info("first frame render: ".concat(t,"x").concat(i)),this.emit(hN.FIRST_FRAME_RENDER,{width:t,height:i})};"function"==typeof e.requestVideoFrameCallback?e.requestVideoFrameCallback(t):e.addEventListener("loadeddata",t,{once:!0})}get styleAttribute(){let e=this._useWrapper?"grid-area:1/1;width:100%;height:100%;object-fit:".concat(this.objectFit,";").concat(this.shouldRenderAlpha?"":"background-color:black",";"):"width:100%;height:100%;object-fit:".concat(this.objectFit,";").concat(this.shouldRenderAlpha?"":"background-color:black",";");return this.viewMirror&&(e+="transform:scaleX(-1);"),e}setLiveMode(e){if(this._useWrapper!==e&&(this._useWrapper=e,this.elementToRender&&this.elementToRender.setAttribute("style",this.styleAttribute),this.container&&this.elementToRender))if(e){let e=this._getOrCreateWrapper();e.insertBefore(this.elementToRender,e.firstChild)}else this.container.appendChild(this.elementToRender),this._cleanupWrapper()}setContainer(e){if(this.container===e)return;let t=this._wrapper,i=this.container;this.container=e,this._pausedRetryCount=5,this.track&&this.elementToRender&&this._appendToWrapper(),t&&i&&i!==this.container&&t.isConnected&&0===t.children.length&&t.remove()}_getOrCreateWrapper(){if(!this.container)throw new Error("[VideoPlayer] container is required");let e=this.container.querySelector("[data-trtc-video-wrapper]");return e||(e=document.createElement("div"),e.setAttribute("data-trtc-video-wrapper","true"),e.style.cssText="display:grid;width:100%;height:100%;",this.container.appendChild(e)),this._wrapper=e,e}_appendToWrapper(e){let t=null!=e?e:this.elementToRender;if(this.container&&t)if(this._useWrapper){let e=this._getOrCreateWrapper();e.insertBefore(t,e.firstChild)}else this.container.appendChild(t)}bindElementEvents(){let e=super.bindElementEvents();this.handleElementEvent=this.handleElementEvent.bind(this),this.handleFullscreenChange=this.handleFullscreenChange.bind(this),this.handleVolumeChange=this.handleVolumeChange.bind(this),e&&e.add(sR,this.handleElementEvent).add(cR,this.handleElementEvent).add(dR,this.handleElementEvent),this.element&&(this.element.addEventListener(lR,this.handleFullscreenChange),this.element.addEventListener("webkitbeginfullscreen",this.handleFullscreenChange),this.element.addEventListener("webkitendfullscreen",this.handleFullscreenChange),this.element.addEventListener("volumechange",this.handleVolumeChange))}handleTrackEvent(e){var t;return e.type===ZA&&(null!=(t=this.stat)&&t.fps&&(this.stat.fps=0),this.isFullscreen()&&this.resetSrcObjectToReplay()),super.handleTrackEvent(e)}handleFullscreenChange(){this.isFullscreen()?(this._log.info("enter fullscreen"),this.emit(hN.ENTER_FULL_SCREEN)):(this._log.info("leave fullscreen"),this.emit(hN.LEAVE_FULL_SCREEN))}handleVolumeChange(){var e;(this.isPictureInPicture()||this.isFullscreen())&&this.emit(hN.VOLUME_CHANGE,{muted:null==(e=this.element)?void 0:e.muted})}handleElementEvent(e){var t,i,r,n,a,o;if(2===this.mode)return;super.handleElementEvent(e);let s=e.type,c=this.isPictureInPicture(),l=this.isFullscreen(),d=e.isTrusted&&(c&&sO||l);if(s===$A&&d&&!this._isResettingSrcObject&&(this._log.warn("user resume in ".concat(l?"fullscreen":"pip")),this.emit(hN.USER_RESUME_IN_PIP_OR_FULL_SCREEN)),s===eR&&(d&&(this._log.warn("user pause in ".concat(l?"fullscreen":"pip")),this.emit(hN.USER_PAUSE_IN_PIP_OR_FULL_SCREEN)),this.container&&!this.container.isConnected&&(this._log.warn("".concat(this.kind," player has been remove, element ID: ").concat(this.container.id)),wC(500).then(()=>{var e;null!=(e=this.container)&&e.isConnected&&(this._pausedRetryCount=5,this._log.info("view container ".concat(this.container.id," is in dom, reset pausedRetryCount")))})),this._pausedRetryCount>0&&!UN()&&!this.isPausedByUserCall&&!d&&(this._log.info("[".concat(5-this._pausedRetryCount+1,"/").concat(5,"] ").concat(this.kind," player auto resume when paused")),this.doResume(),this._pausedRetryCount--),rD&&!d&&(this._interval=uN.run("timeout",()=>{this.element&&"PAUSED"===this._state&&!this.isPausedByUserCall&&this.doResume()},{delay:3e3})),this.stat.fps&&(this.stat.fps=0)),this.viewMirror&&this.element){let e=this.element.style.transform;s===sR?this.element.style.transform=e.replace("scaleX(-1)",""):s===cR&&!e.includes("scaleX")&&(this.element.style.transform="".concat(e," scaleX(-1)"))}s===dR&&(this._preSize.height!==(null==(t=this.element)?void 0:t.videoHeight)||this._preSize.width!==(null==(i=this.element)?void 0:i.videoWidth))&&(this._log.info("video size changed to ".concat(null==(r=this.element)?void 0:r.videoWidth,"x").concat(null==(n=this.element)?void 0:n.videoHeight)),this._preSize.height=(null==(a=this.element)?void 0:a.videoHeight)||0,this._preSize.width=(null==(o=this.element)?void 0:o.videoWidth)||0,this.emit(hN.RESIZE,{newWidth:this._preSize.width,newHeight:this._preSize.height})),s===cR&&(this._log.warn("exit pip"),this.isPaused&&!this.isPausedByUserCall&&(this._log.warn("resume after exit pip"),this.doResume()),this.resetSrcObjectToReplay(),this.emit(hN.LEAVE_PICTURE_IN_PICTURE)),s===sR&&this.emit(hN.ENTER_PICTURE_IN_PICTURE)}resetSrcObjectToReplay(){aD&&aO&&this.isPlayCalled&&this.element&&this.track&&!this.isPausedByUserCall&&(this._log.warn("reset srcObject to replay for android chromium"),this._isResettingSrcObject=!0,this.element.srcObject=new MediaStream([this.track]),this.element.play().catch(e=>{this._log.warn("play failed after reset srcObject",e)}).finally(()=>{this._isResettingSrcObject=!1}))}setCanvas(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;var i,r;this.canvas!==e&&(null==(i=this.canvas)||i.remove(),null==e||e.setAttribute("style",this.styleAttribute),this.canvas=e,this.mode=e?t:0,2===this.mode&&this.setTrack(e.captureStream().getVideoTracks()[0]),e?(null==(r=this.element)||r.remove(),this._appendToWrapper(e)):this.element&&this._appendToWrapper(this.element))}setAttr(e){let t=Object.assign({autoplay:"autoplay",playsinline:"playsinline",muted:!0},e);t.style=Object.assign({width:"100%",height:"100%"},t.style),super.setAttr(t)}get mirror(){return this.viewMirror}setRect(e,t){this.elementToRender&&(this.elementToRender.style.width="".concat(e,"px"),this.elementToRender.style.height="".concat(t,"px"))}setViewMirror(e){this.elementToRender&&(this.elementToRender.style.transform=e?"scaleX(-1)":""),this.viewMirror=e}setObjectFit(e){this.elementToRender&&(this.elementToRender.style.objectFit="".concat(e)),this.objectFit=e}setPoster(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new Promise(i=>{if(!this.element||(this._log.info("setPoster",e.slice(0,10)),""===e?this.element.removeAttribute("poster"):this.element.poster=e,!t||!sO&&!sD))return i();if(""===e)return this.removePosterImg(),i();if(this.posterImg)return i();let r=document.createElement("img");r.src=e;let n=window.getComputedStyle(this.element),a=n.objectFit||this.objectFit,o=1;if(this._useWrapper){let e=parseInt(n.zIndex,10);isNaN(e)||(o=e+1)}r.style.cssText=this._useWrapper?"grid-area:1/1;z-index:".concat(o,";width:100%;height:100%;object-fit:").concat(a,";"):"position:absolute;top:0;left:0;width:100%;height:100%;object-fit:".concat(a,";"),r.onload=async()=>{try{r.decode&&await r.decode(),this.container&&!this._useWrapper&&"static"===window.getComputedStyle(this.container).position&&(this._originContainerPosition=this.container.style.position,this.container.style.position="relative"),this.posterImg=r;let e=this._useWrapper?this._wrapper:this.container;null==e||e.appendChild(r),nD()&&hO<=17&&this.elementToRender&&(this.elementToRender.style.visibility="hidden")}catch(e){this._log.warn("decode poster image error",e)}return i()},r.onerror=()=>(this._log.warn("load poster image error"),i())})}removePosterImg(){this.posterImg&&(nD()&&hO<=17&&this.elementToRender&&(this.elementToRender.style.visibility=""),this.posterImg.remove(),URL.revokeObjectURL(this.posterImg.src),!this._useWrapper&&this.container&&!jk(this._originContainerPosition)&&"relative"===this.container.style.position&&(this.container.style.position=this._originContainerPosition),delete this.posterImg)}get hasPoster(){var e;return!!this.posterImg||!(null==(e=this.element)||!e.getAttribute("poster"))}async pause(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];super.pause(),!this.isPictureInPicture()&&!this.hasPoster&&(aO||e&&(sD||sO))&&await this.setPoster(this.getVideoFrame(),!0)}resume(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return super.resume(e).then(()=>{var e;(this.posterImg||null!=(e=this.element)&&e.poster)&&this.setPoster("",!0)})}doResume(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.isPaused&&e&&this.element&&this.track&&aO&&"video"===this.track.kind&&(this.element.srcObject=new MediaStream([this.track])),super.doResume()}stop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;var t;this.isPictureInPicture()&&this.exitPictureInPicture().catch(e=>{}),this.isFullscreen()&&this.exitFullscreen().catch(e=>{}),this.element&&(this.element.removeEventListener(lR,this.handleFullscreenChange),this.element.removeEventListener("webkitbeginfullscreen",this.handleFullscreenChange),this.element.removeEventListener("webkitendfullscreen",this.handleFullscreenChange),this.element.removeEventListener("volumechange",this.handleVolumeChange)),this._isFirstFrameRenderEmitted=!1,super.stop(e),null==(t=this.canvas)||t.remove(),this.removePosterImg(),this._useWrapper&&this._cleanupWrapper()}_cleanupWrapper(){this._wrapper&&0===this._wrapper.children.length&&this._wrapper.remove(),this._wrapper=null}play(e){if(jk(null==e?void 0:e.isLiveStream)||this.setLiveMode(e.isLiveStream),this.element){if(this.elementToRender&&this.container)if(this._useWrapper){let e=this._getOrCreateWrapper();this.elementToRender.parentElement!==e&&e.insertBefore(this.elementToRender,e.firstChild)}else this.elementToRender.parentElement!==this.container&&this.container.append(this.elementToRender)}else this.initializeElement();return 2===this.mode?Promise.resolve():super.play()}get elementToRender(){return this.canvas||this.element}setTrack(e){e!==this.track&&(this.unbindTrackEvents(),this.track=e,this.emit(hN.MEDIA_TRACK_CHANGED,e),null!==e&&(this.bindTrackEvents(),this.element&&2!==this.mode&&(this.element.srcObject=new MediaStream([e]),this.element.remove()),this._appendToWrapper()))}getVideoFrame(){if(this.canvas)return this.canvas.toDataURL("image/png");if(!this.element)return"";let e=document.createElement("canvas");return e.width=this.element.videoWidth,e.height=this.element.videoHeight,e.getContext("2d").drawImage(this.element,0,0),e.toDataURL("image/png")}getElement(){return this.element}calculateStat(){try{if(jL()&&this.element&&this._calculateTimeout<0){let e=0,t=null,i=(r,n)=>{this.stat.width=n.width,this.stat.height=n.height,t&&(this.stat.fps=Math.round((n.presentedFrames-t.presentedFrames)/(r-e)*1e3)),e=r,t=n,this._calculateTimeout=-1,this.element&&(this._calculateTimeout=setTimeout(()=>{var e;return null==(e=this.element)?void 0:e.requestVideoFrameCallback(i)},2e3))};this.element.requestVideoFrameCallback(i)}}catch(_x){this._log.warn("init stat failed",_x)}}async enterFullscreen(){let e=this.elementToRender;if(!e)throw this._log.warn("no element to render, cannot enter fullscreen"),new Error("No element available for fullscreen");if(rD&&this.isPictureInPicture()){this._log.info("exit pip before entering fullscreen");try{await this.exitPictureInPicture()}catch(OA){this._log.warn("exit pip failed before fullscreen:",OA)}}try{if(e.requestFullscreen)await e.requestFullscreen();else if(e.webkitRequestFullscreen)await e.webkitRequestFullscreen();else if(e.webkitEnterFullscreen)await e.webkitEnterFullscreen();else if(e.mozRequestFullScreen)await e.mozRequestFullScreen();else{if(!e.msRequestFullscreen)throw new Error("Fullscreen API not supported");await e.msRequestFullscreen()}this._log.info("entered fullscreen mode")}catch(OA){throw this._log.error("failed to enter fullscreen:",OA),OA}}async exitFullscreen(){try{if(!this.isFullscreen())return;if(document.exitFullscreen)await document.exitFullscreen();else if(document.webkitExitFullscreen)await document.webkitExitFullscreen();else if(document.mozCancelFullScreen)await document.mozCancelFullScreen();else{if(!document.msExitFullscreen)throw new Error("Exit fullscreen API not supported");await document.msExitFullscreen()}this._log.info("exited fullscreen mode")}catch(_x){throw this._log.error("failed to exit fullscreen:",_x),_x}}isFullscreen(){let e=this.elementToRender;return!!e&&(this.element&&this.element.webkitDisplayingFullscreen?!this.isPictureInPicture():(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement)===e)}async toggleFullscreen(){this.isFullscreen()?await this.exitFullscreen():await this.enterFullscreen()}async enterPictureInPicture(){this.enterPIPPromise=this._enterPictureInPicture();try{return await this.enterPIPPromise}finally{delete this.enterPIPPromise}}async _enterPictureInPicture(){try{if(!this.element)throw new Error("No video element available for pip");if(this.canvas&&1!==this.mode)throw new Error("pip is not supported for canvas-only mode");let{element:e}=this;if(e.requestPictureInPicture){this._log.info("requestPictureInPicture");let t=await e.requestPictureInPicture();return this.pipWindow=t,this._log.info("entered pip mode"),this.elementToRender===this.canvas&&(this.canvas.remove(),this._appendToWrapper(this.element)),t}if(e.webkitSetPresentationMode)return this._log.info("webkitSetPresentationMode"),await e.webkitSetPresentationMode("picture-in-picture"),this._log.info("entered pip mode (webkit)"),{};throw new Error("pip API not supported")}catch(_x){throw this._log.error("failed to enter pip:",_x.name,_x.message),_x}}async exitPictureInPicture(){var e;try{if(!this.isPictureInPicture())return;if(delete this.pipWindow,document.pictureInPictureElement&&document.exitPictureInPicture)await document.exitPictureInPicture(),this.elementToRender===this.canvas&&(null==(e=this.element)||e.remove(),this._pausedRetryCount=5,this._appendToWrapper(this.canvas)),this._log.info("exited pip mode");else{if(!this.element||!this.element.webkitSetPresentationMode)throw new Error("Exit pip API not supported or not in PiP mode");await this.element.webkitSetPresentationMode("inline"),this._log.info("exited pip mode (webkit)")}}catch(OA){throw this._log.error("failed to exit pip:",OA),OA}}isPictureInPicture(){if(!this.element)return!1;let{element:e}=this;return document.pictureInPictureElement?document.pictureInPictureElement===e:!!e.webkitPresentationMode&&"picture-in-picture"===e.webkitPresentationMode}async togglePictureInPicture(){this.isPictureInPicture()?await this.exitPictureInPicture():await this.enterPictureInPicture()}};"undefined"!=typeof AudioContext?zN=AudioContext:"undefined"!=typeof webkitAudioContext?zN=webkitAudioContext:"undefined"!=typeof mozAudioContext&&(zN=mozAudioContext);var GN,qN=-1,KN=0,YN=-1,XN=!1,ZN=0,JN=-1,QN=-1;!function e(){try{if(GN)return;(GN=new zN({sampleRate:48e3})).onstatechange=()=>{kO.info("context state: ".concat(GN.state).concat("running"!==GN.state?" visibilityState: ".concat(document.visibilityState):"")),$N()},clearTimeout(qN)}catch($S){kO.error("initAudioContext failed: ".concat($S," typeof AudioContextClass: ").concat(typeof zN)),qN=setTimeout(e,1e3)}}();var $N=()=>{"suspended"===GN.state?(KN=iC(),-1===YN&&(YN=setTimeout(()=>{"suspended"===GN.state&&(XN=!0,TO.emit("155",{isSuspended:!0}))},1500)),iP(),document.addEventListener("click",$N)):"interrupted"===GN.state?iP():(KN&&(HO.addNumber({key:507800,value:iC()-KN,split:[0,500,1e3,1500,2e3,3e3,4e3,5e3,1e4,3e4],max:6e4}),KN=0),-1!==YN&&(clearTimeout(YN),YN=-1,XN&&(XN=!1,TO.emit("155",{isSuspended:!1}))),document.removeEventListener("visibilitychange",$N),document.removeEventListener("click",$N))},eP=0,tP=-1;function iP(){return new Promise((e,t)=>{if("running"===GN.state)return e();Date.now()-eP<1e3?(clearTimeout(tP),tP=setTimeout(()=>{eP=Date.now(),GN.resume().then(e,t)},1e3)):(clearTimeout(tP),eP=Date.now(),GN.resume().then(e,t))}).catch(e=>{kO.warn("context resume failed: ".concat(e)),document.addEventListener("visibilitychange",$N)})}document.addEventListener("click",$N);var rP=e=>GN,nP=class{constructor(e){this.name=e,yA(this,"node"),yA(this,"node2"),yA(this,"pre",new Set),yA(this,"next",new Set),yA(this,"context"),yA(this,"connectedNodes",new Set),yA(this,"nextInputChannelMap",new Map),yA(this,"_channelCount",1)}get channelCount(){return this._channelCount}set channelCount(e){this._channelCount=e,this.setChannelCount(this.node,e),this.setChannelCount(this.node2,e),this.next.forEach(t=>t.channelCount=e)}setChannelCount(e,t){!e||e instanceof ScriptProcessorNode||(e.channelCountMode="explicit",e.channelCount=t||this.channelCount||1)}setContext(e){this.context=e,this.node&&e.addMixWeight()}removeContext(){var e;this.node&&(null==(e=this.context)||e.reduceMixWeight()),delete this.context}replaceNode(e){var t;if(e!==this.node)try{this.node?this._disconnect():null==(t=this.context)||t.addMixWeight(),this.node=e,this.setChannelCount(this.node),this.preNodeReconnect(),this.reconnect()}catch(OA){kO.error(OA)}}setNode(e,t){var i;if(!this.node)try{null==(i=this.context)||i.addMixWeight(),this.node=e,this.setChannelCount(this.node),t&&(this.node2=t,this.setChannelCount(this.node2)),this.preNodeReconnect(),this.reconnect(),HO.addSuccessEvent({key:502701})}catch(r){kO.error(r),HO.addFailedEvent({key:502701,error:r})}}deleteNode(){var e;if(this.node)try{this._disconnect(),delete this.node,delete this.node2,null==(e=this.context)||e.reduceMixWeight(),this.preNodeReconnect(),HO.addSuccessEvent({key:502702})}catch(_x){kO.error(_x),HO.addFailedEvent({key:502702,error:_x})}}preNodeReconnect(){this.pre.forEach(e=>{e.node?e.reconnect():e.preNodeReconnect()})}connectNext(e){this.next.forEach(t=>{let i=this.nextInputChannelMap.get(t);e._connect(t.node,i)||t.connectNext(e)})}_connect(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return!(!this.node||!e)&&((this.node2||this.node).connect(e,0,t),this.connectedNodes.add(e),!0)}_disconnect(){this.connectedNodes.forEach(e=>{var t;return null==(t=this.node2||this.node)?void 0:t.disconnect(e)}),this.connectedNodes.clear()}reconnect(){this._disconnect(),this.connectNext(this)}pipeTo(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.next.add(e),e.pre.add(this),this.nextInputChannelMap.set(e,t),e}},aP=class extends nP{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:256;super(),this.fftSize=e,yA(this,"dataArray",new Uint8Array(0))}setNode(e){e.fftSize=this.fftSize,this.dataArray=new Uint8Array(e.frequencyBinCount),super.setNode(e)}getByteTimeDomainData(){var e;return null==(e=this.node)||e.getByteTimeDomainData(this.dataArray),this.dataArray}get level(){var e;return null==(e=this.node)||e.getByteTimeDomainData(this.dataArray),Math.max(...this.dataArray)/128-1}get timeDomainPathData(){let e=this.getByteTimeDomainData(),t=0,i=0,r="M".concat(t,",").concat(i);for(let n=0;n<e.length;n++)i=e[n]/128*100/2,r+="L".concat(t,",").concat(i),t+=1;return r}},oP=class{constructor(){yA(this,"source",new nP),yA(this,"gain",new nP),yA(this,"destination",new nP)}get volume(){var e;return(null==(e=this.gain.node)?void 0:e.gain.value)||1}setVolume(e){1!==e?(this.gain.node||this.gain.setNode(rP().createGain()),this.gain.node.gain.value=e):this.gain.node&&this.gain.deleteNode()}replaceSource(e){let t=function(t){try{let e=sP.get(t);if(e)return e;let i=rP();if(t instanceof HTMLAudioElement)e=i.createMediaElementSource(t);else{if(!(t instanceof MediaStreamTrack))return t;e=i.createMediaStreamSource(new MediaStream([t]))}return sP.set(t,e),e}catch(e){if(!(sD&&e instanceof Error&&"NotSupportedError"===e.name))throw e;kO.warn(e)}}(e);t&&this.source.replaceNode(t)}get track(){var e;return null==(e=this.stream)?void 0:e.getAudioTracks()[0]}get stream(){var e;return null==(e=this.destination.node)?void 0:e.stream}},sP=new WeakMap;var cP=class e{constructor(e){yA(this,"_volume",0),yA(this,"_volumeDb",0),yA(this,"_log"),yA(this,"_scriptProcessorNode",null),yA(this,"_audioWorkletNode",null),yA(this,"_interval",200),yA(this,"ready",this.preload());let{log:t}=e;this._log=t,TO.on(SO.AUDIO_LEVEL_INTERVAL,this.handleAudioLevelInterval,this)}static get isRunning(){return Date.now()-e.lastMessageTime<2e3}get node(){return this._audioWorkletNode||this._scriptProcessorNode}preload(){if(!e.workletReady){let t='class VolumeMeterWorklet extends AudioWorkletProcessor{constructor(){super(),this.volume=0,this.intervalTime=200,this.tick=200,this.isStop=!1,this.cache=[],this.sentFirstInfo1=!1,this.unmute=!1,this.port.onmessage=t=>{var e=t.data;switch(e.name){case"chunk":this.cache.push(...e.data),this.sentFirstInfo1||(this.port.postMessage({cl:e.data.length}),this.sentFirstInfo1=!0);break;case"setIntervalTime":this.intervalTime=e.intervalTime;break;case"unmute":this.unmute=!0;break;case"stop":this.isStop=!0}}}process(t,s){t=t[0],s=s[0];if(t||s){if(this.isStop)return!1;var i=s&&s[0]?s[0].length:0,h=this.cache.length,a=(i<h?(s[0].set(this.cache.slice(0,i)),this.cache=this.cache.slice(i)):this.unmute&&s[0].set(t[0]),(i<h?s:t)[0]);if(a){let e=0;for(let t=0;t<a.length;++t)e=Math.max(Math.abs(a[t]),e);s=a.reduce((t,e)=>t+e*e,0)/a.length;this.volume=e,this.tick-=a.length,this.tick<0&&(this.tick+=this.intervalTime/1e3*sampleRate,this.port.postMessage({volume:this.volume,volumeDb:Math.max(10*Math.log10(s)+100,0)/100,cacheLen:h,outputLen:i}))}}return!0}}registerProcessor("volume-meter",VolumeMeterWorklet);';e.workletReady=async function(e,t){if(!e.audioWorklet)return Promise.reject("audioWorklet is not supported");try{await e.audioWorklet.addModule(t),kO.info("worklet addModule success")}catch(_x){throw kO.info("worklet addModule catch error. ".concat(_x.message)),_x}}(e.audioContext,URL.createObjectURL(new Blob([t],{type:"application/javascript"})))}return e.workletReady.then(()=>this.initAudioWorklet()).catch(e=>(this._log.error("volumeMeter preload error: ".concat(e)),this.initScriptProcessor()))}initAudioWorklet(){if(!this._audioWorkletNode)try{this._audioWorkletNode=new AudioWorkletNode(e.audioContext,"volume-meter");let t=!1;this._audioWorkletNode.port.onmessage=i=>{e.lastMessageTime=Date.now(),this._volume=i.data.volume||0,this._volumeDb=i.data.volumeDb||0,!t&&i.data.cacheLen&&i.data.outputLen&&(this._log.warn("worklet play success"),t=!0)},this.handleAudioLevelInterval({interval:this._interval})}catch(t){this._log.error("volumeMeter init audio worklet error: ".concat(t)),_N.logFailedEvent({userId:this._log.userId,eventType:hR,error:t}),this.initScriptProcessor()}}initScriptProcessor(){if(!this._scriptProcessorNode)try{this._scriptProcessorNode=rP().createScriptProcessor(2048,1,1),this._scriptProcessorNode.onaudioprocess=t=>{e.lastMessageTime=Date.now();let i=t.inputBuffer.getChannelData(0),r=0;for(let e=0;e<i.length;++e)r+=i[e]*i[e];this._volume=Math.sqrt(r/i.length)||0}}catch(t){this._log.error("volumeMeter init script processor error: ".concat(t))}}destroy(){this._scriptProcessorNode&&(this._scriptProcessorNode.onaudioprocess=null),this._audioWorkletNode&&(this._audioWorkletNode.port.postMessage({name:"stop"}),this._audioWorkletNode.port.onmessage=null),this._audioWorkletNode=null,this._scriptProcessorNode=null,TO.off(SO.AUDIO_LEVEL_INTERVAL,this.handleAudioLevelInterval,this)}getInternalAudioLevel(){return this._volume}getCalculatedVolume(){return parseFloat(this._volume.toFixed(2))}getVolumeDb(){return Math.floor(100*this._volumeDb)}handleAudioLevelInterval(e){var t;let{interval:i}=e;this._interval=i,null==(t=this._audioWorkletNode)||t.port.postMessage({name:"setIntervalTime",intervalTime:i})}};yA(cP,"lastMessageTime",0),yA(cP,"audioContext",rP()),yA(cP,"workletReady");var lP=cP,dP=class extends nP{constructor(e){super(),yA(this,"_volumeMeter"),this._volumeMeter=new lP(e)}deleteNode(){super.deleteNode(),this._volumeMeter.destroy()}async init(){await this._volumeMeter.preload(),this.setNode(this._volumeMeter.node)}getCalculatedVolume(){return this._volumeMeter.getCalculatedVolume()}getInternalAudioLevel(){return this._volumeMeter.getInternalAudioLevel()}getVolumeDb(){return this._volumeMeter.getVolumeDb()}write(e){if(this.node){let t=e.allocationSize({planeIndex:0}),i=new Float32Array(t>>2);e.copyTo(i,{planeIndex:0}),this.node.port.postMessage({name:"chunk",data:i},[i.buffer]),e.close()}}},uP=_A(bA(),1),hP=e=>t=>t.deviceId===e,pP=class{constructor(e,t){yA(this,"kind"),yA(this,"type"),yA(this,"devices",[]),this.kind=e,this.type=t}update(e,t){let i=e.filter(e=>e.kind==="".concat(this.kind).concat(this.type.toLocaleLowerCase()));1===this.devices.length&&gP(this.devices[0])||t&&(i.forEach(e=>{if(e.deviceId&&!this.devices.find(hP(e.deviceId))){let i="".concat(this.kind).concat(this.type,"Added");kO.warn("".concat(i,": ").concat(JSON.stringify(e))),t.emit(i,e)}}),this.devices.forEach(e=>{if(e.deviceId&&!i.find(hP(e.deviceId))){let i="".concat(this.kind).concat(this.type,"Removed");kO.warn("".concat(i,": ").concat(JSON.stringify(e))),t.emit(i,e)}})),this.devices=i}hasDevice(e){return!!this.devices.find(t=>t.deviceId===e)}},fP=class extends uP.EventEmitter{constructor(){super(),yA(this,"audioInputs",new pP(qA,"Input")),yA(this,"videoInputs",new pP(KA,"Input")),yA(this,"audioOutputs",new pP(qA,"Output")),this.init(),navigator.mediaDevices&&(navigator.mediaDevices.addEventListener&&navigator.mediaDevices.addEventListener("devicechange",()=>this.update()),"ondevicechange"in navigator.mediaDevices||uN.run("interval",()=>{this.update()},{delay:1e4}))}init(){_P().then(e=>{this.audioInputs.update(e),this.videoInputs.update(e),this.audioOutputs.update(e)})}async update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=await _P(e);return this.audioInputs.update(t,this),this.videoInputs.update(t,this),this.audioOutputs.update(t,this),this}hasBlueTooth(){var e;if(1e3*(null==(e=rP())?void 0:e.outputLatency)>150)return!0;let t=["bluetooth","air","wireless","bt","tws","buds","headset","headphone"];return this.audioOutputs.devices.some(e=>t.some(t=>e.label.toLowerCase().includes(t)))||this.audioInputs.devices.some(e=>t.some(t=>e.label.toLowerCase().includes(t)))}},mP=MA||xA?null:new fP;function gP(e){return e.deviceId===e.groupId&&""===e.groupId}async function _P(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(XO()||!KO())return[];let t=await navigator.mediaDevices.enumerateDevices();if(0!==e){let r={audio:!1,video:!1};if(t.forEach(e=>{gP(e)&&(e.kind===aR?r.audio=!0:e.kind===oR&&(r.video=!0))}),2===e&&(r.audio=!1),1===e&&(r.video=!1),r.audio||r.video){let e;try{e=await navigator.mediaDevices.getUserMedia(r),r.audio&&iP()}catch(i){kO.debug("capture before getDevices failed: ",i)}t=await navigator.mediaDevices.enumerateDevices(),null==e||e.getTracks().forEach(e=>e.stop())}}return t.map((e,t)=>{let i={kind:e.kind,deviceId:e.deviceId,groupId:e.groupId,label:e.label||"".concat(e.kind,"_").concat(t)};return e.deviceId.length>0&&wP.add("".concat(e.deviceId,"_").concat(e.kind)),e.getCapabilities&&(i.getCapabilities=()=>e.getCapabilities()),i})}function vP(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return mP.update(e?1:0).then(e=>e.audioInputs.devices)}function yP(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return mP.update(e?2:0).then(e=>e.videoInputs.devices)}var EP=!1;async function bP(){try{EP||(EP=!0,kO.info("speakers:".concat((await async function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(rD||sO)&&(e=!1),mP.update(e?1:0).then(e=>e.audioOutputs.devices)}()).map(e=>" ".concat(e.deviceId.slice(0,8),": ").concat(e.label)))))}catch($S){}}var wP=new Set;async function IP(e){let{newDeviceId:t,oldDeviceId:i,oldGroupId:r,oldLabel:n,kind:a}=e;return t===i&&(a!==qA||t!==fR||await async function(e,t){let i=(await vP()).find(e=>e.deviceId===fR);return!t&&(null==i?void 0:i.groupId)===e||(null==i?void 0:i.groupId)===e&&i.label===t}(r,n))}var TP,SP=class extends oP{constructor(e){super(),this.log=e,yA(this,"volumeMeter"),yA(this,"volumeMeterAfter3A"),yA(this,"volumeDestination"),yA(this,"analyser",new aP),this.volumeMeter=new dP({log:this.log}),this.volumeMeterAfter3A=new dP({log:this.log}),this.volumeDestination=new nP,this.volumeMeter.pipeTo(this.volumeDestination)}destroy(){this.gain.deleteNode(),this.volumeMeter.deleteNode(),this.analyser.deleteNode(),this.source.deleteNode(),this.destination.deleteNode(),this.volumeDestination.deleteNode()}},AP=class extends yN{constructor(e){super(e,qA),yA(this,"_outputDeviceId"),yA(this,"_floatVolume",1),yA(this,"_destination"),yA(this,"pipeline"),yA(this,"volumeMeterMode","worklet"),yA(this,"enableVolumeControlInIOS"),this.enableVolumeControlInIOS=e.enableVolumeControlInIOS,this.mode=0,e.url&&(this.url=e.url),this.pipeline=new SP(this._log)}setTrack(e){}get duration(){var e;return Math.floor(1e3*((null==(e=this.element)?void 0:e.duration)||0))}get currentTime(){var e;return Math.floor(1e3*((null==(e=this.element)?void 0:e.currentTime)||0))}set currentTime(e){this.element&&(this.element.currentTime=e/1e3)}getMediaStream(){return this.pipeline.stream||(this.track?new MediaStream([this.track]):null)}initializeElement(e){if(("15.2"===dO||"15.3"===dO||"15.4"===dO)&&this.muted)return void this._log.info("audioElement is muted.");let t=TP||new Audio;t.setAttribute("autoplay","autoplay"),t.srcObject=this.getMediaStream(),t.muted=this.muted,this.url&&(t.crossOrigin="anonymous",t.src=this.url),this.element=t,this.setVolume(Wk(e)?e/100:this._floatVolume),t===TP&&(TP=void 0),this.options.enableTimeupdateEvent&&(this.element.ontimeupdate=()=>this.emit(hN.TIME_UPDATE,this.currentTime)),this.bindElementEvents()}async play(e){if(this.track||this.url){try{!this.pipeline.source.node&&this.track&&this.pipeline.replaceSource(this.track),this.element||this.initializeElement(null==e?void 0:e.volume),this._outputDeviceId&&await this.setSinkId(this._outputDeviceId),"worklet"===this.volumeMeterMode?(this.pipeline.volumeMeter.init(),this.pipeline.volumeMeterAfter3A.init()):"analyser"===this.volumeMeterMode&&this.pipeline.analyser.setNode(rP().createAnalyser()),bP()}catch(OA){throw this._log.warn("audio play error: ".concat(OA)),uO(dO,"18.7",!0)&&this.bindAutoPlayEvent(),OA}return super.play()}}stop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.pipeline.destroy(),super.stop(e)}setVolume(e){this._floatVolume=e,this.element&&(this.element.volume=e)}async setSinkId(e){var t,i;this._outputDeviceId!==e&&(this._outputDeviceId=e),this.element&&this.element.sinkId!==e&&await(null==(i=(t=this.element).setSinkId)?void 0:i.call(t,e))}get useDestination(){return!!this.pipeline.stream}setLoop(e){this.element&&(this.element.loop=e)}getAudioLevel(){return this.pipeline.volumeMeter.getCalculatedVolume()}getInternalAudioLevel(){return this.pipeline.volumeMeter.getInternalAudioLevel()}getInternalAudioLevelAfter3A(){return this.pipeline.volumeMeterAfter3A.getInternalAudioLevel()}},RP=class extends AP{constructor(e){super(e),yA(this,"_sourceElement"),yA(this,"_output",new nP),this.pipeline.source.pipeTo(this.pipeline.gain),this.pipeline.gain.pipeTo(this.pipeline.volumeMeter).pipeTo(this._output),this.pipeline.gain.pipeTo(this.pipeline.destination)}setOutput(){this.mode=1,this._output.setNode(rP().destination)}write(e){this.pipeline.volumeMeter.write(e)}setTrack(e){var t,i,r;(null==(i=null==(t=this.element)?void 0:t.error)?void 0:i.code)!==MediaError.MEDIA_ERR_DECODE&&this.track!==e&&(this.unbindTrackEvents(),this.track=e,this.emit(hN.MEDIA_TRACK_CHANGED,e),e?(this.bindTrackEvents(),this._sourceElement?this._sourceElement.srcObject=new MediaStream([e]):!this.useDestination&&this.element&&(this.element.srcObject=new MediaStream([e])),this.pipeline.source.channelCount=(null==(r=e.getSettings())?void 0:r.channelCount)||1,this.pipeline.replaceSource(e)):this.pipeline.source.deleteNode())}setVolume(e){var t;let i=e<=1&&!nD();if(this._floatVolume!==e||!(i&&(null==(t=this.element)?void 0:t.volume)===e||!i&&this.pipeline.volume===e))if(this._floatVolume=e,this.useDestination)this.pipeline.setVolume(e),this._log.info("set pipeline volume: ".concat(e));else if(i)this.element?(this._log.info("set element volume: ".concat(e)),this.element.volume=e):this._log.info("set element volume: no element");else{if(nD()){if(!this.enableVolumeControlInIOS)return;!function(){if(!rD||-1!==QN)return;let e=()=>{iC()-ZN<500||(GN&&"running"===GN.state&&GN.currentTime===JN&&(kO.warn("context is fake running, auto resume"),GN.suspend().catch(e=>{kO.warn("context suspend failed: ".concat(e))})),JN=GN.currentTime,ZN=iC())};QN=setInterval(()=>{e()},2e3),document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&e()})}()}if(sD&&!this.pipeline.source.node)return void this._log.warn("set pipeline volume failed: no source node");this._log.info("start set pipeline volume: ".concat(e)),this.pipeline.setVolume(e),this.element&&!this._sourceElement&&(this._destination||(this._destination=rP().createMediaStreamDestination()),this.pipeline.destination.setNode(this._destination),gN(this.element),this._sourceElement=this.element,this._sourceElement.muted=!0,this.element=null,this.play().catch(e=>{this.emit(hN.AUTOPLAY_FAILED,e)}))}}stop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.pipeline.destroy();let t=this._sourceElement||this.element;t&&cO&&(TP=t),this._sourceElement&&(this._sourceElement.srcObject=null,delete this._sourceElement),super.stop(e)}},kP=class extends aN{constructor(e){let{userId:t,sdkAppId:i,mediaType:r,room:n,PlayerClass:a=(1===r?RP:WN)}=e;var o;super(),yA(this,"id",CO()),yA(this,"userId",""),yA(this,"isRemote"),yA(this,"mediaType"),yA(this,"room"),yA(this,"user"),yA(this,"_log"),yA(this,"_inputTrack"),yA(this,"_outputTrack"),yA(this,"isPlayCalled"),yA(this,"container",null),yA(this,"player"),yA(this,"subVideoPlayerMap"),yA(this,"muted",!1),yA(this,"abortCtrl"),yA(this,"objectFit","cover"),yA(this,"mirror"),yA(this,"rotation"),yA(this,"isScreen",!1),yA(this,"manager"),yA(this,"trackSettings"),yA(this,"isFirstVideoFrameEmitted",!1),this.userId=t||"",this.mediaType=r,this._log=kO.createLogger({parent:null==n?void 0:n.getLogger(),id:"".concat(this.kind[0],"t"),userId:null==(o=n||this.room)?void 0:o.userId,remoteUserId:this instanceof wx?void 0:this.userId,sdkAppId:i,type:2===this.mediaType?"auxiliary":"main",isLocal:this instanceof wx}),this.player=new a({id:this.userId||this.id,track:null,muted:!1,container:null,log:this._log,enableVolumeControlInIOS:null==n?void 0:n.enableVolumeControlInIOS}),this.player.on(hN.PLAYER_STATE_CHANGED,e=>{if(TO.emit(SO.PLAYER_STATE_CHANGED,hA({track:this},e)),this.emit("player-state-changed",e),"PLAYING"===e.state&&this.room){let e=!0;for(let{remoteAudioTrack:t,remoteVideoTrack:i,remoteAuxiliaryTrack:r}of[...this.room.remotePublishedUserMap.values()])if(t.isAvailable&&!t.player.isPlaying||i.isAvailable&&!i.player.isPlaying||r.isAvailable&&!r.player.isPlaying){e=!1;break}e&&UN()&&jN&&jN.deleteDialog()}}),this.kind===KA&&(this.player.on(hN.LOADED_DATA,()=>{this.emitFirstVideoFrameEvent(hN.LOADED_DATA),TO.emit(SO.VIDEO_LOADED_DATA,{track:this})}),this.player.on(hN.LOADED_META_DATA,()=>{this.emitFirstVideoFrameEvent(hN.LOADED_META_DATA)}),this.player.on(hN.MEDIA_TRACK_CHANGED,e=>{var t;null==(t=this.subVideoPlayerMap)||t.forEach(t=>t.setTrack(e))}),this.player.on(hN.RESIZE,e=>{this.emitFirstVideoFrameEvent(hN.RESIZE),this.emit("video-size-changed",hA({userId:this.userId,streamType:2===this.mediaType?"auxiliary":"main"},e))}),this.player.on(hN.FIRST_FRAME_RENDER,e=>{this.emit("first-frame-render",pA(hA({},e),{streamType:this.streamType,userId:this.isRemote?this.userId:""}))})),this.onTrackMuted=this.onTrackMuted.bind(this),this.onTrackUnmuted=this.onTrackUnmuted.bind(this),this.onTrackEnded=this.onTrackEnded.bind(this),this.onPlayerError&&this.player.on(hN.ERROR,this.onPlayerError.bind(this)),this.player.on(hN.AUTOPLAY_FAILED,this.handleAutoPlayFailed,this)}get log(){return this._log||kO}get kind(){return 1===this.mediaType?qA:KA}get isAudio(){return this.kind===qA}get strMediaType(){return 4===this.mediaType?KA:2===this.mediaType?YA:qA}get streamType(){return 2&this.mediaType?"auxiliary":"main"}get isMediaTrackActive(){return!!this.mediaTrack&&(!this.mediaTrack.muted&&"live"===this.mediaTrack.readyState&&this.mediaTrack.enabled)}async play(e,t){let i=Kk(e)?e[0]:e;if(this.isPlayCalled)return this.log.info("play update options: ".concat(JSON.stringify(t))),t&&!jk(t.muted)&&this.setPlayerMute(t.muted),t&&!jk(t.objectFit)&&(this.objectFit=t.objectFit),void(this.player instanceof WN&&(this.player.setObjectFit(this.objectFit),this.container!==i&&i&&(Kk(e)&&e.length>=1&&this.container&&e.includes(this.container)&&this.container.contains(this.player.elementToRender)?(e.splice(e.indexOf(this.container),1),e.unshift(this.container)):(this.container=i,this.player.setContainer(i))),Kk(e)&&e.length>=1&&await this.playSubContainer(e.slice(1),t)));if(t&&!jk(t.muted)?this.setPlayerMute(t.muted):(!this.isRemote||this.kind===KA)&&this.setPlayerMute(!0),t&&!jk(t.objectFit)&&(this.objectFit=t.objectFit),this.player instanceof WN&&(jk(null==t?void 0:t.isLiveStream)||this.player.setLiveMode(t.isLiveStream),this.player.setObjectFit(this.objectFit),t&&!jk(t.poster)&&this.player.setPoster(t.poster)),this.isPlayCalled=!0,i&&(this.container=i,this.player instanceof WN&&this.player.setContainer(i)),TO.emit(SO.PLAY_TRACK_START,{track:this}),this._outputTrack){this._log.info("play with options: ".concat(JSON.stringify(t)));try{this.player.setTrack(this.playerMediaTrack),await this.player.play(t),Kk(e)&&e.length>1&&await this.playSubContainer(e.slice(1),t)}catch(r){throw this.handleAutoPlayFailed(r),r}}else this.log.info("play has not mediaTrack, abort")}setMirror(e,t){if(this.isScreen||this.kind!==KA||jk(e)||e===this.mirror)return;this.mirror=e;let i=this.player;t&&(i=t);let r=this.manager;if(Gk(this.mirror))return i.setViewMirror(this.mirror),void(!this.isRemote&&r&&(r.mirror=!1));switch(this.mirror){case"view":r&&(r.mirror=!1),i.setViewMirror(!0);break;case"publish":r&&(r.mirror=!0),i.setViewMirror(!0);break;case"both":r&&(r.mirror=!0),i.setViewMirror(!1)}}async playSubContainer(e,t){if(!this._outputTrack||this.kind===qA)return;this.subVideoPlayerMap||(this.subVideoPlayerMap=new Map),this.subVideoPlayerMap.forEach((t,i)=>{var r;e.find(e=>i===e)||(t.stop(),null==(r=this.subVideoPlayerMap)||r.delete(i))});for(let[r,n]of e.entries()){let e=this.subVideoPlayerMap.get(n);e?t&&(jk(t.objectFit)||e.setObjectFit(t.objectFit)):this.subVideoPlayerMap.set(n,new WN({id:this.userId||this.id,track:this.playerMediaTrack,container:n,muted:this.player.muted,objectFit:this.objectFit,log:this.log.createChild({id:"vp-sub".concat(r+1)})}))}let i=[...this.subVideoPlayerMap.values()];for(let r of i)r.setViewMirror(this.player.mirror),await r.play()}setAudioOutput(e){return this.player.setSinkId(e)}setAudioVolume(e){this.player.setVolume(e)}getAudioLevel(){return this.player.getAudioLevel()||0}getInternalAudioLevel(){var e;return(null==(e=this.player)?void 0:e.getInternalAudioLevel())||0}stop(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.isPlayCalled&&(this.isPlayCalled=!1,this.isFirstVideoFrameEmitted=!1,this.player&&(this.log.info("stop ".concat(this.kind," player")),this.player.stop(WC(this)&&!e?this.jitterBufferDelay:0)),this.subVideoPlayerMap&&this.subVideoPlayerMap.size>0&&this.subVideoPlayerMap.forEach(e=>{e.stop()}),this.container=null)}async resume(){var e;this.isPlayCalled&&await(null==(e=this.player)?void 0:e.resume())}close(){this._toInitState(),this.log.info("close"),this.isPlayCalled&&this.stop(!0)}_toInitState(){}setMute(e){this.muted=e,this._inputTrack&&(this._inputTrack.enabled=!e),this._outputTrack&&(this._outputTrack.enabled=!e),this.emit(e?"mute":"unmute",this),TO.emit(e?SO.TRACK_MUTED:SO.TRACK_UNMUTED,{track:this})}setPlayerMute(e){this.player.setMuted(e)}get mediaTrack(){return this._inputTrack||null}get outMediaTrack(){return this._outputTrack||null}get playerMediaTrack(){return this.outMediaTrack}installTrackEvent(e){mN(e,e).add(ZA,this.onTrackMuted).add(JA,this.onTrackUnmuted).add(QA,this.onTrackEnded),e.muted&&this.onTrackMuted(),e.readyState===QA&&this.onTrackEnded()}uninstallTrackEvent(e){gN(e)}setInputMediaStreamTrack(e){var t;let i=this._inputTrack;if(e!==i)return this._inputTrack=e,this.trackSettings=null==(t=e.getSettings)?void 0:t.call(e),e.enabled=!this.muted,i&&this.uninstallTrackEvent(i),this.installTrackEvent(e),this.emit("input-media-track-changed",e||null,i||null),this.manager?this.manager.changeInput(this):this.setOutputMediaStreamTrack(e)}setOutputMediaStreamTrack(e){var t;let i=this._outputTrack;this instanceof Ax&&xC(i)||e!==i&&(this.isRemote?this.log.debug("setOutputMediaStreamTrack",e.label):this.log.info("setOutputMediaStreamTrack",null==(t=e.getSettings)?void 0:t.call(e).deviceId,e.label),this._outputTrack=e,this._inputTrack&&(this._outputTrack.contentHint=this._inputTrack.contentHint,this._outputTrack.enabled=this._inputTrack.enabled),this.updatePlayingState(!!e),this.emit("output-media-track-changed",e))}setMediaType(e){this.mediaType=e}updatePlayingState(e){var t,i;if(this.isPlayCalled)if(e){if(this.player.setTrack(this.playerMediaTrack),this.player.isStopped)return this.player.play().catch(e=>this.handleAutoPlayFailed(e)),void this.log.info("playing state updated, play ".concat(this.kind))}else if(!this.player.isStopped){if(WC(this)&&this.isAudio&&null!=(t=this.user)&&t.muteState.hasAudio&&null!=(i=this.user)&&i.muteState.audioMuted)return;return this.player.stop(WC(this)?this.jitterBufferDelay:0),void this.log.info("playing state updated, stop ".concat(this.kind))}this.log.debug("updatePlayingState abort ".concat(this.isPlayCalled," ").concat(e," ").concat(this.player.isStopped))}async handleAutoPlayFailed(e){var t;this.log.warn("handleAutoPlayFailed",e);let i=()=>{this.resume().then(()=>{document.removeEventListener("click",i,!0)})};if(this.room&&this.room.enableAutoPlayDialog){if((bD||TD)&&(await wC(100),null!=(t=this.player)&&t.isPlaying))return;jN||(jN=new HN)}else document.addEventListener("click",i,!0);TO.once(SO.LOCAL_TRACK_CAPTURE_SUCCESS,e=>{let{track:t}=e;"audio"===t.kind&&UN()&&!this.player.isPlaying&&this.isRemote&&this.isAvailable&&i()}),this.emit("error",e)}getVideoFrame(){return this.player instanceof WN?this.player.getVideoFrame():""}emitFirstVideoFrameEvent(e){var t,i,r;if(this.isFirstVideoFrameEmitted)return;let n=null==(t=this.mediaTrack)?void 0:t.getSettings(),a=(null==n?void 0:n.width)||(null==(i=this.player.element)?void 0:i.videoWidth)||0,o=(null==n?void 0:n.height)||(null==(r=this.player.element)?void 0:r.videoHeight)||0;e===hN.RESIZE&&!a&&!o||e===hN.LOADED_META_DATA&&!a&&!o||(e===hN.LOADED_DATA&&!a&&!o&&this._log.warn("the dimension of video is 0x0 in first-video-frame event"),this.isFirstVideoFrameEmitted=!0,RC(this.rotation)&&([a,o]=[o,a]),this.emit("first-video-frame",{width:a,height:o,streamType:this.streamType,userId:this.isRemote?this.userId:""}))}onTrackMuted(){this._log.warn("".concat(this.kind," track is unable to provide media output"))}onTrackUnmuted(){this._log.info("".concat(this.kind," track is able to provide media output"))}onTrackEnded(){this._log.warn("".concat(this.kind," track ended"))}};vA([iN([],aN.INIT,{sync:!0})],kP.prototype,"_toInitState",1);var CP=Object.prototype.hasOwnProperty;var DP=function(e){if(null==e)return!0;if("boolean"==typeof e)return!1;if("number"==typeof e)return 0===e;if("string"==typeof e||"function"==typeof e||Array.isArray(e))return 0===e.length;if(e instanceof Error)return""===e.message;if(Uk(e))switch(Object.prototype.toString.call(e)){case"[object File]":case"[object Map]":case"[object Set]":return 0===e.size;case"[object Object]":for(let t in e)if(CP.call(e,t))return!1;return!0}return!1},OP=qC({retryFunction:async function(e){let t=function(e){return{audio:NP(e),video:PP(e)}}(e);kO.info("getUserMedia with constraints: ".concat(JSON.stringify(t)));let i=[],r=[],n=["label","deviceId","groupId"];if(t.audio&&(i=await vP(),kO.info("microphones: ".concat(mC(i.map(e=>pA(hA({},e),{groupId:e.groupId.substring(0,8)})),{keysToInclude:n})))),t.video&&(r=await yP(),kO.info("cameras: ".concat(mC(r,{keysToInclude:n}))),!Gk(t.video)&&"user"===t.video.facingMode&&!t.video.deviceId)){let e=r.filter(e=>!e.label.includes("infrared")).find(e=>e.label.includes("facing front"));e&&(t.video.deviceId=e.deviceId,kO.info("exclude infrared camera: ".concat(JSON.stringify(t))))}try{let i=await navigator.mediaDevices.getUserMedia(t);return kL&&i.getTracks().forEach(t=>{var i;let r=t.getCapabilities();kO.info("".concat(t.kind," capabilities: ").concat(mC(r,{keysToInclude:gR}))),!jk(e.echoCancellation)&&-1===(null==(i=r.echoCancellation)?void 0:i.indexOf(e.echoCancellation))&&kO.warn("Invalid argument for 'echoCancellation'. Expected one of [".concat(JSON.stringify(r.echoCancellation),"], but received '").concat(e.echoCancellation,"'"))}),t.audio&&iP(),i}catch(a){let{message:t}=a;throw"NotFoundError"===a.name&&(e.video&&r&&0===r.length&&(t=xO({key:OO.CAMERA_NOT_FOUND})),e.audio&&i&&0===i.length&&(t=xO({key:OO.MICROPHONE_NOT_FOUND}))),new ZR({code:YR.INITIALIZE_FAILED,name:a.name,message:t,constraint:a.constraint})}},settings:{retries:3,timeout:500},onError:e=>{let{error:t,retry:i,reject:r,retryFuncArgs:n,retriedCount:a}=e,o=a+1;"NotReadableError"===t.name||"OverconstrainedError"===t.name||"AbortError"===t.name?(1===o?(n[0].video&&(n[0].maxResolution=!1,(!sO||n[0].width*n[0].height<=2073600)&&n[0].frameRate&&(n[0].frameRate=n[0].frameRate>10?10:5)),n[0].retryWhenExactFailed&&n[0].useExactDeviceId&&(n[0].useExactDeviceId=!1)):2===o?n[0].useDeviceIdOnly=!0:3===o&&!n[0].useExactDeviceId&&(n[0].useTrueAsConstraint=!0),i()):r(t),n[0].microphoneId&&LP(n[0].microphoneId,!1),n[0].cameraId&&LP(n[0].cameraId,!0)},onRetrying:e=>{kO.warn("getUserMedia NotReadableError observed, retrying [".concat(e,"/3]"))},onRetryFailed:e=>{_N.logFailedEvent({eventType:pR,error:e})},onRetrySuccess:e=>{_N.logSuccessEvent({eventType:pR}),_N.uploadEvent({log:"stat-".concat(pR,"-success-").concat(e)})}});async function LP(e,t){let i=(t?await yP():await vP()).find(t=>t.deviceId===e);i&&Hk(i.getCapabilities)&&kO.warn(mC(i.getCapabilities(),{keysToInclude:gR}))}function NP(e){if(!e.audio)return!1;if(e.useTrueAsConstraint)return!0;let t={echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,sampleRate:e.sampleRate};return!DP(e.microphoneId)&&(t.deviceId=e.useExactDeviceId?{exact:e.microphoneId}:e.microphoneId,e.useDeviceIdOnly)?t:(Wk(e.channelCount)&&(t.channelCount=e.channelCount),(Gk(e.echoCancellation)||"remote-only"===e.echoCancellation||"all"===e.echoCancellation)&&(t.echoCancellation=e.echoCancellation),Gk(e.noiseSuppression)&&!e.noiseSuppression&&(t.noiseSuppression=!1),Gk(e.autoGainControl)&&!e.autoGainControl&&(t.autoGainControl=!1),!!DP(t)||t)}function PP(e){if(!e.video)return!1;if(e.useTrueAsConstraint)return!0;let{maxResolution:t=!0}=e,i={};return e.cameraId?i.deviceId=e.useExactDeviceId?{exact:e.cameraId}:e.cameraId:e.facingMode&&(i.facingMode=e.facingMode),e.useDeviceIdOnly&&!DP(i)?i:(e.width&&(i.width={ideal:e.width},t&&!sD&&(i.width.max=e.width)),e.height&&(i.height={ideal:e.height},t&&!sD&&(i.height.max=e.height)),sD&&MD&&e.width&&e.height&&e.width*e.height<101376&&(i.width=e.width,i.height=e.height),e.frameRate&&(i.frameRate=e.frameRate),!!DP(i)||i)}var xP=OP,MP=(()=>{let e=!1,t=document.visibilityState;return()=>{document.visibilityState!==t&&kO.info("visibility change: ".concat(document.visibilityState)),!e&&(document.addEventListener("visibilitychange",()=>{kO.info("visibility change: ".concat(document.visibilityState)),t=document.visibilityState}),e=!0)}})(),UP=0,FP=class{constructor(e){yA(this,"log"),yA(this,"isRunning",!1),yA(this,"queue",[]);let t="fq".concat(++UP);e&&(t+="|".concat(e)),this.log=kO.createLogger({id:t})}get length(){return this.queue.length}get lastQueueItem(){return 0===this.length?null:this.queue[this.length-1]}push(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];var i,r;let n=hA({},e),a=new Promise((e,t)=>{n.resolve=e,n.reject=t});return n.promise=a,t?this.length<=1?this.queue.push(n):null==(r=null==(i=this.lastQueueItem)?void 0:i.promise)||r.then(n.resolve,n.reject):this.queue.push(n),this.log.debug("push ".concat(this.length),e.funcName,e.args),this.isRunning||this.callNext(),a}shift(){let e=this.queue.shift();return this.log.debug("shift ".concat(this.length),null==e?void 0:e.funcName,null==e?void 0:e.args),e}callNext(){if(this.isRunning||0===this.length)return;let{fn:e,args:t,context:i,resolve:r,reject:n,funcName:a}=this.queue[0];this.log.debug("callNext",this.length,a,t),this.isRunning=!0,e.apply(i,t).then(r,n).finally(()=>{this.isRunning=!1,this.shift(),this.callNext()})}},BP=new WeakMap;function VP(e,t){return kA((i,r)=>function(){let r=e;try{for(var n=arguments.length,a=new Array(n),o=0;o<n;o++)a[o]=arguments[o];let e=i.apply(this,a),s=iC();return Zk(e)?e.then(e=>(t?HO.addSuccessEvent({key:r,cost:iC()-s}):HO.addSuccessEvent({key:r}),e)).catch(e=>{throw HO.addFailedEvent({key:r,error:e}),e}):(HO.addSuccessEvent({key:r}),e)}catch(LA){throw HO.addFailedEvent({key:r,error:LA}),LA}})}function HP(){}var jP=e=>e();function zP(){this.dispose()}var WP=1,GP=class extends Function{toString(){return"".concat(this.name,"(").concat(this.args.length?[...this.args].join(", "):"",")")}subscribe(e){let t=new $P(e,this,this.streamId++);return ex.subscribe({id:this.id,end:!1},{nodeId:t.sourceId,streamId:t.id}),this(t),t}},qP=class{constructor(){this.defers=new Set,this.disposed=!1}next(e){}complete(){this.dispose()}error(e){this.dispose()}get bindDispose(){return()=>this.dispose()}dispose(){this.disposed=!0,this.complete=HP,this.error=HP,this.next=HP,this.dispose=HP,this.subscribe=HP,this.doDefer()}subscribe(e){return e instanceof GP?e.subscribe(this):e(this),this}get bindSubscribe(){return e=>this.subscribe(e)}doDefer(){this.defers.forEach(jP),this.defers.clear()}defer(e){this.defers.add(e)}removeDefer(e){this.defers.delete(e)}reset(){this.disposed=!1,delete this.complete,delete this.next,delete this.dispose,delete this.next,delete this.subscribe}resetNext(){delete this.next}resetComplete(){delete this.complete}resetError(){delete this.error}},KP=class extends qP{constructor(e){super(),this.sink=e,e.defer(this.bindDispose)}next(e){this.sink.next(e)}complete(){this.sink.complete()}error(e){this.sink.error(e)}},YP=class extends qP{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:HP,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:HP,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:HP;if(super(),this._next=t,this._error=i,this._complete=r,this.then=HP,e instanceof GP){let n={toString:()=>"subscribe",id:0,source:e};this.defer(()=>{ex.defer(n,0)}),ex.create(n),ex.pipe(n),this.sourceId=n.id,this.subscribe(e),ex.subscribe({id:n.id,end:!0}),t==HP?this._next=e=>ex.next(n,0,e):this.next=e=>{ex.next(n,0,e),t(e)},r==HP?this._complete=()=>ex.complete(n,0):this.complete=()=>{this.dispose(),ex.complete(n,0),r()},i==HP?this._error=e=>ex.complete(n,0,e):this.error=e=>{this.dispose(),ex.complete(n,0,e),i(e)}}else this.subscribe(e)}next(e){this._next(e)}complete(){this.dispose(),this._complete()}error(e){this.dispose(),this._error(e)}};function XP(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return i.reduce((e,t)=>t(e),e)}function ZP(e,t,i){if("undefined"!=typeof __FASTRX_DEVTOOLS__){let r=Object.defineProperties(Object.setPrototypeOf(e,GP.prototype),{streamId:{value:0,writable:!0,configurable:!0},name:{value:t,writable:!0,configurable:!0},args:{value:i,writable:!0,configurable:!0},id:{value:0,writable:!0,configurable:!0}});ex.create(r);for(let e=0;e<i.length;e++){let t=i[e];"function"==typeof t&&t instanceof GP&&ex.addSource(r,t)}return r}return e}function JP(e,t){return function(){for(var i=arguments.length,r=new Array(i),n=0;n<i;n++)r[n]=arguments[n];return i=>{if(i instanceof GP){let n=ZP(t=>{let a=new e(t,...r);a.sourceId=n.id,a.subscribe(i)},t,arguments);return n.source=i,ex.pipe(n),n}return t=>i(new e(t,...r))}}}function QP(e,t){window.postMessage({source:"fastrx-devtools-backend",payload:{event:e,payload:t}})}var $P=class extends KP{constructor(e,t,i){super(e),this.source=t,this.id=i,this.sourceId=e.sourceId,this.defer(()=>{ex.defer(this.source,this.id)})}next(e){ex.next(this.source,this.id,e),this.sink.next(e)}complete(){ex.complete(this.source,this.id),this.sink.complete()}error(e){ex.complete(this.source,this.id,e),this.sink.error(e)}},ex={addSource(e,t){QP("addSource",{id:e.id,name:e.toString(),source:{id:t.id,name:t.toString()}})},next(e,t,i){QP("next",{id:e.id,streamId:t,data:i&&i.toString()})},subscribe(e,t){let{id:i,end:r}=e;QP("subscribe",{id:i,end:r,sink:{nodeId:t&&t.nodeId,streamId:t&&t.streamId}})},complete(e,t,i){QP("complete",{id:e.id,streamId:t,err:i?i.toString():null})},defer(e,t){QP("defer",{id:e.id,streamId:t})},pipe(e){QP("pipe",{name:e.toString(),id:e.id,source:{id:e.source.id,name:e.source.toString()}})},update(e){QP("update",{id:e.id,name:e.toString()})},create(e){e.id||(e.id=WP++),QP("create",{name:e.toString(),id:e.id})}},tx=class extends qP{constructor(e){super(),this.source=e,this.sinks=new Set}add(e){e.defer(()=>this.remove(e)),1===this.sinks.add(e).size&&(this.reset(),this.subscribe(this.source))}remove(e){this.sinks.delete(e),0===this.sinks.size&&this.dispose()}next(e){this.sinks.forEach(t=>t.next(e))}complete(){this.sinks.forEach(e=>e.complete()),this.sinks.clear()}error(e){this.sinks.forEach(t=>t.error(e)),this.sinks.clear()}};function ix(){return e=>{let t=new tx(e);if(e instanceof GP){let i=ZP(e=>{t.add(e)},"share",arguments);return t.sourceId=i.id,i.source=e,ex.pipe(i),i}return ZP(t.add.bind(t),"share",arguments)}}function rx(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return ZP(e=>{let i=new KP(e),r=t.length;i.complete=()=>{0===--r&&e.complete()},t.forEach(i.bindSubscribe)},"merge",arguments)}function nx(e){let t=arguments,i=ix()(ZP(t=>{i.next=e=>t.next(e),i.complete=()=>t.complete(),i.error=e=>t.error(e),e&&t.subscribe(e)},"subject",t));return i.next=HP,i.complete=HP,i.error=HP,i}function ax(e,t){return i=>{let r=e=>i.next(e);i.defer(()=>t(r)),e(r)}}function ox(e,t){if("on"in e&&"off"in e)return ZP(ax(i=>e.on(t,i),i=>e.off(t,i)),"fromEvent",arguments);if("addListener"in e&&"removeListener"in e)return ZP(ax(i=>e.addListener(t,i),i=>e.removeListener(t,i)),"fromEvent",arguments);if("addEventListener"in e)return ZP(ax(i=>e.addEventListener(t,i),i=>e.removeEventListener(t,i)),"fromEvent",arguments);throw"target is not a EventDispachter"}var sx=JP(class extends KP{constructor(e,t,i){super(e),this.filter=t,this.thisArg=i}next(e){this.filter.call(this.thisArg,e)&&this.sink.next(e)}},"filter"),cx=JP(class extends KP{constructor(e,t){super(e),this.count=t}next(e){this.sink.next(e),0===--this.count&&(this.doDefer(),this.complete())}},"take"),lx=JP(class extends KP{constructor(e,t){super(e);let i=new KP(e);i.next=()=>{i.doDefer(),e.complete()},i.complete=zP,i.subscribe(t)}},"takeUntil"),dx=JP(class extends KP{constructor(e,t){super(e),this.f=t}next(e){this.f(e)||(this.next=super.next,this.next(e))}},"skipWhile"),ux=JP(class extends KP{constructor(e,t,i){super(e),this.mapper=t,this.thisArg=i}next(e){super.next(this.mapper.call(this.thisArg,e))}},"map"),hx=class extends KP{constructor(e,t,i){super(e),this.data=t,this.context=i}next(e){let t=this.context.combineResults;t?this.sink.next(t(this.data,e)):this.sink.next(e)}tryComplete(){this.context.resetComplete(),this.dispose()}},px=class e extends KP{constructor(e,t,i){super(e),this.makeSource=t,this.combineResults=i,this.index=0}subInner(t,i){let r=this.currentSink=new i(this.sink,t,this);this.complete===e.prototype.complete&&(this.complete=this.tryComplete),r.complete=r.tryComplete,r.subscribe(this.makeSource(t,this.index++))}complete(){this.sink.complete()}tryComplete(){this.currentSink.resetComplete(),this.dispose()}},fx=class extends hx{},mx=class extends px{next(e){this.subInner(e,fx),this.next=e=>{this.currentSink.dispose(),this.subInner(e,fx)}}},gx=JP(mx,"switchMap");var _x,vx=function(e){return(t,i)=>e(()=>t,i)}(JP(mx,"switchMapTo")),yx=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:HP,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:HP,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:HP;return r=>new YP(r,e,t,i)},Ex=JP(class extends KP{constructor(e,t){super(e),t instanceof Function?this.next=i=>{t(i),e.next(i)}:(t.next&&(this.next=i=>{t.next(i),e.next(i)}),t.complete&&(this.complete=()=>{t.complete(),e.complete()}),t.error&&(this.error=i=>{t.error(i),e.error(i)}))}},"tap"),bx=((_x=bx||{})[_x.AUTO_SWITCH_NEW_DEVICE=0]="AUTO_SWITCH_NEW_DEVICE",_x[_x.WAIT_CURRENT_DEVICE=1]="WAIT_CURRENT_DEVICE",_x),wx=class extends kP{constructor(e,t){super({mediaType:e,PlayerClass:t}),yA(this,"isRemote",!1),yA(this,"deviceId"),yA(this,"groupId",""),yA(this,"label",""),yA(this,"sourceTrack"),yA(this,"enableAutoSwitchWhenRecapturing",!0),yA(this,"_isRecapturing",!1),yA(this,"_lastRecaptureTime",0),yA(this,"_onMuteTimeoutId",-1),yA(this,"_encodeCheckTimeoutId",-1),yA(this,"recaptureMode",0),yA(this,"profile"),yA(this,"retryEncodeFailed")}get enableEncodeFrame(){return!1}get isPublishing(){return"publishing"===this.state.toString()}get isPublished(){return"publish"===this.state}get isUseCustomSource(){return!(!this.mediaTrack||this.sourceTrack===this.mediaTrack)}encodeFrame(e,t){throw new Error("Method not implemented.")}installTrackEvent(e){e.addEventListener(ZA,this.onTrackMuted),e.addEventListener(JA,this.onTrackUnmuted),e.addEventListener(QA,this.onTrackEnded),e.muted&&this.onTrackMuted(),e.readyState===QA&&this.onTrackEnded()}uninstallTrackEvent(e){e.removeEventListener(ZA,this.onTrackMuted),e.removeEventListener(JA,this.onTrackUnmuted),e.removeEventListener(QA,this.onTrackEnded)}setStateToReady(){}async capture(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];var i,r;let n=this.sourceTrack;try{let n,a=iC();TO.emit(SO.LOCAL_TRACK_CAPTURE_START,{track:this}),e.customSource?(n=new MediaStream,n.addTrack(e.customSource)):(t||null==(i=this.sourceTrack)||i.stop(),n=await xP(e));let o=n.getTracks()[0];return await this.setInputMediaStreamTrack(o),e.customSource||(this.sourceTrack=o,this.updateDeviceIdInUse(),this.listenDeviceChange()),TO.emit(SO.LOCAL_TRACK_CAPTURE_SUCCESS,{track:this,cost:iC()-a,profile:this.profile,room:null==(r=this.manager)?void 0:r.room}),n}catch(a){throw TO.emit(SO.LOCAL_TRACK_CAPTURE_FAILED,{track:this,error:a}),this.log.error("getUserMedia error observed ".concat(a)),a}finally{t&&(null==n||n.stop())}}setOutputMediaStreamTrack(e){var t;if(super.setOutputMediaStreamTrack(e),this.setStateToReady(),this.isPublishing||this.isPublished)return null==(t=this.room)?void 0:t.replaceTrack(this)}get hasFlag(){var e,t;let i=sC((null==(e=this.room)?void 0:e.localPublishFlag)||0,(null==(t=this.room)?void 0:t.userId)||"");return 4===this.mediaType&&i.hasVideo||1===this.mediaType&&i.hasAudio||2===this.mediaType&&i.hasAuxiliary}async publish(e,t){return this.room=e,this.room.localTracks.add(this),this.emit("4",{mediaType:this.strMediaType,state:"starting",prevState:"stopped"}),this.userId=e.userId,this._log.bindParent(e.getLogger()),await t,this._checkPublishFlag(e)}_checkPublishFlag(e){return new Promise(async(t,i)=>{var r,n,a,o,s;let c=()=>i(new ZR({code:YR.API_CALL_ABORTED,message:"publish aborted"}));if(this.hasFlag||this.muted?t():((this.state===aN.INIT||"ready"===this.state)&&c(),XP(ox(e,"local-publish-flag-changed"),sx(()=>this.hasFlag),lx(rx(ox(this,aN.INIT),ox(this,"ready"))),yx(t,i,c))),null!=(a=null==(n=null==(r=this.room)?void 0:r.networkQuality)?void 0:n.hadRecentBadUplink)&&a.call(n,2))return t();let l=e.heartbeatCount,d=(null==(s=null==(o=this.mediaTrack)?void 0:o.stats)?void 0:s.totalFrames)||0;this._encodeCheckTimeoutId=setTimeout(async()=>{var r,n,a,o,s,c,u,h;if(null!=(a=null==(n=null==(r=this.room)?void 0:r.networkQuality)?void 0:n.hadRecentBadUplink)&&a.call(n,2)||e.heartbeatCount-l<3)return t();if((this.isPublished||this.isPublishing)&&this.isMediaTrackActive){if(null!=(o=this.mediaTrack)&&o.stats){let e=this.mediaTrack.stats.totalFrames||0;e-d===0&&this.log.warn("capture totalFrames is 0 during encode check, totalFrames",e)}let e=this.kind===qA,r=this.stat.bytesSent>0;if(HO[r?"addSuccessEvent":"addFailedEvent"]({key:e?503700:513702}),!e){let e={H264:513704,H265:513705,VP8:513706}[(null==(c=null==(s=this.room)?void 0:s.videoCodec)?void 0:c.toUpperCase())||"H264"];e&&HO[r?"addSuccessEvent":"addFailedEvent"]({key:e})}if(!r){if(HO.addEnum({key:e?503701:513703,value:wO()}),_N.uploadEvent({log:"stat-encode-failed-".concat(this.kind,"-").concat(yO()||IO()),userId:this.userId}),this.log.warn(e?"encode failed":"".concat(null==(h=null==(u=this.room)?void 0:u.videoCodec)?void 0:h.toUpperCase()," encode failed")),this.retryEncodeFailed&&(this.log.warn("retry encode"),await this.retryEncodeFailed(this),this.stat.bytesSent>0||this.hasFlag||(await wC(5e3),this.stat.bytesSent>0||this.hasFlag)))return t();this.emit("6",this),i(new ZR({message:"".concat(this.strMediaType," encode failed"),code:e?YR.AUDIO_ENCODE_FAILED:YR.VIDEO_ENCODE_FAILED}))}}},1e4)})}unpublish(){this.room&&this.room.localTracks.delete(this),this.log.info("unpublish"),TO.emit(SO.LOCAL_TRACK_UNPUBLISHED,{track:this})}async updateDeviceIdInUse(){if(this.sourceTrack&&RL){let{deviceId:e,groupId:t}=this.sourceTrack.getSettings(),{label:i}=this.sourceTrack;await IP({newDeviceId:e,oldDeviceId:this.deviceId,oldGroupId:this.groupId,oldLabel:this.label,kind:this.kind})||(this.deviceId=e,this.label=i,t&&(this.groupId=t),_P().then(i=>{let r=i.find(i=>{let r=i.deviceId===e;return t&&(r=r&&i.groupId===t),r});r&&this.emit("2",r)}))}}setProfile(e){this.log.info("setProfile",e),Object.assign(this.profile,e)}isNeedToRecapture(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return!(!this.deviceId||!this.sourceTrack||this.kind===qA&&!function(e){if(e instanceof CanvasCaptureMediaStreamTrack||!(e instanceof MediaStreamTrack))return!1;let t=e.label.toLocaleLowerCase();if(t.includes("mic")||t.includes("麦克风"))return!0;let i="".concat(((null==e?void 0:e.getSettings())||{}).deviceId,"_").concat(aR);return!!wP.has(i)}(this.sourceTrack)||this.kind===KA&&!function(e){if(e instanceof CanvasCaptureMediaStreamTrack||!(e instanceof MediaStreamTrack))return!1;let t=e.label.toLocaleLowerCase();if(t.includes("camera")||t.includes("webcam"))return!0;let i="".concat(((null==e?void 0:e.getSettings())||{}).deviceId,"_").concat(oR);return!!wP.has(i)}(this.sourceTrack)||this._isRecapturing||e&&MD&&sO)}onTrackMuted(){if(super.onTrackMuted(),MP(),this.isNeedToRecapture(!0)){if(Date.now()-this._lastRecaptureTime<mR)return void setTimeout(()=>this.onTrackMuted(),mR);this._onMuteTimeoutId=setTimeout(async()=>{var e;if(null!=(e=this.sourceTrack)&&e.muted){if((rD||aD)&&"visible"!==document.visibilityState)return;this.recapture(await this.getRecoverCaptureDeviceId())}},5e3)}}onTrackUnmuted(){super.onTrackUnmuted(),this._onMuteTimeoutId>0&&clearTimeout(this._onMuteTimeoutId)}async onTrackEnded(){if(super.onTrackEnded(),this.isNeedToRecapture()&&0===this.recaptureMode){if(Date.now()-this._lastRecaptureTime<mR)return void setTimeout(()=>this.onTrackEnded(),mR);this.emit("7"),this.recapture(await this.getRecoverCaptureDeviceId())}}async recapture(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];var i;if(this._isRecapturing||!this.sourceTrack)return;this.log.warn("recapture trying");let r=this.sourceTrack;t||null==(i=this.sourceTrack)||i.stop(),this._isRecapturing=!0,this._lastRecaptureTime=Date.now();let n={useExactDeviceId:!0};if("user"===e||"environment"===e)n.facingMode=e;else{let t;("audio"===this.kind?await vP():await yP()).find(t=>t.deviceId===e)&&(t=e),n.deviceId=t}return this.capture(n,t).then(()=>{this._isRecapturing=!1,this.log.warn("recapture success"),this.emit("1",{deviceId:this.deviceId}),TO.emit(SO.LOCAL_TRACK_RECAPTURE,{track:this})}).catch(e=>{this._isRecapturing=!1,this.log.warn("recapture failed ".concat(e.message)),this.emit("5",e),TO.emit(SO.LOCAL_TRACK_RECAPTURE,{track:this,error:e})}).finally(()=>{t&&(null==r||r.stop())})}async getRecoverCaptureDeviceId(){let e=this instanceof Ax;if(e&&this.facingMode)return this.facingMode;let{deviceId:t}=this;if(t){let i=(Ix.get(t)||0)+1;if(Ix.set(t,i),i>=3&&this.enableAutoSwitchWhenRecapturing){let r=e?(await yP()).find(e=>!Ix.has(e.deviceId)):(await vP()).find(e=>!Ix.has(e.deviceId));r&&(this.log.warn("".concat(t," capture fail ").concat(i," times, change new ").concat(r.deviceId)),t=r.deviceId)}}return t}stopCapture(){var e;this.sourceTrack&&(this.sourceTrack.stop(),TO.emit(SO.LOCAL_TRACK_STOPPED,{track:this}),this.uninstallTrackEvent(this.sourceTrack)),this._inputTrack&&this.uninstallTrackEvent(this._inputTrack),null==(e=this.manager)||e.removeInput(this),this._onMuteTimeoutId&&clearTimeout(this._onMuteTimeoutId)}close(){super.close(),this.stopCapture()}};vA([iN(aN.INIT,"ready",{ignoreError:!0,sync:!0})],wx.prototype,"setStateToReady",1),vA([function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return function(t,i,r){let n=r.value;return r.value=function(){let t=BP.get(this)||new FP;for(var r=arguments.length,a=new Array(r),o=0;o<r;o++)a[o]=arguments[o];return BP.set(this,t),t.push({fn:n,args:a,context:this,funcName:i},e)},r}}()],wx.prototype,"capture",1),vA([iN("ready","publish",{ignoreError:!0,success(){TO.emit(SO.LOCAL_TRACK_PUBLISHED,{track:this,room:this.room}),this.emit("4",{mediaType:this.strMediaType,state:"started",prevState:"starting"}),this.log.info("published")},fail(e){var t;null==(t=this.room)||t.localTracks.delete(this);let i="error",r=e instanceof ZR?e:e.cause instanceof ZR?e.cause:e,n=!1;r instanceof ZR&&(r.message.includes("timeout")?i="timeout":r.code===YR.API_CALL_ABORTED&&(n=!0,i="api-call")),this.emit("4",{mediaType:this.strMediaType,state:"stopped",prevState:"starting",reason:i,error:r}),this.log[n?"info":"error"]("publish failed",r)}}),VP(521714,!1)],wx.prototype,"publish",1),vA([kA(e=>async function(){let t="publish"===this.state?"started":"starting";e.call(this),this.emit("4",{mediaType:this.strMediaType,state:"stopped",prevState:t,reason:"api-call"}),clearTimeout(this._encodeCheckTimeoutId)}),iN([],"ready",{sync:!0})],wx.prototype,"unpublish",1);var Ix=new Map;TO.on(SO.SWITCH_DEVICE_SUCCESS,e=>{e.track.deviceId&&Ix.delete(e.track.deviceId)});var Tx=class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.dataView=e,this.isSEI&&(t?this.addPreventionByte():this.removePreventionByte())}addPreventionByte(){let{seiPayloadStartIndex:e}=this,t=this.dataView.byteLength-2,i=[],r=0;for(let a=e;a<=t;a++){let e=this.dataView.getInt8(a);switch(e){case 0:case 1:case 2:case 3:2===r&&(i.push(3),r=0),0===e?r+=1:r=0,i.push(e);break;default:r=0,i.push(e)}}i.push(this.dataView.getInt8(this.dataView.byteLength-1));let n=new DataView(new Uint8Array([...new Uint8Array(this.dataView.buffer).slice(0,e),...i]).buffer);this.dataView=n}removePreventionByte(){let{seiPayloadStartIndex:e}=this,t=this.dataView.byteLength-1,i=[],r=0;for(let a=e;a<=t;a++)switch(this.dataView.getInt8(a)){case 0:r++,i.push(this.dataView.getInt8(a));break;case 3:2!==r&&i.push(this.dataView.getInt8(a)),r=0;break;default:i.push(this.dataView.getInt8(a)),r=0}let n=new DataView(new Uint8Array([...new Uint8Array(this.dataView.buffer).slice(0,e),...i]).buffer);this.dataView=n}get seiPayloadStartIndex(){let e=6;for(let t=6;t<this.dataView.buffer.byteLength&&(e+=1,255===this.dataView.getUint8(t));t+=1);return e}get seiPayloadType(){return this.isSEI?this.dataView.getUint8(5):null}get seiPayload(){if(!this.isSEI)return null;let e=0,t=6;for(let a=6;a<this.dataView.buffer.byteLength;a+=1){let i=this.dataView.getUint8(a);if(t+=1,255!==i){e+=i;break}e+=255}let i=new ArrayBuffer(e),r=new DataView(i),n=t;for(let a=0;a<i.byteLength;a+=1)r.setInt8(a,this.dataView.getInt8(n+a));return r}get naluType(){let e=this.getStartCodeLength();return e>=this.dataView.byteLength?0:31&this.dataView.getUint8(e)}getStartCodeLength(){return this.dataView.byteLength>=4&&0===this.dataView.getUint8(0)&&0===this.dataView.getUint8(1)&&0===this.dataView.getUint8(2)&&1===this.dataView.getUint8(3)?4:this.dataView.byteLength>=3&&0===this.dataView.getUint8(0)&&0===this.dataView.getUint8(1)&&1===this.dataView.getUint8(2)?3:0}get isIDR(){return 5===this.naluType}get isSPS(){return 7===this.naluType}get isPPS(){return 8===this.naluType}get isSEI(){return 6===this.naluType}},Sx=class{constructor(){yA(this,"_seiMessageList",[]),yA(this,"_smallSeiMessageList",[]),yA(this,"_seiPayloadType",243)}encodeSEINalu(e){let t=e.byteLength,i=parseInt(String(t/255),10),r=t%255,n=[];n.push(0,0,0,1,6,this._seiPayloadType);for(let o=0;o<i;o++)n.push(255);n.push(r);let a=new DataView(e);return n.push(...new Uint8Array(a.buffer)),n.push(128),new Tx(new DataView(new Uint8Array(n).buffer),!0)}sendSEI(e,t){null!=t&&t.seiPayloadType&&(this._seiPayloadType=t.seiPayloadType),this._seiMessageList.push(e),null!=t&&t.small&&this._smallSeiMessageList.push(e)}isEmpty(){return!this._seiMessageList.length}getNaluCount(e){let t=0,i=0,r=new DataView(e);for(let n=0;n<e.byteLength;n++)switch(r.getUint8(n)){case 0:t++;break;case 1:(2===t||3===t)&&i++,t=0;break;default:t=0}return i}encode(e,t){let i=t?this._smallSeiMessageList:this._seiMessageList;if(i.length>0&&e.data.byteLength>0){let t=9-this.getNaluCount(e.data);if(t<=0)return 0;let r=i.splice(0,t).reverse().map(this.encodeSEINalu.bind(this)),n=r.reduce((e,t)=>e+t.dataView.byteLength,0),a=new ArrayBuffer(n+e.data.byteLength),o=new DataView(a),s=new DataView(e.data),c=0;for(let e=0;e<r.length;e++)for(let t=0;t<r[e].dataView.byteLength;t++)o.setInt8(c++,r[e].dataView.getInt8(t));for(let i=0;i<e.data.byteLength;i++)o.setInt8(c++,s.getInt8(i));return e.data=a,r.length}return 0}},Ax=class extends wx{constructor(e){super(arguments.length>1&&void 0!==arguments[1]?arguments[1]:4,WN),yA(this,"profile",hA({},WA)),yA(this,"avoidCropping",!1),yA(this,"_scaleResolutionDownBy"),yA(this,"stat",{bytesSent:0,packetsSent:0,framesEncoded:0,framesSent:0,frameWidth:0,frameHeight:0,fpsCapture:0,framesCaptured:0}),yA(this,"small"),yA(this,"isNeedToSetBandwidth"),yA(this,"muteImage"),yA(this,"manager"),yA(this,"_seiCodec",new Sx),this.manager=e;let t=()=>{var e;if(this.isAllowed2k4k(this.profile))this.room&&this.settings.height>=1440&&"publish"===this.state&&this.room.sendAbilityStatus({"2k4k":1});else{let t=bk((null==(e=this.room)?void 0:e.sdkAppId)||0)?BA:FA;this.log.warn("Resolution is reset to 1080p, need to upgrade ability here ".concat(t)),this.setProfile(pA(hA({},this.profile),{width:1920,height:1080})),this.applyProfile()}};this.on("input-media-track-changed",t),this.on("publish",t),this.handleCameraAdded=this.handleCameraAdded.bind(this),this.handleCameraRemoved=this.handleCameraRemoved.bind(this)}get facingMode(){if(RL&&this.mediaTrack)return this.mediaTrack.getSettings().facingMode}get contentHint(){var e;return(null==(e=this._inputTrack)?void 0:e.contentHint)||""}get isQosClearFirst(){var e;return"detail"===(null==(e=this._inputTrack)?void 0:e.contentHint)}get hasSmall(){var e;return!(null==(e=this.manager)||!e.hasSmall)}async setMute(e){var t,i,r;if(zk(e)){if(this.muteImage===e)return;await(null==(t=this.manager)?void 0:t.deleteWatermark("mute")),await(null==(i=this.manager)?void 0:i.setWatermark({x:0,y:0,width:this.settings.width,height:this.settings.height,type:"mute",zIndex:999,imageUrl:e,fillVideo:!0})),this.muteImage=e,super.setMute(!1)}else this.muteImage&&(await(null==(r=this.manager)?void 0:r.deleteWatermark("mute")),this.muteImage=void 0),super.setMute(e)}async capture(e){let{deviceId:t,facingMode:i,useExactDeviceId:r=!0,customSource:n,retryWhenExactFailed:a=!0}=e,o={audio:!1,video:!0,facingMode:i||this.facingMode,cameraId:t,width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate,useExactDeviceId:r,retryWhenExactFailed:a,customSource:n};if("environment"===o.facingMode){let e=await this.getDeviceIdWhenUsingBackCamera();e&&(o.cameraId=e)}return super.capture(o)}setProfile(e){var t;let i=this.fallbackProfile(e);if(i.bitrate&&(this.isNeedToSetBandwidth=i.bitrate!==this.profile.bitrate),this.isAllowed2k4k(this.profile))super.setProfile(i);else{let e=bk((null==(t=this.room)?void 0:t.sdkAppId)||0)?BA:FA;this.log.warn("Resolution is reset to 1080p, need to upgrade ability here ".concat(e)),super.setProfile(pA(hA({},this.profile),{width:1920,height:1080}))}}async applyProfile(){var e,t;if(!this.mediaTrack)return;let{width:i=0,height:r=0}=(this.sourceTrack||this.mediaTrack).getSettings(),n=i*r,a=this.settings,o=a.height!==this.profile.height||a.width!==this.profile.width||a.frameRate!==this.profile.frameRate;if(o&&(16===hO&&this.deviceId?await this.recapture(this.deviceId):(xC(this.outMediaTrack)?await(null==(e=this.outMediaTrack)?void 0:e.applyConstraints({width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate})):await(null==(t=this.sourceTrack||this.mediaTrack)?void 0:t.applyConstraints({width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate})),this.manager&&this.manager.changeInput(this)),this.room&&this.settings.height>=1440&&"publish"===this.state&&this.room.sendAbilityStatus({"2k4k":1})),this.isNeedToSetBandwidth&&this.room&&this.room.setBandWidth){this.isNeedToSetBandwidth=!1;let{width:e=0,height:t=0}=(this.sourceTrack||this.mediaTrack).getSettings(),i=e*t;return o&&i&&n&&i===n?void this.log.warn("set bandwidth failed: resolution is not changed"):this.room.setBandWidth({bandwidth:this.profile.bitrate,type:KA,videoType:XA})}}get settings(){let e={width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate},t=this.sourceTrack||this.mediaTrack;return RL&&t&&Object.assign(e,t.getSettings()),e}get scaleResolutionDownBy(){return this._scaleResolutionDownBy?this._scaleResolutionDownBy:AC(this.settings,this.profile)}isAllowed2k4k(e){var t;return!(this.room&&this.room.scheduleResult&&!this.isScreen&&!(e.height*e.width<3686400))||1===(null==(t=this.room.scheduleResult.trtcAutoConf)?void 0:t["2k4k"])}isNeedToSwitchDevice(e){return!(!this.mediaTrack||this.deviceId===e||this.facingMode===e)}async switchDevice(e){try{if(!this.isNeedToSwitchDevice(e)&&!this.isUseCustomSource)return;let t={useExactDeviceId:!0,retryWhenExactFailed:!1};"user"===e||"environment"===e?t.facingMode=e:t.deviceId=e,this.sourceTrack&&this.sourceTrack.stop(),await this.capture(t),TO.emit(SO.SWITCH_DEVICE_SUCCESS,{track:this}),this.log.info("switch camera success")}catch(OA){throw this.log.error("switch camera failed ".concat(OA)),this.deviceId&&this.recapture(this.deviceId),OA}}async getDeviceIdWhenUsingBackCamera(){let e;try{if(zD&&!QD&&CL){let t=(await yP(!0)).map(e=>{var t;return pA(hA({},e),{capabilities:null==(t=e.getCapabilities)?void 0:t.call(e)})}).filter(e=>{var t,i;return null==(i=null==(t=e.capabilities)?void 0:t.facingMode)?void 0:i.includes("environment")}),i=t[0];t.forEach(e=>{var t,r,n,a;let{capabilities:o}=e;(null!=(t=o.width)&&t.max&&null!=(r=o.height)&&r.max?o.width.max*o.height.max:0)>(null!=(n=i.capabilities.width)&&n.max&&null!=(a=i.capabilities.height)&&a.max?i.capabilities.width.max*i.capabilities.height.max:0)&&(i=e)}),null!=i&&i.capabilities&&(this._log.info("use max resolution back camera",i),e=i.deviceId)}}catch(OA){this._log.warn("get max res camera failed",OA)}return e}async updateSmallConfig(e){var t,i;this._log.info("update small stream config: ".concat(JSON.stringify(e)));let r=!this.small;this.small=this.fallbackProfile(e,!0),await(null==(t=this.manager)?void 0:t.update()),r&&await(null==(i=this.room)?void 0:i.enableSmall(!0)),this.log.info("update small stream config success")}fallbackProfile(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=e.width>e.height,r=hA({},e);return e.width*e.height<=19200&&aD&&tO&&(this.log.warn("".concat(t?"small ":"","resolution is ").concat(e.width,"*").concat(e.height,", fallback to 240*180 for android chrome")),r.width=i?240:180,r.height=i?180:240,r.bitrate=Math.max(e.bitrate,150)),e.width*e.height>921600&&fO&&(r.width=i?1280:720,r.height=i?720:1280,this.log.warn("reset to 1280 * 720 on iOS 13~14")),function(e,t){let i=e.split(".").map(e=>Number(e)),r=t.split(".").map(e=>Number(e));for(let n=0;n<Math.max(i.length,r.length);n++){let e=i[n]||0,t=r[n]||0;if(e<t)return!0;if(e>t)return!1}return!1}(dO,"14.3")&&uO(dO,"14.0",!0)&&this.on("7",()=>{let e=this.profile.width>this.profile.height;this.profile.width*this.profile.height>307200?(this.profile.width=e?640:480,this.profile.height=e?480:640,this.log.warn("reduce the resolution to 480p on iOS 14.0 ~ 14.2")):this.profile.width*this.profile.height>230400&&(this.profile.width=e?640:360,this.profile.height=e?360:640,this.log.warn("reduce the resolution to 360p on iOS 14.0 ~ 14.2"))}),!t&&this.avoidCropping&&(tO||sD)&&!(aD||rD||tD||$C||QD)&&e.width*e.height<=230400&&e.width/e.height===16/9&&(this._scaleResolutionDownBy=1280/e.width,r.width=1280,r.height=720,this.log.warn("capture 720p, scale: ".concat(this._scaleResolutionDownBy))),r}stopSmall(){var e,t;this.small&&(delete this.small,null==(e=this.manager)||e.update(),null==(t=this.room)||t.enableSmall(!1))}listenDeviceChange(){mP&&!mP.listeners("videoInputRemoved").includes(this.handleCameraRemoved)&&mP.on("videoInputRemoved",this.handleCameraRemoved,this)}async handleCameraRemoved(e){if(e.deviceId===this.deviceId){let t=1===this.recaptureMode;if(this.log.warn("RecaptureMode: ".concat(bx[this.recaptureMode],". Current camera is lost: ").concat(JSON.stringify(e))),0===this.recaptureMode){Zx(this.userId,{eventId:2003,param1:7,streamType:2});let e=await yP();e[0]?this.recapture(e[0].deviceId):t=!0}t&&mP.on("videoInputAdded",this.handleCameraAdded,this)}}async handleCameraAdded(e){1===this.recaptureMode&&e.deviceId!==this.deviceId||(mP.off("videoInputAdded",this.handleCameraAdded,this),this.log.warn("camera added: ".concat(JSON.stringify(e))),this.recapture(e.deviceId))}encodeFrame(e,t){if(!this.manager)return e;let i=t?8:this.mediaType;return this.manager.encodePipeline.reduceRight((e,t)=>t?t({frame:e,mediaType:i}):e,e)}get enableEncodeFrame(){return!!this.manager&&this.manager.encodePipeline.some(e=>e)}play(e,t){return jk(this.mirror)&&!this.isScreen&&this.setMirror("view"),super.play(e,t)}close(){mP.off("videoInputAdded",this.handleCameraAdded,this),mP.off("videoInputRemoved",this.handleCameraRemoved,this),super.close()}async recapture(e){try{await super.recapture(e)}catch(OA){let i=(await yP()).find(t=>t.deviceId!==e);if(!i)throw OA;await super.recapture(i.deviceId)}}setContentHint(e){this.mediaTrack&&"contentHint"in this.mediaTrack&&(this.mediaTrack.contentHint!==e&&(this.log.info("setContentHint ".concat(e)),this.mediaTrack.contentHint=e),this.outMediaTrack&&this.outMediaTrack.contentHint!==e&&(this.outMediaTrack.contentHint=e))}setRotation(e){this.manager&&(this.isScreen||jk(e)||e!==this.rotation&&(this.rotation=e,this.manager.rotation=e))}};vA([RA(function(e){this.setContentHint(e.contentHint||"motion")})],Ax.prototype,"capture",1);var Rx=[-1,-1,1,-1,-1,1,1,1],kx=[0,0,1,0,0,1,1,1],Cx=class e extends aN{constructor(e,t){if(super(),this.context=e,yA(this,"name"),yA(this,"input"),yA(this,"output"),yA(this,"texture"),yA(this,"ctx2d",null),yA(this,"fbo"),yA(this,"width",0),yA(this,"height",0),yA(this,"x",0),yA(this,"y",0),yA(this,"program"),yA(this,"vertexShader"),yA(this,"fragmentShader"),yA(this,"totalFrames",0),yA(this,"dropFrames",0),yA(this,"matchInputSize",!0),yA(this,"texCoordBuffer"),yA(this,"positionBuffer"),yA(this,"lastInfo",{name:"",timestamp:0,totalFrames:0,x:0,y:0,width:0,height:0,fps:0}),yA(this,"cost",0),yA(this,"_canvas",null),yA(this,"_image"),yA(this,"log"),this.context.on("disconnect",this.close,this),this.name=t.name,this.log=t.logger,this.matchInputSize=!1!==t.matchInputSize,this.width=t.width||e.width,this.height=t.height||e.height,this._image=t.image,e instanceof jx)e.ctx&&t.create2d&&("function"==typeof OffscreenCanvas&&16!==hO?this._canvas=new OffscreenCanvas(this.width,this.height):(this._canvas=document.createElement("canvas"),this._canvas.width=this.width,this._canvas.height=this.height),this.ctx2d=this._canvas.getContext("2d"),this._image=this._canvas);else try{let i=e.ctx;this.texCoordBuffer=this.createBuffer(kx),this.positionBuffer=this.createBuffer(Rx),!1!==t.createTexture&&(this.texture=i.createTexture(),this.useTexture(),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MAG_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,i.CLAMP_TO_EDGE),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,i.CLAMP_TO_EDGE),i.pixelStorei(i.UNPACK_ALIGNMENT,1)),t.useFbo&&(this.fbo=i.createFramebuffer(),this.useBufferFrame(),this.useTexture(),i.texImage2D(i.TEXTURE_2D,0,i.RGBA,this.width,this.height,0,i.RGBA,i.UNSIGNED_BYTE,null),i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,this.texture,0)),t.useDefaultProgram?this.program=e.defaultProgam:(t.vertexShaderSource||t.fragmentShaderSource)&&(this.vertexShader=t.vertexShaderSource?e.createShader(i.VERTEX_SHADER,t.vertexShaderSource):e.defaultVShader,this.fragmentShader=t.fragmentShaderSource?e.createShader(i.FRAGMENT_SHADER,t.fragmentShaderSource):e.defaultFShader,this.program=e.createProgram(this.vertexShader,this.fragmentShader))}catch(i){this.context.destroy(new ZR({code:YR.VIDEO_MANAGER_ERROR,extraCode:3,message:"create video node ".concat(this.name," error ").concat(i.message||i)}))}}get image(){return this._image}set image(e){this._image=e}createFramebuffer(e){let t=this.context.ctx,i=t.createFramebuffer();return t.bindFramebuffer(t.FRAMEBUFFER,i),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,e,0),i}connect(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return e.addInput(this,...i),this.output=e,e}addInput(e){this.input=e,this.matchInputSize&&e.width&&e.height&&this.resize(e.width,e.height)}requestFrame(e){let t=Date.now();return!!(this.context instanceof Hx&&this.render(e)||this.context instanceof jx&&this.render2d(e))&&(this.totalFrames++,this.cost=Date.now()-t,!0)}render2d(e){var t;return!(null==(t=this.input)||!t.requestFrame(e))&&this.draw2d(this.input.image,0,0,this.width,this.height)}update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;var t;null==(t=this.output)||t.update(e)}disconnect(){for(var e,t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];null==(e=this.output)||e.removeInput(this,...i),delete this.output}removeInput(e){delete this.input}close(){var e,t;if(this.context.off("disconnect",this.close,this),null==(e=this.output)||e.removeInput(this),delete this.output,null==(t=this.input)||t.disconnect(),this.context instanceof Hx){let e=this.context.ctx;e.deleteBuffer(this.texCoordBuffer),e.deleteBuffer(this.positionBuffer),this.fbo&&e.deleteFramebuffer(this.fbo),this.texture&&e.deleteTexture(this.texture),this.vertexShader&&this.vertexShader!==this.context.defaultVShader&&e.deleteShader(this.vertexShader),this.fragmentShader&&this.fragmentShader!==this.context.defaultFShader&&e.deleteShader(this.fragmentShader),this.program&&this.program!==this.context.defaultProgam&&e.deleteProgram(this.program)}this._canvas&&(this._canvas.width=0,this._canvas.height=0,this.ctx2d=null),this.removeAllListeners()}useTexture(){this.useTextures(this.texture)}useInputTexture(){var e;this.useTextures(null==(e=this.input)?void 0:e.texture)}useTextures(){let e=this.context.ctx;for(var t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];i.forEach((t,i)=>{t&&(e.activeTexture(e.TEXTURE0+i),e.bindTexture(e.TEXTURE_2D,t))})}useProgram(){this.context.ctx.useProgram(this.program)}useBufferFrame(){let e=this.context.ctx;e.bindFramebuffer(e.FRAMEBUFFER,this.fbo||null)}createBuffer(e){let t=this.context.ctx,i=t.createBuffer();return t.bindBuffer(t.ARRAY_BUFFER,i),t.bufferData(t.ARRAY_BUFFER,new Float32Array(e),t.STATIC_DRAW),i}setTexBuffer(e){let t=this.context.ctx;t.bindBuffer(t.ARRAY_BUFFER,this.texCoordBuffer),t.bufferData(t.ARRAY_BUFFER,new Float32Array(e),t.STATIC_DRAW)}setPosBuffer(e){let t=this.context.ctx;t.bindBuffer(t.ARRAY_BUFFER,this.positionBuffer),t.bufferData(t.ARRAY_BUFFER,new Float32Array(e),t.STATIC_DRAW)}changeBufferData(e,t){let i=this.context.ctx;i.bindBuffer(i.ARRAY_BUFFER,e),i.bufferData(i.ARRAY_BUFFER,new Float32Array(t),i.STATIC_DRAW)}setAttributes(){let e=this.context.ctx;for(var t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];i.forEach((t,i)=>{e.enableVertexAttribArray(i),e.bindBuffer(e.ARRAY_BUFFER,t),e.vertexAttribPointer(i,2,e.FLOAT,!1,0,0)})}getVertexPoint(e,t){return[e/this.width*2-1,t/this.height*2-1]}layout2texCoords(e){return[...this.getVertexPoint(e.x,e.y),...this.getVertexPoint(e.x+e.width,e.y),...this.getVertexPoint(e.x,e.y+e.height),...this.getVertexPoint(e.x+e.width,e.y+e.height)]}resize(e,t){if(this.width!==e||this.height!==t){if(this.width=e,this.height=t,this._canvas&&(this._canvas.width=e,this._canvas.height=t),this.texture&&this.fbo){this.useTexture();let i=this.context.ctx;i.texImage2D(i.TEXTURE_2D,0,i.RGBA,e,t,0,i.RGBA,i.UNSIGNED_BYTE,null)}this.output&&this.output.matchInputSize&&this.output.resize(e,t)}}draw(e,t){this.setAttributes(e||this.positionBuffer,t||this.texCoordBuffer);let i=this.context.ctx;i.drawArrays(i.TRIANGLE_STRIP,0,4)}draw2d(t,i,r,n,a,o,s,c,l){let d=!(jk(o)||jk(s)||jk(c)||jk(l));return!(!this.ctx2d||!t)&&(t instanceof ImageData?(d?this.ctx2d.putImageData(t,i,r,o,s,c,l):this.ctx2d.putImageData(t,i,r),this.emit(e.RENDER,this.ctx2d.canvas)):(d?this.ctx2d.drawImage(t,o,s,c,l,i,r,n,a):this.ctx2d.drawImage(t,i,r,n,a),this.emit(e.RENDER,t)),"undefined"!=typeof VideoFrame&&t instanceof VideoFrame&&t.close(),!0)}drawBackGround2d(e){this.ctx2d&&(this.ctx2d.save(),this.ctx2d.fillStyle=e,this.ctx2d.fillRect(0,0,this.width,this.height),this.ctx2d.restore())}getInfo(){var e;let{totalFrames:t,x:i,y:r,width:n,height:a,name:o,cost:s}=this,c=Date.now(),l=(t-this.lastInfo.totalFrames)/((c-this.lastInfo.timestamp)/1e3)|0;return this.lastInfo={totalFrames:t,x:i,y:r,width:n,height:a,timestamp:c,fps:l,name:o,cost:s},hA({parent:null==(e=this.input)?void 0:e.getInfo()},this.lastInfo)}createTexture(e){let t=this.context.ctx,i=t.createTexture();return this.useTextures(i),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.pixelStorei(t.UNPACK_ALIGNMENT,1),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e),i}};yA(Cx,"RENDER","render"),vA([iN(aN.INIT,"connected",{sync:!0})],Cx.prototype,"connect",1),vA([iN("connected",aN.INIT,{ignoreError:!0,sync:!0})],Cx.prototype,"disconnect",1),vA([iN([],"closed",{sync:!0})],Cx.prototype,"close",1);var Dx=Cx,Ox=XP(function(e){return ZP(t=>{let i=0,r=setInterval(()=>t.next(i++),e);return t.defer(()=>{clearInterval(r)}),"interval"},"interval",arguments)}(250),ux(()=>performance.now()),ix()),Lx=[0,1,1,1,0,0,1,0],Nx=class extends Dx{constructor(e,t){super(e,Object.assign({useDefaultProgram:!0,createTexture:!1,name:"destination"},t)),yA(this,"_intervalId",0),yA(this,"_sequence",0),yA(this,"checkGLError",!1),yA(this,"checkVisibilityChange"),e instanceof jx?this.ctx2d=e.ctx||null:e.available&&null!=t&&t.mirrorUpAndDown&&this.setTexBuffer(Lx)}start(e){this.log.info("".concat(this.name," start render ").concat(e," fps")),uN.clearTask(this._intervalId),this._intervalId=uN.run("intervalInWorker",()=>{if(e!==this.context.frameRate&&(uN.clearTask(this._intervalId),this.start(this.context.frameRate)),this.requestFrame(this._sequence++),this.checkGLError&&this.context instanceof Hx){let e=this.context.ctx.getError();e&&this.context.destroy(new ZR({code:YR.VIDEO_MANAGER_ERROR,extraCode:5,message:"".concat(this.name," req ").concat(this._sequence," render ").concat(this.totalFrames," faild ").concat(e)}))}},{fps:this.context.frameRate})}render(e){var t;return!(null==(t=this.input)||!t.requestFrame(e))&&(this.useProgram(),this.useBufferFrame(),this.useInputTexture(),this.draw(),this.emit(Dx.RENDER,this.context._canvas),!0)}addInput(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];super.addInput(e,...i),this.start(this.context.frameRate)}update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;"closed"!==this.state&&(this._intervalId&&(uN.clearTask(this._intervalId),this._intervalId=0,1===e&&(this.log.info("".concat(this.name," use requestVideoFrameCallback")),this.checkVisibilityChange=()=>{document.hidden&&(this.start(this.context.frameRate),this.log.info("".concat(this.name," use timer")),document.removeEventListener("visibilitychange",this.checkVisibilityChange))},document.addEventListener("visibilitychange",this.checkVisibilityChange))),this.requestFrame(this._sequence++))}removeInput(e){super.removeInput(e),uN.clearTask(this._intervalId)}resize(e,t){super.resize(e,t),this.context.setSize(e,t)}close(){super.close(),uN.clearTask(this._intervalId),document.removeEventListener("visibilitychange",this.checkVisibilityChange)}},Px=class extends Nx{constructor(e,t){super(e,t),yA(this,"_videoTrack"),yA(this,"_muteOb"),yA(this,"_closedOb",ox(this,"closed")),yA(this,"_subscription"),yA(this,"_canvasContainer"),Number(lO)<17&&(this._canvasContainer=document.createElement("div"),this._canvasContainer.style.display="none"),[this._videoTrack]=e.canvas.captureStream().getVideoTracks(),this._muteOb=ox(this._videoTrack,"mute"),XP(ox(this._videoTrack,"ended"),lx(this._closedOb),yx(()=>{this.context.destroy(new ZR({code:YR.VIDEO_MANAGER_ERROR,extraCode:8,message:"video track ended"}))}))}enableCheckMute(){this._subscription=XP(this._muteOb,lx(this._closedOb),vx((e=>t=>{let i=performance.now();XP(Ox,dx(t=>t-i<e),cx(1))(t)})(5e3)),sx(()=>{var e;return!(null==(e=this._videoTrack)||!e.muted||document.hidden)}),yx(()=>{this.context.destroy(new ZR({code:YR.VIDEO_MANAGER_ERROR,extraCode:7,message:"video track muted"}))}))}disableCheckMute(){var e;null==(e=this._subscription)||e.dispose()}get videoTrack(){return this._videoTrack}putCanvasIntoDom(){!this.context._canvas||!this._canvasContainer||document.getElementById(this.context._canvas.id)||(this.log.info("".concat(this.name," put canvas to body")),document.body.appendChild(this._canvasContainer),this._canvasContainer.appendChild(this.context._canvas))}render(e){return this.putCanvasIntoDom(),super.render(e)}render2d(e){return this.putCanvasIntoDom(),super.render2d(e)}close(){var e,t;super.close(),null==(e=this._videoTrack)||e.stop(),delete this._videoTrack,null==(t=this._canvasContainer)||t.remove()}},xx=class extends Dx{constructor(e,t){super(e,hA({name:"imageSource"},t)),yA(this,"_lastImage"),yA(this,"_totalFrames",0),yA(this,"_autoResize",!1),yA(this,"_canvasRendered"),yA(this,"videoCallbackId",0),yA(this,"waitingFirstFrame",!0),yA(this,"shouldUpdate",!0),this._autoResize=!1!==(null==t?void 0:t.autoResize),16===hO&&(this._canvasRendered=nx(),XP(this._canvasRendered,function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return e=>ZP(function(i){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length;for(;r<n&&!i.disposed;)i.next(t[r++]);i.disposed||i.subscribe(e)},"startWith",arguments)}(this._image),gx(e=>e instanceof HTMLCanvasElement?ox(e,"rendered"):function(){return ZP(e=>e.complete(),"empty",arguments)}()),lx(ox(this,"closed")),yx(()=>{this.update()})))}onFirstFrame(){this.waitingFirstFrame=!1}tryVideoFrameCallback(){if(!this.shouldUpdate)return;let e=this.image;this.videoCallbackId&&e.cancelVideoFrameCallback(this.videoCallbackId),jL()&&!document.hidden&&(this.videoCallbackId=e.requestVideoFrameCallback((e,t)=>{this.waitingFirstFrame&&this.onFirstFrame(),document.hidden||(this._totalFrames=t.presentedFrames,this.update(1))}))}_render(e,t){var i;let{width:r,height:n}=this,{image:a}=this;if(a instanceof HTMLVideoElement){if(this.tryVideoFrameCallback(),({videoWidth:r,videoHeight:n}=a),!r||!n)return!1;a.width=r,a.height=n}else if(a instanceof HTMLImageElement||a instanceof ImageData||a instanceof ImageBitmap){if(({width:r,height:n}=a),a!==this._lastImage)this._lastImage=a;else if(r===this.width&&n===this.height)return!0}else a instanceof HTMLCanvasElement||a instanceof OffscreenCanvas?(({width:r,height:n}=a),this._lastImage=a):"undefined"!=typeof VideoFrame&&a instanceof VideoFrame&&(({displayWidth:r,displayHeight:n}=a),null==(i=this._lastImage)||i.close(),this._lastImage=a);if(!this._autoResize)return!0;if(this.width===r&&this.height===n&&this.totalFrames){if(t){this.useTexture();let e=this.context.ctx;e.texSubImage2D(e.TEXTURE_2D,0,0,0,e.RGBA,e.UNSIGNED_BYTE,a)}}else{if(t){this.useTexture();let e=this.context.ctx;e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,a)}this.resize(r,n)}return!0}get image(){return this._image}set image(e){var t;null==(t=this._canvasRendered)||t.next(e),this._image=e}render(e){return this._render(e,!0)}render2d(e){return this._render(e,!1)}},Mx=class extends xx{constructor(e,t,i){super(e,i),this._player=t,this.name="videoPlayerSource",XP(ox(this._player,hN.PLAYER_STATE_CHANGED),lx(ox(this,"closed")),sx(e=>{let{state:t}=e;return"PLAYING"===t}),yx(()=>{this.tryVideoFrameCallback()}))}get image(){return this._player.element}},Ux=class extends Mx{get available(){return this._player.isPlaying&&!this.waitingFirstFrame}constructor(e,t,i){super(e,new WN({id:i.name,track:t,muted:!0,container:null,objectFit:"contain",log:i.logger}),i),this.name="videoTrackSource",this._player.play()}replaceTrack(e){this.waitingFirstFrame=!0,this._player.setTrack(e),this._player.play()}close(){super.close(),this._player.stop()}},Fx=class extends Dx{constructor(e,t,i){super(e,pA(hA({name:"textSource"},i),{create2d:!0})),yA(this,"hasChange",!0),yA(this,"content",""),this.ctx2d.textBaseline="top",this.content=t.content||"",t.font&&(this.font=t.font),t.color&&(this.color=t.color)}set font(e){this.ctx2d&&(this.ctx2d.font=e,this.hasChange=!0)}get font(){var e;return(null==(e=this.ctx2d)?void 0:e.font)||""}set color(e){this.ctx2d&&(this.ctx2d.fillStyle=e,this.hasChange=!0)}get color(){var e;return(null==(e=this.ctx2d)?void 0:e.fillStyle)||""}render2d(e){return!(!this.ctx2d||!this.hasChange)&&(this.ctx2d.clearRect(0,0,this.width,this.height),this.drawMultilineText(0,0),this.hasChange=!1,!0)}render(e){return!1}resize(e,t){if(!this.ctx2d)return;let{color:i,font:r}=this;super.resize(e,t),this.color=i,this.font=r}drawMultilineText(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1.2;if(!this.ctx2d)return;let r=this.ctx2d.measureText(this.content);t+=r.fontBoundingBoxAscent||r.actualBoundingBoxAscent||0;let n=this.font.match(/(\d+)px/),a=(n?parseInt(n[1],10):16)*i,o=this.content.split("\n");for(let s=0;s<o.length;s++)this.ctx2d.fillText(o[s],e,t+s*a)}},Bx=class extends aN{constructor(e){super(),yA(this,"frameRate"),yA(this,"_canvas"),yA(this,"log"),yA(this,"hasAlpha",!1),yA(this,"name"),yA(this,"error"),this.name=e.name,this.log=e.logger.createChild({id:"vc-".concat(this.name)}),this.frameRate=e.frameRate}get canvas(){return this._canvas}set width(e){this._canvas&&(this._canvas.width=e)}get width(){var e;return(null==(e=this._canvas)?void 0:e.width)||0}set height(e){this._canvas&&(this._canvas.height=e)}get height(){var e;return(null==(e=this._canvas)?void 0:e.height)||0}setSize(e,t){this._canvas&&(this._canvas.width=e,this._canvas.height=t)}createVideoTrackSource(e,t){return new Ux(this,e,{logger:this.log,name:t})}createVideoTrackDestination(e){return new Px(this,e)}createVideoImageSource(e,t){return new xx(this,t?Object.assign(t,{logger:this.log,image:e}):{logger:this.log,image:e})}createVideoPlayerSource(e,t){return new Mx(this,e,t?Object.assign(t,{logger:this.log}):{logger:this.log})}createTextSource(e,t){return new Fx(this,e,t?Object.assign(t,{logger:this.log}):{logger:this.log})}get available(){return"created"===this.state}disconnect(){this.emit("disconnect")}};yA(Bx,"_ids",0);var Vx=class extends Bx{constructor(){super(...arguments),yA(this,"defaultProgam"),yA(this,"defaultVShader"),yA(this,"defaultFShader"),yA(this,"ctx"),yA(this,"_canvas2d")}get canvas(){return this._canvas2d||this._canvas}create(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this._canvas||(this._canvas=document.createElement("canvas"),this._canvas.id="trtc_".concat(this.name,"_").concat(Bx._ids++)),e&&(this._canvas2d=document.createElement("canvas")),this.ctx=this._canvas.getContext("webgl2",_R),!this.ctx)throw new ZR({code:YR.VIDEO_MANAGER_ERROR,extraCode:2,message:"webgl2 not supported"});this.defaultVShader=this.createShader(this.ctx.VERTEX_SHADER,"\n// 顶点着色器\nattribute vec4 a_position;\nattribute vec2 a_texCoord;\nvarying vec2 v_texCoord;\n\nvoid main() {\n gl_Position = a_position;\n v_texCoord = a_texCoord;\n}\n"),this.defaultFShader=this.createShader(this.ctx.FRAGMENT_SHADER,"\n// 片元着色器\nprecision mediump float;\nvarying vec2 v_texCoord;\nuniform sampler2D u_texture;\n\nvoid main() {\n gl_FragColor = texture2D(u_texture, v_texCoord);\n} "),this.defaultProgam=this.createProgram(this.defaultVShader,this.defaultFShader),this._canvas.addEventListener("webglcontextlost",()=>{this.destroy(new ZR({code:YR.VIDEO_MANAGER_ERROR,extraCode:4,message:"webgl context lost"}))})}destroy(e){let t="";return e&&(t=e.message,this.error=e,HO.addFailedEvent({key:512702,error:e})),this.disconnect(),this.log.info("video context destroy".concat(t)?": ".concat(t):""),this.ctx&&(this.ctx.deleteShader(this.defaultVShader),this.ctx.deleteShader(this.defaultFShader),this.ctx.deleteProgram(this.defaultProgam),delete this.ctx),e}set width(e){var t;null==(t=this.ctx)||t.viewport(0,0,e,this.height),super.width=e,this._canvas2d&&(this._canvas2d.width=e)}set height(e){var t;null==(t=this.ctx)||t.viewport(0,0,this.width,e),super.height=e,this._canvas2d&&(this._canvas2d.height=e)}setSize(e,t){var i;null==(i=this.ctx)||i.viewport(0,0,e,t),super.setSize(e,t),this._canvas2d&&(this._canvas2d.width=e,this._canvas2d.height=t)}createShader(e,t){let i=this.ctx,r=i.createShader(e);return i.shaderSource(r,t),i.compileShader(r),r}createProgram(e,t){let i=this.ctx,r=i.createProgram();return i.attachShader(r,e),i.attachShader(r,t),i.linkProgram(r),i.getProgramParameter(r,i.LINK_STATUS)||this.log.error(i.getProgramInfoLog(r)),r}};yA(Vx,"UNAVAILABLE","unavailable"),vA([iN(aN.INIT,"created",{sync:!0,fail(e){this.log.error("video gl context create failed",e.cause),HO.addFailedEvent({key:512700,error:e.cause||e})},success(){this.log.info("video context created use webgl"),HO.addSuccessEvent({key:512700})}})],Vx.prototype,"create",1),vA([iN("created",aN.INIT,{ignoreError:!0,sync:!0,success(e){e&&this.emit(Vx.UNAVAILABLE,e),this.removeAllListeners()}})],Vx.prototype,"destroy",1);var Hx=Vx,jx=class extends Bx{constructor(){super(...arguments),yA(this,"ctx")}create(e){if(this.hasAlpha=e.alpha,this._canvas=document.createElement("canvas"),this._canvas.id="trtc_".concat(this.name,"_").concat(Bx._ids++),this.ctx=this._canvas.getContext("2d",{alpha:e.alpha,willReadFrequently:e.willReadFrequently}),!this.ctx)throw new ZR({code:YR.VIDEO_MANAGER_ERROR,extraCode:2,message:"2d context not supported"});this._canvas.addEventListener("contextlost",()=>{this.log.error("2d context lost")}),this._canvas.addEventListener("contextrestored",()=>{this.log.warn("2d context restored")})}destroy(e){let t="";e&&(t=e.message,this.error=e,HO.addFailedEvent({key:512703,error:e})),this.disconnect(),this.log.info("video context destroy ".concat(t?": ".concat(t):"")),delete this.ctx,this._canvas&&(this._canvas.remove(),this._canvas.width=0,this._canvas.height=0,delete this._canvas),this.removeAllListeners(),HO.addSuccessEvent({key:512703})}};vA([iN(aN.INIT,"created",{sync:!0,fail(e){this.log.error("video 2d context create failed",e.cause),HO.addFailedEvent({key:512701,error:e.cause||e})},success(){this.log.info("video context created use 2d"),HO.addSuccessEvent({key:512701})}})],jx.prototype,"create",1),vA([iN("created",aN.INIT,{ignoreError:!0,sync:!0})],jx.prototype,"destroy",1);var zx=CO();if("undefined"!=typeof navigator&&navigator.mediaDevices&&"setCaptureHandleConfig"in navigator.mediaDevices)try{navigator.mediaDevices.setCaptureHandleConfig({handle:zx,exposeOrigin:!0,permittedOrigins:["*"]})}catch($S){}var Wx=async function(e){let t=null,i=function(e){let t={preferCurrentTab:"current-tab"===e.preferDisplaySurface||!!e.captureElement,systemAudio:"include",selfBrowserSurface:"include",surfaceSwitching:"include"},i={width:sO?{max:e.width}:{ideal:e.width,max:e.width},height:sO?{max:e.height}:{ideal:e.height,max:e.height},frameRate:e.frameRate,displaySurface:e.preferDisplaySurface||"monitor"};if(t.video=i,e.systemAudio){let{echoCancellation:i=!0,noiseSuppression:r=!1,autoGainControl:n=!1}=e;t.audio={echoCancellation:i,noiseSuppression:r,autoGainControl:n,sampleRate:48e3}}return t}(e);kO.info("getDisplayMedia with constraints: ".concat(JSON.stringify(i)));let r=await navigator.mediaDevices.getDisplayMedia(i);e.systemAudio&&0===r.getAudioTracks().length&&(iO&&nO<74||sO||sD)&&kO.warn("Your browser not support capture system audio");let n=r.getVideoTracks()[0];if(n){if(e.frameRate)try{await n.applyConstraints({frameRate:{min:e.frameRate,ideal:e.frameRate},width:e.width,height:e.height})}catch(a){kO.warn("screen applyConstraints failed: ".concat(a))}e.captureElement&&await async function(e,t){var i;if("CropTarget"in window&&"fromElement"in CropTarget&&Hk(e.cropTo))try{if((null==(i=e.getCaptureHandle())?void 0:i.handle)!==zx)return;let r=await CropTarget.fromElement(t);await e.cropTo(r)}catch(r){kO.warn("cropTo target failed ".concat(r))}}(n,e.captureElement)}if(e.audio){let i=function(e){let t={echoCancellation:e.echoCancellation,autoGainControl:e.autoGainControl,noiseSuppression:e.noiseSuppression,sampleRate:e.sampleRate,channelCount:e.channelCount};return jk(e.microphoneId)||(t.deviceId=e.microphoneId),{audio:t,video:!1}}(e);kO.info("getUserMedia with constraints: ".concat(JSON.stringify(i))),t=await navigator.mediaDevices.getUserMedia(i),r.addTrack(t.getAudioTracks()[0])}return r};vA([RA(function(e){this.setContentHint(e.contentHint||"detail")})],class extends Ax{constructor(e){super(e,2),yA(this,"profile",{width:1920,height:1080,frameRate:5,bitrate:1600}),yA(this,"objectFit","contain"),yA(this,"isScreen",!0),this._log.id="s-".concat(this._log.id)}get isShareCurrentTab(){var e,t;try{return zx===(null==(t=null==(e=this.mediaTrack)?void 0:e.getCaptureHandle())?void 0:t.handle)}catch(i){return}}async capture(e){let{systemAudio:t=!1,autoGainControl:i,echoCancellation:r,noiseSuppression:n,audioTrack:a,videoTrack:o,captureElement:s,preferDisplaySurface:c}=e;var l;try{let e,d=iC();return o||a?(e=new MediaStream,o&&e.addTrack(o),a&&e.addTrack(a)):(e=await Wx({audio:!1,systemAudio:t,width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate,autoGainControl:i,echoCancellation:r,noiseSuppression:n,captureElement:s,preferDisplaySurface:c}),this.sourceTrack=e.getVideoTracks()[0]),await this.setInputMediaStreamTrack(e.getVideoTracks()[0]),TO.emit(SO.LOCAL_TRACK_CAPTURE_SUCCESS,{track:this,cost:iC()-d,profile:this.profile,room:null==(l=this.manager)?void 0:l.room}),e}catch(d){throw this.log.error("getDisplayMedia error observed ".concat(d)),d instanceof ZR?d:new ZR({code:YR.INITIALIZE_FAILED,name:d.name,message:d.message})}}async switchDevice(e){throw new Error("Method not implemented.")}}.prototype,"capture",1);var Gx=class e extends kP{constructor(t,i,r){super({userId:i.userId,sdkAppId:t.sdkAppId,mediaType:r,room:t}),this.room=t,this.user=i,yA(this,"tinyId"),yA(this,"isRemote",!0),yA(this,"jitterBufferDelay",0),yA(this,"availableState"),yA(this,"remotePublishState"),yA(this,"_triggerCheckDecodeSubject",nx(ox(this,e.STATE_SUBSCRIBE))),yA(this,"ignoreUpdatePlayingState"),this.tinyId=i.tinyId,this.availableState=new aN("".concat(i.userId,"-").concat(this.mediaType,"-available"),"remote-track-available"),this.remotePublishState=new aN("".concat(i.userId,"-").concat(this.mediaType,"-remote-publish"),"remote-track-publish"),XP(rx(ox(this,aN.STATECHANGED),ox(this.remotePublishState,aN.STATECHANGED)),ux(()=>this.isRemotePublished&&(this.isSubscribed||this.isSubscribing)),yx(e=>{this.availableState.state!==(e?aN.ON:aN.OFF)&&(this.availableState.state=e?aN.ON:aN.OFF),(!this.isRemotePublished||!this.ignoreUpdatePlayingState)&&this.updatePlayingState(e)}));let n=XP(ox(this.player,hN.ERROR),sx(e=>e.code===MediaError.MEDIA_ERR_DECODE)),a=XP(function(e,t){return ZP(i=>{let r=0,n=setTimeout(()=>{if(i.removeDefer(a),i.next(r++),t){let e=setInterval(()=>i.next(r++),t);i.defer(()=>{clearInterval(e)})}else i.complete()},e),a=()=>clearTimeout(n);i.defer(a)},"timer",arguments)}(5e3),sx(()=>!!(!this.ignoreDecodeError&&this.isSubscribed&&this.isPlayCalled&&this.stat.bytesReceived&&this.isRemotePublished)&&(!this.player.isPlaying&&!(this.kind===qA?this.getAudioLevel()>0:this.stat.framesDecoded>0)||(this.reportDecodeResult(!0),!1)))),o=XP(function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return ZP(e=>{let i=new Map;t.forEach(t=>{let r=new KP(e);i.set(t,r),r.complete=()=>{i.delete(t),0===i.size?e.complete():r.dispose()},r.next=e=>{i.delete(t),i.forEach(e=>e.dispose()),r.resetNext(),r.resetComplete(),r.next(e)}}),t.forEach(e=>i.get(e).subscribe(e))},"race",arguments)}(n,a),lx(ox(this,aN.INIT)));XP(this._triggerCheckDecodeSubject,sx(()=>!this.ignoreDecodeError),vx(o),yx(e=>{this.reportDecodeResult(!1,e)}))}setMute(e){this.isRemotePublished&&super.setMute(e)}setInputMediaStreamTrack(e){super.setInputMediaStreamTrack(e),this.isRemotePublished&&this.isSubscribed&&this.player.setTrack(this.outMediaTrack)}checkDecodeResult(){this._triggerCheckDecodeSubject.next(!0)}waitHasMediaTrack(){return new Promise(e=>{this.mediaTrack?e():this.once("input-media-track-changed",e)})}get ignoreDecodeError(){var e,t,i,r;return null!=(r=null==(i=null==(t=null==(e=this.room)?void 0:e.networkQuality)?void 0:t.hadRecentBadDownlink)?void 0:i.call(t,2))&&r||this.player.isInAutoPlayFailedState}get isSubscribing(){return"subscribeing"===this.state.toString()}get isSubscribed(){return this.state===e.STATE_SUBSCRIBE}get isAvailable(){return this.availableState.state===aN.ON}get isNeedPlay(){return this.isAvailable&&this.isPlayCalled}subscribe(e){return e}unsubscribe(){"main"===this.streamType&&"video"===this.kind&&this.room.changeType(!1,this.user)}reportDecodeResult(e,t){var i,r;let n=this.kind===qA;if(HO[e?"addSuccessEvent":"addFailedEvent"]({key:n?504700:514702}),!n){let t=(null==(i=this.room)?void 0:i.downlinkVideoCodec.toUpperCase())||"H264";HO[e?"addSuccessEvent":"addFailedEvent"]({key:BO["DECODE_".concat(t,"_RESULT")]}),e||this.log.warn("".concat(null==(r=this.room)?void 0:r.downlinkVideoCodec," decode failed"))}e||(HO.addEnum({key:n?504701:514703,value:wO()}),_N.uploadEvent({log:"stat-decode-failed-".concat(this.kind,"-").concat(yO()||IO()),userId:this.room.userId}),this._log.warn("decode failed: isPlaying: ".concat(this.player.isPlaying," ").concat(this.kind===qA?"audioLevel: ".concat(this.getAudioLevel()):"framesDecoded: ".concat(this.stat.framesDecoded>0))),this.emit("decode-failed",{error:t}))}updatePlayingState(e){if(this.player.isPlayCalled&&this.player.setTrack(this.playerMediaTrack),this.isPlayCalled&&this.player.isStopped===e){if(e&&(!this.isSubscribed||!this.isRemotePublished||!this.outMediaTrack))return void this.log.info("abort play, isSubscribed: ".concat(this.isSubscribed," isAvailable: ").concat(this.isRemotePublished," hasTrack: ").concat(!!this.outMediaTrack," "));super.updatePlayingState(e)}}close(){super.close(),this.outMediaTrack&&this.uninstallTrackEvent(this.outMediaTrack)}onFlagChanged(){this.remotePublishState.state=this.isRemotePublished?aN.ON:aN.OFF,this.emit("remote-publish-changed",this.isRemotePublished)}onTrackMuted(){this.isNeedPlay&&super.onTrackMuted()}onTrackUnmuted(){this.isNeedPlay&&super.onTrackUnmuted()}onTrackEnded(){this.isNeedPlay&&super.onTrackEnded()}};yA(Gx,"STATE_SUBSCRIBE","subscribe"),vA([function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:30,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return kA((i,r)=>function(){for(var n=arguments.length,a=new Array(n),o=0;o<n;o++)a[o]=arguments[o];return new Promise((n,o)=>{let s=setTimeout(()=>{let i=new ZR({code:YR.API_CALL_TIMEOUT,message:"checkPendingPromise ".concat(r,"() timeout ").concat(e,"s")});(this.log||this._log||kO).warn(i),2===t?o(i):1===t&&n()},1e3*e);this._checkPendingPromiseSet||(this._checkPendingPromiseSet=new Set),this._checkPendingPromiseSet.add(s),i.apply(this,a).then(n,o).finally(()=>{clearTimeout(s),this._checkPendingPromiseSet&&s&&this._checkPendingPromiseSet.delete(s)})})})}(5,1)],Gx.prototype,"waitHasMediaTrack",1),vA([iN(aN.INIT,Gx.STATE_SUBSCRIBE,{success(){this.log.info("subscribed"),TO.emit(SO.REMOTE_TRACK_SUBSCRIBED,{track:this})},ignoreError:!0}),VP(521716,!1)],Gx.prototype,"subscribe",1),vA([iN(Gx.STATE_SUBSCRIBE,aN.INIT,{sync:!0,success(){this.log.info("unsubscribed"),TO.emit(SO.REMOTE_TRACK_UNSUBSCRIBED,{track:this})}})],Gx.prototype,"unsubscribe",1);var qx=Gx,Kx=class extends Dx{constructor(e,t,i,r,n){super(e,{useDefaultProgram:!0,useFbo:!0,name:"alpha",create2d:!0,logger:t}),this.setContainer=r,yA(this,"initStat",{alphaStitchingType:1}),yA(this,"end",nx()),yA(this,"minSize",320),yA(this,"maxSize",1280),yA(this,"draggable",!1),yA(this,"startDragX",0),yA(this,"startDragY",0),yA(this,"left",0),yA(this,"top",0),yA(this,"baseWidth",320),yA(this,"baseRatio"),yA(this,"container"),this.initStat=n,this.draggable=i,this.bindDragEvents(),HO.addEnum({key:515700,value:1}),this.draggable&&HO.addEnum({key:515700,value:11})}bindDragEvents(){let e=this.context._canvas;if(e)if(this.draggable){let t=lx(this.end);XP(ox(e,"mousedown"),Ex(this.startDrag.bind(this)),gx(()=>XP(ox(window,"mousemove"),lx(ox(window,"mouseup")))),t,yx(this.doDrag.bind(this))),XP(ox(e,"dblclick"),t,yx(this.resetPosition.bind(this))),XP(ox(e,"wheel"),t,yx(this.handleZoom.bind(this))),this.renderCanvas()}else{if(!this.container)return;this.container.style.removeProperty("left"),this.container.style.removeProperty("top"),this.end.next()}}render(e){var t;return!(null==(t=this.input)||!t.requestFrame(e))&&(this.useProgram(),this.useBufferFrame(),this.useInputTexture(),this.draw(),!0)}startDrag(e){e.preventDefault(),0===e.button&&(this.startDragX=e.clientX-this.left,this.startDragY=e.clientY-this.top)}renderCanvas(){let{container:e}=this;e||this.setContainer(),e&&this.baseRatio&&this.draggable&&(e.style.setProperty("width","".concat(this.baseWidth,"px")),e.style.setProperty("height","".concat(this.baseWidth/this.baseRatio,"px")),e.style.setProperty("position","fixed"),e.style.setProperty("left","".concat(this.left,"px")),e.style.setProperty("top","".concat(this.top,"px")))}doDrag(e){e.preventDefault(),this.left=e.clientX-this.startDragX,this.top=e.clientY-this.startDragY,this.renderCanvas()}handleZoom(e){e.preventDefault();let t=e.deltaY,i=this.context._canvas;i&&(this.baseWidth||(this.baseWidth=i.offsetWidth),this.baseWidth=t<0?Math.min(1.1*this.baseWidth,this.maxSize):Math.max(.9*this.baseWidth,this.minSize),this.renderCanvas())}resetPosition(){this.left=0,this.top=0,this.renderCanvas()}onRatioReset(){this.renderCanvas()}draw2d(e,t,i,r,n){var a;let{ctx2d:o}=this,s=this.context._canvas;if(!o||!s)return!1;let c=super.draw2d(e,t,i,r,n),l=o.getImageData(0,0,r,n),{data:d}=l,u=!1;if(1===this.initStat.alphaStitchingType){let e=Math.floor(r/2);for(let t=0;t<n;t++)for(let i=0;i<e;i++){let n=4*(t*r+i),a=4*(t*r+(i+e)),o=d[a];d[a+3]=0;let s=o>=100;d[n+3]=s?255:0}u=super.draw2d(l,0,0,0,0,e,n),s.width=e}else if(2===this.initStat.alphaStitchingType){let e=Math.floor(n/2);for(let t=0;t<e;t++)for(let i=0;i<r;i++){let n=4*(t*r+i),a=4*((t+e)*r+i),o=d[a];d[a+3]=0;let s=o>=100;d[n+3]=s?255:0}u=super.draw2d(l,0,0,0,0,r,e),s.height=e}return null==(a=this.context.ctx)||a.clearRect(0,0,r,n),c&&u}close(){this.baseRatio=void 0,this.end.next(),this.end.complete()}};var Yx=class extends qx{constructor(e,t){super(e,t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:4),yA(this,"mediaType",4),yA(this,"source"),yA(this,"shouldRenderAlpha",!1),yA(this,"alphaNode"),yA(this,"shouldBeDraggable",!0),yA(this,"stat",{bytesReceived:0,packetsReceived:0,packetsLost:0,framesReceived:0,framesDecoded:0,frameWidth:0,frameHeight:0,end2EndDelay:0,jitterBufferDelay:0,keyFramesDecoded:0}),yA(this,"_keyFrameCountLogged",!1),yA(this,"_keyFrameStartTimestamp",0),yA(this,"_keyFrameStartCount",0),yA(this,"_keyFrameIntervals",[]),yA(this,"_prevKeyFrameTimestamp",0),this.manager=e.videoManager,this.on("first-video-frame",e=>{this.room.emit("first-video-frame",e)}),this.on("first-frame-render",e=>{this.room.emit("first-frame-render",e)})}isAlphaSei(e){if(this.userId!==e.userId||50!==e.seiPayloadType)return!1;let t=new Uint8Array(e.data);return t.length%3==0&&0===t[0]&&1===t[1]&&t}play(e,t){return null!=t&&t.canvasRender&&!this.source&&this.useCanvasPlayer(),super.play(e,t).then(()=>{this.player.calculateStat(),TO.emit("156",{track:this,player:this.player})})}updateAlphaRenderInfo(e){let t=this.isAlphaSei(e);if(t)if(this.alphaNode){let e=t[2];if(this.alphaNode.baseRatio&&this.alphaNode.initStat.alphaStitchingType===e)return;this.alphaNode.initStat={alphaStitchingType:e};let i=this.player.getElement();if(i){let t=i.videoWidth/i.videoHeight;t&&(this.alphaNode.baseRatio=t*(1===e?.5:2),this.alphaNode.onRatioReset())}this.player.canvas&&(this.player.canvas.id=this.generateAlphaCanvasName(e))}else this.shouldRenderAlpha=!0,this.player.shouldRenderAlpha=!0,this.useCanvasPlayer(t[2])}generateAlphaCanvasName(e){let t=NA[e];return"".concat("alpha","_").concat(t,"_").concat(this.userId)}useCanvasPlayer(e){if(this.log.info("useCanvasPlayer(), has element:".concat(!!this.player.element)),!this.player.element)return;let t=new jx({frameRate:15,logger:this.log,name:this.shouldRenderAlpha&&e?this.generateAlphaCanvasName(e):this.userId});t.create({alpha:this.shouldRenderAlpha,willReadFrequently:this.shouldRenderAlpha});let i=new Nx(t,{name:"remotePlayer",logger:this.log});if(this.source=t.createVideoPlayerSource(this.player),this.player.setCanvas(t._canvas),this.shouldRenderAlpha&&e){let r=()=>{!this.player.container||!this.alphaNode||(this.alphaNode.container=this.player.container,this.alphaNode.renderCanvas())},n=new Kx(t,this.log,this.shouldBeDraggable,r,{alphaStitchingType:e});this.source.connect(n),n.connect(i),this.alphaNode=n}else this.source.connect(i);jL()||(this.updateCanvasPlayerFPS=this.updateCanvasPlayerFPS.bind(this,t),this.room.on("heartbeat-report",this.updateCanvasPlayerFPS,this))}updateCanvasPlayerFPS(e){let t=this.decodeFPS,i=function(e){return[15,30,45,60].reduce((t,i)=>Math.abs(i-e)<Math.abs(t-e)?i:t)}(t);!Wk(t)||t<=0?this.log.debug("updateCanvasPlayerFPS() ignore decoder: ".concat(t," ")):i!==e.frameRate?(this.log.info("updateCanvasPlayerFPS() decoder: ".concat(t,", closest: ").concat(i,", current: ").concat(e.frameRate)),e.frameRate=i):this.log.debug("updateCanvasPlayerFPS() ignore ClosestFPS ".concat(i," == ").concat(e.frameRate))}get decodeFPS(){var e;let{msg_video_status:t}=(null==(e=this.room.heartbeatReport)?void 0:e.msg_down_stream_info.find(e=>e.msg_user_info.str_identifier===this.userId))||{},i=2===this.mediaType?7:this.isSmall?3:2;if(!t||0===t.length)return 0;let r=t.find(e=>e.uint32_video_stream_type===i);return(null==r?void 0:r.uint32_video_dec_fps)||0}stop(){return this.room.off("heartbeat-report",this.updateCanvasPlayerFPS,this),TO.emit("157",{track:this,player:this.player}),this.alphaNode&&this.alphaNode.close(),super.stop()}decodeFrame(e){if(!this.manager)return e;for(let t of this.manager.decodePipeline)if(t&&!(e=t({frame:e,track:this})))return;return e}get isBig(){return 4===this.mediaType}get isSmall(){return 8===this.mediaType}changeType(e){this.room.changeType(e,this.user)}get isRemotePublished(){return this.user.muteState.videoAvailable}setMirror(e){"publish"===e||"both"===e||super.setMirror(e)}setDraggable(e){this.shouldBeDraggable=e,this.alphaNode&&(this.alphaNode.draggable=e,this.alphaNode.bindDragEvents())}onDecodeDowngradeStateChanged(e){this.emit("decode-downgrade-state-changed",e)}updateKeyFramesDecoded(e){let t=this.stat.keyFramesDecoded||0;if(this.stat.keyFramesDecoded=e,this._keyFrameCountLogged)return;let i=Date.now();if(!this._keyFrameStartTimestamp)return this._keyFrameStartTimestamp=i,this._keyFrameStartCount=e,void(this._prevKeyFrameTimestamp=i);if(this._prevKeyFrameTimestamp&&e>t){let r=e-t,n=(i-this._prevKeyFrameTimestamp)/1e3/r;this._keyFrameIntervals.push(n)}this._prevKeyFrameTimestamp=i;let r=i-this._keyFrameStartTimestamp;if(r>=16e3){let t=e-this._keyFrameStartCount,i=t>0?r/1e3/t:0,n="".concat(t," keyframes in 16s ").concat(i," [").concat(this._keyFrameIntervals.map(e=>e.toFixed(1)).join(","),"] keyFramesDecoded ").concat(e),a=i<=2.5?"debug":"info";this.log[a](n),this._keyFrameCountLogged=!0}}},Xx=new Map;function Zx(e,t){let i=pA(hA({},t),{timestamp:JR()});Xx.has(e)?Xx.get(e).push(i):Xx.set(e,[i])}TO.on(SO.JOIN_SUCCESS,e=>{let{room:t}=e;Zx(t.userId,{eventId:32788})}),TO.on(SO.LEAVE_START,e=>{let{room:t}=e;Zx(t.userId,{eventId:32789})}),TO.on(SO.LOCAL_TRACK_PUBLISHED,e=>{let{track:t}=e;if(t.room){let e=32769;4===t.mediaType?e=32768:2===t.mediaType&&(e=32805),Zx(t.room.userId,{eventId:e})}}),TO.on(SO.LOCAL_TRACK_UNPUBLISHED,e=>{let{track:t}=e;if(t.room){let e=32771;4===t.mediaType?e=32770:2===t.mediaType&&(e=32806),Zx(t.room.userId,{eventId:e})}}),TO.on(SO.TRACK_MUTED,e=>{let{track:t}=e;t.room&&(t.kind===qA?Zx(t.room.userId,{eventId:t.isRemote?32785:32772,remoteUserId:t.isRemote?t.userId:void 0}):Zx(t.room.userId,{eventId:t.isRemote?32784:32773,remoteUserId:t.isRemote?t.userId:void 0}))}),TO.on(SO.TRACK_UNMUTED,e=>{let{track:t}=e;t.room&&(t.kind===qA?Zx(t.room.userId,{eventId:t.isRemote?32787:32774,remoteUserId:t.isRemote?t.userId:void 0}):Zx(t.room.userId,{eventId:t.isRemote?32786:32775,remoteUserId:t.isRemote?t.userId:void 0}))}),TO.on(SO.REMOTE_TRACK_SUBSCRIBED,e=>{let{track:t}=e;t.room&&(1===t.mediaType&&Zx(t.room.userId,{eventId:32777,remoteUserId:t.userId}),4===t.mediaType&&Zx(t.room.userId,{eventId:32776,remoteUserId:t.userId}),8===t.mediaType&&Zx(t.room.userId,{eventId:32803,remoteUserId:t.userId}))}),TO.on(SO.REMOTE_TRACK_UNSUBSCRIBED,e=>{let{track:t}=e;t.room&&(1===t.mediaType&&Zx(t.room.userId,{eventId:32779,remoteUserId:t.userId}),4===t.mediaType&&Zx(t.room.userId,{eventId:32778,remoteUserId:t.userId}),8===t.mediaType&&Zx(t.room.userId,{eventId:32804,remoteUserId:t.userId}))}),TO.on(SO.SWITCH_DEVICE_SUCCESS,e=>{let{track:t}=e;t.room&&Zx(t.room.userId,{eventId:t.kind===KA?32780:32781})}),TO.on(SO.LOCAL_TRACK_REPLACED,e=>{let{track:t}=e;t.room&&Zx(t.room.userId,{eventId:t.kind===KA?32782:32783})}),TO.on(SO.SIGNAL_CONNECTION_STATE_CHANGED,e=>{let t,{room:i,prevState:r,state:n}=e;switch(n){case"CONNECTED":t="RECONNECTING"===r?32795:32791;break;case"DISCONNECTED":t="RECONNECTING"===r?32796:32790;break;case"RECONNECTING":t=32794}t&&Zx(i.userId,{eventId:t})}),TO.on(SO.PEER_CONNECTION_STATE_CHANGED,e=>{let t,{room:i,prevState:r,state:n,remoteUserId:a}=e,o=!!a;switch(n){case"CONNECTED":t="RECONNECTING"===r?o?32801:32798:o?32793:32792;break;case"DISCONNECTED":"RECONNECTING"===r&&(t=o?32802:32799);break;case"RECONNECTING":t=o?32800:32797}t&&Zx(i.userId,{eventId:t,remoteUserId:a})}),TO.on(SO.VIDEO_CODEC_IMPLEMENTATION_CHANGED,e=>{let{implementation:t,userId:i,remoteUserId:r,codec:n,isHWCodec:a,prevImplementation:o,streamType:s}=e,c=a?1:0;o||(c=a?3:2);let l={H264:0,H265:1,VP8:2}[n.toUpperCase()],d={eventId:4004,param1:c,param2:l,streamType:s||2};r&&(d.remoteUserId=r,d.eventId=4005),Zx(i,d),HO.addEnum({key:r?514701:513701,value:c}),HO.addEnum({key:r?514700:513700,value:l})}),TO.on(SO.LOCAL_TRACK_RECAPTURE,e=>{let{track:t,error:i}=e;if(t.userId){let e={eventId:2003,param1:0};t.kind===qA?(e.streamType=1,i&&(e.param1=2)):(e.streamType="auxiliary"===t.streamType?7:2,i&&(e.param1=8)),Zx(t.userId,e)}}),_A(bA(),1),_A(bA(),1);var Jx="trtc_debug_dialog",Qx="".concat(Jx,"_activated"),$x="".concat(Jx,"_switch"),eM="".concat(Jx,"_mask"),tM="".concat(Jx,"_panel"),iM="".concat(Jx,"_tabber"),rM="".concat(Jx,"_tab"),nM="".concat(Jx,"_topbar"),aM="".concat(Jx,"_toptab"),oM="".concat(Jx,"_content"),sM="".concat(Jx,"_has_topbar"),cM="".concat(oM,"_log"),lM="".concat(oM,"_network"),dM="".concat(Jx,"_dump"),uM="".concat(lM,"_title"),hM="".concat(lM,"_basic"),pM="".concat(lM,"_local"),fM="".concat(lM,"_remote"),mM="".concat(dM,"_title"),gM="".concat(dM,"_local"),_M="".concat(dM,"_remote"),vM="".concat(_M,"_hook"),yM="".concat(Jx,"_banner"),EM="".concat(yM,"_item"),bM="".concat(Jx,"_toolbar"),wM="".concat(Jx,"_tool"),IM="".concat(Jx,"_item"),TM="".concat(IM,"_debug"),SM="".concat(IM,"_info"),AM="".concat(IM,"_warn"),RM="".concat(IM,"_error"),kM="".concat(Jx,"_back_top"),CM="".concat(Jx,"_go_bottom"),DM="".concat(dM,"_local_audio"),OM="".concat(dM,"_local_video_main"),LM="".concat(dM,"_local_video_aux"),NM="".concat(Jx,"_tooltip"),PM="".concat(hM,"_network_info"),xM="".concat(hM,"_room_info"),MM="".concat(cM,"_controller"),UM="success",FM="warning",BM="failed",VM=0,HM=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),this.addStyle(),this.addDialog()}addDialog(){var e;let t=document.createElement("template");t.innerHTML='<div id="'.concat(Jx,'" class="').concat(Jx,'"><div class="').concat($x,'">Debug#').concat(++VM,'</div><div class="').concat(eM,'"></div><div class="').concat(tM,'"><div class="').concat(iM,'"><a class="').concat(rM," ").concat(Qx,'" data-tab="log">').concat(wR,'</a><a class="').concat(rM,'" data-tab="network">').concat(IR,'</a><a class="').concat(rM,'" data-tab="dump">').concat(TR,'</a></div><div class="').concat(MM,'"><div data-type="back_top">').concat(NR,'</div><div data-type="go_bottom">').concat(LR,'</div><div data-type="clear_log">').concat(PR,'</div></div><div class="').concat(nM,'"><a class="').concat(aM," ").concat(Qx,'" data-type="all">All</a><a class="').concat(aM,'" data-type="debug">Debug</a><a class="').concat(aM,'" data-type="info">Info</a><a class="').concat(aM,'" data-type="warn">Warn</a><a class="').concat(aM,'" data-type="error">Error</a></div><div class="').concat(oM," ").concat(sM,'"><div class="').concat(cM,'"></div><div class="').concat(lM,'"><div class="').concat(uM,'">').concat(FR,'</div><div class="').concat(hM,'"><div class="').concat(xM,'"></div><div class="').concat(PM,'">').concat(UR,'</div></div><div class="').concat(uM,'">').concat(xR,'</div><div class="').concat(pM,'">').concat(UR,'</div><div class="').concat(uM,'">').concat(MR,'</div><div class="').concat(fM,'">').concat(UR,'</div></div><div class="').concat(dM,'"><div class="').concat(mM,'">').concat(xR,'</div><div class="').concat(gM,'"><div id="').concat(DM,'"><span>').concat(HR," - ").concat(BR,'(s):</span><input type="number" min=0 value=0></input><button class="dump">').concat(SR,'</button><button class="dump-opus">').concat(AR,'</button><button class="end-dump" disabled>').concat(kR,'</button></div><div id="').concat(OM,'"><span>').concat(VR," - ").concat(BR,'(s):</span><input type="number" min=0 value=0></input><button class="dump">').concat(TR,'</button><button class="end-dump" disabled>').concat(kR,'</button></div><div id="').concat(LM,'"><span>').concat(jR," - ").concat(BR,'(s):</span><input type="number" min=0 value=0></input><button class="dump">').concat(TR,'</button><button class="end-dump" disabled>').concat(kR,'</button></div></div><div class="').concat(mM,'">').concat(MR,'</div><div class="').concat(_M,'"><div class="').concat(vM,"\">userId:<input id=\"dump-remote-video-hook-userid\" value='*' />duration:<input id=\"dump-remote-video-hook-duration\" min='1' value='0' type='number' />mediaType:<select id=\"dump-remote-video-hook-mediaType\" value='main' ><option value='main' checked>Video</option><option value='sub'>Screen</option></select><button id=\"dump-remote-video-hook-button\">dump if video is available</button></div></div></div></div><div class=\"").concat(yM,'"></div><div class="').concat(bM,'"><a id="trtc_upload" class="').concat(wM,'">').concat(CR,'</a><a id="trtc_export" class="').concat(wM,'">').concat(DR,'</a><a id="trtc_hide" class="').concat(wM,'">').concat(OR,"</a></div></div></div>"),null==(e=this.shadowRoot)||e.appendChild(t.content.firstChild)}addStyle(){var e;let t=document.createElement("style");t.textContent="#".concat(Jx,"{font-size:14px;--DD-BG-0:#ededed;--DD-BG-1:#f7f7f7;--DD-BG-2:#fff;--DD-BORDER:rgba(0,0,0,0.1);--DD-ERROR:red;--DD-WARN:#fa9d3b;--DD-INFO:#000;--DD-DEBUG:#10aeff;--DD-WARN-BG:#fff3cc;--DD-ERROR-BG:#ffe6e6;}#").concat(Jx," a,.").concat($x,"{cursor:pointer;}.").concat(Jx,"{color:black;}.").concat($x,"{display:block;position:fixed;right:50px;bottom:").concat(150+50*VM,"px;border-radius:5px;background-color:#07c160;color:#fff;padding:5px 10px;z-index:10000;}.").concat(eM,"{display:none;position:fixed;left:0;top:0;right:0;bottom:0;z-index:10001;background-color:rgb(0,0,0,0.6);}.").concat(tM,"{background-color:#ededed;display:none;position:fixed;min-height:85%;left:60%;right:0;bottom:0;z-index:10002;border:1px solid var(--DD-BG-0);}@media (max-width:768px) {.").concat(tM,"{left:0;}}.").concat(iM,"{display:flex;height:2em;border-bottom:1px solid var(--DD-BORDER);}.").concat(rM,"{padding:0 20px;border-right:1px solid rgba(0,0,0,0.1);line-height:2em;color:black;}.").concat(rM,".").concat(Qx,"{background-color:var(--DD-BG-2);}.").concat(rM,".disabled{cursor:not-allowed;background-color:#ededed;color:#999;}.").concat(nM,"{height:2em;display:flex;flex-direction:row;}.").concat(aM,"{width:20%;text-align:center;line-height:2em;border-right:1px solid var(--DD-BORDER);border-bottom:1px solid var(--DD-BORDER);color:black;}.").concat(aM,".").concat(Qx,"{border-bottom:1px solid #1485ee;background-color:var(--DD-BG-2);}.").concat(oM,"{background-color:#fff;position:absolute;left:0;right:0;top:2em;bottom:8em;overflow-y:scroll;overflow-x:hidden;}.").concat(oM,".").concat(sM,"{top:4em;bottom:10em}.").concat(lM,"{display:none;}.").concat(dM,"{display:none;}.").concat(uM,",.").concat(mM,"{line-height:2em;text-align:center;background-color:var(--DD-BG-0);border-bottom:1px solid var(--DD-BORDER);}.").concat(hM,",.").concat(pM,",.").concat(fM,"{text-align:center;border-bottom:1px solid var(--DD-BORDER);}.").concat(gM,",.").concat(_M,"{display:flex;flex-direction:column;padding:0.5em 0;justify-content:center;align-items:center;}.").concat(gM," div input{margin:0 10px;height:1.5em;width:4em;}.").concat(gM," div {padding:10px 0;border-radius:5px;}.").concat(gM," div button,.").concat(_M," div button {cursor:pointer;height:1.8em;border-radius:5px;margin-right:5px;}.").concat(gM," div button[disabled],.").concat(_M," div button[disabled]{cursor:not-allowed;}.").concat(_M," select {height:1.8em;margin:0 10px;}.").concat(_M," div input{margin:0 10px;height:1.5em;width:4em;}.").concat(vM," {line-height:3em;padding:0.5em;}.").concat(uM,"{text-align:center;background-color:var(--DD-BG-0);border-bottom:1px solid var(--DD-BORDER);}.").concat(hM,",.").concat(pM,",.").concat(fM,"{text-align:center;border-bottom:1px solid var(--DD-BORDER);}.").concat(IM,"{border-bottom:1px solid var(--DD-BG-0);padding:5px 10px;overflow-wrap: break-word;}.").concat(RM,"{color:var(--DD-ERROR);background-color:var(--DD-ERROR-BG);}.").concat(AM,"{color:var(--DD-WARN);background-color:var(--DD-WARN-BG);}div .").concat(SM,"{color:var(--DD-INFO);}.").concat(TM,"{color:var(--DD-DEBUG);}.").concat(yM,"{position:absolute;left:0;right:0;bottom:2em;height:6em;border-bottom:1px solid var(--DD-BORDER);display:flex;flex-direction:column;overflow-y:scroll;background-color:var(--DD-BG-1);}.").concat(EM,"{border-bottom:1px solid var(--DD-BORDER);padding:5px 10px;overflow-wrap: break-word;}.").concat(bM,"{position:absolute;line-height:2em;display:flex;flex-direction:row;left:0;right:0;bottom:0;}.").concat(wM,"{flex:1;color:black;text-align:center;background-color:#ededed;border-right:1px solid var(--DD-BORDER);}#").concat(Jx," .").concat(kM,",#").concat(Jx," .").concat(CM,"{position:absolute;height:2em;width:6em;right:2em;border-radius:5px;background-color:rgba(30,136,229,0.8);z-index:10003;cursor:pointer;padding:0 5px;line-height:2em;color:white;text-align:center;}.").concat(CM,"{bottom:9em;}.").concat(kM,"{bottom:11.5em;}#").concat(Jx," .").concat(wM,".disable{cursor:not-allowed;background-color:#ededed;color:#999;}.").concat(NM," {position:relative;display:inline-block;}.").concat(NM," .tooltiptext{visibility:hidden;width:180px;background-color:black;color:#fff;text-align:center;padding:5px 0;border-radius:6px;position:absolute;}.").concat(NM," .tooltip-top {bottom:125%;left:50%;margin-left:-90px;}.").concat(NM,":hover .tooltiptext{visibility:visible;}.").concat(MM,"{position:absolute;left:0;right:0;bottom:8em;height:2em;display:flex;align-items:center;}.").concat(MM," div{flex:1;cursor:pointer;border-right:1px solid var(--DD-BORDER);text-align: center;}"),null==(e=this.shadowRoot)||e.appendChild(t)}};customElements.define("trtc-basic-debug-dialog",HM);var jM=class{constructor(e,t){yA(this,"_dialogNode",null),yA(this,"_switchNode",null),yA(this,"_maskNode",null),yA(this,"_panelNode",null),yA(this,"_logContentNode",null),yA(this,"_networkContentNode",null),yA(this,"_dumpContentNode",null),yA(this,"_tabNodes",[]),yA(this,"_toptabNodes",[]),yA(this,"_hasMove",!1),yA(this,"_showDialog",!1),yA(this,"_isMobile",!1),yA(this,"_showLogType","all"),yA(this,"prevBytesSent",0),yA(this,"prevBytesReceived",0),yA(this,"_core"),yA(this,"_log"),yA(this,"_logList",[]),yA(this,"isUploading",!1),yA(this,"publishMap",new Map),yA(this,"dumpLocalVideoMap",{}),yA(this,"dumpRemoteVideoMap",{}),yA(this,"dumpLocalAudioMap",{}),yA(this,"dumpRemoteAudioMap",{}),yA(this,"eventMap",new Map),yA(this,"switchPos",{x:0,y:0,startX:0,startY:0,endX:0,endY:0,isTouchEnd:!1}),yA(this,"handleLeaveSuccess",e=>{let{room:t}=e;var i,r;if(!this.hitTest(t))return;let n=null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(_M));for(let a of this.publishMap.values())null==n||n.removeChild(a);this.publishMap.clear()}),yA(this,"handleJoinSuccess",e=>{let{room:t}=e;var i,r;if(!this.hitTest(t))return;(null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(xM))).innerHTML="sdkAppId: ".concat(t.sdkAppId,"<br/>roomId: ").concat(t.roomId,"<br/>userId: ").concat(t.userId,"<br/>")}),yA(this,"handleRemoteVideoAvailable",e=>{let t="sub"===e.streamType?"auxiliary":"main";this.renderDumpTab(e.userId,"remote",t,"publish")}),yA(this,"handleRemoteVideoUnavailable",e=>{let t="sub"===e.streamType?"auxiliary":"main";this.renderDumpTab(e.userId,"remote",t,"unpublish")}),yA(this,"handleRemoteAudioAvailable",e=>{this.renderDumpTab(e.userId,"remote","audio","publish")}),yA(this,"handleRemoteAudioUnavailable",e=>{this.renderDumpTab(e.userId,"remote","audio","unpublish")}),yA(this,"renderDumpTab",(e,t,i,r)=>{var n,a,o;let s={main:"video",auxiliary:"screen",audio:"audio"},c=(e,t)=>{var i,r,n;let a=document.createElement("div");a.innerText="".concat(e," - ").concat(s[t]," - ").concat(BR,"(s):");let o=document.createElement("input");o.type="number",o.min="0",o.value="10",o.id="dump_remote_".concat(t,"_").concat(e);let c,l=document.createElement("button");l.innerText=kR,l.disabled=!0,"audio"===t&&(c=document.createElement("button"),c.innerText=AR,c.style.marginLeft="5px");let d,u,h=document.createElement("button");if(h.innerText="audio"===t?SR:TR,h.onclick=()=>{let i,r,n=Number(o.value);if("audio"===t)({download:i,onDumpEnd:r}=this.dumpAudio("remote",n,e));else{if(!this.isSupportDumpVideo())return;({download:i,onDumpEnd:r}=this.dumpVideo(t,"remote",n,e))}i&&(this.inactiveButton(h,RR),c&&this.inactiveButton(c),n>0?setTimeout(()=>{null==i||i(),this.activeButton(h,TR),c&&this.activeButton(c,AR)},1e3*n):(this.activeButton(l),l.onclick=()=>{l.onclick=null,null==i||i(),null==r||r(),this.activeButton(h,TR),c&&this.activeButton(c,AR),this.inactiveButton(l)}))},c&&(c.onclick=()=>{let t=Number(o.value),{download:i,onDumpEnd:r}=this.dumpAudioFromPipeline("remote",t,e);i&&(this.inactiveButton(c,RR),this.inactiveButton(h),t>0?setTimeout(()=>{null==i||i(),this.activeButton(c,AR),this.activeButton(h,TR)},1e3*t):(this.activeButton(l),l.onclick=()=>{l.onclick=null,null==i||i(),null==r||r(),this.activeButton(c,AR),this.activeButton(h,TR),this.inactiveButton(l)}))}),"audio"!==t&&(d=document.createElement("button"),d.innerText="Dump w/ Audio",d.style.marginLeft="5px",d.onclick=()=>{if(!this.isSupportDumpVideo())return;let i=Number(o.value),r=this.dumpVideo(t,"remote",i,e),n=this.dumpAudioFromPipeline("remote",i,e);if(!r.download&&!n.download)return;let a=async()=>{var i,a,o,s;let c=new qR.default,l=this.dumpRemoteVideoMap["".concat(e,"-").concat(t)];if(l&&l.data.length>0){let i,r="h264",n=this.getVideoCodec(e);if("vp8"===n){let n=this._core.room.remotePublishedUserMap.get(e),a="main"===t?null==n?void 0:n.remoteVideoTrack:null==n?void 0:n.remoteAuxiliaryTrack;this.addInfoToBanner(FM,"package vp8 into ivf format"),i=this.convertVP8ToIVF(l.data,a),r="ivf"}else i=new Blob(l.data),r=n||"h264";let a="remote-".concat(e,"_").concat(t,"_").concat(this.formatStartDumpTime(l.startTimestamp),".").concat(r);c.file(a,i)}let d=this.dumpRemoteAudioMap["".concat(e)];if(d&&d.data.length>0){let t,r=(null==(a=null==(i=this._core.room.userManager)?void 0:i.getPublishedUser(e))?void 0:a.audioCodec)||"opus",n=r;"opus"===r?(this.addInfoToBanner(FM,"package opus to ogg"),t=this.convertOpusToOgg(d.data),n="ogg"):t=new Blob(d.data);let o="remote-".concat(e,"_audio_").concat(this.formatStartDumpTime(d.startTimestamp),".").concat(n);c.file(o,t)}let u=await c.generateAsync({type:"blob"}),h=URL.createObjectURL(u),p=document.createElement("a");p.href=h,p.download="dump_".concat(e,"_").concat(this.formatStartDumpTime(Date.now()),".zip"),p.style.display="none",document.body.appendChild(p),p.click(),URL.revokeObjectURL(h),document.body.removeChild(p),null==(o=r.onDumpEnd)||o.call(r),null==(s=n.onDumpEnd)||s.call(n),this.addInfoToBanner(UM,"Dump success, file name is: ".concat(p.download))};this.inactiveButton(d,RR),this.inactiveButton(h),i>0?setTimeout(()=>{a(),this.activeButton(d,"Dump w/ Audio"),this.activeButton(h,TR)},1e3*i):(this.activeButton(l),l.onclick=()=>{l.onclick=null,a(),this.activeButton(d,"Dump w/ Audio"),this.activeButton(h,TR),this.inactiveButton(l)})}),"audio"!==t){u=document.createElement("button"),u.innerText="Preview",u.style.whiteSpace="Pre";let i=document.createElement("video");document.body.appendChild(i),i.id="".concat(Jx,"_preview_remote_").concat(t,"_").concat(e),i.style.cssText="\n width: 320px;\n height: 240px;\n display: none;\n position: absolute;\n top: 50%;\n left: 50%;\n border: 3px solid #cccccc;\n transform: translate(-50%, -50%);\n z-index: 10004;\n ",u.onclick=async()=>{var r;if(i.style.display="none"===i.style.display?"":"none",u&&(u.innerText="none"===i.style.display?"Preview":" Hide "),!i.srcObject){let n=this._core.room.remotePublishedUserMap.get(e);if(n){let e=null==(r=n["main"===t?"remoteVideoTrack":"remoteAuxiliaryTrack"])?void 0:r.mediaTrack;e?(i.srcObject=new MediaStream([e]),await i.play()):this.addInfoToBanner(BM,"failed to preview, remote video track is not available")}}}}a.appendChild(o),a.appendChild(h),c&&a.appendChild(c),d&&a.appendChild(d),a.appendChild(l),u&&a.appendChild(u),a.style.cssText="padding:10px;";let p=document.createElement("div");return p.style.cssText="width:100%;display:flex;justify-content:center;border-top: 1px solid var(--DD-BORDER);",p.appendChild(a),null==(n=null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(_M)))||n.appendChild(p),p};if("remote"===t)if("publish"===r){let r=c(e,i);this.publishMap.set("".concat(e,"-").concat(t,"-").concat(i),r)}else{let r=this.publishMap.get("".concat(e,"-").concat(t,"-").concat(i));if(!r)return;null==(o=null==(a=null==(n=this._dialogNode)?void 0:n.shadowRoot)?void 0:a.querySelector(".".concat(_M)))||o.removeChild(r);let s=document.querySelector("#".concat(Jx,"_preview_remote_").concat(i,"_").concat(e));s&&document.body.removeChild(s),this.publishMap.delete("".concat(e,"-").concat(t,"-").concat(i))}}),yA(this,"handleStatistics",e=>{var t,i,r,n,a,o;let s=(e.bytesSent-this.prevBytesSent)/2,c=(e.bytesReceived-this.prevBytesReceived)/2;this.prevBytesSent=e.bytesSent,this.prevBytesReceived=e.bytesReceived,(null==(i=null==(t=this._dialogNode)?void 0:t.shadowRoot)?void 0:i.querySelector(".".concat(PM))).innerHTML="rtt: ".concat(e.rtt," ms upLoss: ").concat(e.upLoss,"% downLoss: ").concat(e.downLoss,"% <br>\n ↑ ").concat(s/1e3," KB/s (").concat(8*s/1e3," Kb/s) <br>\n ↓ ").concat(c/1e3," KB/s (").concat(8*c/1e3," Kb/s) <br>\n ");let l=null==(n=null==(r=this._dialogNode)?void 0:r.shadowRoot)?void 0:n.querySelector(".".concat(pM)),d="";e.localStatistics.audio.bitrate&&(d="<li>local audio: ".concat(e.localStatistics.audio.bitrate," Kb/s audioLevel: ").concat(e.localStatistics.audio.audioLevel.toFixed(5),"</li>")),e.localStatistics.video.length>0&&(d+="".concat(e.localStatistics.video.map(e=>"<li>local ".concat(e.videoType," video: ").concat(e.bitrate," Kb/s ").concat(e.width,"*").concat(e.height," ").concat(e.frameRate,"fps</li>")).join(""))),l.innerHTML=""===d?"".concat(UR):d;let u=null==(o=null==(a=this._dialogNode)?void 0:a.shadowRoot)?void 0:o.querySelector(".".concat(fM)),h="";e.remoteStatistics.length>0&&e.remoteStatistics.forEach(e=>{let t="remote ".concat(e.userId,":");e.audio.bitrate>0&&(t+="<li>audio: ".concat(e.audio.bitrate," Kb/s audioLevel: ").concat(e.audio.audioLevel.toFixed(5),"</li>")),e.video.length>0&&e.video.forEach(e=>{t+="<li>".concat(e.videoType," video: ").concat(e.bitrate," Kb/s ").concat(e.width,"*").concat(e.height," ").concat(e.frameRate,"fps</li>")}),h+=t}),u.innerHTML=""===h?"".concat(UR):h}),yA(this,"pad",e=>e<10?"0".concat(e):"".concat(e)),this._core=e,this._log=t,this.initCustomElements(),this.synchronizeLog(),this.installEvents(),this.addVideoProcessor(),this.addAudioProcessor(),window["__trtc_instance_".concat(VM,"__")]=this._core.trtc}initCustomElements(){this._isMobile=(()=>{let e=window.navigator&&window.navigator.userAgent||"",t=/iPad/i.test(e)||/iPhone/i.test(e),i=/Android/i.test(e);return t||i})();let e=document.createElement("trtc-basic-debug-dialog");document.body.appendChild(e);let t=e.shadowRoot;if(this._dialogNode=e,!t)return;this._switchNode=t.querySelector(".".concat($x)),this._addEventListener(this._switchNode,"click",this.onSwitchClick.bind(this));let i=getComputedStyle(this._switchNode);this.switchPos.x=parseInt(i.right,10)||50,this.switchPos.y=parseInt(i.bottom,10)||100+50*VM,this._isMobile?(this._switchNode.ontouchstart=this.onTouchStart.bind(this),this._switchNode.ontouchend=this.onTouchEnd.bind(this),this._switchNode.ontouchmove=this.onTouchMove.bind(this)):this._switchNode.onmousedown=this.onMouseDown.bind(this),this._maskNode=t.querySelector(".".concat(eM)),this._addEventListener(this._maskNode,"click",this.onMaskClick.bind(this)),this._panelNode=t.querySelector(".".concat(tM)),t.querySelector(".".concat(MM)).childNodes.forEach(e=>{switch(e.getAttribute("data-type")){case"go_bottom":this._addEventListener(e,"click",this.onGoBottomClick.bind(this));break;case"back_top":this._addEventListener(e,"click",this.onBackTopClick.bind(this));break;case"clear_log":this._addEventListener(e,"click",this.onClearLogClick.bind(this))}}),this._logContentNode=t.querySelector(".".concat(cM)),this._networkContentNode=t.querySelector(".".concat(lM)),this._dumpContentNode=t.querySelector(".".concat(dM)),this._tabNodes=Array.from(t.querySelector(".".concat(iM)).children),this._tabNodes.forEach(e=>{this._addEventListener(e,"click",this.onTabClick.bind(this))}),this._toptabNodes=Array.from(t.querySelector(".".concat(nM)).children),this._toptabNodes.forEach(e=>{this._addEventListener(e,"click",this.onToptabClick.bind(this))});let r=t.querySelector("#trtc_upload");this._addEventListener(r,"click",this.onUploadClick.bind(this));let n=t.querySelector("#trtc_export");this._addEventListener(n,"click",this.onExportClick.bind(this));let a=t.querySelector("#trtc_hide");this._addEventListener(a,"click",this.onHideClick.bind(this));let o=t.querySelector("#".concat(OM," .dump")),s=t.querySelector("#".concat(OM," .end-dump")),c=Number(t.querySelector("#".concat(OM," input")).value);this._addEventListener(o,"click",this.getDumpButtonClickHandler.bind(this,o,s,c,"main","local"));let l=t.querySelector("#".concat(LM," .dump")),d=t.querySelector("#".concat(LM," .end-dump")),u=Number(t.querySelector("#".concat(LM," input")).value);this._addEventListener(l,"click",this.getDumpButtonClickHandler.bind(this,l,d,u,"auxiliary","local"));let h=t.querySelector("#".concat(DM," .dump")),p=t.querySelector("#".concat(DM," .dump-opus")),f=t.querySelector("#".concat(DM," .end-dump"));this._addEventListener(h,"click",()=>{let e=Number(t.querySelector("#".concat(DM," input")).value),{download:i,onDumpEnd:r}=this.dumpAudio("local",e);i?(this.inactiveButton(h,RR),this.inactiveButton(p),e>0?setTimeout(()=>{i(),this.activeButton(h,SR),this.activeButton(p,AR)},1e3*e):(this.activeButton(f),f.onclick=()=>{f.onclick=null,i(),null==r||r(),this.activeButton(h,SR),this.activeButton(p,AR),this.inactiveButton(f)})):this.addInfoToBanner(BM,"Failed to dump, please check if the current user has started the audio")}),this._addEventListener(p,"click",()=>{let e=Number(t.querySelector("#".concat(DM," input")).value),{download:i,onDumpEnd:r}=this.dumpAudioFromPipeline("local",e);i?(this.inactiveButton(p,RR),this.inactiveButton(h),e>0?setTimeout(()=>{i(),this.activeButton(p,AR),this.activeButton(h,SR)},1e3*e):(this.activeButton(f),f.onclick=()=>{f.onclick=null,i(),null==r||r(),this.activeButton(p,AR),this.activeButton(h,SR),this.inactiveButton(f)})):this.addInfoToBanner(BM,"Failed to dump opus, please check if the current user has started the audio")});let m=t.querySelector("#dump-remote-video-hook-userid"),g=t.querySelector("#dump-remote-video-hook-duration"),_=t.querySelector("#dump-remote-video-hook-mediaType"),v=t.querySelector("#dump-remote-video-hook-button");v.onclick=()=>{let e=Number(g.value);if(e<1)return void this.addInfoToBanner(BM,"duration at least 1s");let t=m.value;if(!t)return void this.addInfoToBanner(BM,"please input user id");"*"===t&&this.inactiveButton(v);let i,r,n=_.value,a="remote_".concat(t,"_").concat("sub"===n?"auxiliary":n),o=a=>{if((a.userId===t||"*"===t)&&a.streamType===n){if(this.addInfoToBanner(UM,"[".concat(a.userId,"_").concat(n,"] starting to dump video, duration: ").concat(e,"s")),({download:i,onDumpEnd:r}=this.dumpVideo("sub"===a.streamType?"auxiliary":a.streamType,"remote",e,a.userId)),!i)return;setTimeout(()=>{null==i||i(),null==r||r(),"*"!==t&&this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_VIDEO_AVAILABLE,o)},1e3*e)}};this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_VIDEO_AVAILABLE,o),this.addInfoToBanner(UM,"[".concat(a,"] waiting to dump video from ").concat("*"===t?"all remote users":"user ".concat(t),", duration: ").concat(e,"s"))}}synchronizeLog(){this._core.loggerManager.getQueue().forEach(e=>{this.updateLog(e)})}isSupportDumpVideo(){return!(!this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED&&!this._core.rtcDectection.IS_SCRIPT_TRANSFORM_SUPPORTED)||(this.addInfoToBanner(BM,"Current browser does not support dumping video"),!1)}_addEventListener(e,t,i,r){e&&(e.addEventListener(t,i,r),this.eventMap.set(e,{type:t,listener:i}))}_removeEventListener(){this.eventMap.forEach((e,t)=>{let{type:i,listener:r}=e;t&&t.removeEventListener(i,r)}),this.eventMap.clear(),this._switchNode&&(this._switchNode.onmousedown=null,this._switchNode.ontouchmove=null,this._switchNode.ontouchstart=null,this._switchNode.ontouchend=null)}closeDialog(){this.uninstallEvents(),this._removeEventListener(),this.removeVideoProcessor(),this.removeAudioProcessor(),this._dialogNode&&(document.body.removeChild(this._dialogNode),this._dialogNode=null)}updateLog(e){var t;this._logList.push(e);let i=document.createElement("div");switch(i.classList.add(IM),e.level){case 4:i.classList.add(RM);break;case 2:i.classList.add(SM);break;case 3:i.classList.add(AM);break;case 1:i.classList.add(TM)}i.textContent=e.log,"all"!==this._showLogType&&!i.classList.contains("".concat(IM,"_").concat(this._showLogType))&&(i.style.display="none"),null==(t=this._logContentNode)||t.appendChild(i),this.addHelper(i)}getDumpButtonClickHandler(e,t,i,r,n){if(!this.isSupportDumpVideo())return;let{download:a,onDumpEnd:o}=this.dumpVideo(r,n,i);if(a)return this.addInfoToBanner(UM,"[".concat(n,"_").concat(r,"] starting to dump...")),this.inactiveButton(e,RR),void(i>0?setTimeout(()=>{a(),this.activeButton(e,TR)},1e3*i):(this.activeButton(t),t.onclick=()=>{t.onclick=null,null==o||o(),a(),this.activeButton(e,TR),this.inactiveButton(t)}));this.addInfoToBanner(UM,"[".concat(n,"_").concat(r,"] waiting to dump..."));let s=a=>{let{track:o}=a;if(o.room===this._core.room&&o.streamType===r){this.addInfoToBanner(UM,"[".concat(n,"_").concat(r,"] starting to dump")),"local"===n&&this._core.innerEmitter.off("104",s);let{download:a,onDumpEnd:o}=this.dumpVideo(r,n,i);if(!a)return;i>0?setTimeout(()=>{a(),this.activeButton(e,TR)},1e3*i):(this.activeButton(t),t.onclick=()=>{t.onclick=null,null==o||o(),a(),this.activeButton(e,TR),this.inactiveButton(t)})}};s.bind(this),"local"===n&&this._core.innerEmitter.on("104",s),this.inactiveButton(e,RR)}onSwitchClick(){this._hasMove?this._hasMove=!1:this._showDialog?this.hideDialog():(this._isMobile&&(this._maskNode.style.display="block"),this._panelNode.style.display="block",this._switchNode.style.display="none",this._showDialog=!0,this.logContentGoBottom())}onTabClick(e){var t,i,r,n,a,o,s;let c=e.target;null==(t=this._tabNodes)||t.forEach(e=>{e.classList.remove(Qx)}),c.classList.add(Qx);let l=c.getAttribute("data-tab");"log"===l?(null==(n=null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(oM)))||n.classList.add(sM),this._logContentNode.style.display="block",this._networkContentNode.style.display="none",this._dumpContentNode.style.display="none",this.logContentGoBottom()):(null==(s=null==(o=null==(a=this._dialogNode)?void 0:a.shadowRoot)?void 0:o.querySelector(".".concat(oM)))||s.classList.remove(sM),"network"===l?(this._networkContentNode.style.display="block",this._logContentNode.style.display="none",this._dumpContentNode.style.display="none"):"dump"===l&&(this._dumpContentNode.style.display="block",this._networkContentNode.style.display="none",this._logContentNode.style.display="none"))}onToptabClick(e){var t,i;let r=e.target;null==(t=this._toptabNodes)||t.forEach(e=>{e.classList.remove(Qx)}),r.classList.add(Qx),this._showLogType=r.getAttribute("data-type");let n=null==(i=this._logContentNode)?void 0:i.querySelectorAll(".".concat(IM)),a="".concat(IM,"_").concat(this._showLogType);n.forEach(e=>{e.classList.contains(a)||"all"===this._showLogType?e.style.display="block":e.style.display="none"}),this.logContentGoBottom()}onExportClick(){let e=this._logList.reduce((e,t)=>"".concat(e+t.log,"\n"),""),t=new Blob([e],{type:"text/plain"}),i=document.createElement("a"),r=URL.createObjectURL(t);i.href=r;let n="trtc_".concat(void 0===this._core.room.sdkAppId?"EmptySdkAppId":this._core.room.sdkAppId,"_").concat(void 0===this._core.room.userId?"EmptyUserId":this._core.room.userId,"_").concat(this.formatStartDumpTime(+new Date),".log");i.download=n,i.style.display="none",document.body.appendChild(i),i.click(),URL.revokeObjectURL(r),document.body.removeChild(i),this.addInfoToBanner(UM,"Export success: The log file name is ".concat(n)),this._core.kvStatManager.addSuccessEvent({key:592703})}addInfoToBanner(e,t){var i,r;let n=null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(yM)),a=document.createElement("div");a.classList.add(EM);let o=e===UM?"🟩":e===FM?"🟧":"🟥";a.innerText="".concat(o," [").concat(this.getCurrentTime(),"] ").concat(t),n.appendChild(a),n.scrollTop=n.scrollHeight}async onUploadClick(){var e,t;if(this.isUploading)return;this.isUploading=!0;let i=null==(t=null==(e=this._dialogNode)?void 0:e.shadowRoot)?void 0:t.querySelector("#trtc_upload");i.innerText="Uploading...",null==i||i.classList.add(".disable");let r=this._logList.reduce((e,t)=>"".concat(e+t.log,"\n"),""),n=new Blob([r],{type:"text/plain"}),a=new FormData;a.append("file",n,"trtc.log"),a.append("sdkAppId","".concat(this._core.room.sdkAppId||"EmptySdkAppId")),a.append("userId","".concat(this._core.room.userId||"EmptyUserId")),fetch("https://service.trtc.qcloud.com/api/uploadLogFile",{method:"POST",body:a}).then(e=>e.json()).then(e=>{this.addInfoToBanner(e.type,e.message_en||"Upload Failed: Please use local export"),this.isUploading=!1,this._log.info(e.message_en),this._core.kvStatManager.addSuccessEvent({key:592704})}).catch(()=>{this.addInfoToBanner(BM,"Upload Failed: Please use local export"),this._log.info("Upload Failed: Please use local export"),this._core.kvStatManager.addFailedEvent({key:592704})}).finally(()=>{i.innerText=CR,null==i||i.classList.remove(".disable"),this.isUploading=!1})}onHideClick(){this.hideDialog()}onMaskClick(){this.hideDialog()}hideDialog(){this._isMobile&&(this._maskNode.style.display="none"),this._panelNode.style.display="none",this._switchNode.style.display="block",this._showDialog=!1}onBackTopClick(){var e,t,i;null==(i=null==(t=null==(e=this._dialogNode)?void 0:e.shadowRoot)?void 0:t.querySelector(".".concat(oM)))||i.scrollTo(0,0)}onGoBottomClick(){this.logContentGoBottom()}onClearLogClick(){this._logList=[],this._logContentNode&&(this._logContentNode.innerHTML="")}logContentGoBottom(){var e,t;let i=null==(t=null==(e=this._dialogNode)?void 0:e.shadowRoot)?void 0:t.querySelector(".".concat(oM));null==i||i.scrollTo(0,null==i?void 0:i.scrollHeight)}onMouseDown(e){e.preventDefault(),this.switchPos.startX=e.pageX,this.switchPos.startY=e.pageY,document.onmousemove=this.onMouseMove.bind(this),document.onmouseup=this.onMouseUp.bind(this)}onMouseMove(e){e.cancelable&&e.preventDefault(),this._hasMove=!0;let t=this.switchPos.x-(e.pageX-this.switchPos.startX),i=this.switchPos.y-(e.pageY-this.switchPos.startY);[t,i]=this.getSafeAreaXY(t,i),this._switchNode.style.right="".concat(t,"px"),this._switchNode.style.bottom="".concat(i,"px"),this.switchPos.endX=t,this.switchPos.endY=i}onMouseUp(){this.switchPos.startX=0,this.switchPos.startY=0,this.switchPos.x=this.switchPos.endX,this.switchPos.y=this.switchPos.endY,document.onmousemove=null,document.onmouseup=null}onTouchStart(e){this.switchPos.startX=e.touches[0].pageX,this.switchPos.startY=e.touches[0].pageY,this.switchPos.isTouchEnd=!1}onTouchEnd(){this.switchPos.isTouchEnd&&(this.switchPos.startX=0,this.switchPos.startY=0,this.switchPos.isTouchEnd=!1,this.switchPos.x=this.switchPos.endX,this.switchPos.y=this.switchPos.endY)}onTouchMove(e){if(e.touches.length<=0)return;let t=e.touches[0].pageX-this.switchPos.startX,i=e.touches[0].pageY-this.switchPos.startY,r=Math.floor(this.switchPos.x-t),n=Math.floor(this.switchPos.y-i);[r,n]=this.getSafeAreaXY(r,n),this._switchNode.style.right="".concat(r,"px"),this._switchNode.style.bottom="".concat(n,"px"),this.switchPos.endX=r,this.switchPos.endY=n,this.switchPos.isTouchEnd=!0,e.cancelable&&e.preventDefault()}getSafeAreaXY(e,t){let i=Math.max(document.documentElement.offsetWidth,window.innerWidth),r=Math.max(document.documentElement.offsetHeight,window.innerHeight);return e+this._switchNode.offsetWidth>i&&(e=i-this._switchNode.offsetWidth),t+this._switchNode.offsetHeight>r&&(t=r-this._switchNode.offsetHeight),e<0&&(e=0),t<20&&(t=20),[e,t]}hitTest(e){return e===this._core.room}installEvents(){this._core.innerEmitter.on("264",this.handleLog,this),this._core.innerEmitter.on("53",this.handleLeaveSuccess,this),this._core.innerEmitter.on("27",this.handleJoinSuccess,this),this._core.trtc.on(this._core.TRTC.EVENT.STATISTICS,this.handleStatistics,this),this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_AUDIO_AVAILABLE,this.handleRemoteAudioAvailable),this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_AUDIO_UNAVAILABLE,this.handleRemoteAudioUnavailable),this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_VIDEO_AVAILABLE,this.handleRemoteVideoAvailable),this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_VIDEO_UNAVAILABLE,this.handleRemoteVideoUnavailable),this._core.room.on("dump",this.handleDumpFromScriptTransform,this)}uninstallEvents(){this._core.innerEmitter.off("264",this.handleLog,this),this._core.innerEmitter.off("53",this.handleLeaveSuccess,this),this._core.innerEmitter.off("27",this.handleJoinSuccess,this),this._core.trtc.off(this._core.TRTC.EVENT.STATISTICS,this.handleStatistics,this),this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_AUDIO_AVAILABLE,this.handleRemoteAudioAvailable),this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_AUDIO_UNAVAILABLE,this.handleRemoteAudioUnavailable),this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_VIDEO_AVAILABLE,this.handleRemoteVideoAvailable),this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_VIDEO_UNAVAILABLE,this.handleRemoteVideoUnavailable),this._core.room.off("dump",this.handleDumpFromScriptTransform,this)}handleDumpFromScriptTransform(e){if(!e.isAudio)if(e.userId){let t=this.dumpRemoteVideoMap["".concat(e.userId,"-").concat(e.streamType)];t&&(t.data.push(e.data),t.duration>0&&Date.now()-t.startTimestamp>1e3*t.duration&&t.onDumpEnd())}else{let t="main"===e.streamType?"main":"sub",i=this.dumpLocalVideoMap[t];i&&(i.data.push(e.data),i.duration>0&&Date.now()-i.startTimestamp>1e3*i.duration&&i.onDumpEnd())}}inactiveButton(e,t){e.disabled=!0,t&&(e.innerText=t)}activeButton(e,t){e.disabled=!1,t&&(e.innerText=t)}handleLog(e){this.updateLog(e.log)}addHelper(e){let t=/((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}/g,i=GR,r=e.innerText;r=r.split("\n").map(e=>{if((e=e.replace(/</g,"&lt;").replace(/>/g,"&gt;")).includes("failed"))return e.includes("on autoplay-failed")?e:"<span class='red' style=\"background:red; color:#fff;\">".concat(e,"</span>");if(e.includes("clientIp:")){let i=e.match(t);return null==i||i.forEach(t=>{e=e.replace(t,'<a href="javascript:void(0);" target=""><span class=\'ip\' style="background:#e1dfdf">'.concat(t,"</span></a>"))}),e}return e.includes("URL of current page")&&(e=e.replace(/URL of current page: (.+)/,'URL of current page: <a href="$1">$1</a>')),e}).join("\n"),i.forEach(t=>{if(e.innerText.includes(t)){let i="";i="function"==typeof zR[t].tips?zR[t].tips(e.innerText):zR[t].tips,r=r.replace(new RegExp("".concat((e=>e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d").replace(">","&gt;").replace(">","&lt;"))(t)),"gi"),'<span class="'.concat(NM,'" style="background:').concat(zR[t].color||"#e1dfdf","; color: ").concat(zR[t].textColor||"#000",'">').concat(t,'\n <span class="tooltiptext tooltip-top">').concat(i,"</span>\n </span>"))}}),e.innerHTML=r}getCurrentTime(){let e=new Date,t=this.pad(e.getHours()),i=this.pad(e.getMinutes()),r=this.pad(e.getSeconds());return"".concat(t,":").concat(i,":").concat(r)}dumpAudioFromPipeline(e,t,i){this.addInfoToBanner(FM,"dump audio from pipeline");let r=Date.now(),n=this.formatStartDumpTime(r),a=[],o="".concat(e,"_").concat(i);if("local"===e)this._core.trtc._localAudioTrack;else if(i){let e=this._core.room.remotePublishedUserMap.get(i);e&&e.remoteAudioTrack}let s;if("local"===e){if(!this.hasLocalTrack("main","audio"))return{};s=()=>{delete this.dumpLocalAudioMap.main},this.dumpLocalAudioMap.main={startTimestamp:r,data:a,duration:t,onDumpEnd:s}}if("remote"===e&&i){if(s=()=>{delete this.dumpRemoteAudioMap["".concat(i)]},this.dumpRemoteAudioMap["".concat(i)])return this.addInfoToBanner(FM,"[".concat(o,"] dump already exists.")),{};this.dumpRemoteAudioMap["".concat(i)]={startTimestamp:r,data:a,duration:t,onDumpEnd:s}}return{download:()=>{var t,r;if(0===a.length)return void this.addInfoToBanner(BM,"[".concat(o,"] dump failed. Reason: data is empty"));let s,c=("local"===e?null==(t=this._core.room.singlePC)?void 0:t.audioCodec:null==(r=this._core.room.userManager)?void 0:r.getPublishedUser(i).audioCodec)||"opus",l=c;"opus"===c?(this.addInfoToBanner(FM,"[".concat(o,"] package opus to ogg")),s=this.convertOpusToOgg(a),l="ogg"):s=new Blob(a);let d=URL.createObjectURL(s),u=document.createElement("a"),h="local"===e?"local_".concat(n,".").concat(l):"remote-".concat(i,"_").concat(n,".").concat(l);u.href=d,u.download=h,u.style.display="none",document.body.appendChild(u),u.click(),URL.revokeObjectURL(d),u.remove(),this.addInfoToBanner(UM,"[".concat(o,"] dump success. File name is: ").concat(h))},onDumpEnd:s}}dumpVideo(e,t,i,r){let n,a=Date.now(),o=this.formatStartDumpTime(a),s=[],c="".concat(t,"_").concat(r,"_").concat(e);if("local"===t)n="main"===e?this._core.trtc._localVideoTrack:this._core.trtc._localScreenTrack;else if(r){let t=this._core.room.remotePublishedUserMap.get(r);t&&(n="main"===e?t.remoteVideoTrack:t.remoteAuxiliaryTrack)}let l;if("local"===t){if(!this.hasLocalTrack(e,"video"))return{};l=()=>{delete this.dumpLocalVideoMap["auxiliary"===e?"sub":"main"]},this.dumpLocalVideoMap["auxiliary"===e?"sub":"main"]={startTimestamp:a,data:s,duration:i,onDumpEnd:l}}if("remote"===t&&r){if(l=()=>{delete this.dumpRemoteVideoMap["".concat(r,"-").concat(e)]},this.dumpRemoteVideoMap["".concat(r,"-").concat(e)])return this.addInfoToBanner(FM,"[".concat(c,"] dump already exists.")),{};this.dumpRemoteVideoMap["".concat(r,"-").concat(e)]={startTimestamp:a,data:s,duration:i,onDumpEnd:l}}return{download:()=>{var i,a;if(0===s.length)return void this.addInfoToBanner(BM,"[".concat(c,"] dump failed. Reason: data is empty"));let l,d;"main"===e?l="video":"auxiliary"===e&&(l="screen"),"vp8"===this.getVideoCodec(r||"")?(this.addInfoToBanner(FM,"[".concat(c,"] package vp8 into ivf format")),d=this.convertVP8ToIVF(s,n)):d=new Blob(s);let u=URL.createObjectURL(d),h=document.createElement("a"),p="local"===t?"local_".concat(l,"_").concat(o,".").concat((null==(i=this._core.room.singlePC)?void 0:i.videoCodec)||"h264"):"remote-".concat(r,"_").concat(l,"_").concat(o,".").concat((null==(a=this._core.room.userManager)?void 0:a.getPublishedUser(r).videoCodec)||"h264");h.href=u,h.download=p,h.style.display="none",document.body.appendChild(h),h.click(),URL.revokeObjectURL(u),h.remove(),this.addInfoToBanner(UM,"[".concat(c,"] dump success. File name is: ").concat(p))},onDumpEnd:l}}convertVP8ToIVF(e,t){var i,r,n;function a(e,t,i){for(let r=0;r<i.length;r++)e.setUint8(t+r,i.charCodeAt(r))}let o=e.reduce((e,t)=>e+12+t.byteLength,32),s=new ArrayBuffer(o),c=new DataView(s),l=new Uint8Array(s),d=0;a(c,d,"DKIF"),d+=4,c.setUint16(d,0,!0),d+=2,c.setUint16(d,32,!0),d+=2,a(c,d,"VP80"),d+=4,c.setUint16(d,(null==(i=null==t?void 0:t._inputTrack)?void 0:i.getSettings().width)||0,!0),d+=2,c.setUint16(d,(null==(r=null==t?void 0:t._inputTrack)?void 0:r.getSettings().height)||0,!0),d+=2;let u=(t instanceof Yx?null==t?void 0:t.decodeFPS:null==(n=null==t?void 0:t.mediaTrack)?void 0:n.getSettings().frameRate)||15;return c.setUint32(d,u,!0),d+=4,c.setUint32(d,1,!0),d+=4,c.setUint32(d,e.length,!0),d+=4,c.setUint32(d,0,!0),d+=4,e.forEach((e,t)=>{let i=e.byteLength,r=Math.floor(1e6*t/u);c.setUint32(d,i,!0),d+=4,c.setFloat64(d,r,!0),d+=8,l.set(new Uint8Array(e),d),d+=i}),new Blob([s],{type:"application/octet-stream"})}getVideoCodec(e){var t,i;return""===e?null==(t=this._core.room.singlePC)?void 0:t.videoCodec:null==(i=this._core.room.remotePublishedUserMap.get(e))?void 0:i.videoCodec}hasLocalTrack(e,t){for(let i of this._core.room.localTracks)if(i.streamType===e&&i.kind===t)return!0;return!1}dumpAudio(e,t,i){var r,n,a;let o,s,c=null,l=[],d=[],u=[],h=[],p=[],f=[],m=[],g=new AbortController,_=Date.now(),v=this.formatStartDumpTime(_),y=this._core.room.audioManager._localAudioPipline,E=this._core.room.audioManager._localScreenAudioPipeline,b=e=>{let{room:t,data:i,type:r}=e;if(this.hitTest(t)){if("dump"===r){if(h[0]=h[0]?h[0].concat(i.captureInput):i.captureInput,h[1]=h[1]?h[1].concat(i.playInput):i.playInput,o){let e=i.startTime-o,t=i.endTime-i.startTime;if(e>30||t>30){let r=function(e){if("number"!=typeof e||e<0)return"0毫秒";let t=[],i=Math.floor(e/6e4),r=e%6e4;i>0&&t.push("".concat(i,"分"));let n=Math.floor(r/1e3);return r%=1e3,(n>0||t.length)&&t.push("".concat(n,"秒")),(r>0||!t.length)&&t.push("".concat(r,"毫秒")),t.join("")},n=i.startTime-s,a=o-s;m.push("".concat(i.startTime,"\t").concat(r(n),"~").concat(r(a),"\t").concat(e,"\t").concat(t))}o=i.startTime}else o=i.startTime,s=i.startTime;f.push(i.startTime)}"dump-screen-audio"===r&&(p[0]=p[0]?p[0].concat(i.captureInput):i.captureInput,p[1]=p[1]?p[1].concat(i.playInput):i.playInput)}};if("local"===e){let{sampleRate:e}=this._core.room.audioManager.audioContext;if(!this._core.room.audioManager.hasAudioTrack&&!this._core.room.audioManager.hasScreenAudioTrack)return{};if(null!=y&&y.source.node&&(l.push(y.source.node),d.push("local_audio_raw_capture-".concat(e,"-").concat(y.source.node.channelCount))),(null!=(r=null==y?void 0:y.aec)&&r.node||null!=E&&E.aec.node)&&(this._core.trtc.updatePlugin("AudioProcessor",{enableDump:!0}),this._core.innerEmitter.on("265",b),null!=(n=null==y?void 0:y.aec)&&n.node&&(l.push(y.aec.node),d.push("local_audio_audioProcessor_processed-".concat(e,"-").concat(y.aec.node.channelCount))),null!=E&&E.aec.node&&(l.push(E.aec.node),d.push("screen_audio_audioProcessor_processed-".concat(e,"-").concat(E.aec.node.channelCount)))),null!=y&&y.denoiser.node&&(l.push(y.denoiser.node),d.push("local_audio_denoiser_processed-".concat(e,"-").concat(y.denoiser.node.channelCount))),this._core.room.audioManager.mixWeight>1&&null!=y&&y.stream){let t=this._core.room.audioManager.audioContext.createMediaStreamSource(y.stream);t.channelCount=1,l.push(t),d.push("local_audio_destination-".concat(e,"-").concat(t.channelCount))}}else if("remote"===e&&void 0!==i){let e=null==(a=this._core.room.remotePublishedUserMap.get(i))?void 0:a.remoteAudioTrack;if(null==e||!e.mediaTrack)return{};let t=this._core.createAudioNode(e.mediaTrack);l.push(t),d.push("remote_".concat(i))}let w=async()=>{var t,i,r,n,a;let o=new qR.default;for(let e=0;e<d.length;e++)o.file("".concat(d[e],".pcm"),new Blob(u[e]));if(null!=(t=null==h?void 0:h[0])&&t.length&&o.file("audioProcessor_input_capture.pcm",new Blob(h[0])),null!=(i=null==h?void 0:h[1])&&i.length&&o.file("audioProcessor_input_playback.pcm",new Blob(h[1])),null!=(r=null==p?void 0:p[0])&&r.length&&o.file("audioProcessor_screen_audio_input_capture.pcm",new Blob(p[0])),null!=(n=null==p?void 0:p[1])&&n.length&&o.file("audioProcessor_screen_audio_input_playback.pcm",new Blob(p[1])),null!=f&&f.length){let e=f.reduce((e,t)=>"".concat(e,"\n").concat(t));o.file("audioProcessor_handle_timestamp.txt",new Blob([e]))}if(null!=m&&m.length){let e=m.reduce((e,t)=>"".concat(e,"\n").concat(t));o.file("audioProcessor_big_gap_data.txt",new Blob([e]))}let s=await o.generateAsync({type:"blob"}),l=URL.createObjectURL(s),_=document.createElement("a");_.href=l,_.download="".concat(e,"-audio-").concat(v,".zip"),_.style.display="none",document.body.appendChild(_),_.click(),URL.revokeObjectURL(l),_.remove(),this.addInfoToBanner(UM,"Dump success, file name is: ".concat(e,"-").concat(v,".zip")),this._core.innerEmitter.off("265",b),(null!=(a=null==y?void 0:y.aec)&&a.node||null!=E&&E.aec.node)&&this._core.trtc.updatePlugin("AudioProcessor",{enableDump:!1}),c&&clearTimeout(c),g.abort("download")};return t>0&&(c=Number(setTimeout(()=>{g.abort("timeout")},1e3*t))),l.length>0&&this._core.startGetPCM(l).then(e=>e.pipeTo(new WritableStream({write(e){e.forEach((e,t)=>{u[t]=u[t]?u[t].concat(e[0]):[e[0]]})}}),g).catch(()=>w)),{download:w,onDumpEnd:()=>{g.abort("timeout")}}}formatStartDumpTime(e){let t=new Date(e),i=t.getFullYear(),r=this.pad(t.getMonth()+1),n=this.pad(t.getDate()),a=this.pad(t.getHours()),o=this.pad(t.getMinutes()),s=this.pad(t.getSeconds()),c=-t.getTimezoneOffset(),l=Math.floor(Math.abs(c)/60),d=Math.abs(c)%60,u=c>=0?"+":"-";return"".concat(i,"-").concat(r,"-").concat(n,"T").concat(a,"-").concat(o,"-").concat(s).concat(u).concat(this.pad(l),"-").concat(this.pad(d))}convertOpusToOgg(e){let t=Math.floor(4294967295*Math.random()),i=0,r=0,n=[],a=this.createOpusHead(48e3,2);n.push(this.createOggPage(2,0,t,i++,[a]));let o=this.createOpusTags();n.push(this.createOggPage(0,0,t,i++,[o]));let s=[],c=0;return e.forEach((a,o)=>{let l=this.getOpusPacketDuration(a);s.push(a),c+=a.byteLength,r+=l;let d=o===e.length-1;if(c>6e4||s.length>=50||d){let e=d?4:0;n.push(this.createOggPage(e,r,t,i++,s)),s=[],c=0}}),new Blob(n,{type:"audio/ogg"})}createOpusHead(e,t){let i=new ArrayBuffer(19),r=new DataView(i);return this.writeString(r,0,"OpusHead"),r.setUint8(8,1),r.setUint8(9,t),r.setUint16(10,0,!0),r.setUint32(12,e,!0),r.setUint16(16,0,!0),r.setUint8(18,0),i}createOpusTags(){let e="TRTC Debugger",t=new ArrayBuffer(29),i=new DataView(t);return this.writeString(i,0,"OpusTags"),i.setUint32(8,13,!0),this.writeString(i,12,e),i.setUint32(25,0,!0),t}createOggPage(e,t,i,r,n){let a=0;n.forEach(e=>{let t=e.byteLength;for(;t>=255;)a++,t-=255;a++});let o=27+a,s=n.reduce((e,t)=>e+t.byteLength,0),c=new ArrayBuffer(o+s),l=new DataView(c),d=new Uint8Array(c);this.writeString(l,0,"OggS"),l.setUint8(4,0),l.setUint8(5,e),l.setUint32(6,4294967295&t,!0),l.setUint32(10,Math.floor(t/4294967295),!0),l.setUint32(14,i,!0),l.setUint32(18,r,!0),l.setUint32(22,0,!0),l.setUint8(26,a);let u=27;n.forEach(e=>{let t=e.byteLength;for(;t>=255;)d[u++]=255,t-=255;d[u++]=t});let h=o;n.forEach(e=>{d.set(new Uint8Array(e),h),h+=e.byteLength});let p=this.crc32(d);return l.setUint32(22,p,!0),d}writeString(e,t,i){for(let r=0;r<i.length;r++)e.setUint8(t+r,i.charCodeAt(r))}getOpusPacketDuration(e){if(0===e.byteLength)return 0;let t=new Uint8Array(e),i=t[0],r=i>>3&31,n=3&i,a=1;if(1===n||2===n)a=2;else if(3===n){if(e.byteLength<2)return 0;a=63&t[1]}return([480,480,480,480,960,960,960,960,1920,1920,1920,1920,2880,2880,480,480,120,120,120,120,240,240,240,240,480,480,480,480,960,960,960,960][r]||960)*a}crc32(e){let t=new Uint32Array(256);for(let r=0;r<256;r++){let e=r<<24;for(let t=0;t<8;t++)2147483648&e?e=e<<1^79764919:e<<=1;t[r]=e>>>0}let i=0;for(let r=0;r<e.length;r++){i=(i<<8^t[255&(i>>>24^e[r])])>>>0}return i}addVideoProcessor(){this._core.room.videoManager.addEncodeProcessor({processor:this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED?this.encodeVideo.bind(this):vR,type:1}),this._core.room.videoManager.addDecodeProcessor({processor:this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED?this.decodeVideo.bind(this):yR,type:1})}removeVideoProcessor(){this._core.room.videoManager.removeEncodeProcessor({type:1}),this._core.room.videoManager.removeDecodeProcessor({type:1})}addAudioProcessor(){this._core.room.audioManager.addEncodeProcessor({processor:this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED?this.encodeAudio.bind(this):ER,type:2}),this._core.room.audioManager.addDecodeProcessor({processor:this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED?this.decodeAudio.bind(this):bR,type:2})}removeAudioProcessor(){this._core.room.audioManager.removeEncodeProcessor({type:2}),this._core.room.audioManager.removeDecodeProcessor({type:2})}encodeVideo(e){let{frame:t,mediaType:i}=e;return vR({frame:t,onDump:()=>{if(!i)return;let e=2===i?"sub":"main",r=this.dumpLocalVideoMap[e];r&&(r.data.push(t.data.slice(0)),r.duration>0&&Date.now()-r.startTimestamp>1e3*r.duration&&r.onDumpEnd())}})}decodeVideo(e){let{frame:t,track:i}=e;return yR({frame:t,onDump:()=>{if(!i)return;let e=this.dumpRemoteVideoMap["".concat(i.userId,"-").concat(i.streamType)];e&&(e.data.push(t.data.slice(0)),e.duration>0&&Date.now()-e.startTimestamp>1e3*e.duration&&e.onDumpEnd())}})}encodeAudio(e){let{frame:t}=e;return ER({frame:t,onDump:()=>{let e=this.dumpLocalAudioMap.main;e&&(e.data.push(t.data.slice(0)),e.duration>0&&Date.now()-e.startTimestamp>1e3*e.duration&&e.onDumpEnd())}})}decodeAudio(e){let{frame:t,track:i}=e;return bR({frame:t,onDump:()=>{if(!i)return;let e=this.dumpRemoteAudioMap[i.userId];e&&(e.data.push(t.data.slice(0)),e.duration>0&&Date.now()-e.startTimestamp>1e3*e.duration&&e.onDumpEnd())}})}};
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).TRTCDebugDialog=t()}(this,function(){var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=function(e){return e&&e.Math===Math&&e},i=t("object"==typeof globalThis&&globalThis)||t("object"==typeof window&&window)||t("object"==typeof self&&self)||t("object"==typeof e&&e)||t("object"==typeof e&&e)||function(){return this}()||Function("return this")(),r={},n=function(e){try{return!!e()}catch(t){return!0}},a=!n(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}),o=!n(function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}),s=o,c=Function.prototype.call,l=s?c.bind(c):function(){return c.apply(c,arguments)},d={},u={}.propertyIsEnumerable,h=Object.getOwnPropertyDescriptor,p=h&&!u.call({1:2},1);d.f=p?function(e){var t=h(this,e);return!!t&&t.enumerable}:u;var f,m,g=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},v=o,_=Function.prototype,y=_.call,E=v&&_.bind.bind(y,y),b=v?E:function(e){return function(){return y.apply(e,arguments)}},w=b,I=w({}.toString),T=w("".slice),S=function(e){return T(I(e),8,-1)},A=n,R=S,k=Object,C=b("".split),D=A(function(){return!k("z").propertyIsEnumerable(0)})?function(e){return"String"===R(e)?C(e,""):k(e)}:k,O=function(e){return null==e},L=O,N=TypeError,P=function(e){if(L(e))throw new N("Can't call method on "+e);return e},x=D,M=P,U=function(e){return x(M(e))},B="object"==typeof document&&document.all,F=void 0===B&&void 0!==B?function(e){return"function"==typeof e||e===B}:function(e){return"function"==typeof e},V=F,H=function(e){return"object"==typeof e?null!==e:V(e)},j=i,z=F,W=function(e,t){return arguments.length<2?(i=j[e],z(i)?i:void 0):j[e]&&j[e][t];var i},G=b({}.isPrototypeOf),q=i.navigator,K=q&&q.userAgent,Y=K?String(K):"",X=i,Z=Y,J=X.process,Q=X.Deno,$=J&&J.versions||Q&&Q.version,ee=$&&$.v8;ee&&(m=(f=ee.split("."))[0]>0&&f[0]<4?1:+(f[0]+f[1])),!m&&Z&&(!(f=Z.match(/Edge\/(\d+)/))||f[1]>=74)&&(f=Z.match(/Chrome\/(\d+)/))&&(m=+f[1]);var te=m,ie=te,re=n,ne=i.String,ae=!!Object.getOwnPropertySymbols&&!re(function(){var e=Symbol("symbol detection");return!ne(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&ie&&ie<41}),oe=ae&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,se=W,ce=F,le=G,de=Object,ue=oe?function(e){return"symbol"==typeof e}:function(e){var t=se("Symbol");return ce(t)&&le(t.prototype,de(e))},he=String,pe=function(e){try{return he(e)}catch(t){return"Object"}},fe=F,me=pe,ge=TypeError,ve=function(e){if(fe(e))return e;throw new ge(me(e)+" is not a function")},_e=ve,ye=O,Ee=function(e,t){var i=e[t];return ye(i)?void 0:_e(i)},be=l,we=F,Ie=H,Te=TypeError,Se={exports:{}},Ae=i,Re=Object.defineProperty,ke=function(e,t){try{Re(Ae,e,{value:t,configurable:!0,writable:!0})}catch(i){Ae[e]=t}return t},Ce=i,De=ke,Oe="__core-js_shared__",Le=Se.exports=Ce[Oe]||De(Oe,{});(Le.versions||(Le.versions=[])).push({version:"3.48.0",mode:"global",copyright:"© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.",license:"https://github.com/zloirock/core-js/blob/v3.48.0/LICENSE",source:"https://github.com/zloirock/core-js"});var Ne=Se.exports,Pe=Ne,xe=function(e,t){return Pe[e]||(Pe[e]=t||{})},Me=P,Ue=Object,Be=function(e){return Ue(Me(e))},Fe=Be,Ve=b({}.hasOwnProperty),He=Object.hasOwn||function(e,t){return Ve(Fe(e),t)},je=b,ze=0,We=Math.random(),Ge=je(1.1.toString),qe=function(e){return"Symbol("+(void 0===e?"":e)+")_"+Ge(++ze+We,36)},Ke=xe,Ye=He,Xe=qe,Ze=ae,Je=oe,Qe=i.Symbol,$e=Ke("wks"),et=Je?Qe.for||Qe:Qe&&Qe.withoutSetter||Xe,tt=function(e){return Ye($e,e)||($e[e]=Ze&&Ye(Qe,e)?Qe[e]:et("Symbol."+e)),$e[e]},it=l,rt=H,nt=ue,at=Ee,ot=function(e,t){var i,r;if("string"===t&&we(i=e.toString)&&!Ie(r=be(i,e)))return r;if(we(i=e.valueOf)&&!Ie(r=be(i,e)))return r;if("string"!==t&&we(i=e.toString)&&!Ie(r=be(i,e)))return r;throw new Te("Can't convert object to primitive value")},st=TypeError,ct=tt("toPrimitive"),lt=function(e,t){if(!rt(e)||nt(e))return e;var i,r=at(e,ct);if(r){if(void 0===t&&(t="default"),i=it(r,e,t),!rt(i)||nt(i))return i;throw new st("Can't convert object to primitive value")}return void 0===t&&(t="number"),ot(e,t)},dt=lt,ut=ue,ht=function(e){var t=dt(e,"string");return ut(t)?t:t+""},pt=H,ft=i.document,mt=pt(ft)&&pt(ft.createElement),gt=function(e){return mt?ft.createElement(e):{}},vt=gt,_t=!a&&!n(function(){return 7!==Object.defineProperty(vt("div"),"a",{get:function(){return 7}}).a}),yt=a,Et=l,bt=d,wt=g,It=U,Tt=ht,St=He,At=_t,Rt=Object.getOwnPropertyDescriptor;r.f=yt?Rt:function(e,t){if(e=It(e),t=Tt(t),At)try{return Rt(e,t)}catch(i){}if(St(e,t))return wt(!Et(bt.f,e,t),e[t])};var kt={},Ct=a&&n(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype}),Dt=H,Ot=String,Lt=TypeError,Nt=function(e){if(Dt(e))return e;throw new Lt(Ot(e)+" is not an object")},Pt=a,xt=_t,Mt=Ct,Ut=Nt,Bt=ht,Ft=TypeError,Vt=Object.defineProperty,Ht=Object.getOwnPropertyDescriptor,jt="enumerable",zt="configurable",Wt="writable";kt.f=Pt?Mt?function(e,t,i){if(Ut(e),t=Bt(t),Ut(i),"function"==typeof e&&"prototype"===t&&"value"in i&&Wt in i&&!i[Wt]){var r=Ht(e,t);r&&r[Wt]&&(e[t]=i.value,i={configurable:zt in i?i[zt]:r[zt],enumerable:jt in i?i[jt]:r[jt],writable:!1})}return Vt(e,t,i)}:Vt:function(e,t,i){if(Ut(e),t=Bt(t),Ut(i),xt)try{return Vt(e,t,i)}catch(r){}if("get"in i||"set"in i)throw new Ft("Accessors not supported");return"value"in i&&(e[t]=i.value),e};var Gt=kt,qt=g,Kt=a?function(e,t,i){return Gt.f(e,t,qt(1,i))}:function(e,t,i){return e[t]=i,e},Yt={exports:{}},Xt=a,Zt=He,Jt=Function.prototype,Qt=Xt&&Object.getOwnPropertyDescriptor,$t=Zt(Jt,"name"),ei={EXISTS:$t,PROPER:$t&&"something"===function(){}.name,CONFIGURABLE:$t&&(!Xt||Xt&&Qt(Jt,"name").configurable)},ti=F,ii=Ne,ri=b(Function.toString);ti(ii.inspectSource)||(ii.inspectSource=function(e){return ri(e)});var ni,ai,oi,si=ii.inspectSource,ci=F,li=i.WeakMap,di=ci(li)&&/native code/.test(String(li)),ui=qe,hi=xe("keys"),pi=function(e){return hi[e]||(hi[e]=ui(e))},fi={},mi=di,gi=i,vi=H,_i=Kt,yi=He,Ei=Ne,bi=pi,wi=fi,Ii="Object already initialized",Ti=gi.TypeError,Si=gi.WeakMap;if(mi||Ei.state){var Ai=Ei.state||(Ei.state=new Si);Ai.get=Ai.get,Ai.has=Ai.has,Ai.set=Ai.set,ni=function(e,t){if(Ai.has(e))throw new Ti(Ii);return t.facade=e,Ai.set(e,t),t},ai=function(e){return Ai.get(e)||{}},oi=function(e){return Ai.has(e)}}else{var Ri=bi("state");wi[Ri]=!0,ni=function(e,t){if(yi(e,Ri))throw new Ti(Ii);return t.facade=e,_i(e,Ri,t),t},ai=function(e){return yi(e,Ri)?e[Ri]:{}},oi=function(e){return yi(e,Ri)}}var ki={set:ni,get:ai,has:oi,enforce:function(e){return oi(e)?ai(e):ni(e,{})},getterFor:function(e){return function(t){var i;if(!vi(t)||(i=ai(t)).type!==e)throw new Ti("Incompatible receiver, "+e+" required");return i}}},Ci=b,Di=n,Oi=F,Li=He,Ni=a,Pi=ei.CONFIGURABLE,xi=si,Mi=ki.enforce,Ui=ki.get,Bi=String,Fi=Object.defineProperty,Vi=Ci("".slice),Hi=Ci("".replace),ji=Ci([].join),zi=Ni&&!Di(function(){return 8!==Fi(function(){},"length",{value:8}).length}),Wi=String(String).split("String"),Gi=Yt.exports=function(e,t,i){"Symbol("===Vi(Bi(t),0,7)&&(t="["+Hi(Bi(t),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),i&&i.getter&&(t="get "+t),i&&i.setter&&(t="set "+t),(!Li(e,"name")||Pi&&e.name!==t)&&(Ni?Fi(e,"name",{value:t,configurable:!0}):e.name=t),zi&&i&&Li(i,"arity")&&e.length!==i.arity&&Fi(e,"length",{value:i.arity});try{i&&Li(i,"constructor")&&i.constructor?Ni&&Fi(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(n){}var r=Mi(e);return Li(r,"source")||(r.source=ji(Wi,"string"==typeof t?t:"")),e};Function.prototype.toString=Gi(function(){return Oi(this)&&Ui(this).source||xi(this)},"toString");var qi=Yt.exports,Ki=F,Yi=kt,Xi=qi,Zi=ke,Ji=function(e,t,i,r){r||(r={});var n=r.enumerable,a=void 0!==r.name?r.name:t;if(Ki(i)&&Xi(i,a,r),r.global)n?e[t]=i:Zi(t,i);else{try{r.unsafe?e[t]&&(n=!0):delete e[t]}catch(o){}n?e[t]=i:Yi.f(e,t,{value:i,enumerable:!1,configurable:!r.nonConfigurable,writable:!r.nonWritable})}return e},Qi={},$i=Math.ceil,er=Math.floor,tr=Math.trunc||function(e){var t=+e;return(t>0?er:$i)(t)},ir=function(e){var t=+e;return t!=t||0===t?0:tr(t)},rr=ir,nr=Math.max,ar=Math.min,or=function(e,t){var i=rr(e);return i<0?nr(i+t,0):ar(i,t)},sr=ir,cr=Math.min,lr=function(e){var t=sr(e);return t>0?cr(t,9007199254740991):0},dr=lr,ur=function(e){return dr(e.length)},hr=U,pr=or,fr=ur,mr=function(e){return function(t,i,r){var n=hr(t),a=fr(n);if(0===a)return!e&&-1;var o,s=pr(r,a);if(e&&i!=i){for(;a>s;)if((o=n[s++])!=o)return!0}else for(;a>s;s++)if((e||s in n)&&n[s]===i)return e||s||0;return!e&&-1}},gr={includes:mr(!0),indexOf:mr(!1)},vr=He,_r=U,yr=gr.indexOf,Er=fi,br=b([].push),wr=function(e,t){var i,r=_r(e),n=0,a=[];for(i in r)!vr(Er,i)&&vr(r,i)&&br(a,i);for(;t.length>n;)vr(r,i=t[n++])&&(~yr(a,i)||br(a,i));return a},Ir=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Tr=wr,Sr=Ir.concat("length","prototype");Qi.f=Object.getOwnPropertyNames||function(e){return Tr(e,Sr)};var Ar={};Ar.f=Object.getOwnPropertySymbols;var Rr=W,kr=Qi,Cr=Ar,Dr=Nt,Or=b([].concat),Lr=Rr("Reflect","ownKeys")||function(e){var t=kr.f(Dr(e)),i=Cr.f;return i?Or(t,i(e)):t},Nr=He,Pr=Lr,xr=r,Mr=kt,Ur=function(e,t,i){for(var r=Pr(t),n=Mr.f,a=xr.f,o=0;o<r.length;o++){var s=r[o];Nr(e,s)||i&&Nr(i,s)||n(e,s,a(t,s))}},Br=n,Fr=F,Vr=/#|\.prototype\./,Hr=function(e,t){var i=zr[jr(e)];return i===Gr||i!==Wr&&(Fr(t)?Br(t):!!t)},jr=Hr.normalize=function(e){return String(e).replace(Vr,".").toLowerCase()},zr=Hr.data={},Wr=Hr.NATIVE="N",Gr=Hr.POLYFILL="P",qr=Hr,Kr=i,Yr=r.f,Xr=Kt,Zr=Ji,Jr=ke,Qr=Ur,$r=qr,en=function(e,t){var i,r,n,a,o,s=e.target,c=e.global,l=e.stat;if(i=c?Kr:l?Kr[s]||Jr(s,{}):Kr[s]&&Kr[s].prototype)for(r in t){if(a=t[r],n=e.dontCallGetSet?(o=Yr(i,r))&&o.value:i[r],!$r(c?r:s+(l?".":"#")+r,e.forced)&&void 0!==n){if(typeof a==typeof n)continue;Qr(a,n)}(e.sham||n&&n.sham)&&Xr(a,"sham",!0),Zr(i,r,a,e)}},tn={};tn[tt("toStringTag")]="z";var rn="[object z]"===String(tn),nn=F,an=S,on=tt("toStringTag"),sn=Object,cn="Arguments"===an(function(){return arguments}()),ln=rn?an:function(e){var t,i,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(i=function(e,t){try{return e[t]}catch(i){}}(t=sn(e),on))?i:cn?an(t):"Object"===(r=an(t))&&nn(t.callee)?"Arguments":r},dn=ln,un=String,hn=function(e){if("Symbol"===dn(e))throw new TypeError("Cannot convert a Symbol value to a string");return un(e)},pn=qi,fn=kt,mn=function(e,t,i){return i.get&&pn(i.get,t,{getter:!0}),i.set&&pn(i.set,t,{setter:!0}),fn.f(e,t,i)},gn=en,vn=a,_n=b,yn=He,En=F,bn=G,wn=hn,In=mn,Tn=Ur,Sn=i.Symbol,An=Sn&&Sn.prototype;if(vn&&En(Sn)&&(!("description"in An)||void 0!==Sn().description)){var Rn={},kn=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:wn(arguments[0]),t=bn(An,this)?new Sn(e):void 0===e?Sn():Sn(e);return""===e&&(Rn[t]=!0),t};Tn(kn,Sn),kn.prototype=An,An.constructor=kn;var Cn="Symbol(description detection)"===String(Sn("description detection")),Dn=_n(An.valueOf),On=_n(An.toString),Ln=/^Symbol\((.*)\)[^)]+$/,Nn=_n("".replace),Pn=_n("".slice);In(An,"description",{configurable:!0,get:function(){var e=Dn(this);if(yn(Rn,e))return"";var t=On(e),i=Cn?Pn(t,7,-1):Nn(t,Ln,"$1");return""===i?void 0:i}}),gn({global:!0,constructor:!0,forced:!0},{Symbol:kn})}var xn={},Mn=wr,Un=Ir,Bn=Object.keys||function(e){return Mn(e,Un)},Fn=a,Vn=Ct,Hn=kt,jn=Nt,zn=U,Wn=Bn;xn.f=Fn&&!Vn?Object.defineProperties:function(e,t){jn(e);for(var i,r=zn(t),n=Wn(t),a=n.length,o=0;a>o;)Hn.f(e,i=n[o++],r[i]);return e};var Gn,qn=W("document","documentElement"),Kn=Nt,Yn=xn,Xn=Ir,Zn=fi,Jn=qn,Qn=gt,$n="prototype",ea="script",ta=pi("IE_PROTO"),ia=function(){},ra=function(e){return"<"+ea+">"+e+"</"+ea+">"},na=function(e){e.write(ra("")),e.close();var t=e.parentWindow.Object;return e=null,t},aa=function(){try{Gn=new ActiveXObject("htmlfile")}catch(n){}var e,t,i;aa="undefined"!=typeof document?document.domain&&Gn?na(Gn):(t=Qn("iframe"),i="java"+ea+":",t.style.display="none",Jn.appendChild(t),t.src=String(i),(e=t.contentWindow.document).open(),e.write(ra("document.F=Object")),e.close(),e.F):na(Gn);for(var r=Xn.length;r--;)delete aa[$n][Xn[r]];return aa()};Zn[ta]=!0;var oa=Object.create||function(e,t){var i;return null!==e?(ia[$n]=Kn(e),i=new ia,ia[$n]=null,i[ta]=e):i=aa(),void 0===t?i:Yn.f(i,t)},sa=tt,ca=oa,la=kt.f,da=sa("unscopables"),ua=Array.prototype;void 0===ua[da]&&la(ua,da,{configurable:!0,value:ca(null)});var ha=function(e){ua[da][e]=!0},pa=gr.includes,fa=ha;en({target:"Array",proto:!0,forced:n(function(){return!Array(1).includes()})},{includes:function(e){return pa(this,e,arguments.length>1?arguments[1]:void 0)}}),fa("includes");var ma,ga,va,_a={},ya=!n(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),Ea=He,ba=F,wa=Be,Ia=ya,Ta=pi("IE_PROTO"),Sa=Object,Aa=Sa.prototype,Ra=Ia?Sa.getPrototypeOf:function(e){var t=wa(e);if(Ea(t,Ta))return t[Ta];var i=t.constructor;return ba(i)&&t instanceof i?i.prototype:t instanceof Sa?Aa:null},ka=n,Ca=F,Da=H,Oa=Ra,La=Ji,Na=tt("iterator"),Pa=!1;[].keys&&("next"in(va=[].keys())?(ga=Oa(Oa(va)))!==Object.prototype&&(ma=ga):Pa=!0);var xa=!Da(ma)||ka(function(){var e={};return ma[Na].call(e)!==e});xa&&(ma={}),Ca(ma[Na])||La(ma,Na,function(){return this});var Ma={IteratorPrototype:ma,BUGGY_SAFARI_ITERATORS:Pa},Ua=kt.f,Ba=He,Fa=tt("toStringTag"),Va=function(e,t,i){e&&!i&&(e=e.prototype),e&&!Ba(e,Fa)&&Ua(e,Fa,{configurable:!0,value:t})},Ha=Ma.IteratorPrototype,ja=oa,za=g,Wa=Va,Ga=_a,qa=function(){return this},Ka=function(e,t,i,r){var n=t+" Iterator";return e.prototype=ja(Ha,{next:za(+!r,i)}),Wa(e,n,!1),Ga[n]=qa,e},Ya=b,Xa=ve,Za=H,Ja=function(e){return Za(e)||null===e},Qa=String,$a=TypeError,eo=function(e,t,i){try{return Ya(Xa(Object.getOwnPropertyDescriptor(e,t)[i]))}catch(r){}},to=H,io=P,ro=function(e){if(Ja(e))return e;throw new $a("Can't set "+Qa(e)+" as a prototype")},no=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,i={};try{(e=eo(Object.prototype,"__proto__","set"))(i,[]),t=i instanceof Array}catch(r){}return function(i,r){return io(i),ro(r),to(i)?(t?e(i,r):i.__proto__=r,i):i}}():void 0),ao=en,oo=l,so=F,co=Ka,lo=Ra,uo=no,ho=Va,po=Kt,fo=Ji,mo=_a,go=ei.PROPER,vo=ei.CONFIGURABLE,_o=Ma.IteratorPrototype,yo=Ma.BUGGY_SAFARI_ITERATORS,Eo=tt("iterator"),bo="keys",wo="values",Io="entries",To=function(){return this},So=function(e,t,i,r,n,a,o){co(i,t,r);var s,c,l,d=function(e){if(e===n&&m)return m;if(!yo&&e&&e in p)return p[e];switch(e){case bo:case wo:case Io:return function(){return new i(this,e)}}return function(){return new i(this)}},u=t+" Iterator",h=!1,p=e.prototype,f=p[Eo]||p["@@iterator"]||n&&p[n],m=!yo&&f||d(n),g="Array"===t&&p.entries||f;if(g&&(s=lo(g.call(new e)))!==Object.prototype&&s.next&&(lo(s)!==_o&&(uo?uo(s,_o):so(s[Eo])||fo(s,Eo,To)),ho(s,u,!0)),go&&n===wo&&f&&f.name!==wo&&(vo?po(p,"name",wo):(h=!0,m=function(){return oo(f,this)})),n)if(c={values:d(wo),keys:a?m:d(bo),entries:d(Io)},o)for(l in c)(yo||h||!(l in p))&&fo(p,l,c[l]);else ao({target:t,proto:!0,forced:yo||h},c);return p[Eo]!==m&&fo(p,Eo,m,{name:n}),mo[t]=m,c},Ao=function(e,t){return{value:e,done:t}},Ro=U,ko=ha,Co=_a,Do=ki,Oo=kt.f,Lo=So,No=Ao,Po=a,xo="Array Iterator",Mo=Do.set,Uo=Do.getterFor(xo),Bo=Lo(Array,"Array",function(e,t){Mo(this,{type:xo,target:Ro(e),index:0,kind:t})},function(){var e=Uo(this),t=e.target,i=e.index++;if(!t||i>=t.length)return e.target=null,No(void 0,!0);switch(e.kind){case"keys":return No(i,!1);case"values":return No(t[i],!1)}return No([i,t[i]],!1)},"values"),Fo=Co.Arguments=Co.Array;if(ko("keys"),ko("values"),ko("entries"),Po&&"values"!==Fo.name)try{Oo(Fo,"name",{value:"values"})}catch(QM){}var Vo=ve,Ho=Be,jo=D,zo=ur,Wo=TypeError,Go="Reduce of empty array with no initial value",qo=function(e){return function(t,i,r,n){var a=Ho(t),o=jo(a),s=zo(a);if(Vo(i),0===s&&r<2)throw new Wo(Go);var c=e?s-1:0,l=e?-1:1;if(r<2)for(;;){if(c in o){n=o[c],c+=l;break}if(c+=l,e?c<0:s<=c)throw new Wo(Go)}for(;e?c>=0:s>c;c+=l)c in o&&(n=i(n,o[c],c,a));return n}},Ko={left:qo(!1),right:qo(!0)},Yo=n,Xo=function(e,t){var i=[][e];return!!i&&Yo(function(){i.call(null,t||function(){return 1},1)})},Zo=i,Jo=Y,Qo=S,$o=function(e){return Jo.slice(0,e.length)===e},es=$o("Bun/")?"BUN":$o("Cloudflare-Workers")?"CLOUDFLARE":$o("Deno/")?"DENO":$o("Node.js/")?"NODE":Zo.Bun&&"string"==typeof Bun.version?"BUN":Zo.Deno&&"object"==typeof Deno.version?"DENO":"process"===Qo(Zo.process)?"NODE":Zo.window&&Zo.document?"BROWSER":"REST",ts="NODE"===es,is=Ko.left;en({target:"Array",proto:!0,forced:!ts&&te>79&&te<83||!Xo("reduce")},{reduce:function(e){var t=arguments.length;return is(this,e,t,t>1?arguments[1]:void 0)}});var rs=Ko.right;en({target:"Array",proto:!0,forced:!ts&&te>79&&te<83||!Xo("reduceRight")},{reduceRight:function(e){return rs(this,e,arguments.length,arguments.length>1?arguments[1]:void 0)}});var ns=S,as=Array.isArray||function(e){return"Array"===ns(e)},os=en,ss=as,cs=b([].reverse),ls=[1,2];os({target:"Array",proto:!0,forced:String(ls)===String(ls.reverse())},{reverse:function(){return ss(this)&&(this.length=this.length),cs(this)}});var ds="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView,us=Ji,hs=function(e,t,i){for(var r in t)us(e,r,t[r],i);return e},ps=G,fs=TypeError,ms=function(e,t){if(ps(t,e))return e;throw new fs("Incorrect invocation")},gs=ir,vs=lr,_s=RangeError,ys=function(e){if(void 0===e)return 0;var t=gs(e),i=vs(t);if(t!==i)throw new _s("Wrong length or index");return i},Es=Math.sign||function(e){var t=+e;return 0===t||t!=t?t:t<0?-1:1},bs=4503599627370496,ws=Es,Is=function(e){return e+bs-bs},Ts=Math.abs,Ss=function(e,t,i,r){var n=+e,a=Ts(n),o=ws(n);if(a<r)return o*Is(a/r/t)*r*t;var s=(1+t/2220446049250313e-31)*a,c=s-(s-a);return c>i||c!=c?Infinity*o:o*c},As=Math.fround||function(e){return Ss(e,1.1920928955078125e-7,34028234663852886e22,11754943508222875e-54)},Rs=Array,ks=Math.abs,Cs=Math.pow,Ds=Math.floor,Os=Math.log,Ls=Math.LN2,Ns={pack:function(e,t,i){var r,n,a,o=Rs(i),s=8*i-t-1,c=(1<<s)-1,l=c>>1,d=23===t?Cs(2,-24)-Cs(2,-77):0,u=e<0||0===e&&1/e<0?1:0,h=0;for((e=ks(e))!=e||Infinity===e?(n=e!=e?1:0,r=c):(r=Ds(Os(e)/Ls),e*(a=Cs(2,-r))<1&&(r--,a*=2),(e+=r+l>=1?d/a:d*Cs(2,1-l))*a>=2&&(r++,a/=2),r+l>=c?(n=0,r=c):r+l>=1?(n=(e*a-1)*Cs(2,t),r+=l):(n=e*Cs(2,l-1)*Cs(2,t),r=0));t>=8;)o[h++]=255&n,n/=256,t-=8;for(r=r<<t|n,s+=t;s>0;)o[h++]=255&r,r/=256,s-=8;return o[h-1]|=128*u,o},unpack:function(e,t){var i,r=e.length,n=8*r-t-1,a=(1<<n)-1,o=a>>1,s=n-7,c=r-1,l=e[c--],d=127&l;for(l>>=7;s>0;)d=256*d+e[c--],s-=8;for(i=d&(1<<-s)-1,d>>=-s,s+=t;s>0;)i=256*i+e[c--],s-=8;if(0===d)d=1-o;else{if(d===a)return i?NaN:l?-Infinity:Infinity;i+=Cs(2,t),d-=o}return(l?-1:1)*i*Cs(2,d-t)}},Ps=Be,xs=or,Ms=ur,Us=function(e){for(var t=Ps(this),i=Ms(t),r=arguments.length,n=xs(r>1?arguments[1]:void 0,i),a=r>2?arguments[2]:void 0,o=void 0===a?i:xs(a,i);o>n;)t[n++]=e;return t},Bs=b([].slice),Fs=F,Vs=H,Hs=no,js=function(e,t,i){var r,n;return Hs&&Fs(r=t.constructor)&&r!==i&&Vs(n=r.prototype)&&n!==i.prototype&&Hs(e,n),e},zs=i,Ws=b,Gs=a,qs=ds,Ks=Kt,Ys=mn,Xs=hs,Zs=n,Js=ms,Qs=ir,$s=lr,ec=ys,tc=As,ic=Ns,rc=Ra,nc=no,ac=Us,oc=Bs,sc=js,cc=Ur,lc=Va,dc=ki,uc=ei.PROPER,hc=ei.CONFIGURABLE,pc="ArrayBuffer",fc="DataView",mc="prototype",gc="Wrong index",vc=dc.getterFor(pc),_c=dc.getterFor(fc),yc=dc.set,Ec=zs[pc],bc=Ec,wc=bc&&bc[mc],Ic=zs[fc],Tc=Ic&&Ic[mc],Sc=Object.prototype,Ac=zs.Array,Rc=zs.RangeError,kc=Ws(ac),Cc=Ws([].reverse),Dc=ic.pack,Oc=ic.unpack,Lc=function(e){return[255&e]},Nc=function(e){return[255&e,e>>8&255]},Pc=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},xc=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},Mc=function(e){return Dc(tc(e),23,4)},Uc=function(e){return Dc(e,52,8)},Bc=function(e,t,i){Ys(e[mc],t,{configurable:!0,get:function(){return i(this)[t]}})},Fc=function(e,t,i,r){var n=_c(e),a=ec(i),o=!!r;if(a+t>n.byteLength)throw new Rc(gc);var s=n.bytes,c=a+n.byteOffset,l=oc(s,c,c+t);return o?l:Cc(l)},Vc=function(e,t,i,r,n,a){var o=_c(e),s=ec(i),c=r(+n),l=!!a;if(s+t>o.byteLength)throw new Rc(gc);for(var d=o.bytes,u=s+o.byteOffset,h=0;h<t;h++)d[u+h]=c[l?h:t-h-1]};if(qs){var Hc=uc&&Ec.name!==pc;Zs(function(){Ec(1)})&&Zs(function(){new Ec(-1)})&&!Zs(function(){return new Ec,new Ec(1.5),new Ec(NaN),1!==Ec.length||Hc&&!hc})?Hc&&hc&&Ks(Ec,"name",pc):((bc=function(e){return Js(this,wc),sc(new Ec(ec(e)),this,bc)})[mc]=wc,wc.constructor=bc,cc(bc,Ec)),nc&&rc(Tc)!==Sc&&nc(Tc,Sc);var jc=new Ic(new bc(2)),zc=Ws(Tc.setInt8);jc.setInt8(0,2147483648),jc.setInt8(1,2147483649),!jc.getInt8(0)&&jc.getInt8(1)||Xs(Tc,{setInt8:function(e,t){zc(this,e,t<<24>>24)},setUint8:function(e,t){zc(this,e,t<<24>>24)}},{unsafe:!0})}else wc=(bc=function(e){Js(this,wc);var t=ec(e);yc(this,{type:pc,bytes:kc(Ac(t),0),byteLength:t}),Gs||(this.byteLength=t,this.detached=!1)})[mc],Tc=(Ic=function(e,t,i){Js(this,Tc),Js(e,wc);var r=vc(e),n=r.byteLength,a=Qs(t);if(a<0||a>n)throw new Rc("Wrong offset");if(a+(i=void 0===i?n-a:$s(i))>n)throw new Rc("Wrong length");yc(this,{type:fc,buffer:e,byteLength:i,byteOffset:a,bytes:r.bytes}),Gs||(this.buffer=e,this.byteLength=i,this.byteOffset=a)})[mc],Gs&&(Bc(bc,"byteLength",vc),Bc(Ic,"buffer",_c),Bc(Ic,"byteLength",_c),Bc(Ic,"byteOffset",_c)),Xs(Tc,{getInt8:function(e){return Fc(this,1,e)[0]<<24>>24},getUint8:function(e){return Fc(this,1,e)[0]},getInt16:function(e){var t=Fc(this,2,e,arguments.length>1&&arguments[1]);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=Fc(this,2,e,arguments.length>1&&arguments[1]);return t[1]<<8|t[0]},getInt32:function(e){return xc(Fc(this,4,e,arguments.length>1&&arguments[1]))},getUint32:function(e){return xc(Fc(this,4,e,arguments.length>1&&arguments[1]))>>>0},getFloat32:function(e){return Oc(Fc(this,4,e,arguments.length>1&&arguments[1]),23)},getFloat64:function(e){return Oc(Fc(this,8,e,arguments.length>1&&arguments[1]),52)},setInt8:function(e,t){Vc(this,1,e,Lc,t)},setUint8:function(e,t){Vc(this,1,e,Lc,t)},setInt16:function(e,t){Vc(this,2,e,Nc,t,arguments.length>2&&arguments[2])},setUint16:function(e,t){Vc(this,2,e,Nc,t,arguments.length>2&&arguments[2])},setInt32:function(e,t){Vc(this,4,e,Pc,t,arguments.length>2&&arguments[2])},setUint32:function(e,t){Vc(this,4,e,Pc,t,arguments.length>2&&arguments[2])},setFloat32:function(e,t){Vc(this,4,e,Mc,t,arguments.length>2&&arguments[2])},setFloat64:function(e,t){Vc(this,8,e,Uc,t,arguments.length>2&&arguments[2])}});lc(bc,pc),lc(Ic,fc);var Wc={ArrayBuffer:bc,DataView:Ic},Gc=W,qc=mn,Kc=a,Yc=tt("species"),Xc=function(e){var t=Gc(e);Kc&&t&&!t[Yc]&&qc(t,Yc,{configurable:!0,get:function(){return this}})},Zc=Xc,Jc="ArrayBuffer",Qc=Wc[Jc];en({global:!0,constructor:!0,forced:i[Jc]!==Qc},{ArrayBuffer:Qc}),Zc(Jc);var $c=S,el=b,tl=function(e){if("Function"===$c(e))return el(e)},il=en,rl=tl,nl=n,al=Nt,ol=or,sl=lr,cl=Wc.ArrayBuffer,ll=Wc.DataView,dl=ll.prototype,ul=rl(cl.prototype.slice),hl=rl(dl.getUint8),pl=rl(dl.setUint8);il({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:nl(function(){return!new cl(2).slice(1,void 0).byteLength})},{slice:function(e,t){if(ul&&void 0===t)return ul(al(this),e);for(var i=al(this).byteLength,r=ol(e,i),n=ol(void 0===t?i:t,i),a=new cl(sl(n-r)),o=new ll(this),s=new ll(a),c=0;r<n;)pl(s,c++,hl(o,r++));return a}});var fl=i,ml=b,gl=n,vl=F,_l=ln,yl=si,El=function(){},bl=W("Reflect","construct"),wl=/^\s*(?:class|function)\b/,Il=ml(wl.exec),Tl=!wl.test(El),Sl=function(e){if(!vl(e))return!1;try{return bl(El,[],e),!0}catch(QM){return!1}},Al=function(e){if(!vl(e))return!1;switch(_l(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Tl||!!Il(wl,yl(e))}catch(QM){return!0}};Al.sham=!0;var Rl,kl,Cl,Dl,Ol=!bl||gl(function(){var e;return Sl(Sl.call)||!Sl(Object)||!Sl(function(){e=!0})||e})?Al:Sl,Ll=Ol,Nl=pe,Pl=TypeError,xl=function(e){if(Ll(e))return e;throw new Pl(Nl(e)+" is not a constructor")},Ml=Nt,Ul=xl,Bl=O,Fl=tt("species"),Vl=function(e,t){var i,r=Ml(e).constructor;return void 0===r||Bl(i=Ml(r)[Fl])?t:Ul(i)},Hl=o,jl=Function.prototype,zl=jl.apply,Wl=jl.call,Gl="object"==typeof Reflect&&Reflect.apply||(Hl?Wl.bind(zl):function(){return Wl.apply(zl,arguments)}),ql=ve,Kl=o,Yl=tl(tl.bind),Xl=function(e,t){return ql(e),void 0===t?e:Kl?Yl(e,t):function(){return e.apply(t,arguments)}},Zl=TypeError,Jl=function(e,t){if(e<t)throw new Zl("Not enough arguments");return e},Ql=/(?:ipad|iphone|ipod).*applewebkit/i.test(Y),$l=i,ed=Gl,td=Xl,id=F,rd=He,nd=n,ad=qn,od=Bs,sd=gt,cd=Jl,ld=Ql,dd=ts,ud=$l.setImmediate,hd=$l.clearImmediate,pd=$l.process,fd=$l.Dispatch,md=$l.Function,gd=$l.MessageChannel,vd=$l.String,_d=0,yd={},Ed="onreadystatechange";nd(function(){Rl=$l.location});var bd=function(e){if(rd(yd,e)){var t=yd[e];delete yd[e],t()}},wd=function(e){return function(){bd(e)}},Id=function(e){bd(e.data)},Td=function(e){$l.postMessage(vd(e),Rl.protocol+"//"+Rl.host)};ud&&hd||(ud=function(e){cd(arguments.length,1);var t=id(e)?e:md(e),i=od(arguments,1);return yd[++_d]=function(){ed(t,void 0,i)},kl(_d),_d},hd=function(e){delete yd[e]},dd?kl=function(e){pd.nextTick(wd(e))}:fd&&fd.now?kl=function(e){fd.now(wd(e))}:gd&&!ld?(Dl=(Cl=new gd).port2,Cl.port1.onmessage=Id,kl=td(Dl.postMessage,Dl)):$l.addEventListener&&id($l.postMessage)&&!$l.importScripts&&Rl&&"file:"!==Rl.protocol&&!nd(Td)?(kl=Td,$l.addEventListener("message",Id,!1)):kl=Ed in sd("script")?function(e){ad.appendChild(sd("script"))[Ed]=function(){ad.removeChild(this),bd(e)}}:function(e){setTimeout(wd(e),0)});var Sd={set:ud,clear:hd},Ad=i,Rd=a,kd=Object.getOwnPropertyDescriptor,Cd=function(e){if(!Rd)return Ad[e];var t=kd(Ad,e);return t&&t.value},Dd=function(){this.head=null,this.tail=null};Dd.prototype={add:function(e){var t={item:e,next:null},i=this.tail;i?i.next=t:this.head=t,this.tail=t},get:function(){var e=this.head;if(e)return null===(this.head=e.next)&&(this.tail=null),e.item}};var Od,Ld,Nd,Pd,xd,Md=Dd,Ud=/ipad|iphone|ipod/i.test(Y)&&"undefined"!=typeof Pebble,Bd=/web0s(?!.*chrome)/i.test(Y),Fd=i,Vd=Cd,Hd=Xl,jd=Sd.set,zd=Md,Wd=Ql,Gd=Ud,qd=Bd,Kd=ts,Yd=Fd.MutationObserver||Fd.WebKitMutationObserver,Xd=Fd.document,Zd=Fd.process,Jd=Fd.Promise,Qd=Vd("queueMicrotask");if(!Qd){var $d=new zd,eu=function(){var e,t;for(Kd&&(e=Zd.domain)&&e.exit();t=$d.get();)try{t()}catch(QM){throw $d.head&&Od(),QM}e&&e.enter()};Wd||Kd||qd||!Yd||!Xd?!Gd&&Jd&&Jd.resolve?((Pd=Jd.resolve(void 0)).constructor=Jd,xd=Hd(Pd.then,Pd),Od=function(){xd(eu)}):Kd?Od=function(){Zd.nextTick(eu)}:(jd=Hd(jd,Fd),Od=function(){jd(eu)}):(Ld=!0,Nd=Xd.createTextNode(""),new Yd(eu).observe(Nd,{characterData:!0}),Od=function(){Nd.data=Ld=!Ld}),Qd=function(e){$d.head||Od(),$d.add(e)}}var tu=Qd,iu=function(e){try{return{error:!1,value:e()}}catch(QM){return{error:!0,value:QM}}},ru=i.Promise,nu=i,au=ru,ou=F,su=qr,cu=si,lu=tt,du=es,uu=te;au&&au.prototype;var hu=lu("species"),pu=!1,fu=ou(nu.PromiseRejectionEvent),mu=su("Promise",function(){var e=cu(au),t=e!==String(au);if(!t&&66===uu)return!0;if(!uu||uu<51||!/native code/.test(e)){var i=new au(function(e){e(1)}),r=function(e){e(function(){},function(){})};if((i.constructor={})[hu]=r,!(pu=i.then(function(){})instanceof r))return!0}return!(t||"BROWSER"!==du&&"DENO"!==du||fu)}),gu={CONSTRUCTOR:mu,REJECTION_EVENT:fu,SUBCLASSING:pu},vu={},_u=ve,yu=TypeError,Eu=function(e){var t,i;this.promise=new e(function(e,r){if(void 0!==t||void 0!==i)throw new yu("Bad Promise constructor");t=e,i=r}),this.resolve=_u(t),this.reject=_u(i)};vu.f=function(e){return new Eu(e)};var bu,wu,Iu,Tu,Su=en,Au=ts,Ru=i,ku=fl,Cu=l,Du=Ji,Ou=no,Lu=Va,Nu=Xc,Pu=ve,xu=F,Mu=H,Uu=ms,Bu=Vl,Fu=Sd.set,Vu=tu,Hu=function(e,t){try{1===arguments.length?console.error(e):console.error(e,t)}catch(QM){}},ju=iu,zu=Md,Wu=ki,Gu=ru,qu=vu,Ku="Promise",Yu=gu.CONSTRUCTOR,Xu=gu.REJECTION_EVENT,Zu=gu.SUBCLASSING,Ju=Wu.getterFor(Ku),Qu=Wu.set,$u=Gu&&Gu.prototype,eh=Gu,th=$u,ih=Ru.TypeError,rh=Ru.document,nh=Ru.process,ah=qu.f,oh=ah,sh=!!(rh&&rh.createEvent&&Ru.dispatchEvent),ch="unhandledrejection",lh=function(e){var t;return!(!Mu(e)||!xu(t=e.then))&&t},dh=function(e,t){var i,r,n,a=t.value,o=1===t.state,s=o?e.ok:e.fail,c=e.resolve,l=e.reject,d=e.domain;try{s?(o||(2===t.rejection&&mh(t),t.rejection=1),!0===s?i=a:(d&&d.enter(),i=s(a),d&&(d.exit(),n=!0)),i===e.promise?l(new ih("Promise-chain cycle")):(r=lh(i))?Cu(r,i,c,l):c(i)):l(a)}catch(QM){d&&!n&&d.exit(),l(QM)}},uh=function(e,t){e.notified||(e.notified=!0,Vu(function(){for(var i,r=e.reactions;i=r.get();)dh(i,e);e.notified=!1,t&&!e.rejection&&ph(e)}))},hh=function(e,t,i){var r,n;sh?((r=rh.createEvent("Event")).promise=t,r.reason=i,r.initEvent(e,!1,!0),Ru.dispatchEvent(r)):r={promise:t,reason:i},!Xu&&(n=Ru["on"+e])?n(r):e===ch&&Hu("Unhandled promise rejection",i)},ph=function(e){Cu(Fu,Ru,function(){var t,i=e.facade,r=e.value;if(fh(e)&&(t=ju(function(){Au?nh.emit("unhandledRejection",r,i):hh(ch,i,r)}),e.rejection=Au||fh(e)?2:1,t.error))throw t.value})},fh=function(e){return 1!==e.rejection&&!e.parent},mh=function(e){Cu(Fu,Ru,function(){var t=e.facade;Au?nh.emit("rejectionHandled",t):hh("rejectionhandled",t,e.value)})},gh=function(e,t,i){return function(r){e(t,r,i)}},vh=function(e,t,i){e.done||(e.done=!0,i&&(e=i),e.value=t,e.state=2,uh(e,!0))},_h=function(e,t,i){if(!e.done){e.done=!0,i&&(e=i);try{if(e.facade===t)throw new ih("Promise can't be resolved itself");var r=lh(t);r?Vu(function(){var i={done:!1};try{Cu(r,t,gh(_h,i,e),gh(vh,i,e))}catch(QM){vh(i,QM,e)}}):(e.value=t,e.state=1,uh(e,!1))}catch(QM){vh({done:!1},QM,e)}}};if(Yu&&(th=(eh=function(e){Uu(this,th),Pu(e),Cu(bu,this);var t=Ju(this);try{e(gh(_h,t),gh(vh,t))}catch(QM){vh(t,QM)}}).prototype,(bu=function(e){Qu(this,{type:Ku,done:!1,notified:!1,parent:!1,reactions:new zu,rejection:!1,state:0,value:null})}).prototype=Du(th,"then",function(e,t){var i=Ju(this),r=ah(Bu(this,eh));return i.parent=!0,r.ok=!xu(e)||e,r.fail=xu(t)&&t,r.domain=Au?nh.domain:void 0,0===i.state?i.reactions.add(r):Vu(function(){dh(r,i)}),r.promise}),wu=function(){var e=new bu,t=Ju(e);this.promise=e,this.resolve=gh(_h,t),this.reject=gh(vh,t)},qu.f=ah=function(e){return e===eh||e===Iu?new wu(e):oh(e)},xu(Gu)&&$u!==Object.prototype)){Tu=$u.then,Zu||Du($u,"then",function(e,t){var i=this;return new eh(function(e,t){Cu(Tu,i,e,t)}).then(e,t)},{unsafe:!0});try{delete $u.constructor}catch(QM){}Ou&&Ou($u,th)}Su({global:!0,constructor:!0,wrap:!0,forced:Yu},{Promise:eh}),Iu=ku.Promise,Lu(eh,Ku,!1),Nu(Ku);var yh=_a,Eh=tt("iterator"),bh=Array.prototype,wh=function(e){return void 0!==e&&(yh.Array===e||bh[Eh]===e)},Ih=ln,Th=Ee,Sh=O,Ah=_a,Rh=tt("iterator"),kh=function(e){if(!Sh(e))return Th(e,Rh)||Th(e,"@@iterator")||Ah[Ih(e)]},Ch=l,Dh=ve,Oh=Nt,Lh=pe,Nh=kh,Ph=TypeError,xh=function(e,t){var i=arguments.length<2?Nh(e):t;if(Dh(i))return Oh(Ch(i,e));throw new Ph(Lh(e)+" is not iterable")},Mh=l,Uh=Nt,Bh=Ee,Fh=function(e,t,i){var r,n;Uh(e);try{if(!(r=Bh(e,"return"))){if("throw"===t)throw i;return i}r=Mh(r,e)}catch(QM){n=!0,r=QM}if("throw"===t)throw i;if(n)throw r;return Uh(r),i},Vh=Xl,Hh=l,jh=Nt,zh=pe,Wh=wh,Gh=ur,qh=G,Kh=xh,Yh=kh,Xh=Fh,Zh=TypeError,Jh=function(e,t){this.stopped=e,this.result=t},Qh=Jh.prototype,$h=function(e,t,i){var r,n,a,o,s,c,l,d=i&&i.that,u=!(!i||!i.AS_ENTRIES),h=!(!i||!i.IS_RECORD),p=!(!i||!i.IS_ITERATOR),f=!(!i||!i.INTERRUPTED),m=Vh(t,d),g=function(e){return r&&Xh(r,"normal"),new Jh(!0,e)},v=function(e){return u?(jh(e),f?m(e[0],e[1],g):m(e[0],e[1])):f?m(e,g):m(e)};if(h)r=e.iterator;else if(p)r=e;else{if(!(n=Yh(e)))throw new Zh(zh(e)+" is not iterable");if(Wh(n)){for(a=0,o=Gh(e);o>a;a++)if((s=v(e[a]))&&qh(Qh,s))return s;return new Jh(!1)}r=Kh(e,n)}for(c=h?e.next:r.next;!(l=Hh(c,r)).done;){try{s=v(l.value)}catch(QM){Xh(r,"throw",QM)}if("object"==typeof s&&s&&qh(Qh,s))return s}return new Jh(!1)},ep=tt("iterator"),tp=!1;try{var ip=0,rp={next:function(){return{done:!!ip++}},return:function(){tp=!0}};rp[ep]=function(){return this},Array.from(rp,function(){throw 2})}catch(QM){}var np=function(e,t){try{if(!t&&!tp)return!1}catch(QM){return!1}var i=!1;try{var r={};r[ep]=function(){return{next:function(){return{done:i=!0}}}},e(r)}catch(QM){}return i},ap=ru,op=gu.CONSTRUCTOR||!np(function(e){ap.all(e).then(void 0,function(){})}),sp=l,cp=ve,lp=vu,dp=iu,up=$h;en({target:"Promise",stat:!0,forced:op},{all:function(e){var t=this,i=lp.f(t),r=i.resolve,n=i.reject,a=dp(function(){var i=cp(t.resolve),a=[],o=0,s=1;up(e,function(e){var c=o++,l=!1;s++,sp(i,t,e).then(function(e){l||(l=!0,a[c]=e,--s||r(a))},n)}),--s||r(a)});return a.error&&n(a.value),i.promise}});var hp=en,pp=gu.CONSTRUCTOR,fp=ru,mp=W,gp=F,vp=Ji,_p=fp&&fp.prototype;if(hp({target:"Promise",proto:!0,forced:pp,real:!0},{catch:function(e){return this.then(void 0,e)}}),gp(fp)){var yp=mp("Promise").prototype.catch;_p.catch!==yp&&vp(_p,"catch",yp,{unsafe:!0})}var Ep=l,bp=ve,wp=vu,Ip=iu,Tp=$h;en({target:"Promise",stat:!0,forced:op},{race:function(e){var t=this,i=wp.f(t),r=i.reject,n=Ip(function(){var n=bp(t.resolve);Tp(e,function(e){Ep(n,t,e).then(i.resolve,r)})});return n.error&&r(n.value),i.promise}});var Sp=vu;en({target:"Promise",stat:!0,forced:gu.CONSTRUCTOR},{reject:function(e){var t=Sp.f(this);return(0,t.reject)(e),t.promise}});var Ap=Nt,Rp=H,kp=vu,Cp=function(e,t){if(Ap(e),Rp(t)&&t.constructor===e)return t;var i=kp.f(e);return(0,i.resolve)(t),i.promise},Dp=en,Op=gu.CONSTRUCTOR,Lp=Cp;W("Promise"),Dp({target:"Promise",stat:!0,forced:Op},{resolve:function(e){return Lp(this,e)}});var Np=en,Pp=ru,xp=n,Mp=W,Up=F,Bp=Vl,Fp=Cp,Vp=Ji,Hp=Pp&&Pp.prototype;if(Np({target:"Promise",proto:!0,real:!0,forced:!!Pp&&xp(function(){Hp.finally.call({then:function(){}},function(){})})},{finally:function(e){var t=Bp(this,Mp("Promise")),i=Up(e);return this.then(i?function(i){return Fp(t,e()).then(function(){return i})}:e,i?function(i){return Fp(t,e()).then(function(){throw i})}:e)}}),Up(Pp)){var jp=Mp("Promise").prototype.finally;Hp.finally!==jp&&Vp(Hp,"finally",jp,{unsafe:!0})}var zp=H,Wp=S,Gp=tt("match"),qp=function(e){var t;return zp(e)&&(void 0!==(t=e[Gp])?!!t:"RegExp"===Wp(e))},Kp=n,Yp=i.RegExp,Xp=!Kp(function(){var e=!0;try{Yp(".","d")}catch(QM){e=!1}var t={},i="",r=e?"dgimsy":"gimsy",n=function(e,r){Object.defineProperty(t,e,{get:function(){return i+=r,!0}})},a={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};for(var o in e&&(a.hasIndices="d"),a)n(o,a[o]);return Object.getOwnPropertyDescriptor(Yp.prototype,"flags").get.call(t)!==r||i!==r}),Zp={correct:Xp},Jp=Nt,Qp=function(){var e=Jp(this),t="";return e.hasIndices&&(t+="d"),e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.unicodeSets&&(t+="v"),e.sticky&&(t+="y"),t},$p=l,ef=He,tf=G,rf=Zp,nf=Qp,af=RegExp.prototype,of=rf.correct?function(e){return e.flags}:function(e){return rf.correct||!tf(af,e)||ef(e,"flags")?e.flags:$p(nf,e)},sf=n,cf=i.RegExp,lf=sf(function(){var e=cf("a","y");return e.lastIndex=2,null!==e.exec("abcd")}),df=lf||sf(function(){return!cf("a","y").sticky}),uf=lf||sf(function(){var e=cf("^r","gy");return e.lastIndex=2,null!==e.exec("str")}),hf={BROKEN_CARET:uf,MISSED_STICKY:df,UNSUPPORTED_Y:lf},pf=kt.f,ff=n,mf=i.RegExp,gf=ff(function(){var e=mf(".","s");return!(e.dotAll&&e.test("\n")&&"s"===e.flags)}),vf=n,_f=i.RegExp,yf=vf(function(){var e=_f("(?<a>b)","g");return"b"!==e.exec("b").groups.a||"bc"!=="b".replace(e,"$<a>c")}),Ef=a,bf=i,wf=b,If=qr,Tf=js,Sf=Kt,Af=oa,Rf=Qi.f,kf=G,Cf=qp,Df=hn,Of=of,Lf=hf,Nf=function(e,t,i){i in e||pf(e,i,{configurable:!0,get:function(){return t[i]},set:function(e){t[i]=e}})},Pf=Ji,xf=n,Mf=He,Uf=ki.enforce,Bf=Xc,Ff=gf,Vf=yf,Hf=tt("match"),jf=bf.RegExp,zf=jf.prototype,Wf=bf.SyntaxError,Gf=wf(zf.exec),qf=wf("".charAt),Kf=wf("".replace),Yf=wf("".indexOf),Xf=wf("".slice),Zf=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,Jf=/a/g,Qf=/a/g,$f=new jf(Jf)!==Jf,em=Lf.MISSED_STICKY,tm=Lf.UNSUPPORTED_Y,im=Ef&&(!$f||em||Ff||Vf||xf(function(){return Qf[Hf]=!1,jf(Jf)!==Jf||jf(Qf)===Qf||"/a/i"!==String(jf(Jf,"i"))}));if(If("RegExp",im)){for(var rm=function(e,t){var i,r,n,a,o,s,c=kf(zf,this),l=Cf(e),d=void 0===t,u=[],h=e;if(!c&&l&&d&&e.constructor===rm)return e;if((l||kf(zf,e))&&(e=e.source,d&&(t=Of(h))),e=void 0===e?"":Df(e),t=void 0===t?"":Df(t),h=e,Ff&&"dotAll"in Jf&&(r=!!t&&Yf(t,"s")>-1)&&(t=Kf(t,/s/g,"")),i=t,em&&"sticky"in Jf&&(n=!!t&&Yf(t,"y")>-1)&&tm&&(t=Kf(t,/y/g,"")),Vf&&(a=function(e){for(var t,i=e.length,r=0,n="",a=[],o=Af(null),s=!1,c=!1,l=0,d="";r<i;r++){if("\\"===(t=qf(e,r)))t+=qf(e,++r);else if("]"===t)s=!1;else if(!s)switch(!0){case"["===t:s=!0;break;case"("===t:if(n+=t,"?:"===Xf(e,r+1,r+3))continue;Gf(Zf,Xf(e,r+1))&&(r+=2,c=!0),l++;continue;case">"===t&&c:if(""===d||Mf(o,d))throw new Wf("Invalid capture group name");o[d]=!0,a[a.length]=[d,l],c=!1,d="";continue}c?d+=t:n+=t}return[n,a]}(e),e=a[0],u=a[1]),o=Tf(jf(e,t),c?this:zf,rm),(r||n||u.length)&&(s=Uf(o),r&&(s.dotAll=!0,s.raw=rm(function(e){for(var t,i=e.length,r=0,n="",a=!1;r<i;r++)"\\"!==(t=qf(e,r))?a||"."!==t?("["===t?a=!0:"]"===t&&(a=!1),n+=t):n+="[\\s\\S]":n+=t+qf(e,++r);return n}(e),i)),n&&(s.sticky=!0),u.length&&(s.groups=u)),e!==h)try{Sf(o,"source",""===h?"(?:)":h)}catch(QM){}return o},nm=Rf(jf),am=0;nm.length>am;)Nf(rm,jf,nm[am++]);zf.constructor=rm,rm.prototype=zf,Pf(bf,"RegExp",rm,{constructor:!0})}Bf("RegExp");var om=l,sm=b,cm=hn,lm=Qp,dm=hf,um=oa,hm=ki.get,pm=gf,fm=yf,mm=xe("native-string-replace",String.prototype.replace),gm=RegExp.prototype.exec,vm=gm,_m=sm("".charAt),ym=sm("".indexOf),Em=sm("".replace),bm=sm("".slice),wm=function(){var e=/a/,t=/b*/g;return om(gm,e,"a"),om(gm,t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),Im=dm.BROKEN_CARET,Tm=void 0!==/()??/.exec("")[1];(wm||Tm||Im||pm||fm)&&(vm=function(e){var t,i,r,n,a,o,s,c=this,l=hm(c),d=cm(e),u=l.raw;if(u)return u.lastIndex=c.lastIndex,t=om(vm,u,d),c.lastIndex=u.lastIndex,t;var h=l.groups,p=Im&&c.sticky,f=om(lm,c),m=c.source,g=0,v=d;if(p&&(f=Em(f,"y",""),-1===ym(f,"g")&&(f+="g"),v=bm(d,c.lastIndex),c.lastIndex>0&&(!c.multiline||c.multiline&&"\n"!==_m(d,c.lastIndex-1))&&(m="(?: "+m+")",v=" "+v,g++),i=new RegExp("^(?:"+m+")",f)),Tm&&(i=new RegExp("^"+m+"$(?!\\s)",f)),wm&&(r=c.lastIndex),n=om(gm,p?i:c,v),p?n?(n.input=bm(n.input,g),n[0]=bm(n[0],g),n.index=c.lastIndex,c.lastIndex+=n[0].length):c.lastIndex=0:wm&&n&&(c.lastIndex=c.global?n.index+n[0].length:r),Tm&&n&&n.length>1&&om(mm,n[0],i,function(){for(a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(n[a]=void 0)}),n&&h)for(n.groups=o=um(null),a=0;a<h.length;a++)o[(s=h[a])[0]]=n[s[1]];return n});var Sm=vm;en({target:"RegExp",proto:!0,forced:/./.exec!==Sm},{exec:Sm});var Am=mn,Rm=Zp,km=Qp;a&&!Rm.correct&&(Am(RegExp.prototype,"flags",{configurable:!0,get:km}),Rm.correct=!0);var Cm=ir,Dm=hn,Om=P,Lm=RangeError,Nm=b,Pm=lr,xm=hn,Mm=P,Um=Nm(function(e){var t=Dm(Om(this)),i="",r=Cm(e);if(r<0||Infinity===r)throw new Lm("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))1&r&&(i+=t);return i}),Bm=Nm("".slice),Fm=Math.ceil,Vm=function(e){return function(t,i,r){var n,a,o=xm(Mm(t)),s=Pm(i),c=o.length,l=void 0===r?" ":xm(r);return s<=c||""===l?o:((a=Um(l,Fm((n=s-c)/l.length))).length>n&&(a=Bm(a,0,n)),e?o+a:a+o)}},Hm={start:Vm(!1),end:Vm(!0)},jm=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(Y),zm=Hm.start;en({target:"String",proto:!0,forced:jm},{padStart:function(e){return zm(this,e,arguments.length>1?arguments[1]:void 0)}});var Wm=l,Gm=Ji,qm=Sm,Km=n,Ym=tt,Xm=Kt,Zm=Ym("species"),Jm=RegExp.prototype,Qm=b,$m=ir,eg=hn,tg=P,ig=Qm("".charAt),rg=Qm("".charCodeAt),ng=Qm("".slice),ag=function(e){return function(t,i){var r,n,a=eg(tg(t)),o=$m(i),s=a.length;return o<0||o>=s?e?"":void 0:(r=rg(a,o))<55296||r>56319||o+1===s||(n=rg(a,o+1))<56320||n>57343?e?ig(a,o):r:e?ng(a,o,o+2):n-56320+(r-55296<<10)+65536}},og={codeAt:ag(!1),charAt:ag(!0)},sg=og.charAt,cg=b,lg=Be,dg=Math.floor,ug=cg("".charAt),hg=cg("".replace),pg=cg("".slice),fg=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,mg=/\$([$&'`]|\d{1,2})/g,gg=function(e,t,i,r,n,a){var o=i+e.length,s=r.length,c=mg;return void 0!==n&&(n=lg(n),c=fg),hg(a,c,function(a,c){var l;switch(ug(c,0)){case"$":return"$";case"&":return e;case"`":return pg(t,0,i);case"'":return pg(t,o);case"<":l=n[pg(c,1,-1)];break;default:var d=+c;if(0===d)return a;if(d>s){var u=dg(d/10);return 0===u?a:u<=s?void 0===r[u-1]?ug(c,1):r[u-1]+ug(c,1):a}l=r[d-1]}return void 0===l?"":l})},vg=l,_g=Nt,yg=F,Eg=S,bg=Sm,wg=TypeError,Ig=Gl,Tg=l,Sg=b,Ag=function(e,t,i,r){var n=Ym(e),a=!Km(function(){var t={};return t[n]=function(){return 7},7!==""[e](t)}),o=a&&!Km(function(){var t=!1,i=/a/;if("split"===e){var r={};r[Zm]=function(){return i},(i={constructor:r,flags:""})[n]=/./[n]}return i.exec=function(){return t=!0,null},i[n](""),!t});if(!a||!o||i){var s=/./[n],c=t(n,""[e],function(e,t,i,r,n){var o=t.exec;return o===qm||o===Jm.exec?a&&!n?{done:!0,value:Wm(s,t,i,r)}:{done:!0,value:Wm(e,i,t,r)}:{done:!1}});Gm(String.prototype,e,c[0]),Gm(Jm,n,c[1])}r&&Xm(Jm[n],"sham",!0)},Rg=n,kg=Nt,Cg=F,Dg=H,Og=ir,Lg=lr,Ng=hn,Pg=P,xg=function(e,t,i){return t+(i?sg(e,t).length:1)},Mg=Ee,Ug=gg,Bg=of,Fg=function(e,t){var i=e.exec;if(yg(i)){var r=vg(i,e,t);return null!==r&&_g(r),r}if("RegExp"===Eg(e))return vg(bg,e,t);throw new wg("RegExp#exec called on incompatible receiver")},Vg=tt("replace"),Hg=Math.max,jg=Math.min,zg=Sg([].concat),Wg=Sg([].push),Gg=Sg("".indexOf),qg=Sg("".slice),Kg=function(e){return void 0===e?e:String(e)},Yg="$0"==="a".replace(/./,"$0"),Xg=!!/./[Vg]&&""===/./[Vg]("a","$0"),Zg=!Rg(function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")});Ag("replace",function(e,t,i){var r=Xg?"$":"$0";return[function(e,i){var r=Pg(this),n=Dg(e)?Mg(e,Vg):void 0;return n?Tg(n,e,r,i):Tg(t,Ng(r),e,i)},function(e,n){var a=kg(this),o=Ng(e);if("string"==typeof n&&-1===Gg(n,r)&&-1===Gg(n,"$<")){var s=i(t,a,o,n);if(s.done)return s.value}var c=Cg(n);c||(n=Ng(n));var l,d=Ng(Bg(a)),u=-1!==Gg(d,"g");u&&(l=-1!==Gg(d,"u"),a.lastIndex=0);for(var h,p=[];null!==(h=Fg(a,o))&&(Wg(p,h),u);){""===Ng(h[0])&&(a.lastIndex=xg(o,Lg(a.lastIndex),l))}for(var f="",m=0,g=0;g<p.length;g++){for(var v,_=Ng((h=p[g])[0]),y=Hg(jg(Og(h.index),o.length),0),E=[],b=1;b<h.length;b++)Wg(E,Kg(h[b]));var w=h.groups;if(c){var I=zg([_],E,y,o);void 0!==w&&Wg(I,w),v=Ng(Ig(n,void 0,I))}else v=Ug(_,o,y,E,w,n);y>=m&&(f+=qg(o,m,y)+v,m=y+_.length)}return f+qg(o,m)}]},!Zg||!Yg||Xg);var Jg="\t\n\v\f\r                 \u2028\u2029\ufeff",Qg=P,$g=hn,ev=Jg,tv=b("".replace),iv=RegExp("^["+ev+"]+"),rv=RegExp("(^|[^"+ev+"])["+ev+"]+$"),nv=function(e){return function(t){var i=$g(Qg(t));return 1&e&&(i=tv(i,iv,"")),2&e&&(i=tv(i,rv,"$1")),i}},av={start:nv(1),end:nv(2),trim:nv(3)},ov=ei.PROPER,sv=n,cv=Jg,lv=av.trim;en({target:"String",proto:!0,forced:function(e){return sv(function(){return!!cv[e]()||"​…᠎"!=="​…᠎"[e]()||ov&&cv[e].name!==e})}("trim")},{trim:function(){return lv(this)}});var dv,uv,hv,pv={exports:{}},fv=ds,mv=a,gv=i,vv=F,_v=H,yv=He,Ev=ln,bv=pe,wv=Kt,Iv=Ji,Tv=mn,Sv=G,Av=Ra,Rv=no,kv=tt,Cv=qe,Dv=ki.enforce,Ov=ki.get,Lv=gv.Int8Array,Nv=Lv&&Lv.prototype,Pv=gv.Uint8ClampedArray,xv=Pv&&Pv.prototype,Mv=Lv&&Av(Lv),Uv=Nv&&Av(Nv),Bv=Object.prototype,Fv=gv.TypeError,Vv=kv("toStringTag"),Hv=Cv("TYPED_ARRAY_TAG"),jv="TypedArrayConstructor",zv=fv&&!!Rv&&"Opera"!==Ev(gv.opera),Wv=!1,Gv={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},qv={BigInt64Array:8,BigUint64Array:8},Kv=function(e){var t=Av(e);if(_v(t)){var i=Ov(t);return i&&yv(i,jv)?i[jv]:Kv(t)}},Yv=function(e){if(!_v(e))return!1;var t=Ev(e);return yv(Gv,t)||yv(qv,t)};for(dv in Gv)(hv=(uv=gv[dv])&&uv.prototype)?Dv(hv)[jv]=uv:zv=!1;for(dv in qv)(hv=(uv=gv[dv])&&uv.prototype)&&(Dv(hv)[jv]=uv);if((!zv||!vv(Mv)||Mv===Function.prototype)&&(Mv=function(){throw new Fv("Incorrect invocation")},zv))for(dv in Gv)gv[dv]&&Rv(gv[dv],Mv);if((!zv||!Uv||Uv===Bv)&&(Uv=Mv.prototype,zv))for(dv in Gv)gv[dv]&&Rv(gv[dv].prototype,Uv);if(zv&&Av(xv)!==Uv&&Rv(xv,Uv),mv&&!yv(Uv,Vv))for(dv in Wv=!0,Tv(Uv,Vv,{configurable:!0,get:function(){return _v(this)?this[Hv]:void 0}}),Gv)gv[dv]&&wv(gv[dv],Hv,dv);var Xv={NATIVE_ARRAY_BUFFER_VIEWS:zv,TYPED_ARRAY_TAG:Wv&&Hv,aTypedArray:function(e){if(Yv(e))return e;throw new Fv("Target is not a typed array")},aTypedArrayConstructor:function(e){if(vv(e)&&(!Rv||Sv(Mv,e)))return e;throw new Fv(bv(e)+" is not a typed array constructor")},exportTypedArrayMethod:function(e,t,i,r){if(mv){if(i)for(var n in Gv){var a=gv[n];if(a&&yv(a.prototype,e))try{delete a.prototype[e]}catch(QM){try{a.prototype[e]=t}catch(o){}}}Uv[e]&&!i||Iv(Uv,e,i?t:zv&&Nv[e]||t,r)}},exportTypedArrayStaticMethod:function(e,t,i){var r,n;if(mv){if(Rv){if(i)for(r in Gv)if((n=gv[r])&&yv(n,e))try{delete n[e]}catch(QM){}if(Mv[e]&&!i)return;try{return Iv(Mv,e,i?t:zv&&Mv[e]||t)}catch(QM){}}for(r in Gv)!(n=gv[r])||n[e]&&!i||Iv(n,e,t)}},getTypedArrayConstructor:Kv,isView:function(e){if(!_v(e))return!1;var t=Ev(e);return"DataView"===t||yv(Gv,t)||yv(qv,t)},isTypedArray:Yv,TypedArray:Mv,TypedArrayPrototype:Uv},Zv=i,Jv=n,Qv=np,$v=Xv.NATIVE_ARRAY_BUFFER_VIEWS,e_=Zv.ArrayBuffer,t_=Zv.Int8Array,i_=!$v||!Jv(function(){t_(1)})||!Jv(function(){new t_(-1)})||!Qv(function(e){new t_,new t_(null),new t_(1.5),new t_(e)},!0)||Jv(function(){return 1!==new t_(new e_(2),1,void 0).length}),r_=H,n_=Math.floor,a_=Number.isInteger||function(e){return!r_(e)&&isFinite(e)&&n_(e)===e},o_=ir,s_=RangeError,c_=function(e){var t=o_(e);if(t<0)throw new s_("The argument can't be less than 0");return t},l_=RangeError,d_=function(e,t){var i=c_(e);if(i%t)throw new l_("Wrong offset");return i},u_=Math.round,h_=ln,p_=lt,f_=TypeError,m_=function(e){var t=p_(e,"number");if("number"==typeof t)throw new f_("Can't convert number to bigint");return BigInt(t)},g_=Xl,v_=l,__=xl,y_=Be,E_=ur,b_=xh,w_=kh,I_=wh,T_=function(e){var t=h_(e);return"BigInt64Array"===t||"BigUint64Array"===t},S_=Xv.aTypedArrayConstructor,A_=m_,R_=function(e){var t,i,r,n,a,o,s,c,l=__(this),d=y_(e),u=arguments.length,h=u>1?arguments[1]:void 0,p=void 0!==h,f=w_(d);if(f&&!I_(f))for(c=(s=b_(d,f)).next,d=[];!(o=v_(c,s)).done;)d.push(o.value);for(p&&u>2&&(h=g_(h,arguments[2])),i=E_(d),r=new(S_(l))(i),n=T_(r),t=0;i>t;t++)a=p?h(d[t],t):d[t],r[t]=n?A_(a):+a;return r},k_=as,C_=Ol,D_=H,O_=tt("species"),L_=Array,N_=function(e){var t;return k_(e)&&(t=e.constructor,(C_(t)&&(t===L_||k_(t.prototype))||D_(t)&&null===(t=t[O_]))&&(t=void 0)),void 0===t?L_:t},P_=a,x_=kt,M_=g,U_=function(e,t,i){P_?x_.f(e,t,M_(0,i)):e[t]=i},B_=Xl,F_=D,V_=Be,H_=ur,j_=function(e,t){return new(N_(e))(0===t?0:t)},z_=U_,W_=function(e){var t=1===e,i=2===e,r=3===e,n=4===e,a=6===e,o=7===e,s=5===e||a;return function(c,l,d){for(var u,h,p=V_(c),f=F_(p),m=H_(f),g=B_(l,d),v=0,_=0,y=t?j_(c,m):i||o?j_(c,0):void 0;m>v;v++)if((s||v in f)&&(h=g(u=f[v],v,p),e))if(t)z_(y,v,h);else if(h)switch(e){case 3:return!0;case 5:return u;case 6:return v;case 2:z_(y,_++,u)}else switch(e){case 4:return!1;case 7:z_(y,_++,u)}return a?-1:r||n?n:y}},G_={forEach:W_(0),map:W_(1),filter:W_(2),some:W_(3),every:W_(4),find:W_(5),findIndex:W_(6),filterReject:W_(7)},q_=ur,K_=en,Y_=i,X_=l,Z_=a,J_=i_,Q_=Xv,$_=Wc,ey=ms,ty=g,iy=Kt,ry=a_,ny=lr,ay=ys,oy=d_,sy=function(e){var t=u_(e);return t<0?0:t>255?255:255&t},cy=ht,ly=He,dy=ln,uy=H,hy=ue,py=oa,fy=G,my=no,gy=Qi.f,vy=R_,_y=G_.forEach,yy=Xc,Ey=mn,by=kt,wy=r,Iy=function(e,t,i){for(var r=0,n=arguments.length>2?i:q_(t),a=new e(n);n>r;)a[r]=t[r++];return a},Ty=js,Sy=ki.get,Ay=ki.set,Ry=ki.enforce,ky=by.f,Cy=wy.f,Dy=Y_.RangeError,Oy=$_.ArrayBuffer,Ly=Oy.prototype,Ny=$_.DataView,Py=Q_.NATIVE_ARRAY_BUFFER_VIEWS,xy=Q_.TYPED_ARRAY_TAG,My=Q_.TypedArray,Uy=Q_.TypedArrayPrototype,By=Q_.isTypedArray,Fy="BYTES_PER_ELEMENT",Vy="Wrong length",Hy=function(e,t){Ey(e,t,{configurable:!0,get:function(){return Sy(this)[t]}})},jy=function(e){var t;return fy(Ly,e)||"ArrayBuffer"===(t=dy(e))||"SharedArrayBuffer"===t},zy=function(e,t){return By(e)&&!hy(t)&&t in e&&ry(+t)&&t>=0},Wy=function(e,t){return t=cy(t),zy(e,t)?ty(2,e[t]):Cy(e,t)},Gy=function(e,t,i){return t=cy(t),!(zy(e,t)&&uy(i)&&ly(i,"value"))||ly(i,"get")||ly(i,"set")||i.configurable||ly(i,"writable")&&!i.writable||ly(i,"enumerable")&&!i.enumerable?ky(e,t,i):(e[t]=i.value,e)};Z_?(Py||(wy.f=Wy,by.f=Gy,Hy(Uy,"buffer"),Hy(Uy,"byteOffset"),Hy(Uy,"byteLength"),Hy(Uy,"length")),K_({target:"Object",stat:!0,forced:!Py},{getOwnPropertyDescriptor:Wy,defineProperty:Gy}),pv.exports=function(e,t,i){var r=e.match(/\d+/)[0]/8,n=e+(i?"Clamped":"")+"Array",a="get"+e,o="set"+e,s=Y_[n],c=s,l=c&&c.prototype,d={},u=function(e,t){ky(e,t,{get:function(){return function(e,t){var i=Sy(e);return i.view[a](t*r+i.byteOffset,!0)}(this,t)},set:function(e){return function(e,t,n){var a=Sy(e);a.view[o](t*r+a.byteOffset,i?sy(n):n,!0)}(this,t,e)},enumerable:!0})};Py?J_&&(c=t(function(e,t,i,n){return ey(e,l),Ty(uy(t)?jy(t)?void 0!==n?new s(t,oy(i,r),n):void 0!==i?new s(t,oy(i,r)):new s(t):By(t)?Iy(c,t):X_(vy,c,t):new s(ay(t)),e,c)}),my&&my(c,My),_y(gy(s),function(e){e in c||iy(c,e,s[e])}),c.prototype=l):(c=t(function(e,t,i,n){ey(e,l);var a,o,s,d=0,h=0;if(uy(t)){if(!jy(t))return By(t)?Iy(c,t):X_(vy,c,t);a=t,h=oy(i,r);var p=t.byteLength;if(void 0===n){if(p%r)throw new Dy(Vy);if((o=p-h)<0)throw new Dy(Vy)}else if((o=ny(n)*r)+h>p)throw new Dy(Vy);s=o/r}else s=ay(t),a=new Oy(o=s*r);for(Ay(e,{buffer:a,byteOffset:h,byteLength:o,length:s,view:new Ny(a)});d<s;)u(e,d++)}),my&&my(c,My),l=c.prototype=py(Uy)),l.constructor!==c&&iy(l,"constructor",c),Ry(l).TypedArrayConstructor=c,xy&&iy(l,xy,n);var h=c!==s;d[n]=c,K_({global:!0,constructor:!0,forced:h,sham:!Py},d),Fy in c||iy(c,Fy,r),Fy in l||iy(l,Fy,r),yy(n)}):pv.exports=function(){};var qy=pv.exports;qy("Float32",function(e){return function(t,i,r){return e(this,t,i,r)}}),qy("Int32",function(e){return function(t,i,r){return e(this,t,i,r)}}),qy("Uint8",function(e){return function(t,i,r){return e(this,t,i,r)}}),qy("Uint16",function(e){return function(t,i,r){return e(this,t,i,r)}}),qy("Uint32",function(e){return function(t,i,r){return e(this,t,i,r)}});var Ky=Us,Yy=m_,Xy=ln,Zy=l,Jy=n,Qy=Xv.aTypedArray,$y=Xv.exportTypedArrayMethod,eE=b("".slice);$y("fill",function(e){var t=arguments.length;Qy(this);var i="Big"===eE(Xy(this),0,3)?Yy(e):+e;return Zy(Ky,this,i,t>1?arguments[1]:void 0,t>2?arguments[2]:void 0)},Jy(function(){var e=0;return new Int8Array(2).fill({valueOf:function(){return e++}}),1!==e})),(0,Xv.exportTypedArrayStaticMethod)("from",R_,i_);var tE=i,iE=l,rE=Xv,nE=ur,aE=d_,oE=Be,sE=n,cE=tE.RangeError,lE=tE.Int8Array,dE=lE&&lE.prototype,uE=dE&&dE.set,hE=rE.aTypedArray,pE=rE.exportTypedArrayMethod,fE=!sE(function(){var e=new Uint8ClampedArray(2);return iE(uE,e,{length:1,0:3},1),3!==e[1]}),mE=fE&&rE.NATIVE_ARRAY_BUFFER_VIEWS&&sE(function(){var e=new lE(2);return e.set(1),e.set("2",1),0!==e[0]||2!==e[1]});pE("set",function(e){hE(this);var t=aE(arguments.length>1?arguments[1]:void 0,1),i=oE(e);if(fE)return iE(uE,this,i,t);var r=this.length,n=nE(i),a=0;if(n+t>r)throw new cE("Wrong length");for(;a<n;)this[t+a]=i[a++]},!fE||mE);var gE=Bs,vE=Math.floor,_E=function(e,t){var i=e.length;if(i<8)for(var r,n,a=1;a<i;){for(n=a,r=e[a];n&&t(e[n-1],r)>0;)e[n]=e[--n];n!==a++&&(e[n]=r)}else for(var o=vE(i/2),s=_E(gE(e,0,o),t),c=_E(gE(e,o),t),l=s.length,d=c.length,u=0,h=0;u<l||h<d;)e[u+h]=u<l&&h<d?t(s[u],c[h])<=0?s[u++]:c[h++]:u<l?s[u++]:c[h++];return e},yE=_E,EE=Y.match(/firefox\/(\d+)/i),bE=!!EE&&+EE[1],wE=/MSIE|Trident/.test(Y),IE=Y.match(/AppleWebKit\/(\d+)\./),TE=!!IE&&+IE[1],SE=tl,AE=n,RE=ve,kE=yE,CE=bE,DE=wE,OE=te,LE=TE,NE=Xv.aTypedArray,PE=Xv.exportTypedArrayMethod,xE=i.Uint16Array,ME=xE&&SE(xE.prototype.sort),UE=!(!ME||AE(function(){ME(new xE(2),null)})&&AE(function(){ME(new xE(2),{})})),BE=!!ME&&!AE(function(){if(OE)return OE<74;if(CE)return CE<67;if(DE)return!0;if(LE)return LE<602;var e,t,i=new xE(516),r=Array(516);for(e=0;e<516;e++)t=e%4,i[e]=515-e,r[e]=e-2*t+3;for(ME(i,function(e,t){return(e/4|0)-(t/4|0)}),e=0;e<516;e++)if(i[e]!==r[e])return!0});PE("sort",function(e){return void 0!==e&&RE(e),BE?ME(this,e):kE(NE(this),function(e){return function(t,i){return void 0!==e?+e(t,i)||0:i!=i?-1:t!=t?1:0===t&&0===i?1/t>0&&1/i<0?1:-1:t>i}}(e))},!BE||UE);var FE=en,VE=l,HE=b,jE=P,zE=F,WE=H,GE=qp,qE=hn,KE=Ee,YE=of,XE=gg,ZE=tt("replace"),JE=TypeError,QE=HE("".indexOf);HE("".replace);var $E=HE("".slice),eb=Math.max;FE({target:"String",proto:!0},{replaceAll:function(e,t){var i,r,n,a,o,s,c,l,d,u=jE(this),h=0,p="";if(WE(e)){if(GE(e)&&(i=qE(jE(YE(e))),!~QE(i,"g")))throw new JE("`.replaceAll` does not allow non-global regexes");if(r=KE(e,ZE))return VE(r,e,u,t)}for(n=qE(u),a=qE(e),(o=zE(t))||(t=qE(t)),s=a.length,c=eb(1,s),l=QE(n,a);-1!==l;)d=o?qE(t(a,l,n)):XE(a,n,l,[],void 0,t),p+=$E(n,h,l)+d,h=l+s,l=l+c>n.length?-1:QE(n,a,l+c);return h<n.length&&(p+=$E(n,h)),p}});var tb={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},ib=gt("span").classList,rb=ib&&ib.constructor&&ib.constructor.prototype,nb=rb===Object.prototype?void 0:rb,ab=G_.forEach,ob=Xo("forEach")?[].forEach:function(e){return ab(this,e,arguments.length>1?arguments[1]:void 0)},sb=i,cb=tb,lb=nb,db=ob,ub=Kt,hb=function(e){if(e&&e.forEach!==db)try{ub(e,"forEach",db)}catch(QM){e.forEach=db}};for(var pb in cb)cb[pb]&&hb(sb[pb]&&sb[pb].prototype);hb(lb);var fb=i,mb=tb,gb=nb,vb=Bo,_b=Kt,yb=Va,Eb=tt("iterator"),bb=vb.values,wb=function(e,t){if(e){if(e[Eb]!==bb)try{_b(e,Eb,bb)}catch(QM){e[Eb]=bb}if(yb(e,t,!0),mb[t])for(var i in vb)if(e[i]!==vb[i])try{_b(e,i,vb[i])}catch(QM){e[i]=vb[i]}}};for(var Ib in mb)wb(fb[Ib]&&fb[Ib].prototype,Ib);wb(gb,"DOMTokenList");var Tb=Sd.clear;en({global:!0,bind:!0,enumerable:!0,forced:i.clearImmediate!==Tb},{clearImmediate:Tb});var Sb=i,Ab=Gl,Rb=F,kb=es,Cb=Y,Db=Bs,Ob=Jl,Lb=Sb.Function,Nb=/MSIE .\./.test(Cb)||"BUN"===kb&&function(){var e=Sb.Bun.version.split(".");return e.length<3||"0"===e[0]&&(e[1]<3||"3"===e[1]&&"0"===e[2])}(),Pb=en,xb=i,Mb=Sd.set,Ub=function(e,t){var i=t?2:1;return Nb?function(r,n){var a=Ob(arguments.length,1)>i,o=Rb(r)?r:Lb(r),s=a?Db(arguments,i):[],c=a?function(){Ab(o,this,s)}:o;return t?e(c,n):e(c)}:e},Bb=xb.setImmediate?Ub(Mb,!1):Mb;Pb({global:!0,bind:!0,enumerable:!0,forced:xb.setImmediate!==Bb},{setImmediate:Bb});var Fb=og.charAt,Vb=hn,Hb=ki,jb=So,zb=Ao,Wb="String Iterator",Gb=Hb.set,qb=Hb.getterFor(Wb);jb(String,"String",function(e){Gb(this,{type:Wb,string:Vb(e),index:0})},function(){var e,t=qb(this),i=t.string,r=t.index;return r>=i.length?zb(void 0,!0):(e=Fb(i,r),t.index+=e.length,zb(e,!1))});var Kb=n,Yb=a,Xb=tt("iterator"),Zb=!Kb(function(){var e=new URL("b?a=1&b=2&c=3","https://a"),t=e.searchParams,i=new URLSearchParams("a=1&a=2&b=3"),r="";return e.pathname="c%20d",t.forEach(function(e,i){t.delete("b"),r+=i+e}),i.delete("a",2),i.delete("b",void 0),!t.size&&!Yb||!t.sort||"https://a/c%20d?a=1&c=3"!==e.href||"3"!==t.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!t[Xb]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("https://тест").host||"#%D0%B1"!==new URL("https://a#б").hash||"a1c3"!==r||"x"!==new URL("https://x",void 0).host}),Jb=a,Qb=b,$b=l,ew=n,tw=Bn,iw=Ar,rw=d,nw=Be,aw=D,ow=Object.assign,sw=Object.defineProperty,cw=Qb([].concat),lw=!ow||ew(function(){if(Jb&&1!==ow({b:1},ow(sw({},"a",{enumerable:!0,get:function(){sw(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},i=Symbol("assign detection"),r="abcdefghijklmnopqrst";return e[i]=7,r.split("").forEach(function(e){t[e]=e}),7!==ow({},e)[i]||tw(ow({},t)).join("")!==r})?function(e,t){for(var i=nw(e),r=arguments.length,n=1,a=iw.f,o=rw.f;r>n;)for(var s,c=aw(arguments[n++]),l=a?cw(tw(c),a(c)):tw(c),d=l.length,u=0;d>u;)s=l[u++],Jb&&!$b(o,c,s)||(i[s]=c[s]);return i}:ow,dw=Nt,uw=Fh,hw=a,pw=as,fw=TypeError,mw=Object.getOwnPropertyDescriptor,gw=hw&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(QM){return QM instanceof TypeError}}(),vw=Xl,_w=l,yw=Be,Ew=function(e,t,i,r){try{return r?t(dw(i)[0],i[1]):t(i)}catch(QM){uw(e,"throw",QM)}},bw=wh,ww=Ol,Iw=ur,Tw=U_,Sw=gw?function(e,t){if(pw(e)&&!mw(e,"length").writable)throw new fw("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t},Aw=xh,Rw=kh,kw=Array,Cw=b,Dw=2147483647,Ow=/[^\0-\u007E]/,Lw=/[.\u3002\uFF0E\uFF61]/g,Nw="Overflow: input needs wider integers to process",Pw=RangeError,xw=Cw(Lw.exec),Mw=Math.floor,Uw=String.fromCharCode,Bw=Cw("".charCodeAt),Fw=Cw([].join),Vw=Cw([].push),Hw=Cw("".replace),jw=Cw("".split),zw=Cw("".toLowerCase),Ww=function(e){return e+22+75*(e<26)},Gw=function(e,t,i){var r=0;for(e=i?Mw(e/700):e>>1,e+=Mw(e/t);e>455;)e=Mw(e/35),r+=36;return Mw(r+36*e/(e+38))},qw=function(e){var t=[];e=function(e){for(var t=[],i=0,r=e.length;i<r;){var n=Bw(e,i++);if(n>=55296&&n<=56319&&i<r){var a=Bw(e,i++);56320==(64512&a)?Vw(t,((1023&n)<<10)+(1023&a)+65536):(Vw(t,n),i--)}else Vw(t,n)}return t}(e);var i,r,n=e.length,a=128,o=0,s=72;for(i=0;i<e.length;i++)(r=e[i])<128&&Vw(t,Uw(r));var c=t.length,l=c;for(c&&Vw(t,"-");l<n;){var d=Dw;for(i=0;i<e.length;i++)(r=e[i])>=a&&r<d&&(d=r);var u=l+1;if(d-a>Mw((Dw-o)/u))throw new Pw(Nw);for(o+=(d-a)*u,a=d,i=0;i<e.length;i++){if((r=e[i])<a&&++o>Dw)throw new Pw(Nw);if(r===a){for(var h=o,p=36;;){var f=p<=s?1:p>=s+26?26:p-s;if(h<f)break;var m=h-f,g=36-f;Vw(t,Uw(Ww(f+m%g))),h=Mw(m/g),p+=36}Vw(t,Uw(Ww(h))),s=Gw(o,u,l===c),o=0,l++}}o++,a++}return Fw(t,"")},Kw=en,Yw=b,Xw=or,Zw=RangeError,Jw=String.fromCharCode,Qw=String.fromCodePoint,$w=Yw([].join);Kw({target:"String",stat:!0,arity:1,forced:!!Qw&&1!==Qw.length},{fromCodePoint:function(e){for(var t,i=[],r=arguments.length,n=0;r>n;){if(t=+arguments[n++],Xw(t,1114111)!==t)throw new Zw(t+" is not a valid code point");i[n]=t<65536?Jw(t):Jw(55296+((t-=65536)>>10),t%1024+56320)}return $w(i,"")}});var eI=en,tI=i,iI=Cd,rI=W,nI=l,aI=b,oI=a,sI=Zb,cI=Ji,lI=mn,dI=hs,uI=Va,hI=Ka,pI=ki,fI=ms,mI=F,gI=He,vI=Xl,_I=ln,yI=Nt,EI=H,bI=hn,wI=oa,II=g,TI=xh,SI=kh,AI=Ao,RI=Jl,kI=yE,CI=tt("iterator"),DI="URLSearchParams",OI=DI+"Iterator",LI=pI.set,NI=pI.getterFor(DI),PI=pI.getterFor(OI),xI=iI("fetch"),MI=iI("Request"),UI=iI("Headers"),BI=MI&&MI.prototype,FI=UI&&UI.prototype,VI=tI.TypeError,HI=tI.encodeURIComponent,jI=String.fromCharCode,zI=rI("String","fromCodePoint"),WI=parseInt,GI=aI("".charAt),qI=aI([].join),KI=aI([].push),YI=aI("".replace),XI=aI([].shift),ZI=aI([].splice),JI=aI("".split),QI=aI("".slice),$I=aI(/./.exec),eT=/\+/g,tT=/^[0-9a-f]+$/i,iT=function(e,t){var i=QI(e,t,t+2);return $I(tT,i)?WI(i,16):NaN},rT=function(e){for(var t=0,i=128;i>0&&0!==(e&i);i>>=1)t++;return t},nT=function(e){var t=null;switch(e.length){case 1:t=e[0];break;case 2:t=(31&e[0])<<6|63&e[1];break;case 3:t=(15&e[0])<<12|(63&e[1])<<6|63&e[2];break;case 4:t=(7&e[0])<<18|(63&e[1])<<12|(63&e[2])<<6|63&e[3]}return t>1114111?null:t},aT=function(e){for(var t=(e=YI(e,eT," ")).length,i="",r=0;r<t;){var n=GI(e,r);if("%"===n){if("%"===GI(e,r+1)||r+3>t){i+="%",r++;continue}var a=iT(e,r+1);if(a!=a){i+=n,r++;continue}r+=2;var o=rT(a);if(0===o)n=jI(a);else{if(1===o||o>4){i+="�",r++;continue}for(var s=[a],c=1;c<o&&!(++r+3>t||"%"!==GI(e,r));){var l=iT(e,r+1);if(l!=l){r+=3;break}if(l>191||l<128)break;KI(s,l),r+=2,c++}if(s.length!==o){i+="�";continue}var d=nT(s);null===d?i+="�":n=zI(d)}}i+=n,r++}return i},oT=/[!'()~]|%20/g,sT={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},cT=function(e){return sT[e]},lT=function(e){return YI(HI(e),oT,cT)},dT=hI(function(e,t){LI(this,{type:OI,target:NI(e).entries,index:0,kind:t})},DI,function(){var e=PI(this),t=e.target,i=e.index++;if(!t||i>=t.length)return e.target=null,AI(void 0,!0);var r=t[i];switch(e.kind){case"keys":return AI(r.key,!1);case"values":return AI(r.value,!1)}return AI([r.key,r.value],!1)},!0),uT=function(e){this.entries=[],this.url=null,void 0!==e&&(EI(e)?this.parseObject(e):this.parseQuery("string"==typeof e?"?"===GI(e,0)?QI(e,1):e:bI(e)))};uT.prototype={type:DI,bindURL:function(e){this.url=e,this.update()},parseObject:function(e){var t,i,r,n,a,o,s,c=this.entries,l=SI(e);if(l)for(i=(t=TI(e,l)).next;!(r=nI(i,t)).done;){if(a=(n=TI(yI(r.value))).next,(o=nI(a,n)).done||(s=nI(a,n)).done||!nI(a,n).done)throw new VI("Expected sequence with length 2");KI(c,{key:bI(o.value),value:bI(s.value)})}else for(var d in e)gI(e,d)&&KI(c,{key:d,value:bI(e[d])})},parseQuery:function(e){if(e)for(var t,i,r=this.entries,n=JI(e,"&"),a=0;a<n.length;)(t=n[a++]).length&&(i=JI(t,"="),KI(r,{key:aT(XI(i)),value:aT(qI(i,"="))}))},serialize:function(){for(var e,t=this.entries,i=[],r=0;r<t.length;)e=t[r++],KI(i,lT(e.key)+"="+lT(e.value));return qI(i,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var hT=function(){fI(this,pT);var e=LI(this,new uT(arguments.length>0?arguments[0]:void 0));oI||(this.size=e.entries.length)},pT=hT.prototype;if(dI(pT,{append:function(e,t){var i=NI(this);RI(arguments.length,2),KI(i.entries,{key:bI(e),value:bI(t)}),oI||this.size++,i.updateURL()},delete:function(e){for(var t=NI(this),i=RI(arguments.length,1),r=t.entries,n=bI(e),a=i<2?void 0:arguments[1],o=void 0===a?a:bI(a),s=0;s<r.length;){var c=r[s];if(c.key!==n||void 0!==o&&c.value!==o)s++;else if(ZI(r,s,1),void 0!==o)break}oI||(this.size=r.length),t.updateURL()},get:function(e){var t=NI(this).entries;RI(arguments.length,1);for(var i=bI(e),r=0;r<t.length;r++)if(t[r].key===i)return t[r].value;return null},getAll:function(e){var t=NI(this).entries;RI(arguments.length,1);for(var i=bI(e),r=[],n=0;n<t.length;n++)t[n].key===i&&KI(r,t[n].value);return r},has:function(e){for(var t=NI(this).entries,i=RI(arguments.length,1),r=bI(e),n=i<2?void 0:arguments[1],a=void 0===n?n:bI(n),o=0;o<t.length;){var s=t[o++];if(s.key===r&&(void 0===a||s.value===a))return!0}return!1},set:function(e,t){var i=NI(this);RI(arguments.length,1);for(var r,n=i.entries,a=!1,o=bI(e),s=bI(t),c=0;c<n.length;c++)(r=n[c]).key===o&&(a?ZI(n,c--,1):(a=!0,r.value=s));a||KI(n,{key:o,value:s}),oI||(this.size=n.length),i.updateURL()},sort:function(){var e=NI(this);kI(e.entries,function(e,t){return e.key>t.key?1:-1}),e.updateURL()},forEach:function(e){for(var t,i=NI(this).entries,r=vI(e,arguments.length>1?arguments[1]:void 0),n=0;n<i.length;)r((t=i[n++]).value,t.key,this)},keys:function(){return new dT(this,"keys")},values:function(){return new dT(this,"values")},entries:function(){return new dT(this,"entries")}},{enumerable:!0}),cI(pT,CI,pT.entries,{name:"entries"}),cI(pT,"toString",function(){return NI(this).serialize()},{enumerable:!0}),oI&&lI(pT,"size",{get:function(){return NI(this).entries.length},configurable:!0,enumerable:!0}),uI(hT,DI),eI({global:!0,constructor:!0,forced:!sI},{URLSearchParams:hT}),!sI&&mI(UI)){var fT=aI(FI.has),mT=aI(FI.set),gT=function(e){if(EI(e)){var t,i=e.body;if(_I(i)===DI)return t=e.headers?new UI(e.headers):new UI,fT(t,"content-type")||mT(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),wI(e,{body:II(0,bI(i)),headers:II(0,t)})}return e};if(mI(xI)&&eI({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return xI(e,arguments.length>1?gT(arguments[1]):{})}}),mI(MI)){var vT=function(e){return fI(this,BI),new MI(e,arguments.length>1?gT(arguments[1]):{})};BI.constructor=vT,vT.prototype=BI,eI({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:vT})}}var _T,yT=en,ET=a,bT=Zb,wT=i,IT=Xl,TT=b,ST=Ji,AT=mn,RT=ms,kT=He,CT=lw,DT=function(e){var t=yw(e),i=ww(this),r=arguments.length,n=r>1?arguments[1]:void 0,a=void 0!==n;a&&(n=vw(n,r>2?arguments[2]:void 0));var o,s,c,l,d,u,h=Rw(t),p=0;if(!h||this===kw&&bw(h))for(o=Iw(t),s=i?new this(o):kw(o);o>p;p++)u=a?n(t[p],p):t[p],Tw(s,p,u);else for(s=i?new this:[],d=(l=Aw(t,h)).next;!(c=_w(d,l)).done;p++)u=a?Ew(l,n,[c.value,p],!0):c.value,Tw(s,p,u);return Sw(s,p),s},OT=Bs,LT=og.codeAt,NT=function(e){var t,i,r=[],n=jw(Hw(zw(e),Lw,"."),".");for(t=0;t<n.length;t++)i=n[t],Vw(r,xw(Ow,i)?"xn--"+qw(i):i);return Fw(r,".")},PT=hn,xT=Va,MT=Jl,UT={URLSearchParams:hT,getState:NI},BT=ki,FT=BT.set,VT=BT.getterFor("URL"),HT=UT.URLSearchParams,jT=UT.getState,zT=wT.URL,WT=wT.TypeError,GT=wT.parseInt,qT=Math.floor,KT=Math.pow,YT=TT("".charAt),XT=TT(/./.exec),ZT=TT([].join),JT=TT(1.1.toString),QT=TT([].pop),$T=TT([].push),eS=TT("".replace),tS=TT([].shift),iS=TT("".split),rS=TT("".slice),nS=TT("".toLowerCase),aS=TT([].unshift),oS="Invalid scheme",sS="Invalid host",cS="Invalid port",lS=/[a-z]/i,dS=/[\d+-.a-z]/i,uS=/\d/,hS=/^0x/i,pS=/^[0-7]+$/,fS=/^\d+$/,mS=/^[\da-f]+$/i,gS=/[\0\t\n\r #%/:<>?@[\\\]^|]/,vS=/[\0\t\n\r #/:<>?@[\\\]^|]/,_S=/^[\u0000-\u0020]+/,yS=/(^|[^\u0000-\u0020])[\u0000-\u0020]+$/,ES=/[\t\n\r]/g,bS=function(e){var t,i,r,n;if("number"==typeof e){for(t=[],i=0;i<4;i++)aS(t,e%256),e=qT(e/256);return ZT(t,".")}if("object"==typeof e){for(t="",r=function(e){for(var t=null,i=1,r=null,n=0,a=0;a<8;a++)0!==e[a]?(n>i&&(t=r,i=n),r=null,n=0):(null===r&&(r=a),++n);return n>i?r:t}(e),i=0;i<8;i++)n&&0===e[i]||(n&&(n=!1),r===i?(t+=i?":":"::",n=!0):(t+=JT(e[i],16),i<7&&(t+=":")));return"["+t+"]"}return e},wS={},IS=CT({},wS,{" ":1,'"':1,"<":1,">":1,"`":1}),TS=CT({},IS,{"#":1,"?":1,"{":1,"}":1}),SS=CT({},TS,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),AS=function(e,t){var i=LT(e,0);return i>32&&i<127&&!kT(t,e)?e:encodeURIComponent(e)},RS={ftp:21,file:null,http:80,https:443,ws:80,wss:443},kS=function(e,t){var i;return 2===e.length&&XT(lS,YT(e,0))&&(":"===(i=YT(e,1))||!t&&"|"===i)},CS=function(e){var t;return e.length>1&&kS(rS(e,0,2))&&(2===e.length||"/"===(t=YT(e,2))||"\\"===t||"?"===t||"#"===t)},DS=function(e){return"."===e||"%2e"===nS(e)},OS=function(e){return".."===(e=nS(e))||"%2e."===e||".%2e"===e||"%2e%2e"===e},LS={},NS={},PS={},xS={},MS={},US={},BS={},FS={},VS={},HS={},jS={},zS={},WS={},GS={},qS={},KS={},YS={},XS={},ZS={},JS={},QS={},$S=function(e,t,i){var r,n,a,o=PT(e);if(t){if(n=this.parse(o))throw new WT(n);this.searchParams=null}else{if(void 0!==i&&(r=new $S(i,!0)),n=this.parse(o,null,r))throw new WT(n);(a=jT(new HT)).bindURL(this),this.searchParams=a}};$S.prototype={type:"URL",parse:function(e,t,i){var r,n,a,o,s=this,c=t||LS,l=0,d="",u=!1,h=!1,p=!1;for(e=PT(e),t||(s.scheme="",s.username="",s.password="",s.host=null,s.port=null,s.path=[],s.query=null,s.fragment=null,s.cannotBeABaseURL=!1,e=eS(e,_S,""),e=eS(e,yS,"$1")),e=eS(e,ES,""),r=DT(e);l<=r.length;){switch(n=r[l],c){case LS:if(!n||!XT(lS,n)){if(t)return oS;c=PS;continue}d+=nS(n),c=NS;break;case NS:if(n&&(XT(dS,n)||"+"===n||"-"===n||"."===n))d+=nS(n);else{if(":"!==n){if(t)return oS;d="",c=PS,l=0;continue}if(t&&(s.isSpecial()!==kT(RS,d)||"file"===d&&(s.includesCredentials()||null!==s.port)||"file"===s.scheme&&!s.host))return;if(s.scheme=d,t)return void(s.isSpecial()&&RS[s.scheme]===s.port&&(s.port=null));d="","file"===s.scheme?c=GS:s.isSpecial()&&i&&i.scheme===s.scheme?c=xS:s.isSpecial()?c=FS:"/"===r[l+1]?(c=MS,l++):(s.cannotBeABaseURL=!0,$T(s.path,""),c=ZS)}break;case PS:if(!i||i.cannotBeABaseURL&&"#"!==n)return oS;if(i.cannotBeABaseURL&&"#"===n){s.scheme=i.scheme,s.path=OT(i.path),s.query=i.query,s.fragment="",s.cannotBeABaseURL=!0,c=QS;break}c="file"===i.scheme?GS:US;continue;case xS:if("/"!==n||"/"!==r[l+1]){c=US;continue}c=VS,l++;break;case MS:if("/"===n){c=HS;break}c=XS;continue;case US:if(s.scheme=i.scheme,n===_T)s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,s.path=OT(i.path),s.query=i.query;else if("/"===n||"\\"===n&&s.isSpecial())c=BS;else if("?"===n)s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,s.path=OT(i.path),s.query="",c=JS;else{if("#"!==n){s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,s.path=OT(i.path),s.path.length--,c=XS;continue}s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,s.path=OT(i.path),s.query=i.query,s.fragment="",c=QS}break;case BS:if(!s.isSpecial()||"/"!==n&&"\\"!==n){if("/"!==n){s.username=i.username,s.password=i.password,s.host=i.host,s.port=i.port,c=XS;continue}c=HS}else c=VS;break;case FS:if(c=VS,"/"!==n||"/"!==YT(d,l+1))continue;l++;break;case VS:if("/"!==n&&"\\"!==n){c=HS;continue}break;case HS:if("@"===n){u&&(d="%40"+d),u=!0,a=DT(d);for(var f=0;f<a.length;f++){var m=a[f];if(":"!==m||p){var g=AS(m,SS);p?s.password+=g:s.username+=g}else p=!0}d=""}else if(n===_T||"/"===n||"?"===n||"#"===n||"\\"===n&&s.isSpecial()){if(u&&""===d)return"Invalid authority";l-=DT(d).length+1,d="",c=jS}else d+=n;break;case jS:case zS:if(t&&"file"===s.scheme){c=KS;continue}if(":"!==n||h){if(n===_T||"/"===n||"?"===n||"#"===n||"\\"===n&&s.isSpecial()){if(s.isSpecial()&&""===d)return sS;if(t&&""===d&&(s.includesCredentials()||null!==s.port))return;if(o=s.parseHost(d))return o;if(d="",c=YS,t)return;continue}"["===n?h=!0:"]"===n&&(h=!1),d+=n}else{if(""===d)return sS;if(o=s.parseHost(d))return o;if(d="",c=WS,t===zS)return}break;case WS:if(!XT(uS,n)){if(n===_T||"/"===n||"?"===n||"#"===n||"\\"===n&&s.isSpecial()||t){if(""!==d){var v=GT(d,10);if(v>65535)return cS;s.port=s.isSpecial()&&v===RS[s.scheme]?null:v,d=""}if(t)return;c=YS;continue}return cS}d+=n;break;case GS:if(s.scheme="file","/"===n||"\\"===n)c=qS;else{if(!i||"file"!==i.scheme){c=XS;continue}switch(n){case _T:s.host=i.host,s.path=OT(i.path),s.query=i.query;break;case"?":s.host=i.host,s.path=OT(i.path),s.query="",c=JS;break;case"#":s.host=i.host,s.path=OT(i.path),s.query=i.query,s.fragment="",c=QS;break;default:CS(ZT(OT(r,l),""))||(s.host=i.host,s.path=OT(i.path),s.shortenPath()),c=XS;continue}}break;case qS:if("/"===n||"\\"===n){c=KS;break}i&&"file"===i.scheme&&!CS(ZT(OT(r,l),""))&&(kS(i.path[0],!0)?$T(s.path,i.path[0]):s.host=i.host),c=XS;continue;case KS:if(n===_T||"/"===n||"\\"===n||"?"===n||"#"===n){if(!t&&kS(d))c=XS;else if(""===d){if(s.host="",t)return;c=YS}else{if(o=s.parseHost(d))return o;if("localhost"===s.host&&(s.host=""),t)return;d="",c=YS}continue}d+=n;break;case YS:if(s.isSpecial()){if(c=XS,"/"!==n&&"\\"!==n)continue}else if(t||"?"!==n)if(t||"#"!==n){if(n!==_T&&(c=XS,"/"!==n))continue}else s.fragment="",c=QS;else s.query="",c=JS;break;case XS:if(n===_T||"/"===n||"\\"===n&&s.isSpecial()||!t&&("?"===n||"#"===n)){if(OS(d)?(s.shortenPath(),"/"===n||"\\"===n&&s.isSpecial()||$T(s.path,"")):DS(d)?"/"===n||"\\"===n&&s.isSpecial()||$T(s.path,""):("file"===s.scheme&&!s.path.length&&kS(d)&&(s.host&&(s.host=""),d=YT(d,0)+":"),$T(s.path,d)),d="","file"===s.scheme&&(n===_T||"?"===n||"#"===n))for(;s.path.length>1&&""===s.path[0];)tS(s.path);"?"===n?(s.query="",c=JS):"#"===n&&(s.fragment="",c=QS)}else d+=AS(n,TS);break;case ZS:"?"===n?(s.query="",c=JS):"#"===n?(s.fragment="",c=QS):n!==_T&&(s.path[0]+=AS(n,wS));break;case JS:t||"#"!==n?n!==_T&&("'"===n&&s.isSpecial()?s.query+="%27":s.query+="#"===n?"%23":AS(n,wS)):(s.fragment="",c=QS);break;case QS:n!==_T&&(s.fragment+=AS(n,IS))}l++}},parseHost:function(e){var t,i,r;if("["===YT(e,0)){if("]"!==YT(e,e.length-1))return sS;if(t=function(e){var t,i,r,n,a,o,s,c=[0,0,0,0,0,0,0,0],l=0,d=null,u=0,h=function(){return YT(e,u)};if(":"===h()){if(":"!==YT(e,1))return;u+=2,d=++l}for(;h();){if(8===l)return;if(":"!==h()){for(t=i=0;i<4&&XT(mS,h());)t=16*t+GT(h(),16),u++,i++;if("."===h()){if(0===i)return;if(u-=i,l>6)return;for(r=0;h();){if(n=null,r>0){if(!("."===h()&&r<4))return;u++}if(!XT(uS,h()))return;for(;XT(uS,h());){if(a=GT(h(),10),null===n)n=a;else{if(0===n)return;n=10*n+a}if(n>255)return;u++}c[l]=256*c[l]+n,2!==++r&&4!==r||l++}if(4!==r)return;break}if(":"===h()){if(u++,!h())return}else if(h())return;c[l++]=t}else{if(null!==d)return;u++,d=++l}}if(null!==d)for(o=l-d,l=7;0!==l&&o>0;)s=c[l],c[l--]=c[d+o-1],c[d+--o]=s;else if(8!==l)return;return c}(rS(e,1,-1)),!t)return sS;this.host=t}else if(this.isSpecial()){if(e=NT(e),XT(gS,e))return sS;if(t=function(e){var t,i,r,n,a,o,s,c=iS(e,".");if(c.length&&""===c[c.length-1]&&c.length--,(t=c.length)>4)return e;for(i=[],r=0;r<t;r++){if(""===(n=c[r]))return e;if(a=10,n.length>1&&"0"===YT(n,0)&&(a=XT(hS,n)?16:8,n=rS(n,8===a?1:2)),""===n)o=0;else{if(!XT(10===a?fS:8===a?pS:mS,n))return e;o=GT(n,a)}$T(i,o)}for(r=0;r<t;r++)if(o=i[r],r===t-1){if(o>=KT(256,5-t))return null}else if(o>255)return null;for(s=QT(i),r=0;r<i.length;r++)s+=i[r]*KT(256,3-r);return s}(e),null===t)return sS;this.host=t}else{if(XT(vS,e))return sS;for(t="",i=DT(e),r=0;r<i.length;r++)t+=AS(i[r],wS);this.host=t}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||"file"===this.scheme},includesCredentials:function(){return""!==this.username||""!==this.password},isSpecial:function(){return kT(RS,this.scheme)},shortenPath:function(){var e=this.path,t=e.length;!t||"file"===this.scheme&&1===t&&kS(e[0],!0)||e.length--},serialize:function(){var e=this,t=e.scheme,i=e.username,r=e.password,n=e.host,a=e.port,o=e.path,s=e.query,c=e.fragment,l=t+":";return null!==n?(l+="//",e.includesCredentials()&&(l+=i+(r?":"+r:"")+"@"),l+=bS(n),null!==a&&(l+=":"+a)):"file"===t&&(l+="//"),l+=e.cannotBeABaseURL?o[0]:o.length?"/"+ZT(o,"/"):"",null!==s&&(l+="?"+s),null!==c&&(l+="#"+c),l},setHref:function(e){var t=this.parse(e);if(t)throw new WT(t);this.searchParams.update()},getOrigin:function(){var e=this.scheme,t=this.port;if("blob"===e)try{return new eA(e.path[0]).origin}catch(QM){return"null"}return"file"!==e&&this.isSpecial()?e+"://"+bS(this.host)+(null!==t?":"+t:""):"null"},getProtocol:function(){return this.scheme+":"},setProtocol:function(e){this.parse(PT(e)+":",LS)},getUsername:function(){return this.username},setUsername:function(e){var t=DT(PT(e));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var i=0;i<t.length;i++)this.username+=AS(t[i],SS)}},getPassword:function(){return this.password},setPassword:function(e){var t=DT(PT(e));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var i=0;i<t.length;i++)this.password+=AS(t[i],SS)}},getHost:function(){var e=this.host,t=this.port;return null===e?"":null===t?bS(e):bS(e)+":"+t},setHost:function(e){this.cannotBeABaseURL||this.parse(e,jS)},getHostname:function(){var e=this.host;return null===e?"":bS(e)},setHostname:function(e){this.cannotBeABaseURL||this.parse(e,zS)},getPort:function(){var e=this.port;return null===e?"":PT(e)},setPort:function(e){this.cannotHaveUsernamePasswordPort()||(""===(e=PT(e))?this.port=null:this.parse(e,WS))},getPathname:function(){var e=this.path;return this.cannotBeABaseURL?e[0]:e.length?"/"+ZT(e,"/"):""},setPathname:function(e){this.cannotBeABaseURL||(this.path=[],this.parse(e,YS))},getSearch:function(){var e=this.query;return e?"?"+e:""},setSearch:function(e){""===(e=PT(e))?this.query=null:("?"===YT(e,0)&&(e=rS(e,1)),this.query="",this.parse(e,JS)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var e=this.fragment;return e?"#"+e:""},setHash:function(e){""!==(e=PT(e))?("#"===YT(e,0)&&(e=rS(e,1)),this.fragment="",this.parse(e,QS)):this.fragment=null},update:function(){this.query=this.searchParams.serialize()||null}};var eA=function(e){var t=RT(this,tA),i=MT(arguments.length,1)>1?arguments[1]:void 0,r=FT(t,new $S(e,!1,i));ET||(t.href=r.serialize(),t.origin=r.getOrigin(),t.protocol=r.getProtocol(),t.username=r.getUsername(),t.password=r.getPassword(),t.host=r.getHost(),t.hostname=r.getHostname(),t.port=r.getPort(),t.pathname=r.getPathname(),t.search=r.getSearch(),t.searchParams=r.getSearchParams(),t.hash=r.getHash())},tA=eA.prototype,iA=function(e,t){return{get:function(){return VT(this)[e]()},set:t&&function(e){return VT(this)[t](e)},configurable:!0,enumerable:!0}};if(ET&&(AT(tA,"href",iA("serialize","setHref")),AT(tA,"origin",iA("getOrigin")),AT(tA,"protocol",iA("getProtocol","setProtocol")),AT(tA,"username",iA("getUsername","setUsername")),AT(tA,"password",iA("getPassword","setPassword")),AT(tA,"host",iA("getHost","setHost")),AT(tA,"hostname",iA("getHostname","setHostname")),AT(tA,"port",iA("getPort","setPort")),AT(tA,"pathname",iA("getPathname","setPathname")),AT(tA,"search",iA("getSearch","setSearch")),AT(tA,"searchParams",iA("getSearchParams")),AT(tA,"hash",iA("getHash","setHash"))),ST(tA,"toJSON",function(){return VT(this).serialize()},{enumerable:!0}),ST(tA,"toString",function(){return VT(this).serialize()},{enumerable:!0}),zT){var rA=zT.createObjectURL,nA=zT.revokeObjectURL;rA&&ST(eA,"createObjectURL",IT(rA,zT)),nA&&ST(eA,"revokeObjectURL",IT(nA,zT))}xT(eA,"URL"),yT({global:!0,constructor:!0,forced:!bT,sham:!ET},{URL:eA});var aA=l;en({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return aA(URL.prototype.toString,this)}});var oA,sA,cA=Object.create,lA=Object.defineProperty,dA=Object.defineProperties,uA=Object.getOwnPropertyDescriptor,hA=Object.getOwnPropertyDescriptors,pA=Object.getOwnPropertyNames,fA=Object.getOwnPropertySymbols,mA=Object.getPrototypeOf,gA=Object.prototype.hasOwnProperty,vA=Object.prototype.propertyIsEnumerable,_A=(e,t,i)=>t in e?lA(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,yA=(e,t)=>{for(var i in t||(t={}))gA.call(t,i)&&_A(e,i,t[i]);if(fA)for(var i of fA(t))vA.call(t,i)&&_A(e,i,t[i]);return e},EA=(e,t)=>dA(e,hA(t)),bA=(oA=function(e){if("undefined"!=typeof require)return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')},"undefined"!=typeof require?require:"undefined"!=typeof Proxy?new Proxy(oA,{get:(e,t)=>("undefined"!=typeof require?require:e)[t]}):oA),wA=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),IA=(e,t)=>{for(var i in t)lA(e,i,{get:t[i],enumerable:!0})},TA=(e,t,i)=>(i=null!=e?cA(mA(e)):{},((e,t,i,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let n of pA(t))!gA.call(e,n)&&n!==i&&lA(e,n,{get:()=>t[n],enumerable:!(r=uA(t,n))||r.enumerable});return e})(!t&&e&&e.__esModule?i:lA(i,"default",{value:e,enumerable:!0}),e)),SA=(e,t,i,r)=>{for(var n,a=r>1?void 0:r?uA(t,i):t,o=e.length-1;o>=0;o--)(n=e[o])&&(a=(r?n(t,i,a):n(a))||a);return r&&a&&lA(t,i,a),a},AA=(e,t,i)=>_A(e,"symbol"!=typeof t?t+"":t,i),RA=wA((e,t)=>{!function(i){"object"==typeof e&&void 0!==t?t.exports=i():"function"==typeof define&&define.amd?define([],i):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).JSZip=i()}(function(){return function e(t,i,r){function n(o,s){if(!i[o]){if(!t[o]){var c="function"==typeof bA&&bA;if(!s&&c)return c(o,!0);if(a)return a(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var d=i[o]={exports:{}};t[o][0].call(d.exports,function(e){return n(t[o][1][e]||e)},d,d.exports,e,t,i,r)}return i[o].exports}for(var a="function"==typeof bA&&bA,o=0;o<r.length;o++)n(r[o]);return n}({1:[function(e,t,i){var r=e("./utils"),n=e("./support"),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";i.encode=function(e){for(var t,i,n,o,s,c,l,d=[],u=0,h=e.length,p=h,f="string"!==r.getTypeOf(e);u<e.length;)p=h-u,n=f?(t=e[u++],i=u<h?e[u++]:0,u<h?e[u++]:0):(t=e.charCodeAt(u++),i=u<h?e.charCodeAt(u++):0,u<h?e.charCodeAt(u++):0),o=t>>2,s=(3&t)<<4|i>>4,c=1<p?(15&i)<<2|n>>6:64,l=2<p?63&n:64,d.push(a.charAt(o)+a.charAt(s)+a.charAt(c)+a.charAt(l));return d.join("")},i.decode=function(e){var t,i,r,o,s,c,l=0,d=0,u="data:";if(e.substr(0,5)===u)throw new Error("Invalid base64 input, it looks like a data url.");var h,p=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&p--,e.charAt(e.length-2)===a.charAt(64)&&p--,p%1!=0)throw new Error("Invalid base64 input, bad content length.");for(h=n.uint8array?new Uint8Array(0|p):new Array(0|p);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(o=a.indexOf(e.charAt(l++)))>>4,i=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,r=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),h[d++]=t,64!==s&&(h[d++]=i),64!==c&&(h[d++]=r);return h}},{"./support":30,"./utils":32}],2:[function(e,t,i){var r=e("./external"),n=e("./stream/DataWorker"),a=e("./stream/Crc32Probe"),o=e("./stream/DataLengthProbe");function s(e,t,i,r,n){this.compressedSize=e,this.uncompressedSize=t,this.crc32=i,this.compression=r,this.compressedContent=n}s.prototype={getContentWorker:function(){var e=new n(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o("data_length")),t=this;return e.on("end",function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),e},getCompressedWorker:function(){return new n(r.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},s.createWorkerFrom=function(e,t,i){return e.pipe(new a).pipe(new o("uncompressedSize")).pipe(t.compressWorker(i)).pipe(new o("compressedSize")).withStreamInfo("compression",t)},t.exports=s},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,i){var r=e("./stream/GenericWorker");i.STORE={magic:"\0\0",compressWorker:function(){return new r("STORE compression")},uncompressWorker:function(){return new r("STORE decompression")}},i.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,i){var r=e("./utils"),n=function(){for(var e,t=[],i=0;i<256;i++){e=i;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[i]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?"string"!==r.getTypeOf(e)?function(e,t,i){var r=n,a=0+i;e^=-1;for(var o=0;o<a;o++)e=e>>>8^r[255&(e^t[o])];return-1^e}(0|t,e,e.length):function(e,t,i){var r=n,a=0+i;e^=-1;for(var o=0;o<a;o++)e=e>>>8^r[255&(e^t.charCodeAt(o))];return-1^e}(0|t,e,e.length):0}},{"./utils":32}],5:[function(e,t,i){i.base64=!1,i.binary=!1,i.dir=!1,i.createFolders=!0,i.date=null,i.compression=null,i.compressionOptions=null,i.comment=null,i.unixPermissions=null,i.dosPermissions=null},{}],6:[function(e,t,i){var r;r="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:r}},{lie:37}],7:[function(e,t,i){var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,n=e("pako"),a=e("./utils"),o=e("./stream/GenericWorker"),s=r?"uint8array":"array";function c(e,t){o.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}i.magic="\b\0",a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new n[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},i.compressWorker=function(e){return new c("Deflate",e)},i.uncompressWorker=function(){return new c("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,i){function r(e,t){var i,r="";for(i=0;i<t;i++)r+=String.fromCharCode(255&e),e>>>=8;return r}function n(e,t,i,n,o,d){var u,h,p=e.file,f=e.compression,m=d!==s.utf8encode,g=a.transformTo("string",d(p.name)),v=a.transformTo("string",s.utf8encode(p.name)),_=p.comment,y=a.transformTo("string",d(_)),E=a.transformTo("string",s.utf8encode(_)),b=v.length!==p.name.length,w=E.length!==_.length,I="",T="",S="",A=p.dir,R=p.date,k={crc32:0,compressedSize:0,uncompressedSize:0};t&&!i||(k.crc32=e.crc32,k.compressedSize=e.compressedSize,k.uncompressedSize=e.uncompressedSize);var C=0;t&&(C|=8),m||!b&&!w||(C|=2048);var D,O,L,N=0,P=0;A&&(N|=16),"UNIX"===o?(P=798,N|=(D=p.unixPermissions,O=A,L=D,D||(L=O?16893:33204),(65535&L)<<16)):(P=20,N|=function(e){return 63&(e||0)}(p.dosPermissions)),u=R.getUTCHours(),u<<=6,u|=R.getUTCMinutes(),u<<=5,u|=R.getUTCSeconds()/2,h=R.getUTCFullYear()-1980,h<<=4,h|=R.getUTCMonth()+1,h<<=5,h|=R.getUTCDate(),b&&(T=r(1,1)+r(c(g),4)+v,I+="up"+r(T.length,2)+T),w&&(S=r(1,1)+r(c(y),4)+E,I+="uc"+r(S.length,2)+S);var x="";return x+="\n\0",x+=r(C,2),x+=f.magic,x+=r(u,2),x+=r(h,2),x+=r(k.crc32,4),x+=r(k.compressedSize,4),x+=r(k.uncompressedSize,4),x+=r(g.length,2),x+=r(I.length,2),{fileRecord:l.LOCAL_FILE_HEADER+x+g+I,dirRecord:l.CENTRAL_FILE_HEADER+r(P,2)+x+r(y.length,2)+"\0\0\0\0"+r(N,4)+r(n,4)+g+I+y}}var a=e("../utils"),o=e("../stream/GenericWorker"),s=e("../utf8"),c=e("../crc32"),l=e("../signature");function d(e,t,i,r){o.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=i,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}a.inherits(d,o),d.prototype.push=function(e){var t=e.meta.percent||0,i=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,o.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:i?(t+100*(i-r-1))/i:100}}))},d.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var i=n(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:i.fileRecord,meta:{percent:0}})}else this.accumulate=!0},d.prototype.closedSource=function(e){this.accumulate=!1;var t,i=this.streamFiles&&!e.file.dir,a=n(e,i,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(a.dirRecord),i)this.push({data:(t=e,l.DATA_DESCRIPTOR+r(t.crc32,4)+r(t.compressedSize,4)+r(t.uncompressedSize,4)),meta:{percent:100}});else for(this.push({data:a.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},d.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var i,n,o,s,c,d,u=this.bytesWritten-e,h=(i=this.dirRecords.length,n=u,o=e,s=this.zipComment,c=this.encodeFileName,d=a.transformTo("string",c(s)),l.CENTRAL_DIRECTORY_END+"\0\0\0\0"+r(i,2)+r(i,2)+r(n,4)+r(o,4)+r(d.length,2)+d);this.push({data:h,meta:{percent:100}})},d.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},d.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()}),e.on("error",function(e){t.error(e)}),this},d.prototype.resume=function(){return!!o.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},d.prototype.error=function(e){var t=this._sources;if(!o.prototype.error.call(this,e))return!1;for(var i=0;i<t.length;i++)try{t[i].error(e)}catch(r){}return!0},d.prototype.lock=function(){o.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=d},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,i){var r=e("../compressions"),n=e("./ZipFileWorker");i.generateWorker=function(e,t,i){var a=new n(t.streamFiles,i,t.platform,t.encodeFileName),o=0;try{e.forEach(function(e,i){o++;var n=function(e,t){var i=e||t,n=r[i];if(!n)throw new Error(i+" is not a valid compression method !");return n}(i.options.compression,t.compression),s=i.options.compressionOptions||t.compressionOptions||{},c=i.dir,l=i.date;i._compressWorker(n,s).withStreamInfo("file",{name:e,dir:c,date:l,comment:i.comment||"",unixPermissions:i.unixPermissions,dosPermissions:i.dosPermissions}).pipe(a)}),a.entriesCount=o}catch(s){a.error(s)}return a}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,i){function r(){if(!(this instanceof r))return new r;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var e=new r;for(var t in this)"function"!=typeof this[t]&&(e[t]=this[t]);return e}}(r.prototype=e("./object")).loadAsync=e("./load"),r.support=e("./support"),r.defaults=e("./defaults"),r.version="3.10.1",r.loadAsync=function(e,t){return(new r).loadAsync(e,t)},r.external=e("./external"),t.exports=r},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,i){var r=e("./utils"),n=e("./external"),a=e("./utf8"),o=e("./zipEntries"),s=e("./stream/Crc32Probe"),c=e("./nodejsUtils");function l(e){return new n.Promise(function(t,i){var r=e.decompressed.getContentWorker().pipe(new s);r.on("error",function(e){i(e)}).on("end",function(){r.streamInfo.crc32!==e.decompressed.crc32?i(new Error("Corrupted zip : CRC32 mismatch")):t()}).resume()})}t.exports=function(e,t){var i=this;return t=r.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:a.utf8decode}),c.isNode&&c.isStream(e)?n.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):r.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then(function(e){var i=new o(t);return i.load(e),i}).then(function(e){var i=[n.Promise.resolve(e)],r=e.files;if(t.checkCRC32)for(var a=0;a<r.length;a++)i.push(l(r[a]));return n.Promise.all(i)}).then(function(e){for(var n=e.shift(),a=n.files,o=0;o<a.length;o++){var s=a[o],c=s.fileNameStr,l=r.resolve(s.fileNameStr);i.file(l,s.decompressed,{binary:!0,optimizedBinaryString:!0,date:s.date,dir:s.dir,comment:s.fileCommentStr.length?s.fileCommentStr:null,unixPermissions:s.unixPermissions,dosPermissions:s.dosPermissions,createFolders:t.createFolders}),s.dir||(i.file(l).unsafeOriginalName=c)}return n.zipComment.length&&(i.comment=n.zipComment),i})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,i){var r=e("../utils"),n=e("../stream/GenericWorker");function a(e,t){n.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}r.inherits(a,n),a.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on("data",function(e){t.push({data:e,meta:{percent:0}})}).on("error",function(e){t.isPaused?this.generatedError=e:t.error(e)}).on("end",function(){t.isPaused?t._upstreamEnded=!0:t.end()})},a.prototype.pause=function(){return!!n.prototype.pause.call(this)&&(this._stream.pause(),!0)},a.prototype.resume=function(){return!!n.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=a},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,i){var r=e("readable-stream").Readable;function n(e,t,i){r.call(this,t),this._helper=e;var n=this;e.on("data",function(e,t){n.push(e)||n._helper.pause(),i&&i(t)}).on("error",function(e){n.emit("error",e)}).on("end",function(){n.push(null)})}e("../utils").inherits(n,r),n.prototype._read=function(){this._helper.resume()},t.exports=n},{"../utils":32,"readable-stream":16}],14:[function(e,t,i){t.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},{}],15:[function(e,t,i){function r(e,t,i){var r,n=a.getTypeOf(t),s=a.extend(i||{},c);s.date=s.date||new Date,null!==s.compression&&(s.compression=s.compression.toUpperCase()),"string"==typeof s.unixPermissions&&(s.unixPermissions=parseInt(s.unixPermissions,8)),s.unixPermissions&&16384&s.unixPermissions&&(s.dir=!0),s.dosPermissions&&16&s.dosPermissions&&(s.dir=!0),s.dir&&(e=m(e)),s.createFolders&&(r=f(e))&&g.call(this,r,!0);var u="string"===n&&!1===s.binary&&!1===s.base64;i&&void 0!==i.binary||(s.binary=!u),(t instanceof l&&0===t.uncompressedSize||s.dir||!t||0===t.length)&&(s.base64=!1,s.binary=!0,t="",s.compression="STORE",n="string");var v;v=t instanceof l||t instanceof o?t:h.isNode&&h.isStream(t)?new p(e,t):a.prepareContent(e,t,s.binary,s.optimizedBinaryString,s.base64);var _=new d(e,v,s);this.files[e]=_}var n=e("./utf8"),a=e("./utils"),o=e("./stream/GenericWorker"),s=e("./stream/StreamHelper"),c=e("./defaults"),l=e("./compressedObject"),d=e("./zipObject"),u=e("./generate"),h=e("./nodejsUtils"),p=e("./nodejs/NodejsStreamInputAdapter"),f=function(e){"/"===e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return 0<t?e.substring(0,t):""},m=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},g=function(e,t){return t=void 0!==t?t:c.createFolders,e=m(e),this.files[e]||r.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function v(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var _={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,i,r;for(t in this.files)r=this.files[t],(i=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(i,r)},filter:function(e){var t=[];return this.forEach(function(i,r){e(i,r)&&t.push(r)}),t},file:function(e,t,i){if(1!==arguments.length)return e=this.root+e,r.call(this,e,t,i),this;if(v(e)){var n=e;return this.filter(function(e,t){return!t.dir&&n.test(e)})}var a=this.files[this.root+e];return a&&!a.dir?a:null},folder:function(e){if(!e)return this;if(v(e))return this.filter(function(t,i){return i.dir&&e.test(t)});var t=this.root+e,i=g.call(this,t),r=this.clone();return r.root=i.name,r},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!==e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var i=this.filter(function(t,i){return i.name.slice(0,e.length)===e}),r=0;r<i.length;r++)delete this.files[i[r].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t,i={};try{if((i=a.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:n.utf8encode})).type=i.type.toLowerCase(),i.compression=i.compression.toUpperCase(),"binarystring"===i.type&&(i.type="string"),!i.type)throw new Error("No output type specified.");a.checkSupport(i.type),"darwin"!==i.platform&&"freebsd"!==i.platform&&"linux"!==i.platform&&"sunos"!==i.platform||(i.platform="UNIX"),"win32"===i.platform&&(i.platform="DOS");var r=i.comment||this.comment||"";t=u.generateWorker(this,i,r)}catch(c){(t=new o("error")).error(c)}return new s(t,i.type||"string",i.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}};t.exports=_},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,i){t.exports=e("stream")},{stream:void 0}],17:[function(e,t,i){var r=e("./DataReader");function n(e){r.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}e("../utils").inherits(n,r),n.prototype.byteAt=function(e){return this.data[this.zero+e]},n.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),i=e.charCodeAt(1),r=e.charCodeAt(2),n=e.charCodeAt(3),a=this.length-4;0<=a;--a)if(this.data[a]===t&&this.data[a+1]===i&&this.data[a+2]===r&&this.data[a+3]===n)return a-this.zero;return-1},n.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),i=e.charCodeAt(1),r=e.charCodeAt(2),n=e.charCodeAt(3),a=this.readData(4);return t===a[0]&&i===a[1]&&r===a[2]&&n===a[3]},n.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=n},{"../utils":32,"./DataReader":18}],18:[function(e,t,i){var r=e("../utils");function n(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}n.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,i=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)i=(i<<8)+this.byteAt(t);return this.index+=e,i},readString:function(e){return r.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=n},{"../utils":32}],19:[function(e,t,i){var r=e("./Uint8ArrayReader");function n(e){r.call(this,e)}e("../utils").inherits(n,r),n.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=n},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,i){var r=e("./DataReader");function n(e){r.call(this,e)}e("../utils").inherits(n,r),n.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},n.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},n.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},n.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=n},{"../utils":32,"./DataReader":18}],21:[function(e,t,i){var r=e("./ArrayReader");function n(e){r.call(this,e)}e("../utils").inherits(n,r),n.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=n},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,i){var r=e("../utils"),n=e("../support"),a=e("./ArrayReader"),o=e("./StringReader"),s=e("./NodeBufferReader"),c=e("./Uint8ArrayReader");t.exports=function(e){var t=r.getTypeOf(e);return r.checkSupport(t),"string"!==t||n.uint8array?"nodebuffer"===t?new s(e):n.uint8array?new c(r.transformTo("uint8array",e)):new a(r.transformTo("array",e)):new o(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,i){i.LOCAL_FILE_HEADER="PK",i.CENTRAL_FILE_HEADER="PK",i.CENTRAL_DIRECTORY_END="PK",i.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",i.ZIP64_CENTRAL_DIRECTORY_END="PK",i.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,i){var r=e("./GenericWorker"),n=e("../utils");function a(e){r.call(this,"ConvertWorker to "+e),this.destType=e}n.inherits(a,r),a.prototype.processChunk=function(e){this.push({data:n.transformTo(this.destType,e.data),meta:e.meta})},t.exports=a},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,i){var r=e("./GenericWorker"),n=e("../crc32");function a(){r.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(a,r),a.prototype.processChunk=function(e){this.streamInfo.crc32=n(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=a},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,i){var r=e("../utils"),n=e("./GenericWorker");function a(e){n.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(a,n),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}n.prototype.processChunk.call(this,e)},t.exports=a},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,i){var r=e("../utils"),n=e("./GenericWorker");function a(e){n.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=r.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}r.inherits(a,n),a.prototype.cleanUp=function(){n.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!n.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=a},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,i){function r(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}r.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var i=0;i<this._listeners[e].length;i++)this._listeners[e][i].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.end()}),e.on("error",function(e){t.error(e)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var e=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},t.exports=r},{}],29:[function(e,t,i){var r=e("../utils"),n=e("./ConvertWorker"),a=e("./GenericWorker"),o=e("../base64"),s=e("../support"),c=e("../external"),l=null;if(s.nodestream)try{l=e("../nodejs/NodejsStreamOutputAdapter")}catch(u){}function d(e,t,i){var o=t;switch(t){case"blob":case"arraybuffer":o="uint8array";break;case"base64":o="string"}try{this._internalType=o,this._outputType=t,this._mimeType=i,r.checkSupport(o),this._worker=e.pipe(new n(o)),e.lock()}catch(s){this._worker=new a("error"),this._worker.error(s)}}d.prototype={accumulate:function(e){return function(e,t){return new c.Promise(function(i,n){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on("data",function(e,i){a.push(e),t&&t(i)}).on("error",function(e){a=[],n(e)}).on("end",function(){try{var e=function(e,t,i){switch(e){case"blob":return r.newBlob(r.transformTo("arraybuffer",t),i);case"base64":return o.encode(t);default:return r.transformTo(e,t)}}(c,function(e,t){var i,r=0,n=null,a=0;for(i=0;i<t.length;i++)a+=t[i].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(n=new Uint8Array(a),i=0;i<t.length;i++)n.set(t[i],r),r+=t[i].length;return n;case"nodebuffer":return Buffer.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}(s,a),l);i(e)}catch(t){n(t)}a=[]}).resume()})}(this,e)},on:function(e,t){var i=this;return"data"===e?this._worker.on(e,function(e){t.call(i,e.data,e.meta)}):this._worker.on(e,function(){r.delay(t,arguments,i)}),this},resume:function(){return r.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(r.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new l(this,{objectMode:"nodebuffer"!==this._outputType},e)}},t.exports=d},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,i){if(i.base64=!0,i.array=!0,i.string=!0,i.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,i.nodebuffer="undefined"!=typeof Buffer,i.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)i.blob=!1;else{var r=new ArrayBuffer(0);try{i.blob=0===new Blob([r],{type:"application/zip"}).size}catch(a){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);n.append(r),i.blob=0===n.getBlob("application/zip").size}catch(FA){i.blob=!1}}}try{i.nodestream=!!e("readable-stream").Readable}catch(a){i.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,i){for(var r=e("./utils"),n=e("./support"),a=e("./nodejsUtils"),o=e("./stream/GenericWorker"),s=new Array(256),c=0;c<256;c++)s[c]=252<=c?6:248<=c?5:240<=c?4:224<=c?3:192<=c?2:1;function l(){o.call(this,"utf-8 decode"),this.leftOver=null}function d(){o.call(this,"utf-8 encode")}s[254]=s[254]=1,i.utf8encode=function(e){return n.nodebuffer?a.newBufferFrom(e,"utf-8"):function(e){var t,i,r,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(i=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(r=e.charCodeAt(a+1)))&&(i=65536+(i-55296<<10)+(r-56320),a++),c+=i<128?1:i<2048?2:i<65536?3:4;for(t=n.uint8array?new Uint8Array(c):new Array(c),a=o=0;o<c;a++)55296==(64512&(i=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(r=e.charCodeAt(a+1)))&&(i=65536+(i-55296<<10)+(r-56320),a++),i<128?t[o++]=i:(i<2048?t[o++]=192|i>>>6:(i<65536?t[o++]=224|i>>>12:(t[o++]=240|i>>>18,t[o++]=128|i>>>12&63),t[o++]=128|i>>>6&63),t[o++]=128|63&i);return t}(e)},i.utf8decode=function(e){return n.nodebuffer?r.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,i,n,a,o=e.length,c=new Array(2*o);for(t=i=0;t<o;)if((n=e[t++])<128)c[i++]=n;else if(4<(a=s[n]))c[i++]=65533,t+=a-1;else{for(n&=2===a?31:3===a?15:7;1<a&&t<o;)n=n<<6|63&e[t++],a--;1<a?c[i++]=65533:n<65536?c[i++]=n:(n-=65536,c[i++]=55296|n>>10&1023,c[i++]=56320|1023&n)}return c.length!==i&&(c.subarray?c=c.subarray(0,i):c.length=i),r.applyFromCharCode(c)}(e=r.transformTo(n.uint8array?"uint8array":"array",e))},r.inherits(l,o),l.prototype.processChunk=function(e){var t=r.transformTo(n.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(n.uint8array){var a=t;(t=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),t.set(a,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var o=function(e,t){var i;for((t=t||e.length)>e.length&&(t=e.length),i=t-1;0<=i&&128==(192&e[i]);)i--;return i<0||0===i?t:i+s[e[i]]>t?i:t}(t),c=t;o!==t.length&&(n.uint8array?(c=t.subarray(0,o),this.leftOver=t.subarray(o,t.length)):(c=t.slice(0,o),this.leftOver=t.slice(o,t.length))),this.push({data:i.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:i.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},i.Utf8DecodeWorker=l,r.inherits(d,o),d.prototype.processChunk=function(e){this.push({data:i.utf8encode(e.data),meta:e.meta})},i.Utf8EncodeWorker=d},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,i){var r=e("./support"),n=e("./base64"),a=e("./nodejsUtils"),o=e("./external");function s(e){return e}function c(e,t){for(var i=0;i<e.length;++i)t[i]=255&e.charCodeAt(i);return t}e("setimmediate"),i.newBlob=function(e,t){i.checkSupport("blob");try{return new Blob([e],{type:t})}catch(n){try{var r=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return r.append(e),r.getBlob(t)}catch(a){throw new Error("Bug : can't construct the Blob.")}}};var l={stringifyByChunk:function(e,t,i){var r=[],n=0,a=e.length;if(a<=i)return String.fromCharCode.apply(null,e);for(;n<a;)"array"===t||"nodebuffer"===t?r.push(String.fromCharCode.apply(null,e.slice(n,Math.min(n+i,a)))):r.push(String.fromCharCode.apply(null,e.subarray(n,Math.min(n+i,a)))),n+=i;return r.join("")},stringifyByChar:function(e){for(var t="",i=0;i<e.length;i++)t+=String.fromCharCode(e[i]);return t},applyCanBeUsed:{uint8array:function(){try{return r.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return r.nodebuffer&&1===String.fromCharCode.apply(null,a.allocBuffer(1)).length}catch(e){return!1}}()}};function d(e){var t=65536,r=i.getTypeOf(e),n=!0;if("uint8array"===r?n=l.applyCanBeUsed.uint8array:"nodebuffer"===r&&(n=l.applyCanBeUsed.nodebuffer),n)for(;1<t;)try{return l.stringifyByChunk(e,r,t)}catch(a){t=Math.floor(t/2)}return l.stringifyByChar(e)}function u(e,t){for(var i=0;i<e.length;i++)t[i]=e[i];return t}i.applyFromCharCode=d;var h={};h.string={string:s,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return h.string.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:function(e){return c(e,a.allocBuffer(e.length))}},h.array={string:d,array:s,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(e)}},h.arraybuffer={string:function(e){return d(new Uint8Array(e))},array:function(e){return u(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:s,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(new Uint8Array(e))}},h.uint8array={string:d,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:s,nodebuffer:function(e){return a.newBufferFrom(e)}},h.nodebuffer={string:d,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return h.nodebuffer.uint8array(e).buffer},uint8array:function(e){return u(e,new Uint8Array(e.length))},nodebuffer:s},i.transformTo=function(e,t){if(t=t||"",!e)return t;i.checkSupport(e);var r=i.getTypeOf(t);return h[r][e](t)},i.resolve=function(e){for(var t=e.split("/"),i=[],r=0;r<t.length;r++){var n=t[r];"."===n||""===n&&0!==r&&r!==t.length-1||(".."===n?i.pop():i.push(n))}return i.join("/")},i.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":r.nodebuffer&&a.isBuffer(e)?"nodebuffer":r.uint8array&&e instanceof Uint8Array?"uint8array":r.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},i.checkSupport=function(e){if(!r[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},i.MAX_VALUE_16BITS=65535,i.MAX_VALUE_32BITS=-1,i.pretty=function(e){var t,i,r="";for(i=0;i<(e||"").length;i++)r+="\\x"+((t=e.charCodeAt(i))<16?"0":"")+t.toString(16).toUpperCase();return r},i.delay=function(e,t,i){setImmediate(function(){e.apply(i||null,t||[])})},i.inherits=function(e,t){function i(){}i.prototype=t.prototype,e.prototype=new i},i.extend=function(){var e,t,i={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&void 0===i[t]&&(i[t]=arguments[e][t]);return i},i.prepareContent=function(e,t,a,s,l){return o.Promise.resolve(t).then(function(e){return r.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new o.Promise(function(t,i){var r=new FileReader;r.onload=function(e){t(e.target.result)},r.onerror=function(e){i(e.target.error)},r.readAsArrayBuffer(e)}):e}).then(function(t){var d,u=i.getTypeOf(t);return u?("arraybuffer"===u?t=i.transformTo("uint8array",t):"string"===u&&(l?t=n.decode(t):a&&!0!==s&&(t=c(d=t,r.uint8array?new Uint8Array(d.length):new Array(d.length)))),t):o.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(e,t,i){var r=e("./reader/readerFor"),n=e("./utils"),a=e("./signature"),o=e("./zipEntry"),s=e("./support");function c(e){this.files=[],this.loadOptions=e}c.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+n.pretty(t)+", expected "+n.pretty(e)+")")}},isSignature:function(e,t){var i=this.reader.index;this.reader.setIndex(e);var r=this.reader.readString(4)===t;return this.reader.setIndex(i),r},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=s.uint8array?"uint8array":"array",i=n.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(i)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,i,r=this.zip64EndOfCentralSize-44;0<r;)e=this.reader.readInt(2),t=this.reader.readInt(4),i=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:i}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(a.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(a.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(a.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,a.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(e);var t=e;if(this.checkSignature(a.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===n.MAX_VALUE_16BITS||this.diskWithCentralDirStart===n.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===n.MAX_VALUE_16BITS||this.centralDirRecords===n.MAX_VALUE_16BITS||this.centralDirSize===n.MAX_VALUE_32BITS||this.centralDirOffset===n.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,a.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var i=this.centralDirOffset+this.centralDirSize;this.zip64&&(i+=20,i+=12+this.zip64EndOfCentralSize);var r=t-i;if(0<r)this.isSignature(t,a.CENTRAL_FILE_HEADER)||(this.reader.zero=r);else if(r<0)throw new Error("Corrupted zip: missing "+Math.abs(r)+" bytes.")},prepareReader:function(e){this.reader=r(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=c},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(e,t,i){var r=e("./reader/readerFor"),n=e("./utils"),a=e("./compressedObject"),o=e("./crc32"),s=e("./utf8"),c=e("./compressions"),l=e("./support");function d(e,t){this.options=e,this.loadOptions=t}d.prototype={isEncrypted:function(){return!(1&~this.bitFlag)},useUTF8:function(){return!(2048&~this.bitFlag)},readLocalPart:function(e){var t,i;if(e.skip(22),this.fileNameLength=e.readInt(2),i=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(i),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in c)if(Object.prototype.hasOwnProperty.call(c,t)&&c[t].magic===e)return c[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+n.pretty(this.compressionMethod)+" unknown (inner file : "+n.transformTo("string",this.fileName)+")");this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=r(this.extraFields[1].value);this.uncompressedSize===n.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===n.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===n.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===n.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,i,r,n=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<n;)t=e.readInt(2),i=e.readInt(2),r=e.readData(i),this.extraFields[t]={id:t,length:i,value:r};e.setIndex(n)},handleUTF8:function(){var e=l.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=s.utf8decode(this.fileName),this.fileCommentStr=s.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(null!==t)this.fileNameStr=t;else{var i=n.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(i)}var r=this.findExtraFieldUnicodeComment();if(null!==r)this.fileCommentStr=r;else{var a=n.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(a)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=r(e.value);return 1!==t.readInt(1)||o(this.fileName)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=r(e.value);return 1!==t.readInt(1)||o(this.fileComment)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null}},t.exports=d},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,i){function r(e,t,i){this.name=e,this.dir=i.dir,this.date=i.date,this.comment=i.comment,this.unixPermissions=i.unixPermissions,this.dosPermissions=i.dosPermissions,this._data=t,this._dataBinary=i.binary,this.options={compression:i.compression,compressionOptions:i.compressionOptions}}var n=e("./stream/StreamHelper"),a=e("./stream/DataWorker"),o=e("./utf8"),s=e("./compressedObject"),c=e("./stream/GenericWorker");r.prototype={internalStream:function(e){var t=null,i="string";try{if(!e)throw new Error("No output type specified.");var r="string"===(i=e.toLowerCase())||"text"===i;"binarystring"!==i&&"text"!==i||(i="string"),t=this._decompressWorker();var a=!this._dataBinary;a&&!r&&(t=t.pipe(new o.Utf8EncodeWorker)),!a&&r&&(t=t.pipe(new o.Utf8DecodeWorker))}catch(s){(t=new c("error")).error(s)}return new n(t,i,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof s&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var i=this._decompressWorker();return this._dataBinary||(i=i.pipe(new o.Utf8EncodeWorker)),s.createWorkerFrom(i,e,t)},_decompressWorker:function(){return this._data instanceof s?this._data.getContentWorker():this._data instanceof c?this._data:new a(this._data)}};for(var l=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],d=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},u=0;u<l.length;u++)r.prototype[l[u]]=d;t.exports=r},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,i){(function(e){var i,r,n=e.MutationObserver||e.WebKitMutationObserver;if(n){var a=0,o=new n(d),s=e.document.createTextNode("");o.observe(s,{characterData:!0}),i=function(){s.data=a=++a%2}}else if(e.setImmediate||void 0===e.MessageChannel)i="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){d(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(d,0)};else{var c=new e.MessageChannel;c.port1.onmessage=d,i=function(){c.port2.postMessage(0)}}var l=[];function d(){var e,t;r=!0;for(var i=l.length;i;){for(t=l,l=[],e=-1;++e<i;)t[e]();i=l.length}r=!1}t.exports=function(e){1!==l.push(e)||r||i()}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],37:[function(e,t,i){var r=e("immediate");function n(){}var a={},o=["REJECTED"],s=["FULFILLED"],c=["PENDING"];function l(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=c,this.queue=[],this.outcome=void 0,e!==n&&p(this,e)}function d(e,t,i){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof i&&(this.onRejected=i,this.callRejected=this.otherCallRejected)}function u(e,t,i){r(function(){var r;try{r=t(i)}catch(WO){return a.reject(e,WO)}r===e?a.reject(e,new TypeError("Cannot resolve promise with itself")):a.resolve(e,r)})}function h(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function p(e,t){var i=!1;function r(t){i||(i=!0,a.reject(e,t))}function n(t){i||(i=!0,a.resolve(e,t))}var o=f(function(){t(n,r)});"error"===o.status&&r(o.value)}function f(e,t){var i={};try{i.value=e(t),i.status="success"}catch(r){i.status="error",i.value=r}return i}(t.exports=l).prototype.finally=function(e){if("function"!=typeof e)return this;var t=this.constructor;return this.then(function(i){return t.resolve(e()).then(function(){return i})},function(i){return t.resolve(e()).then(function(){throw i})})},l.prototype.catch=function(e){return this.then(null,e)},l.prototype.then=function(e,t){if("function"!=typeof e&&this.state===s||"function"!=typeof t&&this.state===o)return this;var i=new this.constructor(n);return this.state!==c?u(i,this.state===s?e:t,this.outcome):this.queue.push(new d(i,e,t)),i},d.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},d.prototype.otherCallFulfilled=function(e){u(this.promise,this.onFulfilled,e)},d.prototype.callRejected=function(e){a.reject(this.promise,e)},d.prototype.otherCallRejected=function(e){u(this.promise,this.onRejected,e)},a.resolve=function(e,t){var i=f(h,t);if("error"===i.status)return a.reject(e,i.value);var r=i.value;if(r)p(e,r);else{e.state=s,e.outcome=t;for(var n=-1,o=e.queue.length;++n<o;)e.queue[n].callFulfilled(t)}return e},a.reject=function(e,t){e.state=o,e.outcome=t;for(var i=-1,r=e.queue.length;++i<r;)e.queue[i].callRejected(t);return e},l.resolve=function(e){return e instanceof this?e:a.resolve(new this(n),e)},l.reject=function(e){var t=new this(n);return a.reject(t,e)},l.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var i=e.length,r=!1;if(!i)return this.resolve([]);for(var o=new Array(i),s=0,c=-1,l=new this(n);++c<i;)d(e[c],c);return l;function d(e,n){t.resolve(e).then(function(e){o[n]=e,++s!==i||r||(r=!0,a.resolve(l,o))},function(e){r||(r=!0,a.reject(l,e))})}},l.race=function(e){if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var t,i=e.length,r=!1;if(!i)return this.resolve([]);for(var o=-1,s=new this(n);++o<i;)t=e[o],this.resolve(t).then(function(e){r||(r=!0,a.resolve(s,e))},function(e){r||(r=!0,a.reject(s,e))});return s}},{immediate:36}],38:[function(e,t,i){var r={};(0,e("./lib/utils/common").assign)(r,e("./lib/deflate"),e("./lib/inflate"),e("./lib/zlib/constants")),t.exports=r},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,i){var r=e("./zlib/deflate"),n=e("./utils/common"),a=e("./utils/strings"),o=e("./zlib/messages"),s=e("./zlib/zstream"),c=Object.prototype.toString;function l(e){if(!(this instanceof l))return new l(e);this.options=n.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=this.options;t.raw&&0<t.windowBits?t.windowBits=-t.windowBits:t.gzip&&0<t.windowBits&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var i=r.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(0!==i)throw new Error(o[i]);if(t.header&&r.deflateSetHeader(this.strm,t.header),t.dictionary){var d;if(d="string"==typeof t.dictionary?a.string2buf(t.dictionary):"[object ArrayBuffer]"===c.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,0!==(i=r.deflateSetDictionary(this.strm,d)))throw new Error(o[i]);this._dict_set=!0}}function d(e,t){var i=new l(t);if(i.push(e,!0),i.err)throw i.msg||o[i.err];return i.result}l.prototype.push=function(e,t){var i,o,s=this.strm,l=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"==typeof e?s.input=a.string2buf(e):"[object ArrayBuffer]"===c.call(e)?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(0===s.avail_out&&(s.output=new n.Buf8(l),s.next_out=0,s.avail_out=l),1!==(i=r.deflate(s,o))&&0!==i)return this.onEnd(i),!(this.ended=!0);0!==s.avail_out&&(0!==s.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(a.buf2binstring(n.shrinkBuf(s.output,s.next_out))):this.onData(n.shrinkBuf(s.output,s.next_out)))}while((0<s.avail_in||0===s.avail_out)&&1!==i);return 4===o?(i=r.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,0===i):2!==o||(this.onEnd(0),!(s.avail_out=0))},l.prototype.onData=function(e){this.chunks.push(e)},l.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=n.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},i.Deflate=l,i.deflate=d,i.deflateRaw=function(e,t){return(t=t||{}).raw=!0,d(e,t)},i.gzip=function(e,t){return(t=t||{}).gzip=!0,d(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,i){var r=e("./zlib/inflate"),n=e("./utils/common"),a=e("./utils/strings"),o=e("./zlib/constants"),s=e("./zlib/messages"),c=e("./zlib/zstream"),l=e("./zlib/gzheader"),d=Object.prototype.toString;function u(e){if(!(this instanceof u))return new u(e);this.options=n.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&!(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new c,this.strm.avail_out=0;var i=r.inflateInit2(this.strm,t.windowBits);if(i!==o.Z_OK)throw new Error(s[i]);this.header=new l,r.inflateGetHeader(this.strm,this.header)}function h(e,t){var i=new u(t);if(i.push(e,!0),i.err)throw i.msg||s[i.err];return i.result}u.prototype.push=function(e,t){var i,s,c,l,u,h,p=this.strm,f=this.options.chunkSize,m=this.options.dictionary,g=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"==typeof e?p.input=a.binstring2buf(e):"[object ArrayBuffer]"===d.call(e)?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(0===p.avail_out&&(p.output=new n.Buf8(f),p.next_out=0,p.avail_out=f),(i=r.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&m&&(h="string"==typeof m?a.string2buf(m):"[object ArrayBuffer]"===d.call(m)?new Uint8Array(m):m,i=r.inflateSetDictionary(this.strm,h)),i===o.Z_BUF_ERROR&&!0===g&&(i=o.Z_OK,g=!1),i!==o.Z_STREAM_END&&i!==o.Z_OK)return this.onEnd(i),!(this.ended=!0);p.next_out&&(0!==p.avail_out&&i!==o.Z_STREAM_END&&(0!==p.avail_in||s!==o.Z_FINISH&&s!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(c=a.utf8border(p.output,p.next_out),l=p.next_out-c,u=a.buf2string(p.output,c),p.next_out=l,p.avail_out=f-l,l&&n.arraySet(p.output,p.output,c,l,0),this.onData(u)):this.onData(n.shrinkBuf(p.output,p.next_out)))),0===p.avail_in&&0===p.avail_out&&(g=!0)}while((0<p.avail_in||0===p.avail_out)&&i!==o.Z_STREAM_END);return i===o.Z_STREAM_END&&(s=o.Z_FINISH),s===o.Z_FINISH?(i=r.inflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===o.Z_OK):s!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),!(p.avail_out=0))},u.prototype.onData=function(e){this.chunks.push(e)},u.prototype.onEnd=function(e){e===o.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=n.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},i.Inflate=u,i.inflate=h,i.inflateRaw=function(e,t){return(t=t||{}).raw=!0,h(e,t)},i.ungzip=h},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(e,t,i){var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;i.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var i=t.shift();if(i){if("object"!=typeof i)throw new TypeError(i+"must be non-object");for(var r in i)i.hasOwnProperty(r)&&(e[r]=i[r])}}return e},i.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var n={arraySet:function(e,t,i,r,n){if(t.subarray&&e.subarray)e.set(t.subarray(i,i+r),n);else for(var a=0;a<r;a++)e[n+a]=t[i+a]},flattenChunks:function(e){var t,i,r,n,a,o;for(t=r=0,i=e.length;t<i;t++)r+=e[t].length;for(o=new Uint8Array(r),t=n=0,i=e.length;t<i;t++)a=e[t],o.set(a,n),n+=a.length;return o}},a={arraySet:function(e,t,i,r,n){for(var a=0;a<r;a++)e[n+a]=t[i+a]},flattenChunks:function(e){return[].concat.apply([],e)}};i.setTyped=function(e){e?(i.Buf8=Uint8Array,i.Buf16=Uint16Array,i.Buf32=Int32Array,i.assign(i,n)):(i.Buf8=Array,i.Buf16=Array,i.Buf32=Array,i.assign(i,a))},i.setTyped(r)},{}],42:[function(e,t,i){var r=e("./common"),n=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch(l){n=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(l){a=!1}for(var o=new r.Buf8(256),s=0;s<256;s++)o[s]=252<=s?6:248<=s?5:240<=s?4:224<=s?3:192<=s?2:1;function c(e,t){if(t<65537&&(e.subarray&&a||!e.subarray&&n))return String.fromCharCode.apply(null,r.shrinkBuf(e,t));for(var i="",o=0;o<t;o++)i+=String.fromCharCode(e[o]);return i}o[254]=o[254]=1,i.string2buf=function(e){var t,i,n,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(i=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(i=65536+(i-55296<<10)+(n-56320),a++),c+=i<128?1:i<2048?2:i<65536?3:4;for(t=new r.Buf8(c),a=o=0;o<c;a++)55296==(64512&(i=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(i=65536+(i-55296<<10)+(n-56320),a++),i<128?t[o++]=i:(i<2048?t[o++]=192|i>>>6:(i<65536?t[o++]=224|i>>>12:(t[o++]=240|i>>>18,t[o++]=128|i>>>12&63),t[o++]=128|i>>>6&63),t[o++]=128|63&i);return t},i.buf2binstring=function(e){return c(e,e.length)},i.binstring2buf=function(e){for(var t=new r.Buf8(e.length),i=0,n=t.length;i<n;i++)t[i]=e.charCodeAt(i);return t},i.buf2string=function(e,t){var i,r,n,a,s=t||e.length,l=new Array(2*s);for(i=r=0;i<s;)if((n=e[i++])<128)l[r++]=n;else if(4<(a=o[n]))l[r++]=65533,i+=a-1;else{for(n&=2===a?31:3===a?15:7;1<a&&i<s;)n=n<<6|63&e[i++],a--;1<a?l[r++]=65533:n<65536?l[r++]=n:(n-=65536,l[r++]=55296|n>>10&1023,l[r++]=56320|1023&n)}return c(l,r)},i.utf8border=function(e,t){var i;for((t=t||e.length)>e.length&&(t=e.length),i=t-1;0<=i&&128==(192&e[i]);)i--;return i<0||0===i?t:i+o[e[i]]>t?i:t}},{"./common":41}],43:[function(e,t,i){t.exports=function(e,t,i,r){for(var n=65535&e,a=e>>>16&65535,o=0;0!==i;){for(i-=o=2e3<i?2e3:i;a=a+(n=n+t[r++]|0)|0,--o;);n%=65521,a%=65521}return n|a<<16}},{}],44:[function(e,t,i){t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(e,t,i){var r=function(){for(var e,t=[],i=0;i<256;i++){e=i;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[i]=e}return t}();t.exports=function(e,t,i,n){var a=r,o=n+i;e^=-1;for(var s=n;s<o;s++)e=e>>>8^a[255&(e^t[s])];return-1^e}},{}],46:[function(e,t,i){var r,n=e("../utils/common"),a=e("./trees"),o=e("./adler32"),s=e("./crc32"),c=e("./messages"),l=-2,d=258,u=262,h=113;function p(e,t){return e.msg=c[t],t}function f(e){return(e<<1)-(4<e?9:0)}function m(e){for(var t=e.length;0<=--t;)e[t]=0}function g(e){var t=e.state,i=t.pending;i>e.avail_out&&(i=e.avail_out),0!==i&&(n.arraySet(e.output,t.pending_buf,t.pending_out,i,e.next_out),e.next_out+=i,t.pending_out+=i,e.total_out+=i,e.avail_out-=i,t.pending-=i,0===t.pending&&(t.pending_out=0))}function v(e,t){a._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,g(e.strm)}function _(e,t){e.pending_buf[e.pending++]=t}function y(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function E(e,t){var i,r,n=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-u?e.strstart-(e.w_size-u):0,l=e.window,h=e.w_mask,p=e.prev,f=e.strstart+d,m=l[a+o-1],g=l[a+o];e.prev_length>=e.good_match&&(n>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(i=t)+o]===g&&l[i+o-1]===m&&l[i]===l[a]&&l[++i]===l[a+1]){a+=2,i++;do{}while(l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&a<f);if(r=d-(f-a),a=f-d,o<r){if(e.match_start=t,s<=(o=r))break;m=l[a+o-1],g=l[a+o]}}}while((t=p[t&h])>c&&0!=--n);return o<=e.lookahead?o:e.lookahead}function b(e){var t,i,r,a,c,l,d,h,p,f,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-u)){for(n.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=i=e.hash_size;r=e.head[--t],e.head[t]=m<=r?r-m:0,--i;);for(t=i=m;r=e.prev[--t],e.prev[t]=m<=r?r-m:0,--i;);a+=m}if(0===e.strm.avail_in)break;if(l=e.strm,d=e.window,h=e.strstart+e.lookahead,f=void 0,(p=a)<(f=l.avail_in)&&(f=p),i=0===f?0:(l.avail_in-=f,n.arraySet(d,l.input,l.next_in,f,h),1===l.state.wrap?l.adler=o(l.adler,d,f,h):2===l.state.wrap&&(l.adler=s(l.adler,d,f,h)),l.next_in+=f,l.total_in+=f,f),e.lookahead+=i,e.lookahead+e.insert>=3)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+3-1])&e.hash_mask,e.prev[c&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=c,c++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<u&&0!==e.strm.avail_in)}function w(e,t){for(var i,r;;){if(e.lookahead<u){if(b(e),e.lookahead<u&&0===t)return 1;if(0===e.lookahead)break}if(i=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,i=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==i&&e.strstart-i<=e.w_size-u&&(e.match_length=E(e,i)),e.match_length>=3)if(r=a._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,i=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart,0!=--e.match_length;);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(v(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(v(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(v(e,!1),0===e.strm.avail_out)?1:2}function I(e,t){for(var i,r,n;;){if(e.lookahead<u){if(b(e),e.lookahead<u&&0===t)return 1;if(0===e.lookahead)break}if(i=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,i=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==i&&e.prev_length<e.max_lazy_match&&e.strstart-i<=e.w_size-u&&(e.match_length=E(e,i),e.match_length<=5&&(1===e.strategy||3===e.match_length&&4096<e.strstart-e.match_start)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){for(n=e.strstart+e.lookahead-3,r=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=n&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,i=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!=--e.prev_length;);if(e.match_available=0,e.match_length=2,e.strstart++,r&&(v(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((r=a._tr_tally(e,0,e.window[e.strstart-1]))&&v(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=a._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,4===t?(v(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(v(e,!1),0===e.strm.avail_out)?1:2}function T(e,t,i,r,n){this.good_length=e,this.max_lazy=t,this.nice_length=i,this.max_chain=r,this.func=n}function S(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new n.Buf16(1146),this.dyn_dtree=new n.Buf16(122),this.bl_tree=new n.Buf16(78),m(this.dyn_ltree),m(this.dyn_dtree),m(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new n.Buf16(16),this.heap=new n.Buf16(573),m(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new n.Buf16(573),m(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function A(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:h,e.adler=2===t.wrap?0:1,t.last_flush=0,a._tr_init(t),0):p(e,l)}function R(e){var t,i=A(e);return 0===i&&((t=e.state).window_size=2*t.w_size,m(t.head),t.max_lazy_match=r[t.level].max_lazy,t.good_match=r[t.level].good_length,t.nice_match=r[t.level].nice_length,t.max_chain_length=r[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0),i}function k(e,t,i,r,a,o){if(!e)return l;var s=1;if(-1===t&&(t=6),r<0?(s=0,r=-r):15<r&&(s=2,r-=16),a<1||9<a||8!==i||r<8||15<r||t<0||9<t||o<0||4<o)return p(e,l);8===r&&(r=9);var c=new S;return(e.state=c).strm=e,c.wrap=s,c.gzhead=null,c.w_bits=r,c.w_size=1<<c.w_bits,c.w_mask=c.w_size-1,c.hash_bits=a+7,c.hash_size=1<<c.hash_bits,c.hash_mask=c.hash_size-1,c.hash_shift=~~((c.hash_bits+3-1)/3),c.window=new n.Buf8(2*c.w_size),c.head=new n.Buf16(c.hash_size),c.prev=new n.Buf16(c.w_size),c.lit_bufsize=1<<a+6,c.pending_buf_size=4*c.lit_bufsize,c.pending_buf=new n.Buf8(c.pending_buf_size),c.d_buf=1*c.lit_bufsize,c.l_buf=3*c.lit_bufsize,c.level=t,c.strategy=o,c.method=i,R(e)}r=[new T(0,0,0,0,function(e,t){var i=65535;for(i>e.pending_buf_size-5&&(i=e.pending_buf_size-5);;){if(e.lookahead<=1){if(b(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+i;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,v(e,!1),0===e.strm.avail_out)||e.strstart-e.block_start>=e.w_size-u&&(v(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(v(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(v(e,!1),e.strm.avail_out),1)}),new T(4,4,8,4,w),new T(4,5,16,8,w),new T(4,6,32,32,w),new T(4,4,16,16,I),new T(8,16,32,32,I),new T(8,16,128,128,I),new T(8,32,128,256,I),new T(32,128,258,1024,I),new T(32,258,258,4096,I)],i.deflateInit=function(e,t){return k(e,t,8,15,8,0)},i.deflateInit2=k,i.deflateReset=R,i.deflateResetKeep=A,i.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?l:(e.state.gzhead=t,0):l},i.deflate=function(e,t){var i,n,o,c;if(!e||!e.state||5<t||t<0)return e?p(e,l):l;if(n=e.state,!e.output||!e.input&&0!==e.avail_in||666===n.status&&4!==t)return p(e,0===e.avail_out?-5:l);if(n.strm=e,i=n.last_flush,n.last_flush=t,42===n.status)if(2===n.wrap)e.adler=0,_(n,31),_(n,139),_(n,8),n.gzhead?(_(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),_(n,255&n.gzhead.time),_(n,n.gzhead.time>>8&255),_(n,n.gzhead.time>>16&255),_(n,n.gzhead.time>>24&255),_(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),_(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(_(n,255&n.gzhead.extra.length),_(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=s(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(_(n,0),_(n,0),_(n,0),_(n,0),_(n,0),_(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),_(n,3),n.status=h);else{var u=8+(n.w_bits-8<<4)<<8;u|=(2<=n.strategy||n.level<2?0:n.level<6?1:6===n.level?2:3)<<6,0!==n.strstart&&(u|=32),u+=31-u%31,n.status=h,y(n,u),0!==n.strstart&&(y(n,e.adler>>>16),y(n,65535&e.adler)),e.adler=1}if(69===n.status)if(n.gzhead.extra){for(o=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),g(e),o=n.pending,n.pending!==n.pending_buf_size));)_(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){o=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),g(e),o=n.pending,n.pending===n.pending_buf_size)){c=1;break}c=n.gzindex<n.gzhead.name.length?255&n.gzhead.name.charCodeAt(n.gzindex++):0,_(n,c)}while(0!==c);n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),0===c&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){o=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),g(e),o=n.pending,n.pending===n.pending_buf_size)){c=1;break}c=n.gzindex<n.gzhead.comment.length?255&n.gzhead.comment.charCodeAt(n.gzindex++):0,_(n,c)}while(0!==c);n.gzhead.hcrc&&n.pending>o&&(e.adler=s(e.adler,n.pending_buf,n.pending-o,o)),0===c&&(n.status=103)}else n.status=103;if(103===n.status&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&g(e),n.pending+2<=n.pending_buf_size&&(_(n,255&e.adler),_(n,e.adler>>8&255),e.adler=0,n.status=h)):n.status=h),0!==n.pending){if(g(e),0===e.avail_out)return n.last_flush=-1,0}else if(0===e.avail_in&&f(t)<=f(i)&&4!==t)return p(e,-5);if(666===n.status&&0!==e.avail_in)return p(e,-5);if(0!==e.avail_in||0!==n.lookahead||0!==t&&666!==n.status){var E=2===n.strategy?function(e,t){for(var i;;){if(0===e.lookahead&&(b(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,i=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,i&&(v(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(v(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(v(e,!1),0===e.strm.avail_out)?1:2}(n,t):3===n.strategy?function(e,t){for(var i,r,n,o,s=e.window;;){if(e.lookahead<=d){if(b(e),e.lookahead<=d&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&0<e.strstart&&(r=s[n=e.strstart-1])===s[++n]&&r===s[++n]&&r===s[++n]){o=e.strstart+d;do{}while(r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&r===s[++n]&&n<o);e.match_length=d-(o-n),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(i=a._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(i=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),i&&(v(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(v(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(v(e,!1),0===e.strm.avail_out)?1:2}(n,t):r[n.level].func(n,t);if(3!==E&&4!==E||(n.status=666),1===E||3===E)return 0===e.avail_out&&(n.last_flush=-1),0;if(2===E&&(1===t?a._tr_align(n):5!==t&&(a._tr_stored_block(n,0,0,!1),3===t&&(m(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),g(e),0===e.avail_out))return n.last_flush=-1,0}return 4!==t?0:n.wrap<=0?1:(2===n.wrap?(_(n,255&e.adler),_(n,e.adler>>8&255),_(n,e.adler>>16&255),_(n,e.adler>>24&255),_(n,255&e.total_in),_(n,e.total_in>>8&255),_(n,e.total_in>>16&255),_(n,e.total_in>>24&255)):(y(n,e.adler>>>16),y(n,65535&e.adler)),g(e),0<n.wrap&&(n.wrap=-n.wrap),0!==n.pending?0:1)},i.deflateEnd=function(e){var t;return e&&e.state?42!==(t=e.state.status)&&69!==t&&73!==t&&91!==t&&103!==t&&t!==h&&666!==t?p(e,l):(e.state=null,t===h?p(e,-3):0):l},i.deflateSetDictionary=function(e,t){var i,r,a,s,c,d,u,h,p=t.length;if(!e||!e.state||2===(s=(i=e.state).wrap)||1===s&&42!==i.status||i.lookahead)return l;for(1===s&&(e.adler=o(e.adler,t,p,0)),i.wrap=0,p>=i.w_size&&(0===s&&(m(i.head),i.strstart=0,i.block_start=0,i.insert=0),h=new n.Buf8(i.w_size),n.arraySet(h,t,p-i.w_size,i.w_size,0),t=h,p=i.w_size),c=e.avail_in,d=e.next_in,u=e.input,e.avail_in=p,e.next_in=0,e.input=t,b(i);i.lookahead>=3;){for(r=i.strstart,a=i.lookahead-2;i.ins_h=(i.ins_h<<i.hash_shift^i.window[r+3-1])&i.hash_mask,i.prev[r&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=r,r++,--a;);i.strstart=r,i.lookahead=2,b(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,e.next_in=d,e.input=u,e.avail_in=c,i.wrap=s,0},i.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,i){t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(e,t,i){t.exports=function(e,t){var i,r,n,a,o,s,c,l,d,u,h,p,f,m,g,v,_,y,E,b,w,I,T,S,A;i=e.state,r=e.next_in,S=e.input,n=r+(e.avail_in-5),a=e.next_out,A=e.output,o=a-(t-e.avail_out),s=a+(e.avail_out-257),c=i.dmax,l=i.wsize,d=i.whave,u=i.wnext,h=i.window,p=i.hold,f=i.bits,m=i.lencode,g=i.distcode,v=(1<<i.lenbits)-1,_=(1<<i.distbits)-1;e:do{f<15&&(p+=S[r++]<<f,f+=8,p+=S[r++]<<f,f+=8),y=m[p&v];t:for(;;){if(p>>>=E=y>>>24,f-=E,0==(E=y>>>16&255))A[a++]=65535&y;else{if(!(16&E)){if(!(64&E)){y=m[(65535&y)+(p&(1<<E)-1)];continue t}if(32&E){i.mode=12;break e}e.msg="invalid literal/length code",i.mode=30;break e}b=65535&y,(E&=15)&&(f<E&&(p+=S[r++]<<f,f+=8),b+=p&(1<<E)-1,p>>>=E,f-=E),f<15&&(p+=S[r++]<<f,f+=8,p+=S[r++]<<f,f+=8),y=g[p&_];i:for(;;){if(p>>>=E=y>>>24,f-=E,!(16&(E=y>>>16&255))){if(!(64&E)){y=g[(65535&y)+(p&(1<<E)-1)];continue i}e.msg="invalid distance code",i.mode=30;break e}if(w=65535&y,f<(E&=15)&&(p+=S[r++]<<f,(f+=8)<E&&(p+=S[r++]<<f,f+=8)),c<(w+=p&(1<<E)-1)){e.msg="invalid distance too far back",i.mode=30;break e}if(p>>>=E,f-=E,(E=a-o)<w){if(d<(E=w-E)&&i.sane){e.msg="invalid distance too far back",i.mode=30;break e}if(T=h,(I=0)===u){if(I+=l-E,E<b){for(b-=E;A[a++]=h[I++],--E;);I=a-w,T=A}}else if(u<E){if(I+=l+u-E,(E-=u)<b){for(b-=E;A[a++]=h[I++],--E;);if(I=0,u<b){for(b-=E=u;A[a++]=h[I++],--E;);I=a-w,T=A}}}else if(I+=u-E,E<b){for(b-=E;A[a++]=h[I++],--E;);I=a-w,T=A}for(;2<b;)A[a++]=T[I++],A[a++]=T[I++],A[a++]=T[I++],b-=3;b&&(A[a++]=T[I++],1<b&&(A[a++]=T[I++]))}else{for(I=a-w;A[a++]=A[I++],A[a++]=A[I++],A[a++]=A[I++],2<(b-=3););b&&(A[a++]=A[I++],1<b&&(A[a++]=A[I++]))}break}}break}}while(r<n&&a<s);r-=b=f>>3,p&=(1<<(f-=b<<3))-1,e.next_in=r,e.next_out=a,e.avail_in=r<n?n-r+5:5-(r-n),e.avail_out=a<s?s-a+257:257-(a-s),i.hold=p,i.bits=f}},{}],49:[function(e,t,i){var r=e("../utils/common"),n=e("./adler32"),a=e("./crc32"),o=e("./inffast"),s=e("./inftrees"),c=-2;function l(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function d(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function u(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(852),t.distcode=t.distdyn=new r.Buf32(592),t.sane=1,t.back=-1,0):c}function h(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,u(e)):c}function p(e,t){var i,r;return e&&e.state?(r=e.state,t<0?(i=0,t=-t):(i=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t)?c:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=i,r.wbits=t,h(e))):c}function f(e,t){var i,r;return e?(r=new d,(e.state=r).window=null,0!==(i=p(e,t))&&(e.state=null),i):c}var m,g,v=!0;function _(e){if(v){var t;for(m=new r.Buf32(512),g=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(1,e.lens,0,288,m,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(2,e.lens,0,32,g,0,e.work,{bits:5}),v=!1}e.lencode=m,e.lenbits=9,e.distcode=g,e.distbits=5}function y(e,t,i,n){var a,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new r.Buf8(o.wsize)),n>=o.wsize?(r.arraySet(o.window,t,i-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(n<(a=o.wsize-o.wnext)&&(a=n),r.arraySet(o.window,t,i-n,a,o.wnext),(n-=a)?(r.arraySet(o.window,t,i-n,n,0),o.wnext=n,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=a))),0}i.inflateReset=h,i.inflateReset2=p,i.inflateResetKeep=u,i.inflateInit=function(e){return f(e,15)},i.inflateInit2=f,i.inflate=function(e,t){var i,d,u,h,p,f,m,g,v,E,b,w,I,T,S,A,R,k,C,D,O,L,N,P,x=0,M=new r.Buf8(4),U=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return c;12===(i=e.state).mode&&(i.mode=13),p=e.next_out,u=e.output,m=e.avail_out,h=e.next_in,d=e.input,f=e.avail_in,g=i.hold,v=i.bits,E=f,b=m,L=0;e:for(;;)switch(i.mode){case 1:if(0===i.wrap){i.mode=13;break}for(;v<16;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(2&i.wrap&&35615===g){M[i.check=0]=255&g,M[1]=g>>>8&255,i.check=a(i.check,M,2,0),v=g=0,i.mode=2;break}if(i.flags=0,i.head&&(i.head.done=!1),!(1&i.wrap)||(((255&g)<<8)+(g>>8))%31){e.msg="incorrect header check",i.mode=30;break}if(8!=(15&g)){e.msg="unknown compression method",i.mode=30;break}if(v-=4,O=8+(15&(g>>>=4)),0===i.wbits)i.wbits=O;else if(O>i.wbits){e.msg="invalid window size",i.mode=30;break}i.dmax=1<<O,e.adler=i.check=1,i.mode=512&g?10:12,v=g=0;break;case 2:for(;v<16;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(i.flags=g,8!=(255&i.flags)){e.msg="unknown compression method",i.mode=30;break}if(57344&i.flags){e.msg="unknown header flags set",i.mode=30;break}i.head&&(i.head.text=g>>8&1),512&i.flags&&(M[0]=255&g,M[1]=g>>>8&255,i.check=a(i.check,M,2,0)),v=g=0,i.mode=3;case 3:for(;v<32;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}i.head&&(i.head.time=g),512&i.flags&&(M[0]=255&g,M[1]=g>>>8&255,M[2]=g>>>16&255,M[3]=g>>>24&255,i.check=a(i.check,M,4,0)),v=g=0,i.mode=4;case 4:for(;v<16;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}i.head&&(i.head.xflags=255&g,i.head.os=g>>8),512&i.flags&&(M[0]=255&g,M[1]=g>>>8&255,i.check=a(i.check,M,2,0)),v=g=0,i.mode=5;case 5:if(1024&i.flags){for(;v<16;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}i.length=g,i.head&&(i.head.extra_len=g),512&i.flags&&(M[0]=255&g,M[1]=g>>>8&255,i.check=a(i.check,M,2,0)),v=g=0}else i.head&&(i.head.extra=null);i.mode=6;case 6:if(1024&i.flags&&(f<(w=i.length)&&(w=f),w&&(i.head&&(O=i.head.extra_len-i.length,i.head.extra||(i.head.extra=new Array(i.head.extra_len)),r.arraySet(i.head.extra,d,h,w,O)),512&i.flags&&(i.check=a(i.check,d,w,h)),f-=w,h+=w,i.length-=w),i.length))break e;i.length=0,i.mode=7;case 7:if(2048&i.flags){if(0===f)break e;for(w=0;O=d[h+w++],i.head&&O&&i.length<65536&&(i.head.name+=String.fromCharCode(O)),O&&w<f;);if(512&i.flags&&(i.check=a(i.check,d,w,h)),f-=w,h+=w,O)break e}else i.head&&(i.head.name=null);i.length=0,i.mode=8;case 8:if(4096&i.flags){if(0===f)break e;for(w=0;O=d[h+w++],i.head&&O&&i.length<65536&&(i.head.comment+=String.fromCharCode(O)),O&&w<f;);if(512&i.flags&&(i.check=a(i.check,d,w,h)),f-=w,h+=w,O)break e}else i.head&&(i.head.comment=null);i.mode=9;case 9:if(512&i.flags){for(;v<16;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(g!==(65535&i.check)){e.msg="header crc mismatch",i.mode=30;break}v=g=0}i.head&&(i.head.hcrc=i.flags>>9&1,i.head.done=!0),e.adler=i.check=0,i.mode=12;break;case 10:for(;v<32;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}e.adler=i.check=l(g),v=g=0,i.mode=11;case 11:if(0===i.havedict)return e.next_out=p,e.avail_out=m,e.next_in=h,e.avail_in=f,i.hold=g,i.bits=v,2;e.adler=i.check=1,i.mode=12;case 12:if(5===t||6===t)break e;case 13:if(i.last){g>>>=7&v,v-=7&v,i.mode=27;break}for(;v<3;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}switch(i.last=1&g,v-=1,3&(g>>>=1)){case 0:i.mode=14;break;case 1:if(_(i),i.mode=20,6!==t)break;g>>>=2,v-=2;break e;case 2:i.mode=17;break;case 3:e.msg="invalid block type",i.mode=30}g>>>=2,v-=2;break;case 14:for(g>>>=7&v,v-=7&v;v<32;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if((65535&g)!=(g>>>16^65535)){e.msg="invalid stored block lengths",i.mode=30;break}if(i.length=65535&g,v=g=0,i.mode=15,6===t)break e;case 15:i.mode=16;case 16:if(w=i.length){if(f<w&&(w=f),m<w&&(w=m),0===w)break e;r.arraySet(u,d,h,w,p),f-=w,h+=w,m-=w,p+=w,i.length-=w;break}i.mode=12;break;case 17:for(;v<14;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(i.nlen=257+(31&g),g>>>=5,v-=5,i.ndist=1+(31&g),g>>>=5,v-=5,i.ncode=4+(15&g),g>>>=4,v-=4,286<i.nlen||30<i.ndist){e.msg="too many length or distance symbols",i.mode=30;break}i.have=0,i.mode=18;case 18:for(;i.have<i.ncode;){for(;v<3;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}i.lens[U[i.have++]]=7&g,g>>>=3,v-=3}for(;i.have<19;)i.lens[U[i.have++]]=0;if(i.lencode=i.lendyn,i.lenbits=7,N={bits:i.lenbits},L=s(0,i.lens,0,19,i.lencode,0,i.work,N),i.lenbits=N.bits,L){e.msg="invalid code lengths set",i.mode=30;break}i.have=0,i.mode=19;case 19:for(;i.have<i.nlen+i.ndist;){for(;A=(x=i.lencode[g&(1<<i.lenbits)-1])>>>16&255,R=65535&x,!((S=x>>>24)<=v);){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(R<16)g>>>=S,v-=S,i.lens[i.have++]=R;else{if(16===R){for(P=S+2;v<P;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(g>>>=S,v-=S,0===i.have){e.msg="invalid bit length repeat",i.mode=30;break}O=i.lens[i.have-1],w=3+(3&g),g>>>=2,v-=2}else if(17===R){for(P=S+3;v<P;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}v-=S,O=0,w=3+(7&(g>>>=S)),g>>>=3,v-=3}else{for(P=S+7;v<P;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}v-=S,O=0,w=11+(127&(g>>>=S)),g>>>=7,v-=7}if(i.have+w>i.nlen+i.ndist){e.msg="invalid bit length repeat",i.mode=30;break}for(;w--;)i.lens[i.have++]=O}}if(30===i.mode)break;if(0===i.lens[256]){e.msg="invalid code -- missing end-of-block",i.mode=30;break}if(i.lenbits=9,N={bits:i.lenbits},L=s(1,i.lens,0,i.nlen,i.lencode,0,i.work,N),i.lenbits=N.bits,L){e.msg="invalid literal/lengths set",i.mode=30;break}if(i.distbits=6,i.distcode=i.distdyn,N={bits:i.distbits},L=s(2,i.lens,i.nlen,i.ndist,i.distcode,0,i.work,N),i.distbits=N.bits,L){e.msg="invalid distances set",i.mode=30;break}if(i.mode=20,6===t)break e;case 20:i.mode=21;case 21:if(6<=f&&258<=m){e.next_out=p,e.avail_out=m,e.next_in=h,e.avail_in=f,i.hold=g,i.bits=v,o(e,b),p=e.next_out,u=e.output,m=e.avail_out,h=e.next_in,d=e.input,f=e.avail_in,g=i.hold,v=i.bits,12===i.mode&&(i.back=-1);break}for(i.back=0;A=(x=i.lencode[g&(1<<i.lenbits)-1])>>>16&255,R=65535&x,!((S=x>>>24)<=v);){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(A&&!(240&A)){for(k=S,C=A,D=R;A=(x=i.lencode[D+((g&(1<<k+C)-1)>>k)])>>>16&255,R=65535&x,!(k+(S=x>>>24)<=v);){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}g>>>=k,v-=k,i.back+=k}if(g>>>=S,v-=S,i.back+=S,i.length=R,0===A){i.mode=26;break}if(32&A){i.back=-1,i.mode=12;break}if(64&A){e.msg="invalid literal/length code",i.mode=30;break}i.extra=15&A,i.mode=22;case 22:if(i.extra){for(P=i.extra;v<P;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}i.length+=g&(1<<i.extra)-1,g>>>=i.extra,v-=i.extra,i.back+=i.extra}i.was=i.length,i.mode=23;case 23:for(;A=(x=i.distcode[g&(1<<i.distbits)-1])>>>16&255,R=65535&x,!((S=x>>>24)<=v);){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(!(240&A)){for(k=S,C=A,D=R;A=(x=i.distcode[D+((g&(1<<k+C)-1)>>k)])>>>16&255,R=65535&x,!(k+(S=x>>>24)<=v);){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}g>>>=k,v-=k,i.back+=k}if(g>>>=S,v-=S,i.back+=S,64&A){e.msg="invalid distance code",i.mode=30;break}i.offset=R,i.extra=15&A,i.mode=24;case 24:if(i.extra){for(P=i.extra;v<P;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}i.offset+=g&(1<<i.extra)-1,g>>>=i.extra,v-=i.extra,i.back+=i.extra}if(i.offset>i.dmax){e.msg="invalid distance too far back",i.mode=30;break}i.mode=25;case 25:if(0===m)break e;if(w=b-m,i.offset>w){if((w=i.offset-w)>i.whave&&i.sane){e.msg="invalid distance too far back",i.mode=30;break}I=w>i.wnext?(w-=i.wnext,i.wsize-w):i.wnext-w,w>i.length&&(w=i.length),T=i.window}else T=u,I=p-i.offset,w=i.length;for(m<w&&(w=m),m-=w,i.length-=w;u[p++]=T[I++],--w;);0===i.length&&(i.mode=21);break;case 26:if(0===m)break e;u[p++]=i.length,m--,i.mode=21;break;case 27:if(i.wrap){for(;v<32;){if(0===f)break e;f--,g|=d[h++]<<v,v+=8}if(b-=m,e.total_out+=b,i.total+=b,b&&(e.adler=i.check=i.flags?a(i.check,u,b,p-b):n(i.check,u,b,p-b)),b=m,(i.flags?g:l(g))!==i.check){e.msg="incorrect data check",i.mode=30;break}v=g=0}i.mode=28;case 28:if(i.wrap&&i.flags){for(;v<32;){if(0===f)break e;f--,g+=d[h++]<<v,v+=8}if(g!==(4294967295&i.total)){e.msg="incorrect length check",i.mode=30;break}v=g=0}i.mode=29;case 29:L=1;break e;case 30:L=-3;break e;case 31:return-4;default:return c}return e.next_out=p,e.avail_out=m,e.next_in=h,e.avail_in=f,i.hold=g,i.bits=v,(i.wsize||b!==e.avail_out&&i.mode<30&&(i.mode<27||4!==t))&&y(e,e.output,e.next_out,b-e.avail_out)?(i.mode=31,-4):(E-=e.avail_in,b-=e.avail_out,e.total_in+=E,e.total_out+=b,i.total+=b,i.wrap&&b&&(e.adler=i.check=i.flags?a(i.check,u,b,e.next_out-b):n(i.check,u,b,e.next_out-b)),e.data_type=i.bits+(i.last?64:0)+(12===i.mode?128:0)+(20===i.mode||15===i.mode?256:0),(0==E&&0===b||4===t)&&0===L&&(L=-5),L)},i.inflateEnd=function(e){if(!e||!e.state)return c;var t=e.state;return t.window&&(t.window=null),e.state=null,0},i.inflateGetHeader=function(e,t){var i;return e&&e.state&&2&(i=e.state).wrap?((i.head=t).done=!1,0):c},i.inflateSetDictionary=function(e,t){var i,r=t.length;return e&&e.state?0!==(i=e.state).wrap&&11!==i.mode?c:11===i.mode&&n(1,t,r,0)!==i.check?-3:y(e,t,r,r)?(i.mode=31,-4):(i.havedict=1,0):c},i.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,i){var r=e("../utils/common"),n=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],a=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],o=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],s=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(e,t,i,c,l,d,u,h){var p,f,m,g,v,_,y,E,b,w=h.bits,I=0,T=0,S=0,A=0,R=0,k=0,C=0,D=0,O=0,L=0,N=null,P=0,x=new r.Buf16(16),M=new r.Buf16(16),U=null,B=0;for(I=0;I<=15;I++)x[I]=0;for(T=0;T<c;T++)x[t[i+T]]++;for(R=w,A=15;1<=A&&0===x[A];A--);if(A<R&&(R=A),0===A)return l[d++]=20971520,l[d++]=20971520,h.bits=1,0;for(S=1;S<A&&0===x[S];S++);for(R<S&&(R=S),I=D=1;I<=15;I++)if(D<<=1,(D-=x[I])<0)return-1;if(0<D&&(0===e||1!==A))return-1;for(M[1]=0,I=1;I<15;I++)M[I+1]=M[I]+x[I];for(T=0;T<c;T++)0!==t[i+T]&&(u[M[t[i+T]]++]=T);if(_=0===e?(N=U=u,19):1===e?(N=n,P-=257,U=a,B-=257,256):(N=o,U=s,-1),I=S,v=d,C=T=L=0,m=-1,g=(O=1<<(k=R))-1,1===e&&852<O||2===e&&592<O)return 1;for(;;){for(y=I-C,b=u[T]<_?(E=0,u[T]):u[T]>_?(E=U[B+u[T]],N[P+u[T]]):(E=96,0),p=1<<I-C,S=f=1<<k;l[v+(L>>C)+(f-=p)]=y<<24|E<<16|b,0!==f;);for(p=1<<I-1;L&p;)p>>=1;if(0!==p?(L&=p-1,L+=p):L=0,T++,0==--x[I]){if(I===A)break;I=t[i+u[T]]}if(R<I&&(L&g)!==m){for(0===C&&(C=R),v+=S,D=1<<(k=I-C);k+C<A&&!((D-=x[k+C])<=0);)k++,D<<=1;if(O+=1<<k,1===e&&852<O||2===e&&592<O)return 1;l[m=L&g]=R<<24|k<<16|v-d}}return 0!==L&&(l[v+L]=I-C<<24|64<<16),h.bits=R,0}},{"../utils/common":41}],51:[function(e,t,i){t.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(e,t,i){var r=e("../utils/common");function n(e){for(var t=e.length;0<=--t;)e[t]=0}var a=256,o=286,s=30,c=15,l=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],d=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],u=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],h=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],p=new Array(576);n(p);var f=new Array(60);n(f);var m=new Array(512);n(m);var g=new Array(256);n(g);var v=new Array(29);n(v);var _,y,E,b=new Array(s);function w(e,t,i,r,n){this.static_tree=e,this.extra_bits=t,this.extra_base=i,this.elems=r,this.max_length=n,this.has_stree=e&&e.length}function I(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function T(e){return e<256?m[e]:m[256+(e>>>7)]}function S(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function A(e,t,i){e.bi_valid>16-i?(e.bi_buf|=t<<e.bi_valid&65535,S(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=i-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=i)}function R(e,t,i){A(e,i[2*t],i[2*t+1])}function k(e,t){for(var i=0;i|=1&e,e>>>=1,i<<=1,0<--t;);return i>>>1}function C(e,t,i){var r,n,a=new Array(16),o=0;for(r=1;r<=c;r++)a[r]=o=o+i[r-1]<<1;for(n=0;n<=t;n++){var s=e[2*n+1];0!==s&&(e[2*n]=k(a[s]++,s))}}function D(e){var t;for(t=0;t<o;t++)e.dyn_ltree[2*t]=0;for(t=0;t<s;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function O(e){8<e.bi_valid?S(e,e.bi_buf):0<e.bi_valid&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function L(e,t,i,r){var n=2*t,a=2*i;return e[n]<e[a]||e[n]===e[a]&&r[t]<=r[i]}function N(e,t,i){for(var r=e.heap[i],n=i<<1;n<=e.heap_len&&(n<e.heap_len&&L(t,e.heap[n+1],e.heap[n],e.depth)&&n++,!L(t,r,e.heap[n],e.depth));)e.heap[i]=e.heap[n],i=n,n<<=1;e.heap[i]=r}function P(e,t,i){var r,n,o,s,c=0;if(0!==e.last_lit)for(;r=e.pending_buf[e.d_buf+2*c]<<8|e.pending_buf[e.d_buf+2*c+1],n=e.pending_buf[e.l_buf+c],c++,0===r?R(e,n,t):(R(e,(o=g[n])+a+1,t),0!==(s=l[o])&&A(e,n-=v[o],s),R(e,o=T(--r),i),0!==(s=d[o])&&A(e,r-=b[o],s)),c<e.last_lit;);R(e,256,t)}function x(e,t){var i,r,n,a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,l=t.stat_desc.elems,d=-1;for(e.heap_len=0,e.heap_max=573,i=0;i<l;i++)0!==a[2*i]?(e.heap[++e.heap_len]=d=i,e.depth[i]=0):a[2*i+1]=0;for(;e.heap_len<2;)a[2*(n=e.heap[++e.heap_len]=d<2?++d:0)]=1,e.depth[n]=0,e.opt_len--,s&&(e.static_len-=o[2*n+1]);for(t.max_code=d,i=e.heap_len>>1;1<=i;i--)N(e,a,i);for(n=l;i=e.heap[1],e.heap[1]=e.heap[e.heap_len--],N(e,a,1),r=e.heap[1],e.heap[--e.heap_max]=i,e.heap[--e.heap_max]=r,a[2*n]=a[2*i]+a[2*r],e.depth[n]=(e.depth[i]>=e.depth[r]?e.depth[i]:e.depth[r])+1,a[2*i+1]=a[2*r+1]=n,e.heap[1]=n++,N(e,a,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var i,r,n,a,o,s,l=t.dyn_tree,d=t.max_code,u=t.stat_desc.static_tree,h=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,f=t.stat_desc.extra_base,m=t.stat_desc.max_length,g=0;for(a=0;a<=c;a++)e.bl_count[a]=0;for(l[2*e.heap[e.heap_max]+1]=0,i=e.heap_max+1;i<573;i++)m<(a=l[2*l[2*(r=e.heap[i])+1]+1]+1)&&(a=m,g++),l[2*r+1]=a,d<r||(e.bl_count[a]++,o=0,f<=r&&(o=p[r-f]),s=l[2*r],e.opt_len+=s*(a+o),h&&(e.static_len+=s*(u[2*r+1]+o)));if(0!==g){do{for(a=m-1;0===e.bl_count[a];)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[m]--,g-=2}while(0<g);for(a=m;0!==a;a--)for(r=e.bl_count[a];0!==r;)d<(n=e.heap[--i])||(l[2*n+1]!==a&&(e.opt_len+=(a-l[2*n+1])*l[2*n],l[2*n+1]=a),r--)}}(e,t),C(a,d,e.bl_count)}function M(e,t,i){var r,n,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),t[2*(i+1)+1]=65535,r=0;r<=i;r++)n=o,o=t[2*(r+1)+1],++s<c&&n===o||(s<l?e.bl_tree[2*n]+=s:0!==n?(n!==a&&e.bl_tree[2*n]++,e.bl_tree[32]++):s<=10?e.bl_tree[34]++:e.bl_tree[36]++,a=n,l=(s=0)===o?(c=138,3):n===o?(c=6,3):(c=7,4))}function U(e,t,i){var r,n,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),r=0;r<=i;r++)if(n=o,o=t[2*(r+1)+1],!(++s<c&&n===o)){if(s<l)for(;R(e,n,e.bl_tree),0!=--s;);else 0!==n?(n!==a&&(R(e,n,e.bl_tree),s--),R(e,16,e.bl_tree),A(e,s-3,2)):s<=10?(R(e,17,e.bl_tree),A(e,s-3,3)):(R(e,18,e.bl_tree),A(e,s-11,7));a=n,l=(s=0)===o?(c=138,3):n===o?(c=6,3):(c=7,4)}}n(b);var B=!1;function F(e,t,i,n){var a,o,s;A(e,0+(n?1:0),3),o=t,s=i,O(a=e),S(a,s),S(a,~s),r.arraySet(a.pending_buf,a.window,o,s,a.pending),a.pending+=s}i._tr_init=function(e){B||(function(){var e,t,i,r,n,a=new Array(16);for(r=i=0;r<28;r++)for(v[r]=i,e=0;e<1<<l[r];e++)g[i++]=r;for(g[i-1]=r,r=n=0;r<16;r++)for(b[r]=n,e=0;e<1<<d[r];e++)m[n++]=r;for(n>>=7;r<s;r++)for(b[r]=n<<7,e=0;e<1<<d[r]-7;e++)m[256+n++]=r;for(t=0;t<=c;t++)a[t]=0;for(e=0;e<=143;)p[2*e+1]=8,e++,a[8]++;for(;e<=255;)p[2*e+1]=9,e++,a[9]++;for(;e<=279;)p[2*e+1]=7,e++,a[7]++;for(;e<=287;)p[2*e+1]=8,e++,a[8]++;for(C(p,287,a),e=0;e<s;e++)f[2*e+1]=5,f[2*e]=k(e,5);_=new w(p,l,257,o,c),y=new w(f,d,0,s,c),E=new w(new Array(0),u,0,19,7)}(),B=!0),e.l_desc=new I(e.dyn_ltree,_),e.d_desc=new I(e.dyn_dtree,y),e.bl_desc=new I(e.bl_tree,E),e.bi_buf=0,e.bi_valid=0,D(e)},i._tr_stored_block=F,i._tr_flush_block=function(e,t,i,r){var n,o,s=0;0<e.level?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,i=4093624447;for(t=0;t<=31;t++,i>>>=1)if(1&i&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<a;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),x(e,e.l_desc),x(e,e.d_desc),s=function(e){var t;for(M(e,e.dyn_ltree,e.l_desc.max_code),M(e,e.dyn_dtree,e.d_desc.max_code),x(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*h[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),n=e.opt_len+3+7>>>3,(o=e.static_len+3+7>>>3)<=n&&(n=o)):n=o=i+5,i+4<=n&&-1!==t?F(e,t,i,r):4===e.strategy||o===n?(A(e,2+(r?1:0),3),P(e,p,f)):(A(e,4+(r?1:0),3),function(e,t,i,r){var n;for(A(e,t-257,5),A(e,i-1,5),A(e,r-4,4),n=0;n<r;n++)A(e,e.bl_tree[2*h[n]+1],3);U(e,e.dyn_ltree,t-1),U(e,e.dyn_dtree,i-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,s+1),P(e,e.dyn_ltree,e.dyn_dtree)),D(e),r&&O(e)},i._tr_tally=function(e,t,i){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&i,e.last_lit++,0===t?e.dyn_ltree[2*i]++:(e.matches++,t--,e.dyn_ltree[2*(g[i]+a+1)]++,e.dyn_dtree[2*T(t)]++),e.last_lit===e.lit_bufsize-1},i._tr_align=function(e){var t;A(e,2,3),R(e,256,p),16===(t=e).bi_valid?(S(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):8<=t.bi_valid&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}},{"../utils/common":41}],53:[function(e,t,i){t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,i){(function(e){!function(e){if(!e.setImmediate){var t,i,r,n,a=1,o={},s=!1,c=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,t="[object process]"==={}.toString.call(e.process)?function(e){process.nextTick(function(){u(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,i=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=i,t}}()?(n="setImmediate$"+Math.random()+"$",e.addEventListener?e.addEventListener("message",h,!1):e.attachEvent("onmessage",h),function(t){e.postMessage(n+t,"*")}):e.MessageChannel?((r=new MessageChannel).port1.onmessage=function(e){u(e.data)},function(e){r.port2.postMessage(e)}):c&&"onreadystatechange"in c.createElement("script")?(i=c.documentElement,function(e){var t=c.createElement("script");t.onreadystatechange=function(){u(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):function(e){setTimeout(u,0,e)},l.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var i=new Array(arguments.length-1),r=0;r<i.length;r++)i[r]=arguments[r+1];var n={callback:e,args:i};return o[a]=n,t(a),a++},l.clearImmediate=d}function d(e){delete o[e]}function u(e){if(s)setTimeout(u,0,e);else{var t=o[e];if(t){s=!0;try{!function(e){var t=e.callback,i=e.args;switch(i.length){case 0:t();break;case 1:t(i[0]);break;case 2:t(i[0],i[1]);break;case 3:t(i[0],i[1],i[2]);break;default:t.apply(void 0,i)}}(t)}finally{d(e),s=!1}}}}function h(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(n)&&u(+t.data.slice(n.length))}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[10])(10)})}),kA=wA((e,t)=>{var i=Object.prototype.hasOwnProperty,r="~";function n(){}function a(e,t,i){this.fn=e,this.context=t,this.once=i||!1}function o(e,t,i,n,o){if("function"!=typeof i)throw new TypeError("The listener must be a function");var s=new a(i,n||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){0===--e._eventsCount?e._events=new n:delete e._events[t]}function c(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(r=!1)),c.prototype.eventNames=function(){var e,t,n=[];if(0===this._eventsCount)return n;for(t in e=this._events)i.call(e,t)&&n.push(r?t.slice(1):t);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(e)):n},c.prototype.listeners=function(e){var t=r?r+e:e,i=this._events[t];if(!i)return[];if(i.fn)return[i.fn];for(var n=0,a=i.length,o=new Array(a);n<a;n++)o[n]=i[n].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,i=this._events[t];return i?i.fn?1:i.length:0},c.prototype.emit=function(e,t,i,n,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c,l,d=this._events[s],u=arguments.length;if(d.fn){switch(d.once&&this.removeListener(e,d.fn,void 0,!0),u){case 1:return d.fn.call(d.context),!0;case 2:return d.fn.call(d.context,t),!0;case 3:return d.fn.call(d.context,t,i),!0;case 4:return d.fn.call(d.context,t,i,n),!0;case 5:return d.fn.call(d.context,t,i,n,a),!0;case 6:return d.fn.call(d.context,t,i,n,a,o),!0}for(l=1,c=new Array(u-1);l<u;l++)c[l-1]=arguments[l];d.fn.apply(d.context,c)}else{var h,p=d.length;for(l=0;l<p;l++)switch(d[l].once&&this.removeListener(e,d[l].fn,void 0,!0),u){case 1:d[l].fn.call(d[l].context);break;case 2:d[l].fn.call(d[l].context,t);break;case 3:d[l].fn.call(d[l].context,t,i);break;case 4:d[l].fn.call(d[l].context,t,i,n);break;default:if(!c)for(h=1,c=new Array(u-1);h<u;h++)c[h-1]=arguments[h];d[l].fn.apply(d[l].context,c)}}return!0},c.prototype.on=function(e,t,i){return o(this,e,t,i,!1)},c.prototype.once=function(e,t,i){return o(this,e,t,i,!0)},c.prototype.removeListener=function(e,t,i,n){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!n||o.once)&&(!i||o.context===i)&&s(this,a);else{for(var c=0,l=[],d=o.length;c<d;c++)(o[c].fn!==t||n&&!o[c].once||i&&o[c].context!==i)&&l.push(o[c]);l.length?this._events[a]=1===l.length?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new n,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,void 0!==t&&(t.exports=c)}),CA=wA((e,t)=>{var i=t.exports={v:[{name:"version",reg:/^(\d*)$/}],o:[{name:"origin",reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:["username","sessionId","sessionVersion","netType","ipVer","address"],format:"%s %s %d %s IP%d %s"}],s:[{name:"name"}],i:[{name:"description"}],u:[{name:"uri"}],e:[{name:"email"}],p:[{name:"phone"}],z:[{name:"timezones"}],r:[{name:"repeats"}],t:[{name:"timing",reg:/^(\d*) (\d*)/,names:["start","stop"],format:"%d %d"}],c:[{name:"connection",reg:/^IN IP(\d) (\S*)/,names:["version","ip"],format:"IN IP%d %s"}],b:[{push:"bandwidth",reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:["type","limit"],format:"%s:%s"}],m:[{reg:/^(\w*) (\d*) ([\w/]*)(?: (.*))?/,names:["type","port","protocol","payloads"],format:"%s %d %s %s"}],a:[{push:"rtp",reg:/^rtpmap:(\d*) ([\w\-.]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:["payload","codec","rate","encoding"],format:function(e){return e.encoding?"rtpmap:%d %s/%s/%s":e.rate?"rtpmap:%d %s/%s":"rtpmap:%d %s"}},{push:"fmtp",reg:/^fmtp:(\d*) ([\S| ]*)/,names:["payload","config"],format:"fmtp:%d %s"},{name:"control",reg:/^control:(.*)/,format:"control:%s"},{name:"rtcp",reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:["port","netType","ipVer","address"],format:function(e){return null!=e.address?"rtcp:%d %s IP%d %s":"rtcp:%d"}},{push:"rtcpFbTrrInt",reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:["payload","value"],format:"rtcp-fb:%s trr-int %d"},{push:"rtcpFb",reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:["payload","type","subtype"],format:function(e){return null!=e.subtype?"rtcp-fb:%s %s %s":"rtcp-fb:%s %s"}},{push:"ext",reg:/^extmap:(\d+)(?:\/(\w+))?(?: (urn:ietf:params:rtp-hdrext:encrypt))? (\S*)(?: (\S*))?/,names:["value","direction","encrypt-uri","uri","config"],format:function(e){return"extmap:%d"+(e.direction?"/%s":"%v")+(e["encrypt-uri"]?" %s":"%v")+" %s"+(e.config?" %s":"")}},{name:"extmapAllowMixed",reg:/^(extmap-allow-mixed)/},{push:"crypto",reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:["id","suite","config","sessionConfig"],format:function(e){return null!=e.sessionConfig?"crypto:%d %s %s %s":"crypto:%d %s %s"}},{name:"setup",reg:/^setup:(\w*)/,format:"setup:%s"},{name:"connectionType",reg:/^connection:(new|existing)/,format:"connection:%s"},{name:"mid",reg:/^mid:([^\s]*)/,format:"mid:%s"},{name:"msid",reg:/^msid:(.*)/,format:"msid:%s"},{name:"ptime",reg:/^ptime:(\d*(?:\.\d*)*)/,format:"ptime:%d"},{name:"maxptime",reg:/^maxptime:(\d*(?:\.\d*)*)/,format:"maxptime:%d"},{name:"direction",reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:"icelite",reg:/^(ice-lite)/},{name:"iceUfrag",reg:/^ice-ufrag:(\S*)/,format:"ice-ufrag:%s"},{name:"icePwd",reg:/^ice-pwd:(\S*)/,format:"ice-pwd:%s"},{name:"fingerprint",reg:/^fingerprint:(\S*) (\S*)/,names:["type","hash"],format:"fingerprint:%s %s"},{push:"candidates",reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?(?: network-id (\d*))?(?: network-cost (\d*))?/,names:["foundation","component","transport","priority","ip","port","type","raddr","rport","tcptype","generation","network-id","network-cost"],format:function(e){var t="candidate:%s %d %s %d %s %d typ %s";return t+=null!=e.raddr?" raddr %s rport %d":"%v%v",t+=null!=e.tcptype?" tcptype %s":"%v",null!=e.generation&&(t+=" generation %d"),t+=null!=e["network-id"]?" network-id %d":"%v",t+=null!=e["network-cost"]?" network-cost %d":"%v"}},{name:"endOfCandidates",reg:/^(end-of-candidates)/},{name:"remoteCandidates",reg:/^remote-candidates:(.*)/,format:"remote-candidates:%s"},{name:"iceOptions",reg:/^ice-options:(\S*)/,format:"ice-options:%s"},{push:"ssrcs",reg:/^ssrc:(\d*) ([\w_-]*)(?::(.*))?/,names:["id","attribute","value"],format:function(e){var t="ssrc:%d";return null!=e.attribute&&(t+=" %s",null!=e.value&&(t+=":%s")),t}},{push:"ssrcGroups",reg:/^ssrc-group:([\x21\x23\x24\x25\x26\x27\x2A\x2B\x2D\x2E\w]*) (.*)/,names:["semantics","ssrcs"],format:"ssrc-group:%s %s"},{name:"msidSemantic",reg:/^msid-semantic:\s?(\w*) (\S*)/,names:["semantic","token"],format:"msid-semantic: %s %s"},{push:"groups",reg:/^group:(\w*) (.*)/,names:["type","mids"],format:"group:%s %s"},{name:"rtcpMux",reg:/^(rtcp-mux)/},{name:"rtcpRsize",reg:/^(rtcp-rsize)/},{name:"sctpmap",reg:/^sctpmap:([\w_/]*) (\S*)(?: (\S*))?/,names:["sctpmapNumber","app","maxMessageSize"],format:function(e){return null!=e.maxMessageSize?"sctpmap:%s %s %s":"sctpmap:%s %s"}},{name:"xGoogleFlag",reg:/^x-google-flag:([^\s]*)/,format:"x-google-flag:%s"},{push:"rids",reg:/^rid:([\d\w]+) (\w+)(?: ([\S| ]*))?/,names:["id","direction","params"],format:function(e){return e.params?"rid:%s %s %s":"rid:%s %s"}},{push:"imageattrs",reg:new RegExp("^imageattr:(\\d+|\\*)[\\s\\t]+(send|recv)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*)(?:[\\s\\t]+(recv|send)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*))?"),names:["pt","dir1","attrs1","dir2","attrs2"],format:function(e){return"imageattr:%s %s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast",reg:new RegExp("^simulcast:(send|recv) ([a-zA-Z0-9\\-_~;,]+)(?:\\s?(send|recv) ([a-zA-Z0-9\\-_~;,]+))?$"),names:["dir1","list1","dir2","list2"],format:function(e){return"simulcast:%s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast_03",reg:/^simulcast:[\s\t]+([\S+\s\t]+)$/,names:["value"],format:"simulcast: %s"},{name:"framerate",reg:/^framerate:(\d+(?:$|\.\d+))/,format:"framerate:%s"},{name:"sourceFilter",reg:/^source-filter: *(excl|incl) (\S*) (IP4|IP6|\*) (\S*) (.*)/,names:["filterMode","netType","addressTypes","destAddress","srcList"],format:"source-filter: %s %s %s %s %s"},{name:"bundleOnly",reg:/^(bundle-only)/},{name:"label",reg:/^label:(.+)/,format:"label:%s"},{name:"sctpPort",reg:/^sctp-port:(\d+)$/,format:"sctp-port:%s"},{name:"maxMessageSize",reg:/^max-message-size:(\d+)$/,format:"max-message-size:%s"},{push:"tsRefClocks",reg:/^ts-refclk:([^\s=]*)(?:=(\S*))?/,names:["clksrc","clksrcExt"],format:function(e){return"ts-refclk:%s"+(null!=e.clksrcExt?"=%s":"")}},{name:"mediaClk",reg:/^mediaclk:(?:id=(\S*))? *([^\s=]*)(?:=(\S*))?(?: *rate=(\d+)\/(\d+))?/,names:["id","mediaClockName","mediaClockValue","rateNumerator","rateDenominator"],format:function(e){var t="mediaclk:";return t+=null!=e.id?"id=%s %s":"%v%s",t+=null!=e.mediaClockValue?"=%s":"",t+=null!=e.rateNumerator?" rate=%s":"",t+=null!=e.rateDenominator?"/%s":""}},{name:"keywords",reg:/^keywds:(.+)$/,format:"keywds:%s"},{name:"content",reg:/^content:(.+)/,format:"content:%s"},{name:"bfcpFloorCtrl",reg:/^floorctrl:(c-only|s-only|c-s)/,format:"floorctrl:%s"},{name:"bfcpConfId",reg:/^confid:(\d+)/,format:"confid:%s"},{name:"bfcpUserId",reg:/^userid:(\d+)/,format:"userid:%s"},{name:"bfcpFloorId",reg:/^floorid:(.+) (?:m-stream|mstrm):(.+)/,names:["id","mStream"],format:"floorid:%s mstrm:%s"},{push:"invalid",names:["value"]}]};Object.keys(i).forEach(function(e){i[e].forEach(function(e){e.reg||(e.reg=/(.*)/),e.format||(e.format="%s")})})}),DA=wA(e=>{var t=function(e){return String(Number(e))===e?Number(e):e},i=function(e,i,r){var n=e.name&&e.names;e.push&&!i[e.push]?i[e.push]=[]:n&&!i[e.name]&&(i[e.name]={});var a=e.push?{}:n?i[e.name]:i;(function(e,i,r,n){if(n&&!r)i[n]=t(e[1]);else for(var a=0;a<r.length;a+=1)null!=e[a+1]&&(i[r[a]]=t(e[a+1]))})(r.match(e.reg),a,e.names,e.name),e.push&&i[e.push].push(a)},r=CA(),n=RegExp.prototype.test.bind(/^([a-z])=(.*)/);e.parse=function(e){var t={},a=[],o=t;return e.split(/(\r\n|\r|\n)/).filter(n).forEach(function(e){var t=e[0],n=e.slice(2);"m"===t&&(a.push({rtp:[],fmtp:[]}),o=a[a.length-1]);for(var s=0;s<(r[t]||[]).length;s+=1){var c=r[t][s];if(c.reg.test(n))return i(c,o,n)}}),t.media=a,t};var a=function(e,i){var r=i.split(/=(.+)/,2);return 2===r.length?e[r[0]]=t(r[1]):1===r.length&&i.length>1&&(e[r[0]]=void 0),e};e.parseParams=function(e){return e.split(/;\s?/).reduce(a,{})},e.parseFmtpConfig=e.parseParams,e.parsePayloads=function(e){return e.toString().split(" ").map(Number)},e.parseRemoteCandidates=function(e){for(var i=[],r=e.split(" ").map(t),n=0;n<r.length;n+=3)i.push({component:r[n],ip:r[n+1],port:r[n+2]});return i},e.parseImageAttributes=function(e){return e.split(" ").map(function(e){return e.substring(1,e.length-1).split(",").reduce(a,{})})},e.parseSimulcastStreamList=function(e){return e.split(";").map(function(e){return e.split(",").map(function(e){var i,r=!1;return"~"!==e[0]?i=t(e):(i=t(e.substring(1,e.length)),r=!0),{scid:i,paused:r}})})}}),OA=wA((e,t)=>{var i=CA(),r=/%[sdv%]/g,n=function(e){var t=1,i=arguments,n=i.length;return e.replace(r,function(e){if(t>=n)return e;var r=i[t];switch(t+=1,e){case"%%":return"%";case"%s":return String(r);case"%d":return Number(r);case"%v":return""}})},a=function(e,t,i){var r=[e+"="+(t.format instanceof Function?t.format(t.push?i:i[t.name]):t.format)];if(t.names)for(var a=0;a<t.names.length;a+=1){var o=t.names[a];t.name?r.push(i[t.name][o]):r.push(i[t.names[a]])}else r.push(i[t.name]);return n.apply(null,r)},o=["v","o","s","i","u","e","p","c","b","t","r","z","a"],s=["i","c","b","a"];t.exports=function(e,t){t=t||{},null==e.version&&(e.version=0),null==e.name&&(e.name=" "),e.media.forEach(function(e){null==e.payloads&&(e.payloads="")});var r=t.outerOrder||o,n=t.innerOrder||s,c=[];return r.forEach(function(t){i[t].forEach(function(i){i.name in e&&null!=e[i.name]?c.push(a(t,i,e)):i.push in e&&null!=e[i.push]&&e[i.push].forEach(function(e){c.push(a(t,i,e))})})}),e.media.forEach(function(e){c.push(a("m",i.m[0],e)),n.forEach(function(t){i[t].forEach(function(i){i.name in e&&null!=e[i.name]?c.push(a(t,i,e)):i.push in e&&null!=e[i.push]&&e[i.push].forEach(function(e){c.push(a(t,i,e))})})})}),c.join("\r\n")+"\r\n"}}),LA=wA(e=>{var t=DA(),i=OA(),r=CA();e.grammar=r,e.write=i,e.parse=t.parse,e.parseParams=t.parseParams,e.parseFmtpConfig=t.parseFmtpConfig,e.parsePayloads=t.parsePayloads,e.parseRemoteCandidates=t.parseRemoteCandidates,e.parseImageAttributes=t.parseImageAttributes,e.parseSimulcastStreamList=t.parseSimulcastStreamList}),NA=((sA=NA||{}).ROOM_DESTROY="1",sA.JOIN_START="21",sA.JOIN_SCHEDULE_SUCCESS="22",sA.JOIN_SIGNAL_CONNECTION_START="23",sA.JOIN_SIGNAL_CONNECTION_END="24",sA.JOIN_SEND_CMD="25",sA.JOIN_RECEIVED_CMD_RES="26",sA.JOIN_SUCCESS="27",sA.JOIN_FAILED="28",sA.LEAVE_START="51",sA.LEAVE_SEND_CMD="52",sA.LEAVE_SUCCESS="53",sA.PUBLISH_START="61",sA.SEND_FIRST_VIDEO_FRAME="62",sA.PUBLISH_FAILED="63",sA.SUBSCRIBE_START="81",sA.SUBSCRIBE_SUCCESS="82",sA.SUBSCRIBE_FAILED="84",sA.UNSUBSCRIBE_SUCCESS="83",sA.LOCAL_TRACK_CAPTURE_START="101",sA.LOCAL_TRACK_CAPTURE_SUCCESS="102",sA.LOCAL_TRACK_CAPTURE_FAILED="103",sA.LOCAL_TRACK_PUBLISHED="104",sA.LOCAL_TRACK_UNPUBLISHED="105",sA.LOCAL_TRACK_REPLACED="106",sA.SWITCH_DEVICE_SUCCESS="107",sA.TRACK_MUTED="108",sA.TRACK_UNMUTED="109",sA.REMOTE_TRACK_SUBSCRIBED="110",sA.REMOTE_TRACK_UNSUBSCRIBED="111",sA.LOCAL_TRACK_RECAPTURE="112",sA.LOCAL_AUDIO_STARTED="113",sA.LOCAL_AUDIO_STOPPED="114",sA.REMOTE_AUDIO_STARTED="115",sA.REMOTE_AUDIO_STOPPED="116",sA.LOCAL_TRACK_STOPPED="117",sA.LOCAL_VIDEO_TRACK_PREPROCESSED="118",sA.PLAY_TRACK_START="151",sA.PLAYER_STATE_CHANGED="152",sA.VIDEO_LOADED_DATA="153",sA.AUTOPLAY_DIALOG_CLICK_CONFIRM="154",sA.AUDIO_CONTEXT_LONG_SUSPENDED="155",sA.REMOTE_VIDEO_PLAY_START="156",sA.REMOTE_VIDEO_PLAY_FINISH="157",sA.SIGNAL_CONNECTION_STATE_CHANGED="201",sA.PEER_CONNECTION_STATE_CHANGED="202",sA.SINGLE_CONNECTION_STAT="203",sA.SPC_RECONNECTED="204",sA.HEARTBEAT_REPORT="251",sA.RECEIVED_PUBLISHED_USER_LIST="252",sA.REMOTE_PUBLISH_STATE_CHANGED="253",sA.AUDIO_LEVEL_INTERVAL="260",sA.NETWORK_QUALITY="261",sA.VIDEO_CODEC_IMPLEMENTATION_CHANGED="262",sA.QUALITY_LIMITATION_CHANGED="263",sA.LOG="264",sA.AUDIO_PROCESSOR_DEBUG="265",sA.SSO_SWITCH="266",sA.SEI_MESSAGE="267",sA.USER_PAUSE_IN_PIP="268",sA.USER_RESUME_IN_PIP="269",sA.ENTER_PICTURE_IN_PICTURE="270",sA.LEAVE_PICTURE_IN_PICTURE="271",sA.SWITCH_ROOM_START="401",sA.SWITCH_ROOM_SUCCESS="407",sA.SWITCH_ROOM_FAILED="408",sA);function PA(e){return xA((t,i)=>async function(){for(var i=arguments.length,r=new Array(i),n=0;n<i;n++)r[n]=arguments[n];let a=await t.apply(this,r);return await e.call(this,...r),a})}function xA(e){return function(t,i,r){return r.value=e(r.value,i),r}}var MA=new WeakMap;function UA(e,t){return xA((i,r)=>function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];let o=MA.get(this);o||(o=new Map,MA.set(this,o));let s=t(...n),c=o.get(s);if(!c||c<=0){i.apply(this,n);let t=setTimeout(()=>{var e;null==(e=MA.get(this))||e.delete(s)},e);o.set(s,t)}else{clearTimeout(c);let t=window.setTimeout(()=>{var e;i.apply(this,n),null==(e=MA.get(this))||e.delete(s)},e);o.set(s,t)}})}var BA,FA,VA=((BA=VA||{})[BA.none=0]="none",BA[BA.horizontal=1]="horizontal",BA[BA.vertical=2]="vertical",BA),HA="5.0.0",jA="undefined"!=typeof importScripts,zA="undefined"!=typeof registerProcessor,WA="https://".concat("web.sdk.qcloud.com","/trtc/webrtc/doc"),GA="https://cloud.tencent.com/document/product/647/85386",qA="https://trtc.io/document/56025",KA="jssdk_log",YA="qcloud",XA=((FA=XA||{})[FA.TRACE=0]="TRACE",FA[FA.DEBUG=1]="DEBUG",FA[FA.INFO=2]="INFO",FA[FA.WARN=3]="WARN",FA[FA.ERROR=4]="ERROR",FA[FA.NONE=5]="NONE",FA),ZA={unknown:0,wifi:1,"4g":2,"3g":3,"2g":4,wired:5,"5g":6},JA={width:640,height:480,frameRate:15,bitrate:500},QA="canvas",$A="audio",eR="video",tR="screen",iR="big",rR="mute",nR="unmute",aR="ended",oR="playing",sR="pause",cR="error",lR="loadstart",dR="loadeddata",uR="loadedmetadata",hR="audioinput",pR="videoinput",fR="enterpictureinpicture",mR="leavepictureinpicture",gR="fullscreenchange",vR="resize",_R="player-error",yR="load-worklet",ER="getUserMedia-retry",bR="default",wR=2e3,IR=["width","height","frameRate","facingMode","sampleRate","sampleSize","channelCount","deviceId","min","max"],TR={alpha:!0,antialias:!1,premultipliedAlpha:!1,preserveDrawingBuffer:!1,depth:!1,stencil:!1,failIfMajorPerformanceCaveat:!0,powerPreference:"low-power"};function SR(e){let{frame:t,onDump:i}=e;return null==i||i(),t}function AR(e){let{frame:t,onDump:i}=e;return null==i||i(),t}function RR(e){let{frame:t,onDump:i}=e;return null==i||i(),t}function kR(e){let{frame:t,onDump:i}=e;return null==i||i(),t}var CR="Log",DR="Network",OR="Dump",LR="Dump (PCM)",NR="Dump (Opus)",PR="Dumping",xR="End",MR="Upload Log",UR="Export Log",BR="Hide",FR="goBottom",VR="backTop",HR="Clear Log",jR="Uplink",zR="Downlink",WR="No Data",GR="Basic",qR="Duration",KR="Video",YR="Audio",XR="Screen",ZR={"play() error: NotAllowedError:":{tips:e=>e.includes("main <video>")||e.includes("main <audio>")?"Remote stream auto play is restricted and playback fails":"Local stream playback failure, generally only occurs in Android WeChat devices, no need to handle",color:"red",class:"red"},"updateStream() try to recover local stream":{tips:"Device acquisition exception, automatic recovery is in progress"},"updateStream() recover local stream successfully":{tips:"Device acquisition exception, automatic recovery is successful"},"updateStream() failed to recover local stream":{tips:"Device acquisition exception, automatic recovery failed"},"main stream - video track is muted":{tips:"Indicates that the received video data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"main stream - audio track is muted":{tips:"Indicates that the received audio data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"auxiliary stream - video track is muted":{tips:"Indicates that the received screen sharing data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"main stream - video track is unable to provide media output":{tips:"Indicates that the received video data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"main stream - audio track is unable to provide media output":{tips:"Indicates that the received audio data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"auxiliary stream - video track is unable to provide media output":{tips:"Indicates that the received screen sharing data is not enough for playback. This is usually caused by network reasons. When enough data is received for playback, the state will change to unmuted."},"main stream - video track is unmuted":{tips:"Received enough playback video data"},"main stream - audio track is unmuted":{tips:"Received enough playback audio data"},"auxiliary stream - video track is unmuted":{tips:"Received enough playback screen sharing data"},"main stream - audio player track is ended":{tips:"Remote audio track stopped"},"main stream - video player track is ended":{tips:"Remote video track stopped"},"auxiliary stream - video player track is ended":{tips:"Received enough playback screen sharing data"},"stream - video track is muted":{tips:"Camera capture is paused, usually due to the device being occupied by other applications or the browser media permission being revoked. The client needs to re-capture.",color:"orange"},"stream - video track is unable to provide media output":{tips:"The camera acquisition is paused, usually because the device is occupied by other applications or the browser media permissions are revoked, and the customer needs to re-acquire. SDK v4.11.4+ will automatically resume acquisition without customer intervention",color:"orange"},"video track is unable to provide media output":{tips:e=>e.includes("↓")?"The remote track is temporarily unable to decode data, which may be caused by network fluctuations":"The camera acquisition is paused, usually because the device is occupied by other applications or the browser media permissions are revoked. The SDK will automatically resume the acquisition.",color:"orange"},"stream - video player track is ended":{tips:"The camera acquisition stops, usually because the device is unplugged. In this case, the SDK will automatically resume acquisition, and the access side does not need to handle it. It may also be caused by the device being occupied by other applications or the browser media permissions being reclaimed. It is recommended to remind the user to re-acquire on the page."},"video player track is ended":{tips:"The camera acquisition stops, usually because the device is unplugged. In this case, the SDK will automatically resume acquisition, and the access side does not need to handle it. It may also be caused by the device being occupied by other applications or the browser media permissions being reclaimed. It is recommended to remind the user to re-acquire on the page."},"stream - audio track is muted":{tips:"Microphone capture is paused, usually due to the device being occupied by other applications or the browser media permission being revoked. The client needs to re-capture.",color:"orange"},"audio track is unable to provide media output":{tips:e=>e.includes("↓")?"The remote track is temporarily unable to decode data, which may be caused by network fluctuations":"Microphone acquisition is paused, usually because the device is occupied by other applications or the browser media permissions are revoked. The SDK will automatically resume the acquisition.",color:"orange"},"stream - audio track is unable to provide media output":{tips:"The microphone acquisition is paused, usually because the device is occupied by other applications or the browser media permissions are revoked. The SDK will automatically resume the acquisition.",color:"orange"},"stream - audio player track is ended":{tips:"The microphone acquisition stops, usually because the device is unplugged. In this case, the SDK will automatically resume acquisition, and the access side does not need to handle it. It may also be caused by the device being occupied by other applications or the browser media permissions being reclaimed. It is recommended to remind the user to re-acquire on the page."},"audio player track is ended":{tips:"The microphone acquisition stops, usually because the device is unplugged. In this case, the SDK will automatically resume acquisition, and the access side does not need to handle it. It may also be caused by the device being occupied by other applications or the browser media permissions being reclaimed. It is recommended to remind the user to re-acquire on the page."},"is adding audio track to current published local stream":{tips:"add audio track",color:"orange"},"is removing audio track from current published local stream":{tips:"remove audio track",color:"orange"},"is removing video track from current published local stream":{tips:"remove video track",color:"orange"},"is adding video track to current published local stream":{tips:"add video track",color:"orange"},"is replacing audio track to current published local main stream":{tips:"replace audio track",color:"orange"},"is replacing video track to current published local main stream":{tips:"replace video track",color:"orange"},"downlink network quality change":{tips:"Downstream network quality change: 1: excellent, 2: good, 3: average, 4: poor, 5: extremely poor"},"uplink network quality change":{tips:"Upstream network quality change: 1: excellent, 2: good, 3: average, 4: poor, 5: extremely poor"},"localStream mute video":{tips:"mute upstream video stream",color:"orange"},"localStream unmute video":{tips:"unmute upstream video stream",color:"orange"},"localStream mute audio":{tips:"mute upstream audio stream",color:"orange"},"localStream unmute audio":{tips:"unmute upstream audio stream",color:"orange"},"black detected":{tips:"Detect black screen, which means fps = 0. It is usually caused by network, and the network will be recovered after a while. If the network is normal but has not been restored, it is an abnormal situation."},'main stream start to play with options: {"muted":true}':{tips:"Play the remote stream in silent mode. Generally, the remote stream does not need to be played in silent mode. You need to confirm whether the parameters passed in the client stream.play API call are correct.",color:"orange"},"main stream - audio player is starting playing":{tips:"Remote stream audio playback success",color:"#0dd90d",class:"success"},"main stream - video player is starting playing":{tips:"Remote stream video playback success",color:"#0dd90d",class:"success"},"video player is playing":{tips:"Local video playback success",color:"#0dd90d",class:"success"},"audio player is playing":{tips:"Local audio playback success",color:"#0dd90d",class:"success"},"stream - video player is starting playing":{tips:"Local video playback success",color:"#0dd90d",class:"success"},"stream - audio player is starting playing":{tips:"Local audio playback success",color:"#0dd90d",class:"success"},"switch camera success":{tips:"Switch camera success",color:"#0dd90d",class:"success"},"switch microphone success":{tips:"Switch microphone success",color:"#0dd90d",class:"success"},gotStream:{tips:"Local stream capture success"},"local stream is published successfully":{tips:"Publish success",color:"#0dd90d",class:"success"},"encoderImplementation change to OpenH264":{tips:"Use software encoding"},"encoderImplementation change to ExternalEncoder":{tips:"Use hardware encoding"},"getUserMedia with constraints":{tips:"Start media (camera/microphone) capture"},"getDisplayMedia with constraints":{tips:"Start screen sharing capture"},"client-banned":{tips:"Kicked out of the room",color:"red",class:"red",textColor:"#fff"},user_timeout:{tips:"The backend is too long without receiving SDK heartbeat, which is usually caused by the JS thread being blocked for a long time. If the reproduction probability is high, the application browser Performance tool analyzes where the JS thread is blocked.",color:"red",class:"red",textColor:"#fff"},"schedule failed":{tips:"Signaling request failed, does not affect the normal room entry process, SDK will connect to the default signaling domain."},"updateStream() video flag is true, but no camera detected, set video to false":{tips:"When trying to resume camera acquisition, the camera acquisition is not resumed because it is detected that there is no camera.",color:"orange",class:"orange",textColor:"#fff"},"qualityLimitationReason change to bandwidth":{tips:"bandwidth estimation is not enough to limit the quality of the encoding, which may cause the code rate, frame rate, and resolution to be lowered.",color:"orange",class:"orange",textColor:"#fff"},"qualityLimitationReason change to cpu":{tips:"cpu load is too high to limit the quality of the encoding, which may cause the code rate, frame rate, and resolution to be lowered.",color:"orange",class:"orange",textColor:"#fff"},"visibility change: hidden":{tips:"User page switched to backend, in mobile devices, this will cause the device to pause the capture, and it will be restored when the user switches backend to the frontend.",color:"orange",class:"orange",textColor:"#fff"},"visibility change: visible":{tips:"User page switched to frontend",color:"orange",class:"orange",textColor:"#fff"},"main stream - audio player is paused":{tips:"The remote stream audio playback is paused, which usually has two possibilities:\n 1. The business side passes in the div tag container for playing audio and video to be removed by the business side from the DOM.\n 2. If the user is in Chrome 70 and below, when the div container is moved, the playback will be paused.",color:"orange",class:"orange",textColor:"#fff"},"main stream - video player is paused":{tips:"The remote stream video playback is paused, which usually has two possibilities:\n 1. The business side passes in the div tag container for playing audio and video to be removed by the business side from the DOM.\n 2. If the user is in Chrome 70 and below, when the div container is moved, the playback will be paused.",color:"orange",class:"orange",textColor:"#fff"},'"displaySurface":"window"':{tips:"Screen sharing captures the application window",color:"blue",class:"blue",textColor:"#fff"},'"displaySurface":"monitor"':{tips:"Screen sharing captures the entire screen",color:"blue",class:"blue",textColor:"#fff"},'"displaySurface":"browser"':{tips:"Screen sharing captures a certain tab page",color:"blue",class:"blue",textColor:"#fff"},updateMediaSettings:{tips:"The resolution and frame rate below are the actual resolution and frame rate captured",color:"blue",class:"blue",textColor:"#fff"},"main stream start to play with":{tips:"Call remoteStream.play interface",color:"blue",class:"blue",textColor:"#fff"},"stream start to play with":{tips:"Call localStream.play interface",color:"blue",class:"blue",textColor:"#fff"},"main setAudioVolume to 0":{tips:"Business side calls remoteStream.setAudioVolume(0) interface to set the playback volume to 0, which will cause the playback to be silent",color:"orange",class:"orange",textColor:"#fff"},"screen sharing was stopped because the video track is ended":{tips:"Screen sharing capture stopped, possible reasons: user clicks the stop button, the window/page shared by the user is closed, etc.",color:"orange",class:"orange",textColor:"#fff"},"Join() => joining room":{tips:"Call client.join interface",color:"blue",class:"blue",textColor:"#fff"},"publish() => publishing local stream":{tips:"Call client.publish interface",color:"blue",class:"blue",textColor:"#fff"},"subscribe() => subscribe to":{tips:"Call client.subscribe interface",color:"blue",class:"blue",textColor:"#fff"},"switchRole() => switch role":{tips:"Call client.switchRole interface",color:"blue",class:"blue",textColor:"#fff"}};["enterRoom","exitRoom","switchRole","destroy","startLocalAudio","updateLocalAudio","stopLocalAudio","startLocalVideo","updateLocalVideo","stopLocalVideo","startScreenShare","updateScreenShare","stopScreenShare","startRemoteVideo","updateRemoteVideo","stopRemoteVideo","muteRemoteAudio","setRemoteAudioVolume"].forEach(e=>{ZR["".concat(e,"()")]={tips:"Call trtc.".concat(e),color:"blue",class:"blue",textColor:"#fff"}});var JR,QR=Object.keys(ZR),$R=TA(RA()),ek=((JR=ek||{})[JR.INVALID_PARAMETER=4096]="INVALID_PARAMETER",JR[JR.INVALID_OPERATION=4097]="INVALID_OPERATION",JR[JR.NOT_SUPPORTED=4098]="NOT_SUPPORTED",JR[JR.DEVICE_NOT_FOUND=4099]="DEVICE_NOT_FOUND",JR[JR.INITIALIZE_FAILED=4100]="INITIALIZE_FAILED",JR[JR.SIGNAL_CHANNEL_SETUP_FAILED=16385]="SIGNAL_CHANNEL_SETUP_FAILED",JR[JR.SIGNAL_CHANNEL_ERROR=16386]="SIGNAL_CHANNEL_ERROR",JR[JR.ICE_TRANSPORT_ERROR=16387]="ICE_TRANSPORT_ERROR",JR[JR.JOIN_ROOM_FAILED=16388]="JOIN_ROOM_FAILED",JR[JR.CREATE_OFFER_FAILED=16389]="CREATE_OFFER_FAILED",JR[JR.SIGNAL_CHANNEL_RECONNECTION_FAILED=16390]="SIGNAL_CHANNEL_RECONNECTION_FAILED",JR[JR.UPLINK_RECONNECTION_FAILED=16391]="UPLINK_RECONNECTION_FAILED",JR[JR.DOWNLINK_RECONNECTION_FAILED=16392]="DOWNLINK_RECONNECTION_FAILED",JR[JR.REMOTE_STREAM_NOT_EXIST=16400]="REMOTE_STREAM_NOT_EXIST",JR[JR.CLIENT_BANNED=16448]="CLIENT_BANNED",JR[JR.SERVER_TIMEOUT=16449]="SERVER_TIMEOUT",JR[JR.SUBSCRIPTION_TIMEOUT=16450]="SUBSCRIPTION_TIMEOUT",JR[JR.PLAY_NOT_ALLOWED=16451]="PLAY_NOT_ALLOWED",JR[JR.DEVICE_AUTO_RECOVER_FAILED=16452]="DEVICE_AUTO_RECOVER_FAILED",JR[JR.START_PUBLISH_CDN_FAILED=16453]="START_PUBLISH_CDN_FAILED",JR[JR.STOP_PUBLISH_CDN_FAILED=16454]="STOP_PUBLISH_CDN_FAILED",JR[JR.START_MIX_TRANSCODE_FAILED=16455]="START_MIX_TRANSCODE_FAILED",JR[JR.STOP_MIX_TRANSCODE_FAILED=16456]="STOP_MIX_TRANSCODE_FAILED",JR[JR.NOT_SUPPORTED_H264=16457]="NOT_SUPPORTED_H264",JR[JR.SWITCH_ROLE_FAILED=16458]="SWITCH_ROLE_FAILED",JR[JR.API_CALL_TIMEOUT=16459]="API_CALL_TIMEOUT",JR[JR.SCHEDULE_FAILED=16460]="SCHEDULE_FAILED",JR[JR.API_CALL_ABORTED=16461]="API_CALL_ABORTED",JR[JR.SPC_INITIALIZED_FAILED=16462]="SPC_INITIALIZED_FAILED",JR[JR.VIDEO_MANAGER_ERROR=16463]="VIDEO_MANAGER_ERROR",JR[JR.SWITCH_ROOM_FAILED=16464]="SWITCH_ROOM_FAILED",JR[JR.VIDEO_ENCODE_FAILED=16465]="VIDEO_ENCODE_FAILED",JR[JR.AUDIO_ENCODE_FAILED=16466]="AUDIO_ENCODE_FAILED",JR[JR.UNKNOWN=65535]="UNKNOWN",JR),tk=ek,ik=class extends Error{constructor(e){let{name:t="RtcError",message:i,code:r=tk.UNKNOWN,extraCode:n=0,constraint:a}=e,o="<".concat(function(e){for(let t in tk)if(tk[t]===e)return t;return"UNKNOWN"}(r)," 0x").concat(r.toString(16),">"),s="".concat(i).concat(a?" constraint: ".concat(a):"").concat(null!=i&&i.includes(o)?"":" ".concat(o));super(s),AA(this,"code"),AA(this,"extraCode"),AA(this,"message"),AA(this,"originMessage"),AA(this,"name"),AA(this,"constraint"),this.code=r,this.extraCode=n,this.name=t,this.message=s,this.constraint=a,this.originMessage=i}getCode(){return this.code}getExtraCode(){return this.extraCode}toString(){return this.originMessage}},rk=ik,nk=function(){return Date.now()+0},ak=function(){let e=new Date;return e.setTime(nk()),e.toLocaleString()};IA({},{REPORT_TYPE:()=>BC,buildSSOPackage:()=>FC,bytes2ms:()=>Bk,calculateScaleResolutionDownNumber:()=>PC,concatArrayBuffers:()=>VC,convertObjectNumberToInt:()=>CC,copyProperties:()=>Uk,deepClone:()=>yC,deepCloneBasic:()=>UC,deepMerge:()=>_C,delay:()=>DC,fibonacci:()=>Gk,formatedTime:()=>wC,getConstructorName:()=>aC,getContainerFromElement:()=>bC,getEnv:()=>Ak,getFirst16Bits:()=>jC,getInternalVersion:()=>uC,getLast16Bits:()=>HC,getLoggerUrl:()=>Ck,getMediaStreamTrackInfo:()=>NC,getMuteStateFromFlag:()=>mC,getNetworkType:()=>Ok,getNumNetworkType:()=>Mk,getReconnectionTimeout:()=>qk,getStringByteLength:()=>SC,getTestSignalDomain:()=>Rk,getTurnServer:()=>gC,getUint32Version:()=>kC,getValueType:()=>Kk,getVersionFromInternalVersion:()=>hC,getViewListFromView:()=>EC,glog:()=>jk,ipv4ToUint32:()=>vC,isArray:()=>eC,isAudioWorkletSupported:()=>oC,isBoolean:()=>Qk,isConstructor:()=>nC,isEmpty:()=>fC,isFunction:()=>Yk,isLangChinese:()=>zk,isMediaStreamTrack:()=>tC,isNumber:()=>Jk,isObject:()=>$k,isOverseaSdkAppId:()=>kk,isPlainObject:()=>Wk,isPortrait:()=>AC,isPromise:()=>rC,isRemoteTrack:()=>iC,isRotate90Or270:()=>xC,isSetSinkIdSupported:()=>sC,isString:()=>Zk,isUndefined:()=>Xk,isVideoMixerOutputTrack:()=>zC,loadImage:()=>RC,loadVideo:()=>MC,ms2bytes:()=>Vk,ms2samples:()=>Hk,normalizeUrl:()=>LC,performanceNow:()=>lC,promiseAny:()=>cC,samples2ms:()=>Fk,setNetworkTypeFromWebRTC:()=>xk,stringify:()=>IC,stringifyIncludeValue:()=>TC,throttlePromise:()=>OC});var ok=function(e,t,i,r){return new(i||(i=Promise))(function(n,a){function o(e){try{c(r.next(e))}catch(t){a(t)}}function s(e){try{c(r.throw(e))}catch(t){a(t)}}function c(e){e.done?n(e.value):function(e){return e instanceof i?e:new i(function(t){t(e)})}(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},sk=Symbol(32),ck=Symbol(16),lk=Symbol(8),dk=class{constructor(e){this.g=e,this.consumed=0,e&&(this.need=e.next().value)}setG(e){this.g=e,this.demand(e.next().value,!0)}consume(){this.buffer&&this.consumed&&(this.buffer.copyWithin(0,this.consumed),this.buffer=this.buffer.subarray(0,this.buffer.length-this.consumed),this.consumed=0)}demand(e,t){return t&&this.consume(),this.need=e,this.flush()}read(e){return ok(this,void 0,void 0,function*(){return this.lastReadPromise&&(yield this.lastReadPromise),this.lastReadPromise=new Promise((t,i)=>{var r;this.reject=i,this.resolve=e=>{delete this.lastReadPromise,delete this.resolve,delete this.need,t(e)},this.demand(e,!0)||null===(r=this.pull)||void 0===r||r.call(this,e)})})}readU32(){return this.read(sk)}readU16(){return this.read(ck)}readU8(){return this.read(lk)}close(){var e;this.g&&this.g.return(),this.buffer&&this.buffer.subarray(0,0),null===(e=this.reject)||void 0===e||e.call(this,new Error("EOF")),delete this.lastReadPromise}flush(){if(!this.buffer||!this.need)return;let e=null,t=this.buffer.subarray(this.consumed),i=0,r=e=>t.length<(i=e);if("number"==typeof this.need){if(r(this.need))return;e=t.subarray(0,i)}else if(this.need===sk){if(r(4))return;e=t[0]<<24|t[1]<<16|t[2]<<8|t[3]}else if(this.need===ck){if(r(2))return;e=t[0]<<8|t[1]}else if(this.need===lk){if(r(1))return;e=t[0]}else if("buffer"in this.need){if("byteOffset"in this.need){if(r(this.need.byteLength-this.need.byteOffset))return;new Uint8Array(this.need.buffer,this.need.byteOffset).set(t.subarray(0,i)),e=this.need}else if(this.g)return void this.g.throw(new Error("Unsupported type"))}else{if(r(this.need.byteLength))return;new Uint8Array(this.need).set(t.subarray(0,i)),e=this.need}return this.consumed+=i,this.g?this.demand(this.g.next(e).value,!0):this.resolve&&this.resolve(e),e}write(e){if(e instanceof Uint8Array?this.malloc(e.length).set(e):"buffer"in e?this.malloc(e.byteLength).set(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)):this.malloc(e.byteLength).set(new Uint8Array(e)),!this.g&&!this.resolve)return new Promise(e=>this.pull=e);this.flush()}writeU32(e){this.malloc(4).set([e>>24&255,e>>16&255,e>>8&255,255&e]),this.flush()}writeU16(e){this.malloc(2).set([e>>8&255,255&e]),this.flush()}writeU8(e){this.malloc(1)[0]=e,this.flush()}malloc(e){if(this.buffer){let t=this.buffer.length,i=t+e;if(i<=this.buffer.buffer.byteLength-this.buffer.byteOffset)this.buffer=new Uint8Array(this.buffer.buffer,this.buffer.byteOffset,i);else{let e=new Uint8Array(i);e.set(this.buffer),this.buffer=e}return this.buffer.subarray(t,i)}return this.buffer=new Uint8Array(e),this.buffer}};dk.U32=sk,dk.U16=ck,dk.U8=lk;var uk=128;function hk(e){let t=new dk;for(;e>=128;)t.malloc(1)[0]=255&e|uk,e>>>=7;return t.malloc(1)[0]=255&e,t.buffer||new Uint8Array(0)}function pk(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=new dk,r=t<<3;switch(typeof e){case"boolean":let n=i.malloc(2);n[0]=r,n[1]=e?1:0;break;case"number":i.malloc(1)[0]=r,i.write(hk(e));break;case"string":i.malloc(1)[0]=2|r;let a=(new TextEncoder).encode(e);i.write(hk(a.length));let o=i.malloc(a.length);for(let e=0;e<a.length;e++)o[e]=a[e];break;case"object":let s=new dk;if(Array.isArray(e))for(let t=0;t<e.length;t++){let i=pk(e[t],t+1);i&&s.write(i)}else{let t=1;for(let i in e){let r=pk(e[i],t++);r&&s.write(r)}}0===t?s.buffer&&i.write(s.buffer):(i.malloc(1)[0]=2|r,s.buffer&&(i.write(hk(s.buffer.length)),i.write(s.buffer)))}return i.buffer||new Uint8Array(0)}var fk=class{constructor(){AA(this,"buffer"),this.buffer=[]}get data(){return this.buffer}get length(){return this.buffer.length}writeInt32(e){this.buffer.push(e>>>24&255),this.buffer.push(e>>>16&255),this.buffer.push(e>>>8&255),this.buffer.push(255&e)}writeInt16(e){this.buffer.push(e>>>8&255),this.buffer.push(255&e)}writeByte(e){this.buffer.push(255&e)}writeBytes(e){for(let t=0;t<e.length;t++)this.buffer.push(e[t])}};function mk(e,t,i){e[i]=t>>>24&255,e[i+1]=t>>>16&255,e[i+2]=t>>>8&255,e[i+3]=255&t}function gk(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function vk(e,t){return e[t]}function _k(e,t,i){return(new TextDecoder).decode(function(e,t,i){return e.slice(t,t+i)}(e,t,i))}var yk=0,Ek=2654435769,bk=16,wk=2,Ik=7;function Tk(e,t){let i=new fk,r=function(e,t,i){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"AVQualityReportSvc.C2S";return{version:arguments.length>4&&void 0!==arguments[4]?arguments[4]:2e3,encryption:arguments.length>5&&void 0!==arguments[5]?arguments[5]:2,d2:"",d2Len:0,uinType:arguments.length>6&&void 0!==arguments[6]?arguments[6]:30,uin:"",uinLen:0,reqHead:{seqNumber:i,appId:e,appidAtThird:new Uint8Array(0),a2:"",a2Len:0,serviceCmd:r,serviceCmdLen:0,cookie:"",cookieLen:0,imei:"",imeiLen:0,ksid:"",ksidLen:0,clientVersionInfo:"",clientVersionInfoLen:0},busiBuff:t}}(t,e,yk);yk=yk+1&2147483647,i.writeInt32(0),i.writeInt32(r.version),i.writeByte(r.encryption);let n=(new TextEncoder).encode(r.d2);i.writeInt32(n.length+4),n&&i.writeBytes(n),i.writeByte(r.uinType);let a=(new TextEncoder).encode(r.uin);i.writeInt32(a.length+4),a.length&&i.writeBytes(a);let o=new fk;o.writeInt32(0),o.writeInt32(r.reqHead.seqNumber),o.writeInt32(r.reqHead.appId),o.writeByte(r.reqHead.appId>>>24&255),o.writeByte(r.reqHead.appId>>>16&255),o.writeByte(r.reqHead.appId>>>8&255),o.writeByte(255&r.reqHead.appId);for(let _=4;_<16;_++)o.writeByte(0);let s=(new TextEncoder).encode(r.reqHead.a2);o.writeInt32(s.length+4),s.length&&o.writeBytes(s);let c=(new TextEncoder).encode(r.reqHead.serviceCmd);o.writeInt32(c.length+4),c.length&&o.writeBytes(c);let l=(new TextEncoder).encode(r.reqHead.cookie);o.writeInt32(l.length+4),l.length&&o.writeBytes(l);let d=(new TextEncoder).encode(r.reqHead.imei);o.writeInt32(d.length+4),d.length&&o.writeBytes(d);let u=(new TextEncoder).encode(r.reqHead.ksid);o.writeInt32(u.length+4),u.length&&o.writeBytes(u);let h=(new TextEncoder).encode(r.reqHead.clientVersionInfo);o.writeInt16(h.length+2),h.length&&o.writeBytes(h);let p=o.length;o.data[0]=p>>>24&255,o.data[1]=p>>>16&255,o.data[2]=p>>>8&255,o.data[3]=255&p,Zk(e)&&(e=(new TextEncoder).encode(e)),o.writeInt32(e.length+4),e.length&&o.writeBytes(e);let f=new Uint8Array(o.data),m=null;1===r.encryption?m=(new TextEncoder).encode(r.uin):2===r.encryption&&(m=new Uint8Array(16)),m&&(f=function(e,t){let i=e.length,r=(i+1+wk+Ik)%8;r&&(r=8-r);let n=i+1+wk+Ik+r,a=new Uint8Array(n),o=0,s=new Uint8Array(8),c=new Uint8Array(8),l=new Uint8Array(8),d=0;s[0]=248&Math.floor(256*Math.random())|r,d=1;for(let h=0;h<r;h++)s[d]=255&Math.floor(256*Math.random()),d+=1;for(let h=0;h<wk;)if(d<8&&(s[d]=255&Math.floor(256*Math.random()),d+=1,h+=1),8===d){Sk(s,t,c,l,a,o),o+=8,d=0;for(let e=0;e<8;e++)l[e]=a[o-8+e]}let u=0;for(;u<i;)if(d<8&&(s[d]=e[u],d+=1,u+=1),8===d){Sk(s,t,c,l,a,o),o+=8,d=0;for(let e=0;e<8;e++)l[e]=a[o-8+e]}for(let h=0;h<Ik;)if(d<8&&(s[d]=0,d+=1,h+=1),8===d){Sk(s,t,c,l,a,o),o+=8,d=0;for(let e=0;e<8;e++)l[e]=a[o-8+e]}return a}(f,m)),i.writeBytes(f);let g=new Uint8Array(i.data),v=g.length;return g[0]=v>>>24&255,g[1]=v>>>16&255,g[2]=v>>>8&255,g[3]=255&v,g}function Sk(e,t,i,r,n,a){for(let o=0;o<8;o++)e[o]^=r[o];!function(e,t,i,r){let n=gk(e,0),a=gk(e,4),o=[];for(let c=0;c<4;c++)o[c]=gk(t,4*c);let s=0;for(let c=0;c<bk;c++)s+=Ek,s>>>=0,n+=(a<<4)+o[0]^a+s^(a>>>5)+o[1],n>>>=0,a+=(n<<4)+o[2]^n+s^(n>>>5)+o[3],a>>>=0;mk(i,n,r),mk(i,a,r+4)}(e,t,n,a);for(let o=0;o<8;o++)n[a+o]^=i[o];for(let o=0;o<8;o++)i[o]=e[o]}var Ak=function(){return new URLSearchParams(location.search).get("trtc_env")||""},Rk=function(e){return e.includes(".")?e:"".concat(e).concat(".rtc.qq.com")},kk=e=>Number(e)<14e8,Ck=function(e,t){let i;i=kk(e)?"https://apisgp.my-imcloud.com":"https://yun.tim.qq.com";let r=Math.floor(Math.random()*2**31);return"".concat(i,"/v5/AVQualityReportSvc/C2S?random=").concat(r,"&sdkappid=").concat(e,"&cmdtype=").concat(t)},Dk="unknown";function Ok(){!function(){var e;Nk||(Nk=!0,null==(e=navigator.connection)||e.addEventListener("typechange",Lk))}();let{userAgent:e,connection:t}=navigator,i=(e.match(/NetType\/\S+/)||[])[0]||"";i=i.toLowerCase().replace("nettype/",""),"3gnet"===i&&(i="3g");let r=t&&t.type&&t.type.toLowerCase(),n=t&&t.effectiveType&&t.effectiveType.toLowerCase();return"slow-2"===n&&(n="2g"),r?Pk(r,n):Dk}function Lk(){MO.warn("netType changed",Ok())}var Nk=!1;function Pk(e,t){if(ZA[e])return e;switch(e){case"cellular":case"wimax":return t||"unknown";case"ethernet":return"wired";default:return"unknown"}}function xk(e){Dk=Pk(e)}function Mk(){return ZA[Ok()]}function Uk(e,t){for(let i of Reflect.ownKeys(t))if("constructor"!==i&&"prototype"!==i&&"name"!==i){let r=Object.getOwnPropertyDescriptor(t,i)||"";Object.defineProperty(e,i,r)}return e}function Bk(e){return Fk(e/4,arguments.length>1&&void 0!==arguments[1]?arguments[1]:48e3)}function Fk(e){return 1e3*e/(arguments.length>1&&void 0!==arguments[1]?arguments[1]:48e3)}function Vk(e){return 4*Hk(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:48e3)}function Hk(e){return e*(arguments.length>1&&void 0!==arguments[1]?arguments[1]:48e3)/1e3}var jk="undefined"!=typeof window&&"function"==typeof window.glog?window.glog:()=>{},zk=()=>{let e=navigator.language;return e=e.substring(0,2),"zh"===e},Wk=function(e){if(!e||"object"!=typeof e||"[object Object]"!=Object.prototype.toString.call(e))return!1;let t=Object.getPrototypeOf(e);if(null===t)return!0;let i=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"==typeof i&&i instanceof i&&Function.prototype.toString.call(i)===Function.prototype.toString.call(Object)};function Gk(e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return e<=1?t:Gk(e-1,t,(arguments.length>1&&void 0!==arguments[1]?arguments[1]:1)+t)}function qk(e){return e>8?3e4:1e3*Gk(e)}function Kk(e){return Reflect.apply(Object.prototype.toString,e,[]).replace(/^\[object\s(\w+)\]$/,"$1").toLowerCase()}var Yk=e=>"function"==typeof e,Xk=e=>void 0===e,Zk=e=>"string"==typeof e,Jk=e=>"number"==typeof e,Qk=e=>"boolean"==typeof e,$k=e=>"object"===Kk(e),eC=e=>"array"===Kk(e),tC=e=>Kk(e)==="MediaStreamTrack".toLowerCase(),iC=e=>e.isRemote,rC=e=>"promise"===Kk(e),nC=e=>Yk(e)&&e.prototype.constructor===e,aC=e=>nC(e)?e.prototype.constructor.name:"",oC="undefined"!=typeof AudioWorkletNode,sC="undefined"!=typeof HTMLMediaElement&&"setSinkId"in HTMLMediaElement.prototype;function cC(e){return new Promise((t,i)=>{let r=[];e.forEach(n=>{n.then(t).catch(t=>{r.push(t),r.length===e.length&&i(r)})})})}function lC(){return performance&&performance.now?Math.floor(performance.now()):Date.now()}var dC=e=>+e<10?"0".concat(e):e,uC=e=>{let t=e.match(/^\d+\.\d+\.\d+/)[0];if(!t)return e;let i=t.split("."),r=dC(i[1])+dC(i[2]);return i[1]-15>0&&(i[1]="15"),i[2]-15>0&&(i[2]="15"),"".concat(i.join("."),".").concat(r)},hC=e=>{let t=e.split(".");if(4!==t.length)return e;let i=t[0],r=t[3];if(r.length<4)return e;let n=parseInt(r.substring(0,r.length-2),10),a=parseInt(r.substring(r.length-2),10);return"".concat(i,".").concat(n,".").concat(a)},pC=Object.prototype.hasOwnProperty;function fC(e){if(null==e)return!0;if("boolean"==typeof e)return!1;if("number"==typeof e)return 0===e;if("string"==typeof e||"function"==typeof e||Array.isArray(e))return 0===e.length;if(e instanceof Error)return""===e.message;if(Wk(e))switch(Object.prototype.toString.call(e)){case"[object File]":case"[object Map]":case"[object Set]":return 0===e.size;case"[object Object]":for(let t in e)if(pC.call(e,t))return!1;return!0}return!1}function mC(e,t){return{userId:t,hasAudio:!!(8&e),hasVideo:!!(1&e),hasAuxiliary:!!(4&e),hasSmall:!!(2&e),audioMuted:!!(64&e),videoMuted:!!(16&e),audioAvailable:!(!(8&e)||64&e),videoAvailable:!(!(1&e)||16&e),hasDatachannel:!!(256&e)}}function gC(e){let t={urls:e.url.startsWith("turn:")||e.url.startsWith("turns:")?e.url:"turn:".concat(e.url)};return!Xk(e.username)&&!Xk(e.credential)&&(t.username=e.username,t.credential=e.credential,t.credentialType="password",Xk(e.credentialType)||(t.credentialType=e.credentialType)),t}function vC(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!Zk(e))return 0;let i=e.split(".");return t?(Number(i[0])<<24|Number(i[1])<<16|Number(i[2])<<8|Number(i[3]))>>>0:(Number(i[3])<<24|Number(i[2])<<16|Number(i[1])<<8|Number(i[0]))>>>0}var _C=function(e,t,i,r){if(!$k(e)||!$k(t))return 0;let n,a=0,o=Object.keys(t);for(let s=0,c=o.length;s<c;s++)if(n=o[s],!(Xk(t[n])||i&&i.includes(n)))if($k(e[n])&&$k(t[n]))a+=_C(e[n],t[n],i,r);else{if(r&&r.includes(t[n]))continue;e[n]!==t[n]&&(e[n]=yC(t[n]),a+=1)}return a};function yC(e){if(eC(e)){let t=[];return e.forEach((e,i)=>{t[i]=yC(e)}),t}if($k(e)){let t={};return Object.keys(e).forEach(i=>{t[i]=yC(e[i])}),t}return e}var EC=e=>{let t=[];if(eC(e))t=[...e];else if(Zk(e)){let i=document.getElementById(e);i&&t.push(i)}else e&&t.push(e);return t},bC=e=>Zk(e)?document.getElementById(e):e,wC=()=>(e=>{let t=e=>e<10?"0".concat(e):"".concat(e),i=e.getFullYear(),r=e.getMonth()+1,n=e.getDate(),a=t(e.getHours()),o=t(e.getMinutes()),s=t(e.getSeconds());return"".concat(i,"/").concat(r,"/").concat(n," ").concat(a,":").concat(o,":").concat(s)})(new Date);function IC(e,t){let{keysToInclude:i,keysToExclude:r}=t;try{if(eC(e))return"[".concat(e.map(e=>IC(e,{keysToInclude:i,keysToExclude:r})).join(","),"]");if(!Wk(e)||!eC(i)&&!eC(r))return JSON.stringify(e);let t={},n=new Set(i),a=new Set(r);return Object.keys(e).forEach(o=>{(0===a.size&&n.has(o)||0===n.size&&!a.has(o))&&(t[o]=Wk(e[o])||eC(e[o])?JSON.parse(IC(e[o],{keysToExclude:r,keysToInclude:i})):e[o])}),JSON.stringify(t)}catch(BA){return"{}"}}function TC(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=[];return Object.keys(e).forEach(r=>{t===e[r]&&i.push(r)}),IC(e,{keysToInclude:i})}function SC(e){return e.replace(/[\u4e00-\u9fa5]/g,"aa").length}var AC=()=>{var e,t,i,r;return null!=(e=window.screen)&&e.orientation?!(null==(r=null==(i=null==(t=window.screen)?void 0:t.orientation)?void 0:i.type)||!r.includes("portrait")):0===window.orientation||180===window.orientation},RC=async e=>new Promise((t,i)=>{let r;if(Zk(e))r=new Image,r.crossOrigin="anonymous",r.src=e;else if(r=e,r.complete)return void t(r);r.onload=()=>t(r),r.onerror=()=>{i(new rk({code:tk.INVALID_PARAMETER,message:"load image failed, url: ".concat(e)}))}}),kC=e=>{let t=e.split(".");return+t[0]<<24|+t[1]<<16|+t[2]<<8|+t[3]},CC=e=>(Object.keys(e).forEach(t=>{Jk(e[t])&&(t.startsWith("uint")||t.startsWith("int"))?e[t]=Math.floor(e[t]):(Wk(e[t])||eC(e[t]))&&CC(e[t])}),e);function DC(e,t){return new Promise(i=>{let r=setTimeout(i,e);t&&t(r)})}function OC(e,t){let i=null;return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return i||(i=e.apply(t||this,n),i.finally(()=>i=null),i)}}function LC(e){return e.replace(/(^|[^:])\/{2,}/g,"$1/")}function NC(e){var t;try{let{width:i,height:r,frameRate:n,sampleRate:a,sampleSize:o,channelCount:s}=null==(t=e.getSettings)?void 0:t.call(e),c=e.kind===$A?"".concat(a,"x").concat(o,"@").concat(s):"".concat(i,"x").concat(r,"@").concat(n),l=e.stats?" stats: ".concat(JSON.stringify(e.stats).replaceAll('"',"")):"";return"".concat(e.id," ").concat(e.readyState," muted:").concat(e.muted," ").concat(e.kind," ").concat(e.label," ").concat(c).concat(l)}catch(Sx){return""}}function PC(e,t){return e.width*e.height===t.width*t.height?1:AC()&&t.width>t.height&&e.height>t.width?Math.max(e.width/t.height,e.height/t.width,1):Math.max(e.width/t.width,e.height/t.height,1)}function xC(e){return 90===e||270===e}async function MC(e){return new Promise((t,i)=>{let r=document.createElement("video");r.crossOrigin="anonymous",r.src=e,r.muted=!0,r.loop=!0,r.playsInline=!0,r.play().then(()=>t(r)),r.onerror=()=>{i(r.error)}})}function UC(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if("object"!=typeof e||null===e)return e;if(t.has(e))return t.get(e);if(Array.isArray(e)){let i=[];return t.set(e,i),e.forEach((e,r)=>{i[r]=UC(e,t)}),i}if("[object Object]"===Object.prototype.toString.call(e)){let i={};return t.set(e,i),Reflect.ownKeys(e).forEach(r=>{i[r]=UC(e[r],t)}),i}return e}var BC=(e=>(e[e.END_REPORT=2001]="END_REPORT",e[e.LOG=2002]="LOG",e[e.KEY_METRIC_REPORT=2003]="KEY_METRIC_REPORT",e))(BC||{});function FC(e,t,i,r){try{let n=function(e,t,i,r){let n={data:e,random:Math.floor(2147483648*Math.random()),sdkAppId:i};return Xk(r)||(n=EA(yA({},n),{gzip:+r})),{uint32_sdkappid:0,uint64_from_uin:0,uint32_timestamp:0,uint32_seq:0,msg_common_info:{msg_device_info:{enum_device_type:0,str_device_brand:"",str_device_model:"",str_device_board:"",str_device_cpu_abi:""},msg_system_info:{enum_os_type:0,str_os_version:"",msg_network_info:0},msg_network_info:{enum_network_type:0}},msg_report_content:{uint32_type:t,bytes_report_data:JSON.stringify(n)}}}(e,t,i,r);return Tk(pk(n),i)}catch(n){return JSON.stringify(e)}}function VC(e,t){let i=new Uint8Array(e.byteLength+t.byteLength);return i.set(new Uint8Array(e),0),i.set(new Uint8Array(t),e.byteLength),i.buffer}function HC(e){return(65535&e)>>>0}function jC(e){return(4294901760&e)>>>0}function zC(e,t){return!!(e&&e instanceof CanvasCaptureMediaStreamTrack&&e.canvas.id.includes("trtc_mix")&&null!=t&&t.isUsingVideoMixerInternalTrack)}function WC(e){let t=function(e){try{let t={},i=0;t.totalLength=gk(e,i),i+=4,t.version=gk(e,i),i+=4,t.encryption=vk(e,i),i+=1,t.uinType=vk(e,i),i+=1,t.uinLength=gk(e,i),i+=4,t.uin=t.uinLength>4?_k(e,i,t.uinLength-4):"",i+=t.uinLength-4;let r=e.slice(i);if(2===t.encryption){e=function(e,t){let i=0,r=new Uint8Array(8).fill(0),n=new Uint8Array(e.slice(0,8)),a=GC(n,t),o=7&a[0],s=e.length-1-o-wk-Ik,c=new Uint8Array(s),l=0,d=r,u=e.slice(0,8);i=8;let h=1;h+=o;for(let f=1;f<=wk;)if(h<8)h++,f++;else if(8===h){let r=qC(e,i,d,u,a,t);d=r.ivPreCrypt,u=r.ivCurCrypt,a=r.debiBuf,i=r.bufPos,h=0}let p=s;for(;p>0;)if(h<8)c[l++]=a[h]^d[h],h++,p--;else if(8===h){let r=qC(e,i,d,u,a,t);d=r.ivPreCrypt,u=r.ivCurCrypt,a=r.debiBuf,i=r.bufPos,h=0}for(let f=1;f<=Ik;)if(h<8)a[h],d[h],h++,f++;else if(8===h){if(i>=e.length)break;let r=qC(e,i,d,u,a,t);if(!r.success)break;d=r.ivPreCrypt,u=r.ivCurCrypt,a=r.debiBuf,i=r.bufPos,h=0}return c}(r,new Uint8Array(16).fill(0)),t.decrypted=!0,i=0}else e=r,i=0;return t.rspHeadLength=gk(e,i),i+=4,t.seqNo=gk(e,i),i+=4,t.retCode=gk(e,i),i+=4,t.retStrLength=gk(e,i),i+=4,t.retStr=t.retStrLength?_k(e,i,t.retStrLength-4):"",i+=t.retStrLength-4,t.serviceCmdLength=gk(e,i),i+=4,t.serviceCmd=t.serviceCmdLength?_k(e,i,t.serviceCmdLength-4):"",i+=t.serviceCmdLength-4,t.cookieLength=gk(e,i),i+=4,t.cookie=t.cookieLength?_k(e,i,t.cookieLength-4):"",i+=t.cookieLength-4,t.flag=gk(e,i),i+=4,t.busiBuffLength=gk(e,i),i+=4,t.busiBuff=t.busiBuffLength?_k(e,i,t.busiBuffLength-4):"",i+=t.busiBuffLength-4,t}catch(t){}}(e);return null==t?void 0:t.busiBuff}function GC(e,t){let i=e[0]<<24|e[1]<<16|e[2]<<8|e[3],r=e[4]<<24|e[5]<<16|e[6]<<8|e[7];i>>>=0,r>>>=0;let n=Ek*bk>>>0;for(let a=0;a<bk;a++)r-=(i<<4)+t[2]^i+n^(i>>>5)+t[3],r>>>=0,i-=(r<<4)+t[0]^r+n^(r>>>5)+t[1],i>>>=0,n-=Ek,n>>>=0;return new Uint8Array([i>>>24&255,i>>>16&255,i>>>8&255,255&i,r>>>24&255,r>>>16&255,r>>>8&255,255&r])}function qC(e,t,i,r,n,a){if(t+8>e.length)return{success:!1};let o=new Uint8Array(r),s=e.slice(t,t+8),c=new Uint8Array(8);for(let l=0;l<8;l++)c[l]=n[l]^s[l];return{success:!0,ivPreCrypt:o,ivCurCrypt:s,debiBuf:GC(c,a),bufPos:t+8}}var KC="undefined"!=typeof TextDecoder?new TextDecoder:void 0;function YC(e){let{url:t,body:i,method:r="POST",timeout:n,priority:a}=e;return new Promise((e,o)=>{if("fetch"in window)return fetch(t,{method:r,body:i,priority:a}).then(e=>e.clone().json().then(e=>({data:e}),()=>e.arrayBuffer().then(e=>({data:WC(new Uint8Array(e))||(KC?KC.decode(e):e)})))).then(e,o);let s=new XMLHttpRequest;s.onreadystatechange=()=>{if(4===s.readyState)if(s.status>=200&&s.status<300)try{let t=JSON.parse(s.response);e({data:t})}catch(t){e({data:s.response})}else o({status:s.status,statusText:s.statusText||"request failed!"})},s.timeout=n||5e3,s.open(r,t,!0),s.send(i)})}var XC=Object.prototype.hasOwnProperty,ZC=e=>"function"==typeof e,JC=e=>void 0===e,QC=e=>e.isRemote;function $C(e){if(null==e)return!0;if("boolean"==typeof e)return!1;if("number"==typeof e)return 0===e;if("string"==typeof e||"function"==typeof e||Array.isArray(e))return 0===e.length;if(e instanceof Error)return""===e.message;if(function(e){if(!e||"object"!=typeof e||"[object Object]"!=Object.prototype.toString.call(e))return!1;let t=Object.getPrototypeOf(e);if(null===t)return!0;let i=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"==typeof i&&i instanceof i&&Function.prototype.toString.call(i)===Function.prototype.toString.call(Object)}(e))switch(Object.prototype.toString.call(e)){case"[object File]":case"[object Map]":case"[object Set]":return 0===e.size;case"[object Object]":for(let t in e)if(XC.call(e,t))return!1;return!0}return!1}var eD=function(e){let{retryFunction:t,settings:i,onError:r,onRetrying:n,onRetryFailed:a,onRetrySuccess:o,context:s}=e;return function(){for(var e=arguments.length,c=new Array(e),l=0;l<e;l++)c[l]=arguments[l];let{retries:d=5,timeout:u=1e3}=i,h=0,p=-1,f=0,m=async(e,i)=>{let l=s||this;try{let i=await t.apply(l,c);h>0&&o&&o.call(this,h),h=0,e(i)}catch(g){let t=()=>{clearTimeout(p),h=0,f=2,i(g)},o=()=>{2!==f&&h<(ZC(d)?d():d)?(h++,f=1,ZC(n)&&n.call(this,h,t),p=window.setTimeout(()=>{p=-1,m(e,i)},ZC(u)?u(h):u)):(t(),ZC(a)&&a.call(this,g))};ZC(r)?r.call(this,{error:g,retry:o,reject:i,retryFuncArgs:c,retriedCount:h}):o()}};return new Promise(m)}},tD=class e{constructor(e){AA(this,"_parentPath"),AA(this,"userId"),AA(this,"remoteUserId"),AA(this,"id"),AA(this,"sdkAppId"),AA(this,"type"),AA(this,"isLocal"),this.id=e.id,this.userId=e.userId,this.sdkAppId=e.sdkAppId,this.remoteUserId=e.remoteUserId,this.isLocal=!(e=>"boolean"==typeof e)(e.isLocal)||e.isLocal,this.type=this.isLocal?"":e.type}getFullId(){return this._parentPath&&this.id?"".concat(this._parentPath,"-").concat(this.id):this._parentPath?this._parentPath:this.id}createChild(t){let i=new e({id:t.id,userId:JC(t.userId)?this.userId:t.userId,sdkAppId:JC(t.sdkAppId)?this.sdkAppId:t.sdkAppId,type:JC(t.type)?this.type:t.type,isLocal:JC(t.isLocal)?this.isLocal:t.isLocal,remoteUserId:JC(t.remoteUserId)?this.remoteUserId:t.remoteUserId});return i.bindParent(this),i}bindParent(e){let t=e.getFullId();this._parentPath!==t&&(this._parentPath=t,this.userId=e.userId||this.userId,this.sdkAppId=e.sdkAppId||this.sdkAppId,this.debug("bindParent: ".concat(e.id)))}setUserId(e){this.userId=e}setSdkAppId(e){this.sdkAppId=e}log(e,t){let i=this.isLocal?this.userId:this.remoteUserId,r=this.getFullId();t.unshift("[".concat(this.isLocal?"↑":"↓").concat(this.type&&"main"!==this.type?"*":"").concat(r).concat(i?"|".concat(i):"","]")),MO.log(e,t,JC(this.userId)||$C(this.userId),this.userId,this.sdkAppId)}info(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(2,t)}debug(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(1,t)}warn(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(3,t)}error(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(4,t)}},iD="undefined"==typeof navigator?"":navigator.userAgent,rD=e=>new RegExp(e,"i").test(iD),nD=e=>{if(rD(e)){let t=new RegExp("".concat(e,"\\/([\\d.]+)")),i=iD.match(t);if(i&&i[1])return i[1]}return""},aD=e=>{if(rD(e)){let t=new RegExp("".concat(e,"\\/(\\d+)")),i=iD.match(t);if(i&&i[1])return parseFloat(i[1])}return NaN},oD=/AppleWebKit\/([\d.]+)/i.exec(iD);oD&&parseFloat(oD[1]);var sD=rD("iPad"),cD="undefined"!=typeof navigator&&navigator.maxTouchPoints&&navigator.maxTouchPoints>2&&rD("Macintosh"),lD=rD("iPhone")&&!sD,dD=rD("iPod"),uD=lD||sD||dD||cD,hD=()=>{try{return uD&&navigator.maxTouchPoints>1&&navigator.vendor.includes("Apple")}catch(oA){return uD}},pD=rD("Android"),fD=function(){if(pD){let e=iD.match(/Android (\d+)(?:\.(\d+))?(?:\.(\d+))*/i);if(e){let t=e[1]&&parseFloat(e[1]),i=e[2]&&parseFloat(e[2]);if(t&&i)return parseFloat("".concat(e[1],".").concat(e[2]));if(t)return t}}return NaN}();pD&&rD("webkit");var mD=rD("Firefox"),gD=nD("Firefox"),vD=aD("Firefox"),_D=rD("Edge"),yD=nD("Edge"),ED=rD("Edg"),bD=nD("Edg"),wD=aD("Edg"),ID=rD("SogouMobileBrowser"),TD=nD("SogouMobileBrowser"),SD=rD("MetaSr\\s"),AD=nD("MetaSr\\s"),RD=rD("TBS"),kD=nD("TBS"),CD=rD("XWEB"),DD=nD("XWEB");rD("MSIE\\s8\\.0");var OD=rD("MSIE\\/\\d+");!function(){if(OD){let e=/MSIE\s(\d+)\.\d/.exec(iD),t=e&&parseFloat(e[1]);return!t&&/Trident\/7.0/i.test(iD)&&/rv:11.0/.test(iD)&&(t=11),t}}();var LD=rD("(micromessenger|webbrowser)"),ND=nD("MicroMessenger"),PD=!RD&&rD("MQQBrowser")&&rD("COVC"),xD=!RD&&rD("MQQBrowser")&&!rD("COVC"),MD=xD||PD?nD("MQQBrowser"):"",UD=!RD&&rD(" QQBrowser"),BD=nD(" QQBrowser"),FD=!RD&&rD("QQBrowserLite"),VD=nD("QQBrowserLite"),HD=!RD&&rD("MQBHD"),jD=nD("MQBHD"),zD=rD("Windows"),WD=!uD&&rD("MAC OS X"),GD=!pD&&rD("Linux"),qD=rD("CrOS");rD("MicroMessenger");var KD=rD("UCBrowser");rD("Electron");var YD=rD("MiuiBrowser"),XD=nD("MiuiBrowser"),ZD=rD("HuaweiBrowser"),JD=rD("Huawei")||rD("HUAWEI"),QD=rD("Honor")||rD("HONOR"),$D=nD("HuaweiBrowser"),eO=rD("SamsungBrowser"),tO=nD("SamsungBrowser"),iO=rD("HeyTapBrowser"),rO=nD("HeyTapBrowser"),nO=rD("VivoBrowser"),aO=nD("VivoBrowser"),oO=rD("OpenHarmony");nD("OpenHarmony");var sO=()=>aD("Chrome"),cO=rD("CriOS"),lO=rD("Chrome"),dO=!_D&&!SD&&!ID&&!RD&&!CD&&!ED&&!UD&&!YD&&!ZD&&!eO&&!iO&&!nO&&lO,uO=rD("HeadlessChrome"),hO=sO(),pO=lO&&hO>=128&&hO<=143,fO=nD("Chrome");aD("Electron");var mO=!lO&&!xD&&!PD&&!FD&&!HD&&rD("Safari"),gO=mO||uD,vO=nD("Version");/Android.*(wv|.0.0.0)/.test(iD);var _O=(()=>{if(cD)return vO;if(uD){let e=iD.match(/OS (\d+)_(\d+)/i);if(e&&e[1]){let t=e[1];return e[2]&&(t+=".".concat(e[2])),t}}return""})();function yO(e,t){let i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=e.split(".").map(e=>Number(e)),n=t.split(".").map(e=>Number(e));for(let a=0;a<Math.max(r.length,n.length);a++){let e=r[a]||0,t=n[a]||0;if(e>t)return!0;if(e<t)return!1}return i}var EO=Number(_O.split(".")[0]),bO="15.1"===_O,wO=(()=>{let e=Number(_O.split(".")[0]);return 14===e||13===e})(),IO=cO&&"11.1.1"===vO,TO="undefined"!=typeof location&&("file:"===location.protocol||"localhost"===location.hostname||"127.0.0.1"===location.hostname),SO=(()=>{let e;return()=>{if(void 0===e)try{e=!!window.localStorage}catch(t){e=!1}return e}})(),AO=function(){let e=new Map([[mD,["Firefox",gD]],[ED,["Edg",bD]],[dO,["Chrome",fO]],[cO,["ChiOS",nD("CriOS")]],[mO&&!cO,["Safari",vO]],[RD,["TBS",kD]],[CD,["XWEB",DD]],[LD&&lD,["WeChat",ND]],[UD,["QQ(Win)",BD]],[xD,["QQ(Mobile)",MD]],[PD,["QQ(Mobile X5)",MD]],[FD,["QQ(Mac)",VD]],[HD,["QQ(iPad)",jD]],[YD,["MI",XD]],[ZD,["HW",$D]],[eO,["Samsung",tO]],[iO,["OPPO",rO]],[nO,["VIVO",aO]],[_D,["EDGE",yD]],[ID,["SogouMobile",TD]],[SD,["Sogou",AD]]]),t="unknown",i="unknown";return e.has(!0)&&([t,i]=e.get(!0)),{name:t,version:i}}();function RO(){return function(){let e=/;\s*([^;)]+)\s+Build\//,t=iD.match(e);return null!=t&&t[1]?t[1].trim():null}()||""}var kO=new Map([[pD,"Android"],[uD,"iOS"],[zD,"Windows"],[WD,"MacOS"],[GD,"Linux"],[qD,"ChromeOS"]]),CO=function(){return kO.get(!0)?kO.get(!0):"unknown"};function DO(){return zD?1:pD?2:WD?3:uD?4:GD?5:qD?6:oO?7:0}var OO=()=>{let e=CO();return uD?e+="/".concat(_O):pD&&(e+="/".concat(fD)),e+="/".concat(AO.name,"/").concat(mO&&!cO?AO.version:AO.version.split(".")[0]),e},LO=new(TA(kA(),1).default),NO=NA,PO=new class{constructor(){AA(this,"enable",!1),AA(this,"ssoFailCount",0),LO.on("22",e=>{let{schedule:t}=e;var i;null!=(i=null==t?void 0:t.config)&&i.sso&&LO.emit("266",{enable:!0})}),LO.on("266",e=>{let{enable:t}=e;this.enable=t})}handleUploadFailed(){this.ssoFailCount++,this.ssoFailCount>3&&LO.emit("266",{enable:!1})}},xO=class e{constructor(){AA(this,"_isEnableUploadLog",!0),AA(this,"_localJoinedUser",new Map),AA(this,"_queue",[]),AA(this,"_timeoutId",-1),AA(this,"_logLevel",1),AA(this,"_logLevelToUpload",2),!jA&&!zA&&(this.checkURLParam(),this.installEvents())}get isAbleToUpload(){return this._isEnableUploadLog&&-1!==this._timeoutId}installEvents(){LO.on(NO.JOIN_SCHEDULE_SUCCESS,e=>{let{schedule:t}=e;var i;null!=(i=null==t?void 0:t.config)&&i.logLevelToUpload&&XA[t.config.logLevelToUpload]&&(this._logLevelToUpload=t.config.logLevelToUpload)}),LO.on(NO.JOIN_START,e=>{let{params:t}=e;this.addJoinedUser({userId:t.userId,sdkAppId:t.sdkAppId}),this.startUpload()}),LO.on(NO.LEAVE_SUCCESS,e=>{let{room:t}=e;this.deleteJoinedUser(t.userId)})}startUpload(){-1===this._timeoutId&&this.uploadInterval()}addJoinedUser(e){this._localJoinedUser.set(e.userId,e),this.startUpload()}deleteJoinedUser(e){this._localJoinedUser.delete(e)}uploadInterval(){this.upload().catch(()=>{}),this._timeoutId=window.setTimeout(()=>this.uploadInterval(),5e3)}getLogsToUpload(){let e={map:new Map,splicedQueue:[]};if(this._queue[0].forAllJoinedClients&&0===this._localJoinedUser.size)return e;let t=0;for(;t<this._queue.length&&50!==t;t++){let i=this._queue[t];if(i.forAllJoinedClients)this._localJoinedUser.forEach(t=>{let{userId:r,sdkAppId:n}=t;e.map.has(r)?e.map.get(r).logs.push(i):e.map.set(r,{userId:r,sdkAppId:n,logs:[i]})});else if(Zk(i.userId)&&Jk(i.sdkAppId)){let{userId:t,sdkAppId:r}=i;e.map.has(t)?e.map.get(t).logs.push(i):e.map.set(t,{userId:t,sdkAppId:r,logs:[i]})}}return e.map.size>0&&(e.splicedQueue=this._queue.splice(0,t)),e}async upload(){if(0===this._queue.length||!this._isEnableUploadLog)return;let{map:e,splicedQueue:t}=this.getLogsToUpload();if(0===e.size)return;try{let t=[...e.values()];for(let e=0;e<t.length;e++){let{userId:i,sdkAppId:r,logs:n}=t[e],a={timestamp:ak(),sdkAppId:String(r),userId:i,version:HA,log:n.map(e=>e.log).join("\n")},o=JSON.stringify(a),s=PO.enable?FC(a,2002,r):o;await this.uploadLogWithRetry(s,r,s instanceof Uint8Array,o),n.forEach(e=>e.uploaded=!0)}}catch(r){}let i=t.filter(e=>!e.uploaded);i.length>0&&(this._queue=i.concat(this._queue))}uploadLogWithRetry(e,t,i,r){return eD({retryFunction:()=>YC({url:Ck(t,KA),body:e,timeout:5e3,priority:"low"}).then(e=>{i&&"ok"!==e.data&&(PO.handleUploadFailed(),this.uploadLogWithRetry(r,t,!1,r))}),settings:{retries:3,timeout:2e3},onError:e=>{let{retry:t}=e;t()}})()}getPrefix(e){let t=new Date;return t.setTime(nk()),"[".concat(function(e){let t=String(e.getMilliseconds());return"padStart"in String.prototype&&(t=t.toString().padStart(3,"0")),"".concat(e.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/,"$1"),":").concat(t)}(t),"] <").concat(XA[e],">")}getLogLevel(){return this._logLevel}setLogLevel(e){Xk(XA[e])||(this._logLevel!==e&&this.info("setLogLevel",e),this._logLevel=e)}enableUploadLog(){this._isEnableUploadLog=!0}disableUploadLog(){this.warn("disableUploadLog"),this._isEnableUploadLog=!1}logChunkToString(e){if(Zk(e))return e;try{return e instanceof Error?e.toString():JSON.stringify(e)}catch(Sx){return""}}addLogToQueue(e,t){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=arguments.length>3?arguments[3]:void 0,n=arguments.length>4?arguments[4]:void 0,a={log:t.reduce((e,t)=>"".concat(e," ").concat(this.logChunkToString(t)).trim(),""),level:e,userId:r,sdkAppId:n,forAllJoinedClients:i};LO.emit(NO.LOG,{log:a}),this._isEnableUploadLog&&e>=this._logLevelToUpload&&this._queue.push(a)}log(t,i){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;var o;if(i.unshift(this.getPrefix(t)),this.addLogToQueue(t,i,r,n,a),t<this._logLevel)return;let s=(null==(o=XA[t])?void 0:o.toLowerCase())||"info";e.PRINT_LOG_TAG?console[s]("%cTRTC%c%s","padding: 1px 4px;border-radius: 3px;color: #fff;background: #1E88E5;","display: inline",...i):console[s](...i)}debug(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(1,t)}info(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(2,t)}warn(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(3,t)}error(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];this.log(4,t)}createLogger(e){if(e.parent instanceof tD){let t=e,{parent:i}=t,r=((e,t)=>{var i={};for(var r in e)gA.call(e,r)&&t.indexOf(r)<0&&(i[r]=e[r]);if(null!=e&&fA)for(var r of fA(e))t.indexOf(r)<0&&vA.call(e,r)&&(i[r]=e[r]);return i})(t,["parent"]),n=new tD(r);return n.bindParent(i),n}return new tD(e)}checkURLParam(){let e=new URLSearchParams(location.search).get("logLevelToUpload"),t=e?Number(e):-1;XA[t]&&(this._logLevelToUpload=t)}getQueue(){return this._queue}};AA(xO,"PRINT_LOG_TAG",!(uD||pD||uO));var MO=new xO,UO=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})},BO=new class{constructor(){AA(this,"_prefix","TRTC"),AA(this,"_queue",new Map)}getRealKey(e){return"".concat(this._prefix,"_").concat(e)}checkStorage(){SO()&&(setInterval(this.doFlush.bind(this),2e4),Object.keys(localStorage).filter(e=>{if(e.startsWith(this._prefix))try{let t=localStorage.getItem(e);if(!t)return!1;let i=JSON.parse(t);if(i&&i.expiresIn<Date.now())return!0}catch(t){return!1}return!1}).forEach(e=>localStorage.removeItem(e)))}doFlush(){if(SO())try{for(let[e,t]of this._queue)localStorage.setItem(e,JSON.stringify(t))}catch(e){MO.warn(e)}}getItem(e){if(!SO())return null;try{let t=localStorage.getItem(this.getRealKey(e));if(!t)return null;let i=JSON.parse(t);return i&&i.expiresIn>=Date.now()?i.value:null}catch(Sx){MO.warn(Sx)}}setItem(e,t){if(SO())try{let i={expiresIn:Date.now()+6048e5,value:t};this._queue.set(this.getRealKey(e),i)}catch(BA){MO.warn(BA)}}deleteItem(e){if(!SO())return!1;try{return e=this.getRealKey(e),this._queue.delete(e),localStorage.removeItem(e),!0}catch(Sx){return MO.warn(Sx),!1}}clear(){if(SO())try{localStorage.clear()}catch(e){MO.warn(e)}}};IA({},{HTTPS_API:()=>mL,IS_GET_CAPABILITIES_FROM_INPUTDEVICE_SUPPORTED:()=>UL,IS_GET_CAPABILITIES_SUPPORTED:()=>ML,IS_GET_SETTINGS_SUPPORTED:()=>xL,IS_GET_SYNCHRONIZATION_SOURCES_SUPPORTED:()=>PL,IS_INSERTABLE_STREAM_SUPPORTED:()=>BL,IS_JITTER_BUFFER_TARGET_SUPPORTED:()=>JL,IS_RTC_RTP_SENDER_SUPPORTED:()=>OL,IS_SCRIPT_TRANSFORM_SUPPORTED:()=>FL,IS_SEI_SUPPORTED:()=>VL,IS_SPC_SUPPORTED:()=>CL,basis:()=>qL,capabilityCheck:()=>XL,checkSystemRequirementsInternal:()=>cL,decodeSupportStatus:()=>sL,detectH264SupportedByFakeStreaming:()=>pL,detectVideoCodecCapabilities:()=>eN,detectVideoDecoderCapabilities:()=>iN,detectVideoEncoderCapabilities:()=>tN,encodeSupportStatus:()=>oL,getBrowserInfo:()=>QO,getDisplayResolution:()=>vL,getH264ProfileLevelIds:()=>rN,isAddTransceiverSupported:()=>kL,isBrowserSupported:()=>$O,isCanvasCaptureStreamAPISupported:()=>EL,isCanvasSmallStreamSupported:()=>bL,isGetReceiversSupported:()=>SL,isGetSendersSupported:()=>AL,isGetTransceiversSupported:()=>RL,isGetUserMediaSupported:()=>_L,isMediaDevicesSupported:()=>tL,isMediaSessionSupported:()=>zL,isMediaStreamTrackGeneratorSupported:()=>aL,isMediaStreamTrackProcessorSupported:()=>nL,isReplaceTrackSupported:()=>LL,isRequestVideoFrameCallbackSupported:()=>ZL,isSIMDSupported:()=>GL,isScaleResolutionDownBySupported:()=>wL,isScreenCaptureApiAvailable:()=>dL,isSelectedCandidatePair:()=>gL,isSetParametersSupported:()=>NL,isSetSinkIdSupported:()=>uL,isSmallStreamSupported:()=>IL,isStopTransceiverSupported:()=>DL,isTRTCSupported:()=>lL,isUnifiedPlanDefault:()=>TL,isUsedInHttpProtocol:()=>rL,isWebAudioSupported:()=>yL,isWebCodecSupported:()=>jL,isWebCodecsSupported:()=>eL,isWebRTCSupported:()=>HL,isWebTransportSupported:()=>WL});var FO={AVOID_REPEATED_CALL:"AVOID_REPEATED_CALL",INVALID_PARAMETER_REQUIRED:"INVALID_PARAMETER_REQUIRED",INVALID_PARAMETER_TYPE:"INVALID_PARAMETER_TYPE",INVALID_PARAMETER_EMPTY:"INVALID_PARAMETER_EMPTY",INVALID_PARAMETER_INSTANCE:"INVALID_PARAMETER_INSTANCE",INVALID_PARAMETER_RANGE:"INVALID_PARAMETER_RANGE",INVALID_PARAMETER_MIN:"INVALID_PARAMETER_MIN",INVALID_PARAMETER_MAX:"INVALID_PARAMETER_MAX",INVALID_PARAMETER_STREAMTYPE:"INVALID_PARAMETER_STREAMTYPE",API_CALL_TIMEOUT:"API_CALL_TIMEOUT",SIGNAL_CHANNEL_RECONNECTION_FAILED:"SIGNAL_CHANNEL_RECONNECTION_FAILED",SIGNAL_CHANNEL_SETUP_FAILED:"SIGNAL_CHANNEL_SETUP_FAILED",ERROR_MESSAGE:"ERROR_MESSAGE",EXCHANGE_SDP_TIMEOUT:"EXCHANGE_SDP_TIMEOUT",DOWNLINK_RECONNECTION_FAILED:"DOWNLINK_RECONNECTION_FAILED",EXCHANGE_SDP_FAILED:"EXCHANGE_SDP_FAILED",UPDATE_OFFER_TIMEOUT:"UPDATE_OFFER_TIMEOUT",UPLINK_RECONNECTION_FAILED:"UPLINK_RECONNECTION_FAILED",INVALID_RECORDID:"INVALID_RECORDID",INVALID_PURE_AUDIO:"INVALID_PURE_AUDIO",INVALID_STREAMID:"INVALID_STREAMID",INVALID_USER_DEFINE_RECORDID:"INVALID_USER_DEFINE_RECORDID",INVALID_USER_DEFINE_PUSH_ARGS:"INVALID_USER_DEFINE_PUSH_ARGS",INVALID_PROXY:"INVALID_PROXY",INVALID_JOIN:"INVALID_JOIN",INVALID_ROOMID_STRING:"INVALID_ROOMID_STRING",INVALID_ROOMID_INTEGER:"INVALID_ROOMID_INTEGER",INVALID_SIGNAL_CHANNEL:"INVALID_SIGNAL_CHANNEL",JOIN_ROOM_TIMEOUT:"JOIN_ROOM_TIMEOUT",JOIN_ROOM_FAILED:"JOIN_ROOM_FAILED",REJOIN_ROOM_FAILED:"REJOIN_ROOM_FAILED",INVALID_DESTROY:"INVALID_DESTROY",INVALID_PUBLISH:"INVALID_PUBLISH",INVALID_UNPUBLISH:"INVALID_UNPUBLISH",INVALID_AUDIENCE:"INVALID_AUDIENCE",INVALID_INITIALIZE:"INVALID_INITIALIZE",INVALID_DUPLICATE_PUBLISHING:"INVALID_DUPLICATE_PUBLISHING",INVALID_SUBSCRIBE_UNDEFINED:"INVALID_SUBSCRIBE_UNDEFINED",INVALID_SUBSCRIBE_LOCAL:"INVALID_SUBSCRIBE_LOCAL",INVALID_REMOTE_STREAM:"INVALID_REMOTE_STREAM",SUBSCRIBE_FAILED:"SUBSCRIBE_FAILED",INVALID_ROLE:"INVALID_ROLE",INVALID_PARAMETER_SWITCH_ROLE:"INVALID_PARAMETER_SWITCH_ROLE",INVALID_OPERATION_SWITCH_ROLE:"INVALID_OPERATION_SWITCH_ROLE",SWITCH_ROLE_TIMEOUT:"SWITCH_ROLE_TIMEOUT",SWITCH_ROLE_FAILED:"SWITCH_ROLE_FAILED",CLIENT_BANNED:"CLIENT_BANNED",INVALID_OPERATION_START_PUBLISH_CDN:"INVALID_OPERATION_START_PUBLISH_CDN",INVALID_OPERATION_STOP_PUBLISH_CDN:"INVALID_OPERATION_STOP_PUBLISH_CDN",INVALID_STREAM_ID:"INVALID_STREAM_ID",START_PUBLISH_CDN_FAILED:"START_PUBLISH_CDN_FAILED",STOP_PUBLISH_CDN_FAILED:"STOP_PUBLISH_CDN_FAILED",START_MIX_TRANSCODE:"START_MIX_TRANSCODE",STOP_MIX_TRANSCODE:"STOP_MIX_TRANSCODE",INVALID_AUDIO_VOLUME:"INVALID_AUDIO_VOLUME",ENABLE_SMALL_STREAM_PUBLISHED:"ENABLE_SMALL_STREAM_PUBLISHED",DISABLE_SMALL_STREAM_PUBLISHED:"DISABLE_SMALL_STREAM_PUBLISHED",NOT_SUPPORTED_SMALL_STREAM:"NOT_SUPPORTED_SMALL_STREAM",INVALID_SMALL_STREAM_PROFILE:"INVALID_SMALL_STREAM_PROFILE",INVALID_PARAMETER_REMOTE_STREAM:"INVALID_PARAMETER_REMOTE_STREAM",INVALID_OPERATION_CHANGE_SMALL:"INVALID_OPERATION_CHANGE_SMALL",REMOTE_NOT_PUBLISH_SMALL_STREAM:"REMOTE_NOT_PUBLISH_SMALL_STREAM",INVALID_SWITCH_DEVICE:"INVALID_SWITCH_DEVICE",INVALID_SWITCH_DEVICE_PUBLISHING:"INVALID_SWITCH_DEVICE_PUBLISHING",INVALID_REPLACE_TRACK:"INVALID_REPLACE_TRACK",INVALID_INITIALIZE_LOCAL_STREAM:"INVALID_INITIALIZE_LOCAL_STREAM",INVALID_ADD_TRACK_REPETITIVE:"INVALID_ADD_TRACK_REPETITIVE",INVALID_ADD_TRACK_REMOVING:"INVALID_ADD_TRACK_REMOVING",INVALID_ADD_TRACK_PUBLISHING:"INVALID_ADD_TRACK_PUBLISHING",INVALID_STREAM_INITIALIZED:"INVALID_STREAM_INITIALIZED",INVALID_ADD_TRACK_NUMBER:"INVALID_ADD_TRACK_NUMBER",INVALID_REMOVE_AUDIO_TRACK:"INVALID_REMOVE_AUDIO_TRACK",INVALID_REMOVE_AUDIO_ADDING:"INVALID_REMOVE_AUDIO_ADDING",INVALID_REMOVE_AUDIO_ON:"INVALID_REMOVE_AUDIO_ON",INVALID_REMOVE_TRACK_PUBLISHING:"INVALID_REMOVE_TRACK_PUBLISHING",INVALID_REMOVE_TRACK_NOT_TRACK:"INVALID_REMOVE_TRACK_NOT_TRACK",INVALID_REMOVE_TRACK_NUMBER:"INVALID_REMOVE_TRACK_NUMBER",INVALID_REPLACE_TRACK_NO_TRACK:"INVALID_REPLACE_TRACK_NO_TRACK",REPEAT_JOIN:"REPEAT_JOIN",CLIENT_DESTROYED:"CLIENT_DESTROYED",NOT_BUG_PACKAGE:"NOT_BUG_PACKAGE",START_MIX_TRANSCODE_FAILED:"START_MIX_TRANSCODE_FAILED",STOP_MIX_TRANSCODE_FAILED:"STOP_MIX_TRANSCODE_FAILED",MIX_TRANSCODE_NOT_STARTED:"MIX_TRANSCODE_NOT_STARTED",CANNOT_LESS_THAN_ZERO:"CANNOT_LESS_THAN_ZERO",MIX_PARAMS_VIDEO_FRAMERATE:"MIX_PARAMS_VIDEO_FRAMERATE",MIX_PARAMS_VIDEO_GOP:"MIX_PARAMS_VIDEO_GOP",MIX_PARAMS_AUDIO_BITRATE:"MIX_PARAMS_AUDIO_BITRATE",MIX_PARAMS_USER_Z_ORDER:"MIX_PARAMS_USER_Z_ORDER",MIX_PARAMS_NOT_SELF:"MIX_PARAMS_NOT_SELF",MIX_PARAMS_USER_STREAM:"MIX_PARAMS_USER_STREAM",INVALID_PLAY:"INVALID_PLAY",INVALID_ELEMENT_ID:"INVALID_ELEMENT_ID",INVALID_ELEMENT_ID_TYPE:"INVALID_ELEMENT_ID_TYPE",PLAY_FAILED:"PLAY_FAILED",INVALID_USERID:"INVALID_USERID",INVALID_CREATE_STREAM_SOURCE:"INVALID_CREATE_STREAM_SOURCE",INVALID_CREATE_STREAM_SCREEN:"INVALID_CREATE_STREAM_SCREEN",INVALID_CREATE_STREAM_AUDIO:"INVALID_CREATE_STREAM_AUDIO",INVALID_CREATE_STREAM_SCREEN_AUDIO:"INVALID_CREATE_STREAM_SCREEN_AUDIO",NOT_SUPPORTED_HTTP:"NOT_SUPPORTED_HTTP",NOT_SUPPORTED_WEBRTC:"NOT_SUPPORTED_WEBRTC",NOT_SUPPORTED_PROFILE:"NOT_SUPPORTED_PROFILE",NOT_SUPPORTED_MEDIA:"NOT_SUPPORTED_MEDIA",NOT_SUPPORTED_H264ENCODE:"NOT_SUPPORTED_H264ENCODE",NOT_SUPPORTED_H264DECODE:"NOT_SUPPORTED_H264DECODE",NOT_SUPPORTED_TRACK:"NOT_SUPPORTED_TRACK",NOT_SUPPORTED_SWITCH_DEVICE:"NOT_SUPPORTED_SWITCH_DEVICE",NOT_SUPPORTED_CAPTURE:"NOT_SUPPORTED_CAPTURE",NOT_SUPPORTED_AUX:"NOT_SUPPORTED_AUX",MICROPHONE_NOT_FOUND:"MICROPHONE_NOT_FOUND",CAMERA_NOT_FOUND:"CAMERA_NOT_FOUND",SIGNAL_RESPONSE_FAILED:"SIGNAL_RESPONSE_FAILED",CATCH_HANDLER_ERROR:"CATCH_HANDLER_ERROR",API_NOT_EXIST:"API_NOT_EXIST",CONNECTION_CLOSED:"CONNECTION_CLOSED",SUBSCRIBE_ALL_FALSE:"SUBSCRIBE_ALL_FALSE",SEI_NOT_SUPPORT:"SEI_NOT_SUPPORT",SEI_DISABLED:"SEI_DISABLED",SEI_BEFORE_PUBLISH:"SEI_BEFORE_PUBLISH",SEI_NOT_VIDEO:"SEI_NOT_VIDEO",CALL_FREQUENCY_LIMIT:"CALL_FREQUENCY_LIMIT",CONNECTION_ABORTED:"CONNECTION_ABORTED",API_CALL_ABORTED:"API_CALL_ABORTED",DUPLICATE_AUX:"DUPLICATE_AUX",SWITCH_PLAYBACK_QUALITY_TIMEOUT:"SWITCH_PLAYBACK_QUALITY_TIMEOUT"},VO={AVOID_REPEATED_CALL:e=>"previous ".concat(e.name,"() is ongoing, please avoid repeated calls."),INVALID_PARAMETER_REQUIRED(e){let{key:t,rule:i,fnName:r,value:n}=e;return"'".concat(t||i.name,"' is a required param when calling ").concat(r,"(), received: ").concat(n,".")},INVALID_PARAMETER_TYPE(e){let{key:t,rule:i,fnName:r,value:n}=e,a="".concat(t||i.name),o="";return o=Array.isArray(i.type)?i.type.join("|"):i.type,"'".concat(a,"' must be type of ").concat(o," when calling ").concat(r,"(), received type: ").concat(Kk(n),".")},INVALID_PARAMETER_EMPTY(e){let{key:t,rule:i,fnName:r,value:n}=e;return"'".concat(t||i.name,"' cannot be '").concat(n,"' when calling ").concat(r,"().")},INVALID_PARAMETER_INSTANCE(e){let{key:t,rule:i,fnName:r,value:n}=e,a="".concat(t||i.name),o="".concat(i.instanceOf.name||i.instanceOf);return"'".concat(a,"' must be instanceof ").concat(o," when calling ").concat(r,"(), received type: ").concat(Kk(n),".")},INVALID_PARAMETER_RANGE(e){let{key:t,rule:i,fnName:r,value:n}=e;return"'".concat(t||i.name,"' must be one of ").concat(i.values.join("|")," when calling ").concat(r,"(), received: ").concat(n,".")},INVALID_PARAMETER_MIN(e){let{key:t,rule:i,fnName:r,value:n}=e;return"the min value of ".concat(t||i.name," is ").concat(i.min,", received: ").concat(n,".")},INVALID_PARAMETER_MAX(e){let{key:t,rule:i,fnName:r,value:n}=e;return"the max value of ".concat(t||i.name," is ").concat(i.max,", received: ").concat(n,".")},API_CALL_TIMEOUT:e=>"".concat(e.commandDesc||e.command," timeout observed."),SIGNAL_CHANNEL_RECONNECTION_FAILED:"signal channel reconnection failed, please check your network.",SIGNAL_CHANNEL_SETUP_FAILED:e=>"SignalChannel setup failure: (errorCode: ".concat(e.errorCode,", errorMsg: ").concat(e.errorMsg," })."),ERROR_MESSAGE(e){let t="".concat(e.type," failed");return e.message&&(t="".concat(t,": ").concat(e.message,".")),t},EXCHANGE_SDP_TIMEOUT:"exchange sdp timeout.",DOWNLINK_RECONNECTION_FAILED:"downlink reconnection failed, please check your network and re-join room.",EXCHANGE_SDP_FAILED:e=>"exchange sdp failed ".concat(e.errMsg,"."),UPDATE_OFFER_TIMEOUT:"update offer timeout observed.",UPLINK_RECONNECTION_FAILED:"uplink reconnection failed, please check your network and publish again.",INVALID_RECORDID:"recordId must be an integer number.",INVALID_PURE_AUDIO:"pureAudioPushMode must be 1 or 2.",INVALID_STREAMID:"streamId must be a sting literal within 64 bytes, and not be empty.",INVALID_USER_DEFINE_RECORDID:"userDefineRecordId must be a sting literal contains (a-zA-Z),(0-9), underline and hyphen, within 64 bytes, and not be empty.",INVALID_USER_DEFINE_PUSH_ARGS:"userDefinePushArgs must be a sting literal within 256 bytes, and not be empty.",INVALID_PROXY:'proxy server url must start with "wss://".',INVALID_JOIN:"duplicate join() called.",INVALID_ROOMID_STRING:e=>"'".concat(e,"' must be validate string when useStringRoomId is true."),INVALID_ROOMID_INTEGER:e=>"'".concat(e,"' must be an integer between [1, 4294967294] when useStringRoomId is false."),INVALID_SIGNAL_CHANNEL:"SignalChannel is not ready yet.",JOIN_ROOM_TIMEOUT:"join room timeout.",JOIN_ROOM_FAILED(e){let{error:t,code:i}=e;return"Failed to join room - ".concat(t," code: ").concat(i)},REJOIN_ROOM_FAILED:e=>"reJoin room: ".concat(e.roomId," failed, please check your network."),INVALID_DESTROY:"please call leave() before destroy().",INVALID_PUBLISH:"please call join() before publish().",INVALID_UNPUBLISH:"stream has not been published yet.",INVALID_AUDIENCE:'no permission to publish() under live/audience, please call switchRole("anchor") firstly before publish().',INVALID_INITIALIZE:"cannot publish stream because stream is not initialized, is switching device, or has been closed.",INVALID_DUPLICATE_PUBLISHING:e=>"duplicate ".concat(e," stream publishing, please unpublish your prev ").concat(e," stream and then re-publish."),INVALID_SUBSCRIBE_UNDEFINED:"stream is undefined or null.",INVALID_SUBSCRIBE_LOCAL:"stream cannot be LocalStream.",INVALID_REMOTE_STREAM:"remoteStream does not exist because it has been unpublished by remote peer.",SUBSCRIBE_FAILED(e){let{message:t,userId:i,streamType:r}=e;return"failed to subscribe ".concat(i," ").concat(r," stream, reason: ").concat(t,".")},INVALID_ROLE:"switchRole can only be called in live mode.",INVALID_PARAMETER_SWITCH_ROLE:"role could only be set to a value as anchor or audience.",INVALID_OPERATION_SWITCH_ROLE:"please call join() before switchRole().",SWITCH_ROLE_TIMEOUT:"switchRole timeout.",SWITCH_ROLE_FAILED:e=>"switchRole failed, errCode: ".concat(e.code," errMsg: ").concat(e.message,"."),CLIENT_BANNED:e=>"client was banned because of ".concat(e.message,"."),INVALID_OPERATION_START_PUBLISH_CDN:"please call startPublishCDNStream() after join room and publish the local stream.",INVALID_OPERATION_STOP_PUBLISH_CDN:"please call startPublishCDNStream() before stopPublishCDNStream().",START_PUBLISH_CDN_FAILED:e=>"startPublishCDNStream failed, errMsg: ".concat(e.message,"."),STOP_PUBLISH_CDN_FAILED:e=>"stopPublishCDNStream failed, errMsg: ".concat(e.message,"."),INVALID_STREAM_ID:e=>"'".concat(e,"' can only consist of uppercase and lowercase english letters (a-zA-Z), numbers (0-9), hyphens and underscores."),START_MIX_TRANSCODE:"please call startMixTranscode() after join().",STOP_MIX_TRANSCODE:"please call stopMixTranscode() after startMixTranscode().",INVALID_AUDIO_VOLUME:"interval must be a number.",ENABLE_SMALL_STREAM_PUBLISHED:"Cannot enable small stream after localStream published.",DISABLE_SMALL_STREAM_PUBLISHED:"Cannot disable small stream after localStream published.",NOT_SUPPORTED_SMALL_STREAM:"your browser does not support opening small stream.",INVALID_SMALL_STREAM_PROFILE:"small stream profile is invalid.",INVALID_PARAMETER_REMOTE_STREAM:"remoteStream is invalid.",INVALID_OPERATION_CHANGE_SMALL:"cannot switch to the small stream without subscribing to the video of remoteStream.",REMOTE_NOT_PUBLISH_SMALL_STREAM:"remote peer does not publish small stream.",INVALID_SWITCH_DEVICE:"cannot switch device on current stream.",INVALID_SWITCH_DEVICE_PUBLISHING:"cannot switch device when publishing localStream.",INVALID_REPLACE_TRACK:"cannot replace track when publishing localStream.",INVALID_INITIALIZE_LOCAL_STREAM:"local stream has not initialized yet.",INVALID_ADD_TRACK_REPETITIVE:"previous addTrack is ongoing, please avoid repetitive execution.",INVALID_ADD_TRACK_REMOVING:"cannot add track when a track is removing.",INVALID_ADD_TRACK_PUBLISHING:"cannot add track when publishing localStream.",INVALID_STREAM_INITIALIZED:"your local stream haven't been initialized yet.",INVALID_ADD_TRACK_NUMBER:"a Stream has at most one audio track and one video track.",INVALID_REMOVE_AUDIO_TRACK:"remove audio track is not supported on your browser.",INVALID_REMOVE_AUDIO_ADDING:"cannot remove track when a track is adding.",INVALID_REMOVE_AUDIO_ON:"previous removeTrack is ongoing, please avoid repetitive execution.",INVALID_REMOVE_TRACK_PUBLISHING:"cannot remove track when publishing localStream.",INVALID_REMOVE_TRACK_NOT_TRACK:"localStream has not this track.",INVALID_REMOVE_TRACK_NUMBER:"remove the only video track is not supported, please use replaceTrack or muteVideo.",INVALID_REPLACE_TRACK_NO_TRACK:e=>"cannot replace ".concat(e.kind," track because stream has not ").concat(e.kind," track"),NOT_BUG_PACKAGE:"You need to buy packages, refer to tencent console.",START_MIX_TRANSCODE_FAILED:e=>"startMixTranscode failed, errMsg: ".concat(e.message,"."),STOP_MIX_TRANSCODE_FAILED:e=>"stopMixTranscode failed, errMsg: ".concat(e.message,"."),MIX_TRANSCODE_NOT_STARTED:"mixTranscode has not been started.",CANNOT_LESS_THAN_ZERO(e){let{key:t,rule:i,fnName:r,value:n}=e;return"'".concat(t||i.name,"' cannot be less than 0 when calling ").concat(r,"().")},MIX_PARAMS_VIDEO_FRAMERATE:"'config.videoFramerate' should be an integer between 0 and 30, excluding 0.",MIX_PARAMS_VIDEO_GOP:"'config.videoGOP' should be an integer between 1 and 8.",MIX_PARAMS_AUDIO_BITRATE:"'config.audioBitrate' should be an integer between 32 and 192.",MIX_PARAMS_USER_Z_ORDER:e=>"'".concat(e,"' is required and must be between 1 and 15."),MIX_PARAMS_NOT_SELF:"'config.mixUsers' must contain self.",MIX_PARAMS_USER_STREAM:"'config.videoWidth' and 'config.videoHeight' of output stream should be contain all mix stream.",INVALID_PLAY:"duplicate play() call observed, please stop() firstly.",INVALID_ELEMENT_ID:e=>{let{key:t,fnName:i}=e;return"'".concat(t,"' is not found in the document object when calling ").concat(i,"().")},INVALID_ELEMENT_ID_TYPE:e=>{let{key:t,fnName:i,type:r}=e;return"the element corresponding to '".concat(t,"' must be instanceof HTMLElement when calling ").concat(i,"(), received: ").concat(r,".")},PLAY_FAILED:e=>"".concat(e.media," play failed, browser exception: ").concat(e.error.toString()),INVALID_USERID:"userId cannot be all spaces.",INVALID_CREATE_STREAM_SOURCE:"LocalStream must be created by createStream() with either audio/video or audioSource/videoSource, but can not be mixed with audio/video and audioSource/videoSource.",INVALID_CREATE_STREAM_SCREEN:"screen/video cannot be both true.",INVALID_CREATE_STREAM_AUDIO:"audio/screenAudio cannot be both true.",INVALID_CREATE_STREAM_SCREEN_AUDIO:"when screen is true, screenAudio can be configured.",NOT_SUPPORTED_HTTP:"http protocol does not support the ability to capture microphone, camera and screen. please use https to deploy your page.",NOT_SUPPORTED_WEBRTC:"your browser or environment does not support full WebRTC capabilities.",NOT_SUPPORTED_PROFILE:"your browser does not support setVideoProfile.",NOT_SUPPORTED_MEDIA:"your browser or environment does not support navigator.mediaDevices.",NOT_SUPPORTED_H264ENCODE:"your device does not support H.264 encoding.",NOT_SUPPORTED_H264DECODE:"your device does not support H.264 decoding.",NOT_SUPPORTED_TRACK:e=>"".concat(e,"Track is not supported on your browser."),NOT_SUPPORTED_SWITCH_DEVICE:"switchDevice is not supported on your browser.",NOT_SUPPORTED_CAPTURE:"Your browser or environment does not support screen sharing, please check whether the browser version.",MICROPHONE_NOT_FOUND:"no microphone detected, please check your microphone.",CAMERA_NOT_FOUND:"no camera detected, please check your camera.",SIGNAL_RESPONSE_FAILED:e=>"".concat(e.signalResponse," failed, response code is ").concat(e.code," , errMsg: ").concat(e.message,"."),CATCH_HANDLER_ERROR(e){let{name:t,event:i}=e;return"an error was caught in ".concat(t,".on('").concat(i,"', handler), please check your code in 'handler'.")},API_NOT_EXIST(e){let{name:t}=e;return"experimental api ".concat(t," does not exist.")},REPEAT_JOIN:e=>"please avoid repeated join.",CONNECTION_CLOSED:"remoteStream has been unsubscribed or unpublished by remote user.",SUBSCRIBE_ALL_FALSE:"cannot subscribe when both audio & video are false, use client.unsubscribe() instead",CLIENT_DESTROYED(e){let{funName:t}=e;return"failed to call ".concat(t,"() because client was destroyed.")},SEI_NOT_SUPPORT:e=>"not support to sendSEIMessage".concat(!1===e?" without using h264 codec":""),SEI_DISABLED:"SEI is disabled",SEI_BEFORE_PUBLISH:"please call sendSEIMessage() after publish() success",SEI_NOT_VIDEO:"cannot send sei when localStream has not video.",CALL_FREQUENCY_LIMIT:e=>{let{isSize:t,name:i,timesInSecond:r,maxSizeInSecond:n}=e;return"api ".concat(i," call ").concat(t?"size":"times"," is over ").concat(t?"".concat(n," bytes"):r," in a second.")},CONNECTION_ABORTED:e=>"connection aborted due to: ".concat(e),API_CALL_ABORTED(e){let t;return t=e.message.includes("REMOTE_STREAM_NOT_EXIST")?"Subscribe ".concat(e.userId," ").concat(e.streamType," stream aborted, reason: remote user ").concat(e.userId," unpublished stream."):"API aborted, reason: ".concat(e.message),t},DUPLICATE_AUX:"only one auxiliary stream can be published in a room.",NOT_SUPPORTED_AUX:"publish auxiliary stream is not supported on your browser.",INVALID_PARAMETER_STREAMTYPE:e=>"'streamType' is required when 'userId' is not '*', calling ".concat(e,"()"),SWITCH_PLAYBACK_QUALITY_TIMEOUT:e=>"switchPlaybackQuality timeout: waiting for first frame of user ".concat(e.userId,".")},HO=(e,t)=>t?"".concat(WA,"/").concat(e,"/").concat(t):"".concat(WA,"/").concat(e,"/index.html"),jO=()=>{if(window.TRTC_ERROR_INFO&&window.TRTC_ERROR_LINK)return{TRTC_ERROR_INFO:window.TRTC_ERROR_INFO,TRTC_ERROR_LINK:window.TRTC_ERROR_LINK};let e=null==localStorage?void 0:localStorage.getItem("trtc_error_assistance");if(e){e=JSON.parse(e);let t=document.createElement("script");t.type="text/javascript",t.text=e.message,document.body.appendChild(t);let i=window.TRTC_ERROR_INFO,r=window.TRTC_ERROR_LINK;return document.body.removeChild(t),{TRTC_ERROR_INFO:i,TRTC_ERROR_LINK:r}}return{}};function zO(e){let{key:t,data:i,link:r,addDocLink:n=!0}=e,a="",o="",s="";Yk(VO[t])?a=VO[t](i):Zk(VO[t])&&(a=VO[t]);let{TRTC_ERROR_INFO:c,TRTC_ERROR_LINK:l}=jO();r?s="".concat(r.className,".html#").concat(r.fnName):l&&l[t]&&(Yk(l[t])?s=l[t](i):Zk(l[t])&&(s=l[t]));let d=a;return zk()&&(c&&c[t]&&(Yk(c[t])?o=c[t](i):Zk(c[t])&&(o=c[t])),o&&(d=n?"".concat(o,"\n请查看文档: ").concat(HO("zh-cn",s),"\n\n"):"".concat(o,"\n\n"),d+=a)),n&&(d+=" \nRefer to: ".concat(HO("en",s),"\n")),d}var WO,GO=TA(LA(),1),qO=class{constructor(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];AA(this,"countMap",new Map),AA(this,"distributionMap",new Map),AA(this,"version"),AA(this,"log",MO.createLogger({id:"kv"})),e&&(LO.on("102",e=>{let{track:t,cost:i}=e;this.addSuccessEvent({key:t.kind===$A?501700:511700,cost:i})}),LO.on("103",e=>{let{track:t,error:i}=e;this.addFailedEvent({key:t.kind===$A?501700:511700,error:i})}),LO.on("266",e=>{let{enable:t}=e;this.log.info("".concat(t?"enable":"disable"," sso")),t?this.addSuccessEvent({key:525701}):this.addFailedEvent({key:525701})}))}getReportData(e,t){let i={msg_sdk_basic_info:{uint32_sdk_version:kC(this.version||HA),uint32_terminal_type:15,bytes_device_name:"",bytes_os_version:"",uint32_framework:30,uint32_network_type:0},stats_count:[...this.countMap.entries()].map(e=>{let[t,i]=e;return{uint32_key:t,uint32_count:i}}),stats_distribution:[...this.distributionMap.entries()].map(e=>{let[t,i]=e;return{uint32_key:t,distribution_items:[...i.entries()].map(e=>{let[t,i]=e;return{uint32_item_key:t,uint32_item_value:i}})}}),str_user_sig:e,bytes_report_token:t};return this.countMap.clear(),this.distributionMap.clear(),i}clear(){this.countMap.clear(),this.distributionMap.clear()}isEnumKey(e){let t=+String(e).slice(-3);return t>=700&&t<799}isErrorCodeKey(e){let t=+String(e).slice(-3);return t>=600&&t<699}isCountKey(e){let t=+String(e).slice(-3);return t>=0&&t<599}isNumberKey(e){let t=+String(e).slice(-3);return t>=800&&t<899}addCount(e){let{key:t,useUV:i=!1}=e;this.isCountKey(t)?i&&this.countMap.has(t)||this.countMap.set(t,(this.countMap.get(t)||0)+1):this.log.debug("".concat(t," is not count key, last 3 number should be 0~599"))}addEnum(e){let{key:t,value:i,useUV:r=!0}=e;var n;if(!this.isEnumKey(t))return this.log.debug("".concat(t," is not enum key, last 3 number should be 700~799"));if(r&&this.countMap.has(t))return;this.countMap.set(t,(this.countMap.get(t)||0)+1);let a=(null==(n=this.distributionMap)?void 0:n.get(t))||new Map;a.set(i,(a.get(i)||0)+1),this.distributionMap.set(t,a)}addNumber(e){let{key:t,value:i,split:r=100,useUV:n=!1,max:a=5e3}=e;var o;if(!this.isNumberKey(t))return this.log.debug("".concat(t," is not number key, last 3 number should be 800~899"));if(n&&this.countMap.has(t))return;i>a&&(i=a),this.countMap.set(t,(this.countMap.get(t)||0)+1);let s=(null==(o=this.distributionMap)?void 0:o.get(t))||new Map,c=0;if(Jk(r))c=Math.floor(i/r);else for(let l=r.length-1;l>0;l--)if(i>r[l]){c=l;break}s.set(c,(s.get(c)||0)+1),this.distributionMap.set(t,s)}addSuccessEvent(e){let{key:t,cost:i,timeKey:r,split:n}=e;if(t&&(this.addEnum({key:t,value:1,useUV:!1}),i)){let e=+String(t).slice(-3);e<800&&e>=700?this.addNumber({key:r||t+100,value:i,split:n}):r||this.log.debug("time stat ignored, ".concat(t))}}addFailedEvent(e){let{key:t,error:i}=e;if(!t)return;let r=tk.UNKNOWN;i&&(Jk(i)?r=i:(!Xk(i.extraCode)||!Xk(i.code))&&(r=i.extraCode||i.code)),this.addEnum({key:t,value:0,useUV:!1}),this.addEnum({key:t,value:Math.abs(r),useUV:!1})}},KO=((WO=KO||{})[WO.DECODER_TYPE=514700]="DECODER_TYPE",WO[WO.DECODER_HW_SW=514701]="DECODER_HW_SW",WO[WO.DECODE_RESULT=514702]="DECODE_RESULT",WO[WO.DECODE_FAILED_OS=514703]="DECODE_FAILED_OS",WO[WO.DOWNGRADE_RESULT=514704]="DOWNGRADE_RESULT",WO[WO.DOWNGRADE_WEBCODECS_VIDEO=514705]="DOWNGRADE_WEBCODECS_VIDEO",WO[WO.DOWNGRADE_WEBCODECS_2D=514706]="DOWNGRADE_WEBCODECS_2D",WO[WO.DOWNGRADE_WASM_WEGBL=514707]="DOWNGRADE_WASM_WEGBL",WO[WO.DOWNGRADE_WASM_VIDEO=514708]="DOWNGRADE_WASM_VIDEO",WO[WO.DOWNGRADE_WASM_2D=514709]="DOWNGRADE_WASM_2D",WO[WO.DECODE_H264_RESULT=514710]="DECODE_H264_RESULT",WO[WO.DECODE_H265_RESULT=514711]="DECODE_H265_RESULT",WO[WO.DECODE_VP8_RESULT=514712]="DECODE_VP8_RESULT",WO[WO.DECODE_CAPABILITIES=514713]="DECODE_CAPABILITIES",WO[WO.H264_PROFILE_LEVEL_ID_HIGH=514714]="H264_PROFILE_LEVEL_ID_HIGH",WO[WO.H264_PROFILE_LEVEL_ID_MAIN=514715]="H264_PROFILE_LEVEL_ID_MAIN",WO[WO.RENDER_FREEZE_RATE=514850]="RENDER_FREEZE_RATE",WO[WO.DATA_FREEZE_RATE=514851]="DATA_FREEZE_RATE",WO[WO.VIDEO_CONSUME_RENDER_RATE=514852]="VIDEO_CONSUME_RENDER_RATE",WO),YO=new qO(!0);new qO(!1);var XO=YO,ZO={result:!1,detail:{isBrowserSupported:!1,isWebRTCSupported:!1,isWebCodecsSupported:!1,isMediaDevicesSupported:!1,isScreenShareSupported:!1,isSmallStreamSupported:!1,isH264EncodeSupported:!1,isVp8EncodeSupported:!1,isH265EncodeSupported:!1,isH264DecodeSupported:!1,isVp8DecodeSupported:!1,isH265DecodeSupported:!1}},JO=new Map([[mD,["Firefox",gD]],[ED,["Edg",bD]],[dO,["Chrome",fO]],[mO,["Safari",vO]],[RD,["TBS",kD]],[CD,["XWEB",DD]],[LD&&lD,["WeChat",ND]],[UD,["QQ(Win)",BD]],[xD,["QQ(Mobile)",MD]],[PD,["QQ(Mobile X5)",MD]],[FD,["QQ(Mac)",VD]],[HD,["QQ(iPad)",jD]],[YD,["MI",XD]],[ZD,["HW",$D]],[eO,["Samsung",tO]],[iO,["OPPO",rO]],[nO,["VIVO",aO]],[_D,["EDGE",yD]],[ID,["SogouMobile",TD]],[SD,["Sogou",AD]]]);function QO(){let e=JO.get(!0);return{browserName:e?e[0]:"unknown",browserVersion:e?e[1]:"unknown"}}var $O=function(){return!(KD||_D||ED&&wD<80||mD&&vD<56)},eL=function(){return["VideoDecoder","VideoEncoder","AudioEncoder","AudioDecoder"].every(e=>e in window)},tL=function(){if(!navigator.mediaDevices)return rL()||MO.error(VO.NOT_SUPPORTED_MEDIA),!1;let e=["getUserMedia","enumerateDevices"];return e.filter(e=>e in navigator.mediaDevices).length===e.length},iL=!1;function rL(){return"http:"===location.protocol&&!TO&&(iL||MO.error(zO({key:FO.NOT_SUPPORTED_HTTP})),iL=!0,!0)}var nL=function(){return(null==window?void 0:window.OffscreenCanvas)&&(null==window?void 0:window.MediaStreamTrackProcessor)&&(null==window?void 0:window.MediaStreamTrackGenerator)},aL=function(){return!(null==window||!window.MediaStreamTrackGenerator)},oL=async function(){var e,t,i;if(ZO.detail.isH264EncodeSupported&&ZO.detail.isVp8EncodeSupported)return{isH264EncodeSupported:ZO.detail.isH264EncodeSupported,isVp8EncodeSupported:ZO.detail.isVp8EncodeSupported,isH265EncodeSupported:ZO.detail.isH265EncodeSupported};let r,n=!1,a=!1,o=!1;try{let s=new RTCPeerConnection,c=document.createElement(QA);c.getContext("2d");let l=c.captureStream(0);return s.addTrack(l.getVideoTracks()[0],l),r=await s.createOffer(),n=-1!==(null==(e=r.sdp)?void 0:e.toLowerCase().indexOf("h264")),a=-1!==(null==(t=r.sdp)?void 0:t.toLowerCase().indexOf("vp8")),o=-1!==(null==(i=r.sdp)?void 0:i.toLowerCase().indexOf("h265")),s.close(),{isH264EncodeSupported:n,isVp8EncodeSupported:a,isH265EncodeSupported:o}}catch(s){return{isH264EncodeSupported:!1,isVp8EncodeSupported:!1,isH265EncodeSupported:!1}}},sL=async function(){var e;if(ZO.detail.isH264DecodeSupported&&ZO.detail.isVp8DecodeSupported)return{isH264DecodeSupported:ZO.detail.isH264DecodeSupported,isVp8DecodeSupported:ZO.detail.isVp8DecodeSupported,isH265DecodeSupported:ZO.detail.isH265DecodeSupported};let t,i=!1,r=!1;try{let n=new RTCPeerConnection;kL()?(n.addTransceiver(eR,{direction:"recvonly"}),t=await n.createOffer()):t=await n.createOffer({offerToReceiveVideo:!0}),-1!==t.sdp.toLowerCase().indexOf("h264")&&(i=!0),-1!==t.sdp.toLowerCase().indexOf("vp8")&&(r=!0);let a=-1!==(null==(e=t.sdp)?void 0:e.toLowerCase().indexOf("h265"));return n.close(),{isH264DecodeSupported:i,isVp8DecodeSupported:r,isH265DecodeSupported:a}}catch(n){return{isH264DecodeSupported:!1,isVp8DecodeSupported:!1,isH265DecodeSupported:!1}}};var cL=OC(async e=>{let t=Date.now(),i=HL(),r=tL(),n=eL();if(ZO.detail.isWebRTCSupported=i,ZO.detail.isMediaDevicesSupported=r,ZO.detail.isWebCodecsSupported=n,ZO.detail.isScreenShareSupported=dL(),ZO.detail.isSmallStreamSupported=IL(),37===e)return Object.assign(ZO.detail,await async function(){return fL||(fL=new Promise(async e=>{let t={isH264EncodeSupported:!1,isH264DecodeSupported:!1,isVp8EncodeSupported:!1,isVp8DecodeSupported:!1};if(!eL())return void e(t);let i=null,r=null,n=null,a=()=>{n&&clearTimeout(n),i=null,r=null};try{i=document.createElement("canvas"),r=i.getContext("2d"),i.width=320,i.height=240;let o=0,s=()=>{!r||!i||(r.fillStyle="hsl(".concat(o%360,", 50%, 50%)"),r.fillRect(0,0,i.width,i.height),r.fillStyle="white",r.font="20px Arial",r.fillText("Frame ".concat(o),10,30),o++)};n=setTimeout(()=>{a(),e(t)},5e3);let c=[{type:"h264",encodeConfig:{codec:"avc1.42E01E",avc:{format:"annexb"},width:320,height:240,bitrate:1e6},decodeConfig:{codec:"avc1.42E01E",avc:{format:"annexb"}}},{type:"vp8",encodeConfig:{codec:"vp8",width:320,height:240,bitrate:1e6},decodeConfig:{codec:"vp8"}}];(await Promise.all(c.map(async e=>{let t,r={type:e.type,encodeSupported:!1,decodeSupported:!1};try{t=await new Promise(async(t,n)=>{try{let a=new VideoEncoder({output:e=>{t(e),r.encodeSupported=!0},error:n});a.configure(e.encodeConfig),s();let o=new VideoFrame(i,{timestamp:0});a.encode(o,{keyFrame:!0}),o.close(),await a.flush(),a.close()}catch(a){n(a)}})}catch(p){return MO.warn("".concat(e.type," encoder error:"),p),r}try{await new Promise(async(i,n)=>{try{let a=new VideoDecoder({output:e=>{r.decodeSupported=!0,i(0),e.close()},error:n});a.configure(e.decodeConfig),a.decode(t),await a.flush(),a.close()}catch(a){n(a)}})}catch(p){MO.warn("".concat(e.type," decoder error:"),p)}return r}))).forEach(e=>{"h264"===e.type?(t.isH264EncodeSupported=e.encodeSupported,t.isH264DecodeSupported=e.decodeSupported):"vp8"===e.type&&(t.isVp8EncodeSupported=e.encodeSupported,t.isVp8DecodeSupported=e.decodeSupported)}),a(),e(t)}catch(o){a(),MO.warn("detectWebCodecsSupported failed:",o),e(t)}}),fL)}()),ZO.detail.isBrowserSupported=n,ZO.result=r&&n,ZO.result||MO.error("".concat(navigator.userAgent," ").concat(TC(ZO.detail,!1))),YL(e),XO.addNumber({key:523800,value:Date.now()-t}),ZO;if(ZO.result&&ZO.detail.isH264EncodeSupported&&ZO.detail.isVp8EncodeSupported&&ZO.detail.isH265EncodeSupported&&ZO.detail.isH264DecodeSupported&&ZO.detail.isVp8DecodeSupported&&ZO.detail.isH265DecodeSupported)return ZO;let a=$O(),{encode:o,decode:s}=await async function(){let[e,t]=await Promise.all([oL(),sL()]);return{encode:{h264:e.isH264EncodeSupported,vp8:e.isVp8EncodeSupported,h265:e.isH265EncodeSupported},decode:{h264:t.isH264DecodeSupported,vp8:t.isVp8DecodeSupported,h265:t.isH265DecodeSupported}}}(),{h264:c,vp8:l}=o,{h264:d}=s,{h265:u}=o,{vp8:h,h265:p}=s;if(!c||!l){let e=await oL();MO.warn("detect encode again h264:".concat(c," vp8:").concat(l," result: ").concat(JSON.stringify(e))),c=e.isH264EncodeSupported,l=e.isVp8EncodeSupported}if(c&&d&&pD&&lO&&!CD&&!RD&&(!iO||115!==hO)){let{encode:e,decode:t}=await pL();c=e,d=t}return ZO.result=a&&i&&r&&(c||l)&&(d||h),ZO.detail.isBrowserSupported=a,ZO.detail.isWebRTCSupported=i,ZO.detail.isH264EncodeSupported=c,ZO.detail.isVp8EncodeSupported=l,ZO.detail.isH265EncodeSupported=u,ZO.detail.isH264DecodeSupported=d,ZO.detail.isVp8DecodeSupported=h,ZO.detail.isH265DecodeSupported=p,ZO.result||MO.error("".concat(navigator.userAgent," ").concat(TC(ZO.detail,!1))),YL(),XO.addNumber({key:523800,value:Date.now()-t}),ZO}),lL=function(){return ZO.result},dL=function(){return!(!navigator.mediaDevices||!navigator.mediaDevices.getDisplayMedia)},uL="undefined"!=typeof HTMLMediaElement&&"setSinkId"in HTMLMediaElement.prototype,hL=null;async function pL(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2e3;return hL||(hL=new Promise(async t=>{let i={encode:!1,decode:!1},r=()=>{};try{let n=document.createElement("canvas"),a=n.getContext("2d");n.width=640,n.height=480;let o=setInterval(()=>{a.fillText("test",Math.floor(640*Math.random()),Math.floor(480*Math.random()))},66),s=-1,c=-1;r=()=>{clearInterval(s),clearInterval(o),clearTimeout(c),d.close(),u.close(),l.getTracks().forEach(e=>e.stop())},c=setTimeout(()=>{r(),t(i)},e);let l=n.captureStream(),d=new RTCPeerConnection({}),u=new RTCPeerConnection({offerToReceiveAudio:!0,offerToReceiveVideo:!0});d.addEventListener("icecandidate",e=>u.addIceCandidate(e.candidate)),u.addEventListener("icecandidate",e=>d.addIceCandidate(e.candidate)),d.addTrack(l.getVideoTracks()[0],l);let h=await d.createOffer();await d.setLocalDescription(h),await u.setRemoteDescription(h);let p=await u.createAnswer(),f=GO.default.parse(p.sdp),m=f.media[0].rtp.findIndex(e=>"H264"===e.codec);f.media[0].rtp=[f.media[0].rtp[m]],f.media[0].fmtp=f.media[0].fmtp.filter(e=>e.payload===f.media[0].rtp[0].payload),f.media[0].rtcpFb&&(f.media[0].rtcpFb=f.media[0].rtcpFb.filter(e=>e.payload===f.media[0].rtp[0].payload)),p.sdp=GO.default.write(f),await u.setLocalDescription(p),await d.setRemoteDescription(p),s=setInterval(async()=>{i.encode&&i.decode&&(r(),t(i));let e=d.getSenders()[0],n=u.getReceivers()[0];if(!e||!n)return;let[a,o]=await Promise.all([e.getStats(),n.getStats()]);i.encode||a.forEach(e=>{"outbound-rtp"===e.type&&(e.mediaType===eR||e.kind===eR)&&e.bytesSent>0&&(i.encode=!0)}),i.decode||o.forEach(e=>{"inbound-rtp"===e.type&&(e.mediaType===eR||e.kind===eR)&&e.bytesReceived>0&&(i.decode=!0)})},100)}catch(n){r(),MO.warn("detectH264Supported failed",n),t({encode:!0,decode:!0})}}).then(e=>(e.encode||(e.decode=!0),(!e.encode||!e.decode)&&MO.warn("detectH264Supported encode: ".concat(e.encode," decode: ").concat(e.decode," ").concat("")),e)),hL)}var fL=null;var mL=(e,t,i)=>{"http:"===location.protocol&&!TO&&(e[t]=()=>{throw new rk({code:tk.INVALID_OPERATION,message:VO.NOT_SUPPORTED_HTTP})})},gL=function(e){return!("candidate-pair"!==e.type||!e.nominated||"in-progress"!==e.state&&"succeeded"!==e.state)&&!(Qk(e.selected)&&!e.selected)};function vL(){let e="";if(screen.width){let t=screen.width?screen.width*window.devicePixelRatio:"",i=screen.height?screen.height*window.devicePixelRatio:"";e+="".concat(t," * ").concat(i)}return e}function _L(){return navigator.getUserMedia||navigator.mediaDevices&&navigator.mediaDevices.getUserMedia}function yL(){let e={isSupported:!1},t=["AudioContext","webkitAudioContext","mozAudioContext","msAudioContext"];for(let i=0;i<t.length;i++)if(t[i]in window){e.isSupported=!0;break}return e.isSupported}function EL(){return"captureStream"in HTMLCanvasElement.prototype}function bL(){return!(LD||uD||hO&&hO<63)&&!(!$O()||!EL())}function wL(){return!(hO<74||_D||EO<11||vD<46)}function IL(){return bL()||wL()}var TL=function(){if(Xk(window.RTCRtpTransceiver)||!kL()||!("currentDirection"in RTCRtpTransceiver.prototype))return!1;let e=null,t=!1;try{e=new RTCPeerConnection({sdpSemantics:"unified-plan"}),e.addTransceiver($A),t=!0}catch(Sx){}return null==e||e.close(),t};function SL(){return"RTCPeerConnection"in window&&"getReceivers"in window.RTCPeerConnection.prototype}function AL(){return"RTCPeerConnection"in window&&"getSenders"in window.RTCPeerConnection.prototype}function RL(){return"RTCPeerConnection"in window&&"getTransceivers"in window.RTCPeerConnection.prototype}function kL(){return!(11===EO&&!IO)&&("RTCPeerConnection"in window&&"addTransceiver"in window.RTCPeerConnection.prototype)}var CL=!(!kL()||lO&&hO<86);function DL(){return"RTCRtpTransceiver"in window&&"stop"in window.RTCRtpTransceiver.prototype}var OL="RTCRtpSender"in window;function LL(){return OL&&"replaceTrack"in window.RTCRtpSender.prototype}function NL(){return OL&&"setParameters"in window.RTCRtpSender.prototype&&AL()}var PL="RTCRtpReceiver"in window&&"getSynchronizationSources"in window.RTCRtpReceiver.prototype,xL=window.MediaStreamTrack&&"getSettings"in MediaStreamTrack.prototype,ML=window.MediaStreamTrack&&"getCapabilities"in MediaStreamTrack.prototype,UL="undefined"!=typeof InputDeviceInfo&&"getCapabilities"in InputDeviceInfo.prototype,BL=OL&&"createEncodedStreams"in window.RTCRtpSender.prototype&&sO()>=86,FL="RTCRtpScriptTransform"in window,VL=OL&&(BL||FL),HL=function(){return["RTCPeerConnection","webkitRTCPeerConnection","RTCIceGatherer"].filter(e=>e in window).length>0};function jL(){let e={AudioDecoder:!1,AudioEncoder:!1,VideoDecoder:!1,VideoEncoder:!1,ImageDecoder:!1};return Xk(window.AudioDecoder)||(e.AudioDecoder=!0),Xk(window.AudioEncoder)||(e.AudioEncoder=!0),Xk(window.VideoDecoder)||(e.VideoDecoder=!0),Xk(window.VideoEncoder)||(e.VideoEncoder=!0),Xk(window.ImageDecoder)||(e.ImageDecoder=!0),e}function zL(){return"mediaSession"in navigator&&!Xk(navigator.mediaSession.setActionHandler)}function WL(){return!Xk(window.WebTransport)}function GL(){return"undefined"!=typeof WebAssembly&&WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]))}function qL(){let e={browser:"".concat(AO.name,"/").concat(AO.version),os:CO(),displayResolution:vL(),isScreenShareSupported:dL(),isWebRTCSupported:HL(),isGetUserMediaSupported:_L(),isWebAudioSupported:yL(),isWebSocketsSupported:"WebSocket"in window&&2===window.WebSocket.CLOSING,isWebCodecSupported:jL(),isMediaSessionSupported:zL(),isWebTransportSupported:WL()};return navigator.userAgent.includes("miniProgram")&&(e.browser="mini/".concat(e.browser)),e}var KL="checkResult";function YL(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:30;BO.setItem(KL+e,{ua:navigator.userAgent,checkResult:ZO})}function XL(e){rL();let t=BO.getItem(KL+e);t&&t.ua===navigator.userAgent&&t.checkResult&&function(e,t){return!!$k(e)&&Object.keys(t).every(t=>t in e)}(t.checkResult.detail,ZO.detail)&&(ZO=t.checkResult),cL(e)}function ZL(){return"requestVideoFrameCallback"in HTMLVideoElement.prototype}var JL="RTCRtpReceiver"in window&&"jitterBufferTarget"in window.RTCRtpReceiver.prototype;function QL(e){return{h264:1,h265:2,vp8:3,vp9:4,av1:5}[e]}var $L=!1;async function eN(){var e;try{if($L||null==(e=null==navigator?void 0:navigator.mediaCapabilities)||!e.encodingInfo)return;let t=DO(),i=LD||CD?4:lO?1:mO?2:mD?3:0;if(0===t||0===i)return;$L=!0;let r=["H264","VP8","VP9","AV1","H265"],[n,a]=await Promise.all([tN(r),iN(r)]);n&&Object.keys(n).forEach(e=>{let r=QL(e.toLowerCase());XO.addEnum({key:513707,value:+"".concat(r).concat(+n[e].supported).concat(+n[e].powerEfficient).concat(t).concat(i),useUV:!1})}),a&&Object.keys(a).forEach(e=>{let r=QL(e.toLowerCase());XO.addEnum({key:514713,value:+"".concat(r).concat(+a[e].supported).concat(+a[e].powerEfficient).concat(t).concat(i),useUV:!1})});let{sender:o,receiver:s}=rN();XO.addEnum({key:513708,value:+"".concat(t).concat(i).concat(+o.high),useUV:!1}),XO.addEnum({key:513709,value:+"".concat(t).concat(i).concat(+o.main),useUV:!1}),XO.addEnum({key:514714,value:+"".concat(t).concat(i).concat(+s.high),useUV:!1}),XO.addEnum({key:514715,value:+"".concat(t).concat(i).concat(+s.main),useUV:!1})}catch(t){MO.info("detectVideoCodecCapabilities failed",t)}}async function tN(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1920,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1080,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:30,n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:3e3,a={};try{for(let o of e){let e=await navigator.mediaCapabilities.encodingInfo({type:"webrtc",video:{contentType:"video/".concat(o),width:t,height:i,bitrate:n,framerate:r}});a[o]=e}}catch(FA){}return a}async function iN(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1920,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1080,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:30,n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:3e3,a={};try{for(let o of e){let e=await navigator.mediaCapabilities.decodingInfo({type:"webrtc",video:{contentType:"video/".concat(o),width:t,height:i,bitrate:n,framerate:r}});a[o]=e}}catch(FA){}return a}function rN(){let e={sender:{base:!1,main:!1,high:!1},receiver:{base:!1,main:!1,high:!1}};try{if(RTCRtpSender&&"function"==typeof RTCRtpSender.getCapabilities){let t=RTCRtpSender.getCapabilities("video");t&&t.codecs&&t.codecs.filter(e=>"video/h264"===e.mimeType.toLowerCase()).forEach(t=>{if(t.sdpFmtpLine){let i=t.sdpFmtpLine.match(/profile-level-id=([0-9a-fA-F]+)/);if(i&&i[1])switch(i[1].slice(0,2)){case"42":e.sender.base=!0;break;case"4d":e.sender.main=!0;break;case"64":e.sender.high=!0}}})}if(RTCRtpReceiver&&"function"==typeof RTCRtpReceiver.getCapabilities){let t=RTCRtpReceiver.getCapabilities("video");t&&t.codecs&&t.codecs.filter(e=>"video/h264"===e.mimeType.toLowerCase()).forEach(t=>{if(t.sdpFmtpLine){let i=t.sdpFmtpLine.match(/profile-level-id=([0-9a-fA-F]+)/);if(i&&i[1])switch(i[1].slice(0,2)){case"42":e.receiver.base=!0;break;case"4d":e.receiver.main=!0;break;case"64":e.receiver.high=!0}}})}}catch(t){MO.warn("get H264 profile levelId failed",t)}return e}var nN=TA(kA(),1),aN=Symbol("instance"),oN=Symbol("cacheResult"),sN=class{constructor(e,t,i){this.oldState=e,this.newState=t,this.action=i,this.aborted=!1}abort(e){this.aborted=!0,hN.call(e,this.oldState,new Error("action '".concat(this.action,"' aborted")))}toString(){return"".concat(this.action,"ing")}},cN=class extends Error{constructor(e,t,i){super(t),this.state=e,this.message=t,this.cause=i}};var lN=new Map;function dN(e,t){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return(r,n,a)=>{let o=i.action||n;if(!i.context){let i=lN.get(r)||[];lN.has(r)||lN.set(r,i),i.push({from:e,to:t,action:o})}let s=a.value;a.value=function(){let r=this;for(var n=arguments.length,a=new Array(n),c=0;c<n;c++)a[c]=arguments[c];if(i.context&&(r=pN.get("function"==typeof i.context?i.context.call(this,...a):i.context)),r.state===t)return i.sync?r[oN]:Promise.resolve(r[oN]);r.state instanceof sN&&r.state.action==i.abortAction&&r.state.abort(r);let l=null;Array.isArray(e)?0==e.length?r.state instanceof sN&&r.state.abort(r):("string"!=typeof r.state||!e.includes(r.state))&&(l=new cN(r._state,"".concat(r.name," ").concat(o," to ").concat(t," failed: current state ").concat(r._state," not from ").concat(e.join("|")))):e!==r.state&&(l=new cN(r._state,"".concat(r.name," ").concat(o," to ").concat(t," failed: current state ").concat(r._state," not from ").concat(e)));let d=e=>{if(i.fail&&i.fail.call(this,e),i.sync){if(i.ignoreError)return e;throw e}return i.ignoreError?Promise.resolve(e):Promise.reject(e)};if(l)return d(l);let u=r.state,h=new sN(u,t,o);hN.call(r,h);let p=e=>{var n;return r[oN]=e,h.aborted||(hN.call(r,t),null===(n=i.success)||void 0===n||n.call(this,r[oN])),e},f=e=>(hN.call(r,u,e),d(e));try{let e=s.apply(this,a);return function(e){return"object"==typeof e&&e&&"then"in e}(e)?e.then(p).catch(f):i.sync?p(e):Promise.resolve(p(e))}catch(m){return f(new cN(r._state,"".concat(r.name," ").concat(o," from ").concat(e," to ").concat(t," failed: ").concat(m),m instanceof Error?m:new Error(String(m))))}}}}var uN="undefined"!=typeof window&&window.__AFSM__?(e,t)=>{window.dispatchEvent(new CustomEvent(e,{detail:t}))}:"undefined"!=typeof importScripts?(e,t)=>{postMessage({type:e,payload:t})}:()=>{};function hN(e,t){let i=this._state;this._state=e;let r=e.toString();e&&this.emit(r,i),this.emit(pN.STATECHANGED,e,i,t),this.updateDevTools({value:e,old:i,err:t instanceof Error?t.message:String(t)})}var pN=class e extends nN.default{constructor(t,i,r){super(),this.name=t,this.groupName=i,this._state=e.INIT,t||(t=Date.now().toString(36)),r?Object.setPrototypeOf(this,r):r=Object.getPrototypeOf(this),i||(this.groupName=this.constructor.name);let n=r[aN];n?this.name=n.name+"-"+n.count++:r[aN]={name:this.name,count:0},this.updateDevTools({diagram:this.stateDiagram})}get stateDiagram(){let e=Object.getPrototypeOf(this),t=lN.get(e)||[],i=new Set,r=[],n=[],a=new Set,o=Object.getPrototypeOf(e);lN.has(o)&&(o.stateDiagram.forEach(e=>i.add(e)),o.allStates.forEach(e=>a.add(e))),t.forEach(e=>{let{from:t,to:i,action:a}=e;"string"==typeof t?r.push({from:t,to:i,action:a}):t.length?t.forEach(e=>{r.push({from:e,to:i,action:a})}):n.push({to:i,action:a})}),r.forEach(e=>{let{from:t,to:r,action:n}=e;a.add(t),a.add(r),a.add(n+"ing"),i.add("".concat(t," --\x3e ").concat(n,"ing : ").concat(n)),i.add("".concat(n,"ing --\x3e ").concat(r," : ").concat(n," 🟢")),i.add("".concat(n,"ing --\x3e ").concat(t," : ").concat(n," 🔴"))}),n.forEach(e=>{let{to:t,action:r}=e;i.add("".concat(r,"ing --\x3e ").concat(t," : ").concat(r," 🟢")),a.forEach(e=>{e!==t&&i.add("".concat(e," --\x3e ").concat(r,"ing : ").concat(r))})});let s=[...i];return Object.defineProperties(e,{stateDiagram:{value:s},allStates:{value:a}}),s}static get(t){let i;return"string"==typeof t?(i=e.instances.get(t),i||e.instances.set(t,i=new e(t,void 0,Object.create(e.prototype)))):(i=e.instances2.get(t),i||e.instances2.set(t,i=new e(t.constructor.name,void 0,Object.create(e.prototype)))),i}static getState(t){var i;return null===(i=e.get(t))||void 0===i?void 0:i.state}updateDevTools(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};uN(e.UPDATEAFSM,Object.assign({name:this.name,group:this.groupName},t))}get state(){return this._state}set state(e){hN.call(this,e)}};pN.STATECHANGED="stateChanged",pN.UPDATEAFSM="updateAFSM",pN.INIT="[*]",pN.ON="on",pN.OFF="off",pN.instances=new Map,pN.instances2=new WeakMap;var fN="undefined"!=typeof window,mN=fN&&window.requestIdleCallback||function(e){let t=Date.now();return setTimeout(()=>{e({didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))})},1e3)},gN=fN&&window.cancelIdleCallback||function(e){clearTimeout(e)},vN=fN&&(window.cancelAnimationFrame||window.mozCancelAnimationFrame),_N=class e{static generateTaskID(){return this.currentTaskID++}static run(e,t,i){null!=i&&i.fps&&(i.delay=i.delay||Number((1e3/i.fps).toFixed(2))),i=yA("interval"===e?{delay:2e3,count:0,backgroundTask:!0}:"ric"===e?{delay:1e4,count:0}:"raf"===e?{fps:60,delay:16.6,count:0,backgroundTask:!0}:{delay:2e3,count:0,backgroundTask:!0},i);let r=EA(yA({taskID:this.generateTaskID(),loopCount:0,intervalID:null,timeoutID:null,rafID:null,ricID:null,taskName:e,callback:t},i),{delay:i.delay});return this.taskMap.set(r.taskID,r),this[e](r),r.taskID}static interval(t){return t.intervalID=setInterval(()=>{t.callback(),t.loopCount+=1,e.isBreakLoop(t)},t.delay)}static intervalInWorker(t){e.sharedWorker||(e.sharedWorker=new Worker(URL.createObjectURL(new Blob(["\n const timers = new Map();\n self.onmessage = function(e) {\n const { taskId, delay, type } = e.data;\n if (type === 'start') {\n timers.set(taskId, setInterval(() => {\n self.postMessage({ type: 'tick', taskId });\n }, delay));\n } else if (type === 'stop') {\n clearInterval(timers.get(taskId));\n timers.delete(taskId);\n }\n };\n "],{type:"application/javascript"}))),e.sharedWorker.onmessage=t=>{var i;if("tick"===t.data.type){let r=e.workerTasks.get(t.data.taskId);r&&(e.isBreakLoop(r)?(null==(i=e.sharedWorker)||i.postMessage({type:"stop",taskId:r.taskID}),e.workerTasks.delete(r.taskID)):(r.callback(),r.loopCount+=1))}}),e.workerTasks.set(t.taskID,t),e.sharedWorker.postMessage({taskId:t.taskID,delay:t.delay,type:"start"})}static timeout(t){let i=()=>{if(t.callback(),t.loopCount+=1,!e.isBreakLoop(t))return t.timeoutID=setTimeout(i,t.delay)};return t.timeoutID=setTimeout(i,t.delay)}static ric(t){let i,r=lC(),n=()=>{if(i=lC()-r,i>=t.delay&&(r=lC()-Math.floor(i%t.delay),t.callback(),t.loopCount+=1),!e.isBreakLoop(t))return t.ricID=mN(n,{timeout:t.delay})};return t.ricID=mN(n,{timeout:t.delay})}static raf(t){let i,r=lC(),n=()=>document.hidden&&t.backgroundTask?(i=lC()-r,r=lC(),t.callback(),t.loopCount+=1,e.isBreakLoop(t)?void 0:t.timeoutID=setTimeout(n,t.delay-Math.floor(i%t.delay))):(i=lC()-r,i>=t.delay&&(r=lC()-Math.floor(i%t.delay),t.callback(),t.loopCount+=1),e.isBreakLoop(t)?void 0:t.rafID=requestAnimationFrame(n));if(t.rafID=requestAnimationFrame(n),t.backgroundTask){let e=()=>{if(document.hidden){let e=lC()-r;e>=t.delay?n():t.timeoutID=setTimeout(n,t.delay-e)}};document.addEventListener("visibilitychange",e),t.onVisibilitychange=e,document.hidden&&e()}return t.taskID}static hasTask(e){return this.taskMap.has(e)}static clearTask(e){if(!this.taskMap.has(e))return!0;let{intervalID:t,timeoutID:i,rafID:r,ricID:n,onVisibilitychange:a}=this.taskMap.get(e);return t&&clearInterval(t),i&&clearTimeout(i),r&&vN&&vN(r),n&&gN(n),a&&document.removeEventListener("visibilitychange",a),this.taskMap.delete(e),!0}static isBreakLoop(e){return!this.hasTask(e.taskID)||0!==e.count&&e.loopCount>=e.count&&(this.clearTask(e.taskID),!0)}};AA(_N,"taskMap",new Map),AA(_N,"currentTaskID",1),AA(_N,"sharedWorker",null),AA(_N,"workerTasks",new Map);var yN=_N,EN={LOAD_START:lR,LOADED_DATA:dR,LOADED_META_DATA:uR,MEDIA_TRACK_CHANGED:"media-track-changed",PLAYER_STATE_CHANGED:"player-state-changed",ERROR:"error",AUTOPLAY_FAILED:"autoplay-failed",RESIZE:vR,TIME_UPDATE:"time-update",LEAVE_PICTURE_IN_PICTURE:mR,ENTER_PICTURE_IN_PICTURE:fR,USER_RESUME_IN_PIP_OR_FULL_SCREEN:"user-resume-in-pip-or-full-screen",USER_PAUSE_IN_PIP_OR_FULL_SCREEN:"user-pause-in-pip-or-full-screen",ENTER_FULL_SCREEN:"enter-full-screen",LEAVE_FULL_SCREEN:"leave-full-screen",VOLUME_CHANGE:"volume-change"},bN={};IA(bN,{create:()=>IN,remove:()=>TN});var wN=new WeakMap;function IN(e,t){wN.has(e)||wN.set(e,[]);let i=wN.get(e),r={add:(e,n)=>("addEventListener"in t?(i.push(t.removeEventListener.bind(t,e,n)),t.addEventListener(e,n)):(i.push(t.off.bind(t,e,n)),t.on(e,n)),r)};return r}function TN(e){let t=wN.get(e);t&&(t.forEach(e=>e()),wN.delete(e))}var SN=new class{constructor(){AA(this,"_roomIdMap",new Map),AA(this,"_configs"),"undefined"==typeof registerProcessor&&(this._configs={sdkAppId:"",userId:"",version:HA,env:YA,browserVersion:AO.name+AO.version,ua:navigator.userAgent})}setConfig(e){let{sdkAppId:t,env:i,userId:r,roomId:n}=e;t!==this._configs.sdkAppId&&(this._configs.sdkAppId=String(t)),this._configs.env=i,this._configs.userId=r,this._roomIdMap.set(r,String(n))}logSuccessEvent(e){TO||!MO.isAbleToUpload||this._configs.env===YA&&this.uploadEventToKibana(EA(yA({},e),{result:"success"}))}logFailedEvent(e){if(TO||!MO.isAbleToUpload)return;let{eventType:t,code:i,error:r,userId:n}=e,a={roomId:this._roomIdMap.get(n||this._configs.userId),userId:n,eventType:t,result:"failed",code:i||(null==r?void 0:r.extraCode)||(null==r?void 0:r.code)||tk.UNKNOWN};this._configs.env===YA&&this.uploadEventToKibana(EA(yA({},a),{error:r}))}uploadEventToKibana(e){let t="stat-".concat(e.eventType,"-").concat(e.result);("delta-join"===e.eventType||"delta-leave"===e.eventType||"delta-publish"===e.eventType)&&(t="".concat(e.eventType,":").concat(e.delta)),this.uploadEvent({log:t,userId:e.userId}),"failed"===e.result&&(t="stat-".concat(e.eventType,"-").concat(e.result,"-").concat(e.code),this.uploadEvent({log:t,userId:e.userId,error:e.error}))}uploadEvent(e){let{log:t,userId:i,error:r}=e,n={timestamp:ak(),sdkAppId:this._configs.sdkAppId,userId:i||this._configs.userId,version:HA,log:t};r&&(n.errorInfo=r.message,r.stack&&(n.errorInfo+="\n".concat(r.stack)));let a=PO.enable?FC(n,2002,Number(this._configs.sdkAppId)):JSON.stringify(n);this.sendRequest(Ck(this._configs.sdkAppId,KA),a)}sendRequest(e,t){setTimeout(()=>YC({url:e,body:t,priority:"low"}).catch(()=>{}),2e3)}},AN=new WeakMap;var RN=class extends pN{constructor(e,t){super(e.id,"".concat(t,"-player")),this.options=e,this.kind=t,AA(this,"id"),AA(this,"element",null),AA(this,"track"),AA(this,"url"),AA(this,"attr"),AA(this,"mode"),AA(this,"muted"),AA(this,"_log"),AA(this,"isPausedByUserCall",!1),AA(this,"_pausedRetryCount"),AA(this,"_isElementPlayingFired",!1),AA(this,"_interval"),AA(this,"_delayDestroyTimeoutId",0),AA(this,"_playSuccessResolve"),AA(this,"_isReplayByRecreateMediaStreamCalled",!1),AA(this,"isPlayCalled",!1),AA(this,"isInAutoPlayFailedState",!1),AA(this,"isBindAutoPlayEvent",!1),this.id=e.id,this._log=e.log,this.track=e.track,this.muted=e.muted,this._pausedRetryCount=5,this._state="STOPPED",this.bindTrackEvents(),this._log.info("create ".concat(t,"-player ").concat(this.id))}get isPlaying(){var e;return"PLAYING"===this._state&&!1===(null==(e=this.element)?void 0:e.paused)}get isPaused(){var e;return"PAUSED"===this._state||!0===(null==(e=this.element)?void 0:e.paused)}get isStopped(){return"STOPPED"===this._state}setAttr(e){this.attr=e}setUrl(e){this.track&&(this.unbindTrackEvents(),this.element&&(this.element.srcObject=null),this.track=null),e!==this.url&&(this.url=e,null!==e&&this.element&&(this.element.crossOrigin="anonymous",this.element.src=e))}async play(){if(!this.isPlaying)try{this.isPlayCalled=!0,this._delayDestroyTimeoutId&&(clearTimeout(this._delayDestroyTimeoutId),this._delayDestroyTimeoutId=0,this.bindTrackEvents(),this.bindElementEvents()),this.bindAutoPlayEvent(),await new Promise((e,t)=>{this._playSuccessResolve=e,this.element.play().then(e,t)})}catch(Sx){let t=zO({key:FO.PLAY_FAILED,data:{media:this.kind,error:Sx}});if(this._log.warn(Sx),t.includes("NotAllowedError"))throw this.isInAutoPlayFailedState=!0,new rk({code:tk.PLAY_NOT_ALLOWED,message:t})}}stop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;var t;this.isPlayCalled=!1,this.isPausedByUserCall=!1,this._isElementPlayingFired=!1,this.unbindEvents(),e>0&&!gO?this._delayDestroyTimeoutId||(null==(t=this.element)||t.remove(),this._log.info("destroy element after 3 * ".concat(e)),this._delayDestroyTimeoutId=setTimeout(()=>this.destroyElement(),3*e)):this.destroyElement(),this.handleStopped(aR),this._interval>0&&yN.clearTask(this._interval)}destroyElement(){this.element&&(this._log.debug("destroy element"),this.element.remove(),this.element.src="",this.element.srcObject=null,this.element=null),clearTimeout(this._delayDestroyTimeoutId),this._delayDestroyTimeoutId=0}pause(){this._log.info("pause"),this.isPausedByUserCall=!0,this.doPause()}doPause(){var e;null==(e=this.element)||e.pause()}resume(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.isPausedByUserCall=!1,this.doResume(e)}doResume(){return this._log.info("resume"),this.isPausedByUserCall||this.isPlaying?Promise.resolve():bO?this.replay():this.play().catch(()=>{})}setMuted(e){this.element&&(this.element.muted=e),this.muted=e}replay(){return this.stop(),this.play().catch(()=>{})}bindElementEvents(){if(this.element){let e=this.handleElementEvent.bind(this);return IN(this.element,this.element).add(oR,e).add(aR,e).add(sR,e).add(cR,e).add(lR,e).add(dR,e).add(uR,e)}}bindTrackEvents(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.track;if(e){let t=this.handleTrackEvent.bind(this);null==bN||bN.create(e,e).add(aR,t).add(rR,t).add(nR,t),e.readyState===aR&&this.handleTrackEvent({type:aR}),e.muted&&this.handleTrackEvent({type:rR})}}bindAutoPlayEvent(){this.isBindAutoPlayEvent||(LO.on(NO.AUTOPLAY_DIALOG_CLICK_CONFIRM,this.resume,this),this.isBindAutoPlayEvent=!0)}unbindTrackEvents(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.track;e&&TN(e)}unbindEvents(){this.element&&TN(this.element),this.unbindTrackEvents(),LO.off(NO.AUTOPLAY_DIALOG_CLICK_CONFIRM,this.resume,this),this.isBindAutoPlayEvent=!1}handleElementEvent(e){switch(e.type){case oR:GN()||(this.isInAutoPlayFailedState=!1),this._isElementPlayingFired=!0,this._log.info("".concat(this.kind," player is playing")),this.handlePlaying(oR),this._interval&&(yN.clearTask(this._interval),this._interval=-1);break;case aR:this._log.info("".concat(this.kind," player is ended")),this.handleStopped(aR);break;case sR:this._log.info("".concat(this.kind," player is paused")),this.handlePaused(sR);break;case cR:if(this.element&&this.element.error){this.handlePaused(cR);let{code:e,message:t}=this.element.error;this._log.error("".concat(this.kind," ").concat(this._log.isLocal?"local":"remote"," MediaError code: ").concat(e," message: ").concat(t," userAgent: ").concat(navigator.userAgent)),SN.uploadEvent({log:"stat-".concat(this.kind,"-").concat(_R,"-").concat(e,"-").concat(navigator.userAgent),error:this.element.error}),QD||JD?this.emit(EN.ERROR,this.element.error):this.replayByRecreateMediaStream(this.element.error)}break;case dR:this.kind===eR&&this.emit(EN.LOADED_DATA);break;case uR:this.kind===eR&&this.emit(EN.LOADED_META_DATA);break;case lR:this.emit(EN.LOAD_START)}}replayByRecreateMediaStream(e){if(!this._isReplayByRecreateMediaStreamCalled)return this._isReplayByRecreateMediaStreamCalled=!0,this.doReplayByRecreateMediaStream(1e3).then(()=>{this._log.warn("replayByRecreateMediaStream success"),SN.uploadEvent({log:"stat-replayByRecreateMediaStream-success"}),XO.addSuccessEvent({key:this.kind===$A?506700:516700})}).catch(()=>{var t;this._log.error("replayByRecreateMediaStream failed"),SN.uploadEvent({log:"stat-replayByRecreateMediaStream-failed"}),XO.addFailedEvent({key:this.kind===$A?506700:516700,error:null==(t=this.element)?void 0:t.error}),this.emit(EN.ERROR,e)})}doReplayByRecreateMediaStream(e){return this._log.warn("delay ".concat(e,"ms to recreate mediaStream")),new Promise((t,i)=>{DC(e).then(()=>{this.element&&(this.element.srcObject=null,this.element.srcObject=new MediaStream([this.track]),this._log.warn("recreated mediaStream"),this.element.onerror=()=>{var e,t,r;this._log.warn("element onerror ".concat(null==(t=null==(e=this.element)?void 0:e.error)?void 0:t.code," fired after recreated mediaStream")),i(null==(r=this.element)?void 0:r.error)}),DC(5e3).then(()=>{var e,r;(!this.isPlaying||null!=(e=this.element)&&e.error)&&i(null==(r=this.element)?void 0:r.error),t()})})}).finally(()=>{this.element&&(this.element.onerror=null)})}async handleTrackEvent(e){let t=e.type;switch(this.options.enableLogTrackState&&this._log[t===nR?"info":"warn"]("track ".concat(t)),t){case aR:this.handleStopped(aR);break;case rR:this.handlePaused(rR);break;case nR:this.mode>0?this.handlePlaying(this.mode.toString()):this.element&&(this.element.paused&&!this.isPausedByUserCall&&(this._log.warn("track unmuted and element is paused, resume"),await this.doResume()),this.element&&!this.element.paused&&this._isElementPlayingFired&&this.handlePlaying(nR))}}handlePlaying(e){var t;return this._log.debug("handlePlaying",e),null==(t=this._playSuccessResolve)||t.call(this,e),e}handlePaused(e){return this._log.debug("handlePaused",e),e}handleStopped(e){return this._log.debug("handleStopped",e),e}getElement(){return this.element}};AA(RN,"PlayerEvent",EN),SA([function(e){let{settings:t={retries:5,timeout:2e3},onError:i,onRetrying:r,onRetryFailed:n}=e;return function(e,a,o){let s=eD({retryFunction:o.value,settings:t,onError(t){let{error:r,retry:n,reject:o,retryFuncArgs:s}=t;var c;i?i.call(this,r,()=>{var t;null!=(t=AN.get(e))&&t.has(a)?n():o(r)},o,s):null!=(c=AN.get(e))&&c.has(a)?n():o(r)},onRetrying(t,i){var n;ZC(r)&&r.call(this,t,i),null!=(n=AN.get(e))&&n.has(a)&&(AN.get(e).get(a).stopRetry=i)},onRetryFailed:n});return o.value=function(){let t=AN.get(e);for(var i=arguments.length,r=new Array(i),n=0;n<i;n++)r[n]=arguments[n];return t?t.set(a,{args:r}):AN.set(e,new Map([[a,{args:r}]])),s.apply(this,r).finally(()=>{var t;return null==(t=AN.get(e))?void 0:t.delete(a)})},o}}({settings:{retries:2,timeout:0},onError(e,t,i,r){r[0]=(r[0]||1e3)+1e3,t()}})],RN.prototype,"doReplayByRecreateMediaStream",1),SA([dN([],"PLAYING",{sync:!0,success(e){this.emit(EN.PLAYER_STATE_CHANGED,{type:this.kind,state:"PLAYING",reason:e})}})],RN.prototype,"handlePlaying",1),SA([dN("PLAYING","PAUSED",{ignoreError:!0,sync:!0,success(e){this.emit(EN.PLAYER_STATE_CHANGED,{type:this.kind,state:"PAUSED",reason:e})}})],RN.prototype,"handlePaused",1),SA([dN([],"STOPPED",{sync:!0,success(e){this.emit(EN.PLAYER_STATE_CHANGED,{type:this.kind,state:"STOPPED",reason:e})}})],RN.prototype,"handleStopped",1);var kN="trtc_autoplay",CN="".concat(kN,"_mask"),DN="".concat(kN,"_wrapper"),ON="".concat(kN,"_header"),LN="".concat(kN,"_content"),NN="".concat(kN,"_action_wrapper"),PN="".concat(kN,"_question"),xN="".concat(kN,"_collapse"),MN="".concat(kN,"_action_confirm"),UN="".concat(kN,"_detail"),BN="#2473E8",FN="dialog",VN="".concat(FN,"-show"),HN="".concat(FN,"-1"),jN="".concat(FN,"-2"),zN=!1,WN=!1,GN=()=>WN,qN="".concat(WA,"/").concat(zk()?"zh-cn":"en","/tutorial-21-advanced-auto-play-policy.html"),KN="<br><a href='".concat(qN,"' target='_blank'>").concat(zk()?"其他方案?":"Any other solution?","</a>"),YN="".concat(zk()?"浏览器自动播放策略:在用户与页面产生交互(点击、触摸)之前,浏览器禁止播放有声媒体。该弹窗用于帮助用户恢复音视频播放。".concat(KN):"Autoplay Policy: Before user interacts with the web page (clicking, touching), page will not be allowed to play media with sound. This Dialog is used to help users resume playback. ".concat(KN)),XN=class{constructor(){if(AA(this,"content","音视频播放被浏览器拦截,请点击“恢复播放”。"),AA(this,"_dialogNode",null),AA(this,"_bodyPosition",""),AA(this,"_showDetail",!1),AA(this,"_isCollapseClicked",!1),AA(this,"_isQuestionClicked",!1),zk()||(this.content='Media playback failed. Click the "Resume" to resume playback.'),!zN){let e=document.createElement("style");e.innerHTML=".".concat(CN,"{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,0.5);z-index:1500;}.").concat(CN," div:not(.").concat(NN,"){display:block !important;}.").concat(DN,"{padding:14px;background:#fff;border-radius:3px;box-shadow:0px 3px 15px #434343;border:1px solid #d1cfcf;max-width:500px;}.").concat(DN," a{color:").concat(BN,";}.").concat(ON,"{overflow:hidden;text-overflow:ellipsis;font-size:16px;font-weight:600;}.").concat(LN,"{margin:8px 0;}.").concat(NN,"{width:100%;display:flex !important;align-items:center;justify-content:right;float:right;}.").concat(xN,"{margin-right:auto;cursor:pointer}.").concat(PN,"{height:100%;line-height:16px;cursor:pointer;}.").concat(MN,"{margin-left:8px;color:#fff;background:").concat(BN,";padding:4px 12px;outline:none;border:1px solid;border-radius:3px;font-weight:bold;}.").concat(MN,":hover{opacity:0.9;}.").concat(xN,",.").concat(MN,",.").concat(LN,",.").concat(PN,"{font-size:14px;}@media screen and (max-width:750px){.").concat(DN,"{width:80vw;}}"),document.head.appendChild(e),zN=!0}this.addDiaLog()}createDiaLog(){let e=document.createElement("template");e.innerHTML='<div class="'.concat(CN,"\"><div class='").concat(DN,"'><div class='").concat(ON,"'>").concat(location.host,"</div><div class='").concat(LN,"'>").concat(this.content,"</div><div class='").concat(UN,'\' style="visibility:hidden;width:100%;height:0;font-size:12px;color:gray;">').concat(YN,"</div><div class='").concat(NN,"'></div></div></div>").trim();let t=document.createElement("button");t.className=MN,t.innerText=zk()?"恢复播放":"Resume",t.onclick=this.onConfirm.bind(this);let i=document.createElement("div");i.className=PN,i.innerHTML='<?xml version="1.0" encoding="UTF-8"?>\n <svg class="icon" width="18" height="18" p-id="2030" t="1639646523624" version="1.1" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg">\n <path d="m464 784.35c0 26.51 21.49 48 48 48s48-21.49 48-48-21.49-48-48-48-48 21.49-48 48z" p-id="2031"/>\n <path d="m512 960c-247.04 0-448-200.96-448-448s200.96-448 448-448 448 200.96 448 448-200.96 448-448 448zm0-831.71c-211.58 0-383.71 172.13-383.71 383.71 0 211.55 172.13 383.71 383.71 383.71 211.55 0 383.71-172.16 383.71-383.71 0-211.58-172.16-383.71-383.71-383.71z" p-id="2032"/>\n <path d="m512 673.7c-17.665 0-32.001-14.336-32.001-31.999v-54.112c0-52.353 40-92.352 75.328-127.65 25.887-25.92 52.672-52.672 52.672-74.017 0-53.343-43.072-96.735-95.999-96.735-53.823 0-95.999 41.536-95.999 94.559 0 17.665-14.336 31.999-32.001 31.999s-32.001-14.336-32.001-31.999c0-87.424 71.775-158.56 160-158.56s160 72.095 160 160.74c0 47.904-36.32 84.192-71.424 119.3-27.84 27.776-56.576 56.512-56.576 82.336v54.112c0 17.665-14.336 32.032-32.001 32.032z" p-id="2033"/>\n </svg>\n ',i.onclick=this.onQuestionClick.bind(this);let r=document.createElement("div");r.className=xN,r.innerText="".concat(zk()?"详情 >":"Detail >"),r.onclick=this.onCollapseClick.bind(this);let n=e.content.firstChild,a=n.querySelector(".".concat(NN));return a.appendChild(r),a.appendChild(i),a.appendChild(t),n}addDiaLog(){GN()||(WN=!0,this._dialogNode=this.createDiaLog(),document.body.appendChild(this._dialogNode),this._dialogNode.onclick=this.onConfirm.bind(this),this._dialogNode.querySelector(".".concat(DN)).onclick=e=>e.stopPropagation(),this._bodyPosition=document.body.style.position,document.body.style.position="fixed",MO.info("show autoplay dialog"),SN.uploadEvent({log:VN}))}deleteDialog(){this._dialogNode&&(document.body.removeChild(this._dialogNode),document.body.style.position=this._bodyPosition,this._dialogNode=null,WN=!1),ZN=null}onConfirm(){MO.warn("confirm clicked, try resume stream"),LO.emit(NO.AUTOPLAY_DIALOG_CLICK_CONFIRM),this.deleteDialog()}onCollapseClick(){let e=this._dialogNode.querySelector(".".concat(UN));e.style.visibility="".concat(this._showDetail?"hidden":"visible"),e.style.height="".concat(this._showDetail?0:"fit-content"),this._showDetail=!this._showDetail,this._isCollapseClicked||SN.uploadEvent({log:HN}),this._isCollapseClicked=!0}onQuestionClick(){window.open(qN,"_blank"),this._isQuestionClicked||SN.uploadEvent({log:jN}),this._isQuestionClicked=!0}},ZN=null;var JN,QN=class extends RN{constructor(e){super(e,eR),AA(this,"stat",{}),AA(this,"_calculateTimeout",-1),AA(this,"viewMirror",!1),AA(this,"objectFit","cover"),AA(this,"container"),AA(this,"canvas"),AA(this,"shouldRenderAlpha",!1),AA(this,"_preSize",{width:0,height:0}),AA(this,"posterImg"),AA(this,"pipWindow"),AA(this,"enterPIPPromise"),AA(this,"_originContainerPosition"),AA(this,"_isResettingSrcObject",!1),AA(this,"_wrapper",null),AA(this,"_useWrapper",!1),this.mode=e.canvas?1:0,this.container=e.container,this.canvas=e.canvas,Xk(e.viewMirror)||(this.viewMirror=e.viewMirror),Xk(e.objectFit)||(this.objectFit=e.objectFit),this.initializeElement()}get isPlaying(){var e;return!("PLAYING"!==this._state||this.element&&this.element.paused)&&("live"===(null==(e=this.track)?void 0:e.readyState)&&!this.track.muted)}initializeElement(){let e=document.createElement(eR);this.track&&2!==this.mode&&(e.srcObject=new MediaStream([this.track])),e.muted=!0,e.setAttribute("id","video_".concat(this.id)),e.setAttribute("style",this.styleAttribute),this.canvas&&this.canvas.setAttribute("style",this.styleAttribute),e.setAttribute("autoplay","autoplay"),e.setAttribute("playsinline","playsinline"),this.element=e,pD&&(e.poster="data:,"),this._appendToWrapper(),this.bindElementEvents(),this.calculateStat()}get styleAttribute(){let e=this._useWrapper?"grid-area:1/1;width:100%;height:100%;object-fit:".concat(this.objectFit,";").concat(this.shouldRenderAlpha?"":"background-color:black",";"):"width:100%;height:100%;object-fit:".concat(this.objectFit,";").concat(this.shouldRenderAlpha?"":"background-color:black",";");return this.viewMirror&&(e+="transform:scaleX(-1);"),e}setLiveMode(e){if(this._useWrapper!==e&&(this._useWrapper=e,this.elementToRender&&this.elementToRender.setAttribute("style",this.styleAttribute),this.container&&this.elementToRender))if(e){let e=this._getOrCreateWrapper();e.insertBefore(this.elementToRender,e.firstChild)}else this.container.appendChild(this.elementToRender),this._cleanupWrapper()}setContainer(e){if(this.container===e)return;let t=this._wrapper,i=this.container;this.container=e,this._pausedRetryCount=5,this.track&&this.elementToRender&&this._appendToWrapper(),t&&i&&i!==this.container&&t.isConnected&&0===t.children.length&&t.remove()}_getOrCreateWrapper(){if(!this.container)throw new Error("[VideoPlayer] container is required");let e=this.container.querySelector("[data-trtc-video-wrapper]");return e||(e=document.createElement("div"),e.setAttribute("data-trtc-video-wrapper","true"),e.style.cssText="display:grid;width:100%;height:100%;",this.container.appendChild(e)),this._wrapper=e,e}_appendToWrapper(e){let t=null!=e?e:this.elementToRender;if(this.container&&t)if(this._useWrapper){let e=this._getOrCreateWrapper();e.insertBefore(t,e.firstChild)}else this.container.appendChild(t)}bindElementEvents(){let e=super.bindElementEvents();this.handleElementEvent=this.handleElementEvent.bind(this),this.handleFullscreenChange=this.handleFullscreenChange.bind(this),this.handleVolumeChange=this.handleVolumeChange.bind(this),e&&e.add(fR,this.handleElementEvent).add(mR,this.handleElementEvent).add(vR,this.handleElementEvent),this.element&&(this.element.addEventListener(gR,this.handleFullscreenChange),this.element.addEventListener("webkitbeginfullscreen",this.handleFullscreenChange),this.element.addEventListener("webkitendfullscreen",this.handleFullscreenChange),this.element.addEventListener("volumechange",this.handleVolumeChange))}handleTrackEvent(e){var t;return e.type===rR&&(null!=(t=this.stat)&&t.fps&&(this.stat.fps=0),this.isFullscreen()&&this.resetSrcObjectToReplay()),super.handleTrackEvent(e)}handleFullscreenChange(){this.isFullscreen()?(this._log.info("enter fullscreen"),this.emit(EN.ENTER_FULL_SCREEN)):(this._log.info("leave fullscreen"),this.emit(EN.LEAVE_FULL_SCREEN))}handleVolumeChange(){var e;(this.isPictureInPicture()||this.isFullscreen())&&this.emit(EN.VOLUME_CHANGE,{muted:null==(e=this.element)?void 0:e.muted})}handleElementEvent(e){var t,i,r,n,a,o;if(2===this.mode)return;super.handleElementEvent(e);let s=e.type,c=this.isPictureInPicture(),l=this.isFullscreen(),d=e.isTrusted&&(c&&mO||l);if(s===oR&&d&&!this._isResettingSrcObject&&(this._log.warn("user resume in ".concat(l?"fullscreen":"pip")),this.emit(EN.USER_RESUME_IN_PIP_OR_FULL_SCREEN)),s===sR&&(d&&(this._log.warn("user pause in ".concat(l?"fullscreen":"pip")),this.emit(EN.USER_PAUSE_IN_PIP_OR_FULL_SCREEN)),this.container&&!this.container.isConnected&&(this._log.warn("".concat(this.kind," player has been remove, element ID: ").concat(this.container.id)),DC(500).then(()=>{var e;null!=(e=this.container)&&e.isConnected&&(this._pausedRetryCount=5,this._log.info("view container ".concat(this.container.id," is in dom, reset pausedRetryCount")))})),this._pausedRetryCount>0&&!GN()&&!this.isPausedByUserCall&&!d&&(this._log.info("[".concat(5-this._pausedRetryCount+1,"/").concat(5,"] ").concat(this.kind," player auto resume when paused")),this.doResume(),this._pausedRetryCount--),uD&&!d&&(this._interval=yN.run("timeout",()=>{this.element&&"PAUSED"===this._state&&!this.isPausedByUserCall&&this.doResume()},{delay:3e3})),this.stat.fps&&(this.stat.fps=0)),this.viewMirror&&this.element){let e=this.element.style.transform;s===fR?this.element.style.transform=e.replace("scaleX(-1)",""):s===mR&&!e.includes("scaleX")&&(this.element.style.transform="".concat(e," scaleX(-1)"))}s===vR&&(this._preSize.height!==(null==(t=this.element)?void 0:t.videoHeight)||this._preSize.width!==(null==(i=this.element)?void 0:i.videoWidth))&&(this._log.info("video size changed to ".concat(null==(r=this.element)?void 0:r.videoWidth,"x").concat(null==(n=this.element)?void 0:n.videoHeight)),this._preSize.height=(null==(a=this.element)?void 0:a.videoHeight)||0,this._preSize.width=(null==(o=this.element)?void 0:o.videoWidth)||0,this.emit(EN.RESIZE,{newWidth:this._preSize.width,newHeight:this._preSize.height})),s===mR&&(this._log.warn("exit pip"),this.isPaused&&!this.isPausedByUserCall&&(this._log.warn("resume after exit pip"),this.doResume()),this.resetSrcObjectToReplay(),this.emit(EN.LEAVE_PICTURE_IN_PICTURE)),s===fR&&this.emit(EN.ENTER_PICTURE_IN_PICTURE)}resetSrcObjectToReplay(){pD&&pO&&this.isPlayCalled&&this.element&&this.track&&!this.isPausedByUserCall&&(this._log.warn("reset srcObject to replay for android chromium"),this._isResettingSrcObject=!0,this.element.srcObject=new MediaStream([this.track]),this.element.play().catch(e=>{this._log.warn("play failed after reset srcObject",e)}).finally(()=>{this._isResettingSrcObject=!1}))}setCanvas(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;var i,r;this.canvas!==e&&(null==(i=this.canvas)||i.remove(),null==e||e.setAttribute("style",this.styleAttribute),this.canvas=e,this.mode=e?t:0,2===this.mode&&this.setTrack(e.captureStream().getVideoTracks()[0]),e?(null==(r=this.element)||r.remove(),this._appendToWrapper(e)):this.element&&this._appendToWrapper(this.element))}setAttr(e){let t=Object.assign({autoplay:"autoplay",playsinline:"playsinline",muted:!0},e);t.style=Object.assign({width:"100%",height:"100%"},t.style),super.setAttr(t)}get mirror(){return this.viewMirror}setRect(e,t){this.elementToRender&&(this.elementToRender.style.width="".concat(e,"px"),this.elementToRender.style.height="".concat(t,"px"))}setViewMirror(e){this.elementToRender&&(this.elementToRender.style.transform=e?"scaleX(-1)":""),this.viewMirror=e}setObjectFit(e){this.elementToRender&&(this.elementToRender.style.objectFit="".concat(e)),this.objectFit=e}setPoster(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new Promise(i=>{if(!this.element||(this._log.info("setPoster",e.slice(0,10)),""===e?this.element.removeAttribute("poster"):this.element.poster=e,!t||!mO&&!mD))return i();if(""===e)return this.removePosterImg(),i();if(this.posterImg)return i();let r=document.createElement("img");r.src=e;let n=window.getComputedStyle(this.element),a=n.objectFit||this.objectFit,o=1;if(this._useWrapper){let e=parseInt(n.zIndex,10);isNaN(e)||(o=e+1)}r.style.cssText=this._useWrapper?"grid-area:1/1;z-index:".concat(o,";width:100%;height:100%;object-fit:").concat(a,";"):"position:absolute;top:0;left:0;width:100%;height:100%;object-fit:".concat(a,";"),r.onload=async()=>{try{r.decode&&await r.decode(),this.container&&!this._useWrapper&&"static"===window.getComputedStyle(this.container).position&&(this._originContainerPosition=this.container.style.position,this.container.style.position="relative"),this.posterImg=r;let e=this._useWrapper?this._wrapper:this.container;null==e||e.appendChild(r),hD()&&EO<=17&&this.elementToRender&&(this.elementToRender.style.visibility="hidden")}catch(e){this._log.warn("decode poster image error",e)}return i()},r.onerror=()=>(this._log.warn("load poster image error"),i())})}removePosterImg(){this.posterImg&&(hD()&&EO<=17&&this.elementToRender&&(this.elementToRender.style.visibility=""),this.posterImg.remove(),URL.revokeObjectURL(this.posterImg.src),!this._useWrapper&&this.container&&!Xk(this._originContainerPosition)&&"relative"===this.container.style.position&&(this.container.style.position=this._originContainerPosition),delete this.posterImg)}get hasPoster(){var e;return!!this.posterImg||!(null==(e=this.element)||!e.getAttribute("poster"))}async pause(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];super.pause(),!this.isPictureInPicture()&&!this.hasPoster&&(pO||e&&(mD||mO))&&await this.setPoster(this.getVideoFrame(),!0)}resume(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return super.resume(e).then(()=>{var e;(this.posterImg||null!=(e=this.element)&&e.poster)&&this.setPoster("",!0)})}doResume(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.isPaused&&e&&this.element&&this.track&&pO&&"video"===this.track.kind&&(this.element.srcObject=new MediaStream([this.track])),super.doResume()}stop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;var t;this.isPictureInPicture()&&this.exitPictureInPicture().catch(e=>{}),this.isFullscreen()&&this.exitFullscreen().catch(e=>{}),this.element&&(this.element.removeEventListener(gR,this.handleFullscreenChange),this.element.removeEventListener("webkitbeginfullscreen",this.handleFullscreenChange),this.element.removeEventListener("webkitendfullscreen",this.handleFullscreenChange),this.element.removeEventListener("volumechange",this.handleVolumeChange)),super.stop(e),null==(t=this.canvas)||t.remove(),this.removePosterImg(),this._useWrapper&&this._cleanupWrapper()}_cleanupWrapper(){this._wrapper&&0===this._wrapper.children.length&&this._wrapper.remove(),this._wrapper=null}play(e){if(Xk(null==e?void 0:e.isLiveStream)||this.setLiveMode(e.isLiveStream),this.element){if(this.elementToRender&&this.container)if(this._useWrapper){let e=this._getOrCreateWrapper();this.elementToRender.parentElement!==e&&e.insertBefore(this.elementToRender,e.firstChild)}else this.elementToRender.parentElement!==this.container&&this.container.append(this.elementToRender)}else this.initializeElement();return 2===this.mode?Promise.resolve():super.play()}get elementToRender(){return this.canvas||this.element}setTrack(e){e!==this.track&&(this.unbindTrackEvents(),this.track=e,this.emit(EN.MEDIA_TRACK_CHANGED,e),null!==e&&(this.bindTrackEvents(),this.element&&2!==this.mode&&(this.element.srcObject=new MediaStream([e]),this.element.remove()),this._appendToWrapper()))}getVideoFrame(){if(this.canvas)return this.canvas.toDataURL("image/png");if(!this.element)return"";let e=document.createElement("canvas");return e.width=this.element.videoWidth,e.height=this.element.videoHeight,e.getContext("2d").drawImage(this.element,0,0),e.toDataURL("image/png")}getElement(){return this.element}calculateStat(){try{if(ZL()&&this.element&&this._calculateTimeout<0){let e=0,t=null,i=(r,n)=>{this.stat.width=n.width,this.stat.height=n.height,t&&(this.stat.fps=Math.round((n.presentedFrames-t.presentedFrames)/(r-e)*1e3)),e=r,t=n,this._calculateTimeout=-1,this.element&&(this._calculateTimeout=setTimeout(()=>{var e;return null==(e=this.element)?void 0:e.requestVideoFrameCallback(i)},2e3))};this.element.requestVideoFrameCallback(i)}}catch(Sx){this._log.warn("init stat failed",Sx)}}async enterFullscreen(){let e=this.elementToRender;if(!e)throw this._log.warn("no element to render, cannot enter fullscreen"),new Error("No element available for fullscreen");if(uD&&this.isPictureInPicture()){this._log.info("exit pip before entering fullscreen");try{await this.exitPictureInPicture()}catch(BA){this._log.warn("exit pip failed before fullscreen:",BA)}}try{if(e.requestFullscreen)await e.requestFullscreen();else if(e.webkitRequestFullscreen)await e.webkitRequestFullscreen();else if(e.webkitEnterFullscreen)await e.webkitEnterFullscreen();else if(e.mozRequestFullScreen)await e.mozRequestFullScreen();else{if(!e.msRequestFullscreen)throw new Error("Fullscreen API not supported");await e.msRequestFullscreen()}this._log.info("entered fullscreen mode")}catch(BA){throw this._log.error("failed to enter fullscreen:",BA),BA}}async exitFullscreen(){try{if(!this.isFullscreen())return;if(document.exitFullscreen)await document.exitFullscreen();else if(document.webkitExitFullscreen)await document.webkitExitFullscreen();else if(document.mozCancelFullScreen)await document.mozCancelFullScreen();else{if(!document.msExitFullscreen)throw new Error("Exit fullscreen API not supported");await document.msExitFullscreen()}this._log.info("exited fullscreen mode")}catch(Sx){throw this._log.error("failed to exit fullscreen:",Sx),Sx}}isFullscreen(){let e=this.elementToRender;return!!e&&(this.element&&this.element.webkitDisplayingFullscreen?!this.isPictureInPicture():(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement)===e)}async toggleFullscreen(){this.isFullscreen()?await this.exitFullscreen():await this.enterFullscreen()}async enterPictureInPicture(){this.enterPIPPromise=this._enterPictureInPicture();try{return await this.enterPIPPromise}finally{delete this.enterPIPPromise}}async _enterPictureInPicture(){try{if(!this.element)throw new Error("No video element available for pip");if(this.canvas&&1!==this.mode)throw new Error("pip is not supported for canvas-only mode");let{element:e}=this;if(e.requestPictureInPicture){this._log.info("requestPictureInPicture");let t=await e.requestPictureInPicture();return this.pipWindow=t,this._log.info("entered pip mode"),this.elementToRender===this.canvas&&(this.canvas.remove(),this._appendToWrapper(this.element)),t}if(e.webkitSetPresentationMode)return this._log.info("webkitSetPresentationMode"),await e.webkitSetPresentationMode("picture-in-picture"),this._log.info("entered pip mode (webkit)"),{};throw new Error("pip API not supported")}catch(Sx){throw this._log.error("failed to enter pip:",Sx.name,Sx.message),Sx}}async exitPictureInPicture(){var e;try{if(!this.isPictureInPicture())return;if(delete this.pipWindow,document.pictureInPictureElement&&document.exitPictureInPicture)await document.exitPictureInPicture(),this.elementToRender===this.canvas&&(null==(e=this.element)||e.remove(),this._pausedRetryCount=5,this._appendToWrapper(this.canvas)),this._log.info("exited pip mode");else{if(!this.element||!this.element.webkitSetPresentationMode)throw new Error("Exit pip API not supported or not in PiP mode");await this.element.webkitSetPresentationMode("inline"),this._log.info("exited pip mode (webkit)")}}catch(BA){throw this._log.error("failed to exit pip:",BA),BA}}isPictureInPicture(){if(!this.element)return!1;let{element:e}=this;return document.pictureInPictureElement?document.pictureInPictureElement===e:!!e.webkitPresentationMode&&"picture-in-picture"===e.webkitPresentationMode}async togglePictureInPicture(){this.isPictureInPicture()?await this.exitPictureInPicture():await this.enterPictureInPicture()}};"undefined"!=typeof AudioContext?JN=AudioContext:"undefined"!=typeof webkitAudioContext?JN=webkitAudioContext:"undefined"!=typeof mozAudioContext&&(JN=mozAudioContext);var $N,eP=-1,tP=0,iP=-1,rP=!1,nP=0,aP=-1,oP=-1;!function e(){try{if($N)return;($N=new JN({sampleRate:48e3})).onstatechange=()=>{MO.info("context state: ".concat($N.state).concat("running"!==$N.state?" visibilityState: ".concat(document.visibilityState):"")),sP()},clearTimeout(eP)}catch(oA){MO.error("initAudioContext failed: ".concat(oA," typeof AudioContextClass: ").concat(typeof JN)),eP=setTimeout(e,1e3)}}();var sP=()=>{"suspended"===$N.state?(tP=lC(),-1===iP&&(iP=setTimeout(()=>{"suspended"===$N.state&&(rP=!0,LO.emit("155",{isSuspended:!0}))},1500)),dP(),document.addEventListener("click",sP)):"interrupted"===$N.state?dP():(tP&&(XO.addNumber({key:507800,value:lC()-tP,split:[0,500,1e3,1500,2e3,3e3,4e3,5e3,1e4,3e4],max:6e4}),tP=0),-1!==iP&&(clearTimeout(iP),iP=-1,rP&&(rP=!1,LO.emit("155",{isSuspended:!1}))),document.removeEventListener("visibilitychange",sP),document.removeEventListener("click",sP))},cP=0,lP=-1;function dP(){return new Promise((e,t)=>{if("running"===$N.state)return e();Date.now()-cP<1e3?(clearTimeout(lP),lP=setTimeout(()=>{cP=Date.now(),$N.resume().then(e,t)},1e3)):(clearTimeout(lP),cP=Date.now(),$N.resume().then(e,t))}).catch(e=>{MO.warn("context resume failed: ".concat(e)),document.addEventListener("visibilitychange",sP)})}document.addEventListener("click",sP);var uP=e=>$N,hP=class{constructor(e){this.name=e,AA(this,"node"),AA(this,"node2"),AA(this,"pre",new Set),AA(this,"next",new Set),AA(this,"context"),AA(this,"connectedNodes",new Set),AA(this,"nextInputChannelMap",new Map),AA(this,"_channelCount",1)}get channelCount(){return this._channelCount}set channelCount(e){this._channelCount=e,this.setChannelCount(this.node,e),this.setChannelCount(this.node2,e),this.next.forEach(t=>t.channelCount=e)}setChannelCount(e,t){!e||e instanceof ScriptProcessorNode||(e.channelCountMode="explicit",e.channelCount=t||this.channelCount||1)}setContext(e){this.context=e,this.node&&e.addMixWeight()}removeContext(){var e;this.node&&(null==(e=this.context)||e.reduceMixWeight()),delete this.context}replaceNode(e){var t;if(e!==this.node)try{this.node?this._disconnect():null==(t=this.context)||t.addMixWeight(),this.node=e,this.setChannelCount(this.node),this.preNodeReconnect(),this.reconnect()}catch(BA){MO.error(BA)}}setNode(e,t){var i;if(!this.node)try{null==(i=this.context)||i.addMixWeight(),this.node=e,this.setChannelCount(this.node),t&&(this.node2=t,this.setChannelCount(this.node2)),this.preNodeReconnect(),this.reconnect(),XO.addSuccessEvent({key:502701})}catch(r){MO.error(r),XO.addFailedEvent({key:502701,error:r})}}deleteNode(){var e;if(this.node)try{this._disconnect(),delete this.node,delete this.node2,null==(e=this.context)||e.reduceMixWeight(),this.preNodeReconnect(),XO.addSuccessEvent({key:502702})}catch(Sx){MO.error(Sx),XO.addFailedEvent({key:502702,error:Sx})}}preNodeReconnect(){this.pre.forEach(e=>{e.node?e.reconnect():e.preNodeReconnect()})}connectNext(e){this.next.forEach(t=>{let i=this.nextInputChannelMap.get(t);e._connect(t.node,i)||t.connectNext(e)})}_connect(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return!(!this.node||!e)&&((this.node2||this.node).connect(e,0,t),this.connectedNodes.add(e),!0)}_disconnect(){this.connectedNodes.forEach(e=>{var t;return null==(t=this.node2||this.node)?void 0:t.disconnect(e)}),this.connectedNodes.clear()}reconnect(){this._disconnect(),this.connectNext(this)}pipeTo(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.next.add(e),e.pre.add(this),this.nextInputChannelMap.set(e,t),e}},pP=class extends hP{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:256;super(),this.fftSize=e,AA(this,"dataArray",new Uint8Array(0))}setNode(e){e.fftSize=this.fftSize,this.dataArray=new Uint8Array(e.frequencyBinCount),super.setNode(e)}getByteTimeDomainData(){var e;return null==(e=this.node)||e.getByteTimeDomainData(this.dataArray),this.dataArray}get level(){var e;return null==(e=this.node)||e.getByteTimeDomainData(this.dataArray),Math.max(...this.dataArray)/128-1}get timeDomainPathData(){let e=this.getByteTimeDomainData(),t=0,i=0,r="M".concat(t,",").concat(i);for(let n=0;n<e.length;n++)i=e[n]/128*100/2,r+="L".concat(t,",").concat(i),t+=1;return r}},fP=class{constructor(){AA(this,"source",new hP),AA(this,"gain",new hP),AA(this,"destination",new hP)}get volume(){var e;return(null==(e=this.gain.node)?void 0:e.gain.value)||1}setVolume(e){1!==e?(this.gain.node||this.gain.setNode(uP().createGain()),this.gain.node.gain.value=e):this.gain.node&&this.gain.deleteNode()}replaceSource(e){let t=function(t){try{let e=mP.get(t);if(e)return e;let i=uP();if(t instanceof HTMLAudioElement)e=i.createMediaElementSource(t);else{if(!(t instanceof MediaStreamTrack))return t;e=i.createMediaStreamSource(new MediaStream([t]))}return mP.set(t,e),e}catch(e){if(!(mD&&e instanceof Error&&"NotSupportedError"===e.name))throw e;MO.warn(e)}}(e);t&&this.source.replaceNode(t)}get track(){var e;return null==(e=this.stream)?void 0:e.getAudioTracks()[0]}get stream(){var e;return null==(e=this.destination.node)?void 0:e.stream}},mP=new WeakMap;var gP=class e{constructor(e){AA(this,"_volume",0),AA(this,"_volumeDb",0),AA(this,"_log"),AA(this,"_scriptProcessorNode",null),AA(this,"_audioWorkletNode",null),AA(this,"_interval",200),AA(this,"ready",this.preload());let{log:t}=e;this._log=t,LO.on(NO.AUDIO_LEVEL_INTERVAL,this.handleAudioLevelInterval,this)}static get isRunning(){return Date.now()-e.lastMessageTime<2e3}get node(){return this._audioWorkletNode||this._scriptProcessorNode}preload(){if(!e.workletReady){let t='class VolumeMeterWorklet extends AudioWorkletProcessor{constructor(){super(),this.volume=0,this.intervalTime=200,this.tick=200,this.isStop=!1,this.cache=[],this.sentFirstInfo1=!1,this.unmute=!1,this.port.onmessage=t=>{var e=t.data;switch(e.name){case"chunk":this.cache.push(...e.data),this.sentFirstInfo1||(this.port.postMessage({cl:e.data.length}),this.sentFirstInfo1=!0);break;case"setIntervalTime":this.intervalTime=e.intervalTime;break;case"unmute":this.unmute=!0;break;case"stop":this.isStop=!0}}}process(t,s){t=t[0],s=s[0];if(t||s){if(this.isStop)return!1;var i=s&&s[0]?s[0].length:0,h=this.cache.length,a=(i<h?(s[0].set(this.cache.slice(0,i)),this.cache=this.cache.slice(i)):this.unmute&&s[0].set(t[0]),(i<h?s:t)[0]);if(a){let e=0;for(let t=0;t<a.length;++t)e=Math.max(Math.abs(a[t]),e);s=a.reduce((t,e)=>t+e*e,0)/a.length;this.volume=e,this.tick-=a.length,this.tick<0&&(this.tick+=this.intervalTime/1e3*sampleRate,this.port.postMessage({volume:this.volume,volumeDb:Math.max(10*Math.log10(s)+100,0)/100,cacheLen:h,outputLen:i}))}}return!0}}registerProcessor("volume-meter",VolumeMeterWorklet);';e.workletReady=async function(e,t){if(!e.audioWorklet)return Promise.reject("audioWorklet is not supported");try{await e.audioWorklet.addModule(t),MO.info("worklet addModule success")}catch(Sx){throw MO.info("worklet addModule catch error. ".concat(Sx.message)),Sx}}(e.audioContext,URL.createObjectURL(new Blob([t],{type:"application/javascript"})))}return e.workletReady.then(()=>this.initAudioWorklet()).catch(e=>(this._log.error("volumeMeter preload error: ".concat(e)),this.initScriptProcessor()))}initAudioWorklet(){if(!this._audioWorkletNode)try{this._audioWorkletNode=new AudioWorkletNode(e.audioContext,"volume-meter");let t=!1;this._audioWorkletNode.port.onmessage=i=>{e.lastMessageTime=Date.now(),this._volume=i.data.volume||0,this._volumeDb=i.data.volumeDb||0,!t&&i.data.cacheLen&&i.data.outputLen&&(this._log.warn("worklet play success"),t=!0)},this.handleAudioLevelInterval({interval:this._interval})}catch(t){this._log.error("volumeMeter init audio worklet error: ".concat(t)),SN.logFailedEvent({userId:this._log.userId,eventType:yR,error:t}),this.initScriptProcessor()}}initScriptProcessor(){if(!this._scriptProcessorNode)try{this._scriptProcessorNode=uP().createScriptProcessor(2048,1,1),this._scriptProcessorNode.onaudioprocess=t=>{e.lastMessageTime=Date.now();let i=t.inputBuffer.getChannelData(0),r=0;for(let e=0;e<i.length;++e)r+=i[e]*i[e];this._volume=Math.sqrt(r/i.length)||0}}catch(t){this._log.error("volumeMeter init script processor error: ".concat(t))}}destroy(){this._scriptProcessorNode&&(this._scriptProcessorNode.onaudioprocess=null),this._audioWorkletNode&&(this._audioWorkletNode.port.postMessage({name:"stop"}),this._audioWorkletNode.port.onmessage=null),this._audioWorkletNode=null,this._scriptProcessorNode=null,LO.off(NO.AUDIO_LEVEL_INTERVAL,this.handleAudioLevelInterval,this)}getInternalAudioLevel(){return this._volume}getCalculatedVolume(){return parseFloat(this._volume.toFixed(2))}getVolumeDb(){return Math.floor(100*this._volumeDb)}handleAudioLevelInterval(e){var t;let{interval:i}=e;this._interval=i,null==(t=this._audioWorkletNode)||t.port.postMessage({name:"setIntervalTime",intervalTime:i})}};AA(gP,"lastMessageTime",0),AA(gP,"audioContext",uP()),AA(gP,"workletReady");var vP=gP,_P=class extends hP{constructor(e){super(),AA(this,"_volumeMeter"),this._volumeMeter=new vP(e)}deleteNode(){super.deleteNode(),this._volumeMeter.destroy()}async init(){await this._volumeMeter.preload(),this.setNode(this._volumeMeter.node)}getCalculatedVolume(){return this._volumeMeter.getCalculatedVolume()}getInternalAudioLevel(){return this._volumeMeter.getInternalAudioLevel()}getVolumeDb(){return this._volumeMeter.getVolumeDb()}write(e){if(this.node){let t=e.allocationSize({planeIndex:0}),i=new Float32Array(t>>2);e.copyTo(i,{planeIndex:0}),this.node.port.postMessage({name:"chunk",data:i},[i.buffer]),e.close()}}},yP=TA(kA(),1),EP=e=>t=>t.deviceId===e,bP=class{constructor(e,t){AA(this,"kind"),AA(this,"type"),AA(this,"devices",[]),this.kind=e,this.type=t}update(e,t){let i=e.filter(e=>e.kind==="".concat(this.kind).concat(this.type.toLocaleLowerCase()));1===this.devices.length&&TP(this.devices[0])||t&&(i.forEach(e=>{if(e.deviceId&&!this.devices.find(EP(e.deviceId))){let i="".concat(this.kind).concat(this.type,"Added");MO.warn("".concat(i,": ").concat(JSON.stringify(e))),t.emit(i,e)}}),this.devices.forEach(e=>{if(e.deviceId&&!i.find(EP(e.deviceId))){let i="".concat(this.kind).concat(this.type,"Removed");MO.warn("".concat(i,": ").concat(JSON.stringify(e))),t.emit(i,e)}})),this.devices=i}hasDevice(e){return!!this.devices.find(t=>t.deviceId===e)}},wP=class extends yP.EventEmitter{constructor(){super(),AA(this,"audioInputs",new bP($A,"Input")),AA(this,"videoInputs",new bP(eR,"Input")),AA(this,"audioOutputs",new bP($A,"Output")),this.init(),navigator.mediaDevices&&(navigator.mediaDevices.addEventListener&&navigator.mediaDevices.addEventListener("devicechange",()=>this.update()),"ondevicechange"in navigator.mediaDevices||yN.run("interval",()=>{this.update()},{delay:1e4}))}init(){SP().then(e=>{this.audioInputs.update(e),this.videoInputs.update(e),this.audioOutputs.update(e)})}async update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=await SP(e);return this.audioInputs.update(t,this),this.videoInputs.update(t,this),this.audioOutputs.update(t,this),this}hasBlueTooth(){var e;if(1e3*(null==(e=uP())?void 0:e.outputLatency)>150)return!0;let t=["bluetooth","air","wireless","bt","tws","buds","headset","headphone"];return this.audioOutputs.devices.some(e=>t.some(t=>e.label.toLowerCase().includes(t)))||this.audioInputs.devices.some(e=>t.some(t=>e.label.toLowerCase().includes(t)))}},IP=zA||jA?null:new wP;function TP(e){return e.deviceId===e.groupId&&""===e.groupId}async function SP(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(rL()||!tL())return[];let t=await navigator.mediaDevices.enumerateDevices();if(0!==e){let r={audio:!1,video:!1};if(t.forEach(e=>{TP(e)&&(e.kind===hR?r.audio=!0:e.kind===pR&&(r.video=!0))}),2===e&&(r.audio=!1),1===e&&(r.video=!1),r.audio||r.video){let e;try{e=await navigator.mediaDevices.getUserMedia(r),r.audio&&dP()}catch(i){MO.debug("capture before getDevices failed: ",i)}t=await navigator.mediaDevices.enumerateDevices(),null==e||e.getTracks().forEach(e=>e.stop())}}return t.map((e,t)=>{let i={kind:e.kind,deviceId:e.deviceId,groupId:e.groupId,label:e.label||"".concat(e.kind,"_").concat(t)};return e.deviceId.length>0&&DP.add("".concat(e.deviceId,"_").concat(e.kind)),e.getCapabilities&&(i.getCapabilities=()=>e.getCapabilities()),i})}function AP(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return IP.update(e?1:0).then(e=>e.audioInputs.devices)}function RP(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return IP.update(e?2:0).then(e=>e.videoInputs.devices)}var kP=!1;async function CP(){try{kP||(kP=!0,MO.info("speakers:".concat((await async function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(uD||mO)&&(e=!1),IP.update(e?1:0).then(e=>e.audioOutputs.devices)}()).map(e=>" ".concat(e.deviceId.slice(0,8),": ").concat(e.label)))))}catch(oA){}}var DP=new Set;async function OP(e){let{newDeviceId:t,oldDeviceId:i,oldGroupId:r,oldLabel:n,kind:a}=e;return t===i&&(a!==$A||t!==bR||await async function(e,t){let i=(await AP()).find(e=>e.deviceId===bR);return!t&&(null==i?void 0:i.groupId)===e||(null==i?void 0:i.groupId)===e&&i.label===t}(r,n))}var LP,NP=class extends fP{constructor(e){super(),this.log=e,AA(this,"volumeMeter"),AA(this,"volumeMeterAfter3A"),AA(this,"volumeDestination"),AA(this,"analyser",new pP),this.volumeMeter=new _P({log:this.log}),this.volumeMeterAfter3A=new _P({log:this.log}),this.volumeDestination=new hP,this.volumeMeter.pipeTo(this.volumeDestination)}destroy(){this.gain.deleteNode(),this.volumeMeter.deleteNode(),this.analyser.deleteNode(),this.source.deleteNode(),this.destination.deleteNode(),this.volumeDestination.deleteNode()}},PP=class extends RN{constructor(e){super(e,$A),AA(this,"_outputDeviceId"),AA(this,"_floatVolume",1),AA(this,"_destination"),AA(this,"pipeline"),AA(this,"volumeMeterMode","worklet"),AA(this,"enableVolumeControlInIOS"),this.enableVolumeControlInIOS=e.enableVolumeControlInIOS,this.mode=0,e.url&&(this.url=e.url),this.pipeline=new NP(this._log)}setTrack(e){}get duration(){var e;return Math.floor(1e3*((null==(e=this.element)?void 0:e.duration)||0))}get currentTime(){var e;return Math.floor(1e3*((null==(e=this.element)?void 0:e.currentTime)||0))}set currentTime(e){this.element&&(this.element.currentTime=e/1e3)}getMediaStream(){return this.pipeline.stream||(this.track?new MediaStream([this.track]):null)}initializeElement(e){if(("15.2"===_O||"15.3"===_O||"15.4"===_O)&&this.muted)return void this._log.info("audioElement is muted.");let t=LP||new Audio;t.setAttribute("autoplay","autoplay"),t.srcObject=this.getMediaStream(),t.muted=this.muted,this.url&&(t.crossOrigin="anonymous",t.src=this.url),this.element=t,this.setVolume(Jk(e)?e/100:this._floatVolume),t===LP&&(LP=void 0),this.options.enableTimeupdateEvent&&(this.element.ontimeupdate=()=>this.emit(EN.TIME_UPDATE,this.currentTime)),this.bindElementEvents(),this._log.info("initializeElement")}async play(e){if(this.track||this.url){try{!this.pipeline.source.node&&this.track&&this.pipeline.replaceSource(this.track),this.element||this.initializeElement(null==e?void 0:e.volume),this._outputDeviceId&&await this.setSinkId(this._outputDeviceId),"worklet"===this.volumeMeterMode?(this.pipeline.volumeMeter.init(),this.pipeline.volumeMeterAfter3A.init()):"analyser"===this.volumeMeterMode&&this.pipeline.analyser.setNode(uP().createAnalyser()),CP()}catch(BA){throw this._log.warn("audio play error: ".concat(BA)),yO(_O,"18.7",!0)&&this.bindAutoPlayEvent(),BA}return super.play()}}stop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.pipeline.destroy(),super.stop(e)}setVolume(e){this._floatVolume=e,this.element&&(this.element.volume=e)}async setSinkId(e){var t,i;this._outputDeviceId!==e&&(this._outputDeviceId=e),this.element&&this.element.sinkId!==e&&await(null==(i=(t=this.element).setSinkId)?void 0:i.call(t,e))}get useDestination(){return!!this.pipeline.stream}setLoop(e){this.element&&(this.element.loop=e)}getAudioLevel(){return this.pipeline.volumeMeter.getCalculatedVolume()}getInternalAudioLevel(){return this.pipeline.volumeMeter.getInternalAudioLevel()}getInternalAudioLevelAfter3A(){return this.pipeline.volumeMeterAfter3A.getInternalAudioLevel()}},xP=class extends PP{constructor(e){super(e),AA(this,"_sourceElement"),AA(this,"_output",new hP),this.pipeline.source.pipeTo(this.pipeline.gain),this.pipeline.gain.pipeTo(this.pipeline.volumeMeter).pipeTo(this._output),this.pipeline.gain.pipeTo(this.pipeline.destination)}setOutput(){this.mode=1,this._output.setNode(uP().destination)}write(e){this.pipeline.volumeMeter.write(e)}setTrack(e){var t,i,r;(null==(i=null==(t=this.element)?void 0:t.error)?void 0:i.code)!==MediaError.MEDIA_ERR_DECODE&&this.track!==e&&(this.unbindTrackEvents(),this.track=e,this.emit(EN.MEDIA_TRACK_CHANGED,e),e?(this.bindTrackEvents(),this._sourceElement?this._sourceElement.srcObject=new MediaStream([e]):!this.useDestination&&this.element&&(this.element.srcObject=new MediaStream([e])),this.pipeline.source.channelCount=(null==(r=e.getSettings())?void 0:r.channelCount)||1,this.pipeline.replaceSource(e)):this.pipeline.source.deleteNode())}setVolume(e){var t;let i=e<=1&&!hD();if(this._floatVolume!==e||!(i&&(null==(t=this.element)?void 0:t.volume)===e||!i&&this.pipeline.volume===e))if(this._floatVolume=e,this.useDestination)this.pipeline.setVolume(e),this._log.info("set pipeline volume: ".concat(e));else if(i)this.element?(this._log.info("set element volume: ".concat(e)),this.element.volume=e):this._log.info("set element volume: no element");else{if(hD()){if(!this.enableVolumeControlInIOS)return;!function(){if(!uD||-1!==oP)return;let e=()=>{lC()-nP<500||($N&&"running"===$N.state&&$N.currentTime===aP&&(MO.warn("context is fake running, auto resume"),$N.suspend().catch(e=>{MO.warn("context suspend failed: ".concat(e))})),aP=$N.currentTime,nP=lC())};oP=setInterval(()=>{e()},2e3),document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&e()})}()}if(mD&&!this.pipeline.source.node)return void this._log.warn("set pipeline volume failed: no source node");this._log.info("start set pipeline volume: ".concat(e)),this.pipeline.setVolume(e),this.element&&!this._sourceElement&&(this._destination||(this._destination=uP().createMediaStreamDestination()),this.pipeline.destination.setNode(this._destination),TN(this.element),this._sourceElement=this.element,this._sourceElement.muted=!0,this.element=null,this.play().catch(e=>{this.emit(EN.AUTOPLAY_FAILED,e)}))}}stop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.pipeline.destroy();let t=this._sourceElement||this.element;t&&gO&&(LP=t),this._sourceElement&&(this._sourceElement.srcObject=null,delete this._sourceElement),super.stop(e)}},MP=class extends pN{constructor(e){let{userId:t,sdkAppId:i,mediaType:r,room:n,PlayerClass:a=(1===r?xP:QN)}=e;var o;super(),AA(this,"id",UO()),AA(this,"userId",""),AA(this,"isRemote"),AA(this,"mediaType"),AA(this,"room"),AA(this,"user"),AA(this,"_log"),AA(this,"_inputTrack"),AA(this,"_outputTrack"),AA(this,"isPlayCalled"),AA(this,"container",null),AA(this,"player"),AA(this,"subVideoPlayerMap"),AA(this,"muted",!1),AA(this,"abortCtrl"),AA(this,"objectFit","cover"),AA(this,"mirror"),AA(this,"rotation"),AA(this,"isScreen",!1),AA(this,"manager"),AA(this,"trackSettings"),AA(this,"isFirstVideoFrameEmitted",!1),this.userId=t||"",this.mediaType=r,this._log=MO.createLogger({parent:null==n?void 0:n.getLogger(),id:"".concat(this.kind[0],"t"),userId:null==(o=n||this.room)?void 0:o.userId,remoteUserId:this instanceof Dx?void 0:this.userId,sdkAppId:i,type:2===this.mediaType?"auxiliary":"main",isLocal:this instanceof Dx}),this.player=new a({id:this.userId||this.id,track:null,muted:!1,container:null,log:this._log,enableVolumeControlInIOS:null==n?void 0:n.enableVolumeControlInIOS}),this.player.on(EN.PLAYER_STATE_CHANGED,e=>{if(LO.emit(NO.PLAYER_STATE_CHANGED,yA({track:this},e)),this.emit("player-state-changed",e),"PLAYING"===e.state&&this.room){let e=!0;for(let{remoteAudioTrack:t,remoteVideoTrack:i,remoteAuxiliaryTrack:r}of[...this.room.remotePublishedUserMap.values()])if(t.isAvailable&&!t.player.isPlaying||i.isAvailable&&!i.player.isPlaying||r.isAvailable&&!r.player.isPlaying){e=!1;break}e&&GN()&&ZN&&ZN.deleteDialog()}}),this.kind===eR&&(this.player.on(EN.LOADED_DATA,()=>{this.emitFirstVideoFrameEvent(EN.LOADED_DATA),LO.emit(NO.VIDEO_LOADED_DATA,{track:this})}),this.player.on(EN.LOADED_META_DATA,()=>{this.emitFirstVideoFrameEvent(EN.LOADED_META_DATA)}),this.player.on(EN.MEDIA_TRACK_CHANGED,e=>{var t;null==(t=this.subVideoPlayerMap)||t.forEach(t=>t.setTrack(e))}),this.player.on(EN.RESIZE,e=>{this.emitFirstVideoFrameEvent(EN.RESIZE),this.emit("video-size-changed",yA({userId:this.userId,streamType:2===this.mediaType?"auxiliary":"main"},e))})),this.onTrackMuted=this.onTrackMuted.bind(this),this.onTrackUnmuted=this.onTrackUnmuted.bind(this),this.onTrackEnded=this.onTrackEnded.bind(this),this.onPlayerError&&this.player.on(EN.ERROR,this.onPlayerError.bind(this)),this.player.on(EN.AUTOPLAY_FAILED,this.handleAutoPlayFailed,this)}get log(){return this._log||MO}get kind(){return 1===this.mediaType?$A:eR}get isAudio(){return this.kind===$A}get strMediaType(){return 4===this.mediaType?eR:2===this.mediaType?tR:$A}get streamType(){return 2&this.mediaType?"auxiliary":"main"}get isMediaTrackActive(){return!!this.mediaTrack&&(!this.mediaTrack.muted&&"live"===this.mediaTrack.readyState&&this.mediaTrack.enabled)}async play(e,t){let i=eC(e)?e[0]:e;if(this.isPlayCalled)return this.log.info("play update options: ".concat(JSON.stringify(t))),t&&!Xk(t.muted)&&this.setPlayerMute(t.muted),t&&!Xk(t.objectFit)&&(this.objectFit=t.objectFit),void(this.player instanceof QN&&(this.player.setObjectFit(this.objectFit),this.container!==i&&i&&(eC(e)&&e.length>=1&&this.container&&e.includes(this.container)&&this.container.contains(this.player.elementToRender)?(e.splice(e.indexOf(this.container),1),e.unshift(this.container)):(this.container=i,this.player.setContainer(i))),eC(e)&&e.length>=1&&await this.playSubContainer(e.slice(1),t)));if(t&&!Xk(t.muted)?this.setPlayerMute(t.muted):(!this.isRemote||this.kind===eR)&&this.setPlayerMute(!0),t&&!Xk(t.objectFit)&&(this.objectFit=t.objectFit),this.player instanceof QN&&(Xk(null==t?void 0:t.isLiveStream)||this.player.setLiveMode(t.isLiveStream),this.player.setObjectFit(this.objectFit),t&&!Xk(t.poster)&&this.player.setPoster(t.poster)),this.isPlayCalled=!0,i&&(this.container=i,this.player instanceof QN&&this.player.setContainer(i)),LO.emit(NO.PLAY_TRACK_START,{track:this}),this._outputTrack){this._log.info("play with options: ".concat(JSON.stringify(t)));try{this.player.setTrack(this.playerMediaTrack),await this.player.play(t),eC(e)&&e.length>1&&await this.playSubContainer(e.slice(1),t)}catch(r){throw this.handleAutoPlayFailed(r),r}}else this.log.info("play has not mediaTrack, abort")}setMirror(e,t){if(this.isScreen||this.kind!==eR||Xk(e)||e===this.mirror)return;this.mirror=e;let i=this.player;t&&(i=t);let r=this.manager;if(Qk(this.mirror))return i.setViewMirror(this.mirror),void(!this.isRemote&&r&&(r.mirror=!1));switch(this.mirror){case"view":r&&(r.mirror=!1),i.setViewMirror(!0);break;case"publish":r&&(r.mirror=!0),i.setViewMirror(!0);break;case"both":r&&(r.mirror=!0),i.setViewMirror(!1)}}async playSubContainer(e,t){if(!this._outputTrack||this.kind===$A)return;this.subVideoPlayerMap||(this.subVideoPlayerMap=new Map),this.subVideoPlayerMap.forEach((t,i)=>{var r;e.find(e=>i===e)||(t.stop(),null==(r=this.subVideoPlayerMap)||r.delete(i))});for(let[r,n]of e.entries()){let e=this.subVideoPlayerMap.get(n);e?t&&(Xk(t.objectFit)||e.setObjectFit(t.objectFit)):this.subVideoPlayerMap.set(n,new QN({id:this.userId||this.id,track:this.playerMediaTrack,container:n,muted:this.player.muted,objectFit:this.objectFit,log:this.log.createChild({id:"vp-sub".concat(r+1)})}))}let i=[...this.subVideoPlayerMap.values()];for(let r of i)r.setViewMirror(this.player.mirror),await r.play()}setAudioOutput(e){return this.player.setSinkId(e)}setAudioVolume(e){this.player.setVolume(e)}getAudioLevel(){return this.player.getAudioLevel()||0}getInternalAudioLevel(){var e;return(null==(e=this.player)?void 0:e.getInternalAudioLevel())||0}stop(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.isPlayCalled&&(this.isPlayCalled=!1,this.isFirstVideoFrameEmitted=!1,this.player&&(this.log.info("stop ".concat(this.kind," player")),this.player.stop(QC(this)&&!e?this.jitterBufferDelay:0)),this.subVideoPlayerMap&&this.subVideoPlayerMap.size>0&&this.subVideoPlayerMap.forEach(e=>{e.stop()}),this.container=null)}async resume(){var e;this.isPlayCalled&&await(null==(e=this.player)?void 0:e.resume())}close(){this._toInitState(),this.log.info("close"),this.isPlayCalled&&this.stop(!0)}_toInitState(){}setMute(e){this.muted=e,this._inputTrack&&(this._inputTrack.enabled=!e),this._outputTrack&&(this._outputTrack.enabled=!e),this.emit(e?"mute":"unmute",this),LO.emit(e?NO.TRACK_MUTED:NO.TRACK_UNMUTED,{track:this})}setPlayerMute(e){this.player.setMuted(e)}get mediaTrack(){return this._inputTrack||null}get outMediaTrack(){return this._outputTrack||null}get playerMediaTrack(){return this.outMediaTrack}installTrackEvent(e){IN(e,e).add(rR,this.onTrackMuted).add(nR,this.onTrackUnmuted).add(aR,this.onTrackEnded),e.muted&&this.onTrackMuted(),e.readyState===aR&&this.onTrackEnded()}uninstallTrackEvent(e){TN(e)}setInputMediaStreamTrack(e){var t;let i=this._inputTrack;if(e!==i)return this._inputTrack=e,this.trackSettings=null==(t=e.getSettings)?void 0:t.call(e),e.enabled=!this.muted,i&&this.uninstallTrackEvent(i),this.installTrackEvent(e),this.emit("input-media-track-changed",e||null,i||null),this.manager?this.manager.changeInput(this):this.setOutputMediaStreamTrack(e)}setOutputMediaStreamTrack(e){var t;e!==this._outputTrack&&(this.isRemote?this.log.debug("setOutputMediaStreamTrack",e.label):this.log.info("setOutputMediaStreamTrack",null==(t=e.getSettings)?void 0:t.call(e).deviceId,e.label),this._outputTrack=e,this._inputTrack&&(this._outputTrack.contentHint=this._inputTrack.contentHint,this._outputTrack.enabled=this._inputTrack.enabled),this.updatePlayingState(!!e),this.emit("output-media-track-changed",e))}setMediaType(e){this.mediaType=e}updatePlayingState(e){var t,i;if(this.isPlayCalled)if(e){if(this.player.setTrack(this.playerMediaTrack),this.player.isStopped)return this.player.play().catch(e=>this.handleAutoPlayFailed(e)),void this.log.info("playing state updated, play ".concat(this.kind))}else if(!this.player.isStopped){if(QC(this)&&this.isAudio&&null!=(t=this.user)&&t.muteState.hasAudio&&null!=(i=this.user)&&i.muteState.audioMuted)return;return this.player.stop(QC(this)?this.jitterBufferDelay:0),void this.log.info("playing state updated, stop ".concat(this.kind))}this.log.debug("updatePlayingState abort ".concat(this.isPlayCalled," ").concat(e," ").concat(this.player.isStopped))}async handleAutoPlayFailed(e){var t;this.log.warn("handleAutoPlayFailed",e);let i=()=>{this.resume().then(()=>{document.removeEventListener("click",i,!0)})};if(this.room&&this.room.enableAutoPlayDialog){if((CD||LD)&&(await DC(100),null!=(t=this.player)&&t.isPlaying))return;ZN||(ZN=new XN)}else document.addEventListener("click",i,!0);LO.once(NO.LOCAL_TRACK_CAPTURE_SUCCESS,e=>{let{track:t}=e;"audio"===t.kind&&GN()&&!this.player.isPlaying&&this.isRemote&&this.isAvailable&&i()}),this.emit("error",e)}getVideoFrame(){return this.player instanceof QN?this.player.getVideoFrame():""}emitFirstVideoFrameEvent(e){var t,i,r;if(this.isFirstVideoFrameEmitted)return;let n=null==(t=this.mediaTrack)?void 0:t.getSettings(),a=(null==n?void 0:n.width)||(null==(i=this.player.element)?void 0:i.videoWidth)||0,o=(null==n?void 0:n.height)||(null==(r=this.player.element)?void 0:r.videoHeight)||0;e===EN.RESIZE&&!a&&!o||e===EN.LOADED_META_DATA&&!a&&!o||(e===EN.LOADED_DATA&&!a&&!o&&this._log.warn("the dimension of video is 0x0 in first-video-frame event"),this.isFirstVideoFrameEmitted=!0,xC(this.rotation)&&([a,o]=[o,a]),this.emit("first-video-frame",{width:a,height:o,streamType:this.streamType,userId:this.isRemote?this.userId:""}))}onTrackMuted(){this._log.warn("".concat(this.kind," track is unable to provide media output"))}onTrackUnmuted(){this._log.info("".concat(this.kind," track is able to provide media output"))}onTrackEnded(){this._log.warn("".concat(this.kind," track ended"))}};SA([dN([],pN.INIT,{sync:!0})],MP.prototype,"_toInitState",1);var UP=Object.prototype.hasOwnProperty;var BP=function(e){if(null==e)return!0;if("boolean"==typeof e)return!1;if("number"==typeof e)return 0===e;if("string"==typeof e||"function"==typeof e||Array.isArray(e))return 0===e.length;if(e instanceof Error)return""===e.message;if(Wk(e))switch(Object.prototype.toString.call(e)){case"[object File]":case"[object Map]":case"[object Set]":return 0===e.size;case"[object Object]":for(let t in e)if(UP.call(e,t))return!1;return!0}return!1},FP=eD({retryFunction:async function(e){let t=function(e){return{audio:HP(e),video:jP(e)}}(e);MO.info("getUserMedia with constraints: ".concat(JSON.stringify(t)));let i=[],r=[],n=["label","deviceId","groupId"];if(t.audio&&(i=await AP(),MO.info("microphones: ".concat(IC(i.map(e=>EA(yA({},e),{groupId:e.groupId.substring(0,8)})),{keysToInclude:n})))),t.video&&(r=await RP(),MO.info("cameras: ".concat(IC(r,{keysToInclude:n}))),!Qk(t.video)&&"user"===t.video.facingMode&&!t.video.deviceId)){let e=r.filter(e=>!e.label.includes("infrared")).find(e=>e.label.includes("facing front"));e&&(t.video.deviceId=e.deviceId,MO.info("exclude infrared camera: ".concat(JSON.stringify(t))))}try{let i=await navigator.mediaDevices.getUserMedia(t);return ML&&i.getTracks().forEach(t=>{var i;let r=t.getCapabilities();MO.info("".concat(t.kind," capabilities: ").concat(IC(r,{keysToInclude:IR}))),!Xk(e.echoCancellation)&&-1===(null==(i=r.echoCancellation)?void 0:i.indexOf(e.echoCancellation))&&MO.warn("Invalid argument for 'echoCancellation'. Expected one of [".concat(JSON.stringify(r.echoCancellation),"], but received '").concat(e.echoCancellation,"'"))}),t.audio&&dP(),i}catch(a){let{message:t}=a;throw"NotFoundError"===a.name&&(e.video&&r&&0===r.length&&(t=zO({key:FO.CAMERA_NOT_FOUND})),e.audio&&i&&0===i.length&&(t=zO({key:FO.MICROPHONE_NOT_FOUND}))),new rk({code:tk.INITIALIZE_FAILED,name:a.name,message:t,constraint:a.constraint})}},settings:{retries:3,timeout:500},onError:e=>{let{error:t,retry:i,reject:r,retryFuncArgs:n,retriedCount:a}=e,o=a+1;"NotReadableError"===t.name||"OverconstrainedError"===t.name||"AbortError"===t.name?(1===o?(n[0].video&&(n[0].maxResolution=!1,(!mO||n[0].width*n[0].height<=2073600)&&n[0].frameRate&&(n[0].frameRate=n[0].frameRate>10?10:5)),n[0].retryWhenExactFailed&&n[0].useExactDeviceId&&(n[0].useExactDeviceId=!1)):2===o?n[0].useDeviceIdOnly=!0:3===o&&!n[0].useExactDeviceId&&(n[0].useTrueAsConstraint=!0),i()):r(t),n[0].microphoneId&&VP(n[0].microphoneId,!1),n[0].cameraId&&VP(n[0].cameraId,!0)},onRetrying:e=>{MO.warn("getUserMedia NotReadableError observed, retrying [".concat(e,"/3]"))},onRetryFailed:e=>{SN.logFailedEvent({eventType:ER,error:e})},onRetrySuccess:e=>{SN.logSuccessEvent({eventType:ER}),SN.uploadEvent({log:"stat-".concat(ER,"-success-").concat(e)})}});async function VP(e,t){let i=(t?await RP():await AP()).find(t=>t.deviceId===e);i&&Yk(i.getCapabilities)&&MO.warn(IC(i.getCapabilities(),{keysToInclude:IR}))}function HP(e){if(!e.audio)return!1;if(e.useTrueAsConstraint)return!0;let t={echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,sampleRate:e.sampleRate};return!BP(e.microphoneId)&&(t.deviceId=e.useExactDeviceId?{exact:e.microphoneId}:e.microphoneId,e.useDeviceIdOnly)?t:(Jk(e.channelCount)&&(t.channelCount=e.channelCount),(Qk(e.echoCancellation)||"remote-only"===e.echoCancellation||"all"===e.echoCancellation)&&(t.echoCancellation=e.echoCancellation),Qk(e.noiseSuppression)&&!e.noiseSuppression&&(t.noiseSuppression=!1),Qk(e.autoGainControl)&&!e.autoGainControl&&(t.autoGainControl=!1),!!BP(t)||t)}function jP(e){if(!e.video)return!1;if(e.useTrueAsConstraint)return!0;let{maxResolution:t=!0}=e,i={};return e.cameraId?i.deviceId=e.useExactDeviceId?{exact:e.cameraId}:e.cameraId:e.facingMode&&(i.facingMode=e.facingMode),e.useDeviceIdOnly&&!BP(i)?i:(e.width&&(i.width={ideal:e.width},t&&!mD&&(i.width.max=e.width)),e.height&&(i.height={ideal:e.height},t&&!mD&&(i.height.max=e.height)),mD&&WD&&e.width&&e.height&&e.width*e.height<101376&&(i.width=e.width,i.height=e.height),e.frameRate&&(i.frameRate=e.frameRate),!!BP(i)||i)}var zP=FP,WP=(()=>{let e=!1,t=document.visibilityState;return()=>{document.visibilityState!==t&&MO.info("visibility change: ".concat(document.visibilityState)),!e&&(document.addEventListener("visibilitychange",()=>{MO.info("visibility change: ".concat(document.visibilityState)),t=document.visibilityState}),e=!0)}})(),GP=0,qP=class{constructor(e){AA(this,"log"),AA(this,"isRunning",!1),AA(this,"queue",[]);let t="fq".concat(++GP);e&&(t+="|".concat(e)),this.log=MO.createLogger({id:t})}get length(){return this.queue.length}get lastQueueItem(){return 0===this.length?null:this.queue[this.length-1]}push(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];var i,r;let n=yA({},e),a=new Promise((e,t)=>{n.resolve=e,n.reject=t});return n.promise=a,t?this.length<=1?this.queue.push(n):null==(r=null==(i=this.lastQueueItem)?void 0:i.promise)||r.then(n.resolve,n.reject):this.queue.push(n),this.log.debug("push ".concat(this.length),e.funcName,e.args),this.isRunning||this.callNext(),a}shift(){let e=this.queue.shift();return this.log.debug("shift ".concat(this.length),null==e?void 0:e.funcName,null==e?void 0:e.args),e}callNext(){if(this.isRunning||0===this.length)return;let{fn:e,args:t,context:i,resolve:r,reject:n,funcName:a}=this.queue[0];this.log.debug("callNext",this.length,a,t),this.isRunning=!0,e.apply(i,t).then(r,n).finally(()=>{this.isRunning=!1,this.shift(),this.callNext()})}},KP=new WeakMap;function YP(e,t){return xA((i,r)=>function(){let r=e;try{for(var n=arguments.length,a=new Array(n),o=0;o<n;o++)a[o]=arguments[o];let e=i.apply(this,a),s=lC();return rC(e)?e.then(e=>(t?XO.addSuccessEvent({key:r,cost:lC()-s}):XO.addSuccessEvent({key:r}),e)).catch(e=>{throw XO.addFailedEvent({key:r,error:e}),e}):(XO.addSuccessEvent({key:r}),e)}catch(FA){throw XO.addFailedEvent({key:r,error:FA}),FA}})}function XP(){}var ZP=e=>e();function JP(){this.dispose()}var QP=1,$P=class extends Function{toString(){return"".concat(this.name,"(").concat(this.args.length?[...this.args].join(", "):"",")")}subscribe(e){let t=new sx(e,this,this.streamId++);return cx.subscribe({id:this.id,end:!1},{nodeId:t.sourceId,streamId:t.id}),this(t),t}},ex=class{constructor(){this.defers=new Set,this.disposed=!1}next(e){}complete(){this.dispose()}error(e){this.dispose()}get bindDispose(){return()=>this.dispose()}dispose(){this.disposed=!0,this.complete=XP,this.error=XP,this.next=XP,this.dispose=XP,this.subscribe=XP,this.doDefer()}subscribe(e){return e instanceof $P?e.subscribe(this):e(this),this}get bindSubscribe(){return e=>this.subscribe(e)}doDefer(){this.defers.forEach(ZP),this.defers.clear()}defer(e){this.defers.add(e)}removeDefer(e){this.defers.delete(e)}reset(){this.disposed=!1,delete this.complete,delete this.next,delete this.dispose,delete this.next,delete this.subscribe}resetNext(){delete this.next}resetComplete(){delete this.complete}resetError(){delete this.error}},tx=class extends ex{constructor(e){super(),this.sink=e,e.defer(this.bindDispose)}next(e){this.sink.next(e)}complete(){this.sink.complete()}error(e){this.sink.error(e)}},ix=class extends ex{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:XP,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:XP,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:XP;if(super(),this._next=t,this._error=i,this._complete=r,this.then=XP,e instanceof $P){let n={toString:()=>"subscribe",id:0,source:e};this.defer(()=>{cx.defer(n,0)}),cx.create(n),cx.pipe(n),this.sourceId=n.id,this.subscribe(e),cx.subscribe({id:n.id,end:!0}),t==XP?this._next=e=>cx.next(n,0,e):this.next=e=>{cx.next(n,0,e),t(e)},r==XP?this._complete=()=>cx.complete(n,0):this.complete=()=>{this.dispose(),cx.complete(n,0),r()},i==XP?this._error=e=>cx.complete(n,0,e):this.error=e=>{this.dispose(),cx.complete(n,0,e),i(e)}}else this.subscribe(e)}next(e){this._next(e)}complete(){this.dispose(),this._complete()}error(e){this.dispose(),this._error(e)}};function rx(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return i.reduce((e,t)=>t(e),e)}function nx(e,t,i){if("undefined"!=typeof __FASTRX_DEVTOOLS__){let r=Object.defineProperties(Object.setPrototypeOf(e,$P.prototype),{streamId:{value:0,writable:!0,configurable:!0},name:{value:t,writable:!0,configurable:!0},args:{value:i,writable:!0,configurable:!0},id:{value:0,writable:!0,configurable:!0}});cx.create(r);for(let e=0;e<i.length;e++){let t=i[e];"function"==typeof t&&t instanceof $P&&cx.addSource(r,t)}return r}return e}function ax(e,t){return function(){for(var i=arguments.length,r=new Array(i),n=0;n<i;n++)r[n]=arguments[n];return i=>{if(i instanceof $P){let n=nx(t=>{let a=new e(t,...r);a.sourceId=n.id,a.subscribe(i)},t,arguments);return n.source=i,cx.pipe(n),n}return t=>i(new e(t,...r))}}}function ox(e,t){window.postMessage({source:"fastrx-devtools-backend",payload:{event:e,payload:t}})}var sx=class extends tx{constructor(e,t,i){super(e),this.source=t,this.id=i,this.sourceId=e.sourceId,this.defer(()=>{cx.defer(this.source,this.id)})}next(e){cx.next(this.source,this.id,e),this.sink.next(e)}complete(){cx.complete(this.source,this.id),this.sink.complete()}error(e){cx.complete(this.source,this.id,e),this.sink.error(e)}},cx={addSource(e,t){ox("addSource",{id:e.id,name:e.toString(),source:{id:t.id,name:t.toString()}})},next(e,t,i){ox("next",{id:e.id,streamId:t,data:i&&i.toString()})},subscribe(e,t){let{id:i,end:r}=e;ox("subscribe",{id:i,end:r,sink:{nodeId:t&&t.nodeId,streamId:t&&t.streamId}})},complete(e,t,i){ox("complete",{id:e.id,streamId:t,err:i?i.toString():null})},defer(e,t){ox("defer",{id:e.id,streamId:t})},pipe(e){ox("pipe",{name:e.toString(),id:e.id,source:{id:e.source.id,name:e.source.toString()}})},update(e){ox("update",{id:e.id,name:e.toString()})},create(e){e.id||(e.id=QP++),ox("create",{name:e.toString(),id:e.id})}},lx=class extends ex{constructor(e){super(),this.source=e,this.sinks=new Set}add(e){e.defer(()=>this.remove(e)),1===this.sinks.add(e).size&&(this.reset(),this.subscribe(this.source))}remove(e){this.sinks.delete(e),0===this.sinks.size&&this.dispose()}next(e){this.sinks.forEach(t=>t.next(e))}complete(){this.sinks.forEach(e=>e.complete()),this.sinks.clear()}error(e){this.sinks.forEach(t=>t.error(e)),this.sinks.clear()}};function dx(){return e=>{let t=new lx(e);if(e instanceof $P){let i=nx(e=>{t.add(e)},"share",arguments);return t.sourceId=i.id,i.source=e,cx.pipe(i),i}return nx(t.add.bind(t),"share",arguments)}}function ux(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return nx(e=>{let i=new tx(e),r=t.length;i.complete=()=>{0===--r&&e.complete()},t.forEach(i.bindSubscribe)},"merge",arguments)}function hx(e){let t=arguments,i=dx()(nx(t=>{i.next=e=>t.next(e),i.complete=()=>t.complete(),i.error=e=>t.error(e),e&&t.subscribe(e)},"subject",t));return i.next=XP,i.complete=XP,i.error=XP,i}function px(e,t){return i=>{let r=e=>i.next(e);i.defer(()=>t(r)),e(r)}}function fx(e,t){if("on"in e&&"off"in e)return nx(px(i=>e.on(t,i),i=>e.off(t,i)),"fromEvent",arguments);if("addListener"in e&&"removeListener"in e)return nx(px(i=>e.addListener(t,i),i=>e.removeListener(t,i)),"fromEvent",arguments);if("addEventListener"in e)return nx(px(i=>e.addEventListener(t,i),i=>e.removeEventListener(t,i)),"fromEvent",arguments);throw"target is not a EventDispachter"}var mx=ax(class extends tx{constructor(e,t,i){super(e),this.filter=t,this.thisArg=i}next(e){this.filter.call(this.thisArg,e)&&this.sink.next(e)}},"filter"),gx=ax(class extends tx{constructor(e,t){super(e),this.count=t}next(e){this.sink.next(e),0===--this.count&&(this.doDefer(),this.complete())}},"take"),vx=ax(class extends tx{constructor(e,t){super(e);let i=new tx(e);i.next=()=>{i.doDefer(),e.complete()},i.complete=JP,i.subscribe(t)}},"takeUntil"),_x=ax(class extends tx{constructor(e,t){super(e),this.f=t}next(e){this.f(e)||(this.next=super.next,this.next(e))}},"skipWhile"),yx=ax(class extends tx{constructor(e,t,i){super(e),this.mapper=t,this.thisArg=i}next(e){super.next(this.mapper.call(this.thisArg,e))}},"map"),Ex=class extends tx{constructor(e,t,i){super(e),this.data=t,this.context=i}next(e){let t=this.context.combineResults;t?this.sink.next(t(this.data,e)):this.sink.next(e)}tryComplete(){this.context.resetComplete(),this.dispose()}},bx=class e extends tx{constructor(e,t,i){super(e),this.makeSource=t,this.combineResults=i,this.index=0}subInner(t,i){let r=this.currentSink=new i(this.sink,t,this);this.complete===e.prototype.complete&&(this.complete=this.tryComplete),r.complete=r.tryComplete,r.subscribe(this.makeSource(t,this.index++))}complete(){this.sink.complete()}tryComplete(){this.currentSink.resetComplete(),this.dispose()}},wx=class extends Ex{},Ix=class extends bx{next(e){this.subInner(e,wx),this.next=e=>{this.currentSink.dispose(),this.subInner(e,wx)}}},Tx=ax(Ix,"switchMap");var Sx,Ax=function(e){return(t,i)=>e(()=>t,i)}(ax(Ix,"switchMapTo")),Rx=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:XP,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:XP,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:XP;return r=>new ix(r,e,t,i)},kx=ax(class extends tx{constructor(e,t){super(e),t instanceof Function?this.next=i=>{t(i),e.next(i)}:(t.next&&(this.next=i=>{t.next(i),e.next(i)}),t.complete&&(this.complete=()=>{t.complete(),e.complete()}),t.error&&(this.error=i=>{t.error(i),e.error(i)}))}},"tap"),Cx=((Sx=Cx||{})[Sx.AUTO_SWITCH_NEW_DEVICE=0]="AUTO_SWITCH_NEW_DEVICE",Sx[Sx.WAIT_CURRENT_DEVICE=1]="WAIT_CURRENT_DEVICE",Sx),Dx=class extends MP{constructor(e,t,i){super({mediaType:e,PlayerClass:t,room:i}),AA(this,"isRemote",!1),AA(this,"deviceId"),AA(this,"groupId",""),AA(this,"label",""),AA(this,"sourceTrack"),AA(this,"enableAutoSwitchWhenRecapturing",!0),AA(this,"_isRecapturing",!1),AA(this,"_lastRecaptureTime",0),AA(this,"_onMuteTimeoutId",-1),AA(this,"_encodeCheckTimeoutId",-1),AA(this,"recaptureMode",0),AA(this,"profile"),AA(this,"retryEncodeFailed")}get enableEncodeFrame(){return!1}get isPublishing(){return"publishing"===this.state.toString()}get isPublished(){return"publish"===this.state}get isUseCustomSource(){return!(!this.mediaTrack||this.sourceTrack===this.mediaTrack)}encodeFrame(e,t){throw new Error("Method not implemented.")}installTrackEvent(e){e.addEventListener(rR,this.onTrackMuted),e.addEventListener(nR,this.onTrackUnmuted),e.addEventListener(aR,this.onTrackEnded),e.muted&&this.onTrackMuted(),e.readyState===aR&&this.onTrackEnded()}uninstallTrackEvent(e){e.removeEventListener(rR,this.onTrackMuted),e.removeEventListener(nR,this.onTrackUnmuted),e.removeEventListener(aR,this.onTrackEnded)}setStateToReady(){}async capture(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];var i,r;let n=this.sourceTrack;try{let n,a=lC();LO.emit(NO.LOCAL_TRACK_CAPTURE_START,{track:this}),e.customSource?(n=new MediaStream,n.addTrack(e.customSource)):(t||null==(i=this.sourceTrack)||i.stop(),n=await zP(e));let o=n.getTracks()[0];return await this.setInputMediaStreamTrack(o),e.customSource||(this.sourceTrack=o,this.updateDeviceIdInUse(),this.listenDeviceChange()),LO.emit(NO.LOCAL_TRACK_CAPTURE_SUCCESS,{track:this,cost:lC()-a,profile:this.profile,room:null==(r=this.manager)?void 0:r.room}),n}catch(a){throw LO.emit(NO.LOCAL_TRACK_CAPTURE_FAILED,{track:this,error:a}),this.log.error("getUserMedia error observed ".concat(a)),a}finally{t&&(null==n||n.stop())}}setOutputMediaStreamTrack(e){var t;if(super.setOutputMediaStreamTrack(e),this.setStateToReady(),this.isPublishing||this.isPublished)return null==(t=this.room)?void 0:t.replaceTrack(this)}get hasFlag(){var e,t;let i=mC((null==(e=this.room)?void 0:e.localPublishFlag)||0,(null==(t=this.room)?void 0:t.userId)||"");return 4===this.mediaType&&i.hasVideo||1===this.mediaType&&i.hasAudio||2===this.mediaType&&i.hasAuxiliary}async publish(e,t){return this.room=e,this.room.localTracks.add(this),this.emit("4",{mediaType:this.strMediaType,state:"starting",prevState:"stopped"}),this.userId=e.userId,this._log.bindParent(e.getLogger()),await t,this._checkPublishFlag(e)}_checkPublishFlag(e){return new Promise(async(t,i)=>{var r,n,a,o,s;let c=()=>i(new rk({code:tk.API_CALL_ABORTED,message:"publish aborted"}));if(this.hasFlag||this.muted?t():((this.state===pN.INIT||"ready"===this.state)&&c(),rx(fx(e,"local-publish-flag-changed"),mx(()=>this.hasFlag),vx(ux(fx(this,pN.INIT),fx(this,"ready"))),Rx(t,i,c))),null!=(a=null==(n=null==(r=this.room)?void 0:r.networkQuality)?void 0:n.hadRecentBadUplink)&&a.call(n,2))return t();let l=e.heartbeatCount,d=(null==(s=null==(o=this.mediaTrack)?void 0:o.stats)?void 0:s.totalFrames)||0;this._encodeCheckTimeoutId=setTimeout(async()=>{var r,n,a,o,s,c,u,h;if(null!=(a=null==(n=null==(r=this.room)?void 0:r.networkQuality)?void 0:n.hadRecentBadUplink)&&a.call(n,2)||e.heartbeatCount-l<3)return t();if(this.isPublished||this.isPublishing){let e=this.kind===$A;if(null!=(o=this.mediaTrack)&&o.stats){let e=this.mediaTrack.stats.totalFrames||0;e-d===0&&this.log.warn("capture totalFrames is 0 during encode check, totalFrames",e)}if(!this.isMediaTrackActive)return this.emit("6",this),i(new rk({message:"".concat(this.strMediaType," encode failed, track is not active"),code:e?tk.AUDIO_ENCODE_FAILED:tk.VIDEO_ENCODE_FAILED}));let r=this.stat.bytesSent>0;if(XO[r?"addSuccessEvent":"addFailedEvent"]({key:e?503700:513702}),!e){let e={H264:513704,H265:513705,VP8:513706}[(null==(c=null==(s=this.room)?void 0:s.videoCodec)?void 0:c.toUpperCase())||"H264"];e&&XO[r?"addSuccessEvent":"addFailedEvent"]({key:e})}if(!r){if(XO.addEnum({key:e?503701:513703,value:DO()}),SN.uploadEvent({log:"stat-encode-failed-".concat(this.kind,"-").concat(RO()||OO()),userId:this.userId}),this.log.warn(e?"encode failed":"".concat(null==(h=null==(u=this.room)?void 0:u.videoCodec)?void 0:h.toUpperCase()," encode failed")),this.retryEncodeFailed&&(this.log.warn("retry encode"),await this.retryEncodeFailed(this),this.stat.bytesSent>0||this.hasFlag||(await DC(5e3),this.stat.bytesSent>0||this.hasFlag)))return t();this.emit("6",this),i(new rk({message:"".concat(this.strMediaType," encode failed"),code:e?tk.AUDIO_ENCODE_FAILED:tk.VIDEO_ENCODE_FAILED}))}}},1e4)})}unpublish(){this.room&&this.room.localTracks.delete(this),this.log.info("unpublish"),LO.emit(NO.LOCAL_TRACK_UNPUBLISHED,{track:this})}async updateDeviceIdInUse(){if(this.sourceTrack&&xL){let{deviceId:e,groupId:t}=this.sourceTrack.getSettings(),{label:i}=this.sourceTrack;await OP({newDeviceId:e,oldDeviceId:this.deviceId,oldGroupId:this.groupId,oldLabel:this.label,kind:this.kind})||(this.deviceId=e,this.label=i,t&&(this.groupId=t),SP().then(i=>{let r=i.find(i=>{let r=i.deviceId===e;return t&&(r=r&&i.groupId===t),r});r&&this.emit("2",r)}))}}setProfile(e){this.log.info("setProfile",e),Object.assign(this.profile,e)}isNeedToRecapture(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return!(!this.deviceId||!this.sourceTrack||this.kind===$A&&!function(e){if(e instanceof CanvasCaptureMediaStreamTrack||!(e instanceof MediaStreamTrack))return!1;let t=e.label.toLocaleLowerCase();if(t.includes("mic")||t.includes("麦克风"))return!0;let i="".concat(((null==e?void 0:e.getSettings())||{}).deviceId,"_").concat(hR);return!!DP.has(i)}(this.sourceTrack)||this.kind===eR&&!function(e){if(e instanceof CanvasCaptureMediaStreamTrack||!(e instanceof MediaStreamTrack))return!1;let t=e.label.toLocaleLowerCase();if(t.includes("camera")||t.includes("webcam"))return!0;let i="".concat(((null==e?void 0:e.getSettings())||{}).deviceId,"_").concat(pR);return!!DP.has(i)}(this.sourceTrack)||this._isRecapturing||e&&WD&&mO)}onTrackMuted(){if(super.onTrackMuted(),WP(),this.isNeedToRecapture(!0)){if(Date.now()-this._lastRecaptureTime<wR)return void setTimeout(()=>this.onTrackMuted(),wR);this._onMuteTimeoutId=setTimeout(async()=>{var e;if(null!=(e=this.sourceTrack)&&e.muted){if((uD||pD)&&"visible"!==document.visibilityState)return;this.recapture(await this.getRecoverCaptureDeviceId())}},5e3)}}onTrackUnmuted(){super.onTrackUnmuted(),this._onMuteTimeoutId>0&&clearTimeout(this._onMuteTimeoutId)}async onTrackEnded(){if(super.onTrackEnded(),this.isNeedToRecapture()&&0===this.recaptureMode){if(Date.now()-this._lastRecaptureTime<wR)return void setTimeout(()=>this.onTrackEnded(),wR);this.emit("7"),this.recapture(await this.getRecoverCaptureDeviceId())}}async recapture(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];var i;if(this._isRecapturing||!this.sourceTrack)return;this.log.warn("recapture trying");let r=this.sourceTrack;t||null==(i=this.sourceTrack)||i.stop(),this._isRecapturing=!0,this._lastRecaptureTime=Date.now();let n={useExactDeviceId:!0};if("user"===e||"environment"===e)n.facingMode=e;else{let t;("audio"===this.kind?await AP():await RP()).find(t=>t.deviceId===e)&&(t=e),n.deviceId=t}return this.capture(n,t).then(()=>{this._isRecapturing=!1,this.log.warn("recapture success"),this.emit("1",{deviceId:this.deviceId}),LO.emit(NO.LOCAL_TRACK_RECAPTURE,{track:this})}).catch(e=>{this._isRecapturing=!1,this.log.warn("recapture failed ".concat(e.message)),this.emit("5",e),LO.emit(NO.LOCAL_TRACK_RECAPTURE,{track:this,error:e})}).finally(()=>{t&&(null==r||r.stop())})}async getRecoverCaptureDeviceId(){let e=this instanceof xx;if(e&&this.facingMode)return this.facingMode;let{deviceId:t}=this;if(t){let i=(Ox.get(t)||0)+1;if(Ox.set(t,i),i>=3&&this.enableAutoSwitchWhenRecapturing){let r=e?(await RP()).find(e=>!Ox.has(e.deviceId)):(await AP()).find(e=>!Ox.has(e.deviceId));r&&(this.log.warn("".concat(t," capture fail ").concat(i," times, change new ").concat(r.deviceId)),t=r.deviceId)}}return t}stopCapture(){var e;this.sourceTrack&&(this.sourceTrack.stop(),LO.emit(NO.LOCAL_TRACK_STOPPED,{track:this}),this.uninstallTrackEvent(this.sourceTrack)),this._inputTrack&&this.uninstallTrackEvent(this._inputTrack),null==(e=this.manager)||e.removeInput(this),this._onMuteTimeoutId&&clearTimeout(this._onMuteTimeoutId)}close(){super.close(),this.stopCapture()}};SA([dN(pN.INIT,"ready",{ignoreError:!0,sync:!0})],Dx.prototype,"setStateToReady",1),SA([function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return function(t,i,r){let n=r.value;return r.value=function(){let t=KP.get(this)||new qP;for(var r=arguments.length,a=new Array(r),o=0;o<r;o++)a[o]=arguments[o];return KP.set(this,t),t.push({fn:n,args:a,context:this,funcName:i},e)},r}}()],Dx.prototype,"capture",1),SA([dN("ready","publish",{ignoreError:!0,success(){LO.emit(NO.LOCAL_TRACK_PUBLISHED,{track:this,room:this.room}),this.emit("4",{mediaType:this.strMediaType,state:"started",prevState:"starting"}),this.log.info("published")},fail(e){var t;null==(t=this.room)||t.localTracks.delete(this);let i="error",r=e instanceof rk?e:e.cause instanceof rk?e.cause:e,n=!1;r instanceof rk&&(r.message.includes("timeout")?i="timeout":r.code===tk.API_CALL_ABORTED&&(n=!0,i="api-call")),this.emit("4",{mediaType:this.strMediaType,state:"stopped",prevState:"starting",reason:i,error:r}),this.log[n?"info":"error"]("publish failed",r)}}),YP(521714,!1)],Dx.prototype,"publish",1),SA([xA(e=>async function(){let t="publish"===this.state?"started":"starting";e.call(this),this.emit("4",{mediaType:this.strMediaType,state:"stopped",prevState:t,reason:"api-call"}),clearTimeout(this._encodeCheckTimeoutId)}),dN([],"ready",{sync:!0})],Dx.prototype,"unpublish",1);var Ox=new Map;LO.on(NO.SWITCH_DEVICE_SUCCESS,e=>{e.track.deviceId&&Ox.delete(e.track.deviceId)});var Lx=class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.dataView=e,this.isSEI&&(t?this.addPreventionByte():this.removePreventionByte())}addPreventionByte(){let{seiPayloadStartIndex:e}=this,t=this.dataView.byteLength-2,i=[],r=0;for(let a=e;a<=t;a++){let e=this.dataView.getInt8(a);switch(e){case 0:case 1:case 2:case 3:2===r&&(i.push(3),r=0),0===e?r+=1:r=0,i.push(e);break;default:r=0,i.push(e)}}i.push(this.dataView.getInt8(this.dataView.byteLength-1));let n=new DataView(new Uint8Array([...new Uint8Array(this.dataView.buffer).slice(0,e),...i]).buffer);this.dataView=n}removePreventionByte(){let{seiPayloadStartIndex:e}=this,t=this.dataView.byteLength-1,i=[],r=0;for(let a=e;a<=t;a++)switch(this.dataView.getInt8(a)){case 0:r++,i.push(this.dataView.getInt8(a));break;case 3:2!==r&&i.push(this.dataView.getInt8(a)),r=0;break;default:i.push(this.dataView.getInt8(a)),r=0}let n=new DataView(new Uint8Array([...new Uint8Array(this.dataView.buffer).slice(0,e),...i]).buffer);this.dataView=n}get seiPayloadStartIndex(){let e=6;for(let t=6;t<this.dataView.buffer.byteLength&&(e+=1,255===this.dataView.getUint8(t));t+=1);return e}get seiPayloadType(){return this.isSEI?this.dataView.getUint8(5):null}get seiPayload(){if(!this.isSEI)return null;let e=0,t=6;for(let a=6;a<this.dataView.buffer.byteLength;a+=1){let i=this.dataView.getUint8(a);if(t+=1,255!==i){e+=i;break}e+=255}let i=new ArrayBuffer(e),r=new DataView(i),n=t;for(let a=0;a<i.byteLength;a+=1)r.setInt8(a,this.dataView.getInt8(n+a));return r}get naluType(){let e=this.getStartCodeLength();return e>=this.dataView.byteLength?0:31&this.dataView.getUint8(e)}getStartCodeLength(){return this.dataView.byteLength>=4&&0===this.dataView.getUint8(0)&&0===this.dataView.getUint8(1)&&0===this.dataView.getUint8(2)&&1===this.dataView.getUint8(3)?4:this.dataView.byteLength>=3&&0===this.dataView.getUint8(0)&&0===this.dataView.getUint8(1)&&1===this.dataView.getUint8(2)?3:0}get isIDR(){return 5===this.naluType}get isSPS(){return 7===this.naluType}get isPPS(){return 8===this.naluType}get isSEI(){return 6===this.naluType}},Nx=class{constructor(){AA(this,"_seiMessageList",[]),AA(this,"_smallSeiMessageList",[]),AA(this,"_seiPayloadType",243)}encodeSEINalu(e){let t=e.byteLength,i=parseInt(String(t/255),10),r=t%255,n=[];n.push(0,0,0,1,6,this._seiPayloadType);for(let o=0;o<i;o++)n.push(255);n.push(r);let a=new DataView(e);return n.push(...new Uint8Array(a.buffer)),n.push(128),new Lx(new DataView(new Uint8Array(n).buffer),!0)}sendSEI(e,t){null!=t&&t.seiPayloadType&&(this._seiPayloadType=t.seiPayloadType),this._seiMessageList.push(e),null!=t&&t.small&&this._smallSeiMessageList.push(e)}isEmpty(){return!this._seiMessageList.length}getNaluCount(e){let t=0,i=0,r=new DataView(e);for(let n=0;n<e.byteLength;n++)switch(r.getUint8(n)){case 0:t++;break;case 1:(2===t||3===t)&&i++,t=0;break;default:t=0}return i}encode(e,t){let i=t?this._smallSeiMessageList:this._seiMessageList;if(i.length>0&&e.data.byteLength>0){let t=9-this.getNaluCount(e.data);if(t<=0)return 0;let r=i.splice(0,t).reverse().map(this.encodeSEINalu.bind(this)),n=r.reduce((e,t)=>e+t.dataView.byteLength,0),a=new ArrayBuffer(n+e.data.byteLength),o=new DataView(a),s=new DataView(e.data),c=0;for(let e=0;e<r.length;e++)for(let t=0;t<r[e].dataView.byteLength;t++)o.setInt8(c++,r[e].dataView.getInt8(t));for(let i=0;i<e.data.byteLength;i++)o.setInt8(c++,s.getInt8(i));return e.data=a,r.length}return 0}},Px=class e extends Dx{constructor(e){super(arguments.length>1&&void 0!==arguments[1]?arguments[1]:4,QN,null==e?void 0:e.room),AA(this,"profile",yA({},JA)),AA(this,"avoidCropping",!1),AA(this,"_scaleResolutionDownBy"),AA(this,"stat",{bytesSent:0,packetsSent:0,framesEncoded:0,framesSent:0,frameWidth:0,frameHeight:0,fpsCapture:0,framesCaptured:0}),AA(this,"small"),AA(this,"isNeedToSetBandwidth"),AA(this,"muteImage"),AA(this,"manager"),AA(this,"_seiCodec",new Nx),this.manager=e;let t=()=>{var e;if(this.isAllowed2k4k(this.profile))this.room&&this.settings.height>=1440&&"publish"===this.state&&this.room.sendAbilityStatus({"2k4k":1});else{let t=kk((null==(e=this.room)?void 0:e.sdkAppId)||0)?qA:GA;this.log.warn("Resolution is reset to 1080p, need to upgrade ability here ".concat(t)),this.setProfile(EA(yA({},this.profile),{width:1920,height:1080})),this.applyProfile()}};this.on("input-media-track-changed",t),this.on("publish",t),this.handleCameraAdded=this.handleCameraAdded.bind(this),this.handleCameraRemoved=this.handleCameraRemoved.bind(this)}get facingMode(){if(xL&&this.mediaTrack)return this.mediaTrack.getSettings().facingMode}get contentHint(){var e,t;return(null==(e=this._inputTrack)?void 0:e.contentHint)||(null==(t=this.outMediaTrack)?void 0:t.contentHint)||""}get isQosClearFirst(){var e;return"detail"===(null==(e=this._inputTrack)?void 0:e.contentHint)}get hasSmall(){var e;return!(null==(e=this.manager)||!e.hasSmall)}async setMute(e){var t,i,r;if(Zk(e)){if(this.muteImage===e)return;await(null==(t=this.manager)?void 0:t.deleteWatermark("mute")),await(null==(i=this.manager)?void 0:i.setWatermark({x:0,y:0,width:this.settings.width,height:this.settings.height,type:"mute",zIndex:999,imageUrl:e,fillVideo:!0})),this.muteImage=e,super.setMute(!1)}else this.muteImage&&(await(null==(r=this.manager)?void 0:r.deleteWatermark("mute")),this.muteImage=void 0),super.setMute(e)}async capture(e){let{deviceId:t,facingMode:i,useExactDeviceId:r=!0,customSource:n,retryWhenExactFailed:a=!0}=e,o={audio:!1,video:!0,facingMode:i||this.facingMode,cameraId:t,width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate,useExactDeviceId:r,retryWhenExactFailed:a,customSource:n};if("environment"===o.facingMode){let e=await this.getDeviceIdWhenUsingBackCamera();e&&(o.cameraId=e)}return super.capture(o)}setProfile(e){var t;let i=this.fallbackProfile(e);if(i.bitrate&&(this.isNeedToSetBandwidth=i.bitrate!==this.profile.bitrate),this.isAllowed2k4k(this.profile))super.setProfile(i);else{let e=kk((null==(t=this.room)?void 0:t.sdkAppId)||0)?qA:GA;this.log.warn("Resolution is reset to 1080p, need to upgrade ability here ".concat(e)),super.setProfile(EA(yA({},this.profile),{width:1920,height:1080}))}}async applyProfile(){var e;if(!this.mediaTrack)return;let{width:t=0,height:i=0}=(this.sourceTrack||this.mediaTrack).getSettings(),r=t*i,n=this.settings,a=n.height!==this.profile.height||n.width!==this.profile.width||n.frameRate!==this.profile.frameRate;if(a&&(16===EO&&this.deviceId?await this.recapture(this.deviceId):(await(null==(e=this.sourceTrack||this.mediaTrack)?void 0:e.applyConstraints({width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate})),this.manager&&this.manager.changeInput(this)),this.room&&this.settings.height>=1440&&"publish"===this.state&&this.room.sendAbilityStatus({"2k4k":1})),this.isNeedToSetBandwidth&&this.room&&this.room.setBandWidth){this.isNeedToSetBandwidth=!1;let{width:e=0,height:t=0}=(this.sourceTrack||this.mediaTrack).getSettings(),i=e*t;return a&&i&&r&&i===r?void this.log.warn("set bandwidth failed: resolution is not changed"):this.room.setBandWidth({bandwidth:this.profile.bitrate,type:eR,videoType:iR})}}get settings(){let e={width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate},t=this.sourceTrack||this.mediaTrack;return xL&&t&&Object.assign(e,t.getSettings()),e}get scaleResolutionDownBy(){return this._scaleResolutionDownBy?this._scaleResolutionDownBy:PC(this.settings,this.profile)}isAllowed2k4k(e){var t;return!(this.room&&this.room.scheduleResult&&!this.isScreen&&!(e.height*e.width<3686400))||1===(null==(t=this.room.scheduleResult.trtcAutoConf)?void 0:t["2k4k"])}isNeedToSwitchDevice(e){return!(!this.mediaTrack||this.deviceId===e||this.facingMode===e)}async switchDevice(e){try{if(!this.isNeedToSwitchDevice(e)&&!this.isUseCustomSource)return;let t={useExactDeviceId:!0,retryWhenExactFailed:!1};"user"===e||"environment"===e?t.facingMode=e:t.deviceId=e,this.sourceTrack&&this.sourceTrack.stop(),await this.capture(t),LO.emit(NO.SWITCH_DEVICE_SUCCESS,{track:this}),this.log.info("switch camera success")}catch(BA){throw this.log.error("switch camera failed ".concat(BA)),this.deviceId&&this.recapture(this.deviceId),BA}}async getDeviceIdWhenUsingBackCamera(){let e;try{if(JD&&!oO&&UL){let t=(await RP(!0)).map(e=>{var t;return EA(yA({},e),{capabilities:null==(t=e.getCapabilities)?void 0:t.call(e)})}).filter(e=>{var t,i;return null==(i=null==(t=e.capabilities)?void 0:t.facingMode)?void 0:i.includes("environment")}),i=t[0];t.forEach(e=>{var t,r,n,a;let{capabilities:o}=e;(null!=(t=o.width)&&t.max&&null!=(r=o.height)&&r.max?o.width.max*o.height.max:0)>(null!=(n=i.capabilities.width)&&n.max&&null!=(a=i.capabilities.height)&&a.max?i.capabilities.width.max*i.capabilities.height.max:0)&&(i=e)}),null!=i&&i.capabilities&&(this._log.info("use max resolution back camera",i),e=i.deviceId)}}catch(BA){this._log.warn("get max res camera failed",BA)}return e}async updateSmallConfig(e){var t,i;this._log.info("update small stream config: ".concat(JSON.stringify(e)));let r=!this.small;this.small=this.fallbackProfile(e,!0),await(null==(t=this.manager)?void 0:t.update()),r&&await(null==(i=this.room)?void 0:i.enableSmall(!0)),this.log.info("update small stream config success")}fallbackProfile(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=e.width>e.height,r=yA({},e);return e.width*e.height<=19200&&pD&&lO&&(this.log.warn("".concat(t?"small ":"","resolution is ").concat(e.width,"*").concat(e.height,", fallback to 240*180 for android chrome")),r.width=i?240:180,r.height=i?180:240,r.bitrate=Math.max(e.bitrate,150)),e.width*e.height>921600&&wO&&(r.width=i?1280:720,r.height=i?720:1280,this.log.warn("reset to 1280 * 720 on iOS 13~14")),function(e,t){let i=e.split(".").map(e=>Number(e)),r=t.split(".").map(e=>Number(e));for(let n=0;n<Math.max(i.length,r.length);n++){let e=i[n]||0,t=r[n]||0;if(e<t)return!0;if(e>t)return!1}return!1}(_O,"14.3")&&yO(_O,"14.0",!0)&&this.on("7",()=>{let e=this.profile.width>this.profile.height;this.profile.width*this.profile.height>307200?(this.profile.width=e?640:480,this.profile.height=e?480:640,this.log.warn("reduce the resolution to 480p on iOS 14.0 ~ 14.2")):this.profile.width*this.profile.height>230400&&(this.profile.width=e?640:360,this.profile.height=e?360:640,this.log.warn("reduce the resolution to 360p on iOS 14.0 ~ 14.2"))}),!t&&this.avoidCropping&&(lO||mD)&&!(pD||uD||lD||sD||oO)&&e.width*e.height<=230400&&e.width/e.height===16/9&&(this._scaleResolutionDownBy=1280/e.width,r.width=1280,r.height=720,this.log.warn("capture 720p, scale: ".concat(this._scaleResolutionDownBy))),r}stopSmall(){var e,t;this.small&&(delete this.small,null==(e=this.manager)||e.update(),null==(t=this.room)||t.enableSmall(!1))}listenDeviceChange(){IP&&!IP.listeners("videoInputRemoved").includes(this.handleCameraRemoved)&&IP.on("videoInputRemoved",this.handleCameraRemoved,this)}async handleCameraRemoved(e){if(e.deviceId===this.deviceId){let t=1===this.recaptureMode;if(this.log.warn("RecaptureMode: ".concat(Cx[this.recaptureMode],". Current camera is lost: ").concat(JSON.stringify(e))),0===this.recaptureMode){aM(this.userId,{eventId:2003,param1:7,streamType:2});let e=await RP();e[0]?this.recapture(e[0].deviceId):t=!0}t&&IP.on("videoInputAdded",this.handleCameraAdded,this)}}async handleCameraAdded(e){1===this.recaptureMode&&e.deviceId!==this.deviceId||(IP.off("videoInputAdded",this.handleCameraAdded,this),this.log.warn("camera added: ".concat(JSON.stringify(e))),this.recapture(e.deviceId))}encodeFrame(e,t){if(!this.manager)return e;let i=t?8:this.mediaType;return this.manager.encodePipeline.reduceRight((e,t)=>t?t({frame:e,mediaType:i}):e,e)}get enableEncodeFrame(){return!!this.manager&&this.manager.encodePipeline.some(e=>e)}play(e,t){return Xk(this.mirror)&&!this.isScreen&&this.setMirror("view"),super.play(e,t)}close(){IP.off("videoInputAdded",this.handleCameraAdded,this),IP.off("videoInputRemoved",this.handleCameraRemoved,this),super.close()}async recapture(e){try{await super.recapture(e)}catch(BA){let i=(await RP()).find(t=>t.deviceId!==e);if(!i)throw BA;await super.recapture(i.deviceId)}}setContentHint(e){this.mediaTrack&&"contentHint"in this.mediaTrack&&this.mediaTrack.contentHint!==e&&(this.log.info("setContentHint ".concat(e)),this.mediaTrack.contentHint=e),this.outMediaTrack&&this.outMediaTrack.contentHint!==e&&(this.outMediaTrack.contentHint=e)}setRotation(e){this.manager&&(this.isScreen||Xk(e)||e!==this.rotation&&(this.rotation=e,this.manager.rotation=e))}setOutputMediaStreamTrack(t){let i=this._outputTrack;if(!(this instanceof e&&zC(i,this.room)))return super.setOutputMediaStreamTrack(t)}};SA([PA(function(e){this.setContentHint(e.contentHint||"motion")})],Px.prototype,"capture",1);var xx=Px,Mx=[-1,-1,1,-1,-1,1,1,1],Ux=[0,0,1,0,0,1,1,1],Bx=class e extends pN{constructor(e,t){if(super(),this.context=e,AA(this,"name"),AA(this,"input"),AA(this,"output"),AA(this,"texture"),AA(this,"ctx2d",null),AA(this,"fbo"),AA(this,"width",0),AA(this,"height",0),AA(this,"x",0),AA(this,"y",0),AA(this,"program"),AA(this,"vertexShader"),AA(this,"fragmentShader"),AA(this,"totalFrames",0),AA(this,"dropFrames",0),AA(this,"matchInputSize",!0),AA(this,"texCoordBuffer"),AA(this,"positionBuffer"),AA(this,"lastInfo",{name:"",timestamp:0,totalFrames:0,x:0,y:0,width:0,height:0,fps:0}),AA(this,"cost",0),AA(this,"_canvas",null),AA(this,"_image"),AA(this,"log"),this.context.on("disconnect",this.close,this),this.name=t.name,this.log=t.logger,this.matchInputSize=!1!==t.matchInputSize,this.width=t.width||e.width,this.height=t.height||e.height,this._image=t.image,e instanceof Jx)e.ctx&&t.create2d&&("function"==typeof OffscreenCanvas&&16!==EO?this._canvas=new OffscreenCanvas(this.width,this.height):(this._canvas=document.createElement("canvas"),this._canvas.width=this.width,this._canvas.height=this.height),this.ctx2d=this._canvas.getContext("2d"),this._image=this._canvas);else try{let i=e.ctx;this.texCoordBuffer=this.createBuffer(Ux),this.positionBuffer=this.createBuffer(Mx),!1!==t.createTexture&&(this.texture=i.createTexture(),this.useTexture(),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MAG_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,i.CLAMP_TO_EDGE),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,i.CLAMP_TO_EDGE),i.pixelStorei(i.UNPACK_ALIGNMENT,1)),t.useFbo&&(this.fbo=i.createFramebuffer(),this.useBufferFrame(),this.useTexture(),i.texImage2D(i.TEXTURE_2D,0,i.RGBA,this.width,this.height,0,i.RGBA,i.UNSIGNED_BYTE,null),i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,this.texture,0)),t.useDefaultProgram?this.program=e.defaultProgam:(t.vertexShaderSource||t.fragmentShaderSource)&&(this.vertexShader=t.vertexShaderSource?e.createShader(i.VERTEX_SHADER,t.vertexShaderSource):e.defaultVShader,this.fragmentShader=t.fragmentShaderSource?e.createShader(i.FRAGMENT_SHADER,t.fragmentShaderSource):e.defaultFShader,this.program=e.createProgram(this.vertexShader,this.fragmentShader))}catch(i){this.context.destroy(new rk({code:tk.VIDEO_MANAGER_ERROR,extraCode:3,message:"create video node ".concat(this.name," error ").concat(i.message||i)}))}}get image(){return this._image}set image(e){this._image=e}createFramebuffer(e){let t=this.context.ctx,i=t.createFramebuffer();return t.bindFramebuffer(t.FRAMEBUFFER,i),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,e,0),i}connect(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return e.addInput(this,...i),this.output=e,e}addInput(e){this.input=e,this.matchInputSize&&e.width&&e.height&&this.resize(e.width,e.height)}requestFrame(e){let t=Date.now();return!!(this.context instanceof Zx&&this.render(e)||this.context instanceof Jx&&this.render2d(e))&&(this.totalFrames++,this.cost=Date.now()-t,!0)}render2d(e){var t;return!(null==(t=this.input)||!t.requestFrame(e))&&this.draw2d(this.input.image,0,0,this.width,this.height)}update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;var t;null==(t=this.output)||t.update(e)}disconnect(){for(var e,t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];null==(e=this.output)||e.removeInput(this,...i),delete this.output}removeInput(e){delete this.input}close(){var e,t;if(this.context.off("disconnect",this.close,this),null==(e=this.output)||e.removeInput(this),delete this.output,null==(t=this.input)||t.disconnect(),this.context instanceof Zx){let e=this.context.ctx;e.deleteBuffer(this.texCoordBuffer),e.deleteBuffer(this.positionBuffer),this.fbo&&e.deleteFramebuffer(this.fbo),this.texture&&e.deleteTexture(this.texture),this.vertexShader&&this.vertexShader!==this.context.defaultVShader&&e.deleteShader(this.vertexShader),this.fragmentShader&&this.fragmentShader!==this.context.defaultFShader&&e.deleteShader(this.fragmentShader),this.program&&this.program!==this.context.defaultProgam&&e.deleteProgram(this.program)}this._canvas&&(this._canvas.width=0,this._canvas.height=0,this.ctx2d=null),this.removeAllListeners()}useTexture(){this.useTextures(this.texture)}useInputTexture(){var e;this.useTextures(null==(e=this.input)?void 0:e.texture)}useTextures(){let e=this.context.ctx;for(var t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];i.forEach((t,i)=>{t&&(e.activeTexture(e.TEXTURE0+i),e.bindTexture(e.TEXTURE_2D,t))})}useProgram(){this.context.ctx.useProgram(this.program)}useBufferFrame(){let e=this.context.ctx;e.bindFramebuffer(e.FRAMEBUFFER,this.fbo||null)}createBuffer(e){let t=this.context.ctx,i=t.createBuffer();return t.bindBuffer(t.ARRAY_BUFFER,i),t.bufferData(t.ARRAY_BUFFER,new Float32Array(e),t.STATIC_DRAW),i}setTexBuffer(e){let t=this.context.ctx;t.bindBuffer(t.ARRAY_BUFFER,this.texCoordBuffer),t.bufferData(t.ARRAY_BUFFER,new Float32Array(e),t.STATIC_DRAW)}setPosBuffer(e){let t=this.context.ctx;t.bindBuffer(t.ARRAY_BUFFER,this.positionBuffer),t.bufferData(t.ARRAY_BUFFER,new Float32Array(e),t.STATIC_DRAW)}changeBufferData(e,t){let i=this.context.ctx;i.bindBuffer(i.ARRAY_BUFFER,e),i.bufferData(i.ARRAY_BUFFER,new Float32Array(t),i.STATIC_DRAW)}setAttributes(){let e=this.context.ctx;for(var t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];i.forEach((t,i)=>{e.enableVertexAttribArray(i),e.bindBuffer(e.ARRAY_BUFFER,t),e.vertexAttribPointer(i,2,e.FLOAT,!1,0,0)})}getVertexPoint(e,t){return[e/this.width*2-1,t/this.height*2-1]}layout2texCoords(e){return[...this.getVertexPoint(e.x,e.y),...this.getVertexPoint(e.x+e.width,e.y),...this.getVertexPoint(e.x,e.y+e.height),...this.getVertexPoint(e.x+e.width,e.y+e.height)]}resize(e,t){if(this.width!==e||this.height!==t){if(this.width=e,this.height=t,this._canvas&&(this._canvas.width=e,this._canvas.height=t),this.texture&&this.fbo){this.useTexture();let i=this.context.ctx;i.texImage2D(i.TEXTURE_2D,0,i.RGBA,e,t,0,i.RGBA,i.UNSIGNED_BYTE,null)}this.output&&this.output.matchInputSize&&this.output.resize(e,t)}}draw(e,t){this.setAttributes(e||this.positionBuffer,t||this.texCoordBuffer);let i=this.context.ctx;i.drawArrays(i.TRIANGLE_STRIP,0,4)}draw2d(t,i,r,n,a,o,s,c,l){let d=!(Xk(o)||Xk(s)||Xk(c)||Xk(l));return!(!this.ctx2d||!t)&&(t instanceof ImageData?(d?this.ctx2d.putImageData(t,i,r,o,s,c,l):this.ctx2d.putImageData(t,i,r),this.emit(e.RENDER,this.ctx2d.canvas)):(d?this.ctx2d.drawImage(t,o,s,c,l,i,r,n,a):this.ctx2d.drawImage(t,i,r,n,a),this.emit(e.RENDER,t)),"undefined"!=typeof VideoFrame&&t instanceof VideoFrame&&t.close(),!0)}drawBackGround2d(e){this.ctx2d&&(this.ctx2d.save(),this.ctx2d.fillStyle=e,this.ctx2d.fillRect(0,0,this.width,this.height),this.ctx2d.restore())}getInfo(){var e;let{totalFrames:t,x:i,y:r,width:n,height:a,name:o,cost:s}=this,c=Date.now(),l=(t-this.lastInfo.totalFrames)/((c-this.lastInfo.timestamp)/1e3)|0;return this.lastInfo={totalFrames:t,x:i,y:r,width:n,height:a,timestamp:c,fps:l,name:o,cost:s},yA({parent:null==(e=this.input)?void 0:e.getInfo()},this.lastInfo)}createTexture(e){let t=this.context.ctx,i=t.createTexture();return this.useTextures(i),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.pixelStorei(t.UNPACK_ALIGNMENT,1),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e),i}};AA(Bx,"RENDER","render"),SA([dN(pN.INIT,"connected",{sync:!0})],Bx.prototype,"connect",1),SA([dN("connected",pN.INIT,{ignoreError:!0,sync:!0})],Bx.prototype,"disconnect",1),SA([dN([],"closed",{sync:!0})],Bx.prototype,"close",1);var Fx=Bx,Vx=rx(function(e){return nx(t=>{let i=0,r=setInterval(()=>t.next(i++),e);return t.defer(()=>{clearInterval(r)}),"interval"},"interval",arguments)}(250),yx(()=>performance.now()),dx()),Hx=[0,1,1,1,0,0,1,0],jx=class extends Fx{constructor(e,t){super(e,Object.assign({useDefaultProgram:!0,createTexture:!1,name:"destination"},t)),AA(this,"_intervalId",0),AA(this,"_sequence",0),AA(this,"checkGLError",!1),AA(this,"checkVisibilityChange"),e instanceof Jx?this.ctx2d=e.ctx||null:e.available&&null!=t&&t.mirrorUpAndDown&&this.setTexBuffer(Hx)}start(e){this.log.info("".concat(this.name," start render ").concat(e," fps")),yN.clearTask(this._intervalId),this._intervalId=yN.run("intervalInWorker",()=>{if(e!==this.context.frameRate&&(yN.clearTask(this._intervalId),this.start(this.context.frameRate)),this.requestFrame(this._sequence++),this.checkGLError&&this.context instanceof Zx){let e=this.context.ctx.getError();e&&this.context.destroy(new rk({code:tk.VIDEO_MANAGER_ERROR,extraCode:5,message:"".concat(this.name," req ").concat(this._sequence," render ").concat(this.totalFrames," faild ").concat(e)}))}},{fps:this.context.frameRate})}render(e){var t;return!(null==(t=this.input)||!t.requestFrame(e))&&(this.useProgram(),this.useBufferFrame(),this.useInputTexture(),this.draw(),this.emit(Fx.RENDER,this.context._canvas),!0)}addInput(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];super.addInput(e,...i),this.start(this.context.frameRate)}update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;"closed"!==this.state&&(this._intervalId&&(yN.clearTask(this._intervalId),this._intervalId=0,1===e&&(this.log.info("".concat(this.name," use requestVideoFrameCallback")),this.checkVisibilityChange=()=>{document.hidden&&(this.start(this.context.frameRate),this.log.info("".concat(this.name," use timer")),document.removeEventListener("visibilitychange",this.checkVisibilityChange))},document.addEventListener("visibilitychange",this.checkVisibilityChange))),this.requestFrame(this._sequence++))}removeInput(e){super.removeInput(e),yN.clearTask(this._intervalId)}resize(e,t){super.resize(e,t),this.context.setSize(e,t)}close(){super.close(),yN.clearTask(this._intervalId),document.removeEventListener("visibilitychange",this.checkVisibilityChange)}},zx=class extends jx{constructor(e,t){super(e,t),AA(this,"_videoTrack"),AA(this,"_muteOb"),AA(this,"_closedOb",fx(this,"closed")),AA(this,"_subscription"),AA(this,"_canvasContainer"),Number(vO)<17&&(this._canvasContainer=document.createElement("div"),this._canvasContainer.style.display="none"),[this._videoTrack]=e.canvas.captureStream().getVideoTracks(),this._muteOb=fx(this._videoTrack,"mute"),rx(fx(this._videoTrack,"ended"),vx(this._closedOb),Rx(()=>{this.context.destroy(new rk({code:tk.VIDEO_MANAGER_ERROR,extraCode:8,message:"video track ended"}))}))}enableCheckMute(){this._subscription=rx(this._muteOb,vx(this._closedOb),Ax((e=>t=>{let i=performance.now();rx(Vx,_x(t=>t-i<e),gx(1))(t)})(5e3)),mx(()=>{var e;return!(null==(e=this._videoTrack)||!e.muted||document.hidden)}),Rx(()=>{this.context.destroy(new rk({code:tk.VIDEO_MANAGER_ERROR,extraCode:7,message:"video track muted"}))}))}disableCheckMute(){var e;null==(e=this._subscription)||e.dispose()}get videoTrack(){return this._videoTrack}putCanvasIntoDom(){!this.context._canvas||!this._canvasContainer||document.getElementById(this.context._canvas.id)||(this.log.info("".concat(this.name," put canvas to body")),document.body.appendChild(this._canvasContainer),this._canvasContainer.appendChild(this.context._canvas))}render(e){return this.putCanvasIntoDom(),super.render(e)}render2d(e){return this.putCanvasIntoDom(),super.render2d(e)}close(){var e,t;super.close(),null==(e=this._videoTrack)||e.stop(),delete this._videoTrack,null==(t=this._canvasContainer)||t.remove()}},Wx=class extends Fx{constructor(e,t){super(e,yA({name:"imageSource"},t)),AA(this,"_lastImage"),AA(this,"_totalFrames",0),AA(this,"_autoResize",!1),AA(this,"_canvasRendered"),AA(this,"videoCallbackId",0),AA(this,"waitingFirstFrame",!0),AA(this,"shouldUpdate",!0),this._autoResize=!1!==(null==t?void 0:t.autoResize),16===EO&&(this._canvasRendered=hx(),rx(this._canvasRendered,function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return e=>nx(function(i){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length;for(;r<n&&!i.disposed;)i.next(t[r++]);i.disposed||i.subscribe(e)},"startWith",arguments)}(this._image),Tx(e=>e instanceof HTMLCanvasElement?fx(e,"rendered"):function(){return nx(e=>e.complete(),"empty",arguments)}()),vx(fx(this,"closed")),Rx(()=>{this.update()})))}onFirstFrame(){this.waitingFirstFrame=!1}tryVideoFrameCallback(){if(!this.shouldUpdate)return;let e=this.image;this.videoCallbackId&&e.cancelVideoFrameCallback(this.videoCallbackId),ZL()&&!document.hidden&&(this.videoCallbackId=e.requestVideoFrameCallback((e,t)=>{this.waitingFirstFrame&&this.onFirstFrame(),document.hidden||(this._totalFrames=t.presentedFrames,this.update(1))}))}_render(e,t){var i;let{width:r,height:n}=this,{image:a}=this;if(a instanceof HTMLVideoElement){if(this.tryVideoFrameCallback(),({videoWidth:r,videoHeight:n}=a),!r||!n)return!1;a.width=r,a.height=n}else if(a instanceof HTMLImageElement||a instanceof ImageData||a instanceof ImageBitmap){if(({width:r,height:n}=a),a!==this._lastImage)this._lastImage=a;else if(r===this.width&&n===this.height)return!0}else a instanceof HTMLCanvasElement||a instanceof OffscreenCanvas?(({width:r,height:n}=a),this._lastImage=a):"undefined"!=typeof VideoFrame&&a instanceof VideoFrame&&(({displayWidth:r,displayHeight:n}=a),null==(i=this._lastImage)||i.close(),this._lastImage=a);if(!this._autoResize)return!0;if(this.width===r&&this.height===n&&this.totalFrames){if(t){this.useTexture();let e=this.context.ctx;e.texSubImage2D(e.TEXTURE_2D,0,0,0,e.RGBA,e.UNSIGNED_BYTE,a)}}else{if(t){this.useTexture();let e=this.context.ctx;e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,a)}this.resize(r,n)}return!0}get image(){return this._image}set image(e){var t;null==(t=this._canvasRendered)||t.next(e),this._image=e}render(e){return this._render(e,!0)}render2d(e){return this._render(e,!1)}},Gx=class extends Wx{constructor(e,t,i){super(e,i),this._player=t,this.name="videoPlayerSource",rx(fx(this._player,EN.PLAYER_STATE_CHANGED),vx(fx(this,"closed")),mx(e=>{let{state:t}=e;return"PLAYING"===t}),Rx(()=>{this.tryVideoFrameCallback()}))}get image(){return this._player.element}},qx=class extends Gx{get available(){return this._player.isPlaying&&!this.waitingFirstFrame}constructor(e,t,i){super(e,new QN({id:i.name,track:t,muted:!0,container:null,objectFit:"contain",log:i.logger}),i),this.name="videoTrackSource",this._player.play()}replaceTrack(e){this.waitingFirstFrame=!0,this._player.setTrack(e),this._player.play()}close(){super.close(),this._player.stop()}},Kx=class extends Fx{constructor(e,t,i){super(e,EA(yA({name:"textSource"},i),{create2d:!0})),AA(this,"hasChange",!0),AA(this,"content",""),this.ctx2d.textBaseline="top",this.content=t.content||"",t.font&&(this.font=t.font),t.color&&(this.color=t.color)}set font(e){this.ctx2d&&(this.ctx2d.font=e,this.hasChange=!0)}get font(){var e;return(null==(e=this.ctx2d)?void 0:e.font)||""}set color(e){this.ctx2d&&(this.ctx2d.fillStyle=e,this.hasChange=!0)}get color(){var e;return(null==(e=this.ctx2d)?void 0:e.fillStyle)||""}render2d(e){return!(!this.ctx2d||!this.hasChange)&&(this.ctx2d.clearRect(0,0,this.width,this.height),this.drawMultilineText(0,0),this.hasChange=!1,!0)}render(e){return!1}resize(e,t){if(!this.ctx2d)return;let{color:i,font:r}=this;super.resize(e,t),this.color=i,this.font=r}drawMultilineText(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1.2;if(!this.ctx2d)return;let r=this.ctx2d.measureText(this.content);t+=r.fontBoundingBoxAscent||r.actualBoundingBoxAscent||0;let n=this.font.match(/(\d+)px/),a=(n?parseInt(n[1],10):16)*i,o=this.content.split("\n");for(let s=0;s<o.length;s++)this.ctx2d.fillText(o[s],e,t+s*a)}},Yx=class extends pN{constructor(e){super(),AA(this,"frameRate"),AA(this,"_canvas"),AA(this,"log"),AA(this,"hasAlpha",!1),AA(this,"name"),AA(this,"error"),this.name=e.name,this.log=e.logger.createChild({id:"vc-".concat(this.name)}),this.frameRate=e.frameRate}get canvas(){return this._canvas}set width(e){this._canvas&&(this._canvas.width=e)}get width(){var e;return(null==(e=this._canvas)?void 0:e.width)||0}set height(e){this._canvas&&(this._canvas.height=e)}get height(){var e;return(null==(e=this._canvas)?void 0:e.height)||0}setSize(e,t){this._canvas&&(this._canvas.width=e,this._canvas.height=t)}createVideoTrackSource(e,t){return new qx(this,e,{logger:this.log,name:t})}createVideoTrackDestination(e){return new zx(this,e)}createVideoImageSource(e,t){return new Wx(this,t?Object.assign(t,{logger:this.log,image:e}):{logger:this.log,image:e})}createVideoPlayerSource(e,t){return new Gx(this,e,t?Object.assign(t,{logger:this.log}):{logger:this.log})}createTextSource(e,t){return new Kx(this,e,t?Object.assign(t,{logger:this.log}):{logger:this.log})}get available(){return"created"===this.state}disconnect(){this.emit("disconnect")}};AA(Yx,"_ids",0);var Xx=class extends Yx{constructor(){super(...arguments),AA(this,"defaultProgam"),AA(this,"defaultVShader"),AA(this,"defaultFShader"),AA(this,"ctx"),AA(this,"_canvas2d")}get canvas(){return this._canvas2d||this._canvas}create(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this._canvas||(this._canvas=document.createElement("canvas"),this._canvas.id="trtc_".concat(this.name,"_").concat(Yx._ids++)),e&&(this._canvas2d=document.createElement("canvas")),this.ctx=this._canvas.getContext("webgl2",TR),!this.ctx)throw new rk({code:tk.VIDEO_MANAGER_ERROR,extraCode:2,message:"webgl2 not supported"});this.defaultVShader=this.createShader(this.ctx.VERTEX_SHADER,"\n// 顶点着色器\nattribute vec4 a_position;\nattribute vec2 a_texCoord;\nvarying vec2 v_texCoord;\n\nvoid main() {\n gl_Position = a_position;\n v_texCoord = a_texCoord;\n}\n"),this.defaultFShader=this.createShader(this.ctx.FRAGMENT_SHADER,"\n// 片元着色器\nprecision mediump float;\nvarying vec2 v_texCoord;\nuniform sampler2D u_texture;\n\nvoid main() {\n gl_FragColor = texture2D(u_texture, v_texCoord);\n} "),this.defaultProgam=this.createProgram(this.defaultVShader,this.defaultFShader),this._canvas.addEventListener("webglcontextlost",()=>{this.destroy(new rk({code:tk.VIDEO_MANAGER_ERROR,extraCode:4,message:"webgl context lost"}))})}destroy(e){let t="";return e&&(t=e.message,this.error=e,XO.addFailedEvent({key:512702,error:e})),this.disconnect(),this.log.info("video context destroy".concat(t)?": ".concat(t):""),this.ctx&&(this.ctx.deleteShader(this.defaultVShader),this.ctx.deleteShader(this.defaultFShader),this.ctx.deleteProgram(this.defaultProgam),delete this.ctx),e}set width(e){var t;null==(t=this.ctx)||t.viewport(0,0,e,this.height),super.width=e,this._canvas2d&&(this._canvas2d.width=e)}set height(e){var t;null==(t=this.ctx)||t.viewport(0,0,this.width,e),super.height=e,this._canvas2d&&(this._canvas2d.height=e)}setSize(e,t){var i;null==(i=this.ctx)||i.viewport(0,0,e,t),super.setSize(e,t),this._canvas2d&&(this._canvas2d.width=e,this._canvas2d.height=t)}createShader(e,t){let i=this.ctx,r=i.createShader(e);return i.shaderSource(r,t),i.compileShader(r),r}createProgram(e,t){let i=this.ctx,r=i.createProgram();return i.attachShader(r,e),i.attachShader(r,t),i.linkProgram(r),i.getProgramParameter(r,i.LINK_STATUS)||this.log.error(i.getProgramInfoLog(r)),r}};AA(Xx,"UNAVAILABLE","unavailable"),SA([dN(pN.INIT,"created",{sync:!0,fail(e){this.log.error("video gl context create failed",e.cause),XO.addFailedEvent({key:512700,error:e.cause||e})},success(){this.log.info("video context created use webgl"),XO.addSuccessEvent({key:512700})}})],Xx.prototype,"create",1),SA([dN("created",pN.INIT,{ignoreError:!0,sync:!0,success(e){e&&this.emit(Xx.UNAVAILABLE,e),this.removeAllListeners()}})],Xx.prototype,"destroy",1);var Zx=Xx,Jx=class extends Yx{constructor(){super(...arguments),AA(this,"ctx")}create(e){if(this.hasAlpha=e.alpha,this._canvas=document.createElement("canvas"),this._canvas.id="trtc_".concat(this.name,"_").concat(Yx._ids++),this.ctx=this._canvas.getContext("2d",{alpha:e.alpha,willReadFrequently:e.willReadFrequently}),!this.ctx)throw new rk({code:tk.VIDEO_MANAGER_ERROR,extraCode:2,message:"2d context not supported"});this._canvas.addEventListener("contextlost",()=>{this.log.error("2d context lost")}),this._canvas.addEventListener("contextrestored",()=>{this.log.warn("2d context restored")})}destroy(e){let t="";e&&(t=e.message,this.error=e,XO.addFailedEvent({key:512703,error:e})),this.disconnect(),this.log.info("video context destroy ".concat(t?": ".concat(t):"")),delete this.ctx,this._canvas&&(this._canvas.remove(),this._canvas.width=0,this._canvas.height=0,delete this._canvas),this.removeAllListeners(),XO.addSuccessEvent({key:512703})}};SA([dN(pN.INIT,"created",{sync:!0,fail(e){this.log.error("video 2d context create failed",e.cause),XO.addFailedEvent({key:512701,error:e.cause||e})},success(){this.log.info("video context created use 2d"),XO.addSuccessEvent({key:512701})}})],Jx.prototype,"create",1),SA([dN("created",pN.INIT,{ignoreError:!0,sync:!0})],Jx.prototype,"destroy",1);var Qx=UO();if("undefined"!=typeof navigator&&navigator.mediaDevices&&"setCaptureHandleConfig"in navigator.mediaDevices)try{navigator.mediaDevices.setCaptureHandleConfig({handle:Qx,exposeOrigin:!0,permittedOrigins:["*"]})}catch(oA){}var $x=async function(e){let t=null,i=function(e){let t={preferCurrentTab:"current-tab"===e.preferDisplaySurface||!!e.captureElement,systemAudio:"include",selfBrowserSurface:e.selfBrowserSurface||"include",surfaceSwitching:"include"},i={width:mO?{max:e.width}:{ideal:e.width,max:e.width},height:mO?{max:e.height}:{ideal:e.height,max:e.height},frameRate:e.frameRate,displaySurface:e.preferDisplaySurface||"monitor"};if(t.video=i,e.systemAudio){let{echoCancellation:i=!0,noiseSuppression:r=!1,autoGainControl:n=!1}=e;t.audio={echoCancellation:i,noiseSuppression:r,autoGainControl:n,sampleRate:48e3}}return t}(e);MO.info("getDisplayMedia with constraints: ".concat(JSON.stringify(i)));let r=await navigator.mediaDevices.getDisplayMedia(i);e.systemAudio&&0===r.getAudioTracks().length&&(dO&&hO<74||mO||mD)&&MO.warn("Your browser not support capture system audio");let n=r.getVideoTracks()[0];if(n){if(e.frameRate)try{await n.applyConstraints({frameRate:{min:e.frameRate,ideal:e.frameRate},width:e.width,height:e.height})}catch(a){MO.warn("screen applyConstraints failed: ".concat(a))}e.captureElement&&await async function(e,t){var i;if("CropTarget"in window&&"fromElement"in CropTarget&&Yk(e.cropTo))try{if((null==(i=e.getCaptureHandle())?void 0:i.handle)!==Qx)return;let r=await CropTarget.fromElement(t);await e.cropTo(r)}catch(r){MO.warn("cropTo target failed ".concat(r))}}(n,e.captureElement)}if(e.audio){let i=function(e){let t={echoCancellation:e.echoCancellation,autoGainControl:e.autoGainControl,noiseSuppression:e.noiseSuppression,sampleRate:e.sampleRate,channelCount:e.channelCount};return Xk(e.microphoneId)||(t.deviceId=e.microphoneId),{audio:t,video:!1}}(e);MO.info("getUserMedia with constraints: ".concat(JSON.stringify(i))),t=await navigator.mediaDevices.getUserMedia(i),r.addTrack(t.getAudioTracks()[0])}return r};SA([PA(function(e){this.setContentHint(e.contentHint||"detail")})],class extends xx{constructor(e){super(e,2),AA(this,"profile",{width:1920,height:1080,frameRate:5,bitrate:1600}),AA(this,"objectFit","contain"),AA(this,"isScreen",!0),this._log.id="s-".concat(this._log.id)}get isShareCurrentTab(){var e,t;try{return Qx===(null==(t=null==(e=this.mediaTrack)?void 0:e.getCaptureHandle())?void 0:t.handle)}catch(i){return}}async capture(e){let{systemAudio:t=!1,autoGainControl:i,echoCancellation:r,noiseSuppression:n,audioTrack:a,videoTrack:o,captureElement:s,preferDisplaySurface:c,selfBrowserSurface:l}=e;var d;try{let e,u=lC();return o||a?(e=new MediaStream,o&&e.addTrack(o),a&&e.addTrack(a)):(e=await $x({audio:!1,systemAudio:t,width:this.profile.width,height:this.profile.height,frameRate:this.profile.frameRate,autoGainControl:i,echoCancellation:r,noiseSuppression:n,captureElement:s,preferDisplaySurface:c,selfBrowserSurface:l}),this.sourceTrack=e.getVideoTracks()[0]),await this.setInputMediaStreamTrack(e.getVideoTracks()[0]),LO.emit(NO.LOCAL_TRACK_CAPTURE_SUCCESS,{track:this,cost:lC()-u,profile:this.profile,room:null==(d=this.manager)?void 0:d.room}),e}catch(u){throw this.log.error("getDisplayMedia error observed ".concat(u)),u instanceof rk?u:new rk({code:tk.INITIALIZE_FAILED,name:u.name,message:u.message})}}async switchDevice(e){throw new Error("Method not implemented.")}}.prototype,"capture",1);var eM=class e extends MP{constructor(t,i,r){super({userId:i.userId,sdkAppId:t.sdkAppId,mediaType:r,room:t}),this.room=t,this.user=i,AA(this,"tinyId"),AA(this,"isRemote",!0),AA(this,"jitterBufferDelay",0),AA(this,"availableState"),AA(this,"remotePublishState"),AA(this,"_triggerCheckDecodeSubject",hx(fx(this,e.STATE_SUBSCRIBE))),AA(this,"ignoreUpdatePlayingState"),this.tinyId=i.tinyId,this.availableState=new pN("".concat(i.userId,"-").concat(this.mediaType,"-available"),"remote-track-available"),this.remotePublishState=new pN("".concat(i.userId,"-").concat(this.mediaType,"-remote-publish"),"remote-track-publish"),rx(ux(fx(this,pN.STATECHANGED),fx(this.remotePublishState,pN.STATECHANGED)),yx(()=>this.isRemotePublished&&(this.isSubscribed||this.isSubscribing)),Rx(e=>{this.availableState.state!==(e?pN.ON:pN.OFF)&&(this.availableState.state=e?pN.ON:pN.OFF),(!this.isRemotePublished||!this.ignoreUpdatePlayingState)&&this.updatePlayingState(e)}));let n=rx(fx(this.player,EN.ERROR),mx(e=>e.code===MediaError.MEDIA_ERR_DECODE)),a=rx(function(e,t){return nx(i=>{let r=0,n=setTimeout(()=>{if(i.removeDefer(a),i.next(r++),t){let e=setInterval(()=>i.next(r++),t);i.defer(()=>{clearInterval(e)})}else i.complete()},e),a=()=>clearTimeout(n);i.defer(a)},"timer",arguments)}(5e3),mx(()=>!!(!this.ignoreDecodeError&&this.isSubscribed&&this.isPlayCalled&&this.stat.bytesReceived&&this.isRemotePublished)&&(!this.player.isPlaying&&!(this.kind===$A?this.getAudioLevel()>0:this.stat.framesDecoded>0)||(this.reportDecodeResult(!0),!1)))),o=rx(function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return nx(e=>{let i=new Map;t.forEach(t=>{let r=new tx(e);i.set(t,r),r.complete=()=>{i.delete(t),0===i.size?e.complete():r.dispose()},r.next=e=>{i.delete(t),i.forEach(e=>e.dispose()),r.resetNext(),r.resetComplete(),r.next(e)}}),t.forEach(e=>i.get(e).subscribe(e))},"race",arguments)}(n,a),vx(fx(this,pN.INIT)));rx(this._triggerCheckDecodeSubject,mx(()=>!this.ignoreDecodeError),Ax(o),Rx(e=>{this.reportDecodeResult(!1,e)}))}setMute(e){this.isRemotePublished&&super.setMute(e)}setInputMediaStreamTrack(e){super.setInputMediaStreamTrack(e),this.isRemotePublished&&this.isSubscribed&&this.player.setTrack(this.outMediaTrack)}checkDecodeResult(){this._triggerCheckDecodeSubject.next(!0)}waitHasMediaTrack(){return new Promise(e=>{this.mediaTrack?e():this.once("input-media-track-changed",e)})}get ignoreDecodeError(){var e,t,i,r;return null!=(r=null==(i=null==(t=null==(e=this.room)?void 0:e.networkQuality)?void 0:t.hadRecentBadDownlink)?void 0:i.call(t,2))&&r||this.player.isInAutoPlayFailedState}get isSubscribing(){return"subscribeing"===this.state.toString()}get isSubscribed(){return this.state===e.STATE_SUBSCRIBE}get isAvailable(){return this.availableState.state===pN.ON}get isNeedPlay(){return this.isAvailable&&this.isPlayCalled}subscribe(e){return e}unsubscribe(){"main"===this.streamType&&"video"===this.kind&&this.room.changeType(!1,this.user)}reportDecodeResult(e,t){var i,r;let n=this.kind===$A;if(XO[e?"addSuccessEvent":"addFailedEvent"]({key:n?504700:514702}),!n){let t=(null==(i=this.room)?void 0:i.downlinkVideoCodec.toUpperCase())||"H264";XO[e?"addSuccessEvent":"addFailedEvent"]({key:KO["DECODE_".concat(t,"_RESULT")]}),e||this.log.warn("".concat(null==(r=this.room)?void 0:r.downlinkVideoCodec," decode failed"))}e||(XO.addEnum({key:n?504701:514703,value:DO()}),SN.uploadEvent({log:"stat-decode-failed-".concat(this.kind,"-").concat(RO()||OO()),userId:this.room.userId}),this._log.warn("decode failed: isPlaying: ".concat(this.player.isPlaying," ").concat(this.kind===$A?"audioLevel: ".concat(this.getAudioLevel()):"framesDecoded: ".concat(this.stat.framesDecoded>0))),this.emit("decode-failed",{error:t}))}updatePlayingState(e){if(this.player.isPlayCalled&&this.player.setTrack(this.playerMediaTrack),this.isPlayCalled&&this.player.isStopped===e){if(e&&(!this.isSubscribed||!this.isRemotePublished||!this.outMediaTrack))return void this.log.info("abort play, isSubscribed: ".concat(this.isSubscribed," isAvailable: ").concat(this.isRemotePublished," hasTrack: ").concat(!!this.outMediaTrack," "));super.updatePlayingState(e)}}close(){super.close(),this.outMediaTrack&&this.uninstallTrackEvent(this.outMediaTrack)}onFlagChanged(){this.remotePublishState.state=this.isRemotePublished?pN.ON:pN.OFF,this.emit("remote-publish-changed",this.isRemotePublished)}onTrackMuted(){this.isNeedPlay&&super.onTrackMuted()}onTrackUnmuted(){this.isNeedPlay&&super.onTrackUnmuted()}onTrackEnded(){this.isNeedPlay&&super.onTrackEnded()}};AA(eM,"STATE_SUBSCRIBE","subscribe"),SA([function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:30,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return xA((i,r)=>function(){for(var n=arguments.length,a=new Array(n),o=0;o<n;o++)a[o]=arguments[o];return new Promise((n,o)=>{let s=setTimeout(()=>{let i=new rk({code:tk.API_CALL_TIMEOUT,message:"checkPendingPromise ".concat(r,"() timeout ").concat(e,"s")});(this.log||this._log||MO).warn(i),2===t?o(i):1===t&&n()},1e3*e);this._checkPendingPromiseSet||(this._checkPendingPromiseSet=new Set),this._checkPendingPromiseSet.add(s),i.apply(this,a).then(n,o).finally(()=>{clearTimeout(s),this._checkPendingPromiseSet&&s&&this._checkPendingPromiseSet.delete(s)})})})}(5,1)],eM.prototype,"waitHasMediaTrack",1),SA([dN(pN.INIT,eM.STATE_SUBSCRIBE,{success(){this.log.info("subscribed"),LO.emit(NO.REMOTE_TRACK_SUBSCRIBED,{track:this})},ignoreError:!0}),YP(521716,!1)],eM.prototype,"subscribe",1),SA([dN(eM.STATE_SUBSCRIBE,pN.INIT,{sync:!0,success(){this.log.info("unsubscribed"),LO.emit(NO.REMOTE_TRACK_UNSUBSCRIBED,{track:this})}})],eM.prototype,"unsubscribe",1);var tM=eM,iM=class extends Fx{constructor(e,t,i,r,n){super(e,{useDefaultProgram:!0,useFbo:!0,name:"alpha",create2d:!0,logger:t}),this.setContainer=r,AA(this,"initStat",{alphaStitchingType:1}),AA(this,"end",hx()),AA(this,"minSize",320),AA(this,"maxSize",1280),AA(this,"draggable",!1),AA(this,"startDragX",0),AA(this,"startDragY",0),AA(this,"left",0),AA(this,"top",0),AA(this,"baseWidth",320),AA(this,"baseRatio"),AA(this,"container"),this.initStat=n,this.draggable=i,this.bindDragEvents(),XO.addEnum({key:515700,value:1}),this.draggable&&XO.addEnum({key:515700,value:11})}bindDragEvents(){let e=this.context._canvas;if(e)if(this.draggable){let t=vx(this.end);rx(fx(e,"mousedown"),kx(this.startDrag.bind(this)),Tx(()=>rx(fx(window,"mousemove"),vx(fx(window,"mouseup")))),t,Rx(this.doDrag.bind(this))),rx(fx(e,"dblclick"),t,Rx(this.resetPosition.bind(this))),rx(fx(e,"wheel"),t,Rx(this.handleZoom.bind(this))),this.renderCanvas()}else{if(!this.container)return;this.container.style.removeProperty("left"),this.container.style.removeProperty("top"),this.end.next()}}render(e){var t;return!(null==(t=this.input)||!t.requestFrame(e))&&(this.useProgram(),this.useBufferFrame(),this.useInputTexture(),this.draw(),!0)}startDrag(e){e.preventDefault(),0===e.button&&(this.startDragX=e.clientX-this.left,this.startDragY=e.clientY-this.top)}renderCanvas(){let{container:e}=this;e||this.setContainer(),e&&this.baseRatio&&this.draggable&&(e.style.setProperty("width","".concat(this.baseWidth,"px")),e.style.setProperty("height","".concat(this.baseWidth/this.baseRatio,"px")),e.style.setProperty("position","fixed"),e.style.setProperty("left","".concat(this.left,"px")),e.style.setProperty("top","".concat(this.top,"px")))}doDrag(e){e.preventDefault(),this.left=e.clientX-this.startDragX,this.top=e.clientY-this.startDragY,this.renderCanvas()}handleZoom(e){e.preventDefault();let t=e.deltaY,i=this.context._canvas;i&&(this.baseWidth||(this.baseWidth=i.offsetWidth),this.baseWidth=t<0?Math.min(1.1*this.baseWidth,this.maxSize):Math.max(.9*this.baseWidth,this.minSize),this.renderCanvas())}resetPosition(){this.left=0,this.top=0,this.renderCanvas()}onRatioReset(){this.renderCanvas()}draw2d(e,t,i,r,n){var a;let{ctx2d:o}=this,s=this.context._canvas;if(!o||!s)return!1;let c=super.draw2d(e,t,i,r,n),l=o.getImageData(0,0,r,n),{data:d}=l,u=!1;if(1===this.initStat.alphaStitchingType){let e=Math.floor(r/2);for(let t=0;t<n;t++)for(let i=0;i<e;i++){let n=4*(t*r+i),a=4*(t*r+(i+e)),o=d[a];d[a+3]=0;let s=o>=100;d[n+3]=s?255:0}u=super.draw2d(l,0,0,0,0,e,n),s.width=e}else if(2===this.initStat.alphaStitchingType){let e=Math.floor(n/2);for(let t=0;t<e;t++)for(let i=0;i<r;i++){let n=4*(t*r+i),a=4*((t+e)*r+i),o=d[a];d[a+3]=0;let s=o>=100;d[n+3]=s?255:0}u=super.draw2d(l,0,0,0,0,r,e),s.height=e}return null==(a=this.context.ctx)||a.clearRect(0,0,r,n),c&&u}close(){this.baseRatio=void 0,this.end.next(),this.end.complete()}};var rM=class extends tM{constructor(e,t){super(e,t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:4),AA(this,"mediaType",4),AA(this,"source"),AA(this,"shouldRenderAlpha",!1),AA(this,"alphaNode"),AA(this,"shouldBeDraggable",!0),AA(this,"stat",{bytesReceived:0,packetsReceived:0,packetsLost:0,framesReceived:0,framesDecoded:0,frameWidth:0,frameHeight:0,end2EndDelay:0,jitterBufferDelay:0,keyFramesDecoded:0}),AA(this,"_keyFrameCountLogged",!1),AA(this,"_keyFrameStartTimestamp",0),AA(this,"_keyFrameStartCount",0),AA(this,"_keyFrameIntervals",[]),AA(this,"_prevKeyFrameTimestamp",0),this.manager=e.videoManager,this.on("first-video-frame",e=>{this.room.emit("first-video-frame",e)})}isAlphaSei(e){if(this.userId!==e.userId||50!==e.seiPayloadType)return!1;let t=new Uint8Array(e.data);return t.length%3==0&&0===t[0]&&1===t[1]&&t}play(e,t){return null!=t&&t.canvasRender&&!this.source&&this.useCanvasPlayer(),super.play(e,t).then(()=>{this.player.calculateStat(),LO.emit("156",{track:this,player:this.player})})}updateAlphaRenderInfo(e){let t=this.isAlphaSei(e);if(t)if(this.alphaNode){let e=t[2];if(this.alphaNode.baseRatio&&this.alphaNode.initStat.alphaStitchingType===e)return;this.alphaNode.initStat={alphaStitchingType:e};let i=this.player.getElement();if(i){let t=i.videoWidth/i.videoHeight;t&&(this.alphaNode.baseRatio=t*(1===e?.5:2),this.alphaNode.onRatioReset())}this.player.canvas&&(this.player.canvas.id=this.generateAlphaCanvasName(e))}else this.shouldRenderAlpha=!0,this.player.shouldRenderAlpha=!0,this.useCanvasPlayer(t[2])}generateAlphaCanvasName(e){let t=VA[e];return"".concat("alpha","_").concat(t,"_").concat(this.userId)}useCanvasPlayer(e){if(this.log.info("useCanvasPlayer(), has element:".concat(!!this.player.element)),!this.player.element)return;let t=new Jx({frameRate:15,logger:this.log,name:this.shouldRenderAlpha&&e?this.generateAlphaCanvasName(e):this.userId});t.create({alpha:this.shouldRenderAlpha,willReadFrequently:this.shouldRenderAlpha});let i=new jx(t,{name:"remotePlayer",logger:this.log});if(this.source=t.createVideoPlayerSource(this.player),this.player.setCanvas(t._canvas),this.shouldRenderAlpha&&e){let r=()=>{!this.player.container||!this.alphaNode||(this.alphaNode.container=this.player.container,this.alphaNode.renderCanvas())},n=new iM(t,this.log,this.shouldBeDraggable,r,{alphaStitchingType:e});this.source.connect(n),n.connect(i),this.alphaNode=n}else this.source.connect(i);ZL()||(this.updateCanvasPlayerFPS=this.updateCanvasPlayerFPS.bind(this,t),this.room.on("heartbeat-report",this.updateCanvasPlayerFPS,this))}updateCanvasPlayerFPS(e){let t=this.decodeFPS,i=function(e){return[15,30,45,60].reduce((t,i)=>Math.abs(i-e)<Math.abs(t-e)?i:t)}(t);!Jk(t)||t<=0?this.log.debug("updateCanvasPlayerFPS() ignore decoder: ".concat(t," ")):i!==e.frameRate?(this.log.info("updateCanvasPlayerFPS() decoder: ".concat(t,", closest: ").concat(i,", current: ").concat(e.frameRate)),e.frameRate=i):this.log.debug("updateCanvasPlayerFPS() ignore ClosestFPS ".concat(i," == ").concat(e.frameRate))}get decodeFPS(){var e;let{msg_video_status:t}=(null==(e=this.room.heartbeatReport)?void 0:e.msg_down_stream_info.find(e=>e.msg_user_info.str_identifier===this.userId))||{},i=2===this.mediaType?7:this.isSmall?3:2;if(!t||0===t.length)return 0;let r=t.find(e=>e.uint32_video_stream_type===i);return(null==r?void 0:r.uint32_video_dec_fps)||0}stop(){return this.room.off("heartbeat-report",this.updateCanvasPlayerFPS,this),LO.emit("157",{track:this,player:this.player}),this.alphaNode&&this.alphaNode.close(),super.stop()}decodeFrame(e){if(!this.manager)return e;for(let t of this.manager.decodePipeline)if(t&&!(e=t({frame:e,track:this})))return;return e}get isBig(){return 4===this.mediaType}get isSmall(){return 8===this.mediaType}changeType(e){this.room.changeType(e,this.user)}get isRemotePublished(){return this.user.muteState.videoAvailable}setMirror(e){"publish"===e||"both"===e||super.setMirror(e)}setDraggable(e){this.shouldBeDraggable=e,this.alphaNode&&(this.alphaNode.draggable=e,this.alphaNode.bindDragEvents())}onDecodeDowngradeStateChanged(e){this.emit("decode-downgrade-state-changed",e)}updateKeyFramesDecoded(e){let t=this.stat.keyFramesDecoded||0;if(this.stat.keyFramesDecoded=e,this._keyFrameCountLogged)return;let i=Date.now();if(!this._keyFrameStartTimestamp)return this._keyFrameStartTimestamp=i,this._keyFrameStartCount=e,void(this._prevKeyFrameTimestamp=i);if(this._prevKeyFrameTimestamp&&e>t){let r=e-t,n=(i-this._prevKeyFrameTimestamp)/1e3/r;this._keyFrameIntervals.push(n)}this._prevKeyFrameTimestamp=i;let r=i-this._keyFrameStartTimestamp;if(r>=16e3){let t=e-this._keyFrameStartCount,i=t>0?r/1e3/t:0,n="".concat(t," keyframes in 16s ").concat(i," [").concat(this._keyFrameIntervals.map(e=>e.toFixed(1)).join(","),"] keyFramesDecoded ").concat(e),a=i<=2.5?"debug":"info";this.log[a](n),this._keyFrameCountLogged=!0}}},nM=new Map;function aM(e,t){let i=EA(yA({},t),{timestamp:nk()});nM.has(e)?nM.get(e).push(i):nM.set(e,[i])}LO.on(NO.JOIN_SUCCESS,e=>{let{room:t}=e;aM(t.userId,{eventId:32788})}),LO.on(NO.LEAVE_START,e=>{let{room:t}=e;aM(t.userId,{eventId:32789})}),LO.on(NO.LOCAL_TRACK_PUBLISHED,e=>{let{track:t}=e;if(t.room){let e=32769;4===t.mediaType?e=32768:2===t.mediaType&&(e=32805),aM(t.room.userId,{eventId:e})}}),LO.on(NO.LOCAL_TRACK_UNPUBLISHED,e=>{let{track:t}=e;if(t.room){let e=32771;4===t.mediaType?e=32770:2===t.mediaType&&(e=32806),aM(t.room.userId,{eventId:e})}}),LO.on(NO.TRACK_MUTED,e=>{let{track:t}=e;t.room&&(t.kind===$A?aM(t.room.userId,{eventId:t.isRemote?32785:32772,remoteUserId:t.isRemote?t.userId:void 0}):aM(t.room.userId,{eventId:t.isRemote?32784:32773,remoteUserId:t.isRemote?t.userId:void 0}))}),LO.on(NO.TRACK_UNMUTED,e=>{let{track:t}=e;t.room&&(t.kind===$A?aM(t.room.userId,{eventId:t.isRemote?32787:32774,remoteUserId:t.isRemote?t.userId:void 0}):aM(t.room.userId,{eventId:t.isRemote?32786:32775,remoteUserId:t.isRemote?t.userId:void 0}))}),LO.on(NO.REMOTE_TRACK_SUBSCRIBED,e=>{let{track:t}=e;t.room&&(1===t.mediaType&&aM(t.room.userId,{eventId:32777,remoteUserId:t.userId}),4===t.mediaType&&aM(t.room.userId,{eventId:32776,remoteUserId:t.userId}),8===t.mediaType&&aM(t.room.userId,{eventId:32803,remoteUserId:t.userId}))}),LO.on(NO.REMOTE_TRACK_UNSUBSCRIBED,e=>{let{track:t}=e;t.room&&(1===t.mediaType&&aM(t.room.userId,{eventId:32779,remoteUserId:t.userId}),4===t.mediaType&&aM(t.room.userId,{eventId:32778,remoteUserId:t.userId}),8===t.mediaType&&aM(t.room.userId,{eventId:32804,remoteUserId:t.userId}))}),LO.on(NO.SWITCH_DEVICE_SUCCESS,e=>{let{track:t}=e;t.room&&aM(t.room.userId,{eventId:t.kind===eR?32780:32781})}),LO.on(NO.LOCAL_TRACK_REPLACED,e=>{let{track:t}=e;t.room&&aM(t.room.userId,{eventId:t.kind===eR?32782:32783})}),LO.on(NO.SIGNAL_CONNECTION_STATE_CHANGED,e=>{let t,{room:i,prevState:r,state:n}=e;switch(n){case"CONNECTED":t="RECONNECTING"===r?32795:32791;break;case"DISCONNECTED":t="RECONNECTING"===r?32796:32790;break;case"RECONNECTING":t=32794}t&&aM(i.userId,{eventId:t})}),LO.on(NO.PEER_CONNECTION_STATE_CHANGED,e=>{let t,{room:i,prevState:r,state:n,remoteUserId:a}=e,o=!!a;switch(n){case"CONNECTED":t="RECONNECTING"===r?o?32801:32798:o?32793:32792;break;case"DISCONNECTED":"RECONNECTING"===r&&(t=o?32802:32799);break;case"RECONNECTING":t=o?32800:32797}t&&aM(i.userId,{eventId:t,remoteUserId:a})}),LO.on(NO.VIDEO_CODEC_IMPLEMENTATION_CHANGED,e=>{let{implementation:t,userId:i,remoteUserId:r,codec:n,isHWCodec:a,prevImplementation:o,streamType:s}=e,c=a?1:0;o||(c=a?3:2);let l={H264:0,H265:1,VP8:2}[n.toUpperCase()],d={eventId:4004,param1:c,param2:l,streamType:s||2};r&&(d.remoteUserId=r,d.eventId=4005),aM(i,d),XO.addEnum({key:r?514701:513701,value:c}),XO.addEnum({key:r?514700:513700,value:l})}),LO.on(NO.LOCAL_TRACK_RECAPTURE,e=>{let{track:t,error:i}=e;if(t.userId){let e={eventId:2003,param1:0};t.kind===$A?(e.streamType=1,i&&(e.param1=2)):(e.streamType="auxiliary"===t.streamType?7:2,i&&(e.param1=8)),aM(t.userId,e)}}),TA(kA(),1),TA(kA(),1);var oM="trtc_debug_dialog",sM="".concat(oM,"_activated"),cM="".concat(oM,"_switch"),lM="".concat(oM,"_mask"),dM="".concat(oM,"_panel"),uM="".concat(oM,"_tabber"),hM="".concat(oM,"_tab"),pM="".concat(oM,"_topbar"),fM="".concat(oM,"_toptab"),mM="".concat(oM,"_content"),gM="".concat(oM,"_has_topbar"),vM="".concat(mM,"_log"),_M="".concat(mM,"_network"),yM="".concat(oM,"_dump"),EM="".concat(_M,"_title"),bM="".concat(_M,"_basic"),wM="".concat(_M,"_local"),IM="".concat(_M,"_remote"),TM="".concat(yM,"_title"),SM="".concat(yM,"_local"),AM="".concat(yM,"_remote"),RM="".concat(AM,"_hook"),kM="".concat(oM,"_banner"),CM="".concat(kM,"_item"),DM="".concat(oM,"_toolbar"),OM="".concat(oM,"_tool"),LM="".concat(oM,"_item"),NM="".concat(LM,"_debug"),PM="".concat(LM,"_info"),xM="".concat(LM,"_warn"),MM="".concat(LM,"_error"),UM="".concat(oM,"_back_top"),BM="".concat(oM,"_go_bottom"),FM="".concat(yM,"_local_audio"),VM="".concat(yM,"_local_video_main"),HM="".concat(yM,"_local_video_aux"),jM="".concat(oM,"_tooltip"),zM="".concat(bM,"_network_info"),WM="".concat(bM,"_room_info"),GM="".concat(vM,"_controller"),qM="success",KM="warning",YM="failed",XM=0,ZM=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),this.addStyle(),this.addDialog()}addDialog(){var e;let t=document.createElement("template");t.innerHTML='<div id="'.concat(oM,'" class="').concat(oM,'"><div class="').concat(cM,'">Debug#').concat(++XM,'</div><div class="').concat(lM,'"></div><div class="').concat(dM,'"><div class="').concat(uM,'"><a class="').concat(hM," ").concat(sM,'" data-tab="log">').concat(CR,'</a><a class="').concat(hM,'" data-tab="network">').concat(DR,'</a><a class="').concat(hM,'" data-tab="dump">').concat(OR,'</a></div><div class="').concat(GM,'"><div data-type="back_top">').concat(VR,'</div><div data-type="go_bottom">').concat(FR,'</div><div data-type="clear_log">').concat(HR,'</div></div><div class="').concat(pM,'"><a class="').concat(fM," ").concat(sM,'" data-type="all">All</a><a class="').concat(fM,'" data-type="debug">Debug</a><a class="').concat(fM,'" data-type="info">Info</a><a class="').concat(fM,'" data-type="warn">Warn</a><a class="').concat(fM,'" data-type="error">Error</a></div><div class="').concat(mM," ").concat(gM,'"><div class="').concat(vM,'"></div><div class="').concat(_M,'"><div class="').concat(EM,'">').concat(GR,'</div><div class="').concat(bM,'"><div class="').concat(WM,'"></div><div class="').concat(zM,'">').concat(WR,'</div></div><div class="').concat(EM,'">').concat(jR,'</div><div class="').concat(wM,'">').concat(WR,'</div><div class="').concat(EM,'">').concat(zR,'</div><div class="').concat(IM,'">').concat(WR,'</div></div><div class="').concat(yM,'"><div class="').concat(TM,'">').concat(jR,'</div><div class="').concat(SM,'"><div id="').concat(FM,'"><span>').concat(YR," - ").concat(qR,'(s):</span><input type="number" min=0 value=0></input><button class="dump">').concat(LR,'</button><button class="dump-opus">').concat(NR,'</button><button class="end-dump" disabled>').concat(xR,'</button></div><div id="').concat(VM,'"><span>').concat(KR," - ").concat(qR,'(s):</span><input type="number" min=0 value=0></input><button class="dump">').concat(OR,'</button><button class="end-dump" disabled>').concat(xR,'</button></div><div id="').concat(HM,'"><span>').concat(XR," - ").concat(qR,'(s):</span><input type="number" min=0 value=0></input><button class="dump">').concat(OR,'</button><button class="end-dump" disabled>').concat(xR,'</button></div></div><div class="').concat(TM,'">').concat(zR,'</div><div class="').concat(AM,'"><div class="').concat(RM,"\">userId:<input id=\"dump-remote-video-hook-userid\" value='*' />duration:<input id=\"dump-remote-video-hook-duration\" min='1' value='0' type='number' />mediaType:<select id=\"dump-remote-video-hook-mediaType\" value='main' ><option value='main' checked>Video</option><option value='sub'>Screen</option></select><button id=\"dump-remote-video-hook-button\">dump if video is available</button></div></div></div></div><div class=\"").concat(kM,'"></div><div class="').concat(DM,'"><a id="trtc_upload" class="').concat(OM,'">').concat(MR,'</a><a id="trtc_export" class="').concat(OM,'">').concat(UR,'</a><a id="trtc_hide" class="').concat(OM,'">').concat(BR,"</a></div></div></div>"),null==(e=this.shadowRoot)||e.appendChild(t.content.firstChild)}addStyle(){var e;let t=document.createElement("style");t.textContent="#".concat(oM,"{font-size:14px;--DD-BG-0:#ededed;--DD-BG-1:#f7f7f7;--DD-BG-2:#fff;--DD-BORDER:rgba(0,0,0,0.1);--DD-ERROR:red;--DD-WARN:#fa9d3b;--DD-INFO:#000;--DD-DEBUG:#10aeff;--DD-WARN-BG:#fff3cc;--DD-ERROR-BG:#ffe6e6;}#").concat(oM," a,.").concat(cM,"{cursor:pointer;}.").concat(oM,"{color:black;}.").concat(cM,"{display:block;position:fixed;right:50px;bottom:").concat(150+50*XM,"px;border-radius:5px;background-color:#07c160;color:#fff;padding:5px 10px;z-index:10000;}.").concat(lM,"{display:none;position:fixed;left:0;top:0;right:0;bottom:0;z-index:10001;background-color:rgb(0,0,0,0.6);}.").concat(dM,"{background-color:#ededed;display:none;position:fixed;min-height:85%;left:60%;right:0;bottom:0;z-index:10002;border:1px solid var(--DD-BG-0);}@media (max-width:768px) {.").concat(dM,"{left:0;}}.").concat(uM,"{display:flex;height:2em;border-bottom:1px solid var(--DD-BORDER);}.").concat(hM,"{padding:0 20px;border-right:1px solid rgba(0,0,0,0.1);line-height:2em;color:black;}.").concat(hM,".").concat(sM,"{background-color:var(--DD-BG-2);}.").concat(hM,".disabled{cursor:not-allowed;background-color:#ededed;color:#999;}.").concat(pM,"{height:2em;display:flex;flex-direction:row;}.").concat(fM,"{width:20%;text-align:center;line-height:2em;border-right:1px solid var(--DD-BORDER);border-bottom:1px solid var(--DD-BORDER);color:black;}.").concat(fM,".").concat(sM,"{border-bottom:1px solid #1485ee;background-color:var(--DD-BG-2);}.").concat(mM,"{background-color:#fff;position:absolute;left:0;right:0;top:2em;bottom:8em;overflow-y:scroll;overflow-x:hidden;}.").concat(mM,".").concat(gM,"{top:4em;bottom:10em}.").concat(_M,"{display:none;}.").concat(yM,"{display:none;}.").concat(EM,",.").concat(TM,"{line-height:2em;text-align:center;background-color:var(--DD-BG-0);border-bottom:1px solid var(--DD-BORDER);}.").concat(bM,",.").concat(wM,",.").concat(IM,"{text-align:center;border-bottom:1px solid var(--DD-BORDER);}.").concat(SM,",.").concat(AM,"{display:flex;flex-direction:column;padding:0.5em 0;justify-content:center;align-items:center;}.").concat(SM," div input{margin:0 10px;height:1.5em;width:4em;}.").concat(SM," div {padding:10px 0;border-radius:5px;}.").concat(SM," div button,.").concat(AM," div button {cursor:pointer;height:1.8em;border-radius:5px;margin-right:5px;}.").concat(SM," div button[disabled],.").concat(AM," div button[disabled]{cursor:not-allowed;}.").concat(AM," select {height:1.8em;margin:0 10px;}.").concat(AM," div input{margin:0 10px;height:1.5em;width:4em;}.").concat(RM," {line-height:3em;padding:0.5em;}.").concat(EM,"{text-align:center;background-color:var(--DD-BG-0);border-bottom:1px solid var(--DD-BORDER);}.").concat(bM,",.").concat(wM,",.").concat(IM,"{text-align:center;border-bottom:1px solid var(--DD-BORDER);}.").concat(LM,"{border-bottom:1px solid var(--DD-BG-0);padding:5px 10px;overflow-wrap: break-word;}.").concat(MM,"{color:var(--DD-ERROR);background-color:var(--DD-ERROR-BG);}.").concat(xM,"{color:var(--DD-WARN);background-color:var(--DD-WARN-BG);}div .").concat(PM,"{color:var(--DD-INFO);}.").concat(NM,"{color:var(--DD-DEBUG);}.").concat(kM,"{position:absolute;left:0;right:0;bottom:2em;height:6em;border-bottom:1px solid var(--DD-BORDER);display:flex;flex-direction:column;overflow-y:scroll;background-color:var(--DD-BG-1);}.").concat(CM,"{border-bottom:1px solid var(--DD-BORDER);padding:5px 10px;overflow-wrap: break-word;}.").concat(DM,"{position:absolute;line-height:2em;display:flex;flex-direction:row;left:0;right:0;bottom:0;}.").concat(OM,"{flex:1;color:black;text-align:center;background-color:#ededed;border-right:1px solid var(--DD-BORDER);}#").concat(oM," .").concat(UM,",#").concat(oM," .").concat(BM,"{position:absolute;height:2em;width:6em;right:2em;border-radius:5px;background-color:rgba(30,136,229,0.8);z-index:10003;cursor:pointer;padding:0 5px;line-height:2em;color:white;text-align:center;}.").concat(BM,"{bottom:9em;}.").concat(UM,"{bottom:11.5em;}#").concat(oM," .").concat(OM,".disable{cursor:not-allowed;background-color:#ededed;color:#999;}.").concat(jM," {position:relative;display:inline-block;}.").concat(jM," .tooltiptext{visibility:hidden;width:180px;background-color:black;color:#fff;text-align:center;padding:5px 0;border-radius:6px;position:absolute;}.").concat(jM," .tooltip-top {bottom:125%;left:50%;margin-left:-90px;}.").concat(jM,":hover .tooltiptext{visibility:visible;}.").concat(GM,"{position:absolute;left:0;right:0;bottom:8em;height:2em;display:flex;align-items:center;}.").concat(GM," div{flex:1;cursor:pointer;border-right:1px solid var(--DD-BORDER);text-align: center;}"),null==(e=this.shadowRoot)||e.appendChild(t)}};customElements.define("trtc-basic-debug-dialog",ZM);var JM=class{constructor(e,t){AA(this,"_dialogNode",null),AA(this,"_switchNode",null),AA(this,"_maskNode",null),AA(this,"_panelNode",null),AA(this,"_logContentNode",null),AA(this,"_networkContentNode",null),AA(this,"_dumpContentNode",null),AA(this,"_tabNodes",[]),AA(this,"_toptabNodes",[]),AA(this,"_hasMove",!1),AA(this,"_showDialog",!1),AA(this,"_isMobile",!1),AA(this,"_showLogType","all"),AA(this,"prevBytesSent",0),AA(this,"prevBytesReceived",0),AA(this,"_core"),AA(this,"_log"),AA(this,"_logList",[]),AA(this,"isUploading",!1),AA(this,"publishMap",new Map),AA(this,"dumpLocalVideoMap",{}),AA(this,"dumpRemoteVideoMap",{}),AA(this,"dumpLocalAudioMap",{}),AA(this,"dumpRemoteAudioMap",{}),AA(this,"eventMap",new Map),AA(this,"switchPos",{x:0,y:0,startX:0,startY:0,endX:0,endY:0,isTouchEnd:!1}),AA(this,"handleLeaveSuccess",e=>{let{room:t}=e;var i,r;if(!this.hitTest(t))return;let n=null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(AM));for(let a of this.publishMap.values())null==n||n.removeChild(a);this.publishMap.clear()}),AA(this,"handleJoinSuccess",e=>{let{room:t}=e;var i,r;if(!this.hitTest(t))return;(null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(WM))).innerHTML="sdkAppId: ".concat(t.sdkAppId,"<br/>roomId: ").concat(t.roomId,"<br/>userId: ").concat(t.userId,"<br/>")}),AA(this,"handleRemoteVideoAvailable",e=>{let t="sub"===e.streamType?"auxiliary":"main";this.renderDumpTab(e.userId,"remote",t,"publish")}),AA(this,"handleRemoteVideoUnavailable",e=>{let t="sub"===e.streamType?"auxiliary":"main";this.renderDumpTab(e.userId,"remote",t,"unpublish")}),AA(this,"handleRemoteAudioAvailable",e=>{this.renderDumpTab(e.userId,"remote","audio","publish")}),AA(this,"handleRemoteAudioUnavailable",e=>{this.renderDumpTab(e.userId,"remote","audio","unpublish")}),AA(this,"renderDumpTab",(e,t,i,r)=>{var n,a,o;let s={main:"video",auxiliary:"screen",audio:"audio"},c=(e,t)=>{var i,r,n;let a=document.createElement("div");a.innerText="".concat(e," - ").concat(s[t]," - ").concat(qR,"(s):");let o=document.createElement("input");o.type="number",o.min="0",o.value="10",o.id="dump_remote_".concat(t,"_").concat(e);let c,l=document.createElement("button");l.innerText=xR,l.disabled=!0,"audio"===t&&(c=document.createElement("button"),c.innerText=NR,c.style.marginLeft="5px");let d,u,h=document.createElement("button");if(h.innerText="audio"===t?LR:OR,h.onclick=()=>{let i,r,n=Number(o.value);if("audio"===t)({download:i,onDumpEnd:r}=this.dumpAudio("remote",n,e));else{if(!this.isSupportDumpVideo())return;({download:i,onDumpEnd:r}=this.dumpVideo(t,"remote",n,e))}i&&(this.inactiveButton(h,PR),c&&this.inactiveButton(c),n>0?setTimeout(()=>{null==i||i(),this.activeButton(h,OR),c&&this.activeButton(c,NR)},1e3*n):(this.activeButton(l),l.onclick=()=>{l.onclick=null,null==i||i(),null==r||r(),this.activeButton(h,OR),c&&this.activeButton(c,NR),this.inactiveButton(l)}))},c&&(c.onclick=()=>{let t=Number(o.value),{download:i,onDumpEnd:r}=this.dumpAudioFromPipeline("remote",t,e);i&&(this.inactiveButton(c,PR),this.inactiveButton(h),t>0?setTimeout(()=>{null==i||i(),this.activeButton(c,NR),this.activeButton(h,OR)},1e3*t):(this.activeButton(l),l.onclick=()=>{l.onclick=null,null==i||i(),null==r||r(),this.activeButton(c,NR),this.activeButton(h,OR),this.inactiveButton(l)}))}),"audio"!==t&&(d=document.createElement("button"),d.innerText="Dump w/ Audio",d.style.marginLeft="5px",d.onclick=()=>{if(!this.isSupportDumpVideo())return;let i=Number(o.value),r=this.dumpVideo(t,"remote",i,e),n=this.dumpAudioFromPipeline("remote",i,e);if(!r.download&&!n.download)return;let a=async()=>{var i,a,o,s;let c=new $R.default,l=this.dumpRemoteVideoMap["".concat(e,"-").concat(t)];if(l&&l.data.length>0){let i,r="h264",n=this.getVideoCodec(e);if("vp8"===n){let n=this._core.room.remotePublishedUserMap.get(e),a="main"===t?null==n?void 0:n.remoteVideoTrack:null==n?void 0:n.remoteAuxiliaryTrack;this.addInfoToBanner(KM,"package vp8 into ivf format"),i=this.convertVP8ToIVF(l.data,a),r="ivf"}else i=new Blob(l.data),r=n||"h264";let a="remote-".concat(e,"_").concat(t,"_").concat(this.formatStartDumpTime(l.startTimestamp),".").concat(r);c.file(a,i)}let d=this.dumpRemoteAudioMap["".concat(e)];if(d&&d.data.length>0){let t,r=(null==(a=null==(i=this._core.room.userManager)?void 0:i.getPublishedUser(e))?void 0:a.audioCodec)||"opus",n=r;"opus"===r?(this.addInfoToBanner(KM,"package opus to ogg"),t=this.convertOpusToOgg(d.data),n="ogg"):t=new Blob(d.data);let o="remote-".concat(e,"_audio_").concat(this.formatStartDumpTime(d.startTimestamp),".").concat(n);c.file(o,t)}let u=await c.generateAsync({type:"blob"}),h=URL.createObjectURL(u),p=document.createElement("a");p.href=h,p.download="dump_".concat(e,"_").concat(this.formatStartDumpTime(Date.now()),".zip"),p.style.display="none",document.body.appendChild(p),p.click(),URL.revokeObjectURL(h),document.body.removeChild(p),null==(o=r.onDumpEnd)||o.call(r),null==(s=n.onDumpEnd)||s.call(n),this.addInfoToBanner(qM,"Dump success, file name is: ".concat(p.download))};this.inactiveButton(d,PR),this.inactiveButton(h),i>0?setTimeout(()=>{a(),this.activeButton(d,"Dump w/ Audio"),this.activeButton(h,OR)},1e3*i):(this.activeButton(l),l.onclick=()=>{l.onclick=null,a(),this.activeButton(d,"Dump w/ Audio"),this.activeButton(h,OR),this.inactiveButton(l)})}),"audio"!==t){u=document.createElement("button"),u.innerText="Preview",u.style.whiteSpace="Pre";let i=document.createElement("video");document.body.appendChild(i),i.id="".concat(oM,"_preview_remote_").concat(t,"_").concat(e),i.style.cssText="\n width: 320px;\n height: 240px;\n display: none;\n position: absolute;\n top: 50%;\n left: 50%;\n border: 3px solid #cccccc;\n transform: translate(-50%, -50%);\n z-index: 10004;\n ",u.onclick=async()=>{var r;if(i.style.display="none"===i.style.display?"":"none",u&&(u.innerText="none"===i.style.display?"Preview":" Hide "),!i.srcObject){let n=this._core.room.remotePublishedUserMap.get(e);if(n){let e=null==(r=n["main"===t?"remoteVideoTrack":"remoteAuxiliaryTrack"])?void 0:r.mediaTrack;e?(i.srcObject=new MediaStream([e]),await i.play()):this.addInfoToBanner(YM,"failed to preview, remote video track is not available")}}}}a.appendChild(o),a.appendChild(h),c&&a.appendChild(c),d&&a.appendChild(d),a.appendChild(l),u&&a.appendChild(u),a.style.cssText="padding:10px;";let p=document.createElement("div");return p.style.cssText="width:100%;display:flex;justify-content:center;border-top: 1px solid var(--DD-BORDER);",p.appendChild(a),null==(n=null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(AM)))||n.appendChild(p),p};if("remote"===t)if("publish"===r){let r=c(e,i);this.publishMap.set("".concat(e,"-").concat(t,"-").concat(i),r)}else{let r=this.publishMap.get("".concat(e,"-").concat(t,"-").concat(i));if(!r)return;null==(o=null==(a=null==(n=this._dialogNode)?void 0:n.shadowRoot)?void 0:a.querySelector(".".concat(AM)))||o.removeChild(r);let s=document.querySelector("#".concat(oM,"_preview_remote_").concat(i,"_").concat(e));s&&document.body.removeChild(s),this.publishMap.delete("".concat(e,"-").concat(t,"-").concat(i))}}),AA(this,"handleStatistics",e=>{var t,i,r,n,a,o;let s=(e.bytesSent-this.prevBytesSent)/2,c=(e.bytesReceived-this.prevBytesReceived)/2;this.prevBytesSent=e.bytesSent,this.prevBytesReceived=e.bytesReceived,(null==(i=null==(t=this._dialogNode)?void 0:t.shadowRoot)?void 0:i.querySelector(".".concat(zM))).innerHTML="rtt: ".concat(e.rtt," ms upLoss: ").concat(e.upLoss,"% downLoss: ").concat(e.downLoss,"% <br>\n ↑ ").concat(s/1e3," KB/s (").concat(8*s/1e3," Kb/s) <br>\n ↓ ").concat(c/1e3," KB/s (").concat(8*c/1e3," Kb/s) <br>\n ");let l=null==(n=null==(r=this._dialogNode)?void 0:r.shadowRoot)?void 0:n.querySelector(".".concat(wM)),d="";e.localStatistics.audio.bitrate&&(d="<li>local audio: ".concat(e.localStatistics.audio.bitrate," Kb/s audioLevel: ").concat(e.localStatistics.audio.audioLevel.toFixed(5),"</li>")),e.localStatistics.video.length>0&&(d+="".concat(e.localStatistics.video.map(e=>"<li>local ".concat(e.videoType," video: ").concat(e.bitrate," Kb/s ").concat(e.width,"*").concat(e.height," ").concat(e.frameRate,"fps</li>")).join(""))),l.innerHTML=""===d?"".concat(WR):d;let u=null==(o=null==(a=this._dialogNode)?void 0:a.shadowRoot)?void 0:o.querySelector(".".concat(IM)),h="";e.remoteStatistics.length>0&&e.remoteStatistics.forEach(e=>{let t="remote ".concat(e.userId,":");e.audio.bitrate>0&&(t+="<li>audio: ".concat(e.audio.bitrate," Kb/s audioLevel: ").concat(e.audio.audioLevel.toFixed(5),"</li>")),e.video.length>0&&e.video.forEach(e=>{t+="<li>".concat(e.videoType," video: ").concat(e.bitrate," Kb/s ").concat(e.width,"*").concat(e.height," ").concat(e.frameRate,"fps</li>")}),h+=t}),u.innerHTML=""===h?"".concat(WR):h}),AA(this,"pad",e=>e<10?"0".concat(e):"".concat(e)),this._core=e,this._log=t,this.initCustomElements(),this.synchronizeLog(),this.installEvents(),this.addVideoProcessor(),this.addAudioProcessor(),window["__trtc_instance_".concat(XM,"__")]=this._core.trtc}initCustomElements(){this._isMobile=(()=>{let e=window.navigator&&window.navigator.userAgent||"",t=/iPad/i.test(e)||/iPhone/i.test(e),i=/Android/i.test(e);return t||i})();let e=document.createElement("trtc-basic-debug-dialog");document.body.appendChild(e);let t=e.shadowRoot;if(this._dialogNode=e,!t)return;this._switchNode=t.querySelector(".".concat(cM)),this._addEventListener(this._switchNode,"click",this.onSwitchClick.bind(this));let i=getComputedStyle(this._switchNode);this.switchPos.x=parseInt(i.right,10)||50,this.switchPos.y=parseInt(i.bottom,10)||100+50*XM,this._isMobile?(this._switchNode.ontouchstart=this.onTouchStart.bind(this),this._switchNode.ontouchend=this.onTouchEnd.bind(this),this._switchNode.ontouchmove=this.onTouchMove.bind(this)):this._switchNode.onmousedown=this.onMouseDown.bind(this),this._maskNode=t.querySelector(".".concat(lM)),this._addEventListener(this._maskNode,"click",this.onMaskClick.bind(this)),this._panelNode=t.querySelector(".".concat(dM)),t.querySelector(".".concat(GM)).childNodes.forEach(e=>{switch(e.getAttribute("data-type")){case"go_bottom":this._addEventListener(e,"click",this.onGoBottomClick.bind(this));break;case"back_top":this._addEventListener(e,"click",this.onBackTopClick.bind(this));break;case"clear_log":this._addEventListener(e,"click",this.onClearLogClick.bind(this))}}),this._logContentNode=t.querySelector(".".concat(vM)),this._networkContentNode=t.querySelector(".".concat(_M)),this._dumpContentNode=t.querySelector(".".concat(yM)),this._tabNodes=Array.from(t.querySelector(".".concat(uM)).children),this._tabNodes.forEach(e=>{this._addEventListener(e,"click",this.onTabClick.bind(this))}),this._toptabNodes=Array.from(t.querySelector(".".concat(pM)).children),this._toptabNodes.forEach(e=>{this._addEventListener(e,"click",this.onToptabClick.bind(this))});let r=t.querySelector("#trtc_upload");this._addEventListener(r,"click",this.onUploadClick.bind(this));let n=t.querySelector("#trtc_export");this._addEventListener(n,"click",this.onExportClick.bind(this));let a=t.querySelector("#trtc_hide");this._addEventListener(a,"click",this.onHideClick.bind(this));let o=t.querySelector("#".concat(VM," .dump")),s=t.querySelector("#".concat(VM," .end-dump")),c=Number(t.querySelector("#".concat(VM," input")).value);this._addEventListener(o,"click",this.getDumpButtonClickHandler.bind(this,o,s,c,"main","local"));let l=t.querySelector("#".concat(HM," .dump")),d=t.querySelector("#".concat(HM," .end-dump")),u=Number(t.querySelector("#".concat(HM," input")).value);this._addEventListener(l,"click",this.getDumpButtonClickHandler.bind(this,l,d,u,"auxiliary","local"));let h=t.querySelector("#".concat(FM," .dump")),p=t.querySelector("#".concat(FM," .dump-opus")),f=t.querySelector("#".concat(FM," .end-dump"));this._addEventListener(h,"click",()=>{let e=Number(t.querySelector("#".concat(FM," input")).value),{download:i,onDumpEnd:r}=this.dumpAudio("local",e);i?(this.inactiveButton(h,PR),this.inactiveButton(p),e>0?setTimeout(()=>{i(),this.activeButton(h,LR),this.activeButton(p,NR)},1e3*e):(this.activeButton(f),f.onclick=()=>{f.onclick=null,i(),null==r||r(),this.activeButton(h,LR),this.activeButton(p,NR),this.inactiveButton(f)})):this.addInfoToBanner(YM,"Failed to dump, please check if the current user has started the audio")}),this._addEventListener(p,"click",()=>{let e=Number(t.querySelector("#".concat(FM," input")).value),{download:i,onDumpEnd:r}=this.dumpAudioFromPipeline("local",e);i?(this.inactiveButton(p,PR),this.inactiveButton(h),e>0?setTimeout(()=>{i(),this.activeButton(p,NR),this.activeButton(h,LR)},1e3*e):(this.activeButton(f),f.onclick=()=>{f.onclick=null,i(),null==r||r(),this.activeButton(p,NR),this.activeButton(h,LR),this.inactiveButton(f)})):this.addInfoToBanner(YM,"Failed to dump opus, please check if the current user has started the audio")});let m=t.querySelector("#dump-remote-video-hook-userid"),g=t.querySelector("#dump-remote-video-hook-duration"),v=t.querySelector("#dump-remote-video-hook-mediaType"),_=t.querySelector("#dump-remote-video-hook-button");_.onclick=()=>{let e=Number(g.value);if(e<1)return void this.addInfoToBanner(YM,"duration at least 1s");let t=m.value;if(!t)return void this.addInfoToBanner(YM,"please input user id");"*"===t&&this.inactiveButton(_);let i,r,n=v.value,a="remote_".concat(t,"_").concat("sub"===n?"auxiliary":n),o=a=>{if((a.userId===t||"*"===t)&&a.streamType===n){if(this.addInfoToBanner(qM,"[".concat(a.userId,"_").concat(n,"] starting to dump video, duration: ").concat(e,"s")),({download:i,onDumpEnd:r}=this.dumpVideo("sub"===a.streamType?"auxiliary":a.streamType,"remote",e,a.userId)),!i)return;setTimeout(()=>{null==i||i(),null==r||r(),"*"!==t&&this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_VIDEO_AVAILABLE,o)},1e3*e)}};this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_VIDEO_AVAILABLE,o),this.addInfoToBanner(qM,"[".concat(a,"] waiting to dump video from ").concat("*"===t?"all remote users":"user ".concat(t),", duration: ").concat(e,"s"))}}synchronizeLog(){this._core.loggerManager.getQueue().forEach(e=>{this.updateLog(e)})}isSupportDumpVideo(){return!(!this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED&&!this._core.rtcDectection.IS_SCRIPT_TRANSFORM_SUPPORTED)||(this.addInfoToBanner(YM,"Current browser does not support dumping video"),!1)}_addEventListener(e,t,i,r){e&&(e.addEventListener(t,i,r),this.eventMap.set(e,{type:t,listener:i}))}_removeEventListener(){this.eventMap.forEach((e,t)=>{let{type:i,listener:r}=e;t&&t.removeEventListener(i,r)}),this.eventMap.clear(),this._switchNode&&(this._switchNode.onmousedown=null,this._switchNode.ontouchmove=null,this._switchNode.ontouchstart=null,this._switchNode.ontouchend=null)}closeDialog(){this.uninstallEvents(),this._removeEventListener(),this.removeVideoProcessor(),this.removeAudioProcessor(),this._dialogNode&&(document.body.removeChild(this._dialogNode),this._dialogNode=null)}updateLog(e){var t;this._logList.push(e);let i=document.createElement("div");switch(i.classList.add(LM),e.level){case 4:i.classList.add(MM);break;case 2:i.classList.add(PM);break;case 3:i.classList.add(xM);break;case 1:i.classList.add(NM)}i.textContent=e.log,"all"!==this._showLogType&&!i.classList.contains("".concat(LM,"_").concat(this._showLogType))&&(i.style.display="none"),null==(t=this._logContentNode)||t.appendChild(i),this.addHelper(i)}getDumpButtonClickHandler(e,t,i,r,n){if(!this.isSupportDumpVideo())return;let{download:a,onDumpEnd:o}=this.dumpVideo(r,n,i);if(a)return this.addInfoToBanner(qM,"[".concat(n,"_").concat(r,"] starting to dump...")),this.inactiveButton(e,PR),void(i>0?setTimeout(()=>{a(),this.activeButton(e,OR)},1e3*i):(this.activeButton(t),t.onclick=()=>{t.onclick=null,null==o||o(),a(),this.activeButton(e,OR),this.inactiveButton(t)}));this.addInfoToBanner(qM,"[".concat(n,"_").concat(r,"] waiting to dump..."));let s=a=>{let{track:o}=a;if(o.room===this._core.room&&o.streamType===r){this.addInfoToBanner(qM,"[".concat(n,"_").concat(r,"] starting to dump")),"local"===n&&this._core.innerEmitter.off("104",s);let{download:a,onDumpEnd:o}=this.dumpVideo(r,n,i);if(!a)return;i>0?setTimeout(()=>{a(),this.activeButton(e,OR)},1e3*i):(this.activeButton(t),t.onclick=()=>{t.onclick=null,null==o||o(),a(),this.activeButton(e,OR),this.inactiveButton(t)})}};s.bind(this),"local"===n&&this._core.innerEmitter.on("104",s),this.inactiveButton(e,PR)}onSwitchClick(){this._hasMove?this._hasMove=!1:this._showDialog?this.hideDialog():(this._isMobile&&(this._maskNode.style.display="block"),this._panelNode.style.display="block",this._switchNode.style.display="none",this._showDialog=!0,this.logContentGoBottom())}onTabClick(e){var t,i,r,n,a,o,s;let c=e.target;null==(t=this._tabNodes)||t.forEach(e=>{e.classList.remove(sM)}),c.classList.add(sM);let l=c.getAttribute("data-tab");"log"===l?(null==(n=null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(mM)))||n.classList.add(gM),this._logContentNode.style.display="block",this._networkContentNode.style.display="none",this._dumpContentNode.style.display="none",this.logContentGoBottom()):(null==(s=null==(o=null==(a=this._dialogNode)?void 0:a.shadowRoot)?void 0:o.querySelector(".".concat(mM)))||s.classList.remove(gM),"network"===l?(this._networkContentNode.style.display="block",this._logContentNode.style.display="none",this._dumpContentNode.style.display="none"):"dump"===l&&(this._dumpContentNode.style.display="block",this._networkContentNode.style.display="none",this._logContentNode.style.display="none"))}onToptabClick(e){var t,i;let r=e.target;null==(t=this._toptabNodes)||t.forEach(e=>{e.classList.remove(sM)}),r.classList.add(sM),this._showLogType=r.getAttribute("data-type");let n=null==(i=this._logContentNode)?void 0:i.querySelectorAll(".".concat(LM)),a="".concat(LM,"_").concat(this._showLogType);n.forEach(e=>{e.classList.contains(a)||"all"===this._showLogType?e.style.display="block":e.style.display="none"}),this.logContentGoBottom()}onExportClick(){let e=this._logList.reduce((e,t)=>"".concat(e+t.log,"\n"),""),t=new Blob([e],{type:"text/plain"}),i=document.createElement("a"),r=URL.createObjectURL(t);i.href=r;let n="trtc_".concat(void 0===this._core.room.sdkAppId?"EmptySdkAppId":this._core.room.sdkAppId,"_").concat(void 0===this._core.room.userId?"EmptyUserId":this._core.room.userId,"_").concat(this.formatStartDumpTime(+new Date),".log");i.download=n,i.style.display="none",document.body.appendChild(i),i.click(),URL.revokeObjectURL(r),document.body.removeChild(i),this.addInfoToBanner(qM,"Export success: The log file name is ".concat(n)),this._core.kvStatManager.addSuccessEvent({key:592703})}addInfoToBanner(e,t){var i,r;let n=null==(r=null==(i=this._dialogNode)?void 0:i.shadowRoot)?void 0:r.querySelector(".".concat(kM)),a=document.createElement("div");a.classList.add(CM);let o=e===qM?"🟩":e===KM?"🟧":"🟥";a.innerText="".concat(o," [").concat(this.getCurrentTime(),"] ").concat(t),n.appendChild(a),n.scrollTop=n.scrollHeight}async onUploadClick(){var e,t;if(this.isUploading)return;this.isUploading=!0;let i=null==(t=null==(e=this._dialogNode)?void 0:e.shadowRoot)?void 0:t.querySelector("#trtc_upload");i.innerText="Uploading...",null==i||i.classList.add(".disable");let r=this._logList.reduce((e,t)=>"".concat(e+t.log,"\n"),""),n=new Blob([r],{type:"text/plain"}),a=new FormData;a.append("file",n,"trtc.log"),a.append("sdkAppId","".concat(this._core.room.sdkAppId||"EmptySdkAppId")),a.append("userId","".concat(this._core.room.userId||"EmptyUserId")),fetch("https://service.trtc.qcloud.com/api/uploadLogFile",{method:"POST",body:a}).then(e=>e.json()).then(e=>{this.addInfoToBanner(e.type,e.message_en||"Upload Failed: Please use local export"),this.isUploading=!1,this._log.info(e.message_en),this._core.kvStatManager.addSuccessEvent({key:592704})}).catch(()=>{this.addInfoToBanner(YM,"Upload Failed: Please use local export"),this._log.info("Upload Failed: Please use local export"),this._core.kvStatManager.addFailedEvent({key:592704})}).finally(()=>{i.innerText=MR,null==i||i.classList.remove(".disable"),this.isUploading=!1})}onHideClick(){this.hideDialog()}onMaskClick(){this.hideDialog()}hideDialog(){this._isMobile&&(this._maskNode.style.display="none"),this._panelNode.style.display="none",this._switchNode.style.display="block",this._showDialog=!1}onBackTopClick(){var e,t,i;null==(i=null==(t=null==(e=this._dialogNode)?void 0:e.shadowRoot)?void 0:t.querySelector(".".concat(mM)))||i.scrollTo(0,0)}onGoBottomClick(){this.logContentGoBottom()}onClearLogClick(){this._logList=[],this._logContentNode&&(this._logContentNode.innerHTML="")}logContentGoBottom(){var e,t;let i=null==(t=null==(e=this._dialogNode)?void 0:e.shadowRoot)?void 0:t.querySelector(".".concat(mM));null==i||i.scrollTo(0,null==i?void 0:i.scrollHeight)}onMouseDown(e){e.preventDefault(),this.switchPos.startX=e.pageX,this.switchPos.startY=e.pageY,document.onmousemove=this.onMouseMove.bind(this),document.onmouseup=this.onMouseUp.bind(this)}onMouseMove(e){e.cancelable&&e.preventDefault(),this._hasMove=!0;let t=this.switchPos.x-(e.pageX-this.switchPos.startX),i=this.switchPos.y-(e.pageY-this.switchPos.startY);[t,i]=this.getSafeAreaXY(t,i),this._switchNode.style.right="".concat(t,"px"),this._switchNode.style.bottom="".concat(i,"px"),this.switchPos.endX=t,this.switchPos.endY=i}onMouseUp(){this.switchPos.startX=0,this.switchPos.startY=0,this.switchPos.x=this.switchPos.endX,this.switchPos.y=this.switchPos.endY,document.onmousemove=null,document.onmouseup=null}onTouchStart(e){this.switchPos.startX=e.touches[0].pageX,this.switchPos.startY=e.touches[0].pageY,this.switchPos.isTouchEnd=!1}onTouchEnd(){this.switchPos.isTouchEnd&&(this.switchPos.startX=0,this.switchPos.startY=0,this.switchPos.isTouchEnd=!1,this.switchPos.x=this.switchPos.endX,this.switchPos.y=this.switchPos.endY)}onTouchMove(e){if(e.touches.length<=0)return;let t=e.touches[0].pageX-this.switchPos.startX,i=e.touches[0].pageY-this.switchPos.startY,r=Math.floor(this.switchPos.x-t),n=Math.floor(this.switchPos.y-i);[r,n]=this.getSafeAreaXY(r,n),this._switchNode.style.right="".concat(r,"px"),this._switchNode.style.bottom="".concat(n,"px"),this.switchPos.endX=r,this.switchPos.endY=n,this.switchPos.isTouchEnd=!0,e.cancelable&&e.preventDefault()}getSafeAreaXY(e,t){let i=Math.max(document.documentElement.offsetWidth,window.innerWidth),r=Math.max(document.documentElement.offsetHeight,window.innerHeight);return e+this._switchNode.offsetWidth>i&&(e=i-this._switchNode.offsetWidth),t+this._switchNode.offsetHeight>r&&(t=r-this._switchNode.offsetHeight),e<0&&(e=0),t<20&&(t=20),[e,t]}hitTest(e){return e===this._core.room}installEvents(){this._core.innerEmitter.on("264",this.handleLog,this),this._core.innerEmitter.on("53",this.handleLeaveSuccess,this),this._core.innerEmitter.on("27",this.handleJoinSuccess,this),this._core.trtc.on(this._core.TRTC.EVENT.STATISTICS,this.handleStatistics,this),this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_AUDIO_AVAILABLE,this.handleRemoteAudioAvailable),this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_AUDIO_UNAVAILABLE,this.handleRemoteAudioUnavailable),this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_VIDEO_AVAILABLE,this.handleRemoteVideoAvailable),this._core.trtc.on(this._core.TRTC.EVENT.REMOTE_VIDEO_UNAVAILABLE,this.handleRemoteVideoUnavailable),this._core.room.on("dump",this.handleDumpFromScriptTransform,this)}uninstallEvents(){this._core.innerEmitter.off("264",this.handleLog,this),this._core.innerEmitter.off("53",this.handleLeaveSuccess,this),this._core.innerEmitter.off("27",this.handleJoinSuccess,this),this._core.trtc.off(this._core.TRTC.EVENT.STATISTICS,this.handleStatistics,this),this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_AUDIO_AVAILABLE,this.handleRemoteAudioAvailable),this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_AUDIO_UNAVAILABLE,this.handleRemoteAudioUnavailable),this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_VIDEO_AVAILABLE,this.handleRemoteVideoAvailable),this._core.trtc.off(this._core.TRTC.EVENT.REMOTE_VIDEO_UNAVAILABLE,this.handleRemoteVideoUnavailable),this._core.room.off("dump",this.handleDumpFromScriptTransform,this)}handleDumpFromScriptTransform(e){if(!e.isAudio)if(e.userId){let t=this.dumpRemoteVideoMap["".concat(e.userId,"-").concat(e.streamType)];t&&(t.data.push(e.data),t.duration>0&&Date.now()-t.startTimestamp>1e3*t.duration&&t.onDumpEnd())}else{let t="main"===e.streamType?"main":"sub",i=this.dumpLocalVideoMap[t];i&&(i.data.push(e.data),i.duration>0&&Date.now()-i.startTimestamp>1e3*i.duration&&i.onDumpEnd())}}inactiveButton(e,t){e.disabled=!0,t&&(e.innerText=t)}activeButton(e,t){e.disabled=!1,t&&(e.innerText=t)}handleLog(e){this.updateLog(e.log)}addHelper(e){let t=/((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}/g,i=QR,r=e.innerText;r=r.split("\n").map(e=>{if((e=e.replace(/</g,"&lt;").replace(/>/g,"&gt;")).includes("failed"))return e.includes("on autoplay-failed")?e:"<span class='red' style=\"background:red; color:#fff;\">".concat(e,"</span>");if(e.includes("clientIp:")){let i=e.match(t);return null==i||i.forEach(t=>{e=e.replace(t,'<a href="javascript:void(0);" target=""><span class=\'ip\' style="background:#e1dfdf">'.concat(t,"</span></a>"))}),e}return e.includes("URL of current page")&&(e=e.replace(/URL of current page: (.+)/,'URL of current page: <a href="$1">$1</a>')),e}).join("\n"),i.forEach(t=>{if(e.innerText.includes(t)){let i="";i="function"==typeof ZR[t].tips?ZR[t].tips(e.innerText):ZR[t].tips,r=r.replace(new RegExp("".concat((e=>e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d").replace(">","&gt;").replace(">","&lt;"))(t)),"gi"),'<span class="'.concat(jM,'" style="background:').concat(ZR[t].color||"#e1dfdf","; color: ").concat(ZR[t].textColor||"#000",'">').concat(t,'\n <span class="tooltiptext tooltip-top">').concat(i,"</span>\n </span>"))}}),e.innerHTML=r}getCurrentTime(){let e=new Date,t=this.pad(e.getHours()),i=this.pad(e.getMinutes()),r=this.pad(e.getSeconds());return"".concat(t,":").concat(i,":").concat(r)}dumpAudioFromPipeline(e,t,i){this.addInfoToBanner(KM,"dump audio from pipeline");let r=Date.now(),n=this.formatStartDumpTime(r),a=[],o="".concat(e,"_").concat(i);if("local"===e)this._core.trtc._localAudioTrack;else if(i){let e=this._core.room.remotePublishedUserMap.get(i);e&&e.remoteAudioTrack}let s;if("local"===e){if(!this.hasLocalTrack("main","audio"))return{};s=()=>{delete this.dumpLocalAudioMap.main},this.dumpLocalAudioMap.main={startTimestamp:r,data:a,duration:t,onDumpEnd:s}}if("remote"===e&&i){if(s=()=>{delete this.dumpRemoteAudioMap["".concat(i)]},this.dumpRemoteAudioMap["".concat(i)])return this.addInfoToBanner(KM,"[".concat(o,"] dump already exists.")),{};this.dumpRemoteAudioMap["".concat(i)]={startTimestamp:r,data:a,duration:t,onDumpEnd:s}}return{download:()=>{var t,r;if(0===a.length)return void this.addInfoToBanner(YM,"[".concat(o,"] dump failed. Reason: data is empty"));let s,c=("local"===e?null==(t=this._core.room.singlePC)?void 0:t.audioCodec:null==(r=this._core.room.userManager)?void 0:r.getPublishedUser(i).audioCodec)||"opus",l=c;"opus"===c?(this.addInfoToBanner(KM,"[".concat(o,"] package opus to ogg")),s=this.convertOpusToOgg(a),l="ogg"):s=new Blob(a);let d=URL.createObjectURL(s),u=document.createElement("a"),h="local"===e?"local_".concat(n,".").concat(l):"remote-".concat(i,"_").concat(n,".").concat(l);u.href=d,u.download=h,u.style.display="none",document.body.appendChild(u),u.click(),URL.revokeObjectURL(d),u.remove(),this.addInfoToBanner(qM,"[".concat(o,"] dump success. File name is: ").concat(h))},onDumpEnd:s}}dumpVideo(e,t,i,r){let n,a=Date.now(),o=this.formatStartDumpTime(a),s=[],c="".concat(t,"_").concat(r,"_").concat(e);if("local"===t)n="main"===e?this._core.trtc._localVideoTrack:this._core.trtc._localScreenTrack;else if(r){let t=this._core.room.remotePublishedUserMap.get(r);t&&(n="main"===e?t.remoteVideoTrack:t.remoteAuxiliaryTrack)}let l;if("local"===t){if(!this.hasLocalTrack(e,"video"))return{};l=()=>{delete this.dumpLocalVideoMap["auxiliary"===e?"sub":"main"]},this.dumpLocalVideoMap["auxiliary"===e?"sub":"main"]={startTimestamp:a,data:s,duration:i,onDumpEnd:l}}if("remote"===t&&r){if(l=()=>{delete this.dumpRemoteVideoMap["".concat(r,"-").concat(e)]},this.dumpRemoteVideoMap["".concat(r,"-").concat(e)])return this.addInfoToBanner(KM,"[".concat(c,"] dump already exists.")),{};this.dumpRemoteVideoMap["".concat(r,"-").concat(e)]={startTimestamp:a,data:s,duration:i,onDumpEnd:l}}return{download:()=>{var i,a;if(0===s.length)return void this.addInfoToBanner(YM,"[".concat(c,"] dump failed. Reason: data is empty"));let l,d;"main"===e?l="video":"auxiliary"===e&&(l="screen"),"vp8"===this.getVideoCodec(r||"")?(this.addInfoToBanner(KM,"[".concat(c,"] package vp8 into ivf format")),d=this.convertVP8ToIVF(s,n)):d=new Blob(s);let u=URL.createObjectURL(d),h=document.createElement("a"),p="local"===t?"local_".concat(l,"_").concat(o,".").concat((null==(i=this._core.room.singlePC)?void 0:i.videoCodec)||"h264"):"remote-".concat(r,"_").concat(l,"_").concat(o,".").concat((null==(a=this._core.room.userManager)?void 0:a.getPublishedUser(r).videoCodec)||"h264");h.href=u,h.download=p,h.style.display="none",document.body.appendChild(h),h.click(),URL.revokeObjectURL(u),h.remove(),this.addInfoToBanner(qM,"[".concat(c,"] dump success. File name is: ").concat(p))},onDumpEnd:l}}convertVP8ToIVF(e,t){var i,r,n;function a(e,t,i){for(let r=0;r<i.length;r++)e.setUint8(t+r,i.charCodeAt(r))}let o=e.reduce((e,t)=>e+12+t.byteLength,32),s=new ArrayBuffer(o),c=new DataView(s),l=new Uint8Array(s),d=0;a(c,d,"DKIF"),d+=4,c.setUint16(d,0,!0),d+=2,c.setUint16(d,32,!0),d+=2,a(c,d,"VP80"),d+=4,c.setUint16(d,(null==(i=null==t?void 0:t._inputTrack)?void 0:i.getSettings().width)||0,!0),d+=2,c.setUint16(d,(null==(r=null==t?void 0:t._inputTrack)?void 0:r.getSettings().height)||0,!0),d+=2;let u=(t instanceof rM?null==t?void 0:t.decodeFPS:null==(n=null==t?void 0:t.mediaTrack)?void 0:n.getSettings().frameRate)||15;return c.setUint32(d,u,!0),d+=4,c.setUint32(d,1,!0),d+=4,c.setUint32(d,e.length,!0),d+=4,c.setUint32(d,0,!0),d+=4,e.forEach((e,t)=>{let i=e.byteLength,r=Math.floor(1e6*t/u);c.setUint32(d,i,!0),d+=4,c.setFloat64(d,r,!0),d+=8,l.set(new Uint8Array(e),d),d+=i}),new Blob([s],{type:"application/octet-stream"})}getVideoCodec(e){var t,i;return""===e?null==(t=this._core.room.singlePC)?void 0:t.videoCodec:null==(i=this._core.room.remotePublishedUserMap.get(e))?void 0:i.videoCodec}hasLocalTrack(e,t){for(let i of this._core.room.localTracks)if(i.streamType===e&&i.kind===t)return!0;return!1}dumpAudio(e,t,i){var r,n,a;let o,s,c=null,l=[],d=[],u=[],h=[],p=[],f=[],m=[],g=new AbortController,v=Date.now(),_=this.formatStartDumpTime(v),y=this._core.room.audioManager._localAudioPipline,E=this._core.room.audioManager._localScreenAudioPipeline,b=e=>{let{room:t,data:i,type:r}=e;if(this.hitTest(t)){if("dump"===r){if(h[0]=h[0]?h[0].concat(i.captureInput):i.captureInput,h[1]=h[1]?h[1].concat(i.playInput):i.playInput,o){let e=i.startTime-o,t=i.endTime-i.startTime;if(e>30||t>30){let r=function(e){if("number"!=typeof e||e<0)return"0毫秒";let t=[],i=Math.floor(e/6e4),r=e%6e4;i>0&&t.push("".concat(i,"分"));let n=Math.floor(r/1e3);return r%=1e3,(n>0||t.length)&&t.push("".concat(n,"秒")),(r>0||!t.length)&&t.push("".concat(r,"毫秒")),t.join("")},n=i.startTime-s,a=o-s;m.push("".concat(i.startTime,"\t").concat(r(n),"~").concat(r(a),"\t").concat(e,"\t").concat(t))}o=i.startTime}else o=i.startTime,s=i.startTime;f.push(i.startTime)}"dump-screen-audio"===r&&(p[0]=p[0]?p[0].concat(i.captureInput):i.captureInput,p[1]=p[1]?p[1].concat(i.playInput):i.playInput)}};if("local"===e){let{sampleRate:e}=this._core.room.audioManager.audioContext;if(!this._core.room.audioManager.hasAudioTrack&&!this._core.room.audioManager.hasScreenAudioTrack)return{};if(null!=y&&y.source.node&&(l.push(y.source.node),d.push("local_audio_raw_capture-".concat(e,"-").concat(y.source.node.channelCount))),(null!=(r=null==y?void 0:y.aec)&&r.node||null!=E&&E.aec.node)&&(this._core.trtc.updatePlugin("AudioProcessor",{enableDump:!0}),this._core.innerEmitter.on("265",b),null!=(n=null==y?void 0:y.aec)&&n.node&&(l.push(y.aec.node),d.push("local_audio_audioProcessor_processed-".concat(e,"-").concat(y.aec.node.channelCount))),null!=E&&E.aec.node&&(l.push(E.aec.node),d.push("screen_audio_audioProcessor_processed-".concat(e,"-").concat(E.aec.node.channelCount)))),null!=y&&y.denoiser.node&&(l.push(y.denoiser.node),d.push("local_audio_denoiser_processed-".concat(e,"-").concat(y.denoiser.node.channelCount))),this._core.room.audioManager.mixWeight>1&&null!=y&&y.stream){let t=this._core.room.audioManager.audioContext.createMediaStreamSource(y.stream);t.channelCount=1,l.push(t),d.push("local_audio_destination-".concat(e,"-").concat(t.channelCount))}}else if("remote"===e&&void 0!==i){let e=null==(a=this._core.room.remotePublishedUserMap.get(i))?void 0:a.remoteAudioTrack;if(null==e||!e.mediaTrack)return{};let t=this._core.createAudioNode(e.mediaTrack);l.push(t),d.push("remote_".concat(i))}let w=async()=>{var t,i,r,n,a;let o=new $R.default;for(let e=0;e<d.length;e++)o.file("".concat(d[e],".pcm"),new Blob(u[e]));if(null!=(t=null==h?void 0:h[0])&&t.length&&o.file("audioProcessor_input_capture.pcm",new Blob(h[0])),null!=(i=null==h?void 0:h[1])&&i.length&&o.file("audioProcessor_input_playback.pcm",new Blob(h[1])),null!=(r=null==p?void 0:p[0])&&r.length&&o.file("audioProcessor_screen_audio_input_capture.pcm",new Blob(p[0])),null!=(n=null==p?void 0:p[1])&&n.length&&o.file("audioProcessor_screen_audio_input_playback.pcm",new Blob(p[1])),null!=f&&f.length){let e=f.reduce((e,t)=>"".concat(e,"\n").concat(t));o.file("audioProcessor_handle_timestamp.txt",new Blob([e]))}if(null!=m&&m.length){let e=m.reduce((e,t)=>"".concat(e,"\n").concat(t));o.file("audioProcessor_big_gap_data.txt",new Blob([e]))}let s=await o.generateAsync({type:"blob"}),l=URL.createObjectURL(s),v=document.createElement("a");v.href=l,v.download="".concat(e,"-audio-").concat(_,".zip"),v.style.display="none",document.body.appendChild(v),v.click(),URL.revokeObjectURL(l),v.remove(),this.addInfoToBanner(qM,"Dump success, file name is: ".concat(e,"-").concat(_,".zip")),this._core.innerEmitter.off("265",b),(null!=(a=null==y?void 0:y.aec)&&a.node||null!=E&&E.aec.node)&&this._core.trtc.updatePlugin("AudioProcessor",{enableDump:!1}),c&&clearTimeout(c),g.abort("download")};return t>0&&(c=Number(setTimeout(()=>{g.abort("timeout")},1e3*t))),l.length>0&&this._core.startGetPCM(l).then(e=>e.pipeTo(new WritableStream({write(e){e.forEach((e,t)=>{u[t]=u[t]?u[t].concat(e[0]):[e[0]]})}}),g).catch(()=>w)),{download:w,onDumpEnd:()=>{g.abort("timeout")}}}formatStartDumpTime(e){let t=new Date(e),i=t.getFullYear(),r=this.pad(t.getMonth()+1),n=this.pad(t.getDate()),a=this.pad(t.getHours()),o=this.pad(t.getMinutes()),s=this.pad(t.getSeconds()),c=-t.getTimezoneOffset(),l=Math.floor(Math.abs(c)/60),d=Math.abs(c)%60,u=c>=0?"+":"-";return"".concat(i,"-").concat(r,"-").concat(n,"T").concat(a,"-").concat(o,"-").concat(s).concat(u).concat(this.pad(l),"-").concat(this.pad(d))}convertOpusToOgg(e){let t=Math.floor(4294967295*Math.random()),i=0,r=0,n=[],a=this.createOpusHead(48e3,2);n.push(this.createOggPage(2,0,t,i++,[a]));let o=this.createOpusTags();n.push(this.createOggPage(0,0,t,i++,[o]));let s=[],c=0;return e.forEach((a,o)=>{let l=this.getOpusPacketDuration(a);s.push(a),c+=a.byteLength,r+=l;let d=o===e.length-1;if(c>6e4||s.length>=50||d){let e=d?4:0;n.push(this.createOggPage(e,r,t,i++,s)),s=[],c=0}}),new Blob(n,{type:"audio/ogg"})}createOpusHead(e,t){let i=new ArrayBuffer(19),r=new DataView(i);return this.writeString(r,0,"OpusHead"),r.setUint8(8,1),r.setUint8(9,t),r.setUint16(10,0,!0),r.setUint32(12,e,!0),r.setUint16(16,0,!0),r.setUint8(18,0),i}createOpusTags(){let e="TRTC Debugger",t=new ArrayBuffer(29),i=new DataView(t);return this.writeString(i,0,"OpusTags"),i.setUint32(8,13,!0),this.writeString(i,12,e),i.setUint32(25,0,!0),t}createOggPage(e,t,i,r,n){let a=0;n.forEach(e=>{let t=e.byteLength;for(;t>=255;)a++,t-=255;a++});let o=27+a,s=n.reduce((e,t)=>e+t.byteLength,0),c=new ArrayBuffer(o+s),l=new DataView(c),d=new Uint8Array(c);this.writeString(l,0,"OggS"),l.setUint8(4,0),l.setUint8(5,e),l.setUint32(6,4294967295&t,!0),l.setUint32(10,Math.floor(t/4294967295),!0),l.setUint32(14,i,!0),l.setUint32(18,r,!0),l.setUint32(22,0,!0),l.setUint8(26,a);let u=27;n.forEach(e=>{let t=e.byteLength;for(;t>=255;)d[u++]=255,t-=255;d[u++]=t});let h=o;n.forEach(e=>{d.set(new Uint8Array(e),h),h+=e.byteLength});let p=this.crc32(d);return l.setUint32(22,p,!0),d}writeString(e,t,i){for(let r=0;r<i.length;r++)e.setUint8(t+r,i.charCodeAt(r))}getOpusPacketDuration(e){if(0===e.byteLength)return 0;let t=new Uint8Array(e),i=t[0],r=i>>3&31,n=3&i,a=1;if(1===n||2===n)a=2;else if(3===n){if(e.byteLength<2)return 0;a=63&t[1]}return([480,480,480,480,960,960,960,960,1920,1920,1920,1920,2880,2880,480,480,120,120,120,120,240,240,240,240,480,480,480,480,960,960,960,960][r]||960)*a}crc32(e){let t=new Uint32Array(256);for(let r=0;r<256;r++){let e=r<<24;for(let t=0;t<8;t++)2147483648&e?e=e<<1^79764919:e<<=1;t[r]=e>>>0}let i=0;for(let r=0;r<e.length;r++){i=(i<<8^t[255&(i>>>24^e[r])])>>>0}return i}addVideoProcessor(){this._core.room.videoManager.addEncodeProcessor({processor:this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED?this.encodeVideo.bind(this):SR,type:1}),this._core.room.videoManager.addDecodeProcessor({processor:this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED?this.decodeVideo.bind(this):AR,type:1})}removeVideoProcessor(){this._core.room.videoManager.removeEncodeProcessor({type:1}),this._core.room.videoManager.removeDecodeProcessor({type:1})}addAudioProcessor(){this._core.room.audioManager.addEncodeProcessor({processor:this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED?this.encodeAudio.bind(this):RR,type:2}),this._core.room.audioManager.addDecodeProcessor({processor:this._core.rtcDectection.IS_INSERTABLE_STREAM_SUPPORTED?this.decodeAudio.bind(this):kR,type:2})}removeAudioProcessor(){this._core.room.audioManager.removeEncodeProcessor({type:2}),this._core.room.audioManager.removeDecodeProcessor({type:2})}encodeVideo(e){let{frame:t,mediaType:i}=e;return SR({frame:t,onDump:()=>{if(!i)return;let e=2===i?"sub":"main",r=this.dumpLocalVideoMap[e];r&&(r.data.push(t.data.slice(0)),r.duration>0&&Date.now()-r.startTimestamp>1e3*r.duration&&r.onDumpEnd())}})}decodeVideo(e){let{frame:t,track:i}=e;return AR({frame:t,onDump:()=>{if(!i)return;let e=this.dumpRemoteVideoMap["".concat(i.userId,"-").concat(i.streamType)];e&&(e.data.push(t.data.slice(0)),e.duration>0&&Date.now()-e.startTimestamp>1e3*e.duration&&e.onDumpEnd())}})}encodeAudio(e){let{frame:t}=e;return RR({frame:t,onDump:()=>{let e=this.dumpLocalAudioMap.main;e&&(e.data.push(t.data.slice(0)),e.duration>0&&Date.now()-e.startTimestamp>1e3*e.duration&&e.onDumpEnd())}})}decodeAudio(e){let{frame:t,track:i}=e;return kR({frame:t,onDump:()=>{if(!i)return;let e=this.dumpRemoteAudioMap[i.userId];e&&(e.data.push(t.data.slice(0)),e.duration>0&&Date.now()-e.startTimestamp>1e3*e.duration&&e.onDumpEnd())}})}};
2
2
  /*! Bundled license information:
3
3
 
4
4
  jszip/dist/jszip.min.js:
@@ -14,4 +14,4 @@
14
14
  https://github.com/nodeca/pako/blob/main/LICENSE
15
15
  *)
16
16
  */
17
- return vA([DA(300,()=>"export")],jM.prototype,"onExportClick",1),vA([DA(300,()=>"upload")],jM.prototype,"onUploadClick",1),jM});
17
+ return SA([UA(300,()=>"export")],JM.prototype,"onExportClick",1),SA([UA(300,()=>"upload")],JM.prototype,"onUploadClick",1),JM});