UNPKG

@bugspotter/sdk

Version:

Professional bug reporting SDK with screenshots, session replay, and automatic error capture for web applications

2 lines 185 kB
/*! For license information please see bugspotter.min.js.LICENSE.txt */ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.BugSpotter=e():t.BugSpotter=e()}(this,()=>(()=>{"use strict";var t={d:(e,n)=>{for(var i in n)t.o(n,i)&&!t.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:n[i]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)},e={};t.d(e,{BugSpotter:()=>Xs});const n=(()=>{let t=0;return()=>(t+=1,`u${`0000${(Math.random()*36**4|0).toString(36)}`.slice(-4)}${t}`)})();function i(t){const e=[];for(let n=0,i=t.length;n<i;n++)e.push(t[n]);return e}let r=null;function s(t={}){return r||(t.includeStyleProperties?(r=t.includeStyleProperties,r):(r=i(window.getComputedStyle(document.documentElement)),r))}function o(t,e){const n=(t.ownerDocument.defaultView||window).getComputedStyle(t).getPropertyValue(e);return n?parseFloat(n.replace("px","")):0}function a(t,e={}){return{width:e.width||function(t){const e=o(t,"border-left-width"),n=o(t,"border-right-width");return t.clientWidth+e+n}(t),height:e.height||function(t){const e=o(t,"border-top-width"),n=o(t,"border-bottom-width");return t.clientHeight+e+n}(t)}}const l=16384;function c(t){return new Promise((e,n)=>{const i=new Image;i.onload=()=>{i.decode().then(()=>{requestAnimationFrame(()=>e(i))})},i.onerror=n,i.crossOrigin="anonymous",i.decoding="async",i.src=t})}const d=(t,e)=>{if(t instanceof e)return!0;const n=Object.getPrototypeOf(t);return null!==n&&(n.constructor.name===e.name||d(n,e))};function h(t,e,i,r){const o=window.getComputedStyle(t,i),a=o.getPropertyValue("content");if(""===a||"none"===a)return;const l=n();try{e.className=`${e.className} ${l}`}catch(t){return}const c=document.createElement("style");c.appendChild(function(t,e,n,i){const r=`.${t}:${e}`,o=n.cssText?function(t){const e=t.getPropertyValue("content");return`${t.cssText} content: '${e.replace(/'|"/g,"")}';`}(n):function(t,e){return s(e).map(e=>`${e}: ${t.getPropertyValue(e)}${t.getPropertyPriority(e)?" !important":""};`).join(" ")}(n,i);return document.createTextNode(`${r}{${o}}`)}(l,i,o,r)),e.appendChild(c)}const u="application/font-woff",g="image/jpeg",p={woff:u,woff2:u,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:g,jpeg:g,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp"};function m(t){const e=function(t){const e=/\.([^./]*?)$/g.exec(t);return e?e[1]:""}(t).toLowerCase();return p[e]||""}function f(t){return-1!==t.search(/^(data:)/)}function y(t,e){return`data:${e};base64,${t}`}async function b(t,e,n){const i=await fetch(t,e);if(404===i.status)throw new Error(`Resource "${i.url}" not found`);const r=await i.blob();return new Promise((t,e)=>{const s=new FileReader;s.onerror=e,s.onloadend=()=>{try{t(n({res:i,result:s.result}))}catch(t){e(t)}},s.readAsDataURL(r)})}const w={};async function v(t,e,n){const i=function(t,e,n){let i=t.replace(/\?.*/,"");return n&&(i=t),/ttf|otf|eot|woff2?/i.test(i)&&(i=i.replace(/.*\//,"")),e?`[${e}]${i}`:i}(t,e,n.includeQueryParams);if(null!=w[i])return w[i];let r;n.cacheBust&&(t+=(/\?/.test(t)?"&":"?")+(new Date).getTime());try{const i=await b(t,n.fetchRequestInit,({res:t,result:n})=>(e||(e=t.headers.get("Content-Type")||""),function(t){return t.split(/,/)[1]}(n)));r=y(i,e)}catch(e){r=n.imagePlaceholder||"";let i=`Failed to fetch resource: ${t}`;e&&(i="string"==typeof e?e:e.message),i&&console.warn(i)}return w[i]=r,r}const C=t=>null!=t.tagName&&"SLOT"===t.tagName.toUpperCase(),I=t=>null!=t.tagName&&"SVG"===t.tagName.toUpperCase();async function _(t,e,n){return n||!e.filter||e.filter(t)?Promise.resolve(t).then(t=>async function(t,e){return d(t,HTMLCanvasElement)?async function(t){const e=t.toDataURL();return"data:,"===e?t.cloneNode(!1):c(e)}(t):d(t,HTMLVideoElement)?async function(t,e){if(t.currentSrc){const e=document.createElement("canvas"),n=e.getContext("2d");return e.width=t.clientWidth,e.height=t.clientHeight,null==n||n.drawImage(t,0,0,e.width,e.height),c(e.toDataURL())}const n=t.poster,i=m(n);return c(await v(n,i,e))}(t,e):d(t,HTMLIFrameElement)?async function(t,e){var n;try{if(null===(n=null==t?void 0:t.contentDocument)||void 0===n?void 0:n.body)return await _(t.contentDocument.body,e,!0)}catch(t){}return t.cloneNode(!1)}(t,e):t.cloneNode(I(t))}(t,e)).then(n=>async function(t,e,n){var r,s;if(I(e))return e;let o=[];return o=C(t)&&t.assignedNodes?i(t.assignedNodes()):d(t,HTMLIFrameElement)&&(null===(r=t.contentDocument)||void 0===r?void 0:r.body)?i(t.contentDocument.body.childNodes):i((null!==(s=t.shadowRoot)&&void 0!==s?s:t).childNodes),0===o.length||d(t,HTMLVideoElement)||await o.reduce((t,i)=>t.then(()=>_(i,n)).then(t=>{t&&e.appendChild(t)}),Promise.resolve()),e}(t,n,e)).then(n=>function(t,e,n){return d(e,Element)&&(function(t,e,n){const i=e.style;if(!i)return;const r=window.getComputedStyle(t);r.cssText?(i.cssText=r.cssText,i.transformOrigin=r.transformOrigin):s(n).forEach(n=>{let s=r.getPropertyValue(n);if("font-size"===n&&s.endsWith("px")){const t=Math.floor(parseFloat(s.substring(0,s.length-2)))-.1;s=`${t}px`}d(t,HTMLIFrameElement)&&"display"===n&&"inline"===s&&(s="block"),"d"===n&&e.getAttribute("d")&&(s=`path(${e.getAttribute("d")})`),i.setProperty(n,s,r.getPropertyPriority(n))})}(t,e,n),function(t,e,n){h(t,e,":before",n),h(t,e,":after",n)}(t,e,n),function(t,e){d(t,HTMLTextAreaElement)&&(e.innerHTML=t.value),d(t,HTMLInputElement)&&e.setAttribute("value",t.value)}(t,e),function(t,e){if(d(t,HTMLSelectElement)){const n=e,i=Array.from(n.children).find(e=>t.value===e.getAttribute("value"));i&&i.setAttribute("selected","")}}(t,e)),e}(t,n,e)).then(t=>async function(t,e){const n=t.querySelectorAll?t.querySelectorAll("use"):[];if(0===n.length)return t;const i={};for(let r=0;r<n.length;r++){const s=n[r].getAttribute("xlink:href");if(s){const n=t.querySelector(s),r=document.querySelector(s);n||!r||i[s]||(i[s]=await _(r,e,!0))}}const r=Object.values(i);if(r.length){const e="http://www.w3.org/1999/xhtml",n=document.createElementNS(e,"svg");n.setAttribute("xmlns",e),n.style.position="absolute",n.style.width="0",n.style.height="0",n.style.overflow="hidden",n.style.display="none";const i=document.createElementNS(e,"defs");n.appendChild(i);for(let t=0;t<r.length;t++)i.appendChild(r[t]);t.appendChild(n)}return t}(t,e)):null}const S=/url\((['"]?)([^'"]+?)\1\)/g,k=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,x=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;function A(t){return-1!==t.search(S)}async function E(t,e,n){if(!A(t))return t;const i=function(t,{preferredFontFormat:e}){return e?t.replace(x,t=>{for(;;){const[n,,i]=k.exec(t)||[];if(!i)return"";if(i===e)return`src: ${n};`}}):t}(t,n),r=function(t){const e=[];return t.replace(S,(t,n,i)=>(e.push(i),t)),e.filter(t=>!f(t))}(i);return r.reduce((t,i)=>t.then(t=>async function(t,e,n,i,r){try{const s=n?function(t,e){if(t.match(/^[a-z]+:\/\//i))return t;if(t.match(/^\/\//))return window.location.protocol+t;if(t.match(/^[a-z]+:/i))return t;const n=document.implementation.createHTMLDocument(),i=n.createElement("base"),r=n.createElement("a");return n.head.appendChild(i),n.body.appendChild(r),e&&(i.href=e),r.href=t,r.href}(e,n):e,o=m(e);let a;return a=r?y(await r(s),o):await v(s,o,i),t.replace(function(t){const e=t.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return new RegExp(`(url\\(['"]?)(${e})(['"]?\\))`,"g")}(e),`$1${a}$3`)}catch(t){}return t}(t,i,e,n)),Promise.resolve(i))}async function R(t,e,n){var i;const r=null===(i=e.style)||void 0===i?void 0:i.getPropertyValue(t);if(r){const i=await E(r,null,n);return e.style.setProperty(t,i,e.style.getPropertyPriority(t)),!0}return!1}async function M(t,e){d(t,Element)&&(await async function(t,e){await R("background",t,e)||await R("background-image",t,e),await R("mask",t,e)||await R("-webkit-mask",t,e)||await R("mask-image",t,e)||await R("-webkit-mask-image",t,e)}(t,e),await async function(t,e){const n=d(t,HTMLImageElement);if((!n||f(t.src))&&(!d(t,SVGImageElement)||f(t.href.baseVal)))return;const i=n?t.src:t.href.baseVal,r=await v(i,m(i),e);await new Promise((i,s)=>{t.onload=i,t.onerror=e.onImageErrorHandler?(...t)=>{try{i(e.onImageErrorHandler(...t))}catch(t){s(t)}}:s;const o=t;o.decode&&(o.decode=i),"lazy"===o.loading&&(o.loading="eager"),n?(t.srcset="",t.src=r):t.href.baseVal=r})}(t,e),await async function(t,e){const n=i(t.childNodes).map(t=>M(t,e));await Promise.all(n).then(()=>t)}(t,e))}const T={};async function z(t){let e=T[t];if(null!=e)return e;const n=await fetch(t);return e={url:t,cssText:await n.text()},T[t]=e,e}async function O(t,e){let n=t.cssText;const i=/url\(["']?([^"')]+)["']?\)/g,r=(n.match(/url\([^)]+\)/g)||[]).map(async r=>{let s=r.replace(i,"$1");return s.startsWith("https://")||(s=new URL(s,t.url).href),b(s,e.fetchRequestInit,({result:t})=>(n=n.replace(r,`url(${t})`),[r,t]))});return Promise.all(r).then(()=>n)}function N(t){if(null==t)return[];const e=[];let n=t.replace(/(\/\*[\s\S]*?\*\/)/gi,"");const i=new RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})","gi");for(;;){const t=i.exec(n);if(null===t)break;e.push(t[0])}n=n.replace(i,"");const r=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,s=new RegExp("((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})","gi");for(;;){let t=r.exec(n);if(null===t){if(t=s.exec(n),null===t)break;r.lastIndex=s.lastIndex}else s.lastIndex=r.lastIndex;e.push(t[0])}return e}function D(t){return t.trim().replace(/["']/g,"")}async function L(t,e){const n=await async function(t,e){if(null==t.ownerDocument)throw new Error("Provided element is not within a Document");const n=i(t.ownerDocument.styleSheets),r=await async function(t,e){const n=[],r=[];return t.forEach(n=>{if("cssRules"in n)try{i(n.cssRules||[]).forEach((t,i)=>{if(t.type===CSSRule.IMPORT_RULE){let s=i+1;const o=z(t.href).then(t=>O(t,e)).then(t=>N(t).forEach(t=>{try{n.insertRule(t,t.startsWith("@import")?s+=1:n.cssRules.length)}catch(e){console.error("Error inserting rule from remote css",{rule:t,error:e})}})).catch(t=>{console.error("Error loading remote css",t.toString())});r.push(o)}})}catch(i){const s=t.find(t=>null==t.href)||document.styleSheets[0];null!=n.href&&r.push(z(n.href).then(t=>O(t,e)).then(t=>N(t).forEach(t=>{s.insertRule(t,s.cssRules.length)})).catch(t=>{console.error("Error loading remote stylesheet",t)})),console.error("Error inlining remote css file",i)}}),Promise.all(r).then(()=>(t.forEach(t=>{if("cssRules"in t)try{i(t.cssRules||[]).forEach(t=>{n.push(t)})}catch(e){console.error(`Error while reading CSS rules from ${t.href}`,e)}}),n))}(n,e);return function(t){return t.filter(t=>t.type===CSSRule.FONT_FACE_RULE).filter(t=>A(t.style.getPropertyValue("src")))}(r)}(t,e),r=function(t){const e=new Set;return function t(n){(n.style.fontFamily||getComputedStyle(n).fontFamily).split(",").forEach(t=>{e.add(D(t))}),Array.from(n.children).forEach(e=>{e instanceof HTMLElement&&t(e)})}(t),e}(t);return(await Promise.all(n.filter(t=>r.has(D(t.style.fontFamily))).map(t=>{const n=t.parentStyleSheet?t.parentStyleSheet.href:null;return E(t.cssText,n,e)}))).join("\n")}async function F(t,e={}){const{width:n,height:i}=a(t,e),r=await _(t,e,!0);return await async function(t,e){const n=null!=e.fontEmbedCSS?e.fontEmbedCSS:e.skipFonts?null:await L(t,e);if(n){const e=document.createElement("style"),i=document.createTextNode(n);e.appendChild(i),t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e)}}(r,e),await M(r,e),function(t,e){const{style:n}=t;e.backgroundColor&&(n.backgroundColor=e.backgroundColor),e.width&&(n.width=`${e.width}px`),e.height&&(n.height=`${e.height}px`);const i=e.style;null!=i&&Object.keys(i).forEach(t=>{n[t]=i[t]})}(r,e),await async function(t,e,n){const i="http://www.w3.org/2000/svg",r=document.createElementNS(i,"svg"),s=document.createElementNS(i,"foreignObject");return r.setAttribute("width",`${e}`),r.setAttribute("height",`${n}`),r.setAttribute("viewBox",`0 0 ${e} ${n}`),s.setAttribute("width","100%"),s.setAttribute("height","100%"),s.setAttribute("x","0"),s.setAttribute("y","0"),s.setAttribute("externalResourcesRequired","true"),r.appendChild(s),s.appendChild(t),async function(t){return Promise.resolve().then(()=>(new XMLSerializer).serializeToString(t)).then(encodeURIComponent).then(t=>`data:image/svg+xml;charset=utf-8,${t}`)}(r)}(r,n,i)}const B={debug:0,log:1,warn:2,error:3,none:4};const U=new class{constructor(t={}){var e,n,i;this.enabled=null===(e=t.enabled)||void 0===e||e,this.level=null!==(n=t.level)&&void 0!==n?n:"log",this.prefix=null!==(i=t.prefix)&&void 0!==i?i:"[BugSpotter]"}shouldLog(t){return!!this.enabled&&B[t]>=B[this.level]}formatMessage(t){return this.prefix?`${this.prefix} ${t}`:t}debug(t,...e){this.shouldLog("debug")&&console.debug(this.formatMessage(t),...e)}log(t,...e){this.shouldLog("log")&&console.log(this.formatMessage(t),...e)}warn(t,...e){this.shouldLog("warn")&&console.warn(this.formatMessage(t),...e)}error(t,...e){this.shouldLog("error")&&console.error(this.formatMessage(t),...e)}configure(t){void 0!==t.enabled&&(this.enabled=t.enabled),void 0!==t.level&&(this.level=t.level),void 0!==t.prefix&&(this.prefix=t.prefix)}};function Z(){return U}const W=Z();class P{constructor(t){this.options=t,this.sanitizer=t.sanitizer}handleError(t,e){const n=e instanceof Error?e:new Error(String(e));W.error(`${this.constructor.name} ${t}:`,n)}}function V(t){let e=t.length;for(;--e>=0;)t[e]=0}const G=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]),H=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]),j=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),q=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),K=new Array(576);V(K);const $=new Array(60);V($);const Y=new Array(512);V(Y);const Q=new Array(256);V(Q);const J=new Array(29);V(J);const X=new Array(30);function tt(t,e,n,i,r){this.static_tree=t,this.extra_bits=e,this.extra_base=n,this.elems=i,this.max_length=r,this.has_stree=t&&t.length}let et,nt,it;function rt(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}V(X);const st=t=>t<256?Y[t]:Y[256+(t>>>7)],ot=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},at=(t,e,n)=>{t.bi_valid>16-n?(t.bi_buf|=e<<t.bi_valid&65535,ot(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=n-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=n)},lt=(t,e,n)=>{at(t,n[2*e],n[2*e+1])},ct=(t,e)=>{let n=0;do{n|=1&t,t>>>=1,n<<=1}while(--e>0);return n>>>1},dt=(t,e,n)=>{const i=new Array(16);let r,s,o=0;for(r=1;r<=15;r++)o=o+n[r-1]<<1,i[r]=o;for(s=0;s<=e;s++){let e=t[2*s+1];0!==e&&(t[2*s]=ct(i[e]++,e))}},ht=t=>{let e;for(e=0;e<286;e++)t.dyn_ltree[2*e]=0;for(e=0;e<30;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},ut=t=>{t.bi_valid>8?ot(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},gt=(t,e,n,i)=>{const r=2*e,s=2*n;return t[r]<t[s]||t[r]===t[s]&&i[e]<=i[n]},pt=(t,e,n)=>{const i=t.heap[n];let r=n<<1;for(;r<=t.heap_len&&(r<t.heap_len&&gt(e,t.heap[r+1],t.heap[r],t.depth)&&r++,!gt(e,i,t.heap[r],t.depth));)t.heap[n]=t.heap[r],n=r,r<<=1;t.heap[n]=i},mt=(t,e,n)=>{let i,r,s,o,a=0;if(0!==t.sym_next)do{i=255&t.pending_buf[t.sym_buf+a++],i+=(255&t.pending_buf[t.sym_buf+a++])<<8,r=t.pending_buf[t.sym_buf+a++],0===i?lt(t,r,e):(s=Q[r],lt(t,s+256+1,e),o=G[s],0!==o&&(r-=J[s],at(t,r,o)),i--,s=st(i),lt(t,s,n),o=H[s],0!==o&&(i-=X[s],at(t,i,o)))}while(a<t.sym_next);lt(t,256,e)},ft=(t,e)=>{const n=e.dyn_tree,i=e.stat_desc.static_tree,r=e.stat_desc.has_stree,s=e.stat_desc.elems;let o,a,l,c=-1;for(t.heap_len=0,t.heap_max=573,o=0;o<s;o++)0!==n[2*o]?(t.heap[++t.heap_len]=c=o,t.depth[o]=0):n[2*o+1]=0;for(;t.heap_len<2;)l=t.heap[++t.heap_len]=c<2?++c:0,n[2*l]=1,t.depth[l]=0,t.opt_len--,r&&(t.static_len-=i[2*l+1]);for(e.max_code=c,o=t.heap_len>>1;o>=1;o--)pt(t,n,o);l=s;do{o=t.heap[1],t.heap[1]=t.heap[t.heap_len--],pt(t,n,1),a=t.heap[1],t.heap[--t.heap_max]=o,t.heap[--t.heap_max]=a,n[2*l]=n[2*o]+n[2*a],t.depth[l]=(t.depth[o]>=t.depth[a]?t.depth[o]:t.depth[a])+1,n[2*o+1]=n[2*a+1]=l,t.heap[1]=l++,pt(t,n,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const n=e.dyn_tree,i=e.max_code,r=e.stat_desc.static_tree,s=e.stat_desc.has_stree,o=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,l=e.stat_desc.max_length;let c,d,h,u,g,p,m=0;for(u=0;u<=15;u++)t.bl_count[u]=0;for(n[2*t.heap[t.heap_max]+1]=0,c=t.heap_max+1;c<573;c++)d=t.heap[c],u=n[2*n[2*d+1]+1]+1,u>l&&(u=l,m++),n[2*d+1]=u,d>i||(t.bl_count[u]++,g=0,d>=a&&(g=o[d-a]),p=n[2*d],t.opt_len+=p*(u+g),s&&(t.static_len+=p*(r[2*d+1]+g)));if(0!==m){do{for(u=l-1;0===t.bl_count[u];)u--;t.bl_count[u]--,t.bl_count[u+1]+=2,t.bl_count[l]--,m-=2}while(m>0);for(u=l;0!==u;u--)for(d=t.bl_count[u];0!==d;)h=t.heap[--c],h>i||(n[2*h+1]!==u&&(t.opt_len+=(u-n[2*h+1])*n[2*h],n[2*h+1]=u),d--)}})(t,e),dt(n,c,t.bl_count)},yt=(t,e,n)=>{let i,r,s=-1,o=e[1],a=0,l=7,c=4;for(0===o&&(l=138,c=3),e[2*(n+1)+1]=65535,i=0;i<=n;i++)r=o,o=e[2*(i+1)+1],++a<l&&r===o||(a<c?t.bl_tree[2*r]+=a:0!==r?(r!==s&&t.bl_tree[2*r]++,t.bl_tree[32]++):a<=10?t.bl_tree[34]++:t.bl_tree[36]++,a=0,s=r,0===o?(l=138,c=3):r===o?(l=6,c=3):(l=7,c=4))},bt=(t,e,n)=>{let i,r,s=-1,o=e[1],a=0,l=7,c=4;for(0===o&&(l=138,c=3),i=0;i<=n;i++)if(r=o,o=e[2*(i+1)+1],!(++a<l&&r===o)){if(a<c)do{lt(t,r,t.bl_tree)}while(0!==--a);else 0!==r?(r!==s&&(lt(t,r,t.bl_tree),a--),lt(t,16,t.bl_tree),at(t,a-3,2)):a<=10?(lt(t,17,t.bl_tree),at(t,a-3,3)):(lt(t,18,t.bl_tree),at(t,a-11,7));a=0,s=r,0===o?(l=138,c=3):r===o?(l=6,c=3):(l=7,c=4)}};let wt=!1;const vt=(t,e,n,i)=>{at(t,0+(i?1:0),3),ut(t),ot(t,n),ot(t,~n),n&&t.pending_buf.set(t.window.subarray(e,e+n),t.pending),t.pending+=n};var Ct={_tr_init:t=>{wt||((()=>{let t,e,n,i,r;const s=new Array(16);for(n=0,i=0;i<28;i++)for(J[i]=n,t=0;t<1<<G[i];t++)Q[n++]=i;for(Q[n-1]=i,r=0,i=0;i<16;i++)for(X[i]=r,t=0;t<1<<H[i];t++)Y[r++]=i;for(r>>=7;i<30;i++)for(X[i]=r<<7,t=0;t<1<<H[i]-7;t++)Y[256+r++]=i;for(e=0;e<=15;e++)s[e]=0;for(t=0;t<=143;)K[2*t+1]=8,t++,s[8]++;for(;t<=255;)K[2*t+1]=9,t++,s[9]++;for(;t<=279;)K[2*t+1]=7,t++,s[7]++;for(;t<=287;)K[2*t+1]=8,t++,s[8]++;for(dt(K,287,s),t=0;t<30;t++)$[2*t+1]=5,$[2*t]=ct(t,5);et=new tt(K,G,257,286,15),nt=new tt($,H,0,30,15),it=new tt(new Array(0),j,0,19,7)})(),wt=!0),t.l_desc=new rt(t.dyn_ltree,et),t.d_desc=new rt(t.dyn_dtree,nt),t.bl_desc=new rt(t.bl_tree,it),t.bi_buf=0,t.bi_valid=0,ht(t)},_tr_stored_block:vt,_tr_flush_block:(t,e,n,i)=>{let r,s,o=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,n=4093624447;for(e=0;e<=31;e++,n>>>=1)if(1&n&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<256;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),ft(t,t.l_desc),ft(t,t.d_desc),o=(t=>{let e;for(yt(t,t.dyn_ltree,t.l_desc.max_code),yt(t,t.dyn_dtree,t.d_desc.max_code),ft(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*q[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),r=t.opt_len+3+7>>>3,s=t.static_len+3+7>>>3,s<=r&&(r=s)):r=s=n+5,n+4<=r&&-1!==e?vt(t,e,n,i):4===t.strategy||s===r?(at(t,2+(i?1:0),3),mt(t,K,$)):(at(t,4+(i?1:0),3),((t,e,n,i)=>{let r;for(at(t,e-257,5),at(t,n-1,5),at(t,i-4,4),r=0;r<i;r++)at(t,t.bl_tree[2*q[r]+1],3);bt(t,t.dyn_ltree,e-1),bt(t,t.dyn_dtree,n-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,o+1),mt(t,t.dyn_ltree,t.dyn_dtree)),ht(t),i&&ut(t)},_tr_tally:(t,e,n)=>(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++]=n,0===e?t.dyn_ltree[2*n]++:(t.matches++,e--,t.dyn_ltree[2*(Q[n]+256+1)]++,t.dyn_dtree[2*st(e)]++),t.sym_next===t.sym_end),_tr_align:t=>{at(t,2,3),lt(t,256,K),(t=>{16===t.bi_valid?(ot(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)}},It=(t,e,n,i)=>{let r=65535&t,s=t>>>16&65535,o=0;for(;0!==n;){o=n>2e3?2e3:n,n-=o;do{r=r+e[i++]|0,s=s+r|0}while(--o);r%=65521,s%=65521}return r|s<<16};const _t=new Uint32Array((()=>{let t,e=[];for(var n=0;n<256;n++){t=n;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[n]=t}return e})());var St=(t,e,n,i)=>{const r=_t,s=i+n;t^=-1;for(let n=i;n<s;n++)t=t>>>8^r[255&(t^e[n])];return-1^t},kt={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"},xt={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:At,_tr_stored_block:Et,_tr_flush_block:Rt,_tr_tally:Mt,_tr_align:Tt}=Ct,{Z_NO_FLUSH:zt,Z_PARTIAL_FLUSH:Ot,Z_FULL_FLUSH:Nt,Z_FINISH:Dt,Z_BLOCK:Lt,Z_OK:Ft,Z_STREAM_END:Bt,Z_STREAM_ERROR:Ut,Z_DATA_ERROR:Zt,Z_BUF_ERROR:Wt,Z_DEFAULT_COMPRESSION:Pt,Z_FILTERED:Vt,Z_HUFFMAN_ONLY:Gt,Z_RLE:Ht,Z_FIXED:jt,Z_DEFAULT_STRATEGY:qt,Z_UNKNOWN:Kt,Z_DEFLATED:$t}=xt,Yt=258,Qt=262,Jt=42,Xt=113,te=666,ee=(t,e)=>(t.msg=kt[e],e),ne=t=>2*t-(t>4?9:0),ie=t=>{let e=t.length;for(;--e>=0;)t[e]=0},re=t=>{let e,n,i,r=t.w_size;e=t.hash_size,i=e;do{n=t.head[--i],t.head[i]=n>=r?n-r:0}while(--e);e=r,i=e;do{n=t.prev[--i],t.prev[i]=n>=r?n-r:0}while(--e)};let se=(t,e,n)=>(e<<t.hash_shift^n)&t.hash_mask;const oe=t=>{const e=t.state;let n=e.pending;n>t.avail_out&&(n=t.avail_out),0!==n&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+n),t.next_out),t.next_out+=n,e.pending_out+=n,t.total_out+=n,t.avail_out-=n,e.pending-=n,0===e.pending&&(e.pending_out=0))},ae=(t,e)=>{Rt(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,oe(t.strm)},le=(t,e)=>{t.pending_buf[t.pending++]=e},ce=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},de=(t,e,n,i)=>{let r=t.avail_in;return r>i&&(r=i),0===r?0:(t.avail_in-=r,e.set(t.input.subarray(t.next_in,t.next_in+r),n),1===t.state.wrap?t.adler=It(t.adler,e,r,n):2===t.state.wrap&&(t.adler=St(t.adler,e,r,n)),t.next_in+=r,t.total_in+=r,r)},he=(t,e)=>{let n,i,r=t.max_chain_length,s=t.strstart,o=t.prev_length,a=t.nice_match;const l=t.strstart>t.w_size-Qt?t.strstart-(t.w_size-Qt):0,c=t.window,d=t.w_mask,h=t.prev,u=t.strstart+Yt;let g=c[s+o-1],p=c[s+o];t.prev_length>=t.good_match&&(r>>=2),a>t.lookahead&&(a=t.lookahead);do{if(n=e,c[n+o]===p&&c[n+o-1]===g&&c[n]===c[s]&&c[++n]===c[s+1]){s+=2,n++;do{}while(c[++s]===c[++n]&&c[++s]===c[++n]&&c[++s]===c[++n]&&c[++s]===c[++n]&&c[++s]===c[++n]&&c[++s]===c[++n]&&c[++s]===c[++n]&&c[++s]===c[++n]&&s<u);if(i=Yt-(u-s),s=u-Yt,i>o){if(t.match_start=e,o=i,i>=a)break;g=c[s+o-1],p=c[s+o]}}}while((e=h[e&d])>l&&0!==--r);return o<=t.lookahead?o:t.lookahead},ue=t=>{const e=t.w_size;let n,i,r;do{if(i=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-Qt)&&(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),re(t),i+=e),0===t.strm.avail_in)break;if(n=de(t.strm,t.window,t.strstart+t.lookahead,i),t.lookahead+=n,t.lookahead+t.insert>=3)for(r=t.strstart-t.insert,t.ins_h=t.window[r],t.ins_h=se(t,t.ins_h,t.window[r+1]);t.insert&&(t.ins_h=se(t,t.ins_h,t.window[r+3-1]),t.prev[r&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=r,r++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<Qt&&0!==t.strm.avail_in)},ge=(t,e)=>{let n,i,r,s=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,o=0,a=t.strm.avail_in;do{if(n=65535,r=t.bi_valid+42>>3,t.strm.avail_out<r)break;if(r=t.strm.avail_out-r,i=t.strstart-t.block_start,n>i+t.strm.avail_in&&(n=i+t.strm.avail_in),n>r&&(n=r),n<s&&(0===n&&e!==Dt||e===zt||n!==i+t.strm.avail_in))break;o=e===Dt&&n===i+t.strm.avail_in?1:0,Et(t,0,0,o),t.pending_buf[t.pending-4]=n,t.pending_buf[t.pending-3]=n>>8,t.pending_buf[t.pending-2]=~n,t.pending_buf[t.pending-1]=~n>>8,oe(t.strm),i&&(i>n&&(i=n),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,n-=i),n&&(de(t.strm,t.strm.output,t.strm.next_out,n),t.strm.next_out+=n,t.strm.avail_out-=n,t.strm.total_out+=n)}while(0===o);return a-=t.strm.avail_in,a&&(a>=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<=a&&(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-a,t.strm.next_in),t.strstart),t.strstart+=a,t.insert+=a>t.w_size-t.insert?t.w_size-t.insert:a),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),o?4:e!==zt&&e!==Dt&&0===t.strm.avail_in&&t.strstart===t.block_start?2:(r=t.window_size-t.strstart,t.strm.avail_in>r&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,r+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),r>t.strm.avail_in&&(r=t.strm.avail_in),r&&(de(t.strm,t.window,t.strstart,r),t.strstart+=r,t.insert+=r>t.w_size-t.insert?t.w_size-t.insert:r),t.high_water<t.strstart&&(t.high_water=t.strstart),r=t.bi_valid+42>>3,r=t.pending_buf_size-r>65535?65535:t.pending_buf_size-r,s=r>t.w_size?t.w_size:r,i=t.strstart-t.block_start,(i>=s||(i||e===Dt)&&e!==zt&&0===t.strm.avail_in&&i<=r)&&(n=i>r?r:i,o=e===Dt&&0===t.strm.avail_in&&n===i?1:0,Et(t,t.block_start,n,o),t.block_start+=n,oe(t.strm)),o?3:1)},pe=(t,e)=>{let n,i;for(;;){if(t.lookahead<Qt){if(ue(t),t.lookahead<Qt&&e===zt)return 1;if(0===t.lookahead)break}if(n=0,t.lookahead>=3&&(t.ins_h=se(t,t.ins_h,t.window[t.strstart+3-1]),n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==n&&t.strstart-n<=t.w_size-Qt&&(t.match_length=he(t,n)),t.match_length>=3)if(i=Mt(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=se(t,t.ins_h,t.window[t.strstart+3-1]),n=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=se(t,t.ins_h,t.window[t.strstart+1]);else i=Mt(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(ae(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===Dt?(ae(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(ae(t,!1),0===t.strm.avail_out)?1:2},me=(t,e)=>{let n,i,r;for(;;){if(t.lookahead<Qt){if(ue(t),t.lookahead<Qt&&e===zt)return 1;if(0===t.lookahead)break}if(n=0,t.lookahead>=3&&(t.ins_h=se(t,t.ins_h,t.window[t.strstart+3-1]),n=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!==n&&t.prev_length<t.max_lazy_match&&t.strstart-n<=t.w_size-Qt&&(t.match_length=he(t,n),t.match_length<=5&&(t.strategy===Vt||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){r=t.strstart+t.lookahead-3,i=Mt(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=r&&(t.ins_h=se(t,t.ins_h,t.window[t.strstart+3-1]),n=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&&(ae(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(i=Mt(t,0,t.window[t.strstart-1]),i&&ae(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=Mt(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===Dt?(ae(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(ae(t,!1),0===t.strm.avail_out)?1:2};function fe(t,e,n,i,r){this.good_length=t,this.max_lazy=e,this.nice_length=n,this.max_chain=i,this.func=r}const ye=[new fe(0,0,0,0,ge),new fe(4,4,8,4,pe),new fe(4,5,16,8,pe),new fe(4,6,32,32,pe),new fe(4,4,16,16,me),new fe(8,16,32,32,me),new fe(8,16,128,128,me),new fe(8,32,128,256,me),new fe(32,128,258,1024,me),new fe(32,258,258,4096,me)];function be(){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=$t,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),ie(this.dyn_ltree),ie(this.dyn_dtree),ie(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),ie(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),ie(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 we=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==Jt&&57!==e.status&&69!==e.status&&73!==e.status&&91!==e.status&&103!==e.status&&e.status!==Xt&&e.status!==te?1:0},ve=t=>{if(we(t))return ee(t,Ut);t.total_in=t.total_out=0,t.data_type=Kt;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?Jt:Xt,t.adler=2===e.wrap?0:1,e.last_flush=-2,At(e),Ft},Ce=t=>{const e=ve(t);var n;return e===Ft&&((n=t.state).window_size=2*n.w_size,ie(n.head),n.max_lazy_match=ye[n.level].max_lazy,n.good_match=ye[n.level].good_length,n.nice_match=ye[n.level].nice_length,n.max_chain_length=ye[n.level].max_chain,n.strstart=0,n.block_start=0,n.lookahead=0,n.insert=0,n.match_length=n.prev_length=2,n.match_available=0,n.ins_h=0),e},Ie=(t,e,n,i,r,s)=>{if(!t)return Ut;let o=1;if(e===Pt&&(e=6),i<0?(o=0,i=-i):i>15&&(o=2,i-=16),r<1||r>9||n!==$t||i<8||i>15||e<0||e>9||s<0||s>jt||8===i&&1!==o)return ee(t,Ut);8===i&&(i=9);const a=new be;return t.state=a,a.strm=t,a.status=Jt,a.wrap=o,a.gzhead=null,a.w_bits=i,a.w_size=1<<a.w_bits,a.w_mask=a.w_size-1,a.hash_bits=r+7,a.hash_size=1<<a.hash_bits,a.hash_mask=a.hash_size-1,a.hash_shift=~~((a.hash_bits+3-1)/3),a.window=new Uint8Array(2*a.w_size),a.head=new Uint16Array(a.hash_size),a.prev=new Uint16Array(a.w_size),a.lit_bufsize=1<<r+6,a.pending_buf_size=4*a.lit_bufsize,a.pending_buf=new Uint8Array(a.pending_buf_size),a.sym_buf=a.lit_bufsize,a.sym_end=3*(a.lit_bufsize-1),a.level=e,a.strategy=s,a.method=n,Ce(t)};var _e=Ie,Se=(t,e)=>we(t)||2!==t.state.wrap?Ut:(t.state.gzhead=e,Ft),ke=(t,e)=>{if(we(t)||e>Lt||e<0)return t?ee(t,Ut):Ut;const n=t.state;if(!t.output||0!==t.avail_in&&!t.input||n.status===te&&e!==Dt)return ee(t,0===t.avail_out?Wt:Ut);const i=n.last_flush;if(n.last_flush=e,0!==n.pending){if(oe(t),0===t.avail_out)return n.last_flush=-1,Ft}else if(0===t.avail_in&&ne(e)<=ne(i)&&e!==Dt)return ee(t,Wt);if(n.status===te&&0!==t.avail_in)return ee(t,Wt);if(n.status===Jt&&0===n.wrap&&(n.status=Xt),n.status===Jt){let e=$t+(n.w_bits-8<<4)<<8,i=-1;if(i=n.strategy>=Gt||n.level<2?0:n.level<6?1:6===n.level?2:3,e|=i<<6,0!==n.strstart&&(e|=32),e+=31-e%31,ce(n,e),0!==n.strstart&&(ce(n,t.adler>>>16),ce(n,65535&t.adler)),t.adler=1,n.status=Xt,oe(t),0!==n.pending)return n.last_flush=-1,Ft}if(57===n.status)if(t.adler=0,le(n,31),le(n,139),le(n,8),n.gzhead)le(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),le(n,255&n.gzhead.time),le(n,n.gzhead.time>>8&255),le(n,n.gzhead.time>>16&255),le(n,n.gzhead.time>>24&255),le(n,9===n.level?2:n.strategy>=Gt||n.level<2?4:0),le(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(le(n,255&n.gzhead.extra.length),le(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(t.adler=St(t.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69;else if(le(n,0),le(n,0),le(n,0),le(n,0),le(n,0),le(n,9===n.level?2:n.strategy>=Gt||n.level<2?4:0),le(n,3),n.status=Xt,oe(t),0!==n.pending)return n.last_flush=-1,Ft;if(69===n.status){if(n.gzhead.extra){let e=n.pending,i=(65535&n.gzhead.extra.length)-n.gzindex;for(;n.pending+i>n.pending_buf_size;){let r=n.pending_buf_size-n.pending;if(n.pending_buf.set(n.gzhead.extra.subarray(n.gzindex,n.gzindex+r),n.pending),n.pending=n.pending_buf_size,n.gzhead.hcrc&&n.pending>e&&(t.adler=St(t.adler,n.pending_buf,n.pending-e,e)),n.gzindex+=r,oe(t),0!==n.pending)return n.last_flush=-1,Ft;e=0,i-=r}let r=new Uint8Array(n.gzhead.extra);n.pending_buf.set(r.subarray(n.gzindex,n.gzindex+i),n.pending),n.pending+=i,n.gzhead.hcrc&&n.pending>e&&(t.adler=St(t.adler,n.pending_buf,n.pending-e,e)),n.gzindex=0}n.status=73}if(73===n.status){if(n.gzhead.name){let e,i=n.pending;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>i&&(t.adler=St(t.adler,n.pending_buf,n.pending-i,i)),oe(t),0!==n.pending)return n.last_flush=-1,Ft;i=0}e=n.gzindex<n.gzhead.name.length?255&n.gzhead.name.charCodeAt(n.gzindex++):0,le(n,e)}while(0!==e);n.gzhead.hcrc&&n.pending>i&&(t.adler=St(t.adler,n.pending_buf,n.pending-i,i)),n.gzindex=0}n.status=91}if(91===n.status){if(n.gzhead.comment){let e,i=n.pending;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>i&&(t.adler=St(t.adler,n.pending_buf,n.pending-i,i)),oe(t),0!==n.pending)return n.last_flush=-1,Ft;i=0}e=n.gzindex<n.gzhead.comment.length?255&n.gzhead.comment.charCodeAt(n.gzindex++):0,le(n,e)}while(0!==e);n.gzhead.hcrc&&n.pending>i&&(t.adler=St(t.adler,n.pending_buf,n.pending-i,i))}n.status=103}if(103===n.status){if(n.gzhead.hcrc){if(n.pending+2>n.pending_buf_size&&(oe(t),0!==n.pending))return n.last_flush=-1,Ft;le(n,255&t.adler),le(n,t.adler>>8&255),t.adler=0}if(n.status=Xt,oe(t),0!==n.pending)return n.last_flush=-1,Ft}if(0!==t.avail_in||0!==n.lookahead||e!==zt&&n.status!==te){let i=0===n.level?ge(n,e):n.strategy===Gt?((t,e)=>{let n;for(;;){if(0===t.lookahead&&(ue(t),0===t.lookahead)){if(e===zt)return 1;break}if(t.match_length=0,n=Mt(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,n&&(ae(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Dt?(ae(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(ae(t,!1),0===t.strm.avail_out)?1:2})(n,e):n.strategy===Ht?((t,e)=>{let n,i,r,s;const o=t.window;for(;;){if(t.lookahead<=Yt){if(ue(t),t.lookahead<=Yt&&e===zt)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(r=t.strstart-1,i=o[r],i===o[++r]&&i===o[++r]&&i===o[++r])){s=t.strstart+Yt;do{}while(i===o[++r]&&i===o[++r]&&i===o[++r]&&i===o[++r]&&i===o[++r]&&i===o[++r]&&i===o[++r]&&i===o[++r]&&r<s);t.match_length=Yt-(s-r),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(n=Mt(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(n=Mt(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),n&&(ae(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Dt?(ae(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(ae(t,!1),0===t.strm.avail_out)?1:2})(n,e):ye[n.level].func(n,e);if(3!==i&&4!==i||(n.status=te),1===i||3===i)return 0===t.avail_out&&(n.last_flush=-1),Ft;if(2===i&&(e===Ot?Tt(n):e!==Lt&&(Et(n,0,0,!1),e===Nt&&(ie(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),oe(t),0===t.avail_out))return n.last_flush=-1,Ft}return e!==Dt?Ft:n.wrap<=0?Bt:(2===n.wrap?(le(n,255&t.adler),le(n,t.adler>>8&255),le(n,t.adler>>16&255),le(n,t.adler>>24&255),le(n,255&t.total_in),le(n,t.total_in>>8&255),le(n,t.total_in>>16&255),le(n,t.total_in>>24&255)):(ce(n,t.adler>>>16),ce(n,65535&t.adler)),oe(t),n.wrap>0&&(n.wrap=-n.wrap),0!==n.pending?Ft:Bt)},xe=t=>{if(we(t))return Ut;const e=t.state.status;return t.state=null,e===Xt?ee(t,Zt):Ft},Ae=(t,e)=>{let n=e.length;if(we(t))return Ut;const i=t.state,r=i.wrap;if(2===r||1===r&&i.status!==Jt||i.lookahead)return Ut;if(1===r&&(t.adler=It(t.adler,e,n,0)),i.wrap=0,n>=i.w_size){0===r&&(ie(i.head),i.strstart=0,i.block_start=0,i.insert=0);let t=new Uint8Array(i.w_size);t.set(e.subarray(n-i.w_size,n),0),e=t,n=i.w_size}const s=t.avail_in,o=t.next_in,a=t.input;for(t.avail_in=n,t.next_in=0,t.input=e,ue(i);i.lookahead>=3;){let t=i.strstart,e=i.lookahead-2;do{i.ins_h=se(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,ue(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=o,t.input=a,t.avail_in=s,i.wrap=r,Ft};const Ee=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var Re=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const n=e.shift();if(n){if("object"!=typeof n)throw new TypeError(n+"must be non-object");for(const e in n)Ee(n,e)&&(t[e]=n[e])}}return t},Me=t=>{let e=0;for(let n=0,i=t.length;n<i;n++)e+=t[n].length;const n=new Uint8Array(e);for(let e=0,i=0,r=t.length;e<r;e++){let r=t[e];n.set(r,i),i+=r.length}return n};let Te=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){Te=!1}const ze=new Uint8Array(256);for(let t=0;t<256;t++)ze[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;ze[254]=ze[254]=1;var Oe=t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,n,i,r,s,o=t.length,a=0;for(r=0;r<o;r++)n=t.charCodeAt(r),55296==(64512&n)&&r+1<o&&(i=t.charCodeAt(r+1),56320==(64512&i)&&(n=65536+(n-55296<<10)+(i-56320),r++)),a+=n<128?1:n<2048?2:n<65536?3:4;for(e=new Uint8Array(a),s=0,r=0;s<a;r++)n=t.charCodeAt(r),55296==(64512&n)&&r+1<o&&(i=t.charCodeAt(r+1),56320==(64512&i)&&(n=65536+(n-55296<<10)+(i-56320),r++)),n<128?e[s++]=n:n<2048?(e[s++]=192|n>>>6,e[s++]=128|63&n):n<65536?(e[s++]=224|n>>>12,e[s++]=128|n>>>6&63,e[s++]=128|63&n):(e[s++]=240|n>>>18,e[s++]=128|n>>>12&63,e[s++]=128|n>>>6&63,e[s++]=128|63&n);return e},Ne=(t,e)=>{const n=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let i,r;const s=new Array(2*n);for(r=0,i=0;i<n;){let e=t[i++];if(e<128){s[r++]=e;continue}let o=ze[e];if(o>4)s[r++]=65533,i+=o-1;else{for(e&=2===o?31:3===o?15:7;o>1&&i<n;)e=e<<6|63&t[i++],o--;o>1?s[r++]=65533:e<65536?s[r++]=e:(e-=65536,s[r++]=55296|e>>10&1023,s[r++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&Te)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let n="";for(let i=0;i<e;i++)n+=String.fromCharCode(t[i]);return n})(s,r)},De=(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let n=e-1;for(;n>=0&&128==(192&t[n]);)n--;return n<0||0===n?e:n+ze[t[n]]>e?n:e},Le=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 Fe=Object.prototype.toString,{Z_NO_FLUSH:Be,Z_SYNC_FLUSH:Ue,Z_FULL_FLUSH:Ze,Z_FINISH:We,Z_OK:Pe,Z_STREAM_END:Ve,Z_DEFAULT_COMPRESSION:Ge,Z_DEFAULT_STRATEGY:He,Z_DEFLATED:je}=xt;function qe(t){this.options=Re({level:Ge,method:je,chunkSize:16384,windowBits:15,memLevel:8,strategy:He},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 Le,this.strm.avail_out=0;let n=_e(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(n!==Pe)throw new Error(kt[n]);if(e.header&&Se(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?Oe(e.dictionary):"[object ArrayBuffer]"===Fe.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,n=Ae(this.strm,t),n!==Pe)throw new Error(kt[n]);this._dict_set=!0}}function Ke(t,e){const n=new qe(e);if(n.push(t,!0),n.err)throw n.msg||kt[n.err];return n.result}qe.prototype.push=function(t,e){const n=this.strm,i=this.options.chunkSize;let r,s;if(this.ended)return!1;for(s=e===~~e?e:!0===e?We:Be,"string"==typeof t?n.input=Oe(t):"[object ArrayBuffer]"===Fe.call(t)?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;;)if(0===n.avail_out&&(n.output=new Uint8Array(i),n.next_out=0,n.avail_out=i),(s===Ue||s===Ze)&&n.avail_out<=6)this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;else{if(r=ke(n,s),r===Ve)return n.next_out>0&&this.onData(n.output.subarray(0,n.next_out)),r=xe(this.strm),this.onEnd(r),this.ended=!0,r===Pe;if(0!==n.avail_out){if(s>0&&n.next_out>0)this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;else if(0===n.avail_in)break}else this.onData(n.output)}return!0},qe.prototype.onData=function(t){this.chunks.push(t)},qe.prototype.onEnd=function(t){t===Pe&&(this.result=Me(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var $e={Deflate:qe,deflate:Ke,deflateRaw:function(t,e){return(e=e||{}).raw=!0,Ke(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,Ke(t,e)},constants:xt};const Ye=16209;var Qe=function(t,e){let n,i,r,s,o,a,l,c,d,h,u,g,p,m,f,y,b,w,v,C,I,_,S,k;const x=t.state;n=t.next_in,S=t.input,i=n+(t.avail_in-5),r=t.next_out,k=t.output,s=r-(e-t.avail_out),o=r+(t.avail_out-257),a=x.dmax,l=x.wsize,c=x.whave,d=x.wnext,h=x.window,u=x.hold,g=x.bits,p=x.lencode,m=x.distcode,f=(1<<x.lenbits)-1,y=(1<<x.distbits)-1;t:do{g<15&&(u+=S[n++]<<g,g+=8,u+=S[n++]<<g,g+=8),b=p[u&f];e:for(;;){if(w=b>>>24,u>>>=w,g-=w,w=b>>>16&255,0===w)k[r++]=65535&b;else{if(!(16&w)){if(64&w){if(32&w){x.mode=16191;break t}t.msg="invalid literal/length code",x.mode=Ye;break t}b=p[(65535&b)+(u&(1<<w)-1)];continue e}for(v=65535&b,w&=15,w&&(g<w&&(u+=S[n++]<<g,g+=8),v+=u&(1<<w)-1,u>>>=w,g-=w),g<15&&(u+=S[n++]<<g,g+=8,u+=S[n++]<<g,g+=8),b=m[u&y];;){if(w=b>>>24,u>>>=w,g-=w,w=b>>>16&255,16&w){if(C=65535&b,w&=15,g<w&&(u+=S[n++]<<g,g+=8,g<w&&(u+=S[n++]<<g,g+=8)),C+=u&(1<<w)-1,C>a){t.msg="invalid distance too far back",x.mode=Ye;break t}if(u>>>=w,g-=w,w=r-s,C>w){if(w=C-w,w>c&&x.sane){t.msg="invalid distance too far back",x.mode=Ye;break t}if(I=0,_=h,0===d){if(I+=l-w,w<v){v-=w;do{k[r++]=h[I++]}while(--w);I=r-C,_=k}}else if(d<w){if(I+=l+d-w,w-=d,w<v){v-=w;do{k[r++]=h[I++]}while(--w);if(I=0,d<v){w=d,v-=w;do{k[r++]=h[I++]}while(--w);I=r-C,_=k}}}else if(I+=d-w,w<v){v-=w;do{k[r++]=h[I++]}while(--w);I=r-C,_=k}for(;v>2;)k[r++]=_[I++],k[r++]=_[I++],k[r++]=_[I++],v-=3;v&&(k[r++]=_[I++],v>1&&(k[r++]=_[I++]))}else{I=r-C;do{k[r++]=k[I++],k[r++]=k[I++],k[r++]=k[I++],v-=3}while(v>2);v&&(k[r++]=k[I++],v>1&&(k[r++]=k[I++]))}break}if(64&w){t.msg="invalid distance code",x.mode=Ye;break t}b=m[(65535&b)+(u&(1<<w)-1)]}}break}}while(n<i&&r<o);v=g>>3,n-=v,g-=v<<3,u&=(1<<g)-1,t.next_in=n,t.next_out=r,t.avail_in=n<i?i-n+5:5-(n-i),t.avail_out=r<o?o-r+257:257-(r-o),x.hold=u,x.bits=g};const Je=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]),Xe=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]),tn=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]),en=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 nn=(t,e,n,i,r,s,o,a)=>{const l=a.bits;let c,d,h,u,g,p,m=0,f=0,y=0,b=0,w=0,v=0,C=0,I=0,_=0,S=0,k=null;const x=new Uint16Array(16),A=new Uint16Array(16);let E,R,M,T=null;for(m=0;m<=15;m++)x[m]=0;for(f=0;f<i;f++)x[e[n+f]]++;for(w=l,b=15;b>=1&&0===x[b];b--);if(w>b&&(w=b),0===b)return r[s++]=20971520,r[s++]=20971520,a.bits=1,0;for(y=1;y<b&&0===x[y];y++);for(w<y&&(w=y),I=1,m=1;m<=15;m++)if(I<<=1,I-=x[m],I<0)return-1;if(I>0&&(0===t||1!==b))return-1;for(A[1]=0,m=1;m<15;m++)A[m+1]=A[m]+x[m];for(f=0;f<i;f++)0!==e[n+f]&&(o[A[e[n+f]]++]=f);if(0===t?(k=T=o,p=20):1===t?(k=Je,T=Xe,p=257):(k=tn,T=en,p=0),S=0,f=0,m=y,g=s,v=w,C=0,h=-1,_=1<<w,u=_-1,1===t&&_>852||2===t&&_>592)return 1;for(;;){E=m-C,o[f]+1<p?(R=0,M=o[f]):o[f]>=p?(R=T[o[f]-p],M=k[o[f]-p]):(R=96,M=0),c=1<<m-C,d=1<<v,y=d;do{d-=c,r[g+(S>>C)+d]=E<<24|R<<16|M}while(0!==d);for(c=1<<m-1;S&c;)c>>=1;if(0!==c?(S&=c-1,S+=c):S=0,f++,0===--x[m]){if(m===b)break;m=e[n+o[f]]}if(m>w&&(S&u)!==h){for(0===C&&(C=w),g+=y,v=m-C,I=1<<v;v+C<b&&(I-=x[v+C],!(I<=0));)v++,I<<=1;if(_+=1<<v,1===t&&_>852||2===t&&_>592)return 1;h=S&u,r[h]=w<<24|v<<16|g-s}}return 0!==S&&(r[g+S]=m-C<<24|64<<16),a.bits=w,0};const{Z_FINISH:rn,Z_BLOCK:sn,Z_TREES:on,Z_OK:an,Z_STREAM_END:ln,Z_NEED_DICT:cn,Z_STREAM_ERROR:dn,Z_DATA_ERROR:hn,Z_MEM_ERROR:un,Z_BUF_ERROR:gn,Z_DEFLATED:pn}=xt,mn=16180,fn=16190,yn=16191,bn=16192,wn=16194,vn=16199,Cn=16200,In=16206,_n=16209,Sn=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function kn(){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 xn=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode<mn||e.mode>16211?1:0},An=t=>{if(xn(t))return dn;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=mn,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,an},En=t=>{if(xn(t))return dn;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,An(t)},Rn=(t,e)=>{let n;if(xn(t))return dn;const i=t.state;return e<0?(n=0,e=-e):(n=5+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?dn:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=n,i.wbits=e,En(t))},Mn=(t,e)=>{if(!t)return dn;const n=new kn;t.state=n,n.strm=t,n.window=null,n.mode=mn;const i=Rn(t,e);return i!==an&&(t.state=null),i};let Tn,zn,On=!0;const Nn=t=>{if(On){Tn=new Int32Array(512),zn=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(nn(1,t.lens,0,288,Tn,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;nn(2,t.lens,0,32,zn,0,t.work,{bits:5}),On=!1}t.lencode=Tn,t.lenbits=9,t.distcode=zn,t.distbits=5},Dn=(t,e,n,i)=>{let r;const s=t.state;return null===s.window&&(s.wsize=1<<s.wbits,s.wnext=0,s.whave=0,s.window=new Uint8Array(s.wsize)),i>=s.wsize?(s.window.set(e.subarray(n-s.wsize,n),0),s.wnext=0,s.whave=s.wsize):(r=s.wsize-s.wnext,r>i&&(r=i),s.window.set(e.subarray(n-i,n-i+r),s.wnext),(i-=r)?(s.window.set(e.subarray(n-i,n),0),s.wnext=i,s.whave=s.wsize):(s.wnext+=r,s.wnext===s.wsize&&(s.wnext=0),s.whave<s.wsize&&(s.whave+=r))),0};var Ln=En,Fn=Mn,Bn=(t,e)=>{let n,i,r,s,o,a,l,c,d,h,u,g,p,m,f,y,b,w,v,C,I,_,S=0;const k=new Uint8Array(4);let x,A;const E=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(xn(t)||!t.output||!t.input&&0!==t.avail_in)return dn;n=t.state,n.mode===yn&&(n.mode=bn),o=t.next_out,r=t.output,l=t.avail_out,s=t.next_in,i=t.input,a=t.avail_in,c=n.hold,d=n.bits,h=a,u=l,_=an;t:for(;;)switch(n.mode){case mn:if(0===n.wrap){n.mode=bn;break}for(;d<16;){if(0===a)break t;a--,c+=i[s++]<<d,d+=8}if(2&n.wrap&&35615===c){0===n.wbits&&(n.wbits=15),n.check=0,k[0]=255&c,k[1]=c>>>8&255,n.check=St(n.check,k,2,0),c=0,d=0,n.mode=16181;break}if(n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&c)<<8)+(c>>8))%31){t.msg="incorrect header check",n.mode=_n;break}if((15&c)!==pn){t.msg="unknown compression method",n.mode=_n;break}if(c>>>=4,d-=4,I=8+(15&c),0===n.wbits&&(n.wbits=I),I>15||I>n.wbits){t.msg="invalid window size",n.mode=_n;break}n.dmax=1<<n.wbits,n.flags=0,t.adler=n.check=1,n.mode=512&c?16189:yn,c=0,d=0;break;case 16181:for(;d<16;){if(0===a)break t;a--,c+=i[s++]<<d,d+=8}if(n.flags=c,(255&n.flags)!==pn){t.msg="unknown compression method",n.mode=_n;break}if(57344&n.flags){t.msg="unknown header flags set",n.mode=_n;break}n.head&&(n.head.text=c>>8&1),512&n.flags&&4&n.wrap&&(k[0]=255&c,k[1]=c>>>8&255,n.check=St(n.check,k,2,0)),c=0,d=0,n.mode=16182;case 16182:for(;d<32;){if(0===a)break t;a--,c+=i[s++]<<d,d+=8}n.head&&(n.head.time=c),512&n.flags&&4&n.wrap&&(k[0]=255&c,k[1]=c>>>8&255,k[2]=c>>>16&255,k[3]=c>>>24&255,n.check=St(n.check,k,4,0)),c=0,d=0,n.mode=16183;case 16183:for(;d<16;){if(0===a)break t;a--,c+=i[s++]<<d,d+=8}n.head&&(n.head.xflags=255&c,n.head.os=c>>8),512&n.flags&&4&n.wrap&&(k[0]=255&c,k[1]=c>>>8&255,n.check=St(n.check,k,2,0)),c=0,d=0,n.mode=16184;case 16184:if(1024&n.flags){for(;d<16;){if(0===a)break t;a--,c+=i[s++]<<d,d+=8}n.length=c,n.head&&(n.head.extra_len=c),512&n.flags&&4&n.wrap&&(k[0]=255&c,k[1]=c>>>8&255,n.check=St(n.check,k,2,0)),c=0,d=0}else n.head&&(n.head.extra=null);n.mode=16185;case 16185:if(1024&n.flags&&(g=n.length,g>a&&(g=a),g&&(n.head&&(I=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Uint8Array(n.head.extra_len)),n.head.extra.set(i.subarray(s,s+g),I)),512&n.flags&&4&n.wrap&&(n.check=St(n.check,i,g,s)),a-=g,s+=g,n.length-=g),n.length))break t;n.length=0,n.mode=16186;case 16186:if(2048&n.flags){if(0===a)break t;g=0;do{I=i[s+g++],n.head&&I&&n.length<65536&&(n.head.name+=String.fromCharCode(I))}while(I&&g<a);if(512&n.flags&&4&n.wrap&&(n.check=St(n.check,i,g,s)),a-=g,s+=g,I)break t}else n.head&&(n.head.name=null);n.length=0,n.mode=16187;case 16187:if(4096&n.flags){if(0===a)break t;g=0;do{I=i[s+g++],n.head&&I&&n.length<65536&