genosdb 0.18.0 → 0.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/README.md +1 -1
- package/dist/ai.min.js +2 -1
- package/dist/ai.min.js.gz +0 -0
- package/dist/audit.min.js +2 -1
- package/dist/audit.min.js.gz +0 -0
- package/dist/gdb.min.js +2 -1
- package/dist/gdb.min.js.gz +0 -0
- package/dist/genosrtc-cells.min.js +2 -1
- package/dist/genosrtc-cells.min.js.gz +0 -0
- package/dist/genosrtc.min.js +2 -1
- package/dist/genosrtc.min.js.gz +0 -0
- package/dist/geo.min.js +2 -1
- package/dist/geo.min.js.gz +0 -0
- package/dist/index.js +2 -1
- package/dist/index.js.gz +0 -0
- package/dist/nlq.min.js +2 -1
- package/dist/nlq.min.js.gz +0 -0
- package/dist/sm-acls.min.js +2 -1
- package/dist/sm-acls.min.js.gz +0 -0
- package/dist/sm-gov.min.js +2 -1
- package/dist/sm-gov.min.js.gz +0 -0
- package/dist/sm.min.js +4 -3
- package/dist/sm.min.js.gz +0 -0
- package/package.json +1 -1
- package/dist/ii.min.js +0 -1
- package/dist/ii.min.js.gz +0 -0
- package/dist/rx.min.js +0 -1
- package/dist/rx.min.js.gz +0 -0
package/README.md
CHANGED
|
@@ -71,7 +71,7 @@ Browser + GenosDB
|
|
|
71
71
|
- **Between Tabs:** Uses BroadcastChannel for instant, local synchronization.
|
|
72
72
|
- **Massive Scalability:** Optional Cellular Mesh topology (`{ rtc: { cells: true } }`) enables horizontal scaling to large-scale networks by organizing peers into cells with bridge interconnections. ([GenosRTC Cells](https://github.com/estebanrfp/gdb/blob/main/docs/genosrtc-cells.md))
|
|
73
73
|
- **Optimized Data Handling:** Efficiently serializes data with MessagePack and compresses it with Pako to reduce storage footprint and network payload.
|
|
74
|
-
- **Extensible & Modular:** The core is lightweight, but its capabilities can be easily extended with external modules for features like
|
|
74
|
+
- **Extensible & Modular:** The core is lightweight, but its capabilities can be easily extended with external modules for features like geospatial queries, AI and natural-language queries.
|
|
75
75
|
|
|
76
76
|
## Project Status
|
|
77
77
|
|
package/dist/ai.min.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
var log=(()=>{const n=()=>{};return new Proxy(console,{get:(c,m)=>globalThis.__gdbDebug?c[m].bind(c):n})})();
|
|
2
|
+
import*as N from"https://esm.run/@mlc-ai/web-llm";var O="https://image.pollinations.ai/generate",S=45000,E=(j)=>j.startsWith("data:")?j:`data:image/png;base64,${j.replace(/^data:[^,]+,/,"")}`,U=(j,J)=>{let K=Number(j);if(!Number.isFinite(K)||K<=0)return J;return Math.min(Math.round(K),2048)},L=({width:j,height:J})=>`${U(j,1024)}x${U(J,1024)}`;async function _(j,{timeoutMs:J=S}={}){let K=typeof AbortController==="function"?new AbortController:null,H=K&&J?setTimeout(()=>K.abort(),J):null;try{let Q=await fetch(O,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(j),signal:K?.signal});if(!Q.ok)throw Error(`Pollinations error: ${Q.status} ${Q.statusText}`);let V=await Q.json().catch((Z)=>{throw Error(`Pollinations JSON parse error: ${Z.message}`)}),X=V?.image_base64||V?.imageBase64||V?.image;if(!X||typeof X!=="string")throw Error("Pollinations response missing base64 payload");return{base64:X,dataUri:E(X.trim()),meta:{seed:V?.seed??j.seed,model:V?.model??j.model,size:j.size,prompt:j.prompt}}}catch(Q){if(Q?.name==="AbortError")throw Error("Pollinations request timed out");throw Q}finally{if(H)clearTimeout(H)}}var v=({title:j,subtitle:J,description:K,keywords:H,audience:Q,tone:V,style:X,colorPalette:Z,focalPoint:R,extraPrompt:W}={})=>{let C=String(j||"").trim();if(!C)throw Error("Title is required to generate a cover prompt");let Y=[`Create a single, cohesive illustration for a blog post titled "${C}".`];if(J)Y.push(`Subtitle: "${String(J).trim()}".`);if(K)Y.push(`The article is about ${String(K).trim()}.`);if(Q)Y.push(`Target audience: ${String(Q).trim()}.`);let $=Array.isArray(H)?H.filter(Boolean).map((F)=>String(F).trim()):typeof H==="string"?H.split(",").map((F)=>F.trim()).filter(Boolean):[];if($.length)Y.push(`Incorporate visual cues for: ${$.join(", ")}.`);let q=[V&&`${V} mood`,X&&`style of ${X}`,Z&&`color palette ${Z}`,R&&`central focus on ${R}`].filter(Boolean).join(", ");if(q)Y.push(`Visual style hints: ${q}.`);if(W)Y.push(String(W).trim());return Y.push("Use cinematic lighting, rich gradients, and modern tech aesthetics.","Avoid text or typography in the artwork.","High detail, 4k render, trending on ArtStation."),Y.join(" ")},A=()=>{let j=async(K={})=>{let H=typeof K==="string"?{prompt:K}:{...K},Q=String(H.prompt||"").trim();if(!Q)throw Error("Pollinations requires a non-empty prompt");let V={prompt:Q,size:L({width:H.width,height:H.height}),format:"base64",seed:typeof H.seed==="number"?H.seed:Math.floor(Math.random()*1000)};if(H.model)V.model=H.model;let X=await _(V,{timeoutMs:H.timeoutMs});return H.returnMeta?X:X.dataUri};return{generateImageBase64:j,generateCoverFromTitle:async(K={})=>{let H=v(K);return j({...K,prompt:H,returnMeta:K.returnMeta})},buildCoverPrompt:v}};function x(j){if(log.info("\uD83E\uDDE0 Loading AI (WebLLM) model..."),!j.webllm)j.webllm={engine:null,isReady:!1,initPromise:null,async init(J="Phi-3.5-mini-instruct-q4f16_1-MLC"){if(this.initPromise)return this.initPromise;return this.engine=new N.MLCEngine,this.initPromise=this.engine.reload(J,{temperature:0.7,top_p:0.9}).then(()=>{return this.isReady=!0,log.info("✅ [WebLLM] Model Ready."),this.engine}),this.initPromise}},j.webllm.init().catch((J)=>{log.error("❌ [WebLLM] Error al inicializar:",J)});if(!j.ai)j.ai={};if(!j.ai.pollinations)j.ai.pollinations=A();else{let J=A();j.ai.pollinations.generateImageBase64=J.generateImageBase64,j.ai.pollinations.generateCoverFromTitle=J.generateCoverFromTitle,j.ai.pollinations.buildCoverPrompt=J.buildCoverPrompt}return j}var T=(j)=>{return x(j)};export{T as init};
|
package/dist/ai.min.js.gz
CHANGED
|
Binary file
|
package/dist/audit.min.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
var
|
|
1
|
+
var log=(()=>{const n=()=>{};return new Proxy(console,{get:(c,m)=>globalThis.__gdbDebug?c[m].bind(c):n})})();
|
|
2
|
+
var Q=(q,E=500)=>{let y;return(...G)=>{clearTimeout(y),y=setTimeout(()=>q(...G),E)}},N=(q)=>q.toLowerCase().normalize("NFD").replace(/\p{M}/gu,""),Z=(q)=>N(q).match(/\p{L}+/gu)||[],_=async(q,E=1e4)=>{let y=new AbortController,G=setTimeout(()=>y.abort(),E);try{let H=await fetch(q,{mode:"cors",cache:"no-cache"});return H.ok?await H.text():""}finally{clearTimeout(G)}},$=async(q)=>new Set((await Promise.all(q.map(_))).flatMap((E)=>E.split(/\r?\n/).map((y)=>y.trim()).filter(Boolean)).map(N));async function A(q,{spamThreshold:E=3,spamWindowMs:y=2000,apiDebounceMs:G=500,sources:H=["https://raw.githubusercontent.com/LDNOOBW/List-of-Dirty-Naughty-Obscene-and-Otherwise-Bad-Words/master/es","https://raw.githubusercontent.com/LDNOOBW/List-of-Dirty-Naughty-Obscene-and-Otherwise-Bad-Words/master/en"]}={}){let R=["gay","boludo","gilipollas","cabron"].map(N),O=new Set(R);try{let j=await $(H);for(let C of j)O.add(C)}catch{log.warn("\uD83D\uDEE1️ Audit: Could not load the banned terms list.")}let K=(j)=>typeof j=="string"?Z(j).some((C)=>O.has(C)):Array.isArray(j)?j.some(K):j&&typeof j=="object"?Object.values(j).some(K):!1,L=new Map,U=Q(()=>{for(let[j,C]of L)if(C&&K(C))q.remove?.(j),q.oplog?.remove?.(j),log.info(`\uD83D\uDEE1️ Audit: Node removed due to banned content → ${j}`);L.clear()},G),F=[],I=0,V=Q(()=>{if(F.length>=E){log.info(`\uD83D\uDEE1️ Audit: Spam detected (${F.length} ops in ${y/1000}s) [${F.map((j)=>j.id).join(", ")}]`);for(let j of F)q.remove?.(j.id),q.oplog?.remove?.(j.id)}F=[],I=0},G),{unsubscribe:X}=q.map?.(({id:j,value:C,action:P,timestamp:Y})=>{if((P==="added"||P==="updated")&&C){L.set(j,C),U();let J=Y.physical;F=I&&J-I<y?[...F,{id:j,ts:J}]:[{id:j,ts:J}],I=J,V()}})??{unsubscribe:()=>{}};return{stop:()=>X?.()}}var x=(q)=>{return log.info("\uD83D\uDEE1️ Audit module loaded."),A(q)};export{x as init,Q as debounce,A as Audit};
|
package/dist/audit.min.js.gz
CHANGED
|
Binary file
|
package/dist/gdb.min.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
function $8(J){let Q=J.length,W=0,V=0;while(V<Q){let G=J.charCodeAt(V++);if((G&4294967168)===0){W++;continue}else if((G&4294965248)===0)W+=2;else{if(G>=55296&&G<=56319){if(V<Q){let q=J.charCodeAt(V);if((q&64512)===56320)++V,G=((G&1023)<<10)+(q&1023)+65536}}if((G&4294901760)===0)W+=3;else W+=4}}return W}function sJ(J,Q,W){let V=J.length,G=W,q=0;while(q<V){let P=J.charCodeAt(q++);if((P&4294967168)===0){Q[G++]=P;continue}else if((P&4294965248)===0)Q[G++]=P>>6&31|192;else{if(P>=55296&&P<=56319){if(q<V){let X=J.charCodeAt(q);if((X&64512)===56320)++q,P=((P&1023)<<10)+(X&1023)+65536}}if((P&4294901760)===0)Q[G++]=P>>12&15|224,Q[G++]=P>>6&63|128;else Q[G++]=P>>18&7|240,Q[G++]=P>>12&63|128,Q[G++]=P>>6&63|128}Q[G++]=P&63|128}}var tJ=new TextEncoder,eJ=50;function J5(J,Q,W){tJ.encodeInto(J,Q.subarray(W))}function k8(J,Q,W){if(J.length>eJ)J5(J,Q,W);else sJ(J,Q,W)}var W5=4096;function S0(J,Q,W){let V=Q,G=V+W,q=[],P="";while(V<G){let X=J[V++];if((X&128)===0)q.push(X);else if((X&224)===192){let Z=J[V++]&63;q.push((X&31)<<6|Z)}else if((X&240)===224){let Z=J[V++]&63,Y=J[V++]&63;q.push((X&31)<<12|Z<<6|Y)}else if((X&248)===240){let Z=J[V++]&63,Y=J[V++]&63,U=J[V++]&63,k=(X&7)<<18|Z<<12|Y<<6|U;if(k>65535)k-=65536,q.push(k>>>10&1023|55296),k=56320|k&1023;q.push(k)}else q.push(X);if(q.length>=W5)P+=String.fromCharCode(...q),q.length=0}if(q.length>0)P+=String.fromCharCode(...q);return P}var Q5=new TextDecoder,V5=200;function G5(J,Q,W){let V=J.subarray(Q,Q+W);return Q5.decode(V)}function B8(J,Q,W){if(W>V5)return G5(J,Q,W);else return S0(J,Q,W)}class N6{constructor(J,Q){this.type=J,this.data=Q}}class l extends Error{constructor(J){super(J);let Q=Object.create(l.prototype);Object.setPrototypeOf(this,Q),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:l.name})}}var w6=4294967295;function j8(J,Q,W){let V=W/4294967296,G=W;J.setUint32(Q,V),J.setUint32(Q+4,G)}function K0(J,Q,W){let V=Math.floor(W/4294967296),G=W;J.setUint32(Q,V),J.setUint32(Q+4,G)}function F0(J,Q){let W=J.getInt32(Q),V=J.getUint32(Q+4);return W*4294967296+V}function C8(J,Q){let W=J.getUint32(Q),V=J.getUint32(Q+4);return W*4294967296+V}var q5=-1,X5=4294967295,Y5=17179869183;function P5({sec:J,nsec:Q}){if(J>=0&&Q>=0&&J<=Y5)if(Q===0&&J<=X5){let W=new Uint8Array(4);return new DataView(W.buffer).setUint32(0,J),W}else{let W=J/4294967296,V=J&4294967295,G=new Uint8Array(8),q=new DataView(G.buffer);return q.setUint32(0,Q<<2|W&3),q.setUint32(4,V),G}else{let W=new Uint8Array(12),V=new DataView(W.buffer);return V.setUint32(0,Q),K0(V,4,J),W}}function U5(J){let Q=J.getTime(),W=Math.floor(Q/1000),V=(Q-W*1000)*1e6,G=Math.floor(V/1e9);return{sec:W+G,nsec:V-G*1e9}}function K5(J){if(J instanceof Date){let Q=U5(J);return P5(Q)}else return null}function F5(J){let Q=new DataView(J.buffer,J.byteOffset,J.byteLength);switch(J.byteLength){case 4:{let W=Q.getUint32(0),V=0;return{sec:W,nsec:0}}case 8:{let W=Q.getUint32(0),V=Q.getUint32(4),G=(W&3)*4294967296+V,q=W>>>2;return{sec:G,nsec:q}}case 12:{let W=F0(Q,4),V=Q.getUint32(0);return{sec:W,nsec:V}}default:throw new l(`Unrecognized data size for timestamp (expected 4, 8, or 12): ${J.length}`)}}function Z5(J){let Q=F5(J);return new Date(Q.sec*1000+Q.nsec/1e6)}var M8={type:q5,encode:K5,decode:Z5};class k6{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(M8)}register({type:J,encode:Q,decode:W}){if(J>=0)this.encoders[J]=Q,this.decoders[J]=W;else{let V=-1-J;this.builtInEncoders[V]=Q,this.builtInDecoders[V]=W}}tryToEncode(J,Q){for(let W=0;W<this.builtInEncoders.length;W++){let V=this.builtInEncoders[W];if(V!=null){let G=V(J,Q);if(G!=null){let q=-1-W;return new N6(q,G)}}}for(let W=0;W<this.encoders.length;W++){let V=this.encoders[W];if(V!=null){let G=V(J,Q);if(G!=null)return new N6(W,G)}}if(J instanceof N6)return J;return null}decode(J,Q,W){let V=Q<0?this.builtInDecoders[-1-Q]:this.decoders[Q];if(V)return V(J,Q,W);else return new N6(Q,J)}}k6.defaultCodec=new k6;function z5(J){return J instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&J instanceof SharedArrayBuffer}function p6(J){if(J instanceof Uint8Array)return J;else if(ArrayBuffer.isView(J))return new Uint8Array(J.buffer,J.byteOffset,J.byteLength);else if(z5(J))return new Uint8Array(J);else return Uint8Array.from(J)}var H5=100,$5=2048;class Z0{constructor(J){this.entered=!1,this.extensionCodec=J?.extensionCodec??k6.defaultCodec,this.context=J?.context,this.useBigInt64=J?.useBigInt64??!1,this.maxDepth=J?.maxDepth??H5,this.initialBufferSize=J?.initialBufferSize??$5,this.sortKeys=J?.sortKeys??!1,this.forceFloat32=J?.forceFloat32??!1,this.ignoreUndefined=J?.ignoreUndefined??!1,this.forceIntegerToFloat=J?.forceIntegerToFloat??!1,this.pos=0,this.view=new DataView(new ArrayBuffer(this.initialBufferSize)),this.bytes=new Uint8Array(this.view.buffer)}clone(){return new Z0({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,maxDepth:this.maxDepth,initialBufferSize:this.initialBufferSize,sortKeys:this.sortKeys,forceFloat32:this.forceFloat32,ignoreUndefined:this.ignoreUndefined,forceIntegerToFloat:this.forceIntegerToFloat})}reinitializeState(){this.pos=0}encodeSharedRef(J){if(this.entered)return this.clone().encodeSharedRef(J);try{return this.entered=!0,this.reinitializeState(),this.doEncode(J,1),this.bytes.subarray(0,this.pos)}finally{this.entered=!1}}encode(J){if(this.entered)return this.clone().encode(J);try{return this.entered=!0,this.reinitializeState(),this.doEncode(J,1),this.bytes.slice(0,this.pos)}finally{this.entered=!1}}doEncode(J,Q){if(Q>this.maxDepth)throw Error(`Too deep objects in depth ${Q}`);if(J==null)this.encodeNil();else if(typeof J==="boolean")this.encodeBoolean(J);else if(typeof J==="number")if(!this.forceIntegerToFloat)this.encodeNumber(J);else this.encodeNumberAsFloat(J);else if(typeof J==="string")this.encodeString(J);else if(this.useBigInt64&&typeof J==="bigint")this.encodeBigInt64(J);else this.encodeObject(J,Q)}ensureBufferSizeToWrite(J){let Q=this.pos+J;if(this.view.byteLength<Q)this.resizeBuffer(Q*2)}resizeBuffer(J){let Q=new ArrayBuffer(J),W=new Uint8Array(Q),V=new DataView(Q);W.set(this.bytes),this.view=V,this.bytes=W}encodeNil(){this.writeU8(192)}encodeBoolean(J){if(J===!1)this.writeU8(194);else this.writeU8(195)}encodeNumber(J){if(!this.forceIntegerToFloat&&Number.isSafeInteger(J))if(J>=0)if(J<128)this.writeU8(J);else if(J<256)this.writeU8(204),this.writeU8(J);else if(J<65536)this.writeU8(205),this.writeU16(J);else if(J<4294967296)this.writeU8(206),this.writeU32(J);else if(!this.useBigInt64)this.writeU8(207),this.writeU64(J);else this.encodeNumberAsFloat(J);else if(J>=-32)this.writeU8(224|J+32);else if(J>=-128)this.writeU8(208),this.writeI8(J);else if(J>=-32768)this.writeU8(209),this.writeI16(J);else if(J>=-2147483648)this.writeU8(210),this.writeI32(J);else if(!this.useBigInt64)this.writeU8(211),this.writeI64(J);else this.encodeNumberAsFloat(J);else this.encodeNumberAsFloat(J)}encodeNumberAsFloat(J){if(this.forceFloat32)this.writeU8(202),this.writeF32(J);else this.writeU8(203),this.writeF64(J)}encodeBigInt64(J){if(J>=BigInt(0))this.writeU8(207),this.writeBigUint64(J);else this.writeU8(211),this.writeBigInt64(J)}writeStringHeader(J){if(J<32)this.writeU8(160+J);else if(J<256)this.writeU8(217),this.writeU8(J);else if(J<65536)this.writeU8(218),this.writeU16(J);else if(J<4294967296)this.writeU8(219),this.writeU32(J);else throw Error(`Too long string: ${J} bytes in UTF-8`)}encodeString(J){let W=$8(J);this.ensureBufferSizeToWrite(5+W),this.writeStringHeader(W),k8(J,this.bytes,this.pos),this.pos+=W}encodeObject(J,Q){let W=this.extensionCodec.tryToEncode(J,this.context);if(W!=null)this.encodeExtension(W);else if(Array.isArray(J))this.encodeArray(J,Q);else if(ArrayBuffer.isView(J))this.encodeBinary(J);else if(typeof J==="object")this.encodeMap(J,Q);else throw Error(`Unrecognized object: ${Object.prototype.toString.apply(J)}`)}encodeBinary(J){let Q=J.byteLength;if(Q<256)this.writeU8(196),this.writeU8(Q);else if(Q<65536)this.writeU8(197),this.writeU16(Q);else if(Q<4294967296)this.writeU8(198),this.writeU32(Q);else throw Error(`Too large binary: ${Q}`);let W=p6(J);this.writeU8a(W)}encodeArray(J,Q){let W=J.length;if(W<16)this.writeU8(144+W);else if(W<65536)this.writeU8(220),this.writeU16(W);else if(W<4294967296)this.writeU8(221),this.writeU32(W);else throw Error(`Too large array: ${W}`);for(let V of J)this.doEncode(V,Q+1)}countWithoutUndefined(J,Q){let W=0;for(let V of Q)if(J[V]!==void 0)W++;return W}encodeMap(J,Q){let W=Object.keys(J);if(this.sortKeys)W.sort();let V=this.ignoreUndefined?this.countWithoutUndefined(J,W):W.length;if(V<16)this.writeU8(128+V);else if(V<65536)this.writeU8(222),this.writeU16(V);else if(V<4294967296)this.writeU8(223),this.writeU32(V);else throw Error(`Too large map object: ${V}`);for(let G of W){let q=J[G];if(!(this.ignoreUndefined&&q===void 0))this.encodeString(G),this.doEncode(q,Q+1)}}encodeExtension(J){if(typeof J.data==="function"){let W=J.data(this.pos+6),V=W.length;if(V>=4294967296)throw Error(`Too large extension object: ${V}`);this.writeU8(201),this.writeU32(V),this.writeI8(J.type),this.writeU8a(W);return}let Q=J.data.length;if(Q===1)this.writeU8(212);else if(Q===2)this.writeU8(213);else if(Q===4)this.writeU8(214);else if(Q===8)this.writeU8(215);else if(Q===16)this.writeU8(216);else if(Q<256)this.writeU8(199),this.writeU8(Q);else if(Q<65536)this.writeU8(200),this.writeU16(Q);else if(Q<4294967296)this.writeU8(201),this.writeU32(Q);else throw Error(`Too large extension object: ${Q}`);this.writeI8(J.type),this.writeU8a(J.data)}writeU8(J){this.ensureBufferSizeToWrite(1),this.view.setUint8(this.pos,J),this.pos++}writeU8a(J){let Q=J.length;this.ensureBufferSizeToWrite(Q),this.bytes.set(J,this.pos),this.pos+=Q}writeI8(J){this.ensureBufferSizeToWrite(1),this.view.setInt8(this.pos,J),this.pos++}writeU16(J){this.ensureBufferSizeToWrite(2),this.view.setUint16(this.pos,J),this.pos+=2}writeI16(J){this.ensureBufferSizeToWrite(2),this.view.setInt16(this.pos,J),this.pos+=2}writeU32(J){this.ensureBufferSizeToWrite(4),this.view.setUint32(this.pos,J),this.pos+=4}writeI32(J){this.ensureBufferSizeToWrite(4),this.view.setInt32(this.pos,J),this.pos+=4}writeF32(J){this.ensureBufferSizeToWrite(4),this.view.setFloat32(this.pos,J),this.pos+=4}writeF64(J){this.ensureBufferSizeToWrite(8),this.view.setFloat64(this.pos,J),this.pos+=8}writeU64(J){this.ensureBufferSizeToWrite(8),j8(this.view,this.pos,J),this.pos+=8}writeI64(J){this.ensureBufferSizeToWrite(8),K0(this.view,this.pos,J),this.pos+=8}writeBigUint64(J){this.ensureBufferSizeToWrite(8),this.view.setBigUint64(this.pos,J),this.pos+=8}writeBigInt64(J){this.ensureBufferSizeToWrite(8),this.view.setBigInt64(this.pos,J),this.pos+=8}}function u6(J,Q){return new Z0(Q).encodeSharedRef(J)}function z0(J){return`${J<0?"-":""}0x${Math.abs(J).toString(16).padStart(2,"0")}`}var k5=16,B5=16;class T0{constructor(J=k5,Q=B5){this.hit=0,this.miss=0,this.maxKeyLength=J,this.maxLengthPerKey=Q,this.caches=[];for(let W=0;W<this.maxKeyLength;W++)this.caches.push([])}canBeCached(J){return J>0&&J<=this.maxKeyLength}find(J,Q,W){let V=this.caches[W-1];J:for(let G of V){let q=G.bytes;for(let P=0;P<W;P++)if(q[P]!==J[Q+P])continue J;return G.str}return null}store(J,Q){let W=this.caches[J.length-1],V={bytes:J,str:Q};if(W.length>=this.maxLengthPerKey)W[Math.random()*W.length|0]=V;else W.push(V)}decode(J,Q,W){let V=this.find(J,Q,W);if(V!=null)return this.hit++,V;this.miss++;let G=S0(J,Q,W),q=Uint8Array.prototype.slice.call(J,Q,Q+W);return this.store(q,G),G}}var v0="array",_6="map_key",R8="map_value",j5=(J)=>{if(typeof J==="string"||typeof J==="number")return J;throw new l("The type of key must be string or number but "+typeof J)};class I8{constructor(){this.stack=[],this.stackHeadPosition=-1}get length(){return this.stackHeadPosition+1}top(){return this.stack[this.stackHeadPosition]}pushArrayState(J){let Q=this.getUninitializedStateFromPool();Q.type=v0,Q.position=0,Q.size=J,Q.array=Array(J)}pushMapState(J){let Q=this.getUninitializedStateFromPool();Q.type=_6,Q.readCount=0,Q.size=J,Q.map={}}getUninitializedStateFromPool(){if(this.stackHeadPosition++,this.stackHeadPosition===this.stack.length){let J={type:void 0,size:0,array:void 0,position:0,readCount:0,map:void 0,key:null};this.stack.push(J)}return this.stack[this.stackHeadPosition]}release(J){if(this.stack[this.stackHeadPosition]!==J)throw Error("Invalid stack state. Released state is not on top of the stack.");if(J.type===v0){let W=J;W.size=0,W.array=void 0,W.position=0,W.type=void 0}if(J.type===_6||J.type===R8){let W=J;W.size=0,W.map=void 0,W.readCount=0,W.type=void 0}this.stackHeadPosition--}reset(){this.stack.length=0,this.stackHeadPosition=-1}}var m6=-1,g0=new DataView(new ArrayBuffer(0)),C5=new Uint8Array(g0.buffer);try{g0.getInt8(0)}catch(J){if(!(J instanceof RangeError))throw Error("This module is not supported in the current JavaScript engine because DataView does not throw RangeError on out-of-bounds access")}var L8=RangeError("Insufficient data"),M5=new T0;class H0{constructor(J){this.totalPos=0,this.pos=0,this.view=g0,this.bytes=C5,this.headByte=m6,this.stack=new I8,this.entered=!1,this.extensionCodec=J?.extensionCodec??k6.defaultCodec,this.context=J?.context,this.useBigInt64=J?.useBigInt64??!1,this.rawStrings=J?.rawStrings??!1,this.maxStrLength=J?.maxStrLength??w6,this.maxBinLength=J?.maxBinLength??w6,this.maxArrayLength=J?.maxArrayLength??w6,this.maxMapLength=J?.maxMapLength??w6,this.maxExtLength=J?.maxExtLength??w6,this.keyDecoder=J?.keyDecoder!==void 0?J.keyDecoder:M5,this.mapKeyConverter=J?.mapKeyConverter??j5}clone(){return new H0({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,rawStrings:this.rawStrings,maxStrLength:this.maxStrLength,maxBinLength:this.maxBinLength,maxArrayLength:this.maxArrayLength,maxMapLength:this.maxMapLength,maxExtLength:this.maxExtLength,keyDecoder:this.keyDecoder})}reinitializeState(){this.totalPos=0,this.headByte=m6,this.stack.reset()}setBuffer(J){let Q=p6(J);this.bytes=Q,this.view=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),this.pos=0}appendBuffer(J){if(this.headByte===m6&&!this.hasRemaining(1))this.setBuffer(J);else{let Q=this.bytes.subarray(this.pos),W=p6(J),V=new Uint8Array(Q.length+W.length);V.set(Q),V.set(W,Q.length),this.setBuffer(V)}}hasRemaining(J){return this.view.byteLength-this.pos>=J}createExtraByteError(J){let{view:Q,pos:W}=this;return RangeError(`Extra ${Q.byteLength-W} of ${Q.byteLength} byte(s) found at buffer[${J}]`)}decode(J){if(this.entered)return this.clone().decode(J);try{this.entered=!0,this.reinitializeState(),this.setBuffer(J);let Q=this.doDecodeSync();if(this.hasRemaining(1))throw this.createExtraByteError(this.pos);return Q}finally{this.entered=!1}}*decodeMulti(J){if(this.entered){yield*this.clone().decodeMulti(J);return}try{this.entered=!0,this.reinitializeState(),this.setBuffer(J);while(this.hasRemaining(1))yield this.doDecodeSync()}finally{this.entered=!1}}async decodeAsync(J){if(this.entered)return this.clone().decodeAsync(J);try{this.entered=!0;let Q=!1,W;for await(let P of J){if(Q)throw this.entered=!1,this.createExtraByteError(this.totalPos);this.appendBuffer(P);try{W=this.doDecodeSync(),Q=!0}catch(X){if(!(X instanceof RangeError))throw X}this.totalPos+=this.pos}if(Q){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return W}let{headByte:V,pos:G,totalPos:q}=this;throw RangeError(`Insufficient data in parsing ${z0(V)} at ${q} (${G} in the current buffer)`)}finally{this.entered=!1}}decodeArrayStream(J){return this.decodeMultiAsync(J,!0)}decodeStream(J){return this.decodeMultiAsync(J,!1)}async*decodeMultiAsync(J,Q){if(this.entered){yield*this.clone().decodeMultiAsync(J,Q);return}try{this.entered=!0;let W=Q,V=-1;for await(let G of J){if(Q&&V===0)throw this.createExtraByteError(this.totalPos);if(this.appendBuffer(G),W)V=this.readArraySize(),W=!1,this.complete();try{while(!0)if(yield this.doDecodeSync(),--V===0)break}catch(q){if(!(q instanceof RangeError))throw q}this.totalPos+=this.pos}}finally{this.entered=!1}}doDecodeSync(){J:while(!0){let J=this.readHeadByte(),Q;if(J>=224)Q=J-256;else if(J<192)if(J<128)Q=J;else if(J<144){let V=J-128;if(V!==0){this.pushMapState(V),this.complete();continue J}else Q={}}else if(J<160){let V=J-144;if(V!==0){this.pushArrayState(V),this.complete();continue J}else Q=[]}else{let V=J-160;Q=this.decodeString(V,0)}else if(J===192)Q=null;else if(J===194)Q=!1;else if(J===195)Q=!0;else if(J===202)Q=this.readF32();else if(J===203)Q=this.readF64();else if(J===204)Q=this.readU8();else if(J===205)Q=this.readU16();else if(J===206)Q=this.readU32();else if(J===207)if(this.useBigInt64)Q=this.readU64AsBigInt();else Q=this.readU64();else if(J===208)Q=this.readI8();else if(J===209)Q=this.readI16();else if(J===210)Q=this.readI32();else if(J===211)if(this.useBigInt64)Q=this.readI64AsBigInt();else Q=this.readI64();else if(J===217){let V=this.lookU8();Q=this.decodeString(V,1)}else if(J===218){let V=this.lookU16();Q=this.decodeString(V,2)}else if(J===219){let V=this.lookU32();Q=this.decodeString(V,4)}else if(J===220){let V=this.readU16();if(V!==0){this.pushArrayState(V),this.complete();continue J}else Q=[]}else if(J===221){let V=this.readU32();if(V!==0){this.pushArrayState(V),this.complete();continue J}else Q=[]}else if(J===222){let V=this.readU16();if(V!==0){this.pushMapState(V),this.complete();continue J}else Q={}}else if(J===223){let V=this.readU32();if(V!==0){this.pushMapState(V),this.complete();continue J}else Q={}}else if(J===196){let V=this.lookU8();Q=this.decodeBinary(V,1)}else if(J===197){let V=this.lookU16();Q=this.decodeBinary(V,2)}else if(J===198){let V=this.lookU32();Q=this.decodeBinary(V,4)}else if(J===212)Q=this.decodeExtension(1,0);else if(J===213)Q=this.decodeExtension(2,0);else if(J===214)Q=this.decodeExtension(4,0);else if(J===215)Q=this.decodeExtension(8,0);else if(J===216)Q=this.decodeExtension(16,0);else if(J===199){let V=this.lookU8();Q=this.decodeExtension(V,1)}else if(J===200){let V=this.lookU16();Q=this.decodeExtension(V,2)}else if(J===201){let V=this.lookU32();Q=this.decodeExtension(V,4)}else throw new l(`Unrecognized type byte: ${z0(J)}`);this.complete();let W=this.stack;while(W.length>0){let V=W.top();if(V.type===v0)if(V.array[V.position]=Q,V.position++,V.position===V.size)Q=V.array,W.release(V);else continue J;else if(V.type===_6){if(Q==="__proto__")throw new l("The key __proto__ is not allowed");V.key=this.mapKeyConverter(Q),V.type=R8;continue J}else if(V.map[V.key]=Q,V.readCount++,V.readCount===V.size)Q=V.map,W.release(V);else{V.key=null,V.type=_6;continue J}}return Q}}readHeadByte(){if(this.headByte===m6)this.headByte=this.readU8();return this.headByte}complete(){this.headByte=m6}readArraySize(){let J=this.readHeadByte();switch(J){case 220:return this.readU16();case 221:return this.readU32();default:if(J<160)return J-144;else throw new l(`Unrecognized array type byte: ${z0(J)}`)}}pushMapState(J){if(J>this.maxMapLength)throw new l(`Max length exceeded: map length (${J}) > maxMapLengthLength (${this.maxMapLength})`);this.stack.pushMapState(J)}pushArrayState(J){if(J>this.maxArrayLength)throw new l(`Max length exceeded: array length (${J}) > maxArrayLength (${this.maxArrayLength})`);this.stack.pushArrayState(J)}decodeString(J,Q){if(!this.rawStrings||this.stateIsMapKey())return this.decodeUtf8String(J,Q);return this.decodeBinary(J,Q)}decodeUtf8String(J,Q){if(J>this.maxStrLength)throw new l(`Max length exceeded: UTF-8 byte length (${J}) > maxStrLength (${this.maxStrLength})`);if(this.bytes.byteLength<this.pos+Q+J)throw L8;let W=this.pos+Q,V;if(this.stateIsMapKey()&&this.keyDecoder?.canBeCached(J))V=this.keyDecoder.decode(this.bytes,W,J);else V=B8(this.bytes,W,J);return this.pos+=Q+J,V}stateIsMapKey(){if(this.stack.length>0)return this.stack.top().type===_6;return!1}decodeBinary(J,Q){if(J>this.maxBinLength)throw new l(`Max length exceeded: bin length (${J}) > maxBinLength (${this.maxBinLength})`);if(!this.hasRemaining(J+Q))throw L8;let W=this.pos+Q,V=this.bytes.subarray(W,W+J);return this.pos+=Q+J,V}decodeExtension(J,Q){if(J>this.maxExtLength)throw new l(`Max length exceeded: ext length (${J}) > maxExtLength (${this.maxExtLength})`);let W=this.view.getInt8(this.pos+Q),V=this.decodeBinary(J,Q+1);return this.extensionCodec.decode(V,W,this.context)}lookU8(){return this.view.getUint8(this.pos)}lookU16(){return this.view.getUint16(this.pos)}lookU32(){return this.view.getUint32(this.pos)}readU8(){let J=this.view.getUint8(this.pos);return this.pos++,J}readI8(){let J=this.view.getInt8(this.pos);return this.pos++,J}readU16(){let J=this.view.getUint16(this.pos);return this.pos+=2,J}readI16(){let J=this.view.getInt16(this.pos);return this.pos+=2,J}readU32(){let J=this.view.getUint32(this.pos);return this.pos+=4,J}readI32(){let J=this.view.getInt32(this.pos);return this.pos+=4,J}readU64(){let J=C8(this.view,this.pos);return this.pos+=8,J}readI64(){let J=F0(this.view,this.pos);return this.pos+=8,J}readU64AsBigInt(){let J=this.view.getBigUint64(this.pos);return this.pos+=8,J}readI64AsBigInt(){let J=this.view.getBigInt64(this.pos);return this.pos+=8,J}readF32(){let J=this.view.getFloat32(this.pos);return this.pos+=4,J}readF64(){let J=this.view.getFloat64(this.pos);return this.pos+=8,J}}function B6(J,Q){return new H0(Q).decode(J)}/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */function y6(J){let Q=J.length;while(--Q>=0)J[Q]=0}var L5=0,PJ=1,R5=2,I5=3,O5=258,V8=29,V0=256,o6=V0+1+V8,v6=30,G8=19,UJ=2*o6+1,j6=15,E0=16,x5=7,q8=256,KJ=16,FJ=17,ZJ=18,r0=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]),M0=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]),D5=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),zJ=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),A5=512,X6=Array((o6+2)*2);y6(X6);var i6=Array(v6*2);y6(i6);var a6=Array(A5);y6(a6);var s6=Array(O5-I5+1);y6(s6);var X8=Array(V8);y6(X8);var L0=Array(v6);y6(L0);function y0(J,Q,W,V,G){this.static_tree=J,this.extra_bits=Q,this.extra_base=W,this.elems=V,this.max_length=G,this.has_stree=J&&J.length}var HJ,$J,kJ;function f0(J,Q){this.dyn_tree=J,this.max_code=0,this.stat_desc=Q}var BJ=(J)=>{return J<256?a6[J]:a6[256+(J>>>7)]},t6=(J,Q)=>{J.pending_buf[J.pending++]=Q&255,J.pending_buf[J.pending++]=Q>>>8&255},n=(J,Q,W)=>{if(J.bi_valid>E0-W)J.bi_buf|=Q<<J.bi_valid&65535,t6(J,J.bi_buf),J.bi_buf=Q>>E0-J.bi_valid,J.bi_valid+=W-E0;else J.bi_buf|=Q<<J.bi_valid&65535,J.bi_valid+=W},W6=(J,Q,W)=>{n(J,W[Q*2],W[Q*2+1])},jJ=(J,Q)=>{let W=0;do W|=J&1,J>>>=1,W<<=1;while(--Q>0);return W>>>1},N5=(J)=>{if(J.bi_valid===16)t6(J,J.bi_buf),J.bi_buf=0,J.bi_valid=0;else if(J.bi_valid>=8)J.pending_buf[J.pending++]=J.bi_buf&255,J.bi_buf>>=8,J.bi_valid-=8},w5=(J,Q)=>{let{dyn_tree:W,max_code:V}=Q,G=Q.stat_desc.static_tree,q=Q.stat_desc.has_stree,P=Q.stat_desc.extra_bits,X=Q.stat_desc.extra_base,Z=Q.stat_desc.max_length,Y,U,k,F,K,z,I=0;for(F=0;F<=j6;F++)J.bl_count[F]=0;W[J.heap[J.heap_max]*2+1]=0;for(Y=J.heap_max+1;Y<UJ;Y++){if(U=J.heap[Y],F=W[W[U*2+1]*2+1]+1,F>Z)F=Z,I++;if(W[U*2+1]=F,U>V)continue;if(J.bl_count[F]++,K=0,U>=X)K=P[U-X];if(z=W[U*2],J.opt_len+=z*(F+K),q)J.static_len+=z*(G[U*2+1]+K)}if(I===0)return;do{F=Z-1;while(J.bl_count[F]===0)F--;J.bl_count[F]--,J.bl_count[F+1]+=2,J.bl_count[Z]--,I-=2}while(I>0);for(F=Z;F!==0;F--){U=J.bl_count[F];while(U!==0){if(k=J.heap[--Y],k>V)continue;if(W[k*2+1]!==F)J.opt_len+=(F-W[k*2+1])*W[k*2],W[k*2+1]=F;U--}}},CJ=(J,Q,W)=>{let V=Array(j6+1),G=0,q,P;for(q=1;q<=j6;q++)G=G+W[q-1]<<1,V[q]=G;for(P=0;P<=Q;P++){let X=J[P*2+1];if(X===0)continue;J[P*2]=jJ(V[X]++,X)}},S5=()=>{let J,Q,W,V,G,q=Array(j6+1);W=0;for(V=0;V<V8-1;V++){X8[V]=W;for(J=0;J<1<<r0[V];J++)s6[W++]=V}s6[W-1]=V,G=0;for(V=0;V<16;V++){L0[V]=G;for(J=0;J<1<<M0[V];J++)a6[G++]=V}G>>=7;for(;V<v6;V++){L0[V]=G<<7;for(J=0;J<1<<M0[V]-7;J++)a6[256+G++]=V}for(Q=0;Q<=j6;Q++)q[Q]=0;J=0;while(J<=143)X6[J*2+1]=8,J++,q[8]++;while(J<=255)X6[J*2+1]=9,J++,q[9]++;while(J<=279)X6[J*2+1]=7,J++,q[7]++;while(J<=287)X6[J*2+1]=8,J++,q[8]++;CJ(X6,o6+1,q);for(J=0;J<v6;J++)i6[J*2+1]=5,i6[J*2]=jJ(J,5);HJ=new y0(X6,r0,V0+1,o6,j6),$J=new y0(i6,M0,0,v6,j6),kJ=new y0([],D5,0,G8,x5)},MJ=(J)=>{let Q;for(Q=0;Q<o6;Q++)J.dyn_ltree[Q*2]=0;for(Q=0;Q<v6;Q++)J.dyn_dtree[Q*2]=0;for(Q=0;Q<G8;Q++)J.bl_tree[Q*2]=0;J.dyn_ltree[q8*2]=1,J.opt_len=J.static_len=0,J.sym_next=J.matches=0},LJ=(J)=>{if(J.bi_valid>8)t6(J,J.bi_buf);else if(J.bi_valid>0)J.pending_buf[J.pending++]=J.bi_buf;J.bi_buf=0,J.bi_valid=0},O8=(J,Q,W,V)=>{let G=Q*2,q=W*2;return J[G]<J[q]||J[G]===J[q]&&V[Q]<=V[W]},b0=(J,Q,W)=>{let V=J.heap[W],G=W<<1;while(G<=J.heap_len){if(G<J.heap_len&&O8(Q,J.heap[G+1],J.heap[G],J.depth))G++;if(O8(Q,V,J.heap[G],J.depth))break;J.heap[W]=J.heap[G],W=G,G<<=1}J.heap[W]=V},x8=(J,Q,W)=>{let V,G,q=0,P,X;if(J.sym_next!==0)do if(V=J.pending_buf[J.sym_buf+q++]&255,V+=(J.pending_buf[J.sym_buf+q++]&255)<<8,G=J.pending_buf[J.sym_buf+q++],V===0)W6(J,G,Q);else{if(P=s6[G],W6(J,P+V0+1,Q),X=r0[P],X!==0)G-=X8[P],n(J,G,X);if(V--,P=BJ(V),W6(J,P,W),X=M0[P],X!==0)V-=L0[P],n(J,V,X)}while(q<J.sym_next);W6(J,q8,Q)},o0=(J,Q)=>{let W=Q.dyn_tree,V=Q.stat_desc.static_tree,G=Q.stat_desc.has_stree,q=Q.stat_desc.elems,P,X,Z=-1,Y;J.heap_len=0,J.heap_max=UJ;for(P=0;P<q;P++)if(W[P*2]!==0)J.heap[++J.heap_len]=Z=P,J.depth[P]=0;else W[P*2+1]=0;while(J.heap_len<2)if(Y=J.heap[++J.heap_len]=Z<2?++Z:0,W[Y*2]=1,J.depth[Y]=0,J.opt_len--,G)J.static_len-=V[Y*2+1];Q.max_code=Z;for(P=J.heap_len>>1;P>=1;P--)b0(J,W,P);Y=q;do P=J.heap[1],J.heap[1]=J.heap[J.heap_len--],b0(J,W,1),X=J.heap[1],J.heap[--J.heap_max]=P,J.heap[--J.heap_max]=X,W[Y*2]=W[P*2]+W[X*2],J.depth[Y]=(J.depth[P]>=J.depth[X]?J.depth[P]:J.depth[X])+1,W[P*2+1]=W[X*2+1]=Y,J.heap[1]=Y++,b0(J,W,1);while(J.heap_len>=2);J.heap[--J.heap_max]=J.heap[1],w5(J,Q),CJ(W,Z,J.bl_count)},D8=(J,Q,W)=>{let V,G=-1,q,P=Q[1],X=0,Z=7,Y=4;if(P===0)Z=138,Y=3;Q[(W+1)*2+1]=65535;for(V=0;V<=W;V++){if(q=P,P=Q[(V+1)*2+1],++X<Z&&q===P)continue;else if(X<Y)J.bl_tree[q*2]+=X;else if(q!==0){if(q!==G)J.bl_tree[q*2]++;J.bl_tree[KJ*2]++}else if(X<=10)J.bl_tree[FJ*2]++;else J.bl_tree[ZJ*2]++;if(X=0,G=q,P===0)Z=138,Y=3;else if(q===P)Z=6,Y=3;else Z=7,Y=4}},A8=(J,Q,W)=>{let V,G=-1,q,P=Q[1],X=0,Z=7,Y=4;if(P===0)Z=138,Y=3;for(V=0;V<=W;V++){if(q=P,P=Q[(V+1)*2+1],++X<Z&&q===P)continue;else if(X<Y)do W6(J,q,J.bl_tree);while(--X!==0);else if(q!==0){if(q!==G)W6(J,q,J.bl_tree),X--;W6(J,KJ,J.bl_tree),n(J,X-3,2)}else if(X<=10)W6(J,FJ,J.bl_tree),n(J,X-3,3);else W6(J,ZJ,J.bl_tree),n(J,X-11,7);if(X=0,G=q,P===0)Z=138,Y=3;else if(q===P)Z=6,Y=3;else Z=7,Y=4}},T5=(J)=>{let Q;D8(J,J.dyn_ltree,J.l_desc.max_code),D8(J,J.dyn_dtree,J.d_desc.max_code),o0(J,J.bl_desc);for(Q=G8-1;Q>=3;Q--)if(J.bl_tree[zJ[Q]*2+1]!==0)break;return J.opt_len+=3*(Q+1)+5+5+4,Q},v5=(J,Q,W,V)=>{let G;n(J,Q-257,5),n(J,W-1,5),n(J,V-4,4);for(G=0;G<V;G++)n(J,J.bl_tree[zJ[G]*2+1],3);A8(J,J.dyn_ltree,Q-1),A8(J,J.dyn_dtree,W-1)},g5=(J)=>{let Q=4093624447,W;for(W=0;W<=31;W++,Q>>>=1)if(Q&1&&J.dyn_ltree[W*2]!==0)return 0;if(J.dyn_ltree[18]!==0||J.dyn_ltree[20]!==0||J.dyn_ltree[26]!==0)return 1;for(W=32;W<V0;W++)if(J.dyn_ltree[W*2]!==0)return 1;return 0},N8=!1,E5=(J)=>{if(!N8)S5(),N8=!0;J.l_desc=new f0(J.dyn_ltree,HJ),J.d_desc=new f0(J.dyn_dtree,$J),J.bl_desc=new f0(J.bl_tree,kJ),J.bi_buf=0,J.bi_valid=0,MJ(J)},RJ=(J,Q,W,V)=>{if(n(J,(L5<<1)+(V?1:0),3),LJ(J),t6(J,W),t6(J,~W),W)J.pending_buf.set(J.window.subarray(Q,Q+W),J.pending);J.pending+=W},y5=(J)=>{n(J,PJ<<1,3),W6(J,q8,X6),N5(J)},f5=(J,Q,W,V)=>{let G,q,P=0;if(J.level>0){if(J.strm.data_type===2)J.strm.data_type=g5(J);if(o0(J,J.l_desc),o0(J,J.d_desc),P=T5(J),G=J.opt_len+3+7>>>3,q=J.static_len+3+7>>>3,q<=G)G=q}else G=q=W+5;if(W+4<=G&&Q!==-1)RJ(J,Q,W,V);else if(J.strategy===4||q===G)n(J,(PJ<<1)+(V?1:0),3),x8(J,X6,i6);else n(J,(R5<<1)+(V?1:0),3),v5(J,J.l_desc.max_code+1,J.d_desc.max_code+1,P+1),x8(J,J.dyn_ltree,J.dyn_dtree);if(MJ(J),V)LJ(J)},b5=(J,Q,W)=>{if(J.pending_buf[J.sym_buf+J.sym_next++]=Q,J.pending_buf[J.sym_buf+J.sym_next++]=Q>>8,J.pending_buf[J.sym_buf+J.sym_next++]=W,Q===0)J.dyn_ltree[W*2]++;else J.matches++,Q--,J.dyn_ltree[(s6[W]+V0+1)*2]++,J.dyn_dtree[BJ(Q)*2]++;return J.sym_next===J.sym_end},h5=E5,p5=RJ,u5=f5,m5=b5,_5=y5,c5={_tr_init:h5,_tr_stored_block:p5,_tr_flush_block:u5,_tr_tally:m5,_tr_align:_5},d5=(J,Q,W,V)=>{let G=J&65535|0,q=J>>>16&65535|0,P=0;while(W!==0){P=W>2000?2000:W,W-=P;do G=G+Q[V++]|0,q=q+G|0;while(--P);G%=65521,q%=65521}return G|q<<16|0},e6=d5,l5=()=>{let J,Q=[];for(var W=0;W<256;W++){J=W;for(var V=0;V<8;V++)J=J&1?3988292384^J>>>1:J>>>1;Q[W]=J}return Q},i5=new Uint32Array(l5()),n5=(J,Q,W,V)=>{let G=i5,q=V+W;J^=-1;for(let P=V;P<q;P++)J=J>>>8^G[(J^Q[P])&255];return J^-1},c=n5,L6={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"},O6={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:r5,_tr_stored_block:a0,_tr_flush_block:o5,_tr_tally:z6,_tr_align:a5}=c5,{Z_NO_FLUSH:H6,Z_PARTIAL_FLUSH:s5,Z_FULL_FLUSH:t5,Z_FINISH:a,Z_BLOCK:w8,Z_OK:d,Z_STREAM_END:S8,Z_STREAM_ERROR:Q6,Z_DATA_ERROR:e5,Z_BUF_ERROR:h0,Z_DEFAULT_COMPRESSION:J1,Z_FILTERED:W1,Z_HUFFMAN_ONLY:$0,Z_RLE:Q1,Z_FIXED:V1,Z_DEFAULT_STRATEGY:G1,Z_UNKNOWN:q1,Z_DEFLATED:O0}=O6,X1=9,Y1=15,P1=8,U1=29,K1=256,s0=K1+1+U1,F1=30,Z1=19,z1=2*s0+1,H1=15,v=3,Z6=258,V6=Z6+v+1,$1=32,g6=42,Y8=57,t0=69,e0=73,J8=91,W8=103,C6=113,d6=666,i=1,f6=2,R6=3,b6=4,k1=3,M6=(J,Q)=>{return J.msg=L6[Q],Q},T8=(J)=>{return J*2-(J>4?9:0)},F6=(J)=>{let Q=J.length;while(--Q>=0)J[Q]=0},B1=(J)=>{let Q,W,V,G=J.w_size;Q=J.hash_size,V=Q;do W=J.head[--V],J.head[V]=W>=G?W-G:0;while(--Q);Q=G,V=Q;do W=J.prev[--V],J.prev[V]=W>=G?W-G:0;while(--Q)},j1=(J,Q,W)=>(Q<<J.hash_shift^W)&J.hash_mask,$6=j1,r=(J)=>{let Q=J.state,W=Q.pending;if(W>J.avail_out)W=J.avail_out;if(W===0)return;if(J.output.set(Q.pending_buf.subarray(Q.pending_out,Q.pending_out+W),J.next_out),J.next_out+=W,Q.pending_out+=W,J.total_out+=W,J.avail_out-=W,Q.pending-=W,Q.pending===0)Q.pending_out=0},o=(J,Q)=>{o5(J,J.block_start>=0?J.block_start:-1,J.strstart-J.block_start,Q),J.block_start=J.strstart,r(J.strm)},E=(J,Q)=>{J.pending_buf[J.pending++]=Q},c6=(J,Q)=>{J.pending_buf[J.pending++]=Q>>>8&255,J.pending_buf[J.pending++]=Q&255},Q8=(J,Q,W,V)=>{let G=J.avail_in;if(G>V)G=V;if(G===0)return 0;if(J.avail_in-=G,Q.set(J.input.subarray(J.next_in,J.next_in+G),W),J.state.wrap===1)J.adler=e6(J.adler,Q,G,W);else if(J.state.wrap===2)J.adler=c(J.adler,Q,G,W);return J.next_in+=G,J.total_in+=G,G},IJ=(J,Q)=>{let{max_chain_length:W,strstart:V}=J,G,q,P=J.prev_length,X=J.nice_match,Z=J.strstart>J.w_size-V6?J.strstart-(J.w_size-V6):0,Y=J.window,U=J.w_mask,k=J.prev,F=J.strstart+Z6,K=Y[V+P-1],z=Y[V+P];if(J.prev_length>=J.good_match)W>>=2;if(X>J.lookahead)X=J.lookahead;do{if(G=Q,Y[G+P]!==z||Y[G+P-1]!==K||Y[G]!==Y[V]||Y[++G]!==Y[V+1])continue;V+=2,G++;do;while(Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&V<F);if(q=Z6-(F-V),V=F-Z6,q>P){if(J.match_start=Q,P=q,q>=X)break;K=Y[V+P-1],z=Y[V+P]}}while((Q=k[Q&U])>Z&&--W!==0);if(P<=J.lookahead)return P;return J.lookahead},E6=(J)=>{let Q=J.w_size,W,V,G;do{if(V=J.window_size-J.lookahead-J.strstart,J.strstart>=Q+(Q-V6)){if(J.window.set(J.window.subarray(Q,Q+Q-V),0),J.match_start-=Q,J.strstart-=Q,J.block_start-=Q,J.insert>J.strstart)J.insert=J.strstart;B1(J),V+=Q}if(J.strm.avail_in===0)break;if(W=Q8(J.strm,J.window,J.strstart+J.lookahead,V),J.lookahead+=W,J.lookahead+J.insert>=v){G=J.strstart-J.insert,J.ins_h=J.window[G],J.ins_h=$6(J,J.ins_h,J.window[G+1]);while(J.insert)if(J.ins_h=$6(J,J.ins_h,J.window[G+v-1]),J.prev[G&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=G,G++,J.insert--,J.lookahead+J.insert<v)break}}while(J.lookahead<V6&&J.strm.avail_in!==0)},OJ=(J,Q)=>{let W=J.pending_buf_size-5>J.w_size?J.w_size:J.pending_buf_size-5,V,G,q,P=0,X=J.strm.avail_in;do{if(V=65535,q=J.bi_valid+42>>3,J.strm.avail_out<q)break;if(q=J.strm.avail_out-q,G=J.strstart-J.block_start,V>G+J.strm.avail_in)V=G+J.strm.avail_in;if(V>q)V=q;if(V<W&&(V===0&&Q!==a||Q===H6||V!==G+J.strm.avail_in))break;if(P=Q===a&&V===G+J.strm.avail_in?1:0,a0(J,0,0,P),J.pending_buf[J.pending-4]=V,J.pending_buf[J.pending-3]=V>>8,J.pending_buf[J.pending-2]=~V,J.pending_buf[J.pending-1]=~V>>8,r(J.strm),G){if(G>V)G=V;J.strm.output.set(J.window.subarray(J.block_start,J.block_start+G),J.strm.next_out),J.strm.next_out+=G,J.strm.avail_out-=G,J.strm.total_out+=G,J.block_start+=G,V-=G}if(V)Q8(J.strm,J.strm.output,J.strm.next_out,V),J.strm.next_out+=V,J.strm.avail_out-=V,J.strm.total_out+=V}while(P===0);if(X-=J.strm.avail_in,X){if(X>=J.w_size)J.matches=2,J.window.set(J.strm.input.subarray(J.strm.next_in-J.w_size,J.strm.next_in),0),J.strstart=J.w_size,J.insert=J.strstart;else{if(J.window_size-J.strstart<=X){if(J.strstart-=J.w_size,J.window.set(J.window.subarray(J.w_size,J.w_size+J.strstart),0),J.matches<2)J.matches++;if(J.insert>J.strstart)J.insert=J.strstart}J.window.set(J.strm.input.subarray(J.strm.next_in-X,J.strm.next_in),J.strstart),J.strstart+=X,J.insert+=X>J.w_size-J.insert?J.w_size-J.insert:X}J.block_start=J.strstart}if(J.high_water<J.strstart)J.high_water=J.strstart;if(P)return b6;if(Q!==H6&&Q!==a&&J.strm.avail_in===0&&J.strstart===J.block_start)return f6;if(q=J.window_size-J.strstart,J.strm.avail_in>q&&J.block_start>=J.w_size){if(J.block_start-=J.w_size,J.strstart-=J.w_size,J.window.set(J.window.subarray(J.w_size,J.w_size+J.strstart),0),J.matches<2)J.matches++;if(q+=J.w_size,J.insert>J.strstart)J.insert=J.strstart}if(q>J.strm.avail_in)q=J.strm.avail_in;if(q)Q8(J.strm,J.window,J.strstart,q),J.strstart+=q,J.insert+=q>J.w_size-J.insert?J.w_size-J.insert:q;if(J.high_water<J.strstart)J.high_water=J.strstart;if(q=J.bi_valid+42>>3,q=J.pending_buf_size-q>65535?65535:J.pending_buf_size-q,W=q>J.w_size?J.w_size:q,G=J.strstart-J.block_start,G>=W||(G||Q===a)&&Q!==H6&&J.strm.avail_in===0&&G<=q)V=G>q?q:G,P=Q===a&&J.strm.avail_in===0&&V===G?1:0,a0(J,J.block_start,V,P),J.block_start+=V,r(J.strm);return P?R6:i},p0=(J,Q)=>{let W,V;for(;;){if(J.lookahead<V6){if(E6(J),J.lookahead<V6&&Q===H6)return i;if(J.lookahead===0)break}if(W=0,J.lookahead>=v)J.ins_h=$6(J,J.ins_h,J.window[J.strstart+v-1]),W=J.prev[J.strstart&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=J.strstart;if(W!==0&&J.strstart-W<=J.w_size-V6)J.match_length=IJ(J,W);if(J.match_length>=v)if(V=z6(J,J.strstart-J.match_start,J.match_length-v),J.lookahead-=J.match_length,J.match_length<=J.max_lazy_match&&J.lookahead>=v){J.match_length--;do J.strstart++,J.ins_h=$6(J,J.ins_h,J.window[J.strstart+v-1]),W=J.prev[J.strstart&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=J.strstart;while(--J.match_length!==0);J.strstart++}else J.strstart+=J.match_length,J.match_length=0,J.ins_h=J.window[J.strstart],J.ins_h=$6(J,J.ins_h,J.window[J.strstart+1]);else V=z6(J,0,J.window[J.strstart]),J.lookahead--,J.strstart++;if(V){if(o(J,!1),J.strm.avail_out===0)return i}}if(J.insert=J.strstart<v-1?J.strstart:v-1,Q===a){if(o(J,!0),J.strm.avail_out===0)return R6;return b6}if(J.sym_next){if(o(J,!1),J.strm.avail_out===0)return i}return f6},S6=(J,Q)=>{let W,V,G;for(;;){if(J.lookahead<V6){if(E6(J),J.lookahead<V6&&Q===H6)return i;if(J.lookahead===0)break}if(W=0,J.lookahead>=v)J.ins_h=$6(J,J.ins_h,J.window[J.strstart+v-1]),W=J.prev[J.strstart&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=J.strstart;if(J.prev_length=J.match_length,J.prev_match=J.match_start,J.match_length=v-1,W!==0&&J.prev_length<J.max_lazy_match&&J.strstart-W<=J.w_size-V6){if(J.match_length=IJ(J,W),J.match_length<=5&&(J.strategy===W1||J.match_length===v&&J.strstart-J.match_start>4096))J.match_length=v-1}if(J.prev_length>=v&&J.match_length<=J.prev_length){G=J.strstart+J.lookahead-v,V=z6(J,J.strstart-1-J.prev_match,J.prev_length-v),J.lookahead-=J.prev_length-1,J.prev_length-=2;do if(++J.strstart<=G)J.ins_h=$6(J,J.ins_h,J.window[J.strstart+v-1]),W=J.prev[J.strstart&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=J.strstart;while(--J.prev_length!==0);if(J.match_available=0,J.match_length=v-1,J.strstart++,V){if(o(J,!1),J.strm.avail_out===0)return i}}else if(J.match_available){if(V=z6(J,0,J.window[J.strstart-1]),V)o(J,!1);if(J.strstart++,J.lookahead--,J.strm.avail_out===0)return i}else J.match_available=1,J.strstart++,J.lookahead--}if(J.match_available)V=z6(J,0,J.window[J.strstart-1]),J.match_available=0;if(J.insert=J.strstart<v-1?J.strstart:v-1,Q===a){if(o(J,!0),J.strm.avail_out===0)return R6;return b6}if(J.sym_next){if(o(J,!1),J.strm.avail_out===0)return i}return f6},C1=(J,Q)=>{let W,V,G,q,P=J.window;for(;;){if(J.lookahead<=Z6){if(E6(J),J.lookahead<=Z6&&Q===H6)return i;if(J.lookahead===0)break}if(J.match_length=0,J.lookahead>=v&&J.strstart>0){if(G=J.strstart-1,V=P[G],V===P[++G]&&V===P[++G]&&V===P[++G]){q=J.strstart+Z6;do;while(V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&G<q);if(J.match_length=Z6-(q-G),J.match_length>J.lookahead)J.match_length=J.lookahead}}if(J.match_length>=v)W=z6(J,1,J.match_length-v),J.lookahead-=J.match_length,J.strstart+=J.match_length,J.match_length=0;else W=z6(J,0,J.window[J.strstart]),J.lookahead--,J.strstart++;if(W){if(o(J,!1),J.strm.avail_out===0)return i}}if(J.insert=0,Q===a){if(o(J,!0),J.strm.avail_out===0)return R6;return b6}if(J.sym_next){if(o(J,!1),J.strm.avail_out===0)return i}return f6},M1=(J,Q)=>{let W;for(;;){if(J.lookahead===0){if(E6(J),J.lookahead===0){if(Q===H6)return i;break}}if(J.match_length=0,W=z6(J,0,J.window[J.strstart]),J.lookahead--,J.strstart++,W){if(o(J,!1),J.strm.avail_out===0)return i}}if(J.insert=0,Q===a){if(o(J,!0),J.strm.avail_out===0)return R6;return b6}if(J.sym_next){if(o(J,!1),J.strm.avail_out===0)return i}return f6};function J6(J,Q,W,V,G){this.good_length=J,this.max_lazy=Q,this.nice_length=W,this.max_chain=V,this.func=G}var l6=[new J6(0,0,0,0,OJ),new J6(4,4,8,4,p0),new J6(4,5,16,8,p0),new J6(4,6,32,32,p0),new J6(4,4,16,16,S6),new J6(8,16,32,32,S6),new J6(8,16,128,128,S6),new J6(8,32,128,256,S6),new J6(32,128,258,1024,S6),new J6(32,258,258,4096,S6)],L1=(J)=>{J.window_size=2*J.w_size,F6(J.head),J.max_lazy_match=l6[J.level].max_lazy,J.good_match=l6[J.level].good_length,J.nice_match=l6[J.level].nice_length,J.max_chain_length=l6[J.level].max_chain,J.strstart=0,J.block_start=0,J.lookahead=0,J.insert=0,J.match_length=J.prev_length=v-1,J.match_available=0,J.ins_h=0};function R1(){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=O0,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(z1*2),this.dyn_dtree=new Uint16Array((2*F1+1)*2),this.bl_tree=new Uint16Array((2*Z1+1)*2),F6(this.dyn_ltree),F6(this.dyn_dtree),F6(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(H1+1),this.heap=new Uint16Array(2*s0+1),F6(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*s0+1),F6(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}var G0=(J)=>{if(!J)return 1;let Q=J.state;if(!Q||Q.strm!==J||Q.status!==g6&&Q.status!==Y8&&Q.status!==t0&&Q.status!==e0&&Q.status!==J8&&Q.status!==W8&&Q.status!==C6&&Q.status!==d6)return 1;return 0},xJ=(J)=>{if(G0(J))return M6(J,Q6);J.total_in=J.total_out=0,J.data_type=q1;let Q=J.state;if(Q.pending=0,Q.pending_out=0,Q.wrap<0)Q.wrap=-Q.wrap;return Q.status=Q.wrap===2?Y8:Q.wrap?g6:C6,J.adler=Q.wrap===2?0:1,Q.last_flush=-2,r5(Q),d},DJ=(J)=>{let Q=xJ(J);if(Q===d)L1(J.state);return Q},I1=(J,Q)=>{if(G0(J)||J.state.wrap!==2)return Q6;return J.state.gzhead=Q,d},AJ=(J,Q,W,V,G,q)=>{if(!J)return Q6;let P=1;if(Q===J1)Q=6;if(V<0)P=0,V=-V;else if(V>15)P=2,V-=16;if(G<1||G>X1||W!==O0||V<8||V>15||Q<0||Q>9||q<0||q>V1||V===8&&P!==1)return M6(J,Q6);if(V===8)V=9;let X=new R1;return J.state=X,X.strm=J,X.status=g6,X.wrap=P,X.gzhead=null,X.w_bits=V,X.w_size=1<<X.w_bits,X.w_mask=X.w_size-1,X.hash_bits=G+7,X.hash_size=1<<X.hash_bits,X.hash_mask=X.hash_size-1,X.hash_shift=~~((X.hash_bits+v-1)/v),X.window=new Uint8Array(X.w_size*2),X.head=new Uint16Array(X.hash_size),X.prev=new Uint16Array(X.w_size),X.lit_bufsize=1<<G+6,X.pending_buf_size=X.lit_bufsize*4,X.pending_buf=new Uint8Array(X.pending_buf_size),X.sym_buf=X.lit_bufsize,X.sym_end=(X.lit_bufsize-1)*3,X.level=Q,X.strategy=q,X.method=W,DJ(J)},O1=(J,Q)=>{return AJ(J,Q,O0,Y1,P1,G1)},x1=(J,Q)=>{if(G0(J)||Q>w8||Q<0)return J?M6(J,Q6):Q6;let W=J.state;if(!J.output||J.avail_in!==0&&!J.input||W.status===d6&&Q!==a)return M6(J,J.avail_out===0?h0:Q6);let V=W.last_flush;if(W.last_flush=Q,W.pending!==0){if(r(J),J.avail_out===0)return W.last_flush=-1,d}else if(J.avail_in===0&&T8(Q)<=T8(V)&&Q!==a)return M6(J,h0);if(W.status===d6&&J.avail_in!==0)return M6(J,h0);if(W.status===g6&&W.wrap===0)W.status=C6;if(W.status===g6){let G=O0+(W.w_bits-8<<4)<<8,q=-1;if(W.strategy>=$0||W.level<2)q=0;else if(W.level<6)q=1;else if(W.level===6)q=2;else q=3;if(G|=q<<6,W.strstart!==0)G|=$1;if(G+=31-G%31,c6(W,G),W.strstart!==0)c6(W,J.adler>>>16),c6(W,J.adler&65535);if(J.adler=1,W.status=C6,r(J),W.pending!==0)return W.last_flush=-1,d}if(W.status===Y8)if(J.adler=0,E(W,31),E(W,139),E(W,8),!W.gzhead){if(E(W,0),E(W,0),E(W,0),E(W,0),E(W,0),E(W,W.level===9?2:W.strategy>=$0||W.level<2?4:0),E(W,k1),W.status=C6,r(J),W.pending!==0)return W.last_flush=-1,d}else{if(E(W,(W.gzhead.text?1:0)+(W.gzhead.hcrc?2:0)+(!W.gzhead.extra?0:4)+(!W.gzhead.name?0:8)+(!W.gzhead.comment?0:16)),E(W,W.gzhead.time&255),E(W,W.gzhead.time>>8&255),E(W,W.gzhead.time>>16&255),E(W,W.gzhead.time>>24&255),E(W,W.level===9?2:W.strategy>=$0||W.level<2?4:0),E(W,W.gzhead.os&255),W.gzhead.extra&&W.gzhead.extra.length)E(W,W.gzhead.extra.length&255),E(W,W.gzhead.extra.length>>8&255);if(W.gzhead.hcrc)J.adler=c(J.adler,W.pending_buf,W.pending,0);W.gzindex=0,W.status=t0}if(W.status===t0){if(W.gzhead.extra){let G=W.pending,q=(W.gzhead.extra.length&65535)-W.gzindex;while(W.pending+q>W.pending_buf_size){let X=W.pending_buf_size-W.pending;if(W.pending_buf.set(W.gzhead.extra.subarray(W.gzindex,W.gzindex+X),W.pending),W.pending=W.pending_buf_size,W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);if(W.gzindex+=X,r(J),W.pending!==0)return W.last_flush=-1,d;G=0,q-=X}let P=new Uint8Array(W.gzhead.extra);if(W.pending_buf.set(P.subarray(W.gzindex,W.gzindex+q),W.pending),W.pending+=q,W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);W.gzindex=0}W.status=e0}if(W.status===e0){if(W.gzhead.name){let G=W.pending,q;do{if(W.pending===W.pending_buf_size){if(W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);if(r(J),W.pending!==0)return W.last_flush=-1,d;G=0}if(W.gzindex<W.gzhead.name.length)q=W.gzhead.name.charCodeAt(W.gzindex++)&255;else q=0;E(W,q)}while(q!==0);if(W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);W.gzindex=0}W.status=J8}if(W.status===J8){if(W.gzhead.comment){let G=W.pending,q;do{if(W.pending===W.pending_buf_size){if(W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);if(r(J),W.pending!==0)return W.last_flush=-1,d;G=0}if(W.gzindex<W.gzhead.comment.length)q=W.gzhead.comment.charCodeAt(W.gzindex++)&255;else q=0;E(W,q)}while(q!==0);if(W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G)}W.status=W8}if(W.status===W8){if(W.gzhead.hcrc){if(W.pending+2>W.pending_buf_size){if(r(J),W.pending!==0)return W.last_flush=-1,d}E(W,J.adler&255),E(W,J.adler>>8&255),J.adler=0}if(W.status=C6,r(J),W.pending!==0)return W.last_flush=-1,d}if(J.avail_in!==0||W.lookahead!==0||Q!==H6&&W.status!==d6){let G=W.level===0?OJ(W,Q):W.strategy===$0?M1(W,Q):W.strategy===Q1?C1(W,Q):l6[W.level].func(W,Q);if(G===R6||G===b6)W.status=d6;if(G===i||G===R6){if(J.avail_out===0)W.last_flush=-1;return d}if(G===f6){if(Q===s5)a5(W);else if(Q!==w8){if(a0(W,0,0,!1),Q===t5){if(F6(W.head),W.lookahead===0)W.strstart=0,W.block_start=0,W.insert=0}}if(r(J),J.avail_out===0)return W.last_flush=-1,d}}if(Q!==a)return d;if(W.wrap<=0)return S8;if(W.wrap===2)E(W,J.adler&255),E(W,J.adler>>8&255),E(W,J.adler>>16&255),E(W,J.adler>>24&255),E(W,J.total_in&255),E(W,J.total_in>>8&255),E(W,J.total_in>>16&255),E(W,J.total_in>>24&255);else c6(W,J.adler>>>16),c6(W,J.adler&65535);if(r(J),W.wrap>0)W.wrap=-W.wrap;return W.pending!==0?d:S8},D1=(J)=>{if(G0(J))return Q6;let Q=J.state.status;return J.state=null,Q===C6?M6(J,e5):d},A1=(J,Q)=>{let W=Q.length;if(G0(J))return Q6;let V=J.state,G=V.wrap;if(G===2||G===1&&V.status!==g6||V.lookahead)return Q6;if(G===1)J.adler=e6(J.adler,Q,W,0);if(V.wrap=0,W>=V.w_size){if(G===0)F6(V.head),V.strstart=0,V.block_start=0,V.insert=0;let Z=new Uint8Array(V.w_size);Z.set(Q.subarray(W-V.w_size,W),0),Q=Z,W=V.w_size}let{avail_in:q,next_in:P,input:X}=J;J.avail_in=W,J.next_in=0,J.input=Q,E6(V);while(V.lookahead>=v){let Z=V.strstart,Y=V.lookahead-(v-1);do V.ins_h=$6(V,V.ins_h,V.window[Z+v-1]),V.prev[Z&V.w_mask]=V.head[V.ins_h],V.head[V.ins_h]=Z,Z++;while(--Y);V.strstart=Z,V.lookahead=v-1,E6(V)}return V.strstart+=V.lookahead,V.block_start=V.strstart,V.insert=V.lookahead,V.lookahead=0,V.match_length=V.prev_length=v-1,V.match_available=0,J.next_in=P,J.input=X,J.avail_in=q,V.wrap=G,d},N1=O1,w1=AJ,S1=DJ,T1=xJ,v1=I1,g1=x1,E1=D1,y1=A1,f1="pako deflate (from Nodeca project)",n6={deflateInit:N1,deflateInit2:w1,deflateReset:S1,deflateResetKeep:T1,deflateSetHeader:v1,deflate:g1,deflateEnd:E1,deflateSetDictionary:y1,deflateInfo:f1},b1=(J,Q)=>{return Object.prototype.hasOwnProperty.call(J,Q)},h1=function(J){let Q=Array.prototype.slice.call(arguments,1);while(Q.length){let W=Q.shift();if(!W)continue;if(typeof W!=="object")throw TypeError(W+"must be non-object");for(let V in W)if(b1(W,V))J[V]=W[V]}return J},p1=(J)=>{let Q=0;for(let V=0,G=J.length;V<G;V++)Q+=J[V].length;let W=new Uint8Array(Q);for(let V=0,G=0,q=J.length;V<q;V++){let P=J[V];W.set(P,G),G+=P.length}return W},x0={assign:h1,flattenChunks:p1},NJ=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(J){NJ=!1}var J0=new Uint8Array(256);for(let J=0;J<256;J++)J0[J]=J>=252?6:J>=248?5:J>=240?4:J>=224?3:J>=192?2:1;J0[254]=J0[254]=1;var u1=(J)=>{if(typeof TextEncoder==="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(J);let Q,W,V,G,q,P=J.length,X=0;for(G=0;G<P;G++){if(W=J.charCodeAt(G),(W&64512)===55296&&G+1<P){if(V=J.charCodeAt(G+1),(V&64512)===56320)W=65536+(W-55296<<10)+(V-56320),G++}X+=W<128?1:W<2048?2:W<65536?3:4}Q=new Uint8Array(X);for(q=0,G=0;q<X;G++){if(W=J.charCodeAt(G),(W&64512)===55296&&G+1<P){if(V=J.charCodeAt(G+1),(V&64512)===56320)W=65536+(W-55296<<10)+(V-56320),G++}if(W<128)Q[q++]=W;else if(W<2048)Q[q++]=192|W>>>6,Q[q++]=128|W&63;else if(W<65536)Q[q++]=224|W>>>12,Q[q++]=128|W>>>6&63,Q[q++]=128|W&63;else Q[q++]=240|W>>>18,Q[q++]=128|W>>>12&63,Q[q++]=128|W>>>6&63,Q[q++]=128|W&63}return Q},m1=(J,Q)=>{if(Q<65534){if(J.subarray&&NJ)return String.fromCharCode.apply(null,J.length===Q?J:J.subarray(0,Q))}let W="";for(let V=0;V<Q;V++)W+=String.fromCharCode(J[V]);return W},_1=(J,Q)=>{let W=Q||J.length;if(typeof TextDecoder==="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(J.subarray(0,Q));let V,G,q=Array(W*2);for(G=0,V=0;V<W;){let P=J[V++];if(P<128){q[G++]=P;continue}let X=J0[P];if(X>4){q[G++]=65533,V+=X-1;continue}P&=X===2?31:X===3?15:7;while(X>1&&V<W)P=P<<6|J[V++]&63,X--;if(X>1){q[G++]=65533;continue}if(P<65536)q[G++]=P;else P-=65536,q[G++]=55296|P>>10&1023,q[G++]=56320|P&1023}return m1(q,G)},c1=(J,Q)=>{if(Q=Q||J.length,Q>J.length)Q=J.length;let W=Q-1;while(W>=0&&(J[W]&192)===128)W--;if(W<0)return Q;if(W===0)return Q;return W+J0[J[W]]>Q?W:Q},W0={string2buf:u1,buf2string:_1,utf8border:c1};function d1(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var wJ=d1,SJ=Object.prototype.toString,{Z_NO_FLUSH:l1,Z_SYNC_FLUSH:i1,Z_FULL_FLUSH:n1,Z_FINISH:r1,Z_OK:R0,Z_STREAM_END:o1,Z_DEFAULT_COMPRESSION:a1,Z_DEFAULT_STRATEGY:s1,Z_DEFLATED:t1}=O6;function q0(J){this.options=x0.assign({level:a1,method:t1,chunkSize:16384,windowBits:15,memLevel:8,strategy:s1},J||{});let Q=this.options;if(Q.raw&&Q.windowBits>0)Q.windowBits=-Q.windowBits;else if(Q.gzip&&Q.windowBits>0&&Q.windowBits<16)Q.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new wJ,this.strm.avail_out=0;let W=n6.deflateInit2(this.strm,Q.level,Q.method,Q.windowBits,Q.memLevel,Q.strategy);if(W!==R0)throw Error(L6[W]);if(Q.header)n6.deflateSetHeader(this.strm,Q.header);if(Q.dictionary){let V;if(typeof Q.dictionary==="string")V=W0.string2buf(Q.dictionary);else if(SJ.call(Q.dictionary)==="[object ArrayBuffer]")V=new Uint8Array(Q.dictionary);else V=Q.dictionary;if(W=n6.deflateSetDictionary(this.strm,V),W!==R0)throw Error(L6[W]);this._dict_set=!0}}q0.prototype.push=function(J,Q){let W=this.strm,V=this.options.chunkSize,G,q;if(this.ended)return!1;if(Q===~~Q)q=Q;else q=Q===!0?r1:l1;if(typeof J==="string")W.input=W0.string2buf(J);else if(SJ.call(J)==="[object ArrayBuffer]")W.input=new Uint8Array(J);else W.input=J;W.next_in=0,W.avail_in=W.input.length;for(;;){if(W.avail_out===0)W.output=new Uint8Array(V),W.next_out=0,W.avail_out=V;if((q===i1||q===n1)&&W.avail_out<=6){this.onData(W.output.subarray(0,W.next_out)),W.avail_out=0;continue}if(G=n6.deflate(W,q),G===o1){if(W.next_out>0)this.onData(W.output.subarray(0,W.next_out));return G=n6.deflateEnd(this.strm),this.onEnd(G),this.ended=!0,G===R0}if(W.avail_out===0){this.onData(W.output);continue}if(q>0&&W.next_out>0){this.onData(W.output.subarray(0,W.next_out)),W.avail_out=0;continue}if(W.avail_in===0)break}return!0};q0.prototype.onData=function(J){this.chunks.push(J)};q0.prototype.onEnd=function(J){if(J===R0)this.result=x0.flattenChunks(this.chunks);this.chunks=[],this.err=J,this.msg=this.strm.msg};function P8(J,Q){let W=new q0(Q);if(W.push(J,!0),W.err)throw W.msg||L6[W.err];return W.result}function e1(J,Q){return Q=Q||{},Q.raw=!0,P8(J,Q)}function JW(J,Q){return Q=Q||{},Q.gzip=!0,P8(J,Q)}var WW=q0,QW=P8,VW=e1,GW=JW,qW=O6,XW={Deflate:WW,deflate:QW,deflateRaw:VW,gzip:GW,constants:qW},k0=16209,YW=16191,PW=function(Q,W){let V,G,q,P,X,Z,Y,U,k,F,K,z,I,j,B,L,R,$,S,p,M,T,A,x,w=Q.state;V=Q.next_in,A=Q.input,G=V+(Q.avail_in-5),q=Q.next_out,x=Q.output,P=q-(W-Q.avail_out),X=q+(Q.avail_out-257),Z=w.dmax,Y=w.wsize,U=w.whave,k=w.wnext,F=w.window,K=w.hold,z=w.bits,I=w.lencode,j=w.distcode,B=(1<<w.lenbits)-1,L=(1<<w.distbits)-1;J:do{if(z<15)K+=A[V++]<<z,z+=8,K+=A[V++]<<z,z+=8;R=I[K&B];W:for(;;){if($=R>>>24,K>>>=$,z-=$,$=R>>>16&255,$===0)x[q++]=R&65535;else if($&16){if(S=R&65535,$&=15,$){if(z<$)K+=A[V++]<<z,z+=8;S+=K&(1<<$)-1,K>>>=$,z-=$}if(z<15)K+=A[V++]<<z,z+=8,K+=A[V++]<<z,z+=8;R=j[K&L];Q:for(;;){if($=R>>>24,K>>>=$,z-=$,$=R>>>16&255,$&16){if(p=R&65535,$&=15,z<$){if(K+=A[V++]<<z,z+=8,z<$)K+=A[V++]<<z,z+=8}if(p+=K&(1<<$)-1,p>Z){Q.msg="invalid distance too far back",w.mode=k0;break J}if(K>>>=$,z-=$,$=q-P,p>$){if($=p-$,$>U){if(w.sane){Q.msg="invalid distance too far back",w.mode=k0;break J}}if(M=0,T=F,k===0){if(M+=Y-$,$<S){S-=$;do x[q++]=F[M++];while(--$);M=q-p,T=x}}else if(k<$){if(M+=Y+k-$,$-=k,$<S){S-=$;do x[q++]=F[M++];while(--$);if(M=0,k<S){$=k,S-=$;do x[q++]=F[M++];while(--$);M=q-p,T=x}}}else if(M+=k-$,$<S){S-=$;do x[q++]=F[M++];while(--$);M=q-p,T=x}while(S>2)x[q++]=T[M++],x[q++]=T[M++],x[q++]=T[M++],S-=3;if(S){if(x[q++]=T[M++],S>1)x[q++]=T[M++]}}else{M=q-p;do x[q++]=x[M++],x[q++]=x[M++],x[q++]=x[M++],S-=3;while(S>2);if(S){if(x[q++]=x[M++],S>1)x[q++]=x[M++]}}}else if(($&64)===0){R=j[(R&65535)+(K&(1<<$)-1)];continue Q}else{Q.msg="invalid distance code",w.mode=k0;break J}break}}else if(($&64)===0){R=I[(R&65535)+(K&(1<<$)-1)];continue W}else if($&32){w.mode=YW;break J}else{Q.msg="invalid literal/length code",w.mode=k0;break J}break}}while(V<G&&q<X);S=z>>3,V-=S,z-=S<<3,K&=(1<<z)-1,Q.next_in=V,Q.next_out=q,Q.avail_in=V<G?5+(G-V):5-(V-G),Q.avail_out=q<X?257+(X-q):257-(q-X),w.hold=K,w.bits=z;return},T6=15,v8=852,g8=592,E8=0,u0=1,y8=2,UW=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]),KW=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]),FW=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]),ZW=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]),zW=(J,Q,W,V,G,q,P,X)=>{let Z=X.bits,Y=0,U=0,k=0,F=0,K=0,z=0,I=0,j=0,B=0,L=0,R,$,S,p,M,T=null,A,x=new Uint16Array(T6+1),w=new Uint16Array(T6+1),G6=null,h6,e,P6;for(Y=0;Y<=T6;Y++)x[Y]=0;for(U=0;U<V;U++)x[Q[W+U]]++;K=Z;for(F=T6;F>=1;F--)if(x[F]!==0)break;if(K>F)K=F;if(F===0)return G[q++]=20971520,G[q++]=20971520,X.bits=1,0;for(k=1;k<F;k++)if(x[k]!==0)break;if(K<k)K=k;j=1;for(Y=1;Y<=T6;Y++)if(j<<=1,j-=x[Y],j<0)return-1;if(j>0&&(J===E8||F!==1))return-1;w[1]=0;for(Y=1;Y<T6;Y++)w[Y+1]=w[Y]+x[Y];for(U=0;U<V;U++)if(Q[W+U]!==0)P[w[Q[W+U]]++]=U;if(J===E8)T=G6=P,A=20;else if(J===u0)T=UW,G6=KW,A=257;else T=FW,G6=ZW,A=0;if(L=0,U=0,Y=k,M=q,z=K,I=0,S=-1,B=1<<K,p=B-1,J===u0&&B>v8||J===y8&&B>g8)return 1;for(;;){if(h6=Y-I,P[U]+1<A)e=0,P6=P[U];else if(P[U]>=A)e=G6[P[U]-A],P6=T[P[U]-A];else e=96,P6=0;R=1<<Y-I,$=1<<z,k=$;do $-=R,G[M+(L>>I)+$]=h6<<24|e<<16|P6|0;while($!==0);R=1<<Y-1;while(L&R)R>>=1;if(R!==0)L&=R-1,L+=R;else L=0;if(U++,--x[Y]===0){if(Y===F)break;Y=Q[W+P[U]]}if(Y>K&&(L&p)!==S){if(I===0)I=K;M+=k,z=Y-I,j=1<<z;while(z+I<F){if(j-=x[z+I],j<=0)break;z++,j<<=1}if(B+=1<<z,J===u0&&B>v8||J===y8&&B>g8)return 1;S=L&p,G[S]=K<<24|z<<16|M-q|0}}if(L!==0)G[M+L]=Y-I<<24|4194304|0;return X.bits=K,0},r6=zW,HW=0,TJ=1,vJ=2,{Z_FINISH:f8,Z_BLOCK:$W,Z_TREES:B0,Z_OK:I6,Z_STREAM_END:kW,Z_NEED_DICT:BW,Z_STREAM_ERROR:s,Z_DATA_ERROR:gJ,Z_MEM_ERROR:EJ,Z_BUF_ERROR:jW,Z_DEFLATED:b8}=O6,D0=16180,h8=16181,p8=16182,u8=16183,m8=16184,_8=16185,c8=16186,d8=16187,l8=16188,i8=16189,I0=16190,q6=16191,m0=16192,n8=16193,_0=16194,r8=16195,o8=16196,a8=16197,s8=16198,j0=16199,C0=16200,t8=16201,e8=16202,JJ=16203,WJ=16204,QJ=16205,c0=16206,VJ=16207,GJ=16208,h=16209,yJ=16210,fJ=16211,CW=852,MW=592,LW=15,RW=LW,qJ=(J)=>{return(J>>>24&255)+(J>>>8&65280)+((J&65280)<<8)+((J&255)<<24)};function IW(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}var x6=(J)=>{if(!J)return 1;let Q=J.state;if(!Q||Q.strm!==J||Q.mode<D0||Q.mode>fJ)return 1;return 0},bJ=(J)=>{if(x6(J))return s;let Q=J.state;if(J.total_in=J.total_out=Q.total=0,J.msg="",Q.wrap)J.adler=Q.wrap&1;return Q.mode=D0,Q.last=0,Q.havedict=0,Q.flags=-1,Q.dmax=32768,Q.head=null,Q.hold=0,Q.bits=0,Q.lencode=Q.lendyn=new Int32Array(CW),Q.distcode=Q.distdyn=new Int32Array(MW),Q.sane=1,Q.back=-1,I6},hJ=(J)=>{if(x6(J))return s;let Q=J.state;return Q.wsize=0,Q.whave=0,Q.wnext=0,bJ(J)},pJ=(J,Q)=>{let W;if(x6(J))return s;let V=J.state;if(Q<0)W=0,Q=-Q;else if(W=(Q>>4)+5,Q<48)Q&=15;if(Q&&(Q<8||Q>15))return s;if(V.window!==null&&V.wbits!==Q)V.window=null;return V.wrap=W,V.wbits=Q,hJ(J)},uJ=(J,Q)=>{if(!J)return s;let W=new IW;J.state=W,W.strm=J,W.window=null,W.mode=D0;let V=pJ(J,Q);if(V!==I6)J.state=null;return V},OW=(J)=>{return uJ(J,RW)},XJ=!0,d0,l0,xW=(J)=>{if(XJ){d0=new Int32Array(512),l0=new Int32Array(32);let Q=0;while(Q<144)J.lens[Q++]=8;while(Q<256)J.lens[Q++]=9;while(Q<280)J.lens[Q++]=7;while(Q<288)J.lens[Q++]=8;r6(TJ,J.lens,0,288,d0,0,J.work,{bits:9}),Q=0;while(Q<32)J.lens[Q++]=5;r6(vJ,J.lens,0,32,l0,0,J.work,{bits:5}),XJ=!1}J.lencode=d0,J.lenbits=9,J.distcode=l0,J.distbits=5},mJ=(J,Q,W,V)=>{let G,q=J.state;if(q.window===null)q.wsize=1<<q.wbits,q.wnext=0,q.whave=0,q.window=new Uint8Array(q.wsize);if(V>=q.wsize)q.window.set(Q.subarray(W-q.wsize,W),0),q.wnext=0,q.whave=q.wsize;else{if(G=q.wsize-q.wnext,G>V)G=V;if(q.window.set(Q.subarray(W-V,W-V+G),q.wnext),V-=G,V)q.window.set(Q.subarray(W-V,W),0),q.wnext=V,q.whave=q.wsize;else{if(q.wnext+=G,q.wnext===q.wsize)q.wnext=0;if(q.whave<q.wsize)q.whave+=G}}return 0},DW=(J,Q)=>{let W,V,G,q,P,X,Z,Y,U,k,F,K,z,I,j=0,B,L,R,$,S,p,M,T,A=new Uint8Array(4),x,w,G6=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(x6(J)||!J.output||!J.input&&J.avail_in!==0)return s;if(W=J.state,W.mode===q6)W.mode=m0;P=J.next_out,G=J.output,Z=J.avail_out,q=J.next_in,V=J.input,X=J.avail_in,Y=W.hold,U=W.bits,k=X,F=Z,T=I6;J:for(;;)switch(W.mode){case D0:if(W.wrap===0){W.mode=m0;break}while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.wrap&2&&Y===35615){if(W.wbits===0)W.wbits=15;W.check=0,A[0]=Y&255,A[1]=Y>>>8&255,W.check=c(W.check,A,2,0),Y=0,U=0,W.mode=h8;break}if(W.head)W.head.done=!1;if(!(W.wrap&1)||(((Y&255)<<8)+(Y>>8))%31){J.msg="incorrect header check",W.mode=h;break}if((Y&15)!==b8){J.msg="unknown compression method",W.mode=h;break}if(Y>>>=4,U-=4,M=(Y&15)+8,W.wbits===0)W.wbits=M;if(M>15||M>W.wbits){J.msg="invalid window size",W.mode=h;break}W.dmax=1<<W.wbits,W.flags=0,J.adler=W.check=1,W.mode=Y&512?i8:q6,Y=0,U=0;break;case h8:while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.flags=Y,(W.flags&255)!==b8){J.msg="unknown compression method",W.mode=h;break}if(W.flags&57344){J.msg="unknown header flags set",W.mode=h;break}if(W.head)W.head.text=Y>>8&1;if(W.flags&512&&W.wrap&4)A[0]=Y&255,A[1]=Y>>>8&255,W.check=c(W.check,A,2,0);Y=0,U=0,W.mode=p8;case p8:while(U<32){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.head)W.head.time=Y;if(W.flags&512&&W.wrap&4)A[0]=Y&255,A[1]=Y>>>8&255,A[2]=Y>>>16&255,A[3]=Y>>>24&255,W.check=c(W.check,A,4,0);Y=0,U=0,W.mode=u8;case u8:while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.head)W.head.xflags=Y&255,W.head.os=Y>>8;if(W.flags&512&&W.wrap&4)A[0]=Y&255,A[1]=Y>>>8&255,W.check=c(W.check,A,2,0);Y=0,U=0,W.mode=m8;case m8:if(W.flags&1024){while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.length=Y,W.head)W.head.extra_len=Y;if(W.flags&512&&W.wrap&4)A[0]=Y&255,A[1]=Y>>>8&255,W.check=c(W.check,A,2,0);Y=0,U=0}else if(W.head)W.head.extra=null;W.mode=_8;case _8:if(W.flags&1024){if(K=W.length,K>X)K=X;if(K){if(W.head){if(M=W.head.extra_len-W.length,!W.head.extra)W.head.extra=new Uint8Array(W.head.extra_len);W.head.extra.set(V.subarray(q,q+K),M)}if(W.flags&512&&W.wrap&4)W.check=c(W.check,V,K,q);X-=K,q+=K,W.length-=K}if(W.length)break J}W.length=0,W.mode=c8;case c8:if(W.flags&2048){if(X===0)break J;K=0;do if(M=V[q+K++],W.head&&M&&W.length<65536)W.head.name+=String.fromCharCode(M);while(M&&K<X);if(W.flags&512&&W.wrap&4)W.check=c(W.check,V,K,q);if(X-=K,q+=K,M)break J}else if(W.head)W.head.name=null;W.length=0,W.mode=d8;case d8:if(W.flags&4096){if(X===0)break J;K=0;do if(M=V[q+K++],W.head&&M&&W.length<65536)W.head.comment+=String.fromCharCode(M);while(M&&K<X);if(W.flags&512&&W.wrap&4)W.check=c(W.check,V,K,q);if(X-=K,q+=K,M)break J}else if(W.head)W.head.comment=null;W.mode=l8;case l8:if(W.flags&512){while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.wrap&4&&Y!==(W.check&65535)){J.msg="header crc mismatch",W.mode=h;break}Y=0,U=0}if(W.head)W.head.hcrc=W.flags>>9&1,W.head.done=!0;J.adler=W.check=0,W.mode=q6;break;case i8:while(U<32){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}J.adler=W.check=qJ(Y),Y=0,U=0,W.mode=I0;case I0:if(W.havedict===0)return J.next_out=P,J.avail_out=Z,J.next_in=q,J.avail_in=X,W.hold=Y,W.bits=U,BW;J.adler=W.check=1,W.mode=q6;case q6:if(Q===$W||Q===B0)break J;case m0:if(W.last){Y>>>=U&7,U-=U&7,W.mode=c0;break}while(U<3){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}switch(W.last=Y&1,Y>>>=1,U-=1,Y&3){case 0:W.mode=n8;break;case 1:if(xW(W),W.mode=j0,Q===B0){Y>>>=2,U-=2;break J}break;case 2:W.mode=o8;break;case 3:J.msg="invalid block type",W.mode=h}Y>>>=2,U-=2;break;case n8:Y>>>=U&7,U-=U&7;while(U<32){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if((Y&65535)!==(Y>>>16^65535)){J.msg="invalid stored block lengths",W.mode=h;break}if(W.length=Y&65535,Y=0,U=0,W.mode=_0,Q===B0)break J;case _0:W.mode=r8;case r8:if(K=W.length,K){if(K>X)K=X;if(K>Z)K=Z;if(K===0)break J;G.set(V.subarray(q,q+K),P),X-=K,q+=K,Z-=K,P+=K,W.length-=K;break}W.mode=q6;break;case o8:while(U<14){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.nlen=(Y&31)+257,Y>>>=5,U-=5,W.ndist=(Y&31)+1,Y>>>=5,U-=5,W.ncode=(Y&15)+4,Y>>>=4,U-=4,W.nlen>286||W.ndist>30){J.msg="too many length or distance symbols",W.mode=h;break}W.have=0,W.mode=a8;case a8:while(W.have<W.ncode){while(U<3){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}W.lens[G6[W.have++]]=Y&7,Y>>>=3,U-=3}while(W.have<19)W.lens[G6[W.have++]]=0;if(W.lencode=W.lendyn,W.lenbits=7,x={bits:W.lenbits},T=r6(HW,W.lens,0,19,W.lencode,0,W.work,x),W.lenbits=x.bits,T){J.msg="invalid code lengths set",W.mode=h;break}W.have=0,W.mode=s8;case s8:while(W.have<W.nlen+W.ndist){for(;;){if(j=W.lencode[Y&(1<<W.lenbits)-1],B=j>>>24,L=j>>>16&255,R=j&65535,B<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(R<16)Y>>>=B,U-=B,W.lens[W.have++]=R;else{if(R===16){w=B+2;while(U<w){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(Y>>>=B,U-=B,W.have===0){J.msg="invalid bit length repeat",W.mode=h;break}M=W.lens[W.have-1],K=3+(Y&3),Y>>>=2,U-=2}else if(R===17){w=B+3;while(U<w){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}Y>>>=B,U-=B,M=0,K=3+(Y&7),Y>>>=3,U-=3}else{w=B+7;while(U<w){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}Y>>>=B,U-=B,M=0,K=11+(Y&127),Y>>>=7,U-=7}if(W.have+K>W.nlen+W.ndist){J.msg="invalid bit length repeat",W.mode=h;break}while(K--)W.lens[W.have++]=M}}if(W.mode===h)break;if(W.lens[256]===0){J.msg="invalid code -- missing end-of-block",W.mode=h;break}if(W.lenbits=9,x={bits:W.lenbits},T=r6(TJ,W.lens,0,W.nlen,W.lencode,0,W.work,x),W.lenbits=x.bits,T){J.msg="invalid literal/lengths set",W.mode=h;break}if(W.distbits=6,W.distcode=W.distdyn,x={bits:W.distbits},T=r6(vJ,W.lens,W.nlen,W.ndist,W.distcode,0,W.work,x),W.distbits=x.bits,T){J.msg="invalid distances set",W.mode=h;break}if(W.mode=j0,Q===B0)break J;case j0:W.mode=C0;case C0:if(X>=6&&Z>=258){if(J.next_out=P,J.avail_out=Z,J.next_in=q,J.avail_in=X,W.hold=Y,W.bits=U,PW(J,F),P=J.next_out,G=J.output,Z=J.avail_out,q=J.next_in,V=J.input,X=J.avail_in,Y=W.hold,U=W.bits,W.mode===q6)W.back=-1;break}W.back=0;for(;;){if(j=W.lencode[Y&(1<<W.lenbits)-1],B=j>>>24,L=j>>>16&255,R=j&65535,B<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(L&&(L&240)===0){$=B,S=L,p=R;for(;;){if(j=W.lencode[p+((Y&(1<<$+S)-1)>>$)],B=j>>>24,L=j>>>16&255,R=j&65535,$+B<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}Y>>>=$,U-=$,W.back+=$}if(Y>>>=B,U-=B,W.back+=B,W.length=R,L===0){W.mode=QJ;break}if(L&32){W.back=-1,W.mode=q6;break}if(L&64){J.msg="invalid literal/length code",W.mode=h;break}W.extra=L&15,W.mode=t8;case t8:if(W.extra){w=W.extra;while(U<w){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}W.length+=Y&(1<<W.extra)-1,Y>>>=W.extra,U-=W.extra,W.back+=W.extra}W.was=W.length,W.mode=e8;case e8:for(;;){if(j=W.distcode[Y&(1<<W.distbits)-1],B=j>>>24,L=j>>>16&255,R=j&65535,B<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if((L&240)===0){$=B,S=L,p=R;for(;;){if(j=W.distcode[p+((Y&(1<<$+S)-1)>>$)],B=j>>>24,L=j>>>16&255,R=j&65535,$+B<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}Y>>>=$,U-=$,W.back+=$}if(Y>>>=B,U-=B,W.back+=B,L&64){J.msg="invalid distance code",W.mode=h;break}W.offset=R,W.extra=L&15,W.mode=JJ;case JJ:if(W.extra){w=W.extra;while(U<w){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}W.offset+=Y&(1<<W.extra)-1,Y>>>=W.extra,U-=W.extra,W.back+=W.extra}if(W.offset>W.dmax){J.msg="invalid distance too far back",W.mode=h;break}W.mode=WJ;case WJ:if(Z===0)break J;if(K=F-Z,W.offset>K){if(K=W.offset-K,K>W.whave){if(W.sane){J.msg="invalid distance too far back",W.mode=h;break}}if(K>W.wnext)K-=W.wnext,z=W.wsize-K;else z=W.wnext-K;if(K>W.length)K=W.length;I=W.window}else I=G,z=P-W.offset,K=W.length;if(K>Z)K=Z;Z-=K,W.length-=K;do G[P++]=I[z++];while(--K);if(W.length===0)W.mode=C0;break;case QJ:if(Z===0)break J;G[P++]=W.length,Z--,W.mode=C0;break;case c0:if(W.wrap){while(U<32){if(X===0)break J;X--,Y|=V[q++]<<U,U+=8}if(F-=Z,J.total_out+=F,W.total+=F,W.wrap&4&&F)J.adler=W.check=W.flags?c(W.check,G,F,P-F):e6(W.check,G,F,P-F);if(F=Z,W.wrap&4&&(W.flags?Y:qJ(Y))!==W.check){J.msg="incorrect data check",W.mode=h;break}Y=0,U=0}W.mode=VJ;case VJ:if(W.wrap&&W.flags){while(U<32){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.wrap&4&&Y!==(W.total&4294967295)){J.msg="incorrect length check",W.mode=h;break}Y=0,U=0}W.mode=GJ;case GJ:T=kW;break J;case h:T=gJ;break J;case yJ:return EJ;case fJ:default:return s}if(J.next_out=P,J.avail_out=Z,J.next_in=q,J.avail_in=X,W.hold=Y,W.bits=U,W.wsize||F!==J.avail_out&&W.mode<h&&(W.mode<c0||Q!==f8)){if(mJ(J,J.output,J.next_out,F-J.avail_out));}if(k-=J.avail_in,F-=J.avail_out,J.total_in+=k,J.total_out+=F,W.total+=F,W.wrap&4&&F)J.adler=W.check=W.flags?c(W.check,G,F,J.next_out-F):e6(W.check,G,F,J.next_out-F);if(J.data_type=W.bits+(W.last?64:0)+(W.mode===q6?128:0)+(W.mode===j0||W.mode===_0?256:0),(k===0&&F===0||Q===f8)&&T===I6)T=jW;return T},AW=(J)=>{if(x6(J))return s;let Q=J.state;if(Q.window)Q.window=null;return J.state=null,I6},NW=(J,Q)=>{if(x6(J))return s;let W=J.state;if((W.wrap&2)===0)return s;return W.head=Q,Q.done=!1,I6},wW=(J,Q)=>{let W=Q.length,V,G,q;if(x6(J))return s;if(V=J.state,V.wrap!==0&&V.mode!==I0)return s;if(V.mode===I0){if(G=1,G=e6(G,Q,W,0),G!==V.check)return gJ}if(q=mJ(J,Q,W,W),q)return V.mode=yJ,EJ;return V.havedict=1,I6},SW=hJ,TW=pJ,vW=bJ,gW=OW,EW=uJ,yW=DW,fW=AW,bW=NW,hW=wW,pW="pako inflate (from Nodeca project)",Y6={inflateReset:SW,inflateReset2:TW,inflateResetKeep:vW,inflateInit:gW,inflateInit2:EW,inflate:yW,inflateEnd:fW,inflateGetHeader:bW,inflateSetDictionary:hW,inflateInfo:pW};function uW(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var mW=uW,_J=Object.prototype.toString,{Z_NO_FLUSH:_W,Z_FINISH:cW,Z_OK:Q0,Z_STREAM_END:i0,Z_NEED_DICT:n0,Z_STREAM_ERROR:dW,Z_DATA_ERROR:YJ,Z_MEM_ERROR:lW}=O6;function X0(J){this.options=x0.assign({chunkSize:65536,windowBits:15,to:""},J||{});let Q=this.options;if(Q.raw&&Q.windowBits>=0&&Q.windowBits<16){if(Q.windowBits=-Q.windowBits,Q.windowBits===0)Q.windowBits=-15}if(Q.windowBits>=0&&Q.windowBits<16&&!(J&&J.windowBits))Q.windowBits+=32;if(Q.windowBits>15&&Q.windowBits<48){if((Q.windowBits&15)===0)Q.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new wJ,this.strm.avail_out=0;let W=Y6.inflateInit2(this.strm,Q.windowBits);if(W!==Q0)throw Error(L6[W]);if(this.header=new mW,Y6.inflateGetHeader(this.strm,this.header),Q.dictionary){if(typeof Q.dictionary==="string")Q.dictionary=W0.string2buf(Q.dictionary);else if(_J.call(Q.dictionary)==="[object ArrayBuffer]")Q.dictionary=new Uint8Array(Q.dictionary);if(Q.raw){if(W=Y6.inflateSetDictionary(this.strm,Q.dictionary),W!==Q0)throw Error(L6[W])}}}X0.prototype.push=function(J,Q){let W=this.strm,V=this.options.chunkSize,G=this.options.dictionary,q,P,X;if(this.ended)return!1;if(Q===~~Q)P=Q;else P=Q===!0?cW:_W;if(_J.call(J)==="[object ArrayBuffer]")W.input=new Uint8Array(J);else W.input=J;W.next_in=0,W.avail_in=W.input.length;for(;;){if(W.avail_out===0)W.output=new Uint8Array(V),W.next_out=0,W.avail_out=V;if(q=Y6.inflate(W,P),q===n0&&G){if(q=Y6.inflateSetDictionary(W,G),q===Q0)q=Y6.inflate(W,P);else if(q===YJ)q=n0}while(W.avail_in>0&&q===i0&&W.state.wrap>0&&J[W.next_in]!==0)Y6.inflateReset(W),q=Y6.inflate(W,P);switch(q){case dW:case YJ:case n0:case lW:return this.onEnd(q),this.ended=!0,!1}if(X=W.avail_out,W.next_out){if(W.avail_out===0||q===i0)if(this.options.to==="string"){let Z=W0.utf8border(W.output,W.next_out),Y=W.next_out-Z,U=W0.buf2string(W.output,Z);if(W.next_out=Y,W.avail_out=V-Y,Y)W.output.set(W.output.subarray(Z,Z+Y),0);this.onData(U)}else this.onData(W.output.length===W.next_out?W.output:W.output.subarray(0,W.next_out))}if(q===Q0&&X===0)continue;if(q===i0)return q=Y6.inflateEnd(this.strm),this.onEnd(q),this.ended=!0,!0;if(W.avail_in===0)break}return!0};X0.prototype.onData=function(J){this.chunks.push(J)};X0.prototype.onEnd=function(J){if(J===Q0)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=x0.flattenChunks(this.chunks);this.chunks=[],this.err=J,this.msg=this.strm.msg};function U8(J,Q){let W=new X0(Q);if(W.push(J),W.err)throw W.msg||L6[W.err];return W.result}function iW(J,Q){return Q=Q||{},Q.raw=!0,U8(J,Q)}var nW=X0,rW=U8,oW=iW,aW=U8,sW=O6,tW={Inflate:nW,inflate:rW,inflateRaw:oW,ungzip:aW,constants:sW},{Deflate:eW,deflate:J7,deflateRaw:W7,gzip:Q7}=XW,{Inflate:V7,inflate:G7,inflateRaw:q7,ungzip:X7}=tW,Y7=eW,P7=J7,U7=W7,K7=Q7,F7=V7,Z7=G7,z7=q7,H7=X7,$7=O6,D6={Deflate:Y7,deflate:P7,deflateRaw:U7,gzip:K7,Inflate:F7,inflate:Z7,inflateRaw:z7,ungzip:H7,constants:$7};function cJ(J,Q,W){let V=Q.timestamp;if(V?.physical>Date.now()+7200000)V={physical:Date.now()+7200000,logical:V.logical};if(Q?.value?.priority===!0&&typeof Q.id==="string"&&Q.id.startsWith("user:")&&"role"in Q.value){let{priority:G,...q}=Q.value;return{resolved:!0,value:q,timestamp:V}}if(Q?.value?.priority!==void 0){let{priority:G,...q}=Q.value;Q={...Q,value:q}}if(!J?.timestamp)return{resolved:!0,value:Q.value,timestamp:V};if(W.compare(V,J.timestamp)<=0)return{resolved:!1};return{resolved:!0,value:Q.value,timestamp:V}}function dJ(J,Q=50){let W=`gdb_oplog_${J}`,V=[];function G(){try{let P=localStorage.getItem(W);V=P?JSON.parse(P):[]}catch(P){V=[]}}function q(){try{localStorage.setItem(W,JSON.stringify(V))}catch(P){}}return G(),{remove(P){V=V.filter((X)=>X.id!==P),q()},add(P){if(V.push(P),V.length>Q)V.shift();q()},getDelta(P,X){if(!P)return[...V];return V.filter((Z)=>X(Z.timestamp,P)>0)},getOldest(){return V[0]},clear(){V=[],localStorage.removeItem(W)}}}var k7=()=>{let J=new Map,Q=async(U,k)=>{let F=J.get(U)??[];J.set(U,F);let K=F[F.length-1]??Promise.resolve(),z,I=new Promise((j)=>z=j);F.push(I);try{return await K,await k()}finally{if(F.shift(),z(),!F.length)J.delete(U)}},W=(U,k)=>navigator.locks?.request?.(`opfs:${U}`,{mode:"exclusive"},k)??Q(U,k),V=async()=>{try{let U=await navigator.storage.getDirectory(),F=await(await U.getFileHandle("~opfs-sync-test",{create:!0})).createSyncAccessHandle?.();return await F?.close(),await U.removeEntry("~opfs-sync-test"),!!F}catch{return!1}},G="idb",q=(async()=>{if(await V()){G="sync";return}try{let U=await navigator.storage.getDirectory(),F=await(await U.getFileHandle("~opfs-async-test",{create:!0})).createWritable?.();await F?.close(),await U.removeEntry("~opfs-async-test"),G=F?"async":"idb"}catch{G="idb"}})(),P=navigator.storage.getDirectory(),X=(()=>{let U,k=()=>U??=new Promise((F,K)=>{let z=indexedDB.open("opfs-fallback-db",1);z.onupgradeneeded=()=>z.result.createObjectStore("files"),z.onsuccess=()=>F(z.result),z.onerror=()=>K(z.error)});return{get:async(F)=>{let K=await k();return new Promise((z,I)=>{let B=K.transaction("files","readonly").objectStore("files").get(F);B.onsuccess=()=>z(B.result||new Uint8Array),B.onerror=()=>I(B.error)})},set:async(F,K)=>{let z=await k();return new Promise((I,j)=>{let L=z.transaction("files","readwrite").objectStore("files").put(K,F);L.onsuccess=()=>I(),L.onerror=()=>j(L.error)})}}})(),Z=async(U)=>{await q;try{if(G==="idb"){let j=await X.get(U);self.postMessage({type:"loaded",name:U,data:j},[j.buffer]);return}let F=await(await P).getFileHandle(U).catch(()=>null);if(!F){let j=new Uint8Array;self.postMessage({type:"loaded",name:U,data:j},[j.buffer]);return}let K=async()=>{try{let j=await F.createSyncAccessHandle();try{let B=j.getSize(),L=new Uint8Array(B),R=j.read(L,{at:0}),$=L.slice(0,R);self.postMessage({type:"loaded",name:U,data:$},[$.buffer])}finally{j.close()}}catch(j){if(j?.name==="NoModificationAllowedError"){let B=await F.getFile(),L=new Uint8Array(await B.arrayBuffer());self.postMessage({type:"loaded",name:U,data:L},[L.buffer])}else throw j}};if(G==="sync"){await W(U,K);return}let z=await F.getFile(),I=new Uint8Array(await z.arrayBuffer());self.postMessage({type:"loaded",name:U,data:I},[I.buffer])}catch(k){if(k?.name==="NotFoundError"){let F=new Uint8Array;self.postMessage({type:"loaded",name:U,data:F},[F.buffer]);return}self.postMessage({type:"error",name:U,message:k?.message??"Error reading file"})}},Y=async(U,k)=>{if(await q,!(k instanceof Uint8Array))return{type:"error",name:U,message:"Content must be a Uint8Array"};return W(U,async()=>{try{if(G==="idb")return await X.set(U,k),{type:"saved",name:U};let K=await(await P).getFileHandle(U,{create:!0});if(G==="sync"){let z=await K.createSyncAccessHandle();try{z.truncate(0),z.write(k,{at:0}),z.flush()}finally{z.close()}}else{let z=await K.createWritable();try{await z.write(k)}finally{await z.close()}}return{type:"saved",name:U}}catch(F){return{type:"error",name:U,message:F?.message??"Error saving file"}}})};self.onmessage=async({data:U})=>{let{type:k,name:F,content:K}=U;await q;let z={load:()=>Z(F),save:()=>Y(F,K)};try{let I=z[k],j=I?await I():{type:"error",message:`Unrecognized action type: ${k}`};if(j&&j.type)self.postMessage(j)}catch(I){self.postMessage({type:"error",name:F,message:I?.message??"Unexpected worker error"})}}},lJ=k7;var Y0={$eq:(J,Q)=>J===Q,$ne:(J,Q)=>J!==Q,$gt:(J,Q)=>J>Q,$gte:(J,Q)=>J>=Q,$lt:(J,Q)=>J<Q,$lte:(J,Q)=>J<=Q,$in:(J,Q)=>Array.isArray(Q)&&(Array.isArray(J)?J.some((W)=>Q.includes(W)):Q.includes(J)),$between:(J,[Q,W])=>J>=Q&&J<=W,$exists:(J,Q)=>Q?J!==void 0:J===void 0,$startsWith:(J,Q)=>typeof J==="string"&&J.startsWith(Q),$endsWith:(J,Q)=>typeof J==="string"&&J.endsWith(Q),$contains:(J,Q)=>typeof J==="string"&&J.includes(Q),$text:{global:(J,Q)=>{let W=(G)=>String(G).normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^\w\s]/g,""),V=W(Q);return Object.values(J).some((G)=>typeof G==="object"?null.fieldSearch(G,V):W(G).includes(V))},field:(J,Q)=>{let W=(G)=>String(G).normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^\w\s]/g,""),V=W(Q);return Array.isArray(J)?J.some((G)=>W(G).includes(V)):W(J).includes(V)}},$like:(J,Q)=>typeof J==="string"&&typeof Q==="string"&&new RegExp(`^${Q.replace(/%/g,".*").replace(/_/g,".")}$`,"i").test(J),$regex:(J,Q)=>typeof J==="string"&&new RegExp(Q.$regex||Q,"i").test(J),$and:(J,Q,W)=>Q.every((V)=>W.createFilter(V,W.allNodes)(J)),$or:(J,Q,W)=>Q.some((V)=>W.createFilter(V,W.allNodes)(J)),$not:(J,Q,W)=>!W.createFilter(Q,W.allNodes)(J),$edge:(J,Q,W)=>{if(!J.edges?.length||typeof Q!=="object"||Q===null)return!1;let V=W.createFilter(Q,W.allNodes),G=[...J.edges],q=new Set(G).add(J.id),P=[];while(G.length){let X=G.shift(),Z=W.allNodes[X];if(!Z)continue;if(V(Z))P.push(Z);Z.edges?.forEach((Y)=>!q.has(Y)&&q.add(Y)&&G.push(Y))}if(P.length)J._edgeResult=P;return P.length>0}},A0=(J,Q)=>Q.split(".").reduce((W,V)=>W&&typeof W==="object"&&(V in W)?W[V]:void 0,J),N0=(J,Q)=>{if(Object.keys(J).length===0)return()=>!0;return(W)=>Object.entries(J).every(([V,G])=>{if(V.startsWith("$"))return Y0[V](W,G,{createFilter:N0,allNodes:Q});let q=A0(W.value,V);if(q===void 0)q=A0(W,V);if(typeof G!=="object"||G===null)return Y0.$eq(q,G);return Object.entries(G).every(([P,X])=>{if(P==="$text")return Y0.$text.field(q,X);if(P==="$between"&&X.every((Z)=>Z instanceof Date))return Y0.$between(new Date(q),X);return Y0[P]?.(q,X,{createFilter:N0,allNodes:Q})??!1})})},K8=(J,Q)=>{let{$edge:W,...V}=Q.query||{},G=N0(V,J),q=Object.values(J).filter(G),X=[...W?(()=>{let Z=N0({$edge:W},J);q.forEach((U)=>Z(U));let Y=new Map;return q.forEach((U)=>{if(U._edgeResult)U._edgeResult.forEach((k)=>Y.set(k.id,k)),delete U._edgeResult}),Array.from(Y.values())})():q];if(Q.field){let Z=Q.order==="asc"?1:-1;X.sort((Y,U)=>{let k=A0(Y.value,Q.field),F=A0(U.value,Q.field);if(typeof k==="string"&&typeof F==="string")return k.localeCompare(F)*Z;return((k??0)-(F??0))*Z})}if(Q.$after){let Z=X.findIndex((Y)=>Y.id===Q.$after);X=Z>=0?X.slice(Z+1):[]}if(Q.$before){let Z=X.findIndex((Y)=>Y.id===Q.$before);X=Z>=0?X.slice(0,Z):[]}if(Q.$limit)X=X.slice(0,Q.$limit);return X};function iJ(){let J=Date.now(),Q=0;return{now(){let W=Date.now();return J=Math.max(J,W),Q++,{physical:J,logical:Q}},update(W){if(!W||typeof W.physical!=="number"||typeof W.logical!=="number")return;J=Math.max(J,W.physical),Q=Math.max(Q,W.logical)+1},compare(W,V){if(!W&&!V)return 0;if(!W)return-1;if(!V)return 1;if(W.physical>V.physical)return 1;if(W.physical<V.physical)return-1;if(W.logical>V.logical)return 1;if(W.logical<V.logical)return-1;return 0}}}var B7={sm:()=>import(new URL("./sm.min.js",import.meta.url).href),ai:()=>import(new URL("./ai.min.js",import.meta.url).href),rx:()=>import(new URL("./rx.min.js",import.meta.url).href),ii:()=>import(new URL("./ii.min.js",import.meta.url).href),audit:()=>import(new URL("./audit.min.js",import.meta.url).href),geo:()=>import(new URL("./geo.min.js",import.meta.url).href),nlq:()=>import(new URL("./nlq.min.js",import.meta.url).href),genosrtc:()=>import(new URL("./genosrtc.min.js",import.meta.url).href),"genosrtc-cells":()=>import(new URL("./genosrtc-cells.min.js",import.meta.url).href)},nJ=(J,Q)=>J.length===Q.length&&J.every((W,V)=>W===Q[V]),F8=(J)=>J&&typeof J==="object"?globalThis.structuredClone?.(J)??JSON.parse(JSON.stringify(J)):J,rJ=(J,Q=16)=>{let W=null,V=null;return(...G)=>{if(!V)V={},V.promise=new Promise((P,X)=>(V.resolve=P,V.reject=X));if(W)("cancelIdleCallback"in window?cancelIdleCallback:clearTimeout)(W);let q=async()=>{W=null;let P=V;V=null;try{P.resolve(await J(...G))}catch(X){P.reject(X)}};return W="requestIdleCallback"in window?requestIdleCallback(q,{timeout:Q}):setTimeout(q,Q),V.promise}},j7=(J)=>{let Q=null;return()=>{if(Q!==null)return;Q=requestAnimationFrame(()=>{Q=null,J()})}};async function C7(){if(navigator?.storage?.getDirectory)await navigator.storage.getDirectory()}function M7(){let J={nodes:{}};return{get nodes(){return J.nodes},set nodes(Q){J.nodes=Q||{}},upsert(Q,W,V){let G=J.nodes[Q];J.nodes[Q]={id:Q,value:W&&typeof W==="object"?F8(W):W,edges:G?.edges?[...G.edges]:[],timestamp:V}},get(Q){return J.nodes[Q]||null},link(Q,W,V){let G=J.nodes[Q],q=J.nodes[W];if(G&&q&&!G.edges.includes(W))J.nodes[Q]={...G,edges:[...G.edges,W],timestamp:V}},getAllNodes(){return Object.values(J.nodes)},serialize(){return D6.deflate(u6(J.nodes))},deserialize(Q){J.nodes=B6(D6.inflate(new Uint8Array(Q)))}}}async function fQ(J,Q={}){let{rtc:W=!1,password:V,sm:G=!1,audit:q=!1,ii:P=!1,rx:X=!1,ai:Z=!1,geo:Y=!1,nlq:U=!1,saveDelay:k=200,oplogSize:F=20}=Q,K=M7(),z=iJ(),I=dJ(J,F),j=[],B=null,L=[],R=null,$=null,S=null,p=null,M=[],T={};Object.defineProperties(T,{syncChannel:{get:()=>$},broadcastChannel:{get:()=>S},hybridClock:{get:()=>z},graph:{get:()=>({getAllNodes:()=>K.getAllNodes(),get:(C)=>K.get(C)})},worker:{get:()=>R},oplog:{get:()=>I},options:{get:()=>Q},pako:{get:()=>D6},encode:{get:()=>u6},decode:{get:()=>B6},deepClone:{get:()=>F8}});async function A(C,N){try{let O=await B7[C](),f=N&&typeof N==="object"?N:{},_=await O.init?.(T,O,f);if(_)Object.assign(T,_);return O}catch(O){throw O}}function x(){let C=localStorage.getItem(`${J}_time`);B=C?JSON.parse(C):null}function w(C){B=C,localStorage.setItem(`${J}_time`,JSON.stringify(C))}function G6(){try{let C=URL.createObjectURL(new Blob([`(${lJ.toString()})()`],{type:"application/javascript"}));R=new Worker(C),URL.revokeObjectURL(C),R.addEventListener("message",({data:N})=>{return})}catch({message:C}){}}function h6(){let C={...K.nodes};L.forEach((N)=>N(C))}let e=j7(()=>h6()),P6=rJ(async()=>{let C=M.splice(0,M.length);if(!C.length)return!1;return await $.send(C),!0},16);async function Z8(){try{let N=await((O)=>new Promise((f,_)=>{let b=async({data:H})=>{if(H.type==="loaded"&&H.name===O)R.removeEventListener("message",b),f(new Uint8Array(H.data));else if(H.type==="error")R.removeEventListener("message",b),_(Error(H.message||"Unknown error"))};R.addEventListener("message",b),R.postMessage({type:"load",name:O})}))(`${J}_graph.msgpack`).catch(()=>new Uint8Array);N.byteLength>0&&K.deserialize(N)}catch({message:C}){}}async function z8(){try{let C=K.serialize();return await((O,f)=>new Promise((_,b)=>{let H=({data:D})=>{if(D.type==="saved"&&D.name===O)R.removeEventListener("message",H),_();else if(D.type==="error")R.removeEventListener("message",H),b(Error(D.message||"Save error"))};R.addEventListener("message",H),R.postMessage({type:"save",name:O,content:f})}))(`${J}_graph.msgpack`,C),S.postMessage("update"),!0}catch({message:C}){throw Error("Save failed")}}let P0=rJ(()=>z8(),k);async function oJ(C){let N=!1,O=null,f=(H)=>{if(!O||z.compare(H,O)>0)O=H},_=(H)=>{try{if(H instanceof Uint8Array)return B6(D6.inflate(H));if(Array.isArray(H))return H;if(H&&typeof H==="object")return B6(D6.inflate(new Uint8Array(Object.values(H))))}catch(D){}return null},b={upsert:(H)=>{let D=K.get(H.id),{resolved:g,value:y,timestamp:u}=cJ(D,H,z);if(!g)return;K.upsert(H.id,y,u),z.update(u),I.add({type:"upsert",id:H.id,timestamp:u}),N=!0,f(u)},remove:(H)=>{let D=K.get(H.id);if(!D||z.compare(D.timestamp,H.timestamp)>=0)return;delete K.nodes[H.id],z.update(H.timestamp),I.add({type:"remove",id:H.id,timestamp:H.timestamp}),N=!0,f(H.timestamp)},link:(H)=>{let D=K.get(H.sourceId),g=K.get(H.targetId);if(!D||!g||z.compare(D.timestamp,H.timestamp)>=0)return;K.link(H.sourceId,H.targetId,H.timestamp),z.update(H.timestamp),I.add({type:"link",...H}),N=!0,f(H.timestamp)},sync:async({timestamp:H})=>{let D=I.getOldest();if(H==null||D&&z.compare(H,D.timestamp)<0)return $.send([{type:"fullStateSync",graphData:K.serialize(),timestamp:B}]);let y=I.getDelta(H,z.compare);if(!y.length)return;let u=y.map((t)=>t.type==="upsert"?{...t,value:K.get(t.id)?.value}:t);await $.send([{type:"deltaSync",operations:D6.deflate(u6(u)),timestamp:B}])},deltaSync:({operations:H})=>{let D=_(H);if(!Array.isArray(D))return;for(let g of D)if(g&&b[g.type])b[g.type](g)},fullStateSync:async({graphData:H,timestamp:D})=>{if(B&&D&&z.compare(B,D)>0)return;if(!(H instanceof Uint8Array))if(H&&typeof H==="object")H=new Uint8Array(Object.values(H));else return;try{if(K.deserialize(H),I.clear(),N=!0,D)f(D),z.update(D)}catch(g){}}};for(let H of C)if(b[H.type])await b[H.type](H);if(O&&(!B||z.compare(O,B)>0))w(O);if(N)await P0(),e()}Object.assign(T,{use(C){if(typeof C==="function")j.push(C)},async put(C,N){let O=z.now();w(O),N=N??crypto.randomUUID(),K.upsert(N,C,O),I.add({type:"upsert",id:N,timestamp:O}),P0();try{M.push({type:"upsert",id:N,value:C,timestamp:O}),P6().catch(()=>{})}finally{e()}return N},async link(C,N){let O=z.now();if(!K.nodes[C]||!K.nodes[N])return;K.link(C,N,O),I.add({type:"link",sourceId:C,targetId:N,timestamp:O}),P0(),w(O);try{M.push({type:"link",sourceId:C,targetId:N,timestamp:O}),P6().catch(()=>{})}finally{e()}},async remove(C){let N=z.now(),O=K.get(C);if(!O)return;delete K.nodes[C],I.add({type:"remove",id:C,timestamp:N}),Object.values(K.nodes).forEach((f)=>f.edges=f.edges.filter((_)=>_!==C)),P0(),w(N);try{M.push({type:"remove",id:C,value:O.value,timestamp:N}),P6().catch(()=>{})}finally{e()}},async get(C,N=null){if(typeof C!=="string")return{result:null};let O=K.get(C);if(!O){if(N)N(null);return{result:null}}let f=(H)=>{if(!H)return null;let D=H.value!==null&&typeof H.value==="object"?{...H.value}:H.value;return{...H,value:D}};if(!N)return{result:f(O)};let _=O.timestamp;N(f(O));let b=(H)=>{let D=H[C];if(D){if(z.compare(D.timestamp,_)>0)_=D.timestamp,N(f(D))}else N(null),L.splice(L.indexOf(b),1)};return L.push(b),{result:f(O),unsubscribe:()=>{let H=L.indexOf(b);if(H>-1)L.splice(H,1)}}},async map(...C){let O={...{realtime:!1,query:{},field:null,order:"asc",$limit:null,$after:null,$before:null}},f=null,_=!1;C.forEach((g)=>typeof g==="function"?f=g:g&&typeof g==="object"&&(_=_||("realtime"in g),Object.assign(O,g))),f&&!_&&(O.realtime=!0);let b=K8(K.nodes,O),H=null,D=(g)=>{let y=new Map(b.map((m)=>[m.id,m])),u=new Map(g.map((m)=>[m.id,m])),t=[],A6=[],H8=[];for(let[m,K6]of u){let U0=y.get(m);if(!U0)t.push(K6);else if((K6.timestamp?.physical||0)!==(U0.timestamp?.physical||0)||(K6.timestamp?.logical||0)!==(U0.timestamp?.logical||0)||!nJ(K6.edges||[],U0.edges||[]))A6.push(K6)}for(let[m]of y)if(!u.has(m))H8.push(y.get(m));let w0=(m,K6)=>f({id:m.id,value:K6==="removed"?null:m.value,edges:m.edges||[],timestamp:m.timestamp||null,action:K6});t.forEach((m)=>w0(m,"added")),H8.forEach((m)=>w0(m,"removed")),A6.forEach((m)=>w0(m,"updated"))};if(f){if(b.forEach((g)=>{f({id:g.id,value:g.value,edges:g.edges,timestamp:g.timestamp,action:"initial"})}),O.realtime){let g=(y)=>{let u=y.timestamp?.physical||0,t=y.timestamp?.logical||0,A6=(y.edges||[]).join(",");return`${y.id}:${u}:${t}:${A6}`};H=(y)=>{let u=K8(y,O);if(u.length!==b.length)D(u),b=u;else{let t=u.map(g),A6=b.map(g);if(!nJ(t,A6))D(u),b=u}},L.push(H)}}return{results:b,...O.realtime&&f&&H&&{unsubscribe:()=>{let g=L.indexOf(H);g>-1&&L.splice(g,1)}}}},async clear(){K.nodes={},B=null,localStorage.removeItem(`${J}_time`),I.clear(),await z8(),h6()}}),G6(),x(),await C7(),await Z8();let U6=[];if(G)U6.push(A("sm",G));if(Z)U6.push(A("ai",Z));if(X)U6.push(A("rx",X));if(P)U6.push(A("ii",P));if(q)U6.push(A("audit",q));if(Y)U6.push(A("geo",Y));if(U)U6.push(A("nlq",U));await Promise.all(U6);let aJ=`graph-sync-room-${J}`;if(W){let C=W?.constructor===Object?W:{},N=C.cells?"genosrtc-cells":"genosrtc",{join:O,selfId:f}=await A(N),_={appId:"1234",...V&&{password:V},...C.relayUrls&&{relayUrls:C.relayUrls},...C.turnConfig&&{turnConfig:C.turnConfig},...C.cells&&C.cells!==!0&&{overlay:C.cells}},b=O(_,aJ);$=b.channel("syncGraph"),p=O(_,`app-sync-${J}`),T.room=p,T.selfId=f,b.on("peer:join",async(H)=>{$.send([{type:"sync",timestamp:B}])}),b.on("peer:leave",(H)=>{}),$?.on("message",async(H)=>{let D;try{if(H instanceof Uint8Array||H instanceof ArrayBuffer){let y=B6(H);D=Array.isArray(y)?y:[y]}else D=Array.isArray(H)?H:[H]}catch(y){return}let g=new Map([...new Set(D.flatMap((y)=>["id","sourceId","targetId"].map((u)=>y&&y[u]).filter(Boolean)))].map((y)=>K.get(y)?[y,F8(K.get(y))]:null).filter(Boolean));for(let y of j)try{if(D=await y(D,g),!D||!D.length)return}catch(u){return}await oJ(D)})}return S=new BroadcastChannel(`graphdb_sync_${J}`),S.onmessage=async(C)=>{if(C.data==="update")await Z8(),x(),e()},T}export{fQ as gdb};
|
|
1
|
+
var log=(()=>{const n=()=>{};return new Proxy(console,{get:(c,m)=>globalThis.__gdbDebug?c[m].bind(c):n})})();
|
|
2
|
+
function z8(J){let Q=J.length,W=0,V=0;while(V<Q){let G=J.charCodeAt(V++);if((G&4294967168)===0){W++;continue}else if((G&4294965248)===0)W+=2;else{if(G>=55296&&G<=56319){if(V<Q){let q=J.charCodeAt(V);if((q&64512)===56320)++V,G=((G&1023)<<10)+(q&1023)+65536}}if((G&4294901760)===0)W+=3;else W+=4}}return W}function oJ(J,Q,W){let V=J.length,G=W,q=0;while(q<V){let P=J.charCodeAt(q++);if((P&4294967168)===0){Q[G++]=P;continue}else if((P&4294965248)===0)Q[G++]=P>>6&31|192;else{if(P>=55296&&P<=56319){if(q<V){let X=J.charCodeAt(q);if((X&64512)===56320)++q,P=((P&1023)<<10)+(X&1023)+65536}}if((P&4294901760)===0)Q[G++]=P>>12&15|224,Q[G++]=P>>6&63|128;else Q[G++]=P>>18&7|240,Q[G++]=P>>12&63|128,Q[G++]=P>>6&63|128}Q[G++]=P&63|128}}var aJ=new TextEncoder,sJ=50;function tJ(J,Q,W){aJ.encodeInto(J,Q.subarray(W))}function H8(J,Q,W){if(J.length>sJ)tJ(J,Q,W);else oJ(J,Q,W)}var eJ=4096;function S0(J,Q,W){let V=Q,G=V+W,q=[],P="";while(V<G){let X=J[V++];if((X&128)===0)q.push(X);else if((X&224)===192){let z=J[V++]&63;q.push((X&31)<<6|z)}else if((X&240)===224){let z=J[V++]&63,Y=J[V++]&63;q.push((X&31)<<12|z<<6|Y)}else if((X&248)===240){let z=J[V++]&63,Y=J[V++]&63,U=J[V++]&63,Z=(X&7)<<18|z<<12|Y<<6|U;if(Z>65535)Z-=65536,q.push(Z>>>10&1023|55296),Z=56320|Z&1023;q.push(Z)}else q.push(X);if(q.length>=eJ)P+=String.fromCharCode(...q),q.length=0}if(q.length>0)P+=String.fromCharCode(...q);return P}var J5=new TextDecoder,W5=200;function Q5(J,Q,W){let V=J.subarray(Q,Q+W);return J5.decode(V)}function $8(J,Q,W){if(W>W5)return Q5(J,Q,W);else return S0(J,Q,W)}class N6{constructor(J,Q){this.type=J,this.data=Q}}class l extends Error{constructor(J){super(J);let Q=Object.create(l.prototype);Object.setPrototypeOf(this,Q),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:l.name})}}var S6=4294967295;function k8(J,Q,W){let V=W/4294967296,G=W;J.setUint32(Q,V),J.setUint32(Q+4,G)}function K0(J,Q,W){let V=Math.floor(W/4294967296),G=W;J.setUint32(Q,V),J.setUint32(Q+4,G)}function F0(J,Q){let W=J.getInt32(Q),V=J.getUint32(Q+4);return W*4294967296+V}function B8(J,Q){let W=J.getUint32(Q),V=J.getUint32(Q+4);return W*4294967296+V}var V5=-1,G5=4294967295,q5=17179869183;function X5({sec:J,nsec:Q}){if(J>=0&&Q>=0&&J<=q5)if(Q===0&&J<=G5){let W=new Uint8Array(4);return new DataView(W.buffer).setUint32(0,J),W}else{let W=J/4294967296,V=J&4294967295,G=new Uint8Array(8),q=new DataView(G.buffer);return q.setUint32(0,Q<<2|W&3),q.setUint32(4,V),G}else{let W=new Uint8Array(12),V=new DataView(W.buffer);return V.setUint32(0,Q),K0(V,4,J),W}}function Y5(J){let Q=J.getTime(),W=Math.floor(Q/1000),V=(Q-W*1000)*1e6,G=Math.floor(V/1e9);return{sec:W+G,nsec:V-G*1e9}}function P5(J){if(J instanceof Date){let Q=Y5(J);return X5(Q)}else return null}function U5(J){let Q=new DataView(J.buffer,J.byteOffset,J.byteLength);switch(J.byteLength){case 4:{let W=Q.getUint32(0),V=0;return{sec:W,nsec:0}}case 8:{let W=Q.getUint32(0),V=Q.getUint32(4),G=(W&3)*4294967296+V,q=W>>>2;return{sec:G,nsec:q}}case 12:{let W=F0(Q,4),V=Q.getUint32(0);return{sec:W,nsec:V}}default:throw new l(`Unrecognized data size for timestamp (expected 4, 8, or 12): ${J.length}`)}}function K5(J){let Q=U5(J);return new Date(Q.sec*1000+Q.nsec/1e6)}var j8={type:V5,encode:P5,decode:K5};class $6{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(j8)}register({type:J,encode:Q,decode:W}){if(J>=0)this.encoders[J]=Q,this.decoders[J]=W;else{let V=-1-J;this.builtInEncoders[V]=Q,this.builtInDecoders[V]=W}}tryToEncode(J,Q){for(let W=0;W<this.builtInEncoders.length;W++){let V=this.builtInEncoders[W];if(V!=null){let G=V(J,Q);if(G!=null){let q=-1-W;return new N6(q,G)}}}for(let W=0;W<this.encoders.length;W++){let V=this.encoders[W];if(V!=null){let G=V(J,Q);if(G!=null)return new N6(W,G)}}if(J instanceof N6)return J;return null}decode(J,Q,W){let V=Q<0?this.builtInDecoders[-1-Q]:this.decoders[Q];if(V)return V(J,Q,W);else return new N6(Q,J)}}$6.defaultCodec=new $6;function F5(J){return J instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&J instanceof SharedArrayBuffer}function p6(J){if(J instanceof Uint8Array)return J;else if(ArrayBuffer.isView(J))return new Uint8Array(J.buffer,J.byteOffset,J.byteLength);else if(F5(J))return new Uint8Array(J);else return Uint8Array.from(J)}var Z5=100,z5=2048;class Z0{constructor(J){this.entered=!1,this.extensionCodec=J?.extensionCodec??$6.defaultCodec,this.context=J?.context,this.useBigInt64=J?.useBigInt64??!1,this.maxDepth=J?.maxDepth??Z5,this.initialBufferSize=J?.initialBufferSize??z5,this.sortKeys=J?.sortKeys??!1,this.forceFloat32=J?.forceFloat32??!1,this.ignoreUndefined=J?.ignoreUndefined??!1,this.forceIntegerToFloat=J?.forceIntegerToFloat??!1,this.pos=0,this.view=new DataView(new ArrayBuffer(this.initialBufferSize)),this.bytes=new Uint8Array(this.view.buffer)}clone(){return new Z0({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,maxDepth:this.maxDepth,initialBufferSize:this.initialBufferSize,sortKeys:this.sortKeys,forceFloat32:this.forceFloat32,ignoreUndefined:this.ignoreUndefined,forceIntegerToFloat:this.forceIntegerToFloat})}reinitializeState(){this.pos=0}encodeSharedRef(J){if(this.entered)return this.clone().encodeSharedRef(J);try{return this.entered=!0,this.reinitializeState(),this.doEncode(J,1),this.bytes.subarray(0,this.pos)}finally{this.entered=!1}}encode(J){if(this.entered)return this.clone().encode(J);try{return this.entered=!0,this.reinitializeState(),this.doEncode(J,1),this.bytes.slice(0,this.pos)}finally{this.entered=!1}}doEncode(J,Q){if(Q>this.maxDepth)throw Error(`Too deep objects in depth ${Q}`);if(J==null)this.encodeNil();else if(typeof J==="boolean")this.encodeBoolean(J);else if(typeof J==="number")if(!this.forceIntegerToFloat)this.encodeNumber(J);else this.encodeNumberAsFloat(J);else if(typeof J==="string")this.encodeString(J);else if(this.useBigInt64&&typeof J==="bigint")this.encodeBigInt64(J);else this.encodeObject(J,Q)}ensureBufferSizeToWrite(J){let Q=this.pos+J;if(this.view.byteLength<Q)this.resizeBuffer(Q*2)}resizeBuffer(J){let Q=new ArrayBuffer(J),W=new Uint8Array(Q),V=new DataView(Q);W.set(this.bytes),this.view=V,this.bytes=W}encodeNil(){this.writeU8(192)}encodeBoolean(J){if(J===!1)this.writeU8(194);else this.writeU8(195)}encodeNumber(J){if(!this.forceIntegerToFloat&&Number.isSafeInteger(J))if(J>=0)if(J<128)this.writeU8(J);else if(J<256)this.writeU8(204),this.writeU8(J);else if(J<65536)this.writeU8(205),this.writeU16(J);else if(J<4294967296)this.writeU8(206),this.writeU32(J);else if(!this.useBigInt64)this.writeU8(207),this.writeU64(J);else this.encodeNumberAsFloat(J);else if(J>=-32)this.writeU8(224|J+32);else if(J>=-128)this.writeU8(208),this.writeI8(J);else if(J>=-32768)this.writeU8(209),this.writeI16(J);else if(J>=-2147483648)this.writeU8(210),this.writeI32(J);else if(!this.useBigInt64)this.writeU8(211),this.writeI64(J);else this.encodeNumberAsFloat(J);else this.encodeNumberAsFloat(J)}encodeNumberAsFloat(J){if(this.forceFloat32)this.writeU8(202),this.writeF32(J);else this.writeU8(203),this.writeF64(J)}encodeBigInt64(J){if(J>=BigInt(0))this.writeU8(207),this.writeBigUint64(J);else this.writeU8(211),this.writeBigInt64(J)}writeStringHeader(J){if(J<32)this.writeU8(160+J);else if(J<256)this.writeU8(217),this.writeU8(J);else if(J<65536)this.writeU8(218),this.writeU16(J);else if(J<4294967296)this.writeU8(219),this.writeU32(J);else throw Error(`Too long string: ${J} bytes in UTF-8`)}encodeString(J){let W=z8(J);this.ensureBufferSizeToWrite(5+W),this.writeStringHeader(W),H8(J,this.bytes,this.pos),this.pos+=W}encodeObject(J,Q){let W=this.extensionCodec.tryToEncode(J,this.context);if(W!=null)this.encodeExtension(W);else if(Array.isArray(J))this.encodeArray(J,Q);else if(ArrayBuffer.isView(J))this.encodeBinary(J);else if(typeof J==="object")this.encodeMap(J,Q);else throw Error(`Unrecognized object: ${Object.prototype.toString.apply(J)}`)}encodeBinary(J){let Q=J.byteLength;if(Q<256)this.writeU8(196),this.writeU8(Q);else if(Q<65536)this.writeU8(197),this.writeU16(Q);else if(Q<4294967296)this.writeU8(198),this.writeU32(Q);else throw Error(`Too large binary: ${Q}`);let W=p6(J);this.writeU8a(W)}encodeArray(J,Q){let W=J.length;if(W<16)this.writeU8(144+W);else if(W<65536)this.writeU8(220),this.writeU16(W);else if(W<4294967296)this.writeU8(221),this.writeU32(W);else throw Error(`Too large array: ${W}`);for(let V of J)this.doEncode(V,Q+1)}countWithoutUndefined(J,Q){let W=0;for(let V of Q)if(J[V]!==void 0)W++;return W}encodeMap(J,Q){let W=Object.keys(J);if(this.sortKeys)W.sort();let V=this.ignoreUndefined?this.countWithoutUndefined(J,W):W.length;if(V<16)this.writeU8(128+V);else if(V<65536)this.writeU8(222),this.writeU16(V);else if(V<4294967296)this.writeU8(223),this.writeU32(V);else throw Error(`Too large map object: ${V}`);for(let G of W){let q=J[G];if(!(this.ignoreUndefined&&q===void 0))this.encodeString(G),this.doEncode(q,Q+1)}}encodeExtension(J){if(typeof J.data==="function"){let W=J.data(this.pos+6),V=W.length;if(V>=4294967296)throw Error(`Too large extension object: ${V}`);this.writeU8(201),this.writeU32(V),this.writeI8(J.type),this.writeU8a(W);return}let Q=J.data.length;if(Q===1)this.writeU8(212);else if(Q===2)this.writeU8(213);else if(Q===4)this.writeU8(214);else if(Q===8)this.writeU8(215);else if(Q===16)this.writeU8(216);else if(Q<256)this.writeU8(199),this.writeU8(Q);else if(Q<65536)this.writeU8(200),this.writeU16(Q);else if(Q<4294967296)this.writeU8(201),this.writeU32(Q);else throw Error(`Too large extension object: ${Q}`);this.writeI8(J.type),this.writeU8a(J.data)}writeU8(J){this.ensureBufferSizeToWrite(1),this.view.setUint8(this.pos,J),this.pos++}writeU8a(J){let Q=J.length;this.ensureBufferSizeToWrite(Q),this.bytes.set(J,this.pos),this.pos+=Q}writeI8(J){this.ensureBufferSizeToWrite(1),this.view.setInt8(this.pos,J),this.pos++}writeU16(J){this.ensureBufferSizeToWrite(2),this.view.setUint16(this.pos,J),this.pos+=2}writeI16(J){this.ensureBufferSizeToWrite(2),this.view.setInt16(this.pos,J),this.pos+=2}writeU32(J){this.ensureBufferSizeToWrite(4),this.view.setUint32(this.pos,J),this.pos+=4}writeI32(J){this.ensureBufferSizeToWrite(4),this.view.setInt32(this.pos,J),this.pos+=4}writeF32(J){this.ensureBufferSizeToWrite(4),this.view.setFloat32(this.pos,J),this.pos+=4}writeF64(J){this.ensureBufferSizeToWrite(8),this.view.setFloat64(this.pos,J),this.pos+=8}writeU64(J){this.ensureBufferSizeToWrite(8),k8(this.view,this.pos,J),this.pos+=8}writeI64(J){this.ensureBufferSizeToWrite(8),K0(this.view,this.pos,J),this.pos+=8}writeBigUint64(J){this.ensureBufferSizeToWrite(8),this.view.setBigUint64(this.pos,J),this.pos+=8}writeBigInt64(J){this.ensureBufferSizeToWrite(8),this.view.setBigInt64(this.pos,J),this.pos+=8}}function u6(J,Q){return new Z0(Q).encodeSharedRef(J)}function z0(J){return`${J<0?"-":""}0x${Math.abs(J).toString(16).padStart(2,"0")}`}var H5=16,$5=16;class v0{constructor(J=H5,Q=$5){this.hit=0,this.miss=0,this.maxKeyLength=J,this.maxLengthPerKey=Q,this.caches=[];for(let W=0;W<this.maxKeyLength;W++)this.caches.push([])}canBeCached(J){return J>0&&J<=this.maxKeyLength}find(J,Q,W){let V=this.caches[W-1];J:for(let G of V){let q=G.bytes;for(let P=0;P<W;P++)if(q[P]!==J[Q+P])continue J;return G.str}return null}store(J,Q){let W=this.caches[J.length-1],V={bytes:J,str:Q};if(W.length>=this.maxLengthPerKey)W[Math.random()*W.length|0]=V;else W.push(V)}decode(J,Q,W){let V=this.find(J,Q,W);if(V!=null)return this.hit++,V;this.miss++;let G=S0(J,Q,W),q=Uint8Array.prototype.slice.call(J,Q,Q+W);return this.store(q,G),G}}var T0="array",_6="map_key",C8="map_value",k5=(J)=>{if(typeof J==="string"||typeof J==="number")return J;throw new l("The type of key must be string or number but "+typeof J)};class L8{constructor(){this.stack=[],this.stackHeadPosition=-1}get length(){return this.stackHeadPosition+1}top(){return this.stack[this.stackHeadPosition]}pushArrayState(J){let Q=this.getUninitializedStateFromPool();Q.type=T0,Q.position=0,Q.size=J,Q.array=Array(J)}pushMapState(J){let Q=this.getUninitializedStateFromPool();Q.type=_6,Q.readCount=0,Q.size=J,Q.map={}}getUninitializedStateFromPool(){if(this.stackHeadPosition++,this.stackHeadPosition===this.stack.length){let J={type:void 0,size:0,array:void 0,position:0,readCount:0,map:void 0,key:null};this.stack.push(J)}return this.stack[this.stackHeadPosition]}release(J){if(this.stack[this.stackHeadPosition]!==J)throw Error("Invalid stack state. Released state is not on top of the stack.");if(J.type===T0){let W=J;W.size=0,W.array=void 0,W.position=0,W.type=void 0}if(J.type===_6||J.type===C8){let W=J;W.size=0,W.map=void 0,W.readCount=0,W.type=void 0}this.stackHeadPosition--}reset(){this.stack.length=0,this.stackHeadPosition=-1}}var m6=-1,g0=new DataView(new ArrayBuffer(0)),B5=new Uint8Array(g0.buffer);try{g0.getInt8(0)}catch(J){if(!(J instanceof RangeError))throw Error("This module is not supported in the current JavaScript engine because DataView does not throw RangeError on out-of-bounds access")}var M8=RangeError("Insufficient data"),j5=new v0;class H0{constructor(J){this.totalPos=0,this.pos=0,this.view=g0,this.bytes=B5,this.headByte=m6,this.stack=new L8,this.entered=!1,this.extensionCodec=J?.extensionCodec??$6.defaultCodec,this.context=J?.context,this.useBigInt64=J?.useBigInt64??!1,this.rawStrings=J?.rawStrings??!1,this.maxStrLength=J?.maxStrLength??S6,this.maxBinLength=J?.maxBinLength??S6,this.maxArrayLength=J?.maxArrayLength??S6,this.maxMapLength=J?.maxMapLength??S6,this.maxExtLength=J?.maxExtLength??S6,this.keyDecoder=J?.keyDecoder!==void 0?J.keyDecoder:j5,this.mapKeyConverter=J?.mapKeyConverter??k5}clone(){return new H0({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,rawStrings:this.rawStrings,maxStrLength:this.maxStrLength,maxBinLength:this.maxBinLength,maxArrayLength:this.maxArrayLength,maxMapLength:this.maxMapLength,maxExtLength:this.maxExtLength,keyDecoder:this.keyDecoder})}reinitializeState(){this.totalPos=0,this.headByte=m6,this.stack.reset()}setBuffer(J){let Q=p6(J);this.bytes=Q,this.view=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),this.pos=0}appendBuffer(J){if(this.headByte===m6&&!this.hasRemaining(1))this.setBuffer(J);else{let Q=this.bytes.subarray(this.pos),W=p6(J),V=new Uint8Array(Q.length+W.length);V.set(Q),V.set(W,Q.length),this.setBuffer(V)}}hasRemaining(J){return this.view.byteLength-this.pos>=J}createExtraByteError(J){let{view:Q,pos:W}=this;return RangeError(`Extra ${Q.byteLength-W} of ${Q.byteLength} byte(s) found at buffer[${J}]`)}decode(J){if(this.entered)return this.clone().decode(J);try{this.entered=!0,this.reinitializeState(),this.setBuffer(J);let Q=this.doDecodeSync();if(this.hasRemaining(1))throw this.createExtraByteError(this.pos);return Q}finally{this.entered=!1}}*decodeMulti(J){if(this.entered){yield*this.clone().decodeMulti(J);return}try{this.entered=!0,this.reinitializeState(),this.setBuffer(J);while(this.hasRemaining(1))yield this.doDecodeSync()}finally{this.entered=!1}}async decodeAsync(J){if(this.entered)return this.clone().decodeAsync(J);try{this.entered=!0;let Q=!1,W;for await(let P of J){if(Q)throw this.entered=!1,this.createExtraByteError(this.totalPos);this.appendBuffer(P);try{W=this.doDecodeSync(),Q=!0}catch(X){if(!(X instanceof RangeError))throw X}this.totalPos+=this.pos}if(Q){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return W}let{headByte:V,pos:G,totalPos:q}=this;throw RangeError(`Insufficient data in parsing ${z0(V)} at ${q} (${G} in the current buffer)`)}finally{this.entered=!1}}decodeArrayStream(J){return this.decodeMultiAsync(J,!0)}decodeStream(J){return this.decodeMultiAsync(J,!1)}async*decodeMultiAsync(J,Q){if(this.entered){yield*this.clone().decodeMultiAsync(J,Q);return}try{this.entered=!0;let W=Q,V=-1;for await(let G of J){if(Q&&V===0)throw this.createExtraByteError(this.totalPos);if(this.appendBuffer(G),W)V=this.readArraySize(),W=!1,this.complete();try{while(!0)if(yield this.doDecodeSync(),--V===0)break}catch(q){if(!(q instanceof RangeError))throw q}this.totalPos+=this.pos}}finally{this.entered=!1}}doDecodeSync(){J:while(!0){let J=this.readHeadByte(),Q;if(J>=224)Q=J-256;else if(J<192)if(J<128)Q=J;else if(J<144){let V=J-128;if(V!==0){this.pushMapState(V),this.complete();continue J}else Q={}}else if(J<160){let V=J-144;if(V!==0){this.pushArrayState(V),this.complete();continue J}else Q=[]}else{let V=J-160;Q=this.decodeString(V,0)}else if(J===192)Q=null;else if(J===194)Q=!1;else if(J===195)Q=!0;else if(J===202)Q=this.readF32();else if(J===203)Q=this.readF64();else if(J===204)Q=this.readU8();else if(J===205)Q=this.readU16();else if(J===206)Q=this.readU32();else if(J===207)if(this.useBigInt64)Q=this.readU64AsBigInt();else Q=this.readU64();else if(J===208)Q=this.readI8();else if(J===209)Q=this.readI16();else if(J===210)Q=this.readI32();else if(J===211)if(this.useBigInt64)Q=this.readI64AsBigInt();else Q=this.readI64();else if(J===217){let V=this.lookU8();Q=this.decodeString(V,1)}else if(J===218){let V=this.lookU16();Q=this.decodeString(V,2)}else if(J===219){let V=this.lookU32();Q=this.decodeString(V,4)}else if(J===220){let V=this.readU16();if(V!==0){this.pushArrayState(V),this.complete();continue J}else Q=[]}else if(J===221){let V=this.readU32();if(V!==0){this.pushArrayState(V),this.complete();continue J}else Q=[]}else if(J===222){let V=this.readU16();if(V!==0){this.pushMapState(V),this.complete();continue J}else Q={}}else if(J===223){let V=this.readU32();if(V!==0){this.pushMapState(V),this.complete();continue J}else Q={}}else if(J===196){let V=this.lookU8();Q=this.decodeBinary(V,1)}else if(J===197){let V=this.lookU16();Q=this.decodeBinary(V,2)}else if(J===198){let V=this.lookU32();Q=this.decodeBinary(V,4)}else if(J===212)Q=this.decodeExtension(1,0);else if(J===213)Q=this.decodeExtension(2,0);else if(J===214)Q=this.decodeExtension(4,0);else if(J===215)Q=this.decodeExtension(8,0);else if(J===216)Q=this.decodeExtension(16,0);else if(J===199){let V=this.lookU8();Q=this.decodeExtension(V,1)}else if(J===200){let V=this.lookU16();Q=this.decodeExtension(V,2)}else if(J===201){let V=this.lookU32();Q=this.decodeExtension(V,4)}else throw new l(`Unrecognized type byte: ${z0(J)}`);this.complete();let W=this.stack;while(W.length>0){let V=W.top();if(V.type===T0)if(V.array[V.position]=Q,V.position++,V.position===V.size)Q=V.array,W.release(V);else continue J;else if(V.type===_6){if(Q==="__proto__")throw new l("The key __proto__ is not allowed");V.key=this.mapKeyConverter(Q),V.type=C8;continue J}else if(V.map[V.key]=Q,V.readCount++,V.readCount===V.size)Q=V.map,W.release(V);else{V.key=null,V.type=_6;continue J}}return Q}}readHeadByte(){if(this.headByte===m6)this.headByte=this.readU8();return this.headByte}complete(){this.headByte=m6}readArraySize(){let J=this.readHeadByte();switch(J){case 220:return this.readU16();case 221:return this.readU32();default:if(J<160)return J-144;else throw new l(`Unrecognized array type byte: ${z0(J)}`)}}pushMapState(J){if(J>this.maxMapLength)throw new l(`Max length exceeded: map length (${J}) > maxMapLengthLength (${this.maxMapLength})`);this.stack.pushMapState(J)}pushArrayState(J){if(J>this.maxArrayLength)throw new l(`Max length exceeded: array length (${J}) > maxArrayLength (${this.maxArrayLength})`);this.stack.pushArrayState(J)}decodeString(J,Q){if(!this.rawStrings||this.stateIsMapKey())return this.decodeUtf8String(J,Q);return this.decodeBinary(J,Q)}decodeUtf8String(J,Q){if(J>this.maxStrLength)throw new l(`Max length exceeded: UTF-8 byte length (${J}) > maxStrLength (${this.maxStrLength})`);if(this.bytes.byteLength<this.pos+Q+J)throw M8;let W=this.pos+Q,V;if(this.stateIsMapKey()&&this.keyDecoder?.canBeCached(J))V=this.keyDecoder.decode(this.bytes,W,J);else V=$8(this.bytes,W,J);return this.pos+=Q+J,V}stateIsMapKey(){if(this.stack.length>0)return this.stack.top().type===_6;return!1}decodeBinary(J,Q){if(J>this.maxBinLength)throw new l(`Max length exceeded: bin length (${J}) > maxBinLength (${this.maxBinLength})`);if(!this.hasRemaining(J+Q))throw M8;let W=this.pos+Q,V=this.bytes.subarray(W,W+J);return this.pos+=Q+J,V}decodeExtension(J,Q){if(J>this.maxExtLength)throw new l(`Max length exceeded: ext length (${J}) > maxExtLength (${this.maxExtLength})`);let W=this.view.getInt8(this.pos+Q),V=this.decodeBinary(J,Q+1);return this.extensionCodec.decode(V,W,this.context)}lookU8(){return this.view.getUint8(this.pos)}lookU16(){return this.view.getUint16(this.pos)}lookU32(){return this.view.getUint32(this.pos)}readU8(){let J=this.view.getUint8(this.pos);return this.pos++,J}readI8(){let J=this.view.getInt8(this.pos);return this.pos++,J}readU16(){let J=this.view.getUint16(this.pos);return this.pos+=2,J}readI16(){let J=this.view.getInt16(this.pos);return this.pos+=2,J}readU32(){let J=this.view.getUint32(this.pos);return this.pos+=4,J}readI32(){let J=this.view.getInt32(this.pos);return this.pos+=4,J}readU64(){let J=B8(this.view,this.pos);return this.pos+=8,J}readI64(){let J=F0(this.view,this.pos);return this.pos+=8,J}readU64AsBigInt(){let J=this.view.getBigUint64(this.pos);return this.pos+=8,J}readI64AsBigInt(){let J=this.view.getBigInt64(this.pos);return this.pos+=8,J}readF32(){let J=this.view.getFloat32(this.pos);return this.pos+=4,J}readF64(){let J=this.view.getFloat64(this.pos);return this.pos+=8,J}}function k6(J,Q){return new H0(Q).decode(J)}/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */function f6(J){let Q=J.length;while(--Q>=0)J[Q]=0}var M5=0,XJ=1,C5=2,L5=3,R5=258,V8=29,V0=256,o6=V0+1+V8,g6=30,G8=19,YJ=2*o6+1,B6=15,E0=16,I5=7,q8=256,PJ=16,UJ=17,KJ=18,r0=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]),C0=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]),O5=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),FJ=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),x5=512,q6=Array((o6+2)*2);f6(q6);var i6=Array(g6*2);f6(i6);var a6=Array(x5);f6(a6);var s6=Array(R5-L5+1);f6(s6);var X8=Array(V8);f6(X8);var L0=Array(g6);f6(L0);function y0(J,Q,W,V,G){this.static_tree=J,this.extra_bits=Q,this.extra_base=W,this.elems=V,this.max_length=G,this.has_stree=J&&J.length}var ZJ,zJ,HJ;function f0(J,Q){this.dyn_tree=J,this.max_code=0,this.stat_desc=Q}var $J=(J)=>{return J<256?a6[J]:a6[256+(J>>>7)]},t6=(J,Q)=>{J.pending_buf[J.pending++]=Q&255,J.pending_buf[J.pending++]=Q>>>8&255},n=(J,Q,W)=>{if(J.bi_valid>E0-W)J.bi_buf|=Q<<J.bi_valid&65535,t6(J,J.bi_buf),J.bi_buf=Q>>E0-J.bi_valid,J.bi_valid+=W-E0;else J.bi_buf|=Q<<J.bi_valid&65535,J.bi_valid+=W},W6=(J,Q,W)=>{n(J,W[Q*2],W[Q*2+1])},kJ=(J,Q)=>{let W=0;do W|=J&1,J>>>=1,W<<=1;while(--Q>0);return W>>>1},D5=(J)=>{if(J.bi_valid===16)t6(J,J.bi_buf),J.bi_buf=0,J.bi_valid=0;else if(J.bi_valid>=8)J.pending_buf[J.pending++]=J.bi_buf&255,J.bi_buf>>=8,J.bi_valid-=8},A5=(J,Q)=>{let{dyn_tree:W,max_code:V}=Q,G=Q.stat_desc.static_tree,q=Q.stat_desc.has_stree,P=Q.stat_desc.extra_bits,X=Q.stat_desc.extra_base,z=Q.stat_desc.max_length,Y,U,Z,K,F,$,R=0;for(K=0;K<=B6;K++)J.bl_count[K]=0;W[J.heap[J.heap_max]*2+1]=0;for(Y=J.heap_max+1;Y<YJ;Y++){if(U=J.heap[Y],K=W[W[U*2+1]*2+1]+1,K>z)K=z,R++;if(W[U*2+1]=K,U>V)continue;if(J.bl_count[K]++,F=0,U>=X)F=P[U-X];if($=W[U*2],J.opt_len+=$*(K+F),q)J.static_len+=$*(G[U*2+1]+F)}if(R===0)return;do{K=z-1;while(J.bl_count[K]===0)K--;J.bl_count[K]--,J.bl_count[K+1]+=2,J.bl_count[z]--,R-=2}while(R>0);for(K=z;K!==0;K--){U=J.bl_count[K];while(U!==0){if(Z=J.heap[--Y],Z>V)continue;if(W[Z*2+1]!==K)J.opt_len+=(K-W[Z*2+1])*W[Z*2],W[Z*2+1]=K;U--}}},BJ=(J,Q,W)=>{let V=Array(B6+1),G=0,q,P;for(q=1;q<=B6;q++)G=G+W[q-1]<<1,V[q]=G;for(P=0;P<=Q;P++){let X=J[P*2+1];if(X===0)continue;J[P*2]=kJ(V[X]++,X)}},w5=()=>{let J,Q,W,V,G,q=Array(B6+1);W=0;for(V=0;V<V8-1;V++){X8[V]=W;for(J=0;J<1<<r0[V];J++)s6[W++]=V}s6[W-1]=V,G=0;for(V=0;V<16;V++){L0[V]=G;for(J=0;J<1<<C0[V];J++)a6[G++]=V}G>>=7;for(;V<g6;V++){L0[V]=G<<7;for(J=0;J<1<<C0[V]-7;J++)a6[256+G++]=V}for(Q=0;Q<=B6;Q++)q[Q]=0;J=0;while(J<=143)q6[J*2+1]=8,J++,q[8]++;while(J<=255)q6[J*2+1]=9,J++,q[9]++;while(J<=279)q6[J*2+1]=7,J++,q[7]++;while(J<=287)q6[J*2+1]=8,J++,q[8]++;BJ(q6,o6+1,q);for(J=0;J<g6;J++)i6[J*2+1]=5,i6[J*2]=kJ(J,5);ZJ=new y0(q6,r0,V0+1,o6,B6),zJ=new y0(i6,C0,0,g6,B6),HJ=new y0([],O5,0,G8,I5)},jJ=(J)=>{let Q;for(Q=0;Q<o6;Q++)J.dyn_ltree[Q*2]=0;for(Q=0;Q<g6;Q++)J.dyn_dtree[Q*2]=0;for(Q=0;Q<G8;Q++)J.bl_tree[Q*2]=0;J.dyn_ltree[q8*2]=1,J.opt_len=J.static_len=0,J.sym_next=J.matches=0},MJ=(J)=>{if(J.bi_valid>8)t6(J,J.bi_buf);else if(J.bi_valid>0)J.pending_buf[J.pending++]=J.bi_buf;J.bi_buf=0,J.bi_valid=0},R8=(J,Q,W,V)=>{let G=Q*2,q=W*2;return J[G]<J[q]||J[G]===J[q]&&V[Q]<=V[W]},b0=(J,Q,W)=>{let V=J.heap[W],G=W<<1;while(G<=J.heap_len){if(G<J.heap_len&&R8(Q,J.heap[G+1],J.heap[G],J.depth))G++;if(R8(Q,V,J.heap[G],J.depth))break;J.heap[W]=J.heap[G],W=G,G<<=1}J.heap[W]=V},I8=(J,Q,W)=>{let V,G,q=0,P,X;if(J.sym_next!==0)do if(V=J.pending_buf[J.sym_buf+q++]&255,V+=(J.pending_buf[J.sym_buf+q++]&255)<<8,G=J.pending_buf[J.sym_buf+q++],V===0)W6(J,G,Q);else{if(P=s6[G],W6(J,P+V0+1,Q),X=r0[P],X!==0)G-=X8[P],n(J,G,X);if(V--,P=$J(V),W6(J,P,W),X=C0[P],X!==0)V-=L0[P],n(J,V,X)}while(q<J.sym_next);W6(J,q8,Q)},o0=(J,Q)=>{let W=Q.dyn_tree,V=Q.stat_desc.static_tree,G=Q.stat_desc.has_stree,q=Q.stat_desc.elems,P,X,z=-1,Y;J.heap_len=0,J.heap_max=YJ;for(P=0;P<q;P++)if(W[P*2]!==0)J.heap[++J.heap_len]=z=P,J.depth[P]=0;else W[P*2+1]=0;while(J.heap_len<2)if(Y=J.heap[++J.heap_len]=z<2?++z:0,W[Y*2]=1,J.depth[Y]=0,J.opt_len--,G)J.static_len-=V[Y*2+1];Q.max_code=z;for(P=J.heap_len>>1;P>=1;P--)b0(J,W,P);Y=q;do P=J.heap[1],J.heap[1]=J.heap[J.heap_len--],b0(J,W,1),X=J.heap[1],J.heap[--J.heap_max]=P,J.heap[--J.heap_max]=X,W[Y*2]=W[P*2]+W[X*2],J.depth[Y]=(J.depth[P]>=J.depth[X]?J.depth[P]:J.depth[X])+1,W[P*2+1]=W[X*2+1]=Y,J.heap[1]=Y++,b0(J,W,1);while(J.heap_len>=2);J.heap[--J.heap_max]=J.heap[1],A5(J,Q),BJ(W,z,J.bl_count)},O8=(J,Q,W)=>{let V,G=-1,q,P=Q[1],X=0,z=7,Y=4;if(P===0)z=138,Y=3;Q[(W+1)*2+1]=65535;for(V=0;V<=W;V++){if(q=P,P=Q[(V+1)*2+1],++X<z&&q===P)continue;else if(X<Y)J.bl_tree[q*2]+=X;else if(q!==0){if(q!==G)J.bl_tree[q*2]++;J.bl_tree[PJ*2]++}else if(X<=10)J.bl_tree[UJ*2]++;else J.bl_tree[KJ*2]++;if(X=0,G=q,P===0)z=138,Y=3;else if(q===P)z=6,Y=3;else z=7,Y=4}},x8=(J,Q,W)=>{let V,G=-1,q,P=Q[1],X=0,z=7,Y=4;if(P===0)z=138,Y=3;for(V=0;V<=W;V++){if(q=P,P=Q[(V+1)*2+1],++X<z&&q===P)continue;else if(X<Y)do W6(J,q,J.bl_tree);while(--X!==0);else if(q!==0){if(q!==G)W6(J,q,J.bl_tree),X--;W6(J,PJ,J.bl_tree),n(J,X-3,2)}else if(X<=10)W6(J,UJ,J.bl_tree),n(J,X-3,3);else W6(J,KJ,J.bl_tree),n(J,X-11,7);if(X=0,G=q,P===0)z=138,Y=3;else if(q===P)z=6,Y=3;else z=7,Y=4}},N5=(J)=>{let Q;O8(J,J.dyn_ltree,J.l_desc.max_code),O8(J,J.dyn_dtree,J.d_desc.max_code),o0(J,J.bl_desc);for(Q=G8-1;Q>=3;Q--)if(J.bl_tree[FJ[Q]*2+1]!==0)break;return J.opt_len+=3*(Q+1)+5+5+4,Q},S5=(J,Q,W,V)=>{let G;n(J,Q-257,5),n(J,W-1,5),n(J,V-4,4);for(G=0;G<V;G++)n(J,J.bl_tree[FJ[G]*2+1],3);x8(J,J.dyn_ltree,Q-1),x8(J,J.dyn_dtree,W-1)},v5=(J)=>{let Q=4093624447,W;for(W=0;W<=31;W++,Q>>>=1)if(Q&1&&J.dyn_ltree[W*2]!==0)return 0;if(J.dyn_ltree[18]!==0||J.dyn_ltree[20]!==0||J.dyn_ltree[26]!==0)return 1;for(W=32;W<V0;W++)if(J.dyn_ltree[W*2]!==0)return 1;return 0},D8=!1,T5=(J)=>{if(!D8)w5(),D8=!0;J.l_desc=new f0(J.dyn_ltree,ZJ),J.d_desc=new f0(J.dyn_dtree,zJ),J.bl_desc=new f0(J.bl_tree,HJ),J.bi_buf=0,J.bi_valid=0,jJ(J)},CJ=(J,Q,W,V)=>{if(n(J,(M5<<1)+(V?1:0),3),MJ(J),t6(J,W),t6(J,~W),W)J.pending_buf.set(J.window.subarray(Q,Q+W),J.pending);J.pending+=W},g5=(J)=>{n(J,XJ<<1,3),W6(J,q8,q6),D5(J)},E5=(J,Q,W,V)=>{let G,q,P=0;if(J.level>0){if(J.strm.data_type===2)J.strm.data_type=v5(J);if(o0(J,J.l_desc),o0(J,J.d_desc),P=N5(J),G=J.opt_len+3+7>>>3,q=J.static_len+3+7>>>3,q<=G)G=q}else G=q=W+5;if(W+4<=G&&Q!==-1)CJ(J,Q,W,V);else if(J.strategy===4||q===G)n(J,(XJ<<1)+(V?1:0),3),I8(J,q6,i6);else n(J,(C5<<1)+(V?1:0),3),S5(J,J.l_desc.max_code+1,J.d_desc.max_code+1,P+1),I8(J,J.dyn_ltree,J.dyn_dtree);if(jJ(J),V)MJ(J)},y5=(J,Q,W)=>{if(J.pending_buf[J.sym_buf+J.sym_next++]=Q,J.pending_buf[J.sym_buf+J.sym_next++]=Q>>8,J.pending_buf[J.sym_buf+J.sym_next++]=W,Q===0)J.dyn_ltree[W*2]++;else J.matches++,Q--,J.dyn_ltree[(s6[W]+V0+1)*2]++,J.dyn_dtree[$J(Q)*2]++;return J.sym_next===J.sym_end},f5=T5,b5=CJ,h5=E5,p5=y5,u5=g5,m5={_tr_init:f5,_tr_stored_block:b5,_tr_flush_block:h5,_tr_tally:p5,_tr_align:u5},_5=(J,Q,W,V)=>{let G=J&65535|0,q=J>>>16&65535|0,P=0;while(W!==0){P=W>2000?2000:W,W-=P;do G=G+Q[V++]|0,q=q+G|0;while(--P);G%=65521,q%=65521}return G|q<<16|0},e6=_5,c5=()=>{let J,Q=[];for(var W=0;W<256;W++){J=W;for(var V=0;V<8;V++)J=J&1?3988292384^J>>>1:J>>>1;Q[W]=J}return Q},d5=new Uint32Array(c5()),l5=(J,Q,W,V)=>{let G=d5,q=V+W;J^=-1;for(let P=V;P<q;P++)J=J>>>8^G[(J^Q[P])&255];return J^-1},c=l5,C6={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"},I6={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:i5,_tr_stored_block:a0,_tr_flush_block:n5,_tr_tally:K6,_tr_align:r5}=m5,{Z_NO_FLUSH:F6,Z_PARTIAL_FLUSH:o5,Z_FULL_FLUSH:a5,Z_FINISH:s,Z_BLOCK:A8,Z_OK:d,Z_STREAM_END:w8,Z_STREAM_ERROR:Q6,Z_DATA_ERROR:s5,Z_BUF_ERROR:h0,Z_DEFAULT_COMPRESSION:t5,Z_FILTERED:e5,Z_HUFFMAN_ONLY:$0,Z_RLE:J1,Z_FIXED:W1,Z_DEFAULT_STRATEGY:Q1,Z_UNKNOWN:V1,Z_DEFLATED:O0}=I6,G1=9,q1=15,X1=8,Y1=29,P1=256,s0=P1+1+Y1,U1=30,K1=19,F1=2*s0+1,Z1=15,T=3,U6=258,V6=U6+T+1,z1=32,E6=42,Y8=57,t0=69,e0=73,J8=91,W8=103,j6=113,d6=666,i=1,b6=2,L6=3,h6=4,H1=3,M6=(J,Q)=>{return J.msg=C6[Q],Q},N8=(J)=>{return J*2-(J>4?9:0)},P6=(J)=>{let Q=J.length;while(--Q>=0)J[Q]=0},$1=(J)=>{let Q,W,V,G=J.w_size;Q=J.hash_size,V=Q;do W=J.head[--V],J.head[V]=W>=G?W-G:0;while(--Q);Q=G,V=Q;do W=J.prev[--V],J.prev[V]=W>=G?W-G:0;while(--Q)},k1=(J,Q,W)=>(Q<<J.hash_shift^W)&J.hash_mask,Z6=k1,o=(J)=>{let Q=J.state,W=Q.pending;if(W>J.avail_out)W=J.avail_out;if(W===0)return;if(J.output.set(Q.pending_buf.subarray(Q.pending_out,Q.pending_out+W),J.next_out),J.next_out+=W,Q.pending_out+=W,J.total_out+=W,J.avail_out-=W,Q.pending-=W,Q.pending===0)Q.pending_out=0},a=(J,Q)=>{n5(J,J.block_start>=0?J.block_start:-1,J.strstart-J.block_start,Q),J.block_start=J.strstart,o(J.strm)},g=(J,Q)=>{J.pending_buf[J.pending++]=Q},c6=(J,Q)=>{J.pending_buf[J.pending++]=Q>>>8&255,J.pending_buf[J.pending++]=Q&255},Q8=(J,Q,W,V)=>{let G=J.avail_in;if(G>V)G=V;if(G===0)return 0;if(J.avail_in-=G,Q.set(J.input.subarray(J.next_in,J.next_in+G),W),J.state.wrap===1)J.adler=e6(J.adler,Q,G,W);else if(J.state.wrap===2)J.adler=c(J.adler,Q,G,W);return J.next_in+=G,J.total_in+=G,G},LJ=(J,Q)=>{let{max_chain_length:W,strstart:V}=J,G,q,P=J.prev_length,X=J.nice_match,z=J.strstart>J.w_size-V6?J.strstart-(J.w_size-V6):0,Y=J.window,U=J.w_mask,Z=J.prev,K=J.strstart+U6,F=Y[V+P-1],$=Y[V+P];if(J.prev_length>=J.good_match)W>>=2;if(X>J.lookahead)X=J.lookahead;do{if(G=Q,Y[G+P]!==$||Y[G+P-1]!==F||Y[G]!==Y[V]||Y[++G]!==Y[V+1])continue;V+=2,G++;do;while(Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&Y[++V]===Y[++G]&&V<K);if(q=U6-(K-V),V=K-U6,q>P){if(J.match_start=Q,P=q,q>=X)break;F=Y[V+P-1],$=Y[V+P]}}while((Q=Z[Q&U])>z&&--W!==0);if(P<=J.lookahead)return P;return J.lookahead},y6=(J)=>{let Q=J.w_size,W,V,G;do{if(V=J.window_size-J.lookahead-J.strstart,J.strstart>=Q+(Q-V6)){if(J.window.set(J.window.subarray(Q,Q+Q-V),0),J.match_start-=Q,J.strstart-=Q,J.block_start-=Q,J.insert>J.strstart)J.insert=J.strstart;$1(J),V+=Q}if(J.strm.avail_in===0)break;if(W=Q8(J.strm,J.window,J.strstart+J.lookahead,V),J.lookahead+=W,J.lookahead+J.insert>=T){G=J.strstart-J.insert,J.ins_h=J.window[G],J.ins_h=Z6(J,J.ins_h,J.window[G+1]);while(J.insert)if(J.ins_h=Z6(J,J.ins_h,J.window[G+T-1]),J.prev[G&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=G,G++,J.insert--,J.lookahead+J.insert<T)break}}while(J.lookahead<V6&&J.strm.avail_in!==0)},RJ=(J,Q)=>{let W=J.pending_buf_size-5>J.w_size?J.w_size:J.pending_buf_size-5,V,G,q,P=0,X=J.strm.avail_in;do{if(V=65535,q=J.bi_valid+42>>3,J.strm.avail_out<q)break;if(q=J.strm.avail_out-q,G=J.strstart-J.block_start,V>G+J.strm.avail_in)V=G+J.strm.avail_in;if(V>q)V=q;if(V<W&&(V===0&&Q!==s||Q===F6||V!==G+J.strm.avail_in))break;if(P=Q===s&&V===G+J.strm.avail_in?1:0,a0(J,0,0,P),J.pending_buf[J.pending-4]=V,J.pending_buf[J.pending-3]=V>>8,J.pending_buf[J.pending-2]=~V,J.pending_buf[J.pending-1]=~V>>8,o(J.strm),G){if(G>V)G=V;J.strm.output.set(J.window.subarray(J.block_start,J.block_start+G),J.strm.next_out),J.strm.next_out+=G,J.strm.avail_out-=G,J.strm.total_out+=G,J.block_start+=G,V-=G}if(V)Q8(J.strm,J.strm.output,J.strm.next_out,V),J.strm.next_out+=V,J.strm.avail_out-=V,J.strm.total_out+=V}while(P===0);if(X-=J.strm.avail_in,X){if(X>=J.w_size)J.matches=2,J.window.set(J.strm.input.subarray(J.strm.next_in-J.w_size,J.strm.next_in),0),J.strstart=J.w_size,J.insert=J.strstart;else{if(J.window_size-J.strstart<=X){if(J.strstart-=J.w_size,J.window.set(J.window.subarray(J.w_size,J.w_size+J.strstart),0),J.matches<2)J.matches++;if(J.insert>J.strstart)J.insert=J.strstart}J.window.set(J.strm.input.subarray(J.strm.next_in-X,J.strm.next_in),J.strstart),J.strstart+=X,J.insert+=X>J.w_size-J.insert?J.w_size-J.insert:X}J.block_start=J.strstart}if(J.high_water<J.strstart)J.high_water=J.strstart;if(P)return h6;if(Q!==F6&&Q!==s&&J.strm.avail_in===0&&J.strstart===J.block_start)return b6;if(q=J.window_size-J.strstart,J.strm.avail_in>q&&J.block_start>=J.w_size){if(J.block_start-=J.w_size,J.strstart-=J.w_size,J.window.set(J.window.subarray(J.w_size,J.w_size+J.strstart),0),J.matches<2)J.matches++;if(q+=J.w_size,J.insert>J.strstart)J.insert=J.strstart}if(q>J.strm.avail_in)q=J.strm.avail_in;if(q)Q8(J.strm,J.window,J.strstart,q),J.strstart+=q,J.insert+=q>J.w_size-J.insert?J.w_size-J.insert:q;if(J.high_water<J.strstart)J.high_water=J.strstart;if(q=J.bi_valid+42>>3,q=J.pending_buf_size-q>65535?65535:J.pending_buf_size-q,W=q>J.w_size?J.w_size:q,G=J.strstart-J.block_start,G>=W||(G||Q===s)&&Q!==F6&&J.strm.avail_in===0&&G<=q)V=G>q?q:G,P=Q===s&&J.strm.avail_in===0&&V===G?1:0,a0(J,J.block_start,V,P),J.block_start+=V,o(J.strm);return P?L6:i},p0=(J,Q)=>{let W,V;for(;;){if(J.lookahead<V6){if(y6(J),J.lookahead<V6&&Q===F6)return i;if(J.lookahead===0)break}if(W=0,J.lookahead>=T)J.ins_h=Z6(J,J.ins_h,J.window[J.strstart+T-1]),W=J.prev[J.strstart&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=J.strstart;if(W!==0&&J.strstart-W<=J.w_size-V6)J.match_length=LJ(J,W);if(J.match_length>=T)if(V=K6(J,J.strstart-J.match_start,J.match_length-T),J.lookahead-=J.match_length,J.match_length<=J.max_lazy_match&&J.lookahead>=T){J.match_length--;do J.strstart++,J.ins_h=Z6(J,J.ins_h,J.window[J.strstart+T-1]),W=J.prev[J.strstart&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=J.strstart;while(--J.match_length!==0);J.strstart++}else J.strstart+=J.match_length,J.match_length=0,J.ins_h=J.window[J.strstart],J.ins_h=Z6(J,J.ins_h,J.window[J.strstart+1]);else V=K6(J,0,J.window[J.strstart]),J.lookahead--,J.strstart++;if(V){if(a(J,!1),J.strm.avail_out===0)return i}}if(J.insert=J.strstart<T-1?J.strstart:T-1,Q===s){if(a(J,!0),J.strm.avail_out===0)return L6;return h6}if(J.sym_next){if(a(J,!1),J.strm.avail_out===0)return i}return b6},v6=(J,Q)=>{let W,V,G;for(;;){if(J.lookahead<V6){if(y6(J),J.lookahead<V6&&Q===F6)return i;if(J.lookahead===0)break}if(W=0,J.lookahead>=T)J.ins_h=Z6(J,J.ins_h,J.window[J.strstart+T-1]),W=J.prev[J.strstart&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=J.strstart;if(J.prev_length=J.match_length,J.prev_match=J.match_start,J.match_length=T-1,W!==0&&J.prev_length<J.max_lazy_match&&J.strstart-W<=J.w_size-V6){if(J.match_length=LJ(J,W),J.match_length<=5&&(J.strategy===e5||J.match_length===T&&J.strstart-J.match_start>4096))J.match_length=T-1}if(J.prev_length>=T&&J.match_length<=J.prev_length){G=J.strstart+J.lookahead-T,V=K6(J,J.strstart-1-J.prev_match,J.prev_length-T),J.lookahead-=J.prev_length-1,J.prev_length-=2;do if(++J.strstart<=G)J.ins_h=Z6(J,J.ins_h,J.window[J.strstart+T-1]),W=J.prev[J.strstart&J.w_mask]=J.head[J.ins_h],J.head[J.ins_h]=J.strstart;while(--J.prev_length!==0);if(J.match_available=0,J.match_length=T-1,J.strstart++,V){if(a(J,!1),J.strm.avail_out===0)return i}}else if(J.match_available){if(V=K6(J,0,J.window[J.strstart-1]),V)a(J,!1);if(J.strstart++,J.lookahead--,J.strm.avail_out===0)return i}else J.match_available=1,J.strstart++,J.lookahead--}if(J.match_available)V=K6(J,0,J.window[J.strstart-1]),J.match_available=0;if(J.insert=J.strstart<T-1?J.strstart:T-1,Q===s){if(a(J,!0),J.strm.avail_out===0)return L6;return h6}if(J.sym_next){if(a(J,!1),J.strm.avail_out===0)return i}return b6},B1=(J,Q)=>{let W,V,G,q,P=J.window;for(;;){if(J.lookahead<=U6){if(y6(J),J.lookahead<=U6&&Q===F6)return i;if(J.lookahead===0)break}if(J.match_length=0,J.lookahead>=T&&J.strstart>0){if(G=J.strstart-1,V=P[G],V===P[++G]&&V===P[++G]&&V===P[++G]){q=J.strstart+U6;do;while(V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&V===P[++G]&&G<q);if(J.match_length=U6-(q-G),J.match_length>J.lookahead)J.match_length=J.lookahead}}if(J.match_length>=T)W=K6(J,1,J.match_length-T),J.lookahead-=J.match_length,J.strstart+=J.match_length,J.match_length=0;else W=K6(J,0,J.window[J.strstart]),J.lookahead--,J.strstart++;if(W){if(a(J,!1),J.strm.avail_out===0)return i}}if(J.insert=0,Q===s){if(a(J,!0),J.strm.avail_out===0)return L6;return h6}if(J.sym_next){if(a(J,!1),J.strm.avail_out===0)return i}return b6},j1=(J,Q)=>{let W;for(;;){if(J.lookahead===0){if(y6(J),J.lookahead===0){if(Q===F6)return i;break}}if(J.match_length=0,W=K6(J,0,J.window[J.strstart]),J.lookahead--,J.strstart++,W){if(a(J,!1),J.strm.avail_out===0)return i}}if(J.insert=0,Q===s){if(a(J,!0),J.strm.avail_out===0)return L6;return h6}if(J.sym_next){if(a(J,!1),J.strm.avail_out===0)return i}return b6};function J6(J,Q,W,V,G){this.good_length=J,this.max_lazy=Q,this.nice_length=W,this.max_chain=V,this.func=G}var l6=[new J6(0,0,0,0,RJ),new J6(4,4,8,4,p0),new J6(4,5,16,8,p0),new J6(4,6,32,32,p0),new J6(4,4,16,16,v6),new J6(8,16,32,32,v6),new J6(8,16,128,128,v6),new J6(8,32,128,256,v6),new J6(32,128,258,1024,v6),new J6(32,258,258,4096,v6)],M1=(J)=>{J.window_size=2*J.w_size,P6(J.head),J.max_lazy_match=l6[J.level].max_lazy,J.good_match=l6[J.level].good_length,J.nice_match=l6[J.level].nice_length,J.max_chain_length=l6[J.level].max_chain,J.strstart=0,J.block_start=0,J.lookahead=0,J.insert=0,J.match_length=J.prev_length=T-1,J.match_available=0,J.ins_h=0};function C1(){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=O0,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(F1*2),this.dyn_dtree=new Uint16Array((2*U1+1)*2),this.bl_tree=new Uint16Array((2*K1+1)*2),P6(this.dyn_ltree),P6(this.dyn_dtree),P6(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(Z1+1),this.heap=new Uint16Array(2*s0+1),P6(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*s0+1),P6(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}var G0=(J)=>{if(!J)return 1;let Q=J.state;if(!Q||Q.strm!==J||Q.status!==E6&&Q.status!==Y8&&Q.status!==t0&&Q.status!==e0&&Q.status!==J8&&Q.status!==W8&&Q.status!==j6&&Q.status!==d6)return 1;return 0},IJ=(J)=>{if(G0(J))return M6(J,Q6);J.total_in=J.total_out=0,J.data_type=V1;let Q=J.state;if(Q.pending=0,Q.pending_out=0,Q.wrap<0)Q.wrap=-Q.wrap;return Q.status=Q.wrap===2?Y8:Q.wrap?E6:j6,J.adler=Q.wrap===2?0:1,Q.last_flush=-2,i5(Q),d},OJ=(J)=>{let Q=IJ(J);if(Q===d)M1(J.state);return Q},L1=(J,Q)=>{if(G0(J)||J.state.wrap!==2)return Q6;return J.state.gzhead=Q,d},xJ=(J,Q,W,V,G,q)=>{if(!J)return Q6;let P=1;if(Q===t5)Q=6;if(V<0)P=0,V=-V;else if(V>15)P=2,V-=16;if(G<1||G>G1||W!==O0||V<8||V>15||Q<0||Q>9||q<0||q>W1||V===8&&P!==1)return M6(J,Q6);if(V===8)V=9;let X=new C1;return J.state=X,X.strm=J,X.status=E6,X.wrap=P,X.gzhead=null,X.w_bits=V,X.w_size=1<<X.w_bits,X.w_mask=X.w_size-1,X.hash_bits=G+7,X.hash_size=1<<X.hash_bits,X.hash_mask=X.hash_size-1,X.hash_shift=~~((X.hash_bits+T-1)/T),X.window=new Uint8Array(X.w_size*2),X.head=new Uint16Array(X.hash_size),X.prev=new Uint16Array(X.w_size),X.lit_bufsize=1<<G+6,X.pending_buf_size=X.lit_bufsize*4,X.pending_buf=new Uint8Array(X.pending_buf_size),X.sym_buf=X.lit_bufsize,X.sym_end=(X.lit_bufsize-1)*3,X.level=Q,X.strategy=q,X.method=W,OJ(J)},R1=(J,Q)=>{return xJ(J,Q,O0,q1,X1,Q1)},I1=(J,Q)=>{if(G0(J)||Q>A8||Q<0)return J?M6(J,Q6):Q6;let W=J.state;if(!J.output||J.avail_in!==0&&!J.input||W.status===d6&&Q!==s)return M6(J,J.avail_out===0?h0:Q6);let V=W.last_flush;if(W.last_flush=Q,W.pending!==0){if(o(J),J.avail_out===0)return W.last_flush=-1,d}else if(J.avail_in===0&&N8(Q)<=N8(V)&&Q!==s)return M6(J,h0);if(W.status===d6&&J.avail_in!==0)return M6(J,h0);if(W.status===E6&&W.wrap===0)W.status=j6;if(W.status===E6){let G=O0+(W.w_bits-8<<4)<<8,q=-1;if(W.strategy>=$0||W.level<2)q=0;else if(W.level<6)q=1;else if(W.level===6)q=2;else q=3;if(G|=q<<6,W.strstart!==0)G|=z1;if(G+=31-G%31,c6(W,G),W.strstart!==0)c6(W,J.adler>>>16),c6(W,J.adler&65535);if(J.adler=1,W.status=j6,o(J),W.pending!==0)return W.last_flush=-1,d}if(W.status===Y8)if(J.adler=0,g(W,31),g(W,139),g(W,8),!W.gzhead){if(g(W,0),g(W,0),g(W,0),g(W,0),g(W,0),g(W,W.level===9?2:W.strategy>=$0||W.level<2?4:0),g(W,H1),W.status=j6,o(J),W.pending!==0)return W.last_flush=-1,d}else{if(g(W,(W.gzhead.text?1:0)+(W.gzhead.hcrc?2:0)+(!W.gzhead.extra?0:4)+(!W.gzhead.name?0:8)+(!W.gzhead.comment?0:16)),g(W,W.gzhead.time&255),g(W,W.gzhead.time>>8&255),g(W,W.gzhead.time>>16&255),g(W,W.gzhead.time>>24&255),g(W,W.level===9?2:W.strategy>=$0||W.level<2?4:0),g(W,W.gzhead.os&255),W.gzhead.extra&&W.gzhead.extra.length)g(W,W.gzhead.extra.length&255),g(W,W.gzhead.extra.length>>8&255);if(W.gzhead.hcrc)J.adler=c(J.adler,W.pending_buf,W.pending,0);W.gzindex=0,W.status=t0}if(W.status===t0){if(W.gzhead.extra){let G=W.pending,q=(W.gzhead.extra.length&65535)-W.gzindex;while(W.pending+q>W.pending_buf_size){let X=W.pending_buf_size-W.pending;if(W.pending_buf.set(W.gzhead.extra.subarray(W.gzindex,W.gzindex+X),W.pending),W.pending=W.pending_buf_size,W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);if(W.gzindex+=X,o(J),W.pending!==0)return W.last_flush=-1,d;G=0,q-=X}let P=new Uint8Array(W.gzhead.extra);if(W.pending_buf.set(P.subarray(W.gzindex,W.gzindex+q),W.pending),W.pending+=q,W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);W.gzindex=0}W.status=e0}if(W.status===e0){if(W.gzhead.name){let G=W.pending,q;do{if(W.pending===W.pending_buf_size){if(W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);if(o(J),W.pending!==0)return W.last_flush=-1,d;G=0}if(W.gzindex<W.gzhead.name.length)q=W.gzhead.name.charCodeAt(W.gzindex++)&255;else q=0;g(W,q)}while(q!==0);if(W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);W.gzindex=0}W.status=J8}if(W.status===J8){if(W.gzhead.comment){let G=W.pending,q;do{if(W.pending===W.pending_buf_size){if(W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G);if(o(J),W.pending!==0)return W.last_flush=-1,d;G=0}if(W.gzindex<W.gzhead.comment.length)q=W.gzhead.comment.charCodeAt(W.gzindex++)&255;else q=0;g(W,q)}while(q!==0);if(W.gzhead.hcrc&&W.pending>G)J.adler=c(J.adler,W.pending_buf,W.pending-G,G)}W.status=W8}if(W.status===W8){if(W.gzhead.hcrc){if(W.pending+2>W.pending_buf_size){if(o(J),W.pending!==0)return W.last_flush=-1,d}g(W,J.adler&255),g(W,J.adler>>8&255),J.adler=0}if(W.status=j6,o(J),W.pending!==0)return W.last_flush=-1,d}if(J.avail_in!==0||W.lookahead!==0||Q!==F6&&W.status!==d6){let G=W.level===0?RJ(W,Q):W.strategy===$0?j1(W,Q):W.strategy===J1?B1(W,Q):l6[W.level].func(W,Q);if(G===L6||G===h6)W.status=d6;if(G===i||G===L6){if(J.avail_out===0)W.last_flush=-1;return d}if(G===b6){if(Q===o5)r5(W);else if(Q!==A8){if(a0(W,0,0,!1),Q===a5){if(P6(W.head),W.lookahead===0)W.strstart=0,W.block_start=0,W.insert=0}}if(o(J),J.avail_out===0)return W.last_flush=-1,d}}if(Q!==s)return d;if(W.wrap<=0)return w8;if(W.wrap===2)g(W,J.adler&255),g(W,J.adler>>8&255),g(W,J.adler>>16&255),g(W,J.adler>>24&255),g(W,J.total_in&255),g(W,J.total_in>>8&255),g(W,J.total_in>>16&255),g(W,J.total_in>>24&255);else c6(W,J.adler>>>16),c6(W,J.adler&65535);if(o(J),W.wrap>0)W.wrap=-W.wrap;return W.pending!==0?d:w8},O1=(J)=>{if(G0(J))return Q6;let Q=J.state.status;return J.state=null,Q===j6?M6(J,s5):d},x1=(J,Q)=>{let W=Q.length;if(G0(J))return Q6;let V=J.state,G=V.wrap;if(G===2||G===1&&V.status!==E6||V.lookahead)return Q6;if(G===1)J.adler=e6(J.adler,Q,W,0);if(V.wrap=0,W>=V.w_size){if(G===0)P6(V.head),V.strstart=0,V.block_start=0,V.insert=0;let z=new Uint8Array(V.w_size);z.set(Q.subarray(W-V.w_size,W),0),Q=z,W=V.w_size}let{avail_in:q,next_in:P,input:X}=J;J.avail_in=W,J.next_in=0,J.input=Q,y6(V);while(V.lookahead>=T){let z=V.strstart,Y=V.lookahead-(T-1);do V.ins_h=Z6(V,V.ins_h,V.window[z+T-1]),V.prev[z&V.w_mask]=V.head[V.ins_h],V.head[V.ins_h]=z,z++;while(--Y);V.strstart=z,V.lookahead=T-1,y6(V)}return V.strstart+=V.lookahead,V.block_start=V.strstart,V.insert=V.lookahead,V.lookahead=0,V.match_length=V.prev_length=T-1,V.match_available=0,J.next_in=P,J.input=X,J.avail_in=q,V.wrap=G,d},D1=R1,A1=xJ,w1=OJ,N1=IJ,S1=L1,v1=I1,T1=O1,g1=x1,E1="pako deflate (from Nodeca project)",n6={deflateInit:D1,deflateInit2:A1,deflateReset:w1,deflateResetKeep:N1,deflateSetHeader:S1,deflate:v1,deflateEnd:T1,deflateSetDictionary:g1,deflateInfo:E1},y1=(J,Q)=>{return Object.prototype.hasOwnProperty.call(J,Q)},f1=function(J){let Q=Array.prototype.slice.call(arguments,1);while(Q.length){let W=Q.shift();if(!W)continue;if(typeof W!=="object")throw TypeError(W+"must be non-object");for(let V in W)if(y1(W,V))J[V]=W[V]}return J},b1=(J)=>{let Q=0;for(let V=0,G=J.length;V<G;V++)Q+=J[V].length;let W=new Uint8Array(Q);for(let V=0,G=0,q=J.length;V<q;V++){let P=J[V];W.set(P,G),G+=P.length}return W},x0={assign:f1,flattenChunks:b1},DJ=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(J){DJ=!1}var J0=new Uint8Array(256);for(let J=0;J<256;J++)J0[J]=J>=252?6:J>=248?5:J>=240?4:J>=224?3:J>=192?2:1;J0[254]=J0[254]=1;var h1=(J)=>{if(typeof TextEncoder==="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(J);let Q,W,V,G,q,P=J.length,X=0;for(G=0;G<P;G++){if(W=J.charCodeAt(G),(W&64512)===55296&&G+1<P){if(V=J.charCodeAt(G+1),(V&64512)===56320)W=65536+(W-55296<<10)+(V-56320),G++}X+=W<128?1:W<2048?2:W<65536?3:4}Q=new Uint8Array(X);for(q=0,G=0;q<X;G++){if(W=J.charCodeAt(G),(W&64512)===55296&&G+1<P){if(V=J.charCodeAt(G+1),(V&64512)===56320)W=65536+(W-55296<<10)+(V-56320),G++}if(W<128)Q[q++]=W;else if(W<2048)Q[q++]=192|W>>>6,Q[q++]=128|W&63;else if(W<65536)Q[q++]=224|W>>>12,Q[q++]=128|W>>>6&63,Q[q++]=128|W&63;else Q[q++]=240|W>>>18,Q[q++]=128|W>>>12&63,Q[q++]=128|W>>>6&63,Q[q++]=128|W&63}return Q},p1=(J,Q)=>{if(Q<65534){if(J.subarray&&DJ)return String.fromCharCode.apply(null,J.length===Q?J:J.subarray(0,Q))}let W="";for(let V=0;V<Q;V++)W+=String.fromCharCode(J[V]);return W},u1=(J,Q)=>{let W=Q||J.length;if(typeof TextDecoder==="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(J.subarray(0,Q));let V,G,q=Array(W*2);for(G=0,V=0;V<W;){let P=J[V++];if(P<128){q[G++]=P;continue}let X=J0[P];if(X>4){q[G++]=65533,V+=X-1;continue}P&=X===2?31:X===3?15:7;while(X>1&&V<W)P=P<<6|J[V++]&63,X--;if(X>1){q[G++]=65533;continue}if(P<65536)q[G++]=P;else P-=65536,q[G++]=55296|P>>10&1023,q[G++]=56320|P&1023}return p1(q,G)},m1=(J,Q)=>{if(Q=Q||J.length,Q>J.length)Q=J.length;let W=Q-1;while(W>=0&&(J[W]&192)===128)W--;if(W<0)return Q;if(W===0)return Q;return W+J0[J[W]]>Q?W:Q},W0={string2buf:h1,buf2string:u1,utf8border:m1};function _1(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var AJ=_1,wJ=Object.prototype.toString,{Z_NO_FLUSH:c1,Z_SYNC_FLUSH:d1,Z_FULL_FLUSH:l1,Z_FINISH:i1,Z_OK:R0,Z_STREAM_END:n1,Z_DEFAULT_COMPRESSION:r1,Z_DEFAULT_STRATEGY:o1,Z_DEFLATED:a1}=I6;function q0(J){this.options=x0.assign({level:r1,method:a1,chunkSize:16384,windowBits:15,memLevel:8,strategy:o1},J||{});let Q=this.options;if(Q.raw&&Q.windowBits>0)Q.windowBits=-Q.windowBits;else if(Q.gzip&&Q.windowBits>0&&Q.windowBits<16)Q.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new AJ,this.strm.avail_out=0;let W=n6.deflateInit2(this.strm,Q.level,Q.method,Q.windowBits,Q.memLevel,Q.strategy);if(W!==R0)throw Error(C6[W]);if(Q.header)n6.deflateSetHeader(this.strm,Q.header);if(Q.dictionary){let V;if(typeof Q.dictionary==="string")V=W0.string2buf(Q.dictionary);else if(wJ.call(Q.dictionary)==="[object ArrayBuffer]")V=new Uint8Array(Q.dictionary);else V=Q.dictionary;if(W=n6.deflateSetDictionary(this.strm,V),W!==R0)throw Error(C6[W]);this._dict_set=!0}}q0.prototype.push=function(J,Q){let W=this.strm,V=this.options.chunkSize,G,q;if(this.ended)return!1;if(Q===~~Q)q=Q;else q=Q===!0?i1:c1;if(typeof J==="string")W.input=W0.string2buf(J);else if(wJ.call(J)==="[object ArrayBuffer]")W.input=new Uint8Array(J);else W.input=J;W.next_in=0,W.avail_in=W.input.length;for(;;){if(W.avail_out===0)W.output=new Uint8Array(V),W.next_out=0,W.avail_out=V;if((q===d1||q===l1)&&W.avail_out<=6){this.onData(W.output.subarray(0,W.next_out)),W.avail_out=0;continue}if(G=n6.deflate(W,q),G===n1){if(W.next_out>0)this.onData(W.output.subarray(0,W.next_out));return G=n6.deflateEnd(this.strm),this.onEnd(G),this.ended=!0,G===R0}if(W.avail_out===0){this.onData(W.output);continue}if(q>0&&W.next_out>0){this.onData(W.output.subarray(0,W.next_out)),W.avail_out=0;continue}if(W.avail_in===0)break}return!0};q0.prototype.onData=function(J){this.chunks.push(J)};q0.prototype.onEnd=function(J){if(J===R0)this.result=x0.flattenChunks(this.chunks);this.chunks=[],this.err=J,this.msg=this.strm.msg};function P8(J,Q){let W=new q0(Q);if(W.push(J,!0),W.err)throw W.msg||C6[W.err];return W.result}function s1(J,Q){return Q=Q||{},Q.raw=!0,P8(J,Q)}function t1(J,Q){return Q=Q||{},Q.gzip=!0,P8(J,Q)}var e1=q0,JW=P8,WW=s1,QW=t1,VW=I6,GW={Deflate:e1,deflate:JW,deflateRaw:WW,gzip:QW,constants:VW},k0=16209,qW=16191,XW=function(Q,W){let V,G,q,P,X,z,Y,U,Z,K,F,$,R,B,M,I,A,k,S,b,C,E,w,x,N=Q.state;V=Q.next_in,w=Q.input,G=V+(Q.avail_in-5),q=Q.next_out,x=Q.output,P=q-(W-Q.avail_out),X=q+(Q.avail_out-257),z=N.dmax,Y=N.wsize,U=N.whave,Z=N.wnext,K=N.window,F=N.hold,$=N.bits,R=N.lencode,B=N.distcode,M=(1<<N.lenbits)-1,I=(1<<N.distbits)-1;J:do{if($<15)F+=w[V++]<<$,$+=8,F+=w[V++]<<$,$+=8;A=R[F&M];W:for(;;){if(k=A>>>24,F>>>=k,$-=k,k=A>>>16&255,k===0)x[q++]=A&65535;else if(k&16){if(S=A&65535,k&=15,k){if($<k)F+=w[V++]<<$,$+=8;S+=F&(1<<k)-1,F>>>=k,$-=k}if($<15)F+=w[V++]<<$,$+=8,F+=w[V++]<<$,$+=8;A=B[F&I];Q:for(;;){if(k=A>>>24,F>>>=k,$-=k,k=A>>>16&255,k&16){if(b=A&65535,k&=15,$<k){if(F+=w[V++]<<$,$+=8,$<k)F+=w[V++]<<$,$+=8}if(b+=F&(1<<k)-1,b>z){Q.msg="invalid distance too far back",N.mode=k0;break J}if(F>>>=k,$-=k,k=q-P,b>k){if(k=b-k,k>U){if(N.sane){Q.msg="invalid distance too far back",N.mode=k0;break J}}if(C=0,E=K,Z===0){if(C+=Y-k,k<S){S-=k;do x[q++]=K[C++];while(--k);C=q-b,E=x}}else if(Z<k){if(C+=Y+Z-k,k-=Z,k<S){S-=k;do x[q++]=K[C++];while(--k);if(C=0,Z<S){k=Z,S-=k;do x[q++]=K[C++];while(--k);C=q-b,E=x}}}else if(C+=Z-k,k<S){S-=k;do x[q++]=K[C++];while(--k);C=q-b,E=x}while(S>2)x[q++]=E[C++],x[q++]=E[C++],x[q++]=E[C++],S-=3;if(S){if(x[q++]=E[C++],S>1)x[q++]=E[C++]}}else{C=q-b;do x[q++]=x[C++],x[q++]=x[C++],x[q++]=x[C++],S-=3;while(S>2);if(S){if(x[q++]=x[C++],S>1)x[q++]=x[C++]}}}else if((k&64)===0){A=B[(A&65535)+(F&(1<<k)-1)];continue Q}else{Q.msg="invalid distance code",N.mode=k0;break J}break}}else if((k&64)===0){A=R[(A&65535)+(F&(1<<k)-1)];continue W}else if(k&32){N.mode=qW;break J}else{Q.msg="invalid literal/length code",N.mode=k0;break J}break}}while(V<G&&q<X);S=$>>3,V-=S,$-=S<<3,F&=(1<<$)-1,Q.next_in=V,Q.next_out=q,Q.avail_in=V<G?5+(G-V):5-(V-G),Q.avail_out=q<X?257+(X-q):257-(q-X),N.hold=F,N.bits=$;return},T6=15,S8=852,v8=592,T8=0,u0=1,g8=2,YW=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]),PW=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]),UW=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]),KW=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]),FW=(J,Q,W,V,G,q,P,X)=>{let z=X.bits,Y=0,U=0,Z=0,K=0,F=0,$=0,R=0,B=0,M=0,I=0,A,k,S,b,C,E=null,w,x=new Uint16Array(T6+1),N=new Uint16Array(T6+1),r=null,D6,z6,H6;for(Y=0;Y<=T6;Y++)x[Y]=0;for(U=0;U<V;U++)x[Q[W+U]]++;F=z;for(K=T6;K>=1;K--)if(x[K]!==0)break;if(F>K)F=K;if(K===0)return G[q++]=20971520,G[q++]=20971520,X.bits=1,0;for(Z=1;Z<K;Z++)if(x[Z]!==0)break;if(F<Z)F=Z;B=1;for(Y=1;Y<=T6;Y++)if(B<<=1,B-=x[Y],B<0)return-1;if(B>0&&(J===T8||K!==1))return-1;N[1]=0;for(Y=1;Y<T6;Y++)N[Y+1]=N[Y]+x[Y];for(U=0;U<V;U++)if(Q[W+U]!==0)P[N[Q[W+U]]++]=U;if(J===T8)E=r=P,w=20;else if(J===u0)E=YW,r=PW,w=257;else E=UW,r=KW,w=0;if(I=0,U=0,Y=Z,C=q,$=F,R=0,S=-1,M=1<<F,b=M-1,J===u0&&M>S8||J===g8&&M>v8)return 1;for(;;){if(D6=Y-R,P[U]+1<w)z6=0,H6=P[U];else if(P[U]>=w)z6=r[P[U]-w],H6=E[P[U]-w];else z6=96,H6=0;A=1<<Y-R,k=1<<$,Z=k;do k-=A,G[C+(I>>R)+k]=D6<<24|z6<<16|H6|0;while(k!==0);A=1<<Y-1;while(I&A)A>>=1;if(A!==0)I&=A-1,I+=A;else I=0;if(U++,--x[Y]===0){if(Y===K)break;Y=Q[W+P[U]]}if(Y>F&&(I&b)!==S){if(R===0)R=F;C+=Z,$=Y-R,B=1<<$;while($+R<K){if(B-=x[$+R],B<=0)break;$++,B<<=1}if(M+=1<<$,J===u0&&M>S8||J===g8&&M>v8)return 1;S=I&b,G[S]=F<<24|$<<16|C-q|0}}if(I!==0)G[C+I]=Y-R<<24|4194304|0;return X.bits=F,0},r6=FW,ZW=0,NJ=1,SJ=2,{Z_FINISH:E8,Z_BLOCK:zW,Z_TREES:B0,Z_OK:R6,Z_STREAM_END:HW,Z_NEED_DICT:$W,Z_STREAM_ERROR:t,Z_DATA_ERROR:vJ,Z_MEM_ERROR:TJ,Z_BUF_ERROR:kW,Z_DEFLATED:y8}=I6,D0=16180,f8=16181,b8=16182,h8=16183,p8=16184,u8=16185,m8=16186,_8=16187,c8=16188,d8=16189,I0=16190,G6=16191,m0=16192,l8=16193,_0=16194,i8=16195,n8=16196,r8=16197,o8=16198,j0=16199,M0=16200,a8=16201,s8=16202,t8=16203,e8=16204,JJ=16205,c0=16206,WJ=16207,QJ=16208,p=16209,gJ=16210,EJ=16211,BW=852,jW=592,MW=15,CW=MW,VJ=(J)=>{return(J>>>24&255)+(J>>>8&65280)+((J&65280)<<8)+((J&255)<<24)};function LW(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}var O6=(J)=>{if(!J)return 1;let Q=J.state;if(!Q||Q.strm!==J||Q.mode<D0||Q.mode>EJ)return 1;return 0},yJ=(J)=>{if(O6(J))return t;let Q=J.state;if(J.total_in=J.total_out=Q.total=0,J.msg="",Q.wrap)J.adler=Q.wrap&1;return Q.mode=D0,Q.last=0,Q.havedict=0,Q.flags=-1,Q.dmax=32768,Q.head=null,Q.hold=0,Q.bits=0,Q.lencode=Q.lendyn=new Int32Array(BW),Q.distcode=Q.distdyn=new Int32Array(jW),Q.sane=1,Q.back=-1,R6},fJ=(J)=>{if(O6(J))return t;let Q=J.state;return Q.wsize=0,Q.whave=0,Q.wnext=0,yJ(J)},bJ=(J,Q)=>{let W;if(O6(J))return t;let V=J.state;if(Q<0)W=0,Q=-Q;else if(W=(Q>>4)+5,Q<48)Q&=15;if(Q&&(Q<8||Q>15))return t;if(V.window!==null&&V.wbits!==Q)V.window=null;return V.wrap=W,V.wbits=Q,fJ(J)},hJ=(J,Q)=>{if(!J)return t;let W=new LW;J.state=W,W.strm=J,W.window=null,W.mode=D0;let V=bJ(J,Q);if(V!==R6)J.state=null;return V},RW=(J)=>{return hJ(J,CW)},GJ=!0,d0,l0,IW=(J)=>{if(GJ){d0=new Int32Array(512),l0=new Int32Array(32);let Q=0;while(Q<144)J.lens[Q++]=8;while(Q<256)J.lens[Q++]=9;while(Q<280)J.lens[Q++]=7;while(Q<288)J.lens[Q++]=8;r6(NJ,J.lens,0,288,d0,0,J.work,{bits:9}),Q=0;while(Q<32)J.lens[Q++]=5;r6(SJ,J.lens,0,32,l0,0,J.work,{bits:5}),GJ=!1}J.lencode=d0,J.lenbits=9,J.distcode=l0,J.distbits=5},pJ=(J,Q,W,V)=>{let G,q=J.state;if(q.window===null)q.wsize=1<<q.wbits,q.wnext=0,q.whave=0,q.window=new Uint8Array(q.wsize);if(V>=q.wsize)q.window.set(Q.subarray(W-q.wsize,W),0),q.wnext=0,q.whave=q.wsize;else{if(G=q.wsize-q.wnext,G>V)G=V;if(q.window.set(Q.subarray(W-V,W-V+G),q.wnext),V-=G,V)q.window.set(Q.subarray(W-V,W),0),q.wnext=V,q.whave=q.wsize;else{if(q.wnext+=G,q.wnext===q.wsize)q.wnext=0;if(q.whave<q.wsize)q.whave+=G}}return 0},OW=(J,Q)=>{let W,V,G,q,P,X,z,Y,U,Z,K,F,$,R,B=0,M,I,A,k,S,b,C,E,w=new Uint8Array(4),x,N,r=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(O6(J)||!J.output||!J.input&&J.avail_in!==0)return t;if(W=J.state,W.mode===G6)W.mode=m0;P=J.next_out,G=J.output,z=J.avail_out,q=J.next_in,V=J.input,X=J.avail_in,Y=W.hold,U=W.bits,Z=X,K=z,E=R6;J:for(;;)switch(W.mode){case D0:if(W.wrap===0){W.mode=m0;break}while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.wrap&2&&Y===35615){if(W.wbits===0)W.wbits=15;W.check=0,w[0]=Y&255,w[1]=Y>>>8&255,W.check=c(W.check,w,2,0),Y=0,U=0,W.mode=f8;break}if(W.head)W.head.done=!1;if(!(W.wrap&1)||(((Y&255)<<8)+(Y>>8))%31){J.msg="incorrect header check",W.mode=p;break}if((Y&15)!==y8){J.msg="unknown compression method",W.mode=p;break}if(Y>>>=4,U-=4,C=(Y&15)+8,W.wbits===0)W.wbits=C;if(C>15||C>W.wbits){J.msg="invalid window size",W.mode=p;break}W.dmax=1<<W.wbits,W.flags=0,J.adler=W.check=1,W.mode=Y&512?d8:G6,Y=0,U=0;break;case f8:while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.flags=Y,(W.flags&255)!==y8){J.msg="unknown compression method",W.mode=p;break}if(W.flags&57344){J.msg="unknown header flags set",W.mode=p;break}if(W.head)W.head.text=Y>>8&1;if(W.flags&512&&W.wrap&4)w[0]=Y&255,w[1]=Y>>>8&255,W.check=c(W.check,w,2,0);Y=0,U=0,W.mode=b8;case b8:while(U<32){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.head)W.head.time=Y;if(W.flags&512&&W.wrap&4)w[0]=Y&255,w[1]=Y>>>8&255,w[2]=Y>>>16&255,w[3]=Y>>>24&255,W.check=c(W.check,w,4,0);Y=0,U=0,W.mode=h8;case h8:while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.head)W.head.xflags=Y&255,W.head.os=Y>>8;if(W.flags&512&&W.wrap&4)w[0]=Y&255,w[1]=Y>>>8&255,W.check=c(W.check,w,2,0);Y=0,U=0,W.mode=p8;case p8:if(W.flags&1024){while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.length=Y,W.head)W.head.extra_len=Y;if(W.flags&512&&W.wrap&4)w[0]=Y&255,w[1]=Y>>>8&255,W.check=c(W.check,w,2,0);Y=0,U=0}else if(W.head)W.head.extra=null;W.mode=u8;case u8:if(W.flags&1024){if(F=W.length,F>X)F=X;if(F){if(W.head){if(C=W.head.extra_len-W.length,!W.head.extra)W.head.extra=new Uint8Array(W.head.extra_len);W.head.extra.set(V.subarray(q,q+F),C)}if(W.flags&512&&W.wrap&4)W.check=c(W.check,V,F,q);X-=F,q+=F,W.length-=F}if(W.length)break J}W.length=0,W.mode=m8;case m8:if(W.flags&2048){if(X===0)break J;F=0;do if(C=V[q+F++],W.head&&C&&W.length<65536)W.head.name+=String.fromCharCode(C);while(C&&F<X);if(W.flags&512&&W.wrap&4)W.check=c(W.check,V,F,q);if(X-=F,q+=F,C)break J}else if(W.head)W.head.name=null;W.length=0,W.mode=_8;case _8:if(W.flags&4096){if(X===0)break J;F=0;do if(C=V[q+F++],W.head&&C&&W.length<65536)W.head.comment+=String.fromCharCode(C);while(C&&F<X);if(W.flags&512&&W.wrap&4)W.check=c(W.check,V,F,q);if(X-=F,q+=F,C)break J}else if(W.head)W.head.comment=null;W.mode=c8;case c8:if(W.flags&512){while(U<16){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.wrap&4&&Y!==(W.check&65535)){J.msg="header crc mismatch",W.mode=p;break}Y=0,U=0}if(W.head)W.head.hcrc=W.flags>>9&1,W.head.done=!0;J.adler=W.check=0,W.mode=G6;break;case d8:while(U<32){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}J.adler=W.check=VJ(Y),Y=0,U=0,W.mode=I0;case I0:if(W.havedict===0)return J.next_out=P,J.avail_out=z,J.next_in=q,J.avail_in=X,W.hold=Y,W.bits=U,$W;J.adler=W.check=1,W.mode=G6;case G6:if(Q===zW||Q===B0)break J;case m0:if(W.last){Y>>>=U&7,U-=U&7,W.mode=c0;break}while(U<3){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}switch(W.last=Y&1,Y>>>=1,U-=1,Y&3){case 0:W.mode=l8;break;case 1:if(IW(W),W.mode=j0,Q===B0){Y>>>=2,U-=2;break J}break;case 2:W.mode=n8;break;case 3:J.msg="invalid block type",W.mode=p}Y>>>=2,U-=2;break;case l8:Y>>>=U&7,U-=U&7;while(U<32){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if((Y&65535)!==(Y>>>16^65535)){J.msg="invalid stored block lengths",W.mode=p;break}if(W.length=Y&65535,Y=0,U=0,W.mode=_0,Q===B0)break J;case _0:W.mode=i8;case i8:if(F=W.length,F){if(F>X)F=X;if(F>z)F=z;if(F===0)break J;G.set(V.subarray(q,q+F),P),X-=F,q+=F,z-=F,P+=F,W.length-=F;break}W.mode=G6;break;case n8:while(U<14){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.nlen=(Y&31)+257,Y>>>=5,U-=5,W.ndist=(Y&31)+1,Y>>>=5,U-=5,W.ncode=(Y&15)+4,Y>>>=4,U-=4,W.nlen>286||W.ndist>30){J.msg="too many length or distance symbols",W.mode=p;break}W.have=0,W.mode=r8;case r8:while(W.have<W.ncode){while(U<3){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}W.lens[r[W.have++]]=Y&7,Y>>>=3,U-=3}while(W.have<19)W.lens[r[W.have++]]=0;if(W.lencode=W.lendyn,W.lenbits=7,x={bits:W.lenbits},E=r6(ZW,W.lens,0,19,W.lencode,0,W.work,x),W.lenbits=x.bits,E){J.msg="invalid code lengths set",W.mode=p;break}W.have=0,W.mode=o8;case o8:while(W.have<W.nlen+W.ndist){for(;;){if(B=W.lencode[Y&(1<<W.lenbits)-1],M=B>>>24,I=B>>>16&255,A=B&65535,M<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(A<16)Y>>>=M,U-=M,W.lens[W.have++]=A;else{if(A===16){N=M+2;while(U<N){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(Y>>>=M,U-=M,W.have===0){J.msg="invalid bit length repeat",W.mode=p;break}C=W.lens[W.have-1],F=3+(Y&3),Y>>>=2,U-=2}else if(A===17){N=M+3;while(U<N){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}Y>>>=M,U-=M,C=0,F=3+(Y&7),Y>>>=3,U-=3}else{N=M+7;while(U<N){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}Y>>>=M,U-=M,C=0,F=11+(Y&127),Y>>>=7,U-=7}if(W.have+F>W.nlen+W.ndist){J.msg="invalid bit length repeat",W.mode=p;break}while(F--)W.lens[W.have++]=C}}if(W.mode===p)break;if(W.lens[256]===0){J.msg="invalid code -- missing end-of-block",W.mode=p;break}if(W.lenbits=9,x={bits:W.lenbits},E=r6(NJ,W.lens,0,W.nlen,W.lencode,0,W.work,x),W.lenbits=x.bits,E){J.msg="invalid literal/lengths set",W.mode=p;break}if(W.distbits=6,W.distcode=W.distdyn,x={bits:W.distbits},E=r6(SJ,W.lens,W.nlen,W.ndist,W.distcode,0,W.work,x),W.distbits=x.bits,E){J.msg="invalid distances set",W.mode=p;break}if(W.mode=j0,Q===B0)break J;case j0:W.mode=M0;case M0:if(X>=6&&z>=258){if(J.next_out=P,J.avail_out=z,J.next_in=q,J.avail_in=X,W.hold=Y,W.bits=U,XW(J,K),P=J.next_out,G=J.output,z=J.avail_out,q=J.next_in,V=J.input,X=J.avail_in,Y=W.hold,U=W.bits,W.mode===G6)W.back=-1;break}W.back=0;for(;;){if(B=W.lencode[Y&(1<<W.lenbits)-1],M=B>>>24,I=B>>>16&255,A=B&65535,M<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(I&&(I&240)===0){k=M,S=I,b=A;for(;;){if(B=W.lencode[b+((Y&(1<<k+S)-1)>>k)],M=B>>>24,I=B>>>16&255,A=B&65535,k+M<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}Y>>>=k,U-=k,W.back+=k}if(Y>>>=M,U-=M,W.back+=M,W.length=A,I===0){W.mode=JJ;break}if(I&32){W.back=-1,W.mode=G6;break}if(I&64){J.msg="invalid literal/length code",W.mode=p;break}W.extra=I&15,W.mode=a8;case a8:if(W.extra){N=W.extra;while(U<N){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}W.length+=Y&(1<<W.extra)-1,Y>>>=W.extra,U-=W.extra,W.back+=W.extra}W.was=W.length,W.mode=s8;case s8:for(;;){if(B=W.distcode[Y&(1<<W.distbits)-1],M=B>>>24,I=B>>>16&255,A=B&65535,M<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if((I&240)===0){k=M,S=I,b=A;for(;;){if(B=W.distcode[b+((Y&(1<<k+S)-1)>>k)],M=B>>>24,I=B>>>16&255,A=B&65535,k+M<=U)break;if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}Y>>>=k,U-=k,W.back+=k}if(Y>>>=M,U-=M,W.back+=M,I&64){J.msg="invalid distance code",W.mode=p;break}W.offset=A,W.extra=I&15,W.mode=t8;case t8:if(W.extra){N=W.extra;while(U<N){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}W.offset+=Y&(1<<W.extra)-1,Y>>>=W.extra,U-=W.extra,W.back+=W.extra}if(W.offset>W.dmax){J.msg="invalid distance too far back",W.mode=p;break}W.mode=e8;case e8:if(z===0)break J;if(F=K-z,W.offset>F){if(F=W.offset-F,F>W.whave){if(W.sane){J.msg="invalid distance too far back",W.mode=p;break}}if(F>W.wnext)F-=W.wnext,$=W.wsize-F;else $=W.wnext-F;if(F>W.length)F=W.length;R=W.window}else R=G,$=P-W.offset,F=W.length;if(F>z)F=z;z-=F,W.length-=F;do G[P++]=R[$++];while(--F);if(W.length===0)W.mode=M0;break;case JJ:if(z===0)break J;G[P++]=W.length,z--,W.mode=M0;break;case c0:if(W.wrap){while(U<32){if(X===0)break J;X--,Y|=V[q++]<<U,U+=8}if(K-=z,J.total_out+=K,W.total+=K,W.wrap&4&&K)J.adler=W.check=W.flags?c(W.check,G,K,P-K):e6(W.check,G,K,P-K);if(K=z,W.wrap&4&&(W.flags?Y:VJ(Y))!==W.check){J.msg="incorrect data check",W.mode=p;break}Y=0,U=0}W.mode=WJ;case WJ:if(W.wrap&&W.flags){while(U<32){if(X===0)break J;X--,Y+=V[q++]<<U,U+=8}if(W.wrap&4&&Y!==(W.total&4294967295)){J.msg="incorrect length check",W.mode=p;break}Y=0,U=0}W.mode=QJ;case QJ:E=HW;break J;case p:E=vJ;break J;case gJ:return TJ;case EJ:default:return t}if(J.next_out=P,J.avail_out=z,J.next_in=q,J.avail_in=X,W.hold=Y,W.bits=U,W.wsize||K!==J.avail_out&&W.mode<p&&(W.mode<c0||Q!==E8)){if(pJ(J,J.output,J.next_out,K-J.avail_out));}if(Z-=J.avail_in,K-=J.avail_out,J.total_in+=Z,J.total_out+=K,W.total+=K,W.wrap&4&&K)J.adler=W.check=W.flags?c(W.check,G,K,J.next_out-K):e6(W.check,G,K,J.next_out-K);if(J.data_type=W.bits+(W.last?64:0)+(W.mode===G6?128:0)+(W.mode===j0||W.mode===_0?256:0),(Z===0&&K===0||Q===E8)&&E===R6)E=kW;return E},xW=(J)=>{if(O6(J))return t;let Q=J.state;if(Q.window)Q.window=null;return J.state=null,R6},DW=(J,Q)=>{if(O6(J))return t;let W=J.state;if((W.wrap&2)===0)return t;return W.head=Q,Q.done=!1,R6},AW=(J,Q)=>{let W=Q.length,V,G,q;if(O6(J))return t;if(V=J.state,V.wrap!==0&&V.mode!==I0)return t;if(V.mode===I0){if(G=1,G=e6(G,Q,W,0),G!==V.check)return vJ}if(q=pJ(J,Q,W,W),q)return V.mode=gJ,TJ;return V.havedict=1,R6},wW=fJ,NW=bJ,SW=yJ,vW=RW,TW=hJ,gW=OW,EW=xW,yW=DW,fW=AW,bW="pako inflate (from Nodeca project)",X6={inflateReset:wW,inflateReset2:NW,inflateResetKeep:SW,inflateInit:vW,inflateInit2:TW,inflate:gW,inflateEnd:EW,inflateGetHeader:yW,inflateSetDictionary:fW,inflateInfo:bW};function hW(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var pW=hW,uJ=Object.prototype.toString,{Z_NO_FLUSH:uW,Z_FINISH:mW,Z_OK:Q0,Z_STREAM_END:i0,Z_NEED_DICT:n0,Z_STREAM_ERROR:_W,Z_DATA_ERROR:qJ,Z_MEM_ERROR:cW}=I6;function X0(J){this.options=x0.assign({chunkSize:65536,windowBits:15,to:""},J||{});let Q=this.options;if(Q.raw&&Q.windowBits>=0&&Q.windowBits<16){if(Q.windowBits=-Q.windowBits,Q.windowBits===0)Q.windowBits=-15}if(Q.windowBits>=0&&Q.windowBits<16&&!(J&&J.windowBits))Q.windowBits+=32;if(Q.windowBits>15&&Q.windowBits<48){if((Q.windowBits&15)===0)Q.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new AJ,this.strm.avail_out=0;let W=X6.inflateInit2(this.strm,Q.windowBits);if(W!==Q0)throw Error(C6[W]);if(this.header=new pW,X6.inflateGetHeader(this.strm,this.header),Q.dictionary){if(typeof Q.dictionary==="string")Q.dictionary=W0.string2buf(Q.dictionary);else if(uJ.call(Q.dictionary)==="[object ArrayBuffer]")Q.dictionary=new Uint8Array(Q.dictionary);if(Q.raw){if(W=X6.inflateSetDictionary(this.strm,Q.dictionary),W!==Q0)throw Error(C6[W])}}}X0.prototype.push=function(J,Q){let W=this.strm,V=this.options.chunkSize,G=this.options.dictionary,q,P,X;if(this.ended)return!1;if(Q===~~Q)P=Q;else P=Q===!0?mW:uW;if(uJ.call(J)==="[object ArrayBuffer]")W.input=new Uint8Array(J);else W.input=J;W.next_in=0,W.avail_in=W.input.length;for(;;){if(W.avail_out===0)W.output=new Uint8Array(V),W.next_out=0,W.avail_out=V;if(q=X6.inflate(W,P),q===n0&&G){if(q=X6.inflateSetDictionary(W,G),q===Q0)q=X6.inflate(W,P);else if(q===qJ)q=n0}while(W.avail_in>0&&q===i0&&W.state.wrap>0&&J[W.next_in]!==0)X6.inflateReset(W),q=X6.inflate(W,P);switch(q){case _W:case qJ:case n0:case cW:return this.onEnd(q),this.ended=!0,!1}if(X=W.avail_out,W.next_out){if(W.avail_out===0||q===i0)if(this.options.to==="string"){let z=W0.utf8border(W.output,W.next_out),Y=W.next_out-z,U=W0.buf2string(W.output,z);if(W.next_out=Y,W.avail_out=V-Y,Y)W.output.set(W.output.subarray(z,z+Y),0);this.onData(U)}else this.onData(W.output.length===W.next_out?W.output:W.output.subarray(0,W.next_out))}if(q===Q0&&X===0)continue;if(q===i0)return q=X6.inflateEnd(this.strm),this.onEnd(q),this.ended=!0,!0;if(W.avail_in===0)break}return!0};X0.prototype.onData=function(J){this.chunks.push(J)};X0.prototype.onEnd=function(J){if(J===Q0)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=x0.flattenChunks(this.chunks);this.chunks=[],this.err=J,this.msg=this.strm.msg};function U8(J,Q){let W=new X0(Q);if(W.push(J),W.err)throw W.msg||C6[W.err];return W.result}function dW(J,Q){return Q=Q||{},Q.raw=!0,U8(J,Q)}var lW=X0,iW=U8,nW=dW,rW=U8,oW=I6,aW={Inflate:lW,inflate:iW,inflateRaw:nW,ungzip:rW,constants:oW},{Deflate:sW,deflate:tW,deflateRaw:eW,gzip:J7}=GW,{Inflate:W7,inflate:Q7,inflateRaw:V7,ungzip:G7}=aW,q7=sW,X7=tW,Y7=eW,P7=J7,U7=W7,K7=Q7,F7=V7,Z7=G7,z7=I6,x6={Deflate:q7,deflate:X7,deflateRaw:Y7,gzip:P7,Inflate:U7,inflate:K7,inflateRaw:F7,ungzip:Z7,constants:z7};function mJ(J,Q,W){let V=Q.timestamp;if(V?.physical>Date.now()+7200000)V={physical:Date.now()+7200000,logical:V.logical};if(Q?.value?.priority===!0&&typeof Q.id==="string"&&Q.id.startsWith("user:")&&"role"in Q.value){let{priority:G,...q}=Q.value;return{resolved:!0,value:q,timestamp:V}}if(Q?.value?.priority!==void 0){let{priority:G,...q}=Q.value;Q={...Q,value:q}}if(!J?.timestamp)return{resolved:!0,value:Q.value,timestamp:V};if(W.compare(V,J.timestamp)<=0)return{resolved:!1};return{resolved:!0,value:Q.value,timestamp:V}}function _J(J,Q=50){let W=`gdb_oplog_${J}`,V=[];function G(){try{let P=localStorage.getItem(W);V=P?JSON.parse(P):[]}catch(P){log.error("❌ GDB: Failed to load oplog from localStorage:",P),V=[]}}function q(){try{localStorage.setItem(W,JSON.stringify(V))}catch(P){log.error("❌ GDB: Failed to save oplog to localStorage:",P)}}return G(),{remove(P){V=V.filter((X)=>X.id!==P),q()},add(P){if(V.push(P),V.length>Q)V.shift();q()},getDelta(P,X){if(!P)return[...V];return V.filter((z)=>X(z.timestamp,P)>0)},getOldest(){return V[0]},clear(){V=[],localStorage.removeItem(W)}}}var H7=()=>{let J=new Map,Q=async(U,Z)=>{let K=J.get(U)??[];J.set(U,K);let F=K[K.length-1]??Promise.resolve(),$,R=new Promise((B)=>$=B);K.push(R);try{return await F,await Z()}finally{if(K.shift(),$(),!K.length)J.delete(U)}},W=(U,Z)=>navigator.locks?.request?.(`opfs:${U}`,{mode:"exclusive"},Z)??Q(U,Z),V=async()=>{try{let U=await navigator.storage.getDirectory(),K=await(await U.getFileHandle("~opfs-sync-test",{create:!0})).createSyncAccessHandle?.();return await K?.close(),await U.removeEntry("~opfs-sync-test"),!!K}catch{return!1}},G="idb",q=(async()=>{if(await V()){G="sync";return}try{let U=await navigator.storage.getDirectory(),K=await(await U.getFileHandle("~opfs-async-test",{create:!0})).createWritable?.();await K?.close(),await U.removeEntry("~opfs-async-test"),G=K?"async":"idb"}catch{G="idb"}})(),P=navigator.storage.getDirectory(),X=(()=>{let U,Z=()=>U??=new Promise((K,F)=>{let $=indexedDB.open("opfs-fallback-db",1);$.onupgradeneeded=()=>$.result.createObjectStore("files"),$.onsuccess=()=>K($.result),$.onerror=()=>F($.error)});return{get:async(K)=>{let F=await Z();return new Promise(($,R)=>{let M=F.transaction("files","readonly").objectStore("files").get(K);M.onsuccess=()=>$(M.result||new Uint8Array),M.onerror=()=>R(M.error)})},set:async(K,F)=>{let $=await Z();return new Promise((R,B)=>{let I=$.transaction("files","readwrite").objectStore("files").put(F,K);I.onsuccess=()=>R(),I.onerror=()=>B(I.error)})}}})(),z=async(U)=>{await q;try{if(G==="idb"){let B=await X.get(U);self.postMessage({type:"loaded",name:U,data:B},[B.buffer]);return}let K=await(await P).getFileHandle(U).catch(()=>null);if(!K){let B=new Uint8Array;self.postMessage({type:"loaded",name:U,data:B},[B.buffer]);return}let F=async()=>{try{let B=await K.createSyncAccessHandle();try{let M=B.getSize(),I=new Uint8Array(M),A=B.read(I,{at:0}),k=I.slice(0,A);self.postMessage({type:"loaded",name:U,data:k},[k.buffer])}finally{B.close()}}catch(B){if(B?.name==="NoModificationAllowedError"){let M=await K.getFile(),I=new Uint8Array(await M.arrayBuffer());self.postMessage({type:"loaded",name:U,data:I},[I.buffer])}else throw B}};if(G==="sync"){await W(U,F);return}let $=await K.getFile(),R=new Uint8Array(await $.arrayBuffer());self.postMessage({type:"loaded",name:U,data:R},[R.buffer])}catch(Z){if(Z?.name==="NotFoundError"){let K=new Uint8Array;self.postMessage({type:"loaded",name:U,data:K},[K.buffer]);return}self.postMessage({type:"error",name:U,message:Z?.message??"Error reading file"})}},Y=async(U,Z)=>{if(await q,!(Z instanceof Uint8Array))return{type:"error",name:U,message:"Content must be a Uint8Array"};return W(U,async()=>{try{if(G==="idb")return await X.set(U,Z),{type:"saved",name:U};let F=await(await P).getFileHandle(U,{create:!0});if(G==="sync"){let $=await F.createSyncAccessHandle();try{$.truncate(0),$.write(Z,{at:0}),$.flush()}finally{$.close()}}else{let $=await F.createWritable();try{await $.write(Z)}finally{await $.close()}}return{type:"saved",name:U}}catch(K){return{type:"error",name:U,message:K?.message??"Error saving file"}}})};self.onmessage=async({data:U})=>{let{type:Z,name:K,content:F}=U;await q;let $={load:()=>z(K),save:()=>Y(K,F)};try{let R=$[Z],B=R?await R():{type:"error",message:`Unrecognized action type: ${Z}`};if(B&&B.type)self.postMessage(B)}catch(R){self.postMessage({type:"error",name:K,message:R?.message??"Unexpected worker error"})}}},cJ=H7;var Y0={$eq:(J,Q)=>J===Q,$ne:(J,Q)=>J!==Q,$gt:(J,Q)=>J>Q,$gte:(J,Q)=>J>=Q,$lt:(J,Q)=>J<Q,$lte:(J,Q)=>J<=Q,$in:(J,Q)=>Array.isArray(Q)&&(Array.isArray(J)?J.some((W)=>Q.includes(W)):Q.includes(J)),$between:(J,[Q,W])=>J>=Q&&J<=W,$exists:(J,Q)=>Q?J!==void 0:J===void 0,$startsWith:(J,Q)=>typeof J==="string"&&J.startsWith(Q),$endsWith:(J,Q)=>typeof J==="string"&&J.endsWith(Q),$contains:(J,Q)=>typeof J==="string"&&J.includes(Q),$text:{global:(J,Q)=>{let W=(G)=>String(G).normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^\w\s]/g,""),V=W(Q);return Object.values(J).some((G)=>typeof G==="object"?null.fieldSearch(G,V):W(G).includes(V))},field:(J,Q)=>{let W=(G)=>String(G).normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^\w\s]/g,""),V=W(Q);return Array.isArray(J)?J.some((G)=>W(G).includes(V)):W(J).includes(V)}},$like:(J,Q)=>typeof J==="string"&&typeof Q==="string"&&new RegExp(`^${Q.replace(/%/g,".*").replace(/_/g,".")}$`,"i").test(J),$regex:(J,Q)=>typeof J==="string"&&new RegExp(Q.$regex||Q,"i").test(J),$and:(J,Q,W)=>Q.every((V)=>W.createFilter(V,W.allNodes)(J)),$or:(J,Q,W)=>Q.some((V)=>W.createFilter(V,W.allNodes)(J)),$not:(J,Q,W)=>!W.createFilter(Q,W.allNodes)(J),$edge:(J,Q,W)=>{if(!J.edges?.length||typeof Q!=="object"||Q===null)return!1;let V=W.createFilter(Q,W.allNodes),G=[...J.edges],q=new Set(G).add(J.id),P=[];while(G.length){let X=G.shift(),z=W.allNodes[X];if(!z)continue;if(V(z))P.push(z);z.edges?.forEach((Y)=>!q.has(Y)&&q.add(Y)&&G.push(Y))}if(P.length)J._edgeResult=P;return P.length>0}},A0=(J,Q)=>Q.split(".").reduce((W,V)=>W&&typeof W==="object"&&(V in W)?W[V]:void 0,J),w0=(J,Q)=>{if(Object.keys(J).length===0)return()=>!0;return(W)=>Object.entries(J).every(([V,G])=>{if(V.startsWith("$"))return Y0[V](W,G,{createFilter:w0,allNodes:Q});let q=A0(W.value,V);if(q===void 0)q=A0(W,V);if(typeof G!=="object"||G===null)return Y0.$eq(q,G);return Object.entries(G).every(([P,X])=>{if(P==="$text")return Y0.$text.field(q,X);if(P==="$between"&&X.every((z)=>z instanceof Date))return Y0.$between(new Date(q),X);return Y0[P]?.(q,X,{createFilter:w0,allNodes:Q})??!1})})},K8=(J,Q)=>{let{$edge:W,...V}=Q.query||{},G=w0(V,J),q=Object.values(J).filter(G),X=[...W?(()=>{let z=w0({$edge:W},J);q.forEach((U)=>z(U));let Y=new Map;return q.forEach((U)=>{if(U._edgeResult)U._edgeResult.forEach((Z)=>Y.set(Z.id,Z)),delete U._edgeResult}),Array.from(Y.values())})():q];if(Q.field){let z=Q.order==="asc"?1:-1;X.sort((Y,U)=>{let Z=A0(Y.value,Q.field),K=A0(U.value,Q.field);if(typeof Z==="string"&&typeof K==="string")return Z.localeCompare(K)*z;return((Z??0)-(K??0))*z})}if(Q.$after){let z=X.findIndex((Y)=>Y.id===Q.$after);X=z>=0?X.slice(z+1):[]}if(Q.$before){let z=X.findIndex((Y)=>Y.id===Q.$before);X=z>=0?X.slice(0,z):[]}if(Q.$limit)X=X.slice(0,Q.$limit);return X};function dJ(){let J=Date.now(),Q=0;return{now(){let W=Date.now();return J=Math.max(J,W),Q++,{physical:J,logical:Q}},update(W){if(!W||typeof W.physical!=="number"||typeof W.logical!=="number"){log.warn("⚠️ HybridClock.update received an invalid remote timestamp.",W);return}J=Math.max(J,W.physical),Q=Math.max(Q,W.logical)+1},compare(W,V){if(!W&&!V)return 0;if(!W)return-1;if(!V)return 1;if(W.physical>V.physical)return 1;if(W.physical<V.physical)return-1;if(W.logical>V.logical)return 1;if(W.logical<V.logical)return-1;return 0}}}var $7={sm:()=>import(new URL("./sm.min.js",import.meta.url).href),ai:()=>import(new URL("./ai.min.js",import.meta.url).href),audit:()=>import(new URL("./audit.min.js",import.meta.url).href),geo:()=>import(new URL("./geo.min.js",import.meta.url).href),nlq:()=>import(new URL("./nlq.min.js",import.meta.url).href),genosrtc:()=>import(new URL("./genosrtc.min.js",import.meta.url).href),"genosrtc-cells":()=>import(new URL("./genosrtc-cells.min.js",import.meta.url).href)},lJ=(J,Q)=>J.length===Q.length&&J.every((W,V)=>W===Q[V]),F8=(J)=>J&&typeof J==="object"?globalThis.structuredClone?.(J)??JSON.parse(JSON.stringify(J)):J,iJ=(J,Q=16)=>{let W=null,V=null;return(...G)=>{if(!V)V={},V.promise=new Promise((P,X)=>(V.resolve=P,V.reject=X));if(W)("cancelIdleCallback"in window?cancelIdleCallback:clearTimeout)(W);let q=async()=>{W=null;let P=V;V=null;try{P.resolve(await J(...G))}catch(X){P.reject(X)}};return W="requestIdleCallback"in window?requestIdleCallback(q,{timeout:Q}):setTimeout(q,Q),V.promise}},k7=(J)=>{let Q=null;return()=>{if(Q!==null)return;Q=requestAnimationFrame(()=>{Q=null,J()})}};async function B7(){if(log.info(navigator?.storage?.getDirectory?"✅ OPFS is enabled.":"\uD83D\uDEAB OPFS is not available."),navigator?.storage?.getDirectory)await navigator.storage.getDirectory()}function j7(){let J={nodes:{}};return{get nodes(){return J.nodes},set nodes(Q){J.nodes=Q||{}},upsert(Q,W,V){let G=J.nodes[Q];J.nodes[Q]={id:Q,value:W&&typeof W==="object"?F8(W):W,edges:G?.edges?[...G.edges]:[],timestamp:V}},get(Q){return J.nodes[Q]||null},link(Q,W,V){let G=J.nodes[Q],q=J.nodes[W];if(G&&q&&!G.edges.includes(W))J.nodes[Q]={...G,edges:[...G.edges,W],timestamp:V}},getAllNodes(){return Object.values(J.nodes)},serialize(){return x6.deflate(u6(J.nodes))},deserialize(Q){J.nodes=k6(x6.inflate(new Uint8Array(Q)))}}}async function EQ(J,Q={}){Q.debug&&(globalThis.__gdbDebug=!0),log.info("\x1B[36m⚡ GenosDB: Empowering distributed graph databases with real-time synchronization and scalability. Learn more: https://github.com/estebanrfp/gdb ⚡\x1B[0m");let{rtc:W=!1,password:V,sm:G=!1,audit:q=!1,ai:P=!1,geo:X=!1,nlq:z=!1,saveDelay:Y=200,oplogSize:U=20}=Q,Z=j7(),K=dJ(),F=_J(J,U),$=[],R=null,B=[],M=null,I=null,A=null,k=null,S=[],b={};Object.defineProperties(b,{syncChannel:{get:()=>I},broadcastChannel:{get:()=>A},hybridClock:{get:()=>K},graph:{get:()=>({getAllNodes:()=>Z.getAllNodes(),get:(j)=>Z.get(j)})},worker:{get:()=>M},oplog:{get:()=>F},options:{get:()=>Q},pako:{get:()=>x6},encode:{get:()=>u6},decode:{get:()=>k6},deepClone:{get:()=>F8}});async function C(j,D){try{let L=await $7[j](),f=D&&typeof D==="object"?D:{},_=await L.init?.(b,L,f);if(_)Object.assign(b,_);return L}catch(L){throw log.error(`❌ Initialization of ${j} failed:`,L),L}}function E(){let j=localStorage.getItem(`${J}_time`);R=j?JSON.parse(j):null}function w(j){R=j,localStorage.setItem(`${J}_time`,JSON.stringify(j))}function x(){try{let j=URL.createObjectURL(new Blob([`(${cJ.toString()})()`],{type:"application/javascript"}));M=new Worker(j),URL.revokeObjectURL(j),M.addEventListener("message",({data:D})=>log.info(`\uD83D\uDCBE ${D.name} ${D.type}`)),log.info("⚙️ Worker initialized successfully.")}catch({message:j}){log.error("❌ Failed to initialize worker:",j)}}function N(){let j={...Z.nodes};B.forEach((D)=>D(j))}let r=k7(()=>N()),D6=iJ(async()=>{let j=S.splice(0,S.length);if(!j.length)return!1;return await I.send(j),!0},16);async function z6(){try{let D=await((L)=>new Promise((f,_)=>{let h=async({data:H})=>{if(H.type==="loaded"&&H.name===L)M.removeEventListener("message",h),f(new Uint8Array(H.data));else if(H.type==="error")M.removeEventListener("message",h),_(Error(H.message||"Unknown error"))};M.addEventListener("message",h),M.postMessage({type:"load",name:L})}))(`${J}_graph.msgpack`).catch(()=>new Uint8Array);D.byteLength>0?Z.deserialize(D):log.info("\uD83D\uDCBE New database. File will be created on first save.")}catch({message:j}){log.error("❌ Error loading the graph:",j)}}async function H6(){try{let j=Z.serialize();return await((L,f)=>new Promise((_,h)=>{let H=({data:O})=>{if(O.type==="saved"&&O.name===L)M.removeEventListener("message",H),_();else if(O.type==="error")M.removeEventListener("message",H),h(Error(O.message||"Save error"))};M.addEventListener("message",H),M.postMessage({type:"save",name:L,content:f})}))(`${J}_graph.msgpack`,j),A.postMessage("update"),!0}catch({message:j}){throw log.error("❌ Save error:",j),Error("Save failed")}}let P0=iJ(()=>H6(),Y);async function nJ(j){let D=!1,L=null,f=(H)=>{if(!L||K.compare(H,L)>0)L=H},_=(H)=>{try{if(H instanceof Uint8Array)return k6(x6.inflate(H));if(Array.isArray(H))return H;if(H&&typeof H==="object")return k6(x6.inflate(new Uint8Array(Object.values(H))))}catch(O){log.error("❌ deltaSync decode failed",O)}return null},h={upsert:(H)=>{let O=Z.get(H.id),{resolved:v,value:y,timestamp:u}=mJ(O,H,K);if(!v)return;Z.upsert(H.id,y,u),K.update(u),F.add({type:"upsert",id:H.id,timestamp:u}),D=!0,f(u)},remove:(H)=>{let O=Z.get(H.id);if(!O||K.compare(O.timestamp,H.timestamp)>=0)return;delete Z.nodes[H.id],K.update(H.timestamp),F.add({type:"remove",id:H.id,timestamp:H.timestamp}),D=!0,f(H.timestamp)},link:(H)=>{let O=Z.get(H.sourceId),v=Z.get(H.targetId);if(!O||!v||K.compare(O.timestamp,H.timestamp)>=0)return;Z.link(H.sourceId,H.targetId,H.timestamp),K.update(H.timestamp),F.add({type:"link",...H}),D=!0,f(H.timestamp)},sync:async({timestamp:H})=>{let O=F.getOldest();if(H==null||O&&K.compare(H,O.timestamp)<0)return log.info("\uD83D\uDCA5 [FALLBACK] Peer too far behind → sending FULL state."),I.send([{type:"fullStateSync",graphData:Z.serialize(),timestamp:R}]);let y=F.getDelta(H,K.compare);if(!y.length)return;let u=y.map((e)=>e.type==="upsert"?{...e,value:Z.get(e.id)?.value}:e);log.info(`\uD83D\uDE80 [DELTA SYNC SENDING] ${u.length} ops.`),await I.send([{type:"deltaSync",operations:x6.deflate(u6(u)),timestamp:R}])},deltaSync:({operations:H})=>{let O=_(H);if(!Array.isArray(O)){log.warn("⚠️ deltaSync payload not array. Ignored.");return}log.info(`\uD83D\uDEF0️ [DELTA SYNC RECEIVED] ${O.length} ops.`);for(let v of O)if(v&&h[v.type])h[v.type](v);else if(v)log.warn(`\uD83E\uDD37 Unknown op: ${v.type}`)},fullStateSync:async({graphData:H,timestamp:O})=>{if(R&&O&&K.compare(R,O)>0){log.info("\uD83D\uDD04 Local newer, ignoring full sync.");return}if(!(H instanceof Uint8Array))if(H&&typeof H==="object")H=new Uint8Array(Object.values(H));else{log.error("❌ Invalid full graph data received");return}try{if(log.info("\uD83D\uDCE6 [FULL SYNC RECEIVED] Applying full graph."),Z.deserialize(H),F.clear(),D=!0,O)f(O),K.update(O)}catch(v){log.error("❌ Full sync failed:",v)}}};for(let H of j)if(h[H.type])await h[H.type](H);else log.warn(`\uD83E\uDD37 Unknown type: ${H.type}`);if(L&&(!R||K.compare(L,R)>0))log.info(`\uD83D\uDCC8 [GLOBAL TS] Advanced to ${L.logical}`),w(L);if(D)log.info("\uD83D\uDCBE [STATE CHANGED] Saving + emitting."),await P0(),r()}Object.assign(b,{use(j){if(typeof j==="function")$.push(j)},async put(j,D){let L=K.now();w(L),D=D??crypto.randomUUID(),Z.upsert(D,j,L),F.add({type:"upsert",id:D,timestamp:L}),P0();try{S.push({type:"upsert",id:D,value:j,timestamp:L}),D6().catch(()=>{})}finally{r()}return D},async link(j,D){let L=K.now();if(!Z.nodes[j]||!Z.nodes[D]){log.warn(`⚠️ One or both nodes (${j}, ${D}) do not exist.`);return}Z.link(j,D,L),F.add({type:"link",sourceId:j,targetId:D,timestamp:L}),P0(),w(L);try{S.push({type:"link",sourceId:j,targetId:D,timestamp:L}),D6().catch(()=>{})}finally{r()}},async remove(j){let D=K.now(),L=Z.get(j);if(!L)return log.warn(`⚠️ Node with ID '${j}' not found.`);delete Z.nodes[j],F.add({type:"remove",id:j,timestamp:D}),Object.values(Z.nodes).forEach((f)=>f.edges=f.edges.filter((_)=>_!==j)),P0(),w(D);try{S.push({type:"remove",id:j,value:L.value,timestamp:D}),D6().catch(()=>{})}finally{r()}},async get(j,D=null){if(typeof j!=="string")return{result:null};let L=Z.get(j);if(!L){if(D)D(null);return{result:null}}let f=(H)=>{if(!H)return null;let O=H.value!==null&&typeof H.value==="object"?{...H.value}:H.value;return{...H,value:O}};if(!D)return{result:f(L)};let _=L.timestamp;D(f(L));let h=(H)=>{let O=H[j];if(O){if(K.compare(O.timestamp,_)>0)_=O.timestamp,D(f(O))}else D(null),B.splice(B.indexOf(h),1)};return B.push(h),{result:f(L),unsubscribe:()=>{let H=B.indexOf(h);if(H>-1)B.splice(H,1)}}},async map(...j){let L={...{realtime:!1,query:{},field:null,order:"asc",$limit:null,$after:null,$before:null}},f=null,_=!1;j.forEach((v)=>typeof v==="function"?f=v:v&&typeof v==="object"&&(_=_||("realtime"in v),Object.assign(L,v))),f&&!_&&(L.realtime=!0);let h=K8(Z.nodes,L),H=null,O=(v)=>{let y=new Map(h.map((m)=>[m.id,m])),u=new Map(v.map((m)=>[m.id,m])),e=[],w6=[],Z8=[];for(let[m,Y6]of u){let U0=y.get(m);if(!U0)e.push(Y6);else if((Y6.timestamp?.physical||0)!==(U0.timestamp?.physical||0)||(Y6.timestamp?.logical||0)!==(U0.timestamp?.logical||0)||!lJ(Y6.edges||[],U0.edges||[]))w6.push(Y6)}for(let[m]of y)if(!u.has(m))Z8.push(y.get(m));let N0=(m,Y6)=>f({id:m.id,value:Y6==="removed"?null:m.value,edges:m.edges||[],timestamp:m.timestamp||null,action:Y6});e.forEach((m)=>N0(m,"added")),Z8.forEach((m)=>N0(m,"removed")),w6.forEach((m)=>N0(m,"updated"))};if(f){if(h.forEach((v)=>{f({id:v.id,value:v.value,edges:v.edges,timestamp:v.timestamp,action:"initial"})}),L.realtime){let v=(y)=>{let u=y.timestamp?.physical||0,e=y.timestamp?.logical||0,w6=(y.edges||[]).join(",");return`${y.id}:${u}:${e}:${w6}`};H=(y)=>{let u=K8(y,L);if(u.length!==h.length)O(u),h=u;else{let e=u.map(v),w6=h.map(v);if(!lJ(e,w6))O(u),h=u}},B.push(H)}}return{results:h,...L.realtime&&f&&H&&{unsubscribe:()=>{let v=B.indexOf(H);v>-1&&B.splice(v,1)}}}},async clear(){Z.nodes={},R=null,localStorage.removeItem(`${J}_time`),F.clear(),await H6(),N(),log.info("✅ All data has been deleted.")}}),x(),E(),await B7(),await z6();let A6=[];if(G)A6.push(C("sm",G));if(P)A6.push(C("ai",P));if(q)A6.push(C("audit",q));if(X)A6.push(C("geo",X));if(z)A6.push(C("nlq",z));await Promise.all(A6);let rJ=`graph-sync-room-${J}`;if(W){let j=W?.constructor===Object?W:{},D=j.cells?"genosrtc-cells":"genosrtc",{join:L,selfId:f}=await C(D),_={appId:"1234",...V&&{password:V},...j.relayUrls&&{relayUrls:j.relayUrls},...j.turnConfig&&{turnConfig:j.turnConfig},...j.cells&&j.cells!==!0&&{overlay:j.cells}},h=L(_,rJ);I=h.channel("syncGraph"),k=L(_,`app-sync-${J}`),b.room=k,b.selfId=f,h.on("peer:join",async(H)=>{log.info("⚡ New peer connected:",H),I.send([{type:"sync",timestamp:R}])}),h.on("peer:leave",(H)=>{log.info("⚡ Peer disconnected:",H)}),I?.on("message",async(H)=>{let O;try{if(H instanceof Uint8Array||H instanceof ArrayBuffer){let y=k6(H);O=Array.isArray(y)?y:[y]}else O=Array.isArray(H)?H:[H]}catch(y){return log.error("❌ Failed to decode MessagePack:",y)}let v=new Map([...new Set(O.flatMap((y)=>["id","sourceId","targetId"].map((u)=>y&&y[u]).filter(Boolean)))].map((y)=>Z.get(y)?[y,F8(Z.get(y))]:null).filter(Boolean));for(let y of $)try{if(O=await y(O,v),!O||!O.length)return}catch(u){log.error("❌ Middleware error, discarding message.",u);return}await nJ(O)})}return A=new BroadcastChannel(`graphdb_sync_${J}`),A.onmessage=async(j)=>{if(j.data==="update")log.info("\uD83D\uDD04 Update received from another tab..."),await z6(),E(),r()},log.info(`✅ GenosDB [ \x1B[32m${J}\x1B[0m ] instance is ready.`),b}export{EQ as gdb};
|
package/dist/gdb.min.js.gz
CHANGED
|
Binary file
|