var Et=class{constructor(){this._partials=new Float64Array(32),this._n=0}add(t){let n=this._partials,r=0;for(let i=0;i0){for(a=t[--n];n>0&&(r=a,i=t[--n],a=r+i,o=i-(a-r),!o););n>0&&(o<0&&t[n-1]<0||o>0&&t[n-1]>0)&&(i=o*2,r=a+i,i==r-a&&(a=r))}return a}};function*lu(e){for(let t of e)yield*t}function Zt(e){return Array.from(lu(e))}var fu={value:()=>{}};function Da(){for(var e=0,t=arguments.length,n={},r;e=0&&(r=n.slice(i+1),n=n.slice(0,i)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}nr.prototype=Da.prototype={constructor:nr,on:function(e,t){var n=this._,r=cu(e+"",n),i,o=-1,a=r.length;if(arguments.length<2){for(;++o0)for(var n=new Array(i),r=0,i,o;r=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),Bi.hasOwnProperty(t)?{space:Bi[t],local:e}:e}function du(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===rr&&t.documentElement.namespaceURI===rr?t.createElement(e):t.createElementNS(n,e)}}function pu(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function ir(e){var t=$e(e);return(t.local?pu:du)(t)}function mu(){}function bt(e){return e==null?mu:function(){return this.querySelector(e)}}function Oa(e){typeof e!="function"&&(e=bt(e));for(var t=this._groups,n=t.length,r=new Array(n),i=0;i=y&&(y=g+1);!(v=p[y])&&++y<_;);E._next=v||null}}return a=new re(a,r),a._enter=s,a._exit=l,a}function Su(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Za(){return new re(this._exit||this._groups.map(ar),this._parents)}function Ha(e,t,n){var r=this.enter(),i=this,o=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(i=t(i),i&&(i=i.selection())),n==null?o.remove():n(o),r&&i?r.merge(i).order():i}function Ba(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,o=r.length,a=Math.min(i,o),s=new Array(i),l=0;l=0;)(a=r[i])&&(o&&a.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(a,o),o=a);return this}function za(e){e||(e=Tu);function t(d,u){return d&&u?e(d.__data__,u.__data__):!d-!u}for(var n=this._groups,r=n.length,i=new Array(r),o=0;ot?1:e>=t?0:NaN}function Wa(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Va(){return Array.from(this)}function Ga(){for(var e=this._groups,t=0,n=e.length;t1?this.each((t==null?Pu:typeof t=="function"?Fu:Mu)(e,t,n??"")):ft(this.node(),e)}function ft(e,t){return e.style.getPropertyValue(t)||sr(e).getComputedStyle(e,null).getPropertyValue(t)}function Lu(e){return function(){delete this[e]}}function Uu(e,t){return function(){this[e]=t}}function Zu(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function Qa(e,t){return arguments.length>1?this.each((t==null?Lu:typeof t=="function"?Zu:Uu)(e,t)):this.node()[e]}function Ja(e){return e.trim().split(/^|\s+/)}function zi(e){return e.classList||new es(e)}function es(e){this._node=e,this._names=Ja(e.getAttribute("class")||"")}es.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function ts(e,t){for(var n=zi(e),r=-1,i=t.length;++r=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function r0(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,o;n>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?fr(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?fr(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=f0.exec(e))?new Ae(t[1],t[2],t[3],1):(t=c0.exec(e))?new Ae(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=u0.exec(e))?fr(t[1],t[2],t[3],t[4]):(t=d0.exec(e))?fr(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=p0.exec(e))?Rs(t[1],t[2]/100,t[3]/100,1):(t=m0.exec(e))?Rs(t[1],t[2]/100,t[3]/100,t[4]):_s.hasOwnProperty(e)?ys(_s[e]):e==="transparent"?new Ae(NaN,NaN,NaN,0):null}function ys(e){return new Ae(e>>16&255,e>>8&255,e&255,1)}function fr(e,t,n,r){return r<=0&&(e=t=n=NaN),new Ae(e,t,n,r)}function g0(e){return e instanceof xn||(e=ct(e)),e?(e=e.rgb(),new Ae(e.r,e.g,e.b,e.opacity)):new Ae}function Bt(e,t,n,r){return arguments.length===1?g0(e):new Ae(e,t,n,r??1)}function Ae(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}lr(Ae,Bt,Vi(xn,{brighter(e){return e=e==null?ur:Math.pow(ur,e),new Ae(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?mn:Math.pow(mn,e),new Ae(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Ae(At(this.r),At(this.g),At(this.b),dr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Es,formatHex:Es,formatHex8:_0,formatRgb:bs,toString:bs}));function Es(){return`#${Rt(this.r)}${Rt(this.g)}${Rt(this.b)}`}function _0(){return`#${Rt(this.r)}${Rt(this.g)}${Rt(this.b)}${Rt((isNaN(this.opacity)?1:this.opacity)*255)}`}function bs(){let e=dr(this.opacity);return`${e===1?"rgb(":"rgba("}${At(this.r)}, ${At(this.g)}, ${At(this.b)}${e===1?")":`, ${e})`}`}function dr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function At(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Rt(e){return e=At(e),(e<16?"0":"")+e.toString(16)}function Rs(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new He(e,t,n,r)}function Ss(e){if(e instanceof He)return new He(e.h,e.s,e.l,e.opacity);if(e instanceof xn||(e=ct(e)),!e)return new He;if(e instanceof He)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),o=Math.max(t,n,r),a=NaN,s=o-i,l=(o+i)/2;return s?(t===o?a=(n-r)/s+(n0&&l<1?0:a,new He(a,s,l,e.opacity)}function Ts(e,t,n,r){return arguments.length===1?Ss(e):new He(e,t,n,r??1)}function He(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}lr(He,Ts,Vi(xn,{brighter(e){return e=e==null?ur:Math.pow(ur,e),new He(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?mn:Math.pow(mn,e),new He(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new Ae(Gi(e>=240?e-240:e+120,i,r),Gi(e,i,r),Gi(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new He(As(this.h),cr(this.s),cr(this.l),dr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=dr(this.opacity);return`${e===1?"hsl(":"hsla("}${As(this.h)}, ${cr(this.s)*100}%, ${cr(this.l)*100}%${e===1?")":`, ${e})`}`}}));function As(e){return e=(e||0)%360,e<0?e+360:e}function cr(e){return Math.max(0,Math.min(1,e||0))}function Gi(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}function Yi(e,t,n,r,i){var o=e*e,a=o*e;return((1-3*e+3*o-a)*t+(4-6*o+3*a)*n+(1+3*e+3*o-3*a)*r+a*i)/6}function ks(e){var t=e.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,t-1):Math.floor(n*t),i=e[r],o=e[r+1],a=r>0?e[r-1]:2*i-o,s=r()=>e;function w0(e,t){return function(n){return e+n*t}}function v0(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function Ds(e){return(e=+e)==1?pr:function(t,n){return n-t?v0(t,n,e):ji(isNaN(t)?n:t)}}function pr(e,t){var n=t-e;return n?w0(e,n):ji(isNaN(e)?t:e)}var mr=function e(t){var n=Ds(t);function r(i,o){var a=n((i=Bt(i)).r,(o=Bt(o)).r),s=n(i.g,o.g),l=n(i.b,o.b),c=pr(i.opacity,o.opacity);return function(f){return i.r=a(f),i.g=s(f),i.b=l(f),i.opacity=c(f),i+""}}return r.gamma=e,r}(1);function Os(e){return function(t){var n=t.length,r=new Array(n),i=new Array(n),o=new Array(n),a,s;for(a=0;an&&(o=t.slice(n,o),s[a]?s[a]+=o:s[++a]=o),(r=r[0])===(i=i[0])?s[a]?s[a]+=i:s[++a]=i:(s[++a]=null,l.push({i:a,x:Pe(r,i)})),n=Ki.lastIndex;return n180?f+=360:f-c>180&&(c+=360),u.push({i:d.push(i(d)+"rotate(",null,r)-2,x:Pe(c,f)})):f&&d.push(i(d)+"rotate("+f+r)}function s(c,f,d,u){c!==f?u.push({i:d.push(i(d)+"skewX(",null,r)-2,x:Pe(c,f)}):f&&d.push(i(d)+"skewX("+f+r)}function l(c,f,d,u,h,_){if(c!==d||f!==u){var x=h.push(i(h)+"scale(",null,",",null,")");_.push({i:x-4,x:Pe(c,d)},{i:x-2,x:Pe(f,u)})}else(d!==1||u!==1)&&h.push(i(h)+"scale("+d+","+u+")")}return function(c,f){var d=[],u=[];return c=e(c),f=e(f),o(c.translateX,c.translateY,f.translateX,f.translateY,d,u),a(c.rotate,f.rotate,d,u),s(c.skewX,f.skewX,d,u),l(c.scaleX,c.scaleY,f.scaleX,f.scaleY,d,u),c=f=null,function(h){for(var _=-1,x=u.length,p;++_=0&&e._call.call(void 0,t),e=e._next;--qt}function Fs(){St=(_r=vn.now())+wr,qt=_n=0;try{Zs()}finally{qt=0,T0(),St=0}}function S0(){var e=vn.now(),t=e-_r;t>Ls&&(wr-=t,_r=e)}function T0(){for(var e,t=gr,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:gr=n);wn=e,to(r)}function to(e){if(!qt){_n&&(_n=clearTimeout(_n));var t=e-St;t>24?(e<1/0&&(_n=setTimeout(Fs,e-vn.now()-wr)),gn&&(gn=clearInterval(gn))):(gn||(_r=vn.now(),gn=setInterval(S0,Ls)),qt=1,Us(Fs))}}function yr(e,t,n){var r=new yn;return t=t==null?0:+t,r.restart(i=>{r.stop(),e(i+t)},t,n),r}var k0=Hi("start","end","cancel","interrupt"),I0=[],qs=0,Hs=1,br=2,Er=3,Bs=4,Rr=5,bn=6;function ut(e,t,n,r,i,o){var a=e.__transition;if(!a)e.__transition={};else if(n in a)return;D0(e,n,{name:t,index:r,group:i,on:k0,tween:I0,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:qs})}function Rn(e,t){var n=le(e,t);if(n.state>qs)throw new Error("too late; already scheduled");return n}function pe(e,t){var n=le(e,t);if(n.state>Er)throw new Error("too late; already running");return n}function le(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function D0(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=vr(o,0,n.time);function o(c){n.state=Hs,n.timer.restart(a,n.delay,n.time),n.delay<=c&&a(c-n.delay)}function a(c){var f,d,u,h;if(n.state!==Hs)return l();for(f in r)if(h=r[f],h.name===n.name){if(h.state===Er)return yr(a);h.state===Bs?(h.state=bn,h.timer.stop(),h.on.call("interrupt",e,e.__data__,h.index,h.group),delete r[f]):+fbr&&r.state=0&&(t=t.slice(0,n)),!t||t==="start"})}function X0(e,t,n){var r,i,o=K0(t)?Rn:pe;return function(){var a=o(this,e),s=a.on;s!==r&&(i=(r=s).copy()).on(t,n),a.on=i}}function Js(e,t){var n=this._id;return arguments.length<2?le(this.node(),n).on.on(e):this.each(X0(n,e,t))}function $0(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function el(){return this.on("end.remove",$0(this._id))}function tl(e){var t=this._name,n=this._id;typeof e!="function"&&(e=bt(e));for(var r=this._groups,i=r.length,o=new Array(i),a=0;a0?1:e<0?-1:0},Ee=Math.sqrt;function Ir(e){return e>1?0:e<-1?G:Math.acos(e)}function Ie(e){return e>1?ye:e<-1?-ye:Math.asin(e)}function io(e){return(e=z(e/2))*e}function be(){}function Dr(e,t){e&&_l.hasOwnProperty(e.type)&&_l[e.type](e,t)}var gl={Feature:function(e,t){Dr(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,r=-1,i=n.length;++rG&&(e-=Math.round(e/Se)*Se),[e,t]}ao.invert=ao;function so(e,t,n){return(e%=Se)?t||n?Dn(yl(e),El(t,n)):yl(e):t||n?El(t,n):ao}function vl(e){return function(t,n){return t+=e,$(t)>G&&(t-=Math.round(t/Se)*Se),[t,n]}}function yl(e){var t=vl(e);return t.invert=vl(-e),t}function El(e,t){var n=W(e),r=z(e),i=W(t),o=z(t);function a(s,l){var c=W(l),f=W(s)*c,d=z(s)*c,u=z(l),h=u*n+f*r;return[xe(d*i-h*o,f*n-u*r),Ie(h*i+d*o)]}return a.invert=function(s,l){var c=W(l),f=W(s)*c,d=z(s)*c,u=z(l),h=u*i-d*o;return[xe(d*i+u*o,f*n+h*r),Ie(h*n-f*r)]},a}function Cr(e){e=so(e[0]*K,e[1]*K,e.length>2?e[2]*K:0);function t(n){return n=e(n[0]*K,n[1]*K),n[0]*=oe,n[1]*=oe,n}return t.invert=function(n){return n=e.invert(n[0]*K,n[1]*K),n[0]*=oe,n[1]*=oe,n},t}function Rl(e,t,n,r,i,o){if(n){var a=W(t),s=z(t),l=r*n;i==null?(i=t+r*Se,o=t-l/2):(i=bl(a,i),o=bl(a,o),(r>0?io)&&(i+=r*Se));for(var c,f=i;r>0?f>o:f1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}function Vt(e,t){return $(e[0]-t[0])=0;--s)i.point((d=f[s])[0],d[1]);else r(u.x,u.p.x,-1,i);u=u.p}u=u.o,f=u.z,h=!h}while(!u.v);i.lineEnd()}}}function Al(e){if(t=e.length){for(var t,n=0,r=e[0],i;++n=0?1:-1,k=T*A,R=k>G,M=p*w;if(l.add(xe(M*T*z(k),m*b+M*W(k))),a+=R?A+T*Se:A,R^_>=n^E>=n){var O=Wt(We(h),We(y));In(O);var F=Wt(o,O);In(F);var S=(R^A>=0?-1:1)*Ie(F[2]);(r>S||r===S&&(O[0]||O[1]))&&(s+=R^A>=0?1:-1)}}return(a<-j||a0){for(l||(i.polygonStart(),l=!0),i.lineStart(),w=0;w1&&E&2&&v.push(v.pop().concat(v.shift())),f.push(v.filter(md))}}return u}}function md(e){return e.length>1}function hd(e,t){return((e=e.x)[0]<0?e[1]-ye-j:ye-e[1])-((t=t.x)[0]<0?t[1]-ye-j:ye-t[1])}var fo=Lr(function(){return!0},xd,_d,[-G,-ye]);function xd(e){var t=NaN,n=NaN,r=NaN,i;return{lineStart:function(){e.lineStart(),i=1},point:function(o,a){var s=o>0?G:-G,l=$(o-t);$(l-G)0?ye:-ye),e.point(r,n),e.lineEnd(),e.lineStart(),e.point(s,n),e.point(o,n),i=0):r!==s&&l>=G&&($(t-r)j?hl((z(t)*(o=W(r))*z(n)-z(r)*(i=W(t))*z(e))/(i*o*a)):(t+r)/2}function _d(e,t,n,r){var i;if(e==null)i=n*ye,r.point(-G,i),r.point(0,i),r.point(G,i),r.point(G,0),r.point(G,-i),r.point(0,-i),r.point(-G,-i),r.point(-G,0),r.point(-G,i);else if($(e[0]-t[0])>j){var o=e[0]0,i=$(t)>j;function o(f,d,u,h){Rl(h,e,n,u,f,d)}function a(f,d){return W(f)*W(d)>t}function s(f){var d,u,h,_,x;return{lineStart:function(){_=h=!1,x=1},point:function(p,m){var g=[p,m],y,E=a(p,m),v=r?E?0:c(p,m):E?c(p+(p<0?G:-G),m):0;if(!d&&(_=h=E)&&f.lineStart(),E!==h&&(y=l(d,g),(!y||Vt(d,y)||Vt(g,y))&&(g[2]=1)),E!==h)x=0,E?(f.lineStart(),y=l(g,d),f.point(y[0],y[1])):(y=l(d,g),f.point(y[0],y[1],2),f.lineEnd()),d=y;else if(i&&d&&r^E){var w;!(v&u)&&(w=l(g,d,!0))&&(x=0,r?(f.lineStart(),f.point(w[0][0],w[0][1]),f.point(w[1][0],w[1][1]),f.lineEnd()):(f.point(w[1][0],w[1][1]),f.lineEnd(),f.lineStart(),f.point(w[0][0],w[0][1],3)))}E&&(!d||!Vt(d,g))&&f.point(g[0],g[1]),d=g,h=E,u=v},lineEnd:function(){h&&f.lineEnd(),d=null},clean:function(){return x|(_&&h)<<1}}}function l(f,d,u){var h=We(f),_=We(d),x=[1,0,0],p=Wt(h,_),m=Tn(p,p),g=p[0],y=m-g*g;if(!y)return!u&&f;var E=t*m/y,v=-t*g/y,w=Wt(x,p),b=kn(x,E),A=kn(p,v);Nr(b,A);var T=w,k=Tn(b,T),R=Tn(T,T),M=k*k-R*(Tn(b,b)-1);if(!(M<0)){var O=Ee(M),F=kn(T,(-k-O)/R);if(Nr(F,b),F=Sn(F),!u)return F;var S=f[0],C=d[0],U=f[1],Z=d[1],J;C0^F[1]<($(F[0]-S)G^(S<=F[0]&&F[0]<=C)){var V=kn(T,(-k+O)/R);return Nr(V,b),[F,Sn(V)]}}}function c(f,d){var u=r?e:G-e,h=0;return f<-u?h|=1:f>u&&(h|=2),d<-u?h|=4:d>u&&(h|=8),h}return Lr(a,s,o,r?[0,-e]:[-G,e-G])}function kl(e,t,n,r,i,o){var a=e[0],s=e[1],l=t[0],c=t[1],f=0,d=1,u=l-a,h=c-s,_;if(_=n-a,!(!u&&_>0)){if(_/=u,u<0){if(_0){if(_>d)return;_>f&&(f=_)}if(_=i-a,!(!u&&_<0)){if(_/=u,u<0){if(_>d)return;_>f&&(f=_)}else if(u>0){if(_0)){if(_/=h,h<0){if(_0){if(_>d)return;_>f&&(f=_)}if(_=o-s,!(!h&&_<0)){if(_/=h,h<0){if(_>d)return;_>f&&(f=_)}else if(h>0){if(_0&&(e[0]=a+f*u,e[1]=s+f*h),d<1&&(t[0]=a+d*u,t[1]=s+d*h),!0}}}}}var On=1e9,Ur=-On;function co(e,t,n,r){function i(c,f){return e<=c&&c<=n&&t<=f&&f<=r}function o(c,f,d,u){var h=0,_=0;if(c==null||(h=a(c,d))!==(_=a(f,d))||l(c,f)<0^d>0)do u.point(h===0||h===3?e:n,h>1?r:t);while((h=(h+d+4)%4)!==_);else u.point(f[0],f[1])}function a(c,f){return $(c[0]-e)0?0:3:$(c[0]-n)0?2:1:$(c[1]-t)0?1:0:f>0?3:2}function s(c,f){return l(c.x,f.x)}function l(c,f){var d=a(c,1),u=a(f,1);return d!==u?d-u:d===0?f[1]-c[1]:d===1?c[0]-f[0]:d===2?c[1]-f[1]:f[0]-c[0]}return function(c){var f=c,d=Pr(),u,h,_,x,p,m,g,y,E,v,w,b={point:A,lineStart:M,lineEnd:O,polygonStart:k,polygonEnd:R};function A(S,C){i(S,C)&&f.point(S,C)}function T(){for(var S=0,C=0,U=h.length;Cr&&(Te-q)*(r-V)>(ne-V)*(e-q)&&++S:ne<=r&&(Te-q)*(r-V)<(ne-V)*(e-q)&&--S;return S}function k(){f=d,u=[],h=[],w=!0}function R(){var S=T(),C=w&&S,U=(u=Zt(u)).length;(C||U)&&(c.polygonStart(),C&&(c.lineStart(),o(null,null,1,c),c.lineEnd()),U&&Fr(u,s,S,o,c),c.polygonEnd()),f=c,u=h=_=null}function M(){b.point=F,h&&h.push(_=[]),v=!0,E=!1,g=y=NaN}function O(){u&&(F(x,p),m&&E&&d.rejoin(),u.push(d.result())),b.point=A,E&&f.lineEnd()}function F(S,C){var U=i(S,C);if(h&&_.push([S,C]),v)x=S,p=C,m=U,v=!1,U&&(f.lineStart(),f.point(S,C));else if(U&&E)f.point(S,C);else{var Z=[g=Math.max(Ur,Math.min(On,g)),y=Math.max(Ur,Math.min(On,y))],J=[S=Math.max(Ur,Math.min(On,S)),C=Math.max(Ur,Math.min(On,C))];kl(Z,J,e,t,n,r)?(E||(f.lineStart(),f.point(Z[0],Z[1])),f.point(J[0],J[1]),U||f.lineEnd(),w=!1):U&&(f.lineStart(),f.point(S,C),w=!1)}g=S,y=C,E=U}return b}}var uo,po,Zr,Hr,Gt={sphere:be,point:be,lineStart:wd,lineEnd:be,polygonStart:be,polygonEnd:be};function wd(){Gt.point=yd,Gt.lineEnd=vd}function vd(){Gt.point=Gt.lineEnd=be}function yd(e,t){e*=K,t*=K,po=e,Zr=z(t),Hr=W(t),Gt.point=Ed}function Ed(e,t){e*=K,t*=K;var n=z(t),r=W(t),i=$(e-po),o=W(i),a=z(i),s=r*a,l=Hr*n-Zr*r*o,c=Zr*n+Hr*r*o;uo.add(xe(Ee(s*s+l*l),c)),po=e,Zr=n,Hr=r}function Il(e){return uo=new Et,Or(e,Gt),+uo}var mo=[null,null],bd={type:"LineString",coordinates:mo};function Nn(e,t){return mo[0]=e,mo[1]=t,Il(bd)}function Cn(e,t){var n=e[0]*K,r=e[1]*K,i=t[0]*K,o=t[1]*K,a=W(r),s=z(r),l=W(o),c=z(o),f=a*W(n),d=a*z(n),u=l*W(i),h=l*z(i),_=2*Ie(Ee(io(o-r)+a*l*io(i-n))),x=z(_),p=_?function(m){var g=z(m*=_)/x,y=z(_-m)/x,E=y*f+g*u,v=y*d+g*h,w=y*s+g*c;return[xe(v,E)*oe,xe(w,Ee(E*E+v*v))*oe]}:function(){return[n*oe,r*oe]};return p.distance=_,p}var ho=e=>e;var Yt=1/0,Br=Yt,Pn=-Yt,qr=Pn,Rd={point:Ad,lineStart:be,lineEnd:be,polygonStart:be,polygonEnd:be,result:function(){var e=[[Yt,Br],[Pn,qr]];return Pn=qr=-(Br=Yt=1/0),e}};function Ad(e,t){ePn&&(Pn=e),tqr&&(qr=t)}var xo=Rd;function Mn(e){return function(t){var n=new go;for(var r in e)n[r]=e[r];return n.stream=t,n}}function go(){}go.prototype={constructor:go,point:function(e,t){this.stream.point(e,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function _o(e,t,n){var r=e.clipExtent&&e.clipExtent();return e.scale(150).translate([0,0]),r!=null&&e.clipExtent(null),Or(n,e.stream(xo)),t(xo.result()),r!=null&&e.clipExtent(r),e}function wo(e,t,n){return _o(e,function(r){var i=t[1][0]-t[0][0],o=t[1][1]-t[0][1],a=Math.min(i/(r[1][0]-r[0][0]),o/(r[1][1]-r[0][1])),s=+t[0][0]+(i-a*(r[1][0]+r[0][0]))/2,l=+t[0][1]+(o-a*(r[1][1]+r[0][1]))/2;e.scale(150*a).translate([s,l])},n)}function Dl(e,t,n){return wo(e,[[0,0],t],n)}function Ol(e,t,n){return _o(e,function(r){var i=+t,o=i/(r[1][0]-r[0][0]),a=(i-o*(r[1][0]+r[0][0]))/2,s=-o*r[0][1];e.scale(150*o).translate([a,s])},n)}function Nl(e,t,n){return _o(e,function(r){var i=+t,o=i/(r[1][1]-r[0][1]),a=-o*r[0][0],s=(i-o*(r[1][1]+r[0][1]))/2;e.scale(150*o).translate([a,s])},n)}var Cl=16,Sd=W(30*K);function vo(e,t){return+t?kd(e,t):Td(e)}function Td(e){return Mn({point:function(t,n){t=e(t,n),this.stream.point(t[0],t[1])}})}function kd(e,t){function n(r,i,o,a,s,l,c,f,d,u,h,_,x,p){var m=c-r,g=f-i,y=m*m+g*g;if(y>4*t&&x--){var E=a+u,v=s+h,w=l+_,b=Ee(E*E+v*v+w*w),A=Ie(w/=b),T=$($(w)-1)t||$((m*O+g*F)/y-.5)>.3||a*u+s*h+l*_2?S[2]%360*K:0,O()):[s*oe,l*oe,c*oe]},R.angle=function(S){return arguments.length?(d=S%360*K,O()):d*oe},R.reflectX=function(S){return arguments.length?(u=S?-1:1,O()):u<0},R.reflectY=function(S){return arguments.length?(h=S?-1:1,O()):h<0},R.precision=function(S){return arguments.length?(w=vo(b,v=S*S),F()):Ee(v)},R.fitExtent=function(S,C){return wo(R,S,C)},R.fitSize=function(S,C){return Dl(R,S,C)},R.fitWidth=function(S,C){return Ol(R,S,C)},R.fitHeight=function(S,C){return Nl(R,S,C)};function O(){var S=Pl(n,0,0,u,h,d).apply(null,t(o,a)),C=Pl(n,r-S[0],i-S[1],u,h,d);return f=so(s,l,c),b=Dn(t,C),A=Dn(f,b),w=vo(b,v),F()}function F(){return T=k=null,R}return function(){return t=e.apply(this,arguments),R.invert=t.invert&&M,O()}}function Fl(e){return function(t,n){var r=W(t),i=W(n),o=e(r*i);return o===1/0?[2,0]:[o*i*z(t),o*z(n)]}}function Ll(e){return function(t,n){var r=Ee(t*t+n*n),i=e(r),o=z(i),a=W(i);return[xe(t*o,r*a),Ie(r&&n*o/r)]}}var Wr=Fl(function(e){return(e=Ir(e))&&e/z(e)});Wr.invert=Ll(function(e){return e});function dt(e,t,n){this.k=e,this.x=t,this.y=n}dt.prototype={constructor:dt,scale:function(e){return e===1?this:new dt(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new dt(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var yo=new dt(1,0,0);Eo.prototype=dt.prototype;function Eo(e){for(;!e.__zoom;)if(!(e=e.parentNode))return yo;return e.__zoom}function $r(e){return Qr(e.map(([t,n])=>new Array(t).fill(n,0,t)))}function Qr(e){return e.reduce((t,n)=>t.concat(Array.isArray(n)?Qr(n):n),[])}var Ul=[0,1,2,3].concat(...$r([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function Q(){let e=this;function t(i){let o=e.dyn_tree,a=e.stat_desc.static_tree,s=e.stat_desc.extra_bits,l=e.stat_desc.extra_base,c=e.stat_desc.max_length,f,d,u,h,_,x,p=0;for(h=0;h<=15;h++)i.bl_count[h]=0;for(o[i.heap[i.heap_max]*2+1]=0,f=i.heap_max+1;f<573;f++)d=i.heap[f],h=o[o[d*2+1]*2+1]+1,h>c&&(h=c,p++),o[d*2+1]=h,!(d>e.max_code)&&(i.bl_count[h]++,_=0,d>=l&&(_=s[d-l]),x=o[d*2],i.opt_len+=x*(h+_),a&&(i.static_len+=x*(a[d*2+1]+_)));if(p!==0){do{for(h=c-1;i.bl_count[h]===0;)h--;i.bl_count[h]--,i.bl_count[h+1]+=2,i.bl_count[c]--,p-=2}while(p>0);for(h=c;h!==0;h--)for(d=i.bl_count[h];d!==0;)u=i.heap[--f],!(u>e.max_code)&&(o[u*2+1]!=h&&(i.opt_len+=(h-o[u*2+1])*o[u*2],o[u*2+1]=h),d--)}}function n(i,o){let a=0;do a|=i&1,i>>>=1,a<<=1;while(--o>0);return a>>>1}function r(i,o,a){let s=[],l=0,c,f,d;for(c=1;c<=15;c++)s[c]=l=l+a[c-1]<<1;for(f=0;f<=o;f++)d=i[f*2+1],d!==0&&(i[f*2]=n(s[d]++,d))}e.build_tree=function(i){let o=e.dyn_tree,a=e.stat_desc.static_tree,s=e.stat_desc.elems,l,c,f=-1,d;for(i.heap_len=0,i.heap_max=573,l=0;l=1;l--)i.pqdownheap(o,l);d=s;do l=i.heap[1],i.heap[1]=i.heap[i.heap_len--],i.pqdownheap(o,1),c=i.heap[1],i.heap[--i.heap_max]=l,i.heap[--i.heap_max]=c,o[d*2]=o[l*2]+o[c*2],i.depth[d]=Math.max(i.depth[l],i.depth[c])+1,o[l*2+1]=o[c*2+1]=d,i.heap[1]=d++,i.pqdownheap(o,1);while(i.heap_len>=2);i.heap[--i.heap_max]=i.heap[1],t(i),r(o,e.max_code,i.bl_count)}}Q._length_code=[0,1,2,3,4,5,6,7].concat(...$r([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]]));Q.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0];Q.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576];Q.d_code=function(e){return e<256?Ul[e]:Ul[256+(e>>>7)]};Q.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0];Q.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];Q.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];Q.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function me(e,t,n,r,i){let o=this;o.static_tree=e,o.extra_bits=t,o.extra_base=n,o.elems=r,o.max_length=i}var Nd=[12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227],Cd=$r([[144,8],[112,9],[24,7],[8,8]]);me.static_ltree=Qr(Nd.map((e,t)=>[e,Cd[t]]));var Pd=[0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23],Md=$r([[30,5]]);me.static_dtree=Qr(Pd.map((e,t)=>[e,Md[t]]));me.static_l_desc=new me(me.static_ltree,Q.extra_lbits,257,286,15);me.static_d_desc=new me(me.static_dtree,Q.extra_dbits,0,30,15);me.static_bl_desc=new me(null,Q.extra_blbits,0,19,7);var Fd=9,Ld=8;function Ve(e,t,n,r,i){let o=this;o.good_length=e,o.max_lazy=t,o.nice_length=n,o.max_chain=r,o.func=i}var Hl=0,Kr=1,Tt=2,Be=[new Ve(0,0,0,0,Hl),new Ve(4,4,8,4,Kr),new Ve(4,5,16,8,Kr),new Ve(4,6,32,32,Kr),new Ve(4,4,16,16,Tt),new Ve(8,16,32,32,Tt),new Ve(8,16,128,128,Tt),new Ve(8,32,128,256,Tt),new Ve(32,128,258,1024,Tt),new Ve(32,258,258,4096,Tt)],Vr=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Me=0,Gr=1,Fn=2,Yr=3,Ud=32,bo=42,jr=113,Ln=666,Ro=8,Zd=0,Ao=1,Hd=2,te=3,Xr=258,De=Xr+te+1;function Zl(e,t,n,r){let i=e[t*2],o=e[n*2];return i=3&&U[Q.bl_order[I]*2+1]===0;I--);return e.opt_len+=3*(I+1)+5+5+4,I}function Ut(I){e.pending_buf[e.pending++]=I}function fn(I){Ut(I&255),Ut(I>>>8&255)}function Jc(I){Ut(I>>8&255),Ut(I&255&255)}function _e(I,N){let D,P=N;fe>16-P?(D=I,ne|=D<>>16-fe,fe+=P-16):(ne|=I<=8&&(Ut(ne&255),ne>>>=8,fe-=8)}function tu(){_e(Ao<<1,3),Ue(256,me.static_ltree),Ea(),1+Te+10-fe<9&&(_e(Ao<<1,3),Ue(256,me.static_ltree),Ea()),Te=7}function cn(I,N){let D,P,L;if(e.dist_buf[q]=I,e.lc_buf[q]=N&255,q++,I===0?S[N*2]++:(V++,I--,S[(Q._length_code[N]+256+1)*2]++,C[Q.d_code(I)*2]++),!(q&8191)&&R>2){for(D=q*8,P=v-m,L=0;L<30;L++)D+=C[L*2]*(5+Q.extra_dbits[L]);if(D>>>=3,V8?fn(ne):fe>0&&Ut(ne&255),ne=0,fe=0}function nu(I,N,D){Ra(),Te=8,D&&(fn(N),fn(~N)),e.pending_buf.set(l.subarray(I,I+N),e.pending),e.pending+=N}function Aa(I,N,D){_e((Zd<<1)+(D?1:0),3),nu(I,N,!0)}function ru(I,N,D){let P,L,B=0;R>0?(Z.build_tree(e),J.build_tree(e),B=Li(),P=e.opt_len+3+7>>>3,L=e.static_len+3+7>>>3,L<=P&&(P=L)):P=L=N+5,N+4<=P&&I!=-1?Aa(I,N,D):L==P?(_e((Ao<<1)+(D?1:0),3),ba(me.static_ltree,me.static_dtree)):(_e((Hd<<1)+(D?1:0),3),eu(Z.max_code+1,J.max_code+1,B+1),ba(S,C)),Lt(),D&&Ra()}function lt(I){ru(m>=0?m:-1,v-m,I),m=v,t.flush_pending()}function Ui(){let I,N,D,P;do{if(P=c-b-v,P===0&&v===0&&b===0)P=o;else if(P==-1)P--;else if(v>=o+o-De){l.set(l.subarray(o,o+o),0),w-=o,v-=o,m-=o,I=h,D=I;do N=d[--D]&65535,d[D]=N>=o?N-o:0;while(--I!==0);I=o,D=I;do N=f[--D]&65535,f[D]=N>=o?N-o:0;while(--I!==0);P+=o}if(t.avail_in===0)return;I=t.read_buf(l,v+b,P),b+=I,b>=te&&(u=l[v]&255,u=(u<r-5&&(N=r-5);;){if(b<=1){if(Ui(),b===0&&I==0)return Me;if(b===0)break}if(v+=b,b=0,D=m+N,(v===0||v>=D)&&(b=v-D,v=D,lt(!1),t.avail_out===0)||v-m>=o-De&&(lt(!1),t.avail_out===0))return Me}return lt(I==4),t.avail_out===0?I==4?Fn:Me:I==4?Yr:Gr}function Sa(I){let N=T,D=v,P,L,B=A,X=v>o-De?v-(o-De):0,we=F,Ze=s,Zi=v+Xr,Ta=l[D+B-1],ka=l[D+B];A>=O&&(N>>=2),we>b&&(we=b);do if(P=I,!(l[P+B]!=ka||l[P+B-1]!=Ta||l[P]!=l[D]||l[++P]!=l[D+1])){D+=2,P++;do;while(l[++D]==l[++P]&&l[++D]==l[++P]&&l[++D]==l[++P]&&l[++D]==l[++P]&&l[++D]==l[++P]&&l[++D]==l[++P]&&l[++D]==l[++P]&&l[++D]==l[++P]&&DB){if(w=I,B=L,L>=we)break;Ta=l[D+B-1],ka=l[D+B]}}while((I=f[I&Ze]&65535)>X&&--N!==0);return B<=b?B:b}function ou(I){let N=0,D;for(;;){if(b=te&&(u=(u<=te)if(D=cn(v-w,g-te),b-=g,g<=k&&b>=te){g--;do v++,u=(u<=te&&(u=(u<4096)&&(g=te-1)),A>=te&&g<=A){P=v+b-te,D=cn(v-1-y,A-te),b-=A-1,A-=2;do++v<=P&&(u=(u<Fd||P!=Ro||D<9||D>15||N<0||N>9||B<0||B>2?-2:(I.dstate=e,a=D,o=1<9||D<0||D>2?-2:(Be[R].func!=Be[N].func&&I.total_in!==0&&(P=I.deflate(1)),R!=N&&(R=N,k=Be[R].max_lazy,O=Be[R].good_length,F=Be[R].nice_length,T=Be[R].max_chain),M=D,P)},e.deflateSetDictionary=function(I,N,D){let P=D,L,B=0;if(!N||n!=bo)return-2;if(Po-De&&(P=o-De,B=D-P),l.set(N.subarray(B,B+P),0),v=P,m=P,u=l[0]&255,u=(u<4||N<0)return-2;if(!I.next_out||!I.next_in&&I.avail_in!==0||n==Ln&&N!=4)return I.msg=Vr[4],-2;if(I.avail_out===0)return I.msg=Vr[7],-5;if(t=I,B=i,i=N,n==bo&&(P=Ro+(a-8<<4)<<8,L=(R-1&255)>>1,L>3&&(L=3),P|=L<<6,v!==0&&(P|=Ud),P+=31-P%31,n=jr,Jc(P)),e.pending!==0){if(t.flush_pending(),t.avail_out===0)return i=-1,0}else if(t.avail_in===0&&N<=B&&N!=4)return t.msg=Vr[7],-5;if(n==Ln&&t.avail_in!==0)return I.msg=Vr[7],-5;if(t.avail_in!==0||b!==0||N!=0&&n!=Ln){switch(X=-1,Be[R].func){case Hl:X=iu(N);break;case Kr:X=ou(N);break;case Tt:X=au(N);break;default:}if((X==Fn||X==Yr)&&(n=Ln),X==Me||X==Fn)return t.avail_out===0&&(i=-1),0;if(X==Gr){if(N==1)tu();else if(Aa(0,0,!1),N==3)for(D=0;Dn&&(i=n),i===0?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){let e=this,t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),t!==0&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,e.dstate.pending===0&&(e.dstate.pending_out=0))}};function ql(e){let t=this,n=new Bl,r=qd(e&&e.chunkSize?e.chunkSize:64*1024),i=0,o=new Uint8Array(r),a=e?e.level:-1;typeof a>"u"&&(a=-1),n.deflateInit(a),n.next_out=o,t.append=function(s,l){let c,f,d=0,u=0,h=0,_=[];if(s.length){n.next_in_index=0,n.next_in=s,n.avail_in=s.length;do{if(n.next_out_index=0,n.avail_out=r,c=n.deflate(i),c!=0)throw new Error("deflating: "+n.msg);n.next_out_index&&(n.next_out_index==r?_.push(new Uint8Array(o)):_.push(o.subarray(0,n.next_out_index))),h+=n.next_out_index,l&&n.next_in_index>0&&n.next_in_index!=d&&(l(n.next_in_index),d=n.next_in_index)}while(n.avail_in>0||n.avail_out===0);return _.length>1?(f=new Uint8Array(h),_.forEach(function(x){f.set(x,u),u+=x.length})):f=_[0]?new Uint8Array(_[0]):new Uint8Array,f}},t.flush=function(){let s,l,c=0,f=0,d=[];do{if(n.next_out_index=0,n.avail_out=r,s=n.deflate(4),s!=1&&s!=0)throw new Error("deflating: "+n.msg);r-n.avail_out>0&&d.push(o.slice(0,n.next_out_index)),f+=n.next_out_index}while(n.avail_in>0||n.avail_out===0);return n.deflateEnd(),l=new Uint8Array(f),d.forEach(function(u){l.set(u,c),c+=u.length}),l}}function qd(e){return e+5*(Math.floor(e/16383)+1)}var Oe=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ff=1440,zd=0,Wd=4,Vd=9,Gd=5,Yd=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],jd=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],Kd=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],Xd=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],$d=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],Qd=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],pt=15;function Io(){let e=this,t,n,r,i,o,a;function s(c,f,d,u,h,_,x,p,m,g,y){let E,v,w,b,A,T,k,R,M,O,F,S,C,U,Z;O=0,A=d;do r[c[f+O]]++,O++,A--;while(A!==0);if(r[0]==d)return x[0]=-1,p[0]=0,0;for(R=p[0],T=1;T<=pt&&r[T]===0;T++);for(k=T,RA&&(R=A),p[0]=R,U=1<S+R;){if(b++,S+=R,Z=w-S,Z=Z>R?R:Z,(v=1<<(T=k-S))>E+1&&(v-=E+1,C=k,Tff)return-3;o[b]=F=g[0],g[0]+=Z,b!==0?(a[b]=A,i[0]=T,i[1]=R,T=A>>>S-R,i[2]=F-o[b-1]-T,m.set(i,(o[b-1]+T)*3)):x[0]=F}for(i[1]=k-S,O>=d?i[0]=192:y[O]>>S;T>>=1)A^=T;for(A^=T,M=(1<257?(g==-3?m.msg="oversubscribed distance tree":g==-5?(m.msg="incomplete distance tree",g=-3):g!=-4&&(m.msg="empty distance tree with lengths",g=-3),g):0)}}Io.inflate_trees_fixed=function(e,t,n,r){return e[0]=Vd,t[0]=Gd,n[0]=Yd,r[0]=jd,0};var Jr=0,zl=1,Wl=2,Vl=3,Gl=4,Yl=5,jl=6,So=7,Kl=8,ei=9;function Jd(){let e=this,t,n=0,r,i=0,o=0,a=0,s=0,l=0,c=0,f=0,d,u=0,h,_=0;function x(p,m,g,y,E,v,w,b){let A,T,k,R,M,O,F,S,C,U,Z,J,H,ee,q,V;F=b.next_in_index,S=b.avail_in,M=w.bitb,O=w.bitk,C=w.write,U=C>=T[V+1],O-=T[V+1],w.win[C++]=T[V+2],U--;continue}do{if(M>>=T[V+1],O-=T[V+1],R&16){for(R&=15,H=T[V+2]+(M&Oe[R]),M>>=R,O-=R;O<15;)S--,M|=(b.read_byte(F++)&255)<>=T[V+1],O-=T[V+1],R&16){for(R&=15;O>=R,O-=R,U-=H,C>=ee)q=C-ee,C-q>0&&2>C-q?(w.win[C++]=w.win[q++],w.win[C++]=w.win[q++],H-=2):(w.win.set(w.win.subarray(q,q+2),C),C+=2,q+=2,H-=2);else{q=C-ee;do q+=w.end;while(q<0);if(R=w.end-q,H>R){if(H-=R,C-q>0&&R>C-q)do w.win[C++]=w.win[q++];while(--R!==0);else w.win.set(w.win.subarray(q,q+R),C),C+=R,q+=R,R=0;q=0}}if(C-q>0&&H>C-q)do w.win[C++]=w.win[q++];while(--H!==0);else w.win.set(w.win.subarray(q,q+H),C),C+=H,q+=H,H=0;break}else if(!(R&64))A+=T[V+2],A+=M&Oe[R],V=(k+A)*3,R=T[V];else return b.msg="invalid distance code",H=b.avail_in-S,H=O>>3>3:H,S+=H,F-=H,O-=H<<3,w.bitb=M,w.bitk=O,b.avail_in=S,b.total_in+=F-b.next_in_index,b.next_in_index=F,w.write=C,-3;while(!0);break}if(R&64)return R&32?(H=b.avail_in-S,H=O>>3>3:H,S+=H,F-=H,O-=H<<3,w.bitb=M,w.bitk=O,b.avail_in=S,b.total_in+=F-b.next_in_index,b.next_in_index=F,w.write=C,1):(b.msg="invalid literal/length code",H=b.avail_in-S,H=O>>3>3:H,S+=H,F-=H,O-=H<<3,w.bitb=M,w.bitk=O,b.avail_in=S,b.total_in+=F-b.next_in_index,b.next_in_index=F,w.write=C,-3);if(A+=T[V+2],A+=M&Oe[R],V=(k+A)*3,(R=T[V])===0){M>>=T[V+1],O-=T[V+1],w.win[C++]=T[V+2],U--;break}}while(!0)}while(U>=258&&S>=10);return H=b.avail_in-S,H=O>>3>3:H,S+=H,F-=H,O-=H<<3,w.bitb=M,w.bitk=O,b.avail_in=S,b.total_in+=F-b.next_in_index,b.next_in_index=F,w.write=C,0}e.init=function(p,m,g,y,E,v){t=Jr,c=p,f=m,d=g,u=y,h=E,_=v,r=null},e.proc=function(p,m,g){let y,E,v,w=0,b=0,A=0,T,k,R,M;for(A=m.next_in_index,T=m.avail_in,w=p.bitb,b=p.bitk,k=p.write,R=k=258&&T>=10&&(p.bitb=w,p.bitk=b,m.avail_in=T,m.total_in+=A-m.next_in_index,m.next_in_index=A,p.write=k,g=x(c,f,d,u,h,_,p,m),A=m.next_in_index,T=m.avail_in,w=p.bitb,b=p.bitk,k=p.write,R=k>>=r[E+1],b-=r[E+1],v=r[E],v===0){a=r[E+2],t=jl;break}if(v&16){s=v&15,n=r[E+2],t=Wl;break}if(!(v&64)){o=v,i=E/3+r[E+2];break}if(v&32){t=So;break}return t=ei,m.msg="invalid literal/length code",g=-3,p.bitb=w,p.bitk=b,m.avail_in=T,m.total_in+=A-m.next_in_index,m.next_in_index=A,p.write=k,p.inflate_flush(m,g);case Wl:for(y=s;b>=y,b-=y,o=f,r=h,i=_,t=Vl;case Vl:for(y=o;b>=r[E+1],b-=r[E+1],v=r[E],v&16){s=v&15,l=r[E+2],t=Gl;break}if(!(v&64)){o=v,i=E/3+r[E+2];break}return t=ei,m.msg="invalid distance code",g=-3,p.bitb=w,p.bitk=b,m.avail_in=T,m.total_in+=A-m.next_in_index,m.next_in_index=A,p.write=k,p.inflate_flush(m,g);case Gl:for(y=s;b>=y,b-=y,t=Yl;case Yl:for(M=k-l;M<0;)M+=p.end;for(;n!==0;){if(R===0&&(k==p.end&&p.read!==0&&(k=0,R=k7&&(b-=8,T++,A--),p.write=k,g=p.inflate_flush(m,g),k=p.write,R=kx.avail_out&&(m=x.avail_out),m!==0&&p==-5&&(p=0),x.avail_out-=m,x.total_out+=m,x.next_out.set(n.win.subarray(y,y+m),g),g+=m,y+=m,y==n.end&&(y=0,n.write==n.end&&(n.write=0),m=n.write-y,m>x.avail_out&&(m=x.avail_out),m!==0&&p==-5&&(p=0),x.avail_out-=m,x.total_out+=m,x.next_out.set(n.win.subarray(y,y+m),g),g+=m,y+=m),x.next_out_index=g,n.read=y,p},n.proc=function(x,p){let m,g,y,E,v,w,b,A;for(E=x.next_in_index,v=x.avail_in,g=n.bitb,y=n.bitk,w=n.write,b=w>>1){case 0:g>>>=3,y-=3,m=y&7,g>>>=m,y-=m,r=To;break;case 1:T=[],k=[],R=[[]],M=[[]],Io.inflate_trees_fixed(T,k,R,M),f.init(T[0],k[0],R[0],0,M[0],0),g>>>=3,y-=3,r=ti;break;case 2:g>>>=3,y-=3,r=Ql;break;case 3:return g>>>=3,y-=3,r=kt,x.msg="invalid block type",p=-3,n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p)}break;case To:for(;y<32;){if(v!==0)p=0;else return n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p);v--,g|=(x.read_byte(E++)&255)<>>16&65535)!=(g&65535))return r=kt,x.msg="invalid stored block lengths",p=-3,n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p);i=g&65535,g=y=0,r=i!==0?$l:d!==0?ni:jt;break;case $l:if(v===0||b===0&&(w==n.end&&n.read!==0&&(w=0,b=wv&&(m=v),m>b&&(m=b),n.win.set(x.read_buf(E,m),w),E+=m,v-=m,w+=m,b-=m,(i-=m)!==0)break;r=d!==0?ni:jt;break;case Ql:for(;y<14;){if(v!==0)p=0;else return n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p);v--,g|=(x.read_byte(E++)&255)<29||(m>>5&31)>29)return r=kt,x.msg="too many length or distance symbols",p=-3,n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p);if(m=258+(m&31)+(m>>5&31),!s||s.length>>=14,y-=14,a=0,r=Jl;case Jl:for(;a<4+(o>>>10);){for(;y<3;){if(v!==0)p=0;else return n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p);v--,g|=(x.read_byte(E++)&255)<>>=3,y-=3}for(;a<19;)s[Xl[a++]]=0;if(l[0]=7,m=_.inflate_trees_bits(s,l,c,u,x),m!=0)return p=m,p==-3&&(s=null,r=kt),n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p);a=0,r=ef;case ef:for(;m=o,!(a>=258+(m&31)+(m>>5&31));){let U,Z;for(m=l[0];y>>=m,y-=m,s[a++]=Z;else{for(A=Z==18?7:Z-14,U=Z==18?11:3;y>>=m,y-=m,U+=g&Oe[A],g>>>=A,y-=A,A=a,m=o,A+U>258+(m&31)+(m>>5&31)||Z==16&&A<1)return s=null,r=kt,x.msg="invalid bit length repeat",p=-3,n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p);Z=Z==16?s[A-1]:0;do s[A++]=Z;while(--U!==0);a=A}}if(c[0]=-1,O=[],F=[],S=[],C=[],O[0]=9,F[0]=6,m=o,m=_.inflate_trees_dynamic(257+(m&31),1+(m>>5&31),s,O,F,S,C,u,x),m!=0)return m==-3&&(s=null,r=kt),p=m,n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,n.inflate_flush(x,p);f.init(O[0],F[0],u,S[0],u,C[0]),r=ti;case ti:if(n.bitb=g,n.bitk=y,x.avail_in=v,x.total_in+=E-x.next_in_index,x.next_in_index=E,n.write=w,(p=f.proc(n,x,p))!=1)return n.inflate_flush(x,p);if(p=0,f.free(x),E=x.next_in_index,v=x.avail_in,g=n.bitb,y=n.bitk,w=n.write,b=w15?(e.inflateEnd(n),-2):(e.wbits=r,n.istate.blocks=new ep(n,1<>4)+8>a.wbits){a.mode=mt,n.msg="invalid win size",a.marker=5;break}a.mode=nf;case nf:if(n.avail_in===0)return i;if(i=r,n.avail_in--,n.total_in++,o=n.read_byte(n.next_in_index++)&255,((a.method<<8)+o)%31!==0){a.mode=mt,n.msg="incorrect header check",a.marker=5;break}if(!(o&tp)){a.mode=Un;break}a.mode=rf;case rf:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,a.need=(n.read_byte(n.next_in_index++)&255)<<24&4278190080,a.mode=of;case of:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,a.need+=(n.read_byte(n.next_in_index++)&255)<<16&16711680,a.mode=af;case af:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,a.need+=(n.read_byte(n.next_in_index++)&255)<<8&65280,a.mode=sf;case sf:return n.avail_in===0?i:(i=r,n.avail_in--,n.total_in++,a.need+=n.read_byte(n.next_in_index++)&255,a.mode=ko,2);case ko:return a.mode=mt,n.msg="need dictionary",a.marker=0,-2;case Un:if(i=a.blocks.proc(n,i),i==-3){a.mode=mt,a.marker=0;break}if(i==0&&(i=r),i!=1)return i;i=r,a.blocks.reset(n,a.was),a.mode=lf;case lf:return n.avail_in=0,1;case mt:return-3;default:return-2}},e.inflateSetDictionary=function(n,r,i){let o=0,a=i;if(!n||!n.istate||n.istate.mode!=ko)return-2;let s=n.istate;return a>=1<0&&n.next_in_index!=u&&(l(n.next_in_index),u=n.next_in_index)}while(n.avail_in>0||n.avail_out===0);return c.length>1?(d=new Uint8Array(_),c.forEach(function(x){d.set(x,h),h+=x.length})):d=c[0]?new Uint8Array(c[0]):new Uint8Array,d}},t.flush=function(){n.inflateEnd()}}var Do="/",ap=new Date(2107,11,31),sp=new Date(1980,0,1),ae=void 0,Ne="undefined",Ge="function";var Zn=class{constructor(t){return class extends TransformStream{constructor(n,r){let i=new t(r);super({transform(o,a){a.enqueue(i.append(o))},flush(o){let a=i.flush();a&&o.enqueue(a)}})}}}};var lp=64,df=2;try{typeof navigator!=Ne&&navigator.hardwareConcurrency&&(df=navigator.hardwareConcurrency)}catch{}var fp={chunkSize:512*1024,maxWorkers:df,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ae,CompressionStreamNative:typeof CompressionStream!=Ne&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=Ne&&DecompressionStream},xt=Object.assign({},fp);function ri(){return xt}function Oo(e){return Math.max(e.chunkSize,lp)}function Kt(e){let{baseURL:t,chunkSize:n,maxWorkers:r,terminateWorkerTimeout:i,useCompressionStream:o,useWebWorkers:a,Deflate:s,Inflate:l,CompressionStream:c,DecompressionStream:f,workerScripts:d}=e;if(ht("baseURL",t),ht("chunkSize",n),ht("maxWorkers",r),ht("terminateWorkerTimeout",i),ht("useCompressionStream",o),ht("useWebWorkers",a),s&&(xt.CompressionStream=new Zn(s)),l&&(xt.DecompressionStream=new Zn(l)),ht("CompressionStream",c),ht("DecompressionStream",f),d!==ae){let{deflate:u,inflate:h}=d;if((u||h)&&(xt.workerScripts||(xt.workerScripts={})),u){if(!Array.isArray(u))throw new Error("workerScripts.deflate must be an array");xt.workerScripts.deflate=u}if(h){if(!Array.isArray(h))throw new Error("workerScripts.inflate must be an array");xt.workerScripts.inflate=h}}}function ht(e,t){t!==ae&&(xt[e]=t)}var No={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin","cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot","wiz"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf","xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","xpdl"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot","ppa","pwz"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":["odm","otm"],"vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw","vsdx","vssx","vstx","vssm","vstm"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-director":["dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-font":"pcf.Z","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-latex":"latex","x-lyx":"lyx","x-lzx":"lzx","x-maker":["frm","fb","fbdoc"],"x-ms-wmd":"wmd","x-msdos-program":["com","exe","bat","dll"],"x-netcdf":["nc"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":["rpm","rpa"],"x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":["mathml","mml"],mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","application/x-ms-installer":"msi","x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-perfmon":["pma","pmc","pmr","pmw"],"ynd.ms-pkipko":"pko",gzip:["gz","tgz"],"smil+xml":["smi","smil"],"vnd.debian.binary-package":["deb","udeb"],"vnd.hzn-3d-crossword":"x3d","vnd.sqlite3":["db","sqlite","sqlite3","db-wal","sqlite-wal","db-shm","sqlite-shm"],"vnd.wap.sic":"sic","vnd.wap.slc":"slc","x-krita":["kra","krz"],"x-perl":["pm","pl"],yaml:["yaml","yml"]},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":"aifc","x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",aac:"aac",aiff:["aiff","aif","aff"],opus:"opus",wav:"wav"},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":"mmod","x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":"sd","x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":"val","x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},font:{otf:"otf",woff:"woff",woff2:"woff2"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe","jfif","jfif-tbnl","jif"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",avif:"avifs",heic:["heif","heic"],pjpeg:["pjpg"],"vnd.adobe.photoshop":"psd","x-adobe-dng":"dng","x-fuji-raf":"raf","x-icns":"icns","x-kodak-dcr":"dcr","x-kodak-k25":"k25","x-kodak-kdc":"kdc","x-minolta-mrw":"mrw","x-panasonic-raw":["raw","rw2","rwl"],"x-pentax-pef":["pef","ptx"],"x-sigma-x3f":"x3f","x-sony-arw":"arw","x-sony-sr2":"sr2","x-sony-srf":"srf"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":"x3dz","x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.usdz+zip":"usdz","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",plain:["txt","text","brf","conf","def","list","log","in","bas","diff","ksh"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:"tm","tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":"patch","x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas","pp","inc"],"x-pcs-gcd":"gcd","x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","h","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt",javascript:"js",json:"json",markdown:["md","markdown","mdown","markdn"],"vnd.wap.si":"si","vnd.wap.sl":"sl"},video:{avif:"avif","3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv",mp2t:"ts"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","flr","wrz","xaf","xof"]}},_v=(()=>{let e={};for(let t of Object.keys(No))for(let n of Object.keys(No[t])){let r=No[t][n];if(typeof r=="string")e[r]=t+"/"+n;else for(let i=0;i>>1^3988292384:t=t>>>1;pf[e]=t}var et=class{constructor(t){this.crc=t||-1}append(t){let n=this.crc|0;for(let r=0,i=t.length|0;r>>8^pf[(n^t[r])&255];this.crc=n}get(){return~this.crc}};var Hn=class extends TransformStream{constructor(){let t,n=new et;super({transform(r,i){n.append(r),i.enqueue(r)},flush(){let r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,n.get()),t.value=r}}),t=this}};function Co(e){if(typeof TextEncoder==Ne){e=unescape(encodeURIComponent(e));let t=new Uint8Array(e.length);for(let n=0;n0&&t&&(e[n-1]=Re.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial(e,t,n){return e===32?t:(n?t|0:t<<32-e)+e*1099511627776},getPartial(e){return Math.round(e/1099511627776)||32},_shiftRight(e,t,n,r){for(r===void 0&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(t===0)return r.concat(e);for(let a=0;a>>t),n=e[a]<<32-t;let i=e.length?e[e.length-1]:0,o=Re.getPartial(i);return r.push(Re.partial(t+o&31,t+o>32?n:r.pop(),1)),r}},Bn={bytes:{fromBits(e){let n=Re.bitLength(e)/8,r=new Uint8Array(n),i;for(let o=0;o>>24,i<<=8;return r},toBits(e){let t=[],n,r=0;for(n=0;n9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");let o=new Uint32Array(n),a=0;for(let s=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s<=i;s+=t.blockSize)t._block(o.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){let e=this,t=e._buffer,n=e._h;t=Re.concat(t,[Re.partial(1,1)]);for(let r=t.length+2;r&15;r++)t.push(0);for(t.push(Math.floor(e._length/4294967296)),t.push(e._length|0);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){if(e<=19)return t&n|~t&r;if(e<=39)return t^n^r;if(e<=59)return t&n|t&r|n&r;if(e<=79)return t^n^r}_S(e,t){return t<>>32-e}_block(e){let t=this,n=t._h,r=Array(80);for(let c=0;c<16;c++)r[c]=e[c];let i=n[0],o=n[1],a=n[2],s=n[3],l=n[4];for(let c=0;c<=79;c++){c>=16&&(r[c]=t._S(1,r[c-3]^r[c-8]^r[c-14]^r[c-16]));let f=t._S(5,i)+t._f(c,o,a,s)+l+r[c]+t._key[Math.floor(c/20)]|0;l=s,s=a,a=t._S(30,o),o=i,i=f}n[0]=n[0]+i|0,n[1]=n[1]+o|0,n[2]=n[2]+a|0,n[3]=n[3]+s|0,n[4]=n[4]+l|0}};var Po={};Po.aes=class{constructor(e){let t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();let n=t._tables[0][4],r=t._tables[1],i=e.length,o,a,s,l=1;if(i!==4&&i!==6&&i!==8)throw new Error("invalid aes key size");for(t._key=[a=e.slice(0),s=[]],o=i;o<4*i+28;o++){let c=a[o-1];(o%i===0||i===8&&o%i===4)&&(c=n[c>>>24]<<24^n[c>>16&255]<<16^n[c>>8&255]<<8^n[c&255],o%i===0&&(c=c<<8^c>>>24^l<<24,l=l<<1^(l>>7)*283)),a[o]=a[o-i]^c}for(let c=0;o;c++,o--){let f=a[c&3?o:o-4];o<=4||c<4?s[c]=f:s[c]=r[0][n[f>>>24]]^r[1][n[f>>16&255]]^r[2][n[f>>8&255]]^r[3][n[f&255]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){let e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],i=[],o=[],a,s,l,c;for(let f=0;f<256;f++)o[(i[f]=f<<1^(f>>7)*283)^f]=f;for(let f=a=0;!n[f];f^=s||1,a=o[a]||1){let d=a^a<<1^a<<2^a<<3^a<<4;d=d>>8^d&255^99,n[f]=d,r[d]=f,c=i[l=i[s=i[f]]];let u=c*16843009^l*65537^s*257^f*16843008,h=i[d]*257^d*16843008;for(let _=0;_<4;_++)e[_][f]=h=h<<24^h>>>8,t[_][d]=u=u<<24^u>>>8}for(let f=0;f<5;f++)e[f]=e[f].slice(0),t[f]=t[f].slice(0)}_crypt(e,t){if(e.length!==4)throw new Error("invalid aes block size");let n=this._key[t],r=n.length/4-2,i=[0,0,0,0],o=this._tables[t],a=o[0],s=o[1],l=o[2],c=o[3],f=o[4],d=e[0]^n[0],u=e[t?3:1]^n[1],h=e[2]^n[2],_=e[t?1:3]^n[3],x=4,p,m,g;for(let y=0;y>>24]^s[u>>16&255]^l[h>>8&255]^c[_&255]^n[x],m=a[u>>>24]^s[h>>16&255]^l[_>>8&255]^c[d&255]^n[x+1],g=a[h>>>24]^s[_>>16&255]^l[d>>8&255]^c[u&255]^n[x+2],_=a[_>>>24]^s[d>>16&255]^l[u>>8&255]^c[h&255]^n[x+3],x+=4,d=p,u=m,h=g;for(let y=0;y<4;y++)i[t?3&-y:y]=f[d>>>24]<<24^f[u>>16&255]<<16^f[h>>8&255]<<8^f[_&255]^n[x++],p=d,d=u,u=h,h=_,_=p;return i}};var hf={getRandomValues(e){let t=new Uint32Array(e.buffer),n=r=>{let i=987654321,o=4294967295;return function(){return i=36969*(i&65535)+(i>>16)&o,r=18e3*(r&65535)+(r>>16)&o,(((i<<16)+r&o)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let r=0,i;r>24&255)===255){let t=e>>16&255,n=e>>8&255,r=e&255;t===255?(t=0,n===255?(n=0,r===255?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}else e+=1<<24;return e}incCounter(e){(e[0]=this.incWord(e[0]))===0&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];let i=Re.bitLength(t);for(let o=0;o>5)+1<<2,o,a,s,l,c,f=new ArrayBuffer(i),d=new DataView(f),u=0,h=Re;for(t=Bn.bytes.toBits(t),c=1;u<(i||1);c++){for(o=a=e.encrypt(h.concat(t,[c])),s=1;si&&(e=new n().update(e).finalize());for(let o=0;othis.resolveReady=a),password:Ef(t,n),signed:r,strength:i-1,pending:new Uint8Array})},async transform(a,s){let l=this,{password:c,strength:f,resolveReady:d,ready:u}=l;c?(await yp(l,f,c,Fe(a,0,zn[f]+2)),a=Fe(a,zn[f]+2),o?s.error(new Error(tt)):d()):await u;let h=new Uint8Array(a.length-wt-(a.length-wt)%Xt);s.enqueue(vf(l,a,h,0,wt,!0))},async flush(a){let{signed:s,ctr:l,hmac:c,pending:f,ready:d}=this;if(c&&l){await d;let u=Fe(f,0,f.length-wt),h=Fe(f,f.length-wt),_=new Uint8Array;if(u.length){let x=Vn(je,u);c.update(x);let p=l.update(x);_=Wn(je,p)}if(s){let x=Fe(Wn(je,c.digest()),0,wt);for(let p=0;pthis.resolveReady=o),password:Ef(t,n),strength:r-1,pending:new Uint8Array})},async transform(o,a){let s=this,{password:l,strength:c,resolveReady:f,ready:d}=s,u=new Uint8Array;l?(u=await Ep(s,c,l),f()):await d;let h=new Uint8Array(u.length+o.length-o.length%Xt);h.set(u,0),a.enqueue(vf(s,o,h,u.length,0))},async flush(o){let{ctr:a,hmac:s,pending:l,ready:c}=this;if(s&&a){await c;let f=new Uint8Array;if(l.length){let d=a.update(Vn(je,l));s.update(d),f=Wn(je,d)}i.signature=Wn(je,s.digest()).slice(0,wt),o.enqueue(Lo(f,i.signature))}}}),i=this}};function vf(e,t,n,r,i,o){let{ctr:a,hmac:s,pending:l}=e,c=t.length-i;l.length&&(t=Lo(l,t),n=Ap(n,c-c%Xt));let f;for(f=0;f<=c-Xt;f+=Xt){let d=Vn(je,Fe(t,f,f+Xt));o&&s.update(d);let u=a.update(d);o||s.update(u),n.set(Wn(je,u),f+r)}return e.pending=Fe(t,f),n}async function yp(e,t,n,r){let i=await yf(e,t,n,Fe(r,0,zn[t])),o=Fe(r,zn[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new Error(Ye)}async function Ep(e,t,n){let r=ii(new Uint8Array(zn[t])),i=await yf(e,t,n,r);return Lo(r,i)}async function yf(e,t,n,r){e.password=null;let i=await bp(dp,n,hp,!1,xp),o=await Rp(Object.assign({salt:r},Fo),i,8*(qn[t]*2+2)),a=new Uint8Array(o),s=Vn(je,Fe(a,0,qn[t])),l=Vn(je,Fe(a,qn[t],qn[t]*2)),c=Fe(a,qn[t]*2);return Object.assign(e,{keys:{key:s,authentication:l,passwordVerification:c},ctr:new wp(new _p(s),Array.from(gp)),hmac:new vp(l)}),c}async function bp(e,t,n,r,i){if(xf)try{return await Gn.importKey(e,t,n,r,i)}catch{return xf=!1,gt.importKey(t)}else return gt.importKey(t)}async function Rp(e,t,n){if(gf)try{return await Gn.deriveBits(e,t,n)}catch{return gf=!1,gt.pbkdf2(t,e.salt,Fo.iterations,n)}else return gt.pbkdf2(t,e.salt,Fo.iterations,n)}function Ef(e,t){return t===ae?Co(e):t}function Lo(e,t){let n=e;return e.length+t.length&&(n=new Uint8Array(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Ap(e,t){if(t&&t>e.length){let n=e;e=new Uint8Array(t),e.set(n,0)}return e}function Fe(e,t,n){return e.subarray(t,n)}function Wn(e,t){return e.fromBits(t)}function Vn(e,t){return e.toBits(t)}var $t=12,li=class extends TransformStream{constructor({password:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){Object.assign(this,{password:t,passwordVerification:n}),Sf(this,t)},transform(i,o){let a=this;if(a.password){let s=bf(a,i.subarray(0,$t));if(a.password=null,s[$t-1]!=a.passwordVerification)throw new Error(Ye);i=i.subarray($t)}r?o.error(new Error(tt)):o.enqueue(bf(a,i))}})}},fi=class extends TransformStream{constructor({password:t,passwordVerification:n}){super({start(){Object.assign(this,{password:t,passwordVerification:n}),Sf(this,t)},transform(r,i){let o=this,a,s;if(o.password){o.password=null;let l=ii(new Uint8Array($t));l[$t-1]=o.passwordVerification,a=new Uint8Array(r.length+l.length),a.set(Rf(o,l),0),s=$t}else a=new Uint8Array(r.length),s=0;a.set(Rf(o,r),s),i.enqueue(a)}})}};function bf(e,t){let n=new Uint8Array(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function Tf(e){let t=e.keys[2]|2;return kf(Math.imul(t,t^1)>>>8)}function kf(e){return e&255}function Af(e){return e&4294967295}var If="deflate-raw",ci=class extends TransformStream{constructor(t,{chunkSize:n,CompressionStream:r,CompressionStreamNative:i}){super({});let{compressed:o,encrypted:a,useCompressionStream:s,zipCrypto:l,signed:c,level:f}=t,d=this,u,h,_=Df(super.readable);(!a||l)&&c&&(u=new Hn,_=Ke(_,u)),o&&(_=Nf(_,s,{level:f,chunkSize:n},i,r)),a&&(l?_=Ke(_,new fi(t)):(h=new ai(t),_=Ke(_,h))),Of(d,_,()=>{let x;a&&!l&&(x=h.signature),(!a||l)&&c&&(x=new DataView(u.value.buffer).getUint32(0)),d.signature=x})}},ui=class extends TransformStream{constructor(t,{chunkSize:n,DecompressionStream:r,DecompressionStreamNative:i}){super({});let{zipCrypto:o,encrypted:a,signed:s,signature:l,compressed:c,useCompressionStream:f}=t,d,u,h=Df(super.readable);a&&(o?h=Ke(h,new li(t)):(u=new oi(t),h=Ke(h,u))),c&&(h=Nf(h,f,{chunkSize:n},i,r)),(!a||o)&&s&&(d=new Hn,h=Ke(h,d)),Of(this,h,()=>{if((!a||o)&&s){let _=new DataView(d.value.buffer);if(l!=_.getUint32(0,!1))throw new Error(_t)}})}};function Df(e){return Ke(e,new TransformStream({transform(t,n){t&&t.length&&n.enqueue(t)}}))}function Of(e,t,n){t=Ke(t,new TransformStream({flush:n})),Object.defineProperty(e,"readable",{get(){return t}})}function Nf(e,t,n,r,i){try{let o=t&&r?r:i;e=Ke(e,new o(If,n))}catch{if(t)try{e=Ke(e,new i(If,n))}catch{return e}else return e}return e}function Ke(e,t){return e.pipeThrough(t)}var Cf="message",Pf="start",Mf="pull",Zo="data",Ff="ack",Ho="close",Bo="deflate",mi="inflate";var di=class extends TransformStream{constructor(t,n){super({});let r=this,{codecType:i}=t,o;i.startsWith(Bo)?o=ci:i.startsWith(mi)&&(o=ui);let a=0,s=0,l=new o(t,n),c=super.readable,f=new TransformStream({transform(u,h){u&&u.length&&(s+=u.length,h.enqueue(u))},flush(){Object.assign(r,{inputSize:s})}}),d=new TransformStream({transform(u,h){u&&u.length&&(a+=u.length,h.enqueue(u))},flush(){let{signature:u}=l;Object.assign(r,{signature:u,outputSize:a,inputSize:s})}});Object.defineProperty(r,"readable",{get(){return c.pipeThrough(f).pipeThrough(l).pipeThrough(d)}})}},pi=class extends TransformStream{constructor(t){let n;super({transform:r,flush(i){n&&n.length&&i.enqueue(n)}});function r(i,o){if(n){let a=new Uint8Array(n.length+i.length);a.set(n),a.set(i,n.length),i=a,n=null}i.length>t?(o.enqueue(i.slice(0,t)),r(i.slice(t),o)):n=i}}};var Zf=typeof Worker!=Ne;var Qt=class{constructor(t,{readable:n,writable:r},{options:i,config:o,streamOptions:a,useWebWorkers:s,transferStreams:l,scripts:c},f){let{signal:d}=a;return Object.assign(t,{busy:!0,readable:n.pipeThrough(new pi(o.chunkSize)).pipeThrough(new zo(n,a),{signal:d}),writable:r,options:Object.assign({},i),scripts:c,transferStreams:l,terminate(){return new Promise(u=>{let{worker:h,busy:_}=t;h?(_?t.resolveTerminated=u:(h.terminate(),u()),t.interface=null):u()})},onTaskFinished(){let{resolveTerminated:u}=t;u&&(t.resolveTerminated=null,t.terminated=!0,t.worker.terminate(),u()),t.busy=!1,f(t)}}),(s&&Zf?Sp:Hf)(t,o)}},zo=class extends TransformStream{constructor(t,{onstart:n,onprogress:r,size:i,onend:o}){let a=0;super({async start(){n&&await qo(n,i)},async transform(s,l){a+=s.length,r&&await qo(r,a,i),l.enqueue(s)},async flush(){t.size=a,o&&await qo(o,a)}})}};async function qo(e,...t){try{await e(...t)}catch{}}function Hf(e,t){return{run:()=>Tp(e,t)}}function Sp(e,t){let{baseURL:n,chunkSize:r}=t;if(!e.interface){let i;try{i=Dp(e.scripts[0],n,e)}catch{return Zf=!1,Hf(e,t)}Object.assign(e,{worker:i,interface:{run:()=>kp(e,{chunkSize:r})}})}return e.interface}async function Tp({options:e,readable:t,writable:n,onTaskFinished:r},i){try{let o=new di(e,i);await t.pipeThrough(o).pipeTo(n,{preventClose:!0,preventAbort:!0});let{signature:a,inputSize:s,outputSize:l}=o;return{signature:a,inputSize:s,outputSize:l}}finally{r()}}async function kp(e,t){let n,r,i=new Promise((u,h)=>{n=u,r=h});Object.assign(e,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});let{readable:o,options:a,scripts:s}=e,{writable:l,closed:c}=Ip(e.writable);hi({type:Pf,scripts:s.slice(1),options:a,config:t,readable:o,writable:l},e)||Object.assign(e,{reader:o.getReader(),writer:l.getWriter()});let d=await i;try{await l.getWriter().close()}catch{}return await c,d}function Ip(e){let t,n=new Promise(i=>t=i);return{writable:new WritableStream({async write(i){let o=e.getWriter();await o.ready,await o.write(i),o.releaseLock()},close(){t()},abort(i){return e.getWriter().abort(i)}}),closed:n}}var Lf=!0,Uf=!0;function Dp(e,t,n){let r={type:"module"},i,o;typeof e==Ge&&(e=e());try{i=new URL(e,t)}catch{i=e}if(Lf)try{o=new Worker(i)}catch{Lf=!1,o=new Worker(i,r)}else o=new Worker(i,r);return o.addEventListener(Cf,a=>Op(a,n)),o}function hi(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{let{value:o,readable:a,writable:s}=e,l=[];if(o&&(o.byteLength!m.busy);if(p)return qf(p),new Qt(p,e,t,x);if(It.lengthWo.push({resolve:m,stream:e,workerOptions:t}))}function x(p){if(Wo.length){let[{resolve:m,stream:g,workerOptions:y}]=Wo.splice(0,1);m(new Qt(p,g,y,x))}else p.worker?(qf(p),Np(p,t)):It=It.filter(m=>m!=p)}}function Np(e,t){let{config:n}=t,{terminateWorkerTimeout:r}=n;Number.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout(async()=>{It=It.filter(i=>i!=e);try{await e.terminate()}catch{}},r))}function qf(e){let{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}function zf(e){let t=()=>URL.createObjectURL(new Blob([`const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={p:{m(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)0==(3&s)&&(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.p,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}else e+=1<<24;return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),0==(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt}; `],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})}var Wf="Writer iterator completed too soon";var Cp="Content-Type";var Pp=64*1024,Vf="writable",Yn=class{constructor(){this.size=0}init(){this.initialized=!0}},Jt=class extends Yn{get readable(){let t=this,{chunkSize:n=Pp}=t,r=new ReadableStream({start(){this.chunkOffset=0},async pull(i){let{offset:o=0,size:a,diskNumberStart:s}=r,{chunkOffset:l}=this;i.enqueue(await he(t,o+l,Math.min(n,a-l),s)),l+n>a?i.close():this.chunkOffset+=n}});return r}};var vt=class extends Jt{constructor(t){super(),Object.assign(this,{blob:t,size:t.size})}async readUint8Array(t,n){let r=this,i=t+n,a=await(t||in&&(a=a.slice(t,i)),new Uint8Array(a)}},nt=class extends Yn{constructor(t){super();let n=this,r=new TransformStream,i=[];t&&i.push([Cp,t]),Object.defineProperty(n,Vf,{get(){return r.writable}}),n.blob=new Response(r.readable,{headers:i}).blob()}getData(){return this.blob}};var en=class extends nt{constructor(t){super(t),Object.assign(this,{encoding:t,utf8:!t||t.toLowerCase()=="utf-8"})}async getData(){let{encoding:t,utf8:n}=this,r=await super.getData();if(r.text&&n)return r.text();{let i=new FileReader;return new Promise((o,a)=>{Object.assign(i,{onload:({target:s})=>o(s.result),onerror:()=>a(i.error)}),i.readAsText(r,t)})}}};var xi=class extends Jt{constructor(t){super(),this.readers=t}async init(){let t=this,{readers:n}=t;t.lastDiskNumber=0,t.lastDiskOffset=0,await Promise.all(n.map(async(r,i)=>{await r.init(),i!=n.length-1&&(t.lastDiskOffset+=r.size),t.size+=r.size})),super.init()}async readUint8Array(t,n,r=0){let i=this,{readers:o}=this,a,s=r;s==-1&&(s=o.length-1);let l=t;for(;l>=o[s].size;)l-=o[s].size,s++;let c=o[s],f=c.size;if(l+n<=f)a=await he(c,l,n);else{let d=f-l;a=new Uint8Array(n),a.set(await he(c,l,d)),a.set(await i.readUint8Array(t+d,n-d,r),d)}return i.lastDiskNumber=Math.max(s,i.lastDiskNumber),a}},tn=class extends Yn{constructor(t,n=4294967295){super();let r=this;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:n,availableSize:n});let i,o,a,s=new WritableStream({async write(f){let{availableSize:d}=r;if(a)f.length>=d?(await l(f.slice(0,d)),await c(),r.diskOffset+=i.size,r.diskNumber++,a=null,await this.write(f.slice(d))):await l(f);else{let{value:u,done:h}=await t.next();if(h&&!u)throw new Error(Wf);i=u,i.size=0,i.maxSize&&(r.maxSize=i.maxSize),r.availableSize=r.maxSize,await Dt(i),o=u.writable,a=o.getWriter(),await this.write(f)}},async close(){await a.ready,await c()}});Object.defineProperty(r,Vf,{get(){return s}});async function l(f){let d=f.length;d&&(await a.ready,await a.write(f),i.size+=d,r.size+=d,r.availableSize-=d)}async function c(){o.size=i.size,await a.close()}}};async function Dt(e,t){e.init&&!e.initialized&&await e.init(t)}function Go(e){return Array.isArray(e)&&(e=new xi(e)),e instanceof ReadableStream&&(e={readable:e}),e}function Yo(e){e.writable===ae&&typeof e.next==Ge&&(e=new tn(e)),e instanceof WritableStream&&(e={writable:e});let{writable:t}=e;return t.size===ae&&(t.size=0),e instanceof tn||Object.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function he(e,t,n,r){return e.readUint8Array(t,n,r)}var Gf="\0\u263A\u263B\u2665\u2666\u2663\u2660\u2022\u25D8\u25CB\u25D9\u2642\u2640\u266A\u266B\u263C\u25BA\u25C4\u2195\u203C\xB6\xA7\u25AC\u21A8\u2191\u2193\u2192\u2190\u221F\u2194\u25B2\u25BC !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0 ".split(""),Mp=Gf.length==256;function Yf(e){if(Mp){let t="";for(let n=0;nthis[n]=t[n])}};var Ri="File format is not recognized",xc="End of central directory not found",gc="End of Zip64 central directory not found",_c="End of Zip64 central directory locator not found",wc="Central directory header not found",vc="Local file header not found",yc="Zip64 extra field not found",Ec="File contains encrypted entry",bc="Encryption method not supported",la="Compression method not supported",fa="Split zip file",ec="utf-8",tc="cp437",Hp=[[Qo,4294967295],[Jo,4294967295],[ea,4294967295],[_i,65535]],Bp={[65535]:{getValue:se,bytes:4},[4294967295]:{getValue:Ai,bytes:8}},rn=class{constructor(t,n={}){Object.assign(this,{reader:Go(t),options:n,config:ri()})}async*getEntriesGenerator(t={}){let n=this,{reader:r}=n,{config:i}=n;if(await Dt(r),(r.size===ae||!r.readUint8Array)&&(r=new vt(await new Response(r.readable).blob()),await Dt(r)),r.size<22)throw new Error(Ri);r.chunkSize=Oo(i);let o=await Gp(r,101010256,r.size,22,65535*16);if(!o){let k=await he(r,0,4),R=ue(k);throw se(R)==134695760?new Error(fa):new Error(xc)}let a=ue(o),s=se(a,12),l=se(a,16),c=o.offset,f=ce(a,20),d=c+22+f,u=ce(a,4),h=r.lastDiskNumber||0,_=ce(a,6),x=ce(a,8),p=0,m=0;if(l==4294967295||s==4294967295||x==65535||_==65535){let k=await he(r,o.offset-20,20),R=ue(k);if(se(R,0)!=117853008)throw new Error(gc);l=Ai(R,8);let M=await he(r,l,56,-1),O=ue(M),F=o.offset-20-56;if(se(O,0)!=101075792&&l!=F){let S=l;l=F,p=l-S,M=await he(r,l,56,-1),O=ue(M)}if(se(O,0)!=101075792)throw new Error(_c);u==65535&&(u=se(O,16)),_==65535&&(_=se(O,20)),x==65535&&(x=Ai(O,32)),s==4294967295&&(s=Ai(O,40)),l-=s}if(l>=r.size&&(p=r.size-l-s-22,l=r.size-s-22),h!=u)throw new Error(fa);if(l<0)throw new Error(Ri);let g=0,y=await he(r,l,s,_),E=ue(y);if(s){let k=o.offset-s;if(se(E,g)!=33639248&&l!=k){let R=l;l=k,p+=l-R,y=await he(r,l,s,_),E=ue(y)}}let v=o.offset-l-(r.lastDiskOffset||0);if(s!=v&&v>=0&&(s=v,y=await he(r,l,s,_),E=ue(y)),l<0||l>=r.size)throw new Error(Ri);let w=Ce(n,t,"filenameEncoding"),b=Ce(n,t,"commentEncoding");for(let k=0;kR.getData(ln,Lt,Li),g=H;let{onprogress:tr}=t;if(tr)try{await tr(k+1,x,new Ot(R))}catch{}yield Lt}let A=Ce(n,t,"extractPrependedData"),T=Ce(n,t,"extractAppendedData");return A&&(n.prependedData=m>0?await he(r,0,m):new Uint8Array),n.comment=f?await he(r,c+22,f):new Uint8Array,T&&(n.appendedData=d>>8&255:u>>>24&255),signature:u,compressed:c!=0,encrypted:v,useWebWorkers:Ce(i,r,"useWebWorkers"),useCompressionStream:Ce(i,r,"useCompressionStream"),transferStreams:Ce(i,r,"transferStreams"),checkPasswordOnly:R},config:f,streamOptions:{signal:k,size:A,onstart:O,onprogress:F,onend:S}},U=0;try{({outputSize:U}=await Vo({readable:T,writable:M},C))}catch(Z){if(!R||Z.message!=tt)throw Z}finally{let Z=Ce(i,r,"preventClose");M.size+=U,!Z&&!M.locked&&await M.getWriter().close()}return R?ae:t.getData?t.getData():M}};function Rc(e,t,n){let r=e.rawBitFlag=ce(t,n+2),i=(r&1)==1,o=se(t,n+6);Object.assign(e,{encrypted:i,version:ce(t,n),bitFlag:{level:(r&6)>>1,dataDescriptor:(r&8)==8,languageEncodingFlag:(r&2048)==2048},rawLastModDate:o,lastModDate:Yp(o),filenameLength:ce(t,n+22),extraFieldLength:ce(t,n+24)})}async function Ac(e,t,n,r,i){let{rawExtraField:o}=t,a=t.extraField=new Map,s=ue(new Uint8Array(o)),l=0;try{for(;lt[i]==o);for(let i=0,o=0;i=5&&(o.push(jn),a.push(wi));let s=1;o.forEach((l,c)=>{if(e.data.length>=s+4){let f=se(r,s);t[l]=e[l]=new Date(f*1e3);let d=a[c];e[d]=f}s+=4})}async function Gp(e,t,n,r,i){let o=new Uint8Array(4),a=ue(o);jp(a,0,t);let s=r+i;return await l(r)||await l(Math.min(s,n));async function l(c){let f=n-c,d=await he(e,f,c);for(let u=d.length-r;u>=0;u--)if(d[u]==o[0]&&d[u+1]==o[1]&&d[u+2]==o[2]&&d[u+3]==o[3])return{offset:f+u,buffer:d.slice(u,u+r).buffer}}}function Ce(e,t,n){return t[n]===ae?e.options[n]:t[n]}function Yp(e){let t=(e&4294901760)>>16,n=e&65535;try{return new Date(1980+((t&65024)>>9),((t&480)>>5)-1,t&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0)}catch{}}function ta(e){return new Date(Number(e/BigInt(1e4)-BigInt(116444736e5)))}function nn(e,t){return e.getUint8(t)}function ce(e,t){return e.getUint16(t,!0)}function se(e,t){return e.getUint32(t,!0)}function Ai(e,t){return Number(e.getBigUint64(t,!0))}function jp(e,t,n){e.setUint32(t,n,!0)}function ue(e){return new DataView(e.buffer)}var D8=new Uint8Array([7,0,2,0,65,69,3,0,0]);var Sc;try{Sc=import.meta.url}catch{}Kt({baseURL:Sc});zf(Kt);Kt({Deflate:ql,Inflate:uf});var kc=Math.atan2;var Ct=Math.cos;var Kn=Math.sin,Ic=Math.tan;var it=Math.PI,Tc=it/2,_y=it/4;var wy=Pt(2),vy=Pt(it),yy=it*2,Dc=180/it,Oc=it/180;function Nc(e){return e>1?Tc:e<-1?-Tc:Math.asin(e)}function Si(e){return e>1?0:e<-1?it:Math.acos(e)}function Pt(e){return e>0?Math.sqrt(e):0}function Cc(e,t,n){var r=Cn(t,n),i=r(.5),o=Cr([-i[0],-i[1]])(t),a=r.distance/2,s=-Nc(Kn(o[1]*Oc)/Kn(a)),l=[-i[0],-i[1],-(o[0]>0?it-s:s)*Dc],c=zr(e(a)).rotate(l),f=Cr(l),d=c.center;return delete c.rotate,c.center=function(u){return arguments.length?d(f(u)):f.invert(d())},c.clipAngle(90)}function Pc(e){if(!(e*=2))return Wr;var t=-e/2,n=-t,r=e*e,i=Ic(n),o=.5/Kn(n);function a(s,l){var c=Si(Ct(l)*Ct(s-t)),f=Si(Ct(l)*Ct(s-n)),d=l<0?-1:1;return c*=c,f*=f,[(c-f)/(2*e),d*Pt(4*r*f-(r-c+f)*(r-c+f))/(2*e)]}return a.invert=function(s,l){var c=l*l,f=Ct(Pt(c+(u=s+t)*u)),d=Ct(Pt(c+(u=s+n)*u)),u,h;return[kc(h=f-d,u=(f+d)*i),(l<0?-1:1)*Si(Pt(u*u+h*h)*o)]},a}function Ti(e,t){return Cc(Pc,e,t)}function ua(){}function Mc(){var e=[],t;return{point:function(n,r,i,o){var a=[n,r];arguments.length>2&&(a.index=i,a.t=o),t.push(a)},lineStart:function(){e.push(t=[])},lineEnd:ua,rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}function da(e,t){return e&&t&&e[0]===t[0]&&e[1]===t[1]}function ki(e,t,n,r){this.x=e,this.z=t,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function Lc(e,t,n,r,i){var o=[],a=[],s,l;if(e.forEach(function(_){if(!((x=_.length-1)<=0)){var x,p=_[0],m=_[x],g;if(da(p,m)){for(i.lineStart(),s=0;s=0;--s)i.point((d=f[s])[0],d[1]);else r(u.x,u.p.x,-1,i);u=u.p}u=u.o,f=u.z,h=!h}while(!u.v);i.lineEnd()}}}function Fc(e){if(t=e.length){for(var t,n=0,r=e[0],i;++n0?1:e<0?-1:0},qe=Math.sin;var ot=1e-6,at=1e-12,ie=Math.PI,Mt=ie/2,xa=ie/4;var Zy=an(2),Hy=an(ie),Zc=ie*2,Hc=180/ie,Xn=ie/180;function Ii(e){return e>1?Mt:e<-1?-Mt:Math.asin(e)}function Bc(e){return e>1?0:e<-1?ie:Math.acos(e)}function an(e){return e>0?Math.sqrt(e):0}function zc(){return new Oi}function Oi(){this.reset()}Oi.prototype={constructor:Oi,reset:function(){this.s=this.t=0},add:function(e){qc(Di,e,this.t),qc(this,Di.s,this.s),this.s?this.t+=Di.t:this.s=Di.t},valueOf:function(){return this.s}};var Di=new Oi;function qc(e,t,n){var r=e.s=t+n,i=r-t,o=r-i;e.t=t-o+(n-i)}function $n(e){return[on(e[1],e[0]),Ii(e[2])]}function st(e){var t=e[0],n=e[1],r=Le(n);return[r*Le(t),r*qe(t),qe(n)]}function ge(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Xe(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function Qn(e){var t=an(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}function de(e,t){var n=t[0]-e[0],r=t[1]-e[1],i=t[2]-e[2];return n*n+r*r+i*i=0?1:-1,A=b*w,T=A>ie,k=_*E;if(ga.add(on(k*b*qe(A),x*v+k*Le(A))),o+=T?w+b*Zc:w,T^u>=n^g>=n){var R=Xe(st(d),st(m));Qn(R);var M=Xe(i,R);Qn(M);var O=(T^w>=0?-1:1)*Ii(M[2]);(r>O||r===O&&(R[0]||R[1]))&&(a+=T^w>=0?1:-1)}}return(o<-ot||o"u"&&(i=am),function(o){var a=t(o),s=Mc(),l=t(s),c=!1,f,d,u,h={point:_,lineStart:p,lineEnd:m,polygonStart:function(){h.point=g,h.lineStart=y,h.lineEnd=E,d=[],f=[]},polygonEnd:function(){h.point=_,h.lineStart=p,h.lineEnd=m,d=Ci(d);var v=Ni(f,r);d.length?(c||(o.polygonStart(),c=!0),Lc(d,i,v,n,o)):v&&(c||(o.polygonStart(),c=!0),n(null,null,1,o)),c&&(o.polygonEnd(),c=!1),d=f=null},sphere:function(){n(null,null,1,o)}};function _(v,w){e(v,w)&&o.point(v,w)}function x(v,w){a.point(v,w)}function p(){h.point=x,a.lineStart()}function m(){h.point=_,a.lineEnd()}function g(v,w,b){u.push([v,w]),l.point(v,w,b)}function y(){l.lineStart(),u=[]}function E(){g(u[0][0],u[0][1],!0),l.lineEnd();var v=l.clean(),w=s.result(),b,A=w.length,T,k,R;if(u.pop(),f.push(u),u=null,!!A){if(v&1){if(k=w[0],(T=k.length-1)>0){for(c||(o.polygonStart(),c=!0),o.lineStart(),b=0;b1&&v&2&&w.push(w.pop().concat(w.shift())),d.push(w.filter(om))}}return h}}function om(e){return e.length>1}function am(e,t){return((e=e.x)[0]<0?e[1]-Mt-ot:Mt-e[1])-((t=t.x)[0]<0?t[1]-Mt-ot:Mt-t[1])}function Pi(e,t){this.from=e,this.to=t,this.normal=Xe(e,t),this.fromNormal=Xe(this.normal,e),this.toNormal=Xe(this.normal,t),this.l=Bc(ge(e,t))}function Vc(e,t){if(de(e.from,t.from)||de(e.from,t.to))return e.from;if(de(e.to,t.from)||de(e.to,t.to))return e.to;var n=e.l+t.l0&&o<0&&a>0&&s<0||i>=0&&o<=0&&a>=0&&s<=0&&(de(r,e.from)||de(r,e.to)||de(r,t.from)||de(r,t.to))||(r[0]=-r[0],r[1]=-r[1],r[2]=-r[2],i=-i,o=-o,a=-a,s=-s,i>0&&o<0&&a>0&&s<0||i>=0&&o<=0&&a>=0&&s<=0&&(de(r,e.from)||de(r,e.to)||de(r,t.from)||de(r,t.to))))return r}}function Gc(e,t){var n=ge(e,t.fromNormal),r=ge(e,t.toNormal);return e=ge(e,t.normal),Uc(e)-at&&r-at)}var Yc={};var sm=function(e){return e};function _a(e){function t(n){var r;if(n.type==="MultiPolygon")r=n.coordinates;else if(n.type==="Polygon")r=[n.coordinates];else return sm;var i=r.map(function(a){a=a.map(lm);var s=dm(a),l=fm(a[0]);return Wc(s,pm(l,s),um(l,a),a[0][0],cm)}),o=function(a){var s=i.map(l=>l(a));return{point:function(l,c){s.forEach(f=>f.point(l,c))},lineStart:function(){s.forEach(l=>l.lineStart())},lineEnd:function(){s.forEach(l=>l.lineEnd())},polygonStart:function(){s.forEach(l=>l.polygonStart())},polygonEnd:function(){s.forEach(l=>l.polygonEnd())},sphere:function(){s.forEach(l=>l.sphere())}}};return o.polygon=function(a){return a?(n=a,t(n)):n},o}return t(e)}function lm(e){return e.map(function(t){return[t[0]*Xn,t[1]*Xn]})}function fm(e){var t,n,r=[];return e.forEach(function(i,o){return t=st(i),o&&r.push(new Pi(n,t)),n=t,i}),r}function cm(e,t){return e=e.x,t=t.x,e.index-t.index||e.t-t.t}function um(e,t){return function(n,r,i,o){if(n==null)o.polygonStart(),t.forEach(function(c){o.lineStart(),c.forEach(function(f){o.point(f[0],f[1])}),o.lineEnd()}),o.polygonEnd();else if(n.index!==r.index&&n.index!=null&&r.index!=null)for(var a=n.index;a!==r.index;a=(a+i+e.length)%e.length){var s=e[a],l=$n(i>0?s.to:s.from);o.point(l[0],l[1])}else if(n.index===r.index&&n.t>r.t&&n.index!=null&&r.index!=null)for(a=0;a0?s.to:s.from),o.point(l[0],l[1])}}function jc(e,t){var n=Xe(e,t);return on(an(ge(n,n)),ge(e,t))}function dm(e){return function(t,n){return Ni(e,[t,n])}}function Mi(e,t){return ha(qe(100*e+t))}function pm(e,t){return function(n){var r,i,o,a,s,l,c,f=[];return{lineStart:function(){r=null,l=1,c=[]},lineEnd:function(){s&&f.push(c),f.forEach(function(d){n.lineStart(),d.forEach(function(u){n.point(...u)}),n.lineEnd()}),f=[]},point:function(d,u,h){Le(d)==-1&&(d-=ha(qe(d))*1e-5),h&&(d=i,u=o);var _=st([d,u]),x=s,p,m,g,y,E;if(r){var v=new Pi(r,_),w=[];for(m=0,g=100;m0;++m)if(y=e[m],p=Vc(v,y),p){if(p===Yc||de(p,r)||de(p,_)||de(p,y.from)||de(p,y.to)){E=1e-4,d=(d+3*ie+Mi(m,g)*E)%(2*ie)-ie,u=ma(ie/2-1e-4,pa(1e-4-ie/2,u+Mi(m,g)*E)),v=new Pi(r,_=st([d,u])),m=-1,--g,w.length=0;continue}var b=$n(p);p.distance=jc(r,p),p.index=m,p.t=jc(y.from,p),p[0]=b[0],p[1]=b[1],p.pop(),w.push(p)}if(w.length)for(l=0,w.sort(function(A,T){return A.distance-T.distance}),m=0;m0;++m)y=e[m],Gc(_,y)&&(E=1e-4,d=(d+3*ie+Mi(m,g)*E)%(2*ie)-ie,u=ma(ie/2-1e-4,pa(1e-4-ie/2,u+Mi(m,g)*E)),_=st([d,u]),m=-1,--g);a=x=t(i=d,o=u),x&&(c=[],c.push([d,u]))}r=_,s=x},clean:function(){return l|(a&&s)<<1}}}}var wa=8;function Xc(e){let[t,n]=e,r=Nn(t,n)===0;if(Nn(t,n)*180/Math.PI<=wa){console.debug("tpeqd with two close foci, moving one slightly to avoid rendering bugs");let d=n[1]>0?-wa:wa;n=[n[0],n[1]+d]}t[0]>n[0]&&([n,t]=[t,n]);let o=.01,a=Nn(t,n)/2*180/Math.PI,s=_a({type:"Polygon",coordinates:[[[180-a-o,o],[180-a-o,-o],[-180+a+o,-o],[-180+a+o,o],[180-a-o,o]]]}),l=Ti(t,n).scale(1).clipExtent([[0,0],[500,500]]).translate([0,0]).precision(1e-4).preclip(s),c=Cn(t,n)(.5),f=Kc(l,c,!0);return isNaN(f)?(console.error("Azimuth calculation failed. p1:",t,"; p2:",n),l.angle(0)):r?l.angle(Kc(l,t,!0)):l.angle(f),l.clipExtent([[-200,-200],[200,200]]),l}function Kc(e,t,n=!1){let r=e(t),i=e(n?[0,90]:[t[0],Math.min(90,t[1]+.001)]);return 180*Math.atan2(i[1]-r[1],i[0]-r[0])/Math.PI+90}var Jn=class{constructor(t,n){this.label=t;this.image=n;this.canvas=document.createElement("canvas"),this.canvas.width=2*10+80,this.canvas.height=2*10+80,this.canvas.setAttribute("title",this.label),this.render()}canvas;render(){let t=this.canvas.getContext("2d");t.translate(10+80/2,10+80/2),t.filter=`blur(${10/2}px`,t.fillStyle="black",t.beginPath(),t.arc(0,0,80/2,0,Math.PI*2,!1),t.closePath(),t.fill(),t.filter="none",t.beginPath(),t.arc(0,0,80/2,0,Math.PI*2,!1),t.clip(),t.drawImage(this.image,-80/2,-80/2,80,80)}toImageData(){return this.canvas.toDataURL("png")}};function va(e,t){let n=[typeof e=="string"?e:e.id,typeof t=="string"?t:t.id];n.sort((o,a)=>o.localeCompare(a));let[r,i]=n;return`${r}__${i}`}function $c(e,t){let n=[typeof e=="string"?e:e.id,typeof t=="string"?t:t.id],r=n[0];return n.sort(),r!==n[0]}var sn=150,er=class{constructor(t){this.canvasParent=t;this.videoElement=document.createElement("video"),this.videoElement.setAttribute("width",500 .toString()),this.videoElement.setAttribute("height",500 .toString()),this.canvas=document.createElement("canvas"),this.canvas.setAttribute("width",500 .toString()),this.canvas.setAttribute("height",500 .toString()),this.canvas.setAttribute("id","frame-canvas"),this.overlaySvg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.overlaySvg.setAttribute("width",`${500+2*sn}`),this.overlaySvg.setAttribute("height",`${500+2*sn}`),this.overlaySvg.setAttribute("viewBox",`${-sn} ${-sn} ${500+2*sn} ${500+2*sn}`),this.canvasParent.replaceChildren(this.videoElement,this.canvas,this.overlaySvg),this.overlay=ke(this.overlaySvg)}canvas;overlaySvg;overlay;videoElement;animationRunning=!1;currentVertexID="";currentTargetVertexID="";graphId="@invalid";graph;videos=[];proxyImages=new Map;availableEdgesPerVertex=new Map;renderFrame(t,n){let r=this.canvas.getContext("2d");if(t===null?r.clearRect(0,0,500,500):r.drawImage(t,0,0),n){let o=(90-(n.azimuth??0))*Math.PI/180,a=Math.PI*3/180,s=(m,g)=>`${Math.cos(g)*m+500/2} ${-Math.sin(g)*m+500/2}`,l=[{fill:!0,d:` M ${s(500/2+5,o+a)} L ${s(500/2+50,o)} ${s(500/2+10,o)} Z `},{fill:!1,d:` M ${s(500/2+10,o)} L ${s(500/2+5,o-a)} ${s(500/2+50,o)} Z L ${s(500/2,o)} `}];this.overlay.selectAll(".compass").data(l).join("path").classed("compass",!0).attr("fill",m=>m.fill?"firebrick":"none").attr("stroke","firebrick").attr("stroke-width",2).attr("d",m=>m.d),this.overlay.selectAll(".border").data([null]).join("circle").classed("border",!0).attr("cx",500/2).attr("cy",500/2).attr("r",500/2).attr("fill","none").attr("stroke","black").attr("stroke-width","2");let c=new Set;c.add(this.currentVertexID),c.add(this.currentTargetVertexID),this.availableEdgesPerVertex.get(this.currentTargetVertexID)?.forEach((m,g)=>c.add(g));let f=Array.from(c).map(m=>this.graph.vertices[m]),d=Xc(n.projectionNodes);d.translate(n.translate).scale(n.scale);{let[m,g]=n.translate;d.translate([-m*n.scale+500/2,-g*n.scale+500/2])}let u=[500/2,500/2],h=f.map(m=>{let g=d(m.coords),y=g[0]-u[0],E=g[1]-u[1],v=Math.atan2(E,y),w=y*y+E*E,b=Math.sqrt(w);return{vertex:m,position:g,dx:y,dy:E,direction:v,distance:b}}),_=Array.from(this.availableEdgesPerVertex.get(this.currentVertexID)??[]).filter(([m,g])=>!c.has(m)).map(([m,g])=>{let y=this.graph.vertices[m],E=d(y.coords),v=E[0]-u[0],w=E[1]-u[1],b=Math.atan2(w,v),A=v*v+w*w;return{vertex:y,position:E,dx:v,dy:w,direction:b,distance2:A}}).filter(m=>m.distance2<500*500/4),x=h.filter(m=>m.distance<500/2-100/2),p=h.filter(m=>m.distance>=500/2-100/2);this.overlay.selectAll("g.map-markers").data([null]).join("g").classed("map-markers",!0).selectAll("circle.map-marker").data([...x,..._]).join("circle").classed("map-marker",!0).attr("r",4).attr("cx",m=>m.position[0]).attr("cy",m=>m.position[1]).attr("fill","red").attr("stroke","black").attr("stroke-width",2),this.overlay.selectAll("g.proxies").data([null]).join("g").classed("proxies",!0).attr("transform",new DOMMatrix().translate(500/2,500/2).toString()).selectAll("image.proxy").data(p).join("image").classed("proxy",!0).attr("transform",m=>{let g=Math.min(500/2+100/2,m.distance);return new DOMMatrix().rotate(m.direction*180/Math.PI).translate(g,0).rotate(0-m.direction*180/Math.PI).translate(-100/2,-100/2).toString()}).attr("width",100).attr("height",100).attr("href",m=>this.proxyImages.get(m.vertex.id)??"").each(function(m){ke(this).selectAll("title").data([m.vertex.label]).join("title").text(g=>g)}).attr("title",m=>m.vertex.label).on("click",(m,g)=>this.startAnimation(g.vertex.id))}}async loadGraph(t){this.graphId=t;let n=await An(`data/${t}/graph.json`),r=new Map,i=await Promise.all(n.edges.map(async([o,a])=>{let s=n.vertices[o],l=n.vertices[a],c=va(s,l),f=await fetch(`data/${t}/${c}.zip`),d=new vt(await f.blob()),h=await new rn(d).getEntries();h.sort((v,w)=>v.filename.localeCompare(w.filename));let _=[];h.forEach(v=>{if(v.filename==="metadata.json")return;let w=new nt,b=v.getData(w);_.push(b.then(A=>createImageBitmap(A)))});let x=new en,m=await h.find(v=>v.filename==="metadata.json")?.getData?.(x)??"{}",g=JSON.parse(m),[y,E]=await Promise.all(["from","to"].map(async v=>{let w=new nt,A=await h.find(T=>T.filename===`${v}.png`).getData(w);return await createImageBitmap(A)}));return{id:c,metadata:g,fromImage:y,toImage:E}}));this.graph=n,this.videos=i,i.forEach(o=>{[[o.metadata.from.id,o.fromImage],[o.metadata.to.id,o.toImage]].forEach(([f,d])=>{if(this.proxyImages.has(f))return;let u=new Jn(f,d);this.proxyImages.set(f,u.toImageData())});let{from:a,to:s,forwardFile:l,backwardFile:c}=o.metadata;r.has(a.id)?r.get(a.id)?.set(s.id,l):r.set(a.id,new Map([[s.id,l]])),r.has(s.id)?r.get(s.id)?.set(a.id,c):r.set(s.id,new Map([[a.id,c]]))}),this.availableEdgesPerVertex=r,this.animationRunning=!1,this.currentVertexID=i[0].metadata.from.id,this.currentTargetVertexID=this.currentVertexID,this.renderFrame(i[0].fromImage,i[0].metadata.frames[0]),this.updateButtons()}updateButtons(){ke("aside").selectAll(".vertex-button").data(Object.entries(this.graph?.vertices??[]),t=>t[0]).join("button").classed("vertex-button",!0).text(t=>t[1].label).attr("disabled",t=>this.animationRunning||t[0]===this.currentVertexID?"":Object.values(this.graph?.edges??[]).some(n=>n.includes(t[0])&&n.includes(this.currentVertexID))?null:"").on("click",(t,n)=>this.startAnimation(n[0])),ke("main").style("pointer-events",this.animationRunning?"none":"auto"),ke("main").selectAll("svg image.proxy").style("pointer-events",this.animationRunning?"none":"auto").style("cursor",this.animationRunning?"auto":"pointer")}async startAnimation(t){await new Promise(n=>{let r=this.availableEdgesPerVertex.get(this.currentVertexID)?.get(t)??"",i=va(this.currentVertexID,t),o=$c(this.currentVertexID,t),a=this.videos.find(u=>u.id===i),s=[...a.metadata.frames];o&&s.reverse(),this.renderFrame(o?a.toImage:a.fromImage,s[0]),this.videoElement.setAttribute("src",`data/${this.graphId}/${r}`),this.videoElement.setAttribute("preload","auto");let l=0,c=0;this.currentTargetVertexID=t,this.animationRunning=!0,this.updateButtons();let f=Array.from(this.availableEdgesPerVertex.get(t)?.entries()??[]).map(([u,h])=>`data/${this.graphId}/${h}`);if(ke("head").selectAll("link.video-link").data(f).join("link").classed("video-link",!0).attr("rel","prefetch").attr("as","video").attr("type","video/webm").attr("href",u=>u),this.videoElement.requestVideoFrameCallback!==void 0){let u=(x,p)=>{let m=Math.round(p.mediaTime*60);this.renderFrame(null,s[m]),l=this.videoElement.requestVideoFrameCallback(u)},h=()=>{this.renderFrame(null,s[0]),this.videoElement.play(),l=this.videoElement.requestVideoFrameCallback(u)},_=()=>{this.videoElement.cancelVideoFrameCallback(l),this.animationRunning=!1,this.currentVertexID=t,this.renderFrame(o?a.fromImage:a.toImage,s[s.length-1]),this.updateButtons(),ke("head").selectAll("link.video-link").attr("rel","preload"),n()};this.videoElement.addEventListener("loadeddata",h,{once:!0}),this.videoElement.addEventListener("ended",_,{once:!0}),this.videoElement.load()}else{console.warn("HTMLVideoElement#requestVideoFrameCallback is not supported in this browser. The synchronization between the video playback and the other UI might be subpar.");let u=()=>{this.renderFrame(null,s[c]),c++,c>=s.length?_():l=requestAnimationFrame(u)},h=()=>{this.renderFrame(null,s[0]),this.videoElement.play(),l=requestAnimationFrame(u)},_=()=>{cancelAnimationFrame(l),this.animationRunning=!1,this.currentVertexID=t,this.renderFrame(o?a.fromImage:a.toImage,s[s.length-1]),this.updateButtons(),ke("head").selectAll("link.video-link").attr("rel","preload"),n()};this.videoElement.addEventListener("loadeddata",h,{once:!0}),this.videoElement.addEventListener("ended",_,{once:!0}),this.videoElement.load()}})}};var mm=new URLSearchParams(document.location.search),Qc=mm.get("graph")??"stuv";An("graphs.json").then(e=>{e.sort((t,n)=>t.localeCompare(n)),ke("header .graph-links").selectAll("a").data(e).join("a").attr("target","_self").attr("data-identity-link",t=>t===Qc?"":null).attr("href",t=>`?${new URLSearchParams([["graph",t]]).toString()}`).text(t=>t)});var hm=ke("#canvas").node(),xm=new er(hm);await xm.loadGraph(Qc); //# sourceMappingURL=script.js.map