@woosh/meep-engine 3.18.0 → 3.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/bundle-worker-image-decoder.js +1 -1
- package/build/bundle-worker-terrain.js +1 -1
- package/editor/view/particles/effect/ParticleCurveEditorView.d.ts.map +1 -1
- package/editor/view/particles/effect/ParticleCurveEditorView.js +303 -120
- package/editor/view/particles/effect/ParticleGradientEditorView.d.ts.map +1 -1
- package/editor/view/particles/effect/ParticleGradientEditorView.js +108 -63
- package/editor/view/particles/effect/ParticleGraphEditorView.js +2 -2
- package/editor/view/particles/effect/ParticleNodeParametersView.d.ts.map +1 -1
- package/editor/view/particles/effect/ParticleNodeParametersView.js +7 -46
- package/editor/view/particles/effect/particle-editor.css +60 -30
- package/package.json +1 -2
- package/samples/engine/README.md +1 -1
- package/src/core/binary/compression/decompress_bytes.d.ts +13 -0
- package/src/core/binary/compression/decompress_bytes.d.ts.map +1 -0
- package/src/core/binary/compression/decompress_bytes.js +28 -0
- package/src/core/collection/array/array_group_by.d.ts.map +1 -1
- package/src/core/collection/array/array_group_by.js +2 -11
- package/src/core/geom/3d/shape/HeightMapShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/HeightMapShape3D.js +4 -9
- package/src/core/model/node-graph/visual/layout/layout_assign_coordinates.js +67 -22
- package/src/core/model/object/optional_clone.d.ts +7 -0
- package/src/core/model/object/optional_clone.d.ts.map +1 -0
- package/src/core/model/object/optional_equality.d.ts +10 -0
- package/src/core/model/object/optional_equality.d.ts.map +1 -0
- package/src/{shade/descriptor/util → core/model/object}/optional_equality.js +2 -2
- package/src/core/model/object/optional_hash.d.ts +9 -0
- package/src/core/model/object/optional_hash.d.ts.map +1 -0
- package/src/{shade/descriptor/util → core/model/object}/optional_hash.js +3 -3
- package/src/engine/asset/Asset.d.ts +1 -1
- package/src/engine/asset/Asset.d.ts.map +1 -1
- package/src/engine/asset/Asset.js +3 -1
- package/src/engine/asset/loaders/image/ImageDecoderWorker.js +12 -27
- package/src/engine/asset/loaders/image/prototypePNG.js +8 -7
- package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.d.ts.map +1 -1
- package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.js +9 -10
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.d.ts.map +1 -1
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.js +4 -0
- package/src/engine/graphics/ecs/particles/ParticleEffect.d.ts +266 -0
- package/src/engine/graphics/ecs/particles/ParticleEffect.d.ts.map +1 -0
- package/src/engine/graphics/ecs/particles/ParticleEffect.js +439 -0
- package/src/engine/graphics/ecs/particles/ParticleEffectSerializationAdapter.d.ts +58 -0
- package/src/engine/graphics/ecs/particles/ParticleEffectSerializationAdapter.d.ts.map +1 -0
- package/src/engine/graphics/ecs/particles/ParticleEffectSerializationAdapter.js +219 -0
- package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts +178 -25
- package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts.map +1 -1
- package/src/engine/graphics3/GPUParticleEmitterSystem.js +809 -310
- package/src/format/image/png/PNGReader.d.ts +7 -6
- package/src/format/image/png/PNGReader.d.ts.map +1 -1
- package/src/format/image/png/PNGReader.js +13 -12
- package/src/format/image/png/chunk/png_chunk_decode_iTXt.d.ts +3 -2
- package/src/format/image/png/chunk/png_chunk_decode_iTXt.d.ts.map +1 -1
- package/src/format/image/png/chunk/png_chunk_decode_iTXt.js +5 -4
- package/src/format/image/png/chunk/png_chunk_decode_zTXt.d.ts +3 -2
- package/src/format/image/png/chunk/png_chunk_decode_zTXt.d.ts.map +1 -1
- package/src/format/image/png/chunk/png_chunk_decode_zTXt.js +5 -4
- package/src/format/image/png/png_inflate.d.ts +3 -3
- package/src/format/image/png/png_inflate.d.ts.map +1 -1
- package/src/format/image/png/png_inflate.js +29 -39
- package/src/format/texture/ktx2/ktx2_read.d.ts +4 -4
- package/src/format/texture/ktx2/ktx2_read.d.ts.map +1 -1
- package/src/format/texture/ktx2/ktx2_read.js +18 -21
- package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.js +1 -1
- package/src/shade/descriptor/binding/BindGroupLayoutEntry.js +3 -3
- package/src/shade/descriptor/pipeline/PipelineDescriptorBase.js +1 -1
- package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.js +1 -1
- package/src/shade/descriptor/pipeline/render/ColorTargetState.js +3 -3
- package/src/shade/descriptor/pipeline/render/FragmentState.js +1 -1
- package/src/shade/descriptor/pipeline/render/RenderPipelineDescriptor.js +3 -3
- package/src/shade/playground/particle_ecs/README.md +203 -0
- package/src/shade/playground/particle_ecs/bonfire_editor.d.ts +39 -0
- package/src/shade/playground/particle_ecs/bonfire_editor.d.ts.map +1 -0
- package/src/shade/playground/particle_ecs/bonfire_editor.js +315 -0
- package/src/shade/playground/particle_ecs/bonfire_effects.d.ts +145 -0
- package/src/shade/playground/particle_ecs/bonfire_effects.d.ts.map +1 -0
- package/src/shade/playground/particle_ecs/bonfire_effects.js +202 -0
- package/src/shade/playground/particle_ecs/bonfire_sprites.d.ts +23 -0
- package/src/shade/playground/particle_ecs/bonfire_sprites.d.ts.map +1 -0
- package/src/shade/playground/particle_ecs/bonfire_sprites.js +315 -0
- package/src/shade/playground/particle_ecs/bonfire_world.d.ts +86 -0
- package/src/shade/playground/particle_ecs/bonfire_world.d.ts.map +1 -0
- package/src/shade/playground/particle_ecs/bonfire_world.js +303 -0
- package/src/shade/playground/particle_ecs/effects/embers.json +1634 -0
- package/src/shade/playground/particle_ecs/effects/flame.json +1882 -0
- package/src/shade/playground/particle_ecs/effects/smoke.json +1860 -0
- package/src/shade/playground/particle_ecs/effects/soot.json +1606 -0
- package/src/shade/playground/particle_ecs/index.html +330 -0
- package/src/shade/playground/particle_ecs/main.d.ts +2 -0
- package/src/shade/playground/particle_ecs/main.d.ts.map +1 -0
- package/src/shade/playground/particle_ecs/main.js +566 -0
- package/src/shade/playground/particle_ecs/moonlit_environment.d.ts +16 -0
- package/src/shade/playground/particle_ecs/moonlit_environment.d.ts.map +1 -0
- package/src/shade/playground/particle_ecs/moonlit_environment.js +144 -0
- package/src/shade/playground/particle_editor/README.md +5 -4
- package/src/shade/playground/particle_system/particle_prototype.d.ts +7 -9
- package/src/shade/playground/particle_system/particle_prototype.d.ts.map +1 -1
- package/src/shade/playground/particle_system/particle_prototype.js +7 -9
- package/src/shade/playground/profile_hotkey.d.ts +58 -0
- package/src/shade/playground/profile_hotkey.d.ts.map +1 -0
- package/src/shade/playground/profile_hotkey.js +325 -0
- package/src/shade/playground/ssr_motion/README.md +22 -0
- package/src/shade/playground/ssr_motion/index.html +18 -0
- package/src/shade/playground/ssr_motion/main.d.ts +2 -0
- package/src/shade/playground/ssr_motion/main.d.ts.map +1 -0
- package/src/shade/playground/ssr_motion/main.js +149 -0
- package/src/shade/playground/ssr_variance/README.md +105 -0
- package/src/shade/playground/ssr_variance/capture.d.ts +16 -0
- package/src/shade/playground/ssr_variance/capture.d.ts.map +1 -0
- package/src/shade/playground/ssr_variance/capture.js +96 -0
- package/src/shade/playground/ssr_variance/index.html +23 -0
- package/src/shade/playground/ssr_variance/main.d.ts +2 -0
- package/src/shade/playground/ssr_variance/main.d.ts.map +1 -0
- package/src/shade/playground/ssr_variance/main.js +246 -0
- package/src/shade/playground/ssr_variance/reference.d.ts +18 -0
- package/src/shade/playground/ssr_variance/reference.d.ts.map +1 -0
- package/src/shade/playground/ssr_variance/reference.js +78 -0
- package/src/shade/playground/ssr_variance/scene.d.ts +11 -0
- package/src/shade/playground/ssr_variance/scene.d.ts.map +1 -0
- package/src/shade/playground/ssr_variance/scene.js +61 -0
- package/src/shade/playground/ssr_variance/statistics.d.ts +44 -0
- package/src/shade/playground/ssr_variance/statistics.d.ts.map +1 -0
- package/src/shade/playground/ssr_variance/statistics.js +51 -0
- package/src/shade/renderer/geometry/Geometry.d.ts.map +1 -1
- package/src/shade/renderer/geometry/Geometry.js +4 -7
- package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts.map +1 -1
- package/src/shade/renderer/loader/gltf/tiny-gltf.js +9 -3
- package/src/shade/renderer/loader/usd/usd_decode_image.d.ts +4 -4
- package/src/shade/renderer/loader/usd/usd_decode_image.d.ts.map +1 -1
- package/src/shade/renderer/loader/usd/usd_decode_image.js +4 -4
- package/src/shade/renderer/material/StandardShadeMaterial.js +2 -2
- package/src/shade/renderer/particles/DESIGN.md +745 -702
- package/src/shade/renderer/particles/GPUParticleSystem.d.ts.map +1 -1
- package/src/shade/renderer/particles/GPUParticleSystem.js +3 -1
- package/src/shade/renderer/particles/graph/ParticleGroupBuilder.d.ts +1 -1
- package/src/shade/renderer/particles/graph/ParticleGroupBuilder.js +1 -1
- package/src/shade/renderer/particles/graph/ParticleNodeRegistry.d.ts.map +1 -1
- package/src/shade/renderer/particles/graph/ParticleNodeRegistry.js +9 -15
- package/src/shade/renderer/particles/graph/particle_group_library.d.ts.map +1 -1
- package/src/shade/renderer/particles/graph/particle_group_library.js +8 -3
- package/src/shade/renderer/particles/graph/particle_node_parameters.d.ts +0 -2
- package/src/shade/renderer/particles/graph/particle_node_parameters.d.ts.map +1 -1
- package/src/shade/renderer/particles/graph/particle_node_parameters.js +0 -9
- package/src/shade/renderer/particles/graph/particle_node_presentation.d.ts.map +1 -1
- package/src/shade/renderer/particles/graph/particle_node_presentation.js +0 -10
- package/src/shade/renderer/particles/graph/particle_ramp.d.ts +2 -8
- package/src/shade/renderer/particles/graph/particle_ramp.d.ts.map +1 -1
- package/src/shade/renderer/particles/graph/particle_ramp.js +2 -8
- package/src/shade/renderer/particles/graph/validate_particle_graph.js +0 -6
- package/src/shade/renderer/particles/graph_particles_avboit.d.ts.map +1 -1
- package/src/shade/renderer/particles/graph_particles_avboit.js +13 -4
- package/src/shade/renderer/particles/isa/InstructionStream.d.ts +1 -12
- package/src/shade/renderer/particles/isa/InstructionStream.d.ts.map +1 -1
- package/src/shade/renderer/particles/isa/InstructionStream.js +1 -12
- package/src/shade/renderer/particles/isa/ParticleVMISA.d.ts +54 -60
- package/src/shade/renderer/particles/isa/ParticleVMISA.d.ts.map +1 -1
- package/src/shade/renderer/particles/isa/ParticleVMISA.js +9 -17
- package/src/shade/renderer/particles/isa/particle_assembly.d.ts +0 -1
- package/src/shade/renderer/particles/isa/particle_assembly.d.ts.map +1 -1
- package/src/shade/renderer/particles/isa/particle_assembly.js +2 -16
- package/src/shade/renderer/particles/optimizer/dag/particle_vector_graph.d.ts +1 -1
- package/src/shade/renderer/particles/optimizer/dag/particle_vector_graph.js +1 -1
- package/src/shade/renderer/particles/optimizer/dag/particle_vector_lift.js +0 -14
- package/src/shade/renderer/particles/optimizer/dag/particle_vector_pack.js +3 -17
- package/src/shade/renderer/particles/optimizer/particle_program_analysis.d.ts.map +1 -1
- package/src/shade/renderer/particles/optimizer/particle_program_analysis.js +15 -36
- package/src/shade/renderer/particles/optimizer/particle_program_equivalence.d.ts.map +1 -1
- package/src/shade/renderer/particles/optimizer/particle_program_equivalence.js +1 -5
- package/src/shade/renderer/particles/optimizer/particle_program_fuzz.d.ts.map +1 -1
- package/src/shade/renderer/particles/optimizer/particle_program_fuzz.js +1 -8
- package/src/shade/renderer/particles/optimizer/particle_vm_semantics.d.ts +2 -11
- package/src/shade/renderer/particles/optimizer/particle_vm_semantics.d.ts.map +1 -1
- package/src/shade/renderer/particles/optimizer/particle_vm_semantics.js +2 -11
- package/src/shade/renderer/particles/runtime/ParticleEmitter.d.ts +11 -4
- package/src/shade/renderer/particles/runtime/ParticleEmitter.d.ts.map +1 -1
- package/src/shade/renderer/particles/runtime/ParticleEmitter.js +431 -424
- package/src/shade/renderer/particles/shaders/chunk_particle_avboit_contribution.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/chunk_particle_avboit_contribution.js +13 -0
- package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.d.ts +3 -6
- package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.js +49 -17
- package/src/shade/renderer/particles/shaders/shader_particle_emit.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_emit.js +0 -2
- package/src/shade/renderer/particles/shaders/shader_particle_emit_wide.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_emit_wide.js +0 -2
- package/src/shade/renderer/particles/shaders/shader_particle_simulate.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_simulate.js +1 -5
- package/src/shade/renderer/particles/shaders/shader_particle_simulate_wide.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_simulate_wide.js +0 -2
- package/src/shade/renderer/particles/vm/ParticleVMReference.d.ts +1 -3
- package/src/shade/renderer/particles/vm/ParticleVMReference.d.ts.map +1 -1
- package/src/shade/renderer/particles/vm/ParticleVMReference.js +4 -20
- package/src/shade/renderer/particles/vm/chunk_particle_vm.d.ts.map +1 -1
- package/src/shade/renderer/particles/vm/chunk_particle_vm.js +2 -5
- package/src/shade/renderer/particles/warmup/shader_particle_warmup_advance.d.ts.map +1 -1
- package/src/shade/renderer/particles/warmup/shader_particle_warmup_advance.js +0 -2
- package/src/shade/renderer/particles/warmup/shader_particle_warmup_advance_wide.d.ts.map +1 -1
- package/src/shade/renderer/particles/warmup/shader_particle_warmup_advance_wide.js +0 -2
- package/src/shade/renderer/postprocess/ssr/SSR.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/ssr/SSR.js +2 -1
- package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_reprojection.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_reprojection.js +20 -5
- package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_sample_history.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_sample_history.js +19 -5
- package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_temporal_accumulate.d.ts +4 -0
- package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_temporal_accumulate.d.ts.map +1 -0
- package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_temporal_accumulate.js +137 -0
- package/src/shade/renderer/postprocess/ssr/ssr_reproject_shader.d.ts +0 -8
- package/src/shade/renderer/postprocess/ssr/ssr_reproject_shader.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/ssr/ssr_reproject_shader.js +18 -114
- package/src/shade/renderer/scene/Mesh.js +1 -1
- package/src/shade/renderer/texture/ShadeTexture.js +1 -1
- package/src/shade/renderer/texture/source/texel_data_from_ktx2.d.ts +2 -2
- package/src/shade/renderer/texture/source/texel_data_from_ktx2.d.ts.map +1 -1
- package/src/shade/renderer/texture/source/texel_data_from_ktx2.js +3 -3
- package/src/shade/renderer/particles/shaders/chunk_particle_curve_animation.d.ts +0 -19
- package/src/shade/renderer/particles/shaders/chunk_particle_curve_animation.d.ts.map +0 -1
- package/src/shade/renderer/particles/shaders/chunk_particle_curve_animation.js +0 -30
- package/src/shade/renderer/particles/shaders/chunk_particle_curve_disabled.d.ts +0 -11
- package/src/shade/renderer/particles/shaders/chunk_particle_curve_disabled.d.ts.map +0 -1
- package/src/shade/renderer/particles/shaders/chunk_particle_curve_disabled.js +0 -13
- package/src/shade/renderer/particles/shaders/chunk_particle_emitter_warmup.d.ts +0 -20
- package/src/shade/renderer/particles/shaders/chunk_particle_emitter_warmup.d.ts.map +0 -1
- package/src/shade/renderer/particles/shaders/chunk_particle_emitter_world_sphere.d.ts +0 -14
- package/src/shade/renderer/particles/shaders/chunk_particle_emitter_world_sphere.d.ts.map +0 -1
- package/src/shade/renderer/particles/shaders/shader_particle_reclaim.d.ts +0 -50
- package/src/shade/renderer/particles/shaders/shader_particle_reclaim.d.ts.map +0 -1
- package/src/shade/renderer/postprocess/ssr/reproject/shader_ffx_denoiser_reflections_reproject.d.ts +0 -17
- package/src/shade/renderer/postprocess/ssr/reproject/shader_ffx_denoiser_reflections_reproject.d.ts.map +0 -1
- /package/src/{shade/descriptor/util → core/model/object}/optional_clone.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=!1,e=!0,i=new Float32Array(1),n=new Int32Array(i.buffer);class s{endianness=e;position=0;get length(){throw new Error("Deprecated, use 'capacity' instead")}set length(t){throw new Error("Deprecated, use 'capacity' instead")}capacity=1024;data=new ArrayBuffer(1024);dataView=new DataView(this.data);__data_uint8=new Uint8Array(this.data);__growFactor=1.1;get raw_bytes(){return this.__data_uint8}fromArrayBuffer(t){this.data=t,this.dataView=new DataView(t),this.__data_uint8=new Uint8Array(t),this.capacity=t.byteLength,this.position=0}trim(){return this.setCapacity(this.position),this}skip(t){this.position+=t}setCapacity(t){if(t<this.position)throw new Error(`Attempting to set capacity(=${t}) below current position(=${this.position})`);if(this.capacity===t)return;const e=this.__data_uint8,i=new Uint8Array(t);this.position>0&&function(t,e,i,n,s){let a,r;const o=function(t,e,i){const n=0|i;return 3&n?1&n?1:2:4}(0,0,s);4===o?(a=new Uint32Array(t,0,s>>>2),r=new Uint32Array(i,0,s>>>2)):2===o?(a=new Uint16Array(t,0,s>>>1),r=new Uint16Array(i,0,s>>>1)):(a=new Uint8Array(t,0,s),r=new Uint8Array(i,0,s)),r.set(a)}(e.buffer,0,i.buffer,0,Math.min(e.buffer.byteLength,i.buffer.byteLength,this.position)),this.data=i.buffer,this.__data_uint8=i,this.dataView=new DataView(this.data),this.capacity=t}ensureCapacity(t){const e=this.capacity;if(e>=t)return;const i=(n=Math.ceil(Math.max(t,e*this.__growFactor,e+1024)))+(4-n%4)%4;var n;this.setCapacity(i)}readFloat16(){return function(t){let e=0;const i=(31744&t)>>10,n=1023&t;let s=1;return t>>15&&(s=-1),e=0!==i?31===i?0!==n?NaN:Infinity*s:s*Math.pow(2,i-15)*(1+n/1024):s*(n/1024*6103515625e-14),e}(this.readUint16())}readFloat32(){const t=this.dataView.getFloat32(this.position,this.endianness);return this.position+=4,t}readFloat64(){const t=this.dataView.getFloat64(this.position,this.endianness);return this.position+=8,t}readInt8(){const t=this.dataView.getInt8(this.position);return this.position+=1,t}readInt16(){const t=this.dataView.getInt16(this.position,this.endianness);return this.position+=2,t}readInt16LE(){const t=this.dataView.getInt16(this.position,e);return this.position+=2,t}readInt16BE(){const e=this.dataView.getInt16(this.position,t);return this.position+=2,e}readInt32(){const t=this.dataView.getInt32(this.position,this.endianness);return this.position+=4,t}readInt32LE(){const t=this.dataView.getInt32(this.position,e);return this.position+=4,t}readInt32BE(){const e=this.dataView.getInt32(this.position,t);return this.position+=4,e}readInt64(){const t=this.dataView.getBigInt64(this.position,this.endianness);return this.position+=8,t}readUint8(){const t=this.dataView.getUint8(this.position);return this.position+=1,t}readUint16(){const t=this.dataView.getUint16(this.position,this.endianness);return this.position+=2,t}readUint16LE(){const t=this.dataView.getUint16(this.position,e);return this.position+=2,t}readUint16BE(){const e=this.dataView.getUint16(this.position,t);return this.position+=2,e}readUint24(){return this.endianness===t?this.readUint24BE():this.readUint24LE()}readUint24LE(){const t=this.dataView.getUint8(this.position),e=this.dataView.getUint8(this.position+1),i=this.dataView.getUint8(this.position+2);return this.position+=3,t|e<<8|i<<16}readUint24BE(){const t=this.dataView.getUint8(this.position),e=this.dataView.getUint8(this.position+1),i=this.dataView.getUint8(this.position+2);return this.position+=3,i|e<<8|t<<16}readUint32(){const t=this.dataView.getUint32(this.position,this.endianness);return this.position+=4,t}readUint32LE(){const t=this.dataView.getUint32(this.position,e);return this.position+=4,t}readUint32BE(){const e=this.dataView.getUint32(this.position,t);return this.position+=4,e}readUint64(){const t=this.dataView.getBigUint64(this.position,this.endianness);return this.position+=8,t}readUint8Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readUint8()}readUint16Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readUint16()}readUint32Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readUint32()}readInt8Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readInt8()}readInt16Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readInt16()}readInt32Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readInt32()}readFloat32Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readFloat32()}readFloat64Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readFloat64()}writeFloat32Array(t,e,i){for(let n=0;n<i;n++)this.writeFloat32(t[n+e])}writeFloat16Array(t,e,i){for(let n=0;n<i;n++)this.writeFloat16(t[n+e])}readFloat16Array(t,e,i){for(let n=0;n<i;n++)t[n+e]=this.readFloat16()}writeFloat16(t){const e=function(t){let e=t;Number.isFinite(e)&&(e>65504||e<-65504)&&(e=e>0?65504:-65504),i[0]=e;const s=n[0];let a=s>>16&32768,r=s>>12&2047;const o=s>>23&255;return o<103?a:o>142?(a|=31744,255===o&&8388607&s&&(a|=512),a):o<113?(r|=2048,a|=(r>>114-o)+(r>>113-o&1),a):(a|=o-112<<10|r>>1,a+=1&r,a)}(t);this.writeUint16(e)}writeFloat32(t){const e=this.position+4;this.ensureCapacity(e),this.dataView.setFloat32(this.position,t,this.endianness),this.position=e}writeFloat64(t){const e=this.position+8;this.ensureCapacity(e),this.dataView.setFloat64(this.position,t,this.endianness),this.position=e}writeInt8(t){const e=this.position+1;this.ensureCapacity(e),this.dataView.setInt8(this.position,t),this.position=e}writeInt16(t){const e=this.position+2;this.ensureCapacity(e),this.dataView.setInt16(this.position,t,this.endianness),this.position=e}writeInt16BE(e){const i=this.position+2;this.ensureCapacity(i),this.dataView.setInt16(this.position,e,t),this.position=i}writeInt16LE(t){const i=this.position+2;this.ensureCapacity(i),this.dataView.setInt16(this.position,t,e),this.position=i}writeInt32(t){const e=this.position+4;this.ensureCapacity(e),this.dataView.setInt32(this.position,t,this.endianness),this.position=e}writeInt32BE(e){const i=this.position+4;this.ensureCapacity(i),this.dataView.setInt32(this.position,e,t),this.position=i}writeInt32LE(t){const i=this.position+4;this.ensureCapacity(i),this.dataView.setInt32(this.position,t,e),this.position=i}writeInt64(t){const e=this.position+8;this.ensureCapacity(e),this.dataView.setBigInt64(this.position,t,this.endianness),this.position=e}writeInt8Array(t,e,i){this.ensureCapacity(this.position+i);for(let n=0;n<i;n++)this.writeInt8(t[e+n])}writeInt16Array(t,e,i){this.ensureCapacity(this.position+2*i);for(let n=0;n<i;n++)this.writeInt16(t[e+n])}writeInt32Array(t,e,i){this.ensureCapacity(this.position+4*i);for(let n=0;n<i;n++)this.writeInt32(t[e+n])}writeUint8(t){const e=this.position+1;this.ensureCapacity(e),this.dataView.setUint8(this.position,t),this.position=e}writeUint8Array(t,e,i){for(let n=0;n<i;n++)this.writeUint8(t[e+n])}writeUint16(t){const e=this.position+2;this.ensureCapacity(e),this.dataView.setUint16(this.position,t,this.endianness),this.position=e}writeUint16BE(e){const i=this.position+2;this.ensureCapacity(i),this.dataView.setUint16(this.position,e,t),this.position=i}writeUint16LE(t){const i=this.position+2;this.ensureCapacity(i),this.dataView.setUint16(this.position,t,e),this.position=i}writeUint16Array(t,e,i){for(let n=0;n<i;n++)this.writeUint16(t[e+n])}writeUint24(e){this.endianness===t?this.writeUint24BE(e):this.writeUint24LE(e)}writeUint24BE(t){const e=this.position+3;this.ensureCapacity(e);const i=255&t,n=t>>8&255,s=t>>16&255;this.dataView.setUint8(this.position,s),this.dataView.setUint8(this.position+1,n),this.dataView.setUint8(this.position+2,i),this.position=e}writeUint24LE(t){const e=this.position+3;this.ensureCapacity(e);const i=255&t,n=t>>8&255,s=t>>16&255;this.dataView.setUint8(this.position,i),this.dataView.setUint8(this.position+1,n),this.dataView.setUint8(this.position+2,s),this.position=e}writeUintVar(t){let e=!0,i=t;for(;e||0!==i;){e=!1;let t=127&i;i>>=7,i>0&&(t|=128),this.writeUint8(t)}}readUintVar(){let t=!0,e=0,i=0;for(;t;){let n=this.readUint8();t=!!(128&n),e|=(127&n)<<i,i+=7}return e}writeUint32(t){const e=this.position+4;this.ensureCapacity(e),this.dataView.setUint32(this.position,t,this.endianness),this.position=e}writeUint32BE(e){const i=this.position+4;this.ensureCapacity(i),this.dataView.setUint32(this.position,e,t),this.position=i}writeUint32LE(t){const i=this.position+4;this.ensureCapacity(i),this.dataView.setUint32(this.position,t,e),this.position=i}writeUint64(t){const e=this.position+8;this.ensureCapacity(e),this.dataView.setBigUint64(this.position,t,this.endianness),this.position=e}writeUint32Array(t,e,i){this.ensureCapacity(this.position+4*i);for(let n=0;n<i;n++)this.writeUint32(t[e+n])}writeBytes(t,e,i){const n=e+i,s=this.position,a=s+i;if(this.ensureCapacity(a),0===e&&t.length===i)this.__data_uint8.set(t,s);else if("function"==typeof t.subarray)this.__data_uint8.set(t.subarray(e,n),s);else for(let n=0;n<i;n++)this.__data_uint8[s+n]=t[e+n];this.position=a}readBytes(t,e,i){const n=this.position,s=n+i,a=this.__data_uint8;i<128?function(t,e,i,n,s){let a,r,o;for(o=0;o<s;o++)a=e+o,r=n+o,i[r]=t[a]}(a,n,t,e,i):t.set(a.subarray(n,s),e),this.position=s}writeUTF8String(t){if(null===t)return void this.writeUint32(4294967295);if(void 0===t)return void this.writeUint32(4294967294);let e=0;const i=t.length;if(i>=4294967294)throw new Error("String is too long");this.writeUint32(i);let n=this.position;const s=Math.max(32,i+(i>>1)+7);this.ensureCapacity(s+n);let a=this.__data_uint8,r=this.capacity;for(;e<i;){let s=t.charCodeAt(e++);if(s>=55296&&s<=56319){if(e<i){const i=t.charCodeAt(e);56320==(64512&i)&&(++e,s=((1023&s)<<10)+(1023&i)+65536)}s>=55296&&s<=56319&&(s=65533)}if(n+4>r&&(this.position=n,this.ensureCapacity(n+4),r=this.capacity,a=this.__data_uint8),4294967168&s){if(4294965248&s)if(4294901760&s){if(4292870144&s)continue;a[n++]=s>>18&7|240,a[n++]=s>>12&63|128,a[n++]=s>>6&63|128}else a[n++]=s>>12&15|224,a[n++]=s>>6&63|128;else a[n++]=s>>6&31|192;a[n++]=63&s|128}else a[n++]=s}this.position=n}readUTF8String(){const t=this.readUint32();if(4294967295===t)return null;if(4294967294===t)return;const e=this.__data_uint8;let i="",n=this.position,s=0;for(;n<this.capacity&&s<t;){const t=e[n++];let a;if(0===t)break;128&t?192==(224&t)?a=(31&t)<<6|63&e[n++]:224==(240&t)?a=(31&t)<<12|(63&e[n++])<<6|63&e[n++]:240==(248&t)&&(a=(7&t)<<18|(63&e[n++])<<12|(63&e[n++])<<6|63&e[n++],a>65535&&(a-=65536,i+=String.fromCharCode(a>>>10&1023|55296),s++,a=56320|1023&a)):a=t,s++,i+=String.fromCharCode(a)}return this.position=n,i}writeASCIIString(t){const e=t.length,i=this.position,n=i+e;this.ensureCapacity(n);for(let n=0;n<e;n++){const e=t.charCodeAt(n);if(e>127)throw new Error(`Character ${String.fromCharCode(e)} can't be represented by a US-ASCII byte.`);this.__data_uint8[i+n]=e}this.position=n}readASCIICharacters(t,e=!1){let i="";for(let n=0;n<t;n++){const t=this.readUint8();if(e&&0===t)break;i+=String.fromCharCode(t)}return i}toString(){return`BinaryBuffer[position=${this.position}, capacity=${this.capacity}, endianness=${this.endianness}]`}toHexString(){const t=this.__data_uint8,e=Math.min(t.length,this.position);let i="";for(let n=0;n<e;n++)i+=t[n].toString(16).padStart(2,"0").toUpperCase();return i}static fromEndianness(t){const e=new s;return e.endianness=t,e}static fromArrayBuffer(t){const e=new s;return e.fromArrayBuffer(t),e}static copyUTF8String(t,e){const i=t.readUTF8String();return e.writeUTF8String(i),i}static copyUintVar(t,e){const i=t.readUintVar();return e.writeUintVar(i),i}static copyUint8(t,e){const i=t.readUint8();return e.writeUint8(i),i}static copyUint16(t,e){const i=t.readUint16();return e.writeUint16(i),i}static copyUint32(t,e){const i=t.readUint32();return e.writeUint32(i),i}static copyFloat32(t,e){const i=t.readFloat32();return e.writeFloat32(i),i}static copyFloat64(t,e){const i=t.readFloat64();return e.writeFloat64(i),i}static copyBytes(t,e,i){const n=new Uint8Array(i);return t.readBytes(n,0,i),e.writeBytes(n,0,i),n}}s.prototype.isBinaryBuffer=!0;let a=e,r=!1;function o(t){let e=t.length;for(;--e>=0;)t[e]=0}const h=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]),l=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]),d=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),c=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),_=new Array(576);o(_);const f=new Array(60);o(f);const u=new Array(512);o(u);const p=new Array(256);o(p);const w=new Array(29);o(w);const g=new Array(30);function b(t,e,i,n,s){this.static_tree=t,this.extra_bits=e,this.extra_base=i,this.elems=n,this.max_length=s,this.has_stree=t&&t.length}let m,y,k;function v(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}o(g);const U=t=>t<256?u[t]:u[256+(t>>>7)],A=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},x=(t,e,i)=>{t.bi_valid>16-i?(t.bi_buf|=e<<t.bi_valid&65535,A(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=i-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=i)},E=(t,e,i)=>{x(t,i[2*e],i[2*e+1])},I=(t,e)=>{let i=0;do{i|=1&t,t>>>=1,i<<=1}while(--e>0);return i>>>1},z=(t,e,i)=>{const n=new Array(16);let s,a,r=0;for(s=1;s<=15;s++)n[s]=r=r+i[s-1]<<1;for(a=0;a<=e;a++){let e=t[2*a+1];0!==e&&(t[2*a]=I(n[e]++,e))}},S=t=>{let e;for(e=0;e<286;e++)t.dyn_ltree[2*e]=0;for(e=0;e<30;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0},C=t=>{t.bi_valid>8?A(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},R=(t,e,i,n)=>{const s=2*e,a=2*i;return t[s]<t[a]||t[s]===t[a]&&n[e]<=n[i]},B=(t,e,i)=>{const n=t.heap[i];let s=i<<1;for(;s<=t.heap_len&&(s<t.heap_len&&R(e,t.heap[s+1],t.heap[s],t.depth)&&s++,!R(e,n,t.heap[s],t.depth));)t.heap[i]=t.heap[s],i=s,s<<=1;t.heap[i]=n},F=(t,e,i)=>{let n,s,a,r,o=0;if(0!==t.last_lit)do{n=t.pending_buf[t.d_buf+2*o]<<8|t.pending_buf[t.d_buf+2*o+1],s=t.pending_buf[t.l_buf+o],o++,0===n?E(t,s,e):(a=p[s],E(t,a+256+1,e),r=h[a],0!==r&&(s-=w[a],x(t,s,r)),n--,a=U(n),E(t,a,i),r=l[a],0!==r&&(n-=g[a],x(t,n,r)))}while(o<t.last_lit);E(t,256,e)},D=(t,e)=>{const i=e.dyn_tree,n=e.stat_desc.static_tree,s=e.stat_desc.has_stree,a=e.stat_desc.elems;let r,o,h,l=-1;for(t.heap_len=0,t.heap_max=573,r=0;r<a;r++)0!==i[2*r]?(t.heap[++t.heap_len]=l=r,t.depth[r]=0):i[2*r+1]=0;for(;t.heap_len<2;)h=t.heap[++t.heap_len]=l<2?++l:0,i[2*h]=1,t.depth[h]=0,t.opt_len--,s&&(t.static_len-=n[2*h+1]);for(e.max_code=l,r=t.heap_len>>1;r>=1;r--)B(t,i,r);h=a;do{r=t.heap[1],t.heap[1]=t.heap[t.heap_len--],B(t,i,1),o=t.heap[1],t.heap[--t.heap_max]=r,t.heap[--t.heap_max]=o,i[2*h]=i[2*r]+i[2*o],t.depth[h]=(t.depth[r]>=t.depth[o]?t.depth[r]:t.depth[o])+1,i[2*r+1]=i[2*o+1]=h,t.heap[1]=h++,B(t,i,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const i=e.dyn_tree,n=e.max_code,s=e.stat_desc.static_tree,a=e.stat_desc.has_stree,r=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,h=e.stat_desc.max_length;let l,d,c,_,f,u,p=0;for(_=0;_<=15;_++)t.bl_count[_]=0;for(i[2*t.heap[t.heap_max]+1]=0,l=t.heap_max+1;l<573;l++)d=t.heap[l],_=i[2*i[2*d+1]+1]+1,_>h&&(_=h,p++),i[2*d+1]=_,d>n||(t.bl_count[_]++,f=0,d>=o&&(f=r[d-o]),u=i[2*d],t.opt_len+=u*(_+f),a&&(t.static_len+=u*(s[2*d+1]+f)));if(0!==p){do{for(_=h-1;0===t.bl_count[_];)_--;t.bl_count[_]--,t.bl_count[_+1]+=2,t.bl_count[h]--,p-=2}while(p>0);for(_=h;0!==_;_--)for(d=t.bl_count[_];0!==d;)c=t.heap[--l],c>n||(i[2*c+1]!==_&&(t.opt_len+=(_-i[2*c+1])*i[2*c],i[2*c+1]=_),d--)}})(t,e),z(i,l,t.bl_count)},T=(t,e,i)=>{let n,s,a=-1,r=e[1],o=0,h=7,l=4;for(0===r&&(h=138,l=3),e[2*(i+1)+1]=65535,n=0;n<=i;n++)s=r,r=e[2*(n+1)+1],++o<h&&s===r||(o<l?t.bl_tree[2*s]+=o:0!==s?(s!==a&&t.bl_tree[2*s]++,t.bl_tree[32]++):o<=10?t.bl_tree[34]++:t.bl_tree[36]++,o=0,a=s,0===r?(h=138,l=3):s===r?(h=6,l=3):(h=7,l=4))},Z=(t,e,i)=>{let n,s,a=-1,r=e[1],o=0,h=7,l=4;for(0===r&&(h=138,l=3),n=0;n<=i;n++)if(s=r,r=e[2*(n+1)+1],!(++o<h&&s===r)){if(o<l)do{E(t,s,t.bl_tree)}while(0!==--o);else 0!==s?(s!==a&&(E(t,s,t.bl_tree),o--),E(t,16,t.bl_tree),x(t,o-3,2)):o<=10?(E(t,17,t.bl_tree),x(t,o-3,3)):(E(t,18,t.bl_tree),x(t,o-11,7));o=0,a=s,0===r?(h=138,l=3):s===r?(h=6,l=3):(h=7,l=4)}};let L=!1;const N=(t,e,i,n)=>{x(t,0+(n?1:0),3),((t,e,i)=>{C(t),A(t,i),A(t,~i),t.pending_buf.set(t.window.subarray(e,e+i),t.pending),t.pending+=i})(t,e,i)};var M={_tr_init:t=>{L||((()=>{let t,e,i,n,s;const a=new Array(16);for(i=0,n=0;n<28;n++)for(w[n]=i,t=0;t<1<<h[n];t++)p[i++]=n;for(p[i-1]=n,s=0,n=0;n<16;n++)for(g[n]=s,t=0;t<1<<l[n];t++)u[s++]=n;for(s>>=7;n<30;n++)for(g[n]=s<<7,t=0;t<1<<l[n]-7;t++)u[256+s++]=n;for(e=0;e<=15;e++)a[e]=0;for(t=0;t<=143;)_[2*t+1]=8,t++,a[8]++;for(;t<=255;)_[2*t+1]=9,t++,a[9]++;for(;t<=279;)_[2*t+1]=7,t++,a[7]++;for(;t<=287;)_[2*t+1]=8,t++,a[8]++;for(z(_,287,a),t=0;t<30;t++)f[2*t+1]=5,f[2*t]=I(t,5);m=new b(_,h,257,286,15),y=new b(f,l,0,30,15),k=new b(new Array(0),d,0,19,7)})(),L=!0),t.l_desc=new v(t.dyn_ltree,m),t.d_desc=new v(t.dyn_dtree,y),t.bl_desc=new v(t.bl_tree,k),t.bi_buf=0,t.bi_valid=0,S(t)},_tr_stored_block:N,_tr_flush_block:(t,e,i,n)=>{let s,a,r=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,i=4093624447;for(e=0;e<=31;e++,i>>>=1)if(1&i&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<256;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),D(t,t.l_desc),D(t,t.d_desc),r=(t=>{let e;for(T(t,t.dyn_ltree,t.l_desc.max_code),T(t,t.dyn_dtree,t.d_desc.max_code),D(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*c[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),s=t.opt_len+3+7>>>3,a=t.static_len+3+7>>>3,a<=s&&(s=a)):s=a=i+5,i+4<=s&&-1!==e?N(t,e,i,n):4===t.strategy||a===s?(x(t,2+(n?1:0),3),F(t,_,f)):(x(t,4+(n?1:0),3),((t,e,i,n)=>{let s;for(x(t,e-257,5),x(t,i-1,5),x(t,n-4,4),s=0;s<n;s++)x(t,t.bl_tree[2*c[s]+1],3);Z(t,t.dyn_ltree,e-1),Z(t,t.dyn_dtree,i-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,r+1),F(t,t.dyn_ltree,t.dyn_dtree)),S(t),n&&C(t)},_tr_tally:(t,e,i)=>(t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&i,t.last_lit++,0===e?t.dyn_ltree[2*i]++:(t.matches++,e--,t.dyn_ltree[2*(p[i]+256+1)]++,t.dyn_dtree[2*U(e)]++),t.last_lit===t.lit_bufsize-1),_tr_align:t=>{x(t,2,3),E(t,256,_),(t=>{16===t.bi_valid?(A(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)}},V=(t,e,i,n)=>{let s=65535&t,a=t>>>16&65535,r=0;for(;0!==i;){r=i>2e3?2e3:i,i-=r;do{s=s+e[n++]|0,a=a+s|0}while(--r);s%=65521,a%=65521}return s|a<<16};const O=new Uint32Array((()=>{let t,e=[];for(var i=0;i<256;i++){t=i;for(var n=0;n<8;n++)t=1&t?3988292384^t>>>1:t>>>1;e[i]=t}return e})());var H=(t,e,i,n)=>{const s=O,a=n+i;t^=-1;for(let i=n;i<a;i++)t=t>>>8^s[255&(t^e[i])];return-1^t},P={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"},$={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};const{_tr_init:j,_tr_stored_block:Y,_tr_flush_block:K,_tr_tally:G,_tr_align:X}=M,{Z_NO_FLUSH:W,Z_PARTIAL_FLUSH:q,Z_FULL_FLUSH:J,Z_FINISH:Q,Z_BLOCK:tt,Z_OK:et,Z_STREAM_END:it,Z_STREAM_ERROR:nt,Z_DATA_ERROR:st,Z_BUF_ERROR:at,Z_DEFAULT_COMPRESSION:rt,Z_FILTERED:ot,Z_HUFFMAN_ONLY:ht,Z_RLE:lt,Z_FIXED:dt,Z_DEFAULT_STRATEGY:ct,Z_UNKNOWN:_t,Z_DEFLATED:ft}=$,ut=258,pt=262,wt=103,gt=113,bt=666,mt=(t,e)=>(t.msg=P[e],e),yt=t=>(t<<1)-(t>4?9:0),kt=t=>{let e=t.length;for(;--e>=0;)t[e]=0};let vt=(t,e,i)=>(e<<t.hash_shift^i)&t.hash_mask;const Ut=t=>{const e=t.state;let i=e.pending;i>t.avail_out&&(i=t.avail_out),0!==i&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+i),t.next_out),t.next_out+=i,e.pending_out+=i,t.total_out+=i,t.avail_out-=i,e.pending-=i,0===e.pending&&(e.pending_out=0))},At=(t,e)=>{K(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,Ut(t.strm)},xt=(t,e)=>{t.pending_buf[t.pending++]=e},Et=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},It=(t,e,i,n)=>{let s=t.avail_in;return s>n&&(s=n),0===s?0:(t.avail_in-=s,e.set(t.input.subarray(t.next_in,t.next_in+s),i),1===t.state.wrap?t.adler=V(t.adler,e,s,i):2===t.state.wrap&&(t.adler=H(t.adler,e,s,i)),t.next_in+=s,t.total_in+=s,s)},zt=(t,e)=>{let i,n,s=t.max_chain_length,a=t.strstart,r=t.prev_length,o=t.nice_match;const h=t.strstart>t.w_size-pt?t.strstart-(t.w_size-pt):0,l=t.window,d=t.w_mask,c=t.prev,_=t.strstart+ut;let f=l[a+r-1],u=l[a+r];t.prev_length>=t.good_match&&(s>>=2),o>t.lookahead&&(o=t.lookahead);do{if(i=e,l[i+r]===u&&l[i+r-1]===f&&l[i]===l[a]&&l[++i]===l[a+1]){a+=2,i++;do{}while(l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&a<_);if(n=ut-(_-a),a=_-ut,n>r){if(t.match_start=e,r=n,n>=o)break;f=l[a+r-1],u=l[a+r]}}}while((e=c[e&d])>h&&0!==--s);return r<=t.lookahead?r:t.lookahead},St=t=>{const e=t.w_size;let i,n,s,a,r;do{if(a=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-pt)){t.window.set(t.window.subarray(e,e+e),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,n=t.hash_size,i=n;do{s=t.head[--i],t.head[i]=s>=e?s-e:0}while(--n);n=e,i=n;do{s=t.prev[--i],t.prev[i]=s>=e?s-e:0}while(--n);a+=e}if(0===t.strm.avail_in)break;if(n=It(t.strm,t.window,t.strstart+t.lookahead,a),t.lookahead+=n,t.lookahead+t.insert>=3)for(r=t.strstart-t.insert,t.ins_h=t.window[r],t.ins_h=vt(t,t.ins_h,t.window[r+1]);t.insert&&(t.ins_h=vt(t,t.ins_h,t.window[r+3-1]),t.prev[r&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=r,r++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<pt&&0!==t.strm.avail_in)},Ct=(t,e)=>{let i,n;for(;;){if(t.lookahead<pt){if(St(t),t.lookahead<pt&&e===W)return 1;if(0===t.lookahead)break}if(i=0,t.lookahead>=3&&(t.ins_h=vt(t,t.ins_h,t.window[t.strstart+3-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==i&&t.strstart-i<=t.w_size-pt&&(t.match_length=zt(t,i)),t.match_length>=3)if(n=G(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=vt(t,t.ins_h,t.window[t.strstart+3-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!==--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=vt(t,t.ins_h,t.window[t.strstart+1]);else n=G(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(n&&(At(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===Q?(At(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(At(t,!1),0===t.strm.avail_out)?1:2},Rt=(t,e)=>{let i,n,s;for(;;){if(t.lookahead<pt){if(St(t),t.lookahead<pt&&e===W)return 1;if(0===t.lookahead)break}if(i=0,t.lookahead>=3&&(t.ins_h=vt(t,t.ins_h,t.window[t.strstart+3-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==i&&t.prev_length<t.max_lazy_match&&t.strstart-i<=t.w_size-pt&&(t.match_length=zt(t,i),t.match_length<=5&&(t.strategy===ot||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){s=t.strstart+t.lookahead-3,n=G(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=s&&(t.ins_h=vt(t,t.ins_h,t.window[t.strstart+3-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!==--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,n&&(At(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(n=G(t,0,t.window[t.strstart-1]),n&&At(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(n=G(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===Q?(At(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(At(t,!1),0===t.strm.avail_out)?1:2};function Bt(t,e,i,n,s){this.good_length=t,this.max_lazy=e,this.nice_length=i,this.max_chain=n,this.func=s}const Ft=[new Bt(0,0,0,0,(t,e)=>{let i=65535;for(i>t.pending_buf_size-5&&(i=t.pending_buf_size-5);;){if(t.lookahead<=1){if(St(t),0===t.lookahead&&e===W)return 1;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;const n=t.block_start+i;if((0===t.strstart||t.strstart>=n)&&(t.lookahead=t.strstart-n,t.strstart=n,At(t,!1),0===t.strm.avail_out))return 1;if(t.strstart-t.block_start>=t.w_size-pt&&(At(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Q?(At(t,!0),0===t.strm.avail_out?3:4):(t.strstart>t.block_start&&(At(t,!1),t.strm.avail_out),1)}),new Bt(4,4,8,4,Ct),new Bt(4,5,16,8,Ct),new Bt(4,6,32,32,Ct),new Bt(4,4,16,16,Rt),new Bt(8,16,32,32,Rt),new Bt(8,16,128,128,Rt),new Bt(8,32,128,256,Rt),new Bt(32,128,258,1024,Rt),new Bt(32,258,258,4096,Rt)];function Dt(){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=ft,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(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),kt(this.dyn_ltree),kt(this.dyn_dtree),kt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),kt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),kt(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Tt=t=>{const e=(t=>{if(!t||!t.state)return mt(t,nt);t.total_in=t.total_out=0,t.data_type=_t;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?42:gt,t.adler=2===e.wrap?0:1,e.last_flush=W,j(e),et})(t);var i;return e===et&&((i=t.state).window_size=2*i.w_size,kt(i.head),i.max_lazy_match=Ft[i.level].max_lazy,i.good_match=Ft[i.level].good_length,i.nice_match=Ft[i.level].nice_length,i.max_chain_length=Ft[i.level].max_chain,i.strstart=0,i.block_start=0,i.lookahead=0,i.insert=0,i.match_length=i.prev_length=2,i.match_available=0,i.ins_h=0),e};var Zt=(t,e,i,n,s,a)=>{if(!t)return nt;let r=1;if(e===rt&&(e=6),n<0?(r=0,n=-n):n>15&&(r=2,n-=16),s<1||s>9||i!==ft||n<8||n>15||e<0||e>9||a<0||a>dt)return mt(t,nt);8===n&&(n=9);const o=new Dt;return t.state=o,o.strm=t,o.wrap=r,o.gzhead=null,o.w_bits=n,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=s+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+3-1)/3),o.window=new Uint8Array(2*o.w_size),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<s+6,o.pending_buf_size=4*o.lit_bufsize,o.pending_buf=new Uint8Array(o.pending_buf_size),o.d_buf=1*o.lit_bufsize,o.l_buf=3*o.lit_bufsize,o.level=e,o.strategy=a,o.method=i,Tt(t)},Lt=(t,e)=>{let i,n;if(!t||!t.state||e>tt||e<0)return t?mt(t,nt):nt;const s=t.state;if(!t.output||!t.input&&0!==t.avail_in||s.status===bt&&e!==Q)return mt(t,0===t.avail_out?at:nt);s.strm=t;const a=s.last_flush;if(s.last_flush=e,42===s.status)if(2===s.wrap)t.adler=0,xt(s,31),xt(s,139),xt(s,8),s.gzhead?(xt(s,(s.gzhead.text?1:0)+(s.gzhead.hcrc?2:0)+(s.gzhead.extra?4:0)+(s.gzhead.name?8:0)+(s.gzhead.comment?16:0)),xt(s,255&s.gzhead.time),xt(s,s.gzhead.time>>8&255),xt(s,s.gzhead.time>>16&255),xt(s,s.gzhead.time>>24&255),xt(s,9===s.level?2:s.strategy>=ht||s.level<2?4:0),xt(s,255&s.gzhead.os),s.gzhead.extra&&s.gzhead.extra.length&&(xt(s,255&s.gzhead.extra.length),xt(s,s.gzhead.extra.length>>8&255)),s.gzhead.hcrc&&(t.adler=H(t.adler,s.pending_buf,s.pending,0)),s.gzindex=0,s.status=69):(xt(s,0),xt(s,0),xt(s,0),xt(s,0),xt(s,0),xt(s,9===s.level?2:s.strategy>=ht||s.level<2?4:0),xt(s,3),s.status=gt);else{let e=ft+(s.w_bits-8<<4)<<8,i=-1;i=s.strategy>=ht||s.level<2?0:s.level<6?1:6===s.level?2:3,e|=i<<6,0!==s.strstart&&(e|=32),e+=31-e%31,s.status=gt,Et(s,e),0!==s.strstart&&(Et(s,t.adler>>>16),Et(s,65535&t.adler)),t.adler=1}if(69===s.status)if(s.gzhead.extra){for(i=s.pending;s.gzindex<(65535&s.gzhead.extra.length)&&(s.pending!==s.pending_buf_size||(s.gzhead.hcrc&&s.pending>i&&(t.adler=H(t.adler,s.pending_buf,s.pending-i,i)),Ut(t),i=s.pending,s.pending!==s.pending_buf_size));)xt(s,255&s.gzhead.extra[s.gzindex]),s.gzindex++;s.gzhead.hcrc&&s.pending>i&&(t.adler=H(t.adler,s.pending_buf,s.pending-i,i)),s.gzindex===s.gzhead.extra.length&&(s.gzindex=0,s.status=73)}else s.status=73;if(73===s.status)if(s.gzhead.name){i=s.pending;do{if(s.pending===s.pending_buf_size&&(s.gzhead.hcrc&&s.pending>i&&(t.adler=H(t.adler,s.pending_buf,s.pending-i,i)),Ut(t),i=s.pending,s.pending===s.pending_buf_size)){n=1;break}n=s.gzindex<s.gzhead.name.length?255&s.gzhead.name.charCodeAt(s.gzindex++):0,xt(s,n)}while(0!==n);s.gzhead.hcrc&&s.pending>i&&(t.adler=H(t.adler,s.pending_buf,s.pending-i,i)),0===n&&(s.gzindex=0,s.status=91)}else s.status=91;if(91===s.status)if(s.gzhead.comment){i=s.pending;do{if(s.pending===s.pending_buf_size&&(s.gzhead.hcrc&&s.pending>i&&(t.adler=H(t.adler,s.pending_buf,s.pending-i,i)),Ut(t),i=s.pending,s.pending===s.pending_buf_size)){n=1;break}n=s.gzindex<s.gzhead.comment.length?255&s.gzhead.comment.charCodeAt(s.gzindex++):0,xt(s,n)}while(0!==n);s.gzhead.hcrc&&s.pending>i&&(t.adler=H(t.adler,s.pending_buf,s.pending-i,i)),0===n&&(s.status=wt)}else s.status=wt;if(s.status===wt&&(s.gzhead.hcrc?(s.pending+2>s.pending_buf_size&&Ut(t),s.pending+2<=s.pending_buf_size&&(xt(s,255&t.adler),xt(s,t.adler>>8&255),t.adler=0,s.status=gt)):s.status=gt),0!==s.pending){if(Ut(t),0===t.avail_out)return s.last_flush=-1,et}else if(0===t.avail_in&&yt(e)<=yt(a)&&e!==Q)return mt(t,at);if(s.status===bt&&0!==t.avail_in)return mt(t,at);if(0!==t.avail_in||0!==s.lookahead||e!==W&&s.status!==bt){let i=s.strategy===ht?((t,e)=>{let i;for(;;){if(0===t.lookahead&&(St(t),0===t.lookahead)){if(e===W)return 1;break}if(t.match_length=0,i=G(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,i&&(At(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Q?(At(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(At(t,!1),0===t.strm.avail_out)?1:2})(s,e):s.strategy===lt?((t,e)=>{let i,n,s,a;const r=t.window;for(;;){if(t.lookahead<=ut){if(St(t),t.lookahead<=ut&&e===W)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(s=t.strstart-1,n=r[s],n===r[++s]&&n===r[++s]&&n===r[++s])){a=t.strstart+ut;do{}while(n===r[++s]&&n===r[++s]&&n===r[++s]&&n===r[++s]&&n===r[++s]&&n===r[++s]&&n===r[++s]&&n===r[++s]&&s<a);t.match_length=ut-(a-s),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(i=G(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(i=G(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),i&&(At(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Q?(At(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(At(t,!1),0===t.strm.avail_out)?1:2})(s,e):Ft[s.level].func(s,e);if(3!==i&&4!==i||(s.status=bt),1===i||3===i)return 0===t.avail_out&&(s.last_flush=-1),et;if(2===i&&(e===q?X(s):e!==tt&&(Y(s,0,0,!1),e===J&&(kt(s.head),0===s.lookahead&&(s.strstart=0,s.block_start=0,s.insert=0))),Ut(t),0===t.avail_out))return s.last_flush=-1,et}return e!==Q?et:s.wrap<=0?it:(2===s.wrap?(xt(s,255&t.adler),xt(s,t.adler>>8&255),xt(s,t.adler>>16&255),xt(s,t.adler>>24&255),xt(s,255&t.total_in),xt(s,t.total_in>>8&255),xt(s,t.total_in>>16&255),xt(s,t.total_in>>24&255)):(Et(s,t.adler>>>16),Et(s,65535&t.adler)),Ut(t),s.wrap>0&&(s.wrap=-s.wrap),0!==s.pending?et:it)},Nt=t=>{if(!t||!t.state)return nt;const e=t.state.status;return 42!==e&&69!==e&&73!==e&&91!==e&&e!==wt&&e!==gt&&e!==bt?mt(t,nt):(t.state=null,e===gt?mt(t,st):et)};const Mt=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var Vt=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const i=e.shift();if(i){if("object"!=typeof i)throw new TypeError(i+"must be non-object");for(const e in i)Mt(i,e)&&(t[e]=i[e])}}return t},Ot=t=>{let e=0;for(let i=0,n=t.length;i<n;i++)e+=t[i].length;const i=new Uint8Array(e);for(let e=0,n=0,s=t.length;e<s;e++){let s=t[e];i.set(s,n),n+=s.length}return i};let Ht=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){Ht=!1}const Pt=new Uint8Array(256);for(let t=0;t<256;t++)Pt[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Pt[254]=Pt[254]=1;var $t=t=>{let e,i,n,s,a,r=t.length,o=0;for(s=0;s<r;s++)i=t.charCodeAt(s),55296==(64512&i)&&s+1<r&&(n=t.charCodeAt(s+1),56320==(64512&n)&&(i=65536+(i-55296<<10)+(n-56320),s++)),o+=i<128?1:i<2048?2:i<65536?3:4;for(e=new Uint8Array(o),a=0,s=0;a<o;s++)i=t.charCodeAt(s),55296==(64512&i)&&s+1<r&&(n=t.charCodeAt(s+1),56320==(64512&n)&&(i=65536+(i-55296<<10)+(n-56320),s++)),i<128?e[a++]=i:i<2048?(e[a++]=192|i>>>6,e[a++]=128|63&i):i<65536?(e[a++]=224|i>>>12,e[a++]=128|i>>>6&63,e[a++]=128|63&i):(e[a++]=240|i>>>18,e[a++]=128|i>>>12&63,e[a++]=128|i>>>6&63,e[a++]=128|63&i);return e},jt=(t,e)=>{let i,n;const s=e||t.length,a=new Array(2*s);for(n=0,i=0;i<s;){let e=t[i++];if(e<128){a[n++]=e;continue}let r=Pt[e];if(r>4)a[n++]=65533,i+=r-1;else{for(e&=2===r?31:3===r?15:7;r>1&&i<s;)e=e<<6|63&t[i++],r--;r>1?a[n++]=65533:e<65536?a[n++]=e:(e-=65536,a[n++]=55296|e>>10&1023,a[n++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&Ht)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let i="";for(let n=0;n<e;n++)i+=String.fromCharCode(t[n]);return i})(a,n)},Yt=(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let i=e-1;for(;i>=0&&128==(192&t[i]);)i--;return i<0||0===i?e:i+Pt[t[i]]>e?i:e},Kt=function(){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};const Gt=Object.prototype.toString,{Z_NO_FLUSH:Xt,Z_SYNC_FLUSH:Wt,Z_FULL_FLUSH:qt,Z_FINISH:Jt,Z_OK:Qt,Z_STREAM_END:te,Z_DEFAULT_COMPRESSION:ee,Z_DEFAULT_STRATEGY:ie,Z_DEFLATED:ne}=$;function se(t){this.options=Vt({level:ee,method:ne,chunkSize:16384,windowBits:15,memLevel:8,strategy:ie},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Kt,this.strm.avail_out=0;let i=Zt(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(i!==Qt)throw new Error(P[i]);if(e.header&&(n=this.strm,s=e.header,n&&n.state&&(2!==n.state.wrap||(n.state.gzhead=s))),e.dictionary){let t;if(t="string"==typeof e.dictionary?$t(e.dictionary):"[object ArrayBuffer]"===Gt.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,i=((t,e)=>{let i=e.length;if(!t||!t.state)return nt;const n=t.state,s=n.wrap;if(2===s||1===s&&42!==n.status||n.lookahead)return nt;if(1===s&&(t.adler=V(t.adler,e,i,0)),n.wrap=0,i>=n.w_size){0===s&&(kt(n.head),n.strstart=0,n.block_start=0,n.insert=0);let t=new Uint8Array(n.w_size);t.set(e.subarray(i-n.w_size,i),0),e=t,i=n.w_size}const a=t.avail_in,r=t.next_in,o=t.input;for(t.avail_in=i,t.next_in=0,t.input=e,St(n);n.lookahead>=3;){let t=n.strstart,e=n.lookahead-2;do{n.ins_h=vt(n,n.ins_h,n.window[t+3-1]),n.prev[t&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=t,t++}while(--e);n.strstart=t,n.lookahead=2,St(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,t.next_in=r,t.input=o,t.avail_in=a,n.wrap=s,et})(this.strm,t),i!==Qt)throw new Error(P[i]);this._dict_set=!0}var n,s}function ae(t,e){const i=new se(e);if(i.push(t,!0),i.err)throw i.msg||P[i.err];return i.result}se.prototype.push=function(t,e){const i=this.strm,n=this.options.chunkSize;let s,a;if(this.ended)return!1;for(a=e===~~e?e:!0===e?Jt:Xt,"string"==typeof t?i.input=$t(t):"[object ArrayBuffer]"===Gt.call(t)?i.input=new Uint8Array(t):i.input=t,i.next_in=0,i.avail_in=i.input.length;;)if(0===i.avail_out&&(i.output=new Uint8Array(n),i.next_out=0,i.avail_out=n),(a===Wt||a===qt)&&i.avail_out<=6)this.onData(i.output.subarray(0,i.next_out)),i.avail_out=0;else{if(s=Lt(i,a),s===te)return i.next_out>0&&this.onData(i.output.subarray(0,i.next_out)),s=Nt(this.strm),this.onEnd(s),this.ended=!0,s===Qt;if(0!==i.avail_out){if(a>0&&i.next_out>0)this.onData(i.output.subarray(0,i.next_out)),i.avail_out=0;else if(0===i.avail_in)break}else this.onData(i.output)}return!0},se.prototype.onData=function(t){this.chunks.push(t)},se.prototype.onEnd=function(t){t===Qt&&(this.result=Ot(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var re={Deflate:se,deflate:ae,deflateRaw:function(t,e){return(e=e||{}).raw=!0,ae(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,ae(t,e)},constants:$},oe=function(t,e){let i,n,s,a,r,o,h,l,d,c,_,f,u,p,w,g,b,m,y,k,v,U,A,x;const E=t.state;i=t.next_in,A=t.input,n=i+(t.avail_in-5),s=t.next_out,x=t.output,a=s-(e-t.avail_out),r=s+(t.avail_out-257),o=E.dmax,h=E.wsize,l=E.whave,d=E.wnext,c=E.window,_=E.hold,f=E.bits,u=E.lencode,p=E.distcode,w=(1<<E.lenbits)-1,g=(1<<E.distbits)-1;t:do{f<15&&(_+=A[i++]<<f,f+=8,_+=A[i++]<<f,f+=8),b=u[_&w];e:for(;;){if(m=b>>>24,_>>>=m,f-=m,m=b>>>16&255,0===m)x[s++]=65535&b;else{if(!(16&m)){if(64&m){if(32&m){E.mode=12;break t}t.msg="invalid literal/length code",E.mode=30;break t}b=u[(65535&b)+(_&(1<<m)-1)];continue e}for(y=65535&b,m&=15,m&&(f<m&&(_+=A[i++]<<f,f+=8),y+=_&(1<<m)-1,_>>>=m,f-=m),f<15&&(_+=A[i++]<<f,f+=8,_+=A[i++]<<f,f+=8),b=p[_&g];;){if(m=b>>>24,_>>>=m,f-=m,m=b>>>16&255,16&m){if(k=65535&b,m&=15,f<m&&(_+=A[i++]<<f,f+=8,f<m&&(_+=A[i++]<<f,f+=8)),k+=_&(1<<m)-1,k>o){t.msg="invalid distance too far back",E.mode=30;break t}if(_>>>=m,f-=m,m=s-a,k>m){if(m=k-m,m>l&&E.sane){t.msg="invalid distance too far back",E.mode=30;break t}if(v=0,U=c,0===d){if(v+=h-m,m<y){y-=m;do{x[s++]=c[v++]}while(--m);v=s-k,U=x}}else if(d<m){if(v+=h+d-m,m-=d,m<y){y-=m;do{x[s++]=c[v++]}while(--m);if(v=0,d<y){m=d,y-=m;do{x[s++]=c[v++]}while(--m);v=s-k,U=x}}}else if(v+=d-m,m<y){y-=m;do{x[s++]=c[v++]}while(--m);v=s-k,U=x}for(;y>2;)x[s++]=U[v++],x[s++]=U[v++],x[s++]=U[v++],y-=3;y&&(x[s++]=U[v++],y>1&&(x[s++]=U[v++]))}else{v=s-k;do{x[s++]=x[v++],x[s++]=x[v++],x[s++]=x[v++],y-=3}while(y>2);y&&(x[s++]=x[v++],y>1&&(x[s++]=x[v++]))}break}if(64&m){t.msg="invalid distance code",E.mode=30;break t}b=p[(65535&b)+(_&(1<<m)-1)]}}break}}while(i<n&&s<r);y=f>>3,i-=y,f-=y<<3,_&=(1<<f)-1,t.next_in=i,t.next_out=s,t.avail_in=i<n?n-i+5:5-(i-n),t.avail_out=s<r?r-s+257:257-(s-r),E.hold=_,E.bits=f};const he=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]),le=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]),de=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]),ce=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]);var _e=(t,e,i,n,s,a,r,o)=>{const h=o.bits;let l,d,c,_,f,u,p=0,w=0,g=0,b=0,m=0,y=0,k=0,v=0,U=0,A=0,x=null,E=0;const I=new Uint16Array(16),z=new Uint16Array(16);let S,C,R,B=null,F=0;for(p=0;p<=15;p++)I[p]=0;for(w=0;w<n;w++)I[e[i+w]]++;for(m=h,b=15;b>=1&&0===I[b];b--);if(m>b&&(m=b),0===b)return s[a++]=20971520,s[a++]=20971520,o.bits=1,0;for(g=1;g<b&&0===I[g];g++);for(m<g&&(m=g),v=1,p=1;p<=15;p++)if(v<<=1,v-=I[p],v<0)return-1;if(v>0&&(0===t||1!==b))return-1;for(z[1]=0,p=1;p<15;p++)z[p+1]=z[p]+I[p];for(w=0;w<n;w++)0!==e[i+w]&&(r[z[e[i+w]]++]=w);if(0===t?(x=B=r,u=19):1===t?(x=he,E-=257,B=le,F-=257,u=256):(x=de,B=ce,u=-1),A=0,w=0,p=g,f=a,y=m,k=0,c=-1,U=1<<m,_=U-1,1===t&&U>852||2===t&&U>592)return 1;for(;;){S=p-k,r[w]<u?(C=0,R=r[w]):r[w]>u?(C=B[F+r[w]],R=x[E+r[w]]):(C=96,R=0),l=1<<p-k,d=1<<y,g=d;do{d-=l,s[f+(A>>k)+d]=S<<24|C<<16|R}while(0!==d);for(l=1<<p-1;A&l;)l>>=1;if(0!==l?(A&=l-1,A+=l):A=0,w++,0===--I[p]){if(p===b)break;p=e[i+r[w]]}if(p>m&&(A&_)!==c){for(0===k&&(k=m),f+=g,y=p-k,v=1<<y;y+k<b&&(v-=I[y+k],!(v<=0));)y++,v<<=1;if(U+=1<<y,1===t&&U>852||2===t&&U>592)return 1;c=A&_,s[c]=m<<24|y<<16|f-a}}return 0!==A&&(s[f+A]=p-k<<24|64<<16),o.bits=m,0};const{Z_FINISH:fe,Z_BLOCK:ue,Z_TREES:pe,Z_OK:we,Z_STREAM_END:ge,Z_NEED_DICT:be,Z_STREAM_ERROR:me,Z_DATA_ERROR:ye,Z_MEM_ERROR:ke,Z_BUF_ERROR:ve,Z_DEFLATED:Ue}=$,Ae=12,xe=30,Ee=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function Ie(){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}const ze=t=>{if(!t||!t.state)return me;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,(t=>{if(!t||!t.state)return me;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=1,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,we})(t)};let Se,Ce,Re=!0;const Be=t=>{if(Re){Se=new Int32Array(512),Ce=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(_e(1,t.lens,0,288,Se,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;_e(2,t.lens,0,32,Ce,0,t.work,{bits:5}),Re=!1}t.lencode=Se,t.lenbits=9,t.distcode=Ce,t.distbits=5},Fe=(t,e,i,n)=>{let s;const a=t.state;return null===a.window&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new Uint8Array(a.wsize)),n>=a.wsize?(a.window.set(e.subarray(i-a.wsize,i),0),a.wnext=0,a.whave=a.wsize):(s=a.wsize-a.wnext,s>n&&(s=n),a.window.set(e.subarray(i-n,i-n+s),a.wnext),(n-=s)?(a.window.set(e.subarray(i-n,i),0),a.wnext=n,a.whave=a.wsize):(a.wnext+=s,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=s))),0};var De=ze,Te=(t,e)=>{if(!t)return me;const i=new Ie;t.state=i,i.window=null;const n=((t,e)=>{let i;if(!t||!t.state)return me;const n=t.state;return e<0?(i=0,e=-e):(i=1+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?me:(null!==n.window&&n.wbits!==e&&(n.window=null),n.wrap=i,n.wbits=e,ze(t))})(t,e);return n!==we&&(t.state=null),n},Ze=(t,e)=>{let i,n,s,a,r,o,h,l,d,c,_,f,u,p,w,g,b,m,y,k,v,U,A=0;const x=new Uint8Array(4);let E,I;const z=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!t||!t.state||!t.output||!t.input&&0!==t.avail_in)return me;i=t.state,i.mode===Ae&&(i.mode=13),r=t.next_out,s=t.output,h=t.avail_out,a=t.next_in,n=t.input,o=t.avail_in,l=i.hold,d=i.bits,c=o,_=h,U=we;t:for(;;)switch(i.mode){case 1:if(0===i.wrap){i.mode=13;break}for(;d<16;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(2&i.wrap&&35615===l){i.check=0,x[0]=255&l,x[1]=l>>>8&255,i.check=H(i.check,x,2,0),l=0,d=0,i.mode=2;break}if(i.flags=0,i.head&&(i.head.done=!1),!(1&i.wrap)||(((255&l)<<8)+(l>>8))%31){t.msg="incorrect header check",i.mode=xe;break}if((15&l)!==Ue){t.msg="unknown compression method",i.mode=xe;break}if(l>>>=4,d-=4,v=8+(15&l),0===i.wbits)i.wbits=v;else if(v>i.wbits){t.msg="invalid window size",i.mode=xe;break}i.dmax=1<<i.wbits,t.adler=i.check=1,i.mode=512&l?10:Ae,l=0,d=0;break;case 2:for(;d<16;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(i.flags=l,(255&i.flags)!==Ue){t.msg="unknown compression method",i.mode=xe;break}if(57344&i.flags){t.msg="unknown header flags set",i.mode=xe;break}i.head&&(i.head.text=l>>8&1),512&i.flags&&(x[0]=255&l,x[1]=l>>>8&255,i.check=H(i.check,x,2,0)),l=0,d=0,i.mode=3;case 3:for(;d<32;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}i.head&&(i.head.time=l),512&i.flags&&(x[0]=255&l,x[1]=l>>>8&255,x[2]=l>>>16&255,x[3]=l>>>24&255,i.check=H(i.check,x,4,0)),l=0,d=0,i.mode=4;case 4:for(;d<16;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}i.head&&(i.head.xflags=255&l,i.head.os=l>>8),512&i.flags&&(x[0]=255&l,x[1]=l>>>8&255,i.check=H(i.check,x,2,0)),l=0,d=0,i.mode=5;case 5:if(1024&i.flags){for(;d<16;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}i.length=l,i.head&&(i.head.extra_len=l),512&i.flags&&(x[0]=255&l,x[1]=l>>>8&255,i.check=H(i.check,x,2,0)),l=0,d=0}else i.head&&(i.head.extra=null);i.mode=6;case 6:if(1024&i.flags&&(f=i.length,f>o&&(f=o),f&&(i.head&&(v=i.head.extra_len-i.length,i.head.extra||(i.head.extra=new Uint8Array(i.head.extra_len)),i.head.extra.set(n.subarray(a,a+f),v)),512&i.flags&&(i.check=H(i.check,n,f,a)),o-=f,a+=f,i.length-=f),i.length))break t;i.length=0,i.mode=7;case 7:if(2048&i.flags){if(0===o)break t;f=0;do{v=n[a+f++],i.head&&v&&i.length<65536&&(i.head.name+=String.fromCharCode(v))}while(v&&f<o);if(512&i.flags&&(i.check=H(i.check,n,f,a)),o-=f,a+=f,v)break t}else i.head&&(i.head.name=null);i.length=0,i.mode=8;case 8:if(4096&i.flags){if(0===o)break t;f=0;do{v=n[a+f++],i.head&&v&&i.length<65536&&(i.head.comment+=String.fromCharCode(v))}while(v&&f<o);if(512&i.flags&&(i.check=H(i.check,n,f,a)),o-=f,a+=f,v)break t}else i.head&&(i.head.comment=null);i.mode=9;case 9:if(512&i.flags){for(;d<16;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(l!==(65535&i.check)){t.msg="header crc mismatch",i.mode=xe;break}l=0,d=0}i.head&&(i.head.hcrc=i.flags>>9&1,i.head.done=!0),t.adler=i.check=0,i.mode=Ae;break;case 10:for(;d<32;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}t.adler=i.check=Ee(l),l=0,d=0,i.mode=11;case 11:if(0===i.havedict)return t.next_out=r,t.avail_out=h,t.next_in=a,t.avail_in=o,i.hold=l,i.bits=d,be;t.adler=i.check=1,i.mode=Ae;case Ae:if(e===ue||e===pe)break t;case 13:if(i.last){l>>>=7&d,d-=7&d,i.mode=27;break}for(;d<3;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}switch(i.last=1&l,l>>>=1,d-=1,3&l){case 0:i.mode=14;break;case 1:if(Be(i),i.mode=20,e===pe){l>>>=2,d-=2;break t}break;case 2:i.mode=17;break;case 3:t.msg="invalid block type",i.mode=xe}l>>>=2,d-=2;break;case 14:for(l>>>=7&d,d-=7&d;d<32;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if((65535&l)!=(l>>>16^65535)){t.msg="invalid stored block lengths",i.mode=xe;break}if(i.length=65535&l,l=0,d=0,i.mode=15,e===pe)break t;case 15:i.mode=16;case 16:if(f=i.length,f){if(f>o&&(f=o),f>h&&(f=h),0===f)break t;s.set(n.subarray(a,a+f),r),o-=f,a+=f,h-=f,r+=f,i.length-=f;break}i.mode=Ae;break;case 17:for(;d<14;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(i.nlen=257+(31&l),l>>>=5,d-=5,i.ndist=1+(31&l),l>>>=5,d-=5,i.ncode=4+(15&l),l>>>=4,d-=4,i.nlen>286||i.ndist>30){t.msg="too many length or distance symbols",i.mode=xe;break}i.have=0,i.mode=18;case 18:for(;i.have<i.ncode;){for(;d<3;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}i.lens[z[i.have++]]=7&l,l>>>=3,d-=3}for(;i.have<19;)i.lens[z[i.have++]]=0;if(i.lencode=i.lendyn,i.lenbits=7,E={bits:i.lenbits},U=_e(0,i.lens,0,19,i.lencode,0,i.work,E),i.lenbits=E.bits,U){t.msg="invalid code lengths set",i.mode=xe;break}i.have=0,i.mode=19;case 19:for(;i.have<i.nlen+i.ndist;){for(;A=i.lencode[l&(1<<i.lenbits)-1],w=A>>>24,g=A>>>16&255,b=65535&A,!(w<=d);){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(b<16)l>>>=w,d-=w,i.lens[i.have++]=b;else{if(16===b){for(I=w+2;d<I;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(l>>>=w,d-=w,0===i.have){t.msg="invalid bit length repeat",i.mode=xe;break}v=i.lens[i.have-1],f=3+(3&l),l>>>=2,d-=2}else if(17===b){for(I=w+3;d<I;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}l>>>=w,d-=w,v=0,f=3+(7&l),l>>>=3,d-=3}else{for(I=w+7;d<I;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}l>>>=w,d-=w,v=0,f=11+(127&l),l>>>=7,d-=7}if(i.have+f>i.nlen+i.ndist){t.msg="invalid bit length repeat",i.mode=xe;break}for(;f--;)i.lens[i.have++]=v}}if(i.mode===xe)break;if(0===i.lens[256]){t.msg="invalid code -- missing end-of-block",i.mode=xe;break}if(i.lenbits=9,E={bits:i.lenbits},U=_e(1,i.lens,0,i.nlen,i.lencode,0,i.work,E),i.lenbits=E.bits,U){t.msg="invalid literal/lengths set",i.mode=xe;break}if(i.distbits=6,i.distcode=i.distdyn,E={bits:i.distbits},U=_e(2,i.lens,i.nlen,i.ndist,i.distcode,0,i.work,E),i.distbits=E.bits,U){t.msg="invalid distances set",i.mode=xe;break}if(i.mode=20,e===pe)break t;case 20:i.mode=21;case 21:if(o>=6&&h>=258){t.next_out=r,t.avail_out=h,t.next_in=a,t.avail_in=o,i.hold=l,i.bits=d,oe(t,_),r=t.next_out,s=t.output,h=t.avail_out,a=t.next_in,n=t.input,o=t.avail_in,l=i.hold,d=i.bits,i.mode===Ae&&(i.back=-1);break}for(i.back=0;A=i.lencode[l&(1<<i.lenbits)-1],w=A>>>24,g=A>>>16&255,b=65535&A,!(w<=d);){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(g&&!(240&g)){for(m=w,y=g,k=b;A=i.lencode[k+((l&(1<<m+y)-1)>>m)],w=A>>>24,g=A>>>16&255,b=65535&A,!(m+w<=d);){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}l>>>=m,d-=m,i.back+=m}if(l>>>=w,d-=w,i.back+=w,i.length=b,0===g){i.mode=26;break}if(32&g){i.back=-1,i.mode=Ae;break}if(64&g){t.msg="invalid literal/length code",i.mode=xe;break}i.extra=15&g,i.mode=22;case 22:if(i.extra){for(I=i.extra;d<I;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}i.length+=l&(1<<i.extra)-1,l>>>=i.extra,d-=i.extra,i.back+=i.extra}i.was=i.length,i.mode=23;case 23:for(;A=i.distcode[l&(1<<i.distbits)-1],w=A>>>24,g=A>>>16&255,b=65535&A,!(w<=d);){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(!(240&g)){for(m=w,y=g,k=b;A=i.distcode[k+((l&(1<<m+y)-1)>>m)],w=A>>>24,g=A>>>16&255,b=65535&A,!(m+w<=d);){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}l>>>=m,d-=m,i.back+=m}if(l>>>=w,d-=w,i.back+=w,64&g){t.msg="invalid distance code",i.mode=xe;break}i.offset=b,i.extra=15&g,i.mode=24;case 24:if(i.extra){for(I=i.extra;d<I;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}i.offset+=l&(1<<i.extra)-1,l>>>=i.extra,d-=i.extra,i.back+=i.extra}if(i.offset>i.dmax){t.msg="invalid distance too far back",i.mode=xe;break}i.mode=25;case 25:if(0===h)break t;if(f=_-h,i.offset>f){if(f=i.offset-f,f>i.whave&&i.sane){t.msg="invalid distance too far back",i.mode=xe;break}f>i.wnext?(f-=i.wnext,u=i.wsize-f):u=i.wnext-f,f>i.length&&(f=i.length),p=i.window}else p=s,u=r-i.offset,f=i.length;f>h&&(f=h),h-=f,i.length-=f;do{s[r++]=p[u++]}while(--f);0===i.length&&(i.mode=21);break;case 26:if(0===h)break t;s[r++]=i.length,h--,i.mode=21;break;case 27:if(i.wrap){for(;d<32;){if(0===o)break t;o--,l|=n[a++]<<d,d+=8}if(_-=h,t.total_out+=_,i.total+=_,_&&(t.adler=i.check=i.flags?H(i.check,s,_,r-_):V(i.check,s,_,r-_)),_=h,(i.flags?l:Ee(l))!==i.check){t.msg="incorrect data check",i.mode=xe;break}l=0,d=0}i.mode=28;case 28:if(i.wrap&&i.flags){for(;d<32;){if(0===o)break t;o--,l+=n[a++]<<d,d+=8}if(l!==(4294967295&i.total)){t.msg="incorrect length check",i.mode=xe;break}l=0,d=0}i.mode=29;case 29:U=ge;break t;case xe:U=ye;break t;case 31:return ke;default:return me}return t.next_out=r,t.avail_out=h,t.next_in=a,t.avail_in=o,i.hold=l,i.bits=d,(i.wsize||_!==t.avail_out&&i.mode<xe&&(i.mode<27||e!==fe))&&Fe(t,t.output,t.next_out,_-t.avail_out),c-=t.avail_in,_-=t.avail_out,t.total_in+=c,t.total_out+=_,i.total+=_,i.wrap&&_&&(t.adler=i.check=i.flags?H(i.check,s,_,t.next_out-_):V(i.check,s,_,t.next_out-_)),t.data_type=i.bits+(i.last?64:0)+(i.mode===Ae?128:0)+(20===i.mode||15===i.mode?256:0),(0===c&&0===_||e===fe)&&U===we&&(U=ve),U},Le=t=>{if(!t||!t.state)return me;let e=t.state;return e.window&&(e.window=null),t.state=null,we},Ne=(t,e)=>{const i=e.length;let n,s,a;return t&&t.state?(n=t.state,0!==n.wrap&&11!==n.mode?me:11===n.mode&&(s=1,s=V(s,e,i,0),s!==n.check)?ye:(a=Fe(t,e,i,i),a?(n.mode=31,ke):(n.havedict=1,we))):me},Me=function(){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};const Ve=Object.prototype.toString,{Z_NO_FLUSH:Oe,Z_FINISH:He,Z_OK:Pe,Z_STREAM_END:$e,Z_NEED_DICT:je,Z_STREAM_ERROR:Ye,Z_DATA_ERROR:Ke,Z_MEM_ERROR:Ge}=$;function Xe(t){this.options=Vt({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&(15&e.windowBits||(e.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Kt,this.strm.avail_out=0;let i=Te(this.strm,e.windowBits);if(i!==Pe)throw new Error(P[i]);if(this.header=new Me,((t,e)=>{if(!t||!t.state)return me;const i=t.state;2&i.wrap&&(i.head=e,e.done=!1)})(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=$t(e.dictionary):"[object ArrayBuffer]"===Ve.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(i=Ne(this.strm,e.dictionary),i!==Pe)))throw new Error(P[i])}function We(t,e){const i=new Xe(e);if(i.push(t),i.err)throw i.msg||P[i.err];return i.result}Xe.prototype.push=function(t,e){const i=this.strm,n=this.options.chunkSize,s=this.options.dictionary;let a,r,o;if(this.ended)return!1;for(r=e===~~e?e:!0===e?He:Oe,"[object ArrayBuffer]"===Ve.call(t)?i.input=new Uint8Array(t):i.input=t,i.next_in=0,i.avail_in=i.input.length;;){for(0===i.avail_out&&(i.output=new Uint8Array(n),i.next_out=0,i.avail_out=n),a=Ze(i,r),a===je&&s&&(a=Ne(i,s),a===Pe?a=Ze(i,r):a===Ke&&(a=je));i.avail_in>0&&a===$e&&i.state.wrap>0&&0!==t[i.next_in];)De(i),a=Ze(i,r);switch(a){case Ye:case Ke:case je:case Ge:return this.onEnd(a),this.ended=!0,!1}if(o=i.avail_out,i.next_out&&(0===i.avail_out||a===$e))if("string"===this.options.to){let t=Yt(i.output,i.next_out),e=i.next_out-t,s=jt(i.output,t);i.next_out=e,i.avail_out=n-e,e&&i.output.set(i.output.subarray(t,t+e),0),this.onData(s)}else this.onData(i.output.length===i.next_out?i.output:i.output.subarray(0,i.next_out));if(a!==Pe||0!==o){if(a===$e)return a=Le(this.strm),this.onEnd(a),this.ended=!0,!0;if(0===i.avail_in)break}}return!0},Xe.prototype.onData=function(t){this.chunks.push(t)},Xe.prototype.onEnd=function(t){t===Pe&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Ot(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var qe={Inflate:Xe,inflate:We,inflateRaw:function(t,e){return(e=e||{}).raw=!0,We(t,e)},ungzip:We,constants:$};const{Deflate:Je,deflate:Qe,deflateRaw:ti,gzip:ei}=re,{Inflate:ii,inflate:ni,inflateRaw:si,ungzip:ai}=qe;var ri={Deflate:Je,deflate:Qe,deflateRaw:ti,gzip:ei,Inflate:ii,inflate:ni,inflateRaw:si,ungzip:ai,constants:$};function oi(t,e=!1){const i=t.length,n=new ri.Inflate;for(let e=0;e<i;e++)n.push(t[e]);if(0===n.err){if(void 0===n.result)throw new Error("truncated zlib stream: no end marker in the chunks supplied");return n.result}if(!e)throw new Error(`failed to inflate zlib stream: ${n.msg||n.err}`);try{return ri.inflateRaw(function(t){const e=t.length;if(1===e)return t[0];let i=0;for(let n=0;n<e;n++)i+=t[n].length;const n=new Uint8Array(i);let s=0;for(let i=0;i<e;i++)n.set(t[i],s),s+=t[i].length;return n}(t).subarray(2))}catch(t){throw new Error(`failed to inflate zlib stream: ${n.msg||n.err}`)}}const hi=new Uint32Array(256);for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)1&e?e=3988292384^e>>>1:e>>>=1;hi[t]=e}const li=Object.freeze([function(t,e,i,n,s,a,r){for(let n=0;n<r;n++)i[s+n]=t[e+n]},function(t,e,i,n,s,a,r){let o=0;for(;o<n;o++)i[s+o]=t[o+e];for(;o<r;o++){const a=s+o;i[a]=t[o+e]+i[a-n]&255}},function(t,e,i,n,s,a,r){let o,h,l=0;if(a<0)for(;l<r;l++)i[s+l]=t[l+e];else for(;l<r;l++)o=t[l+e],h=i[a+l],i[s+l]=o+h&255},function(t,e,i,n,s,a,r){let o,h,l,d=0;if(a<0){for(;d<n;d++)i[s+d]=t[d+e];for(;d<r;d++){const a=s+d;i[a]=t[d+e]+(i[a-n]>>1)&255}}else{for(;d<n;d++)i[s+d]=t[d+e]+(i[a+d]>>1)&255;for(;d<r;d++)o=t[d+e],h=i[s+d-n],l=i[a+d],i[s+d]=o+(h+l>>1)&255}},function(t,e,i,n,s,a,r){let o,h,l,d,c,_,f,u,p,w=0;if(a<0){for(;w<n;w++)i[s+w]=t[w+e];for(;w<r;w++)i[s+w]=t[w+e]+i[s+w-n]&255}else{for(;w<n;w++)i[s+w]=t[w+e]+i[a+w]&255;for(;w<r;w++)o=t[w+e],d=i[a+w-n],l=i[a+w],h=i[s+w-n],c=h+l-d,_=Math.abs(c-h),f=Math.abs(c-l),u=Math.abs(c-d),p=_<=f&&_<=u?h:f<=u?l:d,i[s+w]=o+p&255}}]);function di(t,e,i,n,s,a,r,o){const h=li[t];if(void 0===h)throw new Error(`unknown filtered scanline type '${t}'`);h(e,i,n,s,a,r,o)}function ci(t,e,i,n,s,a){if(1!==i&&2!==i&&4!==i)throw new Error(`only bit depths below 8 are packed, got ${i}`);const r=(1<<i)-1;for(let o=0;o<n;o++){const n=o*i,h=t[e+(n>>3)],l=8-i-(7&n);s[a+o]=h>>>l&r}}class _i{width=0;height=0;bitDepth=0;colorType=0;compressionMethod=0;filterMethod=0;interlaceMethod=0;colors=0;alpha=!1;palette=null;pixels=null;transparency_lookup=null;text={};getWidth(){return this.width}setWidth(t){this.width=t}getHeight(){return this.height}setHeight(t){this.height=t}getBitDepth(){return this.bitDepth}setBitDepth(t){if(-1===[1,2,4,8,16].indexOf(t))throw new Error("invalid bith depth "+t);this.bitDepth=t}getColorType(){return this.colorType}setColorType(t){let e=0,i=!1;switch(t){case 0:case 3:e=1;break;case 2:e=3;break;case 4:e=2,i=!0;break;case 6:e=4,i=!0;break;default:throw new Error("invalid color type")}this.colors=e,this.alpha=i,this.colorType=t}setCompressionMethod(t){if(0!==t)throw new Error("invalid compression method "+t);this.compressionMethod=t}setFilterMethod(t){if(0!==t)throw new Error("invalid filter method "+t);this.filterMethod=t}getInterlaceMethod(){return this.interlaceMethod}setInterlaceMethod(t){if(0!==t&&1!==t)throw new Error("invalid interlace method "+t);this.interlaceMethod=t}setPalette(t){if(t.length%3!=0)throw new Error("incorrect PLTE chunk length");if(t.length>3*Math.pow(2,this.bitDepth))throw new Error("palette has more colors than 2^bitdepth");this.palette=t}getUint8Data_case3(){const t=this.width*this.height;let e;const i=this.transparency_lookup;e=null!==i?4:3;const n=new Uint8Array(t*e),s=this.pixels,a=this.palette,r=this.colors*Math.ceil(this.bitDepth/8);for(let i=0;i<t;i++){const t=i*e,o=3*s[i*r];n[t]=a[o],n[t+1]=a[o+1],n[t+2]=a[o+2]}if(null!==i){const e=i.length;for(let a=0;a<t;a++){const t=s[a*r];n[4*a+3]=t>=e?255:i[t]}}return{data:n,itemSize:e}}getUint8Data(){let t,e=0;switch(this.colorType){case 0:t=this.pixels,e=1;break;case 2:t=this.pixels,e=3;break;case 3:const i=this.getUint8Data_case3();t=i.data,e=i.itemSize;break;case 4:t=this.pixels,e=2;break;case 6:t=this.pixels,e=4;break;default:throw new Error("Unsupported color type")}return{data:t,itemSize:e}}}const fi=[137,80,78,71,13,10,26,10];function ui(t,e){return t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3]}function pi(t,e){return t[e]}function wi(e){this.png=new _i,this.dataChunks=[],this.buffer=new s,this.buffer.endianness=t,this.buffer.fromArrayBuffer(e),this.crc_enabled=!1}wi.prototype.readBytes=function(t){const e=this.buffer,i=new Uint8Array(e.data,e.position,t);return e.skip(t),i},wi.prototype.decodeHeader=function(){const t=this.buffer,e=new Uint8Array(fi.length);if(t.readBytes(e,0,e.length),!function(t,e){const i=t.length;if(i!==e.length)return!1;for(let n=0;n<i;n++)if(t[n]!==e[n])return!1;return!0}(e,fi))throw new Error("invalid PNGReader file (bad signature)")},wi.prototype.decodeChunk=function(){const t=this.buffer,e=t.readUint32();if(e<0)throw new Error("Bad chunk length "+(4294967295&e));const i=t.position,n=t.readASCIICharacters(4),a=this.readBytes(e);switch(t.readUint32(),this.crc_enabled&&function(t,e=0,i=t.length){!function(t,e,i,n){let s=4294967295;const a=i+n;for(let t=i;t<a;t++){const i=e[t];s=hi[255&(s^i)]^s>>>8}}(0,t,e,i)}(t.raw_bytes,i,e+4),n){case"IHDR":this.decodeIHDR(a);break;case"PLTE":this.decodePLTE(a);break;case"IDAT":this.decodeIDAT(a);break;case"tRNS":this.decodeTRNS(a);break;case"IEND":this.decodeIEND(a);break;case"sRGB":this.decodesRGB(a);break;case"tIME":this.decodetIME(a);break;case"zTXt":!function(t){const e=t.byteLength,i=t.buffer,n=t.byteOffset,a=s.fromArrayBuffer(i);a.position=n,a.readASCIICharacters(79,!0);const r=a.readUint8();let o;if(0!==r)throw new Error(`Unsupported compression method '${r}'`);{const t=a.position-n,s=oi([new Uint8Array(i,a.position,e-t)]);a.fromArrayBuffer(s.buffer),o=a.readASCIICharacters(s.byteLength)}}(a);break;case"iTXt":!function(t){const e=t.byteLength,i=t.buffer,n=t.byteOffset,a=n+e,r=s.fromArrayBuffer(i);r.position=n,r.readASCIICharacters(79,!0);const o=r.readUint8(),h=r.readUint8(),l=(r.readASCIICharacters(Number.MAX_SAFE_INTEGER,!0),r.readASCIICharacters(Number.MAX_SAFE_INTEGER,!0),a-r.position);let d;if(0===o)d=r.readASCIICharacters(l);else{if(1!==o)throw new Error(`Invalid compression flag value '${o}'`);{if(0!==h)throw new Error("only compression_method 0 is supported");const t=oi([new Uint8Array(r.data,r.position,l)]);r.fromArrayBuffer(t.buffer),d=r.readASCIICharacters(t.byteLength)}}}(a)}return n},wi.prototype.decodesRGB=function(t){pi(t,0)},wi.prototype.decodetIME=function(t){pi(t,0),pi(t,1),pi(t,2),pi(t,3),pi(t,4),pi(t,5),pi(t,6)},wi.prototype.decodetEXt=function(t){const e=s.fromArrayBuffer(t.buffer),i=e.readASCIICharacters(Number.POSITIVE_INFINITY,!0),n=e.readASCIICharacters(i.length-1,!1);this.png.text[i]=n},wi.prototype.decodeiEXt=function(t){const e=s.fromArrayBuffer(t.buffer),i=e.readASCIICharacters(Number.POSITIVE_INFINITY,!0);if(e.readUint8(),e.readUint8(),e.readASCIICharacters(Number.POSITIVE_INFINITY,!0),e.readUTF8String(),0!==e.readUint8())throw new Error("Expected Null Separator after Translated keyword");const n=e.readUTF8String();this.png.text[i]=n},wi.prototype.decodeIHDR=function(t){const e=this.png;e.setWidth(ui(t,0)),e.setHeight(ui(t,4)),e.setBitDepth(pi(t,8)),e.setColorType(pi(t,9)),e.setCompressionMethod(pi(t,10)),e.setFilterMethod(pi(t,11)),e.setInterlaceMethod(pi(t,12))},wi.prototype.decodePLTE=function(t){this.png.setPalette(t)},wi.prototype.decodeIDAT=function(t){this.dataChunks.push(t)},wi.prototype.decodeTRNS=function(t){this.png.transparency_lookup=t},wi.prototype.decodeIEND=function(){},wi.prototype.decodePixels=function(){const i=this.png,n=oi(this.dataChunks,!0);if(0===i.getInterlaceMethod()?this.png.pixels=this.interlaceNone(n):this.png.pixels=this.interlaceAdam7(n),16===i.bitDepth&&function(){if(r)return a;const i=new ArrayBuffer(2),n=new Uint8Array(i),s=new Uint16Array(i);return n[0]=19,a=19==(255&s[0])?e:t,r=!0,a}()===e){const t=this.png.pixels;for(let e=0;e<t.length;e+=2){const i=t[e];t[e]=t[e+1],t[e+1]=i}}},wi.prototype.interlaceNone=function(t){const e=this.png,i=e.bitDepth,n=e.colors,s=e.width,a=e.height,r=Math.max(1,Math.ceil(n*i/8)),o=Math.ceil(n*i*s/8);if(i<8)return function(t,e,i,n,s,a){const r=new Uint8Array(i*a),o=new Uint8Array(2*s),h=Math.floor(t.length/(s+1)),l=a<h?a:h;let d=0,c=-1;for(let a=0;a<l;a++){const h=(1&a)*s;di(t[d++],t,d,o,n,h,c,s),d+=s,ci(o,h,e,i,r,a*i),c=h}return r}(t,i,n*s,r,o,a);const h=new Uint8Array(o*a);let l=0;const d=t.length;for(let e=0;e<d;e+=o+1){const i=e+1;di(t[e],t,i,h,r,l,l-o,o),l+=o}return h},wi.prototype.interlaceAdam7=function(t){const e=this.png,i=e.bitDepth,n=e.colors,s=e.width,a=e.height,r=i<8,o=Math.max(1,Math.ceil(n*i/8)),h=n*(16===i?2:1),l=new Uint8Array(h*s*a),d=[{x:0,y:0,xStep:8,yStep:8},{x:4,y:0,xStep:8,yStep:8},{x:0,y:4,xStep:4,yStep:8},{x:2,y:0,xStep:4,yStep:4},{x:0,y:2,xStep:2,yStep:4},{x:1,y:0,xStep:2,yStep:2},{x:0,y:1,xStep:1,yStep:2}];let c=0;const _=new Uint8Array(2*Math.ceil(n*i*s/8)),f=r?new Uint8Array(n*s):null;for(let e=0;e<7;e++){const u=d[e],p=Math.ceil((s-u.x)/u.xStep),w=Math.ceil((a-u.y)/u.yStep);if(p<=0||w<=0)continue;const g=n*p,b=Math.ceil(g*i/8);let m=-1;for(let e=0;e<w;e++){const n=e%2*b;di(t[c++],t,c,_,o,n,m,b),c+=b,m=n;let d=_,w=n;r&&(ci(_,n,i,g,f,0),d=f,w=0);for(let t=0;t<p;t++){const i=u.x+t*u.xStep,n=u.y+e*u.yStep;if(!(i>=s||n>=a))for(let e=0;e<h;e++)l[(n*s+i)*h+e]=d[w+t*h+e]}}}return l},wi.prototype.unFilter=function(t,e,i,n,s,a,r,o){di(t,e,i,n,s,a,r,o)},wi.prototype.parse=function(){for(this.decodeHeader();"IEND"!==this.decodeChunk(););return this.decodePixels(),this.png},self.Lib={decode:async function(t,e="png"){if(!(t instanceof ArrayBuffer))throw new Error(".data argument must be an ArrayBuffer, instead was something else");if("png"===e.toLowerCase())return await async function(t){return new Promise((e,i)=>{const n=new wi(t).parse(),s=n.getUint8Data(),a=n.getWidth(),r=n.getHeight();e({data:s.data.buffer,width:a,height:r,itemSize:s.itemSize,bitDepth:n.getBitDepth()})})}(t);throw new Error("Unsupported type")}};
|
|
1
|
+
const t=!1,i=!0,e=new Float32Array(1),n=new Int32Array(e.buffer);class s{endianness=i;position=0;get length(){throw new Error("Deprecated, use 'capacity' instead")}set length(t){throw new Error("Deprecated, use 'capacity' instead")}capacity=1024;data=new ArrayBuffer(1024);dataView=new DataView(this.data);__data_uint8=new Uint8Array(this.data);__growFactor=1.1;get raw_bytes(){return this.__data_uint8}fromArrayBuffer(t){this.data=t,this.dataView=new DataView(t),this.__data_uint8=new Uint8Array(t),this.capacity=t.byteLength,this.position=0}trim(){return this.setCapacity(this.position),this}skip(t){this.position+=t}setCapacity(t){if(t<this.position)throw new Error(`Attempting to set capacity(=${t}) below current position(=${this.position})`);if(this.capacity===t)return;const i=this.__data_uint8,e=new Uint8Array(t);this.position>0&&function(t,i,e,n,s){let r,o;const a=function(t,i,e){const n=0|e;return 3&n?1&n?1:2:4}(0,0,s);4===a?(r=new Uint32Array(t,0,s>>>2),o=new Uint32Array(e,0,s>>>2)):2===a?(r=new Uint16Array(t,0,s>>>1),o=new Uint16Array(e,0,s>>>1)):(r=new Uint8Array(t,0,s),o=new Uint8Array(e,0,s)),o.set(r)}(i.buffer,0,e.buffer,0,Math.min(i.buffer.byteLength,e.buffer.byteLength,this.position)),this.data=e.buffer,this.__data_uint8=e,this.dataView=new DataView(this.data),this.capacity=t}ensureCapacity(t){const i=this.capacity;if(i>=t)return;const e=(n=Math.ceil(Math.max(t,i*this.__growFactor,i+1024)))+(4-n%4)%4;var n;this.setCapacity(e)}readFloat16(){return function(t){let i=0;const e=(31744&t)>>10,n=1023&t;let s=1;return t>>15&&(s=-1),i=0!==e?31===e?0!==n?NaN:Infinity*s:s*Math.pow(2,e-15)*(1+n/1024):s*(n/1024*6103515625e-14),i}(this.readUint16())}readFloat32(){const t=this.dataView.getFloat32(this.position,this.endianness);return this.position+=4,t}readFloat64(){const t=this.dataView.getFloat64(this.position,this.endianness);return this.position+=8,t}readInt8(){const t=this.dataView.getInt8(this.position);return this.position+=1,t}readInt16(){const t=this.dataView.getInt16(this.position,this.endianness);return this.position+=2,t}readInt16LE(){const t=this.dataView.getInt16(this.position,i);return this.position+=2,t}readInt16BE(){const i=this.dataView.getInt16(this.position,t);return this.position+=2,i}readInt32(){const t=this.dataView.getInt32(this.position,this.endianness);return this.position+=4,t}readInt32LE(){const t=this.dataView.getInt32(this.position,i);return this.position+=4,t}readInt32BE(){const i=this.dataView.getInt32(this.position,t);return this.position+=4,i}readInt64(){const t=this.dataView.getBigInt64(this.position,this.endianness);return this.position+=8,t}readUint8(){const t=this.dataView.getUint8(this.position);return this.position+=1,t}readUint16(){const t=this.dataView.getUint16(this.position,this.endianness);return this.position+=2,t}readUint16LE(){const t=this.dataView.getUint16(this.position,i);return this.position+=2,t}readUint16BE(){const i=this.dataView.getUint16(this.position,t);return this.position+=2,i}readUint24(){return this.endianness===t?this.readUint24BE():this.readUint24LE()}readUint24LE(){const t=this.dataView.getUint8(this.position),i=this.dataView.getUint8(this.position+1),e=this.dataView.getUint8(this.position+2);return this.position+=3,t|i<<8|e<<16}readUint24BE(){const t=this.dataView.getUint8(this.position),i=this.dataView.getUint8(this.position+1),e=this.dataView.getUint8(this.position+2);return this.position+=3,e|i<<8|t<<16}readUint32(){const t=this.dataView.getUint32(this.position,this.endianness);return this.position+=4,t}readUint32LE(){const t=this.dataView.getUint32(this.position,i);return this.position+=4,t}readUint32BE(){const i=this.dataView.getUint32(this.position,t);return this.position+=4,i}readUint64(){const t=this.dataView.getBigUint64(this.position,this.endianness);return this.position+=8,t}readUint8Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readUint8()}readUint16Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readUint16()}readUint32Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readUint32()}readInt8Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readInt8()}readInt16Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readInt16()}readInt32Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readInt32()}readFloat32Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readFloat32()}readFloat64Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readFloat64()}writeFloat32Array(t,i,e){for(let n=0;n<e;n++)this.writeFloat32(t[n+i])}writeFloat16Array(t,i,e){for(let n=0;n<e;n++)this.writeFloat16(t[n+i])}readFloat16Array(t,i,e){for(let n=0;n<e;n++)t[n+i]=this.readFloat16()}writeFloat16(t){const i=function(t){let i=t;Number.isFinite(i)&&(i>65504||i<-65504)&&(i=i>0?65504:-65504),e[0]=i;const s=n[0];let r=s>>16&32768,o=s>>12&2047;const a=s>>23&255;return a<103?r:a>142?(r|=31744,255===a&&8388607&s&&(r|=512),r):a<113?(o|=2048,r|=(o>>114-a)+(o>>113-a&1),r):(r|=a-112<<10|o>>1,r+=1&o,r)}(t);this.writeUint16(i)}writeFloat32(t){const i=this.position+4;this.ensureCapacity(i),this.dataView.setFloat32(this.position,t,this.endianness),this.position=i}writeFloat64(t){const i=this.position+8;this.ensureCapacity(i),this.dataView.setFloat64(this.position,t,this.endianness),this.position=i}writeInt8(t){const i=this.position+1;this.ensureCapacity(i),this.dataView.setInt8(this.position,t),this.position=i}writeInt16(t){const i=this.position+2;this.ensureCapacity(i),this.dataView.setInt16(this.position,t,this.endianness),this.position=i}writeInt16BE(i){const e=this.position+2;this.ensureCapacity(e),this.dataView.setInt16(this.position,i,t),this.position=e}writeInt16LE(t){const e=this.position+2;this.ensureCapacity(e),this.dataView.setInt16(this.position,t,i),this.position=e}writeInt32(t){const i=this.position+4;this.ensureCapacity(i),this.dataView.setInt32(this.position,t,this.endianness),this.position=i}writeInt32BE(i){const e=this.position+4;this.ensureCapacity(e),this.dataView.setInt32(this.position,i,t),this.position=e}writeInt32LE(t){const e=this.position+4;this.ensureCapacity(e),this.dataView.setInt32(this.position,t,i),this.position=e}writeInt64(t){const i=this.position+8;this.ensureCapacity(i),this.dataView.setBigInt64(this.position,t,this.endianness),this.position=i}writeInt8Array(t,i,e){this.ensureCapacity(this.position+e);for(let n=0;n<e;n++)this.writeInt8(t[i+n])}writeInt16Array(t,i,e){this.ensureCapacity(this.position+2*e);for(let n=0;n<e;n++)this.writeInt16(t[i+n])}writeInt32Array(t,i,e){this.ensureCapacity(this.position+4*e);for(let n=0;n<e;n++)this.writeInt32(t[i+n])}writeUint8(t){const i=this.position+1;this.ensureCapacity(i),this.dataView.setUint8(this.position,t),this.position=i}writeUint8Array(t,i,e){for(let n=0;n<e;n++)this.writeUint8(t[i+n])}writeUint16(t){const i=this.position+2;this.ensureCapacity(i),this.dataView.setUint16(this.position,t,this.endianness),this.position=i}writeUint16BE(i){const e=this.position+2;this.ensureCapacity(e),this.dataView.setUint16(this.position,i,t),this.position=e}writeUint16LE(t){const e=this.position+2;this.ensureCapacity(e),this.dataView.setUint16(this.position,t,i),this.position=e}writeUint16Array(t,i,e){for(let n=0;n<e;n++)this.writeUint16(t[i+n])}writeUint24(i){this.endianness===t?this.writeUint24BE(i):this.writeUint24LE(i)}writeUint24BE(t){const i=this.position+3;this.ensureCapacity(i);const e=255&t,n=t>>8&255,s=t>>16&255;this.dataView.setUint8(this.position,s),this.dataView.setUint8(this.position+1,n),this.dataView.setUint8(this.position+2,e),this.position=i}writeUint24LE(t){const i=this.position+3;this.ensureCapacity(i);const e=255&t,n=t>>8&255,s=t>>16&255;this.dataView.setUint8(this.position,e),this.dataView.setUint8(this.position+1,n),this.dataView.setUint8(this.position+2,s),this.position=i}writeUintVar(t){let i=!0,e=t;for(;i||0!==e;){i=!1;let t=127&e;e>>=7,e>0&&(t|=128),this.writeUint8(t)}}readUintVar(){let t=!0,i=0,e=0;for(;t;){let n=this.readUint8();t=!!(128&n),i|=(127&n)<<e,e+=7}return i}writeUint32(t){const i=this.position+4;this.ensureCapacity(i),this.dataView.setUint32(this.position,t,this.endianness),this.position=i}writeUint32BE(i){const e=this.position+4;this.ensureCapacity(e),this.dataView.setUint32(this.position,i,t),this.position=e}writeUint32LE(t){const e=this.position+4;this.ensureCapacity(e),this.dataView.setUint32(this.position,t,i),this.position=e}writeUint64(t){const i=this.position+8;this.ensureCapacity(i),this.dataView.setBigUint64(this.position,t,this.endianness),this.position=i}writeUint32Array(t,i,e){this.ensureCapacity(this.position+4*e);for(let n=0;n<e;n++)this.writeUint32(t[i+n])}writeBytes(t,i,e){const n=i+e,s=this.position,r=s+e;if(this.ensureCapacity(r),0===i&&t.length===e)this.__data_uint8.set(t,s);else if("function"==typeof t.subarray)this.__data_uint8.set(t.subarray(i,n),s);else for(let n=0;n<e;n++)this.__data_uint8[s+n]=t[i+n];this.position=r}readBytes(t,i,e){const n=this.position,s=n+e,r=this.__data_uint8;e<128?function(t,i,e,n,s){let r,o,a;for(a=0;a<s;a++)r=i+a,o=n+a,e[o]=t[r]}(r,n,t,i,e):t.set(r.subarray(n,s),i),this.position=s}writeUTF8String(t){if(null===t)return void this.writeUint32(4294967295);if(void 0===t)return void this.writeUint32(4294967294);let i=0;const e=t.length;if(e>=4294967294)throw new Error("String is too long");this.writeUint32(e);let n=this.position;const s=Math.max(32,e+(e>>1)+7);this.ensureCapacity(s+n);let r=this.__data_uint8,o=this.capacity;for(;i<e;){let s=t.charCodeAt(i++);if(s>=55296&&s<=56319){if(i<e){const e=t.charCodeAt(i);56320==(64512&e)&&(++i,s=((1023&s)<<10)+(1023&e)+65536)}s>=55296&&s<=56319&&(s=65533)}if(n+4>o&&(this.position=n,this.ensureCapacity(n+4),o=this.capacity,r=this.__data_uint8),4294967168&s){if(4294965248&s)if(4294901760&s){if(4292870144&s)continue;r[n++]=s>>18&7|240,r[n++]=s>>12&63|128,r[n++]=s>>6&63|128}else r[n++]=s>>12&15|224,r[n++]=s>>6&63|128;else r[n++]=s>>6&31|192;r[n++]=63&s|128}else r[n++]=s}this.position=n}readUTF8String(){const t=this.readUint32();if(4294967295===t)return null;if(4294967294===t)return;const i=this.__data_uint8;let e="",n=this.position,s=0;for(;n<this.capacity&&s<t;){const t=i[n++];let r;if(0===t)break;128&t?192==(224&t)?r=(31&t)<<6|63&i[n++]:224==(240&t)?r=(31&t)<<12|(63&i[n++])<<6|63&i[n++]:240==(248&t)&&(r=(7&t)<<18|(63&i[n++])<<12|(63&i[n++])<<6|63&i[n++],r>65535&&(r-=65536,e+=String.fromCharCode(r>>>10&1023|55296),s++,r=56320|1023&r)):r=t,s++,e+=String.fromCharCode(r)}return this.position=n,e}writeASCIIString(t){const i=t.length,e=this.position,n=e+i;this.ensureCapacity(n);for(let n=0;n<i;n++){const i=t.charCodeAt(n);if(i>127)throw new Error(`Character ${String.fromCharCode(i)} can't be represented by a US-ASCII byte.`);this.__data_uint8[e+n]=i}this.position=n}readASCIICharacters(t,i=!1){let e="";for(let n=0;n<t;n++){const t=this.readUint8();if(i&&0===t)break;e+=String.fromCharCode(t)}return e}toString(){return`BinaryBuffer[position=${this.position}, capacity=${this.capacity}, endianness=${this.endianness}]`}toHexString(){const t=this.__data_uint8,i=Math.min(t.length,this.position);let e="";for(let n=0;n<i;n++)e+=t[n].toString(16).padStart(2,"0").toUpperCase();return e}static fromEndianness(t){const i=new s;return i.endianness=t,i}static fromArrayBuffer(t){const i=new s;return i.fromArrayBuffer(t),i}static copyUTF8String(t,i){const e=t.readUTF8String();return i.writeUTF8String(e),e}static copyUintVar(t,i){const e=t.readUintVar();return i.writeUintVar(e),e}static copyUint8(t,i){const e=t.readUint8();return i.writeUint8(e),e}static copyUint16(t,i){const e=t.readUint16();return i.writeUint16(e),e}static copyUint32(t,i){const e=t.readUint32();return i.writeUint32(e),e}static copyFloat32(t,i){const e=t.readFloat32();return i.writeFloat32(e),e}static copyFloat64(t,i){const e=t.readFloat64();return i.writeFloat64(e),e}static copyBytes(t,i,e){const n=new Uint8Array(e);return t.readBytes(n,0,e),i.writeBytes(n,0,e),n}}s.prototype.isBinaryBuffer=!0;let r=i,o=!1;async function a(t,i="deflate"){let e=0;const n=new ReadableStream({pull(i){e===t.length?i.close():i.enqueue(t[e++])}}).pipeThrough(new DecompressionStream(i));return new Uint8Array(await new Response(n).arrayBuffer())}async function h(t,i=!1){try{return await a(t)}catch(e){if(i){const i=function(t){const i=t.length;if(1===i)return t[0];let e=0;for(let n=0;n<i;n++)e+=t[n].length;const n=new Uint8Array(e);let s=0;for(let e=0;e<i;e++)n.set(t[e],s),s+=t[e].length;return n}(t),e=i[0],n=i[1];if(i.length>=6&&8==(15&e)&&e>>>4<=7&&(e<<8|n)%31==0&&!(32&n))try{return await a([i.subarray(2,i.length-4)],"deflate-raw")}catch{}}throw new Error(`failed to inflate zlib stream: ${e?.message||"invalid or truncated data"}`)}}const c=new Uint32Array(256);for(let t=0;t<256;t++){let i=t;for(let t=0;t<8;t++)1&i?i=3988292384^i>>>1:i>>>=1;c[t]=i}const p=Object.freeze([function(t,i,e,n,s,r,o){for(let n=0;n<o;n++)e[s+n]=t[i+n]},function(t,i,e,n,s,r,o){let a=0;for(;a<n;a++)e[s+a]=t[a+i];for(;a<o;a++){const r=s+a;e[r]=t[a+i]+e[r-n]&255}},function(t,i,e,n,s,r,o){let a,h,c=0;if(r<0)for(;c<o;c++)e[s+c]=t[c+i];else for(;c<o;c++)a=t[c+i],h=e[r+c],e[s+c]=a+h&255},function(t,i,e,n,s,r,o){let a,h,c,p=0;if(r<0){for(;p<n;p++)e[s+p]=t[p+i];for(;p<o;p++){const r=s+p;e[r]=t[p+i]+(e[r-n]>>1)&255}}else{for(;p<n;p++)e[s+p]=t[p+i]+(e[r+p]>>1)&255;for(;p<o;p++)a=t[p+i],h=e[s+p-n],c=e[r+p],e[s+p]=a+(h+c>>1)&255}},function(t,i,e,n,s,r,o){let a,h,c,p,d,f,l,u,w,y=0;if(r<0){for(;y<n;y++)e[s+y]=t[y+i];for(;y<o;y++)e[s+y]=t[y+i]+e[s+y-n]&255}else{for(;y<n;y++)e[s+y]=t[y+i]+e[r+y]&255;for(;y<o;y++)a=t[y+i],p=e[r+y-n],c=e[r+y],h=e[s+y-n],d=h+c-p,f=Math.abs(d-h),l=Math.abs(d-c),u=Math.abs(d-p),w=f<=l&&f<=u?h:l<=u?c:p,e[s+y]=a+w&255}}]);function d(t,i,e,n,s,r,o,a){const h=p[t];if(void 0===h)throw new Error(`unknown filtered scanline type '${t}'`);h(i,e,n,s,r,o,a)}function f(t,i,e,n,s,r){if(1!==e&&2!==e&&4!==e)throw new Error(`only bit depths below 8 are packed, got ${e}`);const o=(1<<e)-1;for(let a=0;a<n;a++){const n=a*e,h=t[i+(n>>3)],c=8-e-(7&n);s[r+a]=h>>>c&o}}class l{width=0;height=0;bitDepth=0;colorType=0;compressionMethod=0;filterMethod=0;interlaceMethod=0;colors=0;alpha=!1;palette=null;pixels=null;transparency_lookup=null;text={};getWidth(){return this.width}setWidth(t){this.width=t}getHeight(){return this.height}setHeight(t){this.height=t}getBitDepth(){return this.bitDepth}setBitDepth(t){if(-1===[1,2,4,8,16].indexOf(t))throw new Error("invalid bith depth "+t);this.bitDepth=t}getColorType(){return this.colorType}setColorType(t){let i=0,e=!1;switch(t){case 0:case 3:i=1;break;case 2:i=3;break;case 4:i=2,e=!0;break;case 6:i=4,e=!0;break;default:throw new Error("invalid color type")}this.colors=i,this.alpha=e,this.colorType=t}setCompressionMethod(t){if(0!==t)throw new Error("invalid compression method "+t);this.compressionMethod=t}setFilterMethod(t){if(0!==t)throw new Error("invalid filter method "+t);this.filterMethod=t}getInterlaceMethod(){return this.interlaceMethod}setInterlaceMethod(t){if(0!==t&&1!==t)throw new Error("invalid interlace method "+t);this.interlaceMethod=t}setPalette(t){if(t.length%3!=0)throw new Error("incorrect PLTE chunk length");if(t.length>3*Math.pow(2,this.bitDepth))throw new Error("palette has more colors than 2^bitdepth");this.palette=t}getUint8Data_case3(){const t=this.width*this.height;let i;const e=this.transparency_lookup;i=null!==e?4:3;const n=new Uint8Array(t*i),s=this.pixels,r=this.palette,o=this.colors*Math.ceil(this.bitDepth/8);for(let e=0;e<t;e++){const t=e*i,a=3*s[e*o];n[t]=r[a],n[t+1]=r[a+1],n[t+2]=r[a+2]}if(null!==e){const i=e.length;for(let r=0;r<t;r++){const t=s[r*o];n[4*r+3]=t>=i?255:e[t]}}return{data:n,itemSize:i}}getUint8Data(){let t,i=0;switch(this.colorType){case 0:t=this.pixels,i=1;break;case 2:t=this.pixels,i=3;break;case 3:const e=this.getUint8Data_case3();t=e.data,i=e.itemSize;break;case 4:t=this.pixels,i=2;break;case 6:t=this.pixels,i=4;break;default:throw new Error("Unsupported color type")}return{data:t,itemSize:i}}}const u=[137,80,78,71,13,10,26,10];function w(t,i){return t[i]<<24|t[i+1]<<16|t[i+2]<<8|t[i+3]}function y(t,i){return t[i]}function U(i){this.png=new l,this.dataChunks=[],this.buffer=new s,this.buffer.endianness=t,this.buffer.fromArrayBuffer(i),this.crc_enabled=!1}U.prototype.readBytes=function(t){const i=this.buffer,e=new Uint8Array(i.data,i.position,t);return i.skip(t),e},U.prototype.decodeHeader=function(){const t=this.buffer,i=new Uint8Array(u.length);if(t.readBytes(i,0,i.length),!function(t,i){const e=t.length;if(e!==i.length)return!1;for(let n=0;n<e;n++)if(t[n]!==i[n])return!1;return!0}(i,u))throw new Error("invalid PNGReader file (bad signature)")},U.prototype.decodeChunk=async function(){const t=this.buffer,i=t.readUint32();if(i<0)throw new Error("Bad chunk length "+(4294967295&i));const e=t.position,n=t.readASCIICharacters(4),r=this.readBytes(i);switch(t.readUint32(),this.crc_enabled&&function(t,i=0,e=t.length){!function(t,i,e,n){let s=4294967295;const r=e+n;for(let t=e;t<r;t++){const e=i[t];s=c[255&(s^e)]^s>>>8}}(0,t,i,e)}(t.raw_bytes,e,i+4),n){case"IHDR":this.decodeIHDR(r);break;case"PLTE":this.decodePLTE(r);break;case"IDAT":this.decodeIDAT(r);break;case"tRNS":this.decodeTRNS(r);break;case"IEND":this.decodeIEND(r);break;case"sRGB":this.decodesRGB(r);break;case"tIME":this.decodetIME(r);break;case"zTXt":await async function(t){const i=t.byteLength,e=t.buffer,n=t.byteOffset,r=s.fromArrayBuffer(e);r.position=n;const o=r.readASCIICharacters(79,!0),a=r.readUint8();let c;if(0!==a)throw new Error(`Unsupported compression method '${a}'`);{const t=r.position-n,s=new Uint8Array(e,r.position,i-t),o=await h([s]);r.fromArrayBuffer(o.buffer),c=r.readASCIICharacters(o.byteLength)}return{keyword:o,text:c}}(r);break;case"iTXt":await async function(t){const i=t.byteLength,e=t.buffer,n=t.byteOffset,r=n+i,o=s.fromArrayBuffer(e);o.position=n;const a=o.readASCIICharacters(79,!0),c=o.readUint8(),p=o.readUint8(),d=o.readASCIICharacters(Number.MAX_SAFE_INTEGER,!0),f=o.readASCIICharacters(Number.MAX_SAFE_INTEGER,!0),l=r-o.position;let u;if(0===c)u=o.readASCIICharacters(l);else{if(1!==c)throw new Error(`Invalid compression flag value '${c}'`);{if(0!==p)throw new Error("only compression_method 0 is supported");const t=await h([new Uint8Array(o.data,o.position,l)]);o.fromArrayBuffer(t.buffer),u=o.readASCIICharacters(t.byteLength)}}return{keyword:a,language_tag:d,translated_keyword:f,text:u}}(r)}return n},U.prototype.decodesRGB=function(t){y(t,0)},U.prototype.decodetIME=function(t){y(t,0),y(t,1),y(t,2),y(t,3),y(t,4),y(t,5),y(t,6)},U.prototype.decodetEXt=function(t){const i=s.fromArrayBuffer(t.buffer),e=i.readASCIICharacters(Number.POSITIVE_INFINITY,!0),n=i.readASCIICharacters(e.length-1,!1);this.png.text[e]=n},U.prototype.decodeiEXt=function(t){const i=s.fromArrayBuffer(t.buffer),e=i.readASCIICharacters(Number.POSITIVE_INFINITY,!0);if(i.readUint8(),i.readUint8(),i.readASCIICharacters(Number.POSITIVE_INFINITY,!0),i.readUTF8String(),0!==i.readUint8())throw new Error("Expected Null Separator after Translated keyword");const n=i.readUTF8String();this.png.text[e]=n},U.prototype.decodeIHDR=function(t){const i=this.png;i.setWidth(w(t,0)),i.setHeight(w(t,4)),i.setBitDepth(y(t,8)),i.setColorType(y(t,9)),i.setCompressionMethod(y(t,10)),i.setFilterMethod(y(t,11)),i.setInterlaceMethod(y(t,12))},U.prototype.decodePLTE=function(t){this.png.setPalette(t)},U.prototype.decodeIDAT=function(t){this.dataChunks.push(t)},U.prototype.decodeTRNS=function(t){this.png.transparency_lookup=t},U.prototype.decodeIEND=function(){},U.prototype.decodePixels=async function(){const e=this.png,n=await h(this.dataChunks,!0);if(0===e.getInterlaceMethod()?this.png.pixels=this.interlaceNone(n):this.png.pixels=this.interlaceAdam7(n),16===e.bitDepth&&function(){if(o)return r;const e=new ArrayBuffer(2),n=new Uint8Array(e),s=new Uint16Array(e);return n[0]=19,r=19==(255&s[0])?i:t,o=!0,r}()===i){const t=this.png.pixels;for(let i=0;i<t.length;i+=2){const e=t[i];t[i]=t[i+1],t[i+1]=e}}},U.prototype.interlaceNone=function(t){const i=this.png,e=i.bitDepth,n=i.colors,s=i.width,r=i.height,o=Math.max(1,Math.ceil(n*e/8)),a=Math.ceil(n*e*s/8);if(e<8)return function(t,i,e,n,s,r){const o=new Uint8Array(e*r),a=new Uint8Array(2*s),h=Math.floor(t.length/(s+1)),c=r<h?r:h;let p=0,l=-1;for(let r=0;r<c;r++){const h=(1&r)*s;d(t[p++],t,p,a,n,h,l,s),p+=s,f(a,h,i,e,o,r*e),l=h}return o}(t,e,n*s,o,a,r);const h=new Uint8Array(a*r);let c=0;const p=t.length;for(let i=0;i<p;i+=a+1){const e=i+1;d(t[i],t,e,h,o,c,c-a,a),c+=a}return h},U.prototype.interlaceAdam7=function(t){const i=this.png,e=i.bitDepth,n=i.colors,s=i.width,r=i.height,o=e<8,a=Math.max(1,Math.ceil(n*e/8)),h=n*(16===e?2:1),c=new Uint8Array(h*s*r),p=[{x:0,y:0,xStep:8,yStep:8},{x:4,y:0,xStep:8,yStep:8},{x:0,y:4,xStep:4,yStep:8},{x:2,y:0,xStep:4,yStep:4},{x:0,y:2,xStep:2,yStep:4},{x:1,y:0,xStep:2,yStep:2},{x:0,y:1,xStep:1,yStep:2}];let l=0;const u=new Uint8Array(2*Math.ceil(n*e*s/8)),w=o?new Uint8Array(n*s):null;for(let i=0;i<7;i++){const y=p[i],U=Math.ceil((s-y.x)/y.xStep),g=Math.ceil((r-y.y)/y.yStep);if(U<=0||g<=0)continue;const I=n*U,b=Math.ceil(I*e/8);let A=-1;for(let i=0;i<g;i++){const n=i%2*b;d(t[l++],t,l,u,a,n,A,b),l+=b,A=n;let p=u,g=n;o&&(f(u,n,e,I,w,0),p=w,g=0);for(let t=0;t<U;t++){const e=y.x+t*y.xStep,n=y.y+i*y.yStep;if(!(e>=s||n>=r))for(let i=0;i<h;i++)c[(n*s+e)*h+i]=p[g+t*h+i]}}}return c},U.prototype.unFilter=function(t,i,e,n,s,r,o,a){d(t,i,e,n,s,r,o,a)},U.prototype.parse=async function(){for(this.decodeHeader();"IEND"!==await this.decodeChunk(););return await this.decodePixels(),this.png},self.Lib={decode:async function(t,i="png"){if(!(t instanceof ArrayBuffer))throw new Error(".data argument must be an ArrayBuffer, instead was something else");if("png"===i.toLowerCase())return await async function(t){const i=await new U(t).parse(),e=i.getUint8Data();return{data:e.data.buffer,width:i.getWidth(),height:i.getHeight(),itemSize:e.itemSize,bitDepth:i.getBitDepth()}}(t);throw new Error("Unsupported type")}};
|