Files
sea-of-stars-studio.github.io/js/convert/litematicToNbt/litematic-to-nbt.umd.js
T
2026-05-23 02:03:44 +08:00

2 lines
61 KiB
JavaScript

(function(){const n=document.createElement("link").relList;if(n&&n.supports&&n.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))i(a);new MutationObserver(a=>{for(const r of a)if(r.type==="childList")for(const s of r.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&i(s)}).observe(document,{childList:!0,subtree:!0});function e(a){const r={};return a.integrity&&(r.integrity=a.integrity),a.referrerPolicy&&(r.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?r.credentials="include":a.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function i(a){if(a.ep)return;a.ep=!0;const r=e(a);fetch(a.href,r)}})();const Yt=0,Se=1,ze=2,_t=3,Ie=4,Re=5,Qt=6,Ce=7,De=8,Ne=9,M=10,Le=11,Oe=12;class Ze{value;constructor(n){this.value=n}getType(){return Se}writeContents(n,e){n.setInt8(e.value,this.value),e.value+=1}static readContents(n,e){const i=n.getInt8(e.value);return e.value+=1,new Ze(i)}}class Ue{value;constructor(n){this.value=n}getType(){return ze}writeContents(n,e){n.setInt16(e.value,this.value,!1),e.value+=2}static readContents(n,e){const i=n.getInt16(e.value,!1);return e.value+=2,new Ue(i)}}class U{value;constructor(n){this.value=n}getType(){return _t}writeContents(n,e){n.setInt32(e.value,this.value,!1),e.value+=4}static readContents(n,e){const i=n.getInt32(e.value,!1);return e.value+=4,new U(i)}}class Be{value;constructor(n){this.value=n}getType(){return Ie}writeContents(n,e){n.setBigInt64(e.value,this.value,!1),e.value+=8}static readContents(n,e){const i=n.getBigInt64(e.value,!1);return e.value+=8,new Be(i)}}class $e{value;constructor(n){this.value=n}getType(){return Re}writeContents(n,e){n.setFloat32(e.value,this.value,!1),e.value+=4}static readContents(n,e){const i=n.getFloat32(e.value,!1);return e.value+=4,new $e(i)}}class ut{value;constructor(n){this.value=n}getType(){return Qt}writeContents(n,e){n.setFloat64(e.value,this.value,!1),e.value+=8}static readContents(n,e){const i=n.getFloat64(e.value,!1);return e.value+=8,new ut(i)}}class Fe{values;constructor(n){this.values=n}getType(){return Ce}writeContents(n,e){n.setInt32(e.value,this.values.length,!1),e.value+=4;for(let i=0;i<this.values.length;i++)n.setInt8(e.value+i,this.values[i]);e.value+=this.values.length}static readContents(n,e){const i=n.getInt32(e.value,!1);e.value+=4;const a=new Int8Array(i);for(let r=0;r<i;r++)a[r]=n.getInt8(e.value+r);return e.value+=i,new Fe(a)}}class rt{value;constructor(n){this.value=n}getType(){return De}writeContents(n,e){const a=new TextEncoder().encode(this.value);n.setUint16(e.value,a.length,!1),e.value+=2;for(let r=0;r<a.length;r++)n.setUint8(e.value+r,a[r]);e.value+=a.length}static readContents(n,e){const i=n.getUint16(e.value,!1);e.value+=2;const a=new Uint8Array(i);for(let s=0;s<i;s++)a[s]=n.getUint8(e.value+s);e.value+=i;const r=new TextDecoder("UTF-8");return new rt(r.decode(a))}}class P{tags=[];elementType;constructor(n){this.elementType=n}getType(){return Ne}add(n){if(n.getType()!==this.elementType)throw new Error(`Type mismatch: Attempted to insert tag of type ${n.getType()} into list of type ${this.elementType}`);this.tags.push(n)}size(){return this.tags.length}get(n){return this.tags[n]}*[Symbol.iterator](){yield*this.tags}writeContents(n,e){n.setInt8(e.value,this.elementType),e.value+=1,n.setInt32(e.value,this.tags.length,!1),e.value+=4;for(const i of this.tags)i.writeContents(n,e)}static readContents(n,e){const i=n.getInt8(e.value);e.value+=1;const a=n.getInt32(e.value,!1);e.value+=4;const r=new P(i);for(let s=0;s<a;s++)r.add(Fn(i,n,e));return r}}class F{tags=new Map;getType(){return M}put(n,e){this.tags.set(n,e)}get(n){return this.tags.get(n)}contains(n,e){const i=this.tags.get(n);return e===void 0?i!==void 0:i!==void 0&&i.getType()===e}keySet(){return this.tags.keys()}getByte(n){return this.tags.get(n).value}getShort(n){return this.tags.get(n).value}getInt(n){return this.tags.get(n).value}getLong(n){return this.tags.get(n).value}getFloat(n){return this.tags.get(n).value}getDouble(n){return this.tags.get(n).value}getString(n){return this.tags.get(n).value}getByteArray(n){return this.tags.get(n).values}getIntArray(n){return this.tags.get(n).values}getLongArray(n){return this.tags.get(n).values}getList(n){return this.tags.get(n)}getCompound(n){return this.tags.get(n)}remove(n){this.tags.delete(n)}writeContents(n,e){for(const[i,a]of this.tags){n.setInt8(e.value,a.getType()),e.value+=1;const s=new TextEncoder().encode(i);n.setUint16(e.value,s.length,!1),e.value+=2;for(let o=0;o<s.length;o++)n.setUint8(e.value+o,s[o]);e.value+=s.length,a.writeContents(n,e)}n.setInt8(e.value,Yt),e.value+=1}static readContents(n,e){const i=new F;for(;;){const a=n.getInt8(e.value);if(e.value+=1,a===Yt)break;const r=n.getUint16(e.value,!1);e.value+=2;const s=new Uint8Array(r);for(let l=0;l<r;l++)s[l]=n.getUint8(e.value+l);e.value+=r;const h=new TextDecoder("UTF-8").decode(s);i.put(h,Fn(a,n,e))}return i}}class Me{values;constructor(n){this.values=n}getType(){return Le}writeContents(n,e){n.setInt32(e.value,this.values.length,!1),e.value+=4;for(let i=0;i<this.values.length;i++)n.setInt32(e.value+i*4,this.values[i],!1);e.value+=this.values.length*4}static readContents(n,e){const i=n.getInt32(e.value,!1);e.value+=4;const a=new Int32Array(i);for(let r=0;r<i;r++)a[r]=n.getInt32(e.value+r*4,!1);return e.value+=i*4,new Me(a)}}class He{values;constructor(n){this.values=n}getType(){return Oe}writeContents(n,e){n.setInt32(e.value,this.values.length,!1),e.value+=4;for(let i=0;i<this.values.length;i++)n.setBigInt64(e.value+i*8,this.values[i],!1);e.value+=this.values.length*8}static readContents(n,e){const i=n.getInt32(e.value,!1);e.value+=4;const a=new BigInt64Array(i);for(let r=0;r<i;r++)a[r]=n.getBigInt64(e.value+r*8,!1);return e.value+=i*8,new He(a)}}class Pe{static INSTANCE=new Pe;getType(){return Yt}writeContents(n,e){}}function Fn(t,n,e){switch(t){case Yt:return Pe.INSTANCE;case Se:return Ze.readContents(n,e);case ze:return Ue.readContents(n,e);case _t:return U.readContents(n,e);case Ie:return Be.readContents(n,e);case Re:return $e.readContents(n,e);case Qt:return ut.readContents(n,e);case Ce:return Fe.readContents(n,e);case De:return rt.readContents(n,e);case Ne:return P.readContents(n,e);case M:return F.readContents(n,e);case Le:return Me.readContents(n,e);case Oe:return He.readContents(n,e);default:throw new Error(`Unknown tag type: ${t}`)}}class Ei{blocks;palette;blockEntities;entities;dataVersion;sourceFileName;constructor(n,e,i,a,r,s){this.blocks=n,this.palette=e,this.blockEntities=i,this.entities=a,this.dataVersion=r,this.sourceFileName=s}getSize(){return[this.blocks.length,this.blocks[0]?.length||0,this.blocks[0]?.[0]?.length||0]}getBlock(n,e,i){return this.blocks[n]?.[e]?.[i]??null}getPaletteBlock(n,e,i){const a=this.getBlock(n,e,i);return a===null?-1:this.palette.indexOf(a)}getPalette(){return this.palette}getBlockEntities(){return this.blockEntities}hasBlockEntityAt(n,e,i){return this.blockEntities.has(`${n},${e},${i}`)}getBlockEntityAt(n,e,i){return this.blockEntities.get(`${n},${e},${i}`)}getEntities(){return this.entities}getDataVersion(){return this.dataVersion}getSourceFileName(){return this.sourceFileName}countNonEmptyBlocks(){let n=0;for(const e of this.blocks)for(const i of e)for(const a of i)Je(a)||n++;return n}static isEmpty(n){return Je(n)}}function Je(t){return t===null||t==="minecraft:air"||t==="minecraft:structure_void"}class Ai{blocks;palette;blockEntities;entities;sourceFileName;dataVersion;constructor(n,e,i,a,r){this.blocks=Array(i).fill(null).map(()=>Array(a).fill(null).map(()=>Array(r).fill(null))),this.palette=new Set,this.blockEntities=new Map,this.entities=[],this.sourceFileName=n,this.dataVersion=e}setBlockAt(n,e,i,a){n>=0&&n<this.blocks.length&&e>=0&&e<this.blocks[0].length&&i>=0&&i<this.blocks[0][0].length&&(this.blocks[n][e][i]=a,this.palette.add(a))}addBlockEntity(n,e,i,a){this.blockEntities.set(`${n},${e},${i}`,a)}addEntity(n,e,i,a,r){this.entities.push({id:n,x:e,y:i,z:a,nbt:r})}build(){return new Ei(this.blocks,Array.from(this.palette),this.blockEntities,this.entities,this.dataVersion,this.sourceFileName)}}const Ti=4,Qe=0,tn=1,Si=2;function bt(t){let n=t.length;for(;--n>=0;)t[n]=0}const zi=0,Mn=1,Ii=2,Ri=3,Ci=258,Ge=29,Lt=256,Tt=Lt+1+Ge,dt=30,Ke=19,Hn=2*Tt+1,nt=15,ie=16,Di=7,Ve=256,Pn=16,Gn=17,Kn=18,be=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]),Vt=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]),Ni=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),Vn=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Li=512,X=new Array((Tt+2)*2);bt(X);const mt=new Array(dt*2);bt(mt);const St=new Array(Li);bt(St);const zt=new Array(Ci-Ri+1);bt(zt);const Ye=new Array(Ge);bt(Ye);const Xt=new Array(dt);bt(Xt);function ae(t,n,e,i,a){this.static_tree=t,this.extra_bits=n,this.extra_base=e,this.elems=i,this.max_length=a,this.has_stree=t&&t.length}let Yn,Xn,jn;function re(t,n){this.dyn_tree=t,this.max_code=0,this.stat_desc=n}const Wn=t=>t<256?St[t]:St[256+(t>>>7)],It=(t,n)=>{t.pending_buf[t.pending++]=n&255,t.pending_buf[t.pending++]=n>>>8&255},L=(t,n,e)=>{t.bi_valid>ie-e?(t.bi_buf|=n<<t.bi_valid&65535,It(t,t.bi_buf),t.bi_buf=n>>ie-t.bi_valid,t.bi_valid+=e-ie):(t.bi_buf|=n<<t.bi_valid&65535,t.bi_valid+=e)},G=(t,n,e)=>{L(t,e[n*2],e[n*2+1])},qn=(t,n)=>{let e=0;do e|=t&1,t>>>=1,e<<=1;while(--n>0);return e>>>1},Oi=t=>{t.bi_valid===16?(It(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=t.bi_buf&255,t.bi_buf>>=8,t.bi_valid-=8)},Zi=(t,n)=>{const e=n.dyn_tree,i=n.max_code,a=n.stat_desc.static_tree,r=n.stat_desc.has_stree,s=n.stat_desc.extra_bits,o=n.stat_desc.extra_base,h=n.stat_desc.max_length;let l,c,p,u,f,g,I=0;for(u=0;u<=nt;u++)t.bl_count[u]=0;for(e[t.heap[t.heap_max]*2+1]=0,l=t.heap_max+1;l<Hn;l++)c=t.heap[l],u=e[e[c*2+1]*2+1]+1,u>h&&(u=h,I++),e[c*2+1]=u,!(c>i)&&(t.bl_count[u]++,f=0,c>=o&&(f=s[c-o]),g=e[c*2],t.opt_len+=g*(u+f),r&&(t.static_len+=g*(a[c*2+1]+f)));if(I!==0){do{for(u=h-1;t.bl_count[u]===0;)u--;t.bl_count[u]--,t.bl_count[u+1]+=2,t.bl_count[h]--,I-=2}while(I>0);for(u=h;u!==0;u--)for(c=t.bl_count[u];c!==0;)p=t.heap[--l],!(p>i)&&(e[p*2+1]!==u&&(t.opt_len+=(u-e[p*2+1])*e[p*2],e[p*2+1]=u),c--)}},Jn=(t,n,e)=>{const i=new Array(nt+1);let a=0,r,s;for(r=1;r<=nt;r++)a=a+e[r-1]<<1,i[r]=a;for(s=0;s<=n;s++){let o=t[s*2+1];o!==0&&(t[s*2]=qn(i[o]++,o))}},Ui=()=>{let t,n,e,i,a;const r=new Array(nt+1);for(e=0,i=0;i<Ge-1;i++)for(Ye[i]=e,t=0;t<1<<be[i];t++)zt[e++]=i;for(zt[e-1]=i,a=0,i=0;i<16;i++)for(Xt[i]=a,t=0;t<1<<Vt[i];t++)St[a++]=i;for(a>>=7;i<dt;i++)for(Xt[i]=a<<7,t=0;t<1<<Vt[i]-7;t++)St[256+a++]=i;for(n=0;n<=nt;n++)r[n]=0;for(t=0;t<=143;)X[t*2+1]=8,t++,r[8]++;for(;t<=255;)X[t*2+1]=9,t++,r[9]++;for(;t<=279;)X[t*2+1]=7,t++,r[7]++;for(;t<=287;)X[t*2+1]=8,t++,r[8]++;for(Jn(X,Tt+1,r),t=0;t<dt;t++)mt[t*2+1]=5,mt[t*2]=qn(t,5);Yn=new ae(X,be,Lt+1,Tt,nt),Xn=new ae(mt,Vt,0,dt,nt),jn=new ae(new Array(0),Ni,0,Ke,Di)},Qn=t=>{let n;for(n=0;n<Tt;n++)t.dyn_ltree[n*2]=0;for(n=0;n<dt;n++)t.dyn_dtree[n*2]=0;for(n=0;n<Ke;n++)t.bl_tree[n*2]=0;t.dyn_ltree[Ve*2]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},ti=t=>{t.bi_valid>8?It(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},en=(t,n,e,i)=>{const a=n*2,r=e*2;return t[a]<t[r]||t[a]===t[r]&&i[n]<=i[e]},le=(t,n,e)=>{const i=t.heap[e];let a=e<<1;for(;a<=t.heap_len&&(a<t.heap_len&&en(n,t.heap[a+1],t.heap[a],t.depth)&&a++,!en(n,i,t.heap[a],t.depth));)t.heap[e]=t.heap[a],e=a,a<<=1;t.heap[e]=i},nn=(t,n,e)=>{let i,a,r=0,s,o;if(t.sym_next!==0)do i=t.pending_buf[t.sym_buf+r++]&255,i+=(t.pending_buf[t.sym_buf+r++]&255)<<8,a=t.pending_buf[t.sym_buf+r++],i===0?G(t,a,n):(s=zt[a],G(t,s+Lt+1,n),o=be[s],o!==0&&(a-=Ye[s],L(t,a,o)),i--,s=Wn(i),G(t,s,e),o=Vt[s],o!==0&&(i-=Xt[s],L(t,i,o)));while(r<t.sym_next);G(t,Ve,n)},pe=(t,n)=>{const e=n.dyn_tree,i=n.stat_desc.static_tree,a=n.stat_desc.has_stree,r=n.stat_desc.elems;let s,o,h=-1,l;for(t.heap_len=0,t.heap_max=Hn,s=0;s<r;s++)e[s*2]!==0?(t.heap[++t.heap_len]=h=s,t.depth[s]=0):e[s*2+1]=0;for(;t.heap_len<2;)l=t.heap[++t.heap_len]=h<2?++h:0,e[l*2]=1,t.depth[l]=0,t.opt_len--,a&&(t.static_len-=i[l*2+1]);for(n.max_code=h,s=t.heap_len>>1;s>=1;s--)le(t,e,s);l=r;do s=t.heap[1],t.heap[1]=t.heap[t.heap_len--],le(t,e,1),o=t.heap[1],t.heap[--t.heap_max]=s,t.heap[--t.heap_max]=o,e[l*2]=e[s*2]+e[o*2],t.depth[l]=(t.depth[s]>=t.depth[o]?t.depth[s]:t.depth[o])+1,e[s*2+1]=e[o*2+1]=l,t.heap[1]=l++,le(t,e,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],Zi(t,n),Jn(e,h,t.bl_count)},an=(t,n,e)=>{let i,a=-1,r,s=n[1],o=0,h=7,l=4;for(s===0&&(h=138,l=3),n[(e+1)*2+1]=65535,i=0;i<=e;i++)r=s,s=n[(i+1)*2+1],!(++o<h&&r===s)&&(o<l?t.bl_tree[r*2]+=o:r!==0?(r!==a&&t.bl_tree[r*2]++,t.bl_tree[Pn*2]++):o<=10?t.bl_tree[Gn*2]++:t.bl_tree[Kn*2]++,o=0,a=r,s===0?(h=138,l=3):r===s?(h=6,l=3):(h=7,l=4))},rn=(t,n,e)=>{let i,a=-1,r,s=n[1],o=0,h=7,l=4;for(s===0&&(h=138,l=3),i=0;i<=e;i++)if(r=s,s=n[(i+1)*2+1],!(++o<h&&r===s)){if(o<l)do G(t,r,t.bl_tree);while(--o!==0);else r!==0?(r!==a&&(G(t,r,t.bl_tree),o--),G(t,Pn,t.bl_tree),L(t,o-3,2)):o<=10?(G(t,Gn,t.bl_tree),L(t,o-3,3)):(G(t,Kn,t.bl_tree),L(t,o-11,7));o=0,a=r,s===0?(h=138,l=3):r===s?(h=6,l=3):(h=7,l=4)}},Bi=t=>{let n;for(an(t,t.dyn_ltree,t.l_desc.max_code),an(t,t.dyn_dtree,t.d_desc.max_code),pe(t,t.bl_desc),n=Ke-1;n>=3&&t.bl_tree[Vn[n]*2+1]===0;n--);return t.opt_len+=3*(n+1)+5+5+4,n},$i=(t,n,e,i)=>{let a;for(L(t,n-257,5),L(t,e-1,5),L(t,i-4,4),a=0;a<i;a++)L(t,t.bl_tree[Vn[a]*2+1],3);rn(t,t.dyn_ltree,n-1),rn(t,t.dyn_dtree,e-1)},Fi=t=>{let n=4093624447,e;for(e=0;e<=31;e++,n>>>=1)if(n&1&&t.dyn_ltree[e*2]!==0)return Qe;if(t.dyn_ltree[18]!==0||t.dyn_ltree[20]!==0||t.dyn_ltree[26]!==0)return tn;for(e=32;e<Lt;e++)if(t.dyn_ltree[e*2]!==0)return tn;return Qe};let ln=!1;const Mi=t=>{ln||(Ui(),ln=!0),t.l_desc=new re(t.dyn_ltree,Yn),t.d_desc=new re(t.dyn_dtree,Xn),t.bl_desc=new re(t.bl_tree,jn),t.bi_buf=0,t.bi_valid=0,Qn(t)},ei=(t,n,e,i)=>{L(t,(zi<<1)+(i?1:0),3),ti(t),It(t,e),It(t,~e),e&&t.pending_buf.set(t.window.subarray(n,n+e),t.pending),t.pending+=e},Hi=t=>{L(t,Mn<<1,3),G(t,Ve,X),Oi(t)},Pi=(t,n,e,i)=>{let a,r,s=0;t.level>0?(t.strm.data_type===Si&&(t.strm.data_type=Fi(t)),pe(t,t.l_desc),pe(t,t.d_desc),s=Bi(t),a=t.opt_len+3+7>>>3,r=t.static_len+3+7>>>3,r<=a&&(a=r)):a=r=e+5,e+4<=a&&n!==-1?ei(t,n,e,i):t.strategy===Ti||r===a?(L(t,(Mn<<1)+(i?1:0),3),nn(t,X,mt)):(L(t,(Ii<<1)+(i?1:0),3),$i(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),nn(t,t.dyn_ltree,t.dyn_dtree)),Qn(t),i&&ti(t)},Gi=(t,n,e)=>(t.pending_buf[t.sym_buf+t.sym_next++]=n,t.pending_buf[t.sym_buf+t.sym_next++]=n>>8,t.pending_buf[t.sym_buf+t.sym_next++]=e,n===0?t.dyn_ltree[e*2]++:(t.matches++,n--,t.dyn_ltree[(zt[e]+Lt+1)*2]++,t.dyn_dtree[Wn(n)*2]++),t.sym_next===t.sym_end);var Ki=Mi,Vi=ei,Yi=Pi,Xi=Gi,ji=Hi,Wi={_tr_init:Ki,_tr_stored_block:Vi,_tr_flush_block:Yi,_tr_tally:Xi,_tr_align:ji};const qi=(t,n,e,i)=>{let a=t&65535|0,r=t>>>16&65535|0,s=0;for(;e!==0;){s=e>2e3?2e3:e,e-=s;do a=a+n[i++]|0,r=r+a|0;while(--s);a%=65521,r%=65521}return a|r<<16|0};var Rt=qi;const Ji=()=>{let t,n=[];for(var e=0;e<256;e++){t=e;for(var i=0;i<8;i++)t=t&1?3988292384^t>>>1:t>>>1;n[e]=t}return n},Qi=new Uint32Array(Ji()),ta=(t,n,e,i)=>{const a=Qi,r=i+e;t^=-1;for(let s=i;s<r;s++)t=t>>>8^a[(t^n[s])&255];return t^-1};var C=ta,lt={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"},Ot={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:ea,_tr_stored_block:ve,_tr_flush_block:na,_tr_tally:J,_tr_align:ia}=Wi,{Z_NO_FLUSH:Q,Z_PARTIAL_FLUSH:aa,Z_FULL_FLUSH:ra,Z_FINISH:B,Z_BLOCK:on,Z_OK:D,Z_STREAM_END:sn,Z_STREAM_ERROR:K,Z_DATA_ERROR:la,Z_BUF_ERROR:oe,Z_DEFAULT_COMPRESSION:oa,Z_FILTERED:sa,Z_HUFFMAN_ONLY:Mt,Z_RLE:ca,Z_FIXED:fa,Z_DEFAULT_STRATEGY:ha,Z_UNKNOWN:_a,Z_DEFLATED:te}=Ot,ua=9,da=15,ga=8,wa=29,ba=256,xe=ba+1+wa,pa=30,va=19,xa=2*xe+1,ka=15,E=3,q=258,V=q+E+1,ya=32,gt=42,Xe=57,ke=69,ye=73,me=91,Ee=103,it=113,kt=666,N=1,pt=2,ot=3,vt=4,ma=3,at=(t,n)=>(t.msg=lt[n],n),cn=t=>t*2-(t>4?9:0),W=t=>{let n=t.length;for(;--n>=0;)t[n]=0},Ea=t=>{let n,e,i,a=t.w_size;n=t.hash_size,i=n;do e=t.head[--i],t.head[i]=e>=a?e-a:0;while(--n);n=a,i=n;do e=t.prev[--i],t.prev[i]=e>=a?e-a:0;while(--n)};let Aa=(t,n,e)=>(n<<t.hash_shift^e)&t.hash_mask,tt=Aa;const O=t=>{const n=t.state;let e=n.pending;e>t.avail_out&&(e=t.avail_out),e!==0&&(t.output.set(n.pending_buf.subarray(n.pending_out,n.pending_out+e),t.next_out),t.next_out+=e,n.pending_out+=e,t.total_out+=e,t.avail_out-=e,n.pending-=e,n.pending===0&&(n.pending_out=0))},Z=(t,n)=>{na(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,n),t.block_start=t.strstart,O(t.strm)},z=(t,n)=>{t.pending_buf[t.pending++]=n},xt=(t,n)=>{t.pending_buf[t.pending++]=n>>>8&255,t.pending_buf[t.pending++]=n&255},Ae=(t,n,e,i)=>{let a=t.avail_in;return a>i&&(a=i),a===0?0:(t.avail_in-=a,n.set(t.input.subarray(t.next_in,t.next_in+a),e),t.state.wrap===1?t.adler=Rt(t.adler,n,a,e):t.state.wrap===2&&(t.adler=C(t.adler,n,a,e)),t.next_in+=a,t.total_in+=a,a)},ni=(t,n)=>{let e=t.max_chain_length,i=t.strstart,a,r,s=t.prev_length,o=t.nice_match;const h=t.strstart>t.w_size-V?t.strstart-(t.w_size-V):0,l=t.window,c=t.w_mask,p=t.prev,u=t.strstart+q;let f=l[i+s-1],g=l[i+s];t.prev_length>=t.good_match&&(e>>=2),o>t.lookahead&&(o=t.lookahead);do if(a=n,!(l[a+s]!==g||l[a+s-1]!==f||l[a]!==l[i]||l[++a]!==l[i+1])){i+=2,a++;do;while(l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&i<u);if(r=q-(u-i),i=u-q,r>s){if(t.match_start=n,s=r,r>=o)break;f=l[i+s-1],g=l[i+s]}}while((n=p[n&c])>h&&--e!==0);return s<=t.lookahead?s:t.lookahead},wt=t=>{const n=t.w_size;let e,i,a;do{if(i=t.window_size-t.lookahead-t.strstart,t.strstart>=n+(n-V)&&(t.window.set(t.window.subarray(n,n+n-i),0),t.match_start-=n,t.strstart-=n,t.block_start-=n,t.insert>t.strstart&&(t.insert=t.strstart),Ea(t),i+=n),t.strm.avail_in===0)break;if(e=Ae(t.strm,t.window,t.strstart+t.lookahead,i),t.lookahead+=e,t.lookahead+t.insert>=E)for(a=t.strstart-t.insert,t.ins_h=t.window[a],t.ins_h=tt(t,t.ins_h,t.window[a+1]);t.insert&&(t.ins_h=tt(t,t.ins_h,t.window[a+E-1]),t.prev[a&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=a,a++,t.insert--,!(t.lookahead+t.insert<E)););}while(t.lookahead<V&&t.strm.avail_in!==0)},ii=(t,n)=>{let e=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,i,a,r,s=0,o=t.strm.avail_in;do{if(i=65535,r=t.bi_valid+42>>3,t.strm.avail_out<r||(r=t.strm.avail_out-r,a=t.strstart-t.block_start,i>a+t.strm.avail_in&&(i=a+t.strm.avail_in),i>r&&(i=r),i<e&&(i===0&&n!==B||n===Q||i!==a+t.strm.avail_in)))break;s=n===B&&i===a+t.strm.avail_in?1:0,ve(t,0,0,s),t.pending_buf[t.pending-4]=i,t.pending_buf[t.pending-3]=i>>8,t.pending_buf[t.pending-2]=~i,t.pending_buf[t.pending-1]=~i>>8,O(t.strm),a&&(a>i&&(a=i),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+a),t.strm.next_out),t.strm.next_out+=a,t.strm.avail_out-=a,t.strm.total_out+=a,t.block_start+=a,i-=a),i&&(Ae(t.strm,t.strm.output,t.strm.next_out,i),t.strm.next_out+=i,t.strm.avail_out-=i,t.strm.total_out+=i)}while(s===0);return o-=t.strm.avail_in,o&&(o>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=o&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-o,t.strm.next_in),t.strstart),t.strstart+=o,t.insert+=o>t.w_size-t.insert?t.w_size-t.insert:o),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),s?vt:n!==Q&&n!==B&&t.strm.avail_in===0&&t.strstart===t.block_start?pt:(r=t.window_size-t.strstart,t.strm.avail_in>r&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,r+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),r>t.strm.avail_in&&(r=t.strm.avail_in),r&&(Ae(t.strm,t.window,t.strstart,r),t.strstart+=r,t.insert+=r>t.w_size-t.insert?t.w_size-t.insert:r),t.high_water<t.strstart&&(t.high_water=t.strstart),r=t.bi_valid+42>>3,r=t.pending_buf_size-r>65535?65535:t.pending_buf_size-r,e=r>t.w_size?t.w_size:r,a=t.strstart-t.block_start,(a>=e||(a||n===B)&&n!==Q&&t.strm.avail_in===0&&a<=r)&&(i=a>r?r:a,s=n===B&&t.strm.avail_in===0&&i===a?1:0,ve(t,t.block_start,i,s),t.block_start+=i,O(t.strm)),s?ot:N)},se=(t,n)=>{let e,i;for(;;){if(t.lookahead<V){if(wt(t),t.lookahead<V&&n===Q)return N;if(t.lookahead===0)break}if(e=0,t.lookahead>=E&&(t.ins_h=tt(t,t.ins_h,t.window[t.strstart+E-1]),e=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),e!==0&&t.strstart-e<=t.w_size-V&&(t.match_length=ni(t,e)),t.match_length>=E)if(i=J(t,t.strstart-t.match_start,t.match_length-E),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=E){t.match_length--;do t.strstart++,t.ins_h=tt(t,t.ins_h,t.window[t.strstart+E-1]),e=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart;while(--t.match_length!==0);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=tt(t,t.ins_h,t.window[t.strstart+1]);else i=J(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(Z(t,!1),t.strm.avail_out===0))return N}return t.insert=t.strstart<E-1?t.strstart:E-1,n===B?(Z(t,!0),t.strm.avail_out===0?ot:vt):t.sym_next&&(Z(t,!1),t.strm.avail_out===0)?N:pt},ft=(t,n)=>{let e,i,a;for(;;){if(t.lookahead<V){if(wt(t),t.lookahead<V&&n===Q)return N;if(t.lookahead===0)break}if(e=0,t.lookahead>=E&&(t.ins_h=tt(t,t.ins_h,t.window[t.strstart+E-1]),e=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=E-1,e!==0&&t.prev_length<t.max_lazy_match&&t.strstart-e<=t.w_size-V&&(t.match_length=ni(t,e),t.match_length<=5&&(t.strategy===sa||t.match_length===E&&t.strstart-t.match_start>4096)&&(t.match_length=E-1)),t.prev_length>=E&&t.match_length<=t.prev_length){a=t.strstart+t.lookahead-E,i=J(t,t.strstart-1-t.prev_match,t.prev_length-E),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=a&&(t.ins_h=tt(t,t.ins_h,t.window[t.strstart+E-1]),e=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart);while(--t.prev_length!==0);if(t.match_available=0,t.match_length=E-1,t.strstart++,i&&(Z(t,!1),t.strm.avail_out===0))return N}else if(t.match_available){if(i=J(t,0,t.window[t.strstart-1]),i&&Z(t,!1),t.strstart++,t.lookahead--,t.strm.avail_out===0)return N}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=J(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<E-1?t.strstart:E-1,n===B?(Z(t,!0),t.strm.avail_out===0?ot:vt):t.sym_next&&(Z(t,!1),t.strm.avail_out===0)?N:pt},Ta=(t,n)=>{let e,i,a,r;const s=t.window;for(;;){if(t.lookahead<=q){if(wt(t),t.lookahead<=q&&n===Q)return N;if(t.lookahead===0)break}if(t.match_length=0,t.lookahead>=E&&t.strstart>0&&(a=t.strstart-1,i=s[a],i===s[++a]&&i===s[++a]&&i===s[++a])){r=t.strstart+q;do;while(i===s[++a]&&i===s[++a]&&i===s[++a]&&i===s[++a]&&i===s[++a]&&i===s[++a]&&i===s[++a]&&i===s[++a]&&a<r);t.match_length=q-(r-a),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=E?(e=J(t,1,t.match_length-E),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(e=J(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),e&&(Z(t,!1),t.strm.avail_out===0))return N}return t.insert=0,n===B?(Z(t,!0),t.strm.avail_out===0?ot:vt):t.sym_next&&(Z(t,!1),t.strm.avail_out===0)?N:pt},Sa=(t,n)=>{let e;for(;;){if(t.lookahead===0&&(wt(t),t.lookahead===0)){if(n===Q)return N;break}if(t.match_length=0,e=J(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,e&&(Z(t,!1),t.strm.avail_out===0))return N}return t.insert=0,n===B?(Z(t,!0),t.strm.avail_out===0?ot:vt):t.sym_next&&(Z(t,!1),t.strm.avail_out===0)?N:pt};function H(t,n,e,i,a){this.good_length=t,this.max_lazy=n,this.nice_length=e,this.max_chain=i,this.func=a}const yt=[new H(0,0,0,0,ii),new H(4,4,8,4,se),new H(4,5,16,8,se),new H(4,6,32,32,se),new H(4,4,16,16,ft),new H(8,16,32,32,ft),new H(8,16,128,128,ft),new H(8,32,128,256,ft),new H(32,128,258,1024,ft),new H(32,258,258,4096,ft)],za=t=>{t.window_size=2*t.w_size,W(t.head),t.max_lazy_match=yt[t.level].max_lazy,t.good_match=yt[t.level].good_length,t.nice_match=yt[t.level].nice_length,t.max_chain_length=yt[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=E-1,t.match_available=0,t.ins_h=0};function Ia(){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=te,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(xa*2),this.dyn_dtree=new Uint16Array((2*pa+1)*2),this.bl_tree=new Uint16Array((2*va+1)*2),W(this.dyn_ltree),W(this.dyn_dtree),W(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(ka+1),this.heap=new Uint16Array(2*xe+1),W(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*xe+1),W(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}const Zt=t=>{if(!t)return 1;const n=t.state;return!n||n.strm!==t||n.status!==gt&&n.status!==Xe&&n.status!==ke&&n.status!==ye&&n.status!==me&&n.status!==Ee&&n.status!==it&&n.status!==kt?1:0},ai=t=>{if(Zt(t))return at(t,K);t.total_in=t.total_out=0,t.data_type=_a;const n=t.state;return n.pending=0,n.pending_out=0,n.wrap<0&&(n.wrap=-n.wrap),n.status=n.wrap===2?Xe:n.wrap?gt:it,t.adler=n.wrap===2?0:1,n.last_flush=-2,ea(n),D},ri=t=>{const n=ai(t);return n===D&&za(t.state),n},Ra=(t,n)=>Zt(t)||t.state.wrap!==2?K:(t.state.gzhead=n,D),li=(t,n,e,i,a,r)=>{if(!t)return K;let s=1;if(n===oa&&(n=6),i<0?(s=0,i=-i):i>15&&(s=2,i-=16),a<1||a>ua||e!==te||i<8||i>15||n<0||n>9||r<0||r>fa||i===8&&s!==1)return at(t,K);i===8&&(i=9);const o=new Ia;return t.state=o,o.strm=t,o.status=gt,o.wrap=s,o.gzhead=null,o.w_bits=i,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=a+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+E-1)/E),o.window=new Uint8Array(o.w_size*2),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<a+6,o.pending_buf_size=o.lit_bufsize*4,o.pending_buf=new Uint8Array(o.pending_buf_size),o.sym_buf=o.lit_bufsize,o.sym_end=(o.lit_bufsize-1)*3,o.level=n,o.strategy=r,o.method=e,ri(t)},Ca=(t,n)=>li(t,n,te,da,ga,ha),Da=(t,n)=>{if(Zt(t)||n>on||n<0)return t?at(t,K):K;const e=t.state;if(!t.output||t.avail_in!==0&&!t.input||e.status===kt&&n!==B)return at(t,t.avail_out===0?oe:K);const i=e.last_flush;if(e.last_flush=n,e.pending!==0){if(O(t),t.avail_out===0)return e.last_flush=-1,D}else if(t.avail_in===0&&cn(n)<=cn(i)&&n!==B)return at(t,oe);if(e.status===kt&&t.avail_in!==0)return at(t,oe);if(e.status===gt&&e.wrap===0&&(e.status=it),e.status===gt){let a=te+(e.w_bits-8<<4)<<8,r=-1;if(e.strategy>=Mt||e.level<2?r=0:e.level<6?r=1:e.level===6?r=2:r=3,a|=r<<6,e.strstart!==0&&(a|=ya),a+=31-a%31,xt(e,a),e.strstart!==0&&(xt(e,t.adler>>>16),xt(e,t.adler&65535)),t.adler=1,e.status=it,O(t),e.pending!==0)return e.last_flush=-1,D}if(e.status===Xe){if(t.adler=0,z(e,31),z(e,139),z(e,8),e.gzhead)z(e,(e.gzhead.text?1:0)+(e.gzhead.hcrc?2:0)+(e.gzhead.extra?4:0)+(e.gzhead.name?8:0)+(e.gzhead.comment?16:0)),z(e,e.gzhead.time&255),z(e,e.gzhead.time>>8&255),z(e,e.gzhead.time>>16&255),z(e,e.gzhead.time>>24&255),z(e,e.level===9?2:e.strategy>=Mt||e.level<2?4:0),z(e,e.gzhead.os&255),e.gzhead.extra&&e.gzhead.extra.length&&(z(e,e.gzhead.extra.length&255),z(e,e.gzhead.extra.length>>8&255)),e.gzhead.hcrc&&(t.adler=C(t.adler,e.pending_buf,e.pending,0)),e.gzindex=0,e.status=ke;else if(z(e,0),z(e,0),z(e,0),z(e,0),z(e,0),z(e,e.level===9?2:e.strategy>=Mt||e.level<2?4:0),z(e,ma),e.status=it,O(t),e.pending!==0)return e.last_flush=-1,D}if(e.status===ke){if(e.gzhead.extra){let a=e.pending,r=(e.gzhead.extra.length&65535)-e.gzindex;for(;e.pending+r>e.pending_buf_size;){let o=e.pending_buf_size-e.pending;if(e.pending_buf.set(e.gzhead.extra.subarray(e.gzindex,e.gzindex+o),e.pending),e.pending=e.pending_buf_size,e.gzhead.hcrc&&e.pending>a&&(t.adler=C(t.adler,e.pending_buf,e.pending-a,a)),e.gzindex+=o,O(t),e.pending!==0)return e.last_flush=-1,D;a=0,r-=o}let s=new Uint8Array(e.gzhead.extra);e.pending_buf.set(s.subarray(e.gzindex,e.gzindex+r),e.pending),e.pending+=r,e.gzhead.hcrc&&e.pending>a&&(t.adler=C(t.adler,e.pending_buf,e.pending-a,a)),e.gzindex=0}e.status=ye}if(e.status===ye){if(e.gzhead.name){let a=e.pending,r;do{if(e.pending===e.pending_buf_size){if(e.gzhead.hcrc&&e.pending>a&&(t.adler=C(t.adler,e.pending_buf,e.pending-a,a)),O(t),e.pending!==0)return e.last_flush=-1,D;a=0}e.gzindex<e.gzhead.name.length?r=e.gzhead.name.charCodeAt(e.gzindex++)&255:r=0,z(e,r)}while(r!==0);e.gzhead.hcrc&&e.pending>a&&(t.adler=C(t.adler,e.pending_buf,e.pending-a,a)),e.gzindex=0}e.status=me}if(e.status===me){if(e.gzhead.comment){let a=e.pending,r;do{if(e.pending===e.pending_buf_size){if(e.gzhead.hcrc&&e.pending>a&&(t.adler=C(t.adler,e.pending_buf,e.pending-a,a)),O(t),e.pending!==0)return e.last_flush=-1,D;a=0}e.gzindex<e.gzhead.comment.length?r=e.gzhead.comment.charCodeAt(e.gzindex++)&255:r=0,z(e,r)}while(r!==0);e.gzhead.hcrc&&e.pending>a&&(t.adler=C(t.adler,e.pending_buf,e.pending-a,a))}e.status=Ee}if(e.status===Ee){if(e.gzhead.hcrc){if(e.pending+2>e.pending_buf_size&&(O(t),e.pending!==0))return e.last_flush=-1,D;z(e,t.adler&255),z(e,t.adler>>8&255),t.adler=0}if(e.status=it,O(t),e.pending!==0)return e.last_flush=-1,D}if(t.avail_in!==0||e.lookahead!==0||n!==Q&&e.status!==kt){let a=e.level===0?ii(e,n):e.strategy===Mt?Sa(e,n):e.strategy===ca?Ta(e,n):yt[e.level].func(e,n);if((a===ot||a===vt)&&(e.status=kt),a===N||a===ot)return t.avail_out===0&&(e.last_flush=-1),D;if(a===pt&&(n===aa?ia(e):n!==on&&(ve(e,0,0,!1),n===ra&&(W(e.head),e.lookahead===0&&(e.strstart=0,e.block_start=0,e.insert=0))),O(t),t.avail_out===0))return e.last_flush=-1,D}return n!==B?D:e.wrap<=0?sn:(e.wrap===2?(z(e,t.adler&255),z(e,t.adler>>8&255),z(e,t.adler>>16&255),z(e,t.adler>>24&255),z(e,t.total_in&255),z(e,t.total_in>>8&255),z(e,t.total_in>>16&255),z(e,t.total_in>>24&255)):(xt(e,t.adler>>>16),xt(e,t.adler&65535)),O(t),e.wrap>0&&(e.wrap=-e.wrap),e.pending!==0?D:sn)},Na=t=>{if(Zt(t))return K;const n=t.state.status;return t.state=null,n===it?at(t,la):D},La=(t,n)=>{let e=n.length;if(Zt(t))return K;const i=t.state,a=i.wrap;if(a===2||a===1&&i.status!==gt||i.lookahead)return K;if(a===1&&(t.adler=Rt(t.adler,n,e,0)),i.wrap=0,e>=i.w_size){a===0&&(W(i.head),i.strstart=0,i.block_start=0,i.insert=0);let h=new Uint8Array(i.w_size);h.set(n.subarray(e-i.w_size,e),0),n=h,e=i.w_size}const r=t.avail_in,s=t.next_in,o=t.input;for(t.avail_in=e,t.next_in=0,t.input=n,wt(i);i.lookahead>=E;){let h=i.strstart,l=i.lookahead-(E-1);do i.ins_h=tt(i,i.ins_h,i.window[h+E-1]),i.prev[h&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=h,h++;while(--l);i.strstart=h,i.lookahead=E-1,wt(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=E-1,i.match_available=0,t.next_in=s,t.input=o,t.avail_in=r,i.wrap=a,D};var Oa=Ca,Za=li,Ua=ri,Ba=ai,$a=Ra,Fa=Da,Ma=Na,Ha=La,Pa="pako deflate (from Nodeca project)",Et={deflateInit:Oa,deflateInit2:Za,deflateReset:Ua,deflateResetKeep:Ba,deflateSetHeader:$a,deflate:Fa,deflateEnd:Ma,deflateSetDictionary:Ha,deflateInfo:Pa};const Ga=(t,n)=>Object.prototype.hasOwnProperty.call(t,n);var Ka=function(t){const n=Array.prototype.slice.call(arguments,1);for(;n.length;){const e=n.shift();if(e){if(typeof e!="object")throw new TypeError(e+"must be non-object");for(const i in e)Ga(e,i)&&(t[i]=e[i])}}return t},Va=t=>{let n=0;for(let i=0,a=t.length;i<a;i++)n+=t[i].length;const e=new Uint8Array(n);for(let i=0,a=0,r=t.length;i<r;i++){let s=t[i];e.set(s,a),a+=s.length}return e},ee={assign:Ka,flattenChunks:Va};let oi=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{oi=!1}const Ct=new Uint8Array(256);for(let t=0;t<256;t++)Ct[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Ct[254]=Ct[254]=1;var Ya=t=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(t);let n,e,i,a,r,s=t.length,o=0;for(a=0;a<s;a++)e=t.charCodeAt(a),(e&64512)===55296&&a+1<s&&(i=t.charCodeAt(a+1),(i&64512)===56320&&(e=65536+(e-55296<<10)+(i-56320),a++)),o+=e<128?1:e<2048?2:e<65536?3:4;for(n=new Uint8Array(o),r=0,a=0;r<o;a++)e=t.charCodeAt(a),(e&64512)===55296&&a+1<s&&(i=t.charCodeAt(a+1),(i&64512)===56320&&(e=65536+(e-55296<<10)+(i-56320),a++)),e<128?n[r++]=e:e<2048?(n[r++]=192|e>>>6,n[r++]=128|e&63):e<65536?(n[r++]=224|e>>>12,n[r++]=128|e>>>6&63,n[r++]=128|e&63):(n[r++]=240|e>>>18,n[r++]=128|e>>>12&63,n[r++]=128|e>>>6&63,n[r++]=128|e&63);return n};const Xa=(t,n)=>{if(n<65534&&t.subarray&&oi)return String.fromCharCode.apply(null,t.length===n?t:t.subarray(0,n));let e="";for(let i=0;i<n;i++)e+=String.fromCharCode(t[i]);return e};var ja=(t,n)=>{const e=n||t.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(t.subarray(0,n));let i,a;const r=new Array(e*2);for(a=0,i=0;i<e;){let s=t[i++];if(s<128){r[a++]=s;continue}let o=Ct[s];if(o>4){r[a++]=65533,i+=o-1;continue}for(s&=o===2?31:o===3?15:7;o>1&&i<e;)s=s<<6|t[i++]&63,o--;if(o>1){r[a++]=65533;continue}s<65536?r[a++]=s:(s-=65536,r[a++]=55296|s>>10&1023,r[a++]=56320|s&1023)}return Xa(r,a)},Wa=(t,n)=>{n=n||t.length,n>t.length&&(n=t.length);let e=n-1;for(;e>=0&&(t[e]&192)===128;)e--;return e<0||e===0?n:e+Ct[t[e]]>n?e:n},Dt={string2buf:Ya,buf2string:ja,utf8border:Wa};function qa(){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 si=qa;const ci=Object.prototype.toString,{Z_NO_FLUSH:Ja,Z_SYNC_FLUSH:Qa,Z_FULL_FLUSH:tr,Z_FINISH:er,Z_OK:jt,Z_STREAM_END:nr,Z_DEFAULT_COMPRESSION:ir,Z_DEFAULT_STRATEGY:ar,Z_DEFLATED:rr}=Ot;function Ut(t){this.options=ee.assign({level:ir,method:rr,chunkSize:16384,windowBits:15,memLevel:8,strategy:ar},t||{});let n=this.options;n.raw&&n.windowBits>0?n.windowBits=-n.windowBits:n.gzip&&n.windowBits>0&&n.windowBits<16&&(n.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new si,this.strm.avail_out=0;let e=Et.deflateInit2(this.strm,n.level,n.method,n.windowBits,n.memLevel,n.strategy);if(e!==jt)throw new Error(lt[e]);if(n.header&&Et.deflateSetHeader(this.strm,n.header),n.dictionary){let i;if(typeof n.dictionary=="string"?i=Dt.string2buf(n.dictionary):ci.call(n.dictionary)==="[object ArrayBuffer]"?i=new Uint8Array(n.dictionary):i=n.dictionary,e=Et.deflateSetDictionary(this.strm,i),e!==jt)throw new Error(lt[e]);this._dict_set=!0}}Ut.prototype.push=function(t,n){const e=this.strm,i=this.options.chunkSize;let a,r;if(this.ended)return!1;for(n===~~n?r=n:r=n===!0?er:Ja,typeof t=="string"?e.input=Dt.string2buf(t):ci.call(t)==="[object ArrayBuffer]"?e.input=new Uint8Array(t):e.input=t,e.next_in=0,e.avail_in=e.input.length;;){if(e.avail_out===0&&(e.output=new Uint8Array(i),e.next_out=0,e.avail_out=i),(r===Qa||r===tr)&&e.avail_out<=6){this.onData(e.output.subarray(0,e.next_out)),e.avail_out=0;continue}if(a=Et.deflate(e,r),a===nr)return e.next_out>0&&this.onData(e.output.subarray(0,e.next_out)),a=Et.deflateEnd(this.strm),this.onEnd(a),this.ended=!0,a===jt;if(e.avail_out===0){this.onData(e.output);continue}if(r>0&&e.next_out>0){this.onData(e.output.subarray(0,e.next_out)),e.avail_out=0;continue}if(e.avail_in===0)break}return!0};Ut.prototype.onData=function(t){this.chunks.push(t)};Ut.prototype.onEnd=function(t){t===jt&&(this.result=ee.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function je(t,n){const e=new Ut(n);if(e.push(t,!0),e.err)throw e.msg||lt[e.err];return e.result}function lr(t,n){return n=n||{},n.raw=!0,je(t,n)}function or(t,n){return n=n||{},n.gzip=!0,je(t,n)}var sr=Ut,cr=je,fr=lr,hr=or,_r={Deflate:sr,deflate:cr,deflateRaw:fr,gzip:hr};const Ht=16209,ur=16191;var dr=function(n,e){let i,a,r,s,o,h,l,c,p,u,f,g,I,m,b,T,k,_,y,S,d,A,x,w;const v=n.state;i=n.next_in,x=n.input,a=i+(n.avail_in-5),r=n.next_out,w=n.output,s=r-(e-n.avail_out),o=r+(n.avail_out-257),h=v.dmax,l=v.wsize,c=v.whave,p=v.wnext,u=v.window,f=v.hold,g=v.bits,I=v.lencode,m=v.distcode,b=(1<<v.lenbits)-1,T=(1<<v.distbits)-1;t:do{g<15&&(f+=x[i++]<<g,g+=8,f+=x[i++]<<g,g+=8),k=I[f&b];e:for(;;){if(_=k>>>24,f>>>=_,g-=_,_=k>>>16&255,_===0)w[r++]=k&65535;else if(_&16){y=k&65535,_&=15,_&&(g<_&&(f+=x[i++]<<g,g+=8),y+=f&(1<<_)-1,f>>>=_,g-=_),g<15&&(f+=x[i++]<<g,g+=8,f+=x[i++]<<g,g+=8),k=m[f&T];n:for(;;){if(_=k>>>24,f>>>=_,g-=_,_=k>>>16&255,_&16){if(S=k&65535,_&=15,g<_&&(f+=x[i++]<<g,g+=8,g<_&&(f+=x[i++]<<g,g+=8)),S+=f&(1<<_)-1,S>h){n.msg="invalid distance too far back",v.mode=Ht;break t}if(f>>>=_,g-=_,_=r-s,S>_){if(_=S-_,_>c&&v.sane){n.msg="invalid distance too far back",v.mode=Ht;break t}if(d=0,A=u,p===0){if(d+=l-_,_<y){y-=_;do w[r++]=u[d++];while(--_);d=r-S,A=w}}else if(p<_){if(d+=l+p-_,_-=p,_<y){y-=_;do w[r++]=u[d++];while(--_);if(d=0,p<y){_=p,y-=_;do w[r++]=u[d++];while(--_);d=r-S,A=w}}}else if(d+=p-_,_<y){y-=_;do w[r++]=u[d++];while(--_);d=r-S,A=w}for(;y>2;)w[r++]=A[d++],w[r++]=A[d++],w[r++]=A[d++],y-=3;y&&(w[r++]=A[d++],y>1&&(w[r++]=A[d++]))}else{d=r-S;do w[r++]=w[d++],w[r++]=w[d++],w[r++]=w[d++],y-=3;while(y>2);y&&(w[r++]=w[d++],y>1&&(w[r++]=w[d++]))}}else if((_&64)===0){k=m[(k&65535)+(f&(1<<_)-1)];continue n}else{n.msg="invalid distance code",v.mode=Ht;break t}break}}else if((_&64)===0){k=I[(k&65535)+(f&(1<<_)-1)];continue e}else if(_&32){v.mode=ur;break t}else{n.msg="invalid literal/length code",v.mode=Ht;break t}break}}while(i<a&&r<o);y=g>>3,i-=y,g-=y<<3,f&=(1<<g)-1,n.next_in=i,n.next_out=r,n.avail_in=i<a?5+(a-i):5-(i-a),n.avail_out=r<o?257+(o-r):257-(r-o),v.hold=f,v.bits=g};const ht=15,fn=852,hn=592,_n=0,ce=1,un=2,gr=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]),wr=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]),br=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]),pr=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]),vr=(t,n,e,i,a,r,s,o)=>{const h=o.bits;let l=0,c=0,p=0,u=0,f=0,g=0,I=0,m=0,b=0,T=0,k,_,y,S,d,A=null,x;const w=new Uint16Array(ht+1),v=new Uint16Array(ht+1);let et=null,qe,$t,Ft;for(l=0;l<=ht;l++)w[l]=0;for(c=0;c<i;c++)w[n[e+c]]++;for(f=h,u=ht;u>=1&&w[u]===0;u--);if(f>u&&(f=u),u===0)return a[r++]=1<<24|64<<16|0,a[r++]=1<<24|64<<16|0,o.bits=1,0;for(p=1;p<u&&w[p]===0;p++);for(f<p&&(f=p),m=1,l=1;l<=ht;l++)if(m<<=1,m-=w[l],m<0)return-1;if(m>0&&(t===_n||u!==1))return-1;for(v[1]=0,l=1;l<ht;l++)v[l+1]=v[l]+w[l];for(c=0;c<i;c++)n[e+c]!==0&&(s[v[n[e+c]]++]=c);if(t===_n?(A=et=s,x=20):t===ce?(A=gr,et=wr,x=257):(A=br,et=pr,x=0),T=0,c=0,l=p,d=r,g=f,I=0,y=-1,b=1<<f,S=b-1,t===ce&&b>fn||t===un&&b>hn)return 1;for(;;){qe=l-I,s[c]+1<x?($t=0,Ft=s[c]):s[c]>=x?($t=et[s[c]-x],Ft=A[s[c]-x]):($t=96,Ft=0),k=1<<l-I,_=1<<g,p=_;do _-=k,a[d+(T>>I)+_]=qe<<24|$t<<16|Ft|0;while(_!==0);for(k=1<<l-1;T&k;)k>>=1;if(k!==0?(T&=k-1,T+=k):T=0,c++,--w[l]===0){if(l===u)break;l=n[e+s[c]]}if(l>f&&(T&S)!==y){for(I===0&&(I=f),d+=p,g=l-I,m=1<<g;g+I<u&&(m-=w[g+I],!(m<=0));)g++,m<<=1;if(b+=1<<g,t===ce&&b>fn||t===un&&b>hn)return 1;y=T&S,a[y]=f<<24|g<<16|d-r|0}}return T!==0&&(a[d+T]=l-I<<24|64<<16|0),o.bits=f,0};var At=vr;const xr=0,fi=1,hi=2,{Z_FINISH:dn,Z_BLOCK:kr,Z_TREES:Pt,Z_OK:st,Z_STREAM_END:yr,Z_NEED_DICT:mr,Z_STREAM_ERROR:$,Z_DATA_ERROR:_i,Z_MEM_ERROR:ui,Z_BUF_ERROR:Er,Z_DEFLATED:gn}=Ot,ne=16180,wn=16181,bn=16182,pn=16183,vn=16184,xn=16185,kn=16186,yn=16187,mn=16188,En=16189,Wt=16190,Y=16191,fe=16192,An=16193,he=16194,Tn=16195,Sn=16196,zn=16197,In=16198,Gt=16199,Kt=16200,Rn=16201,Cn=16202,Dn=16203,Nn=16204,Ln=16205,_e=16206,On=16207,Zn=16208,R=16209,di=16210,gi=16211,Ar=852,Tr=592,Sr=15,zr=Sr,Un=t=>(t>>>24&255)+(t>>>8&65280)+((t&65280)<<8)+((t&255)<<24);function Ir(){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}const ct=t=>{if(!t)return 1;const n=t.state;return!n||n.strm!==t||n.mode<ne||n.mode>gi?1:0},wi=t=>{if(ct(t))return $;const n=t.state;return t.total_in=t.total_out=n.total=0,t.msg="",n.wrap&&(t.adler=n.wrap&1),n.mode=ne,n.last=0,n.havedict=0,n.flags=-1,n.dmax=32768,n.head=null,n.hold=0,n.bits=0,n.lencode=n.lendyn=new Int32Array(Ar),n.distcode=n.distdyn=new Int32Array(Tr),n.sane=1,n.back=-1,st},bi=t=>{if(ct(t))return $;const n=t.state;return n.wsize=0,n.whave=0,n.wnext=0,wi(t)},pi=(t,n)=>{let e;if(ct(t))return $;const i=t.state;return n<0?(e=0,n=-n):(e=(n>>4)+5,n<48&&(n&=15)),n&&(n<8||n>15)?$:(i.window!==null&&i.wbits!==n&&(i.window=null),i.wrap=e,i.wbits=n,bi(t))},vi=(t,n)=>{if(!t)return $;const e=new Ir;t.state=e,e.strm=t,e.window=null,e.mode=ne;const i=pi(t,n);return i!==st&&(t.state=null),i},Rr=t=>vi(t,zr);let Bn=!0,ue,de;const Cr=t=>{if(Bn){ue=new Int32Array(512),de=new Int32Array(32);let n=0;for(;n<144;)t.lens[n++]=8;for(;n<256;)t.lens[n++]=9;for(;n<280;)t.lens[n++]=7;for(;n<288;)t.lens[n++]=8;for(At(fi,t.lens,0,288,ue,0,t.work,{bits:9}),n=0;n<32;)t.lens[n++]=5;At(hi,t.lens,0,32,de,0,t.work,{bits:5}),Bn=!1}t.lencode=ue,t.lenbits=9,t.distcode=de,t.distbits=5},xi=(t,n,e,i)=>{let a;const r=t.state;return r.window===null&&(r.wsize=1<<r.wbits,r.wnext=0,r.whave=0,r.window=new Uint8Array(r.wsize)),i>=r.wsize?(r.window.set(n.subarray(e-r.wsize,e),0),r.wnext=0,r.whave=r.wsize):(a=r.wsize-r.wnext,a>i&&(a=i),r.window.set(n.subarray(e-i,e-i+a),r.wnext),i-=a,i?(r.window.set(n.subarray(e-i,e),0),r.wnext=i,r.whave=r.wsize):(r.wnext+=a,r.wnext===r.wsize&&(r.wnext=0),r.whave<r.wsize&&(r.whave+=a))),0},Dr=(t,n)=>{let e,i,a,r,s,o,h,l,c,p,u,f,g,I,m=0,b,T,k,_,y,S,d,A;const x=new Uint8Array(4);let w,v;const et=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(ct(t)||!t.output||!t.input&&t.avail_in!==0)return $;e=t.state,e.mode===Y&&(e.mode=fe),s=t.next_out,a=t.output,h=t.avail_out,r=t.next_in,i=t.input,o=t.avail_in,l=e.hold,c=e.bits,p=o,u=h,A=st;t:for(;;)switch(e.mode){case ne:if(e.wrap===0){e.mode=fe;break}for(;c<16;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if(e.wrap&2&&l===35615){e.wbits===0&&(e.wbits=15),e.check=0,x[0]=l&255,x[1]=l>>>8&255,e.check=C(e.check,x,2,0),l=0,c=0,e.mode=wn;break}if(e.head&&(e.head.done=!1),!(e.wrap&1)||(((l&255)<<8)+(l>>8))%31){t.msg="incorrect header check",e.mode=R;break}if((l&15)!==gn){t.msg="unknown compression method",e.mode=R;break}if(l>>>=4,c-=4,d=(l&15)+8,e.wbits===0&&(e.wbits=d),d>15||d>e.wbits){t.msg="invalid window size",e.mode=R;break}e.dmax=1<<e.wbits,e.flags=0,t.adler=e.check=1,e.mode=l&512?En:Y,l=0,c=0;break;case wn:for(;c<16;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if(e.flags=l,(e.flags&255)!==gn){t.msg="unknown compression method",e.mode=R;break}if(e.flags&57344){t.msg="unknown header flags set",e.mode=R;break}e.head&&(e.head.text=l>>8&1),e.flags&512&&e.wrap&4&&(x[0]=l&255,x[1]=l>>>8&255,e.check=C(e.check,x,2,0)),l=0,c=0,e.mode=bn;case bn:for(;c<32;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}e.head&&(e.head.time=l),e.flags&512&&e.wrap&4&&(x[0]=l&255,x[1]=l>>>8&255,x[2]=l>>>16&255,x[3]=l>>>24&255,e.check=C(e.check,x,4,0)),l=0,c=0,e.mode=pn;case pn:for(;c<16;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}e.head&&(e.head.xflags=l&255,e.head.os=l>>8),e.flags&512&&e.wrap&4&&(x[0]=l&255,x[1]=l>>>8&255,e.check=C(e.check,x,2,0)),l=0,c=0,e.mode=vn;case vn:if(e.flags&1024){for(;c<16;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}e.length=l,e.head&&(e.head.extra_len=l),e.flags&512&&e.wrap&4&&(x[0]=l&255,x[1]=l>>>8&255,e.check=C(e.check,x,2,0)),l=0,c=0}else e.head&&(e.head.extra=null);e.mode=xn;case xn:if(e.flags&1024&&(f=e.length,f>o&&(f=o),f&&(e.head&&(d=e.head.extra_len-e.length,e.head.extra||(e.head.extra=new Uint8Array(e.head.extra_len)),e.head.extra.set(i.subarray(r,r+f),d)),e.flags&512&&e.wrap&4&&(e.check=C(e.check,i,f,r)),o-=f,r+=f,e.length-=f),e.length))break t;e.length=0,e.mode=kn;case kn:if(e.flags&2048){if(o===0)break t;f=0;do d=i[r+f++],e.head&&d&&e.length<65536&&(e.head.name+=String.fromCharCode(d));while(d&&f<o);if(e.flags&512&&e.wrap&4&&(e.check=C(e.check,i,f,r)),o-=f,r+=f,d)break t}else e.head&&(e.head.name=null);e.length=0,e.mode=yn;case yn:if(e.flags&4096){if(o===0)break t;f=0;do d=i[r+f++],e.head&&d&&e.length<65536&&(e.head.comment+=String.fromCharCode(d));while(d&&f<o);if(e.flags&512&&e.wrap&4&&(e.check=C(e.check,i,f,r)),o-=f,r+=f,d)break t}else e.head&&(e.head.comment=null);e.mode=mn;case mn:if(e.flags&512){for(;c<16;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if(e.wrap&4&&l!==(e.check&65535)){t.msg="header crc mismatch",e.mode=R;break}l=0,c=0}e.head&&(e.head.hcrc=e.flags>>9&1,e.head.done=!0),t.adler=e.check=0,e.mode=Y;break;case En:for(;c<32;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}t.adler=e.check=Un(l),l=0,c=0,e.mode=Wt;case Wt:if(e.havedict===0)return t.next_out=s,t.avail_out=h,t.next_in=r,t.avail_in=o,e.hold=l,e.bits=c,mr;t.adler=e.check=1,e.mode=Y;case Y:if(n===kr||n===Pt)break t;case fe:if(e.last){l>>>=c&7,c-=c&7,e.mode=_e;break}for(;c<3;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}switch(e.last=l&1,l>>>=1,c-=1,l&3){case 0:e.mode=An;break;case 1:if(Cr(e),e.mode=Gt,n===Pt){l>>>=2,c-=2;break t}break;case 2:e.mode=Sn;break;case 3:t.msg="invalid block type",e.mode=R}l>>>=2,c-=2;break;case An:for(l>>>=c&7,c-=c&7;c<32;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if((l&65535)!==(l>>>16^65535)){t.msg="invalid stored block lengths",e.mode=R;break}if(e.length=l&65535,l=0,c=0,e.mode=he,n===Pt)break t;case he:e.mode=Tn;case Tn:if(f=e.length,f){if(f>o&&(f=o),f>h&&(f=h),f===0)break t;a.set(i.subarray(r,r+f),s),o-=f,r+=f,h-=f,s+=f,e.length-=f;break}e.mode=Y;break;case Sn:for(;c<14;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if(e.nlen=(l&31)+257,l>>>=5,c-=5,e.ndist=(l&31)+1,l>>>=5,c-=5,e.ncode=(l&15)+4,l>>>=4,c-=4,e.nlen>286||e.ndist>30){t.msg="too many length or distance symbols",e.mode=R;break}e.have=0,e.mode=zn;case zn:for(;e.have<e.ncode;){for(;c<3;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}e.lens[et[e.have++]]=l&7,l>>>=3,c-=3}for(;e.have<19;)e.lens[et[e.have++]]=0;if(e.lencode=e.lendyn,e.lenbits=7,w={bits:e.lenbits},A=At(xr,e.lens,0,19,e.lencode,0,e.work,w),e.lenbits=w.bits,A){t.msg="invalid code lengths set",e.mode=R;break}e.have=0,e.mode=In;case In:for(;e.have<e.nlen+e.ndist;){for(;m=e.lencode[l&(1<<e.lenbits)-1],b=m>>>24,T=m>>>16&255,k=m&65535,!(b<=c);){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if(k<16)l>>>=b,c-=b,e.lens[e.have++]=k;else{if(k===16){for(v=b+2;c<v;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if(l>>>=b,c-=b,e.have===0){t.msg="invalid bit length repeat",e.mode=R;break}d=e.lens[e.have-1],f=3+(l&3),l>>>=2,c-=2}else if(k===17){for(v=b+3;c<v;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}l>>>=b,c-=b,d=0,f=3+(l&7),l>>>=3,c-=3}else{for(v=b+7;c<v;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}l>>>=b,c-=b,d=0,f=11+(l&127),l>>>=7,c-=7}if(e.have+f>e.nlen+e.ndist){t.msg="invalid bit length repeat",e.mode=R;break}for(;f--;)e.lens[e.have++]=d}}if(e.mode===R)break;if(e.lens[256]===0){t.msg="invalid code -- missing end-of-block",e.mode=R;break}if(e.lenbits=9,w={bits:e.lenbits},A=At(fi,e.lens,0,e.nlen,e.lencode,0,e.work,w),e.lenbits=w.bits,A){t.msg="invalid literal/lengths set",e.mode=R;break}if(e.distbits=6,e.distcode=e.distdyn,w={bits:e.distbits},A=At(hi,e.lens,e.nlen,e.ndist,e.distcode,0,e.work,w),e.distbits=w.bits,A){t.msg="invalid distances set",e.mode=R;break}if(e.mode=Gt,n===Pt)break t;case Gt:e.mode=Kt;case Kt:if(o>=6&&h>=258){t.next_out=s,t.avail_out=h,t.next_in=r,t.avail_in=o,e.hold=l,e.bits=c,dr(t,u),s=t.next_out,a=t.output,h=t.avail_out,r=t.next_in,i=t.input,o=t.avail_in,l=e.hold,c=e.bits,e.mode===Y&&(e.back=-1);break}for(e.back=0;m=e.lencode[l&(1<<e.lenbits)-1],b=m>>>24,T=m>>>16&255,k=m&65535,!(b<=c);){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if(T&&(T&240)===0){for(_=b,y=T,S=k;m=e.lencode[S+((l&(1<<_+y)-1)>>_)],b=m>>>24,T=m>>>16&255,k=m&65535,!(_+b<=c);){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}l>>>=_,c-=_,e.back+=_}if(l>>>=b,c-=b,e.back+=b,e.length=k,T===0){e.mode=Ln;break}if(T&32){e.back=-1,e.mode=Y;break}if(T&64){t.msg="invalid literal/length code",e.mode=R;break}e.extra=T&15,e.mode=Rn;case Rn:if(e.extra){for(v=e.extra;c<v;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}e.length+=l&(1<<e.extra)-1,l>>>=e.extra,c-=e.extra,e.back+=e.extra}e.was=e.length,e.mode=Cn;case Cn:for(;m=e.distcode[l&(1<<e.distbits)-1],b=m>>>24,T=m>>>16&255,k=m&65535,!(b<=c);){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if((T&240)===0){for(_=b,y=T,S=k;m=e.distcode[S+((l&(1<<_+y)-1)>>_)],b=m>>>24,T=m>>>16&255,k=m&65535,!(_+b<=c);){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}l>>>=_,c-=_,e.back+=_}if(l>>>=b,c-=b,e.back+=b,T&64){t.msg="invalid distance code",e.mode=R;break}e.offset=k,e.extra=T&15,e.mode=Dn;case Dn:if(e.extra){for(v=e.extra;c<v;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}e.offset+=l&(1<<e.extra)-1,l>>>=e.extra,c-=e.extra,e.back+=e.extra}if(e.offset>e.dmax){t.msg="invalid distance too far back",e.mode=R;break}e.mode=Nn;case Nn:if(h===0)break t;if(f=u-h,e.offset>f){if(f=e.offset-f,f>e.whave&&e.sane){t.msg="invalid distance too far back",e.mode=R;break}f>e.wnext?(f-=e.wnext,g=e.wsize-f):g=e.wnext-f,f>e.length&&(f=e.length),I=e.window}else I=a,g=s-e.offset,f=e.length;f>h&&(f=h),h-=f,e.length-=f;do a[s++]=I[g++];while(--f);e.length===0&&(e.mode=Kt);break;case Ln:if(h===0)break t;a[s++]=e.length,h--,e.mode=Kt;break;case _e:if(e.wrap){for(;c<32;){if(o===0)break t;o--,l|=i[r++]<<c,c+=8}if(u-=h,t.total_out+=u,e.total+=u,e.wrap&4&&u&&(t.adler=e.check=e.flags?C(e.check,a,u,s-u):Rt(e.check,a,u,s-u)),u=h,e.wrap&4&&(e.flags?l:Un(l))!==e.check){t.msg="incorrect data check",e.mode=R;break}l=0,c=0}e.mode=On;case On:if(e.wrap&&e.flags){for(;c<32;){if(o===0)break t;o--,l+=i[r++]<<c,c+=8}if(e.wrap&4&&l!==(e.total&4294967295)){t.msg="incorrect length check",e.mode=R;break}l=0,c=0}e.mode=Zn;case Zn:A=yr;break t;case R:A=_i;break t;case di:return ui;case gi:default:return $}return t.next_out=s,t.avail_out=h,t.next_in=r,t.avail_in=o,e.hold=l,e.bits=c,(e.wsize||u!==t.avail_out&&e.mode<R&&(e.mode<_e||n!==dn))&&xi(t,t.output,t.next_out,u-t.avail_out),p-=t.avail_in,u-=t.avail_out,t.total_in+=p,t.total_out+=u,e.total+=u,e.wrap&4&&u&&(t.adler=e.check=e.flags?C(e.check,a,u,t.next_out-u):Rt(e.check,a,u,t.next_out-u)),t.data_type=e.bits+(e.last?64:0)+(e.mode===Y?128:0)+(e.mode===Gt||e.mode===he?256:0),(p===0&&u===0||n===dn)&&A===st&&(A=Er),A},Nr=t=>{if(ct(t))return $;let n=t.state;return n.window&&(n.window=null),t.state=null,st},Lr=(t,n)=>{if(ct(t))return $;const e=t.state;return(e.wrap&2)===0?$:(e.head=n,n.done=!1,st)},Or=(t,n)=>{const e=n.length;let i,a,r;return ct(t)||(i=t.state,i.wrap!==0&&i.mode!==Wt)?$:i.mode===Wt&&(a=1,a=Rt(a,n,e,0),a!==i.check)?_i:(r=xi(t,n,e,e),r?(i.mode=di,ui):(i.havedict=1,st))};var Zr=bi,Ur=pi,Br=wi,$r=Rr,Fr=vi,Mr=Dr,Hr=Nr,Pr=Lr,Gr=Or,Kr="pako inflate (from Nodeca project)",j={inflateReset:Zr,inflateReset2:Ur,inflateResetKeep:Br,inflateInit:$r,inflateInit2:Fr,inflate:Mr,inflateEnd:Hr,inflateGetHeader:Pr,inflateSetDictionary:Gr,inflateInfo:Kr};function Vr(){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 Yr=Vr;const ki=Object.prototype.toString,{Z_NO_FLUSH:Xr,Z_FINISH:jr,Z_OK:Nt,Z_STREAM_END:ge,Z_NEED_DICT:we,Z_STREAM_ERROR:Wr,Z_DATA_ERROR:$n,Z_MEM_ERROR:qr}=Ot;function Bt(t){this.options=ee.assign({chunkSize:1024*64,windowBits:15,to:""},t||{});const n=this.options;n.raw&&n.windowBits>=0&&n.windowBits<16&&(n.windowBits=-n.windowBits,n.windowBits===0&&(n.windowBits=-15)),n.windowBits>=0&&n.windowBits<16&&!(t&&t.windowBits)&&(n.windowBits+=32),n.windowBits>15&&n.windowBits<48&&(n.windowBits&15)===0&&(n.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new si,this.strm.avail_out=0;let e=j.inflateInit2(this.strm,n.windowBits);if(e!==Nt)throw new Error(lt[e]);if(this.header=new Yr,j.inflateGetHeader(this.strm,this.header),n.dictionary&&(typeof n.dictionary=="string"?n.dictionary=Dt.string2buf(n.dictionary):ki.call(n.dictionary)==="[object ArrayBuffer]"&&(n.dictionary=new Uint8Array(n.dictionary)),n.raw&&(e=j.inflateSetDictionary(this.strm,n.dictionary),e!==Nt)))throw new Error(lt[e])}Bt.prototype.push=function(t,n){const e=this.strm,i=this.options.chunkSize,a=this.options.dictionary;let r,s,o;if(this.ended)return!1;for(n===~~n?s=n:s=n===!0?jr:Xr,ki.call(t)==="[object ArrayBuffer]"?e.input=new Uint8Array(t):e.input=t,e.next_in=0,e.avail_in=e.input.length;;){for(e.avail_out===0&&(e.output=new Uint8Array(i),e.next_out=0,e.avail_out=i),r=j.inflate(e,s),r===we&&a&&(r=j.inflateSetDictionary(e,a),r===Nt?r=j.inflate(e,s):r===$n&&(r=we));e.avail_in>0&&r===ge&&e.state.wrap>0&&t[e.next_in]!==0;)j.inflateReset(e),r=j.inflate(e,s);switch(r){case Wr:case $n:case we:case qr:return this.onEnd(r),this.ended=!0,!1}if(o=e.avail_out,e.next_out&&(e.avail_out===0||r===ge))if(this.options.to==="string"){let h=Dt.utf8border(e.output,e.next_out),l=e.next_out-h,c=Dt.buf2string(e.output,h);e.next_out=l,e.avail_out=i-l,l&&e.output.set(e.output.subarray(h,h+l),0),this.onData(c)}else this.onData(e.output.length===e.next_out?e.output:e.output.subarray(0,e.next_out));if(!(r===Nt&&o===0)){if(r===ge)return r=j.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,!0;if(e.avail_in===0)break}}return!0};Bt.prototype.onData=function(t){this.chunks.push(t)};Bt.prototype.onEnd=function(t){t===Nt&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=ee.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function We(t,n){const e=new Bt(n);if(e.push(t),e.err)throw e.msg||lt[e.err];return e.result}function Jr(t,n){return n=n||{},n.raw=!0,We(t,n)}var Qr=Bt,tl=We,el=Jr,nl=We,il={Inflate:Qr,inflate:tl,inflateRaw:el,ungzip:nl};const{Deflate:al,deflate:rl,deflateRaw:ll,gzip:ol}=_r,{Inflate:sl,inflate:cl,inflateRaw:fl,ungzip:hl}=il;var _l=al,ul=rl,dl=ll,gl=ol,wl=sl,bl=cl,pl=fl,vl=hl,xl=Ot,yi={Deflate:_l,deflate:ul,deflateRaw:dl,gzip:gl,Inflate:wl,inflate:bl,inflateRaw:pl,ungzip:vl,constants:xl};class mi extends Error{constructor(n){super(n),this.name="NbtException"}}function Te(t){const n=t.getType();switch(n){case Se:return 1;case ze:return 2;case _t:return 4;case Ie:return 8;case Re:return 4;case Qt:return 8;case Ce:return 4+t.values.length;case De:{const e=t;return 2+new TextEncoder().encode(e.value).length}case Ne:{const e=t;let i=5;for(const a of e)i+=Te(a);return i}case M:{const e=t;let i=0;const a=new TextEncoder;for(const r of e.keySet()){const s=e.get(r);i+=1;const o=a.encode(r);i+=2+o.length,i+=Te(s)}return i+=1,i}case Le:return 4+t.values.length*4;case Oe:return 4+t.values.length*8;default:throw new mi(`Unknown tag type: ${n}`)}}function kl(t){const n=new DataView(t.buffer,t.byteOffset,t.byteLength),e={value:0},i=n.getInt8(e.value);if(e.value+=1,i!==M)throw new mi("File isn't in NBT format");const a=n.getUint16(e.value,!1);return e.value+=2+a,F.readContents(n,e)}function yl(t){const e=3+Te(t),i=new ArrayBuffer(e),a=new DataView(i),r={value:0};return a.setInt8(r.value,M),r.value+=1,a.setUint16(r.value,0,!1),r.value+=2,t.writeContents(a,r),new Uint8Array(i)}function ml(t){const n=yi.inflate(t);return kl(n)}function El(t){const n=yl(t);return yi.gzip(n)}function Al(t){const n=new F;if(t.includes("[")){const e=t.substring(0,t.indexOf("["));n.put("Name",new rt(e));const i=t.substring(t.indexOf("[")+1,t.indexOf("]")),a=new F;for(const r of i.split(",")){const[s,o]=r.split("=");a.put(s,new rt(o))}n.put("Properties",a)}else n.put("Name",new rt(t));return n}function Tl(t){const n=[];if(n.push(t.getString("Name")),t.contains("Properties",M)){const e=t.getCompound("Properties");n.push("[");const i=Array.from(e.keySet());for(let a=0;a<i.length;a++){const r=i[a];n.push(r),n.push("="),n.push(e.getString(r)),a<i.length-1&&n.push(",")}n.push("]")}return n.join("")}class Sl extends Error{constructor(n){super(n),this.name="ConversionException"}}class qt{bits=[];set(n,e=!0){this.bits[n]=e}get(n){return this.bits[n]||!1}toLongArray(){const n=[],e=Math.ceil(this.bits.length/64);for(let i=0;i<e;i++){let a=BigInt(0);for(let r=0;r<64;r++){const s=i*64+r;this.bits[s]&&(a|=BigInt(1)<<BigInt(r))}n.push(a)}return n}static fromLongArray(n,e){const i=new qt;for(let a=0;a<n.length;a++){const r=n[a];for(let s=0;s<64&&a*64+s<e;s++)(r&BigInt(1)<<BigInt(s))!==BigInt(0)&&i.set(a*64+s,!0)}return i}}class Jt{bits;bitsPerValue;numBits;constructor(n,e,i){this.bits=n,this.bitsPerValue=e,this.numBits=i}static fromPaletteSize(n){const e=Math.max(2,32-Math.clz32(n-1));return new Jt(new qt,e,0)}static fromLongArray(n,e,i){const a=Math.max(2,32-Math.clz32(i-1)),s=e[0]*e[1]*e[2]*a,o=qt.fromLongArray(n,s);return new Jt(o,a,s)}addBlockState(n){for(let e=0;e<this.bitsPerValue;e++)(n&1<<e)!==0?this.bits.set(this.numBits+e,!0):this.bits.set(this.numBits+e,!1);this.numBits+=this.bitsPerValue}getBlockStates(){const n=Math.floor(this.numBits/this.bitsPerValue),e=[];for(let i=0;i<n;i++){let a=0;for(let r=0;r<this.bitsPerValue;r++)this.bits.get(i*this.bitsPerValue+r)&&(a|=1<<r);e.push(a)}return e}toLongArray(){const n=this.bits.toLongArray();return new BigInt64Array(n.map(e=>BigInt.asIntN(64,e)))}}function zl(t,n){const e=ml(t),i=e.getCompound("Regions"),a=Array.from(i.keySet());if(a.length>1)throw new Sl("不支持多区域 .litematic 文件");const r=i.getCompound(a[0]),s=r.getList("BlockStatePalette"),o=r.getCompound("Size"),h=[Math.abs(o.getInt("x")),Math.abs(o.getInt("y")),Math.abs(o.getInt("z"))],l=r.getCompound("Position"),c=l.getInt("x"),p=l.getInt("y"),u=l.getInt("z"),f=[];for(let _=0;_<s.size();_++)f.push(Tl(s.get(_)));const g=e.getInt("MinecraftDataVersion"),I=new Ai(n,g,...h),m=r.getLongArray("BlockStates"),b=Il(m,h,f),T=b.some(_=>_===0);let k=0;for(let _=0;_<h[1];_++)for(let y=0;y<h[2];y++)for(let S=0;S<h[0];S++){const d=T?b[k++]:b[k++]-1;d>=0&&d<f.length&&I.setBlockAt(S,_,y,f[d])}if(r.contains("TileEntities",M)){const _=r.getList("TileEntities");for(const y of _){const S=y,d=S.getInt("x"),A=S.getInt("y"),x=S.getInt("z"),w=new F;for(const v of S.keySet())v!=="x"&&v!=="y"&&v!=="z"&&w.put(v,S.get(v));I.addBlockEntity(d,A,x,w)}}if(r.contains("Entities",M)){const _=r.getList("Entities");for(const y of _){const S=y,d=S.getList("Pos"),A=[];for(let x=0;x<3;x++)A.push(d.get(x).value);I.addEntity(S.getString("id"),A[0]+c,A[1]+p,A[2]+u,S)}}return I.build()}function Il(t,n,e){return Jt.fromLongArray(t,n,e.length).getBlockStates()}function Rl(t){const n=t.getSize(),e=new F,i=new P(_t);for(const o of n)i.add(new U(o));e.put("size",i);const a=new P(M);for(const o of t.getPalette())a.add(Al(o));e.put("palette",a);const r=new P(M);for(let o=0;o<n[0];o++)for(let h=0;h<n[1];h++)for(let l=0;l<n[2];l++){const c=t.getPaletteBlock(o,h,l);if(c===-1)continue;const p=new P(_t);p.add(new U(o)),p.add(new U(h)),p.add(new U(l));const u=new F;u.put("pos",p),u.put("state",new U(c)),t.hasBlockEntityAt(o,h,l)&&u.put("nbt",t.getBlockEntityAt(o,h,l)),r.add(u)}e.put("blocks",r);const s=new P(M);for(const o of t.getEntities()){const h=new F,l=new P(Qt);l.add(new ut(o.x)),l.add(new ut(o.y)),l.add(new ut(o.z)),h.put("pos",l);const c=new P(_t);c.add(new U(Math.floor(o.x))),c.add(new U(Math.floor(o.y))),c.add(new U(Math.floor(o.z))),h.put("blockPos",c);const p=new F;for(const u of o.nbt.keySet())p.put(u,o.nbt.get(u));p.put("id",new rt(o.id)),h.put("nbt",p),s.add(h)}return e.put("entities",s),e.put("DataVersion",new U(t.getDataVersion())),El(e)}async function Cl(t){try{const n=await t.arrayBuffer(),e=new Uint8Array(n),i=zl(e,t.name),a=i.getSize(),r=i.countNonEmptyBlocks(),s=i.getPalette().length,o=Rl(i),h=t.name.replace(/\.litematic$/i,".nbt");return{success:!0,data:o,fileName:h,info:{size:a,blockCount:r,paletteSize:s}}}catch(n){return{success:!1,error:n instanceof Error?n.message:"Unknown error occurred"}}}function Dl(t,n){const e=t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength),i=new Blob([e],{type:"application/octet-stream"}),a=URL.createObjectURL(i),r=document.createElement("a");r.href=a,r.download=n,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(a)}const Nl={async convert(t){return await Cl(t)},async convertBatch(t,n){const e=[],i=t.length;for(let a=0;a<i;a++){const r=await this.convert(t[a]);e.push(r),n&&n(a+1,i,r)}return e},download(t,n){Dl(t,n)},version:"1.0.0"};window.LitematicConverter=Nl;console.log("LitematicConverter API 已加载,版本:",window.LitematicConverter.version);