>>=w,p-=w),p<15&&(h+=k[n++]<>>=w=b>>>24,p-=w,!(16&(w=b>>>16&255))){if(!(64&w)){b=g[(65535&b)+(h&(1<>>=w,p-=w,(w=a-i)>3,h&=(1<<(p-=D<<3))-1,e.next_in=n,e.next_out=a,e.avail_in=n>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function p(){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 n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function m(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=l,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(c),t.distcode=t.distdyn=new n.Buf32(f),t.sane=1,t.back=-1,d):s}function g(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,m(e)):s}function v(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=i.wsize?(n.arraySet(i.window,t,r-i.wsize,i.wsize,0),i.wnext=0,i.whave=i.wsize):(u<(a=i.wsize-i.wnext)&&(a=u),n.arraySet(i.window,t,r-u,a,i.wnext),(u-=a)?(n.arraySet(i.window,t,r-u,u,0),i.wnext=u,i.whave=i.wsize):(i.wnext+=a,i.wnext===i.wsize&&(i.wnext=0),i.whave>>8&255,r.check=a(r.check,I,2,0),b=y=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&y)<<8)+(y>>8))%31){e.msg="incorrect header check",r.mode=30;break}if(8!=(15&y)){e.msg="unknown compression method",r.mode=30;break}if(b-=4,O=8+(15&(y>>>=4)),0===r.wbits)r.wbits=O;else if(O>r.wbits){e.msg="invalid window size",r.mode=30;break}r.dmax=1<>8&1),512&r.flags&&(I[0]=255&y,I[1]=y>>>8&255,r.check=a(r.check,I,2,0)),b=y=0,r.mode=3;case 3:for(;b<32;){if(0===g)break e;g--,y+=c[p++]<>>8&255,I[2]=y>>>16&255,I[3]=y>>>24&255,r.check=a(r.check,I,4,0)),b=y=0,r.mode=4;case 4:for(;b<16;){if(0===g)break e;g--,y+=c[p++]<>8),512&r.flags&&(I[0]=255&y,I[1]=y>>>8&255,r.check=a(r.check,I,2,0)),b=y=0,r.mode=5;case 5:if(1024&r.flags){for(;b<16;){if(0===g)break e;g--,y+=c[p++]<>>8&255,r.check=a(r.check,I,2,0)),b=y=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(g<(C=r.length)&&(C=g),C&&(r.head&&(O=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,c,p,C,O)),512&r.flags&&(r.check=a(r.check,c,C,p)),g-=C,p+=C,r.length-=C),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===g)break e;for(C=0;O=c[p+C++],r.head&&O&&r.length<65536&&(r.head.name+=String.fromCharCode(O)),O&&C>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;b<32;){if(0===g)break e;g--,y+=c[p++]<>>=7&b,b-=7&b,r.mode=27;break}for(;b<3;){if(0===g)break e;g--,y+=c[p++]<>>=1)){case 0:r.mode=14;break;case 1:if(x(r),r.mode=20,6!==t)break;y>>>=2,b-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}y>>>=2,b-=2;break;case 14:for(y>>>=7&b,b-=7&b;b<32;){if(0===g)break e;g--,y+=c[p++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&y,b=y=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(C=r.length){if(g>>=5,b-=5,r.ndist=1+(31&y),y>>>=5,b-=5,r.ncode=4+(15&y),y>>>=4,b-=4,286>>=3,b-=3}for(;r.have<19;)r.lens[R[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,z={bits:r.lenbits},L=o(0,r.lens,0,19,r.lencode,0,r.work,z),r.lenbits=z.bits,L){e.msg="invalid code lengths set",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have>>16&255,S=65535&N,!((E=N>>>24)<=b);){if(0===g)break e;g--,y+=c[p++]<>>=E,b-=E,r.lens[r.have++]=S;else{if(16===S){for(M=E+2;b>>=E,b-=E,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}O=r.lens[r.have-1],C=3+(3&y),y>>>=2,b-=2}else if(17===S){for(M=E+3;b>>=E)),y>>>=3,b-=3}else{for(M=E+7;b>>=E)),y>>>=7,b-=7}if(r.have+C>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=30;break}for(;C--;)r.lens[r.have++]=O}}if(30===r.mode)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=30;break}if(r.lenbits=9,z={bits:r.lenbits},L=o(1,r.lens,0,r.nlen,r.lencode,0,r.work,z),r.lenbits=z.bits,L){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,z={bits:r.distbits},L=o(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,z),r.distbits=z.bits,L){e.msg="invalid distances set",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=g&&258<=v){e.next_out=m,e.avail_out=v,e.next_in=p,e.avail_in=g,r.hold=y,r.bits=b,i(e,D),m=e.next_out,f=e.output,v=e.avail_out,p=e.next_in,c=e.input,g=e.avail_in,y=r.hold,b=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;F=(N=r.lencode[y&(1<>>16&255,S=65535&N,!((E=N>>>24)<=b);){if(0===g)break e;g--,y+=c[p++]<>T)])>>>16&255,S=65535&N,!(T+(E=N>>>24)<=b);){if(0===g)break e;g--,y+=c[p++]<>>=T,b-=T,r.back+=T}if(y>>>=E,b-=E,r.back+=E,r.length=S,0===F){r.mode=26;break}if(32&F){r.back=-1,r.mode=12;break}if(64&F){e.msg="invalid literal/length code",r.mode=30;break}r.extra=15&F,r.mode=22;case 22:if(r.extra){for(M=r.extra;b>>=r.extra,b-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;F=(N=r.distcode[y&(1<>>16&255,S=65535&N,!((E=N>>>24)<=b);){if(0===g)break e;g--,y+=c[p++]<>T)])>>>16&255,S=65535&N,!(T+(E=N>>>24)<=b);){if(0===g)break e;g--,y+=c[p++]<>>=T,b-=T,r.back+=T}if(y>>>=E,b-=E,r.back+=E,64&F){e.msg="invalid distance code",r.mode=30;break}r.offset=S,r.extra=15&F,r.mode=24;case 24:if(r.extra){for(M=r.extra;b>>=r.extra,b-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=30;break}r.mode=25;case 25:if(0===v)break e;if(C=D-v,r.offset>C){if((C=r.offset-C)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}k=C>r.wnext?(C-=r.wnext,r.wsize-C):r.wnext-C,C>r.length&&(C=r.length),A=r.window}else A=f,k=m-r.offset,C=r.length;for(vy?(w=N[I+c[C]],O[L+c[C]]):(w=96,0),h=1<<_-S,k=p=1<>S)+(p-=h)]=b<<24|w<<16|D,0!==p;);for(h=1<<_-1;P&h;)h>>=1;if(0!==h?(P&=h-1,P+=h):P=0,C++,0==--z[_]){if(_===A)break;_=t[r+c[C]]}if(E<_&&(P&g)!==m){for(0===S&&(S=E),v+=k,T=1<<(F=_-S);F+S>>7)]}function A(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function E(e,t,r){e.bi_valid>s-r?(e.bi_buf|=t<