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