tasmota-webserial-esptool 6.0.2 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.devcontainer/devcontainer.json +13 -13
- package/.github/workflows/build_upload.yml +4 -4
- package/README.md +1 -1
- package/css/dark.css +6 -4
- package/css/light.css +5 -2
- package/dist/const.d.ts +35 -1
- package/dist/const.js +80 -1
- package/dist/esp_loader.js +15 -3
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/stubs/esp32.json +7 -1
- package/dist/stubs/esp32c2.json +7 -0
- package/dist/stubs/esp32c3.json +7 -1
- package/dist/stubs/esp32c6.json +7 -0
- package/dist/stubs/esp32h2.json +7 -0
- package/dist/stubs/esp32s2.json +7 -1
- package/dist/stubs/esp32s3.json +7 -1
- package/dist/stubs/index.js +10 -1
- package/dist/web/esp32-d51f885c.js +1 -0
- package/dist/web/esp32c2-f0222390.js +1 -0
- package/dist/web/esp32c3-9f5fd05b.js +1 -0
- package/dist/web/esp32c6-e911f438.js +1 -0
- package/dist/web/esp32h2-19e099dc.js +1 -0
- package/dist/web/esp32s2-da1a4fa1.js +1 -0
- package/dist/web/esp32s3-d79eec99.js +1 -0
- package/dist/web/index.js +1 -1
- package/js/esptool.js +599 -495
- package/js/modules/esp32-d51f885c.js +1 -0
- package/js/modules/esp32c2-f0222390.js +1 -0
- package/js/modules/esp32c3-9f5fd05b.js +1 -0
- package/js/modules/esp32c6-e911f438.js +1 -0
- package/js/modules/esp32h2-19e099dc.js +1 -0
- package/js/modules/esp32s2-da1a4fa1.js +1 -0
- package/js/modules/esp32s3-d79eec99.js +1 -0
- package/js/modules/esptool.js +1 -1
- package/js/script.js +1 -1
- package/js/utilities.js +132 -98
- package/license.md +0 -1
- package/package.json +2 -2
- package/script/build +5 -0
- package/src/const.ts +84 -1
- package/src/esp_loader.ts +17 -2
- package/src/index.ts +1 -0
- package/src/stubs/esp32.json +7 -1
- package/src/stubs/esp32c2.json +7 -1
- package/src/stubs/esp32c3.json +7 -1
- package/src/stubs/esp32c6.json +7 -0
- package/src/stubs/esp32h2.json +7 -1
- package/src/stubs/esp32s2.json +7 -1
- package/src/stubs/esp32s3.json +7 -1
- package/src/stubs/index.ts +10 -1
- package/stubs/esp32.json +5 -5
- package/stubs/esp32c2.json +7 -1
- package/stubs/esp32c3.json +5 -5
- package/stubs/esp32c6.json +5 -5
- package/stubs/esp32h2.json +7 -1
- package/stubs/esp32s2.json +5 -5
- package/stubs/esp32s3.json +5 -5
- package/stubs/esp8266.json +5 -5
- package/dist/web/esp32-a2dcbc2e.js +0 -1
- package/dist/web/esp32c3-18e9678b.js +0 -1
- package/dist/web/esp32s2-3109ccc6.js +0 -1
- package/dist/web/esp32s3-c1dbd867.js +0 -1
- package/js/modules/esp32-a2dcbc2e.js +0 -1
- package/js/modules/esp32c3-18e9678b.js +0 -1
- package/js/modules/esp32s2-3109ccc6.js +0 -1
- package/js/modules/esp32s3-c1dbd867.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A=1074521560,C="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",g=1074520064,I="GOv8P9jnC0Bx6AtA8+wLQO3oC0CP6AtA7egLQEnpC0AG6gtAeOoLQCHqC0CB5wtAo+kLQPjpC0Bn6QtAmuoLQI7pC0Ca6gtAXegLQLPoC0Dt6AtASekLQHfoC0BM6wtAs+wLQKXmC0DX7AtApeYLQKXmC0Cl5gtApeYLQKXmC0Cl5gtApeYLQKXmC0Dz6gtApeYLQM3rC0Cz7AtA",B=1073605544,Q={entry:A,text:C,text_start:g,data:I,data_start:B};export{I as data,B as data_start,Q as default,A as entry,C as text,g as text_start};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A=1077413304,B="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",w=1077411840,E="GGvKP+AIOEAsCThAhAk4QCgKOECUCjhAQgo4QKgHOEDkCThAJAo4QJgJOEBYBzhAzAk4QFgHOEC6CDhA/gg4QCwJOECECThAzAg4QBIIOEBCCDhAyAg4QOYMOEAsCThArAs4QJoMOECkBjhAxAw4QKQGOECkBjhApAY4QKQGOECkBjhApAY4QKQGOECkBjhASAs4QKQGOEDICzhAmgw4QA==",M=1070295976,g={entry:A,text:B,text_start:w,data:E,data_start:M};export{E as data,M as data_start,g as default,A as entry,B as text,w as text_start};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A=1077413532,B="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",E=1077411840,w="IGvIP3YKOEDGCjhAHgs4QMILOEAuDDhA3As4QEIJOEB+CzhAvgs4QDILOEDyCDhAZgs4QPIIOEBQCjhAlgo4QMYKOEAeCzhAYgo4QKYJOEDWCThAXgo4QIAOOEDGCjhARg04QDgOOEAyCDhAYA44QDIIOEAyCDhAMgg4QDIIOEAyCDhAMgg4QDIIOEAyCDhA4gw4QDIIOEBkDThAOA44QA==",c=1070164912,g={entry:A,text:B,text_start:E,data:w,data_start:c};export{w as data,c as data_start,g as default,A as entry,B as text,E as text_start};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A=1082132112,B="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",E=1082130432,w="HCuEQEIKgECSCoBA6gqAQI4LgED6C4BAqAuAQA4JgEBKC4BAiguAQP4KgEC+CIBAMguAQL4IgEAcCoBAYgqAQJIKgEDqCoBALgqAQHIJgECiCYBAKgqAQEwOgECSCoBAEg2AQAQOgED+B4BALA6AQP4HgED+B4BA/geAQP4HgED+B4BA/geAQP4HgED+B4BArgyAQP4HgEAwDYBABA6AQA==",g=1082469292,c={entry:A,text:B,text_start:E,data:w,data_start:g};export{w as data,g as data_start,c as default,A as entry,B as text,E as text_start};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A=1082132112,B="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",E=1082130432,w="HCuDQEIKgECSCoBA6gqAQI4LgED6C4BAqAuAQA4JgEBKC4BAiguAQP4KgEC+CIBAMguAQL4IgEAcCoBAYgqAQJIKgEDqCoBALgqAQHIJgECiCYBAKgqAQEwOgECSCoBAEg2AQAQOgED+B4BALA6AQP4HgED+B4BA/geAQP4HgED+B4BA/geAQP4HgED+B4BArgyAQP4HgEAwDYBABA6AQA==",g=1082403756,c={entry:A,text:B,text_start:E,data:w,data_start:g};export{w as data,g as data_start,c as default,A as entry,B as text,E as text_start};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A=1073907696,g="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",C=1073905664,B="ZCv9PzaLAkDBiwJAhpACQEqMAkDjiwJASowCQKmMAkByjQJA5Y0CQI2NAkDAigJAC40CQGSNAkDMjAJACI4CQPaMAkAIjgJAr4sCQA6MAkBKjAJAqYwCQMeLAkACiwJAx44CQD2QAkDYiQJAZZACQNiJAkDYiQJA2IkCQNiJAkDYiQJA2IkCQNiJAkDYiQJAZI4CQNiJAkBZjwJAPZACQA==",I=1073622012,Q={entry:A,text:g,text_start:C,data:B,data_start:I};export{B as data,I as data_start,Q as default,A as entry,g as text,C as text_start};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A=1077381696,g="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",C=1077379072,I="ZCvKP8qNN0CvjjdAcJM3QDqPN0DPjjdAOo83QJmPN0BmkDdA2ZA3QIGQN0BVjTdA/I83QFiQN0C8jzdA+5A3QOaPN0D7kDdAnY43QPqON0A6jzdAmY83QLWON0CWjTdAvJE3QDaTN0ByjDdAVpM3QHKMN0ByjDdAcow3QHKMN0ByjDdAcow3QHKMN0ByjDdAVpE3QHKMN0BRkjdANpM3QAQInwAAAAAAAAAYAQQIBQAAAAAAAAAIAQQIBgAAAAAAAAAAAQQIIQAAAAAAIAAAEQQI3AAAAAAAIAAAEQQIDAAAAAAAIAAAAQQIEgAAAAAAIAAAESAoDAAQAQAA",B=1070279668,Q={entry:A,text:g,text_start:C,data:I,data_start:B};export{I as data,B as data_start,Q as default,A as entry,g as text,C as text_start};
|
package/js/modules/esptool.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=t=>{let e=[];for(let a=0;a<t.length;a++){let i=t.charCodeAt(a);i<=255&&e.push(i)}return e},e=t=>"["+t.map((t=>a(t))).join(", ")+"]",a=(t,e=2)=>{let a=t.toString(16).toUpperCase();return a.startsWith("-")?"-0x"+a.substring(1).padStart(e,"0"):"0x"+a.padStart(e,"0")},i=t=>new Promise((e=>setTimeout(e,t))),s={18:"256KB",19:"512KB",20:"1MB",21:"2MB",22:"4MB",23:"8MB",24:"16MB",25:"32MB",26:"64MB"},r=115200,n=t(" UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU"),o=33382,l=50,h=12882,d=12883,f=12995,_=12998,c=12914,u={4293968129:{name:"ESP8266",family:o},15736195:{name:"ESP32",family:l},1990:{name:"ESP32-S2",family:h},9:{name:"ESP32-S3",family:d},3942662454:{name:"ESP32-S3(beta2)",family:d},1763790959:{name:"ESP32-C3",family:f},456216687:{name:"ESP32-C3",family:f},3391540258:{name:"ESP32-H2",family:12914},228687983:{name:"ESP32-C6(beta)",family:12998}},w=3e3,g=6e5,m=(t,e)=>{let a=Math.floor(t*(e/486));return a<w?w:a},p=t=>{switch(t){case l:return{regBase:1072963584,baseFuse:1073061888,macFuse:1073061888,usrOffs:28,usr1Offs:32,usr2Offs:36,mosiDlenOffs:40,misoDlenOffs:44,w0Offs:128,uartDateReg:1610612856,flashOffs:4096};case h:return{regBase:1061167104,baseFuse:1061265408,macFuse:1061265476,usrOffs:24,usr1Offs:28,usr2Offs:32,mosiDlenOffs:36,misoDlenOffs:40,w0Offs:88,uartDateReg:1610612856,flashOffs:4096};case d:return{regBase:1610620928,usrOffs:24,baseFuse:1610641408,macFuse:1610641476,usr1Offs:28,usr2Offs:32,mosiDlenOffs:36,misoDlenOffs:40,w0Offs:88,uartDateReg:1610612864,flashOffs:0};case o:return{regBase:1610613248,usrOffs:28,baseFuse:1072693328,macFuse:1072693328,usr1Offs:32,usr2Offs:36,mosiDlenOffs:-1,misoDlenOffs:-1,w0Offs:64,uartDateReg:1610612856,flashOffs:0};case f:return{regBase:1610620928,baseFuse:1610647552,macFuse:1610647620,usrOffs:24,usr1Offs:28,usr2Offs:32,mosiDlenOffs:36,misoDlenOffs:40,w0Offs:88,uartDateReg:1610612860,flashOffs:0};default:return{regBase:-1,baseFuse:-1,macFuse:-1,usrOffs:-1,usr1Offs:-1,usr2Offs:-1,mosiDlenOffs:-1,misoDlenOffs:-1,w0Offs:-1,uartDateReg:-1,flashOffs:-1}}};class b extends Error{constructor(t){super(t),this.name="SlipReadError"}}const y=async e=>{let a;return e==l?a=await import("./esp32-a2dcbc2e.js"):e==h?a=await import("./esp32s2-3109ccc6.js"):e==d?a=await import("./esp32s3-c1dbd867.js"):e==o?a=await import("./esp8266-144419c0.js"):e==f&&(a=await import("./esp32c3-18e9678b.js")),{...a,text:t(atob(a.text)),data:t(atob(a.data))}};function k(t){let e=t.length;for(;--e>=0;)t[e]=0}const v=256,x=286,z=30,R=15,S=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),U=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),E=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),D=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),A=new Array(576);k(A);const I=new Array(60);k(I);const F=new Array(512);k(F);const B=new Array(256);k(B);const O=new Array(29);k(O);const T=new Array(z);function C(t,e,a,i,s){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=i,this.max_length=s,this.has_stree=t&&t.length}let Z,L,M;function N(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}k(T);const P=t=>t<256?F[t]:F[256+(t>>>7)],H=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},$=(t,e,a)=>{t.bi_valid>16-a?(t.bi_buf|=e<<t.bi_valid&65535,H(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=a-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=a)},j=(t,e,a)=>{$(t,a[2*e],a[2*e+1])},V=(t,e)=>{let a=0;do{a|=1&t,t>>>=1,a<<=1}while(--e>0);return a>>>1},W=(t,e,a)=>{const i=new Array(16);let s,r,n=0;for(s=1;s<=R;s++)n=n+a[s-1]<<1,i[s]=n;for(r=0;r<=e;r++){let e=t[2*r+1];0!==e&&(t[2*r]=V(i[e]++,e))}},K=t=>{let e;for(e=0;e<x;e++)t.dyn_ltree[2*e]=0;for(e=0;e<z;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},Y=t=>{t.bi_valid>8?H(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},q=(t,e,a,i)=>{const s=2*e,r=2*a;return t[s]<t[r]||t[s]===t[r]&&i[e]<=i[a]},G=(t,e,a)=>{const i=t.heap[a];let s=a<<1;for(;s<=t.heap_len&&(s<t.heap_len&&q(e,t.heap[s+1],t.heap[s],t.depth)&&s++,!q(e,i,t.heap[s],t.depth));)t.heap[a]=t.heap[s],a=s,s<<=1;t.heap[a]=i},X=(t,e,a)=>{let i,s,r,n,o=0;if(0!==t.sym_next)do{i=255&t.pending_buf[t.sym_buf+o++],i+=(255&t.pending_buf[t.sym_buf+o++])<<8,s=t.pending_buf[t.sym_buf+o++],0===i?j(t,s,e):(r=B[s],j(t,r+v+1,e),n=S[r],0!==n&&(s-=O[r],$(t,s,n)),i--,r=P(i),j(t,r,a),n=U[r],0!==n&&(i-=T[r],$(t,i,n)))}while(o<t.sym_next);j(t,256,e)},Q=(t,e)=>{const a=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.has_stree,r=e.stat_desc.elems;let n,o,l,h=-1;for(t.heap_len=0,t.heap_max=573,n=0;n<r;n++)0!==a[2*n]?(t.heap[++t.heap_len]=h=n,t.depth[n]=0):a[2*n+1]=0;for(;t.heap_len<2;)l=t.heap[++t.heap_len]=h<2?++h:0,a[2*l]=1,t.depth[l]=0,t.opt_len--,s&&(t.static_len-=i[2*l+1]);for(e.max_code=h,n=t.heap_len>>1;n>=1;n--)G(t,a,n);l=r;do{n=t.heap[1],t.heap[1]=t.heap[t.heap_len--],G(t,a,1),o=t.heap[1],t.heap[--t.heap_max]=n,t.heap[--t.heap_max]=o,a[2*l]=a[2*n]+a[2*o],t.depth[l]=(t.depth[n]>=t.depth[o]?t.depth[n]:t.depth[o])+1,a[2*n+1]=a[2*o+1]=l,t.heap[1]=l++,G(t,a,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const a=e.dyn_tree,i=e.max_code,s=e.stat_desc.static_tree,r=e.stat_desc.has_stree,n=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,l=e.stat_desc.max_length;let h,d,f,_,c,u,w=0;for(_=0;_<=R;_++)t.bl_count[_]=0;for(a[2*t.heap[t.heap_max]+1]=0,h=t.heap_max+1;h<573;h++)d=t.heap[h],_=a[2*a[2*d+1]+1]+1,_>l&&(_=l,w++),a[2*d+1]=_,d>i||(t.bl_count[_]++,c=0,d>=o&&(c=n[d-o]),u=a[2*d],t.opt_len+=u*(_+c),r&&(t.static_len+=u*(s[2*d+1]+c)));if(0!==w){do{for(_=l-1;0===t.bl_count[_];)_--;t.bl_count[_]--,t.bl_count[_+1]+=2,t.bl_count[l]--,w-=2}while(w>0);for(_=l;0!==_;_--)for(d=t.bl_count[_];0!==d;)f=t.heap[--h],f>i||(a[2*f+1]!==_&&(t.opt_len+=(_-a[2*f+1])*a[2*f],a[2*f+1]=_),d--)}})(t,e),W(a,h,t.bl_count)},J=(t,e,a)=>{let i,s,r=-1,n=e[1],o=0,l=7,h=4;for(0===n&&(l=138,h=3),e[2*(a+1)+1]=65535,i=0;i<=a;i++)s=n,n=e[2*(i+1)+1],++o<l&&s===n||(o<h?t.bl_tree[2*s]+=o:0!==s?(s!==r&&t.bl_tree[2*s]++,t.bl_tree[32]++):o<=10?t.bl_tree[34]++:t.bl_tree[36]++,o=0,r=s,0===n?(l=138,h=3):s===n?(l=6,h=3):(l=7,h=4))},tt=(t,e,a)=>{let i,s,r=-1,n=e[1],o=0,l=7,h=4;for(0===n&&(l=138,h=3),i=0;i<=a;i++)if(s=n,n=e[2*(i+1)+1],!(++o<l&&s===n)){if(o<h)do{j(t,s,t.bl_tree)}while(0!=--o);else 0!==s?(s!==r&&(j(t,s,t.bl_tree),o--),j(t,16,t.bl_tree),$(t,o-3,2)):o<=10?(j(t,17,t.bl_tree),$(t,o-3,3)):(j(t,18,t.bl_tree),$(t,o-11,7));o=0,r=s,0===n?(l=138,h=3):s===n?(l=6,h=3):(l=7,h=4)}};let et=!1;const at=(t,e,a,i)=>{$(t,0+(i?1:0),3),Y(t),H(t,a),H(t,~a),a&&t.pending_buf.set(t.window.subarray(e,e+a),t.pending),t.pending+=a};var it=(t,e,a,i)=>{let s,r,n=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,a=4093624447;for(e=0;e<=31;e++,a>>>=1)if(1&a&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<v;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),Q(t,t.l_desc),Q(t,t.d_desc),n=(t=>{let e;for(J(t,t.dyn_ltree,t.l_desc.max_code),J(t,t.dyn_dtree,t.d_desc.max_code),Q(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*D[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),s=t.opt_len+3+7>>>3,r=t.static_len+3+7>>>3,r<=s&&(s=r)):s=r=a+5,a+4<=s&&-1!==e?at(t,e,a,i):4===t.strategy||r===s?($(t,2+(i?1:0),3),X(t,A,I)):($(t,4+(i?1:0),3),((t,e,a,i)=>{let s;for($(t,e-257,5),$(t,a-1,5),$(t,i-4,4),s=0;s<i;s++)$(t,t.bl_tree[2*D[s]+1],3);tt(t,t.dyn_ltree,e-1),tt(t,t.dyn_dtree,a-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,n+1),X(t,t.dyn_ltree,t.dyn_dtree)),K(t),i&&Y(t)},st={_tr_init:t=>{et||((()=>{let t,e,a,i,s;const r=new Array(16);for(a=0,i=0;i<28;i++)for(O[i]=a,t=0;t<1<<S[i];t++)B[a++]=i;for(B[a-1]=i,s=0,i=0;i<16;i++)for(T[i]=s,t=0;t<1<<U[i];t++)F[s++]=i;for(s>>=7;i<z;i++)for(T[i]=s<<7,t=0;t<1<<U[i]-7;t++)F[256+s++]=i;for(e=0;e<=R;e++)r[e]=0;for(t=0;t<=143;)A[2*t+1]=8,t++,r[8]++;for(;t<=255;)A[2*t+1]=9,t++,r[9]++;for(;t<=279;)A[2*t+1]=7,t++,r[7]++;for(;t<=287;)A[2*t+1]=8,t++,r[8]++;for(W(A,287,r),t=0;t<z;t++)I[2*t+1]=5,I[2*t]=V(t,5);Z=new C(A,S,257,x,R),L=new C(I,U,0,z,R),M=new C(new Array(0),E,0,19,7)})(),et=!0),t.l_desc=new N(t.dyn_ltree,Z),t.d_desc=new N(t.dyn_dtree,L),t.bl_desc=new N(t.bl_tree,M),t.bi_buf=0,t.bi_valid=0,K(t)},_tr_stored_block:at,_tr_flush_block:it,_tr_tally:(t,e,a)=>(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=a,0===e?t.dyn_ltree[2*a]++:(t.matches++,e--,t.dyn_ltree[2*(B[a]+v+1)]++,t.dyn_dtree[2*P(e)]++),t.sym_next===t.sym_end),_tr_align:t=>{$(t,2,3),j(t,256,A),(t=>{16===t.bi_valid?(H(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)}};var rt=(t,e,a,i)=>{let s=65535&t|0,r=t>>>16&65535|0,n=0;for(;0!==a;){n=a>2e3?2e3:a,a-=n;do{s=s+e[i++]|0,r=r+s|0}while(--n);s%=65521,r%=65521}return s|r<<16|0};const nt=new Uint32Array((()=>{let t,e=[];for(var a=0;a<256;a++){t=a;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e})());var ot=(t,e,a,i)=>{const s=nt,r=i+a;t^=-1;for(let a=i;a<r;a++)t=t>>>8^s[255&(t^e[a])];return-1^t},lt={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},ht={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:dt,_tr_stored_block:ft,_tr_flush_block:_t,_tr_tally:ct,_tr_align:ut}=st,{Z_NO_FLUSH:wt,Z_PARTIAL_FLUSH:gt,Z_FULL_FLUSH:mt,Z_FINISH:pt,Z_BLOCK:bt,Z_OK:yt,Z_STREAM_END:kt,Z_STREAM_ERROR:vt,Z_DATA_ERROR:xt,Z_BUF_ERROR:zt,Z_DEFAULT_COMPRESSION:Rt,Z_FILTERED:St,Z_HUFFMAN_ONLY:Ut,Z_RLE:Et,Z_FIXED:Dt,Z_DEFAULT_STRATEGY:At,Z_UNKNOWN:It,Z_DEFLATED:Ft}=ht,Bt=258,Ot=262,Tt=42,Ct=113,Zt=666,Lt=(t,e)=>(t.msg=lt[e],e),Mt=t=>2*t-(t>4?9:0),Nt=t=>{let e=t.length;for(;--e>=0;)t[e]=0},Pt=t=>{let e,a,i,s=t.w_size;e=t.hash_size,i=e;do{a=t.head[--i],t.head[i]=a>=s?a-s:0}while(--e);e=s,i=e;do{a=t.prev[--i],t.prev[i]=a>=s?a-s:0}while(--e)};let Ht=(t,e,a)=>(e<<t.hash_shift^a)&t.hash_mask;const $t=t=>{const e=t.state;let a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+a),t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))},jt=(t,e)=>{_t(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,$t(t.strm)},Vt=(t,e)=>{t.pending_buf[t.pending++]=e},Wt=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},Kt=(t,e,a,i)=>{let s=t.avail_in;return s>i&&(s=i),0===s?0:(t.avail_in-=s,e.set(t.input.subarray(t.next_in,t.next_in+s),a),1===t.state.wrap?t.adler=rt(t.adler,e,s,a):2===t.state.wrap&&(t.adler=ot(t.adler,e,s,a)),t.next_in+=s,t.total_in+=s,s)},Yt=(t,e)=>{let a,i,s=t.max_chain_length,r=t.strstart,n=t.prev_length,o=t.nice_match;const l=t.strstart>t.w_size-Ot?t.strstart-(t.w_size-Ot):0,h=t.window,d=t.w_mask,f=t.prev,_=t.strstart+Bt;let c=h[r+n-1],u=h[r+n];t.prev_length>=t.good_match&&(s>>=2),o>t.lookahead&&(o=t.lookahead);do{if(a=e,h[a+n]===u&&h[a+n-1]===c&&h[a]===h[r]&&h[++a]===h[r+1]){r+=2,a++;do{}while(h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&r<_);if(i=Bt-(_-r),r=_-Bt,i>n){if(t.match_start=e,n=i,i>=o)break;c=h[r+n-1],u=h[r+n]}}}while((e=f[e&d])>l&&0!=--s);return n<=t.lookahead?n:t.lookahead},qt=t=>{const e=t.w_size;let a,i,s;do{if(i=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-Ot)&&(t.window.set(t.window.subarray(e,e+e-i),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),Pt(t),i+=e),0===t.strm.avail_in)break;if(a=Kt(t.strm,t.window,t.strstart+t.lookahead,i),t.lookahead+=a,t.lookahead+t.insert>=3)for(s=t.strstart-t.insert,t.ins_h=t.window[s],t.ins_h=Ht(t,t.ins_h,t.window[s+1]);t.insert&&(t.ins_h=Ht(t,t.ins_h,t.window[s+3-1]),t.prev[s&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=s,s++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<Ot&&0!==t.strm.avail_in)},Gt=(t,e)=>{let a,i,s,r=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,n=0,o=t.strm.avail_in;do{if(a=65535,s=t.bi_valid+42>>3,t.strm.avail_out<s)break;if(s=t.strm.avail_out-s,i=t.strstart-t.block_start,a>i+t.strm.avail_in&&(a=i+t.strm.avail_in),a>s&&(a=s),a<r&&(0===a&&e!==pt||e===wt||a!==i+t.strm.avail_in))break;n=e===pt&&a===i+t.strm.avail_in?1:0,ft(t,0,0,n),t.pending_buf[t.pending-4]=a,t.pending_buf[t.pending-3]=a>>8,t.pending_buf[t.pending-2]=~a,t.pending_buf[t.pending-1]=~a>>8,$t(t.strm),i&&(i>a&&(i=a),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+i),t.strm.next_out),t.strm.next_out+=i,t.strm.avail_out-=i,t.strm.total_out+=i,t.block_start+=i,a-=i),a&&(Kt(t.strm,t.strm.output,t.strm.next_out,a),t.strm.next_out+=a,t.strm.avail_out-=a,t.strm.total_out+=a)}while(0===n);return o-=t.strm.avail_in,o&&(o>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=o&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-o,t.strm.next_in),t.strstart),t.strstart+=o,t.insert+=o>t.w_size-t.insert?t.w_size-t.insert:o),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),n?4:e!==wt&&e!==pt&&0===t.strm.avail_in&&t.strstart===t.block_start?2:(s=t.window_size-t.strstart,t.strm.avail_in>s&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,s+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),s>t.strm.avail_in&&(s=t.strm.avail_in),s&&(Kt(t.strm,t.window,t.strstart,s),t.strstart+=s,t.insert+=s>t.w_size-t.insert?t.w_size-t.insert:s),t.high_water<t.strstart&&(t.high_water=t.strstart),s=t.bi_valid+42>>3,s=t.pending_buf_size-s>65535?65535:t.pending_buf_size-s,r=s>t.w_size?t.w_size:s,i=t.strstart-t.block_start,(i>=r||(i||e===pt)&&e!==wt&&0===t.strm.avail_in&&i<=s)&&(a=i>s?s:i,n=e===pt&&0===t.strm.avail_in&&a===i?1:0,ft(t,t.block_start,a,n),t.block_start+=a,$t(t.strm)),n?3:1)},Xt=(t,e)=>{let a,i;for(;;){if(t.lookahead<Ot){if(qt(t),t.lookahead<Ot&&e===wt)return 1;if(0===t.lookahead)break}if(a=0,t.lookahead>=3&&(t.ins_h=Ht(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==a&&t.strstart-a<=t.w_size-Ot&&(t.match_length=Yt(t,a)),t.match_length>=3)if(i=ct(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=Ht(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=Ht(t,t.ins_h,t.window[t.strstart+1]);else i=ct(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(jt(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===pt?(jt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(jt(t,!1),0===t.strm.avail_out)?1:2},Qt=(t,e)=>{let a,i,s;for(;;){if(t.lookahead<Ot){if(qt(t),t.lookahead<Ot&&e===wt)return 1;if(0===t.lookahead)break}if(a=0,t.lookahead>=3&&(t.ins_h=Ht(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==a&&t.prev_length<t.max_lazy_match&&t.strstart-a<=t.w_size-Ot&&(t.match_length=Yt(t,a),t.match_length<=5&&(t.strategy===St||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){s=t.strstart+t.lookahead-3,i=ct(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=s&&(t.ins_h=Ht(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,i&&(jt(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(i=ct(t,0,t.window[t.strstart-1]),i&&jt(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=ct(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===pt?(jt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(jt(t,!1),0===t.strm.avail_out)?1:2};function Jt(t,e,a,i,s){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=i,this.func=s}const te=[new Jt(0,0,0,0,Gt),new Jt(4,4,8,4,Xt),new Jt(4,5,16,8,Xt),new Jt(4,6,32,32,Xt),new Jt(4,4,16,16,Qt),new Jt(8,16,32,32,Qt),new Jt(8,16,128,128,Qt),new Jt(8,32,128,256,Qt),new Jt(32,128,258,1024,Qt),new Jt(32,258,258,4096,Qt)];function ee(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Ft,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),Nt(this.dyn_ltree),Nt(this.dyn_dtree),Nt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),Nt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),Nt(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const ae=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==Tt&&57!==e.status&&69!==e.status&&73!==e.status&&91!==e.status&&103!==e.status&&e.status!==Ct&&e.status!==Zt?1:0},ie=t=>{if(ae(t))return Lt(t,vt);t.total_in=t.total_out=0,t.data_type=It;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=2===e.wrap?57:e.wrap?Tt:Ct,t.adler=2===e.wrap?0:1,e.last_flush=-2,dt(e),yt},se=t=>{const e=ie(t);var a;return e===yt&&((a=t.state).window_size=2*a.w_size,Nt(a.head),a.max_lazy_match=te[a.level].max_lazy,a.good_match=te[a.level].good_length,a.nice_match=te[a.level].nice_length,a.max_chain_length=te[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=2,a.match_available=0,a.ins_h=0),e},re=(t,e,a,i,s,r)=>{if(!t)return vt;let n=1;if(e===Rt&&(e=6),i<0?(n=0,i=-i):i>15&&(n=2,i-=16),s<1||s>9||a!==Ft||i<8||i>15||e<0||e>9||r<0||r>Dt||8===i&&1!==n)return Lt(t,vt);8===i&&(i=9);const o=new ee;return t.state=o,o.strm=t,o.status=Tt,o.wrap=n,o.gzhead=null,o.w_bits=i,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=s+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+3-1)/3),o.window=new Uint8Array(2*o.w_size),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<s+6,o.pending_buf_size=4*o.lit_bufsize,o.pending_buf=new Uint8Array(o.pending_buf_size),o.sym_buf=o.lit_bufsize,o.sym_end=3*(o.lit_bufsize-1),o.level=e,o.strategy=r,o.method=a,se(t)};var ne={deflateInit:(t,e)=>re(t,e,Ft,15,8,At),deflateInit2:re,deflateReset:se,deflateResetKeep:ie,deflateSetHeader:(t,e)=>ae(t)||2!==t.state.wrap?vt:(t.state.gzhead=e,yt),deflate:(t,e)=>{if(ae(t)||e>bt||e<0)return t?Lt(t,vt):vt;const a=t.state;if(!t.output||0!==t.avail_in&&!t.input||a.status===Zt&&e!==pt)return Lt(t,0===t.avail_out?zt:vt);const i=a.last_flush;if(a.last_flush=e,0!==a.pending){if($t(t),0===t.avail_out)return a.last_flush=-1,yt}else if(0===t.avail_in&&Mt(e)<=Mt(i)&&e!==pt)return Lt(t,zt);if(a.status===Zt&&0!==t.avail_in)return Lt(t,zt);if(a.status===Tt&&0===a.wrap&&(a.status=Ct),a.status===Tt){let e=Ft+(a.w_bits-8<<4)<<8,i=-1;if(i=a.strategy>=Ut||a.level<2?0:a.level<6?1:6===a.level?2:3,e|=i<<6,0!==a.strstart&&(e|=32),e+=31-e%31,Wt(a,e),0!==a.strstart&&(Wt(a,t.adler>>>16),Wt(a,65535&t.adler)),t.adler=1,a.status=Ct,$t(t),0!==a.pending)return a.last_flush=-1,yt}if(57===a.status)if(t.adler=0,Vt(a,31),Vt(a,139),Vt(a,8),a.gzhead)Vt(a,(a.gzhead.text?1:0)+(a.gzhead.hcrc?2:0)+(a.gzhead.extra?4:0)+(a.gzhead.name?8:0)+(a.gzhead.comment?16:0)),Vt(a,255&a.gzhead.time),Vt(a,a.gzhead.time>>8&255),Vt(a,a.gzhead.time>>16&255),Vt(a,a.gzhead.time>>24&255),Vt(a,9===a.level?2:a.strategy>=Ut||a.level<2?4:0),Vt(a,255&a.gzhead.os),a.gzhead.extra&&a.gzhead.extra.length&&(Vt(a,255&a.gzhead.extra.length),Vt(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(t.adler=ot(t.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=69;else if(Vt(a,0),Vt(a,0),Vt(a,0),Vt(a,0),Vt(a,0),Vt(a,9===a.level?2:a.strategy>=Ut||a.level<2?4:0),Vt(a,3),a.status=Ct,$t(t),0!==a.pending)return a.last_flush=-1,yt;if(69===a.status){if(a.gzhead.extra){let e=a.pending,i=(65535&a.gzhead.extra.length)-a.gzindex;for(;a.pending+i>a.pending_buf_size;){let s=a.pending_buf_size-a.pending;if(a.pending_buf.set(a.gzhead.extra.subarray(a.gzindex,a.gzindex+s),a.pending),a.pending=a.pending_buf_size,a.gzhead.hcrc&&a.pending>e&&(t.adler=ot(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex+=s,$t(t),0!==a.pending)return a.last_flush=-1,yt;e=0,i-=s}let s=new Uint8Array(a.gzhead.extra);a.pending_buf.set(s.subarray(a.gzindex,a.gzindex+i),a.pending),a.pending+=i,a.gzhead.hcrc&&a.pending>e&&(t.adler=ot(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex=0}a.status=73}if(73===a.status){if(a.gzhead.name){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=ot(t.adler,a.pending_buf,a.pending-i,i)),$t(t),0!==a.pending)return a.last_flush=-1,yt;i=0}e=a.gzindex<a.gzhead.name.length?255&a.gzhead.name.charCodeAt(a.gzindex++):0,Vt(a,e)}while(0!==e);a.gzhead.hcrc&&a.pending>i&&(t.adler=ot(t.adler,a.pending_buf,a.pending-i,i)),a.gzindex=0}a.status=91}if(91===a.status){if(a.gzhead.comment){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=ot(t.adler,a.pending_buf,a.pending-i,i)),$t(t),0!==a.pending)return a.last_flush=-1,yt;i=0}e=a.gzindex<a.gzhead.comment.length?255&a.gzhead.comment.charCodeAt(a.gzindex++):0,Vt(a,e)}while(0!==e);a.gzhead.hcrc&&a.pending>i&&(t.adler=ot(t.adler,a.pending_buf,a.pending-i,i))}a.status=103}if(103===a.status){if(a.gzhead.hcrc){if(a.pending+2>a.pending_buf_size&&($t(t),0!==a.pending))return a.last_flush=-1,yt;Vt(a,255&t.adler),Vt(a,t.adler>>8&255),t.adler=0}if(a.status=Ct,$t(t),0!==a.pending)return a.last_flush=-1,yt}if(0!==t.avail_in||0!==a.lookahead||e!==wt&&a.status!==Zt){let i=0===a.level?Gt(a,e):a.strategy===Ut?((t,e)=>{let a;for(;;){if(0===t.lookahead&&(qt(t),0===t.lookahead)){if(e===wt)return 1;break}if(t.match_length=0,a=ct(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(jt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===pt?(jt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(jt(t,!1),0===t.strm.avail_out)?1:2})(a,e):a.strategy===Et?((t,e)=>{let a,i,s,r;const n=t.window;for(;;){if(t.lookahead<=Bt){if(qt(t),t.lookahead<=Bt&&e===wt)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(s=t.strstart-1,i=n[s],i===n[++s]&&i===n[++s]&&i===n[++s])){r=t.strstart+Bt;do{}while(i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&s<r);t.match_length=Bt-(r-s),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(a=ct(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=ct(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(jt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===pt?(jt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(jt(t,!1),0===t.strm.avail_out)?1:2})(a,e):te[a.level].func(a,e);if(3!==i&&4!==i||(a.status=Zt),1===i||3===i)return 0===t.avail_out&&(a.last_flush=-1),yt;if(2===i&&(e===gt?ut(a):e!==bt&&(ft(a,0,0,!1),e===mt&&(Nt(a.head),0===a.lookahead&&(a.strstart=0,a.block_start=0,a.insert=0))),$t(t),0===t.avail_out))return a.last_flush=-1,yt}return e!==pt?yt:a.wrap<=0?kt:(2===a.wrap?(Vt(a,255&t.adler),Vt(a,t.adler>>8&255),Vt(a,t.adler>>16&255),Vt(a,t.adler>>24&255),Vt(a,255&t.total_in),Vt(a,t.total_in>>8&255),Vt(a,t.total_in>>16&255),Vt(a,t.total_in>>24&255)):(Wt(a,t.adler>>>16),Wt(a,65535&t.adler)),$t(t),a.wrap>0&&(a.wrap=-a.wrap),0!==a.pending?yt:kt)},deflateEnd:t=>{if(ae(t))return vt;const e=t.state.status;return t.state=null,e===Ct?Lt(t,xt):yt},deflateSetDictionary:(t,e)=>{let a=e.length;if(ae(t))return vt;const i=t.state,s=i.wrap;if(2===s||1===s&&i.status!==Tt||i.lookahead)return vt;if(1===s&&(t.adler=rt(t.adler,e,a,0)),i.wrap=0,a>=i.w_size){0===s&&(Nt(i.head),i.strstart=0,i.block_start=0,i.insert=0);let t=new Uint8Array(i.w_size);t.set(e.subarray(a-i.w_size,a),0),e=t,a=i.w_size}const r=t.avail_in,n=t.next_in,o=t.input;for(t.avail_in=a,t.next_in=0,t.input=e,qt(i);i.lookahead>=3;){let t=i.strstart,e=i.lookahead-2;do{i.ins_h=Ht(i,i.ins_h,i.window[t+3-1]),i.prev[t&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=t,t++}while(--e);i.strstart=t,i.lookahead=2,qt(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,t.next_in=n,t.input=o,t.avail_in=r,i.wrap=s,yt},deflateInfo:"pako deflate (from Nodeca project)"};const oe=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var le={assign:function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(const e in a)oe(a,e)&&(t[e]=a[e])}}return t},flattenChunks:t=>{let e=0;for(let a=0,i=t.length;a<i;a++)e+=t[a].length;const a=new Uint8Array(e);for(let e=0,i=0,s=t.length;e<s;e++){let s=t[e];a.set(s,i),i+=s.length}return a}};let he=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){he=!1}const de=new Uint8Array(256);for(let t=0;t<256;t++)de[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;de[254]=de[254]=1;var fe={string2buf:t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,a,i,s,r,n=t.length,o=0;for(s=0;s<n;s++)a=t.charCodeAt(s),55296==(64512&a)&&s+1<n&&(i=t.charCodeAt(s+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),s++)),o+=a<128?1:a<2048?2:a<65536?3:4;for(e=new Uint8Array(o),r=0,s=0;r<o;s++)a=t.charCodeAt(s),55296==(64512&a)&&s+1<n&&(i=t.charCodeAt(s+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),s++)),a<128?e[r++]=a:a<2048?(e[r++]=192|a>>>6,e[r++]=128|63&a):a<65536?(e[r++]=224|a>>>12,e[r++]=128|a>>>6&63,e[r++]=128|63&a):(e[r++]=240|a>>>18,e[r++]=128|a>>>12&63,e[r++]=128|a>>>6&63,e[r++]=128|63&a);return e},buf2string:(t,e)=>{const a=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let i,s;const r=new Array(2*a);for(s=0,i=0;i<a;){let e=t[i++];if(e<128){r[s++]=e;continue}let n=de[e];if(n>4)r[s++]=65533,i+=n-1;else{for(e&=2===n?31:3===n?15:7;n>1&&i<a;)e=e<<6|63&t[i++],n--;n>1?r[s++]=65533:e<65536?r[s++]=e:(e-=65536,r[s++]=55296|e>>10&1023,r[s++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&he)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let a="";for(let i=0;i<e;i++)a+=String.fromCharCode(t[i]);return a})(r,s)},utf8border:(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let a=e-1;for(;a>=0&&128==(192&t[a]);)a--;return a<0||0===a?e:a+de[t[a]]>e?a:e}};var _e=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const ce=Object.prototype.toString,{Z_NO_FLUSH:ue,Z_SYNC_FLUSH:we,Z_FULL_FLUSH:ge,Z_FINISH:me,Z_OK:pe,Z_STREAM_END:be,Z_DEFAULT_COMPRESSION:ye,Z_DEFAULT_STRATEGY:ke,Z_DEFLATED:ve}=ht;function xe(t){this.options=le.assign({level:ye,method:ve,chunkSize:16384,windowBits:15,memLevel:8,strategy:ke},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new _e,this.strm.avail_out=0;let a=ne.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==pe)throw new Error(lt[a]);if(e.header&&ne.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?fe.string2buf(e.dictionary):"[object ArrayBuffer]"===ce.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=ne.deflateSetDictionary(this.strm,t),a!==pe)throw new Error(lt[a]);this._dict_set=!0}}function ze(t,e){const a=new xe(e);if(a.push(t,!0),a.err)throw a.msg||lt[a.err];return a.result}xe.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize;let s,r;if(this.ended)return!1;for(r=e===~~e?e:!0===e?me:ue,"string"==typeof t?a.input=fe.string2buf(t):"[object ArrayBuffer]"===ce.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;)if(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),(r===we||r===ge)&&a.avail_out<=6)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else{if(s=ne.deflate(a,r),s===be)return a.next_out>0&&this.onData(a.output.subarray(0,a.next_out)),s=ne.deflateEnd(this.strm),this.onEnd(s),this.ended=!0,s===pe;if(0!==a.avail_out){if(r>0&&a.next_out>0)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else if(0===a.avail_in)break}else this.onData(a.output)}return!0},xe.prototype.onData=function(t){this.chunks.push(t)},xe.prototype.onEnd=function(t){t===pe&&(this.result=le.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var Re={Deflate:xe,deflate:ze,deflateRaw:function(t,e){return(e=e||{}).raw=!0,ze(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,ze(t,e)},constants:ht};const Se=16209;var Ue=function(t,e){let a,i,s,r,n,o,l,h,d,f,_,c,u,w,g,m,p,b,y,k,v,x,z,R;const S=t.state;a=t.next_in,z=t.input,i=a+(t.avail_in-5),s=t.next_out,R=t.output,r=s-(e-t.avail_out),n=s+(t.avail_out-257),o=S.dmax,l=S.wsize,h=S.whave,d=S.wnext,f=S.window,_=S.hold,c=S.bits,u=S.lencode,w=S.distcode,g=(1<<S.lenbits)-1,m=(1<<S.distbits)-1;t:do{c<15&&(_+=z[a++]<<c,c+=8,_+=z[a++]<<c,c+=8),p=u[_&g];e:for(;;){if(b=p>>>24,_>>>=b,c-=b,b=p>>>16&255,0===b)R[s++]=65535&p;else{if(!(16&b)){if(0==(64&b)){p=u[(65535&p)+(_&(1<<b)-1)];continue e}if(32&b){S.mode=16191;break t}t.msg="invalid literal/length code",S.mode=Se;break t}y=65535&p,b&=15,b&&(c<b&&(_+=z[a++]<<c,c+=8),y+=_&(1<<b)-1,_>>>=b,c-=b),c<15&&(_+=z[a++]<<c,c+=8,_+=z[a++]<<c,c+=8),p=w[_&m];a:for(;;){if(b=p>>>24,_>>>=b,c-=b,b=p>>>16&255,!(16&b)){if(0==(64&b)){p=w[(65535&p)+(_&(1<<b)-1)];continue a}t.msg="invalid distance code",S.mode=Se;break t}if(k=65535&p,b&=15,c<b&&(_+=z[a++]<<c,c+=8,c<b&&(_+=z[a++]<<c,c+=8)),k+=_&(1<<b)-1,k>o){t.msg="invalid distance too far back",S.mode=Se;break t}if(_>>>=b,c-=b,b=s-r,k>b){if(b=k-b,b>h&&S.sane){t.msg="invalid distance too far back",S.mode=Se;break t}if(v=0,x=f,0===d){if(v+=l-b,b<y){y-=b;do{R[s++]=f[v++]}while(--b);v=s-k,x=R}}else if(d<b){if(v+=l+d-b,b-=d,b<y){y-=b;do{R[s++]=f[v++]}while(--b);if(v=0,d<y){b=d,y-=b;do{R[s++]=f[v++]}while(--b);v=s-k,x=R}}}else if(v+=d-b,b<y){y-=b;do{R[s++]=f[v++]}while(--b);v=s-k,x=R}for(;y>2;)R[s++]=x[v++],R[s++]=x[v++],R[s++]=x[v++],y-=3;y&&(R[s++]=x[v++],y>1&&(R[s++]=x[v++]))}else{v=s-k;do{R[s++]=R[v++],R[s++]=R[v++],R[s++]=R[v++],y-=3}while(y>2);y&&(R[s++]=R[v++],y>1&&(R[s++]=R[v++]))}break}}break}}while(a<i&&s<n);y=c>>3,a-=y,c-=y<<3,_&=(1<<c)-1,t.next_in=a,t.next_out=s,t.avail_in=a<i?i-a+5:5-(a-i),t.avail_out=s<n?n-s+257:257-(s-n),S.hold=_,S.bits=c};const Ee=15,De=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),Ae=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),Ie=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),Fe=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var Be=(t,e,a,i,s,r,n,o)=>{const l=o.bits;let h,d,f,_,c,u,w=0,g=0,m=0,p=0,b=0,y=0,k=0,v=0,x=0,z=0,R=null;const S=new Uint16Array(16),U=new Uint16Array(16);let E,D,A,I=null;for(w=0;w<=Ee;w++)S[w]=0;for(g=0;g<i;g++)S[e[a+g]]++;for(b=l,p=Ee;p>=1&&0===S[p];p--);if(b>p&&(b=p),0===p)return s[r++]=20971520,s[r++]=20971520,o.bits=1,0;for(m=1;m<p&&0===S[m];m++);for(b<m&&(b=m),v=1,w=1;w<=Ee;w++)if(v<<=1,v-=S[w],v<0)return-1;if(v>0&&(0===t||1!==p))return-1;for(U[1]=0,w=1;w<Ee;w++)U[w+1]=U[w]+S[w];for(g=0;g<i;g++)0!==e[a+g]&&(n[U[e[a+g]]++]=g);if(0===t?(R=I=n,u=20):1===t?(R=De,I=Ae,u=257):(R=Ie,I=Fe,u=0),z=0,g=0,w=m,c=r,y=b,k=0,f=-1,x=1<<b,_=x-1,1===t&&x>852||2===t&&x>592)return 1;for(;;){E=w-k,n[g]+1<u?(D=0,A=n[g]):n[g]>=u?(D=I[n[g]-u],A=R[n[g]-u]):(D=96,A=0),h=1<<w-k,d=1<<y,m=d;do{d-=h,s[c+(z>>k)+d]=E<<24|D<<16|A|0}while(0!==d);for(h=1<<w-1;z&h;)h>>=1;if(0!==h?(z&=h-1,z+=h):z=0,g++,0==--S[w]){if(w===p)break;w=e[a+n[g]]}if(w>b&&(z&_)!==f){for(0===k&&(k=b),c+=m,y=w-k,v=1<<y;y+k<p&&(v-=S[y+k],!(v<=0));)y++,v<<=1;if(x+=1<<y,1===t&&x>852||2===t&&x>592)return 1;f=z&_,s[f]=b<<24|y<<16|c-r|0}}return 0!==z&&(s[c+z]=w-k<<24|64<<16|0),o.bits=b,0};const{Z_FINISH:Oe,Z_BLOCK:Te,Z_TREES:Ce,Z_OK:Ze,Z_STREAM_END:Le,Z_NEED_DICT:Me,Z_STREAM_ERROR:Ne,Z_DATA_ERROR:Pe,Z_MEM_ERROR:He,Z_BUF_ERROR:$e,Z_DEFLATED:je}=ht,Ve=16180,We=16190,Ke=16191,Ye=16192,qe=16194,Ge=16199,Xe=16200,Qe=16206,Je=16209,ta=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function ea(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const aa=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode<Ve||e.mode>16211?1:0},ia=t=>{if(aa(t))return Ne;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=Ve,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,Ze},sa=t=>{if(aa(t))return Ne;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,ia(t)},ra=(t,e)=>{let a;if(aa(t))return Ne;const i=t.state;return e<0?(a=0,e=-e):(a=5+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?Ne:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=a,i.wbits=e,sa(t))},na=(t,e)=>{if(!t)return Ne;const a=new ea;t.state=a,a.strm=t,a.window=null,a.mode=Ve;const i=ra(t,e);return i!==Ze&&(t.state=null),i};let oa,la,ha=!0;const da=t=>{if(ha){oa=new Int32Array(512),la=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(Be(1,t.lens,0,288,oa,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;Be(2,t.lens,0,32,la,0,t.work,{bits:5}),ha=!1}t.lencode=oa,t.lenbits=9,t.distcode=la,t.distbits=5},fa=(t,e,a,i)=>{let s;const r=t.state;return null===r.window&&(r.wsize=1<<r.wbits,r.wnext=0,r.whave=0,r.window=new Uint8Array(r.wsize)),i>=r.wsize?(r.window.set(e.subarray(a-r.wsize,a),0),r.wnext=0,r.whave=r.wsize):(s=r.wsize-r.wnext,s>i&&(s=i),r.window.set(e.subarray(a-i,a-i+s),r.wnext),(i-=s)?(r.window.set(e.subarray(a-i,a),0),r.wnext=i,r.whave=r.wsize):(r.wnext+=s,r.wnext===r.wsize&&(r.wnext=0),r.whave<r.wsize&&(r.whave+=s))),0};var _a={inflateReset:sa,inflateReset2:ra,inflateResetKeep:ia,inflateInit:t=>na(t,15),inflateInit2:na,inflate:(t,e)=>{let a,i,s,r,n,o,l,h,d,f,_,c,u,w,g,m,p,b,y,k,v,x,z=0;const R=new Uint8Array(4);let S,U;const E=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(aa(t)||!t.output||!t.input&&0!==t.avail_in)return Ne;a=t.state,a.mode===Ke&&(a.mode=Ye),n=t.next_out,s=t.output,l=t.avail_out,r=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,f=o,_=l,x=Ze;t:for(;;)switch(a.mode){case Ve:if(0===a.wrap){a.mode=Ye;break}for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(2&a.wrap&&35615===h){0===a.wbits&&(a.wbits=15),a.check=0,R[0]=255&h,R[1]=h>>>8&255,a.check=ot(a.check,R,2,0),h=0,d=0,a.mode=16181;break}if(a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&h)<<8)+(h>>8))%31){t.msg="incorrect header check",a.mode=Je;break}if((15&h)!==je){t.msg="unknown compression method",a.mode=Je;break}if(h>>>=4,d-=4,v=8+(15&h),0===a.wbits&&(a.wbits=v),v>15||v>a.wbits){t.msg="invalid window size",a.mode=Je;break}a.dmax=1<<a.wbits,a.flags=0,t.adler=a.check=1,a.mode=512&h?16189:Ke,h=0,d=0;break;case 16181:for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(a.flags=h,(255&a.flags)!==je){t.msg="unknown compression method",a.mode=Je;break}if(57344&a.flags){t.msg="unknown header flags set",a.mode=Je;break}a.head&&(a.head.text=h>>8&1),512&a.flags&&4&a.wrap&&(R[0]=255&h,R[1]=h>>>8&255,a.check=ot(a.check,R,2,0)),h=0,d=0,a.mode=16182;case 16182:for(;d<32;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.head&&(a.head.time=h),512&a.flags&&4&a.wrap&&(R[0]=255&h,R[1]=h>>>8&255,R[2]=h>>>16&255,R[3]=h>>>24&255,a.check=ot(a.check,R,4,0)),h=0,d=0,a.mode=16183;case 16183:for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.head&&(a.head.xflags=255&h,a.head.os=h>>8),512&a.flags&&4&a.wrap&&(R[0]=255&h,R[1]=h>>>8&255,a.check=ot(a.check,R,2,0)),h=0,d=0,a.mode=16184;case 16184:if(1024&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.length=h,a.head&&(a.head.extra_len=h),512&a.flags&&4&a.wrap&&(R[0]=255&h,R[1]=h>>>8&255,a.check=ot(a.check,R,2,0)),h=0,d=0}else a.head&&(a.head.extra=null);a.mode=16185;case 16185:if(1024&a.flags&&(c=a.length,c>o&&(c=o),c&&(a.head&&(v=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(i.subarray(r,r+c),v)),512&a.flags&&4&a.wrap&&(a.check=ot(a.check,i,c,r)),o-=c,r+=c,a.length-=c),a.length))break t;a.length=0,a.mode=16186;case 16186:if(2048&a.flags){if(0===o)break t;c=0;do{v=i[r+c++],a.head&&v&&a.length<65536&&(a.head.name+=String.fromCharCode(v))}while(v&&c<o);if(512&a.flags&&4&a.wrap&&(a.check=ot(a.check,i,c,r)),o-=c,r+=c,v)break t}else a.head&&(a.head.name=null);a.length=0,a.mode=16187;case 16187:if(4096&a.flags){if(0===o)break t;c=0;do{v=i[r+c++],a.head&&v&&a.length<65536&&(a.head.comment+=String.fromCharCode(v))}while(v&&c<o);if(512&a.flags&&4&a.wrap&&(a.check=ot(a.check,i,c,r)),o-=c,r+=c,v)break t}else a.head&&(a.head.comment=null);a.mode=16188;case 16188:if(512&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(4&a.wrap&&h!==(65535&a.check)){t.msg="header crc mismatch",a.mode=Je;break}h=0,d=0}a.head&&(a.head.hcrc=a.flags>>9&1,a.head.done=!0),t.adler=a.check=0,a.mode=Ke;break;case 16189:for(;d<32;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}t.adler=a.check=ta(h),h=0,d=0,a.mode=We;case We:if(0===a.havedict)return t.next_out=n,t.avail_out=l,t.next_in=r,t.avail_in=o,a.hold=h,a.bits=d,Me;t.adler=a.check=1,a.mode=Ke;case Ke:if(e===Te||e===Ce)break t;case Ye:if(a.last){h>>>=7&d,d-=7&d,a.mode=Qe;break}for(;d<3;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}switch(a.last=1&h,h>>>=1,d-=1,3&h){case 0:a.mode=16193;break;case 1:if(da(a),a.mode=Ge,e===Ce){h>>>=2,d-=2;break t}break;case 2:a.mode=16196;break;case 3:t.msg="invalid block type",a.mode=Je}h>>>=2,d-=2;break;case 16193:for(h>>>=7&d,d-=7&d;d<32;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if((65535&h)!=(h>>>16^65535)){t.msg="invalid stored block lengths",a.mode=Je;break}if(a.length=65535&h,h=0,d=0,a.mode=qe,e===Ce)break t;case qe:a.mode=16195;case 16195:if(c=a.length,c){if(c>o&&(c=o),c>l&&(c=l),0===c)break t;s.set(i.subarray(r,r+c),n),o-=c,r+=c,l-=c,n+=c,a.length-=c;break}a.mode=Ke;break;case 16196:for(;d<14;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(a.nlen=257+(31&h),h>>>=5,d-=5,a.ndist=1+(31&h),h>>>=5,d-=5,a.ncode=4+(15&h),h>>>=4,d-=4,a.nlen>286||a.ndist>30){t.msg="too many length or distance symbols",a.mode=Je;break}a.have=0,a.mode=16197;case 16197:for(;a.have<a.ncode;){for(;d<3;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.lens[E[a.have++]]=7&h,h>>>=3,d-=3}for(;a.have<19;)a.lens[E[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,S={bits:a.lenbits},x=Be(0,a.lens,0,19,a.lencode,0,a.work,S),a.lenbits=S.bits,x){t.msg="invalid code lengths set",a.mode=Je;break}a.have=0,a.mode=16198;case 16198:for(;a.have<a.nlen+a.ndist;){for(;z=a.lencode[h&(1<<a.lenbits)-1],g=z>>>24,m=z>>>16&255,p=65535&z,!(g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(p<16)h>>>=g,d-=g,a.lens[a.have++]=p;else{if(16===p){for(U=g+2;d<U;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(h>>>=g,d-=g,0===a.have){t.msg="invalid bit length repeat",a.mode=Je;break}v=a.lens[a.have-1],c=3+(3&h),h>>>=2,d-=2}else if(17===p){for(U=g+3;d<U;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}h>>>=g,d-=g,v=0,c=3+(7&h),h>>>=3,d-=3}else{for(U=g+7;d<U;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}h>>>=g,d-=g,v=0,c=11+(127&h),h>>>=7,d-=7}if(a.have+c>a.nlen+a.ndist){t.msg="invalid bit length repeat",a.mode=Je;break}for(;c--;)a.lens[a.have++]=v}}if(a.mode===Je)break;if(0===a.lens[256]){t.msg="invalid code -- missing end-of-block",a.mode=Je;break}if(a.lenbits=9,S={bits:a.lenbits},x=Be(1,a.lens,0,a.nlen,a.lencode,0,a.work,S),a.lenbits=S.bits,x){t.msg="invalid literal/lengths set",a.mode=Je;break}if(a.distbits=6,a.distcode=a.distdyn,S={bits:a.distbits},x=Be(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,S),a.distbits=S.bits,x){t.msg="invalid distances set",a.mode=Je;break}if(a.mode=Ge,e===Ce)break t;case Ge:a.mode=Xe;case Xe:if(o>=6&&l>=258){t.next_out=n,t.avail_out=l,t.next_in=r,t.avail_in=o,a.hold=h,a.bits=d,Ue(t,_),n=t.next_out,s=t.output,l=t.avail_out,r=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,a.mode===Ke&&(a.back=-1);break}for(a.back=0;z=a.lencode[h&(1<<a.lenbits)-1],g=z>>>24,m=z>>>16&255,p=65535&z,!(g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(m&&0==(240&m)){for(b=g,y=m,k=p;z=a.lencode[k+((h&(1<<b+y)-1)>>b)],g=z>>>24,m=z>>>16&255,p=65535&z,!(b+g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}h>>>=b,d-=b,a.back+=b}if(h>>>=g,d-=g,a.back+=g,a.length=p,0===m){a.mode=16205;break}if(32&m){a.back=-1,a.mode=Ke;break}if(64&m){t.msg="invalid literal/length code",a.mode=Je;break}a.extra=15&m,a.mode=16201;case 16201:if(a.extra){for(U=a.extra;d<U;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.length+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=16202;case 16202:for(;z=a.distcode[h&(1<<a.distbits)-1],g=z>>>24,m=z>>>16&255,p=65535&z,!(g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(0==(240&m)){for(b=g,y=m,k=p;z=a.distcode[k+((h&(1<<b+y)-1)>>b)],g=z>>>24,m=z>>>16&255,p=65535&z,!(b+g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}h>>>=b,d-=b,a.back+=b}if(h>>>=g,d-=g,a.back+=g,64&m){t.msg="invalid distance code",a.mode=Je;break}a.offset=p,a.extra=15&m,a.mode=16203;case 16203:if(a.extra){for(U=a.extra;d<U;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.offset+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){t.msg="invalid distance too far back",a.mode=Je;break}a.mode=16204;case 16204:if(0===l)break t;if(c=_-l,a.offset>c){if(c=a.offset-c,c>a.whave&&a.sane){t.msg="invalid distance too far back",a.mode=Je;break}c>a.wnext?(c-=a.wnext,u=a.wsize-c):u=a.wnext-c,c>a.length&&(c=a.length),w=a.window}else w=s,u=n-a.offset,c=a.length;c>l&&(c=l),l-=c,a.length-=c;do{s[n++]=w[u++]}while(--c);0===a.length&&(a.mode=Xe);break;case 16205:if(0===l)break t;s[n++]=a.length,l--,a.mode=Xe;break;case Qe:if(a.wrap){for(;d<32;){if(0===o)break t;o--,h|=i[r++]<<d,d+=8}if(_-=l,t.total_out+=_,a.total+=_,4&a.wrap&&_&&(t.adler=a.check=a.flags?ot(a.check,s,_,n-_):rt(a.check,s,_,n-_)),_=l,4&a.wrap&&(a.flags?h:ta(h))!==a.check){t.msg="incorrect data check",a.mode=Je;break}h=0,d=0}a.mode=16207;case 16207:if(a.wrap&&a.flags){for(;d<32;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(4&a.wrap&&h!==(4294967295&a.total)){t.msg="incorrect length check",a.mode=Je;break}h=0,d=0}a.mode=16208;case 16208:x=Le;break t;case Je:x=Pe;break t;case 16210:return He;default:return Ne}return t.next_out=n,t.avail_out=l,t.next_in=r,t.avail_in=o,a.hold=h,a.bits=d,(a.wsize||_!==t.avail_out&&a.mode<Je&&(a.mode<Qe||e!==Oe))&&fa(t,t.output,t.next_out,_-t.avail_out),f-=t.avail_in,_-=t.avail_out,t.total_in+=f,t.total_out+=_,a.total+=_,4&a.wrap&&_&&(t.adler=a.check=a.flags?ot(a.check,s,_,t.next_out-_):rt(a.check,s,_,t.next_out-_)),t.data_type=a.bits+(a.last?64:0)+(a.mode===Ke?128:0)+(a.mode===Ge||a.mode===qe?256:0),(0===f&&0===_||e===Oe)&&x===Ze&&(x=$e),x},inflateEnd:t=>{if(aa(t))return Ne;let e=t.state;return e.window&&(e.window=null),t.state=null,Ze},inflateGetHeader:(t,e)=>{if(aa(t))return Ne;const a=t.state;return 0==(2&a.wrap)?Ne:(a.head=e,e.done=!1,Ze)},inflateSetDictionary:(t,e)=>{const a=e.length;let i,s,r;return aa(t)?Ne:(i=t.state,0!==i.wrap&&i.mode!==We?Ne:i.mode===We&&(s=1,s=rt(s,e,a,0),s!==i.check)?Pe:(r=fa(t,e,a,a),r?(i.mode=16210,He):(i.havedict=1,Ze)))},inflateInfo:"pako inflate (from Nodeca project)"};var ca=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const ua=Object.prototype.toString,{Z_NO_FLUSH:wa,Z_FINISH:ga,Z_OK:ma,Z_STREAM_END:pa,Z_NEED_DICT:ba,Z_STREAM_ERROR:ya,Z_DATA_ERROR:ka,Z_MEM_ERROR:va}=ht;function xa(t){this.options=le.assign({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new _e,this.strm.avail_out=0;let a=_a.inflateInit2(this.strm,e.windowBits);if(a!==ma)throw new Error(lt[a]);if(this.header=new ca,_a.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=fe.string2buf(e.dictionary):"[object ArrayBuffer]"===ua.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(a=_a.inflateSetDictionary(this.strm,e.dictionary),a!==ma)))throw new Error(lt[a])}xa.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize,s=this.options.dictionary;let r,n,o;if(this.ended)return!1;for(n=e===~~e?e:!0===e?ga:wa,"[object ArrayBuffer]"===ua.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;){for(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),r=_a.inflate(a,n),r===ba&&s&&(r=_a.inflateSetDictionary(a,s),r===ma?r=_a.inflate(a,n):r===ka&&(r=ba));a.avail_in>0&&r===pa&&a.state.wrap>0&&0!==t[a.next_in];)_a.inflateReset(a),r=_a.inflate(a,n);switch(r){case ya:case ka:case ba:case va:return this.onEnd(r),this.ended=!0,!1}if(o=a.avail_out,a.next_out&&(0===a.avail_out||r===pa))if("string"===this.options.to){let t=fe.utf8border(a.output,a.next_out),e=a.next_out-t,s=fe.buf2string(a.output,t);a.next_out=e,a.avail_out=i-e,e&&a.output.set(a.output.subarray(t,t+e),0),this.onData(s)}else this.onData(a.output.length===a.next_out?a.output:a.output.subarray(0,a.next_out));if(r!==ma||0!==o){if(r===pa)return r=_a.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,!0;if(0===a.avail_in)break}}return!0},xa.prototype.onData=function(t){this.chunks.push(t)},xa.prototype.onEnd=function(t){t===ma&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=le.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};const{Deflate:za,deflate:Ra,deflateRaw:Sa,gzip:Ua}=Re;var Ea=Ra;const Da={b:{u:DataView.prototype.getInt8,p:DataView.prototype.setInt8,bytes:1},B:{u:DataView.prototype.getUint8,p:DataView.prototype.setUint8,bytes:1},h:{u:DataView.prototype.getInt16,p:DataView.prototype.setInt16,bytes:2},H:{u:DataView.prototype.getUint16,p:DataView.prototype.setUint16,bytes:2},i:{u:DataView.prototype.getInt32,p:DataView.prototype.setInt32,bytes:4},I:{u:DataView.prototype.getUint32,p:DataView.prototype.setUint32,bytes:4},q:{u:DataView.prototype.getInt64,p:DataView.prototype.setInt64,bytes:8},Q:{u:DataView.prototype.getUint64,p:DataView.prototype.setUint64,bytes:8}},Aa=(t,...e)=>{let a=0;if(t.replace(/[<>]/,"").length!=e.length)throw"Pack format to Argument count mismatch";let i=[],s=!0;for(let i=0;i<t.length;i++)"<"==t[i]?s=!0:">"==t[i]?s=!1:(r(t[i],e[a]),a++);function r(t,e){if(!(t in Da))throw"Unhandled character '"+t+"' in pack format";let a=Da[t].bytes,r=new DataView(new ArrayBuffer(a));Da[t].p.bind(r)(0,e,s);for(let t=0;t<a;t++)i.push(r.getUint8(t))}return i},Ia=(t,e)=>{let a=0,i=[],s=!0;for(let e of t)"<"==e?s=!0:">"==e?s=!1:r(e);function r(t){if(!(t in Da))throw"Unhandled character '"+t+"' in unpack format";let r=Da[t].bytes,n=new DataView(new ArrayBuffer(r));for(let t=0;t<r;t++)n.setUint8(t,255&e[a+t]);let o=Da[t].u.bind(n);i.push(o(0,s)),a+=r}return i};class Fa extends EventTarget{constructor(t,e,a){super(),this.port=t,this.logger=e,this._parent=a,this.chipName=null,this._efuses=new Array(4).fill(0),this._flashsize=4194304,this.debug=!1,this.IS_STUB=!1,this.connected=!0,this.flashSize=null,this.state_DTR=!1}get _inputBuffer(){return this._parent?this._parent._inputBuffer:this.__inputBuffer}async initialize(){await this.hardReset(!0),this._parent||(this.__inputBuffer=[],this.readLoop()),await this.sync();let t=await this.readRegister(1073745920),e=u[t>>>0];if(void 0===e)throw new Error(`Unknown Chip: Hex: ${a(t>>>0,8).toLowerCase()} Number: ${t}`);this.chipName=e.name,this.chipFamily=e.family;let i=p(this.getChipFamily()).macFuse;for(let t=0;t<4;t++)this._efuses[t]=await this.readRegister(i+4*t);this.logger.log(`Chip type ${this.chipName}`)}async readLoop(){this.debug&&this.logger.debug("Starting read loop"),this._reader=this.port.readable.getReader();try{for(;;){const{value:t,done:e}=await this._reader.read();if(e){this._reader.releaseLock();break}t&&0!==t.length&&this._inputBuffer.push(...Array.from(t))}}catch(t){console.error("Read loop got disconnected")}this.connected=!1,this.dispatchEvent(new Event("disconnect")),this.logger.debug("Finished read loop")}sleep(t=100){return new Promise((e=>setTimeout(e,t)))}async setRTS(t){await this.port.setSignals({requestToSend:t}),await this.setDTR(this.state_DTR)}async setDTR(t){this.state_DTR=t,await this.port.setSignals({dataTerminalReady:t})}async hardReset(t=!1){this.logger.log("Try hard reset."),t?4097===this.port.getInfo().usbProductId?(await this.setRTS(!1),await this.setDTR(!1),await this.sleep(100),await this.setDTR(!0),await this.setRTS(!1),await this.sleep(100),await this.setRTS(!0),await this.setDTR(!1),await this.setRTS(!0),await this.sleep(100),await this.setRTS(!1),await this.setDTR(!1)):(await this.setDTR(!1),await this.setRTS(!0),await this.sleep(100),await this.setDTR(!0),await this.setRTS(!1),await this.sleep(50),await this.setDTR(!1)):(await this.setRTS(!0),await this.sleep(100),await this.setRTS(!1)),await new Promise((t=>setTimeout(t,1e3)))}macAddr(){let t,e=new Array(6).fill(0),a=this._efuses[0],i=this._efuses[1],s=this._efuses[2],r=this._efuses[3];if(this.chipFamily==o){if(0!=r)t=[r>>16&255,r>>8&255,255&r];else if(0==(i>>16&255))t=[24,254,52];else{if(1!=(i>>16&255))throw new Error("Couldnt determine OUI");t=[172,208,116]}e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=i>>8&255,e[4]=255&i,e[5]=a>>24&255}else if(this.chipFamily==l)e[0]=s>>8&255,e[1]=255&s,e[2]=i>>24&255,e[3]=i>>16&255,e[4]=i>>8&255,e[5]=255&i;else{if(this.chipFamily!=h&&this.chipFamily!=d&&this.chipFamily!=f)throw new Error("Unknown chip family");e[0]=i>>8&255,e[1]=255&i,e[2]=a>>24&255,e[3]=a>>16&255,e[4]=a>>8&255,e[5]=255&a}return e}async readRegister(t){this.debug&&this.logger.debug("Reading from Register "+a(t,8));let e=Aa("<I",t);await this.sendCommand(10,e);let[i,s]=await this.getResponse(10);return i}async checkCommand(t,e,i=0,s=3e3){s=Math.min(s,12e5),await this.sendCommand(t,e,i);let[r,n]=await this.getResponse(t,s);if(null===n)throw new Error("Didn't get enough status bytes");let _=0;if(this.IS_STUB||this.chipFamily==o?_=2:[l,h,d,f].includes(this.chipFamily)?_=4:[2,4].includes(n.length)&&(_=n.length),n.length<_)throw new Error("Didn't get enough status bytes");let c=n.slice(-_,n.length);if(n=n.slice(0,-_),this.debug&&(this.logger.debug("status",c),this.logger.debug("value",r),this.logger.debug("data",n)),1==c[0])throw 5==c[1]?new Error("Invalid (unsupported) command "+a(t)):new Error("Command failure error code "+a(c[1]));return[r,n]}async sendCommand(t,e,a=0){let i=(t=>{let e=[192];for(let a of t)219==a?e=e.concat([219,221]):192==a?e=e.concat([219,220]):e.push(a);return e.push(192),e})([...Aa("<BBHI",0,t,e.length,a),...e]);this.debug&&this.logger.debug(`Writing ${i.length} byte${1==i.length?"":"s"}:`,i),await this.writeToStream(i)}async readPacket(t){let s=null,r=!1,n=[];for(;;){let o=Date.now();for(n=[];Date.now()-o<t;){if(this._inputBuffer.length>0){n.push(this._inputBuffer.shift());break}await i(10)}if(0==n.length){throw new b("Timed out waiting for packet "+(null===s?"header":"content"))}this.debug&&this.logger.debug("Read "+n.length+" bytes: "+e(n));for(let t of n)if(null===s){if(192!=t)throw this.debug&&(this.logger.debug("Read invalid data: "+e(n)),this.logger.debug("Remaining data in serial buffer: "+e(this._inputBuffer))),new b("Invalid head of packet ("+a(t)+")");s=[]}else if(r)if(r=!1,220==t)s.push(192);else{if(221!=t)throw this.debug&&(this.logger.debug("Read invalid data: "+e(n)),this.logger.debug("Remaining data in serial buffer: "+e(this._inputBuffer))),new b("Invalid SLIP escape (0xdb, "+a(t)+")");s.push(219)}else if(219==t)r=!0;else{if(192==t)return this.debug&&this.logger.debug("Received full packet: "+e(s)),s;s.push(t)}}throw new b("Invalid state")}async getResponse(t,e=3e3){for(let i=0;i<100;i++){const i=await this.readPacket(e);if(i.length<8)continue;const[s,r,n,o]=Ia("<BBHI",i.slice(0,8));if(1!=s)continue;const l=i.slice(8);if(null==t||r==t)return[o,l];if(0!=l[0]&&5==l[1])throw this._inputBuffer.length=0,new Error(`Invalid (unsupported) command ${a(t)}`)}throw"Response doesn't match request"}checksum(t,e=239){for(let a of t)e^=a;return e}async setBaudrate(t){if(this.chipFamily==o)throw new Error("Changing baud rate is not supported on the ESP8266");this.logger.log("Attempting to change baud rate to "+t+"...");try{let e=Aa("<II",t,this.IS_STUB?r:0);await this.checkCommand(15,e)}catch(e){throw console.error(e),new Error(`Unable to change the baud rate to ${t}: No response from set baud rate command.`)}this._parent?await this._parent.reconfigurePort(t):await this.reconfigurePort(t)}async reconfigurePort(t){var e;try{await(null===(e=this._reader)||void 0===e?void 0:e.cancel()),await this.port.close(),await this.port.open({baudRate:t}),this.readLoop(),this.logger.log(`Changed baud rate to ${t}`)}catch(e){throw console.error(e),new Error(`Unable to change the baud rate to ${t}: ${e}`)}}async sync(){for(let t=0;t<5;t++){if(this._inputBuffer.length=0,await this._sync())return await i(100),!0;await i(100)}throw new Error("Couldn't sync to ESP. Try resetting.")}async _sync(){await this.sendCommand(8,n);for(let t=0;t<8;t++)try{let[t,e]=await this.getResponse(8,100);if(e.length>1&&0==e[0]&&0==e[1])return!0}catch(t){}return!1}getFlashWriteSize(){return this.IS_STUB?16384:1024}async flashData(t,e,i=0,s=!1){if(t.byteLength>=8){var r=Array.from(new Uint8Array(t,0,4));let e=r[0],i=r[2],s=r[3];this.logger.log(`Image header, Magic=${a(e)}, FlashMode=${a(i)}, FlashSizeFreq=${a(s)}`)}let n,o=t.byteLength,l=0,h=w;s?(n=Ea(new Uint8Array(t),{level:9}).buffer,l=n.byteLength,this.logger.log(`Writing data with filesize: ${o}. Compressed Size: ${l}`),h=await this.flashDeflBegin(o,l,i)):(this.logger.log(`Writing data with filesize: ${o}`),n=t,await this.flashBegin(o,i));let d=[],f=0,_=0,c=0,u=Date.now(),g=this.getFlashWriteSize(),m=s?l:o;for(;m-c>0;)this.debug&&this.logger.log(`Writing at ${a(i+f*g,8)} `),m-c>=g?d=Array.from(new Uint8Array(n,c,g)):(d=Array.from(new Uint8Array(n,c,m-c)),s||(d=d.concat(new Array(g-d.length).fill(255)))),s?await this.flashDeflBlock(d,f,h):await this.flashBlock(d,f),f+=1,_+=s?Math.round(d.length*o/l):d.length,c+=g,e(Math.min(_,o),o);this.logger.log("Took "+(Date.now()-u)+"ms to write "+m+" bytes"),this.IS_STUB&&(await this.flashBegin(0,0),s?await this.flashDeflFinish():await this.flashFinish())}async flashBlock(t,e,a=3e3){await this.checkCommand(3,Aa("<IIII",t.length,e,0,0).concat(t),this.checksum(t),a)}async flashDeflBlock(t,e,a=3e3){await this.checkCommand(17,Aa("<IIII",t.length,e,0,0).concat(t),this.checksum(t),a)}async flashBegin(t=0,e=0,i=!1){let s,r,n=this.getFlashWriteSize();!this.IS_STUB&&[l,h,d,f].includes(this.chipFamily)&&await this.checkCommand(13,new Array(8).fill(0));let _,c=Math.floor((t+n-1)/n);s=this.chipFamily==o?this.getEraseSize(e,t):t,_=this.IS_STUB?w:m(3e4,t);let u=Date.now();return r=Aa("<IIII",s,c,n,e),this.chipFamily!=l&&this.chipFamily!=h&&this.chipFamily!=d&&this.chipFamily!=f||(r=r.concat(Aa("<I",i?1:0))),this.logger.log("Erase size "+s+", blocks "+c+", block size "+a(n,4)+", offset "+a(e,4)+", encrypted "+(i?"yes":"no")),await this.checkCommand(2,r,0,_),0==t||this.IS_STUB||this.logger.log("Took "+(Date.now()-u)+"ms to erase "+c+" bytes"),c}async flashDeflBegin(t=0,e=0,a=0,i=!1){let s,r=this.getFlashWriteSize(),n=Math.floor((e+r-1)/r),o=Math.floor((t+r-1)/r),l=0,h=0;return this.IS_STUB?(l=t,h=m(3e4,l)):(l=o*r,h=w),s=Aa("<IIII",l,n,r,a),await this.checkCommand(16,s,0,h),h}async flashFinish(){let t=Aa("<I",1);await this.checkCommand(4,t)}async flashDeflFinish(){let t=Aa("<I",1);await this.checkCommand(18,t)}getBootloaderOffset(){return p(this.getChipFamily()).flashOffs}async flashId(){return await this.runSpiFlashCommand(159,[],24)}getChipFamily(){return this._parent?this._parent.chipFamily:this.chipFamily}async writeRegister(t,e,a=4294967295,i=0,s=0){let r=Aa("<IIII",t,e,a,i);s>0&&r.concat(Aa("<IIII",p(this.getChipFamily()).uartDateReg,0,0,s)),await this.checkCommand(9,r)}async setDataLengths(t,e,a){if(-1!=t.mosiDlenOffs){let i=t.regBase+t.mosiDlenOffs,s=t.regBase+t.misoDlenOffs;e>0&&await this.writeRegister(i,e-1),a>0&&await this.writeRegister(s,a-1)}else{let i=t.regBase+t.usr1Offs,s=(0==a?0:a-1)<<8|(0==e?0:e-1)<<17;await this.writeRegister(i,s)}}async waitDone(t,e){for(let a=0;a<10;a++){if(0==(await this.readRegister(t)&e))return}throw Error("SPI command did not complete in time")}async runSpiFlashCommand(t,e,i=0){let s=p(this.getChipFamily()),r=s.regBase,n=r,o=r+s.usrOffs,l=r+s.usr2Offs,h=r+s.w0Offs,d=1<<18;if(i>32)throw new Error("Reading more than 32 bits back from a SPI flash operation is unsupported");if(e.length>64)throw new Error("Writing more than 64 bytes of data with one SPI command is unsupported");let f=8*e.length,_=await this.readRegister(o),c=await this.readRegister(l),u=1<<31;if(i>0&&(u|=268435456),f>0&&(u|=134217728),await this.setDataLengths(s,f,i),await this.writeRegister(o,u),await this.writeRegister(l,7<<28|t),0==f)await this.writeRegister(h,0);else{e.concat(new Array(e.length%4).fill(0));let t=Ia("I".repeat(Math.floor(e.length/4)),e),i=h;this.logger.debug(`Words Length: ${t.length}`);for(const e of t)this.logger.debug(`Writing word ${a(e)} to register offset ${a(i)}`),await this.writeRegister(i,e),i+=4}await this.writeRegister(n,d),await this.waitDone(n,d);let w=await this.readRegister(h);return await this.writeRegister(o,_),await this.writeRegister(l,c),w}async detectFlashSize(){this.logger.log("Detecting Flash Size");let t=await this.flashId(),e=255&t,i=t>>16&255;this.logger.log(`FlashId: ${a(t)}`),this.logger.log(`Flash Manufacturer: ${e.toString(16)}`),this.logger.log(`Flash Device: ${(t>>8&255).toString(16)}${i.toString(16)}`),this.flashSize=s[i],this.logger.log(`Auto-detected Flash size: ${this.flashSize}`)}getEraseSize(t,e){let a=4096,i=Math.floor((e+a-1)/a),s=16-Math.floor(t/a)%16;return i<s&&(s=i),i<2*s?Math.floor((i+1)/2*a):(i-s)*a}async memBegin(t,e,a,i){return await this.checkCommand(5,Aa("<IIII",t,e,a,i))}async memBlock(t,e){return await this.checkCommand(7,Aa("<IIII",t.length,e,0,0).concat(t),this.checksum(t))}async memFinish(t=0){let e=this.IS_STUB?w:500,a=Aa("<II",0==t?1:0,t);return await this.checkCommand(6,a,0,e)}async runStub(){const t=await y(this.chipFamily);let e,a=2048;this.logger.log("Uploading stub...");for(let e of["text","data"])if(Object.keys(t).includes(e)){let i=t[e+"_start"],s=t[e].length,r=Math.floor((s+a-1)/a);await this.memBegin(s,r,a,i);for(let i of Array(r).keys()){let r=i*a,n=r+a;n>s&&(n=s),await this.memBlock(t[e].slice(r,n),i)}}this.logger.log("Running stub..."),await this.memFinish(t.entry);const i=await this.readPacket(500);if(e=String.fromCharCode(...i),"OHAI"!=e)throw new Error("Failed to start stub. Unexpected response: "+e);this.logger.log("Stub is now running...");const s=new Ba(this.port,this.logger,this);return await s.detectFlashSize(),s}async writeToStream(t){const e=this.port.writable.getWriter();await e.write(new Uint8Array(t));try{e.releaseLock()}catch(t){console.error("Ignoring release lock error",t)}}async disconnect(){this._parent?await this._parent.disconnect():(await this.port.writable.getWriter().close(),await new Promise((t=>{this._reader||t(void 0),this.addEventListener("disconnect",t,{once:!0}),this._reader.cancel()})),this.connected=!1)}}class Ba extends Fa{constructor(){super(...arguments),this.IS_STUB=!0}async memBegin(t,e,i,s){let r=await y(this.chipFamily),n=s,o=s+t;console.log(n,o),console.log(r.data_start,r.data.length,r.text_start,r.text.length);for(let[t,e]of[[r.data_start,r.data_start+r.data.length],[r.text_start,r.text_start+r.text.length]])if(n<e&&o>t)throw new Error("Software loader is resident at "+a(t,8)+"-"+a(e,8)+". Can't load binary at overlapping address range "+a(n,8)+"-"+a(o,8)+". Try changing the binary loading address.")}async eraseFlash(){await this.checkCommand(208,[],0,g)}}const Oa=async t=>{const e=await navigator.serial.requestPort();return t.log("Connecting..."),await e.open({baudRate:r}),t.log("Connected successfully."),new Fa(e,t)};export{l as CHIP_FAMILY_ESP32,f as CHIP_FAMILY_ESP32C3,_ as CHIP_FAMILY_ESP32C6,c as CHIP_FAMILY_ESP32H2,h as CHIP_FAMILY_ESP32S2,d as CHIP_FAMILY_ESP32S3,o as CHIP_FAMILY_ESP8266,Fa as ESPLoader,Oa as connect};
|
|
1
|
+
const t=t=>{let e=[];for(let a=0;a<t.length;a++){let i=t.charCodeAt(a);i<=255&&e.push(i)}return e},e=t=>"["+t.map((t=>a(t))).join(", ")+"]",a=(t,e=2)=>{let a=t.toString(16).toUpperCase();return a.startsWith("-")?"-0x"+a.substring(1).padStart(e,"0"):"0x"+a.padStart(e,"0")},i=t=>new Promise((e=>setTimeout(e,t))),s={18:"256KB",19:"512KB",20:"1MB",21:"2MB",22:"4MB",23:"8MB",24:"16MB",25:"32MB",26:"64MB"},r=115200,n=t(" UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU"),o=33382,l=50,h=12882,d=12883,f=12994,_=12995,c=12998,u=12914,w={4293968129:{name:"ESP8266",family:o},15736195:{name:"ESP32",family:l},1990:{name:"ESP32-S2",family:h},9:{name:"ESP32-S3",family:d},3942662454:{name:"ESP32-S3(beta2)",family:d},1867591791:{name:"ESP32-C2",family:f},2084675695:{name:"ESP32-C2",family:f},1763790959:{name:"ESP32-C3",family:_},456216687:{name:"ESP32-C3",family:_},3619110528:{name:"ESP32-H2",family:u},228687983:{name:"ESP32-C6(beta)",family:c},752910447:{name:"ESP32-C6",family:c}},g=3e3,m=6e5,p=(t,e)=>{let a=Math.floor(t*(e/486));return a<g?g:a},b=t=>{switch(t){case l:return{regBase:1072963584,baseFuse:1073061888,macFuse:1073061888,usrOffs:28,usr1Offs:32,usr2Offs:36,mosiDlenOffs:40,misoDlenOffs:44,w0Offs:128,uartDateReg:1610612856,flashOffs:4096};case h:return{regBase:1061167104,baseFuse:1061265408,macFuse:1061265476,usrOffs:24,usr1Offs:28,usr2Offs:32,mosiDlenOffs:36,misoDlenOffs:40,w0Offs:88,uartDateReg:1610612856,flashOffs:4096};case d:return{regBase:1610620928,usrOffs:24,baseFuse:1610641408,macFuse:1610641476,usr1Offs:28,usr2Offs:32,mosiDlenOffs:36,misoDlenOffs:40,w0Offs:88,uartDateReg:1610612864,flashOffs:0};case o:return{regBase:1610613248,usrOffs:28,baseFuse:1072693328,macFuse:1072693328,usr1Offs:32,usr2Offs:36,mosiDlenOffs:-1,misoDlenOffs:-1,w0Offs:64,uartDateReg:1610612856,flashOffs:0};case f:case _:return{regBase:1610620928,baseFuse:1610647552,macFuse:1610647620,usrOffs:24,usr1Offs:28,usr2Offs:32,mosiDlenOffs:36,misoDlenOffs:40,w0Offs:88,uartDateReg:1610612860,flashOffs:0};case c:return{regBase:1610625024,baseFuse:1611335680,macFuse:1611335748,usrOffs:24,usr1Offs:28,usr2Offs:32,mosiDlenOffs:36,misoDlenOffs:40,w0Offs:88,uartDateReg:1610612860,flashOffs:0};case u:return{regBase:1610620928,baseFuse:1610719232,macFuse:1610719300,usrOffs:24,usr1Offs:28,usr2Offs:32,mosiDlenOffs:36,misoDlenOffs:40,w0Offs:88,uartDateReg:1610612860,flashOffs:0};default:return{regBase:-1,baseFuse:-1,macFuse:-1,usrOffs:-1,usr1Offs:-1,usr2Offs:-1,mosiDlenOffs:-1,misoDlenOffs:-1,w0Offs:-1,uartDateReg:-1,flashOffs:-1}}};class y extends Error{constructor(t){super(t),this.name="SlipReadError"}}const k=async e=>{let a;return e==l?a=await import("./esp32-d51f885c.js"):e==h?a=await import("./esp32s2-da1a4fa1.js"):e==d?a=await import("./esp32s3-d79eec99.js"):e==o?a=await import("./esp8266-144419c0.js"):e==f?a=await import("./esp32c2-f0222390.js"):e==_?a=await import("./esp32c3-9f5fd05b.js"):e==c?a=await import("./esp32c6-e911f438.js"):e==u&&(a=await import("./esp32h2-19e099dc.js")),{...a,text:t(atob(a.text)),data:t(atob(a.data))}};function v(t){let e=t.length;for(;--e>=0;)t[e]=0}const x=256,z=286,R=30,S=15,E=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),U=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),D=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),A=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),I=new Array(576);v(I);const O=new Array(60);v(O);const F=new Array(512);v(F);const B=new Array(256);v(B);const T=new Array(29);v(T);const C=new Array(R);function Z(t,e,a,i,s){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=i,this.max_length=s,this.has_stree=t&&t.length}let L,M,N;function P(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}v(C);const H=t=>t<256?F[t]:F[256+(t>>>7)],$=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},j=(t,e,a)=>{t.bi_valid>16-a?(t.bi_buf|=e<<t.bi_valid&65535,$(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=a-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=a)},V=(t,e,a)=>{j(t,a[2*e],a[2*e+1])},W=(t,e)=>{let a=0;do{a|=1&t,t>>>=1,a<<=1}while(--e>0);return a>>>1},K=(t,e,a)=>{const i=new Array(16);let s,r,n=0;for(s=1;s<=S;s++)n=n+a[s-1]<<1,i[s]=n;for(r=0;r<=e;r++){let e=t[2*r+1];0!==e&&(t[2*r]=W(i[e]++,e))}},Y=t=>{let e;for(e=0;e<z;e++)t.dyn_ltree[2*e]=0;for(e=0;e<R;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},q=t=>{t.bi_valid>8?$(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},G=(t,e,a,i)=>{const s=2*e,r=2*a;return t[s]<t[r]||t[s]===t[r]&&i[e]<=i[a]},X=(t,e,a)=>{const i=t.heap[a];let s=a<<1;for(;s<=t.heap_len&&(s<t.heap_len&&G(e,t.heap[s+1],t.heap[s],t.depth)&&s++,!G(e,i,t.heap[s],t.depth));)t.heap[a]=t.heap[s],a=s,s<<=1;t.heap[a]=i},Q=(t,e,a)=>{let i,s,r,n,o=0;if(0!==t.sym_next)do{i=255&t.pending_buf[t.sym_buf+o++],i+=(255&t.pending_buf[t.sym_buf+o++])<<8,s=t.pending_buf[t.sym_buf+o++],0===i?V(t,s,e):(r=B[s],V(t,r+x+1,e),n=E[r],0!==n&&(s-=T[r],j(t,s,n)),i--,r=H(i),V(t,r,a),n=U[r],0!==n&&(i-=C[r],j(t,i,n)))}while(o<t.sym_next);V(t,256,e)},J=(t,e)=>{const a=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.has_stree,r=e.stat_desc.elems;let n,o,l,h=-1;for(t.heap_len=0,t.heap_max=573,n=0;n<r;n++)0!==a[2*n]?(t.heap[++t.heap_len]=h=n,t.depth[n]=0):a[2*n+1]=0;for(;t.heap_len<2;)l=t.heap[++t.heap_len]=h<2?++h:0,a[2*l]=1,t.depth[l]=0,t.opt_len--,s&&(t.static_len-=i[2*l+1]);for(e.max_code=h,n=t.heap_len>>1;n>=1;n--)X(t,a,n);l=r;do{n=t.heap[1],t.heap[1]=t.heap[t.heap_len--],X(t,a,1),o=t.heap[1],t.heap[--t.heap_max]=n,t.heap[--t.heap_max]=o,a[2*l]=a[2*n]+a[2*o],t.depth[l]=(t.depth[n]>=t.depth[o]?t.depth[n]:t.depth[o])+1,a[2*n+1]=a[2*o+1]=l,t.heap[1]=l++,X(t,a,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const a=e.dyn_tree,i=e.max_code,s=e.stat_desc.static_tree,r=e.stat_desc.has_stree,n=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,l=e.stat_desc.max_length;let h,d,f,_,c,u,w=0;for(_=0;_<=S;_++)t.bl_count[_]=0;for(a[2*t.heap[t.heap_max]+1]=0,h=t.heap_max+1;h<573;h++)d=t.heap[h],_=a[2*a[2*d+1]+1]+1,_>l&&(_=l,w++),a[2*d+1]=_,d>i||(t.bl_count[_]++,c=0,d>=o&&(c=n[d-o]),u=a[2*d],t.opt_len+=u*(_+c),r&&(t.static_len+=u*(s[2*d+1]+c)));if(0!==w){do{for(_=l-1;0===t.bl_count[_];)_--;t.bl_count[_]--,t.bl_count[_+1]+=2,t.bl_count[l]--,w-=2}while(w>0);for(_=l;0!==_;_--)for(d=t.bl_count[_];0!==d;)f=t.heap[--h],f>i||(a[2*f+1]!==_&&(t.opt_len+=(_-a[2*f+1])*a[2*f],a[2*f+1]=_),d--)}})(t,e),K(a,h,t.bl_count)},tt=(t,e,a)=>{let i,s,r=-1,n=e[1],o=0,l=7,h=4;for(0===n&&(l=138,h=3),e[2*(a+1)+1]=65535,i=0;i<=a;i++)s=n,n=e[2*(i+1)+1],++o<l&&s===n||(o<h?t.bl_tree[2*s]+=o:0!==s?(s!==r&&t.bl_tree[2*s]++,t.bl_tree[32]++):o<=10?t.bl_tree[34]++:t.bl_tree[36]++,o=0,r=s,0===n?(l=138,h=3):s===n?(l=6,h=3):(l=7,h=4))},et=(t,e,a)=>{let i,s,r=-1,n=e[1],o=0,l=7,h=4;for(0===n&&(l=138,h=3),i=0;i<=a;i++)if(s=n,n=e[2*(i+1)+1],!(++o<l&&s===n)){if(o<h)do{V(t,s,t.bl_tree)}while(0!=--o);else 0!==s?(s!==r&&(V(t,s,t.bl_tree),o--),V(t,16,t.bl_tree),j(t,o-3,2)):o<=10?(V(t,17,t.bl_tree),j(t,o-3,3)):(V(t,18,t.bl_tree),j(t,o-11,7));o=0,r=s,0===n?(l=138,h=3):s===n?(l=6,h=3):(l=7,h=4)}};let at=!1;const it=(t,e,a,i)=>{j(t,0+(i?1:0),3),q(t),$(t,a),$(t,~a),a&&t.pending_buf.set(t.window.subarray(e,e+a),t.pending),t.pending+=a};var st=(t,e,a,i)=>{let s,r,n=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,a=4093624447;for(e=0;e<=31;e++,a>>>=1)if(1&a&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<x;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),J(t,t.l_desc),J(t,t.d_desc),n=(t=>{let e;for(tt(t,t.dyn_ltree,t.l_desc.max_code),tt(t,t.dyn_dtree,t.d_desc.max_code),J(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*A[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),s=t.opt_len+3+7>>>3,r=t.static_len+3+7>>>3,r<=s&&(s=r)):s=r=a+5,a+4<=s&&-1!==e?it(t,e,a,i):4===t.strategy||r===s?(j(t,2+(i?1:0),3),Q(t,I,O)):(j(t,4+(i?1:0),3),((t,e,a,i)=>{let s;for(j(t,e-257,5),j(t,a-1,5),j(t,i-4,4),s=0;s<i;s++)j(t,t.bl_tree[2*A[s]+1],3);et(t,t.dyn_ltree,e-1),et(t,t.dyn_dtree,a-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,n+1),Q(t,t.dyn_ltree,t.dyn_dtree)),Y(t),i&&q(t)},rt={_tr_init:t=>{at||((()=>{let t,e,a,i,s;const r=new Array(16);for(a=0,i=0;i<28;i++)for(T[i]=a,t=0;t<1<<E[i];t++)B[a++]=i;for(B[a-1]=i,s=0,i=0;i<16;i++)for(C[i]=s,t=0;t<1<<U[i];t++)F[s++]=i;for(s>>=7;i<R;i++)for(C[i]=s<<7,t=0;t<1<<U[i]-7;t++)F[256+s++]=i;for(e=0;e<=S;e++)r[e]=0;for(t=0;t<=143;)I[2*t+1]=8,t++,r[8]++;for(;t<=255;)I[2*t+1]=9,t++,r[9]++;for(;t<=279;)I[2*t+1]=7,t++,r[7]++;for(;t<=287;)I[2*t+1]=8,t++,r[8]++;for(K(I,287,r),t=0;t<R;t++)O[2*t+1]=5,O[2*t]=W(t,5);L=new Z(I,E,257,z,S),M=new Z(O,U,0,R,S),N=new Z(new Array(0),D,0,19,7)})(),at=!0),t.l_desc=new P(t.dyn_ltree,L),t.d_desc=new P(t.dyn_dtree,M),t.bl_desc=new P(t.bl_tree,N),t.bi_buf=0,t.bi_valid=0,Y(t)},_tr_stored_block:it,_tr_flush_block:st,_tr_tally:(t,e,a)=>(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=a,0===e?t.dyn_ltree[2*a]++:(t.matches++,e--,t.dyn_ltree[2*(B[a]+x+1)]++,t.dyn_dtree[2*H(e)]++),t.sym_next===t.sym_end),_tr_align:t=>{j(t,2,3),V(t,256,I),(t=>{16===t.bi_valid?($(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)}};var nt=(t,e,a,i)=>{let s=65535&t|0,r=t>>>16&65535|0,n=0;for(;0!==a;){n=a>2e3?2e3:a,a-=n;do{s=s+e[i++]|0,r=r+s|0}while(--n);s%=65521,r%=65521}return s|r<<16|0};const ot=new Uint32Array((()=>{let t,e=[];for(var a=0;a<256;a++){t=a;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e})());var lt=(t,e,a,i)=>{const s=ot,r=i+a;t^=-1;for(let a=i;a<r;a++)t=t>>>8^s[255&(t^e[a])];return-1^t},ht={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},dt={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:ft,_tr_stored_block:_t,_tr_flush_block:ct,_tr_tally:ut,_tr_align:wt}=rt,{Z_NO_FLUSH:gt,Z_PARTIAL_FLUSH:mt,Z_FULL_FLUSH:pt,Z_FINISH:bt,Z_BLOCK:yt,Z_OK:kt,Z_STREAM_END:vt,Z_STREAM_ERROR:xt,Z_DATA_ERROR:zt,Z_BUF_ERROR:Rt,Z_DEFAULT_COMPRESSION:St,Z_FILTERED:Et,Z_HUFFMAN_ONLY:Ut,Z_RLE:Dt,Z_FIXED:At,Z_DEFAULT_STRATEGY:It,Z_UNKNOWN:Ot,Z_DEFLATED:Ft}=dt,Bt=258,Tt=262,Ct=42,Zt=113,Lt=666,Mt=(t,e)=>(t.msg=ht[e],e),Nt=t=>2*t-(t>4?9:0),Pt=t=>{let e=t.length;for(;--e>=0;)t[e]=0},Ht=t=>{let e,a,i,s=t.w_size;e=t.hash_size,i=e;do{a=t.head[--i],t.head[i]=a>=s?a-s:0}while(--e);e=s,i=e;do{a=t.prev[--i],t.prev[i]=a>=s?a-s:0}while(--e)};let $t=(t,e,a)=>(e<<t.hash_shift^a)&t.hash_mask;const jt=t=>{const e=t.state;let a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+a),t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))},Vt=(t,e)=>{ct(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,jt(t.strm)},Wt=(t,e)=>{t.pending_buf[t.pending++]=e},Kt=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},Yt=(t,e,a,i)=>{let s=t.avail_in;return s>i&&(s=i),0===s?0:(t.avail_in-=s,e.set(t.input.subarray(t.next_in,t.next_in+s),a),1===t.state.wrap?t.adler=nt(t.adler,e,s,a):2===t.state.wrap&&(t.adler=lt(t.adler,e,s,a)),t.next_in+=s,t.total_in+=s,s)},qt=(t,e)=>{let a,i,s=t.max_chain_length,r=t.strstart,n=t.prev_length,o=t.nice_match;const l=t.strstart>t.w_size-Tt?t.strstart-(t.w_size-Tt):0,h=t.window,d=t.w_mask,f=t.prev,_=t.strstart+Bt;let c=h[r+n-1],u=h[r+n];t.prev_length>=t.good_match&&(s>>=2),o>t.lookahead&&(o=t.lookahead);do{if(a=e,h[a+n]===u&&h[a+n-1]===c&&h[a]===h[r]&&h[++a]===h[r+1]){r+=2,a++;do{}while(h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&r<_);if(i=Bt-(_-r),r=_-Bt,i>n){if(t.match_start=e,n=i,i>=o)break;c=h[r+n-1],u=h[r+n]}}}while((e=f[e&d])>l&&0!=--s);return n<=t.lookahead?n:t.lookahead},Gt=t=>{const e=t.w_size;let a,i,s;do{if(i=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-Tt)&&(t.window.set(t.window.subarray(e,e+e-i),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),Ht(t),i+=e),0===t.strm.avail_in)break;if(a=Yt(t.strm,t.window,t.strstart+t.lookahead,i),t.lookahead+=a,t.lookahead+t.insert>=3)for(s=t.strstart-t.insert,t.ins_h=t.window[s],t.ins_h=$t(t,t.ins_h,t.window[s+1]);t.insert&&(t.ins_h=$t(t,t.ins_h,t.window[s+3-1]),t.prev[s&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=s,s++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<Tt&&0!==t.strm.avail_in)},Xt=(t,e)=>{let a,i,s,r=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,n=0,o=t.strm.avail_in;do{if(a=65535,s=t.bi_valid+42>>3,t.strm.avail_out<s)break;if(s=t.strm.avail_out-s,i=t.strstart-t.block_start,a>i+t.strm.avail_in&&(a=i+t.strm.avail_in),a>s&&(a=s),a<r&&(0===a&&e!==bt||e===gt||a!==i+t.strm.avail_in))break;n=e===bt&&a===i+t.strm.avail_in?1:0,_t(t,0,0,n),t.pending_buf[t.pending-4]=a,t.pending_buf[t.pending-3]=a>>8,t.pending_buf[t.pending-2]=~a,t.pending_buf[t.pending-1]=~a>>8,jt(t.strm),i&&(i>a&&(i=a),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+i),t.strm.next_out),t.strm.next_out+=i,t.strm.avail_out-=i,t.strm.total_out+=i,t.block_start+=i,a-=i),a&&(Yt(t.strm,t.strm.output,t.strm.next_out,a),t.strm.next_out+=a,t.strm.avail_out-=a,t.strm.total_out+=a)}while(0===n);return o-=t.strm.avail_in,o&&(o>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=o&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-o,t.strm.next_in),t.strstart),t.strstart+=o,t.insert+=o>t.w_size-t.insert?t.w_size-t.insert:o),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),n?4:e!==gt&&e!==bt&&0===t.strm.avail_in&&t.strstart===t.block_start?2:(s=t.window_size-t.strstart,t.strm.avail_in>s&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,s+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),s>t.strm.avail_in&&(s=t.strm.avail_in),s&&(Yt(t.strm,t.window,t.strstart,s),t.strstart+=s,t.insert+=s>t.w_size-t.insert?t.w_size-t.insert:s),t.high_water<t.strstart&&(t.high_water=t.strstart),s=t.bi_valid+42>>3,s=t.pending_buf_size-s>65535?65535:t.pending_buf_size-s,r=s>t.w_size?t.w_size:s,i=t.strstart-t.block_start,(i>=r||(i||e===bt)&&e!==gt&&0===t.strm.avail_in&&i<=s)&&(a=i>s?s:i,n=e===bt&&0===t.strm.avail_in&&a===i?1:0,_t(t,t.block_start,a,n),t.block_start+=a,jt(t.strm)),n?3:1)},Qt=(t,e)=>{let a,i;for(;;){if(t.lookahead<Tt){if(Gt(t),t.lookahead<Tt&&e===gt)return 1;if(0===t.lookahead)break}if(a=0,t.lookahead>=3&&(t.ins_h=$t(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==a&&t.strstart-a<=t.w_size-Tt&&(t.match_length=qt(t,a)),t.match_length>=3)if(i=ut(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=$t(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=$t(t,t.ins_h,t.window[t.strstart+1]);else i=ut(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(Vt(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===bt?(Vt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(Vt(t,!1),0===t.strm.avail_out)?1:2},Jt=(t,e)=>{let a,i,s;for(;;){if(t.lookahead<Tt){if(Gt(t),t.lookahead<Tt&&e===gt)return 1;if(0===t.lookahead)break}if(a=0,t.lookahead>=3&&(t.ins_h=$t(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==a&&t.prev_length<t.max_lazy_match&&t.strstart-a<=t.w_size-Tt&&(t.match_length=qt(t,a),t.match_length<=5&&(t.strategy===Et||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){s=t.strstart+t.lookahead-3,i=ut(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=s&&(t.ins_h=$t(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,i&&(Vt(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(i=ut(t,0,t.window[t.strstart-1]),i&&Vt(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=ut(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===bt?(Vt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(Vt(t,!1),0===t.strm.avail_out)?1:2};function te(t,e,a,i,s){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=i,this.func=s}const ee=[new te(0,0,0,0,Xt),new te(4,4,8,4,Qt),new te(4,5,16,8,Qt),new te(4,6,32,32,Qt),new te(4,4,16,16,Jt),new te(8,16,32,32,Jt),new te(8,16,128,128,Jt),new te(8,32,128,256,Jt),new te(32,128,258,1024,Jt),new te(32,258,258,4096,Jt)];function ae(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Ft,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),Pt(this.dyn_ltree),Pt(this.dyn_dtree),Pt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),Pt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),Pt(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const ie=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==Ct&&57!==e.status&&69!==e.status&&73!==e.status&&91!==e.status&&103!==e.status&&e.status!==Zt&&e.status!==Lt?1:0},se=t=>{if(ie(t))return Mt(t,xt);t.total_in=t.total_out=0,t.data_type=Ot;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=2===e.wrap?57:e.wrap?Ct:Zt,t.adler=2===e.wrap?0:1,e.last_flush=-2,ft(e),kt},re=t=>{const e=se(t);var a;return e===kt&&((a=t.state).window_size=2*a.w_size,Pt(a.head),a.max_lazy_match=ee[a.level].max_lazy,a.good_match=ee[a.level].good_length,a.nice_match=ee[a.level].nice_length,a.max_chain_length=ee[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=2,a.match_available=0,a.ins_h=0),e},ne=(t,e,a,i,s,r)=>{if(!t)return xt;let n=1;if(e===St&&(e=6),i<0?(n=0,i=-i):i>15&&(n=2,i-=16),s<1||s>9||a!==Ft||i<8||i>15||e<0||e>9||r<0||r>At||8===i&&1!==n)return Mt(t,xt);8===i&&(i=9);const o=new ae;return t.state=o,o.strm=t,o.status=Ct,o.wrap=n,o.gzhead=null,o.w_bits=i,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=s+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+3-1)/3),o.window=new Uint8Array(2*o.w_size),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<s+6,o.pending_buf_size=4*o.lit_bufsize,o.pending_buf=new Uint8Array(o.pending_buf_size),o.sym_buf=o.lit_bufsize,o.sym_end=3*(o.lit_bufsize-1),o.level=e,o.strategy=r,o.method=a,re(t)};var oe={deflateInit:(t,e)=>ne(t,e,Ft,15,8,It),deflateInit2:ne,deflateReset:re,deflateResetKeep:se,deflateSetHeader:(t,e)=>ie(t)||2!==t.state.wrap?xt:(t.state.gzhead=e,kt),deflate:(t,e)=>{if(ie(t)||e>yt||e<0)return t?Mt(t,xt):xt;const a=t.state;if(!t.output||0!==t.avail_in&&!t.input||a.status===Lt&&e!==bt)return Mt(t,0===t.avail_out?Rt:xt);const i=a.last_flush;if(a.last_flush=e,0!==a.pending){if(jt(t),0===t.avail_out)return a.last_flush=-1,kt}else if(0===t.avail_in&&Nt(e)<=Nt(i)&&e!==bt)return Mt(t,Rt);if(a.status===Lt&&0!==t.avail_in)return Mt(t,Rt);if(a.status===Ct&&0===a.wrap&&(a.status=Zt),a.status===Ct){let e=Ft+(a.w_bits-8<<4)<<8,i=-1;if(i=a.strategy>=Ut||a.level<2?0:a.level<6?1:6===a.level?2:3,e|=i<<6,0!==a.strstart&&(e|=32),e+=31-e%31,Kt(a,e),0!==a.strstart&&(Kt(a,t.adler>>>16),Kt(a,65535&t.adler)),t.adler=1,a.status=Zt,jt(t),0!==a.pending)return a.last_flush=-1,kt}if(57===a.status)if(t.adler=0,Wt(a,31),Wt(a,139),Wt(a,8),a.gzhead)Wt(a,(a.gzhead.text?1:0)+(a.gzhead.hcrc?2:0)+(a.gzhead.extra?4:0)+(a.gzhead.name?8:0)+(a.gzhead.comment?16:0)),Wt(a,255&a.gzhead.time),Wt(a,a.gzhead.time>>8&255),Wt(a,a.gzhead.time>>16&255),Wt(a,a.gzhead.time>>24&255),Wt(a,9===a.level?2:a.strategy>=Ut||a.level<2?4:0),Wt(a,255&a.gzhead.os),a.gzhead.extra&&a.gzhead.extra.length&&(Wt(a,255&a.gzhead.extra.length),Wt(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(t.adler=lt(t.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=69;else if(Wt(a,0),Wt(a,0),Wt(a,0),Wt(a,0),Wt(a,0),Wt(a,9===a.level?2:a.strategy>=Ut||a.level<2?4:0),Wt(a,3),a.status=Zt,jt(t),0!==a.pending)return a.last_flush=-1,kt;if(69===a.status){if(a.gzhead.extra){let e=a.pending,i=(65535&a.gzhead.extra.length)-a.gzindex;for(;a.pending+i>a.pending_buf_size;){let s=a.pending_buf_size-a.pending;if(a.pending_buf.set(a.gzhead.extra.subarray(a.gzindex,a.gzindex+s),a.pending),a.pending=a.pending_buf_size,a.gzhead.hcrc&&a.pending>e&&(t.adler=lt(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex+=s,jt(t),0!==a.pending)return a.last_flush=-1,kt;e=0,i-=s}let s=new Uint8Array(a.gzhead.extra);a.pending_buf.set(s.subarray(a.gzindex,a.gzindex+i),a.pending),a.pending+=i,a.gzhead.hcrc&&a.pending>e&&(t.adler=lt(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex=0}a.status=73}if(73===a.status){if(a.gzhead.name){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=lt(t.adler,a.pending_buf,a.pending-i,i)),jt(t),0!==a.pending)return a.last_flush=-1,kt;i=0}e=a.gzindex<a.gzhead.name.length?255&a.gzhead.name.charCodeAt(a.gzindex++):0,Wt(a,e)}while(0!==e);a.gzhead.hcrc&&a.pending>i&&(t.adler=lt(t.adler,a.pending_buf,a.pending-i,i)),a.gzindex=0}a.status=91}if(91===a.status){if(a.gzhead.comment){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=lt(t.adler,a.pending_buf,a.pending-i,i)),jt(t),0!==a.pending)return a.last_flush=-1,kt;i=0}e=a.gzindex<a.gzhead.comment.length?255&a.gzhead.comment.charCodeAt(a.gzindex++):0,Wt(a,e)}while(0!==e);a.gzhead.hcrc&&a.pending>i&&(t.adler=lt(t.adler,a.pending_buf,a.pending-i,i))}a.status=103}if(103===a.status){if(a.gzhead.hcrc){if(a.pending+2>a.pending_buf_size&&(jt(t),0!==a.pending))return a.last_flush=-1,kt;Wt(a,255&t.adler),Wt(a,t.adler>>8&255),t.adler=0}if(a.status=Zt,jt(t),0!==a.pending)return a.last_flush=-1,kt}if(0!==t.avail_in||0!==a.lookahead||e!==gt&&a.status!==Lt){let i=0===a.level?Xt(a,e):a.strategy===Ut?((t,e)=>{let a;for(;;){if(0===t.lookahead&&(Gt(t),0===t.lookahead)){if(e===gt)return 1;break}if(t.match_length=0,a=ut(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(Vt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===bt?(Vt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(Vt(t,!1),0===t.strm.avail_out)?1:2})(a,e):a.strategy===Dt?((t,e)=>{let a,i,s,r;const n=t.window;for(;;){if(t.lookahead<=Bt){if(Gt(t),t.lookahead<=Bt&&e===gt)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(s=t.strstart-1,i=n[s],i===n[++s]&&i===n[++s]&&i===n[++s])){r=t.strstart+Bt;do{}while(i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&i===n[++s]&&s<r);t.match_length=Bt-(r-s),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(a=ut(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=ut(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(Vt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===bt?(Vt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(Vt(t,!1),0===t.strm.avail_out)?1:2})(a,e):ee[a.level].func(a,e);if(3!==i&&4!==i||(a.status=Lt),1===i||3===i)return 0===t.avail_out&&(a.last_flush=-1),kt;if(2===i&&(e===mt?wt(a):e!==yt&&(_t(a,0,0,!1),e===pt&&(Pt(a.head),0===a.lookahead&&(a.strstart=0,a.block_start=0,a.insert=0))),jt(t),0===t.avail_out))return a.last_flush=-1,kt}return e!==bt?kt:a.wrap<=0?vt:(2===a.wrap?(Wt(a,255&t.adler),Wt(a,t.adler>>8&255),Wt(a,t.adler>>16&255),Wt(a,t.adler>>24&255),Wt(a,255&t.total_in),Wt(a,t.total_in>>8&255),Wt(a,t.total_in>>16&255),Wt(a,t.total_in>>24&255)):(Kt(a,t.adler>>>16),Kt(a,65535&t.adler)),jt(t),a.wrap>0&&(a.wrap=-a.wrap),0!==a.pending?kt:vt)},deflateEnd:t=>{if(ie(t))return xt;const e=t.state.status;return t.state=null,e===Zt?Mt(t,zt):kt},deflateSetDictionary:(t,e)=>{let a=e.length;if(ie(t))return xt;const i=t.state,s=i.wrap;if(2===s||1===s&&i.status!==Ct||i.lookahead)return xt;if(1===s&&(t.adler=nt(t.adler,e,a,0)),i.wrap=0,a>=i.w_size){0===s&&(Pt(i.head),i.strstart=0,i.block_start=0,i.insert=0);let t=new Uint8Array(i.w_size);t.set(e.subarray(a-i.w_size,a),0),e=t,a=i.w_size}const r=t.avail_in,n=t.next_in,o=t.input;for(t.avail_in=a,t.next_in=0,t.input=e,Gt(i);i.lookahead>=3;){let t=i.strstart,e=i.lookahead-2;do{i.ins_h=$t(i,i.ins_h,i.window[t+3-1]),i.prev[t&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=t,t++}while(--e);i.strstart=t,i.lookahead=2,Gt(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,t.next_in=n,t.input=o,t.avail_in=r,i.wrap=s,kt},deflateInfo:"pako deflate (from Nodeca project)"};const le=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var he={assign:function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(const e in a)le(a,e)&&(t[e]=a[e])}}return t},flattenChunks:t=>{let e=0;for(let a=0,i=t.length;a<i;a++)e+=t[a].length;const a=new Uint8Array(e);for(let e=0,i=0,s=t.length;e<s;e++){let s=t[e];a.set(s,i),i+=s.length}return a}};let de=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){de=!1}const fe=new Uint8Array(256);for(let t=0;t<256;t++)fe[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;fe[254]=fe[254]=1;var _e={string2buf:t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,a,i,s,r,n=t.length,o=0;for(s=0;s<n;s++)a=t.charCodeAt(s),55296==(64512&a)&&s+1<n&&(i=t.charCodeAt(s+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),s++)),o+=a<128?1:a<2048?2:a<65536?3:4;for(e=new Uint8Array(o),r=0,s=0;r<o;s++)a=t.charCodeAt(s),55296==(64512&a)&&s+1<n&&(i=t.charCodeAt(s+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),s++)),a<128?e[r++]=a:a<2048?(e[r++]=192|a>>>6,e[r++]=128|63&a):a<65536?(e[r++]=224|a>>>12,e[r++]=128|a>>>6&63,e[r++]=128|63&a):(e[r++]=240|a>>>18,e[r++]=128|a>>>12&63,e[r++]=128|a>>>6&63,e[r++]=128|63&a);return e},buf2string:(t,e)=>{const a=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let i,s;const r=new Array(2*a);for(s=0,i=0;i<a;){let e=t[i++];if(e<128){r[s++]=e;continue}let n=fe[e];if(n>4)r[s++]=65533,i+=n-1;else{for(e&=2===n?31:3===n?15:7;n>1&&i<a;)e=e<<6|63&t[i++],n--;n>1?r[s++]=65533:e<65536?r[s++]=e:(e-=65536,r[s++]=55296|e>>10&1023,r[s++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&de)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let a="";for(let i=0;i<e;i++)a+=String.fromCharCode(t[i]);return a})(r,s)},utf8border:(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let a=e-1;for(;a>=0&&128==(192&t[a]);)a--;return a<0||0===a?e:a+fe[t[a]]>e?a:e}};var ce=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const ue=Object.prototype.toString,{Z_NO_FLUSH:we,Z_SYNC_FLUSH:ge,Z_FULL_FLUSH:me,Z_FINISH:pe,Z_OK:be,Z_STREAM_END:ye,Z_DEFAULT_COMPRESSION:ke,Z_DEFAULT_STRATEGY:ve,Z_DEFLATED:xe}=dt;function ze(t){this.options=he.assign({level:ke,method:xe,chunkSize:16384,windowBits:15,memLevel:8,strategy:ve},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new ce,this.strm.avail_out=0;let a=oe.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==be)throw new Error(ht[a]);if(e.header&&oe.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?_e.string2buf(e.dictionary):"[object ArrayBuffer]"===ue.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=oe.deflateSetDictionary(this.strm,t),a!==be)throw new Error(ht[a]);this._dict_set=!0}}function Re(t,e){const a=new ze(e);if(a.push(t,!0),a.err)throw a.msg||ht[a.err];return a.result}ze.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize;let s,r;if(this.ended)return!1;for(r=e===~~e?e:!0===e?pe:we,"string"==typeof t?a.input=_e.string2buf(t):"[object ArrayBuffer]"===ue.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;)if(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),(r===ge||r===me)&&a.avail_out<=6)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else{if(s=oe.deflate(a,r),s===ye)return a.next_out>0&&this.onData(a.output.subarray(0,a.next_out)),s=oe.deflateEnd(this.strm),this.onEnd(s),this.ended=!0,s===be;if(0!==a.avail_out){if(r>0&&a.next_out>0)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else if(0===a.avail_in)break}else this.onData(a.output)}return!0},ze.prototype.onData=function(t){this.chunks.push(t)},ze.prototype.onEnd=function(t){t===be&&(this.result=he.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var Se={Deflate:ze,deflate:Re,deflateRaw:function(t,e){return(e=e||{}).raw=!0,Re(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,Re(t,e)},constants:dt};const Ee=16209;var Ue=function(t,e){let a,i,s,r,n,o,l,h,d,f,_,c,u,w,g,m,p,b,y,k,v,x,z,R;const S=t.state;a=t.next_in,z=t.input,i=a+(t.avail_in-5),s=t.next_out,R=t.output,r=s-(e-t.avail_out),n=s+(t.avail_out-257),o=S.dmax,l=S.wsize,h=S.whave,d=S.wnext,f=S.window,_=S.hold,c=S.bits,u=S.lencode,w=S.distcode,g=(1<<S.lenbits)-1,m=(1<<S.distbits)-1;t:do{c<15&&(_+=z[a++]<<c,c+=8,_+=z[a++]<<c,c+=8),p=u[_&g];e:for(;;){if(b=p>>>24,_>>>=b,c-=b,b=p>>>16&255,0===b)R[s++]=65535&p;else{if(!(16&b)){if(0==(64&b)){p=u[(65535&p)+(_&(1<<b)-1)];continue e}if(32&b){S.mode=16191;break t}t.msg="invalid literal/length code",S.mode=Ee;break t}y=65535&p,b&=15,b&&(c<b&&(_+=z[a++]<<c,c+=8),y+=_&(1<<b)-1,_>>>=b,c-=b),c<15&&(_+=z[a++]<<c,c+=8,_+=z[a++]<<c,c+=8),p=w[_&m];a:for(;;){if(b=p>>>24,_>>>=b,c-=b,b=p>>>16&255,!(16&b)){if(0==(64&b)){p=w[(65535&p)+(_&(1<<b)-1)];continue a}t.msg="invalid distance code",S.mode=Ee;break t}if(k=65535&p,b&=15,c<b&&(_+=z[a++]<<c,c+=8,c<b&&(_+=z[a++]<<c,c+=8)),k+=_&(1<<b)-1,k>o){t.msg="invalid distance too far back",S.mode=Ee;break t}if(_>>>=b,c-=b,b=s-r,k>b){if(b=k-b,b>h&&S.sane){t.msg="invalid distance too far back",S.mode=Ee;break t}if(v=0,x=f,0===d){if(v+=l-b,b<y){y-=b;do{R[s++]=f[v++]}while(--b);v=s-k,x=R}}else if(d<b){if(v+=l+d-b,b-=d,b<y){y-=b;do{R[s++]=f[v++]}while(--b);if(v=0,d<y){b=d,y-=b;do{R[s++]=f[v++]}while(--b);v=s-k,x=R}}}else if(v+=d-b,b<y){y-=b;do{R[s++]=f[v++]}while(--b);v=s-k,x=R}for(;y>2;)R[s++]=x[v++],R[s++]=x[v++],R[s++]=x[v++],y-=3;y&&(R[s++]=x[v++],y>1&&(R[s++]=x[v++]))}else{v=s-k;do{R[s++]=R[v++],R[s++]=R[v++],R[s++]=R[v++],y-=3}while(y>2);y&&(R[s++]=R[v++],y>1&&(R[s++]=R[v++]))}break}}break}}while(a<i&&s<n);y=c>>3,a-=y,c-=y<<3,_&=(1<<c)-1,t.next_in=a,t.next_out=s,t.avail_in=a<i?i-a+5:5-(a-i),t.avail_out=s<n?n-s+257:257-(s-n),S.hold=_,S.bits=c};const De=15,Ae=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),Ie=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),Oe=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),Fe=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var Be=(t,e,a,i,s,r,n,o)=>{const l=o.bits;let h,d,f,_,c,u,w=0,g=0,m=0,p=0,b=0,y=0,k=0,v=0,x=0,z=0,R=null;const S=new Uint16Array(16),E=new Uint16Array(16);let U,D,A,I=null;for(w=0;w<=De;w++)S[w]=0;for(g=0;g<i;g++)S[e[a+g]]++;for(b=l,p=De;p>=1&&0===S[p];p--);if(b>p&&(b=p),0===p)return s[r++]=20971520,s[r++]=20971520,o.bits=1,0;for(m=1;m<p&&0===S[m];m++);for(b<m&&(b=m),v=1,w=1;w<=De;w++)if(v<<=1,v-=S[w],v<0)return-1;if(v>0&&(0===t||1!==p))return-1;for(E[1]=0,w=1;w<De;w++)E[w+1]=E[w]+S[w];for(g=0;g<i;g++)0!==e[a+g]&&(n[E[e[a+g]]++]=g);if(0===t?(R=I=n,u=20):1===t?(R=Ae,I=Ie,u=257):(R=Oe,I=Fe,u=0),z=0,g=0,w=m,c=r,y=b,k=0,f=-1,x=1<<b,_=x-1,1===t&&x>852||2===t&&x>592)return 1;for(;;){U=w-k,n[g]+1<u?(D=0,A=n[g]):n[g]>=u?(D=I[n[g]-u],A=R[n[g]-u]):(D=96,A=0),h=1<<w-k,d=1<<y,m=d;do{d-=h,s[c+(z>>k)+d]=U<<24|D<<16|A|0}while(0!==d);for(h=1<<w-1;z&h;)h>>=1;if(0!==h?(z&=h-1,z+=h):z=0,g++,0==--S[w]){if(w===p)break;w=e[a+n[g]]}if(w>b&&(z&_)!==f){for(0===k&&(k=b),c+=m,y=w-k,v=1<<y;y+k<p&&(v-=S[y+k],!(v<=0));)y++,v<<=1;if(x+=1<<y,1===t&&x>852||2===t&&x>592)return 1;f=z&_,s[f]=b<<24|y<<16|c-r|0}}return 0!==z&&(s[c+z]=w-k<<24|64<<16|0),o.bits=b,0};const{Z_FINISH:Te,Z_BLOCK:Ce,Z_TREES:Ze,Z_OK:Le,Z_STREAM_END:Me,Z_NEED_DICT:Ne,Z_STREAM_ERROR:Pe,Z_DATA_ERROR:He,Z_MEM_ERROR:$e,Z_BUF_ERROR:je,Z_DEFLATED:Ve}=dt,We=16180,Ke=16190,Ye=16191,qe=16192,Ge=16194,Xe=16199,Qe=16200,Je=16206,ta=16209,ea=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function aa(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const ia=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode<We||e.mode>16211?1:0},sa=t=>{if(ia(t))return Pe;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=We,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,Le},ra=t=>{if(ia(t))return Pe;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,sa(t)},na=(t,e)=>{let a;if(ia(t))return Pe;const i=t.state;return e<0?(a=0,e=-e):(a=5+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?Pe:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=a,i.wbits=e,ra(t))},oa=(t,e)=>{if(!t)return Pe;const a=new aa;t.state=a,a.strm=t,a.window=null,a.mode=We;const i=na(t,e);return i!==Le&&(t.state=null),i};let la,ha,da=!0;const fa=t=>{if(da){la=new Int32Array(512),ha=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(Be(1,t.lens,0,288,la,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;Be(2,t.lens,0,32,ha,0,t.work,{bits:5}),da=!1}t.lencode=la,t.lenbits=9,t.distcode=ha,t.distbits=5},_a=(t,e,a,i)=>{let s;const r=t.state;return null===r.window&&(r.wsize=1<<r.wbits,r.wnext=0,r.whave=0,r.window=new Uint8Array(r.wsize)),i>=r.wsize?(r.window.set(e.subarray(a-r.wsize,a),0),r.wnext=0,r.whave=r.wsize):(s=r.wsize-r.wnext,s>i&&(s=i),r.window.set(e.subarray(a-i,a-i+s),r.wnext),(i-=s)?(r.window.set(e.subarray(a-i,a),0),r.wnext=i,r.whave=r.wsize):(r.wnext+=s,r.wnext===r.wsize&&(r.wnext=0),r.whave<r.wsize&&(r.whave+=s))),0};var ca={inflateReset:ra,inflateReset2:na,inflateResetKeep:sa,inflateInit:t=>oa(t,15),inflateInit2:oa,inflate:(t,e)=>{let a,i,s,r,n,o,l,h,d,f,_,c,u,w,g,m,p,b,y,k,v,x,z=0;const R=new Uint8Array(4);let S,E;const U=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(ia(t)||!t.output||!t.input&&0!==t.avail_in)return Pe;a=t.state,a.mode===Ye&&(a.mode=qe),n=t.next_out,s=t.output,l=t.avail_out,r=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,f=o,_=l,x=Le;t:for(;;)switch(a.mode){case We:if(0===a.wrap){a.mode=qe;break}for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(2&a.wrap&&35615===h){0===a.wbits&&(a.wbits=15),a.check=0,R[0]=255&h,R[1]=h>>>8&255,a.check=lt(a.check,R,2,0),h=0,d=0,a.mode=16181;break}if(a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&h)<<8)+(h>>8))%31){t.msg="incorrect header check",a.mode=ta;break}if((15&h)!==Ve){t.msg="unknown compression method",a.mode=ta;break}if(h>>>=4,d-=4,v=8+(15&h),0===a.wbits&&(a.wbits=v),v>15||v>a.wbits){t.msg="invalid window size",a.mode=ta;break}a.dmax=1<<a.wbits,a.flags=0,t.adler=a.check=1,a.mode=512&h?16189:Ye,h=0,d=0;break;case 16181:for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(a.flags=h,(255&a.flags)!==Ve){t.msg="unknown compression method",a.mode=ta;break}if(57344&a.flags){t.msg="unknown header flags set",a.mode=ta;break}a.head&&(a.head.text=h>>8&1),512&a.flags&&4&a.wrap&&(R[0]=255&h,R[1]=h>>>8&255,a.check=lt(a.check,R,2,0)),h=0,d=0,a.mode=16182;case 16182:for(;d<32;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.head&&(a.head.time=h),512&a.flags&&4&a.wrap&&(R[0]=255&h,R[1]=h>>>8&255,R[2]=h>>>16&255,R[3]=h>>>24&255,a.check=lt(a.check,R,4,0)),h=0,d=0,a.mode=16183;case 16183:for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.head&&(a.head.xflags=255&h,a.head.os=h>>8),512&a.flags&&4&a.wrap&&(R[0]=255&h,R[1]=h>>>8&255,a.check=lt(a.check,R,2,0)),h=0,d=0,a.mode=16184;case 16184:if(1024&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.length=h,a.head&&(a.head.extra_len=h),512&a.flags&&4&a.wrap&&(R[0]=255&h,R[1]=h>>>8&255,a.check=lt(a.check,R,2,0)),h=0,d=0}else a.head&&(a.head.extra=null);a.mode=16185;case 16185:if(1024&a.flags&&(c=a.length,c>o&&(c=o),c&&(a.head&&(v=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(i.subarray(r,r+c),v)),512&a.flags&&4&a.wrap&&(a.check=lt(a.check,i,c,r)),o-=c,r+=c,a.length-=c),a.length))break t;a.length=0,a.mode=16186;case 16186:if(2048&a.flags){if(0===o)break t;c=0;do{v=i[r+c++],a.head&&v&&a.length<65536&&(a.head.name+=String.fromCharCode(v))}while(v&&c<o);if(512&a.flags&&4&a.wrap&&(a.check=lt(a.check,i,c,r)),o-=c,r+=c,v)break t}else a.head&&(a.head.name=null);a.length=0,a.mode=16187;case 16187:if(4096&a.flags){if(0===o)break t;c=0;do{v=i[r+c++],a.head&&v&&a.length<65536&&(a.head.comment+=String.fromCharCode(v))}while(v&&c<o);if(512&a.flags&&4&a.wrap&&(a.check=lt(a.check,i,c,r)),o-=c,r+=c,v)break t}else a.head&&(a.head.comment=null);a.mode=16188;case 16188:if(512&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(4&a.wrap&&h!==(65535&a.check)){t.msg="header crc mismatch",a.mode=ta;break}h=0,d=0}a.head&&(a.head.hcrc=a.flags>>9&1,a.head.done=!0),t.adler=a.check=0,a.mode=Ye;break;case 16189:for(;d<32;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}t.adler=a.check=ea(h),h=0,d=0,a.mode=Ke;case Ke:if(0===a.havedict)return t.next_out=n,t.avail_out=l,t.next_in=r,t.avail_in=o,a.hold=h,a.bits=d,Ne;t.adler=a.check=1,a.mode=Ye;case Ye:if(e===Ce||e===Ze)break t;case qe:if(a.last){h>>>=7&d,d-=7&d,a.mode=Je;break}for(;d<3;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}switch(a.last=1&h,h>>>=1,d-=1,3&h){case 0:a.mode=16193;break;case 1:if(fa(a),a.mode=Xe,e===Ze){h>>>=2,d-=2;break t}break;case 2:a.mode=16196;break;case 3:t.msg="invalid block type",a.mode=ta}h>>>=2,d-=2;break;case 16193:for(h>>>=7&d,d-=7&d;d<32;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if((65535&h)!=(h>>>16^65535)){t.msg="invalid stored block lengths",a.mode=ta;break}if(a.length=65535&h,h=0,d=0,a.mode=Ge,e===Ze)break t;case Ge:a.mode=16195;case 16195:if(c=a.length,c){if(c>o&&(c=o),c>l&&(c=l),0===c)break t;s.set(i.subarray(r,r+c),n),o-=c,r+=c,l-=c,n+=c,a.length-=c;break}a.mode=Ye;break;case 16196:for(;d<14;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(a.nlen=257+(31&h),h>>>=5,d-=5,a.ndist=1+(31&h),h>>>=5,d-=5,a.ncode=4+(15&h),h>>>=4,d-=4,a.nlen>286||a.ndist>30){t.msg="too many length or distance symbols",a.mode=ta;break}a.have=0,a.mode=16197;case 16197:for(;a.have<a.ncode;){for(;d<3;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.lens[U[a.have++]]=7&h,h>>>=3,d-=3}for(;a.have<19;)a.lens[U[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,S={bits:a.lenbits},x=Be(0,a.lens,0,19,a.lencode,0,a.work,S),a.lenbits=S.bits,x){t.msg="invalid code lengths set",a.mode=ta;break}a.have=0,a.mode=16198;case 16198:for(;a.have<a.nlen+a.ndist;){for(;z=a.lencode[h&(1<<a.lenbits)-1],g=z>>>24,m=z>>>16&255,p=65535&z,!(g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(p<16)h>>>=g,d-=g,a.lens[a.have++]=p;else{if(16===p){for(E=g+2;d<E;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(h>>>=g,d-=g,0===a.have){t.msg="invalid bit length repeat",a.mode=ta;break}v=a.lens[a.have-1],c=3+(3&h),h>>>=2,d-=2}else if(17===p){for(E=g+3;d<E;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}h>>>=g,d-=g,v=0,c=3+(7&h),h>>>=3,d-=3}else{for(E=g+7;d<E;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}h>>>=g,d-=g,v=0,c=11+(127&h),h>>>=7,d-=7}if(a.have+c>a.nlen+a.ndist){t.msg="invalid bit length repeat",a.mode=ta;break}for(;c--;)a.lens[a.have++]=v}}if(a.mode===ta)break;if(0===a.lens[256]){t.msg="invalid code -- missing end-of-block",a.mode=ta;break}if(a.lenbits=9,S={bits:a.lenbits},x=Be(1,a.lens,0,a.nlen,a.lencode,0,a.work,S),a.lenbits=S.bits,x){t.msg="invalid literal/lengths set",a.mode=ta;break}if(a.distbits=6,a.distcode=a.distdyn,S={bits:a.distbits},x=Be(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,S),a.distbits=S.bits,x){t.msg="invalid distances set",a.mode=ta;break}if(a.mode=Xe,e===Ze)break t;case Xe:a.mode=Qe;case Qe:if(o>=6&&l>=258){t.next_out=n,t.avail_out=l,t.next_in=r,t.avail_in=o,a.hold=h,a.bits=d,Ue(t,_),n=t.next_out,s=t.output,l=t.avail_out,r=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,a.mode===Ye&&(a.back=-1);break}for(a.back=0;z=a.lencode[h&(1<<a.lenbits)-1],g=z>>>24,m=z>>>16&255,p=65535&z,!(g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(m&&0==(240&m)){for(b=g,y=m,k=p;z=a.lencode[k+((h&(1<<b+y)-1)>>b)],g=z>>>24,m=z>>>16&255,p=65535&z,!(b+g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}h>>>=b,d-=b,a.back+=b}if(h>>>=g,d-=g,a.back+=g,a.length=p,0===m){a.mode=16205;break}if(32&m){a.back=-1,a.mode=Ye;break}if(64&m){t.msg="invalid literal/length code",a.mode=ta;break}a.extra=15&m,a.mode=16201;case 16201:if(a.extra){for(E=a.extra;d<E;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.length+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=16202;case 16202:for(;z=a.distcode[h&(1<<a.distbits)-1],g=z>>>24,m=z>>>16&255,p=65535&z,!(g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(0==(240&m)){for(b=g,y=m,k=p;z=a.distcode[k+((h&(1<<b+y)-1)>>b)],g=z>>>24,m=z>>>16&255,p=65535&z,!(b+g<=d);){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}h>>>=b,d-=b,a.back+=b}if(h>>>=g,d-=g,a.back+=g,64&m){t.msg="invalid distance code",a.mode=ta;break}a.offset=p,a.extra=15&m,a.mode=16203;case 16203:if(a.extra){for(E=a.extra;d<E;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}a.offset+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){t.msg="invalid distance too far back",a.mode=ta;break}a.mode=16204;case 16204:if(0===l)break t;if(c=_-l,a.offset>c){if(c=a.offset-c,c>a.whave&&a.sane){t.msg="invalid distance too far back",a.mode=ta;break}c>a.wnext?(c-=a.wnext,u=a.wsize-c):u=a.wnext-c,c>a.length&&(c=a.length),w=a.window}else w=s,u=n-a.offset,c=a.length;c>l&&(c=l),l-=c,a.length-=c;do{s[n++]=w[u++]}while(--c);0===a.length&&(a.mode=Qe);break;case 16205:if(0===l)break t;s[n++]=a.length,l--,a.mode=Qe;break;case Je:if(a.wrap){for(;d<32;){if(0===o)break t;o--,h|=i[r++]<<d,d+=8}if(_-=l,t.total_out+=_,a.total+=_,4&a.wrap&&_&&(t.adler=a.check=a.flags?lt(a.check,s,_,n-_):nt(a.check,s,_,n-_)),_=l,4&a.wrap&&(a.flags?h:ea(h))!==a.check){t.msg="incorrect data check",a.mode=ta;break}h=0,d=0}a.mode=16207;case 16207:if(a.wrap&&a.flags){for(;d<32;){if(0===o)break t;o--,h+=i[r++]<<d,d+=8}if(4&a.wrap&&h!==(4294967295&a.total)){t.msg="incorrect length check",a.mode=ta;break}h=0,d=0}a.mode=16208;case 16208:x=Me;break t;case ta:x=He;break t;case 16210:return $e;default:return Pe}return t.next_out=n,t.avail_out=l,t.next_in=r,t.avail_in=o,a.hold=h,a.bits=d,(a.wsize||_!==t.avail_out&&a.mode<ta&&(a.mode<Je||e!==Te))&&_a(t,t.output,t.next_out,_-t.avail_out),f-=t.avail_in,_-=t.avail_out,t.total_in+=f,t.total_out+=_,a.total+=_,4&a.wrap&&_&&(t.adler=a.check=a.flags?lt(a.check,s,_,t.next_out-_):nt(a.check,s,_,t.next_out-_)),t.data_type=a.bits+(a.last?64:0)+(a.mode===Ye?128:0)+(a.mode===Xe||a.mode===Ge?256:0),(0===f&&0===_||e===Te)&&x===Le&&(x=je),x},inflateEnd:t=>{if(ia(t))return Pe;let e=t.state;return e.window&&(e.window=null),t.state=null,Le},inflateGetHeader:(t,e)=>{if(ia(t))return Pe;const a=t.state;return 0==(2&a.wrap)?Pe:(a.head=e,e.done=!1,Le)},inflateSetDictionary:(t,e)=>{const a=e.length;let i,s,r;return ia(t)?Pe:(i=t.state,0!==i.wrap&&i.mode!==Ke?Pe:i.mode===Ke&&(s=1,s=nt(s,e,a,0),s!==i.check)?He:(r=_a(t,e,a,a),r?(i.mode=16210,$e):(i.havedict=1,Le)))},inflateInfo:"pako inflate (from Nodeca project)"};var ua=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const wa=Object.prototype.toString,{Z_NO_FLUSH:ga,Z_FINISH:ma,Z_OK:pa,Z_STREAM_END:ba,Z_NEED_DICT:ya,Z_STREAM_ERROR:ka,Z_DATA_ERROR:va,Z_MEM_ERROR:xa}=dt;function za(t){this.options=he.assign({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new ce,this.strm.avail_out=0;let a=ca.inflateInit2(this.strm,e.windowBits);if(a!==pa)throw new Error(ht[a]);if(this.header=new ua,ca.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=_e.string2buf(e.dictionary):"[object ArrayBuffer]"===wa.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(a=ca.inflateSetDictionary(this.strm,e.dictionary),a!==pa)))throw new Error(ht[a])}za.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize,s=this.options.dictionary;let r,n,o;if(this.ended)return!1;for(n=e===~~e?e:!0===e?ma:ga,"[object ArrayBuffer]"===wa.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;){for(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),r=ca.inflate(a,n),r===ya&&s&&(r=ca.inflateSetDictionary(a,s),r===pa?r=ca.inflate(a,n):r===va&&(r=ya));a.avail_in>0&&r===ba&&a.state.wrap>0&&0!==t[a.next_in];)ca.inflateReset(a),r=ca.inflate(a,n);switch(r){case ka:case va:case ya:case xa:return this.onEnd(r),this.ended=!0,!1}if(o=a.avail_out,a.next_out&&(0===a.avail_out||r===ba))if("string"===this.options.to){let t=_e.utf8border(a.output,a.next_out),e=a.next_out-t,s=_e.buf2string(a.output,t);a.next_out=e,a.avail_out=i-e,e&&a.output.set(a.output.subarray(t,t+e),0),this.onData(s)}else this.onData(a.output.length===a.next_out?a.output:a.output.subarray(0,a.next_out));if(r!==pa||0!==o){if(r===ba)return r=ca.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,!0;if(0===a.avail_in)break}}return!0},za.prototype.onData=function(t){this.chunks.push(t)},za.prototype.onEnd=function(t){t===pa&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=he.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};const{Deflate:Ra,deflate:Sa,deflateRaw:Ea,gzip:Ua}=Se;var Da=Sa;const Aa={b:{u:DataView.prototype.getInt8,p:DataView.prototype.setInt8,bytes:1},B:{u:DataView.prototype.getUint8,p:DataView.prototype.setUint8,bytes:1},h:{u:DataView.prototype.getInt16,p:DataView.prototype.setInt16,bytes:2},H:{u:DataView.prototype.getUint16,p:DataView.prototype.setUint16,bytes:2},i:{u:DataView.prototype.getInt32,p:DataView.prototype.setInt32,bytes:4},I:{u:DataView.prototype.getUint32,p:DataView.prototype.setUint32,bytes:4},q:{u:DataView.prototype.getInt64,p:DataView.prototype.setInt64,bytes:8},Q:{u:DataView.prototype.getUint64,p:DataView.prototype.setUint64,bytes:8}},Ia=(t,...e)=>{let a=0;if(t.replace(/[<>]/,"").length!=e.length)throw"Pack format to Argument count mismatch";let i=[],s=!0;for(let i=0;i<t.length;i++)"<"==t[i]?s=!0:">"==t[i]?s=!1:(r(t[i],e[a]),a++);function r(t,e){if(!(t in Aa))throw"Unhandled character '"+t+"' in pack format";let a=Aa[t].bytes,r=new DataView(new ArrayBuffer(a));Aa[t].p.bind(r)(0,e,s);for(let t=0;t<a;t++)i.push(r.getUint8(t))}return i},Oa=(t,e)=>{let a=0,i=[],s=!0;for(let e of t)"<"==e?s=!0:">"==e?s=!1:r(e);function r(t){if(!(t in Aa))throw"Unhandled character '"+t+"' in unpack format";let r=Aa[t].bytes,n=new DataView(new ArrayBuffer(r));for(let t=0;t<r;t++)n.setUint8(t,255&e[a+t]);let o=Aa[t].u.bind(n);i.push(o(0,s)),a+=r}return i};class Fa extends EventTarget{constructor(t,e,a){super(),this.port=t,this.logger=e,this._parent=a,this.chipName=null,this._efuses=new Array(4).fill(0),this._flashsize=4194304,this.debug=!1,this.IS_STUB=!1,this.connected=!0,this.flashSize=null,this.state_DTR=!1}get _inputBuffer(){return this._parent?this._parent._inputBuffer:this.__inputBuffer}async initialize(){await this.hardReset(!0),this._parent||(this.__inputBuffer=[],this.readLoop()),await this.sync();let t=await this.readRegister(1073745920),e=w[t>>>0];if(void 0===e)throw new Error(`Unknown Chip: Hex: ${a(t>>>0,8).toLowerCase()} Number: ${t}`);this.chipName=e.name,this.chipFamily=e.family;let i=b(this.getChipFamily()).macFuse;for(let t=0;t<4;t++)this._efuses[t]=await this.readRegister(i+4*t);this.logger.log(`Chip type ${this.chipName}`)}async readLoop(){this.debug&&this.logger.debug("Starting read loop"),this._reader=this.port.readable.getReader();try{for(;;){const{value:t,done:e}=await this._reader.read();if(e){this._reader.releaseLock();break}t&&0!==t.length&&this._inputBuffer.push(...Array.from(t))}}catch(t){console.error("Read loop got disconnected")}this.connected=!1,this.dispatchEvent(new Event("disconnect")),this.logger.debug("Finished read loop")}sleep(t=100){return new Promise((e=>setTimeout(e,t)))}async setRTS(t){await this.port.setSignals({requestToSend:t}),await this.setDTR(this.state_DTR)}async setDTR(t){this.state_DTR=t,await this.port.setSignals({dataTerminalReady:t})}async hardReset(t=!1){this.logger.log("Try hard reset."),t?4097===this.port.getInfo().usbProductId?(await this.setRTS(!1),await this.setDTR(!1),await this.sleep(100),await this.setDTR(!0),await this.setRTS(!1),await this.sleep(100),await this.setRTS(!0),await this.setDTR(!1),await this.setRTS(!0),await this.sleep(100),await this.setRTS(!1),await this.setDTR(!1)):(await this.setDTR(!1),await this.setRTS(!0),await this.sleep(100),await this.setDTR(!0),await this.setRTS(!1),await this.sleep(50),await this.setDTR(!1)):(await this.setRTS(!0),await this.sleep(100),await this.setRTS(!1)),await new Promise((t=>setTimeout(t,1e3)))}macAddr(){let t,e=new Array(6).fill(0),a=this._efuses[0],i=this._efuses[1],s=this._efuses[2],r=this._efuses[3];if(this.chipFamily==o){if(0!=r)t=[r>>16&255,r>>8&255,255&r];else if(0==(i>>16&255))t=[24,254,52];else{if(1!=(i>>16&255))throw new Error("Couldnt determine OUI");t=[172,208,116]}e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=i>>8&255,e[4]=255&i,e[5]=a>>24&255}else if(this.chipFamily==l)e[0]=s>>8&255,e[1]=255&s,e[2]=i>>24&255,e[3]=i>>16&255,e[4]=i>>8&255,e[5]=255&i;else{if(this.chipFamily!=h&&this.chipFamily!=d&&this.chipFamily!=f&&this.chipFamily!=_&&this.chipFamily!=c&&this.chipFamily!=u)throw new Error("Unknown chip family");e[0]=i>>8&255,e[1]=255&i,e[2]=a>>24&255,e[3]=a>>16&255,e[4]=a>>8&255,e[5]=255&a}return e}async readRegister(t){this.debug&&this.logger.debug("Reading from Register "+a(t,8));let e=Ia("<I",t);await this.sendCommand(10,e);let[i,s]=await this.getResponse(10);return i}async checkCommand(t,e,i=0,s=3e3){s=Math.min(s,12e5),await this.sendCommand(t,e,i);let[r,n]=await this.getResponse(t,s);if(null===n)throw new Error("Didn't get enough status bytes");let w=0;if(this.IS_STUB||this.chipFamily==o?w=2:[l,h,d,f,_,c,u].includes(this.chipFamily)?w=4:[2,4].includes(n.length)&&(w=n.length),n.length<w)throw new Error("Didn't get enough status bytes");let g=n.slice(-w,n.length);if(n=n.slice(0,-w),this.debug&&(this.logger.debug("status",g),this.logger.debug("value",r),this.logger.debug("data",n)),1==g[0])throw 5==g[1]?new Error("Invalid (unsupported) command "+a(t)):new Error("Command failure error code "+a(g[1]));return[r,n]}async sendCommand(t,e,a=0){let i=(t=>{let e=[192];for(let a of t)219==a?e=e.concat([219,221]):192==a?e=e.concat([219,220]):e.push(a);return e.push(192),e})([...Ia("<BBHI",0,t,e.length,a),...e]);this.debug&&this.logger.debug(`Writing ${i.length} byte${1==i.length?"":"s"}:`,i),await this.writeToStream(i)}async readPacket(t){let s=null,r=!1,n=[];for(;;){let o=Date.now();for(n=[];Date.now()-o<t;){if(this._inputBuffer.length>0){n.push(this._inputBuffer.shift());break}await i(10)}if(0==n.length){throw new y("Timed out waiting for packet "+(null===s?"header":"content"))}this.debug&&this.logger.debug("Read "+n.length+" bytes: "+e(n));for(let t of n)if(null===s){if(192!=t)throw this.debug&&(this.logger.debug("Read invalid data: "+e(n)),this.logger.debug("Remaining data in serial buffer: "+e(this._inputBuffer))),new y("Invalid head of packet ("+a(t)+")");s=[]}else if(r)if(r=!1,220==t)s.push(192);else{if(221!=t)throw this.debug&&(this.logger.debug("Read invalid data: "+e(n)),this.logger.debug("Remaining data in serial buffer: "+e(this._inputBuffer))),new y("Invalid SLIP escape (0xdb, "+a(t)+")");s.push(219)}else if(219==t)r=!0;else{if(192==t)return this.debug&&this.logger.debug("Received full packet: "+e(s)),s;s.push(t)}}throw new y("Invalid state")}async getResponse(t,e=3e3){for(let i=0;i<100;i++){const i=await this.readPacket(e);if(i.length<8)continue;const[s,r,n,o]=Oa("<BBHI",i.slice(0,8));if(1!=s)continue;const l=i.slice(8);if(null==t||r==t)return[o,l];if(0!=l[0]&&5==l[1])throw this._inputBuffer.length=0,new Error(`Invalid (unsupported) command ${a(t)}`)}throw"Response doesn't match request"}checksum(t,e=239){for(let a of t)e^=a;return e}async setBaudrate(t){if(this.chipFamily==o)throw new Error("Changing baud rate is not supported on the ESP8266");this.logger.log("Attempting to change baud rate to "+t+"...");try{let e=Ia("<II",t,this.IS_STUB?r:0);await this.checkCommand(15,e)}catch(e){throw console.error(e),new Error(`Unable to change the baud rate to ${t}: No response from set baud rate command.`)}this._parent?await this._parent.reconfigurePort(t):await this.reconfigurePort(t)}async reconfigurePort(t){var e;try{await(null===(e=this._reader)||void 0===e?void 0:e.cancel()),await this.port.close(),await this.port.open({baudRate:t}),this.readLoop(),this.logger.log(`Changed baud rate to ${t}`)}catch(e){throw console.error(e),new Error(`Unable to change the baud rate to ${t}: ${e}`)}}async sync(){for(let t=0;t<5;t++){if(this._inputBuffer.length=0,await this._sync())return await i(100),!0;await i(100)}throw new Error("Couldn't sync to ESP. Try resetting.")}async _sync(){await this.sendCommand(8,n);for(let t=0;t<8;t++)try{let[t,e]=await this.getResponse(8,100);if(e.length>1&&0==e[0]&&0==e[1])return!0}catch(t){}return!1}getFlashWriteSize(){return this.IS_STUB?16384:1024}async flashData(t,e,i=0,s=!1){if(t.byteLength>=8){var r=Array.from(new Uint8Array(t,0,4));let e=r[0],i=r[2],s=r[3];this.logger.log(`Image header, Magic=${a(e)}, FlashMode=${a(i)}, FlashSizeFreq=${a(s)}`)}let n,o=t.byteLength,l=0,h=g;s?(n=Da(new Uint8Array(t),{level:9}).buffer,l=n.byteLength,this.logger.log(`Writing data with filesize: ${o}. Compressed Size: ${l}`),h=await this.flashDeflBegin(o,l,i)):(this.logger.log(`Writing data with filesize: ${o}`),n=t,await this.flashBegin(o,i));let d=[],f=0,_=0,c=0,u=Date.now(),w=this.getFlashWriteSize(),m=s?l:o;for(;m-c>0;)this.debug&&this.logger.log(`Writing at ${a(i+f*w,8)} `),m-c>=w?d=Array.from(new Uint8Array(n,c,w)):(d=Array.from(new Uint8Array(n,c,m-c)),s||(d=d.concat(new Array(w-d.length).fill(255)))),s?await this.flashDeflBlock(d,f,h):await this.flashBlock(d,f),f+=1,_+=s?Math.round(d.length*o/l):d.length,c+=w,e(Math.min(_,o),o);this.logger.log("Took "+(Date.now()-u)+"ms to write "+m+" bytes"),this.IS_STUB&&(await this.flashBegin(0,0),s?await this.flashDeflFinish():await this.flashFinish())}async flashBlock(t,e,a=3e3){await this.checkCommand(3,Ia("<IIII",t.length,e,0,0).concat(t),this.checksum(t),a)}async flashDeflBlock(t,e,a=3e3){await this.checkCommand(17,Ia("<IIII",t.length,e,0,0).concat(t),this.checksum(t),a)}async flashBegin(t=0,e=0,i=!1){let s,r,n=this.getFlashWriteSize();!this.IS_STUB&&[l,h,d,f,_,c,u].includes(this.chipFamily)&&await this.checkCommand(13,new Array(8).fill(0));let w,m=Math.floor((t+n-1)/n);s=this.chipFamily==o?this.getEraseSize(e,t):t,w=this.IS_STUB?g:p(3e4,t);let b=Date.now();return r=Ia("<IIII",s,m,n,e),this.chipFamily!=l&&this.chipFamily!=h&&this.chipFamily!=d&&this.chipFamily!=f&&this.chipFamily!=_&&this.chipFamily!=c&&this.chipFamily!=u||(r=r.concat(Ia("<I",i?1:0))),this.logger.log("Erase size "+s+", blocks "+m+", block size "+a(n,4)+", offset "+a(e,4)+", encrypted "+(i?"yes":"no")),await this.checkCommand(2,r,0,w),0==t||this.IS_STUB||this.logger.log("Took "+(Date.now()-b)+"ms to erase "+m+" bytes"),m}async flashDeflBegin(t=0,e=0,a=0,i=!1){let s,r=this.getFlashWriteSize(),n=Math.floor((e+r-1)/r),o=Math.floor((t+r-1)/r),l=0,h=0;return this.IS_STUB?(l=t,h=p(3e4,l)):(l=o*r,h=g),s=Ia("<IIII",l,n,r,a),await this.checkCommand(16,s,0,h),h}async flashFinish(){let t=Ia("<I",1);await this.checkCommand(4,t)}async flashDeflFinish(){let t=Ia("<I",1);await this.checkCommand(18,t)}getBootloaderOffset(){return b(this.getChipFamily()).flashOffs}async flashId(){return await this.runSpiFlashCommand(159,[],24)}getChipFamily(){return this._parent?this._parent.chipFamily:this.chipFamily}async writeRegister(t,e,a=4294967295,i=0,s=0){let r=Ia("<IIII",t,e,a,i);s>0&&r.concat(Ia("<IIII",b(this.getChipFamily()).uartDateReg,0,0,s)),await this.checkCommand(9,r)}async setDataLengths(t,e,a){if(-1!=t.mosiDlenOffs){let i=t.regBase+t.mosiDlenOffs,s=t.regBase+t.misoDlenOffs;e>0&&await this.writeRegister(i,e-1),a>0&&await this.writeRegister(s,a-1)}else{let i=t.regBase+t.usr1Offs,s=(0==a?0:a-1)<<8|(0==e?0:e-1)<<17;await this.writeRegister(i,s)}}async waitDone(t,e){for(let a=0;a<10;a++){if(0==(await this.readRegister(t)&e))return}throw Error("SPI command did not complete in time")}async runSpiFlashCommand(t,e,i=0){let s=b(this.getChipFamily()),r=s.regBase,n=r,o=r+s.usrOffs,l=r+s.usr2Offs,h=r+s.w0Offs,d=1<<18;if(i>32)throw new Error("Reading more than 32 bits back from a SPI flash operation is unsupported");if(e.length>64)throw new Error("Writing more than 64 bytes of data with one SPI command is unsupported");let f=8*e.length,_=await this.readRegister(o),c=await this.readRegister(l),u=1<<31;if(i>0&&(u|=268435456),f>0&&(u|=134217728),await this.setDataLengths(s,f,i),await this.writeRegister(o,u),await this.writeRegister(l,7<<28|t),0==f)await this.writeRegister(h,0);else{e.concat(new Array(e.length%4).fill(0));let t=Oa("I".repeat(Math.floor(e.length/4)),e),i=h;this.logger.debug(`Words Length: ${t.length}`);for(const e of t)this.logger.debug(`Writing word ${a(e)} to register offset ${a(i)}`),await this.writeRegister(i,e),i+=4}await this.writeRegister(n,d),await this.waitDone(n,d);let w=await this.readRegister(h);return await this.writeRegister(o,_),await this.writeRegister(l,c),w}async detectFlashSize(){this.logger.log("Detecting Flash Size");let t=await this.flashId(),e=255&t,i=t>>16&255;this.logger.log(`FlashId: ${a(t)}`),this.logger.log(`Flash Manufacturer: ${e.toString(16)}`),this.logger.log(`Flash Device: ${(t>>8&255).toString(16)}${i.toString(16)}`),this.flashSize=s[i],this.logger.log(`Auto-detected Flash size: ${this.flashSize}`)}getEraseSize(t,e){let a=4096,i=Math.floor((e+a-1)/a),s=16-Math.floor(t/a)%16;return i<s&&(s=i),i<2*s?Math.floor((i+1)/2*a):(i-s)*a}async memBegin(t,e,a,i){return await this.checkCommand(5,Ia("<IIII",t,e,a,i))}async memBlock(t,e){return await this.checkCommand(7,Ia("<IIII",t.length,e,0,0).concat(t),this.checksum(t))}async memFinish(t=0){let e=this.IS_STUB?g:500,a=Ia("<II",0==t?1:0,t);return await this.checkCommand(6,a,0,e)}async runStub(){const t=await k(this.chipFamily);let e,a=2048;this.logger.log("Uploading stub...");for(let e of["text","data"])if(Object.keys(t).includes(e)){let i=t[e+"_start"],s=t[e].length,r=Math.floor((s+a-1)/a);await this.memBegin(s,r,a,i);for(let i of Array(r).keys()){let r=i*a,n=r+a;n>s&&(n=s),await this.memBlock(t[e].slice(r,n),i)}}this.logger.log("Running stub..."),await this.memFinish(t.entry);const i=await this.readPacket(500);if(e=String.fromCharCode(...i),"OHAI"!=e)throw new Error("Failed to start stub. Unexpected response: "+e);this.logger.log("Stub is now running...");const s=new Ba(this.port,this.logger,this);return await s.detectFlashSize(),s}async writeToStream(t){const e=this.port.writable.getWriter();await e.write(new Uint8Array(t));try{e.releaseLock()}catch(t){console.error("Ignoring release lock error",t)}}async disconnect(){this._parent?await this._parent.disconnect():(await this.port.writable.getWriter().close(),await new Promise((t=>{this._reader||t(void 0),this.addEventListener("disconnect",t,{once:!0}),this._reader.cancel()})),this.connected=!1)}}class Ba extends Fa{constructor(){super(...arguments),this.IS_STUB=!0}async memBegin(t,e,i,s){let r=await k(this.chipFamily),n=s,o=s+t;console.log(n,o),console.log(r.data_start,r.data.length,r.text_start,r.text.length);for(let[t,e]of[[r.data_start,r.data_start+r.data.length],[r.text_start,r.text_start+r.text.length]])if(n<e&&o>t)throw new Error("Software loader is resident at "+a(t,8)+"-"+a(e,8)+". Can't load binary at overlapping address range "+a(n,8)+"-"+a(o,8)+". Try changing the binary loading address.")}async eraseFlash(){await this.checkCommand(208,[],0,m)}}const Ta=async t=>{const e=await navigator.serial.requestPort();return t.log("Connecting..."),await e.open({baudRate:r}),t.log("Connected successfully."),new Fa(e,t)};export{l as CHIP_FAMILY_ESP32,f as CHIP_FAMILY_ESP32C2,_ as CHIP_FAMILY_ESP32C3,c as CHIP_FAMILY_ESP32C6,u as CHIP_FAMILY_ESP32H2,h as CHIP_FAMILY_ESP32S2,d as CHIP_FAMILY_ESP32S3,o as CHIP_FAMILY_ESP8266,Fa as ESPLoader,Ta as connect};
|
package/js/script.js
CHANGED