UNPKG

id-scanner-lib

Version:

一款纯前端实现的TypeScript身份证&二维码识别库,无需后端支持,所有处理在浏览器端完成,新增图像批处理与优化

1 lines 61.2 kB
var global,factory;global=this,factory=function(t,r){"use strict";class n{constructor(t={}){this.options=t,this.stream=null,this.videoElement=null,this.options={width:640,height:480,facingMode:"environment",...t}}async start(t){return this.initialize(t)}stop(){this.release()}async initialize(t){this.videoElement=t;try{const t={video:{width:{ideal:this.options.width},height:{ideal:this.options.height},facingMode:this.options.facingMode}};this.stream=await navigator.mediaDevices.getUserMedia(t),this.videoElement&&(this.videoElement.srcObject=this.stream,await new Promise((t=>{this.videoElement&&(this.videoElement.onloadedmetadata=()=>{this.videoElement&&this.videoElement.play().then((()=>t()))})})))}catch(t){throw Error("无法访问摄像头。请确保已授予摄像头访问权限,并且摄像头未被其他应用程序占用。")}}captureFrame(){if(!this.videoElement)return null;const t=document.createElement("canvas");t.width=this.videoElement.videoWidth,t.height=this.videoElement.videoHeight;const r=t.getContext("2d");return r?(r.drawImage(this.videoElement,0,0,t.width,t.height),r.getImageData(0,0,t.width,t.height)):null}release(){this.stream&&(this.stream.getTracks().forEach((t=>t.stop())),this.stream=null),this.videoElement&&(this.videoElement.srcObject=null,this.videoElement=null)}}class e{constructor(t={}){this.options=t,this.scanning=!1,this.scanTimer=null,this.options={scanInterval:200,...t},this.camera=new n}async start(t){try{await this.camera.initialize(t),this.scanning=!0,this.scan()}catch(t){this.options.onError&&this.options.onError(t instanceof Error?t:Error(t+""))}}scan(){if(!this.scanning)return;const t=this.camera.captureFrame();if(t){const n=r(t.data,t.width,t.height);n&&this.options.onScan&&this.options.onScan(n.data)}this.scanTimer=window.setTimeout((()=>this.scan()),this.options.scanInterval)}stop(){this.scanning=!1,this.scanTimer&&(clearTimeout(this.scanTimer),this.scanTimer=null),this.camera.release()}processImageData(t){try{if(!t||!t.data||t.width<=0||t.height<=0)throw Error("无效的图像数据");const n=r(t.data,t.width,t.height);return n&&n.data?n.data:null}catch(t){return this.options.onError&&this.options.onError(t instanceof Error?t:Error(t+"")),null}}}function o(t,r){return new Promise((function(n,e){let o;return i(t).then((function(t){try{return o=t,n(new Blob([r.slice(0,2),o,r.slice(2)],{type:"image/jpeg"}))}catch(t){return e(t)}}),e)}))}const i=t=>new Promise(((r,n)=>{const e=new FileReader;e.addEventListener("load",(({target:{result:t}})=>{const e=new DataView(t);let o=0;if(65496!==e.getUint16(o))return n("not a valid JPEG");for(o+=2;;){const i=e.getUint16(o);if(65498===i)break;const f=e.getUint16(o+2);if(65505===i&&1165519206===e.getUint32(o+4)){const i=o+10;let a;switch(e.getUint16(i)){case 18761:a=!0;break;case 19789:a=!1;break;default:return n("TIFF header contains invalid endian")}if(42!==e.getUint16(i+2,a))return n("TIFF header contains invalid version");const s=e.getUint32(i+4,a),c=i+s+2+12*e.getUint16(i+s,a);for(let t=i+s+2;t<c;t+=12)if(274==e.getUint16(t,a)){if(3!==e.getUint16(t+2,a))return n("Orientation data type is invalid");if(1!==e.getUint32(t+4,a))return n("Orientation data count is invalid");e.setUint16(t+8,1,a);break}return r(t.slice(o,o+2+f))}o+=2+f}return r(new Blob)})),e.readAsArrayBuffer(t)}));var f={},a={get exports(){return f},set exports(t){f=t}};!function(){var t,r,n={};a.exports=n,n.parse=function(t,r){for(var e=n.bin.readUshort,o=n.bin.readUint,i=0,f={},a=new Uint8Array(t),s=a.length-4;101010256!=o(a,s);)s--;i=s,i+=4;var c=e(a,i+=4);e(a,i+=2);var u=o(a,i+=2),l=o(a,i+=4);i+=4,i=l;for(var h=0;h<c;h++){o(a,i),i+=4,i+=4,i+=4,o(a,i+=4),u=o(a,i+=4);var A=o(a,i+=4),v=e(a,i+=4),w=e(a,i+2),d=e(a,i+4);i+=6;var y=o(a,i+=8);i+=4,i+=v+w+d,n.o(a,y,f,u,A,r)}return f},n.o=function(t,r,e,o,i,f){var a=n.bin.readUshort,s=n.bin.readUint;s(t,r),a(t,r+=4),a(t,r+=2);var c=a(t,r+=2);s(t,r+=2),s(t,r+=4),r+=4;var u=a(t,r+=8),l=a(t,r+=2);r+=2;var h=n.bin.readUTF8(t,r,u);if(r+=u,r+=l,f)e[h]={size:i,csize:o};else{var A=new Uint8Array(t.buffer,r);if(0==c)e[h]=new Uint8Array(A.buffer.slice(r,r+o));else{if(8!=c)throw"unknown compression method: "+c;var v=new Uint8Array(i);n.inflateRaw(A,v),e[h]=v}}},n.inflateRaw=function(t,r){return n.F.inflate(t,r)},n.inflate=function(t,r){return n.inflateRaw(new Uint8Array(t.buffer,t.byteOffset+2,t.length-6),r)},n.deflate=function(t,r){null==r&&(r={level:6});var e=0,o=new Uint8Array(50+Math.floor(1.1*t.length));o[e]=120,o[e+1]=156,e+=2,e=n.F.deflateRaw(t,o,e,r.level);var i=n.adler(t,0,t.length);return o[e+0]=i>>>24&255,o[e+1]=i>>>16&255,o[e+2]=i>>>8&255,o[e+3]=i>>>0&255,new Uint8Array(o.buffer,0,e+4)},n.deflateRaw=function(t,r){null==r&&(r={level:6});var e=new Uint8Array(50+Math.floor(1.1*t.length)),o=n.F.deflateRaw(t,e,o,r.level);return new Uint8Array(e.buffer,0,o)},n.encode=function(t,r){null==r&&(r=!1);var e=0,o=n.bin.writeUint,i=n.bin.writeUshort,f={};for(var a in t){var s=!n.B(a)&&!r,c=t[a],u=n.crc.crc(c,0,c.length);f[a]={cpr:s,usize:c.length,crc:u,file:s?n.deflateRaw(c):c}}for(var a in f)e+=f[a].file.length+30+46+2*n.bin.sizeUTF8(a);e+=22;var l=new Uint8Array(e),h=0,A=[];for(var a in f){var v=f[a];A.push(h),h=n.P(l,h,a,v,0)}var w=0,d=h;for(var a in f)v=f[a],A.push(h),h=n.P(l,h,a,v,1,A[w++]);var y=h-d;return o(l,h,101010256),h+=4,i(l,h+=4,w),i(l,h+=2,w),o(l,h+=2,y),o(l,h+=4,d),h+=4,h+=2,l.buffer},n.B=function(t){var r=t.split(".").pop().toLowerCase();return-1!="png,jpg,jpeg,zip".indexOf(r)},n.P=function(t,r,e,o,i,f){var a=n.bin.writeUint,s=n.bin.writeUshort,c=o.file;return a(t,r,0==i?67324752:33639248),r+=4,1==i&&(r+=2),s(t,r,20),s(t,r+=2,0),s(t,r+=2,o.cpr?8:0),a(t,r+=2,0),a(t,r+=4,o.crc),a(t,r+=4,c.length),a(t,r+=4,o.usize),s(t,r+=4,n.bin.sizeUTF8(e)),s(t,r+=2,0),r+=2,1==i&&(r+=2,r+=2,a(t,r+=6,f),r+=4),r+=n.bin.writeUTF8(t,r,e),0==i&&(t.set(c,r),r+=c.length),r},n.crc={table:function(){for(var t=new Uint32Array(256),r=0;r<256;r++){for(var n=r,e=0;e<8;e++)1&n?n=3988292384^n>>>1:n>>>=1;t[r]=n}return t}(),update:function(t,r,e,o){for(var i=0;i<o;i++)t=n.crc.table[255&(t^r[e+i])]^t>>>8;return t},crc:function(t,r,e){return 4294967295^n.crc.update(4294967295,t,r,e)}},n.adler=function(t,r,n){for(var e=1,o=0,i=r,f=r+n;i<f;){for(var a=Math.min(i+5552,f);i<a;)o+=e+=t[i++];e%=65521,o%=65521}return o<<16|e},n.bin={readUshort:function(t,r){return t[r]|t[r+1]<<8},writeUshort:function(t,r,n){t[r]=255&n,t[r+1]=n>>8&255},readUint:function(t,r){return 16777216*t[r+3]+(t[r+2]<<16|t[r+1]<<8|t[r])},writeUint:function(t,r,n){t[r]=255&n,t[r+1]=n>>8&255,t[r+2]=n>>16&255,t[r+3]=n>>24&255},readASCII:function(t,r,n){for(var e="",o=0;o<n;o++)e+=String.fromCharCode(t[r+o]);return e},writeASCII:function(t,r,n){for(var e=0;e<n.length;e++)t[r+e]=n.charCodeAt(e)},pad:function(t){return t.length<2?"0"+t:t},readUTF8:function(t,r,e){for(var o,i="",f=0;f<e;f++)i+="%"+n.bin.pad(t[r+f].toString(16));try{o=decodeURIComponent(i)}catch(o){return n.bin.readASCII(t,r,e)}return o},writeUTF8:function(t,r,n){for(var e=n.length,o=0,i=0;i<e;i++){var f=n.charCodeAt(i);if(4294967168&f)if(4294965248&f)if(4294901760&f){if(4292870144&f)throw"e";t[r+o]=240|f>>18,t[r+o+1]=128|f>>12&63,t[r+o+2]=128|f>>6&63,t[r+o+3]=128|63&f,o+=4}else t[r+o]=224|f>>12,t[r+o+1]=128|f>>6&63,t[r+o+2]=128|63&f,o+=3;else t[r+o]=192|f>>6,t[r+o+1]=128|63&f,o+=2;else t[r+o]=f,o++}return o},sizeUTF8:function(t){for(var r=t.length,n=0,e=0;e<r;e++){var o=t.charCodeAt(e);if(4294967168&o)if(4294965248&o)if(4294901760&o){if(4292870144&o)throw"e";n+=4}else n+=3;else n+=2;else n++}return n}},n.F={},n.F.deflateRaw=function(t,r,e,o){var i=[[0,0,0,0,0],[4,4,8,4,0],[4,5,16,8,0],[4,6,16,16,0],[4,10,16,32,0],[8,16,32,32,0],[8,16,128,128,0],[8,32,128,256,0],[32,128,258,1024,1],[32,258,258,4096,1]][o],f=n.F.U,a=n.F.O,s=n.F._,c=0,u=e<<3,l=0,h=t.length;if(0==o){for(;c<h;)s(r,u,c+(M=Math.min(65535,h-c))==h?1:0),u=n.F.G(t,c,M,r,u+8),c+=M;return u>>>3}var A=f.lits,v=f.strt,w=f.prev,d=0,y=0,p=0,m=0,g=0,E=0;for(h>2&&(v[E=n.F.tt(t,0)]=0),c=0;c<h;c++){if(g=E,c+1<h-2){E=n.F.tt(t,c+1);var U=c+1&32767;w[U]=v[E],v[E]=U}if(l<=c){(d>14e3||y>26697)&&h-c>100&&(l<c&&(A[d]=c-l,d+=2,l=c),u=n.F.rt(c==h-1||l==h?1:0,A,d,m,t,p,c-p,r,u),d=y=m=0,p=c);var b=0;c<h-2&&(b=n.F.nt(t,c,w,g,Math.min(i[2],h-c),i[3]));var M=b>>>16,B=65535&b;if(0!=b){B=65535&b;var I=a(M=b>>>16,f.of0);f.lhst[257+I]++;var Q=a(B,f.df0);f.dhst[Q]++,m+=f.exb[I]+f.dxb[Q],A[d]=M<<23|c-l,A[d+1]=B<<16|I<<8|Q,d+=2,l=c+M}else f.lhst[t[c]]++;y++}}for(p==c&&0!=t.length||(l<c&&(A[d]=c-l,d+=2,l=c),u=n.F.rt(1,A,d,m,t,p,c-p,r,u),d=0,y=0,d=y=m=0,p=c);7&u;)u++;return u>>>3},n.F.nt=function(t,r,e,o,i,f){var a=32767&r,s=e[a],c=a-s+32768&32767;if(s==a||o!=n.F.tt(t,r-c))return 0;for(var u=0,l=0,h=Math.min(32767,r);c<=h&&0!=--f&&s!=a;){if(0==u||t[r+u]==t[r+u-c]){var A=n.F.et(t,r,c);if(A>u){if(l=c,(u=A)>=i)break;c+2<A&&(A=c+2);for(var v=0,w=0;w<A-2;w++){var d=r-c+w+32768&32767,y=d-e[d]+32768&32767;y>v&&(v=y,s=d)}}}c+=(a=s)-(s=e[a])+32768&32767}return u<<16|l},n.F.et=function(t,r,n){if(t[r]!=t[r-n]||t[r+1]!=t[r+1-n]||t[r+2]!=t[r+2-n])return 0;var e=r,o=Math.min(t.length,r+258);for(r+=3;r<o&&t[r]==t[r-n];)r++;return r-e},n.F.tt=function(t,r){return(t[r]<<8|t[r+1])+(t[r+2]<<4)&65535},n.saved=0,n.F.rt=function(t,r,e,o,i,f,a,s,c){var u,l,h,A,v,w,d,y,p,m=n.F.U,g=n.F.ot,E=n.F._;m.lhst[256]++,l=(u=n.F.getTrees())[0],h=u[1],A=u[2],v=u[3],w=u[4],d=u[5],y=u[6],p=u[7];var U=32+(c+3&7?8-(c+3&7):0)+(a<<3),b=o+n.F.contSize(m.fltree,m.lhst)+n.F.contSize(m.fdtree,m.dhst),M=o+n.F.contSize(m.ltree,m.lhst)+n.F.contSize(m.dtree,m.dhst);M+=14+3*d+n.F.contSize(m.itree,m.ihst)+(2*m.ihst[16]+3*m.ihst[17]+7*m.ihst[18]);for(var B=0;B<286;B++)m.lhst[B]=0;for(B=0;B<30;B++)m.dhst[B]=0;for(B=0;B<19;B++)m.ihst[B]=0;var I=U<b&&U<M?0:b<M?1:2;if(g(s,c,t),g(s,c+1,I),c+=3,0==I){for(;7&c;)c++;c=n.F.G(i,f,a,s,c)}else{var Q,T;if(1==I&&(Q=m.fltree,T=m.fdtree),2==I){n.F.makeCodes(m.ltree,l),n.F.revCodes(m.ltree,l),n.F.makeCodes(m.dtree,h),n.F.revCodes(m.dtree,h),n.F.makeCodes(m.itree,A),n.F.revCodes(m.itree,A),Q=m.ltree,T=m.dtree,E(s,c,v-257),E(s,c+=5,w-1),E(s,c+=5,d-4),c+=4;for(var C=0;C<d;C++)E(s,c+3*C,m.itree[1+(m.ordr[C]<<1)]);c+=3*d,c=n.F.it(y,m.itree,s,c),c=n.F.it(p,m.itree,s,c)}for(var S=f,P=0;P<e;P+=2){for(var k=r[P],D=k>>>23,R=S+(8388607&k);S<R;)c=n.F.ft(i[S++],Q,s,c);if(0!=D){var F=r[P+1],j=F>>16,x=F>>8&255,O=255&F;E(s,c=n.F.ft(257+x,Q,s,c),D-m.of0[x]),c+=m.exb[x],g(s,c=n.F.ft(O,T,s,c),j-m.df0[O]),c+=m.dxb[O],S+=D}}c=n.F.ft(256,Q,s,c)}return c},n.F.G=function(t,r,n,e,o){var i=o>>>3;return e[i]=n,e[i+1]=n>>>8,e[i+2]=255-e[i],e[i+3]=255-e[i+1],i+=4,e.set(new Uint8Array(t.buffer,r,n),i),o+(n+4<<3)},n.F.getTrees=function(){for(var t=n.F.U,r=n.F.st(t.lhst,t.ltree,15),e=n.F.st(t.dhst,t.dtree,15),o=[],i=n.F.ct(t.ltree,o),f=[],a=n.F.ct(t.dtree,f),s=0;s<o.length;s+=2)t.ihst[o[s]]++;for(s=0;s<f.length;s+=2)t.ihst[f[s]]++;for(var c=n.F.st(t.ihst,t.itree,7),u=19;u>4&&0==t.itree[1+(t.ordr[u-1]<<1)];)u--;return[r,e,c,i,a,u,o,f]},n.F.getSecond=function(t){for(var r=[],n=0;n<t.length;n+=2)r.push(t[n+1]);return r},n.F.nonZero=function(t){for(var r="",n=0;n<t.length;n+=2)0!=t[n+1]&&(r+=(n>>1)+",");return r},n.F.contSize=function(t,r){for(var n=0,e=0;e<r.length;e++)n+=r[e]*t[1+(e<<1)];return n},n.F.it=function(t,r,e,o){for(var i=0;i<t.length;i+=2){var f=t[i],a=t[i+1];o=n.F.ft(f,r,e,o);var s=16==f?2:17==f?3:7;f>15&&(n.F._(e,o,a,s),o+=s)}return o},n.F.ct=function(t,r){for(var n=t.length;2!=n&&0==t[n-1];)n-=2;for(var e=0;e<n;e+=2){var o=t[e+1],i=e+3<n?t[e+3]:-1,f=e+5<n?t[e+5]:-1,a=0==e?-1:t[e-1];if(0==o&&i==o&&f==o){for(var s=e+5;s+2<n&&t[s+2]==o;)s+=2;(c=Math.min(s+1-e>>>1,138))<11?r.push(17,c-3):r.push(18,c-11),e+=2*c-2}else if(o==a&&i==o&&f==o){for(s=e+5;s+2<n&&t[s+2]==o;)s+=2;var c=Math.min(s+1-e>>>1,6);r.push(16,c-3),e+=2*c-2}else r.push(o,0)}return n>>>1},n.F.st=function(t,r,e){var o=[],i=t.length,f=r.length,a=0;for(a=0;a<f;a+=2)r[a]=0,r[a+1]=0;for(a=0;a<i;a++)0!=t[a]&&o.push({lit:a,f:t[a]});var s=o.length,c=o.slice(0);if(0==s)return 0;if(1==s){var u=o[0].lit;return c=0==u?1:0,r[1+(u<<1)]=1,r[1+(c<<1)]=1,1}o.sort((function(t,r){return t.f-r.f}));var l=o[0],h=o[1],A=0,v=1,w=2;for(o[0]={lit:-1,f:l.f+h.f,l:l,r:h,d:0};v!=s-1;)l=A!=v&&(w==s||o[A].f<o[w].f)?o[A++]:o[w++],h=A!=v&&(w==s||o[A].f<o[w].f)?o[A++]:o[w++],o[v++]={lit:-1,f:l.f+h.f,l:l,r:h};var d=n.F.setDepth(o[v-1],0);for(d>e&&(n.F.restrictDepth(c,e,d),d=e),a=0;a<s;a++)r[1+(c[a].lit<<1)]=c[a].d;return d},n.F.setDepth=function(t,r){return-1!=t.lit?(t.d=r,r):Math.max(n.F.setDepth(t.l,r+1),n.F.setDepth(t.r,r+1))},n.F.restrictDepth=function(t,r,n){var e=0,o=1<<n-r,i=0;for(t.sort((function(t,r){return r.d==t.d?t.f-r.f:r.d-t.d})),e=0;e<t.length&&t[e].d>r;e++){var f=t[e].d;t[e].d=r,i+=o-(1<<n-f)}for(i>>>=n-r;i>0;)(f=t[e].d)<r?(t[e].d++,i-=1<<r-f-1):e++;for(;e>=0;e--)t[e].d==r&&i<0&&(t[e].d--,i++)},n.F.O=function(t,r){var n=0;return r[16|n]<=t&&(n|=16),r[8|n]<=t&&(n|=8),r[4|n]<=t&&(n|=4),r[2|n]<=t&&(n|=2),r[1|n]<=t&&(n|=1),n},n.F.ft=function(t,r,e,o){return n.F.ot(e,o,r[t<<1]),o+r[1+(t<<1)]},n.F.inflate=function(t,r){var e=Uint8Array;if(3==t[0]&&0==t[1])return r||new e(0);var o=n.F,i=o.ut,f=o.lt,a=o.ht,s=o.makeCodes,c=o.codes2map,u=o.At,l=o.U,h=null==r;h&&(r=new e(t.length>>>2<<3));for(var A,v,w=0,d=0,y=0,p=0,m=0,g=0,E=0,U=0,b=0;0==w;)if(w=i(t,b,1),d=i(t,b+1,2),b+=3,0!=d){if(h&&(r=n.F.vt(r,U+(1<<17))),1==d&&(A=l.flmap,v=l.fdmap,g=511,E=31),2==d){y=f(t,b,5)+257,p=f(t,b+5,5)+1,m=f(t,b+10,4)+4,b+=14;for(var M=0;M<38;M+=2)l.itree[M]=0,l.itree[M+1]=0;var B=1;for(M=0;M<m;M++){var I=f(t,b+3*M,3);l.itree[1+(l.ordr[M]<<1)]=I,I>B&&(B=I)}b+=3*m,s(l.itree,B),c(l.itree,B,l.imap),A=l.lmap,v=l.dmap,b=a(l.imap,(1<<B)-1,y+p,t,b,l.ttree);var Q=o.wt(l.ttree,0,y,l.ltree);g=(1<<Q)-1;var T=o.wt(l.ttree,y,p,l.dtree);E=(1<<T)-1,s(l.ltree,Q),c(l.ltree,Q,A),s(l.dtree,T),c(l.dtree,T,v)}for(;;){var C=A[u(t,b)&g];b+=15&C;var S=C>>>4;if(S>>>8==0)r[U++]=S;else{if(256==S)break;var P=U+S-254;if(S>264){var k=l.ldef[S-257];P=U+(k>>>3)+f(t,b,7&k),b+=7&k}var D=v[u(t,b)&E];b+=15&D;var R=D>>>4,F=l.ddef[R],j=(F>>>4)+i(t,b,15&F);for(b+=15&F,h&&(r=n.F.vt(r,U+(1<<17)));U<P;)r[U]=r[U++-j],r[U]=r[U++-j],r[U]=r[U++-j],r[U]=r[U++-j];U=P}}}else{7&b&&(b+=8-(7&b));var x=4+(b>>>3),O=t[x-4]|t[x-3]<<8;h&&(r=n.F.vt(r,U+O)),r.set(new e(t.buffer,t.byteOffset+x,O),U),b=x+O<<3,U+=O}return r.length==U?r:r.slice(0,U)},n.F.vt=function(t,r){var n=t.length;if(r<=n)return t;var e=new Uint8Array(Math.max(n<<1,r));return e.set(t,0),e},n.F.ht=function(t,r,e,o,i,f){for(var a=n.F.lt,s=n.F.At,c=0;c<e;){var u=t[s(o,i)&r];i+=15&u;var l=u>>>4;if(l<=15)f[c]=l,c++;else{var h=0,A=0;16==l?(A=3+a(o,i,2),i+=2,h=f[c-1]):17==l?(A=3+a(o,i,3),i+=3):18==l&&(A=11+a(o,i,7),i+=7);for(var v=c+A;c<v;)f[c]=h,c++}}return i},n.F.wt=function(t,r,n,e){for(var o=0,i=0,f=e.length>>>1;i<n;){var a=t[i+r];e[i<<1]=0,e[1+(i<<1)]=a,a>o&&(o=a),i++}for(;i<f;)e[i<<1]=0,e[1+(i<<1)]=0,i++;return o},n.F.makeCodes=function(t,r){for(var e,o,i,f,a=n.F.U,s=t.length,c=a.bl_count,u=0;u<=r;u++)c[u]=0;for(u=1;u<s;u+=2)c[t[u]]++;var l=a.next_code;for(e=0,c[0]=0,o=1;o<=r;o++)e=e+c[o-1]<<1,l[o]=e;for(i=0;i<s;i+=2)0!=(f=t[i+1])&&(t[i]=l[f],l[f]++)},n.F.codes2map=function(t,r,e){for(var o=t.length,i=n.F.U.rev15,f=0;f<o;f+=2)if(0!=t[f+1])for(var a=f>>1,s=t[f+1],c=a<<4|s,u=r-s,l=t[f]<<u,h=l+(1<<u);l!=h;)e[i[l]>>>15-r]=c,l++},n.F.revCodes=function(t,r){for(var e=n.F.U.rev15,o=15-r,i=0;i<t.length;i+=2){var f=t[i]<<r-t[i+1];t[i]=e[f]>>>o}},n.F._=function(t,r,n){n<<=7&r;var e=r>>>3;t[e]|=n,t[e+1]|=n>>>8},n.F.ot=function(t,r,n){n<<=7&r;var e=r>>>3;t[e]|=n,t[e+1]|=n>>>8,t[e+2]|=n>>>16},n.F.lt=function(t,r,n){return(t[r>>>3]|t[1+(r>>>3)]<<8)>>>(7&r)&(1<<n)-1},n.F.ut=function(t,r,n){return(t[r>>>3]|t[1+(r>>>3)]<<8|t[2+(r>>>3)]<<16)>>>(7&r)&(1<<n)-1},n.F.At=function(t,r){return(t[r>>>3]|t[1+(r>>>3)]<<8|t[2+(r>>>3)]<<16)>>>(7&r)},n.F.dt=function(t,r){return(t[r>>>3]|t[1+(r>>>3)]<<8|t[2+(r>>>3)]<<16|t[3+(r>>>3)]<<24)>>>(7&r)},n.F.U=(t=Uint16Array,r=Uint32Array,{next_code:new t(16),bl_count:new t(16),ordr:[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],of0:[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,999,999,999],exb:[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,0,0,0],ldef:new t(32),df0:[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,65535,65535],dxb:[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,0,0],ddef:new r(32),flmap:new t(512),fltree:[],fdmap:new t(32),fdtree:[],lmap:new t(32768),ltree:[],ttree:[],dmap:new t(32768),dtree:[],imap:new t(512),itree:[],rev15:new t(32768),lhst:new r(286),dhst:new r(30),ihst:new r(19),lits:new r(15e3),strt:new t(65536),prev:new t(32768)}),function(){for(var t=n.F.U,r=0;r<32768;r++){var e=r;e=(4278255360&(e=(4042322160&(e=(3435973836&(e=(2863311530&e)>>>1|(1431655765&e)<<1))>>>2|(858993459&e)<<2))>>>4|(252645135&e)<<4))>>>8|(16711935&e)<<8,t.rev15[r]=(e>>>16|e<<16)>>>17}function o(t,r,n){for(;0!=r--;)t.push(0,n)}for(r=0;r<32;r++)t.ldef[r]=t.of0[r]<<3|t.exb[r],t.ddef[r]=t.df0[r]<<4|t.dxb[r];o(t.fltree,144,8),o(t.fltree,112,9),o(t.fltree,24,7),o(t.fltree,8,8),n.F.makeCodes(t.fltree,9),n.F.codes2map(t.fltree,9,t.flmap),n.F.revCodes(t.fltree,9),o(t.fdtree,32,5),n.F.makeCodes(t.fdtree,5),n.F.codes2map(t.fdtree,5,t.fdmap),n.F.revCodes(t.fdtree,5),o(t.itree,19,0),o(t.ltree,286,0),o(t.dtree,30,0),o(t.ttree,320,0)}()}();var s=function(t,r){return r.forEach((function(r){r&&"string"!=typeof r&&!Array.isArray(r)&&Object.keys(r).forEach((function(n){if("default"!==n&&!(n in t)){var e=Object.getOwnPropertyDescriptor(r,n);Object.defineProperty(t,n,e.get?e:{enumerable:!0,get:function(){return r[n]}})}}))})),Object.freeze(t)}({__proto__:null,default:f},[f]);const c=function(){var t={nextZero(t,r){for(;0!=t[r];)r++;return r},readUshort:(t,r)=>t[r]<<8|t[r+1],writeUshort(t,r,n){t[r]=n>>8&255,t[r+1]=255&n},readUint:(t,r)=>16777216*t[r]+(t[r+1]<<16|t[r+2]<<8|t[r+3]),writeUint(t,r,n){t[r]=n>>24&255,t[r+1]=n>>16&255,t[r+2]=n>>8&255,t[r+3]=255&n},readASCII(t,r,n){let e="";for(let o=0;o<n;o++)e+=String.fromCharCode(t[r+o]);return e},writeASCII(t,r,n){for(let e=0;e<n.length;e++)t[r+e]=n.charCodeAt(e)},readBytes(t,r,n){const e=[];for(let o=0;o<n;o++)e.push(t[r+o]);return e},pad:t=>t.length<2?"0"+t:t,readUTF8(r,n,e){let o,i="";for(let o=0;o<e;o++)i+="%"+t.pad(r[n+o].toString(16));try{o=decodeURIComponent(i)}catch(o){return t.readASCII(r,n,e)}return o}};function r(r,n,e,o){const f=n*e,a=i(o),s=Math.ceil(n*a/8),c=new Uint8Array(4*f),u=new Uint32Array(c.buffer),{ctype:l}=o,{depth:h}=o,A=t.readUshort;if(6==l){const t=f<<2;if(8==h)for(var v=0;v<t;v+=4)c[v]=r[v],c[v+1]=r[v+1],c[v+2]=r[v+2],c[v+3]=r[v+3];if(16==h)for(v=0;v<t;v++)c[v]=r[v<<1]}else if(2==l){const t=o.tabs.tRNS;if(null==t){if(8==h)for(v=0;v<f;v++){var w=3*v;u[v]=255<<24|r[w+2]<<16|r[w+1]<<8|r[w]}if(16==h)for(v=0;v<f;v++)w=6*v,u[v]=255<<24|r[w+4]<<16|r[w+2]<<8|r[w]}else{var d=t[0];const n=t[1],e=t[2];if(8==h)for(v=0;v<f;v++){var y=v<<2;w=3*v,u[v]=255<<24|r[w+2]<<16|r[w+1]<<8|r[w],r[w]==d&&r[w+1]==n&&r[w+2]==e&&(c[y+3]=0)}if(16==h)for(v=0;v<f;v++)y=v<<2,w=6*v,u[v]=255<<24|r[w+4]<<16|r[w+2]<<8|r[w],A(r,w)==d&&A(r,w+2)==n&&A(r,w+4)==e&&(c[y+3]=0)}}else if(3==l){const t=o.tabs.PLTE,i=o.tabs.tRNS,a=i?i.length:0;if(1==h)for(var p=0;p<e;p++){var m=p*s,g=p*n;for(v=0;v<n;v++){y=g+v<<2;var E=3*(U=r[m+(v>>3)]>>7-(7&v)&1);c[y]=t[E],c[y+1]=t[E+1],c[y+2]=t[E+2],c[y+3]=U<a?i[U]:255}}if(2==h)for(p=0;p<e;p++)for(m=p*s,g=p*n,v=0;v<n;v++)y=g+v<<2,E=3*(U=r[m+(v>>2)]>>6-((3&v)<<1)&3),c[y]=t[E],c[y+1]=t[E+1],c[y+2]=t[E+2],c[y+3]=U<a?i[U]:255;if(4==h)for(p=0;p<e;p++)for(m=p*s,g=p*n,v=0;v<n;v++)y=g+v<<2,E=3*(U=r[m+(v>>1)]>>4-((1&v)<<2)&15),c[y]=t[E],c[y+1]=t[E+1],c[y+2]=t[E+2],c[y+3]=U<a?i[U]:255;if(8==h)for(v=0;v<f;v++){var U;y=v<<2,E=3*(U=r[v]),c[y]=t[E],c[y+1]=t[E+1],c[y+2]=t[E+2],c[y+3]=U<a?i[U]:255}}else if(4==l){if(8==h)for(v=0;v<f;v++){y=v<<2;var b=r[M=v<<1];c[y]=b,c[y+1]=b,c[y+2]=b,c[y+3]=r[M+1]}if(16==h)for(v=0;v<f;v++){var M;y=v<<2,b=r[M=v<<2],c[y]=b,c[y+1]=b,c[y+2]=b,c[y+3]=r[M+2]}}else if(0==l)for(d=o.tabs.tRNS?o.tabs.tRNS:-1,p=0;p<e;p++){const t=p*s,e=p*n;if(1==h)for(var B=0;B<n;B++){var I=(b=255*(r[t+(B>>>3)]>>>7-(7&B)&1))==255*d?0:255;u[e+B]=I<<24|b<<16|b<<8|b}else if(2==h)for(B=0;B<n;B++)I=(b=85*(r[t+(B>>>2)]>>>6-((3&B)<<1)&3))==85*d?0:255,u[e+B]=I<<24|b<<16|b<<8|b;else if(4==h)for(B=0;B<n;B++)I=(b=17*(r[t+(B>>>1)]>>>4-((1&B)<<2)&15))==17*d?0:255,u[e+B]=I<<24|b<<16|b<<8|b;else if(8==h)for(B=0;B<n;B++)I=(b=r[t+B])==d?0:255,u[e+B]=I<<24|b<<16|b<<8|b;else if(16==h)for(B=0;B<n;B++)b=r[t+(B<<1)],I=A(r,t+(B<<1))==d?0:255,u[e+B]=I<<24|b<<16|b<<8|b}return c}function n(t,r,n,a){const s=i(t),c=new Uint8Array((Math.ceil(n*s/8)+1+t.interlace)*a);return r=t.tabs.CgBI?o(r,c):e(r,c),0==t.interlace?r=f(r,t,0,n,a):1==t.interlace&&(r=function(t,r){const n=r.width,e=r.height,o=i(r),a=o>>3,s=Math.ceil(n*o/8),c=new Uint8Array(e*s);let u=0;const l=[0,0,4,0,2,0,1],h=[0,4,0,2,0,1,0],A=[8,8,8,4,4,2,2],v=[8,8,4,4,2,2,1];let w=0;for(;w<7;){const i=A[w],y=v[w];let p=0,m=0,g=l[w];for(;g<e;)g+=i,m++;let E=h[w];for(;E<n;)E+=y,p++;const U=Math.ceil(p*o/8);f(t,r,u,p,m);let b=0,M=l[w];for(;M<e;){let r=h[w],e=u+b*U<<3;for(;r<n;){var d;if(1==o&&(d=(d=t[e>>3])>>7-(7&e)&1,c[M*s+(r>>3)]|=d<<7-(7&r)),2==o&&(d=(d=t[e>>3])>>6-(7&e)&3,c[M*s+(r>>2)]|=d<<6-((3&r)<<1)),4==o&&(d=(d=t[e>>3])>>4-(7&e)&15,c[M*s+(r>>1)]|=d<<4-((1&r)<<2)),o>=8){const n=M*s+r*a;for(let r=0;r<a;r++)c[n+r]=t[(e>>3)+r]}e+=o,r+=y}b++,M+=i}p*m!=0&&(u+=m*(1+U)),w+=1}return c}(r,t)),r}function e(t,r){return o(new Uint8Array(t.buffer,2,t.length-6),r)}var o=function(){const t={H:{}};return t.H.N=function(r,n){const e=Uint8Array;let o,i,f=0,a=0,s=0,c=0,u=0,l=0,h=0,A=0,v=0;if(3==r[0]&&0==r[1])return n||new e(0);const w=t.H,d=w.b,y=w.e,p=w.R,m=w.n,g=w.A,E=w.Z,U=w.m,b=null==n;for(b&&(n=new e(r.length>>>2<<5));0==f;)if(f=d(r,v,1),a=d(r,v+1,2),v+=3,0!=a){if(b&&(n=t.H.W(n,A+(1<<17))),1==a&&(o=U.J,i=U.h,l=511,h=31),2==a){s=y(r,v,5)+257,c=y(r,v+5,5)+1,u=y(r,v+10,4)+4,v+=14;let t=1;for(var M=0;M<38;M+=2)U.Q[M]=0,U.Q[M+1]=0;for(M=0;M<u;M++){const n=y(r,v+3*M,3);U.Q[1+(U.X[M]<<1)]=n,n>t&&(t=n)}v+=3*u,m(U.Q,t),g(U.Q,t,U.u),o=U.w,i=U.d,v=p(U.u,(1<<t)-1,s+c,r,v,U.v);const n=w.V(U.v,0,s,U.C);l=(1<<n)-1;const e=w.V(U.v,s,c,U.D);h=(1<<e)-1,m(U.C,n),g(U.C,n,o),m(U.D,e),g(U.D,e,i)}for(;;){const t=o[E(r,v)&l];v+=15&t;const e=t>>>4;if(e>>>8==0)n[A++]=e;else{if(256==e)break;{let t=A+e-254;if(e>264){const n=U.q[e-257];t=A+(n>>>3)+y(r,v,7&n),v+=7&n}const o=i[E(r,v)&h];v+=15&o;const f=o>>>4,a=U.c[f],s=(a>>>4)+d(r,v,15&a);for(v+=15&a;A<t;)n[A]=n[A++-s],n[A]=n[A++-s],n[A]=n[A++-s],n[A]=n[A++-s];A=t}}}}else{7&v&&(v+=8-(7&v));const o=4+(v>>>3),i=r[o-4]|r[o-3]<<8;b&&(n=t.H.W(n,A+i)),n.set(new e(r.buffer,r.byteOffset+o,i),A),v=o+i<<3,A+=i}return n.length==A?n:n.slice(0,A)},t.H.W=function(t,r){const n=t.length;if(r<=n)return t;const e=new Uint8Array(n<<1);return e.set(t,0),e},t.H.R=function(r,n,e,o,i,f){const a=t.H.e,s=t.H.Z;let c=0;for(;c<e;){const t=r[s(o,i)&n];i+=15&t;const e=t>>>4;if(e<=15)f[c]=e,c++;else{let t=0,r=0;16==e?(r=3+a(o,i,2),i+=2,t=f[c-1]):17==e?(r=3+a(o,i,3),i+=3):18==e&&(r=11+a(o,i,7),i+=7);const n=c+r;for(;c<n;)f[c]=t,c++}}return i},t.H.V=function(t,r,n,e){let o=0,i=0;const f=e.length>>>1;for(;i<n;){const n=t[i+r];e[i<<1]=0,e[1+(i<<1)]=n,n>o&&(o=n),i++}for(;i<f;)e[i<<1]=0,e[1+(i<<1)]=0,i++;return o},t.H.n=function(r,n){const e=t.H.m,o=r.length;let i,f,a,s;const c=e.j;for(var u=0;u<=n;u++)c[u]=0;for(u=1;u<o;u+=2)c[r[u]]++;const l=e.K;for(i=0,c[0]=0,f=1;f<=n;f++)i=i+c[f-1]<<1,l[f]=i;for(a=0;a<o;a+=2)s=r[a+1],0!=s&&(r[a]=l[s],l[s]++)},t.H.A=function(r,n,e){const o=r.length,i=t.H.m.r;for(let t=0;t<o;t+=2)if(0!=r[t+1]){const o=t>>1,f=r[t+1],a=o<<4|f,s=n-f;let c=r[t]<<s;const u=c+(1<<s);for(;c!=u;)e[i[c]>>>15-n]=a,c++}},t.H.l=function(r,n){const e=t.H.m.r,o=15-n;for(let t=0;t<r.length;t+=2){const i=r[t]<<n-r[t+1];r[t]=e[i]>>>o}},t.H.M=function(t,r,n){n<<=7&r;const e=r>>>3;t[e]|=n,t[e+1]|=n>>>8},t.H.I=function(t,r,n){n<<=7&r;const e=r>>>3;t[e]|=n,t[e+1]|=n>>>8,t[e+2]|=n>>>16},t.H.e=function(t,r,n){return(t[r>>>3]|t[1+(r>>>3)]<<8)>>>(7&r)&(1<<n)-1},t.H.b=function(t,r,n){return(t[r>>>3]|t[1+(r>>>3)]<<8|t[2+(r>>>3)]<<16)>>>(7&r)&(1<<n)-1},t.H.Z=function(t,r){return(t[r>>>3]|t[1+(r>>>3)]<<8|t[2+(r>>>3)]<<16)>>>(7&r)},t.H.i=function(t,r){return(t[r>>>3]|t[1+(r>>>3)]<<8|t[2+(r>>>3)]<<16|t[3+(r>>>3)]<<24)>>>(7&r)},t.H.m=function(){const t=Uint16Array,r=Uint32Array;return{K:new t(16),j:new t(16),X:[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],S:[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,999,999,999],T:[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,0,0,0],q:new t(32),p:[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,65535,65535],z:[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,0,0],c:new r(32),J:new t(512),yt:[],h:new t(32),$:[],w:new t(32768),C:[],v:[],d:new t(32768),D:[],u:new t(512),Q:[],r:new t(32768),s:new r(286),Y:new r(30),a:new r(19),t:new r(15e3),k:new t(65536),g:new t(32768)}}(),function(){const r=t.H.m;for(var n=0;n<32768;n++){let t=n;t=(2863311530&t)>>>1|(1431655765&t)<<1,t=(3435973836&t)>>>2|(858993459&t)<<2,t=(4042322160&t)>>>4|(252645135&t)<<4,t=(4278255360&t)>>>8|(16711935&t)<<8,r.r[n]=(t>>>16|t<<16)>>>17}function e(t,r,n){for(;0!=r--;)t.push(0,n)}for(n=0;n<32;n++)r.q[n]=r.S[n]<<3|r.T[n],r.c[n]=r.p[n]<<4|r.z[n];e(r.yt,144,8),e(r.yt,112,9),e(r.yt,24,7),e(r.yt,8,8),t.H.n(r.yt,9),t.H.A(r.yt,9,r.J),t.H.l(r.yt,9),e(r.$,32,5),t.H.n(r.$,5),t.H.A(r.$,5,r.h),t.H.l(r.$,5),e(r.Q,19,0),e(r.C,286,0),e(r.D,30,0),e(r.v,320,0)}(),t.H.N}();function i(t){return[1,null,3,1,2,null,4][t.ctype]*t.depth}function f(t,r,n,e,o){let f=i(r);const s=Math.ceil(e*f/8);let c,u;f=Math.ceil(f/8);let l=t[n],h=0;if(l>1&&(t[n]=[0,0,1][l-2]),3==l)for(h=f;h<s;h++)t[h+1]=t[h+1]+(t[h+1-f]>>>1)&255;for(let r=0;r<o;r++)if(c=n+r*s,u=c+r+1,l=t[u-1],h=0,0==l)for(;h<s;h++)t[c+h]=t[u+h];else if(1==l){for(;h<f;h++)t[c+h]=t[u+h];for(;h<s;h++)t[c+h]=t[u+h]+t[c+h-f]}else if(2==l)for(;h<s;h++)t[c+h]=t[u+h]+t[c+h-s];else if(3==l){for(;h<f;h++)t[c+h]=t[u+h]+(t[c+h-s]>>>1);for(;h<s;h++)t[c+h]=t[u+h]+(t[c+h-s]+t[c+h-f]>>>1)}else{for(;h<f;h++)t[c+h]=t[u+h]+a(0,t[c+h-s],0);for(;h<s;h++)t[c+h]=t[u+h]+a(t[c+h-f],t[c+h-s],t[c+h-f-s])}return t}function a(t,r,n){const e=t+r-n,o=e-t,i=e-r,f=e-n;return o*o<=i*i&&o*o<=f*f?t:i*i<=f*f?r:n}function s(r,n,e){e.width=t.readUint(r,n),n+=4,e.height=t.readUint(r,n),n+=4,e.depth=r[n],n++,e.ctype=r[n],n++,e.compress=r[n],n++,e.filter=r[n],n++,e.interlace=r[n],n++}function c(t,r,n,e,o,i,f,a,s){const c=Math.min(r,o),u=Math.min(n,i);let l=0,h=0;for(let n=0;n<u;n++)for(let i=0;i<c;i++)if(f>=0&&a>=0?(l=n*r+i<<2,h=(a+n)*o+f+i<<2):(l=(-a+n)*r-f+i<<2,h=n*o+i<<2),0==s)e[h]=t[l],e[h+1]=t[l+1],e[h+2]=t[l+2],e[h+3]=t[l+3];else if(1==s){var A=t[l+3]*(1/255),v=t[l]*A,w=t[l+1]*A,d=t[l+2]*A,y=e[h+3]*(1/255),p=e[h]*y,m=e[h+1]*y,g=e[h+2]*y;const r=1-A,n=A+y*r,o=0==n?0:1/n;e[h+3]=255*n,e[h+0]=(v+p*r)*o,e[h+1]=(w+m*r)*o,e[h+2]=(d+g*r)*o}else if(2==s)A=t[l+3],v=t[l],w=t[l+1],d=t[l+2],y=e[h+3],p=e[h],m=e[h+1],g=e[h+2],A==y&&v==p&&w==m&&d==g?(e[h]=0,e[h+1]=0,e[h+2]=0,e[h+3]=0):(e[h]=v,e[h+1]=w,e[h+2]=d,e[h+3]=A);else if(3==s){if(A=t[l+3],v=t[l],w=t[l+1],d=t[l+2],y=e[h+3],p=e[h],m=e[h+1],g=e[h+2],A==y&&v==p&&w==m&&d==g)continue;if(A<220&&y>20)return!1}return!0}return{decode:function(r){const i=new Uint8Array(r);let f=8;const a=t,c=a.readUshort,u=a.readUint,l={tabs:{},frames:[]},h=new Uint8Array(i.length);let A,v=0,w=0;const d=[137,80,78,71,13,10,26,10];for(var y=0;y<8;y++)if(i[y]!=d[y])throw"The input is not a PNG file!";for(;f<i.length;){const t=a.readUint(i,f);f+=4;const r=a.readASCII(i,f,4);if(f+=4,"IHDR"==r)s(i,f,l);else if("iCCP"==r){for(var p=f;0!=i[p];)p++;a.readASCII(i,f,p-f);const n=i.slice(p+2,f+t);let s=null;try{s=e(n)}catch(t){s=o(n)}l.tabs[r]=s}else if("CgBI"==r)l.tabs[r]=i.slice(f,f+4);else if("IDAT"==r){for(y=0;y<t;y++)h[v+y]=i[f+y];v+=t}else if("acTL"==r)l.tabs[r]={num_frames:u(i,f),num_plays:u(i,f+4)},A=new Uint8Array(i.length);else if("fcTL"==r){0!=w&&((M=l.frames[l.frames.length-1]).data=n(l,A.slice(0,w),M.rect.width,M.rect.height),w=0);const t={x:u(i,f+12),y:u(i,f+16),width:u(i,f+4),height:u(i,f+8)};let r=c(i,f+22);r=c(i,f+20)/(0==r?100:r);const e={rect:t,delay:Math.round(1e3*r),dispose:i[f+24],blend:i[f+25]};l.frames.push(e)}else if("fdAT"==r){for(y=0;y<t-4;y++)A[w+y]=i[f+y+4];w+=t-4}else if("pHYs"==r)l.tabs[r]=[a.readUint(i,f),a.readUint(i,f+4),i[f+8]];else if("cHRM"==r)for(l.tabs[r]=[],y=0;y<8;y++)l.tabs[r].push(a.readUint(i,f+4*y));else if("tEXt"==r||"zTXt"==r){null==l.tabs[r]&&(l.tabs[r]={});var m=a.nextZero(i,f),g=a.readASCII(i,f,m-f),E=f+t-m-1;if("tEXt"==r)b=a.readASCII(i,m+1,E);else{var U=e(i.slice(m+2,m+2+E));b=a.readUTF8(U,0,U.length)}l.tabs[r][g]=b}else if("iTXt"==r){null==l.tabs[r]&&(l.tabs[r]={}),m=0,p=f,m=a.nextZero(i,p),g=a.readASCII(i,p,m-p);const n=i[p=m+1];var b;p+=2,m=a.nextZero(i,p),a.readASCII(i,p,m-p),p=m+1,m=a.nextZero(i,p),a.readUTF8(i,p,m-p),E=t-((p=m+1)-f),0==n?b=a.readUTF8(i,p,E):(U=e(i.slice(p,p+E)),b=a.readUTF8(U,0,U.length)),l.tabs[r][g]=b}else if("PLTE"==r)l.tabs[r]=a.readBytes(i,f,t);else if("hIST"==r){const t=l.tabs.PLTE.length/3;for(l.tabs[r]=[],y=0;y<t;y++)l.tabs[r].push(c(i,f+2*y))}else if("tRNS"==r)3==l.ctype?l.tabs[r]=a.readBytes(i,f,t):0==l.ctype?l.tabs[r]=c(i,f):2==l.ctype&&(l.tabs[r]=[c(i,f),c(i,f+2),c(i,f+4)]);else if("gAMA"==r)l.tabs[r]=a.readUint(i,f)/1e5;else if("sRGB"==r)l.tabs[r]=i[f];else if("bKGD"==r)0==l.ctype||4==l.ctype?l.tabs[r]=[c(i,f)]:2==l.ctype||6==l.ctype?l.tabs[r]=[c(i,f),c(i,f+2),c(i,f+4)]:3==l.ctype&&(l.tabs[r]=i[f]);else if("IEND"==r)break;f+=t,a.readUint(i,f),f+=4}var M;return 0!=w&&((M=l.frames[l.frames.length-1]).data=n(l,A.slice(0,w),M.rect.width,M.rect.height)),l.data=n(l,h,l.width,l.height),delete l.compress,delete l.interlace,delete l.filter,l},toRGBA8:function(t){const n=t.width,e=t.height;if(null==t.tabs.acTL)return[r(t.data,n,e,t).buffer];const o=[];null==t.frames[0].data&&(t.frames[0].data=t.data);const i=n*e*4,f=new Uint8Array(i),a=new Uint8Array(i),s=new Uint8Array(i);for(let l=0;l<t.frames.length;l++){const h=t.frames[l],A=h.rect.x,v=h.rect.y,w=h.rect.width,d=h.rect.height,y=r(h.data,w,d,t);if(0!=l)for(var u=0;u<i;u++)s[u]=f[u];if(0==h.blend?c(y,w,d,f,n,e,A,v,0):1==h.blend&&c(y,w,d,f,n,e,A,v,1),o.push(f.buffer.slice(0)),0==h.dispose);else if(1==h.dispose)c(a,w,d,f,n,e,A,v,0);else if(2==h.dispose)for(u=0;u<i;u++)f[u]=s[u]}return o},gt:a,Et:c,Ut:t}}();!function(){const{Et:t}=c,{Ut:r}=c,n=c.gt;var e={table:function(){const t=new Uint32Array(256);for(let r=0;r<256;r++){let n=r;for(let t=0;t<8;t++)1&n?n=3988292384^n>>>1:n>>>=1;t[r]=n}return t}(),update(t,r,n,o){for(let i=0;i<o;i++)t=e.table[255&(t^r[n+i])]^t>>>8;return t},crc:(t,r,n)=>4294967295^e.update(4294967295,t,r,n)};function o(t,r,n,e){r[n]+=t[0]*e>>4,r[n+1]+=t[1]*e>>4,r[n+2]+=t[2]*e>>4,r[n+3]+=t[3]*e>>4}function i(t){return Math.max(0,Math.min(255,t))}function f(t,r){const n=t[0]-r[0],e=t[1]-r[1],o=t[2]-r[2],i=t[3]-r[3];return n*n+e*e+o*o+i*i}function a(t,r,n,e,a,s,c){null==c&&(c=1);const u=e.length,l=[];for(var h=0;h<u;h++){const t=e[h];l.push([t>>>0&255,t>>>8&255,t>>>16&255,t>>>24&255])}for(h=0;h<u;h++){let t=4294967295;for(var A=0,v=0;v<u;v++){var w=f(l[h],l[v]);v!=h&&w<t&&(t=w,A=v)}}const d=new Uint32Array(a.buffer),y=new Int16Array(r*n*4),p=[0,8,2,10,12,4,14,6,3,11,1,9,15,7,13,5];for(h=0;h<p.length;h++)p[h]=255*((p[h]+.5)/16-.5);for(let a=0;a<n;a++)for(let g=0;g<r;g++){var m;h=4*(a*r+g),2!=c?m=[i(t[h]+y[h]),i(t[h+1]+y[h+1]),i(t[h+2]+y[h+2]),i(t[h+3]+y[h+3])]:(w=p[4*(3&a)+(3&g)],m=[i(t[h]+w),i(t[h+1]+w),i(t[h+2]+w),i(t[h+3]+w)]),A=0;let E=16777215;for(v=0;v<u;v++){const t=f(m,l[v]);t<E&&(E=t,A=v)}const U=l[A],b=[m[0]-U[0],m[1]-U[1],m[2]-U[2],m[3]-U[3]];1==c&&(g!=r-1&&o(b,y,h+4,7),a!=n-1&&(0!=g&&o(b,y,h+4*r-4,3),o(b,y,h+4*r,5),g!=r-1&&o(b,y,h+4*r+4,1))),s[h>>2]=A,d[h>>2]=e[A]}}function u(t,n,o,i,f){null==f&&(f={});const{crc:a}=e,s=r.writeUint,c=r.writeUshort,u=r.writeASCII;let l=8;const h=t.frames.length>1;let A,v=!1,w=33+(h?20:0);if(null!=f.sRGB&&(w+=13),null!=f.pHYs&&(w+=21),null!=f.iCCP&&(A=pako.deflate(f.iCCP),w+=21+A.length+4),3==t.ctype){for(var d=t.plte.length,y=0;y<d;y++)t.plte[y]>>>24!=255&&(v=!0);w+=8+3*d+4+(v?8+1*d+4:0)}for(var p=0;p<t.frames.length;p++)h&&(w+=38),w+=(U=t.frames[p]).cimg.length+12,0!=p&&(w+=4);w+=12;const m=new Uint8Array(w),g=[137,80,78,71,13,10,26,10];for(y=0;y<8;y++)m[y]=g[y];if(s(m,l,13),l+=4,u(m,l,"IHDR"),l+=4,s(m,l,n),l+=4,s(m,l,o),l+=4,m[l]=t.depth,l++,m[l]=t.ctype,l++,m[l]=0,l++,m[l]=0,l++,m[l]=0,l++,s(m,l,a(m,l-17,17)),l+=4,null!=f.sRGB&&(s(m,l,1),l+=4,u(m,l,"sRGB"),l+=4,m[l]=f.sRGB,l++,s(m,l,a(m,l-5,5)),l+=4),null!=f.iCCP){const t=13+A.length;s(m,l,t),l+=4,u(m,l,"iCCP"),l+=4,u(m,l,"ICC profile"),l+=11,l+=2,m.set(A,l),l+=A.length,s(m,l,a(m,l-(t+4),t+4)),l+=4}if(null!=f.pHYs&&(s(m,l,9),l+=4,u(m,l,"pHYs"),l+=4,s(m,l,f.pHYs[0]),l+=4,s(m,l,f.pHYs[1]),l+=4,m[l]=f.pHYs[2],l++,s(m,l,a(m,l-13,13)),l+=4),h&&(s(m,l,8),l+=4,u(m,l,"acTL"),l+=4,s(m,l,t.frames.length),l+=4,s(m,l,null!=f.loop?f.loop:0),l+=4,s(m,l,a(m,l-12,12)),l+=4),3==t.ctype){for(s(m,l,3*(d=t.plte.length)),l+=4,u(m,l,"PLTE"),l+=4,y=0;y<d;y++){const r=3*y,n=t.plte[y],e=255&n,o=n>>>8&255,i=n>>>16&255;m[l+r+0]=e,m[l+r+1]=o,m[l+r+2]=i}if(l+=3*d,s(m,l,a(m,l-3*d-4,3*d+4)),l+=4,v){for(s(m,l,d),l+=4,u(m,l,"tRNS"),l+=4,y=0;y<d;y++)m[l+y]=t.plte[y]>>>24&255;l+=d,s(m,l,a(m,l-d-4,d+4)),l+=4}}let E=0;for(p=0;p<t.frames.length;p++){var U=t.frames[p];h&&(s(m,l,26),l+=4,u(m,l,"fcTL"),l+=4,s(m,l,E++),l+=4,s(m,l,U.rect.width),l+=4,s(m,l,U.rect.height),l+=4,s(m,l,U.rect.x),l+=4,s(m,l,U.rect.y),l+=4,c(m,l,i[p]),l+=2,c(m,l,1e3),l+=2,m[l]=U.dispose,l++,m[l]=U.blend,l++,s(m,l,a(m,l-30,30)),l+=4);const r=U.cimg;s(m,l,(d=r.length)+(0==p?0:4)),l+=4;const n=l;u(m,l,0==p?"IDAT":"fdAT"),l+=4,0!=p&&(s(m,l,E++),l+=4),m.set(r,l),l+=d,s(m,l,a(m,n,l-n)),l+=4}return s(m,l,0),l+=4,u(m,l,"IEND"),l+=4,s(m,l,a(m,l-4,4)),l+=4,m.buffer}function l(t,r,n){for(let e=0;e<t.frames.length;e++){const o=t.frames[e],i=o.rect.height,f=new Uint8Array(i*o.bpl+i);o.cimg=w(o.img,i,o.bpp,o.bpl,f,r,n)}}function h(r,n,e,o,i){const f=i[0],s=i[1],c=i[2],u=i[3],l=i[4],h=i[5];let w=6,d=8,p=255;for(var m=0;m<r.length;m++){const t=new Uint8Array(r[m]);for(var g=t.length,E=0;E<g;E+=4)p&=t[E+3]}const U=255!=p,b=function(r,n,e,o,i,f){const a=[];for(var s=0;s<r.length;s++){const l=new Uint8Array(r[s]),A=new Uint32Array(l.buffer);var c;let w=0,d=0,y=n,p=e,m=o?1:0;if(0!=s){const g=f||o||1==s||0!=a[s-2].dispose?1:2;let E=0,U=1e9;for(let t=0;t<g;t++){var u=new Uint8Array(r[s-1-t]);const o=new Uint32Array(r[s-1-t]);let f=n,a=e,c=-1,l=-1;for(let t=0;t<e;t++)for(let r=0;r<n;r++)A[h=t*n+r]!=o[h]&&(r<f&&(f=r),r>c&&(c=r),t<a&&(a=t),t>l&&(l=t));-1==c&&(f=a=c=l=0),i&&(!(1&~f)&&f--,!(1&~a)&&a--);const v=(c-f+1)*(l-a+1);v<U&&(U=v,E=t,w=f,d=a,y=c-f+1,p=l-a+1)}u=new Uint8Array(r[s-1-E]),1==E&&(a[s-1].dispose=2),c=new Uint8Array(y*p*4),t(u,n,e,c,y,p,-w,-d,0),m=t(l,n,e,c,y,p,-w,-d,3)?1:0,1==m?v(l,n,e,c,{x:w,y:d,width:y,height:p}):t(l,n,e,c,y,p,-w,-d,0)}else c=l.slice(0);a.push({rect:{x:w,y:d,width:y,height:p},img:c,blend:m,dispose:0})}if(o)for(s=0;s<a.length;s++){if(1==(w=a[s]).blend)continue;const t=w.rect,o=a[s-1].rect,f=Math.min(t.x,o.x),c=Math.min(t.y,o.y),u={x:f,y:c,width:Math.max(t.x+t.width,o.x+o.width)-f,height:Math.max(t.y+t.height,o.y+o.height)-c};a[s-1].dispose=1,s-1!=0&&A(r,n,e,a,s-1,u,i),A(r,n,e,a,s,u,i)}let l=0;if(1!=r.length)for(var h=0;h<a.length;h++){var w;l+=(w=a[h]).rect.width*w.rect.height}return a}(r,n,e,f,s,c),M={},B=[],I=[];if(0!=o){const t=[];for(E=0;E<b.length;E++)t.push(b[E].img.buffer);const r=function(t){let r=0;for(var n=0;n<t.length;n++)r+=t[n].byteLength;const e=new Uint8Array(r);let o=0;for(n=0;n<t.length;n++){const r=new Uint8Array(t[n]),i=r.length;for(let t=0;t<i;t+=4){let n=r[t],i=r[t+1],f=r[t+2];const a=r[t+3];0==a&&(n=i=f=0),e[o+t]=n,e[o+t+1]=i,e[o+t+2]=f,e[o+t+3]=a}o+=i}return e.buffer}(t),n=y(r,o);for(E=0;E<n.plte.length;E++)B.push(n.plte[E].est.rgba);let e=0;for(E=0;E<b.length;E++){const t=(T=b[E]).img.length;var Q=new Uint8Array(n.inds.buffer,e>>2,t>>2);I.push(Q);const r=new Uint8Array(n.abuf,e,t);h&&a(T.img,T.rect.width,T.rect.height,B,r,Q),T.img.set(r),e+=t}}else for(m=0;m<b.length;m++){var T=b[m];const t=new Uint32Array(T.img.buffer);var C=T.rect.width;for(g=t.length,Q=new Uint8Array(g),I.push(Q),E=0;E<g;E++){const r=t[E];if(0!=E&&r==t[E-1])Q[E]=Q[E-1];else if(E>C&&r==t[E-C])Q[E]=Q[E-C];else{let t=M[r];if(null==t&&(M[r]=t=B.length,B.push(r),B.length>=300))break;Q[E]=t}}}const S=B.length;for(S<=256&&0==l&&(d=S<=2?1:S<=4?2:S<=16?4:8,d=Math.max(d,u)),m=0;m<b.length;m++){(T=b[m]).rect.x,C=T.rect.width;const t=T.rect.height;let r=T.img,n=4*C,e=4;if(S<=256&&0==l){n=Math.ceil(d*C/8);var P=new Uint8Array(n*t);const o=I[m];for(let r=0;r<t;r++){E=r*n;const t=r*C;if(8==d)for(var k=0;k<C;k++)P[E+k]=o[t+k];else if(4==d)for(k=0;k<C;k++)P[E+(k>>1)]|=o[t+k]<<4-4*(1&k);else if(2==d)for(k=0;k<C;k++)P[E+(k>>2)]|=o[t+k]<<6-2*(3&k);else if(1==d)for(k=0;k<C;k++)P[E+(k>>3)]|=o[t+k]<<7-1*(7&k)}r=P,w=3,e=1}else if(0==U&&1==b.length){P=new Uint8Array(C*t*3);const o=C*t;for(E=0;E<o;E++){const t=3*E,n=4*E;P[t]=r[n],P[t+1]=r[n+1],P[t+2]=r[n+2]}r=P,w=2,e=3,n=3*C}T.img=r,T.bpl=n,T.bpp=e}return{ctype:w,depth:d,plte:B,frames:b}}function A(r,n,e,o,i,f,a){const s=Uint8Array,c=Uint32Array,u=new s(r[i-1]),l=new c(r[i-1]),h=i+1<r.length?new s(r[i+1]):null,A=new s(r[i]),w=new c(A.buffer);let d=n,y=e,p=-1,m=-1;for(let t=0;t<f.height;t++)for(let r=0;r<f.width;r++){const e=f.x+r,a=f.y+t,s=a*n+e,c=w[s];0==c||0==o[i-1].dispose&&l[s]==c&&(null==h||0!=h[4*s+3])||(e<d&&(d=e),e>p&&(p=e),a<y&&(y=a),a>m&&(m=a))}-1==p&&(d=y=p=m=0),a&&(!(1&~d)&&d--,!(1&~y)&&y--),f={x:d,y:y,width:p-d+1,height:m-y+1};const g=o[i];g.rect=f,g.blend=1,g.img=new Uint8Array(f.width*f.height*4),0==o[i-1].dispose?(t(u,n,e,g.img,f.width,f.height,-f.x,-f.y,0),v(A,n,e,g.img,f)):t(A,n,e,g.img,f.width,f.height,-f.x,-f.y,0)}function v(r,n,e,o,i){t(r,n,e,o,i.width,i.height,-i.x,-i.y,2)}function w(t,r,n,e,o,i,f){const a=[];let c,u=[0,1,2,3,4];-1!=i?u=[i]:(r*e>5e5||1==n)&&(u=[0]),f&&(c={level:0});const l=s;for(var h=0;h<u.length;h++){for(let i=0;i<r;i++)d(o,t,i,e,n,u[h]);a.push(l.deflate(o,c))}let A,v=1e9;for(h=0;h<a.length;h++)a[h].length<v&&(A=h,v=a[h].length);return a[A]}function d(t,r,e,o,i,f){const a=e*o;let s=a+e;if(t[s]=f,s++,0==f)if(o<500)for(var c=0;c<o;c++)t[s+c]=r[a+c];else t.set(new Uint8Array(r.buffer,a,o),s);else if(1==f){for(c=0;c<i;c++)t[s+c]=r[a+c];for(c=i;c<o;c++)t[s+c]=r[a+c]-r[a+c-i]+256&255}else if(0==e){for(c=0;c<i;c++)t[s+c]=r[a+c];if(2==f)for(c=i;c<o;c++)t[s+c]=r[a+c];if(3==f)for(c=i;c<o;c++)t[s+c]=r[a+c]-(r[a+c-i]>>1)+256&255;if(4==f)for(c=i;c<o;c++)t[s+c]=r[a+c]-n(r[a+c-i],0,0)+256&255}else{if(2==f)for(c=0;c<o;c++)t[s+c]=r[a+c]+256-r[a+c-o]&255;if(3==f){for(c=0;c<i;c++)t[s+c]=r[a+c]+256-(r[a+c-o]>>1)&255;for(c=i;c<o;c++)t[s+c]=r[a+c]+256-(r[a+c-o]+r[a+c-i]>>1)&255}if(4==f){for(c=0;c<i;c++)t[s+c]=r[a+c]+256-n(0,r[a+c-o],0)&255;for(c=i;c<o;c++)t[s+c]=r[a+c]+256-n(r[a+c-i],r[a+c-o],r[a+c-i-o])&255}}}function y(t,r){const n=new Uint8Array(t),e=n.slice(0),o=new Uint32Array(e.buffer),i=p(e,r),f=i[0],a=i[1],s=n.length,c=new Uint8Array(s>>2);let u;if(n.length<2e7)for(var l=0;l<s;l+=4)u=m(f,h=n[l]*(1/255),A=n[l+1]*(1/255),v=n[l+2]*(1/255),w=n[l+3]*(1/255)),c[l>>2]=u.ind,o[l>>2]=u.est.rgba;else for(l=0;l<s;l+=4){var h=n[l]*(1/255),A=n[l+1]*(1/255),v=n[l+2]*(1/255),w=n[l+3]*(1/255);for(u=f;u.left;)u=g(u.est,h,A,v,w)<=0?u.left:u.right;c[l>>2]=u.ind,o[l>>2]=u.est.rgba}return{abuf:e.buffer,inds:c,plte:a}}function p(t,r,n){null==n&&(n=1e-4);const e=new Uint32Array(t.buffer),o={i0:0,i1:t.length,bst:null,est:null,tdst:0,left:null,right:null};o.bst=b(t,o.i0,o.i1),o.est=M(o.bst);const i=[o];for(;i.length<r;){let r=0,o=0;for(var f=0;f<i.length;f++)i[f].est.L>r&&(r=i[f].est.L,o=f);if(r<n)break;const a=i[o],s=E(t,e,a.i0,a.i1,a.est.e,a.est.eMq255);if(a.i0>=s||a.i1<=s){a.est.L=0;continue}const c={i0:a.i0,i1:s,bst:null,est:null,tdst:0,left:null,right:null};c.bst=b(t,c.i0,c.i1),c.est=M(c.bst);const u={i0:s,i1:a.i1,bst:null,est:null,tdst:0,left:null,right:null};for(u.bst={R:[],m:[],N:a.bst.N-c.bst.N},f=0;f<16;f++)u.bst.R[f]=a.bst.R[f]-c.bst.R[f];for(f=0;f<4;f++)u.bst.m[f]=a.bst.m[f]-c.bst.m[f];u.est=M(u.bst),a.left=c,a.right=u,i[o]=c,i.push(u)}for(i.sort(((t,r)=>r.bst.N-t.bst.N)),f=0;f<i.length;f++)i[f].ind=f;return[o,i]}function m(t,r,n,e,o){if(null==t.left)return t.tdst=function(t,r,n,e,o){const i=r-t[0],f=n-t[1],a=e-t[2],s=o-t[3];return i*i+f*f+a*a+s*s}(t.est.q,r,n,e,o),t;const i=g(t.est,r,n,e,o);let f=t.left,a=t.right;i>0&&(f=t.right,a=t.left);const s=m(f,r,n,e,o);if(s.tdst<=i*i)return s;const c=m(a,r,n,e,o);return c.tdst<s.tdst?c:s}function g(t,r,n,e,o){const{e:i}=t;return i[0]*r+i[1]*n+i[2]*e+i[3]*o-t.eMq}function E(t,r,n,e,o,i){for(e-=4;n<e;){for(;U(t,n,o)<=i;)n+=4;for(;U(t,e,o)>i;)e-=4;if(n>=e)break;const f=r[n>>2];r[n>>2]=r[e>>2],r[e>>2]=f,n+=4,e-=4}for(;U(t,n,o)>i;)n-=4;return n+4}function U(t,r,n){return t[r]*n[0]+t[r+1]*n[1]+t[r+2]*n[2]+t[r+3]*n[3]}function b(t,r,n){const e=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],o=[0,0,0,0],i=n-r>>2;for(let i=r;i<n;i+=4){const r=t[i]*(1/255),n=t[i+1]*(1/255),f=t[i+2]*(1/255),a=t[i+3]*(1/255);o[0]+=r,o[1]+=n,o[2]+=f,o[3]+=a,e[0]+=r*r,e[1]+=r*n,e[2]+=r*f,e[3]+=r*a,e[5]+=n*n,e[6]+=n*f,e[7]+=n*a,e[10]+=f*f,e[11]+=f*a,e[15]+=a*a}return e[4]=e[1],e[8]=e[2],e[9]=e[6],e[12]=e[3],e[13]=e[7],e[14]=e[11],{R:e,m:o,N:i}}function M(t){const{R:r}=t,{m:n}=t,{N:e}=t,o=n[0],i=n[1],f=n[2],a=n[3],s=0==e?0:1/e,c=[r[0]-o*o*s,r[1]-o*i*s,r[2]-o*f*s,r[3]-o*a*s,r[4]-i*o*s,r[5]-i*i*s,r[6]-i*f*s,r[7]-i*a*s,r[8]-f*o*s,r[9]-f*i*s,r[10]-f*f*s,r[11]-f*a*s,r[12]-a*o*s,r[13]-a*i*s,r[14]-a*f*s,r[15]-a*a*s],u=c,l=B;let h=[Math.random(),Math.random(),Math.random(),Math.random()],A=0,v=0;if(0!=e)for(let t=0;t<16&&(h=l.multVec(u,h),v=Math.sqrt(l.dot(h,h)),h=l.sml(1/v,h),!(0!=t&&Math.abs(v-A)<1e-9));t++)A=v;const w=[o*s,i*s,f*s,a*s];return{Cov:c,q:w,e:h,L:A,eMq255:l.dot(l.sml(255,w),h),eMq:l.dot(h,w),rgba:(Math.round(255*w[3])<<24|Math.round(255*w[2])<<16|Math.round(255*w[1])<<8|Math.round(255*w[0]))>>>0}}var B={multVec:(t,r)=>[t[0]*r[0]+t[1]*r[1]+t[2]*r[2]+t[3]*r[3],t[4]*r[0]+t[5]*r[1]+t[6]*r[2]+t[7]*r[3],t[8]*r[0]+t[9]*r[1]+t[10]*r[2]+t[11]*r[3],t[12]*r[0]+t[13]*r[1]+t[14]*r[2]+t[15]*r[3]],dot:(t,r)=>t[0]*r[0]+t[1]*r[1]+t[2]*r[2]+t[3]*r[3],sml:(t,r)=>[t*r[0],t*r[1],t*r[2],t*r[3]]};c.encode=function(t,r,n,e,o,i,f){null==e&&(e=0),null==f&&(f=!1);const a=h(t,r,n,e,[!1,!1,!1,0,f,!1]);return l(a,-1),u(a,r,n,o,i)},c.encodeLL=function(t,r,n,e,o,i,f,a){const s={ctype:0+(1==e?0:2)+(0==o?0:4),depth:i,frames:[]},c=(e+o)*i,h=c*r;for(let e=0;e<t.length;e++)s.frames.push({rect:{x:0,y:0,width:r,height:n},img:new Uint8Array(t[e]),blend:0,dispose:1,bpp:Math.ceil(c/8),bpl:Math.ceil(h/8)});return l(s,0,!0),u(s,r,n,f,a)},c.encode.compress=h,c.encode.dither=a,c.quantize=y,c.quantize.getKDtree=p,c.quantize.getNearest=m}();const u={toArrayBuffer(t,r){const n=t.width,e=t.height,o=n<<2,i=t.getContext("2d").getImageData(0,0,n,e),f=new Uint32Array(i.data.buffer),a=(32*n+31)/32<<2,s=a*e,c=122+s,l=new ArrayBuffer(c),h=new DataView(l),A=1<<20;let v,w,d,y,p=A,m=0,g=0,E=0;function U(t){h.setUint16(g,t,!0),g+=2}function b(t){h.setUint32(g,t,!0),g+=4}function M(t){g+=t}U(19778),b(c),M(4),b(122),b(108),b(n),b(-e>>>0),U(1),U(32),b(3),b(s),b(2835),b(2835),M(8),b(16711680),b(65280),b(255),b(4278190080),b(1466527264),function t(){for(;m<e&&p>0;){for(y=122+m*a,v=0;v<o;)p--,w=f[E++],d=w>>>24,h.setUint32(y+v,w<<8|d),v+=4;m++}E<f.length?(p=A,setTimeout(t,u.bt)):r(l)}()},toBlob(t,r){this.toArrayBuffer(t,(t=>{r(new Blob([t],{type:"image/bmp"}))}))},bt:9};var l={CHROME:"CHROME",FIREFOX:"FIREFOX",DESKTOP_SAFARI:"DESKTOP_SAFARI",IE:"IE",IOS:"IOS",ETC:"ETC"},h={[l.CHROME]:16384,[l.FIREFOX]:11180,[l.DESKTOP_SAFARI]:16384,[l.IE]:8192,[l.IOS]:4096,[l.ETC]:8192};const A="undefined"!=typeof window,v="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,w=A&&window.cordova&&window.cordova.require&&window.cordova.require("cordova/modulemapper"),d=(A||v)&&(w&&w.getOriginalSymbol(window,"File")||"undefined"!=typeof File&&File),y=(A||v)&&(w&&w.getOriginalSymbol(window,"FileReader")||"undefined"!=typeof FileReader&&FileReader);function p(t,r,n=Date.now()){return new Promise((e=>{const o=t.split(","),i=o[0].match(/:(.*?);/)[1],f=globalThis.atob(o[1]);let a=f.length;const s=new Uint8Array(a);for(;a--;)s[a]=f.charCodeAt(a);const c=new Blob([s],{type:i});c.name=r,c.lastModified=n,e(c)}))}function m(t){return new Promise(((r,n)=>{const e=new y;e.onload=()=>r(e.result),e.onerror=t=>n(t),e.readAsDataURL(t)}))}function g(t){return new Promise(((r,n)=>{const e=new Image;e.onload=()=>r(e),e.onerror=t=>n(t),e.src=t}))}function E(){if(void 0!==E.cachedResult)return E.cachedResult;let t=l.ETC;const{userAgent:r}=navigator;return/Chrom(e|ium)/i.test(r)?t=l.CHROME:/iP(ad|od|hone)/i.test(r)&&/WebKit/i.test(r)?t=l.IOS:/Safari/i.test(r)?t=l.DESKTOP_SAFARI:/Firefox/i.test(r)?t=l.FIREFOX:(/MSIE/i.test(r)||1==!!document.documentMode)&&(t=l.IE),E.cachedResult=t,E.cachedResult}function U(t,r){const n=E(),e=h[n];let o=t,i=r,f=o*i;const a=o>i?i/o:o/i;for(;f>e*e;){const t=(e+o)/2,r=(e+i)/2;t<r?(i=r,o=r*a):(i=t*a,o=t),f=o*i}return{width:o,height:i}}function b(t,r){let n,e;try{if(n=new OffscreenCanvas(t,r),e=n.getContext("2d"),null===e)throw Error("getContext of OffscreenCanvas returns null")}catch(t){n=document.createElement("canvas"),e=n.getContext("2d")}return n.width=t,n.height=r,[n,e]}function M(t,r){const{width:n,height:e}=U(t.width,t.height),[o,i]=b(n,e);return r&&/jpe?g/.test(r)&&(i.fillStyle="white",i.fillRect(0,0,o.width,o.height)),i.drawImage(t,0,0,o.width,o.height),o}function B(){return void 0!==B.cachedResult||(B.cachedResult=["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"undefined"!=typeof document&&"ontouchend"in document),B.cachedResult}function I(t,r={}){return new Promise((function(n,e){let o,i;var f=function(){try{return i=M(o,r.fileType||t.type),n([o,i])}catch(t){return e(t)}},a=function(r){try{var n=function(t){try{throw t}catch(t){return e(t)}};try{let r;return m(t).then((function(t){try{return r=t,g(r).then((function(t){try{return o=t,function(){try{return f()}catch(t){return e(t)}}()}catch(t){return n(t)}}),n)}catch(t){return n(t)}}),n)}catch(t){n(t)}}catch(t){return e(t)}};try{if(B()||[l.DESKTOP_SAFARI,l.MOBILE_SAFARI].includes(E()))throw Error("Skip createImageBitmap on IOS and Safari");return createImageBitmap(t).then((function(t){try{return o=t,f()}catch(t){return a()}}),a)}catch(t){a()}}))}function Q(t,r,n,e,o=1){return new Promise((function(i,f){let a;if("image/png"===r){let l,h,A;return l=t.getContext("2d"),({data:h}=l.getImageData(0,0,t.width,t.height)),A=c.encode([h.buffer],t.width,t.height,4096*o),a=new Blob([A],{type:r}),a.name=n,a.lastModified=e,s()}{if("image/bmp"===r)return new Promise((r=>u.toBlob(t,r))).then(function(t){try{return a=t,a.name=n,a.lastModified=e,v()}catch(t){return f(t)}}.bind(this),f);{if("function"==typeof OffscreenCanvas&&t instanceof OffscreenCanvas)return t.convertToBlob({type:r,quality:o}).then(function(t){try{return a=t,a.name=n,a.lastModified=e,w()}catch(t){return f(t)}}.bind(this),f);{let d;return d=t.toDataURL(r,o),p(d,n,e).then(function(t){try{return a=t,w()}catch(t){return f(t)}}.bind(this),f)}function w(){return v()}}function v(){return s()}}function s(){return i(a)}}))}function T(t){t.width=0,t.height=0}function C(){return new Promise((function(t,r){let n,e,o,i;return void 0!==C.cachedResult?t(C.cachedResult):p("data:image/jpeg;base64,/9j/4QAiRXhpZgAATU0AKgAAAAgAAQESAAMAAAABAAYAAAAAAAD/2wCEAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/AABEIAAEAAgMBEQACEQEDEQH/xABKAAEAAAAAAAAAAAAAAAAAAAALEAEAAAAAAAAAAAAAAAAAAAAAAQEAAAAAAAAAAAAAAAAAAAAAEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwA/8H//2Q==","test.jpg",Date.now()).then((function(f){try{return n=f,I(n).then((function(f){try{return e=f[1],Q(e,n.type,n.name,n.lastModified).then((function(n){try{return o=n,T(e),I(o).then((function(n){try{return i=n[0],C.cachedResult=1===i.width&&2===i.height,t(C.cachedResult)}catch(t){return r(t)}}),r)}catch(t){return r(t)}}),r)}catch(t){return r(t)}}),r)}catch(t){return r(t)}}),r)}))}function S(t){return new Promise(((r,n)=>{const e=new y;e.onload=t=>{const n=new DataView(t.target.result);if(65496!=n.getUint16(0,!1))return r(-2);const e=n.byteLength;let o=2;for(;o<e;){if(n.getUint16(o+2,!1)<=8)return r(-1);const t=n.getUint16(o,!1);if(o+=2,65505==t){if(1165519206!=n.getUint32(o+=2,!1))return r(-1);const t=18761==n.getUint16(o+=6,!1);o+=n.getUint32(o+4,t);const e=n.getUint16(o,t);o+=2;for(let i=0;i<e;i++)if(274==n.getUint16(o+12*i,t))return r(n.getUint16(o+12*i+8,t))}else{if(65280&~t)break;o+=n.getUint16(o,!1)}}return r(-1)},e.onerror=t=>n(t),e.readAsArrayBuffer(t)}))}function P(t,r){const{width:n}=t,{height:e}=t,{maxWidthOrHeight:o}=r;let i,f=t;return isFinite(o)&&(n>o||e>o)&&([f,i]=b(n,e),n>e?(f.width=o,f.height=e/n*o):(f.width=n/e*o,f.height=o),i.drawImage(t,0,0,f.width,f.height),T(t)),f}function k(t,r){const{width:n}=t,{height:e}=t,[o,i]=b(n,e);switch(r>4&&r<9?(o.width=e,o.height=n):(o.width=n,o.height=e),r){case 2:i.transform(-1,0,0,1,n,0);break;case 3:i.transform(-1,0,0,-1,n,e);break;case 4:i.transform(1,0,0,-1,0,e);break;case 5:i.transform(0,1,1,0,0,0);break;case 6:i.transform(0,1,-1,0,e,0);break;case 7:i.transform(0,-1,-1,0,e,n);break;case 8:i.transform(0,-1,1,0,0,n)}return i.drawImage(t,0,0,n,e),T(t),o}function D(t,r,n=0){return new Promise((function(e,o){let i,f,a,s,c,u,l,h,A,v,w,d,y,p,m,g,E,U,M,B;function D(t=5){if(r.signal&&r.signal.aborted)throw r.signal.reason;i+=t,r.onProgress(Math.min(i,100))}function R(t){if(r.signal&&r.signal.aborted)throw r.signal.reason;i=Math.min(Math.max(t,i),100),r.onProgress(i)}return i=n,f=r.maxIteration||10,a=1024*r.maxSizeMB*1024,D(),I(t,r).then(function(n){try{return[,s]=n,D(),c=P(s,r),D(),new Promise((function(n,e){var o;if(!(o=r.exifOrientation))return S(t).then(function(t){try{return o=t,i(