var UDOC={};UDOC.G={concat:function(e,r){for(var s=0;so&&(o=l),va&&(a=v)}return[r,s,o,a]},rectToPath:function(e){return{cmds:["M","L","L","L","Z"],crds:[e[0],e[1],e[2],e[1],e[2],e[3],e[0],e[3]]}},insideBox:function(e,r){return r[0]<=e[0]&&r[1]<=e[1]&&e[2]<=r[2]&&e[3]<=r[3]},isBox:function(e,r){var s=function(y,w){for(var M=0;M<8;M+=2){for(var T=!0,B=0;B<8;B++)if(Math.abs(w[B]-y[B+M&7])>=2){T=!1;break}if(T)return!0}return!1};if(e.cmds.length>10)return!1;var o=e.cmds.join(""),a=e.crds,u=!1;if(o=="MLLLZ"&&a.length==8||o=="MLLLLZ"&&a.length==10){if(a.length==10&&(a=a.slice(0,8)),r==null){r=[a[0],a[1],a[0],a[1]];for(var l=0;la;)u-=2*Math.PI;else for(;u(o[1]-s[1])*(_[0]-s[0])},v=function(){var _=[s[0]-o[0],s[1]-o[1]],f=[a[0]-u[0],a[1]-u[1]],g=s[0]*o[1]-s[1]*o[0],y=a[0]*u[1]-a[1]*u[0],w=1/(_[0]*f[1]-_[1]*f[0]);return[(g*f[0]-y*_[0])*w,(g*f[1]-y*_[1])*w]},p=e;s=r[r.length-1];for(j in r){var o=r[j],c=p;p=[],a=c[c.length-1];for(i in c){var u=c[i];l(u)?(l(a)||p.push(v()),p.push(u)):l(a)&&p.push(v()),a=u}s=o}return p}},UDOC.M={getScale:function(e){return Math.sqrt(Math.abs(e[0]*e[3]-e[1]*e[2]))},translate:function(e,r,s){UDOC.M.concat(e,[1,0,0,1,r,s])},rotate:function(e,r){UDOC.M.concat(e,[Math.cos(r),-Math.sin(r),Math.sin(r),Math.cos(r),0,0])},scale:function(e,r,s){UDOC.M.concat(e,[r,0,0,s,0,0])},concat:function(e,r){var s=e[0],o=e[1],a=e[2],u=e[3],l=e[4],v=e[5];e[0]=s*r[0]+o*r[2],e[1]=s*r[1]+o*r[3],e[2]=a*r[0]+u*r[2],e[3]=a*r[1]+u*r[3],e[4]=l*r[0]+v*r[2]+r[4],e[5]=l*r[1]+v*r[3]+r[5]},invert:function(e){var r=e[0],s=e[1],o=e[2],a=e[3],u=e[4],l=e[5],v=r*a-s*o;e[0]=a/v,e[1]=-s/v,e[2]=-o/v,e[3]=r/v,e[4]=(o*l-a*u)/v,e[5]=(s*u-r*l)/v},multPoint:function(e,r){var s=r[0],o=r[1];return[s*e[0]+o*e[2]+e[4],s*e[1]+o*e[3]+e[5]]},multArray:function(e,r){for(var s=0;ss?c:(116*p-16)/r,y=v>s?v:(116*l-16)/r,w=f>s?f:(116*_-16)/r,M=w*96.72,T=y*100,B=g*81.427,H=[M/100,T/100,B/100],J=[3.1338561,-1.6168667,-.4906146,-.9787684,1.9161415,.033454,.0719453,-.2289914,1.4052427],Q=[J[0]*H[0]+J[1]*H[1]+J[2]*H[2],J[3]*H[0]+J[4]*H[1]+J[5]*H[2],J[6]*H[0]+J[7]*H[1]+J[8]*H[2]],q=0;q<3;q++)Q[q]=Math.max(0,Math.min(1,UDOC.C.srgbGamma(Q[q])));return Q}},UDOC.getState=function(e){return{font:UDOC.getFont(),dd:{flat:1},ca:1,colr:[0,0,0],space:"/DeviceGray",CA:1,COLR:[0,0,0],sspace:"/DeviceGray",bmode:"/Normal",SA:!1,OPM:0,AIS:!1,OP:!1,op:!1,SMask:"/None",lwidth:1,lcap:0,ljoin:0,mlimit:10,SM:.1,doff:0,dash:[],ctm:[1,0,0,1,0,0],cpos:[0,0],pth:{cmds:[],crds:[]},cpth:e?UDOC.G.rectToPath(e):null,cpstack:[]}},UDOC.getFont=function(){return{Tc:0,Tw:0,Th:100,Tl:0,Tf:"Helvetica-Bold",Tfs:1,Tmode:0,Trise:0,Tk:0,Tal:0,Tun:0,Tm:[1,0,0,1,0,0],Tlm:[1,0,0,1,0,0],Trm:[1,0,0,1,0,0]}};function FromPS(){}FromPS.Parse=function(e,r){e=new Uint8Array(e);for(var s=0;!(e[s]==37&&e[s+1]==33);)s++;for(var o=FromPS.B.readASCII(e,s,e.length-s),a=o.split(/[\n\r]+/),u=null,l=null,v=0;v>"){for(var Q=[];e.length!=0;){var q=e.pop();if(q.typ=="mark")break;Q.push(q)}if(Q.reverse(),w=="]")e.push({typ:"array",val:Q});else{for(var O={},K=0;K=ze.val.length))if(Fe.typ=="string")for(var K=0;K=0;K--)if(s[K].typ=="file"){we=s[K];break}e.push({typ:"file",val:we.val})}else if(R=="currentdict"){var $=r[r.length-1];e.push({typ:"dict",val:$,maxl:1e3})}else if(["currentpacking","currentoverprint","currentglobal","currentsystemparams","currentuserparams","currentpagedevice"].indexOf(R)!=-1){var re=a[R.slice(7)];e.push({typ:typeof re=="boolean"?"boolean":"dict",val:re})}else if(R=="gcheck"){var xe=e.pop();e.push({typ:"boolean",val:!1})}else if(["setpacking","setoverprint","setglobal","setsystemparams","setuserparams","setpagedevice"].indexOf(R)!=-1)a[R.slice(3)]=e.pop().val;else if(R=="currentflat")e.push({typ:"real",val:1});else if(R=="currentlinewidth")e.push({typ:"real",val:f.lwidth});else if(R=="currentdash")e.push({typ:"array",val:FromPS.makeArr(f.dash,"integer")},{typ:"real",val:f.doff});else if(R=="currentpoint"){var Ie=f.ctm.slice(0);UDOC.M.invert(Ie);var Re=UDOC.M.multPoint(Ie,f.cpos);e.push({typ:"real",val:Re[0]},{typ:"real",val:Re[1]})}else if(R=="currentscreen")e.push({typ:"int",val:60},{typ:"real",val:0},{typ:"real",val:0});else if(R=="setscreen")e.pop(),e.pop(),e.pop();else if(R=="currenthalftone")e.push({typ:"dict",val:{},maxl:1e3});else if(R=="currentblackgeneration"||R=="currentundercolorremoval")e.push(a.funs[R.slice(7)]);else if(R=="currentcolortransfer")for(var K=0;K<4;K++)e.push(a.funs.blackgeneration);else if(R=="findresource"){var Le=e.pop().val.slice(1),Oe=e.pop(),me=Oe.val.slice(1);Le=="Font"&&(a.res[Le].val[me]={typ:"dict",val:{FontType:{typ:"integer",val:1},FontMatrix:{typ:"array",val:FromPS.makeArr([1,0,0,1,0,0],"real")},FontName:Oe,FID:{typ:"fontID",val:Math.floor(Math.random()*16777215)},Encoding:{typ:"array",val:[]},FontBBox:{typ:"array",val:FromPS.makeArr([0,0,1,1],"real")},PaintType:{typ:"integer",val:0}}});var Ve;if(Le=="Category"&&me=="Generic"?Ve={typ:"dict",val:{},maxl:1e3}:Le=="ProcSet"&&me=="CIDInit"?Ve={typ:"dict",val:{},maxl:1e3}:Ve=a.res[Le].val[me],Ve==null)throw"e";e.push(Ve)}else if(R=="resourcestatus"){var Le=e.pop().val.slice(1),me=e.pop().val.slice(1),Ve=a.res[Le].val[me];Ve&&(e.push({typ:"integer",val:1}),e.push({typ:"integer",val:Object.keys(Ve.val).length})),e.push({typ:"boolean",val:Ve!=null})}else if(R=="defineresource"){var Le=e.pop().val.slice(1),Xe=e.pop(),me=e.pop().val.slice(1);a.res[Le].val[me]=Xe,e.push(Xe)}else if(R=="undefineresource"){var Le=e.pop().val.slice(1),me=e.pop().val.slice(1);delete a.res[Le].val[me]}else if(R=="resourceforall"){var Le=e.pop().val.slice(1),We=e.pop().val,t=e.pop(),h=e.pop().val;if(h.length!=1||h[0]!=42)throw"e";var d=a.res[Le].val;for(var me in d){for(var ne=We.slice(0),K=0;K0?Mt<>>-At),R=="mod"&&(De=Mt%At),R=="exp"&&(De=Math.pow(Mt,At)),R=="atan"&&(De=Math.atan2(Mt,At)*180/Math.PI),Lt=="real"&&(c[0]=De,De=c[0]),e.push({typ:Lt,val:De})}else if(["neg","abs","floor","ceiling","round","truncate","sqrt","ln","sin","cos"].indexOf(R)!=-1){var Ht=e.pop(),Mt=Ht.val,De=0,Lt="";if(R=="neg"||R=="abs"||R=="truncate"||R=="floor"||R=="ceiling"||R=="round"?Lt=Ht.typ:(R=="sqrt"||R=="sin"||R=="cos"||R=="ln")&&(Lt="real"),Ht.typ=="real"&&(c[0]=Mt,Mt=c[0]),R=="neg"&&(De=-Mt),R=="abs"&&(De=Math.abs(Mt)),R=="floor"&&(De=Math.floor(Mt)),R=="ceiling"&&(De=Math.ceil(Mt)),R=="round"&&(De=Math.round(Mt)),R=="truncate"&&(De=Math.trunc(Mt)),R=="sqrt"&&(De=Math.sqrt(Mt)),R=="ln"&&(De=Math.log(Mt)),R=="sin"&&(De=Math.sin(Mt*Math.PI/180)),R=="cos"&&(De=Math.cos(Mt*Math.PI/180)),R=="ln"&&Mt<=0)throw"e";Lt=="real"&&(c[0]=De,De=c[0]),e.push({typ:Lt,val:De})}else if(["eq","ge","gt","le","lt","ne"].indexOf(R)!=-1){var Xt=e.pop(),Ht=e.pop(),Pt=Ht.typ,ai=Xt.typ,Mt=Ht.val,At=Xt.val,De=!1;if(R=="eq"||R=="ne"){var Zr=Ht.typ==Xt.typ;if(Zr&&["integer","real","name","null","dict"].indexOf(Pt)!=-1)De=Mt==At;else if(Pt=="real"&&ai=="integer"||ai=="real"&&Pt=="integer")De=Mt==At;else if(!Zr&&(Ht.typ=="null"||Xt.typ=="null"))De=!1;else if(Zr&&Ht.typ=="string")if(Mt.length!=At.length)De=!1;else{De=!0;for(var K=0;K=At:R=="gt"?De=Mt>At:R=="le"?De=Mt<=At:R=="lt"&&(De=Mt0&&Tt.init<=Tt.limit||Tt.inc<0&&Tt.init>=Tt.limit)&&(s.push(g),FromPS.addProc(Tt.proc,s),e.push({typ:"integer",val:Tt.init}),Tt.init+=Tt.inc);else{var jt=new Float32Array(1);jt[0]=Tt.limit,Tt.limit=jt[0],jt[0]=Tt.inc,Tt.inc=jt[0],jt[0]=Tt.init,(Tt.inc>0&&jt[0]<=Tt.limit||Tt.inc<0&&jt[0]>=Tt.limit)&&(s.push(g),FromPS.addProc(Tt.proc,s),e.push({typ:"real",val:jt[0]}),jt[0]+=Tt.inc,Tt.init=jt[0])}}else if(R=="loop"){var t=e.pop();s.push({typ:"name",val:R+"---",ctx:{proc:t}})}else if(R=="loop---"){var Tt=g.ctx;s.push(g),FromPS.addProc(Tt.proc,s)}else if(R=="pathforall")var vi=e.pop(),wr=e.pop(),Er=e.pop(),bn=e.pop();else if(R=="forall"){var t=e.pop(),pe=e.pop(),Tt=[t,pe,0];s.push({typ:"name",val:R+"---",ctx:Tt})}else if(R=="forall---"){var Tt=g.ctx,t=Tt[0],pe=Tt[1],K=Tt[2];if(pe.typ=="dict"){var Xr=Object.keys(pe.val);if(KK;)s.pop()}else if(R!="bind"){if(R=="xcheck"){var pe=e.pop(),y=pe.typ;e.push({typ:"boolean",val:y=="procedure"})}else if(R=="status"){var ne=e.pop();e.push({typ:"boolean",val:!1})}else if(R=="cachestatus")for(var K=0;K<7;K++)e.push({typ:"integer",val:5e3});else if(R=="setcachelimit")e.pop();else if(R=="type"){var q=e.pop(),pi={name:"nametype",dict:"dicttype",boolean:"booleantype",procedure:"operatortype",string:"stringtype",null:"nulltype",integer:"integertype",array:"arraytype",operator:"operatortype",real:"realtype"};if(pi[q.typ]==null)throw console.log(q),q.typ;e.push({typ:"name",val:"/"+pi[q.typ]})}else if(R=="save")e.push({typ:"state",val:JSON.parse(JSON.stringify(f))});else if(R=="restore")f=a.gst=e.pop().val;else if(R=="clipsave")f.cpstack.push(JSON.parse(JSON.stringify(f.cpth)));else if(R=="cliprestore")f.cpath=f.cpstack.pop();else if(R=="gsave")o.push(JSON.parse(JSON.stringify(f)));else if(R=="grestore")o.length!=0?f=a.gst=o.pop():f=UDOC.getState();else if(R=="grestoreall")for(;o.length!=0;)f=a.gst=o.pop();else if(R=="usertime"||R=="realtime")e.push({typ:"integer",val:R=="usertime"?Date.now()-p:Date.now()});else if(!(R=="flush"||R=="readonly"||R=="executeonly")){if(R=="flushfile")FromPS.GetFile(e.pop());else if(R=="filter"){var Yr=e.pop().val,Jr;if(Yr=="/SubFileDecode"){var ne=e.pop();if(ne.typ!="string")throw"e";var Ne=e.pop().val;ne=ne.val,Jr=[Yr,ne,Ne]}else Jr=[Yr];var Ki=e.pop();e.push({typ:"file",val:{buff:new Uint8Array,off:0},_flt:Jr,_src:Ki})}else if(!(R=="begincmap"||R=="endcmap"))if(R=="begincodespacerange"||R=="beginbfrange"||R=="beginbfchar")a.cmnum=e.pop().val;else if(R=="endcodespacerange"||R=="endbfrange"||R=="endbfchar"){var vi=R=="endbfrange"?3:2,kr=R.slice(3),$=r[r.length-1],C=0;$[kr]==null&&($[kr]=[]);for(var K=0;K=0;A--){var qr=e.pop(),Ar=qr.val,re;if(qr.typ=="string")re=FromPS.strToInt(Ar),A==0&&(C=Ar.length);else{re=[];for(var vt=0;vt=e.buff.length)throw"e";var l=e.buff[u];if(u++,!FromPS.isWhite(l)){if(l==126){if(o!=0){o==3&&s.push(a>>>24&255),o==4&&s.push(a>>>24&255,a>>>16&255);var v=5-o<<3,p=a>>>v&255;a=a&(1<>>24&255),s.push(a>>>16&255),s.push(a>>>8&255),s.push(a>>>0&255),o=0,a=0)}}},RunLengthDecode:function(e){for(var r=[],s=e.off;;){if(s>=e.buff.length)throw console.log(r),"e";var o=e.buff[s];if(s++,o==128)return e.off=s,new Uint8Array(r);if(o<128){for(var a=0;a>>3]<<16|o[T+8>>>3]<<8|o[T+16>>>3],Q=J>>24-(T&7)-M&(1<>>3]<<16|o[T+8>>>3]<<8|o[T+16>>>3],Q=J>>24-(T&7)-M&(1<=y)_[y]=w,g[_[y]]=O[0],f[y]=1,w=w+1+3&~3,y++;else{_[y]=w;var pe=_[q],R=f[q];r(g,pe,g,w,R),g[w+R]=g[O],R++,f[y]=R,y++,w=w+R+3&~3}y+1==1<=y)_[y]=w,f[y]=0,y++;else{_[y]=w;var pe=_[q],R=f[q];r(g,pe,g,w,R),g[w+R]=g[w],R++,f[y]=R,y++,r(g,w,u,l,R),l+=R,w=w+R+3&~3}y+1==1<=0;){if(r[s][e]!=null)return r[s][e];s--}return null},FromPS.where=function(e,r){for(var s=r.length-1;s>=0;){if(r[s][e]!=null)return r[s];s--}return null},FromPS.skipWhite=function(e){for(var r=e.off,s=e.buff,o=FromPS.isWhite;o(s[r])||s[r]==37;){for(;o(s[r]);)r++;if(s[r]==37){for(;r1;)e.pop(),e.length!=0&&(a=FromPS.getFToken(e[e.length-1].val,r));return a},FromPS.getFToken=function(e,r){FromPS.skipWhite(e);var s=FromPS.isWhite,o=FromPS.isSpecl,a=e.off,u=e.buff,l=null;if(a>=u.length)return null;var v=u[a],p=String.fromCharCode(v);if(a++,p=="("){for(var c=0,_=a;!(u[_]==41&&c==0);)u[_]==40&&c++,u[_]==41&&c--,u[_]==92&&_++,_++;for(var f=[],g=0;g<_-a;g++)f.push(u[a+g]);a=_+1,f=FromPS.getString(f),l={typ:"string",val:f}}else if(p=="{"||p=="}"||p=="["||p=="]")l={typ:"name",val:p};else if(p=="<"&&u[a]==60||p==">"&&u[a]==62)l={typ:"name",val:p=="<"?"<<":">>"},a++;else if(p=="<"){var f;if(u[a]=="~".charCodeAt(0)){e.off=a+1;var y=FromPS.F.ASCII85Decode(e);f=[];for(var g=0;gu[5]){u=u.slice(3).concat(u.slice(0,3)),a.reverse(),p.reverse();for(var f=0;f0)&&v.push([0,s(o[0],[c],r)]);for(var p=0;p>1)&255;if(_==4)for(var f=a;f>1)&255;for(var f=a;f>1)&255}if(_==4){for(var f=0;f=0;_--)u.push(c[_]);continue}if(l++,!(l=v[1])break}}}},FromPDF.addCmd=function(e,r,s){for(var o=e.length,a=new Uint8Array(o),u=0;u>1)]>>(1-(s&1)<<2)&15:o==2?a=e[r+(s>>2)]>>(3-(s&3)<<1)&3:o==1&&(a=e[r+(s>>3)]>>(7-(s&7)<<0)&1),a},FromPDF.getString=function(e,r){var s=r["/Subtype"],o="",a=0,u=null,l=r["/ToUnicode"],v=r["/Encoding"],p=r;if(l!=null&&typeof l!="object"&&(l=null),s=="/Type0"&&(p=r["/DescendantFonts"][0]),l!=null)o=FromPDF.toUnicode(e,l);else if(v=="/WinAnsiEncoding")o=FromPDF.encFromMap(e,FromPDF._win1252);else if(v=="/MacRomanEncoding")o=FromPDF.encFromMap(e,FromPDF._macRoman);else if(s=="/Type0"){var c=0,_=p["/CIDSystemInfo"]["/Ordering"];_=="Identity"?c=0:_=="Japan1"||_=="GB1"||_=="CNS1"||_=="Korea1"?c=31:(console.log("unknown ordering",_),c=0);for(var f=0;f4;)s--,r++;return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]},FromPDF.getIndirect=function(e,r,s,o){var a=o[e];if(a.chr=="f")return null;if(a.val!=null)return a.val;if(a.opn)return{typ:"ref",ind:e,gen:r};a.opn=!0;var u=s.off,l;if(a.chr=="s"){for(var v=FromPDF.getIndirect(a.off,a.gen,s,o),p={buff:FromPS.GS(v),off:0},c=0,_=0;c!=e;)c=FromPS.getFToken(p).val,_=FromPS.getFToken(p).val;p.off=_+v["/First"],l=FromPDF.readObject(p,s,o)}else{s.off=a.off;var f=FromPS.getFToken(s);if(f.val!="<<")var g=FromPS.getFToken(s),y=FromPS.getFToken(s);else s.off-=2;l=FromPDF.readObject(s,s,o)}return a.val=l,s.off=u,a.opn=!1,l},FromPDF.readObject=function(e,r,s){var o=FromPS.getFToken(e);if(o.typ=="integer"){var a=e.off,u=FromPS.getFToken(e);if(u&&u.typ=="integer"&&(FromPS.skipWhite(e),e.buff[e.off]==82))return e.off++,s&&s[o.val]?FromPDF.getIndirect(o.val,u.val,r,s):{typ:"ref",ind:o.val,gen:u.val};e.off=a}if(o.val=="<<")return FromPDF.readDict(e,r,s);if(o.val=="[")return FromPDF.readArra(e,r,s);if(o.typ=="string"){for(var l="",v=0;v>")throw"e";return o.val},FromPDF.readDict=function(e,r,s){for(var o={};;){var a=e.off,u=FromPS.getFToken(e);if(u.typ=="name"&&u.val==">>")break;e.off=a;var l=FromPDF.readObject(e,r,s),v=FromPDF.readObject(e,r,s);o[l]=v}if(o["/Length"]!=null&&o["/CFM"]==null){var p=o["/Length"],c=FromPS.getFToken(e);e.buff[e.off]==32&&e.off++,e.buff[e.off]==13&&e.off++,e.buff[e.off]==10&&e.off++,e.off+p>e.buff.length&&console.log("too big /Length of a stream",p,e.buff.length-e.off,e.off),o.buff=e.buff.slice(e.off,e.off+p),e.off+=p,FromPS.getFToken(e)}return o},FromPDF.readArra=function(e,r,s){for(var o=[];;){var a=e.off,u=FromPS.getFToken(e);if(u.typ=="name"&&u.val=="]")return o;e.off=a;var l=FromPDF.readObject(e,r,s);o.push(l)}};function FromWMF(){}FromWMF.Parse=function(e,r){e=new Uint8Array(e);var s=0,o={fill:!1,strk:!1,bb:[0,0,1,1],lbb:[0,0,1,1],scl:1,fnt:{nam:"Arial",hgh:25,und:!1,orn:0,chrst:0},tclr:[0,0,0],talg:0},a=FromWMF.B.readShort,u=FromWMF.B.readUshort,l=FromWMF.B.readUint,v=l(e,0);if(v==2596720087){s=6;var p=a(e,s+8);o.scl=120/p;for(var c=0;c<4;c++)o.bb[c]=Math.round(a(e,s)*o.scl),s+=2;s+=2,s+=6}r.StartPage(o.bb[0],o.bb[1],o.bb[2],o.bb[3]);var _=UDOC.getState(o.bb),f=u(e,s);s+=2;var g=u(e,s);s+=2;var y=u(e,s);s+=2;var w=l(e,s);s+=4;var M=u(e,s);s+=2;var T=l(e,s);s+=4;var M=u(e,s);s+=2;for(var B=[],H=0;;){var J=l(e,s)<<1;s+=4;var Q=u(e,s);s+=2;var q=FromWMF.K[Q],O=s,K=null;if(q=="EOF")break;if(q=="ESCAPE"){var pe=u(e,s);O+=2;var R=FromWMF.K2[pe];console.log(q,R)}else if(!(q=="SETMAPMODE"||q=="SETPOLYFILLMODE"||q=="SETBKMODE"))if(q=="SELECTOBJECT"){var Te=u(e,O);O+=2;var re=B[Te];if(re.t=="br"){if(o.fill=re.stl!=1,re.stl!=0){if(re.stl!=1)throw re.stl+" e"}_.colr=re.clr}else if(re.t=="pn"){var oe=re.stl&7;if(o.strk=oe!=5,oe==0||oe==6)_.lwidth=re.px;else if(oe!=5)throw oe+" e";(re.stl&4096)!=0?_.ljoin=2:(re.stl&8192)!=0?_.ljoin=0:_.ljoin=1,_.COLR=re.clr}else if(re.t=="fn")o.fnt=re,_.font.Tf=re.nam,_.font.Tfs=Math.abs(re.hgh),_.font.Tun=re.und;else throw"e"}else if(q=="DELETEOBJECT"){var Te=u(e,O);O+=2,B[Te]=null}else if(q=="SETWINDOWORG"||q=="SETWINDOWEXT"){var me=q=="SETWINDOWORG"?0:2;o.lbb[me+1]=a(e,O),O+=2,o.lbb[me]=a(e,O),O+=2,FromWMF._updateCtm(o,_)}else if(q=="CREATEBRUSHINDIRECT")K={t:"br"},K.stl=u(e,O),O+=2,K.clr=[e[O]/255,e[O+1]/255,e[O+2]/255],O+=4,K.htc=u(e,O),O+=2;else if(q=="CREATEPENINDIRECT")K={t:"pn"},K.stl=u(e,O),O+=2,K.px=a(e,O),O+=2,K.py=a(e,O),O+=2,K.clr=[e[O]/255,e[O+1]/255,e[O+2]/255],O+=4;else if(q=="CREATEFONTINDIRECT"){K={t:"fn",nam:""},K.hgh=a(e,O),O+=2,O+=2*2,K.orn=a(e,O)/10,O+=2;var ue=a(e,O);for(O+=2,K.und=e[O+1],O+=2,K.stk=e[O],K.chrst=e[s+1],O+=2,O+=4;e[O]!=0;)K.nam+=String.fromCharCode(e[O]),O++;ue>500&&(K.nam+="-Bold")}else if(q=="CREATEPALETTE")K={t:"pl"};else if(q=="SETTEXTCOLOR")o.tclr=[e[O]/255,e[O+1]/255,e[O+2]/255];else if(q=="SETTEXTALIGN")o.talg=u(e,O);else if(q=="MOVETO")UDOC.G.moveTo(_,a(e,O+2),a(e,O));else if(q=="LINETO"){if(_.pth.cmds.length==0){var $=_.ctm.slice(0);UDOC.M.invert($);var ee=UDOC.M.multPoint($,_.cpos);UDOC.G.moveTo(_,ee[0],ee[1])}UDOC.G.lineTo(_,a(e,O+2),a(e,O));var ne=o.fill;o.fill=!1,FromWMF._draw(r,_,o),o.fill=ne}else if(q=="POLYPOLYGON"){var _e=u(e,O);O+=2;var ae=O;O+=_e*2;for(var c=0;c<_e;c++){var Me=u(e,ae+c*2);O=FromWMF._drawPoly(e,O,Me,_,!0)}FromWMF._draw(r,_,o)}else if(q=="POLYGON"||q=="POLYLINE"){var Me=u(e,O);O+=2,O=FromWMF._drawPoly(e,O,Me,_,q=="POLYGON");var ne=o.fill;o.fill=ne&&q=="POLYGON",FromWMF._draw(r,_,o),o.fill=ne}else if(q=="RECTANGLE"||q=="ELLIPSE"){var Ne=a(e,O);O+=2;var Ae=a(e,O);O+=2;var Fe=a(e,O);O+=2;var De=a(e,O);if(O+=2,q=="RECTANGLE")UDOC.G.moveTo(_,De,Fe),UDOC.G.lineTo(_,Ae,Fe),UDOC.G.lineTo(_,Ae,Ne),UDOC.G.lineTo(_,De,Ne);else{var ze=(De+Ae)/2,ye=(Fe+Ne)/2;UDOC.G.arc(_,ze,ye,(Ne-Fe)/2,0,2*Math.PI,!1)}UDOC.G.closePath(_);var ne=o.fill;o.fill=!0,FromWMF._draw(r,_,o),o.fill=ne}else if(q=="STRETCHDIB"){var he=l(e,O);O+=4;var ke=u(e,O);O+=2;var le=a(e,O);O+=2;var Ce=a(e,O);O+=2;var Be=a(e,O);O+=2;var we=a(e,O);O+=2;var xe=a(e,O);O+=2;var Ie=a(e,O);O+=2;var Re=a(e,O);O+=2;var Le=a(e,O);O+=2;var Oe=FromWMF._loadDIB(e,O),Ve=_.ctm.slice(0);_.ctm=[1,0,0,1,0,0],UDOC.M.scale(_.ctm,Ie,-xe),UDOC.M.translate(_.ctm,Le,Re+xe),UDOC.M.concat(_.ctm,Ve),r.PutImage(_,Oe,Ce,le),_.ctm=Ve}else if(q=="EXTTEXTOUT"){var Xe=a(e,O);O+=2;var We=a(e,O);O+=2,_.font.Tm=[1,0,0,-1,0,0],UDOC.M.rotate(_.font.Tm,o.fnt.orn*Math.PI/180),UDOC.M.translate(_.font.Tm,We,Xe);var t=o.talg;if((t&6)==6)_.font.Tal=2;else if((t&7)==0)_.font.Tal=0;else throw t+" e";if((t&24)!=24)if((t&24)==0)UDOC.M.translate(_.font.Tm,0,_.font.Tfs);else throw"e";var h=u(e,O);O+=2;var d=u(e,O);O+=2,d&4&&(O+=8);for(var x="",c=0;c127&&(c++,E=E<<8|e[O+c]),x+=String.fromCharCode(E)}var C=_.colr;_.colr=o.tclr,r.PutText(_,x,x.length*_.font.Tfs*.5),_.colr=C}else console.log(q,J);if(K!=null){for(var b=0;B[b]!=null;)b++;B[b]=K}s+=J-6}r.ShowPage(),r.Done()},FromWMF._loadDIB=function(e,r){var s=FromWMF.B.readShort,o=FromWMF.B.readUshort,a=FromWMF.B.readUint,u=a(e,r);r+=4;var l,v,p;if(u==12)throw"e";l=a(e,r),r+=4,v=a(e,r),r+=4;var c=o(e,r);if(r+=2,c!=1)throw"e";var _=o(e,r);if(r+=2,_!=1&&_!=24&&_!=32)throw _+" e";var f=a(e,r);if(r+=4,f!=0)throw"e";var g=a(e,r);r+=4;var y=a(e,r);r+=4;var w=a(e,r);r+=4,p=a(e,r),r+=4;var M=a(e,r);r+=4;var T=l*v,B=new Uint8Array(T*4),H=Math.floor((l*c*_+31&~31)/8);if(_==1)for(var J=0;J>>3)]>>>7-(q&7)&1;B[O]=e[r+K*4+2],B[O+1]=e[r+K*4+1],B[O+2]=e[r+K*4+0],B[O+3]=255}if(_==24)for(var J=0;J500&&(B.nam+="-Bold")}else if(w=="EXTTEXTOUTW"){T+=16;var R=_(e,T);T+=4;var Te=f(e,T);T+=4;var re=f(e,T);T+=4;var oe=c(e,T);T+=4;var me=c(e,T);T+=4,a.font.Tm=[1,0,0,-1,0,0],UDOC.M.rotate(a.font.Tm,o.fnt.orn*Math.PI/180),UDOC.M.translate(a.font.Tm,oe,me);var ue=o.talg;if((ue&6)==6)a.font.Tal=2;else if((ue&7)==0)a.font.Tal=0;else throw ue+" e";if((ue&24)!=24)if((ue&24)==0)UDOC.M.translate(a.font.Tm,0,a.font.Tfs);else throw"e";var $=_(e,T);T+=4;var ee=_(e,T);T+=4;var ne=_(e,T);T+=4,T+=16;var _e=_(e,T);T+=4,ee+=s-8;for(var ae="",Me=0;Me<$;Me++){var Ne=p(e,ee+Me*2);ae+=String.fromCharCode(Ne)}var Ae=a.colr;a.colr=o.tclr,r.PutText(a,ae,ae.length*a.font.Tfs*.5),a.colr=Ae}else if(w=="BEGINPATH")UDOC.G.newPath(a);else if(w!="ENDPATH")if(w=="CLOSEFIGURE")UDOC.G.closePath(a);else if(w=="MOVETOEX")UDOC.G.moveTo(a,c(e,T),c(e,T+4));else if(w=="LINETO"){if(a.pth.cmds.length==0){var Fe=a.ctm.slice(0);UDOC.M.invert(Fe);var De=UDOC.M.multPoint(Fe,a.cpos);UDOC.G.moveTo(a,De[0],De[1])}UDOC.G.lineTo(a,c(e,T),c(e,T+4))}else if(w=="POLYGON"||w=="POLYGON16"||w=="POLYLINE"||w=="POLYLINE16"||w=="POLYLINETO"||w=="POLYLINETO16"){T+=16;var ze=w.startsWith("POLYGON"),ye=w.indexOf("TO")!=-1,he=_(e,T);T+=4,ye||UDOC.G.newPath(a),T=FromEMF._drawPoly(e,T,he,a,w.endsWith("16")?2:4,ze,ye),ye||FromEMF._draw(r,a,o,ze)}else if(w=="POLYPOLYGON16"){T+=16;var ze=w.startsWith("POLYPOLYGON"),ye=w.indexOf("TO")!=-1,ke=_(e,T);T+=4,T+=4;var le=T;T+=ke*4,ye||UDOC.G.newPath(a);for(var Me=0;Me0;)UDOC.G.curveTo(a,we(e,T),we(e,T+xe),we(e,T+2*xe),we(e,T+3*xe),we(e,T+4*xe),we(e,T+5*xe)),T+=6*xe,he-=3}else if(w=="RECTANGLE"||w=="ELLIPSE"){UDOC.G.newPath(a);var Ie=FromEMF._readBox(e,T);if(w=="RECTANGLE")UDOC.G.moveTo(a,Ie[0],Ie[1]),UDOC.G.lineTo(a,Ie[2],Ie[1]),UDOC.G.lineTo(a,Ie[2],Ie[3]),UDOC.G.lineTo(a,Ie[0],Ie[3]);else{var Re=(Ie[0]+Ie[2])/2,Le=(Ie[1]+Ie[3])/2;UDOC.G.arc(a,Re,Le,(Ie[2]-Ie[0])/2,0,2*Math.PI,!1)}UDOC.G.closePath(a),FromEMF._draw(r,a,o,!0)}else if(w=="FILLPATH")r.Fill(a,!1);else if(w=="STROKEPATH")r.Stroke(a);else if(w=="STROKEANDFILLPATH")r.Fill(a,!1),r.Stroke(a);else if(w=="SETWORLDTRANSFORM"||w=="MODIFYWORLDTRANSFORM"){for(var Oe=[],Me=0;Me<6;Me++)Oe.push(f(e,T+Me*4));if(T+=24,w=="SETWORLDTRANSFORM")a.ctm=Oe;else{var R=_(e,T);if(T+=4,R==2){var Ve=a.ctm;a.ctm=Oe,UDOC.M.concat(a.ctm,Ve)}else throw"e"}}else if(w=="SETSTRETCHBLTMODE"){var Xe=_(e,T);T+=4}else if(w=="STRETCHDIBITS"){var Ie=FromEMF._readBox(e,T);T+=16;var We=c(e,T);T+=4;var t=c(e,T);T+=4;var h=c(e,T);T+=4;var d=c(e,T);T+=4;var x=c(e,T);T+=4;var E=c(e,T);T+=4;var C=_(e,T)+s-8;T+=4;var b=_(e,T);T+=4;var U=_(e,T)+s-8;T+=4;var D=_(e,T);T+=4;var k=_(e,T);if(T+=4,k!=0)throw"e";var Z=_(e,T);T+=4;var Y=c(e,T);T+=4;var W=c(e,T);T+=4;var F=_(e,C);C+=4;var z=_(e,C);C+=4;var G=_(e,C);if(C+=4,z!=x||G!=E)throw"e";var X=p(e,C);C+=2;var A=p(e,C);if(C+=2,A!=1&&A!=4&&A!=8&&A!=24&&A!=32)throw A+" e";var N=_(e,C);if(C+=4,N!=0)throw N+" e";var I=_(e,C);C+=4;var te=_(e,C);C+=4;var fe=_(e,C);C+=4;var S=_(e,C);C+=4;var de=_(e,C);C+=4;var se=Math.floor((z*X*A+31&~31)/8),ie=new Uint8Array(z*G*4);if(A==8)for(var Le=0;Le255){var c=l.indexOf(p);u.push(c==-1?32:l[c-1])}else u.push(p)}else for(var v=0;v>2);p[c]=e[l+0],p[c+1]=e[l+1],p[c+2]=e[l+2]}}var _=this._res["/XObject"];for(var f in _)if(ToPDF._eq(this._xr[_[f].ind].stream,p))return f;var f="/I"+(ToPDF.maxI(_)+1);_[f]={typ:"ref",ind:this._xr.length};var g={"/Type":"/XObject","/Subtype":"/Image","/BitsPerComponent":8,"/ColorSpace":e.length==r*s||v=="/DCTDecode"&&ToPDF.jpgProp(e)&&ToPDF.jpgProp(e).comps==1?"/DeviceGray":"/DeviceRGB","/Height":s,"/Width":r,stream:p};return v!=null&&(g["/Filter"]=ToPDF._format(e)),o&&(g["/SMask"]={typ:"ref",ind:this._xr.length-1},delete _[a]),this._xr.push(g),f},ToPDF.jpgProp=function(e){for(var r=0;r>"),u){o(e,a(s)+` stream `),e.file.req(e.off,u.length);for(var v=0;vthis.size;)this.size*=2;for(var o=new Uint8Array(this.size),a=0;a.05,y;g&&(y=e.ctm.slice(0),y[1]*=-1,y[2]*=-1,y[4]=_,y[5]=f,_=f=0,this._trsf(y));var w=8+16+12+4*6+16;this._addRec("EXTTEXTOUTW",w+o*2),a.off+=16,u(a.file,a.off,2),a.off+=4,p(a.file,a.off,31.25),a.off+=4,p(a.file,a.off,31.25),a.off+=4,l(a.file,a.off,Math.round(_)),a.off+=4,l(a.file,a.off,Math.round(f)),a.off+=4,u(a.file,a.off,r.length),a.off+=4,u(a.file,a.off,w),a.off+=4,u(a.file,a.off,0),a.off+=4,a.off+=16,u(a.file,a.off,0),a.off+=4;for(var M=0;M1;B&&(y*=T,f=="L"&&(w="POLYLINETO"),M=8+20+4*y),this._addRec(w,M),B&&(s.off+=16,o(s.file,s.off,T*g[1]),s.off+=4,_+=T-1);for(var H=0;Hthis.size;)this.size*=2;for(var o=new Uint8Array(this.size),a=0;a0?O.windowBits=-O.windowBits:O.gzip&&O.windowBits>0&&O.windowBits<16&&(O.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new f,this.strm.avail_out=0;var K=v.deflateInit2(this.strm,O.level,O.method,O.windowBits,O.memLevel,O.strategy);if(K!==M)throw new Error(_[K]);if(O.header&&v.deflateSetHeader(this.strm,O.header),O.dictionary){var pe;if(pe=typeof O.dictionary=="string"?c.string2buf(O.dictionary):g.call(O.dictionary)==="[object ArrayBuffer]"?new Uint8Array(O.dictionary):O.dictionary,K=v.deflateSetDictionary(this.strm,pe),K!==M)throw new Error(_[K]);this._dict_set=!0}}function a(q,O){var K=new o(O);if(K.push(q,!0),K.err)throw K.msg||_[K.err];return K.result}function u(q,O){return O=O||{},O.raw=!0,a(q,O)}function l(q,O){return O=O||{},O.gzip=!0,a(q,O)}var v=e("./zlib/deflate"),p=e("./utils/common"),c=e("./utils/strings"),_=e("./zlib/messages"),f=e("./zlib/zstream"),g=Object.prototype.toString,y=0,w=4,M=0,T=1,B=2,H=-1,J=0,Q=8;o.prototype.push=function(q,O){var K,pe,R=this.strm,Te=this.options.chunkSize;if(this.ended)return!1;pe=O===~~O?O:O===!0?w:y,typeof q=="string"?R.input=c.string2buf(q):g.call(q)==="[object ArrayBuffer]"?R.input=new Uint8Array(q):R.input=q,R.next_in=0,R.avail_in=R.input.length;do{if(R.avail_out===0&&(R.output=new p.Buf8(Te),R.next_out=0,R.avail_out=Te),K=v.deflate(R,pe),K!==T&&K!==M)return this.onEnd(K),this.ended=!0,!1;R.avail_out!==0&&(R.avail_in!==0||pe!==w&&pe!==B)||(this.options.to==="string"?this.onData(c.buf2binstring(p.shrinkBuf(R.output,R.next_out))):this.onData(p.shrinkBuf(R.output,R.next_out)))}while((R.avail_in>0||R.avail_out===0)&&K!==T);return pe===w?(K=v.deflateEnd(this.strm),this.onEnd(K),this.ended=!0,K===M):pe!==B||(this.onEnd(M),R.avail_out=0,!0)},o.prototype.onData=function(q){this.chunks.push(q)},o.prototype.onEnd=function(q){q===M&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=p.flattenChunks(this.chunks)),this.chunks=[],this.err=q,this.msg=this.strm.msg},s.Deflate=o,s.deflate=a,s.deflateRaw=u,s.gzip=l},{"./utils/common":3,"./utils/strings":4,"./zlib/deflate":8,"./zlib/messages":13,"./zlib/zstream":15}],2:[function(e,r,s){"use strict";function o(w){if(!(this instanceof o))return new o(w);this.options=v.assign({chunkSize:16384,windowBits:0,to:""},w||{});var M=this.options;M.raw&&M.windowBits>=0&&M.windowBits<16&&(M.windowBits=-M.windowBits,M.windowBits===0&&(M.windowBits=-15)),!(M.windowBits>=0&&M.windowBits<16)||w&&w.windowBits||(M.windowBits+=32),M.windowBits>15&&M.windowBits<48&&(15&M.windowBits)==0&&(M.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new f,this.strm.avail_out=0;var T=l.inflateInit2(this.strm,M.windowBits);if(T!==c.Z_OK)throw new Error(_[T]);this.header=new g,l.inflateGetHeader(this.strm,this.header)}function a(w,M){var T=new o(M);if(T.push(w,!0),T.err)throw T.msg||_[T.err];return T.result}function u(w,M){return M=M||{},M.raw=!0,a(w,M)}var l=e("./zlib/inflate"),v=e("./utils/common"),p=e("./utils/strings"),c=e("./zlib/constants"),_=e("./zlib/messages"),f=e("./zlib/zstream"),g=e("./zlib/gzheader"),y=Object.prototype.toString;o.prototype.push=function(w,M){var T,B,H,J,Q,q,O=this.strm,K=this.options.chunkSize,pe=this.options.dictionary,R=!1;if(this.ended)return!1;B=M===~~M?M:M===!0?c.Z_FINISH:c.Z_NO_FLUSH,typeof w=="string"?O.input=p.binstring2buf(w):y.call(w)==="[object ArrayBuffer]"?O.input=new Uint8Array(w):O.input=w,O.next_in=0,O.avail_in=O.input.length;do{if(O.avail_out===0&&(O.output=new v.Buf8(K),O.next_out=0,O.avail_out=K),T=l.inflate(O,c.Z_NO_FLUSH),T===c.Z_NEED_DICT&&pe&&(q=typeof pe=="string"?p.string2buf(pe):y.call(pe)==="[object ArrayBuffer]"?new Uint8Array(pe):pe,T=l.inflateSetDictionary(this.strm,q)),T===c.Z_BUF_ERROR&&R===!0&&(T=c.Z_OK,R=!1),T!==c.Z_STREAM_END&&T!==c.Z_OK)return this.onEnd(T),this.ended=!0,!1;O.next_out&&(O.avail_out!==0&&T!==c.Z_STREAM_END&&(O.avail_in!==0||B!==c.Z_FINISH&&B!==c.Z_SYNC_FLUSH)||(this.options.to==="string"?(H=p.utf8border(O.output,O.next_out),J=O.next_out-H,Q=p.buf2string(O.output,H),O.next_out=J,O.avail_out=K-J,J&&v.arraySet(O.output,O.output,H,J,0),this.onData(Q)):this.onData(v.shrinkBuf(O.output,O.next_out)))),O.avail_in===0&&O.avail_out===0&&(R=!0)}while((O.avail_in>0||O.avail_out===0)&&T!==c.Z_STREAM_END);return T===c.Z_STREAM_END&&(B=c.Z_FINISH),B===c.Z_FINISH?(T=l.inflateEnd(this.strm),this.onEnd(T),this.ended=!0,T===c.Z_OK):B!==c.Z_SYNC_FLUSH||(this.onEnd(c.Z_OK),O.avail_out=0,!0)},o.prototype.onData=function(w){this.chunks.push(w)},o.prototype.onEnd=function(w){w===c.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=v.flattenChunks(this.chunks)),this.chunks=[],this.err=w,this.msg=this.strm.msg},s.Inflate=o,s.inflate=a,s.inflateRaw=u,s.ungzip=a},{"./utils/common":3,"./utils/strings":4,"./zlib/constants":6,"./zlib/gzheader":9,"./zlib/inflate":11,"./zlib/messages":13,"./zlib/zstream":15}],3:[function(e,r,s){"use strict";var o=typeof Uint8Array!="undefined"&&typeof Uint16Array!="undefined"&&typeof Int32Array!="undefined";s.assign=function(l){for(var v=Array.prototype.slice.call(arguments,1);v.length;){var p=v.shift();if(p){if(typeof p!="object")throw new TypeError(p+"must be non-object");for(var c in p)p.hasOwnProperty(c)&&(l[c]=p[c])}}return l},s.shrinkBuf=function(l,v){return l.length===v?l:l.subarray?l.subarray(0,v):(l.length=v,l)};var a={arraySet:function(l,v,p,c,_){if(v.subarray&&l.subarray)return void l.set(v.subarray(p,p+c),_);for(var f=0;f=252?6:p>=248?5:p>=240?4:p>=224?3:p>=192?2:1;v[254]=v[254]=1,s.string2buf=function(c){var _,f,g,y,w,M=c.length,T=0;for(y=0;y>>6,_[w++]=128|63&f):f<65536?(_[w++]=224|f>>>12,_[w++]=128|f>>>6&63,_[w++]=128|63&f):(_[w++]=240|f>>>18,_[w++]=128|f>>>12&63,_[w++]=128|f>>>6&63,_[w++]=128|63&f);return _},s.buf2binstring=function(c){return o(c,c.length)},s.binstring2buf=function(c){for(var _=new a.Buf8(c.length),f=0,g=_.length;f4)T[g++]=65533,f+=w-1;else{for(y&=w===2?31:w===3?15:7;w>1&&f1?T[g++]=65533:y<65536?T[g++]=y:(y-=65536,T[g++]=55296|y>>10&1023,T[g++]=56320|1023&y)}return o(T,g)},s.utf8border=function(c,_){var f;for(_=_||c.length,_>c.length&&(_=c.length),f=_-1;f>=0&&(192&c[f])==128;)f--;return f<0||f===0?_:f+v[c[f]]>_?f:_}},{"./common":3}],5:[function(e,r,s){"use strict";function o(a,u,l,v){for(var p=65535&a|0,c=a>>>16&65535|0,_=0;l!==0;){_=l>2e3?2e3:l,l-=_;do p=p+u[v++]|0,c=c+p|0;while(--_);p%=65521,c%=65521}return p|c<<16|0}r.exports=o},{}],6:[function(e,r,s){"use strict";r.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],7:[function(e,r,s){"use strict";function o(){for(var l,v=[],p=0;p<256;p++){l=p;for(var c=0;c<8;c++)l=1&l?3988292384^l>>>1:l>>>1;v[p]=l}return v}function a(l,v,p,c){var _=u,f=c+p;l^=-1;for(var g=c;g>>8^_[255&(l^v[g])];return l^-1}var u=o();r.exports=a},{}],8:[function(e,r,s){"use strict";function o(S,de){return S.msg=_e[de],de}function a(S){return(S<<1)-(S>4?9:0)}function u(S){for(var de=S.length;--de>=0;)S[de]=0}function l(S){var de=S.state,se=de.pending;se>S.avail_out&&(se=S.avail_out),se!==0&&(ue.arraySet(S.output,de.pending_buf,de.pending_out,se,S.next_out),S.next_out+=se,de.pending_out+=se,S.total_out+=se,S.avail_out-=se,de.pending-=se,de.pending===0&&(de.pending_out=0))}function v(S,de){$._tr_flush_block(S,S.block_start>=0?S.block_start:-1,S.strstart-S.block_start,de),S.block_start=S.strstart,l(S.strm)}function p(S,de){S.pending_buf[S.pending++]=de}function c(S,de){S.pending_buf[S.pending++]=de>>>8&255,S.pending_buf[S.pending++]=255&de}function _(S,de,se,ie){var ge=S.avail_in;return ge>ie&&(ge=ie),ge===0?0:(S.avail_in-=ge,ue.arraySet(de,S.input,S.next_in,ge,se),S.state.wrap===1?S.adler=ee(S.adler,de,ge,se):S.state.wrap===2&&(S.adler=ne(S.adler,de,ge,se)),S.next_in+=ge,S.total_in+=ge,ge)}function f(S,de){var se,ie,ge=S.max_chain_length,Pe=S.strstart,Ye=S.prev_length,Ge=S.nice_match,Ze=S.strstart>S.w_size-D?S.strstart-(S.w_size-D):0,Je=S.window,tt=S.w_mask,nt=S.prev,at=S.strstart+U,ut=Je[Pe+Ye-1],st=Je[Pe+Ye];S.prev_length>=S.good_match&&(ge>>=2),Ge>S.lookahead&&(Ge=S.lookahead);do if(se=de,Je[se+Ye]===st&&Je[se+Ye-1]===ut&&Je[se]===Je[Pe]&&Je[++se]===Je[Pe+1]){Pe+=2,se++;do;while(Je[++Pe]===Je[++se]&&Je[++Pe]===Je[++se]&&Je[++Pe]===Je[++se]&&Je[++Pe]===Je[++se]&&Je[++Pe]===Je[++se]&&Je[++Pe]===Je[++se]&&Je[++Pe]===Je[++se]&&Je[++Pe]===Je[++se]&&PeYe){if(S.match_start=de,Ye=ie,ie>=Ge)break;ut=Je[Pe+Ye-1],st=Je[Pe+Ye]}}while((de=nt[de&tt])>Ze&&--ge!=0);return Ye<=S.lookahead?Ye:S.lookahead}function g(S){var de,se,ie,ge,Pe,Ye=S.w_size;do{if(ge=S.window_size-S.lookahead-S.strstart,S.strstart>=Ye+(Ye-D)){ue.arraySet(S.window,S.window,Ye,Ye,0),S.match_start-=Ye,S.strstart-=Ye,S.block_start-=Ye,se=S.hash_size,de=se;do ie=S.head[--de],S.head[de]=ie>=Ye?ie-Ye:0;while(--se);se=Ye,de=se;do ie=S.prev[--de],S.prev[de]=ie>=Ye?ie-Ye:0;while(--se);ge+=Ye}if(S.strm.avail_in===0)break;if(se=_(S.strm,S.window,S.strstart+S.lookahead,ge),S.lookahead+=se,S.lookahead+S.insert>=b)for(Pe=S.strstart-S.insert,S.ins_h=S.window[Pe],S.ins_h=(S.ins_h<S.pending_buf_size-5&&(se=S.pending_buf_size-5);;){if(S.lookahead<=1){if(g(S),S.lookahead===0&&de===ae)return A;if(S.lookahead===0)break}S.strstart+=S.lookahead,S.lookahead=0;var ie=S.block_start+se;if((S.strstart===0||S.strstart>=ie)&&(S.lookahead=S.strstart-ie,S.strstart=ie,v(S,!1),S.strm.avail_out===0)||S.strstart-S.block_start>=S.w_size-D&&(v(S,!1),S.strm.avail_out===0))return A}return S.insert=0,de===Ae?(v(S,!0),S.strm.avail_out===0?I:te):(S.strstart>S.block_start&&(v(S,!1),S.strm.avail_out===0),A)}function w(S,de){for(var se,ie;;){if(S.lookahead=b&&(S.ins_h=(S.ins_h<=b)if(ie=$._tr_tally(S,S.strstart-S.match_start,S.match_length-b),S.lookahead-=S.match_length,S.match_length<=S.max_lazy_match&&S.lookahead>=b){S.match_length--;do S.strstart++,S.ins_h=(S.ins_h<=b&&(S.ins_h=(S.ins_h<4096)&&(S.match_length=b-1)),S.prev_length>=b&&S.match_length<=S.prev_length){ge=S.strstart+S.lookahead-b,ie=$._tr_tally(S,S.strstart-1-S.prev_match,S.prev_length-b),S.lookahead-=S.prev_length-1,S.prev_length-=2;do++S.strstart<=ge&&(S.ins_h=(S.ins_h<=b&&S.strstart>0&&(ge=S.strstart-1,ie=Ye[ge],ie===Ye[++ge]&&ie===Ye[++ge]&&ie===Ye[++ge])){Pe=S.strstart+U;do;while(ie===Ye[++ge]&&ie===Ye[++ge]&&ie===Ye[++ge]&&ie===Ye[++ge]&&ie===Ye[++ge]&&ie===Ye[++ge]&&ie===Ye[++ge]&&ie===Ye[++ge]&&geS.lookahead&&(S.match_length=S.lookahead)}if(S.match_length>=b?(se=$._tr_tally(S,1,S.match_length-b),S.lookahead-=S.match_length,S.strstart+=S.match_length,S.match_length=0):(se=$._tr_tally(S,0,S.window[S.strstart]),S.lookahead--,S.strstart++),se&&(v(S,!1),S.strm.avail_out===0))return A}return S.insert=0,de===Ae?(v(S,!0),S.strm.avail_out===0?I:te):S.last_lit&&(v(S,!1),S.strm.avail_out===0)?A:N}function B(S,de){for(var se;;){if(S.lookahead===0&&(g(S),S.lookahead===0)){if(de===ae)return A;break}if(S.match_length=0,se=$._tr_tally(S,0,S.window[S.strstart]),S.lookahead--,S.strstart++,se&&(v(S,!1),S.strm.avail_out===0))return A}return S.insert=0,de===Ae?(v(S,!0),S.strm.avail_out===0?I:te):S.last_lit&&(v(S,!1),S.strm.avail_out===0)?A:N}function H(S,de,se,ie,ge){this.good_length=S,this.max_lazy=de,this.nice_length=se,this.max_chain=ie,this.func=ge}function J(S){S.window_size=2*S.w_size,u(S.head),S.max_lazy_match=me[S.level].max_lazy,S.good_match=me[S.level].good_length,S.nice_match=me[S.level].nice_length,S.max_chain_length=me[S.level].max_chain,S.strstart=0,S.block_start=0,S.lookahead=0,S.insert=0,S.match_length=S.prev_length=b-1,S.match_available=0,S.ins_h=0}function Q(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Le,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new ue.Buf16(2*E),this.dyn_dtree=new ue.Buf16(2*(2*d+1)),this.bl_tree=new ue.Buf16(2*(2*x+1)),u(this.dyn_ltree),u(this.dyn_dtree),u(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new ue.Buf16(C+1),this.heap=new ue.Buf16(2*h+1),u(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new ue.Buf16(2*h+1),u(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function q(S){var de;return S&&S.state?(S.total_in=S.total_out=0,S.data_type=Re,de=S.state,de.pending=0,de.pending_out=0,de.wrap<0&&(de.wrap=-de.wrap),de.status=de.wrap?Z:G,S.adler=de.wrap===2?0:1,de.last_flush=ae,$._tr_init(de),De):o(S,ye)}function O(S){var de=q(S);return de===De&&J(S.state),de}function K(S,de){return S&&S.state?S.state.wrap!==2?ye:(S.state.gzhead=de,De):ye}function pe(S,de,se,ie,ge,Pe){if(!S)return ye;var Ye=1;if(de===le&&(de=6),ie<0?(Ye=0,ie=-ie):ie>15&&(Ye=2,ie-=16),ge<1||ge>Oe||se!==Le||ie<8||ie>15||de<0||de>9||Pe<0||Pe>xe)return o(S,ye);ie===8&&(ie=9);var Ge=new Q;return S.state=Ge,Ge.strm=S,Ge.wrap=Ye,Ge.gzhead=null,Ge.w_bits=ie,Ge.w_size=1<Fe||de<0)return S?o(S,ye):ye;if(ie=S.state,!S.output||!S.input&&S.avail_in!==0||ie.status===X&&de!==Ae)return o(S,S.avail_out===0?ke:ye);if(ie.strm=S,se=ie.last_flush,ie.last_flush=de,ie.status===Z)if(ie.wrap===2)S.adler=0,p(ie,31),p(ie,139),p(ie,8),ie.gzhead?(p(ie,(ie.gzhead.text?1:0)+(ie.gzhead.hcrc?2:0)+(ie.gzhead.extra?4:0)+(ie.gzhead.name?8:0)+(ie.gzhead.comment?16:0)),p(ie,255&ie.gzhead.time),p(ie,ie.gzhead.time>>8&255),p(ie,ie.gzhead.time>>16&255),p(ie,ie.gzhead.time>>24&255),p(ie,ie.level===9?2:ie.strategy>=Be||ie.level<2?4:0),p(ie,255&ie.gzhead.os),ie.gzhead.extra&&ie.gzhead.extra.length&&(p(ie,255&ie.gzhead.extra.length),p(ie,ie.gzhead.extra.length>>8&255)),ie.gzhead.hcrc&&(S.adler=ne(S.adler,ie.pending_buf,ie.pending,0)),ie.gzindex=0,ie.status=Y):(p(ie,0),p(ie,0),p(ie,0),p(ie,0),p(ie,0),p(ie,ie.level===9?2:ie.strategy>=Be||ie.level<2?4:0),p(ie,fe),ie.status=G);else{var Ye=Le+(ie.w_bits-8<<4)<<8,Ge=-1;Ge=ie.strategy>=Be||ie.level<2?0:ie.level<6?1:ie.level===6?2:3,Ye|=Ge<<6,ie.strstart!==0&&(Ye|=k),Ye+=31-Ye%31,ie.status=G,c(ie,Ye),ie.strstart!==0&&(c(ie,S.adler>>>16),c(ie,65535&S.adler)),S.adler=1}if(ie.status===Y)if(ie.gzhead.extra){for(ge=ie.pending;ie.gzindex<(65535&ie.gzhead.extra.length)&&(ie.pending!==ie.pending_buf_size||(ie.gzhead.hcrc&&ie.pending>ge&&(S.adler=ne(S.adler,ie.pending_buf,ie.pending-ge,ge)),l(S),ge=ie.pending,ie.pending!==ie.pending_buf_size));)p(ie,255&ie.gzhead.extra[ie.gzindex]),ie.gzindex++;ie.gzhead.hcrc&&ie.pending>ge&&(S.adler=ne(S.adler,ie.pending_buf,ie.pending-ge,ge)),ie.gzindex===ie.gzhead.extra.length&&(ie.gzindex=0,ie.status=W)}else ie.status=W;if(ie.status===W)if(ie.gzhead.name){ge=ie.pending;do{if(ie.pending===ie.pending_buf_size&&(ie.gzhead.hcrc&&ie.pending>ge&&(S.adler=ne(S.adler,ie.pending_buf,ie.pending-ge,ge)),l(S),ge=ie.pending,ie.pending===ie.pending_buf_size)){Pe=1;break}Pe=ie.gzindexge&&(S.adler=ne(S.adler,ie.pending_buf,ie.pending-ge,ge)),Pe===0&&(ie.gzindex=0,ie.status=F)}else ie.status=F;if(ie.status===F)if(ie.gzhead.comment){ge=ie.pending;do{if(ie.pending===ie.pending_buf_size&&(ie.gzhead.hcrc&&ie.pending>ge&&(S.adler=ne(S.adler,ie.pending_buf,ie.pending-ge,ge)),l(S),ge=ie.pending,ie.pending===ie.pending_buf_size)){Pe=1;break}Pe=ie.gzindexge&&(S.adler=ne(S.adler,ie.pending_buf,ie.pending-ge,ge)),Pe===0&&(ie.status=z)}else ie.status=z;if(ie.status===z&&(ie.gzhead.hcrc?(ie.pending+2>ie.pending_buf_size&&l(S),ie.pending+2<=ie.pending_buf_size&&(p(ie,255&S.adler),p(ie,S.adler>>8&255),S.adler=0,ie.status=G)):ie.status=G),ie.pending!==0){if(l(S),S.avail_out===0)return ie.last_flush=-1,De}else if(S.avail_in===0&&a(de)<=a(se)&&de!==Ae)return o(S,ke);if(ie.status===X&&S.avail_in!==0)return o(S,ke);if(S.avail_in!==0||ie.lookahead!==0||de!==ae&&ie.status!==X){var Ze=ie.strategy===Be?B(ie,de):ie.strategy===we?T(ie,de):me[ie.level].func(ie,de);if(Ze!==I&&Ze!==te||(ie.status=X),Ze===A||Ze===I)return S.avail_out===0&&(ie.last_flush=-1),De;if(Ze===N&&(de===Me?$._tr_align(ie):de!==Fe&&($._tr_stored_block(ie,0,0,!1),de===Ne&&(u(ie.head),ie.lookahead===0&&(ie.strstart=0,ie.block_start=0,ie.insert=0))),l(S),S.avail_out===0))return ie.last_flush=-1,De}return de!==Ae?De:ie.wrap<=0?ze:(ie.wrap===2?(p(ie,255&S.adler),p(ie,S.adler>>8&255),p(ie,S.adler>>16&255),p(ie,S.adler>>24&255),p(ie,255&S.total_in),p(ie,S.total_in>>8&255),p(ie,S.total_in>>16&255),p(ie,S.total_in>>24&255)):(c(ie,S.adler>>>16),c(ie,65535&S.adler)),l(S),ie.wrap>0&&(ie.wrap=-ie.wrap),ie.pending!==0?De:ze)}function re(S){var de;return S&&S.state?(de=S.state.status,de!==Z&&de!==Y&&de!==W&&de!==F&&de!==z&&de!==G&&de!==X?o(S,ye):(S.state=null,de===G?o(S,he):De)):ye}function oe(S,de){var se,ie,ge,Pe,Ye,Ge,Ze,Je,tt=de.length;if(!S||!S.state||(se=S.state,Pe=se.wrap,Pe===2||Pe===1&&se.status!==Z||se.lookahead))return ye;for(Pe===1&&(S.adler=ee(S.adler,de,tt,0)),se.wrap=0,tt>=se.w_size&&(Pe===0&&(u(se.head),se.strstart=0,se.block_start=0,se.insert=0),Je=new ue.Buf8(se.w_size),ue.arraySet(Je,de,tt-se.w_size,se.w_size,0),de=Je,tt=se.w_size),Ye=S.avail_in,Ge=S.next_in,Ze=S.input,S.avail_in=tt,S.next_in=0,S.input=de,g(se);se.lookahead>=b;){ie=se.strstart,ge=se.lookahead-(b-1);do se.ins_h=(se.ins_h<>>24,H>>>=R,J-=R,R=pe>>>16&255,R===0)$[_++]=65535&pe;else{if(!(16&R)){if((64&R)==0){pe=Q[(65535&pe)+(H&(1<>>=R,J-=R),J<15&&(H+=ue[p++]<>>24,H>>>=R,J-=R,R=pe>>>16&255,!(16&R)){if((64&R)==0){pe=q[(65535&pe)+(H&(1<y){u.msg="invalid distance too far back",v.mode=o;break e}if(H>>>=R,J-=R,R=_-f,re>R){if(R=re-R,R>M&&v.sane){u.msg="invalid distance too far back",v.mode=o;break e}if(oe=0,me=B,T===0){if(oe+=w-R,R2;)$[_++]=me[oe++],$[_++]=me[oe++],$[_++]=me[oe++],Te-=3;Te&&($[_++]=me[oe++],Te>1&&($[_++]=me[oe++]))}else{oe=_-re;do $[_++]=$[oe++],$[_++]=$[oe++],$[_++]=$[oe++],Te-=3;while(Te>2);Te&&($[_++]=$[oe++],Te>1&&($[_++]=$[oe++]))}break}}break}}while(p>3,p-=Te,J-=Te<<3,H&=(1<>>24&255)+(A>>>8&65280)+((65280&A)<<8)+((255&A)<<24)}function a(){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 H.Buf16(320),this.work=new H.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function u(A){var N;return A&&A.state?(N=A.state,A.total_in=A.total_out=N.total=0,A.msg="",N.wrap&&(A.adler=1&N.wrap),N.mode=Ne,N.last=0,N.havedict=0,N.dmax=32768,N.head=null,N.hold=0,N.bits=0,N.lencode=N.lendyn=new H.Buf32(W),N.distcode=N.distdyn=new H.Buf32(F),N.sane=1,N.back=-1,me):ee}function l(A){var N;return A&&A.state?(N=A.state,N.wsize=0,N.whave=0,N.wnext=0,u(A)):ee}function v(A,N){var I,te;return A&&A.state?(te=A.state,N<0?(I=0,N=-N):(I=(N>>4)+1,N<48&&(N&=15)),N&&(N<8||N>15)?ee:(te.window!==null&&te.wbits!==N&&(te.window=null),te.wrap=I,te.wbits=N,l(A))):ee}function p(A,N){var I,te;return A?(te=new a,A.state=te,te.window=null,I=v(A,N),I!==me&&(A.state=null),I):ee}function c(A){return p(A,G)}function _(A){if(X){var N;for(T=new H.Buf32(512),B=new H.Buf32(32),N=0;N<144;)A.lens[N++]=8;for(;N<256;)A.lens[N++]=9;for(;N<280;)A.lens[N++]=7;for(;N<288;)A.lens[N++]=8;for(O(pe,A.lens,0,288,T,0,A.work,{bits:9}),N=0;N<32;)A.lens[N++]=5;O(R,A.lens,0,32,B,0,A.work,{bits:5}),X=!1}A.lencode=T,A.lenbits=9,A.distcode=B,A.distbits=5}function f(A,N,I,te){var fe,S=A.state;return S.window===null&&(S.wsize=1<=S.wsize?(H.arraySet(S.window,N,I-S.wsize,S.wsize,0),S.wnext=0,S.whave=S.wsize):(fe=S.wsize-S.wnext,fe>te&&(fe=te),H.arraySet(S.window,N,I-te,fe,S.wnext),te-=fe,te?(H.arraySet(S.window,N,I-te,te,0),S.wnext=te,S.whave=S.wsize):(S.wnext+=fe,S.wnext===S.wsize&&(S.wnext=0),S.whave>>8&255,I.check=Q(I.check,lt,2,0),ge=0,Pe=0,I.mode=Ae;break}if(I.flags=0,I.head&&(I.head.done=!1),!(1&I.wrap)||(((255&ge)<<8)+(ge>>8))%31){A.msg="incorrect header check",I.mode=k;break}if((15&ge)!==Me){A.msg="unknown compression method",I.mode=k;break}if(ge>>>=4,Pe-=4,ct=(15&ge)+8,I.wbits===0)I.wbits=ct;else if(ct>I.wbits){A.msg="invalid window size",I.mode=k;break}I.dmax=1<>8&1),512&I.flags&&(lt[0]=255&ge,lt[1]=ge>>>8&255,I.check=Q(I.check,lt,2,0)),ge=0,Pe=0,I.mode=Fe;case Fe:for(;Pe<32;){if(se===0)break e;se--,ge+=te[S++]<>>8&255,lt[2]=ge>>>16&255,lt[3]=ge>>>24&255,I.check=Q(I.check,lt,4,0)),ge=0,Pe=0,I.mode=De;case De:for(;Pe<16;){if(se===0)break e;se--,ge+=te[S++]<>8),512&I.flags&&(lt[0]=255&ge,lt[1]=ge>>>8&255,I.check=Q(I.check,lt,2,0)),ge=0,Pe=0,I.mode=ze;case ze:if(1024&I.flags){for(;Pe<16;){if(se===0)break e;se--,ge+=te[S++]<>>8&255,I.check=Q(I.check,lt,2,0)),ge=0,Pe=0}else I.head&&(I.head.extra=null);I.mode=ye;case ye:if(1024&I.flags&&(Ze=I.length,Ze>se&&(Ze=se),Ze&&(I.head&&(ct=I.head.extra_len-I.length,I.head.extra||(I.head.extra=new Array(I.head.extra_len)),H.arraySet(I.head.extra,te,S,Ze,ct)),512&I.flags&&(I.check=Q(I.check,te,Ze,S)),se-=Ze,S+=Ze,I.length-=Ze),I.length))break e;I.length=0,I.mode=he;case he:if(2048&I.flags){if(se===0)break e;Ze=0;do ct=te[S+Ze++],I.head&&ct&&I.length<65536&&(I.head.name+=String.fromCharCode(ct));while(ct&&Ze>9&1,I.head.done=!0),A.adler=I.check=0,I.mode=we;break;case Ce:for(;Pe<32;){if(se===0)break e;se--,ge+=te[S++]<>>=7&Pe,Pe-=7&Pe,I.mode=b;break}for(;Pe<3;){if(se===0)break e;se--,ge+=te[S++]<>>=1,Pe-=1,3&ge){case 0:I.mode=Ie;break;case 1:if(_(I),I.mode=We,N===oe){ge>>>=2,Pe-=2;break e}break;case 2:I.mode=Oe;break;case 3:A.msg="invalid block type",I.mode=k}ge>>>=2,Pe-=2;break;case Ie:for(ge>>>=7&Pe,Pe-=7&Pe;Pe<32;){if(se===0)break e;se--,ge+=te[S++]<>>16^65535)){A.msg="invalid stored block lengths",I.mode=k;break}if(I.length=65535&ge,ge=0,Pe=0,I.mode=Re,N===oe)break e;case Re:I.mode=Le;case Le:if(Ze=I.length){if(Ze>se&&(Ze=se),Ze>ie&&(Ze=ie),Ze===0)break e;H.arraySet(fe,te,S,Ze,de),se-=Ze,S+=Ze,ie-=Ze,de+=Ze,I.length-=Ze;break}I.mode=we;break;case Oe:for(;Pe<14;){if(se===0)break e;se--,ge+=te[S++]<>>=5,Pe-=5,I.ndist=(31&ge)+1,ge>>>=5,Pe-=5,I.ncode=(15&ge)+4,ge>>>=4,Pe-=4,I.nlen>286||I.ndist>30){A.msg="too many length or distance symbols",I.mode=k;break}I.have=0,I.mode=Ve;case Ve:for(;I.have>>=3,Pe-=3}for(;I.have<19;)I.lens[St[I.have++]]=0;if(I.lencode=I.lendyn,I.lenbits=7,Et={bits:I.lenbits},_t=O(K,I.lens,0,19,I.lencode,0,I.work,Et),I.lenbits=Et.bits,_t){A.msg="invalid code lengths set",I.mode=k;break}I.have=0,I.mode=Xe;case Xe:for(;I.have>>24,at=vt>>>16&255,ut=65535&vt,!(nt<=Pe);){if(se===0)break e;se--,ge+=te[S++]<>>=nt,Pe-=nt,I.lens[I.have++]=ut;else{if(ut===16){for(mt=nt+2;Pe>>=nt,Pe-=nt,I.have===0){A.msg="invalid bit length repeat",I.mode=k;break}ct=I.lens[I.have-1],Ze=3+(3&ge),ge>>>=2,Pe-=2}else if(ut===17){for(mt=nt+3;Pe>>=nt,Pe-=nt,ct=0,Ze=3+(7&ge),ge>>>=3,Pe-=3}else{for(mt=nt+7;Pe>>=nt,Pe-=nt,ct=0,Ze=11+(127&ge),ge>>>=7,Pe-=7}if(I.have+Ze>I.nlen+I.ndist){A.msg="invalid bit length repeat",I.mode=k;break}for(;Ze--;)I.lens[I.have++]=ct}}if(I.mode===k)break;if(I.lens[256]===0){A.msg="invalid code -- missing end-of-block",I.mode=k;break}if(I.lenbits=9,Et={bits:I.lenbits},_t=O(pe,I.lens,0,I.nlen,I.lencode,0,I.work,Et),I.lenbits=Et.bits,_t){A.msg="invalid literal/lengths set",I.mode=k;break}if(I.distbits=6,I.distcode=I.distdyn,Et={bits:I.distbits},_t=O(R,I.lens,I.nlen,I.ndist,I.distcode,0,I.work,Et),I.distbits=Et.bits,_t){A.msg="invalid distances set",I.mode=k;break}if(I.mode=We,N===oe)break e;case We:I.mode=t;case t:if(se>=6&&ie>=258){A.next_out=de,A.avail_out=ie,A.next_in=S,A.avail_in=se,I.hold=ge,I.bits=Pe,q(A,Ge),de=A.next_out,fe=A.output,ie=A.avail_out,S=A.next_in,te=A.input,se=A.avail_in,ge=I.hold,Pe=I.bits,I.mode===we&&(I.back=-1);break}for(I.back=0;vt=I.lencode[ge&(1<>>24,at=vt>>>16&255,ut=65535&vt,!(nt<=Pe);){if(se===0)break e;se--,ge+=te[S++]<>st)],nt=vt>>>24,at=vt>>>16&255,ut=65535&vt,!(st+nt<=Pe);){if(se===0)break e;se--,ge+=te[S++]<>>=st,Pe-=st,I.back+=st}if(ge>>>=nt,Pe-=nt,I.back+=nt,I.length=ut,at===0){I.mode=C;break}if(32&at){I.back=-1,I.mode=we;break}if(64&at){A.msg="invalid literal/length code",I.mode=k;break}I.extra=15&at,I.mode=h;case h:if(I.extra){for(mt=I.extra;Pe>>=I.extra,Pe-=I.extra,I.back+=I.extra}I.was=I.length,I.mode=d;case d:for(;vt=I.distcode[ge&(1<>>24,at=vt>>>16&255,ut=65535&vt,!(nt<=Pe);){if(se===0)break e;se--,ge+=te[S++]<>st)],nt=vt>>>24,at=vt>>>16&255,ut=65535&vt,!(st+nt<=Pe);){if(se===0)break e;se--,ge+=te[S++]<>>=st,Pe-=st,I.back+=st}if(ge>>>=nt,Pe-=nt,I.back+=nt,64&at){A.msg="invalid distance code",I.mode=k;break}I.offset=ut,I.extra=15&at,I.mode=x;case x:if(I.extra){for(mt=I.extra;Pe>>=I.extra,Pe-=I.extra,I.back+=I.extra}if(I.offset>I.dmax){A.msg="invalid distance too far back",I.mode=k;break}I.mode=E;case E:if(ie===0)break e;if(Ze=Ge-ie,I.offset>Ze){if(Ze=I.offset-Ze,Ze>I.whave&&I.sane){A.msg="invalid distance too far back",I.mode=k;break}Ze>I.wnext?(Ze-=I.wnext,Je=I.wsize-Ze):Je=I.wnext-Ze,Ze>I.length&&(Ze=I.length),tt=I.window}else tt=fe,Je=de-I.offset,Ze=I.length;Ze>ie&&(Ze=ie),ie-=Ze,I.length-=Ze;do fe[de++]=tt[Je++];while(--Ze);I.length===0&&(I.mode=t);break;case C:if(ie===0)break e;fe[de++]=I.length,ie--,I.mode=t;break;case b:if(I.wrap){for(;Pe<32;){if(se===0)break e;se--,ge|=te[S++]<=1&&ke[ae]===0;ae--);if(Me>ae&&(Me=ae),ae===0)return H[J++]=20971520,H[J++]=20971520,q.bits=1,0;for(_e=1;_e0&&(w===v||ae!==1))return-1;for(le[1]=0,ee=1;eeu||w===c&&De>l)return 1;for(;;){oe=ee-Ae,Q[ne]re?(me=Ce[Be+Q[ne]],ue=ye[he+Q[ne]]):(me=96,ue=0),O=1<>Ae)+K]=oe<<24|me<<16|ue|0;while(K!==0);for(O=1<>=1;if(O!==0?(ze&=O-1,ze+=O):ze=0,ne++,--ke[ee]==0){if(ee===ae)break;ee=M[T+Q[ne]]}if(ee>Me&&(ze&R)!==pe){for(Ae===0&&(Ae=Me),Te+=_e,Ne=ee-Ae,Fe=1<u||w===c&&De>l)return 1;pe=ze&R,H[pe]=Me<<24|Ne<<16|Te-J|0}}return ze!==0&&(H[Te+ze]=ee-Ae<<24|64<<16|0),q.bits=Me,0}},{"../utils/common":3}],13:[function(e,r,s){"use strict";r.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],14:[function(e,r,s){"use strict";function o(F){for(var z=F.length;--z>=0;)F[z]=0}function a(F,z,G,X,A){this.static_tree=F,this.extra_bits=z,this.extra_base=G,this.elems=X,this.max_length=A,this.has_stree=F&&F.length}function u(F,z){this.dyn_tree=F,this.max_code=0,this.stat_desc=z}function l(F){return F<256?C[F]:C[256+(F>>>7)]}function v(F,z){F.pending_buf[F.pending++]=255&z,F.pending_buf[F.pending++]=z>>>8&255}function p(F,z,G){F.bi_valid>xe-G?(F.bi_buf|=z<>xe-F.bi_valid,F.bi_valid+=G-xe):(F.bi_buf|=z<>>=1,G<<=1;while(--z>0);return G>>>1}function f(F){F.bi_valid===16?(v(F,F.bi_buf),F.bi_buf=0,F.bi_valid=0):F.bi_valid>=8&&(F.pending_buf[F.pending++]=255&F.bi_buf,F.bi_buf>>=8,F.bi_valid-=8)}function g(F,z){var G,X,A,N,I,te,fe=z.dyn_tree,S=z.max_code,de=z.stat_desc.static_tree,se=z.stat_desc.has_stree,ie=z.stat_desc.extra_bits,ge=z.stat_desc.extra_base,Pe=z.stat_desc.max_length,Ye=0;for(N=0;N<=we;N++)F.bl_count[N]=0;for(fe[2*F.heap[F.heap_max]+1]=0,G=F.heap_max+1;GPe&&(N=Pe,Ye++),fe[2*X+1]=N,X>S||(F.bl_count[N]++,I=0,X>=ge&&(I=ie[X-ge]),te=fe[2*X],F.opt_len+=te*(N+I),se&&(F.static_len+=te*(de[2*X+1]+I)));if(Ye!==0){do{for(N=Pe-1;F.bl_count[N]===0;)N--;F.bl_count[N]--,F.bl_count[N+1]+=2,F.bl_count[Pe]--,Ye-=2}while(Ye>0);for(N=Pe;N!==0;N--)for(X=F.bl_count[N];X!==0;)A=F.heap[--G],A>S||(fe[2*A+1]!==N&&(F.opt_len+=(N-fe[2*A+1])*fe[2*A],fe[2*A+1]=N),X--)}}function y(F,z,G){var X,A,N=new Array(we+1),I=0;for(X=1;X<=we;X++)N[X]=I=I+G[X-1]<<1;for(A=0;A<=z;A++){var te=F[2*A+1];te!==0&&(F[2*A]=_(N[te]++,te))}}function w(){var F,z,G,X,A,N=new Array(we+1);for(G=0,X=0;X>=7;X8?v(F,F.bi_buf):F.bi_valid>0&&(F.pending_buf[F.pending++]=F.bi_buf),F.bi_buf=0,F.bi_valid=0}function B(F,z,G,X){T(F),X&&(v(F,G),v(F,~G)),ee.arraySet(F.pending_buf,F.window,z,G,F.pending),F.pending+=G}function H(F,z,G,X){var A=2*z,N=2*G;return F[A]>1;G>=1;G--)J(F,N,G);A=fe;do G=F.heap[1],F.heap[1]=F.heap[F.heap_len--],J(F,N,1),X=F.heap[1],F.heap[--F.heap_max]=G,F.heap[--F.heap_max]=X,N[2*A]=N[2*G]+N[2*X],F.depth[A]=(F.depth[G]>=F.depth[X]?F.depth[G]:F.depth[X])+1,N[2*G+1]=N[2*X+1]=A,F.heap[1]=A++,J(F,N,1);while(F.heap_len>=2);F.heap[--F.heap_max]=F.heap[1],g(F,z),y(N,S,F.bl_count)}function O(F,z,G){var X,A,N=-1,I=z[1],te=0,fe=7,S=4;for(I===0&&(fe=138,S=3),z[2*(G+1)+1]=65535,X=0;X<=G;X++)A=I,I=z[2*(X+1)+1],++te=3&&F.bl_tree[2*h[z]+1]===0;z--);return F.opt_len+=3*(z+1)+5+5+4,z}function R(F,z,G,X){var A;for(p(F,z-257,5),p(F,G-1,5),p(F,X-4,4),A=0;A>>=1)if(1&G&&F.dyn_ltree[2*z]!==0)return _e;if(F.dyn_ltree[18]!==0||F.dyn_ltree[20]!==0||F.dyn_ltree[26]!==0)return ae;for(z=32;z0?(F.strm.data_type===Me&&(F.strm.data_type=Te(F)),q(F,F.l_desc),q(F,F.d_desc),I=pe(F),A=F.opt_len+3+7>>>3,N=F.static_len+3+7>>>3,N<=A&&(A=N)):A=N=G+5,G+4<=A&&z!==-1?oe(F,z,G,X):F.strategy===ne||N===A?(p(F,(Ae<<1)+(X?1:0),3),Q(F,x,E)):(p(F,(Fe<<1)+(X?1:0),3),R(F,F.l_desc.max_code+1,F.d_desc.max_code+1,I+1),Q(F,F.dyn_ltree,F.dyn_dtree)),M(F),X&&T(F)}function $(F,z,G){return F.pending_buf[F.d_buf+2*F.last_lit]=z>>>8&255,F.pending_buf[F.d_buf+2*F.last_lit+1]=255&z,F.pending_buf[F.l_buf+F.last_lit]=255&G,F.last_lit++,z===0?F.dyn_ltree[2*G]++:(F.matches++,z--,F.dyn_ltree[2*(b[G]+he+1)]++,F.dyn_dtree[2*l(z)]++),F.last_lit===F.lit_bufsize-1}var ee=e("../utils/common"),ne=4,_e=0,ae=1,Me=2,Ne=0,Ae=1,Fe=2,De=3,ze=258,ye=29,he=256,ke=he+1+ye,le=30,Ce=19,Be=2*ke+1,we=15,xe=16,Ie=7,Re=256,Le=16,Oe=17,Ve=18,Xe=[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],We=[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],t=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],h=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],d=512,x=new Array(2*(ke+2));o(x);var E=new Array(2*le);o(E);var C=new Array(d);o(C);var b=new Array(ze-De+1);o(b);var U=new Array(ye);o(U);var D=new Array(le);o(D);var k,Z,Y,W=!1;s._tr_init=re,s._tr_stored_block=oe,s._tr_flush_block=ue,s._tr_tally=$,s._tr_align=me},{"../utils/common":3}],15:[function(e,r,s){"use strict";function o(){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}r.exports=o},{}],"/":[function(e,r,s){"use strict";var o=e("./lib/utils/common").assign,a=e("./lib/deflate"),u=e("./lib/inflate"),l=e("./lib/zlib/constants"),v={};o(v,a,u,l),r.exports=v},{"./lib/deflate":1,"./lib/inflate":2,"./lib/utils/common":3,"./lib/zlib/constants":6}]},{},[])("/")});/** * @license * Copyright 2015 Mozilla Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */var PDFJS;(function(e){"use strict";var r=function(){function M(T){this.message="JPEG error: "+T}return M.prototype=new Error,M.prototype.name="JpegError",M.constructor=M,M}(),s=function(){var M=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),T=4017,B=799,H=3406,J=2276,Q=1567,q=3784,O=5793,K=2896;function pe({decodeTransform:$=null,colorTransform:ee=-1}={}){this._decodeTransform=$,this._colorTransform=ee}function R($,ee){for(var ne=0,_e=[],ae,Me,Ne=16;Ne>0&&!$[Ne-1];)Ne--;_e.push({children:[],index:0});var Ae=_e[0],Fe;for(ae=0;ae0;)Ae=_e.pop();for(Ae.index++,_e.push(Ae);_e.length<=ae;)_e.push(Fe={children:[],index:0}),Ae.children[Ae.index]=Fe.children,Ae=Fe;ne++}ae+10)return le--,ke>>le&1;if(ke=$[ee++],ke===255){var A=$[ee++];if(A){if(A===220&&De){ee+=2;const N=p($,ee);if(ee+=2,N>0&&N!==ne.scanLines)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",N)}else if(A===217){if(De){const N=h*8;if(N>0&&N>>7}function Be(A){for(var N=A;;){switch(N=N[Ce()],typeof N){case"number":return N;case"object":continue}throw new r("invalid huffman sequence")}}function we(A){for(var N=0;A>0;)N=N<<1|Ce(),A--;return N}function xe(A){if(A===1)return Ce()===1?1:-1;var N=we(A);return N>=1<>4;if(de===0){if(se<15)break;fe+=16;continue}fe+=se;var ie=M[fe];A.blockData[N+ie]=xe(de),fe++}}function Re(A,N){var I=Be(A.huffmanTableDC),te=I===0?0:xe(I)<0){Oe--;return}for(var I=Me,te=Ne;I<=te;){var fe=Be(A.huffmanTableAC),S=fe&15,de=fe>>4;if(S===0){if(de<15){Oe=we(de)+(1<>4,S===0)fe<15?(Oe=we(fe)+(1<0){for(b=0;b0?"unexpected":"excessive";g(`decodeScan - ${A} MCU data, current marker is: ${W.invalid}`),ee=W.offset}if(W.marker>=65488&&W.marker<=65495)ee+=2;else break}return ee-he}function oe($,ee,ne){var _e=$.quantizationTable,ae=$.blockData,Me,Ne,Ae,Fe,De,ze,ye,he,ke,le,Ce,Be,we,xe,Ie,Re,Le;if(!_e)throw new r("missing required Quantization Table.");for(var Oe=0;Oe<64;Oe+=8){if(ke=ae[ee+Oe],le=ae[ee+Oe+1],Ce=ae[ee+Oe+2],Be=ae[ee+Oe+3],we=ae[ee+Oe+4],xe=ae[ee+Oe+5],Ie=ae[ee+Oe+6],Re=ae[ee+Oe+7],ke*=_e[Oe],(le|Ce|Be|we|xe|Ie|Re)==0){Le=O*ke+512>>10,ne[Oe]=Le,ne[Oe+1]=Le,ne[Oe+2]=Le,ne[Oe+3]=Le,ne[Oe+4]=Le,ne[Oe+5]=Le,ne[Oe+6]=Le,ne[Oe+7]=Le;continue}le*=_e[Oe+1],Ce*=_e[Oe+2],Be*=_e[Oe+3],we*=_e[Oe+4],xe*=_e[Oe+5],Ie*=_e[Oe+6],Re*=_e[Oe+7],Me=O*ke+128>>8,Ne=O*we+128>>8,Ae=Ce,Fe=Ie,De=K*(le-Re)+128>>8,he=K*(le+Re)+128>>8,ze=Be<<4,ye=xe<<4,Me=Me+Ne+1>>1,Ne=Me-Ne,Le=Ae*q+Fe*Q+128>>8,Ae=Ae*Q-Fe*q+128>>8,Fe=Le,De=De+ye+1>>1,ye=De-ye,he=he+ze+1>>1,ze=he-ze,Me=Me+Fe+1>>1,Fe=Me-Fe,Ne=Ne+Ae+1>>1,Ae=Ne-Ae,Le=De*J+he*H+2048>>12,De=De*H-he*J+2048>>12,he=Le,Le=ze*B+ye*T+2048>>12,ze=ze*T-ye*B+2048>>12,ye=Le,ne[Oe]=Me+he,ne[Oe+7]=Me-he,ne[Oe+1]=Ne+ye,ne[Oe+6]=Ne-ye,ne[Oe+2]=Ae+ze,ne[Oe+5]=Ae-ze,ne[Oe+3]=Fe+De,ne[Oe+4]=Fe-De}for(var Ve=0;Ve<8;++Ve){if(ke=ne[Ve],le=ne[Ve+8],Ce=ne[Ve+16],Be=ne[Ve+24],we=ne[Ve+32],xe=ne[Ve+40],Ie=ne[Ve+48],Re=ne[Ve+56],(le|Ce|Be|we|xe|Ie|Re)==0){Le=O*ke+8192>>14,Le<-2040?Le=0:Le>=2024?Le=255:Le=Le+2056>>4,ae[ee+Ve]=Le,ae[ee+Ve+8]=Le,ae[ee+Ve+16]=Le,ae[ee+Ve+24]=Le,ae[ee+Ve+32]=Le,ae[ee+Ve+40]=Le,ae[ee+Ve+48]=Le,ae[ee+Ve+56]=Le;continue}Me=O*ke+2048>>12,Ne=O*we+2048>>12,Ae=Ce,Fe=Ie,De=K*(le-Re)+2048>>12,he=K*(le+Re)+2048>>12,ze=Be,ye=xe,Me=(Me+Ne+1>>1)+4112,Ne=Me-Ne,Le=Ae*q+Fe*Q+2048>>12,Ae=Ae*Q-Fe*q+2048>>12,Fe=Le,De=De+ye+1>>1,ye=De-ye,he=he+ze+1>>1,ze=he-ze,Me=Me+Fe+1>>1,Fe=Me-Fe,Ne=Ne+Ae+1>>1,Ae=Ne-Ae,Le=De*J+he*H+2048>>12,De=De*H-he*J+2048>>12,he=Le,Le=ze*B+ye*T+2048>>12,ze=ze*T-ye*B+2048>>12,ye=Le,ke=Me+he,Re=Me-he,le=Ne+ye,Ie=Ne-ye,Ce=Ae+ze,xe=Ae-ze,Be=Fe+De,we=Fe-De,ke<16?ke=0:ke>=4080?ke=255:ke>>=4,le<16?le=0:le>=4080?le=255:le>>=4,Ce<16?Ce=0:Ce>=4080?Ce=255:Ce>>=4,Be<16?Be=0:Be>=4080?Be=255:Be>>=4,we<16?we=0:we>=4080?we=255:we>>=4,xe<16?xe=0:xe>=4080?xe=255:xe>>=4,Ie<16?Ie=0:Ie>=4080?Ie=255:Ie>>=4,Re<16?Re=0:Re>=4080?Re=255:Re>>=4,ae[ee+Ve]=ke,ae[ee+Ve+8]=le,ae[ee+Ve+16]=Ce,ae[ee+Ve+24]=Be,ae[ee+Ve+32]=we,ae[ee+Ve+40]=xe,ae[ee+Ve+48]=Ie,ae[ee+Ve+56]=Re}}function me($,ee){for(var ne=ee.blocksPerLine,_e=ee.blocksPerColumn,ae=new Int16Array(64),Me=0;Me<_e;Me++)for(var Ne=0;Ne=_e)return null;var Me=p($,ee);if(Me>=65472&&Me<=65534)return{invalid:null,marker:Me,offset:ee};for(var Ne=p($,ae);!(Ne>=65472&&Ne<=65534);){if(++ae>=_e)return null;Ne=p($,ae)}return{invalid:Me.toString(16),marker:Ne,offset:ae}}return pe.prototype={parse($,{dnlScanLines:ee=null}={}){function ne(){const A=p($,ae);ae+=2;let N=ae+A-2;var I=ue($,N,ae);I&&I.invalid&&(g("readDataBlock - incorrect length, current marker is: "+I.invalid),N=I.offset);var te=$.subarray(ae,N);return ae+=te.length,te}function _e(A){for(var N=Math.ceil(A.samplesPerLine/8/A.maxH),I=Math.ceil(A.scanLines/8/A.maxV),te=0;te>4==0)for(Ce=0;Ce<64;Ce++)Ie=M[Ce],Le[Ie]=$[ae++];else if(Re>>4==1)for(Ce=0;Ce<64;Ce++)Ie=M[Ce],Le[Ie]=p($,ae),ae+=2;else throw new r("DQT - invalid table spec");ze[Re&15]=Le}break;case 65472:case 65473:case 65474:if(Ae)throw new r("Only single frame JPEGs supported");ae+=2,Ae={},Ae.extended=ke===65473,Ae.progressive=ke===65474,Ae.precision=$[ae++];const N=p($,ae);ae+=2,Ae.scanLines=ee||N,Ae.samplesPerLine=p($,ae),ae+=2,Ae.components=[],Ae.componentIds={};var Oe=$[ae++],Ve,Xe=0,We=0;for(le=0;le>4,h=$[ae+1]&15;Xe>4==0?he:ye)[x&15]=R(E,b)}break;case 65501:ae+=2,Fe=p($,ae),ae+=2;break;case 65498:const te=++De==1&&!ee;ae+=2;var U=$[ae++],D=[],k;for(le=0;le>4],k.huffmanTableAC=ye[Y&15],D.push(k)}var W=$[ae++],F=$[ae++],z=$[ae++];try{var G=re($,ae,Ae,D,Fe,W,F,z>>4,z&15,te);ae+=G}catch(S){if(S instanceof DNLMarkerError)return g(`${S.message} -- attempting to re-parse the JPEG image.`),this.parse($,{dnlScanLines:S.scanLines});if(S instanceof EOIMarkerError){g(`${S.message} -- ignoring the rest of the image data.`);break e}throw S}break;case 65500:ae+=4;break;case 65535:$[ae]!==255&&ae--;break;default:const fe=ue($,ae-2,ae-3);if(fe&&fe.invalid){g("JpegImage.parse - unexpected data, current marker is: "+fe.invalid),ae=fe.offset;break}if(ae>=$.length-1){g("JpegImage.parse - reached the end of the image data without finding an EOI marker (0xFFD9).");break e}throw new r("JpegImage.parse - unknown marker: "+ke.toString(16))}ke=p($,ae),ae+=2}for(this.width=Ae.samplesPerLine,this.height=Ae.scanLines,this.jfif=Me,this.adobe=Ne,this.components=[],le=0;le>8)+Ve[ke+1];return Ie},get _isColorConversionNeeded(){return this.adobe?!!this.adobe.transformCode:this.numComponents===3?this._colorTransform===0?!1:!(this.components[0].index===82&&this.components[1].index===71&&this.components[2].index===66):this._colorTransform===1},_convertYccToRgb:function(ee){for(var ne,_e,ae,Me=0,Ne=ee.length;Me4)throw new r("Unsupported color mode");var ae=this._getLinearizedBlockData($,ee,_e);if(this.numComponents===1&&ne){for(var Me=ae.length,Ne=new Uint8ClampedArray(Me*3),Ae=0,Fe=0;Fe>9&127,this.clow=this.clow<<7&65535,this.ct-=7,this.a=32768}return T.prototype={byteIn:function(){var H=this.data,J=this.bp;if(H[J]===255){var Q=H[J+1];Q>143?(this.clow+=65280,this.ct=8):(J++,this.clow+=H[J]<<9,this.ct=7,this.bp=J)}else J++,this.clow+=J65535&&(this.chigh+=this.clow>>16,this.clow&=65535)},readBit:function(H,J){var Q=H[J]>>1,q=H[J]&1,O=M[Q],K=O.qe,pe,R=this.a-K;if(this.chigh>15&1,this.clow=this.clow<<1&65535,this.ct--;while((R&32768)==0);return this.a=R,H[J]=Q<<1|q,pe}},T}(),a=function(){var M={LL:0,LH:1,HL:1,HH:2};function T(){this.failOnCorruptedImage=!1}T.prototype={parse:function(he){var ke=p(he,0);if(ke===65359){this.parseCodestream(he,0,he.length);return}for(var le=0,Ce=he.length;le>24&255,xe>>16&255,xe>>8&255,xe&255);g("Unsupported header type "+xe+" ("+Ve+")");break}Re&&(le+=Ie)}},parseImageProperties:function(he){for(var ke=he.getByte();ke>=0;){var le=ke;ke=he.getByte();var Ce=le<<8|ke;if(Ce===65361){he.skip(4);var Be=he.getInt32()>>>0,we=he.getInt32()>>>0,xe=he.getInt32()>>>0,Ie=he.getInt32()>>>0;he.skip(16);var Re=he.getUint16();this.width=Be-xe,this.height=we-Ie,this.componentsCount=Re,this.bitsPerComponent=8;return}}f("JPX Error: No size marker found in JPX stream")},parseCodestream:function(he,ke,le){var Ce={},Be=!1;try{for(var we=ke;we+1>5,Oe=[];Re>3,b.mu=0):(b.epsilon=he[Re]>>3,b.mu=(he[Re]&7)<<8|he[Re+1],Re+=2),Oe.push(b)}C.SPqcds=Oe,Ce.mainHeader?Ce.QCD=C:(Ce.currentTile.QCD=C,Ce.currentTile.QCC=[]);break;case 65373:Ie=p(he,we);var U={};Re=we+2;var D;switch(Ce.SIZ.Csiz<257?D=he[Re++]:(D=p(he,Re),Re+=2),Le=he[Re++],Le&31){case 0:Ve=8,Xe=!0;break;case 1:Ve=16,Xe=!1;break;case 2:Ve=16,Xe=!0;break;default:throw new Error("Invalid SQcd value "+Le)}for(U.noQuantization=Ve===8,U.scalarExpounded=Xe,U.guardBits=Le>>5,Oe=[];Re>3,b.mu=0):(b.epsilon=he[Re]>>3,b.mu=(he[Re]&7)<<8|he[Re+1],Re+=2),Oe.push(b);U.SPqcds=Oe,Ce.mainHeader?Ce.QCC[D]=U:Ce.currentTile.QCC[D]=U;break;case 65362:Ie=p(he,we);var k={};Re=we+2;var Z=he[Re++];k.entropyCoderWithCustomPrecincts=!!(Z&1),k.sopMarkerUsed=!!(Z&2),k.ephMarkerUsed=!!(Z&4),k.progressionOrder=he[Re++],k.layersCount=p(he,Re),Re+=2,k.multipleComponentTransform=he[Re++],k.decompositionLevelsCount=he[Re++],k.xcb=(he[Re++]&15)+2,k.ycb=(he[Re++]&15)+2;var Y=he[Re++];if(k.selectiveArithmeticCodingBypass=!!(Y&1),k.resetContextProbabilities=!!(Y&2),k.terminationOnEachCodingPass=!!(Y&4),k.verticalyStripe=!!(Y&8),k.predictableTermination=!!(Y&16),k.segmentationSymbolUsed=!!(Y&32),k.reversibleTransformation=he[Re++],k.entropyCoderWithCustomPrecincts){for(var W=[];Re>4})}k.precinctsSizes=W}var z=[];if(k.selectiveArithmeticCodingBypass&&z.push("selectiveArithmeticCodingBypass"),k.resetContextProbabilities&&z.push("resetContextProbabilities"),k.terminationOnEachCodingPass&&z.push("terminationOnEachCodingPass"),k.verticalyStripe&&z.push("verticalyStripe"),k.predictableTermination&&z.push("predictableTermination"),z.length>0)throw Be=!0,new Error("Unsupported COD options ("+z.join(", ")+")");Ce.mainHeader?Ce.COD=k:(Ce.currentTile.COD=k,Ce.currentTile.COC=[]);break;case 65424:Ie=p(he,we),We={},We.index=p(he,we+2),We.length=c(he,we+4),We.dataEnd=We.length+we-2,We.partIndex=he[we+8],We.partsCount=he[we+9],Ce.mainHeader=!1,We.partIndex===0&&(We.COD=Ce.COD,We.COC=Ce.COC.slice(0),We.QCD=Ce.QCD,We.QCC=Ce.QCC.slice(0)),Ce.currentTile=We;break;case 65427:We=Ce.currentTile,We.partIndex===0&&(ae(Ce,We.index),ue(Ce)),Ie=We.dataEnd-we,$(Ce,he,we,Ie);break;case 65365:case 65367:case 65368:case 65380:Ie=p(he,we);break;case 65363:throw new Error("Codestream code 0xFF53 (COC) is not implemented");default:throw new Error("Unknown codestream code: "+xe.toString(16))}we+=Ie}}catch(G){Be||this.failOnCorruptedImage?f("JPX Error: "+G.message):g("JPX: Trying to recover from: "+G.message)}this.tiles=_e(Ce),this.width=Ce.SIZ.Xsiz-Ce.SIZ.XOsiz,this.height=Ce.SIZ.Ysiz-Ce.SIZ.YOsiz,this.componentsCount=Ce.SIZ.Csiz}};function B(ye,he){ye.x0=Math.ceil(he.XOsiz/ye.XRsiz),ye.x1=Math.ceil(he.Xsiz/ye.XRsiz),ye.y0=Math.ceil(he.YOsiz/ye.YRsiz),ye.y1=Math.ceil(he.Ysiz/ye.YRsiz),ye.width=ye.x1-ye.x0,ye.height=ye.y1-ye.y0}function H(ye,he){for(var ke=ye.SIZ,le,Ce=[],Be=Math.ceil((ke.Xsiz-ke.XTOsiz)/ke.XTsiz),we=Math.ceil((ke.Ysiz-ke.YTOsiz)/ke.YTsiz),xe=0;xe0?Math.min(le.xcb,Ce.PPx-1):Math.min(le.xcb,Ce.PPx),Ce.ycb_=ke>0?Math.min(le.ycb,Ce.PPy-1):Math.min(le.ycb,Ce.PPy),Ce}function Q(ye,he,ke){var le=1<he.trx0?Math.ceil(he.trx1/le)-Math.floor(he.trx0/le):0,Re=he.try1>he.try0?Math.ceil(he.try1/Ce)-Math.floor(he.try0/Ce):0,Le=Ie*Re;he.precinctParameters={precinctWidth:le,precinctHeight:Ce,numprecinctswide:Ie,numprecinctshigh:Re,numprecincts:Le,precinctWidthInSubband:we,precinctHeightInSubband:xe}}function q(ye,he,ke){var le=ke.xcb_,Ce=ke.ycb_,Be=1<>le,Ie=he.tby0>>Ce,Re=he.tbx1+Be-1>>le,Le=he.tby1+we-1>>Ce,Oe=he.resolution.precinctParameters,Ve=[],Xe=[],We,t,h,d;for(t=Ie;tC.cbxMax&&(C.cbxMax=We),tC.cbyMax&&(C.cbyMax=t)):Xe[d]=C={cbxMin:We,cbyMin:t,cbxMax:We,cbyMax:t},h.precinct=C}}he.codeblockParameters={codeblockWidth:le,codeblockHeight:Ce,numcodeblockwide:Re-xe+1,numcodeblockhigh:Le-Ie+1},he.codeblocks=Ve,he.precincts=Xe}function O(ye,he,ke){for(var le=[],Ce=ye.subbands,Be=0,we=Ce.length;BeXe.codingStyleParameters.decompositionLevelsCount)){for(var We=Xe.resolutions[Re],t=We.precinctParameters.numprecincts;OeXe.codingStyleParameters.decompositionLevelsCount)){for(var We=Xe.resolutions[Ie],t=We.precinctParameters.numprecincts;Oeh.codingStyleParameters.decompositionLevelsCount)){var d=h.resolutions[xe],x=d.precinctParameters.numprecincts;if(!(Re>=x)){for(;we=0;--h){var d=Ie.resolutions[h],x=t*d.precinctParameters.precinctWidth,E=t*d.precinctParameters.precinctHeight;Oe=Math.min(Oe,x),Ve=Math.min(Ve,E),Xe=Math.max(Xe,d.precinctParameters.numprecinctswide),We=Math.max(We,d.precinctParameters.numprecinctshigh),Le[h]={width:x,height:E},t<<=1}ke=Math.min(ke,Oe),le=Math.min(le,Ve),Ce=Math.max(Ce,Xe),Be=Math.max(Be,We),we[xe]={resolutions:Le,minWidth:Oe,minHeight:Ve,maxNumWide:Xe,maxNumHigh:We}}return{components:we,minWidth:ke,minHeight:le,maxNumWide:Ce,maxNumHigh:Be}}function ue(ye){for(var he=ye.SIZ,ke=ye.currentTile.index,le=ye.tiles[ke],Ce=he.Csiz,Be=0;Be>>we&(1<0;){var de=C.shift();b=de.codeblock,b.data===void 0&&(b.data=[]),b.data.push({data:he,start:ke+Ce,end:ke+Ce+de.dataLength,codingpasses:de.codingpasses}),Ce+=de.dataLength}}}return Ce}function ee(ye,he,ke,le,Ce,Be,we,xe){for(var Ie=le.tbx0,Re=le.tby0,Le=le.tbx1-le.tbx0,Oe=le.codeblocks,Ve=le.type.charAt(0)==="H"?1:0,Xe=le.type.charAt(1)==="H"?he:0,We=0,t=Oe.length;We=Be?ye[Pe]=S:ye[Pe]=S*(1<0?1-h:0));var Z=d.subbands[b],Y=M[Z.type],W=Ve?1:Math.pow(2,Oe+Y-k)*(1+D/2048),F=Re+k-1;ee(C,x,E,Z,W,F,Ve,Le)}We.push({width:x,height:E,items:C})}var z=Xe.calculate(We,le.tcx0,le.tcy0);return{left:le.tcx0,top:le.tcy0,width:z.width,height:z.height,items:z.items}}function _e(ye){for(var he=ye.SIZ,ke=ye.components,le=he.Csiz,Ce=[],Be=0,we=ye.tiles.length;Be>2),k=Z+D,Y=Z+U,Oe[x++]=k<=0?0:k>=t?255:k>>Xe,Oe[x++]=Z<=0?0:Z>=t?255:Z>>Xe,Oe[x++]=Y<=0?0:Y>=t?255:Y>>Xe;else for(E=0;E=t?255:k>>Xe,Oe[x++]=Z<=0?0:Z>=t?255:Z>>Xe,Oe[x++]=Y<=0?0:Y>=t?255:Y>>Xe;if(z)for(E=0,x=3;E=d?255:W+We>>Xe}else for(Re=0;Re=t?255:F+We>>Xe,x+=le}Ce.push(Ve)}return Ce}function ae(ye,he){for(var ke=ye.SIZ,le=ke.Csiz,Ce=ye.tiles[he],Be=0;Be>=1,Ce>>=1,Be++}Be--,xe=this.levels[Be],xe.items[xe.index]=we,this.currentLevel=Be,delete this.value},incrementValue:function(){var le=this.levels[this.currentLevel];le.items[le.index]++},nextLevel:function(){var le=this.currentLevel,Ce=this.levels[le],Be=Ce.items[Ce.index];return le--,le<0?(this.value=Be,!1):(this.currentLevel=le,Ce=this.levels[le],Ce.items[Ce.index]=Be,!0)}},he}(),Ne=function(){function he(ke,le,Ce){var Be=l(Math.max(ke,le))+1;this.levels=[];for(var we=0;weBe)return this.currentLevel=we,this.propagateValues(),!1;le>>=1,Ce>>=1,we++}return this.currentLevel=we-1,!0},incrementValue:function(le){var Ce=this.levels[this.currentLevel];Ce.items[Ce.index]=le+1,this.propagateValues()},propagateValues:function(){for(var le=this.currentLevel,Ce=this.levels[le],Be=Ce.items[Ce.index];--le>=0;)Ce=this.levels[le],Ce.items[Ce.index]=Be},nextLevel:function(){var le=this.currentLevel,Ce=this.levels[le],Be=Ce.items[Ce.index];return Ce.items[Ce.index]=255,le--,le<0?!1:(this.currentLevel=le,Ce=this.levels[le],Ce.items[Ce.index]=Be,!0)}},he}(),Ae=function(){var he=17,ke=18,le=new Uint8Array([0,5,8,0,3,7,8,0,4,7,8,0,0,0,0,0,1,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8]),Ce=new Uint8Array([0,3,4,0,5,7,7,0,8,8,8,0,0,0,0,0,1,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8]),Be=new Uint8Array([0,1,2,0,1,2,2,0,2,2,2,0,0,0,0,0,3,4,5,0,4,5,5,0,5,5,5,0,0,0,0,0,6,7,7,0,7,7,7,0,7,7,7,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8]);function we(xe,Ie,Re,Le,Oe){this.width=xe,this.height=Ie,this.contextLabelTable=Re==="HH"?Be:Re==="HL"?Ce:le;var Ve=xe*Ie;this.neighborsSignificance=new Uint8Array(Ve),this.coefficentsSign=new Uint8Array(Ve),this.coefficentsMagnitude=Oe>14?new Uint32Array(Ve):Oe>6?new Uint16Array(Ve):new Uint8Array(Ve),this.processingFlags=new Uint8Array(Ve);var Xe=new Uint8Array(Ve);if(Le!==0)for(var We=0;We0,t=Re+10&&(h=Le-Ve,We&&(Oe[h-1]+=16),t&&(Oe[h+1]+=16),Oe[h]+=4),Ie+1=Le)break;if(We[D]&=x,!(Oe[D]||!Xe[D])){var Y=h[Xe[D]],W=Ie.readBit(t,Y);if(W){var F=this.decodeSignBit(Z,U,D);Ve[D]=F,Oe[D]=1,this.setNeighborsSignificance(Z,U,D),We[D]|=C}d[D]++,We[D]|=E}}},decodeSignBit:function(Ie,Re,Le){var Oe=this.width,Ve=this.height,Xe=this.coefficentsMagnitude,We=this.coefficentsSign,t,h,d,x,E,C;x=Re>0&&Xe[Le-1]!==0,Re+10&&Xe[Le-Oe]!==0,Ie+1=0?(E=9+t,C=this.decoder.readBit(this.contexts,E)):(E=9-t,C=this.decoder.readBit(this.contexts,E)^1),C},runMagnitudeRefinementPass:function(){for(var Ie=this.decoder,Re=this.width,Le=this.height,Oe=this.coefficentsMagnitude,Ve=this.neighborsSignificance,Xe=this.contexts,We=this.bitsDecoded,t=this.processingFlags,h=1,d=2,x=Re*Le,E=Re*4,C=0,b;C>1;Ce=Ce|0;var xe,Ie,Re,Le,Oe=-1.586134342059924,Ve=-.052980118572961,Xe=.882911075530934,We=.443506852043971,t=1.230174104914001,h=1/t;for(xe=Ce-3,Ie=we+4;Ie--;xe+=2)le[xe]*=h;for(xe=Ce-2,Re=We*le[xe-1],Ie=we+3;Ie--&&(Le=We*le[xe+1],le[xe]=t*le[xe]-Re-Le,Ie--);xe+=2)xe+=2,Re=We*le[xe+1],le[xe]=t*le[xe]-Re-Le;for(xe=Ce-1,Re=Xe*le[xe-1],Ie=we+2;Ie--&&(Le=Xe*le[xe+1],le[xe]-=Re+Le,Ie--);xe+=2)xe+=2,Re=Xe*le[xe+1],le[xe]-=Re+Le;for(xe=Ce,Re=Ve*le[xe-1],Ie=we+1;Ie--&&(Le=Ve*le[xe+1],le[xe]-=Re+Le,Ie--);xe+=2)xe+=2,Re=Ve*le[xe+1],le[xe]-=Re+Le;if(we!==0)for(xe=Ce+1,Re=Oe*le[xe-1],Ie=we;Ie--&&(Le=Oe*le[xe+1],le[xe]-=Re+Le,Ie--);xe+=2)xe+=2,Re=Oe*le[xe+1],le[xe]-=Re+Le},he}(),ze=function(){function he(){Fe.call(this)}return he.prototype=Object.create(Fe.prototype),he.prototype.filter=function(le,Ce,Be){var we=Be>>1;Ce=Ce|0;var xe,Ie;for(xe=Ce,Ie=we+1;Ie--;xe+=2)le[xe]-=le[xe-1]+le[xe+1]+2>>2;for(xe=Ce+1,Ie=we;Ie--;xe+=2)le[xe]+=le[xe-1]+le[xe+1]>>1},he}();return T}(),u=function(){function M(){}M.prototype={getContexts:function(Fe){return Fe in this?this[Fe]:this[Fe]=new Int8Array(1<<16)}};function T(Fe,De,ze){this.data=Fe,this.start=De,this.end=ze}T.prototype={get decoder(){var Fe=new o(this.data,this.start,this.end);return _(this,"decoder",Fe)},get contextCache(){var Fe=new M;return _(this,"contextCache",Fe)}};function B(Fe,De,ze){var ye=Fe.getContexts(De),he=1;function ke(Be){for(var we=0,xe=0;xe>>0}var le=ke(1),Ce=ke(1)?ke(1)?ke(1)?ke(1)?ke(1)?ke(32)+4436:ke(12)+340:ke(8)+84:ke(6)+20:ke(4)+4:ke(2);return le===0?Ce:Ce>0?-Ce:null}function H(Fe,De,ze){for(var ye=Fe.getContexts("IAID"),he=1,ke=0;ke=b&&G=U)for(N=N<<1&Oe,h=0;h=0&&A=0&&(I=Y[X][A],I&&(N|=I<=Fe?F<<=1:F=F<<1|x[Y][W];for(Le=0;Le=h||W<0||W>=t?F<<=1:F=F<<1|ye[Y][W];var z=E.readBit(C,F);k[Z]=z}}return x}function re(Fe,De,ze,ye,he,ke,le,Ce,Be,we,xe){Fe&&f("JBIG2 error: huffman is not supported");for(var Ie=[],Re=0,Le=l(ze.length+ye),Oe=xe.decoder,Ve=xe.contextCache;Ie.length1)h=oe(Fe,De,We,Re,0,d,1,ze.concat(Ie),Le,0,0,1,0,ke,Be,we,xe);else{var x=H(Ve,Oe,Le),E=B(Ve,"IARDX",Oe),C=B(Ve,"IARDY",Oe),b=x>1)+I,(N>>1)+te,!1,Ve,Xe)}var fe=Y-(Ie&1?0:X),S=k-(Ie&2?G:0),de,se,ie;if(we){for(de=0;de>5&7,Be=[le&31],we=De+6;if(le===7){Ce=c(Fe,we-1)&536870911,we+=3;var xe=Ce+7>>3;for(Be[0]=Fe[we++];--xe>0;)Be.push(Fe[we++])}else(le===5||le===6)&&f("JBIG2 error: invalid referred-to flags");ze.retainBits=Be;var Ie=ze.number<=256?1:ze.number<=65536?2:4,Re=[],Le,Oe;for(Le=0;Le>>24&255,d[3]=Xe.height>>16&255,d[4]=Xe.height>>8&255,d[5]=Xe.height&255,Le=we,Oe=Fe.length;Le>2&3,xe.huffmanDWSelector=Ie>>4&3,xe.bitmapSizeSelector=Ie>>6&1,xe.aggregationInstancesSelector=Ie>>7&1,xe.bitmapCodingContextUsed=!!(Ie&256),xe.bitmapCodingContextRetained=!!(Ie&512),xe.template=Ie>>10&3,xe.refinementTemplate=Ie>>12&1,he+=2,!xe.huffman){for(we=xe.template===0?4:1,Ce=[],Be=0;Be>2&3),Re.referenceCorner=Le>>4&3,Re.transposed=!!(Le&64),Re.combinationOperator=Le>>7&3,Re.defaultPixelValue=Le>>9&1,Re.dsOffset=Le<<17>>27,Re.refinementTemplate=Le>>15&1,Re.huffman){var Oe=p(ye,he);he+=2,Re.huffmanFS=Oe&3,Re.huffmanDS=Oe>>2&3,Re.huffmanDT=Oe>>4&3,Re.huffmanRefinementDW=Oe>>6&3,Re.huffmanRefinementDH=Oe>>8&3,Re.huffmanRefinementDX=Oe>>10&3,Re.huffmanRefinementDY=Oe>>12&3,Re.huffmanRefinementSizeSelector=!!(Oe&14)}if(Re.refinement&&!Re.refinementTemplate){for(Ce=[],Be=0;Be<2;Be++)Ce.push({x:v(ye,he),y:v(ye,he+1)}),he+=2;Re.refinementAt=Ce}Re.numberOfSymbolInstances=c(ye,he),he+=4,Re.huffman&&f("JBIG2 error: huffman is not supported"),le=[Re,ze.referredTo,ye,he,ke];break;case 38:case 39:var Ve={};Ve.info=$(ye,he),he+=ee;var Xe=ye[he++];if(Ve.mmr=!!(Xe&1),Ve.template=Xe>>1&3,Ve.prediction=!!(Xe&8),!Ve.mmr){for(we=Ve.template===0?4:1,Ce=[],Be=0;Be>2&1,We.combinationOperator=t>>3&3,We.requiresBuffer=!!(t&32),We.combinationOperatorOverride=!!(t&64),le=[We];break;case 49:break;case 50:break;case 51:break;case 62:break;default:f("JBIG2 error: segment type "+ze.typeName+"("+ze.type+") is not implemented")}var h="on"+ze.typeName;h in De&&De[h].apply(De,le)}function _e(Fe,De){for(var ze=0,ye=Fe.length;ze>3,ye=new Uint8Array(ze*De.height);if(De.defaultPixelValue)for(var he=0,ke=ye.length;he>3,Ce=ye.combinationOperatorOverride?De.combinationOperator:ye.combinationOperator,Be=this.buffer,we=128>>(De.x&7),xe=De.y*le+(De.x>>3),Ie,Re,Le,Oe;switch(Ce){case 0:for(Ie=0;Ie>=1,Le||(Le=128,Oe++);xe+=le}break;case 2:for(Ie=0;Ie>=1,Le||(Le=128,Oe++);xe+=le}break;default:f("JBIG2 error: operator "+Ce+" is not supported")}},onImmediateGenericRegion:function(De,ze,ye,he){var ke=De.info,le=new T(ze,ye,he),Ce=R(De.mmr,ke.width,ke.height,De.template,De.prediction,null,De.at,le);this.drawBitmap(ke,Ce)},onImmediateLosslessGenericRegion:function(){this.onImmediateGenericRegion.apply(this,arguments)},onSymbolDictionary:function(De,ze,ye,he,ke,le){var Ce;De.huffman&&f("JBIG2 error: huffman is not supported");var Be=this.symbols;Be||(this.symbols=Be={});for(var we=[],xe=0,Ie=ye.length;xeM;)M<<=1,T++;return T}function v(w,M){return w[M]<<24>>24}function p(w,M){return w[M]<<8|w[M+1]}function c(w,M){return(w[M]<<24|w[M+1]<<16|w[M+2]<<8|w[M+3])>>>0}function _(w,M,T){return Object.defineProperty(w,M,{value:T,enumerable:!0,configurable:!0,writable:!1}),T}var f=function(){throw console.error.apply(console,arguments),new Error("PDFJS error: "+arguments[0])},g=function(){console.warn.apply(console,arguments)},y=function(){console.info.apply(console,arguments)};u.prototype.parse=function(M){var T=0,B=M.length;(M[T]!==151||M[T+1]!==74||M[T+2]!==66||M[T+3]!==50||M[T+4]!==13||M[T+5]!==10||M[T+6]!==26||M[T+7]!==10)&&f("JBIG2 error: invalid header");var H={};T+=8;var J=M[T++];H.randomAccess=!(J&1),J&2||(H.numberOfPages=c(M,T),T+=4);for(var Q=this.parseChunks([{data:M,start:T,end:B}]),q=Q.currentPageInfo.width,O=Q.currentPageInfo.height,K=Q.buffer,M=new Uint8Array(q*O),pe=0,R=0,Te=0;Te>=1;this.width=q,this.height=O,this.data=M},e.JpegImage=s,e.JpxImage=a,e.Jbig2Image=u})(PDFJS||(PDFJS={})),function(){var e,r=0,s=null,o=null;e=window.FFT={};var a={o:function(u){if(u!==0&&(u&u-1)==0)r=u,a.B(),a.q(),a.i();else throw new Error("init: radix-2 required")},X:function(u,l){a.G(u,l,1)},e:function(u,l){var v=1/r;a.G(u,l,-1);for(var p=0;p>2,H=0;H>1;v<=l;)l-=v,v>>=1;l+=v,s[u]=l}},i:function(){var u=r>>1,l=r>>2,v=r>>3,p=u+l,c=Math.sin(Math.PI/r),_=2*c*c,f=Math.sqrt(_*(2-_)),g=o[l]=1,y=o[0]=0;c=2*_;for(var w=1;wp){var f=this.type===o.types.logicalOR||this.type===o.types.logicalAND,g=this.value;this.next();var y=this.start,w=this.startLoc,_=this.parseExprOp(this.parseMaybeUnary(null,!1),y,w,_,c);return u=this.buildBinary(l,v,u,_,g,f),this.parseExprOp(u,l,v,p,c)}return u},e.buildBinary=function(u,l,v,p,c,_){return u=this.startNodeAt(u,l),u.left=v,u.operator=c,u.right=p,this.finishNode(u,_?"LogicalExpression":"BinaryExpression")},e.parseMaybeUnary=function(u,l){var v=this.start,p=this.startLoc;if(this.type.prefix){var c=this.startNode(),_=this.type===o.types.incDec;c.operator=this.value,c.prefix=!0,this.next(),c.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(u,!0),_?this.checkLVal(c.argument):this.strict&&c.operator==="delete"&&c.argument.type==="Identifier"?this.raiseRecoverable(c.start,"Deleting local variable in strict mode"):l=!0,_=this.finishNode(c,_?"UpdateExpression":"UnaryExpression")}else{if(_=this.parseExprSubscripts(u),this.checkExpressionErrors(u))return _;for(;this.type.postfix&&!this.canInsertSemicolon();)c=this.startNodeAt(v,p),c.operator=this.value,c.prefix=!1,c.argument=_,this.checkLVal(_),this.next(),_=this.finishNode(c,"UpdateExpression")}return!l&&this.eat(o.types.starstar)?this.buildBinary(v,p,_,this.parseMaybeUnary(null,!1),"**",!1):_},e.parseExprSubscripts=function(u){var l=this.start,v=this.startLoc,p=this.parseExprAtom(u),c=p.type==="ArrowFunctionExpression"&&this.input.slice(this.lastTokStart,this.lastTokEnd)!==")";return this.checkExpressionErrors(u)||c?p:this.parseSubscripts(p,l,v)},e.parseSubscripts=function(u,l,v,p){for(var c;;)if(this.eat(o.types.dot))c=this.startNodeAt(l,v),c.object=u,c.property=this.parseIdent(!0),c.computed=!1,u=this.finishNode(c,"MemberExpression");else if(this.eat(o.types.bracketL))c=this.startNodeAt(l,v),c.object=u,c.property=this.parseExpression(),c.computed=!0,this.expect(o.types.bracketR),u=this.finishNode(c,"MemberExpression");else if(!p&&this.eat(o.types.parenL))c=this.startNodeAt(l,v),c.callee=u,c.arguments=this.parseExprList(o.types.parenR,!1),u=this.finishNode(c,"CallExpression");else if(this.type===o.types.backQuote)c=this.startNodeAt(l,v),c.tag=u,c.quasi=this.parseTemplate(),u=this.finishNode(c,"TaggedTemplateExpression");else return u},e.parseExprAtom=function(u){var l=this.potentialArrowAt==this.start;switch(this.type){case o.types._super:this.inFunction||this.raise(this.start,"'super' outside of function or class");case o.types._this:return u=this.type===o.types._this?"ThisExpression":"Super",l=this.startNode(),this.next(),this.finishNode(l,u);case o.types.name:u=this.start;var v=this.startLoc,p=this.parseIdent(this.type!==o.types.name);return l&&!this.canInsertSemicolon()&&this.eat(o.types.arrow)?this.parseArrowExpression(this.startNodeAt(u,v),[p]):p;case o.types.regexp:return u=this.value,l=this.parseLiteral(u.value),l.regex={pattern:u.pattern,flags:u.flags},l;case o.types.num:case o.types.string:return this.parseLiteral(this.value);case o.types._null:case o.types._true:case o.types._false:return l=this.startNode(),l.value=this.type===o.types._null?null:this.type===o.types._true,l.raw=this.type.keyword,this.next(),this.finishNode(l,"Literal");case o.types.parenL:return this.parseParenAndDistinguishExpression(l);case o.types.bracketL:return l=this.startNode(),this.next(),l.elements=this.parseExprList(o.types.bracketR,!0,!0,u),this.finishNode(l,"ArrayExpression");case o.types.braceL:return this.parseObj(!1,u);case o.types._function:return l=this.startNode(),this.next(),this.parseFunction(l,!1);case o.types._class:return this.parseClass(this.startNode(),!1);case o.types._new:return this.parseNew();case o.types.backQuote:return this.parseTemplate();default:this.unexpected()}},e.parseLiteral=function(u){var l=this.startNode();return l.value=u,l.raw=this.input.slice(this.start,this.end),this.next(),this.finishNode(l,"Literal")},e.parseParenExpression=function(){this.expect(o.types.parenL);var u=this.parseExpression();return this.expect(o.types.parenR),u},e.parseParenAndDistinguishExpression=function(u){var l=this.start,v=this.startLoc;if(6<=this.options.ecmaVersion){this.next();for(var p=this.start,c=this.startLoc,_=[],w=!0,f={shorthandAssign:0,trailingComma:0},g=void 0,y=void 0;this.type!==o.types.parenR;)if(w?w=!1:this.expect(o.types.comma),this.type===o.types.ellipsis){g=this.start,_.push(this.parseParenItem(this.parseRest()));break}else this.type!==o.types.parenL||y||(y=this.start),_.push(this.parseMaybeAssign(!1,f,this.parseParenItem));var w=this.start,M=this.startLoc;if(this.expect(o.types.parenR),u&&!this.canInsertSemicolon()&&this.eat(o.types.arrow))return this.checkPatternErrors(f,!0),y&&this.unexpected(y),this.parseParenArrowList(l,v,_);_.length||this.unexpected(this.lastTokStart),g&&this.unexpected(g),this.checkExpressionErrors(f,!0),1<_.length?(u=this.startNodeAt(p,c),u.expressions=_,this.finishNodeAt(u,"SequenceExpression",w,M)):u=_[0]}else u=this.parseParenExpression();return this.options.preserveParens?(l=this.startNodeAt(l,v),l.expression=u,this.finishNode(l,"ParenthesizedExpression")):u},e.parseParenItem=function(u){return u},e.parseParenArrowList=function(u,l,v){return this.parseArrowExpression(this.startNodeAt(u,l),v)};var a=[];e.parseNew=function(){var u=this.startNode(),l=this.parseIdent(!0);if(6<=this.options.ecmaVersion&&this.eat(o.types.dot))return u.meta=l,u.property=this.parseIdent(!0),u.property.name!=="target"&&this.raiseRecoverable(u.property.start,"The only valid meta property for new is new.target"),this.inFunction||this.raiseRecoverable(u.start,"new.target can only be used in functions"),this.finishNode(u,"MetaProperty");var l=this.start,v=this.startLoc;return u.callee=this.parseSubscripts(this.parseExprAtom(),l,v,!0),this.eat(o.types.parenL)?u.arguments=this.parseExprList(o.types.parenR,!1):u.arguments=a,this.finishNode(u,"NewExpression")},e.parseTemplateElement=function(){var u=this.startNode();return u.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,` `),cooked:this.value},this.next(),u.tail=this.type===o.types.backQuote,this.finishNode(u,"TemplateElement")},e.parseTemplate=function(){var u=this.startNode();this.next(),u.expressions=[];var l=this.parseTemplateElement();for(u.quasis=[l];!l.tail;)this.expect(o.types.dollarBraceL),u.expressions.push(this.parseExpression()),this.expect(o.types.braceR),u.quasis.push(l=this.parseTemplateElement());return this.next(),this.finishNode(u,"TemplateLiteral")},e.parseObj=function(u,l){var v=this.startNode(),p=!0,c={};for(v.properties=[],this.next();!this.eat(o.types.braceR);){if(p)p=!1;else if(this.expect(o.types.comma),this.afterTrailingComma(o.types.braceR))break;var _=this.startNode(),f=void 0,g=void 0,y=void 0;6<=this.options.ecmaVersion&&(_.method=!1,_.shorthand=!1,(u||l)&&(g=this.start,y=this.startLoc),u||(f=this.eat(o.types.star))),this.parsePropertyName(_),this.parsePropertyValue(_,u,f,g,y,l),this.checkPropClash(_,c),v.properties.push(this.finishNode(_,"Property"))}return this.finishNode(v,u?"ObjectPattern":"ObjectExpression")},e.parsePropertyValue=function(u,l,v,p,c,_){this.eat(o.types.colon)?(u.value=l?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,_),u.kind="init"):6<=this.options.ecmaVersion&&this.type===o.types.parenL?(l&&this.unexpected(),u.kind="init",u.method=!0,u.value=this.parseMethod(v)):5<=this.options.ecmaVersion&&!u.computed&&u.key.type==="Identifier"&&(u.key.name==="get"||u.key.name==="set")&&this.type!=o.types.comma&&this.type!=o.types.braceR?((v||l)&&this.unexpected(),u.kind=u.key.name,this.parsePropertyName(u),u.value=this.parseMethod(!1),u.value.params.length!==(u.kind==="get"?0:1)&&(l=u.value.start,u.kind==="get"?this.raiseRecoverable(l,"getter should have no params"):this.raiseRecoverable(l,"setter should have exactly one param")),u.kind==="set"&&u.value.params[0].type==="RestElement"&&this.raiseRecoverable(u.value.params[0].start,"Setter cannot use rest params")):6<=this.options.ecmaVersion&&!u.computed&&u.key.type==="Identifier"?(u.kind="init",l?((this.keywords.test(u.key.name)||(this.strict?this.reservedWordsStrictBind:this.reservedWords).test(u.key.name)||this.inGenerator&&u.key.name=="yield")&&this.raiseRecoverable(u.key.start,"Binding "+u.key.name),u.value=this.parseMaybeDefault(p,c,u.key)):this.type===o.types.eq&&_?(_.shorthandAssign||(_.shorthandAssign=this.start),u.value=this.parseMaybeDefault(p,c,u.key)):u.value=u.key,u.shorthand=!0):this.unexpected()},e.parsePropertyName=function(u){if(6<=this.options.ecmaVersion){if(this.eat(o.types.bracketL))return u.computed=!0,u.key=this.parseMaybeAssign(),this.expect(o.types.bracketR),u.key;u.computed=!1}return u.key=this.type===o.types.num||this.type===o.types.string?this.parseExprAtom():this.parseIdent(!0)},e.initFunction=function(u){u.id=null,6<=this.options.ecmaVersion&&(u.generator=!1,u.expression=!1)},e.parseMethod=function(u){var l=this.startNode(),v=this.inGenerator;return this.inGenerator=u,this.initFunction(l),this.expect(o.types.parenL),l.params=this.parseBindingList(o.types.parenR,!1,!1),6<=this.options.ecmaVersion&&(l.generator=u),this.parseFunctionBody(l,!1),this.inGenerator=v,this.finishNode(l,"FunctionExpression")},e.parseArrowExpression=function(u,l){var v=this.inGenerator;return this.inGenerator=!1,this.initFunction(u),u.params=this.toAssignableList(l,!0),this.parseFunctionBody(u,!0),this.inGenerator=v,this.finishNode(u,"ArrowFunctionExpression")},e.parseFunctionBody=function(u,l){var v=l&&this.type!==o.types.braceL;if(v)u.body=this.parseMaybeAssign(),u.expression=!0;else{var p=this.inFunction,c=this.labels;this.inFunction=!0,this.labels=[],u.body=this.parseBlock(!0),u.expression=!1,this.inFunction=p,this.labels=c}this.strict||!v&&u.body.body.length&&this.isUseStrict(u.body.body[0])?(v=this.strict,this.strict=!0,u.id&&this.checkLVal(u.id,!0),this.checkParams(u),this.strict=v):l&&this.checkParams(u)},e.checkParams=function(u){for(var l={},v=0;vp)return!1;if(_+=c[f+1],_>=p)return!0}}s.__esModule=!0,s.isIdentifierStart=function(p,c){return 65>p?p===36:91>p?!0:97>p?p===95:123>p?!0:65535>=p?170<=p&&a.test(String.fromCharCode(p)):c===!1?!1:o(p,l)},s.isIdentifierChar=function(p,c){return 48>p?p===36:58>p?!0:65>p?!1:91>p?!0:97>p?p===95:123>p?!0:65535>=p?170<=p&&u.test(String.fromCharCode(p)):c===!1?!1:o(p,l)||o(p,v)},s.reservedWords={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",7:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},s.keywords={5:"break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",6:"break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this const class extends export import super"},e="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC";var a=new RegExp("["+e+"]"),u=new RegExp("["+e+"\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F1\uA900-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F]");e=null;var l=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,17,26,6,37,11,29,3,35,5,7,2,4,43,157,99,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,26,45,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,785,52,76,44,33,24,27,35,42,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,287,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,86,25,391,63,32,0,449,56,1288,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,881,68,12,0,67,12,16481,1,3071,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,4149,196,1340,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42710,42,4148,12,221,3,5761,10591,541],v=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,1306,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,52,0,13,2,49,13,10,2,4,9,83,11,168,11,6,9,7,3,57,0,2,6,3,1,3,2,10,0,11,1,3,6,4,4,316,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,423,9,20855,9,135,4,60,6,26,9,1016,45,17,3,19723,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,3617,6,792618,239]},{}],3:[function(e,r,s){s.__esModule=!0,s.parse=function(a,u){return new o.Parser(u,a).parse()},s.parseExpressionAt=function(a,u,l){return a=new o.Parser(l,a,u),a.nextToken(),a.parseExpression()},s.tokenizer=function(a,u){return new o.Parser(u,a)};var o=e("./state");e("./parseutil"),e("./statement"),e("./lval"),e("./expression"),e("./location"),s.Parser=o.Parser,s.plugins=o.plugins,r=e("./options"),s.defaultOptions=r.defaultOptions,r=e("./locutil"),s.Position=r.Position,s.SourceLocation=r.SourceLocation,s.getLineInfo=r.getLineInfo,r=e("./node"),s.Node=r.Node,r=e("./tokentype"),s.TokenType=r.TokenType,s.tokTypes=r.types,r=e("./tokencontext"),s.TokContext=r.TokContext,s.tokContexts=r.types,r=e("./identifier"),s.isIdentifierChar=r.isIdentifierChar,s.isIdentifierStart=r.isIdentifierStart,r=e("./tokenize"),s.Token=r.Token,e=e("./whitespace"),s.isNewLine=e.isNewLine,s.lineBreak=e.lineBreak,s.lineBreakG=e.lineBreakG,s.version="3.1.0"},{"./expression":1,"./identifier":2,"./location":4,"./locutil":5,"./lval":6,"./node":7,"./options":8,"./parseutil":9,"./state":10,"./statement":11,"./tokencontext":12,"./tokenize":13,"./tokentype":14,"./whitespace":16}],4:[function(e,r,s){r=e("./state");var o=e("./locutil");e=r.Parser.prototype,e.raise=function(a,u){var l=o.getLineInfo(this.input,a);u+=" ("+l.line+":"+l.column+")";var v=new SyntaxError(u);throw v.pos=a,v.loc=l,v.raisedAt=this.pos,v},e.raiseRecoverable=e.raise,e.curPosition=function(){if(this.options.locations)return new o.Position(this.curLine,this.pos-this.lineStart)}},{"./locutil":5,"./state":10}],5:[function(e,r,s){function o(l,v){if(!(l instanceof v))throw new TypeError("Cannot call a class as a function")}s.__esModule=!0,s.getLineInfo=function(l,v){for(var p=1,c=0;;){a.lineBreakG.lastIndex=c;var _=a.lineBreakG.exec(l);if(_&&_.indexthis.options.ecmaVersion||this.value!="let")return!1;a.skipWhiteSpace.lastIndex=this.pos;var c=a.skipWhiteSpace.exec(this.input),c=this.pos+c[0].length,_=this.input.charCodeAt(c);if(_===91||_==123)return!0;if(u.isIdentifierStart(_,!0)){for(_=c+1;u.isIdentifierChar(this.input.charCodeAt(_,!0));++_);if(c=this.input.slice(c,_),!this.isKeyword(c))return!0}return!1},e.parseStatement=function(c,_){var f=this.type,g=this.startNode(),y=void 0;switch(this.isLet()&&(f=o.types._var,y="let"),f){case o.types._break:case o.types._continue:return this.parseBreakContinueStatement(g,f.keyword);case o.types._debugger:return this.parseDebuggerStatement(g);case o.types._do:return this.parseDoStatement(g);case o.types._for:return this.parseForStatement(g);case o.types._function:return!c&&6<=this.options.ecmaVersion&&this.unexpected(),this.parseFunctionStatement(g);case o.types._class:return c||this.unexpected(),this.parseClass(g,!0);case o.types._if:return this.parseIfStatement(g);case o.types._return:return this.parseReturnStatement(g);case o.types._switch:return this.parseSwitchStatement(g);case o.types._throw:return this.parseThrowStatement(g);case o.types._try:return this.parseTryStatement(g);case o.types._const:case o.types._var:return y=y||this.value,c||y=="var"||this.unexpected(),this.parseVarStatement(g,y);case o.types._while:return this.parseWhileStatement(g);case o.types._with:return this.parseWithStatement(g);case o.types.braceL:return this.parseBlock();case o.types.semi:return this.parseEmptyStatement(g);case o.types._export:case o.types._import:return this.options.allowImportExportEverywhere||(_||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),f===o.types._import?this.parseImport(g):this.parseExport(g);default:var y=this.value,w=this.parseExpression();return f===o.types.name&&w.type==="Identifier"&&this.eat(o.types.colon)?this.parseLabeledStatement(g,y,w):this.parseExpressionStatement(g,w)}},e.parseBreakContinueStatement=function(c,_){var f=_=="break";this.next(),this.eat(o.types.semi)||this.insertSemicolon()?c.label=null:this.type!==o.types.name?this.unexpected():(c.label=this.parseIdent(),this.semicolon());for(var g=0;g=g?String.fromCharCode(g):(g-=65536,String.fromCharCode((g>>10)+55296,(g&1023)+56320))}s.__esModule=!0;var u=e("./identifier"),l=e("./tokentype");r=e("./state");var v=e("./locutil"),p=e("./whitespace"),c=function g(y){if(!(this instanceof g))throw new TypeError("Cannot call a class as a function");this.type=y.type,this.value=y.value,this.start=y.start,this.end=y.end,y.options.locations&&(this.loc=new v.SourceLocation(y,y.startLoc,y.endLoc)),y.options.ranges&&(this.range=[y.start,y.end])};s.Token=c,e=r.Parser.prototype;var _=typeof Packages=="object"&&Object.prototype.toString.call(Packages)=="[object JavaPackage]";e.next=function(){this.options.onToken&&this.options.onToken(new c(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},e.getToken=function(){return this.next(),new c(this)},typeof Symbol!="undefined"&&(e[Symbol.iterator]=function(){var g=this;return{next:function(){var y=g.getToken();return{done:y.type===l.types.eof,value:y}}}}),e.setStrict=function(g){if(this.strict=g,this.type===l.types.num||this.type===l.types.string){if(this.pos=this.start,this.options.locations)for(;this.pos=this.input.length)return this.finishToken(l.types.eof);if(g.override)return g.override(this);this.readToken(this.fullCharCodeAtPos())},e.readToken=function(g){return u.isIdentifierStart(g,6<=this.options.ecmaVersion)||g===92?this.readWord():this.getTokenFromCode(g)},e.fullCharCodeAtPos=function(){var g=this.input.charCodeAt(this.pos);if(55295>=g||57344<=g)return g;var y=this.input.charCodeAt(this.pos+1);return(g<<10)+y-56613888},e.skipBlockComment=function(){var g=this.options.onComment&&this.curPosition(),y=this.pos,w=this.input.indexOf("*/",this.pos+=2);if(w===-1&&this.raise(this.pos-2,"Unterminated comment"),this.pos=w+2,this.options.locations){p.lineBreakG.lastIndex=y;for(var M=void 0;(M=p.lineBreakG.exec(this.input))&&M.indexg||5760<=g&&p.nonASCIIwhitespace.test(String.fromCharCode(g)))++this.pos;else break e}}},e.finishToken=function(g,y){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var w=this.type;this.type=g,this.value=y,this.updateContext(w)},e.readToken_dot=function(){var g=this.input.charCodeAt(this.pos+1);if(48<=g&&57>=g)return this.readNumber(!0);var y=this.input.charCodeAt(this.pos+2);return 6<=this.options.ecmaVersion&&g===46&&y===46?(this.pos+=3,this.finishToken(l.types.ellipsis)):(++this.pos,this.finishToken(l.types.dot))},e.readToken_slash=function(){var g=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):g===61?this.finishOp(l.types.assign,2):this.finishOp(l.types.slash,1)},e.readToken_mult_modulo_exp=function(g){var y=this.input.charCodeAt(this.pos+1),w=1;return g=g===42?l.types.star:l.types.modulo,7<=this.options.ecmaVersion&&y===42&&(++w,g=l.types.starstar,y=this.input.charCodeAt(this.pos+2)),y===61?this.finishOp(l.types.assign,w+1):this.finishOp(g,w)},e.readToken_pipe_amp=function(g){var y=this.input.charCodeAt(this.pos+1);return y===g?this.finishOp(g===124?l.types.logicalOR:l.types.logicalAND,2):y===61?this.finishOp(l.types.assign,2):this.finishOp(g===124?l.types.bitwiseOR:l.types.bitwiseAND,1)},e.readToken_caret=function(){return this.input.charCodeAt(this.pos+1)===61?this.finishOp(l.types.assign,2):this.finishOp(l.types.bitwiseXOR,1)},e.readToken_plus_min=function(g){var y=this.input.charCodeAt(this.pos+1);return y===g?y==45&&this.input.charCodeAt(this.pos+2)==62&&p.lineBreak.test(this.input.slice(this.lastTokEnd,this.pos))?(this.skipLineComment(3),this.skipSpace(),this.nextToken()):this.finishOp(l.types.incDec,2):y===61?this.finishOp(l.types.assign,2):this.finishOp(l.types.plusMin,1)},e.readToken_lt_gt=function(g){var y=this.input.charCodeAt(this.pos+1),w=1;return y===g?(w=g===62&&this.input.charCodeAt(this.pos+2)===62?3:2,this.input.charCodeAt(this.pos+w)===61?this.finishOp(l.types.assign,w+1):this.finishOp(l.types.bitShift,w)):y==33&&g==60&&this.input.charCodeAt(this.pos+2)==45&&this.input.charCodeAt(this.pos+3)==45?(this.inModule&&this.unexpected(),this.skipLineComment(4),this.skipSpace(),this.nextToken()):(y===61&&(w=2),this.finishOp(l.types.relational,w))},e.readToken_eq_excl=function(g){var y=this.input.charCodeAt(this.pos+1);return y===61?this.finishOp(l.types.equality,this.input.charCodeAt(this.pos+2)===61?3:2):g===61&&y===62&&6<=this.options.ecmaVersion?(this.pos+=2,this.finishToken(l.types.arrow)):this.finishOp(g===61?l.types.eq:l.types.prefix,1)},e.getTokenFromCode=function(g){switch(g){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(l.types.parenL);case 41:return++this.pos,this.finishToken(l.types.parenR);case 59:return++this.pos,this.finishToken(l.types.semi);case 44:return++this.pos,this.finishToken(l.types.comma);case 91:return++this.pos,this.finishToken(l.types.bracketL);case 93:return++this.pos,this.finishToken(l.types.bracketR);case 123:return++this.pos,this.finishToken(l.types.braceL);case 125:return++this.pos,this.finishToken(l.types.braceR);case 58:return++this.pos,this.finishToken(l.types.colon);case 63:return++this.pos,this.finishToken(l.types.question);case 96:if(6>this.options.ecmaVersion)break;return++this.pos,this.finishToken(l.types.backQuote);case 48:if(g=this.input.charCodeAt(this.pos+1),g===120||g===88)return this.readRadixNumber(16);if(6<=this.options.ecmaVersion){if(g===111||g===79)return this.readRadixNumber(8);if(g===98||g===66)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(g);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(g);case 124:case 38:return this.readToken_pipe_amp(g);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(g);case 60:case 62:return this.readToken_lt_gt(g);case 61:case 33:return this.readToken_eq_excl(g);case 126:return this.finishOp(l.types.prefix,1)}this.raise(this.pos,"Unexpected character '"+a(g)+"'")},e.finishOp=function(g,y){var w=this.input.slice(this.pos,this.pos+y);return this.pos+=y,this.finishToken(g,w)};var f=!!o("\uFFFF","u");e.readRegexp=function(){for(var g=this,y=void 0,w=void 0,M=this.pos;;){this.pos>=this.input.length&&this.raise(M,"Unterminated regular expression");var T=this.input.charAt(this.pos);if(p.lineBreak.test(T)&&this.raise(M,"Unterminated regular expression"),y)y=!1;else{if(T==="[")w=!0;else if(T==="]"&&w)w=!1;else if(T==="/"&&!w)break;y=T==="\\"}++this.pos}if(y=this.input.slice(M,this.pos),++this.pos,w=this.readWord1(),T=y,w){var B=/^[gim]*$/;6<=this.options.ecmaVersion&&(B=/^[gimuy]*$/),B.test(w)||this.raise(M,"Invalid regular expression flag"),0<=w.indexOf("u")&&!f&&(T=T.replace(/\\u\{([0-9a-fA-F]+)\}/g,function(H,J,Q){return J=Number("0x"+J),1114111=H?H-48:Infinity;if(H>=g)break;++this.pos,M=M*g+H}return this.pos===w||y!=null&&this.pos-w!==y?null:M},e.readRadixNumber=function(g){this.pos+=2;var y=this.readInt(g);return y==null&&this.raise(this.start+2,"Expected number in radix "+g),u.isIdentifierStart(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(l.types.num,y)},e.readNumber=function(g){var y=this.pos,w=!1,M=this.input.charCodeAt(this.pos)===48;g||this.readInt(10)!==null||this.raise(y,"Invalid number"),g=this.input.charCodeAt(this.pos),g===46&&(++this.pos,this.readInt(10),w=!0,g=this.input.charCodeAt(this.pos)),(g===69||g===101)&&(g=this.input.charCodeAt(++this.pos),g!==43&&g!==45||++this.pos,this.readInt(10)===null&&this.raise(y,"Invalid number"),w=!0),u.isIdentifierStart(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),g=this.input.slice(y,this.pos);var T=void 0;return w?T=parseFloat(g):M&&g.length!==1?/[89]/.test(g)||this.strict?this.raise(y,"Invalid number"):T=parseInt(g,8):T=parseInt(g,10),this.finishToken(l.types.num,T)},e.readCodePoint=function(){if(this.input.charCodeAt(this.pos)===123){6>this.options.ecmaVersion&&this.unexpected();var g=++this.pos,y=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos);++this.pos,1114111=this.input.length&&this.raise(this.start,"Unterminated string constant");var M=this.input.charCodeAt(this.pos);if(M===g)break;M===92?(y+=this.input.slice(w,this.pos),y+=this.readEscapedChar(!1),w=this.pos):(p.isNewLine(M)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return y+=this.input.slice(w,this.pos++),this.finishToken(l.types.string,y)},e.readTmplToken=function(){for(var g="",y=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var w=this.input.charCodeAt(this.pos);if(w===96||w===36&&this.input.charCodeAt(this.pos+1)===123)return this.pos===this.start&&this.type===l.types.template?w===36?(this.pos+=2,this.finishToken(l.types.dollarBraceL)):(++this.pos,this.finishToken(l.types.backQuote)):(g+=this.input.slice(y,this.pos),this.finishToken(l.types.template,g));if(w===92)g+=this.input.slice(y,this.pos),g+=this.readEscapedChar(!0),y=this.pos;else if(p.isNewLine(w)){switch(g+=this.input.slice(y,this.pos),++this.pos,w){case 13:this.input.charCodeAt(this.pos)===10&&++this.pos;case 10:g+=` `;break;default:g+=String.fromCharCode(w)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),y=this.pos}else++this.pos}},e.readEscapedChar=function(g){var y=this.input.charCodeAt(++this.pos);switch(++this.pos,y){case 110:return` `;case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return a(this.readCodePoint());case 116:return" ";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:this.input.charCodeAt(this.pos)===10&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),"";default:if(48<=y&&55>=y){var y=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],w=parseInt(y,8);return 255=T?1:2;else if(T===92)this.containsEsc=!0,g+=this.input.slice(w,this.pos),w=this.pos,this.input.charCodeAt(++this.pos)!=117&&this.raise(this.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.pos,T=this.readCodePoint(),(y?u.isIdentifierStart:u.isIdentifierChar)(T,M)||this.raise(w,"Invalid Unicode escape"),g+=a(T),w=this.pos;else break;y=!1}return g+this.input.slice(w,this.pos)},e.readWord=function(){var g=this.readWord1(),y=l.types.name;return(6<=this.options.ecmaVersion||!this.containsEsc)&&this.keywords.test(g)&&(y=l.keywords[g]),this.finishToken(y,g)}},{"./identifier":2,"./locutil":5,"./state":10,"./tokentype":14,"./whitespace":16}],14:[function(e,r,s){function o(p,c){return new u(p,{beforeExpr:!0,binop:c})}function a(p){var c=1>=arguments.length||arguments[1]===void 0?{}:arguments[1];c.keyword=p,v[p]=l["_"+p]=new u(p,c)}s.__esModule=!0;var u=function p(c){var _=1>=arguments.length||arguments[1]===void 0?{}:arguments[1];if(!(this instanceof p))throw new TypeError("Cannot call a class as a function");this.label=c,this.keyword=_.keyword,this.beforeExpr=!!_.beforeExpr,this.startsExpr=!!_.startsExpr,this.isLoop=!!_.isLoop,this.isAssign=!!_.isAssign,this.prefix=!!_.prefix,this.postfix=!!_.postfix,this.binop=_.binop||null,this.updateContext=null};s.TokenType=u,e={beforeExpr:!0},r={startsExpr:!0};var l={num:new u("num",r),regexp:new u("regexp",r),string:new u("string",r),name:new u("name",r),eof:new u("eof"),bracketL:new u("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new u("]"),braceL:new u("{",{beforeExpr:!0,startsExpr:!0}),braceR:new u("}"),parenL:new u("(",{beforeExpr:!0,startsExpr:!0}),parenR:new u(")"),comma:new u(",",e),semi:new u(";",e),colon:new u(":",e),dot:new u("."),question:new u("?",e),arrow:new u("=>",e),template:new u("template"),ellipsis:new u("...",e),backQuote:new u("`",r),dollarBraceL:new u("${",{beforeExpr:!0,startsExpr:!0}),eq:new u("=",{beforeExpr:!0,isAssign:!0}),assign:new u("_=",{beforeExpr:!0,isAssign:!0}),incDec:new u("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new u("prefix",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:o("||",1),logicalAND:o("&&",2),bitwiseOR:o("|",3),bitwiseXOR:o("^",4),bitwiseAND:o("&",5),equality:o("==/!=",6),relational:o("",7),bitShift:o("<>",8),plusMin:new u("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:o("%",10),star:o("*",10),slash:o("/",10),starstar:new u("**",{beforeExpr:!0})};s.types=l;var v={};s.keywords=v,a("break"),a("case",e),a("catch"),a("continue"),a("debugger"),a("default",e),a("do",{isLoop:!0,beforeExpr:!0}),a("else",e),a("finally"),a("for",{isLoop:!0}),a("function",r),a("if"),a("return",e),a("switch"),a("throw",e),a("try"),a("var"),a("const"),a("while",{isLoop:!0}),a("with"),a("new",{beforeExpr:!0,startsExpr:!0}),a("this",r),a("super",r),a("class"),a("extends",e),a("export"),a("import"),a("null",r),a("true",r),a("false",r),a("in",{beforeExpr:!0,binop:7}),a("instanceof",{beforeExpr:!0,binop:7}),a("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),a("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),a("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},{}],15:[function(e,r,s){s.__esModule=!0,s.isArray=function(o){return Object.prototype.toString.call(o)==="[object Array]"},s.has=function(o,a){return Object.prototype.hasOwnProperty.call(o,a)}},{}],16:[function(e,r,s){s.__esModule=!0,s.isNewLine=function(o){return o===10||o===13||o===8232||o==8233},e=/\r\n?|\n|\u2028|\u2029/,s.lineBreak=e,s.lineBreakG=new RegExp(e.source,"g"),s.nonASCIIwhitespace=/[\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff]/,s.skipWhiteSpace=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g},{}]},{},[3])(3)});var UPNG={};UPNG.toRGBA8=function(e){var r=e.width,s=e.height;if(e.tabs.acTL==null)return[UPNG.toRGBA8.decodeImage(e.data,r,s,e).buffer];var o=[];e.frames[0].data==null&&(e.frames[0].data=e.data);for(var a=r*s*4,u=new Uint8Array(a),l=new Uint8Array(a),v=new Uint8Array(a),p=0;p>3)]>>7-((w&7)<<0)&1,oe=3*re;v[Q]=q[oe],v[Q+1]=q[oe+1],v[Q+2]=q[oe+2],v[Q+3]=re>2)]>>6-((w&3)<<1)&3,oe=3*re;v[Q]=q[oe],v[Q+1]=q[oe+1],v[Q+2]=q[oe+2],v[Q+3]=re>1)]>>4-((w&1)<<2)&15,oe=3*re;v[Q]=q[oe],v[Q+1]=q[oe+1],v[Q+2]=q[oe+2],v[Q+3]=re>>3)]>>>7-(ne&7)&1),_e=ue==B*255?0:255;p[ee+ne]=_e<<24|ue<<16|ue<<8|ue}else if(_==2)for(var ne=0;ne>>2)]>>>6-((ne&3)<<1)&3),_e=ue==B*85?0:255;p[ee+ne]=_e<<24|ue<<16|ue<<8|ue}else if(_==4)for(var ne=0;ne>>1)]>>>4-((ne&1)<<2)&15),_e=ue==B*17?0:255;p[ee+ne]=_e<<24|ue<<16|ue<<8|ue}else if(_==8)for(var ne=0;ne>>2<<3));a==0;){if(a=T(r,g,1),u=T(r,g+1,2),g+=3,u==0){(g&7)!=0&&(g+=8-(g&7));var pe=(g>>>3)+4,R=r[pe-4]|r[pe-3]<<8;K&&(s=e.H.W(s,f+R)),s.set(new o(r.buffer,r.byteOffset+pe,R),f),g=pe+R<<3,f+=R;continue}if(K&&(s=e.H.W(s,f+(1<<17))),u==1&&(y=O.J,w=O.h,c=(1<<9)-1,_=(1<<5)-1),u==2){l=B(r,g,5)+257,v=B(r,g+5,5)+1,p=B(r,g+10,4)+4,g+=14;for(var Te=g,re=1,oe=0;oe<38;oe+=2)O.Q[oe]=0,O.Q[oe+1]=0;for(var oe=0;oere&&(re=me)}g+=3*p,J(O.Q,re),Q(O.Q,re,O.u),y=O.w,w=O.d,g=H(O.u,(1<>>4;if(ne>>>8==0)s[f++]=ne;else{if(ne==256)break;var _e=f+ne-254;if(ne>264){var ae=O.q[ne-257];_e=f+(ae>>>3)+B(r,g,ae&7),g+=ae&7}var Me=w[q(r,g)&_];g+=Me&15;var Ne=Me>>>4,Ae=O.c[Ne],Fe=(Ae>>>4)+T(r,g,Ae&15);for(g+=Ae&15;f<_e;)s[f]=s[f++-Fe],s[f]=s[f++-Fe],s[f]=s[f++-Fe],s[f]=s[f++-Fe];f=_e}}}return s.length==f?s:s.slice(0,f)},e.H.W=function(r,s){var o=r.length;if(s<=o)return r;var a=new Uint8Array(o<<1);return a.set(r,0),a},e.H.R=function(r,s,o,a,u,l){for(var v=e.H.e,p=e.H.Z,c=0;c>>4;if(f<=15)l[c]=f,c++;else{var g=0,y=0;f==16?(y=3+v(a,u,2),u+=2,g=l[c-1]):f==17?(y=3+v(a,u,3),u+=3):f==18&&(y=11+v(a,u,7),u+=7);for(var w=c+y;c>>1;lu&&(u=p),l++}for(;l>1,c=r[v+1],_=p<<4|c,f=s-c,g=r[v]<>>15-s;o[w]=_,g++}},e.H.l=function(r,s){for(var o=e.H.m.r,a=15-s,u=0;u>>a}},e.H.M=function(r,s,o){o=o<<(s&7);var a=s>>>3;r[a]|=o,r[a+1]|=o>>>8},e.H.I=function(r,s,o){o=o<<(s&7);var a=s>>>3;r[a]|=o,r[a+1]|=o>>>8,r[a+2]|=o>>>16},e.H.e=function(r,s,o){return(r[s>>>3]|r[(s>>>3)+1]<<8)>>>(s&7)&(1<>>3]|r[(s>>>3)+1]<<8|r[(s>>>3)+2]<<16)>>>(s&7)&(1<>>3]|r[(s>>>3)+1]<<8|r[(s>>>3)+2]<<16)>>>(s&7)},e.H.i=function(r,s){return(r[s>>>3]|r[(s>>>3)+1]<<8|r[(s>>>3)+2]<<16|r[(s>>>3)+3]<<24)>>>(s&7)},e.H.m=function(){var r=Uint16Array,s=Uint32Array;return{K:new r(16),j:new r(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 r(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 s(32),J:new r(512),_:[],h:new r(32),$:[],w:new r(32768),C:[],v:[],d:new r(32768),D:[],u:new r(512),Q:[],r:new r(1<<15),s:new s(286),Y:new s(30),a:new s(19),t:new s(15e3),k:new r(1<<16),g:new r(1<<15)}}(),function(){for(var r=e.H.m,s=1<<15,o=0;o>>1|(a&1431655765)<<1,a=(a&3435973836)>>>2|(a&858993459)<<2,a=(a&4042322160)>>>4|(a&252645135)<<4,a=(a&4278255360)>>>8|(a&16711935)<<8,r.r[o]=(a>>>16|a<<16)>>>17}function u(l,v,p){for(;v--!=0;)l.push(0,p)}for(var o=0;o<32;o++)r.q[o]=r.S[o]<<3|r.T[o],r.c[o]=r.p[o]<<4|r.z[o];u(r._,144,8),u(r._,255-143,9),u(r._,279-255,7),u(r._,287-279,8),e.H.n(r._,9),e.H.A(r._,9,r.J),e.H.l(r._,9),u(r.$,32,5),e.H.n(r.$,5),e.H.A(r.$,5,r.h),e.H.l(r.$,5),u(r.Q,19,0),u(r.C,286,0),u(r.D,30,0),u(r.v,320,0)}(),e.H.N}(),UPNG.decode._readInterlace=function(e,r){for(var s=r.width,o=r.height,a=UPNG.decode._getBPP(r),u=a>>3,l=Math.ceil(s*a/8),v=new Uint8Array(o*l),p=0,c=[0,0,4,0,2,0,1],_=[0,4,0,2,0,1,0],f=[8,8,8,4,4,2,2],g=[8,8,4,4,2,2,1],y=0;y<7;){for(var w=f[y],M=g[y],T=0,B=0,H=c[y];H>3];R=R>>7-(pe&7)&1,v[O*l+(K>>3)]|=R<<7-((K&7)<<0)}if(a==2){var R=e[pe>>3];R=R>>6-(pe&7)&3,v[O*l+(K>>2)]|=R<<6-((K&3)<<1)}if(a==4){var R=e[pe>>3];R=R>>4-(pe&7)&15,v[O*l+(K>>1)]|=R<<4-((K&1)<<2)}if(a>=8)for(var Te=O*l+K*u,re=0;re>3)+re];pe+=a,K+=M}q++,O+=w}T*B!=0&&(p+=B*(1+Q)),y=y+1}return v},UPNG.decode._getBPP=function(e){var r=[1,null,3,1,2,null,4][e.ctype];return r*e.depth},UPNG.decode._filterZero=function(e,r,s,o,a){var u=UPNG.decode._getBPP(r),l=Math.ceil(o*u/8),v=UPNG.decode._paeth;u=Math.ceil(u/8);var p=0,c=1,_=e[s],f=0;if(_>1&&(e[s]=[0,0,1][_-2]),_==3)for(f=u;f>>1)&255;for(var g=0;g>>1);for(;f>>1)}else{for(;f>8&255,e[r+1]=s&255},readUint:function(e,r){return e[r]*(256*256*256)+(e[r+1]<<16|e[r+2]<<8|e[r+3])},writeUint:function(e,r,s){e[r]=s>>24&255,e[r+1]=s>>16&255,e[r+2]=s>>8&255,e[r+3]=s&255},readASCII:function(e,r,s){for(var o="",a=0;a=0&&v>=0?(f=y*r+w<<2,g=(v+y)*a+l+w<<2):(f=(-v+y)*r-l+w<<2,g=y*a+w<<2),p==0)o[g]=e[f],o[g+1]=e[f+1],o[g+2]=e[f+2],o[g+3]=e[f+3];else if(p==1){var M=e[f+3]*(1/255),T=e[f]*M,B=e[f+1]*M,H=e[f+2]*M,J=o[g+3]*(1/255),Q=o[g]*J,q=o[g+1]*J,O=o[g+2]*J,K=1-M,pe=M+J*K,R=pe==0?0:1/pe;o[g+3]=255*pe,o[g+0]=(T+Q*K)*R,o[g+1]=(B+q*K)*R,o[g+2]=(H+O*K)*R}else if(p==2){var M=e[f+3],T=e[f],B=e[f+1],H=e[f+2],J=o[g+3],Q=o[g],q=o[g+1],O=o[g+2];M==J&&T==Q&&B==q&&H==O?(o[g]=0,o[g+1]=0,o[g+2]=0,o[g+3]=0):(o[g]=T,o[g+1]=B,o[g+2]=H,o[g+3]=M)}else if(p==3){var M=e[f+3],T=e[f],B=e[f+1],H=e[f+2],J=o[g+3],Q=o[g],q=o[g+1],O=o[g+2];if(M==J&&T==Q&&B==q&&H==O)continue;if(M<220&&J>20)return!1}return!0},UPNG.encode=function(e,r,s,o,a,u,l){o==null&&(o=0),l==null&&(l=!1);var v=UPNG.encode.compress(e,r,s,o,[!1,!1,!1,0,l]);return UPNG.encode.compressPNG(v,-1),UPNG.encode._main(v,r,s,a,u)},UPNG.encodeLL=function(e,r,s,o,a,u,l,v){for(var p={ctype:0+(o==1?0:2)+(a==0?0:4),depth:u,frames:[]},c=Date.now(),_=(o+a)*u,f=_*r,g=0;g1,f=!1,g=8+(16+5+4)+(_?20:0);if(a.sRGB!=null&&(g+=8+1+4),a.pHYs!=null&&(g+=8+9+4),e.ctype==3){for(var y=e.plte.length,w=0;w>>24!=255&&(f=!0);g+=8+y*3+4+(f?8+y*1+4:0)}for(var M=0;M>>8&255,K=Q>>>16&255;B[c+J+0]=q,B[c+J+1]=O,B[c+J+2]=K}if(c+=y*3,l(B,c,u(B,c-y*3-4,y*3+4)),c+=4,f){l(B,c,y),c+=4,p(B,c,"tRNS"),c+=4;for(var w=0;w>>24&255;c+=y,l(B,c,u(B,c-y-4,y+4)),c+=4}}for(var pe=0,M=0;M>2,oe>>2));for(var y=0;y$&&ne==ue[T-$])ee[T]=ee[T-$];else{var _e=J[ne];if(_e==null&&(J[ne]=_e=Q.length,Q.push(ne),Q.length>=300))break;ee[T]=_e}}}var ae=Q.length;ae<=256&&c==!1&&(ae<=2?f=1:ae<=4?f=2:ae<=16?f=4:f=8,f=Math.max(f,p));for(var y=0;y>1)]|=ke[Ce+Be]<<4-(Be&1)*4;else if(f==2)for(var Be=0;Be<$;Be++)he[T+(Be>>2)]|=ke[Ce+Be]<<6-(Be&3)*2;else if(f==1)for(var Be=0;Be<$;Be++)he[T+(Be>>3)]|=ke[Ce+Be]<<7-(Be&7)*1}Fe=he,_=3,ye=1}else if(B==!1&&H.length==1){for(var he=new Uint8Array($*Ae*3),we=$*Ae,T=0;TK&&(K=Te),Rpe&&(pe=R))}K==-1&&(q=O=K=pe=0),a&&((q&1)==1&&q--,(O&1)==1&&O--);var oe=(K-q+1)*(pe-O+1);oeT&&(T=Q),qB&&(B=q))}T==-1&&(w=M=T=B=0),l&&((w&1)==1&&w--,(M&1)==1&&M--),u={x:w,y:M,width:T-w+1,height:B-M+1};var pe=o[a];pe.rect=u,pe.blend=1,pe.img=new Uint8Array(u.width*u.height*4),o[a-1].dispose==0?(UPNG._copyTile(c,r,s,pe.img,u.width,u.height,-u.x,-u.y,0),UPNG.encode._prepareDiff(g,r,s,pe.img,u)):UPNG._copyTile(g,r,s,pe.img,u.width,u.height,-u.x,-u.y,0)},UPNG.encode._prepareDiff=function(e,r,s,o,a){UPNG._copyTile(e,r,s,o,a.width,a.height,-a.x,-a.y,2)},UPNG.encode._filterZero=function(e,r,s,o,a,u,l){var v=[],p=[0,1,2,3,4];u!=-1?p=[u]:(r*o>5e5||s==1)&&(p=[0]);var c;l&&(c={level:0});for(var _=l&&UZIP!=null?UZIP:pako,f=0;f>1)+256&255;if(u==4)for(var c=a;c>1)&255;for(var c=a;c>1)&255}if(u==4){for(var c=0;c>>1:s=s>>>1;e[r]=s}return e}(),update:function(e,r,s,o){for(var a=0;a>>8;return e},crc:function(e,r,s){return UPNG.crc.update(4294967295,e,r,s)^4294967295}},UPNG.quantize=function(e,r){for(var s=new Uint8Array(e),o=s.slice(0),a=new Uint32Array(o.buffer),u=UPNG.quantize.getKDtree(o,r),l=u[0],v=u[1],p=UPNG.quantize.planeDst,c=s,_=a,f=c.length,g=new Uint8Array(s.length>>2),y=0;y>2]=H.ind,_[y>>2]=H.est.rgba}return{abuf:o.buffer,inds:g,plte:v}},UPNG.quantize.getKDtree=function(e,r,s){s==null&&(s=1e-4);var o=new Uint32Array(e.buffer),a={i0:0,i1:e.length,bst:null,est:null,tdst:0,left:null,right:null};a.bst=UPNG.quantize.stats(e,a.i0,a.i1),a.est=UPNG.quantize.estats(a.bst);for(var u=[a];u.lengthl&&(l=u[p].est.L,v=p);if(l=_||c.i1<=_;if(f){c.est.L=0;continue}var g={i0:c.i0,i1:_,bst:null,est:null,tdst:0,left:null,right:null};g.bst=UPNG.quantize.stats(e,g.i0,g.i1),g.est=UPNG.quantize.estats(g.bst);var y={i0:_,i1:c.i1,bst:null,est:null,tdst:0,left:null,right:null};y.bst={R:[],m:[],N:c.bst.N-g.bst.N};for(var p=0;p<16;p++)y.bst.R[p]=c.bst.R[p]-g.bst.R[p];for(var p=0;p<4;p++)y.bst.m[p]=c.bst.m[p]-g.bst.m[p];y.est=UPNG.quantize.estats(y.bst),c.left=g,c.right=y,u[v]=g,u.push(y)}u.sort(function(w,M){return M.bst.N-w.bst.N});for(var p=0;p0&&(l=e.right,v=e.left);var p=UPNG.quantize.getNearest(l,r,s,o,a);if(p.tdst<=u*u)return p;var c=UPNG.quantize.getNearest(v,r,s,o,a);return c.tdstu;)o-=4;if(s>=o)break;var p=r[s>>2];r[s>>2]=r[o>>2],r[o>>2]=p,s+=4,o-=4}for(;l(e,s,a)>u;)s-=4;return s+4},UPNG.quantize.vecDot=function(e,r,s){return e[r]*s[0]+e[r+1]*s[1]+e[r+2]*s[2]+e[r+3]*s[3]},UPNG.quantize.stats=function(e,r,s){for(var o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],a=[0,0,0,0],u=s-r>>2,l=r;l>>0}},UPNG.M4={multVec:function(e,r){return[e[0]*r[0]+e[1]*r[1]+e[2]*r[2]+e[3]*r[3],e[4]*r[0]+e[5]*r[1]+e[6]*r[2]+e[7]*r[3],e[8]*r[0]+e[9]*r[1]+e[10]*r[2]+e[11]*r[3],e[12]*r[0]+e[13]*r[1]+e[14]*r[2]+e[15]*r[3]]},dot:function(e,r){return e[0]*r[0]+e[1]*r[1]+e[2]*r[2]+e[3]*r[3]},sml:function(e,r){return[e*r[0],e*r[1],e*r[2],e*r[3]]}},UPNG.encode.concatRGBA=function(e){for(var r=0,s=0;see?ne.push(6/7*$+1/7*ee,5/7*$+2/7*ee,4/7*$+3/7*ee,3/7*$+4/7*ee,2/7*$+5/7*ee,1/7*$+6/7*ee):ne.push(4/5*$+1/5*ee,3/5*$+2/5*ee,2/5*$+3/5*ee,1/5*$+4/5*ee,0,255),ne}function l($,ee,ne,_e,ae){for(var Me={q:ee*8},Ne=new Uint8Array(4*4*4),Ae=0;Ae>8,_e[ae+2]=le>>16,ae+=3}f(_e,ae,Me),ae+=8}return ae}var p=new Uint8Array(16);function c($,ee,ne){var _e=$[ee+1]<<8|$[ee],ae=$[ee+3]<<8|$[ee+2],Me=(_e&31)*(255/31),Ne=(_e>>>5&31)*(255/31),Ae=(_e>>10)*(255/31),Fe=(ae&31)*(255/31),De=(ae>>>5&63)*(255/63),ze=(ae>>11)*(255/31),ye=p;ye[0]=~~Ae,ye[1]=~~Ne,ye[2]=~~Me,ye[3]=255,ye[12]=~~ze,ye[13]=~~De,ye[14]=~~Fe,ye[15]=255;var he=2/3,ke=1-he;ye[4]=~~(he*Ae+ke*ze),ye[5]=~~(he*Ne+ke*De),ye[6]=~~(he*Me+ke*Fe),ye[7]=255,he=1/3,ke=1-he,ye[8]=~~(he*Ae+ke*ze),ye[9]=~~(he*Ne+ke*De),ye[10]=~~(he*Me+ke*Fe),ye[11]=255,g($,ne,ye,ee)}function _($,ee,ne){var _e=$[ee+1]<<8|$[ee],ae=$[ee+3]<<8|$[ee+2],Me=(_e&31)*(255/31),Ne=(_e>>>5&63)*(255/63),Ae=(_e>>11)*(255/31),Fe=(ae&31)*(255/31),De=(ae>>>5&63)*(255/63),ze=(ae>>11)*(255/31),ye=p;if(ye[0]=~~Ae,ye[1]=~~Ne,ye[2]=~~Me,ye[3]=255,ye[4]=~~ze,ye[5]=~~De,ye[6]=~~Fe,ye[7]=255,ae<_e){var he=2/3,ke=1-he;ye[8]=~~(he*Ae+ke*ze),ye[9]=~~(he*Ne+ke*De),ye[10]=~~(he*Me+ke*Fe),ye[11]=255,he=1/3,ke=1-he,ye[12]=~~(he*Ae+ke*ze),ye[13]=~~(he*Ne+ke*De),ye[14]=~~(he*Me+ke*Fe),ye[15]=255}else{var he=1/2,ke=1-he;ye[8]=~~(he*Ae+ke*ze),ye[9]=~~(he*Ne+ke*De),ye[10]=~~(he*Me+ke*Fe),ye[11]=255,ye[12]=0,ye[13]=0,ye[14]=0,ye[15]=0}g($,ne,ye,ee)}function f($,ee,ne){var _e=pe,ae=R(ne),Me=ne[ae>>8],Ne=ne[(ae>>8)+1],Ae=ne[(ae>>8)+2],Fe=ne[ae&255],De=ne[(ae&255)+1],ze=ne[(ae&255)+2],ye=Me>>3<<11|Ne>>2<<5|Ae>>3,he=Fe>>3<<11|De>>2<<5|ze>>3;if(ye>>5&63)*(255/63)),Me=Math.floor((ye>>11)*(255/31)),ze=Math.floor((he&31)*(255/31)),De=Math.floor((he>>>5&63)*(255/63)),Fe=Math.floor((he>>11)*(255/31));$[ee+0]=ye&255,$[ee+1]=ye>>8,$[ee+2]=he&255,$[ee+3]=he>>8;var le=2/3,Ce=1-le,Be=Math.floor(le*Me+Ce*Fe),we=Math.floor(le*Ne+Ce*De),xe=Math.floor(le*Ae+Ce*ze);le=1/3,Ce=1-le;for(var Ie=Math.floor(le*Me+Ce*Fe),Re=Math.floor(le*Ne+Ce*De),Le=Math.floor(le*Ae+Ce*ze),Oe=ee*8+32,Ve=0;Ve<64;Ve+=4){var Xe=ne[Ve],We=ne[Ve+1],t=ne[Ve+2],h=_e(Xe,We,t,Me,Ne,Ae),d=_e(Xe,We,t,Fe,De,ze),x=_e(Xe,We,t,Be,we,xe),E=_e(Xe,We,t,Ie,Re,Le),C=Math.min(h,Math.min(d,Math.min(x,E))),b=0;C==d?b=1:C==x?b=2:C==E&&(b=3),$[Oe>>3]|=b<<(Oe&7),Oe+=2}}function g($,ee,ne,_e){for(var ae=_e+4<<3,Me=0;Me<64;Me+=4){var Ne=$[ae>>3]>>(ae&7)&3;ae+=2,Ne=Ne<<2,ee[Me]=ne[Ne],ee[Me+1]=ne[Ne+1],ee[Me+2]=ne[Ne+2],ee[Me+3]=ne[Ne+3]}}function y($,ee,ne,_e,ae,Me){for(var Ne=0;Ne<4;Ne++){var Ae=(ae+Ne)*ee+_e<<2,Fe=Ne<<4;Me[Fe+0]=$[Ae+0],Me[Fe+1]=$[Ae+1],Me[Fe+2]=$[Ae+2],Me[Fe+3]=$[Ae+3],Me[Fe+4]=$[Ae+4],Me[Fe+5]=$[Ae+5],Me[Fe+6]=$[Ae+6],Me[Fe+7]=$[Ae+7],Me[Fe+8]=$[Ae+8],Me[Fe+9]=$[Ae+9],Me[Fe+10]=$[Ae+10],Me[Fe+11]=$[Ae+11],Me[Fe+12]=$[Ae+12],Me[Fe+13]=$[Ae+13],Me[Fe+14]=$[Ae+14],Me[Fe+15]=$[Ae+15]}}function w($,ee,ne,_e,ae,Me){for(var Ne=0;Ne<4;Ne++){var Ae=(ae+Ne)*ee+_e<<2,Fe=Ne<<4;$[Ae+0]=Me[Fe+0],$[Ae+1]=Me[Fe+1],$[Ae+2]=Me[Fe+2],$[Ae+3]=Me[Fe+3],$[Ae+4]=Me[Fe+4],$[Ae+5]=Me[Fe+5],$[Ae+6]=Me[Fe+6],$[Ae+7]=Me[Fe+7],$[Ae+8]=Me[Fe+8],$[Ae+9]=Me[Fe+9],$[Ae+10]=Me[Fe+10],$[Ae+11]=Me[Fe+11],$[Ae+12]=Me[Fe+12],$[Ae+13]=Me[Fe+13],$[Ae+14]=Me[Fe+14],$[Ae+15]=Me[Fe+15]}}var M="0011001100110011 0001000100010001 0111011101110111 0001001100110111 0000000100010011 0011011101111111 0001001101111111 0000000100110111 0000000000010011 0011011111111111 0000000101111111 0000000000010111 0001011111111111 0000000011111111 0000111111111111 0000000000001111 0000100011101111 0111000100000000 0000000010001110 0111001100010000 0011000100000000 0000100011001110 0000000010001100 0111001100110001 0011000100010000 0000100010001100 0110011001100110 0011011001101100 0001011111101000 0000111111110000 0111000110001110 0011100110011100 0101010101010101 0000111100001111 0101101001011010 0011001111001100 0011110000111100 0101010110101010 0110100101101001 0101101010100101 0111001111001110 0001001111001000 0011001001001100 0011101111011100 0110100110010110 0011110011000011 0110011010011001 0000011001100000 0100111001000000 0010011100100000 0000001001110010 0000010011100100 0110110010010011 0011011011001001 0110001110011100 0011100111000110 0110110011001001 0110001100111001 0111111010000001 0001100011100111 0000111100110011 0011001111110000 0010001011101110 0100010001110111".split(" "),T="0011001102212222 0001001122112221 0000200122112211 0222002200110111 0000000011221122 0011001100220022 0022002211111111 0011001122112211 0000000011112222 0000111111112222 0000111122222222 0012001200120012 0112011201120112 0122012201220122 0011011211221222 0011200122002220 0001001101121122 0111001120012200 0000112211221122 0022002200221111 0111011102220222 0001000122212221 0000001101220122 0000110022102210 0122012200110000 0012001211222222 0110122112210110 0000011012211221 0022110211020022 0110011020022222 0011012201220011 0000200022112221 0000000211221222 0222002200120011 0011001200220222 0120012001200120 0000111122220000 0120120120120120 0120201212010120 0011220011220011 0011112222000011 0101010122222222 0000000021212121 0022112200221122 0022001100220011 0220122102201221 0101222222220101 0000212121212121 0101010101012222 0222011102220111 0002111200021112 0000211221122112 0222011101110222 0002111211120002 0110011001102222 0000000021122112 0110011022222222 0022001100110022 0022112211220022 0000000000002112 0002000100020001 0222122202221222 0101222222222222 0111201122012220".split(" "),B=[[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,2,0],[0,8,0],[0,2,0],[0,2,0],[0,8,0],[0,8,0],[0,15,0],[0,2,0],[0,8,0],[0,2,0],[0,2,0],[0,8,0],[0,8,0],[0,2,0],[0,2,0],[0,15,0],[0,15,0],[0,6,0],[0,8,0],[0,2,0],[0,8,0],[0,15,0],[0,15,0],[0,2,0],[0,8,0],[0,2,0],[0,2,0],[0,2,0],[0,15,0],[0,15,0],[0,6,0],[0,6,0],[0,2,0],[0,6,0],[0,8,0],[0,15,0],[0,15,0],[0,2,0],[0,2,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,15,0],[0,2,0],[0,2,0],[0,15,0]],H=[[0,3,15],[0,3,8],[0,15,8],[0,15,3],[0,8,15],[0,3,15],[0,15,3],[0,15,8],[0,8,15],[0,8,15],[0,6,15],[0,6,15],[0,6,15],[0,5,15],[0,3,15],[0,3,8],[0,3,15],[0,3,8],[0,8,15],[0,15,3],[0,3,15],[0,3,8],[0,6,15],[0,10,8],[0,5,3],[0,8,15],[0,8,6],[0,6,10],[0,8,15],[0,5,15],[0,15,10],[0,15,8],[0,8,15],[0,15,3],[0,3,15],[0,5,10],[0,6,10],[0,10,8],[0,8,9],[0,15,10],[0,15,6],[0,3,15],[0,15,8],[0,5,15],[0,15,3],[0,15,6],[0,15,6],[0,15,8],[0,3,15],[0,15,3],[0,5,15],[0,5,15],[0,5,15],[0,8,15],[0,5,15],[0,10,15],[0,5,15],[0,10,15],[0,8,15],[0,13,15],[0,15,3],[0,12,15],[0,3,15],[0,3,8]];function J($,ee,ne,_e,ae){for(var Me=q,Ne={q:0},Ae=new Uint8Array(4*4*4),Fe=[null,null,[0,21,43,64],[0,9,18,27,37,46,55,64],[0,4,9,13,17,21,26,30,34,38,43,47,51,55,60,64]],De=[null,null,M,T],ze=[null,null,B,H],ye=0;ye>ke&1)!=1;)ke++;Ne.q=(ee<<3)+ke+1;for(var Ce=ke==4||ke==5?Me($,Ne,2):0,Be=ke==4?Me($,Ne,1):0,we=[4,6,6,6,0,0,0,6][ke],xe=Me($,Ne,we),Ie=[4,6,5,7,5,7,7,5][ke],Re=[0,0,0,0,6,8,7,5][ke],Le=[1,1,0,1,0,0,1,1][ke],Oe=[6,4,6,4,2,2,2,4][ke],Ve=[],Xe=0;Xe<4;Xe++)for(var We=Xe==3?Re:Ie,t=0;t>2)-48,W=b[Y]==Xe>>2?1:0,F=Me($,Ne,E-W),z=Z[F]/64,G=(1-z)*Ve[0*Oe+2*Y+0]+z*Ve[0*Oe+2*Y+1],X=(1-z)*Ve[1*Oe+2*Y+0]+z*Ve[1*Oe+2*Y+1],A=(1-z)*Ve[2*Oe+2*Y+0]+z*Ve[2*Oe+2*Y+1],N=(1-z)*Ve[3*Oe+2*Y+0]+z*Ve[3*Oe+2*Y+1];Ae[Xe]=G*255,Ae[Xe+1]=X*255,Ae[Xe+2]=A*255,Ae[Xe+3]=N*255}if(Z=Fe[C],Ne.q=D,C!=0)for(var Xe=0;Xe<64;Xe+=4){var Y=le.charCodeAt(Xe>>2)-48,W=b[Y]==Xe>>2?1:0,F=Me($,Ne,C-W),z=Z[F]/64,N=(1-z)*Ve[3*Oe+2*Y+0]+z*Ve[3*Oe+2*Y+1];Ae[Xe+3]=N*255}Q(Ae,Ce),w(ne,_e,ae,he,ye,Ae),ee+=16}return ee}function Q($,ee){if(ee!=0)for(var ne=0;ne<64;ne+=4){var _e=$[ne],ae=$[ne+1],Me=$[ne+2],Ne=$[ne+3];if(ee==1){var Ae=Ne;Ne=_e,_e=Ae}if(ee==2){var Ae=Ne;Ne=ae,ae=Ae}if(ee==3){var Ae=Ne;Ne=Me,Me=Ae}$[ne]=_e,$[ne+1]=ae,$[ne+2]=Me,$[ne+3]=Ne}}function q($,ee,ne){for(var _e=0,ae=ne;ne!=0;)_e=_e|O($,ee)<>3]>>(ne&7)&1}function K($,ee,ne){for(var _e=ee>>1,ae=ne>>1,Me=new Uint8Array(_e*ae*4),Ne=0;Ne>2,xe=we==0?0:.25/we;Me[Fe]=~~(he*xe+.5),Me[Fe+1]=~~(ke*xe+.5),Me[Fe+2]=~~(le*xe+.5),Me[Fe+3]=we}return Me}function pe($,ee,ne,_e,ae,Me){return($-_e)*($-_e)+(ee-ae)*(ee-ae)+(ne-Me)*(ne-Me)}function R($){for(var ee=pe,ne=0,_e=0,ae=0;ae<64;ae+=4)for(var Me=$[ae],Ne=$[ae+1],Ae=$[ae+2],Fe=ae+4;Fe<64;Fe+=4){var De=ee(Me,Ne,Ae,$[Fe],$[Fe+1],$[Fe+2]);De>_e&&(_e=De,ne=ae<<8|Fe)}return ne}var Te=new ArrayBuffer(4),re=new Uint8Array(Te),oe=new Uint32Array(Te),me=new Uint16Array(Te),ue={L:function($,ee){return re[0]=$[ee+0],re[1]=$[ee+1],me[0]},D:function($,ee){return re[0]=$[ee+0],re[1]=$[ee+1],re[2]=$[ee+2],re[3]=$[ee+3],oe[0]},Y:function($,ee,ne){oe[0]=ne,$[ee+0]=re[0],$[ee+1]=re[1],$[ee+2]=re[2],$[ee+3]=re[3]},G:function($,ee,ne){for(var _e="",ae=0;ae>1)+1]<<8|c[_+(_e>>1)];R[_e+0]=(ae&Te)*re,R[_e+1]=(ae&oe)*me,R[_e+2]=(ae&ue)*$,R[_e+3]=(ae&ee)*ne}_+=pe>>>1}else throw"unknown bit count "+J}else if(y._&e.n||y._&e.t||y._&e.P)if(J==8){for(var _e=0;_e>2)];_+=pe>>>2}else throw"unknown bit count "+J;else throw console.log("unknown texture format, head flags: ",g._.toString(2),"pixelFormat flags: ",y._.toString(2)),"e";B.push({width:M,height:T,image:R.buffer}),M=M>>>1,T=T>>>1}return B}function s(p,c,_){for(var p=new Uint8Array(p),f=255,g=0,y=0,w=3;w>1,_=_>>1,y++;return T[28]=y,T.buffer.slice(0,g)}function o(p,c){var _={},f=UTEX.l.D;return c+=4,_._=f(p,c),c+=4,_.height=f(p,c),c+=4,_.width=f(p,c),c+=4,_.pitch=f(p,c),c+=4,_.depth=f(p,c),c+=4,_.F=f(p,c),c+=4,c+=11*4,_.c=u(p,c),c+=32,_.K=f(p,c),c+=4,_.I=f(p,c),c+=4,_.h=f(p,c),c+=4,_.a1=f(p,c),c+=4,c+=4,_}function a(p,c,_,f,g){var y=UTEX.l.Y,w=e.O|e.$|e.R|e.W;w|=e.B|e.C;var M=e.Z|e.g|e.X,T=(c*_>>1)*(f?2:1),B=f?1:0;y(p,g,124),g+=4,y(p,g,w),g+=4,y(p,g,_),g+=4,y(p,g,c),g+=4,y(p,g,T),g+=4,y(p,g,B),g+=4,y(p,g,10),g+=4,g+=11*4,l(p,f,g),g+=32,y(p,g,M),g+=4,g+=4*4}function u(p,c){var _={},f=UTEX.l.D;return c+=4,_._=f(p,c),c+=4,_.J=UTEX.l.G(p,c,4),c+=4,_.b=f(p,c),c+=4,_.u=f(p,c),c+=4,_.v=f(p,c),c+=4,_.d=f(p,c),c+=4,_.S=f(p,c),c+=4,_}function l(p,c,_){var f=UTEX.l.Y,g=e.r;f(p,_,32),_+=4,f(p,_,g),_+=4,UTEX.l.k(p,_,c?"DXT5":"DXT1"),_+=4,_+=5*4}function v(p,c){var _={},f=UTEX.l.D;return _.f=f(p,c),c+=4,_.a4=f(p,c),c+=4,_.a5=f(p,c),c+=4,_.a2=f(p,c),c+=4,_.a6=f(p,c),c+=4,_}return{encode:s,decode:r}}(),UTEX.VTF=function(){var e={};function r(o){var a=new Uint8Array(o),u=0,l={};u=s(a,u,l);var v=l.p,p=l.m;if(v*p!=0){var c=new Uint8Array(v*p*4);u=UTEX.V(a,u,c,v,p)}for(var _=l.e,f=l.T,g=[],y=0;y>>f-1-y,M=l.height>>>f-1-y,T=0;T0&&!re[ne-1];)ne--;ue.push({children:[],index:0});var ae=ue[0];for($=0;$0;)ae=ue.pop();for(ae.index++,ue.push(ae);ue.length<=$;)ue.push(_e={children:[],index:0}),ae.children[ae.index]=_e.children,ae=_e;me++}$+10)return ze--,De>>ze&1;if(De=re[oe++],De===255){var z=re[oe++];if(z){if(z===220&&Me){oe+=2;var G=p(re,oe);if(oe+=2,G>0&&G!==me.s)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",G)}else if(z===217){if(Me){var X=le*8;if(X>0&&X>>7}function h(z){for(var G=z;;){switch(G=G[t()],typeof G){case"number":return G;case"object":continue}throw new u("invalid huffman sequence")}}function d(z){for(var G=0;z>0;)G=G<<1|t(),z--;return G}function x(z){if(z===1)return t()===1?1:-1;var G=d(z);return G>=1<>4;if(te===0){if(fe<15)break;N+=16;continue}N+=fe;var S=f[N];z.D[G+S]=x(te),N++}}function C(z,G){var X=h(z.J),A=X===0?0:x(X)<0){ye--;return}for(var X=ee,A=ne;X<=A;){var N=h(z.i),I=N&15,te=N>>4;if(I===0){if(te<15){ye=d(te)+(1<>4,I===0)N<15?(ye=d(N)+(1<0){for(Be=0;Be0?"unexpected":"excessive";oe=Oe.offset}if(Oe.M>=65488&&Oe.M<=65495)oe+=2;else break}return oe-Fe}function pe(re,oe,me){var ue=re.$,$=re.D,ee,ne,_e,ae,Me,Ne,Ae,Fe,De,ze,ye,he,ke,le,Ce,Be,we;if(!ue)throw new u("missing required Quantization Table.");for(var xe=0;xe<64;xe+=8){if(De=$[oe+xe],ze=$[oe+xe+1],ye=$[oe+xe+2],he=$[oe+xe+3],ke=$[oe+xe+4],le=$[oe+xe+5],Ce=$[oe+xe+6],Be=$[oe+xe+7],De*=ue[xe],(ze|ye|he|ke|le|Ce|Be)==0){we=H*De+512>>10,me[xe]=we,me[xe+1]=we,me[xe+2]=we,me[xe+3]=we,me[xe+4]=we,me[xe+5]=we,me[xe+6]=we,me[xe+7]=we;continue}ze*=ue[xe+1],ye*=ue[xe+2],he*=ue[xe+3],ke*=ue[xe+4],le*=ue[xe+5],Ce*=ue[xe+6],Be*=ue[xe+7],ee=H*De+128>>8,ne=H*ke+128>>8,_e=ye,ae=Ce,Me=J*(ze-Be)+128>>8,Fe=J*(ze+Be)+128>>8,Ne=he<<4,Ae=le<<4,ee=ee+ne+1>>1,ne=ee-ne,we=_e*B+ae*T+128>>8,_e=_e*T-ae*B+128>>8,ae=we,Me=Me+Ae+1>>1,Ae=Me-Ae,Fe=Fe+Ne+1>>1,Ne=Fe-Ne,ee=ee+ae+1>>1,ae=ee-ae,ne=ne+_e+1>>1,_e=ne-_e,we=Me*M+Fe*w+2048>>12,Me=Me*w-Fe*M+2048>>12,Fe=we,we=Ne*y+Ae*g+2048>>12,Ne=Ne*g-Ae*y+2048>>12,Ae=we,me[xe]=ee+Fe,me[xe+7]=ee-Fe,me[xe+1]=ne+Ae,me[xe+6]=ne-Ae,me[xe+2]=_e+Ne,me[xe+5]=_e-Ne,me[xe+3]=ae+Me,me[xe+4]=ae-Me}for(var Ie=0;Ie<8;++Ie){if(De=me[Ie],ze=me[Ie+8],ye=me[Ie+16],he=me[Ie+24],ke=me[Ie+32],le=me[Ie+40],Ce=me[Ie+48],Be=me[Ie+56],(ze|ye|he|ke|le|Ce|Be)==0){we=H*De+8192>>14,we<-2040?we=0:we>=2024?we=255:we=we+2056>>4,$[oe+Ie]=we,$[oe+Ie+8]=we,$[oe+Ie+16]=we,$[oe+Ie+24]=we,$[oe+Ie+32]=we,$[oe+Ie+40]=we,$[oe+Ie+48]=we,$[oe+Ie+56]=we;continue}ee=H*De+2048>>12,ne=H*ke+2048>>12,_e=ye,ae=Ce,Me=J*(ze-Be)+2048>>12,Fe=J*(ze+Be)+2048>>12,Ne=he,Ae=le,ee=(ee+ne+1>>1)+4112,ne=ee-ne,we=_e*B+ae*T+2048>>12,_e=_e*T-ae*B+2048>>12,ae=we,Me=Me+Ae+1>>1,Ae=Me-Ae,Fe=Fe+Ne+1>>1,Ne=Fe-Ne,ee=ee+ae+1>>1,ae=ee-ae,ne=ne+_e+1>>1,_e=ne-_e,we=Me*M+Fe*w+2048>>12,Me=Me*w-Fe*M+2048>>12,Fe=we,we=Ne*y+Ae*g+2048>>12,Ne=Ne*g-Ae*y+2048>>12,Ae=we,De=ee+Fe,Be=ee-Fe,ze=ne+Ae,Ce=ne-Ae,ye=_e+Ne,le=_e-Ne,he=ae+Me,ke=ae-Me,De<16?De=0:De>=4080?De=255:De>>=4,ze<16?ze=0:ze>=4080?ze=255:ze>>=4,ye<16?ye=0:ye>=4080?ye=255:ye>>=4,he<16?he=0:he>=4080?he=255:he>>=4,ke<16?ke=0:ke>=4080?ke=255:ke>>=4,le<16?le=0:le>=4080?le=255:le>>=4,Ce<16?Ce=0:Ce>=4080?Ce=255:Ce>>=4,Be<16?Be=0:Be>=4080?Be=255:Be>>=4,$[oe+Ie]=De,$[oe+Ie+8]=ze,$[oe+Ie+16]=ye,$[oe+Ie+24]=he,$[oe+Ie+32]=ke,$[oe+Ie+40]=le,$[oe+Ie+48]=Ce,$[oe+Ie+56]=Be}}function R(re,oe){for(var me=oe.P,ue=oe.c,$=new Int16Array(64),ee=0;ee=ue)return null;var ee=p(re,oe);if(ee>=65472&&ee<=65534)return{u:null,M:ee,offset:oe};for(var ne=p(re,$);!(ne>=65472&&ne<=65534);){if(++$>=ue)return null;ne=p(re,$)}return{u:ee.toString(16),M:ne,offset:$}}return Q.prototype={parse(re,oe){oe==null&&(oe={});var me=oe.F,ue=0,$=null,ee=null,ne,_e,ae=0;function Me(){var te=p(re,ue);ue+=2;var fe=ue+te-2,S=Te(re,fe,ue);S&&S.u&&(fe=S.offset);var de=re.subarray(ue,fe);return ue+=de.length,de}function Ne(te){for(var fe=Math.ceil(te.o/8/te.X),S=Math.ceil(te.s/8/te.B),de=0;de>4==0)for(he=0;he<64;he++)Be=f[he],Ie[Be]=re[ue++];else if(xe>>4==1)for(he=0;he<64;he++)Be=f[he],Ie[Be]=p(re,ue),ue+=2;else throw new u("DQT - invalid table spec");Ae[xe&15]=Ie}break;case 65472:case 65473:case 65474:if(ne)throw new u("Only single frame JPEGs supported");ue+=2,ne={},ne.G=ze===65473,ne.Z=ze===65474,ne.precision=re[ue++];var Re=p(re,ue),Le,Oe=0,Ve=0;ue+=2,ne.s=me||Re,ne.o=p(re,ue),ue+=2,ne.W=[],ne._={};var Xe=re[ue++];for(ye=0;ye>4,t=re[ue+1]&15;Oe>4==0?De:Fe)[x&15]=q(E,b)}break;case 65501:ue+=2,_e=p(re,ue),ue+=2;break;case 65498:var U=++ae==1&&!me,D;ue+=2;var k=re[ue++],Z=[];for(ye=0;ye>4],D.i=Fe[F&15],Z.push(D)}var z=re[ue++],G=re[ue++],X=re[ue++];try{var A=K(re,ue,ne,Z,_e,z,G,X>>4,X&15,U);ue+=A}catch(te){if(te instanceof DNLMarkerError)return this.parse(re,{F:te.s});if(te instanceof EOIMarkerError)break e;throw te}break;case 65500:ue+=4;break;case 65535:re[ue]!==255&&ue--;break;default:var N=Te(re,ue-2,ue-3);if(N&&N.u){ue=N.offset;break}if(ue>=re.length-1)break e;throw new u("JpegImage.parse - unknown marker: "+ze.toString(16))}ze=p(re,ue),ue+=2}for(this.width=ne.o,this.height=ne.s,this.g=$,this.b=ee,this.W=[],ye=0;ye>8)+Ie[De+1];return Ce},get f(){return this.b?!!this.b.a:this.p===3?this.N===0?!1:!(this.W[0].index===82&&this.W[1].index===71&&this.W[2].index===66):this.N===1},z:function(oe){for(var me,ue,$,ee=0,ne=oe.length;ee4)throw new u("Unsupported color mode");var ee=this.Y(oe,me,$);if(this.p===1&&ue){for(var ne=ee.length,_e=new Uint8ClampedArray(ne*3),ae=0,Me=0;Me>24}function p(_,f){return _[f]<<8|_[f+1]}function c(_,f){return(_[f]<<24|_[f+1]<<16|_[f+2]<<8|_[f+3])>>>0}o.JpegDecoder=l})(),o.encodeImage=function(u,l,v,p){var c={t256:[l],t257:[v],t258:[8,8,8,8],t259:[1],t262:[2],t273:[1e3],t277:[4],t278:[v],t279:[l*v*4],t282:[[72,1]],t283:[[72,1]],t284:[1],t286:[[0,1]],t287:[[0,1]],t296:[1],t305:["Photopea (UTIF.js)"],t338:[1]};if(p)for(var _ in p)c[_]=p[_];for(var f=new Uint8Array(o.encode([c])),g=new Uint8Array(u),y=new Uint8Array(1e3+l*v*4),_=0;_>>3)]),M==null&&(M=l.t325);var T=new Uint8Array(l.height*(y>>>3)),B=0;if(l.t322!=null){for(var H=l.t322[0],J=l.t323[0],Q=Math.floor((l.width+H-1)/H),q=Math.floor((l.height+J-1)/J),O=new Uint8Array(Math.ceil(H*J*g/8)|0),K=0;K>>3,q=u.t278?u.t278[0]:u.height,O=Math.ceil(H*J*u.width/8);if(H==16&&!u.isLE&&u.t33422==null)for(var K=0;K>>8&255}else if(J==3)for(var w=3;w>>(H[Ae]>>>8),J=0;J>>4,c[_+Ae+1]=R<<4|re>>>4,c[_+Ae+2]=re<<4|Te>>>4}return}var oe=new Uint16Array(16),me,ue,$,ee,ne,_e,ae,Me,Ne,Ae,Fe,De=new Uint8Array(f+1);for(me=0;me>>11,_e=15&$>>>22,ae=15&$>>>26,Me=0;Me<4&&128<>3))>>>(Ne&7)&127)<2047&&(oe[Ae]=2047),Ne+=7);for(Ae=0;Ae<16;Ae++,ue+=2){var pe=oe[Ae]<<1;o.decode._putsF(c,(me*f+ue)*y,pe<<16-y)}ue-=ue&1?1:31}}},o.decode._decodeNikon=function(u,l,v,p,c,_,f){var g=[[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,5,4,3,6,2,7,1,0,8,9,11,10,12],[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,57,90,56,39,22,5,4,3,2,1,0,11,12,12],[0,0,1,4,2,3,1,2,0,0,0,0,0,0,0,0,0,5,4,6,3,7,2,8,1,9,0,10,11,12],[0,0,1,4,3,1,1,1,1,1,2,0,0,0,0,0,0,5,6,4,7,8,3,9,2,1,0,10,11,12,13,14],[0,0,1,5,1,1,1,1,1,1,1,2,0,0,0,0,0,8,92,75,58,41,7,6,5,4,3,2,1,0,13,14],[0,0,1,4,2,2,3,1,2,0,0,0,0,0,0,0,0,7,6,8,5,9,4,10,3,11,12,2,0,1,13,14]],y=u.t256[0],w=u.t257[0],M=u.t258[0],T=0,B=0,H=o.decode._make_decoder,J=o.decode._getbithuff,Q=l[0].exifIFD.makerNote,q=Q.t150?Q.t150:Q.t140,O=0,K=q[O++],pe=q[O++];(K==73||pe==88)&&(O+=2110),K==70&&(T=2),M==14&&(T+=3);for(var R=[[0,0],[0,0]],Te=u.isLE?o._binLE:o._binBE,$=0;$<2;$++)for(var re=0;re<2;re++)R[$][re]=Te.readShort(q,O),O+=2;var oe=1<1&&(me=Math.floor(oe/(ue-1))),K==68&&pe==32&&me>0&&(B=Te.readShort(q,562));var $,ee,ne,_e,ae,Me,Ne=0,Ae=[0,0],Fe=H(g[T]),De=[p,0,0,0];for(Ne=ee=0;ee>>4,Me=(J(v,De,_e-ae,0)<<1)+1<>>1,(Me&1<<_e-1)==0&&(Me-=(1<<_e)-(ae==0?1:0)),ne<2?Ae[ne]=R[ee&1][ne]+=Me:Ae[ne&1]+=Me;var ze=Math.min(Math.max(Ae[ne&1],0),(1<>>3;u[p]|=v>>>16,u[p+1]|=v>>>8,u[p+2]|=v},o.decode._getbithuff=function(u,l,v,p){var c=0,_=o.decode._get_byte,f,g=l[0],y=l[1],w=l[2],M=l[3];if(v==0||w<0)return 0;for(;!M&&w>>32-v,p?(w-=p[f+1]>>>8,f=p[f+1]&255):w-=v,w<0)throw"e";return l[0]=g,l[1]=y,l[2]=w,l[3]=M,f},o.decode._make_decoder=function(u){var l,v,p,c,_,f=[];for(l=16;l!=0&&!u[l];l--);var g=17;for(f[0]=l,p=v=1;v<=l;v++)for(c=0;c>>8;else for(var B=0;B>>8,c[_+(B<<1)+1]=q[B]&255;else if(Q==14||Q==12)for(var K=16-Q,B=0;B1),!Q){if(l[v]==255&&l[v+1]==c)return{jpegOffset:v};if(pe!=null&&(l[v+R]==255&&l[v+R+1]==c?T=v+R:s("JPEGInterchangeFormat does not point to SOI"),Te==null?s("JPEGInterchangeFormatLength field is missing"):(R>=B||R+re<=B)&&s("JPEGInterchangeFormatLength field value is invalid"),T!=null))return{jpegOffset:T}}if(me!=null&&(ue=me[0],$=me[1]),pe!=null&&Te!=null)if(re>=2&&R+re<=B){for(l[v+R+re-2]==255&&l[v+R+re-1]==c?H=new Uint8Array(re-2):H=new Uint8Array(re),q=0;q offset to first strip or tile");if(H==null){var _e=0,ae=[];ae[_e++]=255,ae[_e++]=c;var Me=u.t519;if(Me==null)throw new Error("JPEGQTables tag is missing");for(q=0;q>>8,ae[_e++]=Ae&255,ae[_e++]=q|K<<4,O=0;O<16;O++)ae[_e++]=l[v+Ne[q]+O];for(O=0;O>>8&255,ae[_e++]=u.height&255,ae[_e++]=u.width>>>8&255,ae[_e++]=u.width&255,ae[_e++]=ee,ee==1)ae[_e++]=1,ae[_e++]=17,ae[_e++]=0;else for(q=0;q<3;q++)ae[_e++]=q+1,ae[_e++]=q!=0?17:(ue&15)<<4|$&15,ae[_e++]=q;ne!=null&&ne[0]!=0&&(ae[_e++]=255,ae[_e++]=y,ae[_e++]=0,ae[_e++]=4,ae[_e++]=ne[0]>>>8&255,ae[_e++]=ne[0]&255),H=new Uint8Array(ae)}var Fe=-1;for(q=0;q>>8&255,H[ze++]=u.height&255,H[ze++]=u.width>>>8&255,H[ze++]=u.width&255,H[ze++]=ee,ee==1)H[ze++]=1,H[ze++]=17,H[ze++]=0;else for(q=0;q<3;q++)H[ze++]=q+1,H[ze++]=q!=0?17:(ue&15)<<4|$&15,H[ze++]=q}if(l[B]==255&&l[B+1]==M){var ye=l[B+2]<<8|l[B+3];for(J=new Uint8Array(ye+2),J[0]=l[B],J[1]=l[B+1],J[2]=l[B+2],J[3]=l[B+3],q=0;q>>8&255,w[T.sofPosition+6]=u.height&255,w[T.sofPosition+7]=u.width>>>8&255,w[T.sofPosition+8]=u.width&255,(l[v]!=255||l[v+1]!=SOS)&&(w.set(T.sosMarker,M),M+=sosMarker.length),f=0;f=0&&y<128)for(var w=0;w=-127&&y<0){for(var w=0;w<-y+1;w++)f[c]=_[l],c++;l++}}},o.decode._decodeThunder=function(u,l,v,p,c){for(var _=[0,1,0,-1],f=[0,1,2,3,0,-3,-2,-1],g=l+v,y=c*2,w=0;l>>6,B=M&63;if(l++,T==3&&(w=B&15,p[y>>>1]|=w<<4*(1-y&1),y++),T==0)for(var H=0;H>>1]|=w<<4*(1-y&1),y++;if(T==2)for(var H=0;H<2;H++){var J=B>>>3*(1-H)&7;J!=4&&(w+=f[J],p[y>>>1]|=w<<4*(1-y&1),y++)}if(T==1)for(var H=0;H<3;H++){var J=B>>>2*(2-H)&3;J!=2&&(w+=_[J],p[y>>>1]|=w<<4*(1-y&1),y++)}}},o.decode._dmap={"1":0,"011":1,"000011":2,"0000011":3,"010":-1,"000010":-2,"0000010":-3},o.decode._lens=function(){var u=function(y,w,M,T){for(var B=0;B>>3>>3]>>>7-(y&7)&1),f==2&&(me=u[y>>>3]>>>(y&7)&1),y++,M+=me,Te=="H"){if(g._lens[pe][M]!=null){var ue=g._lens[pe][M];M="",w+=ue,ue<64&&(g._addNtimes(T,w,pe),J+=w,pe=1-pe,w=0,re--,re==0&&(Te=""))}}else M=="0001"&&(M="",g._addNtimes(T,K-J,pe),J=K),M=="001"&&(M="",Te="H",re=2),g._dmap[M]!=null&&(Q=O+g._dmap[M],g._addNtimes(T,Q-J,pe),J=Q,M="",pe=1-pe);T.length==_&&Te==""&&(g._writeBits(T,p,c*8+R*oe),pe=0,R++,J=0,B=g._makeDiff(T),T=[])}},o.decode._findDiff=function(u,l,v){for(var p=0;p=l&&u[p+1]==v)return u[p]},o.decode._makeDiff=function(u){var l=[];u[0]==1&&l.push(0,1);for(var v=1;v>>3>>3]>>>7-(w&7)&1),f==2&&($=u[w>>>3]>>>(w&7)&1),w++,T+=$,me){if(y._lens[R][T]!=null){var ee=y._lens[R][T];T="",M+=ee,ee<64&&(y._addNtimes(B,M,R),R=1-R,M=0)}}else if(re=="H"){if(y._lens[R][T]!=null){var ee=y._lens[R][T];T="",M+=ee,ee<64&&(y._addNtimes(B,M,R),Q+=M,R=1-R,M=0,oe--,oe==0&&(re=""))}}else T=="0001"&&(T="",y._addNtimes(B,pe-Q,R),Q=pe),T=="001"&&(T="",re="H",oe=2),y._dmap[T]!=null&&(q=K+y._dmap[T],y._addNtimes(B,q-Q,R),Q=q,T="",R=1-R);T.endsWith("000000000001")&&(Te>=0&&y._writeBits(B,p,c*8+Te*ue),g&&(f==1&&(me=(u[w>>>3]>>>7-(w&7)&1)==1),f==2&&(me=(u[w>>>3]>>>(w&7)&1)==1),w++),T="",R=0,Te++,Q=0,H=y._makeDiff(B),B=[])}B.length==_&&y._writeBits(B,p,c*8+Te*ue)},o.decode._addNtimes=function(u,l,v){for(var p=0;p>>3]|=u[p]<<7-(v+p&7)},o.decode._decodeLZW=o.decode._decodeLZW=function(){var u,l,v,p,c=0,_=0,f=0,g=0,y=function(){var q=u>>>3,O=l[q]<<16|l[q+1]<<8|l[q+2],K=O>>>24-(u&7)-_&(1<<_)-1;return u+=_,K},w=new Uint32Array(4096*4),M=0,T=function(q){if(q!=M){M=q,f=1<>>----------------");for(var y=0;y4&&(u.writeUint(v,p,g),q=g),T==1||T==7)for(var O=0;O4&&(Q+=Q&1,g+=Q),p+=4}}return[p,g]},o.toRGBA8=function(u,l){var v=u.width,p=u.height,c=v*p,_=c*4,f=u.data,g=new Uint8Array(c*4),y=u.t262?u.t262[0]:2,w=u.t258?Math.min(32,u.t258[0]):1;if(y==0)for(var M=Math.ceil(w*v/8),T=0;T>3)]>>7-(J&7)&1;g[Q]=g[Q+1]=g[Q+2]=(1-q)*255,g[Q+3]=255}if(w==4)for(var J=0;J>1)]>>4-4*(J&1)&15;g[Q]=g[Q+1]=g[Q+2]=(15-q)*17,g[Q+3]=255}if(w==8)for(var J=0;J>3)]>>7-(J&7)&1;g[Q]=g[Q+1]=g[Q+2]=q*255,g[Q+3]=255}if(w==2)for(var J=0;J>2)]>>6-2*(J&3)&3;g[Q]=g[Q+1]=g[Q+2]=q*85,g[Q+3]=255}if(w==8)for(var J=0;J>8,g[Q+1]=R[256+Te]>>8,g[Q+2]=R[512+Te]>>8,g[Q+3]=255}else if(y==5)for(var O=u.t258?u.t258.length:4,re=O>4?1:0,J=0;J>>1),$=f[oe+(ae&1)],Me=f[oe+2]-128,Ne=f[oe+3]-128,Ae=$+((Ne>>2)+(Ne>>3)+(Ne>>5)),Fe=$-((Me>>2)+(Me>>4)+(Me>>5))-((Ne>>1)+(Ne>>3)+(Ne>>4)+(Ne>>5)),De=$+(Me+(Me>>1)+(Me>>2)+(Me>>6));g[Q]=Math.max(0,Math.min(255,Ae)),g[Q+1]=Math.max(0,Math.min(255,Fe)),g[Q+2]=Math.max(0,Math.min(255,De)),g[Q+3]=255}else s("Unknown Photometric interpretation: "+y);return g},o.replaceIMG=function(u){u==null&&(u=document.getElementsByTagName("img"));for(var l=["tif","tiff","dng","cr2","nef"],v=0;vc&&(c=g,_=B)}}o.decodeImage(l,_,v);var y=o.toRGBA8(_),w=_.width,M=_.height,T=o._xhrs.indexOf(u.target),B=o._imgs[T];o._xhrs.splice(T,1),o._imgs.splice(T,1);var H=document.createElement("canvas");H.width=w,H.height=M;var J=H.getContext("2d"),Q=new ImageData(new Uint8ClampedArray(y.buffer),w,M);J.putImageData(Q,0,0),B.setAttribute("src",H.toDataURL())},o._binBE={nextZero:function(u,l){for(;u[l]!=0;)l++;return l},readUshort:function(u,l){return u[l]<<8|u[l+1]},readShort:function(u,l){var v=o._binBE.ui8;return v[0]=u[l+1],v[1]=u[l+0],o._binBE.i16[0]},readInt:function(u,l){var v=o._binBE.ui8;return v[0]=u[l+3],v[1]=u[l+2],v[2]=u[l+1],v[3]=u[l+0],o._binBE.i32[0]},readUint:function(u,l){var v=o._binBE.ui8;return v[0]=u[l+3],v[1]=u[l+2],v[2]=u[l+1],v[3]=u[l+0],o._binBE.ui32[0]},readASCII:function(u,l,v){for(var p="",c=0;c>8&255,u[l+1]=v&255},writeInt:function(u,l,v){var p=o._binBE.ui8;o._binBE.i32[0]=v,u[l+3]=p[0],u[l+2]=p[1],u[l+1]=p[2],u[l+0]=p[3]},writeUint:function(u,l,v){u[l]=v>>24&255,u[l+1]=v>>16&255,u[l+2]=v>>8&255,u[l+3]=v>>0&255},writeASCII:function(u,l,v){for(var p=0;p>8&255},writeInt:function(u,l,v){var p=o._binBE.ui8;o._binBE.i32[0]=v,u[l+0]=p[0],u[l+1]=p[1],u[l+2]=p[2],u[l+3]=p[3]},writeUint:function(u,l,v){u[l]=v>>>0&255,u[l+1]=v>>>8&255,u[l+2]=v>>>16&255,u[l+3]=v>>>24&255},writeASCII:o._binBE.writeASCII},o._copyTile=function(u,l,v,p,c,_,f,g){for(var y=Math.min(l,c-f),w=Math.min(v,_-g),M=0;M>>8),this._=8),this.G>>>--this._&1},Z:function(c){var _=this._,f=this.G,g=Math.min(_,c);c-=g,_-=g;for(var y=f>>>_&(1<0;)f=this.w[this.N],this.N+=1+(f+1>>>8),g=Math.min(8,c),c-=g,_=8-g,y<<=g,y|=f>>>_&(1<>>8),w=8),y=M>>>--w&1,f=c[f+y],g=c[f+2],g!=-1)return _._=w,_.G=M,_.N=T,g;return-1};function v(c){this.z=new u(c),this.D(this.z)}v.prototype={$:function(c,_){this.Q=c.i(),this.F=c.l(),this.o=c.l();var f=this.O=c.i();this.L=[];for(var g=0;g0;)c-=this.e()},p:function(c,_){var f=c.i();this.U||(this.U=[]);for(var g=0;g>>4]}this.g=c.i(),c.t(c.N+_-(2+f*2))},D:function(c){var _=!1,f=c.l();if(f===v.q)do{var f=c.l(),g=c.l()-2;switch(f){case v.m:this.$(c,g);break;case v.K:this.W(g);break;case v.V:this.p(c,g),_=!0;break;default:c.t(c.N+g);break}}while(!_)},I:function(c,_){var f=l.B(_,c);if(f==16)return-32768;var g=c.Z(f);return(g&1<>>1)),c[O]=K+w(f,B[H])}Q+=_}}},v.m=65475,v.K=65476,v.q=65496,v.V=65498;function p(c){var _=new v(c),f=_.Q>8?Uint16Array:Uint8Array,g=new f(_.o*_.F*_.O),y=_.o*_.O;return _.B(g,y),g}return p}()})(e,r)}(),function(){function e(p){if(!p)throw Error("assert :P")}function r(p,c,_){for(var f=0;4>f;f++)if(p[c+f]!=_.charCodeAt(f))return!0;return!1}function s(p,c,_,f,g){for(var y=0;yf+1?[]:0),!(g.lengthy+1?[]:new c),!(w.length>>0;m&L;)L>>>=1;return L?(m&L-1)+L:m}function _(m,P,L,V,ce){e(!(V%L));do V-=L,m[P+V]=ce;while(0be;++be){if(He[be]>1<Ke)return 0;for(;0=be;++be,ce<<=1){if(Ke<<=1,rt+=Ke,Ke-=He[be],0>Ke)return 0;for(;0je&&(et-=He[je],!(0>=et));)++je,et<<=1;et=je-L,it=1<>L),ce,it,V),Qe=c(Qe,be)}}return rt!=2*qe[15]-1?0:Se}function g(m,P,L,V,ce){if(e(2328>=ce),512>=ce)var ve=a(512);else if(ve=a(ce),ve==null)return 0;return f(m,P,L,V,ce,ve)}function y(){this.value=this.g=0}function w(){this.value=this.g=0}function M(){this.G=u(5,y),this.H=a(5),this.jc=this.Qb=this.qb=this.nd=0,this.pd=u(en,w)}function T(m,P,L,V){e(m!=null),e(P!=null),e(2147483648>V),m.Ca=254,m.I=0,m.b=-8,m.Ka=0,m.oa=P,m.pa=L,m.Jd=P,m.Yc=L+V,m.Zc=4<=V?L+V-4+1:L,oe(m)}function B(m,P){for(var L=0;0V),m.Sb=V,m.Ra=0,m.u=0,m.h=0,4>>=8,m.Ra+=m.oa[m.pa+m.bb]<>>0,++m.bb,m.u-=8;R(m)&&(m.h=1,m.u=0)}function q(m,P){if(e(0<=P),!m.h&&P<=na){var L=pe(m)&ia[P];return m.u+=P,Q(m),L}return m.h=1,m.u=0}function O(){this.b=this.Ca=this.I=0,this.oa=[],this.pa=0,this.Jd=[],this.Yc=0,this.Zc=[],this.Ka=0}function K(){this.Ra=0,this.oa=[],this.h=this.u=this.bb=this.Sb=this.pa=0}function pe(m){return m.Ra>>>(m.u&tn-1)>>>0}function R(m){return e(m.bb<=m.Sb),m.h||m.bb==m.Sb&&m.u>tn}function Te(m,P){m.u=P,m.h=R(m)}function re(m){m.u>=Hn&&(e(m.u>=Hn),Q(m))}function oe(m){e(m!=null&&m.oa!=null),m.pa>>0,m.b+=8):(e(m!=null&&m.oa!=null),m.pam.b&&oe(m);var V=m.b,ce=L*P>>>8,ve=(m.I>>>V>ce)+0;for(ve?(L-=ce,m.I-=ce+1<>>0):L=ce+1,V=L,ce=0;256<=V;)ce+=8,V>>=8;return V=7^ce+sa[V],m.b-=V,m.Ca=(L<>24&255,m[P+1]=L>>16&255,m[P+2]=L>>8&255,m[P+3]=L>>0&255}function ee(m,P){return m[P+0]<<0|m[P+1]<<8}function ne(m,P){return ee(m,P)|m[P+2]<<16}function _e(m,P){return ee(m,P)|ee(m,P+2)<<16}function ae(m,P){var L=1<=ce||0>=ve?0:(L[0]=ce,V[0]=ve,1)}function Fe(m,P){return m+(1<>>P}function De(m,P){return((m&4278255360)+(P&4278255360)>>>0&4278255360)+((m&16711935)+(P&16711935)>>>0&16711935)>>>0}function ze(m,P){self[P]=function(L,V,ce,ve,Ee,Se,be){var Ue;for(Ue=0;Ue>>1)+(m&P)>>>0}function ke(m){if(0<=m&&256>m)return m;if(0>m)return 0;if(255>1))}function Ce(m,P,L){return Math.abs(P-L)-Math.abs(m-L)}function Be(m,P,L,V,ce,ve,Ee){for(V=ve[Ee-1],L=0;L>8&255,be=Ee&16711935,be=be+((Se<<16)+Se),be=be&16711935;V[ce+ve]=(Ee&4278255360)+be>>>0}}function xe(m,P){P.jd=m>>0&255,P.hd=m>>8&255,P.ud=m>>16&255}function Ie(m,P,L,V,ce,ve){var Ee;for(Ee=0;Ee>>8,Ue=Se>>>16,He=Se,Ue=Ue+((m.jd<<24>>24)*(be<<24>>24)>>>5),Ue=Ue&255,He=He+((m.hd<<24>>24)*(be<<24>>24)>>>5),He=He+((m.ud<<24>>24)*(Ue<<24>>24)>>>5),He=He&255;ce[ve+Ee]=(Se&4278255360)+(Ue<<16)+He}}function Re(m,P,L,V,ce){self[P]=function(ve,Ee,Se,be,Ue,He,qe,je,$e){for(be=qe;be>ve.b,$e=ve.Ea,Qe=ve.K[0],rt=ve.w;if(8>je)for(ve=(1<>=je}else self["VP8LMapColor"+L](be,Ue,Qe,rt,He,qe,Ee,Se,$e)}}function Le(m,P,L,V,ce){for(L=P+L;P>16&255,V[ce++]=ve>>8&255,V[ce++]=ve>>0&255}}function Oe(m,P,L,V,ce){for(L=P+L;P>16&255,V[ce++]=ve>>8&255,V[ce++]=ve>>0&255,V[ce++]=ve>>24&255}}function Ve(m,P,L,V,ce){for(L=P+L;P>16&240|ve>>12&15,ve=ve>>0&240|ve>>28&15;V[ce++]=Ee,V[ce++]=ve}}function Xe(m,P,L,V,ce){for(L=P+L;P>16&248|ve>>13&7,ve=ve>>5&224|ve>>3&31;V[ce++]=Ee,V[ce++]=ve}}function We(m,P,L,V,ce){for(L=P+L;P>0&255,V[ce++]=ve>>8&255,V[ce++]=ve>>16&255}}function t(m,P,L,V,ce,ve){if(ve==0)for(L=P+L;P>24|ve[1]>>8&65280|ve[2]<<8&16711680|ve[3]<<24)>>>0),ce+=32;else s(V,ce,m,P,L)}function h(m,P){self[P][0]=self[m+"0"],self[P][1]=self[m+"1"],self[P][2]=self[m+"2"],self[P][3]=self[m+"3"],self[P][4]=self[m+"4"],self[P][5]=self[m+"5"],self[P][6]=self[m+"6"],self[P][7]=self[m+"7"],self[P][8]=self[m+"8"],self[P][9]=self[m+"9"],self[P][10]=self[m+"10"],self[P][11]=self[m+"11"],self[P][12]=self[m+"12"],self[P][13]=self[m+"13"],self[P][14]=self[m+"0"],self[P][15]=self[m+"0"]}function d(m){return m==hn||m==ln||m==Mi||m==un}function x(){this.eb=[],this.size=this.A=this.fb=0}function E(){this.y=[],this.f=[],this.ea=[],this.F=[],this.Tc=this.Ed=this.Cd=this.Fd=this.lb=this.Db=this.Ab=this.fa=this.J=this.W=this.N=this.O=0}function C(){this.Rd=this.height=this.width=this.S=0,this.f={},this.f.RGBA=new x,this.f.kb=new E,this.sd=null}function b(){this.width=[0],this.height=[0],this.Pd=[0],this.Qd=[0],this.format=[0]}function U(){this.Id=this.fd=this.Md=this.hb=this.ib=this.da=this.bd=this.cd=this.j=this.v=this.Da=this.Sd=this.ob=0}function D(m){return alert("todo:WebPSamplerProcessPlane"),m.T}function k(m,P){var L=m.T,V=P.ba.f.RGBA,ce=V.eb,ve=V.fb+m.ka*V.A,Ee=er[P.ba.S],Se=m.y,be=m.O,Ue=m.f,He=m.N,qe=m.ea,je=m.W,$e=P.cc,Qe=P.dc,rt=P.Mc,Ke=P.Nc,et=m.ka,it=m.ka+m.T,ht=m.U,ot=ht+1>>1;for(et==0?Ee(Se,be,null,null,Ue,He,qe,je,Ue,He,qe,je,ce,ve,null,null,ht):(Ee(P.ec,P.fc,Se,be,$e,Qe,rt,Ke,Ue,He,qe,je,ce,ve-V.A,ce,ve,ht),++L);et+2L,ce=L==Si||L==Ti||L==Ci||L==on||L==12||d(L);if(P.memory=null,P.Ib=null,P.Jb=null,P.Nd=null,!zn(P.Oa,m,ce?11:12))return 0;if(ce&&d(L)&&kn(),m.da)alert("todo:use_scaling");else{if(V){if(P.Ib=D,m.Kb){if(L=m.U+1>>1,P.memory=a(m.U+2*L),P.memory==null)return 0;P.ec=P.memory,P.fc=0,P.cc=P.ec,P.dc=P.fc+m.U,P.Mc=P.cc,P.Nc=P.dc+L,P.Ib=k,kn()}}else alert("todo:EmitYUV");ce&&(P.Jb=Z,V&&_i())}if(V&&!Fs){for(m=0;256>m;++m)ba[m]=89858*(m-128)+ki>>bi,Ia[m]=-22014*(m-128)+ki,Aa[m]=-45773*(m-128),ka[m]=113618*(m-128)+ki>>bi;for(m=jr;m>bi,Ra[m-jr]=St(P,255),Da[m-jr]=St(P+8>>4,15);Fs=1}return 1}function W(m){var P=m.ma,L=m.U,V=m.T;return e(!(m.ka&1)),0>=L||0>=V?0:(L=P.Ib(m,P),P.Jb!=null&&P.Jb(m,P,L),P.Dc+=L,1)}function F(m){m.ma.memory=null}function z(m,P,L,V){return q(m,8)!=47?0:(P[0]=q(m,14)+1,L[0]=q(m,14)+1,V[0]=q(m,1),q(m,3)!=0?0:!m.h)}function G(m,P){if(4>m)return m+1;var L=m-2>>1;return(2+(m&1)<>4)*m+(8-(L&15));return 1<=L?L:1}function A(m,P,L){var V=pe(L);P+=V&255;var ce=m[P].g-8;return 0>>0,e(8>=L.g),m.g}function I(m,P,L){var V=m.xc;return P=V==0?0:m.vc[m.md*(L>>V)+(P>>V)],e(P>rt.b)*xt;Ke>8&15],Zt=(kt&~pt)+dt;Zt>ot&&(Zt=ot),Ot(je,$e+ +kt,it,ht+kt-ot,Zt-kt,it,ht+kt),kt=Zt}$e+=ot,ht+=ot,++Ke,Ke&pt||(rt+=xt)}qe!=Ue.nc&&s(be,Se-Qe,be,Se+(qe-He-1)*Qe,Qe);break;case 1:for(Qe=je,et=$e,je=Ue.Ea,$e=1<>Ue.b)*Ke;He=ce),0ve.o&&(V=ve.o),L=V?L=0:(ce[0]+=4*ve.v,ve.ka=L-ve.j,ve.U=ve.va-ve.v,ve.T=V-L,L=1),L){if(Se=Se[0],L=m.ca,11>L.S){for(var He=L.f.RGBA,V=L.S,ce=ve.U,ve=ve.T,Ue=He.eb,qe=He.A,je=ve,He=He.fb+m.Ma*He.A;0V){var ce=m.l.width,ve=L.ca,Ee=L.tb+ce*V,Se=m.V,be=m.Ba+m.c*V,Ue=m.gc;e(m.ab==1),e(Ue[0].hc==3),la(Ue[0],V,P,Se,be,ve,Ee),de(L,V,P,ve,Ee,ce)}m.C=m.Ma=P}function ie(m,P,L,V,ce,ve,Ee){var Se=m.$/V,be=m.$%V,Ue=m.m,He=m.s,qe=L+m.$,je=qe;ce=L+V*ce;var $e=L+V*ve,Qe=280+He.ua,rt=m.Pb?Se:16777216,Ke=0=rt){var rt=m,dt=qe-L;e(rt.Pb),rt.wd=rt.m,rt.xd=dt,0xt.g?(Te(ot,ot.u+xt.g),dt[pt]=xt.value,ot=0):(Te(ot,ot.u+xt.g-256),e(256<=xt.value),ot=xt.value),ot==0&&(ht=!0)}else ot=A(it.G[0],it.H[0],Ue);if(Ue.h)break;if(ht||256>ot){if(!ht)if(it.nd)P[qe]=(it.qb|ot<<8)>>>0;else{if(re(Ue),ht=A(it.G[1],it.H[1],Ue),re(Ue),dt=A(it.G[2],it.H[2],Ue),pt=A(it.G[3],it.H[3],Ue),Ue.h)break;P[qe]=(pt<<24|ht<<16|ot<<8|dt)>>>0}if(ht=!1,++qe,++be,be>=V&&(be=0,++Se,Ee!=null&&Se<=ve&&!(Se%16)&&Ee(m,Se),Ke!=null))for(;je>>Ke.Mb]=ot}else if(280>ot){if(ot=G(ot-256,Ue),dt=A(it.G[4],it.H[4],Ue),re(Ue),dt=G(dt,Ue),dt=X(V,dt),Ue.h)break;if(qe-L=V;)be-=V,++Se,Ee!=null&&Se<=ve&&!(Se%16)&&Ee(m,Se);if(e(qe<=ce),be&et&&(it=I(He,be,Se)),Ke!=null)for(;je>>Ke.Mb]=ot}else if(ot>>Ke.Mb]=ot;ot=qe,dt=Ke,e(!(ht>>>dt.Xa)),P[ot]=dt.X[ht],ht=!0}else break e;ht||e(Ue.h==R(Ue))}if(m.Pb&&Ue.h&&qeve?ve:Se),m.a=0,m.$=qe-L}return 1}return m.a=3,0}function ge(m){e(m!=null),m.vc=null,m.yc=null,m.Ya=null;var P=m.Wa;P!=null&&(P.X=null),m.vb=null,e(m!=null)}function Pe(){var m=new Js;return m==null?null:(m.a=0,m.xb=xs,h("Predictor","VP8LPredictors"),h("Predictor","VP8LPredictors_C"),h("PredictorAdd","VP8LPredictorsAdd"),h("PredictorAdd","VP8LPredictorsAdd_C"),Wn=we,rn=Ie,Yn=Le,nn=Oe,sn=Ve,Jn=Xe,qn=We,self.VP8LMapColor32b=ha,self.VP8LMapColor8b=ua,m)}function Ye(m,P,L,V,ce){var ve=1,Ee=[m],Se=[P],be=V.m,Ue=V.s,He=null,qe=0;e:for(;;){if(L)for(;ve&&q(be,1);){var je=Ee,$e=Se,Qe=V,rt=1,Ke=Qe.m,et=Qe.gc[Qe.ab],it=q(Ke,2);if(Qe.Oc&1<=Qe.ab),it){case 0:case 1:et.b=q(Ke,3)+2,rt=Ye(Fe(et.Ea,et.b),Fe(et.nc,et.b),0,Qe,et.K),et.K=et.K[0];break;case 3:var ht=q(Ke,8)+1,ot=16>wt.b),bt=a(It);if(bt==null)dt=0;else{var kt=wt.K[0],Ot=wt.w;for(bt[0]=wt.K[0][0],pt=1;pt<1*xt;++pt)bt[pt]=De(kt[Ot+pt],bt[pt-1]);for(;pt<4*It;++pt)bt[pt]=0;wt.K[0]=null,wt.K[0]=bt,dt=1}}rt=dt;break;case 2:break;default:e(0)}ve=rt}}if(Ee=Ee[0],Se=Se[0],ve&&q(be,1)&&(qe=q(be,4),ve=1<=qe&&11>=qe,!ve)){V.a=3;break e}var Zt;if(Zt=ve)r:{var Yt=V,or=Ee,Vt=Se,tr=qe,Rr=L,Jt,zt,gn=Yt.m,Qr=Yt.s,Dr=[null],Lr,Ur=1,_n=0,Ba=ga[tr];t:for(;;){if(Rr&&q(gn,1)){var mn=q(gn,3)+2,As=Fe(or,mn),Is=Fe(Vt,mn),Na=As*Is;if(!Ye(As,Is,0,Yt,Dr))break t;for(Dr=Dr[0],Qr.xc=mn,Jt=0;Jt>8&65535;Dr[Jt]=xn,xn>=Ur&&(Ur=xn+1)}}if(gn.h)break t;for(zt=0;5>zt;++zt){var Tr=is[zt];!zt&&0=Rs),Ii=Ds;var ei=a(_n);if(Ii==null||ei==null||yn==null){Yt.a=1;break t}var Ri=yn;for(Jt=Lr=0;Jtzt;++zt){Tr=is[zt],Br[zt]=Ri,Nr[zt]=Lr,!zt&&0zi)break i}else Oi=zi;for(ri=0;riOr)zs[ri++]=Or,Or!=0&&(Gs=Or);else{var Xa=Or==16,Vs=Or-16,Ya=ca[Vs],Ws=q(gr,fa[Vs])+Ya;if(ri+Ws>zi)break i;for(var Ja=Xa?Gs:0;0=zt){var Tn=ei[0],ii;for(ii=1;iiTn&&(Tn=ei[ii]);Us+=Tn}}if(ar.nd=Di,ar.Qb=0,Di&&(ar.qb=(Br[3][Nr[3]+0].value<<24|Br[1][Nr[1]+0].value<<16|Br[2][Nr[2]+0].value)>>>0,Ls==0&&256>Br[0][Nr[0]+0].value&&(ar.Qb=1,ar.qb+=Br[0][Nr[0]+0].value<<8)),ar.jc=!ar.Qb&&6>Us,ar.jc){var Gi,ur=ar;for(Gi=0;Gi>=N(Zi,8,mr),_r>>=N(ur.G[1][ur.H[1]+_r],16,mr),_r>>=N(ur.G[2][ur.H[2]+_r],0,mr),N(ur.G[3][ur.H[3]+_r],24,mr))}}}Qr.vc=Dr,Qr.Wb=Ur,Qr.Ya=Ii,Qr.yc=yn,Zt=1;break r}Zt=0}if(ve=Zt,!ve){V.a=3;break e}if(0m?0:m>P?P:m}function Rt(){this.T=this.U=this.ka=this.height=this.width=0,this.y=[],this.f=[],this.ea=[],this.Rc=this.fa=this.W=this.N=this.O=0,this.ma="void",this.put="VP8IoPutHook",this.ac="VP8IoSetupHook",this.bc="VP8IoTeardownHook",this.ha=this.Kb=0,this.data=[],this.hb=this.ib=this.da=this.o=this.j=this.va=this.v=this.Da=this.ob=this.w=0,this.F=[],this.J=0}function Bt(){var m=new lt;return m!=null&&(m.a=0,m.sc="OK",m.cb=0,m.Xb=0,Kr||(Kr=Ct)),m}function yt(m,P,L){return m.a==0&&(m.a=P,m.sc=L,m.cb=0),0}function Ut(m,P,L){return 3<=L&&m[P+0]==157&&m[P+1]==1&&m[P+2]==42}function Dt(m,P){if(m==null)return 0;if(m.a=0,m.sc="OK",P==null)return yt(m,2,"null VP8Io passed to VP8GetHeaders()");var L=P.data,V=P.w,ce=P.ha;if(4>ce)return yt(m,7,"Truncated header.");var ve=L[V+0]|L[V+1]<<8|L[V+2]<<16,Ee=m.Od;if(Ee.Rb=!(ve&1),Ee.td=ve>>1&7,Ee.yd=ve>>4&1,Ee.ub=ve>>5,3ce)return yt(m,7,"cannot parse picture header");if(!Ut(L,V,ce))return yt(m,3,"Bad code word");Se.c=(L[V+4]<<8|L[V+3])&16383,Se.Td=L[V+4]>>6,Se.i=(L[V+6]<<8|L[V+5])&16383,Se.Ud=L[V+6]>>6,V+=7,ce-=7,m.za=Se.c+15>>4,m.Ub=Se.i+15>>4,P.width=Se.c,P.height=Se.i,P.Da=0,P.j=0,P.v=0,P.va=P.width,P.o=P.height,P.da=0,P.ib=P.width,P.hb=P.height,P.U=P.width,P.T=P.height,ve=m.Pa,o(ve.jb,0,255,ve.jb.length),ve=m.Qa,e(ve!=null),ve.Cb=0,ve.Bb=0,ve.Fb=1,o(ve.Zb,0,0,ve.Zb.length),o(ve.Lb,0,0,ve.Lb)}if(Ee.ub>ce)return yt(m,7,"bad partition length");ve=m.m,T(ve,L,V,Ee.ub),V+=Ee.ub,ce-=Ee.ub,Ee.Rb&&(Se.Ld=me(ve),Se.Kd=me(ve)),Se=m.Qa;var be=m.Pa,Ue;if(e(ve!=null),e(Se!=null),Se.Cb=me(ve),Se.Cb){if(Se.Bb=me(ve),me(ve)){for(Se.Fb=me(ve),Ue=0;4>Ue;++Ue)Se.Zb[Ue]=me(ve)?H(ve,7):0;for(Ue=0;4>Ue;++Ue)Se.Lb[Ue]=me(ve)?H(ve,6):0}if(Se.Bb)for(Ue=0;3>Ue;++Ue)be.jb[Ue]=me(ve)?B(ve,8):255}else Se.Bb=0;if(ve.Ka)return yt(m,3,"cannot parse segment header");if(Se=m.ed,Se.zd=me(ve),Se.Tb=B(ve,6),Se.wb=B(ve,3),Se.Pc=me(ve),Se.Pc&&me(ve)){for(be=0;4>be;++be)me(ve)&&(Se.vd[be]=H(ve,6));for(be=0;4>be;++be)me(ve)&&(Se.od[be]=H(ve,6))}if(m.L=Se.Tb==0?0:Se.zd?1:2,ve.Ka)return yt(m,3,"cannot parse filter header");Ue=V;var He=ce;if(ce=Ue,V=Ue+He,Se=He,m.Xb=(1<Se&&(qe=Se),T(m.Jc[+He],L,Ue,qe),Ue+=qe,Se-=qe,ce+=3}T(m.Jc[+be],L,Ue,Se),L=Ueqe;++qe){if(He.Cb){var je=He.Zb[qe];He.Fb||(je+=L)}else if(0>16,8>$e.Eb[1]&&($e.Eb[1]=8),$e.Qc[0]=fn[St(je+be,117)],$e.Qc[1]=cn[St(je+Ue,127)],$e.lc=je+Ue}if(!Ee.Rb)return yt(m,4,"Not a key frame.");for(me(ve),Ee=m.Pa,L=0;4>L;++L){for(ce=0;8>ce;++ce)for(V=0;3>V;++V)for(Se=0;11>Se;++Se)be=ue(ve,Ea[L][ce][V][Se])?B(ve,8):ya[L][ce][V][Se],Ee.Wc[L][ce].Yb[V][Se]=be;for(ce=0;17>ce;++ce)Ee.Xc[L][ce]=Ee.Wc[L][Pa[ce]]}return m.kc=me(ve),m.kc&&(m.Bd=B(ve,8)),m.cb=1}function Ct(m,P,L,V,ce,ve,Ee){var Se=P[ce].Yb[L];for(L=0;16>ce;++ce){if(!ue(m,Se[L+0]))return ce;for(;!ue(m,Se[L+1]);)if(Se=P[++ce].Yb[0],L=0,ce==16)return 16;var be=P[ce+1].Yb;if(ue(m,Se[L+2])){var Ue=m,qe=Se,je=L,He=0;if(ue(Ue,qe[je+3]))if(ue(Ue,qe[je+6])){for(Se=0,He=ue(Ue,qe[je+8]),qe=ue(Ue,qe[je+9+He]),je=2*He+qe,He=0,qe=ma[je];qe[Se];++Se)He+=He+ue(Ue,qe[Se]);He+=3+(8<Ue.b&&oe(Ue);var qe=Ue.b,je=Ue.Ca>>1,$e=je-(Ue.I>>qe)>>31;--Ue.b,Ue.Ca+=$e,Ue.Ca|=1,Ue.I-=(je+1&$e)<Se;++Se){var Qe=He[0+Se],rt;for(rt=0;4>rt;++rt){Qe=wa[be[Ue+rt]][Qe];for(var Ke=ns[ue(Ee,Qe[0])];0>3;for(Ke=0;256>Ke;Ke+=16)Se[je+Ke]=pt}ht=1,ot=Ue[0]}var xt=Ee.la&15,wt=$e.la&15;for(Ke=0;4>Ke;++Ke){var It=wt&1;for(pt=it=0;4>pt;++pt)dt=It+(xt&1),dt=Kr(be,ot,dt,qe.Sc,ht,Se,je),It=dt>ht,xt=xt>>1|It<<7,it=it<<2|(3>=4,wt=wt>>1|It<<7,rt=(rt<<8|it)>>>0}for(ot=xt,ht=wt>>4,et=0;4>et;et+=2){for(it=0,xt=Ee.la>>4+et,wt=$e.la>>4+et,Ke=0;2>Ke;++Ke){for(It=wt&1,pt=0;2>pt;++pt)dt=It+(xt&1),dt=Kr(be,Ue[2],dt,qe.Qc,0,Se,je),It=0>1|It<<3,it=it<<2|(3>=2,wt=wt>>1|It<<5}Qe|=it<<4*et,ot|=xt<<4<=L.zb&&L.M<=L.Va,L.Aa==0)e:{if(ve.M=L.M,ve.uc=Ee,Nn(L,ve),ce=1,it=L.D,ve=it.Nb,Qe=Ai[L.L],Ee=Qe*L.R,be=Qe/2*L.B,Ke=16*ve*L.R,pt=8*ve*L.B,Ue=L.sa,He=L.ta-Ee+Ke,qe=L.qa,Se=L.ra-be+pt,je=L.Ha,$e=L.Ia-be+pt,xt=it.M,wt=xt==0,rt=xt>=L.Va-1,L.Aa==2&&Nn(L,it),it.uc)for(dt=L,It=dt.D.M,e(dt.D.uc),it=dt.yb;itV.o&&(xt=V.o),V.F=null,V.J=null,L.Fa!=null&&0>1),V.W+=L.B*(Qe>>1),V.F!=null&&(V.J+=V.width*Qe)),it>1,V.W+=V.v>>1,V.F!=null&&(V.J+=V.v),V.ka=it-V.j,V.U=V.va-V.v,V.T=xt-it,ce=V.put(V))}ve+1!=L.Ic||rt||(s(L.sa,L.ta-Ee,Ue,He+16*L.R,Ee),s(L.qa,L.ra-be,qe,Se+8*L.B,be),s(L.Ha,L.Ia-be,je,$e+8*L.B,be))}if(!ce)return yt(m,6,"Output aborted.")}return 1}function $t(m,P){if(m==null)return 0;if(P==null)return yt(m,2,"NULL VP8Io parameter in VP8Decode().");if(!m.cb&&!Dt(m,P))return 0;if(e(m.cb),P.ac==null||P.ac(P)){P.ob&&(m.L=0);var L=Ai[m.L];if(m.L==2?(m.yb=0,m.zb=0):(m.yb=P.v-L>>4,m.zb=P.j-L>>4,0>m.yb&&(m.yb=0),0>m.zb&&(m.zb=0)),m.Va=P.o+15+L>>4,m.Hb=P.va+15+L>>4,m.Hb>m.za&&(m.Hb=m.za),m.Va>m.Ub&&(m.Va=m.Ub),0L;++L){var ce;if(m.Qa.Cb){var ve=m.Qa.Lb[L];m.Qa.Fb||(ve+=V.Tb)}else ve=V.Tb;for(ce=0;1>=ce;++ce){var Ee=m.gd[L][ce],Se=ve;if(V.Pc&&(Se+=V.vd[0],ce&&(Se+=V.od[0])),Se=0>Se?0:63>2:be>>1,be>9-V.wb&&(be=9-V.wb)),1>be&&(be=1),Ee.dd=be,Ee.tc=2*Se+be,Ee.ld=40<=Se?2:15<=Se?1:0}else Ee.tc=0;Ee.La=ce}}}L=0}else yt(m,6,"Frame setup failed"),L=m.a;if(L=L==0){if(L){m.$c=0,0m.Vb){if(m.Vb=0,m.Ec=a(Ee),m.Fc=0,m.Ec==null){L=yt(m,1,"no memory during frame initialization.");break e}m.Vb=Ee}Ee=m.Ec,Se=m.Fc,m.Ac=Ee,m.Bc=Se,Se+=V,m.Gd=u(Ue,vt),m.Hd=0,m.rb=u(He+1,ct),m.sb=1,m.wa=qe?u(qe,ft):null,m.Y=0,m.D.Nb=0,m.D.wa=m.wa,m.D.Y=m.Y,0=L;++L)Kn[255+L]=0>L?-L:L;for(L=-1020;1020>=L;++L)$n[1020+L]=-128>L?-128:127=L;++L)jn[112+L]=-16>L?-16:15=L;++L)Qn[255+L]=0>L?0:255>3),m[P+L+32*V]=ce&-256?0>ce?0:255:ce}function Gt(m,P,L,V,ce,ve){Ft(m,P,0,L,V+ce),Ft(m,P,1,L,V+ve),Ft(m,P,2,L,V-ve),Ft(m,P,3,L,V-ce)}function Nt(m){return(20091*m>>16)+m}function hr(m,P,L,V){var ce=0,ve,Ee=a(16);for(ve=0;4>ve;++ve){var Se=m[P+0]+m[P+8],be=m[P+0]-m[P+8],Ue=(35468*m[P+4]>>16)-Nt(m[P+12]),He=Nt(m[P+4])+(35468*m[P+12]>>16);Ee[ce+0]=Se+He,Ee[ce+1]=be+Ue,Ee[ce+2]=be-Ue,Ee[ce+3]=Se-He,ce+=4,P++}for(ve=ce=0;4>ve;++ve)m=Ee[ce+0]+4,Se=m+Ee[ce+8],be=m-Ee[ce+8],Ue=(35468*Ee[ce+4]>>16)-Nt(Ee[ce+12]),He=Nt(Ee[ce+4])+(35468*Ee[ce+12]>>16),Ft(L,V,0,0,Se+He),Ft(L,V,1,0,be+Ue),Ft(L,V,2,0,be-Ue),Ft(L,V,3,0,Se-He),ce++,V+=32}function rr(m,P,L,V){var ce=m[P+0]+4,ve=35468*m[P+4]>>16,Ee=Nt(m[P+4]),Se=35468*m[P+1]>>16;m=Nt(m[P+1]),Gt(L,V,0,ce+Ee,m,Se),Gt(L,V,1,ce+ve,m,Se),Gt(L,V,2,ce-ve,m,Se),Gt(L,V,3,ce-Ee,m,Se)}function zr(m,P,L,V,ce){hr(m,P,L,V),ce&&hr(m,P+16,L,V+4)}function Hi(m,P,L,V){Fi(m,P+0,L,V,1),Fi(m,P+32,L,V+128,1)}function Vi(m,P,L,V){m=m[P+0]+4;var ce;for(ce=0;4>ce;++ce)for(P=0;4>P;++P)Ft(L,V,P,ce,m)}function Wi(m,P,L,V){m[P+0]&&Ir(m,P+0,L,V),m[P+16]&&Ir(m,P+16,L,V+4),m[P+32]&&Ir(m,P+32,L,V+128),m[P+48]&&Ir(m,P+48,L,V+128+4)}function fr(m,P,L,V){var ce=a(16),ve;for(ve=0;4>ve;++ve){var Ee=m[P+0+ve]+m[P+12+ve],Se=m[P+4+ve]+m[P+8+ve],be=m[P+4+ve]-m[P+8+ve],Ue=m[P+0+ve]-m[P+12+ve];ce[0+ve]=Ee+Se,ce[8+ve]=Ee-Se,ce[4+ve]=Ue+be,ce[12+ve]=Ue-be}for(ve=0;4>ve;++ve)m=ce[0+4*ve]+3,Ee=m+ce[3+4*ve],Se=ce[1+4*ve]+ce[2+4*ve],be=ce[1+4*ve]-ce[2+4*ve],Ue=m-ce[3+4*ve],L[V+0]=Ee+Se>>3,L[V+16]=Ue+be>>3,L[V+32]=Ee-Se>>3,L[V+48]=Ue-be>>3,V+=64}function ni(m,P,L){var V=P-32,ce=qt,ve=255-m[V-1],Ee;for(Ee=0;EeL;++L)s(m,P+32*L,m,P-32,16)}function Cr(m,P){var L;for(L=16;0V;++V)o(P,L+32*V,m,16)}function Ht(m,P){var L=16,V;for(V=0;16>V;++V)L+=m[P-1+32*V]+m[P+V-32];Xt(L>>5,m,P)}function Mt(m,P){var L=8,V;for(V=0;16>V;++V)L+=m[P-1+32*V];Xt(L>>4,m,P)}function At(m,P){var L=8,V;for(V=0;16>V;++V)L+=m[P+V-32];Xt(L>>4,m,P)}function Lt(m,P){Xt(128,m,P)}function Pt(m,P,L){return m+2*P+L+2>>2}function ai(m,P){var L=P-32,L=new Uint8Array([Pt(m[L-1],m[L+0],m[L+1]),Pt(m[L+0],m[L+1],m[L+2]),Pt(m[L+1],m[L+2],m[L+3]),Pt(m[L+2],m[L+3],m[L+4])]),V;for(V=0;4>V;++V)s(m,P+32*V,L,0,L.length)}function Zr(m,P){var L=m[P-1],V=m[P-1+32],ce=m[P-1+64],ve=m[P-1+96];$(m,P+0,16843009*Pt(m[P-1-32],L,V)),$(m,P+32,16843009*Pt(L,V,ce)),$(m,P+64,16843009*Pt(V,ce,ve)),$(m,P+96,16843009*Pt(ce,ve,ve))}function Yi(m,P){var L=4,V;for(V=0;4>V;++V)L+=m[P+V-32]+m[P-1+32*V];for(L>>=3,V=0;4>V;++V)o(m,P+32*V,L,4)}function oi(m,P){var L=m[P-1+0],V=m[P-1+32],ce=m[P-1+64],ve=m[P-1-32],Ee=m[P+0-32],Se=m[P+1-32],be=m[P+2-32],Ue=m[P+3-32];m[P+0+96]=Pt(V,ce,m[P-1+96]),m[P+1+96]=m[P+0+64]=Pt(L,V,ce),m[P+2+96]=m[P+1+64]=m[P+0+32]=Pt(ve,L,V),m[P+3+96]=m[P+2+64]=m[P+1+32]=m[P+0+0]=Pt(Ee,ve,L),m[P+3+64]=m[P+2+32]=m[P+1+0]=Pt(Se,Ee,ve),m[P+3+32]=m[P+2+0]=Pt(be,Se,Ee),m[P+3+0]=Pt(Ue,be,Se)}function Mr(m,P){var L=m[P+1-32],V=m[P+2-32],ce=m[P+3-32],ve=m[P+4-32],Ee=m[P+5-32],Se=m[P+6-32],be=m[P+7-32];m[P+0+0]=Pt(m[P+0-32],L,V),m[P+1+0]=m[P+0+32]=Pt(L,V,ce),m[P+2+0]=m[P+1+32]=m[P+0+64]=Pt(V,ce,ve),m[P+3+0]=m[P+2+32]=m[P+1+64]=m[P+0+96]=Pt(ce,ve,Ee),m[P+3+32]=m[P+2+64]=m[P+1+96]=Pt(ve,Ee,Se),m[P+3+64]=m[P+2+96]=Pt(Ee,Se,be),m[P+3+96]=Pt(Se,be,be)}function cr(m,P){var L=m[P-1+0],V=m[P-1+32],ce=m[P-1+64],ve=m[P-1-32],Ee=m[P+0-32],Se=m[P+1-32],be=m[P+2-32],Ue=m[P+3-32];m[P+0+0]=m[P+1+64]=ve+Ee+1>>1,m[P+1+0]=m[P+2+64]=Ee+Se+1>>1,m[P+2+0]=m[P+3+64]=Se+be+1>>1,m[P+3+0]=be+Ue+1>>1,m[P+0+96]=Pt(ce,V,L),m[P+0+64]=Pt(V,L,ve),m[P+0+32]=m[P+1+96]=Pt(L,ve,Ee),m[P+1+32]=m[P+2+96]=Pt(ve,Ee,Se),m[P+2+32]=m[P+3+96]=Pt(Ee,Se,be),m[P+3+32]=Pt(Se,be,Ue)}function Hr(m,P){var L=m[P+0-32],V=m[P+1-32],ce=m[P+2-32],ve=m[P+3-32],Ee=m[P+4-32],Se=m[P+5-32],be=m[P+6-32],Ue=m[P+7-32];m[P+0+0]=L+V+1>>1,m[P+1+0]=m[P+0+64]=V+ce+1>>1,m[P+2+0]=m[P+1+64]=ce+ve+1>>1,m[P+3+0]=m[P+2+64]=ve+Ee+1>>1,m[P+0+32]=Pt(L,V,ce),m[P+1+32]=m[P+0+96]=Pt(V,ce,ve),m[P+2+32]=m[P+1+96]=Pt(ce,ve,Ee),m[P+3+32]=m[P+2+96]=Pt(ve,Ee,Se),m[P+3+64]=Pt(Ee,Se,be),m[P+3+96]=Pt(Se,be,Ue)}function Ji(m,P){var L=m[P-1+0],V=m[P-1+32],ce=m[P-1+64],ve=m[P-1+96];m[P+0+0]=L+V+1>>1,m[P+2+0]=m[P+0+32]=V+ce+1>>1,m[P+2+32]=m[P+0+64]=ce+ve+1>>1,m[P+1+0]=Pt(L,V,ce),m[P+3+0]=m[P+1+32]=Pt(V,ce,ve),m[P+3+32]=m[P+1+64]=Pt(ce,ve,ve),m[P+3+64]=m[P+2+64]=m[P+0+96]=m[P+1+96]=m[P+2+96]=m[P+3+96]=ve}function qi(m,P){var L=m[P-1+0],V=m[P-1+32],ce=m[P-1+64],ve=m[P-1+96],Ee=m[P-1-32],Se=m[P+0-32],be=m[P+1-32],Ue=m[P+2-32];m[P+0+0]=m[P+2+32]=L+Ee+1>>1,m[P+0+32]=m[P+2+64]=V+L+1>>1,m[P+0+64]=m[P+2+96]=ce+V+1>>1,m[P+0+96]=ve+ce+1>>1,m[P+3+0]=Pt(Se,be,Ue),m[P+2+0]=Pt(Ee,Se,be),m[P+1+0]=m[P+3+32]=Pt(L,Ee,Se),m[P+1+32]=m[P+3+64]=Pt(V,L,Ee),m[P+1+64]=m[P+3+96]=Pt(ce,V,L),m[P+1+96]=Pt(ve,ce,V)}function hi(m,P){var L;for(L=0;8>L;++L)s(m,P+32*L,m,P-32,8)}function nr(m,P){var L;for(L=0;8>L;++L)o(m,P,m[P-1],8),P+=32}function xr(m,P,L){var V;for(V=0;8>V;++V)o(P,L+32*V,m,8)}function li(m,P){var L=8,V;for(V=0;8>V;++V)L+=m[P+V-32]+m[P-1+32*V];xr(L>>4,m,P)}function ui(m,P){var L=4,V;for(V=0;8>V;++V)L+=m[P+V-32];xr(L>>3,m,P)}function Fr(m,P){var L=4,V;for(V=0;8>V;++V)L+=m[P-1+32*V];xr(L>>3,m,P)}function br(m,P){xr(128,m,P)}function yr(m,P,L){var V=m[P-L],ce=m[P+0],ve=3*(ce-V)+an[1020+m[P-2*L]-m[P+L]],Ee=Ei[112+(ve+4>>3)];m[P-L]=qt[255+V+Ei[112+(ve+3>>3)]],m[P+0]=qt[255+ce-Ee]}function fi(m,P,L,V){var ce=m[P+0],ve=m[P+L];return Qt[255+m[P-2*L]-m[P-L]]>V||Qt[255+ve-ce]>V}function Tt(m,P,L,V){return 4*Qt[255+m[P-L]-m[P+0]]+Qt[255+m[P-2*L]-m[P+L]]<=V}function ci(m,P,L,V,ce){var ve=m[P-3*L],Ee=m[P-2*L],Se=m[P-L],be=m[P+0],Ue=m[P+L],He=m[P+2*L],qe=m[P+3*L];return 4*Qt[255+Se-be]+Qt[255+Ee-Ue]>V?0:Qt[255+m[P-4*L]-ve]<=ce&&Qt[255+ve-Ee]<=ce&&Qt[255+Ee-Se]<=ce&&Qt[255+qe-He]<=ce&&Qt[255+He-Ue]<=ce&&Qt[255+Ue-be]<=ce}function Vr(m,P,L,V){var ce=2*V+1;for(V=0;16>V;++V)Tt(m,P+V,L,ce)&&yr(m,P+V,L)}function Wr(m,P,L,V){var ce=2*V+1;for(V=0;16>V;++V)Tt(m,P+V*L,1,ce)&&yr(m,P+V*L,1)}function jt(m,P,L,V){var ce;for(ce=3;0>7,it=18*Ke+63>>7,Ke=9*Ke+63>>7;be[Ue-3*He]=qt[255+be[Ue-3*He]+Ke],be[Ue-2*He]=qt[255+qe+it],be[Ue-He]=qt[255+je+et],be[Ue+0]=qt[255+$e-et],be[Ue+He]=qt[255+Qe-it],be[Ue+2*He]=qt[255+rt-Ke]}P+=V}}function Er(m,P,L,V,ce,ve,Ee,Se){for(ve=2*ve+1;0>3)],Qe=Ei[112+(Qe+3>>3)],Ke=rt+1>>1;be[Ue-2*He]=qt[255+be[Ue-2*He]+Ke],be[Ue-He]=qt[255+qe+Qe],be[Ue+0]=qt[255+je-rt],be[Ue+He]=qt[255+$e-Ke]}P+=V}}function bn(m,P,L,V,ce,ve){wr(m,P,L,1,16,V,ce,ve)}function Xr(m,P,L,V,ce,ve){wr(m,P,1,L,16,V,ce,ve)}function di(m,P,L,V,ce,ve){var Ee;for(Ee=3;0be?0:255:be)&255,be=Se,ce[ve+He]=Ue}}function js(m,P,L,V){var ce=P.width,ve=P.o;if(e(m!=null&&P!=null),0>L||0>=V||L+V>ve)return null;if(!m.Cc){if(m.ga==null){m.ga=new qs;var Ee;if((Ee=m.ga==null)||(Ee=P.width*P.o,e(m.Gb.length==0),m.Gb=a(Ee),m.Uc=0,m.Gb==null?Ee=0:(m.mb=m.Gb,m.nb=m.Uc,m.rc=null,Ee=1),Ee=!Ee),!Ee){Ee=m.ga;var Se=m.Fa,be=m.P,Ue=m.qc,He=m.mb,qe=m.nb,je=be+1,$e=Ue-1,Qe=Ee.l;if(e(Se!=null&&He!=null&&P!=null),dr[0]=null,dr[1]=$i,dr[2]=Ks,dr[3]=$s,Ee.ca=He,Ee.tb=qe,Ee.c=P.width,Ee.i=P.height,e(0=Ue)P=0;else if(Ee.$a=Se[be+0]>>0&3,Ee.Z=Se[be+0]>>2&3,Ee.Lc=Se[be+0]>>4&3,be=Se[be+0]>>6&3,0>Ee.$a||1=Ee.c*Ee.i;Ee=!P}if(Ee)return null;m.ga.Lc!=1?m.Ga=0:V=ve-L}e(m.ga!=null),e(L+V<=ve);e:{if(Se=m.ga,P=Se.c,ve=Se.l.o,Se.$a==0){if(je=m.rc,$e=m.Vc,Qe=m.Fa,be=m.P+1+L*P,Ue=m.mb,He=m.nb+L*P,e(be<=m.P+m.qc),Se.Z!=0)for(e(dr[Se.Z]!=null),Ee=0;Ee=P)P=1;else if(Se.ic||_i(),Se.ic){var Se=Ee.V,je=Ee.Ba,$e=Ee.c,rt=Ee.i,Qe=1,be=Ee.$/$e,Ue=Ee.$%$e,He=Ee.m,qe=Ee.s,Ke=Ee.$,et=$e*rt,it=$e*P,ht=qe.wc,ot=Kert)Se[je+Ke]=rt,++Ke,++Ue,Ue>=$e&&(Ue=0,++be,be<=P&&!(be%16)&&se(Ee,be));else if(280>rt){var rt=G(rt-256,He),dt=A(ot.G[4],ot.H[4],He);if(re(He),dt=G(dt,He),dt=X($e,dt),Ke>=dt&&et-Ke>=rt){var pt;for(pt=0;pt=$e;)Ue-=$e,++be,be<=P&&!(be%16)&&se(Ee,be);KeP?P:be);break r}!Qe||He.h&&Ke=ve&&(m.Cc=1),V=1}if(!V)return null;if(m.Cc&&(V=m.ga,V!=null&&(V.mc=null),m.ga=null,0>23,Ee[Se+4*He+1]=Ee[Se+4*He+1]*qe>>23,Ee[Se+4*He+2]=Ee[Se+4*He+2]*qe>>23)}P+=ve}}function ea(m,P,L,V,ce){for(;0>4)*Ue>>16;m[P+2*ve+0]=(Ee&240|Ee>>4)*Ue>>16&240|(Ee&15|Ee<<4)*Ue>>16>>4&15,m[P+2*ve+1]=Se&240|be}P+=ce}}function ta(m,P,L,V,ce,ve,Ee,Se){var be=255,Ue,He;for(He=0;He>8}function _i(){$r=Qs,ys=ea,ws=ta,Es=ra}function Pr(m,P,L){self[m]=function(V,ce,ve,Ee,Se,be,Ue,He,qe,je,$e,Qe,rt,Ke,et,it,ht){var ot,dt=ht-1>>1,pt=Se[be+0]|Ue[He+0]<<16,xt=qe[je+0]|$e[Qe+0]<<16;e(V!=null);var wt=3*pt+xt+131074>>2;for(P(V[ce+0],wt&255,wt>>16,rt,Ke),ve!=null&&(wt=3*xt+pt+131074>>2,P(ve[Ee+0],wt&255,wt>>16,et,it)),ot=1;ot<=dt;++ot){var It=Se[be+ot]|Ue[He+ot]<<16,bt=qe[je+ot]|$e[Qe+ot]<<16,kt=pt+It+xt+bt+524296,Ot=kt+2*(It+xt)>>3;kt=kt+2*(pt+bt)>>3,wt=Ot+pt>>1,pt=kt+It>>1,P(V[ce+2*ot-1],wt&255,wt>>16,rt,Ke+(2*ot-1)*L),P(V[ce+2*ot-0],pt&255,pt>>16,rt,Ke+(2*ot-0)*L),ve!=null&&(wt=kt+xt>>1,pt=Ot+bt>>1,P(ve[Ee+2*ot-1],wt&255,wt>>16,et,it+(2*ot-1)*L),P(ve[Ee+2*ot+0],pt&255,pt>>16,et,it+(2*ot+0)*L)),pt=It,xt=bt}ht&1||(wt=3*pt+xt+131074>>2,P(V[ce+ht-1],wt&255,wt>>16,rt,Ke+(ht-1)*L),ve!=null&&(wt=3*xt+pt+131074>>2,P(ve[Ee+ht-1],wt&255,wt>>16,et,it+(ht-1)*L)))}}function kn(){er[Pi]=Ta,er[Si]=Ps,er[ts]=Ca,er[Ti]=Ss,er[Ci]=Ts,er[on]=Cs,er[rs]=Ma,er[hn]=Ps,er[ln]=Ss,er[Mi]=Ts,er[un]=Cs}function ji(m){return m&~Fa?0>m?0:255:m>>Ms}function mi(m,P){return ji((19077*m>>8)+(26149*P>>8)-14234)}function xi(m,P,L){return ji((19077*m>>8)-(6419*P>>8)-(13320*L>>8)+8708)}function yi(m,P){return ji((19077*m>>8)+(33050*P>>8)-17685)}function wi(m,P,L,V,ce){V[ce+0]=mi(m,L),V[ce+1]=xi(m,P,L),V[ce+2]=yi(m,P)}function Qi(m,P,L,V,ce){V[ce+0]=yi(m,P),V[ce+1]=xi(m,P,L),V[ce+2]=mi(m,L)}function An(m,P,L,V,ce){var ve=xi(m,P,L);P=ve<<3&224|yi(m,P)>>3,V[ce+0]=mi(m,L)&248|ve>>5,V[ce+1]=P}function In(m,P,L,V,ce){var ve=yi(m,P)&240|15;V[ce+0]=mi(m,L)&240|xi(m,P,L)>>4,V[ce+1]=ve}function Rn(m,P,L,V,ce){V[ce+0]=255,wi(m,P,L,V,ce+1)}function Dn(m,P,L,V,ce){Qi(m,P,L,V,ce),V[ce+3]=255}function Ln(m,P,L,V,ce){wi(m,P,L,V,ce),V[ce+3]=255}function St(m,P){return 0>m?0:m>P?P:m}function Sr(m,P,L){self[m]=function(V,ce,ve,Ee,Se,be,Ue,He,qe){for(var je=He+(qe&-2)*L;He!=je;)P(V[ce+0],ve[Ee+0],Se[be+0],Ue,He),P(V[ce+1],ve[Ee+0],Se[be+0],Ue,He+L),ce+=2,++Ee,++be,He+=2*L;qe&1&&P(V[ce+0],ve[Ee+0],Se[be+0],Ue,He)}}function Un(m,P,L){return L==0?m==0?P==0?6:5:P==0?4:0:L}function Bn(m,P,L,V,ce){switch(m>>>30){case 3:Fi(P,L,V,ce,0);break;case 2:as(P,L,V,ce);break;case 1:Ir(P,L,V,ce)}}function Nn(m,P){var L,V,ce=P.M,ve=P.Nb,Ee=m.oc,Se=m.pc+40,be=m.oc,Ue=m.pc+584,He=m.oc,qe=m.pc+600;for(L=0;16>L;++L)Ee[Se+32*L-1]=129;for(L=0;8>L;++L)be[Ue+32*L-1]=129,He[qe+32*L-1]=129;for(0L;++L)s(Ee,Se+32*L-4,Ee,Se+32*L+12,4);for(L=-1;8>L;++L)s(be,Ue+32*L-4,be,Ue+32*L+4,4),s(He,qe+32*L-4,He,qe+32*L+4,4)}var $e=m.Gd,Qe=m.Hd+V,rt=je.ad,Ke=je.Hc;if(0=m.za-1?o(et,it,$e[Qe].y[15],4):s(et,it,$e[Qe+1].y,0,4)),L=0;4>L;L++)et[it+128+L]=et[it+256+L]=et[it+384+L]=et[it+0+L];for(L=0;16>L;++L,Ke<<=2)et=Ee,it=Se+bs[L],sr[je.Ob[L]](et,it),Bn(Ke,rt,16*+L,et,it)}else if(et=Un(V,ce,je.Ob[0]),vr[et](Ee,Se),Ke!=0)for(L=0;16>L;++L,Ke<<=2)Bn(Ke,rt,16*+L,Ee,Se+bs[L]);for(L=je.Gc,et=Un(V,ce,je.Dd),lr[et](be,Ue),lr[et](He,qe),je=L>>0,Ke=rt,et=be,it=Ue,je&255&&(je&170?vn(Ke,256,et,it):dn(Ke,256,et,it)),L>>=8,je=He,Ke=qe,L&255&&(L&170?vn(rt,320,je,Ke):dn(rt,320,je,Ke)),ceL;++L)s($e,Qe+L*m.R,Ee,Se+32*L,16);for(L=0;8>L;++L)s(rt,je+L*m.B,be,Ue+32*L,8),s(Ke,et+L*m.B,He,qe+32*L,8)}}function On(m,P,L,V,ce,ve,Ee,Se,be){var Ue=[0],He=[0],qe=0,je=be!=null?be.kd:0,$e=be!=null?be:new qr;if(m==null||12>L)return 7;$e.data=m,$e.w=P,$e.ha=L,P=[P],L=[L],$e.gb=[$e.gb];e:{var Qe=P,rt=L,Ke=$e.gb;if(e(m!=null),e(rt!=null),e(Ke!=null),Ke[0]=0,12<=rt[0]&&!r(m,Qe[0],"RIFF")){if(r(m,Qe[0]+8,"WEBP")){Ke=3;break e}var et=_e(m,Qe[0]+4);if(12>et||4294967286rt[0]-8){Ke=7;break e}Ke[0]=et,Qe[0]+=12,rt[0]-=12}Ke=0}if(Ke!=0)return Ke;for(et=0<$e.gb[0],L=L[0];;){Qe=[0],qe=[qe];e:{var it=m;rt=P,Ke=L;var ht=qe,ot=Ue,dt=He,pt=Qe;if(ht[0]=0,8>Ke[0])Ke=7;else{if(!r(it,rt[0],"VP8X")){if(_e(it,rt[0]+4)!=10){Ke=3;break e}if(18>Ke[0]){Ke=7;break e}var xt=_e(it,rt[0]+8),wt=1+ne(it,rt[0]+12);if(it=1+ne(it,rt[0]+15),2147483648<=wt*it){Ke=3;break e}pt!=null&&(pt[0]=xt),ot!=null&&(ot[0]=wt),dt!=null&&(dt[0]=it),rt[0]+=18,Ke[0]-=18,ht[0]=1}Ke=0}}if(qe=qe[0],Qe=Qe[0],Ke!=0)return Ke;if(rt=!!(Qe&2),!et&&qe)return 3;if(ve!=null&&(ve[0]=!!(Qe&16)),Ee!=null&&(Ee[0]=rt),Se!=null&&(Se[0]=0),Ee=Ue[0],Qe=He[0],qe&&rt&&be==null){Ke=0;break}if(4>L){Ke=7;break}if(et&&qe||!et&&!qe&&!r(m,P[0],"ALPH")){L=[L],$e.na=[$e.na],$e.P=[$e.P],$e.Sa=[$e.Sa];e:{xt=m,Ke=P,et=L;var ht=$e.gb,ot=$e.na,dt=$e.P,pt=$e.Sa;wt=22,e(xt!=null),e(et!=null),it=Ke[0];var It=et[0];for(e(ot!=null),e(pt!=null),ot[0]=null,dt[0]=null,pt[0]=0;;){if(Ke[0]=it,et[0]=It,8>It){Ke=7;break e}var bt=_e(xt,it+4);if(4294967286ht){Ke=3;break e}if(!r(xt,it,"VP8 ")||!r(xt,it,"VP8L")){Ke=0;break e}if(It[0]et[0])Ke=7;else{if(it||wt){if(ht=_e(ht,xt+4),12<=ot&&ht>ot-12){Ke=3;break e}if(je&&ht>et[0]-8){Ke=7;break e}dt[0]=ht,Ke[0]+=8,et[0]-=8,pt[0]=wt}else pt[0]=5<=et[0]&&ht[xt+0]==47&&!(ht[xt+4]>>5),dt[0]=et[0];Ke=0}if(L=L[0],$e.Ja=$e.Ja[0],$e.xa=$e.xa[0],P=P[0],Ke!=0)break;if(4294967286<$e.Ja)return 3;if(Se==null||rt||(Se[0]=$e.xa?2:1),Ee=[Ee],Qe=[Qe],$e.xa){if(5>L){Ke=7;break}Se=Ee,je=Qe,rt=ve,m==null||5>L?m=0:5<=L&&m[P+0]==47&&!(m[P+4]>>5)?(et=[0],ht=[0],ot=[0],dt=new K,J(dt,m,P,L),z(dt,et,ht,ot)?(Se!=null&&(Se[0]=et[0]),je!=null&&(je[0]=ht[0]),rt!=null&&(rt[0]=ot[0]),m=1):m=0):m=0}else{if(10>L){Ke=7;break}Se=Qe,m==null||10>L||!Ut(m,P+3,L-3)?m=0:(je=m[P+0]|m[P+1]<<8|m[P+2]<<16,rt=(m[P+7]<<8|m[P+6])&16383,m=(m[P+9]<<8|m[P+8])&16383,je&1||3<(je>>1&7)||!(je>>4&1)||je>>5>=$e.Ja||!rt||!m?m=0:(Ee&&(Ee[0]=rt),Se&&(Se[0]=m),m=1))}if(!m||(Ee=Ee[0],Qe=Qe[0],qe&&(Ue[0]!=Ee||He[0]!=Qe)))return 3;be!=null&&(be[0]=$e,be.offset=P-be.w,e(4294967286>P-be.w),e(be.offset==be.ha-L));break}return Ke==0||Ke==7&&qe&&be==null?(ve!=null&&(ve[0]|=$e.na!=null&&0<$e.na.length),V!=null&&(V[0]=Ee),ce!=null&&(ce[0]=Qe),0):Ke}function zn(m,P,L){var V=P.width,ce=P.height,ve=0,Ee=0,Se=V,be=ce;if(P.Da=m!=null&&0L||(ve&=-2,Ee&=-2),0>ve||0>Ee||0>=Se||0>=be||ve+Se>V||Ee+be>ce))return 0;if(P.v=ve,P.j=Ee,P.va=ve+Se,P.o=Ee+be,P.U=Se,P.T=be,P.da=m!=null&&0m.S){var P=m.f.RGBA;P.fb+=(m.height-1)*P.A,P.A=-P.A}else P=m.f.kb,m=m.height,P.O+=(m-1)*P.fa,P.fa=-P.fa,P.N+=(m-1>>1)*P.Ab,P.Ab=-P.Ab,P.W+=(m-1>>1)*P.Db,P.Db=-P.Db,P.F!=null&&(P.J+=(m-1)*P.lb,P.lb=-P.lb);return 0}function Zn(m,P,L,V){if(V==null||0>=m||0>=P)return 2;if(L!=null){if(L.Da){var ce=L.cd,ve=L.bd,Ee=L.v&-2,Se=L.j&-2;if(0>Ee||0>Se||0>=ce||0>=ve||Ee+ce>m||Se+ve>P)return 2;m=ce,P=ve}if(L.da){if(ce=[L.ib],ve=[L.hb],!Ae(m,P,ce,ve))return 2;m=ce[0],P=ve[0]}}V.width=m,V.height=P;e:{var be=V.width,Ue=V.height;if(m=V.S,0>=be||0>=Ue||!(m>=Pi&&13>m))m=2;else{if(0>=V.Rd&&V.sd==null){var Ee=ve=ce=P=0,Se=be*ks[m],He=Se*Ue;if(11>m||(P=(be+1)/2,ve=(Ue+1)/2*P,m==12&&(ce=be,Ee=ce*Ue)),Ue=a(He+2*ve+Ee),Ue==null){m=1;break e}V.sd=Ue,11>m?(be=V.f.RGBA,be.eb=Ue,be.fb=0,be.A=Se,be.size=He):(be=V.f.kb,be.y=Ue,be.O=0,be.fa=Se,be.Fd=He,be.f=Ue,be.N=0+He,be.Ab=P,be.Cd=ve,be.ea=Ue,be.W=0+He+ve,be.Db=P,be.Ed=ve,m==12&&(be.F=Ue,be.J=0+He+2*ve),be.Tc=Ee,be.lb=ce)}if(P=1,ce=V.S,ve=V.width,Ee=V.height,ce>=Pi&&13>ce)if(11>ce)m=V.f.RGBA,Se=Math.abs(m.A),P&=Se*(Ee-1)+ve<=m.size,P&=Se>=ve*ks[ce],P&=m.eb!=null;else{m=V.f.kb,Se=(ve+1)/2,He=(Ee+1)/2,be=Math.abs(m.fa);var Ue=Math.abs(m.Ab),qe=Math.abs(m.Db),je=Math.abs(m.lb),$e=je*(Ee-1)+ve;P&=be*(Ee-1)+ve<=m.Fd,P&=Ue*(He-1)+Se<=m.Cd,P&=qe*(He-1)+Se<=m.Ed,P=P&be>=ve&Ue>=Se&qe>=Se,P&=m.y!=null,P&=m.f!=null,P&=m.ea!=null,ce==12&&(P&=je>=ve,P&=$e<=m.Tc,P&=m.F!=null)}else P=0;m=P?0:2}}return m!=0||L!=null&&L.fd&&(m=Gn(V)),m}var en=64,ia=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535,131071,262143,524287,1048575,2097151,4194303,8388607,16777215],na=24,tn=32,Hn=8,sa=[0,0,1,1,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7];ze("Predictor0","PredictorAdd0"),self.Predictor0=function(){return 4278190080},self.Predictor1=function(m){return m},self.Predictor2=function(m,P,L){return P[L+0]},self.Predictor3=function(m,P,L){return P[L+1]},self.Predictor4=function(m,P,L){return P[L-1]},self.Predictor5=function(m,P,L){return he(he(m,P[L+1]),P[L+0])},self.Predictor6=function(m,P,L){return he(m,P[L-1])},self.Predictor7=function(m,P,L){return he(m,P[L+0])},self.Predictor8=function(m,P,L){return he(P[L-1],P[L+0])},self.Predictor9=function(m,P,L){return he(P[L+0],P[L+1])},self.Predictor10=function(m,P,L){return he(he(m,P[L-1]),he(P[L+0],P[L+1]))},self.Predictor11=function(m,P,L){var V=P[L+0];return P=P[L-1],0>=Ce(V>>24&255,m>>24&255,P>>24&255)+Ce(V>>16&255,m>>16&255,P>>16&255)+Ce(V>>8&255,m>>8&255,P>>8&255)+Ce(V&255,m&255,P&255)?V:m},self.Predictor12=function(m,P,L){var V=P[L+0];return P=P[L-1],(ke((m>>24&255)+(V>>24&255)-(P>>24&255))<<24|ke((m>>16&255)+(V>>16&255)-(P>>16&255))<<16|ke((m>>8&255)+(V>>8&255)-(P>>8&255))<<8|ke((m&255)+(V&255)-(P&255)))>>>0},self.Predictor13=function(m,P,L){var V=P[L-1];return m=he(m,P[L+0]),(le(m>>24&255,V>>24&255)<<24|le(m>>16&255,V>>16&255)<<16|le(m>>8&255,V>>8&255)<<8|le(m>>0&255,V>>0&255))>>>0};var aa=self.PredictorAdd0;self.PredictorAdd1=Be,ze("Predictor2","PredictorAdd2"),ze("Predictor3","PredictorAdd3"),ze("Predictor4","PredictorAdd4"),ze("Predictor5","PredictorAdd5"),ze("Predictor6","PredictorAdd6"),ze("Predictor7","PredictorAdd7"),ze("Predictor8","PredictorAdd8"),ze("Predictor9","PredictorAdd9"),ze("Predictor10","PredictorAdd10"),ze("Predictor11","PredictorAdd11"),ze("Predictor12","PredictorAdd12"),ze("Predictor13","PredictorAdd13");var oa=self.PredictorAdd2;Re("ColorIndexInverseTransform","MapARGB","32b",function(m){return m>>8&255},function(m){return m}),Re("VP8LColorIndexInverseTransformAlpha","MapAlpha","8b",function(m){return m},function(m){return m>>8&255});var Vn=self.ColorIndexInverseTransform,ha=self.MapARGB,la=self.VP8LColorIndexInverseTransformAlpha,ua=self.MapAlpha,Wn,Xn=self.VP8LPredictorsAdd=[];Xn.length=16,(self.VP8LPredictors=[]).length=16,(self.VP8LPredictorsAdd_C=[]).length=16,(self.VP8LPredictors_C=[]).length=16;var rn,Yn,nn,sn,Jn,qn,Kn=a(511),$n=a(2041),jn=a(225),Qn=a(767),es=0,an=$n,Ei=jn,qt=Qn,Qt=Kn,Pi=0,Si=1,ts=2,Ti=3,Ci=4,on=5,rs=6,hn=7,ln=8,Mi=9,un=10,fa=[2,3,7],ca=[3,3,11],is=[280,256,256,256,40],va=[0,1,1,1,0],da=[17,18,0,1,2,3,4,5,16,6,7,8,9,10,11,12,13,14,15],pa=[24,7,23,25,40,6,39,41,22,26,38,42,56,5,55,57,21,27,54,58,37,43,72,4,71,73,20,28,53,59,70,74,36,44,88,69,75,52,60,3,87,89,19,29,86,90,35,45,68,76,85,91,51,61,104,2,103,105,18,30,102,106,34,46,84,92,67,77,101,107,50,62,120,1,119,121,83,93,17,31,100,108,66,78,118,122,33,47,117,123,49,63,99,109,82,94,0,116,124,65,79,16,32,98,110,48,115,125,81,95,64,114,126,97,111,80,113,127,96,112],ga=[2954,2956,2958,2962,2970,2986,3018,3082,3212,3468,3980,5004],_a=8,fn=[4,5,6,7,8,9,10,10,11,12,13,14,15,16,17,17,18,19,20,20,21,21,22,22,23,23,24,25,25,26,27,28,29,30,31,32,33,34,35,36,37,37,38,39,40,41,42,43,44,45,46,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,76,77,78,79,80,81,82,83,84,85,86,87,88,89,91,93,95,96,98,100,101,102,104,106,108,110,112,114,116,118,122,124,126,128,130,132,134,136,138,140,143,145,148,151,154,157],cn=[4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,119,122,125,128,131,134,137,140,143,146,149,152,155,158,161,164,167,170,173,177,181,185,189,193,197,201,205,209,213,217,221,225,229,234,239,245,249,254,259,264,269,274,279,284],Kr=null,ma=[[173,148,140,0],[176,155,140,135,0],[180,157,141,134,130,0],[254,254,243,230,196,177,153,140,133,130,129,0]],xa=[0,1,4,8,5,2,3,6,9,12,13,10,7,11,14,15],ns=[-0,1,-1,2,-2,3,4,6,-3,5,-4,-5,-6,7,-7,8,-8,-9],ya=[[[[128,128,128,128,128,128,128,128,128,128,128],[128,128,128,128,128,128,128,128,128,128,128],[128,128,128,128,128,128,128,128,128,128,128]],[[253,136,254,255,228,219,128,128,128,128,128],[189,129,242,255,227,213,255,219,128,128,128],[106,126,227,252,214,209,255,255,128,128,128]],[[1,98,248,255,236,226,255,255,128,128,128],[181,133,238,254,221,234,255,154,128,128,128],[78,134,202,247,198,180,255,219,128,128,128]],[[1,185,249,255,243,255,128,128,128,128,128],[184,150,247,255,236,224,128,128,128,128,128],[77,110,216,255,236,230,128,128,128,128,128]],[[1,101,251,255,241,255,128,128,128,128,128],[170,139,241,252,236,209,255,255,128,128,128],[37,116,196,243,228,255,255,255,128,128,128]],[[1,204,254,255,245,255,128,128,128,128,128],[207,160,250,255,238,128,128,128,128,128,128],[102,103,231,255,211,171,128,128,128,128,128]],[[1,152,252,255,240,255,128,128,128,128,128],[177,135,243,255,234,225,128,128,128,128,128],[80,129,211,255,194,224,128,128,128,128,128]],[[1,1,255,128,128,128,128,128,128,128,128],[246,1,255,128,128,128,128,128,128,128,128],[255,128,128,128,128,128,128,128,128,128,128]]],[[[198,35,237,223,193,187,162,160,145,155,62],[131,45,198,221,172,176,220,157,252,221,1],[68,47,146,208,149,167,221,162,255,223,128]],[[1,149,241,255,221,224,255,255,128,128,128],[184,141,234,253,222,220,255,199,128,128,128],[81,99,181,242,176,190,249,202,255,255,128]],[[1,129,232,253,214,197,242,196,255,255,128],[99,121,210,250,201,198,255,202,128,128,128],[23,91,163,242,170,187,247,210,255,255,128]],[[1,200,246,255,234,255,128,128,128,128,128],[109,178,241,255,231,245,255,255,128,128,128],[44,130,201,253,205,192,255,255,128,128,128]],[[1,132,239,251,219,209,255,165,128,128,128],[94,136,225,251,218,190,255,255,128,128,128],[22,100,174,245,186,161,255,199,128,128,128]],[[1,182,249,255,232,235,128,128,128,128,128],[124,143,241,255,227,234,128,128,128,128,128],[35,77,181,251,193,211,255,205,128,128,128]],[[1,157,247,255,236,231,255,255,128,128,128],[121,141,235,255,225,227,255,255,128,128,128],[45,99,188,251,195,217,255,224,128,128,128]],[[1,1,251,255,213,255,128,128,128,128,128],[203,1,248,255,255,128,128,128,128,128,128],[137,1,177,255,224,255,128,128,128,128,128]]],[[[253,9,248,251,207,208,255,192,128,128,128],[175,13,224,243,193,185,249,198,255,255,128],[73,17,171,221,161,179,236,167,255,234,128]],[[1,95,247,253,212,183,255,255,128,128,128],[239,90,244,250,211,209,255,255,128,128,128],[155,77,195,248,188,195,255,255,128,128,128]],[[1,24,239,251,218,219,255,205,128,128,128],[201,51,219,255,196,186,128,128,128,128,128],[69,46,190,239,201,218,255,228,128,128,128]],[[1,191,251,255,255,128,128,128,128,128,128],[223,165,249,255,213,255,128,128,128,128,128],[141,124,248,255,255,128,128,128,128,128,128]],[[1,16,248,255,255,128,128,128,128,128,128],[190,36,230,255,236,255,128,128,128,128,128],[149,1,255,128,128,128,128,128,128,128,128]],[[1,226,255,128,128,128,128,128,128,128,128],[247,192,255,128,128,128,128,128,128,128,128],[240,128,255,128,128,128,128,128,128,128,128]],[[1,134,252,255,255,128,128,128,128,128,128],[213,62,250,255,255,128,128,128,128,128,128],[55,93,255,128,128,128,128,128,128,128,128]],[[128,128,128,128,128,128,128,128,128,128,128],[128,128,128,128,128,128,128,128,128,128,128],[128,128,128,128,128,128,128,128,128,128,128]]],[[[202,24,213,235,186,191,220,160,240,175,255],[126,38,182,232,169,184,228,174,255,187,128],[61,46,138,219,151,178,240,170,255,216,128]],[[1,112,230,250,199,191,247,159,255,255,128],[166,109,228,252,211,215,255,174,128,128,128],[39,77,162,232,172,180,245,178,255,255,128]],[[1,52,220,246,198,199,249,220,255,255,128],[124,74,191,243,183,193,250,221,255,255,128],[24,71,130,219,154,170,243,182,255,255,128]],[[1,182,225,249,219,240,255,224,128,128,128],[149,150,226,252,216,205,255,171,128,128,128],[28,108,170,242,183,194,254,223,255,255,128]],[[1,81,230,252,204,203,255,192,128,128,128],[123,102,209,247,188,196,255,233,128,128,128],[20,95,153,243,164,173,255,203,128,128,128]],[[1,222,248,255,216,213,128,128,128,128,128],[168,175,246,252,235,205,255,255,128,128,128],[47,116,215,255,211,212,255,255,128,128,128]],[[1,121,236,253,212,214,255,255,128,128,128],[141,84,213,252,201,202,255,219,128,128,128],[42,80,160,240,162,185,255,205,128,128,128]],[[1,1,255,128,128,128,128,128,128,128,128],[244,1,255,128,128,128,128,128,128,128,128],[238,1,255,128,128,128,128,128,128,128,128]]]],wa=[[[231,120,48,89,115,113,120,152,112],[152,179,64,126,170,118,46,70,95],[175,69,143,80,85,82,72,155,103],[56,58,10,171,218,189,17,13,152],[114,26,17,163,44,195,21,10,173],[121,24,80,195,26,62,44,64,85],[144,71,10,38,171,213,144,34,26],[170,46,55,19,136,160,33,206,71],[63,20,8,114,114,208,12,9,226],[81,40,11,96,182,84,29,16,36]],[[134,183,89,137,98,101,106,165,148],[72,187,100,130,157,111,32,75,80],[66,102,167,99,74,62,40,234,128],[41,53,9,178,241,141,26,8,107],[74,43,26,146,73,166,49,23,157],[65,38,105,160,51,52,31,115,128],[104,79,12,27,217,255,87,17,7],[87,68,71,44,114,51,15,186,23],[47,41,14,110,182,183,21,17,194],[66,45,25,102,197,189,23,18,22]],[[88,88,147,150,42,46,45,196,205],[43,97,183,117,85,38,35,179,61],[39,53,200,87,26,21,43,232,171],[56,34,51,104,114,102,29,93,77],[39,28,85,171,58,165,90,98,64],[34,22,116,206,23,34,43,166,73],[107,54,32,26,51,1,81,43,31],[68,25,106,22,64,171,36,225,114],[34,19,21,102,132,188,16,76,124],[62,18,78,95,85,57,50,48,51]],[[193,101,35,159,215,111,89,46,111],[60,148,31,172,219,228,21,18,111],[112,113,77,85,179,255,38,120,114],[40,42,1,196,245,209,10,25,109],[88,43,29,140,166,213,37,43,154],[61,63,30,155,67,45,68,1,209],[100,80,8,43,154,1,51,26,71],[142,78,78,16,255,128,34,197,171],[41,40,5,102,211,183,4,1,221],[51,50,17,168,209,192,23,25,82]],[[138,31,36,171,27,166,38,44,229],[67,87,58,169,82,115,26,59,179],[63,59,90,180,59,166,93,73,154],[40,40,21,116,143,209,34,39,175],[47,15,16,183,34,223,49,45,183],[46,17,33,183,6,98,15,32,183],[57,46,22,24,128,1,54,17,37],[65,32,73,115,28,128,23,128,205],[40,3,9,115,51,192,18,6,223],[87,37,9,115,59,77,64,21,47]],[[104,55,44,218,9,54,53,130,226],[64,90,70,205,40,41,23,26,57],[54,57,112,184,5,41,38,166,213],[30,34,26,133,152,116,10,32,134],[39,19,53,221,26,114,32,73,255],[31,9,65,234,2,15,1,118,73],[75,32,12,51,192,255,160,43,51],[88,31,35,67,102,85,55,186,85],[56,21,23,111,59,205,45,37,192],[55,38,70,124,73,102,1,34,98]],[[125,98,42,88,104,85,117,175,82],[95,84,53,89,128,100,113,101,45],[75,79,123,47,51,128,81,171,1],[57,17,5,71,102,57,53,41,49],[38,33,13,121,57,73,26,1,85],[41,10,67,138,77,110,90,47,114],[115,21,2,10,102,255,166,23,6],[101,29,16,10,85,128,101,196,26],[57,18,10,102,102,213,34,20,43],[117,20,15,36,163,128,68,1,26]],[[102,61,71,37,34,53,31,243,192],[69,60,71,38,73,119,28,222,37],[68,45,128,34,1,47,11,245,171],[62,17,19,70,146,85,55,62,70],[37,43,37,154,100,163,85,160,1],[63,9,92,136,28,64,32,201,85],[75,15,9,9,64,255,184,119,16],[86,6,28,5,64,255,25,248,1],[56,8,17,132,137,255,55,116,128],[58,15,20,82,135,57,26,121,40]],[[164,50,31,137,154,133,25,35,218],[51,103,44,131,131,123,31,6,158],[86,40,64,135,148,224,45,183,128],[22,26,17,131,240,154,14,1,209],[45,16,21,91,64,222,7,1,197],[56,21,39,155,60,138,23,102,213],[83,12,13,54,192,255,68,47,28],[85,26,85,85,128,128,32,146,171],[18,11,7,63,144,171,4,4,246],[35,27,10,146,174,171,12,26,128]],[[190,80,35,99,180,80,126,54,45],[85,126,47,87,176,51,41,20,32],[101,75,128,139,118,146,116,128,85],[56,41,15,176,236,85,37,9,62],[71,30,17,119,118,255,17,18,138],[101,38,60,138,55,70,43,26,142],[146,36,19,30,171,255,97,27,20],[138,45,61,62,219,1,81,188,64],[32,41,20,117,151,142,20,21,163],[112,19,12,61,195,128,48,4,24]]],Ea=[[[[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[176,246,255,255,255,255,255,255,255,255,255],[223,241,252,255,255,255,255,255,255,255,255],[249,253,253,255,255,255,255,255,255,255,255]],[[255,244,252,255,255,255,255,255,255,255,255],[234,254,254,255,255,255,255,255,255,255,255],[253,255,255,255,255,255,255,255,255,255,255]],[[255,246,254,255,255,255,255,255,255,255,255],[239,253,254,255,255,255,255,255,255,255,255],[254,255,254,255,255,255,255,255,255,255,255]],[[255,248,254,255,255,255,255,255,255,255,255],[251,255,254,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,253,254,255,255,255,255,255,255,255,255],[251,254,254,255,255,255,255,255,255,255,255],[254,255,254,255,255,255,255,255,255,255,255]],[[255,254,253,255,254,255,255,255,255,255,255],[250,255,254,255,254,255,255,255,255,255,255],[254,255,255,255,255,255,255,255,255,255,255]],[[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]]],[[[217,255,255,255,255,255,255,255,255,255,255],[225,252,241,253,255,255,254,255,255,255,255],[234,250,241,250,253,255,253,254,255,255,255]],[[255,254,255,255,255,255,255,255,255,255,255],[223,254,254,255,255,255,255,255,255,255,255],[238,253,254,254,255,255,255,255,255,255,255]],[[255,248,254,255,255,255,255,255,255,255,255],[249,254,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,253,255,255,255,255,255,255,255,255,255],[247,254,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,253,254,255,255,255,255,255,255,255,255],[252,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,254,254,255,255,255,255,255,255,255,255],[253,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,254,253,255,255,255,255,255,255,255,255],[250,255,255,255,255,255,255,255,255,255,255],[254,255,255,255,255,255,255,255,255,255,255]],[[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]]],[[[186,251,250,255,255,255,255,255,255,255,255],[234,251,244,254,255,255,255,255,255,255,255],[251,251,243,253,254,255,254,255,255,255,255]],[[255,253,254,255,255,255,255,255,255,255,255],[236,253,254,255,255,255,255,255,255,255,255],[251,253,253,254,254,255,255,255,255,255,255]],[[255,254,254,255,255,255,255,255,255,255,255],[254,254,254,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,254,255,255,255,255,255,255,255,255,255],[254,254,255,255,255,255,255,255,255,255,255],[254,255,255,255,255,255,255,255,255,255,255]],[[255,255,255,255,255,255,255,255,255,255,255],[254,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]]],[[[248,255,255,255,255,255,255,255,255,255,255],[250,254,252,254,255,255,255,255,255,255,255],[248,254,249,253,255,255,255,255,255,255,255]],[[255,253,253,255,255,255,255,255,255,255,255],[246,253,253,255,255,255,255,255,255,255,255],[252,254,251,254,254,255,255,255,255,255,255]],[[255,254,252,255,255,255,255,255,255,255,255],[248,254,253,255,255,255,255,255,255,255,255],[253,255,254,254,255,255,255,255,255,255,255]],[[255,251,254,255,255,255,255,255,255,255,255],[245,251,254,255,255,255,255,255,255,255,255],[253,253,254,255,255,255,255,255,255,255,255]],[[255,251,253,255,255,255,255,255,255,255,255],[252,253,254,255,255,255,255,255,255,255,255],[255,254,255,255,255,255,255,255,255,255,255]],[[255,252,255,255,255,255,255,255,255,255,255],[249,255,254,255,255,255,255,255,255,255,255],[255,255,254,255,255,255,255,255,255,255,255]],[[255,255,253,255,255,255,255,255,255,255,255],[250,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]],[[255,255,255,255,255,255,255,255,255,255,255],[254,255,255,255,255,255,255,255,255,255,255],[255,255,255,255,255,255,255,255,255,255,255]]]],Pa=[0,1,2,3,6,4,5,6,6,6,6,6,6,6,6,7,0],ss,vr=[],sr=[],lr=[],Fi,as,vn,Ir,dn,os,hs,ls,us,fs,cs,vs,ds,ps,gs,_s,ms,Sa=1,xs=2,dr=[],$r,ys,ws,Es,er=[];Pr("UpsampleRgbLinePair",wi,3),Pr("UpsampleBgrLinePair",Qi,3),Pr("UpsampleRgbaLinePair",Ln,4),Pr("UpsampleBgraLinePair",Dn,4),Pr("UpsampleArgbLinePair",Rn,4),Pr("UpsampleRgba4444LinePair",In,2),Pr("UpsampleRgb565LinePair",An,2);var Ta=window.UpsampleRgbLinePair,Ca=window.UpsampleBgrLinePair,Ps=window.UpsampleRgbaLinePair,Ss=window.UpsampleBgraLinePair,Ts=window.UpsampleArgbLinePair,Cs=window.UpsampleRgba4444LinePair,Ma=window.UpsampleRgb565LinePair,bi=16,ki=1<V.ca.S||(alert("todo:WebPInitConvertARGBToYUV"),V.ca.f.kb.F!=null&&_i()),V.Pb&&0be?0:100Ue;++Ue)qe=ce.pb[Ue],12>qe.lc&&(qe.ia=be*La[0>qe.lc?0:qe.lc]>>3),He|=qe.ia;He&&(alert("todo:VP8InitRandom"),ce.ia=1)}ce.Ga=L.Id,100ce.Ga&&(ce.Ga=0)}$t(m,V)||(P=m.a)}}else P=m.a}P==0&&Ee.Oa!=null&&Ee.Oa.fd&&(P=Gn(Ee.ba))}Ee=P}ve=Ee!=0?null:11>ve?Se.f.RGBA.eb:Se.f.kb.y}else ve=null;return ve};var ks=[3,4,3,4,4,2,2,4,4,4,2,1,1]},new window.WebPDecoder}();function GifWriter(e,r,s,o){var a=0,o=o===void 0?{}:o,u=o.loop===void 0?null:o.loop,l=o.palette===void 0?null:o.palette;if(r<=0||s<=0||r>65535||s>65535)throw new Error("Width/Height invalid.");function v(M){var T=M.length;if(T<2||T>256||T&T-1)throw new Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return T}e[a++]=71,e[a++]=73,e[a++]=70,e[a++]=56,e[a++]=57,e[a++]=97;var p=0,c=0;if(l!==null){for(var _=v(l);_>>=1;)++p;if(_=1<=_)throw new Error("Background index out of range.");if(c===0)throw new Error("Background index explicitly passed as 0.")}}if(e[a++]=r&255,e[a++]=r>>8&255,e[a++]=s&255,e[a++]=s>>8&255,e[a++]=(l!==null?128:0)|p,e[a++]=c,e[a++]=0,l!==null)for(var f=0,g=l.length;f>16&255,e[a++]=y>>8&255,e[a++]=y&255}if(u!==null){if(u<0||u>65535)throw new Error("Loop count invalid.");e[a++]=33,e[a++]=255,e[a++]=11,e[a++]=78,e[a++]=69,e[a++]=84,e[a++]=83,e[a++]=67,e[a++]=65,e[a++]=80,e[a++]=69,e[a++]=50,e[a++]=46,e[a++]=48,e[a++]=3,e[a++]=1,e[a++]=u&255,e[a++]=u>>8&255,e[a++]=0}var w=!1;this.addFrame=function(M,T,B,H,J,Q){if(w===!0&&(--a,w=!1),Q=Q===void 0?{}:Q,M<0||T<0||M>65535||T>65535)throw new Error("x/y invalid.");if(B<=0||H<=0||B>65535||H>65535)throw new Error("Width/Height invalid.");if(J.length>=1;)++pe;K=1<3)throw new Error("Disposal out of range.");var re=!1,oe=0;if(Q.transparent!==void 0&&Q.transparent!==null&&(re=!0,oe=Q.transparent,oe<0||oe>=K))throw new Error("Transparent color index.");if((Te!==0||re||R!==0)&&(e[a++]=33,e[a++]=249,e[a++]=4,e[a++]=Te<<2|(re===!0?1:0),e[a++]=R&255,e[a++]=R>>8&255,e[a++]=oe,e[a++]=0),e[a++]=44,e[a++]=M&255,e[a++]=M>>8&255,e[a++]=T&255,e[a++]=T>>8&255,e[a++]=B&255,e[a++]=B>>8&255,e[a++]=H&255,e[a++]=H>>8&255,e[a++]=q===!0?128|pe-1:0,q===!0)for(var me=0,ue=O.length;me>16&255,e[a++]=$>>8&255,e[a++]=$&255}return a=GifWriterOutputLZWCodeStream(e,a,pe<2?2:pe,J),a},this.end=function(){return w===!1&&(e[a++]=59,w=!0),a},this.getOutputBuffer=function(){return e},this.setOutputBuffer=function(M){e=M},this.getOutputBufferPosition=function(){return a},this.setOutputBufferPosition=function(M){a=M}}function GifWriterOutputLZWCodeStream(e,r,s,o){e[r++]=s;var a=r++,u=1<=q;)e[r++]=f&255,f>>=8,_-=8,r===a+256&&(e[a]=255,a=r++)}function y(q){f|=q<<_,_+=c,g(8)}var w=o[0]&l,M={};y(u);for(var T=1,B=o.length;T=8;)e[r++]=f&255,f>>=8,_-=8,r===a+256&&(e[a]=255,a=r++);p===4096?(y(u),p=v+1,c=s+1,M={}):(p>=1<>>3,re=f[Te+2]<<16|f[Te+1]<<8|f[Te],oe=re>>>(_&7)&(1<>>7,B=y>>>4&7,H=y>>>3&1,J=y>>>0&7,Q=s,q=0,O,K=0,pe=0,R=0,Te=260;T==1&&(s+=3*(1<>>2&7,pe=u(),Te=a(),(y&1)==0&&(Te=260),a()}else if(me==254)l();else if(me==255)l();else throw me}else if(oe==44){var $=u(),ee=u(),ne=u(),_e=u(),ae=a(),Me=ae>>>7;if(R=ae>>>6&1,Me==1){var J=ae>>>0&7;q=s,s+=3*(1<=r.length){alert("Some frames are damaged."),re.pop();break}a(),O.d=new Uint8Array(Ne);var ze=e(o,0,Ae,O.d,0,oe)}else{if(oe==59)break;throw oe}}return{width:f,height:g,data:r,frames:re}};function p(_,f,g,y,w,M,T,B){for(var H=0;H0&&y<1&&(y*=65536),y=Math.floor(y),y<256&&(y|=y<<8);for(var w=0;w<256;w++){var M;w&1?M=a[w]^y&255:M=a[w]^y>>8&255,u[w]=u[w+256]=M,l[w]=l[w+256]=o[M%12]}},r.seed(0);var v=.5*(Math.sqrt(3)-1),p=(3-Math.sqrt(3))/6,c=1/3,_=1/6;r.simplex2=function(y,w){var M,T,B,H=(y+w)*v,J=Math.floor(y+H),Q=Math.floor(w+H),q=(J+Q)*p,O=y-J+q,K=w-Q+q,pe,R;O>K?(pe=1,R=0):(pe=0,R=1);var Te=O-pe+p,re=K-R+p,oe=O-1+2*p,me=K-1+2*p;J&=255,Q&=255;var ue=l[J+u[Q]],$=l[J+pe+u[Q+R]],ee=l[J+1+u[Q+1]],ne=.5-O*O-K*K;ne<0?M=0:(ne*=ne,M=ne*ne*ue.dot2(O,K));var _e=.5-Te*Te-re*re;_e<0?T=0:(_e*=_e,T=_e*_e*$.dot2(Te,re));var ae=.5-oe*oe-me*me;return ae<0?B=0:(ae*=ae,B=ae*ae*ee.dot2(oe,me)),70*(M+T+B)},r.simplex3=function(y,w,M){var T,B,H,J,Q=(y+w+M)*c,q=Math.floor(y+Q),O=Math.floor(w+Q),K=Math.floor(M+Q),pe=(q+O+K)*_,R=y-q+pe,Te=w-O+pe,re=M-K+pe,oe,me,ue,$,ee,ne;R>=Te?Te>=re?(oe=1,me=0,ue=0,$=1,ee=1,ne=0):R>=re?(oe=1,me=0,ue=0,$=1,ee=0,ne=1):(oe=0,me=0,ue=1,$=1,ee=0,ne=1):Te=0;l--)u[l]*=a},e.prototype.addmul=function(o,a,u){this.mirror&&this.mirror.addmul(o,a,u);for(var l=this.data[o],v=this.data[a],p=l.length-1;p>=0;p--)l[p]=l[p]+u*v[p]},e.prototype.hasNullLine=function(o){for(var a=0;aMath.abs(p)&&(c=_,p=f)}if(p===0)l.push(o);else{this.multline(c,1/p),this.swap(c,o);for(var g=0;g0&&l[0].length===1)for(var v=0;v>8&255,r[s+1]=o&255},aS:function(r,s,o){for(var a=[],u=0;u>24&255,r[s+1]=o>>16&255,r[s+2]=o>>8&255,r[s+3]=o>>0&255},K:function(r,s){return e.B.k(r,s)*(4294967295+1)+e.B.k(r,s+4)},$:function(r,s,o){for(var a="",u=0;u255?-1:e.T.O.at(r,e.T.O.af[s])},au:function(r,s,o){var a=e.B,u=[".notdef"],l=r[s];if(s++,l==0)for(var v=0;v>4,J=B&15;if(H!=15&&M.push(H),J!=15&&M.push(J),J==15)break}for(var Q=[0,1,2,3,4,5,6,7,8,9,".","e","e-","reserved","-","endOfNumber"],q=0;q>>1;o.aB=u(r,s),s+=2,o.aV=u(r,s),s+=2,o.aY=u(r,s),s+=2,o.aa=l(r,s,f),s+=f*2,s+=2,o.aT=l(r,s,f),s+=f*2,o.ab=[];for(var g=0;g>>1),o},aX:function(r,s,o){var a=e.B,u=s;s+=2;var l=a.m(r,s);s+=2;var v=a.m(r,s);s+=2,o.ax=a.m(r,s),s+=2;var p=a.m(r,s);s+=2,o.l=[];for(var c=0;c=v.ad||v.an>=v.ao)return null;if(v.L>0){v.c=[];for(var p=0;p>>8;g&=15,g==0&&(s=l.h(r,s,c))}return c},a$:function(r,s,o,a){var u=e.B,l=e.T.C,v=u.v(r,s),p=u.k(r,s+4);s+=8;for(var c={J:[],z:[]},_=0;_65535&&p++,u.push(e.U.codeToGlyph(r,c))}for(var _=[],p=0;p>>1);J[pe*Q]<=q?O=pe:K=pe}return O*Q},p=o._[a],c=p.a_,_=-1;if(c==0)s>=p.map.length?_=0:_=p.map[s];else if(c==4){var f=-1,g=p.aa;if(s>g[g.length-1]?f=-1:(f=v(g,1,s),g[f]>1)-(p.T.length-f)]:y=s+p.ab[f],_=y&65535}}else if(c==6){var w=s-p.ax,M=p.l;w<0||w>=M.length?_=0:_=M[w]}else if(c==12){var T=p.ay;if(s>T[T.length-2])_=0;else{var l=v(T,3,s);T[l]<=s&&s<=T[l+1]&&(_=T[l+2]+(s-T[l])),_==-1&&(_=0)}}else throw"unknown cmap table format "+p.a_;var B=r["SVG "],H=r.loca;return _!=0&&r["CFF "]==null&&(B==null||B.entries[_]==null)&&H[_]==H[_+1]&&[9,10,11,12,13,32,133,160,5760,8232,8233,8239,12288,6158,8203,8204,8205,8288,65279].indexOf(s)==-1&&!(8192<=s&&s<=8202)&&(_=0),_},glyphToPath:function(r,s){var o={d:[],U:[]},a=r["SVG "],u=r["CFF "],l=e.U;if(a&&a.entries[s]){var v=a.entries[s];v!=null&&(typeof v=="string"&&(v=l.SVG.aD(v),a.entries[s]=v),o=v)}else if(u){var p=u.Private,c={x:0,y:0,stack:[],e:0,P:!1,width:p?p.defaultWidthX:0,open:!1};if(u.ROS){for(var _=0;u.FDSelect[_+2]<=s;)_+=2;p=u.FDArray[u.FDSelect[_+1]].Private}l._drawCFF(u.CharStrings[s],c,u,p,o)}else r.glyf&&l._drawGlyf(s,r,o);return{cmds:o.d,crds:o.U}},_drawGlyf:function(r,s,o){var a=s.glyf[r];a==null&&(a=s.glyf[r]=e.T.n.ar(s,r)),a!=null&&(a.L>-1?e.U._simpleGlyph(a,o):e.U._compoGlyph(a,s,o))},_simpleGlyph:function(r,s){for(var o=e.U.P,a=0;a>1,l.length=0,p=!0}else if(oe=="o3"||oe=="o23"){var me;me=l.length%2!=0,me&&!p&&(c=l.shift()+Te),v+=l.length>>1,l.length=0,p=!0}else if(oe=="o4")l.length>1&&!p&&(c=l.shift()+Te,p=!0),_&&R.W(u),y+=l.pop(),R.u(u,g,y),_=!0;else if(oe=="o5")for(;l.length>0;)g+=l.shift(),y+=l.shift(),R.Z(u,g,y);else if(oe=="o6"||oe=="o7")for(var ue=l.length,$=oe=="o6",ee=0;eeMath.abs(q-y)?g=Q+l.shift():y=q+l.shift(),R.Y(u,w,M,T,B,O,K),R.Y(u,H,J,Q,q,g,y));else if(oe=="o14"){if(l.length>0&&!p&&(c=l.shift()+o.nominalWidthX,p=!0),l.length==4){var ae=0,Me=l.shift(),Ne=l.shift(),Ae=l.shift(),Fe=l.shift(),De=pe.r(o,Ae),ze=pe.r(o,Fe);e.U._drawCFF(o.CharStrings[De],s,o,a,u),s.x=Me,s.y=Ne,e.U._drawCFF(o.CharStrings[ze],s,o,a,u)}_&&(R.W(u),_=!1)}else if(oe=="o19"||oe=="o20"){var me;me=l.length%2!=0,me&&!p&&(c=l.shift()+Te),v+=l.length>>1,l.length=0,p=!0,f+=v+7>>3}else if(oe=="o21")l.length>2&&!p&&(c=l.shift()+Te,p=!0),y+=l.pop(),g+=l.pop(),_&&R.W(u),R.u(u,g,y),_=!0;else if(oe=="o22")l.length>1&&!p&&(c=l.shift()+Te,p=!0),g+=l.pop(),_&&R.W(u),R.u(u,g,y),_=!0;else if(oe=="o25"){for(;l.length>6;)g+=l.shift(),y+=l.shift(),R.Z(u,g,y);w=g+l.shift(),M=y+l.shift(),T=w+l.shift(),B=M+l.shift(),g=T+l.shift(),y=B+l.shift(),R.Y(u,w,M,T,B,g,y)}else if(oe=="o26")for(l.length%2&&(g+=l.shift());l.length>0;)w=g,M=y+l.shift(),T=w+l.shift(),B=M+l.shift(),g=T,y=B+l.shift(),R.Y(u,w,M,T,B,g,y);else if(oe=="o27")for(l.length%2&&(y+=l.shift());l.length>0;)w=g+l.shift(),M=y,T=w+l.shift(),B=M+l.shift(),g=T+l.shift(),y=B,R.Y(u,w,M,T,B,g,y);else if(oe=="o10"||oe=="o29"){var ye=oe=="o10"?a:o;if(l.length==0)console.log("error: empty stack");else{var he=l.pop(),ke=ye.Subrs[he+ye.Bias];s.x=g,s.y=y,s.e=v,s.P=p,s.width=c,s.open=_,e.U._drawCFF(ke,s,o,a,u),g=s.x,y=s.y,v=s.e,p=s.P,c=s.width,_=s.open}}else if(oe=="o30"||oe=="o31"){var ue,le=l.length,_e=0,Ce=oe=="o31";for(ue=le&~2,_e+=le-ue;_e0&&g[M-1]!="e"&&(g=g.slice(0,M)+" "+g.slice(M),M++,w=!0)}if(g=g.split(/\s*[\s,]\s*/).map(parseFloat),f=="translate")g.length==1?r.translate(y,g[0],0):r.translate(y,g[0],g[1]);else if(f=="scale")g.length==1?r.scale(y,g[0],g[0]):r.scale(y,g[0],g[1]);else if(f=="rotate"){var B=0,H=0;g.length!=1&&(B=g[1],H=g[2]),r.translate(y,-B,-H),r.rotate(y,-Math.PI*g[0]/180),r.translate(y,B,H)}else f=="matrix"?y=g:console.log("unknown transform: ",f);return y}function l(f){var g={d:[],U:[]};if(f==null)return g;var y=new DOMParser,w=y.parseFromString(f,"image/svg+xml"),M=w.getElementsByTagName("svg")[0],T=M.getAttribute("viewBox");T?T=T.trim().split(" ").map(parseFloat):T=[0,0,1e3,1e3],v(M.children,g);for(var B=0;B=0?1:-1)*Math.acos(Math.max(-1,Math.min(1,N)))},d=(Ce-Ve)/Ne,x=(Be-Xe)/Ae,E=h(1,0,d,x),C=h(d,x,(-Ce-Ve)/Ne,(-Be-Xe)/Ae);C=C%(2*Math.PI);var b=function(W,F,z,G,X,A,N){var I=function(st,gt){var ft=Math.sin(gt),ct=Math.cos(gt),gt=st[0],_t=st[1],Et=st[2],mt=st[3];st[0]=gt*ct+_t*ft,st[1]=-gt*ft+_t*ct,st[2]=Et*ct+mt*ft,st[3]=-Et*ft+mt*ct},te=function(st,gt){for(var ft=0;ftX;)A-=2*Math.PI;else for(;A>>2,q=u.hb_buffer_get_glyph_positions(B,0)>>>2,O=0;O>>16)+4),v=new Uint8Array(l.buffer),p=new Uint32Array(l.buffer),c=new Int32Array(l.buffer),_!=q&&(f!=null&&(u.hb_blob_destroy(f),u.free(g),u.hb_face_destroy(y),u.hb_font_destroy(w)),g=u.malloc(Q.byteLength),v.set(Q,g),f=u.hb_blob_create(g,Q.byteLength,2,0,0),y=u.hb_face_create(f,0),w=u.hb_font_create(y),_=q),window.TextEncoder==null){alert("Your browser is too old. Please, update it.");return}T==null&&(T=new window.TextEncoder("utf8"));var Te=u.hb_buffer_create(),re=T.encode(H),oe=re.length,me=u.malloc(oe);v.set(re,me),u.hb_buffer_add_utf8(Te,me,oe,0,oe),u.free(me),u.hb_buffer_set_direction(Te,J?4:5),u.hb_buffer_guess_segment_properties(Te),u.hb_shape(w,Te,0,0);var ue=M(Te);u.hb_buffer_destroy(Te);var $=ue.slice(0);J||$.reverse();for(var ee=1;ee<$.length;ee++){for(var ne=$[ee],_e=ne.cl;;){var ae=H.codePointAt(pe),Me=o(ae);if(R+Me<=_e)R+=Me,pe+=ae<=65535?1:2;else break}ne.cl=pe}return ue}}(),s()})}},e}(),UZIP={};typeof module=="object"&&(module.exports=UZIP),UZIP.parse=function(e,r){for(var s=UZIP.bin.readUshort,o=UZIP.bin.readUint,a=0,u={},l=new Uint8Array(e),v=l.length-4;o(l,v)!=101010256;)v--;var a=v;a+=4,a+=4;var p=s(l,a);a+=2;var c=s(l,a);a+=2;var _=o(l,a);a+=4;var f=o(l,a);a+=4,a=f;for(var g=0;g>>4;return UZIP.inflateRaw(new Uint8Array(e.buffer,e.byteOffset+2,e.length-6),r)},UZIP.deflate=function(e,r){r==null&&(r={level:6});var s=0,o=new Uint8Array(50+Math.floor(e.length*1.1));o[s]=120,o[s+1]=156,s+=2,s=UZIP.F.deflateRaw(e,o,s,r.level);var a=UZIP.adler(e,0,e.length);return o[s+0]=a>>>24&255,o[s+1]=a>>>16&255,o[s+2]=a>>>8&255,o[s+3]=a>>>0&255,new Uint8Array(o.buffer,0,s+4)},UZIP.deflateRaw=function(e,r){r==null&&(r={level:6});var s=new Uint8Array(50+Math.floor(e.length*1.1)),o=UZIP.F.deflateRaw(e,s,o,r.level);return new Uint8Array(s.buffer,0,o)},UZIP.encode=function(e,r){r==null&&(r=!1);var s=0,o=UZIP.bin.writeUint,a=UZIP.bin.writeUshort,u={};for(var l in e){var v=!UZIP._noNeed(l)&&!r,p=e[l],c=UZIP.crc.crc(p,0,p.length);u[l]={cpr:v,usize:p.length,crc:c,file:v?UZIP.deflateRaw(p):p}}for(var l in u)s+=u[l].file.length+30+46+2*UZIP.bin.sizeUTF8(l);s+=22;var _=new Uint8Array(s),f=0,g=[];for(var l in u){var y=u[l];g.push(f),f=UZIP._writeHeader(_,f,l,y,0)}var w=0,M=f;for(var l in u){var y=u[l];g.push(f),f=UZIP._writeHeader(_,f,l,y,1,g[w++])}var T=f-M;return o(_,f,101010256),f+=4,f+=4,a(_,f,w),f+=2,a(_,f,w),f+=2,o(_,f,T),f+=4,o(_,f,M),f+=4,f+=2,_.buffer},UZIP._noNeed=function(e){var r=e.split(".").pop().toLowerCase();return"png,jpg,jpeg,zip".indexOf(r)!=-1},UZIP._writeHeader=function(e,r,s,o,a,u){var l=UZIP.bin.writeUint,v=UZIP.bin.writeUshort,p=o.file;l(e,r,a==0?67324752:33639248),r+=4,a==1&&(r+=2),v(e,r,20),r+=2,v(e,r,0),r+=2,v(e,r,o.cpr?8:0),r+=2,l(e,r,0),r+=4,l(e,r,o.crc),r+=4,l(e,r,p.length),r+=4,l(e,r,o.usize),r+=4,v(e,r,UZIP.bin.sizeUTF8(s)),r+=2,v(e,r,0),r+=2,a==1&&(r+=2,r+=2,r+=6,l(e,r,u),r+=4);var c=UZIP.bin.writeUTF8(e,r,s);return r+=c,a==0&&(e.set(p,r),r+=p.length),r},UZIP.crc={table:function(){for(var e=new Uint32Array(256),r=0;r<256;r++){for(var s=r,o=0;o<8;o++)s&1?s=3988292384^s>>>1:s=s>>>1;e[r]=s}return e}(),update:function(e,r,s,o){for(var a=0;a>>8;return e},crc:function(e,r,s){return UZIP.crc.update(4294967295,e,r,s)^4294967295}},UZIP.adler=function(e,r,s){for(var o=1,a=0,u=r,l=r+s;u>8&255},readUint:function(e,r){return e[r+3]*(256*256*256)+(e[r+2]<<16|e[r+1]<<8|e[r])},writeUint:function(e,r,s){e[r]=s&255,e[r+1]=s>>8&255,e[r+2]=s>>16&255,e[r+3]=s>>24&255},readASCII:function(e,r,s){for(var o="",a=0;a>6,e[r+a+1]=128|l>>0&63,a+=2;else if((l&4294967295-(1<<16)+1)==0)e[r+a]=224|l>>12,e[r+a+1]=128|l>>6&63,e[r+a+2]=128|l>>0&63,a+=3;else if((l&4294967295-(1<<21)+1)==0)e[r+a]=240|l>>18,e[r+a+1]=128|l>>12&63,e[r+a+2]=128|l>>6&63,e[r+a+3]=128|l>>0&63,a+=4;else throw"e"}return a},sizeUTF8:function(e){for(var r=e.length,s=0,o=0;o>>3}var M=l.lits,T=l.strt,B=l.prev,H=0,J=0,Q=0,q=0,O=0,K=0;y>2&&(K=UZIP.F._hash(e,0),T[K]=0);var pe=0,R=0;for(_=0;_14e3||J>26697)&&y-_>100&&(g<_&&(M[H]=_-g,H+=2,g=_),f=UZIP.F._writeBlock(_==y-1||g==y?1:0,M,H,q,e,Q,_-Q,r,f),H=J=q=0,Q=_);var re=0;_>>16,oe=re&65535;if(re!=0){var w=re>>>16,oe=re&65535,me=v(w,l.of0);l.lhst[257+me]++;var ue=v(oe,l.df0);l.dhst[ue]++,q+=l.exb[me]+l.dxb[ue],M[H]=w<<23|_-g,M[H+1]=oe<<16|me<<8|ue,H+=2,g=_+w}else l.lhst[e[_]]++;J++}}for((Q!=_||e.length==0)&&(g<_&&(M[H]=_-g,H+=2,g=_),f=UZIP.F._writeBlock(1,M,H,q,e,Q,_-Q,r,f),H=0,J=0,H=J=q=0,Q=_);(f&7)!=0;)f++;return f>>>3},UZIP.F._bestMatch=function(e,r,s,o,a,u){var l=r&32767,v=s[l],p=l-v+(1<<15)&32767;if(v==l||o!=UZIP.F._hash(e,r-p))return 0;for(var c=0,_=0,f=Math.min(32767,r);p<=f&&--u!=0&&v!=l;){if(c==0||e[r+c]==e[r+c-p]){var g=UZIP.F._howLong(e,r,p);if(g>c){if(c=g,_=p,c>=a)break;p+2y&&(y=B,v=M)}}}l=v,v=s[l],p+=l-v+(1<<15)&32767}return c<<16|_},UZIP.F._howLong=function(e,r,s){if(e[r]!=e[r-s]||e[r+1]!=e[r+1-s]||e[r+2]!=e[r+2-s])return 0;var o=r,a=Math.min(e.length,r+258);for(r+=3;r>>23,_e=ue+(ee&(1<<23)-1);ue<_e;)p=UZIP.F._writeLit(a[ue++],re,v,p);if(ne!=0){var ae=r[$+1],Me=ae>>16,Ne=ae>>8&255,Ae=ae&255;p=UZIP.F._writeLit(257+Ne,re,v,p),f(v,p,ne-c.of0[Ne]),p+=c.exb[Ne],p=UZIP.F._writeLit(Ae,oe,v,p),_(v,p,Me-c.df0[Ae]),p+=c.dxb[Ae],ue+=ne}}p=UZIP.F._writeLit(256,re,v,p)}return p},UZIP.F._copyExact=function(e,r,s,o,a){var u=a>>>3;return o[u]=s,o[u+1]=s>>>8,o[u+2]=255-o[u],o[u+3]=255-o[u+1],u+=4,o.set(new Uint8Array(e.buffer,r,s),u),a+(s+4<<3)},UZIP.F.getTrees=function(){for(var e=UZIP.F.U,r=UZIP.F._hufTree(e.lhst,e.ltree,15),s=UZIP.F._hufTree(e.dhst,e.dtree,15),o=[],a=UZIP.F._lenCodes(e.ltree,o),u=[],l=UZIP.F._lenCodes(e.dtree,u),v=0;v4&&e.itree[(e.ordr[c-1]<<1)+1]==0;)c--;return[r,s,p,a,l,c,o,u]},UZIP.F.getSecond=function(e){for(var r=[],s=0;s>1)+",");return r},UZIP.F.contSize=function(e,r){for(var s=0,o=0;o15&&(UZIP.F._putsE(s,o,l,v),o+=v)}return o},UZIP.F._lenCodes=function(e,r){for(var s=e.length;s!=2&&e[s-1]==0;)s-=2;for(var o=0;o>>1,138);c<11?r.push(17,c-3):r.push(18,c-11),o+=c*2-2}else if(a==v&&u==a&&l==a){for(var p=o+5;p+2>>1,6);r.push(16,c-3),o+=c*2-2}else r.push(a,0)}return s>>>1},UZIP.F._hufTree=function(e,r,s){var o=[],a=e.length,u=r.length,l=0;for(l=0;ls&&(UZIP.F.restrictDepth(p,s,M),M=s),l=0;lr;o++){var l=e[o].d;e[o].d=r,u+=a-(1<>>s-r;u>0;){var l=e[o].d;l=0;o--)e[o].d==r&&u<0&&(e[o].d--,u++);u!=0&&console.log("debt left")},UZIP.F._goodIndex=function(e,r){var s=0;return r[s|16]<=e&&(s|=16),r[s|8]<=e&&(s|=8),r[s|4]<=e&&(s|=4),r[s|2]<=e&&(s|=2),r[s|1]<=e&&(s|=1),s},UZIP.F._writeLit=function(e,r,s,o){return UZIP.F._putsF(s,o,r[e<<1]),o+r[(e<<1)+1]},UZIP.F.inflate=function(e,r){var s=Uint8Array;if(e[0]==3&&e[1]==0)return r||new s(0);var o=UZIP.F,a=o._bitsF,u=o._bitsE,l=o._decodeTiny,v=o.makeCodes,p=o.codes2map,c=o._get17,_=o.U,f=r==null;f&&(r=new s(e.length>>>2<<3));for(var g=0,y=0,w=0,M=0,T=0,B=0,H=0,J=0,Q=0,q,O;g==0;){if(g=a(e,Q,1),y=a(e,Q+1,2),Q+=3,y==0){(Q&7)!=0&&(Q+=8-(Q&7));var K=(Q>>>3)+4,pe=e[K-4]|e[K-3]<<8;f&&(r=UZIP.F._check(r,J+pe)),r.set(new s(e.buffer,e.byteOffset+K,pe),J),Q=K+pe<<3,J+=pe;continue}if(f&&(r=UZIP.F._check(r,J+(1<<17))),y==1&&(q=_.flmap,O=_.fdmap,B=(1<<9)-1,H=(1<<5)-1),y==2){w=u(e,Q,5)+257,M=u(e,Q+5,5)+1,T=u(e,Q+10,4)+4,Q+=14;for(var R=Q,Te=0;Te<38;Te+=2)_.itree[Te]=0,_.itree[Te+1]=0;for(var re=1,Te=0;Tere&&(re=oe)}Q+=3*T,v(_.itree,re),p(_.itree,re,_.imap),q=_.lmap,O=_.dmap,Q=l(_.imap,(1<>>4;if(ee>>>8==0)r[J++]=ee;else{if(ee==256)break;var ne=J+ee-254;if(ee>264){var _e=_.ldef[ee-257];ne=J+(_e>>>3)+u(e,Q,_e&7),Q+=_e&7}var ae=O[c(e,Q)&H];Q+=ae&15;var Me=ae>>>4,Ne=_.ddef[Me],Ae=(Ne>>>4)+a(e,Q,Ne&15);for(Q+=Ne&15,f&&(r=UZIP.F._check(r,J+(1<<17)));J>>4;if(_<=15)u[p]=_,p++;else{var f=0,g=0;_==16?(g=3+l(o,a,2),a+=2,f=u[p-1]):_==17?(g=3+l(o,a,3),a+=3):_==18&&(g=11+l(o,a,7),a+=7);for(var y=p+g;p>>1;ua&&(a=v),u++}for(;u>1,p=e[l+1],c=v<<4|p,_=r-p,f=e[l]<<_,g=f+(1<<_);f!=g;){var y=u[f]>>>15-r;s[y]=c,f++}},UZIP.F.revCodes=function(e,r){for(var s=UZIP.F.U.rev15,o=15-r,a=0;a>>o}},UZIP.F._putsE=function(e,r,s){s=s<<(r&7);var o=r>>>3;e[o]|=s,e[o+1]|=s>>>8},UZIP.F._putsF=function(e,r,s){s=s<<(r&7);var o=r>>>3;e[o]|=s,e[o+1]|=s>>>8,e[o+2]|=s>>>16},UZIP.F._bitsE=function(e,r,s){return(e[r>>>3]|e[(r>>>3)+1]<<8)>>>(r&7)&(1<>>3]|e[(r>>>3)+1]<<8|e[(r>>>3)+2]<<16)>>>(r&7)&(1<>>3]|e[(r>>>3)+1]<<8|e[(r>>>3)+2]<<16)>>>(r&7)},UZIP.F._get25=function(e,r){return(e[r>>>3]|e[(r>>>3)+1]<<8|e[(r>>>3)+2]<<16|e[(r>>>3)+3]<<24)>>>(r&7)},UZIP.F.U=function(){var e=Uint16Array,r=Uint32Array;return{next_code:new e(16),bl_count:new e(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 e(32),df0:[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,65535,65535],dxb:[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0],ddef:new r(32),flmap:new e(512),fltree:[],fdmap:new e(32),fdtree:[],lmap:new e(32768),ltree:[],ttree:[],dmap:new e(32768),dtree:[],imap:new e(512),itree:[],rev15:new e(1<<15),lhst:new r(286),dhst:new r(30),ihst:new r(19),lits:new r(15e3),strt:new e(1<<16),prev:new e(1<<15)}}(),function(){for(var e=UZIP.F.U,r=1<<15,s=0;s>>1|(o&1431655765)<<1,o=(o&3435973836)>>>2|(o&858993459)<<2,o=(o&4042322160)>>>4|(o&252645135)<<4,o=(o&4278255360)>>>8|(o&16711935)<<8,e.rev15[s]=(o>>>16|o<<16)>>>17}function a(u,l,v){for(;l--!=0;)u.push(0,v)}for(var s=0;s<32;s++)e.ldef[s]=e.of0[s]<<3|e.exb[s],e.ddef[s]=e.df0[s]<<4|e.dxb[s];a(e.fltree,144,8),a(e.fltree,255-143,9),a(e.fltree,279-255,7),a(e.fltree,287-279,8),UZIP.F.makeCodes(e.fltree,9),UZIP.F.codes2map(e.fltree,9,e.flmap),UZIP.F.revCodes(e.fltree,9),a(e.fdtree,32,5),UZIP.F.makeCodes(e.fdtree,5),UZIP.F.codes2map(e.fdtree,5,e.fdmap),UZIP.F.revCodes(e.fdtree,5),a(e.itree,19,0),a(e.ltree,286,0),a(e.dtree,30,0),a(e.ttree,320,0)}();var paper=function(e,r){var s=(e=e||require("./node/self.js")).window,o=e.document,a=new function(){function t(W,F,z,G,X){function A(de,se){typeof(se=se||(se=b(F,de))&&(se.get?se:se.value))=="string"&&se[0]==="#"&&(se=W[se.substring(1)]||se);var ie,ge=typeof se=="function",Pe=se,Ye=X||ge&&!se.base?se&&se.get?de in W:W[de]:null;X&&Ye||(ge&&Ye&&(se.base=Ye),ge&&G!==!1&&(ie=de.match(/^([gs]et|is)(([A-Z])(.*))$/))&&(N[ie[3].toLowerCase()+ie[4]]=ie[2]),Pe&&!ge&&Pe.get&&typeof Pe.get=="function"&&h.isPlainObject(Pe)||(Pe={value:Pe,writable:!0}),(b(W,de)||{configurable:!0}).configurable&&(Pe.configurable=!0,Pe.enumerable=z!=null?z:!ie),U(W,de,Pe))}var N={};if(F){for(var I in F)F.hasOwnProperty(I)&&!d.test(I)&&A(I);for(var I in N){var te=N[I],fe=W["set"+te],S=W["get"+te]||fe&&W["is"+te];!S||G!==!0&&S.length!==0||A(I,{get:S,set:fe})}}return W}function h(){for(var W=0,F=arguments.length;W0||U+x0?[["dictionary",x.definitions],E]:E},deserialize:function(t,h,d,x,E){var C=t,b=!d,U=b&&t&&t.length&&t[0][0]==="dictionary";if(d=d||{},Array.isArray(t)){var D=t[0],k=D==="dictionary";if(t.length==1&&/^#/.test(D))return d.dictionary[D];C=[];for(var Z=(D=a.exports[D])?1:0,Y=t.length;Zt.length&&(d=t.length),D=0;D0){var C=h[E],b=C&&C[x];b&&b.call(this,E)}}},statics:{inject:function t(h){var d=h._events;if(d){var x={};a.each(d,function(E,C){var b=typeof E=="string",U=b?E:C,D=a.capitalize(U),k=U.substring(2).toLowerCase();x[k]=b?{}:E,U="_"+U,h["get"+D]=function(){return this[U]},h["set"+D]=function(Z){var Y=this[U];Y&&this.off(k,Y),Z&&this.on(k,Z),this[U]=Z}}),h._eventTypes=x}return t.base.apply(this,arguments)}}},l=a.extend({_class:"PaperScope",initialize:function t(){paper=this,this.settings=new a({applyMatrix:!0,insertItems:!0,handleSize:4,hitTolerance:0}),this.project=null,this.projects=[],this.tools=[],this._id=t._id++,t._scopes[this._id]=this;var h=t.prototype;if(!this.support){var d=Oe.getContext(1,1)||{};h.support={nativeDash:"setLineDash"in d||"mozDash"in d,nativeBlendModes:Ve.nativeModes},Oe.release(d)}if(!this.agent){var x=e.navigator.userAgent.toLowerCase(),E=(/(darwin|win|mac|linux|freebsd|sunos)/.exec(x)||[])[0],C=E==="darwin"?"mac":E,b=h.agent=h.browser={platform:C};C&&(b[C]=!0),x.replace(/(opera|chrome|safari|webkit|firefox|msie|trident|atom|node)\/?\s*([.\d]+)(?:.*version\/([.\d]+))?(?:.*rv\:v?([.\d]+))?/g,function(U,D,k,Z,Y){if(!b.chrome){var W=D==="opera"?Z:/^(node|trident)$/.test(D)?Y:k;b.version=W,b.versionNumber=parseFloat(W),D=D==="trident"?"msie":D,b.name=D,b[D]=!0}}),b.chrome&&delete b.webkit,b.atom&&delete b.chrome}},version:"0.11.5",getView:function(){var t=this.project;return t&&t._view},getPaper:function(){return this},execute:function(t,h){paper.PaperScript.execute(t,this,h),le.updateFocus()},install:function(t){var h=this;a.each(["project","view","tool"],function(x){a.define(t,x,{configurable:!0,get:function(){return h[x]}})});for(var d in this)!/^_/.test(d)&&this[d]&&(t[d]=this[d])},setup:function(t){return paper=this,this.project=new J(t),this},createCanvas:function(t,h){return Oe.getCanvas(t,h)},activate:function(){paper=this},clear:function(){for(var t=this.projects,h=this.tools,d=t.length-1;d>=0;d--)t[d].remove();for(d=h.length-1;d>=0;d--)h[d].remove()},remove:function(){this.clear(),delete l._scopes[this._id]},statics:new function(){function t(h){return h+="Attribute",function(d,x){return d[h](x)||d[h]("data-paper-"+x)}}return{_scopes:{},_id:0,get:function(h){return this._scopes[h]||null},getAttribute:t("get"),hasAttribute:t("has")}}}),v=a.extend(u,{initialize:function(t){this._scope=paper,this._index=this._scope[this._list].push(this)-1,!t&&this._scope[this._reference]||this.activate()},activate:function(){if(!this._scope)return!1;var t=this._scope[this._reference];return t&&t!==this&&t.emit("deactivate"),this._scope[this._reference]=this,this.emit("activate",t),!0},isActive:function(){return this._scope[this._reference]===this},remove:function(){return this._index!=null&&(a.splice(this._scope[this._list],null,this._index,1),this._scope[this._reference]==this&&(this._scope[this._reference]=null),this._scope=null,!0)},getView:function(){return this._scope.getView()}}),p=a.extend({initialize:function(t){this.precision=a.pick(t,5),this.multiplier=Math.pow(10,this.precision)},number:function(t){return this.precision<16?Math.round(t*this.multiplier)/this.multiplier:t},pair:function(t,h,d){return this.number(t)+(d||",")+this.number(h)},point:function(t,h){return this.number(t.x)+(h||",")+this.number(t.y)},size:function(t,h){return this.number(t.width)+(h||",")+this.number(t.height)},rectangle:function(t,h){return this.point(t,h)+(h||",")+this.size(t,h)}});p.instance=new p;var c=new function(){function t(k,Z,Y){return kY?Y:k}function h(k,Z,Y){function W(te){var fe=134217729*te,S=te-fe+fe;return[S,te-S]}var F=Z*Z-k*Y,z=Z*Z+k*Y;if(3*C(F)1e8)?U(2,-Math.round(D(k))):0}var x=[[.5773502691896257],[0,.7745966692414834],[.33998104358485626,.8611363115940526],[0,.5384693101056831,.906179845938664],[.2386191860831969,.6612093864662645,.932469514203152],[0,.4058451513773972,.7415311855993945,.9491079123427585],[.1834346424956498,.525532409916329,.7966664774136267,.9602898564975363],[0,.3242534234038089,.6133714327005904,.8360311073266358,.9681602395076261],[.14887433898163122,.4333953941292472,.6794095682990244,.8650633666889845,.9739065285171717],[0,.26954315595234496,.5190961292068118,.7301520055740494,.8870625997680953,.978228658146057],[.1252334085114689,.3678314989981802,.5873179542866175,.7699026741943047,.9041172563704749,.9815606342467192],[0,.2304583159551348,.44849275103644687,.6423493394403402,.8015780907333099,.9175983992229779,.9841830547185881],[.10805494870734367,.31911236892788974,.5152486363581541,.6872929048116855,.827201315069765,.9284348836635735,.9862838086968123],[0,.20119409399743451,.3941513470775634,.5709721726085388,.7244177313601701,.8482065834104272,.937273392400706,.9879925180204854],[.09501250983763744,.2816035507792589,.45801677765722737,.6178762444026438,.755404408355003,.8656312023878318,.9445750230732326,.9894009349916499]],E=[[1],[.8888888888888888,.5555555555555556],[.6521451548625461,.34785484513745385],[.5688888888888889,.47862867049936647,.23692688505618908],[.46791393457269104,.3607615730481386,.17132449237917036],[.4179591836734694,.3818300505051189,.27970539148927664,.1294849661688697],[.362683783378362,.31370664587788727,.22238103445337448,.10122853629037626],[.3302393550012598,.31234707704000286,.26061069640293544,.1806481606948574,.08127438836157441],[.29552422471475287,.26926671930999635,.21908636251598204,.1494513491505806,.06667134430868814],[.2729250867779006,.26280454451024665,.23319376459199048,.18629021092773426,.1255803694649046,.05566856711617366],[.24914704581340277,.2334925365383548,.20316742672306592,.16007832854334622,.10693932599531843,.04717533638651183],[.2325515532308739,.22628318026289723,.2078160475368885,.17814598076194574,.13887351021978725,.09212149983772845,.04048400476531588],[.2152638534631578,.2051984637212956,.18553839747793782,.15720316715819355,.12151857068790319,.08015808715976021,.03511946033175186],[.2025782419255613,.19843148532711158,.1861610000155622,.16626920581699392,.13957067792615432,.10715922046717194,.07036604748810812,.03075324199611727],[.1894506104550685,.18260341504492358,.16915651939500254,.14959598881657674,.12462897125553388,.09515851168249279,.062253523938647894,.027152459411754096]],C=Math.abs,b=Math.sqrt,U=Math.pow,D=Math.log2||function(k){return Math.log(k)*Math.LOG2E};return{EPSILON:1e-12,MACHINE_EPSILON:112e-18,CURVETIME_EPSILON:1e-8,GEOMETRIC_EPSILON:1e-7,TRIGONOMETRIC_EPSILON:1e-8,KAPPA:4*(b(2)-1)/3,isZero:function(k){return k>=-1e-12&&k<=1e-12},clamp:t,integrate:function(k,Z,Y,W){for(var F=x[W-2],z=E[W-2],G=.5*(Y-Z),X=G+Z,A=0,N=W+1>>1,I=1&W?z[A++]*k(X):0;A0?(F=Y,Y=I<=W?.5*(W+F):I):(W=Y,Y=I>=F?.5*(W+F):I)}return t(Y,W,F)},solveQuadratic:function(k,Z,Y,W,F,z){var G,X=1/0;if(C(k)<1e-12){if(C(Z)<1e-12)return C(Y)<1e-12?-1:0;G=-Y/Z}else{var A=h(k,Z*=-.5,Y);if(A&&C(A)<112e-18){var N=d(C(k),C(Z),C(Y));N&&(A=h(k*=N,Z*=N,Y*=N))}if(A>=-112e-18){var I=A<0?0:b(A),te=Z+(Z<0?-I:I);te===0?X=-(G=Y/k):(G=te/k,X=Y/te)}}var fe=0,S=F==null,de=F-1e-12,se=z+1e-12;return isFinite(G)&&(S||G>de&&Gde&&X0?1.324717957244746*Math.max(se,b(ge)):se,Ye=A-ie*Pe;if(Ye!==A){do X(Ye),Ye=te===0?A:A-fe/te/(1+112e-18);while(ie*Ye>ie*A);C(k)*A*A>C(W/A)&&(N=((I=-W/A)-Y)/A)}}var Ge=c.solveQuadratic(k,N,I,F,z,G),Ze=z==null;return isFinite(A)&&(Ge===0||Ge>0&&A!==F[0]&&A!==F[1])&&(Ze||A>z-1e-12&&A1?b[1]:b[0])):"x"in b?this._set(b.x||0,b.y||0):"width"in b?this._set(b.width||0,b.height||0):"angle"in b?(this._set(b.length||0,0),this.setAngle(b.angle||0)):(this._set(0,0),E=0)}return x&&(this.__read=E),this},set:"#initialize",_set:function(t,h){return this.x=t,this.y=h,this},equals:function(t){return this===t||t&&(this.x===t.x&&this.y===t.y||Array.isArray(t)&&this.x===t[0]&&this.y===t[1])||!1},clone:function(){return new f(this.x,this.y)},toString:function(){var t=p.instance;return"{ x: "+t.number(this.x)+", y: "+t.number(this.y)+" }"},_serialize:function(t){var h=t.formatter;return[h.number(this.x),h.number(this.y)]},getLength:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},setLength:function(t){if(this.isZero()){var h=this._angle||0;this._set(Math.cos(h)*t,Math.sin(h)*t)}else{var d=t/this.getLength();c.isZero(d)&&this.getAngle(),this._set(this.x*d,this.y*d)}},getAngle:function(){return 180*this.getAngleInRadians.apply(this,arguments)/Math.PI},setAngle:function(t){this.setAngleInRadians.call(this,t*Math.PI/180)},getAngleInDegrees:"#getAngle",setAngleInDegrees:"#setAngle",getAngleInRadians:function(){if(arguments.length){var t=f.read(arguments),h=this.getLength()*t.getLength();if(c.isZero(h))return NaN;var d=this.dot(t)/h;return Math.acos(d<-1?-1:d>1?1:d)}return this.isZero()?this._angle||0:this._angle=Math.atan2(this.y,this.x)},setAngleInRadians:function(t){if(this._angle=t,!this.isZero()){var h=this.getLength();this._set(Math.cos(t)*h,Math.sin(t)*h)}},getQuadrant:function(){return this.x>=0?this.y>=0?1:4:this.y>=0?2:3}},{beans:!1,getDirectedAngle:function(){var t=f.read(arguments);return 180*Math.atan2(this.cross(t),this.dot(t))/Math.PI},getDistance:function(){var t=f.read(arguments),h=t.x-this.x,d=t.y-this.y,x=h*h+d*d;return a.read(arguments)?x:Math.sqrt(x)},normalize:function(t){t===r&&(t=1);var h=this.getLength(),d=h!==0?t/h:0,x=new f(this.x*d,this.y*d);return d>=0&&(x._angle=this._angle),x},rotate:function(t,h){if(t===0)return this.clone();t=t*Math.PI/180;var d=h?this.subtract(h):this,x=Math.sin(t),E=Math.cos(t);return d=new f(d.x*E-d.y*x,d.x*x+d.y*E),h?d.add(h):d},transform:function(t){return t?t._transformPoint(this):this},add:function(){var t=f.read(arguments);return new f(this.x+t.x,this.y+t.y)},subtract:function(){var t=f.read(arguments);return new f(this.x-t.x,this.y-t.y)},multiply:function(){var t=f.read(arguments);return new f(this.x*t.x,this.y*t.y)},divide:function(){var t=f.read(arguments);return new f(this.x/t.x,this.y/t.y)},modulo:function(){var t=f.read(arguments);return new f(this.x%t.x,this.y%t.y)},negate:function(){return new f(-this.x,-this.y)},isInside:function(){return M.read(arguments).contains(this)},isClose:function(){var t=f.read(arguments),h=a.read(arguments);return this.getDistance(t)<=h},isCollinear:function(){var t=f.read(arguments);return f.isCollinear(this.x,this.y,t.x,t.y)},isColinear:"#isCollinear",isOrthogonal:function(){var t=f.read(arguments);return f.isOrthogonal(this.x,this.y,t.x,t.y)},isZero:function(){var t=c.isZero;return t(this.x)&&t(this.y)},isNaN:function(){return isNaN(this.x)||isNaN(this.y)},isInQuadrant:function(t){return this.x*(t>1&&t<4?-1:1)>=0&&this.y*(t>2?-1:1)>=0},dot:function(){var t=f.read(arguments);return this.x*t.x+this.y*t.y},cross:function(){var t=f.read(arguments);return this.x*t.y-this.y*t.x},project:function(){var t=f.read(arguments),h=t.isZero()?0:this.dot(t)/t.dot(t);return new f(t.x*h,t.y*h)},statics:{min:function(){var t=f.read(arguments),h=f.read(arguments);return new f(Math.min(t.x,h.x),Math.min(t.y,h.y))},max:function(){var t=f.read(arguments),h=f.read(arguments);return new f(Math.max(t.x,h.x),Math.max(t.y,h.y))},random:function(){return new f(Math.random(),Math.random())},isCollinear:function(t,h,d,x){return Math.abs(t*x-h*d)<=1e-8*Math.sqrt((t*t+h*h)*(d*d+x*x))},isOrthogonal:function(t,h,d,x){return Math.abs(t*d+h*x)<=1e-8*Math.sqrt((t*t+h*h)*(d*d+x*x))}}},a.each(["round","ceil","floor","abs"],function(t){var h=Math[t];this[t]=function(){return new f(h(this.x),h(this.y))}},{})),g=f.extend({initialize:function(t,h,d,x){this._x=t,this._y=h,this._owner=d,this._setter=x},_set:function(t,h,d){return this._x=t,this._y=h,d||this._owner[this._setter](this),this},getX:function(){return this._x},setX:function(t){this._x=t,this._owner[this._setter](this)},getY:function(){return this._y},setY:function(t){this._y=t,this._owner[this._setter](this)},isSelected:function(){return!!(this._owner._selection&this._getSelection())},setSelected:function(t){this._owner._changeSelection(this._getSelection(),t)},_getSelection:function(){return this._setter==="setPosition"?4:0}}),y=a.extend({_class:"Size",_readIndex:!0,initialize:function(t,h){var d=typeof t,x=this.__read,E=0;if(d==="number"){var C=typeof h=="number";this._set(t,C?h:t),x&&(E=C?2:1)}else if(d==="undefined"||t===null)this._set(0,0),x&&(E=t===null?1:0);else{var b=d==="string"?t.split(/[\s,]+/)||[]:t;E=1,Array.isArray(b)?this._set(+b[0],+(b.length>1?b[1]:b[0])):"width"in b?this._set(b.width||0,b.height||0):"x"in b?this._set(b.x||0,b.y||0):(this._set(0,0),E=0)}return x&&(this.__read=E),this},set:"#initialize",_set:function(t,h){return this.width=t,this.height=h,this},equals:function(t){return t===this||t&&(this.width===t.width&&this.height===t.height||Array.isArray(t)&&this.width===t[0]&&this.height===t[1])||!1},clone:function(){return new y(this.width,this.height)},toString:function(){var t=p.instance;return"{ width: "+t.number(this.width)+", height: "+t.number(this.height)+" }"},_serialize:function(t){var h=t.formatter;return[h.number(this.width),h.number(this.height)]},add:function(){var t=y.read(arguments);return new y(this.width+t.width,this.height+t.height)},subtract:function(){var t=y.read(arguments);return new y(this.width-t.width,this.height-t.height)},multiply:function(){var t=y.read(arguments);return new y(this.width*t.width,this.height*t.height)},divide:function(){var t=y.read(arguments);return new y(this.width/t.width,this.height/t.height)},modulo:function(){var t=y.read(arguments);return new y(this.width%t.width,this.height%t.height)},negate:function(){return new y(-this.width,-this.height)},isZero:function(){var t=c.isZero;return t(this.width)&&t(this.height)},isNaN:function(){return isNaN(this.width)||isNaN(this.height)},statics:{min:function(t,h){return new y(Math.min(t.width,h.width),Math.min(t.height,h.height))},max:function(t,h){return new y(Math.max(t.width,h.width),Math.max(t.height,h.height))},random:function(){return new y(Math.random(),Math.random())}}},a.each(["round","ceil","floor","abs"],function(t){var h=Math[t];this[t]=function(){return new y(h(this.width),h(this.height))}},{})),w=y.extend({initialize:function(t,h,d,x){this._width=t,this._height=h,this._owner=d,this._setter=x},_set:function(t,h,d){return this._width=t,this._height=h,d||this._owner[this._setter](this),this},getWidth:function(){return this._width},setWidth:function(t){this._width=t,this._owner[this._setter](this)},getHeight:function(){return this._height},setHeight:function(t){this._height=t,this._owner[this._setter](this)}}),M=a.extend({_class:"Rectangle",_readIndex:!0,beans:!0,initialize:function(t,h,d,x){var E,C=typeof t;if(C==="number"?(this._set(t,h,d,x),E=4):C==="undefined"||t===null?(this._set(0,0,0,0),E=t===null?1:0):arguments.length===1&&(Array.isArray(t)?(this._set.apply(this,t),E=1):t.x!==r||t.width!==r?(this._set(t.x||0,t.y||0,t.width||0,t.height||0),E=1):t.from===r&&t.to===r&&(this._set(0,0,0,0),a.filter(this,t),E=1)),E===r){var b,U,D=f.readNamed(arguments,"from"),k=a.peek(arguments),Z=D.x,Y=D.y;if(k&&k.x!==r||a.hasNamed(arguments,"to")){var W=f.readNamed(arguments,"to");b=W.x-Z,U=W.y-Y,b<0&&(Z=W.x,b=-b),U<0&&(Y=W.y,U=-U)}else{var F=y.read(arguments);b=F.width,U=F.height}this._set(Z,Y,b,U),E=arguments.__index;var z=arguments.__filtered;z&&(this.__filtered=z)}return this.__read&&(this.__read=E),this},set:"#initialize",_set:function(t,h,d,x){return this.x=t,this.y=h,this.width=d,this.height=x,this},clone:function(){return new M(this.x,this.y,this.width,this.height)},equals:function(t){var h=a.isPlainValue(t)?M.read(arguments):t;return h===this||h&&this.x===h.x&&this.y===h.y&&this.width===h.width&&this.height===h.height||!1},toString:function(){var t=p.instance;return"{ x: "+t.number(this.x)+", y: "+t.number(this.y)+", width: "+t.number(this.width)+", height: "+t.number(this.height)+" }"},_serialize:function(t){var h=t.formatter;return[h.number(this.x),h.number(this.y),h.number(this.width),h.number(this.height)]},getPoint:function(t){return new(t?f:g)(this.x,this.y,this,"setPoint")},setPoint:function(){var t=f.read(arguments);this.x=t.x,this.y=t.y},getSize:function(t){return new(t?y:w)(this.width,this.height,this,"setSize")},_fw:1,_fh:1,setSize:function(){var t=y.read(arguments),h=this._sx,d=this._sy,x=t.width,E=t.height;h&&(this.x+=(this.width-x)*h),d&&(this.y+=(this.height-E)*d),this.width=x,this.height=E,this._fw=this._fh=1},getLeft:function(){return this.x},setLeft:function(t){if(!this._fw){var h=t-this.x;this.width-=this._sx===.5?2*h:h}this.x=t,this._sx=this._fw=0},getTop:function(){return this.y},setTop:function(t){if(!this._fh){var h=t-this.y;this.height-=this._sy===.5?2*h:h}this.y=t,this._sy=this._fh=0},getRight:function(){return this.x+this.width},setRight:function(t){if(!this._fw){var h=t-this.x;this.width=this._sx===.5?2*h:h}this.x=t-this.width,this._sx=1,this._fw=0},getBottom:function(){return this.y+this.height},setBottom:function(t){if(!this._fh){var h=t-this.y;this.height=this._sy===.5?2*h:h}this.y=t-this.height,this._sy=1,this._fh=0},getCenterX:function(){return this.x+this.width/2},setCenterX:function(t){this._fw||this._sx===.5?this.x=t-this.width/2:(this._sx&&(this.x+=2*(t-this.x)*this._sx),this.width=2*(t-this.x)),this._sx=.5,this._fw=0},getCenterY:function(){return this.y+this.height/2},setCenterY:function(t){this._fh||this._sy===.5?this.y=t-this.height/2:(this._sy&&(this.y+=2*(t-this.y)*this._sy),this.height=2*(t-this.y)),this._sy=.5,this._fh=0},getCenter:function(t){return new(t?f:g)(this.getCenterX(),this.getCenterY(),this,"setCenter")},setCenter:function(){var t=f.read(arguments);return this.setCenterX(t.x),this.setCenterY(t.y),this},getArea:function(){return this.width*this.height},isEmpty:function(){return this.width===0||this.height===0},contains:function(t){return t&&t.width!==r||(Array.isArray(t)?t:arguments).length===4?this._containsRectangle(M.read(arguments)):this._containsPoint(f.read(arguments))},_containsPoint:function(t){var h=t.x,d=t.y;return h>=this.x&&d>=this.y&&h<=this.x+this.width&&d<=this.y+this.height},_containsRectangle:function(t){var h=t.x,d=t.y;return h>=this.x&&d>=this.y&&h+t.width<=this.x+this.width&&d+t.height<=this.y+this.height},intersects:function(){var t=M.read(arguments),h=a.read(arguments)||0;return t.x+t.width>this.x-h&&t.y+t.height>this.y-h&&t.x=4&&(t[1]+=x?"Y":"X");var E=t[x?0:1],C=t[x?1:0],b="get"+E,U="get"+C,D="set"+E,k="set"+C,Z="set"+d;this["get"+d]=function(Y){return new(Y?f:g)(this[b](),this[U](),this,Z)},this[Z]=function(){var Y=f.read(arguments);this[D](Y.x),this[k](Y.y)}},{beans:!0})),T=M.extend({initialize:function(t,h,d,x,E,C){this._set(t,h,d,x,!0),this._owner=E,this._setter=C},_set:function(t,h,d,x,E){return this._x=t,this._y=h,this._width=d,this._height=x,E||this._owner[this._setter](this),this}},new function(){var t=M.prototype;return a.each(["x","y","width","height"],function(h){var d=a.capitalize(h),x="_"+h;this["get"+d]=function(){return this[x]},this["set"+d]=function(E){this[x]=E,this._dontNotify||this._owner[this._setter](this)}},a.each(["Point","Size","Center","Left","Top","Right","Bottom","CenterX","CenterY","TopLeft","TopRight","BottomLeft","BottomRight","LeftCenter","TopCenter","RightCenter","BottomCenter"],function(h){var d="set"+h;this[d]=function(){this._dontNotify=!0,t[d].apply(this,arguments),this._dontNotify=!1,this._owner[this._setter](this)}},{isSelected:function(){return!!(2&this._owner._selection)},setSelected:function(h){var d=this._owner;d._changeSelection&&d._changeSelection(2,h)}}))}),B=a.extend({_class:"Matrix",initialize:function t(h,d){var x=arguments.length,E=!0;if(x>=6?this._set.apply(this,arguments):x===1||x===2?h instanceof t?this._set(h._a,h._b,h._c,h._d,h._tx,h._ty,d):Array.isArray(h)?this._set.apply(this,d?h.concat([d]):h):E=!1:x?E=!1:this.reset(),!E)throw new Error("Unsupported matrix parameters");return this},set:"#initialize",_set:function(t,h,d,x,E,C,b){return this._a=t,this._b=h,this._c=d,this._d=x,this._tx=E,this._ty=C,b||this._changed(),this},_serialize:function(t,h){return a.serialize(this.getValues(),t,!0,h)},_changed:function(){var t=this._owner;t&&(t._applyMatrix?t.transform(null,!0):t._changed(9))},clone:function(){return new B(this._a,this._b,this._c,this._d,this._tx,this._ty)},equals:function(t){return t===this||t&&this._a===t._a&&this._b===t._b&&this._c===t._c&&this._d===t._d&&this._tx===t._tx&&this._ty===t._ty},toString:function(){var t=p.instance;return"[["+[t.number(this._a),t.number(this._c),t.number(this._tx)].join(", ")+"], ["+[t.number(this._b),t.number(this._d),t.number(this._ty)].join(", ")+"]]"},reset:function(t){return this._a=this._d=1,this._b=this._c=this._tx=this._ty=0,t||this._changed(),this},apply:function(t,h){var d=this._owner;return!!d&&(d.transform(null,!0,a.pick(t,!0),h),this.isIdentity())},translate:function(){var t=f.read(arguments),h=t.x,d=t.y;return this._tx+=h*this._a+d*this._c,this._ty+=h*this._b+d*this._d,this._changed(),this},scale:function(){var t=f.read(arguments),h=f.read(arguments,0,{readNull:!0});return h&&this.translate(h),this._a*=t.x,this._b*=t.x,this._c*=t.y,this._d*=t.y,h&&this.translate(h.negate()),this._changed(),this},rotate:function(t){t*=Math.PI/180;var h=f.read(arguments,1),d=h.x,x=h.y,E=Math.cos(t),C=Math.sin(t),b=d-d*E+x*C,U=x-d*C-x*E,D=this._a,k=this._b,Z=this._c,Y=this._d;return this._a=E*D+C*Z,this._b=E*k+C*Y,this._c=-C*D+E*Z,this._d=-C*k+E*Y,this._tx+=b*D+U*Z,this._ty+=b*k+U*Y,this._changed(),this},shear:function(){var t=f.read(arguments),h=f.read(arguments,0,{readNull:!0});h&&this.translate(h);var d=this._a,x=this._b;return this._a+=t.y*this._c,this._b+=t.y*this._d,this._c+=t.x*d,this._d+=t.x*x,h&&this.translate(h.negate()),this._changed(),this},skew:function(){var t=f.read(arguments),h=f.read(arguments,0,{readNull:!0}),d=Math.PI/180,x=new f(Math.tan(t.x*d),Math.tan(t.y*d));return this.shear(x,h)},append:function(t,h){if(t){var d=this._a,x=this._b,E=this._c,C=this._d,b=t._a,U=t._c,D=t._b,k=t._d,Z=t._tx,Y=t._ty;this._a=b*d+D*E,this._c=U*d+k*E,this._b=b*x+D*C,this._d=U*x+k*C,this._tx+=Z*d+Y*E,this._ty+=Z*x+Y*C,h||this._changed()}return this},prepend:function(t,h){if(t){var d=this._a,x=this._b,E=this._c,C=this._d,b=this._tx,U=this._ty,D=t._a,k=t._c,Z=t._b,Y=t._d,W=t._tx,F=t._ty;this._a=D*d+k*x,this._c=D*E+k*C,this._b=Z*d+Y*x,this._d=Z*E+Y*C,this._tx=D*b+k*U+W,this._ty=Z*b+Y*U+F,h||this._changed()}return this},appended:function(t){return this.clone().append(t)},prepended:function(t){return this.clone().prepend(t)},invert:function(){var t=this._a,h=this._b,d=this._c,x=this._d,E=this._tx,C=this._ty,b=t*x-h*d,U=null;return b&&!isNaN(b)&&isFinite(E)&&isFinite(C)&&(this._a=x/b,this._b=-h/b,this._c=-d/b,this._d=t/b,this._tx=(d*C-x*E)/b,this._ty=(h*E-t*C)/b,U=this),U},inverted:function(){return this.clone().invert()},concatenate:"#append",preConcatenate:"#prepend",chain:"#appended",_shiftless:function(){return new B(this._a,this._b,this._c,this._d,0,0)},_orNullIfIdentity:function(){return this.isIdentity()?null:this},isIdentity:function(){return this._a===1&&this._b===0&&this._c===0&&this._d===1&&this._tx===0&&this._ty===0},isInvertible:function(){var t=this._a*this._d-this._c*this._b;return t&&!isNaN(t)&&isFinite(this._tx)&&isFinite(this._ty)},isSingular:function(){return!this.isInvertible()},transform:function(t,h,d){return arguments.length<3?this._transformPoint(f.read(arguments)):this._transformCoordinates(t,h,d)},_transformPoint:function(t,h,d){var x=t.x,E=t.y;return h||(h=new f),h._set(x*this._a+E*this._c+this._tx,x*this._b+E*this._d+this._ty,d)},_transformCoordinates:function(t,h,d){for(var x=0,E=2*d;xC[D]&&(C[D]=U)}return h||(h=new M),h._set(E[0],E[1],C[0]-E[0],C[1]-E[1],d)},inverseTransform:function(){return this._inverseTransform(f.read(arguments))},_inverseTransform:function(t,h,d){var x=this._a,E=this._b,C=this._c,b=this._d,U=this._tx,D=this._ty,k=x*b-E*C,Z=null;if(k&&!isNaN(k)&&isFinite(U)&&isFinite(D)){var Y=t.x-this._tx,W=t.y-this._ty;h||(h=new f),Z=h._set((Y*b-W*C)/k,(W*x-Y*E)/k,d)}return Z},decompose:function(){var t,h,d,x=this._a,E=this._b,C=this._c,b=this._d,U=x*b-E*C,D=Math.sqrt,k=Math.atan2,Z=180/Math.PI;if(x!==0||E!==0){var Y=D(x*x+E*E);t=Math.acos(x/Y)*(E>0?1:-1),h=[Y,U/Y],d=[k(x*C+E*b,Y*Y),0]}else if(C!==0||b!==0){var W=D(C*C+b*b);t=Math.asin(C/W)*(b>0?1:-1),h=[U/W,W],d=[0,k(x*C+E*b,W*W)]}else t=0,d=h=[0,0];return{translation:this.getTranslation(),rotation:t*Z,scaling:new f(h),skewing:new f(d[0]*Z,d[1]*Z)}},getValues:function(){return[this._a,this._b,this._c,this._d,this._tx,this._ty]},getTranslation:function(){return new f(this._tx,this._ty)},getScaling:function(){return(this.decompose()||{}).scaling},getRotation:function(){return(this.decompose()||{}).rotation},applyToContext:function(t){this.isIdentity()||t.transform(this._a,this._b,this._c,this._d,this._tx,this._ty)}},a.each(["a","b","c","d","tx","ty"],function(t){var h=a.capitalize(t),d="_"+t;this["get"+h]=function(){return this[d]},this["set"+h]=function(x){this[d]=x,this._changed()}},{})),H=a.extend({_class:"Line",initialize:function(t,h,d,x,E){var C=!1;arguments.length>=4?(this._px=t,this._py=h,this._vx=d,this._vy=x,C=E):(this._px=t.x,this._py=t.y,this._vx=h.x,this._vy=h.y,C=d),C||(this._vx-=this._px,this._vy-=this._py)},getPoint:function(){return new f(this._px,this._py)},getVector:function(){return new f(this._vx,this._vy)},getLength:function(){return this.getVector().getLength()},intersect:function(t,h){return H.intersect(this._px,this._py,this._vx,this._vy,t._px,t._py,t._vx,t._vy,!0,h)},getSide:function(t,h){return H.getSide(this._px,this._py,this._vx,this._vy,t.x,t.y,!0,h)},getDistance:function(t){return Math.abs(this.getSignedDistance(t))},getSignedDistance:function(t){return H.getSignedDistance(this._px,this._py,this._vx,this._vy,t.x,t.y,!0)},isCollinear:function(t){return f.isCollinear(this._vx,this._vy,t._vx,t._vy)},isOrthogonal:function(t){return f.isOrthogonal(this._vx,this._vy,t._vx,t._vy)},statics:{intersect:function(t,h,d,x,E,C,b,U,D,k){D||(d-=t,x-=h,b-=E,U-=C);var Z=d*U-x*b;if(!c.isZero(Z)){var Y=t-E,W=h-C,F=(b*W-U*Y)/Z,z=(d*W-x*Y)/Z;if(k||-1e-12=1?1:F),new f(t+F*d,h+F*x)}},getSide:function(t,h,d,x,E,C,b,U){b||(d-=t,x-=h);var D=E-t,k=D*x-(C-h)*d;return!U&&c.isZero(k)&&(k=(D*d+D*d)/(d*d+x*x))>=0&&k<=1&&(k=0),k<0?-1:k>0?1:0},getSignedDistance:function(t,h,d,x,E,C,b){return b||(d-=t,x-=h),d===0?x>0?E-t:t-E:x===0?d<0?C-h:h-C:((E-t)*x-(C-h)*d)/Math.sqrt(d*d+x*x)},getDistance:function(t,h,d,x,E,C,b){return Math.abs(H.getSignedDistance(t,h,d,x,E,C,b))}}}),J=v.extend({_class:"Project",_list:"projects",_reference:"project",_compactSerialize:!0,initialize:function(t){v.call(this,!0),this._children=[],this._namedChildren={},this._activeLayer=null,this._currentStyle=new ye(null,null,this),this._view=le.create(this,t||Oe.getCanvas(1,1)),this._selectionItems={},this._selectionCount=0,this._updateVersion=0},_serialize:function(t,h){return a.serialize(this._children,t,!0,h)},_changed:function(t,h){if(1&t){var d=this._view;d&&(d._needsUpdate=!0,!d._requested&&d._autoUpdate&&d.requestUpdate())}var x=this._changes;if(x&&h){var E=this._changesById,C=h._id,b=E[C];b?b.flags|=t:x.push(E[C]={item:h,flags:t})}},clear:function(){for(var t=this._children,h=t.length-1;h>=0;h--)t[h].remove()},isEmpty:function(){return!this._children.length},remove:function t(){return!!t.base.call(this)&&(this._view&&this._view.remove(),!0)},getView:function(){return this._view},getCurrentStyle:function(){return this._currentStyle},setCurrentStyle:function(t){this._currentStyle.set(t)},getIndex:function(){return this._index},getOptions:function(){return this._scope.settings},getLayers:function(){return this._children},getActiveLayer:function(){return this._activeLayer||new O({project:this,insert:!0})},getSymbolDefinitions:function(){var t=[],h={};return this.getItems({class:R,match:function(d){var x=d._definition,E=x._id;return h[E]||(h[E]=!0,t.push(x)),!1}}),t},getSymbols:"getSymbolDefinitions",getSelectedItems:function(){var t=this._selectionItems,h=[];for(var d in t){var x=t[d],E=x._selection;1&E&&x.isInserted()?h.push(x):E||this._updateSelection(x)}return h},_updateSelection:function(t){var h=t._id,d=this._selectionItems;t._selection?d[h]!==t&&(this._selectionCount++,d[h]=t):d[h]===t&&(this._selectionCount--,delete d[h])},selectAll:function(){for(var t=this._children,h=0,d=t.length;h0){t.save(),t.strokeWidth=1;var U=this._selectionItems,D=this._scope.settings.handleSize,k=this._updateVersion;for(var Z in U)U[Z]._drawSelection(t,h,D,U,k);t.restore()}}}),Q=a.extend(u,{statics:{extend:function t(h){return h._serializeFields&&(h._serializeFields=a.set({},this.prototype._serializeFields,h._serializeFields)),t.base.apply(this,arguments)},NO_INSERT:{insert:!1}},_class:"Item",_name:null,_applyMatrix:!0,_canApplyMatrix:!0,_canScaleStroke:!1,_pivot:null,_visible:!0,_blendMode:"normal",_opacity:1,_locked:!1,_guide:!1,_clipMask:!1,_selection:0,_selectBounds:!0,_selectChildren:!1,_serializeFields:{name:null,applyMatrix:null,matrix:new B,pivot:null,visible:!0,blendMode:"normal",opacity:1,locked:!1,guide:!1,clipMask:!1,selected:!1,data:{}},_prioritize:["applyMatrix"]},new function(){var t=["onMouseDown","onMouseUp","onMouseDrag","onClick","onDoubleClick","onMouseMove","onMouseEnter","onMouseLeave"];return a.each(t,function(h){this._events[h]={install:function(d){this.getView()._countItemEvent(d,1)},uninstall:function(d){this.getView()._countItemEvent(d,-1)}}},{_events:{onFrame:{install:function(){this.getView()._animateItem(this,!0)},uninstall:function(){this.getView()._animateItem(this,!1)}},onLoad:{},onError:{}},statics:{_itemHandlers:t}})},{initialize:function(){},_initialize:function(t,h){var d=t&&a.isPlainObject(t),x=d&&t.internal===!0,E=this._matrix=new B,C=d&&t.project||paper.project,b=paper.settings;return this._id=x?null:_.get(),this._parent=this._index=null,this._applyMatrix=this._canApplyMatrix&&b.applyMatrix,h&&E.translate(h),E._owner=this,this._style=new ye(C._currentStyle,this,C),x||d&&t.insert==0||!b.insertItems&&(!d||t.insert!==!0)?this._setProject(C):(d&&t.parent||C)._insertItem(r,this,!0),d&&t!==Q.NO_INSERT&&this.set(t,{internal:!0,insert:!0,project:!0,parent:!0}),d},_serialize:function(t,h){function d(C){for(var b in C){var U=E[b];a.equals(U,b==="leading"?1.2*C.fontSize:C[b])||(x[b]=a.serialize(U,t,b!=="data",h))}}var x={},E=this;return d(this._serializeFields),this instanceof q||d(this._style._defaults),[this._class,x]},_changed:function(t){var h=this._symbol,d=this._parent||h,x=this._project;8&t&&(this._bounds=this._position=this._decomposed=this._globalMatrix=r),d&&40&t&&Q._clearBoundsCache(d),2&t&&Q._clearBoundsCache(this),x&&x._changed(t,this),h&&h._changed(t)},getId:function(){return this._id},getName:function(){return this._name},setName:function(t){if(this._name&&this._removeNamed(),t===+t+"")throw new Error("Names consisting only of numbers are not supported.");var h=this._getOwner();if(t&&h){var d=h._children,x=h._namedChildren;(x[t]=x[t]||[]).push(this),t in d||(d[t]=this)}this._name=t||r,this._changed(128)},getStyle:function(){return this._style},setStyle:function(t){this.getStyle().set(t)}},a.each(["locked","visible","blendMode","opacity","guide"],function(t){var h=a.capitalize(t),d="_"+t,x={locked:128,visible:137};this["get"+h]=function(){return this[d]},this["set"+h]=function(E){E!=this[d]&&(this[d]=E,this._changed(x[t]||129))}},{}),{beans:!0,getSelection:function(){return this._selection},setSelection:function(t){if(t!==this._selection){this._selection=t;var h=this._project;h&&(h._updateSelection(this),this._changed(129))}},_changeSelection:function(t,h){var d=this._selection;this.setSelection(h?d|t:d&~t)},isSelected:function(){if(this._selectChildren){for(var t=this._children,h=0,d=t.length;h=0;d--)if(h[d].contains(t))return!0;return!1}return t.isInside(this.getInternalBounds())},isInside:function(){return M.read(arguments).contains(this.getBounds())},_asPathItem:function(){return new ne.Rectangle({rectangle:this.getInternalBounds(),matrix:this._matrix,insert:!1})},intersects:function(t,h){return t instanceof Q&&this._asPathItem().getIntersections(t._asPathItem(),null,h,!0).length>0}},new function(){function t(){return this._hitTest(f.read(arguments),re.getOptions(arguments))}function h(){var x=f.read(arguments),E=re.getOptions(arguments),C=[];return this._hitTest(x,a.set({all:C},E)),C}function d(x,E,C,b){var U=this._children;if(U)for(var D=U.length-1;D>=0;D--){var k=U[D],Z=k!==b&&k._hitTest(x,E,C);if(Z&&!E.all)return Z}return null}return J.inject({hitTest:t,hitTestAll:h,_hitTest:d}),{hitTest:t,hitTestAll:h,_hitTestChildren:d}},{_hitTest:function(t,h,d){function x(I){return I&&W&&!W(I)&&(I=null),I&&h.all&&h.all.push(I),I}function E(I,te){var fe=te?k["get"+te]():F.getPosition();if(t.subtract(fe).divide(D).length<=1)return new re(I,F,{name:te?a.hyphenate(te):I,point:fe})}if(this._locked||!this._visible||this._guide&&!h.guides||this.isEmpty())return null;var C=this._matrix,b=d?d.appended(C):this.getGlobalMatrix().prepend(this.getView()._matrix),U=Math.max(h.tolerance,1e-12),D=h._tolerancePadding=new y(ne._getStrokePadding(U,C._shiftless().invert()));if(!(t=C._inverseTransform(t))||!this._children&&!this.getBounds({internal:!0,stroke:!0,handle:!0}).expand(D.multiply(2))._containsPoint(t))return null;var k,Z,Y=!(h.guides&&!this._guide||h.selected&&!this.isSelected()||h.type&&h.type!==a.hyphenate(this._class)||h.class&&!(this instanceof h.class)),W=h.match,F=this,z=h.position,G=h.center,X=h.bounds;if(Y&&this._parent&&(z||G||X)){if((G||X)&&(k=this.getInternalBounds()),!(Z=z&&E("position")||G&&E("center","Center"))&&X)for(var A=["TopLeft","TopRight","BottomLeft","BottomRight","LeftCenter","TopCenter","RightCenter","BottomCenter"],N=0;N<8&&!Z;N++)Z=E("bounds",A[N]);Z=x(Z)}return Z||(Z=this._hitTestChildren(t,h,b)||Y&&x(this._hitTestSelf(t,h,b,this.getStrokeScaling()?null:b._shiftless().invert()))||null),Z&&Z.point&&(Z.point=C.transform(Z.point)),Z},_hitTestSelf:function(t,h){if(h.fill&&this.hasFill()&&this._contains(t))return new re("fill",this)},matches:function(t,h){function d(b,U){for(var D in b)if(b.hasOwnProperty(D)){var k=b[D],Z=U[D];if(a.isPlainObject(k)&&a.isPlainObject(Z)){if(!d(k,Z))return!1}else if(!a.equals(k,Z))return!1}return!0}var x=typeof t;if(x==="object"){for(var E in t)if(t.hasOwnProperty(E)&&!this.matches(E,t[E]))return!1;return!0}if(x==="function")return t(this);if(t==="match")return h(this);var C=/^(empty|editable)$/.test(t)?this["is"+a.capitalize(t)]():t==="type"?a.hyphenate(this._class):this[t];if(t==="class"){if(typeof h=="function")return this instanceof h;C=this._class}if(typeof h=="function")return!!h(C);if(h){if(h.test)return h.test(C);if(a.isPlainObject(h))return d(h,C)}return a.equals(C,h)},getItems:function(t){return Q._getItems(this,t,this._matrix)},getItem:function(t){return Q._getItems(this,t,this._matrix,null,!0)[0]||null},statics:{_getItems:function t(h,d,x,E,C){if(!E){var b=typeof d=="object"&&d,U=b&&b.overlapping,D=b&&b.inside,k=(A=U||D)&&M.read([A]);E={items:[],recursive:b&&b.recursive!==!1,inside:!!D,overlapping:!!U,rect:k,path:U&&new ne.Rectangle({rectangle:k,insert:!1})},b&&(d=a.filter({},d,{recursive:!0,inside:!0,overlapping:!0}))}var Z=h._children,Y=E.items;x=(k=E.rect)&&(x||new B);for(var W=0,F=Z&&Z.length;W0))break}return Y}}},{importJSON:function(t){var h=a.importJSON(t,this);return h!==this?this.addChild(h):h},addChild:function(t){return this.insertChild(r,t)},insertChild:function(t,h){var d=h?this.insertChildren(t,[h]):null;return d&&d[0]},addChildren:function(t){return this.insertChildren(this._children.length,t)},insertChildren:function(t,h){var d=this._children;if(d&&h&&h.length>0){for(var x={},E=(h=a.slice(h)).length-1;E>=0;E--){var C=(k=h[E])&&k._id;!k||x[C]?h.splice(E,1):(k._remove(!1,!0),x[C]=!0)}a.splice(d,h,t,0);for(var b=this._project,U=b._changes,E=0,D=h.length;E=0;x--)d[x]._remove(!0,!1);return d.length>0&&this._changed(11),d},clear:"#removeChildren",reverseChildren:function(){if(this._children){this._children.reverse();for(var t=0,h=this._children.length;t0},isInserted:function(){return!!this._parent&&this._parent.isInserted()},isAbove:function(t){return this._getOrder(t)===-1},isBelow:function(t){return this._getOrder(t)===1},isParent:function(t){return this._parent===t},isChild:function(t){return t&&t._parent===this},isDescendant:function(t){for(var h=this;h=h._parent;)if(h===t)return!0;return!1},isAncestor:function(t){return!!t&&t.isDescendant(this)},isSibling:function(t){return this._parent===t._parent},isGroupedWith:function(t){for(var h=this._parent;h;){if(h._parent&&/^(Group|Layer|CompoundPath)$/.test(h._class)&&t.isDescendant(h))return!0;h=h._parent}return!1}},a.each(["rotate","scale","shear","skew"],function(t){var h=t==="rotate";this[t]=function(){var d=(h?a:f).read(arguments),x=f.read(arguments,0,{readNull:!0});return this.transform(new B()[t](d,x||this.getPosition(!0)))}},{translate:function(){var t=new B;return this.transform(t.translate.apply(t,arguments))},transform:function(t,h,d,x){var E=this._matrix,C=t&&!t.isIdentity(),b=(h||this._applyMatrix)&&(!E.isIdentity()||C||h&&d&&this._children);if(!C&&!b)return this;if(C){!t.isInvertible()&&E.isInvertible()&&(E._backup=E.getValues()),E.prepend(t,!0);var U=this._style,D=U.getFillColor(!0),k=U.getStrokeColor(!0);D&&D.transform(t),k&&k.transform(t)}if(b&&(b=this._transformContent(E,d,x))){var Z=this._pivot;Z&&E._transformPoint(Z,Z,!0),E.reset(!0),x&&this._canApplyMatrix&&(this._applyMatrix=!0)}var Y=this._bounds,W=this._position;(C||b)&&this._changed(9);var F=C&&Y&&t.decompose();if(F&&F.skewing.isZero()&&F.rotation%90==0){for(var z in Y){var G=Y[z];if(G.nonscaling)delete Y[z];else if(b||!G.internal){var X=G.rect;t._transformBounds(X,X)}}this._bounds=Y;var A=Y[this._getBoundsCacheKey(this._boundsOptions||{})];A&&(this._position=A.rect.getCenter(!0))}else C&&W&&this._pivot&&(this._position=t._transformPoint(W,W));return this},_transformContent:function(t,h,d){var x=this._children;if(x){for(var E=0,C=x.length;EE:x1&&U<4?-1:1,U>2?-1:1),k=D.multiply(b),Z=k.subtract(D.multiply(C));if(new M(E?k.add(D.multiply(E)):k,Z).contains(x))return{point:Z,quadrant:U}}}function h(d,x,E,C){var b=d.divide(x);return(!C||b.isInQuadrant(C))&&b.subtract(b.normalize()).multiply(x).divide(E).length<=1}return{_contains:function d(x){if(this._type==="rectangle"){var E=t(this,x);return E?x.subtract(E.point).divide(this._radius).getLength()<=1:d.base.call(this,x)}return x.divide(this.size).getLength()<=.5},_hitTestSelf:function d(x,E,C,b){var U=!1,D=this._style,k=E.stroke&&D.hasStroke(),Z=E.fill&&D.hasFill();if(k||Z){var Y=this._type,W=this._radius,F=k?D.getStrokeWidth()/2:0,z=E._tolerancePadding.add(ne._getStrokePadding(F,!D.getStrokeScaling()&&b));if(Y==="rectangle"){var G=z.multiply(2),X=t(this,x,G);if(X)U=h(x.subtract(X.point),W,z,X.quadrant);else{var A=new M(this._size).setCenter(0,0),N=A.expand(G),I=A.expand(G.negate());U=N._containsPoint(x)&&!I._containsPoint(x)}}else U=h(x,W,z)}return U?new re(k?"stroke":"fill",this):d.base.apply(this,arguments)}}},{statics:new function(){function t(h,d,x,E,C){var b=new K(a.getNamed(C),d);return b._type=h,b._size=x,b._radius=E,b}return{Circle:function(){var h=f.readNamed(arguments,"center"),d=a.readNamed(arguments,"radius");return t("circle",h,new y(2*d),d,arguments)},Rectangle:function(){var h=M.readNamed(arguments,"rectangle"),d=y.min(y.readNamed(arguments,"radius"),h.getSize(!0).divide(2));return t("rectangle",h.getCenter(!0),h.getSize(!0),d,arguments)},Ellipse:function(){var h=K._readEllipse(arguments),d=h.radius;return t("ellipse",h.center,d.multiply(2),d,arguments)},_readEllipse:function(h){var d,x;if(a.hasNamed(h,"radius"))d=f.readNamed(h,"center"),x=y.readNamed(h,"radius");else{var E=M.readNamed(h,"rectangle");d=E.getCenter(!0),x=E.getSize(!0).divide(2)}return{center:d,radius:x}}}}}),pe=Q.extend({_class:"Raster",_applyMatrix:!1,_canApplyMatrix:!1,_boundsOptions:{stroke:!1,handle:!1},_serializeFields:{crossOrigin:null,source:null},_prioritize:["crossOrigin"],initialize:function(t,h){if(!this._initialize(t,h!==r&&f.read(arguments,1))){var d=typeof t=="string"?o.getElementById(t):t;d?this.setImage(d):this.setSource(t)}this._size||(this._size=new y,this._loaded=!1)},_equals:function(t){return this.getSource()===t.getSource()},copyContent:function(t){var h=t._image,d=t._canvas;if(h)this._setImage(h);else if(d){var x=Oe.getCanvas(t._size);x.getContext("2d").drawImage(d,0,0),this._setImage(x)}this._crossOrigin=t._crossOrigin},getSize:function(){var t=this._size;return new w(t?t.width:0,t?t.height:0,this,"setSize")},setSize:function(){var t=y.read(arguments);if(!t.equals(this._size))if(t.width>0&&t.height>0){var h=this.getElement();this._setImage(Oe.getCanvas(t)),h&&this.getContext(!0).drawImage(h,0,0,t.width,t.height)}else this._canvas&&Oe.release(this._canvas),this._size=t.clone()},getWidth:function(){return this._size?this._size.width:0},setWidth:function(t){this.setSize(t,this.getHeight())},getHeight:function(){return this._size?this._size.height:0},setHeight:function(t){this.setSize(this.getWidth(),t)},getLoaded:function(){return this._loaded},isEmpty:function(){var t=this._size;return!t||t.width===0&&t.height===0},getResolution:function(){var t=this._matrix,h=new f(0,0).transform(t),d=new f(1,0).transform(t).subtract(h),x=new f(0,1).transform(t).subtract(h);return new y(72/d.getLength(),72/x.getLength())},getPpi:"#getResolution",getImage:function(){return this._image},setImage:function(t){function h(x){var E=d.getView(),C=x&&x.type||"load";E&&d.responds(C)&&(paper=E._scope,d.emit(C,new Be(x)))}var d=this;this._setImage(t),this._loaded?setTimeout(h,0):t&&ke.add(t,{load:function(x){d._setImage(t),h(x)},error:h})},_setImage:function(t){this._canvas&&Oe.release(this._canvas),t&&t.getContext?(this._image=null,this._canvas=t,this._loaded=!0):(this._image=t,this._canvas=null,this._loaded=!!(t&&t.src&&t.complete)),this._size=new y(t?t.naturalWidth||t.width:0,t?t.naturalHeight||t.height:0),this._context=null,this._changed(521)},getCanvas:function(){if(!this._canvas){var t=Oe.getContext(this._size);try{this._image&&t.drawImage(this._image,0,0),this._canvas=t.canvas}catch(h){Oe.release(t)}}return this._canvas},setCanvas:"#setImage",getContext:function(t){return this._context||(this._context=this.getCanvas().getContext("2d")),t&&(this._image=null,this._changed(513)),this._context},setContext:function(t){this._context=t},getSource:function(){var t=this._image;return t&&t.src||this.toDataURL()},setSource:function(t){var h=new e.Image,d=this._crossOrigin;d&&(h.crossOrigin=d),h.src=t,this.setImage(h)},getCrossOrigin:function(){var t=this._image;return t&&t.crossOrigin||this._crossOrigin||""},setCrossOrigin:function(t){this._crossOrigin=t;var h=this._image;h&&(h.crossOrigin=t)},getElement:function(){return this._canvas||this._loaded&&this._image}},{beans:!1,getSubCanvas:function(){var t=M.read(arguments),h=Oe.getContext(t.getSize());return h.drawImage(this.getCanvas(),t.x,t.y,t.width,t.height,0,0,t.width,t.height),h.canvas},getSubRaster:function(){var t=M.read(arguments),h=new pe(Q.NO_INSERT);return h._setImage(this.getSubCanvas(t)),h.translate(t.getCenter().subtract(this.getSize().divide(2))),h._matrix.prepend(this._matrix),h.insertAbove(this),h},toDataURL:function(){var t=this._image,h=t&&t.src;if(/^data:/.test(h))return h;var d=this.getCanvas();return d?d.toDataURL.apply(d,arguments):null},drawImage:function(t){var h=f.read(arguments,1);this.getContext(!0).drawImage(t,h.x,h.y)},getAverageColor:function(t){var h,d;if(t?t instanceof ee?(d=t,h=t.getBounds()):typeof t=="object"&&("width"in t?h=new M(t):"x"in t&&(h=new M(t.x-.5,t.y-.5,1,1))):h=this.getBounds(),!h)return null;var x=Math.min(h.width,32),E=Math.min(h.height,32),C=pe._sampleContext;C?C.clearRect(0,0,33,33):C=pe._sampleContext=Oe.getContext(new y(32)),C.save();var b=new B().scale(x/h.width,E/h.height).translate(-h.x,-h.y);b.applyToContext(C),d&&d.draw(C,new a({clip:!0,matrices:[b]})),this._matrix.applyToContext(C);var U=this.getElement(),D=this._size;U&&C.drawImage(U,-D.width/2,-D.height/2),C.restore();for(var k=C.getImageData(.5,.5,Math.ceil(x),Math.ceil(E)).data,Z=[0,0,0],Y=0,W=0,F=k.length;W0&&(t==null||typeof t=="object"?Z===1&&t&&"point"in t?(b=t.point,U=t.handleIn,D=t.handleOut,k=t.selection):(b=t,U=h,D=d,k=x):(b=[t,h],U=d!==r?[d,x]:null,D=E!==r?[E,C]:null)),new me(b,this,"_point"),new me(U,this,"_handleIn"),new me(D,this,"_handleOut"),k&&this.setSelection(k)},_serialize:function(t,h){var d=this._point,x=this._selection,E=x||this.hasHandles()?[d,this._handleIn,this._handleOut]:d;return x&&E.push(x),a.serialize(E,t,!0,h)},_changed:function(t){var h=this._path;if(h){var d,x=h._curves,E=this._index;x&&(t&&t!==this._point&&t!==this._handleIn||!(d=E>0?x[E-1]:h._closed?x[x.length-1]:null)||d._changed(),t&&t!==this._point&&t!==this._handleOut||!(d=x[E])||d._changed()),h._changed(25)}},getPoint:function(){return this._point},setPoint:function(){this._point.set(f.read(arguments))},getHandleIn:function(){return this._handleIn},setHandleIn:function(){this._handleIn.set(f.read(arguments))},getHandleOut:function(){return this._handleOut},setHandleOut:function(){this._handleOut.set(f.read(arguments))},hasHandles:function(){return!this._handleIn.isZero()||!this._handleOut.isZero()},isSmooth:function(){var t=this._handleIn,h=this._handleOut;return!t.isZero()&&!h.isZero()&&t.isCollinear(h)},clearHandles:function(){this._handleIn._set(0,0),this._handleOut._set(0,0)},getSelection:function(){return this._selection},setSelection:function(t){var h=this._selection,d=this._path;this._selection=t=t||0,d&&t!==h&&(d._updateSelection(this,h,t),d._changed(129))},_changeSelection:function(t,h){var d=this._selection;this.setSelection(h?d|t:d&~t)},isSelected:function(){return!!(7&this._selection)},setSelected:function(t){this._changeSelection(7,t)},getIndex:function(){return this._index!==r?this._index:null},getPath:function(){return this._path||null},getCurve:function(){var t=this._path,h=this._index;return t?(h>0&&!t._closed&&h===t._segments.length-1&&h--,t.getCurves()[h]||null):null},getLocation:function(){var t=this.getCurve();return t?new $(t,this===t._segment1?0:1):null},getNext:function(){var t=this._path&&this._path._segments;return t&&(t[this._index+1]||this._path._closed&&t[0])||null},smooth:function(t,h,d){var x=t||{},E=x.type,C=x.factor,b=this.getPrevious(),U=this.getNext(),D=(b||this)._point,k=this._point,Z=(U||this)._point,Y=D.getDistance(k),W=k.getDistance(Z);if(E&&E!=="catmull-rom"){if(E!=="geometric")throw new Error("Smoothing method '"+E+"' not supported.");if(b&&U){var F=D.subtract(Z),z=C===r?.4:C,G=z*Y/(Y+W);h||this.setHandleIn(F.multiply(G)),d||this.setHandleOut(F.multiply(G-z))}}else{var X=C===r?.5:C,A=Math.pow(Y,X),N=A*A,I=Math.pow(W,X),te=I*I;if(!h&&b){var fe=2*te+3*I*A+N,S=3*I*(I+A);this.setHandleIn(S!==0?new f((te*D._x+fe*k._x-N*Z._x)/S-k._x,(te*D._y+fe*k._y-N*Z._y)/S-k._y):new f)}if(!d&&U){var fe=2*N+3*A*I+te,S=3*A*(A+I);this.setHandleOut(S!==0?new f((N*Z._x+fe*k._x-te*D._x)/S-k._x,(N*Z._y+fe*k._y-te*D._y)/S-k._y):new f)}}},getPrevious:function(){var t=this._path&&this._path._segments;return t&&(t[this._index-1]||this._path._closed&&t[t.length-1])||null},isFirst:function(){return!this._index},isLast:function(){var t=this._path;return t&&this._index===t._segments.length-1||!1},reverse:function(){var t=this._handleIn,h=this._handleOut,d=t.clone();t.set(h),h.set(d)},reversed:function(){return new oe(this._point,this._handleOut,this._handleIn)},remove:function(){return!!this._path&&!!this._path.removeSegment(this._index)},clone:function(){return new oe(this._point,this._handleIn,this._handleOut)},equals:function(t){return t===this||t&&this._class===t._class&&this._point.equals(t._point)&&this._handleIn.equals(t._handleIn)&&this._handleOut.equals(t._handleOut)||!1},toString:function(){var t=["point: "+this._point];return this._handleIn.isZero()||t.push("handleIn: "+this._handleIn),this._handleOut.isZero()||t.push("handleOut: "+this._handleOut),"{ "+t.join(", ")+" }"},transform:function(t){this._transformCoordinates(t,new Array(6),!0),this._changed()},interpolate:function(t,h,d){var x=1-d,E=d,C=t._point,b=h._point,U=t._handleIn,D=h._handleIn,k=h._handleOut,Z=t._handleOut;this._point._set(x*C._x+E*b._x,x*C._y+E*b._y,!0),this._handleIn._set(x*U._x+E*D._x,x*U._y+E*D._y,!0),this._handleOut._set(x*Z._x+E*k._x,x*Z._y+E*k._y,!0),this._changed()},_transformCoordinates:function(t,h,d){var x=this._point,E=d&&this._handleIn.isZero()?null:this._handleIn,C=d&&this._handleOut.isZero()?null:this._handleOut,b=x._x,U=x._y,D=2;return h[0]=b,h[1]=U,E&&(h[D++]=E._x+b,h[D++]=E._y+U),C&&(h[D++]=C._x+b,h[D++]=C._y+U),t&&(t._transformCoordinates(h,h,D/2),b=h[0],U=h[1],d?(x._x=b,x._y=U,D=2,E&&(E._x=h[D++]-b,E._y=h[D++]-U),C&&(C._x=h[D++]-b,C._y=h[D++]-U)):(E||(h[D++]=b,h[D++]=U),C||(h[D++]=b,h[D++]=U))),h}}),me=f.extend({initialize:function(t,h,d){var x,E,C;if(t)if((x=t[0])!==r)E=t[1];else{var b=t;(x=b.x)===r&&(x=(b=f.read(arguments)).x),E=b.y,C=b.selected}else x=E=0;this._x=x,this._y=E,this._owner=h,h[d]=this,C&&this.setSelected(!0)},_set:function(t,h){return this._x=t,this._y=h,this._owner._changed(this),this},getX:function(){return this._x},setX:function(t){this._x=t,this._owner._changed(this)},getY:function(){return this._y},setY:function(t){this._y=t,this._owner._changed(this)},isZero:function(){var t=c.isZero;return t(this._x)&&t(this._y)},isSelected:function(){return!!(this._owner._selection&this._getSelection())},setSelected:function(t){this._owner._changeSelection(this._getSelection(),t)},_getSelection:function(){var t=this._owner;return this===t._point?1:this===t._handleIn?2:this===t._handleOut?4:0}}),ue=a.extend({_class:"Curve",beans:!0,initialize:function(t,h,d,x,E,C,b,U){var D,k,Z,Y,W,F,z=arguments.length;z===3?(this._path=t,D=h,k=d):z?z===1?"segment1"in t?(D=new oe(t.segment1),k=new oe(t.segment2)):"point1"in t?(Z=t.point1,W=t.handle1,F=t.handle2,Y=t.point2):Array.isArray(t)&&(Z=[t[0],t[1]],Y=[t[6],t[7]],W=[t[2]-t[0],t[3]-t[1]],F=[t[4]-t[6],t[5]-t[7]]):z===2?(D=new oe(t),k=new oe(h)):z===4?(Z=t,W=h,F=d,Y=x):z===8&&(Z=[t,h],Y=[b,U],W=[d-t,x-h],F=[E-b,C-U]):(D=new oe,k=new oe),this._segment1=D||new oe(Z,null,W),this._segment2=k||new oe(Y,F,null)},_serialize:function(t,h){return a.serialize(this.hasHandles()?[this.getPoint1(),this.getHandle1(),this.getHandle2(),this.getPoint2()]:[this.getPoint1(),this.getPoint2()],t,!0,h)},_changed:function(){this._length=this._bounds=r},clone:function(){return new ue(this._segment1,this._segment2)},toString:function(){var t=["point1: "+this._segment1._point];return this._segment1._handleOut.isZero()||t.push("handle1: "+this._segment1._handleOut),this._segment2._handleIn.isZero()||t.push("handle2: "+this._segment2._handleIn),t.push("point2: "+this._segment2._point),"{ "+t.join(", ")+" }"},classify:function(){return ue.classify(this.getValues())},remove:function(){var t=!1;if(this._path){var h=this._segment2,d=h._handleOut;(t=h.remove())&&this._segment1._handleOut.set(d)}return t},getPoint1:function(){return this._segment1._point},setPoint1:function(){this._segment1._point.set(f.read(arguments))},getPoint2:function(){return this._segment2._point},setPoint2:function(){this._segment2._point.set(f.read(arguments))},getHandle1:function(){return this._segment1._handleOut},setHandle1:function(){this._segment1._handleOut.set(f.read(arguments))},getHandle2:function(){return this._segment2._handleIn},setHandle2:function(){this._segment2._handleIn.set(f.read(arguments))},getSegment1:function(){return this._segment1},getSegment2:function(){return this._segment2},getPath:function(){return this._path},getIndex:function(){return this._segment1._index},getNext:function(){var t=this._path&&this._path._curves;return t&&(t[this._segment1._index+1]||this._path._closed&&t[0])||null},getPrevious:function(){var t=this._path&&this._path._curves;return t&&(t[this._segment1._index-1]||this._path._closed&&t[t.length-1])||null},isFirst:function(){return!this._segment1._index},isLast:function(){var t=this._path;return t&&this._segment1._index===t._curves.length-1||!1},isSelected:function(){return this.getPoint1().isSelected()&&this.getHandle1().isSelected()&&this.getHandle2().isSelected()&&this.getPoint2().isSelected()},setSelected:function(t){this.getPoint1().setSelected(t),this.getHandle1().setSelected(t),this.getHandle2().setSelected(t),this.getPoint2().setSelected(t)},getValues:function(t){return ue.getValues(this._segment1,this._segment2,t)},getPoints:function(){for(var t=this.getValues(),h=[],d=0;d<8;d+=2)h.push(new f(t[d],t[d+1]));return h}},{getLength:function(){return this._length==null&&(this._length=ue.getLength(this.getValues(),0,1)),this._length},getArea:function(){return ue.getArea(this.getValues())},getLine:function(){return new H(this._segment1._point,this._segment2._point)},getPart:function(t,h){return new ue(ue.getPart(this.getValues(),t,h))},getPartLength:function(t,h){return ue.getLength(this.getValues(),t,h)},divideAt:function(t){return this.divideAtTime(t&&t.curve===this?t.time:this.getTimeAt(t))},divideAtTime:function(t,h){var d=null;if(t>=1e-8&&t<=1-1e-8){var x=ue.subdivide(this.getValues(),t),E=x[0],C=x[1],b=h||this.hasHandles(),U=this._segment1,D=this._segment2,k=this._path;b&&(U._handleOut._set(E[2]-E[0],E[3]-E[1]),D._handleIn._set(C[4]-C[6],C[5]-C[7]));var Z=E[6],Y=E[7],W=new oe(new f(Z,Y),b&&new f(E[4]-Z,E[5]-Y),b&&new f(C[2]-Z,C[3]-Y));k?(k.insert(U._index+1,W),d=this.getNext()):(this._segment2=W,this._changed(),d=new ue(W,D))}return d},splitAt:function(t){var h=this._path;return h?h.splitAt(t):null},splitAtTime:function(t){return this.splitAt(this.getLocationAtTime(t))},divide:function(t,h){return this.divideAtTime(t===r?.5:h?t:this.getTimeAt(t))},split:function(t,h){return this.splitAtTime(t===r?.5:h?t:this.getTimeAt(t))},reversed:function(){return new ue(this._segment2.reversed(),this._segment1.reversed())},clearHandles:function(){this._segment1._handleOut._set(0,0),this._segment2._handleIn._set(0,0)},statics:{getValues:function(t,h,d,x){var E=t._point,C=t._handleOut,b=h._handleIn,U=h._point,D=E.x,k=E.y,Z=U.x,Y=U.y,W=x?[D,k,D,k,Z,Y,Z,Y]:[D,k,D+C._x,k+C._y,Z+b._x,Y+b._y,Z,Y];return d&&d._transformCoordinates(W,W,4),W},subdivide:function(t,h){var d=t[0],x=t[1],E=t[2],C=t[3],b=t[4],U=t[5],D=t[6],k=t[7];h===r&&(h=.5);var Z=1-h,Y=Z*d+h*E,W=Z*x+h*C,F=Z*E+h*b,z=Z*C+h*U,G=Z*b+h*D,X=Z*U+h*k,A=Z*Y+h*F,N=Z*W+h*z,I=Z*F+h*G,te=Z*z+h*X,fe=Z*A+h*I,S=Z*N+h*te;return[[d,x,Y,W,A,N,fe,S],[fe,S,I,te,G,X,D,k]]},getMonoCurves:function(t,h){var d=[],x=h?0:1,E=t[x+0],C=t[x+2],b=t[x+4],U=t[x+6];if(E>=C==C>=b&&C>=b==b>=U||ue.isStraight(t))d.push(t);else{var D=3*(C-b)-E+U,k=2*(E+b)-4*C,Z=C-E,Y=[],W=c.solveQuadratic(D,k,Z,Y,1e-8,1-1e-8);if(W){Y.sort();var F=Y[0],z=ue.subdivide(t,F);d.push(z[0]),W>1&&(F=(Y[1]-F)/(1-F),z=ue.subdivide(z[1],F),d.push(z[0])),d.push(z[1])}else d.push(t)}return d},solveCubic:function(t,h,d,x,E,C){var b=t[h],U=t[h+2],D=t[h+4],k=t[h+6],Z=0;if(!(bd&&k>d&&U>d&&D>d)){var Y=3*(U-b),W=3*(D-U)-Y,F=k-b-Y-W;Z=c.solveCubic(F,W,Y,b-d,x,E,C)}return Z},getTimeOf:function(t,h){var d=new f(t[0],t[1]),x=new f(t[6],t[7]);if((h.isClose(d,1e-12)?0:h.isClose(x,1e-12)?1:null)===null)for(var E=[h.x,h.y],C=[],b=0;b<2;b++)for(var U=ue.solveCubic(t,b,E[b],C,0,1),D=0;D=0&&F<=1){var z=h.getDistance(ue.getPoint(t,F),!0);if(z.999999999999?1:ue.getTimeOf(t,new f(x+D*C,E+D*b))}for(var k=1/0,Z=0,Y=0;Y<=100;Y++)d(Y/100);for(var W=.005;W>1e-8;)d(Z-W)||d(Z+W)||(W/=2);return Z},getPart:function(t,h,d){var x=h>d;if(x){var E=h;h=d,d=E}return h>0&&(t=ue.subdivide(t,h)[1]),d<1&&(t=ue.subdivide(t,(d-h)/(1-h))[0]),x?[t[6],t[7],t[4],t[5],t[2],t[3],t[0],t[1]]:t},isFlatEnough:function(t,h){var d=t[0],x=t[1],E=t[2],C=t[3],b=t[4],U=t[5],D=t[6],k=t[7],Z=3*E-2*d-D,Y=3*C-2*x-k,W=3*b-2*D-d,F=3*U-2*k-x;return Math.max(Z*Z,W*W)+Math.max(Y*Y,F*F)<=16*h*h},getArea:function(t){var h=t[0],d=t[1],x=t[2],E=t[3],C=t[4],b=t[5],U=t[6],D=t[7];return 3*((D-d)*(x+C)-(U-h)*(E+b)+E*(h-C)-x*(d-b)+D*(C+h/3)-U*(b+d/3))/20},getBounds:function(t){for(var h=t.slice(0,2),d=h.slice(),x=[0,0],E=0;E<2;E++)ue._addBounds(t[E],t[E+2],t[E+4],t[E+6],E,0,h,d,x);return new M(h[0],h[1],d[0]-h[0],d[1]-h[1])},_addBounds:function(t,h,d,x,E,C,b,U,D){function k(I,te){var fe=I-te,S=I+te;feU[E]&&(U[E]=S)}C/=2;var Z=b[E]-C,Y=U[E]+C;if(tY||h>Y||d>Y||x>Y)if(h=0&&U<=1&&D<=0&&D>=-1}}return!1},isLinear:function(t,h,d,x){var E=x.subtract(t).divide(3);return h.equals(E)&&d.negate().equals(E)}},function(t,h){this[h]=function(d){var x=this._segment1,E=this._segment2;return t(x._point,x._handleOut,E._handleIn,E._point,d)},this.statics[h]=function(d,x){var E=d[0],C=d[1],b=d[6],U=d[7];return t(new f(E,C),new f(d[2]-E,d[3]-C),new f(d[4]-b,d[5]-U),new f(b,U),x)}},{statics:{},hasHandles:function(){return!this._segment1._handleOut.isZero()||!this._segment2._handleIn.isZero()},hasLength:function(t){return(!this.getPoint1().equals(this.getPoint2())||this.hasHandles())&&this.getLength()>(t||0)},isCollinear:function(t){return t&&this.isStraight()&&t.isStraight()&&this.getLine().isCollinear(t.getLine())},isHorizontal:function(){return this.isStraight()&&Math.abs(this.getTangentAtTime(.5).y)<1e-8},isVertical:function(){return this.isStraight()&&Math.abs(this.getTangentAtTime(.5).x)<1e-8}}),{beans:!1,getLocationAt:function(t,h){return this.getLocationAtTime(h?t:this.getTimeAt(t))},getLocationAtTime:function(t){return t!=null&&t>=0&&t<=1?new $(this,t):null},getTimeAt:function(t,h){return ue.getTimeAt(this.getValues(),t,h)},getParameterAt:"#getTimeAt",getOffsetAtTime:function(t){return this.getPartLength(0,t)},getLocationOf:function(){return this.getLocationAtTime(this.getTimeOf(f.read(arguments)))},getOffsetOf:function(){var t=this.getLocationOf.apply(this,arguments);return t?t.getOffset():null},getTimeOf:function(){return ue.getTimeOf(this.getValues(),f.read(arguments))},getParameterOf:"#getTimeOf",getNearestLocation:function(){var t=f.read(arguments),h=this.getValues(),d=ue.getNearestTime(h,t),x=ue.getPoint(h,d);return new $(this,d,x,null,t.getDistance(x))},getNearestPoint:function(){var t=this.getNearestLocation.apply(this,arguments);return t&&t.getPoint()}},new function(){var t=["getPoint","getTangent","getNormal","getWeightedTangent","getWeightedNormal","getCurvature"];return a.each(t,function(h){this[h+"At"]=function(d,x){var E=this.getValues();return ue[h](E,x?d:ue.getTimeAt(E,d))},this[h+"AtTime"]=function(d){return ue[h](this.getValues(),d)}},{statics:{_evaluateMethods:t}})},new function(){function t(x){var E=x[0],C=x[1],b=x[2],U=x[3],D=x[4],k=x[5],Z=9*(b-D)+3*(x[6]-E),Y=6*(E+D)-12*b,W=3*(b-E),F=9*(U-k)+3*(x[7]-C),z=6*(C+k)-12*U,G=3*(U-C);return function(X){var A=(Z*X+Y)*X+W,N=(F*X+z)*X+G;return Math.sqrt(A*A+N*N)}}function h(x,E){return Math.max(2,Math.min(16,Math.ceil(32*Math.abs(E-x))))}function d(x,E,C,b){if(E==null||E<0||E>1)return null;var U=x[0],D=x[1],k=x[2],Z=x[3],Y=x[4],W=x[5],F=x[6],z=x[7],G=c.isZero;G(k-U)&&G(Z-D)&&(k=U,Z=D),G(Y-F)&&G(W-z)&&(Y=F,W=z);var X,A,N=3*(k-U),I=3*(Y-k)-N,te=F-U-N-I,fe=3*(Z-D),S=3*(W-Z)-fe,de=z-D-fe-S;if(C===0)X=E===0?U:E===1?F:((te*E+I)*E+N)*E+U,A=E===0?D:E===1?z:((de*E+S)*E+fe)*E+D;else{if(E<1e-8?(X=N,A=fe):E>1-1e-8?(X=3*(F-Y),A=3*(z-W)):(X=(3*te*E+2*I)*E+N,A=(3*de*E+2*S)*E+fe),b){X===0&&A===0&&(E<1e-8||E>1-1e-8)&&(X=Y-k,A=W-Z);var se=Math.sqrt(X*X+A*A);se&&(X/=se,A/=se)}if(C===3){var Y=6*te*E+2*I,W=6*de*E+2*S,ie=Math.pow(X*X+A*A,1.5);X=ie!==0?(X*W-A*Y)/ie:0,A=0}}return C===2?new f(A,-X):new f(X,A)}return{statics:{classify:function(x){function E(de,se,ie){var ge=se!==r,Pe=ge&&se>0&&se<1,Ye=ge&&ie>0&&ie<1;return!ge||(Pe||Ye)&&(de!=="loop"||Pe&&Ye)||(de="arch",Pe=Ye=!1),{type:de,roots:Pe||Ye?Pe&&Ye?se0?Math.sqrt(te/3):Math.sqrt(-te),S=2*X;return E(te>0?"serpentine":"loop",(G+fe)/S,(G-fe)/S)},getLength:function(x,E,C,b){if(E===r&&(E=0),C===r&&(C=1),ue.isStraight(x)){var U=x;C<1&&(U=ue.subdivide(U,C)[0],E/=C),E>0&&(U=ue.subdivide(U,E)[1]);var D=U[6]-U[0],k=U[7]-U[1];return Math.sqrt(D*D+k*k)}return c.integrate(b||t(x),E,C,h(E,C))},getTimeAt:function(x,E,C){if(C===r&&(C=E<0?1:0),E===0)return C;var b=Math.abs,U=E>0,D=U?C:0,k=U?1:C,Z=t(x),Y=ue.getLength(x,D,k,Z),W=b(E)-Y;if(b(W)<1e-12)return U?k:D;if(W>1e-12)return null;var F=E/Y,z=0;return c.findRoot(function(G){return z+=c.integrate(Z,C,G,h(C,G)),C=G,z-E},Z,C+F,D,k,32,1e-12)},getPoint:function(x,E){return d(x,E,0,!1)},getTangent:function(x,E){return d(x,E,1,!0)},getWeightedTangent:function(x,E){return d(x,E,1,!1)},getNormal:function(x,E){return d(x,E,2,!0)},getWeightedNormal:function(x,E){return d(x,E,2,!1)},getCurvature:function(x,E){return d(x,E,3,!1).x},getPeaks:function(x){var E=x[0],C=x[1],b=x[2],U=x[3],D=x[4],k=x[5],Z=3*b-E-3*D+x[6],Y=3*E-6*b+3*D,W=-3*E+3*b,F=3*U-C-3*k+x[7],z=3*C-6*U+3*k,G=-3*C+3*U,X=[];return c.solveCubic(9*(Z*Z+F*F),9*(Z*Y+z*F),2*(Y*Y+z*z)+3*(W*Z+G*F),W*Y+z*G,X,1e-8,1-1e-8),X.sort()}}}},new function(){function t(Y,W,F,z,G,X,A){var N=!A&&F.getPrevious()===G,I=!A&&F!==G&&F.getNext()===G;if(z!==null&&z>=(N?1e-8:0)&&z<=(I?1-1e-8:1)&&X!==null&&X>=(I?1e-8:0)&&X<=(N?1-1e-8:1)){var te=new $(F,z,null,A),fe=new $(G,X,null,A);te._intersection=fe,fe._intersection=te,W&&!W(te)||$.insert(Y,te,!0)}}function h(Y,W,F,z,G,X,A,N,I,te,fe,S,de){if(++I>=4096||++N>=40)return I;var se,ie,ge=W[0],Pe=W[1],Ye=W[6],Ge=W[7],Ze=H.getSignedDistance,Je=Ze(ge,Pe,Ye,Ge,W[2],W[3]),tt=Ze(ge,Pe,Ye,Ge,W[4],W[5]),nt=Je*tt>0?.75:4/9,at=nt*Math.min(0,Je,tt),ut=nt*Math.max(0,Je,tt),st=Ze(ge,Pe,Ye,Ge,Y[0],Y[1]),gt=Ze(ge,Pe,Ye,Ge,Y[2],Y[3]),ft=Ze(ge,Pe,Ye,Ge,Y[4],Y[5]),ct=Ze(ge,Pe,Ye,Ge,Y[6],Y[7]),_t=d(st,gt,ft,ct),Et=_t[0],mt=_t[1];if(Je===0&&tt===0&&st===0&>===0&&ft===0&&ct===0||(se=x(Et,mt,at,ut))==null||(ie=x(Et.reverse(),mt.reverse(),at,ut))==null)return I;var vt=te+(fe-te)*se,lt=te+(fe-te)*ie;if(Math.max(de-S,lt-vt)<1e-9){var St=(vt+lt)/2,Rt=(S+de)/2;t(G,X,A?z:F,A?Rt:St,A?F:z,A?St:Rt)}else if(Y=ue.getPart(Y,se,ie),ie-se>.8)if(lt-vt>de-S)St=(vt+lt)/2,I=h(W,(Bt=ue.subdivide(Y,.5))[0],z,F,G,X,!A,N,I,S,de,vt,St),I=h(W,Bt[1],z,F,G,X,!A,N,I,S,de,St,lt);else{var Bt=ue.subdivide(W,.5),Rt=(S+de)/2;I=h(Bt[0],Y,z,F,G,X,!A,N,I,S,Rt,vt,lt),I=h(Bt[1],Y,z,F,G,X,!A,N,I,Rt,de,vt,lt)}else I=de-S>=1e-9?h(W,Y,z,F,G,X,!A,N,I,S,de,vt,lt):h(Y,W,F,z,G,X,A,N,I,vt,lt,S,de);return I}function d(Y,W,F,z){var G,X=[0,Y],A=[1/3,W],N=[2/3,F],I=[1,z],te=W-(2*Y+z)/3,fe=F-(Y+2*z)/3;if(te*fe<0)G=[[X,A,I],[X,N,I]];else{var S=te/fe;G=[S>=2?[X,A,I]:S<=.5?[X,N,I]:[X,A,N,I],[X,I]]}return(te||fe)<0?G.reverse():G}function x(Y,W,F,z){return Y[0][1]z?E(W,!1,z):Y[0][0]}function E(Y,W,F){for(var z=Y[0][0],G=Y[0][1],X=1,A=Y.length;X=F:I<=F)return I===F?N:z+(F-G)*(N-z)/(I-G);z=N,G=I}return null}function C(Y,W,F,z,G){var X=c.isZero;if(X(z)&&X(G)){var A=ue.getTimeOf(Y,new f(W,F));return A===null?[]:[A]}for(var N=Math.atan2(-G,z),I=Math.sin(N),te=Math.cos(N),fe=[],S=[],de=0;de<8;de+=2){var se=Y[de]-W,ie=Y[de+1]-F;fe.push(se*te-ie*I,se*I+ie*te)}return ue.solveCubic(fe,1,0,S,0,1),S}function b(Y,W,F,z,G,X,A){for(var N=W[0],I=W[1],te=C(Y,N,I,W[6]-N,W[7]-I),fe=0,S=te.length;feA(W[0],W[2],W[4],W[6])&&A(Y[0],Y[2],Y[4],Y[6])-1e-12A(W[1],W[3],W[5],W[7])&&A(Y[1],Y[3],Y[5],Y[7])-1e-12>1,Ye=1&ge,Ge=6*Pe,Ze=6*Ye,Je=new f(Y[Ge],Y[Ge+1]),tt=new f(W[Ze],W[Ze+1]);Je.isClose(tt,1e-12)&&t(G,X,F,Pe,z,Ye)}}}return G}function k(Y,W,F,z){var G=ue.classify(Y);if(G.type==="loop"){var X=G.roots;t(F,z,W,X[0],W,X[1])}return F}function Z(Y,W){function F(st){var gt=st[6]-st[0],ft=st[7]-st[1];return gt*gt+ft*ft}var z=Math.abs,G=H.getDistance,X=ue.isStraight(Y),A=ue.isStraight(W),N=X&&A,I=F(Y)>1,tt=ue.getTimeOf(ge[Ge],new f(ge[Ze][Je?6:0],ge[Ze][Je?7:1]));if(tt!=null){var nt=Ge?[Je,tt]:[tt,Je];(!Pe.length||z(nt[0]-Pe[0][0])>1e-8&&z(nt[1]-Pe[0][1])>1e-8)&&Pe.push(nt)}if(Ye>2&&!Pe.length)break}if(Pe.length!==2)Pe=null;else if(!N){var at=ue.getPart(Y,Pe[0][0],Pe[1][0]),ut=ue.getPart(W,Pe[0][1],Pe[1][1]);(z(ut[2]-at[2])>1e-7||z(ut[3]-at[3])>1e-7||z(ut[4]-at[4])>1e-7||z(ut[5]-at[5])>1e-7)&&(Pe=null)}return Pe}return{getIntersections:function(Y){var W=this.getValues(),F=Y&&Y!==this&&Y.getValues();return F?D(W,F,this,Y,[]):k(W,this,[])},statics:{getOverlaps:Z,getIntersections:function(Y,W,F,z,G,X){var A=!W;A&&(W=Y);for(var N,I,te=Y.length,fe=W.length,S=[],de=[],se=0;se=.99999999){var C=t.getNext();C&&(h=0,t=C)}this._setCurve(t),this._time=h,this._point=d||t.getPointAtTime(h),this._overlap=x,this._distance=E,this._intersection=this._next=this._previous=null},_setCurve:function(t){var h=t._path;this._path=h,this._version=h?h._version:0,this._curve=t,this._segment=null,this._segment1=t._segment1,this._segment2=t._segment2},_setSegment:function(t){this._setCurve(t.getCurve()),this._segment=t,this._time=t===this._segment1?0:1,this._point=t._point.clone()},getSegment:function(){var t=this._segment;if(!t){var h=this.getCurve(),d=this.getTime();d===0?t=h._segment1:d===1?t=h._segment2:d!=null&&(t=h.getPartLength(0,d)1?ie[ge-1]:ge>0?ie[0]:.5;Y.push(ue.getLength(se,de?Pe:0,de?1:Pe)/2)}function h(S,de,se){return dede&&Sde||S=1e-8&&x<=1-1e-8,b=E>=1e-8&&E<=1-1e-8;if(C&&b)return!this.isTouching();var U=this.getCurve(),D=x<1e-8?U.getPrevious():U,k=d.getCurve(),Z=E<1e-8?k.getPrevious():k;if(x>1-1e-8&&(U=U.getNext()),E>1-1e-8&&(k=k.getNext()),!(D&&U&&Z&&k))return!1;var Y=[];C||(t(D,!0),t(U,!1)),b||(t(Z,!0),t(k,!1));var W=this.getPoint(),F=Math.min.apply(Math,Y),z=C?U.getTangentAtTime(x):U.getPointAt(F).subtract(W),G=C?z.negate():D.getPointAt(-F).subtract(W),X=b?k.getTangentAtTime(E):k.getPointAt(F).subtract(W),A=b?X.negate():Z.getPointAt(-F).subtract(W),N=G.getAngle(),I=z.getAngle(),te=A.getAngle(),fe=X.getAngle();return!!(C?h(N,te,fe)^h(I,te,fe)&&h(N,fe,te)^h(I,fe,te):h(te,N,I)^h(fe,N,I)&&h(te,I,N)^h(fe,I,N))},hasOverlap:function(){return!!this._overlap}},a.each(ue._evaluateMethods,function(t){var h=t+"At";this[t]=function(){var d=this.getCurve(),x=this.getTime();return x!=null&&d&&d[h](x,!0)}},{preserve:!0}),new function(){function t(h,d,x){function E(F,z){for(var G=F+z;G>=-1&&G<=C;G+=z){var X=h[(G%C+C)%C];if(!d.getPoint().isClose(X.getPoint(),1e-7))break;if(d.equals(X))return X}return null}for(var C=h.length,b=0,U=C-1;b<=U;){var D,k=b+U>>>1,Z=h[k];if(x&&(D=d.equals(Z)?Z:E(k,-1)||E(k,1)))return d._overlap&&(D._overlap=D._intersection._overlap=!0),D;var Y=d.getPath(),W=Z.getPath();(Y!==W?Y._id-W._id:d.getIndex()+d.getTime()-(Z.getIndex()+Z.getTime()))<0?U=k-1:b=k+1}return h.splice(b,0,d),d}return{statics:{insert:t,expand:function(h){for(var d=h.slice(),x=h.length-1;x>=0;x--)t(d,h[x]._intersection,!1);return d}}}}),ee=Q.extend({_class:"PathItem",_selectBounds:!1,_canScaleStroke:!0,beans:!0,initialize:function(){},statics:{create:function(t){var h,d,x;if(a.isPlainObject(t)?(d=t.segments,h=t.pathData):Array.isArray(t)?d=t:typeof t=="string"&&(h=t),d){var E=d[0];x=E&&Array.isArray(E[0])}else h&&(x=(h.match(/m/gi)||[]).length>1||/z\s*\S+/i.test(h));return new(x?_e:ne)(t)}},_asPathItem:function(){return this},isClockwise:function(){return this.getArea()>=0},setClockwise:function(t){this.isClockwise()!=(t=!!t)&&this.reverse()},setPathData:function(t){function h(I,te){var fe=+x[I];return U&&(fe+=D[te]),fe}function d(I){return new f(h(I,"x"),h(I+1,"y"))}var x,E,C,b=t&&t.match(/[mlhvcsqtaz][^mlhvcsqtaz]*/gi),U=!1,D=new f,k=new f;this.clear();for(var Z=0,Y=b&&b.length;Zk&&this[x?"removeSegments":"removeChildren"](k,D);for(Y=0;Y=0&&h;D--){var k=d[D];h=!1;for(var Z=C-1;Z>=0&&!h;Z--)k.compare(x[Z])&&(b[Z]||(b[Z]=!0,U++),h=!0)}h=h&&U===C}return h}}),ne=ee.extend({_class:"Path",_serializeFields:{segments:[],closed:!1},initialize:function(t){this._closed=!1,this._segments=[],this._version=0;var h=Array.isArray(t)?typeof t[0]=="object"?t:arguments:!t||t.size!==r||t.x===r&&t.point===r?null:arguments;h&&h.length>0?this.setSegments(h):(this._curves=r,this._segmentSelection=0,h||typeof t!="string"||(this.setPathData(t),t=null)),this._initialize(!h&&t)},_equals:function(t){return this._closed===t._closed&&a.equals(this._segments,t._segments)},copyContent:function(t){this.setSegments(t._segments),this._closed=t._closed},_changed:function t(h){if(t.base.call(this,h),8&h){if(this._length=this._area=r,16&h)this._version++;else if(this._curves)for(var d=0,x=this._curves.length;d0&&(d(Y[0],!0),X.push("z")),X.join("")},isEmpty:function(){return!this._segments.length},_transformContent:function(t){for(var h=this._segments,d=new Array(6),x=0,E=h.length;x0&&h+E-1===k?h-1:h,Y=Z,W=Math.min(Z+E,k);for(t._curves&&(x.splice.apply(x,[Z,0].concat(t._curves)),Y+=t._curves.length),b=Y;b0?t-1:t},add:function(t){return arguments.length>1&&typeof t!="number"?this._add(oe.readList(arguments)):this._add([oe.read(arguments)])[0]},insert:function(t,h){return arguments.length>2&&typeof h!="number"?this._add(oe.readList(arguments,1),t):this._add([oe.read(arguments,1)],t)[0]},addSegment:function(){return this._add([oe.read(arguments)])[0]},insertSegment:function(t){return this._add([oe.read(arguments,1)],t)[0]},addSegments:function(t){return this._add(oe.readList(t))},insertSegments:function(t,h){return this._add(oe.readList(h),t)},removeSegment:function(t){return this.removeSegments(t,t+1)[0]||null},removeSegments:function(t,h,d){t=t||0,h=a.pick(h,this._segments.length);var x=this._segments,E=this._curves,C=x.length,b=x.splice(t,h-t),U=b.length;if(!U)return b;for(k=0;k0&&h===C+(this._closed?1:0)?t-1:t,k=(E=E.splice(Y,U)).length-1;k>=0;k--)E[k]._path=null;d&&(b._curves=E.slice(1)),this._adjustCurves(Y,Y)}return this._changed(25),b},clear:"#removeSegments",hasHandles:function(){for(var t=this._segments,h=0,d=t.length;h0&&this._segmentSelection===7*t},setFullySelected:function(t){t&&this._selectSegments(!0),this.setSelected(t)},setSelection:function t(h){1&h||this._selectSegments(!1),t.base.call(this,h)},_selectSegments:function(t){var h=this._segments,d=h.length,x=t?7:0;this._segmentSelection=x*d;for(var E=0;E0&&this.setSelected(!0)},divideAt:function(t){var h,d=this.getLocationAt(t);return d&&(h=d.getCurve().divideAt(d.getCurveOffset()))?h._segment1:null},splitAt:function(t){var h=this.getLocationAt(t),d=h&&h.index,x=h&&h.time;x>1-1e-8&&(d++,x=0);var E=this.getCurves();if(d>=0&&d=1e-8&&E[d++].divideAtTime(x);var C,b=this.removeSegments(d,this._segments.length,!0);return this._closed?(this.setClosed(!1),C=this):((C=new ne(Q.NO_INSERT)).insertAbove(this),C.copyAttributes(this)),C._add(b,0),this.addSegment(b[0]),C}return null},split:function(t,h){var d,x=h===r?t:(d=this.getCurves()[t])&&d.getLocationAtTime(h);return x!=null?this.splitAt(x):null},join:function(t,h){var d=h||0;if(t&&t!==this){var x=t._segments,E=this.getLastSegment(),C=t.getLastSegment();if(!C)return this;E&&E._point.isClose(C._point,d)&&t.reverse();var b=t.getFirstSegment();if(E&&E._point.isClose(b._point,d))E.setHandleOut(b._handleOut),this._add(x.slice(1));else{var U=this.getFirstSegment();U&&U._point.isClose(b._point,d)&&t.reverse(),C=t.getLastSegment(),U&&U._point.isClose(C._point,d)?(U.setHandleIn(C._handleIn),this._add(x.slice(0,x.length-1),0)):this._add(x.slice())}t._closed&&this._add([x[0]]),t.remove()}var D=this.getFirstSegment(),k=this.getLastSegment();return D!==k&&D._point.isClose(k._point,d)&&(D.setHandleIn(k._handleIn),k.remove(),this.setClosed(!0)),this},reduce:function(t){for(var h=this.getCurves(),d=t&&t.simplify,x=d?1e-7:0,E=h.length-1;E>=0;E--){var C=h[E];!C.hasHandles()&&(!C.hasLength(x)||d&&C.isCollinear(C.getNext()))&&C.remove()}return this},reverse:function(){this._segments.reverse();for(var t=0,h=this._segments.length;t0&&x.push(new oe(h[d-1].curve.slice(6))),this.setSegments(x)},simplify:function(t){var h=new Me(this).fit(t||2.5);return h&&this.setSegments(h),!!h},smooth:function(t){function h(mt,vt){var lt=mt&&mt.index;if(lt!=null){var St=mt.path;if(St&&St!==d)throw new Error(mt._class+" "+lt+" of "+St+" is not part of "+d);vt&&mt instanceof ue&<++}else lt=typeof mt=="number"?mt:vt;return Math.min(lt<0&&U?lt%b:lt<0?lt+b:lt,b-1)}var d=this,x=t||{},E=x.type||"asymmetric",C=this._segments,b=C.length,U=this._closed,D=U&&x.from===r&&x.to===r,k=h(x.from,0),Z=h(x.to,b-1);if(k>Z)if(U)k-=b;else{var Y=k;k=Z,Z=Y}if(/^(?:asymmetric|continuous)$/.test(E)){var W=E==="asymmetric",F=Math.min,z=Z-k+1,G=z-1,X=D?F(z,4):1,A=X,N=X,I=[];if(U||(A=F(1,k),N=F(1,b-Z-1)),(G+=A+N)<=1)return;for(var te=0,fe=k-A;te<=G;te++,fe++)I[te]=C[(fe<0?fe+b:fe)%b]._point;for(var S=I[0]._x+2*I[1]._x,de=I[0]._y+2*I[1]._y,se=2,ie=G-1,ge=[S],Pe=[de],Ye=[se],Ge=[],Ze=[],te=1;te=0;te--)Ge[te]=(ge[te]-Ge[te+1])/Ye[te],Ze[te]=(Pe[te]-Ze[te+1])/Ye[te];Ge[G]=(3*I[G]._x-Ge[ie])/2,Ze[G]=(3*I[G]._y-Ze[ie])/2;for(var te=A,gt=G-N,fe=k;te<=gt;te++,fe++){var ft=C[fe<0?fe+b:fe],ct=ft._point,_t=Ge[te]-ct._x,Et=Ze[te]-ct._y;(D||teA)&&ft.setHandleIn(-_t,-Et)}}else for(te=k;te<=Z;te++)C[te<0?te+b:te].smooth(x,!D&&te===k,!D&&te===Z)},toShape:function(t){function h(Y,W){var F=D[Y],z=F.getNext(),G=D[W],X=G.getNext();return F._handleOut.isZero()&&z._handleIn.isZero()&&G._handleOut.isZero()&&X._handleIn.isZero()&&z._point.subtract(F._point).isCollinear(X._point.subtract(G._point))}function d(Y){var W=D[Y],F=W.getNext(),z=W._handleOut,G=F._handleIn;if(z.isOrthogonal(G)){var X=W._point,A=F._point,N=new H(X,z,!0).intersect(new H(A,G,!0),!0);return N&&c.isZero(z.getLength()/N.subtract(X).getLength()-.5522847498307936)&&c.isZero(G.getLength()/N.subtract(A).getLength()-.5522847498307936)}return!1}function x(Y,W){return D[Y]._point.getDistance(D[W]._point)}if(!this._closed)return null;var E,C,b,U,D=this._segments;if(!this.hasHandles()&&D.length===4&&h(0,2)&&h(1,3)&&function(Y){var W=D[Y],F=W.getPrevious(),z=W.getNext();return F._handleOut.isZero()&&W._handleIn.isZero()&&W._handleOut.isZero()&&z._handleIn.isZero()&&W._point.subtract(F._point).isOrthogonal(z._point.subtract(W._point))}(1)?(E=K.Rectangle,C=new y(x(0,3),x(0,1)),U=D[1]._point.add(D[2]._point).divide(2)):D.length===8&&d(0)&&d(2)&&d(4)&&d(6)&&h(1,5)&&h(3,7)?(E=K.Rectangle,b=(C=new y(x(1,6),x(0,3))).subtract(new y(x(0,7),x(1,2))).divide(2),U=D[3]._point.add(D[4]._point).divide(2)):D.length===4&&d(0)&&d(1)&&d(2)&&d(3)&&(c.isZero(x(0,2)-x(1,3))?(E=K.Circle,b=x(0,2)/2):(E=K.Ellipse,b=new y(x(2,0)/2,x(3,1)/2)),U=D[1]._point),E){var k=this.getPosition(!0),Z=new E({center:k,size:C,radius:b,insert:!1});return Z.copyAttributes(this,!0),Z._matrix.prepend(this._matrix),Z.rotate(U.subtract(k).getAngle()+90),(t===r||t)&&Z.insertAbove(this),Z}return null},toPath:"#clone",compare:function t(h){if(!h||h instanceof _e)return t.base.call(this,h);var d=this.getCurves(),x=h.getCurves(),E=d.length,C=x.length;if(!E||!C)return E==C;for(var b,U,D=d[0].getValues(),k=[],Z=0,Y=0,W=0;W0?C-1:W,U=X[0][1];break}for(var F,z=Math.abs,G=k[b];D&&G;){var X=ue.getOverlaps(D,G);if(X&&z(X[0][0]-Y)<1e-8){(Y=X[1][0])===1&&(D=++Z=C&&(b=0),G=k[b]||x[b].getValues(),U=0),!D)return F[0]===b&&F[1]===U;continue}}break}return!1},_hitTestSelf:function(t,h,d,x){function E(Ge,Ze){return t.subtract(Ge).divide(Ze).length<=1}function C(Ge,Ze,Je){if(!h.selected||Ze.isSelected()){var tt=Ge._point;if(Ze!==tt&&(Ze=Ze.add(tt)),E(Ze,fe))return new re(Je,G,{segment:Ge,point:Ze})}}function b(Ge,Ze){return(Ze||h.segments)&&C(Ge,Ge._point,"segment")||!Ze&&h.handles&&(C(Ge,Ge._handleIn,"handle-in")||C(Ge,Ge._handleOut,"handle-out"))}function U(Ge){W.add(Ge)}function D(Ge){var Ze=I||Ge._index>0&&Ge._index0||se?0:null;if(ie!==null&&(ie>0?(k=X.getStrokeJoin(),Z=X.getStrokeCap(),Y=X.getMiterLimit(),fe=fe.add(ne._getStrokePadding(ie,x))):k=Z="round"),!h.ends||h.segments||I){if(h.segments||h.handles){for(Pe=0;Pe1?D(F.getSegment())||(F=null):E(F.getPoint(),fe)||(F=null)}if(!F&&k==="miter"&&N>1)for(var Pe=0;Pet)return b.getLocationAt(t-C)}if(h.length>0&&t<=this.getLength())return new $(h[h.length-1],1)}else if(t&&t.getPath&&t.getPath()===this)return t;return null}}),new function(){function t(d,x,E,C){function b(X){var A=Z[X],N=Z[X+1];U==A&&D==N||(d.beginPath(),d.moveTo(U,D),d.lineTo(A,N),d.stroke(),d.beginPath(),d.arc(A,N,k,0,2*Math.PI,!0),d.fill())}for(var U,D,k=C/2,Z=new Array(6),Y=0,W=x.length;Y0&&C(z[0])}return{_draw:function(d,x,E,C){function b(I){return W[(I%F+F)%F]}var U=x.dontStart,D=x.dontFinish||x.clip,k=this.getStyle(),Z=k.hasFill(),Y=k.hasStroke(),W=k.getDashArray(),F=!paper.support.nativeDash&&Y&&W&&W.length;if(U||d.beginPath(),(Z||Y&&!F||D)&&(h(d,this,C),this._closed&&d.closePath()),!D&&(Z||Y)&&(this._setStyles(d,x,E),Z&&(d.fill(k.getFillRule()),d.shadowColor="rgba(0,0,0,0)"),Y)){if(F){U||d.beginPath();var z,G=new ae(this,.25,32,!1,C),X=G.length,A=-k.getDashOffset(),N=0;for(A%=X;A>0;)A-=b(N--)+b(N--);for(;A0||z>0)&&G.drawPart(d,Math.max(A,0),Math.max(z,0)),A=z+b(N++)}d.stroke()}},_drawSelected:function(d,x){d.beginPath(),h(d,this,x),d.stroke(),t(d,this._segments,x,paper.settings.handleSize)}}},new function(){function t(h){var d=h._segments;if(!d.length)throw new Error("Use a moveTo() command first");return d[d.length-1]}return{moveTo:function(){var h=this._segments;h.length===1&&this.removeSegment(0),h.length||this._add([new oe(f.read(arguments))])},moveBy:function(){throw new Error("moveBy() is unsupported on Path items.")},lineTo:function(){this._add([new oe(f.read(arguments))])},cubicCurveTo:function(){var h=f.read(arguments),d=f.read(arguments),x=f.read(arguments),E=t(this);E.setHandleOut(h.subtract(E._point)),this._add([new oe(x,d.subtract(x))])},quadraticCurveTo:function(){var h=f.read(arguments),d=f.read(arguments),x=t(this)._point;this.cubicCurveTo(h.add(x.subtract(h).multiply(1/3)),h.add(d.subtract(h).multiply(1/3)),d)},curveTo:function(){var h=f.read(arguments),d=f.read(arguments),x=a.pick(a.read(arguments),.5),E=1-x,C=t(this)._point,b=h.subtract(C.multiply(E*E)).subtract(d.multiply(x*x)).divide(2*x*E);if(b.isNaN())throw new Error("Cannot put a curve through points with parameter = "+x);this.quadraticCurveTo(b,d)},arcTo:function(){var h,d,x,E,C=Math.abs,b=Math.sqrt,U=t(this),D=U._point,k=f.read(arguments),Z=a.peek(arguments);if(typeof(G=a.pick(Z,!0))=="boolean")var Y=(A=D.add(k).divide(2)).add(A.subtract(D).rotate(G?-90:90));else if(a.remain(arguments)<=2)Y=k,k=f.read(arguments);else{var W=y.read(arguments),F=c.isZero;if(F(W.width)||F(W.height))return this.lineTo(k);var z=a.read(arguments),G=!!a.read(arguments),X=!!a.read(arguments),A=D.add(k).divide(2),N=(ct=D.subtract(A).rotate(-z)).x,I=ct.y,te=C(W.width),fe=C(W.height),S=te*te,de=fe*fe,se=N*N,ie=I*I,ge=b(se/S+ie/de);if(ge>1&&(S=(te*=ge)*te,de=(fe*=ge)*fe),ge=(S*de-S*ie-de*se)/(S*ie+de*se),C(ge)<1e-12&&(ge=0),ge<0)throw new Error("Cannot create an arc with the given arguments");h=new f(te*I/fe,-fe*N/te).multiply((X===G?-1:1)*b(ge)).rotate(z).add(A),d=(x=(E=new B().translate(h).rotate(z).scale(te,fe))._inverseTransform(D)).getDirectedAngle(E._inverseTransform(k)),!G&&d>0?d-=360:G&&d<0&&(d+=360)}if(Y){var Pe=new H(D.add(Y).divide(2),Y.subtract(D).rotate(90),!0),Ye=new H(Y.add(k).divide(2),k.subtract(Y).rotate(90),!0),Ge=new H(D,k),Ze=Ge.getSide(Y);if(!(h=Pe.intersect(Ye,!0))){if(!Ze)return this.lineTo(k);throw new Error("Cannot create an arc with the given arguments")}d=(x=D.subtract(h)).getDirectedAngle(k.subtract(h));var Je=Ge.getSide(h);Je===0?d=Ze*C(d):Ze===Je&&(d+=d<0?360:-360)}for(var tt=C(d),nt=tt>=360?4:Math.ceil((tt-1e-7)/90),at=d/nt,ut=at*Math.PI/360,st=4/3*Math.sin(ut)/(1+Math.cos(ut)),gt=[],ft=0;ft<=nt;ft++){var ct=k,_t=null;if(ft0&&(D(t[0],A),D(t[t.length-1],A)),z},_getStrokePadding:function(t,h){if(!h)return[t,t];var d=new f(t,0).transform(h),x=new f(0,t).transform(h),E=d.getAngleInRadians(),C=d.getLength(),b=x.getLength(),U=Math.sin(E),D=Math.cos(E),k=Math.tan(E),Z=Math.atan2(b*k,C),Y=Math.atan2(b,k*C);return[Math.abs(C*Math.cos(Z)*D+b*Math.sin(Z)*U),Math.abs(b*Math.sin(Y)*D+C*Math.cos(Y)*U)]},_addBevelJoin:function(t,h,d,x,E,C,b,U){var D=t.getCurve(),k=D.getPrevious(),Z=D.getPoint1().transform(E),Y=k.getNormalAtTime(1).multiply(d).transform(C),W=D.getNormalAtTime(0).multiply(d).transform(C);if(Y.getDirectedAngle(W)<0&&(Y=Y.negate(),W=W.negate()),U&&b(Z),b(Z.add(Y)),h==="miter"){var F=new H(Z.add(Y),new f(-Y.y,Y.x),!0).intersect(new H(Z.add(W),new f(-W.y,W.x),!0),!0);F&&Z.getDistance(F)<=x*d&&b(F)}b(Z.add(W))},_addSquareCap:function(t,h,d,x,E,C,b){var U=t._point.transform(x),D=t.getLocation(),k=D.getNormal().multiply(D.getTime()===0?d:-d).transform(E);h==="square"&&(b&&(C(U.subtract(k)),C(U.add(k))),U=U.add(k.rotate(-90))),C(U.add(k)),C(U.subtract(k))},getHandleBounds:function(t,h,d,x,E){var C,b,U=d.getStyle();if(E.stroke&&U.hasStroke()){var D=d._getStrokeMatrix(x,E),k=U.getStrokeWidth()/2,Z=k;U.getStrokeJoin()==="miter"&&(Z=k*U.getMiterLimit()),U.getStrokeCap()==="square"&&(Z=Math.max(Z,k*Math.SQRT2)),C=ne._getStrokePadding(k,D),b=ne._getStrokePadding(Z,D)}for(var Y=new Array(6),W=1/0,F=-W,z=W,G=F,X=0,A=t.length;XF&&(F=ie),geG&&(G=Pe)}}return new M(W,z,F-W,G-z)}}});ne.inject({statics:new function(){function t(E,C,b){var U=a.getNamed(b),D=new ne(U&&U.insert==0&&Q.NO_INSERT);return D._add(E),D._closed=C,D.set(U,{insert:!0})}function h(E,C,b){for(var U=new Array(4),D=0;D<4;D++){var k=x[D];U[D]=new oe(k._point.multiply(C).add(E),k._handleIn.multiply(C),k._handleOut.multiply(C))}return t(U,!0,b)}var d=.5522847498307936,x=[new oe([-1,0],[0,d],[0,-d]),new oe([0,-1],[-d,0],[d,0]),new oe([1,0],[0,-d],[0,d]),new oe([0,1],[d,0],[-d,0])];return{Line:function(){return t([new oe(f.readNamed(arguments,"from")),new oe(f.readNamed(arguments,"to"))],!1,arguments)},Circle:function(){var E=f.readNamed(arguments,"center"),C=a.readNamed(arguments,"radius");return h(E,new y(C),arguments)},Rectangle:function(){var E,C=M.readNamed(arguments,"rectangle"),b=y.readNamed(arguments,"radius",0,{readNull:!0}),U=C.getBottomLeft(!0),D=C.getTopLeft(!0),k=C.getTopRight(!0),Z=C.getBottomRight(!0);if(!b||b.isZero())E=[new oe(U),new oe(D),new oe(k),new oe(Z)];else{var Y=(b=y.min(b,C.getSize(!0).divide(2))).width,W=b.height,F=Y*d,z=W*d;E=[new oe(U.add(Y,0),null,[-F,0]),new oe(U.subtract(0,W),[0,z]),new oe(D.add(0,W),null,[0,-z]),new oe(D.add(Y,0),[-F,0],null),new oe(k.subtract(Y,0),null,[F,0]),new oe(k.add(0,W),[0,-z],null),new oe(Z.subtract(0,W),null,[0,z]),new oe(Z.subtract(Y,0),[F,0])]}return t(E,!0,arguments)},RoundRectangle:"#Rectangle",Ellipse:function(){var E=K._readEllipse(arguments);return h(E.center,E.radius,arguments)},Oval:"#Ellipse",Arc:function(){var E=f.readNamed(arguments,"from"),C=f.readNamed(arguments,"through"),b=f.readNamed(arguments,"to"),U=a.getNamed(arguments),D=new ne(U&&U.insert==0&&Q.NO_INSERT);return D.moveTo(E),D.arcTo(C,b),D.set(U)},RegularPolygon:function(){for(var E=f.readNamed(arguments,"center"),C=a.readNamed(arguments,"sides"),b=a.readNamed(arguments,"radius"),U=360/C,D=C%3==0,k=new f(0,D?-b:b),Z=D?-1:.5,Y=new Array(C),W=0;W=0;C--){var b=x[C];x!==d||b instanceof ne||(x=a.slice(x)),Array.isArray(b)?x[C]=new ne({segments:b,insert:!1}):b instanceof _e&&(x.splice.apply(x,[C,1].concat(b.removeChildren())),b.remove())}return t.base.call(this,h,x)},reduce:function t(h){for(var d=this._children,x=d.length-1;x>=0;x--)(E=d[x].reduce(h)).isEmpty()&&E.remove();if(!d.length){var E=new ne(Q.NO_INSERT);return E.copyAttributes(this),E.insertAbove(this),this.remove(),E}return t.base.call(this)},isClosed:function(){for(var t=this._children,h=0,d=t.length;h=0;ge--){var Pe=fe[ge].split();Pe&&(N(Pe)&&Pe.getFirstSegment().setHandleIn(0,0),I.getLastSegment().setHandleOut(0,0))}return N(I),h(ie,!1,G,X)}function E(G,X){for(var A=G;A;){if(A===X)return;A=A._previous}for(;G._next&&G._next!==X;)G=G._next;if(!G._next){for(;X._previous;)X=X._previous;G._next=X,X._previous=G}}function C(G){for(var X=G.length-1;X>=0;X--)G[X].clearHandles()}function b(G,X,A){var N=G&&G.length;if(N){var I=a.each(G,function(Je,tt){this[Je._id]={container:null,winding:Je.isClockwise()?1:-1,index:tt}},{}),te=G.slice().sort(function(Je,tt){return F(tt.getArea())-F(Je.getArea())}),fe=te[0];A==null&&(A=fe.isClockwise());for(var S=0;S=0;Pe--){var Ye=te[Pe];if(Ye.contains(ie)){var Ge=I[Ye._id];ge=Ge.winding,se.winding+=ge,se.container=Ge.exclude?Ge.container:Ye;break}}if(X(se.winding)===X(ge))se.exclude=!0,G[se.index]=null;else{var Ze=se.container;de.setClockwise(Ze?!Ze.isClockwise():A)}}}return G}function U(G,X,A){function N(ct){return ct._path._id+"."+ct._segment1._index}for(var I,te,fe,S=X&&[],de=!1,se=A||[],ie=A&&{},ge=(A&&A.length)-1;ge>=0;ge--)(tt=A[ge])._path&&(ie[N(tt)]=!0);for(ge=G.length-1;ge>=0;ge--){var Pe,Ye=G[ge],Ge=Ye._time,Ze=Ge,Je=X&&!X(Ye),tt=Ye._curve;if(tt&&(tt!==te?(de=!tt.hasHandles()||ie&&ie[N(tt)],I=[],fe=null,te=tt):fe>=1e-8&&(Ge/=fe)),Je)I&&I.push(Ye);else{if(X&&S.unshift(Ye),fe=Ze,Ge<1e-8)Pe=tt._segment1;else if(Ge>1-1e-8)Pe=tt._segment2;else{var nt=tt.divideAtTime(Ge,!0);de&&se.push(tt,nt),Pe=nt._segment1;for(var at=I.length-1;at>=0;at--){var ut=I[at];ut._time=(ut._time-Ge)/(1-Ge)}}Ye._setSegment(Pe);var st=Pe._intersection,gt=Ye._intersection;if(st){E(st,gt);for(var ft=st;ft;)E(ft._intersection,st),ft=ft._next}else Pe._intersection=gt}}return A||C(se),S||G}function D(G,X,A,N,I){function te(yt){var Ut=yt[ie+0],Dt=yt[ie+6];if(!(YeW(Ut,Dt))){var Ct=yt[se+0],Wt=yt[se+2],Kt=yt[se+4],$t=yt[se+6];if(Ut!==Dt){var Ft=Ye===Ut?0:Ye===Dt||Ze>W(Ct,Wt,Kt,$t)||Je0?ct[0]:1,Gt=Ft===0?Ct:Ft===1?$t:ue.getPoint(yt,Ft)[A?"y":"x"],Nt=Ut>Dt?1:-1,hr=S[ie]>S[ie+6]?1:-1,rr=S[se+6];return Ye!==Ut?(GtJe?ut+=Nt:st=!0,Gt>Pe-Ge&&GtJe&&(ut+=Nt):Ct!=rr&&(rrJe?(ut+=Nt,st=!0):rr>Ze&&GtZe&&GtZe||$tZe)&&(st=!0)}}function fe(yt){var Ut=yt[ie+0],Dt=yt[ie+2],Ct=yt[ie+4],Wt=yt[ie+6];if(Ye<=W(Ut,Dt,Ct,Wt)&&Ye>=Y(Ut,Dt,Ct,Wt)){for(var Kt,$t=yt[se+0],Ft=yt[se+2],Gt=yt[se+4],Nt=yt[se+6],hr=Ze>W($t,Ft,Gt,Nt)||Jese.quality&&(se=ft);break}ge-=Ze}for(Pe=te.length-1;Pe>=0;Pe--)te[Pe].segment._winding=se}function Z(G,X){function A(mt){var vt;return!(!mt||mt._visited||X&&(!X[(vt=mt._winding||{}).winding]||X.unite&&vt.winding===2&&vt.windingL&&vt.windingR))}function N(mt){if(mt){for(var vt=0,lt=te.length;vt=0;de--){var se=S[de],ie=se._path,ge=se._segment,Pe=ge.getPrevious(),Ye=ge.getNext();G(Pe,ie)&&G(Ye,ie)&&(ge.remove(),Pe._handleOut._set(0,0),Ye._handleIn._set(0,0),Pe===ge||Pe.getCurve().hasLength()||(Ye._handleIn.set(Pe._handleIn),Pe.remove()))}I&&(U(te,N&&function(Je){var tt=Je.getCurve(),nt=Je.getSegment(),at=Je._intersection,ut=at._curve,st=at._segment;if(tt&&ut&&tt._path&&ut._path)return!0;nt&&(nt._intersection=null),st&&(st._intersection=null)},fe),fe&&C(fe),A=Z(a.each(A,function(Je){this.push.apply(this,Je._segments)},[])));var Ge,Ze=A.length;return Ze>1&&X?(A!==X&&this.setChildren(A),Ge=this):Ze!==1||X||(A[0]!==this&&this.setSegments(A[0].removeSegments()),Ge=this),Ge||((Ge=new _e(Q.NO_INSERT)).addChildren(A),(Ge=Ge.reduce()).copyAttributes(this),this.replaceWith(Ge)),Ge},reorient:function(G,X){var A=this._children;return A&&A.length?this.setChildren(b(this.removeChildren(),function(N){return!!(G?N:1&N)},X)):X!==r&&this.setClockwise(X),this},getInteriorPoint:function(){var G=this.getBounds().getCenter(!0);if(!this.contains(G)){for(var X=this.getCurves(),A=G.y,N=[],I=[],te=0,fe=X.length;te=Y(de,se,ie,ge)&&A<=W(de,se,ie,ge))for(var Pe=ue.getMonoCurves(S),Ye=0,Ge=Pe.length;Ye=Je&&A<=tt||A>=tt&&A<=Je)){var nt=A===Je?Ze[0]:A===tt?Ze[6]:ue.solveCubic(Ze,1,A,I,0,1)===1?ue.getPoint(Ze,I[0]).x:(Ze[0]+Ze[6])/2;N.push(nt)}}}N.length>1&&(N.sort(function(at,ut){return at-ut}),G.x=(N[0]+N[1])/2)}return G}}});var ae=a.extend({_class:"PathFlattener",initialize:function(t,h,d,x,E){function C(X,A){var N=ue.getValues(X,A,E);D.push(N),b(N,X._index,0,1)}function b(X,A,N,I){if(!(I-N>Y)||x&&ue.isStraight(X)||ue.isFlatEnough(X,h||.25)){var te=X[6]-X[0],fe=X[7]-X[1],S=Math.sqrt(te*te+fe*fe);S>0&&(Z+=S,k.push({offset:Z,curve:X,index:A,time:I}))}else{var de=ue.subdivide(X,.5),se=(N+I)/2;b(de[0],A,N,se),b(de[1],A,se,I)}}for(var U,D=[],k=[],Z=0,Y=1/(d||32),W=t._segments,F=W[0],z=1,G=W.length;z=t){this.index=h;var b=d[h-1],U=b&&b.index===C.index?b.time:0,D=b?b.offset:0;return{index:C.index,time:U+(C.time-U)*(t-D)/(C.offset-D)}}}return{index:d[x-1].index,time:1}},drawPart:function(t,h,d){for(var x=this._get(h),E=this._get(d),C=x.index,b=E.index;C<=b;C++){var U=ue.getPart(this.curves[C],C===x.index?x.time:0,C===E.index?E.time:1);C===x.index&&t.moveTo(U[0],U[1]),t.bezierCurveTo.apply(t,U.slice(2))}}},a.each(ue._evaluateMethods,function(t){this[t+"At"]=function(h){var d=this._get(h);return ue[t](this.curves[d.index],d.time)}},{})),Me=a.extend({initialize:function(t){for(var h,d=this.points=[],x=t._segments,E=t._closed,C=0,b=x.length;C0&&(x=[new oe(h[0])],d>1&&(this.fitCubic(x,t,0,d-1,h[1].subtract(h[0]),h[d-2].subtract(h[d-1])),this.closed&&(x.shift(),x.pop()))),x},fitCubic:function(t,h,d,x,E,C){var b=this.points;if(x-d!=1){for(var U,D=this.chordLengthParameterize(d,x),k=Math.max(h,h*h),Z=!0,Y=0;Y<=4;Y++){var W=this.generateBezier(d,x,D,E,C),F=this.findMaxError(d,x,W,D);if(F.error=k)break;Z=this.reparameterize(d,x,D,W),k=F.error}var z=b[U-1].subtract(b[U+1]);this.fitCubic(t,h,d,U,E,z),this.fitCubic(t,h,U,x,z.negate(),C)}else{var G=b[d],X=b[x],A=G.getDistance(X)/3;this.addCurve(t,[G,G.add(E.normalize(A)),X.add(C.normalize(A)),X])}},addCurve:function(t,h){t[t.length-1].setHandleOut(h[1].subtract(h[0])),t.push(new oe(h[3],h[2].subtract(h[3])))},generateBezier:function(t,h,d,x,E){for(var C=Math.abs,b=this.points,U=b[t],D=b[h],k=[[0,0],[0,0]],Z=[0,0],Y=0,W=h-t+1;Y1e-12){var ge=k[0][0]*Z[1]-k[1][0]*Z[0];de=(Z[0]*k[1][1]-Z[1]*k[0][1])/ie,se=ge/ie}else{var Pe=k[0][0]+k[0][1],Ye=k[1][0]+k[1][1];de=se=C(Pe)>1e-12?Z[0]/Pe:C(Ye)>1e-12?Z[1]/Ye:0}var Ge,Ze,Je=D.getDistance(U),tt=1e-12*Je;if(deJe*Je&&(de=se=Je/3,Ge=Ze=null)}return[U,U.add(Ge||x.normalize(de)),D.add(Ze||E.normalize(se)),D]},reparameterize:function(t,h,d,x){for(E=t;E<=h;E++)d[E-t]=this.findRoot(x,this.points[E],d[E-t]);for(var E=1,C=d.length;E=C&&(C=D,E=b)}return{error:C,index:E}}}),Ne=Q.extend({_class:"TextItem",_applyMatrix:!1,_canApplyMatrix:!1,_serializeFields:{content:null},_boundsOptions:{stroke:!1,handle:!1},initialize:function(t){this._content="",this._lines=[];var h=t&&a.isPlainObject(t)&&t.x===r&&t.y===r;this._initialize(h&&t,!h&&f.read(arguments))},_equals:function(t){return this._content===t._content},copyContent:function(t){this.setContent(t._content)},getContent:function(){return this._content},setContent:function(t){this._content=""+t,this._lines=this._content.split(/\r\n|\n|\r/gm),this._changed(265)},isEmpty:function(){return!this._content},getCharacterStyle:"#getStyle",setCharacterStyle:"#setStyle",getParagraphStyle:"#getStyle",setParagraphStyle:"#setStyle"}),Ae=Ne.extend({_class:"PointText",initialize:function(){Ne.apply(this,arguments)},getPoint:function(){var t=this._matrix.getTranslation();return new g(t.x,t.y,this,"setPoint")},setPoint:function(){var t=f.read(arguments);this.translate(t.subtract(this._matrix.getTranslation()))},_draw:function(t,h,d){if(this._content){this._setStyles(t,h,d);var x=this._lines,E=this._style,C=E.hasFill(),b=E.hasStroke(),U=E.getLeading(),D=t.shadowColor;t.font=E.getFontStyle(),t.textAlign=E.getJustification();for(var k=0,Z=x.length;k1&&(G-=1),F[z]=6*G<1?W+6*(Y-W)*G:2*G<1?Y:3*G<2?W+(Y-W)*(2/3-G)*6:W}return F},"rgb-gray":function(U,D,k){return[.2989*U+.587*D+.114*k]},"gray-rgb":function(U){return[U,U,U]},"gray-hsb":function(U){return[0,0,U]},"gray-hsl":function(U){return[0,0,U]},"gradient-rgb":function(){return[]},"rgb-gradient":function(){return[]}};return a.each(d,function(U,D){x[D]=[],a.each(U,function(k,Z){var Y=a.capitalize(k),W=/^(hue|saturation)$/.test(k),F=x[D][Z]=k==="gradient"?function(z){var G=this._components[0];return z=De.read(Array.isArray(z)?z:arguments,0,{readNull:!0}),G!==z&&(G&&G._removeOwner(this),z&&z._addOwner(this)),z}:D==="gradient"?function(){return f.read(arguments,0,{readNull:k==="highlight",clone:!0})}:function(z){return z==null||isNaN(z)?0:z};this["get"+Y]=function(){return this._type===D||W&&/^hs[bl]$/.test(this._type)?this._components[Z]:this._convert(D)[Z]},this["set"+Y]=function(z){this._type===D||W&&/^hs[bl]$/.test(this._type)||(this._components=this._convert(D),this._properties=d[D],this._type=D),this._components[Z]=F.call(this,z),this._changed()}},this)},{_class:"Color",_readIndex:!0,initialize:function U(D){var k,Z,Y,W,F=arguments,z=this.__read,G=0;Array.isArray(D)&&(D=(F=D)[0]);var X=D!=null&&typeof D;if(X==="string"&&D in d&&(k=D,D=F[1],Array.isArray(D)?(Z=D,Y=F[2]):(z&&(G=1),F=a.slice(F,1),X=typeof D)),!Z){if(W=X==="number"?F:X==="object"&&D.length!=null?D:null){k||(k=W.length>=3?"rgb":"gray");var A=d[k].length;Y=W[A],z&&(G+=W===arguments?A+(Y!=null?1:0):1),W.length>A&&(W=a.slice(W,0,A))}else if(X==="string")k="rgb",(Z=t(D)).length===4&&(Y=Z[3],Z.length--);else if(X==="object")if(D.constructor===U){if(k=D._type,Z=D._components.slice(),Y=D._alpha,k==="gradient")for(var N=1,I=Z.length;N1?1:Y))}var k=this._convert("rgb"),Z=U||this._alpha==null?1:this._alpha;return k=[D(k[0]),D(k[1]),D(k[2])],Z<1&&k.push(Z<0?0:Z),U?"#"+((1<<24)+(k[0]<<16)+(k[1]<<8)+k[2]).toString(16).slice(1):(k.length==4?"rgba(":"rgb(")+k.join(",")+")"},toCanvasStyle:function(U,D){if(this._canvasStyle)return this._canvasStyle;if(this._type!=="gradient")return this._canvasStyle=this.toCSS();var k,Z=this._components,Y=Z[0],W=Y._stops,F=Z[1],z=Z[2],G=Z[3],X=D&&D.inverted();if(X&&(F=X._transformPoint(F),z=X._transformPoint(z),G&&(G=X._transformPoint(G))),Y._radial){var A=z.getDistance(F);if(G){var N=G.subtract(F);N.getLength()>A&&(G=F.add(N.normalize(A-.1)))}var I=G||F;k=U.createRadialGradient(I.x,I.y,0,F.x,F.y,A)}else k=U.createLinearGradient(F.x,F.y,z.x,z.y);for(var te=0,fe=W.length;te0&&!(G instanceof _e))for(var A=0,N=X.length;A0},hasStroke:function(){var t=this.getStrokeColor();return!!t&&t.alpha>0&&this.getStrokeWidth()>0},hasShadow:function(){var t=this.getShadowColor();return!!t&&t.alpha>0&&(this.getShadowBlur()>0||!this.getShadowOffset().isZero())},getView:function(){return this._project._view},getFontStyle:function(){var t=this.getFontSize();return this.getFontWeight()+" "+t+(/[a-z]/i.test(t+"")?" ":"px ")+this.getFontFamily()},getFont:"#getFontFamily",setFont:"#setFontFamily",getLeading:function t(){var h=t.base.call(this),d=this.getFontSize();return/pt|em|%|px/.test(d)&&(d=this.getView().getPixelSize(d)),h!=null?h:1.2*d}}),he=new function(){function t(h,d,x,E){for(var C=["","webkit","moz","Moz","ms","o"],b=d[0].toUpperCase()+d.substring(1),U=0;U<6;U++){var D=C[U],k=D?D+b:d;if(k in h){if(!x)return h[k];h[k]=E;break}}}return{getStyles:function(h){var d=h&&h.nodeType!==9?h.ownerDocument:h,x=d&&d.defaultView;return x&&x.getComputedStyle(h,"")},getBounds:function(h,d){var x,E=h.ownerDocument,C=E.body,b=E.documentElement;try{x=h.getBoundingClientRect()}catch(Z){x={left:0,top:0,width:0,height:0}}var U=x.left-(b.clientLeft||C.clientLeft||0),D=x.top-(b.clientTop||C.clientTop||0);if(!d){var k=E.defaultView;U+=k.pageXOffset||b.scrollLeft||C.scrollLeft,D+=k.pageYOffset||b.scrollTop||C.scrollTop}return new M(U,D,x.width,x.height)},getViewportBounds:function(h){var d=h.ownerDocument,x=d.defaultView,E=d.documentElement;return new M(0,0,x.innerWidth||E.clientWidth,x.innerHeight||E.clientHeight)},getOffset:function(h,d){return he.getBounds(h,d).getPoint()},getSize:function(h){return he.getBounds(h,!0).getSize()},isInvisible:function(h){return he.getSize(h).equals(new y(0,0))},isInView:function(h){return!he.isInvisible(h)&&he.getViewportBounds(h).intersects(he.getBounds(h,!0))},isInserted:function(h){return o.body.contains(h)},getPrefixed:function(h,d){return h&&t(h,d)},setPrefixed:function(h,d,x){if(typeof d=="object")for(var E in d)t(h,E,!0,d[E]);else t(h,d,!0,x)}}},ke={add:function(t,h){if(t)for(var d in h)for(var x=h[d],E=d.split(/[\s,]+/g),C=0,b=E.length;C1?a.hyphenate(Z):Z.toLowerCase())}function h(k,Z,Y,W){var F,z=le._focused;if(b[Z]=k,k?U[Z]=Y:delete U[Z],Z.length>1&&(F=a.camelize(Z))in D){D[F]=k;var G=paper&&paper.agent;if(F==="meta"&&G&&G.mac)if(k)d={};else{for(var X in d)X in U&&h(!1,X,d[X],W);d=null}}else k&&d&&(d[Z]=Y);z&&z._handleKeyEvent(k?"keydown":"keyup",W,Z,Y)}var d,x,E={" ":"tab"," ":"space","\b":"backspace","\x7F":"delete",Spacebar:"space",Del:"delete",Win:"meta",Esc:"escape"},C={tab:" ",space:" ",enter:"\r"},b={},U={},D=new a({shift:!1,control:!1,alt:!1,meta:!1,capsLock:!1,space:!1}).inject({option:{get:function(){return this.alt}},command:{get:function(){var k=paper&&paper.agent;return k&&k.mac?this.meta:this.control}}});return ke.add(o,{keydown:function(k){var Z=t(k),Y=paper&&paper.agent;Z.length>1||Y&&Y.chrome&&(k.altKey||Y.mac&&k.metaKey||!Y.mac&&k.ctrlKey)?h(!0,Z,C[Z]||(Z.length>1?"":Z),k):x=Z},keypress:function(k){if(x){var Z=t(k),Y=k.charCode,W=Y>=32?String.fromCharCode(Y):Z.length>1?"":Z;Z!==x&&(Z=W.toLowerCase()),h(!0,Z,W,k),x=null}},keyup:function(k){var Z=t(k);Z in U&&h(!1,Z,U[Z],k)}}),ke.add(s,{blur:function(k){for(var Z in U)h(!1,Z,U[Z],k)}}),{modifiers:D,isDown:function(k){return!!b[k]}}},Ie=Be.extend({_class:"MouseEvent",initialize:function(t,h,d,x,E){this.type=t,this.event=h,this.point=d,this.target=x,this.delta=E},toString:function(){return"{ type: '"+this.type+"', point: "+this.point+", target: "+this.target+(this.delta?", delta: "+this.delta:"")+", modifiers: "+this.getModifiers()+" }"}}),Re=Be.extend({_class:"ToolEvent",_item:null,initialize:function(t,h,d){this.tool=t,this.type=h,this.event=d},_choosePoint:function(t,h){return t||(h?h.clone():null)},getPoint:function(){return this._choosePoint(this._point,this.tool._point)},setPoint:function(t){this._point=t},getLastPoint:function(){return this._choosePoint(this._lastPoint,this.tool._lastPoint)},setLastPoint:function(t){this._lastPoint=t},getDownPoint:function(){return this._choosePoint(this._downPoint,this.tool._downPoint)},setDownPoint:function(t){this._downPoint=t},getMiddlePoint:function(){return!this._middlePoint&&this.tool._lastPoint?this.tool._point.add(this.tool._lastPoint).divide(2):this._middlePoint},setMiddlePoint:function(t){this._middlePoint=t},getDelta:function(){return!this._delta&&this.tool._lastPoint?this.tool._point.subtract(this.tool._lastPoint):this._delta},setDelta:function(t){this._delta=t},getCount:function(){return this.tool[/^mouse(down|up)$/.test(this.type)?"_downCount":"_moveCount"]},setCount:function(t){this.tool[/^mouse(down|up)$/.test(this.type)?"downCount":"count"]=t},getItem:function(){if(!this._item){var t=this.tool._scope.project.hitTest(this.getPoint());if(t){for(var h=t.item,d=h._parent;/^(Group|CompoundPath)$/.test(d._class);)h=d,d=d._parent;this._item=h}}return this._item},setItem:function(t){this._item=t},toString:function(){return"{ type: "+this.type+", point: "+this.getPoint()+", count: "+this.getCount()+", modifiers: "+this.getModifiers()+" }"}}),Le=(v.extend({_class:"Tool",_list:"tools",_reference:"tool",_events:["onMouseDown","onMouseUp","onMouseDrag","onMouseMove","onActivate","onDeactivate","onEditOptions","onKeyDown","onKeyUp"],initialize:function(t){v.call(this),this._moveCount=-1,this._downCount=-1,this.set(t)},getMinDistance:function(){return this._minDistance},setMinDistance:function(t){this._minDistance=t,t!=null&&this._maxDistance!=null&&t>this._maxDistance&&(this._maxDistance=t)},getMaxDistance:function(){return this._maxDistance},setMaxDistance:function(t){this._maxDistance=t,this._minDistance!=null&&t!=null&&t255){var Ge=255-se,Ze=Pe-se;W=se+(W-se)*Ge/Ze,F=se+(F-se)*Ge/Ze,z=se+(z-se)*Ge/Ze}}function d(fe,S,de){return X(fe,S,de)-G(fe,S,de)}function x(fe,S,de,se){var ie,ge=[fe,S,de],Pe=X(fe,S,de),Ye=G(fe,S,de);ie=G(Ye=Ye===fe?0:Ye===S?1:2,Pe=Pe===fe?0:Pe===S?1:2)===0?X(Ye,Pe)===1?2:1:0,ge[Pe]>ge[Ye]?(ge[ie]=(ge[ie]-ge[Ye])*se/(ge[Pe]-ge[Ye]),ge[Pe]=se):ge[ie]=ge[Pe]=0,ge[Ye]=0,W=ge[0],F=ge[1],z=ge[2]}var E,C,b,U,D,k,Z,Y,W,F,z,G=Math.min,X=Math.max,A=Math.abs,N={multiply:function(){W=D*E/255,F=k*C/255,z=Z*b/255},screen:function(){W=D+E-D*E/255,F=k+C-k*C/255,z=Z+b-Z*b/255},overlay:function(){W=D<128?2*D*E/255:255-2*(255-D)*(255-E)/255,F=k<128?2*k*C/255:255-2*(255-k)*(255-C)/255,z=Z<128?2*Z*b/255:255-2*(255-Z)*(255-b)/255},"soft-light":function(){var fe=E*D/255;W=fe+D*(255-(255-D)*(255-E)/255-fe)/255,F=(fe=C*k/255)+k*(255-(255-k)*(255-C)/255-fe)/255,z=(fe=b*Z/255)+Z*(255-(255-Z)*(255-b)/255-fe)/255},"hard-light":function(){W=E<128?2*E*D/255:255-2*(255-E)*(255-D)/255,F=C<128?2*C*k/255:255-2*(255-C)*(255-k)/255,z=b<128?2*b*Z/255:255-2*(255-b)*(255-Z)/255},"color-dodge":function(){W=D===0?0:E===255?255:G(255,255*D/(255-E)),F=k===0?0:C===255?255:G(255,255*k/(255-C)),z=Z===0?0:b===255?255:G(255,255*Z/(255-b))},"color-burn":function(){W=D===255?255:E===0?0:X(0,255-255*(255-D)/E),F=k===255?255:C===0?0:X(0,255-255*(255-k)/C),z=Z===255?255:b===0?0:X(0,255-255*(255-Z)/b)},darken:function(){W=DE?D:E,F=k>C?k:C,z=Z>b?Z:b},difference:function(){(W=D-E)<0&&(W=-W),(F=k-C)<0&&(F=-F),(z=Z-b)<0&&(z=-z)},exclusion:function(){W=D+E*(255-D-D)/255,F=k+C*(255-k-k)/255,z=Z+b*(255-Z-Z)/255},hue:function(){x(E,C,b,d(D,k,Z)),h(W,F,z,t(D,k,Z))},saturation:function(){x(D,k,Z,d(E,C,b)),h(W,F,z,t(D,k,Z))},luminosity:function(){h(D,k,Z,t(E,C,b))},color:function(){h(E,C,b,t(D,k,Z))},add:function(){W=G(D+E,255),F=G(k+C,255),z=G(Z+b,255)},subtract:function(){W=X(D-E,0),F=X(k-C,0),z=X(Z-b,0)},average:function(){W=(D+E)/2,F=(k+C)/2,z=(Z+b)/2},negation:function(){W=255-A(255-E-D),F=255-A(255-C-k),z=255-A(255-b-Z)}},I=this.nativeModes=a.each(["source-over","source-in","source-out","source-atop","destination-over","destination-in","destination-out","destination-atop","lighter","darker","copy","xor"],function(fe){this[fe]=!0},{}),te=Oe.getContext(1,1);te&&(a.each(N,function(fe,S){var de=S==="darken",se=!1;te.save();try{te.fillStyle=de?"#300":"#a00",te.fillRect(0,0,1,1),te.globalCompositeOperation=S,te.globalCompositeOperation===S&&(te.fillStyle=de?"#a00":"#300",te.fillRect(0,0,1,1),se=te.getImageData(0,0,1,1).data[0]!==de?170:51)}catch(ie){}te.restore(),I[S]=se}),Oe.release(te)),this.process=function(fe,S,de,se,ie){var ge=S.canvas,Pe=fe==="normal";if(Pe||I[fe])de.save(),de.setTransform(1,0,0,1,0,0),de.globalAlpha=se,Pe||(de.globalCompositeOperation=fe),de.drawImage(ge,ie.x,ie.y),de.restore();else{var Ye=N[fe];if(!Ye)return;for(var Ge=de.getImageData(ie.x,ie.y,ge.width,ge.height),Ze=Ge.data,Je=S.getImageData(0,0,ge.width,ge.height).data,tt=0,nt=Ze.length;tt=2&&!F.hasHandles())if(I>2){A=F._closed?"polygon":"polyline";for(var fe=[],S=0;Sa.w||l>a.h?null:u==a.w&&l==a.h?(a.used=!0,{x:a.x,y:a.y}):(a.lft=v(a),a.rgt=v(a),a.w-u>a.h-l?(a.lft.w=u,a.rgt.x=a.x+u,a.rgt.w=a.w-u):(a.lft.h=l,a.rgt.y=a.y+l,a.rgt.h=a.h-l),s(a.lft,u,l))}var o=s(this.root,e,r);return o&&(this.usedWidth>>4)+"."+(R[9]&15),me.P=re(R,12,4),me.a=re(R,16,4),me.p=re(R,20,4),me.v=s(R,24);for(var ue=0;ue<5;ue++)me.v+="."+s(R,26+2*ue);return me.platform=re(R,40,4),me.d=oe(R,44),me.k=re(R,48,4),me.l=oe(R,52),me.Q=[oe(R,56),oe(R,60)],me.U=oe(R,64),me.A=pe(R,68),me.h=re(R,80,4),me}function _(R,Te){var re=a,oe={},me=re(R,Te);Te+=4;for(var ue=0;ue>>1)}}function y(R,Te,re,oe){var me=a(Te,re);re+=4,R.r=u(Te,re,me-1),re+=me;var ue=a(Te,re);re+=4;var $=a(Te,re);re+=4,R.e=v(Te,re,$),re+=$;var ee=s(Te,re);re+=2;var ne=Te[re];re++,R.z=u(Te,re,ne)}function w(R,Te,re,oe){var me=re-8;R.L=Te[re],re++,R.u=Te[re],re++,re+=2;var ue=a(Te,re);re+=4;var $=a(Te,re);re+=4;var ee=a(Te,re);re+=4;var ne=a(Te,re);re+=4;var _e=a(Te,re);if(re+=4,ue!=0){R.S=[],re=me+ue;for(var ae=0;aew?H:(116*B-16)/y,O=T>w?T:(116*M-16)/y,K=Q>w?Q:(116*J-16)/y,pe=K*96.72,R=O*100,Te=q*81.427,re=pe/100,oe=R/100,g=Te/100,me=e.O,ue=[me[0]*re+me[1]*oe+me[2]*g,me[3]*re+me[4]*oe+me[5]*g,me[6]*re+me[7]*oe+me[8]*g],$=0;$<3;$++)ue[$]=Math.max(0,Math.min(255,e.m(ue[$])*255));return{g:ue[0],q:ue[1],N:ue[2]}}};e.R=function(){for(var _=[],f=[],g=0;g<2e3;g++){var y=g/1e3;_[g]=e.G(y),f[g]=y>.008856?Math.pow(y,1/3):(903.3*y+16)*(1/116)}return[_,f]}();function r(_,f){for(var g=f*f*f,y=g*3,w=1/(f-1),M=[],T=0;T1?J.o:null,K=0;K>2]|=e[a]<>2]|=s<>2]|=(192|s>>6)<>2]|=(128|63&s)<=57344?(l[o>>2]|=(224|s>>12)<>2]|=(128|s>>6&63)<>2]|=(128|63&s)<>2]|=(240|s>>18)<>2]|=(128|s>>12&63)<>2]|=(128|s>>6&63)<>2]|=(128|63&s)<=64?(this.block=l[16],this.start=o-64,this.hash(),this.hashed=!0):this.start=o}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},t.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,r=this.lastByteIndex;e[16]=this.block,e[r>>2]|=o[3&r],this.block=e[16],r>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}},t.prototype.hash=function(){var e,r,s=this.h0,o=this.h1,a=this.h2,u=this.h3,l=this.h4,v=this.blocks;for(e=16;e<80;++e)r=v[e-3]^v[e-8]^v[e-14]^v[e-16],v[e]=r<<1|r>>>31;for(e=0;e<20;e+=5)s=(r=(o=(r=(a=(r=(u=(r=(l=(r=s<<5|s>>>27)+(o&a|~o&u)+l+1518500249+v[e]<<0)<<5|l>>>27)+(s&(o=o<<30|o>>>2)|~s&a)+u+1518500249+v[e+1]<<0)<<5|u>>>27)+(l&(s=s<<30|s>>>2)|~l&o)+a+1518500249+v[e+2]<<0)<<5|a>>>27)+(u&(l=l<<30|l>>>2)|~u&s)+o+1518500249+v[e+3]<<0)<<5|o>>>27)+(a&(u=u<<30|u>>>2)|~a&l)+s+1518500249+v[e+4]<<0,a=a<<30|a>>>2;for(;e<40;e+=5)s=(r=(o=(r=(a=(r=(u=(r=(l=(r=s<<5|s>>>27)+(o^a^u)+l+1859775393+v[e]<<0)<<5|l>>>27)+(s^(o=o<<30|o>>>2)^a)+u+1859775393+v[e+1]<<0)<<5|u>>>27)+(l^(s=s<<30|s>>>2)^o)+a+1859775393+v[e+2]<<0)<<5|a>>>27)+(u^(l=l<<30|l>>>2)^s)+o+1859775393+v[e+3]<<0)<<5|o>>>27)+(a^(u=u<<30|u>>>2)^l)+s+1859775393+v[e+4]<<0,a=a<<30|a>>>2;for(;e<60;e+=5)s=(r=(o=(r=(a=(r=(u=(r=(l=(r=s<<5|s>>>27)+(o&a|o&u|a&u)+l-1894007588+v[e]<<0)<<5|l>>>27)+(s&(o=o<<30|o>>>2)|s&a|o&a)+u-1894007588+v[e+1]<<0)<<5|u>>>27)+(l&(s=s<<30|s>>>2)|l&o|s&o)+a-1894007588+v[e+2]<<0)<<5|a>>>27)+(u&(l=l<<30|l>>>2)|u&s|l&s)+o-1894007588+v[e+3]<<0)<<5|o>>>27)+(a&(u=u<<30|u>>>2)|a&l|u&l)+s-1894007588+v[e+4]<<0,a=a<<30|a>>>2;for(;e<80;e+=5)s=(r=(o=(r=(a=(r=(u=(r=(l=(r=s<<5|s>>>27)+(o^a^u)+l-899497514+v[e]<<0)<<5|l>>>27)+(s^(o=o<<30|o>>>2)^a)+u-899497514+v[e+1]<<0)<<5|u>>>27)+(l^(s=s<<30|s>>>2)^o)+a-899497514+v[e+2]<<0)<<5|a>>>27)+(u^(l=l<<30|l>>>2)^s)+o-899497514+v[e+3]<<0)<<5|o>>>27)+(a^(u=u<<30|u>>>2)^l)+s-899497514+v[e+4]<<0,a=a<<30|a>>>2;this.h0=this.h0+s<<0,this.h1=this.h1+o<<0,this.h2=this.h2+a<<0,this.h3=this.h3+u<<0,this.h4=this.h4+l<<0},t.prototype.hex=function(){this.finalize();var e=this.h0,r=this.h1,s=this.h2,o=this.h3,a=this.h4;return r[e>>28&15]+r[e>>24&15]+r[e>>20&15]+r[e>>16&15]+r[e>>12&15]+r[e>>8&15]+r[e>>4&15]+r[15&e]+r[r>>28&15]+r[r>>24&15]+r[r>>20&15]+r[r>>16&15]+r[r>>12&15]+r[r>>8&15]+r[r>>4&15]+r[15&r]+r[s>>28&15]+r[s>>24&15]+r[s>>20&15]+r[s>>16&15]+r[s>>12&15]+r[s>>8&15]+r[s>>4&15]+r[15&s]+r[o>>28&15]+r[o>>24&15]+r[o>>20&15]+r[o>>16&15]+r[o>>12&15]+r[o>>8&15]+r[o>>4&15]+r[15&o]+r[a>>28&15]+r[a>>24&15]+r[a>>20&15]+r[a>>16&15]+r[a>>12&15]+r[a>>8&15]+r[a>>4&15]+r[15&a]},t.prototype.toString=t.prototype.hex,t.prototype.digest=function(){this.finalize();var e=this.h0,r=this.h1,s=this.h2,o=this.h3,a=this.h4;return[e>>24&255,e>>16&255,e>>8&255,255&e,r>>24&255,r>>16&255,r>>8&255,255&r,s>>24&255,s>>16&255,s>>8&255,255&s,o>>24&255,o>>16&255,o>>8&255,255&o,a>>24&255,a>>16&255,a>>8&255,255&a]},t.prototype.array=t.prototype.digest,t.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(20),r=new DataView(e);return r.setUint32(0,this.h0),r.setUint32(4,this.h1),r.setUint32(8,this.h2),r.setUint32(12,this.h3),r.setUint32(16,this.h4),e};var y=c();i?module.exports=y:(h.sha1=y,e&&define(function(){return y}))})();