>>1:h>>>1;r[u]=h}return r}();z.exports=function(h,r,u,_){var b=a,p=_+u;h^=-1;for(var v=_;v>>8^b[255&(h^r[v])];return-1^h}},{}],46:[function(A,z,g){var a,h=A("../utils/common"),r=A("./trees"),u=A("./adler32"),_=A("./crc32"),b=A("./messages"),p=0,v=4,i=0,f=-2,d=-1,n=4,s=2,l=8,y=9,D=286,k=30,U=19,B=2*D+1,Z=15,P=3,W=258,Q=W+P+1,m=42,T=113,t=1,L=2,$=3,N=4;function ee(e,O){return e.msg=b[O],O}function j(e){return(e<<1)-(4e.avail_out&&(E=e.avail_out),E!==0&&(h.arraySet(e.output,O.pending_buf,O.pending_out,E,e.next_out),e.next_out+=E,O.pending_out+=E,e.total_out+=E,e.avail_out-=E,O.pending-=E,O.pending===0&&(O.pending_out=0))}function S(e,O){r._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,O),e.block_start=e.strstart,C(e.strm)}function K(e,O){e.pending_buf[e.pending++]=O}function G(e,O){e.pending_buf[e.pending++]=O>>>8&255,e.pending_buf[e.pending++]=255&O}function Y(e,O){var E,c,o=e.max_chain_length,w=e.strstart,R=e.prev_length,M=e.nice_match,x=e.strstart>e.w_size-Q?e.strstart-(e.w_size-Q):0,F=e.window,q=e.w_mask,H=e.prev,X=e.strstart+W,ie=F[w+R-1],re=F[w+R];e.prev_length>=e.good_match&&(o>>=2),M>e.lookahead&&(M=e.lookahead);do if(F[(E=O)+R]===re&&F[E+R-1]===ie&&F[E]===F[w]&&F[++E]===F[w+1]){w+=2,E++;do;while(F[++w]===F[++E]&&F[++w]===F[++E]&&F[++w]===F[++E]&&F[++w]===F[++E]&&F[++w]===F[++E]&&F[++w]===F[++E]&&F[++w]===F[++E]&&F[++w]===F[++E]&&wx&&--o!=0);return R<=e.lookahead?R:e.lookahead}function ae(e){var O,E,c,o,w,R,M,x,F,q,H=e.w_size;do{if(o=e.window_size-e.lookahead-e.strstart,e.strstart>=H+(H-Q)){for(h.arraySet(e.window,e.window,H,H,0),e.match_start-=H,e.strstart-=H,e.block_start-=H,O=E=e.hash_size;c=e.head[--O],e.head[O]=H<=c?c-H:0,--E;);for(O=E=H;c=e.prev[--O],e.prev[O]=H<=c?c-H:0,--E;);o+=H}if(e.strm.avail_in===0)break;if(R=e.strm,M=e.window,x=e.strstart+e.lookahead,F=o,q=void 0,q=R.avail_in,F=P)for(w=e.strstart-e.insert,e.ins_h=e.window[w],e.ins_h=(e.ins_h<=P&&(e.ins_h=(e.ins_h<=P)if(c=r._tr_tally(e,e.strstart-e.match_start,e.match_length-P),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=P){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=P&&(e.ins_h=(e.ins_h<=P&&e.match_length<=e.prev_length){for(o=e.strstart+e.lookahead-P,c=r._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-P),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=o&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(E=e.pending_buf_size-5);;){if(e.lookahead<=1){if(ae(e),e.lookahead===0&&O===p)return t;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var c=e.block_start+E;if((e.strstart===0||e.strstart>=c)&&(e.lookahead=e.strstart-c,e.strstart=c,S(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-Q&&(S(e,!1),e.strm.avail_out===0))return t}return e.insert=0,O===v?(S(e,!0),e.strm.avail_out===0?$:N):(e.strstart>e.block_start&&(S(e,!1),e.strm.avail_out),t)}),new ne(4,4,8,4,ue),new ne(4,5,16,8,ue),new ne(4,6,32,32,ue),new ne(4,4,16,16,te),new ne(8,16,32,32,te),new ne(8,16,128,128,te),new ne(8,32,128,256,te),new ne(32,128,258,1024,te),new ne(32,258,258,4096,te)],g.deflateInit=function(e,O){return he(e,O,l,15,8,0)},g.deflateInit2=he,g.deflateReset=ce,g.deflateResetKeep=se,g.deflateSetHeader=function(e,O){return e&&e.state?e.state.wrap!==2?f:(e.state.gzhead=O,i):f},g.deflate=function(e,O){var E,c,o,w;if(!e||!e.state||5>8&255),K(c,c.gzhead.time>>16&255),K(c,c.gzhead.time>>24&255),K(c,c.level===9?2:2<=c.strategy||c.level<2?4:0),K(c,255&c.gzhead.os),c.gzhead.extra&&c.gzhead.extra.length&&(K(c,255&c.gzhead.extra.length),K(c,c.gzhead.extra.length>>8&255)),c.gzhead.hcrc&&(e.adler=_(e.adler,c.pending_buf,c.pending,0)),c.gzindex=0,c.status=69):(K(c,0),K(c,0),K(c,0),K(c,0),K(c,0),K(c,c.level===9?2:2<=c.strategy||c.level<2?4:0),K(c,3),c.status=T);else{var R=l+(c.w_bits-8<<4)<<8;R|=(2<=c.strategy||c.level<2?0:c.level<6?1:c.level===6?2:3)<<6,c.strstart!==0&&(R|=32),R+=31-R%31,c.status=T,G(c,R),c.strstart!==0&&(G(c,e.adler>>>16),G(c,65535&e.adler)),e.adler=1}if(c.status===69)if(c.gzhead.extra){for(o=c.pending;c.gzindex<(65535&c.gzhead.extra.length)&&(c.pending!==c.pending_buf_size||(c.gzhead.hcrc&&c.pending>o&&(e.adler=_(e.adler,c.pending_buf,c.pending-o,o)),C(e),o=c.pending,c.pending!==c.pending_buf_size));)K(c,255&c.gzhead.extra[c.gzindex]),c.gzindex++;c.gzhead.hcrc&&c.pending>o&&(e.adler=_(e.adler,c.pending_buf,c.pending-o,o)),c.gzindex===c.gzhead.extra.length&&(c.gzindex=0,c.status=73)}else c.status=73;if(c.status===73)if(c.gzhead.name){o=c.pending;do{if(c.pending===c.pending_buf_size&&(c.gzhead.hcrc&&c.pending>o&&(e.adler=_(e.adler,c.pending_buf,c.pending-o,o)),C(e),o=c.pending,c.pending===c.pending_buf_size)){w=1;break}w=c.gzindexo&&(e.adler=_(e.adler,c.pending_buf,c.pending-o,o)),w===0&&(c.gzindex=0,c.status=91)}else c.status=91;if(c.status===91)if(c.gzhead.comment){o=c.pending;do{if(c.pending===c.pending_buf_size&&(c.gzhead.hcrc&&c.pending>o&&(e.adler=_(e.adler,c.pending_buf,c.pending-o,o)),C(e),o=c.pending,c.pending===c.pending_buf_size)){w=1;break}w=c.gzindexo&&(e.adler=_(e.adler,c.pending_buf,c.pending-o,o)),w===0&&(c.status=103)}else c.status=103;if(c.status===103&&(c.gzhead.hcrc?(c.pending+2>c.pending_buf_size&&C(e),c.pending+2<=c.pending_buf_size&&(K(c,255&e.adler),K(c,e.adler>>8&255),e.adler=0,c.status=T)):c.status=T),c.pending!==0){if(C(e),e.avail_out===0)return c.last_flush=-1,i}else if(e.avail_in===0&&j(O)<=j(E)&&O!==v)return ee(e,-5);if(c.status===666&&e.avail_in!==0)return ee(e,-5);if(e.avail_in!==0||c.lookahead!==0||O!==p&&c.status!==666){var M=c.strategy===2?function(x,F){for(var q;;){if(x.lookahead===0&&(ae(x),x.lookahead===0)){if(F===p)return t;break}if(x.match_length=0,q=r._tr_tally(x,0,x.window[x.strstart]),x.lookahead--,x.strstart++,q&&(S(x,!1),x.strm.avail_out===0))return t}return x.insert=0,F===v?(S(x,!0),x.strm.avail_out===0?$:N):x.last_lit&&(S(x,!1),x.strm.avail_out===0)?t:L}(c,O):c.strategy===3?function(x,F){for(var q,H,X,ie,re=x.window;;){if(x.lookahead<=W){if(ae(x),x.lookahead<=W&&F===p)return t;if(x.lookahead===0)break}if(x.match_length=0,x.lookahead>=P&&0x.lookahead&&(x.match_length=x.lookahead)}if(x.match_length>=P?(q=r._tr_tally(x,1,x.match_length-P),x.lookahead-=x.match_length,x.strstart+=x.match_length,x.match_length=0):(q=r._tr_tally(x,0,x.window[x.strstart]),x.lookahead--,x.strstart++),q&&(S(x,!1),x.strm.avail_out===0))return t}return x.insert=0,F===v?(S(x,!0),x.strm.avail_out===0?$:N):x.last_lit&&(S(x,!1),x.strm.avail_out===0)?t:L}(c,O):a[c.level].func(c,O);if(M!==$&&M!==N||(c.status=666),M===t||M===$)return e.avail_out===0&&(c.last_flush=-1),i;if(M===L&&(O===1?r._tr_align(c):O!==5&&(r._tr_stored_block(c,0,0,!1),O===3&&(J(c.head),c.lookahead===0&&(c.strstart=0,c.block_start=0,c.insert=0))),C(e),e.avail_out===0))return c.last_flush=-1,i}return O!==v?i:c.wrap<=0?1:(c.wrap===2?(K(c,255&e.adler),K(c,e.adler>>8&255),K(c,e.adler>>16&255),K(c,e.adler>>24&255),K(c,255&e.total_in),K(c,e.total_in>>8&255),K(c,e.total_in>>16&255),K(c,e.total_in>>24&255)):(G(c,e.adler>>>16),G(c,65535&e.adler)),C(e),0=E.w_size&&(w===0&&(J(E.head),E.strstart=0,E.block_start=0,E.insert=0),F=new h.Buf8(E.w_size),h.arraySet(F,O,q-E.w_size,E.w_size,0),O=F,q=E.w_size),R=e.avail_in,M=e.next_in,x=e.input,e.avail_in=q,e.next_in=0,e.input=O,ae(E);E.lookahead>=P;){for(c=E.strstart,o=E.lookahead-(P-1);E.ins_h=(E.ins_h<>>=P=Z>>>24,y-=P,(P=Z>>>16&255)===0)L[b++]=65535&Z;else{if(!(16&P)){if(!(64&P)){Z=D[(65535&Z)+(l&(1<>>=P,y-=P),y<15&&(l+=t[u++]<>>=P=Z>>>24,y-=P,!(16&(P=Z>>>16&255))){if(!(64&P)){Z=k[(65535&Z)+(l&(1<>>=P,y-=P,(P=b-p)>3,l&=(1<<(y-=W<<3))-1,a.next_in=u,a.next_out=b,a.avail_in=u<_?_-u+5:5-(u-_),a.avail_out=b>>24&255)+(m>>>8&65280)+((65280&m)<<8)+((255&m)<<24)}function l(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new a.Buf16(320),this.work=new a.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function y(m){var T;return m&&m.state?(T=m.state,m.total_in=m.total_out=T.total=0,m.msg="",T.wrap&&(m.adler=1&T.wrap),T.mode=f,T.last=0,T.havedict=0,T.dmax=32768,T.head=null,T.hold=0,T.bits=0,T.lencode=T.lendyn=new a.Buf32(d),T.distcode=T.distdyn=new a.Buf32(n),T.sane=1,T.back=-1,v):i}function D(m){var T;return m&&m.state?((T=m.state).wsize=0,T.whave=0,T.wnext=0,y(m)):i}function k(m,T){var t,L;return m&&m.state?(L=m.state,T<0?(t=0,T=-T):(t=1+(T>>4),T<48&&(T&=15)),T&&(T<8||15=N.wsize?(a.arraySet(N.window,T,t-N.wsize,N.wsize,0),N.wnext=0,N.whave=N.wsize):(L<($=N.wsize-N.wnext)&&($=L),a.arraySet(N.window,T,t-L,$,N.wnext),(L-=$)?(a.arraySet(N.window,T,t-L,L,0),N.wnext=L,N.whave=N.wsize):(N.wnext+=$,N.wnext===N.wsize&&(N.wnext=0),N.whave>>8&255,t.check=r(t.check,w,2,0),S=C=0,t.mode=2;break}if(t.flags=0,t.head&&(t.head.done=!1),!(1&t.wrap)||(((255&C)<<8)+(C>>8))%31){m.msg="incorrect header check",t.mode=30;break}if((15&C)!=8){m.msg="unknown compression method",t.mode=30;break}if(S-=4,e=8+(15&(C>>>=4)),t.wbits===0)t.wbits=e;else if(e>t.wbits){m.msg="invalid window size",t.mode=30;break}t.dmax=1<>8&1),512&t.flags&&(w[0]=255&C,w[1]=C>>>8&255,t.check=r(t.check,w,2,0)),S=C=0,t.mode=3;case 3:for(;S<32;){if(j===0)break e;j--,C+=L[N++]<>>8&255,w[2]=C>>>16&255,w[3]=C>>>24&255,t.check=r(t.check,w,4,0)),S=C=0,t.mode=4;case 4:for(;S<16;){if(j===0)break e;j--,C+=L[N++]<>8),512&t.flags&&(w[0]=255&C,w[1]=C>>>8&255,t.check=r(t.check,w,2,0)),S=C=0,t.mode=5;case 5:if(1024&t.flags){for(;S<16;){if(j===0)break e;j--,C+=L[N++]<>>8&255,t.check=r(t.check,w,2,0)),S=C=0}else t.head&&(t.head.extra=null);t.mode=6;case 6:if(1024&t.flags&&(j<(Y=t.length)&&(Y=j),Y&&(t.head&&(e=t.head.extra_len-t.length,t.head.extra||(t.head.extra=new Array(t.head.extra_len)),a.arraySet(t.head.extra,L,N,Y,e)),512&t.flags&&(t.check=r(t.check,L,Y,N)),j-=Y,N+=Y,t.length-=Y),t.length))break e;t.length=0,t.mode=7;case 7:if(2048&t.flags){if(j===0)break e;for(Y=0;e=L[N+Y++],t.head&&e&&t.length<65536&&(t.head.name+=String.fromCharCode(e)),e&&Y>9&1,t.head.done=!0),m.adler=t.check=0,t.mode=12;break;case 10:for(;S<32;){if(j===0)break e;j--,C+=L[N++]<>>=7&S,S-=7&S,t.mode=27;break}for(;S<3;){if(j===0)break e;j--,C+=L[N++]<>>=1)){case 0:t.mode=14;break;case 1:if(W(t),t.mode=20,T!==6)break;C>>>=2,S-=2;break e;case 2:t.mode=17;break;case 3:m.msg="invalid block type",t.mode=30}C>>>=2,S-=2;break;case 14:for(C>>>=7&S,S-=7&S;S<32;){if(j===0)break e;j--,C+=L[N++]<>>16^65535)){m.msg="invalid stored block lengths",t.mode=30;break}if(t.length=65535&C,S=C=0,t.mode=15,T===6)break e;case 15:t.mode=16;case 16:if(Y=t.length){if(j>>=5,S-=5,t.ndist=1+(31&C),C>>>=5,S-=5,t.ncode=4+(15&C),C>>>=4,S-=4,286>>=3,S-=3}for(;t.have<19;)t.lens[R[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,E={bits:t.lenbits},O=_(0,t.lens,0,19,t.lencode,0,t.work,E),t.lenbits=E.bits,O){m.msg="invalid code lengths set",t.mode=30;break}t.have=0,t.mode=19;case 19:for(;t.have>>16&255,Ae=65535&o,!((te=o>>>24)<=S);){if(j===0)break e;j--,C+=L[N++]<>>=te,S-=te,t.lens[t.have++]=Ae;else{if(Ae===16){for(c=te+2;S>>=te,S-=te,t.have===0){m.msg="invalid bit length repeat",t.mode=30;break}e=t.lens[t.have-1],Y=3+(3&C),C>>>=2,S-=2}else if(Ae===17){for(c=te+3;S>>=te)),C>>>=3,S-=3}else{for(c=te+7;S>>=te)),C>>>=7,S-=7}if(t.have+Y>t.nlen+t.ndist){m.msg="invalid bit length repeat",t.mode=30;break}for(;Y--;)t.lens[t.have++]=e}}if(t.mode===30)break;if(t.lens[256]===0){m.msg="invalid code -- missing end-of-block",t.mode=30;break}if(t.lenbits=9,E={bits:t.lenbits},O=_(b,t.lens,0,t.nlen,t.lencode,0,t.work,E),t.lenbits=E.bits,O){m.msg="invalid literal/lengths set",t.mode=30;break}if(t.distbits=6,t.distcode=t.distdyn,E={bits:t.distbits},O=_(p,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,E),t.distbits=E.bits,O){m.msg="invalid distances set",t.mode=30;break}if(t.mode=20,T===6)break e;case 20:t.mode=21;case 21:if(6<=j&&258<=J){m.next_out=ee,m.avail_out=J,m.next_in=N,m.avail_in=j,t.hold=C,t.bits=S,u(m,G),ee=m.next_out,$=m.output,J=m.avail_out,N=m.next_in,L=m.input,j=m.avail_in,C=t.hold,S=t.bits,t.mode===12&&(t.back=-1);break}for(t.back=0;ne=(o=t.lencode[C&(1<>>16&255,Ae=65535&o,!((te=o>>>24)<=S);){if(j===0)break e;j--,C+=L[N++]<>se)])>>>16&255,Ae=65535&o,!(se+(te=o>>>24)<=S);){if(j===0)break e;j--,C+=L[N++]<>>=se,S-=se,t.back+=se}if(C>>>=te,S-=te,t.back+=te,t.length=Ae,ne===0){t.mode=26;break}if(32&ne){t.back=-1,t.mode=12;break}if(64&ne){m.msg="invalid literal/length code",t.mode=30;break}t.extra=15&ne,t.mode=22;case 22:if(t.extra){for(c=t.extra;S>>=t.extra,S-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=23;case 23:for(;ne=(o=t.distcode[C&(1<>>16&255,Ae=65535&o,!((te=o>>>24)<=S);){if(j===0)break e;j--,C+=L[N++]<>se)])>>>16&255,Ae=65535&o,!(se+(te=o>>>24)<=S);){if(j===0)break e;j--,C+=L[N++]<>>=se,S-=se,t.back+=se}if(C>>>=te,S-=te,t.back+=te,64&ne){m.msg="invalid distance code",t.mode=30;break}t.offset=Ae,t.extra=15&ne,t.mode=24;case 24:if(t.extra){for(c=t.extra;S>>=t.extra,S-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){m.msg="invalid distance too far back",t.mode=30;break}t.mode=25;case 25:if(J===0)break e;if(Y=G-J,t.offset>Y){if((Y=t.offset-Y)>t.whave&&t.sane){m.msg="invalid distance too far back",t.mode=30;break}ae=Y>t.wnext?(Y-=t.wnext,t.wsize-Y):t.wnext-Y,Y>t.length&&(Y=t.length),ue=t.window}else ue=$,ae=ee-t.offset,Y=t.length;for(JB?(P=ae[ue+n[T]],S[K+n[T]]):(P=96,0),l=1<>ee)+(y-=l)]=Z<<24|P<<16|W|0,y!==0;);for(l=1<>=1;if(l!==0?(C&=l-1,C+=l):C=0,T++,--G[m]==0){if(m===L)break;m=p[v+n[T]]}if($>>7)]}function K(o,w){o.pending_buf[o.pending++]=255&w,o.pending_buf[o.pending++]=w>>>8&255}function G(o,w,R){o.bi_valid>s-R?(o.bi_buf|=w<>s-o.bi_valid,o.bi_valid+=R-s):(o.bi_buf|=w<>>=1,R<<=1,0<--w;);return R>>>1}function ue(o,w,R){var M,x,F=new Array(n+1),q=0;for(M=1;M<=n;M++)F[M]=q=q+R[M-1]<<1;for(x=0;x<=w;x++){var H=o[2*x+1];H!==0&&(o[2*x]=ae(F[H]++,H))}}function te(o){var w;for(w=0;w>1;1<=R;R--)se(o,F,R);for(x=X;R=o.heap[1],o.heap[1]=o.heap[o.heap_len--],se(o,F,1),M=o.heap[1],o.heap[--o.heap_max]=R,o.heap[--o.heap_max]=M,F[2*x]=F[2*R]+F[2*M],o.depth[x]=(o.depth[R]>=o.depth[M]?o.depth[R]:o.depth[M])+1,F[2*R+1]=F[2*M+1]=x,o.heap[1]=x++,se(o,F,1),2<=o.heap_len;);o.heap[--o.heap_max]=o.heap[1],function(re,le){var ve,fe,be,oe,ze,De,de=le.dyn_tree,Ne=le.max_code,yt=le.stat_desc.static_tree,wt=le.stat_desc.has_stree,kt=le.stat_desc.extra_bits,je=le.stat_desc.extra_base,ye=le.stat_desc.max_length,Se=0;for(oe=0;oe<=n;oe++)re.bl_count[oe]=0;for(de[2*re.heap[re.heap_max]+1]=0,ve=re.heap_max+1;ve>=7;x>>=1)if(1&ie&&H.dyn_ltree[2*X]!==0)return h;if(H.dyn_ltree[18]!==0||H.dyn_ltree[20]!==0||H.dyn_ltree[26]!==0)return r;for(X=32;X >>3,(F=o.static_len+3+7>>>3)<=x&&(x=F)):x=F=R+5,R+4<=x&&w!==-1?c(o,w,R,M):o.strategy===4||F===x?(G(o,2+(M?1:0),3),ce(o,Q,m)):(G(o,4+(M?1:0),3),function(H,X,ie,re){var le;for(G(H,X-257,5),G(H,ie-1,5),G(H,re-4,4),le=0;le>>8&255,o.pending_buf[o.d_buf+2*o.last_lit+1]=255&w,o.pending_buf[o.l_buf+o.last_lit]=255&R,o.last_lit++,w===0?o.dyn_ltree[2*R]++:(o.matches++,w--,o.dyn_ltree[2*(t[R]+p+1)]++,o.dyn_dtree[2*S(w)]++),o.last_lit===o.lit_bufsize-1},g._tr_align=function(o){G(o,2,3),Y(o,y,Q),function(w){w.bi_valid===16?(K(w,w.bi_buf),w.bi_buf=0,w.bi_valid=0):8<=w.bi_valid&&(w.pending_buf[w.pending++]=255&w.bi_buf,w.bi_buf>>=8,w.bi_valid-=8)}(o)}},{"../utils/common":41}],53:[function(A,z,g){z.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(A,z,g){z.exports=typeof setImmediate=="function"?setImmediate:function(){var a=[].slice.apply(arguments);a.splice(1,0,0),setTimeout.apply(null,a)}},{}]},{},[10])(10)})})(Me);var lt=Me.exports;const ht=ut(lt);function ct(I){return new Promise(V=>{setTimeout(V,I)})}function ft(I,V){const A=URL.createObjectURL(I),z=document.createElement("a");z.style.display="none",z.download=V,z.href=A,document.body.appendChild(z),z.click(),URL.revokeObjectURL(A)}at(()=>{const I=document.querySelector(".buttons.ui-helper-clearfix"),V=ge('Download all scans ');I.appendChild(V);let A=!1;V.addEventListener("click",async()=>{if(!A){A=!0;try{await dt(V)}catch(z){V.innerHTML="Download all scans (Retry)",console.error(z)}A=!1}})});async function dt(I){var u;const V=new ht,A=Ce();if(!A)return;const z={};let g=0;const a=Array.from(document.querySelectorAll(".artwork-cont"));I.innerHTML=`Download all scans (0/${a.length})`;for(const _ of a){g++;const b=_.querySelector("a:last-child");if(!b)continue;const p=(u=_.querySelector("p"))==null?void 0:u.innerText.replace("Types:","").trim();if(!p)continue;z[p]=Number(z[p])+1||1;const v=z[p];for(let i=0;i<5;i++)try{const f=`${p} ${v}.${b.href.split(".").at(-1)}`,d=await Be(b.href).then(n=>n.blob());V.file(me(f),d),I.innerHTML=`Download all scans (${g}/${a.length})`,await ct(100);break}catch{}}I.innerHTML="Download all scans (Zipping 0%)";const h=`Scans {${A.catalogs[0]||A.barcode||A.id}}`,r=await V.generateAsync({type:"blob"},_=>{I.innerHTML=`Download all scans (Zipping ${_.percent.toFixed(0)}%)`});ft(r,me(`${h}.zip`)),I.innerHTML="Download all scans (Done)"}function pt(I,V){let A=document.querySelector(I);if(A)return Ue(A);try{V()}catch{console.error(`Could not create menu reference element for selector "${I}".`)}if(A=document.querySelector(I),A)return Ue(A);throw new Error(`Could not find menu reference element by selector "${I}".`)}function Ue(I){return I.addMenuItem=(V,A)=>{let z=I;for(let g=0;g<100;g++){const a=z.nextElementSibling;if(!a||Number(a.getAttribute("data-index"))>A)break;z=a}return V.setAttribute("data-index",A.toString()),z.after(V),V},I}function mt(I,V,A,z){const g=pt("#ame-sidebar",()=>{const h=document.querySelector(I),r=ge("Ame "),u=ge(`
+ */(function(x,N){(function(i){x.exports=i()})(function(){return function i(S,d,s){function c(_,b){if(!d[_]){if(!S[_]){var m=typeof Se=="function"&&Se;if(!b&&m)return m(_,!0);if(r)return r(_,!0);var v=new Error("Cannot find module '"+_+"'");throw v.code="MODULE_NOT_FOUND",v}var a=d[_]={exports:{}};S[_][0].call(a.exports,function(f){var p=S[_][1][f];return c(p||f)},a,a.exports,i,S,d,s)}return d[_].exports}for(var r=typeof Se=="function"&&Se,u=0;u>2,a=(3&_)<<4|b>>4,f=1>6:64,p=2>4,b=(15&v)<<4|(a=r.indexOf(u.charAt(p++)))>>2,m=(3&a)<<6|(f=r.indexOf(u.charAt(p++))),l[n++]=_,a!==64&&(l[n++]=b),f!==64&&(l[n++]=m);return l}},{"./support":30,"./utils":32}],2:[function(i,S,d){var s=i("./external"),c=i("./stream/DataWorker"),r=i("./stream/Crc32Probe"),u=i("./stream/DataLengthProbe");function _(b,m,v,a,f){this.compressedSize=b,this.uncompressedSize=m,this.crc32=v,this.compression=a,this.compressedContent=f}_.prototype={getContentWorker:function(){var b=new c(s.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new u("data_length")),m=this;return b.on("end",function(){if(this.streamInfo.data_length!==m.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),b},getCompressedWorker:function(){return new c(s.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},_.createWorkerFrom=function(b,m,v){return b.pipe(new r).pipe(new u("uncompressedSize")).pipe(m.compressWorker(v)).pipe(new u("compressedSize")).withStreamInfo("compression",m)},S.exports=_},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(i,S,d){var s=i("./stream/GenericWorker");d.STORE={magic:"\0\0",compressWorker:function(c){return new s("STORE compression")},uncompressWorker:function(){return new s("STORE decompression")}},d.DEFLATE=i("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(i,S,d){var s=i("./utils"),c=function(){for(var r,u=[],_=0;_<256;_++){r=_;for(var b=0;b<8;b++)r=1&r?3988292384^r>>>1:r>>>1;u[_]=r}return u}();S.exports=function(r,u){return r!==void 0&&r.length?s.getTypeOf(r)!=="string"?function(_,b,m,v){var a=c,f=v+m;_^=-1;for(var p=v;p>>8^a[255&(_^b[p])];return-1^_}(0|u,r,r.length,0):function(_,b,m,v){var a=c,f=v+m;_^=-1;for(var p=v;p>>8^a[255&(_^b.charCodeAt(p))];return-1^_}(0|u,r,r.length,0):0}},{"./utils":32}],5:[function(i,S,d){d.base64=!1,d.binary=!1,d.dir=!1,d.createFolders=!0,d.date=null,d.compression=null,d.compressionOptions=null,d.comment=null,d.unixPermissions=null,d.dosPermissions=null},{}],6:[function(i,S,d){var s=null;s=typeof Promise<"u"?Promise:i("lie"),S.exports={Promise:s}},{lie:37}],7:[function(i,S,d){var s=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Uint32Array<"u",c=i("pako"),r=i("./utils"),u=i("./stream/GenericWorker"),_=s?"uint8array":"array";function b(m,v){u.call(this,"FlateWorker/"+m),this._pako=null,this._pakoAction=m,this._pakoOptions=v,this.meta={}}d.magic="\b\0",r.inherits(b,u),b.prototype.processChunk=function(m){this.meta=m.meta,this._pako===null&&this._createPako(),this._pako.push(r.transformTo(_,m.data),!1)},b.prototype.flush=function(){u.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},b.prototype.cleanUp=function(){u.prototype.cleanUp.call(this),this._pako=null},b.prototype._createPako=function(){this._pako=new c[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var m=this;this._pako.onData=function(v){m.push({data:v,meta:m.meta})}},d.compressWorker=function(m){return new b("Deflate",m)},d.uncompressWorker=function(){return new b("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(i,S,d){function s(a,f){var p,n="";for(p=0;p>>=8;return n}function c(a,f,p,n,o,l){var y,D,k=a.file,U=a.compression,B=l!==_.utf8encode,Y=r.transformTo("string",l(k.name)),P=r.transformTo("string",_.utf8encode(k.name)),Z=k.comment,Q=r.transformTo("string",l(Z)),g=r.transformTo("string",_.utf8encode(Z)),T=P.length!==k.name.length,t=g.length!==Z.length,L="",$="",j="",ee=k.dir,F=k.date,J={crc32:0,compressedSize:0,uncompressedSize:0};f&&!p||(J.crc32=a.crc32,J.compressedSize=a.compressedSize,J.uncompressedSize=a.uncompressedSize);var C=0;f&&(C|=8),B||!T&&!t||(C|=2048);var E=0,K=0;ee&&(E|=16),o==="UNIX"?(K=798,E|=function(V,ae){var ce=V;return V||(ce=ae?16893:33204),(65535&ce)<<16}(k.unixPermissions,ee)):(K=20,E|=function(V){return 63&(V||0)}(k.dosPermissions)),y=F.getUTCHours(),y<<=6,y|=F.getUTCMinutes(),y<<=5,y|=F.getUTCSeconds()/2,D=F.getUTCFullYear()-1980,D<<=4,D|=F.getUTCMonth()+1,D<<=5,D|=F.getUTCDate(),T&&($=s(1,1)+s(b(Y),4)+P,L+="up"+s($.length,2)+$),t&&(j=s(1,1)+s(b(Q),4)+g,L+="uc"+s(j.length,2)+j);var q="";return q+=`
+\0`,q+=s(C,2),q+=U.magic,q+=s(y,2),q+=s(D,2),q+=s(J.crc32,4),q+=s(J.compressedSize,4),q+=s(J.uncompressedSize,4),q+=s(Y.length,2),q+=s(L.length,2),{fileRecord:m.LOCAL_FILE_HEADER+q+Y+L,dirRecord:m.CENTRAL_FILE_HEADER+s(K,2)+q+s(Q.length,2)+"\0\0\0\0"+s(E,4)+s(n,4)+Y+L+Q}}var r=i("../utils"),u=i("../stream/GenericWorker"),_=i("../utf8"),b=i("../crc32"),m=i("../signature");function v(a,f,p,n){u.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=f,this.zipPlatform=p,this.encodeFileName=n,this.streamFiles=a,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}r.inherits(v,u),v.prototype.push=function(a){var f=a.meta.percent||0,p=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(a):(this.bytesWritten+=a.data.length,u.prototype.push.call(this,{data:a.data,meta:{currentFile:this.currentFile,percent:p?(f+100*(p-n-1))/p:100}}))},v.prototype.openedSource=function(a){this.currentSourceOffset=this.bytesWritten,this.currentFile=a.file.name;var f=this.streamFiles&&!a.file.dir;if(f){var p=c(a,f,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:p.fileRecord,meta:{percent:0}})}else this.accumulate=!0},v.prototype.closedSource=function(a){this.accumulate=!1;var f=this.streamFiles&&!a.file.dir,p=c(a,f,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(p.dirRecord),f)this.push({data:function(n){return m.DATA_DESCRIPTOR+s(n.crc32,4)+s(n.compressedSize,4)+s(n.uncompressedSize,4)}(a),meta:{percent:100}});else for(this.push({data:p.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},v.prototype.flush=function(){for(var a=this.bytesWritten,f=0;f=this.index;u--)_=(_<<8)+this.byteAt(u);return this.index+=r,_},readString:function(r){return s.transformTo("string",this.readData(r))},readData:function(r){},lastIndexOfSignature:function(r){},readAndCheckSignature:function(r){},readDate:function(){var r=this.readInt(4);return new Date(Date.UTC(1980+(r>>25&127),(r>>21&15)-1,r>>16&31,r>>11&31,r>>5&63,(31&r)<<1))}},S.exports=c},{"../utils":32}],19:[function(i,S,d){var s=i("./Uint8ArrayReader");function c(r){s.call(this,r)}i("../utils").inherits(c,s),c.prototype.readData=function(r){this.checkOffset(r);var u=this.data.slice(this.zero+this.index,this.zero+this.index+r);return this.index+=r,u},S.exports=c},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(i,S,d){var s=i("./DataReader");function c(r){s.call(this,r)}i("../utils").inherits(c,s),c.prototype.byteAt=function(r){return this.data.charCodeAt(this.zero+r)},c.prototype.lastIndexOfSignature=function(r){return this.data.lastIndexOf(r)-this.zero},c.prototype.readAndCheckSignature=function(r){return r===this.readData(4)},c.prototype.readData=function(r){this.checkOffset(r);var u=this.data.slice(this.zero+this.index,this.zero+this.index+r);return this.index+=r,u},S.exports=c},{"../utils":32,"./DataReader":18}],21:[function(i,S,d){var s=i("./ArrayReader");function c(r){s.call(this,r)}i("../utils").inherits(c,s),c.prototype.readData=function(r){if(this.checkOffset(r),r===0)return new Uint8Array(0);var u=this.data.subarray(this.zero+this.index,this.zero+this.index+r);return this.index+=r,u},S.exports=c},{"../utils":32,"./ArrayReader":17}],22:[function(i,S,d){var s=i("../utils"),c=i("../support"),r=i("./ArrayReader"),u=i("./StringReader"),_=i("./NodeBufferReader"),b=i("./Uint8ArrayReader");S.exports=function(m){var v=s.getTypeOf(m);return s.checkSupport(v),v!=="string"||c.uint8array?v==="nodebuffer"?new _(m):c.uint8array?new b(s.transformTo("uint8array",m)):new r(s.transformTo("array",m)):new u(m)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(i,S,d){d.LOCAL_FILE_HEADER="PK",d.CENTRAL_FILE_HEADER="PK",d.CENTRAL_DIRECTORY_END="PK",d.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x07",d.ZIP64_CENTRAL_DIRECTORY_END="PK",d.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(i,S,d){var s=i("./GenericWorker"),c=i("../utils");function r(u){s.call(this,"ConvertWorker to "+u),this.destType=u}c.inherits(r,s),r.prototype.processChunk=function(u){this.push({data:c.transformTo(this.destType,u.data),meta:u.meta})},S.exports=r},{"../utils":32,"./GenericWorker":28}],25:[function(i,S,d){var s=i("./GenericWorker"),c=i("../crc32");function r(){s.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}i("../utils").inherits(r,s),r.prototype.processChunk=function(u){this.streamInfo.crc32=c(u.data,this.streamInfo.crc32||0),this.push(u)},S.exports=r},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(i,S,d){var s=i("../utils"),c=i("./GenericWorker");function r(u){c.call(this,"DataLengthProbe for "+u),this.propName=u,this.withStreamInfo(u,0)}s.inherits(r,c),r.prototype.processChunk=function(u){if(u){var _=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=_+u.data.length}c.prototype.processChunk.call(this,u)},S.exports=r},{"../utils":32,"./GenericWorker":28}],27:[function(i,S,d){var s=i("../utils"),c=i("./GenericWorker");function r(u){c.call(this,"DataWorker");var _=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,u.then(function(b){_.dataIsReady=!0,_.data=b,_.max=b&&b.length||0,_.type=s.getTypeOf(b),_.isPaused||_._tickAndRepeat()},function(b){_.error(b)})}s.inherits(r,c),r.prototype.cleanUp=function(){c.prototype.cleanUp.call(this),this.data=null},r.prototype.resume=function(){return!!c.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,s.delay(this._tickAndRepeat,[],this)),!0)},r.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(s.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},r.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var u=null,_=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":u=this.data.substring(this.index,_);break;case"uint8array":u=this.data.subarray(this.index,_);break;case"array":case"nodebuffer":u=this.data.slice(this.index,_)}return this.index=_,this.push({data:u,meta:{percent:this.max?this.index/this.max*100:0}})},S.exports=r},{"../utils":32,"./GenericWorker":28}],28:[function(i,S,d){function s(c){this.name=c||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}s.prototype={push:function(c){this.emit("data",c)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(c){this.emit("error",c)}return!0},error:function(c){return!this.isFinished&&(this.isPaused?this.generatedError=c:(this.isFinished=!0,this.emit("error",c),this.previous&&this.previous.error(c),this.cleanUp()),!0)},on:function(c,r){return this._listeners[c].push(r),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(c,r){if(this._listeners[c])for(var u=0;u "+c:c}},S.exports=s},{}],29:[function(i,S,d){var s=i("../utils"),c=i("./ConvertWorker"),r=i("./GenericWorker"),u=i("../base64"),_=i("../support"),b=i("../external"),m=null;if(_.nodestream)try{m=i("../nodejs/NodejsStreamOutputAdapter")}catch{}function v(f,p){return new b.Promise(function(n,o){var l=[],y=f._internalType,D=f._outputType,k=f._mimeType;f.on("data",function(U,B){l.push(U),p&&p(B)}).on("error",function(U){l=[],o(U)}).on("end",function(){try{var U=function(B,Y,P){switch(B){case"blob":return s.newBlob(s.transformTo("arraybuffer",Y),P);case"base64":return u.encode(Y);default:return s.transformTo(B,Y)}}(D,function(B,Y){var P,Z=0,Q=null,g=0;for(P=0;P"u")d.blob=!1;else{var s=new ArrayBuffer(0);try{d.blob=new Blob([s],{type:"application/zip"}).size===0}catch{try{var c=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);c.append(s),d.blob=c.getBlob("application/zip").size===0}catch{d.blob=!1}}}try{d.nodestream=!!i("readable-stream").Readable}catch{d.nodestream=!1}},{"readable-stream":16}],31:[function(i,S,d){for(var s=i("./utils"),c=i("./support"),r=i("./nodejsUtils"),u=i("./stream/GenericWorker"),_=new Array(256),b=0;b<256;b++)_[b]=252<=b?6:248<=b?5:240<=b?4:224<=b?3:192<=b?2:1;_[254]=_[254]=1;function m(){u.call(this,"utf-8 decode"),this.leftOver=null}function v(){u.call(this,"utf-8 encode")}d.utf8encode=function(a){return c.nodebuffer?r.newBufferFrom(a,"utf-8"):function(f){var p,n,o,l,y,D=f.length,k=0;for(l=0;l>>6:(n<65536?p[y++]=224|n>>>12:(p[y++]=240|n>>>18,p[y++]=128|n>>>12&63),p[y++]=128|n>>>6&63),p[y++]=128|63&n);return p}(a)},d.utf8decode=function(a){return c.nodebuffer?s.transformTo("nodebuffer",a).toString("utf-8"):function(f){var p,n,o,l,y=f.length,D=new Array(2*y);for(p=n=0;p>10&1023,D[n++]=56320|1023&o)}return D.length!==n&&(D.subarray?D=D.subarray(0,n):D.length=n),s.applyFromCharCode(D)}(a=s.transformTo(c.uint8array?"uint8array":"array",a))},s.inherits(m,u),m.prototype.processChunk=function(a){var f=s.transformTo(c.uint8array?"uint8array":"array",a.data);if(this.leftOver&&this.leftOver.length){if(c.uint8array){var p=f;(f=new Uint8Array(p.length+this.leftOver.length)).set(this.leftOver,0),f.set(p,this.leftOver.length)}else f=this.leftOver.concat(f);this.leftOver=null}var n=function(l,y){var D;for((y=y||l.length)>l.length&&(y=l.length),D=y-1;0<=D&&(192&l[D])==128;)D--;return D<0||D===0?y:D+_[l[D]]>y?D:y}(f),o=f;n!==f.length&&(c.uint8array?(o=f.subarray(0,n),this.leftOver=f.subarray(n,f.length)):(o=f.slice(0,n),this.leftOver=f.slice(n,f.length))),this.push({data:d.utf8decode(o),meta:a.meta})},m.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:d.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},d.Utf8DecodeWorker=m,s.inherits(v,u),v.prototype.processChunk=function(a){this.push({data:d.utf8encode(a.data),meta:a.meta})},d.Utf8EncodeWorker=v},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(i,S,d){var s=i("./support"),c=i("./base64"),r=i("./nodejsUtils"),u=i("set-immediate-shim"),_=i("./external");function b(n){return n}function m(n,o){for(var l=0;l>8;this.dir=!!(16&this.externalFileAttributes),a==0&&(this.dosPermissions=63&this.externalFileAttributes),a==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!=="/"||(this.dir=!0)},parseZIP64ExtraField:function(a){if(this.extraFields[1]){var f=s(this.extraFields[1].value);this.uncompressedSize===c.MAX_VALUE_32BITS&&(this.uncompressedSize=f.readInt(8)),this.compressedSize===c.MAX_VALUE_32BITS&&(this.compressedSize=f.readInt(8)),this.localHeaderOffset===c.MAX_VALUE_32BITS&&(this.localHeaderOffset=f.readInt(8)),this.diskNumberStart===c.MAX_VALUE_32BITS&&(this.diskNumberStart=f.readInt(4))}},readExtraFields:function(a){var f,p,n,o=a.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});a.index+4>>6:(a<65536?v[n++]=224|a>>>12:(v[n++]=240|a>>>18,v[n++]=128|a>>>12&63),v[n++]=128|a>>>6&63),v[n++]=128|63&a);return v},d.buf2binstring=function(m){return b(m,m.length)},d.binstring2buf=function(m){for(var v=new s.Buf8(m.length),a=0,f=v.length;a>10&1023,l[f++]=56320|1023&p)}return b(l,f)},d.utf8border=function(m,v){var a;for((v=v||m.length)>m.length&&(v=m.length),a=v-1;0<=a&&(192&m[a])==128;)a--;return a<0||a===0?v:a+u[m[a]]>v?a:v}},{"./common":41}],43:[function(i,S,d){S.exports=function(s,c,r,u){for(var _=65535&s|0,b=s>>>16&65535|0,m=0;r!==0;){for(r-=m=2e3>>1:c>>>1;r[u]=c}return r}();S.exports=function(c,r,u,_){var b=s,m=_+u;c^=-1;for(var v=_;v>>8^b[255&(c^r[v])];return-1^c}},{}],46:[function(i,S,d){var s,c=i("../utils/common"),r=i("./trees"),u=i("./adler32"),_=i("./crc32"),b=i("./messages"),m=0,v=4,a=0,f=-2,p=-1,n=4,o=2,l=8,y=9,D=286,k=30,U=19,B=2*D+1,Y=15,P=3,Z=258,Q=Z+P+1,g=42,T=113,t=1,L=2,$=3,j=4;function ee(e,O){return e.msg=b[O],O}function F(e){return(e<<1)-(4e.avail_out&&(I=e.avail_out),I!==0&&(c.arraySet(e.output,O.pending_buf,O.pending_out,I,e.next_out),e.next_out+=I,O.pending_out+=I,e.total_out+=I,e.avail_out-=I,O.pending-=I,O.pending===0&&(O.pending_out=0))}function E(e,O){r._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,O),e.block_start=e.strstart,C(e.strm)}function K(e,O){e.pending_buf[e.pending++]=O}function q(e,O){e.pending_buf[e.pending++]=O>>>8&255,e.pending_buf[e.pending++]=255&O}function V(e,O){var I,h,A=e.max_chain_length,w=e.strstart,R=e.prev_length,M=e.nice_match,z=e.strstart>e.w_size-Q?e.strstart-(e.w_size-Q):0,H=e.window,G=e.w_mask,W=e.prev,X=e.strstart+Z,ie=H[w+R-1],re=H[w+R];e.prev_length>=e.good_match&&(A>>=2),M>e.lookahead&&(M=e.lookahead);do if(H[(I=O)+R]===re&&H[I+R-1]===ie&&H[I]===H[w]&&H[++I]===H[w+1]){w+=2,I++;do;while(H[++w]===H[++I]&&H[++w]===H[++I]&&H[++w]===H[++I]&&H[++w]===H[++I]&&H[++w]===H[++I]&&H[++w]===H[++I]&&H[++w]===H[++I]&&H[++w]===H[++I]&&wz&&--A!=0);return R<=e.lookahead?R:e.lookahead}function ae(e){var O,I,h,A,w,R,M,z,H,G,W=e.w_size;do{if(A=e.window_size-e.lookahead-e.strstart,e.strstart>=W+(W-Q)){for(c.arraySet(e.window,e.window,W,W,0),e.match_start-=W,e.strstart-=W,e.block_start-=W,O=I=e.hash_size;h=e.head[--O],e.head[O]=W<=h?h-W:0,--I;);for(O=I=W;h=e.prev[--O],e.prev[O]=W<=h?h-W:0,--I;);A+=W}if(e.strm.avail_in===0)break;if(R=e.strm,M=e.window,z=e.strstart+e.lookahead,H=A,G=void 0,G=R.avail_in,H=P)for(w=e.strstart-e.insert,e.ins_h=e.window[w],e.ins_h=(e.ins_h<=P&&(e.ins_h=(e.ins_h<=P)if(h=r._tr_tally(e,e.strstart-e.match_start,e.match_length-P),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=P){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=P&&(e.ins_h=(e.ins_h<=P&&e.match_length<=e.prev_length){for(A=e.strstart+e.lookahead-P,h=r._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-P),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=A&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(I=e.pending_buf_size-5);;){if(e.lookahead<=1){if(ae(e),e.lookahead===0&&O===m)return t;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var h=e.block_start+I;if((e.strstart===0||e.strstart>=h)&&(e.lookahead=e.strstart-h,e.strstart=h,E(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-Q&&(E(e,!1),e.strm.avail_out===0))return t}return e.insert=0,O===v?(E(e,!0),e.strm.avail_out===0?$:j):(e.strstart>e.block_start&&(E(e,!1),e.strm.avail_out),t)}),new ne(4,4,8,4,ce),new ne(4,5,16,8,ce),new ne(4,6,32,32,ce),new ne(4,4,16,16,te),new ne(8,16,32,32,te),new ne(8,16,128,128,te),new ne(8,32,128,256,te),new ne(32,128,258,1024,te),new ne(32,258,258,4096,te)],d.deflateInit=function(e,O){return he(e,O,l,15,8,0)},d.deflateInit2=he,d.deflateReset=fe,d.deflateResetKeep=se,d.deflateSetHeader=function(e,O){return e&&e.state?e.state.wrap!==2?f:(e.state.gzhead=O,a):f},d.deflate=function(e,O){var I,h,A,w;if(!e||!e.state||5>8&255),K(h,h.gzhead.time>>16&255),K(h,h.gzhead.time>>24&255),K(h,h.level===9?2:2<=h.strategy||h.level<2?4:0),K(h,255&h.gzhead.os),h.gzhead.extra&&h.gzhead.extra.length&&(K(h,255&h.gzhead.extra.length),K(h,h.gzhead.extra.length>>8&255)),h.gzhead.hcrc&&(e.adler=_(e.adler,h.pending_buf,h.pending,0)),h.gzindex=0,h.status=69):(K(h,0),K(h,0),K(h,0),K(h,0),K(h,0),K(h,h.level===9?2:2<=h.strategy||h.level<2?4:0),K(h,3),h.status=T);else{var R=l+(h.w_bits-8<<4)<<8;R|=(2<=h.strategy||h.level<2?0:h.level<6?1:h.level===6?2:3)<<6,h.strstart!==0&&(R|=32),R+=31-R%31,h.status=T,q(h,R),h.strstart!==0&&(q(h,e.adler>>>16),q(h,65535&e.adler)),e.adler=1}if(h.status===69)if(h.gzhead.extra){for(A=h.pending;h.gzindex<(65535&h.gzhead.extra.length)&&(h.pending!==h.pending_buf_size||(h.gzhead.hcrc&&h.pending>A&&(e.adler=_(e.adler,h.pending_buf,h.pending-A,A)),C(e),A=h.pending,h.pending!==h.pending_buf_size));)K(h,255&h.gzhead.extra[h.gzindex]),h.gzindex++;h.gzhead.hcrc&&h.pending>A&&(e.adler=_(e.adler,h.pending_buf,h.pending-A,A)),h.gzindex===h.gzhead.extra.length&&(h.gzindex=0,h.status=73)}else h.status=73;if(h.status===73)if(h.gzhead.name){A=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>A&&(e.adler=_(e.adler,h.pending_buf,h.pending-A,A)),C(e),A=h.pending,h.pending===h.pending_buf_size)){w=1;break}w=h.gzindexA&&(e.adler=_(e.adler,h.pending_buf,h.pending-A,A)),w===0&&(h.gzindex=0,h.status=91)}else h.status=91;if(h.status===91)if(h.gzhead.comment){A=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>A&&(e.adler=_(e.adler,h.pending_buf,h.pending-A,A)),C(e),A=h.pending,h.pending===h.pending_buf_size)){w=1;break}w=h.gzindexA&&(e.adler=_(e.adler,h.pending_buf,h.pending-A,A)),w===0&&(h.status=103)}else h.status=103;if(h.status===103&&(h.gzhead.hcrc?(h.pending+2>h.pending_buf_size&&C(e),h.pending+2<=h.pending_buf_size&&(K(h,255&e.adler),K(h,e.adler>>8&255),e.adler=0,h.status=T)):h.status=T),h.pending!==0){if(C(e),e.avail_out===0)return h.last_flush=-1,a}else if(e.avail_in===0&&F(O)<=F(I)&&O!==v)return ee(e,-5);if(h.status===666&&e.avail_in!==0)return ee(e,-5);if(e.avail_in!==0||h.lookahead!==0||O!==m&&h.status!==666){var M=h.strategy===2?function(z,H){for(var G;;){if(z.lookahead===0&&(ae(z),z.lookahead===0)){if(H===m)return t;break}if(z.match_length=0,G=r._tr_tally(z,0,z.window[z.strstart]),z.lookahead--,z.strstart++,G&&(E(z,!1),z.strm.avail_out===0))return t}return z.insert=0,H===v?(E(z,!0),z.strm.avail_out===0?$:j):z.last_lit&&(E(z,!1),z.strm.avail_out===0)?t:L}(h,O):h.strategy===3?function(z,H){for(var G,W,X,ie,re=z.window;;){if(z.lookahead<=Z){if(ae(z),z.lookahead<=Z&&H===m)return t;if(z.lookahead===0)break}if(z.match_length=0,z.lookahead>=P&&0z.lookahead&&(z.match_length=z.lookahead)}if(z.match_length>=P?(G=r._tr_tally(z,1,z.match_length-P),z.lookahead-=z.match_length,z.strstart+=z.match_length,z.match_length=0):(G=r._tr_tally(z,0,z.window[z.strstart]),z.lookahead--,z.strstart++),G&&(E(z,!1),z.strm.avail_out===0))return t}return z.insert=0,H===v?(E(z,!0),z.strm.avail_out===0?$:j):z.last_lit&&(E(z,!1),z.strm.avail_out===0)?t:L}(h,O):s[h.level].func(h,O);if(M!==$&&M!==j||(h.status=666),M===t||M===$)return e.avail_out===0&&(h.last_flush=-1),a;if(M===L&&(O===1?r._tr_align(h):O!==5&&(r._tr_stored_block(h,0,0,!1),O===3&&(J(h.head),h.lookahead===0&&(h.strstart=0,h.block_start=0,h.insert=0))),C(e),e.avail_out===0))return h.last_flush=-1,a}return O!==v?a:h.wrap<=0?1:(h.wrap===2?(K(h,255&e.adler),K(h,e.adler>>8&255),K(h,e.adler>>16&255),K(h,e.adler>>24&255),K(h,255&e.total_in),K(h,e.total_in>>8&255),K(h,e.total_in>>16&255),K(h,e.total_in>>24&255)):(q(h,e.adler>>>16),q(h,65535&e.adler)),C(e),0=I.w_size&&(w===0&&(J(I.head),I.strstart=0,I.block_start=0,I.insert=0),H=new c.Buf8(I.w_size),c.arraySet(H,O,G-I.w_size,I.w_size,0),O=H,G=I.w_size),R=e.avail_in,M=e.next_in,z=e.input,e.avail_in=G,e.next_in=0,e.input=O,ae(I);I.lookahead>=P;){for(h=I.strstart,A=I.lookahead-(P-1);I.ins_h=(I.ins_h<>>=P=Y>>>24,y-=P,(P=Y>>>16&255)===0)L[b++]=65535&Y;else{if(!(16&P)){if(!(64&P)){Y=D[(65535&Y)+(l&(1<>>=P,y-=P),y<15&&(l+=t[u++]<>>=P=Y>>>24,y-=P,!(16&(P=Y>>>16&255))){if(!(64&P)){Y=k[(65535&Y)+(l&(1<>>=P,y-=P,(P=b-m)>3,l&=(1<<(y-=Z<<3))-1,s.next_in=u,s.next_out=b,s.avail_in=u<_?_-u+5:5-(u-_),s.avail_out=b>>24&255)+(g>>>8&65280)+((65280&g)<<8)+((255&g)<<24)}function l(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new s.Buf16(320),this.work=new s.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function y(g){var T;return g&&g.state?(T=g.state,g.total_in=g.total_out=T.total=0,g.msg="",T.wrap&&(g.adler=1&T.wrap),T.mode=f,T.last=0,T.havedict=0,T.dmax=32768,T.head=null,T.hold=0,T.bits=0,T.lencode=T.lendyn=new s.Buf32(p),T.distcode=T.distdyn=new s.Buf32(n),T.sane=1,T.back=-1,v):a}function D(g){var T;return g&&g.state?((T=g.state).wsize=0,T.whave=0,T.wnext=0,y(g)):a}function k(g,T){var t,L;return g&&g.state?(L=g.state,T<0?(t=0,T=-T):(t=1+(T>>4),T<48&&(T&=15)),T&&(T<8||15=j.wsize?(s.arraySet(j.window,T,t-j.wsize,j.wsize,0),j.wnext=0,j.whave=j.wsize):(L<($=j.wsize-j.wnext)&&($=L),s.arraySet(j.window,T,t-L,$,j.wnext),(L-=$)?(s.arraySet(j.window,T,t-L,L,0),j.wnext=L,j.whave=j.wsize):(j.wnext+=$,j.wnext===j.wsize&&(j.wnext=0),j.whave>>8&255,t.check=r(t.check,w,2,0),E=C=0,t.mode=2;break}if(t.flags=0,t.head&&(t.head.done=!1),!(1&t.wrap)||(((255&C)<<8)+(C>>8))%31){g.msg="incorrect header check",t.mode=30;break}if((15&C)!=8){g.msg="unknown compression method",t.mode=30;break}if(E-=4,e=8+(15&(C>>>=4)),t.wbits===0)t.wbits=e;else if(e>t.wbits){g.msg="invalid window size",t.mode=30;break}t.dmax=1<>8&1),512&t.flags&&(w[0]=255&C,w[1]=C>>>8&255,t.check=r(t.check,w,2,0)),E=C=0,t.mode=3;case 3:for(;E<32;){if(F===0)break e;F--,C+=L[j++]<>>8&255,w[2]=C>>>16&255,w[3]=C>>>24&255,t.check=r(t.check,w,4,0)),E=C=0,t.mode=4;case 4:for(;E<16;){if(F===0)break e;F--,C+=L[j++]<>8),512&t.flags&&(w[0]=255&C,w[1]=C>>>8&255,t.check=r(t.check,w,2,0)),E=C=0,t.mode=5;case 5:if(1024&t.flags){for(;E<16;){if(F===0)break e;F--,C+=L[j++]<>>8&255,t.check=r(t.check,w,2,0)),E=C=0}else t.head&&(t.head.extra=null);t.mode=6;case 6:if(1024&t.flags&&(F<(V=t.length)&&(V=F),V&&(t.head&&(e=t.head.extra_len-t.length,t.head.extra||(t.head.extra=new Array(t.head.extra_len)),s.arraySet(t.head.extra,L,j,V,e)),512&t.flags&&(t.check=r(t.check,L,V,j)),F-=V,j+=V,t.length-=V),t.length))break e;t.length=0,t.mode=7;case 7:if(2048&t.flags){if(F===0)break e;for(V=0;e=L[j+V++],t.head&&e&&t.length<65536&&(t.head.name+=String.fromCharCode(e)),e&&V>9&1,t.head.done=!0),g.adler=t.check=0,t.mode=12;break;case 10:for(;E<32;){if(F===0)break e;F--,C+=L[j++]<>>=7&E,E-=7&E,t.mode=27;break}for(;E<3;){if(F===0)break e;F--,C+=L[j++]<>>=1)){case 0:t.mode=14;break;case 1:if(Z(t),t.mode=20,T!==6)break;C>>>=2,E-=2;break e;case 2:t.mode=17;break;case 3:g.msg="invalid block type",t.mode=30}C>>>=2,E-=2;break;case 14:for(C>>>=7&E,E-=7&E;E<32;){if(F===0)break e;F--,C+=L[j++]<>>16^65535)){g.msg="invalid stored block lengths",t.mode=30;break}if(t.length=65535&C,E=C=0,t.mode=15,T===6)break e;case 15:t.mode=16;case 16:if(V=t.length){if(F>>=5,E-=5,t.ndist=1+(31&C),C>>>=5,E-=5,t.ncode=4+(15&C),C>>>=4,E-=4,286>>=3,E-=3}for(;t.have<19;)t.lens[R[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,I={bits:t.lenbits},O=_(0,t.lens,0,19,t.lencode,0,t.work,I),t.lenbits=I.bits,O){g.msg="invalid code lengths set",t.mode=30;break}t.have=0,t.mode=19;case 19:for(;t.have>>16&255,Ae=65535&A,!((te=A>>>24)<=E);){if(F===0)break e;F--,C+=L[j++]<>>=te,E-=te,t.lens[t.have++]=Ae;else{if(Ae===16){for(h=te+2;E>>=te,E-=te,t.have===0){g.msg="invalid bit length repeat",t.mode=30;break}e=t.lens[t.have-1],V=3+(3&C),C>>>=2,E-=2}else if(Ae===17){for(h=te+3;E>>=te)),C>>>=3,E-=3}else{for(h=te+7;E>>=te)),C>>>=7,E-=7}if(t.have+V>t.nlen+t.ndist){g.msg="invalid bit length repeat",t.mode=30;break}for(;V--;)t.lens[t.have++]=e}}if(t.mode===30)break;if(t.lens[256]===0){g.msg="invalid code -- missing end-of-block",t.mode=30;break}if(t.lenbits=9,I={bits:t.lenbits},O=_(b,t.lens,0,t.nlen,t.lencode,0,t.work,I),t.lenbits=I.bits,O){g.msg="invalid literal/lengths set",t.mode=30;break}if(t.distbits=6,t.distcode=t.distdyn,I={bits:t.distbits},O=_(m,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,I),t.distbits=I.bits,O){g.msg="invalid distances set",t.mode=30;break}if(t.mode=20,T===6)break e;case 20:t.mode=21;case 21:if(6<=F&&258<=J){g.next_out=ee,g.avail_out=J,g.next_in=j,g.avail_in=F,t.hold=C,t.bits=E,u(g,q),ee=g.next_out,$=g.output,J=g.avail_out,j=g.next_in,L=g.input,F=g.avail_in,C=t.hold,E=t.bits,t.mode===12&&(t.back=-1);break}for(t.back=0;ne=(A=t.lencode[C&(1<>>16&255,Ae=65535&A,!((te=A>>>24)<=E);){if(F===0)break e;F--,C+=L[j++]<>se)])>>>16&255,Ae=65535&A,!(se+(te=A>>>24)<=E);){if(F===0)break e;F--,C+=L[j++]<>>=se,E-=se,t.back+=se}if(C>>>=te,E-=te,t.back+=te,t.length=Ae,ne===0){t.mode=26;break}if(32&ne){t.back=-1,t.mode=12;break}if(64&ne){g.msg="invalid literal/length code",t.mode=30;break}t.extra=15&ne,t.mode=22;case 22:if(t.extra){for(h=t.extra;E>>=t.extra,E-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=23;case 23:for(;ne=(A=t.distcode[C&(1<>>16&255,Ae=65535&A,!((te=A>>>24)<=E);){if(F===0)break e;F--,C+=L[j++]<>se)])>>>16&255,Ae=65535&A,!(se+(te=A>>>24)<=E);){if(F===0)break e;F--,C+=L[j++]<>>=se,E-=se,t.back+=se}if(C>>>=te,E-=te,t.back+=te,64&ne){g.msg="invalid distance code",t.mode=30;break}t.offset=Ae,t.extra=15&ne,t.mode=24;case 24:if(t.extra){for(h=t.extra;E>>=t.extra,E-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){g.msg="invalid distance too far back",t.mode=30;break}t.mode=25;case 25:if(J===0)break e;if(V=q-J,t.offset>V){if((V=t.offset-V)>t.whave&&t.sane){g.msg="invalid distance too far back",t.mode=30;break}ae=V>t.wnext?(V-=t.wnext,t.wsize-V):t.wnext-V,V>t.length&&(V=t.length),ce=t.window}else ce=$,ae=ee-t.offset,V=t.length;for(JB?(P=ae[ce+n[T]],E[K+n[T]]):(P=96,0),l=1<>ee)+(y-=l)]=Y<<24|P<<16|Z|0,y!==0;);for(l=1<>=1;if(l!==0?(C&=l-1,C+=l):C=0,T++,--q[g]==0){if(g===L)break;g=m[v+n[T]]}if($>>7)]}function K(A,w){A.pending_buf[A.pending++]=255&w,A.pending_buf[A.pending++]=w>>>8&255}function q(A,w,R){A.bi_valid>o-R?(A.bi_buf|=w<>o-A.bi_valid,A.bi_valid+=R-o):(A.bi_buf|=w<>>=1,R<<=1,0<--w;);return R>>>1}function ce(A,w,R){var M,z,H=new Array(n+1),G=0;for(M=1;M<=n;M++)H[M]=G=G+R[M-1]<<1;for(z=0;z<=w;z++){var W=A[2*z+1];W!==0&&(A[2*z]=ae(H[W]++,W))}}function te(A){var w;for(w=0;w>1;1<=R;R--)se(A,H,R);for(z=X;R=A.heap[1],A.heap[1]=A.heap[A.heap_len--],se(A,H,1),M=A.heap[1],A.heap[--A.heap_max]=R,A.heap[--A.heap_max]=M,H[2*z]=H[2*R]+H[2*M],A.depth[z]=(A.depth[R]>=A.depth[M]?A.depth[R]:A.depth[M])+1,H[2*R+1]=H[2*M+1]=z,A.heap[1]=z++,se(A,H,1),2<=A.heap_len;);A.heap[--A.heap_max]=A.heap[1],function(re,le){var ye,de,we,oe,Ee,Te,me=le.dyn_tree,Ye=le.max_code,St=le.stat_desc.static_tree,zt=le.stat_desc.has_stree,Et=le.stat_desc.extra_bits,Ve=le.stat_desc.extra_base,ke=le.stat_desc.max_length,Ce=0;for(oe=0;oe<=n;oe++)re.bl_count[oe]=0;for(me[2*re.heap[re.heap_max]+1]=0,ye=re.heap_max+1;ye>=7;z>>=1)if(1&ie&&W.dyn_ltree[2*X]!==0)return c;if(W.dyn_ltree[18]!==0||W.dyn_ltree[20]!==0||W.dyn_ltree[26]!==0)return r;for(X=32;X>>3,(H=A.static_len+3+7>>>3)<=z&&(z=H)):z=H=R+5,R+4<=z&&w!==-1?h(A,w,R,M):A.strategy===4||H===z?(q(A,2+(M?1:0),3),fe(A,Q,g)):(q(A,4+(M?1:0),3),function(W,X,ie,re){var le;for(q(W,X-257,5),q(W,ie-1,5),q(W,re-4,4),le=0;le>>8&255,A.pending_buf[A.d_buf+2*A.last_lit+1]=255&w,A.pending_buf[A.l_buf+A.last_lit]=255&R,A.last_lit++,w===0?A.dyn_ltree[2*R]++:(A.matches++,w--,A.dyn_ltree[2*(t[R]+m+1)]++,A.dyn_dtree[2*E(w)]++),A.last_lit===A.lit_bufsize-1},d._tr_align=function(A){q(A,2,3),V(A,y,Q),function(w){w.bi_valid===16?(K(w,w.bi_buf),w.bi_buf=0,w.bi_valid=0):8<=w.bi_valid&&(w.pending_buf[w.pending++]=255&w.bi_buf,w.bi_buf>>=8,w.bi_valid-=8)}(A)}},{"../utils/common":41}],53:[function(i,S,d){S.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(i,S,d){S.exports=typeof setImmediate=="function"?setImmediate:function(){var s=[].slice.apply(arguments);s.splice(1,0,0),setTimeout.apply(null,s)}},{}]},{},[10])(10)})})(We);var dt=We.exports;const pt=ft(dt);function mt(x){return new Promise(N=>{setTimeout(N,x)})}function gt(x,N){const i=URL.createObjectURL(x),S=document.createElement("a");S.style.display="none",S.download=N,S.href=i,document.body.appendChild(S),S.click(),URL.revokeObjectURL(i)}ct(()=>{const x=document.querySelectorAll(".artwork-cont");if(!x.length)return;const N=document.querySelector(".buttons.ui-helper-clearfix"),i=ue('Download all scans ');N.appendChild(i);let S=!1;i.addEventListener("click",async()=>{if(!S){S=!0;try{await _t(x,i)}catch(d){i.innerHTML="Download all scans (Retry)",console.error(d)}S=!1}})});async function _t(x,N){var u;const i=new pt,S=Ie();if(!S)return;const d={};let s=0;N.innerHTML=`Download all scans (0/${x.length})`;for(const _ of x){s++;const b=_.querySelector("a:last-child");if(!b)continue;const m=(u=_.querySelector("p"))==null?void 0:u.innerText.replace("Types:","").trim();if(!m)continue;d[m]=Number(d[m])+1||1;const v=d[m];for(let a=0;a<5;a++)try{const f=`${m} ${v}.${b.href.split(".").at(-1)}`,p=await je(b.href).then(n=>n.blob());i.file(Oe(f),p),N.innerHTML=`Download all scans (${s}/${x.length})`,await mt(100);break}catch(f){console.error(f)}}N.innerHTML="Download all scans (Zipping 0%)";const c=`Scans {${S.catalogs[0]||S.barcode||S.id}}`,r=await i.generateAsync({type:"blob"},_=>{N.innerHTML=`Download all scans (Zipping ${_.percent.toFixed(0)}%)`});gt(r,Oe(`${c}.zip`)),N.innerHTML="Download all scans (Done)"}function vt(x,N){let i=document.querySelector(x);if(i)return Ze(i);try{N()}catch{console.error(`Could not create menu reference element for selector "${x}".`)}if(i=document.querySelector(x),i)return Ze(i);throw new Error(`Could not find menu reference element by selector "${x}".`)}function Ze(x){return x.addMenuItem=(N,i)=>{let S=x;for(let d=0;d<100;d++){const s=S.nextElementSibling;if(!s||Number(s.getAttribute("data-index"))>i)break;S=s}return N.setAttribute("data-index",i.toString()),S.after(N),N},x}function bt(x,N,i,S){const d=vt("#ame-sidebar",()=>{const c=document.querySelector(x),r=ue("Ame "),u=ue(`
- `);h.before(r),h.before(u)}),a=ge(`
-
- ${z}
+ `);c.before(r),c.before(u)}),s=ue(`
+
+ ${S}
- `);return g.addMenuItem(a,100)}function _e(I,V,A,z){return mt(".release-information",I,V,`${A} `)}const xe="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KCTwhLS0hIEZvbnQgQXdlc29tZSBQcm8gNi4yLjAgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20gTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UgKENvbW1lcmNpYWwgTGljZW5zZSkgQ29weXJpZ2h0IDIwMjIgRm9udGljb25zLCBJbmMuIC0tPgoJPHBhdGggZmlsbD0iI2RlZGVkZSIgZD0iTTUxMiAyNTUuMWMwIDEuOC0uOSAyLjctLjkgMy42LjUgMzYuNS0zMi43IDYwLjQtNjkuMiA2MC40SDM0NGMtMjYuNSAwLTQ4IDIyLjQtNDggNDguOSAwIDMuNC40IDYuNyAxIDkuOSAyLjIgMTAuMiA2LjUgMTkuMiAxMC45IDI5LjkgNiAxMy44IDEyLjEgMjcuNSAxMi4xIDQyIDAgMzEuOS0yMS42IDYwLjctNTMuNCA2Mi0zLjUuMS03LjEuMi0xMC42LjJDMTE0LjYgNTEyIDAgMzk3LjQgMCAyNTZTMTE0LjYgMCAyNTYgMHMyNTYgMTE0LjYgMjU2IDI1NnYtLjl6bS00MTYgMGMtMTcuNjcgMC0zMiAxNS4yLTMyIDMyIDAgMTguNiAxNC4zMyAzMiAzMiAzMiAxNy43IDAgMzItMTMuNCAzMi0zMiAwLTE2LjgtMTQuMy0zMi0zMi0zMnptMzItNjRjMTcuNyAwIDMyLTEzLjQgMzItMzIgMC0xNi44LTE0LjMtMzItMzItMzJzLTMyIDE1LjItMzIgMzJjMCAxOC42IDE0LjMgMzIgMzIgMzJ6bTEyOC0xMjhjLTE3LjcgMC0zMiAxNS4yMy0zMiAzMiAwIDE4LjYgMTQuMyAzMiAzMiAzMnMzMi0xMy40IDMyLTMyYzAtMTYuNzctMTQuMy0zMi0zMi0zMnptMTI4IDEyOGMxNy43IDAgMzItMTMuNCAzMi0zMiAwLTE2LjgtMTQuMy0zMi0zMi0zMnMtMzIgMTUuMi0zMiAzMmMwIDE4LjYgMTQuMyAzMiAzMiAzMnoiIC8+Cjwvc3ZnPgo=",gt="data:image/x-icon;base64,AAABAAEAQBsAAAEAIAAAHAAAFgAAACgAAABAAAAANgAAAAEAIAAAAAAAABsAABILAAASCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wf4/vINq8+BDI+2dxbP4cJHrsyOTYGuSExlmyZMPX4ATI61aIikxIevosKDrouzX66HsFeuh7BYroewWK6HsFeui7NfrqLCg66kxIevjrVoiD1+AExlmyZMga5ITK7Mjk3P4cJHj7Z3FqvPgQz4/vIN////B////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wDw9vcA/v//CtHkviZ6qUgrqMaNZnWlO3R3pEmiha1XyWmbJ8dTiw7PZ5cr9GSWIvhckBH4V40J+FCIAfhUigb8VosJ/1aLCf9Viwb/VYsG/1aLBv9Wiwb/VYsG/1WLBv9Wiwn/VosJ/1SKBvxQiAH4V40J+FyQEfhkliL4Z5cr9FOLDs9pmyfHha1XyXekSaJ1pTt0qMaNZnqpSCvR5L4m+/z/CvL4+AD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8B5O7XDqnHkCeGsFlTf6pRkG6eMrtunTXpWY8Q7FqOEvtYjQn/UokB/1GIAP9SiAD/UogA/0+GAP9OhgD/UIcA/1OJAv9Viwn/VosL/1iMEP9YjBD/WIwR/1eME/9XjBP/V4wT/1eME/9YjBH/WIwQ/1iMEP9Wiwv/VYsJ/1OJAv9QhwD/ToYA/0+GAP9SiAD/UogA/1GIAP9SiQH/WI0J/1qOEvtZjxDsbZwz6W2dObuDrFeQha9YU6nHkCfk7tcO////Af///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8Ax9nIAPf6+w6806Y8i7JhgXqlSMVdkRrkW48R/lOJA/9TiQD/UIcA/1GHAP9RiAH/U4kH/1+RGf9pmC//c6A7/4OqT/+XuHP/oL6E/6fDi/+3zpn/xdew/8rbuP/W48v/1uPK/9nl0P/c59b/3OfV/9zn1f/c59b/2eXQ/9bjyv/W48v/ytu4/8XXsP+3zpn/p8OL/6C+hP+XuHP/g6pP/3OgO/9pmC//X5EZ/1OJB/9RiAH/UYcA/0+GAP9TiQH/U4kD/1uPEf5dkRrkeqVIxYuyYYG806Y89/r7DsfZyAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAACav20A2+jKDpy9dVV/qVO7Zpcp81aMCv5SiAH/UYgA/1CHAf9XjA7/Z5co/36nT/+Vtm3/tMya/8vbvP/e6dL/8PXt//b59P/6/Pj//v7+/////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//r8+P/2+fT/8PXt/97p0v/L27z/tMya/5S2bf+Dqlf/Z5cp/1eMDv9QhwH/UYgA/1KIAf9WjAr+Zpcp83+oUrubvHZV2ujKDpq+bAAAAAAAAAAAAPz/8AAAAAAAxNmsRoGqUr1ckBX3U4kC/1CHAP9SiAT/YJIe/4SrVf+rxY//0N/A/+vx5f/5+/f//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////P37/+vx5v/Q38D/q8WP/4SrVf9gkh7/UokG/1CHAP9TiQL/XJAV94GqUr3D2KtGAAAAAPn/6QAABAAAeahDTGeYKuRUigb/UIcA/1uPFv+Cqlb/ts2d/+Ls2f/7/Pr////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7/Pr/4+zb/73SqP+CqVX/WI0S/1CHAP9Vigj/apox5I62ZEwAMQAAv9amUnGgQeNekR7/YpQj/5G0Z//Z5c3/+fv4////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+Pr3/9PhxP+Wt2z/Y5Uh/16RHf9xn0HjwNemUouzVKx2oj//gKlL/8XYrv/7/Pn///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/f/7/fz/+/z8//3+/f//////////////////////+/z5/8bYrv9/qEv/eKNA/4uzVax2pjWtfqhD/8nasf/////////////////+/v7/uc+k/5u7dv+dvHn/nLt3/7DJlv/6/Pn/1eLE/5u7dv+dvHn/nbx5/569ev/l7tv/+fv4/6vFkP+cu3f/nbx5/5q6dv/K27v//////9zn0/+bu3n/nbx5/528ef+bunb/wdWs///////b5tH/m7t4/528ef+dvHn/m7p2/8LWrv//////v9Sn/5u6dv+dvHn/nbx5/5u7d//Y5cn/////////////////8fbt/7nPof+LsF7/eKJL/3ehSf+Fq1T/psKI/9Tiyf/4+vb/////////////////yNqw/3+pRv93pjWtnsBvqpC0Xv/m7tz//////////////////P38/4GoWP9NhQD/UYgA/06FAP9znz//9/r1/7nPnP9OhgH/UYgA/1GHAP9Vigz/1ePE//P38f9nlzH/T4YA/1GIAP9LhAD/n72C//////+/067/TYUD/1GIAP9RiAD/TIQA/5G0av//////vNGq/0yEAv9RiAD/UYgA/0yEAP+Utm7//////5O2Z/9MhAD/UYgA/1GIAP9PhgL/v9Ok////////////3+nS/3ylSf9RiAT/UYgA/1GHAP9PhgL/T4YF/0yEAv9VihD/mrp0//z9/P///////////+jv3/+QtF7/nsBvqs3etFmjwXrzwtap//v8+v////////////z9/P+Eq1j/UogA/1aLAf9TiQD/d6JB//j69f+70Z7/U4kC/1aLAf9WiwD/WY4N/9bjxf/z9/H/a5oy/1SKAP9WiwH/UYcA/6G/g///////wdSu/1KIBP9XiwH/VosB/1GIAP+Utmz//////77Tq/9SiAP/V4sB/1aLAf9RiAD/l7hv//////+WuGn/UYgA/1aLAf9WiwH/VIoE/8DVpv//////7fPp/3WhP/9RhwD/VosB/1SKAP9gkh7/r8iS/9Hfxf+zy5j/aZgs/1+SJf/p8OH///////z9+//D16r/osB488zes1n///8Izt64fLHLj/HH2a//9Pfv///////8/fz/hKtY/1KIAP9WiwH/U4kA/3eiQP/4+vX/u9Ge/1OJAv9WiwH/VosA/1mNDf/W48X/8/fx/2uZMv9UigD/VosB/1CHAP+hv4P//////8HUrv9SiAT/VosB/1aLAf9RiAD/lLZr//////++06v/UYgD/1aLAf9WiwH/UYgA/5e4b///////lrdp/1GIAP9WiwH/VosB/1SKBP/A1Kb//////7HKmf9QhwP/VosB/1aLAf9TiQX/sMmX/////////////////+Dq1f/H2bX/+vz4//P37v/J2rL/ssuP8c7euHz///8I+vz3AP///wbZ6MZJvdOfysHVpvzZ5cj/8/fv/4SrWf9SiAD/VosB/1OJAP93okD/+Pr1/7vRnv9TiQL/VosB/1aLAP9ZjQ3/1uPF//P38f9rmTL/VIoA/1aLAf9QhwD/ob+D///////B1K7/UogE/1aLAf9WiwH/UYgA/5S2a///////vtOr/1GIA/9WiwH/VosB/1GIAP+XuG///////5a3af9RiAD/VosB/1aLAf9UigT/wNWm//////+CqVj/UYgA/1aLAf9VigD/XI8Z/97o1f//////////////////////9fjx/9nmyv+906D8vdOfytnoxkn///8G+vz4AAAAAAD///8A////AO/25xbW5cNoxdmsyt7p0POFrFr/UogA/1aLAf9TiQD/d6JB//j69f+70Z7/U4kC/1aLAf9WiwD/WY0N/9bjxf/z9/H/a5ky/1SKAP9WiwH/UIcA/6G/g///////wdSu/1KIBP9WiwH/VosB/1GIAP+Utmv//////77Tq/9RiAP/VosB/1aLAf9RiAD/l7hv//////+Wt2n/UYgA/1aLAf9WiwH/VIoE/8HVpv/9/v7/fKVO/1KIAP9WiwH/VYoA/16RIf/p8OX//v7+//T48P/n797/1uTF/8rcsvHJ27HK2efHaO304xb///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAA6ffcAPX87w/0+PB/hata/1KIAP9WiwH/U4kA/3iiQv/w9ev/uM+a/1OJAv9WiwH/VosA/1mODf/X5MX/8/fy/2uZMv9UigD/VosB/1CHAP+hv4P//////8HUrv9SiAT/VosB/1aLAf9RiAD/lLZr//////++06v/UYgD/1aLAf9WiwH/UYgA/5e4cP//////lrhp/1GIAP9WiwH/VosB/1SKBP/B1ab//////4GpVf9SiAD/VosB/1WKAP9ekSH/2OXP/9/q0fvX5MX62+fM/uny3sPz+Oxt8/nsE+764wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD09/AA+Pv4aoWrWv9SiAD/VosB/1OJAP92oj//6PDg/67Ikv9SiAH/VosB/1aLAf9Wiwv/z9/A//D17P9qmS7/VIoA/1aLAf9QhwD/ob6D///////B1K7/UogE/1aLAf9WiwH/UYgA/5S2a///////vtOr/1GIA/9WiwH/VosB/1GIAP+Vt2z//////46yZP9RiAD/VosB/1aLAf9UigT/u9Gf//f69f+hv33/UIcA/1aLAf9ViwD/XZAZ/9LhxOru9eZs+/33esrbwP6fvYP41OLHzf///xz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9PfwAPj7+GqFq1r/UogA/1aLAf9VigD/YJIa/7/TqP+DqlP/UogA/1aLAf9WiwH/UogB/5W2bv+tx5H/V4wL/1aL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";it(async()=>{const I=Ce();I&&await Promise.all([_t(I),vt(I)])});function _t(I){const V=I.barcode??I.catalogs[0];V&&_e(200,gt,"音楽の森 (Search) ",`https://search.minc.or.jp/product/list/?type=search-form-diskno&dn=${V}`)}function vt(I){_e(300,xe,"MH Covers (Search) ",`https://covers.musichoarders.xyz?artist=${encodeURIComponent(I.artist)}&album=${encodeURIComponent(I.title)}`),I.tocs.length&&I.tocs[0].split(":").length-1>=4&&_e(400,xe,"MH Covers (Search by TOC) ",`https://covers.musichoarders.xyz?toc=${encodeURIComponent(I.tocs[0])}`),I.barcode&&_e(500,xe,"MH Covers (Search by Barcode) ",`https://covers.musichoarders.xyz?barcode=${encodeURIComponent(I.barcode)}`),I.catalogs.length&&_e(600,xe,"MH Covers (Search by Catalog) ",`https://covers.musichoarders.xyz?catalog=${encodeURIComponent(I.catalogs[0])}`)}const bt=`span.fileinput-button.buttons{display:inline-flex;flex-direction:column;gap:.5rem}.cover-art-image img{width:100%;aspect-ratio:1;object-fit:contain}
-`;GM.addStyle(bt)});
+ `);return d.addMenuItem(s,100)}function be(x,N,i,S){return bt(".release-information",x,N,`${i} `)}const ze="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KCTwhLS0hIEZvbnQgQXdlc29tZSBQcm8gNi4yLjAgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20gTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UgKENvbW1lcmNpYWwgTGljZW5zZSkgQ29weXJpZ2h0IDIwMjIgRm9udGljb25zLCBJbmMuIC0tPgoJPHBhdGggZmlsbD0iI2RlZGVkZSIgZD0iTTUxMiAyNTUuMWMwIDEuOC0uOSAyLjctLjkgMy42LjUgMzYuNS0zMi43IDYwLjQtNjkuMiA2MC40SDM0NGMtMjYuNSAwLTQ4IDIyLjQtNDggNDguOSAwIDMuNC40IDYuNyAxIDkuOSAyLjIgMTAuMiA2LjUgMTkuMiAxMC45IDI5LjkgNiAxMy44IDEyLjEgMjcuNSAxMi4xIDQyIDAgMzEuOS0yMS42IDYwLjctNTMuNCA2Mi0zLjUuMS03LjEuMi0xMC42LjJDMTE0LjYgNTEyIDAgMzk3LjQgMCAyNTZTMTE0LjYgMCAyNTYgMHMyNTYgMTE0LjYgMjU2IDI1NnYtLjl6bS00MTYgMGMtMTcuNjcgMC0zMiAxNS4yLTMyIDMyIDAgMTguNiAxNC4zMyAzMiAzMiAzMiAxNy43IDAgMzItMTMuNCAzMi0zMiAwLTE2LjgtMTQuMy0zMi0zMi0zMnptMzItNjRjMTcuNyAwIDMyLTEzLjQgMzItMzIgMC0xNi44LTE0LjMtMzItMzItMzJzLTMyIDE1LjItMzIgMzJjMCAxOC42IDE0LjMgMzIgMzIgMzJ6bTEyOC0xMjhjLTE3LjcgMC0zMiAxNS4yMy0zMiAzMiAwIDE4LjYgMTQuMyAzMiAzMiAzMnMzMi0xMy40IDMyLTMyYzAtMTYuNzctMTQuMy0zMi0zMi0zMnptMTI4IDEyOGMxNy43IDAgMzItMTMuNCAzMi0zMiAwLTE2LjgtMTQuMy0zMi0zMi0zMnMtMzIgMTUuMi0zMiAzMmMwIDE4LjYgMTQuMyAzMiAzMiAzMnoiIC8+Cjwvc3ZnPgo=",yt="data:image/x-icon;base64,AAABAAEAQBsAAAEAIAAAHAAAFgAAACgAAABAAAAANgAAAAEAIAAAAAAAABsAABILAAASCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wf4/vINq8+BDI+2dxbP4cJHrsyOTYGuSExlmyZMPX4ATI61aIikxIevosKDrouzX66HsFeuh7BYroewWK6HsFeui7NfrqLCg66kxIevjrVoiD1+AExlmyZMga5ITK7Mjk3P4cJHj7Z3FqvPgQz4/vIN////B////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wDw9vcA/v//CtHkviZ6qUgrqMaNZnWlO3R3pEmiha1XyWmbJ8dTiw7PZ5cr9GSWIvhckBH4V40J+FCIAfhUigb8VosJ/1aLCf9Viwb/VYsG/1aLBv9Wiwb/VYsG/1WLBv9Wiwn/VosJ/1SKBvxQiAH4V40J+FyQEfhkliL4Z5cr9FOLDs9pmyfHha1XyXekSaJ1pTt0qMaNZnqpSCvR5L4m+/z/CvL4+AD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8B5O7XDqnHkCeGsFlTf6pRkG6eMrtunTXpWY8Q7FqOEvtYjQn/UokB/1GIAP9SiAD/UogA/0+GAP9OhgD/UIcA/1OJAv9Viwn/VosL/1iMEP9YjBD/WIwR/1eME/9XjBP/V4wT/1eME/9YjBH/WIwQ/1iMEP9Wiwv/VYsJ/1OJAv9QhwD/ToYA/0+GAP9SiAD/UogA/1GIAP9SiQH/WI0J/1qOEvtZjxDsbZwz6W2dObuDrFeQha9YU6nHkCfk7tcO////Af///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8Ax9nIAPf6+w6806Y8i7JhgXqlSMVdkRrkW48R/lOJA/9TiQD/UIcA/1GHAP9RiAH/U4kH/1+RGf9pmC//c6A7/4OqT/+XuHP/oL6E/6fDi/+3zpn/xdew/8rbuP/W48v/1uPK/9nl0P/c59b/3OfV/9zn1f/c59b/2eXQ/9bjyv/W48v/ytu4/8XXsP+3zpn/p8OL/6C+hP+XuHP/g6pP/3OgO/9pmC//X5EZ/1OJB/9RiAH/UYcA/0+GAP9TiQH/U4kD/1uPEf5dkRrkeqVIxYuyYYG806Y89/r7DsfZyAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAACav20A2+jKDpy9dVV/qVO7Zpcp81aMCv5SiAH/UYgA/1CHAf9XjA7/Z5co/36nT/+Vtm3/tMya/8vbvP/e6dL/8PXt//b59P/6/Pj//v7+/////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//r8+P/2+fT/8PXt/97p0v/L27z/tMya/5S2bf+Dqlf/Z5cp/1eMDv9QhwH/UYgA/1KIAf9WjAr+Zpcp83+oUrubvHZV2ujKDpq+bAAAAAAAAAAAAPz/8AAAAAAAxNmsRoGqUr1ckBX3U4kC/1CHAP9SiAT/YJIe/4SrVf+rxY//0N/A/+vx5f/5+/f//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////P37/+vx5v/Q38D/q8WP/4SrVf9gkh7/UokG/1CHAP9TiQL/XJAV94GqUr3D2KtGAAAAAPn/6QAABAAAeahDTGeYKuRUigb/UIcA/1uPFv+Cqlb/ts2d/+Ls2f/7/Pr////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7/Pr/4+zb/73SqP+CqVX/WI0S/1CHAP9Vigj/apox5I62ZEwAMQAAv9amUnGgQeNekR7/YpQj/5G0Z//Z5c3/+fv4////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+Pr3/9PhxP+Wt2z/Y5Uh/16RHf9xn0HjwNemUouzVKx2oj//gKlL/8XYrv/7/Pn///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/f/7/fz/+/z8//3+/f//////////////////////+/z5/8bYrv9/qEv/eKNA/4uzVax2pjWtfqhD/8nasf/////////////////+/v7/uc+k/5u7dv+dvHn/nLt3/7DJlv/6/Pn/1eLE/5u7dv+dvHn/nbx5/569ev/l7tv/+fv4/6vFkP+cu3f/nbx5/5q6dv/K27v//////9zn0/+bu3n/nbx5/528ef+bunb/wdWs///////b5tH/m7t4/528ef+dvHn/m7p2/8LWrv//////v9Sn/5u6dv+dvHn/nbx5/5u7d//Y5cn/////////////////8fbt/7nPof+LsF7/eKJL/3ehSf+Fq1T/psKI/9Tiyf/4+vb/////////////////yNqw/3+pRv93pjWtnsBvqpC0Xv/m7tz//////////////////P38/4GoWP9NhQD/UYgA/06FAP9znz//9/r1/7nPnP9OhgH/UYgA/1GHAP9Vigz/1ePE//P38f9nlzH/T4YA/1GIAP9LhAD/n72C//////+/067/TYUD/1GIAP9RiAD/TIQA/5G0av//////vNGq/0yEAv9RiAD/UYgA/0yEAP+Utm7//////5O2Z/9MhAD/UYgA/1GIAP9PhgL/v9Ok////////////3+nS/3ylSf9RiAT/UYgA/1GHAP9PhgL/T4YF/0yEAv9VihD/mrp0//z9/P///////////+jv3/+QtF7/nsBvqs3etFmjwXrzwtap//v8+v////////////z9/P+Eq1j/UogA/1aLAf9TiQD/d6JB//j69f+70Z7/U4kC/1aLAf9WiwD/WY4N/9bjxf/z9/H/a5oy/1SKAP9WiwH/UYcA/6G/g///////wdSu/1KIBP9XiwH/VosB/1GIAP+Utmz//////77Tq/9SiAP/V4sB/1aLAf9RiAD/l7hv//////+WuGn/UYgA/1aLAf9WiwH/VIoE/8DVpv//////7fPp/3WhP/9RhwD/VosB/1SKAP9gkh7/r8iS/9Hfxf+zy5j/aZgs/1+SJf/p8OH///////z9+//D16r/osB488zes1n///8Izt64fLHLj/HH2a//9Pfv///////8/fz/hKtY/1KIAP9WiwH/U4kA/3eiQP/4+vX/u9Ge/1OJAv9WiwH/VosA/1mNDf/W48X/8/fx/2uZMv9UigD/VosB/1CHAP+hv4P//////8HUrv9SiAT/VosB/1aLAf9RiAD/lLZr//////++06v/UYgD/1aLAf9WiwH/UYgA/5e4b///////lrdp/1GIAP9WiwH/VosB/1SKBP/A1Kb//////7HKmf9QhwP/VosB/1aLAf9TiQX/sMmX/////////////////+Dq1f/H2bX/+vz4//P37v/J2rL/ssuP8c7euHz///8I+vz3AP///wbZ6MZJvdOfysHVpvzZ5cj/8/fv/4SrWf9SiAD/VosB/1OJAP93okD/+Pr1/7vRnv9TiQL/VosB/1aLAP9ZjQ3/1uPF//P38f9rmTL/VIoA/1aLAf9QhwD/ob+D///////B1K7/UogE/1aLAf9WiwH/UYgA/5S2a///////vtOr/1GIA/9WiwH/VosB/1GIAP+XuG///////5a3af9RiAD/VosB/1aLAf9UigT/wNWm//////+CqVj/UYgA/1aLAf9VigD/XI8Z/97o1f//////////////////////9fjx/9nmyv+906D8vdOfytnoxkn///8G+vz4AAAAAAD///8A////AO/25xbW5cNoxdmsyt7p0POFrFr/UogA/1aLAf9TiQD/d6JB//j69f+70Z7/U4kC/1aLAf9WiwD/WY0N/9bjxf/z9/H/a5ky/1SKAP9WiwH/UIcA/6G/g///////wdSu/1KIBP9WiwH/VosB/1GIAP+Utmv//////77Tq/9RiAP/VosB/1aLAf9RiAD/l7hv//////+Wt2n/UYgA/1aLAf9WiwH/VIoE/8HVpv/9/v7/fKVO/1KIAP9WiwH/VYoA/16RIf/p8OX//v7+//T48P/n797/1uTF/8rcsvHJ27HK2efHaO304xb///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAA6ffcAPX87w/0+PB/hata/1KIAP9WiwH/U4kA/3iiQv/w9ev/uM+a/1OJAv9WiwH/VosA/1mODf/X5MX/8/fy/2uZMv9UigD/VosB/1CHAP+hv4P//////8HUrv9SiAT/VosB/1aLAf9RiAD/lLZr//////++06v/UYgD/1aLAf9WiwH/UYgA/5e4cP//////lrhp/1GIAP9WiwH/VosB/1SKBP/B1ab//////4GpVf9SiAD/VosB/1WKAP9ekSH/2OXP/9/q0fvX5MX62+fM/uny3sPz+Oxt8/nsE+764wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD09/AA+Pv4aoWrWv9SiAD/VosB/1OJAP92oj//6PDg/67Ikv9SiAH/VosB/1aLAf9Wiwv/z9/A//D17P9qmS7/VIoA/1aLAf9QhwD/ob6D///////B1K7/UogE/1aLAf9WiwH/UYgA/5S2a///////vtOr/1GIA/9WiwH/VosB/1GIAP+Vt2z//////46yZP9RiAD/VosB/1aLAf9UigT/u9Gf//f69f+hv33/UIcA/1aLAf9ViwD/XZAZ/9LhxOru9eZs+/33esrbwP6fvYP41OLHzf///xz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9PfwAPj7+GqFq1r/UogA/1aLAf9VigD/YJIa/7/TqP+DqlP/UogA/1aLAf9WiwH/UogB/5W2bv+tx5H/V4wL/1aL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";At(async()=>{const x=Ie();x&&await Promise.all([wt(x),kt(x)])});function wt(x){const N=x.barcode??x.catalogs[0];N&&be(200,yt,"音楽の森 (Search) ",`https://search.minc.or.jp/product/list/?type=search-form-diskno&dn=${N}`)}async function kt(x){if(be(300,ze,"MH Covers (Search) ",`https://covers.musichoarders.xyz?artist=${encodeURIComponent(x.artist)}&album=${encodeURIComponent(x.title)}`),x.tocType===_e.Exact||x.tocType===_e.Deduced){const N=await Re(x);N&&be(400,ze,"MH Covers (Search by TOC) ",`https://covers.musichoarders.xyz?toc=${encodeURIComponent(N)}`)}x.barcode&&be(500,ze,"MH Covers (Search by Barcode) ",`https://covers.musichoarders.xyz?barcode=${encodeURIComponent(x.barcode)}`),x.catalogs.length&&be(600,ze,"MH Covers (Search by Catalog) ",`https://covers.musichoarders.xyz?catalog=${encodeURIComponent(x.catalogs[0])}`)}const xt=`span.fileinput-button.buttons{display:inline-flex;flex-direction:column;gap:.5rem}.cover-art-image img{width:100%;aspect-ratio:1;object-fit:contain}.buttons select{float:left;margin:0 7px 0 0;background-image:none;background-color:#eee;border:1px solid #CCC;border-top:1px solid #EEE;border-left:1px solid #EEE;font-family:Lucida Grande,Tahoma,Arial,Verdana,sans-serif;font-size:1rem;line-height:130%;text-decoration:none;font-weight:700;color:#666;cursor:pointer;padding:5px 10px 6px 7px}.buttons select:hover,.buttons select:focus{background-color:#dff4ff;border:1px solid #C2E1EF;color:#369}
+`;GM.addStyle(xt)});
diff --git a/src/musicbrainz/main.ts b/src/musicbrainz/main.ts
index 4f8bf7c..17b48ca 100644
--- a/src/musicbrainz/main.ts
+++ b/src/musicbrainz/main.ts
@@ -1,7 +1,7 @@
// ==UserScript==
// @namespace ame-musicbrainz
// @name Ame (MusicBrainz)
-// @version 1.5.0
+// @version 1.6.0
// @author SuperSaltyGamer
// @run-at document-end
// @match https://musicbrainz.org/*
diff --git a/src/musicbrainz/modules/covers.ts b/src/musicbrainz/modules/covers.ts
index 1a8fa09..68f3411 100644
--- a/src/musicbrainz/modules/covers.ts
+++ b/src/musicbrainz/modules/covers.ts
@@ -1,7 +1,14 @@
import { fetchCors } from "../../common/fetch";
import { fromHTML } from "../../common/dom";
import { onReleaseAddCoverRoute } from "../glue/router";
-import { getPageReleaseInfo } from "../services/release";
+import { ReleaseInfo, TocType, getPageReleaseInfo, getReleaseToc } from "../services/release";
+
+enum QueryType {
+ Search = "search",
+ Barcode = "barcode",
+ Catalog = "catalog",
+ Toc = "toc"
+}
interface CoverData {
action: string;
@@ -17,24 +24,52 @@ onReleaseAddCoverRoute(() => {
const refEl = document.querySelector(".fileinput-button.buttons");
if (!refEl) return;
- const buttonEl = fromHTML(`Pick from MH Covers... `);
- buttonEl.onclick = openPicker;
+ const release = getPageReleaseInfo();
+ if (!release) return;
+
+ const buttonEl = fromHTML(`
+
+ Search MH Covers...
+ by Artist and Album
+ ${release.barcode ? `by Barcode ` : ""}
+ ${release.catalogs.length ? `by Catalog ` : ""}
+ ${release.tocType === TocType.Exact || release.tocType === TocType.Deduced ? `by TOC ` : ""}
+
+ `);
+
+ buttonEl.addEventListener("input", async () => {
+ await openPicker(release, buttonEl.value as QueryType);
+ });
refEl.appendChild(buttonEl);
});
-function openPicker(e: MouseEvent) {
- e.preventDefault();
-
- const release = getPageReleaseInfo();
- if (!release) return;
-
+async function openPicker(releaseInfo: ReleaseInfo, queryType: QueryType) {
const params = new URLSearchParams();
- params.set("artist", release.artist);
- params.set("album", release.title);
params.set("remote.port", "browser");
params.set("remote.agent", "Ame - MusicBrainz");
params.set("remote.text", "Pick cover for MusicBrainz release.");
+ switch (queryType) {
+ case QueryType.Search:
+ params.set("artist", releaseInfo.artist);
+ params.set("album", releaseInfo.title);
+ break;
+ case QueryType.Barcode:
+ if (!releaseInfo.barcode) return;
+ params.set("barcode", releaseInfo.barcode);
+ break;
+ case QueryType.Catalog:
+ if (!releaseInfo.catalogs.length) return;
+ params.set("catalog", releaseInfo.catalogs[0]);
+ break;
+ case QueryType.Toc:
+ const toc = await getReleaseToc(releaseInfo);
+ if (!toc) return;
+ params.set("toc", toc);
+ break;
+ default:
+ return;
+ }
const win = open(`https://covers.musichoarders.xyz?${params}`, "_blank");
if (!win) return;
diff --git a/src/musicbrainz/modules/related.ts b/src/musicbrainz/modules/related.ts
index 8d5ccd7..67d543b 100644
--- a/src/musicbrainz/modules/related.ts
+++ b/src/musicbrainz/modules/related.ts
@@ -1,29 +1,32 @@
import { onReleaseRoute } from "../glue/router";
-import { ReleaseInfo, getPageReleaseInfo } from "../services/release";
+import { ReleaseInfo, TocType, getPageReleaseInfo, getReleaseToc } from "../services/release";
import { addReleaseSidebarButton } from "../glue/sidebar";
import mhCoversIcon from "../assets/icons/mhcovers.svg";
import ongakuNoMoriIcon from "../assets/icons/ongakunomori.ico";
onReleaseRoute(async () => {
- const release = getPageReleaseInfo();
- if (!release) return;
+ const releaseInfo = getPageReleaseInfo();
+ if (!releaseInfo) return;
await Promise.all([
- addOngakuNoMoriToRelease(release),
- addMhCoversToRelease(release)
+ addOngakuNoMoriToRelease(releaseInfo),
+ addMhCoversToRelease(releaseInfo)
]);
});
-function addOngakuNoMoriToRelease(release: ReleaseInfo) {
- const dn = release.barcode ?? release.catalogs[0];
+function addOngakuNoMoriToRelease(releaseInfo: ReleaseInfo) {
+ const dn = releaseInfo.barcode ?? releaseInfo.catalogs[0];
if (!dn) return;
addReleaseSidebarButton(200, ongakuNoMoriIcon, "音楽の森 (Search) ", `https://search.minc.or.jp/product/list/?type=search-form-diskno&dn=${dn}`);
}
-function addMhCoversToRelease(release: ReleaseInfo) {
- addReleaseSidebarButton(300, mhCoversIcon, "MH Covers (Search) ", `https://covers.musichoarders.xyz?artist=${encodeURIComponent(release.artist)}&album=${encodeURIComponent(release.title)}`);
- if (release.tocs.length && release.tocs[0].split(':').length - 1 >= 4) addReleaseSidebarButton(400, mhCoversIcon, "MH Covers (Search by TOC) ", `https://covers.musichoarders.xyz?toc=${encodeURIComponent(release.tocs[0])}`);
- if (release.barcode) addReleaseSidebarButton(500, mhCoversIcon, "MH Covers (Search by Barcode) ", `https://covers.musichoarders.xyz?barcode=${encodeURIComponent(release.barcode)}`);
- if (release.catalogs.length) addReleaseSidebarButton(600, mhCoversIcon, "MH Covers (Search by Catalog) ", `https://covers.musichoarders.xyz?catalog=${encodeURIComponent(release.catalogs[0])}`);
+async function addMhCoversToRelease(releaseInfo: ReleaseInfo) {
+ addReleaseSidebarButton(300, mhCoversIcon, "MH Covers (Search) ", `https://covers.musichoarders.xyz?artist=${encodeURIComponent(releaseInfo.artist)}&album=${encodeURIComponent(releaseInfo.title)}`);
+ if (releaseInfo.tocType === TocType.Exact || releaseInfo.tocType === TocType.Deduced) {
+ const toc = await getReleaseToc(releaseInfo);
+ if (toc) addReleaseSidebarButton(400, mhCoversIcon, "MH Covers (Search by TOC) ", `https://covers.musichoarders.xyz?toc=${encodeURIComponent(toc)}`);
+ }
+ if (releaseInfo.barcode) addReleaseSidebarButton(500, mhCoversIcon, "MH Covers (Search by Barcode) ", `https://covers.musichoarders.xyz?barcode=${encodeURIComponent(releaseInfo.barcode)}`);
+ if (releaseInfo.catalogs.length) addReleaseSidebarButton(600, mhCoversIcon, "MH Covers (Search by Catalog) ", `https://covers.musichoarders.xyz?catalog=${encodeURIComponent(releaseInfo.catalogs[0])}`);
}
diff --git a/src/musicbrainz/modules/search.ts b/src/musicbrainz/modules/search.ts
index 441871d..bb5a73f 100644
--- a/src/musicbrainz/modules/search.ts
+++ b/src/musicbrainz/modules/search.ts
@@ -3,8 +3,8 @@ import { getPageReleaseId } from "../services/release";
enum QueryType {
Unknown = "unknown",
- Catalog = "catalog",
Barcode = "barcode",
+ Catalog = "catalog",
Isrc = "isrc",
Toc = "toc"
}
diff --git a/src/musicbrainz/services/release.ts b/src/musicbrainz/services/release.ts
index 189e687..193e8e0 100644
--- a/src/musicbrainz/services/release.ts
+++ b/src/musicbrainz/services/release.ts
@@ -1,4 +1,11 @@
import { parseDuration } from "../../common/format";
+import { Release } from "../types";
+
+export enum TocType {
+ Incompatible = "incompatible",
+ Deduced = "deduced",
+ Exact = "exact"
+}
export interface ReleaseInfo {
id: string;
@@ -6,7 +13,12 @@ export interface ReleaseInfo {
artist: string;
barcode?: string;
catalogs: string[];
- tocs: string[];
+ tocType: TocType;
+}
+
+function isFormatTocCompatible(format: string): boolean {
+ format = format.toLowerCase().replace(/[^a-z+]/g, "");
+ return format.includes("digitalmedia") || format.includes("cd") || format.includes("disc");
}
export function getPageReleaseId(): string {
@@ -14,31 +26,77 @@ export function getPageReleaseId(): string {
}
export function getPageReleaseInfo(): ReleaseInfo | null {
+ const releaseId = getPageReleaseId();
+
let barcode = document.querySelector(".barcode")?.innerText;
if (barcode === "[none]") barcode = undefined;
- const tocs: string[] = [];
- let offset = 0;
-
- try {
- for (const mediumEl of document.querySelectorAll("table.medium")) {
- tocs.push("0");
-
- for (const durationEl of mediumEl.querySelectorAll("td.treleases")) {
- offset += parseDuration(durationEl.innerHTML) * 75;
- tocs[tocs.length - 1] += `:${offset}`;
- }
- }
- } catch {}
+ const format = document.querySelector("dd.format")!.innerText;
+ const tocEl = document.querySelector(".tabs a[href$='/discids']");
+ const hasExactToc = tocEl && tocEl.textContent !== "Disc IDs (0)";
return {
- id: getPageReleaseId(),
+ id: releaseId,
title: document.querySelector("h1 a")!.innerText,
artist: document.querySelector(".subheader bdi")!.innerText,
barcode,
catalogs: Array.from(document.querySelectorAll(".catalog-number"))
.map(el => el.innerText)
.filter(catalog => catalog != "[none]"),
- tocs
+ tocType: hasExactToc ? TocType.Exact : isFormatTocCompatible(format) ? TocType.Deduced : TocType.Incompatible
};
}
+
+export async function getReleaseToc(releaseInfo: ReleaseInfo): Promise {
+ if (releaseInfo.tocType === TocType.Incompatible) return null;
+ if (releaseInfo.tocType === TocType.Deduced) {
+ const toc = getPageReleaseToc();
+ if (toc) return toc;
+ }
+
+ try {
+ const release = await fetch(`https://musicbrainz.org/ws/2/release/${releaseInfo.id}?fmt=json&inc=recordings+discids`)
+ .then((res) => res.json());
+
+ const exactDisc = release.media
+ .flatMap(media => media.discs)
+ .filter(disc => disc.offsets.length)[0];
+
+ if (exactDisc) return [ 1, exactDisc.offsets.length, exactDisc.sectors ].concat(exactDisc.offsets).join(" ");
+
+ const deducedDisc = release.media
+ .filter(media => isFormatTocCompatible(media.format))[0];
+
+ if (deducedDisc) {
+ let toc = "0";
+ let offset = 0;
+
+ for (const track of deducedDisc.tracks) {
+ offset += track.length / 1000 * 75;
+ toc += `:${offset}`;
+ }
+
+ return toc;
+ }
+ } catch (err) {
+ console.error(err);
+ }
+
+ return getPageReleaseToc();
+}
+
+function getPageReleaseToc(): string | null {
+ const tocs: string[] = [];
+ let offset = 0;
+
+ for (const mediumEl of document.querySelectorAll("table.medium")) {
+ tocs.push("0");
+
+ for (const durationEl of mediumEl.querySelectorAll("td.treleases")) {
+ offset += parseDuration(durationEl.innerHTML) * 75;
+ tocs[tocs.length - 1] += `:${offset}`;
+ }
+ }
+
+ return tocs.length ? tocs[0] : null;
+}
diff --git a/src/musicbrainz/style.css b/src/musicbrainz/style.css
index 115ab82..97d4f82 100644
--- a/src/musicbrainz/style.css
+++ b/src/musicbrainz/style.css
@@ -1,13 +1,42 @@
/* Better fit buttons on cover edit page. */
+
span.fileinput-button.buttons {
display: inline-flex;
flex-direction: column;
gap: .5rem;
}
-/* Minimize sidebar layout shift on release page */
+/* Minimize sidebar layout shift on release page. */
+
.cover-art-image img {
width: 100%;
aspect-ratio: 1;
object-fit: contain;
}
+
+/* Style dropdown on add cover art page. */
+
+.buttons select {
+ float: left;
+ margin: 0 7px 0 0;
+ background-image: none;
+ background-color: #EEE;
+ border: 1px solid #CCC;
+ border-top: 1px solid #EEE;
+ border-left: 1px solid #EEE;
+ font-family: "Lucida Grande",Tahoma,Arial,Verdana,sans-serif;
+ font-size: 1rem;
+ line-height: 130%;
+ text-decoration: none;
+ font-weight: 700;
+ color: #666;
+ cursor: pointer;
+ padding: 5px 10px 6px 7px;
+}
+
+.buttons select:hover,
+.buttons select:focus {
+ background-color: #DFF4FF;
+ border: 1px solid #C2E1EF;
+ color: #369;
+}
diff --git a/src/musicbrainz/types.ts b/src/musicbrainz/types.ts
new file mode 100644
index 0000000..e42e23b
--- /dev/null
+++ b/src/musicbrainz/types.ts
@@ -0,0 +1,18 @@
+export interface Disc {
+ offsets: number[];
+ sectors: number;
+}
+
+export interface Track {
+ length: number;
+}
+
+export interface Media {
+ format: string;
+ discs: Disc[];
+ tracks: Track[];
+}
+
+export interface Release {
+ media: Media[];
+}