UNPKG

id-scanner-lib

Version:

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

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