@vkontakte/videoplayer-statistics 1.0.81-dev.faa4933c.0 → 1.0.82-dev.39d52b6a.0

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