quake2ts 0.0.281 → 0.0.283
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/packages/client/dist/browser/index.global.js +13 -13
- package/packages/client/dist/browser/index.global.js.map +1 -1
- package/packages/client/dist/cjs/index.cjs +46 -10
- package/packages/client/dist/cjs/index.cjs.map +1 -1
- package/packages/client/dist/esm/index.js +45 -10
- package/packages/client/dist/esm/index.js.map +1 -1
- package/packages/client/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/client/dist/types/index.d.ts +10 -0
- package/packages/client/dist/types/index.d.ts.map +1 -1
- package/packages/engine/dist/browser/index.global.js +1 -1
- package/packages/engine/dist/browser/index.global.js.map +1 -1
- package/packages/engine/dist/cjs/index.cjs +3 -0
- package/packages/engine/dist/cjs/index.cjs.map +1 -1
- package/packages/engine/dist/esm/index.js +3 -0
- package/packages/engine/dist/esm/index.js.map +1 -1
- package/packages/engine/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/engine/dist/types/demo/playback.d.ts +1 -0
- package/packages/engine/dist/types/demo/playback.d.ts.map +1 -1
- package/packages/game/dist/browser/index.global.js +3 -3
- package/packages/game/dist/browser/index.global.js.map +1 -1
- package/packages/game/dist/cjs/index.cjs +427 -0
- package/packages/game/dist/cjs/index.cjs.map +1 -1
- package/packages/game/dist/esm/index.js +427 -0
- package/packages/game/dist/esm/index.js.map +1 -1
- package/packages/game/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/game/dist/types/entities/index.d.ts +1 -1
- package/packages/game/dist/types/entities/index.d.ts.map +1 -1
- package/packages/game/dist/types/entities/monsters/arachnid.d.ts +5 -0
- package/packages/game/dist/types/entities/monsters/arachnid.d.ts.map +1 -0
- package/packages/game/dist/types/entities/monsters/common.d.ts +8 -1
- package/packages/game/dist/types/entities/monsters/common.d.ts.map +1 -1
- package/packages/game/dist/types/entities/monsters/index.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,aAAa,EACb,eAAe,EAEf,MAAM,EACN,QAAQ,EACR,sBAAsB,EAEtB,UAAU,EAEX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAkJ,MAAM,kBAAkB,CAAC;AAG/L,OAAO,EAAE,gBAAgB,EAA8B,eAAe,EAA4B,MAAM,iBAAiB,CAAC;AAC1H,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI1D,OAAO,EAAE,gBAAgB,EAAoB,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAgB,MAAM,gBAAgB,CAAC;AAQ3D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjH,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,eAAe,EACf,KAAK,sBAAsB,GAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,EAClB,KAAK,mBAAmB,GACzB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,gBAAgB,EAChB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE3E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAIzD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,GAAG,CAAC,EAAE;YAAE,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAA;KAAE,CAAC;IACnG,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;CAC5B;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,eAAe,CAAC;IAEpE,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,eAAe,CAAC;IAC/C,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAGpD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,YAAY,EAAE,sBAAsB,CAAC;IACrC,WAAW,EAAE,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,aAAa,EACb,eAAe,EAEf,MAAM,EACN,QAAQ,EACR,sBAAsB,EAEtB,UAAU,EAEX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAkJ,MAAM,kBAAkB,CAAC;AAG/L,OAAO,EAAE,gBAAgB,EAA8B,eAAe,EAA4B,MAAM,iBAAiB,CAAC;AAC1H,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI1D,OAAO,EAAE,gBAAgB,EAAoB,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAgB,MAAM,gBAAgB,CAAC;AAQ3D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjH,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,eAAe,EACf,KAAK,sBAAsB,GAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,EAClB,KAAK,mBAAmB,GACzB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,gBAAgB,EAChB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE3E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAIzD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,GAAG,CAAC,EAAE;YAAE,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAA;KAAE,CAAC;IACnG,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;CAC5B;AAED,oBAAY,UAAU;IACpB,MAAM,IAAA;IACN,YAAY,IAAA;IACZ,WAAW,IAAA;CACZ;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,eAAe,CAAC;IAEpE,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,eAAe,CAAC;IAC/C,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAGpD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,YAAY,EAAE,sBAAsB,CAAC;IACrC,WAAW,EAAE,oBAAoB,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/D,gBAAgB,IAAI,IAAI,CAAC;IAGzB,WAAW,EAAE,qBAAqB,CAAC;IAGnC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,gBAAgB,GAAG,aAAa,GAAG,iBAAiB,GAAG,oBAAoB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG;QAAE,UAAU,EAAE,UAAU,CAAC;QAAC,OAAO,EAAE,eAAe,CAAA;KAAE,CAAC;IAGvV,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACjD,UAAU,IAAI,IAAI,CAAC;IAGnB,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;IACvD,QAAQ,IAAI,IAAI,CAAC;IACjB,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAGvD,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;CACnC;AAWD,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,CAilBlE"}
|
|
@@ -477,7 +477,7 @@ void main() {
|
|
|
477
477
|
float dist = distance(v_uv, vec2(0.5));
|
|
478
478
|
float alpha = v_color.a * (1.0 - smoothstep(0.35, 0.5, dist));
|
|
479
479
|
o_color = vec4(v_color.rgb, alpha);
|
|
480
|
-
}`,ks=class{constructor(t,r){this.vertexCapacity=0;this.indexCapacity=0;this.gl=t,this.system=r,this.program=Me.create(t,{vertex:wl,fragment:Al}),this.vertexBuffer=new Ee(t,t.DYNAMIC_DRAW),this.indexBuffer=new ye(t,t.DYNAMIC_DRAW),this.vertexArray=new ze(t),this.vertexArray.configureAttributes([{index:0,size:3,type:t.FLOAT,stride:36,offset:0},{index:1,size:2,type:t.FLOAT,stride:36,offset:12},{index:2,size:4,type:t.FLOAT,stride:36,offset:20}],this.vertexBuffer)}render(t){let r=this.system.buildMesh(t.viewRight,t.viewUp);if(r.indices.length===0)return;let n=r.vertices;r.vertices.byteLength>this.vertexCapacity?(this.vertexCapacity=r.vertices.byteLength,this.vertexBuffer.upload(n,this.gl.DYNAMIC_DRAW)):this.vertexBuffer.update(n);let i=r.indices;r.indices.byteLength>this.indexCapacity?(this.indexCapacity=r.indices.byteLength,this.indexBuffer.upload(i,this.gl.DYNAMIC_DRAW)):this.indexBuffer.update(i),this.gl.depthMask(!1),this.program.use();let o=this.program.getUniformLocation("u_viewProjection");this.gl.uniformMatrix4fv(o,!1,t.viewProjection),this.vertexArray.bind();for(let s of r.batches)s.blendMode==="additive"?this.gl.blendFunc(this.gl.SRC_ALPHA,this.gl.ONE):this.gl.blendFuncSeparate(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA,this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA),this.gl.drawElements(this.gl.TRIANGLES,s.count,this.gl.UNSIGNED_SHORT,s.start*2);this.gl.depthMask(!0)}dispose(){this.program.dispose(),this.vertexBuffer.dispose(),this.indexBuffer.dispose(),this.vertexArray.dispose()}};function h0(e){let{system:t,origin:r,normal:n={x:0,y:0,z:1}}=e;for(let i=0;i<12;i+=1){let o=200+t.random()*180,s=t.random()*.35;t.spawn({position:r,velocity:{x:n.x*o+(t.random()-.5)*80,y:n.y*o+(t.random()-.5)*80,z:Math.max(n.z*o,120)+s*80},color:[1,.8,.4,1],size:2.5,lifetime:.45+t.random()*.1,gravity:600,damping:2,bounce:.45,blendMode:"additive",fade:!0})}for(let i=0;i<8;i+=1)t.spawn({position:r,velocity:{x:(t.random()-.5)*40,y:(t.random()-.5)*40,z:80+t.random()*40},color:[.45,.45,.45,.75],size:6,lifetime:.6,gravity:200,damping:4,bounce:.15,blendMode:"alpha",fade:!0})}function m0(e){let{system:t,origin:r}=e;for(let n=0;n<40;n+=1){let i=t.random()*Math.PI*2,o=Math.acos(2*t.random()-1),s=220+t.random()*260,a={x:Math.sin(o)*Math.cos(i),y:Math.sin(o)*Math.sin(i),z:Math.cos(o)};t.spawn({position:r,velocity:{x:a.x*s,y:a.y*s,z:a.z*s},color:[1,.6,.2,1],size:5,lifetime:.9,gravity:700,damping:1,bounce:.35,blendMode:"additive",fade:!0})}for(let n=0;n<16;n+=1)t.spawn({position:r,velocity:{x:(t.random()-.5)*30,y:(t.random()-.5)*30,z:120+t.random()*120},color:[.25,.25,.25,.9],size:12,lifetime:1.2,gravity:300,damping:3,blendMode:"alpha",fade:!0})}function p0(e){let{system:t,origin:r,direction:n={x:0,y:0,z:1}}=e;for(let i=0;i<24;i+=1){let o=120+t.random()*180;t.spawn({position:r,velocity:{x:n.x*o+(t.random()-.5)*70,y:n.y*o+(t.random()-.5)*70,z:n.z*o+t.random()*80},color:[.6,0,0,.95],size:3,lifetime:.8,gravity:900,damping:1,bounce:.2,blendMode:"alpha",fade:!0})}}function g0(e){let{system:t,origin:r}=e;for(let n=0;n<30;n+=1){let i=t.random()*Math.PI*2,o=8+t.random()*8;t.spawn({position:r,velocity:{x:Math.cos(i)*o,y:Math.sin(i)*o,z:100+t.random()*80},color:[.4,.6,1,.9],size:4,lifetime:.5,gravity:300,damping:2,blendMode:"additive",fade:!0})}}function y0(e){let{system:t,origin:r,direction:n={x:1,y:0,z:0}}=e;for(let i=0;i<10;i+=1){let o=350+t.random()*100;t.spawn({position:r,velocity:{x:n.x*o+(t.random()-.5)*30,y:n.y*o+(t.random()-.5)*30,z:n.z*o+(t.random()-.5)*30},color:[1,.8,.3,1],size:3,lifetime:.25,gravity:200,damping:1,blendMode:"additive",fade:!0})}}function x0(e){let{system:t,origin:r,direction:n={x:0,y:0,z:0}}=e;for(let i=0;i<6;i+=1)t.spawn({position:{x:r.x+n.x*i*2,y:r.y+n.y*i*2,z:r.z+n.z*i*2},velocity:{x:(t.random()-.5)*15,y:(t.random()-.5)*15,z:20+t.random()*15},color:[.6,.6,.6,.8],size:2.2,lifetime:.6,gravity:200,damping:1.5,blendMode:"alpha",fade:!0})}var Ar=class{constructor(t){this.buffer=t,this.view=new DataView(t),this.offset=0}hasMore(){return this.offset<this.buffer.byteLength}readNextBlock(){if(this.offset+4>this.buffer.byteLength)return null;let t=this.view.getInt32(this.offset,!0);if(this.offset+=4,t<0||t>2097152)return console.warn(`DemoReader: Invalid block length ${t} at offset ${this.offset-4}`),null;if(this.offset+t>this.buffer.byteLength)return console.warn(`DemoReader: Incomplete block. Expected ${t} bytes, but only ${this.buffer.byteLength-this.offset} remain.`),null;let r=this.buffer.slice(this.offset,this.offset+t);return this.offset+=t,{length:t,data:new kn(r)}}reset(){this.offset=0}getOffset(){return this.offset}};function Mn(e){let t=e.length;for(;--t>=0;)e[t]=0}var c1=0,nu=1,d1=2,u1=3,f1=258,Zl=29,Qi=256,Wi=Qi+1+Zl,Sn=30,Yl=19,iu=2*Wi+1,Mr=15,Ml=16,h1=7,ql=256,ou=16,su=17,au=18,Nl=new Uint8Array([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]),Ns=new Uint8Array([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]),m1=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),lu=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),p1=512,It=new Array((Wi+2)*2);Mn(It);var Hi=new Array(Sn*2);Mn(Hi);var Xi=new Array(p1);Mn(Xi);var Ki=new Array(f1-u1+1);Mn(Ki);var jl=new Array(Zl);Mn(jl);var Us=new Array(Sn);Mn(Us);function El(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}var cu,du,uu;function Ll(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}var fu=e=>e<256?Xi[e]:Xi[256+(e>>>7)],$i=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},Re=(e,t,r)=>{e.bi_valid>Ml-r?(e.bi_buf|=t<<e.bi_valid&65535,$i(e,e.bi_buf),e.bi_buf=t>>Ml-e.bi_valid,e.bi_valid+=r-Ml):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)},ft=(e,t,r)=>{Re(e,r[t*2],r[t*2+1])},hu=(e,t)=>{let r=0;do r|=e&1,e>>>=1,r<<=1;while(--t>0);return r>>>1},g1=e=>{e.bi_valid===16?($i(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},y1=(e,t)=>{let r=t.dyn_tree,n=t.max_code,i=t.stat_desc.static_tree,o=t.stat_desc.has_stree,s=t.stat_desc.extra_bits,a=t.stat_desc.extra_base,d=t.stat_desc.max_length,l,c,h,u,f,m,g=0;for(u=0;u<=Mr;u++)e.bl_count[u]=0;for(r[e.heap[e.heap_max]*2+1]=0,l=e.heap_max+1;l<iu;l++)c=e.heap[l],u=r[r[c*2+1]*2+1]+1,u>d&&(u=d,g++),r[c*2+1]=u,!(c>n)&&(e.bl_count[u]++,f=0,c>=a&&(f=s[c-a]),m=r[c*2],e.opt_len+=m*(u+f),o&&(e.static_len+=m*(i[c*2+1]+f)));if(g!==0){do{for(u=d-1;e.bl_count[u]===0;)u--;e.bl_count[u]--,e.bl_count[u+1]+=2,e.bl_count[d]--,g-=2}while(g>0);for(u=d;u!==0;u--)for(c=e.bl_count[u];c!==0;)h=e.heap[--l],!(h>n)&&(r[h*2+1]!==u&&(e.opt_len+=(u-r[h*2+1])*r[h*2],r[h*2+1]=u),c--)}},mu=(e,t,r)=>{let n=new Array(Mr+1),i=0,o,s;for(o=1;o<=Mr;o++)i=i+r[o-1]<<1,n[o]=i;for(s=0;s<=t;s++){let a=e[s*2+1];a!==0&&(e[s*2]=hu(n[a]++,a))}},x1=()=>{let e,t,r,n,i,o=new Array(Mr+1);for(r=0,n=0;n<Zl-1;n++)for(jl[n]=r,e=0;e<1<<Nl[n];e++)Ki[r++]=n;for(Ki[r-1]=n,i=0,n=0;n<16;n++)for(Us[n]=i,e=0;e<1<<Ns[n];e++)Xi[i++]=n;for(i>>=7;n<Sn;n++)for(Us[n]=i<<7,e=0;e<1<<Ns[n]-7;e++)Xi[256+i++]=n;for(t=0;t<=Mr;t++)o[t]=0;for(e=0;e<=143;)It[e*2+1]=8,e++,o[8]++;for(;e<=255;)It[e*2+1]=9,e++,o[9]++;for(;e<=279;)It[e*2+1]=7,e++,o[7]++;for(;e<=287;)It[e*2+1]=8,e++,o[8]++;for(mu(It,Wi+1,o),e=0;e<Sn;e++)Hi[e*2+1]=5,Hi[e*2]=hu(e,5);cu=new El(It,Nl,Qi+1,Wi,Mr),du=new El(Hi,Ns,0,Sn,Mr),uu=new El(new Array(0),m1,0,Yl,h1)},pu=e=>{let t;for(t=0;t<Wi;t++)e.dyn_ltree[t*2]=0;for(t=0;t<Sn;t++)e.dyn_dtree[t*2]=0;for(t=0;t<Yl;t++)e.bl_tree[t*2]=0;e.dyn_ltree[ql*2]=1,e.opt_len=e.static_len=0,e.sym_next=e.matches=0},gu=e=>{e.bi_valid>8?$i(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},_0=(e,t,r,n)=>{let i=t*2,o=r*2;return e[i]<e[o]||e[i]===e[o]&&n[t]<=n[r]},Tl=(e,t,r)=>{let n=e.heap[r],i=r<<1;for(;i<=e.heap_len&&(i<e.heap_len&&_0(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!_0(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n},b0=(e,t,r)=>{let n,i,o=0,s,a;if(e.sym_next!==0)do n=e.pending_buf[e.sym_buf+o++]&255,n+=(e.pending_buf[e.sym_buf+o++]&255)<<8,i=e.pending_buf[e.sym_buf+o++],n===0?ft(e,i,t):(s=Ki[i],ft(e,s+Qi+1,t),a=Nl[s],a!==0&&(i-=jl[s],Re(e,i,a)),n--,s=fu(n),ft(e,s,r),a=Ns[s],a!==0&&(n-=Us[s],Re(e,n,a)));while(o<e.sym_next);ft(e,ql,t)},Ul=(e,t)=>{let r=t.dyn_tree,n=t.stat_desc.static_tree,i=t.stat_desc.has_stree,o=t.stat_desc.elems,s,a,d=-1,l;for(e.heap_len=0,e.heap_max=iu,s=0;s<o;s++)r[s*2]!==0?(e.heap[++e.heap_len]=d=s,e.depth[s]=0):r[s*2+1]=0;for(;e.heap_len<2;)l=e.heap[++e.heap_len]=d<2?++d:0,r[l*2]=1,e.depth[l]=0,e.opt_len--,i&&(e.static_len-=n[l*2+1]);for(t.max_code=d,s=e.heap_len>>1;s>=1;s--)Tl(e,r,s);l=o;do s=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Tl(e,r,1),a=e.heap[1],e.heap[--e.heap_max]=s,e.heap[--e.heap_max]=a,r[l*2]=r[s*2]+r[a*2],e.depth[l]=(e.depth[s]>=e.depth[a]?e.depth[s]:e.depth[a])+1,r[s*2+1]=r[a*2+1]=l,e.heap[1]=l++,Tl(e,r,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],y1(e,t),mu(r,d,e.bl_count)},v0=(e,t,r)=>{let n,i=-1,o,s=t[1],a=0,d=7,l=4;for(s===0&&(d=138,l=3),t[(r+1)*2+1]=65535,n=0;n<=r;n++)o=s,s=t[(n+1)*2+1],!(++a<d&&o===s)&&(a<l?e.bl_tree[o*2]+=a:o!==0?(o!==i&&e.bl_tree[o*2]++,e.bl_tree[ou*2]++):a<=10?e.bl_tree[su*2]++:e.bl_tree[au*2]++,a=0,i=o,s===0?(d=138,l=3):o===s?(d=6,l=3):(d=7,l=4))},S0=(e,t,r)=>{let n,i=-1,o,s=t[1],a=0,d=7,l=4;for(s===0&&(d=138,l=3),n=0;n<=r;n++)if(o=s,s=t[(n+1)*2+1],!(++a<d&&o===s)){if(a<l)do ft(e,o,e.bl_tree);while(--a!==0);else o!==0?(o!==i&&(ft(e,o,e.bl_tree),a--),ft(e,ou,e.bl_tree),Re(e,a-3,2)):a<=10?(ft(e,su,e.bl_tree),Re(e,a-3,3)):(ft(e,au,e.bl_tree),Re(e,a-11,7));a=0,i=o,s===0?(d=138,l=3):o===s?(d=6,l=3):(d=7,l=4)}},_1=e=>{let t;for(v0(e,e.dyn_ltree,e.l_desc.max_code),v0(e,e.dyn_dtree,e.d_desc.max_code),Ul(e,e.bl_desc),t=Yl-1;t>=3&&e.bl_tree[lu[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},b1=(e,t,r,n)=>{let i;for(Re(e,t-257,5),Re(e,r-1,5),Re(e,n-4,4),i=0;i<n;i++)Re(e,e.bl_tree[lu[i]*2+1],3);S0(e,e.dyn_ltree,t-1),S0(e,e.dyn_dtree,r-1)},v1=e=>{let t=4093624447,r;for(r=0;r<=31;r++,t>>>=1)if(t&1&&e.dyn_ltree[r*2]!==0)return 0;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return 1;for(r=32;r<Qi;r++)if(e.dyn_ltree[r*2]!==0)return 1;return 0},w0=!1,S1=e=>{w0||(x1(),w0=!0),e.l_desc=new Ll(e.dyn_ltree,cu),e.d_desc=new Ll(e.dyn_dtree,du),e.bl_desc=new Ll(e.bl_tree,uu),e.bi_buf=0,e.bi_valid=0,pu(e)},yu=(e,t,r,n)=>{Re(e,(c1<<1)+(n?1:0),3),gu(e),$i(e,r),$i(e,~r),r&&e.pending_buf.set(e.window.subarray(t,t+r),e.pending),e.pending+=r},w1=e=>{Re(e,nu<<1,3),ft(e,ql,It),g1(e)},A1=(e,t,r,n)=>{let i,o,s=0;e.level>0?(e.strm.data_type===2&&(e.strm.data_type=v1(e)),Ul(e,e.l_desc),Ul(e,e.d_desc),s=_1(e),i=e.opt_len+3+7>>>3,o=e.static_len+3+7>>>3,o<=i&&(i=o)):i=o=r+5,r+4<=i&&t!==-1?yu(e,t,r,n):e.strategy===4||o===i?(Re(e,(nu<<1)+(n?1:0),3),b0(e,It,Hi)):(Re(e,(d1<<1)+(n?1:0),3),b1(e,e.l_desc.max_code+1,e.d_desc.max_code+1,s+1),b0(e,e.dyn_ltree,e.dyn_dtree)),pu(e),n&&gu(e)},M1=(e,t,r)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=r,t===0?e.dyn_ltree[r*2]++:(e.matches++,t--,e.dyn_ltree[(Ki[r]+Qi+1)*2]++,e.dyn_dtree[fu(t)*2]++),e.sym_next===e.sym_end),E1=S1,L1=yu,T1=A1,I1=M1,C1=w1,z1={_tr_init:E1,_tr_stored_block:L1,_tr_flush_block:T1,_tr_tally:I1,_tr_align:C1},R1=(e,t,r,n)=>{let i=e&65535|0,o=e>>>16&65535|0,s=0;for(;r!==0;){s=r>2e3?2e3:r,r-=s;do i=i+t[n++]|0,o=o+i|0;while(--s);i%=65521,o%=65521}return i|o<<16|0},Zi=R1,k1=()=>{let e,t=[];for(var r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t},F1=new Uint32Array(k1()),D1=(e,t,r,n)=>{let i=F1,o=n+r;e^=-1;for(let s=n;s<o;s++)e=e>>>8^i[(e^t[s])&255];return e^-1},fe=D1,Tr={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},zr={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:P1,_tr_stored_block:Hl,_tr_flush_block:O1,_tr_tally:tr,_tr_align:B1}=z1,{Z_NO_FLUSH:rr,Z_PARTIAL_FLUSH:N1,Z_FULL_FLUSH:U1,Z_FINISH:qe,Z_BLOCK:A0,Z_OK:he,Z_STREAM_END:M0,Z_STREAM_ERROR:ht,Z_DATA_ERROR:H1,Z_BUF_ERROR:Il,Z_DEFAULT_COMPRESSION:V1,Z_FILTERED:G1,Z_HUFFMAN_ONLY:Fs,Z_RLE:W1,Z_FIXED:X1,Z_DEFAULT_STRATEGY:K1,Z_UNKNOWN:$1,Z_DEFLATED:Gs}=zr,Z1=9,Y1=15,q1=8,j1=29,Q1=256,Vl=Q1+1+j1,J1=30,eg=19,tg=2*Vl+1,rg=15,V=3,er=258,mt=er+V+1,ng=32,wn=42,Ql=57,Gl=69,Wl=73,Xl=91,Kl=103,Er=113,Ni=666,Le=1,En=2,Ir=3,Ln=4,ig=3,Lr=(e,t)=>(e.msg=Tr[t],t),E0=e=>e*2-(e>4?9:0),Jt=e=>{let t=e.length;for(;--t>=0;)e[t]=0},og=e=>{let t,r,n,i=e.w_size;t=e.hash_size,n=t;do r=e.head[--n],e.head[n]=r>=i?r-i:0;while(--t);t=i,n=t;do r=e.prev[--n],e.prev[n]=r>=i?r-i:0;while(--t)},sg=(e,t,r)=>(t<<e.hash_shift^r)&e.hash_mask,nr=sg,Be=e=>{let t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+r),e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,t.pending===0&&(t.pending_out=0))},Ne=(e,t)=>{O1(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Be(e.strm)},X=(e,t)=>{e.pending_buf[e.pending++]=t},Bi=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},$l=(e,t,r,n)=>{let i=e.avail_in;return i>n&&(i=n),i===0?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),r),e.state.wrap===1?e.adler=Zi(e.adler,t,i,r):e.state.wrap===2&&(e.adler=fe(e.adler,t,i,r)),e.next_in+=i,e.total_in+=i,i)},xu=(e,t)=>{let r=e.max_chain_length,n=e.strstart,i,o,s=e.prev_length,a=e.nice_match,d=e.strstart>e.w_size-mt?e.strstart-(e.w_size-mt):0,l=e.window,c=e.w_mask,h=e.prev,u=e.strstart+er,f=l[n+s-1],m=l[n+s];e.prev_length>=e.good_match&&(r>>=2),a>e.lookahead&&(a=e.lookahead);do if(i=t,!(l[i+s]!==m||l[i+s-1]!==f||l[i]!==l[n]||l[++i]!==l[n+1])){n+=2,i++;do;while(l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&n<u);if(o=er-(u-n),n=u-er,o>s){if(e.match_start=t,s=o,o>=a)break;f=l[n+s-1],m=l[n+s]}}while((t=h[t&c])>d&&--r!==0);return s<=e.lookahead?s:e.lookahead},An=e=>{let t=e.w_size,r,n,i;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-mt)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),og(e),n+=t),e.strm.avail_in===0)break;if(r=$l(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=r,e.lookahead+e.insert>=V)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=nr(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=nr(e,e.ins_h,e.window[i+V-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert<V)););}while(e.lookahead<mt&&e.strm.avail_in!==0)},_u=(e,t)=>{let r=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,n,i,o,s=0,a=e.strm.avail_in;do{if(n=65535,o=e.bi_valid+42>>3,e.strm.avail_out<o||(o=e.strm.avail_out-o,i=e.strstart-e.block_start,n>i+e.strm.avail_in&&(n=i+e.strm.avail_in),n>o&&(n=o),n<r&&(n===0&&t!==qe||t===rr||n!==i+e.strm.avail_in)))break;s=t===qe&&n===i+e.strm.avail_in?1:0,Hl(e,0,0,s),e.pending_buf[e.pending-4]=n,e.pending_buf[e.pending-3]=n>>8,e.pending_buf[e.pending-2]=~n,e.pending_buf[e.pending-1]=~n>>8,Be(e.strm),i&&(i>n&&(i=n),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+i),e.strm.next_out),e.strm.next_out+=i,e.strm.avail_out-=i,e.strm.total_out+=i,e.block_start+=i,n-=i),n&&($l(e.strm,e.strm.output,e.strm.next_out,n),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n)}while(s===0);return a-=e.strm.avail_in,a&&(a>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=a&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-a,e.strm.next_in),e.strstart),e.strstart+=a,e.insert+=a>e.w_size-e.insert?e.w_size-e.insert:a),e.block_start=e.strstart),e.high_water<e.strstart&&(e.high_water=e.strstart),s?Ln:t!==rr&&t!==qe&&e.strm.avail_in===0&&e.strstart===e.block_start?En:(o=e.window_size-e.strstart,e.strm.avail_in>o&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,o+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),o>e.strm.avail_in&&(o=e.strm.avail_in),o&&($l(e.strm,e.window,e.strstart,o),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.high_water<e.strstart&&(e.high_water=e.strstart),o=e.bi_valid+42>>3,o=e.pending_buf_size-o>65535?65535:e.pending_buf_size-o,r=o>e.w_size?e.w_size:o,i=e.strstart-e.block_start,(i>=r||(i||t===qe)&&t!==rr&&e.strm.avail_in===0&&i<=o)&&(n=i>o?o:i,s=t===qe&&e.strm.avail_in===0&&n===i?1:0,Hl(e,e.block_start,n,s),e.block_start+=n,Be(e.strm)),s?Ir:Le)},Cl=(e,t)=>{let r,n;for(;;){if(e.lookahead<mt){if(An(e),e.lookahead<mt&&t===rr)return Le;if(e.lookahead===0)break}if(r=0,e.lookahead>=V&&(e.ins_h=nr(e,e.ins_h,e.window[e.strstart+V-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-mt&&(e.match_length=xu(e,r)),e.match_length>=V)if(n=tr(e,e.strstart-e.match_start,e.match_length-V),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=V){e.match_length--;do e.strstart++,e.ins_h=nr(e,e.ins_h,e.window[e.strstart+V-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=nr(e,e.ins_h,e.window[e.strstart+1]);else n=tr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(Ne(e,!1),e.strm.avail_out===0))return Le}return e.insert=e.strstart<V-1?e.strstart:V-1,t===qe?(Ne(e,!0),e.strm.avail_out===0?Ir:Ln):e.sym_next&&(Ne(e,!1),e.strm.avail_out===0)?Le:En},bn=(e,t)=>{let r,n,i;for(;;){if(e.lookahead<mt){if(An(e),e.lookahead<mt&&t===rr)return Le;if(e.lookahead===0)break}if(r=0,e.lookahead>=V&&(e.ins_h=nr(e,e.ins_h,e.window[e.strstart+V-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=V-1,r!==0&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-mt&&(e.match_length=xu(e,r),e.match_length<=5&&(e.strategy===G1||e.match_length===V&&e.strstart-e.match_start>4096)&&(e.match_length=V-1)),e.prev_length>=V&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-V,n=tr(e,e.strstart-1-e.prev_match,e.prev_length-V),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=i&&(e.ins_h=nr(e,e.ins_h,e.window[e.strstart+V-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=V-1,e.strstart++,n&&(Ne(e,!1),e.strm.avail_out===0))return Le}else if(e.match_available){if(n=tr(e,0,e.window[e.strstart-1]),n&&Ne(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return Le}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=tr(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<V-1?e.strstart:V-1,t===qe?(Ne(e,!0),e.strm.avail_out===0?Ir:Ln):e.sym_next&&(Ne(e,!1),e.strm.avail_out===0)?Le:En},ag=(e,t)=>{let r,n,i,o,s=e.window;for(;;){if(e.lookahead<=er){if(An(e),e.lookahead<=er&&t===rr)return Le;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=V&&e.strstart>0&&(i=e.strstart-1,n=s[i],n===s[++i]&&n===s[++i]&&n===s[++i])){o=e.strstart+er;do;while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<o);e.match_length=er-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=V?(r=tr(e,1,e.match_length-V),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=tr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Ne(e,!1),e.strm.avail_out===0))return Le}return e.insert=0,t===qe?(Ne(e,!0),e.strm.avail_out===0?Ir:Ln):e.sym_next&&(Ne(e,!1),e.strm.avail_out===0)?Le:En},lg=(e,t)=>{let r;for(;;){if(e.lookahead===0&&(An(e),e.lookahead===0)){if(t===rr)return Le;break}if(e.match_length=0,r=tr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Ne(e,!1),e.strm.avail_out===0))return Le}return e.insert=0,t===qe?(Ne(e,!0),e.strm.avail_out===0?Ir:Ln):e.sym_next&&(Ne(e,!1),e.strm.avail_out===0)?Le:En};function ut(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}var Ui=[new ut(0,0,0,0,_u),new ut(4,4,8,4,Cl),new ut(4,5,16,8,Cl),new ut(4,6,32,32,Cl),new ut(4,4,16,16,bn),new ut(8,16,32,32,bn),new ut(8,16,128,128,bn),new ut(8,32,128,256,bn),new ut(32,128,258,1024,bn),new ut(32,258,258,4096,bn)],cg=e=>{e.window_size=2*e.w_size,Jt(e.head),e.max_lazy_match=Ui[e.level].max_lazy,e.good_match=Ui[e.level].good_length,e.nice_match=Ui[e.level].nice_length,e.max_chain_length=Ui[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=V-1,e.match_available=0,e.ins_h=0};function dg(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Gs,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(tg*2),this.dyn_dtree=new Uint16Array((2*J1+1)*2),this.bl_tree=new Uint16Array((2*eg+1)*2),Jt(this.dyn_ltree),Jt(this.dyn_dtree),Jt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(rg+1),this.heap=new Uint16Array(2*Vl+1),Jt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*Vl+1),Jt(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}var Ji=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.status!==wn&&t.status!==Ql&&t.status!==Gl&&t.status!==Wl&&t.status!==Xl&&t.status!==Kl&&t.status!==Er&&t.status!==Ni?1:0},bu=e=>{if(Ji(e))return Lr(e,ht);e.total_in=e.total_out=0,e.data_type=$1;let t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?Ql:t.wrap?wn:Er,e.adler=t.wrap===2?0:1,t.last_flush=-2,P1(t),he},vu=e=>{let t=bu(e);return t===he&&cg(e.state),t},ug=(e,t)=>Ji(e)||e.state.wrap!==2?ht:(e.state.gzhead=t,he),Su=(e,t,r,n,i,o)=>{if(!e)return ht;let s=1;if(t===V1&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),i<1||i>Z1||r!==Gs||n<8||n>15||t<0||t>9||o<0||o>X1||n===8&&s!==1)return Lr(e,ht);n===8&&(n=9);let a=new dg;return e.state=a,a.strm=e,a.status=wn,a.wrap=s,a.gzhead=null,a.w_bits=n,a.w_size=1<<a.w_bits,a.w_mask=a.w_size-1,a.hash_bits=i+7,a.hash_size=1<<a.hash_bits,a.hash_mask=a.hash_size-1,a.hash_shift=~~((a.hash_bits+V-1)/V),a.window=new Uint8Array(a.w_size*2),a.head=new Uint16Array(a.hash_size),a.prev=new Uint16Array(a.w_size),a.lit_bufsize=1<<i+6,a.pending_buf_size=a.lit_bufsize*4,a.pending_buf=new Uint8Array(a.pending_buf_size),a.sym_buf=a.lit_bufsize,a.sym_end=(a.lit_bufsize-1)*3,a.level=t,a.strategy=o,a.method=r,vu(e)},fg=(e,t)=>Su(e,t,Gs,Y1,q1,K1),hg=(e,t)=>{if(Ji(e)||t>A0||t<0)return e?Lr(e,ht):ht;let r=e.state;if(!e.output||e.avail_in!==0&&!e.input||r.status===Ni&&t!==qe)return Lr(e,e.avail_out===0?Il:ht);let n=r.last_flush;if(r.last_flush=t,r.pending!==0){if(Be(e),e.avail_out===0)return r.last_flush=-1,he}else if(e.avail_in===0&&E0(t)<=E0(n)&&t!==qe)return Lr(e,Il);if(r.status===Ni&&e.avail_in!==0)return Lr(e,Il);if(r.status===wn&&r.wrap===0&&(r.status=Er),r.status===wn){let i=Gs+(r.w_bits-8<<4)<<8,o=-1;if(r.strategy>=Fs||r.level<2?o=0:r.level<6?o=1:r.level===6?o=2:o=3,i|=o<<6,r.strstart!==0&&(i|=ng),i+=31-i%31,Bi(r,i),r.strstart!==0&&(Bi(r,e.adler>>>16),Bi(r,e.adler&65535)),e.adler=1,r.status=Er,Be(e),r.pending!==0)return r.last_flush=-1,he}if(r.status===Ql){if(e.adler=0,X(r,31),X(r,139),X(r,8),r.gzhead)X(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),X(r,r.gzhead.time&255),X(r,r.gzhead.time>>8&255),X(r,r.gzhead.time>>16&255),X(r,r.gzhead.time>>24&255),X(r,r.level===9?2:r.strategy>=Fs||r.level<2?4:0),X(r,r.gzhead.os&255),r.gzhead.extra&&r.gzhead.extra.length&&(X(r,r.gzhead.extra.length&255),X(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=fe(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=Gl;else if(X(r,0),X(r,0),X(r,0),X(r,0),X(r,0),X(r,r.level===9?2:r.strategy>=Fs||r.level<2?4:0),X(r,ig),r.status=Er,Be(e),r.pending!==0)return r.last_flush=-1,he}if(r.status===Gl){if(r.gzhead.extra){let i=r.pending,o=(r.gzhead.extra.length&65535)-r.gzindex;for(;r.pending+o>r.pending_buf_size;){let a=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+a),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex+=a,Be(e),r.pending!==0)return r.last_flush=-1,he;i=0,o-=a}let s=new Uint8Array(r.gzhead.extra);r.pending_buf.set(s.subarray(r.gzindex,r.gzindex+o),r.pending),r.pending+=o,r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex=0}r.status=Wl}if(r.status===Wl){if(r.gzhead.name){let i=r.pending,o;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),Be(e),r.pending!==0)return r.last_flush=-1,he;i=0}r.gzindex<r.gzhead.name.length?o=r.gzhead.name.charCodeAt(r.gzindex++)&255:o=0,X(r,o)}while(o!==0);r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex=0}r.status=Xl}if(r.status===Xl){if(r.gzhead.comment){let i=r.pending,o;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),Be(e),r.pending!==0)return r.last_flush=-1,he;i=0}r.gzindex<r.gzhead.comment.length?o=r.gzhead.comment.charCodeAt(r.gzindex++)&255:o=0,X(r,o)}while(o!==0);r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i))}r.status=Kl}if(r.status===Kl){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(Be(e),r.pending!==0))return r.last_flush=-1,he;X(r,e.adler&255),X(r,e.adler>>8&255),e.adler=0}if(r.status=Er,Be(e),r.pending!==0)return r.last_flush=-1,he}if(e.avail_in!==0||r.lookahead!==0||t!==rr&&r.status!==Ni){let i=r.level===0?_u(r,t):r.strategy===Fs?lg(r,t):r.strategy===W1?ag(r,t):Ui[r.level].func(r,t);if((i===Ir||i===Ln)&&(r.status=Ni),i===Le||i===Ir)return e.avail_out===0&&(r.last_flush=-1),he;if(i===En&&(t===N1?B1(r):t!==A0&&(Hl(r,0,0,!1),t===U1&&(Jt(r.head),r.lookahead===0&&(r.strstart=0,r.block_start=0,r.insert=0))),Be(e),e.avail_out===0))return r.last_flush=-1,he}return t!==qe?he:r.wrap<=0?M0:(r.wrap===2?(X(r,e.adler&255),X(r,e.adler>>8&255),X(r,e.adler>>16&255),X(r,e.adler>>24&255),X(r,e.total_in&255),X(r,e.total_in>>8&255),X(r,e.total_in>>16&255),X(r,e.total_in>>24&255)):(Bi(r,e.adler>>>16),Bi(r,e.adler&65535)),Be(e),r.wrap>0&&(r.wrap=-r.wrap),r.pending!==0?he:M0)},mg=e=>{if(Ji(e))return ht;let t=e.state.status;return e.state=null,t===Er?Lr(e,H1):he},pg=(e,t)=>{let r=t.length;if(Ji(e))return ht;let n=e.state,i=n.wrap;if(i===2||i===1&&n.status!==wn||n.lookahead)return ht;if(i===1&&(e.adler=Zi(e.adler,t,r,0)),n.wrap=0,r>=n.w_size){i===0&&(Jt(n.head),n.strstart=0,n.block_start=0,n.insert=0);let d=new Uint8Array(n.w_size);d.set(t.subarray(r-n.w_size,r),0),t=d,r=n.w_size}let o=e.avail_in,s=e.next_in,a=e.input;for(e.avail_in=r,e.next_in=0,e.input=t,An(n);n.lookahead>=V;){let d=n.strstart,l=n.lookahead-(V-1);do n.ins_h=nr(n,n.ins_h,n.window[d+V-1]),n.prev[d&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=d,d++;while(--l);n.strstart=d,n.lookahead=V-1,An(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=V-1,n.match_available=0,e.next_in=s,e.input=a,e.avail_in=o,n.wrap=i,he},gg=fg,yg=Su,xg=vu,_g=bu,bg=ug,vg=hg,Sg=mg,wg=pg,Ag="pako deflate (from Nodeca project)",Vi={deflateInit:gg,deflateInit2:yg,deflateReset:xg,deflateResetKeep:_g,deflateSetHeader:bg,deflate:vg,deflateEnd:Sg,deflateSetDictionary:wg,deflateInfo:Ag},Mg=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Eg=function(e){let t=Array.prototype.slice.call(arguments,1);for(;t.length;){let r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(let n in r)Mg(r,n)&&(e[n]=r[n])}}return e},Lg=e=>{let t=0;for(let n=0,i=e.length;n<i;n++)t+=e[n].length;let r=new Uint8Array(t);for(let n=0,i=0,o=e.length;n<o;n++){let s=e[n];r.set(s,i),i+=s.length}return r},Ws={assign:Eg,flattenChunks:Lg},wu=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{wu=!1}var Yi=new Uint8Array(256);for(let e=0;e<256;e++)Yi[e]=e>=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;Yi[254]=Yi[254]=1;var Tg=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,r,n,i,o,s=e.length,a=0;for(i=0;i<s;i++)r=e.charCodeAt(i),(r&64512)===55296&&i+1<s&&(n=e.charCodeAt(i+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),i++)),a+=r<128?1:r<2048?2:r<65536?3:4;for(t=new Uint8Array(a),o=0,i=0;o<a;i++)r=e.charCodeAt(i),(r&64512)===55296&&i+1<s&&(n=e.charCodeAt(i+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),i++)),r<128?t[o++]=r:r<2048?(t[o++]=192|r>>>6,t[o++]=128|r&63):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|r&63):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|r&63);return t},Ig=(e,t)=>{if(t<65534&&e.subarray&&wu)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let r="";for(let n=0;n<t;n++)r+=String.fromCharCode(e[n]);return r},Cg=(e,t)=>{let r=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let n,i,o=new Array(r*2);for(i=0,n=0;n<r;){let s=e[n++];if(s<128){o[i++]=s;continue}let a=Yi[s];if(a>4){o[i++]=65533,n+=a-1;continue}for(s&=a===2?31:a===3?15:7;a>1&&n<r;)s=s<<6|e[n++]&63,a--;if(a>1){o[i++]=65533;continue}s<65536?o[i++]=s:(s-=65536,o[i++]=55296|s>>10&1023,o[i++]=56320|s&1023)}return Ig(o,i)},zg=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let r=t-1;for(;r>=0&&(e[r]&192)===128;)r--;return r<0||r===0?t:r+Yi[e[r]]>t?r:t},qi={string2buf:Tg,buf2string:Cg,utf8border:zg};function Rg(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var Au=Rg,Mu=Object.prototype.toString,{Z_NO_FLUSH:kg,Z_SYNC_FLUSH:Fg,Z_FULL_FLUSH:Dg,Z_FINISH:Pg,Z_OK:Hs,Z_STREAM_END:Og,Z_DEFAULT_COMPRESSION:Bg,Z_DEFAULT_STRATEGY:Ng,Z_DEFLATED:Ug}=zr;function eo(e){this.options=Ws.assign({level:Bg,method:Ug,chunkSize:16384,windowBits:15,memLevel:8,strategy:Ng},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Au,this.strm.avail_out=0;let r=Vi.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==Hs)throw new Error(Tr[r]);if(t.header&&Vi.deflateSetHeader(this.strm,t.header),t.dictionary){let n;if(typeof t.dictionary=="string"?n=qi.string2buf(t.dictionary):Mu.call(t.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(t.dictionary):n=t.dictionary,r=Vi.deflateSetDictionary(this.strm,n),r!==Hs)throw new Error(Tr[r]);this._dict_set=!0}}eo.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,i,o;if(this.ended)return!1;for(t===~~t?o=t:o=t===!0?Pg:kg,typeof e=="string"?r.input=qi.string2buf(e):Mu.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){if(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(o===Fg||o===Dg)&&r.avail_out<=6){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(i=Vi.deflate(r,o),i===Og)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),i=Vi.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===Hs;if(r.avail_out===0){this.onData(r.output);continue}if(o>0&&r.next_out>0){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(r.avail_in===0)break}return!0};eo.prototype.onData=function(e){this.chunks.push(e)};eo.prototype.onEnd=function(e){e===Hs&&(this.result=Ws.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function Jl(e,t){let r=new eo(t);if(r.push(e,!0),r.err)throw r.msg||Tr[r.err];return r.result}function Hg(e,t){return t=t||{},t.raw=!0,Jl(e,t)}function Vg(e,t){return t=t||{},t.gzip=!0,Jl(e,t)}var Gg=eo,Wg=Jl,Xg=Hg,Kg=Vg,$g=zr,Zg={Deflate:Gg,deflate:Wg,deflateRaw:Xg,gzip:Kg,constants:$g},Ds=16209,Yg=16191,qg=function(t,r){let n,i,o,s,a,d,l,c,h,u,f,m,g,p,x,S,_,y,b,A,v,E,L,w,T=t.state;n=t.next_in,L=t.input,i=n+(t.avail_in-5),o=t.next_out,w=t.output,s=o-(r-t.avail_out),a=o+(t.avail_out-257),d=T.dmax,l=T.wsize,c=T.whave,h=T.wnext,u=T.window,f=T.hold,m=T.bits,g=T.lencode,p=T.distcode,x=(1<<T.lenbits)-1,S=(1<<T.distbits)-1;e:do{m<15&&(f+=L[n++]<<m,m+=8,f+=L[n++]<<m,m+=8),_=g[f&x];t:for(;;){if(y=_>>>24,f>>>=y,m-=y,y=_>>>16&255,y===0)w[o++]=_&65535;else if(y&16){b=_&65535,y&=15,y&&(m<y&&(f+=L[n++]<<m,m+=8),b+=f&(1<<y)-1,f>>>=y,m-=y),m<15&&(f+=L[n++]<<m,m+=8,f+=L[n++]<<m,m+=8),_=p[f&S];r:for(;;){if(y=_>>>24,f>>>=y,m-=y,y=_>>>16&255,y&16){if(A=_&65535,y&=15,m<y&&(f+=L[n++]<<m,m+=8,m<y&&(f+=L[n++]<<m,m+=8)),A+=f&(1<<y)-1,A>d){t.msg="invalid distance too far back",T.mode=Ds;break e}if(f>>>=y,m-=y,y=o-s,A>y){if(y=A-y,y>c&&T.sane){t.msg="invalid distance too far back",T.mode=Ds;break e}if(v=0,E=u,h===0){if(v+=l-y,y<b){b-=y;do w[o++]=u[v++];while(--y);v=o-A,E=w}}else if(h<y){if(v+=l+h-y,y-=h,y<b){b-=y;do w[o++]=u[v++];while(--y);if(v=0,h<b){y=h,b-=y;do w[o++]=u[v++];while(--y);v=o-A,E=w}}}else if(v+=h-y,y<b){b-=y;do w[o++]=u[v++];while(--y);v=o-A,E=w}for(;b>2;)w[o++]=E[v++],w[o++]=E[v++],w[o++]=E[v++],b-=3;b&&(w[o++]=E[v++],b>1&&(w[o++]=E[v++]))}else{v=o-A;do w[o++]=w[v++],w[o++]=w[v++],w[o++]=w[v++],b-=3;while(b>2);b&&(w[o++]=w[v++],b>1&&(w[o++]=w[v++]))}}else if((y&64)===0){_=p[(_&65535)+(f&(1<<y)-1)];continue r}else{t.msg="invalid distance code",T.mode=Ds;break e}break}}else if((y&64)===0){_=g[(_&65535)+(f&(1<<y)-1)];continue t}else if(y&32){T.mode=Yg;break e}else{t.msg="invalid literal/length code",T.mode=Ds;break e}break}}while(n<i&&o<a);b=m>>3,n-=b,m-=b<<3,f&=(1<<m)-1,t.next_in=n,t.next_out=o,t.avail_in=n<i?5+(i-n):5-(n-i),t.avail_out=o<a?257+(a-o):257-(o-a),T.hold=f,T.bits=m},vn=15,L0=852,T0=592,I0=0,zl=1,C0=2,jg=new Uint16Array([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]),Qg=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),Jg=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),ey=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]),ty=(e,t,r,n,i,o,s,a)=>{let d=a.bits,l=0,c=0,h=0,u=0,f=0,m=0,g=0,p=0,x=0,S=0,_,y,b,A,v,E=null,L,w=new Uint16Array(vn+1),T=new Uint16Array(vn+1),R=null,U,z,$;for(l=0;l<=vn;l++)w[l]=0;for(c=0;c<n;c++)w[t[r+c]]++;for(f=d,u=vn;u>=1&&w[u]===0;u--);if(f>u&&(f=u),u===0)return i[o++]=1<<24|64<<16|0,i[o++]=1<<24|64<<16|0,a.bits=1,0;for(h=1;h<u&&w[h]===0;h++);for(f<h&&(f=h),p=1,l=1;l<=vn;l++)if(p<<=1,p-=w[l],p<0)return-1;if(p>0&&(e===I0||u!==1))return-1;for(T[1]=0,l=1;l<vn;l++)T[l+1]=T[l]+w[l];for(c=0;c<n;c++)t[r+c]!==0&&(s[T[t[r+c]]++]=c);if(e===I0?(E=R=s,L=20):e===zl?(E=jg,R=Qg,L=257):(E=Jg,R=ey,L=0),S=0,c=0,l=h,v=o,m=f,g=0,b=-1,x=1<<f,A=x-1,e===zl&&x>L0||e===C0&&x>T0)return 1;for(;;){U=l-g,s[c]+1<L?(z=0,$=s[c]):s[c]>=L?(z=R[s[c]-L],$=E[s[c]-L]):(z=96,$=0),_=1<<l-g,y=1<<m,h=y;do y-=_,i[v+(S>>g)+y]=U<<24|z<<16|$|0;while(y!==0);for(_=1<<l-1;S&_;)_>>=1;if(_!==0?(S&=_-1,S+=_):S=0,c++,--w[l]===0){if(l===u)break;l=t[r+s[c]]}if(l>f&&(S&A)!==b){for(g===0&&(g=f),v+=h,m=l-g,p=1<<m;m+g<u&&(p-=w[m+g],!(p<=0));)m++,p<<=1;if(x+=1<<m,e===zl&&x>L0||e===C0&&x>T0)return 1;b=S&A,i[b]=f<<24|m<<16|v-o|0}}return S!==0&&(i[v+S]=l-g<<24|64<<16|0),a.bits=f,0},Gi=ty,ry=0,Eu=1,Lu=2,{Z_FINISH:z0,Z_BLOCK:ny,Z_TREES:Ps,Z_OK:Cr,Z_STREAM_END:iy,Z_NEED_DICT:oy,Z_STREAM_ERROR:je,Z_DATA_ERROR:Tu,Z_MEM_ERROR:Iu,Z_BUF_ERROR:sy,Z_DEFLATED:R0}=zr,Xs=16180,k0=16181,F0=16182,D0=16183,P0=16184,O0=16185,B0=16186,N0=16187,U0=16188,H0=16189,Vs=16190,Tt=16191,Rl=16192,V0=16193,kl=16194,G0=16195,W0=16196,X0=16197,K0=16198,Os=16199,Bs=16200,$0=16201,Z0=16202,Y0=16203,q0=16204,j0=16205,Fl=16206,Q0=16207,J0=16208,ne=16209,Cu=16210,zu=16211,ay=852,ly=592,cy=15,dy=cy,eu=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24);function uy(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}var Rr=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.mode<Xs||t.mode>zu?1:0},Ru=e=>{if(Rr(e))return je;let t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=Xs,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(ay),t.distcode=t.distdyn=new Int32Array(ly),t.sane=1,t.back=-1,Cr},ku=e=>{if(Rr(e))return je;let t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,Ru(e)},Fu=(e,t)=>{let r;if(Rr(e))return je;let n=e.state;return t<0?(r=0,t=-t):(r=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?je:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,ku(e))},Du=(e,t)=>{if(!e)return je;let r=new uy;e.state=r,r.strm=e,r.window=null,r.mode=Xs;let n=Fu(e,t);return n!==Cr&&(e.state=null),n},fy=e=>Du(e,dy),tu=!0,Dl,Pl,hy=e=>{if(tu){Dl=new Int32Array(512),Pl=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(Gi(Eu,e.lens,0,288,Dl,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;Gi(Lu,e.lens,0,32,Pl,0,e.work,{bits:5}),tu=!1}e.lencode=Dl,e.lenbits=9,e.distcode=Pl,e.distbits=5},Pu=(e,t,r,n)=>{let i,o=e.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new Uint8Array(o.wsize)),n>=o.wsize?(o.window.set(t.subarray(r-o.wsize,r),0),o.wnext=0,o.whave=o.wsize):(i=o.wsize-o.wnext,i>n&&(i=n),o.window.set(t.subarray(r-n,r-n+i),o.wnext),n-=i,n?(o.window.set(t.subarray(r-n,r),0),o.wnext=n,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=i))),0},my=(e,t)=>{let r,n,i,o,s,a,d,l,c,h,u,f,m,g,p=0,x,S,_,y,b,A,v,E,L=new Uint8Array(4),w,T,R=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Rr(e)||!e.output||!e.input&&e.avail_in!==0)return je;r=e.state,r.mode===Tt&&(r.mode=Rl),s=e.next_out,i=e.output,d=e.avail_out,o=e.next_in,n=e.input,a=e.avail_in,l=r.hold,c=r.bits,h=a,u=d,E=Cr;e:for(;;)switch(r.mode){case Xs:if(r.wrap===0){r.mode=Rl;break}for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.wrap&2&&l===35615){r.wbits===0&&(r.wbits=15),r.check=0,L[0]=l&255,L[1]=l>>>8&255,r.check=fe(r.check,L,2,0),l=0,c=0,r.mode=k0;break}if(r.head&&(r.head.done=!1),!(r.wrap&1)||(((l&255)<<8)+(l>>8))%31){e.msg="incorrect header check",r.mode=ne;break}if((l&15)!==R0){e.msg="unknown compression method",r.mode=ne;break}if(l>>>=4,c-=4,v=(l&15)+8,r.wbits===0&&(r.wbits=v),v>15||v>r.wbits){e.msg="invalid window size",r.mode=ne;break}r.dmax=1<<r.wbits,r.flags=0,e.adler=r.check=1,r.mode=l&512?H0:Tt,l=0,c=0;break;case k0:for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.flags=l,(r.flags&255)!==R0){e.msg="unknown compression method",r.mode=ne;break}if(r.flags&57344){e.msg="unknown header flags set",r.mode=ne;break}r.head&&(r.head.text=l>>8&1),r.flags&512&&r.wrap&4&&(L[0]=l&255,L[1]=l>>>8&255,r.check=fe(r.check,L,2,0)),l=0,c=0,r.mode=F0;case F0:for(;c<32;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.head&&(r.head.time=l),r.flags&512&&r.wrap&4&&(L[0]=l&255,L[1]=l>>>8&255,L[2]=l>>>16&255,L[3]=l>>>24&255,r.check=fe(r.check,L,4,0)),l=0,c=0,r.mode=D0;case D0:for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.head&&(r.head.xflags=l&255,r.head.os=l>>8),r.flags&512&&r.wrap&4&&(L[0]=l&255,L[1]=l>>>8&255,r.check=fe(r.check,L,2,0)),l=0,c=0,r.mode=P0;case P0:if(r.flags&1024){for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.length=l,r.head&&(r.head.extra_len=l),r.flags&512&&r.wrap&4&&(L[0]=l&255,L[1]=l>>>8&255,r.check=fe(r.check,L,2,0)),l=0,c=0}else r.head&&(r.head.extra=null);r.mode=O0;case O0:if(r.flags&1024&&(f=r.length,f>a&&(f=a),f&&(r.head&&(v=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(o,o+f),v)),r.flags&512&&r.wrap&4&&(r.check=fe(r.check,n,f,o)),a-=f,o+=f,r.length-=f),r.length))break e;r.length=0,r.mode=B0;case B0:if(r.flags&2048){if(a===0)break e;f=0;do v=n[o+f++],r.head&&v&&r.length<65536&&(r.head.name+=String.fromCharCode(v));while(v&&f<a);if(r.flags&512&&r.wrap&4&&(r.check=fe(r.check,n,f,o)),a-=f,o+=f,v)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=N0;case N0:if(r.flags&4096){if(a===0)break e;f=0;do v=n[o+f++],r.head&&v&&r.length<65536&&(r.head.comment+=String.fromCharCode(v));while(v&&f<a);if(r.flags&512&&r.wrap&4&&(r.check=fe(r.check,n,f,o)),a-=f,o+=f,v)break e}else r.head&&(r.head.comment=null);r.mode=U0;case U0:if(r.flags&512){for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.wrap&4&&l!==(r.check&65535)){e.msg="header crc mismatch",r.mode=ne;break}l=0,c=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Tt;break;case H0:for(;c<32;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}e.adler=r.check=eu(l),l=0,c=0,r.mode=Vs;case Vs:if(r.havedict===0)return e.next_out=s,e.avail_out=d,e.next_in=o,e.avail_in=a,r.hold=l,r.bits=c,oy;e.adler=r.check=1,r.mode=Tt;case Tt:if(t===ny||t===Ps)break e;case Rl:if(r.last){l>>>=c&7,c-=c&7,r.mode=Fl;break}for(;c<3;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}switch(r.last=l&1,l>>>=1,c-=1,l&3){case 0:r.mode=V0;break;case 1:if(hy(r),r.mode=Os,t===Ps){l>>>=2,c-=2;break e}break;case 2:r.mode=W0;break;case 3:e.msg="invalid block type",r.mode=ne}l>>>=2,c-=2;break;case V0:for(l>>>=c&7,c-=c&7;c<32;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if((l&65535)!==(l>>>16^65535)){e.msg="invalid stored block lengths",r.mode=ne;break}if(r.length=l&65535,l=0,c=0,r.mode=kl,t===Ps)break e;case kl:r.mode=G0;case G0:if(f=r.length,f){if(f>a&&(f=a),f>d&&(f=d),f===0)break e;i.set(n.subarray(o,o+f),s),a-=f,o+=f,d-=f,s+=f,r.length-=f;break}r.mode=Tt;break;case W0:for(;c<14;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.nlen=(l&31)+257,l>>>=5,c-=5,r.ndist=(l&31)+1,l>>>=5,c-=5,r.ncode=(l&15)+4,l>>>=4,c-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=ne;break}r.have=0,r.mode=X0;case X0:for(;r.have<r.ncode;){for(;c<3;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.lens[R[r.have++]]=l&7,l>>>=3,c-=3}for(;r.have<19;)r.lens[R[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,w={bits:r.lenbits},E=Gi(ry,r.lens,0,19,r.lencode,0,r.work,w),r.lenbits=w.bits,E){e.msg="invalid code lengths set",r.mode=ne;break}r.have=0,r.mode=K0;case K0:for(;r.have<r.nlen+r.ndist;){for(;p=r.lencode[l&(1<<r.lenbits)-1],x=p>>>24,S=p>>>16&255,_=p&65535,!(x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(_<16)l>>>=x,c-=x,r.lens[r.have++]=_;else{if(_===16){for(T=x+2;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(l>>>=x,c-=x,r.have===0){e.msg="invalid bit length repeat",r.mode=ne;break}v=r.lens[r.have-1],f=3+(l&3),l>>>=2,c-=2}else if(_===17){for(T=x+3;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}l>>>=x,c-=x,v=0,f=3+(l&7),l>>>=3,c-=3}else{for(T=x+7;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}l>>>=x,c-=x,v=0,f=11+(l&127),l>>>=7,c-=7}if(r.have+f>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=ne;break}for(;f--;)r.lens[r.have++]=v}}if(r.mode===ne)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=ne;break}if(r.lenbits=9,w={bits:r.lenbits},E=Gi(Eu,r.lens,0,r.nlen,r.lencode,0,r.work,w),r.lenbits=w.bits,E){e.msg="invalid literal/lengths set",r.mode=ne;break}if(r.distbits=6,r.distcode=r.distdyn,w={bits:r.distbits},E=Gi(Lu,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,w),r.distbits=w.bits,E){e.msg="invalid distances set",r.mode=ne;break}if(r.mode=Os,t===Ps)break e;case Os:r.mode=Bs;case Bs:if(a>=6&&d>=258){e.next_out=s,e.avail_out=d,e.next_in=o,e.avail_in=a,r.hold=l,r.bits=c,qg(e,u),s=e.next_out,i=e.output,d=e.avail_out,o=e.next_in,n=e.input,a=e.avail_in,l=r.hold,c=r.bits,r.mode===Tt&&(r.back=-1);break}for(r.back=0;p=r.lencode[l&(1<<r.lenbits)-1],x=p>>>24,S=p>>>16&255,_=p&65535,!(x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(S&&(S&240)===0){for(y=x,b=S,A=_;p=r.lencode[A+((l&(1<<y+b)-1)>>y)],x=p>>>24,S=p>>>16&255,_=p&65535,!(y+x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}l>>>=y,c-=y,r.back+=y}if(l>>>=x,c-=x,r.back+=x,r.length=_,S===0){r.mode=j0;break}if(S&32){r.back=-1,r.mode=Tt;break}if(S&64){e.msg="invalid literal/length code",r.mode=ne;break}r.extra=S&15,r.mode=$0;case $0:if(r.extra){for(T=r.extra;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.length+=l&(1<<r.extra)-1,l>>>=r.extra,c-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=Z0;case Z0:for(;p=r.distcode[l&(1<<r.distbits)-1],x=p>>>24,S=p>>>16&255,_=p&65535,!(x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if((S&240)===0){for(y=x,b=S,A=_;p=r.distcode[A+((l&(1<<y+b)-1)>>y)],x=p>>>24,S=p>>>16&255,_=p&65535,!(y+x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}l>>>=y,c-=y,r.back+=y}if(l>>>=x,c-=x,r.back+=x,S&64){e.msg="invalid distance code",r.mode=ne;break}r.offset=_,r.extra=S&15,r.mode=Y0;case Y0:if(r.extra){for(T=r.extra;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.offset+=l&(1<<r.extra)-1,l>>>=r.extra,c-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=ne;break}r.mode=q0;case q0:if(d===0)break e;if(f=u-d,r.offset>f){if(f=r.offset-f,f>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=ne;break}f>r.wnext?(f-=r.wnext,m=r.wsize-f):m=r.wnext-f,f>r.length&&(f=r.length),g=r.window}else g=i,m=s-r.offset,f=r.length;f>d&&(f=d),d-=f,r.length-=f;do i[s++]=g[m++];while(--f);r.length===0&&(r.mode=Bs);break;case j0:if(d===0)break e;i[s++]=r.length,d--,r.mode=Bs;break;case Fl:if(r.wrap){for(;c<32;){if(a===0)break e;a--,l|=n[o++]<<c,c+=8}if(u-=d,e.total_out+=u,r.total+=u,r.wrap&4&&u&&(e.adler=r.check=r.flags?fe(r.check,i,u,s-u):Zi(r.check,i,u,s-u)),u=d,r.wrap&4&&(r.flags?l:eu(l))!==r.check){e.msg="incorrect data check",r.mode=ne;break}l=0,c=0}r.mode=Q0;case Q0:if(r.wrap&&r.flags){for(;c<32;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.wrap&4&&l!==(r.total&4294967295)){e.msg="incorrect length check",r.mode=ne;break}l=0,c=0}r.mode=J0;case J0:E=iy;break e;case ne:E=Tu;break e;case Cu:return Iu;case zu:default:return je}return e.next_out=s,e.avail_out=d,e.next_in=o,e.avail_in=a,r.hold=l,r.bits=c,(r.wsize||u!==e.avail_out&&r.mode<ne&&(r.mode<Fl||t!==z0))&&Pu(e,e.output,e.next_out,u-e.avail_out),h-=e.avail_in,u-=e.avail_out,e.total_in+=h,e.total_out+=u,r.total+=u,r.wrap&4&&u&&(e.adler=r.check=r.flags?fe(r.check,i,u,e.next_out-u):Zi(r.check,i,u,e.next_out-u)),e.data_type=r.bits+(r.last?64:0)+(r.mode===Tt?128:0)+(r.mode===Os||r.mode===kl?256:0),(h===0&&u===0||t===z0)&&E===Cr&&(E=sy),E},py=e=>{if(Rr(e))return je;let t=e.state;return t.window&&(t.window=null),e.state=null,Cr},gy=(e,t)=>{if(Rr(e))return je;let r=e.state;return(r.wrap&2)===0?je:(r.head=t,t.done=!1,Cr)},yy=(e,t)=>{let r=t.length,n,i,o;return Rr(e)||(n=e.state,n.wrap!==0&&n.mode!==Vs)?je:n.mode===Vs&&(i=1,i=Zi(i,t,r,0),i!==n.check)?Tu:(o=Pu(e,t,r,r),o?(n.mode=Cu,Iu):(n.havedict=1,Cr))},xy=ku,_y=Fu,by=Ru,vy=fy,Sy=Du,wy=my,Ay=py,My=gy,Ey=yy,Ly="pako inflate (from Nodeca project)",Ct={inflateReset:xy,inflateReset2:_y,inflateResetKeep:by,inflateInit:vy,inflateInit2:Sy,inflate:wy,inflateEnd:Ay,inflateGetHeader:My,inflateSetDictionary:Ey,inflateInfo:Ly};function Ty(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var Iy=Ty,Ou=Object.prototype.toString,{Z_NO_FLUSH:Cy,Z_FINISH:zy,Z_OK:ji,Z_STREAM_END:Ol,Z_NEED_DICT:Bl,Z_STREAM_ERROR:Ry,Z_DATA_ERROR:ru,Z_MEM_ERROR:ky}=zr;function to(e){this.options=Ws.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});let t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15)===0&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Au,this.strm.avail_out=0;let r=Ct.inflateInit2(this.strm,t.windowBits);if(r!==ji)throw new Error(Tr[r]);if(this.header=new Iy,Ct.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=qi.string2buf(t.dictionary):Ou.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=Ct.inflateSetDictionary(this.strm,t.dictionary),r!==ji)))throw new Error(Tr[r])}to.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,i=this.options.dictionary,o,s,a;if(this.ended)return!1;for(t===~~t?s=t:s=t===!0?zy:Cy,Ou.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){for(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),o=Ct.inflate(r,s),o===Bl&&i&&(o=Ct.inflateSetDictionary(r,i),o===ji?o=Ct.inflate(r,s):o===ru&&(o=Bl));r.avail_in>0&&o===Ol&&r.state.wrap>0&&e[r.next_in]!==0;)Ct.inflateReset(r),o=Ct.inflate(r,s);switch(o){case Ry:case ru:case Bl:case ky:return this.onEnd(o),this.ended=!0,!1}if(a=r.avail_out,r.next_out&&(r.avail_out===0||o===Ol))if(this.options.to==="string"){let d=qi.utf8border(r.output,r.next_out),l=r.next_out-d,c=qi.buf2string(r.output,d);r.next_out=l,r.avail_out=n-l,l&&r.output.set(r.output.subarray(d,d+l),0),this.onData(c)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(!(o===ji&&a===0)){if(o===Ol)return o=Ct.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,!0;if(r.avail_in===0)break}}return!0};to.prototype.onData=function(e){this.chunks.push(e)};to.prototype.onEnd=function(e){e===ji&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Ws.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function ec(e,t){let r=new to(t);if(r.push(e),r.err)throw r.msg||Tr[r.err];return r.result}function Fy(e,t){return t=t||{},t.raw=!0,ec(e,t)}var Dy=to,Py=ec,Oy=Fy,By=ec,Ny=zr,Uy={Inflate:Dy,inflate:Py,inflateRaw:Oy,ungzip:By,constants:Ny},{Deflate:Hy,deflate:Vy,deflateRaw:Gy,gzip:Wy}=Zg,{Inflate:Xy,inflate:Ky,inflateRaw:$y,ungzip:Zy}=Uy,Yy=Hy,qy=Vy,jy=Gy,Qy=Wy,Jy=Xy,ex=Ky,tx=$y,rx=Zy,nx=zr,tc={Deflate:Yy,deflate:qy,deflateRaw:jy,gzip:Qy,Inflate:Jy,inflate:ex,inflateRaw:tx,ungzip:rx,constants:nx};var Ks=2023,Zs=1,Ys=2,qs=4,js=8,Qs=16,Js=32,rc=64,ix=128,ox=256,ea=512,ta=1024,ra=2048,ro=4096,nc=8192,no=16384,sx=32768,io=65536,na=1<<17,oo=1<<18,so=1<<19,ia=1<<20,oa=1<<21,sa=1<<22,ax=1<<23,aa=1<<24,ao=1<<25,la=1<<26,ca=1<<27,ic=1<<28,oc=1<<29,sc=1<<30,lx=-2147483648,ac=1,lc=2,cc=4;var cx=1,dx=2,ux=128,kr=()=>({number:0,modelindex:0,modelindex2:0,modelindex3:0,modelindex4:0,frame:0,skinnum:0,effects:0,renderfx:0,origin:{x:0,y:0,z:0},old_origin:{x:0,y:0,z:0},angles:{x:0,y:0,z:0},sound:0,event:0,solid:0,bits:0,bitsHigh:0,alpha:0,scale:0,instanceBits:0,loopVolume:0,loopAttenuation:0,owner:0,oldFrame:0}),$s=()=>({pm_type:0,origin:{x:0,y:0,z:0},velocity:{x:0,y:0,z:0},pm_time:0,pm_flags:0,gravity:0,delta_angles:{x:0,y:0,z:0},viewoffset:{x:0,y:0,z:0},viewangles:{x:0,y:0,z:0},kick_angles:{x:0,y:0,z:0},gun_index:0,gun_frame:0,gun_offset:{x:0,y:0,z:0},gun_angles:{x:0,y:0,z:0},blend:[0,0,0,0],fov:0,rdflags:0,stats:new Array(32).fill(0),gunskin:0,gunrate:0,damage_blend:[0,0,0,0],team_id:0}),Fr=class e{constructor(t,r){this.protocolVersion=0;this.isDemo=cx;this.stream=t,this.handler=r}setProtocolVersion(t){this.protocolVersion=t}getProtocolVersion(){return this.protocolVersion}translateCommand(t){if(this.protocolVersion===0){if(t===7)return D.serverdata;if(t===12)return D.serverdata}return this.protocolVersion===Ks?t:this.protocolVersion===34||this.protocolVersion===25?t<=D.frame?t:D.bad:(this.protocolVersion===0,t)}parseMessage(){for(;this.stream.hasMore();){let t=this.stream.readByte();if(t===-1)break;let r=t;t=this.translateCommand(t);try{switch(t){case D.bad:return;case D.nop:break;case D.disconnect:this.handler&&this.handler.onDisconnect&&this.handler.onDisconnect();break;case D.reconnect:this.handler&&this.handler.onReconnect&&this.handler.onReconnect();break;case D.print:this.parsePrint();break;case D.serverdata:this.parseServerData();break;case D.configstring:this.parseConfigString();break;case D.spawnbaseline:this.parseSpawnBaseline();break;case D.centerprint:this.parseCenterPrint();break;case D.download:this.parseDownload();break;case D.frame:this.parseFrame();break;case D.packetentities:this.parsePacketEntities(!1);break;case D.deltapacketentities:this.parsePacketEntities(!0);break;case D.playerinfo:this.parsePlayerState();break;case D.stufftext:this.parseStuffText();break;case D.layout:this.parseLayout();break;case D.inventory:this.parseInventory();break;case D.sound:this.parseSound();break;case D.muzzleflash:this.parseMuzzleFlash();break;case D.muzzleflash2:this.parseMuzzleFlash2();break;case D.temp_entity:this.parseTempEntity();break;case D.splitclient:this.parseSplitClient();break;case D.configblast:this.parseConfigBlast();break;case D.spawnbaselineblast:this.parseSpawnBaselineBlast();break;case D.level_restart:this.handler&&this.handler.onLevelRestart&&this.handler.onLevelRestart();break;case D.damage:this.parseDamage();break;case D.locprint:this.parseLocPrint();break;case D.fog:this.parseFog();break;case D.waitingforplayers:this.parseWaitingForPlayers();break;case D.bot_chat:this.parseBotChat();break;case D.poi:this.parsePoi();break;case D.help_path:this.parseHelpPath();break;case D.muzzleflash3:this.parseMuzzleFlash3();break;case D.achievement:this.parseAchievement();break;default:console.warn(`Unknown server command: ${r} (translated: ${t}) at offset ${this.stream.getPosition()-1}`);return}}catch(n){console.warn(`Error parsing command ${t}: ${n.message}`);return}}}parsePrint(){let t=this.stream.readByte(),r=this.stream.readString();this.handler&&this.handler.onPrint(t,r)}parseStuffText(){let t=this.stream.readString();this.handler&&this.handler.onStuffText(t)}parseLayout(){let t=this.stream.readString();this.handler&&this.handler.onLayout(t)}parseCenterPrint(){let t=this.stream.readString();this.handler&&this.handler.onCenterPrint(t)}parseServerData(){if(this.protocolVersion=this.stream.readLong(),this.protocolVersion===Ks){let t=this.stream.readLong(),r=this.stream.readByte();this.isDemo=r;let n=this.stream.readByte(),i=this.stream.readString(),o=this.stream.readShort();if(o===-2){let a=this.stream.readShort();for(let d=0;d<a;d++)this.stream.readShort();o=0}else o===-1&&(o=-1);let s=this.stream.readString();this.handler?this.handler.onServerData(this.protocolVersion,t,0,i,o,s,n,r):console.log(`Server Data (Rerelease): Protocol ${this.protocolVersion}, Level ${s}, Tick ${n}`)}else{let t=this.stream.readLong();this.isDemo=this.stream.readByte();let r=0,n=this.stream.readString(),i=this.stream.readShort(),o=this.stream.readString();this.handler?this.handler.onServerData(this.protocolVersion,t,r,n,i,o):console.log(`Server Data: Protocol ${this.protocolVersion}, Level ${o}, GameDir ${n}`)}}parseConfigString(){let t=this.stream.readShort(),r=this.stream.readString();this.handler&&this.handler.onConfigString(t,r)}parseSplitClient(){let t=this.stream.readByte();this.handler&&this.handler.onSplitClient&&this.handler.onSplitClient(t)}parseConfigBlast(){let t=this.stream.readShort(),r=this.stream.readShort(),n=this.stream.readData(t);try{let i=tc.inflate(n);i.byteLength!==r&&console.warn(`svc_configblast: Decompressed size mismatch. Expected ${r}, got ${i.byteLength}`);let o=new kn(i.buffer);for(;o.hasMore();){let s=o.readUShort(),a=o.readString();this.handler&&this.handler.onConfigString(s,a)}}catch(i){console.error("svc_configblast: Failed to decompress data",i)}}parseSpawnBaselineBlast(){let t=this.stream.readShort(),r=this.stream.readShort(),n=this.stream.readData(t);try{let i=tc.inflate(n);i.byteLength!==r&&console.warn(`svc_spawnbaselineblast: Decompressed size mismatch. Expected ${r}, got ${i.byteLength}`);let o=new kn(i.buffer),s=new e(o,this.handler);for(;o.hasMore();)s.parseSpawnBaseline()}catch(i){console.error("svc_spawnbaselineblast: Failed to decompress data",i)}}parseLocPrint(){let t=this.stream.readByte(),r=this.stream.readString(),n=this.stream.readByte(),i=[];for(let o=0;o<n;o++)i.push(this.stream.readString());this.handler&&this.handler.onLocPrint&&this.handler.onLocPrint(t,r,i)}parseWaitingForPlayers(){let t=this.stream.readByte();this.handler&&this.handler.onWaitingForPlayers&&this.handler.onWaitingForPlayers(t)}parseBotChat(){let t=this.stream.readString(),r=this.stream.readShort(),n=this.stream.readString();this.handler&&this.handler.onBotChat&&this.handler.onBotChat(n)}parsePoi(){let t=this.stream.readUShort(),r=this.stream.readUShort(),n={x:0,y:0,z:0};this.stream.readPos(n);let i=this.stream.readUShort(),o=this.stream.readByte(),s=this.stream.readByte();this.handler&&this.handler.onPoi&&this.handler.onPoi(s,n)}parseHelpPath(){let t=this.stream.readByte(),r={x:0,y:0,z:0};this.stream.readPos(r);let n={x:0,y:0,z:0};this.stream.readDir(n),this.handler&&this.handler.onHelpPath&&this.handler.onHelpPath(r)}parseAchievement(){let t=this.stream.readString();this.handler&&this.handler.onAchievement&&this.handler.onAchievement(t)}parseDownload(){let t=this.stream.readShort(),r=this.stream.readByte(),n;t>0&&(n=this.stream.readData(t)),this.handler&&this.handler.onDownload(t,r,n)}parseInventory(){let r=new Array(256);for(let n=0;n<256;n++)r[n]=this.stream.readShort();this.handler&&this.handler.onInventory(r)}parseSound(){let t=this.stream.readByte(),r=this.stream.readByte(),n,i,o,s,a;if(t&1&&(n=this.stream.readByte()),t&2&&(i=this.stream.readByte()),t&16&&(o=this.stream.readByte()),t&8&&(s=this.stream.readShort()),t&4){let d={x:0,y:0,z:0};this.stream.readPos(d),a=d}this.handler&&this.handler.onSound(t,r,n,i,o,s,a)}parseMuzzleFlash(){let t=this.stream.readShort(),r=this.stream.readByte();this.handler&&this.handler.onMuzzleFlash(t,r)}parseMuzzleFlash2(){let t=this.stream.readShort(),r=this.stream.readByte();this.handler&&this.handler.onMuzzleFlash2(t,r)}parseMuzzleFlash3(){let t=this.stream.readShort(),r=this.stream.readShort();this.handler&&this.handler.onMuzzleFlash3&&this.handler.onMuzzleFlash3(t,r)}parseFog(){let t=this.stream.readByte();if(t&128){let n=this.stream.readByte();t|=n<<8}let r={};t&1&&(r.density=this.stream.readFloat(),r.skyfactor=this.stream.readByte()),t&2&&(r.red=this.stream.readByte()),t&4&&(r.green=this.stream.readByte()),t&8&&(r.blue=this.stream.readByte()),t&16&&(r.time=this.stream.readShort()),t&32&&(r.hf_falloff=this.stream.readFloat()),t&64&&(r.hf_density=this.stream.readFloat()),t&256&&(r.hf_start_r=this.stream.readByte()),t&512&&(r.hf_start_g=this.stream.readByte()),t&1024&&(r.hf_start_b=this.stream.readByte()),t&2048&&(r.hf_start_dist=this.stream.readLong()),t&4096&&(r.hf_end_r=this.stream.readByte()),t&8192&&(r.hf_end_g=this.stream.readByte()),t&16384&&(r.hf_end_b=this.stream.readByte()),t&32768&&(r.hf_end_dist=this.stream.readLong()),this.handler&&this.handler.onFog&&this.handler.onFog(r)}parseDamage(){let t=this.stream.readByte(),r=[];for(let n=0;n<t;n++){let i=this.stream.readByte(),o={x:0,y:0,z:0};this.stream.readDir(o);let s=i&31,a=(i&32)!==0,d=(i&64)!==0,l=(i&128)!==0;r.push({damage:s,health:a,armor:d,power:l,dir:o})}this.handler&&this.handler.onDamage&&this.handler.onDamage(r)}parseTempEntity(){let t=this.stream.readByte(),r={x:0,y:0,z:0},n={x:0,y:0,z:0},i={x:0,y:0,z:0},o,s,a,d,l;switch(t){case I.EXPLOSION1:case I.EXPLOSION2:case I.ROCKET_EXPLOSION:case I.GRENADE_EXPLOSION:case I.ROCKET_EXPLOSION_WATER:case I.GRENADE_EXPLOSION_WATER:case I.BFG_EXPLOSION:case I.BFG_BIGEXPLOSION:case I.BOSSTPORT:case I.PLASMA_EXPLOSION:case I.PLAIN_EXPLOSION:case I.CHAINFIST_SMOKE:case I.TRACKER_EXPLOSION:case I.TELEPORT_EFFECT:case I.DBALL_GOAL:case I.NUKEBLAST:case I.WIDOWSPLASH:case I.EXPLOSION1_BIG:case I.EXPLOSION1_NP:this.stream.readPos(r);break;case I.GUNSHOT:case I.BLOOD:case I.BLASTER:case I.SHOTGUN:case I.SPARKS:case I.BULLET_SPARKS:case I.SCREEN_SPARKS:case I.SHIELD_SPARKS:case I.BLASTER2:case I.FLECHETTE:case I.MOREBLOOD:case I.ELECTRIC_SPARKS:case I.HEATBEAM_SPARKS:case I.HEATBEAM_STEAM:this.stream.readPos(r),this.stream.readDir(i);break;case I.SPLASH:case I.LASER_SPARKS:case I.WELDING_SPARKS:case I.TUNNEL_SPARKS:o=this.stream.readByte(),this.stream.readPos(r),this.stream.readDir(i),s=this.stream.readByte();break;case I.BLUEHYPERBLASTER:this.protocolVersion>=32?(this.stream.readPos(r),this.stream.readPos(n)):(this.stream.readPos(r),this.stream.readDir(i));break;case I.GREENBLOOD:this.protocolVersion>=32?(this.stream.readPos(r),this.stream.readDir(i)):(this.stream.readPos(r),this.stream.readPos(n));break;case I.RAILTRAIL:case I.BUBBLETRAIL:case I.BFG_LASER:case I.DEBUGTRAIL:case I.BUBBLETRAIL2:this.stream.readPos(r),this.stream.readPos(n);break;case I.PARASITE_ATTACK:case I.MEDIC_CABLE_ATTACK:this.stream.readShort(),this.stream.readPos(r),this.stream.readPos(n);break;case I.GRAPPLE_CABLE:a=this.stream.readShort(),this.stream.readPos(r),this.stream.readPos(n),this.stream.readPos(i);break;case I.LIGHTNING:d=this.stream.readShort(),l=this.stream.readShort(),this.stream.readPos(r),this.stream.readPos(n);break;case I.FLASHLIGHT:this.stream.readPos(r),a=this.stream.readShort();break;case I.FORCEWALL:this.stream.readPos(r),this.stream.readPos(n),s=this.stream.readByte();break;case I.STEAM:let c=this.stream.readShort();o=this.stream.readByte(),this.stream.readPos(r),this.stream.readDir(i),s=this.stream.readByte(),this.stream.readShort(),c!==-1&&this.stream.readLong();break;case I.WIDOWBEAMOUT:this.stream.readShort();case I.HEATBEAM:case I.MONSTER_HEATBEAM:a=this.stream.readShort(),this.stream.readPos(r),this.stream.readPos(n),this.stream.readPos(i);break;default:break}this.handler&&this.handler.onTempEntity(t,r,n,i,o,s,a,d,l)}parseSpawnBaseline(){let t=this.parseEntityBits(),r=kr();this.parseDelta(kr(),r,t.number,t.bits,t.bitsHigh),this.handler&&this.handler.onSpawnBaseline(r)}parseFrame(){let t=this.stream.readLong(),r=this.stream.readLong(),n=this.stream.readByte(),i=this.stream.readByte(),o=this.stream.readData(i),s=this.stream.readByte();if(s=this.translateCommand(s),s!==D.playerinfo)throw new Error(`Expected svc_playerinfo after svc_frame, got ${s} (translated)`);let a=this.parsePlayerState();if(this.isDemo===ux){let d=this.stream.readByte();for(let l=0;l<d;l++)this.stream.readByte()}this.isDemo===dx&&this.stream.readLong(),this.handler&&this.handler.onFrame({serverFrame:t,deltaFrame:r,surpressCount:n,areaBytes:i,areaBits:o,playerState:a,packetEntities:{delta:!1,entities:[]}})}parsePlayerState(){let t=$s(),r=this.stream.readShort();r&1&&(t.pm_type=this.stream.readByte()),r&2&&(t.origin.x=this.stream.readShort()*.125,t.origin.y=this.stream.readShort()*.125,t.origin.z=this.stream.readShort()*.125),r&4&&(t.velocity.x=this.stream.readShort()*.125,t.velocity.y=this.stream.readShort()*.125,t.velocity.z=this.stream.readShort()*.125),r&8&&(t.pm_time=this.stream.readByte()),r&16&&(t.pm_flags=this.stream.readByte()),r&32&&(t.gravity=this.stream.readShort()),r&64&&(t.delta_angles.x=this.stream.readShort()*(180/32768),t.delta_angles.y=this.stream.readShort()*(180/32768),t.delta_angles.z=this.stream.readShort()*(180/32768)),r&128&&(t.viewoffset.x=this.stream.readChar()*.25,t.viewoffset.y=this.stream.readChar()*.25,t.viewoffset.z=this.stream.readChar()*.25),r&256&&(t.viewangles.x=this.stream.readAngle16(),t.viewangles.y=this.stream.readAngle16(),t.viewangles.z=this.stream.readAngle16()),r&512&&(t.kick_angles.x=this.stream.readChar()*.25,t.kick_angles.y=this.stream.readChar()*.25,t.kick_angles.z=this.stream.readChar()*.25),r&4096&&(t.gun_index=this.stream.readByte()),r&8192&&(t.gun_frame=this.stream.readByte(),t.gun_offset.x=this.stream.readChar()*.25,t.gun_offset.y=this.stream.readChar()*.25,t.gun_offset.z=this.stream.readChar()*.25,t.gun_angles.x=this.stream.readChar()*.25,t.gun_angles.y=this.stream.readChar()*.25,t.gun_angles.z=this.stream.readChar()*.25),r&1024&&(t.blend[0]=this.stream.readByte(),t.blend[1]=this.stream.readByte(),t.blend[2]=this.stream.readByte(),t.blend[3]=this.stream.readByte()),r&2048&&(t.fov=this.stream.readByte()),r&16384&&(t.rdflags=this.stream.readByte());let n=this.stream.readLong();for(let i=0;i<32;i++)n&1<<i&&(t.stats[i]=this.stream.readShort());return t}parsePacketEntities(t){let r=this.collectPacketEntities();this.handler&&this.handler.onFrame({serverFrame:0,deltaFrame:0,surpressCount:0,areaBytes:0,areaBits:new Uint8Array,playerState:$s(),packetEntities:{delta:t,entities:r}})}collectPacketEntities(){let t=[];for(;;){let r=this.parseEntityBits();if(r.number===0)break;let n=kr();this.parseDelta(kr(),n,r.number,r.bits,r.bitsHigh),t.push(n)}return t}parseEntityBits(){let t=this.stream.readByte();t&ix&&(t|=this.stream.readByte()<<8),t&sx&&(t|=this.stream.readByte()<<16),t&ax&&(t|=this.stream.readByte()<<24);let r=0;t&lx&&(r=this.stream.readByte());let n;return t&ox?n=this.stream.readShort():n=this.stream.readByte(),{number:n,bits:t,bitsHigh:r}}parseDelta(t,r,n,i,o=0){r.number=t.number,r.modelindex=t.modelindex,r.modelindex2=t.modelindex2,r.modelindex3=t.modelindex3,r.modelindex4=t.modelindex4,r.frame=t.frame,r.skinnum=t.skinnum,r.effects=t.effects,r.renderfx=t.renderfx,r.origin.x=t.origin.x,r.origin.y=t.origin.y,r.origin.z=t.origin.z,r.old_origin.x=t.origin.x,r.old_origin.y=t.origin.y,r.old_origin.z=t.origin.z,r.angles.x=t.angles.x,r.angles.y=t.angles.y,r.angles.z=t.angles.z,r.sound=t.sound,r.event=t.event,r.solid=t.solid,r.alpha=t.alpha,r.scale=t.scale,r.instanceBits=t.instanceBits,r.loopVolume=t.loopVolume,r.loopAttenuation=t.loopAttenuation,r.owner=t.owner,r.oldFrame=t.oldFrame,r.number=n,r.bits=i,r.bitsHigh=o,i&ra&&(r.modelindex=this.stream.readByte()),i&ia&&(r.modelindex2=this.stream.readByte()),i&oa&&(r.modelindex3=this.stream.readByte()),i&sa&&(r.modelindex4=this.stream.readByte()),i&Qs&&(r.frame=this.stream.readByte()),i&na&&(r.frame=this.stream.readShort()),i&io&&i&ao?r.skinnum=this.stream.readLong():i&io?r.skinnum=this.stream.readByte():i&ao&&(r.skinnum=this.stream.readShort()),i&no&&i&so?r.effects=this.stream.readLong():i&no?r.effects=this.stream.readByte():i&so&&(r.effects=this.stream.readShort()),i&ro&&i&oo?r.renderfx=this.stream.readLong():i&ro?r.renderfx=this.stream.readByte():i&oo&&(r.renderfx=this.stream.readShort()),i&Zs&&(r.origin.x=this.stream.readCoord()),i&Ys&&(r.origin.y=this.stream.readCoord()),i&ea&&(r.origin.z=this.stream.readCoord()),i&ta&&(r.angles.x=this.stream.readAngle()),i&qs&&(r.angles.y=this.stream.readAngle()),i&js&&(r.angles.z=this.stream.readAngle()),i&aa&&this.stream.readPos(r.old_origin),i&la&&(r.sound=this.stream.readByte()),i&Js?r.event=this.stream.readByte():r.event=0,i&ca&&(r.solid=this.stream.readShort()),i&nc&&(r.alpha=this.stream.readByte()/255),i&ic&&(r.scale=this.stream.readFloat()),i&oc&&(r.instanceBits=this.stream.readLong()),i&sc&&(r.loopVolume=this.stream.readByte()/255),o&ac&&(r.loopAttenuation=this.stream.readByte()/255),o&lc&&(r.owner=this.stream.readShort()),o&cc&&(r.oldFrame=this.stream.readShort())}};var da=(i=>(i[i.Stopped=0]="Stopped",i[i.Playing=1]="Playing",i[i.Paused=2]="Paused",i[i.Finished=3]="Finished",i))(da||{}),lo=class{constructor(){this.reader=null;this.state=0;this.playbackSpeed=1;this.currentProtocolVersion=0;this.accumulatedTime=0;this.frameDuration=100}setHandler(t){this.handler=t}loadDemo(t){this.reader=new Ar(t),this.state=0,this.accumulatedTime=0,this.currentProtocolVersion=0}play(){this.reader&&(this.state=1)}pause(){this.state===1&&(this.state=2)}stop(){this.state=0,this.reader&&this.reader.reset(),this.accumulatedTime=0,this.currentProtocolVersion=0}setFrameDuration(t){this.frameDuration=t}update(t){if(!(this.state!==1||!this.reader))for(this.accumulatedTime+=t*1e3*this.playbackSpeed;this.accumulatedTime>=this.frameDuration;){if(!this.reader.hasMore()){this.state=3;return}let r=this.reader.readNextBlock();if(!r){this.state=3;return}let n=new Fr(r.data,this.handler);n.setProtocolVersion(this.currentProtocolVersion),n.parseMessage(),this.currentProtocolVersion=n.getProtocolVersion(),this.accumulatedTime-=this.frameDuration}}getState(){return this.state}};function fx(e){return{init(){e.trace({x:0,y:0,z:0},{x:0,y:0,z:0})},shutdown(){},createMainLoop(t,r){return new or(t,r)}}}return $u(hx);})();
|
|
480
|
+
}`,ks=class{constructor(t,r){this.vertexCapacity=0;this.indexCapacity=0;this.gl=t,this.system=r,this.program=Me.create(t,{vertex:wl,fragment:Al}),this.vertexBuffer=new Ee(t,t.DYNAMIC_DRAW),this.indexBuffer=new ye(t,t.DYNAMIC_DRAW),this.vertexArray=new ze(t),this.vertexArray.configureAttributes([{index:0,size:3,type:t.FLOAT,stride:36,offset:0},{index:1,size:2,type:t.FLOAT,stride:36,offset:12},{index:2,size:4,type:t.FLOAT,stride:36,offset:20}],this.vertexBuffer)}render(t){let r=this.system.buildMesh(t.viewRight,t.viewUp);if(r.indices.length===0)return;let n=r.vertices;r.vertices.byteLength>this.vertexCapacity?(this.vertexCapacity=r.vertices.byteLength,this.vertexBuffer.upload(n,this.gl.DYNAMIC_DRAW)):this.vertexBuffer.update(n);let i=r.indices;r.indices.byteLength>this.indexCapacity?(this.indexCapacity=r.indices.byteLength,this.indexBuffer.upload(i,this.gl.DYNAMIC_DRAW)):this.indexBuffer.update(i),this.gl.depthMask(!1),this.program.use();let o=this.program.getUniformLocation("u_viewProjection");this.gl.uniformMatrix4fv(o,!1,t.viewProjection),this.vertexArray.bind();for(let s of r.batches)s.blendMode==="additive"?this.gl.blendFunc(this.gl.SRC_ALPHA,this.gl.ONE):this.gl.blendFuncSeparate(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA,this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA),this.gl.drawElements(this.gl.TRIANGLES,s.count,this.gl.UNSIGNED_SHORT,s.start*2);this.gl.depthMask(!0)}dispose(){this.program.dispose(),this.vertexBuffer.dispose(),this.indexBuffer.dispose(),this.vertexArray.dispose()}};function h0(e){let{system:t,origin:r,normal:n={x:0,y:0,z:1}}=e;for(let i=0;i<12;i+=1){let o=200+t.random()*180,s=t.random()*.35;t.spawn({position:r,velocity:{x:n.x*o+(t.random()-.5)*80,y:n.y*o+(t.random()-.5)*80,z:Math.max(n.z*o,120)+s*80},color:[1,.8,.4,1],size:2.5,lifetime:.45+t.random()*.1,gravity:600,damping:2,bounce:.45,blendMode:"additive",fade:!0})}for(let i=0;i<8;i+=1)t.spawn({position:r,velocity:{x:(t.random()-.5)*40,y:(t.random()-.5)*40,z:80+t.random()*40},color:[.45,.45,.45,.75],size:6,lifetime:.6,gravity:200,damping:4,bounce:.15,blendMode:"alpha",fade:!0})}function m0(e){let{system:t,origin:r}=e;for(let n=0;n<40;n+=1){let i=t.random()*Math.PI*2,o=Math.acos(2*t.random()-1),s=220+t.random()*260,a={x:Math.sin(o)*Math.cos(i),y:Math.sin(o)*Math.sin(i),z:Math.cos(o)};t.spawn({position:r,velocity:{x:a.x*s,y:a.y*s,z:a.z*s},color:[1,.6,.2,1],size:5,lifetime:.9,gravity:700,damping:1,bounce:.35,blendMode:"additive",fade:!0})}for(let n=0;n<16;n+=1)t.spawn({position:r,velocity:{x:(t.random()-.5)*30,y:(t.random()-.5)*30,z:120+t.random()*120},color:[.25,.25,.25,.9],size:12,lifetime:1.2,gravity:300,damping:3,blendMode:"alpha",fade:!0})}function p0(e){let{system:t,origin:r,direction:n={x:0,y:0,z:1}}=e;for(let i=0;i<24;i+=1){let o=120+t.random()*180;t.spawn({position:r,velocity:{x:n.x*o+(t.random()-.5)*70,y:n.y*o+(t.random()-.5)*70,z:n.z*o+t.random()*80},color:[.6,0,0,.95],size:3,lifetime:.8,gravity:900,damping:1,bounce:.2,blendMode:"alpha",fade:!0})}}function g0(e){let{system:t,origin:r}=e;for(let n=0;n<30;n+=1){let i=t.random()*Math.PI*2,o=8+t.random()*8;t.spawn({position:r,velocity:{x:Math.cos(i)*o,y:Math.sin(i)*o,z:100+t.random()*80},color:[.4,.6,1,.9],size:4,lifetime:.5,gravity:300,damping:2,blendMode:"additive",fade:!0})}}function y0(e){let{system:t,origin:r,direction:n={x:1,y:0,z:0}}=e;for(let i=0;i<10;i+=1){let o=350+t.random()*100;t.spawn({position:r,velocity:{x:n.x*o+(t.random()-.5)*30,y:n.y*o+(t.random()-.5)*30,z:n.z*o+(t.random()-.5)*30},color:[1,.8,.3,1],size:3,lifetime:.25,gravity:200,damping:1,blendMode:"additive",fade:!0})}}function x0(e){let{system:t,origin:r,direction:n={x:0,y:0,z:0}}=e;for(let i=0;i<6;i+=1)t.spawn({position:{x:r.x+n.x*i*2,y:r.y+n.y*i*2,z:r.z+n.z*i*2},velocity:{x:(t.random()-.5)*15,y:(t.random()-.5)*15,z:20+t.random()*15},color:[.6,.6,.6,.8],size:2.2,lifetime:.6,gravity:200,damping:1.5,blendMode:"alpha",fade:!0})}var Ar=class{constructor(t){this.buffer=t,this.view=new DataView(t),this.offset=0}hasMore(){return this.offset<this.buffer.byteLength}readNextBlock(){if(this.offset+4>this.buffer.byteLength)return null;let t=this.view.getInt32(this.offset,!0);if(this.offset+=4,t<0||t>2097152)return console.warn(`DemoReader: Invalid block length ${t} at offset ${this.offset-4}`),null;if(this.offset+t>this.buffer.byteLength)return console.warn(`DemoReader: Incomplete block. Expected ${t} bytes, but only ${this.buffer.byteLength-this.offset} remain.`),null;let r=this.buffer.slice(this.offset,this.offset+t);return this.offset+=t,{length:t,data:new kn(r)}}reset(){this.offset=0}getOffset(){return this.offset}};function Mn(e){let t=e.length;for(;--t>=0;)e[t]=0}var c1=0,nu=1,d1=2,u1=3,f1=258,Zl=29,Qi=256,Wi=Qi+1+Zl,Sn=30,Yl=19,iu=2*Wi+1,Mr=15,Ml=16,h1=7,ql=256,ou=16,su=17,au=18,Nl=new Uint8Array([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]),Ns=new Uint8Array([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]),m1=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),lu=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),p1=512,It=new Array((Wi+2)*2);Mn(It);var Hi=new Array(Sn*2);Mn(Hi);var Xi=new Array(p1);Mn(Xi);var Ki=new Array(f1-u1+1);Mn(Ki);var jl=new Array(Zl);Mn(jl);var Us=new Array(Sn);Mn(Us);function El(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}var cu,du,uu;function Ll(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}var fu=e=>e<256?Xi[e]:Xi[256+(e>>>7)],$i=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},Re=(e,t,r)=>{e.bi_valid>Ml-r?(e.bi_buf|=t<<e.bi_valid&65535,$i(e,e.bi_buf),e.bi_buf=t>>Ml-e.bi_valid,e.bi_valid+=r-Ml):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)},ft=(e,t,r)=>{Re(e,r[t*2],r[t*2+1])},hu=(e,t)=>{let r=0;do r|=e&1,e>>>=1,r<<=1;while(--t>0);return r>>>1},g1=e=>{e.bi_valid===16?($i(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},y1=(e,t)=>{let r=t.dyn_tree,n=t.max_code,i=t.stat_desc.static_tree,o=t.stat_desc.has_stree,s=t.stat_desc.extra_bits,a=t.stat_desc.extra_base,d=t.stat_desc.max_length,l,c,h,u,f,m,g=0;for(u=0;u<=Mr;u++)e.bl_count[u]=0;for(r[e.heap[e.heap_max]*2+1]=0,l=e.heap_max+1;l<iu;l++)c=e.heap[l],u=r[r[c*2+1]*2+1]+1,u>d&&(u=d,g++),r[c*2+1]=u,!(c>n)&&(e.bl_count[u]++,f=0,c>=a&&(f=s[c-a]),m=r[c*2],e.opt_len+=m*(u+f),o&&(e.static_len+=m*(i[c*2+1]+f)));if(g!==0){do{for(u=d-1;e.bl_count[u]===0;)u--;e.bl_count[u]--,e.bl_count[u+1]+=2,e.bl_count[d]--,g-=2}while(g>0);for(u=d;u!==0;u--)for(c=e.bl_count[u];c!==0;)h=e.heap[--l],!(h>n)&&(r[h*2+1]!==u&&(e.opt_len+=(u-r[h*2+1])*r[h*2],r[h*2+1]=u),c--)}},mu=(e,t,r)=>{let n=new Array(Mr+1),i=0,o,s;for(o=1;o<=Mr;o++)i=i+r[o-1]<<1,n[o]=i;for(s=0;s<=t;s++){let a=e[s*2+1];a!==0&&(e[s*2]=hu(n[a]++,a))}},x1=()=>{let e,t,r,n,i,o=new Array(Mr+1);for(r=0,n=0;n<Zl-1;n++)for(jl[n]=r,e=0;e<1<<Nl[n];e++)Ki[r++]=n;for(Ki[r-1]=n,i=0,n=0;n<16;n++)for(Us[n]=i,e=0;e<1<<Ns[n];e++)Xi[i++]=n;for(i>>=7;n<Sn;n++)for(Us[n]=i<<7,e=0;e<1<<Ns[n]-7;e++)Xi[256+i++]=n;for(t=0;t<=Mr;t++)o[t]=0;for(e=0;e<=143;)It[e*2+1]=8,e++,o[8]++;for(;e<=255;)It[e*2+1]=9,e++,o[9]++;for(;e<=279;)It[e*2+1]=7,e++,o[7]++;for(;e<=287;)It[e*2+1]=8,e++,o[8]++;for(mu(It,Wi+1,o),e=0;e<Sn;e++)Hi[e*2+1]=5,Hi[e*2]=hu(e,5);cu=new El(It,Nl,Qi+1,Wi,Mr),du=new El(Hi,Ns,0,Sn,Mr),uu=new El(new Array(0),m1,0,Yl,h1)},pu=e=>{let t;for(t=0;t<Wi;t++)e.dyn_ltree[t*2]=0;for(t=0;t<Sn;t++)e.dyn_dtree[t*2]=0;for(t=0;t<Yl;t++)e.bl_tree[t*2]=0;e.dyn_ltree[ql*2]=1,e.opt_len=e.static_len=0,e.sym_next=e.matches=0},gu=e=>{e.bi_valid>8?$i(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},_0=(e,t,r,n)=>{let i=t*2,o=r*2;return e[i]<e[o]||e[i]===e[o]&&n[t]<=n[r]},Tl=(e,t,r)=>{let n=e.heap[r],i=r<<1;for(;i<=e.heap_len&&(i<e.heap_len&&_0(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!_0(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n},b0=(e,t,r)=>{let n,i,o=0,s,a;if(e.sym_next!==0)do n=e.pending_buf[e.sym_buf+o++]&255,n+=(e.pending_buf[e.sym_buf+o++]&255)<<8,i=e.pending_buf[e.sym_buf+o++],n===0?ft(e,i,t):(s=Ki[i],ft(e,s+Qi+1,t),a=Nl[s],a!==0&&(i-=jl[s],Re(e,i,a)),n--,s=fu(n),ft(e,s,r),a=Ns[s],a!==0&&(n-=Us[s],Re(e,n,a)));while(o<e.sym_next);ft(e,ql,t)},Ul=(e,t)=>{let r=t.dyn_tree,n=t.stat_desc.static_tree,i=t.stat_desc.has_stree,o=t.stat_desc.elems,s,a,d=-1,l;for(e.heap_len=0,e.heap_max=iu,s=0;s<o;s++)r[s*2]!==0?(e.heap[++e.heap_len]=d=s,e.depth[s]=0):r[s*2+1]=0;for(;e.heap_len<2;)l=e.heap[++e.heap_len]=d<2?++d:0,r[l*2]=1,e.depth[l]=0,e.opt_len--,i&&(e.static_len-=n[l*2+1]);for(t.max_code=d,s=e.heap_len>>1;s>=1;s--)Tl(e,r,s);l=o;do s=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Tl(e,r,1),a=e.heap[1],e.heap[--e.heap_max]=s,e.heap[--e.heap_max]=a,r[l*2]=r[s*2]+r[a*2],e.depth[l]=(e.depth[s]>=e.depth[a]?e.depth[s]:e.depth[a])+1,r[s*2+1]=r[a*2+1]=l,e.heap[1]=l++,Tl(e,r,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],y1(e,t),mu(r,d,e.bl_count)},v0=(e,t,r)=>{let n,i=-1,o,s=t[1],a=0,d=7,l=4;for(s===0&&(d=138,l=3),t[(r+1)*2+1]=65535,n=0;n<=r;n++)o=s,s=t[(n+1)*2+1],!(++a<d&&o===s)&&(a<l?e.bl_tree[o*2]+=a:o!==0?(o!==i&&e.bl_tree[o*2]++,e.bl_tree[ou*2]++):a<=10?e.bl_tree[su*2]++:e.bl_tree[au*2]++,a=0,i=o,s===0?(d=138,l=3):o===s?(d=6,l=3):(d=7,l=4))},S0=(e,t,r)=>{let n,i=-1,o,s=t[1],a=0,d=7,l=4;for(s===0&&(d=138,l=3),n=0;n<=r;n++)if(o=s,s=t[(n+1)*2+1],!(++a<d&&o===s)){if(a<l)do ft(e,o,e.bl_tree);while(--a!==0);else o!==0?(o!==i&&(ft(e,o,e.bl_tree),a--),ft(e,ou,e.bl_tree),Re(e,a-3,2)):a<=10?(ft(e,su,e.bl_tree),Re(e,a-3,3)):(ft(e,au,e.bl_tree),Re(e,a-11,7));a=0,i=o,s===0?(d=138,l=3):o===s?(d=6,l=3):(d=7,l=4)}},_1=e=>{let t;for(v0(e,e.dyn_ltree,e.l_desc.max_code),v0(e,e.dyn_dtree,e.d_desc.max_code),Ul(e,e.bl_desc),t=Yl-1;t>=3&&e.bl_tree[lu[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},b1=(e,t,r,n)=>{let i;for(Re(e,t-257,5),Re(e,r-1,5),Re(e,n-4,4),i=0;i<n;i++)Re(e,e.bl_tree[lu[i]*2+1],3);S0(e,e.dyn_ltree,t-1),S0(e,e.dyn_dtree,r-1)},v1=e=>{let t=4093624447,r;for(r=0;r<=31;r++,t>>>=1)if(t&1&&e.dyn_ltree[r*2]!==0)return 0;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return 1;for(r=32;r<Qi;r++)if(e.dyn_ltree[r*2]!==0)return 1;return 0},w0=!1,S1=e=>{w0||(x1(),w0=!0),e.l_desc=new Ll(e.dyn_ltree,cu),e.d_desc=new Ll(e.dyn_dtree,du),e.bl_desc=new Ll(e.bl_tree,uu),e.bi_buf=0,e.bi_valid=0,pu(e)},yu=(e,t,r,n)=>{Re(e,(c1<<1)+(n?1:0),3),gu(e),$i(e,r),$i(e,~r),r&&e.pending_buf.set(e.window.subarray(t,t+r),e.pending),e.pending+=r},w1=e=>{Re(e,nu<<1,3),ft(e,ql,It),g1(e)},A1=(e,t,r,n)=>{let i,o,s=0;e.level>0?(e.strm.data_type===2&&(e.strm.data_type=v1(e)),Ul(e,e.l_desc),Ul(e,e.d_desc),s=_1(e),i=e.opt_len+3+7>>>3,o=e.static_len+3+7>>>3,o<=i&&(i=o)):i=o=r+5,r+4<=i&&t!==-1?yu(e,t,r,n):e.strategy===4||o===i?(Re(e,(nu<<1)+(n?1:0),3),b0(e,It,Hi)):(Re(e,(d1<<1)+(n?1:0),3),b1(e,e.l_desc.max_code+1,e.d_desc.max_code+1,s+1),b0(e,e.dyn_ltree,e.dyn_dtree)),pu(e),n&&gu(e)},M1=(e,t,r)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=r,t===0?e.dyn_ltree[r*2]++:(e.matches++,t--,e.dyn_ltree[(Ki[r]+Qi+1)*2]++,e.dyn_dtree[fu(t)*2]++),e.sym_next===e.sym_end),E1=S1,L1=yu,T1=A1,I1=M1,C1=w1,z1={_tr_init:E1,_tr_stored_block:L1,_tr_flush_block:T1,_tr_tally:I1,_tr_align:C1},R1=(e,t,r,n)=>{let i=e&65535|0,o=e>>>16&65535|0,s=0;for(;r!==0;){s=r>2e3?2e3:r,r-=s;do i=i+t[n++]|0,o=o+i|0;while(--s);i%=65521,o%=65521}return i|o<<16|0},Zi=R1,k1=()=>{let e,t=[];for(var r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t},F1=new Uint32Array(k1()),D1=(e,t,r,n)=>{let i=F1,o=n+r;e^=-1;for(let s=n;s<o;s++)e=e>>>8^i[(e^t[s])&255];return e^-1},fe=D1,Tr={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},zr={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:P1,_tr_stored_block:Hl,_tr_flush_block:O1,_tr_tally:tr,_tr_align:B1}=z1,{Z_NO_FLUSH:rr,Z_PARTIAL_FLUSH:N1,Z_FULL_FLUSH:U1,Z_FINISH:qe,Z_BLOCK:A0,Z_OK:he,Z_STREAM_END:M0,Z_STREAM_ERROR:ht,Z_DATA_ERROR:H1,Z_BUF_ERROR:Il,Z_DEFAULT_COMPRESSION:V1,Z_FILTERED:G1,Z_HUFFMAN_ONLY:Fs,Z_RLE:W1,Z_FIXED:X1,Z_DEFAULT_STRATEGY:K1,Z_UNKNOWN:$1,Z_DEFLATED:Gs}=zr,Z1=9,Y1=15,q1=8,j1=29,Q1=256,Vl=Q1+1+j1,J1=30,eg=19,tg=2*Vl+1,rg=15,V=3,er=258,mt=er+V+1,ng=32,wn=42,Ql=57,Gl=69,Wl=73,Xl=91,Kl=103,Er=113,Ni=666,Le=1,En=2,Ir=3,Ln=4,ig=3,Lr=(e,t)=>(e.msg=Tr[t],t),E0=e=>e*2-(e>4?9:0),Jt=e=>{let t=e.length;for(;--t>=0;)e[t]=0},og=e=>{let t,r,n,i=e.w_size;t=e.hash_size,n=t;do r=e.head[--n],e.head[n]=r>=i?r-i:0;while(--t);t=i,n=t;do r=e.prev[--n],e.prev[n]=r>=i?r-i:0;while(--t)},sg=(e,t,r)=>(t<<e.hash_shift^r)&e.hash_mask,nr=sg,Be=e=>{let t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+r),e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,t.pending===0&&(t.pending_out=0))},Ne=(e,t)=>{O1(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Be(e.strm)},X=(e,t)=>{e.pending_buf[e.pending++]=t},Bi=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},$l=(e,t,r,n)=>{let i=e.avail_in;return i>n&&(i=n),i===0?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),r),e.state.wrap===1?e.adler=Zi(e.adler,t,i,r):e.state.wrap===2&&(e.adler=fe(e.adler,t,i,r)),e.next_in+=i,e.total_in+=i,i)},xu=(e,t)=>{let r=e.max_chain_length,n=e.strstart,i,o,s=e.prev_length,a=e.nice_match,d=e.strstart>e.w_size-mt?e.strstart-(e.w_size-mt):0,l=e.window,c=e.w_mask,h=e.prev,u=e.strstart+er,f=l[n+s-1],m=l[n+s];e.prev_length>=e.good_match&&(r>>=2),a>e.lookahead&&(a=e.lookahead);do if(i=t,!(l[i+s]!==m||l[i+s-1]!==f||l[i]!==l[n]||l[++i]!==l[n+1])){n+=2,i++;do;while(l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&n<u);if(o=er-(u-n),n=u-er,o>s){if(e.match_start=t,s=o,o>=a)break;f=l[n+s-1],m=l[n+s]}}while((t=h[t&c])>d&&--r!==0);return s<=e.lookahead?s:e.lookahead},An=e=>{let t=e.w_size,r,n,i;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-mt)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),og(e),n+=t),e.strm.avail_in===0)break;if(r=$l(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=r,e.lookahead+e.insert>=V)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=nr(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=nr(e,e.ins_h,e.window[i+V-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert<V)););}while(e.lookahead<mt&&e.strm.avail_in!==0)},_u=(e,t)=>{let r=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,n,i,o,s=0,a=e.strm.avail_in;do{if(n=65535,o=e.bi_valid+42>>3,e.strm.avail_out<o||(o=e.strm.avail_out-o,i=e.strstart-e.block_start,n>i+e.strm.avail_in&&(n=i+e.strm.avail_in),n>o&&(n=o),n<r&&(n===0&&t!==qe||t===rr||n!==i+e.strm.avail_in)))break;s=t===qe&&n===i+e.strm.avail_in?1:0,Hl(e,0,0,s),e.pending_buf[e.pending-4]=n,e.pending_buf[e.pending-3]=n>>8,e.pending_buf[e.pending-2]=~n,e.pending_buf[e.pending-1]=~n>>8,Be(e.strm),i&&(i>n&&(i=n),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+i),e.strm.next_out),e.strm.next_out+=i,e.strm.avail_out-=i,e.strm.total_out+=i,e.block_start+=i,n-=i),n&&($l(e.strm,e.strm.output,e.strm.next_out,n),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n)}while(s===0);return a-=e.strm.avail_in,a&&(a>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=a&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-a,e.strm.next_in),e.strstart),e.strstart+=a,e.insert+=a>e.w_size-e.insert?e.w_size-e.insert:a),e.block_start=e.strstart),e.high_water<e.strstart&&(e.high_water=e.strstart),s?Ln:t!==rr&&t!==qe&&e.strm.avail_in===0&&e.strstart===e.block_start?En:(o=e.window_size-e.strstart,e.strm.avail_in>o&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,o+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),o>e.strm.avail_in&&(o=e.strm.avail_in),o&&($l(e.strm,e.window,e.strstart,o),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.high_water<e.strstart&&(e.high_water=e.strstart),o=e.bi_valid+42>>3,o=e.pending_buf_size-o>65535?65535:e.pending_buf_size-o,r=o>e.w_size?e.w_size:o,i=e.strstart-e.block_start,(i>=r||(i||t===qe)&&t!==rr&&e.strm.avail_in===0&&i<=o)&&(n=i>o?o:i,s=t===qe&&e.strm.avail_in===0&&n===i?1:0,Hl(e,e.block_start,n,s),e.block_start+=n,Be(e.strm)),s?Ir:Le)},Cl=(e,t)=>{let r,n;for(;;){if(e.lookahead<mt){if(An(e),e.lookahead<mt&&t===rr)return Le;if(e.lookahead===0)break}if(r=0,e.lookahead>=V&&(e.ins_h=nr(e,e.ins_h,e.window[e.strstart+V-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-mt&&(e.match_length=xu(e,r)),e.match_length>=V)if(n=tr(e,e.strstart-e.match_start,e.match_length-V),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=V){e.match_length--;do e.strstart++,e.ins_h=nr(e,e.ins_h,e.window[e.strstart+V-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=nr(e,e.ins_h,e.window[e.strstart+1]);else n=tr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(Ne(e,!1),e.strm.avail_out===0))return Le}return e.insert=e.strstart<V-1?e.strstart:V-1,t===qe?(Ne(e,!0),e.strm.avail_out===0?Ir:Ln):e.sym_next&&(Ne(e,!1),e.strm.avail_out===0)?Le:En},bn=(e,t)=>{let r,n,i;for(;;){if(e.lookahead<mt){if(An(e),e.lookahead<mt&&t===rr)return Le;if(e.lookahead===0)break}if(r=0,e.lookahead>=V&&(e.ins_h=nr(e,e.ins_h,e.window[e.strstart+V-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=V-1,r!==0&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-mt&&(e.match_length=xu(e,r),e.match_length<=5&&(e.strategy===G1||e.match_length===V&&e.strstart-e.match_start>4096)&&(e.match_length=V-1)),e.prev_length>=V&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-V,n=tr(e,e.strstart-1-e.prev_match,e.prev_length-V),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=i&&(e.ins_h=nr(e,e.ins_h,e.window[e.strstart+V-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=V-1,e.strstart++,n&&(Ne(e,!1),e.strm.avail_out===0))return Le}else if(e.match_available){if(n=tr(e,0,e.window[e.strstart-1]),n&&Ne(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return Le}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=tr(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<V-1?e.strstart:V-1,t===qe?(Ne(e,!0),e.strm.avail_out===0?Ir:Ln):e.sym_next&&(Ne(e,!1),e.strm.avail_out===0)?Le:En},ag=(e,t)=>{let r,n,i,o,s=e.window;for(;;){if(e.lookahead<=er){if(An(e),e.lookahead<=er&&t===rr)return Le;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=V&&e.strstart>0&&(i=e.strstart-1,n=s[i],n===s[++i]&&n===s[++i]&&n===s[++i])){o=e.strstart+er;do;while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<o);e.match_length=er-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=V?(r=tr(e,1,e.match_length-V),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=tr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Ne(e,!1),e.strm.avail_out===0))return Le}return e.insert=0,t===qe?(Ne(e,!0),e.strm.avail_out===0?Ir:Ln):e.sym_next&&(Ne(e,!1),e.strm.avail_out===0)?Le:En},lg=(e,t)=>{let r;for(;;){if(e.lookahead===0&&(An(e),e.lookahead===0)){if(t===rr)return Le;break}if(e.match_length=0,r=tr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Ne(e,!1),e.strm.avail_out===0))return Le}return e.insert=0,t===qe?(Ne(e,!0),e.strm.avail_out===0?Ir:Ln):e.sym_next&&(Ne(e,!1),e.strm.avail_out===0)?Le:En};function ut(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}var Ui=[new ut(0,0,0,0,_u),new ut(4,4,8,4,Cl),new ut(4,5,16,8,Cl),new ut(4,6,32,32,Cl),new ut(4,4,16,16,bn),new ut(8,16,32,32,bn),new ut(8,16,128,128,bn),new ut(8,32,128,256,bn),new ut(32,128,258,1024,bn),new ut(32,258,258,4096,bn)],cg=e=>{e.window_size=2*e.w_size,Jt(e.head),e.max_lazy_match=Ui[e.level].max_lazy,e.good_match=Ui[e.level].good_length,e.nice_match=Ui[e.level].nice_length,e.max_chain_length=Ui[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=V-1,e.match_available=0,e.ins_h=0};function dg(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Gs,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(tg*2),this.dyn_dtree=new Uint16Array((2*J1+1)*2),this.bl_tree=new Uint16Array((2*eg+1)*2),Jt(this.dyn_ltree),Jt(this.dyn_dtree),Jt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(rg+1),this.heap=new Uint16Array(2*Vl+1),Jt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*Vl+1),Jt(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}var Ji=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.status!==wn&&t.status!==Ql&&t.status!==Gl&&t.status!==Wl&&t.status!==Xl&&t.status!==Kl&&t.status!==Er&&t.status!==Ni?1:0},bu=e=>{if(Ji(e))return Lr(e,ht);e.total_in=e.total_out=0,e.data_type=$1;let t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?Ql:t.wrap?wn:Er,e.adler=t.wrap===2?0:1,t.last_flush=-2,P1(t),he},vu=e=>{let t=bu(e);return t===he&&cg(e.state),t},ug=(e,t)=>Ji(e)||e.state.wrap!==2?ht:(e.state.gzhead=t,he),Su=(e,t,r,n,i,o)=>{if(!e)return ht;let s=1;if(t===V1&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),i<1||i>Z1||r!==Gs||n<8||n>15||t<0||t>9||o<0||o>X1||n===8&&s!==1)return Lr(e,ht);n===8&&(n=9);let a=new dg;return e.state=a,a.strm=e,a.status=wn,a.wrap=s,a.gzhead=null,a.w_bits=n,a.w_size=1<<a.w_bits,a.w_mask=a.w_size-1,a.hash_bits=i+7,a.hash_size=1<<a.hash_bits,a.hash_mask=a.hash_size-1,a.hash_shift=~~((a.hash_bits+V-1)/V),a.window=new Uint8Array(a.w_size*2),a.head=new Uint16Array(a.hash_size),a.prev=new Uint16Array(a.w_size),a.lit_bufsize=1<<i+6,a.pending_buf_size=a.lit_bufsize*4,a.pending_buf=new Uint8Array(a.pending_buf_size),a.sym_buf=a.lit_bufsize,a.sym_end=(a.lit_bufsize-1)*3,a.level=t,a.strategy=o,a.method=r,vu(e)},fg=(e,t)=>Su(e,t,Gs,Y1,q1,K1),hg=(e,t)=>{if(Ji(e)||t>A0||t<0)return e?Lr(e,ht):ht;let r=e.state;if(!e.output||e.avail_in!==0&&!e.input||r.status===Ni&&t!==qe)return Lr(e,e.avail_out===0?Il:ht);let n=r.last_flush;if(r.last_flush=t,r.pending!==0){if(Be(e),e.avail_out===0)return r.last_flush=-1,he}else if(e.avail_in===0&&E0(t)<=E0(n)&&t!==qe)return Lr(e,Il);if(r.status===Ni&&e.avail_in!==0)return Lr(e,Il);if(r.status===wn&&r.wrap===0&&(r.status=Er),r.status===wn){let i=Gs+(r.w_bits-8<<4)<<8,o=-1;if(r.strategy>=Fs||r.level<2?o=0:r.level<6?o=1:r.level===6?o=2:o=3,i|=o<<6,r.strstart!==0&&(i|=ng),i+=31-i%31,Bi(r,i),r.strstart!==0&&(Bi(r,e.adler>>>16),Bi(r,e.adler&65535)),e.adler=1,r.status=Er,Be(e),r.pending!==0)return r.last_flush=-1,he}if(r.status===Ql){if(e.adler=0,X(r,31),X(r,139),X(r,8),r.gzhead)X(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),X(r,r.gzhead.time&255),X(r,r.gzhead.time>>8&255),X(r,r.gzhead.time>>16&255),X(r,r.gzhead.time>>24&255),X(r,r.level===9?2:r.strategy>=Fs||r.level<2?4:0),X(r,r.gzhead.os&255),r.gzhead.extra&&r.gzhead.extra.length&&(X(r,r.gzhead.extra.length&255),X(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=fe(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=Gl;else if(X(r,0),X(r,0),X(r,0),X(r,0),X(r,0),X(r,r.level===9?2:r.strategy>=Fs||r.level<2?4:0),X(r,ig),r.status=Er,Be(e),r.pending!==0)return r.last_flush=-1,he}if(r.status===Gl){if(r.gzhead.extra){let i=r.pending,o=(r.gzhead.extra.length&65535)-r.gzindex;for(;r.pending+o>r.pending_buf_size;){let a=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+a),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex+=a,Be(e),r.pending!==0)return r.last_flush=-1,he;i=0,o-=a}let s=new Uint8Array(r.gzhead.extra);r.pending_buf.set(s.subarray(r.gzindex,r.gzindex+o),r.pending),r.pending+=o,r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex=0}r.status=Wl}if(r.status===Wl){if(r.gzhead.name){let i=r.pending,o;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),Be(e),r.pending!==0)return r.last_flush=-1,he;i=0}r.gzindex<r.gzhead.name.length?o=r.gzhead.name.charCodeAt(r.gzindex++)&255:o=0,X(r,o)}while(o!==0);r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex=0}r.status=Xl}if(r.status===Xl){if(r.gzhead.comment){let i=r.pending,o;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i)),Be(e),r.pending!==0)return r.last_flush=-1,he;i=0}r.gzindex<r.gzhead.comment.length?o=r.gzhead.comment.charCodeAt(r.gzindex++)&255:o=0,X(r,o)}while(o!==0);r.gzhead.hcrc&&r.pending>i&&(e.adler=fe(e.adler,r.pending_buf,r.pending-i,i))}r.status=Kl}if(r.status===Kl){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(Be(e),r.pending!==0))return r.last_flush=-1,he;X(r,e.adler&255),X(r,e.adler>>8&255),e.adler=0}if(r.status=Er,Be(e),r.pending!==0)return r.last_flush=-1,he}if(e.avail_in!==0||r.lookahead!==0||t!==rr&&r.status!==Ni){let i=r.level===0?_u(r,t):r.strategy===Fs?lg(r,t):r.strategy===W1?ag(r,t):Ui[r.level].func(r,t);if((i===Ir||i===Ln)&&(r.status=Ni),i===Le||i===Ir)return e.avail_out===0&&(r.last_flush=-1),he;if(i===En&&(t===N1?B1(r):t!==A0&&(Hl(r,0,0,!1),t===U1&&(Jt(r.head),r.lookahead===0&&(r.strstart=0,r.block_start=0,r.insert=0))),Be(e),e.avail_out===0))return r.last_flush=-1,he}return t!==qe?he:r.wrap<=0?M0:(r.wrap===2?(X(r,e.adler&255),X(r,e.adler>>8&255),X(r,e.adler>>16&255),X(r,e.adler>>24&255),X(r,e.total_in&255),X(r,e.total_in>>8&255),X(r,e.total_in>>16&255),X(r,e.total_in>>24&255)):(Bi(r,e.adler>>>16),Bi(r,e.adler&65535)),Be(e),r.wrap>0&&(r.wrap=-r.wrap),r.pending!==0?he:M0)},mg=e=>{if(Ji(e))return ht;let t=e.state.status;return e.state=null,t===Er?Lr(e,H1):he},pg=(e,t)=>{let r=t.length;if(Ji(e))return ht;let n=e.state,i=n.wrap;if(i===2||i===1&&n.status!==wn||n.lookahead)return ht;if(i===1&&(e.adler=Zi(e.adler,t,r,0)),n.wrap=0,r>=n.w_size){i===0&&(Jt(n.head),n.strstart=0,n.block_start=0,n.insert=0);let d=new Uint8Array(n.w_size);d.set(t.subarray(r-n.w_size,r),0),t=d,r=n.w_size}let o=e.avail_in,s=e.next_in,a=e.input;for(e.avail_in=r,e.next_in=0,e.input=t,An(n);n.lookahead>=V;){let d=n.strstart,l=n.lookahead-(V-1);do n.ins_h=nr(n,n.ins_h,n.window[d+V-1]),n.prev[d&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=d,d++;while(--l);n.strstart=d,n.lookahead=V-1,An(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=V-1,n.match_available=0,e.next_in=s,e.input=a,e.avail_in=o,n.wrap=i,he},gg=fg,yg=Su,xg=vu,_g=bu,bg=ug,vg=hg,Sg=mg,wg=pg,Ag="pako deflate (from Nodeca project)",Vi={deflateInit:gg,deflateInit2:yg,deflateReset:xg,deflateResetKeep:_g,deflateSetHeader:bg,deflate:vg,deflateEnd:Sg,deflateSetDictionary:wg,deflateInfo:Ag},Mg=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Eg=function(e){let t=Array.prototype.slice.call(arguments,1);for(;t.length;){let r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(let n in r)Mg(r,n)&&(e[n]=r[n])}}return e},Lg=e=>{let t=0;for(let n=0,i=e.length;n<i;n++)t+=e[n].length;let r=new Uint8Array(t);for(let n=0,i=0,o=e.length;n<o;n++){let s=e[n];r.set(s,i),i+=s.length}return r},Ws={assign:Eg,flattenChunks:Lg},wu=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{wu=!1}var Yi=new Uint8Array(256);for(let e=0;e<256;e++)Yi[e]=e>=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;Yi[254]=Yi[254]=1;var Tg=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,r,n,i,o,s=e.length,a=0;for(i=0;i<s;i++)r=e.charCodeAt(i),(r&64512)===55296&&i+1<s&&(n=e.charCodeAt(i+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),i++)),a+=r<128?1:r<2048?2:r<65536?3:4;for(t=new Uint8Array(a),o=0,i=0;o<a;i++)r=e.charCodeAt(i),(r&64512)===55296&&i+1<s&&(n=e.charCodeAt(i+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),i++)),r<128?t[o++]=r:r<2048?(t[o++]=192|r>>>6,t[o++]=128|r&63):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|r&63):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|r&63);return t},Ig=(e,t)=>{if(t<65534&&e.subarray&&wu)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let r="";for(let n=0;n<t;n++)r+=String.fromCharCode(e[n]);return r},Cg=(e,t)=>{let r=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let n,i,o=new Array(r*2);for(i=0,n=0;n<r;){let s=e[n++];if(s<128){o[i++]=s;continue}let a=Yi[s];if(a>4){o[i++]=65533,n+=a-1;continue}for(s&=a===2?31:a===3?15:7;a>1&&n<r;)s=s<<6|e[n++]&63,a--;if(a>1){o[i++]=65533;continue}s<65536?o[i++]=s:(s-=65536,o[i++]=55296|s>>10&1023,o[i++]=56320|s&1023)}return Ig(o,i)},zg=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let r=t-1;for(;r>=0&&(e[r]&192)===128;)r--;return r<0||r===0?t:r+Yi[e[r]]>t?r:t},qi={string2buf:Tg,buf2string:Cg,utf8border:zg};function Rg(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var Au=Rg,Mu=Object.prototype.toString,{Z_NO_FLUSH:kg,Z_SYNC_FLUSH:Fg,Z_FULL_FLUSH:Dg,Z_FINISH:Pg,Z_OK:Hs,Z_STREAM_END:Og,Z_DEFAULT_COMPRESSION:Bg,Z_DEFAULT_STRATEGY:Ng,Z_DEFLATED:Ug}=zr;function eo(e){this.options=Ws.assign({level:Bg,method:Ug,chunkSize:16384,windowBits:15,memLevel:8,strategy:Ng},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Au,this.strm.avail_out=0;let r=Vi.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==Hs)throw new Error(Tr[r]);if(t.header&&Vi.deflateSetHeader(this.strm,t.header),t.dictionary){let n;if(typeof t.dictionary=="string"?n=qi.string2buf(t.dictionary):Mu.call(t.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(t.dictionary):n=t.dictionary,r=Vi.deflateSetDictionary(this.strm,n),r!==Hs)throw new Error(Tr[r]);this._dict_set=!0}}eo.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,i,o;if(this.ended)return!1;for(t===~~t?o=t:o=t===!0?Pg:kg,typeof e=="string"?r.input=qi.string2buf(e):Mu.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){if(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(o===Fg||o===Dg)&&r.avail_out<=6){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(i=Vi.deflate(r,o),i===Og)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),i=Vi.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===Hs;if(r.avail_out===0){this.onData(r.output);continue}if(o>0&&r.next_out>0){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(r.avail_in===0)break}return!0};eo.prototype.onData=function(e){this.chunks.push(e)};eo.prototype.onEnd=function(e){e===Hs&&(this.result=Ws.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function Jl(e,t){let r=new eo(t);if(r.push(e,!0),r.err)throw r.msg||Tr[r.err];return r.result}function Hg(e,t){return t=t||{},t.raw=!0,Jl(e,t)}function Vg(e,t){return t=t||{},t.gzip=!0,Jl(e,t)}var Gg=eo,Wg=Jl,Xg=Hg,Kg=Vg,$g=zr,Zg={Deflate:Gg,deflate:Wg,deflateRaw:Xg,gzip:Kg,constants:$g},Ds=16209,Yg=16191,qg=function(t,r){let n,i,o,s,a,d,l,c,h,u,f,m,g,p,x,S,_,y,b,A,v,E,L,w,T=t.state;n=t.next_in,L=t.input,i=n+(t.avail_in-5),o=t.next_out,w=t.output,s=o-(r-t.avail_out),a=o+(t.avail_out-257),d=T.dmax,l=T.wsize,c=T.whave,h=T.wnext,u=T.window,f=T.hold,m=T.bits,g=T.lencode,p=T.distcode,x=(1<<T.lenbits)-1,S=(1<<T.distbits)-1;e:do{m<15&&(f+=L[n++]<<m,m+=8,f+=L[n++]<<m,m+=8),_=g[f&x];t:for(;;){if(y=_>>>24,f>>>=y,m-=y,y=_>>>16&255,y===0)w[o++]=_&65535;else if(y&16){b=_&65535,y&=15,y&&(m<y&&(f+=L[n++]<<m,m+=8),b+=f&(1<<y)-1,f>>>=y,m-=y),m<15&&(f+=L[n++]<<m,m+=8,f+=L[n++]<<m,m+=8),_=p[f&S];r:for(;;){if(y=_>>>24,f>>>=y,m-=y,y=_>>>16&255,y&16){if(A=_&65535,y&=15,m<y&&(f+=L[n++]<<m,m+=8,m<y&&(f+=L[n++]<<m,m+=8)),A+=f&(1<<y)-1,A>d){t.msg="invalid distance too far back",T.mode=Ds;break e}if(f>>>=y,m-=y,y=o-s,A>y){if(y=A-y,y>c&&T.sane){t.msg="invalid distance too far back",T.mode=Ds;break e}if(v=0,E=u,h===0){if(v+=l-y,y<b){b-=y;do w[o++]=u[v++];while(--y);v=o-A,E=w}}else if(h<y){if(v+=l+h-y,y-=h,y<b){b-=y;do w[o++]=u[v++];while(--y);if(v=0,h<b){y=h,b-=y;do w[o++]=u[v++];while(--y);v=o-A,E=w}}}else if(v+=h-y,y<b){b-=y;do w[o++]=u[v++];while(--y);v=o-A,E=w}for(;b>2;)w[o++]=E[v++],w[o++]=E[v++],w[o++]=E[v++],b-=3;b&&(w[o++]=E[v++],b>1&&(w[o++]=E[v++]))}else{v=o-A;do w[o++]=w[v++],w[o++]=w[v++],w[o++]=w[v++],b-=3;while(b>2);b&&(w[o++]=w[v++],b>1&&(w[o++]=w[v++]))}}else if((y&64)===0){_=p[(_&65535)+(f&(1<<y)-1)];continue r}else{t.msg="invalid distance code",T.mode=Ds;break e}break}}else if((y&64)===0){_=g[(_&65535)+(f&(1<<y)-1)];continue t}else if(y&32){T.mode=Yg;break e}else{t.msg="invalid literal/length code",T.mode=Ds;break e}break}}while(n<i&&o<a);b=m>>3,n-=b,m-=b<<3,f&=(1<<m)-1,t.next_in=n,t.next_out=o,t.avail_in=n<i?5+(i-n):5-(n-i),t.avail_out=o<a?257+(a-o):257-(o-a),T.hold=f,T.bits=m},vn=15,L0=852,T0=592,I0=0,zl=1,C0=2,jg=new Uint16Array([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]),Qg=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),Jg=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),ey=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]),ty=(e,t,r,n,i,o,s,a)=>{let d=a.bits,l=0,c=0,h=0,u=0,f=0,m=0,g=0,p=0,x=0,S=0,_,y,b,A,v,E=null,L,w=new Uint16Array(vn+1),T=new Uint16Array(vn+1),R=null,U,z,$;for(l=0;l<=vn;l++)w[l]=0;for(c=0;c<n;c++)w[t[r+c]]++;for(f=d,u=vn;u>=1&&w[u]===0;u--);if(f>u&&(f=u),u===0)return i[o++]=1<<24|64<<16|0,i[o++]=1<<24|64<<16|0,a.bits=1,0;for(h=1;h<u&&w[h]===0;h++);for(f<h&&(f=h),p=1,l=1;l<=vn;l++)if(p<<=1,p-=w[l],p<0)return-1;if(p>0&&(e===I0||u!==1))return-1;for(T[1]=0,l=1;l<vn;l++)T[l+1]=T[l]+w[l];for(c=0;c<n;c++)t[r+c]!==0&&(s[T[t[r+c]]++]=c);if(e===I0?(E=R=s,L=20):e===zl?(E=jg,R=Qg,L=257):(E=Jg,R=ey,L=0),S=0,c=0,l=h,v=o,m=f,g=0,b=-1,x=1<<f,A=x-1,e===zl&&x>L0||e===C0&&x>T0)return 1;for(;;){U=l-g,s[c]+1<L?(z=0,$=s[c]):s[c]>=L?(z=R[s[c]-L],$=E[s[c]-L]):(z=96,$=0),_=1<<l-g,y=1<<m,h=y;do y-=_,i[v+(S>>g)+y]=U<<24|z<<16|$|0;while(y!==0);for(_=1<<l-1;S&_;)_>>=1;if(_!==0?(S&=_-1,S+=_):S=0,c++,--w[l]===0){if(l===u)break;l=t[r+s[c]]}if(l>f&&(S&A)!==b){for(g===0&&(g=f),v+=h,m=l-g,p=1<<m;m+g<u&&(p-=w[m+g],!(p<=0));)m++,p<<=1;if(x+=1<<m,e===zl&&x>L0||e===C0&&x>T0)return 1;b=S&A,i[b]=f<<24|m<<16|v-o|0}}return S!==0&&(i[v+S]=l-g<<24|64<<16|0),a.bits=f,0},Gi=ty,ry=0,Eu=1,Lu=2,{Z_FINISH:z0,Z_BLOCK:ny,Z_TREES:Ps,Z_OK:Cr,Z_STREAM_END:iy,Z_NEED_DICT:oy,Z_STREAM_ERROR:je,Z_DATA_ERROR:Tu,Z_MEM_ERROR:Iu,Z_BUF_ERROR:sy,Z_DEFLATED:R0}=zr,Xs=16180,k0=16181,F0=16182,D0=16183,P0=16184,O0=16185,B0=16186,N0=16187,U0=16188,H0=16189,Vs=16190,Tt=16191,Rl=16192,V0=16193,kl=16194,G0=16195,W0=16196,X0=16197,K0=16198,Os=16199,Bs=16200,$0=16201,Z0=16202,Y0=16203,q0=16204,j0=16205,Fl=16206,Q0=16207,J0=16208,ne=16209,Cu=16210,zu=16211,ay=852,ly=592,cy=15,dy=cy,eu=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24);function uy(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}var Rr=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.mode<Xs||t.mode>zu?1:0},Ru=e=>{if(Rr(e))return je;let t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=Xs,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(ay),t.distcode=t.distdyn=new Int32Array(ly),t.sane=1,t.back=-1,Cr},ku=e=>{if(Rr(e))return je;let t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,Ru(e)},Fu=(e,t)=>{let r;if(Rr(e))return je;let n=e.state;return t<0?(r=0,t=-t):(r=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?je:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,ku(e))},Du=(e,t)=>{if(!e)return je;let r=new uy;e.state=r,r.strm=e,r.window=null,r.mode=Xs;let n=Fu(e,t);return n!==Cr&&(e.state=null),n},fy=e=>Du(e,dy),tu=!0,Dl,Pl,hy=e=>{if(tu){Dl=new Int32Array(512),Pl=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(Gi(Eu,e.lens,0,288,Dl,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;Gi(Lu,e.lens,0,32,Pl,0,e.work,{bits:5}),tu=!1}e.lencode=Dl,e.lenbits=9,e.distcode=Pl,e.distbits=5},Pu=(e,t,r,n)=>{let i,o=e.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new Uint8Array(o.wsize)),n>=o.wsize?(o.window.set(t.subarray(r-o.wsize,r),0),o.wnext=0,o.whave=o.wsize):(i=o.wsize-o.wnext,i>n&&(i=n),o.window.set(t.subarray(r-n,r-n+i),o.wnext),n-=i,n?(o.window.set(t.subarray(r-n,r),0),o.wnext=n,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=i))),0},my=(e,t)=>{let r,n,i,o,s,a,d,l,c,h,u,f,m,g,p=0,x,S,_,y,b,A,v,E,L=new Uint8Array(4),w,T,R=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Rr(e)||!e.output||!e.input&&e.avail_in!==0)return je;r=e.state,r.mode===Tt&&(r.mode=Rl),s=e.next_out,i=e.output,d=e.avail_out,o=e.next_in,n=e.input,a=e.avail_in,l=r.hold,c=r.bits,h=a,u=d,E=Cr;e:for(;;)switch(r.mode){case Xs:if(r.wrap===0){r.mode=Rl;break}for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.wrap&2&&l===35615){r.wbits===0&&(r.wbits=15),r.check=0,L[0]=l&255,L[1]=l>>>8&255,r.check=fe(r.check,L,2,0),l=0,c=0,r.mode=k0;break}if(r.head&&(r.head.done=!1),!(r.wrap&1)||(((l&255)<<8)+(l>>8))%31){e.msg="incorrect header check",r.mode=ne;break}if((l&15)!==R0){e.msg="unknown compression method",r.mode=ne;break}if(l>>>=4,c-=4,v=(l&15)+8,r.wbits===0&&(r.wbits=v),v>15||v>r.wbits){e.msg="invalid window size",r.mode=ne;break}r.dmax=1<<r.wbits,r.flags=0,e.adler=r.check=1,r.mode=l&512?H0:Tt,l=0,c=0;break;case k0:for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.flags=l,(r.flags&255)!==R0){e.msg="unknown compression method",r.mode=ne;break}if(r.flags&57344){e.msg="unknown header flags set",r.mode=ne;break}r.head&&(r.head.text=l>>8&1),r.flags&512&&r.wrap&4&&(L[0]=l&255,L[1]=l>>>8&255,r.check=fe(r.check,L,2,0)),l=0,c=0,r.mode=F0;case F0:for(;c<32;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.head&&(r.head.time=l),r.flags&512&&r.wrap&4&&(L[0]=l&255,L[1]=l>>>8&255,L[2]=l>>>16&255,L[3]=l>>>24&255,r.check=fe(r.check,L,4,0)),l=0,c=0,r.mode=D0;case D0:for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.head&&(r.head.xflags=l&255,r.head.os=l>>8),r.flags&512&&r.wrap&4&&(L[0]=l&255,L[1]=l>>>8&255,r.check=fe(r.check,L,2,0)),l=0,c=0,r.mode=P0;case P0:if(r.flags&1024){for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.length=l,r.head&&(r.head.extra_len=l),r.flags&512&&r.wrap&4&&(L[0]=l&255,L[1]=l>>>8&255,r.check=fe(r.check,L,2,0)),l=0,c=0}else r.head&&(r.head.extra=null);r.mode=O0;case O0:if(r.flags&1024&&(f=r.length,f>a&&(f=a),f&&(r.head&&(v=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(o,o+f),v)),r.flags&512&&r.wrap&4&&(r.check=fe(r.check,n,f,o)),a-=f,o+=f,r.length-=f),r.length))break e;r.length=0,r.mode=B0;case B0:if(r.flags&2048){if(a===0)break e;f=0;do v=n[o+f++],r.head&&v&&r.length<65536&&(r.head.name+=String.fromCharCode(v));while(v&&f<a);if(r.flags&512&&r.wrap&4&&(r.check=fe(r.check,n,f,o)),a-=f,o+=f,v)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=N0;case N0:if(r.flags&4096){if(a===0)break e;f=0;do v=n[o+f++],r.head&&v&&r.length<65536&&(r.head.comment+=String.fromCharCode(v));while(v&&f<a);if(r.flags&512&&r.wrap&4&&(r.check=fe(r.check,n,f,o)),a-=f,o+=f,v)break e}else r.head&&(r.head.comment=null);r.mode=U0;case U0:if(r.flags&512){for(;c<16;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.wrap&4&&l!==(r.check&65535)){e.msg="header crc mismatch",r.mode=ne;break}l=0,c=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Tt;break;case H0:for(;c<32;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}e.adler=r.check=eu(l),l=0,c=0,r.mode=Vs;case Vs:if(r.havedict===0)return e.next_out=s,e.avail_out=d,e.next_in=o,e.avail_in=a,r.hold=l,r.bits=c,oy;e.adler=r.check=1,r.mode=Tt;case Tt:if(t===ny||t===Ps)break e;case Rl:if(r.last){l>>>=c&7,c-=c&7,r.mode=Fl;break}for(;c<3;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}switch(r.last=l&1,l>>>=1,c-=1,l&3){case 0:r.mode=V0;break;case 1:if(hy(r),r.mode=Os,t===Ps){l>>>=2,c-=2;break e}break;case 2:r.mode=W0;break;case 3:e.msg="invalid block type",r.mode=ne}l>>>=2,c-=2;break;case V0:for(l>>>=c&7,c-=c&7;c<32;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if((l&65535)!==(l>>>16^65535)){e.msg="invalid stored block lengths",r.mode=ne;break}if(r.length=l&65535,l=0,c=0,r.mode=kl,t===Ps)break e;case kl:r.mode=G0;case G0:if(f=r.length,f){if(f>a&&(f=a),f>d&&(f=d),f===0)break e;i.set(n.subarray(o,o+f),s),a-=f,o+=f,d-=f,s+=f,r.length-=f;break}r.mode=Tt;break;case W0:for(;c<14;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.nlen=(l&31)+257,l>>>=5,c-=5,r.ndist=(l&31)+1,l>>>=5,c-=5,r.ncode=(l&15)+4,l>>>=4,c-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=ne;break}r.have=0,r.mode=X0;case X0:for(;r.have<r.ncode;){for(;c<3;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.lens[R[r.have++]]=l&7,l>>>=3,c-=3}for(;r.have<19;)r.lens[R[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,w={bits:r.lenbits},E=Gi(ry,r.lens,0,19,r.lencode,0,r.work,w),r.lenbits=w.bits,E){e.msg="invalid code lengths set",r.mode=ne;break}r.have=0,r.mode=K0;case K0:for(;r.have<r.nlen+r.ndist;){for(;p=r.lencode[l&(1<<r.lenbits)-1],x=p>>>24,S=p>>>16&255,_=p&65535,!(x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(_<16)l>>>=x,c-=x,r.lens[r.have++]=_;else{if(_===16){for(T=x+2;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(l>>>=x,c-=x,r.have===0){e.msg="invalid bit length repeat",r.mode=ne;break}v=r.lens[r.have-1],f=3+(l&3),l>>>=2,c-=2}else if(_===17){for(T=x+3;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}l>>>=x,c-=x,v=0,f=3+(l&7),l>>>=3,c-=3}else{for(T=x+7;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}l>>>=x,c-=x,v=0,f=11+(l&127),l>>>=7,c-=7}if(r.have+f>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=ne;break}for(;f--;)r.lens[r.have++]=v}}if(r.mode===ne)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=ne;break}if(r.lenbits=9,w={bits:r.lenbits},E=Gi(Eu,r.lens,0,r.nlen,r.lencode,0,r.work,w),r.lenbits=w.bits,E){e.msg="invalid literal/lengths set",r.mode=ne;break}if(r.distbits=6,r.distcode=r.distdyn,w={bits:r.distbits},E=Gi(Lu,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,w),r.distbits=w.bits,E){e.msg="invalid distances set",r.mode=ne;break}if(r.mode=Os,t===Ps)break e;case Os:r.mode=Bs;case Bs:if(a>=6&&d>=258){e.next_out=s,e.avail_out=d,e.next_in=o,e.avail_in=a,r.hold=l,r.bits=c,qg(e,u),s=e.next_out,i=e.output,d=e.avail_out,o=e.next_in,n=e.input,a=e.avail_in,l=r.hold,c=r.bits,r.mode===Tt&&(r.back=-1);break}for(r.back=0;p=r.lencode[l&(1<<r.lenbits)-1],x=p>>>24,S=p>>>16&255,_=p&65535,!(x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(S&&(S&240)===0){for(y=x,b=S,A=_;p=r.lencode[A+((l&(1<<y+b)-1)>>y)],x=p>>>24,S=p>>>16&255,_=p&65535,!(y+x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}l>>>=y,c-=y,r.back+=y}if(l>>>=x,c-=x,r.back+=x,r.length=_,S===0){r.mode=j0;break}if(S&32){r.back=-1,r.mode=Tt;break}if(S&64){e.msg="invalid literal/length code",r.mode=ne;break}r.extra=S&15,r.mode=$0;case $0:if(r.extra){for(T=r.extra;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.length+=l&(1<<r.extra)-1,l>>>=r.extra,c-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=Z0;case Z0:for(;p=r.distcode[l&(1<<r.distbits)-1],x=p>>>24,S=p>>>16&255,_=p&65535,!(x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if((S&240)===0){for(y=x,b=S,A=_;p=r.distcode[A+((l&(1<<y+b)-1)>>y)],x=p>>>24,S=p>>>16&255,_=p&65535,!(y+x<=c);){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}l>>>=y,c-=y,r.back+=y}if(l>>>=x,c-=x,r.back+=x,S&64){e.msg="invalid distance code",r.mode=ne;break}r.offset=_,r.extra=S&15,r.mode=Y0;case Y0:if(r.extra){for(T=r.extra;c<T;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}r.offset+=l&(1<<r.extra)-1,l>>>=r.extra,c-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=ne;break}r.mode=q0;case q0:if(d===0)break e;if(f=u-d,r.offset>f){if(f=r.offset-f,f>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=ne;break}f>r.wnext?(f-=r.wnext,m=r.wsize-f):m=r.wnext-f,f>r.length&&(f=r.length),g=r.window}else g=i,m=s-r.offset,f=r.length;f>d&&(f=d),d-=f,r.length-=f;do i[s++]=g[m++];while(--f);r.length===0&&(r.mode=Bs);break;case j0:if(d===0)break e;i[s++]=r.length,d--,r.mode=Bs;break;case Fl:if(r.wrap){for(;c<32;){if(a===0)break e;a--,l|=n[o++]<<c,c+=8}if(u-=d,e.total_out+=u,r.total+=u,r.wrap&4&&u&&(e.adler=r.check=r.flags?fe(r.check,i,u,s-u):Zi(r.check,i,u,s-u)),u=d,r.wrap&4&&(r.flags?l:eu(l))!==r.check){e.msg="incorrect data check",r.mode=ne;break}l=0,c=0}r.mode=Q0;case Q0:if(r.wrap&&r.flags){for(;c<32;){if(a===0)break e;a--,l+=n[o++]<<c,c+=8}if(r.wrap&4&&l!==(r.total&4294967295)){e.msg="incorrect length check",r.mode=ne;break}l=0,c=0}r.mode=J0;case J0:E=iy;break e;case ne:E=Tu;break e;case Cu:return Iu;case zu:default:return je}return e.next_out=s,e.avail_out=d,e.next_in=o,e.avail_in=a,r.hold=l,r.bits=c,(r.wsize||u!==e.avail_out&&r.mode<ne&&(r.mode<Fl||t!==z0))&&Pu(e,e.output,e.next_out,u-e.avail_out),h-=e.avail_in,u-=e.avail_out,e.total_in+=h,e.total_out+=u,r.total+=u,r.wrap&4&&u&&(e.adler=r.check=r.flags?fe(r.check,i,u,e.next_out-u):Zi(r.check,i,u,e.next_out-u)),e.data_type=r.bits+(r.last?64:0)+(r.mode===Tt?128:0)+(r.mode===Os||r.mode===kl?256:0),(h===0&&u===0||t===z0)&&E===Cr&&(E=sy),E},py=e=>{if(Rr(e))return je;let t=e.state;return t.window&&(t.window=null),e.state=null,Cr},gy=(e,t)=>{if(Rr(e))return je;let r=e.state;return(r.wrap&2)===0?je:(r.head=t,t.done=!1,Cr)},yy=(e,t)=>{let r=t.length,n,i,o;return Rr(e)||(n=e.state,n.wrap!==0&&n.mode!==Vs)?je:n.mode===Vs&&(i=1,i=Zi(i,t,r,0),i!==n.check)?Tu:(o=Pu(e,t,r,r),o?(n.mode=Cu,Iu):(n.havedict=1,Cr))},xy=ku,_y=Fu,by=Ru,vy=fy,Sy=Du,wy=my,Ay=py,My=gy,Ey=yy,Ly="pako inflate (from Nodeca project)",Ct={inflateReset:xy,inflateReset2:_y,inflateResetKeep:by,inflateInit:vy,inflateInit2:Sy,inflate:wy,inflateEnd:Ay,inflateGetHeader:My,inflateSetDictionary:Ey,inflateInfo:Ly};function Ty(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var Iy=Ty,Ou=Object.prototype.toString,{Z_NO_FLUSH:Cy,Z_FINISH:zy,Z_OK:ji,Z_STREAM_END:Ol,Z_NEED_DICT:Bl,Z_STREAM_ERROR:Ry,Z_DATA_ERROR:ru,Z_MEM_ERROR:ky}=zr;function to(e){this.options=Ws.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});let t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15)===0&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Au,this.strm.avail_out=0;let r=Ct.inflateInit2(this.strm,t.windowBits);if(r!==ji)throw new Error(Tr[r]);if(this.header=new Iy,Ct.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=qi.string2buf(t.dictionary):Ou.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=Ct.inflateSetDictionary(this.strm,t.dictionary),r!==ji)))throw new Error(Tr[r])}to.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,i=this.options.dictionary,o,s,a;if(this.ended)return!1;for(t===~~t?s=t:s=t===!0?zy:Cy,Ou.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){for(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),o=Ct.inflate(r,s),o===Bl&&i&&(o=Ct.inflateSetDictionary(r,i),o===ji?o=Ct.inflate(r,s):o===ru&&(o=Bl));r.avail_in>0&&o===Ol&&r.state.wrap>0&&e[r.next_in]!==0;)Ct.inflateReset(r),o=Ct.inflate(r,s);switch(o){case Ry:case ru:case Bl:case ky:return this.onEnd(o),this.ended=!0,!1}if(a=r.avail_out,r.next_out&&(r.avail_out===0||o===Ol))if(this.options.to==="string"){let d=qi.utf8border(r.output,r.next_out),l=r.next_out-d,c=qi.buf2string(r.output,d);r.next_out=l,r.avail_out=n-l,l&&r.output.set(r.output.subarray(d,d+l),0),this.onData(c)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(!(o===ji&&a===0)){if(o===Ol)return o=Ct.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,!0;if(r.avail_in===0)break}}return!0};to.prototype.onData=function(e){this.chunks.push(e)};to.prototype.onEnd=function(e){e===ji&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Ws.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function ec(e,t){let r=new to(t);if(r.push(e),r.err)throw r.msg||Tr[r.err];return r.result}function Fy(e,t){return t=t||{},t.raw=!0,ec(e,t)}var Dy=to,Py=ec,Oy=Fy,By=ec,Ny=zr,Uy={Inflate:Dy,inflate:Py,inflateRaw:Oy,ungzip:By,constants:Ny},{Deflate:Hy,deflate:Vy,deflateRaw:Gy,gzip:Wy}=Zg,{Inflate:Xy,inflate:Ky,inflateRaw:$y,ungzip:Zy}=Uy,Yy=Hy,qy=Vy,jy=Gy,Qy=Wy,Jy=Xy,ex=Ky,tx=$y,rx=Zy,nx=zr,tc={Deflate:Yy,deflate:qy,deflateRaw:jy,gzip:Qy,Inflate:Jy,inflate:ex,inflateRaw:tx,ungzip:rx,constants:nx};var Ks=2023,Zs=1,Ys=2,qs=4,js=8,Qs=16,Js=32,rc=64,ix=128,ox=256,ea=512,ta=1024,ra=2048,ro=4096,nc=8192,no=16384,sx=32768,io=65536,na=1<<17,oo=1<<18,so=1<<19,ia=1<<20,oa=1<<21,sa=1<<22,ax=1<<23,aa=1<<24,ao=1<<25,la=1<<26,ca=1<<27,ic=1<<28,oc=1<<29,sc=1<<30,lx=-2147483648,ac=1,lc=2,cc=4;var cx=1,dx=2,ux=128,kr=()=>({number:0,modelindex:0,modelindex2:0,modelindex3:0,modelindex4:0,frame:0,skinnum:0,effects:0,renderfx:0,origin:{x:0,y:0,z:0},old_origin:{x:0,y:0,z:0},angles:{x:0,y:0,z:0},sound:0,event:0,solid:0,bits:0,bitsHigh:0,alpha:0,scale:0,instanceBits:0,loopVolume:0,loopAttenuation:0,owner:0,oldFrame:0}),$s=()=>({pm_type:0,origin:{x:0,y:0,z:0},velocity:{x:0,y:0,z:0},pm_time:0,pm_flags:0,gravity:0,delta_angles:{x:0,y:0,z:0},viewoffset:{x:0,y:0,z:0},viewangles:{x:0,y:0,z:0},kick_angles:{x:0,y:0,z:0},gun_index:0,gun_frame:0,gun_offset:{x:0,y:0,z:0},gun_angles:{x:0,y:0,z:0},blend:[0,0,0,0],fov:0,rdflags:0,stats:new Array(32).fill(0),gunskin:0,gunrate:0,damage_blend:[0,0,0,0],team_id:0}),Fr=class e{constructor(t,r){this.protocolVersion=0;this.isDemo=cx;this.stream=t,this.handler=r}setProtocolVersion(t){this.protocolVersion=t}getProtocolVersion(){return this.protocolVersion}translateCommand(t){if(this.protocolVersion===0){if(t===7)return D.serverdata;if(t===12)return D.serverdata}return this.protocolVersion===Ks?t:this.protocolVersion===34||this.protocolVersion===25?t<=D.frame?t:D.bad:(this.protocolVersion===0,t)}parseMessage(){for(;this.stream.hasMore();){let t=this.stream.readByte();if(t===-1)break;let r=t;t=this.translateCommand(t);try{switch(t){case D.bad:return;case D.nop:break;case D.disconnect:this.handler&&this.handler.onDisconnect&&this.handler.onDisconnect();break;case D.reconnect:this.handler&&this.handler.onReconnect&&this.handler.onReconnect();break;case D.print:this.parsePrint();break;case D.serverdata:this.parseServerData();break;case D.configstring:this.parseConfigString();break;case D.spawnbaseline:this.parseSpawnBaseline();break;case D.centerprint:this.parseCenterPrint();break;case D.download:this.parseDownload();break;case D.frame:this.parseFrame();break;case D.packetentities:this.parsePacketEntities(!1);break;case D.deltapacketentities:this.parsePacketEntities(!0);break;case D.playerinfo:this.parsePlayerState();break;case D.stufftext:this.parseStuffText();break;case D.layout:this.parseLayout();break;case D.inventory:this.parseInventory();break;case D.sound:this.parseSound();break;case D.muzzleflash:this.parseMuzzleFlash();break;case D.muzzleflash2:this.parseMuzzleFlash2();break;case D.temp_entity:this.parseTempEntity();break;case D.splitclient:this.parseSplitClient();break;case D.configblast:this.parseConfigBlast();break;case D.spawnbaselineblast:this.parseSpawnBaselineBlast();break;case D.level_restart:this.handler&&this.handler.onLevelRestart&&this.handler.onLevelRestart();break;case D.damage:this.parseDamage();break;case D.locprint:this.parseLocPrint();break;case D.fog:this.parseFog();break;case D.waitingforplayers:this.parseWaitingForPlayers();break;case D.bot_chat:this.parseBotChat();break;case D.poi:this.parsePoi();break;case D.help_path:this.parseHelpPath();break;case D.muzzleflash3:this.parseMuzzleFlash3();break;case D.achievement:this.parseAchievement();break;default:console.warn(`Unknown server command: ${r} (translated: ${t}) at offset ${this.stream.getPosition()-1}`);return}}catch(n){console.warn(`Error parsing command ${t}: ${n.message}`);return}}}parsePrint(){let t=this.stream.readByte(),r=this.stream.readString();this.handler&&this.handler.onPrint(t,r)}parseStuffText(){let t=this.stream.readString();this.handler&&this.handler.onStuffText(t)}parseLayout(){let t=this.stream.readString();this.handler&&this.handler.onLayout(t)}parseCenterPrint(){let t=this.stream.readString();this.handler&&this.handler.onCenterPrint(t)}parseServerData(){if(this.protocolVersion=this.stream.readLong(),this.protocolVersion===Ks){let t=this.stream.readLong(),r=this.stream.readByte();this.isDemo=r;let n=this.stream.readByte(),i=this.stream.readString(),o=this.stream.readShort();if(o===-2){let a=this.stream.readShort();for(let d=0;d<a;d++)this.stream.readShort();o=0}else o===-1&&(o=-1);let s=this.stream.readString();this.handler?this.handler.onServerData(this.protocolVersion,t,0,i,o,s,n,r):console.log(`Server Data (Rerelease): Protocol ${this.protocolVersion}, Level ${s}, Tick ${n}`)}else{let t=this.stream.readLong();this.isDemo=this.stream.readByte();let r=0,n=this.stream.readString(),i=this.stream.readShort(),o=this.stream.readString();this.handler?this.handler.onServerData(this.protocolVersion,t,r,n,i,o):console.log(`Server Data: Protocol ${this.protocolVersion}, Level ${o}, GameDir ${n}`)}}parseConfigString(){let t=this.stream.readShort(),r=this.stream.readString();this.handler&&this.handler.onConfigString(t,r)}parseSplitClient(){let t=this.stream.readByte();this.handler&&this.handler.onSplitClient&&this.handler.onSplitClient(t)}parseConfigBlast(){let t=this.stream.readShort(),r=this.stream.readShort(),n=this.stream.readData(t);try{let i=tc.inflate(n);i.byteLength!==r&&console.warn(`svc_configblast: Decompressed size mismatch. Expected ${r}, got ${i.byteLength}`);let o=new kn(i.buffer);for(;o.hasMore();){let s=o.readUShort(),a=o.readString();this.handler&&this.handler.onConfigString(s,a)}}catch(i){console.error("svc_configblast: Failed to decompress data",i)}}parseSpawnBaselineBlast(){let t=this.stream.readShort(),r=this.stream.readShort(),n=this.stream.readData(t);try{let i=tc.inflate(n);i.byteLength!==r&&console.warn(`svc_spawnbaselineblast: Decompressed size mismatch. Expected ${r}, got ${i.byteLength}`);let o=new kn(i.buffer),s=new e(o,this.handler);for(;o.hasMore();)s.parseSpawnBaseline()}catch(i){console.error("svc_spawnbaselineblast: Failed to decompress data",i)}}parseLocPrint(){let t=this.stream.readByte(),r=this.stream.readString(),n=this.stream.readByte(),i=[];for(let o=0;o<n;o++)i.push(this.stream.readString());this.handler&&this.handler.onLocPrint&&this.handler.onLocPrint(t,r,i)}parseWaitingForPlayers(){let t=this.stream.readByte();this.handler&&this.handler.onWaitingForPlayers&&this.handler.onWaitingForPlayers(t)}parseBotChat(){let t=this.stream.readString(),r=this.stream.readShort(),n=this.stream.readString();this.handler&&this.handler.onBotChat&&this.handler.onBotChat(n)}parsePoi(){let t=this.stream.readUShort(),r=this.stream.readUShort(),n={x:0,y:0,z:0};this.stream.readPos(n);let i=this.stream.readUShort(),o=this.stream.readByte(),s=this.stream.readByte();this.handler&&this.handler.onPoi&&this.handler.onPoi(s,n)}parseHelpPath(){let t=this.stream.readByte(),r={x:0,y:0,z:0};this.stream.readPos(r);let n={x:0,y:0,z:0};this.stream.readDir(n),this.handler&&this.handler.onHelpPath&&this.handler.onHelpPath(r)}parseAchievement(){let t=this.stream.readString();this.handler&&this.handler.onAchievement&&this.handler.onAchievement(t)}parseDownload(){let t=this.stream.readShort(),r=this.stream.readByte(),n;t>0&&(n=this.stream.readData(t)),this.handler&&this.handler.onDownload(t,r,n)}parseInventory(){let r=new Array(256);for(let n=0;n<256;n++)r[n]=this.stream.readShort();this.handler&&this.handler.onInventory(r)}parseSound(){let t=this.stream.readByte(),r=this.stream.readByte(),n,i,o,s,a;if(t&1&&(n=this.stream.readByte()),t&2&&(i=this.stream.readByte()),t&16&&(o=this.stream.readByte()),t&8&&(s=this.stream.readShort()),t&4){let d={x:0,y:0,z:0};this.stream.readPos(d),a=d}this.handler&&this.handler.onSound(t,r,n,i,o,s,a)}parseMuzzleFlash(){let t=this.stream.readShort(),r=this.stream.readByte();this.handler&&this.handler.onMuzzleFlash(t,r)}parseMuzzleFlash2(){let t=this.stream.readShort(),r=this.stream.readByte();this.handler&&this.handler.onMuzzleFlash2(t,r)}parseMuzzleFlash3(){let t=this.stream.readShort(),r=this.stream.readShort();this.handler&&this.handler.onMuzzleFlash3&&this.handler.onMuzzleFlash3(t,r)}parseFog(){let t=this.stream.readByte();if(t&128){let n=this.stream.readByte();t|=n<<8}let r={};t&1&&(r.density=this.stream.readFloat(),r.skyfactor=this.stream.readByte()),t&2&&(r.red=this.stream.readByte()),t&4&&(r.green=this.stream.readByte()),t&8&&(r.blue=this.stream.readByte()),t&16&&(r.time=this.stream.readShort()),t&32&&(r.hf_falloff=this.stream.readFloat()),t&64&&(r.hf_density=this.stream.readFloat()),t&256&&(r.hf_start_r=this.stream.readByte()),t&512&&(r.hf_start_g=this.stream.readByte()),t&1024&&(r.hf_start_b=this.stream.readByte()),t&2048&&(r.hf_start_dist=this.stream.readLong()),t&4096&&(r.hf_end_r=this.stream.readByte()),t&8192&&(r.hf_end_g=this.stream.readByte()),t&16384&&(r.hf_end_b=this.stream.readByte()),t&32768&&(r.hf_end_dist=this.stream.readLong()),this.handler&&this.handler.onFog&&this.handler.onFog(r)}parseDamage(){let t=this.stream.readByte(),r=[];for(let n=0;n<t;n++){let i=this.stream.readByte(),o={x:0,y:0,z:0};this.stream.readDir(o);let s=i&31,a=(i&32)!==0,d=(i&64)!==0,l=(i&128)!==0;r.push({damage:s,health:a,armor:d,power:l,dir:o})}this.handler&&this.handler.onDamage&&this.handler.onDamage(r)}parseTempEntity(){let t=this.stream.readByte(),r={x:0,y:0,z:0},n={x:0,y:0,z:0},i={x:0,y:0,z:0},o,s,a,d,l;switch(t){case I.EXPLOSION1:case I.EXPLOSION2:case I.ROCKET_EXPLOSION:case I.GRENADE_EXPLOSION:case I.ROCKET_EXPLOSION_WATER:case I.GRENADE_EXPLOSION_WATER:case I.BFG_EXPLOSION:case I.BFG_BIGEXPLOSION:case I.BOSSTPORT:case I.PLASMA_EXPLOSION:case I.PLAIN_EXPLOSION:case I.CHAINFIST_SMOKE:case I.TRACKER_EXPLOSION:case I.TELEPORT_EFFECT:case I.DBALL_GOAL:case I.NUKEBLAST:case I.WIDOWSPLASH:case I.EXPLOSION1_BIG:case I.EXPLOSION1_NP:this.stream.readPos(r);break;case I.GUNSHOT:case I.BLOOD:case I.BLASTER:case I.SHOTGUN:case I.SPARKS:case I.BULLET_SPARKS:case I.SCREEN_SPARKS:case I.SHIELD_SPARKS:case I.BLASTER2:case I.FLECHETTE:case I.MOREBLOOD:case I.ELECTRIC_SPARKS:case I.HEATBEAM_SPARKS:case I.HEATBEAM_STEAM:this.stream.readPos(r),this.stream.readDir(i);break;case I.SPLASH:case I.LASER_SPARKS:case I.WELDING_SPARKS:case I.TUNNEL_SPARKS:o=this.stream.readByte(),this.stream.readPos(r),this.stream.readDir(i),s=this.stream.readByte();break;case I.BLUEHYPERBLASTER:this.protocolVersion>=32?(this.stream.readPos(r),this.stream.readPos(n)):(this.stream.readPos(r),this.stream.readDir(i));break;case I.GREENBLOOD:this.protocolVersion>=32?(this.stream.readPos(r),this.stream.readDir(i)):(this.stream.readPos(r),this.stream.readPos(n));break;case I.RAILTRAIL:case I.BUBBLETRAIL:case I.BFG_LASER:case I.DEBUGTRAIL:case I.BUBBLETRAIL2:this.stream.readPos(r),this.stream.readPos(n);break;case I.PARASITE_ATTACK:case I.MEDIC_CABLE_ATTACK:this.stream.readShort(),this.stream.readPos(r),this.stream.readPos(n);break;case I.GRAPPLE_CABLE:a=this.stream.readShort(),this.stream.readPos(r),this.stream.readPos(n),this.stream.readPos(i);break;case I.LIGHTNING:d=this.stream.readShort(),l=this.stream.readShort(),this.stream.readPos(r),this.stream.readPos(n);break;case I.FLASHLIGHT:this.stream.readPos(r),a=this.stream.readShort();break;case I.FORCEWALL:this.stream.readPos(r),this.stream.readPos(n),s=this.stream.readByte();break;case I.STEAM:let c=this.stream.readShort();o=this.stream.readByte(),this.stream.readPos(r),this.stream.readDir(i),s=this.stream.readByte(),this.stream.readShort(),c!==-1&&this.stream.readLong();break;case I.WIDOWBEAMOUT:this.stream.readShort();case I.HEATBEAM:case I.MONSTER_HEATBEAM:a=this.stream.readShort(),this.stream.readPos(r),this.stream.readPos(n),this.stream.readPos(i);break;default:break}this.handler&&this.handler.onTempEntity(t,r,n,i,o,s,a,d,l)}parseSpawnBaseline(){let t=this.parseEntityBits(),r=kr();this.parseDelta(kr(),r,t.number,t.bits,t.bitsHigh),this.handler&&this.handler.onSpawnBaseline(r)}parseFrame(){let t=this.stream.readLong(),r=this.stream.readLong(),n=this.stream.readByte(),i=this.stream.readByte(),o=this.stream.readData(i),s=this.stream.readByte();if(s=this.translateCommand(s),s!==D.playerinfo)throw new Error(`Expected svc_playerinfo after svc_frame, got ${s} (translated)`);let a=this.parsePlayerState();if(this.isDemo===ux){let d=this.stream.readByte();for(let l=0;l<d;l++)this.stream.readByte()}this.isDemo===dx&&this.stream.readLong(),this.handler&&this.handler.onFrame({serverFrame:t,deltaFrame:r,surpressCount:n,areaBytes:i,areaBits:o,playerState:a,packetEntities:{delta:!1,entities:[]}})}parsePlayerState(){let t=$s(),r=this.stream.readShort();r&1&&(t.pm_type=this.stream.readByte()),r&2&&(t.origin.x=this.stream.readShort()*.125,t.origin.y=this.stream.readShort()*.125,t.origin.z=this.stream.readShort()*.125),r&4&&(t.velocity.x=this.stream.readShort()*.125,t.velocity.y=this.stream.readShort()*.125,t.velocity.z=this.stream.readShort()*.125),r&8&&(t.pm_time=this.stream.readByte()),r&16&&(t.pm_flags=this.stream.readByte()),r&32&&(t.gravity=this.stream.readShort()),r&64&&(t.delta_angles.x=this.stream.readShort()*(180/32768),t.delta_angles.y=this.stream.readShort()*(180/32768),t.delta_angles.z=this.stream.readShort()*(180/32768)),r&128&&(t.viewoffset.x=this.stream.readChar()*.25,t.viewoffset.y=this.stream.readChar()*.25,t.viewoffset.z=this.stream.readChar()*.25),r&256&&(t.viewangles.x=this.stream.readAngle16(),t.viewangles.y=this.stream.readAngle16(),t.viewangles.z=this.stream.readAngle16()),r&512&&(t.kick_angles.x=this.stream.readChar()*.25,t.kick_angles.y=this.stream.readChar()*.25,t.kick_angles.z=this.stream.readChar()*.25),r&4096&&(t.gun_index=this.stream.readByte()),r&8192&&(t.gun_frame=this.stream.readByte(),t.gun_offset.x=this.stream.readChar()*.25,t.gun_offset.y=this.stream.readChar()*.25,t.gun_offset.z=this.stream.readChar()*.25,t.gun_angles.x=this.stream.readChar()*.25,t.gun_angles.y=this.stream.readChar()*.25,t.gun_angles.z=this.stream.readChar()*.25),r&1024&&(t.blend[0]=this.stream.readByte(),t.blend[1]=this.stream.readByte(),t.blend[2]=this.stream.readByte(),t.blend[3]=this.stream.readByte()),r&2048&&(t.fov=this.stream.readByte()),r&16384&&(t.rdflags=this.stream.readByte());let n=this.stream.readLong();for(let i=0;i<32;i++)n&1<<i&&(t.stats[i]=this.stream.readShort());return t}parsePacketEntities(t){let r=this.collectPacketEntities();this.handler&&this.handler.onFrame({serverFrame:0,deltaFrame:0,surpressCount:0,areaBytes:0,areaBits:new Uint8Array,playerState:$s(),packetEntities:{delta:t,entities:r}})}collectPacketEntities(){let t=[];for(;;){let r=this.parseEntityBits();if(r.number===0)break;let n=kr();this.parseDelta(kr(),n,r.number,r.bits,r.bitsHigh),t.push(n)}return t}parseEntityBits(){let t=this.stream.readByte();t&ix&&(t|=this.stream.readByte()<<8),t&sx&&(t|=this.stream.readByte()<<16),t&ax&&(t|=this.stream.readByte()<<24);let r=0;t&lx&&(r=this.stream.readByte());let n;return t&ox?n=this.stream.readShort():n=this.stream.readByte(),{number:n,bits:t,bitsHigh:r}}parseDelta(t,r,n,i,o=0){r.number=t.number,r.modelindex=t.modelindex,r.modelindex2=t.modelindex2,r.modelindex3=t.modelindex3,r.modelindex4=t.modelindex4,r.frame=t.frame,r.skinnum=t.skinnum,r.effects=t.effects,r.renderfx=t.renderfx,r.origin.x=t.origin.x,r.origin.y=t.origin.y,r.origin.z=t.origin.z,r.old_origin.x=t.origin.x,r.old_origin.y=t.origin.y,r.old_origin.z=t.origin.z,r.angles.x=t.angles.x,r.angles.y=t.angles.y,r.angles.z=t.angles.z,r.sound=t.sound,r.event=t.event,r.solid=t.solid,r.alpha=t.alpha,r.scale=t.scale,r.instanceBits=t.instanceBits,r.loopVolume=t.loopVolume,r.loopAttenuation=t.loopAttenuation,r.owner=t.owner,r.oldFrame=t.oldFrame,r.number=n,r.bits=i,r.bitsHigh=o,i&ra&&(r.modelindex=this.stream.readByte()),i&ia&&(r.modelindex2=this.stream.readByte()),i&oa&&(r.modelindex3=this.stream.readByte()),i&sa&&(r.modelindex4=this.stream.readByte()),i&Qs&&(r.frame=this.stream.readByte()),i&na&&(r.frame=this.stream.readShort()),i&io&&i&ao?r.skinnum=this.stream.readLong():i&io?r.skinnum=this.stream.readByte():i&ao&&(r.skinnum=this.stream.readShort()),i&no&&i&so?r.effects=this.stream.readLong():i&no?r.effects=this.stream.readByte():i&so&&(r.effects=this.stream.readShort()),i&ro&&i&oo?r.renderfx=this.stream.readLong():i&ro?r.renderfx=this.stream.readByte():i&oo&&(r.renderfx=this.stream.readShort()),i&Zs&&(r.origin.x=this.stream.readCoord()),i&Ys&&(r.origin.y=this.stream.readCoord()),i&ea&&(r.origin.z=this.stream.readCoord()),i&ta&&(r.angles.x=this.stream.readAngle()),i&qs&&(r.angles.y=this.stream.readAngle()),i&js&&(r.angles.z=this.stream.readAngle()),i&aa&&this.stream.readPos(r.old_origin),i&la&&(r.sound=this.stream.readByte()),i&Js?r.event=this.stream.readByte():r.event=0,i&ca&&(r.solid=this.stream.readShort()),i&nc&&(r.alpha=this.stream.readByte()/255),i&ic&&(r.scale=this.stream.readFloat()),i&oc&&(r.instanceBits=this.stream.readLong()),i&sc&&(r.loopVolume=this.stream.readByte()/255),o&ac&&(r.loopAttenuation=this.stream.readByte()/255),o&lc&&(r.owner=this.stream.readShort()),o&cc&&(r.oldFrame=this.stream.readShort())}};var da=(i=>(i[i.Stopped=0]="Stopped",i[i.Playing=1]="Playing",i[i.Paused=2]="Paused",i[i.Finished=3]="Finished",i))(da||{}),lo=class{constructor(){this.reader=null;this.state=0;this.playbackSpeed=1;this.currentProtocolVersion=0;this.accumulatedTime=0;this.frameDuration=100}setHandler(t){this.handler=t}loadDemo(t){this.reader=new Ar(t),this.state=0,this.accumulatedTime=0,this.currentProtocolVersion=0}play(){this.reader&&(this.state=1)}pause(){this.state===1&&(this.state=2)}stop(){this.state=0,this.reader&&this.reader.reset(),this.accumulatedTime=0,this.currentProtocolVersion=0}setFrameDuration(t){this.frameDuration=t}update(t){if(!(this.state!==1||!this.reader))for(this.accumulatedTime+=t*1e3*this.playbackSpeed;this.accumulatedTime>=this.frameDuration;){if(!this.reader.hasMore()){this.state=3;return}let r=this.reader.readNextBlock();if(!r){this.state=3;return}let n=new Fr(r.data,this.handler);n.setProtocolVersion(this.currentProtocolVersion),n.parseMessage(),this.currentProtocolVersion=n.getProtocolVersion(),this.accumulatedTime-=this.frameDuration}}getState(){return this.state}getCurrentTime(){return this.accumulatedTime}};function fx(e){return{init(){e.trace({x:0,y:0,z:0},{x:0,y:0,z:0})},shutdown(){},createMainLoop(t,r){return new or(t,r)}}}return $u(hx);})();
|
|
481
481
|
/*! Bundled license information:
|
|
482
482
|
|
|
483
483
|
pako/dist/pako.esm.mjs:
|