desi76-uis 0.1.12 → 0.1.13
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/dist/public/_app/immutable/assets/0.Be5pTVV_.css +1 -0
- package/dist/public/_app/immutable/assets/3.CYDkf_cO.css +1 -0
- package/dist/public/_app/immutable/chunks/B_5Gs9FE.js +35 -0
- package/dist/public/_app/immutable/chunks/Bh-EME3W.js +3 -0
- package/dist/public/_app/immutable/chunks/C6y_gF9q.js +212 -0
- package/dist/public/_app/immutable/chunks/DEDqjojZ.js +1 -0
- package/dist/public/_app/immutable/chunks/DirByyDV.js +1 -0
- package/dist/public/_app/immutable/chunks/m2-YPFpS.js +1 -0
- package/dist/public/_app/immutable/entry/app.PvdCILYN.js +2 -0
- package/dist/public/_app/immutable/entry/start.Z0czStGr.js +1 -0
- package/dist/public/_app/immutable/nodes/0.DgOcoXNK.js +2 -0
- package/dist/public/_app/immutable/nodes/1.D9lZatxq.js +1 -0
- package/dist/public/_app/immutable/nodes/2.BZQsuoKh.js +1 -0
- package/dist/public/_app/immutable/nodes/3.BsjGy9X1.js +5 -0
- package/dist/public/_app/version.json +1 -1
- package/dist/public/desi76/abri.html +18 -22
- package/dist/public/desi76/catamaran.html +18 -22
- package/dist/public/desi76/cuisine.html +57 -0
- package/dist/public/desi76/scara.html +52 -0
- package/dist/public/desi76/stairs.html +18 -22
- package/dist/public/desi76/voila.html +18 -22
- package/dist/public/index.html +15 -19
- package/dist/public/pgdsvg/cuisine_door.svg +7 -0
- package/dist/public/pgdsvg/cuisine_elements.svg +12 -0
- package/dist/public/pgdsvg/cuisine_roof.svg +7 -0
- package/dist/public/pgdsvg/cuisine_top.svg +11 -0
- package/dist/public/pgdsvg/scara_ends.svg +5 -0
- package/dist/public/pgdsvg/scara_side.svg +1 -0
- package/dist/public/pgdsvg/scara_top.svg +1 -0
- package/dist/public/pgdsvg/src_cuisine.svg +34 -0
- package/dist/public/pgdsvg/src_scara.svg +5 -0
- package/package.json +11 -11
- package/dist/public/_app/immutable/assets/0.115ohllt.css +0 -1
- package/dist/public/_app/immutable/assets/3.7hFGyRL8.css +0 -1
- package/dist/public/_app/immutable/chunks/BPOVJtEd.js +0 -1
- package/dist/public/_app/immutable/chunks/B_q4GCYp.js +0 -2
- package/dist/public/_app/immutable/chunks/Bl0GLBpI.js +0 -23
- package/dist/public/_app/immutable/chunks/CnZFIe9h.js +0 -1
- package/dist/public/_app/immutable/chunks/CokyYHyi.js +0 -1
- package/dist/public/_app/immutable/chunks/CyescMlY.js +0 -1
- package/dist/public/_app/immutable/chunks/DZFKEqGz.js +0 -1
- package/dist/public/_app/immutable/chunks/D_qI4_Ge.js +0 -212
- package/dist/public/_app/immutable/chunks/DsnmJJEf.js +0 -1
- package/dist/public/_app/immutable/chunks/IsdS-L-O.js +0 -1
- package/dist/public/_app/immutable/chunks/tvr90obu.js +0 -1
- package/dist/public/_app/immutable/entry/app.SMe8r2JM.js +0 -2
- package/dist/public/_app/immutable/entry/start.C8C0Croh.js +0 -1
- package/dist/public/_app/immutable/nodes/0.CshljDyi.js +0 -1
- package/dist/public/_app/immutable/nodes/1.B4GACO52.js +0 -1
- package/dist/public/_app/immutable/nodes/2.BvTvTalG.js +0 -1
- package/dist/public/_app/immutable/nodes/3.CPaYuuTn.js +0 -10
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import{lt as e,st as t}from"./Bh-EME3W.js";var n=4294967295,r=65535,i=67324752,a=134695760,o=a,s=33639248,c=101010256,l=101075792,u=117853008,d=98,f=39169,p=21589,m=28789,h=25461,g=6534,_=30837,v=30805,y=2048,b=61440,x=16384,S=2048,ee=1024,C=new Date(2107,11,31),w=new Date(1980,0,1),T=1/0,E=`undefined`,te=`function`,D=64,ne=2;try{typeof navigator<`u`&&navigator.hardwareConcurrency&&(ne=navigator.hardwareConcurrency)}catch{}var re=Object.assign({},{workerURI:`./core/web-worker-wasm.js`,wasmURI:`./core/streams/zlib-wasm/zlib-streams.wasm`,chunkSize:64*1024,maxWorkers:ne,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,CompressionStream:typeof CompressionStream<`u`&&CompressionStream,DecompressionStream:typeof DecompressionStream<`u`&&DecompressionStream});function ie(){return re}function ae(e){return Math.max(e.chunkSize,D)}function O(e){let{baseURI:t,chunkSize:n,maxWorkers:r,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,CompressionStream:s,DecompressionStream:c,CompressionStreamZlib:l,DecompressionStreamZlib:u,workerURI:d,wasmURI:f}=e;k(`baseURI`,t),k(`wasmURI`,f),k(`workerURI`,d),k(`chunkSize`,n),k(`maxWorkers`,r),k(`terminateWorkerTimeout`,i),k(`useCompressionStream`,a),k(`useWebWorkers`,o),k(`CompressionStream`,s),k(`DecompressionStream`,c),k(`CompressionStreamZlib`,l),k(`DecompressionStreamZlib`,u)}function k(e,t){t!==void 0&&(re[e]=t)}function oe(e){e({workerURI:e=>{let t=`text/javascript`;if(e){let e=new Blob([`(t=>{"function"==typeof define&&define.amd?define(t):t()})(function(){"use strict";const{Array:t,Object:e,Number:n,Math:s,Error:r,Uint8Array:o,Uint16Array:i,Uint32Array:c,Int32Array:a,Map:h,DataView:f,Promise:l,TextEncoder:u,crypto:w,postMessage:p,TransformStream:d,ReadableStream:y,WritableStream:m,CompressionStream:g,DecompressionStream:S}=self,b=void 0,v="undefined",k="function",z=[];for(let t=0;256>t;t++){let e=t;for(let t=0;8>t;t++)1&e?e=e>>>1^3988292384:e>>>=1;z[t]=e}class C{constructor(t){this.t=t||-1}append(t){let e=0|this.t;for(let n=0,s=0|t.length;s>n;n++)e=e>>>8^z[255&(e^t[n])];this.t=e}get(){return~this.t}}class A extends d{constructor(){let t;const e=new C;super({transform(t,n){e.append(t),n.enqueue(t)},flush(){const n=new o(4);new f(n.buffer).setUint32(0,e.get()),t.value=n}}),t=this}}const x={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const n=t[t.length-1],s=x.o(n);return 32===s?t.concat(e):x.i(e,s,0|n,t.slice(0,t.length-1))},h(t){const e=t.length;if(0===e)return 0;const n=t[e-1];return 32*(e-1)+x.o(n)},l(t,e){if(32*t.length<e)return t;const n=(t=t.slice(0,s.ceil(e/32))).length;return e&=31,n>0&&e&&(t[n-1]=x.u(e,t[n-1]&2147483648>>e-1,1)),t},u:(t,e,n)=>32===t?e:(n?0|e:e<<32-t)+1099511627776*t,o:t=>s.round(t/1099511627776)||32,i(t,e,n,s){for(void 0===s&&(s=[]);e>=32;e-=32)s.push(n),n=0;if(0===e)return s.concat(t);for(let r=0;r<t.length;r++)s.push(n|t[r]>>>e),n=t[r]<<32-e;const r=t.length?t[t.length-1]:0,o=x.o(r);return s.push(x.u(e+o&31,e+o>32?n:s.pop(),1)),s}},I={bytes:{p(t){const e=x.h(t)/8,n=new o(e);let s;for(let r=0;e>r;r++)3&r||(s=t[r/4]),n[r]=s>>>24,s<<=8;return n},m(t){const e=[];let n,s=0;for(n=0;n<t.length;n++)s=s<<8|t[n],3&~n||(e.push(s),s=0);return 3&n&&e.push(x.u(8*(3&n),s)),e}}},R=class{constructor(t){const e=this;e.blockSize=512,e.S=[1732584193,4023233417,2562383102,271733878,3285377520],e.v=[1518500249,1859775393,2400959708,3395469782],t?(e.k=t.k.slice(0),e.C=t.C.slice(0),e.A=t.A):e.reset()}reset(){const t=this;return t.k=t.S.slice(0),t.C=[],t.A=0,t}update(t){const e=this;"string"==typeof t&&(t=I.I.m(t));const n=e.C=x.concat(e.C,t),s=e.A,o=e.A=s+x.h(t);if(o>9007199254740991)throw new r("Cannot hash more than 2^53 - 1 bits");const i=new c(n);let a=0;for(let t=e.blockSize+s-(e.blockSize+s&e.blockSize-1);o>=t;t+=e.blockSize)e.R(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),e}P(){const t=this;let e=t.C;const n=t.k;e=x.concat(e,[x.u(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(s.floor(t.A/4294967296)),e.push(0|t.A);e.length;)t.R(e.splice(0,16));return t.reset(),n}U(t,e,n,s){return t>19?t>39?t>59?t>79?void 0:e^n^s:e&n|e&s|n&s:e^n^s:e&n|~e&s}V(t,e){return e<<t|e>>>32-t}R(e){const n=this,r=n.k,o=t(80);for(let t=0;16>t;t++)o[t]=e[t];let i=r[0],c=r[1],a=r[2],h=r[3],f=r[4];for(let t=0;79>=t;t++){16>t||(o[t]=n.V(1,o[t-3]^o[t-8]^o[t-14]^o[t-16]));const e=n.V(5,i)+n.U(t,c,a,h)+f+o[t]+n.v[s.floor(t/20)]|0;f=h,h=a,a=n.V(30,c),c=i,i=e}r[0]=r[0]+i|0,r[1]=r[1]+c|0,r[2]=r[2]+a|0,r[3]=r[3]+h|0,r[4]=r[4]+f|0}},P={getRandomValues(t){const e=new c(t.buffer),n=t=>{let e=987654321;const n=4294967295;return()=>(e=36969*(65535&e)+(e>>16)&n,(((e<<16)+(t=18e3*(65535&t)+(t>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let r,o=0;o<t.length;o+=4){const t=n(4294967296*(r||s.random()));r=987654071*t(),e[o/4]=4294967296*t()|0}return t}},U={importKey:t=>new U.M(I.bytes.m(t)),_(t,e,n,s){if(n=n||1e4,0>s||0>n)throw new r("invalid params to pbkdf2");const o=1+(s>>5)<<2;let i,c,a,h,l;const u=new ArrayBuffer(o),w=new f(u);let p=0;const d=x;for(e=I.bytes.m(e),l=1;(o||1)>p;l++){for(i=c=t.encrypt(d.concat(e,[l])),a=1;n>a;a++)for(c=t.encrypt(c),h=0;h<c.length;h++)i[h]^=c[h];for(a=0;(o||1)>p&&a<i.length;a++)w.setInt32(p,i[a]),p+=4}return u.slice(0,s/8)},M:class{constructor(t){const e=this,n=e.B=R,s=[[],[]];e.D=[new n,new n];const r=e.D[0].blockSize/32;t.length>r&&(t=(new n).update(t).P());for(let e=0;r>e;e++)s[0][e]=909522486^t[e],s[1][e]=1549556828^t[e];e.D[0].update(s[0]),e.D[1].update(s[1]),e.W=new n(e.D[0])}reset(){const t=this;t.W=new t.B(t.D[0]),t.K=!1}update(t){this.K=!0,this.W.update(t)}digest(){const t=this,e=t.W.P(),n=new t.B(t.D[1]).update(e).P();return t.reset(),n}encrypt(t){if(this.K)throw new r("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}}},V=typeof w!=v&&typeof w.getRandomValues==k,M="Invalid password",_="Invalid signature",B="zipjs-abort-check-password";function D(t){return V?w.getRandomValues(t):P.getRandomValues(t)}const W=16,K={name:"PBKDF2"},E=e.assign({hash:{name:"HMAC"}},K),L=e.assign({iterations:1e3,hash:{name:"SHA-1"}},K),O=["deriveBits"],T=[8,12,16],j=[16,24,32],H=10,Z=[0,0,0,0],F=typeof w!=v,N=F&&w.subtle,q=F&&typeof N!=v,G=I.bytes,J=class{constructor(t){const e=this;e.L=[[[],[],[],[],[]],[[],[],[],[],[]]],e.L[0][0][0]||e.O();const n=e.L[0][4],s=e.L[1],o=t.length;let i,c,a,h=1;if(4!==o&&6!==o&&8!==o)throw new r("invalid aes key size");for(e.v=[c=t.slice(0),a=[]],i=o;4*o+28>i;i++){let t=c[i-1];(i%o===0||8===o&&i%o===4)&&(t=n[t>>>24]<<24^n[t>>16&255]<<16^n[t>>8&255]<<8^n[255&t],i%o===0&&(t=t<<8^t>>>24^h<<24,h=h<<1^283*(h>>7))),c[i]=c[i-o]^t}for(let t=0;i;t++,i--){const e=c[3&t?i:i-4];a[t]=4>=i||4>t?e:s[0][n[e>>>24]]^s[1][n[e>>16&255]]^s[2][n[e>>8&255]]^s[3][n[255&e]]}}encrypt(t){return this.T(t,0)}decrypt(t){return this.T(t,1)}O(){const t=this.L[0],e=this.L[1],n=t[4],s=e[4],r=[],o=[];let i,c,a,h;for(let t=0;256>t;t++)o[(r[t]=t<<1^283*(t>>7))^t]=t;for(let f=i=0;!n[f];f^=c||1,i=o[i]||1){let o=i^i<<1^i<<2^i<<3^i<<4;o=o>>8^255&o^99,n[f]=o,s[o]=f,h=r[a=r[c=r[f]]];let l=16843009*h^65537*a^257*c^16843008*f,u=257*r[o]^16843008*o;for(let n=0;4>n;n++)t[n][f]=u=u<<24^u>>>8,e[n][o]=l=l<<24^l>>>8}for(let n=0;5>n;n++)t[n]=t[n].slice(0),e[n]=e[n].slice(0)}T(t,e){if(4!==t.length)throw new r("invalid aes block size");const n=this.v[e],s=n.length/4-2,o=[0,0,0,0],i=this.L[e],c=i[0],a=i[1],h=i[2],f=i[3],l=i[4];let u,w,p,d=t[0]^n[0],y=t[e?3:1]^n[1],m=t[2]^n[2],g=t[e?1:3]^n[3],S=4;for(let t=0;s>t;t++)u=c[d>>>24]^a[y>>16&255]^h[m>>8&255]^f[255&g]^n[S],w=c[y>>>24]^a[m>>16&255]^h[g>>8&255]^f[255&d]^n[S+1],p=c[m>>>24]^a[g>>16&255]^h[d>>8&255]^f[255&y]^n[S+2],g=c[g>>>24]^a[d>>16&255]^h[y>>8&255]^f[255&m]^n[S+3],S+=4,d=u,y=w,m=p;for(let t=0;4>t;t++)o[e?3&-t:t]=l[d>>>24]<<24^l[y>>16&255]<<16^l[m>>8&255]<<8^l[255&g]^n[S++],u=d,d=y,y=m,m=g,g=u;return o}},Q=class{constructor(t,e){this.j=t,this.H=e,this.Z=e}reset(){this.Z=this.H}update(t){return this.F(this.j,t,this.Z)}N(t){if(255&~(t>>24))t+=1<<24;else{let e=t>>16&255,n=t>>8&255,s=255&t;255===e?(e=0,255===n?(n=0,255===s?s=0:++s):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=s}return t}q(t){0===(t[0]=this.N(t[0]))&&(t[1]=this.N(t[1]))}F(t,e,n){let s;if(!(s=e.length))return[];const r=x.h(e);for(let r=0;s>r;r+=4){this.q(n);const s=t.encrypt(n);e[r]^=s[0],e[r+1]^=s[1],e[r+2]^=s[2],e[r+3]^=s[3]}return x.l(e,r)}},X=U.M;let Y=F&&q&&typeof N.importKey==k,$=F&&q&&typeof N.deriveBits==k;class tt extends d{constructor({password:t,rawPassword:n,signed:s,encryptionStrength:i,checkPasswordOnly:c}){super({start(){e.assign(this,{ready:new l(t=>this.G=t),password:rt(t,n),signed:s,J:i-1,pending:new o})},async transform(t,e){const n=this,{password:s,J:i,G:a,ready:h}=n;s?(await(async(t,e,n,s)=>{const o=await st(t,e,n,it(s,0,T[e])),i=it(s,T[e]);if(o[0]!=i[0]||o[1]!=i[1])throw new r(M)})(n,i,s,it(t,0,T[i]+2)),t=it(t,T[i]+2),c?e.error(new r(B)):a()):await h;const f=new o(t.length-H-(t.length-H)%W);e.enqueue(nt(n,t,f,0,H,!0))},async flush(t){const{signed:e,X:n,Y:s,pending:i,ready:c}=this;if(s&&n){await c;const a=it(i,0,i.length-H),h=it(i,i.length-H);let f=new o;if(a.length){const t=at(G,a);s.update(t);const e=n.update(t);f=ct(G,e)}if(e){const t=it(ct(G,s.digest()),0,H);for(let e=0;H>e;e++)if(t[e]!=h[e])throw new r(_)}t.enqueue(f)}}})}}class et extends d{constructor({password:t,rawPassword:n,encryptionStrength:s}){let r;super({start(){e.assign(this,{ready:new l(t=>this.G=t),password:rt(t,n),J:s-1,pending:new o})},async transform(t,e){const n=this,{password:s,J:r,G:i,ready:c}=n;let a=new o;s?(a=await(async(t,e,n)=>{const s=D(new o(T[e]));return ot(s,await st(t,e,n,s))})(n,r,s),i()):await c;const h=new o(a.length+t.length-t.length%W);h.set(a,0),e.enqueue(nt(n,t,h,a.length,0))},async flush(t){const{X:e,Y:n,pending:s,ready:i}=this;if(n&&e){await i;let c=new o;if(s.length){const t=e.update(at(G,s));n.update(t),c=ct(G,t)}r.signature=ct(G,n.digest()).slice(0,H),t.enqueue(ot(c,r.signature))}}}),r=this}}function nt(t,e,n,s,r,i){const{X:c,Y:a,pending:h}=t,f=e.length-r;let l;for(h.length&&(e=ot(h,e),n=((t,e)=>{if(e&&e>t.length){const n=t;(t=new o(e)).set(n,0)}return t})(n,f-f%W)),l=0;f-W>=l;l+=W){const t=at(G,it(e,l,l+W));i&&a.update(t);const r=c.update(t);i||a.update(r),n.set(ct(G,r),l+s)}return t.pending=it(e,l),n}async function st(n,s,r,i){n.password=null;const c=await(async(t,e,n,s,r)=>{if(!Y)return U.importKey(e);try{return await N.importKey("raw",e,n,!1,r)}catch{return Y=!1,U.importKey(e)}})(0,r,E,0,O),a=await(async(t,e,n)=>{if(!$)return U._(e,t.salt,L.iterations,n);try{return await N.deriveBits(t,e,n)}catch{return $=!1,U._(e,t.salt,L.iterations,n)}})(e.assign({salt:i},L),c,8*(2*j[s]+2)),h=new o(a),f=at(G,it(h,0,j[s])),l=at(G,it(h,j[s],2*j[s])),u=it(h,2*j[s]);return e.assign(n,{keys:{key:f,$:l,passwordVerification:u},X:new Q(new J(f),t.from(Z)),Y:new X(l)}),u}function rt(t,e){return e===b?(t=>{if(typeof u==v){const e=new o((t=unescape(encodeURIComponent(t))).length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}return(new u).encode(t)})(t):e}function ot(t,e){let n=t;return t.length+e.length&&(n=new o(t.length+e.length),n.set(t,0),n.set(e,t.length)),n}function it(t,e,n){return t.subarray(e,n)}function ct(t,e){return t.p(e)}function at(t,e){return t.m(e)}class ht extends d{constructor({password:t,passwordVerification:n,checkPasswordOnly:s}){super({start(){e.assign(this,{password:t,passwordVerification:n}),wt(this,t)},transform(t,e){const n=this;if(n.password){const e=lt(n,t.subarray(0,12));if(n.password=null,e.at(-1)!=n.passwordVerification)throw new r(M);t=t.subarray(12)}s?e.error(new r(B)):e.enqueue(lt(n,t))}})}}class ft extends d{constructor({password:t,passwordVerification:n}){super({start(){e.assign(this,{password:t,passwordVerification:n}),wt(this,t)},transform(t,e){const n=this;let s,r;if(n.password){n.password=null;const e=D(new o(12));e[11]=n.passwordVerification,s=new o(t.length+e.length),s.set(ut(n,e),0),r=12}else s=new o(t.length),r=0;s.set(ut(n,t),r),e.enqueue(s)}})}}function lt(t,e){const n=new o(e.length);for(let s=0;s<e.length;s++)n[s]=dt(t)^e[s],pt(t,n[s]);return n}function ut(t,e){const n=new o(e.length);for(let s=0;s<e.length;s++)n[s]=dt(t)^e[s],pt(t,e[s]);return n}function wt(t,n){const s=[305419896,591751049,878082192];e.assign(t,{keys:s,tt:new C(s[0]),et:new C(s[2])});for(let e=0;e<n.length;e++)pt(t,n.charCodeAt(e))}function pt(t,e){let[n,r,o]=t.keys;t.tt.append([e]),n=~t.tt.get(),r=mt(s.imul(mt(r+yt(n)),134775813)+1),t.et.append([r>>>24]),o=~t.et.get(),t.keys=[n,r,o]}function dt(t){const e=2|t.keys[2];return yt(s.imul(e,1^e)>>>8)}function yt(t){return 255&t}function mt(t){return 4294967295&t}class gt extends d{constructor(t,{chunkSize:e,nt:n,CompressionStream:s}){super({});const{compressed:r,encrypted:o,useCompressionStream:i,zipCrypto:c,signed:a,level:h}=t,l=this;let u,w,p=super.readable;o&&!c||!a||(u=new A,p=kt(p,u)),r&&(p=vt(p,i,{level:h,chunkSize:e},s,n,s)),o&&(c?p=kt(p,new ft(t)):(w=new et(t),p=kt(p,w))),bt(l,p,()=>{let t;o&&!c&&(t=w.signature),o&&!c||!a||(t=new f(u.value.buffer).getUint32(0)),l.signature=t})}}class St extends d{constructor(t,{chunkSize:e,st:n,DecompressionStream:s}){super({});const{zipCrypto:o,encrypted:i,signed:c,signature:a,compressed:h,useCompressionStream:l,rt:u}=t;let w,p,d=super.readable;i&&(o?d=kt(d,new ht(t)):(p=new tt(t),d=kt(d,p))),h&&(d=vt(d,l,{chunkSize:e,rt:u},s,n,s)),i&&!o||!c||(w=new A,d=kt(d,w)),bt(this,d,()=>{if((!i||o)&&c){const t=new f(w.value.buffer);if(a!=t.getUint32(0,!1))throw new r(_)}})}}function bt(t,n,s){n=kt(n,new d({flush:s})),e.defineProperty(t,"readable",{get:()=>n})}function vt(t,e,n,s,r,o){const i=e&&s?s:r||o,c=n.rt?"deflate64-raw":"deflate-raw";try{t=kt(t,new i(c,n))}catch(s){if(!e)throw s;if(r)t=kt(t,new r(c,n));else{if(!o)throw s;t=kt(t,new o(c,n))}}return t}function kt(t,e){return t.pipeThrough(e)}const zt="data",Ct="close";class At extends d{constructor(t,n){super({});const s=this,{codecType:o}=t;let i;o.startsWith("deflate")?i=gt:o.startsWith("inflate")&&(i=St),s.outputSize=0;let c=0;const a=new i(t,n),h=super.readable,f=new d({transform(t,e){t&&t.length&&(c+=t.length,e.enqueue(t))},flush(){e.assign(s,{inputSize:c})}}),l=new d({transform(e,n){if(e&&e.length&&(n.enqueue(e),s.outputSize+=e.length,t.outputSize!==b&&s.outputSize>t.outputSize))throw new r("Invalid uncompressed size")},flush(){const{signature:t}=a;e.assign(s,{signature:t,inputSize:c})}});e.defineProperty(s,"readable",{get:()=>h.pipeThrough(f).pipeThrough(a).pipeThrough(l)})}}class xt extends d{constructor(t){let e;super({transform:function n(s,r){if(e){const t=new o(e.length+s.length);t.set(e),t.set(s,e.length),s=t,e=null}s.length>t?(r.enqueue(s.slice(0,t)),n(s.slice(t),r)):e=s},flush(t){e&&e.length&&t.enqueue(e)}})}}const It=new h,Rt=new h;let Pt,Ut,Vt,Mt,_t,Bt=0;async function Dt(t){try{const{options:e,config:s}=t;if(!e.useCompressionStream)try{await self.initModule(t.config)}catch{e.useCompressionStream=!0}s.CompressionStream=self.CompressionStream,s.DecompressionStream=self.DecompressionStream;const r={highWaterMark:1},o=t.readable||new y({async pull(t){const e=new l(t=>It.set(Bt,t));Wt({type:"pull",messageId:Bt}),Bt=(Bt+1)%n.MAX_SAFE_INTEGER;const{value:s,done:r}=await e;t.enqueue(s),r&&t.close()}},r),i=t.writable||new m({async write(t){let e;const s=new l(t=>e=t);Rt.set(Bt,e),Wt({type:zt,value:t,messageId:Bt}),Bt=(Bt+1)%n.MAX_SAFE_INTEGER,await s}},r),c=new At(e,s);Pt=new AbortController;const{signal:a}=Pt;await o.pipeThrough(c).pipeThrough(new xt(s.chunkSize)).pipeTo(i,{signal:a,preventClose:!0,preventAbort:!0}),await i.getWriter().close();const{signature:h,inputSize:f,outputSize:u}=c;Wt({type:Ct,result:{signature:h,inputSize:f,outputSize:u}})}catch(t){t.outputSize=0,Kt(t)}}function Wt(t){let{value:e}=t;if(e)if(e.length)try{e=new o(e),t.value=e.buffer,p(t,[t.value])}catch{p(t)}else p(t);else p(t)}function Kt(t=new r("Unknown error")){const{message:e,stack:n,code:s,name:o,outputSize:i}=t;p({error:{message:e,stack:n,code:s,name:o,outputSize:i}})}function Et(t,e,n={}){const i="number"==typeof n.level?n.level:-1,c="number"==typeof n.ot?n.ot:65536,a="number"==typeof n.it?n.it:65536;return new d({start(){let n;if(this.ct=Vt(c),this.in=Vt(a),this.it=a,this.ht=new o(c),t?(this.ft=Ut.deflate_process,this.lt=Ut.deflate_last_consumed,this.ut=Ut.deflate_end,this.wt=Ut.deflate_new(),n="gzip"===e?Ut.deflate_init_gzip(this.wt,i):"deflate-raw"===e?Ut.deflate_init_raw(this.wt,i):Ut.deflate_init(this.wt,i)):"deflate64-raw"===e?(this.ft=Ut.inflate9_process,this.lt=Ut.inflate9_last_consumed,this.ut=Ut.inflate9_end,this.wt=Ut.inflate9_new(),n=Ut.inflate9_init_raw(this.wt)):(this.ft=Ut.inflate_process,this.lt=Ut.inflate_last_consumed,this.ut=Ut.inflate_end,this.wt=Ut.inflate_new(),n="deflate-raw"===e?Ut.inflate_init_raw(this.wt):"gzip"===e?Ut.inflate_init_gzip(this.wt):Ut.inflate_init(this.wt)),0!==n)throw new r("init failed:"+n)},transform(e,n){try{const i=e,a=new o(_t.buffer),h=this.ft,f=this.lt,l=this.ct,u=this.ht;let w=0;for(;w<i.length;){const e=s.min(i.length-w,32768);this.in&&this.it>=e||(this.in&&Mt&&Mt(this.in),this.in=Vt(e),this.it=e),a.set(i.subarray(w,w+e),this.in);const o=h(this.wt,this.in,e,l,c,0),p=16777215&o;if(p&&(u.set(a.subarray(l,l+p),0),n.enqueue(u.slice(0,p))),!t){const t=o>>24&255,e=128&t?t-256:t;if(0>e)throw new r("process error:"+e)}const d=f(this.wt);if(0===d)break;w+=d}}catch(t){this.ut&&this.wt&&this.ut(this.wt),this.in&&Mt&&Mt(this.in),this.ct&&Mt&&Mt(this.ct),n.error(t)}},flush(e){try{const n=new o(_t.buffer),s=this.ft,i=this.ct,a=this.ht;for(;;){const o=s(this.wt,0,0,i,c,4),h=16777215&o,f=o>>24&255;if(!t){const t=128&f?f-256:f;if(0>t)throw new r("process error:"+t)}if(h&&(a.set(n.subarray(i,i+h),0),e.enqueue(a.slice(0,h))),1===f||0===h)break}}catch(t){e.error(t)}finally{if(this.ut&&this.wt){const t=this.ut(this.wt);0!==t&&e.error(new r("end error:"+t))}this.in&&Mt&&Mt(this.in),this.ct&&Mt&&Mt(this.ct)}}})}addEventListener("message",({data:t})=>{const{type:e,messageId:n,value:s,done:r}=t;try{if("start"==e&&Dt(t),e==zt){const t=It.get(n);It.delete(n),t({value:new o(s),done:r})}if("ack"==e){const t=Rt.get(n);Rt.delete(n),t()}e==Ct&&Pt.abort()}catch(t){Kt(t)}});class Lt{constructor(t="deflate",e){return Et(!0,t,e)}}class Ot{constructor(t="deflate",e){return Et(!1,t,e)}}let Tt=!1;self.initModule=async t=>{try{const e=await(async(t,{baseURI:e})=>{if(!Tt){let n,s;try{try{s=new URL(t,e)}catch{}const r=await fetch(s);n=await r.arrayBuffer()}catch(e){if(!t.startsWith("data:application/wasm;base64,"))throw e;n=(t=>{const e=t.split(",")[1],n=atob(e),s=n.length,r=new o(s);for(let t=0;s>t;++t)r[t]=n.charCodeAt(t);return r.buffer})(t)}(t=>{if(Ut=t,({malloc:Vt,free:Mt,memory:_t}=Ut),"function"!=typeof Vt||"function"!=typeof Mt||!_t)throw Ut=Vt=Mt=_t=null,new r("Invalid WASM module")})((await WebAssembly.instantiate(n)).instance.exports),Tt=!0}})(t.wasmURI,t);return t.nt=Lt,t.st=Ot,e}catch{}}});
|
|
2
|
+
`],{type:t});return URL.createObjectURL(e)}return`data:`+t+`,(t%3D%3E%7B%22function%22%3D%3Dtypeof%20define%26%26define.amd%3Fdefine(t)%3At()%7D)(function()%7B%22use%20strict%22%3Bconst%7BArray%3At%2CObject%3Ae%2CNumber%3An%2CMath%3As%2CError%3Ar%2CUint8Array%3Ao%2CUint16Array%3Ai%2CUint32Array%3Ac%2CInt32Array%3Aa%2CMap%3Ah%2CDataView%3Af%2CPromise%3Al%2CTextEncoder%3Au%2Ccrypto%3Aw%2CpostMessage%3Ap%2CTransformStream%3Ad%2CReadableStream%3Ay%2CWritableStream%3Am%2CCompressionStream%3Ag%2CDecompressionStream%3AS%7D%3Dself%2Cb%3Dvoid%200%2Cv%3D%22undefined%22%2Ck%3D%22function%22%2Cz%3D%5B%5D%3Bfor(let%20t%3D0%3B256%3Et%3Bt%2B%2B)%7Blet%20e%3Dt%3Bfor(let%20t%3D0%3B8%3Et%3Bt%2B%2B)1%26e%3Fe%3De%3E%3E%3E1%5E3988292384%3Ae%3E%3E%3E%3D1%3Bz%5Bt%5D%3De%7Dclass%20C%7Bconstructor(t)%7Bthis.t%3Dt%7C%7C-1%7Dappend(t)%7Blet%20e%3D0%7Cthis.t%3Bfor(let%20n%3D0%2Cs%3D0%7Ct.length%3Bs%3En%3Bn%2B%2B)e%3De%3E%3E%3E8%5Ez%5B255%26(e%5Et%5Bn%5D)%5D%3Bthis.t%3De%7Dget()%7Breturn~this.t%7D%7Dclass%20A%20extends%20d%7Bconstructor()%7Blet%20t%3Bconst%20e%3Dnew%20C%3Bsuper(%7Btransform(t%2Cn)%7Be.append(t)%2Cn.enqueue(t)%7D%2Cflush()%7Bconst%20n%3Dnew%20o(4)%3Bnew%20f(n.buffer).setUint32(0%2Ce.get())%2Ct.value%3Dn%7D%7D)%2Ct%3Dthis%7D%7Dconst%20x%3D%7Bconcat(t%2Ce)%7Bif(0%3D%3D%3Dt.length%7C%7C0%3D%3D%3De.length)return%20t.concat(e)%3Bconst%20n%3Dt%5Bt.length-1%5D%2Cs%3Dx.o(n)%3Breturn%2032%3D%3D%3Ds%3Ft.concat(e)%3Ax.i(e%2Cs%2C0%7Cn%2Ct.slice(0%2Ct.length-1))%7D%2Ch(t)%7Bconst%20e%3Dt.length%3Bif(0%3D%3D%3De)return%200%3Bconst%20n%3Dt%5Be-1%5D%3Breturn%2032*(e-1)%2Bx.o(n)%7D%2Cl(t%2Ce)%7Bif(32*t.length%3Ce)return%20t%3Bconst%20n%3D(t%3Dt.slice(0%2Cs.ceil(e%2F32))).length%3Breturn%20e%26%3D31%2Cn%3E0%26%26e%26%26(t%5Bn-1%5D%3Dx.u(e%2Ct%5Bn-1%5D%262147483648%3E%3Ee-1%2C1))%2Ct%7D%2Cu%3A(t%2Ce%2Cn)%3D%3E32%3D%3D%3Dt%3Fe%3A(n%3F0%7Ce%3Ae%3C%3C32-t)%2B1099511627776*t%2Co%3At%3D%3Es.round(t%2F1099511627776)%7C%7C32%2Ci(t%2Ce%2Cn%2Cs)%7Bfor(void%200%3D%3D%3Ds%26%26(s%3D%5B%5D)%3Be%3E%3D32%3Be-%3D32)s.push(n)%2Cn%3D0%3Bif(0%3D%3D%3De)return%20s.concat(t)%3Bfor(let%20r%3D0%3Br%3Ct.length%3Br%2B%2B)s.push(n%7Ct%5Br%5D%3E%3E%3Ee)%2Cn%3Dt%5Br%5D%3C%3C32-e%3Bconst%20r%3Dt.length%3Ft%5Bt.length-1%5D%3A0%2Co%3Dx.o(r)%3Breturn%20s.push(x.u(e%2Bo%2631%2Ce%2Bo%3E32%3Fn%3As.pop()%2C1))%2Cs%7D%7D%2CI%3D%7Bbytes%3A%7Bp(t)%7Bconst%20e%3Dx.h(t)%2F8%2Cn%3Dnew%20o(e)%3Blet%20s%3Bfor(let%20r%3D0%3Be%3Er%3Br%2B%2B)3%26r%7C%7C(s%3Dt%5Br%2F4%5D)%2Cn%5Br%5D%3Ds%3E%3E%3E24%2Cs%3C%3C%3D8%3Breturn%20n%7D%2Cm(t)%7Bconst%20e%3D%5B%5D%3Blet%20n%2Cs%3D0%3Bfor(n%3D0%3Bn%3Ct.length%3Bn%2B%2B)s%3Ds%3C%3C8%7Ct%5Bn%5D%2C3%26~n%7C%7C(e.push(s)%2Cs%3D0)%3Breturn%203%26n%26%26e.push(x.u(8*(3%26n)%2Cs))%2Ce%7D%7D%7D%2CR%3Dclass%7Bconstructor(t)%7Bconst%20e%3Dthis%3Be.blockSize%3D512%2Ce.S%3D%5B1732584193%2C4023233417%2C2562383102%2C271733878%2C3285377520%5D%2Ce.v%3D%5B1518500249%2C1859775393%2C2400959708%2C3395469782%5D%2Ct%3F(e.k%3Dt.k.slice(0)%2Ce.C%3Dt.C.slice(0)%2Ce.A%3Dt.A)%3Ae.reset()%7Dreset()%7Bconst%20t%3Dthis%3Breturn%20t.k%3Dt.S.slice(0)%2Ct.C%3D%5B%5D%2Ct.A%3D0%2Ct%7Dupdate(t)%7Bconst%20e%3Dthis%3B%22string%22%3D%3Dtypeof%20t%26%26(t%3DI.I.m(t))%3Bconst%20n%3De.C%3Dx.concat(e.C%2Ct)%2Cs%3De.A%2Co%3De.A%3Ds%2Bx.h(t)%3Bif(o%3E9007199254740991)throw%20new%20r(%22Cannot%20hash%20more%20than%202%5E53%20-%201%20bits%22)%3Bconst%20i%3Dnew%20c(n)%3Blet%20a%3D0%3Bfor(let%20t%3De.blockSize%2Bs-(e.blockSize%2Bs%26e.blockSize-1)%3Bo%3E%3Dt%3Bt%2B%3De.blockSize)e.R(i.subarray(16*a%2C16*(a%2B1)))%2Ca%2B%3D1%3Breturn%20n.splice(0%2C16*a)%2Ce%7DP()%7Bconst%20t%3Dthis%3Blet%20e%3Dt.C%3Bconst%20n%3Dt.k%3Be%3Dx.concat(e%2C%5Bx.u(1%2C1)%5D)%3Bfor(let%20t%3De.length%2B2%3B15%26t%3Bt%2B%2B)e.push(0)%3Bfor(e.push(s.floor(t.A%2F4294967296))%2Ce.push(0%7Ct.A)%3Be.length%3B)t.R(e.splice(0%2C16))%3Breturn%20t.reset()%2Cn%7DU(t%2Ce%2Cn%2Cs)%7Breturn%20t%3E19%3Ft%3E39%3Ft%3E59%3Ft%3E79%3Fvoid%200%3Ae%5En%5Es%3Ae%26n%7Ce%26s%7Cn%26s%3Ae%5En%5Es%3Ae%26n%7C~e%26s%7DV(t%2Ce)%7Breturn%20e%3C%3Ct%7Ce%3E%3E%3E32-t%7DR(e)%7Bconst%20n%3Dthis%2Cr%3Dn.k%2Co%3Dt(80)%3Bfor(let%20t%3D0%3B16%3Et%3Bt%2B%2B)o%5Bt%5D%3De%5Bt%5D%3Blet%20i%3Dr%5B0%5D%2Cc%3Dr%5B1%5D%2Ca%3Dr%5B2%5D%2Ch%3Dr%5B3%5D%2Cf%3Dr%5B4%5D%3Bfor(let%20t%3D0%3B79%3E%3Dt%3Bt%2B%2B)%7B16%3Et%7C%7C(o%5Bt%5D%3Dn.V(1%2Co%5Bt-3%5D%5Eo%5Bt-8%5D%5Eo%5Bt-14%5D%5Eo%5Bt-16%5D))%3Bconst%20e%3Dn.V(5%2Ci)%2Bn.U(t%2Cc%2Ca%2Ch)%2Bf%2Bo%5Bt%5D%2Bn.v%5Bs.floor(t%2F20)%5D%7C0%3Bf%3Dh%2Ch%3Da%2Ca%3Dn.V(30%2Cc)%2Cc%3Di%2Ci%3De%7Dr%5B0%5D%3Dr%5B0%5D%2Bi%7C0%2Cr%5B1%5D%3Dr%5B1%5D%2Bc%7C0%2Cr%5B2%5D%3Dr%5B2%5D%2Ba%7C0%2Cr%5B3%5D%3Dr%5B3%5D%2Bh%7C0%2Cr%5B4%5D%3Dr%5B4%5D%2Bf%7C0%7D%7D%2CP%3D%7BgetRandomValues(t)%7Bconst%20e%3Dnew%20c(t.buffer)%2Cn%3Dt%3D%3E%7Blet%20e%3D987654321%3Bconst%20n%3D4294967295%3Breturn()%3D%3E(e%3D36969*(65535%26e)%2B(e%3E%3E16)%26n%2C(((e%3C%3C16)%2B(t%3D18e3*(65535%26t)%2B(t%3E%3E16)%26n)%26n)%2F4294967296%2B.5)*(s.random()%3E.5%3F1%3A-1))%7D%3Bfor(let%20r%2Co%3D0%3Bo%3Ct.length%3Bo%2B%3D4)%7Bconst%20t%3Dn(4294967296*(r%7C%7Cs.random()))%3Br%3D987654071*t()%2Ce%5Bo%2F4%5D%3D4294967296*t()%7C0%7Dreturn%20t%7D%7D%2CU%3D%7BimportKey%3At%3D%3Enew%20U.M(I.bytes.m(t))%2C_(t%2Ce%2Cn%2Cs)%7Bif(n%3Dn%7C%7C1e4%2C0%3Es%7C%7C0%3En)throw%20new%20r(%22invalid%20params%20to%20pbkdf2%22)%3Bconst%20o%3D1%2B(s%3E%3E5)%3C%3C2%3Blet%20i%2Cc%2Ca%2Ch%2Cl%3Bconst%20u%3Dnew%20ArrayBuffer(o)%2Cw%3Dnew%20f(u)%3Blet%20p%3D0%3Bconst%20d%3Dx%3Bfor(e%3DI.bytes.m(e)%2Cl%3D1%3B(o%7C%7C1)%3Ep%3Bl%2B%2B)%7Bfor(i%3Dc%3Dt.encrypt(d.concat(e%2C%5Bl%5D))%2Ca%3D1%3Bn%3Ea%3Ba%2B%2B)for(c%3Dt.encrypt(c)%2Ch%3D0%3Bh%3Cc.length%3Bh%2B%2B)i%5Bh%5D%5E%3Dc%5Bh%5D%3Bfor(a%3D0%3B(o%7C%7C1)%3Ep%26%26a%3Ci.length%3Ba%2B%2B)w.setInt32(p%2Ci%5Ba%5D)%2Cp%2B%3D4%7Dreturn%20u.slice(0%2Cs%2F8)%7D%2CM%3Aclass%7Bconstructor(t)%7Bconst%20e%3Dthis%2Cn%3De.B%3DR%2Cs%3D%5B%5B%5D%2C%5B%5D%5D%3Be.D%3D%5Bnew%20n%2Cnew%20n%5D%3Bconst%20r%3De.D%5B0%5D.blockSize%2F32%3Bt.length%3Er%26%26(t%3D(new%20n).update(t).P())%3Bfor(let%20e%3D0%3Br%3Ee%3Be%2B%2B)s%5B0%5D%5Be%5D%3D909522486%5Et%5Be%5D%2Cs%5B1%5D%5Be%5D%3D1549556828%5Et%5Be%5D%3Be.D%5B0%5D.update(s%5B0%5D)%2Ce.D%5B1%5D.update(s%5B1%5D)%2Ce.W%3Dnew%20n(e.D%5B0%5D)%7Dreset()%7Bconst%20t%3Dthis%3Bt.W%3Dnew%20t.B(t.D%5B0%5D)%2Ct.K%3D!1%7Dupdate(t)%7Bthis.K%3D!0%2Cthis.W.update(t)%7Ddigest()%7Bconst%20t%3Dthis%2Ce%3Dt.W.P()%2Cn%3Dnew%20t.B(t.D%5B1%5D).update(e).P()%3Breturn%20t.reset()%2Cn%7Dencrypt(t)%7Bif(this.K)throw%20new%20r(%22encrypt%20on%20already%20updated%20hmac%20called!%22)%3Breturn%20this.update(t)%2Cthis.digest(t)%7D%7D%7D%2CV%3Dtypeof%20w!%3Dv%26%26typeof%20w.getRandomValues%3D%3Dk%2CM%3D%22Invalid%20password%22%2C_%3D%22Invalid%20signature%22%2CB%3D%22zipjs-abort-check-password%22%3Bfunction%20D(t)%7Breturn%20V%3Fw.getRandomValues(t)%3AP.getRandomValues(t)%7Dconst%20W%3D16%2CK%3D%7Bname%3A%22PBKDF2%22%7D%2CE%3De.assign(%7Bhash%3A%7Bname%3A%22HMAC%22%7D%7D%2CK)%2CL%3De.assign(%7Biterations%3A1e3%2Chash%3A%7Bname%3A%22SHA-1%22%7D%7D%2CK)%2CO%3D%5B%22deriveBits%22%5D%2CT%3D%5B8%2C12%2C16%5D%2Cj%3D%5B16%2C24%2C32%5D%2CH%3D10%2CZ%3D%5B0%2C0%2C0%2C0%5D%2CF%3Dtypeof%20w!%3Dv%2CN%3DF%26%26w.subtle%2Cq%3DF%26%26typeof%20N!%3Dv%2CG%3DI.bytes%2CJ%3Dclass%7Bconstructor(t)%7Bconst%20e%3Dthis%3Be.L%3D%5B%5B%5B%5D%2C%5B%5D%2C%5B%5D%2C%5B%5D%2C%5B%5D%5D%2C%5B%5B%5D%2C%5B%5D%2C%5B%5D%2C%5B%5D%2C%5B%5D%5D%5D%2Ce.L%5B0%5D%5B0%5D%5B0%5D%7C%7Ce.O()%3Bconst%20n%3De.L%5B0%5D%5B4%5D%2Cs%3De.L%5B1%5D%2Co%3Dt.length%3Blet%20i%2Cc%2Ca%2Ch%3D1%3Bif(4!%3D%3Do%26%266!%3D%3Do%26%268!%3D%3Do)throw%20new%20r(%22invalid%20aes%20key%20size%22)%3Bfor(e.v%3D%5Bc%3Dt.slice(0)%2Ca%3D%5B%5D%5D%2Ci%3Do%3B4*o%2B28%3Ei%3Bi%2B%2B)%7Blet%20t%3Dc%5Bi-1%5D%3B(i%25o%3D%3D%3D0%7C%7C8%3D%3D%3Do%26%26i%25o%3D%3D%3D4)%26%26(t%3Dn%5Bt%3E%3E%3E24%5D%3C%3C24%5En%5Bt%3E%3E16%26255%5D%3C%3C16%5En%5Bt%3E%3E8%26255%5D%3C%3C8%5En%5B255%26t%5D%2Ci%25o%3D%3D%3D0%26%26(t%3Dt%3C%3C8%5Et%3E%3E%3E24%5Eh%3C%3C24%2Ch%3Dh%3C%3C1%5E283*(h%3E%3E7)))%2Cc%5Bi%5D%3Dc%5Bi-o%5D%5Et%7Dfor(let%20t%3D0%3Bi%3Bt%2B%2B%2Ci--)%7Bconst%20e%3Dc%5B3%26t%3Fi%3Ai-4%5D%3Ba%5Bt%5D%3D4%3E%3Di%7C%7C4%3Et%3Fe%3As%5B0%5D%5Bn%5Be%3E%3E%3E24%5D%5D%5Es%5B1%5D%5Bn%5Be%3E%3E16%26255%5D%5D%5Es%5B2%5D%5Bn%5Be%3E%3E8%26255%5D%5D%5Es%5B3%5D%5Bn%5B255%26e%5D%5D%7D%7Dencrypt(t)%7Breturn%20this.T(t%2C0)%7Ddecrypt(t)%7Breturn%20this.T(t%2C1)%7DO()%7Bconst%20t%3Dthis.L%5B0%5D%2Ce%3Dthis.L%5B1%5D%2Cn%3Dt%5B4%5D%2Cs%3De%5B4%5D%2Cr%3D%5B%5D%2Co%3D%5B%5D%3Blet%20i%2Cc%2Ca%2Ch%3Bfor(let%20t%3D0%3B256%3Et%3Bt%2B%2B)o%5B(r%5Bt%5D%3Dt%3C%3C1%5E283*(t%3E%3E7))%5Et%5D%3Dt%3Bfor(let%20f%3Di%3D0%3B!n%5Bf%5D%3Bf%5E%3Dc%7C%7C1%2Ci%3Do%5Bi%5D%7C%7C1)%7Blet%20o%3Di%5Ei%3C%3C1%5Ei%3C%3C2%5Ei%3C%3C3%5Ei%3C%3C4%3Bo%3Do%3E%3E8%5E255%26o%5E99%2Cn%5Bf%5D%3Do%2Cs%5Bo%5D%3Df%2Ch%3Dr%5Ba%3Dr%5Bc%3Dr%5Bf%5D%5D%5D%3Blet%20l%3D16843009*h%5E65537*a%5E257*c%5E16843008*f%2Cu%3D257*r%5Bo%5D%5E16843008*o%3Bfor(let%20n%3D0%3B4%3En%3Bn%2B%2B)t%5Bn%5D%5Bf%5D%3Du%3Du%3C%3C24%5Eu%3E%3E%3E8%2Ce%5Bn%5D%5Bo%5D%3Dl%3Dl%3C%3C24%5El%3E%3E%3E8%7Dfor(let%20n%3D0%3B5%3En%3Bn%2B%2B)t%5Bn%5D%3Dt%5Bn%5D.slice(0)%2Ce%5Bn%5D%3De%5Bn%5D.slice(0)%7DT(t%2Ce)%7Bif(4!%3D%3Dt.length)throw%20new%20r(%22invalid%20aes%20block%20size%22)%3Bconst%20n%3Dthis.v%5Be%5D%2Cs%3Dn.length%2F4-2%2Co%3D%5B0%2C0%2C0%2C0%5D%2Ci%3Dthis.L%5Be%5D%2Cc%3Di%5B0%5D%2Ca%3Di%5B1%5D%2Ch%3Di%5B2%5D%2Cf%3Di%5B3%5D%2Cl%3Di%5B4%5D%3Blet%20u%2Cw%2Cp%2Cd%3Dt%5B0%5D%5En%5B0%5D%2Cy%3Dt%5Be%3F3%3A1%5D%5En%5B1%5D%2Cm%3Dt%5B2%5D%5En%5B2%5D%2Cg%3Dt%5Be%3F1%3A3%5D%5En%5B3%5D%2CS%3D4%3Bfor(let%20t%3D0%3Bs%3Et%3Bt%2B%2B)u%3Dc%5Bd%3E%3E%3E24%5D%5Ea%5By%3E%3E16%26255%5D%5Eh%5Bm%3E%3E8%26255%5D%5Ef%5B255%26g%5D%5En%5BS%5D%2Cw%3Dc%5By%3E%3E%3E24%5D%5Ea%5Bm%3E%3E16%26255%5D%5Eh%5Bg%3E%3E8%26255%5D%5Ef%5B255%26d%5D%5En%5BS%2B1%5D%2Cp%3Dc%5Bm%3E%3E%3E24%5D%5Ea%5Bg%3E%3E16%26255%5D%5Eh%5Bd%3E%3E8%26255%5D%5Ef%5B255%26y%5D%5En%5BS%2B2%5D%2Cg%3Dc%5Bg%3E%3E%3E24%5D%5Ea%5Bd%3E%3E16%26255%5D%5Eh%5By%3E%3E8%26255%5D%5Ef%5B255%26m%5D%5En%5BS%2B3%5D%2CS%2B%3D4%2Cd%3Du%2Cy%3Dw%2Cm%3Dp%3Bfor(let%20t%3D0%3B4%3Et%3Bt%2B%2B)o%5Be%3F3%26-t%3At%5D%3Dl%5Bd%3E%3E%3E24%5D%3C%3C24%5El%5By%3E%3E16%26255%5D%3C%3C16%5El%5Bm%3E%3E8%26255%5D%3C%3C8%5El%5B255%26g%5D%5En%5BS%2B%2B%5D%2Cu%3Dd%2Cd%3Dy%2Cy%3Dm%2Cm%3Dg%2Cg%3Du%3Breturn%20o%7D%7D%2CQ%3Dclass%7Bconstructor(t%2Ce)%7Bthis.j%3Dt%2Cthis.H%3De%2Cthis.Z%3De%7Dreset()%7Bthis.Z%3Dthis.H%7Dupdate(t)%7Breturn%20this.F(this.j%2Ct%2Cthis.Z)%7DN(t)%7Bif(255%26~(t%3E%3E24))t%2B%3D1%3C%3C24%3Belse%7Blet%20e%3Dt%3E%3E16%26255%2Cn%3Dt%3E%3E8%26255%2Cs%3D255%26t%3B255%3D%3D%3De%3F(e%3D0%2C255%3D%3D%3Dn%3F(n%3D0%2C255%3D%3D%3Ds%3Fs%3D0%3A%2B%2Bs)%3A%2B%2Bn)%3A%2B%2Be%2Ct%3D0%2Ct%2B%3De%3C%3C16%2Ct%2B%3Dn%3C%3C8%2Ct%2B%3Ds%7Dreturn%20t%7Dq(t)%7B0%3D%3D%3D(t%5B0%5D%3Dthis.N(t%5B0%5D))%26%26(t%5B1%5D%3Dthis.N(t%5B1%5D))%7DF(t%2Ce%2Cn)%7Blet%20s%3Bif(!(s%3De.length))return%5B%5D%3Bconst%20r%3Dx.h(e)%3Bfor(let%20r%3D0%3Bs%3Er%3Br%2B%3D4)%7Bthis.q(n)%3Bconst%20s%3Dt.encrypt(n)%3Be%5Br%5D%5E%3Ds%5B0%5D%2Ce%5Br%2B1%5D%5E%3Ds%5B1%5D%2Ce%5Br%2B2%5D%5E%3Ds%5B2%5D%2Ce%5Br%2B3%5D%5E%3Ds%5B3%5D%7Dreturn%20x.l(e%2Cr)%7D%7D%2CX%3DU.M%3Blet%20Y%3DF%26%26q%26%26typeof%20N.importKey%3D%3Dk%2C%24%3DF%26%26q%26%26typeof%20N.deriveBits%3D%3Dk%3Bclass%20tt%20extends%20d%7Bconstructor(%7Bpassword%3At%2CrawPassword%3An%2Csigned%3As%2CencryptionStrength%3Ai%2CcheckPasswordOnly%3Ac%7D)%7Bsuper(%7Bstart()%7Be.assign(this%2C%7Bready%3Anew%20l(t%3D%3Ethis.G%3Dt)%2Cpassword%3Art(t%2Cn)%2Csigned%3As%2CJ%3Ai-1%2Cpending%3Anew%20o%7D)%7D%2Casync%20transform(t%2Ce)%7Bconst%20n%3Dthis%2C%7Bpassword%3As%2CJ%3Ai%2CG%3Aa%2Cready%3Ah%7D%3Dn%3Bs%3F(await(async(t%2Ce%2Cn%2Cs)%3D%3E%7Bconst%20o%3Dawait%20st(t%2Ce%2Cn%2Cit(s%2C0%2CT%5Be%5D))%2Ci%3Dit(s%2CT%5Be%5D)%3Bif(o%5B0%5D!%3Di%5B0%5D%7C%7Co%5B1%5D!%3Di%5B1%5D)throw%20new%20r(M)%7D)(n%2Ci%2Cs%2Cit(t%2C0%2CT%5Bi%5D%2B2))%2Ct%3Dit(t%2CT%5Bi%5D%2B2)%2Cc%3Fe.error(new%20r(B))%3Aa())%3Aawait%20h%3Bconst%20f%3Dnew%20o(t.length-H-(t.length-H)%25W)%3Be.enqueue(nt(n%2Ct%2Cf%2C0%2CH%2C!0))%7D%2Casync%20flush(t)%7Bconst%7Bsigned%3Ae%2CX%3An%2CY%3As%2Cpending%3Ai%2Cready%3Ac%7D%3Dthis%3Bif(s%26%26n)%7Bawait%20c%3Bconst%20a%3Dit(i%2C0%2Ci.length-H)%2Ch%3Dit(i%2Ci.length-H)%3Blet%20f%3Dnew%20o%3Bif(a.length)%7Bconst%20t%3Dat(G%2Ca)%3Bs.update(t)%3Bconst%20e%3Dn.update(t)%3Bf%3Dct(G%2Ce)%7Dif(e)%7Bconst%20t%3Dit(ct(G%2Cs.digest())%2C0%2CH)%3Bfor(let%20e%3D0%3BH%3Ee%3Be%2B%2B)if(t%5Be%5D!%3Dh%5Be%5D)throw%20new%20r(_)%7Dt.enqueue(f)%7D%7D%7D)%7D%7Dclass%20et%20extends%20d%7Bconstructor(%7Bpassword%3At%2CrawPassword%3An%2CencryptionStrength%3As%7D)%7Blet%20r%3Bsuper(%7Bstart()%7Be.assign(this%2C%7Bready%3Anew%20l(t%3D%3Ethis.G%3Dt)%2Cpassword%3Art(t%2Cn)%2CJ%3As-1%2Cpending%3Anew%20o%7D)%7D%2Casync%20transform(t%2Ce)%7Bconst%20n%3Dthis%2C%7Bpassword%3As%2CJ%3Ar%2CG%3Ai%2Cready%3Ac%7D%3Dn%3Blet%20a%3Dnew%20o%3Bs%3F(a%3Dawait(async(t%2Ce%2Cn)%3D%3E%7Bconst%20s%3DD(new%20o(T%5Be%5D))%3Breturn%20ot(s%2Cawait%20st(t%2Ce%2Cn%2Cs))%7D)(n%2Cr%2Cs)%2Ci())%3Aawait%20c%3Bconst%20h%3Dnew%20o(a.length%2Bt.length-t.length%25W)%3Bh.set(a%2C0)%2Ce.enqueue(nt(n%2Ct%2Ch%2Ca.length%2C0))%7D%2Casync%20flush(t)%7Bconst%7BX%3Ae%2CY%3An%2Cpending%3As%2Cready%3Ai%7D%3Dthis%3Bif(n%26%26e)%7Bawait%20i%3Blet%20c%3Dnew%20o%3Bif(s.length)%7Bconst%20t%3De.update(at(G%2Cs))%3Bn.update(t)%2Cc%3Dct(G%2Ct)%7Dr.signature%3Dct(G%2Cn.digest()).slice(0%2CH)%2Ct.enqueue(ot(c%2Cr.signature))%7D%7D%7D)%2Cr%3Dthis%7D%7Dfunction%20nt(t%2Ce%2Cn%2Cs%2Cr%2Ci)%7Bconst%7BX%3Ac%2CY%3Aa%2Cpending%3Ah%7D%3Dt%2Cf%3De.length-r%3Blet%20l%3Bfor(h.length%26%26(e%3Dot(h%2Ce)%2Cn%3D((t%2Ce)%3D%3E%7Bif(e%26%26e%3Et.length)%7Bconst%20n%3Dt%3B(t%3Dnew%20o(e)).set(n%2C0)%7Dreturn%20t%7D)(n%2Cf-f%25W))%2Cl%3D0%3Bf-W%3E%3Dl%3Bl%2B%3DW)%7Bconst%20t%3Dat(G%2Cit(e%2Cl%2Cl%2BW))%3Bi%26%26a.update(t)%3Bconst%20r%3Dc.update(t)%3Bi%7C%7Ca.update(r)%2Cn.set(ct(G%2Cr)%2Cl%2Bs)%7Dreturn%20t.pending%3Dit(e%2Cl)%2Cn%7Dasync%20function%20st(n%2Cs%2Cr%2Ci)%7Bn.password%3Dnull%3Bconst%20c%3Dawait(async(t%2Ce%2Cn%2Cs%2Cr)%3D%3E%7Bif(!Y)return%20U.importKey(e)%3Btry%7Breturn%20await%20N.importKey(%22raw%22%2Ce%2Cn%2C!1%2Cr)%7Dcatch%7Breturn%20Y%3D!1%2CU.importKey(e)%7D%7D)(0%2Cr%2CE%2C0%2CO)%2Ca%3Dawait(async(t%2Ce%2Cn)%3D%3E%7Bif(!%24)return%20U._(e%2Ct.salt%2CL.iterations%2Cn)%3Btry%7Breturn%20await%20N.deriveBits(t%2Ce%2Cn)%7Dcatch%7Breturn%20%24%3D!1%2CU._(e%2Ct.salt%2CL.iterations%2Cn)%7D%7D)(e.assign(%7Bsalt%3Ai%7D%2CL)%2Cc%2C8*(2*j%5Bs%5D%2B2))%2Ch%3Dnew%20o(a)%2Cf%3Dat(G%2Cit(h%2C0%2Cj%5Bs%5D))%2Cl%3Dat(G%2Cit(h%2Cj%5Bs%5D%2C2*j%5Bs%5D))%2Cu%3Dit(h%2C2*j%5Bs%5D)%3Breturn%20e.assign(n%2C%7Bkeys%3A%7Bkey%3Af%2C%24%3Al%2CpasswordVerification%3Au%7D%2CX%3Anew%20Q(new%20J(f)%2Ct.from(Z))%2CY%3Anew%20X(l)%7D)%2Cu%7Dfunction%20rt(t%2Ce)%7Breturn%20e%3D%3D%3Db%3F(t%3D%3E%7Bif(typeof%20u%3D%3Dv)%7Bconst%20e%3Dnew%20o((t%3Dunescape(encodeURIComponent(t))).length)%3Bfor(let%20n%3D0%3Bn%3Ce.length%3Bn%2B%2B)e%5Bn%5D%3Dt.charCodeAt(n)%3Breturn%20e%7Dreturn(new%20u).encode(t)%7D)(t)%3Ae%7Dfunction%20ot(t%2Ce)%7Blet%20n%3Dt%3Breturn%20t.length%2Be.length%26%26(n%3Dnew%20o(t.length%2Be.length)%2Cn.set(t%2C0)%2Cn.set(e%2Ct.length))%2Cn%7Dfunction%20it(t%2Ce%2Cn)%7Breturn%20t.subarray(e%2Cn)%7Dfunction%20ct(t%2Ce)%7Breturn%20t.p(e)%7Dfunction%20at(t%2Ce)%7Breturn%20t.m(e)%7Dclass%20ht%20extends%20d%7Bconstructor(%7Bpassword%3At%2CpasswordVerification%3An%2CcheckPasswordOnly%3As%7D)%7Bsuper(%7Bstart()%7Be.assign(this%2C%7Bpassword%3At%2CpasswordVerification%3An%7D)%2Cwt(this%2Ct)%7D%2Ctransform(t%2Ce)%7Bconst%20n%3Dthis%3Bif(n.password)%7Bconst%20e%3Dlt(n%2Ct.subarray(0%2C12))%3Bif(n.password%3Dnull%2Ce.at(-1)!%3Dn.passwordVerification)throw%20new%20r(M)%3Bt%3Dt.subarray(12)%7Ds%3Fe.error(new%20r(B))%3Ae.enqueue(lt(n%2Ct))%7D%7D)%7D%7Dclass%20ft%20extends%20d%7Bconstructor(%7Bpassword%3At%2CpasswordVerification%3An%7D)%7Bsuper(%7Bstart()%7Be.assign(this%2C%7Bpassword%3At%2CpasswordVerification%3An%7D)%2Cwt(this%2Ct)%7D%2Ctransform(t%2Ce)%7Bconst%20n%3Dthis%3Blet%20s%2Cr%3Bif(n.password)%7Bn.password%3Dnull%3Bconst%20e%3DD(new%20o(12))%3Be%5B11%5D%3Dn.passwordVerification%2Cs%3Dnew%20o(t.length%2Be.length)%2Cs.set(ut(n%2Ce)%2C0)%2Cr%3D12%7Delse%20s%3Dnew%20o(t.length)%2Cr%3D0%3Bs.set(ut(n%2Ct)%2Cr)%2Ce.enqueue(s)%7D%7D)%7D%7Dfunction%20lt(t%2Ce)%7Bconst%20n%3Dnew%20o(e.length)%3Bfor(let%20s%3D0%3Bs%3Ce.length%3Bs%2B%2B)n%5Bs%5D%3Ddt(t)%5Ee%5Bs%5D%2Cpt(t%2Cn%5Bs%5D)%3Breturn%20n%7Dfunction%20ut(t%2Ce)%7Bconst%20n%3Dnew%20o(e.length)%3Bfor(let%20s%3D0%3Bs%3Ce.length%3Bs%2B%2B)n%5Bs%5D%3Ddt(t)%5Ee%5Bs%5D%2Cpt(t%2Ce%5Bs%5D)%3Breturn%20n%7Dfunction%20wt(t%2Cn)%7Bconst%20s%3D%5B305419896%2C591751049%2C878082192%5D%3Be.assign(t%2C%7Bkeys%3As%2Ctt%3Anew%20C(s%5B0%5D)%2Cet%3Anew%20C(s%5B2%5D)%7D)%3Bfor(let%20e%3D0%3Be%3Cn.length%3Be%2B%2B)pt(t%2Cn.charCodeAt(e))%7Dfunction%20pt(t%2Ce)%7Blet%5Bn%2Cr%2Co%5D%3Dt.keys%3Bt.tt.append(%5Be%5D)%2Cn%3D~t.tt.get()%2Cr%3Dmt(s.imul(mt(r%2Byt(n))%2C134775813)%2B1)%2Ct.et.append(%5Br%3E%3E%3E24%5D)%2Co%3D~t.et.get()%2Ct.keys%3D%5Bn%2Cr%2Co%5D%7Dfunction%20dt(t)%7Bconst%20e%3D2%7Ct.keys%5B2%5D%3Breturn%20yt(s.imul(e%2C1%5Ee)%3E%3E%3E8)%7Dfunction%20yt(t)%7Breturn%20255%26t%7Dfunction%20mt(t)%7Breturn%204294967295%26t%7Dclass%20gt%20extends%20d%7Bconstructor(t%2C%7BchunkSize%3Ae%2Cnt%3An%2CCompressionStream%3As%7D)%7Bsuper(%7B%7D)%3Bconst%7Bcompressed%3Ar%2Cencrypted%3Ao%2CuseCompressionStream%3Ai%2CzipCrypto%3Ac%2Csigned%3Aa%2Clevel%3Ah%7D%3Dt%2Cl%3Dthis%3Blet%20u%2Cw%2Cp%3Dsuper.readable%3Bo%26%26!c%7C%7C!a%7C%7C(u%3Dnew%20A%2Cp%3Dkt(p%2Cu))%2Cr%26%26(p%3Dvt(p%2Ci%2C%7Blevel%3Ah%2CchunkSize%3Ae%7D%2Cs%2Cn%2Cs))%2Co%26%26(c%3Fp%3Dkt(p%2Cnew%20ft(t))%3A(w%3Dnew%20et(t)%2Cp%3Dkt(p%2Cw)))%2Cbt(l%2Cp%2C()%3D%3E%7Blet%20t%3Bo%26%26!c%26%26(t%3Dw.signature)%2Co%26%26!c%7C%7C!a%7C%7C(t%3Dnew%20f(u.value.buffer).getUint32(0))%2Cl.signature%3Dt%7D)%7D%7Dclass%20St%20extends%20d%7Bconstructor(t%2C%7BchunkSize%3Ae%2Cst%3An%2CDecompressionStream%3As%7D)%7Bsuper(%7B%7D)%3Bconst%7BzipCrypto%3Ao%2Cencrypted%3Ai%2Csigned%3Ac%2Csignature%3Aa%2Ccompressed%3Ah%2CuseCompressionStream%3Al%2Crt%3Au%7D%3Dt%3Blet%20w%2Cp%2Cd%3Dsuper.readable%3Bi%26%26(o%3Fd%3Dkt(d%2Cnew%20ht(t))%3A(p%3Dnew%20tt(t)%2Cd%3Dkt(d%2Cp)))%2Ch%26%26(d%3Dvt(d%2Cl%2C%7BchunkSize%3Ae%2Crt%3Au%7D%2Cs%2Cn%2Cs))%2Ci%26%26!o%7C%7C!c%7C%7C(w%3Dnew%20A%2Cd%3Dkt(d%2Cw))%2Cbt(this%2Cd%2C()%3D%3E%7Bif((!i%7C%7Co)%26%26c)%7Bconst%20t%3Dnew%20f(w.value.buffer)%3Bif(a!%3Dt.getUint32(0%2C!1))throw%20new%20r(_)%7D%7D)%7D%7Dfunction%20bt(t%2Cn%2Cs)%7Bn%3Dkt(n%2Cnew%20d(%7Bflush%3As%7D))%2Ce.defineProperty(t%2C%22readable%22%2C%7Bget%3A()%3D%3En%7D)%7Dfunction%20vt(t%2Ce%2Cn%2Cs%2Cr%2Co)%7Bconst%20i%3De%26%26s%3Fs%3Ar%7C%7Co%2Cc%3Dn.rt%3F%22deflate64-raw%22%3A%22deflate-raw%22%3Btry%7Bt%3Dkt(t%2Cnew%20i(c%2Cn))%7Dcatch(s)%7Bif(!e)throw%20s%3Bif(r)t%3Dkt(t%2Cnew%20r(c%2Cn))%3Belse%7Bif(!o)throw%20s%3Bt%3Dkt(t%2Cnew%20o(c%2Cn))%7D%7Dreturn%20t%7Dfunction%20kt(t%2Ce)%7Breturn%20t.pipeThrough(e)%7Dconst%20zt%3D%22data%22%2CCt%3D%22close%22%3Bclass%20At%20extends%20d%7Bconstructor(t%2Cn)%7Bsuper(%7B%7D)%3Bconst%20s%3Dthis%2C%7BcodecType%3Ao%7D%3Dt%3Blet%20i%3Bo.startsWith(%22deflate%22)%3Fi%3Dgt%3Ao.startsWith(%22inflate%22)%26%26(i%3DSt)%2Cs.outputSize%3D0%3Blet%20c%3D0%3Bconst%20a%3Dnew%20i(t%2Cn)%2Ch%3Dsuper.readable%2Cf%3Dnew%20d(%7Btransform(t%2Ce)%7Bt%26%26t.length%26%26(c%2B%3Dt.length%2Ce.enqueue(t))%7D%2Cflush()%7Be.assign(s%2C%7BinputSize%3Ac%7D)%7D%7D)%2Cl%3Dnew%20d(%7Btransform(e%2Cn)%7Bif(e%26%26e.length%26%26(n.enqueue(e)%2Cs.outputSize%2B%3De.length%2Ct.outputSize!%3D%3Db%26%26s.outputSize%3Et.outputSize))throw%20new%20r(%22Invalid%20uncompressed%20size%22)%7D%2Cflush()%7Bconst%7Bsignature%3At%7D%3Da%3Be.assign(s%2C%7Bsignature%3At%2CinputSize%3Ac%7D)%7D%7D)%3Be.defineProperty(s%2C%22readable%22%2C%7Bget%3A()%3D%3Eh.pipeThrough(f).pipeThrough(a).pipeThrough(l)%7D)%7D%7Dclass%20xt%20extends%20d%7Bconstructor(t)%7Blet%20e%3Bsuper(%7Btransform%3Afunction%20n(s%2Cr)%7Bif(e)%7Bconst%20t%3Dnew%20o(e.length%2Bs.length)%3Bt.set(e)%2Ct.set(s%2Ce.length)%2Cs%3Dt%2Ce%3Dnull%7Ds.length%3Et%3F(r.enqueue(s.slice(0%2Ct))%2Cn(s.slice(t)%2Cr))%3Ae%3Ds%7D%2Cflush(t)%7Be%26%26e.length%26%26t.enqueue(e)%7D%7D)%7D%7Dconst%20It%3Dnew%20h%2CRt%3Dnew%20h%3Blet%20Pt%2CUt%2CVt%2CMt%2C_t%2CBt%3D0%3Basync%20function%20Dt(t)%7Btry%7Bconst%7Boptions%3Ae%2Cconfig%3As%7D%3Dt%3Bif(!e.useCompressionStream)try%7Bawait%20self.initModule(t.config)%7Dcatch%7Be.useCompressionStream%3D!0%7Ds.CompressionStream%3Dself.CompressionStream%2Cs.DecompressionStream%3Dself.DecompressionStream%3Bconst%20r%3D%7BhighWaterMark%3A1%7D%2Co%3Dt.readable%7C%7Cnew%20y(%7Basync%20pull(t)%7Bconst%20e%3Dnew%20l(t%3D%3EIt.set(Bt%2Ct))%3BWt(%7Btype%3A%22pull%22%2CmessageId%3ABt%7D)%2CBt%3D(Bt%2B1)%25n.MAX_SAFE_INTEGER%3Bconst%7Bvalue%3As%2Cdone%3Ar%7D%3Dawait%20e%3Bt.enqueue(s)%2Cr%26%26t.close()%7D%7D%2Cr)%2Ci%3Dt.writable%7C%7Cnew%20m(%7Basync%20write(t)%7Blet%20e%3Bconst%20s%3Dnew%20l(t%3D%3Ee%3Dt)%3BRt.set(Bt%2Ce)%2CWt(%7Btype%3Azt%2Cvalue%3At%2CmessageId%3ABt%7D)%2CBt%3D(Bt%2B1)%25n.MAX_SAFE_INTEGER%2Cawait%20s%7D%7D%2Cr)%2Cc%3Dnew%20At(e%2Cs)%3BPt%3Dnew%20AbortController%3Bconst%7Bsignal%3Aa%7D%3DPt%3Bawait%20o.pipeThrough(c).pipeThrough(new%20xt(s.chunkSize)).pipeTo(i%2C%7Bsignal%3Aa%2CpreventClose%3A!0%2CpreventAbort%3A!0%7D)%2Cawait%20i.getWriter().close()%3Bconst%7Bsignature%3Ah%2CinputSize%3Af%2CoutputSize%3Au%7D%3Dc%3BWt(%7Btype%3ACt%2Cresult%3A%7Bsignature%3Ah%2CinputSize%3Af%2CoutputSize%3Au%7D%7D)%7Dcatch(t)%7Bt.outputSize%3D0%2CKt(t)%7D%7Dfunction%20Wt(t)%7Blet%7Bvalue%3Ae%7D%3Dt%3Bif(e)if(e.length)try%7Be%3Dnew%20o(e)%2Ct.value%3De.buffer%2Cp(t%2C%5Bt.value%5D)%7Dcatch%7Bp(t)%7Delse%20p(t)%3Belse%20p(t)%7Dfunction%20Kt(t%3Dnew%20r(%22Unknown%20error%22))%7Bconst%7Bmessage%3Ae%2Cstack%3An%2Ccode%3As%2Cname%3Ao%2CoutputSize%3Ai%7D%3Dt%3Bp(%7Berror%3A%7Bmessage%3Ae%2Cstack%3An%2Ccode%3As%2Cname%3Ao%2CoutputSize%3Ai%7D%7D)%7Dfunction%20Et(t%2Ce%2Cn%3D%7B%7D)%7Bconst%20i%3D%22number%22%3D%3Dtypeof%20n.level%3Fn.level%3A-1%2Cc%3D%22number%22%3D%3Dtypeof%20n.ot%3Fn.ot%3A65536%2Ca%3D%22number%22%3D%3Dtypeof%20n.it%3Fn.it%3A65536%3Breturn%20new%20d(%7Bstart()%7Blet%20n%3Bif(this.ct%3DVt(c)%2Cthis.in%3DVt(a)%2Cthis.it%3Da%2Cthis.ht%3Dnew%20o(c)%2Ct%3F(this.ft%3DUt.deflate_process%2Cthis.lt%3DUt.deflate_last_consumed%2Cthis.ut%3DUt.deflate_end%2Cthis.wt%3DUt.deflate_new()%2Cn%3D%22gzip%22%3D%3D%3De%3FUt.deflate_init_gzip(this.wt%2Ci)%3A%22deflate-raw%22%3D%3D%3De%3FUt.deflate_init_raw(this.wt%2Ci)%3AUt.deflate_init(this.wt%2Ci))%3A%22deflate64-raw%22%3D%3D%3De%3F(this.ft%3DUt.inflate9_process%2Cthis.lt%3DUt.inflate9_last_consumed%2Cthis.ut%3DUt.inflate9_end%2Cthis.wt%3DUt.inflate9_new()%2Cn%3DUt.inflate9_init_raw(this.wt))%3A(this.ft%3DUt.inflate_process%2Cthis.lt%3DUt.inflate_last_consumed%2Cthis.ut%3DUt.inflate_end%2Cthis.wt%3DUt.inflate_new()%2Cn%3D%22deflate-raw%22%3D%3D%3De%3FUt.inflate_init_raw(this.wt)%3A%22gzip%22%3D%3D%3De%3FUt.inflate_init_gzip(this.wt)%3AUt.inflate_init(this.wt))%2C0!%3D%3Dn)throw%20new%20r(%22init%20failed%3A%22%2Bn)%7D%2Ctransform(e%2Cn)%7Btry%7Bconst%20i%3De%2Ca%3Dnew%20o(_t.buffer)%2Ch%3Dthis.ft%2Cf%3Dthis.lt%2Cl%3Dthis.ct%2Cu%3Dthis.ht%3Blet%20w%3D0%3Bfor(%3Bw%3Ci.length%3B)%7Bconst%20e%3Ds.min(i.length-w%2C32768)%3Bthis.in%26%26this.it%3E%3De%7C%7C(this.in%26%26Mt%26%26Mt(this.in)%2Cthis.in%3DVt(e)%2Cthis.it%3De)%2Ca.set(i.subarray(w%2Cw%2Be)%2Cthis.in)%3Bconst%20o%3Dh(this.wt%2Cthis.in%2Ce%2Cl%2Cc%2C0)%2Cp%3D16777215%26o%3Bif(p%26%26(u.set(a.subarray(l%2Cl%2Bp)%2C0)%2Cn.enqueue(u.slice(0%2Cp)))%2C!t)%7Bconst%20t%3Do%3E%3E24%26255%2Ce%3D128%26t%3Ft-256%3At%3Bif(0%3Ee)throw%20new%20r(%22process%20error%3A%22%2Be)%7Dconst%20d%3Df(this.wt)%3Bif(0%3D%3D%3Dd)break%3Bw%2B%3Dd%7D%7Dcatch(t)%7Bthis.ut%26%26this.wt%26%26this.ut(this.wt)%2Cthis.in%26%26Mt%26%26Mt(this.in)%2Cthis.ct%26%26Mt%26%26Mt(this.ct)%2Cn.error(t)%7D%7D%2Cflush(e)%7Btry%7Bconst%20n%3Dnew%20o(_t.buffer)%2Cs%3Dthis.ft%2Ci%3Dthis.ct%2Ca%3Dthis.ht%3Bfor(%3B%3B)%7Bconst%20o%3Ds(this.wt%2C0%2C0%2Ci%2Cc%2C4)%2Ch%3D16777215%26o%2Cf%3Do%3E%3E24%26255%3Bif(!t)%7Bconst%20t%3D128%26f%3Ff-256%3Af%3Bif(0%3Et)throw%20new%20r(%22process%20error%3A%22%2Bt)%7Dif(h%26%26(a.set(n.subarray(i%2Ci%2Bh)%2C0)%2Ce.enqueue(a.slice(0%2Ch)))%2C1%3D%3D%3Df%7C%7C0%3D%3D%3Dh)break%7D%7Dcatch(t)%7Be.error(t)%7Dfinally%7Bif(this.ut%26%26this.wt)%7Bconst%20t%3Dthis.ut(this.wt)%3B0!%3D%3Dt%26%26e.error(new%20r(%22end%20error%3A%22%2Bt))%7Dthis.in%26%26Mt%26%26Mt(this.in)%2Cthis.ct%26%26Mt%26%26Mt(this.ct)%7D%7D%7D)%7DaddEventListener(%22message%22%2C(%7Bdata%3At%7D)%3D%3E%7Bconst%7Btype%3Ae%2CmessageId%3An%2Cvalue%3As%2Cdone%3Ar%7D%3Dt%3Btry%7Bif(%22start%22%3D%3De%26%26Dt(t)%2Ce%3D%3Dzt)%7Bconst%20t%3DIt.get(n)%3BIt.delete(n)%2Ct(%7Bvalue%3Anew%20o(s)%2Cdone%3Ar%7D)%7Dif(%22ack%22%3D%3De)%7Bconst%20t%3DRt.get(n)%3BRt.delete(n)%2Ct()%7De%3D%3DCt%26%26Pt.abort()%7Dcatch(t)%7BKt(t)%7D%7D)%3Bclass%20Lt%7Bconstructor(t%3D%22deflate%22%2Ce)%7Breturn%20Et(!0%2Ct%2Ce)%7D%7Dclass%20Ot%7Bconstructor(t%3D%22deflate%22%2Ce)%7Breturn%20Et(!1%2Ct%2Ce)%7D%7Dlet%20Tt%3D!1%3Bself.initModule%3Dasync%20t%3D%3E%7Btry%7Bconst%20e%3Dawait(async(t%2C%7BbaseURI%3Ae%7D)%3D%3E%7Bif(!Tt)%7Blet%20n%2Cs%3Btry%7Btry%7Bs%3Dnew%20URL(t%2Ce)%7Dcatch%7B%7Dconst%20r%3Dawait%20fetch(s)%3Bn%3Dawait%20r.arrayBuffer()%7Dcatch(e)%7Bif(!t.startsWith(%22data%3Aapplication%2Fwasm%3Bbase64%2C%22))throw%20e%3Bn%3D(t%3D%3E%7Bconst%20e%3Dt.split(%22%2C%22)%5B1%5D%2Cn%3Datob(e)%2Cs%3Dn.length%2Cr%3Dnew%20o(s)%3Bfor(let%20t%3D0%3Bs%3Et%3B%2B%2Bt)r%5Bt%5D%3Dn.charCodeAt(t)%3Breturn%20r.buffer%7D)(t)%7D(t%3D%3E%7Bif(Ut%3Dt%2C(%7Bmalloc%3AVt%2Cfree%3AMt%2Cmemory%3A_t%7D%3DUt)%2C%22function%22!%3Dtypeof%20Vt%7C%7C%22function%22!%3Dtypeof%20Mt%7C%7C!_t)throw%20Ut%3DVt%3DMt%3D_t%3Dnull%2Cnew%20r(%22Invalid%20WASM%20module%22)%7D)((await%20WebAssembly.instantiate(n)).instance.exports)%2CTt%3D!0%7D%7D)(t.wasmURI%2Ct)%3Breturn%20t.nt%3DLt%2Ct.st%3DOt%2Ce%7Dcatch%7B%7D%7D%7D)%3B%0A`}})}var se=[];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t&1?t=t>>>1^3988292384:t>>>=1;se[e]=t}var ce=class{constructor(e){this.crc=e||-1}append(e){let t=this.crc|0;for(let n=0,r=e.length|0;n<r;n++)t=t>>>8^se[(t^e[n])&255];this.crc=t}get(){return~this.crc}},A=class extends TransformStream{constructor(){let e,t=new ce;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){let n=new Uint8Array(4);new DataView(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}};function j(e){if(typeof TextEncoder>`u`){e=unescape(encodeURIComponent(e));let t=new Uint8Array(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}else return new TextEncoder().encode(e)}var M={concat(e,t){if(e.length===0||t.length===0)return e.concat(t);let n=e[e.length-1],r=M.getPartial(n);return r===32?e.concat(t):M._shiftRight(t,r,n|0,e.slice(0,e.length-1))},bitLength(e){let t=e.length;if(t===0)return 0;let n=e[t-1];return(t-1)*32+M.getPartial(n)},clamp(e,t){if(e.length*32<t)return e;e=e.slice(0,Math.ceil(t/32));let n=e.length;return t&=31,n>0&&t&&(e[n-1]=M.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial(e,t,n){return e===32?t:(n?t|0:t<<32-e)+e*1099511627776},getPartial(e){return Math.round(e/1099511627776)||32},_shiftRight(e,t,n,r){for(r===void 0&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(t===0)return r.concat(e);for(let i=0;i<e.length;i++)r.push(n|e[i]>>>t),n=e[i]<<32-t;let i=e.length?e[e.length-1]:0,a=M.getPartial(i);return r.push(M.partial(t+a&31,t+a>32?n:r.pop(),1)),r}},N={bytes:{fromBits(e){let t=M.bitLength(e)/8,n=new Uint8Array(t),r;for(let i=0;i<t;i++)i&3||(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){let t=[],n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],(n&3)==3&&(t.push(r),r=0);return n&3&&t.push(M.partial(8*(n&3),r)),t}}},le={};le.sha1=class{constructor(e){let t=this;t.blockSize=512,t._init=[1732584193,4023233417,2562383102,271733878,3285377520],t._key=[1518500249,1859775393,2400959708,3395469782],e?(t._h=e._h.slice(0),t._buffer=e._buffer.slice(0),t._length=e._length):t.reset()}reset(){let e=this;return e._h=e._init.slice(0),e._buffer=[],e._length=0,e}update(e){let t=this;typeof e==`string`&&(e=N.utf8String.toBits(e));let n=t._buffer=M.concat(t._buffer,e),r=t._length,i=t._length=r+M.bitLength(e);if(i>9007199254740991)throw Error(`Cannot hash more than 2^53 - 1 bits`);let a=new Uint32Array(n),o=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=i;e+=t.blockSize)t._block(a.subarray(16*o,16*(o+1))),o+=1;return n.splice(0,16*o),t}finalize(){let e=this,t=e._buffer,n=e._h;t=M.concat(t,[M.partial(1,1)]);for(let e=t.length+2;e&15;e++)t.push(0);for(t.push(Math.floor(e._length/4294967296)),t.push(e._length|0);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){if(e<=19)return t&n|~t&r;if(e<=39)return t^n^r;if(e<=59)return t&n|t&r|n&r;if(e<=79)return t^n^r}_S(e,t){return t<<e|t>>>32-e}_block(e){let t=this,n=t._h,r=Array(80);for(let t=0;t<16;t++)r[t]=e[t];let i=n[0],a=n[1],o=n[2],s=n[3],c=n[4];for(let e=0;e<=79;e++){e>=16&&(r[e]=t._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));let n=t._S(5,i)+t._f(e,a,o,s)+c+r[e]+t._key[Math.floor(e/20)]|0;c=s,s=o,o=t._S(30,a),a=i,i=n}n[0]=n[0]+i|0,n[1]=n[1]+a|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+c|0}};var ue={};ue.aes=class{constructor(e){let t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();let n=t._tables[0][4],r=t._tables[1],i=e.length,a,o,s,c=1;if(i!==4&&i!==6&&i!==8)throw Error(`invalid aes key size`);for(t._key=[o=e.slice(0),s=[]],a=i;a<4*i+28;a++){let e=o[a-1];(a%i===0||i===8&&a%i===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[e&255],a%i===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^(c>>7)*283)),o[a]=o[a-i]^e}for(let e=0;a;e++,a--){let t=o[e&3?a:a-4];a<=4||e<4?s[e]=t:s[e]=r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[t&255]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){let e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],i=[],a=[],o,s,c,l;for(let e=0;e<256;e++)a[(i[e]=e<<1^(e>>7)*283)^e]=e;for(let u=o=0;!n[u];u^=s||1,o=a[o]||1){let a=o^o<<1^o<<2^o<<3^o<<4;a=a>>8^a&255^99,n[u]=a,r[a]=u,l=i[c=i[s=i[u]]];let d=l*16843009^c*65537^s*257^u*16843008,f=i[a]*257^a*16843008;for(let n=0;n<4;n++)e[n][u]=f=f<<24^f>>>8,t[n][a]=d=d<<24^d>>>8}for(let n=0;n<5;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(e.length!==4)throw Error(`invalid aes block size`);let n=this._key[t],r=n.length/4-2,i=[0,0,0,0],a=this._tables[t],o=a[0],s=a[1],c=a[2],l=a[3],u=a[4],d=e[0]^n[0],f=e[t?3:1]^n[1],p=e[2]^n[2],m=e[t?1:3]^n[3],h=4,g,_,v;for(let e=0;e<r;e++)g=o[d>>>24]^s[f>>16&255]^c[p>>8&255]^l[m&255]^n[h],_=o[f>>>24]^s[p>>16&255]^c[m>>8&255]^l[d&255]^n[h+1],v=o[p>>>24]^s[m>>16&255]^c[d>>8&255]^l[f&255]^n[h+2],m=o[m>>>24]^s[d>>16&255]^c[f>>8&255]^l[p&255]^n[h+3],h+=4,d=g,f=_,p=v;for(let e=0;e<4;e++)i[t?3&-e:e]=u[d>>>24]<<24^u[f>>16&255]<<16^u[p>>8&255]<<8^u[m&255]^n[h++],g=d,d=f,f=p,p=m,m=g;return i}};var P={getRandomValues(e){let t=new Uint32Array(e.buffer),n=e=>{let t=987654321,n=4294967295;return function(){return t=36969*(t&65535)+(t>>16)&n,e=18e3*(e&65535)+(e>>16)&n,(((t<<16)+e&n)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let r=0,i;r<e.length;r+=4){let e=n((i||Math.random())*4294967296);i=e()*987654071,t[r/4]=e()*4294967296|0}return e}},F={};F.ctrGladman=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if((e>>24&255)==255){let t=e>>16&255,n=e>>8&255,r=e&255;t===255?(t=0,n===255?(n=0,r===255?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}else e+=1<<24;return e}incCounter(e){(e[0]=this.incWord(e[0]))===0&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];let i=M.bitLength(t);for(let i=0;i<r;i+=4){this.incCounter(n);let r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return M.clamp(t,i)}};var I={importKey(e){return new I.hmacSha1(N.bytes.toBits(e))},pbkdf2(e,t,n,r){if(n||=1e4,r<0||n<0)throw Error(`invalid params to pbkdf2`);let i=(r>>5)+1<<2,a,o,s,c,l,u=new ArrayBuffer(i),d=new DataView(u),f=0,p=M;for(t=N.bytes.toBits(t),l=1;f<(i||1);l++){for(a=o=e.encrypt(p.concat(t,[l])),s=1;s<n;s++)for(o=e.encrypt(o),c=0;c<o.length;c++)a[c]^=o[c];for(s=0;f<(i||1)&&s<a.length;s++)d.setInt32(f,a[s]),f+=4}return u.slice(0,r/8)}};I.hmacSha1=class{constructor(e){let t=this,n=t._hash=le.sha1,r=[[],[]];t._baseHash=[new n,new n];let i=t._baseHash[0].blockSize/32;e.length>i&&(e=new n().update(e).finalize());for(let t=0;t<i;t++)r[0][t]=e[t]^909522486,r[1][t]=e[t]^1549556828;t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){let e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){let t=this;t._updated=!0,t._resultHash.update(e)}digest(){let e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw Error(`encrypt on already updated hmac called!`);return this.update(e),this.digest(e)}};var de=typeof crypto<`u`&&typeof crypto.getRandomValues==`function`,fe=`Invalid password`,pe=`Invalid signature`,me=`zipjs-abort-check-password`;function L(e){return de?crypto.getRandomValues(e):P.getRandomValues(e)}var R=16,he=`raw`,ge={name:`PBKDF2`},z={name:`HMAC`},_e=`SHA-1`,ve=Object.assign({hash:z},ge),B=Object.assign({iterations:1e3,hash:{name:_e}},ge),ye=[`deriveBits`],V=[8,12,16],be=[16,24,32],xe=10,Se=[0,0,0,0],Ce=typeof crypto!=E,we=Ce&&crypto.subtle,Te=Ce&&we!==void 0,Ee=N.bytes,H=ue.aes,De=F.ctrGladman,Oe=I.hmacSha1,ke=Ce&&Te&&typeof we.importKey==`function`,Ae=Ce&&Te&&typeof we.deriveBits==`function`,je=class extends TransformStream{constructor({password:e,rawPassword:t,signed:n,encryptionStrength:r,checkPasswordOnly:i}){super({start(){Object.assign(this,{ready:new Promise(e=>this.resolveReady=e),password:ze(e,t),signed:n,strength:r-1,pending:new Uint8Array})},async transform(e,t){let n=this,{password:r,strength:a,resolveReady:o,ready:s}=n;r?(await Pe(n,a,r,He(e,0,V[a]+2)),e=He(e,V[a]+2),i?t.error(Error(me)):o()):await s;let c=new Uint8Array(e.length-xe-(e.length-xe)%R);t.enqueue(Ne(n,e,c,0,xe,!0))},async flush(e){let{signed:t,ctr:n,hmac:r,pending:i,ready:a}=this;if(r&&n){await a;let o=He(i,0,i.length-xe),s=He(i,i.length-xe),c=new Uint8Array;if(o.length){let e=We(Ee,o);r.update(e),c=Ue(Ee,n.update(e))}if(t){let e=He(Ue(Ee,r.digest()),0,xe);for(let t=0;t<xe;t++)if(e[t]!=s[t])throw Error(pe)}e.enqueue(c)}}})}},Me=class extends TransformStream{constructor({password:e,rawPassword:t,encryptionStrength:n}){let r;super({start(){Object.assign(this,{ready:new Promise(e=>this.resolveReady=e),password:ze(e,t),strength:n-1,pending:new Uint8Array})},async transform(e,t){let n=this,{password:r,strength:i,resolveReady:a,ready:o}=n,s=new Uint8Array;r?(s=await Fe(n,i,r),a()):await o;let c=new Uint8Array(s.length+e.length-e.length%R);c.set(s,0),t.enqueue(Ne(n,e,c,s.length,0))},async flush(e){let{ctr:t,hmac:n,pending:i,ready:a}=this;if(n&&t){await a;let o=new Uint8Array;if(i.length){let e=t.update(We(Ee,i));n.update(e),o=Ue(Ee,e)}r.signature=Ue(Ee,n.digest()).slice(0,xe),e.enqueue(Be(o,r.signature))}}}),r=this}};function Ne(e,t,n,r,i,a){let{ctr:o,hmac:s,pending:c}=e,l=t.length-i;c.length&&(t=Be(c,t),n=Ve(n,l-l%R));let u;for(u=0;u<=l-R;u+=R){let e=We(Ee,He(t,u,u+R));a&&s.update(e);let i=o.update(e);a||s.update(i),n.set(Ue(Ee,i),u+r)}return e.pending=He(t,u),n}async function Pe(e,t,n,r){let i=await Ie(e,t,n,He(r,0,V[t])),a=He(r,V[t]);if(i[0]!=a[0]||i[1]!=a[1])throw Error(fe)}async function Fe(e,t,n){let r=L(new Uint8Array(V[t]));return Be(r,await Ie(e,t,n,r))}async function Ie(e,t,n,r){e.password=null;let i=await Le(he,n,ve,!1,ye),a=await Re(Object.assign({salt:r},B),i,8*(be[t]*2+2)),o=new Uint8Array(a),s=We(Ee,He(o,0,be[t])),c=We(Ee,He(o,be[t],be[t]*2)),l=He(o,be[t]*2);return Object.assign(e,{keys:{key:s,authentication:c,passwordVerification:l},ctr:new De(new H(s),Array.from(Se)),hmac:new Oe(c)}),l}async function Le(e,t,n,r,i){if(ke)try{return await we.importKey(e,t,n,r,i)}catch{return ke=!1,I.importKey(t)}else return I.importKey(t)}async function Re(e,t,n){if(Ae)try{return await we.deriveBits(e,t,n)}catch{return Ae=!1,I.pbkdf2(t,e.salt,B.iterations,n)}else return I.pbkdf2(t,e.salt,B.iterations,n)}function ze(e,t){return t===void 0?j(e):t}function Be(e,t){let n=e;return e.length+t.length&&(n=new Uint8Array(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Ve(e,t){if(t&&t>e.length){let n=e;e=new Uint8Array(t),e.set(n,0)}return e}function He(e,t,n){return e.subarray(t,n)}function Ue(e,t){return e.fromBits(t)}function We(e,t){return e.toBits(t)}var Ge=12,Ke=class extends TransformStream{constructor({password:e,passwordVerification:t,checkPasswordOnly:n}){super({start(){Object.assign(this,{password:e,passwordVerification:t}),Xe(this,e)},transform(e,t){let r=this;if(r.password){let t=Je(r,e.subarray(0,Ge));if(r.password=null,t.at(-1)!=r.passwordVerification)throw Error(fe);e=e.subarray(Ge)}n?t.error(Error(me)):t.enqueue(Je(r,e))}})}},qe=class extends TransformStream{constructor({password:e,passwordVerification:t}){super({start(){Object.assign(this,{password:e,passwordVerification:t}),Xe(this,e)},transform(e,t){let n=this,r,i;if(n.password){n.password=null;let t=L(new Uint8Array(Ge));t[Ge-1]=n.passwordVerification,r=new Uint8Array(e.length+t.length),r.set(Ye(n,t),0),i=Ge}else r=new Uint8Array(e.length),i=0;r.set(Ye(n,e),i),t.enqueue(r)}})}};function Je(e,t){let n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=Qe(e)^t[r],Ze(e,n[r]);return n}function Ye(e,t){let n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=Qe(e)^t[r],Ze(e,t[r]);return n}function Xe(e,t){let n=[305419896,591751049,878082192];Object.assign(e,{keys:n,crcKey0:new ce(n[0]),crcKey2:new ce(n[2])});for(let n=0;n<t.length;n++)Ze(e,t.charCodeAt(n))}function Ze(e,t){let[n,r,i]=e.keys;e.crcKey0.append([t]),n=~e.crcKey0.get(),r=et(Math.imul(et(r+$e(n)),134775813)+1),e.crcKey2.append([r>>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function Qe(e){let t=e.keys[2]|2;return $e(Math.imul(t,t^1)>>>8)}function $e(e){return e&255}function et(e){return e&4294967295}var tt=`Invalid uncompressed size`,nt=`deflate-raw`,rt=`deflate64-raw`,it=class extends TransformStream{constructor(e,{chunkSize:t,CompressionStreamZlib:n,CompressionStream:r}){super({});let{compressed:i,encrypted:a,useCompressionStream:o,zipCrypto:s,signed:c,level:l}=e,u=this,d,f,p=super.readable;(!a||s)&&c&&(d=new A,p=ct(p,d)),i&&(p=st(p,o,{level:l,chunkSize:t},r,n,r)),a&&(s?p=ct(p,new qe(e)):(f=new Me(e),p=ct(p,f))),ot(u,p,()=>{let e;a&&!s&&(e=f.signature),(!a||s)&&c&&(e=new DataView(d.value.buffer).getUint32(0)),u.signature=e})}},at=class extends TransformStream{constructor(e,{chunkSize:t,DecompressionStreamZlib:n,DecompressionStream:r}){super({});let{zipCrypto:i,encrypted:a,signed:o,signature:s,compressed:c,useCompressionStream:l,deflate64:u}=e,d,f,p=super.readable;a&&(i?p=ct(p,new Ke(e)):(f=new je(e),p=ct(p,f))),c&&(p=st(p,l,{chunkSize:t,deflate64:u},r,n,r)),(!a||i)&&o&&(d=new A,p=ct(p,d)),ot(this,p,()=>{if((!a||i)&&o&&s!=new DataView(d.value.buffer).getUint32(0,!1))throw Error(pe)})}};function ot(e,t,n){t=ct(t,new TransformStream({flush:n})),Object.defineProperty(e,`readable`,{get(){return t}})}function st(e,t,n,r,i,a){let o=t&&r?r:i||a,s=n.deflate64?rt:nt;try{e=ct(e,new o(s,n))}catch(r){if(t)if(i)e=ct(e,new i(s,n));else if(a)e=ct(e,new a(s,n));else throw r;else throw r}return e}function ct(e,t){return e.pipeThrough(t)}var lt=`message`,ut=`start`,dt=`data`,ft=`close`,pt=`deflate`,mt=`inflate`,ht=class extends TransformStream{constructor(e,t){super({});let n=this,{codecType:r}=e,i;r.startsWith(`deflate`)?i=it:r.startsWith(`inflate`)&&(i=at),n.outputSize=0;let a=0,o=new i(e,t),s=super.readable,c=new TransformStream({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){Object.assign(n,{inputSize:a})}}),l=new TransformStream({transform(t,r){if(t&&t.length&&(r.enqueue(t),n.outputSize+=t.length,e.outputSize!==void 0&&n.outputSize>e.outputSize))throw Error(tt)},flush(){let{signature:e}=o;Object.assign(n,{signature:e,inputSize:a})}});Object.defineProperty(n,`readable`,{get(){return s.pipeThrough(c).pipeThrough(o).pipeThrough(l)}})}},gt=class extends TransformStream{constructor(e){let t;super({transform:n,flush(e){t&&t.length&&e.enqueue(t)}});function n(r,i){if(t){let e=new Uint8Array(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(i.enqueue(r.slice(0,e)),n(r.slice(e),i)):t=r}}},_t={type:`module`},vt,yt,bt,xt=!0;try{xt=typeof structuredClone==`function`&&structuredClone(new DOMException(``,`AbortError`)).code!==void 0}catch{}var St=()=>{};function Ct({initModule:e}){St=e}var wt=class{constructor(e,{readable:t,writable:n},{options:r,config:i,streamOptions:a,useWebWorkers:o,transferStreams:s,workerURI:c},l){let{signal:u}=a;return Object.assign(e,{busy:!0,readable:t.pipeThrough(new gt(i.chunkSize)).pipeThrough(new Tt(a),{signal:u}),writable:n,options:Object.assign({},r),workerURI:c,transferStreams:s,terminate(){return new Promise(t=>{let{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})},onTaskFinished(){let{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,l(e)}}),vt===void 0&&(vt=typeof Worker!=E),(o&&vt?Ot:Dt)(e,i)}},Tt=class extends TransformStream{constructor({onstart:e,onprogress:t,size:n,onend:r}){let i=0;super({async start(){e&&await Et(e,n)},async transform(e,r){i+=e.length,t&&await Et(t,i,n),r.enqueue(e)},async flush(){r&&await Et(r,i)}})}};async function Et(e,...t){try{await e(...t)}catch{}}function Dt(e,t){return{run:()=>kt(e,t)}}function Ot(e,t){let{baseURI:n,chunkSize:r}=t,{wasmURI:i}=t;if(!e.interface){typeof i==`function`&&(i=i());let a;try{a=Mt(e.workerURI,n,e)}catch{return vt=!1,Dt(e,t)}Object.assign(e,{worker:a,interface:{run:()=>At(e,{chunkSize:r,wasmURI:i,baseURI:n})}})}return e.interface}async function kt({options:e,readable:t,writable:n,onTaskFinished:r},i){let a;try{if(!e.useCompressionStream)try{await St(i)}catch{e.useCompressionStream=!0}a=new ht(e,i),await t.pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});let{signature:r,inputSize:o,outputSize:s}=a;return{signature:r,inputSize:o,outputSize:s}}catch(e){throw a&&(e.outputSize=a.outputSize),e}finally{r()}}async function At(e,t){let n,r,i=new Promise((e,t)=>{n=e,r=t});Object.assign(e,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});let{readable:a,options:o}=e,{writable:s,closed:c}=jt(e.writable),l=Nt({type:ut,options:o,config:t,readable:a,writable:s},e);l||Object.assign(e,{reader:a.getReader(),writer:s.getWriter()});let u=await i;return l||await s.getWriter().close(),await c,u}function jt(e){let{writable:t,readable:n}=new TransformStream;return{writable:t,closed:n.pipeTo(e,{preventClose:!0})}}function Mt(e,t,n,r,i=!0){let a,o,s;if(yt===void 0){let c=typeof e==te;o=c?e(i):e;let l=o.startsWith(`data:`),u=o.startsWith(`blob:`);if(l||u){r===void 0&&(r=!1),r&&(s=_t);try{a=new Worker(o,s)}catch(i){if(u)try{URL.revokeObjectURL(o)}catch{}if(c&&u)return Mt(e,t,n,r,!1);if(r)throw i;return Mt(e,t,n,!0,!1)}}else{r===void 0&&(r=!0),r&&(s=_t);try{o=new URL(o,t)}catch{}try{a=new Worker(o,s)}catch(a){if(r)throw a;return Mt(e,t,n,!1,i)}}yt=o,bt=s}else a=new Worker(yt,bt);return a.addEventListener(lt,e=>Pt(e,n)),a}function Nt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{let{value:n,readable:r,writable:a}=e,o=[];if(n&&(e.value=n,o.push(e.value.buffer)),i&&xt?(r&&o.push(r),a&&o.push(a)):e.readable=e.writable=null,o.length)try{return t.postMessage(e,o),!0}catch{xt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}async function Pt({data:e},t){let{type:n,value:r,messageId:i,result:a,error:o}=e,{reader:s,writer:c,resolveResult:l,rejectResult:u,onTaskFinished:d}=t;try{if(o){let{message:e,stack:t,code:n,name:r,outputSize:i}=o,a=Error(e);Object.assign(a,{stack:t,code:n,name:r,outputSize:i}),f(a)}else{if(n==`pull`){let{value:e,done:n}=await s.read();Nt({type:dt,value:e,done:n,messageId:i},t)}n==`data`&&(await c.ready,await c.write(new Uint8Array(r)),Nt({type:`ack`,messageId:i},t)),n==`close`&&f(null,a)}}catch(e){Nt({type:ft,messageId:i},t),f(e)}function f(e,t){e?u(e):l(t),c&&c.releaseLock(),d()}}var Ft=[],It=[],Lt=0;async function Rt(e,t){let{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:o,compressed:s,signed:c,encrypted:l}=n,{workerURI:u,maxWorkers:d}=r;return t.transferStreams=i||i===void 0,t.useWebWorkers=!(!s&&!c&&!l&&!t.transferStreams)&&(a||a===void 0&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&u?u:void 0,n.useCompressionStream=o||o===void 0&&r.useCompressionStream,(await f()).run();async function f(){let n=Ft.find(e=>!e.busy);if(n)return Bt(n),new wt(n,e,t,p);if(Ft.length<d){let n={indexWorker:Lt};return Lt++,Ft.push(n),new wt(n,e,t,p)}else return new Promise(n=>It.push({resolve:n,stream:e,workerOptions:t}))}function p(e){if(It.length){let[{resolve:t,stream:n,workerOptions:r}]=It.splice(0,1);t(new wt(e,n,r,p))}else e.worker?(Bt(e),zt(e,t)):Ft=Ft.filter(t=>t!=e)}}function zt(e,t){let{config:n}=t,{terminateWorkerTimeout:r}=n;Number.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout(async()=>{Ft=Ft.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}function Bt(e){let{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}var Vt=`Writer iterator completed too soon`,Ht=`text/plain`,Ut=`Content-Type`,Wt=64*1024,Gt=`writable`,Kt=class{constructor(){this.size=0}init(){this.initialized=!0}},qt=class extends Kt{get readable(){let e=this,{chunkSize:t=Wt}=e,n=new ReadableStream({start(){this.chunkOffset=0},async pull(r){let{offset:i=0,size:a,diskNumberStart:o}=n,{chunkOffset:s}=this,c=a===void 0?t:Math.min(t,a-s),l=await nn(e,i+s,c,o);r.enqueue(l),s+t>a||a===void 0&&!l.length&&c?r.close():this.chunkOffset+=t}});return n}},Jt=class extends qt{constructor(e){super(),Object.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){let n=this,r=e+t,i=await(e||r<n.size?n.blob.slice(e,r):n.blob).arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new Uint8Array(i)}},Yt=class extends Kt{constructor(e){super();let t=this,n=new TransformStream,r=[];e&&r.push([Ut,e]),Object.defineProperty(t,Gt,{get(){return n.writable}}),t.blob=new Response(n.readable,{headers:r}).blob()}getData(){return this.blob}},Xt=class extends Jt{constructor(e){super(new Blob([e],{type:Ht}))}},Zt=class extends qt{constructor(e){super(),this.readers=e}async init(){let e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await Promise.all(t.map(async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size})),super.init()}async readUint8Array(e,t,n=0){let r=this,{readers:i}=this,a,o=n;o==-1&&(o=i.length-1);let s=e;for(;i[o]&&s>=i[o].size;)s-=i[o].size,o++;let c=i[o];if(c){let i=c.size;if(s+t<=i)a=await nn(c,s,t);else{let o=i-s;a=new Uint8Array(t);let l=await nn(c,s,o);a.set(l,0);let u=await r.readUint8Array(e+o,t-o,n);a.set(u,o),l.length+u.length<t&&(a=a.subarray(0,l.length+u.length))}}else a=new Uint8Array;return r.lastDiskNumber=Math.max(o,r.lastDiskNumber),a}},Qt=class extends Kt{constructor(e,t=4294967295){super();let n=this;Object.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});let r,i,a,o=new WritableStream({async write(t){let{availableSize:o}=n;if(a)t.length>=o?(await s(t.subarray(0,o)),await c(),n.diskOffset+=r.size,n.diskNumber++,a=null,await this.write(t.subarray(o))):await s(t);else{let{value:o,done:s}=await e.next();if(s&&!o)throw Error(Vt);r=o,r.size=0,r.maxSize&&(n.maxSize=r.maxSize),n.availableSize=n.maxSize,await tn(r),i=o.writable,a=i.getWriter(),await this.write(t)}},async close(){await a.ready,await c()}});Object.defineProperty(n,Gt,{get(){return o}});async function s(e){let t=e.length;t&&(await a.ready,await a.write(e),r.size+=t,n.size+=t,n.availableSize-=t)}async function c(){await a.close()}}},$t=class{constructor(e){return Array.isArray(e)&&(e=new Zt(e)),e instanceof ReadableStream&&(e={readable:e}),e}},en=class{constructor(e){return e.writable===void 0&&typeof e.next==`function`&&(e=new Qt(e)),e instanceof WritableStream&&(e={writable:e}),e.size===void 0&&(e.size=0),e instanceof Qt||Object.assign(e,{diskNumber:0,diskOffset:0,availableSize:T,maxSize:T}),e}};async function tn(e,t){if(e.init&&!e.initialized)await e.init(t);else return Promise.resolve()}function nn(e,t,n,r){return e.readUint8Array(t,n,r)}var rn=`\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ `.split(``),an=rn.length==256;function on(e){if(an){let t=``;for(let n=0;n<e.length;n++)t+=rn[e[n]];return t}else return new TextDecoder().decode(e)}function sn(e,t){return t&&t.trim().toLowerCase()==`cp437`?on(e):new TextDecoder(t).decode(e)}var cn=`filename`,ln=`rawFilename`,un=`comment`,dn=`rawComment`,fn=`uncompressedSize`,pn=`compressedSize`,mn=`offset`,hn=`diskNumberStart`,gn=`lastModDate`,_n=`rawLastModDate`,vn=`lastAccessDate`,yn=`rawLastAccessDate`,bn=`creationDate`,xn=`rawCreationDate`,Sn=`internalFileAttributes`,Cn=`externalFileAttributes`,wn=`msdosAttributesRaw`,Tn=`msdosAttributes`,En=`msDosCompatible`,Dn=`zip64`,On=`encrypted`,kn=`version`,An=`versionMadeBy`,jn=`zipCrypto`,Mn=`directory`,Nn=`executable`,Pn=`compressionMethod`,Fn=`signature`,In=`extraField`,Ln=`extraFieldInfoZip`,Rn=`extraFieldUnix`,zn=`unixMode`,Bn=`setuid`,Vn=`setgid`,Hn=`sticky`,Un=[cn,ln,fn,pn,gn,_n,un,dn,vn,bn,xn,mn,hn,Sn,Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn,Nn,Pn,Fn,In,Rn,Ln,`uid`,`gid`,zn,Bn,Vn,Hn,`bitFlag`,`filenameUTF8`,`commentUTF8`,`rawExtraField`,`extraFieldZip64`,`extraFieldUnicodePath`,`extraFieldUnicodeComment`,`extraFieldAES`,`extraFieldNTFS`,`extraFieldExtendedTimestamp`],Wn=class{constructor(e){Un.forEach(t=>this[t]=e[t])}},Gn=`filenameEncoding`,Kn=`commentEncoding`,qn=`extractPrependedData`,Jn=`extractAppendedData`,Yn=`password`,Xn=`rawPassword`,Zn=`passThrough`,Qn=`signal`,$n=`checkPasswordOnly`,er=`checkOverlappingEntryOnly`,tr=`checkOverlappingEntry`,nr=`useWebWorkers`,rr=`useCompressionStream`,ir=`transferStreams`,ar=`encryptionStrength`,or=`extendedTimestamp`,sr=`keepOrder`,cr=`level`,lr=`bufferedWrite`,ur=`createTempStream`,dr=`dataDescriptorSignature`,fr=`useUnicodeFileNames`,pr=`dataDescriptor`,mr=`encodeText`,hr=`offset`,gr=`usdz`,_r=`unixExtraFieldType`,vr=`File format is not recognized`,yr=`End of central directory not found`,br=`End of Zip64 central directory locator not found`,xr=`Central directory header not found`,Sr=`Local file header not found`,Cr=`Zip64 extra field not found`,wr=`File contains encrypted entry`,Tr=`Encryption method not supported`,Er=`Compression method not supported`,Dr=`Split zip file`,Or=`Overlapping entry found`,kr=`utf-8`,Ar=`UTF8`,jr=`cp437`,Mr=[[fn,n],[pn,n],[mn,n],[hn,r]],Nr={[r]:{getValue:U,bytes:4},[n]:{getValue:Qr,bytes:8}},Pr=class{constructor(e,t={}){Object.assign(this,{reader:new $t(e),options:t,config:ie(),readRanges:[]})}async*getEntriesGenerator(e={}){let t=this,{reader:n}=t,{config:i}=t;if(await tn(n),(n.size===void 0||!n.readUint8Array)&&(n=new Jt(await new Response(n.readable).blob()),await tn(n)),n.size<22)throw Error(vr);n.chunkSize=ae(i);let a=await Kr(n,c,n.size,22,r*16);if(!a)throw U(W(await nn(n,0,4)))==134695760?Error(Dr):Error(yr);let o=W(a),s=U(o,12),l=U(o,16),u=a.offset,d=Zr(o,20),f=u+22+d,p=Zr(o,4),m=n.lastDiskNumber||0,h=Zr(o,6),g=Zr(o,8),_=0,v=0;if(l==4294967295||s==4294967295||g==65535||h==65535){let e=W(await nn(n,a.offset-20,20));if(U(e,0)==117853008){l=Qr(e,8);let t=await nn(n,l,56,-1),r=W(t),i=a.offset-20-56;if(U(r,0)!=101075792&&l!=i){let e=l;l=i,l>e&&(_=l-e),t=await nn(n,l,56,-1),r=W(t)}if(U(r,0)!=101075792)throw Error(br);p==65535&&(p=U(r,16)),h==65535&&(h=U(r,20)),g==65535&&(g=Qr(r,32)),s==4294967295&&(s=Qr(r,40)),l-=s}}if(l>=n.size&&(_=n.size-l-s-22,l=n.size-s-22),m!=p)throw Error(Dr);if(l<0)throw Error(vr);let y=0,C=await nn(n,l,s,h),w=W(C);if(s){let e=a.offset-s;if(U(w,y)!=33639248&&l!=e){let t=l;l=e,l>t&&(_+=l-t),C=await nn(n,l,s,h),w=W(C)}}let T=a.offset-l-(n.lastDiskOffset||0);if(s!=T&&T>=0&&(s=T,C=await nn(n,l,s,h),w=W(C)),l<0||l>=n.size)throw Error(vr);let E=qr(t,e,Gn),te=qr(t,e,Kn);for(let a=0;a<g;a++){let o=new Fr(n,i,t.options);if(U(w,y)!=33639248)throw Error(xr);Ir(o,w,y+6);let s=!!o.bitFlag.languageEncodingFlag,c=y+46,l=c+o.filenameLength,u=l+o.extraFieldLength,d=Zr(w,y+4),f=d>>8==0,p=d>>8==3,m=C.subarray(c,l),h=Zr(w,y+32),T=u+h,D=C.subarray(u,T),ne=s,re=s,ie=U(w,y+38),ae=ie&255,O={readOnly:!!(ae&1),hidden:!!(ae&2),system:!!(ae&4),directory:!!(ae&16),archive:!!(ae&32)},k=U(w,y+42)+_,oe=qr(t,e,`decodeText`)||sn,se=ne?kr:E||jr,ce=re?kr:te||jr,A=oe(m,se);A===void 0&&(A=sn(m,se));let j=oe(D,ce);j===void 0&&(j=sn(D,ce)),Object.assign(o,{versionMadeBy:d,msDosCompatible:f,compressedSize:0,uncompressedSize:0,commentLength:h,offset:k,diskNumberStart:Zr(w,y+34),internalFileAttributes:Zr(w,y+36),externalFileAttributes:ie,msdosAttributesRaw:ae,msdosAttributes:O,rawFilename:m,filenameUTF8:ne,commentUTF8:re,rawExtraField:C.subarray(l,u),rawComment:D,filename:A,comment:j}),v=Math.max(k,v),Lr(o,o,w,y+6);let M=o.externalFileAttributes>>16&r;o.unixMode===void 0&&M&16877&&(o.unixMode=M);let N=!!(o.unixMode&S),le=!!(o.unixMode&ee),ue=!!(o.unixMode&512),P=o.unixMode===void 0?p&&(M&73)!=0:(o.unixMode&73)!=0,F=o.unixMode!==void 0&&(o.unixMode&61440)==16384,I=(M&b)==x;Object.assign(o,{setuid:N,setgid:le,sticky:ue,unixExternalUpper:M,internalFileAttribute:o.internalFileAttributes,externalFileAttribute:o.externalFileAttributes,executable:P,directory:F||I||f&&O.directory||A.endsWith(`/`)&&!o.uncompressedSize,zipCrypto:o.encrypted&&!o.extraFieldAES});let de=new Wn(o);de.getData=(e,n)=>o.getData(e,de,t.readRanges,n),de.arrayBuffer=async e=>{let n=new TransformStream,[r]=await Promise.all([new Response(n.readable).arrayBuffer(),o.getData(n,de,t.readRanges,e)]);return r},y=T;let{onprogress:fe}=e;if(fe)try{await fe(a+1,g,new Wn(o))}catch{}yield de}let D=qr(t,e,qn),ne=qr(t,e,Jn);return D&&(t.prependedData=v>0?await nn(n,0,v):new Uint8Array),t.comment=d?await nn(n,u+22,d):new Uint8Array,ne&&(t.appendedData=f<n.size?await nn(n,f,n.size-f):new Uint8Array),!0}async getEntries(e={}){let t=[];for await(let n of this.getEntriesGenerator(e))t.push(n);return t}async close(){}},Fr=class{constructor(e,t,n){Object.assign(this,{reader:e,config:t,options:n})}async getData(e,t,n,r={}){let i=this,{reader:a,offset:o,diskNumberStart:s,extraFieldAES:c,extraFieldZip64:l,compressionMethod:u,config:d,bitFlag:f,signature:p,rawLastModDate:m,uncompressedSize:h,compressedSize:g}=i,{dataDescriptor:_}=f,v=t.localDirectory={},y=W(await nn(a,o,30,s)),b=qr(i,r,Yn),x=qr(i,r,Xn),S=qr(i,r,Zn);if(b=b&&b.length&&b,x=x&&x.length&&x,c&&c.originalCompressionMethod!=99||u!=0&&u!=8&&u!=9&&!S)throw Error(Er);if(U(y,0)!=67324752)throw Error(Sr);Ir(v,y,4);let{extraFieldLength:ee,filenameLength:C,lastAccessDate:w,creationDate:T}=v;v.rawExtraField=ee?await nn(a,o+30+C,ee,s):new Uint8Array,Lr(i,v,y,4,!0),Object.assign(t,{lastAccessDate:w,creationDate:T});let E=i.encrypted&&v.encrypted&&!S,te=E&&!c;if(S||(t.zipCrypto=te),E){if(!te&&c.strength===void 0)throw Error(Tr);if(!b&&!x)throw Error(wr)}let D=o+30+C+ee,ne=g,re=a.readable;Object.assign(re,{diskNumberStart:s,offset:D,size:ne});let ie=qr(i,r,Qn),ae=qr(i,r,$n),O=qr(i,r,tr),k=qr(i,r,er);k&&(O=!0);let{onstart:oe,onprogress:se,onend:ce}=r,A=u==9,j=qr(i,r,rr);A&&(j=!1);let M={options:{codecType:mt,password:b,rawPassword:x,zipCrypto:te,encryptionStrength:c&&c.strength,signed:qr(i,r,`checkSignature`)&&!S,passwordVerification:te&&(_?m>>>8&255:p>>>24&255),outputSize:S?g:h,signature:p,compressed:u!=0&&!S,encrypted:i.encrypted&&!S,useWebWorkers:qr(i,r,nr),useCompressionStream:j,transferStreams:qr(i,r,ir),deflate64:A,checkPasswordOnly:ae},config:d,streamOptions:{signal:ie,size:ne,onstart:oe,onprogress:se,onend:ce}};O&&await Gr({reader:a,fileEntry:t,offset:o,diskNumberStart:s,signature:p,compressedSize:g,uncompressedSize:h,dataOffset:D,dataDescriptor:_||v.bitFlag.dataDescriptor,extraFieldZip64:l||v.extraFieldZip64,readRanges:n});let N;try{if(!k){ae&&(e=new WritableStream),e=new en(e),await tn(e,S?g:h),{writable:N}=e;let{outputSize:t}=await Rt({readable:re,writable:N},M);if(e.size+=t,t!=(S?g:h))throw Error(tt)}}catch(t){if(t.outputSize!==void 0&&(e.size+=t.outputSize),!ae||t.message!=`zipjs-abort-check-password`)throw t}finally{!qr(i,r,`preventClose`)&&N&&!N.locked&&await N.getWriter().close()}return ae||k?void 0:e.getData?e.getData():N}};function Ir(e,t,n){let r=e.rawBitFlag=Zr(t,n+2),i=(r&1)==1,a=U(t,n+6);Object.assign(e,{encrypted:i,version:Zr(t,n),bitFlag:{level:(r&6)>>1,dataDescriptor:(r&8)==8,languageEncodingFlag:(r&y)==y},rawLastModDate:a,lastModDate:Jr(a),filenameLength:Zr(t,n+22),extraFieldLength:Zr(t,n+24)})}function Lr(e,t,n,r,i){let{rawExtraField:a}=t,o=t.extraField=new Map,s=W(new Uint8Array(a)),c=0;try{for(;c<a.length;){let e=Zr(s,c),t=Zr(s,c+2);o.set(e,{type:e,data:a.slice(c+4,c+4+t)}),c+=4+t}}catch{}let l=Zr(n,r+4);Object.assign(t,{signature:U(n,r+10),compressedSize:U(n,r+14),uncompressedSize:U(n,r+18)});let u=o.get(1);u&&(Rr(u,t),t.extraFieldZip64=u);let d=o.get(m);d&&(zr(d,cn,ln,t,e),t.extraFieldUnicodePath=d);let y=o.get(h);y&&(zr(y,un,dn,t,e),t.extraFieldUnicodeComment=y);let b=o.get(f);b?(Br(b,t,l),t.extraFieldAES=b):t.compressionMethod=l;let x=o.get(10);x&&(Vr(x,t),t.extraFieldNTFS=x);let S=o.get(v);if(S)Hr(S,t,!1),t.extraFieldUnix=S;else{let e=o.get(_);e&&(Hr(e,t,!0),t.extraFieldInfoZip=e)}let ee=o.get(p);ee&&(Wr(ee,t,i),t.extraFieldExtendedTimestamp=ee);let C=o.get(g);C&&(t.extraFieldUSDZ=C)}function Rr(e,t){t.zip64=!0;let n=W(e.data),r=Mr.filter(([e,n])=>t[e]==n);for(let i=0,a=0;i<r.length;i++){let[o,s]=r[i];if(t[o]==s){let r=Nr[s];t[o]=e[o]=r.getValue(n,a),a+=r.bytes}else if(e[o])throw Error(Cr)}}function zr(e,t,n,r,i){let a=W(e.data),o=new ce;o.append(i[n]);let s=W(new Uint8Array(4));s.setUint32(0,o.get(),!0);let c=U(a,1);Object.assign(e,{version:Xr(a,0),[t]:sn(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&c==U(s,0)}),e.valid&&(r[t]=e[t],r[t+Ar]=!0)}function Br(e,t,n){let r=W(e.data),i=Xr(r,4);Object.assign(e,{vendorVersion:Xr(r,0),vendorId:Xr(r,2),strength:i,originalCompressionMethod:n,compressionMethod:Zr(r,5)}),t.compressionMethod=e.compressionMethod}function Vr(e,t){let n=W(e.data),r=4,i;try{for(;r<e.data.length&&!i;){let t=Zr(n,r),a=Zr(n,r+2);t==1&&(i=e.data.slice(r+4,r+4+a)),r+=4+a}}catch{}try{if(i&&i.length==24){let n=W(i),r=n.getBigUint64(0,!0),a=n.getBigUint64(8,!0),o=n.getBigUint64(16,!0);Object.assign(e,{rawLastModDate:r,rawLastAccessDate:a,rawCreationDate:o});let s={lastModDate:Yr(r),lastAccessDate:Yr(a),creationDate:Yr(o)};Object.assign(e,s),Object.assign(t,s)}}catch{}}function Hr(e,t,n){try{let r=W(new Uint8Array(e.data)),i=0,a=Xr(r,i++),o=Xr(r,i++),s=e.data.subarray(i,i+o);i+=o;let c=Ur(s),l=Xr(r,i++),u=e.data.subarray(i,i+l);i+=l;let d=Ur(u),f;if(!n&&i+2<=e.data.length){let t=e.data;f=new DataView(t.buffer,t.byteOffset+i,2).getUint16(0,!0)}Object.assign(e,{version:a,uid:c,gid:d,unixMode:f}),c!==void 0&&(t.uid=c),d!==void 0&&(t.gid=d),f!==void 0&&(t.unixMode=f)}catch{}}function Ur(e){let t=new Uint8Array(4);return t.set(e,0),new DataView(t.buffer,t.byteOffset,4).getUint32(0,!0)}function Wr(e,t,n){let r=W(e.data),i=Xr(r,0),a=[],o=[];n?((i&1)==1&&(a.push(gn),o.push(_n)),(i&2)==2&&(a.push(vn),o.push(yn)),(i&4)==4&&(a.push(bn),o.push(xn))):e.data.length>=5&&(a.push(gn),o.push(_n));let s=1;a.forEach((n,i)=>{if(e.data.length>=s+4){let a=U(r,s);t[n]=e[n]=new Date(a*1e3);let c=o[i];e[c]=a}s+=4})}async function Gr({reader:e,fileEntry:t,offset:n,diskNumberStart:r,signature:i,compressedSize:a,uncompressedSize:o,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,readRanges:u}){let d=0;if(r)for(let t=0;t<r;t++){let n=e.readers[t];d+=n.size}let f=0;if(c&&(f=l?20:12),f){let n=await nn(e,s+a,f+4,r);if(U(W(n),0)==134695760){let e=U(W(n),4),r,s;l?(r=Qr(W(n),8),s=Qr(W(n),16)):(r=U(W(n),8),s=U(W(n),12)),(t.encrypted&&!t.zipCrypto||e==i)&&r==a&&s==o&&(f+=4)}}let p={start:d+n,end:d+s+a+f,fileEntry:t};for(let e of u)if(e.fileEntry!=t&&p.start>=e.start&&p.start<e.end){let t=Error(Or);throw t.overlappingEntry=e.fileEntry,t}u.push(p)}async function Kr(e,t,n,r,i){let a=new Uint8Array(4);$r(W(a),0,t);let o=r+i;return await s(r)||await s(Math.min(o,n));async function s(t){let i=n-t,o=await nn(e,i,t);for(let e=o.length-r;e>=0;e--)if(o[e]==a[0]&&o[e+1]==a[1]&&o[e+2]==a[2]&&o[e+3]==a[3])return{offset:i+e,buffer:o.slice(e,e+r).buffer}}}function qr(e,t,n){return t[n]===void 0?e.options[n]:t[n]}function Jr(e){let t=(e&4294901760)>>16,n=e&r;try{return new Date(1980+((t&65024)>>9),((t&480)>>5)-1,t&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0)}catch{}}function Yr(e){return new Date(Number(e/BigInt(1e4)-BigInt(0xa9730b66800)))}function Xr(e,t){return e.getUint8(t)}function Zr(e,t){return e.getUint16(t,!0)}function U(e,t){return e.getUint32(t,!0)}function Qr(e,t){return Number(e.getBigUint64(t,!0))}function $r(e,t,n){e.setUint32(t,n,!0)}function W(e){return new DataView(e.buffer)}var ei=`File already exists`,ti=`Zip file comment exceeds 64KB`,ni=`File entry comment exceeds 64KB`,ri=`File entry name exceeds 64KB`,ii=`Version exceeds 65535`,ai=`The strength must equal 1, 2, or 3`,oi=`Extra field type exceeds 65535`,si=`Extra field data exceeds 64KB`,ci=`Zip64 is not supported (set the 'zip64' option to 'true')`,li=`Undefined uncompressed size`,ui=`Zip file not empty`,di=`Invalid uid (must be integer 0..2^32-1)`,fi=`Invalid gid (must be integer 0..2^32-1)`,pi=`Invalid UNIX mode (must be integer 0..65535)`,mi=`Invalid unixExtraFieldType (must be 'infozip' or 'unix')`,hi=`Invalid msdosAttributesRaw (must be integer 0..255)`,gi=`Invalid msdosAttributes (must be an object with boolean flags)`,_i=new Uint8Array([7,0,2,0,65,69,3,0,0]),vi=`infozip`,yi=`unix`,bi=0,xi=[],Si=class{constructor(e,t={}){e=new en(e);let n=e.availableSize!==void 0&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==void 0&&e.maxSize>0&&e.maxSize!==1/0;Object.assign(this,{writer:e,addSplitZipSignature:n,options:t,config:ie(),files:new Map,filenames:new Set,offset:t.offset===void 0?e.size||e.writable.size||0:t[hr],pendingEntriesSize:0,pendingAddFileCalls:new Set,bufferedWrites:0})}async prependZip(e){if(this.filenames.size)throw Error(ui);e=new $t(e);let t=new Pr(e.readable),n=await t.getEntries();await t.close(),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.filenames=new Set(n.map(e=>e.filename)),this.files=new Map(n.map(e=>{let{version:t,compressionMethod:n,lastModDate:r,lastAccessDate:i,creationDate:a,rawFilename:o,bitFlag:s,encrypted:c,uncompressedSize:l,compressedSize:u,diskOffset:d,diskNumber:f,zip64:p}=e,{rawExtraFieldZip64:m,rawExtraFieldAES:h,rawExtraFieldExtendedTimestamp:g,rawExtraFieldNTFS:_,rawExtraFieldUnix:v,rawExtraField:y}=e,{level:b,languageEncodingFlag:x,dataDescriptor:S}=s;m||=new Uint8Array,h||=new Uint8Array,g||=new Uint8Array,_||=new Uint8Array,v=e.rawExtraFieldUnix||new Uint8Array,y||=new Uint8Array;let ee=Y(m,h,g,_,v,y),C=p&&l>4294967295,w=p&&u>4294967295,{headerArray:T,headerView:E}=Bi({version:t,bitFlag:Vi(b,x,S,c,n),compressionMethod:n,uncompressedSize:l,compressedSize:u,lastModDate:r,rawFilename:o,zip64CompressedSize:w,zip64UncompressedSize:C,extraFieldLength:ee});return Object.assign(e,{zip64UncompressedSize:C,zip64CompressedSize:w,zip64Offset:p&&this.offset-d>4294967295,zip64DiskNumberStart:p&&f>65535,rawExtraFieldZip64:m,rawExtraFieldAES:h,rawExtraFieldExtendedTimestamp:g,rawExtraFieldNTFS:_,rawExtraFieldUnix:v,rawExtraField:y,extendedTimestamp:g.length>0||_.length>0,extraFieldExtendedTimestampFlag:1+(i?2:0)+(a?4:0),headerArray:T,headerView:E}),[e.filename,e]}))}async add(e=``,t,n={}){let r=this,{pendingAddFileCalls:i,config:a}=r;bi<a.maxWorkers?bi++:await new Promise(e=>xi.push(e));let o;try{if(e=e.trim(),r.filenames.has(e))throw Error(ei);return r.filenames.add(e),o=Ci(r,e,t,n),i.add(o),await o}catch(t){throw r.filenames.delete(e),t}finally{i.delete(o);let e=xi.shift();e?e():bi--}}remove(e){let{filenames:t,files:n}=this;if(typeof e==`string`&&(e=n.get(e)),e&&e.filename!==void 0){let{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=new Uint8Array,t={}){let n=this,{pendingAddFileCalls:r,writer:i}=this,{writable:a}=i;for(;r.size;)await Promise.allSettled(Array.from(r));return await Ni(n,e,t),G(n,t,`preventClose`)||await a.getWriter().close(),i.getData?i.getData():a}};async function Ci(e,t,i,a){t=t.trim();let o=G(e,a,En),s=G(e,a,An,o?20:768),c=G(e,a,Nn),l=G(e,a,`uid`),u=G(e,a,`gid`),d=G(e,a,zn),f=G(e,a,_r),p=G(e,a,Bn),m=G(e,a,Vn),h=G(e,a,Hn);if(l!==void 0&&(l<0||l>4294967295))throw Error(di);if(u!==void 0&&(u<0||u>4294967295))throw Error(fi);if(d!==void 0&&(d<0||d>65535))throw Error(pi);if(f!==void 0&&f!==vi&&f!==yi)throw Error(mi);let g=G(e,a,wn),_=G(e,a,Tn),v=l!==void 0||u!==void 0||d!==void 0||f,y=g!==void 0||_!==void 0;if(v?(o=!1,s=s&r|768):y&&(o=!0,s&=255),g!==void 0&&(g<0||g>255))throw Error(hi);if(_&&typeof _!=`object`)throw Error(gi);if(s>65535)throw Error(ii);let b=G(e,a,Cn,0);!a.directory&&t.endsWith(`/`)&&(a[Mn]=!0);let C=G(e,a,Mn);C?(t.endsWith(`/`)||(t+=`/`),b===0&&(b=16,o||(b|=(x|493)<<16))):!o&&b===0&&(b=c?493<<16:420<<16);let w;o||(w=b>>16&r,d=d===void 0?w:d&r,p?d|=S:p=!!(d&S),m?d|=ee:m=!!(d&ee),h?d|=512:h=!!(d&512),C&&(d|=x),b=(d&r)<<16|b&255),{msdosAttributesRaw:g,msdosAttributes:_}=ki(g,_),y&&(b=b&n|g&255);let T=G(e,a,mr,j),E=T(t);if(E===void 0&&(E=j(t)),Y(E)>65535)throw Error(ri);let te=a.comment||``,D=T(te);if(D===void 0&&(D=j(te)),Y(D)>65535)throw Error(ni);let ne=G(e,a,kn,20);if(ne>65535)throw Error(ii);let re=G(e,a,gn,new Date),ie=G(e,a,vn),ae=G(e,a,bn),O=G(e,a,Sn,0),k=G(e,a,Zn),oe,se;k||(oe=G(e,a,Yn),se=G(e,a,Xn));let ce=G(e,a,ar,3),A=G(e,a,jn),M=G(e,a,or,!0),N=G(e,a,sr,!0),le=G(e,a,nr),ue=G(e,a,ir,!0),P=G(e,a,lr),F=G(e,a,ur),I=G(e,a,dr,!1),de=G(e,a,Qn),fe=G(e,a,fr,!0),pe=G(e,a,Pn),me=G(e,a,cr),L=G(e,a,rr),R=G(e,a,pr);P&&R===void 0&&(R=!1),(R===void 0||A)&&(R=!0),me!==void 0&&me!=6&&(L=!1),!L&&e.config.CompressionStream===void 0&&e.config.CompressionStreamZlib===void 0&&(me=0);let he=G(e,a,Dn);if(!A&&(oe!==void 0||se!==void 0)&&!(ce>=1&&ce<=3))throw Error(ai);let ge=new Uint8Array,z=a[In];if(z){let e=0,t=0;z.forEach(t=>e+=4+Y(t)),ge=new Uint8Array(e),z.forEach((e,n)=>{if(n>65535)throw Error(oi);if(Y(e)>65535)throw Error(si);J(ge,new Uint16Array([n]),t),J(ge,new Uint16Array([Y(e)]),t+2),J(ge,e,t+4),t+=4+Y(e)})}let _e=0,ve=0,B=0;if(k&&(B=a[fn],B===void 0))throw Error(li);let ye=he===!0;i&&(i=new $t(i),await tn(i),k?(a.uncompressedSize=B,_e=Ii(B)):i.size===void 0?(R=!0,(he||he===void 0)&&(he=!0,B=_e=n+1)):(a.uncompressedSize=B=i.size,_e=Ii(B)));let{diskOffset:V,diskNumber:be}=e.writer,xe=ye||B>4294967295,Se=ye||_e>4294967295;if(xe||Se){if(he===!1)throw Error(ci);he=!0}he||=!1;let Ce=G(e,a,On);a=Object.assign({},a,{rawFilename:E,rawComment:D,version:ne,versionMadeBy:s,lastModDate:re,lastAccessDate:ie,creationDate:ae,rawExtraField:ge,zip64:he,zip64UncompressedSize:xe,zip64CompressedSize:Se,password:oe,rawPassword:se,level:me,useWebWorkers:le,transferStreams:ue,encryptionStrength:ce,extendedTimestamp:M,zipCrypto:A,bufferedWrite:P,createTempStream:F,keepOrder:N,useUnicodeFileNames:fe,dataDescriptor:R,dataDescriptorSignature:I,signal:de,msDosCompatible:o,internalFileAttribute:O,internalFileAttributes:O,externalFileAttribute:b,externalFileAttributes:b,useCompressionStream:L,passThrough:k,encrypted:!!(oe&&Y(oe)||se&&Y(se))||k&&Ce,signature:a[Fn],compressionMethod:pe,uncompressedSize:B,offset:e.offset-V,diskNumberStart:be,uid:l,gid:u,setuid:p,setgid:m,sticky:h,unixMode:d,msdosAttributesRaw:g,msdosAttributes:_,unixExternalUpper:w});let we=Ei(a),Te=Ai(a),Ee=Y(we.localHeaderArray,Te.dataDescriptorArray);ve=Ee+_e,e.options.usdz&&(ve+=ve+64),e.pendingEntriesSize+=ve;let H;try{H=await wi(e,t,i,{headerInfo:we,dataDescriptorInfo:Te,metadataSize:Ee},a)}finally{e.pendingEntriesSize-=ve}return Object.assign(H,{name:t,comment:te,extraField:z}),new Wn(H)}async function wi(e,t,n,r,i){let{files:o,writer:s}=e,{keepOrder:c,dataDescriptor:l,signal:u}=i,{headerInfo:d}=r,f=e.options[gr],p=Array.from(o.values()).pop(),m={},h,g,_,v,y,b;o.set(t,m);try{let g;c&&(g=p&&p.lock,x()),(i.bufferedWrite||!c||e.writerLocked||e.bufferedWrites||!l)&&!f?(b=i.createTempStream?await i.createTempStream():new TransformStream(void 0,void 0,{highWaterMark:T}),b.size=0,h=!0,e.bufferedWrites++,await tn(s)):(b=s,await S()),await tn(b);let{writable:_,diskOffset:C}=s;if(e.addSplitZipSignature){delete e.addSplitZipSignature;let t=new Uint8Array(4);q(zi(t),0,a),await Pi(s,t),e.offset+=4}f&&Di(r,e.offset-C);let{localHeaderView:w,localHeaderArray:E}=d;h||(await g,await ee(_));let{diskNumber:te}=s;return m.diskNumberStart=te,h||(y=!0,await Pi(b,E)),m=await Ti(n,b,m,r,e.config,i),h||(y=!1),o.set(t,m),m.filename=t,h?(await Promise.all([b.writable.getWriter().close(),g]),await S(),v=!0,m.diskNumberStart=s.diskNumber,m.offset=e.offset-s.diskOffset,Mi(m,w,i),await ee(_),await Pi(s,E),await b.readable.pipeTo(_,{preventClose:!0,preventAbort:!0,signal:u}),s.size+=b.size,v=!1):m.offset=e.offset-C,e.offset+=m.size,m}catch(n){if(v||y){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}h?e.offset+=b.size:e.offset=b.size}throw o.delete(t),n}finally{h&&e.bufferedWrites--,_&&_(),g&&g()}function x(){m.lock=new Promise(e=>_=e)}async function S(){e.writerLocked=!0;let{lockWriter:t}=e;e.lockWriter=new Promise(t=>g=()=>{e.writerLocked=!1,t()}),await t}async function ee(e){Y(d.localHeaderArray)>s.availableSize&&(s.availableSize=0,await Pi(e,new Uint8Array))}}async function Ti(e,t,{diskNumberStart:n,lock:r},i,a,o){let{headerInfo:s,dataDescriptorInfo:c,metadataSize:l}=i,{headerArray:u,headerView:d,lastModDate:f,rawLastModDate:p,encrypted:m,compressed:h,version:g,compressionMethod:_,rawExtraFieldZip64:v,localExtraFieldZip64Length:y,rawExtraFieldExtendedTimestamp:b,extraFieldExtendedTimestampFlag:x,rawExtraFieldNTFS:S,rawExtraFieldUnix:ee,rawExtraFieldAES:C}=s,{dataDescriptorArray:w}=c,{rawFilename:T,lastAccessDate:E,creationDate:te,password:D,rawPassword:ne,level:re,zip64:ie,zip64UncompressedSize:O,zip64CompressedSize:k,zipCrypto:oe,dataDescriptor:se,directory:ce,executable:A,versionMadeBy:j,rawComment:M,rawExtraField:N,useWebWorkers:le,transferStreams:ue,onstart:P,onprogress:F,onend:I,signal:de,encryptionStrength:fe,extendedTimestamp:pe,msDosCompatible:me,internalFileAttributes:L,externalFileAttributes:R,uid:he,gid:ge,unixMode:z,setuid:_e,setgid:ve,sticky:B,unixExternalUpper:ye,msdosAttributesRaw:V,msdosAttributes:be,useCompressionStream:xe,passThrough:Se}=o,Ce={lock:r,versionMadeBy:j,zip64:ie,directory:!!ce,executable:!!A,filenameUTF8:!0,rawFilename:T,commentUTF8:!0,rawComment:M,rawExtraFieldZip64:v,localExtraFieldZip64Length:y,rawExtraFieldExtendedTimestamp:b,rawExtraFieldNTFS:S,rawExtraFieldUnix:ee,rawExtraFieldAES:C,rawExtraField:N,extendedTimestamp:pe,msDosCompatible:me,internalFileAttributes:L,externalFileAttributes:R,diskNumberStart:n,uid:he,gid:ge,unixMode:z,setuid:_e,setgid:ve,sticky:B,unixExternalUpper:ye,msdosAttributesRaw:V,msdosAttributes:be},{signature:we,uncompressedSize:Te}=o,Ee=0;Se||(Te=0);let{writable:H}=t;if(e){e.chunkSize=ae(a);let n=e.readable,r=e.size,i={options:{codecType:pt,level:re,rawPassword:ne,password:D,encryptionStrength:fe,zipCrypto:m&&oe,passwordVerification:m&&oe&&p>>8&255,signed:!Se,compressed:h&&!Se,encrypted:m&&!Se,useWebWorkers:le,useCompressionStream:xe,transferStreams:ue},config:a,streamOptions:{signal:de,size:r,onstart:P,onprogress:F,onend:I}};try{let e=await Rt({readable:n,writable:H},i);Ee=e.outputSize,t.size+=Ee,Se||(Te=e.inputSize,we=e.signature)}catch(e){throw e.outputSize!==void 0&&(t.size+=e.outputSize),e}}return ji({signature:we,compressedSize:Ee,uncompressedSize:Te,headerInfo:s,dataDescriptorInfo:c},o),se&&await Pi(t,w),Object.assign(Ce,{uncompressedSize:Te,compressedSize:Ee,lastModDate:f,rawLastModDate:p,creationDate:te,lastAccessDate:E,encrypted:m,zipCrypto:oe,size:l+Ee,compressionMethod:_,version:g,headerArray:u,headerView:d,signature:we,extraFieldExtendedTimestampFlag:x,zip64UncompressedSize:O,zip64CompressedSize:k}),Ce}function Ei(e){let{rawFilename:t,lastModDate:n,lastAccessDate:a,creationDate:o,level:s,zip64:c,zipCrypto:l,useUnicodeFileNames:u,dataDescriptor:d,directory:m,rawExtraField:h,encryptionStrength:g,extendedTimestamp:y,passThrough:b,encrypted:x,zip64UncompressedSize:T,zip64CompressedSize:E,uncompressedSize:te}=e,{version:D,compressionMethod:ne}=e,re=!m&&(s>0||s===void 0&&ne!==0),ie,ae=b||!re,O=c&&(e.bufferedWrite||!T&&!E||ae);if(c){let e=4;T&&(e+=8),E&&(e+=8),ie=new Uint8Array(e);let t=zi(ie);if(K(t,0,1),K(t,2,Y(ie)-4),O){let e=zi(ie),t=4;T&&(Ri(e,t,BigInt(te)),t+=8),E&&ae&&(Ri(e,t,BigInt(te)),t+=8),t==4&&(ie=new Uint8Array)}}else ie=new Uint8Array;let k;if(x&&!l){k=new Uint8Array(Y(_i)+2);let e=zi(k);K(e,0,f),J(k,_i,2),Li(e,8,g)}else k=new Uint8Array;let oe,se,ce;if(y){se=new Uint8Array(9+(a?4:0)+(o?4:0));let e=zi(se);K(e,0,p),K(e,2,Y(se)-4),ce=1+(a?2:0)+(o?4:0),Li(e,4,ce);let t=5;q(e,t,Math.floor(n.getTime()/1e3)),t+=4,a&&(q(e,t,Math.floor(a.getTime()/1e3)),t+=4),o&&q(e,t,Math.floor(o.getTime()/1e3));try{oe=new Uint8Array(36);let e=zi(oe),t=Fi(n);K(e,0,10),K(e,2,32),K(e,8,1),K(e,10,24),Ri(e,12,t),Ri(e,20,Fi(a)||t),Ri(e,28,Fi(o)||t)}catch{oe=new Uint8Array}}else oe=se=new Uint8Array;let A;try{let{uid:t,gid:n,unixMode:i,setuid:a,setgid:o,sticky:s,unixExtraFieldType:c}=e;if(c&&(t!==void 0||n!==void 0||i!==void 0)){let e=Oi(t),l=Oi(n),u=new Uint8Array;if(c==yi&&i!==void 0){let e=i&r;a&&(e|=S),o&&(e|=ee),s&&(e|=512),u=new Uint8Array(2),new DataView(u.buffer).setUint16(0,e,!0)}let d=3+e.length+l.length+u.length;A=new Uint8Array(4+d);let f=zi(A);K(f,0,c==vi?_:v),K(f,2,d),Li(f,4,1),Li(f,5,e.length);let p=6;J(A,e,p),p+=e.length,Li(f,p,l.length),p++,J(A,l,p),p+=l.length,J(A,u,p)}else A=new Uint8Array}catch{A=new Uint8Array}ne===void 0&&(ne=re?8:0),c&&(D=D>45?D:45),x&&!l&&(D=D>51?D:51,k[9]=ne,ne=99);let j=O?Y(ie):0,M=j+Y(k,se,oe,A,h),{headerArray:N,headerView:le,rawLastModDate:ue}=Bi({version:D,bitFlag:Vi(s,u,d,x,ne),compressionMethod:ne,uncompressedSize:te,lastModDate:n<w?w:n>C?C:n,rawFilename:t,zip64CompressedSize:E,zip64UncompressedSize:T,extraFieldLength:M}),P=30,F=new Uint8Array(P+Y(t)+M),I=zi(F);return q(I,0,i),J(F,N,4),J(F,t,P),P+=Y(t),O&&J(F,ie,P),P+=j,J(F,k,P),P+=Y(k),J(F,se,P),P+=Y(se),J(F,oe,P),P+=Y(oe),J(F,A,P),P+=Y(A),J(F,h,P),d&&(q(I,18,0),q(I,22,0)),{localHeaderArray:F,localHeaderView:I,headerArray:N,headerView:le,lastModDate:n,rawLastModDate:ue,encrypted:x,compressed:re,version:D,compressionMethod:ne,extraFieldExtendedTimestampFlag:ce,rawExtraFieldZip64:new Uint8Array,localExtraFieldZip64Length:j,rawExtraFieldExtendedTimestamp:se,rawExtraFieldNTFS:oe,rawExtraFieldUnix:A,rawExtraFieldAES:k,extraFieldLength:M}}function Di(e,t){let{headerInfo:n}=e,{localHeaderArray:r,extraFieldLength:i}=n,a=zi(r),o=64-(t+Y(r))%64;o<4&&(o+=64);let s=new Uint8Array(o),c=zi(s);K(c,0,g),K(c,2,o-2);let l=r;n.localHeaderArray=r=new Uint8Array(Y(l)+o),J(r,l),J(r,s,Y(l)),a=zi(r),K(a,28,i+o),e.metadataSize+=o}function Oi(e){if(e===void 0)return new Uint8Array;{let t=new Uint8Array(4);zi(t).setUint32(0,e,!0);let n=4;for(;n>1&&t[n-1]===0;)n--;return t.subarray(0,n)}}function ki(e,t){if(e!==void 0)e&=255;else if(t!==void 0){let{readOnly:n,hidden:r,system:i,directory:a,archive:o}=t,s=0;n&&(s|=1),r&&(s|=2),i&&(s|=4),a&&(s|=16),o&&(s|=32),e=s&255}return t===void 0&&(t={readOnly:!!(e&1),hidden:!!(e&2),system:!!(e&4),directory:!!(e&16),archive:!!(e&32)}),{msdosAttributesRaw:e,msdosAttributes:t}}function Ai({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r=new Uint8Array,i,a=0,s=e?20:12;return n&&(s+=4),t&&(r=new Uint8Array(s),i=zi(r),n&&(a=4,q(i,0,o))),{dataDescriptorArray:r,dataDescriptorView:i,dataDescriptorOffset:a}}function ji({signature:e,compressedSize:t,uncompressedSize:n,headerInfo:r,dataDescriptorInfo:i},{zip64:a,zipCrypto:o,dataDescriptor:s}){let{headerView:c,encrypted:l}=r,{dataDescriptorView:u,dataDescriptorOffset:d}=i;(!l||o)&&e!==void 0&&(q(c,10,e),s&&q(u,d,e)),a?s&&(Ri(u,d+4,BigInt(t)),Ri(u,d+12,BigInt(n))):(q(c,14,t),q(c,18,n),s&&(q(u,d+4,t),q(u,d+8,n)))}function Mi({rawFilename:e,encrypted:t,zip64:n,localExtraFieldZip64Length:r,signature:i,compressedSize:a,uncompressedSize:o,zip64UncompressedSize:s,zip64CompressedSize:c},l,{dataDescriptor:u}){if(u||(t||q(l,14,i),c||q(l,18,a),s||q(l,22,o)),n&&r){let t=30+Y(e)+4;s&&(Ri(l,t,BigInt(o)),t+=8),c&&(Ri(l,t,BigInt(a)),t+=8)}}async function Ni(e,t,i){let{files:a,writer:o}=e,{diskOffset:f}=o,{diskNumber:m}=o,h=0,g=0,_=e.offset-f,v=a.size;for(let[,e]of a){let{rawFilename:t,rawExtraFieldAES:i,rawComment:a,rawExtraFieldNTFS:o,rawExtraFieldUnix:s,rawExtraField:c,extendedTimestamp:l,extraFieldExtendedTimestampFlag:u,lastModDate:d,zip64UncompressedSize:f,zip64CompressedSize:m,uncompressedSize:h,compressedSize:_}=e,v=e.offset>n,y=e.diskNumberStart>r,b;if(v||y||f||m){let t=4;f&&(t+=8),m&&(t+=8),v&&(t+=8),y&&(t+=4),b=new Uint8Array(t);let n=zi(b);K(n,0,1),K(n,2,t-4);let r=4;f&&(Ri(n,r,BigInt(h)),r+=8),m&&(Ri(n,r,BigInt(_)),r+=8),v&&(Ri(n,r,BigInt(e.offset)),r+=8),y&&q(n,r,e.diskNumberStart)}else b=new Uint8Array;e.rawExtraFieldZip64=b,e.zip64Offset=v,e.zip64DiskNumberStart=y;let x;if(l){x=new Uint8Array(9);let e=zi(x);K(e,0,p),K(e,2,5),Li(e,4,u),q(e,5,Math.floor(d.getTime()/1e3))}else x=new Uint8Array;e.rawExtraFieldExtendedTimestamp=x,g+=46+Y(t,a,b,i,o,s,x,c)}let y=new Uint8Array(g),b=zi(y);await tn(o);let x=0;for(let[e,t]of Array.from(a.values()).entries()){let{offset:c,rawFilename:l,rawExtraFieldZip64:u,rawExtraFieldAES:d,rawExtraFieldExtendedTimestamp:f,rawExtraFieldNTFS:p,rawExtraFieldUnix:m,rawExtraField:g,rawComment:_,versionMadeBy:v,headerArray:S,headerView:ee,zip64UncompressedSize:C,zip64CompressedSize:w,zip64DiskNumberStart:T,zip64Offset:E,internalFileAttributes:te,externalFileAttributes:D,diskNumberStart:ne,uncompressedSize:re,compressedSize:ie}=t,ae=Y(u,d,f,p,m,g);q(b,h,s),K(b,h+4,v),C||q(ee,18,re),w||q(ee,14,ie),J(y,S,h+6);let O=h+30;if(K(b,O,ae),O+=2,K(b,O,Y(_)),O+=2,K(b,O,T?r:ne),O+=2,K(b,O,te),O+=2,D&&q(b,O,D),O+=4,q(b,O,E?n:c),O+=4,J(y,l,O),O+=Y(l),J(y,u,O),O+=Y(u),J(y,d,O),O+=Y(d),J(y,f,O),O+=Y(f),J(y,p,O),O+=Y(p),J(y,m,O),O+=Y(m),J(y,g,O),O+=Y(g),J(y,_,O),O+=Y(_),h-x>o.availableSize&&(o.availableSize=0,await Pi(o,y.slice(x,h)),x=h),h=O,i.onprogress)try{await i.onprogress(e+1,a.size,new Wn(t))}catch{}}await Pi(o,x?y.slice(x):y);let S=o.diskNumber,{availableSize:ee}=o;ee<22&&S++;let C=G(e,i,Dn);if(_>4294967295||g>4294967295||v>65535||S>65535){if(C===!1)throw Error(ci);C=!0}let w=new Uint8Array(C?d:22),T=zi(w);h=0,C&&(q(T,0,l),Ri(T,4,BigInt(44)),K(T,12,45),K(T,14,45),q(T,16,S),q(T,20,m),Ri(T,24,BigInt(v)),Ri(T,32,BigInt(v)),Ri(T,40,BigInt(g)),Ri(T,48,BigInt(_)),q(T,56,u),Ri(T,64,BigInt(_)+BigInt(g)),q(T,72,S+1),G(e,i,`supportZip64SplitFile`,!0)&&(S=r,m=r),v=r,_=n,g=n,h+=76),q(T,h,c),K(T,h+4,S),K(T,h+6,m),K(T,h+8,v),K(T,h+10,v),q(T,h+12,g),q(T,h+16,_);let E=Y(t);if(E)if(E<=65535)K(T,h+20,E);else throw Error(ti);await Pi(o,w),E&&await Pi(o,t)}async function Pi(e,t){let{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Y(t),await r.write(t)}finally{r.releaseLock()}}function Fi(e){if(e)return(BigInt(e.getTime())+BigInt(0xa9730b66800))*BigInt(1e4)}function G(e,t,n,r){let i=t[n]===void 0?e.options[n]:t[n];return i===void 0?r:i}function Ii(e){return e+5*(Math.floor(e/16383)+1)}function Li(e,t,n){e.setUint8(t,n)}function K(e,t,n){e.setUint16(t,n,!0)}function q(e,t,n){e.setUint32(t,n,!0)}function Ri(e,t,n){e.setBigUint64(t,n,!0)}function J(e,t,n){e.set(t,n)}function zi(e){return new DataView(e.buffer)}function Y(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Bi({version:e,bitFlag:t,compressionMethod:r,uncompressedSize:i,compressedSize:a,lastModDate:o,rawFilename:s,zip64CompressedSize:c,zip64UncompressedSize:l,extraFieldLength:u}){let d=new Uint8Array(26),f=zi(d);K(f,0,e),K(f,2,t),K(f,4,r);let p=new Uint32Array(1),m=zi(p);K(m,0,(o.getHours()<<6|o.getMinutes())<<5|o.getSeconds()/2),K(m,2,(o.getFullYear()-1980<<4|o.getMonth()+1)<<5|o.getDate());let h=p[0];return q(f,6,h),(c||a!==void 0)&&q(f,14,c?n:a),(l||i!==void 0)&&q(f,18,l?n:i),K(f,22,Y(s)),K(f,24,u),{headerArray:d,headerView:f,rawLastModDate:h}}function Vi(e,t,n,r,i){let a=0;return t&&(a|=y),n&&(a|=8),(i==8||i==9)&&(e>=0&&e<=3&&(a|=6),e>3&&e<=5&&(a|=4),e==9&&(a|=2)),r&&(a|=1),a}try{O({baseURI:import.meta.url})}catch{}var Hi=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`;function Ui(e){let t;e({wasmURI:()=>(t||=`data:application/wasm;base64,`+(e=>{e=(e=>{let t=(e=(e+``).replace(/[^A-Za-z0-9+/=]/g,``)).length,n=[];for(let r=0;t>r;r+=4){let t=Hi.indexOf(e[r])<<18|Hi.indexOf(e[r+1])<<12|(63&Hi.indexOf(e[r+2]))<<6|63&Hi.indexOf(e[r+3]);n.push(t>>16&255),e[r+2]!==`=`&&n.push(t>>8&255),e[r+3]!==`=`&&n.push(255&t)}return new Uint8Array(n)})(e);let t=new Uint8Array(1024),n=0;for(let i=0;i<e.length;){let a=e[i++];if(128&a){let o=3+(127&a),s=e[i++]<<8|e[i++],c=n-s;r(n+o);for(let e=0;o>e;e++)t[n++]=t[c+e]}else{let o=a;r(n+o);for(let r=0;o>r&&i<e.length;r++)t[n++]=e[i++]}}return(e=>{let t=``,n=e.length,r=0;for(;n>r+2;r+=3){let n=e[r]<<16|e[r+1]<<8|e[r+2];t+=Hi[n>>18&63]+Hi[n>>12&63]+Hi[n>>6&63]+Hi[63&n]}let i=n-r;if(i===1){let n=e[r]<<16;t+=Hi[n>>18&63]+Hi[n>>12&63]+`==`}else if(i===2){let n=e[r]<<16|e[r+1]<<8;t+=Hi[n>>18&63]+Hi[n>>12&63]+Hi[n>>6&63]+`=`}return t})(new Uint8Array(t.buffer.slice(0,n)));function r(e){if(t.length<e){let r=2*t.length;for(;e>r;)r*=2;let i=new Uint8Array(r);i.set(t.subarray(0,n)),t=i}}})(`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BAGZgAAEAVmAAAQB2YAABAE5gAAEAbmAAAQBeYAABAH5gAAEAQWAAAQBhYAABAFFgAAEAcWAAAQBJYAABAGlgAAEAWWAAAQB5YAABAEVgAAEAZWAAAQBVYAABAHVgAAEATWAAAQBtYAABAF1gAAEAfWAAAQBDYAABAGNgAAEAU2AAAQBzYAABIARMwIArYAABAFtgAAEAe2AAAQBHYAABAGdgAAEAV2AAAQB3YAABAE9gAAEAb2AAAQBfYAABAH9gAAEAROAAMIFEwEJAJOAAAgBk4AACAFTgAAIAVOAAAgB04AACAHTgAAIATOAAAgBM4AACAGzgAAIAbOAAAgBc4AACAFzgAAIAfOAAAgB84AACAELgAAIgBDagAQCgAAEgAAIAUuAAAgBS4AACAHLgAAIAcuAAAgBK4AACAErgAAIAauAAAgBq4AACAFrgAAIAWuAAAgB64AACAHrgAAIARuAAAgBG4AACAGbgAAIAZuAAAgBW4AACAFbgAAIAduAAAgB24AACAE7gAAIATuAAAgBu4AACAG7gAAIAXuAAAgBe4AACAH7gAAIAfuAAAiBA7YBB4AACAGHgAAIAYeAAAgBR4AACAFHgAAIAceAAAgBx4AACAEngAAIASeAAAgBp4AACAGngAAIAWeAAAgBZ4AACAHngAAIAeeAAAgBF4AACAEXgAAIAZeAAAgBl4AACAFXgAAIAVeAAAgB14AACAHXgAAIATeAAAgBN4AACAG3gAAIAbeAAAgBd4AACAF3gAAIAfeAAAgB94AACAEPgAAIAQ+AAAgBj4AACAGPgAAIAU+AAAgBT4AACAHPgAAIAc+AAAgBL4AACAEvgAAIAa+AAAgBr4AACAFvgAAIAW+AAAgB74AACAHvgAAIAR+AAAgBH4AACAGfgAAIAZ+AAAgBX4AACAFfgAAIAd+AAAgB34AACAE/gAAIAT+AAAgBv4AACAG/gAAIAX+AAAgBf4AACAH/gAAIAf+AAAiBBAoBQIAABAEggAAEAWCAAAQBEIAABAFQgAAEATCAAAQBcIIFVgMHAEiAAAQBKIAABAFogAAEARiAAAQBWIAABAE4gAAEAXiAAAQBBIAABAFEgAAEASSAAAQBZIAABAEUgAAEAVSAAAQBNIAABAF0gAAEAQOAAEIBg4AABAFDgAAEAcOAAAQBI4AABAGjgAAEAWOAAAQB44AABIC+K4AAdIECxgEFgABcAQWCBUoBFIAABAEMgAAEARyAAASAvlaABEQBBYIGBAEaggXqAQWAA9QBBYADuAEFgAOcgE92gAAEARGAAAQBCYAABAEZgAAEgQACARWAAAQBDYAABAEdgAAEgL59gAKkgQZAAQWAAiyBBaYBBYABtAEFgD3fAxsLTYMfuYcABIC+rooABIEHUYkABAEEjAAEAQWKAAQEQbAcC4C9CosAS40AO4UALwEGhAAEgQWIgQAEgQEKgQAEgQGSgQAEgIS2ggAEAQuEAAQBDIQABIAF24FHeQTgHQsjhQBfhQXLAhARgAVtBgcJBgoFC4A6uAQNAg4BgAclBJQeC2mFAJCFAIiFAICFAHiBAGiBAFyBBh8BEIAABAEUgAAEARiAAAQBHIAABAEggAAEASiAAAQBMIAABAE4gAAEAUCAAAQBUIAABIEGvQFwgAAEAYCAAAQBoIAABAHAgAAEAeCAAG8DHwtyjQBvgQBrgQBngQBjgQBfgQBbgQBXgQBTgQBPgQBLgQBHgQBDgQE8AYCvAEGAUc0CC22BAMcBBIAAAgEIgAAEgQEzgQJLARCAAA6DAAyBnqyAqmuEACSBB3OBAE8BCIAACIEAGIUADIEIt4MADAEggQCUgDKEgQBrAYCBCC8BBIMADIA/SAoBABAMAEGRIQv/gCUfgMDAgIKxBQgJCQoKgEk3gAABAQ2AAAEBDoAAAQEPgAABARCEAAEBEYQAAQEShAABAROEAAEBFIwAAQEVjAABARaMAAEBF4wAAQEYnAABARmcAAEBGpwAAQEbmwABARyBffsEBAQFBYHB1QEHgAABAQiEAAGAXSqCAAEBCowAAYAnsooAAYEBMJkAAYEBTJkAAYEBaLkAAYEBpLkAAYIDdYABzoUBvI0BqJ0BkLwBgAIbHLwAAQEdvAABgA9PgH05A9AqAQ==`),t)})}var Wi,Gi,Ki,qi;function Ji(e){if(Wi=e,{malloc:Gi,free:Ki,memory:qi}=Wi,typeof Gi!=`function`||typeof Ki!=`function`||!qi)throw Wi=Gi=Ki=qi=null,Error(`Invalid WASM module`)}function Yi(e,t,n={}){let r=typeof n.level==`number`?n.level:-1,i=typeof n.outBuffer==`number`?n.outBuffer:64*1024,a=typeof n.inBufferSize==`number`?n.inBufferSize:64*1024;return new TransformStream({start(){let n;if(this.out=Gi(i),this.in=Gi(a),this.inBufferSize=a,this._scratch=new Uint8Array(i),e?(this._process=Wi.deflate_process,this._last_consumed=Wi.deflate_last_consumed,this._end=Wi.deflate_end,this.streamHandle=Wi.deflate_new(),n=t===`gzip`?Wi.deflate_init_gzip(this.streamHandle,r):t===`deflate-raw`?Wi.deflate_init_raw(this.streamHandle,r):Wi.deflate_init(this.streamHandle,r)):t===`deflate64-raw`?(this._process=Wi.inflate9_process,this._last_consumed=Wi.inflate9_last_consumed,this._end=Wi.inflate9_end,this.streamHandle=Wi.inflate9_new(),n=Wi.inflate9_init_raw(this.streamHandle)):(this._process=Wi.inflate_process,this._last_consumed=Wi.inflate_last_consumed,this._end=Wi.inflate_end,this.streamHandle=Wi.inflate_new(),n=t===`deflate-raw`?Wi.inflate_init_raw(this.streamHandle):t===`gzip`?Wi.inflate_init_gzip(this.streamHandle):Wi.inflate_init(this.streamHandle)),n!==0)throw Error(`init failed:`+n)},transform(t,n){try{let r=t,a=new Uint8Array(qi.buffer),o=this._process,s=this._last_consumed,c=this.out,l=this._scratch,u=0;for(;u<r.length;){let t=Math.min(r.length-u,32*1024);(!this.in||this.inBufferSize<t)&&(this.in&&Ki&&Ki(this.in),this.in=Gi(t),this.inBufferSize=t),a.set(r.subarray(u,u+t),this.in);let d=o(this.streamHandle,this.in,t,c,i,0),f=d&16777215;if(f&&(l.set(a.subarray(c,c+f),0),n.enqueue(l.slice(0,f))),!e){let e=d>>24&255,t=e&128?e-256:e;if(t<0)throw Error(`process error:`+t)}let p=s(this.streamHandle);if(p===0)break;u+=p}}catch(e){this._end&&this.streamHandle&&this._end(this.streamHandle),this.in&&Ki&&Ki(this.in),this.out&&Ki&&Ki(this.out),n.error(e)}},flush(t){try{let n=new Uint8Array(qi.buffer),r=this._process,a=this.out,o=this._scratch;for(;;){let s=r(this.streamHandle,0,0,a,i,4),c=s&16777215,l=s>>24&255;if(!e){let e=l&128?l-256:l;if(e<0)throw Error(`process error:`+e)}if(c&&(o.set(n.subarray(a,a+c),0),t.enqueue(o.slice(0,c))),l===1||c===0)break}}catch(e){t.error(e)}finally{if(this._end&&this.streamHandle){let e=this._end(this.streamHandle);e!==0&&t.error(Error(`end error:`+e))}this.in&&Ki&&Ki(this.in),this.out&&Ki&&Ki(this.out)}}})}var Xi=class{constructor(e=`deflate`,t){return Yi(!0,e,t)}},Zi=class{constructor(e=`deflate`,t){return Yi(!1,e,t)}},Qi=!1;async function $i(e,{baseURI:t}){if(!Qi){let n,r;try{try{r=new URL(e,t)}catch{}n=await(await fetch(r)).arrayBuffer()}catch(t){if(e.startsWith(`data:application/wasm;base64,`))n=ea(e);else throw t}Ji((await WebAssembly.instantiate(n)).instance.exports),Qi=!0}}function ea(e){let t=e.split(`,`)[1],n=atob(t),r=n.length,i=new Uint8Array(r);for(let e=0;e<r;++e)i[e]=n.charCodeAt(e);return i.buffer}var ta;Ui(O),Ct({initModule:e=>{if(!ta){let{wasmURI:t}=e;typeof t==`function`&&(t=t()),ta=$i(t,e)}return ta}}),O({CompressionStreamZlib:Xi,DecompressionStreamZlib:Zi});var na={application:{"andrew-inset":`ez`,annodex:`anx`,"atom+xml":`atom`,"atomcat+xml":`atomcat`,"atomserv+xml":`atomsrv`,bbolin:`lin`,"cu-seeme":`cu`,"davmount+xml":`davmount`,dsptype:`tsp`,ecmascript:[`es`,`ecma`],futuresplash:`spl`,hta:`hta`,"java-archive":`jar`,"java-serialized-object":`ser`,"java-vm":`class`,m3g:`m3g`,"mac-binhex40":`hqx`,mathematica:[`nb`,`ma`,`mb`],msaccess:`mdb`,msword:[`doc`,`dot`,`wiz`],mxf:`mxf`,oda:`oda`,ogg:`ogx`,pdf:`pdf`,"pgp-keys":`key`,"pgp-signature":[`asc`,`sig`],"pics-rules":`prf`,postscript:[`ps`,`ai`,`eps`,`epsi`,`epsf`,`eps2`,`eps3`],rar:`rar`,"rdf+xml":`rdf`,"rss+xml":`rss`,rtf:`rtf`,"xhtml+xml":[`xhtml`,`xht`],xml:[`xml`,`xsl`,`xsd`,`xpdl`],"xspf+xml":`xspf`,zip:`zip`,"vnd.android.package-archive":`apk`,"vnd.cinderella":`cdy`,"vnd.google-earth.kml+xml":`kml`,"vnd.google-earth.kmz":`kmz`,"vnd.mozilla.xul+xml":`xul`,"vnd.ms-excel":[`xls`,`xlb`,`xlt`,`xlm`,`xla`,`xlc`,`xlw`],"vnd.ms-pki.seccat":`cat`,"vnd.ms-pki.stl":`stl`,"vnd.ms-powerpoint":[`ppt`,`pps`,`pot`,`ppa`,`pwz`],"vnd.oasis.opendocument.chart":`odc`,"vnd.oasis.opendocument.database":`odb`,"vnd.oasis.opendocument.formula":`odf`,"vnd.oasis.opendocument.graphics":`odg`,"vnd.oasis.opendocument.graphics-template":`otg`,"vnd.oasis.opendocument.image":`odi`,"vnd.oasis.opendocument.presentation":`odp`,"vnd.oasis.opendocument.presentation-template":`otp`,"vnd.oasis.opendocument.spreadsheet":`ods`,"vnd.oasis.opendocument.spreadsheet-template":`ots`,"vnd.oasis.opendocument.text":`odt`,"vnd.oasis.opendocument.text-master":[`odm`,`otm`],"vnd.oasis.opendocument.text-template":`ott`,"vnd.oasis.opendocument.text-web":`oth`,"vnd.openxmlformats-officedocument.spreadsheetml.sheet":`xlsx`,"vnd.openxmlformats-officedocument.spreadsheetml.template":`xltx`,"vnd.openxmlformats-officedocument.presentationml.presentation":`pptx`,"vnd.openxmlformats-officedocument.presentationml.slideshow":`ppsx`,"vnd.openxmlformats-officedocument.presentationml.template":`potx`,"vnd.openxmlformats-officedocument.wordprocessingml.document":`docx`,"vnd.openxmlformats-officedocument.wordprocessingml.template":`dotx`,"vnd.smaf":`mmf`,"vnd.stardivision.calc":`sdc`,"vnd.stardivision.chart":`sds`,"vnd.stardivision.draw":`sda`,"vnd.stardivision.impress":`sdd`,"vnd.stardivision.math":[`sdf`,`smf`],"vnd.stardivision.writer":[`sdw`,`vor`],"vnd.stardivision.writer-global":`sgl`,"vnd.sun.xml.calc":`sxc`,"vnd.sun.xml.calc.template":`stc`,"vnd.sun.xml.draw":`sxd`,"vnd.sun.xml.draw.template":`std`,"vnd.sun.xml.impress":`sxi`,"vnd.sun.xml.impress.template":`sti`,"vnd.sun.xml.math":`sxm`,"vnd.sun.xml.writer":`sxw`,"vnd.sun.xml.writer.global":`sxg`,"vnd.sun.xml.writer.template":`stw`,"vnd.symbian.install":[`sis`,`sisx`],"vnd.visio":[`vsd`,`vst`,`vss`,`vsw`,`vsdx`,`vssx`,`vstx`,`vssm`,`vstm`],"vnd.wap.wbxml":`wbxml`,"vnd.wap.wmlc":`wmlc`,"vnd.wap.wmlscriptc":`wmlsc`,"vnd.wordperfect":`wpd`,"vnd.wordperfect5.1":`wp5`,"x-123":`wk`,"x-7z-compressed":`7z`,"x-abiword":`abw`,"x-apple-diskimage":`dmg`,"x-bcpio":`bcpio`,"x-bittorrent":`torrent`,"x-cbr":[`cbr`,`cba`,`cbt`,`cb7`],"x-cbz":`cbz`,"x-cdf":[`cdf`,`cda`],"x-cdlink":`vcd`,"x-chess-pgn":`pgn`,"x-cpio":`cpio`,"x-csh":`csh`,"x-director":[`dir`,`dxr`,`cst`,`cct`,`cxt`,`w3d`,`fgd`,`swa`],"x-dms":`dms`,"x-doom":`wad`,"x-dvi":`dvi`,"x-httpd-eruby":`rhtml`,"x-font":`pcf.Z`,"x-freemind":`mm`,"x-gnumeric":`gnumeric`,"x-go-sgf":`sgf`,"x-graphing-calculator":`gcf`,"x-gtar":[`gtar`,`taz`],"x-hdf":`hdf`,"x-httpd-php":[`phtml`,`pht`,`php`],"x-httpd-php-source":`phps`,"x-httpd-php3":`php3`,"x-httpd-php3-preprocessed":`php3p`,"x-httpd-php4":`php4`,"x-httpd-php5":`php5`,"x-ica":`ica`,"x-info":`info`,"x-internet-signup":[`ins`,`isp`],"x-iphone":`iii`,"x-iso9660-image":`iso`,"x-java-jnlp-file":`jnlp`,"x-jmol":`jmz`,"x-killustrator":`kil`,"x-latex":`latex`,"x-lyx":`lyx`,"x-lzx":`lzx`,"x-maker":[`frm`,`fb`,`fbdoc`],"x-ms-wmd":`wmd`,"x-msdos-program":[`com`,`exe`,`bat`,`dll`],"x-netcdf":[`nc`],"x-ns-proxy-autoconfig":[`pac`,`dat`],"x-nwc":`nwc`,"x-object":`o`,"x-oz-application":`oza`,"x-pkcs7-certreqresp":`p7r`,"x-python-code":[`pyc`,`pyo`],"x-qgis":[`qgs`,`shp`,`shx`],"x-quicktimeplayer":`qtl`,"x-redhat-package-manager":[`rpm`,`rpa`],"x-ruby":`rb`,"x-sh":`sh`,"x-shar":`shar`,"x-shockwave-flash":[`swf`,`swfl`],"x-silverlight":`scr`,"x-stuffit":`sit`,"x-sv4cpio":`sv4cpio`,"x-sv4crc":`sv4crc`,"x-tar":`tar`,"x-tex-gf":`gf`,"x-tex-pk":`pk`,"x-texinfo":[`texinfo`,`texi`],"x-trash":[`~`,`%`,`bak`,`old`,`sik`],"x-ustar":`ustar`,"x-wais-source":`src`,"x-wingz":`wz`,"x-x509-ca-cert":[`crt`,`der`,`cer`],"x-xcf":`xcf`,"x-xfig":`fig`,"x-xpinstall":`xpi`,applixware:`aw`,"atomsvc+xml":`atomsvc`,"ccxml+xml":`ccxml`,"cdmi-capability":`cdmia`,"cdmi-container":`cdmic`,"cdmi-domain":`cdmid`,"cdmi-object":`cdmio`,"cdmi-queue":`cdmiq`,"docbook+xml":`dbk`,"dssc+der":`dssc`,"dssc+xml":`xdssc`,"emma+xml":`emma`,"epub+zip":`epub`,exi:`exi`,"font-tdpfr":`pfr`,"gml+xml":`gml`,"gpx+xml":`gpx`,gxf:`gxf`,hyperstudio:`stk`,"inkml+xml":[`ink`,`inkml`],ipfix:`ipfix`,"jsonml+json":`jsonml`,"lost+xml":`lostxml`,"mads+xml":`mads`,marc:`mrc`,"marcxml+xml":`mrcx`,"mathml+xml":[`mathml`,`mml`],mbox:`mbox`,"mediaservercontrol+xml":`mscml`,"metalink+xml":`metalink`,"metalink4+xml":`meta4`,"mets+xml":`mets`,"mods+xml":`mods`,mp21:[`m21`,`mp21`],mp4:`mp4s`,"oebps-package+xml":`opf`,"omdoc+xml":`omdoc`,onenote:[`onetoc`,`onetoc2`,`onetmp`,`onepkg`],oxps:`oxps`,"patch-ops-error+xml":`xer`,"pgp-encrypted":`pgp`,pkcs10:`p10`,"pkcs7-mime":[`p7m`,`p7c`],"pkcs7-signature":`p7s`,pkcs8:`p8`,"pkix-attr-cert":`ac`,"pkix-crl":`crl`,"pkix-pkipath":`pkipath`,pkixcmp:`pki`,"pls+xml":`pls`,"prs.cww":`cww`,"pskc+xml":`pskcxml`,"reginfo+xml":`rif`,"relax-ng-compact-syntax":`rnc`,"resource-lists+xml":`rl`,"resource-lists-diff+xml":`rld`,"rls-services+xml":`rs`,"rpki-ghostbusters":`gbr`,"rpki-manifest":`mft`,"rpki-roa":`roa`,"rsd+xml":`rsd`,"sbml+xml":`sbml`,"scvp-cv-request":`scq`,"scvp-cv-response":`scs`,"scvp-vp-request":`spq`,"scvp-vp-response":`spp`,sdp:`sdp`,"set-payment-initiation":`setpay`,"set-registration-initiation":`setreg`,"shf+xml":`shf`,"sparql-query":`rq`,"sparql-results+xml":`srx`,srgs:`gram`,"srgs+xml":`grxml`,"sru+xml":`sru`,"ssdl+xml":`ssdl`,"ssml+xml":`ssml`,"tei+xml":[`tei`,`teicorpus`],"thraud+xml":`tfi`,"timestamped-data":`tsd`,"vnd.3gpp.pic-bw-large":`plb`,"vnd.3gpp.pic-bw-small":`psb`,"vnd.3gpp.pic-bw-var":`pvb`,"vnd.3gpp2.tcap":`tcap`,"vnd.3m.post-it-notes":`pwn`,"vnd.accpac.simply.aso":`aso`,"vnd.accpac.simply.imp":`imp`,"vnd.acucobol":`acu`,"vnd.acucorp":[`atc`,`acutc`],"vnd.adobe.air-application-installer-package+zip":`air`,"vnd.adobe.formscentral.fcdt":`fcdt`,"vnd.adobe.fxp":[`fxp`,`fxpl`],"vnd.adobe.xdp+xml":`xdp`,"vnd.adobe.xfdf":`xfdf`,"vnd.ahead.space":`ahead`,"vnd.airzip.filesecure.azf":`azf`,"vnd.airzip.filesecure.azs":`azs`,"vnd.amazon.ebook":`azw`,"vnd.americandynamics.acc":`acc`,"vnd.amiga.ami":`ami`,"vnd.anser-web-certificate-issue-initiation":`cii`,"vnd.anser-web-funds-transfer-initiation":`fti`,"vnd.antix.game-component":`atx`,"vnd.apple.installer+xml":`mpkg`,"vnd.apple.mpegurl":`m3u8`,"vnd.aristanetworks.swi":`swi`,"vnd.astraea-software.iota":`iota`,"vnd.audiograph":`aep`,"vnd.blueice.multipass":`mpm`,"vnd.bmi":`bmi`,"vnd.businessobjects":`rep`,"vnd.chemdraw+xml":`cdxml`,"vnd.chipnuts.karaoke-mmd":`mmd`,"vnd.claymore":`cla`,"vnd.cloanto.rp9":`rp9`,"vnd.clonk.c4group":[`c4g`,`c4d`,`c4f`,`c4p`,`c4u`],"vnd.cluetrust.cartomobile-config":`c11amc`,"vnd.cluetrust.cartomobile-config-pkg":`c11amz`,"vnd.commonspace":`csp`,"vnd.contact.cmsg":`cdbcmsg`,"vnd.cosmocaller":`cmc`,"vnd.crick.clicker":`clkx`,"vnd.crick.clicker.keyboard":`clkk`,"vnd.crick.clicker.palette":`clkp`,"vnd.crick.clicker.template":`clkt`,"vnd.crick.clicker.wordbank":`clkw`,"vnd.criticaltools.wbs+xml":`wbs`,"vnd.ctc-posml":`pml`,"vnd.cups-ppd":`ppd`,"vnd.curl.car":`car`,"vnd.curl.pcurl":`pcurl`,"vnd.dart":`dart`,"vnd.data-vision.rdz":`rdz`,"vnd.dece.data":[`uvf`,`uvvf`,`uvd`,`uvvd`],"vnd.dece.ttml+xml":[`uvt`,`uvvt`],"vnd.dece.unspecified":[`uvx`,`uvvx`],"vnd.dece.zip":[`uvz`,`uvvz`],"vnd.denovo.fcselayout-link":`fe_launch`,"vnd.dna":`dna`,"vnd.dolby.mlp":`mlp`,"vnd.dpgraph":`dpg`,"vnd.dreamfactory":`dfac`,"vnd.ds-keypoint":`kpxx`,"vnd.dvb.ait":`ait`,"vnd.dvb.service":`svc`,"vnd.dynageo":`geo`,"vnd.ecowin.chart":`mag`,"vnd.enliven":`nml`,"vnd.epson.esf":`esf`,"vnd.epson.msf":`msf`,"vnd.epson.quickanime":`qam`,"vnd.epson.salt":`slt`,"vnd.epson.ssf":`ssf`,"vnd.eszigno3+xml":[`es3`,`et3`],"vnd.ezpix-album":`ez2`,"vnd.ezpix-package":`ez3`,"vnd.fdf":`fdf`,"vnd.fdsn.mseed":`mseed`,"vnd.fdsn.seed":[`seed`,`dataless`],"vnd.flographit":`gph`,"vnd.fluxtime.clip":`ftc`,"vnd.framemaker":[`fm`,`frame`,`maker`,`book`],"vnd.frogans.fnc":`fnc`,"vnd.frogans.ltf":`ltf`,"vnd.fsc.weblaunch":`fsc`,"vnd.fujitsu.oasys":`oas`,"vnd.fujitsu.oasys2":`oa2`,"vnd.fujitsu.oasys3":`oa3`,"vnd.fujitsu.oasysgp":`fg5`,"vnd.fujitsu.oasysprs":`bh2`,"vnd.fujixerox.ddd":`ddd`,"vnd.fujixerox.docuworks":`xdw`,"vnd.fujixerox.docuworks.binder":`xbd`,"vnd.fuzzysheet":`fzs`,"vnd.genomatix.tuxedo":`txd`,"vnd.geogebra.file":`ggb`,"vnd.geogebra.tool":`ggt`,"vnd.geometry-explorer":[`gex`,`gre`],"vnd.geonext":`gxt`,"vnd.geoplan":`g2w`,"vnd.geospace":`g3w`,"vnd.gmx":`gmx`,"vnd.grafeq":[`gqf`,`gqs`],"vnd.groove-account":`gac`,"vnd.groove-help":`ghf`,"vnd.groove-identity-message":`gim`,"vnd.groove-injector":`grv`,"vnd.groove-tool-message":`gtm`,"vnd.groove-tool-template":`tpl`,"vnd.groove-vcard":`vcg`,"vnd.hal+xml":`hal`,"vnd.handheld-entertainment+xml":`zmm`,"vnd.hbci":`hbci`,"vnd.hhe.lesson-player":`les`,"vnd.hp-hpgl":`hpgl`,"vnd.hp-hpid":`hpid`,"vnd.hp-hps":`hps`,"vnd.hp-jlyt":`jlt`,"vnd.hp-pcl":`pcl`,"vnd.hp-pclxl":`pclxl`,"vnd.hydrostatix.sof-data":`sfd-hdstx`,"vnd.ibm.minipay":`mpy`,"vnd.ibm.modcap":[`afp`,`listafp`,`list3820`],"vnd.ibm.rights-management":`irm`,"vnd.ibm.secure-container":`sc`,"vnd.iccprofile":[`icc`,`icm`],"vnd.igloader":`igl`,"vnd.immervision-ivp":`ivp`,"vnd.immervision-ivu":`ivu`,"vnd.insors.igm":`igm`,"vnd.intercon.formnet":[`xpw`,`xpx`],"vnd.intergeo":`i2g`,"vnd.intu.qbo":`qbo`,"vnd.intu.qfx":`qfx`,"vnd.ipunplugged.rcprofile":`rcprofile`,"vnd.irepository.package+xml":`irp`,"vnd.is-xpr":`xpr`,"vnd.isac.fcs":`fcs`,"vnd.jam":`jam`,"vnd.jcp.javame.midlet-rms":`rms`,"vnd.jisp":`jisp`,"vnd.joost.joda-archive":`joda`,"vnd.kahootz":[`ktz`,`ktr`],"vnd.kde.karbon":`karbon`,"vnd.kde.kchart":`chrt`,"vnd.kde.kformula":`kfo`,"vnd.kde.kivio":`flw`,"vnd.kde.kontour":`kon`,"vnd.kde.kpresenter":[`kpr`,`kpt`],"vnd.kde.kspread":`ksp`,"vnd.kde.kword":[`kwd`,`kwt`],"vnd.kenameaapp":`htke`,"vnd.kidspiration":`kia`,"vnd.kinar":[`kne`,`knp`],"vnd.koan":[`skp`,`skd`,`skt`,`skm`],"vnd.kodak-descriptor":`sse`,"vnd.las.las+xml":`lasxml`,"vnd.llamagraphics.life-balance.desktop":`lbd`,"vnd.llamagraphics.life-balance.exchange+xml":`lbe`,"vnd.lotus-1-2-3":`123`,"vnd.lotus-approach":`apr`,"vnd.lotus-freelance":`pre`,"vnd.lotus-notes":`nsf`,"vnd.lotus-organizer":`org`,"vnd.lotus-screencam":`scm`,"vnd.lotus-wordpro":`lwp`,"vnd.macports.portpkg":`portpkg`,"vnd.mcd":`mcd`,"vnd.medcalcdata":`mc1`,"vnd.mediastation.cdkey":`cdkey`,"vnd.mfer":`mwf`,"vnd.mfmp":`mfm`,"vnd.micrografx.flo":`flo`,"vnd.micrografx.igx":`igx`,"vnd.mif":`mif`,"vnd.mobius.daf":`daf`,"vnd.mobius.dis":`dis`,"vnd.mobius.mbk":`mbk`,"vnd.mobius.mqy":`mqy`,"vnd.mobius.msl":`msl`,"vnd.mobius.plc":`plc`,"vnd.mobius.txf":`txf`,"vnd.mophun.application":`mpn`,"vnd.mophun.certificate":`mpc`,"vnd.ms-artgalry":`cil`,"vnd.ms-cab-compressed":`cab`,"vnd.ms-excel.addin.macroenabled.12":`xlam`,"vnd.ms-excel.sheet.binary.macroenabled.12":`xlsb`,"vnd.ms-excel.sheet.macroenabled.12":`xlsm`,"vnd.ms-excel.template.macroenabled.12":`xltm`,"vnd.ms-fontobject":`eot`,"vnd.ms-htmlhelp":`chm`,"vnd.ms-ims":`ims`,"vnd.ms-lrm":`lrm`,"vnd.ms-officetheme":`thmx`,"vnd.ms-powerpoint.addin.macroenabled.12":`ppam`,"vnd.ms-powerpoint.presentation.macroenabled.12":`pptm`,"vnd.ms-powerpoint.slide.macroenabled.12":`sldm`,"vnd.ms-powerpoint.slideshow.macroenabled.12":`ppsm`,"vnd.ms-powerpoint.template.macroenabled.12":`potm`,"vnd.ms-project":[`mpp`,`mpt`],"vnd.ms-word.document.macroenabled.12":`docm`,"vnd.ms-word.template.macroenabled.12":`dotm`,"vnd.ms-works":[`wps`,`wks`,`wcm`,`wdb`],"vnd.ms-wpl":`wpl`,"vnd.ms-xpsdocument":`xps`,"vnd.mseq":`mseq`,"vnd.musician":`mus`,"vnd.muvee.style":`msty`,"vnd.mynfc":`taglet`,"vnd.neurolanguage.nlu":`nlu`,"vnd.nitf":[`ntf`,`nitf`],"vnd.noblenet-directory":`nnd`,"vnd.noblenet-sealer":`nns`,"vnd.noblenet-web":`nnw`,"vnd.nokia.n-gage.data":`ngdat`,"vnd.nokia.n-gage.symbian.install":`n-gage`,"vnd.nokia.radio-preset":`rpst`,"vnd.nokia.radio-presets":`rpss`,"vnd.novadigm.edm":`edm`,"vnd.novadigm.edx":`edx`,"vnd.novadigm.ext":`ext`,"vnd.oasis.opendocument.chart-template":`otc`,"vnd.oasis.opendocument.formula-template":`odft`,"vnd.oasis.opendocument.image-template":`oti`,"vnd.olpc-sugar":`xo`,"vnd.oma.dd2+xml":`dd2`,"vnd.openofficeorg.extension":`oxt`,"vnd.openxmlformats-officedocument.presentationml.slide":`sldx`,"vnd.osgeo.mapguide.package":`mgp`,"vnd.osgi.dp":`dp`,"vnd.osgi.subsystem":`esa`,"vnd.palm":[`pdb`,`pqa`,`oprc`],"vnd.pawaafile":`paw`,"vnd.pg.format":`str`,"vnd.pg.osasli":`ei6`,"vnd.picsel":`efif`,"vnd.pmi.widget":`wg`,"vnd.pocketlearn":`plf`,"vnd.powerbuilder6":`pbd`,"vnd.previewsystems.box":`box`,"vnd.proteus.magazine":`mgz`,"vnd.publishare-delta-tree":`qps`,"vnd.pvi.ptid1":`ptid`,"vnd.quark.quarkxpress":[`qxd`,`qxt`,`qwd`,`qwt`,`qxl`,`qxb`],"vnd.realvnc.bed":`bed`,"vnd.recordare.musicxml":`mxl`,"vnd.recordare.musicxml+xml":`musicxml`,"vnd.rig.cryptonote":`cryptonote`,"vnd.rn-realmedia":`rm`,"vnd.rn-realmedia-vbr":`rmvb`,"vnd.route66.link66+xml":`link66`,"vnd.sailingtracker.track":`st`,"vnd.seemail":`see`,"vnd.sema":`sema`,"vnd.semd":`semd`,"vnd.semf":`semf`,"vnd.shana.informed.formdata":`ifm`,"vnd.shana.informed.formtemplate":`itp`,"vnd.shana.informed.interchange":`iif`,"vnd.shana.informed.package":`ipk`,"vnd.simtech-mindmapper":[`twd`,`twds`],"vnd.smart.teacher":`teacher`,"vnd.solent.sdkm+xml":[`sdkm`,`sdkd`],"vnd.spotfire.dxp":`dxp`,"vnd.spotfire.sfs":`sfs`,"vnd.stepmania.package":`smzip`,"vnd.stepmania.stepchart":`sm`,"vnd.sus-calendar":[`sus`,`susp`],"vnd.svd":`svd`,"vnd.syncml+xml":`xsm`,"vnd.syncml.dm+wbxml":`bdm`,"vnd.syncml.dm+xml":`xdm`,"vnd.tao.intent-module-archive":`tao`,"vnd.tcpdump.pcap":[`pcap`,`cap`,`dmp`],"vnd.tmobile-livetv":`tmo`,"vnd.trid.tpt":`tpt`,"vnd.triscape.mxs":`mxs`,"vnd.trueapp":`tra`,"vnd.ufdl":[`ufd`,`ufdl`],"vnd.uiq.theme":`utz`,"vnd.umajin":`umj`,"vnd.unity":`unityweb`,"vnd.uoml+xml":`uoml`,"vnd.vcx":`vcx`,"vnd.visionary":`vis`,"vnd.vsf":`vsf`,"vnd.webturbo":`wtb`,"vnd.wolfram.player":`nbp`,"vnd.wqd":`wqd`,"vnd.wt.stf":`stf`,"vnd.xara":`xar`,"vnd.xfdl":`xfdl`,"vnd.yamaha.hv-dic":`hvd`,"vnd.yamaha.hv-script":`hvs`,"vnd.yamaha.hv-voice":`hvp`,"vnd.yamaha.openscoreformat":`osf`,"vnd.yamaha.openscoreformat.osfpvg+xml":`osfpvg`,"vnd.yamaha.smaf-audio":`saf`,"vnd.yamaha.smaf-phrase":`spf`,"vnd.yellowriver-custom-menu":`cmp`,"vnd.zul":[`zir`,`zirz`],"vnd.zzazz.deck+xml":`zaz`,"voicexml+xml":`vxml`,widget:`wgt`,winhlp:`hlp`,"wsdl+xml":`wsdl`,"wspolicy+xml":`wspolicy`,"x-ace-compressed":`ace`,"x-authorware-bin":[`aab`,`x32`,`u32`,`vox`],"x-authorware-map":`aam`,"x-authorware-seg":`aas`,"x-blorb":[`blb`,`blorb`],"x-bzip":`bz`,"x-bzip2":[`bz2`,`boz`],"x-cfs-compressed":`cfs`,"x-chat":`chat`,"x-conference":`nsc`,"x-dgc-compressed":`dgc`,"x-dtbncx+xml":`ncx`,"x-dtbook+xml":`dtb`,"x-dtbresource+xml":`res`,"x-eva":`eva`,"x-font-bdf":`bdf`,"x-font-ghostscript":`gsf`,"x-font-linux-psf":`psf`,"x-font-pcf":`pcf`,"x-font-snf":`snf`,"x-font-ttf":[`ttf`,`ttc`],"x-font-type1":[`pfa`,`pfb`,`pfm`,`afm`],"x-freearc":`arc`,"x-gca-compressed":`gca`,"x-glulx":`ulx`,"x-gramps-xml":`gramps`,"x-install-instructions":`install`,"x-lzh-compressed":[`lzh`,`lha`],"x-mie":`mie`,"x-mobipocket-ebook":[`prc`,`mobi`],"x-ms-application":`application`,"x-ms-shortcut":`lnk`,"x-ms-xbap":`xbap`,"x-msbinder":`obd`,"x-mscardfile":`crd`,"x-msclip":`clp`,"application/x-ms-installer":`msi`,"x-msmediaview":[`mvb`,`m13`,`m14`],"x-msmetafile":[`wmf`,`wmz`,`emf`,`emz`],"x-msmoney":`mny`,"x-mspublisher":`pub`,"x-msschedule":`scd`,"x-msterminal":`trm`,"x-mswrite":`wri`,"x-nzb":`nzb`,"x-pkcs12":[`p12`,`pfx`],"x-pkcs7-certificates":[`p7b`,`spc`],"x-research-info-systems":`ris`,"x-silverlight-app":`xap`,"x-sql":`sql`,"x-stuffitx":`sitx`,"x-subrip":`srt`,"x-t3vm-image":`t3`,"x-tex-tfm":`tfm`,"x-tgif":`obj`,"x-xliff+xml":`xlf`,"x-xz":`xz`,"x-zmachine":[`z1`,`z2`,`z3`,`z4`,`z5`,`z6`,`z7`,`z8`],"xaml+xml":`xaml`,"xcap-diff+xml":`xdf`,"xenc+xml":`xenc`,"xml-dtd":`dtd`,"xop+xml":`xop`,"xproc+xml":`xpl`,"xslt+xml":`xslt`,"xv+xml":[`mxml`,`xhvml`,`xvml`,`xvm`],yang:`yang`,"yin+xml":`yin`,envoy:`evy`,fractals:`fif`,"internet-property-stream":`acx`,olescript:`axs`,"vnd.ms-outlook":`msg`,"vnd.ms-pkicertstore":`sst`,"x-compress":`z`,"x-perfmon":[`pma`,`pmc`,`pmr`,`pmw`],"ynd.ms-pkipko":`pko`,gzip:[`gz`,`tgz`],"smil+xml":[`smi`,`smil`],"vnd.debian.binary-package":[`deb`,`udeb`],"vnd.hzn-3d-crossword":`x3d`,"vnd.sqlite3":[`db`,`sqlite`,`sqlite3`,`db-wal`,`sqlite-wal`,`db-shm`,`sqlite-shm`],"vnd.wap.sic":`sic`,"vnd.wap.slc":`slc`,"x-krita":[`kra`,`krz`],"x-perl":[`pm`,`pl`],yaml:[`yaml`,`yml`]},audio:{amr:`amr`,"amr-wb":`awb`,annodex:`axa`,basic:[`au`,`snd`],flac:`flac`,midi:[`mid`,`midi`,`kar`,`rmi`],mpeg:[`mpga`,`mpega`,`mp3`,`m4a`,`mp2a`,`m2a`,`m3a`],mpegurl:`m3u`,ogg:[`oga`,`ogg`,`spx`],"prs.sid":`sid`,"x-aiff":`aifc`,"x-gsm":`gsm`,"x-ms-wma":`wma`,"x-ms-wax":`wax`,"x-pn-realaudio":`ram`,"x-realaudio":`ra`,"x-sd2":`sd2`,adpcm:`adp`,mp4:`mp4a`,s3m:`s3m`,silk:`sil`,"vnd.dece.audio":[`uva`,`uvva`],"vnd.digital-winds":`eol`,"vnd.dra":`dra`,"vnd.dts":`dts`,"vnd.dts.hd":`dtshd`,"vnd.lucent.voice":`lvp`,"vnd.ms-playready.media.pya":`pya`,"vnd.nuera.ecelp4800":`ecelp4800`,"vnd.nuera.ecelp7470":`ecelp7470`,"vnd.nuera.ecelp9600":`ecelp9600`,"vnd.rip":`rip`,webm:`weba`,"x-caf":`caf`,"x-matroska":`mka`,"x-pn-realaudio-plugin":`rmp`,xm:`xm`,aac:`aac`,aiff:[`aiff`,`aif`,`aff`],opus:`opus`,wav:`wav`},chemical:{"x-alchemy":`alc`,"x-cache":[`cac`,`cache`],"x-cache-csf":`csf`,"x-cactvs-binary":[`cbin`,`cascii`,`ctab`],"x-cdx":`cdx`,"x-chem3d":`c3d`,"x-cif":`cif`,"x-cmdf":`cmdf`,"x-cml":`cml`,"x-compass":`cpa`,"x-crossfire":`bsd`,"x-csml":[`csml`,`csm`],"x-ctx":`ctx`,"x-cxf":[`cxf`,`cef`],"x-embl-dl-nucleotide":[`emb`,`embl`],"x-gamess-input":[`inp`,`gam`,`gamin`],"x-gaussian-checkpoint":[`fch`,`fchk`],"x-gaussian-cube":`cub`,"x-gaussian-input":[`gau`,`gjc`,`gjf`],"x-gaussian-log":`gal`,"x-gcg8-sequence":`gcg`,"x-genbank":`gen`,"x-hin":`hin`,"x-isostar":[`istr`,`ist`],"x-jcamp-dx":[`jdx`,`dx`],"x-kinemage":`kin`,"x-macmolecule":`mcm`,"x-macromodel-input":`mmod`,"x-mdl-molfile":`mol`,"x-mdl-rdfile":`rd`,"x-mdl-rxnfile":`rxn`,"x-mdl-sdfile":`sd`,"x-mdl-tgf":`tgf`,"x-mmcif":`mcif`,"x-mol2":`mol2`,"x-molconn-Z":`b`,"x-mopac-graph":`gpt`,"x-mopac-input":[`mop`,`mopcrt`,`zmt`],"x-mopac-out":`moo`,"x-ncbi-asn1":`asn`,"x-ncbi-asn1-ascii":[`prt`,`ent`],"x-ncbi-asn1-binary":`val`,"x-rosdal":`ros`,"x-swissprot":`sw`,"x-vamas-iso14976":`vms`,"x-vmd":`vmd`,"x-xtel":`xtel`,"x-xyz":`xyz`},font:{otf:`otf`,woff:`woff`,woff2:`woff2`},image:{gif:`gif`,ief:`ief`,jpeg:[`jpeg`,`jpg`,`jpe`,`jfif`,`jfif-tbnl`,`jif`],pcx:`pcx`,png:`png`,"svg+xml":[`svg`,`svgz`],tiff:[`tiff`,`tif`],"vnd.djvu":[`djvu`,`djv`],"vnd.wap.wbmp":`wbmp`,"x-canon-cr2":`cr2`,"x-canon-crw":`crw`,"x-cmu-raster":`ras`,"x-coreldraw":`cdr`,"x-coreldrawpattern":`pat`,"x-coreldrawtemplate":`cdt`,"x-corelphotopaint":`cpt`,"x-epson-erf":`erf`,"x-icon":`ico`,"x-jg":`art`,"x-jng":`jng`,"x-nikon-nef":`nef`,"x-olympus-orf":`orf`,"x-portable-anymap":`pnm`,"x-portable-bitmap":`pbm`,"x-portable-graymap":`pgm`,"x-portable-pixmap":`ppm`,"x-rgb":`rgb`,"x-xbitmap":`xbm`,"x-xpixmap":`xpm`,"x-xwindowdump":`xwd`,bmp:`bmp`,cgm:`cgm`,g3fax:`g3`,ktx:`ktx`,"prs.btif":`btif`,sgi:`sgi`,"vnd.dece.graphic":[`uvi`,`uvvi`,`uvg`,`uvvg`],"vnd.dwg":`dwg`,"vnd.dxf":`dxf`,"vnd.fastbidsheet":`fbs`,"vnd.fpx":`fpx`,"vnd.fst":`fst`,"vnd.fujixerox.edmics-mmr":`mmr`,"vnd.fujixerox.edmics-rlc":`rlc`,"vnd.ms-modi":`mdi`,"vnd.ms-photo":`wdp`,"vnd.net-fpx":`npx`,"vnd.xiff":`xif`,webp:`webp`,"x-3ds":`3ds`,"x-cmx":`cmx`,"x-freehand":[`fh`,`fhc`,`fh4`,`fh5`,`fh7`],"x-pict":[`pic`,`pct`],"x-tga":`tga`,"cis-cod":`cod`,avif:`avifs`,heic:[`heif`,`heic`],pjpeg:[`pjpg`],"vnd.adobe.photoshop":`psd`,"x-adobe-dng":`dng`,"x-fuji-raf":`raf`,"x-icns":`icns`,"x-kodak-dcr":`dcr`,"x-kodak-k25":`k25`,"x-kodak-kdc":`kdc`,"x-minolta-mrw":`mrw`,"x-panasonic-raw":[`raw`,`rw2`,`rwl`],"x-pentax-pef":[`pef`,`ptx`],"x-sigma-x3f":`x3f`,"x-sony-arw":`arw`,"x-sony-sr2":`sr2`,"x-sony-srf":`srf`},message:{rfc822:[`eml`,`mime`,`mht`,`mhtml`,`nws`]},model:{iges:[`igs`,`iges`],mesh:[`msh`,`mesh`,`silo`],vrml:[`wrl`,`vrml`],"x3d+vrml":[`x3dv`,`x3dvz`],"x3d+xml":`x3dz`,"x3d+binary":[`x3db`,`x3dbz`],"vnd.collada+xml":`dae`,"vnd.dwf":`dwf`,"vnd.gdl":`gdl`,"vnd.gtw":`gtw`,"vnd.mts":`mts`,"vnd.usdz+zip":`usdz`,"vnd.vtu":`vtu`},text:{"cache-manifest":[`manifest`,`appcache`],calendar:[`ics`,`icz`,`ifb`],css:`css`,csv:`csv`,h323:`323`,html:[`html`,`htm`,`shtml`,`stm`],iuls:`uls`,plain:[`txt`,`text`,`brf`,`conf`,`def`,`list`,`log`,`in`,`bas`,`diff`,`ksh`],richtext:`rtx`,scriptlet:[`sct`,`wsc`],texmacs:`tm`,"tab-separated-values":`tsv`,"vnd.sun.j2me.app-descriptor":`jad`,"vnd.wap.wml":`wml`,"vnd.wap.wmlscript":`wmls`,"x-bibtex":`bib`,"x-boo":`boo`,"x-c++hdr":[`h++`,`hpp`,`hxx`,`hh`],"x-c++src":[`c++`,`cpp`,`cxx`,`cc`],"x-component":`htc`,"x-dsrc":`d`,"x-diff":`patch`,"x-haskell":`hs`,"x-java":`java`,"x-literate-haskell":`lhs`,"x-moc":`moc`,"x-pascal":[`p`,`pas`,`pp`,`inc`],"x-pcs-gcd":`gcd`,"x-python":`py`,"x-scala":`scala`,"x-setext":`etx`,"x-tcl":[`tcl`,`tk`],"x-tex":[`tex`,`ltx`,`sty`,`cls`],"x-vcalendar":`vcs`,"x-vcard":`vcf`,n3:`n3`,"prs.lines.tag":`dsc`,sgml:[`sgml`,`sgm`],troff:[`t`,`tr`,`roff`,`man`,`me`,`ms`],turtle:`ttl`,"uri-list":[`uri`,`uris`,`urls`],vcard:`vcard`,"vnd.curl":`curl`,"vnd.curl.dcurl":`dcurl`,"vnd.curl.scurl":`scurl`,"vnd.curl.mcurl":`mcurl`,"vnd.dvb.subtitle":`sub`,"vnd.fly":`fly`,"vnd.fmi.flexstor":`flx`,"vnd.graphviz":`gv`,"vnd.in3d.3dml":`3dml`,"vnd.in3d.spot":`spot`,"x-asm":[`s`,`asm`],"x-c":[`c`,`h`,`dic`],"x-fortran":[`f`,`for`,`f77`,`f90`],"x-opml":`opml`,"x-nfo":`nfo`,"x-sfv":`sfv`,"x-uuencode":`uu`,webviewhtml:`htt`,javascript:`js`,json:`json`,markdown:[`md`,`markdown`,`mdown`,`markdn`],"vnd.wap.si":`si`,"vnd.wap.sl":`sl`},video:{avif:`avif`,"3gpp":`3gp`,annodex:`axv`,dl:`dl`,dv:[`dif`,`dv`],fli:`fli`,gl:`gl`,mpeg:[`mpeg`,`mpg`,`mpe`,`m1v`,`m2v`,`mp2`,`mpa`,`mpv2`],mp4:[`mp4`,`mp4v`,`mpg4`],quicktime:[`qt`,`mov`],ogg:`ogv`,"vnd.mpegurl":[`mxu`,`m4u`],"x-flv":`flv`,"x-la-asf":[`lsf`,`lsx`],"x-mng":`mng`,"x-ms-asf":[`asf`,`asx`,`asr`],"x-ms-wm":`wm`,"x-ms-wmv":`wmv`,"x-ms-wmx":`wmx`,"x-ms-wvx":`wvx`,"x-msvideo":`avi`,"x-sgi-movie":`movie`,"x-matroska":[`mpv`,`mkv`,`mk3d`,`mks`],"3gpp2":`3g2`,h261:`h261`,h263:`h263`,h264:`h264`,jpeg:`jpgv`,jpm:[`jpm`,`jpgm`],mj2:[`mj2`,`mjp2`],"vnd.dece.hd":[`uvh`,`uvvh`],"vnd.dece.mobile":[`uvm`,`uvvm`],"vnd.dece.pd":[`uvp`,`uvvp`],"vnd.dece.sd":[`uvs`,`uvvs`],"vnd.dece.video":[`uvv`,`uvvv`],"vnd.dvb.file":`dvb`,"vnd.fvt":`fvt`,"vnd.ms-playready.media.pyv":`pyv`,"vnd.uvvu.mp4":[`uvu`,`uvvu`],"vnd.vivo":`viv`,webm:`webm`,"x-f4v":`f4v`,"x-m4v":`m4v`,"x-ms-vob":`vob`,"x-smv":`smv`,mp2t:`ts`},"x-conference":{"x-cooltalk":`ice`},"x-world":{"x-vrml":[`vrm`,`flr`,`wrz`,`xaf`,`xof`]}};(()=>{let e={};for(let t of Object.keys(na))for(let n of Object.keys(na[t])){let r=na[t][n];if(typeof r==`string`)e[r]=t+`/`+n;else for(let i=0;i<r.length;i++)e[r[i]]=t+`/`+n}return e})(),oe(O);var ra=e(t(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):n.JSON5=r()})(e,(function(){function e(e,t){return t={exports:{}},e(t,t.exports),t.exports}var t=e(function(e){var t=e.exports=typeof window<`u`&&window.Math==Math?window:typeof self<`u`&&self.Math==Math?self:Function(`return this`)();typeof __g==`number`&&(__g=t)}),n=e(function(e){var t=e.exports={version:`2.6.5`};typeof __e==`number`&&(__e=t)});n.version;var r=function(e){return typeof e==`object`?e!==null:typeof e==`function`},i=function(e){if(!r(e))throw TypeError(e+` is not an object!`);return e},a=function(e){try{return!!e()}catch{return!0}},o=!a(function(){return Object.defineProperty({},`a`,{get:function(){return 7}}).a!=7}),s=t.document,c=r(s)&&r(s.createElement),l=function(e){return c?s.createElement(e):{}},u=!o&&!a(function(){return Object.defineProperty(l(`div`),`a`,{get:function(){return 7}}).a!=7}),d=function(e,t){if(!r(e))return e;var n,i;if(t&&typeof(n=e.toString)==`function`&&!r(i=n.call(e))||typeof(n=e.valueOf)==`function`&&!r(i=n.call(e))||!t&&typeof(n=e.toString)==`function`&&!r(i=n.call(e)))return i;throw TypeError(`Can't convert object to primitive value`)},f=Object.defineProperty,p={f:o?Object.defineProperty:function(e,t,n){if(i(e),t=d(t,!0),i(n),u)try{return f(e,t,n)}catch{}if(`get`in n||`set`in n)throw TypeError(`Accessors not supported!`);return`value`in n&&(e[t]=n.value),e}},m=function(e,t){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:t}},h=o?function(e,t,n){return p.f(e,t,m(1,n))}:function(e,t,n){return e[t]=n,e},g={}.hasOwnProperty,_=function(e,t){return g.call(e,t)},v=0,y=Math.random(),b=function(e){return`Symbol(${e===void 0?``:e})_${(++v+y).toString(36)}`},x=!1,S=e(function(e){var r=`__core-js_shared__`,i=t[r]||(t[r]={});(e.exports=function(e,t){return i[e]||(i[e]=t===void 0?{}:t)})(`versions`,[]).push({version:n.version,mode:x?`pure`:`global`,copyright:`© 2019 Denis Pushkarev (zloirock.ru)`})})(`native-function-to-string`,Function.toString),ee=e(function(e){var r=b(`src`),i=`toString`,a=(``+S).split(i);n.inspectSource=function(e){return S.call(e)},(e.exports=function(e,n,i,o){var s=typeof i==`function`;s&&(_(i,`name`)||h(i,`name`,n)),e[n]!==i&&(s&&(_(i,r)||h(i,r,e[n]?``+e[n]:a.join(String(n)))),e===t?e[n]=i:o?e[n]?e[n]=i:h(e,n,i):(delete e[n],h(e,n,i)))})(Function.prototype,i,function(){return typeof this==`function`&&this[r]||S.call(this)})}),C=function(e){if(typeof e!=`function`)throw TypeError(e+` is not a function!`);return e},w=function(e,t,n){if(C(e),t===void 0)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}},T=`prototype`,E=function(e,r,i){var a=e&E.F,o=e&E.G,s=e&E.S,c=e&E.P,l=e&E.B,u=o?t:s?t[r]||(t[r]={}):(t[r]||{})[T],d=o?n:n[r]||(n[r]={}),f=d[T]||(d[T]={}),p,m,g,_;for(p in o&&(i=r),i)m=!a&&u&&u[p]!==void 0,g=(m?u:i)[p],_=l&&m?w(g,t):c&&typeof g==`function`?w(Function.call,g):g,u&&ee(u,p,g,e&E.U),d[p]!=g&&h(d,p,_),c&&f[p]!=g&&(f[p]=g)};t.core=n,E.F=1,E.G=2,E.S=4,E.P=8,E.B=16,E.W=32,E.U=64,E.R=128;var te=E,D=Math.ceil,ne=Math.floor,re=function(e){return isNaN(e=+e)?0:(e>0?ne:D)(e)},ie=function(e){if(e==null)throw TypeError(`Can't call method on `+e);return e},ae=function(e){return function(t,n){var r=String(ie(t)),i=re(n),a=r.length,o,s;return i<0||i>=a?e?``:void 0:(o=r.charCodeAt(i),o<55296||o>56319||i+1===a||(s=r.charCodeAt(i+1))<56320||s>57343?e?r.charAt(i):o:e?r.slice(i,i+2):(o-55296<<10)+(s-56320)+65536)}}(!1);te(te.P,`String`,{codePointAt:function(e){return ae(this,e)}}),n.String.codePointAt;var O=Math.max,k=Math.min,oe=function(e,t){return e=re(e),e<0?O(e+t,0):k(e,t)},se=String.fromCharCode,ce=String.fromCodePoint;te(te.S+te.F*(!!ce&&ce.length!=1),`String`,{fromCodePoint:function(e){for(var t=arguments,n=[],r=arguments.length,i=0,a;r>i;){if(a=+t[i++],oe(a,1114111)!==a)throw RangeError(a+` is not a valid code point`);n.push(a<65536?se(a):se(((a-=65536)>>10)+55296,a%1024+56320))}return n.join(``)}}),n.String.fromCodePoint;var A={Space_Separator:/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,ID_Start:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,ID_Continue:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},j={isSpaceSeparator:function(e){return typeof e==`string`&&A.Space_Separator.test(e)},isIdStartChar:function(e){return typeof e==`string`&&(e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e===`$`||e===`_`||A.ID_Start.test(e))},isIdContinueChar:function(e){return typeof e==`string`&&(e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e>=`0`&&e<=`9`||e===`$`||e===`_`||e===``||e===``||A.ID_Continue.test(e))},isDigit:function(e){return typeof e==`string`&&/[0-9]/.test(e)},isHexDigit:function(e){return typeof e==`string`&&/[0-9A-Fa-f]/.test(e)}},M,N,le,ue,P,F,I,de,fe,pe=function(e,t){M=String(e),N=`start`,le=[],ue=0,P=1,F=0,I=void 0,de=void 0,fe=void 0;do I=_e(),we[N]();while(I.type!==`eof`);return typeof t==`function`?me({"":fe},``,t):fe};function me(e,t,n){var r=e[t];if(typeof r==`object`&&r)if(Array.isArray(r))for(var i=0;i<r.length;i++){var a=String(i),o=me(r,a,n);o===void 0?delete r[a]:Object.defineProperty(r,a,{value:o,writable:!0,enumerable:!0,configurable:!0})}else for(var s in r){var c=me(r,s,n);c===void 0?delete r[s]:Object.defineProperty(r,s,{value:c,writable:!0,enumerable:!0,configurable:!0})}return n.call(e,t,r)}var L,R,he,ge,z;function _e(){for(L=`default`,R=``,he=!1,ge=1;;){z=ve();var e=ye[L]();if(e)return e}}function ve(){if(M[ue])return String.fromCodePoint(M.codePointAt(ue))}function B(){var e=ve();return e===`
|
|
3
|
+
`?(P++,F=0):e?F+=e.length:F++,e&&(ue+=e.length),e}var ye={default:function(){switch(z){case` `:case`\v`:case`\f`:case` `:case`\xA0`:case``:case`
|
|
4
|
+
`:case`\r`:case`\u2028`:case`\u2029`:B();return;case`/`:B(),L=`comment`;return;case void 0:return B(),V(`eof`)}if(j.isSpaceSeparator(z)){B();return}return ye[N]()},comment:function(){switch(z){case`*`:B(),L=`multiLineComment`;return;case`/`:B(),L=`singleLineComment`;return}throw H(B())},multiLineComment:function(){switch(z){case`*`:B(),L=`multiLineCommentAsterisk`;return;case void 0:throw H(B())}B()},multiLineCommentAsterisk:function(){switch(z){case`*`:B();return;case`/`:B(),L=`default`;return;case void 0:throw H(B())}B(),L=`multiLineComment`},singleLineComment:function(){switch(z){case`
|
|
5
|
+
`:case`\r`:case`\u2028`:case`\u2029`:B(),L=`default`;return;case void 0:return B(),V(`eof`)}B()},value:function(){switch(z){case`{`:case`[`:return V(`punctuator`,B());case`n`:return B(),be(`ull`),V(`null`,null);case`t`:return B(),be(`rue`),V(`boolean`,!0);case`f`:return B(),be(`alse`),V(`boolean`,!1);case`-`:case`+`:B()===`-`&&(ge=-1),L=`sign`;return;case`.`:R=B(),L=`decimalPointLeading`;return;case`0`:R=B(),L=`zero`;return;case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:R=B(),L=`decimalInteger`;return;case`I`:return B(),be(`nfinity`),V(`numeric`,1/0);case`N`:return B(),be(`aN`),V(`numeric`,NaN);case`"`:case`'`:he=B()===`"`,R=``,L=`string`;return}throw H(B())},identifierNameStartEscape:function(){if(z!==`u`)throw H(B());B();var e=Ce();switch(e){case`$`:case`_`:break;default:if(!j.isIdStartChar(e))throw Oe();break}R+=e,L=`identifierName`},identifierName:function(){switch(z){case`$`:case`_`:case``:case``:R+=B();return;case`\\`:B(),L=`identifierNameEscape`;return}if(j.isIdContinueChar(z)){R+=B();return}return V(`identifier`,R)},identifierNameEscape:function(){if(z!==`u`)throw H(B());B();var e=Ce();switch(e){case`$`:case`_`:case``:case``:break;default:if(!j.isIdContinueChar(e))throw Oe();break}R+=e,L=`identifierName`},sign:function(){switch(z){case`.`:R=B(),L=`decimalPointLeading`;return;case`0`:R=B(),L=`zero`;return;case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:R=B(),L=`decimalInteger`;return;case`I`:return B(),be(`nfinity`),V(`numeric`,ge*(1/0));case`N`:return B(),be(`aN`),V(`numeric`,NaN)}throw H(B())},zero:function(){switch(z){case`.`:R+=B(),L=`decimalPoint`;return;case`e`:case`E`:R+=B(),L=`decimalExponent`;return;case`x`:case`X`:R+=B(),L=`hexadecimal`;return}return V(`numeric`,ge*0)},decimalInteger:function(){switch(z){case`.`:R+=B(),L=`decimalPoint`;return;case`e`:case`E`:R+=B(),L=`decimalExponent`;return}if(j.isDigit(z)){R+=B();return}return V(`numeric`,ge*Number(R))},decimalPointLeading:function(){if(j.isDigit(z)){R+=B(),L=`decimalFraction`;return}throw H(B())},decimalPoint:function(){switch(z){case`e`:case`E`:R+=B(),L=`decimalExponent`;return}if(j.isDigit(z)){R+=B(),L=`decimalFraction`;return}return V(`numeric`,ge*Number(R))},decimalFraction:function(){switch(z){case`e`:case`E`:R+=B(),L=`decimalExponent`;return}if(j.isDigit(z)){R+=B();return}return V(`numeric`,ge*Number(R))},decimalExponent:function(){switch(z){case`+`:case`-`:R+=B(),L=`decimalExponentSign`;return}if(j.isDigit(z)){R+=B(),L=`decimalExponentInteger`;return}throw H(B())},decimalExponentSign:function(){if(j.isDigit(z)){R+=B(),L=`decimalExponentInteger`;return}throw H(B())},decimalExponentInteger:function(){if(j.isDigit(z)){R+=B();return}return V(`numeric`,ge*Number(R))},hexadecimal:function(){if(j.isHexDigit(z)){R+=B(),L=`hexadecimalInteger`;return}throw H(B())},hexadecimalInteger:function(){if(j.isHexDigit(z)){R+=B();return}return V(`numeric`,ge*Number(R))},string:function(){switch(z){case`\\`:B(),R+=xe();return;case`"`:if(he)return B(),V(`string`,R);R+=B();return;case`'`:if(!he)return B(),V(`string`,R);R+=B();return;case`
|
|
6
|
+
`:case`\r`:throw H(B());case`\u2028`:case`\u2029`:ke(z);break;case void 0:throw H(B())}R+=B()},start:function(){switch(z){case`{`:case`[`:return V(`punctuator`,B())}L=`value`},beforePropertyName:function(){switch(z){case`$`:case`_`:R=B(),L=`identifierName`;return;case`\\`:B(),L=`identifierNameStartEscape`;return;case`}`:return V(`punctuator`,B());case`"`:case`'`:he=B()===`"`,L=`string`;return}if(j.isIdStartChar(z)){R+=B(),L=`identifierName`;return}throw H(B())},afterPropertyName:function(){if(z===`:`)return V(`punctuator`,B());throw H(B())},beforePropertyValue:function(){L=`value`},afterPropertyValue:function(){switch(z){case`,`:case`}`:return V(`punctuator`,B())}throw H(B())},beforeArrayValue:function(){if(z===`]`)return V(`punctuator`,B());L=`value`},afterArrayValue:function(){switch(z){case`,`:case`]`:return V(`punctuator`,B())}throw H(B())},end:function(){throw H(B())}};function V(e,t){return{type:e,value:t,line:P,column:F}}function be(e){for(var t=0,n=e;t<n.length;t+=1){var r=n[t];if(ve()!==r)throw H(B());B()}}function xe(){switch(ve()){case`b`:return B(),`\b`;case`f`:return B(),`\f`;case`n`:return B(),`
|
|
7
|
+
`;case`r`:return B(),`\r`;case`t`:return B(),` `;case`v`:return B(),`\v`;case`0`:if(B(),j.isDigit(ve()))throw H(B());return`\0`;case`x`:return B(),Se();case`u`:return B(),Ce();case`
|
|
8
|
+
`:case`\u2028`:case`\u2029`:return B(),``;case`\r`:return B(),ve()===`
|
|
9
|
+
`&&B(),``;case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:throw H(B());case void 0:throw H(B())}return B()}function Se(){var e=``,t=ve();if(!j.isHexDigit(t)||(e+=B(),t=ve(),!j.isHexDigit(t)))throw H(B());return e+=B(),String.fromCodePoint(parseInt(e,16))}function Ce(){for(var e=``,t=4;t-- >0;){var n=ve();if(!j.isHexDigit(n))throw H(B());e+=B()}return String.fromCodePoint(parseInt(e,16))}var we={start:function(){if(I.type===`eof`)throw De();Te()},beforePropertyName:function(){switch(I.type){case`identifier`:case`string`:de=I.value,N=`afterPropertyName`;return;case`punctuator`:Ee();return;case`eof`:throw De()}},afterPropertyName:function(){if(I.type===`eof`)throw De();N=`beforePropertyValue`},beforePropertyValue:function(){if(I.type===`eof`)throw De();Te()},beforeArrayValue:function(){if(I.type===`eof`)throw De();if(I.type===`punctuator`&&I.value===`]`){Ee();return}Te()},afterPropertyValue:function(){if(I.type===`eof`)throw De();switch(I.value){case`,`:N=`beforePropertyName`;return;case`}`:Ee()}},afterArrayValue:function(){if(I.type===`eof`)throw De();switch(I.value){case`,`:N=`beforeArrayValue`;return;case`]`:Ee()}},end:function(){}};function Te(){var e;switch(I.type){case`punctuator`:switch(I.value){case`{`:e={};break;case`[`:e=[];break}break;case`null`:case`boolean`:case`numeric`:case`string`:e=I.value;break}if(fe===void 0)fe=e;else{var t=le[le.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,de,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(typeof e==`object`&&e)le.push(e),N=Array.isArray(e)?`beforeArrayValue`:`beforePropertyName`;else{var n=le[le.length-1];N=n==null?`end`:Array.isArray(n)?`afterArrayValue`:`afterPropertyValue`}}function Ee(){le.pop();var e=le[le.length-1];N=e==null?`end`:Array.isArray(e)?`afterArrayValue`:`afterPropertyValue`}function H(e){return je(e===void 0?`JSON5: invalid end of input at `+P+`:`+F:`JSON5: invalid character '`+Ae(e)+`' at `+P+`:`+F)}function De(){return je(`JSON5: invalid end of input at `+P+`:`+F)}function Oe(){return F-=5,je(`JSON5: invalid identifier character at `+P+`:`+F)}function ke(e){console.warn(`JSON5: '`+Ae(e)+`' in strings is not valid ECMAScript; consider escaping`)}function Ae(e){var t={"'":`\\'`,'"':`\\"`,"\\":`\\\\`,"\b":`\\b`,"\f":`\\f`,"\n":`\\n`,"\r":`\\r`," ":`\\t`,"\v":`\\v`,"\0":`\\0`,"\u2028":`\\u2028`,"\u2029":`\\u2029`};if(t[e])return t[e];if(e<` `){var n=e.charCodeAt(0).toString(16);return`\\x`+(`00`+n).substring(n.length)}return e}function je(e){var t=SyntaxError(e);return t.lineNumber=P,t.columnNumber=F,t}return{parse:pe,stringify:function(e,t,n){var r=[],i=``,a,o,s=``,c;if(typeof t==`object`&&t&&!Array.isArray(t)&&(n=t.space,c=t.quote,t=t.replacer),typeof t==`function`)o=t;else if(Array.isArray(t)){a=[];for(var l=0,u=t;l<u.length;l+=1){var d=u[l],f=void 0;typeof d==`string`?f=d:(typeof d==`number`||d instanceof String||d instanceof Number)&&(f=String(d)),f!==void 0&&a.indexOf(f)<0&&a.push(f)}}return n instanceof Number?n=Number(n):n instanceof String&&(n=String(n)),typeof n==`number`?n>0&&(n=Math.min(10,Math.floor(n)),s=` `.substr(0,n)):typeof n==`string`&&(s=n.substr(0,10)),p(``,{"":e});function p(e,t){var n=t[e];switch(n!=null&&(typeof n.toJSON5==`function`?n=n.toJSON5(e):typeof n.toJSON==`function`&&(n=n.toJSON(e))),o&&(n=o.call(t,e,n)),n instanceof Number?n=Number(n):n instanceof String?n=String(n):n instanceof Boolean&&(n=n.valueOf()),n){case null:return`null`;case!0:return`true`;case!1:return`false`}if(typeof n==`string`)return m(n,!1);if(typeof n==`number`)return String(n);if(typeof n==`object`)return Array.isArray(n)?_(n):h(n)}function m(e){for(var t={"'":.1,'"':.2},n={"'":`\\'`,'"':`\\"`,"\\":`\\\\`,"\b":`\\b`,"\f":`\\f`,"\n":`\\n`,"\r":`\\r`," ":`\\t`,"\v":`\\v`,"\0":`\\0`,"\u2028":`\\u2028`,"\u2029":`\\u2029`},r=``,i=0;i<e.length;i++){var a=e[i];switch(a){case`'`:case`"`:t[a]++,r+=a;continue;case`\0`:if(j.isDigit(e[i+1])){r+=`\\x00`;continue}}if(n[a]){r+=n[a];continue}if(a<` `){var o=a.charCodeAt(0).toString(16);r+=`\\x`+(`00`+o).substring(o.length);continue}r+=a}var s=c||Object.keys(t).reduce(function(e,n){return t[e]<t[n]?e:n});return r=r.replace(new RegExp(s,`g`),n[s]),s+r+s}function h(e){if(r.indexOf(e)>=0)throw TypeError(`Converting circular structure to JSON5`);r.push(e);var t=i;i+=s;for(var n=a||Object.keys(e),o=[],c=0,l=n;c<l.length;c+=1){var u=l[c],d=p(u,e);if(d!==void 0){var f=g(u)+`:`;s!==``&&(f+=` `),f+=d,o.push(f)}}var m;if(o.length===0)m=`{}`;else{var h;if(s===``)h=o.join(`,`),m=`{`+h+`}`;else{var _=`,
|
|
10
|
+
`+i;h=o.join(_),m=`{
|
|
11
|
+
`+i+h+`,
|
|
12
|
+
`+t+`}`}}return r.pop(),i=t,m}function g(e){if(e.length===0)return m(e,!0);var t=String.fromCodePoint(e.codePointAt(0));if(!j.isIdStartChar(t))return m(e,!0);for(var n=t.length;n<e.length;n++)if(!j.isIdContinueChar(String.fromCodePoint(e.codePointAt(n))))return m(e,!0);return e}function _(e){if(r.indexOf(e)>=0)throw TypeError(`Converting circular structure to JSON5`);r.push(e);var t=i;i+=s;for(var n=[],a=0;a<e.length;a++){var o=p(String(a),e);n.push(o===void 0?`null`:o)}var c;if(n.length===0)c=`[]`;else if(s===``)c=`[`+n.join(`,`)+`]`;else{var l=`,
|
|
13
|
+
`+i,u=n.join(l);c=`[
|
|
14
|
+
`+i+u+`,
|
|
15
|
+
`+t+`]`}return r.pop(),i=t,c}}}}))}))(),1),ia=10**-4;function aa(e){return e*Math.PI/180}function oa(e){return 180*e/Math.PI}function X(e){let t=e;return Math.abs(t)<ia&&(t=0),t}function sa(e){let t=e%(2*Math.PI);return t<0&&(t+=2*Math.PI),t}function Z(e){let t=sa(e);return t>Math.PI&&(t-=2*Math.PI),t}function ca(e){let t=e%Math.PI;return t<0&&(t+=Math.PI),t}function la(e){let t=ca(e);return t>Math.PI/2&&(t-=Math.PI),t}function ua(e,t,n){let r=Z(t)-Z(e);return n?sa(r):sa(r)-2*Math.PI}function da(e,t,n,r){let i=!1;if(X(Z(e-t))===0)i=!0;else if(X(Z(e-n))===0)i=!0;else{let a=ua(t,n,r),o=ua(t,e,r);Math.abs(o)<Math.abs(a)&&(i=!0)}return i}function fa(e){return e.toFixed(2)}var Q={point:`grey`,line:`grey`,vector:`DarkTurquoise`,contour:`green`,mainOuter:`SlateBlue`,mainInner:`SteelBlue`,mainB:`SlateGrey`,second:`Violet`,secondB:`SlateGrey`,dynamics:`Tomato`,ruler:`blue`,origin:`red`,reference:`blue`,mouse:`yellow`},pa=.05;function ma(e,t,n){return[n.shiftX+(e-n.xMin)*n.scaleX,n.shiftY+(t-n.yMin)*n.scaleY]}function ha(e,t,n){return[(e-n.shiftX)/n.scaleX+n.xMin,(t-n.shiftY)/n.scaleY+n.yMin]}function ga(e,t){if(X(t.scaleX-Math.abs(t.scaleY))!==0)throw`err683: iAdjust.scaleX and scaleY differ ${t.scaleX} ${t.scaleY}`;if(t.scaleX<0)throw`err684: iAdjust.scaleX ${t.scaleX} is negative`;let n=e*t.scaleX;if(n<0)throw`err685: rRadius for canvas ${n} is negative`;return n}function _a(){return{init:0,xMin:0,yMin:0,xyDiff:1,shiftX:0,shiftY:0,scaleX:1,scaleY:1}}function va(e){return{init:e.init,xMin:e.xMin,yMin:e.yMin,xyDiff:e.xyDiff,shiftX:e.shiftX,shiftY:e.shiftY,scaleX:e.scaleX,scaleY:e.scaleY}}function ya(e,t,n,r,i,a){let o=_a(),s=Math.max(t-e,1),c=Math.max(r-n,1),l=i/s,u=a/c,d=.9*l,f=s;return u<l&&(d=.9*u,f=c),o.init=1,o.xMin=e,o.yMin=n,o.xyDiff=f,o.shiftX=pa*i,o.scaleX=d,o.shiftY=a-pa*a,o.scaleY=-1*d,o}function ba(e,t,n){let r=va(n);return r.xMin=e-r.xyDiff/2,r.yMin=t-r.xyDiff/2,r}function xa(e,t,n,r,i,a){return ya(Math.min(e,n),Math.max(e,n),Math.min(t,r),Math.max(t,r),i,a)}function Sa(e,t){let n=va(t),r=(1-e)/2;return n.xMin+=r*t.xyDiff,n.yMin+=r*t.xyDiff,n.xyDiff*=e,n.scaleX*=1/e,n.scaleY*=1/e,n}function Ca(e,t,n,r,i){let a=va(i),o=n-e,s=r-t;return a.xMin+=-o,a.yMin+=-s,a}function wa(e,t,n){let r=va(n);if(e>0&&t>0){let n=e/t;r.xyDiff*=n,r.scaleX*=1/n,r.scaleY*=1/n,r.shiftX+=pa*t-pa*e,r.shiftY+=(1-pa)*t-(1-pa)*e}return r}function Ta(e,t){let n=0;if(t>e)throw`err539: ila < ilc ${e} ${t}`;return n=Math.sqrt(e**2-t**2),n}function Ea(e,t,n){let r=0,i=[e,t,n];for(let e=0;e<i.length;e++)if(i[e]<0)throw`err209: l3[${e}] = ${i[e]}`;let a=i.sort(function(e,t){return t-e});if(a[0]>a[1]+a[2])throw`err839: impossible triangle with length ${e}, ${t} and ${n}`;return r=Math.acos((e**2+t**2-n**2)/(2*e*t)),r}function Da(e,t,n){let r=0,i=[e,t,n];for(let e=0;e<i.length;e++)if(X(i[e])===0||i[e]<0)throw`err329: negative or zero triangle-args ${e} : ${i[e]}`;if(ca(t)+ca(n)>Math.PI)throw`err939: impossible triangle with angles ${t} and ${n}`;return r=e*Math.sin(n)/Math.sin(t),r}var Oa=class e{cx;cy;shape;constructor(e,t,n=0){this.cx=e,this.cy=t,this.shape=n}draw(e,t,n=Q.point,r=0){if(isFinite(this.cx)&&isFinite(this.cy)){let i=e.canvas.width*(.7/100),a=2*i,[o,s]=ma(this.cx,this.cy,t),c=r;switch(c===0&&(c=this.shape),e.beginPath(),c){case 2:e.moveTo(o-a,s),e.lineTo(o+a,s),e.moveTo(o,s-a),e.lineTo(o,s+a);break;case 3:e.rect(o-i,s-i,2*i,2*i);break;case 4:e.rect(o-2*i,s-2*i,4*i,4*i);break;case 5:e.moveTo(o-a,s),e.lineTo(o+a,s),e.lineTo(o,s+a),e.lineTo(o,s-a),e.lineTo(o-a,s);break;case 6:e.moveTo(o-a,s),e.lineTo(o+a,s),e.lineTo(o,s-a),e.lineTo(o,s+a);break;case 7:e.moveTo(o+a,s),e.lineTo(o-a,s),e.lineTo(o,s-a),e.lineTo(o,s+a);break;case 8:e.moveTo(o+a,s),e.lineTo(o-a,s),e.lineTo(o,s+a),e.lineTo(o,s-a);break;case 9:e.moveTo(o-a,s),e.lineTo(o+a,s),e.lineTo(o,s+a),e.lineTo(o,s-a);break;default:e.arc(o,s,i,0,2*Math.PI)}e.strokeStyle=n,e.stroke()}else console.log(`INFO489: point not draw because of infinity ${this.cx} ${this.cy}`)}distanceOrig(){return Math.sqrt(this.cx**2+this.cy**2)}angleOrig(){return Math.atan2(this.cy,this.cx)}getPolar(){return[this.angleOrig(),this.distanceOrig()]}setPolar(t,n){return new e(n*Math.cos(t),n*Math.sin(t))}translate(t,n){return new e(this.cx+t,this.cy+n)}translatePolar(t,n){return new e(this.cx+n*Math.cos(t),this.cy+n*Math.sin(t))}clone(t=0){return new e(this.cx,this.cy,t)}rotateOrig(e){let t=this.getPolar();return this.setPolar(t[0]+e,t[1])}scaleOrig(e){let t=this.getPolar();return this.setPolar(t[0],t[1]*e)}rotate(e,t){let n=this.translate(-1*e.cx,-1*e.cy).getPolar();return this.setPolar(n[0]+t,n[1]).translate(e.cx,e.cy)}scale(e,t){let n=this.translate(-1*e.cx,-1*e.cy).getPolar();return this.setPolar(n[0],n[1]*t).translate(e.cx,e.cy)}isEqual(e){return X(this.cx-e.cx)===0&&X(this.cy-e.cy)===0}distanceToPoint(e){return Math.sqrt((e.cx-this.cx)**2+(e.cy-this.cy)**2)}angleToPoint(e){if(X(this.distanceToPoint(e))===0)throw`err434: no angle because points identical ${this.cx} ${e.cx} ${this.cy} ${e.cy}`;return Math.atan2(e.cy-this.cy,e.cx-this.cx)}angleFromToPoints(e,t){let n=this.angleToPoint(e);return Z(this.angleToPoint(t)-n)}middlePoint(t){return new e((this.cx+t.cx)/2,(this.cy+t.cy)/2)}equidistantPoint(e,t,n){let r=this.distanceToPoint(e)/2;if(this.isEqual(e))throw`err633: no equidistance because identical point ${this.cx} ${this.cy}`;if(t<r)throw`err392: equidistance ${t} smaller than lp1p2h ${r}`;let i=this.middlePoint(e),a=this.angleToPoint(e)+Math.PI/2,o=Math.sqrt(t**2-r**2),s=i.translatePolar(a,o),c=i.translatePolar(a+Math.PI,o),l=n.distanceToPoint(s),u=n.distanceToPoint(c);if(o!==0&&l===u)throw`err284: magnet point p3 is on line p1p2. cx ${n.cx} cy: ${n.cy}`;let d=s;return u<l&&(d=c),d}};function $(e,t,n=0){return new Oa(e,t,n)}function ka(e){let t=0,n=0,r=0,i=0;if(e.length>0){let a=e[0];if(a.cx===-1/0||a.cx===1/0||a.cy===-1/0||a.cy===1/0)throw`err292: pointMinMax first point with infinity: ${a.cx} ${a.cy}`;t=e[0].cx,n=e[0].cx,r=e[0].cy,i=e[0].cy;for(let a of e)a.cx!==-1/0&&(t=Math.min(t,a.cx)),a.cx!==1/0&&(n=Math.max(n,a.cx)),a.cy!==-1/0&&(r=Math.min(r,a.cy)),a.cy!==1/0&&(i=Math.max(i,a.cy))}return[t,n,r,i]}var Aa=class e{cx;cy;ca;constructor(e,t,n){this.cx=e,this.cy=t,this.ca=n}draw(e,t,n=Q.line){let r=e.canvas.width*2,[i,a]=ma(this.cx-r*Math.cos(this.ca),this.cy-r*Math.sin(this.ca),t),[o,s]=ma(this.cx+2*r*Math.cos(this.ca),this.cy+2*r*Math.sin(this.ca),t);e.beginPath(),e.moveTo(i,a),e.lineTo(o,s),e.strokeStyle=n,e.stroke()}setFromPoints(e,t){return this.cx=e.cx,this.cy=e.cy,this.ca=e.angleToPoint(t),this}getAffine(){let e={quasiVertical:!1,ha:0,hb:0,va:0,vb:0};return Math.abs(la(this.ca))>Math.PI/4?(e.quasiVertical=!0,e.va=-1*Math.tan(la(this.ca-Math.PI/2)),e.vb=this.cx-e.va*this.cy):(e.ha=Math.tan(la(this.ca)),e.hb=this.cy-e.ha*this.cx),e}setAffine(t){let n=new e(0,0,0);return t.quasiVertical?(n.ca=Math.PI/2-Math.atan(t.va),n.cx=t.vb,n.cy=0):(n.ca=Math.atan(t.ha),n.cx=0,n.cy=t.hb),n}intersection(e){if(this.isParallel(e))throw`err902: no intersection, lines are parallel ca1: ${this.ca} ca2: ${e.ca}`;let t=0,n=0,r=this.getAffine(),i=e.getAffine();return r.quasiVertical?i.quasiVertical?(n=(r.vb-i.vb)/(i.va-r.va),t=r.va*n+r.vb):(t=(r.va*i.hb+r.vb)/(1-r.va*i.ha),n=i.ha*t+i.hb):i.quasiVertical?(n=(r.ha*i.vb+r.hb)/(1-r.ha*i.va),t=i.va*n+i.vb):(t=(r.hb-i.hb)/(i.ha-r.ha),n=r.ha*t+r.hb),$(t,n)}getAxisXIntersection(){let t=new e(0,0,0);return this.intersection(t).cx}getAxisYIntersection(){let t=new e(0,0,Math.PI/2);return this.intersection(t).cy}getAxisXIntersecTri(){let e=1/0;if(X(la(this.ca))!==0){let t=new Oa(this.cx,this.cy),n=ca(this.ca),r=t.angleOrig(),i=t.distanceOrig();if(X(i)===0)e=0;else if(X(la(n-r))===0)e=0;else{let t=Math.min(n,Math.PI-n),a=Z(n-r),o=Math.min(Math.abs(a),Math.PI-Math.abs(a));e=Math.sign(a)*Da(i,t,o)}}return e}getAxisYIntersecTri(){let e=1/0;if(X(la(this.ca-Math.PI/2))!==0){let t=new Oa(this.cx,this.cy),n=la(this.ca),r=t.angleOrig(),i=t.distanceOrig(),a=la(n-r);if(X(i)===0)e=0;else if(X(a)===0)e=0;else{let t=ca(n-Math.PI/2),a=-1*Z(n-r),o=Math.min(t,Math.PI-t),s=Math.min(Math.abs(a),Math.PI-Math.abs(a));e=Math.sign(a)*Da(i,o,s)}}return e}angleOrig(){let e=new Oa(this.cx,this.cy).angleOrig(),t=-1*Z(la(this.ca)-e),n=0;return t<0&&(n=-Math.PI),ca(Math.PI/2+this.ca)+n}distanceOrig(){let e=this.angleOrig(),t=new Oa(this.cx,this.cy),n=t.angleOrig(),r=t.distanceOrig(),i=la(n-e);return r*Math.cos(i)}projectOrig(){let e=this.angleOrig(),t=this.distanceOrig();return $(0,0).setPolar(e,t)}translate(t,n){return new e(this.cx+t,this.cy+n,this.ca)}rotateOrig(t){let n=new Oa(this.cx,this.cy).rotateOrig(t);return new e(n.cx,n.cy,Z(this.ca+t))}scaleOrig(t){let n=new Oa(this.cx,this.cy).scaleOrig(t);return new e(n.cx,n.cy,this.ca)}rotate(t,n){let r=new Oa(this.cx,this.cy).rotate(t,n);return new e(r.cx,r.cy,Z(this.ca+n))}scale(t,n){let r=new Oa(this.cx,this.cy).scale(t,n);return new e(r.cx,r.cy,this.ca)}clone(){let t=new Oa(this.cx,this.cy);return new e(t.cx,t.cy,this.ca)}lineOrthogonal(t){return new e(t.cx,t.cy,this.ca+Math.PI/2)}lineParallel(t){return new e(t.cx,t.cy,this.ca)}distanceToPoint(e){let t=0,n=new Oa(this.cx,this.cy),r=n.distanceToPoint(e);if(X(r)!==0){let i=la(n.angleToPoint(e)-this.ca);t=r*Math.abs(Math.sin(i))}return t}projectPoint(e){let t=0,n=new Oa(this.cx,this.cy),r=n.distanceToPoint(e);if(X(r)!==0){let i=Z(n.angleToPoint(e)-this.ca);t=r*Math.cos(i)}return n.translatePolar(this.ca,t)}isParallel(e){return X(la(this.ca-e.ca))===0}isOrthogonal(e){return X(la(Math.PI/2+this.ca-e.ca))===0}isEqual(e){let t=$(e.cx,e.cy);return X(this.distanceToPoint(t))===0&&this.isParallel(e)}bisector(t,n){let r=this.intersection(t),i=ca(this.ca),a=ca(t.ca),o=Math.min(i,a),s=Math.max(i,a),c=[o,s,o+Math.PI,s+Math.PI,o],l=r.angleToPoint(n),u=0;for(let e=0;e<4;e++){let t=Z(c[e]-l),r=Z(c[e+1]-l);if(t===0||r===0)throw`err419: bad reference point for bisecor ${n.cx} ${n.cy}`;t<0&&r>0&&(u=e)}let d=ca((o+s)/2)+u*Math.PI/2;return new e(r.cx,r.cy,d)}lineParallelDistance(t,n,r){let i=$(this.cx,this.cy),a=i.translatePolar(this.ca+Math.PI/2,t),o=i.translatePolar(this.ca-Math.PI/2,t),s=o,c=n;return X(this.distanceToPoint(c))===0&&(c=r),c.distanceToPoint(a)<c.distanceToPoint(o)&&(s=a),new e(s.cx,s.cy,this.ca)}};function ja(e,t,n){return new Aa(e,t,n)}function Ma(e,t){return ja(0,0,0).setFromPoints(e,t)}function Na(e,t){if(e.isEqual(t))throw`err546: no bisector with two same points cx: ${e.cx} cy: ${e.cy}`;let n=e.middlePoint(t),r=ca(e.angleToPoint(t)+Math.PI/2);return ja(n.cx,n.cy,r)}function Pa(e,t,n){if(e.isEqual(t)||t.isEqual(n)||e.isEqual(n))throw`err833: no bisector with two same points cx: ${e.cx} cy: ${e.cy}`;let r=Na(e,t),i=Na(t,n);return r.intersection(i)}function Fa(e){let t=!1;return(e===0||e===1)&&(t=!0),t}function Ia(e){let t=!1;return(Fa(e)||e===6)&&(t=!0),t}function La(e){let t=!1;return(e===3||e===4||e===5)&&(t=!0),t}function Ra(e){let t=!1;return(e===2||La(e))&&(t=!0),t}var za=class e{sType;px;py;radius;arcLarge;arcCcw;constructor(e,t,n,r,i=!1,a=!1){this.sType=e,this.px=t,this.py=n,this.radius=r,this.arcLarge=i,this.arcCcw=a}clone(){return new e(this.sType,this.px,this.py,this.radius,this.arcLarge,this.arcCcw)}},Ba=class{sType;p1;p2;pc;radius;a1;a2;arcCcw;constructor(e,t,n,r,i,a,o,s=!1){this.sType=e,this.p1=t,this.p2=n,this.pc=r,this.radius=i,this.a1=a,this.a2=o,this.arcCcw=s}},Va=new class{debugPoints;debugLines;logMessage;constructor(){this.debugPoints=[],this.debugLines=[],this.logMessage=``}addPoint(e){this.debugPoints.push(e)}getPoints(){return this.debugPoints}clearPoints(){this.debugPoints=[]}addLine(e){this.debugLines.push(e)}getLines(){return this.debugLines}clearLines(){this.debugLines=[]}addMsg(e){this.logMessage+=e}getMsg(){return this.logMessage}clearMsg(){this.logMessage=``}};function Ha(e,t,n){if(n.sType!==1)throw`err202: arcSeg1To2 has unexpected type ${n.sType}`;let r=$(e,t),i=$(n.px,n.py),a=r.distanceToPoint(i)/2;if(r.isEqual(i))throw`err638: no equidistance because identical point ${r.cx} ${i.cy}`;let o=0;if(X(n.radius-a)===0)o=0;else if(n.radius<a)throw`err399: radius ${n.radius} smaller than lp1p2h ${a}`;else o=Ta(n.radius,a);let s=r.middlePoint(i),c=r.angleToPoint(i)+Math.PI/2,l=s.translatePolar(c,o),u=s.translatePolar(c+Math.PI,o),d=l;(!n.arcLarge&&!n.arcCcw||n.arcLarge&&n.arcCcw)&&(d=u);let f=d.angleToPoint(r),p=d.angleToPoint(i);return new Ba(1,r,i,d,n.radius,f,p,n.arcCcw)}function Ua(e){let t=sa(e.a2-e.a1);e.arcCcw||(t=2*Math.PI-t);let n=!1;return t>Math.PI&&(n=!0),new za(1,e.p2.cx,e.p2.cy,e.radius,n,e.arcCcw)}function Wa(e,t,n){let r=e.p1,i=e.p2,a=n.p1,o=n.p2;if(!i.isEqual(a))throw`err309: makeCorner-prepare p2 and p2b differ px ${i.cx} ${a.cx} py ${i.cy} ${a.cy}`;let s=i.angleToPoint(r);if(e.sType===1){let t=e.arcCcw?1:-1;s=e.a2-t*Math.PI/2}let c=i.angleToPoint(o);if(n.sType===1){let e=n.arcCcw?1:-1;c=n.a1+e*Math.PI/2}let l=Z(c-s)/2;if(X(l)===0){let t=ia*10**-2;if(e.sType===0&&n.sType===1)l=n.arcCcw?t:-t;else if(e.sType===1&&n.sType===0)l=e.arcCcw?t:-t;else if(e.sType===0&&n.sType===0)throw`err402: prepare aPeakHalf too closed to zero ${l}`}let u=s+l,d=i.translatePolar(u,t.radius);return{s1:e,s2:t,s3:n,ra:t.radius,p1:r,p2:i,p3:o,p4:e.pc,p5:n.pc,p6:d,at1:s,at3:c,abi:u,aph:l}}function Ga(e,t,n){if(t.sType!==1)throw`err510: modifRadius with wrong type ${t.sType}`;let r=e>0?1:-1,i=t.arcCcw?1:-1,a=X(e)===0?1:r*i,o=t.radius+a*n;if(o<=0)throw`err621: modifRadius with negative modified lenght ${o}`;return o}function Ka(e,t,n,r){let i=n.translatePolar(e,t),a=n.translatePolar(e+Math.PI,t);return r.distanceToPoint(i)<r.distanceToPoint(a)?i:a}function qa(e,t,n,r,i){let a=e.translatePolar(t-n,r),o=e.translatePolar(t+n,r);return i.distanceToPoint(a)<i.distanceToPoint(o)?-1:1}function Ja(e,t){let n=t.clone(),r=e.p1.clone(),i=e.p2;if(e.sType!==0)throw`err103: newStrokeFirst unexpected sType ${e.sType}`;let a=Ma(r,i).distanceToPoint(n);if(X(a)!==0)throw`err104: newStrokeFirst new point not aligned ${a} ${n.cx} ${n.cy}`;let o=r.angleToPoint(i),s=r.angleToPoint(n);if(X(Z(s-o))!==0)throw`err105: newStrokeFirst new point miss aligned ${o} ${s} ${n.cx} ${n.cy}`;let c=r.distanceToPoint(n),l=r.distanceToPoint(i);if(l<c)throw`err106: newStrokeFirst new point out of scope ${l} ${c} ${n.cx} ${n.cy}`;return new Ba(0,r,n,$(0,0),0,0,0,!1)}function Ya(e,t){let n=t.clone(),r=e.p2.clone(),i=e.p1;if(e.sType!==0)throw`err203: newStrokeSecond unexpected sType ${e.sType}`;let a=Ma(r,i).distanceToPoint(n);if(X(a)!==0)throw`err204: newStrokeSecond new point not aligned ${a} ${n.cx} ${n.cy}`;let o=r.angleToPoint(i),s=r.angleToPoint(n);if(X(Z(s-o))!==0)throw`err205: newStrokeSecond new point miss aligned ${o} ${s} ${n.cx} ${n.cy}`;let c=r.distanceToPoint(n),l=r.distanceToPoint(i);if(l<c)throw`err206: newStrokeSecond new point out of scope ${l} ${c} ${n.cx} ${n.cy}`;return new Ba(0,n,r,$(0,0),0,0,0,!1)}function Xa(e,t){if(e.sType!==1)throw`err203: newArcFirst unexpected sType ${e.sType}`;let n=e.p1.clone(),r=e.pc.clone(),i=t.clone(),a=r.angleToPoint(i);if(!da(a,e.a1,e.a2,e.arcCcw))throw`err908: newArcFirst a48 out of scope ${a} ${e.a1} ${e.a2} ${e.arcCcw}`;return new Ba(1,n,i,r,e.radius,e.a1,a,e.arcCcw)}function Za(e,t){if(e.sType!==1)throw`err204: newArcSecond unexpected sType ${e.sType}`;let n=e.p2.clone(),r=e.pc.clone(),i=t.clone(),a=r.angleToPoint(i);if(!da(a,e.a1,e.a2,e.arcCcw))throw`err907: newArcSecond a59 out of scope ${a} ${e.a1} ${e.a2} ${e.arcCcw}`;return new Ba(1,i,n,r,e.radius,a,e.a2,e.arcCcw)}function Qa(e,t,n,r,i,a){let o=e.clone(),s=t.clone(),c=n.clone(),l=c.distanceToPoint(o),u=c.distanceToPoint(s);if(X(l-r)!==0||X(u-r)!==0)throw`err610: newRounded not on circle ${r} ${l} ${u}`;let d=c.angleToPoint(o),f=c.angleToPoint(s),p=Z(d-a+Math.PI),m=Z(f-a+Math.PI);return Math.abs(m-p)>Math.PI+ia&&Va.addMsg(`warn882: newRounded a873 or a972 larger than PI/2 ${fa(p)} ${fa(m)} at ${fa(c.cx)} ${fa(c.cy)}
|
|
16
|
+
`),new Ba(1,o,s,c,r,d,f,!(i>0))}function $a(e){let t=Math.abs(e.ra/Math.sin(e.aph)),n=t*Math.cos(e.aph),r=e.p2.translatePolar(e.abi,t),i=e.p2.translatePolar(e.at1,n),a=e.p2.translatePolar(e.at3,n),o=[];return o.push(Ja(e.s1,i)),o.push(Qa(i,a,r,e.ra,e.aph,e.abi)),o.push(Ya(e.s3,a)),o}function eo(e){let t=Ma(e.p1,e.p2).lineParallelDistance(e.ra,e.p6,e.p5),n=t.projectPoint(e.p5),r=n.distanceToPoint(e.p5),i=Ta(Ga(e.aph,e.s3,e.ra),r),a=Ka(t.ca,i,n,e.p6),o=e.p5.angleToPoint(a),s=e.p5.translatePolar(o,e.s3.radius),c=e.p2.angleFromToPoints(e.p1,a),l=Math.abs(e.ra/Math.sin(c))*Math.cos(c),u=e.p2.angleToPoint(e.p1),d=e.p2.translatePolar(u,l),f=[];return f.push(Ja(e.s1,d)),f.push(Qa(d,s,a,e.ra,e.aph,e.abi)),f.push(Za(e.s3,s)),f}function to(e){let t=Ma(e.p3,e.p2).lineParallelDistance(e.ra,e.p6,e.p4),n=t.projectPoint(e.p4),r=n.distanceToPoint(e.p4),i=Ta(Ga(e.aph,e.s1,e.ra),r),a=Ka(t.ca,i,n,e.p6),o=e.p4.angleToPoint(a),s=e.p4.translatePolar(o,e.s1.radius),c=e.p2.angleFromToPoints(e.p3,a),l=Math.abs(e.ra/Math.sin(c))*Math.cos(c),u=e.p2.angleToPoint(e.p3),d=e.p2.translatePolar(u,l),f=[];return f.push(Xa(e.s1,s)),f.push(Qa(s,d,a,e.ra,e.aph,e.abi)),f.push(Ya(e.s3,d)),f}function no(e){let t=Ga(e.aph,e.s1,e.ra),n=Ga(e.aph,e.s3,e.ra),r=e.p4.distanceToPoint(e.p5),i=e.p4.angleToPoint(e.p5),a=Ea(r,t,n),o=i+qa(e.p4,i,a,t,e.p6)*a,s=e.p4.translatePolar(o,t),c=e.p4.translatePolar(o,e.s1.radius),l=Math.PI+i,u=Ea(r,n,t),d=l+qa(e.p5,l,u,n,e.p6)*u,f=e.p5.translatePolar(d,n);if(!f.isEqual(s))throw`err909: roundArcArc p7 anf p7b differ ${s.cx} ${f.cx} ${s.cy} ${f.cy} 0`;let p=e.p5.translatePolar(d,e.s3.radius),m=[];return m.push(Xa(e.s1,c)),m.push(Qa(c,p,s,e.ra,e.aph,e.abi)),m.push(Za(e.s3,p)),m}function ro(e){let t=e.abi-2*e.aph,n=e.abi+2*e.aph,r=e.p6.translatePolar(t,e.ra),i=e.p6.translatePolar(n,e.ra);if(e.s1.sType===1){let t=e.p4.angleFromToPoints(e.p2,e.p6),n=e.p4.angleToPoint(e.p2)+2*t;r=e.p4.translatePolar(n,e.s1.radius)}if(e.s3.sType===1){let t=e.p5.angleFromToPoints(e.p2,e.p6),n=e.p5.angleToPoint(e.p2)+2*t;i=e.p5.translatePolar(n,e.s3.radius)}let a=!(e.aph>0),o=new Ba(1,r,i,e.p6,e.ra,t,n,a),s=[];return e.s1.sType===0?s.push(Ja(e.s1,r)):e.s1.sType===1&&s.push(Xa(e.s1,r)),s.push(o),e.s3.sType===0?s.push(Ya(e.s3,i)):e.s3.sType===1&&s.push(Za(e.s3,i)),s}function io(e,t,n,r){let i=n,a=n,o=r.p6.angleFromToPoints(r.p2,n);if(Math.abs(o)>Math.PI/2){a=r.p6.translatePolar(r.abi+e*Math.PI/2,r.ra);let o=ja(a.cx,a.cy,r.abi);if(t.sType===0)i=Ma(t.p1,t.p2).intersection(o);else if(t.sType===1){let e=o.projectPoint(t.pc),s=e.distanceToPoint(t.pc);if(s<t.radius){let a=Ta(t.radius,s);i=Ka(r.abi,a,e,n)}else Va.addMsg(`warn222: wideAccess not possible on arc ${fa(t.radius)} ${fa(s)} at ${fa(n.cx)} ${fa(n.cy)}
|
|
17
|
+
`),i=n,a=n}}return[i,a]}function ao(e){let t=ro(e),n=t[1].arcCcw?1:-1,[r,i]=io(n,e.s1,t[1].p1,e),[a,o]=io(-n,e.s3,t[1].p2,e),s=[];if(r.isEqual(i))s.push(t[0]);else{e.s1.sType===0?s.push(Ja(e.s1,r)):e.s1.sType===1&&s.push(Xa(e.s1,r));let t=new Ba(0,r,i,$(0,0),0,0,0,!1);s.push(t)}if(s.push(Qa(i,o,e.p6,e.ra,e.aph,e.abi)),a.isEqual(o))s.push(t[2]);else{let t=new Ba(0,o,a,$(0,0),0,0,0,!1);s.push(t),e.s3.sType===0?s.push(Ya(e.s3,a)):e.s3.sType===1&&s.push(Za(e.s3,a))}return s}function oo(e,t,n){let r=Wa(e,t,n),i=[];if(t.sType===3)if(e.sType===0&&n.sType===0)i.push(...$a(r));else if(e.sType===0&&n.sType===1)i.push(...eo(r));else if(e.sType===1&&n.sType===0)i.push(...to(r));else if(e.sType===1&&n.sType===1)i.push(...no(r));else throw`err123: makeCorner unexpected s1s3.sType ${e.sType} ${n.sType}`;else if(t.sType===4)i.push(...ro(r));else if(t.sType===5)i.push(...ao(r));else throw`err723: makeCorner unexpected s2.sType ${t.sType}`;return i}function so(e){return e.toFixed(4)}function co(e,t,n,r=``){let i=r;return i===``&&(i=`black`),`<circle cx="${so(e)}" cy="${so(t)}" r="${so(n)}" stroke="${i}" stroke-width="1" fill="none" />`}var lo=class{pathD;constructor(){this.pathD=``}addStart(e,t){this.pathD=`M ${so(e)} ${so(t)}`}addStroke(e,t){this.pathD+=` L ${so(e)} ${so(t)}`}addArc(e,t,n,r,i){let a=so(n),o=+!!r,s=+!!i;this.pathD+=` A ${a} ${a} 0 ${o} ${s} ${so(e)} ${so(t)}`}stringify(e=``){let t=e;return t===``&&(t=`black`),`<path d="${this.pathD} Z" stroke="${t}" stroke-width="1" fill="none" />`}};function uo(){return new lo}var fo=class{svgStr;payloadStr;groupActive;constructor(){this.payloadStr=``,this.svgStr=``,this.groupActive=!1}addHeader(e,t,n,r){let i=`${e} ${n} ${t} ${r}`;this.svgStr=`<svg width="${t}" height="${r}" viewBox="${i}" xmlns="http://www.w3.org/2000/svg">`}addSvgString(e){this.payloadStr+=e}addGroup(e){if(this.groupActive)throw`err321: group must be closed before opening a new one`;this.groupActive=!0,this.payloadStr+=`<g id="${e}">`}closeGroup(){if(!this.groupActive)throw`err331: group is not active so can not be closed`;this.groupActive=!1,this.payloadStr+=`</g>`}closeSvg(){if(this.svgStr===``)throw`err301: no header set for the svg`;if(this.groupActive)throw`err311: group is not closed`;this.svgStr+=this.payloadStr,this.svgStr+=`</svg>`}stringify(){return this.closeSvg(),this.svgStr}};function po(){return new fo}function mo(e){return e.toFixed(4)}var ho=class{arc;p1x;p1y;radius;a1;a2;p2x;p2y;constructor(e,t,n,r,i,a,o,s){this.arc=e,this.p1x=t,this.p1y=n,this.radius=r,this.a1=i,this.a2=a,this.p2x=o,this.p2y=s}};function go(e,t,n,r){return new ho(!1,e,t,0,0,0,n,r)}function _o(e,t,n,r,i,a){let o=a?r:i,s=a?i:r;return new ho(!0,e,t,n,oa(sa(o)),oa(sa(s)),0,0)}function vo(e,t,n){return new ho(!1,e,t,n,0,0,0,0)}var yo=class{dxfStr;constructor(){this.dxfStr=`0
|
|
18
|
+
SECTION
|
|
19
|
+
2
|
|
20
|
+
ENTITIES
|
|
21
|
+
`}addCircle(e,t,n){this.dxfStr+=`0
|
|
22
|
+
CIRCLE
|
|
23
|
+
8
|
|
24
|
+
PARAMETRIX
|
|
25
|
+
`,this.dxfStr+=`10
|
|
26
|
+
${mo(e)}
|
|
27
|
+
20
|
|
28
|
+
${mo(t)}
|
|
29
|
+
40
|
|
30
|
+
${mo(n)}
|
|
31
|
+
`}addLine(e,t,n,r){this.dxfStr+=`0
|
|
32
|
+
LINE
|
|
33
|
+
8
|
|
34
|
+
PARAMETRIX
|
|
35
|
+
`,this.dxfStr+=`10
|
|
36
|
+
${mo(e)}
|
|
37
|
+
20
|
|
38
|
+
${mo(t)}
|
|
39
|
+
11
|
|
40
|
+
${mo(n)}
|
|
41
|
+
21
|
|
42
|
+
${mo(r)}
|
|
43
|
+
`}addArc(e,t,n,r,i){this.dxfStr+=`0
|
|
44
|
+
ARC
|
|
45
|
+
8
|
|
46
|
+
PARAMETRIX
|
|
47
|
+
`,this.dxfStr+=`10
|
|
48
|
+
${mo(e)}
|
|
49
|
+
20
|
|
50
|
+
${mo(t)}
|
|
51
|
+
40
|
|
52
|
+
${mo(n)}
|
|
53
|
+
50
|
|
54
|
+
${mo(r)}
|
|
55
|
+
51
|
|
56
|
+
${mo(i)}
|
|
57
|
+
`}close(){this.dxfStr+=`0
|
|
58
|
+
ENDSEC
|
|
59
|
+
0
|
|
60
|
+
EOF
|
|
61
|
+
`}stringify(){return this.close(),this.dxfStr}};function bo(){return new yo}function xo(e){return e}function So(e,t,n){return{circle:!0,cx:xo(e),cy:xo(t),radius:xo(n)}}var Co=class{seg;constructor(){this.seg=[]}addStart(e,t){this.seg=[];let n={typ:0,px:e,py:t};this.seg.push(n)}addStroke(e,t){let n={typ:1,px:e,py:t};this.seg.push(n)}addArc(e,t,n,r,i){let a={typ:2,px:e,py:t,radius:n,large:r,ccw:i};this.seg.push(a)}toJson(){return{circle:!1,seg:this.seg}}};function wo(){return new Co}var To=class{};function Eo(e,t,n,r){let i=Ha(e,t,n),a=$(i.pc.cx,i.pc.cy),o=sa(i.a2-i.a1),s=(n.arcCcw?o:o-2*Math.PI)/r,c=[];for(let e=1;e<r;e++)c.push(a.translatePolar(i.a1+e*s,n.radius));return c}var Do=class e extends To{circle=!1;segments;points;debugPoints;debugLines;lastPoint;lastPoint2;imposedColor;constructor(e,t,n=``){super(),this.segments=[new za(6,e,t,0)],this.points=[],this.debugPoints=[],this.debugLines=[],this.lastPoint=$(e,t),this.lastPoint2=$(e,t),this.imposedColor=n}setLastPoint(e,t){this.lastPoint2=this.lastPoint,this.lastPoint=$(e,t)}getLastPoint(){return this.lastPoint}getFirstPoint(){return $(this.segments[0].px,this.segments[0].py)}addPointA(e,t){if(this.points.length>2)throw`err311: contour add too much point ${e} ${t}`;return this.points.push($(e,t)),this}addPointAP(e,t){let n=$(0,0).translatePolar(e,t);return this.addPointA(n.cx,n.cy),this}addPointR(e,t){let n=this.getLastPoint().translate(e,t);return this.addPointA(n.cx,n.cy),this}addPointRP(e,t){let n=this.getLastPoint().translatePolar(e,t);return this.addPointA(n.cx,n.cy),this}addSeg(e){return this.segments.push(e),this}addSegStroke(){if(this.points.length!==1)throw`err554: contour addSegStroke at segment ${this.segments.length} with unexpected points.length ${this.points.length}`;let e=this.points.pop();if(e!==void 0){let t=new za(0,e.cx,e.cy,0);e.isEqual(this.getLastPoint())||(this.addSeg(t),this.setLastPoint(e.cx,e.cy))}else throw`err284: contour p1 is undefined`;return this}addSegStrokeA(e,t){return this.addPointA(e,t).addSegStroke(),this}addSegStrokeAP(e,t){return this.addPointAP(e,t).addSegStroke(),this}addSegStrokeR(e,t){return this.addPointR(e,t).addSegStroke(),this}addSegStrokeRP(e,t){return this.addPointRP(e,t).addSegStroke(),this}addSegArc(e,t,n){if(this.points.length!==1)throw`err954: contour addSegArc at segment ${this.segments.length} with unexpected points.length ${this.points.length}`;let r=this.points.pop();if(r!==void 0){let i=new za(1,r.cx,r.cy,e,t,n);r.isEqual(this.getLastPoint())?console.log(`warn144: addSegArc last and new point identical ${fa(r.cx)} ${fa(r.cy)}`):(this.addSeg(i),this.setLastPoint(r.cx,r.cy))}else throw`err482: contour p1 is undefined`;return this}addSegArc2(){if(this.points.length!==2)throw`err958: contour addSegArc2 at segment ${this.segments.length} with unexpected points.length ${this.points.length}`;let e=this.points.pop(),t=this.points.pop();if(t!==void 0&&e!==void 0){let n=this.getLastPoint(),r=Pa(n,t,e),i=r.distanceToPoint(n),a=n.middlePoint(e),o=a.angleToPoint(n),s=Z(a.angleToPoint(t)-o),c=!1,l=!1;if(!a.isEqual(r)){let e=Z(a.angleToPoint(r)-o);Math.sign(e)*Math.sign(s)>0&&(c=!0)}Math.sign(s)>0&&(l=!0),this.addPointA(e.cx,e.cy).addSegArc(i,c,l),this.debugPoints.push(t)}else throw`err488: contour p1 or p2 or seg is undefined`;return this}addSegArc3(e,t){if(this.points.length!==1)throw`err914: contour addSegArc3 at segment ${this.segments.length} with unexpected points.length ${this.points.length}`;let n=this.points.pop();if(n!==void 0){let r=this.getLastPoint(),i=Na(r,n),a=n;t&&(a=r);let o=ja(a.cx,a.cy,e+Math.PI/2),s=i.intersection(o),c=s.distanceToPoint(r),l=r.middlePoint(n),u=Z(e-a.angleToPoint(l)),d=!1;Math.abs(u)>Math.PI/2&&(d=!0);let f=!1;u<0&&(f=!0),t||(f=!f),this.addPointA(n.cx,n.cy).addSegArc(c,d,f),this.debugPoints.push(l),this.debugPoints.push(s)}else throw`err282: contour p1 is undefined`;return this}addSeg2Arcs(e,t){if(this.points.length!==1)throw`err214: contour addSeg2Arcs at segment ${this.segments.length} with unexpected points.length ${this.points.length}`;let n=this.points.pop();if(n!==void 0){let r=this.getLastPoint(),i=r.distanceToPoint(n),a=r.angleToPoint(n),o=n.angleToPoint(r),s=Z(e-a),c=-1*Z(t-o);if(Math.abs(s)>=Math.PI/2)throw`err545: addSeg2Arcs with too large au ${s}`;if(Math.abs(c)>=Math.PI/2)throw`err546: addSeg2Arcs with too large av ${c}`;if(X(s)===0)throw`err765: addSeg2Arcs with almost zero au ${s}`;if(X(c)===0)throw`err766: addSeg2Arcs with almost zero av ${c}`;if(Math.sign(s)*Math.sign(c)<1)throw`err767: addSeg2Arcs with au/av bad orientation ${s} ${c}`;let l=Math.tan(s/2),u=Math.tan(c/2),d=i*u/(u+l),f=Math.abs(d/Math.sin(s)),p=d/Math.cos(s/2),m=i*l/(u+l),h=Math.abs(m/Math.sin(c)),g=r.translatePolar(a+s/2,p),_=!1;Math.sign(s)<0&&(_=!0),this.addPointA(g.cx,g.cy).addSegArc(f,!1,_),this.addPointA(n.cx,n.cy).addSegArc(h,!1,_),this.debugPoints.push(r.translatePolar(a,d)),this.debugPoints.push(r.translatePolar(a+s-Math.sign(s)*Math.PI/2,f)),this.debugPoints.push(n.translatePolar(o-c+Math.sign(s)*Math.PI/2,h))}else throw`err182: contour p1 is undefined`;return this}addSegStrokeAifBig(e,t,n,r){let i=this.getLastPoint();if(Math.sqrt((e-i.cx)**2+(t-i.cy)**2)>n)this.addPointA(e,t).addSegStroke();else if(r){let n=this.segments[this.segments.length-1],r=this.lastPoint2;if(this.setLastPoint(r.cx,r.cy),n.sType===0)this.segments.pop(),this.addPointA(e,t).addSegStroke();else if(n.sType===1)this.segments.pop(),this.addPointA(e,t).addSegArc(n.radius,n.arcLarge,n.arcCcw);else throw`err186: addSegStrokeA-ifBig used after eStart or eCorner ${n.sType} at segment ${this.segments.length}`}return this}addCornerPointed(){let e=new za(2,0,0,0);return this.addSeg(e),this}addCornerRounded(e){let t=new za(3,0,0,e);return this.addSeg(t),this}addCornerWidened(e){let t=new za(4,0,0,e);return this.addSeg(t),this}addCornerWideAcc(e){let t=new za(5,0,0,e);return this.addSeg(t),this}closeSegStroke(){let e=this.segments[0].px,t=this.segments[0].py;return this.addSegStrokeA(e,t),this}closeSegArc(e,t,n){let r=this.segments[0].px,i=this.segments[0].py;return this.addPointA(r,i).addSegArc(e,t,n),this}clone(){let t=new e(this.segments[0].px,this.segments[0].py);for(let e of this.segments){let n=e.clone();n.sType!==6&&(t.addSeg(n),Fa(n.sType)&&t.setLastPoint(n.px,n.py))}return t}translate(t,n){let r=new e(this.segments[0].px+t,this.segments[0].py+n);for(let e of this.segments){let i=e.clone();Fa(e.sType)&&(i.px+=t,i.py+=n),i.sType!==6&&(r.addSeg(i),Fa(i.sType)&&r.setLastPoint(i.px,i.py))}return r}translatePolar(e,t){return this.translate(t*Math.cos(e),t*Math.sin(e))}rotate(t,n,r){let i=$(t,n),a=$(this.segments[0].px,this.segments[0].py).rotate(i,r),o=new e(a.cx,a.cy);for(let e of this.segments){let t=e.clone();if(Fa(e.sType)){let e=$(t.px,t.py).rotate(i,r);t.px=e.cx,t.py=e.cy}t.sType!==6&&(o.addSeg(t),Fa(t.sType)&&o.setLastPoint(t.px,t.py))}return o}scale(t,n,r,i=!1){let a=$(t,n),o=$(this.segments[0].px,this.segments[0].py).scale(a,r),s=new e(o.cx,o.cy);for(let e of this.segments){let t=e.clone();if(Fa(e.sType)){let e=$(t.px,t.py).scale(a,r);t.px=e.cx,t.py=e.cy}e.sType===1&&(t.radius*=r),La(e.sType)&&i&&(t.radius*=r),t.sType!==6&&(s.addSeg(t),Fa(t.sType)&&s.setLastPoint(t.px,t.py))}return s}addPartial(e){if(this.points.length>0)throw`err911: addPartial, points should be used ${this.points.length}`;let t=e;if(e.segments.length>0){let n=e.segments[0],r=this.getLastPoint(),i=n.px-r.cx,a=n.py-r.cy;n.sType===6&&(t=e.translate(-i,-a))}for(let e of t.segments)e.sType!==6&&(this.addSeg(e),Fa(e.sType)&&this.setLastPoint(e.px,e.py));return this}draw(e,t,n=Q.contour){let r=this.imposedColor===``?n:this.imposedColor,i=0,a=0;for(let n of this.segments){if(n.sType===0){let[o,s]=ma(i,a,t),[c,l]=ma(n.px,n.py,t);e.beginPath(),e.moveTo(o,s),e.lineTo(c,l),e.strokeStyle=r,e.stroke()}if(n.sType===1)try{let o=Ha(i,a,n),[s,c]=ma(o.pc.cx,o.pc.cy,t),l=ga(n.radius,t);e.beginPath(),e.arc(s,c,l,-o.a1,-o.a2,n.arcCcw),e.strokeStyle=r,e.stroke()}catch(e){console.log(`err413: `+e)}Ia(n.sType)&&(i=n.px,a=n.py)}}extractSkeleton(){let t=this.segments[0],n=new e(t.px,t.py);for(let e of this.segments)Fa(e.sType)&&n.addSeg(e);return n}generateContour(){Va.clearPoints(),Va.clearLines();let t=[],n=[],r=0,i=0,a=0;for(let e of this.segments){if(e.sType===0){let n=$(i,a),o=$(e.px,e.py),s=$(0,0);t.push(new Ba(e.sType,n,o,s,0,0,0,!1)),r=1}if(e.sType===1){let n=Ha(i,a,e);t.push(n),r=1}let o=t.at(-1),s=t.at(-2);if(o!==void 0&&s!==void 0&&Fa(o.sType)&&Ra(s.sType)){let e=t.pop(),n=t.pop(),r=t.pop();if(r!==void 0&&n!==void 0&&e!==void 0){let i=oo(r,n,e);t.push(...i)}else throw`err603: contour generateContour internal error`}if(Ra(e.sType)){if(r===2)throw`err419: generateContour with two consecutive corners ${e.sType}`;if(r===0&&La(e.sType)&&e.radius>0){let t=$(0,0);n.push(new Ba(e.sType,t,t,t,e.radius,0,0,!1))}if(r===1&&La(e.sType)&&e.radius>0){let n=$(0,0);t.push(new Ba(e.sType,n,n,n,e.radius,0,0,!1))}r=2}Ia(e.sType)&&(i=e.px,a=e.py)}if(n.length>0)if(r===1)t.push(...n);else throw`err397: contour generateContour Corners defined at end and begining`;let o=t.at(-1);if(o!==void 0&&Ra(o.sType)){let e=t[0],n=t.pop(),r=t.pop();if(r!==void 0&&n!==void 0&&e!==void 0){let i=oo(r,n,e);t.push(...i.slice(0,-1));let a=i.at(-1);if(a!==void 0)t[0]=a;else throw`err606: contour generateContour internal error`}else throw`err602: contour generateContour internal error`}let s=t[0],c=new e(s.p1.cx,s.p1.cy,this.imposedColor);c.debugPoints.push(...Va.getPoints()),c.debugLines.push(...Va.getLines());for(let e of t)if(e.sType===0)c.addSegStrokeA(e.p2.cx,e.p2.cy);else if(e.sType===1){let t=Ua(e);c.addPointA(e.p2.cx,e.p2.cy).addSegArc(t.radius,t.arcLarge,t.arcCcw)}else throw`err986: contour generateContour unexpected in seg2 Enum ${e.sType}`;return c}generatePoints(e){let t=[],n=0,r=0;for(let i of this.segments){if(i.sType===1)try{let a=Eo(n,r,i,e);t.push(...a)}catch(e){console.log(`err453: `+e)}Ia(i.sType)&&(n=i.px,r=i.py,t.push($(n,r)))}return t}getOrientation(e,t,n){let r=10**-3,i=e.slice(1),a=0,o=i.at(-3),s=i.at(-2),c=i.at(-1),l=-1;for(let[e,u]of i.entries()){o=s,s=c,c=u;let i=n?s.cx>t-r:s.cx<t+r,d=n?o.cx>t-r:o.cx<t+r;if(i&&!d){let t=o.cx-s.cx,n=o.cy-s.cy,r=c.cx-s.cx,i=c.cy-s.cy,u=r*n-i*t;a=Math.sign(u),l=e}}if(a===0)throw`err299: Orientation not found with ${i.length} points and foundIdx ${l}`;return a>0}getEnvelop(){let e=this.generatePoints(24),t=[],n=[];for(let r of e)t.push(r.cx),n.push(r.cy);let r=Math.min(...t),i=Math.max(...t),a=Math.min(...n),o=Math.max(...n),s=this.getOrientation(e,r,!1),c=this.getOrientation(e,i,!0);if(c!==s)throw`err390: orientation unstable ${s} ${c} with ${e.length} points`;return{xMin:r,xMax:i,yMin:a,yMax:o,orientation:s}}generateLines(){let e=[];return e.push(...this.debugLines),e}checkContour(e){if(e.segments[0].sType!==6)throw`err412: contour check first seg is not eStart ${e.segments[0].sType}`;let t=0,n=0;for(let r of e.segments){if(r.sType===1)try{Ha(t,n,r)}catch(e){throw`err778: ${e}`}Ia(r.sType)&&(t=r.px,n=r.py)}let r=e.segments[0].px,i=e.segments[0].py;if(X(t-r)!==0||X(n-i)!==0)throw`err414: contour check, contour is not closed px ${r} ${t} py ${r} ${i}`}check(){Va.clearMsg(),this.checkContour(this);let e=this.generateContour();return this.checkContour(e),Va.getMsg()}toSvg(e,t=``){let n=uo();for(let t of this.segments)t.sType===6?n.addStart(t.px,e-t.py):t.sType===0?n.addStroke(t.px,e-t.py):t.sType===1?n.addArc(t.px,e-t.py,t.radius,t.arcLarge,!t.arcCcw):console.log(`err631: contour.toSvg has unknown segment type ${t.sType}`);return n.stringify(t)}toDxfSeg(){let e=[],t=0,n=0;for(let r of this.segments){if(r.sType===0)e.push(go(t,n,r.px,r.py));else if(r.sType===1)try{let i=Ha(t,n,r);e.push(_o(i.pc.cx,i.pc.cy,r.radius,i.a1,i.a2,i.arcCcw))}catch(e){console.log(`err413: `+e)}Ia(r.sType)&&(t=r.px,n=r.py)}return e}toPax(){let e=wo();for(let t of this.segments)t.sType===6?e.addStart(t.px,t.py):t.sType===0?e.addStroke(t.px,t.py):t.sType===1?e.addArc(t.px,t.py,t.radius,t.arcLarge,t.arcCcw):console.log(`err709: contour.toPax has unknown segment type ${t.sType}`);return e.toJson()}getPerimeter(){let e=0,t=this.generateContour(),n=0,r=0;for(let i of t.segments)if(i.sType===6)n=i.px,r=i.py;else if(i.sType===0){let t=Math.sqrt((i.px-n)**2+(i.py-r)**2);n=i.px,r=i.py,e+=t}else if(i.sType===1){let t=Ha(n,r,i),a=sa(t.a2-t.a1),o=t.arcCcw?a:sa(2*Math.PI-a),s=i.radius*o;n=i.px,r=i.py,e+=s}else console.log(`err760: contour.getPerimeter has unknown segment type ${i.sType}`);return e}generateRevertOrientation(){let t=this.segments[0],n=new e(t.px,t.py),r=this.segments[0],i=!1;for(let e of this.segments.slice().reverse())if(Ra(e.sType))i=!0,t=e;else{if(r.sType!==6){let t=new za(r.sType,e.px,e.py,r.radius,r.arcLarge,!r.arcCcw);n.addSeg(t)}r=e,i&&=(n.addSeg(t),!1)}return n}},Oo=class e extends To{circle=!0;px;py;radius;imposedColor;constructor(e,t,n,r=``){if(super(),this.px=e,this.py=t,this.radius=n,this.imposedColor=r,n<0)throw`err432: iRadius ${n} is negative at circle ix ${e}, iy ${t}`}clone(){return new e(this.px,this.py,this.radius,this.imposedColor)}translate(t,n){return new e(this.px+t,this.py+n,this.radius,this.imposedColor)}translatePolar(e,t){return this.translate(t*Math.cos(e),t*Math.sin(e))}rotate(t,n,r){let i=$(t,n),a=$(this.px,this.py).rotate(i,r);return new e(a.cx,a.cy,this.radius,this.imposedColor)}draw(e,t,n=Q.contour){let[r,i]=ma(this.px,this.py,t),a=ga(this.radius,t),o=this.imposedColor===``?n:this.imposedColor;e.beginPath(),e.arc(r,i,a,0,2*Math.PI,!0),e.strokeStyle=o,e.stroke()}extractSkeleton(){return new e(this.px,this.py,this.radius)}generateContour(){return new e(this.px,this.py,this.radius,this.imposedColor)}generatePoints(e){let t=[],n=$(this.px,this.py),r=e*2;t.push(n);for(let e=0;e<r;e++){let i=n.translatePolar(e*2*Math.PI/r,this.radius);t.push(i)}return t}getEnvelop(){return{xMin:this.px-this.radius,xMax:this.px+this.radius,yMin:this.py-this.radius,yMax:this.py+this.radius,orientation:!0}}generateLines(){return[]}check(){return``}toSvg(e,t=``){return co(this.px,e-this.py,this.radius,t)}toDxfSeg(){let e=[];return e.push(vo(this.px,this.py,this.radius)),e}toPax(){return So(this.px,this.py,this.radius)}getPerimeter(){return 2*Math.PI*this.radius}generateRevertOrientation(){return new e(this.px,this.py,this.radius,this.imposedColor)}};function ko(e,t,n=``){return new Do(e,t,n)}function Ao(e,t,n,r=``){return new Oo(e,t,n,r)}var jo=class e{pointList;lineList;vectorList;mainList;mainBList;secondList;secondBList;dynamicsList;xMin;xMax;yMin;yMax;constructor(){this.pointList=[],this.lineList=[],this.vectorList=[],this.mainList=[],this.mainBList=[],this.secondList=[],this.secondBList=[],this.dynamicsList=[],this.xMin=0,this.xMax=0,this.yMin=0,this.yMax=0}addPoint(e){this.pointList.push(e)}addPoints(e){this.pointList.push(...e)}addLine(e){this.lineList.push(e)}addLines(e){for(let t of e)this.lineList.push(t)}addVector(e){this.vectorList.push(e)}addMainOI(e){let t=[];for(let n of e){let e=n.generateContour();this.addPoints(e.generatePoints(2)),this.addLines(e.generateLines()),t.push(e),this.mainBList.push(n.extractSkeleton())}this.mainList.push(t)}addMainO(e){let t=[e];this.addMainOI(t)}addSecond(e){let t=e.generateContour();this.addPoints(t.generatePoints(2)),this.addLines(t.generateLines()),this.secondList.push(t),this.secondBList.push(e.extractSkeleton())}addDynamics(e){this.addPoints(e.generatePoints(2)),this.addLines(e.generateLines()),this.dynamicsList.push(e)}translate(t,n){let r=new e;for(let e of this.pointList)r.addPoint(e.translate(t,n));for(let e of this.lineList)r.addLine(e.translate(t,n));for(let e of this.vectorList)r.addVector(e.translate(t,n));for(let e of this.mainList){let i=[];for(let r of e)i.push(r.translate(t,n));r.addMainOI(i)}for(let e of this.secondList)r.addSecond(e.translate(t,n));for(let e of this.dynamicsList)r.addDynamics(e.translate(t,n));return r}translatePolar(e,t){return this.translate(t*Math.cos(e),t*Math.sin(e))}rotate(t,n,r){let i=new e,a=$(t,n);for(let e of this.pointList)i.addPoint(e.rotate(a,r));for(let e of this.lineList)i.addLine(e.rotate(a,r));for(let e of this.vectorList)i.addVector(e.rotate(a,r));for(let e of this.mainList){let a=[];for(let i of e)a.push(i.rotate(t,n,r));i.addMainOI(a)}for(let e of this.secondList)i.addSecond(e.rotate(t,n,r));for(let e of this.dynamicsList)i.addDynamics(e.rotate(t,n,r));return i}mergeFigure(e,t=!1){for(let t of e.pointList)this.addPoint(t.clone());for(let t of e.lineList)this.addLine(t.clone());for(let t of e.vectorList)this.addVector(t.clone());for(let n of e.mainList){let e=[];for(let t of n)e.push(t.clone());if(t)for(let t of e)this.addSecond(t);else this.addMainOI(e)}for(let t of e.secondList)this.addSecond(t.clone());for(let t of e.dynamicsList)this.addDynamics(t.clone())}mainListC(){let e=[];for(let t of this.mainList)for(let n of t)e.push(n);return e}clear(){this.pointList=[],this.lineList=[],this.vectorList=[],this.mainList=[],this.mainBList=[],this.secondList=[],this.secondBList=[],this.dynamicsList=[]}getMinMax(){[this.xMin,this.xMax,this.yMin,this.yMax]=ka(this.pointList)}getAdjustFull(e,t){let n=_a();return this.pointList.length>0&&(this.getMinMax(),n=ya(this.xMin,this.xMax,this.yMin,this.yMax,e,t)),n}getAdjustZoom(e,t){let n=_a();if(this.pointList.length>0){this.getMinMax();let r=(this.xMin+this.xMax)/2,i=(this.yMin+this.yMax)/2;n=ya(r,this.xMax,i,this.yMax,e,t)}return n}quantifyRuler(e,t){let n=e/10/t.scaleX,r=1e-4;for(;r<n;)r*=10;r/5>n?r/=5:r/2>n&&(r/=2);let i=r*t.scaleX;return[r,i]}drawRuler(e,t,n){let[r,i]=this.quantifyRuler(e.canvas.width,t),a=e.canvas.width-10-i;e.font=`15px Arial`,e.fillStyle=n,e.fillText(`${r.toFixed(4)}`,a,20),e.beginPath(),e.moveTo(a,25),e.lineTo(a+i,25),e.lineTo(a+i,25+i),e.strokeStyle=n,e.stroke()}draw(e,t,n){if(n.points)for(let n of this.pointList)n.draw(e,t);if(n.lines)for(let n of this.lineList)n.draw(e,t);if(n.vectors)for(let n of this.vectorList)n.draw(e,t);if(n.main)for(let n of this.mainList)for(let[r,i]of n.entries()){let n=Q.mainOuter;r>0&&(n=Q.mainInner),i.draw(e,t,n)}if(n.mainB)for(let n of this.mainBList)n.draw(e,t,Q.mainB);if(n.second)for(let n of this.secondList)n.draw(e,t,Q.second);if(n.secondB)for(let n of this.secondBList)n.draw(e,t,Q.secondB);if(n.dynamics)for(let n of this.dynamicsList)n.draw(e,t,Q.dynamics);if(n.ruler&&this.drawRuler(e,t,Q.ruler),n.refframe){for(let n of[10,100,200])$(n,0).draw(e,t,Q.reference,2),$(-n,0).draw(e,t,Q.reference,2),$(0,n).draw(e,t,Q.reference,2),$(0,-n).draw(e,t,Q.reference,2);$(0,0).draw(e,t,Q.origin,2)}}};function Mo(){return new jo}function No(e){let t=Mo();for(let n in e){let r=e[n];for(let e of r.pointList)t.pointList.push(e);for(let e of r.lineList)t.lineList.push(e);for(let e of r.vectorList)t.vectorList.push(e);for(let e of r.mainList)t.mainList.push(e);for(let e of r.mainBList)t.mainBList.push(e);for(let e of r.secondList)t.secondList.push(e);for(let e of r.secondBList)t.secondBList.push(e);for(let e of r.dynamicsList)t.dynamicsList.push(e)}return t}function Po(){return{points:!1,lines:!1,vectors:!1,main:!0,mainB:!1,second:!0,secondB:!1,dynamics:!1,ruler:!0,refframe:!1}}function Fo(e){return{points:e.points,lines:e.lines,vectors:e.vectors,main:e.main,mainB:e.mainB,second:e.second,secondB:e.secondB,dynamics:e.dynamics,ruler:e.ruler,refframe:e.refframe}}var Io=(e=>(e[e.eNumber=0]=`eNumber`,e[e.eCheckbox=1]=`eCheckbox`,e[e.eDropdown=2]=`eDropdown`,e[e.eSectionSeparator=3]=`eSectionSeparator`,e))(Io||{}),Lo={partName:``,params:[],paramSvg:{},sim:{tMax:0,tStep:0,tUpdate:0}};function Ro(e){let t={};for(let n of Object.keys(e))t[n]=e[n].val;return t}function zo(e,t,n,r=0,i=100,a=1){return{name:e,unit:t,init:n,min:r,max:i,step:a,dropdown:[],pType:0}}function Bo(e,t){return{name:e,unit:`checkbox`,init:+!!t,min:0,max:1,step:1,dropdown:[],pType:1}}function Vo(e,t,n=0){let r=0;return n<t.length&&(r=n),{name:e,unit:`dropdown`,init:r,min:0,max:t.length-1,step:1,dropdown:t,pType:2}}function Ho(e){return{name:e,unit:`section-separator`,init:0,min:0,max:0,step:0,dropdown:[],pType:3}}var Uo=(e=>(e[e.eLinearOrtho=0]=`eLinearOrtho`,e[e.eRotate=1]=`eRotate`,e))(Uo||{}),Wo=(e=>(e[e.eIdentity=0]=`eIdentity`,e[e.eIntersection=1]=`eIntersection`,e[e.eUnion=2]=`eUnion`,e[e.eSubstraction=3]=`eSubstraction`,e))(Wo||{});function Go(e){return{partName:e,calcErr:!0,logstr:``,fig:{},vol:{extrudes:[],volumes:[]},sub:{}}}var Ko=class{figureToPaxF(e){let t=[];for(let n of e){let e=[];for(let t of n)e.push(t.toPax());t.push(e)}return t}getFigures(e){let t={};for(let n in e)t[n]=this.figureToPaxF(e[n].mainList);return t}getPaxJson(e,t,n){return{partName:t.partName,pDef:n,params:e,figures:this.getFigures(t.fig),volume:t.vol,subs:t.sub,log:t.logstr}}getPaxStr(e,t,n){let r=this.getPaxJson(e,t,n);return JSON.stringify(r,null,2)}};function qo(){return new Ko}function Jo(e){let t=6;return e===1?t=0:e===2&&(t=1),t}function Yo(e){return new za(Jo(e.typ),e.px,e.py,e.radius,e.large,e.ccw)}function Xo(e,t,n,r){let i=Math.PI/2;t<2*n&&(i=2*Math.asin(t/(2*n)));let a=Math.ceil(r/Math.min(e,i));return[a,r/a]}function Zo(e,t,n,r=Math.PI/6,i=2){let[a,o]=Xo(r,i,n,2*Math.PI),s=[];for(let r=0;r<a;r++){let i=e+n*Math.cos(r*o),a=t+n*Math.sin(r*o);s.push([i,a])}let c=s[0][0],l=s[0][1];return s.push([c,l]),s}function Qo(e,t,n,r,i,a,o=Math.PI/6,s=2){let c=ua(r,i,a),[l,u]=Xo(o,s,n,Math.abs(c)),d=a?u:-u,f=l+1,p=[];for(let i=1;i<f;i++){let a=r+i*d,o=e+n*Math.cos(a),s=t+n*Math.sin(a);p.push([o,s])}return p}var $o=Math.PI/16,es=2;function ts(e){return e.toFixed(4)}function ns(e){return e.toString().padStart(3,`0`)}function rs(e,t){return[[e,t]]}function is(e,t,n,r,i,a){return Qo(e,t,n,r,i,a,$o,es)}function as(e,t,n){return Zo(e,t,n,$o,es)}function os(e){let t=[],n=0,r=0;for(let i of e){if(i.typ===0)t.push(...rs(i.px,i.py));else if(i.typ===1)t.push(...rs(i.px,i.py));else if(i.typ===2)try{let e=i,a=new za(Jo(e.typ),e.px,e.py,e.radius,e.large,e.ccw),o=Ha(n,r,a);t.push(...is(o.pc.cx,o.pc.cy,a.radius,o.a1,o.a2,o.arcCcw))}catch(e){console.log(`err730: `+e)}n=i.px,r=i.py}return t}var ss=class{pts;ptIdx;idx;constructor(){this.pts=[],this.ptIdx=[],this.idx=0}addContour(e){let t=[],n=[];for(let r of e){let[e,i]=r;t.push(`[ ${ts(e)}, ${ts(i)} ]`),n.push(` ${this.idx}`),this.idx+=1}let r=`[ ${t.join(`,`)} ]`,i=`[ ${n.join(`,`)} ]`;this.pts.push(r),this.ptIdx.push(i)}getFigure(e){let t=``,n=[],r=[];for(let i of this.pts.keys()){let a=`ca_${e}_${ns(i)}`,o=`cb_${e}_${ns(i)}`;t+=`${a} = ${this.pts[i]};
|
|
62
|
+
`,t+=`${o} = ${this.ptIdx[i]};
|
|
63
|
+
`,n.push(a),r.push(o)}let i=n.join(`, `),a=r.join(`, `);return t+=`a_${e} = concat(${i});
|
|
64
|
+
`,t+=`b_${e} = [${a}];
|
|
65
|
+
`,t}},cs=class{getHeader(){return`// Generated by Parametrix
|
|
66
|
+
`}getOneFigure(e,t){let n=new ss;for(let t of e)for(let e of t)if(e.circle===!0){let t=e,r=as(t.cx,t.cy,t.radius);n.addContour(r)}else{let t=os(e.seg);n.addContour(t)}return n.getFigure(t)}getAllFigures(e,t){let n=``;for(let r in e){let i=this.getOneFigure(e[r],`${t}_${r}`);n+=i}return n}getOneExtrude(e){let t=`rotate_extrude`,n=``;return e.extrudeMethod===0&&(e.length===void 0&&console.log(`err103: design error: scad-linear_extrude length undefined!`),t=`linear_extrude`,n=`height = ${e.length}`),`
|
|
67
|
+
module ${e.outName} () {
|
|
68
|
+
translate( [ ${e.translate[0]}, ${e.translate[1]}, ${e.translate[2]} ])
|
|
69
|
+
rotate( [ ${oa(e.rotate[0])}, ${oa(e.rotate[1])}, ${oa(e.rotate[2])} ])
|
|
70
|
+
${t}(${n}) polygon(a_${e.face}, b_${e.face});
|
|
71
|
+
}
|
|
72
|
+
`}getAllExtrudes(e){let t=``;for(let n of e){let e=this.getOneExtrude(n);t+=e}return t}getOneVolume(e){let t=`identity`;switch(e.boolMethod){case 1:t=`intersection`;break;case 2:t=`union`;break;case 3:t=`difference`;break}let n=[];for(let t of e.inList)n.push(`${t}();`);let r=n.join(`
|
|
73
|
+
`),i=`
|
|
74
|
+
module ${e.outName} () {
|
|
75
|
+
${t} () {
|
|
76
|
+
${r}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
`;return e.boolMethod===0&&(i=`
|
|
80
|
+
module ${e.outName} () {
|
|
81
|
+
${r}
|
|
82
|
+
}
|
|
83
|
+
`),i}getAllVolumes(e){let t=``;for(let n of e){let e=this.getOneVolume(n);t+=e}return t}getAllSubGeoms(e){let t=[];for(let n of e)t.includes(n.subgeom)||t.push(n.subgeom);return t}getOneInherit(e){return`
|
|
84
|
+
module ${e.outName} () {
|
|
85
|
+
translate( [ ${e.translate[0]}, ${e.translate[1]}, ${e.translate[2]} ])
|
|
86
|
+
rotate( [ ${oa(e.rotate[0])}, ${oa(e.rotate[1])}, ${oa(e.rotate[2])} ])
|
|
87
|
+
${e.subdesign}();
|
|
88
|
+
}
|
|
89
|
+
`}getAllInherits(e){let t=``;for(let n of e){let e=this.getOneInherit(n);t+=e}return t}getVolume(e){let t=``;if(e.inherits!==void 0){let n=this.getAllSubGeoms(e.inherits);for(let e of n){let n=qo().getPaxJson({},e,Lo);t+=this.getAllFigures(n.figures,n.partName),t+=this.getVolume(e.vol)}t+=this.getAllInherits(e.inherits)}return t+=this.getAllExtrudes(e.extrudes),t+=this.getAllVolumes(e.volumes),t}getFooter(e){return`
|
|
90
|
+
pax_${e}();
|
|
91
|
+
`}getExportFile(e){let t=this.getHeader();return t+=this.getAllFigures(e.figures,e.partName),t+=this.getVolume(e.volume),t+=this.getFooter(e.partName),t}};function ls(){return new cs}var us=Math.PI/16,ds=2;function fs(e){return e.toFixed(4)}function ps(e){return e.toString().padStart(3,`0`)}function ms(e,t){return[[e,t]]}function hs(e,t,n,r,i,a){return Qo(e,t,n,r,i,a,us,ds)}function gs(e){let t=[],n=0,r=0;for(let i of e){if(i.typ===0)t.push(...ms(i.px,i.py));else if(i.typ===1)t.push(...ms(i.px,i.py));else if(i.typ===2)try{let e=i,a=new za(Jo(e.typ),e.px,e.py,e.radius,e.large,e.ccw),o=Ha(n,r,a);t.push(...hs(o.pc.cx,o.pc.cy,a.radius,o.a1,o.a2,o.arcCcw))}catch(e){console.log(`err730: `+e)}n=i.px,r=i.py}return t}function _s(e,t,n){return Zo(e,t,n,us,ds)}function vs(e,t){let n=[];for(let t of e){let[e,r]=t;n.push(`[ ${fs(e)}, ${fs(r)} ]`)}return`const ${t} = polygon({ points: ${`[ ${n.join(`,
|
|
92
|
+
`)} ]`} });
|
|
93
|
+
|
|
94
|
+
`}function ys(e,t,n,r){return vs(_s(e,t,n),r)}function bs(e,t){return vs(gs(e),t)}function xs(e,t){let n=``,r=e[0];return e.slice(1).length>0?n+=`${t} = subtract( ${e.join(`, `)} );
|
|
95
|
+
`:n+=`${t} = ${r};
|
|
96
|
+
`,n}function Ss(e,t){let n=``,r=e[0];return e.slice(1).length>0?n+=`${t} = union( ${e.join(`, `)} );
|
|
97
|
+
`:n+=`${t} = ${r};
|
|
98
|
+
`,n}var Cs=class{getHeader(){return`// Generated by Parametrix
|
|
99
|
+
|
|
100
|
+
const { polygon } = require('@jscad/modeling').primitives;
|
|
101
|
+
//const { subtract } = require('@jscad/modeling').booleans;
|
|
102
|
+
//const { union, intersect, scission, subtract } = require('@jscad/modeling').booleans;
|
|
103
|
+
const { union, intersect, subtract } = require('@jscad/modeling').booleans;
|
|
104
|
+
const { extrudeLinear, extrudeRotate } = require('@jscad/modeling').extrusions;
|
|
105
|
+
const { translate, rotate } = require('@jscad/modeling').transforms;
|
|
106
|
+
|
|
107
|
+
const main = () => {
|
|
108
|
+
|
|
109
|
+
`}getOneFigure(e,t){let n=``,r=[];for(let[i,a]of e.entries()){let e=`face_${t}_Fa${ps(i)}`,o=[];for(let[t,r]of a.entries()){let i=`ctr_${e}_Ctr${ps(t)}`;if(r.circle===!0){let e=r;n+=ys(e.cx,e.cy,e.radius,i)}else n+=bs(r.seg,i);o.push(i)}n+=xs(o,e),r.push(e)}return n+=Ss(r,t),n}getAllFigures(e,t){let n=``;for(let r in e){let i=this.getOneFigure(e[r],`fig_${t}_${r}`);n+=i}return n}getOneExtrude(e){let t=`extrudeRotate`,n=`{segments: 32}`;return e.extrudeMethod===0&&(e.length===void 0&&console.log(`err079: design error: extrudeLinear length undefined!`),t=`extrudeLinear`,n=`{height: ${e.length}}`),`
|
|
110
|
+
const ${e.outName} =
|
|
111
|
+
translate( [ ${e.translate[0]}, ${e.translate[1]}, ${e.translate[2]}, ],
|
|
112
|
+
rotate( [ ${e.rotate[0]}, ${e.rotate[1]}, ${e.rotate[2]}, ],
|
|
113
|
+
${t}( ${n}, fig_${e.face} )
|
|
114
|
+
)
|
|
115
|
+
);
|
|
116
|
+
|
|
117
|
+
`}getAllExtrudes(e){let t=``;for(let n of e){let e=this.getOneExtrude(n);t+=e}return t}getOneVolume(e){let t=`identity`;switch(e.boolMethod){case 1:t=`intersect`;break;case 2:t=`union`;break;case 3:t=`subtract`;break}let n=e.inList.join(`, `),r=`const ${e.outName} = ${t}( ${n} );
|
|
118
|
+
`;return e.boolMethod===0&&(r=`const ${e.outName} = ${e.inList[0]};
|
|
119
|
+
`),r}getAllVolumes(e){let t=``;for(let n of e){let e=this.getOneVolume(n);t+=e}return t}getAllSubGeoms(e){let t=[];for(let n of e)t.includes(n.subgeom)||t.push(n.subgeom);return t}getOneInherit(e){return`
|
|
120
|
+
const ${e.outName} =
|
|
121
|
+
translate( [ ${e.translate[0]}, ${e.translate[1]}, ${e.translate[2]}, ],
|
|
122
|
+
rotate( [ ${e.rotate[0]}, ${e.rotate[1]}, ${e.rotate[2]}, ],
|
|
123
|
+
${e.subdesign}
|
|
124
|
+
)
|
|
125
|
+
);
|
|
126
|
+
`}getAllInherits(e){let t=``;for(let n of e){let e=this.getOneInherit(n);t+=e}return t}getVolume(e){let t=``;if(e.inherits!==void 0){let n=this.getAllSubGeoms(e.inherits);for(let e of n){let n=qo().getPaxJson({},e,Lo);t+=this.getAllFigures(n.figures,n.partName),t+=this.getVolume(e.vol)}t+=this.getAllInherits(e.inherits)}return t+=this.getAllExtrudes(e.extrudes),t+=this.getAllVolumes(e.volumes),t}getFooter(e){return`
|
|
127
|
+
return pax_${e};
|
|
128
|
+
}
|
|
129
|
+
module.exports = { main };
|
|
130
|
+
`}getExportFile(e){let t=this.getHeader();return t+=this.getAllFigures(e.figures,e.partName),t+=this.getVolume(e.volume),t+=this.getFooter(e.partName),t}};function ws(){return new Cs}function Ts(e){return e.toFixed(4)}function Es(e){return e.toString().padStart(3,`0`)}function Ds(e,t,n,r){return`def ${r}():
|
|
131
|
+
# Radius, XYZ-position, orientation
|
|
132
|
+
aCircle = Part.makeCircle(${Ts(n)}, App.Vector(${Ts(e)}, ${Ts(t)}, 0), App.Vector(0, 0, 1))
|
|
133
|
+
aWire = Part.Wire(aCircle)
|
|
134
|
+
rFace = Part.Face(aWire)
|
|
135
|
+
return rFace
|
|
136
|
+
|
|
137
|
+
`}function Os(e,t){let n=`def ${t}():
|
|
138
|
+
`,r=0,i=0,a=0,o=0,s=0;for(let[t,c]of e.entries()){if(c.typ===0)n+=` P${Es(a)} = App.Vector(${Ts(c.px)}, ${Ts(c.py)}, 0)
|
|
139
|
+
`,a+=1;else if(c.typ===1)n+=` P${Es(a)} = App.Vector(${Ts(c.px)}, ${Ts(c.py)}, 0)
|
|
140
|
+
`,o=t<e.length-1?a:0,n+=` S${Es(s)} = Part.LineSegment(P${Es(a-1)}, P${Es(o)})
|
|
141
|
+
`,a+=1,s+=1;else if(c.typ===2){try{let e=Yo(c),t=Eo(r,i,e,2)[0];n+=` P${Es(a)} = App.Vector(${Ts(t.cx)}, ${Ts(t.cy)}, 0)
|
|
142
|
+
`,a+=1}catch(e){console.log(`err730: `+e)}n+=` P${Es(a)} = App.Vector(${Ts(c.px)}, ${Ts(c.py)}, 0)
|
|
143
|
+
`,o=t<e.length-1?a:0,n+=` S${Es(s)} = Part.Arc(P${Es(a-2)}, P${Es(a-1)}, P${Es(o)})
|
|
144
|
+
`,a+=1,s+=1}r=c.px,i=c.py}let c=Array.from({length:s},(e,t)=>`S${Es(t)}`);return n+=` aShape = Part.Shape([${c.join(`, `)}])
|
|
145
|
+
aWire = Part.Wire(aShape.Edges)
|
|
146
|
+
subFace = Part.Face(aWire)
|
|
147
|
+
subFace.check()
|
|
148
|
+
return subFace
|
|
149
|
+
|
|
150
|
+
`,n}function ks(e,t){let n=`def ${t}():
|
|
151
|
+
`,r=[];for(let[t,i]of e.entries()){let e=`FC${Es(t)}`;n+=` ${e} = ${i}()
|
|
152
|
+
`,r.push(e)}let i=r[0],a=r.slice(1);return a.length>0?n+=` rOneFace = ${i}.cut([${a.join(`, `)}])
|
|
153
|
+
`:n+=` rOneFace = ${i}
|
|
154
|
+
`,n+=` rOneFace.check()
|
|
155
|
+
return rOneFace
|
|
156
|
+
|
|
157
|
+
`,n}function As(e,t){let n=`def ${t}():
|
|
158
|
+
`,r=[];for(let[t,i]of e.entries()){let e=`FA${Es(t)}`;n+=` ${e} = ${i}()
|
|
159
|
+
`,r.push(e)}let i=r[0],a=r.slice(1);return a.length>0?n+=` rOneFig = ${i}.fuse([${a.join(`, `)}])
|
|
160
|
+
`:n+=` rOneFig = ${i}
|
|
161
|
+
`,n+=` rOneFig.check()
|
|
162
|
+
return rOneFig
|
|
163
|
+
|
|
164
|
+
`,n}var js=class{getHeader(e){return`# freecad-python generated by Parametrix
|
|
165
|
+
# run the script with:
|
|
166
|
+
# freecad.cmd myScript.py
|
|
167
|
+
|
|
168
|
+
import FreeCAD as App
|
|
169
|
+
import Part
|
|
170
|
+
|
|
171
|
+
#print(sys.argv)
|
|
172
|
+
outFileName = "${e}"
|
|
173
|
+
if (len(sys.argv) == 3):
|
|
174
|
+
outFileName = sys.argv[2]
|
|
175
|
+
print(f"outFileName: {outFileName}")
|
|
176
|
+
|
|
177
|
+
`}getOneFigure(e,t){let n=``,r=[];for(let[i,a]of e.entries()){let e=`face_${t}_Fa${i}`,o=[];for(let[t,r]of a.entries()){let i=`ctr_${e}_Ctr${t}`;if(r.circle===!0){let e=r;n+=Ds(e.cx,e.cy,e.radius,i)}else n+=Os(r.seg,i);o.push(i)}n+=ks(o,e),r.push(e)}return n+=As(r,t),n}getAllFigures(e,t){let n=``;for(let r in e){let i=this.getOneFigure(e[r],`${t}_${r}`);n+=i}return n}getOneExtrude(e){let t=`def fex_${e.outName}():
|
|
178
|
+
FIG = ${e.face}()
|
|
179
|
+
`;return e.extrudeMethod===0?(e.length===void 0&&console.log(`err103: ${e.face} ${e.outName} design error: eLinearOrtho length undefined!`),t+=` VEX = FIG.extrude(App.Vector(0, 0, ${e.length}))`):e.extrudeMethod===1&&(t+=` VEX = FIG.revolve(App.Vector(0, 0, 0), App.Vector(0, 1, 0), 360).rotate(App.Vector(0, 0, 0), App.Vector(1, 0, 0), 90)`),t+=`
|
|
180
|
+
VR1 = VEX.rotate(App.Vector(0, 0, 0), App.Vector(1, 0, 0), ${Ts(oa(e.rotate[0]))})
|
|
181
|
+
VR2 = VR1.rotate(App.Vector(0, 0, 0), App.Vector(0, 1, 0), ${Ts(oa(e.rotate[1]))})
|
|
182
|
+
VR3 = VR2.rotate(App.Vector(0, 0, 0), App.Vector(0, 0, 1), ${Ts(oa(e.rotate[2]))})
|
|
183
|
+
VFP = VR3.translate(App.Vector(${Ts(e.translate[0])}, ${Ts(e.translate[1])}, ${Ts(e.translate[2])}))
|
|
184
|
+
return VFP
|
|
185
|
+
${e.outName} = fex_${e.outName}()
|
|
186
|
+
|
|
187
|
+
`,t}getAllExtrudes(e){let t=``;for(let n of e){let e=this.getOneExtrude(n);t+=e}return t}getOneVolume(e){let t=``;if(e.inList.length===0)console.log(`err215: ${e.outName} has an empty inList`);else if(e.inList.length===1||e.boolMethod===0)t+=`${e.outName} = ${e.inList[0]}
|
|
188
|
+
`;else{let n=e.inList[0],r=e.inList.slice(1),i=`dbg897`;switch(e.boolMethod){case 1:i=`common`;break;case 2:i=`fuse`;break;case 3:i=`cut`;break}t+=`def fvol_${e.outName}():
|
|
189
|
+
V000 = ${n}
|
|
190
|
+
`;let a=0;for(let e of r)t+=` V${Es(a+1)} = V${Es(a)}.${i}(${e})
|
|
191
|
+
`,a+=1;t+=` VFC = V${Es(a)}.removeSplitter()
|
|
192
|
+
return VFC
|
|
193
|
+
${e.outName} = fvol_${e.outName}()
|
|
194
|
+
|
|
195
|
+
`}return t}getAllVolumes(e){let t=``;for(let n of e){let e=this.getOneVolume(n);t+=e}return t}getAllSubGeoms(e){let t=[];for(let n of e)t.includes(n.subgeom)||t.push(n.subgeom);return t}getOneInherit(e){return`def finh_${e.outName}():
|
|
196
|
+
IVR1 = ${e.subdesign}.rotate(App.Vector(0, 0, 0), App.Vector(1, 0, 0), ${Ts(oa(e.rotate[0]))})
|
|
197
|
+
IVR2 = IVR1.rotate(App.Vector(0, 0, 0), App.Vector(0, 1, 0), ${Ts(oa(e.rotate[1]))})
|
|
198
|
+
IVR3 = IVR2.rotate(App.Vector(0, 0, 0), App.Vector(0, 0, 1), ${Ts(oa(e.rotate[2]))})
|
|
199
|
+
IVF = IVR3.translate(App.Vector(${Ts(e.translate[0])}, ${Ts(e.translate[1])}, ${Ts(e.translate[2])}))
|
|
200
|
+
return IVF
|
|
201
|
+
${e.outName} = finh_${e.outName}()
|
|
202
|
+
|
|
203
|
+
`}getAllInherits(e){let t=``;for(let n of e){let e=this.getOneInherit(n);t+=e}return t}getVolume(e){let t=``;if(e.inherits!==void 0){let n=this.getAllSubGeoms(e.inherits);for(let e of n){let n=qo().getPaxJson({},e,Lo);t+=this.getAllFigures(n.figures,n.partName),t+=this.getVolume(e.vol)}t+=this.getAllInherits(e.inherits)}return t+=this.getAllExtrudes(e.extrudes),t+=this.getAllVolumes(e.volumes),t}getFooter(e){return`
|
|
204
|
+
pax_${e}.check()
|
|
205
|
+
#pax_${e}.exportBrep(f"{outFileName}.brep")
|
|
206
|
+
#pax_${e}.exportIges(f"{outFileName}.igs")
|
|
207
|
+
#pax_${e}.exportStep(f"{outFileName}.stp")
|
|
208
|
+
pax_${e}.exportStl(f"{outFileName}.stl")
|
|
209
|
+
|
|
210
|
+
`}getExportFile(e){let t=this.getHeader(e.partName);return t+=this.getAllFigures(e.figures,e.partName),t+=this.getVolume(e.volume),t+=this.getFooter(e.partName),t}};function Ms(){return new js}var Ns=class{xMin;xMax;yMin;yMax;firstDone;constructor(){this.firstDone=!1,this.xMin=0,this.xMax=0,this.yMin=0,this.yMax=0}addAContour(e){if(e.length>0){let t=[];this.firstDone&&(t.push($(this.xMin,this.yMin)),t.push($(this.xMax,this.yMax)));for(let n of e)t.push(...n.generatePoints(2));let[n,r,i,a]=ka(t);this.xMin=n,this.xMax=r,this.yMin=i,this.yMax=a}}getViewBox(){let e=Math.round((this.xMax-this.xMin)*1.1)+10,t=Math.round((this.yMax-this.yMin)*1.1)+10;return[Math.round(this.xMin-e*.05),e,Math.round(this.yMin-t*.05),t]}},Ps=class{minMax;groups;svg;constructor(){this.minMax=new Ns,this.groups=[],this.svg=po()}addAContour(e,t=``,n=Q.contour){this.minMax.addAContour(e);let r={gpName:t,gpColor:n,ctrs:e};this.groups.push(r)}makeSvg(e){for(let t of this.groups){t.gpName!==``&&this.svg.addGroup(t.gpName);for(let n of t.ctrs){let r=n.imposedColor;r===``&&(r=t.gpColor),this.svg.addSvgString(n.toSvg(e,r))}t.gpName!==``&&this.svg.closeGroup()}}stringify(){let[e,t,n,r]=this.minMax.getViewBox();return this.svg.addHeader(e,t,n,r),this.makeSvg(this.minMax.yMax+this.minMax.yMin),this.svg.stringify()}};function Fs(){return new Ps}function Is(e){let t=Fs();return t.addAContour(e),t.stringify()}function Ls(e){let t=Fs();return t.addAContour(e.mainListC(),`main`,Q.mainInner),t.addAContour(e.mainBList,`mainB`,Q.mainB),t.addAContour(e.secondList,`second`,Q.second),t.addAContour(e.secondBList,`secondB`,Q.secondB),t.addAContour(e.dynamicsList,`dynamics`,Q.dynamics),t.stringify()}function Rs(e){let t=bo();for(let n of e)if(n.circle){let e=n.toDxfSeg()[0];t.addCircle(e.p1x,e.p1y,e.radius)}else for(let e of n.toDxfSeg())e.arc?t.addArc(e.p1x,e.p1y,e.radius,e.a1,e.a2):t.addLine(e.p1x,e.p1y,e.p2x,e.p2y);return t.stringify()}function zs(e){let t=``;return t+=e.logstr,t}function Bs(e,t,n){return qo().getPaxStr(e,t,n)}function Vs(e){let t=qo().getPaxJson({},e,Lo);return ls().getExportFile(t)}function Hs(e){let t=qo().getPaxJson({},e,Lo);return ws().getExportFile(t)}function Us(e){let t=qo().getPaxJson({},e,Lo);return Ms().getExportFile(t)}async function Ws(e,t,n,r,i){let a=new Yt(`application/zip`),o=new Si(a),s=t.partName,c=new Xt(JSON.stringify(e,null,2));await o.add(`param_${s}.json`,c);let l=new Xt(t.logstr);await o.add(`geom_${s}_log.txt`,l);let u=new Xt(r.logstr);await o.add(`geom_${s}_t${n}_log.txt`,u);for(let e in t.fig){let i=new Xt(Is(t.fig[e].mainListC()));await o.add(`face_${s}_${e}.svg`,i);let a=new Xt(Rs(t.fig[e].mainListC()));await o.add(`face_${s}_${e}.dxf`,a);let c=new Xt(Ls(t.fig[e]));await o.add(`deco_${s}_${e}.svg`,c);let l=new Xt(Ls(r.fig[e]));await o.add(`deco_${s}_${e}_t${n}.svg`,l)}let d=No(t.fig),f=new Xt(Is(d.mainListC()));await o.add(`face_${s}_all_merged.svg`,f);let p=new Xt(Rs(d.mainListC()));await o.add(`face_${s}_all_merged.dxf`,p);let m=new Xt(Ls(d));await o.add(`deco_${s}_all_merged.svg`,m);let h=new Xt(Ls(d));await o.add(`deco_${s}_all_merged_t${n}.svg`,h);let g=new Xt(Bs(e,t,i));await o.add(`${s}.pax.json`,g);let _=new Xt(Vs(t));await o.add(`${s}_noarc_openscad.scad`,_);let v=new Xt(Hs(t));await o.add(`${s}_noarc_jscad.js`,v);let y=new Xt(Us(t));return await o.add(`${s}_freecad.py`,y),await o.close(),await a.getData()}var Gs=(e=>(e[e.eSVG=0]=`eSVG`,e[e.eSVGALL=1]=`eSVGALL`,e[e.eDXF=2]=`eDXF`,e[e.eDXFALL=3]=`eDXFALL`,e[e.eTXTLOG=4]=`eTXTLOG`,e[e.ePAX=5]=`ePAX`,e[e.eOPENSCAD=6]=`eOPENSCAD`,e[e.eJSCAD=7]=`eJSCAD`,e[e.eFREECAD=8]=`eFREECAD`,e[e.eZIP=9]=`eZIP`,e))(Gs||{});function Ks(e,t,n,r,i){let a=e(0,t),o=``;if(a.calcErr)console.log("err931: error by calling geome ${geome0.calcErr}");else{let e=Object.keys(a.fig);if(i===0)if(e.includes(r)){let e=a.fig[r];o=Is(e.mainListC())}else console.log(`err749: fileTextContent eFace ${r} invalid`);else if(i===1)o=Is(No(a.fig).mainListC());else if(i===2)if(e.includes(r)){let e=a.fig[r];o=Rs(e.mainListC())}else console.log(`err759: fileTextContent eFace ${r} invalid`);else i===3?o=Rs(No(a.fig).mainListC()):i===4?o=zs(a):i===5?o=Bs(t,a,n):i===6?o=Vs(a):i===7?o=Hs(a):i===8?o=Us(a):console.log(`err912: unknown exportFormat ${i}`)}return o}async function qs(e,t,n,r,i){let a=e(0,n),o=e(t,n),s=new Blob;return!a.calcErr&&!o.calcErr?i===9?s=await Ws(n,a,t,o,r):console.log(`err913: unknown exportFormat ${i}`):console.log("err932: error by calling geome ${geome0.calcErr} ${geome1.calcErr}"),s}function Js(e){let t=``;return e===0||e===1?t=`image/svg+xml`:e===2||e===3?t=`application/dxf`:e===4?t=`text/plain`:e===5?t=`application/json`:e===6||e===7||e===8?t=`text/plain`:e===9&&(t=`application/zip`),t}function Ys(e){let t=``;return e===0||e===1?t=`.svg`:e===2||e===3?t=`.dxf`:e===4?t=`.log`:e===5?t=`.pax.json`:e===6?t=`_noarc_openscad.scad`:e===7?t=`_noarc_jscad.js`:e===8?t=`_freecad.py`:e===9&&(t=`.zip`),t}function Xs(e){let t=!1;return e===9&&(t=!0),t}function Zs(e,t,n,r){return JSON.stringify({lastModif:e,partName:t,pVal:n,comment:r},null,` `)}function Qs(e){let t=ra.default.parse(e),n=`lastModif`,r=`partName`,i=`pVal`,a=`comment`,o=``,s={lastModif:``,partName:``,pVal:{},comment:``};if(Object.hasOwn(t,n)&&(s[n]=t[n]),Object.hasOwn(t,r)&&(s[r]=t[r]),Object.hasOwn(t,i)){let e=t[i];for(let t of Object.keys(e)){let n=e[t];if(isNaN(n))throw`err905: ${n} is not a number!`;s[i][t]=n}o+=`info398: parsing file has found ${Object.keys(s[i]).length} parameters
|
|
211
|
+
`}else throw`err489: parameter-json-file has no key ${i}
|
|
212
|
+
`;return Object.hasOwn(t,a)&&(s[a]=t[a]),[s,o]}function $s(e,t,n,r,i=0){return ko(e,t).addCornerRounded(i).addSegStrokeR(n,0).addCornerRounded(i).addSegStrokeR(0,r).addCornerRounded(i).addSegStrokeR(-n,0).addCornerRounded(i).closeSegStroke()}function ec(e){let t=[];t.push(`version details:`),t.push(`${e.name} : ${e.version}`),t.push(`dependencies:`);let n=Object.keys(e.dependencies);for(let[r,i]of n.entries()){let n=i;t.push(`${r+1} : ${i} : ${e.dependencies[n]}`)}return t}export{Bo as A,qs as C,Go as D,Ks as E,Qs as F,$ as I,oa as L,zo as M,Ho as N,Po as O,Ro as P,ec as R,Xs as S,Ys as T,Zs as _,ba as a,fa as b,xa as c,_a as d,ha as f,Fo as g,Ao as h,Io as i,Vo as j,No as k,Sa as l,ko as m,Uo as n,va as o,Q as p,Gs as r,wa as s,Wo as t,Ca as u,$s as v,Js as w,Mo as x,aa as y};
|