@vkontakte/videoplayer-statistics 1.0.76 → 1.0.77-dev.a8ce6708.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.
Files changed (44) hide show
  1. package/es2015.cjs.js +4 -4
  2. package/es2015.esm.js +4 -4
  3. package/es2018.cjs.js +4 -4
  4. package/es2018.esm.js +4 -4
  5. package/es2024.cjs.js +4 -4
  6. package/es2024.esm.js +4 -4
  7. package/esnext.cjs.js +4 -4
  8. package/esnext.esm.js +4 -4
  9. package/evergreen.esm.js +4 -4
  10. package/package.json +3 -3
  11. package/types/index.d.ts +2 -6
  12. package/types/oneStat/index.d.ts +6 -0
  13. package/types/thinOneStat/Api.d.ts +38 -0
  14. package/types/thinOneStat/ApiTransport.d.ts +25 -0
  15. package/types/thinOneStat/Logger.d.ts +42 -0
  16. package/types/thinOneStat/ThinOneStat.d.ts +169 -0
  17. package/types/thinOneStat/config.d.ts +17 -0
  18. package/types/thinOneStat/env.d.ts +7 -0
  19. package/types/thinOneStat/index.d.ts +4 -0
  20. package/types/thinOneStat/types.d.ts +27 -0
  21. package/types/thinOneStat/uiEvents.d.ts +10 -0
  22. package/types/thinOneStat/utils/calculateTotalViewTime.d.ts +5 -0
  23. package/types/thinOneStat/utils/mappers.d.ts +8 -0
  24. package/types/thinOneStat/utils/timeSynchronisation.d.ts +10 -0
  25. package/types/thinOneStat/utils/uuid.d.ts +1 -0
  26. package/types/thinOneStat/utils/vsid.d.ts +2 -0
  27. package/types/thinOneStat/utils/watchCoverage.d.ts +6 -0
  28. package/types/thinOneStat/utils/watchedN.d.ts +7 -0
  29. package/types/thinOneStat/values.d.ts +74 -0
  30. /package/types/{Api.d.ts → oneStat/Api.d.ts} +0 -0
  31. /package/types/{ApiTransport.d.ts → oneStat/ApiTransport.d.ts} +0 -0
  32. /package/types/{Logger.d.ts → oneStat/Logger.d.ts} +0 -0
  33. /package/types/{OneStat.d.ts → oneStat/OneStat.d.ts} +0 -0
  34. /package/types/{config.d.ts → oneStat/config.d.ts} +0 -0
  35. /package/types/{env.d.ts → oneStat/env.d.ts} +0 -0
  36. /package/types/{types.d.ts → oneStat/types.d.ts} +0 -0
  37. /package/types/{uiEvents.d.ts → oneStat/uiEvents.d.ts} +0 -0
  38. /package/types/{utils → oneStat/utils}/mappers.d.ts +0 -0
  39. /package/types/{utils → oneStat/utils}/shorten.d.ts +0 -0
  40. /package/types/{utils → oneStat/utils}/timeSynchronisation.d.ts +0 -0
  41. /package/types/{utils → oneStat/utils}/uuid.d.ts +0 -0
  42. /package/types/{utils → oneStat/utils}/vsid.d.ts +0 -0
  43. /package/types/{utils → oneStat/utils}/watchCoverage.d.ts +0 -0
  44. /package/types/{values.d.ts → oneStat/values.d.ts} +0 -0
package/es2024.esm.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
- * @vkontakte/videoplayer-statistics v1.0.76
3
- * Thu, 10 Apr 2025 15:54:06 GMT
4
- * https://st.mycdn.me/static/vkontakte-videoplayer/1-0-76/doc/
2
+ * @vkontakte/videoplayer-statistics v1.0.77-dev.a8ce6708.0
3
+ * Tue, 15 Apr 2025 01:41:54 GMT
4
+ * https://st.mycdn.me/static/vkontakte-videoplayer/1-0-77/doc/
5
5
  */
6
- var jl=Object.create;var Yi=Object.defineProperty;var Fl=Object.getOwnPropertyDescriptor;var Bl=Object.getOwnPropertyNames;var Ul=Object.getPrototypeOf,Vl=Object.prototype.hasOwnProperty;var n=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports);var Kl=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Bl(e))!Vl.call(r,o)&&o!==t&&Yi(r,o,{get:()=>e[o],enumerable:!(i=Fl(e,o))||i.enumerable});return r};var D=(r,e,t)=>(t=r!=null?jl(Ul(r)):{},Kl(e||!r||!r.__esModule?Yi(t,"default",{value:r,enumerable:!0}):t,r));var y=n((Ur,Ji)=>{"use strict";var ge=function(r){return r&&r.Math===Math&&r};Ji.exports=ge(typeof globalThis=="object"&&globalThis)||ge(typeof window=="object"&&window)||ge(typeof self=="object"&&self)||ge(typeof global=="object"&&global)||ge(typeof Ur=="object"&&Ur)||function(){return this}()||Function("return this")()});var E=n((sy,Xi)=>{"use strict";Xi.exports=function(r){try{return!!r()}catch{return!0}}});var me=n((uy,Zi)=>{"use strict";var Gl=E();Zi.exports=!Gl(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var Vr=n((cy,io)=>{"use strict";var Wl=me(),to=Function.prototype,eo=to.apply,ro=to.call;io.exports=typeof Reflect=="object"&&Reflect.apply||(Wl?ro.bind(eo):function(){return ro.apply(eo,arguments)})});var P=n((ly,ao)=>{"use strict";var oo=me(),no=Function.prototype,Kr=no.call,Hl=oo&&no.bind.bind(Kr,Kr);ao.exports=oo?Hl:function(r){return function(){return Kr.apply(r,arguments)}}});var be=n((fy,uo)=>{"use strict";var so=P(),zl=so({}.toString),Ql=so("".slice);uo.exports=function(r){return Ql(zl(r),8,-1)}});var Gr=n((dy,co)=>{"use strict";var Yl=be(),Jl=P();co.exports=function(r){if(Yl(r)==="Function")return Jl(r)}});var I=n((py,lo)=>{"use strict";var Wr=typeof document=="object"&&document.all;lo.exports=typeof Wr>"u"&&Wr!==void 0?function(r){return typeof r=="function"||r===Wr}:function(r){return typeof r=="function"}});var T=n((vy,fo)=>{"use strict";var Xl=E();fo.exports=!Xl(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var w=n((hy,po)=>{"use strict";var Zl=me(),He=Function.prototype.call;po.exports=Zl?He.bind(He):function(){return He.apply(He,arguments)}});var Hr=n(go=>{"use strict";var vo={}.propertyIsEnumerable,ho=Object.getOwnPropertyDescriptor,ef=ho&&!vo.call({1:2},1);go.f=ef?function(e){var t=ho(this,e);return!!t&&t.enumerable}:vo});var ye=n((my,mo)=>{"use strict";mo.exports=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}});var yo=n((by,bo)=>{"use strict";var rf=P(),tf=E(),of=be(),zr=Object,nf=rf("".split);bo.exports=tf(function(){return!zr("z").propertyIsEnumerable(0)})?function(r){return of(r)==="String"?nf(r,""):zr(r)}:zr});var Ie=n((yy,Io)=>{"use strict";Io.exports=function(r){return r==null}});var X=n((Iy,So)=>{"use strict";var af=Ie(),sf=TypeError;So.exports=function(r){if(af(r))throw new sf("Can't call method on "+r);return r}});var K=n((Sy,Eo)=>{"use strict";var uf=yo(),cf=X();Eo.exports=function(r){return uf(cf(r))}});var R=n((Ey,qo)=>{"use strict";var lf=I();qo.exports=function(r){return typeof r=="object"?r!==null:lf(r)}});var Se=n((qy,Po)=>{"use strict";Po.exports={}});var $=n((Py,Oo)=>{"use strict";var Qr=Se(),Yr=y(),ff=I(),To=function(r){return ff(r)?r:void 0};Oo.exports=function(r,e){return arguments.length<2?To(Qr[r])||To(Yr[r]):Qr[r]&&Qr[r][e]||Yr[r]&&Yr[r][e]}});var ze=n((Ty,_o)=>{"use strict";var df=P();_o.exports=df({}.isPrototypeOf)});var G=n((Oy,Ro)=>{"use strict";var pf=y(),xo=pf.navigator,wo=xo&&xo.userAgent;Ro.exports=wo?String(wo):""});var Xr=n((_y,Do)=>{"use strict";var ko=y(),Jr=G(),Co=ko.process,Ao=ko.Deno,No=Co&&Co.versions||Ao&&Ao.version,Lo=No&&No.v8,C,Qe;Lo&&(C=Lo.split("."),Qe=C[0]>0&&C[0]<4?1:+(C[0]+C[1]));!Qe&&Jr&&(C=Jr.match(/Edge\/(\d+)/),(!C||C[1]>=74)&&(C=Jr.match(/Chrome\/(\d+)/),C&&(Qe=+C[1])));Do.exports=Qe});var Zr=n((xy,Mo)=>{"use strict";var $o=Xr(),vf=E(),hf=y(),gf=hf.String;Mo.exports=!!Object.getOwnPropertySymbols&&!vf(function(){var r=Symbol("symbol detection");return!gf(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&$o&&$o<41})});var et=n((wy,jo)=>{"use strict";var mf=Zr();jo.exports=mf&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var rt=n((Ry,Fo)=>{"use strict";var bf=$(),yf=I(),If=ze(),Sf=et(),Ef=Object;Fo.exports=Sf?function(r){return typeof r=="symbol"}:function(r){var e=bf("Symbol");return yf(e)&&If(e.prototype,Ef(r))}});var Ee=n((Cy,Bo)=>{"use strict";var qf=String;Bo.exports=function(r){try{return qf(r)}catch{return"Object"}}});var M=n((Ay,Uo)=>{"use strict";var Pf=I(),Tf=Ee(),Of=TypeError;Uo.exports=function(r){if(Pf(r))return r;throw new Of(Tf(r)+" is not a function")}});var Ye=n((Ny,Vo)=>{"use strict";var _f=M(),xf=Ie();Vo.exports=function(r,e){var t=r[e];return xf(t)?void 0:_f(t)}});var Go=n((Ly,Ko)=>{"use strict";var tt=w(),it=I(),ot=R(),wf=TypeError;Ko.exports=function(r,e){var t,i;if(e==="string"&&it(t=r.toString)&&!ot(i=tt(t,r))||it(t=r.valueOf)&&!ot(i=tt(t,r))||e!=="string"&&it(t=r.toString)&&!ot(i=tt(t,r)))return i;throw new wf("Can't convert object to primitive value")}});var L=n((ky,Wo)=>{"use strict";Wo.exports=!0});var Qo=n((Dy,zo)=>{"use strict";var Ho=y(),Rf=Object.defineProperty;zo.exports=function(r,e){try{Rf(Ho,r,{value:e,configurable:!0,writable:!0})}catch{Ho[r]=e}return e}});var qe=n(($y,Xo)=>{"use strict";var Cf=L(),Af=y(),Nf=Qo(),Yo="__core-js_shared__",Jo=Xo.exports=Af[Yo]||Nf(Yo,{});(Jo.versions||(Jo.versions=[])).push({version:"3.38.0",mode:Cf?"pure":"global",copyright:"\xA9 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.38.0/LICENSE",source:"https://github.com/zloirock/core-js"})});var nt=n((My,en)=>{"use strict";var Zo=qe();en.exports=function(r,e){return Zo[r]||(Zo[r]=e||{})}});var at=n((jy,rn)=>{"use strict";var Lf=X(),kf=Object;rn.exports=function(r){return kf(Lf(r))}});var k=n((Fy,tn)=>{"use strict";var Df=P(),$f=at(),Mf=Df({}.hasOwnProperty);tn.exports=Object.hasOwn||function(e,t){return Mf($f(e),t)}});var st=n((By,on)=>{"use strict";var jf=P(),Ff=0,Bf=Math.random(),Uf=jf(1 .toString);on.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+Uf(++Ff+Bf,36)}});var O=n((Uy,an)=>{"use strict";var Vf=y(),Kf=nt(),nn=k(),Gf=st(),Wf=Zr(),Hf=et(),Z=Vf.Symbol,ut=Kf("wks"),zf=Hf?Z.for||Z:Z&&Z.withoutSetter||Gf;an.exports=function(r){return nn(ut,r)||(ut[r]=Wf&&nn(Z,r)?Z[r]:zf("Symbol."+r)),ut[r]}});var ln=n((Vy,cn)=>{"use strict";var Qf=w(),sn=R(),un=rt(),Yf=Ye(),Jf=Go(),Xf=O(),Zf=TypeError,ed=Xf("toPrimitive");cn.exports=function(r,e){if(!sn(r)||un(r))return r;var t=Yf(r,ed),i;if(t){if(e===void 0&&(e="default"),i=Qf(t,r,e),!sn(i)||un(i))return i;throw new Zf("Can't convert object to primitive value")}return e===void 0&&(e="number"),Jf(r,e)}});var ct=n((Ky,fn)=>{"use strict";var rd=ln(),td=rt();fn.exports=function(r){var e=rd(r,"string");return td(e)?e:e+""}});var Je=n((Gy,pn)=>{"use strict";var id=y(),dn=R(),lt=id.document,od=dn(lt)&&dn(lt.createElement);pn.exports=function(r){return od?lt.createElement(r):{}}});var ft=n((Wy,vn)=>{"use strict";var nd=T(),ad=E(),sd=Je();vn.exports=!nd&&!ad(function(){return Object.defineProperty(sd("div"),"a",{get:function(){return 7}}).a!==7})});var mn=n(gn=>{"use strict";var ud=T(),cd=w(),ld=Hr(),fd=ye(),dd=K(),pd=ct(),vd=k(),hd=ft(),hn=Object.getOwnPropertyDescriptor;gn.f=ud?hn:function(e,t){if(e=dd(e),t=pd(t),hd)try{return hn(e,t)}catch{}if(vd(e,t))return fd(!cd(ld.f,e,t),e[t])}});var dt=n((zy,bn)=>{"use strict";var gd=E(),md=I(),bd=/#|\.prototype\./,Pe=function(r,e){var t=Id[yd(r)];return t===Ed?!0:t===Sd?!1:md(e)?gd(e):!!e},yd=Pe.normalize=function(r){return String(r).replace(bd,".").toLowerCase()},Id=Pe.data={},Sd=Pe.NATIVE="N",Ed=Pe.POLYFILL="P";bn.exports=Pe});var Te=n((Qy,In)=>{"use strict";var yn=Gr(),qd=M(),Pd=me(),Td=yn(yn.bind);In.exports=function(r,e){return qd(r),e===void 0?r:Pd?Td(r,e):function(){return r.apply(e,arguments)}}});var pt=n((Yy,Sn)=>{"use strict";var Od=T(),_d=E();Sn.exports=Od&&_d(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var j=n((Jy,En)=>{"use strict";var xd=R(),wd=String,Rd=TypeError;En.exports=function(r){if(xd(r))return r;throw new Rd(wd(r)+" is not an object")}});var W=n(Pn=>{"use strict";var Cd=T(),Ad=ft(),Nd=pt(),Xe=j(),qn=ct(),Ld=TypeError,vt=Object.defineProperty,kd=Object.getOwnPropertyDescriptor,ht="enumerable",gt="configurable",mt="writable";Pn.f=Cd?Nd?function(e,t,i){if(Xe(e),t=qn(t),Xe(i),typeof e=="function"&&t==="prototype"&&"value"in i&&mt in i&&!i[mt]){var o=kd(e,t);o&&o[mt]&&(e[t]=i.value,i={configurable:gt in i?i[gt]:o[gt],enumerable:ht in i?i[ht]:o[ht],writable:!1})}return vt(e,t,i)}:vt:function(e,t,i){if(Xe(e),t=qn(t),Xe(i),Ad)try{return vt(e,t,i)}catch{}if("get"in i||"set"in i)throw new Ld("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var ee=n((Zy,Tn)=>{"use strict";var Dd=T(),$d=W(),Md=ye();Tn.exports=Dd?function(r,e,t){return $d.f(r,e,Md(1,t))}:function(r,e,t){return r[e]=t,r}});var _=n((eI,_n)=>{"use strict";var Oe=y(),jd=Vr(),Fd=Gr(),Bd=I(),Ud=mn().f,Vd=dt(),re=Se(),Kd=Te(),te=ee(),On=k();qe();var Gd=function(r){var e=function(t,i,o){if(this instanceof e){switch(arguments.length){case 0:return new r;case 1:return new r(t);case 2:return new r(t,i)}return new r(t,i,o)}return jd(r,this,arguments)};return e.prototype=r.prototype,e};_n.exports=function(r,e){var t=r.target,i=r.global,o=r.stat,a=r.proto,u=i?Oe:o?Oe[t]:Oe[t]&&Oe[t].prototype,c=i?re:re[t]||te(re,t,{})[t],d=c.prototype,f,p,v,s,l,h,g,b,m;for(s in e)f=Vd(i?s:t+(o?".":"#")+s,r.forced),p=!f&&u&&On(u,s),h=c[s],p&&(r.dontCallGetSet?(m=Ud(u,s),g=m&&m.value):g=u[s]),l=p&&g?g:e[s],!(!f&&!a&&typeof h==typeof l)&&(r.bind&&p?b=Kd(l,Oe):r.wrap&&p?b=Gd(l):a&&Bd(l)?b=Fd(l):b=l,(r.sham||l&&l.sham||h&&h.sham)&&te(b,"sham",!0),te(c,s,b),a&&(v=t+"Prototype",On(re,v)||te(re,v,{}),te(re[v],s,l),r.real&&d&&(f||!d[s])&&te(d,s,l)))}});var wn=n((rI,xn)=>{"use strict";var Wd=Math.ceil,Hd=Math.floor;xn.exports=Math.trunc||function(e){var t=+e;return(t>0?Hd:Wd)(t)}});var Ze=n((tI,Rn)=>{"use strict";var zd=wn();Rn.exports=function(r){var e=+r;return e!==e||e===0?0:zd(e)}});var An=n((iI,Cn)=>{"use strict";var Qd=Ze(),Yd=Math.max,Jd=Math.min;Cn.exports=function(r,e){var t=Qd(r);return t<0?Yd(t+e,0):Jd(t,e)}});var bt=n((oI,Nn)=>{"use strict";var Xd=Ze(),Zd=Math.min;Nn.exports=function(r){var e=Xd(r);return e>0?Zd(e,9007199254740991):0}});var yt=n((nI,Ln)=>{"use strict";var ep=bt();Ln.exports=function(r){return ep(r.length)}});var It=n((aI,Dn)=>{"use strict";var rp=K(),tp=An(),ip=yt(),kn=function(r){return function(e,t,i){var o=rp(e),a=ip(o);if(a===0)return!r&&-1;var u=tp(i,a),c;if(r&&t!==t){for(;a>u;)if(c=o[u++],c!==c)return!0}else for(;a>u;u++)if((r||u in o)&&o[u]===t)return r||u||0;return!r&&-1}};Dn.exports={includes:kn(!0),indexOf:kn(!1)}});var St=n((sI,$n)=>{"use strict";$n.exports=function(){}});var Mn=n(()=>{"use strict";var op=_(),np=It().includes,ap=E(),sp=St(),up=ap(function(){return!Array(1).includes()});op({target:"Array",proto:!0,forced:up},{includes:function(e){return np(this,e,arguments.length>1?arguments[1]:void 0)}});sp("includes")});var er=n((lI,jn)=>{"use strict";var cp=$();jn.exports=cp});var Bn=n((fI,Fn)=>{"use strict";Mn();var lp=er();Fn.exports=lp("Array","includes")});var Vn=n((dI,Un)=>{"use strict";var fp=Bn();Un.exports=fp});var rr=n((pI,Kn)=>{"use strict";var dp=Vn();Kn.exports=dp});var Xn=n(()=>{"use strict"});var xt=n((OI,Zn)=>{"use strict";var xe=y(),hp=G(),gp=be(),ir=function(r){return hp.slice(0,r.length)===r};Zn.exports=function(){return ir("Bun/")?"BUN":ir("Cloudflare-Workers")?"CLOUDFLARE":ir("Deno/")?"DENO":ir("Node.js/")?"NODE":xe.Bun&&typeof Bun.version=="string"?"BUN":xe.Deno&&typeof Deno.version=="object"?"DENO":gp(xe.process)==="process"?"NODE":xe.window&&xe.document?"BROWSER":"REST"}()});var or=n((_I,ea)=>{"use strict";var mp=xt();ea.exports=mp==="NODE"});var ie=n((xI,ra)=>{"use strict";var bp=ee();ra.exports=function(r,e,t,i){return i&&i.enumerable?r[e]=t:bp(r,e,t),r}});var ia=n((wI,ta)=>{"use strict";var yp=P(),Ip=M();ta.exports=function(r,e,t){try{return yp(Ip(Object.getOwnPropertyDescriptor(r,e)[t]))}catch{}}});var na=n((RI,oa)=>{"use strict";var Sp=R();oa.exports=function(r){return Sp(r)||r===null}});var sa=n((CI,aa)=>{"use strict";var Ep=na(),qp=String,Pp=TypeError;aa.exports=function(r){if(Ep(r))return r;throw new Pp("Can't set "+qp(r)+" as a prototype")}});var wt=n((AI,ua)=>{"use strict";var Tp=ia(),Op=R(),_p=X(),xp=sa();ua.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r=!1,e={},t;try{t=Tp(Object.prototype,"__proto__","set"),t(e,[]),r=e instanceof Array}catch{}return function(o,a){return _p(o),xp(a),Op(o)&&(r?t(o,a):o.__proto__=a),o}}():void 0)});var nr=n((NI,la)=>{"use strict";var wp=O(),Rp=wp("toStringTag"),ca={};ca[Rp]="z";la.exports=String(ca)==="[object z]"});var we=n((LI,fa)=>{"use strict";var Cp=nr(),Ap=I(),ar=be(),Np=O(),Lp=Np("toStringTag"),kp=Object,Dp=ar(function(){return arguments}())==="Arguments",$p=function(r,e){try{return r[e]}catch{}};fa.exports=Cp?ar:function(r){var e,t,i;return r===void 0?"Undefined":r===null?"Null":typeof(t=$p(e=kp(r),Lp))=="string"?t:Dp?ar(e):(i=ar(e))==="Object"&&Ap(e.callee)?"Arguments":i}});var pa=n((kI,da)=>{"use strict";var Mp=nr(),jp=we();da.exports=Mp?{}.toString:function(){return"[object "+jp(this)+"]"}});var Re=n((DI,ha)=>{"use strict";var Fp=nr(),Bp=W().f,Up=ee(),Vp=k(),Kp=pa(),Gp=O(),va=Gp("toStringTag");ha.exports=function(r,e,t,i){var o=t?r:r&&r.prototype;o&&(Vp(o,va)||Bp(o,va,{configurable:!0,value:e}),i&&!Fp&&Up(o,"toString",Kp))}});var ma=n(($I,ga)=>{"use strict";var Wp=W();ga.exports=function(r,e,t){return Wp.f(r,e,t)}});var Ia=n((MI,ya)=>{"use strict";var Hp=$(),zp=ma(),Qp=O(),Yp=T(),ba=Qp("species");ya.exports=function(r){var e=Hp(r);Yp&&e&&!e[ba]&&zp(e,ba,{configurable:!0,get:function(){return this}})}});var Ea=n((jI,Sa)=>{"use strict";var Jp=ze(),Xp=TypeError;Sa.exports=function(r,e){if(Jp(e,r))return r;throw new Xp("Incorrect invocation")}});var Ct=n((FI,qa)=>{"use strict";var Zp=P(),ev=I(),Rt=qe(),rv=Zp(Function.toString);ev(Rt.inspectSource)||(Rt.inspectSource=function(r){return rv(r)});qa.exports=Rt.inspectSource});var wa=n((BI,xa)=>{"use strict";var tv=P(),iv=E(),Pa=I(),ov=we(),nv=$(),av=Ct(),Ta=function(){},Oa=nv("Reflect","construct"),At=/^\s*(?:class|function)\b/,sv=tv(At.exec),uv=!At.test(Ta),Ce=function(e){if(!Pa(e))return!1;try{return Oa(Ta,[],e),!0}catch{return!1}},_a=function(e){if(!Pa(e))return!1;switch(ov(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return uv||!!sv(At,av(e))}catch{return!0}};_a.sham=!0;xa.exports=!Oa||iv(function(){var r;return Ce(Ce.call)||!Ce(Object)||!Ce(function(){r=!0})||r})?_a:Ce});var Ca=n((UI,Ra)=>{"use strict";var cv=wa(),lv=Ee(),fv=TypeError;Ra.exports=function(r){if(cv(r))return r;throw new fv(lv(r)+" is not a constructor")}});var Nt=n((VI,Na)=>{"use strict";var Aa=j(),dv=Ca(),pv=Ie(),vv=O(),hv=vv("species");Na.exports=function(r,e){var t=Aa(r).constructor,i;return t===void 0||pv(i=Aa(t)[hv])?e:dv(i)}});var Lt=n((KI,La)=>{"use strict";var gv=$();La.exports=gv("document","documentElement")});var Da=n((GI,ka)=>{"use strict";var mv=P();ka.exports=mv([].slice)});var Ma=n((WI,$a)=>{"use strict";var bv=TypeError;$a.exports=function(r,e){if(r<e)throw new bv("Not enough arguments");return r}});var kt=n((HI,ja)=>{"use strict";var yv=G();ja.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(yv)});var Kt=n((zI,za)=>{"use strict";var x=y(),Iv=Vr(),Sv=Te(),Fa=I(),Ev=k(),Ha=E(),Ba=Lt(),qv=Da(),Ua=Je(),Pv=Ma(),Tv=kt(),Ov=or(),Bt=x.setImmediate,Ut=x.clearImmediate,_v=x.process,Dt=x.Dispatch,xv=x.Function,Va=x.MessageChannel,wv=x.String,$t=0,Ae={},Ka="onreadystatechange",Ne,H,Mt,jt;Ha(function(){Ne=x.location});var Vt=function(r){if(Ev(Ae,r)){var e=Ae[r];delete Ae[r],e()}},Ft=function(r){return function(){Vt(r)}},Ga=function(r){Vt(r.data)},Wa=function(r){x.postMessage(wv(r),Ne.protocol+"//"+Ne.host)};(!Bt||!Ut)&&(Bt=function(e){Pv(arguments.length,1);var t=Fa(e)?e:xv(e),i=qv(arguments,1);return Ae[++$t]=function(){Iv(t,void 0,i)},H($t),$t},Ut=function(e){delete Ae[e]},Ov?H=function(r){_v.nextTick(Ft(r))}:Dt&&Dt.now?H=function(r){Dt.now(Ft(r))}:Va&&!Tv?(Mt=new Va,jt=Mt.port2,Mt.port1.onmessage=Ga,H=Sv(jt.postMessage,jt)):x.addEventListener&&Fa(x.postMessage)&&!x.importScripts&&Ne&&Ne.protocol!=="file:"&&!Ha(Wa)?(H=Wa,x.addEventListener("message",Ga,!1)):Ka in Ua("script")?H=function(r){Ba.appendChild(Ua("script"))[Ka]=function(){Ba.removeChild(this),Vt(r)}}:H=function(r){setTimeout(Ft(r),0)});za.exports={set:Bt,clear:Ut}});var Ja=n((QI,Ya)=>{"use strict";var Qa=y(),Rv=T(),Cv=Object.getOwnPropertyDescriptor;Ya.exports=function(r){if(!Rv)return Qa[r];var e=Cv(Qa,r);return e&&e.value}});var Gt=n((YI,Za)=>{"use strict";var Xa=function(){this.head=null,this.tail=null};Xa.prototype={add:function(r){var e={item:r,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var r=this.head;if(r){var e=this.head=r.next;return e===null&&(this.tail=null),r.item}}};Za.exports=Xa});var rs=n((JI,es)=>{"use strict";var Av=G();es.exports=/ipad|iphone|ipod/i.test(Av)&&typeof Pebble<"u"});var is=n((XI,ts)=>{"use strict";var Nv=G();ts.exports=/web0s(?!.*chrome)/i.test(Nv)});var ls=n((ZI,cs)=>{"use strict";var ne=y(),Lv=Ja(),os=Te(),Wt=Kt().set,kv=Gt(),Dv=kt(),$v=rs(),Mv=is(),Ht=or(),ns=ne.MutationObserver||ne.WebKitMutationObserver,as=ne.document,ss=ne.process,sr=ne.Promise,Yt=Lv("queueMicrotask"),oe,zt,Qt,ur,us;Yt||(Le=new kv,ke=function(){var r,e;for(Ht&&(r=ss.domain)&&r.exit();e=Le.get();)try{e()}catch(t){throw Le.head&&oe(),t}r&&r.enter()},!Dv&&!Ht&&!Mv&&ns&&as?(zt=!0,Qt=as.createTextNode(""),new ns(ke).observe(Qt,{characterData:!0}),oe=function(){Qt.data=zt=!zt}):!$v&&sr&&sr.resolve?(ur=sr.resolve(void 0),ur.constructor=sr,us=os(ur.then,ur),oe=function(){us(ke)}):Ht?oe=function(){ss.nextTick(ke)}:(Wt=os(Wt,ne),oe=function(){Wt(ke)}),Yt=function(r){Le.head||oe(),Le.add(r)});var Le,ke;cs.exports=Yt});var ds=n((eS,fs)=>{"use strict";fs.exports=function(r,e){try{arguments.length===1?console.error(r):console.error(r,e)}catch{}}});var cr=n((rS,ps)=>{"use strict";ps.exports=function(r){try{return{error:!1,value:r()}}catch(e){return{error:!0,value:e}}}});var gs=n((tS,hs)=>{"use strict";var jv=y(),Fv=I(),vs=jv.WeakMap;hs.exports=Fv(vs)&&/native code/.test(String(vs))});var lr=n((iS,bs)=>{"use strict";var Bv=nt(),Uv=st(),ms=Bv("keys");bs.exports=function(r){return ms[r]||(ms[r]=Uv(r))}});var fr=n((oS,ys)=>{"use strict";ys.exports={}});var ei=n((nS,Es)=>{"use strict";var Vv=gs(),Ss=y(),Kv=R(),Gv=ee(),Jt=k(),Xt=qe(),Wv=lr(),Hv=fr(),Is="Object already initialized",Zt=Ss.TypeError,zv=Ss.WeakMap,dr,De,pr,Qv=function(r){return pr(r)?De(r):dr(r,{})},Yv=function(r){return function(e){var t;if(!Kv(e)||(t=De(e)).type!==r)throw new Zt("Incompatible receiver, "+r+" required");return t}};Vv||Xt.state?(A=Xt.state||(Xt.state=new zv),A.get=A.get,A.has=A.has,A.set=A.set,dr=function(r,e){if(A.has(r))throw new Zt(Is);return e.facade=r,A.set(r,e),e},De=function(r){return A.get(r)||{}},pr=function(r){return A.has(r)}):(z=Wv("state"),Hv[z]=!0,dr=function(r,e){if(Jt(r,z))throw new Zt(Is);return e.facade=r,Gv(r,z,e),e},De=function(r){return Jt(r,z)?r[z]:{}},pr=function(r){return Jt(r,z)});var A,z;Es.exports={set:dr,get:De,has:pr,enforce:Qv,getterFor:Yv}});var Q=n((aS,qs)=>{"use strict";var Jv=y();qs.exports=Jv.Promise});var ae=n((sS,_s)=>{"use strict";var Xv=y(),$e=Q(),Zv=I(),eh=dt(),rh=Ct(),th=O(),Ps=xt(),ih=L(),ri=Xr(),Ts=$e&&$e.prototype,oh=th("species"),ti=!1,Os=Zv(Xv.PromiseRejectionEvent),nh=eh("Promise",function(){var r=rh($e),e=r!==String($e);if(!e&&ri===66||ih&&!(Ts.catch&&Ts.finally))return!0;if(!ri||ri<51||!/native code/.test(r)){var t=new $e(function(a){a(1)}),i=function(a){a(function(){},function(){})},o=t.constructor={};if(o[oh]=i,ti=t.then(function(){})instanceof i,!ti)return!0}return!e&&(Ps==="BROWSER"||Ps==="DENO")&&!Os});_s.exports={CONSTRUCTOR:nh,REJECTION_EVENT:Os,SUBCLASSING:ti}});var se=n((uS,ws)=>{"use strict";var xs=M(),ah=TypeError,sh=function(r){var e,t;this.promise=new r(function(i,o){if(e!==void 0||t!==void 0)throw new ah("Bad Promise constructor");e=i,t=o}),this.resolve=xs(e),this.reject=xs(t)};ws.exports.f=function(r){return new sh(r)}});var zs=n(()=>{"use strict";var uh=_(),ch=L(),mr=or(),V=y(),fe=w(),Rs=ie(),Cs=wt(),lh=Re(),fh=Ia(),dh=M(),gr=I(),ph=R(),vh=Ea(),hh=Nt(),Ds=Kt().set,si=ls(),gh=ds(),mh=cr(),bh=Gt(),$s=ei(),br=Q(),ui=ae(),Ms=se(),yr="Promise",js=ui.CONSTRUCTOR,yh=ui.REJECTION_EVENT,Ih=ui.SUBCLASSING,ii=$s.getterFor(yr),Sh=$s.set,ue=br&&br.prototype,Y=br,vr=ue,Fs=V.TypeError,oi=V.document,ci=V.process,ni=Ms.f,Eh=ni,qh=!!(oi&&oi.createEvent&&V.dispatchEvent),Bs="unhandledrejection",Ph="rejectionhandled",As=0,Us=1,Th=2,li=1,Vs=2,hr,Ns,Oh,Ls,Ks=function(r){var e;return ph(r)&&gr(e=r.then)?e:!1},Gs=function(r,e){var t=e.value,i=e.state===Us,o=i?r.ok:r.fail,a=r.resolve,u=r.reject,c=r.domain,d,f,p;try{o?(i||(e.rejection===Vs&&xh(e),e.rejection=li),o===!0?d=t:(c&&c.enter(),d=o(t),c&&(c.exit(),p=!0)),d===r.promise?u(new Fs("Promise-chain cycle")):(f=Ks(d))?fe(f,d,a,u):a(d)):u(t)}catch(v){c&&!p&&c.exit(),u(v)}},Ws=function(r,e){r.notified||(r.notified=!0,si(function(){for(var t=r.reactions,i;i=t.get();)Gs(i,r);r.notified=!1,e&&!r.rejection&&_h(r)}))},Hs=function(r,e,t){var i,o;qh?(i=oi.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(r,!1,!0),V.dispatchEvent(i)):i={promise:e,reason:t},!yh&&(o=V["on"+r])?o(i):r===Bs&&gh("Unhandled promise rejection",t)},_h=function(r){fe(Ds,V,function(){var e=r.facade,t=r.value,i=ks(r),o;if(i&&(o=mh(function(){mr?ci.emit("unhandledRejection",t,e):Hs(Bs,e,t)}),r.rejection=mr||ks(r)?Vs:li,o.error))throw o.value})},ks=function(r){return r.rejection!==li&&!r.parent},xh=function(r){fe(Ds,V,function(){var e=r.facade;mr?ci.emit("rejectionHandled",e):Hs(Ph,e,r.value)})},ce=function(r,e,t){return function(i){r(e,i,t)}},le=function(r,e,t){r.done||(r.done=!0,t&&(r=t),r.value=e,r.state=Th,Ws(r,!0))},ai=function(r,e,t){if(!r.done){r.done=!0,t&&(r=t);try{if(r.facade===e)throw new Fs("Promise can't be resolved itself");var i=Ks(e);i?si(function(){var o={done:!1};try{fe(i,e,ce(ai,o,r),ce(le,o,r))}catch(a){le(o,a,r)}}):(r.value=e,r.state=Us,Ws(r,!1))}catch(o){le({done:!1},o,r)}}};if(js&&(Y=function(e){vh(this,vr),dh(e),fe(hr,this);var t=ii(this);try{e(ce(ai,t),ce(le,t))}catch(i){le(t,i)}},vr=Y.prototype,hr=function(e){Sh(this,{type:yr,done:!1,notified:!1,parent:!1,reactions:new bh,rejection:!1,state:As,value:void 0})},hr.prototype=Rs(vr,"then",function(e,t){var i=ii(this),o=ni(hh(this,Y));return i.parent=!0,o.ok=gr(e)?e:!0,o.fail=gr(t)&&t,o.domain=mr?ci.domain:void 0,i.state===As?i.reactions.add(o):si(function(){Gs(o,i)}),o.promise}),Ns=function(){var r=new hr,e=ii(r);this.promise=r,this.resolve=ce(ai,e),this.reject=ce(le,e)},Ms.f=ni=function(r){return r===Y||r===Oh?new Ns(r):Eh(r)},!ch&&gr(br)&&ue!==Object.prototype)){Ls=ue.then,Ih||Rs(ue,"then",function(e,t){var i=this;return new Y(function(o,a){fe(Ls,i,o,a)}).then(e,t)},{unsafe:!0});try{delete ue.constructor}catch{}Cs&&Cs(ue,vr)}uh({global:!0,constructor:!0,wrap:!0,forced:js},{Promise:Y});lh(Y,yr,!1,!0);fh(yr)});var J=n((fS,Qs)=>{"use strict";Qs.exports={}});var Js=n((dS,Ys)=>{"use strict";var wh=O(),Rh=J(),Ch=wh("iterator"),Ah=Array.prototype;Ys.exports=function(r){return r!==void 0&&(Rh.Array===r||Ah[Ch]===r)}});var fi=n((pS,Zs)=>{"use strict";var Nh=we(),Xs=Ye(),Lh=Ie(),kh=J(),Dh=O(),$h=Dh("iterator");Zs.exports=function(r){if(!Lh(r))return Xs(r,$h)||Xs(r,"@@iterator")||kh[Nh(r)]}});var ru=n((vS,eu)=>{"use strict";var Mh=w(),jh=M(),Fh=j(),Bh=Ee(),Uh=fi(),Vh=TypeError;eu.exports=function(r,e){var t=arguments.length<2?Uh(r):e;if(jh(t))return Fh(Mh(t,r));throw new Vh(Bh(r)+" is not iterable")}});var ou=n((hS,iu)=>{"use strict";var Kh=w(),tu=j(),Gh=Ye();iu.exports=function(r,e,t){var i,o;tu(r);try{if(i=Gh(r,"return"),!i){if(e==="throw")throw t;return t}i=Kh(i,r)}catch(a){o=!0,i=a}if(e==="throw")throw t;if(o)throw i;return tu(i),t}});var Sr=n((gS,uu)=>{"use strict";var Wh=Te(),Hh=w(),zh=j(),Qh=Ee(),Yh=Js(),Jh=yt(),nu=ze(),Xh=ru(),Zh=fi(),au=ou(),eg=TypeError,Ir=function(r,e){this.stopped=r,this.result=e},su=Ir.prototype;uu.exports=function(r,e,t){var i=t&&t.that,o=!!(t&&t.AS_ENTRIES),a=!!(t&&t.IS_RECORD),u=!!(t&&t.IS_ITERATOR),c=!!(t&&t.INTERRUPTED),d=Wh(e,i),f,p,v,s,l,h,g,b=function(S){return f&&au(f,"normal",S),new Ir(!0,S)},m=function(S){return o?(zh(S),c?d(S[0],S[1],b):d(S[0],S[1])):c?d(S,b):d(S)};if(a)f=r.iterator;else if(u)f=r;else{if(p=Zh(r),!p)throw new eg(Qh(r)+" is not iterable");if(Yh(p)){for(v=0,s=Jh(r);s>v;v++)if(l=m(r[v]),l&&nu(su,l))return l;return new Ir(!1)}f=Xh(r,p)}for(h=a?r.next:f.next;!(g=Hh(h,f)).done;){try{l=m(g.value)}catch(S){au(f,"throw",S)}if(typeof l=="object"&&l&&nu(su,l))return l}return new Ir(!1)}});var pu=n((mS,du)=>{"use strict";var rg=O(),lu=rg("iterator"),fu=!1;try{cu=0,di={next:function(){return{done:!!cu++}},return:function(){fu=!0}},di[lu]=function(){return this},Array.from(di,function(){throw 2})}catch{}var cu,di;du.exports=function(r,e){try{if(!e&&!fu)return!1}catch{return!1}var t=!1;try{var i={};i[lu]=function(){return{next:function(){return{done:t=!0}}}},r(i)}catch{}return t}});var pi=n((bS,vu)=>{"use strict";var tg=Q(),ig=pu(),og=ae().CONSTRUCTOR;vu.exports=og||!ig(function(r){tg.all(r).then(void 0,function(){})})});var hu=n(()=>{"use strict";var ng=_(),ag=w(),sg=M(),ug=se(),cg=cr(),lg=Sr(),fg=pi();ng({target:"Promise",stat:!0,forced:fg},{all:function(e){var t=this,i=ug.f(t),o=i.resolve,a=i.reject,u=cg(function(){var c=sg(t.resolve),d=[],f=0,p=1;lg(e,function(v){var s=f++,l=!1;p++,ag(c,t,v).then(function(h){l||(l=!0,d[s]=h,--p||o(d))},a)}),--p||o(d)});return u.error&&a(u.value),i.promise}})});var mu=n(()=>{"use strict";var dg=_(),pg=L(),vg=ae().CONSTRUCTOR,hi=Q(),hg=$(),gg=I(),mg=ie(),gu=hi&&hi.prototype;dg({target:"Promise",proto:!0,forced:vg,real:!0},{catch:function(r){return this.then(void 0,r)}});!pg&&gg(hi)&&(vi=hg("Promise").prototype.catch,gu.catch!==vi&&mg(gu,"catch",vi,{unsafe:!0}));var vi});var bu=n(()=>{"use strict";var bg=_(),yg=w(),Ig=M(),Sg=se(),Eg=cr(),qg=Sr(),Pg=pi();bg({target:"Promise",stat:!0,forced:Pg},{race:function(e){var t=this,i=Sg.f(t),o=i.reject,a=Eg(function(){var u=Ig(t.resolve);qg(e,function(c){yg(u,t,c).then(i.resolve,o)})});return a.error&&o(a.value),i.promise}})});var yu=n(()=>{"use strict";var Tg=_(),Og=se(),_g=ae().CONSTRUCTOR;Tg({target:"Promise",stat:!0,forced:_g},{reject:function(e){var t=Og.f(this),i=t.reject;return i(e),t.promise}})});var gi=n((_S,Iu)=>{"use strict";var xg=j(),wg=R(),Rg=se();Iu.exports=function(r,e){if(xg(r),wg(e)&&e.constructor===r)return e;var t=Rg.f(r),i=t.resolve;return i(e),t.promise}});var qu=n(()=>{"use strict";var Cg=_(),Ag=$(),Su=L(),Ng=Q(),Eu=ae().CONSTRUCTOR,Lg=gi(),kg=Ag("Promise"),Dg=Su&&!Eu;Cg({target:"Promise",stat:!0,forced:Su||Eu},{resolve:function(e){return Lg(Dg&&this===kg?Ng:this,e)}})});var Pu=n(()=>{"use strict";zs();hu();mu();bu();yu();qu()});var xu=n(()=>{"use strict";var $g=_(),Mg=L(),Er=Q(),jg=E(),Ou=$(),_u=I(),Fg=Nt(),Tu=gi(),Bg=ie(),bi=Er&&Er.prototype,Ug=!!Er&&jg(function(){bi.finally.call({then:function(){}},function(){})});$g({target:"Promise",proto:!0,real:!0,forced:Ug},{finally:function(r){var e=Fg(this,Ou("Promise")),t=_u(r);return this.then(t?function(i){return Tu(e,r()).then(function(){return i})}:r,t?function(i){return Tu(e,r()).then(function(){throw i})}:r)}});!Mg&&_u(Er)&&(mi=Ou("Promise").prototype.finally,bi.finally!==mi&&Bg(bi,"finally",mi,{unsafe:!0}));var mi});var Ru=n((LS,wu)=>{"use strict";Xn();Pu();xu();var Vg=er();wu.exports=Vg("Promise","finally")});var Au=n((kS,Cu)=>{"use strict";var Kg=Ru();Cu.exports=Kg});var Lu=n((DS,Nu)=>{"use strict";var Gg=Au();Nu.exports=Gg});var Du=n(($S,ku)=>{"use strict";var Wg=E();ku.exports=!Wg(function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype})});var qr=n((MS,Mu)=>{"use strict";var Hg=k(),zg=I(),Qg=at(),Yg=lr(),Jg=Du(),$u=Yg("IE_PROTO"),yi=Object,Xg=yi.prototype;Mu.exports=Jg?yi.getPrototypeOf:function(r){var e=Qg(r);if(Hg(e,$u))return e[$u];var t=e.constructor;return zg(t)&&e instanceof t?t.prototype:e instanceof yi?Xg:null}});var Bu=n((jS,Fu)=>{"use strict";var Zg=P(),Ii=k(),em=K(),rm=It().indexOf,tm=fr(),ju=Zg([].push);Fu.exports=function(r,e){var t=em(r),i=0,o=[],a;for(a in t)!Ii(tm,a)&&Ii(t,a)&&ju(o,a);for(;e.length>i;)Ii(t,a=e[i++])&&(~rm(o,a)||ju(o,a));return o}});var Si=n((FS,Uu)=>{"use strict";Uu.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var Ei=n((BS,Vu)=>{"use strict";var im=Bu(),om=Si();Vu.exports=Object.keys||function(e){return im(e,om)}});var Qu=n((US,zu)=>{"use strict";var Gu=T(),nm=E(),Wu=P(),am=qr(),sm=Ei(),um=K(),cm=Hr().f,Hu=Wu(cm),lm=Wu([].push),fm=Gu&&nm(function(){var r=Object.create(null);return r[2]=2,!Hu(r,2)}),Ku=function(r){return function(e){for(var t=um(e),i=sm(t),o=fm&&am(t)===null,a=i.length,u=0,c=[],d;a>u;)d=i[u++],(!Gu||(o?d in t:Hu(t,d)))&&lm(c,r?[d,t[d]]:t[d]);return c}};zu.exports={entries:Ku(!0),values:Ku(!1)}});var Yu=n(()=>{"use strict";var dm=_(),pm=Qu().entries;dm({target:"Object",stat:!0},{entries:function(e){return pm(e)}})});var Xu=n((GS,Ju)=>{"use strict";Yu();var vm=Se();Ju.exports=vm.Object.entries});var ec=n((WS,Zu)=>{"use strict";var hm=Xu();Zu.exports=hm});var Pr=n((HS,rc)=>{"use strict";var gm=ec();rc.exports=gm});var oc=n((zS,ic)=>{"use strict";var qi=T(),mm=k(),tc=Function.prototype,bm=qi&&Object.getOwnPropertyDescriptor,Pi=mm(tc,"name"),ym=Pi&&function(){}.name==="something",Im=Pi&&(!qi||qi&&bm(tc,"name").configurable);ic.exports={EXISTS:Pi,PROPER:ym,CONFIGURABLE:Im}});var ac=n(nc=>{"use strict";var Sm=T(),Em=pt(),qm=W(),Pm=j(),Tm=K(),Om=Ei();nc.f=Sm&&!Em?Object.defineProperties:function(e,t){Pm(e);for(var i=Tm(t),o=Om(t),a=o.length,u=0,c;a>u;)qm.f(e,c=o[u++],i[c]);return e}});var xi=n((YS,pc)=>{"use strict";var _m=j(),xm=ac(),sc=Si(),wm=fr(),Rm=Lt(),Cm=Je(),Am=lr(),uc=">",cc="<",Oi="prototype",_i="script",fc=Am("IE_PROTO"),Ti=function(){},dc=function(r){return cc+_i+uc+r+cc+"/"+_i+uc},lc=function(r){r.write(dc("")),r.close();var e=r.parentWindow.Object;return r=null,e},Nm=function(){var r=Cm("iframe"),e="java"+_i+":",t;return r.style.display="none",Rm.appendChild(r),r.src=String(e),t=r.contentWindow.document,t.open(),t.write(dc("document.F=Object")),t.close(),t.F},Tr,Or=function(){try{Tr=new ActiveXObject("htmlfile")}catch{}Or=typeof document<"u"?document.domain&&Tr?lc(Tr):Nm():lc(Tr);for(var r=sc.length;r--;)delete Or[Oi][sc[r]];return Or()};wm[fc]=!0;pc.exports=Object.create||function(e,t){var i;return e!==null?(Ti[Oi]=_m(e),i=new Ti,Ti[Oi]=null,i[fc]=e):i=Or(),t===void 0?i:xm.f(i,t)}});var Ai=n((JS,gc)=>{"use strict";var Lm=E(),km=I(),Dm=R(),$m=xi(),vc=qr(),Mm=ie(),jm=O(),Fm=L(),Ci=jm("iterator"),hc=!1,F,wi,Ri;[].keys&&(Ri=[].keys(),"next"in Ri?(wi=vc(vc(Ri)),wi!==Object.prototype&&(F=wi)):hc=!0);var Bm=!Dm(F)||Lm(function(){var r={};return F[Ci].call(r)!==r});Bm?F={}:Fm&&(F=$m(F));km(F[Ci])||Mm(F,Ci,function(){return this});gc.exports={IteratorPrototype:F,BUGGY_SAFARI_ITERATORS:hc}});var bc=n((XS,mc)=>{"use strict";var Um=Ai().IteratorPrototype,Vm=xi(),Km=ye(),Gm=Re(),Wm=J(),Hm=function(){return this};mc.exports=function(r,e,t,i){var o=e+" Iterator";return r.prototype=Vm(Um,{next:Km(+!i,t)}),Gm(r,o,!1,!0),Wm[o]=Hm,r}});var wc=n((ZS,xc)=>{"use strict";var zm=_(),Qm=w(),_r=L(),Oc=oc(),Ym=I(),Jm=bc(),yc=qr(),Ic=wt(),Xm=Re(),Zm=ee(),Ni=ie(),eb=O(),Sc=J(),_c=Ai(),rb=Oc.PROPER,tb=Oc.CONFIGURABLE,Ec=_c.IteratorPrototype,xr=_c.BUGGY_SAFARI_ITERATORS,Me=eb("iterator"),qc="keys",je="values",Pc="entries",Tc=function(){return this};xc.exports=function(r,e,t,i,o,a,u){Jm(t,e,i);var c=function(m){if(m===o&&s)return s;if(!xr&&m&&m in p)return p[m];switch(m){case qc:return function(){return new t(this,m)};case je:return function(){return new t(this,m)};case Pc:return function(){return new t(this,m)}}return function(){return new t(this)}},d=e+" Iterator",f=!1,p=r.prototype,v=p[Me]||p["@@iterator"]||o&&p[o],s=!xr&&v||c(o),l=e==="Array"&&p.entries||v,h,g,b;if(l&&(h=yc(l.call(new r)),h!==Object.prototype&&h.next&&(!_r&&yc(h)!==Ec&&(Ic?Ic(h,Ec):Ym(h[Me])||Ni(h,Me,Tc)),Xm(h,d,!0,!0),_r&&(Sc[d]=Tc))),rb&&o===je&&v&&v.name!==je&&(!_r&&tb?Zm(p,"name",je):(f=!0,s=function(){return Qm(v,this)})),o)if(g={values:c(je),keys:a?s:c(qc),entries:c(Pc)},u)for(b in g)(xr||f||!(b in p))&&Ni(p,b,g[b]);else zm({target:e,proto:!0,forced:xr||f},g);return(!_r||u)&&p[Me]!==s&&Ni(p,Me,s,{name:o}),Sc[e]=s,g}});var Cc=n((eE,Rc)=>{"use strict";Rc.exports=function(r,e){return{value:r,done:e}}});var ki=n((rE,Dc)=>{"use strict";var ib=K(),Li=St(),Ac=J(),Lc=ei(),ob=W().f,nb=wc(),wr=Cc(),ab=L(),sb=T(),kc="Array Iterator",ub=Lc.set,cb=Lc.getterFor(kc);Dc.exports=nb(Array,"Array",function(r,e){ub(this,{type:kc,target:ib(r),index:0,kind:e})},function(){var r=cb(this),e=r.target,t=r.index++;if(!e||t>=e.length)return r.target=void 0,wr(void 0,!0);switch(r.kind){case"keys":return wr(t,!1);case"values":return wr(e[t],!1)}return wr([t,e[t]],!1)},"values");var Nc=Ac.Arguments=Ac.Array;Li("keys");Li("values");Li("entries");if(!ab&&sb&&Nc.name!=="values")try{ob(Nc,"name",{value:"values"})}catch{}});var Mc=n((tE,$c)=>{"use strict";var lb=T(),fb=W(),db=ye();$c.exports=function(r,e,t){lb?fb.f(r,e,db(0,t)):r[e]=t}});var jc=n(()=>{"use strict";var pb=_(),vb=Sr(),hb=Mc();pb({target:"Object",stat:!0},{fromEntries:function(e){var t={};return vb(e,function(i,o){hb(t,i,o)},{AS_ENTRIES:!0}),t}})});var Bc=n((nE,Fc)=>{"use strict";ki();jc();var gb=Se();Fc.exports=gb.Object.fromEntries});var Vc=n((aE,Uc)=>{"use strict";Uc.exports={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}});var Gc=n(()=>{"use strict";ki();var mb=Vc(),bb=y(),yb=Re(),Kc=J();for(Rr in mb)yb(bb[Rr],Rr),Kc[Rr]=Kc.Array;var Rr});var Hc=n((cE,Wc)=>{"use strict";var Ib=Bc();Gc();Wc.exports=Ib});var Qc=n((lE,zc)=>{"use strict";var Sb=Hc();zc.exports=Sb});var Ui=n((eq,cl)=>{"use strict";var xb=we(),wb=String;cl.exports=function(r){if(xb(r)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return wb(r)}});var fl=n((rq,ll)=>{"use strict";var Rb=Ze(),Cb=Ui(),Ab=X(),Nb=RangeError;ll.exports=function(e){var t=Cb(Ab(this)),i="",o=Rb(e);if(o<0||o===1/0)throw new Nb("Wrong number of repetitions");for(;o>0;(o>>>=1)&&(t+=t))o&1&&(i+=t);return i}});var gl=n((tq,hl)=>{"use strict";var vl=P(),Lb=bt(),dl=Ui(),kb=fl(),Db=X(),$b=vl(kb),Mb=vl("".slice),jb=Math.ceil,pl=function(r){return function(e,t,i){var o=dl(Db(e)),a=Lb(t),u=o.length,c=i===void 0?" ":dl(i),d,f;return a<=u||c===""?o:(d=a-u,f=$b(c,jb(d/c.length)),f.length>d&&(f=Mb(f,0,d)),r?o+f:f+o)}};hl.exports={start:pl(!1),end:pl(!0)}});var bl=n((iq,ml)=>{"use strict";var Fb=G();ml.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(Fb)});var yl=n(()=>{"use strict";var Bb=_(),Ub=gl().start,Vb=bl();Bb({target:"String",proto:!0,forced:Vb},{padStart:function(e){return Ub(this,e,arguments.length>1?arguments[1]:void 0)}})});var Sl=n((aq,Il)=>{"use strict";yl();var Kb=er();Il.exports=Kb("String","padStart")});var ql=n((sq,El)=>{"use strict";var Gb=Sl();El.exports=Gb});var Tl=n((uq,Pl)=>{"use strict";var Wb=ql();Pl.exports=Wb});var Hi=D(rr(),1);var _e=(u=>(u.PROD="prod",u.VK_ALIAS="vk_alias",u.VIDEOTEST="videotest",u.TEST="test",u.OKCDN="okcdn",u.AUTO="auto",u))(_e||{}),Et=(f=>(f.Q144P="mobile",f.Q240P="lowest",f.Q360P="low",f.Q480P="medium",f.Q720P="high",f.Q1080P="fullhd",f.Q1440P="quadhd",f.Q2160P="ultrahd",f.UNKNOWN="unknown",f))(Et||{}),qt=(l=>(l.MP4="mp4",l.DASH="dash",l.DASH_SEP="dash_sep",l.ONDEMAND_DASH="ondemand_dash",l.HLS="hls",l.ONDEMAND_HLS="ondemand_hls",l.WEBM="webm",l.AV1="av1",l.ONDEMAND_DASH_LIVE="ondemand_dash_live",l.ONDEMAND_HLS_LIVE="ondemand_hls_live",l.WEBRTC="webrtc",l.UNKNOWN="unknown",l.RTMP="rtmp",l))(qt||{});var Pt=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.HTTP3="http3",i))(Pt||{});var Tt=(c=>(c.SLIDER="slider",c.DOUBLE_TAP="double_tap",c.TIME_CODE="time_code",c.EPISODE="episode",c.REWIND="rewind",c.LIVE="live",c.UNKNOWN="unknown",c))(Tt||{}),Gn=(a=>(a.GRAPH_SHOW="iGraphShow",a.GRAPH_HIDE="iGraphHide",a.NEXT_AREA="iNextChapterArea",a.NEXT_BUTTON="iNextChapterBtn",a.WATCH_AGAIN="iWatchAgainBtn",a))(Gn||{}),Wn={action_play:"ap",action_play_interactive:"api",first_bytes:"fb",player_ready:"pr",first_frame:"ff",seek:"sk",watch_coverage_record:"wr",watch_coverage_live:"wl",empty_buffer:"eb",action_stop:"as",close_at_empty_buffer:"cb",content_error:"er",player_interface_click:"pc",next_movie:"nm",track_switch:"ts",failover:"fo",quality:"qt"},Hn={vsid:"si",isid:"is",vid:"vi",place:"pl",quality:"qt",cdn_host:"ch",stat_type:"st",param:"pm",vk_app_id:"va",track_code:"tc",connection_type:"cnt",connection_reused:"cr",cached_data:"cd",live:"lv",muted:"mu",mode:"mo",subtitles:"sb",failover:"fo",download_speed:"ds",manual_quality:"mq",ref_domain:"rd",direct_url:"du"},zn={unknown:"un",mobile:"m",lowest:"ls",low:"l",medium:"md",high:"h",fullhd:"f",quadhd:"q",ultrahd:"u"},Qn={pip:"pi",fullscreen:"fs",external:"ex",prefetch:"pr",airplay:"ap",chromecast:"cc",invisible:"iv"};import{fillWithDefault as pp}from"@vkontakte/videoplayer-shared/es2024";var tr="1.0.76",Yn="CIOPGQJGDIHBABABA",Ot={prod:"https://api.ok.ru",vk_alias:"https://api.mycdn.me",videotest:"https://videotestapi.ok.ru/api",test:"https://apitest.ok.ru",okcdn:"https://api.okcdn.ru",auto:""};var vp={apiEnv:"vk_alias",apiKey:Yn,requestRetryCount:1,firstFlushTime:5e3,flushDebounceTime:1e4,flushMaxWait:6e4,storageExpiration:36*60*60*1e3,watchCoverageInterval:15e3,disabledOperations:["quality"],disabledCustomFields:[],shorten:!0,maxLoops:100,embedUrlParams:[],useBeacon:!0,synchronizeTime:!0,debugLog:!1,clearStorageAtUnload:!0,useVKComIsMobileLogic:!1,backoff:{start:1e3,factor:1.5,max:5*60*1e3,random:.1}},Jn=r=>pp(r,vp);function _t(){let r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),e=new Array(36),t=0,i,o;for(o=0;o<36;o++)o===8||o===13||o===18||o===23?e[o]="-":o===14?e[o]="4":(t<=2&&(t=33554432+Math.random()*16777216|0),i=t&15,t=t>>4,e[o]=r[o===19?i&3|8:i]);return e.join("")}import{assertNonNullable as Zb,combine as Al,fromEvent as Nl,isNonNullable as he,isNullable as Ll,merge as ey,now as B,observableFrom as ry,once as ty,safeStorage as jr,Subject as iy,Subscription as zi,ValueSubject as Fr,createURL as kl}from"@vkontakte/videoplayer-shared/es2024";import{Logger as oy,detectEmbed as ny}from"@vkontakte/videoplayer-shared/es2024";var Cr=D(Lu(),1);var Yc=D(Pr(),1),Jc=D(Qc(),1);var Xc=r=>{let{operation:e,custom:t}=r,i=(0,Jc.default)((0,Yc.default)(t).map(([o,a])=>{let u=Hn[o]??o,c=a;return a&&(o==="mode"?c=Qn[a]??a:o==="quality"&&(c=zn[a]??a)),[u,c]}));return{...r,operation:Wn[e]??e,custom:i}};import{ValueSubject as Eb,getExponentialDelay as qb,ErrorCategory as de}from"@vkontakte/videoplayer-shared/es2024";var Pb=/Mobile|mini|Fennec|Android|iP(ad|od|hone)|opera (mini|mobi)/i,Fe=class{constructor(e){this.consequentAuthErrors=0;this.authorized$=new Eb(!1);this.params=e}async authorize(e){return this.authToken=e??await this.refreshAuthToken(),this._authorizeWithBackoff()}logBeacon(e){let t="log.externalLog",i=this.createLogParams(e),o=this.sessionKey;if(!o)return;this.params.apiTransport.sendBeacon(t,i,o)||this.logRequest(e).catch(()=>{})}async logRequest(e){let t="log.externalLog",i=this.createLogParams(e),o=this.sessionKey??await this._authorizeWithBackoff();if(!o)return;let a=async(u,c=this.params.config.requestRetryCount)=>{try{return await this.params.apiTransport.sendRequest(t,i,o)}catch(d){if(!d||!("error_code"in d)){this.params.error$.next({id:"logRequestUnknown",category:de.NETWORK,message:`Unknown ${t} error`,thrown:d});return}let f=d?.error_code;switch(f){case 102:case 103:case 104:return this.authorized$.next(!1),this.sessionKey=await this._authorizeWithBackoff(),c>0?a(u,c-1):void 0;case 401:return this.authorized$.next(!1),this.authToken=await this.refreshAuthToken(),this.sessionKey=await this._authorizeWithBackoff(),c>0?a(u,c-1):void 0;default:{this.params.error$.next({id:`LogRequest#${f}`,category:de.EXTERNAL_API,message:`${t} error`,data:d});return}}}};return a(e)}destroy(){window.clearTimeout(this.backoffTimeoutId),this.backoffTimeoutId=0}async refreshAuthToken(){if(this.params.refreshAuthToken)return this.refreshAuthTokenPromise||(this.refreshAuthTokenPromise=(0,Cr.default)(this.params.refreshAuthToken(),()=>{this.refreshAuthTokenPromise=void 0})),this.refreshAuthTokenPromise}createLogParams(e){let t="WEB",i=!1;if(this.params.config.useVKComIsMobileLogic){let{appVersion:o}=window.navigator;i=Pb.test(o)}else this.params.mobile&&(i=!0);return i&&(t="M_WEB"),{collector:"ok.mobile.apps.video",data:JSON.stringify({application:`@vkontakte/videoplayer-statistics:${tr}`,platform:t,items:this.params.config.shorten?e.map(Xc):e})}}_authorizeWithBackoff(){if(!this.consequentAuthErrors)return this._authorize();let e=qb(this.consequentAuthErrors,this.params.config.backoff);return new Promise(t=>{this.backoffTimeoutId||(this.backoffTimeoutId=window.setTimeout(()=>{(0,Cr.default)(this._authorize().then(t).catch(i=>this.params.error$.next({id:"AuthorizeBackoff",category:de.NETWORK,message:"Otherwise unhandled error in authorization",thrown:i})),()=>this.backoffTimeoutId=0)},e))})}async _authorize(){if(this.authorizePromise)return this.authorizePromise;this.sessionKey=void 0,this.authorized$.next(!1);let e="auth.anonymLogin",t={session_data:{version:2,device_id:this.params.deviceId,client_version:tr.split("-")[0],client_type:"SDK_JS"}};return this.authToken!==void 0&&(t.session_data.auth_token=this.authToken,t.session_data.version=3),this.authorizePromise=(0,Cr.default)(this.params.apiTransport.sendRequest(e,t).then(i=>((!i||!i.session_key)&&this.params.error$.next({id:"AuthorizeFailed",category:de.EXTERNAL_API,message:"No session key",data:i}),this.sessionKey=i?.session_key??void 0,this.sessionKey)).catch(async i=>{this.sessionKey=void 0;let o=i?.error_code;switch(o){case 401:return this.authToken=await this.refreshAuthToken(),this._authorizeWithBackoff()}o?this.params.error$.next({id:`Authorize#${o}`,category:de.EXTERNAL_API,message:"authorize error",data:i}):this.params.error$.next({id:"AuthorizeUnknown",category:de.NETWORK,message:"authorize error",thrown:i})}),()=>{this.authorizePromise=void 0,this.consequentAuthErrors=this.sessionKey?0:this.consequentAuthErrors+1,this.authorized$.next(this.sessionKey!==void 0)}),this.authorizePromise}};var Ar=class{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,i){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:i})}removeEventListener(e,t){if(!(e in this.listeners))return;let i=this.listeners[e];for(let o=0,a=i.length;o<a;o++)if(i[o].callback===t){i.splice(o,1);return}}dispatchEvent(e){if(!(e.type in this.listeners))return;let i=this.listeners[e.type].slice();for(let o=0,a=i.length;o<a;o++){let u=i[o];try{u.callback.call(this,e)}catch(c){Promise.resolve().then(()=>{throw c})}u.options&&u.options.once&&this.removeEventListener(e.type,u.callback)}return!e.defaultPrevented}},pe=class extends Ar{constructor(){super(),this.listeners||Ar.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){e.type==="abort"&&(this.aborted=!0,typeof this.onabort=="function"&&this.onabort.call(this,e)),super.dispatchEvent(e)}},Be=class{constructor(){Object.defineProperty(this,"signal",{value:new pe,writable:!0,configurable:!0})}abort(e){let t;try{t=new Event("abort")}catch{typeof document<"u"?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let i=e;if(i===void 0)if(typeof document>"u")i=new Error("This operation was aborted"),i.name="AbortError";else try{i=new DOMException("signal is aborted without reason")}catch{i=new Error("This operation was aborted"),i.name="AbortError"}this.signal.reason=i,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}};typeof Symbol<"u"&&Symbol.toStringTag&&(Be.prototype[Symbol.toStringTag]="AbortController",pe.prototype[Symbol.toStringTag]="AbortSignal");function Nr(r){return r.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):typeof r.Request=="function"&&!r.Request.prototype.hasOwnProperty("signal")||!r.AbortController}function Di(r){typeof r=="function"&&(r={fetch:r});let{fetch:e,Request:t=e.Request,AbortController:i,__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL:o=!1}=r;if(!Nr({fetch:e,Request:t,AbortController:i,__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL:o}))return{fetch:e,Request:a};let a=t;(a&&!a.prototype.hasOwnProperty("signal")||o)&&(a=function(f,p){let v;p&&p.signal&&(v=p.signal,delete p.signal);let s=new t(f,p);return v&&Object.defineProperty(s,"signal",{writable:!1,enumerable:!1,configurable:!0,value:v}),s},a.prototype=t.prototype);let u=e;return{fetch:(d,f)=>{let p=a&&a.prototype.isPrototypeOf(d)?d.signal:f?f.signal:void 0;if(p){let v;try{v=new DOMException("Aborted","AbortError")}catch{v=new Error("Aborted"),v.name="AbortError"}if(p.aborted)return Promise.reject(v);let s=new Promise((l,h)=>{p.addEventListener("abort",()=>h(v),{once:!0})});return f&&f.signal&&delete f.signal,Promise.race([s,u(d,f)])}return u(d,f)},Request:a}}var Ue=Nr({fetch:window.fetch,Request:window.Request,AbortController:window.AbortController}),Zc=Ue?Di({fetch:window.fetch,Request:window.Request,AbortController:window.AbortController}):void 0,$i=Ue?Zc.fetch:window.fetch,wE=Ue?Zc.Request:window.Request,RE=Ue?Be:window.AbortController,CE=Ue?pe:window.AbortSignal;var el=D(rr(),1),rl=D(Pr(),1);import{ErrorCategory as Lr,now as Mi}from"@vkontakte/videoplayer-shared/es2024";var Ve=class{constructor(e){this.params=e,this.apiKey=e.config.apiKey,this.apiEnv=e.config.apiEnv,this.apiBaseUrl=Ot[this.apiEnv],this.timeSynchronisation=e.timeSynchronisation,this.isApiBaseUrlFetched=!1}async resolveApiBaseUrl(){if(this.apiEnv!=="auto"||this.isApiBaseUrlFetched)return this.apiBaseUrl;try{let e=atob("aHR0cHM6Ly9kbnMuZ29vZ2xlL3Jlc29sdmU/bmFtZT12aWRlby5fZW5kcG9pbnQub2sucnUmdHlwZT1UWFQ="),o=(await(await $i(e,{method:"GET",mode:"cors",cache:"no-cache"})).json())?.Answer[0]?.data;if(!o)throw new Error("Wrong DNS response");return o}catch(e){return this.params.error$.next({id:"OneStat:ApiTransport:resolveApiBaseUrl",category:Lr.NETWORK,message:"Unhandled resolve api base url error",thrown:e}),Ot.vk_alias}finally{this.isApiBaseUrlFetched=!0}}sendBeacon(e,t,i){if(!window.Blob||!window.navigator.sendBeacon)return!1;let o=this._prepareQueryParams({method:e,queryParams:t,sessionKey:i}),a=new window.Blob([o.toString()],{type:"application/x-www-form-urlencoded"});try{return window.navigator.sendBeacon(`${this.apiBaseUrl}/fb.do`,a)}catch(u){this.params.error$.next({id:"OneStat:ApiTransport:sendBeacon",category:Lr.NETWORK,message:"Unhandled beacon error",thrown:u,data:{method:e,params:t}})}return!1}async sendRequest(e,t,i){let o=Mi(),a=u=>{if(u instanceof TypeError&&(0,el.default)(["Failed to fetch","NetworkError when attempting to fetch resource."],u.message)){this.params.error$.next({id:"Network",category:Lr.NETWORK,message:"Request failed",thrown:u});return}this.params.error$.next({id:"OneStat:ApiTransport:sendRequest",category:Lr.NETWORK,message:"Unhandled request error",thrown:u,data:{method:e,params:t,sessionKey:i,time:Mi()-o}})};return this.apiBaseUrl=await this.resolveApiBaseUrl(),$i(`${this.apiBaseUrl}/fb.do`,{method:"post",headers:{"Content-type":"application/x-www-form-urlencoded"},body:this._prepareQueryParams({method:e,queryParams:t,sessionKey:i})}).then(u=>{let c=Number(u.headers.get("content-length"))===0,d=new Date(u.headers.get("date")??"").getTime(),f=Mi()-o;if(isFinite(d)&&this.timeSynchronisation?.addServerTime(d,f),!c)return u.json().then(p=>Object.prototype.hasOwnProperty.call(p,"error_msg")?Promise.reject(p):p,a)},a)}_prepareQueryParams(e){let t=new URLSearchParams({format:"JSON",method:e.method,application_key:this.apiKey});return e.sessionKey!==void 0&&t.append("session_key",e.sessionKey),(0,rl.default)(e.queryParams).forEach(([i,o])=>t.append(i,typeof o=="string"?o:JSON.stringify(o))),t}};var il=D(rr(),1),ol=D(Pr(),1);import{ErrorCategory as Tb,now as Ob,safeStorage as Ke,debounceFn as tl}from"@vkontakte/videoplayer-shared/es2024";var kr="onestat_events",ji=r=>e=>e.timestamp+r>=Ob(),Dr=class{constructor(e){this.unsaltedStorage=[];this.isPaused=!1;this.isUrgent=e=>{let{operation:t}=e;return(0,il.default)(["action_play","watch_coverage_record","watch_coverage_live"],t)};this.params=e,this.api=e.api,this.error$=e.error$,this.userSalt=e.userSalt,this.loggerDebugLog=e.debugLogger.createComponentLog("stat logger"),this.firstFlush=tl(()=>this.safeFlush(),this.params.config.firstFlushTime,{maxWait:this.params.config.firstFlushTime});let t=Ke.isPersistent()?this.params.config.flushMaxWait:0;this.debouncedFlush=tl(()=>this.safeFlush(),this.params.config.flushDebounceTime,{maxWait:t}),this.subscription=this.api.authorized$.subscribe(i=>{i&&this.debouncedFlush()}),this.housekeepStorage()}safeFlush(){try{this.flush()}catch(e){this.error$.next({id:"LoggerError",category:Tb.WTF,message:e?String(e):"Unknown logger error",thrown:e})}}readFromStorage(){let e=Ke.get(kr);try{return e?JSON.parse(e):{}}catch{}return{}}addToStorage(e){if(!this.userSalt){this.unsaltedStorage.push(e);return}let t=this.readFromStorage(),o=(t[this.userSalt]??[]).filter(ji(this.params.config.storageExpiration));Ke.set(kr,JSON.stringify({...t,[this.userSalt]:[...o,e]}))}getFromStorage(){return this.userSalt?(this.readFromStorage()[this.userSalt]??[]).filter(ji(this.params.config.storageExpiration)):this.unsaltedStorage}markStorageSent(){if(!this.userSalt){this.unsaltedStorage=[];return}let e=this.readFromStorage();delete e[this.userSalt],Ke.set(kr,JSON.stringify(e))}housekeepStorage(){let e=this.readFromStorage();for(let[t,i]of(0,ol.default)(e)){let o=i.filter(ji(this.params.config.storageExpiration));o.length?e[t]=o:delete e[t],this.loggerDebugLog({message:`${i.length} retrieved from storage, ${o.length} of them actual`})}Ke.set(kr,JSON.stringify(e))}log(e){this.addToStorage(e),!this.isPaused&&(this.isUrgent(e)?this.flush():this.lastVsid!==e.custom.vsid?this.firstFlush():this.debouncedFlush(),this.lastVsid=e.custom.vsid)}flush({wantBeacon:e,clearStorage:t}={wantBeacon:!1,clearStorage:!0}){let i=this.getFromStorage();i.length!==0&&(this.api.authorized$.getValue()?(e&&this.params.config.useBeacon?(this.loggerDebugLog({message:`Flushing ${i.length} events through beacon`}),this.api.logBeacon(i)):(this.loggerDebugLog({message:`Flushing ${i.length} events`}),this.api.logRequest(i)),t&&this.markStorageSent()):this.api.authorize(),this.firstFlush.cancel(),this.debouncedFlush.cancel())}pause(){this.isPaused=!0,this.debouncedFlush.cancel()}resume(){this.isPaused=!1,this.debouncedFlush()}destroy(){this.subscription.unsubscribe(),this.firstFlush.cancel(),this.debouncedFlush.cancel()}};import{HttpConnectionType as Fi,Surface as ve,VideoFormat as q,VideoQuality as N}from"@vkontakte/videoplayer-core/es2024";import{assertNever as nl}from"@vkontakte/videoplayer-shared/es2024";var al=r=>r&&{[N.INVARIANT]:"unknown",[N.Q_144P]:"mobile",[N.Q_240P]:"lowest",[N.Q_360P]:"low",[N.Q_480P]:"medium",[N.Q_576P]:"unknown",[N.Q_720P]:"high",[N.Q_1080P]:"fullhd",[N.Q_1440P]:"quadhd",[N.Q_2160P]:"ultrahd",[N.Q_4320P]:"unknown"}[r],Bi=r=>r&&{[Fi.HTTP1]:"http1",[Fi.HTTP2]:"http2",[Fi.QUIC]:"http3"}[r],sl=r=>{if(r!==void 0)switch(r){case q.MPEG:return"mp4";case q.DASH:case q.DASH_LIVE:case q.DASH_STREAMS:return"dash";case q.DASH_SEP:return"dash_sep";case q.DASH_ONDEMAND:return"ondemand_dash";case q.DASH_WEBM:case q.DASH_LIVE_WEBM:return"webm";case q.DASH_WEBM_AV1:return"av1";case q.DASH_LIVE_CMAF:return"ondemand_dash_live";case q.HLS:case q.HLS_LIVE:return"hls";case q.HLS_ONDEMAND:return"ondemand_hls";case q.HLS_LIVE_CMAF:return"ondemand_hls_live";case q.WEB_RTC_LIVE:return"webrtc";default:return nl(r)}},$r=r=>{if(r!==void 0)switch(r){case ve.NONE:case ve.INLINE:return;case ve.FULLSCREEN:return"fullscreen";case ve.SECOND_SCREEN:return"chromecast";case ve.PIP:return"pip";case ve.INVISIBLE:return"invisible";default:return nl(r)}},ul=r=>{switch(r){case"slow-2g":return"poor";case"2g":return"poor";case"3g":return"good";case"4g":return"excellent"}};var Mr=class{constructor(e){this.offset=void 0;this.offset=e}getOffset(){return this.offset??0}setOffset(e){this.offset=e}now(){return Date.now()+(this.offset??0)}date(e=new Date){return e.setTime(e.getTime()+(this.offset??0)),e}addServerTime(e,t){let i=Date.now(),o=e-i-t/2;if(Math.abs(o)<1e3){this.offset=0;return}this.offset===void 0?this.offset=Math.round(o):this.offset=Math.round(.2*o+(1-.2)*this.offset)}};var Vi=D(Tl(),1),Ol=()=>(0,Vi.default)(Math.floor(Math.random()*2**32).toString(36),7,"0"),_l=()=>(0,Vi.default)(Math.floor(Math.random()*2**64).toString(36),13,"0");import{PlaybackState as xl}from"@vkontakte/videoplayer-core/es2024";import{filter as wl,filterChanged as Hb,fromEvent as zb,isNullable as Rl,map as Qb,merge as Ki,Observable as Yb,Subject as Gi,Subscription as Jb,ValueSubject as Xb}from"@vkontakte/videoplayer-shared/es2024";var Cl=(r,e)=>new Yb(t=>{let i=new Jb,o=Ki(zb(window,"beforeunload"),r.events.willDestruct$),a=new Xb(void 0),u;i.add(r.info.isLive$.pipe(Hb()).subscribe(U=>{u&&(u.unsubscribe(),a.next(void 0)),U?u=r.info.liveTime$.pipe(Qb(Br=>Br&&Br/1e3)).subscribe(a):u=r.info.position$.subscribe(a),i.add(u)}));let{playing$:c,paused$:d}=r.events,f=r.events.willSeek$.pipe(wl(()=>r.info.playbackState$.getValue()===xl.PLAYING)),p=r.events.seeked$.pipe(wl(()=>r.info.playbackState$.getValue()===xl.PLAYING)),v=!1,s=new Gi;i.add(f.subscribe(()=>{v||s.next(),v=!0})),i.add(p.subscribe(()=>v=!1));let l=new Gi,h=new Gi,g=Ki(c,p,l),b=Ki(d,s,o,r.events.looped$,h),m,S=()=>m=a.getValue(),Ge=()=>{let U=a.getValue();Rl(m)||m===U||Rl(U)||(t.next({from:m,to:U}),m=void 0)},We=()=>{h.next(),l.next()};if(i.add(g.subscribe(S)),i.add(b.subscribe(Ge)),e.forceInterval&&isFinite(e.forceInterval)){let U=0;i.add(g.subscribe(()=>U=window.setTimeout(We,e.forceInterval))),i.add(b.subscribe(()=>window.clearTimeout(U)))}return i});var Ml="_one-stat_",Dl=`${Ml}uuid`,$l=`${Ml}deviceId`,Wi=()=>{let r=new zi;return{subscription:r,subscribe:(e,t)=>{e&&r.add(e.subscribe(t))}}},Qi=class{constructor(e,t){this.subscription=new zi;this.debugLogger=new oy;this.oneStatDebugLog=this.debugLogger.createComponentLog("onestat");this.loopCounter=0;this.disabled=!1;this.vsid$=new Fr(void 0);this.isid$=new Fr(void 0);this.zenUid$=new Fr(void 0);this.seekAction$=new Fr("unknown");this.statContext=e,this.config=Jn(t.config??{}),he(t.apiEnv)&&(this.config.apiEnv=t.apiEnv),this.config.synchronizeTime&&(this.timeSynchronisation=new Mr);let i=new iy;this.experimental={error$:i},jr.get(Dl)&&jr.remove(Dl);let a=jr.get($l);this.statContext.deviceId?this.deviceId=this.statContext.deviceId:a?this.deviceId=a:(this.deviceId=_t(),jr.set($l,this.deviceId)),this.resetViewSession(),t.useIsid&&this.isid$.next(t.isid??_l()),this.zenUid$.next(t.zenUid);let u=new Ve({config:this.config,error$:i,timeSynchronisation:this.timeSynchronisation});this.api=new Fe({config:this.config,apiTransport:u,refreshAuthToken:t.refreshAuthToken,mobile:this.statContext.mobile??!1,deviceId:this.deviceId,error$:i}),this.logger=new Dr({config:this.config,debugLogger:this.debugLogger,api:this.api,error$:i,userSalt:t.userSalt});let{isEmbed:c,topOrigin:d}=ny();this.isEmbed=c,this.embedParent=d?new URL(d).hostname:void 0,this.subscribe()}updateContext(e){this.statContext={...this.statContext,...e}}attachTo(e){let t=new zi,i=(s,l)=>t.add(s.subscribe(l));i(e.events.willStart$,()=>{let s=e.info.position$.getValue();this.logActionPlay({position:s}),this.statContext.projectId&&this.logActionPlayInteractive()}),i(e.events.looped$,()=>{this.resetViewSession(),++this.loopCounter>this.config.maxLoops&&(this.disabled=!0),this.logActionPlay({position:e.info.position$.getValue()})}),i(e.events.seeked$,()=>{this.logSeek({action:this.seekAction$.getValue(),time:e.info.position$.getValue()}),this.seekAction$.next("unknown")}),i(e.events.paused$,()=>{this.logPause({position:e.info.position$.getValue()})}),i(e.events.willResume$,()=>{this.logPlay()}),i(e.events.started$,()=>{this.statContext.clip&&this.logWatchCoverageRecord({start:0,end:0})}),i(e.events.playing$,()=>{this.logPlaying()}),i(Cl(e,{forceInterval:this.config.watchCoverageInterval}),s=>{let l=e.info.isLive$.getValue(),h=e.info.atLiveEdge$.getValue(),g={start:parseFloat(s.from.toFixed(3)),end:parseFloat(s.to.toFixed(3))};if(h){let b=e.info.liveLatency$.getValue()??0,m=e.info.currentBuffer$.getValue()?.end??0,S=e.info.liveBufferTime$.getValue()??0,Ge=Math.round((b-(m-S))*1e3),We=Math.round(b*1e3);Ge&&We&&(g.latency=Ge,g.bufferLatency=We)}l?this.logWatchCoverageLive(g):this.logWatchCoverageRecord(g)});let o;i(e.info.isStalled$,s=>{s?o=B():(he(o)&&this.logEmptyBuffer({duration:B()-o}),o=void 0)});let a=!1;t.add(e.events.fatalError$.pipe(ty()).subscribe(()=>a=!0)),i(e.events.willStop$,()=>{if(e.info.isStalled$.getValue()){let l=he(o)?B()-o:void 0;this.logCloseAtEmptyBuffer({duration:l??0}),o=void 0}else a||this.logActionStop()}),i(e.events.managedError$,({id:s})=>{this.logError({fatal:!1,errorType:s})}),i(e.events.fatalError$,({id:s})=>{this.logError({fatal:!0,errorType:s})});let u,c,d=!1;i(e.events.firstBytes$,s=>{u=B(),this.logFirstBytes({time:s})}),i(e.events.willStart$,()=>c=B()),i(e.info.currentBuffer$,s=>{!d&&s&&s.end-s.start>0&&he(u)&&(this.logPlayerReady({duration:B()-u}),d=!0)}),i(e.events.firstFrame$,()=>{he(u)&&!d&&(this.logPlayerReady({duration:B()-u}),d=!0),he(c)&&this.logFirstFrame({time:B()-c})});let f;i(e.info.currentVideoStream$,s=>{s&&(f&&s.id!==f&&this.logTrackSwitch(s),f=s.id)});let p;i(e.info.currentAudioStream$,s=>{s&&(p&&s.id!==p&&this.logTrackSwitch(s),p=s.id)}),i(e.info.atLiveEdge$,s=>this.updateContext({liveEdge:s})),i(Al({muted:e.info.muted$,volume:e.info.volume$}),({muted:s,volume:l})=>this.updateContext({audible:!s&&l>0})),i(e.info.currentQuality$,s=>{let l=al(s);this.updateContext({quality:l}),l&&this.logQuality(l)}),i(e.info.isAutoQualityEnabled$,s=>this.updateContext({autoQuality:s})),i(e.info.currentFormat$,s=>this.updateContext({contentType:sl(s)})),i(e.info.currentPlaybackRate$,s=>this.updateContext({rate:s})),i(e.info.is3DVideo$,s=>this.updateContext({is3d:s}));let v;return i(e.info.hostname$,s=>{let l=v!==void 0&&v!==s;this.updateContext({cdnHostname:s,failover:l}),l&&this.logFailover(s),v=s}),i(e.info.throughputEstimation$,s=>this.updateContext({downloadSpeed:s})),i(e.info.httpConnectionType$,s=>{this.statContext.firstConnectionType||this.updateContext({firstConnectionType:Bi(s)}),this.updateContext({connectionType:Bi(s)})}),i(e.info.httpConnectionReused$,s=>{Ll(this.statContext.firstConnectionReused)&&this.updateContext({firstConnectionReused:s}),this.updateContext({connectionReused:s})}),i(e.info.surface$,s=>this.updateContext({mode:$r(s)})),i(Al({current:e.info.currentTextTrack$,available:e.info.availableTextTracks$}),({current:s,available:l})=>{let h=l.find(({id:b})=>b===s),g=h&&(h.isAuto?`${h.language}_auto`:h.language);this.updateContext({subtitles:g?.split(".")[0]})}),this.player=e,this.uiEvents&&this.attachToUi(this.uiEvents),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToUi(e){this.uiEvents=e;let{subscription:t,subscribe:i}=Wi();return this.player&&(i(e.actionRewind$,()=>{this.player&&(this.resetViewSession(),this.logActionPlay({position:this.player.info.position$.getValue()}))}),i(e.actionSeek$,this.seekAction$),i(e.inPiP$,o=>{let a=o?"pip":$r(this.player?.info.surface$.getValue());this.updateContext({mode:a})}),i(e.inFullscreen$,o=>{let a=o?"fullscreen":$r(this.player?.info.surface$.getValue());this.updateContext({mode:a})}),i(e.actionSetSubtitle$,o=>this.updateContext({subtitles:o.split(".")[0]})),i(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(t)),t}attachToAds(e){let{subscription:t,subscribe:i}=Wi();return i(e.slotRequested$,()=>this.logAdSlotRequest()),i(e.started$,o=>this.logAdStarted(o)),i(e.paused$,()=>this.logAdPaused()),i(e.resumed$,()=>this.logAdResumed()),i(e.ended$,()=>this.logAdEnded()),i(e.skipped$,()=>this.logAdSkipped()),i(e.clicked$,()=>this.logAdClicked()),i(e.error$,o=>this.logError({errorType:o,fatal:!1})),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToInteractive(e){let{subscription:t,subscribe:i}=Wi();return i(e.click$,o=>this.logInterfaceClick(o)),i(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(t),t}authorize(e){return this.api.authorize(e)}pause(){this.logger.pause(),this.oneStatDebugLog({message:"paused"})}resume(){this.logger.resume(),this.oneStatDebugLog({message:"resumed"})}destroy(){this.logger.flush(),this.subscription.unsubscribe(),this.api.destroy(),this.logger.destroy()}resetViewSession(){this.oneStatDebugLog({message:"VSID reset"}),this.vsid$.next(Ol())}getDeviceId(){return this.deviceId}setFieldBlacklist(){}logInited(){}logReady(e){this.log({operation:"player_ready",param:String(e.time)})}logStarted(...e){this.logActionPlay(...e)}logPlay(){this.log({operation:"play_toggle"})}logPlaying(){this.log({operation:"playing"})}logPause(e){this.log({operation:"pause",param:String(Math.round(e.position))})}logSeek(e){this.log({operation:"seek",param:e.action,time:e.time})}logFirstBytes(e){this.log({operation:"first_bytes",param:String(e.time)})}logFirstFrame(e){this.log({operation:"first_frame",param:String(e.time)})}logError(e){this.log({operation:"content_error",param:`${e.fatal?"fatal":"recoverable"}_${e.errorType}`})}logWatchCoverageRecord(e){this.log({operation:"watch_coverage_record",param:`${e.start}-${e.end}`},{in_history:this.statContext.inHistory?1:void 0})}logWatchCoverageLive(e){let t=this.timeSynchronisation?.getOffset()??0,i=e.start+t,o=e.end+t;this.log({operation:"watch_coverage_live",param:`${i}-${o}`},{in_history:this.statContext.inHistory?1:void 0,latency:e.latency,buffer_latency:e.bufferLatency})}logEmptyBuffer(e){this.log({operation:"empty_buffer",param:String(e.duration)})}logDownloadSpeed(){}logAdSlotRequest(){this.log({operation:"adv",param:"slot_request"})}logAdStarted(e){this.log({operation:"adv",param:e})}logAdPaused(){this.log({operation:"adv",param:"pause"})}logAdResumed(){this.log({operation:"adv",param:"resume"})}logAdEnded(){this.log({operation:"adv",param:"ended"})}logAdSkipped(){this.log({operation:"adv",param:"skip"})}logAdClicked(){this.log({operation:"adv",param:"click"})}logInterfaceClick(e){this.log({operation:"player_interface_click",param:e})}logNextMovie(e){this.log({operation:"next_movie",param:String(e)})}subscribe(){this.resubscribeBeforeunload();let e=window.navigator.connection;e&&"onchange"in e&&"effectiveType"in e&&this.subscription.add(ey(Nl(e,"change"),ry(["init"])).subscribe(()=>this.updateContext({network:ul(e.effectiveType)}))),this.config.debugLog&&this.debugLogger.log$.subscribe(t=>{console.debug("%c stat ","background:#fa6470;",`component: ${t.component}.`,t.message)})}resubscribeBeforeunload(){this.beforeunloadSubscription?.unsubscribe(),this.beforeunloadSubscription=Nl(window,"beforeunload").subscribe(()=>this.logger.flush({wantBeacon:!0,clearStorage:this.config.clearStorageAtUnload})),this.subscription.add(this.beforeunloadSubscription)}logPlayerReady(e){this.log({operation:"player_ready",param:String(Math.round(e.duration))})}logActionPlay(e){this.log({operation:"action_play",param:String(Math.round(e.position))})}logActionPlayInteractive(){this.statContext.projectId&&this.log({operation:"action_play_interactive",param:String(this.statContext.movieId)},{vid:this.statContext.projectId})}logFailover(e){this.log({operation:"failover",param:e})}logCloseAtEmptyBuffer(e){this.log({operation:"close_at_empty_buffer",param:String(Math.round(e.duration))})}logActionStop(){this.log({operation:"action_stop"})}logTrackSwitch(e){this.log({operation:"track_switch",param:e.id})}logQuality(e){this.log({operation:"quality",param:e})}log(e,t={}){if(this.disabled){this.oneStatDebugLog({message:`operation ${e.operation} but statistics is disabled`});return}if((0,Hi.default)(this.config.disabledOperations,e.operation)){this.oneStatDebugLog({message:`operation ${e.operation} but it is disabled`});return}this.oneStatDebugLog({message:`operation ${e.operation} ${e.param}`});let i=this.createLogItem(e,t);this.logger.log(i)}createLogItem({operation:e,param:t,time:i},o={}){let a=this.timeSynchronisation?.now()??B(),u=this.vsid$.getValue();Zb(u);let c=this.isid$.getValue(),d=e==="empty_buffer"||e==="close_at_empty_buffer"?this.statContext.connectionType:this.statContext.firstConnectionType,f=this.statContext.firstConnectionReused,p,v;if(this.isEmbed||this.statContext.place==="embed"){p=this.embedParent;let l=[...new URLSearchParams(location.search).entries()].filter(([h,g])=>(0,Hi.default)(this.config.embedUrlParams,h));v=new URLSearchParams(l).toString()}else this.statContext.place==="direct"&&(this.statContext.refDomain?p=kl(this.statContext.refDomain)?.hostname??this.statContext.refDomain:document.referrer&&(p=kl(document.referrer)?.hostname??document.referrer),v=location.href.substring(0,1024));let s={vsid:u,isid:c,vid:this.statContext.movieId,uid:this.zenUid$.getValue(),ct:this.statContext.contentType,place:this.isEmbed?"embed":this.statContext.place,quality:this.statContext.quality,cdn_host:this.statContext.cdnHostname,stat_type:this.statContext.autoplay===!0?"auto":this.statContext.autoplay===!1?"":void 0,param:t,vk_app_id:this.statContext.vkAppId,track_code:this.statContext.trackCode,connection_type:d,connection_reused:f===!0?1:f===!1?0:void 0,cached_data:this.statContext.cached===!0?1:this.statContext.cached===!1?0:void 0,live:this.statContext.liveEdge?1:void 0,muted:this.statContext.audible===!1?1:void 0,mode:this.statContext.mode,subtitles:this.statContext.subtitles,download_speed:this.statContext.downloadSpeed,manual_quality:this.statContext.autoQuality?void 0:1,ref_domain:p,direct_url:v,rate:this.statContext.rate===1||Ll(this.statContext.rate)?void 0:this.statContext.rate.toFixed(2),view_360:this.statContext.is3d?1:void 0,aid:this.statContext.albumId,vk_playlist_id:this.statContext.vkPlaylistId,...o};for(let l of this.config.disabledCustomFields)delete s[l];return{operation:e,type:1,time:i,network:this.statContext.network,timestamp:a,custom:s}}};export{_e as ApiEnv,Pt as ConnectionType,qt as ContentType,Gn as InteractiveInterfaceClick,Qi as OneStat,Et as Quality,Tt as SeekAction,tr as VERSION};
6
+ var Ud=Object.create;var nt=Object.defineProperty;var Bd=Object.getOwnPropertyDescriptor;var Fd=Object.getOwnPropertyNames;var jd=Object.getPrototypeOf,Wd=Object.prototype.hasOwnProperty;var a=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),Hd=(r,e)=>{for(var t in e)nt(r,t,{get:e[t],enumerable:!0})},Kd=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Fd(e))!Wd.call(r,o)&&o!==t&&nt(r,o,{get:()=>e[o],enumerable:!(i=Bd(e,o))||i.enumerable});return r};var P=(r,e,t)=>(t=r!=null?Ud(jd(r)):{},Kd(e||!r||!r.__esModule?nt(t,"default",{value:r,enumerable:!0}):t,r));var I=a((at,wo)=>{"use strict";var qe=function(r){return r&&r.Math===Math&&r};wo.exports=qe(typeof globalThis=="object"&&globalThis)||qe(typeof window=="object"&&window)||qe(typeof self=="object"&&self)||qe(typeof global=="object"&&global)||qe(typeof at=="object"&&at)||function(){return this}()||Function("return this")()});var T=a((CI,Ao)=>{"use strict";Ao.exports=function(r){try{return!!r()}catch{return!0}}});var xe=a((NI,qo)=>{"use strict";var Gd=T();qo.exports=!Gd(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var st=a((LI,No)=>{"use strict";var zd=xe(),Co=Function.prototype,xo=Co.apply,Ro=Co.call;No.exports=typeof Reflect=="object"&&Reflect.apply||(zd?Ro.bind(xo):function(){return Ro.apply(xo,arguments)})});var w=a((kI,Do)=>{"use strict";var Lo=xe(),ko=Function.prototype,ut=ko.call,Qd=Lo&&ko.bind.bind(ut,ut);Do.exports=Lo?Qd:function(r){return function(){return ut.apply(r,arguments)}}});var Re=a((DI,Mo)=>{"use strict";var $o=w(),Yd=$o({}.toString),Jd=$o("".slice);Mo.exports=function(r){return Jd(Yd(r),8,-1)}});var ct=a(($I,Vo)=>{"use strict";var Xd=Re(),Zd=w();Vo.exports=function(r){if(Xd(r)==="Function")return Zd(r)}});var S=a((MI,Uo)=>{"use strict";var lt=typeof document=="object"&&document.all;Uo.exports=typeof lt>"u"&&lt!==void 0?function(r){return typeof r=="function"||r===lt}:function(r){return typeof r=="function"}});var q=a((VI,Bo)=>{"use strict";var ef=T();Bo.exports=!ef(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var N=a((UI,Fo)=>{"use strict";var rf=xe(),nr=Function.prototype.call;Fo.exports=rf?nr.bind(nr):function(){return nr.apply(nr,arguments)}});var dt=a(Ho=>{"use strict";var jo={}.propertyIsEnumerable,Wo=Object.getOwnPropertyDescriptor,tf=Wo&&!jo.call({1:2},1);Ho.f=tf?function(e){var t=Wo(this,e);return!!t&&t.enumerable}:jo});var Ce=a((FI,Ko)=>{"use strict";Ko.exports=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}});var zo=a((jI,Go)=>{"use strict";var of=w(),nf=T(),af=Re(),ft=Object,sf=of("".split);Go.exports=nf(function(){return!ft("z").propertyIsEnumerable(0)})?function(r){return af(r)==="String"?sf(r,""):ft(r)}:ft});var Ne=a((WI,Qo)=>{"use strict";Qo.exports=function(r){return r==null}});var ne=a((HI,Yo)=>{"use strict";var uf=Ne(),cf=TypeError;Yo.exports=function(r){if(uf(r))throw new cf("Can't call method on "+r);return r}});var J=a((KI,Jo)=>{"use strict";var lf=zo(),df=ne();Jo.exports=function(r){return lf(df(r))}});var L=a((GI,Xo)=>{"use strict";var ff=S();Xo.exports=function(r){return typeof r=="object"?r!==null:ff(r)}});var Le=a((zI,Zo)=>{"use strict";Zo.exports={}});var j=a((QI,rn)=>{"use strict";var pt=Le(),ht=I(),pf=S(),en=function(r){return pf(r)?r:void 0};rn.exports=function(r,e){return arguments.length<2?en(pt[r])||en(ht[r]):pt[r]&&pt[r][e]||ht[r]&&ht[r][e]}});var ar=a((YI,tn)=>{"use strict";var hf=w();tn.exports=hf({}.isPrototypeOf)});var X=a((JI,an)=>{"use strict";var vf=I(),on=vf.navigator,nn=on&&on.userAgent;an.exports=nn?String(nn):""});var gt=a((XI,fn)=>{"use strict";var dn=I(),vt=X(),sn=dn.process,un=dn.Deno,cn=sn&&sn.versions||un&&un.version,ln=cn&&cn.v8,k,sr;ln&&(k=ln.split("."),sr=k[0]>0&&k[0]<4?1:+(k[0]+k[1]));!sr&&vt&&(k=vt.match(/Edge\/(\d+)/),(!k||k[1]>=74)&&(k=vt.match(/Chrome\/(\d+)/),k&&(sr=+k[1])));fn.exports=sr});var mt=a((ZI,hn)=>{"use strict";var pn=gt(),gf=T(),mf=I(),bf=mf.String;hn.exports=!!Object.getOwnPropertySymbols&&!gf(function(){var r=Symbol("symbol detection");return!bf(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&pn&&pn<41})});var bt=a((eS,vn)=>{"use strict";var yf=mt();vn.exports=yf&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var yt=a((rS,gn)=>{"use strict";var If=j(),Sf=S(),_f=ar(),Ef=bt(),Pf=Object;gn.exports=Ef?function(r){return typeof r=="symbol"}:function(r){var e=If("Symbol");return Sf(e)&&_f(e.prototype,Pf(r))}});var ke=a((tS,mn)=>{"use strict";var Tf=String;mn.exports=function(r){try{return Tf(r)}catch{return"Object"}}});var W=a((iS,bn)=>{"use strict";var Of=S(),wf=ke(),Af=TypeError;bn.exports=function(r){if(Of(r))return r;throw new Af(wf(r)+" is not a function")}});var ur=a((oS,yn)=>{"use strict";var qf=W(),xf=Ne();yn.exports=function(r,e){var t=r[e];return xf(t)?void 0:qf(t)}});var Sn=a((nS,In)=>{"use strict";var It=N(),St=S(),_t=L(),Rf=TypeError;In.exports=function(r,e){var t,i;if(e==="string"&&St(t=r.toString)&&!_t(i=It(t,r))||St(t=r.valueOf)&&!_t(i=It(t,r))||e!=="string"&&St(t=r.toString)&&!_t(i=It(t,r)))return i;throw new Rf("Can't convert object to primitive value")}});var V=a((aS,_n)=>{"use strict";_n.exports=!0});var Tn=a((sS,Pn)=>{"use strict";var En=I(),Cf=Object.defineProperty;Pn.exports=function(r,e){try{Cf(En,r,{value:e,configurable:!0,writable:!0})}catch{En[r]=e}return e}});var De=a((uS,An)=>{"use strict";var Nf=V(),Lf=I(),kf=Tn(),On="__core-js_shared__",wn=An.exports=Lf[On]||kf(On,{});(wn.versions||(wn.versions=[])).push({version:"3.38.0",mode:Nf?"pure":"global",copyright:"\xA9 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.38.0/LICENSE",source:"https://github.com/zloirock/core-js"})});var Et=a((cS,xn)=>{"use strict";var qn=De();xn.exports=function(r,e){return qn[r]||(qn[r]=e||{})}});var Pt=a((lS,Rn)=>{"use strict";var Df=ne(),$f=Object;Rn.exports=function(r){return $f(Df(r))}});var U=a((dS,Cn)=>{"use strict";var Mf=w(),Vf=Pt(),Uf=Mf({}.hasOwnProperty);Cn.exports=Object.hasOwn||function(e,t){return Uf(Vf(e),t)}});var Tt=a((fS,Nn)=>{"use strict";var Bf=w(),Ff=0,jf=Math.random(),Wf=Bf(1 .toString);Nn.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+Wf(++Ff+jf,36)}});var x=a((pS,kn)=>{"use strict";var Hf=I(),Kf=Et(),Ln=U(),Gf=Tt(),zf=mt(),Qf=bt(),ae=Hf.Symbol,Ot=Kf("wks"),Yf=Qf?ae.for||ae:ae&&ae.withoutSetter||Gf;kn.exports=function(r){return Ln(Ot,r)||(Ot[r]=zf&&Ln(ae,r)?ae[r]:Yf("Symbol."+r)),Ot[r]}});var Vn=a((hS,Mn)=>{"use strict";var Jf=N(),Dn=L(),$n=yt(),Xf=ur(),Zf=Sn(),ep=x(),rp=TypeError,tp=ep("toPrimitive");Mn.exports=function(r,e){if(!Dn(r)||$n(r))return r;var t=Xf(r,tp),i;if(t){if(e===void 0&&(e="default"),i=Jf(t,r,e),!Dn(i)||$n(i))return i;throw new rp("Can't convert object to primitive value")}return e===void 0&&(e="number"),Zf(r,e)}});var wt=a((vS,Un)=>{"use strict";var ip=Vn(),op=yt();Un.exports=function(r){var e=ip(r,"string");return op(e)?e:e+""}});var cr=a((gS,Fn)=>{"use strict";var np=I(),Bn=L(),At=np.document,ap=Bn(At)&&Bn(At.createElement);Fn.exports=function(r){return ap?At.createElement(r):{}}});var qt=a((mS,jn)=>{"use strict";var sp=q(),up=T(),cp=cr();jn.exports=!sp&&!up(function(){return Object.defineProperty(cp("div"),"a",{get:function(){return 7}}).a!==7})});var Kn=a(Hn=>{"use strict";var lp=q(),dp=N(),fp=dt(),pp=Ce(),hp=J(),vp=wt(),gp=U(),mp=qt(),Wn=Object.getOwnPropertyDescriptor;Hn.f=lp?Wn:function(e,t){if(e=hp(e),t=vp(t),mp)try{return Wn(e,t)}catch{}if(gp(e,t))return pp(!dp(fp.f,e,t),e[t])}});var xt=a((yS,Gn)=>{"use strict";var bp=T(),yp=S(),Ip=/#|\.prototype\./,$e=function(r,e){var t=_p[Sp(r)];return t===Pp?!0:t===Ep?!1:yp(e)?bp(e):!!e},Sp=$e.normalize=function(r){return String(r).replace(Ip,".").toLowerCase()},_p=$e.data={},Ep=$e.NATIVE="N",Pp=$e.POLYFILL="P";Gn.exports=$e});var Me=a((IS,Qn)=>{"use strict";var zn=ct(),Tp=W(),Op=xe(),wp=zn(zn.bind);Qn.exports=function(r,e){return Tp(r),e===void 0?r:Op?wp(r,e):function(){return r.apply(e,arguments)}}});var Rt=a((SS,Yn)=>{"use strict";var Ap=q(),qp=T();Yn.exports=Ap&&qp(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var H=a((_S,Jn)=>{"use strict";var xp=L(),Rp=String,Cp=TypeError;Jn.exports=function(r){if(xp(r))return r;throw new Cp(Rp(r)+" is not an object")}});var Z=a(Zn=>{"use strict";var Np=q(),Lp=qt(),kp=Rt(),lr=H(),Xn=wt(),Dp=TypeError,Ct=Object.defineProperty,$p=Object.getOwnPropertyDescriptor,Nt="enumerable",Lt="configurable",kt="writable";Zn.f=Np?kp?function(e,t,i){if(lr(e),t=Xn(t),lr(i),typeof e=="function"&&t==="prototype"&&"value"in i&&kt in i&&!i[kt]){var o=$p(e,t);o&&o[kt]&&(e[t]=i.value,i={configurable:Lt in i?i[Lt]:o[Lt],enumerable:Nt in i?i[Nt]:o[Nt],writable:!1})}return Ct(e,t,i)}:Ct:function(e,t,i){if(lr(e),t=Xn(t),lr(i),Lp)try{return Ct(e,t,i)}catch{}if("get"in i||"set"in i)throw new Dp("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var se=a((PS,ea)=>{"use strict";var Mp=q(),Vp=Z(),Up=Ce();ea.exports=Mp?function(r,e,t){return Vp.f(r,e,Up(1,t))}:function(r,e,t){return r[e]=t,r}});var R=a((TS,ta)=>{"use strict";var Ve=I(),Bp=st(),Fp=ct(),jp=S(),Wp=Kn().f,Hp=xt(),ue=Le(),Kp=Me(),ce=se(),ra=U();De();var Gp=function(r){var e=function(t,i,o){if(this instanceof e){switch(arguments.length){case 0:return new r;case 1:return new r(t);case 2:return new r(t,i)}return new r(t,i,o)}return Bp(r,this,arguments)};return e.prototype=r.prototype,e};ta.exports=function(r,e){var t=r.target,i=r.global,o=r.stat,n=r.proto,s=i?Ve:o?Ve[t]:Ve[t]&&Ve[t].prototype,u=i?ue:ue[t]||ce(ue,t,{})[t],l=u.prototype,d,p,h,c,f,v,g,b,m;for(c in e)d=Hp(i?c:t+(o?".":"#")+c,r.forced),p=!d&&s&&ra(s,c),v=u[c],p&&(r.dontCallGetSet?(m=Wp(s,c),g=m&&m.value):g=s[c]),f=p&&g?g:e[c],!(!d&&!n&&typeof v==typeof f)&&(r.bind&&p?b=Kp(f,Ve):r.wrap&&p?b=Gp(f):n&&jp(f)?b=Fp(f):b=f,(r.sham||f&&f.sham||v&&v.sham)&&ce(b,"sham",!0),ce(u,c,b),n&&(h=t+"Prototype",ra(ue,h)||ce(ue,h,{}),ce(ue[h],c,f),r.real&&l&&(d||!l[c])&&ce(l,c,f)))}});var oa=a((OS,ia)=>{"use strict";var zp=Math.ceil,Qp=Math.floor;ia.exports=Math.trunc||function(e){var t=+e;return(t>0?Qp:zp)(t)}});var dr=a((wS,na)=>{"use strict";var Yp=oa();na.exports=function(r){var e=+r;return e!==e||e===0?0:Yp(e)}});var sa=a((AS,aa)=>{"use strict";var Jp=dr(),Xp=Math.max,Zp=Math.min;aa.exports=function(r,e){var t=Jp(r);return t<0?Xp(t+e,0):Zp(t,e)}});var Dt=a((qS,ua)=>{"use strict";var eh=dr(),rh=Math.min;ua.exports=function(r){var e=eh(r);return e>0?rh(e,9007199254740991):0}});var $t=a((xS,ca)=>{"use strict";var th=Dt();ca.exports=function(r){return th(r.length)}});var Mt=a((RS,da)=>{"use strict";var ih=J(),oh=sa(),nh=$t(),la=function(r){return function(e,t,i){var o=ih(e),n=nh(o);if(n===0)return!r&&-1;var s=oh(i,n),u;if(r&&t!==t){for(;n>s;)if(u=o[s++],u!==u)return!0}else for(;n>s;s++)if((r||s in o)&&o[s]===t)return r||s||0;return!r&&-1}};da.exports={includes:la(!0),indexOf:la(!1)}});var Vt=a((CS,fa)=>{"use strict";fa.exports=function(){}});var pa=a(()=>{"use strict";var ah=R(),sh=Mt().includes,uh=T(),ch=Vt(),lh=uh(function(){return!Array(1).includes()});ah({target:"Array",proto:!0,forced:lh},{includes:function(e){return sh(this,e,arguments.length>1?arguments[1]:void 0)}});ch("includes")});var fr=a((kS,ha)=>{"use strict";var dh=j();ha.exports=dh});var ga=a((DS,va)=>{"use strict";pa();var fh=fr();va.exports=fh("Array","includes")});var ba=a(($S,ma)=>{"use strict";var ph=ga();ma.exports=ph});var le=a((MS,ya)=>{"use strict";var hh=ba();ya.exports=hh});var wa=a(()=>{"use strict"});var Kt=a((JS,Aa)=>{"use strict";var Be=I(),mh=X(),bh=Re(),hr=function(r){return mh.slice(0,r.length)===r};Aa.exports=function(){return hr("Bun/")?"BUN":hr("Cloudflare-Workers")?"CLOUDFLARE":hr("Deno/")?"DENO":hr("Node.js/")?"NODE":Be.Bun&&typeof Bun.version=="string"?"BUN":Be.Deno&&typeof Deno.version=="object"?"DENO":bh(Be.process)==="process"?"NODE":Be.window&&Be.document?"BROWSER":"REST"}()});var vr=a((XS,qa)=>{"use strict";var yh=Kt();qa.exports=yh==="NODE"});var de=a((ZS,xa)=>{"use strict";var Ih=se();xa.exports=function(r,e,t,i){return i&&i.enumerable?r[e]=t:Ih(r,e,t),r}});var Ca=a((e_,Ra)=>{"use strict";var Sh=w(),_h=W();Ra.exports=function(r,e,t){try{return Sh(_h(Object.getOwnPropertyDescriptor(r,e)[t]))}catch{}}});var La=a((r_,Na)=>{"use strict";var Eh=L();Na.exports=function(r){return Eh(r)||r===null}});var Da=a((t_,ka)=>{"use strict";var Ph=La(),Th=String,Oh=TypeError;ka.exports=function(r){if(Ph(r))return r;throw new Oh("Can't set "+Th(r)+" as a prototype")}});var Gt=a((i_,$a)=>{"use strict";var wh=Ca(),Ah=L(),qh=ne(),xh=Da();$a.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r=!1,e={},t;try{t=wh(Object.prototype,"__proto__","set"),t(e,[]),r=e instanceof Array}catch{}return function(o,n){return qh(o),xh(n),Ah(o)&&(r?t(o,n):o.__proto__=n),o}}():void 0)});var gr=a((o_,Va)=>{"use strict";var Rh=x(),Ch=Rh("toStringTag"),Ma={};Ma[Ch]="z";Va.exports=String(Ma)==="[object z]"});var Fe=a((n_,Ua)=>{"use strict";var Nh=gr(),Lh=S(),mr=Re(),kh=x(),Dh=kh("toStringTag"),$h=Object,Mh=mr(function(){return arguments}())==="Arguments",Vh=function(r,e){try{return r[e]}catch{}};Ua.exports=Nh?mr:function(r){var e,t,i;return r===void 0?"Undefined":r===null?"Null":typeof(t=Vh(e=$h(r),Dh))=="string"?t:Mh?mr(e):(i=mr(e))==="Object"&&Lh(e.callee)?"Arguments":i}});var Fa=a((a_,Ba)=>{"use strict";var Uh=gr(),Bh=Fe();Ba.exports=Uh?{}.toString:function(){return"[object "+Bh(this)+"]"}});var je=a((s_,Wa)=>{"use strict";var Fh=gr(),jh=Z().f,Wh=se(),Hh=U(),Kh=Fa(),Gh=x(),ja=Gh("toStringTag");Wa.exports=function(r,e,t,i){var o=t?r:r&&r.prototype;o&&(Hh(o,ja)||jh(o,ja,{configurable:!0,value:e}),i&&!Fh&&Wh(o,"toString",Kh))}});var Ka=a((u_,Ha)=>{"use strict";var zh=Z();Ha.exports=function(r,e,t){return zh.f(r,e,t)}});var Qa=a((c_,za)=>{"use strict";var Qh=j(),Yh=Ka(),Jh=x(),Xh=q(),Ga=Jh("species");za.exports=function(r){var e=Qh(r);Xh&&e&&!e[Ga]&&Yh(e,Ga,{configurable:!0,get:function(){return this}})}});var Ja=a((l_,Ya)=>{"use strict";var Zh=ar(),ev=TypeError;Ya.exports=function(r,e){if(Zh(e,r))return r;throw new ev("Incorrect invocation")}});var Qt=a((d_,Xa)=>{"use strict";var rv=w(),tv=S(),zt=De(),iv=rv(Function.toString);tv(zt.inspectSource)||(zt.inspectSource=function(r){return iv(r)});Xa.exports=zt.inspectSource});var os=a((f_,is)=>{"use strict";var ov=w(),nv=T(),Za=S(),av=Fe(),sv=j(),uv=Qt(),es=function(){},rs=sv("Reflect","construct"),Yt=/^\s*(?:class|function)\b/,cv=ov(Yt.exec),lv=!Yt.test(es),We=function(e){if(!Za(e))return!1;try{return rs(es,[],e),!0}catch{return!1}},ts=function(e){if(!Za(e))return!1;switch(av(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return lv||!!cv(Yt,uv(e))}catch{return!0}};ts.sham=!0;is.exports=!rs||nv(function(){var r;return We(We.call)||!We(Object)||!We(function(){r=!0})||r})?ts:We});var as=a((p_,ns)=>{"use strict";var dv=os(),fv=ke(),pv=TypeError;ns.exports=function(r){if(dv(r))return r;throw new pv(fv(r)+" is not a constructor")}});var Jt=a((h_,us)=>{"use strict";var ss=H(),hv=as(),vv=Ne(),gv=x(),mv=gv("species");us.exports=function(r,e){var t=ss(r).constructor,i;return t===void 0||vv(i=ss(t)[mv])?e:hv(i)}});var Xt=a((v_,cs)=>{"use strict";var bv=j();cs.exports=bv("document","documentElement")});var ds=a((g_,ls)=>{"use strict";var yv=w();ls.exports=yv([].slice)});var ps=a((m_,fs)=>{"use strict";var Iv=TypeError;fs.exports=function(r,e){if(r<e)throw new Iv("Not enough arguments");return r}});var Zt=a((b_,hs)=>{"use strict";var Sv=X();hs.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(Sv)});var ui=a((y_,Es)=>{"use strict";var C=I(),_v=st(),Ev=Me(),vs=S(),Pv=U(),_s=T(),gs=Xt(),Tv=ds(),ms=cr(),Ov=ps(),wv=Zt(),Av=vr(),ni=C.setImmediate,ai=C.clearImmediate,qv=C.process,ei=C.Dispatch,xv=C.Function,bs=C.MessageChannel,Rv=C.String,ri=0,He={},ys="onreadystatechange",Ke,ee,ti,ii;_s(function(){Ke=C.location});var si=function(r){if(Pv(He,r)){var e=He[r];delete He[r],e()}},oi=function(r){return function(){si(r)}},Is=function(r){si(r.data)},Ss=function(r){C.postMessage(Rv(r),Ke.protocol+"//"+Ke.host)};(!ni||!ai)&&(ni=function(e){Ov(arguments.length,1);var t=vs(e)?e:xv(e),i=Tv(arguments,1);return He[++ri]=function(){_v(t,void 0,i)},ee(ri),ri},ai=function(e){delete He[e]},Av?ee=function(r){qv.nextTick(oi(r))}:ei&&ei.now?ee=function(r){ei.now(oi(r))}:bs&&!wv?(ti=new bs,ii=ti.port2,ti.port1.onmessage=Is,ee=Ev(ii.postMessage,ii)):C.addEventListener&&vs(C.postMessage)&&!C.importScripts&&Ke&&Ke.protocol!=="file:"&&!_s(Ss)?(ee=Ss,C.addEventListener("message",Is,!1)):ys in ms("script")?ee=function(r){gs.appendChild(ms("script"))[ys]=function(){gs.removeChild(this),si(r)}}:ee=function(r){setTimeout(oi(r),0)});Es.exports={set:ni,clear:ai}});var Os=a((I_,Ts)=>{"use strict";var Ps=I(),Cv=q(),Nv=Object.getOwnPropertyDescriptor;Ts.exports=function(r){if(!Cv)return Ps[r];var e=Nv(Ps,r);return e&&e.value}});var ci=a((S_,As)=>{"use strict";var ws=function(){this.head=null,this.tail=null};ws.prototype={add:function(r){var e={item:r,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var r=this.head;if(r){var e=this.head=r.next;return e===null&&(this.tail=null),r.item}}};As.exports=ws});var xs=a((__,qs)=>{"use strict";var Lv=X();qs.exports=/ipad|iphone|ipod/i.test(Lv)&&typeof Pebble<"u"});var Cs=a((E_,Rs)=>{"use strict";var kv=X();Rs.exports=/web0s(?!.*chrome)/i.test(kv)});var Vs=a((P_,Ms)=>{"use strict";var pe=I(),Dv=Os(),Ns=Me(),li=ui().set,$v=ci(),Mv=Zt(),Vv=xs(),Uv=Cs(),di=vr(),Ls=pe.MutationObserver||pe.WebKitMutationObserver,ks=pe.document,Ds=pe.process,br=pe.Promise,hi=Dv("queueMicrotask"),fe,fi,pi,yr,$s;hi||(Ge=new $v,ze=function(){var r,e;for(di&&(r=Ds.domain)&&r.exit();e=Ge.get();)try{e()}catch(t){throw Ge.head&&fe(),t}r&&r.enter()},!Mv&&!di&&!Uv&&Ls&&ks?(fi=!0,pi=ks.createTextNode(""),new Ls(ze).observe(pi,{characterData:!0}),fe=function(){pi.data=fi=!fi}):!Vv&&br&&br.resolve?(yr=br.resolve(void 0),yr.constructor=br,$s=Ns(yr.then,yr),fe=function(){$s(ze)}):di?fe=function(){Ds.nextTick(ze)}:(li=Ns(li,pe),fe=function(){li(ze)}),hi=function(r){Ge.head||fe(),Ge.add(r)});var Ge,ze;Ms.exports=hi});var Bs=a((T_,Us)=>{"use strict";Us.exports=function(r,e){try{arguments.length===1?console.error(r):console.error(r,e)}catch{}}});var Ir=a((O_,Fs)=>{"use strict";Fs.exports=function(r){try{return{error:!1,value:r()}}catch(e){return{error:!0,value:e}}}});var Hs=a((w_,Ws)=>{"use strict";var Bv=I(),Fv=S(),js=Bv.WeakMap;Ws.exports=Fv(js)&&/native code/.test(String(js))});var Sr=a((A_,Gs)=>{"use strict";var jv=Et(),Wv=Tt(),Ks=jv("keys");Gs.exports=function(r){return Ks[r]||(Ks[r]=Wv(r))}});var _r=a((q_,zs)=>{"use strict";zs.exports={}});var bi=a((x_,Js)=>{"use strict";var Hv=Hs(),Ys=I(),Kv=L(),Gv=se(),vi=U(),gi=De(),zv=Sr(),Qv=_r(),Qs="Object already initialized",mi=Ys.TypeError,Yv=Ys.WeakMap,Er,Qe,Pr,Jv=function(r){return Pr(r)?Qe(r):Er(r,{})},Xv=function(r){return function(e){var t;if(!Kv(e)||(t=Qe(e)).type!==r)throw new mi("Incompatible receiver, "+r+" required");return t}};Hv||gi.state?(D=gi.state||(gi.state=new Yv),D.get=D.get,D.has=D.has,D.set=D.set,Er=function(r,e){if(D.has(r))throw new mi(Qs);return e.facade=r,D.set(r,e),e},Qe=function(r){return D.get(r)||{}},Pr=function(r){return D.has(r)}):(re=zv("state"),Qv[re]=!0,Er=function(r,e){if(vi(r,re))throw new mi(Qs);return e.facade=r,Gv(r,re,e),e},Qe=function(r){return vi(r,re)?r[re]:{}},Pr=function(r){return vi(r,re)});var D,re;Js.exports={set:Er,get:Qe,has:Pr,enforce:Jv,getterFor:Xv}});var te=a((R_,Xs)=>{"use strict";var Zv=I();Xs.exports=Zv.Promise});var he=a((C_,tu)=>{"use strict";var eg=I(),Ye=te(),rg=S(),tg=xt(),ig=Qt(),og=x(),Zs=Kt(),ng=V(),yi=gt(),eu=Ye&&Ye.prototype,ag=og("species"),Ii=!1,ru=rg(eg.PromiseRejectionEvent),sg=tg("Promise",function(){var r=ig(Ye),e=r!==String(Ye);if(!e&&yi===66||ng&&!(eu.catch&&eu.finally))return!0;if(!yi||yi<51||!/native code/.test(r)){var t=new Ye(function(n){n(1)}),i=function(n){n(function(){},function(){})},o=t.constructor={};if(o[ag]=i,Ii=t.then(function(){})instanceof i,!Ii)return!0}return!e&&(Zs==="BROWSER"||Zs==="DENO")&&!ru});tu.exports={CONSTRUCTOR:sg,REJECTION_EVENT:ru,SUBCLASSING:Ii}});var ve=a((N_,ou)=>{"use strict";var iu=W(),ug=TypeError,cg=function(r){var e,t;this.promise=new r(function(i,o){if(e!==void 0||t!==void 0)throw new ug("Bad Promise constructor");e=i,t=o}),this.resolve=iu(e),this.reject=iu(t)};ou.exports.f=function(r){return new cg(r)}});var Eu=a(()=>{"use strict";var lg=R(),dg=V(),Ar=vr(),z=I(),ye=N(),nu=de(),au=Gt(),fg=je(),pg=Qa(),hg=W(),wr=S(),vg=L(),gg=Ja(),mg=Jt(),du=ui().set,Ti=Vs(),bg=Bs(),yg=Ir(),Ig=ci(),fu=bi(),qr=te(),Oi=he(),pu=ve(),xr="Promise",hu=Oi.CONSTRUCTOR,Sg=Oi.REJECTION_EVENT,_g=Oi.SUBCLASSING,Si=fu.getterFor(xr),Eg=fu.set,ge=qr&&qr.prototype,ie=qr,Tr=ge,vu=z.TypeError,_i=z.document,wi=z.process,Ei=pu.f,Pg=Ei,Tg=!!(_i&&_i.createEvent&&z.dispatchEvent),gu="unhandledrejection",Og="rejectionhandled",su=0,mu=1,wg=2,Ai=1,bu=2,Or,uu,Ag,cu,yu=function(r){var e;return vg(r)&&wr(e=r.then)?e:!1},Iu=function(r,e){var t=e.value,i=e.state===mu,o=i?r.ok:r.fail,n=r.resolve,s=r.reject,u=r.domain,l,d,p;try{o?(i||(e.rejection===bu&&xg(e),e.rejection=Ai),o===!0?l=t:(u&&u.enter(),l=o(t),u&&(u.exit(),p=!0)),l===r.promise?s(new vu("Promise-chain cycle")):(d=yu(l))?ye(d,l,n,s):n(l)):s(t)}catch(h){u&&!p&&u.exit(),s(h)}},Su=function(r,e){r.notified||(r.notified=!0,Ti(function(){for(var t=r.reactions,i;i=t.get();)Iu(i,r);r.notified=!1,e&&!r.rejection&&qg(r)}))},_u=function(r,e,t){var i,o;Tg?(i=_i.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(r,!1,!0),z.dispatchEvent(i)):i={promise:e,reason:t},!Sg&&(o=z["on"+r])?o(i):r===gu&&bg("Unhandled promise rejection",t)},qg=function(r){ye(du,z,function(){var e=r.facade,t=r.value,i=lu(r),o;if(i&&(o=yg(function(){Ar?wi.emit("unhandledRejection",t,e):_u(gu,e,t)}),r.rejection=Ar||lu(r)?bu:Ai,o.error))throw o.value})},lu=function(r){return r.rejection!==Ai&&!r.parent},xg=function(r){ye(du,z,function(){var e=r.facade;Ar?wi.emit("rejectionHandled",e):_u(Og,e,r.value)})},me=function(r,e,t){return function(i){r(e,i,t)}},be=function(r,e,t){r.done||(r.done=!0,t&&(r=t),r.value=e,r.state=wg,Su(r,!0))},Pi=function(r,e,t){if(!r.done){r.done=!0,t&&(r=t);try{if(r.facade===e)throw new vu("Promise can't be resolved itself");var i=yu(e);i?Ti(function(){var o={done:!1};try{ye(i,e,me(Pi,o,r),me(be,o,r))}catch(n){be(o,n,r)}}):(r.value=e,r.state=mu,Su(r,!1))}catch(o){be({done:!1},o,r)}}};if(hu&&(ie=function(e){gg(this,Tr),hg(e),ye(Or,this);var t=Si(this);try{e(me(Pi,t),me(be,t))}catch(i){be(t,i)}},Tr=ie.prototype,Or=function(e){Eg(this,{type:xr,done:!1,notified:!1,parent:!1,reactions:new Ig,rejection:!1,state:su,value:void 0})},Or.prototype=nu(Tr,"then",function(e,t){var i=Si(this),o=Ei(mg(this,ie));return i.parent=!0,o.ok=wr(e)?e:!0,o.fail=wr(t)&&t,o.domain=Ar?wi.domain:void 0,i.state===su?i.reactions.add(o):Ti(function(){Iu(o,i)}),o.promise}),uu=function(){var r=new Or,e=Si(r);this.promise=r,this.resolve=me(Pi,e),this.reject=me(be,e)},pu.f=Ei=function(r){return r===ie||r===Ag?new uu(r):Pg(r)},!dg&&wr(qr)&&ge!==Object.prototype)){cu=ge.then,_g||nu(ge,"then",function(e,t){var i=this;return new ie(function(o,n){ye(cu,i,o,n)}).then(e,t)},{unsafe:!0});try{delete ge.constructor}catch{}au&&au(ge,Tr)}lg({global:!0,constructor:!0,wrap:!0,forced:hu},{Promise:ie});fg(ie,xr,!1,!0);pg(xr)});var oe=a((D_,Pu)=>{"use strict";Pu.exports={}});var Ou=a(($_,Tu)=>{"use strict";var Rg=x(),Cg=oe(),Ng=Rg("iterator"),Lg=Array.prototype;Tu.exports=function(r){return r!==void 0&&(Cg.Array===r||Lg[Ng]===r)}});var qi=a((M_,Au)=>{"use strict";var kg=Fe(),wu=ur(),Dg=Ne(),$g=oe(),Mg=x(),Vg=Mg("iterator");Au.exports=function(r){if(!Dg(r))return wu(r,Vg)||wu(r,"@@iterator")||$g[kg(r)]}});var xu=a((V_,qu)=>{"use strict";var Ug=N(),Bg=W(),Fg=H(),jg=ke(),Wg=qi(),Hg=TypeError;qu.exports=function(r,e){var t=arguments.length<2?Wg(r):e;if(Bg(t))return Fg(Ug(t,r));throw new Hg(jg(r)+" is not iterable")}});var Nu=a((U_,Cu)=>{"use strict";var Kg=N(),Ru=H(),Gg=ur();Cu.exports=function(r,e,t){var i,o;Ru(r);try{if(i=Gg(r,"return"),!i){if(e==="throw")throw t;return t}i=Kg(i,r)}catch(n){o=!0,i=n}if(e==="throw")throw t;if(o)throw i;return Ru(i),t}});var Cr=a((B_,$u)=>{"use strict";var zg=Me(),Qg=N(),Yg=H(),Jg=ke(),Xg=Ou(),Zg=$t(),Lu=ar(),em=xu(),rm=qi(),ku=Nu(),tm=TypeError,Rr=function(r,e){this.stopped=r,this.result=e},Du=Rr.prototype;$u.exports=function(r,e,t){var i=t&&t.that,o=!!(t&&t.AS_ENTRIES),n=!!(t&&t.IS_RECORD),s=!!(t&&t.IS_ITERATOR),u=!!(t&&t.INTERRUPTED),l=zg(e,i),d,p,h,c,f,v,g,b=function(y){return d&&ku(d,"normal",y),new Rr(!0,y)},m=function(y){return o?(Yg(y),u?l(y[0],y[1],b):l(y[0],y[1])):u?l(y,b):l(y)};if(n)d=r.iterator;else if(s)d=r;else{if(p=rm(r),!p)throw new tm(Jg(r)+" is not iterable");if(Xg(p)){for(h=0,c=Zg(r);c>h;h++)if(f=m(r[h]),f&&Lu(Du,f))return f;return new Rr(!1)}d=em(r,p)}for(v=n?r.next:d.next;!(g=Qg(v,d)).done;){try{f=m(g.value)}catch(y){ku(d,"throw",y)}if(typeof f=="object"&&f&&Lu(Du,f))return f}return new Rr(!1)}});var Fu=a((F_,Bu)=>{"use strict";var im=x(),Vu=im("iterator"),Uu=!1;try{Mu=0,xi={next:function(){return{done:!!Mu++}},return:function(){Uu=!0}},xi[Vu]=function(){return this},Array.from(xi,function(){throw 2})}catch{}var Mu,xi;Bu.exports=function(r,e){try{if(!e&&!Uu)return!1}catch{return!1}var t=!1;try{var i={};i[Vu]=function(){return{next:function(){return{done:t=!0}}}},r(i)}catch{}return t}});var Ri=a((j_,ju)=>{"use strict";var om=te(),nm=Fu(),am=he().CONSTRUCTOR;ju.exports=am||!nm(function(r){om.all(r).then(void 0,function(){})})});var Wu=a(()=>{"use strict";var sm=R(),um=N(),cm=W(),lm=ve(),dm=Ir(),fm=Cr(),pm=Ri();sm({target:"Promise",stat:!0,forced:pm},{all:function(e){var t=this,i=lm.f(t),o=i.resolve,n=i.reject,s=dm(function(){var u=cm(t.resolve),l=[],d=0,p=1;fm(e,function(h){var c=d++,f=!1;p++,um(u,t,h).then(function(v){f||(f=!0,l[c]=v,--p||o(l))},n)}),--p||o(l)});return s.error&&n(s.value),i.promise}})});var Ku=a(()=>{"use strict";var hm=R(),vm=V(),gm=he().CONSTRUCTOR,Ni=te(),mm=j(),bm=S(),ym=de(),Hu=Ni&&Ni.prototype;hm({target:"Promise",proto:!0,forced:gm,real:!0},{catch:function(r){return this.then(void 0,r)}});!vm&&bm(Ni)&&(Ci=mm("Promise").prototype.catch,Hu.catch!==Ci&&ym(Hu,"catch",Ci,{unsafe:!0}));var Ci});var Gu=a(()=>{"use strict";var Im=R(),Sm=N(),_m=W(),Em=ve(),Pm=Ir(),Tm=Cr(),Om=Ri();Im({target:"Promise",stat:!0,forced:Om},{race:function(e){var t=this,i=Em.f(t),o=i.reject,n=Pm(function(){var s=_m(t.resolve);Tm(e,function(u){Sm(s,t,u).then(i.resolve,o)})});return n.error&&o(n.value),i.promise}})});var zu=a(()=>{"use strict";var wm=R(),Am=ve(),qm=he().CONSTRUCTOR;wm({target:"Promise",stat:!0,forced:qm},{reject:function(e){var t=Am.f(this),i=t.reject;return i(e),t.promise}})});var Li=a((X_,Qu)=>{"use strict";var xm=H(),Rm=L(),Cm=ve();Qu.exports=function(r,e){if(xm(r),Rm(e)&&e.constructor===r)return e;var t=Cm.f(r),i=t.resolve;return i(e),t.promise}});var Xu=a(()=>{"use strict";var Nm=R(),Lm=j(),Yu=V(),km=te(),Ju=he().CONSTRUCTOR,Dm=Li(),$m=Lm("Promise"),Mm=Yu&&!Ju;Nm({target:"Promise",stat:!0,forced:Yu||Ju},{resolve:function(e){return Dm(Mm&&this===$m?km:this,e)}})});var Zu=a(()=>{"use strict";Eu();Wu();Ku();Gu();zu();Xu()});var ic=a(()=>{"use strict";var Vm=R(),Um=V(),Nr=te(),Bm=T(),rc=j(),tc=S(),Fm=Jt(),ec=Li(),jm=de(),Di=Nr&&Nr.prototype,Wm=!!Nr&&Bm(function(){Di.finally.call({then:function(){}},function(){})});Vm({target:"Promise",proto:!0,real:!0,forced:Wm},{finally:function(r){var e=Fm(this,rc("Promise")),t=tc(r);return this.then(t?function(i){return ec(e,r()).then(function(){return i})}:r,t?function(i){return ec(e,r()).then(function(){throw i})}:r)}});!Um&&tc(Nr)&&(ki=rc("Promise").prototype.finally,Di.finally!==ki&&jm(Di,"finally",ki,{unsafe:!0}));var ki});var nc=a((nE,oc)=>{"use strict";wa();Zu();ic();var Hm=fr();oc.exports=Hm("Promise","finally")});var sc=a((aE,ac)=>{"use strict";var Km=nc();ac.exports=Km});var $i=a((sE,uc)=>{"use strict";var Gm=sc();uc.exports=Gm});var lc=a((uE,cc)=>{"use strict";var zm=T();cc.exports=!zm(function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype})});var Lr=a((cE,fc)=>{"use strict";var Qm=U(),Ym=S(),Jm=Pt(),Xm=Sr(),Zm=lc(),dc=Xm("IE_PROTO"),Mi=Object,eb=Mi.prototype;fc.exports=Zm?Mi.getPrototypeOf:function(r){var e=Jm(r);if(Qm(e,dc))return e[dc];var t=e.constructor;return Ym(t)&&e instanceof t?t.prototype:e instanceof Mi?eb:null}});var vc=a((lE,hc)=>{"use strict";var rb=w(),Vi=U(),tb=J(),ib=Mt().indexOf,ob=_r(),pc=rb([].push);hc.exports=function(r,e){var t=tb(r),i=0,o=[],n;for(n in t)!Vi(ob,n)&&Vi(t,n)&&pc(o,n);for(;e.length>i;)Vi(t,n=e[i++])&&(~ib(o,n)||pc(o,n));return o}});var Ui=a((dE,gc)=>{"use strict";gc.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var Bi=a((fE,mc)=>{"use strict";var nb=vc(),ab=Ui();mc.exports=Object.keys||function(e){return nb(e,ab)}});var Ec=a((pE,_c)=>{"use strict";var yc=q(),sb=T(),Ic=w(),ub=Lr(),cb=Bi(),lb=J(),db=dt().f,Sc=Ic(db),fb=Ic([].push),pb=yc&&sb(function(){var r=Object.create(null);return r[2]=2,!Sc(r,2)}),bc=function(r){return function(e){for(var t=lb(e),i=cb(t),o=pb&&ub(t)===null,n=i.length,s=0,u=[],l;n>s;)l=i[s++],(!yc||(o?l in t:Sc(t,l)))&&fb(u,r?[l,t[l]]:t[l]);return u}};_c.exports={entries:bc(!0),values:bc(!1)}});var Pc=a(()=>{"use strict";var hb=R(),vb=Ec().entries;hb({target:"Object",stat:!0},{entries:function(e){return vb(e)}})});var Oc=a((gE,Tc)=>{"use strict";Pc();var gb=Le();Tc.exports=gb.Object.entries});var Ac=a((mE,wc)=>{"use strict";var mb=Oc();wc.exports=mb});var Ie=a((bE,qc)=>{"use strict";var bb=Ac();qc.exports=bb});var Cc=a((yE,Rc)=>{"use strict";var Fi=q(),yb=U(),xc=Function.prototype,Ib=Fi&&Object.getOwnPropertyDescriptor,ji=yb(xc,"name"),Sb=ji&&function(){}.name==="something",_b=ji&&(!Fi||Fi&&Ib(xc,"name").configurable);Rc.exports={EXISTS:ji,PROPER:Sb,CONFIGURABLE:_b}});var Lc=a(Nc=>{"use strict";var Eb=q(),Pb=Rt(),Tb=Z(),Ob=H(),wb=J(),Ab=Bi();Nc.f=Eb&&!Pb?Object.defineProperties:function(e,t){Ob(e);for(var i=wb(t),o=Ab(t),n=o.length,s=0,u;n>s;)Tb.f(e,u=o[s++],i[u]);return e}});var Gi=a((SE,Bc)=>{"use strict";var qb=H(),xb=Lc(),kc=Ui(),Rb=_r(),Cb=Xt(),Nb=cr(),Lb=Sr(),Dc=">",$c="<",Hi="prototype",Ki="script",Vc=Lb("IE_PROTO"),Wi=function(){},Uc=function(r){return $c+Ki+Dc+r+$c+"/"+Ki+Dc},Mc=function(r){r.write(Uc("")),r.close();var e=r.parentWindow.Object;return r=null,e},kb=function(){var r=Nb("iframe"),e="java"+Ki+":",t;return r.style.display="none",Cb.appendChild(r),r.src=String(e),t=r.contentWindow.document,t.open(),t.write(Uc("document.F=Object")),t.close(),t.F},kr,Dr=function(){try{kr=new ActiveXObject("htmlfile")}catch{}Dr=typeof document<"u"?document.domain&&kr?Mc(kr):kb():Mc(kr);for(var r=kc.length;r--;)delete Dr[Hi][kc[r]];return Dr()};Rb[Vc]=!0;Bc.exports=Object.create||function(e,t){var i;return e!==null?(Wi[Hi]=qb(e),i=new Wi,Wi[Hi]=null,i[Vc]=e):i=Dr(),t===void 0?i:xb.f(i,t)}});var Ji=a((_E,Wc)=>{"use strict";var Db=T(),$b=S(),Mb=L(),Vb=Gi(),Fc=Lr(),Ub=de(),Bb=x(),Fb=V(),Yi=Bb("iterator"),jc=!1,K,zi,Qi;[].keys&&(Qi=[].keys(),"next"in Qi?(zi=Fc(Fc(Qi)),zi!==Object.prototype&&(K=zi)):jc=!0);var jb=!Mb(K)||Db(function(){var r={};return K[Yi].call(r)!==r});jb?K={}:Fb&&(K=Vb(K));$b(K[Yi])||Ub(K,Yi,function(){return this});Wc.exports={IteratorPrototype:K,BUGGY_SAFARI_ITERATORS:jc}});var Kc=a((EE,Hc)=>{"use strict";var Wb=Ji().IteratorPrototype,Hb=Gi(),Kb=Ce(),Gb=je(),zb=oe(),Qb=function(){return this};Hc.exports=function(r,e,t,i){var o=e+" Iterator";return r.prototype=Hb(Wb,{next:Kb(+!i,t)}),Gb(r,o,!1,!0),zb[o]=Qb,r}});var il=a((PE,tl)=>{"use strict";var Yb=R(),Jb=N(),$r=V(),el=Cc(),Xb=S(),Zb=Kc(),Gc=Lr(),zc=Gt(),ey=je(),ry=se(),Xi=de(),ty=x(),Qc=oe(),rl=Ji(),iy=el.PROPER,oy=el.CONFIGURABLE,Yc=rl.IteratorPrototype,Mr=rl.BUGGY_SAFARI_ITERATORS,Je=ty("iterator"),Jc="keys",Xe="values",Xc="entries",Zc=function(){return this};tl.exports=function(r,e,t,i,o,n,s){Zb(t,e,i);var u=function(m){if(m===o&&c)return c;if(!Mr&&m&&m in p)return p[m];switch(m){case Jc:return function(){return new t(this,m)};case Xe:return function(){return new t(this,m)};case Xc:return function(){return new t(this,m)}}return function(){return new t(this)}},l=e+" Iterator",d=!1,p=r.prototype,h=p[Je]||p["@@iterator"]||o&&p[o],c=!Mr&&h||u(o),f=e==="Array"&&p.entries||h,v,g,b;if(f&&(v=Gc(f.call(new r)),v!==Object.prototype&&v.next&&(!$r&&Gc(v)!==Yc&&(zc?zc(v,Yc):Xb(v[Je])||Xi(v,Je,Zc)),ey(v,l,!0,!0),$r&&(Qc[l]=Zc))),iy&&o===Xe&&h&&h.name!==Xe&&(!$r&&oy?ry(p,"name",Xe):(d=!0,c=function(){return Jb(h,this)})),o)if(g={values:u(Xe),keys:n?c:u(Jc),entries:u(Xc)},s)for(b in g)(Mr||d||!(b in p))&&Xi(p,b,g[b]);else Yb({target:e,proto:!0,forced:Mr||d},g);return(!$r||s)&&p[Je]!==c&&Xi(p,Je,c,{name:o}),Qc[e]=c,g}});var nl=a((TE,ol)=>{"use strict";ol.exports=function(r,e){return{value:r,done:e}}});var eo=a((OE,ll)=>{"use strict";var ny=J(),Zi=Vt(),al=oe(),ul=bi(),ay=Z().f,sy=il(),Vr=nl(),uy=V(),cy=q(),cl="Array Iterator",ly=ul.set,dy=ul.getterFor(cl);ll.exports=sy(Array,"Array",function(r,e){ly(this,{type:cl,target:ny(r),index:0,kind:e})},function(){var r=dy(this),e=r.target,t=r.index++;if(!e||t>=e.length)return r.target=void 0,Vr(void 0,!0);switch(r.kind){case"keys":return Vr(t,!1);case"values":return Vr(e[t],!1)}return Vr([t,e[t]],!1)},"values");var sl=al.Arguments=al.Array;Zi("keys");Zi("values");Zi("entries");if(!uy&&cy&&sl.name!=="values")try{ay(sl,"name",{value:"values"})}catch{}});var fl=a((wE,dl)=>{"use strict";var fy=q(),py=Z(),hy=Ce();dl.exports=function(r,e,t){fy?py.f(r,e,hy(0,t)):r[e]=t}});var pl=a(()=>{"use strict";var vy=R(),gy=Cr(),my=fl();vy({target:"Object",stat:!0},{fromEntries:function(e){var t={};return gy(e,function(i,o){my(t,i,o)},{AS_ENTRIES:!0}),t}})});var vl=a((xE,hl)=>{"use strict";eo();pl();var by=Le();hl.exports=by.Object.fromEntries});var ml=a((RE,gl)=>{"use strict";gl.exports={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}});var yl=a(()=>{"use strict";eo();var yy=ml(),Iy=I(),Sy=je(),bl=oe();for(Ur in yy)Sy(Iy[Ur],Ur),bl[Ur]=bl.Array;var Ur});var Sl=a((LE,Il)=>{"use strict";var _y=vl();yl();Il.exports=_y});var El=a((kE,_l)=>{"use strict";var Ey=Sl();_l.exports=Ey});var ao=a((TP,$l)=>{"use strict";var xy=Fe(),Ry=String;$l.exports=function(r){if(xy(r)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return Ry(r)}});var Vl=a((OP,Ml)=>{"use strict";var Cy=dr(),Ny=ao(),Ly=ne(),ky=RangeError;Ml.exports=function(e){var t=Ny(Ly(this)),i="",o=Cy(e);if(o<0||o===1/0)throw new ky("Wrong number of repetitions");for(;o>0;(o>>>=1)&&(t+=t))o&1&&(i+=t);return i}});var Wl=a((wP,jl)=>{"use strict";var Fl=w(),Dy=Dt(),Ul=ao(),$y=Vl(),My=ne(),Vy=Fl($y),Uy=Fl("".slice),By=Math.ceil,Bl=function(r){return function(e,t,i){var o=Ul(My(e)),n=Dy(t),s=o.length,u=i===void 0?" ":Ul(i),l,d;return n<=s||u===""?o:(l=n-s,d=Vy(u,By(l/u.length)),d.length>l&&(d=Uy(d,0,l)),r?o+d:d+o)}};jl.exports={start:Bl(!1),end:Bl(!0)}});var Kl=a((AP,Hl)=>{"use strict";var Fy=X();Hl.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(Fy)});var Gl=a(()=>{"use strict";var jy=R(),Wy=Wl().start,Hy=Kl();jy({target:"String",proto:!0,forced:Hy},{padStart:function(e){return Wy(this,e,arguments.length>1?arguments[1]:void 0)}})});var Ql=a((RP,zl)=>{"use strict";Gl();var Ky=fr();zl.exports=Ky("String","padStart")});var Jl=a((CP,Yl)=>{"use strict";var Gy=Ql();Yl.exports=Gy});var so=a((NP,Xl)=>{"use strict";var zy=Jl();Xl.exports=zy});var po=P(le(),1);var Ue=(s=>(s.PROD="prod",s.VK_ALIAS="vk_alias",s.VIDEOTEST="videotest",s.TEST="test",s.OKCDN="okcdn",s.AUTO="auto",s))(Ue||{}),Ut=(d=>(d.Q144P="mobile",d.Q240P="lowest",d.Q360P="low",d.Q480P="medium",d.Q720P="high",d.Q1080P="fullhd",d.Q1440P="quadhd",d.Q2160P="ultrahd",d.UNKNOWN="unknown",d))(Ut||{}),Bt=(f=>(f.MP4="mp4",f.DASH="dash",f.DASH_SEP="dash_sep",f.ONDEMAND_DASH="ondemand_dash",f.HLS="hls",f.ONDEMAND_HLS="ondemand_hls",f.WEBM="webm",f.AV1="av1",f.ONDEMAND_DASH_LIVE="ondemand_dash_live",f.ONDEMAND_HLS_LIVE="ondemand_hls_live",f.WEBRTC="webrtc",f.UNKNOWN="unknown",f.RTMP="rtmp",f))(Bt||{});var Ft=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.HTTP3="http3",i))(Ft||{});var jt=(u=>(u.SLIDER="slider",u.DOUBLE_TAP="double_tap",u.TIME_CODE="time_code",u.EPISODE="episode",u.REWIND="rewind",u.LIVE="live",u.UNKNOWN="unknown",u))(jt||{}),Ia=(n=>(n.GRAPH_SHOW="iGraphShow",n.GRAPH_HIDE="iGraphHide",n.NEXT_AREA="iNextChapterArea",n.NEXT_BUTTON="iNextChapterBtn",n.WATCH_AGAIN="iWatchAgainBtn",n))(Ia||{}),Sa={action_play:"ap",action_play_interactive:"api",first_bytes:"fb",player_ready:"pr",first_frame:"ff",seek:"sk",watch_coverage_record:"wr",watch_coverage_live:"wl",empty_buffer:"eb",action_stop:"as",close_at_empty_buffer:"cb",content_error:"er",player_interface_click:"pc",next_movie:"nm",track_switch:"ts",failover:"fo",quality:"qt"},_a={vsid:"si",isid:"is",vid:"vi",place:"pl",quality:"qt",cdn_host:"ch",stat_type:"st",param:"pm",vk_app_id:"va",track_code:"tc",connection_type:"cnt",connection_reused:"cr",cached_data:"cd",live:"lv",muted:"mu",mode:"mo",subtitles:"sb",failover:"fo",download_speed:"ds",manual_quality:"mq",ref_domain:"rd",direct_url:"du"},Ea={unknown:"un",mobile:"m",lowest:"ls",low:"l",medium:"md",high:"h",fullhd:"f",quadhd:"q",ultrahd:"u"},Pa={pip:"pi",fullscreen:"fs",external:"ex",prefetch:"pr",airplay:"ap",chromecast:"cc",invisible:"iv"};import{fillWithDefault as vh}from"@vkontakte/videoplayer-shared/es2024";var pr="__VERSION__",Ta="CIOPGQJGDIHBABABA",Wt={prod:"https://api.ok.ru",vk_alias:"https://api.mycdn.me",videotest:"https://videotestapi.ok.ru/api",test:"https://apitest.ok.ru",okcdn:"https://api.okcdn.ru",auto:""};var gh={apiEnv:"vk_alias",apiKey:Ta,requestRetryCount:1,firstFlushTime:5e3,flushDebounceTime:1e4,flushMaxWait:6e4,storageExpiration:36*60*60*1e3,watchCoverageInterval:15e3,disabledOperations:["quality"],disabledCustomFields:[],shorten:!0,maxLoops:100,embedUrlParams:[],useBeacon:!0,synchronizeTime:!0,debugLog:!1,clearStorageAtUnload:!0,useVKComIsMobileLogic:!1,backoff:{start:1e3,factor:1.5,max:5*60*1e3,random:.1}},Oa=r=>vh(r,gh);function Ht(){let r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),e=new Array(36),t=0,i,o;for(o=0;o<36;o++)o===8||o===13||o===18||o===23?e[o]="-":o===14?e[o]="4":(t<=2&&(t=33554432+Math.random()*16777216|0),i=t&15,t=t>>4,e[o]=r[o===19?i&3|8:i]);return e.join("")}import{assertNonNullable as rI,combine as nd,fromEvent as ad,isNonNullable as Te,isNullable as sd,merge as tI,now as G,observableFrom as iI,once as oI,safeStorage as ud,Subject as nI,Subscription as ho,ValueSubject as Qr,createURL as cd}from"@vkontakte/videoplayer-shared/es2024";import{Logger as aI,detectEmbed as sI}from"@vkontakte/videoplayer-shared/es2024";var Br=P($i(),1);var Pl=P(Ie(),1),Tl=P(El(),1);var Ol=r=>{let{operation:e,custom:t}=r,i=(0,Tl.default)((0,Pl.default)(t).map(([o,n])=>{let s=_a[o]??o,u=n;return n&&(o==="mode"?u=Pa[n]??n:o==="quality"&&(u=Ea[n]??n)),[s,u]}));return{...r,operation:Sa[e]??e,custom:i}};import{ValueSubject as Py,getExponentialDelay as Ty,ErrorCategory as Se}from"@vkontakte/videoplayer-shared/es2024";var Oy=/Mobile|mini|Fennec|Android|iP(ad|od|hone)|opera (mini|mobi)/i,Ze=class{constructor(e){this.consequentAuthErrors=0;this.authorized$=new Py(!1);this.params=e}async authorize(e){return this.authToken=e??await this.refreshAuthToken(),this._authorizeWithBackoff()}logBeacon(e){let t="log.externalLog",i=this.createLogParams(e),o=this.sessionKey;if(!o)return;this.params.apiTransport.sendBeacon(t,i,o)||this.logRequest(e).catch(()=>{})}async logRequest(e){let t="log.externalLog",i=this.createLogParams(e),o=this.sessionKey??await this._authorizeWithBackoff();if(!o)return;let n=async(s,u=this.params.config.requestRetryCount)=>{try{return await this.params.apiTransport.sendRequest(t,i,o)}catch(l){if(!l||!("error_code"in l)){this.params.error$.next({id:"logRequestUnknown",category:Se.NETWORK,message:`Unknown ${t} error`,thrown:l});return}let d=l?.error_code;switch(d){case 102:case 103:case 104:return this.authorized$.next(!1),this.sessionKey=await this._authorizeWithBackoff(),u>0?n(s,u-1):void 0;case 401:return this.authorized$.next(!1),this.authToken=await this.refreshAuthToken(),this.sessionKey=await this._authorizeWithBackoff(),u>0?n(s,u-1):void 0;default:{this.params.error$.next({id:`LogRequest#${d}`,category:Se.EXTERNAL_API,message:`${t} error`,data:l});return}}}};return n(e)}destroy(){window.clearTimeout(this.backoffTimeoutId),this.backoffTimeoutId=0}async refreshAuthToken(){if(this.params.refreshAuthToken)return this.refreshAuthTokenPromise||(this.refreshAuthTokenPromise=(0,Br.default)(this.params.refreshAuthToken(),()=>{this.refreshAuthTokenPromise=void 0})),this.refreshAuthTokenPromise}createLogParams(e){let t="WEB",i=!1;if(this.params.config.useVKComIsMobileLogic){let{appVersion:o}=window.navigator;i=Oy.test(o)}else this.params.mobile&&(i=!0);return i&&(t="M_WEB"),{collector:"ok.mobile.apps.video",data:JSON.stringify({application:`@vkontakte/videoplayer-statistics:${pr}`,platform:t,items:this.params.config.shorten?e.map(Ol):e})}}_authorizeWithBackoff(){if(!this.consequentAuthErrors)return this._authorize();let e=Ty(this.consequentAuthErrors,this.params.config.backoff);return new Promise(t=>{this.backoffTimeoutId||(this.backoffTimeoutId=window.setTimeout(()=>{(0,Br.default)(this._authorize().then(t).catch(i=>this.params.error$.next({id:"AuthorizeBackoff",category:Se.NETWORK,message:"Otherwise unhandled error in authorization",thrown:i})),()=>this.backoffTimeoutId=0)},e))})}async _authorize(){if(this.authorizePromise)return this.authorizePromise;this.sessionKey=void 0,this.authorized$.next(!1);let e="auth.anonymLogin",t={session_data:{version:2,device_id:this.params.deviceId,client_version:pr.split("-")[0],client_type:"SDK_JS"}};return this.authToken!==void 0&&(t.session_data.auth_token=this.authToken,t.session_data.version=3),this.authorizePromise=(0,Br.default)(this.params.apiTransport.sendRequest(e,t).then(i=>((!i||!i.session_key)&&this.params.error$.next({id:"AuthorizeFailed",category:Se.EXTERNAL_API,message:"No session key",data:i}),this.sessionKey=i?.session_key??void 0,this.sessionKey)).catch(async i=>{this.sessionKey=void 0;let o=i?.error_code;switch(o){case 401:return this.authToken=await this.refreshAuthToken(),this._authorizeWithBackoff()}o?this.params.error$.next({id:`Authorize#${o}`,category:Se.EXTERNAL_API,message:"authorize error",data:i}):this.params.error$.next({id:"AuthorizeUnknown",category:Se.NETWORK,message:"authorize error",thrown:i})}),()=>{this.authorizePromise=void 0,this.consequentAuthErrors=this.sessionKey?0:this.consequentAuthErrors+1,this.authorized$.next(this.sessionKey!==void 0)}),this.authorizePromise}};var Fr=class{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,i){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:i})}removeEventListener(e,t){if(!(e in this.listeners))return;let i=this.listeners[e];for(let o=0,n=i.length;o<n;o++)if(i[o].callback===t){i.splice(o,1);return}}dispatchEvent(e){if(!(e.type in this.listeners))return;let i=this.listeners[e.type].slice();for(let o=0,n=i.length;o<n;o++){let s=i[o];try{s.callback.call(this,e)}catch(u){Promise.resolve().then(()=>{throw u})}s.options&&s.options.once&&this.removeEventListener(e.type,s.callback)}return!e.defaultPrevented}},_e=class extends Fr{constructor(){super(),this.listeners||Fr.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){e.type==="abort"&&(this.aborted=!0,typeof this.onabort=="function"&&this.onabort.call(this,e)),super.dispatchEvent(e)}},er=class{constructor(){Object.defineProperty(this,"signal",{value:new _e,writable:!0,configurable:!0})}abort(e){let t;try{t=new Event("abort")}catch{typeof document<"u"?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let i=e;if(i===void 0)if(typeof document>"u")i=new Error("This operation was aborted"),i.name="AbortError";else try{i=new DOMException("signal is aborted without reason")}catch{i=new Error("This operation was aborted"),i.name="AbortError"}this.signal.reason=i,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}};typeof Symbol<"u"&&Symbol.toStringTag&&(er.prototype[Symbol.toStringTag]="AbortController",_e.prototype[Symbol.toStringTag]="AbortSignal");function jr(r){return r.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):typeof r.Request=="function"&&!r.Request.prototype.hasOwnProperty("signal")||!r.AbortController}function ro(r){typeof r=="function"&&(r={fetch:r});let{fetch:e,Request:t=e.Request,AbortController:i,__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL:o=!1}=r;if(!jr({fetch:e,Request:t,AbortController:i,__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL:o}))return{fetch:e,Request:n};let n=t;(n&&!n.prototype.hasOwnProperty("signal")||o)&&(n=function(d,p){let h;p&&p.signal&&(h=p.signal,delete p.signal);let c=new t(d,p);return h&&Object.defineProperty(c,"signal",{writable:!1,enumerable:!1,configurable:!0,value:h}),c},n.prototype=t.prototype);let s=e;return{fetch:(l,d)=>{let p=n&&n.prototype.isPrototypeOf(l)?l.signal:d?d.signal:void 0;if(p){let h;try{h=new DOMException("Aborted","AbortError")}catch{h=new Error("Aborted"),h.name="AbortError"}if(p.aborted)return Promise.reject(h);let c=new Promise((f,v)=>{p.addEventListener("abort",()=>v(h),{once:!0})});return d&&d.signal&&delete d.signal,Promise.race([c,s(l,d)])}return s(l,d)},Request:n}}var rr=jr({fetch:window.fetch,Request:window.Request,AbortController:window.AbortController}),wl=rr?ro({fetch:window.fetch,Request:window.Request,AbortController:window.AbortController}):void 0,Ee=rr?wl.fetch:window.fetch,eP=rr?wl.Request:window.Request,rP=rr?er:window.AbortController,tP=rr?_e:window.AbortSignal;var Al=P(le(),1),ql=P(Ie(),1);import{ErrorCategory as Wr,now as to}from"@vkontakte/videoplayer-shared/es2024";var tr=class{constructor(e){this.params=e,this.apiKey=e.config.apiKey,this.apiEnv=e.config.apiEnv,this.apiBaseUrl=Wt[this.apiEnv],this.timeSynchronisation=e.timeSynchronisation,this.isApiBaseUrlFetched=!1}async resolveApiBaseUrl(){if(this.apiEnv!=="auto"||this.isApiBaseUrlFetched)return this.apiBaseUrl;try{let e=atob("aHR0cHM6Ly9kbnMuZ29vZ2xlL3Jlc29sdmU/bmFtZT12aWRlby5fZW5kcG9pbnQub2sucnUmdHlwZT1UWFQ="),o=(await(await Ee(e,{method:"GET",mode:"cors",cache:"no-cache"})).json())?.Answer[0]?.data;if(!o)throw new Error("Wrong DNS response");return o}catch(e){return this.params.error$.next({id:"OneStat:ApiTransport:resolveApiBaseUrl",category:Wr.NETWORK,message:"Unhandled resolve api base url error",thrown:e}),Wt.vk_alias}finally{this.isApiBaseUrlFetched=!0}}sendBeacon(e,t,i){if(!window.Blob||!window.navigator.sendBeacon)return!1;let o=this._prepareQueryParams({method:e,queryParams:t,sessionKey:i}),n=new window.Blob([o.toString()],{type:"application/x-www-form-urlencoded"});try{return window.navigator.sendBeacon(`${this.apiBaseUrl}/fb.do`,n)}catch(s){this.params.error$.next({id:"OneStat:ApiTransport:sendBeacon",category:Wr.NETWORK,message:"Unhandled beacon error",thrown:s,data:{method:e,params:t}})}return!1}async sendRequest(e,t,i){let o=to(),n=s=>{if(s instanceof TypeError&&(0,Al.default)(["Failed to fetch","NetworkError when attempting to fetch resource."],s.message)){this.params.error$.next({id:"Network",category:Wr.NETWORK,message:"Request failed",thrown:s});return}this.params.error$.next({id:"OneStat:ApiTransport:sendRequest",category:Wr.NETWORK,message:"Unhandled request error",thrown:s,data:{method:e,params:t,sessionKey:i,time:to()-o}})};return this.apiBaseUrl=await this.resolveApiBaseUrl(),Ee(`${this.apiBaseUrl}/fb.do`,{method:"post",headers:{"Content-type":"application/x-www-form-urlencoded"},body:this._prepareQueryParams({method:e,queryParams:t,sessionKey:i})}).then(s=>{let u=Number(s.headers.get("content-length"))===0,l=new Date(s.headers.get("date")??"").getTime(),d=to()-o;if(isFinite(l)&&this.timeSynchronisation?.addServerTime(l,d),!u)return s.json().then(p=>Object.prototype.hasOwnProperty.call(p,"error_msg")?Promise.reject(p):p,n)},n)}_prepareQueryParams(e){let t=new URLSearchParams({format:"JSON",method:e.method,application_key:this.apiKey});return e.sessionKey!==void 0&&t.append("session_key",e.sessionKey),(0,ql.default)(e.queryParams).forEach(([i,o])=>t.append(i,typeof o=="string"?o:JSON.stringify(o))),t}};var Rl=P(le(),1),Cl=P(Ie(),1);import{ErrorCategory as wy,now as Ay,safeStorage as ir,debounceFn as xl}from"@vkontakte/videoplayer-shared/es2024";var Hr="onestat_events",io=r=>e=>e.timestamp+r>=Ay(),Kr=class{constructor(e){this.unsaltedStorage=[];this.isPaused=!1;this.isUrgent=e=>{let{operation:t}=e;return(0,Rl.default)(["action_play","watch_coverage_record","watch_coverage_live"],t)};this.params=e,this.api=e.api,this.error$=e.error$,this.userSalt=e.userSalt,this.loggerDebugLog=e.debugLogger.createComponentLog("stat logger"),this.firstFlush=xl(()=>this.safeFlush(),this.params.config.firstFlushTime,{maxWait:this.params.config.firstFlushTime});let t=ir.isPersistent()?this.params.config.flushMaxWait:0;this.debouncedFlush=xl(()=>this.safeFlush(),this.params.config.flushDebounceTime,{maxWait:t}),this.subscription=this.api.authorized$.subscribe(i=>{i&&this.debouncedFlush()}),this.housekeepStorage()}safeFlush(){try{this.flush()}catch(e){this.error$.next({id:"LoggerError",category:wy.WTF,message:e?String(e):"Unknown logger error",thrown:e})}}readFromStorage(){let e=ir.get(Hr);try{return e?JSON.parse(e):{}}catch{}return{}}addToStorage(e){if(!this.userSalt){this.unsaltedStorage.push(e);return}let t=this.readFromStorage(),o=(t[this.userSalt]??[]).filter(io(this.params.config.storageExpiration));ir.set(Hr,JSON.stringify({...t,[this.userSalt]:[...o,e]}))}getFromStorage(){return this.userSalt?(this.readFromStorage()[this.userSalt]??[]).filter(io(this.params.config.storageExpiration)):this.unsaltedStorage}markStorageSent(){if(!this.userSalt){this.unsaltedStorage=[];return}let e=this.readFromStorage();delete e[this.userSalt],ir.set(Hr,JSON.stringify(e))}housekeepStorage(){let e=this.readFromStorage();for(let[t,i]of(0,Cl.default)(e)){let o=i.filter(io(this.params.config.storageExpiration));o.length?e[t]=o:delete e[t],this.loggerDebugLog({message:`${i.length} retrieved from storage, ${o.length} of them actual`})}ir.set(Hr,JSON.stringify(e))}log(e){this.addToStorage(e),!this.isPaused&&(this.isUrgent(e)?this.flush():this.lastVsid!==e.custom.vsid?this.firstFlush():this.debouncedFlush(),this.lastVsid=e.custom.vsid)}flush({wantBeacon:e,clearStorage:t}={wantBeacon:!1,clearStorage:!0}){let i=this.getFromStorage();i.length!==0&&(this.api.authorized$.getValue()?(e&&this.params.config.useBeacon?(this.loggerDebugLog({message:`Flushing ${i.length} events through beacon`}),this.api.logBeacon(i)):(this.loggerDebugLog({message:`Flushing ${i.length} events`}),this.api.logRequest(i)),t&&this.markStorageSent()):this.api.authorize(),this.firstFlush.cancel(),this.debouncedFlush.cancel())}pause(){this.isPaused=!0,this.debouncedFlush.cancel()}resume(){this.isPaused=!1,this.debouncedFlush()}destroy(){this.subscription.unsubscribe(),this.firstFlush.cancel(),this.debouncedFlush.cancel()}};import{HttpConnectionType as oo,Surface as Pe,VideoFormat as O,VideoQuality as $}from"@vkontakte/videoplayer-core/es2024";import{assertNever as Nl}from"@vkontakte/videoplayer-shared/es2024";var Ll=r=>r&&{[$.INVARIANT]:"unknown",[$.Q_144P]:"mobile",[$.Q_240P]:"lowest",[$.Q_360P]:"low",[$.Q_480P]:"medium",[$.Q_576P]:"unknown",[$.Q_720P]:"high",[$.Q_1080P]:"fullhd",[$.Q_1440P]:"quadhd",[$.Q_2160P]:"ultrahd",[$.Q_4320P]:"unknown"}[r],no=r=>r&&{[oo.HTTP1]:"http1",[oo.HTTP2]:"http2",[oo.QUIC]:"http3"}[r],kl=r=>{if(r!==void 0)switch(r){case O.MPEG:return"mp4";case O.DASH:case O.DASH_LIVE:case O.DASH_STREAMS:return"dash";case O.DASH_SEP:return"dash_sep";case O.DASH_ONDEMAND:return"ondemand_dash";case O.DASH_WEBM:case O.DASH_LIVE_WEBM:return"webm";case O.DASH_WEBM_AV1:return"av1";case O.DASH_LIVE_CMAF:return"ondemand_dash_live";case O.HLS:case O.HLS_LIVE:return"hls";case O.HLS_ONDEMAND:return"ondemand_hls";case O.HLS_LIVE_CMAF:return"ondemand_hls_live";case O.WEB_RTC_LIVE:return"webrtc";default:return Nl(r)}},Gr=r=>{if(r!==void 0)switch(r){case Pe.NONE:case Pe.INLINE:return;case Pe.FULLSCREEN:return"fullscreen";case Pe.SECOND_SCREEN:return"chromecast";case Pe.PIP:return"pip";case Pe.INVISIBLE:return"invisible";default:return Nl(r)}},Dl=r=>{switch(r){case"slow-2g":return"poor";case"2g":return"poor";case"3g":return"good";case"4g":return"excellent"}};var zr=class{constructor(e){this.offset=void 0;this.offset=e}getOffset(){return this.offset??0}setOffset(e){this.offset=e}now(){return Date.now()+(this.offset??0)}date(e=new Date){return e.setTime(e.getTime()+(this.offset??0)),e}addServerTime(e,t){let i=Date.now(),o=e-i-t/2;if(Math.abs(o)<1e3){this.offset=0;return}this.offset===void 0?this.offset=Math.round(o):this.offset=Math.round(.2*o+(1-.2)*this.offset)}};var uo=P(so(),1),Zl=()=>(0,uo.default)(Math.floor(Math.random()*2**32).toString(36),7,"0"),ed=()=>(0,uo.default)(Math.floor(Math.random()*2**64).toString(36),13,"0");import{PlaybackState as rd}from"@vkontakte/videoplayer-core/es2024";import{filter as td,filterChanged as Qy,fromEvent as Yy,isNullable as id,map as Jy,merge as co,Observable as Xy,Subject as lo,Subscription as Zy,ValueSubject as eI}from"@vkontakte/videoplayer-shared/es2024";var od=(r,e)=>new Xy(t=>{let i=new Zy,o=co(Yy(window,"beforeunload"),r.events.willDestruct$),n=new eI(void 0),s;i.add(r.info.isLive$.pipe(Qy()).subscribe(_=>{s&&(s.unsubscribe(),n.next(void 0)),_?s=r.info.liveTime$.pipe(Jy(A=>A&&A/1e3)).subscribe(n):s=r.info.position$.subscribe(n),i.add(s)}));let{playing$:u,paused$:l}=r.events,d=r.events.willSeek$.pipe(td(()=>r.info.playbackState$.getValue()===rd.PLAYING)),p=r.events.seeked$.pipe(td(()=>r.info.playbackState$.getValue()===rd.PLAYING)),h=!1,c=new lo;i.add(d.subscribe(()=>{h||c.next(),h=!0})),i.add(p.subscribe(()=>h=!1));let f=new lo,v=new lo,g=co(u,p,f),b=co(l,c,o,r.events.looped$,v),m,y=()=>m=n.getValue(),B=()=>{let _=n.getValue();id(m)||m===_||id(_)||(t.next({from:m,to:_}),m=void 0)},F=()=>{v.next(),f.next()};if(i.add(g.subscribe(y)),i.add(b.subscribe(B)),e.forceInterval&&isFinite(e.forceInterval)){let _=0;i.add(g.subscribe(()=>_=window.setTimeout(F,e.forceInterval))),i.add(b.subscribe(()=>window.clearTimeout(_)))}return i});var uI="_one-stat_",ld=`${uI}deviceId`,fo=()=>{let r=new ho;return{subscription:r,subscribe:(e,t)=>{e&&r.add(e.subscribe(t))}}},vo=class{constructor(e,t){this.subscription=new ho;this.debugLogger=new aI;this.oneStatDebugLog=this.debugLogger.createComponentLog("onestat");this.loopCounter=0;this.disabled=!1;this.vsid$=new Qr(void 0);this.isid$=new Qr(void 0);this.zenUid$=new Qr(void 0);this.seekAction$=new Qr("unknown");this.statContext=e,this.config=Oa(t.config??{}),Te(t.apiEnv)&&(this.config.apiEnv=t.apiEnv),this.config.synchronizeTime&&(this.timeSynchronisation=new zr);let i=new nI;this.experimental={error$:i};let o=ud.get(ld);this.statContext.deviceId?this.deviceId=this.statContext.deviceId:o?this.deviceId=o:(this.deviceId=Ht(),ud.set(ld,this.deviceId)),this.resetViewSession(),t.useIsid&&this.isid$.next(t.isid??ed()),this.zenUid$.next(t.zenUid);let n=new tr({config:this.config,error$:i,timeSynchronisation:this.timeSynchronisation});this.api=new Ze({config:this.config,apiTransport:n,refreshAuthToken:t.refreshAuthToken,mobile:this.statContext.mobile??!1,deviceId:this.deviceId,error$:i}),this.logger=new Kr({config:this.config,debugLogger:this.debugLogger,api:this.api,error$:i,userSalt:t.userSalt});let{isEmbed:s,topOrigin:u}=sI();this.isEmbed=s,this.embedParent=u?new URL(u).hostname:void 0,this.subscribe()}updateContext(e){this.statContext={...this.statContext,...e}}attachTo(e){let t=new ho,i=(c,f)=>t.add(c.subscribe(f));i(e.events.willStart$,()=>{let c=e.info.position$.getValue();this.logActionPlay({position:c}),this.statContext.projectId&&this.logActionPlayInteractive()}),i(e.events.looped$,()=>{this.resetViewSession(),++this.loopCounter>this.config.maxLoops&&(this.disabled=!0),this.logActionPlay({position:e.info.position$.getValue()})}),i(e.events.seeked$,()=>{this.logSeek({action:this.seekAction$.getValue(),time:e.info.position$.getValue()}),this.seekAction$.next("unknown")}),i(e.events.paused$,()=>{this.logPause({position:e.info.position$.getValue()})}),i(e.events.willResume$,()=>{this.logPlay()}),i(e.events.started$,()=>{this.statContext.clip&&this.logWatchCoverageRecord({start:0,end:0})}),i(e.events.playing$,()=>{this.logPlaying()}),i(od(e,{forceInterval:this.config.watchCoverageInterval}),c=>{let f=e.info.isLive$.getValue(),v=e.info.atLiveEdge$.getValue(),g={start:parseFloat(c.from.toFixed(3)),end:parseFloat(c.to.toFixed(3))};if(v){let b=e.info.liveLatency$.getValue()??0,m=e.info.currentBuffer$.getValue()?.end??0,y=e.info.liveBufferTime$.getValue()??0,B=Math.round((b-(m-y))*1e3),F=Math.round(b*1e3);B&&F&&(g.latency=B,g.bufferLatency=F)}f?this.logWatchCoverageLive(g):this.logWatchCoverageRecord(g)});let o;i(e.info.isStalled$,c=>{c?o=G():(Te(o)&&this.logEmptyBuffer({duration:G()-o}),o=void 0)});let n=!1;t.add(e.events.fatalError$.pipe(oI()).subscribe(()=>n=!0)),i(e.events.willStop$,()=>{if(e.info.isStalled$.getValue()){let f=Te(o)?G()-o:void 0;this.logCloseAtEmptyBuffer({duration:f??0}),o=void 0}else n||this.logActionStop()}),i(e.events.managedError$,({id:c})=>{this.logError({fatal:!1,errorType:c})}),i(e.events.fatalError$,({id:c})=>{this.logError({fatal:!0,errorType:c})});let s,u,l=!1;i(e.events.firstBytes$,c=>{s=G(),this.logFirstBytes({time:c})}),i(e.events.willStart$,()=>u=G()),i(e.info.currentBuffer$,c=>{!l&&c&&c.end-c.start>0&&Te(s)&&(this.logPlayerReady({duration:G()-s}),l=!0)}),i(e.events.firstFrame$,()=>{Te(s)&&!l&&(this.logPlayerReady({duration:G()-s}),l=!0),Te(u)&&this.logFirstFrame({time:G()-u})});let d;i(e.info.currentVideoStream$,c=>{c&&(d&&c.id!==d&&this.logTrackSwitch(c),d=c.id)});let p;i(e.info.currentAudioStream$,c=>{c&&(p&&c.id!==p&&this.logTrackSwitch(c),p=c.id)}),i(e.info.atLiveEdge$,c=>this.updateContext({liveEdge:c})),i(nd({muted:e.info.muted$,volume:e.info.volume$}),({muted:c,volume:f})=>this.updateContext({audible:!c&&f>0})),i(e.info.currentQuality$,c=>{let f=Ll(c);this.updateContext({quality:f}),f&&this.logQuality(f)}),i(e.info.isAutoQualityEnabled$,c=>this.updateContext({autoQuality:c})),i(e.info.currentFormat$,c=>this.updateContext({contentType:kl(c)})),i(e.info.currentPlaybackRate$,c=>this.updateContext({rate:c})),i(e.info.is3DVideo$,c=>this.updateContext({is3d:c}));let h;return i(e.info.hostname$,c=>{let f=h!==void 0&&h!==c;this.updateContext({cdnHostname:c,failover:f}),f&&this.logFailover(c),h=c}),i(e.info.throughputEstimation$,c=>this.updateContext({downloadSpeed:c})),i(e.info.httpConnectionType$,c=>{this.statContext.firstConnectionType||this.updateContext({firstConnectionType:no(c)}),this.updateContext({connectionType:no(c)})}),i(e.info.httpConnectionReused$,c=>{sd(this.statContext.firstConnectionReused)&&this.updateContext({firstConnectionReused:c}),this.updateContext({connectionReused:c})}),i(e.info.surface$,c=>this.updateContext({mode:Gr(c)})),i(nd({current:e.info.currentTextTrack$,available:e.info.availableTextTracks$}),({current:c,available:f})=>{let v=f.find(({id:b})=>b===c),g=v&&(v.isAuto?`${v.language}_auto`:v.language);this.updateContext({subtitles:g?.split(".")[0]})}),this.player=e,this.uiEvents&&this.attachToUi(this.uiEvents),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToUi(e){this.uiEvents=e;let{subscription:t,subscribe:i}=fo();return this.player&&(i(e.actionRewind$,()=>{this.player&&(this.resetViewSession(),this.logActionPlay({position:this.player.info.position$.getValue()}))}),i(e.actionSeek$,this.seekAction$),i(e.inPiP$,o=>{let n=o?"pip":Gr(this.player?.info.surface$.getValue());this.updateContext({mode:n})}),i(e.inFullscreen$,o=>{let n=o?"fullscreen":Gr(this.player?.info.surface$.getValue());this.updateContext({mode:n})}),i(e.actionSetSubtitle$,o=>this.updateContext({subtitles:o.split(".")[0]})),i(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(t)),t}attachToAds(e){let{subscription:t,subscribe:i}=fo();return i(e.slotRequested$,()=>this.logAdSlotRequest()),i(e.started$,o=>this.logAdStarted(o)),i(e.paused$,()=>this.logAdPaused()),i(e.resumed$,()=>this.logAdResumed()),i(e.ended$,()=>this.logAdEnded()),i(e.skipped$,()=>this.logAdSkipped()),i(e.clicked$,()=>this.logAdClicked()),i(e.error$,o=>this.logError({errorType:o,fatal:!1})),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToInteractive(e){let{subscription:t,subscribe:i}=fo();return i(e.click$,o=>this.logInterfaceClick(o)),i(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(t),t}authorize(e){return this.api.authorize(e)}pause(){this.logger.pause(),this.oneStatDebugLog({message:"paused"})}resume(){this.logger.resume(),this.oneStatDebugLog({message:"resumed"})}destroy(){this.logger.flush(),this.subscription.unsubscribe(),this.api.destroy(),this.logger.destroy()}resetViewSession(){this.oneStatDebugLog({message:"VSID reset"}),this.vsid$.next(Zl())}getDeviceId(){return this.deviceId}setFieldBlacklist(){}logInited(){}logReady(e){this.log({operation:"player_ready",param:String(e.time)})}logStarted(...e){this.logActionPlay(...e)}logPlay(){this.log({operation:"play_toggle"})}logPlaying(){this.log({operation:"playing"})}logPause(e){this.log({operation:"pause",param:String(Math.round(e.position))})}logSeek(e){this.log({operation:"seek",param:e.action,time:e.time})}logFirstBytes(e){this.log({operation:"first_bytes",param:String(e.time)})}logFirstFrame(e){this.log({operation:"first_frame",param:String(e.time)})}logError(e){this.log({operation:"content_error",param:`${e.fatal?"fatal":"recoverable"}_${e.errorType}`})}logWatchCoverageRecord(e){this.log({operation:"watch_coverage_record",param:`${e.start}-${e.end}`},{in_history:this.statContext.inHistory?1:void 0})}logWatchCoverageLive(e){let t=this.timeSynchronisation?.getOffset()??0,i=e.start+t,o=e.end+t;this.log({operation:"watch_coverage_live",param:`${i}-${o}`},{in_history:this.statContext.inHistory?1:void 0,latency:e.latency,buffer_latency:e.bufferLatency})}logEmptyBuffer(e){this.log({operation:"empty_buffer",param:String(e.duration)})}logDownloadSpeed(){}logAdSlotRequest(){this.log({operation:"adv",param:"slot_request"})}logAdStarted(e){this.log({operation:"adv",param:e})}logAdPaused(){this.log({operation:"adv",param:"pause"})}logAdResumed(){this.log({operation:"adv",param:"resume"})}logAdEnded(){this.log({operation:"adv",param:"ended"})}logAdSkipped(){this.log({operation:"adv",param:"skip"})}logAdClicked(){this.log({operation:"adv",param:"click"})}logInterfaceClick(e){this.log({operation:"player_interface_click",param:e})}logNextMovie(e){this.log({operation:"next_movie",param:String(e)})}subscribe(){this.resubscribeBeforeunload();let e=window.navigator.connection;e&&"onchange"in e&&"effectiveType"in e&&this.subscription.add(tI(ad(e,"change"),iI(["init"])).subscribe(()=>this.updateContext({network:Dl(e.effectiveType)}))),this.config.debugLog&&this.debugLogger.log$.subscribe(t=>{console.debug("%c stat ","background:#fa6470;",`component: ${t.component}.`,t.message)})}resubscribeBeforeunload(){this.beforeunloadSubscription?.unsubscribe(),this.beforeunloadSubscription=ad(window,"beforeunload").subscribe(()=>this.logger.flush({wantBeacon:!0,clearStorage:this.config.clearStorageAtUnload})),this.subscription.add(this.beforeunloadSubscription)}logPlayerReady(e){this.log({operation:"player_ready",param:String(Math.round(e.duration))})}logActionPlay(e){this.log({operation:"action_play",param:String(Math.round(e.position))})}logActionPlayInteractive(){this.statContext.projectId&&this.log({operation:"action_play_interactive",param:String(this.statContext.movieId)},{vid:this.statContext.projectId})}logFailover(e){this.log({operation:"failover",param:e})}logCloseAtEmptyBuffer(e){this.log({operation:"close_at_empty_buffer",param:String(Math.round(e.duration))})}logActionStop(){this.log({operation:"action_stop"})}logTrackSwitch(e){this.log({operation:"track_switch",param:e.id})}logQuality(e){this.log({operation:"quality",param:e})}log(e,t={}){if(this.disabled){this.oneStatDebugLog({message:`operation ${e.operation} but statistics is disabled`});return}if((0,po.default)(this.config.disabledOperations,e.operation)){this.oneStatDebugLog({message:`operation ${e.operation} but it is disabled`});return}this.oneStatDebugLog({message:`operation ${e.operation} ${e.param}`});let i=this.createLogItem(e,t);this.logger.log(i)}createLogItem({operation:e,param:t,time:i},o={}){let n=this.timeSynchronisation?.now()??G(),s=this.vsid$.getValue();rI(s);let u=this.isid$.getValue(),l=e==="empty_buffer"||e==="close_at_empty_buffer"?this.statContext.connectionType:this.statContext.firstConnectionType,d=this.statContext.firstConnectionReused,p,h;if(this.isEmbed||this.statContext.place==="embed"){p=this.embedParent;let f=[...new URLSearchParams(location.search).entries()].filter(([v,g])=>(0,po.default)(this.config.embedUrlParams,v));h=new URLSearchParams(f).toString()}else this.statContext.place==="direct"&&(this.statContext.refDomain?p=cd(this.statContext.refDomain)?.hostname??this.statContext.refDomain:document.referrer&&(p=cd(document.referrer)?.hostname??document.referrer),h=location.href.substring(0,1024));let c={vsid:s,isid:u,vid:this.statContext.movieId,uid:this.zenUid$.getValue(),ct:this.statContext.contentType,place:this.isEmbed?"embed":this.statContext.place,quality:this.statContext.quality,cdn_host:this.statContext.cdnHostname,stat_type:this.statContext.autoplay===!0?"auto":this.statContext.autoplay===!1?"":void 0,param:t,vk_app_id:this.statContext.vkAppId,track_code:this.statContext.trackCode,connection_type:l,connection_reused:d===!0?1:d===!1?0:void 0,cached_data:this.statContext.cached===!0?1:this.statContext.cached===!1?0:void 0,live:this.statContext.liveEdge?1:void 0,muted:this.statContext.audible===!1?1:void 0,mode:this.statContext.mode,subtitles:this.statContext.subtitles,download_speed:this.statContext.downloadSpeed,manual_quality:this.statContext.autoQuality?void 0:1,ref_domain:p,direct_url:h,rate:this.statContext.rate===1||sd(this.statContext.rate)?void 0:this.statContext.rate.toFixed(2),view_360:this.statContext.is3d?1:void 0,aid:this.statContext.albumId,vk_playlist_id:this.statContext.vkPlaylistId,...o};for(let f of this.config.disabledCustomFields)delete c[f];return{operation:e,type:1,time:i,network:this.statContext.network,timestamp:n,custom:c}}};var $d={};Hd($d,{SeekType:()=>Yr,ThinOneStat:()=>it,VERSION:()=>Q});import{assertNonNullable as EI,detectEmbed as PI,fromEvent as TI,Logger as OI,merge as wI,safeStorage as Ld,Subject as AI,Subscription as Oo,ValueSubject as To}from"@vkontakte/videoplayer-shared/es2024";import{clientChecker as Ae,PlaybackState as kd}from"@vkontakte/videoplayer-core/es2024";import{fillWithDefault as cI}from"@vkontakte/videoplayer-shared/es2024";var Yr=(u=>(u.SLIDER="slider",u.DOUBLE_TAP="double_tap",u.TIME_CODE="time_code",u.EPISODE="episode",u.REWIND="rewind",u.LIVE="live",u.UNKNOWN="unknown",u))(Yr||{});var Q="__VERSION__",fd="CIOPGQJGDIHBABABA",go={prod:"https://api.ok.ru",vk_alias:"https://api.mycdn.me",videotest:"https://videotestapi.ok.ru/api",test:"https://apitest.ok.ru",okcdn:"https://api.okcdn.ru",auto:""};var lI={apiKey:fd,apiEnv:"vk_alias",requestRetryCount:1,firstFlushTime:5e3,flushDebounceTime:1e4,flushMaxWait:6e4,storageExpiration:36*60*60*1e3,watchCoverageHeartbeatInterval:15,synchronizeTime:!0,useBeacon:!1,alwaysSendDesktop:!1},pd=r=>cI(r,lI);var mo=P($i(),1);import{getExponentialDelay as dI,ErrorCategory as Oe,ValueSubject as fI}from"@vkontakte/videoplayer-shared/es2024";var Jr=class{constructor(e){this.params=e,this.authorized$=new fI(!1),this.consequentAuthErrors=0}async authorize(e){return this.authToken=e??await this.refreshAuthToken(),this.authorizeWithBackoff()}logBeacon(e){let t="log.logUvStat",i=this.createLogParams(e),o=this.sessionKey;if(!o)return;this.params.apiTransport.sendBeacon(t,i,o)||this.logRequest(e).catch(()=>{})}async logRequest(e){let t="log.logUvStat",i=this.createLogParams(e),o=this.sessionKey??await this.authorizeWithBackoff();if(!o)return;let n=async(s,u=this.params.config.requestRetryCount)=>{try{return await this.params.apiTransport.sendRequest(t,i,o)}catch(l){if(!l||!("error_code"in l)){this.params.error$.next({id:"logRequestUnknown",category:Oe.NETWORK,message:`Unknown ${t} error`,thrown:l});return}let d=l?.error_code;switch(d){case 102:case 103:case 104:return this.authorized$.next(!1),this.sessionKey=await this.authorizeWithBackoff(),u>0?n(s,u-1):void 0;case 401:return this.authorized$.next(!1),this.authToken=await this.refreshAuthToken(),this.sessionKey=await this.authorizeWithBackoff(),u>0?n(s,u-1):void 0;default:{this.params.error$.next({id:`LogRequest#${d}`,category:Oe.EXTERNAL_API,message:`${t} error`,data:l});return}}}};return n(e)}destroy(){window.clearTimeout(this.backoffTimeoutId),this.backoffTimeoutId=0}async refreshAuthToken(){if(this.params.refreshAuthToken)return this.refreshAuthTokenPromise||(this.refreshAuthTokenPromise=(0,mo.default)(this.params.refreshAuthToken(),()=>{this.refreshAuthTokenPromise=void 0})),this.refreshAuthTokenPromise}createLogParams(e){return{collector:"ok.mobile.apps.video",uv_stat_data:JSON.stringify({application:`@vkontakte/videoplayer-statistics:${Q}`,platform:e[0].platform,product:e[0].product,events:e})}}authorizeWithBackoff(){if(!this.consequentAuthErrors)return this.doAuthorize();let e=dI(this.consequentAuthErrors);return new Promise(t=>{this.backoffTimeoutId||(this.backoffTimeoutId=window.setTimeout(async()=>{try{let i=await this.doAuthorize();t(i)}catch(i){this.params.error$.next({id:"AuthorizeBackoff",category:Oe.NETWORK,message:"Otherwise unhandled error in authorization",thrown:i})}finally{this.backoffTimeoutId=0}},e))})}doAuthorize(){if(this.authorizePromise)return this.authorizePromise;this.sessionKey=void 0,this.authorized$.next(!1);let e="auth.anonymLogin",t={session_data:{version:2,device_id:this.params.deviceId,client_version:Q.split("-")[0],client_type:"SDK_JS"}};return this.authToken!==void 0&&(t.session_data.auth_token=this.authToken,t.session_data.version=3),this.authorizePromise=(0,mo.default)(this.params.apiTransport.sendRequest(e,t).then(i=>((!i||!i.session_key)&&this.params.error$.next({id:"AuthorizeFailed",category:Oe.EXTERNAL_API,message:"No session key",data:i}),this.sessionKey=i?.session_key??void 0,this.sessionKey)).catch(async i=>{this.sessionKey=void 0;let o=i?.error_code;switch(o){case 401:return this.authToken=await this.refreshAuthToken(),this.authorizeWithBackoff()}o?this.params.error$.next({id:`Authorize#${o}`,category:Oe.EXTERNAL_API,message:"authorize error",data:i}):this.params.error$.next({id:"AuthorizeUnknown",category:Oe.NETWORK,message:"authorize error",thrown:i})}),()=>{this.authorizePromise=void 0,this.consequentAuthErrors=this.sessionKey?0:this.consequentAuthErrors+1,this.authorized$.next(this.sessionKey!==void 0)}),this.authorizePromise}};var hd=P(le(),1);var vd=P(Ie(),1);import{now as bo,ErrorCategory as Xr}from"@vkontakte/videoplayer-shared/es2024";var Zr=class{constructor(e){this.params=e,this.apiKey=e.config.apiKey,this.apiEnv=e.config.apiEnv,this.apiBaseUrl=go[this.apiEnv],this.timeSynchronisation=e.timeSynchronisation,this.isApiBaseUrlFetched=!1}sendBeacon(e,t,i){if(!window.Blob||!window.navigator.sendBeacon)return!1;let o=this.prepareQueryParams({method:e,queryParams:t,sessionKey:i}),n=new window.Blob([o.toString()],{type:"application/x-www-form-urlencoded"});try{return window.navigator.sendBeacon(`${this.apiBaseUrl}/fb.do`,n)}catch(s){this.params.error$.next({id:"OneStat:ApiTransport:sendBeacon",category:Xr.NETWORK,message:"Unhandled beacon error",thrown:s,data:{method:e,params:t}})}return!1}async sendRequest(e,t,i){let o=bo(),n=s=>{if(s instanceof TypeError&&(0,hd.default)(["Failed to fetch","NetworkError when attempting to fetch resource."],s.message)){this.params.error$.next({id:"Network",category:Xr.NETWORK,message:"Request failed",thrown:s});return}this.params.error$.next({id:"ThinOneStat:ApiTransport:sendRequest",category:Xr.NETWORK,message:"Unhandled request error",thrown:s,data:{method:e,params:t,sessionKey:i,time:bo()-o}})};return this.apiBaseUrl=await this.resolveApiBaseUrl(),Ee(`${this.apiBaseUrl}/fb.do`,{method:"post",headers:{"Content-type":"application/x-www-form-urlencoded"},body:this.prepareQueryParams({method:e,queryParams:t,sessionKey:i})}).then(s=>{let u=Number(s.headers.get("content-length"))===0,l=new Date(s.headers.get("date")??"").getTime(),d=bo()-o;if(isFinite(l)&&this.timeSynchronisation?.addServerTime(l,d),!u)return s.json().then(p=>Object.prototype.hasOwnProperty.call(p,"error_msg")?Promise.reject(p):p,n)},n)}async resolveApiBaseUrl(){if(this.apiEnv!=="auto"||this.isApiBaseUrlFetched)return this.apiBaseUrl;try{let e=atob("aHR0cHM6Ly9kbnMuZ29vZ2xlL3Jlc29sdmU/bmFtZT12aWRlby5fZW5kcG9pbnQub2sucnUmdHlwZT1UWFQ="),o=(await(await Ee(e,{method:"GET",mode:"cors",cache:"no-cache"})).json())?.Answer[0]?.data;if(!o)throw new Error("Wrong DNS response");return o}catch(e){return this.params.error$.next({id:"ThinOneStat:ApiTransport:resolveApiBaseUrl",category:Xr.NETWORK,message:"Unhandled resolve api base url error",thrown:e}),go.vk_alias}finally{this.isApiBaseUrlFetched=!0}}prepareQueryParams(e){let t=new URLSearchParams({format:"JSON",method:e.method,application_key:this.apiKey});return e.sessionKey!==void 0&&t.append("session_key",e.sessionKey),(0,vd.default)(e.queryParams).forEach(([i,o])=>t.append(i,typeof o=="string"?o:JSON.stringify(o))),t}};var md=P(le(),1),bd=P(Ie(),1);import{ErrorCategory as pI,now as hI,safeStorage as or,debounceFn as gd}from"@vkontakte/videoplayer-shared/es2024";var et="thinonestat_events",yo=r=>e=>e.client_time+r>=hI(),rt=class{constructor(e){this.unsaltedStorage=[];this.isPaused=!1;this.isUrgent=e=>{let{event_name:t}=e;return(0,md.default)(["watch_coverage","watch_coverage_live","watched_n","playback_started"],t)};this.params=e,this.api=e.api,this.error$=e.error$,this.userSalt=e.userSalt,this.loggerDebugLog=e.debugLogger.createComponentLog("stat logger"),this.firstFlush=gd(()=>this.safeFlush(),this.params.config.firstFlushTime,{maxWait:this.params.config.firstFlushTime});let t=or.isPersistent()?this.params.config.flushMaxWait:0;this.debouncedFlush=gd(()=>this.safeFlush(),this.params.config.flushDebounceTime,{maxWait:t}),this.subscription=this.api.authorized$.subscribe(i=>{i&&this.debouncedFlush()}),this.housekeepStorage()}safeFlush(){try{this.flush()}catch(e){this.error$.next({id:"LoggerError",category:pI.WTF,message:String(e)??"Unknown logger error",thrown:e})}}readFromStorage(){let e=or.get(et);try{return e?JSON.parse(e):{}}catch{}return{}}addToStorage(e){if(!this.userSalt){this.unsaltedStorage.push(e);return}let t=this.readFromStorage(),o=(t[this.userSalt]??[]).filter(yo(this.params.config.storageExpiration));or.set(et,JSON.stringify({...t,[this.userSalt]:[...o,e]}))}getFromStorage(){return this.userSalt?(this.readFromStorage()[this.userSalt]??[]).filter(yo(this.params.config.storageExpiration)):this.unsaltedStorage}markStorageSent(){if(!this.userSalt){this.unsaltedStorage=[];return}let e=this.readFromStorage();delete e[this.userSalt],or.set(et,JSON.stringify(e))}housekeepStorage(){let e=this.readFromStorage();for(let[t,i]of(0,bd.default)(e)){let o=i.filter(yo(this.params.config.storageExpiration));o.length?e[t]=o:delete e[t],this.loggerDebugLog({message:`${i.length} retrieved from storage, ${o.length} of them actual`})}or.set(et,JSON.stringify(e))}log(e){this.addToStorage(e),!this.isPaused&&(this.isUrgent(e)?this.flush():this.lastVsid!==e.vsid?this.firstFlush():this.debouncedFlush(),this.lastVsid=e.vsid)}flush({wantBeacon:e,clearStorage:t}={wantBeacon:!1,clearStorage:!0}){let i=this.getFromStorage();i.length!==0&&(this.api.authorized$.getValue()?(e&&this.params.config.useBeacon?(this.loggerDebugLog({message:`Flushing ${i.length} events through beacon`}),this.api.logBeacon(i)):(this.loggerDebugLog({message:`Flushing ${i.length} events`}),this.api.logRequest(i)),t&&this.markStorageSent()):this.api.authorize(),this.firstFlush.cancel(),this.debouncedFlush.cancel())}pause(){this.isPaused=!0,this.debouncedFlush.cancel()}resume(){this.isPaused=!1,this.debouncedFlush()}destroy(){this.subscription.unsubscribe(),this.firstFlush.cancel(),this.debouncedFlush.cancel()}};function Io(){let r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),e=new Array(36),t=0,i,o;for(o=0;o<36;o++)o===8||o===13||o===18||o===23?e[o]="-":o===14?e[o]="4":(t<=2&&(t=33554432+Math.random()*16777216|0),i=t&15,t=t>>4,e[o]=r[o===19?i&3|8:i]);return e.join("")}var tt=class{constructor(e){this.offset=void 0;this.offset=e}getOffset(){return this.offset??0}setOffset(e){this.offset=e}now(){return Date.now()+(this.offset??0)}date(e=new Date){return e.setTime(e.getTime()+(this.offset??0)),e}addServerTime(e,t){let i=Date.now(),o=e-i-t/2;if(Math.abs(o)<1e3){this.offset=0;return}this.offset===void 0?this.offset=Math.round(o):this.offset=Math.round(.2*o+(1-.2)*this.offset)}};import{PlaybackState as yd}from"@vkontakte/videoplayer-core/es2024";import{Observable as vI,Subscription as gI,ValueSubject as mI,Subject as So,fromEvent as bI,isNullable as Id,merge as _o,filter as Sd,filterChanged as _d}from"@vkontakte/videoplayer-shared/es2024";var Ed=(r,e)=>new vI(t=>{let i=new gI,o=new mI(void 0),n;i.add(r.info.isLive$.pipe(_d()).subscribe(A=>{n&&(n.unsubscribe(),o.next(void 0)),A?n=r.info.liveTime$.pipe(_d()).subscribe(o):n=r.info.position$.subscribe(o),i.add(n)}));let{playing$:s,paused$:u,ended$:l,looped$:d}=r.events,p=r.events.willSeek$.pipe(Sd(()=>r.info.playbackState$.getValue()===yd.PLAYING)),h=r.events.seeked$.pipe(Sd(()=>r.info.playbackState$.getValue()===yd.PLAYING)),c=!1,f=new So;i.add(p.subscribe(()=>{c||f.next(),c=!0})).add(h.subscribe(()=>c=!1));let v=_o(bI(window,"beforeunload"),r.events.willDestruct$),g,b=()=>g=o.getValue(),m=()=>{let A=o.getValue();Id(g)||Id(A)||g===A||(t.next({from:g,to:A}),g=void 0)},y=new So,B=new So,F=_o(s,f,y),_=_o(u,h,v,l,d,B);if(i.add(F.subscribe(b)).add(_.subscribe(m)),e.heartbeatInterval&&isFinite(e.heartbeatInterval)){let A=[],Md=e.heartbeatInterval*1e3,Vd=()=>{B.next(),y.next()};i.add(F.subscribe(()=>{let ot=window.setTimeout(Vd,Md);A.push(ot)})).add(_.subscribe(()=>{A.forEach(ot=>{window.clearTimeout(ot)}),A=[]}))}return i});import{Subscription as yI}from"@vkontakte/videoplayer-core/es2024";import{Observable as II}from"@vkontakte/videoplayer-shared/es2024";var Pd=(r,e)=>new II(t=>{let i=new yI,o=1e4,n=0;return i.add(r.info.position$.subscribe(()=>{let s=e.getTotalViewTime()*1e3;s>n&&s%o===0&&(n=s,t.next({target_duration:o,current_tvt:s}))})),i});import{Observable as SI,Subscription as _I,merge as Td}from"@vkontakte/videoplayer-shared/es2024";var Od=r=>new SI(e=>{let t=new _I,i=0,o=1,n=0,s=!1,u=!1,l=()=>{if(!s)return;let _=Date.now();n+=(_-i)*o,i=_},d=()=>{(!s||u)&&(i=Date.now(),s=!0,u=!1)},p=()=>{s&&(l(),s=!1)},h=()=>{s&&(l(),s=!1,u=!0)},c=_=>{s&&l(),o=_,i=Date.now()},{started$:f,playing$:v,paused$:g,willSeek$:b,ended$:m,willDestruct$:y}=r.events,{currentPlaybackRate$:B}=r.info;t.add(b.subscribe(h)).add(Td(f,v).subscribe(d)).add(Td(g,m,y).subscribe(p)).add(B.subscribe(c));let F=()=>{let _=n;return s&&(_+=(Date.now()-i)*o),Math.floor(_/1e3)};return e.next(F),t});import{assertNever as wd}from"@vkontakte/videoplayer-shared/es2024";import{Surface as we,VideoFormat as E,VideoQuality as M}from"@vkontakte/videoplayer-core/es2024";var Eo=r=>{if(r!==void 0)switch(r){case E.MPEG:return"MP4";case E.DASH:case E.DASH_LIVE:return"DASH";case E.DASH_SEP:return"DASH_SEP";case E.DASH_ONDEMAND:return"ONDEMAND_DASH";case E.HLS_ONDEMAND:return"ONDEMAND_HLS";case E.HLS:case E.HLS_LIVE:return"HLS";case E.DASH_WEBM:case E.DASH_LIVE_WEBM:return"WEBM";case E.DASH_LIVE_CMAF:return"ONDEMAND_DASH_LIVE";case E.HLS_LIVE_CMAF:return"ONDEMAND_HLS_LIVE";case E.WEB_RTC_LIVE:return"WEBRTC";case E.DASH_WEBM_AV1:return"AV1";case E.DASH_STREAMS:return"MULTI_DASH";default:return wd(r)}},Y=r=>{if(r!==void 0)switch(r){case M.Q_144P:return"144p";case M.Q_240P:return"240p";case M.Q_360P:return"360p";case M.Q_480P:return"480p";case M.Q_720P:return"720p";case M.Q_1080P:return"1080p";case M.Q_1440P:return"1440p";case M.Q_2160P:return"2160p";case M.INVARIANT:case M.Q_576P:case M.Q_4320P:return"UNKNOWN";default:return wd(r)}},Ad=r=>{if(r!==void 0)switch(r){case"MP4":case"ONDEMAND_DASH":case"ONDEMAND_DASH_LIVE":case"ONDEMAND_HLS":case"ONDEMAND_HLS_LIVE":case"MULTI_DASH":case"WEBM":case"AV1":return"vod";case"DASH":case"HLS":case"WEBRTC":return"live";default:return}},qd=(r,e,t)=>{if(r&&e)switch(r){case E.MPEG:return t&&e[r]&&e[r][t];default:return e[r]?.url}},xd=r=>{if(r!==void 0)switch(r){case we.NONE:return;case we.INLINE:return"inline";case we.FULLSCREEN:return"fullscreen";case we.SECOND_SCREEN:return"chromecast";case we.PIP:return"pip_external"}},Rd=r=>{if(r!==void 0)return r===we.INVISIBLE?"background":"foreground"};var Po=P(so(),1),Cd=()=>(0,Po.default)(Math.floor(Math.random()*2**32).toString(36),13,"0"),Nd=()=>(0,Po.default)(Math.floor(Math.random()*2**64).toString(36),13,"0");var qI="_thin-one-stat_",Dd=`${qI}deviceId`,xI=()=>{let r=new Oo;return{subscription:r,subscribe:(e,t)=>{e&&r.add(e.subscribe(t))}}},it=class{constructor(e,t){this.debugLogger=new OI;this.thinOneStatDebugLog=this.debugLogger.createComponentLog("ThinOneStat");this.eventNumber=1;this.seekAction$=new To("unknown");this.vsid$=new To(void 0);this.isid$=new To(void 0);this.statContext=e,this.config=pd(t.config??{}),this.subscription=new Oo,this.config.synchronizeTime&&(this.timeSynchronisation=new tt);let i=new AI,o=Ld.get(Dd);this.statContext.deviceId?this.deviceId=this.statContext.deviceId:o?this.deviceId=o:(this.deviceId=Io(),Ld.set(Dd,this.deviceId)),this.resetViewSession(),t.useIsid&&this.isid$.next(t.isid??Nd());let n=new Zr({error$:i,config:this.config,timeSynchronisation:this.timeSynchronisation});this.api=new Jr({config:this.config,apiTransport:n,error$:i,deviceId:this.deviceId,refreshAuthToken:t.refreshAuthToken}),this.logger=new rt({config:this.config,debugLogger:this.debugLogger,api:this.api,error$:i,userSalt:t.userSalt});let{isEmbed:s,topOrigin:u}=PI();this.isEmbed=s,this.embedHostname=u?new URL(u).hostname:void 0}authorize(e){return this.api.authorize(e)}updateContext(e){this.statContext={...this.statContext,...e}}attachTo(e){let t=new Oo,i=(o,n)=>t.add(o.subscribe(n));return i(Od(e),o=>{this.getTotalViewTime=o}),i(e.info.isLive$,o=>this.isLive=o),i(e.info.position$,o=>this.position=o),i(e.info.hostname$,o=>this.cdnHostname=o),i(Ed(e,{heartbeatInterval:this.config.watchCoverageHeartbeatInterval}),o=>{let n=Math.round(o.from*1e3),s=Math.round(o.to*1e3),u={watch_interval:`${n}-${s}`,in_history:!!this.statContext.inHistory,content_type:Eo(e.info.currentFormat$.getValue()),playback_quality:Y(e.info.currentQuality$.getValue()),recom_info:this.statContext.recomInfo};if(!e.info.isLive$.getValue())this.logWatchCoverage(u);else{let d=e.info.atLiveEdge$.getValue();this.logWatchCoverageLive({...u,live:!!d})}}),i(Pd(e,{getTotalViewTime:this.getTotalViewTime}),o=>{this.logWatchedN(o)}),i(wI(e.events.willStart$,e.events.looped$),()=>{let o={isid:this.isid$.getValue(),stream_profile:Ad(Eo(e.info.currentFormat$.getValue())),dpi:Ae.display.pixelRatio,web_layout:Ae.device.isMobile?"mobile":"desktop",iframe_host:this.isEmbed?this.embedHostname??void 0:null,from_downloads:!0,preloaded:this.statContext.preload,navigation:this.statContext.navigation,recom_info:this.statContext.recomInfo};this.logStartSession(o)}),i(e.events.willReady$,()=>{if(this.statContext.preload){let o=e.info.currentFormat$.getValue(),n=e.info.availableSources$.getValue(),s=e.info.currentBuffer$.getValue(),u=e.info.currentQuality$.getValue(),l={target_buffer_time:s?s.end-s.start:void 0,playback_url:qd(o,n,u),playback_quality:Y(u)};this.logPreloadStarted(l)}}),i(e.events.ready$,()=>{if(this.statContext.preload){let o=e.info.currentBuffer$.getValue(),n={buffer_time:o?o.end-o.start:void 0};this.logPreloadEnded(n)}}),i(e.events.playing$,()=>{this.logPlay()}),i(e.info.playbackState$,o=>{if(o===kd.PLAYING){let n=e.info.currentBuffer$.getValue(),s={buffer_time:n?n.end-n.start:void 0};if(this.logPlaying(s),this.isStarted)this.logResume();else{this.isStarted=!0;let u=e.info.currentQuality$.getValue(),l=e.info.isAutoQualityEnabled$.getValue(),d=e.info.muted$.getValue(),p=e.info.volume$.getValue(),h=e.info.surface$.getValue(),c=e.info.availableTextTracks$.getValue(),f=e.info.currentTextTrack$.getValue(),v=e.info.currentAudioStream$.getValue(),g=e.info.currentPlaybackRate$.getValue(),b={playback_quality:Y(u),user_quality:l?"auto":Y(u),player_width:0,player_height:0,muted:d,sound_volume:p,buffer_time:n?n.end-n.start:void 0,mode:xd(h),visibility:Rd(h),subtitles_enabled:!!f,auto_subtitles:!!c.find(({id:m})=>m===f)?.isAuto,audio_track_lang:v?.language,playback_rate:g,recom_info:this.statContext.recomInfo};this.logPlaybackStarted(b)}}else o===kd.PAUSED&&this.logPause()}),i(e.events.willSeek$,({to:o})=>{let n={target_position:o,seek_type:this.seekAction$.getValue()};this.logSeeking(n)}),i(e.events.seeked$,()=>{let n={target_position:e.info.position$.getValue(),seek_type:this.seekAction$.getValue()};this.logSeeked(n),this.seekAction$.next("unknown")}),i(e.info.isBuffering$,o=>{o&&this.logShowLoader()}),i(e.info.currentQuality$,o=>{if(o){let n=e.info.isAutoQualityEnabled$.getValue(),s=e.info.currentVideoStream$.getValue()?.codec,u=e.info.currentAudioStream$.getValue()?.codec,l={user_quality:n?"auto":Y(o),playback_quality:Y(o),download_quality:Y(o),codec_info:s&&u?`${s},${u}`:void 0,manual_switch:!n};this.logQualityChanged(l)}}),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToUi(e){let{subscribe:t,subscription:i}=xI();return t(e.actionSeek$,this.seekAction$),this.subscription.add(i),i}getDeviceId(){return this.deviceId}resetViewSession(){this.thinOneStatDebugLog({message:"VSID reset"}),this.vsid$.next(Cd()),this.eventNumber=0}destroy(){this.api.destroy()}createRequiredParams(e){let t=this.vsid$.getValue();return EI(t),{vsid:t,uv_movie_id:this.statContext.movieId,user_id:this.statContext.userId,uv_user_id:this.statContext.uvUserId,device_id:this.statContext.deviceId,event_name:e,client_time:Date.now(),application:`@vkontakte/videoplayer-statistics:${Q}`,platform:`web:${this.config.alwaysSendDesktop||!Ae.device.isMobile?"desktop":"mobile"}`,product:this.statContext.product,event_number:this.eventNumber++,playback_position:this.isLive?void 0:Math.round(this.position),current_tvt:this.getTotalViewTime(),cdn_host:this.cdnHostname}}createRequiredFatParams(){return{stats_version:Q,browser:Ae.browser.current,browser_version:"",os:Ae.device.current,os_version:"",device_type:Ae.device.isMobile?"mobile":"desktop",navigation:this.statContext.navigation}}log(e,t,i=!1){let o=this.createRequiredParams(e),n={};i&&(n=this.createRequiredFatParams()),this.logger.log({...o,...n,...t})}logWatchCoverage(e){this.log("watch_coverage",e,!0)}logWatchCoverageLive(e){this.log("watch_coverage_live",e,!0)}logWatchedN(e){this.log("watched_n",e,!0)}logStartSession(e){this.log("start_session",e,!0)}logPreloadStarted(e){this.log("preload_started",e)}logPreloadEnded(e){this.log("preload_ended",e)}logPlaybackStarted(e){this.log("playback_started",e,!0)}logPlay(){this.log("play")}logPlaying(e){this.log("playing",e)}logPause(){this.log("pause")}logResume(){this.log("resume")}logSeeking(e){this.log("seeking",e)}logSeeked(e){this.log("seeked",e)}logShowLoader(){this.log("show_loader")}logQualityChanged(e){this.log("quality_changed",e)}resubscribeBeforeunload(){this.beforeunloadSubscription?.unsubscribe(),this.beforeunloadSubscription=TI(window,"beforeunload").subscribe(()=>{}),this.subscription.add(this.beforeunloadSubscription)}};export{Ue as ApiEnv,Ft as ConnectionType,Bt as ContentType,Ia as InteractiveInterfaceClick,vo as OneStat,Ut as Quality,jt as SeekAction,$d as ThinOneStat,pr as VERSION};